FLUID-5027: IoCSS can not pass source to a target that is a sub-component originated from another distribution block

Metadata

Source
FLUID-5027
Type
New Feature
Priority
Major
Status
Closed
Resolution
Not A Bug
Assignee
Antranig Basman
Reporter
Cindy Li
Created
2013-05-30T14:00:56.362-0400
Updated
2014-03-03T11:50:21.091-0500
Versions
N/A
Fixed Versions
N/A
Component
  1. Framework

Description

With IoCSS, if one distribution block is to define an extra subcomponent, which is "subOfSubComponent" in this code:

defineDeeperSubComponent: {
components: {
subOfSubComponent: {
type: "fluid.tests.fluid5026subOfSub"
},
}
},
distributeOptions: [{
source: "{that}.options.defineDeeperSubComponent",
target: "{that > subComponent}.options"
}]

While another distribution block attempts to pass options to the new "subOfSubComponent", the pass-down would fail.

The test case to demostrate this issue: https://github.com/cindyli/infusion/blob/FLUID-5010/src/webapp/tests/framework-tests/core/js/FluidIoCTests.js#L2723-2762

Comments

  • Antranig Basman commented 2013-05-30T15:01:41.078-0400

    There is a typo in this test case (DeeperSubComponentOption <-> deeperSubComponentOption) and when this was fixed, the test case passed. Closing for now as "not a bug" but please feel free to reopen if the root cause is uncovered - through IRC channel discussion today (30 May 2013) it seemed that the issue resulted from attempting to distribute non-genuine component options material defined using the manual "derivedDefaults" mechanism from the old (obsolete) version of UIOptions