@design-edito/tools 0.1.32 → 0.1.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 (184) hide show
  1. package/agnostic/css/index.js +5 -5
  2. package/agnostic/html/hyper-json/cast/index.js +2 -2
  3. package/agnostic/html/hyper-json/index.js +3 -3
  4. package/agnostic/html/hyper-json/transformers/append/index.js +2 -2
  5. package/agnostic/html/hyper-json/transformers/classList/index.js +2 -2
  6. package/agnostic/html/hyper-json/transformers/index.js +2 -2
  7. package/agnostic/html/hyper-json/transformers/join/index.js +2 -2
  8. package/agnostic/html/hyper-json/transformers/length/index.js +2 -2
  9. package/agnostic/html/hyper-json/transformers/print/index.js +2 -2
  10. package/agnostic/html/hyper-json/transformers/push/index.js +2 -2
  11. package/agnostic/html/hyper-json/transformers/querySelector/index.js +2 -2
  12. package/agnostic/html/hyper-json/transformers/ref/index.js +2 -2
  13. package/agnostic/html/hyper-json/transformers/replace/index.js +2 -2
  14. package/agnostic/html/hyper-json/transformers/split/index.js +2 -2
  15. package/agnostic/html/hyper-json/transformers/toArray/index.js +2 -2
  16. package/agnostic/html/hyper-json/transformers/toBoolean/index.js +2 -2
  17. package/agnostic/html/hyper-json/transformers/toElement/index.js +2 -2
  18. package/agnostic/html/hyper-json/transformers/toNodeList/index.js +2 -2
  19. package/agnostic/html/hyper-json/transformers/toNull/index.js +2 -2
  20. package/agnostic/html/hyper-json/transformers/toNumber/index.js +2 -2
  21. package/agnostic/html/hyper-json/transformers/toRecord/index.js +2 -2
  22. package/agnostic/html/hyper-json/transformers/toRef/index.js +2 -2
  23. package/agnostic/html/hyper-json/transformers/toString/index.js +2 -2
  24. package/agnostic/html/hyper-json/transformers/toText/index.js +2 -2
  25. package/agnostic/html/hyper-json/transformers/toTransformer/index.js +2 -2
  26. package/agnostic/html/hyper-json/transformers/transformSelected/index.js +2 -2
  27. package/agnostic/html/hyper-json/transformers/trim/index.js +2 -2
  28. package/agnostic/html/hyper-json/tree/index.js +2 -2
  29. package/agnostic/html/hyper-json/utils/index.js +2 -2
  30. package/agnostic/html/index.js +13 -13
  31. package/agnostic/misc/index.js +11 -11
  32. package/agnostic/misc/lorem-ipsum/index.js +6 -6
  33. package/agnostic/numbers/index.js +3 -3
  34. package/agnostic/objects/index.d.ts +3 -1
  35. package/agnostic/objects/index.js +13 -9
  36. package/agnostic/objects/record-map/index.d.ts +3 -0
  37. package/agnostic/objects/record-map/index.js +6 -0
  38. package/agnostic/optim/index.js +3 -3
  39. package/agnostic/strings/index.js +4 -4
  40. package/agnostic/time/index.js +3 -3
  41. package/chunks/chunk-XNF5MLCQ.js +14 -0
  42. package/node/files/index.js +3 -3
  43. package/package.json +1 -2
  44. package/agnostic/html/hyper-json/crossenv/index.d.ts +0 -13
  45. package/agnostic/html/hyper-json/crossenv/index.js +0 -6
  46. package/agnostic/misc/crossenv/get-document/index.d.ts +0 -2
  47. package/agnostic/misc/crossenv/get-document/index.js +0 -7
  48. package/agnostic/misc/crossenv/get-window/browser.d.ts +0 -2
  49. package/agnostic/misc/crossenv/get-window/index.d.ts +0 -2
  50. package/agnostic/misc/crossenv/get-window/index.js +0 -6
  51. package/agnostic/misc/crossenv/types.d.ts +0 -3
  52. package/chunks/chunk-2DMWYLFG.js +0 -16
  53. package/chunks/chunk-2PI5AZIL.js +0 -211
  54. package/chunks/chunk-2UYTYTX4.js +0 -31
  55. package/chunks/chunk-3KQRMKQJ.js +0 -27
  56. package/chunks/chunk-3LVR6KZH.js +0 -22
  57. package/chunks/chunk-3PHPA25U.js +0 -18
  58. package/chunks/chunk-3PM7GZ6B.js +0 -33
  59. package/chunks/chunk-3SQJEEBK.js +0 -642
  60. package/chunks/chunk-3UQJFMBN.js +0 -27
  61. package/chunks/chunk-3UURICGY.js +0 -211
  62. package/chunks/chunk-3X6RXJBR.js +0 -37
  63. package/chunks/chunk-4F7ZVE7T.js +0 -332
  64. package/chunks/chunk-4GUDL44X.js +0 -13
  65. package/chunks/chunk-4QQBKBYH.js +0 -59
  66. package/chunks/chunk-4RDW62CU.js +0 -36
  67. package/chunks/chunk-5IR2PWO6.js +0 -211
  68. package/chunks/chunk-6CM2SWSX.js +0 -35
  69. package/chunks/chunk-6EYBQHJS.js +0 -33
  70. package/chunks/chunk-6NZCBAT4.js +0 -19
  71. package/chunks/chunk-6R54C426.js +0 -35
  72. package/chunks/chunk-6V23XMYE.js +0 -982
  73. package/chunks/chunk-73V5RDSG.js +0 -13
  74. package/chunks/chunk-7IGZP4TV.js +0 -30
  75. package/chunks/chunk-7QMAYGNV.js +0 -25
  76. package/chunks/chunk-7YW5HL6N.js +0 -168
  77. package/chunks/chunk-AFFLZUW5.js +0 -33
  78. package/chunks/chunk-AMS3FB24.js +0 -85
  79. package/chunks/chunk-APWPG7BU.js +0 -647
  80. package/chunks/chunk-AXMPRLPI.js +0 -35
  81. package/chunks/chunk-B2O7PFSF.js +0 -1108
  82. package/chunks/chunk-B6CSCX7J.js +0 -278
  83. package/chunks/chunk-B74HAAS6.js +0 -35
  84. package/chunks/chunk-BDHNULU7.js +0 -211
  85. package/chunks/chunk-BEJSITDG.js +0 -31
  86. package/chunks/chunk-BNB7LEMQ.js +0 -35
  87. package/chunks/chunk-CB52KVOZ.js +0 -22
  88. package/chunks/chunk-CECF6UZV.js +0 -29
  89. package/chunks/chunk-DBAJ66BR.js +0 -18
  90. package/chunks/chunk-DGQLPQS2.js +0 -33
  91. package/chunks/chunk-DLLTITVO.js +0 -33
  92. package/chunks/chunk-DMDOCC72.js +0 -18
  93. package/chunks/chunk-DRH7Q4FL.js +0 -127
  94. package/chunks/chunk-DRNK3RLE.js +0 -64
  95. package/chunks/chunk-EAY65ZP6.js +0 -22
  96. package/chunks/chunk-EVOTJ7SU.js +0 -35
  97. package/chunks/chunk-EW46EXFB.js +0 -8
  98. package/chunks/chunk-F5YMP5WU.js +0 -18
  99. package/chunks/chunk-F7EVMWVG.js +0 -27
  100. package/chunks/chunk-F7XWUG2V.js +0 -18
  101. package/chunks/chunk-FFOATPL4.js +0 -211
  102. package/chunks/chunk-FSCSFZOD.js +0 -647
  103. package/chunks/chunk-FWHUASVA.js +0 -22
  104. package/chunks/chunk-G2NZXHW6.js +0 -21
  105. package/chunks/chunk-GDYVCEWA.js +0 -38
  106. package/chunks/chunk-GNBIAWSY.js +0 -278
  107. package/chunks/chunk-GQSPY2CV.js +0 -19
  108. package/chunks/chunk-HDALT7XM.js +0 -620
  109. package/chunks/chunk-HEJV6JIO.js +0 -133
  110. package/chunks/chunk-HENMQK5Y.js +0 -647
  111. package/chunks/chunk-HFEOHBYG.js +0 -647
  112. package/chunks/chunk-HGECIEKD.js +0 -35
  113. package/chunks/chunk-HUKHWFVL.js +0 -19
  114. package/chunks/chunk-IGD53YL5.js +0 -870
  115. package/chunks/chunk-ILEM73XB.js +0 -981
  116. package/chunks/chunk-IPB3U2PD.js +0 -278
  117. package/chunks/chunk-JAST3E5G.js +0 -647
  118. package/chunks/chunk-JY3QZ2YO.js +0 -211
  119. package/chunks/chunk-K3OQEJI3.js +0 -33
  120. package/chunks/chunk-KN4RZPDY.js +0 -211
  121. package/chunks/chunk-KXBKJ3GS.js +0 -642
  122. package/chunks/chunk-L7SL3MND.js +0 -35
  123. package/chunks/chunk-LCFDDWJR.js +0 -278
  124. package/chunks/chunk-LFUY5AWK.js +0 -1108
  125. package/chunks/chunk-LGECI2WL.js +0 -306
  126. package/chunks/chunk-LGUEB5L5.js +0 -211
  127. package/chunks/chunk-LI6QDZCA.js +0 -211
  128. package/chunks/chunk-LYMZZ4BB.js +0 -22
  129. package/chunks/chunk-MDEDNPU5.js +0 -38
  130. package/chunks/chunk-MQHKEGP4.js +0 -33
  131. package/chunks/chunk-NF5ACCXZ.js +0 -211
  132. package/chunks/chunk-NFUY7SLX.js +0 -211
  133. package/chunks/chunk-NK557MKV.js +0 -35
  134. package/chunks/chunk-NTBSGBV2.js +0 -1108
  135. package/chunks/chunk-NWFX6TEY.js +0 -28
  136. package/chunks/chunk-NWMEWFTK.js +0 -33
  137. package/chunks/chunk-O5OTBN22.js +0 -35
  138. package/chunks/chunk-O7MDUYEF.js +0 -211
  139. package/chunks/chunk-OO5SJJDW.js +0 -35
  140. package/chunks/chunk-OVG5RGI3.js +0 -29
  141. package/chunks/chunk-OWRQ3QBI.js +0 -211
  142. package/chunks/chunk-PO3V3I57.js +0 -23
  143. package/chunks/chunk-PXB7U2DH.js +0 -31
  144. package/chunks/chunk-Q52UJOBC.js +0 -18
  145. package/chunks/chunk-QFEF4EET.js +0 -211
  146. package/chunks/chunk-QHSVCGLD.js +0 -280
  147. package/chunks/chunk-QO64L4KB.js +0 -97
  148. package/chunks/chunk-R6KCN6CK.js +0 -40
  149. package/chunks/chunk-RHYLRLKT.js +0 -211
  150. package/chunks/chunk-RJ5E22H5.js +0 -15
  151. package/chunks/chunk-RWUPHV54.js +0 -25
  152. package/chunks/chunk-S2757FI3.js +0 -36
  153. package/chunks/chunk-S42P73SC.js +0 -30
  154. package/chunks/chunk-S5XDYLJH.js +0 -18
  155. package/chunks/chunk-S7MJLTCR.js +0 -211
  156. package/chunks/chunk-SCM6NACT.js +0 -15
  157. package/chunks/chunk-SFV2NYY4.js +0 -211
  158. package/chunks/chunk-SH3Y2I5P.js +0 -18
  159. package/chunks/chunk-SMLKMOAX.js +0 -18
  160. package/chunks/chunk-SQZGZ3VT.js +0 -15
  161. package/chunks/chunk-T5CGXYST.js +0 -647
  162. package/chunks/chunk-TATRVKBS.js +0 -211
  163. package/chunks/chunk-TRB6DPKJ.js +0 -35
  164. package/chunks/chunk-UFKH5WD2.js +0 -21
  165. package/chunks/chunk-UODQZRY2.js +0 -620
  166. package/chunks/chunk-UOULDS6J.js +0 -33
  167. package/chunks/chunk-UPHVZROF.js +0 -35
  168. package/chunks/chunk-UUDXUSI5.js +0 -211
  169. package/chunks/chunk-UWAMSJ2X.js +0 -28
  170. package/chunks/chunk-UZUXLD2Q.js +0 -35
  171. package/chunks/chunk-VA6HXRX4.js +0 -211
  172. package/chunks/chunk-VRUJR6WR.js +0 -39
  173. package/chunks/chunk-W6YBEEZM.js +0 -211
  174. package/chunks/chunk-WABWQCFE.js +0 -127
  175. package/chunks/chunk-WECTUHS5.js +0 -127
  176. package/chunks/chunk-YE5HI3RK.js +0 -211
  177. package/chunks/chunk-YEBOL67V.js +0 -32
  178. package/chunks/chunk-YRGOY5YU.js +0 -1108
  179. package/chunks/chunk-YYE2MVZO.js +0 -211
  180. package/chunks/chunk-ZB73RE7P.js +0 -35
  181. package/chunks/chunk-ZONKYNKA.js +0 -28
  182. package/chunks/{chunk-GPWFYPER.js → chunk-5HWYTIYR.js} +3 -3
  183. package/chunks/{chunk-MCW3JX25.js → chunk-FWZSMFVA.js} +9 -9
  184. package/chunks/{chunk-MUGIN5OW.js → chunk-MZSIKE3H.js} +3 -3
@@ -1,38 +0,0 @@
1
- import {
2
- getDocument
3
- } from "./chunk-73V5RDSG.js";
4
- import {
5
- getWindow
6
- } from "./chunk-4GUDL44X.js";
7
-
8
- // src/agnostic/misc/crossenv/index.ts
9
- var Crossenv;
10
- ((Crossenv2) => {
11
- let RuntimeName;
12
- ((RuntimeName2) => {
13
- RuntimeName2["NODE"] = "Node.js";
14
- RuntimeName2["BROWSER"] = "Browser";
15
- RuntimeName2["DENO"] = "Deno";
16
- RuntimeName2["REACT_NATIVE"] = "React Native";
17
- RuntimeName2["ELECTRON"] = "Electron";
18
- RuntimeName2["CLOUDFLARE"] = "Cloudflare Workers";
19
- RuntimeName2["AWS_LAMBDA"] = "AWS Lambda";
20
- })(RuntimeName = Crossenv2.RuntimeName || (Crossenv2.RuntimeName = {}));
21
- function detectRuntime() {
22
- if (typeof process !== "undefined" && typeof process.versions !== "undefined" && typeof process.versions.node !== "undefined") return "Node.js" /* NODE */;
23
- if (typeof window !== "undefined" && typeof window.document !== "undefined") return "Browser" /* BROWSER */;
24
- if (typeof Deno !== "undefined") return "Deno" /* DENO */;
25
- if (typeof process !== "undefined" && typeof navigator.userAgent === "string" && /ReactNative/.test(navigator.userAgent)) return "React Native" /* REACT_NATIVE */;
26
- if (typeof process !== "undefined" && typeof process.versions !== "undefined" && typeof process.version.electron !== "undefined") return "Electron" /* ELECTRON */;
27
- if (typeof self !== "undefined" && typeof self.addEventListener === "function" && typeof Headers !== "undefined") return "Cloudflare Workers" /* CLOUDFLARE */;
28
- if (typeof AWS !== "undefined" && typeof AWS.Lambda !== "undefined") return "AWS Lambda" /* AWS_LAMBDA */;
29
- return null;
30
- }
31
- Crossenv2.detectRuntime = detectRuntime;
32
- Crossenv2.getWindow = getWindow;
33
- Crossenv2.getDocument = getDocument;
34
- })(Crossenv || (Crossenv = {}));
35
-
36
- export {
37
- Crossenv
38
- };
@@ -1,278 +0,0 @@
1
- import {
2
- Serialize
3
- } from "./chunk-DRNK3RLE.js";
4
- import {
5
- Transformers
6
- } from "./chunk-HUKHWFVL.js";
7
- import {
8
- Types
9
- } from "./chunk-3KQRMKQJ.js";
10
- import {
11
- Cast
12
- } from "./chunk-AMS3FB24.js";
13
- import {
14
- Crossenv
15
- } from "./chunk-3LVR6KZH.js";
16
- import {
17
- isRecord
18
- } from "./chunk-YDIBNEGA.js";
19
- import {
20
- isInEnum
21
- } from "./chunk-E6MSDKON.js";
22
-
23
- // src/agnostic/html/hyper-json/tree/index.ts
24
- var getWindow = Crossenv.getWindow;
25
- var isElement = (node) => node.nodeType === getWindow().Node.ELEMENT_NODE;
26
- var isText = (node) => node.nodeType === getWindow().Node.TEXT_NODE;
27
- var Tree = class _Tree {
28
- node;
29
- name;
30
- parent;
31
- root;
32
- path;
33
- pathString;
34
- pathFromParent;
35
- tagName;
36
- attributes;
37
- subtrees = /* @__PURE__ */ new Map();
38
- children;
39
- type;
40
- constructor(node, parent, pathFromParent) {
41
- this.resolve = this.resolve.bind(this);
42
- this.initValue = this.initValue.bind(this);
43
- this.mergeValues = this.mergeValues.bind(this);
44
- this.getInnerValue = this.getInnerValue.bind(this);
45
- this.wrapInnerValue = this.wrapInnerValue.bind(this);
46
- this.printEvaluationsCounters = this.printEvaluationsCounters.bind(this);
47
- this.evaluate = this.evaluate.bind(this);
48
- this.setCache = this.setCache.bind(this);
49
- this.node = node;
50
- this.name = this.node instanceof getWindow().Element ? this.node.getAttribute("_name") : null;
51
- this.parent = parent ?? null;
52
- this.root = this.parent === null ? this : this.parent.root;
53
- if (this.parent === null) this.path = [];
54
- else if (pathFromParent === void 0) {
55
- this.path = [...this.parent.path, 0];
56
- } else {
57
- this.path = [...this.parent.path, pathFromParent];
58
- }
59
- this.pathString = `/${this.path.join("/")}`;
60
- this.pathFromParent = pathFromParent ?? this.name ?? 0;
61
- this.tagName = node instanceof getWindow().Element ? node.tagName.toLowerCase() : null;
62
- this.attributes = isElement(node) ? Array.from(node.attributes) : null;
63
- const { childNodes } = node;
64
- let positionnedChildrenCount = 0;
65
- const mutableSubtrees = /* @__PURE__ */ new Map();
66
- Array.from(childNodes).filter((node2, _, nodes) => {
67
- if (isElement(node2)) return true;
68
- if (isText(node2)) {
69
- const hasContent = (node2.textContent ?? "").trim() !== "";
70
- if (hasContent) return true;
71
- if (nodes.some((n) => n instanceof getWindow().Element)) return false;
72
- return true;
73
- }
74
- return false;
75
- }).forEach((childNode) => {
76
- if (childNode instanceof getWindow().Text) {
77
- mutableSubtrees.set(
78
- positionnedChildrenCount,
79
- new _Tree(childNode, this, positionnedChildrenCount)
80
- );
81
- positionnedChildrenCount += 1;
82
- } else {
83
- const propertyName = childNode.getAttribute("_name");
84
- if (propertyName === null) {
85
- mutableSubtrees.set(
86
- positionnedChildrenCount,
87
- new _Tree(childNode, this, positionnedChildrenCount)
88
- );
89
- positionnedChildrenCount += 1;
90
- } else {
91
- mutableSubtrees.set(
92
- propertyName,
93
- new _Tree(childNode, this, propertyName)
94
- );
95
- }
96
- }
97
- });
98
- this.subtrees = mutableSubtrees;
99
- this.children = Array.from(this.subtrees.values());
100
- if (this.tagName === null) {
101
- this.type = "text";
102
- } else if (this.tagName === Types.TyperTagName.NULL) {
103
- this.type = "null";
104
- } else if (this.tagName === Types.TyperTagName.BOOLEAN) {
105
- this.type = "boolean";
106
- } else if (this.tagName === Types.TyperTagName.NUMBER) {
107
- this.type = "number";
108
- } else if (this.tagName === Types.TyperTagName.STRING) {
109
- this.type = "string";
110
- } else if (this.tagName === Types.TyperTagName.TEXT) {
111
- this.type = "text";
112
- } else if (this.tagName === Types.TyperTagName.NODELIST) {
113
- this.type = "nodelist";
114
- } else if (this.tagName === Types.TyperTagName.ARRAY) {
115
- this.type = "array";
116
- } else if (this.tagName === Types.TyperTagName.RECORD) {
117
- this.type = "record";
118
- } else if (isInEnum(Types.TransformerTagName, this.tagName)) {
119
- this.type = "transformer";
120
- } else {
121
- this.type = "element";
122
- }
123
- }
124
- resolve = function(path) {
125
- let currentTree = this.root;
126
- for (const chunk of path) {
127
- const { subtrees } = currentTree;
128
- const foundSubtree = subtrees.get(chunk);
129
- if (foundSubtree === void 0) return void 0;
130
- currentTree = foundSubtree;
131
- }
132
- return currentTree;
133
- };
134
- initValue() {
135
- const { type } = this;
136
- let currentValue;
137
- if (type === "null") {
138
- currentValue = null;
139
- } else if (type === "boolean") {
140
- currentValue = false;
141
- } else if (type === "number") {
142
- currentValue = 0;
143
- } else if (type === "string") {
144
- currentValue = "";
145
- } else if (type === "text") {
146
- currentValue = this.node.textContent;
147
- } else if (type === "element") {
148
- currentValue = getWindow().document.createDocumentFragment().childNodes;
149
- } else if (type === "nodelist") {
150
- currentValue = getWindow().document.createDocumentFragment().childNodes;
151
- } else if (type === "array") {
152
- currentValue = [];
153
- } else if (type === "record") {
154
- currentValue = {};
155
- } else if (type === "transformer") {
156
- currentValue = [];
157
- } else {
158
- currentValue = null;
159
- }
160
- return currentValue;
161
- }
162
- mergeValues(currentValue, incomingValue, mergeKey) {
163
- const { Element, Text, NodeList, document } = getWindow();
164
- if (typeof incomingValue === "function") {
165
- const evaluated = incomingValue(currentValue, { resolver: this.resolve });
166
- if (evaluated.action === null) return currentValue;
167
- if (evaluated.action === "REPLACE") return evaluated.value;
168
- return this.mergeValues(currentValue, evaluated.value, mergeKey);
169
- }
170
- if (Array.isArray(currentValue)) {
171
- if (typeof mergeKey === "string") return currentValue;
172
- return [...currentValue, incomingValue];
173
- }
174
- if (currentValue === null || typeof currentValue === "boolean" || typeof currentValue === "number" || typeof currentValue === "string" || typeof currentValue === "function" || currentValue instanceof Text || currentValue instanceof Element) {
175
- if (incomingValue === null || typeof incomingValue === "boolean" || typeof incomingValue === "number" || typeof incomingValue === "string" || Array.isArray(incomingValue) || isRecord(incomingValue)) {
176
- return incomingValue;
177
- }
178
- const frag = document.createDocumentFragment();
179
- if (currentValue instanceof Element || currentValue instanceof Text) frag.append(currentValue.cloneNode(true));
180
- else frag.append(`${currentValue}`);
181
- if (incomingValue instanceof Element || incomingValue instanceof Text) {
182
- frag.append(incomingValue.cloneNode(true));
183
- return frag.childNodes;
184
- }
185
- frag.append(...Array.from(incomingValue).map((e) => e.cloneNode(true)));
186
- return frag.childNodes;
187
- }
188
- if (currentValue instanceof NodeList) {
189
- if (incomingValue instanceof Element || incomingValue instanceof Text) {
190
- const frag = document.createDocumentFragment();
191
- frag.append(...Array.from(currentValue).map((e) => e.cloneNode(true)), incomingValue);
192
- return frag.childNodes;
193
- }
194
- if (incomingValue instanceof NodeList) {
195
- const frag = document.createDocumentFragment();
196
- frag.append(
197
- ...Array.from(currentValue).map((e) => e.cloneNode(true)),
198
- ...Array.from(incomingValue).map((e) => e.cloneNode(true))
199
- );
200
- return frag.childNodes;
201
- }
202
- if (incomingValue === null || typeof incomingValue === "string" || typeof incomingValue === "number" || typeof incomingValue === "boolean") {
203
- const frag = document.createDocumentFragment();
204
- frag.append(...Array.from(currentValue).map((e) => e.cloneNode(true)), `${incomingValue}`);
205
- return frag.childNodes;
206
- }
207
- if (Array.isArray(incomingValue)) return [
208
- ...Array.from(currentValue),
209
- ...incomingValue
210
- ];
211
- return { ...incomingValue };
212
- }
213
- if (typeof mergeKey === "number") return currentValue;
214
- return {
215
- ...currentValue,
216
- [mergeKey]: incomingValue
217
- };
218
- }
219
- getInnerValue(initialValue) {
220
- const { subtrees } = this;
221
- const innerValue = Array.from(subtrees.entries()).reduce((currentValue, [subpath, subtree]) => this.mergeValues(
222
- currentValue,
223
- subtree.evaluate(),
224
- subpath
225
- ), initialValue);
226
- return innerValue;
227
- }
228
- wrapInnerValue(innerValue) {
229
- const { type, pathFromParent } = this;
230
- if (type === "transformer") {
231
- const transformerName = this.tagName;
232
- const generator = Transformers.get(transformerName);
233
- if (generator === void 0) return innerValue;
234
- const transformer = Array.isArray(innerValue) ? generator(pathFromParent, ...innerValue) : generator(pathFromParent, innerValue);
235
- return transformer;
236
- }
237
- if (type === "null") return Cast.toNull();
238
- if (type === "boolean") return Cast.toBoolean(innerValue);
239
- if (type === "number") return Cast.toNumber(innerValue);
240
- if (type === "string") return Cast.toString(innerValue);
241
- if (type === "array") return Cast.toArray(innerValue);
242
- if (type === "record") return Cast.toRecord(innerValue);
243
- if (type === "text") return Cast.toText(innerValue);
244
- if (type === "element") return Cast.toElement(innerValue);
245
- if (type === "nodelist") return Cast.toNodeList(innerValue);
246
- return Cast.toNull();
247
- }
248
- evaluationsCounter = {
249
- computed: 0,
250
- cached: 0
251
- };
252
- printEvaluationsCounters() {
253
- const { subtrees, evaluationsCounter } = this;
254
- const { computed, cached } = evaluationsCounter;
255
- console.log(this.pathString, `computed: ${computed}, cached: ${cached}`);
256
- subtrees.forEach((subtree) => subtree.printEvaluationsCounters());
257
- }
258
- cache = void 0;
259
- setCache(value) {
260
- this.cache = Serialize.serialize(value);
261
- }
262
- evaluate() {
263
- if (this.cache !== void 0) {
264
- this.evaluationsCounter.cached++;
265
- return Serialize.deserialize(this.cache);
266
- }
267
- const init = this.initValue();
268
- const inner = this.getInnerValue(init);
269
- const wrapped = this.wrapInnerValue(inner);
270
- this.setCache(wrapped);
271
- this.evaluationsCounter.computed++;
272
- return wrapped;
273
- }
274
- };
275
-
276
- export {
277
- Tree
278
- };
@@ -1,19 +0,0 @@
1
- import {
2
- Types
3
- } from "./chunk-3KQRMKQJ.js";
4
- import {
5
- ref
6
- } from "./chunk-S2757FI3.js";
7
-
8
- // src/agnostic/html/hyper-json/transformers/index.ts
9
- var Transformers;
10
- ((Transformers2) => {
11
- Transformers2.index = /* @__PURE__ */ new Map([
12
- [Types.TransformerTagName.REF, ref]
13
- ]);
14
- Transformers2.get = (name) => Transformers2.index.get(name);
15
- })(Transformers || (Transformers = {}));
16
-
17
- export {
18
- Transformers
19
- };