marko 6.4.2 → 6.4.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.
Files changed (63) hide show
  1. package/dist/common/constants/accessor-prop.d.ts +1 -0
  2. package/dist/common/constants/accessor-prop.debug.d.ts +1 -0
  3. package/dist/common/types.d.ts +1 -0
  4. package/dist/debug/dom/catch.feat.js +1 -1
  5. package/dist/debug/dom/catch.feat.mjs +1 -1
  6. package/dist/debug/dom/controllable-input.feat.js +1 -1
  7. package/dist/debug/dom/controllable-input.feat.mjs +1 -1
  8. package/dist/debug/dom/controllable-open.feat.js +1 -1
  9. package/dist/debug/dom/controllable-open.feat.mjs +1 -1
  10. package/dist/debug/dom/controllable-select.feat.js +1 -1
  11. package/dist/debug/dom/controllable-select.feat.mjs +1 -1
  12. package/dist/debug/dom/controllable-textarea.feat.js +1 -1
  13. package/dist/debug/dom/controllable-textarea.feat.mjs +1 -1
  14. package/dist/debug/dom/controllable.feat.js +1 -1
  15. package/dist/debug/dom/controllable.feat.mjs +1 -1
  16. package/dist/debug/dom/dynamic-tag-script.feat.js +1 -1
  17. package/dist/debug/dom/dynamic-tag-script.feat.mjs +1 -1
  18. package/dist/debug/dom/dynamic-tag-var.feat.js +6 -2
  19. package/dist/debug/dom/dynamic-tag-var.feat.mjs +6 -2
  20. package/dist/debug/dom/lazy.feat.js +1 -1
  21. package/dist/debug/dom/lazy.feat.mjs +1 -1
  22. package/dist/debug/dom/placeholder.feat.js +1 -1
  23. package/dist/debug/dom/placeholder.feat.mjs +1 -1
  24. package/dist/debug/{dom-BLbR0hEx.js → dom-C7F3yZTh.js} +89 -24
  25. package/dist/debug/{dom-Cii0IA92.mjs → dom-uEY0J_H9.mjs} +60 -25
  26. package/dist/debug/dom.js +10 -1
  27. package/dist/debug/dom.mjs +10 -2
  28. package/dist/debug/html.js +13 -7
  29. package/dist/debug/html.mjs +13 -7
  30. package/dist/dom/catch.feat.js +4 -4
  31. package/dist/dom/catch.feat.mjs +1 -1
  32. package/dist/dom/control-flow.d.ts +2 -2
  33. package/dist/dom/controllable-input.feat.js +2 -2
  34. package/dist/dom/controllable-input.feat.mjs +1 -1
  35. package/dist/dom/controllable-open.feat.js +2 -2
  36. package/dist/dom/controllable-open.feat.mjs +1 -1
  37. package/dist/dom/controllable-select.feat.js +2 -2
  38. package/dist/dom/controllable-select.feat.mjs +1 -1
  39. package/dist/dom/controllable-textarea.feat.js +2 -2
  40. package/dist/dom/controllable-textarea.feat.mjs +1 -1
  41. package/dist/dom/controllable.feat.js +2 -2
  42. package/dist/dom/controllable.feat.mjs +1 -1
  43. package/dist/dom/dynamic-tag-script.feat.js +2 -2
  44. package/dist/dom/dynamic-tag-script.feat.mjs +1 -1
  45. package/dist/dom/dynamic-tag-var.feat.js +4 -2
  46. package/dist/dom/dynamic-tag-var.feat.mjs +4 -3
  47. package/dist/dom/lazy.feat.js +1 -1
  48. package/dist/dom/lazy.feat.mjs +1 -1
  49. package/dist/dom/load.d.ts +1 -0
  50. package/dist/dom/placeholder.feat.js +3 -3
  51. package/dist/dom/placeholder.feat.mjs +1 -1
  52. package/dist/dom/queue.d.ts +4 -1
  53. package/dist/{dom-B8UEYzOz.js → dom-CtIT8Mpr.js} +184 -140
  54. package/dist/{dom-BPjLe6YU.mjs → dom-DHg9YChM.mjs} +51 -27
  55. package/dist/dom.d.ts +1 -1
  56. package/dist/dom.js +39 -33
  57. package/dist/dom.mjs +8 -2
  58. package/dist/html/writer.d.ts +1 -1
  59. package/dist/html.js +18 -8
  60. package/dist/html.mjs +18 -8
  61. package/dist/translator/index.js +28 -23
  62. package/package.json +2 -2
  63. package/tags-html.d.ts +6 -5
@@ -22,6 +22,7 @@ const AbortControllers = "#AbortControllers";
22
22
  const AbortScopes = "#AbortScopes";
23
23
  const AwaitCounter = "#AwaitCounter";
24
24
  const BranchAccessor = "#BranchAccessor";
25
+ const BranchRenders = "#BranchRenders";
25
26
  const BranchScopes = "#BranchScopes";
26
27
  const CatchContent = "#CatchContent";
27
28
  const ClosestBranch = "#ClosestBranch";
@@ -341,16 +342,19 @@ let rendering;
341
342
  let runId = 2;
342
343
  let pendingEffects = [];
343
344
  let pendingRenders = [];
344
- const scopeKeyOffset = 1e6;
345
+ const ranRenders = /*@__PURE__*/ new WeakMap();
345
346
  function queueRender(scope, signal, signalKey, value, scopeKey = scope["#Id"]) {
346
347
  let render;
347
348
  if (signalKey >= 0 && (render = scope[signalKey])) {
348
349
  render[Value] = value;
349
- if (render["gen"] === runId || catchEnabled && render["pending"]) return;
350
+ if (render["gen"] === runId || catchEnabled && render["pending"]) {
351
+ if (!render["pending"] && ranRenders.get(render) === runId) console.error("A render was queued again after it ran in this update, so its latest value is dropped. This is a bug in Marko.");
352
+ return;
353
+ }
350
354
  render["gen"] = runId;
351
355
  } else {
352
356
  render = {
353
- ["key"]: scopeKey * scopeKeyOffset + signalKey,
357
+ ["key"]: scopeKey * 1e6 + signalKey,
354
358
  [Scope]: scope,
355
359
  [Signal]: signal,
356
360
  [Value]: value,
@@ -360,7 +364,7 @@ function queueRender(scope, signal, signalKey, value, scopeKey = scope["#Id"]) {
360
364
  }
361
365
  queuePendingRender(render);
362
366
  }
363
- function queuePendingRender(render) {
367
+ let queuePendingRender = (render) => {
364
368
  let i = pendingRenders.push(render) - 1;
365
369
  while (i) {
366
370
  const parentIndex = i - 1 >> 1;
@@ -370,6 +374,34 @@ function queuePendingRender(render) {
370
374
  i = parentIndex;
371
375
  }
372
376
  pendingRenders[i] = render;
377
+ };
378
+ function createBranchRenders(scope, scopeKey) {
379
+ return {
380
+ ["key"]: scopeKey * 1e6 - 1,
381
+ [Scope]: scope,
382
+ [Signal]: runBranchRenders,
383
+ [Value]: [],
384
+ ["gen"]: 0
385
+ };
386
+ }
387
+ function installBranchRenders() {
388
+ const queue = queuePendingRender;
389
+ queuePendingRender = (render) => {
390
+ const branchRenders = render[Scope][ClosestBranch]?.[BranchRenders];
391
+ if (branchRenders) {
392
+ if (branchRenders["gen"] !== runId && !branchRenders["pending"]) branchRenders[Value] = [];
393
+ branchRenders["gen"] = runId;
394
+ const renders = branchRenders[Value];
395
+ if (!renders.length) queuePendingRender(branchRenders);
396
+ const prev = pendingRenders;
397
+ pendingRenders = renders;
398
+ queue(render);
399
+ pendingRenders = prev;
400
+ } else queue(render);
401
+ };
402
+ }
403
+ function runBranchRenders(_scope, renders) {
404
+ runRenders(renders);
373
405
  }
374
406
  function queueEffect(scope, fn) {
375
407
  pendingEffects.push(fn, scope);
@@ -421,26 +453,27 @@ function installCatch(catchEffects, wrapRender) {
421
453
  runEffects = catchEffects;
422
454
  runRender = wrapRender(runRender);
423
455
  }
424
- function runRenders() {
425
- while (pendingRenders.length) {
426
- const render = pendingRenders[0];
427
- const item = pendingRenders.pop();
456
+ function runRenders(renders = pendingRenders) {
457
+ while (renders.length) {
458
+ const render = renders[0];
459
+ const item = renders.pop();
428
460
  if (render !== item) {
429
461
  let i = 0;
430
- const mid = pendingRenders.length >> 1;
431
- const key = (pendingRenders[0] = item)["key"];
462
+ const mid = renders.length >> 1;
463
+ const key = (renders[0] = item)["key"];
432
464
  while (i < mid) {
433
465
  let bestChild = (i << 1) + 1;
434
466
  const right = bestChild + 1;
435
- if (right < pendingRenders.length && pendingRenders[right]["key"] - pendingRenders[bestChild]["key"] < 0) bestChild = right;
436
- if (pendingRenders[bestChild]["key"] - key >= 0) break;
467
+ if (right < renders.length && renders[right]["key"] - renders[bestChild]["key"] < 0) bestChild = right;
468
+ if (renders[bestChild]["key"] - key >= 0) break;
437
469
  else {
438
- pendingRenders[i] = pendingRenders[bestChild];
470
+ renders[i] = renders[bestChild];
439
471
  i = bestChild;
440
472
  }
441
473
  }
442
- pendingRenders[i] = item;
474
+ renders[i] = item;
443
475
  }
476
+ ranRenders.set(render, runId);
444
477
  runRender(render);
445
478
  }
446
479
  }
@@ -684,9 +717,9 @@ function _for_closure(ownerLoopNodeAccessor, fn) {
684
717
  const scopeAccessor = BranchScopes$1 + ownerLoopNodeAccessor;
685
718
  const ownerSignal = (ownerScope) => {
686
719
  const scopes = toArray(ownerScope[scopeAccessor]);
687
- if (scopes.length) queueRender(ownerScope, () => {
720
+ queueRender(ownerScope, () => {
688
721
  for (const scope of scopes) if (scope["#Gen"] > 0 && scope["#Gen"] < runId) fn(scope);
689
- }, -1, 0, scopes[0]["#Id"]);
722
+ }, -1);
690
723
  };
691
724
  ownerSignal._ = fn;
692
725
  return ownerSignal;
@@ -696,8 +729,7 @@ function _for_selector(ownerLoopNodeAccessor, ownerValueAccessor, keyValueAccess
696
729
  const mapAccessor = KeyedScopes + ownerLoopNodeAccessor;
697
730
  const prevKeyProp = `${PreviousKey}${ownerValueAccessor}`;
698
731
  const ownerSignal = (ownerScope) => {
699
- const scopes = toArray(ownerScope[scopeAccessor]);
700
- if (ownerScope["#Gen"] < runId && scopes.length) {
732
+ if (ownerScope["#Gen"] < runId) {
701
733
  const nextKey = ownerScope[ownerValueAccessor];
702
734
  queueRender(ownerScope, () => {
703
735
  const map = keyedScopes(ownerScope, scopeAccessor, mapAccessor, keyValueAccessor);
@@ -710,7 +742,7 @@ function _for_selector(ownerLoopNodeAccessor, ownerValueAccessor, keyValueAccess
710
742
  }
711
743
  } else for (const scope of toArray(ownerScope[scopeAccessor])) runLiveBranch(scope, fn);
712
744
  if (map) map[prevKeyProp] = nextKey;
713
- }, -1, 0, scopes[0]["#Id"]);
745
+ }, -1);
714
746
  }
715
747
  };
716
748
  ownerSignal._ = fn;
@@ -1992,6 +2024,7 @@ function patchDynamicTag(fn) {
1992
2024
  _dynamic_tag = fn(_dynamic_tag);
1993
2025
  }
1994
2026
  let _dynamic_tag = /*@__PURE__*/ withBranches((nodeAccessor, getContent, getTagVar, inputIsArgs) => {
2027
+ const scopeOffsetAccessor = getTagVar && getDebugKey(+nodeAccessor.slice(nodeAccessor.lastIndexOf("/") + 1) + 1, "#scopeOffset");
1995
2028
  const childScopeAccessor = BranchScopes$1 + nodeAccessor;
1996
2029
  const rendererAccessor = ConditionalRenderer + nodeAccessor;
1997
2030
  return (scope, newRenderer, getInput) => {
@@ -2002,7 +2035,7 @@ let _dynamic_tag = /*@__PURE__*/ withBranches((nodeAccessor, getContent, getTagV
2002
2035
  if (getTagVar) {
2003
2036
  if (scope[childScopeAccessor]) {
2004
2037
  scope[childScopeAccessor][TagVariable] = (value) => getTagVar()(scope, value);
2005
- if (typeof normalizedRenderer === "string") bindNativeTagVar?.(scope[childScopeAccessor]);
2038
+ bindTagVar(scope, scope[childScopeAccessor], scope[scopeOffsetAccessor], normalizedRenderer);
2006
2039
  } else getTagVar()(scope, void 0);
2007
2040
  }
2008
2041
  if (typeof renderer === "string") {
@@ -2011,7 +2044,10 @@ let _dynamic_tag = /*@__PURE__*/ withBranches((nodeAccessor, getContent, getTagV
2011
2044
  setConditionalRenderer(scope[childScopeAccessor], `#${renderer.toLowerCase()}/0`, content, createAndSetupBranch);
2012
2045
  if (content["accessor"]) subscribeToScopeSet(content[Owner], content[Accessor], scope[childScopeAccessor][`BranchScopes:#${renderer.toLowerCase()}/0`]);
2013
2046
  }
2014
- } else if (renderer?.["accessor"]) subscribeToScopeSet(renderer[Owner], renderer[Accessor], scope[childScopeAccessor]);
2047
+ } else if (renderer) {
2048
+ setupBranch(renderer, scope[childScopeAccessor]);
2049
+ if (renderer["accessor"]) subscribeToScopeSet(renderer[Owner], renderer[Accessor], scope[childScopeAccessor]);
2050
+ }
2015
2051
  }
2016
2052
  if (normalizedRenderer) {
2017
2053
  const childScope = scope[childScopeAccessor];
@@ -2047,9 +2083,9 @@ const _dynamic_tag_content = /*@__PURE__*/ withBranches((nodeAccessor) => {
2047
2083
  renderer?.[LocalClosures]?.(scope[childScopeAccessor]);
2048
2084
  };
2049
2085
  });
2050
- let bindNativeTagVar;
2086
+ let bindTagVar;
2051
2087
  function installDynamicTagVar(bind) {
2052
- bindNativeTagVar = bind;
2088
+ bindTagVar = bind;
2053
2089
  }
2054
2090
  function dynamicTagScript(branch) {
2055
2091
  _attrs_script(branch, `#${branch[Renderer].toLowerCase()}/0`);
@@ -2202,7 +2238,6 @@ function createBranchWithTagNameOrRenderer($global, tagNameOrRenderer, parentSco
2202
2238
  if (typeof tagNameOrRenderer === "string") assertValidTagName(tagNameOrRenderer);
2203
2239
  const branch = createBranch($global, tagNameOrRenderer, parentScope, parentNode);
2204
2240
  if (typeof tagNameOrRenderer === "string") branch[`#${tagNameOrRenderer.toLowerCase()}/0`] = branch[StartNode] = branch[EndNode] = document.createElementNS(tagNameOrRenderer === "svg" ? "http://www.w3.org/2000/svg" : tagNameOrRenderer === "math" ? "http://www.w3.org/1998/Math/MathML" : parentNode.namespaceURI, tagNameOrRenderer);
2205
- else setupBranch(tagNameOrRenderer, branch);
2206
2241
  return branch;
2207
2242
  }
2208
2243
  function bySecondArg(_item, index) {
@@ -2212,4 +2247,4 @@ function byFirstArg(name) {
2212
2247
  return name;
2213
2248
  }
2214
2249
  //#endregion
2215
- export { _attr_style_items as $, removeAndDestroyBranch as $t, _attr_input_value as A, AwaitCounter as An, _child_setup as At, _controllable_select as B, PlaceholderBranch as Bn, _id as Bt, _attr_details_or_dialog_open_script as C, withBranches as Cn, _var_resume as Ct, _attr_input_checkedValue_script as D, Setup as Dn, ready as Dt, _attr_input_checkedValue_default as E, Params as En, initEmbedded as Et, _attr_select_value as F, Load as Fn, _for_closure as Ft, _attr_class as G, _return as Gt, controllableRenders as H, TagVariable as Hn, _let as Ht, _attr_select_value_default as I, ParentBranch as In, _for_selector as It, _attr_class_names as J, _var as Jt, _attr_class_item as K, _return_change as Kt, _attr_select_value_script as L, PendingEffectScopes as Ln, _global_read as Lt, _attr_input_value_default as M, EndNode as Mn, _closure_get as Mt, _attr_input_value_dynamic_default as N, Gen$1 as Nn, _const as Nt, _attr_input_checked_default as O, Pending as On, readyFailed as Ot, _attr_input_value_script as P, Global as Pn, _el_read as Pt, _attr_style_item as Q, insertBranchBefore as Qt, _controllable_input as R, PendingEffects as Rn, _hoist as Rt, _attr_details_or_dialog_open_default as S, _call as Sn, _resumed as St, _attr_input_checkedValue as T, Owner as Tn, init as Tt, controllableScripts as U, _let_change as Ut, _controllable_textarea as V, StartNode as Vn, _if_closure as Vt, _attr as W, _or as Wt, _attr_nonce as X, _assert_init as Xt, _attr_content as Y, _var_change as Yt, _attr_style as Z, destroyBranch as Zt, installDynamicTagVar as _, forTo as _n, createAndSetupBranch as _t, _for_in as a, $signalReset as an, _html as at, runPendingEffects as b, _assert_hoist as bn, _dynamic_tag_var_resume as bt, _for_to as c, queueAsyncRender as cn, _style_shell as ct, _for_until_unkeyed as d, rendering as dn, _to_text as dt, syncGen as en, _attrs as et, _if as f, run as fn, insertChildNodes as ft, dynamicTagScript as g, forOf as gn, _content_resume as gt, addAwaitCounter as h, forIn as hn, _content_closures as ht, _dynamic_tag_content as i, $signal as in, _attrs_script as it, _attr_input_value_attribute_default as j, ClosestBranch as jn, _closure as jt, _attr_input_checked_script as k, Scope as kn, withLazy as kt, _for_to_unkeyed as l, queueEffect as ln, _text as lt, _try as m, runId as mn, _content as mt, _await_promise as n, PLACEHOLDER_DISMISS_REGISTER_ID as nn, _attrs_partial as nt, _for_of as o, installCatch as on, _lifecycle as ot, _show as p, runEffects as pn, toInsertNode as pt, _attr_class_items as q, _script as qt, _dynamic_tag as r, _on as rn, _attrs_partial_content as rt, _for_of_unkeyed as s, prepareEffects as sn, _style_rule_item as st, _await_content as t, DYNAMIC_TAG_SCRIPT_REGISTER_ID as tn, _attrs_content as tt, _for_until as u, queueRender as un, _text_content as ut, patchDynamicTag as v, forUntil as vn, createBranch as vt, _attr_input_checked as w, Clone as wn, getRegisteredWithScope as wt, _attr_details_or_dialog_open as x, _hoist_read_error as xn, _el as xt, renderCatch as y, _assert_class_toggles as yn, setupBranch as yt, _controllable_open as z, PendingRenders as zn, _hoist_resume as zt };
2250
+ export { _attr_style_item as $, destroyBranch as $t, _attr_input_checked_script as A, Params as An, readyFailed as At, _controllable_open as B, Load as Bn, _hoist as Bt, _attr_details_or_dialog_open_default as C, _assert_class_toggles as Cn, _el as Ct, _attr_input_checkedValue_default as D, withBranches as Dn, init as Dt, _attr_input_checkedValue as E, _call as En, getRegisteredWithScope as Et, _attr_input_value_script as F, BranchRenders as Fn, _const as Ft, _attr as G, PlaceholderBranch as Gn, _let_change as Gt, _controllable_textarea as H, PendingEffectScopes as Hn, _id as Ht, _attr_select_value as I, ClosestBranch as In, _el_read as It, _attr_class_items as J, _return_change as Jt, _attr_class as K, StartNode as Kn, _or as Kt, _attr_select_value_default as L, EndNode as Ln, _for_closure as Lt, _attr_input_value_attribute_default as M, Pending as Mn, _child_setup as Mt, _attr_input_value_default as N, Scope as Nn, _closure as Nt, _attr_input_checkedValue_script as O, Clone as On, initEmbedded as Ot, _attr_input_value_dynamic_default as P, AwaitCounter as Pn, _closure_get as Pt, _attr_style as Q, _assert_init as Qt, _attr_select_value_script as R, Gen$1 as Rn, _for_selector as Rt, _attr_details_or_dialog_open as S, forUntil as Sn, _dynamic_tag_var_resume as St, _attr_input_checked as T, _hoist_read_error as Tn, _var_resume as Tt, controllableRenders as U, PendingEffects as Un, _if_closure as Ut, _controllable_select as V, ParentBranch as Vn, _hoist_resume as Vt, controllableScripts as W, PendingRenders as Wn, _let as Wt, _attr_content as X, _var as Xt, _attr_class_names as Y, _script as Yt, _attr_nonce as Z, _var_change as Zt, dynamicTagScript as _, runEffects as _n, _content_resume as _t, _for_in as a, _on as an, _attrs_script as at, renderCatch as b, forOf as bn, setParentBranch as bt, _for_to as c, createBranchRenders as cn, _style_rule_item as ct, _for_until_unkeyed as d, prepareEffects as dn, _text_content as dt, insertBranchBefore as en, _attr_style_items as et, _if as f, queueAsyncRender as fn, _to_text as ft, bindTagVar as g, run as gn, _content_closures as gt, addAwaitCounter as h, rendering as hn, _content as ht, _dynamic_tag_content as i, PLACEHOLDER_DISMISS_REGISTER_ID as in, _attrs_partial_content as it, _attr_input_value as j, Setup as jn, withLazy as jt, _attr_input_checked_default as k, Owner as kn, ready as kt, _for_to_unkeyed as l, installBranchRenders as ln, _style_shell as lt, _try as m, queueRender as mn, toInsertNode as mt, _await_promise as n, syncGen as nn, _attrs_content as nt, _for_of as o, $signal as on, _html as ot, _show as p, queueEffect as pn, insertChildNodes as pt, _attr_class_item as q, TagVariable as qn, _return as qt, _dynamic_tag as r, DYNAMIC_TAG_SCRIPT_REGISTER_ID as rn, _attrs_partial as rt, _for_of_unkeyed as s, $signalReset as sn, _lifecycle as st, _await_content as t, removeAndDestroyBranch as tn, _attrs as tt, _for_until as u, installCatch as un, _text as ut, installDynamicTagVar as v, runId as vn, createAndSetupBranch as vt, _attr_details_or_dialog_open_script as w, _assert_hoist as wn, _resumed as wt, runPendingEffects as x, forTo as xn, setupBranch as xt, patchDynamicTag as y, forIn as yn, createBranch as yt, _controllable_input as z, Global as zn, _global_read 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-BLbR0hEx.js");
3
+ const require_control_flow = require("./dom-C7F3yZTh.js");
4
4
  //#region src/common/attr-tag.ts
5
5
  const empty = [];
6
6
  const rest = Symbol("Attribute Tag");
@@ -223,6 +223,14 @@ function _load_setup(load) {
223
223
  }
224
224
  };
225
225
  }
226
+ function _load_setup_var(load) {
227
+ const setup = _load_setup(load);
228
+ return (owner, child, marker) => {
229
+ require_control_flow.setParentBranch(child, child[require_control_flow.ClosestBranch]);
230
+ require_control_flow.bindTagVar(owner, child, child["#Id"]);
231
+ setup(owner, child, marker);
232
+ };
233
+ }
226
234
  function insertLoaded(renderer, branch, marker, awaitCounter) {
227
235
  const parent = () => marker.parentNode, values = branch[require_control_flow.Load], clone = () => {
228
236
  require_control_flow.syncGen(branch);
@@ -386,6 +394,7 @@ exports._load_idle_trigger = _load_idle_trigger;
386
394
  exports._load_media_trigger = _load_media_trigger;
387
395
  exports._load_race_trigger = _load_race_trigger;
388
396
  exports._load_setup = _load_setup;
397
+ exports._load_setup_var = _load_setup_var;
389
398
  exports._load_signal = _load_signal;
390
399
  exports._load_template = _load_template;
391
400
  exports._load_visible_trigger = _load_visible_trigger;
@@ -1,4 +1,4 @@
1
- import { $ as _attr_style_items, $t as removeAndDestroyBranch, A as _attr_input_value, At as _child_setup, B as _controllable_select, Bt as _id, C as _attr_details_or_dialog_open_script, Ct as _var_resume, D as _attr_input_checkedValue_script, Dn as Setup, Dt as ready, E as _attr_input_checkedValue_default, En as Params, Et as initEmbedded, F as _attr_select_value, Fn as Load, Ft as _for_closure, G as _attr_class, Gt as _return, Hn as TagVariable, Ht as _let, I as _attr_select_value_default, It as _for_selector, J as _attr_class_names, Jt as _var, K as _attr_class_item, Kt as _return_change, L as _attr_select_value_script, Lt as _global_read, M as _attr_input_value_default, Mn as EndNode, Mt as _closure_get, N as _attr_input_value_dynamic_default, Nt as _const, O as _attr_input_checked_default, Ot as readyFailed, P as _attr_input_value_script, Pn as Global, Pt as _el_read, Q as _attr_style_item, Qt as insertBranchBefore, R as _controllable_input, Rt as _hoist, S as _attr_details_or_dialog_open_default, Sn as _call, St as _resumed, T as _attr_input_checkedValue, Tn as Owner, Tt as init, Ut as _let_change, V as _controllable_textarea, Vn as StartNode, Vt as _if_closure, W as _attr, Wt as _or, X as _attr_nonce, Xt as _assert_init, Y as _attr_content, Yt as _var_change, Z as _attr_style, Zt as destroyBranch, _n as forTo, _t as createAndSetupBranch, a as _for_in, an as $signalReset, at as _html, bn as _assert_hoist, bt as _dynamic_tag_var_resume, c as _for_to, cn as queueAsyncRender, ct as _style_shell, d as _for_until_unkeyed, dn as rendering, dt as _to_text, en as syncGen, et as _attrs, f as _if, fn as run, ft as insertChildNodes, gn as forOf, gt as _content_resume, h as addAwaitCounter, hn as forIn, ht as _content_closures, i as _dynamic_tag_content, in as $signal, it as _attrs_script, j as _attr_input_value_attribute_default, jt as _closure, k as _attr_input_checked_script, l as _for_to_unkeyed, ln as queueEffect, lt as _text, m as _try, mn as runId, mt as _content, n as _await_promise, nt as _attrs_partial, o as _for_of, ot as _lifecycle, p as _show, pn as runEffects, pt as toInsertNode, q as _attr_class_items, qt as _script, r as _dynamic_tag, rn as _on, rt as _attrs_partial_content, s as _for_of_unkeyed, sn as prepareEffects, st as _style_rule_item, t as _await_content, tt as _attrs_content, u as _for_until, un as queueRender, ut as _text_content, v as patchDynamicTag, vn as forUntil, vt as createBranch, w as _attr_input_checked, wn as Clone, wt as getRegisteredWithScope, x as _attr_details_or_dialog_open, xn as _hoist_read_error, xt as _el, y as renderCatch, yn as _assert_class_toggles, yt as setupBranch, z as _controllable_open, zt as _hoist_resume } from "./dom-Cii0IA92.mjs";
1
+ import { $ as _attr_style_item, $t as destroyBranch, A as _attr_input_checked_script, An as Params, At as readyFailed, B as _controllable_open, Bn as Load, Bt as _hoist, C as _attr_details_or_dialog_open_default, Cn as _assert_class_toggles, Ct as _el, D as _attr_input_checkedValue_default, Dt as init, E as _attr_input_checkedValue, En as _call, Et as getRegisteredWithScope, F as _attr_input_value_script, Ft as _const, G as _attr, Gt as _let_change, H as _controllable_textarea, Ht as _id, I as _attr_select_value, In as ClosestBranch, It as _el_read, J as _attr_class_items, Jt as _return_change, K as _attr_class, Kn as StartNode, Kt as _or, L as _attr_select_value_default, Ln as EndNode, Lt as _for_closure, M as _attr_input_value_attribute_default, Mt as _child_setup, N as _attr_input_value_default, Nt as _closure, O as _attr_input_checkedValue_script, On as Clone, Ot as initEmbedded, P as _attr_input_value_dynamic_default, Pt as _closure_get, Q as _attr_style, Qt as _assert_init, R as _attr_select_value_script, Rt as _for_selector, S as _attr_details_or_dialog_open, Sn as forUntil, St as _dynamic_tag_var_resume, T as _attr_input_checked, Tn as _hoist_read_error, Tt as _var_resume, Ut as _if_closure, V as _controllable_select, Vt as _hoist_resume, Wt as _let, X as _attr_content, Xt as _var, Y as _attr_class_names, Yt as _script, Z as _attr_nonce, Zt as _var_change, _n as runEffects, _t as _content_resume, a as _for_in, an as _on, at as _attrs_script, b as renderCatch, bn as forOf, bt as setParentBranch, c as _for_to, ct as _style_rule_item, d as _for_until_unkeyed, dn as prepareEffects, dt as _text_content, en as insertBranchBefore, et as _attr_style_items, f as _if, fn as queueAsyncRender, ft as _to_text, g as bindTagVar, gn as run, gt as _content_closures, h as addAwaitCounter, hn as rendering, ht as _content, i as _dynamic_tag_content, it as _attrs_partial_content, j as _attr_input_value, jn as Setup, k as _attr_input_checked_default, kn as Owner, kt as ready, l as _for_to_unkeyed, lt as _style_shell, m as _try, mn as queueRender, mt as toInsertNode, n as _await_promise, nn as syncGen, nt as _attrs_content, o as _for_of, on as $signal, ot as _html, p as _show, pn as queueEffect, pt as insertChildNodes, q as _attr_class_item, qn as TagVariable, qt as _return, r as _dynamic_tag, rt as _attrs_partial, s as _for_of_unkeyed, sn as $signalReset, st as _lifecycle, t as _await_content, tn as removeAndDestroyBranch, tt as _attrs, u as _for_until, ut as _text, vn as runId, vt as createAndSetupBranch, w as _attr_details_or_dialog_open_script, wn as _assert_hoist, wt as _resumed, xn as forTo, xt as setupBranch, y as patchDynamicTag, yn as forIn, yt as createBranch, z as _controllable_input, zn as Global, zt as _global_read } from "./dom-uEY0J_H9.mjs";
2
2
  //#region src/common/attr-tag.ts
3
3
  const empty = [];
4
4
  const rest = Symbol("Attribute Tag");
@@ -221,6 +221,14 @@ function _load_setup(load) {
221
221
  }
222
222
  };
223
223
  }
224
+ function _load_setup_var(load) {
225
+ const setup = _load_setup(load);
226
+ return (owner, child, marker) => {
227
+ setParentBranch(child, child[ClosestBranch]);
228
+ bindTagVar(owner, child, child["#Id"]);
229
+ setup(owner, child, marker);
230
+ };
231
+ }
224
232
  function insertLoaded(renderer, branch, marker, awaitCounter) {
225
233
  const parent = () => marker.parentNode, values = branch[Load], clone = () => {
226
234
  syncGen(branch);
@@ -292,4 +300,4 @@ function getSelectorOrResolve(selector, resolve) {
292
300
  return document.querySelector(selector) || (console.warn(`A lazy load trigger could not find an element matching "${selector}". The module was loaded immediately.`), resolve());
293
301
  }
294
302
  //#endregion
295
- export { $signal, $signalReset, _assert_class_toggles, _assert_hoist, _assert_init, _attr, _attr_class, _attr_class_item, _attr_class_items, _attr_class_names, _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, _dynamic_tag_var_resume, _el, _el_read, _for_closure, _for_in, _for_of, _for_of_unkeyed, _for_selector, _for_to, _for_to_unkeyed, _for_until, _for_until_unkeyed, _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, _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 };
303
+ export { $signal, $signalReset, _assert_class_toggles, _assert_hoist, _assert_init, _attr, _attr_class, _attr_class_item, _attr_class_items, _attr_class_names, _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, _dynamic_tag_var_resume, _el, _el_read, _for_closure, _for_in, _for_of, _for_of_unkeyed, _for_selector, _for_to, _for_to_unkeyed, _for_until, _for_until_unkeyed, _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_setup_var, _load_signal, _load_template, _load_visible_trigger, _on, _or, _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 };
@@ -2325,9 +2325,12 @@ function _attr_content(nodeAccessor, scopeId, content, markerGuard) {
2325
2325
  const shouldResume = markerGuard !== 0;
2326
2326
  const render = normalizeServerRender(content);
2327
2327
  const branchId = _peek_scope_id();
2328
- if (render) {
2328
+ if (render) try {
2329
+ _set_scope_reason(shouldResume ? CLIENT_ALL : 0);
2329
2330
  if (shouldResume) withBranchId(branchId, render);
2330
2331
  else render();
2332
+ } finally {
2333
+ _set_scope_reason(void 0);
2331
2334
  }
2332
2335
  if (_peek_scope_id() !== branchId) {
2333
2336
  if (shouldResume) writeScope(scopeId, {
@@ -2672,7 +2675,7 @@ function tryBoundary(content, catchContent, branchId, renderers) {
2672
2675
  if (!renderersAtSettle) catchChunk.render(clearTryRenderers, branchId);
2673
2676
  const inOrder = catchChunk === catchChunk.render(catchContent, catchBoundary.reason);
2674
2677
  if (boundary.aborted) return;
2675
- if (bodyEnd.consumed || !inOrder) catchChunk.reorderStart = state.mark("*", branchId + "");
2678
+ if (bodyEnd.consumed || !inOrder) catchChunk.reorderBranch = branchId;
2676
2679
  if (bodyEnd.consumed) {
2677
2680
  catchChunk.reorderId = reorderId;
2678
2681
  state.reorder(catchChunk);
@@ -2880,7 +2883,7 @@ var Chunk = class Chunk {
2880
2883
  async = false;
2881
2884
  consumed = false;
2882
2885
  reorderId = null;
2883
- reorderStart = "";
2886
+ reorderBranch = 0;
2884
2887
  deferredReady = null;
2885
2888
  heldEffects = null;
2886
2889
  deferredReorder = null;
@@ -3138,7 +3141,8 @@ var Chunk = class Chunk {
3138
3141
  state.hasReorderRuntime = true;
3139
3142
  scripts = concatScripts(scripts, REORDER_RUNTIME_CODE + "(" + runtimePrefix + ")");
3140
3143
  }
3141
- const { reorderId, reorderStart } = reorderedChunk;
3144
+ const { reorderId, reorderBranch } = reorderedChunk;
3145
+ const rootBranch = reorderBranch || +reorderId;
3142
3146
  const readyReservations = [];
3143
3147
  let reorderHTML = "";
3144
3148
  let reorderEffects = "";
@@ -3166,7 +3170,8 @@ var Chunk = class Chunk {
3166
3170
  reorderScripts = concatScripts(reorderScripts, concatScripts(readyResumeScripts, cur.scripts));
3167
3171
  if (cur.async) {
3168
3172
  reorderHTML += state.mark("#", cur.reorderId = state.nextReorderId());
3169
- cur.reorderStart = reorderStart;
3173
+ const holeBranch = cur.context?.[kBranchId];
3174
+ cur.reorderBranch = holeBranch > rootBranch ? holeBranch : reorderBranch;
3170
3175
  (cur.boundary.pendingReorders ||= /* @__PURE__ */ new Set()).add(cur);
3171
3176
  cur.html = cur.effects = cur.scripts = cur.lastEffect = "";
3172
3177
  cur.next = null;
@@ -3182,7 +3187,7 @@ var Chunk = class Chunk {
3182
3187
  }
3183
3188
  for (const reservation of readyReservations) reordered = concatScripts(reordered, reservation);
3184
3189
  reordered = concatScripts(reordered, reorderScripts && runtimePrefix + ".j" + toAccess(reorderId) + "=_=>{" + reorderScripts + "}");
3185
- html += "<t hidden " + state.commentPrefix + "=" + reorderId + ">" + reorderStart + reorderHTML + "</t>";
3190
+ html += "<t hidden " + state.commentPrefix + "=" + reorderId + ">" + (reorderBranch ? state.mark("*", reorderBranch + "") : "") + reorderHTML + "</t>";
3186
3191
  }
3187
3192
  state.writeReorders = null;
3188
3193
  }
@@ -3447,7 +3452,7 @@ let _dynamic_tag = (scopeId, accessor, tag, inputOrArgs, content, inputIsArgs, m
3447
3452
  const beforeBranch = shouldResume ? deferBranchStart(chunk) : void 0;
3448
3453
  const render = () => {
3449
3454
  if (renderer) try {
3450
- _set_scope_reason(shouldResume && inputOrArgs !== void 0 ? CLIENT_ALL : 0);
3455
+ _set_scope_reason(shouldResume ? CLIENT_ALL : 0);
3451
3456
  return inputIsArgs ? renderer(...inputOrArgs) : renderer(content ? {
3452
3457
  ...inputOrArgs,
3453
3458
  content
@@ -3462,6 +3467,7 @@ let _dynamic_tag = (scopeId, accessor, tag, inputOrArgs, content, inputIsArgs, m
3462
3467
  if (beforeBranch !== void 0) {
3463
3468
  applyBranchStart(chunk, beforeBranch, rendered);
3464
3469
  _html(state.mark("]", scopeId + " " + accessor + (rendered ? " " + branchId : "")));
3470
+ if (renderer) _existing_scope(branchId);
3465
3471
  }
3466
3472
  }
3467
3473
  if (rendered) {
@@ -2323,9 +2323,12 @@ function _attr_content(nodeAccessor, scopeId, content, markerGuard) {
2323
2323
  const shouldResume = markerGuard !== 0;
2324
2324
  const render = normalizeServerRender(content);
2325
2325
  const branchId = _peek_scope_id();
2326
- if (render) {
2326
+ if (render) try {
2327
+ _set_scope_reason(shouldResume ? CLIENT_ALL : 0);
2327
2328
  if (shouldResume) withBranchId(branchId, render);
2328
2329
  else render();
2330
+ } finally {
2331
+ _set_scope_reason(void 0);
2329
2332
  }
2330
2333
  if (_peek_scope_id() !== branchId) {
2331
2334
  if (shouldResume) writeScope(scopeId, {
@@ -2670,7 +2673,7 @@ function tryBoundary(content, catchContent, branchId, renderers) {
2670
2673
  if (!renderersAtSettle) catchChunk.render(clearTryRenderers, branchId);
2671
2674
  const inOrder = catchChunk === catchChunk.render(catchContent, catchBoundary.reason);
2672
2675
  if (boundary.aborted) return;
2673
- if (bodyEnd.consumed || !inOrder) catchChunk.reorderStart = state.mark("*", branchId + "");
2676
+ if (bodyEnd.consumed || !inOrder) catchChunk.reorderBranch = branchId;
2674
2677
  if (bodyEnd.consumed) {
2675
2678
  catchChunk.reorderId = reorderId;
2676
2679
  state.reorder(catchChunk);
@@ -2878,7 +2881,7 @@ var Chunk = class Chunk {
2878
2881
  async = false;
2879
2882
  consumed = false;
2880
2883
  reorderId = null;
2881
- reorderStart = "";
2884
+ reorderBranch = 0;
2882
2885
  deferredReady = null;
2883
2886
  heldEffects = null;
2884
2887
  deferredReorder = null;
@@ -3136,7 +3139,8 @@ var Chunk = class Chunk {
3136
3139
  state.hasReorderRuntime = true;
3137
3140
  scripts = concatScripts(scripts, REORDER_RUNTIME_CODE + "(" + runtimePrefix + ")");
3138
3141
  }
3139
- const { reorderId, reorderStart } = reorderedChunk;
3142
+ const { reorderId, reorderBranch } = reorderedChunk;
3143
+ const rootBranch = reorderBranch || +reorderId;
3140
3144
  const readyReservations = [];
3141
3145
  let reorderHTML = "";
3142
3146
  let reorderEffects = "";
@@ -3164,7 +3168,8 @@ var Chunk = class Chunk {
3164
3168
  reorderScripts = concatScripts(reorderScripts, concatScripts(readyResumeScripts, cur.scripts));
3165
3169
  if (cur.async) {
3166
3170
  reorderHTML += state.mark("#", cur.reorderId = state.nextReorderId());
3167
- cur.reorderStart = reorderStart;
3171
+ const holeBranch = cur.context?.[kBranchId];
3172
+ cur.reorderBranch = holeBranch > rootBranch ? holeBranch : reorderBranch;
3168
3173
  (cur.boundary.pendingReorders ||= /* @__PURE__ */ new Set()).add(cur);
3169
3174
  cur.html = cur.effects = cur.scripts = cur.lastEffect = "";
3170
3175
  cur.next = null;
@@ -3180,7 +3185,7 @@ var Chunk = class Chunk {
3180
3185
  }
3181
3186
  for (const reservation of readyReservations) reordered = concatScripts(reordered, reservation);
3182
3187
  reordered = concatScripts(reordered, reorderScripts && runtimePrefix + ".j" + toAccess(reorderId) + "=_=>{" + reorderScripts + "}");
3183
- html += "<t hidden " + state.commentPrefix + "=" + reorderId + ">" + reorderStart + reorderHTML + "</t>";
3188
+ html += "<t hidden " + state.commentPrefix + "=" + reorderId + ">" + (reorderBranch ? state.mark("*", reorderBranch + "") : "") + reorderHTML + "</t>";
3184
3189
  }
3185
3190
  state.writeReorders = null;
3186
3191
  }
@@ -3445,7 +3450,7 @@ let _dynamic_tag = (scopeId, accessor, tag, inputOrArgs, content, inputIsArgs, m
3445
3450
  const beforeBranch = shouldResume ? deferBranchStart(chunk) : void 0;
3446
3451
  const render = () => {
3447
3452
  if (renderer) try {
3448
- _set_scope_reason(shouldResume && inputOrArgs !== void 0 ? CLIENT_ALL : 0);
3453
+ _set_scope_reason(shouldResume ? CLIENT_ALL : 0);
3449
3454
  return inputIsArgs ? renderer(...inputOrArgs) : renderer(content ? {
3450
3455
  ...inputOrArgs,
3451
3456
  content
@@ -3460,6 +3465,7 @@ let _dynamic_tag = (scopeId, accessor, tag, inputOrArgs, content, inputIsArgs, m
3460
3465
  if (beforeBranch !== void 0) {
3461
3466
  applyBranchStart(chunk, beforeBranch, rendered);
3462
3467
  _html(state.mark("]", scopeId + " " + accessor + (rendered ? " " + branchId : "")));
3468
+ if (renderer) _existing_scope(branchId);
3463
3469
  }
3464
3470
  }
3465
3471
  if (rendered) {
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
- let require_control_flow = require("../dom-B8UEYzOz.js"), handlePendingTry = (fn, scope, branch) => {
2
+ let require_control_flow = require("../dom-CtIT8Mpr.js"), handlePendingTry = (fn, scope, branch) => {
3
3
  for (; branch;) {
4
- if (branch.O?.i) return (scope.J ||= ((branch.JS ||= (branch.O.m && ((complete) => branch.O.c = () => complete() || require_control_flow.on(branch, require_control_flow.sn, require_control_flow.b))(branch.O.c), [])).push(scope), /* @__PURE__ */ new Set())).add(fn);
4
+ if (branch.O?.i) return (scope.J ||= ((branch.JS ||= (branch.O.m && ((complete) => branch.O.c = () => complete() || require_control_flow.un(branch, require_control_flow.dn, require_control_flow.x))(branch.O.c), [])).push(scope), /* @__PURE__ */ new Set())).add(fn);
5
5
  branch = branch.N;
6
6
  }
7
7
  };
8
8
  //#region src/dom/catch.feat.ts
9
- require_control_flow.in((effects) => {
9
+ require_control_flow.cn((effects) => {
10
10
  let i = 0, fn, scope, branch;
11
11
  for (; i < effects.length;) fn = effects[i++], scope = effects[i++], (branch = scope.F)?.H !== 0 && !handlePendingTry(fn, scope, branch) && fn(scope);
12
12
  }, (runRender) => (render) => {
@@ -18,7 +18,7 @@ require_control_flow.in((effects) => {
18
18
  }
19
19
  render.f = 0, runRender(render);
20
20
  } catch (error) {
21
- require_control_flow.y(render.b, error);
21
+ require_control_flow.b(render.b, error);
22
22
  }
23
23
  });
24
24
  //#endregion
@@ -4,7 +4,7 @@ let handlePendingTry = (fn, scope, branch) => {
4
4
  branch = branch.N;
5
5
  }
6
6
  };
7
- import { b as runPendingEffects, in as installCatch, on as queueAsyncRender, sn as queueEffect, y as renderCatch } from "../dom-BPjLe6YU.mjs";
7
+ import { b as renderCatch, cn as installCatch, dn as queueEffect, un as queueAsyncRender, x as runPendingEffects } from "../dom-DHg9YChM.mjs";
8
8
  //#region src/dom/catch.feat.ts
9
9
  installCatch((effects) => {
10
10
  let i = 0, fn, scope, branch;
@@ -13,8 +13,8 @@ export declare function rendererKey(renderer: Renderer | string | undefined): st
13
13
  export declare function patchDynamicTag(fn: <T extends typeof _dynamic_tag>(cond: T) => T): void;
14
14
  export declare let _dynamic_tag: (nodeAccessor: EncodedAccessor, getContent?: ((scope: Scope) => Renderer) | 0, getTagVar?: (() => Signal<unknown>) | 0, inputIsArgs?: 1) => Signal<Renderer | string | undefined>;
15
15
  export declare const _dynamic_tag_content: (nodeAccessor: EncodedAccessor) => Signal<Renderer | undefined>;
16
- export declare let bindNativeTagVar: undefined | ((branch: Scope) => void);
17
- export declare function installDynamicTagVar(bind: typeof bindNativeTagVar): void;
16
+ export declare let bindTagVar: undefined | ((scope: Scope, branch: BranchScope, scopeKey: number, renderer?: Renderer | string) => void);
17
+ export declare function installDynamicTagVar(bind: NonNullable<typeof bindTagVar>): void;
18
18
  export declare function dynamicTagScript(branch: Scope): void;
19
19
  export declare function setConditionalRenderer<T>(scope: Scope, nodeAccessor: Accessor, newRenderer: T, createBranch: ($global: Scope[typeof AccessorProp.Global], renderer: NonNullable<T>, parentScope: Scope, parentNode: ParentNode) => BranchScope): void;
20
20
  export declare const _for_of: (nodeAccessor: EncodedAccessor, template?: string | 0, walks?: string | 0, setup?: SetupFn | 0, params?: Signal<unknown>) => (scope: Scope, value: [all: unknown[], by?: ((item: unknown, index: number) => unknown) | undefined]) => void;
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
- let require_control_flow = require("../dom-B8UEYzOz.js");
3
- require_control_flow.U[0] = require_control_flow.k, require_control_flow.U[1] = require_control_flow.D, require_control_flow.U[2] = require_control_flow.P;
2
+ let require_control_flow = require("../dom-CtIT8Mpr.js");
3
+ require_control_flow.W[0] = require_control_flow.A, require_control_flow.W[1] = require_control_flow.O, require_control_flow.W[2] = require_control_flow.F;
4
4
  //#endregion
@@ -1,3 +1,3 @@
1
- import { D as _attr_input_checkedValue_script, P as _attr_input_value_script, U as controllableScripts, k as _attr_input_checked_script } from "../dom-BPjLe6YU.mjs";
1
+ import { A as _attr_input_checked_script, F as _attr_input_value_script, O as _attr_input_checkedValue_script, W as controllableScripts } from "../dom-DHg9YChM.mjs";
2
2
  controllableScripts[0] = _attr_input_checked_script, controllableScripts[1] = _attr_input_checkedValue_script, controllableScripts[2] = _attr_input_value_script;
3
3
  //#endregion
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- let require_control_flow = require("../dom-B8UEYzOz.js");
2
+ let require_control_flow = require("../dom-CtIT8Mpr.js");
3
3
  //#region src/dom/controllable-open.feat.ts
4
- require_control_flow.U[4] = require_control_flow.C;
4
+ require_control_flow.W[4] = require_control_flow.w;
5
5
  //#endregion
@@ -1,4 +1,4 @@
1
- import { C as _attr_details_or_dialog_open_script, U as controllableScripts } from "../dom-BPjLe6YU.mjs";
1
+ import { W as controllableScripts, w as _attr_details_or_dialog_open_script } from "../dom-DHg9YChM.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
- let require_control_flow = require("../dom-B8UEYzOz.js");
2
+ let require_control_flow = require("../dom-CtIT8Mpr.js");
3
3
  //#region src/dom/controllable-select.feat.ts
4
- require_control_flow.U[3] = require_control_flow.L;
4
+ require_control_flow.W[3] = require_control_flow.R;
5
5
  //#endregion
@@ -1,4 +1,4 @@
1
- import { L as _attr_select_value_script, U as controllableScripts } from "../dom-BPjLe6YU.mjs";
1
+ import { R as _attr_select_value_script, W as controllableScripts } from "../dom-DHg9YChM.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
- let require_control_flow = require("../dom-B8UEYzOz.js");
2
+ let require_control_flow = require("../dom-CtIT8Mpr.js");
3
3
  //#region src/dom/controllable-textarea.feat.ts
4
- require_control_flow.U[2] = require_control_flow.P;
4
+ require_control_flow.W[2] = require_control_flow.F;
5
5
  //#endregion
@@ -1,4 +1,4 @@
1
- import { P as _attr_input_value_script, U as controllableScripts } from "../dom-BPjLe6YU.mjs";
1
+ import { F as _attr_input_value_script, W as controllableScripts } from "../dom-DHg9YChM.mjs";
2
2
  //#region src/dom/controllable-textarea.feat.ts
3
3
  controllableScripts[2] = _attr_input_value_script;
4
4
  //#endregion
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
- let require_control_flow = require("../dom-B8UEYzOz.js");
3
- require("./controllable-input.feat.js"), require("./controllable-open.feat.js"), require("./controllable-select.feat.js"), require_control_flow.H.INPUT = require_control_flow.R, require_control_flow.H.TEXTAREA = require_control_flow.V, require_control_flow.H.SELECT = require_control_flow.B, require_control_flow.H.DETAILS = require_control_flow.H.DIALOG = require_control_flow.z;
2
+ let require_control_flow = require("../dom-CtIT8Mpr.js");
3
+ require("./controllable-input.feat.js"), require("./controllable-open.feat.js"), require("./controllable-select.feat.js"), require_control_flow.U.INPUT = require_control_flow.z, require_control_flow.U.TEXTAREA = require_control_flow.H, require_control_flow.U.SELECT = require_control_flow.V, require_control_flow.U.DETAILS = require_control_flow.U.DIALOG = require_control_flow.B;
4
4
  //#endregion
@@ -1,4 +1,4 @@
1
- import { B as _controllable_select, H as controllableRenders, R as _controllable_input, V as _controllable_textarea, z as _controllable_open } from "../dom-BPjLe6YU.mjs";
1
+ import { B as _controllable_open, H as _controllable_textarea, U as controllableRenders, V as _controllable_select, z as _controllable_input } from "../dom-DHg9YChM.mjs";
2
2
  import "./controllable-input.feat.mjs";
3
3
  import "./controllable-open.feat.mjs";
4
4
  import "./controllable-select.feat.mjs";
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- let require_control_flow = require("../dom-B8UEYzOz.js");
2
+ let require_control_flow = require("../dom-CtIT8Mpr.js");
3
3
  //#region src/dom/dynamic-tag-script.feat.ts
4
- require_control_flow.St._d = require_control_flow.xn(require_control_flow.g);
4
+ require_control_flow.wt._d = require_control_flow.Tn(require_control_flow._);
5
5
  //#endregion
@@ -1,4 +1,4 @@
1
- import { St as _resumed, g as dynamicTagScript, xn as withBranches } from "../dom-BPjLe6YU.mjs";
1
+ import { Tn as withBranches, _ as dynamicTagScript, wt as _resumed } from "../dom-DHg9YChM.mjs";
2
2
  //#region src/dom/dynamic-tag-script.feat.ts
3
3
  _resumed._d = withBranches(dynamicTagScript);
4
4
  //#endregion
@@ -1,4 +1,6 @@
1
1
  "use strict";
2
- //#region src/dom/dynamic-tag-var.feat.ts
3
- require("../dom-B8UEYzOz.js")._((branch) => branch.T(() => branch.S));
2
+ let require_control_flow = require("../dom-CtIT8Mpr.js");
3
+ require_control_flow.sn(), require_control_flow.v((scope, branch, scopeKey, renderer) => {
4
+ branch.BR = require_control_flow.on(scope, scopeKey), typeof renderer == "string" && branch.T(() => branch.S);
5
+ });
4
6
  //#endregion
@@ -1,4 +1,5 @@
1
- import { _ as installDynamicTagVar } from "../dom-BPjLe6YU.mjs";
2
- //#region src/dom/dynamic-tag-var.feat.ts
3
- installDynamicTagVar((branch) => branch.T(() => branch.S));
1
+ import { on as createBranchRenders, sn as installBranchRenders, v as installDynamicTagVar } from "../dom-DHg9YChM.mjs";
2
+ installBranchRenders(), installDynamicTagVar((scope, branch, scopeKey, renderer) => {
3
+ branch.BR = createBranchRenders(scope, scopeKey), typeof renderer == "string" && branch.T(() => branch.S);
4
+ });
4
5
  //#endregion
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
  //#region src/dom/lazy.feat.ts
3
- require("../dom-B8UEYzOz.js").kt();
3
+ require("../dom-CtIT8Mpr.js").jt();
4
4
  //#endregion