marko 6.3.50 → 6.3.52

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.
Files changed (67) hide show
  1. package/dist/debug/dom/catch.feat.js +1 -1
  2. package/dist/debug/dom/catch.feat.mjs +1 -1
  3. package/dist/debug/dom/controllable-input.feat.js +1 -1
  4. package/dist/debug/dom/controllable-input.feat.mjs +1 -1
  5. package/dist/debug/dom/controllable-open.feat.js +1 -1
  6. package/dist/debug/dom/controllable-open.feat.mjs +1 -1
  7. package/dist/debug/dom/controllable-select.feat.js +1 -1
  8. package/dist/debug/dom/controllable-select.feat.mjs +1 -1
  9. package/dist/debug/dom/controllable-textarea.feat.js +1 -1
  10. package/dist/debug/dom/controllable-textarea.feat.mjs +1 -1
  11. package/dist/debug/dom/controllable.feat.js +1 -1
  12. package/dist/debug/dom/controllable.feat.mjs +1 -1
  13. package/dist/debug/dom/dynamic-tag-var.feat.js +2 -3
  14. package/dist/debug/dom/dynamic-tag-var.feat.mjs +2 -3
  15. package/dist/debug/dom/placeholder.feat.js +2 -2
  16. package/dist/debug/dom/placeholder.feat.mjs +2 -2
  17. package/dist/debug/{dom-BAGeiafn.js → dom-BJKb8-wr.js} +22 -27
  18. package/dist/debug/{dom-C55iHvof.mjs → dom-Dq_Yu7MS.mjs} +19 -18
  19. package/dist/debug/dom.js +10 -10
  20. package/dist/debug/dom.mjs +10 -10
  21. package/dist/debug/html.js +56 -40
  22. package/dist/debug/html.mjs +56 -40
  23. package/dist/dom/catch.feat.js +3 -3
  24. package/dist/dom/catch.feat.mjs +1 -1
  25. package/dist/dom/controllable-input.feat.js +1 -1
  26. package/dist/dom/controllable-input.feat.mjs +1 -1
  27. package/dist/dom/controllable-open.feat.js +1 -1
  28. package/dist/dom/controllable-open.feat.mjs +1 -1
  29. package/dist/dom/controllable-select.feat.js +1 -1
  30. package/dist/dom/controllable-select.feat.mjs +1 -1
  31. package/dist/dom/controllable-textarea.feat.js +1 -1
  32. package/dist/dom/controllable-textarea.feat.mjs +1 -1
  33. package/dist/dom/controllable.feat.js +1 -1
  34. package/dist/dom/controllable.feat.mjs +1 -1
  35. package/dist/dom/dynamic-tag-var.feat.js +3 -2
  36. package/dist/dom/dynamic-tag-var.feat.mjs +4 -3
  37. package/dist/dom/placeholder.feat.js +3 -3
  38. package/dist/dom/placeholder.feat.mjs +2 -2
  39. package/dist/dom/resume.d.ts +1 -2
  40. package/dist/{dom-BNmfm4st.js → dom-CzGPOsST.js} +62 -71
  41. package/dist/{dom-BsAS26Ze.mjs → dom-CzfddxCE.mjs} +15 -19
  42. package/dist/dom.d.ts +1 -1
  43. package/dist/dom.js +30 -30
  44. package/dist/dom.mjs +10 -10
  45. package/dist/html/template.d.ts +3 -1
  46. package/dist/html/writer.d.ts +6 -1
  47. package/dist/html.js +40 -25
  48. package/dist/html.mjs +40 -25
  49. package/dist/translator/core/await.d.ts +0 -7
  50. package/dist/translator/core/try.d.ts +0 -7
  51. package/dist/translator/index.d.ts +1 -1
  52. package/dist/translator/index.js +1893 -1658
  53. package/dist/translator/util/binding-has-prop.d.ts +1 -1
  54. package/dist/translator/util/cyclic-memo.d.ts +4 -0
  55. package/dist/translator/util/evaluate.d.ts +2 -0
  56. package/dist/translator/util/optional.d.ts +21 -7
  57. package/dist/translator/util/references.d.ts +53 -21
  58. package/dist/translator/util/runtime.d.ts +3 -1
  59. package/dist/translator/util/sections.d.ts +10 -11
  60. package/dist/translator/util/serialize-guard.d.ts +10 -0
  61. package/dist/translator/util/serialize-reasons.d.ts +10 -11
  62. package/dist/translator/util/set-tag-sections-downstream.d.ts +3 -2
  63. package/dist/translator/util/tag-name-type.d.ts +8 -3
  64. package/dist/translator/visitors/tag/dynamic-tag.d.ts +0 -2
  65. package/index.d.ts +0 -5
  66. package/package.json +3 -3
  67. package/tags-html.d.ts +2 -0
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const require_control_flow = require("../dom-BAGeiafn.js");
2
+ const require_control_flow = require("../dom-BJKb8-wr.js");
3
3
  //#region src/dom/catch.feat.ts
4
4
  const handlePendingTry = (fn, scope, branch) => {
5
5
  while (branch) {
@@ -1,4 +1,4 @@
1
- import { An as ParentBranch, Cn as Scope, Mn as PendingRenders, Sn as Pending, Tn as ClosestBranch, g as renderCatch, jn as PendingEffects, nn as installCatch, rn as placeholderShown, tn as caughtError } from "../dom-C55iHvof.mjs";
1
+ import { An as PendingEffects, Sn as Scope, en as caughtError, g as renderCatch, jn as PendingRenders, kn as ParentBranch, nn as placeholderShown, tn as installCatch, wn as ClosestBranch, xn as Pending } from "../dom-Dq_Yu7MS.mjs";
2
2
  //#region src/dom/catch.feat.ts
3
3
  const handlePendingTry = (fn, scope, branch) => {
4
4
  while (branch) {
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const require_control_flow = require("../dom-BAGeiafn.js");
2
+ const require_control_flow = require("../dom-BJKb8-wr.js");
3
3
  //#region src/dom/controllable-input.feat.ts
4
4
  require_control_flow.controllableScripts[0] = require_control_flow._attr_input_checked_script;
5
5
  require_control_flow.controllableScripts[1] = require_control_flow._attr_input_checkedValue_script;
@@ -1,4 +1,4 @@
1
- import { A as _attr_input_value_script, C as _attr_input_checkedValue_script, T as _attr_input_checked_script, z as controllableScripts } from "../dom-C55iHvof.mjs";
1
+ import { A as _attr_input_value_script, C as _attr_input_checkedValue_script, T as _attr_input_checked_script, z as controllableScripts } from "../dom-Dq_Yu7MS.mjs";
2
2
  //#region src/dom/controllable-input.feat.ts
3
3
  controllableScripts[0] = _attr_input_checked_script;
4
4
  controllableScripts[1] = _attr_input_checkedValue_script;
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const require_control_flow = require("../dom-BAGeiafn.js");
2
+ const require_control_flow = require("../dom-BJKb8-wr.js");
3
3
  //#region src/dom/controllable-open.feat.ts
4
4
  require_control_flow.controllableScripts[4] = require_control_flow._attr_details_or_dialog_open_script;
5
5
  //#endregion
@@ -1,4 +1,4 @@
1
- import { y as _attr_details_or_dialog_open_script, z as controllableScripts } from "../dom-C55iHvof.mjs";
1
+ import { y as _attr_details_or_dialog_open_script, z as controllableScripts } from "../dom-Dq_Yu7MS.mjs";
2
2
  //#region src/dom/controllable-open.feat.ts
3
3
  controllableScripts[4] = _attr_details_or_dialog_open_script;
4
4
  //#endregion
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const require_control_flow = require("../dom-BAGeiafn.js");
2
+ const require_control_flow = require("../dom-BJKb8-wr.js");
3
3
  //#region src/dom/controllable-select.feat.ts
4
4
  require_control_flow.controllableScripts[3] = require_control_flow._attr_select_value_script;
5
5
  //#endregion
@@ -1,4 +1,4 @@
1
- import { N as _attr_select_value_script, z as controllableScripts } from "../dom-C55iHvof.mjs";
1
+ import { N as _attr_select_value_script, z as controllableScripts } from "../dom-Dq_Yu7MS.mjs";
2
2
  //#region src/dom/controllable-select.feat.ts
3
3
  controllableScripts[3] = _attr_select_value_script;
4
4
  //#endregion
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const require_control_flow = require("../dom-BAGeiafn.js");
2
+ const require_control_flow = require("../dom-BJKb8-wr.js");
3
3
  //#region src/dom/controllable-textarea.feat.ts
4
4
  require_control_flow.controllableScripts[2] = require_control_flow._attr_input_value_script;
5
5
  //#endregion
@@ -1,4 +1,4 @@
1
- import { A as _attr_input_value_script, z as controllableScripts } from "../dom-C55iHvof.mjs";
1
+ import { A as _attr_input_value_script, z as controllableScripts } from "../dom-Dq_Yu7MS.mjs";
2
2
  //#region src/dom/controllable-textarea.feat.ts
3
3
  controllableScripts[2] = _attr_input_value_script;
4
4
  //#endregion
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const require_control_flow = require("../dom-BAGeiafn.js");
2
+ const require_control_flow = require("../dom-BJKb8-wr.js");
3
3
  require("./controllable-input.feat.js");
4
4
  require("./controllable-open.feat.js");
5
5
  require("./controllable-select.feat.js");
@@ -1,4 +1,4 @@
1
- import { F as _controllable_open, I as _controllable_select, L as _controllable_textarea, P as _controllable_input, R as controllableRenders } from "../dom-C55iHvof.mjs";
1
+ import { F as _controllable_open, I as _controllable_select, L as _controllable_textarea, P as _controllable_input, R as controllableRenders } from "../dom-Dq_Yu7MS.mjs";
2
2
  import "./controllable-input.feat.mjs";
3
3
  import "./controllable-open.feat.mjs";
4
4
  import "./controllable-select.feat.mjs";
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
- const require_control_flow = require("../dom-BAGeiafn.js");
2
+ const require_control_flow = require("../dom-BJKb8-wr.js");
3
3
  //#region src/dom/dynamic-tag-var.feat.ts
4
- const elementGetter = (branch) => () => require_control_flow._el_read(branch[require_control_flow.StartNode]);
4
+ const elementGetter = require_control_flow._resumed[require_control_flow.DYNAMIC_TAG_VAR_REGISTER_ID] = (branch) => () => require_control_flow._el_read(branch[require_control_flow.StartNode]);
5
5
  require_control_flow.installDynamicTagVar((branch) => branch[require_control_flow.TagVariable](elementGetter(branch)));
6
- require_control_flow._resume(require_control_flow.DYNAMIC_TAG_VAR_REGISTER_ID, elementGetter);
7
6
  //#endregion
@@ -1,6 +1,5 @@
1
- import { Fn as TagVariable, Pn as StartNode, Zt as DYNAMIC_TAG_VAR_REGISTER_ID, gt as _resume, kt as _el_read, m as installDynamicTagVar } from "../dom-C55iHvof.mjs";
1
+ import { Nn as StartNode, Ot as _el_read, Pn as TagVariable, Xt as DYNAMIC_TAG_VAR_REGISTER_ID, gt as _resumed, m as installDynamicTagVar } from "../dom-Dq_Yu7MS.mjs";
2
2
  //#region src/dom/dynamic-tag-var.feat.ts
3
- const elementGetter = (branch) => () => _el_read(branch[StartNode]);
3
+ const elementGetter = _resumed[DYNAMIC_TAG_VAR_REGISTER_ID] = (branch) => () => _el_read(branch[StartNode]);
4
4
  installDynamicTagVar((branch) => branch[TagVariable](elementGetter(branch)));
5
- _resume(DYNAMIC_TAG_VAR_REGISTER_ID, elementGetter);
6
5
  //#endregion
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
- const require_control_flow = require("../dom-BAGeiafn.js");
2
+ const require_control_flow = require("../dom-BJKb8-wr.js");
3
3
  //#region src/dom/placeholder.feat.ts
4
- require_control_flow.registeredValues[require_control_flow.PLACEHOLDER_DISMISS_REGISTER_ID] = (tryBranch) => {
4
+ require_control_flow._resumed[require_control_flow.PLACEHOLDER_DISMISS_REGISTER_ID] = (tryBranch) => {
5
5
  if (tryBranch["#PlaceholderBranch"]) {
6
6
  require_control_flow.destroyBranch(tryBranch[require_control_flow.PlaceholderBranch]);
7
7
  tryBranch[require_control_flow.PlaceholderBranch] = 0;
@@ -1,6 +1,6 @@
1
- import { Ct as registeredValues, Kt as destroyBranch, Nn as PlaceholderBranch, Qt as PLACEHOLDER_DISMISS_REGISTER_ID } from "../dom-C55iHvof.mjs";
1
+ import { Gt as destroyBranch, Mn as PlaceholderBranch, Zt as PLACEHOLDER_DISMISS_REGISTER_ID, gt as _resumed } from "../dom-Dq_Yu7MS.mjs";
2
2
  //#region src/dom/placeholder.feat.ts
3
- registeredValues[PLACEHOLDER_DISMISS_REGISTER_ID] = (tryBranch) => {
3
+ _resumed[PLACEHOLDER_DISMISS_REGISTER_ID] = (tryBranch) => {
4
4
  if (tryBranch["#PlaceholderBranch"]) {
5
5
  destroyBranch(tryBranch[PlaceholderBranch]);
6
6
  tryBranch[PlaceholderBranch] = 0;
@@ -739,7 +739,7 @@ function _closure_get(valueAccessor, fn, getOwnerScope, resumeId) {
739
739
  });
740
740
  closureSignal[ScopeInstancesAccessor] = ClosureScopes + valueAccessor;
741
741
  closureSignal[SignalIndexAccessor] = ClosureSignalIndex + valueAccessor;
742
- resumeId && _resume(resumeId, closureSignal);
742
+ if (resumeId) _resumed[resumeId] = closureSignal;
743
743
  return closureSignal;
744
744
  }
745
745
  function _child_setup(setup) {
@@ -773,7 +773,7 @@ function _id(scope, accessor) {
773
773
  return id;
774
774
  }
775
775
  function _script(id, fn) {
776
- _resume(id, fn);
776
+ _resumed[id] = fn;
777
777
  return (scope) => {
778
778
  queueEffect(scope, fn);
779
779
  };
@@ -803,7 +803,7 @@ function _hoist(...path) {
803
803
  };
804
804
  }
805
805
  function _hoist_resume(id, ...path) {
806
- return _resume(id, _hoist(...path));
806
+ return _resumed[id] = _hoist(...path);
807
807
  }
808
808
  //#endregion
809
809
  //#region src/dom/walker.ts
@@ -861,7 +861,7 @@ const walkNextNode = () => {
861
861
  const walkNextSibling = () => currentNode = currentNode.nextSibling || currentNode;
862
862
  //#endregion
863
863
  //#region src/dom/resume.ts
864
- const registeredValues = {};
864
+ const _resumed = {};
865
865
  let curRenders;
866
866
  let embedRenders;
867
867
  let readyIds;
@@ -933,7 +933,7 @@ function init(runtimeId = "M") {
933
933
  }
934
934
  }
935
935
  };
936
- const serializeContext = ((data, registryId) => typeof data === "number" ? registryId ? registeredValues[registryId](getScope(data)) : getScope(data) : applyScopes(data));
936
+ const serializeContext = ((data, registryId) => typeof data === "number" ? registryId ? _resumed[registryId](getScope(data)) : getScope(data) : applyScopes(data));
937
937
  const createVisitBranches = (branchScopesStack = [], branchStarts = [], curBranchScopes, reorderBranch, reorderDepth = 0, adopt = (scope, branch) => scope["#ClosestBranch"] === scope ? scope !== branch && setParentBranch(scope, branch) : scope[ClosestBranch] = branch) => {
938
938
  return (branchId, branch, endedBranches, accessor, nodeAccessor, singleNode, parent = visit.parentNode, startVisit = visit) => {
939
939
  if (visitType === "*") {
@@ -993,7 +993,7 @@ function init(runtimeId = "M") {
993
993
  if (typeof serialized === "string") {
994
994
  lastTokenIndex = 0;
995
995
  visitText = serialized;
996
- while (nextToken()) if (/\D/.test(lastToken)) lastEffect = registeredValues[lastToken];
996
+ while (nextToken()) if (/\D/.test(lastToken)) lastEffect = _resumed[lastToken];
997
997
  else effects.push(lastEffect, getScope(lastToken));
998
998
  } else if (Array.isArray(serialized)) {
999
999
  if (!(readyIds && serialized.every((dep) => readyIds.has(dep) && !render.b[dep].length))) break;
@@ -1017,7 +1017,7 @@ function init(runtimeId = "M") {
1017
1017
  let visitBranches;
1018
1018
  let htmlStart;
1019
1019
  let embedAnchor;
1020
- serializeContext._ = registeredValues;
1020
+ serializeContext._ = _resumed;
1021
1021
  if (render.m) throw new Error(`Marko rendered multiple times with $global.runtimeId as ${JSON.stringify(runtimeId)} and $global.renderId as ${JSON.stringify(renderId)}. Ensure each render into a page has a unique $global.renderId.`);
1022
1022
  render.m = (effects) => {
1023
1023
  processResumes(render.r, effects);
@@ -1081,18 +1081,14 @@ function runResumeEffects(render) {
1081
1081
  }
1082
1082
  }
1083
1083
  function getRegisteredWithScope(id, scope) {
1084
- const val = registeredValues[id];
1085
- return scope ? val(scope) : val;
1086
- }
1087
- function _resume(id, obj) {
1088
- return registeredValues[id] = obj;
1084
+ return scope ? _resumed[id](scope) : _resumed[id];
1089
1085
  }
1090
1086
  function _var_resume(id, signal) {
1091
- _resume(id, (scope) => (value) => signal(scope, value));
1087
+ _resumed[id] = (scope) => (value) => signal(scope, value);
1092
1088
  return signal;
1093
1089
  }
1094
1090
  function _el(id, accessor) {
1095
- return _resume(id, (scope) => () => _el_read(scope[accessor]));
1091
+ return _resumed[id] = (scope) => () => _el_read(scope[accessor]);
1096
1092
  }
1097
1093
  //#endregion
1098
1094
  //#region src/dom/renderer.ts
@@ -1139,7 +1135,7 @@ function _content(id, template, walks, setup, params, dynamicScopesAccessor) {
1139
1135
  };
1140
1136
  }
1141
1137
  function _content_resume(id, template, walks, setup, params, dynamicScopesAccessor) {
1142
- return _resume(id, _content(id, template, walks, setup, params, dynamicScopesAccessor));
1138
+ return _resumed[id] = _content(id, template, walks, setup, params, dynamicScopesAccessor);
1143
1139
  }
1144
1140
  function _content_closures(renderer, closureFns) {
1145
1141
  const closureSignals = {};
@@ -1305,7 +1301,12 @@ const _html = /*@__PURE__*/ withDynamicHtml(function _html(scope, value, accesso
1305
1301
  const parentNode = firstChild.parentNode;
1306
1302
  const lastChild = scope["DynamicHTMLLastChild:" + accessor] || firstChild;
1307
1303
  const newContent = parseHTML(_to_text(value), parentNode.namespaceURI);
1308
- insertChildNodes(parentNode, firstChild, scope[accessor] = newContent.firstChild || newContent.appendChild(new Text()), scope[DynamicHTMLLastChild + accessor] = newContent.lastChild);
1304
+ const newFirstChild = scope[accessor] = newContent.firstChild || newContent.appendChild(new Text());
1305
+ const newLastChild = scope[DynamicHTMLLastChild + accessor] = newContent.lastChild;
1306
+ const branch = scope[ClosestBranch];
1307
+ if (branch?.["#StartNode"] === firstChild) branch[StartNode] = newFirstChild;
1308
+ if (branch?.["#EndNode"] === lastChild) branch[EndNode] = newLastChild;
1309
+ insertChildNodes(parentNode, firstChild, newFirstChild, newLastChild);
1309
1310
  removeChildNodes(firstChild, lastChild);
1310
1311
  });
1311
1312
  function normalizeClientRender(value) {
@@ -1947,7 +1948,7 @@ let bindNativeTagVar;
1947
1948
  function installDynamicTagVar(bind) {
1948
1949
  bindNativeTagVar = bind;
1949
1950
  }
1950
- const _resume_dynamic_tag = /*@__PURE__*/ withBranches(() => _resume(DYNAMIC_TAG_SCRIPT_REGISTER_ID, dynamicTagScript));
1951
+ const _resume_dynamic_tag = /*@__PURE__*/ withBranches(() => _resumed[DYNAMIC_TAG_SCRIPT_REGISTER_ID] = dynamicTagScript);
1951
1952
  function dynamicTagScript(branch) {
1952
1953
  _attrs_script(branch, `#${branch[Renderer].toLowerCase()}/0`);
1953
1954
  }
@@ -2653,16 +2654,16 @@ Object.defineProperty(exports, "_or", {
2653
2654
  return _or;
2654
2655
  }
2655
2656
  });
2656
- Object.defineProperty(exports, "_resume", {
2657
+ Object.defineProperty(exports, "_resume_dynamic_tag", {
2657
2658
  enumerable: true,
2658
2659
  get: function() {
2659
- return _resume;
2660
+ return _resume_dynamic_tag;
2660
2661
  }
2661
2662
  });
2662
- Object.defineProperty(exports, "_resume_dynamic_tag", {
2663
+ Object.defineProperty(exports, "_resumed", {
2663
2664
  enumerable: true,
2664
2665
  get: function() {
2665
- return _resume_dynamic_tag;
2666
+ return _resumed;
2666
2667
  }
2667
2668
  });
2668
2669
  Object.defineProperty(exports, "_return", {
@@ -2899,12 +2900,6 @@ Object.defineProperty(exports, "readyFailed", {
2899
2900
  return readyFailed;
2900
2901
  }
2901
2902
  });
2902
- Object.defineProperty(exports, "registeredValues", {
2903
- enumerable: true,
2904
- get: function() {
2905
- return registeredValues;
2906
- }
2907
- });
2908
2903
  Object.defineProperty(exports, "removeAndDestroyBranch", {
2909
2904
  enumerable: true,
2910
2905
  get: function() {
@@ -738,7 +738,7 @@ function _closure_get(valueAccessor, fn, getOwnerScope, resumeId) {
738
738
  });
739
739
  closureSignal[ScopeInstancesAccessor] = ClosureScopes + valueAccessor;
740
740
  closureSignal[SignalIndexAccessor] = ClosureSignalIndex + valueAccessor;
741
- resumeId && _resume(resumeId, closureSignal);
741
+ if (resumeId) _resumed[resumeId] = closureSignal;
742
742
  return closureSignal;
743
743
  }
744
744
  function _child_setup(setup) {
@@ -772,7 +772,7 @@ function _id(scope, accessor) {
772
772
  return id;
773
773
  }
774
774
  function _script(id, fn) {
775
- _resume(id, fn);
775
+ _resumed[id] = fn;
776
776
  return (scope) => {
777
777
  queueEffect(scope, fn);
778
778
  };
@@ -802,7 +802,7 @@ function _hoist(...path) {
802
802
  };
803
803
  }
804
804
  function _hoist_resume(id, ...path) {
805
- return _resume(id, _hoist(...path));
805
+ return _resumed[id] = _hoist(...path);
806
806
  }
807
807
  //#endregion
808
808
  //#region src/dom/walker.ts
@@ -860,7 +860,7 @@ const walkNextNode = () => {
860
860
  const walkNextSibling = () => currentNode = currentNode.nextSibling || currentNode;
861
861
  //#endregion
862
862
  //#region src/dom/resume.ts
863
- const registeredValues = {};
863
+ const _resumed = {};
864
864
  let curRenders;
865
865
  let embedRenders;
866
866
  let readyIds;
@@ -932,7 +932,7 @@ function init(runtimeId = "M") {
932
932
  }
933
933
  }
934
934
  };
935
- const serializeContext = ((data, registryId) => typeof data === "number" ? registryId ? registeredValues[registryId](getScope(data)) : getScope(data) : applyScopes(data));
935
+ const serializeContext = ((data, registryId) => typeof data === "number" ? registryId ? _resumed[registryId](getScope(data)) : getScope(data) : applyScopes(data));
936
936
  const createVisitBranches = (branchScopesStack = [], branchStarts = [], curBranchScopes, reorderBranch, reorderDepth = 0, adopt = (scope, branch) => scope["#ClosestBranch"] === scope ? scope !== branch && setParentBranch(scope, branch) : scope[ClosestBranch] = branch) => {
937
937
  return (branchId, branch, endedBranches, accessor, nodeAccessor, singleNode, parent = visit.parentNode, startVisit = visit) => {
938
938
  if (visitType === "*") {
@@ -992,7 +992,7 @@ function init(runtimeId = "M") {
992
992
  if (typeof serialized === "string") {
993
993
  lastTokenIndex = 0;
994
994
  visitText = serialized;
995
- while (nextToken()) if (/\D/.test(lastToken)) lastEffect = registeredValues[lastToken];
995
+ while (nextToken()) if (/\D/.test(lastToken)) lastEffect = _resumed[lastToken];
996
996
  else effects.push(lastEffect, getScope(lastToken));
997
997
  } else if (Array.isArray(serialized)) {
998
998
  if (!(readyIds && serialized.every((dep) => readyIds.has(dep) && !render.b[dep].length))) break;
@@ -1016,7 +1016,7 @@ function init(runtimeId = "M") {
1016
1016
  let visitBranches;
1017
1017
  let htmlStart;
1018
1018
  let embedAnchor;
1019
- serializeContext._ = registeredValues;
1019
+ serializeContext._ = _resumed;
1020
1020
  if (render.m) throw new Error(`Marko rendered multiple times with $global.runtimeId as ${JSON.stringify(runtimeId)} and $global.renderId as ${JSON.stringify(renderId)}. Ensure each render into a page has a unique $global.renderId.`);
1021
1021
  render.m = (effects) => {
1022
1022
  processResumes(render.r, effects);
@@ -1080,18 +1080,14 @@ function runResumeEffects(render) {
1080
1080
  }
1081
1081
  }
1082
1082
  function getRegisteredWithScope(id, scope) {
1083
- const val = registeredValues[id];
1084
- return scope ? val(scope) : val;
1085
- }
1086
- function _resume(id, obj) {
1087
- return registeredValues[id] = obj;
1083
+ return scope ? _resumed[id](scope) : _resumed[id];
1088
1084
  }
1089
1085
  function _var_resume(id, signal) {
1090
- _resume(id, (scope) => (value) => signal(scope, value));
1086
+ _resumed[id] = (scope) => (value) => signal(scope, value);
1091
1087
  return signal;
1092
1088
  }
1093
1089
  function _el(id, accessor) {
1094
- return _resume(id, (scope) => () => _el_read(scope[accessor]));
1090
+ return _resumed[id] = (scope) => () => _el_read(scope[accessor]);
1095
1091
  }
1096
1092
  //#endregion
1097
1093
  //#region src/dom/renderer.ts
@@ -1138,7 +1134,7 @@ function _content(id, template, walks, setup, params, dynamicScopesAccessor) {
1138
1134
  };
1139
1135
  }
1140
1136
  function _content_resume(id, template, walks, setup, params, dynamicScopesAccessor) {
1141
- return _resume(id, _content(id, template, walks, setup, params, dynamicScopesAccessor));
1137
+ return _resumed[id] = _content(id, template, walks, setup, params, dynamicScopesAccessor);
1142
1138
  }
1143
1139
  function _content_closures(renderer, closureFns) {
1144
1140
  const closureSignals = {};
@@ -1304,7 +1300,12 @@ const _html = /*@__PURE__*/ withDynamicHtml(function _html(scope, value, accesso
1304
1300
  const parentNode = firstChild.parentNode;
1305
1301
  const lastChild = scope["DynamicHTMLLastChild:" + accessor] || firstChild;
1306
1302
  const newContent = parseHTML(_to_text(value), parentNode.namespaceURI);
1307
- insertChildNodes(parentNode, firstChild, scope[accessor] = newContent.firstChild || newContent.appendChild(new Text()), scope[DynamicHTMLLastChild + accessor] = newContent.lastChild);
1303
+ const newFirstChild = scope[accessor] = newContent.firstChild || newContent.appendChild(new Text());
1304
+ const newLastChild = scope[DynamicHTMLLastChild + accessor] = newContent.lastChild;
1305
+ const branch = scope[ClosestBranch];
1306
+ if (branch?.["#StartNode"] === firstChild) branch[StartNode] = newFirstChild;
1307
+ if (branch?.["#EndNode"] === lastChild) branch[EndNode] = newLastChild;
1308
+ insertChildNodes(parentNode, firstChild, newFirstChild, newLastChild);
1308
1309
  removeChildNodes(firstChild, lastChild);
1309
1310
  });
1310
1311
  function normalizeClientRender(value) {
@@ -1946,7 +1947,7 @@ let bindNativeTagVar;
1946
1947
  function installDynamicTagVar(bind) {
1947
1948
  bindNativeTagVar = bind;
1948
1949
  }
1949
- const _resume_dynamic_tag = /*@__PURE__*/ withBranches(() => _resume(DYNAMIC_TAG_SCRIPT_REGISTER_ID, dynamicTagScript));
1950
+ const _resume_dynamic_tag = /*@__PURE__*/ withBranches(() => _resumed[DYNAMIC_TAG_SCRIPT_REGISTER_ID] = dynamicTagScript);
1950
1951
  function dynamicTagScript(branch) {
1951
1952
  _attrs_script(branch, `#${branch[Renderer].toLowerCase()}/0`);
1952
1953
  }
@@ -2100,4 +2101,4 @@ function byFirstArg(name) {
2100
2101
  return name;
2101
2102
  }
2102
2103
  //#endregion
2103
- export { _attrs_script as $, $signal as $t, _attr_input_value_script as A, ParentBranch as An, _for_closure as At, _attr as B, _return as Bt, _attr_input_checkedValue_script as C, Scope as Cn, registeredValues as Ct, _attr_input_value_attribute_default as D, Gen$1 as Dn, _closure_get as Dt, _attr_input_value as E, EndNode as En, _closure as Et, _controllable_open as F, TagVariable as Fn, _id as Ft, _attr_nonce as G, _assert_init as Gt, _attr_class_item as H, _script as Ht, _controllable_select as I, _if_closure as It, _attr_style_items as J, removeAndDestroyBranch as Jt, _attr_style as K, destroyBranch as Kt, _controllable_textarea as L, _let as Lt, _attr_select_value_default as M, PendingRenders as Mn, _global_read as Mt, _attr_select_value_script as N, PlaceholderBranch as Nn, _hoist as Nt, _attr_input_value_default as O, Global as On, _const as Ot, _controllable_input as P, StartNode as Pn, _hoist_resume as Pt, _attrs_partial_content as Q, PLACEHOLDER_DISMISS_REGISTER_ID as Qt, controllableRenders as R, _let_change as Rt, _attr_input_checkedValue_default as S, Pending as Sn, readyFailed as St, _attr_input_checked_script as T, ClosestBranch as Tn, _child_setup as Tt, _attr_class_items as U, _var as Ut, _attr_class as V, _return_change as Vt, _attr_content as W, _var_change as Wt, _attrs_content as X, _on as Xt, _attrs as Y, syncGen as Yt, _attrs_partial as Z, DYNAMIC_TAG_VAR_REGISTER_ID as Zt, _attr_details_or_dialog_open as _, _call as _n, _var_resume as _t, _for_in as a, queueAsyncRender as an, _text_content as at, _attr_input_checked as b, Params as bn, initEmbedded as bt, _for_until as c, run as cn, toInsertNode as ct, _show as d, forIn as dn, _content_resume as dt, $signalReset as en, _html as et, _try as f, forOf as fn, createAndSetupBranch as ft, renderCatch as g, _hoist_read_error as gn, _resume as gt, patchDynamicTag as h, _assert_hoist as hn, _el as ht, _dynamic_tag_content as i, prepareEffects as in, _text as it, _attr_select_value as j, PendingEffects as jn, _for_selector as jt, _attr_input_value_dynamic_default as k, Load as kn, _el_read as kt, _if as l, runEffects as ln, _content as lt, installDynamicTagVar as m, forUntil as mn, setupBranch as mt, _await_promise as n, installCatch as nn, _style_rule_item as nt, _for_of as o, queueEffect as on, _to_text as ot, addAwaitCounter as p, forTo as pn, createBranch as pt, _attr_style_item as q, insertBranchBefore as qt, _dynamic_tag as r, placeholderShown as rn, _style_shell as rt, _for_to as s, queueRender as sn, insertChildNodes as st, _await_content as t, caughtError as tn, _lifecycle as tt, _resume_dynamic_tag as u, runId as un, _content_closures as ut, _attr_details_or_dialog_open_default as v, Clone as vn, getRegisteredWithScope as vt, _attr_input_checked_default as w, AwaitCounter as wn, withLazy as wt, _attr_input_checkedValue as x, Setup as xn, ready as xt, _attr_details_or_dialog_open_script as y, Owner as yn, init as yt, controllableScripts as z, _or as zt };
2104
+ export { _attrs_script as $, $signalReset as $t, _attr_input_value_script as A, PendingEffects as An, _for_selector as At, _attr as B, _return_change as Bt, _attr_input_checkedValue_script as C, AwaitCounter as Cn, withLazy as Ct, _attr_input_value_attribute_default as D, Global as Dn, _const as Dt, _attr_input_value as E, Gen$1 as En, _closure_get as Et, _controllable_open as F, _if_closure as Ft, _attr_nonce as G, destroyBranch as Gt, _attr_class_item as H, _var as Ht, _controllable_select as I, _let as It, _attr_style_items as J, syncGen as Jt, _attr_style as K, insertBranchBefore as Kt, _controllable_textarea as L, _let_change as Lt, _attr_select_value_default as M, PlaceholderBranch as Mn, _hoist as Mt, _attr_select_value_script as N, StartNode as Nn, _hoist_resume as Nt, _attr_input_value_default as O, Load as On, _el_read as Ot, _controllable_input as P, TagVariable as Pn, _id as Pt, _attrs_partial_content as Q, $signal as Qt, controllableRenders as R, _or as Rt, _attr_input_checkedValue_default as S, Scope as Sn, readyFailed as St, _attr_input_checked_script as T, EndNode as Tn, _closure as Tt, _attr_class_items as U, _var_change as Ut, _attr_class as V, _script as Vt, _attr_content as W, _assert_init as Wt, _attrs_content as X, DYNAMIC_TAG_VAR_REGISTER_ID as Xt, _attrs as Y, _on as Yt, _attrs_partial as Z, PLACEHOLDER_DISMISS_REGISTER_ID as Zt, _attr_details_or_dialog_open as _, Clone as _n, _var_resume as _t, _for_in as a, queueEffect as an, _text_content as at, _attr_input_checked as b, Setup as bn, initEmbedded as bt, _for_until as c, runEffects as cn, toInsertNode as ct, _show as d, forOf as dn, _content_resume as dt, caughtError as en, _html as et, _try as f, forTo as fn, createAndSetupBranch as ft, renderCatch as g, _call as gn, _resumed as gt, patchDynamicTag as h, _hoist_read_error as hn, _el as ht, _dynamic_tag_content as i, queueAsyncRender as in, _text as it, _attr_select_value as j, PendingRenders as jn, _global_read as jt, _attr_input_value_dynamic_default as k, ParentBranch as kn, _for_closure as kt, _if as l, runId as ln, _content as lt, installDynamicTagVar as m, _assert_hoist as mn, setupBranch as mt, _await_promise as n, placeholderShown as nn, _style_rule_item as nt, _for_of as o, queueRender as on, _to_text as ot, addAwaitCounter as p, forUntil as pn, createBranch as pt, _attr_style_item as q, removeAndDestroyBranch as qt, _dynamic_tag as r, prepareEffects as rn, _style_shell as rt, _for_to as s, run as sn, insertChildNodes as st, _await_content as t, installCatch as tn, _lifecycle as tt, _resume_dynamic_tag as u, forIn as un, _content_closures as ut, _attr_details_or_dialog_open_default as v, Owner as vn, getRegisteredWithScope as vt, _attr_input_checked_default as w, ClosestBranch as wn, _child_setup as wt, _attr_input_checkedValue as x, Pending as xn, ready as xt, _attr_details_or_dialog_open_script as y, Params as yn, init as yt, controllableScripts as z, _return as zt };
package/dist/debug/dom.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const require_control_flow = require("./dom-BAGeiafn.js");
3
+ const require_control_flow = require("./dom-BJKb8-wr.js");
4
4
  //#region src/common/attr-tag.ts
5
5
  const empty = [];
6
6
  const rest = Symbol("Attribute Tag");
@@ -41,21 +41,21 @@ const compat = {
41
41
  patchDynamicTag: require_control_flow.patchDynamicTag,
42
42
  queueEffect: require_control_flow.queueEffect,
43
43
  init(warp10Noop) {
44
- require_control_flow._resume(SET_SCOPE_REGISTER_ID, (scope) => {
44
+ require_control_flow._resumed[SET_SCOPE_REGISTER_ID] = (scope) => {
45
45
  getRenderScopes(scope[require_control_flow.Global])[scope["#Id"]] = scope;
46
46
  if (scope.m5c) classIdToBranch.set(scope.m5c, scope);
47
47
  if (classEventResolver) for (const key in scope) {
48
48
  const resolved = classEventResolver(scope[key], scope);
49
49
  if (resolved !== scope[key]) scope[key] = resolved;
50
50
  }
51
- });
52
- require_control_flow._resume(RENDER_BODY_ID, warp10Noop);
51
+ };
52
+ require_control_flow._resumed[RENDER_BODY_ID] = warp10Noop;
53
53
  },
54
54
  setClassEventResolver(fn) {
55
55
  classEventResolver = fn;
56
56
  },
57
57
  resumeClassFunction(id, build) {
58
- require_control_flow._resume(id, build);
58
+ require_control_flow._resumed[id] = build;
59
59
  },
60
60
  getScope($global, scopeId) {
61
61
  return getRenderScopes($global)?.[scopeId];
@@ -127,7 +127,7 @@ const _template = (id, template, walks, setup, inputSignal) => {
127
127
  renderer.render = () => {
128
128
  throw new Error(`render() is not implemented for the DOM compilation of a Marko template`);
129
129
  };
130
- return require_control_flow._resume(id, renderer);
130
+ return require_control_flow._resumed[id] = renderer;
131
131
  };
132
132
  function mount(input = {}, reference, position) {
133
133
  let branch;
@@ -194,6 +194,7 @@ function mount(input = {}, reference, position) {
194
194
  }
195
195
  //#endregion
196
196
  //#region src/dom/load.ts
197
+ const noop = (_) => 0;
197
198
  const _load_template = /*@__PURE__*/ require_control_flow.withLazy((id, load) => {
198
199
  let pending;
199
200
  const lazyTemplate = _template(id, 0, 0, (branch) => {
@@ -203,7 +204,7 @@ const _load_template = /*@__PURE__*/ require_control_flow.withLazy((id, load) =>
203
204
  Object.assign(lazyTemplate, renderer);
204
205
  require_control_flow.queueAsyncRender(branch, (branch) => insertLoaded(renderer, branch, branch[require_control_flow.StartNode], awaitCounter));
205
206
  }, loadFailed(branch, awaitCounter));
206
- }, _load_signal(() => (pending ||= load()).then((r) => ({ _: r[require_control_flow.Params] }))));
207
+ }, _load_signal(() => (pending ||= load()).then((r) => ({ _: r["params"] || noop }))));
207
208
  return lazyTemplate;
208
209
  });
209
210
  const _load_setup = /*@__PURE__*/ require_control_flow.withLazy((nodeAccessor, childScopeAccessor, load) => {
@@ -261,7 +262,7 @@ const _load_signal = /*@__PURE__*/ require_control_flow.withLazy((load) => {
261
262
  pending ||= load();
262
263
  if (scope["#Load"] || !("#Load" in scope) && scope["#Gen"] === require_control_flow.runId) (scope[require_control_flow.Load] ||= /* @__PURE__ */ new Map()).set(pending, [value, apply]);
263
264
  else if (apply._) apply._(scope, value);
264
- else pending.then((mod) => require_control_flow.queueAsyncRender(scope, apply._ = mod._, value), () => 0);
265
+ else pending.then((mod) => require_control_flow.queueAsyncRender(scope, apply._ = mod._, value), noop);
265
266
  };
266
267
  return apply;
267
268
  });
@@ -284,7 +285,6 @@ function _load_media_trigger(query) {
284
285
  return (load) => () => (pending ||= new Promise((resolve) => (mql = matchMedia(query)).matches ? resolve() : mql.addEventListener("change", resolve, { once: true }))).then(load);
285
286
  }
286
287
  function _load_race_trigger(...triggers) {
287
- const noop = () => Promise.resolve();
288
288
  let pending;
289
289
  return (load) => () => (pending ||= Promise.race(triggers.map((t) => t(noop)()))).then(load);
290
290
  }
@@ -383,8 +383,8 @@ exports._load_template = _load_template;
383
383
  exports._load_visible_trigger = _load_visible_trigger;
384
384
  exports._on = require_control_flow._on;
385
385
  exports._or = require_control_flow._or;
386
- exports._resume = require_control_flow._resume;
387
386
  exports._resume_dynamic_tag = require_control_flow._resume_dynamic_tag;
387
+ exports._resumed = require_control_flow._resumed;
388
388
  exports._return = require_control_flow._return;
389
389
  exports._return_change = require_control_flow._return_change;
390
390
  exports._script = require_control_flow._script;
@@ -1,4 +1,4 @@
1
- import { $ as _attrs_script, $t as $signal, A as _attr_input_value_script, At as _for_closure, B as _attr, Bt as _return, C as _attr_input_checkedValue_script, D as _attr_input_value_attribute_default, Dt as _closure_get, E as _attr_input_value, En as EndNode, Et as _closure, F as _controllable_open, Fn as TagVariable, Ft as _id, G as _attr_nonce, Gt as _assert_init, H as _attr_class_item, Ht as _script, I as _controllable_select, It as _if_closure, J as _attr_style_items, Jt as removeAndDestroyBranch, K as _attr_style, Kt as destroyBranch, L as _controllable_textarea, Lt as _let, M as _attr_select_value_default, Mt as _global_read, N as _attr_select_value_script, Nt as _hoist, O as _attr_input_value_default, On as Global, Ot as _const, P as _controllable_input, Pn as StartNode, Pt as _hoist_resume, Q as _attrs_partial_content, Rt as _let_change, S as _attr_input_checkedValue_default, St as readyFailed, T as _attr_input_checked_script, Tt as _child_setup, U as _attr_class_items, Ut as _var, V as _attr_class, Vt as _return_change, W as _attr_content, Wt as _var_change, X as _attrs_content, Xt as _on, Y as _attrs, Yt as syncGen, Z as _attrs_partial, _ as _attr_details_or_dialog_open, _n as _call, _t as _var_resume, a as _for_in, an as queueAsyncRender, at as _text_content, b as _attr_input_checked, bn as Params, bt as initEmbedded, c as _for_until, cn as run, ct as toInsertNode, d as _show, dn as forIn, dt as _content_resume, en as $signalReset, et as _html, f as _try, fn as forOf, ft as createAndSetupBranch, g as renderCatch, gn as _hoist_read_error, gt as _resume, h as patchDynamicTag, hn as _assert_hoist, ht as _el, i as _dynamic_tag_content, in as prepareEffects, it as _text, j as _attr_select_value, jt as _for_selector, k as _attr_input_value_dynamic_default, kn as Load, kt as _el_read, l as _if, ln as runEffects, lt as _content, mn as forUntil, mt as setupBranch, n as _await_promise, nt as _style_rule_item, o as _for_of, on as queueEffect, ot as _to_text, p as addAwaitCounter, pn as forTo, pt as createBranch, q as _attr_style_item, qt as insertBranchBefore, r as _dynamic_tag, rt as _style_shell, s as _for_to, sn as queueRender, st as insertChildNodes, t as _await_content, tt as _lifecycle, u as _resume_dynamic_tag, un as runId, ut as _content_closures, v as _attr_details_or_dialog_open_default, vn as Clone, vt as getRegisteredWithScope, w as _attr_input_checked_default, wt as withLazy, x as _attr_input_checkedValue, xn as Setup, xt as ready, y as _attr_details_or_dialog_open_script, yn as Owner, yt as init, zt as _or } from "./dom-C55iHvof.mjs";
1
+ import { $ as _attrs_script, $t as $signalReset, A as _attr_input_value_script, At as _for_selector, B as _attr, Bt as _return_change, C as _attr_input_checkedValue_script, Ct as withLazy, D as _attr_input_value_attribute_default, Dn as Global, Dt as _const, E as _attr_input_value, Et as _closure_get, F as _controllable_open, Ft as _if_closure, G as _attr_nonce, Gt as destroyBranch, H as _attr_class_item, Ht as _var, I as _controllable_select, It as _let, J as _attr_style_items, Jt as syncGen, K as _attr_style, Kt as insertBranchBefore, L as _controllable_textarea, Lt as _let_change, M as _attr_select_value_default, Mt as _hoist, N as _attr_select_value_script, Nn as StartNode, Nt as _hoist_resume, O as _attr_input_value_default, On as Load, Ot as _el_read, P as _controllable_input, Pn as TagVariable, Pt as _id, Q as _attrs_partial_content, Qt as $signal, Rt as _or, S as _attr_input_checkedValue_default, St as readyFailed, T as _attr_input_checked_script, Tn as EndNode, Tt as _closure, U as _attr_class_items, Ut as _var_change, V as _attr_class, Vt as _script, W as _attr_content, Wt as _assert_init, X as _attrs_content, Y as _attrs, Yt as _on, Z as _attrs_partial, _ as _attr_details_or_dialog_open, _n as Clone, _t as _var_resume, a as _for_in, an as queueEffect, at as _text_content, b as _attr_input_checked, bn as Setup, bt as initEmbedded, c as _for_until, cn as runEffects, ct as toInsertNode, d as _show, dn as forOf, dt as _content_resume, et as _html, f as _try, fn as forTo, ft as createAndSetupBranch, g as renderCatch, gn as _call, gt as _resumed, h as patchDynamicTag, hn as _hoist_read_error, ht as _el, i as _dynamic_tag_content, in as queueAsyncRender, it as _text, j as _attr_select_value, jt as _global_read, k as _attr_input_value_dynamic_default, kt as _for_closure, l as _if, ln as runId, lt as _content, mn as _assert_hoist, mt as setupBranch, n as _await_promise, nt as _style_rule_item, o as _for_of, on as queueRender, ot as _to_text, p as addAwaitCounter, pn as forUntil, pt as createBranch, q as _attr_style_item, qt as removeAndDestroyBranch, r as _dynamic_tag, rn as prepareEffects, rt as _style_shell, s as _for_to, sn as run, st as insertChildNodes, t as _await_content, tt as _lifecycle, u as _resume_dynamic_tag, un as forIn, ut as _content_closures, v as _attr_details_or_dialog_open_default, vn as Owner, vt as getRegisteredWithScope, w as _attr_input_checked_default, wt as _child_setup, x as _attr_input_checkedValue, xt as ready, y as _attr_details_or_dialog_open_script, yn as Params, yt as init, zt as _return } from "./dom-Dq_Yu7MS.mjs";
2
2
  //#region src/common/attr-tag.ts
3
3
  const empty = [];
4
4
  const rest = Symbol("Attribute Tag");
@@ -39,21 +39,21 @@ const compat = {
39
39
  patchDynamicTag,
40
40
  queueEffect,
41
41
  init(warp10Noop) {
42
- _resume(SET_SCOPE_REGISTER_ID, (scope) => {
42
+ _resumed[SET_SCOPE_REGISTER_ID] = (scope) => {
43
43
  getRenderScopes(scope[Global])[scope["#Id"]] = scope;
44
44
  if (scope.m5c) classIdToBranch.set(scope.m5c, scope);
45
45
  if (classEventResolver) for (const key in scope) {
46
46
  const resolved = classEventResolver(scope[key], scope);
47
47
  if (resolved !== scope[key]) scope[key] = resolved;
48
48
  }
49
- });
50
- _resume(RENDER_BODY_ID, warp10Noop);
49
+ };
50
+ _resumed[RENDER_BODY_ID] = warp10Noop;
51
51
  },
52
52
  setClassEventResolver(fn) {
53
53
  classEventResolver = fn;
54
54
  },
55
55
  resumeClassFunction(id, build) {
56
- _resume(id, build);
56
+ _resumed[id] = build;
57
57
  },
58
58
  getScope($global, scopeId) {
59
59
  return getRenderScopes($global)?.[scopeId];
@@ -125,7 +125,7 @@ const _template = (id, template, walks, setup, inputSignal) => {
125
125
  renderer.render = () => {
126
126
  throw new Error(`render() is not implemented for the DOM compilation of a Marko template`);
127
127
  };
128
- return _resume(id, renderer);
128
+ return _resumed[id] = renderer;
129
129
  };
130
130
  function mount(input = {}, reference, position) {
131
131
  let branch;
@@ -192,6 +192,7 @@ function mount(input = {}, reference, position) {
192
192
  }
193
193
  //#endregion
194
194
  //#region src/dom/load.ts
195
+ const noop = (_) => 0;
195
196
  const _load_template = /*@__PURE__*/ withLazy((id, load) => {
196
197
  let pending;
197
198
  const lazyTemplate = _template(id, 0, 0, (branch) => {
@@ -201,7 +202,7 @@ const _load_template = /*@__PURE__*/ withLazy((id, load) => {
201
202
  Object.assign(lazyTemplate, renderer);
202
203
  queueAsyncRender(branch, (branch) => insertLoaded(renderer, branch, branch[StartNode], awaitCounter));
203
204
  }, loadFailed(branch, awaitCounter));
204
- }, _load_signal(() => (pending ||= load()).then((r) => ({ _: r[Params] }))));
205
+ }, _load_signal(() => (pending ||= load()).then((r) => ({ _: r["params"] || noop }))));
205
206
  return lazyTemplate;
206
207
  });
207
208
  const _load_setup = /*@__PURE__*/ withLazy((nodeAccessor, childScopeAccessor, load) => {
@@ -259,7 +260,7 @@ const _load_signal = /*@__PURE__*/ withLazy((load) => {
259
260
  pending ||= load();
260
261
  if (scope["#Load"] || !("#Load" in scope) && scope["#Gen"] === runId) (scope[Load] ||= /* @__PURE__ */ new Map()).set(pending, [value, apply]);
261
262
  else if (apply._) apply._(scope, value);
262
- else pending.then((mod) => queueAsyncRender(scope, apply._ = mod._, value), () => 0);
263
+ else pending.then((mod) => queueAsyncRender(scope, apply._ = mod._, value), noop);
263
264
  };
264
265
  return apply;
265
266
  });
@@ -282,7 +283,6 @@ function _load_media_trigger(query) {
282
283
  return (load) => () => (pending ||= new Promise((resolve) => (mql = matchMedia(query)).matches ? resolve() : mql.addEventListener("change", resolve, { once: true }))).then(load);
283
284
  }
284
285
  function _load_race_trigger(...triggers) {
285
- const noop = () => Promise.resolve();
286
286
  let pending;
287
287
  return (load) => () => (pending ||= Promise.race(triggers.map((t) => t(noop)()))).then(load);
288
288
  }
@@ -290,4 +290,4 @@ function getSelectorOrResolve(selector, resolve) {
290
290
  return document.querySelector(selector) || (console.warn(`A lazy load trigger could not find an element matching "${selector}". The module was loaded immediately.`), resolve());
291
291
  }
292
292
  //#endregion
293
- export { $signal, $signalReset, _assert_hoist, _assert_init, _attr, _attr_class, _attr_class_item, _attr_class_items, _attr_content, _attr_details_or_dialog_open as _attr_details_open, _attr_details_or_dialog_open as _attr_dialog_open, _attr_details_or_dialog_open_default as _attr_details_open_default, _attr_details_or_dialog_open_default as _attr_dialog_open_default, _attr_details_or_dialog_open_script as _attr_details_open_script, _attr_details_or_dialog_open_script as _attr_dialog_open_script, _attr_input_checked, _attr_input_checkedValue, _attr_input_checkedValue_default, _attr_input_checkedValue_script, _attr_input_checked_default, _attr_input_checked_script, _attr_input_value, _attr_input_value as _attr_textarea_value, _attr_input_value_attribute_default, _attr_input_value_default, _attr_input_value_default as _attr_textarea_value_default, _attr_input_value_dynamic_default, _attr_input_value_script, _attr_input_value_script as _attr_textarea_value_script, _attr_nonce, _attr_select_value, _attr_select_value_default, _attr_select_value_script, _attr_style, _attr_style_item, _attr_style_items, _attrs, _attrs_content, _attrs_partial, _attrs_partial_content, _attrs_script, _await_content, _await_promise, _call, _child_setup, _closure, _closure_get, _const, _content, _content_closures, _content_resume, _controllable_input, _controllable_open, _controllable_select, _controllable_textarea, _dynamic_tag, _dynamic_tag_content, _el, _el_read, _for_closure, _for_in, _for_of, _for_selector, _for_to, _for_until, _global_read, _hoist, _hoist_read_error, _hoist_resume, _html, _id, _if, _if_closure, _let, _let_change, _lifecycle, _load_event_trigger, _load_idle_trigger, _load_media_trigger, _load_race_trigger, _load_setup, _load_signal, _load_template, _load_visible_trigger, _on, _or, _resume, _resume_dynamic_tag, _return, _return_change, _script, _show, _style_rule_item, _style_shell, _template, _text, _text_content, _to_text, _try, _var, _var_change, _var_resume, attrTag, attrTags, compat, forIn, forOf, forTo, forUntil, init, initEmbedded, ready, readyFailed, run };
293
+ export { $signal, $signalReset, _assert_hoist, _assert_init, _attr, _attr_class, _attr_class_item, _attr_class_items, _attr_content, _attr_details_or_dialog_open as _attr_details_open, _attr_details_or_dialog_open as _attr_dialog_open, _attr_details_or_dialog_open_default as _attr_details_open_default, _attr_details_or_dialog_open_default as _attr_dialog_open_default, _attr_details_or_dialog_open_script as _attr_details_open_script, _attr_details_or_dialog_open_script as _attr_dialog_open_script, _attr_input_checked, _attr_input_checkedValue, _attr_input_checkedValue_default, _attr_input_checkedValue_script, _attr_input_checked_default, _attr_input_checked_script, _attr_input_value, _attr_input_value as _attr_textarea_value, _attr_input_value_attribute_default, _attr_input_value_default, _attr_input_value_default as _attr_textarea_value_default, _attr_input_value_dynamic_default, _attr_input_value_script, _attr_input_value_script as _attr_textarea_value_script, _attr_nonce, _attr_select_value, _attr_select_value_default, _attr_select_value_script, _attr_style, _attr_style_item, _attr_style_items, _attrs, _attrs_content, _attrs_partial, _attrs_partial_content, _attrs_script, _await_content, _await_promise, _call, _child_setup, _closure, _closure_get, _const, _content, _content_closures, _content_resume, _controllable_input, _controllable_open, _controllable_select, _controllable_textarea, _dynamic_tag, _dynamic_tag_content, _el, _el_read, _for_closure, _for_in, _for_of, _for_selector, _for_to, _for_until, _global_read, _hoist, _hoist_read_error, _hoist_resume, _html, _id, _if, _if_closure, _let, _let_change, _lifecycle, _load_event_trigger, _load_idle_trigger, _load_media_trigger, _load_race_trigger, _load_setup, _load_signal, _load_template, _load_visible_trigger, _on, _or, _resume_dynamic_tag, _resumed, _return, _return_change, _script, _show, _style_rule_item, _style_shell, _template, _text, _text_content, _to_text, _try, _var, _var_change, _var_resume, attrTag, attrTags, compat, forIn, forOf, forTo, forUntil, init, initEmbedded, ready, readyFailed, run };