dothtml 5.2.12 → 6.0.0-beta.2

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 (130) hide show
  1. package/build_module/constants.d.ts +1 -0
  2. package/build_module/constants.js +2 -0
  3. package/build_module/constants.js.map +1 -0
  4. package/build_module/decoration/component.d.ts +25 -0
  5. package/build_module/decoration/component.js +32 -0
  6. package/build_module/decoration/component.js.map +1 -0
  7. package/build_module/decoration/style.d.ts +0 -0
  8. package/build_module/decoration/style.js +1 -0
  9. package/build_module/decoration/style.js.map +1 -0
  10. package/build_module/dot.d.ts +3 -0
  11. package/build_module/dot.js +514 -0
  12. package/build_module/dot.js.map +1 -0
  13. package/build_module/helpers.d.ts +2 -0
  14. package/build_module/helpers.js +49 -0
  15. package/build_module/helpers.js.map +1 -0
  16. package/build_module/index.d.ts +7 -0
  17. package/build_module/index.js +5 -0
  18. package/build_module/index.js.map +1 -0
  19. package/build_module/reactive.d.ts +37 -0
  20. package/build_module/reactive.js +120 -0
  21. package/build_module/reactive.js.map +1 -0
  22. package/build_module/v-dom-node.d.ts +0 -0
  23. package/build_module/v-dom-node.js +1 -0
  24. package/build_module/v-dom-node.js.map +1 -0
  25. package/build_module/vdom-nodes/collection-vdom.d.ts +24 -0
  26. package/build_module/vdom-nodes/collection-vdom.js +154 -0
  27. package/build_module/vdom-nodes/collection-vdom.js.map +1 -0
  28. package/build_module/vdom-nodes/component-vdom.d.ts +14 -0
  29. package/build_module/vdom-nodes/component-vdom.js +60 -0
  30. package/build_module/vdom-nodes/component-vdom.js.map +1 -0
  31. package/build_module/vdom-nodes/conditional-vdom.d.ts +14 -0
  32. package/build_module/vdom-nodes/conditional-vdom.js +97 -0
  33. package/build_module/vdom-nodes/conditional-vdom.js.map +1 -0
  34. package/build_module/vdom-nodes/container-vdom.d.ts +23 -0
  35. package/build_module/vdom-nodes/container-vdom.js +85 -0
  36. package/build_module/vdom-nodes/container-vdom.js.map +1 -0
  37. package/build_module/vdom-nodes/element-vdom.d.ts +18 -0
  38. package/build_module/vdom-nodes/element-vdom.js +88 -0
  39. package/build_module/vdom-nodes/element-vdom.js.map +1 -0
  40. package/build_module/vdom-nodes/html-vdom.d.ts +13 -0
  41. package/build_module/vdom-nodes/html-vdom.js +53 -0
  42. package/build_module/vdom-nodes/html-vdom.js.map +1 -0
  43. package/build_module/vdom-nodes/text-vdom.d.ts +11 -0
  44. package/build_module/vdom-nodes/text-vdom.js +37 -0
  45. package/build_module/vdom-nodes/text-vdom.js.map +1 -0
  46. package/build_module/vdom-nodes/vdom.d.ts +7 -0
  47. package/build_module/vdom-nodes/vdom.js +28 -0
  48. package/build_module/vdom-nodes/vdom.js.map +1 -0
  49. package/package.json +26 -19
  50. package/lib/arg-callback-obj.d.ts +0 -29
  51. package/lib/arg-callback-obj.js +0 -64
  52. package/lib/arg-callback-obj.js.map +0 -1
  53. package/lib/built-in-components/nav-link.d.ts +0 -8
  54. package/lib/built-in-components/nav-link.js +0 -24
  55. package/lib/built-in-components/nav-link.js.map +0 -1
  56. package/lib/built-in-components/router.d.ts +0 -57
  57. package/lib/built-in-components/router.js +0 -282
  58. package/lib/built-in-components/router.js.map +0 -1
  59. package/lib/component.d.ts +0 -93
  60. package/lib/component.js +0 -354
  61. package/lib/component.js.map +0 -1
  62. package/lib/dot-util.d.ts +0 -26
  63. package/lib/dot-util.js +0 -62
  64. package/lib/dot-util.js.map +0 -1
  65. package/lib/dot.d.ts +0 -5
  66. package/lib/dot.js +0 -1129
  67. package/lib/dot.js.map +0 -1
  68. package/lib/dothtml.d.ts +0 -29
  69. package/lib/dothtml.js +0 -15
  70. package/lib/dothtml.js.map +0 -1
  71. package/lib/err.d.ts +0 -2
  72. package/lib/err.js +0 -26
  73. package/lib/err.js.map +0 -1
  74. package/lib/event-bus.d.ts +0 -10
  75. package/lib/event-bus.js +0 -37
  76. package/lib/event-bus.js.map +0 -1
  77. package/lib/i-dot.d.ts +0 -689
  78. package/lib/i-dot.js +0 -3
  79. package/lib/i-dot.js.map +0 -1
  80. package/lib/node-polyfill.d.ts +0 -2
  81. package/lib/node-polyfill.js +0 -14
  82. package/lib/node-polyfill.js.map +0 -1
  83. package/lib/observable-array.d.ts +0 -49
  84. package/lib/observable-array.js +0 -274
  85. package/lib/observable-array.js.map +0 -1
  86. package/lib/pages/home-page.d.ts +0 -9
  87. package/lib/pages/home-page.js +0 -24
  88. package/lib/pages/home-page.js.map +0 -1
  89. package/lib/styling/css-types.ts/css-angle.d.ts +0 -7
  90. package/lib/styling/css-types.ts/css-angle.js +0 -22
  91. package/lib/styling/css-types.ts/css-angle.js.map +0 -1
  92. package/lib/styling/css-types.ts/css-color.d.ts +0 -9
  93. package/lib/styling/css-types.ts/css-color.js +0 -824
  94. package/lib/styling/css-types.ts/css-color.js.map +0 -1
  95. package/lib/styling/css-types.ts/css-complex.d.ts +0 -7
  96. package/lib/styling/css-types.ts/css-complex.js +0 -23
  97. package/lib/styling/css-types.ts/css-complex.js.map +0 -1
  98. package/lib/styling/css-types.ts/css-data-type.d.ts +0 -5
  99. package/lib/styling/css-types.ts/css-data-type.js +0 -9
  100. package/lib/styling/css-types.ts/css-data-type.js.map +0 -1
  101. package/lib/styling/css-types.ts/css-filter.d.ts +0 -22
  102. package/lib/styling/css-types.ts/css-filter.js +0 -121
  103. package/lib/styling/css-types.ts/css-filter.js.map +0 -1
  104. package/lib/styling/css-types.ts/css-length.d.ts +0 -7
  105. package/lib/styling/css-types.ts/css-length.js +0 -24
  106. package/lib/styling/css-types.ts/css-length.js.map +0 -1
  107. package/lib/styling/css-types.ts/css-number.d.ts +0 -6
  108. package/lib/styling/css-types.ts/css-number.js +0 -17
  109. package/lib/styling/css-types.ts/css-number.js.map +0 -1
  110. package/lib/styling/css-types.ts/css-percentage.d.ts +0 -5
  111. package/lib/styling/css-types.ts/css-percentage.js +0 -13
  112. package/lib/styling/css-types.ts/css-percentage.js.map +0 -1
  113. package/lib/styling/css-types.ts/css-transform.d.ts +0 -38
  114. package/lib/styling/css-types.ts/css-transform.js +0 -183
  115. package/lib/styling/css-types.ts/css-transform.js.map +0 -1
  116. package/lib/styling/css-types.ts/css-unknown.d.ts +0 -6
  117. package/lib/styling/css-types.ts/css-unknown.js +0 -17
  118. package/lib/styling/css-types.ts/css-unknown.js.map +0 -1
  119. package/lib/styling/css-types.ts/css-url.d.ts +0 -6
  120. package/lib/styling/css-types.ts/css-url.js +0 -45
  121. package/lib/styling/css-types.ts/css-url.js.map +0 -1
  122. package/lib/styling/i-dotcss.d.ts +0 -1085
  123. package/lib/styling/i-dotcss.js +0 -3
  124. package/lib/styling/i-dotcss.js.map +0 -1
  125. package/lib/styling/style-builder.d.ts +0 -24
  126. package/lib/styling/style-builder.js +0 -815
  127. package/lib/styling/style-builder.js.map +0 -1
  128. package/lib/styling/unit-function-tables.d.ts +0 -10
  129. package/lib/styling/unit-function-tables.js +0 -27
  130. package/lib/styling/unit-function-tables.js.map +0 -1
@@ -0,0 +1 @@
1
+ export declare const DOT_VDOM_PROP_NAME = "_dotVDom";
@@ -0,0 +1,2 @@
1
+ export const DOT_VDOM_PROP_NAME = "_dotVDom";
2
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,kBAAkB,GAAG,UAAU,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { IComponent } from "dothtml-interfaces";
2
+ export declare function component(Base: new (...args: Array<any>) => IComponent): {
3
+ new (...args: any[]): {
4
+ _: {
5
+ root: any;
6
+ refs: any;
7
+ emit: any;
8
+ restyle: () => void;
9
+ _meta: {
10
+ isRendered: boolean;
11
+ tagName: string;
12
+ args: any[];
13
+ sharedStyles: CSSStyleSheet;
14
+ };
15
+ };
16
+ events?: string[];
17
+ build(...args: any[]): import("dothtml-interfaces").IDotGenericElement;
18
+ style?(css: import("dothtml-interfaces").IDotCss): void;
19
+ creating?(...args: any[]): void;
20
+ ready?(): void;
21
+ deleting?(): void;
22
+ deleted?(): void;
23
+ built?(): void;
24
+ };
25
+ };
@@ -0,0 +1,32 @@
1
+ let tagId = 0x10000;
2
+ function restyle(c) {
3
+ if (c._.root) {
4
+ let root = c._.root;
5
+ }
6
+ }
7
+ export function component(Base) {
8
+ let ts = (Math.floor(performance.now() * 10000000000000)).toString(16);
9
+ let tId = (tagId++).toString(16);
10
+ let tagName = `dothtml-${tId}${component["_addTimestamp"] ? `-${ts}` : ""}`;
11
+ let sharedStyles = new CSSStyleSheet();
12
+ return class extends Base {
13
+ constructor(...args) {
14
+ super(...args);
15
+ this._ = {
16
+ root: null,
17
+ refs: null,
18
+ emit: null,
19
+ restyle: () => { restyle(this); },
20
+ _meta: {
21
+ isRendered: false,
22
+ tagName: tagName,
23
+ args: null,
24
+ sharedStyles: sharedStyles
25
+ }
26
+ };
27
+ this._._meta.args = args;
28
+ }
29
+ };
30
+ }
31
+ component["_addTimestamp"] = true;
32
+ //# sourceMappingURL=component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/decoration/component.ts"],"names":[],"mappings":"AAEA,IAAI,KAAK,GAAG,OAAO,CAAC;AAEpB,SAAS,OAAO,CAAC,CAAC;IACjB,IAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAC;QACX,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAkB,CAAC;KAElC;AACF,CAAC;AAID,MAAM,UAAU,SAAS,CAAC,IAAyC;IAElE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrE,IAAI,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACjC,IAAI,OAAO,GAAG,WAAW,GAAG,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAC5E,IAAI,YAAY,GAAG,IAAI,aAAa,EAAE,CAAC;IAGvC,OAAO,KAAM,SAAQ,IAAI;QAcxB,YAAY,GAAG,IAAW;YACzB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;YAdhB,MAAC,GAAG;gBACH,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,GAAE,EAAE,GAAC,OAAO,CAAC,IAAI,CAAC,CAAA,CAAA,CAAC;gBAC5B,KAAK,EAAE;oBACN,UAAU,EAAE,KAAK;oBACjB,OAAO,EAAE,OAAO;oBAChB,IAAI,EAAE,IAAkB;oBACxB,YAAY,EAAE,YAAY;iBAC1B;aACD,CAAC;YAKD,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;QAC1B,CAAC;KACD,CAAA;AACF,CAAC;AAED,SAAS,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC"}
File without changes
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=style.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"style.js","sourceRoot":"","sources":["../../src/decoration/style.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import { IDotCore } from "dothtml-interfaces";
2
+ declare const dot: IDotCore;
3
+ export default dot;
@@ -0,0 +1,514 @@
1
+ import { ContainerVdom } from "./vdom-nodes/container-vdom";
2
+ import { TextVdom } from "./vdom-nodes/text-vdom";
3
+ import ElementVdom from "./vdom-nodes/element-vdom";
4
+ import { Vdom } from "./vdom-nodes/vdom";
5
+ import { DOT_VDOM_PROP_NAME } from "./constants";
6
+ import Reactive from "./reactive";
7
+ import { component } from "./decoration/component";
8
+ import { ComponentVdom } from "./vdom-nodes/component-vdom";
9
+ const allTags = [
10
+ "a",
11
+ "aside",
12
+ "abbr",
13
+ "address",
14
+ "area",
15
+ "article",
16
+ "audio",
17
+ "b",
18
+ "bdi",
19
+ "bdo",
20
+ "blockQuote",
21
+ "body",
22
+ "br",
23
+ "button",
24
+ "canvas",
25
+ "caption",
26
+ "cite",
27
+ "code",
28
+ "col",
29
+ "colGroup",
30
+ "content",
31
+ "data",
32
+ "dataList",
33
+ "dd",
34
+ "del",
35
+ "details",
36
+ "dfn",
37
+ "dialog",
38
+ "div",
39
+ "dl",
40
+ "dt",
41
+ "em",
42
+ "embed",
43
+ "fieldSet",
44
+ "figCaption",
45
+ "figure",
46
+ "footer",
47
+ "form",
48
+ "h1",
49
+ "h2",
50
+ "h3",
51
+ "h4",
52
+ "h5",
53
+ "h6",
54
+ "header",
55
+ "hr",
56
+ "i",
57
+ "iFrame",
58
+ "img",
59
+ "input",
60
+ "ins",
61
+ "kbd",
62
+ "keyGen",
63
+ "label",
64
+ "legend",
65
+ "li",
66
+ "main",
67
+ "map",
68
+ "mark",
69
+ "menu",
70
+ "menuItem",
71
+ "meter",
72
+ "nav",
73
+ "object",
74
+ "ol",
75
+ "optGroup",
76
+ "option",
77
+ "output",
78
+ "p",
79
+ "param",
80
+ "pre",
81
+ "progress",
82
+ "q",
83
+ "rp",
84
+ "rt",
85
+ "ruby",
86
+ "s",
87
+ "samp",
88
+ "section",
89
+ "select",
90
+ "small",
91
+ "source",
92
+ "span",
93
+ "strong",
94
+ "svg",
95
+ "sub",
96
+ "summary",
97
+ "sup",
98
+ "table",
99
+ "tBody",
100
+ "td",
101
+ "textArea",
102
+ "tFoot",
103
+ "th",
104
+ "tHead",
105
+ "time",
106
+ "tr",
107
+ "track",
108
+ "u",
109
+ "ul",
110
+ "var",
111
+ "video",
112
+ "wbr"
113
+ ];
114
+ const allAttributes = [
115
+ "accept",
116
+ "accessKey",
117
+ "action",
118
+ "align",
119
+ "allow",
120
+ "allowFullScreen",
121
+ "aLink",
122
+ "alt",
123
+ "archive",
124
+ "autoCapitalize",
125
+ "autoComplete",
126
+ "autoFocus",
127
+ "autoPlay",
128
+ "autoSave",
129
+ "axis",
130
+ "background",
131
+ "bgColor",
132
+ "border",
133
+ "buffered",
134
+ "cellPadding",
135
+ "cellSpacing",
136
+ "challenge",
137
+ "char",
138
+ "charset",
139
+ "charOff",
140
+ "checked",
141
+ "class",
142
+ "classId",
143
+ "clear",
144
+ "codeBase",
145
+ "codeType",
146
+ "color",
147
+ "cols",
148
+ "colSpan",
149
+ "compact",
150
+ "contentEditable",
151
+ "contextMenu",
152
+ "controls",
153
+ "coords",
154
+ "crossOrigin",
155
+ "dateTime",
156
+ "declare",
157
+ "decoding",
158
+ "default",
159
+ "dir",
160
+ "dirName",
161
+ "disabled",
162
+ "download",
163
+ "draggable",
164
+ "dropZone",
165
+ "encType",
166
+ "enterKeyHint",
167
+ "exportParts",
168
+ "face",
169
+ "font",
170
+ "fontFace",
171
+ "fontFaceFormat",
172
+ "fontFaceName",
173
+ "fontFaceSrc",
174
+ "fontFaceUri",
175
+ "fontSpecification",
176
+ "for",
177
+ "foreignObject",
178
+ "formAction",
179
+ "frame",
180
+ "frameBorder",
181
+ "headers",
182
+ "height",
183
+ "hidden",
184
+ "high",
185
+ "hRef",
186
+ "hRefLang",
187
+ "hSpace",
188
+ "icon",
189
+ "id",
190
+ "inert",
191
+ "inputMode",
192
+ "images",
193
+ "is",
194
+ "isMap",
195
+ "itemId",
196
+ "itemProp",
197
+ "itemRef",
198
+ "itemScope",
199
+ "itemType",
200
+ "keyType",
201
+ "kind",
202
+ "lang",
203
+ "list",
204
+ "loading",
205
+ "longDesc",
206
+ "loop",
207
+ "low",
208
+ "manifest",
209
+ "marginHeight",
210
+ "marginWidth",
211
+ "max",
212
+ "maxLength",
213
+ "media",
214
+ "metadata",
215
+ "method",
216
+ "min",
217
+ "missingGlyph",
218
+ "multiple",
219
+ "muted",
220
+ "name",
221
+ "noHRef",
222
+ "nOnce",
223
+ "noResize",
224
+ "noShade",
225
+ "noValidate",
226
+ "noWrap",
227
+ "open",
228
+ "optimum",
229
+ "part",
230
+ "pattern",
231
+ "ping",
232
+ "placeholder",
233
+ "playsInline",
234
+ "poster",
235
+ "preload",
236
+ "prompt",
237
+ "radioGroup",
238
+ "readOnly",
239
+ "referrerPolicy",
240
+ "rel",
241
+ "required",
242
+ "rev",
243
+ "reversed",
244
+ "role",
245
+ "rows",
246
+ "rowSpan",
247
+ "rules",
248
+ "sandbox",
249
+ "scope",
250
+ "scrolling",
251
+ "seamless",
252
+ "selected",
253
+ "shape",
254
+ "size",
255
+ "sizes",
256
+ "spellCheck",
257
+ "src",
258
+ "srcDoc",
259
+ "srcLang",
260
+ "srcSet",
261
+ "standby",
262
+ "start",
263
+ "step",
264
+ "style",
265
+ "tabIndex",
266
+ "target",
267
+ "title",
268
+ "translate",
269
+ "type",
270
+ "useMap",
271
+ "vAlign",
272
+ "valueType",
273
+ "virtualKeyboardPolicy",
274
+ "width",
275
+ "wrap"
276
+ ];
277
+ const specialAttributes = [
278
+ ["quoteCite", "cite"],
279
+ ["objectData", "data"],
280
+ ["whichForm", "form"],
281
+ ["trackLabel", "label"],
282
+ ["colSpan", "span"],
283
+ ["tableSummary", "summary"],
284
+ ["optionLabel", "label"],
285
+ ["acceptCharset", "accept-charset"],
286
+ ["areaHidden", "area-hidden"],
287
+ ["areaLabel", "area-label"],
288
+ ["areaDescribedBy", "area-describedby"],
289
+ ["areaControls", "area-controls"],
290
+ ["areaExpanded", "area-expanded"],
291
+ ["areaChecked", "area-checked"],
292
+ ["areaSelected", "area-selected"],
293
+ ];
294
+ const allCoreWrappers = ["each", "html", "mount", "text", "when"];
295
+ const allEventAttr = [
296
+ "onAbort",
297
+ "onBlur",
298
+ "onChange",
299
+ "onInput",
300
+ "onCanPlay",
301
+ "onCantPlayThrough",
302
+ "onClick",
303
+ "onCopy",
304
+ "onContextMenu",
305
+ "onCueChange",
306
+ "onCut",
307
+ "onDblClick",
308
+ "onDrag",
309
+ "onDragEnd",
310
+ "onDragEnter",
311
+ "onDragLeave",
312
+ "onDragOver",
313
+ "onDragStart",
314
+ "onDrop",
315
+ "onDurationChange",
316
+ "onEmptied",
317
+ "onEnded",
318
+ "onError",
319
+ "onFocus",
320
+ "onHashChange",
321
+ "onInvalid",
322
+ "onKeyDown",
323
+ "onKeyPress",
324
+ "onKeyUp",
325
+ "onLoad",
326
+ "onLoadedData",
327
+ "onLoadedMetadata",
328
+ "onLoadStart",
329
+ "onMouseDown",
330
+ "onMouseEnter",
331
+ "onMouseLeave",
332
+ "onMouseMove",
333
+ "onMouseOut",
334
+ "onMouseOver",
335
+ "onMouseUp",
336
+ "onPointerCancel",
337
+ "onPointerDown",
338
+ "onPointerEnter",
339
+ "onPointerLeave",
340
+ "onPointerMove",
341
+ "onPointerOut",
342
+ "onPointerOver",
343
+ "onPointerUp",
344
+ "onTouchStart",
345
+ "onTouchEnd",
346
+ "onTouchCancel",
347
+ "onTouchMove",
348
+ "onMouseWheel",
349
+ "onOffline",
350
+ "onOnline",
351
+ "onPageHide",
352
+ "onPagePaste",
353
+ "onPageShow",
354
+ "onPause",
355
+ "onPlay",
356
+ "onPlaying",
357
+ "onPopState",
358
+ "onProgress",
359
+ "onRateChange",
360
+ "onReset",
361
+ "onResize",
362
+ "onScroll",
363
+ "onSearch",
364
+ "onSeeked",
365
+ "onSeeking",
366
+ "onSelect",
367
+ "onStalled",
368
+ "onStorage",
369
+ "onSubmit",
370
+ "onSuspend",
371
+ "onTimeUpdate",
372
+ "onToggle",
373
+ "onUnload",
374
+ "onVolumeChange",
375
+ "onWaiting",
376
+ "onWheel",
377
+ ];
378
+ const makeCoreWrapper = (d, fn) => {
379
+ d[fn] = function () {
380
+ let n = new ContainerVdom();
381
+ n[fn](...arguments);
382
+ return n;
383
+ };
384
+ };
385
+ const makeDot = () => {
386
+ const _dot = function (targetSelector, targetWindow = window) {
387
+ if (targetSelector?.ownerDocument?.defaultView) {
388
+ let el = targetSelector;
389
+ let node = el[DOT_VDOM_PROP_NAME];
390
+ if (node) {
391
+ return node.children;
392
+ }
393
+ else {
394
+ node = new ElementVdom(el.tagName.toLocaleLowerCase());
395
+ node.element = el;
396
+ node.children._parent = node;
397
+ el[DOT_VDOM_PROP_NAME] = node;
398
+ return node.children;
399
+ }
400
+ }
401
+ else if (typeof targetSelector == "string") {
402
+ return _dot(targetWindow.document.querySelectorAll(targetSelector)[0]);
403
+ }
404
+ else {
405
+ throw new Error("Invalid render target.");
406
+ }
407
+ };
408
+ _dot.watch = function (props) {
409
+ let o = new Reactive();
410
+ o.key = props?.key;
411
+ o.transformer = props?.transformer;
412
+ o.setValue(props?.value);
413
+ return o;
414
+ };
415
+ _dot.component = function (Base) {
416
+ return component(Base);
417
+ };
418
+ {
419
+ for (let i = 0; i < allTags.length; i++) {
420
+ let E = allTags[i];
421
+ ContainerVdom.prototype[E] = function (c) {
422
+ let n = new ElementVdom(E);
423
+ if (c instanceof ContainerVdom) {
424
+ n.children = c;
425
+ }
426
+ else if (c instanceof Vdom) {
427
+ n.children._addChild(c);
428
+ }
429
+ else if (c?._?._meta && c?.build) {
430
+ n.children._addChild(new ComponentVdom(c));
431
+ }
432
+ else {
433
+ if (c !== null && c !== undefined) {
434
+ n.children._addChild(new TextVdom(c));
435
+ }
436
+ }
437
+ return this._addChild(n);
438
+ };
439
+ makeCoreWrapper(_dot, E);
440
+ }
441
+ }
442
+ {
443
+ for (let i = 0; i < allAttributes.length; i++) {
444
+ let A = allAttributes[i];
445
+ ContainerVdom.prototype[A] = function (c) {
446
+ let C = this._children[this._children.length - 1];
447
+ if (C && C instanceof ElementVdom) {
448
+ C.setAttr(A, c);
449
+ }
450
+ else {
451
+ throw new Error(`Invalid node to set ${A} attribute.`);
452
+ }
453
+ return this;
454
+ };
455
+ }
456
+ }
457
+ {
458
+ for (let i = 0; i < specialAttributes.length; i++) {
459
+ let A = specialAttributes[i];
460
+ ContainerVdom.prototype[A[0]] = function (c) {
461
+ let C = this._children[this._children.length - 1];
462
+ if (C && C instanceof ElementVdom) {
463
+ C.setAttr(A[1], c);
464
+ }
465
+ else {
466
+ throw new Error(`Invalid node to set ${A[0]} attribute.`);
467
+ }
468
+ return this;
469
+ };
470
+ }
471
+ ContainerVdom.prototype["value"] = function (c) {
472
+ let C = this._children[this._children.length - 1];
473
+ if (C && C instanceof ElementVdom) {
474
+ switch (C.tag) {
475
+ case "input": {
476
+ C.setAttr("value", c);
477
+ break;
478
+ }
479
+ default: {
480
+ }
481
+ }
482
+ }
483
+ else {
484
+ throw new Error(`Invalid node to set value attribute.`);
485
+ }
486
+ return this;
487
+ };
488
+ }
489
+ {
490
+ for (let i = 0; i < allEventAttr.length; i++) {
491
+ let E = allEventAttr[i];
492
+ ContainerVdom.prototype[E] = function (c) {
493
+ let C = this._children[this._children.length - 1];
494
+ if (C && C instanceof ElementVdom) {
495
+ C.addEventListener(E.substring(2), c);
496
+ }
497
+ else {
498
+ throw new Error(`Invalid node to set ${E} attribute.`);
499
+ }
500
+ return this;
501
+ };
502
+ }
503
+ }
504
+ {
505
+ for (let i = 0; i < allCoreWrappers.length; i++) {
506
+ let W = allCoreWrappers[i];
507
+ makeCoreWrapper(_dot, W);
508
+ }
509
+ }
510
+ return _dot;
511
+ };
512
+ const dot = makeDot();
513
+ export default dot;
514
+ //# sourceMappingURL=dot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dot.js","sourceRoot":"","sources":["../src/dot.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function removeNodesBetween(start: Node, end: Node): void;
2
+ export declare function deepEqual(obj1: any, obj2: any, visited?: Map<any, any>): boolean;
@@ -0,0 +1,49 @@
1
+ import { DOT_VDOM_PROP_NAME } from "./constants";
2
+ export function removeNodesBetween(start, end) {
3
+ if (start.parentNode !== end.parentNode) {
4
+ throw new Error("Start and end nodes must have the same parent.");
5
+ }
6
+ let current = start.nextSibling;
7
+ while (current && current !== end) {
8
+ const next = current.nextSibling;
9
+ if (current[DOT_VDOM_PROP_NAME]) {
10
+ current[DOT_VDOM_PROP_NAME]._unrender();
11
+ }
12
+ else {
13
+ current.parentNode?.removeChild(current);
14
+ }
15
+ current = next;
16
+ }
17
+ }
18
+ export function deepEqual(obj1, obj2, visited = new Map()) {
19
+ if (obj1 === obj2) {
20
+ return true;
21
+ }
22
+ if (obj1 == null || obj2 == null || typeof obj1 !== 'object' || typeof obj2 !== 'object') {
23
+ return false;
24
+ }
25
+ if (visited.has(obj1)) {
26
+ return visited.get(obj1) === obj2;
27
+ }
28
+ visited.set(obj1, obj2);
29
+ if (Array.isArray(obj1) && Array.isArray(obj2)) {
30
+ if (obj1.length !== obj2.length) {
31
+ return false;
32
+ }
33
+ }
34
+ for (const prop in obj1) {
35
+ if (!obj2.hasOwnProperty(prop)) {
36
+ return false;
37
+ }
38
+ if (!deepEqual(obj1[prop], obj2[prop], visited)) {
39
+ return false;
40
+ }
41
+ }
42
+ for (const prop in obj2) {
43
+ if (!obj1.hasOwnProperty(prop)) {
44
+ return false;
45
+ }
46
+ }
47
+ return true;
48
+ }
49
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,UAAU,kBAAkB,CAAC,KAAW,EAAE,GAAS;IAExD,IAAI,KAAK,CAAC,UAAU,KAAK,GAAG,CAAC,UAAU,EAAE;QACxC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;KAClE;IAED,IAAI,OAAO,GAAc,KAAK,CAAC,WAAW,CAAC;IAG3C,OAAO,OAAO,IAAI,OAAO,KAAK,GAAG,EAAE;QAClC,MAAM,IAAI,GAAc,OAAO,CAAC,WAAW,CAAC;QAG5C,IAAG,OAAO,CAAC,kBAAkB,CAAC,EAAC;YAC9B,OAAO,CAAC,kBAAkB,CAAC,CAAC,SAAS,EAAE,CAAC;SACxC;aACG;YACH,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;SACzC;QACD,OAAO,GAAG,IAAI,CAAC;KACf;AACF,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAS,EAAE,IAAS,EAAE,OAAO,GAAG,IAAI,GAAG,EAAE;IAC/D,IAAI,IAAI,KAAK,IAAI,EAAE;QACf,OAAO,IAAI,CAAC;KACf;IAED,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QACtF,OAAO,KAAK,CAAC;KAChB;IAGD,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QACnB,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;KACrC;IACD,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAExB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAC5C,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE;YAC7B,OAAO,KAAK,CAAC;SAChB;KACJ;IAED,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;QACrB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;YAC5B,OAAO,KAAK,CAAC;SAChB;QACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE;YAC7C,OAAO,KAAK,CAAC;SAChB;KACJ;IAED,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;QACrB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;YAC5B,OAAO,KAAK,CAAC;SAChB;KACJ;IAED,OAAO,IAAI,CAAC;AAChB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import dot from "./dot";
2
+ declare global {
3
+ interface Window {
4
+ dot: typeof dot;
5
+ }
6
+ }
7
+ export { dot };
@@ -0,0 +1,5 @@
1
+ import dot from "./dot";
2
+ dot.version = "6.0.0";
3
+ window.dot = dot;
4
+ export { dot };
5
+ //# sourceMappingURL=index.js.map