diff options
author | Eric Guzman | 2012-02-16 14:20:40 -0800 |
---|---|---|
committer | Eric Guzman | 2012-02-16 14:20:40 -0800 |
commit | 6960f62a84b946c92a59e5f5dc537a818f9f62b8 (patch) | |
tree | 49cbff3fdd8dab11846e5a278406915ec0ec1508 /node_modules/montage/core | |
parent | 82b1a273219f0ae3d119e156c7acccdbe478f441 (diff) | |
parent | 81942bd52f0713c9ff5d479ebd12fce577f45e45 (diff) | |
download | ninja-6960f62a84b946c92a59e5f5dc537a818f9f62b8.tar.gz |
Merge branch 'refs/heads/master' into PresetsPanel
Diffstat (limited to 'node_modules/montage/core')
-rwxr-xr-x | node_modules/montage/core/converter/converter.js | 10 | ||||
-rwxr-xr-x | node_modules/montage/core/converter/date-converter.js | 10 | ||||
-rwxr-xr-x | node_modules/montage/core/core.js | 42 | ||||
-rwxr-xr-x | node_modules/montage/core/deserializer.js | 4 | ||||
-rwxr-xr-x | node_modules/montage/core/event/binding.js | 8 | ||||
-rwxr-xr-x | node_modules/montage/core/event/event-manager.js | 5 | ||||
-rwxr-xr-x | node_modules/montage/core/event/mutable-event.js | 1 | ||||
-rwxr-xr-x | node_modules/montage/core/promise.js | 36 | ||||
-rwxr-xr-x | node_modules/montage/core/shim/string.js | 15 | ||||
-rw-r--r--[-rwxr-xr-x] | node_modules/montage/core/undo-manager.js | 0 | ||||
-rw-r--r--[-rwxr-xr-x] | node_modules/montage/core/url.js | 0 |
11 files changed, 77 insertions, 54 deletions
diff --git a/node_modules/montage/core/converter/converter.js b/node_modules/montage/core/converter/converter.js index abce44e2..a23d2702 100755 --- a/node_modules/montage/core/converter/converter.js +++ b/node_modules/montage/core/converter/converter.js | |||
@@ -20,16 +20,6 @@ var FUNCTION_CLASS = '[object Function]', | |||
20 | 20 | ||
21 | var _toString = Object.prototype.toString; | 21 | var _toString = Object.prototype.toString; |
22 | 22 | ||
23 | // TODO should maybe move these into String.isString and Number.isNumber to parallel Array.isArray | ||
24 | |||
25 | /** | ||
26 | @exports module:montage/core/converter#isString | ||
27 | @function | ||
28 | */ | ||
29 | var isString = function(object) { | ||
30 | return _toString.call(object) === STRING_CLASS; | ||
31 | }; | ||
32 | exports.isString = isString; | ||
33 | 23 | ||
34 | /** | 24 | /** |
35 | @exports module:montage/core/converter#isNumber | 25 | @exports module:montage/core/converter#isNumber |
diff --git a/node_modules/montage/core/converter/date-converter.js b/node_modules/montage/core/converter/date-converter.js index f0d3e540..f484f7aa 100755 --- a/node_modules/montage/core/converter/date-converter.js +++ b/node_modules/montage/core/converter/date-converter.js | |||
@@ -2502,16 +2502,13 @@ var _toString = Object.prototype.toString; | |||
2502 | var isDate = function(object) { | 2502 | var isDate = function(object) { |
2503 | return _toString.call(object) === DATE_CLASS; | 2503 | return _toString.call(object) === DATE_CLASS; |
2504 | }; | 2504 | }; |
2505 | var isString = function(object) { | ||
2506 | return _toString.call(object) === STRING_CLASS; | ||
2507 | }; | ||
2508 | var isNumber = function(object) { | 2505 | var isNumber = function(object) { |
2509 | return _toString.call(object) === NUMBER_CLASS; | 2506 | return _toString.call(object) === NUMBER_CLASS; |
2510 | }; | 2507 | }; |
2511 | 2508 | ||
2512 | var formatDate = function(v, format) { | 2509 | var formatDate = function(v, format) { |
2513 | var date; | 2510 | var date; |
2514 | if (isString(v)) { | 2511 | if (String.isString(v)) { |
2515 | // try to create a Date instance from the string | 2512 | // try to create a Date instance from the string |
2516 | // date must be a string that can be parsed by Date | 2513 | // date must be a string that can be parsed by Date |
2517 | // see - http://www.w3schools.com/jsref/jsref_parse.asp | 2514 | // see - http://www.w3schools.com/jsref/jsref_parse.asp |
@@ -2605,7 +2602,7 @@ var DateConverter = exports.DateConverter = Montage.create(Converter,/** @lends | |||
2605 | */ | 2602 | */ |
2606 | convert: { | 2603 | convert: { |
2607 | value: function(v) { | 2604 | value: function(v) { |
2608 | if (isDate(v) || isString(v) || isNumber(v)) { | 2605 | if (isDate(v) || String.isString(v) || isNumber(v)) { |
2609 | return formatDate(v, this.pattern); | 2606 | return formatDate(v, this.pattern); |
2610 | } | 2607 | } |
2611 | return v; | 2608 | return v; |
@@ -2617,6 +2614,9 @@ var DateConverter = exports.DateConverter = Montage.create(Converter,/** @lends | |||
2617 | */ | 2614 | */ |
2618 | revert: { | 2615 | revert: { |
2619 | value: function(v) { | 2616 | value: function(v) { |
2617 | if(isDate(v)) { | ||
2618 | return v; | ||
2619 | } | ||
2620 | this.validator.pattern = this.pattern; | 2620 | this.validator.pattern = this.pattern; |
2621 | 2621 | ||
2622 | var result = this.validator.validate(v); | 2622 | var result = this.validator.validate(v); |
diff --git a/node_modules/montage/core/core.js b/node_modules/montage/core/core.js index 8c1f4249..ff94f303 100755 --- a/node_modules/montage/core/core.js +++ b/node_modules/montage/core/core.js | |||
@@ -12,6 +12,16 @@ | |||
12 | */ | 12 | */ |
13 | require("core/shim"); | 13 | require("core/shim"); |
14 | 14 | ||
15 | var ATTRIBUTE_PROPERTIES = "AttributeProperties", | ||
16 | UNDERSCORE = "_", | ||
17 | PROTO = "__proto__", | ||
18 | VALUE = "value", | ||
19 | ENUMERABLE = "enumerable", | ||
20 | SERIALIZABLE = "serializable", | ||
21 | MODIFY = "modify"; | ||
22 | |||
23 | |||
24 | |||
15 | /** | 25 | /** |
16 | @external Object | 26 | @external Object |
17 | */ | 27 | */ |
@@ -78,14 +88,14 @@ Object.defineProperty(M, "create", { | |||
78 | } | 88 | } |
79 | }); | 89 | }); |
80 | 90 | ||
81 | var extendedPropertyAttributes = ["serializable", "modify"]; | 91 | var extendedPropertyAttributes = [SERIALIZABLE, MODIFY]; |
82 | 92 | ||
83 | // Extended property attributes, the property name format is "_" + attributeName + "AttributeProperties" | 93 | // Extended property attributes, the property name format is "_" + attributeName + "AttributeProperties" |
84 | /** | 94 | /** |
85 | @member external:Object#extendedPropertyAttributes | 95 | @member external:Object#extendedPropertyAttributes |
86 | */ | 96 | */ |
87 | extendedPropertyAttributes.forEach(function(name) { | 97 | extendedPropertyAttributes.forEach(function(name) { |
88 | Object.defineProperty(Object.prototype, "_" + name + "AttributeProperties", { | 98 | Object.defineProperty(Object.prototype, UNDERSCORE + name + ATTRIBUTE_PROPERTIES, { |
89 | enumerable: false, | 99 | enumerable: false, |
90 | configurable: false, | 100 | configurable: false, |
91 | writable: false, | 101 | writable: false, |
@@ -112,11 +122,11 @@ Object.defineProperty(M, "defineProperty", { | |||
112 | value: function(obj, prop, descriptor) { | 122 | value: function(obj, prop, descriptor) { |
113 | var dependencies = descriptor.dependencies; | 123 | var dependencies = descriptor.dependencies; |
114 | //reset defaults appropriately for framework. | 124 | //reset defaults appropriately for framework. |
115 | if ("__proto__" in descriptor) { | 125 | if (PROTO in descriptor) { |
116 | descriptor.__proto__ = ("value" in descriptor ? (typeof descriptor.value === "function" ? _defaultFunctionValueProperty : _defaultObjectValueProperty) : _defaultAccessorProperty); | 126 | descriptor.__proto__ = (VALUE in descriptor ? (typeof descriptor.value === "function" ? _defaultFunctionValueProperty : _defaultObjectValueProperty) : _defaultAccessorProperty); |
117 | } else { | 127 | } else { |
118 | var defaults; | 128 | var defaults; |
119 | if ("value" in descriptor) { | 129 | if (VALUE in descriptor) { |
120 | if (typeof descriptor.value === "function") { | 130 | if (typeof descriptor.value === "function") { |
121 | defaults = _defaultFunctionValueProperty; | 131 | defaults = _defaultFunctionValueProperty; |
122 | } else { | 132 | } else { |
@@ -133,7 +143,7 @@ Object.defineProperty(M, "defineProperty", { | |||
133 | } | 143 | } |
134 | 144 | ||
135 | 145 | ||
136 | if (!descriptor.hasOwnProperty("enumerable") && prop.charAt(0) === "_") { | 146 | if (!descriptor.hasOwnProperty(ENUMERABLE) && prop.charAt(0) === UNDERSCORE) { |
137 | descriptor.enumerable = false; | 147 | descriptor.enumerable = false; |
138 | } | 148 | } |
139 | if (dependencies) { | 149 | if (dependencies) { |
@@ -146,13 +156,13 @@ Object.defineProperty(M, "defineProperty", { | |||
146 | 156 | ||
147 | } | 157 | } |
148 | 158 | ||
149 | if ("serializable" in descriptor) { | 159 | if (SERIALIZABLE in descriptor) { |
150 | // get the _serializableAttributeProperties property or creates it through the entire chain if missing. | 160 | // get the _serializableAttributeProperties property or creates it through the entire chain if missing. |
151 | getAttributeProperties(obj, "serializable")[prop] = descriptor.serializable; | 161 | getAttributeProperties(obj, SERIALIZABLE)[prop] = descriptor.serializable; |
152 | } | 162 | } |
153 | 163 | ||
154 | if ("modify" in descriptor) { | 164 | if (MODIFY in descriptor) { |
155 | getAttributeProperties(obj, "modify")[prop] = descriptor.modify; | 165 | getAttributeProperties(obj, MODIFY)[prop] = descriptor.modify; |
156 | } | 166 | } |
157 | 167 | ||
158 | //this is added to enable value properties with [] or Objects that are new for every instance | 168 | //this is added to enable value properties with [] or Objects that are new for every instance |
@@ -268,7 +278,7 @@ Object.defineProperty(M, "defineProperty", { | |||
268 | } | 278 | } |
269 | }); | 279 | }); |
270 | } | 280 | } |
271 | })("_" + prop, descriptor.value); | 281 | })(UNDERSCORE + prop, descriptor.value); |
272 | 282 | ||
273 | } else { | 283 | } else { |
274 | return Object.defineProperty(obj, prop, descriptor); | 284 | return Object.defineProperty(obj, prop, descriptor); |
@@ -390,7 +400,7 @@ M.defineProperty(M, "removeDependencyFromProperty", {value: function(obj, indepe | |||
390 | }}); | 400 | }}); |
391 | 401 | ||
392 | function getAttributeProperties(proto, attributeName) { | 402 | function getAttributeProperties(proto, attributeName) { |
393 | var attributePropertyName = "_" + attributeName + "AttributeProperties"; | 403 | var attributePropertyName = UNDERSCORE + attributeName + ATTRIBUTE_PROPERTIES; |
394 | 404 | ||
395 | if (proto.hasOwnProperty(attributePropertyName)) { | 405 | if (proto.hasOwnProperty(attributePropertyName)) { |
396 | return proto[attributePropertyName]; | 406 | return proto[attributePropertyName]; |
@@ -474,7 +484,7 @@ M.defineProperty(M, "getSerializablePropertyNames", {value: function(anObject) { | |||
474 | */ | 484 | */ |
475 | M.defineProperty(M, "getPropertyAttribute", {value: function(anObject, propertyName, attributeName) { | 485 | M.defineProperty(M, "getPropertyAttribute", {value: function(anObject, propertyName, attributeName) { |
476 | 486 | ||
477 | var attributePropertyName = "_" + attributeName + "AttributeProperties", | 487 | var attributePropertyName = UNDERSCORE + attributeName + ATTRIBUTE_PROPERTIES, |
478 | attributes = anObject[attributePropertyName]; | 488 | attributes = anObject[attributePropertyName]; |
479 | 489 | ||
480 | if (attributes) { | 490 | if (attributes) { |
@@ -491,7 +501,7 @@ M.defineProperty(M, "getPropertyAttribute", {value: function(anObject, propertyN | |||
491 | */ | 501 | */ |
492 | M.defineProperty(M, "getPropertyAttributes", {value: function(anObject, attributeName) { | 502 | M.defineProperty(M, "getPropertyAttributes", {value: function(anObject, attributeName) { |
493 | var attributeValues = {}, | 503 | var attributeValues = {}, |