|
1 YUI.add('attribute-complex', function (Y, NAME) { |
|
2 |
|
3 /** |
|
4 * Adds support for attribute providers to handle complex attributes in the constructor |
|
5 * |
|
6 * @module attribute |
|
7 * @submodule attribute-complex |
|
8 * @for Attribute |
|
9 * @deprecated AttributeComplex's overrides are now part of AttributeCore. |
|
10 */ |
|
11 |
|
12 var Attribute = Y.Attribute; |
|
13 |
|
14 Attribute.Complex = function() {}; |
|
15 Attribute.Complex.prototype = { |
|
16 |
|
17 /** |
|
18 * Utility method to split out simple attribute name/value pairs ("x") |
|
19 * from complex attribute name/value pairs ("x.y.z"), so that complex |
|
20 * attributes can be keyed by the top level attribute name. |
|
21 * |
|
22 * @method _normAttrVals |
|
23 * @param {Object} valueHash An object with attribute name/value pairs |
|
24 * |
|
25 * @return {Object} An object literal with 2 properties - "simple" and "complex", |
|
26 * containing simple and complex attribute values respectively keyed |
|
27 * by the top level attribute name, or null, if valueHash is falsey. |
|
28 * |
|
29 * @private |
|
30 */ |
|
31 _normAttrVals : Attribute.prototype._normAttrVals, |
|
32 |
|
33 /** |
|
34 * Returns the initial value of the given attribute from |
|
35 * either the default configuration provided, or the |
|
36 * over-ridden value if it exists in the set of initValues |
|
37 * provided and the attribute is not read-only. |
|
38 * |
|
39 * @param {String} attr The name of the attribute |
|
40 * @param {Object} cfg The attribute configuration object |
|
41 * @param {Object} initValues The object with simple and complex attribute name/value pairs returned from _normAttrVals |
|
42 * |
|
43 * @return {Any} The initial value of the attribute. |
|
44 * |
|
45 * @method _getAttrInitVal |
|
46 * @private |
|
47 */ |
|
48 _getAttrInitVal : Attribute.prototype._getAttrInitVal |
|
49 |
|
50 }; |
|
51 |
|
52 // Consistency with the rest of the Attribute addons for now. |
|
53 Y.AttributeComplex = Attribute.Complex; |
|
54 |
|
55 |
|
56 }, '@VERSION@', {"requires": ["attribute-base"]}); |