marko 5.30.2 → 5.31.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/compiler/index.js +10 -10
- package/dist/core-tags/components/preserve-tag.js +4 -4
- package/dist/core-tags/core/await/AsyncValue.js +7 -7
- package/dist/core-tags/core/await/reorderer-renderer.js +28 -28
- package/dist/node-require/hot-reload.js +5 -5
- package/dist/node-require/index.js +8 -8
- package/dist/node_modules/@internal/components-beginComponent/index-browser.js +4 -4
- package/dist/node_modules/@internal/components-beginComponent/index.js +14 -14
- package/dist/node_modules/@internal/components-define-widget-legacy/index-browser.js +9 -7
- package/dist/node_modules/@internal/components-entry/index-browser.js +2 -1
- package/dist/node_modules/@internal/components-entry/index.js +5 -5
- package/dist/node_modules/@internal/components-entry-legacy/index-browser.js +4 -3
- package/dist/node_modules/@internal/components-entry-legacy/index.js +2 -1
- package/dist/node_modules/@internal/components-registry/index-browser.js +43 -51
- package/dist/node_modules/@internal/components-util/index-browser.js +3 -3
- package/dist/node_modules/@internal/create-readable/index-browser.js +5 -5
- package/dist/node_modules/@internal/create-readable/index.js +5 -5
- package/dist/node_modules/@internal/loader/fallback-node.js +89 -0
- package/dist/node_modules/@internal/loader/index-browser.js +1 -3
- package/dist/node_modules/@internal/loader/index.js +20 -85
- package/dist/node_modules/@internal/loader/package.json +2 -3
- package/dist/node_modules/@internal/require/index-browser.js +13 -0
- package/dist/node_modules/@internal/require/index-legacy-browser.js +20 -0
- package/dist/node_modules/@internal/require/index-webpack.js +11 -0
- package/dist/node_modules/@internal/require/index.js +15 -0
- package/dist/node_modules/@internal/require/package.json +11 -0
- package/dist/runtime/RenderResult.js +8 -7
- package/dist/runtime/components/Component.js +18 -18
- package/dist/runtime/components/ComponentDef.js +1 -1
- package/dist/runtime/components/State.js +10 -10
- package/dist/runtime/components/event-delegation.js +49 -49
- package/dist/runtime/components/legacy/defineComponent-legacy.js +0 -5
- package/dist/runtime/components/legacy/defineRenderer-legacy.js +6 -11
- package/dist/runtime/components/legacy/dependencies/index.js +7 -7
- package/dist/runtime/components/legacy/renderer-legacy.js +51 -51
- package/dist/runtime/components/renderer.js +26 -26
- package/dist/runtime/helpers/_change-case.js +3 -3
- package/dist/runtime/helpers/class-value.js +2 -2
- package/dist/runtime/helpers/dynamic-tag.js +27 -27
- package/dist/runtime/helpers/render-tag.js +3 -3
- package/dist/runtime/html/AsyncStream.js +10 -10
- package/dist/runtime/html/BufferedWriter.js +14 -14
- package/dist/runtime/html/helpers/_dynamic-attr.js +2 -2
- package/dist/runtime/html/helpers/attr.js +5 -5
- package/dist/runtime/html/helpers/attrs.js +2 -2
- package/dist/runtime/html/helpers/data-marko.js +2 -2
- package/dist/runtime/html/helpers/escape-xml.js +2 -2
- package/dist/runtime/html/index.js +9 -9
- package/dist/runtime/renderable.js +4 -4
- package/dist/runtime/vdom/AsyncVDOMBuilder.js +36 -36
- package/dist/runtime/vdom/VElement.js +23 -23
- package/dist/runtime/vdom/hot-reload.js +1 -1
- package/dist/runtime/vdom/index.js +8 -8
- package/dist/runtime/vdom/morphdom/fragment.js +8 -8
- package/dist/runtime/vdom/morphdom/helpers.js +7 -7
- package/dist/runtime/vdom/morphdom/index.js +93 -93
- package/dist/runtime/vdom/morphdom/specialElHandlers.js +8 -8
- package/dist/runtime/vdom/vdom.js +2 -2
- package/dist/taglib/index.js +3 -3
- package/docs/compiler.md +6 -0
- package/package.json +3 -3
- package/src/node_modules/@internal/components-define-widget-legacy/index-browser.js +17 -15
- package/src/node_modules/@internal/components-define-widget-legacy/index.js +1 -1
- package/src/node_modules/@internal/components-entry/index-browser.js +2 -1
- package/src/node_modules/@internal/components-entry/index.js +2 -2
- package/src/node_modules/@internal/components-entry-legacy/index-browser.js +4 -3
- package/src/node_modules/@internal/components-entry-legacy/index.js +2 -1
- package/src/node_modules/@internal/components-registry/index-browser.js +9 -17
- package/src/node_modules/@internal/create-readable/index-browser.js +2 -2
- package/src/node_modules/@internal/loader/fallback-node.js +89 -0
- package/src/node_modules/@internal/loader/index-browser.js +1 -3
- package/src/node_modules/@internal/loader/index.js +21 -86
- package/src/node_modules/@internal/loader/package.json +2 -3
- package/src/node_modules/@internal/require/index-browser.js +13 -0
- package/src/node_modules/@internal/require/index-legacy-browser.js +20 -0
- package/src/node_modules/@internal/require/index-webpack.js +11 -0
- package/src/node_modules/@internal/require/index.js +15 -0
- package/src/node_modules/@internal/require/package.json +11 -0
- package/src/runtime/components/legacy/defineComponent-legacy.js +0 -5
- package/src/runtime/components/legacy/defineRenderer-legacy.js +2 -7
|
@@ -40,10 +40,10 @@ function handleBeginAsync(event) {
|
|
|
40
40
|
}
|
|
41
41
|
// Carry along the component arguments
|
|
42
42
|
asyncOut.c(
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
43
|
+
parentOut.h_,
|
|
44
|
+
parentOut.j_,
|
|
45
|
+
parentOut.b__
|
|
46
|
+
);
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
function handleBeginDetachedAsync(event) {
|
|
@@ -124,14 +124,14 @@ renderingLogic)
|
|
|
124
124
|
// rendered component already mounted to the DOM. We also create
|
|
125
125
|
// a lightweight ServerComponent
|
|
126
126
|
component = registry._I_(
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
127
|
+
renderingLogic,
|
|
128
|
+
id,
|
|
129
|
+
input,
|
|
130
|
+
out,
|
|
131
|
+
typeName,
|
|
132
|
+
customEvents,
|
|
133
|
+
ownerComponentId
|
|
134
|
+
);
|
|
135
135
|
|
|
136
136
|
// This is the final input after running the lifecycle methods.
|
|
137
137
|
// We will be passing the input to the template for the `input` param
|
|
@@ -203,26 +203,26 @@ renderingLogic)
|
|
|
203
203
|
}
|
|
204
204
|
|
|
205
205
|
var componentDef = beginComponent(
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
206
|
+
componentsContext,
|
|
207
|
+
component,
|
|
208
|
+
key,
|
|
209
|
+
ownerComponentDef,
|
|
210
|
+
isSplit,
|
|
211
|
+
isImplicitComponent
|
|
212
|
+
);
|
|
213
213
|
|
|
214
214
|
componentDef._w_ = isExisting;
|
|
215
215
|
|
|
216
216
|
// Render the template associated with the component using the final template
|
|
217
217
|
// data that we constructed
|
|
218
218
|
templateRenderFunc(
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
219
|
+
input,
|
|
220
|
+
out,
|
|
221
|
+
componentDef,
|
|
222
|
+
component,
|
|
223
|
+
component.aA_,
|
|
224
|
+
out.global
|
|
225
|
+
);
|
|
226
226
|
|
|
227
227
|
endComponent(out, componentDef);
|
|
228
228
|
componentsContext.k_ = parentComponentDef;
|
|
@@ -28,9 +28,9 @@ exports.bh_ = function dashToCamelCase(name) {
|
|
|
28
28
|
var nameCamel = dashToCamelLookup[name];
|
|
29
29
|
if (!nameCamel) {
|
|
30
30
|
nameCamel = dashToCamelLookup[name] = name.replace(
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
/-([a-z])/g,
|
|
32
|
+
matchToUpperCase
|
|
33
|
+
);
|
|
34
34
|
|
|
35
35
|
if (nameCamel !== name) {
|
|
36
36
|
camelToDashLookup[nameCamel] = name;
|
|
@@ -38,22 +38,22 @@ customEvents)
|
|
|
38
38
|
if (typeof tag === "string") {
|
|
39
39
|
if (renderBody) {
|
|
40
40
|
out.bi_(
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
41
|
+
tag,
|
|
42
|
+
attrs,
|
|
43
|
+
key,
|
|
44
|
+
componentDef,
|
|
45
|
+
addEvents(componentDef, customEvents, props)
|
|
46
|
+
);
|
|
47
47
|
renderBody(out);
|
|
48
48
|
out.bj_();
|
|
49
49
|
} else {
|
|
50
50
|
out.bk_(
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
51
|
+
tag,
|
|
52
|
+
attrs,
|
|
53
|
+
key,
|
|
54
|
+
componentDef,
|
|
55
|
+
addEvents(componentDef, customEvents, props)
|
|
56
|
+
);
|
|
57
57
|
}
|
|
58
58
|
} else {
|
|
59
59
|
if (attrs == null) {
|
|
@@ -105,10 +105,10 @@ customEvents)
|
|
|
105
105
|
var parentComponentDef = componentsContext.k_;
|
|
106
106
|
var globalContext = componentsContext.f_;
|
|
107
107
|
componentsContext.k_ = new ComponentDef(
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
108
|
+
component,
|
|
109
|
+
parentComponentDef.id + "-" + parentComponentDef.aK_(key),
|
|
110
|
+
globalContext
|
|
111
|
+
);
|
|
112
112
|
render.toJSON = RENDER_BODY_TO_JSON;
|
|
113
113
|
|
|
114
114
|
if (args) {
|
|
@@ -127,12 +127,12 @@ customEvents)
|
|
|
127
127
|
}
|
|
128
128
|
} else if (renderBody) {
|
|
129
129
|
out.bf(
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
130
|
+
key,
|
|
131
|
+
component,
|
|
132
|
+
IS_SERVER &&
|
|
133
|
+
componentDef &&
|
|
134
|
+
componentDef.C_ & FLAG_WILL_RERENDER_IN_BROWSER
|
|
135
|
+
);
|
|
136
136
|
renderBody(out);
|
|
137
137
|
out.ef();
|
|
138
138
|
}
|
|
@@ -161,11 +161,11 @@ function addEvents(componentDef, customEvents, props) {
|
|
|
161
161
|
for (var i = len; i--;) {
|
|
162
162
|
event = customEvents[i];
|
|
163
163
|
result["on" + event[0]] = componentDef.d(
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
164
|
+
event[0],
|
|
165
|
+
event[1],
|
|
166
|
+
event[2],
|
|
167
|
+
event[3]
|
|
168
|
+
);
|
|
169
169
|
}
|
|
170
170
|
|
|
171
171
|
return result;
|
|
@@ -222,14 +222,14 @@ var proto = AsyncStream.prototype = {
|
|
|
222
222
|
if (timeout > 0) {
|
|
223
223
|
newStream._timeoutId = setTimeout(function () {
|
|
224
224
|
newStream.error(
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
225
|
+
new Error(
|
|
226
|
+
"Async fragment " + (
|
|
227
|
+
name ? "(" + name + ") " : "") +
|
|
228
|
+
"timed out after " +
|
|
229
|
+
timeout +
|
|
230
|
+
"ms"
|
|
231
|
+
)
|
|
232
|
+
);
|
|
233
233
|
}, timeout);
|
|
234
234
|
}
|
|
235
235
|
|
|
@@ -430,8 +430,8 @@ var proto = AsyncStream.prototype = {
|
|
|
430
430
|
break;
|
|
431
431
|
default:
|
|
432
432
|
events.emit.apply(events, arguments);
|
|
433
|
-
break;
|
|
434
|
-
|
|
433
|
+
break;
|
|
434
|
+
}
|
|
435
435
|
return this;
|
|
436
436
|
},
|
|
437
437
|
|
|
@@ -18,22 +18,22 @@ function BufferedWriter(wrappedStream) {
|
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
BufferedWriter.prototype = Object.assign(
|
|
21
|
-
{
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
{
|
|
22
|
+
scheduleFlush() {
|
|
23
|
+
if (!this._scheduled) {
|
|
24
|
+
this._scheduled = setImmediate(flush.bind(0, this));
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
|
|
28
|
+
end: function () {
|
|
29
|
+
flush(this);
|
|
30
|
+
if (!this._wrapped.isTTY) {
|
|
31
|
+
this._wrapped.end();
|
|
32
|
+
}
|
|
25
33
|
}
|
|
26
34
|
},
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
flush(this);
|
|
30
|
-
if (!this._wrapped.isTTY) {
|
|
31
|
-
this._wrapped.end();
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
},
|
|
35
|
-
StringWriter.prototype);
|
|
36
|
-
|
|
35
|
+
StringWriter.prototype
|
|
36
|
+
);
|
|
37
37
|
|
|
38
38
|
function flush(writer) {
|
|
39
39
|
const contents = writer.toString();
|
|
@@ -16,8 +16,8 @@ module.exports = function dynamicAttr(name, value) {
|
|
|
16
16
|
default:
|
|
17
17
|
return isEmptyAttrValue(value) || isInvalidAttrName(name) ?
|
|
18
18
|
"" :
|
|
19
|
-
notEmptyAttr(name, value);
|
|
20
|
-
|
|
19
|
+
notEmptyAttr(name, value);
|
|
20
|
+
}
|
|
21
21
|
};
|
|
22
22
|
|
|
23
23
|
// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2
|
|
@@ -40,9 +40,9 @@ function notEmptyAttr(name, value) {
|
|
|
40
40
|
|
|
41
41
|
return " " + name + singleQuote(JSON.stringify(value), 2);
|
|
42
42
|
case RegExp.prototype.toString:
|
|
43
|
-
return " " + name + guessQuotes(value.source);
|
|
44
|
-
|
|
45
|
-
|
|
43
|
+
return " " + name + guessQuotes(value.source);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
46
|
|
|
47
47
|
return " " + name + guessQuotes(value + "");
|
|
48
48
|
}
|
|
@@ -71,8 +71,8 @@ function guessQuotes(value) {
|
|
|
71
71
|
case "\n":
|
|
72
72
|
case "\r":
|
|
73
73
|
case "\f":
|
|
74
|
-
return doubleQuote(value, i + 1);
|
|
75
|
-
|
|
74
|
+
return doubleQuote(value, i + 1);
|
|
75
|
+
}
|
|
76
76
|
}
|
|
77
77
|
|
|
78
78
|
return value && "=" + (value[len - 1] === "/" ? value + " " : value);
|
|
@@ -27,8 +27,8 @@ module.exports = function dataMarko(out, componentDef, props, key) {
|
|
|
27
27
|
result +=
|
|
28
28
|
' data-marko-key="' +
|
|
29
29
|
escapeDoubleQuotes(
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
componentDef.aK_(key) + " " + componentDef.id
|
|
31
|
+
) +
|
|
32
32
|
'"';
|
|
33
33
|
}
|
|
34
34
|
}
|
|
@@ -22,14 +22,14 @@ Template.prototype.stream = require("@internal/create-readable");
|
|
|
22
22
|
|
|
23
23
|
var AsyncStream = require("./AsyncStream");
|
|
24
24
|
require("../createOut").bc_(
|
|
25
|
-
Template.prototype.createOut = function createOut(
|
|
26
|
-
globalData,
|
|
27
|
-
writer,
|
|
28
|
-
parentOut,
|
|
29
|
-
buffer)
|
|
30
|
-
{
|
|
31
|
-
|
|
32
|
-
}
|
|
33
|
-
|
|
25
|
+
Template.prototype.createOut = function createOut(
|
|
26
|
+
globalData,
|
|
27
|
+
writer,
|
|
28
|
+
parentOut,
|
|
29
|
+
buffer)
|
|
30
|
+
{
|
|
31
|
+
return new AsyncStream(globalData, writer, parentOut, buffer);
|
|
32
|
+
}
|
|
33
|
+
);
|
|
34
34
|
|
|
35
35
|
require("../renderable")(Template.prototype);
|
|
@@ -120,10 +120,10 @@ module.exports = function (target, renderer) {
|
|
|
120
120
|
callback = out;
|
|
121
121
|
} else {
|
|
122
122
|
finalOut = createOut(
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
123
|
+
globalData, // global
|
|
124
|
+
out, // writer(AsyncStream) or parentNode(AsyncVDOMBuilder)
|
|
125
|
+
undefined, // parentOut
|
|
126
|
+
shouldBuffer // ignored by AsyncVDOMBuilder
|
|
127
127
|
);
|
|
128
128
|
}
|
|
129
129
|
|
|
@@ -76,27 +76,27 @@ var proto = AsyncVDOMBuilder.prototype = {
|
|
|
76
76
|
|
|
77
77
|
element: function (tagName, attrs, key, component, childCount, flags, props) {
|
|
78
78
|
var element = new VElement(
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
79
|
+
tagName,
|
|
80
|
+
attrs,
|
|
81
|
+
key,
|
|
82
|
+
component,
|
|
83
|
+
childCount,
|
|
84
|
+
flags,
|
|
85
|
+
props
|
|
86
|
+
);
|
|
87
87
|
return this.bI_(element, childCount);
|
|
88
88
|
},
|
|
89
89
|
|
|
90
90
|
bk_: function (tagName, attrs, key, componentDef, props) {
|
|
91
91
|
return this.element(
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
92
|
+
tagName,
|
|
93
|
+
attrsHelper(attrs),
|
|
94
|
+
key,
|
|
95
|
+
componentDef.i_,
|
|
96
|
+
0,
|
|
97
|
+
0,
|
|
98
|
+
props
|
|
99
|
+
);
|
|
100
100
|
},
|
|
101
101
|
|
|
102
102
|
n: function (node, component) {
|
|
@@ -152,28 +152,28 @@ var proto = AsyncVDOMBuilder.prototype = {
|
|
|
152
152
|
props)
|
|
153
153
|
{
|
|
154
154
|
var element = new VElement(
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
155
|
+
tagName,
|
|
156
|
+
attrs,
|
|
157
|
+
key,
|
|
158
|
+
component,
|
|
159
|
+
childCount,
|
|
160
|
+
flags,
|
|
161
|
+
props
|
|
162
|
+
);
|
|
163
163
|
this.bI_(element, childCount, true);
|
|
164
164
|
return this;
|
|
165
165
|
},
|
|
166
166
|
|
|
167
167
|
bi_: function (tagName, attrs, key, componentDef, props) {
|
|
168
168
|
return this.beginElement(
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
169
|
+
tagName,
|
|
170
|
+
attrsHelper(attrs),
|
|
171
|
+
key,
|
|
172
|
+
componentDef.i_,
|
|
173
|
+
0,
|
|
174
|
+
0,
|
|
175
|
+
props
|
|
176
|
+
);
|
|
177
177
|
},
|
|
178
178
|
|
|
179
179
|
bf: function (key, component, preserve) {
|
|
@@ -269,8 +269,8 @@ var proto = AsyncVDOMBuilder.prototype = {
|
|
|
269
269
|
beginAsync: function (options) {
|
|
270
270
|
if (this.bG_) {
|
|
271
271
|
throw Error(
|
|
272
|
-
|
|
273
|
-
|
|
272
|
+
"Tried to render async while in sync mode. Note: Client side await is not currently supported in re-renders (Issue: #942)."
|
|
273
|
+
);
|
|
274
274
|
}
|
|
275
275
|
|
|
276
276
|
var state = this.G_;
|
|
@@ -353,8 +353,8 @@ var proto = AsyncVDOMBuilder.prototype = {
|
|
|
353
353
|
break;
|
|
354
354
|
default:
|
|
355
355
|
events.emit.apply(events, arguments);
|
|
356
|
-
break;
|
|
357
|
-
|
|
356
|
+
break;
|
|
357
|
+
}
|
|
358
358
|
return this;
|
|
359
359
|
},
|
|
360
360
|
|
|
@@ -42,8 +42,8 @@ function convertAttrValue(type, value) {
|
|
|
42
42
|
|
|
43
43
|
return JSON.stringify(value);
|
|
44
44
|
case RegExp.prototype.toString:
|
|
45
|
-
return value.source;
|
|
46
|
-
|
|
45
|
+
return value.source;
|
|
46
|
+
}
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
return value + "";
|
|
@@ -131,16 +131,16 @@ VElement.prototype = {
|
|
|
131
131
|
*/
|
|
132
132
|
e: function (tagName, attrs, key, ownerComponent, childCount, flags, props) {
|
|
133
133
|
var child = this.bJ_(
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
134
|
+
new VElement(
|
|
135
|
+
tagName,
|
|
136
|
+
attrs,
|
|
137
|
+
key,
|
|
138
|
+
ownerComponent,
|
|
139
|
+
childCount,
|
|
140
|
+
flags,
|
|
141
|
+
props
|
|
142
|
+
)
|
|
143
|
+
);
|
|
144
144
|
|
|
145
145
|
if (childCount === 0) {
|
|
146
146
|
return this.cb_();
|
|
@@ -169,9 +169,9 @@ VElement.prototype = {
|
|
|
169
169
|
|
|
170
170
|
var flags = this.C_;
|
|
171
171
|
var el = (host.ownerDocument || host).createElementNS(
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
172
|
+
namespaceURI,
|
|
173
|
+
tagName
|
|
174
|
+
);
|
|
175
175
|
|
|
176
176
|
if (flags & FLAG_CUSTOM_ELEMENT) {
|
|
177
177
|
assign(el, attributes);
|
|
@@ -282,14 +282,14 @@ function virtualizeElement(node, virtualizeChildNodes, ownerComponent) {
|
|
|
282
282
|
}
|
|
283
283
|
|
|
284
284
|
var vdomEl = new VElement(
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
285
|
+
tagName,
|
|
286
|
+
attrs,
|
|
287
|
+
null /*key*/,
|
|
288
|
+
ownerComponent,
|
|
289
|
+
0 /*child count*/,
|
|
290
|
+
0 /*flags*/,
|
|
291
|
+
props
|
|
292
|
+
);
|
|
293
293
|
|
|
294
294
|
if (vdomEl.bZ_ === "textarea") {
|
|
295
295
|
vdomEl.c__ = node.value;
|
|
@@ -20,13 +20,13 @@ function Template(typeName) {
|
|
|
20
20
|
|
|
21
21
|
var AsyncVDOMBuilder = require("./AsyncVDOMBuilder");
|
|
22
22
|
require("../createOut").bc_(
|
|
23
|
-
Template.prototype.createOut = function createOut(
|
|
24
|
-
globalData,
|
|
25
|
-
parent,
|
|
26
|
-
parentOut)
|
|
27
|
-
{
|
|
28
|
-
|
|
29
|
-
}
|
|
30
|
-
|
|
23
|
+
Template.prototype.createOut = function createOut(
|
|
24
|
+
globalData,
|
|
25
|
+
parent,
|
|
26
|
+
parentOut)
|
|
27
|
+
{
|
|
28
|
+
return new AsyncVDOMBuilder(globalData, parent, parentOut);
|
|
29
|
+
}
|
|
30
|
+
);
|
|
31
31
|
|
|
32
32
|
require("../renderable")(Template.prototype);
|
|
@@ -40,10 +40,10 @@ var fragmentPrototype = {
|
|
|
40
40
|
insertBefore: function (newChildNode, referenceNode) {
|
|
41
41
|
var actualReference = referenceNode == null ? this.endNode : referenceNode;
|
|
42
42
|
return insertBefore(
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
43
|
+
newChildNode,
|
|
44
|
+
actualReference,
|
|
45
|
+
this.startNode.parentNode
|
|
46
|
+
);
|
|
47
47
|
},
|
|
48
48
|
insertInto: function (newParentNode, referenceNode) {
|
|
49
49
|
this.nodes.forEach(function (node) {
|
|
@@ -83,10 +83,10 @@ function beginFragmentNode(startNode, parentNode) {
|
|
|
83
83
|
fragment.co_ = function (nextNode) {
|
|
84
84
|
fragment.co_ = null;
|
|
85
85
|
insertBefore(
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
86
|
+
fragment.endNode,
|
|
87
|
+
nextNode,
|
|
88
|
+
parentNode || startNode.parentNode
|
|
89
|
+
);
|
|
90
90
|
};
|
|
91
91
|
return fragment;
|
|
92
92
|
}
|
|
@@ -3,17 +3,17 @@
|
|
|
3
3
|
return node.insertInto(parentNode, referenceNode);
|
|
4
4
|
}
|
|
5
5
|
return parentNode.insertBefore(
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
node,
|
|
7
|
+
referenceNode && referenceNode.startNode || referenceNode
|
|
8
|
+
);
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
function insertAfter(node, referenceNode, parentNode) {
|
|
12
12
|
return insertBefore(
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
node,
|
|
14
|
+
referenceNode && referenceNode.nextSibling,
|
|
15
|
+
parentNode
|
|
16
|
+
);
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
function nextSibling(node) {
|