@repobit/dex-store-elements 1.2.2 → 1.2.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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,20 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.2.3](https://github.com/bitdefender/dex-core/compare/@repobit/dex-store-elements@1.2.2...@repobit/dex-store-elements@1.2.3) (2025-10-20)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **DEX-21811:** actions now can wait for renderers ([5b6d7dc](https://github.com/bitdefender/dex-core/commit/5b6d7dc0e34d3f45fdf9960fcbc86a21ff59fe8c))
12
+ * **DEX-21811:** add catch for methods that change the dom ([593c874](https://github.com/bitdefender/dex-core/commit/593c874fc65d224bee28cacb56f56e640e304ea0))
13
+ * **DEX-21811:** await eta template ([656bbe6](https://github.com/bitdefender/dex-core/commit/656bbe6e9d477a02dea45a0f6e8fd853bca05189))
14
+ * **DEX-21811:** context node now is isolated island ([b5e66ce](https://github.com/bitdefender/dex-core/commit/b5e66cec465849c9c79dec5464d8dc2e20fc1961))
15
+ * **DEX-21811:** eta template now listen dom changes ([8fd62b2](https://github.com/bitdefender/dex-core/commit/8fd62b2948cb33ef776aff0f1b7483ed559b0437))
16
+ * **DEX-21811:** fix action combination ([f26a739](https://github.com/bitdefender/dex-core/commit/f26a7399d08dbc811214b9fd7ab6469e59cc878f))
17
+
18
+
19
+
6
20
  ## [1.2.2](https://github.com/bitdefender/dex-core/compare/@repobit/dex-store-elements@1.2.1...@repobit/dex-store-elements@1.2.2) (2025-10-16)
7
21
 
8
22
 
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Lightweight HTML custom elements + attribute renderers for building dynamic pricing UIs on top of `@repobit/dex-store`.
4
4
 
5
- - Custom elements: `<bd-root>`, `<bd-product>`, `<bd-option>`, `<bd-state>`
5
+ - Custom elements: `<bd-root>`, `<bd-product>`, `<bd-option>`, `<bd-state>`, `<bd-context>`
6
6
  - Unified attribute-based renderers (no framework required)
7
7
  - Eta templates for text/HTML and attributes
8
8
  - Single, merged data context across product, option and state
@@ -210,6 +210,20 @@ These attributes are available on `<bd-state>` and any element that extends it (
210
210
  - You can list multiple ids: `ignore-events="devicesBtn, subscriptionBtn"`.
211
211
  - `ignore-events-parent`
212
212
  - Ignores events received from ancestor providers and only reacts to DOM-bubbled events that originate within the current subtree.
213
+ - `<bd-context>` is a convenience element that defaults this behavior to enabled. It’s equivalent to `<bd-state ignore-events-parent>`.
214
+ - Example:
215
+ ```html
216
+ <bd-state store-name="outer">
217
+ <!-- Global action updates state here -->
218
+ <button data-store-action data-store-set-devices="25"></button>
219
+
220
+ <!-- Isolated island: only inner actions are observed -->
221
+ <bd-context store-name="island">
222
+ <button data-store-action data-store-set-devices="5"></button>
223
+ </bd-context>
224
+ </bd-state>
225
+ ```
226
+ In this setup, the inner `<bd-context>` ignores the outer button’s events.
213
227
  - `no-collect`
214
228
  - Turns off automatic option collection for aggregated state. Set this when you want the node to work locally without contributing to shared min/max computations (e.g., for preview widgets).
215
229
 
@@ -1 +1,2 @@
1
- export declare const button: (el: HTMLElement) => void;
1
+ import { ActionNode } from "./utilty.js";
2
+ export declare const button: (el: ActionNode) => void;
@@ -1,5 +1,5 @@
1
1
  import { ActionEvent, UpdateByDeltaEvent } from "../events/events.js";
2
- import { addEventListener, readClickAttributes } from "./utilty.js";
2
+ import { addEventListener, connectedCallback, readClickAttributes } from "./utilty.js";
3
3
  export const button = (el) => {
4
4
  const action = () => {
5
5
  const attr = readClickAttributes(el);
@@ -9,6 +9,7 @@ export const button = (el) => {
9
9
  }
10
10
  el.dispatchEvent(new ActionEvent(attr));
11
11
  };
12
+ connectedCallback(el);
12
13
  addEventListener(el, "click", action);
13
14
  };
14
15
  //# sourceMappingURL=action.button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"action.button.js","sourceRoot":"","sources":["../../../src/actions/action.button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEjE,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAe,EAAE,EAAE;IAExC,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAErC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACnB,EAAE,CAAC,aAAa,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAA;YAC9C,OAAO;QACT,CAAC;QAED,EAAE,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAA;IACzC,CAAC,CAAC;IAEF,gBAAgB,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AACxC,CAAC,CAAA"}
1
+ {"version":3,"file":"action.button.js","sourceRoot":"","sources":["../../../src/actions/action.button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAc,gBAAgB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEhG,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAc,EAAE,EAAE;IAEvC,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAErC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACnB,EAAE,CAAC,aAAa,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAA;YAC9C,OAAO;QACT,CAAC;QAED,EAAE,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAA;IACzC,CAAC,CAAC;IAEF,iBAAiB,CAAC,EAAE,CAAC,CAAC;IACtB,gBAAgB,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AACxC,CAAC,CAAA"}
@@ -1 +1,2 @@
1
- export declare const input: (el: HTMLInputElement) => void;
1
+ import { ActionNode } from "./utilty.js";
2
+ export declare const input: (el: ActionNode<HTMLInputElement>) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"action.input.js","sourceRoot":"","sources":["../../../src/actions/action.input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEjE,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,EAAoB,EAAE,EAAE;IAC5C,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAErC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACnB,EAAE,CAAC,aAAa,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,EAAE,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAA;IACzC,CAAC,CAAA;IAED,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAErC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACnB,EAAE,CAAC,aAAa,CAAC,IAAI,kBAAkB,CAAC;gBACtC,IAAI,EAAQ,IAAI,CAAC,IAAI;gBACrB,KAAK,EAAO,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC;gBAC5B,GAAG,EAAS,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC;gBAC1B,GAAG,EAAS,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC;gBAC1B,UAAU,EAAE,IAAI;gBAChB,OAAO,EAAK,IAAI,CAAC,OAAO;aACzB,CAAC,CAAC,CAAA;YAEH,OAAO;QACT,CAAC;IACH,CAAC,CAAA;IAED,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAChB,KAAK,UAAU,CAAC;QAChB,KAAK,OAAO;YACV,gBAAgB,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YACtC,MAAM;QACR,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ;YACX,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YACvC,MAAM;IACV,CAAC;AAEH,CAAC,CAAA"}
1
+ {"version":3,"file":"action.input.js","sourceRoot":"","sources":["../../../src/actions/action.input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAc,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE7E,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,EAAgC,EAAE,EAAE;IACxD,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAErC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACnB,EAAE,CAAC,aAAa,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,EAAE,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAA;IACzC,CAAC,CAAA;IAED,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAErC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACnB,EAAE,CAAC,aAAa,CAAC,IAAI,kBAAkB,CAAC;gBACtC,IAAI,EAAQ,IAAI,CAAC,IAAI;gBACrB,KAAK,EAAO,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC;gBAC5B,GAAG,EAAS,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC;gBAC1B,GAAG,EAAS,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC;gBAC1B,UAAU,EAAE,IAAI;gBAChB,OAAO,EAAK,IAAI,CAAC,OAAO;aACzB,CAAC,CAAC,CAAA;YAEH,OAAO;QACT,CAAC;IACH,CAAC,CAAA;IAED,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;QAChB,KAAK,UAAU,CAAC;QAChB,KAAK,OAAO;YACV,gBAAgB,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YACtC,MAAM;QACR,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ;YACX,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YACvC,MAAM;IACV,CAAC;AAEH,CAAC,CAAA"}
@@ -1 +1,2 @@
1
- export declare const select: (el: HTMLSelectElement) => void;
1
+ import { ActionNode } from "./utilty.js";
2
+ export declare const select: (el: ActionNode<HTMLSelectElement>) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"action.select.js","sourceRoot":"","sources":["../../../src/actions/action.select.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEjE,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAqB,EAAE,EAAE;IAE9C,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;QAExD,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,EAAE,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAA;QACzC,CAAC;IACH,CAAC,CAAC;IAEF,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AACzC,CAAC,CAAA"}
1
+ {"version":3,"file":"action.select.js","sourceRoot":"","sources":["../../../src/actions/action.select.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAc,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE7E,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAiC,EAAE,EAAE;IAE1D,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;QAExD,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,EAAE,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAA;QACzC,CAAC;IACH,CAAC,CAAC;IAEF,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AACzC,CAAC,CAAA"}
@@ -1,4 +1,4 @@
1
- import { DATA_ACTION_NODE, handleActionNode } from "./utilty.js";
1
+ import { DATA_ACTION_NODE, handleActionNode, cleanupActionNode } from "./utilty.js";
2
2
  const registerActionNodes = (document) => {
3
3
  // On page load, “announce” the ones already in the DOM:
4
4
  document
@@ -18,6 +18,17 @@ const registerActionNodes = (document) => {
18
18
  .querySelectorAll(DATA_ACTION_NODE)
19
19
  .forEach(handleActionNode);
20
20
  }
21
+ for (const node of Array.from(m.removedNodes)) {
22
+ if (!(node instanceof HTMLElement))
23
+ continue;
24
+ // check the node itself
25
+ if (node.matches(DATA_ACTION_NODE)) {
26
+ cleanupActionNode(node);
27
+ }
28
+ node
29
+ .querySelectorAll(DATA_ACTION_NODE)
30
+ .forEach(n => cleanupActionNode(n));
31
+ }
21
32
  }
22
33
  });
23
34
  // make sure to observe subtree so deep inserts fire here:
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/actions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE1E,MAAM,mBAAmB,GAAG,CAAC,QAAqB,EAAE,EAAE;IACtD,wDAAwD;IACtD,QAAQ;SACL,gBAAgB,CAAa,gBAAgB,CAAC;SAC9C,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE7B,kCAAkC;IAClC,MAAM,EAAE,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE;QACrC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC,CAAC,IAAI,YAAY,WAAW,CAAC;oBAAE,SAAS;gBAE7C,wBAAwB;gBACxB,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACnC,gBAAgB,CAAC,IAAkB,CAAC,CAAC;gBACvC,CAAC;gBAED,IAAI;qBACD,gBAAgB,CAAa,gBAAgB,CAAC;qBAC9C,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,0DAA0D;IAC1D,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE;QACnB,SAAS,EAAE,IAAI;QACf,OAAO,EAAI,IAAI;KAChB,CAAC,CAAC;AACL,CAAC,CAAA;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/actions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7F,MAAM,mBAAmB,GAAG,CAAC,QAAqB,EAAE,EAAE;IACtD,wDAAwD;IACtD,QAAQ;SACL,gBAAgB,CAAa,gBAAgB,CAAC;SAC9C,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE7B,kCAAkC;IAClC,MAAM,EAAE,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE;QACrC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC,CAAC,IAAI,YAAY,WAAW,CAAC;oBAAE,SAAS;gBAE7C,wBAAwB;gBACxB,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACnC,gBAAgB,CAAC,IAAkB,CAAC,CAAC;gBACvC,CAAC;gBAED,IAAI;qBACD,gBAAgB,CAAa,gBAAgB,CAAC;qBAC9C,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC/B,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC9C,IAAI,CAAC,CAAC,IAAI,YAAY,WAAW,CAAC;oBAAE,SAAS;gBAE7C,wBAAwB;gBACxB,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACnC,iBAAiB,CAAC,IAAkB,CAAC,CAAC;gBACxC,CAAC;gBAED,IAAI;qBACD,gBAAgB,CAAa,gBAAgB,CAAC;qBAC9C,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAe,CAAC,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,0DAA0D;IAC1D,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE;QACnB,SAAS,EAAE,IAAI;QACf,OAAO,EAAI,IAAI;KAChB,CAAC,CAAC;AACL,CAAC,CAAA;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
@@ -1,9 +1,15 @@
1
1
  import { Action, UpdateByDelta } from "../events/events.js";
2
2
  export type ActionAttributes = UpdateByDelta | Action;
3
- export type ActionNode = HTMLElement & {
3
+ type WithStore = {
4
4
  storeName: symbol;
5
+ updateComplete: Promise<void>;
5
6
  };
7
+ export type ActionNode<T extends HTMLElement = HTMLElement> = T & WithStore;
6
8
  export declare const DATA_ACTION_NODE = "[data-store-action]";
7
9
  export declare const readClickAttributes: (el: HTMLElement) => ActionAttributes;
10
+ export declare const connectedCallback: (el: ActionNode) => void;
11
+ export declare const disconnectedCallback: (el: ActionNode) => void;
8
12
  export declare const handleActionNode: (node: ActionNode) => void;
13
+ export declare const cleanupActionNode: (node: ActionNode) => void;
9
14
  export declare const addEventListener: (el: HTMLElement, type: "click" | "change", listener: (event: Event) => void) => void;
15
+ export {};
@@ -3,6 +3,8 @@ import { button } from "./action.button.js";
3
3
  import { input } from "./action.input.js";
4
4
  import { select } from "./action.select.js";
5
5
  export const DATA_ACTION_NODE = "[data-store-action]";
6
+ // Track initialized action nodes to ensure we don't wire them up twice
7
+ const ACTION_BOUND = new WeakSet();
6
8
  export const readClickAttributes = (el) => {
7
9
  const ds = el.dataset;
8
10
  const storeId = ds.storeId || undefined;
@@ -27,17 +29,26 @@ export const readClickAttributes = (el) => {
27
29
  };
28
30
  }
29
31
  };
30
- const addLogic = (el) => {
32
+ const addLogic = async (el) => {
33
+ if (el.updateComplete) {
34
+ await el.updateComplete;
35
+ }
31
36
  if (el instanceof HTMLInputElement) {
37
+ connectedCallback(el);
32
38
  input(el);
39
+ return;
33
40
  }
34
41
  if (el instanceof HTMLSelectElement) {
42
+ [...el.options]
43
+ .forEach(option => connectedCallback(option));
35
44
  select(el);
45
+ return;
36
46
  }
37
47
  //treat everything else as a button
38
48
  button(el);
49
+ connectedCallback(el);
39
50
  };
40
- const connectedCallback = (el) => {
51
+ export const connectedCallback = (el) => {
41
52
  if (!el.storeName) {
42
53
  el.storeName = Symbol("action");
43
54
  }
@@ -53,7 +64,7 @@ const connectedCallback = (el) => {
53
64
  }
54
65
  }
55
66
  };
56
- const disconnectedCallback = (el) => {
67
+ export const disconnectedCallback = (el) => {
57
68
  const attr = readClickAttributes(el);
58
69
  const noCollect = (el.dataset.storeNoCollect === '' || el.dataset.storeNoCollect === 'true');
59
70
  const shouldCollect = !noCollect;
@@ -73,15 +84,35 @@ const disconnectedCallback = (el) => {
73
84
  }
74
85
  };
75
86
  export const handleActionNode = (node) => {
87
+ if (ACTION_BOUND.has(node))
88
+ return;
89
+ ACTION_BOUND.add(node);
76
90
  addLogic(node);
77
- connectedCallback(node);
91
+ };
92
+ export const cleanupActionNode = (node) => {
93
+ // Fire disconnect events to clear collected actions
94
+ if (node instanceof HTMLSelectElement) {
95
+ [...node.options].forEach(option => disconnectedCallback(option));
96
+ }
97
+ else {
98
+ disconnectedCallback(node);
99
+ }
100
+ ACTION_BOUND.delete(node);
78
101
  };
79
102
  export const addEventListener = (el, type, listener) => {
80
103
  el.addEventListener(type, listener);
81
104
  const originalRemove = el.remove;
82
105
  el.remove = () => {
83
- disconnectedCallback(el);
106
+ if (el instanceof HTMLSelectElement) {
107
+ [...el.options]
108
+ .forEach(option => disconnectedCallback(option));
109
+ }
110
+ else {
111
+ disconnectedCallback(el);
112
+ }
84
113
  el.removeEventListener(type, listener);
114
+ // Allow re-initialization if element is re-attached later
115
+ ACTION_BOUND.delete(el);
85
116
  originalRemove.call(el);
86
117
  };
87
118
  };
@@ -1 +1 @@
1
- {"version":3,"file":"utilty.js","sourceRoot":"","sources":["../../../src/actions/utilty.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utilty.js","sourceRoot":"","sources":["../../../src/actions/utilty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,kBAAkB,EAAE,yBAAyB,EAAiB,MAAM,iBAAiB,CAAC;AACvG,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAQzC,MAAM,CAAC,MAAM,gBAAgB,GAAG,qBAAqB,CAAC;AAEtD,uEAAuE;AACvE,MAAM,YAAY,GAAG,IAAI,OAAO,EAAc,CAAC;AAE/C,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAAe,EAAoB,EAAE;IACvE,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC;IACtB,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,IAAI,SAAS,CAAC;IAExC,IAAI,cAAc,IAAI,EAAE,EAAE,CAAC;QACzB,OAAO;YACL,IAAI,EAAQ,EAAE,CAAC,YAAqC;YACpD,KAAK,EAAO,EAAE,CAAC,aAAa,KAAK,MAAM,IAAI,EAAE,CAAC,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC;YACpH,GAAG,EAAS,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,SAAS;YAC/C,GAAG,EAAS,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,SAAS;YAC/C,UAAU,EAAE,EAAE,CAAC,kBAAkB,KAAK,MAAM,IAAI,EAAE,CAAC,kBAAkB,KAAK,EAAE,IAAI,KAAK;YACrF,OAAO;SACR,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO;YACL,OAAO,EAAO,MAAM,CAAC,EAAE,CAAC,eAAe,CAAC,IAAI,SAAS;YACrD,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC,oBAAoB,CAAC,IAAI,SAAS;YAC1D,EAAE,EAAY,EAAE,CAAC,UAAU;YAC3B,QAAQ,EAAM,EAAE,CAAC,gBAAgB;YACjC,MAAM,EAAQ,EAAE,CAAC,cAAc,KAAK,MAAM,IAAI,EAAE,CAAC,cAAc,KAAK,EAAE,IAAI,KAAK;YAC/E,OAAO;SACR,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,KAAK,EAAE,EAAc,EAAE,EAAE;IACxC,IAAI,EAAE,CAAC,cAAc,EAAG,CAAC;QACvB,MAAM,EAAE,CAAC,cAAc,CAAC;IAC1B,CAAC;IAED,IAAI,EAAE,YAAY,gBAAgB,EAAE,CAAC;QACnC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QACtB,KAAK,CAAC,EAAE,CAAC,CAAC;QACV,OAAO;IACT,CAAC;IAED,IAAI,EAAE,YAAY,iBAAiB,EAAE,CAAC;QACpC,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;aACZ,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,MAA+B,CAAC,CAAC,CAAC;QACzE,MAAM,CAAC,EAAE,CAAC,CAAC;QACX,OAAO;IACT,CAAC;IAED,mCAAmC;IACnC,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,iBAAiB,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAAc,EAAE,EAAE;IAClD,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC;QAClB,EAAE,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,SAAS,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,KAAK,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC;IAC7F,MAAM,aAAa,GAAG,CAAC,SAAS,CAAC;IAEjC,IAAI,aAAa,EAAE,CAAC;QAClB,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACnB,EAAE,CAAC,aAAa,CAAC,IAAI,yBAAyB,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACxF,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,aAAa,CAAC,IAAI,kBAAkB,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,EAAc,EAAE,EAAE;IACrD,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,SAAS,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,KAAK,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC;IAC7F,MAAM,aAAa,GAAG,CAAC,SAAS,CAAC;IAEjC,IAAI,aAAa,EAAE,CAAC;QAClB,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;YAC3B,EAAE,CAAC,aAAa,CAAC,IAAI,yBAAyB,CAAC;gBAC7C,IAAI,EAAI,EAAE,CAAC,SAAS;gBACpB,MAAM,EAAE,IAAI;aACb,CAAC,CAAC,CAAC;QACN,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,aAAa,CAAC,IAAI,kBAAkB,CAAC;gBACtC,IAAI,EAAI,EAAE,CAAC,SAAS;gBACpB,MAAM,EAAE,IAAI;aACb,CAAC,CAAC,CAAC;QACN,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAgB,EAAE,EAAE;IACnD,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO;IACnC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAAgB,EAAE,EAAE;IACpD,oDAAoD;IACpD,IAAI,IAAI,YAAY,iBAAiB,EAAE,CAAC;QACtC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,oBAAoB,CAAC,MAA+B,CAAC,CAAC,CAAC;IAC7F,CAAC;SAAM,CAAC;QACN,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IACD,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAAe,EAAE,IAAwB,EAAE,QAAgC,EAAE,EAAE;IAC9G,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAEpC,MAAM,cAAc,GAAG,EAAE,CAAC,MAAM,CAAC;IAEjC,EAAE,CAAC,MAAM,GAAG,GAAG,EAAE;QACf,IAAI,EAAE,YAAY,iBAAiB,EAAE,CAAC;YACpC,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;iBACZ,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,oBAAoB,CAAC,MAA+B,CAAC,CAAC,CAAC;QAC9E,CAAC;aAAM,CAAC;YACN,oBAAoB,CAAC,EAAgB,CAAC,CAAC;QACzC,CAAC;QACD,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvC,0DAA0D;QAC1D,YAAY,CAAC,MAAM,CAAC,EAAgB,CAAC,CAAC;QACtC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC,CAAA;AAEH,CAAC,CAAA"}
@@ -57,4 +57,19 @@ export declare class CollectOptionEvent extends CustomEvent<CollectOption> {
57
57
  static readonly eventName = "store-collect-option";
58
58
  constructor(detail: CollectOption);
59
59
  }
60
+ /**
61
+ * Contextual child registration for updateComplete coordination.
62
+ * Children dispatch these to their nearest StateNode-like parent.
63
+ */
64
+ export type CollectChild = {
65
+ child: HTMLElement;
66
+ };
67
+ export declare class CollectChildEvent extends CustomEvent<CollectChild> {
68
+ static readonly eventName = "store-collect-child";
69
+ constructor(detail: CollectChild);
70
+ }
71
+ export declare class CollectChildRemovedEvent extends CustomEvent<CollectChild> {
72
+ static readonly eventName = "store-collect-child-removed";
73
+ constructor(detail: CollectChild);
74
+ }
60
75
  export type EventType = UpdateByDeltaEvent | ActionEvent;
@@ -53,4 +53,26 @@ export class CollectOptionEvent extends CustomEvent {
53
53
  });
54
54
  }
55
55
  }
56
+ export class CollectChildEvent extends CustomEvent {
57
+ static { this.eventName = "store-collect-child"; }
58
+ constructor(detail) {
59
+ super(CollectChildEvent.eventName, {
60
+ detail,
61
+ bubbles: true,
62
+ composed: true,
63
+ cancelable: true
64
+ });
65
+ }
66
+ }
67
+ export class CollectChildRemovedEvent extends CustomEvent {
68
+ static { this.eventName = "store-collect-child-removed"; }
69
+ constructor(detail) {
70
+ super(CollectChildRemovedEvent.eventName, {
71
+ detail,
72
+ bubbles: true,
73
+ composed: true,
74
+ cancelable: true
75
+ });
76
+ }
77
+ }
56
78
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/events/events.ts"],"names":[],"mappings":"AA6CA,MAAM,OAAO,kBAAmB,SAAQ,WAA0B;aAChD,cAAS,GAAG,oBAAoB,CAAC;IAEjD,YAAY,MAAqB;QAC/B,KAAK,CAAC,kBAAkB,CAAC,SAAS,EAAE;YAClC,MAAM;YACN,OAAO,EAAK,IAAI;YAChB,QAAQ,EAAI,IAAI;YAChB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;;AAGH,MAAM,OAAO,WAAY,SAAQ,WAAmB;aAClC,cAAS,GAAG,kBAAkB,CAAC;IAE/C,YAAY,MAAc;QACxB,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE;YAC3B,MAAM;YACN,OAAO,EAAK,IAAI;YAChB,QAAQ,EAAI,IAAI;YAChB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;;AAGH,MAAM,OAAO,kBAAmB,SAAQ,WAA0B;aAChD,cAAS,GAAG,sBAAsB,CAAC;IAEnD,YAAY,MAAqB;QAC/B,KAAK,CAAC,kBAAkB,CAAC,SAAS,EAAE;YAClC,MAAM;YACN,OAAO,EAAK,IAAI;YAChB,QAAQ,EAAI,IAAI;YAChB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;;AAGH,MAAM,OAAO,yBAA0B,SAAQ,WAAiC;aAC9D,cAAS,GAAG,+BAA+B,CAAC;IAE5D,YAAY,MAA4B;QACtC,KAAK,CAAC,yBAAyB,CAAC,SAAS,EAAE;YACzC,MAAM;YACN,OAAO,EAAK,IAAI;YAChB,QAAQ,EAAI,IAAI;YAChB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;;AAGH,MAAM,OAAO,kBAAmB,SAAQ,WAA0B;aAChD,cAAS,GAAG,sBAAsB,CAAC;IAEnD,YAAY,MAAqB;QAC/B,KAAK,CAAC,kBAAkB,CAAC,SAAS,EAAE;YAClC,MAAM;YACN,OAAO,EAAK,IAAI;YAChB,QAAQ,EAAI,IAAI;YAChB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/events/events.ts"],"names":[],"mappings":"AA6CA,MAAM,OAAO,kBAAmB,SAAQ,WAA0B;aAChD,cAAS,GAAG,oBAAoB,CAAC;IAEjD,YAAY,MAAqB;QAC/B,KAAK,CAAC,kBAAkB,CAAC,SAAS,EAAE;YAClC,MAAM;YACN,OAAO,EAAK,IAAI;YAChB,QAAQ,EAAI,IAAI;YAChB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;;AAGH,MAAM,OAAO,WAAY,SAAQ,WAAmB;aAClC,cAAS,GAAG,kBAAkB,CAAC;IAE/C,YAAY,MAAc;QACxB,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE;YAC3B,MAAM;YACN,OAAO,EAAK,IAAI;YAChB,QAAQ,EAAI,IAAI;YAChB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;;AAGH,MAAM,OAAO,kBAAmB,SAAQ,WAA0B;aAChD,cAAS,GAAG,sBAAsB,CAAC;IAEnD,YAAY,MAAqB;QAC/B,KAAK,CAAC,kBAAkB,CAAC,SAAS,EAAE;YAClC,MAAM;YACN,OAAO,EAAK,IAAI;YAChB,QAAQ,EAAI,IAAI;YAChB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;;AAGH,MAAM,OAAO,yBAA0B,SAAQ,WAAiC;aAC9D,cAAS,GAAG,+BAA+B,CAAC;IAE5D,YAAY,MAA4B;QACtC,KAAK,CAAC,yBAAyB,CAAC,SAAS,EAAE;YACzC,MAAM;YACN,OAAO,EAAK,IAAI;YAChB,QAAQ,EAAI,IAAI;YAChB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;;AAGH,MAAM,OAAO,kBAAmB,SAAQ,WAA0B;aAChD,cAAS,GAAG,sBAAsB,CAAC;IAEnD,YAAY,MAAqB;QAC/B,KAAK,CAAC,kBAAkB,CAAC,SAAS,EAAE;YAClC,MAAM;YACN,OAAO,EAAK,IAAI;YAChB,QAAQ,EAAI,IAAI;YAChB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;;AAWH,MAAM,OAAO,iBAAkB,SAAQ,WAAyB;aAC9C,cAAS,GAAG,qBAAqB,CAAC;IAElD,YAAY,MAAoB;QAC9B,KAAK,CAAC,iBAAiB,CAAC,SAAS,EAAE;YACjC,MAAM;YACN,OAAO,EAAK,IAAI;YAChB,QAAQ,EAAI,IAAI;YAChB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;;AAGH,MAAM,OAAO,wBAAyB,SAAQ,WAAyB;aACrD,cAAS,GAAG,6BAA6B,CAAC;IAE1D,YAAY,MAAoB;QAC9B,KAAK,CAAC,wBAAwB,CAAC,SAAS,EAAE;YACxC,MAAM;YACN,OAAO,EAAK,IAAI;YAChB,QAAQ,EAAI,IAAI;YAChB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC"}
@@ -1,3 +1,4 @@
1
1
  import { StateNode } from "./node.state.js";
2
2
  export declare class ContextNode extends StateNode {
3
+ ignoreEventsParent: boolean;
3
4
  }
@@ -1,4 +1,8 @@
1
1
  import { StateNode } from "./node.state.js";
2
2
  export class ContextNode extends StateNode {
3
+ constructor() {
4
+ super(...arguments);
5
+ this.ignoreEventsParent = true;
6
+ }
3
7
  }
4
8
  //# sourceMappingURL=node.context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"node.context.js","sourceRoot":"","sources":["../../../src/nodes/node.context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,MAAM,OAAO,WAAY,SAAQ,SAAS;CAAG"}
1
+ {"version":3,"file":"node.context.js","sourceRoot":"","sources":["../../../src/nodes/node.context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,MAAM,OAAO,WAAY,SAAQ,SAAS;IAA1C;;QACE,uBAAkB,GAAG,IAAI,CAAC;IAC5B,CAAC;CAAA"}
@@ -100,8 +100,16 @@ export class OptionNode extends StateNode {
100
100
  const option = opt ?? this._option;
101
101
  if (!option)
102
102
  return;
103
- const it = await toDSLContext({ option, product, state, derived });
104
- await this._renderEtaTemplates(it);
103
+ this._etaRenderInProgress = true;
104
+ try {
105
+ const it = await toDSLContext({ option, product, state, derived });
106
+ await this._renderEtaTemplates(it);
107
+ }
108
+ finally {
109
+ this._etaRenderInProgress = false;
110
+ // Resolve any waiters from super.getUpdateComplete()
111
+ this._notifyEtaIdle();
112
+ }
105
113
  },
106
114
  args: () => [this._option, this.state, this.product, this._derived]
107
115
  });
@@ -1 +1 @@
1
- {"version":3,"file":"node.option.js","sourceRoot":"","sources":["../../../src/nodes/node.option.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node.option.js","sourceRoot":"","sources":["../../../src/nodes/node.option.ts"],"names":[],"mappings":"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"}
@@ -64,8 +64,16 @@ export class ProductNode extends StateNode {
64
64
  task: async ([product, state, derived]) => {
65
65
  if (!product)
66
66
  return;
67
- const it = await toDSLContext({ product, state, derived });
68
- await this._renderEtaTemplates(it);
67
+ this._etaRenderInProgress = true;
68
+ try {
69
+ const it = await toDSLContext({ product, state, derived });
70
+ await this._renderEtaTemplates(it);
71
+ }
72
+ finally {
73
+ this._etaRenderInProgress = false;
74
+ // Resolve any waiters from super.getUpdateComplete()
75
+ this._notifyEtaIdle();
76
+ }
69
77
  },
70
78
  args: () => [this.product, this.state, this._derived]
71
79
  });
@@ -1 +1 @@
1
- {"version":3,"file":"node.product.js","sourceRoot":"","sources":["../../../src/nodes/node.product.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node.product.js","sourceRoot":"","sources":["../../../src/nodes/node.product.ts"],"names":[],"mappings":"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"}
@@ -71,6 +71,19 @@ export declare class StateNode extends LitElement {
71
71
  private _tplAttrTemplates;
72
72
  private _etaRenderTask;
73
73
  protected shouldRunEtaStateRender(): boolean;
74
+ protected _etaRenderInProgress: boolean;
75
+ private _etaRenderScheduled;
76
+ private _etaRenderNeedsRun;
77
+ private _etaRenderDebounce?;
78
+ private _etaRenderTriggeredByMutation;
79
+ private _etaRenderCurrentFromMutation;
80
+ private _slotMo?;
81
+ private _etaIdleWaiters;
82
+ private _contextualChildren;
83
+ private _isEtaIdle;
84
+ private _waitEtaSettled;
85
+ protected _notifyEtaIdle(): void;
86
+ private _scheduleEtaRenderFromMutation;
74
87
  private _isStateNodeElement;
75
88
  private _hasNestedStateNode;
76
89
  private _safeEtaRender;
@@ -81,6 +94,10 @@ export declare class StateNode extends LitElement {
81
94
  connectedCallback(): void;
82
95
  remove(): void;
83
96
  disconnectedCallback(): void;
97
+ private _onCollectChild;
98
+ private _onCollectChildRemoved;
99
+ private _announceAsContextualChild;
100
+ private _announceContextualChildRemoved;
84
101
  protected _eventChange(e: EventType): void;
85
102
  protected _forwardEvent(e?: eventContexType): void;
86
103
  private _collectOptionEvent;
@@ -8,7 +8,7 @@ import { derivedContext } from "../contexts/context.derived.js";
8
8
  import { eventContext } from "../contexts/context.event.js";
9
9
  import { stateContext } from "../contexts/context.state.js";
10
10
  import { storeContext } from "../contexts/context.store.js";
11
- import { ActionEvent, CollectActionEvent, CollectOptionEvent, CollectUpdateByDeltaEvent, UpdateByDeltaEvent } from "../events/events.js";
11
+ import { ActionEvent, CollectActionEvent, CollectChildEvent, CollectChildRemovedEvent, CollectOptionEvent, CollectUpdateByDeltaEvent, UpdateByDeltaEvent } from "../events/events.js";
12
12
  import { toDSLContext } from "../renders/context.js";
13
13
  import eta from "../templating/eta.js";
14
14
  import { consume, provide } from "@lit/context";
@@ -234,11 +234,54 @@ export class StateNode extends LitElement {
234
234
  if (!this.shouldRunEtaStateRender())
235
235
  return;
236
236
  // Provide 'it' derived from DSL context
237
- const it = await toDSLContext({ state, derived });
238
- await this._renderEtaTemplates(it);
237
+ // Mark cause (mutation-triggered vs state/derived-triggered)
238
+ this._etaRenderCurrentFromMutation = this._etaRenderTriggeredByMutation;
239
+ this._etaRenderTriggeredByMutation = false;
240
+ this._etaRenderInProgress = true;
241
+ try {
242
+ const it = await toDSLContext({ state, derived });
243
+ await this._renderEtaTemplates(it);
244
+ }
245
+ finally {
246
+ this._etaRenderInProgress = false;
247
+ this._etaRenderCurrentFromMutation = false;
248
+ // If mutations arrived while rendering, schedule one more pass
249
+ if (this._etaRenderNeedsRun) {
250
+ this._etaRenderNeedsRun = false;
251
+ this._scheduleEtaRenderFromMutation();
252
+ }
253
+ this._notifyEtaIdle();
254
+ }
239
255
  },
240
256
  args: () => [this.state, this._derived]
241
257
  });
258
+ // Track DOM changes in the light DOM (slot content) to rerun Eta when SPA rewrites
259
+ this._etaRenderInProgress = false;
260
+ this._etaRenderScheduled = false;
261
+ this._etaRenderNeedsRun = false;
262
+ this._etaRenderTriggeredByMutation = false;
263
+ this._etaRenderCurrentFromMutation = false;
264
+ this._etaIdleWaiters = [];
265
+ // Track nearest contextual children (register via CollectChildEvent)
266
+ this._contextualChildren = new Set();
267
+ this._onCollectChild = (e) => {
268
+ if (e.target === this)
269
+ return;
270
+ e.stopPropagation();
271
+ const { child } = e.detail;
272
+ if (child && child !== this) {
273
+ this._contextualChildren.add(child);
274
+ }
275
+ };
276
+ this._onCollectChildRemoved = (e) => {
277
+ if (e.target === this)
278
+ return;
279
+ e.stopPropagation();
280
+ const { child } = e.detail;
281
+ if (child && child !== this) {
282
+ this._contextualChildren.delete(child);
283
+ }
284
+ };
242
285
  }
243
286
  /**
244
287
  * all options computed by this node
@@ -250,6 +293,45 @@ export class StateNode extends LitElement {
250
293
  // Allow subclasses (e.g., OptionNode) to disable the base Eta render
251
294
  // when they provide their own option-specific rendering pipeline.
252
295
  shouldRunEtaStateRender() { return true; }
296
+ _isEtaIdle() {
297
+ return !this._etaRenderInProgress && !this._etaRenderDebounce && !this._etaRenderNeedsRun;
298
+ }
299
+ _waitEtaSettled() {
300
+ if (this._isEtaIdle())
301
+ return Promise.resolve();
302
+ return new Promise((resolve) => {
303
+ this._etaIdleWaiters.push(resolve);
304
+ });
305
+ }
306
+ _notifyEtaIdle() {
307
+ if (!this._isEtaIdle())
308
+ return;
309
+ if (this._etaIdleWaiters.length === 0)
310
+ return;
311
+ const waiters = this._etaIdleWaiters.splice(0);
312
+ for (const w of waiters)
313
+ w();
314
+ }
315
+ _scheduleEtaRenderFromMutation() {
316
+ // If a render is already in progress, remember to run again once it finishes.
317
+ if (this._etaRenderInProgress) {
318
+ this._etaRenderNeedsRun = true;
319
+ return;
320
+ }
321
+ if (!this.shouldRunEtaStateRender())
322
+ return;
323
+ // Coalesce to next macrotask: restart timer on every mutation and run ASAP
324
+ if (this._etaRenderDebounce) {
325
+ clearTimeout(this._etaRenderDebounce);
326
+ }
327
+ this._etaRenderTriggeredByMutation = true;
328
+ this._etaRenderDebounce = window.setTimeout(() => {
329
+ this._etaRenderDebounce = undefined;
330
+ this._etaRenderTask.run();
331
+ // If nothing else is scheduled and not in-progress, resolve any idle waiters
332
+ queueMicrotask(() => this._notifyEtaIdle());
333
+ }, 0);
334
+ }
253
335
  _isStateNodeElement(el) {
254
336
  if (el instanceof StateNode)
255
337
  return true;
@@ -317,7 +399,13 @@ export class StateNode extends LitElement {
317
399
  // Traverse descendants; for any element that does NOT contain a nested state node,
318
400
  // treat its innerHTML as a single Eta template and render/morph the entire subtree.
319
401
  const visit = async (root) => {
402
+ // If a follow-up Eta run is already requested (DOM still changing)
403
+ // and this pass was triggered by mutation, bail out to avoid unstable writes.
404
+ if (this._etaRenderCurrentFromMutation && this._etaRenderNeedsRun)
405
+ return;
320
406
  for (const child of Array.from(root.children)) {
407
+ if (this._etaRenderCurrentFromMutation && this._etaRenderNeedsRun)
408
+ return;
321
409
  if (!(child instanceof HTMLElement))
322
410
  continue;
323
411
  // Always allow attribute-level Eta on any node in this subtree
@@ -339,13 +427,24 @@ export class StateNode extends LitElement {
339
427
  if (child.hasAttribute('data-store-render')) {
340
428
  continue;
341
429
  }
430
+ // Reuse cached template, but refresh if DOM source changed (e.g., SPA mutated innerHTML)
431
+ const currentSrc = child.innerHTML ?? '';
342
432
  let entry = this._tplElementTemplates.get(child);
343
433
  if (!entry) {
344
- const src = child.innerHTML ?? '';
345
- entry = { src };
434
+ entry = { src: currentSrc };
346
435
  this._tplElementTemplates.set(child, entry);
347
436
  }
437
+ else if (entry.src !== currentSrc) {
438
+ const isTemplateLike = currentSrc.includes('{{');
439
+ // Accept SPA-authored changes (even without templates) only when this pass is mutation-triggered.
440
+ if (isTemplateLike || this._etaRenderCurrentFromMutation) {
441
+ entry.src = currentSrc;
442
+ delete entry.fn;
443
+ }
444
+ }
348
445
  const out = this._safeEtaRender(entry, context, { onErrorReturnInput: true });
446
+ if (this._etaRenderCurrentFromMutation && this._etaRenderNeedsRun)
447
+ return;
349
448
  await this._morphElementFromHTML(child, out);
350
449
  }
351
450
  };
@@ -353,16 +452,57 @@ export class StateNode extends LitElement {
353
452
  }
354
453
  connectedCallback() {
355
454
  super.connectedCallback();
455
+ // Listen for child registration/unregistration
456
+ this.addEventListener(CollectChildEvent.eventName, this._onCollectChild);
457
+ this.addEventListener(CollectChildRemovedEvent.eventName, this._onCollectChildRemoved);
356
458
  this.addEventListener(CollectActionEvent.eventName, this._collectActionEvent);
357
459
  this.addEventListener(CollectUpdateByDeltaEvent.eventName, this._collectUpdateByDeltaEvent);
358
460
  this.addEventListener(CollectOptionEvent.eventName, this._collectOptionEvent);
359
461
  [ActionEvent, UpdateByDeltaEvent].forEach(e => this.addEventListener(e.eventName, this._eventChange));
462
+ // Observe slot/light DOM changes to trigger Eta re-rendering in SPA scenarios
463
+ if (!this._slotMo && this.shouldRunEtaStateRender()) {
464
+ const isWithinRenderSubtree = (n) => {
465
+ while (n && n !== this) {
466
+ if (n instanceof HTMLElement && n.hasAttribute('data-store-render'))
467
+ return true;
468
+ n = n.parentNode;
469
+ }
470
+ return false;
471
+ };
472
+ this._slotMo = new MutationObserver((muts) => {
473
+ for (const m of muts) {
474
+ // Ignore changes happening under render-managed subtrees
475
+ const targets = [];
476
+ if (m.type === 'characterData')
477
+ targets.push(m.target);
478
+ else
479
+ targets.push(...Array.from(m.addedNodes));
480
+ if (targets.some(t => isWithinRenderSubtree(t)))
481
+ continue;
482
+ this._scheduleEtaRenderFromMutation();
483
+ break; // one schedule is enough per batch
484
+ }
485
+ });
486
+ this._slotMo.observe(this, {
487
+ childList: true,
488
+ subtree: true,
489
+ characterData: true
490
+ });
491
+ }
492
+ // Announce this node as a contextual child of its nearest parent StateNode
493
+ // so parents can await our updateComplete as part of theirs.
494
+ this._announceAsContextualChild();
360
495
  }
361
496
  remove() {
497
+ // Announce removal to parent before DOM detaches, so it can unregister us
498
+ this._announceContextualChildRemoved();
362
499
  this.dispatchEvent(new CollectOptionEvent({ name: this.storeName, options: null }));
363
500
  super.remove();
364
501
  }
365
502
  disconnectedCallback() {
503
+ // Stop listening for contextual child events
504
+ this.removeEventListener(CollectChildEvent.eventName, this._onCollectChild);
505
+ this.removeEventListener(CollectChildRemovedEvent.eventName, this._onCollectChildRemoved);
366
506
  this.removeEventListener(CollectActionEvent.eventName, this._collectActionEvent);
367
507
  this.removeEventListener(CollectUpdateByDeltaEvent.eventName, this._collectUpdateByDeltaEvent);
368
508
  this.removeEventListener(CollectOptionEvent.eventName, this._collectOptionEvent);
@@ -370,8 +510,21 @@ export class StateNode extends LitElement {
370
510
  this._options.clear();
371
511
  this._actions.clear();
372
512
  this._partialOptions.clear();
513
+ this._contextualChildren.clear();
514
+ if (this._etaRenderDebounce) {
515
+ clearTimeout(this._etaRenderDebounce);
516
+ this._etaRenderDebounce = undefined;
517
+ }
518
+ this._slotMo?.disconnect();
519
+ this._slotMo = undefined;
373
520
  super.disconnectedCallback();
374
521
  }
522
+ _announceAsContextualChild() {
523
+ this.dispatchEvent(new CollectChildEvent({ child: this }));
524
+ }
525
+ _announceContextualChildRemoved() {
526
+ this.dispatchEvent(new CollectChildRemovedEvent({ child: this }));
527
+ }
375
528
  _eventChange(e) {
376
529
  e.stopPropagation();
377
530
  // ignore if source matches ignore list
@@ -446,28 +599,41 @@ export class StateNode extends LitElement {
446
599
  this._notifyParent();
447
600
  }
448
601
  async _computeState(isActive) {
602
+ // We'll iteratively expand the set of options using actions and delta updates
603
+ // until we reach a fixed point (no new options discovered). This ensures
604
+ // combinations across different dimensions are included (e.g., 10-24).
449
605
  const computed = new Set();
450
- // 1) collect base options + partialOptions
606
+ const queue = [];
607
+ const enqueue = (opt) => {
608
+ if (!computed.has(opt)) {
609
+ computed.add(opt);
610
+ queue.push(opt);
611
+ }
612
+ };
613
+ // 1) collect base options + partialOptions and seed the queue
451
614
  for (const optsPromise of this._options.values()) {
452
615
  isActive();
453
616
  const opts = await optsPromise;
454
617
  for (const opt of opts) {
455
618
  isActive();
456
- computed.add(opt);
457
- await this._applyPartials(opt, computed, isActive);
619
+ enqueue(opt);
620
+ const partials = await this._applyPartials(opt, isActive);
621
+ for (const p of partials)
622
+ enqueue(p);
458
623
  }
459
624
  }
460
- // 2) apply full “actions”
461
- for (const opt of [...computed]) {
625
+ // 2) Repeatedly apply actions and delta updates to closure
626
+ while (queue.length) {
462
627
  isActive();
463
- await this._applyActions(opt, computed, isActive);
628
+ const current = queue.shift();
629
+ const actionResults = await this._applyActions(current, isActive);
630
+ for (const a of actionResults)
631
+ enqueue(a);
632
+ const deltaResults = await this._applyDeltaUpdates(current, isActive);
633
+ for (const d of deltaResults)
634
+ enqueue(d);
464
635
  }
465
- // 3) apply full "delta updates"
466
- for (const opt of [...computed]) {
467
- isActive();
468
- await this._applyDeltaUpdates(opt, computed, isActive);
469
- }
470
- // 3) combine bundles
636
+ // 3) combine bundles on the full set
471
637
  for (const opt of [...computed]) {
472
638
  isActive();
473
639
  const bundles = [...this._partialBundleOptions.values()];
@@ -476,7 +642,8 @@ export class StateNode extends LitElement {
476
642
  }
477
643
  return [...computed];
478
644
  }
479
- async _applyPartials(baseOpt, computed, isActive) {
645
+ async _applyPartials(baseOpt, isActive) {
646
+ const results = [];
480
647
  for (const partial of this._partialOptions.values()) {
481
648
  isActive();
482
649
  if (!partial.id) {
@@ -485,27 +652,37 @@ export class StateNode extends LitElement {
485
652
  const newProduct = await baseOpt.switchProduct({ id: partial.id, campaign: partial.campaign });
486
653
  const newOpt = await newProduct?.getOption({ devices: partial.devices, subscription: partial.subscription });
487
654
  if (newOpt)
488
- computed.add(newOpt);
655
+ results.push(newOpt);
489
656
  }
657
+ return results;
490
658
  }
491
- async _applyActions(baseOpt, computed, isActive) {
659
+ async _applyActions(baseOpt, isActive) {
660
+ const results = [];
492
661
  for (const action of this._actions.values()) {
493
662
  isActive();
663
+ const targetDevices = action.devices ?? baseOpt.getDevices();
664
+ const targetSubscription = action.subscription ?? baseOpt.getSubscription();
665
+ // Skip no-op actions that don't change anything
666
+ if (targetDevices === baseOpt.getDevices() && targetSubscription === baseOpt.getSubscription()) {
667
+ continue;
668
+ }
494
669
  const newOpt = await baseOpt.getOption({
495
- devices: action.devices ?? baseOpt.getDevices(),
496
- subscription: action.subscription ?? baseOpt.getSubscription()
670
+ devices: targetDevices,
671
+ subscription: targetSubscription
497
672
  });
498
673
  if (newOpt)
499
- computed.add(newOpt);
674
+ results.push(newOpt);
500
675
  }
676
+ return results;
501
677
  }
502
- async _applyDeltaUpdates(baseOpt, computed, isActive) {
678
+ async _applyDeltaUpdates(baseOpt, isActive) {
679
+ const results = [];
503
680
  const product = baseOpt.getProduct();
504
681
  const baseDevices = product.getDevices().values;
505
682
  const baseSubscriptions = product.getSubscriptions().values;
506
683
  let devices = baseOpt.getDevices();
507
684
  let subscription = baseOpt.getSubscription();
508
- //corner case for input types that define an interval by themselves
685
+ // corner case for input types that define an interval by themselves
509
686
  const getValue = (action, startValue, minValue) => {
510
687
  if (action.useAsValue) {
511
688
  action.delta = 1;
@@ -520,9 +697,7 @@ export class StateNode extends LitElement {
520
697
  // Loop until we can no longer apply the delta
521
698
  while (true) {
522
699
  isActive();
523
- const values = action.type === "devices"
524
- ? baseDevices
525
- : baseSubscriptions;
700
+ const values = action.type === "devices" ? baseDevices : baseSubscriptions;
526
701
  const current = action.type === "devices"
527
702
  ? getValue(action, devices, baseDevices[0])
528
703
  : getValue(action, subscription, baseSubscriptions[0]);
@@ -536,13 +711,13 @@ export class StateNode extends LitElement {
536
711
  else {
537
712
  subscription = newValue;
538
713
  }
539
- // Fetch the new option and add it if exists
714
+ // Fetch the new option and collect it if exists
540
715
  const newOpt = await baseOpt.getOption({ devices, subscription });
541
- if (newOpt) {
542
- computed.add(newOpt);
543
- }
716
+ if (newOpt)
717
+ results.push(newOpt);
544
718
  }
545
719
  }
720
+ return results;
546
721
  }
547
722
  /**
548
723
  * Attempts to apply the given delta action to the current value.
@@ -653,6 +828,18 @@ export class StateNode extends LitElement {
653
828
  await this._syncEventTask.taskComplete;
654
829
  await this._collectToggleTask.taskComplete;
655
830
  await this._etaRenderTask.taskComplete;
831
+ // Ensure any debounced/mutation-triggered Eta runs have settled
832
+ await this._waitEtaSettled();
833
+ // Await all registered contextual children (nearest descendants only)
834
+ try {
835
+ const children = Array.from(this._contextualChildren);
836
+ const waits = children
837
+ .map((c) => c.updateComplete)
838
+ .filter((p) => !!p);
839
+ if (waits.length > 0)
840
+ await Promise.allSettled(waits);
841
+ }
842
+ catch { /* ignore */ }
656
843
  return result;
657
844
  }
658
845
  isDeviceAndSubscriptionChange(evt) {
@@ -1 +1 @@
1
- {"version":3,"file":"node.state.js","sourceRoot":"","sources":["../../../src/nodes/node.state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node.state.js","sourceRoot":"","sources":["../../../src/nodes/node.state.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { DATA_RENDER_NODE, handleRenderNode } from "./utility.js";
1
+ import { DATA_RENDER_NODE, handleRenderNode, cleanupRenderNode } from "./utility.js";
2
2
  const registerRenderNodes = (document) => {
3
3
  // On page load, “announce” the ones already in the DOM:
4
4
  document
@@ -18,6 +18,16 @@ const registerRenderNodes = (document) => {
18
18
  .querySelectorAll(DATA_RENDER_NODE)
19
19
  .forEach(handleRenderNode);
20
20
  }
21
+ for (const node of Array.from(m.removedNodes)) {
22
+ if (!(node instanceof HTMLElement))
23
+ continue;
24
+ if (node.matches(DATA_RENDER_NODE)) {
25
+ cleanupRenderNode(node);
26
+ }
27
+ node
28
+ .querySelectorAll(DATA_RENDER_NODE)
29
+ .forEach(n => cleanupRenderNode(n));
30
+ }
21
31
  }
22
32
  });
23
33
  // make sure to observe subtree so deep inserts fire here:
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/renders/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAc,MAAM,WAAW,CAAC;AAE3E,MAAM,mBAAmB,GAAG,CAAC,QAAqB,EAAE,EAAE;IACtD,wDAAwD;IACtD,QAAQ;SACL,gBAAgB,CAAa,gBAAgB,CAAC;SAC9C,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE7B,kCAAkC;IAClC,MAAM,EAAE,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE;QACrC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC,CAAC,IAAI,YAAY,WAAW,CAAC;oBAAE,SAAS;gBAE7C,wBAAwB;gBACxB,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACnC,gBAAgB,CAAC,IAAkB,CAAC,CAAC;gBACvC,CAAC;gBAED,IAAI;qBACD,gBAAgB,CAAa,gBAAgB,CAAC;qBAC9C,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,0DAA0D;IAC1D,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE;QACnB,SAAS,EAAE,IAAI;QACf,OAAO,EAAI,IAAI;KAChB,CAAC,CAAC;AACL,CAAC,CAAA;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/renders/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAc,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9F,MAAM,mBAAmB,GAAG,CAAC,QAAqB,EAAE,EAAE;IACtD,wDAAwD;IACtD,QAAQ;SACL,gBAAgB,CAAa,gBAAgB,CAAC;SAC9C,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE7B,kCAAkC;IAClC,MAAM,EAAE,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE;QACrC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC,CAAC,IAAI,YAAY,WAAW,CAAC;oBAAE,SAAS;gBAE7C,wBAAwB;gBACxB,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACnC,gBAAgB,CAAC,IAAkB,CAAC,CAAC;gBACvC,CAAC;gBAED,IAAI;qBACD,gBAAgB,CAAa,gBAAgB,CAAC;qBAC9C,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC/B,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC9C,IAAI,CAAC,CAAC,IAAI,YAAY,WAAW,CAAC;oBAAE,SAAS;gBAE7C,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACnC,iBAAiB,CAAC,IAAkB,CAAC,CAAC;gBACxC,CAAC;gBACD,IAAI;qBACD,gBAAgB,CAAa,gBAAgB,CAAC;qBAC9C,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAe,CAAC,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,0DAA0D;IAC1D,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE;QACnB,SAAS,EAAE,IAAI;QACf,OAAO,EAAI,IAAI;KAChB,CAAC,CAAC;AACL,CAAC,CAAA;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
@@ -12,7 +12,9 @@ type BindContext<M extends ContextMap> = {
12
12
  observedAttrs: string[];
13
13
  requireAll?: boolean;
14
14
  };
15
- export type RenderNode = HTMLElement;
15
+ export type RenderNode = HTMLElement & {
16
+ updateComplete?: Promise<void>;
17
+ };
16
18
  export declare const DATA_RENDER_NODE = "[data-store-render]";
17
19
  export declare const attachContext: <C extends AnyContext>(el: HTMLElement, context: C, onValue: (value: ContextType<C>) => void, { subscribe }?: {
18
20
  subscribe?: boolean;
@@ -25,4 +27,5 @@ export declare const observeAttributes: (el: HTMLElement, onChange: () => void,
25
27
  */
26
28
  export declare function bindContext<M extends ContextMap>({ el, contexts, logic, observedAttrs, requireAll }: BindContext<M>): () => void;
27
29
  export declare const handleRenderNode: (el: RenderNode) => void;
30
+ export declare const cleanupRenderNode: (el: RenderNode) => void;
28
31
  export {};
@@ -6,7 +6,12 @@ import { stateContext } from '../contexts/context.state.js';
6
6
  import { renderAttributes } from '../renders/attributes/index.js';
7
7
  import { OBS_ATTRS_OPTION_PLUS_STATE } from '../renders/observe.js';
8
8
  import { ContextEvent } from '@lit/context';
9
+ import { CollectChildEvent, CollectChildRemovedEvent } from '../events/events.js';
9
10
  export const DATA_RENDER_NODE = "[data-store-render]";
11
+ // Track initialized render nodes to avoid duplicate bindings
12
+ const RENDER_BOUND = new WeakSet();
13
+ const RENDER_DISPOSE = new WeakMap();
14
+ const RENDER_RESOLVE = new WeakMap();
10
15
  export const attachContext = (el, context, onValue, { subscribe = true } = {}) => {
11
16
  let dispose;
12
17
  el.dispatchEvent(new ContextEvent(context, el, (value, d) => {
@@ -104,7 +109,7 @@ export function bindContext({ el, contexts, logic, observedAttrs = [], requireAl
104
109
  d();
105
110
  };
106
111
  }
107
- const addLogic = (el) => {
112
+ const addLogic = (el, rendered) => {
108
113
  // Single binder aggregates both contexts and renders when either changes
109
114
  return bindContext({
110
115
  el,
@@ -117,16 +122,61 @@ const addLogic = (el) => {
117
122
  product: productContext,
118
123
  derived: derivedContext
119
124
  });
125
+ rendered();
120
126
  },
121
127
  observedAttrs: [...OBS_ATTRS_OPTION_PLUS_STATE]
122
128
  });
123
129
  };
124
130
  export const handleRenderNode = (el) => {
125
- const dispose = addLogic(el);
131
+ // Idempotent: don't re-bind the same node
132
+ if (RENDER_BOUND.has(el))
133
+ return;
134
+ RENDER_BOUND.add(el);
135
+ const { promise, resolve } = Promise.withResolvers();
136
+ el.updateComplete = promise;
137
+ const dispose = addLogic(el, resolve);
138
+ RENDER_DISPOSE.set(el, dispose);
139
+ RENDER_RESOLVE.set(el, resolve);
140
+ // Register as contextual child so nearest StateNode parents can await it
141
+ try {
142
+ el.dispatchEvent(new CollectChildEvent({ child: el }));
143
+ }
144
+ catch { /* ignore */ }
126
145
  const originalRemove = el.remove;
127
146
  el.remove = () => {
128
147
  dispose();
148
+ try {
149
+ resolve();
150
+ }
151
+ catch { /* ignore */ }
152
+ try {
153
+ el.dispatchEvent(new CollectChildRemovedEvent({ child: el }));
154
+ }
155
+ catch { /* ignore */ }
156
+ RENDER_BOUND.delete(el);
157
+ RENDER_DISPOSE.delete(el);
158
+ RENDER_RESOLVE.delete(el);
129
159
  originalRemove.call(el);
130
160
  };
131
161
  };
162
+ export const cleanupRenderNode = (el) => {
163
+ const dispose = RENDER_DISPOSE.get(el);
164
+ try {
165
+ dispose?.();
166
+ }
167
+ catch { /* ignore */ }
168
+ // Resolve any outstanding updateComplete so parents don't hang
169
+ const resolve = RENDER_RESOLVE.get(el);
170
+ try {
171
+ resolve?.();
172
+ }
173
+ catch { /* ignore */ }
174
+ try {
175
+ el.dispatchEvent(new CollectChildRemovedEvent({ child: el }));
176
+ }
177
+ catch { /* ignore */ }
178
+ RENDER_DISPOSE.delete(el);
179
+ RENDER_BOUND.delete(el);
180
+ RENDER_RESOLVE.delete(el);
181
+ };
132
182
  //# sourceMappingURL=utility.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utility.js","sourceRoot":"","sources":["../../../src/renders/utility.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utility.js","sourceRoot":"","sources":["../../../src/renders/utility.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@repobit/dex-store-elements",
3
- "version": "1.2.2",
3
+ "version": "1.2.3",
4
4
  "description": "HTML elements layer for pricings",
5
5
  "author": "Buga Adrian Alexandru <abuga@bitdefender.com>",
6
6
  "homepage": "https://github.com/bitdefender/dex-core#readme",
@@ -62,5 +62,5 @@
62
62
  ]
63
63
  }
64
64
  },
65
- "gitHead": "3cee96f48eecdc4d33a3ecb183fb31ed9d45dc99"
65
+ "gitHead": "148f31f30a8423ed60fb819f3ef3946ad659f487"
66
66
  }