marko 4.26.1 → 4.26.3

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.
@@ -1,4 +1,4 @@
1
- const commonMigrators = [require("./control-flow-directives"), require("./body-only-if"), require("./partial-dynamic-tag"), require("./dynamic-attributes"), require("./include-directive"), require("./legacy-nested-tag"), require("./legacy-nested-tag"), require("./marko-init"), require("./modifier-key"), require("./params"), require("./ref"), require("./w-bind"), require("./w-body"), require("./w-config"), require("./w-for"), require("./w-id"), require("./w-on"), require("./w-preserve"), require("./w-preserve-attrs"), require("./widget-in-attrs")];
1
+ const commonMigrators = [require("./control-flow-directives"), require("./body-only-if"), require("./dynamic-attributes"), require("./include-directive"), require("./legacy-nested-tag"), require("./legacy-nested-tag"), require("./marko-init"), require("./modifier-key"), require("./params"), require("./ref"), require("./w-bind"), require("./w-body"), require("./w-config"), require("./w-for"), require("./w-id"), require("./w-on"), require("./w-preserve"), require("./w-preserve-attrs"), require("./widget-in-attrs")];
2
2
 
3
3
  module.exports = function (el, context) {
4
4
  if (el.detachNode) {
@@ -7,6 +7,7 @@ var createFragmentNode = require("../../../runtime/vdom/morphdom/fragment")._m_;
7
7
  var ComponentDef = require("../../../runtime/components/ComponentDef");
8
8
  var domData = require("../../../runtime/components/dom-data");
9
9
  var componentsUtil = require("@internal/components-util");
10
+ var loader = require("@internal/loader");
10
11
  var componentLookup = componentsUtil._n_;
11
12
  var addComponentRootToKeyedElements = componentsUtil._o_;
12
13
  var keyedElementsByComponentId = domData._p_;
@@ -391,7 +392,11 @@ function initServerRendered(renderedComponents, host) {
391
392
  (renderedComponents.w || []).map(function (componentDef) {
392
393
  var typeName = meta._C_[componentDef[1]];
393
394
 
394
- return registered[typeName] || document.readyState === "complete" ? tryHydrateComponent(componentDef, meta, host, runtimeId) : addPendingDef(componentDef, typeName, meta, host, runtimeId);
395
+ return registered[typeName] || document.readyState === "complete" ||
396
+ // loader.runtime is only going to exist for lasso apps
397
+ // this code is used to detect if a module was registered
398
+ // via a browser.json but not executed.
399
+ loader.runtime && loader.runtime.resolve && loader.runtime.resolve(typeName) ? tryHydrateComponent(componentDef, meta, host, runtimeId) : addPendingDef(componentDef, typeName, meta, host, runtimeId);
395
400
  }).reverse().forEach(tryInvoke);
396
401
 
397
402
  return this;
@@ -44,7 +44,7 @@ module.exports = function dynamicTag(out, tag, getAttrs, renderBody, args, props
44
44
  }
45
45
  }
46
46
 
47
- var renderer = tag._ || tag.render || tag.renderer && tag.renderer.renderer || tag.renderer;
47
+ var renderer = tag._ || (tag.renderer ? tag.renderer.renderer || tag.renderer : tag.render);
48
48
 
49
49
  // eslint-disable-next-line no-constant-condition
50
50
 
@@ -5,14 +5,16 @@
5
5
  */
6
6
 
7
7
  module.exports = function loadTagHelper(handler) {
8
- var renderer = handler.renderer || handler._ || typeof handler === "function" && handler || function deferredRenderer(input, out) {
9
- // Allows for circular dependencies by lazily defining renderer
10
- // on the first render.
11
- (renderer = handler.renderer || handler._ || handler.render)(input, out);
12
- };
8
+ var renderer = getRenderer(handler) || (typeof handler === "function" ? handler : function deferredRenderer(input, out) {
9
+ (renderer = getRenderer(handler) || handler.render)(input, out);
10
+ });
13
11
 
14
12
  return function wrappedRenderer(input, out, componentDef, key, customEvents) {
15
13
  out.c(componentDef, key, customEvents);
16
14
  renderer(input, out);
17
15
  };
18
- };
16
+ };
17
+
18
+ function getRenderer(handler) {
19
+ return handler._ || handler.renderer;
20
+ }
@@ -1,3 +1,5 @@
1
+ "use strict";
2
+
1
3
  var defaultCreateOut = require("./createOut");
2
4
  var setImmediate = require("@internal/set-immediate").af_;
3
5
  var extend = require("raptor-util/extend");
@@ -26,6 +28,7 @@ module.exports = function (target, renderer) {
26
28
  var createOut = target.createOut || renderer.createOut || defaultCreateOut;
27
29
 
28
30
  return extend(target, {
31
+ _: renderFunc,
29
32
  createOut: createOut,
30
33
 
31
34
  renderToString: function (data, callback) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "marko",
3
- "version": "4.26.1",
3
+ "version": "4.26.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": {
@@ -1,7 +1,6 @@
1
1
  const commonMigrators = [
2
2
  require("./control-flow-directives"),
3
3
  require("./body-only-if"),
4
- require("./partial-dynamic-tag"),
5
4
  require("./dynamic-attributes"),
6
5
  require("./include-directive"),
7
6
  require("./legacy-nested-tag"),
@@ -8,6 +8,7 @@ var createFragmentNode =
8
8
  var ComponentDef = require("../../../runtime/components/ComponentDef");
9
9
  var domData = require("../../../runtime/components/dom-data");
10
10
  var componentsUtil = require("@internal/components-util");
11
+ var loader = require("@internal/loader");
11
12
  var componentLookup = componentsUtil.___componentLookup;
12
13
  var addComponentRootToKeyedElements =
13
14
  componentsUtil.___addComponentRootToKeyedElements;
@@ -498,7 +499,18 @@ function initServerRendered(renderedComponents, host) {
498
499
  .map(function (componentDef) {
499
500
  var typeName = meta.___types[componentDef[1]];
500
501
 
501
- return registered[typeName] || document.readyState === "complete"
502
+ return (
503
+ registered[typeName] ||
504
+ document.readyState === "complete" ||
505
+ (
506
+ // loader.runtime is only going to exist for lasso apps
507
+ // this code is used to detect if a module was registered
508
+ // via a browser.json but not executed.
509
+ loader.runtime &&
510
+ loader.runtime.resolve &&
511
+ loader.runtime.resolve(typeName)
512
+ )
513
+ )
502
514
  ? tryHydrateComponent(componentDef, meta, host, runtimeId)
503
515
  : addPendingDef(componentDef, typeName, meta, host, runtimeId);
504
516
  })
@@ -68,13 +68,11 @@ module.exports = function dynamicTag(
68
68
 
69
69
  var renderer =
70
70
  tag._ ||
71
- tag.render ||
72
- (tag.renderer && tag.renderer.renderer) ||
73
- tag.renderer;
71
+ (tag.renderer ? tag.renderer.renderer || tag.renderer : tag.render);
74
72
 
75
73
  // eslint-disable-next-line no-constant-condition
76
74
  if ("MARKO_DEBUG") {
77
- if (tag.renderer && tag.renderer.renderer === renderer) {
75
+ if (tag.renderer && tag.renderer.renderer) {
78
76
  complain(
79
77
  "An object with a 'renderer' was passed to the dynamic tag, but renderer was another template."
80
78
  );
@@ -5,17 +5,19 @@
5
5
  */
6
6
  module.exports = function loadTagHelper(handler) {
7
7
  var renderer =
8
- handler.renderer ||
9
- handler._ ||
10
- (typeof handler === "function" && handler) ||
11
- function deferredRenderer(input, out) {
12
- // Allows for circular dependencies by lazily defining renderer
13
- // on the first render.
14
- (renderer = handler.renderer || handler._ || handler.render)(input, out);
15
- };
8
+ getRenderer(handler) ||
9
+ (typeof handler === "function"
10
+ ? handler
11
+ : function deferredRenderer(input, out) {
12
+ (renderer = getRenderer(handler) || handler.render)(input, out);
13
+ });
16
14
 
17
15
  return function wrappedRenderer(input, out, componentDef, key, customEvents) {
18
16
  out.c(componentDef, key, customEvents);
19
17
  renderer(input, out);
20
18
  };
21
19
  };
20
+
21
+ function getRenderer(handler) {
22
+ return handler._ || handler.renderer;
23
+ }
@@ -1,3 +1,5 @@
1
+ "use strict";
2
+
1
3
  var defaultCreateOut = require("./createOut");
2
4
  var setImmediate = require("@internal/set-immediate").___setImmediate;
3
5
  var extend = require("raptor-util/extend");
@@ -27,6 +29,7 @@ module.exports = function (target, renderer) {
27
29
  var createOut = target.createOut || renderer.createOut || defaultCreateOut;
28
30
 
29
31
  return extend(target, {
32
+ _: renderFunc,
30
33
  createOut: createOut,
31
34
 
32
35
  renderToString: function (data, callback) {
@@ -1,9 +0,0 @@
1
- module.exports = function migrator(elNode, context) {
2
- if (!elNode.rawTagNameExpression || elNode.tagName[0] === "$") {
3
- return;
4
- }
5
-
6
- context.deprecate('The "<partial-${dynamic}>" tag is syntax deprecated. Please use the regular dynamic tag syntax instead with a template literal "<${`partial-${dynamic}`}/>". See: https://github.com/marko-js/marko/wiki/Deprecation:-partial-dynamic-tag');
7
-
8
- elNode.rawTagNameExpression = `\`${elNode.tagName}\``;
9
- };
@@ -1,11 +0,0 @@
1
- module.exports = function migrator(elNode, context) {
2
- if (!elNode.rawTagNameExpression || elNode.tagName[0] === "$") {
3
- return;
4
- }
5
-
6
- context.deprecate(
7
- 'The "<partial-${dynamic}>" tag is syntax deprecated. Please use the regular dynamic tag syntax instead with a template literal "<${`partial-${dynamic}`}/>". See: https://github.com/marko-js/marko/wiki/Deprecation:-partial-dynamic-tag'
8
- );
9
-
10
- elNode.rawTagNameExpression = `\`${elNode.tagName}\``;
11
- };