dothtml 6.0.0-beta.32 → 6.0.0-beta.34

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 (57) hide show
  1. package/build_module/css/format-css-type.d.ts +4 -4
  2. package/build_module/css/format-css-type.js +7 -7
  3. package/build_module/css/format-css-type.js.map +1 -1
  4. package/build_module/dot.js +19 -13
  5. package/build_module/dot.js.map +1 -1
  6. package/build_module/reactivity/binding.d.ts +7 -0
  7. package/build_module/reactivity/binding.js +42 -0
  8. package/build_module/reactivity/binding.js.map +1 -0
  9. package/build_module/reactivity/bound-reactive.d.ts +13 -0
  10. package/build_module/reactivity/bound-reactive.js +20 -0
  11. package/build_module/reactivity/bound-reactive.js.map +1 -0
  12. package/build_module/reactivity/reactive-attr.d.ts +6 -0
  13. package/build_module/reactivity/reactive-attr.js +7 -0
  14. package/build_module/reactivity/reactive-attr.js.map +1 -0
  15. package/build_module/reactivity/reactive-style.d.ts +6 -0
  16. package/build_module/reactivity/reactive-style.js +7 -0
  17. package/build_module/reactivity/reactive-style.js.map +1 -0
  18. package/build_module/reactivity/reactive.d.ts +22 -0
  19. package/build_module/reactivity/reactive.js +54 -0
  20. package/build_module/reactivity/reactive.js.map +1 -0
  21. package/build_module/v-meta-nodes/attribute-v-node.d.ts +3 -3
  22. package/build_module/v-meta-nodes/attribute-v-node.js +10 -5
  23. package/build_module/v-meta-nodes/attribute-v-node.js.map +1 -1
  24. package/build_module/v-meta-nodes/style-v-node.d.ts +2 -2
  25. package/build_module/v-meta-nodes/style-v-node.js +8 -8
  26. package/build_module/v-meta-nodes/style-v-node.js.map +1 -1
  27. package/build_module/v-style-nodes/base-v-style.js +6 -5
  28. package/build_module/v-style-nodes/base-v-style.js.map +1 -1
  29. package/build_module/v-style-nodes/css-function-builder-v-style.d.ts +4 -4
  30. package/build_module/v-style-nodes/css-function-builder-v-style.js +3 -3
  31. package/build_module/v-style-nodes/css-function-builder-v-style.js.map +1 -1
  32. package/build_module/v-style-nodes/filter-v-style.js.map +1 -1
  33. package/build_module/vdom-nodes/collection-vdom.d.ts +3 -3
  34. package/build_module/vdom-nodes/collection-vdom.js +17 -14
  35. package/build_module/vdom-nodes/collection-vdom.js.map +1 -1
  36. package/build_module/vdom-nodes/component-vdom.d.ts +3 -3
  37. package/build_module/vdom-nodes/component-vdom.js +1 -3
  38. package/build_module/vdom-nodes/component-vdom.js.map +1 -1
  39. package/build_module/vdom-nodes/conditional-vdom.d.ts +2 -2
  40. package/build_module/vdom-nodes/conditional-vdom.js +8 -8
  41. package/build_module/vdom-nodes/conditional-vdom.js.map +1 -1
  42. package/build_module/vdom-nodes/container-vdom.d.ts +10 -8
  43. package/build_module/vdom-nodes/container-vdom.js +20 -12
  44. package/build_module/vdom-nodes/container-vdom.js.map +1 -1
  45. package/build_module/vdom-nodes/element-vdom.d.ts +6 -1
  46. package/build_module/vdom-nodes/element-vdom.js +13 -9
  47. package/build_module/vdom-nodes/element-vdom.js.map +1 -1
  48. package/build_module/vdom-nodes/html-vdom.d.ts +3 -3
  49. package/build_module/vdom-nodes/html-vdom.js +7 -7
  50. package/build_module/vdom-nodes/html-vdom.js.map +1 -1
  51. package/build_module/vdom-nodes/text-vdom.d.ts +3 -3
  52. package/build_module/vdom-nodes/text-vdom.js +7 -7
  53. package/build_module/vdom-nodes/text-vdom.js.map +1 -1
  54. package/build_module/window-wrapper.d.ts +3 -3
  55. package/build_module/window-wrapper.js +4 -1
  56. package/build_module/window-wrapper.js.map +1 -1
  57. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"base-v-style.js","sourceRoot":"","sources":["../../src/v-style-nodes/base-v-style.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,aAAa,CAAC;AAGnC,OAAO,MAAM,MAAM,WAAW,CAAC;AAmB/B,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,MAAM;IAA9C;;QAIkB,YAAO,GAAG,KAAK,CAAC;QACzB,UAAK,GAAyD,EAAE,CAAC;QACjE,kBAAa,GAA6B,EAAE,CAAC;QAC7C,wBAAmB,GAAkB,EAAE,CAAC;IA0GjD,CAAC;IApGA,OAAO,CAAC,MAAmB;QAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAC;YACzC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAEtB,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;SAC5C;IACF,CAAC;IACD,SAAS;QAIR,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAC;YACvD,IAAI,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;YACrC,EAAE,CAAC,SAAS,EAAE,CAAC;SACf;QAED,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC;QAGpC,KAAI,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,EAAC;YAC/B,IAAI,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YAE9B,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;SAC3B;QAED,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QAExB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,qBAAqB,CAAC,IAAI,EAAE,KAAK;QAChC,IAAG,KAAK,YAAY,QAAQ,EAAC;YAC5B,IAAI,EAAE,GAAG,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1C,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;YAE/B,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;SACxC;aACI,IAAG,KAAK,YAAY,MAAM,EAAC;YAC/B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAC3B;aACG;YACH,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;SAC7B;IAEF,CAAC;IAED,UAAU,CAAC,IAAY,EAAE,KAAa;QAErC,IAAG,IAAI,CAAC,MAAM,EAAC;YACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;SAChC;IACF,CAAC;IAED,OAAO,CAAC,QAAQ,EAAE,KAAK;QACtB,IAAG,IAAI,CAAC,OAAO,EAAC;YACf,IAAI,QAAQ,GAAG,IAAI,UAAU,EAAE,CAAC;YAChC,OAAO,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;SACzC;aACG;YAEH,IAAG,KAAK,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,EAAC;gBACrC,IAAI,OAAe,CAAC;gBACpB,QAAO,QAAQ,EAAC;oBACf,KAAK,WAAW,CAAC,CAAA;wBAEhB,MAAM;qBACN;oBACD,KAAK,QAAQ,CAAC;oBACd,KAAK,iBAAiB,CAAC,CAAA;wBAEtB,MAAM;qBACN;oBACD,OAAO,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,2BAA2B,CAAC,CAAC;iBACjE;gBAED,KAAK,CAAC,OAAO,CAAC,CAAC;gBAEf,KAAK,GAAG,OAAO,CAAC;gBAEhB,IAAG,IAAI,CAAC,MAAM,EAAC;oBACd,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACvC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;iBAC7B;aACD;iBACG;gBACH,IAAG,IAAI,CAAC,MAAM,EAAC;oBACd,IAAI,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBACtD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC;oBAEvC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;iBAC5C;aACD;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;YAEhD,OAAO,IAAI,CAAC;SACZ;IACF,CAAC;CACD;AAED;IAKC,MAAM,SAAS,GAAG;QACjB,OAAO,EAAE,qKAAqK;QAC9K,QAAQ,EAAE,6eAA6e;QAEvf,KAAK,EAAE,0EAA0E;QACjF,gBAAgB,EAAE,WAAW;QAC7B,QAAQ,EAAE,wBAAwB;QAClC,MAAM,EAAE,4sFAA4sF;KAEptF,CAAA;IAED,KAAI,IAAI,CAAC,IAAI,SAAS,EAAC;QACtB,IAAI,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAE3B,IAAI,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEzB,KAAI,IAAI,CAAC,IAAI,KAAK,EAAC;YAElB,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAC;gBACpC,IAAI,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACrB,IAAI,OAAO,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;gBAClC,IAAI,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAEvC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG;oBAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,CAAC;gBAC5C,CAAC,CAAA;aACD;SACD;KACD;CACD"}
1
+ {"version":3,"file":"base-v-style.js","sourceRoot":"","sources":["../../src/v-style-nodes/base-v-style.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,15 @@
1
- import Reactive from "../reactive";
1
+ import BoundReactive from "../reactivity/bound-reactive";
2
2
  export default abstract class CssFunctionBuilderVStyle {
3
3
  simpleValue: string;
4
4
  funcs: Array<{
5
5
  func: string;
6
6
  args: Array<{
7
- v: number | boolean | string | Reactive;
8
- f: (v: number | boolean | string | Reactive) => string;
7
+ v: number | boolean | string | BoundReactive;
8
+ f: (v: number | boolean | string | BoundReactive) => string;
9
9
  }>;
10
10
  }>;
11
11
  readonly propName: string;
12
- subscriptions: Record<number, Reactive>;
12
+ subscriptions: Record<number, BoundReactive>;
13
13
  target: HTMLElement;
14
14
  constructor(propName: string);
15
15
  toString(): string;
@@ -1,4 +1,4 @@
1
- import Reactive from "../reactive";
1
+ import BoundReactive from "../reactivity/bound-reactive";
2
2
  export default class CssFunctionBuilderVStyle {
3
3
  constructor(propName) {
4
4
  this.funcs = [];
@@ -9,8 +9,8 @@ export default class CssFunctionBuilderVStyle {
9
9
  let result = "";
10
10
  for (let t of this.funcs) {
11
11
  let argValues = t.args.map(arg => {
12
- if (arg.v instanceof Reactive) {
13
- return arg.f(arg.v.getValue());
12
+ if (arg.v instanceof BoundReactive) {
13
+ return arg.f(arg.v._get());
14
14
  }
15
15
  else {
16
16
  return arg.f(arg.v).split(" ").join(", ");
@@ -1 +1 @@
1
- {"version":3,"file":"css-function-builder-v-style.js","sourceRoot":"","sources":["../../src/v-style-nodes/css-function-builder-v-style.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,aAAa,CAAC;AAGnC,MAAM,CAAC,OAAO,OAAgB,wBAAwB;IAWrD,YAAY,QAAgB;QAR5B,UAAK,GAGA,EAAE,CAAC;QAER,kBAAa,GAA6B,EAAE,CAAC;QAI5C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;IAED,QAAQ;QACP,IAAI,MAAM,GAAG,EAAE,CAAC;QAGhB,KAAI,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAC;YAEvB,IAAI,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAChC,IAAG,GAAG,CAAC,CAAC,YAAY,QAAQ,EAAC;oBAC5B,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;iBAC/B;qBACG;oBACH,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC1C;YACF,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAGd,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,SAAS,IAAI,CAAC;SACrC;QAED,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IA6ED,cAAc,CAAC,MAAc,EAAE,IAAI;QAClC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC;IACb,CAAC;CAED"}
1
+ {"version":3,"file":"css-function-builder-v-style.js","sourceRoot":"","sources":["../../src/v-style-nodes/css-function-builder-v-style.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,8BAA8B,CAAC;AAIzD,MAAM,CAAC,OAAO,OAAgB,wBAAwB;IAWrD,YAAY,QAAgB;QAR5B,UAAK,GAGA,EAAE,CAAC;QAER,kBAAa,GAAkC,EAAE,CAAC;QAIjD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;IAED,QAAQ;QACP,IAAI,MAAM,GAAG,EAAE,CAAC;QAGhB,KAAI,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAC;YAEvB,IAAI,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAChC,IAAG,GAAG,CAAC,CAAC,YAAY,aAAa,EAAC;oBACjC,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;iBAC3B;qBACG;oBACH,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC1C;YACF,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAGd,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,SAAS,IAAI,CAAC;SACrC;QAED,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IA6ED,cAAc,CAAC,MAAc,EAAE,IAAI;QAClC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC;IACb,CAAC;CAED"}
@@ -1 +1 @@
1
- {"version":3,"file":"filter-v-style.js","sourceRoot":"","sources":["../../src/v-style-nodes/filter-v-style.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC9F,OAAO,wBAAwB,MAAM,gCAAgC,CAAC;AAEtE,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,wBAAwB;IAEjE,IAAI,CAAC,CAAC;QACL,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,UAAU,CAAC,CAAC;QACX,OAAO,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,mBAAmB,EAAC,CAAC,CAAC,CAAC;IACzE,CAAC;IACD,QAAQ,CAAC,CAAC;QACT,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK;QAC3B,OAAO,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,EAAE,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,EAAE,EAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,eAAe,EAAC,EAAE,EAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,cAAc,EAAC,CAAC,CAAC,CAAC;IACnK,CAAC;IACD,SAAS,CAAC,CAAC;QACV,OAAO,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,SAAS,CAAC,CAAC;QACV,OAAO,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IACrE,CAAC;IACD,MAAM,CAAC,CAAC;QACP,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,CAAC,CAAC;QACR,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,KAAK,CAAC,CAAC;QACN,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IAChE,CAAC;IACD,QAAQ,CAAC,CAAC;QACT,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IACnE,CAAC;CACD"}
1
+ {"version":3,"file":"filter-v-style.js","sourceRoot":"","sources":["../../src/v-style-nodes/filter-v-style.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC9F,OAAO,wBAAwB,MAAM,gCAAgC,CAAC;AAEtE,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,wBAAwB;IAEjE,IAAI,CAAC,CAAC;QACL,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,UAAU,CAAC,CAAC;QACX,OAAO,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,mBAAmB,EAAC,CAAC,CAAC,CAAC;IACzE,CAAC;IACD,QAAQ,CAAC,CAAC;QACT,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK;QAC3B,OAAO,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,EAAE,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,EAAE,EAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,eAAe,EAAC,EAAE,EAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,cAAc,EAAC,CAAC,CAAC,CAAC;IACnK,CAAC;IACD,SAAS,CAAC,CAAC;QACV,OAAO,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,SAAS,CAAC,CAAC;QACV,OAAO,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IACrE,CAAC;IACD,MAAM,CAAC,CAAC;QACP,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,CAAC,CAAC;QACR,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,KAAK,CAAC,CAAC;QACN,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IAChE,CAAC;IACD,QAAQ,CAAC,CAAC;QACT,OAAO,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,EAAC,CAAC,EAAE,CAAC,EAAE,eAAe,EAAC,CAAC,CAAC,CAAC;IACnE,CAAC;CACD"}
@@ -1,4 +1,4 @@
1
- import Reactive from "../reactive";
1
+ import BoundReactive from "../reactivity/bound-reactive";
2
2
  import { Vdom } from "./vdom";
3
3
  import { ObservableCollection } from "./vdom-types";
4
4
  type DatumMap = {
@@ -6,11 +6,11 @@ type DatumMap = {
6
6
  value: any;
7
7
  keyValue: any;
8
8
  afterNode: Node;
9
- observableIndex: Reactive<number>;
9
+ observableIndex: BoundReactive<number>;
10
10
  };
11
11
  export default class CollectionVdom extends Vdom {
12
12
  value: ObservableCollection;
13
- renderCallback: (x: any, i: number | string | Reactive, k: string) => Vdom;
13
+ renderCallback: (x: any, i: number | string | BoundReactive, k: string) => Vdom;
14
14
  startNode: Node;
15
15
  endNode: Node;
16
16
  observerId: number;
@@ -1,5 +1,6 @@
1
1
  import { deepEqual } from "../helpers/tools";
2
- import Reactive from "../reactive";
2
+ import BoundReactive from "../reactivity/bound-reactive";
3
+ import Reactive from "../reactivity/reactive";
3
4
  import { TextVdom } from "./text-vdom";
4
5
  import { Vdom } from "./vdom";
5
6
  export default class CollectionVdom extends Vdom {
@@ -11,8 +12,8 @@ export default class CollectionVdom extends Vdom {
11
12
  this.renderCallback = renderCallback;
12
13
  }
13
14
  _render(target) {
14
- if (this.value instanceof Reactive) {
15
- this.observerId = this.value.subscribeCollection(this);
15
+ if (this.value instanceof BoundReactive) {
16
+ this.observerId = this.value._subscribe(this);
16
17
  }
17
18
  this.startNode = target.ownerDocument.createTextNode("");
18
19
  this.endNode = target.ownerDocument.createTextNode("");
@@ -21,8 +22,8 @@ export default class CollectionVdom extends Vdom {
21
22
  this.updateList();
22
23
  }
23
24
  _unrender() {
24
- if (this.observerId && this.value instanceof Reactive) {
25
- this.value.detachBinding(this.observerId);
25
+ if (this.observerId && this.value instanceof BoundReactive) {
26
+ this.value._unsubscribe(this.observerId);
26
27
  this.observerId = null;
27
28
  }
28
29
  for (let i = 0; i < this.mappedItems.length; i++) {
@@ -45,9 +46,9 @@ export default class CollectionVdom extends Vdom {
45
46
  let mappedData;
46
47
  {
47
48
  let unmappedCollection = null;
48
- if (this.value instanceof Reactive) {
49
- unmappedCollection = this.value.getValue();
50
- key = this.value.key ?? null;
49
+ if (this.value instanceof BoundReactive) {
50
+ unmappedCollection = this.value._get();
51
+ key = this.value._source.key ?? null;
51
52
  }
52
53
  else {
53
54
  unmappedCollection = this.value;
@@ -55,12 +56,13 @@ export default class CollectionVdom extends Vdom {
55
56
  if (unmappedCollection instanceof Array) {
56
57
  mappedData = unmappedCollection.map((v, i) => {
57
58
  let kv = !!key ? v[key] : null;
59
+ let reactive = new Reactive();
58
60
  return {
59
61
  vdom: null,
60
62
  value: v,
61
63
  keyValue: kv,
62
64
  afterNode: null,
63
- observableIndex: new Reactive()
65
+ observableIndex: reactive.bind()
64
66
  };
65
67
  });
66
68
  }
@@ -69,12 +71,13 @@ export default class CollectionVdom extends Vdom {
69
71
  for (let k in unmappedCollection) {
70
72
  let v = unmappedCollection[k];
71
73
  let kv = !!key ? v[key] : k;
74
+ let reactive = new Reactive();
72
75
  mappedData.push({
73
76
  vdom: null,
74
77
  value: v,
75
78
  keyValue: kv,
76
79
  afterNode: null,
77
- observableIndex: new Reactive()
80
+ observableIndex: reactive.bind()
78
81
  });
79
82
  }
80
83
  }
@@ -113,12 +116,12 @@ export default class CollectionVdom extends Vdom {
113
116
  if (existing && ((candidate == existing) || (key && candidate.keyValue == existing.keyValue))) {
114
117
  if (!deepEqual(existing.value, candidate.value)) {
115
118
  existing.vdom._unrender();
116
- existing.vdom = this.renderCallback(candidate.value, this.value instanceof Reactive ? existing.observableIndex : ni, candidate.keyValue);
119
+ existing.vdom = this.renderCallback(candidate.value, this.value instanceof BoundReactive ? existing.observableIndex : ni, candidate.keyValue);
117
120
  existing.value = candidate.value;
118
121
  existing.vdom._renderBefore(existing.afterNode);
119
122
  }
120
123
  else {
121
- existing.observableIndex.setValue(ni);
124
+ existing.observableIndex._set(ni);
122
125
  }
123
126
  afterTarget = existing.afterNode;
124
127
  ni++;
@@ -135,8 +138,8 @@ export default class CollectionVdom extends Vdom {
135
138
  this.startNode.parentElement.appendChild(beforeTarget);
136
139
  }
137
140
  candidate.afterNode = beforeTarget;
138
- candidate.observableIndex._value = ni;
139
- let content = this.renderCallback(candidate.value, this.value instanceof Reactive ? candidate.observableIndex : ni, candidate.keyValue);
141
+ candidate.observableIndex._set(ni);
142
+ let content = this.renderCallback(candidate.value, this.value instanceof BoundReactive ? candidate.observableIndex : ni, candidate.keyValue);
140
143
  if (content instanceof Vdom) {
141
144
  candidate.vdom = content;
142
145
  }
@@ -1 +1 @@
1
- {"version":3,"file":"collection-vdom.js","sourceRoot":"","sources":["../../src/vdom-nodes/collection-vdom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"collection-vdom.js","sourceRoot":"","sources":["../../src/vdom-nodes/collection-vdom.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import { IComponent } from "dothtml-interfaces";
1
+ import { IDotComponent, IDotCore } from "dothtml-interfaces";
2
2
  import { Vdom } from "./vdom";
3
3
  import { ContainerVdom } from "./container-vdom";
4
4
  export declare class ComponentVdom extends Vdom {
5
- component: IComponent;
5
+ component: IDotComponent;
6
6
  shadowEl: HTMLElement;
7
7
  childShadowVdom: ContainerVdom;
8
- constructor(component: IComponent);
8
+ constructor(dot: IDotCore, component: IDotComponent);
9
9
  private setupCustomElement;
10
10
  _render(node: HTMLElement): void;
11
11
  _unrender(): void;
@@ -1,10 +1,8 @@
1
1
  import { Vdom } from "./vdom";
2
2
  import renderStylesheet from "../helpers/render-stylesheet";
3
- import dot from "../dot";
4
3
  let tagId = 0x10000;
5
- dot["_addTimestamp"] = true;
6
4
  export class ComponentVdom extends Vdom {
7
- constructor(component) {
5
+ constructor(dot, component) {
8
6
  super();
9
7
  this.component = component;
10
8
  if (component._?._meta) {
@@ -1 +1 @@
1
- {"version":3,"file":"component-vdom.js","sourceRoot":"","sources":["../../src/vdom-nodes/component-vdom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component-vdom.js","sourceRoot":"","sources":["../../src/vdom-nodes/component-vdom.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import Reactive from "../reactive";
1
+ import BoundReactive from "../reactivity/bound-reactive";
2
2
  import { ContainerVdom } from "./container-vdom";
3
3
  import { Vdom } from "./vdom";
4
4
  import { ConditionalNodeItem } from "./vdom-types";
@@ -6,7 +6,7 @@ export declare class ConditionalVdom extends Vdom {
6
6
  private conditions;
7
7
  private sealed;
8
8
  private renderedIndex;
9
- addCondition(condition: Reactive | boolean, vNode: ContainerVdom, seal?: boolean): void;
9
+ addCondition(condition: BoundReactive | boolean, vNode: ContainerVdom, seal?: boolean): void;
10
10
  addAnchor(C: ConditionalNodeItem, node: HTMLElement): void;
11
11
  _render(node: HTMLElement): void;
12
12
  _unrender(): void;
@@ -1,4 +1,4 @@
1
- import Reactive from "../reactive";
1
+ import BoundReactive from "../reactivity/bound-reactive";
2
2
  import { Vdom } from "./vdom";
3
3
  export class ConditionalVdom extends Vdom {
4
4
  constructor() {
@@ -22,8 +22,8 @@ export class ConditionalVdom extends Vdom {
22
22
  this.conditions.push(C);
23
23
  if (this.conditions[0].startAnchor) {
24
24
  this.addAnchor(C, this.conditions[0].startAnchor.parentElement);
25
- if (condition instanceof Reactive) {
26
- C.observerId = condition.subscribeCond(this);
25
+ if (condition instanceof BoundReactive) {
26
+ C.observerId = condition._subscribe(this);
27
27
  }
28
28
  this.updateConditions();
29
29
  }
@@ -41,8 +41,8 @@ export class ConditionalVdom extends Vdom {
41
41
  throw new Error("Item is already rendered.");
42
42
  }
43
43
  this.addAnchor(C, node);
44
- if (C.condition instanceof Reactive) {
45
- C.observerId = C.condition.subscribeCond(this);
44
+ if (C.condition instanceof BoundReactive) {
45
+ C.observerId = C.condition._subscribe(this);
46
46
  }
47
47
  }
48
48
  if (this.conditions.length)
@@ -59,8 +59,8 @@ export class ConditionalVdom extends Vdom {
59
59
  end.parentElement.removeChild(end);
60
60
  C.startAnchor = null;
61
61
  C.endAnchor = null;
62
- if (C.condition instanceof Reactive) {
63
- C.condition.detachBinding(C.observerId);
62
+ if (C.condition instanceof BoundReactive) {
63
+ C.condition._unsubscribe(C.observerId);
64
64
  C.observerId = 0;
65
65
  }
66
66
  }
@@ -72,7 +72,7 @@ export class ConditionalVdom extends Vdom {
72
72
  let newIndex = -1;
73
73
  for (let c = 0; c < this.conditions.length; c++) {
74
74
  let C = this.conditions[c];
75
- if (C.condition instanceof Reactive ? C.condition.getValue() : C.condition) {
75
+ if (C.condition instanceof BoundReactive ? C.condition._get() : C.condition) {
76
76
  newIndex = c;
77
77
  break;
78
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"conditional-vdom.js","sourceRoot":"","sources":["../../src/vdom-nodes/conditional-vdom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conditional-vdom.js","sourceRoot":"","sources":["../../src/vdom-nodes/conditional-vdom.ts"],"names":[],"mappings":"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"}
@@ -1,24 +1,26 @@
1
- import { IComponent } from "dothtml-interfaces";
2
- import Reactive from "../reactive";
1
+ import { IDotComponent, IDotCore } from "dothtml-interfaces";
2
+ import Reactive from "../reactivity/reactive";
3
3
  import { ConditionalVdom } from "./conditional-vdom";
4
4
  import ElementVdom from "./element-vdom";
5
5
  import { Vdom } from "./vdom";
6
6
  import { ObservableCollection } from "./vdom-types";
7
+ import BoundReactive from "../reactivity/bound-reactive";
7
8
  type ParentVdom = ContainerVdom | ConditionalVdom | ElementVdom;
8
9
  export declare class ContainerVdom extends Vdom {
9
10
  _children: Array<Vdom>;
10
11
  _parent: ParentVdom;
11
- constructor();
12
+ _dot: IDotCore;
13
+ constructor(dot: IDotCore);
12
14
  _addChild(content: Vdom): this;
13
15
  _render(node: HTMLElement): void;
14
16
  _unrender(): void;
15
17
  attr(A: string, c: any): void;
16
- html(c: string | Reactive): this;
17
- text(c: string | Reactive): this;
18
+ html(c: string | Reactive | BoundReactive): this;
19
+ text(c: string | Reactive | BoundReactive): this;
18
20
  md(c: string | Reactive): this;
19
- mount(c: IComponent): this;
20
- when(condition: Reactive | boolean, then: ContainerVdom | string | boolean | number): this;
21
- otherwiseWhen(condition: Reactive | boolean, then: ContainerVdom | string | boolean | number, seal?: boolean): this;
21
+ mount(c: IDotComponent): this;
22
+ when(condition: Reactive | BoundReactive | boolean, then: ContainerVdom | string | boolean | number): this;
23
+ otherwiseWhen(condition: Reactive | BoundReactive | boolean, then: ContainerVdom | string | boolean | number, seal?: boolean): this;
22
24
  otherwise(then: ContainerVdom | string | boolean | number): this;
23
25
  each(collection: ObservableCollection, callback: () => Vdom): this;
24
26
  }
@@ -1,3 +1,4 @@
1
+ import Reactive from "../reactivity/reactive";
1
2
  import CollectionVdom from "./collection-vdom";
2
3
  import { ConditionalVdom } from "./conditional-vdom";
3
4
  import ElementVdom from "./element-vdom";
@@ -5,11 +6,18 @@ import { HtmlVdom } from "./html-vdom";
5
6
  import { TextVdom } from "./text-vdom";
6
7
  import { Vdom } from "./vdom";
7
8
  import { ComponentVdom } from "./component-vdom";
9
+ function reduceReactive(value) {
10
+ if (value instanceof Reactive)
11
+ return value.bind();
12
+ else
13
+ return value;
14
+ }
8
15
  export class ContainerVdom extends Vdom {
9
- constructor() {
16
+ constructor(dot) {
10
17
  super();
11
18
  this._children = [];
12
19
  this._parent = null;
20
+ this._dot = dot;
13
21
  }
14
22
  _addChild(content) {
15
23
  this._children.push(content);
@@ -37,18 +45,18 @@ export class ContainerVdom extends Vdom {
37
45
  }
38
46
  }
39
47
  html(c) {
40
- let hn = new HtmlVdom(c);
48
+ let hn = new HtmlVdom(reduceReactive(c));
41
49
  return this._addChild(hn);
42
50
  }
43
51
  text(c) {
44
- let tn = new TextVdom(c);
52
+ let tn = new TextVdom(reduceReactive(c));
45
53
  return this._addChild(tn);
46
54
  }
47
55
  md(c) {
48
- return this.text(c);
56
+ return this.text(reduceReactive(c));
49
57
  }
50
58
  mount(c) {
51
- let cn = new ComponentVdom(c);
59
+ let cn = new ComponentVdom(this._dot, c);
52
60
  return this._addChild(cn);
53
61
  }
54
62
  when(condition, then) {
@@ -58,12 +66,12 @@ export class ContainerVdom extends Vdom {
58
66
  thenContainer = then;
59
67
  }
60
68
  else {
61
- thenContainer = new ContainerVdom();
62
- let textVdom = new TextVdom(then);
69
+ thenContainer = new ContainerVdom(this._dot);
70
+ let textVdom = new TextVdom(reduceReactive(then));
63
71
  thenContainer._addChild(textVdom);
64
72
  then = thenContainer;
65
73
  }
66
- condNode.addCondition(condition, then);
74
+ condNode.addCondition(reduceReactive(condition), reduceReactive(then));
67
75
  this._addChild(condNode);
68
76
  return this;
69
77
  }
@@ -75,12 +83,12 @@ export class ContainerVdom extends Vdom {
75
83
  thenContainer = then;
76
84
  }
77
85
  else {
78
- thenContainer = new ContainerVdom();
79
- let textVdom = new TextVdom(then);
86
+ thenContainer = new ContainerVdom(this._dot);
87
+ let textVdom = new TextVdom(reduceReactive(then));
80
88
  thenContainer._addChild(textVdom);
81
89
  then = thenContainer;
82
90
  }
83
- condNode.addCondition(condition, then, seal);
91
+ condNode.addCondition(reduceReactive(condition), reduceReactive(then), seal);
84
92
  }
85
93
  else {
86
94
  throw new Error("Can't branch off of a non-conditional node.");
@@ -89,7 +97,7 @@ export class ContainerVdom extends Vdom {
89
97
  }
90
98
  otherwise(then) { return this.otherwiseWhen(true, then, true); }
91
99
  each(collection, callback) {
92
- let collectionVdom = new CollectionVdom(collection, callback);
100
+ let collectionVdom = new CollectionVdom(reduceReactive(collection), callback);
93
101
  this._addChild(collectionVdom);
94
102
  return this;
95
103
  }
@@ -1 +1 @@
1
- {"version":3,"file":"container-vdom.js","sourceRoot":"","sources":["../../src/vdom-nodes/container-vdom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"container-vdom.js","sourceRoot":"","sources":["../../src/vdom-nodes/container-vdom.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,10 @@
1
+ import { IDotCore } from "dothtml-interfaces";
1
2
  import { ContainerVdom } from "./container-vdom";
2
3
  import { Vdom } from "./vdom";
4
+ export declare class AttributeItem {
5
+ elementVDom: ElementVdom;
6
+ attribute: string;
7
+ }
3
8
  export default class ElementVdom extends Vdom {
4
9
  children: ContainerVdom;
5
10
  element: HTMLElement;
@@ -10,7 +15,7 @@ export default class ElementVdom extends Vdom {
10
15
  private childBuilders;
11
16
  private attrVNodes;
12
17
  private styleVNodes;
13
- constructor(tag: string);
18
+ constructor(dot: IDotCore, tag: string);
14
19
  _render(node: HTMLElement): void;
15
20
  _unrender(): void;
16
21
  toString(): string;
@@ -1,11 +1,15 @@
1
1
  import { DOT_VDOM_PROP_NAME } from "../constants";
2
- import Reactive from "../reactive";
2
+ import Reactive from "../reactivity/reactive";
3
3
  import AttributeVNode from "../v-meta-nodes/attribute-v-node";
4
4
  import StyleVNode from "../v-meta-nodes/style-v-node";
5
5
  import { ContainerVdom } from "./container-vdom";
6
6
  import { Vdom } from "./vdom";
7
+ import BoundReactive from "../reactivity/bound-reactive";
8
+ import ReactiveAttr from "../reactivity/reactive-attr";
9
+ export class AttributeItem {
10
+ }
7
11
  export default class ElementVdom extends Vdom {
8
- constructor(tag) {
12
+ constructor(dot, tag) {
9
13
  super();
10
14
  this.children = null;
11
15
  this.tag = null;
@@ -16,7 +20,7 @@ export default class ElementVdom extends Vdom {
16
20
  this.attrVNodes = [];
17
21
  this.styleVNodes = [];
18
22
  this.tag = tag;
19
- this.children = new ContainerVdom();
23
+ this.children = new ContainerVdom(dot);
20
24
  this.children._parent = this;
21
25
  }
22
26
  _render(node) {
@@ -52,7 +56,7 @@ export default class ElementVdom extends Vdom {
52
56
  this.styleVNodes.length = 0;
53
57
  for (let i = 0; i < this.attributeObserverIds.length; i++) {
54
58
  let item = this.attributeObserverIds[i];
55
- item.observable.detachBinding(item.id);
59
+ item.observable._unsubscribe(item.id);
56
60
  }
57
61
  this.attributeObserverIds.length = 0;
58
62
  }
@@ -66,7 +70,7 @@ export default class ElementVdom extends Vdom {
66
70
  }
67
71
  setAttr(attr, value) {
68
72
  attr = (attr ?? "").toLowerCase();
69
- if (value && typeof value === "object" && !(value instanceof Array || value instanceof Reactive)) {
73
+ if (value && typeof value === "object" && !(value instanceof Array || value instanceof BoundReactive || value instanceof Reactive)) {
70
74
  switch (attr) {
71
75
  case "style": {
72
76
  value = new StyleVNode(value);
@@ -96,13 +100,13 @@ export default class ElementVdom extends Vdom {
96
100
  else if (value instanceof Array) {
97
101
  node.setAttribute(attr, value.join(" "));
98
102
  }
99
- else if (value instanceof Reactive) {
100
- this.renderAttr(attr, value.getValue(), node);
101
- let id = value.subscribeAttr(this, attr);
103
+ else if (value instanceof BoundReactive) {
104
+ this.renderAttr(attr, value._get(), node);
105
+ let id = value._subscribe(new ReactiveAttr(this, attr));
102
106
  this.attributeObserverIds.push({ id: id, observable: value });
103
107
  if (attr == "value" || attr == "checked") {
104
108
  this.element.addEventListener("input", (e) => {
105
- value.setValue(this.element[attr]);
109
+ value._set(this.element[attr]);
106
110
  });
107
111
  }
108
112
  }
@@ -1 +1 @@
1
- {"version":3,"file":"element-vdom.js","sourceRoot":"","sources":["../../src/vdom-nodes/element-vdom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"element-vdom.js","sourceRoot":"","sources":["../../src/vdom-nodes/element-vdom.ts"],"names":[],"mappings":"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"}