@marko/runtime-tags 0.1.25 → 0.2.0

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.
@@ -32,6 +32,7 @@ export declare enum AccessorChar {
32
32
  LifecycleAbortController = "-",
33
33
  DynamicPlaceholderLastChild = "-",
34
34
  TagVariable = "/",
35
+ TagVariableChange = "@",
35
36
  ConditionalScope = "!",
36
37
  ConditionalRenderer = "(",
37
38
  LoopScopeArray = "!",
package/dist/debug/dom.js CHANGED
@@ -78,9 +78,11 @@ __export(dom_exports, {
78
78
  resetAbortSignal: () => resetAbortSignal,
79
79
  run: () => run,
80
80
  setTagVar: () => setTagVar,
81
+ setTagVarChange: () => setTagVarChange,
81
82
  state: () => state,
82
83
  styleAttr: () => styleAttr,
83
84
  tagVarSignal: () => tagVarSignal,
85
+ tagVarSignalChange: () => tagVarSignalChange,
84
86
  value: () => value
85
87
  });
86
88
  module.exports = __toCommonJS(dom_exports);
@@ -606,6 +608,10 @@ function setTagVar(scope, childAccessor, tagVarSignal2) {
606
608
  scope[childAccessor]["/" /* TagVariable */] = (valueOrOp) => tagVarSignal2(scope, valueOrOp);
607
609
  }
608
610
  var tagVarSignal = (scope, valueOrOp) => scope["/" /* TagVariable */]?.(valueOrOp);
611
+ function setTagVarChange(scope, changeHandler) {
612
+ scope["@" /* TagVariableChange */] = changeHandler;
613
+ }
614
+ var tagVarSignalChange = (scope, value2) => scope["@" /* TagVariableChange */]?.(value2);
609
615
  var renderBodyClosures = (renderBody, childScope, op) => {
610
616
  const signals = renderBody?.___closureSignals;
611
617
  if (signals) {
@@ -519,6 +519,10 @@ function setTagVar(scope, childAccessor, tagVarSignal2) {
519
519
  scope[childAccessor]["/" /* TagVariable */] = (valueOrOp) => tagVarSignal2(scope, valueOrOp);
520
520
  }
521
521
  var tagVarSignal = (scope, valueOrOp) => scope["/" /* TagVariable */]?.(valueOrOp);
522
+ function setTagVarChange(scope, changeHandler) {
523
+ scope["@" /* TagVariableChange */] = changeHandler;
524
+ }
525
+ var tagVarSignalChange = (scope, value2) => scope["@" /* TagVariableChange */]?.(value2);
522
526
  var renderBodyClosures = (renderBody, childScope, op) => {
523
527
  const signals = renderBody?.___closureSignals;
524
528
  if (signals) {
@@ -2063,8 +2067,10 @@ export {
2063
2067
  resetAbortSignal,
2064
2068
  run,
2065
2069
  setTagVar,
2070
+ setTagVarChange,
2066
2071
  state,
2067
2072
  styleAttr,
2068
2073
  tagVarSignal,
2074
+ tagVarSignalChange,
2069
2075
  value
2070
2076
  };
@@ -29,6 +29,8 @@ export declare function childClosures(closureSignals: IntersectionSignal[], chil
29
29
  export declare function dynamicSubscribers(valueAccessor: Accessor): (scope: Scope, op: SignalOp) => void;
30
30
  export declare function setTagVar(scope: Scope, childAccessor: Accessor, tagVarSignal: ValueSignal): void;
31
31
  export declare const tagVarSignal: (scope: Scope, valueOrOp: unknown | SignalOp) => any;
32
+ export declare function setTagVarChange(scope: Scope, changeHandler: (value: unknown) => void): void;
33
+ export declare const tagVarSignalChange: (scope: Scope, value: unknown) => any;
32
34
  export declare const renderBodyClosures: (renderBody: Renderer | string | undefined, childScope: Scope, op: SignalOp) => void;
33
35
  export declare const inMany: (scopes: Scope[], op: SignalOp, signal: IntersectionSignal) => void;
34
36
  export declare function nextTagId({ $global }: Scope): string;
package/dist/dom.d.ts CHANGED
@@ -11,5 +11,5 @@ export { run } from "./dom/queue";
11
11
  export { createRenderer, createRendererWithOwner, dynamicTagAttrs, } from "./dom/renderer";
12
12
  export { init, nodeRef, register, registerBoundSignal, registerSubscriber, } from "./dom/resume";
13
13
  export { createScope } from "./dom/scope";
14
- export { childClosures, closure, dynamicClosure, dynamicSubscribers, effect, inChild, intersection, intersections, nextTagId, setTagVar, state, tagVarSignal, value, } from "./dom/signals";
14
+ export { childClosures, closure, dynamicClosure, dynamicSubscribers, effect, inChild, intersection, intersections, nextTagId, setTagVar, setTagVarChange, state, tagVarSignal, tagVarSignalChange, value, } from "./dom/signals";
15
15
  export { createTemplate } from "./dom/template";
package/dist/dom.js CHANGED
@@ -75,9 +75,11 @@ __export(dom_exports, {
75
75
  resetAbortSignal: () => resetAbortSignal,
76
76
  run: () => run,
77
77
  setTagVar: () => setTagVar,
78
+ setTagVarChange: () => setTagVarChange,
78
79
  state: () => state,
79
80
  styleAttr: () => styleAttr,
80
81
  tagVarSignal: () => tagVarSignal,
82
+ tagVarSignalChange: () => tagVarSignalChange,
81
83
  value: () => value
82
84
  });
83
85
  module.exports = __toCommonJS(dom_exports);
@@ -381,7 +383,11 @@ function dynamicSubscribers(valueAccessor) {
381
383
  function setTagVar(scope, childAccessor, tagVarSignal2) {
382
384
  scope[childAccessor]["/" /* TagVariable */] = (valueOrOp) => tagVarSignal2(scope, valueOrOp);
383
385
  }
384
- var tagVarSignal = (scope, valueOrOp) => scope["/" /* TagVariable */]?.(valueOrOp), renderBodyClosures = (renderBody, childScope, op) => {
386
+ var tagVarSignal = (scope, valueOrOp) => scope["/" /* TagVariable */]?.(valueOrOp);
387
+ function setTagVarChange(scope, changeHandler) {
388
+ scope["@" /* TagVariableChange */] = changeHandler;
389
+ }
390
+ var tagVarSignalChange = (scope, value2) => scope["@" /* TagVariableChange */]?.(value2), renderBodyClosures = (renderBody, childScope, op) => {
385
391
  let signals = renderBody?.c;
386
392
  if (signals)
387
393
  for (let signal of signals)
package/dist/dom.mjs CHANGED
@@ -297,7 +297,11 @@ function dynamicSubscribers(valueAccessor) {
297
297
  function setTagVar(scope, childAccessor, tagVarSignal2) {
298
298
  scope[childAccessor]["/" /* TagVariable */] = (valueOrOp) => tagVarSignal2(scope, valueOrOp);
299
299
  }
300
- var tagVarSignal = (scope, valueOrOp) => scope["/" /* TagVariable */]?.(valueOrOp), renderBodyClosures = (renderBody, childScope, op) => {
300
+ var tagVarSignal = (scope, valueOrOp) => scope["/" /* TagVariable */]?.(valueOrOp);
301
+ function setTagVarChange(scope, changeHandler) {
302
+ scope["@" /* TagVariableChange */] = changeHandler;
303
+ }
304
+ var tagVarSignalChange = (scope, value2) => scope["@" /* TagVariableChange */]?.(value2), renderBodyClosures = (renderBody, childScope, op) => {
301
305
  let signals = renderBody?.c;
302
306
  if (signals)
303
307
  for (let signal of signals)
@@ -1328,8 +1332,10 @@ export {
1328
1332
  resetAbortSignal,
1329
1333
  run,
1330
1334
  setTagVar,
1335
+ setTagVarChange,
1331
1336
  state,
1332
1337
  styleAttr,
1333
1338
  tagVarSignal,
1339
+ tagVarSignalChange,
1334
1340
  value
1335
1341
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@marko/runtime-tags",
3
- "version": "0.1.25",
3
+ "version": "0.2.0",
4
4
  "description": "Optimized runtime for Marko templates.",
5
5
  "keywords": [
6
6
  "api",