marko 5.25.2 → 5.25.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. package/dist/compiler/modules.js +1 -1
  2. package/dist/core-tags/components/preserve-tag.js +81 -0
  3. package/dist/core-tags/core/await/renderer.js +1 -1
  4. package/dist/runtime/RenderResult.js +1 -1
  5. package/dist/runtime/components/Component.js +9 -9
  6. package/dist/runtime/components/ComponentDef.js +3 -3
  7. package/dist/runtime/components/ComponentsContext.js +5 -5
  8. package/dist/runtime/components/State.js +2 -2
  9. package/dist/runtime/components/beginComponent/index-browser.js +3 -3
  10. package/dist/runtime/components/beginComponent/index.js +1 -1
  11. package/dist/runtime/components/endComponent/index.js +1 -1
  12. package/dist/runtime/components/entry/index.js +1 -1
  13. package/dist/runtime/components/registry/index-browser.js +6 -6
  14. package/dist/runtime/components/renderer.js +8 -8
  15. package/dist/runtime/components/util/index-browser.js +3 -3
  16. package/dist/runtime/components/util/index.js +1 -1
  17. package/dist/runtime/helpers/dynamic-tag.js +8 -8
  18. package/dist/runtime/helpers/render-tag.js +1 -1
  19. package/dist/runtime/html/AsyncStream.js +4 -4
  20. package/dist/runtime/vdom/AsyncVDOMBuilder.js +14 -14
  21. package/dist/runtime/vdom/VComponent.js +2 -2
  22. package/dist/runtime/vdom/VElement.js +1 -1
  23. package/dist/runtime/vdom/VFragment.js +1 -1
  24. package/dist/runtime/vdom/VNode.js +1 -1
  25. package/dist/runtime/vdom/morphdom/index.js +17 -17
  26. package/package.json +3 -3
  27. package/src/compiler/modules.js +1 -1
  28. package/src/core-tags/components/preserve-tag.js +81 -0
  29. package/src/core-tags/core/await/renderer.js +1 -1
  30. package/src/runtime/helpers/dynamic-tag.js +1 -1
  31. package/dist/core-tags/components/preserve-tag/index-browser.js +0 -45
  32. package/dist/core-tags/components/preserve-tag/index.js +0 -27
  33. package/dist/core-tags/components/preserve-tag/package.json +0 -11
  34. package/src/core-tags/components/preserve-tag/index-browser.js +0 -45
  35. package/src/core-tags/components/preserve-tag/index.js +0 -27
  36. package/src/core-tags/components/preserve-tag/package.json +0 -11
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
 
3
- if (typeof window === "undefined") {
3
+ if (typeof document === "undefined") {
4
4
  exports.require = require;
5
5
  }
@@ -0,0 +1,81 @@
1
+ "use strict";var ComponentsContext = require("../../runtime/components/ComponentsContext");
2
+ var getComponentsContext = ComponentsContext.e_;
3
+
4
+ module.exports = function render(input, out) {
5
+ var isComponent = !input.n;
6
+ var shouldPreserve = !("i" in input) || input.i;
7
+ var componentsContext = out.b_;
8
+
9
+ if (typeof document === "object") {
10
+ var isHydrate =
11
+ componentsContext && componentsContext.f_.g_;
12
+ var ownerComponent = out.h_.i_;
13
+ var referenceComponent = ownerComponent;
14
+ var key = out.j_;
15
+ var checkKey = key;
16
+
17
+ if (key[0] !== "@") {
18
+ var parentComponent = componentsContext.k_.i_;
19
+ if (ownerComponent !== parentComponent) {
20
+ referenceComponent = parentComponent;
21
+ checkKey += ":" + ownerComponent.id;
22
+ }
23
+ }
24
+
25
+ var isPreserved =
26
+ shouldPreserve && (
27
+ isHydrate || referenceComponent.l_[checkKey]);
28
+
29
+ if (isComponent) {
30
+ out.bf(key, ownerComponent, shouldPreserve);
31
+
32
+ if (!isPreserved && input.renderBody) {
33
+ input.renderBody(out);
34
+ }
35
+
36
+ out.ef();
37
+ } else {
38
+ if (isPreserved) {
39
+ if (input.b) {
40
+ out.m_.n_ = true;
41
+ } else {
42
+ out.beginElement("", null, key, ownerComponent);
43
+ out.m_.o_ = true;
44
+ out.endElement();
45
+ }
46
+ } else if (input.renderBody) {
47
+ input.renderBody(out);
48
+ }
49
+ }
50
+ } else {
51
+ if (isComponent) {
52
+ out.bf(
53
+ out.j_,
54
+ out.h_.i_,
55
+ true);
56
+
57
+ }
58
+
59
+ if (input.renderBody) {
60
+ if (shouldPreserve) {
61
+ var parentPreserved = false;
62
+
63
+ if (componentsContext) {
64
+ parentPreserved = componentsContext.p_;
65
+ } else {
66
+ componentsContext = getComponentsContext(out);
67
+ }
68
+
69
+ componentsContext.p_ = true;
70
+ input.renderBody(out);
71
+ componentsContext.p_ = parentPreserved;
72
+ } else {
73
+ input.renderBody(out);
74
+ }
75
+ }
76
+
77
+ if (isComponent) {
78
+ out.ef();
79
+ }
80
+ }
81
+ };
@@ -81,7 +81,7 @@ const LAST_OPTIONS = { last: true, name: "await:finish" };
81
81
 
82
82
  module.exports = function awaitTag(input, out) {
83
83
  var clientReorder =
84
- typeof window === "undefined" &&
84
+ typeof document === "undefined" &&
85
85
  input.clientReorder === true &&
86
86
  !out.isVDOM;
87
87
 
@@ -37,7 +37,7 @@ var proto = RenderResult.prototype = {
37
37
  var components = [];
38
38
 
39
39
  componentDefs.forEach(function (componentDef) {
40
- var component = componentDef.h_;
40
+ var component = componentDef.i_;
41
41
  if (!selector || selector(component)) {
42
42
  components.push(component);
43
43
  }
@@ -6,7 +6,7 @@
6
6
  var domInsert = require("../dom-insert");
7
7
  var defaultCreateOut = require("../createOut");
8
8
  var getComponentsContext =
9
- require("./ComponentsContext").o_;
9
+ require("./ComponentsContext").e_;
10
10
  var componentsUtil = require("./util");
11
11
  var componentLookup = componentsUtil.D_;
12
12
  var destroyNodeRecursive = componentsUtil.E_;
@@ -189,10 +189,10 @@ function Component(id) {
189
189
  var ssrKeyedElements = keyedElementsByComponentId[id];
190
190
 
191
191
  if (ssrKeyedElements) {
192
- this.k_ = ssrKeyedElements;
192
+ this.l_ = ssrKeyedElements;
193
193
  delete keyedElementsByComponentId[id];
194
194
  } else {
195
- this.k_ = {};
195
+ this.l_ = {};
196
196
  }
197
197
  }
198
198
 
@@ -248,7 +248,7 @@ Component.prototype = componentProto = {
248
248
  getEl: function (key, index) {
249
249
  if (key) {
250
250
  var keyedElement =
251
- this.k_["@" + resolveKeyHelper(key, index)];
251
+ this.l_["@" + resolveKeyHelper(key, index)];
252
252
 
253
253
  // eslint-disable-next-line no-constant-condition
254
254
 
@@ -280,7 +280,7 @@ Component.prototype = componentProto = {
280
280
  return els;
281
281
  },
282
282
  getComponent: function (key, index) {
283
- var rootNode = this.k_["@" + resolveKeyHelper(key, index)];
283
+ var rootNode = this.l_["@" + resolveKeyHelper(key, index)];
284
284
  // eslint-disable-next-line no-constant-condition
285
285
 
286
286
 
@@ -293,7 +293,7 @@ Component.prototype = componentProto = {
293
293
  return rootNode && componentsByDOMNode.get(rootNode);
294
294
  },
295
295
  getComponents: function (key) {
296
- var lookup = this.k_["@" + key + "[]"];
296
+ var lookup = this.l_["@" + key + "[]"];
297
297
  return lookup ?
298
298
  Object.keys(lookup).
299
299
  map(function (key) {
@@ -324,7 +324,7 @@ Component.prototype = componentProto = {
324
324
  root.detached = true;
325
325
 
326
326
  delete componentLookup[this.id];
327
- this.k_ = {};
327
+ this.l_ = {};
328
328
  },
329
329
 
330
330
  ___: function () {
@@ -544,9 +544,9 @@ Component.prototype = componentProto = {
544
544
  out[CONTEXT_KEY] = this._i_;
545
545
 
546
546
  var componentsContext = getComponentsContext(out);
547
- var globalComponentsContext = componentsContext.e_;
547
+ var globalComponentsContext = componentsContext.f_;
548
548
  globalComponentsContext._r_ = this;
549
- globalComponentsContext.f_ = isHydrate;
549
+ globalComponentsContext.g_ = isHydrate;
550
550
 
551
551
  renderer(input, out);
552
552
 
@@ -19,7 +19,7 @@ var FLAG_HAS_RENDER_BODY = 2;
19
19
  */
20
20
  function ComponentDef(component, componentId, componentsContext) {
21
21
  this._F_ = componentsContext; // The AsyncWriter that this component is associated with
22
- this.h_ = component;
22
+ this.i_ = component;
23
23
  this.id = componentId;
24
24
 
25
25
  this._G_ = undefined; // An array of DOM events that need to be added (in sets of three)
@@ -80,7 +80,7 @@ ComponentDef.prototype = {
80
80
  },
81
81
 
82
82
  get _O_() {
83
- return this.h_._O_;
83
+ return this.i_._O_;
84
84
  }
85
85
  };
86
86
 
@@ -146,7 +146,7 @@ ComponentDef._P_ = function (o, types, global, registry) {
146
146
 
147
147
  return {
148
148
  id: id,
149
- h_: component,
149
+ i_: component,
150
150
  _G_: extra.d,
151
151
  _J_: extra.f || 0
152
152
  };
@@ -6,8 +6,8 @@ function ComponentsContext(out, parentComponentsContext) {
6
6
  var componentDef;
7
7
 
8
8
  if (parentComponentsContext) {
9
- globalComponentsContext = parentComponentsContext.e_;
10
- componentDef = parentComponentsContext.j_;
9
+ globalComponentsContext = parentComponentsContext.f_;
10
+ componentDef = parentComponentsContext.k_;
11
11
 
12
12
  var nestedContextsForParent;
13
13
  if (
@@ -25,10 +25,10 @@ function ComponentsContext(out, parentComponentsContext) {
25
25
  }
26
26
  }
27
27
 
28
- this.e_ = globalComponentsContext;
28
+ this.f_ = globalComponentsContext;
29
29
  this.b_ = [];
30
30
  this.z_ = out;
31
- this.j_ = componentDef;
31
+ this.k_ = componentDef;
32
32
  this._R_ = undefined;
33
33
  this.p_ =
34
34
  parentComponentsContext && parentComponentsContext.p_;
@@ -56,4 +56,4 @@ function getComponentsContext(out) {
56
56
 
57
57
  module.exports = exports = ComponentsContext;
58
58
 
59
- exports.o_ = getComponentsContext;
59
+ exports.e_ = getComponentsContext;
@@ -15,7 +15,7 @@ function ensure(state, propertyName) {
15
15
  }
16
16
 
17
17
  function State(component) {
18
- this.h_ = component;
18
+ this.i_ = component;
19
19
  this._v_ = {};
20
20
 
21
21
  this.W_ = false;
@@ -84,7 +84,7 @@ State.prototype = {
84
84
  this._m_ = rawState;
85
85
  this._v_ = rawState = extend({}, rawState);
86
86
  this._l_ = {};
87
- this.h_._f_();
87
+ this.i_._f_();
88
88
  }
89
89
 
90
90
  this._l_[name] = value;
@@ -7,17 +7,17 @@ key,
7
7
  ownerComponentDef)
8
8
  {
9
9
  var componentId = component.id;
10
- var componentDef = componentsContext.j_ = new ComponentDef(
10
+ var componentDef = componentsContext.k_ = new ComponentDef(
11
11
  component,
12
12
  componentId,
13
13
  componentsContext);
14
14
 
15
- componentsContext.e_._V_[
15
+ componentsContext.f_._V_[
16
16
  componentId] =
17
17
  true;
18
18
  componentsContext.b_.push(componentDef);
19
19
 
20
20
  var out = componentsContext.z_;
21
- out.bc(component, key, ownerComponentDef && ownerComponentDef.h_);
21
+ out.bc(component, key, ownerComponentDef && ownerComponentDef.i_);
22
22
  return componentDef;
23
23
  };
@@ -15,7 +15,7 @@ isImplicitComponent)
15
15
  {
16
16
  var componentId = component.id;
17
17
 
18
- var componentDef = componentsContext.j_ = new ComponentDef(
18
+ var componentDef = componentsContext.k_ = new ComponentDef(
19
19
  component,
20
20
  componentId,
21
21
  componentsContext);
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  var ComponentsContext = require("../ComponentsContext");
4
- var getComponentsContext = ComponentsContext.o_;
4
+ var getComponentsContext = ComponentsContext.e_;
5
5
 
6
6
  module.exports = function endComponent(out, componentDef) {
7
7
  if (componentDef._I_) {
@@ -63,7 +63,7 @@ function addComponentsFromContext(componentsContext, componentsToHydrate) {
63
63
  for (var i = 0; i < len; i++) {
64
64
  var componentDef = components[i];
65
65
  var id = componentDef.id;
66
- var component = componentDef.h_;
66
+ var component = componentDef.i_;
67
67
  var flags = componentDef._J_;
68
68
  var input = component.input || 0;
69
69
  var typeName = component.typeName;
@@ -186,7 +186,7 @@ function indexServerComponentBoundaries(node, runtimeId, stack) {
186
186
  ownerId = parts[1];
187
187
  componentId = parts[0];
188
188
  if (ownerComponent = componentLookup[ownerId]) {
189
- keyedElements = ownerComponent.k_;
189
+ keyedElements = ownerComponent.l_;
190
190
  } else {
191
191
  keyedElements =
192
192
  keyedElementsByComponentId[ownerId] || (
@@ -215,7 +215,7 @@ function indexServerComponentBoundaries(node, runtimeId, stack) {
215
215
  ownerId = markoKey.substring(separatorIndex + 1);
216
216
  markoKey = markoKey.substring(0, separatorIndex);
217
217
  if (ownerComponent = componentLookup[ownerId]) {
218
- keyedElements = ownerComponent.k_;
218
+ keyedElements = ownerComponent.l_;
219
219
  } else {
220
220
  keyedElements =
221
221
  keyedElementsByComponentId[ownerId] || (
@@ -288,7 +288,7 @@ handles)
288
288
  }
289
289
 
290
290
  function initComponent(componentDef, host) {
291
- var component = componentDef.h_;
291
+ var component = componentDef.i_;
292
292
 
293
293
  component.J_();
294
294
  component.Y_ = host;
@@ -308,7 +308,7 @@ function initComponent(componentDef, host) {
308
308
 
309
309
  var eventType = domEventArgs[0];
310
310
  var targetMethodName = domEventArgs[1];
311
- var eventEl = component.k_[domEventArgs[2]];
311
+ var eventEl = component.l_[domEventArgs[2]];
312
312
  var isOnce = domEventArgs[3];
313
313
  var extraArgs = domEventArgs[4];
314
314
 
@@ -524,7 +524,7 @@ function tryHydrateComponent(rawDef, meta, host, runtimeId) {
524
524
 
525
525
  function hydrateComponentAndGetMount(componentDef, host) {
526
526
  var componentId = componentDef.id;
527
- var component = componentDef.h_;
527
+ var component = componentDef.i_;
528
528
  var rootNode = serverComponentRootNodes[componentId];
529
529
  var renderResult;
530
530
 
@@ -552,7 +552,7 @@ function hydrateComponentAndGetMount(componentDef, host) {
552
552
  }
553
553
 
554
554
  function trackComponent(componentDef) {
555
- var component = componentDef.h_;
555
+ var component = componentDef.i_;
556
556
  if (component) {
557
557
  componentLookup[component.id] = component;
558
558
  }
@@ -2,7 +2,7 @@
2
2
  var componentLookup = componentsUtil.D_;
3
3
 
4
4
  var ComponentsContext = require("./ComponentsContext");
5
- var getComponentsContext = ComponentsContext.o_;
5
+ var getComponentsContext = ComponentsContext.e_;
6
6
  var registry = require("./registry");
7
7
  var copyProps = require("raptor-util/copyProps");
8
8
  var isServer = componentsUtil.au_ === true;
@@ -40,8 +40,8 @@ function handleBeginAsync(event) {
40
40
  }
41
41
  // Carry along the component arguments
42
42
  asyncOut.c(
43
- parentOut.g_,
44
- parentOut.i_,
43
+ parentOut.h_,
44
+ parentOut.j_,
45
45
  parentOut.av_);
46
46
 
47
47
  }
@@ -80,17 +80,17 @@ renderingLogic)
80
80
  trackAsyncComponents(out);
81
81
 
82
82
  var componentsContext = getComponentsContext(out);
83
- var globalComponentsContext = componentsContext.e_;
83
+ var globalComponentsContext = componentsContext.f_;
84
84
 
85
85
  var component = globalComponentsContext._r_;
86
86
  var isRerender = component !== undefined;
87
87
  var id;
88
88
  var isExisting;
89
89
  var customEvents;
90
- var parentComponentDef = componentsContext.j_;
91
- var ownerComponentDef = out.g_;
90
+ var parentComponentDef = componentsContext.k_;
91
+ var ownerComponentDef = out.h_;
92
92
  var ownerComponentId = ownerComponentDef && ownerComponentDef.id;
93
- var key = out.i_;
93
+ var key = out.j_;
94
94
 
95
95
  if (component) {
96
96
  // If component is provided then we are currently rendering
@@ -225,7 +225,7 @@ renderingLogic)
225
225
 
226
226
 
227
227
  endComponent(out, componentDef);
228
- componentsContext.j_ = parentComponentDef;
228
+ componentsContext.k_ = parentComponentDef;
229
229
  };
230
230
  }
231
231
 
@@ -51,13 +51,13 @@ function destroyNodeRecursive(node, component) {
51
51
  var key;
52
52
 
53
53
  if (component && (key = keysByDOMNode.get(node))) {
54
- if (node === component.k_[key]) {
54
+ if (node === component.l_[key]) {
55
55
  if (componentsByDOMNode.get(node) && /\[\]$/.test(key)) {
56
- delete component.k_[key][
56
+ delete component.l_[key][
57
57
  componentsByDOMNode.get(node).id];
58
58
 
59
59
  } else {
60
- delete component.k_[key];
60
+ delete component.l_[key];
61
61
  }
62
62
  }
63
63
  }
@@ -18,7 +18,7 @@ extraArgs)
18
18
  {
19
19
  if (handlerMethodName) {
20
20
  if (extraArgs) {
21
- var component = componentDef.h_;
21
+ var component = componentDef.i_;
22
22
  var eventIndex = component._X_++;
23
23
 
24
24
  // If we are not going to be doing a rerender in the browser
@@ -3,7 +3,7 @@
3
3
 
4
4
  var changeCase = require("./_change-case");
5
5
  var ComponentsContext = require("../components/ComponentsContext");
6
- var getComponentsContext = ComponentsContext.o_;
6
+ var getComponentsContext = ComponentsContext.e_;
7
7
  var ComponentDef = require("../components/ComponentDef");
8
8
  var w10NOOP = require("warp10/constants").NOOP;
9
9
  var RENDER_BODY_TO_JSON = function () {
@@ -12,7 +12,7 @@ var RENDER_BODY_TO_JSON = function () {
12
12
 
13
13
  var FLAG_WILL_RERENDER_IN_BROWSER = 1;
14
14
  // var FLAG_HAS_RENDER_BODY = 2;
15
- var IS_SERVER = typeof window === "undefined";
15
+ var IS_SERVER = typeof document === "undefined";
16
16
 
17
17
  /**
18
18
  * Helper to render a dynamic tag
@@ -34,7 +34,7 @@ customEvents)
34
34
  }
35
35
 
36
36
  var attrs = getAttrs && getAttrs();
37
- var component = componentDef && componentDef.h_;
37
+ var component = componentDef && componentDef.i_;
38
38
  if (typeof tag === "string") {
39
39
  if (renderBody) {
40
40
  out.aJ_(
@@ -83,7 +83,7 @@ customEvents)
83
83
  if (renderer) {
84
84
  out.c(componentDef, key, customEvents);
85
85
  renderer(attrs, out);
86
- out.g_ = null;
86
+ out.h_ = null;
87
87
  } else {
88
88
  var render = tag && tag.renderBody || tag;
89
89
  var isFn = typeof render === "function";
@@ -104,9 +104,9 @@ customEvents)
104
104
  out.bf(key, component, preserve);
105
105
  if (!isW10NOOP && isFn) {
106
106
  var componentsContext = getComponentsContext(out);
107
- var parentComponentDef = componentsContext.j_;
108
- var globalContext = componentsContext.e_;
109
- componentsContext.j_ = new ComponentDef(
107
+ var parentComponentDef = componentsContext.k_;
108
+ var globalContext = componentsContext.f_;
109
+ componentsContext.k_ = new ComponentDef(
110
110
  component,
111
111
  parentComponentDef.id + "-" + parentComponentDef._M_(key),
112
112
  globalContext);
@@ -119,7 +119,7 @@ customEvents)
119
119
  render(out, attrs);
120
120
  }
121
121
 
122
- componentsContext.j_ = parentComponentDef;
122
+ componentsContext.k_ = parentComponentDef;
123
123
  }
124
124
  out.ef();
125
125
  } else {
@@ -16,5 +16,5 @@ customEvents)
16
16
  input,
17
17
  out);
18
18
 
19
- out.g_ = null;
19
+ out.h_ = null;
20
20
  };
@@ -91,8 +91,8 @@ function AsyncStream(global, writer, parentOut) {
91
91
 
92
92
  this.b_ = null; // ComponentsContext
93
93
 
94
- this.g_ = null;
95
- this.i_ = null;
94
+ this.h_ = null;
95
+ this.j_ = null;
96
96
  this.av_ = null;
97
97
  this.aN_ = false;
98
98
  }
@@ -650,8 +650,8 @@ var proto = AsyncStream.prototype = {
650
650
  },
651
651
 
652
652
  c: function (componentDef, key, customEvents) {
653
- this.g_ = componentDef;
654
- this.i_ = key;
653
+ this.h_ = componentDef;
654
+ this.j_ = key;
655
655
  this.av_ = customEvents;
656
656
  }
657
657
  };
@@ -39,15 +39,15 @@ function AsyncVDOMBuilder(globalData, parentNode, parentOut) {
39
39
 
40
40
  this.data = {};
41
41
  this.K_ = state;
42
- this.l_ = parentNode;
42
+ this.m_ = parentNode;
43
43
  this.global = globalData || {};
44
44
  this.bl_ = [parentNode];
45
45
  this.bm_ = false;
46
46
  this.bn_ = undefined;
47
47
  this.b_ = null;
48
48
 
49
- this.g_ = null;
50
- this.i_ = null;
49
+ this.h_ = null;
50
+ this.j_ = null;
51
51
  this.av_ = null;
52
52
  }
53
53
 
@@ -66,10 +66,10 @@ var proto = AsyncVDOMBuilder.prototype = {
66
66
  },
67
67
 
68
68
  bo_: function (child, childCount, pushToStack) {
69
- this.l_.bp_(child);
69
+ this.m_.bp_(child);
70
70
  if (pushToStack === true) {
71
71
  this.bl_.push(child);
72
- this.l_ = child;
72
+ this.m_ = child;
73
73
  }
74
74
  return childCount === 0 ? this : child;
75
75
  },
@@ -92,7 +92,7 @@ var proto = AsyncVDOMBuilder.prototype = {
92
92
  tagName,
93
93
  attrsHelper(attrs),
94
94
  key,
95
- componentDef.h_,
95
+ componentDef.i_,
96
96
  0,
97
97
  0,
98
98
  props);
@@ -110,7 +110,7 @@ var proto = AsyncVDOMBuilder.prototype = {
110
110
  },
111
111
 
112
112
  node: function (node) {
113
- this.l_.bp_(node);
113
+ this.m_.bp_(node);
114
114
  return this;
115
115
  },
116
116
 
@@ -129,7 +129,7 @@ var proto = AsyncVDOMBuilder.prototype = {
129
129
  text = text.toString();
130
130
  }
131
131
 
132
- this.l_.bp_(new VText(text, ownerComponent));
132
+ this.m_.bp_(new VText(text, ownerComponent));
133
133
  return this;
134
134
  },
135
135
 
@@ -169,7 +169,7 @@ var proto = AsyncVDOMBuilder.prototype = {
169
169
  tagName,
170
170
  attrsHelper(attrs),
171
171
  key,
172
- componentDef.h_,
172
+ componentDef.i_,
173
173
  0,
174
174
  0,
175
175
  props);
@@ -189,11 +189,11 @@ var proto = AsyncVDOMBuilder.prototype = {
189
189
  endElement: function () {
190
190
  var stack = this.bl_;
191
191
  stack.pop();
192
- this.l_ = stack[stack.length - 1];
192
+ this.m_ = stack[stack.length - 1];
193
193
  },
194
194
 
195
195
  end: function () {
196
- this.l_ = undefined;
196
+ this.m_ = undefined;
197
197
 
198
198
  var remaining = --this.bh_;
199
199
  var parentOut = this.bk_;
@@ -283,7 +283,7 @@ var proto = AsyncVDOMBuilder.prototype = {
283
283
 
284
284
  this.bh_++;
285
285
 
286
- var documentFragment = this.l_.bu_();
286
+ var documentFragment = this.m_.bu_();
287
287
  var asyncOut = new AsyncVDOMBuilder(this.global, documentFragment, this);
288
288
 
289
289
  state.be_.emit("beginAsync", {
@@ -435,8 +435,8 @@ var proto = AsyncVDOMBuilder.prototype = {
435
435
  isVDOM: true,
436
436
 
437
437
  c: function (componentDef, key, customEvents) {
438
- this.g_ = componentDef;
439
- this.i_ = key;
438
+ this.h_ = componentDef;
439
+ this.j_ = key;
440
440
  this.av_ = customEvents;
441
441
  }
442
442
  };
@@ -4,8 +4,8 @@ var inherit = require("raptor-util/inherit");
4
4
  function VComponent(component, key, ownerComponent, preserve) {
5
5
  this.bx_(null /* childCount */, ownerComponent);
6
6
  this.by_ = key;
7
- this.h_ = component;
8
- this.n_ = preserve;
7
+ this.i_ = component;
8
+ this.o_ = preserve;
9
9
  }
10
10
 
11
11
  VComponent.prototype = {
@@ -100,8 +100,8 @@ props)
100
100
  this.bF_ = tagName;
101
101
  this.bG_ = null;
102
102
  this.bH_ = constId;
103
+ this.o_ = false;
103
104
  this.n_ = false;
104
- this.m_ = false;
105
105
  }
106
106
 
107
107
  VElement.prototype = {
@@ -8,7 +8,7 @@ var createFragmentNode = require("./morphdom/fragment").ap_;
8
8
  function VFragment(key, ownerComponent, preserve) {
9
9
  this.bx_(null /* childCount */, ownerComponent);
10
10
  this.by_ = key;
11
- this.n_ = preserve;
11
+ this.o_ = preserve;
12
12
  }
13
13
 
14
14
  VFragment.prototype = {
@@ -52,7 +52,7 @@ VNode.prototype = {
52
52
  if (child.bR_) {
53
53
  var childValue = child.bS_;
54
54
  this.bG_ = (this.bG_ || "") + childValue;
55
- } else if (child.n_ || child.m_) {
55
+ } else if (child.o_ || child.n_) {
56
56
  this.bT_ = true;
57
57
  } else {
58
58
  throw TypeError();
@@ -62,8 +62,8 @@ function morphdom(fromNode, toNode, host, componentsContext) {
62
62
  var keySequences = Object.create(null);
63
63
 
64
64
  if (componentsContext) {
65
- globalComponentsContext = componentsContext.e_;
66
- isHydrate = globalComponentsContext.f_;
65
+ globalComponentsContext = componentsContext.f_;
66
+ isHydrate = globalComponentsContext.g_;
67
67
  }
68
68
 
69
69
  function insertVirtualNodeBefore(
@@ -83,7 +83,7 @@ function morphdom(fromNode, toNode, host, componentsContext) {
83
83
  {
84
84
  if (key) {
85
85
  keysByDOMNode.set(realNode, key);
86
- (isAutoKey(key) ? parentComponent : ownerComponent).k_[
86
+ (isAutoKey(key) ? parentComponent : ownerComponent).l_[
87
87
  key] =
88
88
  realNode;
89
89
  }
@@ -115,7 +115,7 @@ function morphdom(fromNode, toNode, host, componentsContext) {
115
115
  if (key && ownerComponent) {
116
116
  key = normalizeComponentKey(key, parentComponent.id);
117
117
  addComponentRootToKeyedElements(
118
- ownerComponent.k_,
118
+ ownerComponent.l_,
119
119
  key,
120
120
  rootNode,
121
121
  component.id);
@@ -175,7 +175,7 @@ function morphdom(fromNode, toNode, host, componentsContext) {
175
175
  var referenceComponent;
176
176
 
177
177
  if (curToNodeType === COMPONENT_NODE) {
178
- var component = curToNodeChild.h_;
178
+ var component = curToNodeChild.i_;
179
179
  if (
180
180
  (matchingFromComponent = existingComponentLookup[component.id]) ===
181
181
  undefined)
@@ -191,7 +191,7 @@ function morphdom(fromNode, toNode, host, componentsContext) {
191
191
  parentComponent.id);
192
192
 
193
193
  addComponentRootToKeyedElements(
194
- ownerComponent.k_,
194
+ ownerComponent.l_,
195
195
  curToNodeKey,
196
196
  rootNode,
197
197
  component.id);
@@ -242,7 +242,7 @@ function morphdom(fromNode, toNode, host, componentsContext) {
242
242
  curFromNodeChild && nextSibling(curFromNodeChild);
243
243
  }
244
244
 
245
- if (!curToNodeChild.n_) {
245
+ if (!curToNodeChild.o_) {
246
246
  morphComponent(component, curToNodeChild);
247
247
  }
248
248
  }
@@ -278,7 +278,7 @@ function morphdom(fromNode, toNode, host, componentsContext) {
278
278
 
279
279
  if (curFromNodeKey === curToNodeKey) {
280
280
  // Elements line up. Now we just have to make sure they are compatible
281
- if (!curToNodeChild.n_) {
281
+ if (!curToNodeChild.o_) {
282
282
  // We just skip over the fromNode if it is preserved
283
283
 
284
284
  if (compareNodeNames(curToNodeChild, curVFromNodeChild)) {
@@ -304,7 +304,7 @@ function morphdom(fromNode, toNode, host, componentsContext) {
304
304
  }
305
305
  }
306
306
  } else {
307
- matchingFromEl = referenceComponent.k_[curToNodeKey];
307
+ matchingFromEl = referenceComponent.l_[curToNodeKey];
308
308
  if (
309
309
  matchingFromEl === undefined ||
310
310
  matchingFromEl === curFromNodeChild)
@@ -312,7 +312,7 @@ function morphdom(fromNode, toNode, host, componentsContext) {
312
312
  if (isHydrate === true && curFromNodeChild) {
313
313
  if (
314
314
  curFromNodeChild.nodeType === ELEMENT_NODE && (
315
- curToNodeChild.n_ ||
315
+ curToNodeChild.o_ ||
316
316
  caseInsensitiveCompare(
317
317
  curFromNodeChild.nodeName,
318
318
  curToNodeChild.bF_ || "")))
@@ -321,10 +321,10 @@ function morphdom(fromNode, toNode, host, componentsContext) {
321
321
  curVFromNodeChild = virtualizeElement(curFromNodeChild);
322
322
  curVFromNodeChild.bF_ = curToNodeChild.bF_;
323
323
  keysByDOMNode.set(curFromNodeChild, curToNodeKey);
324
- referenceComponent.k_[curToNodeKey] =
324
+ referenceComponent.l_[curToNodeKey] =
325
325
  curFromNodeChild;
326
326
 
327
- if (curToNodeChild.n_) {
327
+ if (curToNodeChild.o_) {
328
328
  vElementByDOMNode.set(curFromNodeChild, curVFromNodeChild);
329
329
  } else {
330
330
  morphEl(
@@ -372,11 +372,11 @@ function morphdom(fromNode, toNode, host, componentsContext) {
372
372
 
373
373
  keysByDOMNode.set(fragment, curToNodeKey);
374
374
  vElementByDOMNode.set(fragment, curToNodeChild);
375
- referenceComponent.k_[curToNodeKey] = fragment;
375
+ referenceComponent.l_[curToNodeKey] = fragment;
376
376
  removeChild(curFromNodeChild);
377
377
  removeChild(endNode);
378
378
 
379
- if (!curToNodeChild.n_) {
379
+ if (!curToNodeChild.o_) {
380
380
  morphChildren(fragment, curToNodeChild, parentComponent);
381
381
  }
382
382
 
@@ -401,7 +401,7 @@ function morphdom(fromNode, toNode, host, componentsContext) {
401
401
  detachedByDOMNode.set(matchingFromEl, undefined);
402
402
  }
403
403
 
404
- if (!curToNodeChild.n_) {
404
+ if (!curToNodeChild.o_) {
405
405
  curVFromNodeChild = vElementByDOMNode.get(matchingFromEl);
406
406
 
407
407
  if (compareNodeNames(curVFromNodeChild, curToNodeChild)) {
@@ -662,7 +662,7 @@ function morphdom(fromNode, toNode, host, componentsContext) {
662
662
 
663
663
  morphAttrs(fromEl, vFromEl, toEl);
664
664
 
665
- if (toEl.m_) {
665
+ if (toEl.n_) {
666
666
  return;
667
667
  }
668
668
 
@@ -681,7 +681,7 @@ function morphdom(fromNode, toNode, host, componentsContext) {
681
681
 
682
682
 
683
683
 
684
- morphChildren(fromNode, toNode, toNode.h_);
684
+ morphChildren(fromNode, toNode, toNode.i_);
685
685
 
686
686
  detachedNodes.forEach(function (node) {
687
687
  var detachedFromComponent = detachedByDOMNode.get(node);
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "marko",
3
- "version": "5.25.2",
3
+ "version": "5.25.3",
4
4
  "license": "MIT",
5
5
  "description": "UI Components + streaming, async, high performance, HTML templating for Node.js and the browser.",
6
6
  "dependencies": {
7
- "@marko/compiler": "^5.27.2",
8
- "@marko/translator-default": "^5.25.2",
7
+ "@marko/compiler": "^5.27.3",
8
+ "@marko/translator-default": "^5.25.3",
9
9
  "app-module-path": "^2.2.0",
10
10
  "argly": "^1.2.0",
11
11
  "browser-refresh-client": "1.1.4",
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
 
3
- if (typeof window === "undefined") {
3
+ if (typeof document === "undefined") {
4
4
  exports.require = require;
5
5
  }
@@ -0,0 +1,81 @@
1
+ var ComponentsContext = require("../../runtime/components/ComponentsContext");
2
+ var getComponentsContext = ComponentsContext.___getComponentsContext;
3
+
4
+ module.exports = function render(input, out) {
5
+ var isComponent = !input.n;
6
+ var shouldPreserve = !("i" in input) || input.i;
7
+ var componentsContext = out.___components;
8
+
9
+ if (typeof document === "object") {
10
+ var isHydrate =
11
+ componentsContext && componentsContext.___globalContext.___isHydrate;
12
+ var ownerComponent = out.___assignedComponentDef.___component;
13
+ var referenceComponent = ownerComponent;
14
+ var key = out.___assignedKey;
15
+ var checkKey = key;
16
+
17
+ if (key[0] !== "@") {
18
+ var parentComponent = componentsContext.___componentDef.___component;
19
+ if (ownerComponent !== parentComponent) {
20
+ referenceComponent = parentComponent;
21
+ checkKey += ":" + ownerComponent.id;
22
+ }
23
+ }
24
+
25
+ var isPreserved =
26
+ shouldPreserve &&
27
+ (isHydrate || referenceComponent.___keyedElements[checkKey]);
28
+
29
+ if (isComponent) {
30
+ out.bf(key, ownerComponent, shouldPreserve);
31
+
32
+ if (!isPreserved && input.renderBody) {
33
+ input.renderBody(out);
34
+ }
35
+
36
+ out.ef();
37
+ } else {
38
+ if (isPreserved) {
39
+ if (input.b) {
40
+ out.___parent.___preserveBody = true;
41
+ } else {
42
+ out.beginElement("", null, key, ownerComponent);
43
+ out.___parent.___preserve = true;
44
+ out.endElement();
45
+ }
46
+ } else if (input.renderBody) {
47
+ input.renderBody(out);
48
+ }
49
+ }
50
+ } else {
51
+ if (isComponent) {
52
+ out.bf(
53
+ out.___assignedKey,
54
+ out.___assignedComponentDef.___component,
55
+ true
56
+ );
57
+ }
58
+
59
+ if (input.renderBody) {
60
+ if (shouldPreserve) {
61
+ var parentPreserved = false;
62
+
63
+ if (componentsContext) {
64
+ parentPreserved = componentsContext.___isPreserved;
65
+ } else {
66
+ componentsContext = getComponentsContext(out);
67
+ }
68
+
69
+ componentsContext.___isPreserved = true;
70
+ input.renderBody(out);
71
+ componentsContext.___isPreserved = parentPreserved;
72
+ } else {
73
+ input.renderBody(out);
74
+ }
75
+ }
76
+
77
+ if (isComponent) {
78
+ out.ef();
79
+ }
80
+ }
81
+ };
@@ -81,7 +81,7 @@ const LAST_OPTIONS = { last: true, name: "await:finish" };
81
81
 
82
82
  module.exports = function awaitTag(input, out) {
83
83
  var clientReorder =
84
- typeof window === "undefined" &&
84
+ typeof document === "undefined" &&
85
85
  input.clientReorder === true &&
86
86
  !out.isVDOM;
87
87
 
@@ -12,7 +12,7 @@ var RENDER_BODY_TO_JSON = function () {
12
12
 
13
13
  var FLAG_WILL_RERENDER_IN_BROWSER = 1;
14
14
  // var FLAG_HAS_RENDER_BODY = 2;
15
- var IS_SERVER = typeof window === "undefined";
15
+ var IS_SERVER = typeof document === "undefined";
16
16
 
17
17
  /**
18
18
  * Helper to render a dynamic tag
@@ -1,45 +0,0 @@
1
- "use strict";module.exports = function render(input, out) {
2
- var componentsContext = out.b_;
3
- var isHydrate =
4
- componentsContext && componentsContext.e_.f_;
5
- var ownerComponent = out.g_.h_;
6
- var shouldPreserve = !("i" in input) || input.i;
7
- var referenceComponent = ownerComponent;
8
- var key = out.i_;
9
- var checkKey = key;
10
-
11
- if (key[0] !== "@") {
12
- var parentComponent = componentsContext.j_.h_;
13
- if (ownerComponent !== parentComponent) {
14
- referenceComponent = parentComponent;
15
- checkKey += ":" + ownerComponent.id;
16
- }
17
- }
18
-
19
- var isPreserved = Boolean(
20
- shouldPreserve && (
21
- isHydrate || referenceComponent.k_[checkKey]));
22
-
23
-
24
- if (input.n) {
25
- if (isPreserved) {
26
- if (input.b) {
27
- out.l_.m_ = true;
28
- } else {
29
- out.beginElement("", null, key, ownerComponent);
30
- out.l_.n_ = true;
31
- out.endElement();
32
- }
33
- } else if (input.renderBody) {
34
- input.renderBody(out);
35
- }
36
- } else {
37
- out.bf(key, ownerComponent, shouldPreserve);
38
-
39
- if (!isPreserved && input.renderBody) {
40
- input.renderBody(out);
41
- }
42
-
43
- out.ef();
44
- }
45
- };
@@ -1,27 +0,0 @@
1
- "use strict";var ComponentsContext = require("../../../runtime/components/ComponentsContext");
2
- var getComponentsContext = ComponentsContext.o_;
3
-
4
- module.exports = function render(input, out) {
5
- var shouldPreserve = Boolean(!("i" in input) || input.i);
6
- var isComponent = !input.n;
7
-
8
- if (isComponent) {
9
- out.bf(out.i_, out.g_.h_, true);
10
- }
11
-
12
- if (input.renderBody) {
13
- if (shouldPreserve) {
14
- var componentsContext = getComponentsContext(out);
15
- var parentPreserved = componentsContext.p_;
16
- componentsContext.p_ = true;
17
- input.renderBody(out);
18
- componentsContext.p_ = parentPreserved;
19
- } else {
20
- input.renderBody(out);
21
- }
22
- }
23
-
24
- if (isComponent) {
25
- out.ef();
26
- }
27
- };
@@ -1,11 +0,0 @@
1
- {
2
- "main": "./index.js",
3
- "browser": "./index-browser.js",
4
- "exports": {
5
- ".": {
6
- "worker": "./index.js",
7
- "browser": "./index-browser.js",
8
- "default": "./index.js"
9
- }
10
- }
11
- }
@@ -1,45 +0,0 @@
1
- module.exports = function render(input, out) {
2
- var componentsContext = out.___components;
3
- var isHydrate =
4
- componentsContext && componentsContext.___globalContext.___isHydrate;
5
- var ownerComponent = out.___assignedComponentDef.___component;
6
- var shouldPreserve = !("i" in input) || input.i;
7
- var referenceComponent = ownerComponent;
8
- var key = out.___assignedKey;
9
- var checkKey = key;
10
-
11
- if (key[0] !== "@") {
12
- var parentComponent = componentsContext.___componentDef.___component;
13
- if (ownerComponent !== parentComponent) {
14
- referenceComponent = parentComponent;
15
- checkKey += ":" + ownerComponent.id;
16
- }
17
- }
18
-
19
- var isPreserved = Boolean(
20
- shouldPreserve &&
21
- (isHydrate || referenceComponent.___keyedElements[checkKey])
22
- );
23
-
24
- if (input.n) {
25
- if (isPreserved) {
26
- if (input.b) {
27
- out.___parent.___preserveBody = true;
28
- } else {
29
- out.beginElement("", null, key, ownerComponent);
30
- out.___parent.___preserve = true;
31
- out.endElement();
32
- }
33
- } else if (input.renderBody) {
34
- input.renderBody(out);
35
- }
36
- } else {
37
- out.bf(key, ownerComponent, shouldPreserve);
38
-
39
- if (!isPreserved && input.renderBody) {
40
- input.renderBody(out);
41
- }
42
-
43
- out.ef();
44
- }
45
- };
@@ -1,27 +0,0 @@
1
- var ComponentsContext = require("../../../runtime/components/ComponentsContext");
2
- var getComponentsContext = ComponentsContext.___getComponentsContext;
3
-
4
- module.exports = function render(input, out) {
5
- var shouldPreserve = Boolean(!("i" in input) || input.i);
6
- var isComponent = !input.n;
7
-
8
- if (isComponent) {
9
- out.bf(out.___assignedKey, out.___assignedComponentDef.___component, true);
10
- }
11
-
12
- if (input.renderBody) {
13
- if (shouldPreserve) {
14
- var componentsContext = getComponentsContext(out);
15
- var parentPreserved = componentsContext.___isPreserved;
16
- componentsContext.___isPreserved = true;
17
- input.renderBody(out);
18
- componentsContext.___isPreserved = parentPreserved;
19
- } else {
20
- input.renderBody(out);
21
- }
22
- }
23
-
24
- if (isComponent) {
25
- out.ef();
26
- }
27
- };
@@ -1,11 +0,0 @@
1
- {
2
- "main": "./index.js",
3
- "browser": "./index-browser.js",
4
- "exports": {
5
- ".": {
6
- "worker": "./index.js",
7
- "browser": "./index-browser.js",
8
- "default": "./index.js"
9
- }
10
- }
11
- }