diff options
72 files changed, 6980 insertions, 2737 deletions
diff --git a/js/panels/components-panel.reel/components-panel.js b/js/panels/components-panel.reel/components-panel.js index cfacd461..5d3c0a73 100755 --- a/js/panels/components-panel.reel/components-panel.js +++ b/js/panels/components-panel.reel/components-panel.js | |||
@@ -367,7 +367,7 @@ exports.ComponentsPanel = Montage.create(Component, { | |||
367 | break; | 367 | break; |
368 | case "textarea": | 368 | case "textarea": |
369 | el = NJUtils.makeNJElement("textarea", "TextArea", "component"); | 369 | el = NJUtils.makeNJElement("textarea", "TextArea", "component"); |
370 | el.elementModel.pi = "TextAreaPi"; | 370 | el.elementModel.pi = "TextareaPi"; |
371 | break; | 371 | break; |
372 | case "toggleButton": | 372 | case "toggleButton": |
373 | el = NJUtils.makeNJElement("button", "Toggle Button", "component"); | 373 | el = NJUtils.makeNJElement("button", "Toggle Button", "component"); |
diff --git a/node_modules/components-data/textarea.json b/node_modules/components-data/textarea.json index 8e780954..0dd7714e 100644 --- a/node_modules/components-data/textarea.json +++ b/node_modules/components-data/textarea.json | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | "module": "montage/ui/textarea.reel", | 4 | "module": "montage/ui/textarea.reel", |
5 | 5 | ||
6 | "name": "TextArea", | 6 | "name": "Textarea", |
7 | 7 | ||
8 | "properties": [ | 8 | "properties": [ |
9 | 9 | ||
diff --git a/node_modules/montage/core/deserializer.js b/node_modules/montage/core/deserializer.js index 7e812235..b8ed5618 100755 --- a/node_modules/montage/core/deserializer.js +++ b/node_modules/montage/core/deserializer.js | |||
@@ -98,6 +98,26 @@ var Deserializer = Montage.create(Montage, /** @lends module:montage/core/deseri | |||
98 | }}, | 98 | }}, |
99 | 99 | ||
100 | /** | 100 | /** |
101 | Initializes the deserializer with a string | ||
102 | @param {String|Object} serialization A string or JSON-style object | ||
103 | describing the serialized objects. | ||
104 | @param {Function} require The module loader for the containing package. | ||
105 | @param {String} origin Usually a file name. | ||
106 | */ | ||
107 | init: { | ||
108 | value: function (serialization, require, origin) { | ||
109 | if (typeof serialization !== "string") { | ||
110 | serialization = JSON.stringify(serialization); | ||
111 | } | ||
112 | this._reset(); | ||
113 | this._serializationString = serialization; | ||
114 | this._require = require; | ||
115 | this._origin = origin; | ||
116 | return this; | ||
117 | } | ||
118 | }, | ||
119 | |||
120 | /** | ||
101 | Initializes the deserializer with a string of serialized objects. | 121 | Initializes the deserializer with a string of serialized objects. |
102 | @function | 122 | @function |
103 | @param {String} string A string of serialized objects. | 123 | @param {String} string A string of serialized objects. |
@@ -122,6 +142,14 @@ var Deserializer = Montage.create(Montage, /** @lends module:montage/core/deseri | |||
122 | return this; | 142 | return this; |
123 | }}, | 143 | }}, |
124 | 144 | ||
145 | initWithObjectAndRequire: {value: function(string, require, origin) { | ||
146 | this._reset(); | ||
147 | this._serializationString = JSON.stringify(object); | ||
148 | this._require = require; | ||
149 | this._origin = origin; | ||
150 | return this; | ||
151 | }}, | ||
152 | |||
125 | /** | 153 | /** |
126 | Initializes the deserializer object with a serialization string and the require object used to load the modules containing the object's prototypes. | 154 | Initializes the deserializer object with a serialization string and the require object used to load the modules containing the object's prototypes. |
127 | @function | 155 | @function |
@@ -168,8 +196,37 @@ var Deserializer = Montage.create(Montage, /** @lends module:montage/core/deseri | |||
168 | 196 | ||
169 | return objectsArray; | 197 | return objectsArray; |
170 | }}, | 198 | }}, |
199 | |||
200 | chainDeserializer: { | ||
201 | value: function(deserializer) { | ||
202 | var chainedSerializations = this._chainedSerializations, | ||
203 | optimizedIds, chainedOptimizedIds; | ||
204 | |||
205 | if (!chainedSerializations) { | ||
206 | this._chainedSerializations = chainedSerializations = []; | ||
207 | } | ||
208 | |||
209 | chainedSerializations.push({ | ||
210 | string: deserializer._serializationString, | ||
211 | compiledFunction: deserializer._compiledDeserializationFunction, | ||
212 | compiledFunctionString: deserializer._compiledDeserializationFunctionString | ||
213 | }); | ||
214 | |||
215 | // need to copy the optimized ids too, ideally all chained templates are optimized for the same document | ||
216 | chainedOptimizedIds = deserializer._optimizedIds; | ||
217 | if (chainedOptimizedIds) { | ||
218 | if (!optimizedIds) { | ||
219 | this._optimizedIds = optimizedIds = {}; | ||
220 | } | ||