elit 3.6.5 → 3.6.7
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/Cargo.lock +1 -1
- package/Cargo.toml +1 -1
- package/README.md +6 -0
- package/dist/build.cjs +421 -331
- package/dist/build.d.ts +1 -16
- package/dist/build.js +420 -330
- package/dist/build.mjs +420 -330
- package/dist/chokidar.cjs +219 -182
- package/dist/chokidar.d.ts +25 -10
- package/dist/chokidar.js +217 -182
- package/dist/chokidar.mjs +218 -183
- package/dist/cli.cjs +21608 -20241
- package/dist/cli.d.ts +19 -37
- package/dist/cli.mjs +21262 -19910
- package/dist/config.cjs +357 -350
- package/dist/config.d.ts +19 -240
- package/dist/config.js +520 -515
- package/dist/config.mjs +346 -341
- package/dist/contracts-BeW9k0yZ.d.ts +54 -0
- package/dist/contracts-D7KIS-TK.d.ts +36 -0
- package/dist/coverage.cjs +448 -485
- package/dist/coverage.d.ts +13 -59
- package/dist/coverage.js +447 -484
- package/dist/coverage.mjs +447 -484
- package/dist/database.cjs +819 -828
- package/dist/database.d.ts +8 -24
- package/dist/database.js +818 -829
- package/dist/database.mjs +818 -829
- package/dist/desktop-auto-render.cjs +1700 -1522
- package/dist/desktop-auto-render.d.ts +4 -9
- package/dist/desktop-auto-render.js +1695 -1517
- package/dist/desktop-auto-render.mjs +1696 -1518
- package/dist/desktop.cjs +3 -1
- package/dist/desktop.d.ts +4 -1
- package/dist/desktop.js +1 -1
- package/dist/desktop.mjs +1 -1
- package/dist/dev-build.cjs +830 -0
- package/dist/dev-build.d.ts +53 -0
- package/dist/dev-build.js +3318 -0
- package/dist/dev-build.mjs +797 -0
- package/dist/dom.cjs +717 -590
- package/dist/dom.d.ts +2 -15
- package/dist/dom.js +714 -587
- package/dist/dom.mjs +716 -589
- package/dist/el.cjs +62 -52
- package/dist/el.d.ts +5 -10
- package/dist/el.js +60 -52
- package/dist/el.mjs +60 -52
- package/dist/fs.cjs +72 -63
- package/dist/fs.d.ts +22 -19
- package/dist/fs.js +71 -62
- package/dist/fs.mjs +71 -62
- package/dist/hmr.cjs +40 -14
- package/dist/hmr.d.ts +11 -23
- package/dist/hmr.js +38 -14
- package/dist/hmr.mjs +38 -14
- package/dist/http.cjs +251 -99
- package/dist/http.d.ts +38 -104
- package/dist/http.js +249 -99
- package/dist/http.mjs +249 -99
- package/dist/https.cjs +524 -228
- package/dist/https.d.ts +44 -36
- package/dist/https.js +520 -226
- package/dist/https.mjs +522 -228
- package/dist/index.cjs +7502 -7690
- package/dist/index.d.ts +8 -3
- package/dist/index.js +7486 -7676
- package/dist/index.mjs +7497 -7686
- package/dist/mime-types.cjs +10 -4
- package/dist/mime-types.d.ts +8 -11
- package/dist/mime-types.js +9 -3
- package/dist/mime-types.mjs +9 -3
- package/dist/native.cjs +8616 -8869
- package/dist/native.d.ts +7 -8
- package/dist/native.js +8682 -8935
- package/dist/native.mjs +8615 -8868
- package/dist/path.cjs +83 -77
- package/dist/path.d.ts +29 -29
- package/dist/path.js +82 -76
- package/dist/path.mjs +82 -76
- package/dist/pm.cjs +3300 -0
- package/dist/pm.d.ts +256 -0
- package/dist/pm.js +5638 -0
- package/dist/pm.mjs +3196 -0
- package/dist/preview-build.cjs +712 -0
- package/dist/preview-build.d.ts +59 -0
- package/dist/preview-build.js +3194 -0
- package/dist/preview-build.mjs +676 -0
- package/dist/render-context.cjs +13 -2
- package/dist/render-context.d.ts +9 -31
- package/dist/render-context.js +11 -2
- package/dist/render-context.mjs +11 -2
- package/dist/router.cjs +787 -645
- package/dist/router.d.ts +8 -12
- package/dist/router.js +786 -644
- package/dist/router.mjs +786 -644
- package/dist/runtime.cjs +1 -1
- package/dist/runtime.js +1 -1
- package/dist/runtime.mjs +1 -1
- package/dist/server.cjs +3315 -2603
- package/dist/server.d.ts +49 -4
- package/dist/server.js +7611 -2834
- package/dist/server.mjs +3317 -2607
- package/dist/smtp-server.cjs +128 -0
- package/dist/smtp-server.d.ts +27 -0
- package/dist/smtp-server.js +4199 -0
- package/dist/smtp-server.mjs +100 -0
- package/dist/state-DvEkDehk.d.ts +195 -0
- package/dist/state.cjs +768 -658
- package/dist/state.d.ts +11 -69
- package/dist/state.js +760 -650
- package/dist/state.mjs +767 -657
- package/dist/style.cjs +1011 -968
- package/dist/style.d.ts +13 -127
- package/dist/style.js +1009 -970
- package/dist/style.mjs +1011 -971
- package/dist/test-reporter.cjs +332 -316
- package/dist/test-reporter.d.ts +28 -33
- package/dist/test-reporter.js +328 -312
- package/dist/test-reporter.mjs +328 -312
- package/dist/test-runtime.cjs +927 -968
- package/dist/test-runtime.d.ts +24 -99
- package/dist/test-runtime.js +922 -965
- package/dist/test-runtime.mjs +922 -965
- package/dist/test.cjs +4428 -4273
- package/dist/test.d.ts +2 -8
- package/dist/test.js +4307 -4154
- package/dist/test.mjs +4419 -4267
- package/dist/types-BONVzPtp.d.ts +59 -0
- package/dist/types-BR4wMiVx.d.ts +32 -0
- package/dist/types-C4gKykuG.d.ts +23 -0
- package/dist/types-CIhpN1-K.d.ts +64 -0
- package/dist/types-Ckj8md_j.d.ts +84 -0
- package/dist/types-CpjQTAkX.d.ts +24 -0
- package/dist/types-D0LjrYjS.d.ts +14 -0
- package/dist/types-DAisuVr5.d.ts +75 -0
- package/dist/types-tJn88E1N.d.ts +242 -0
- package/dist/types.d.ts +71 -226
- package/dist/universal.cjs +1 -1
- package/dist/universal.d.ts +1 -5
- package/dist/universal.js +1 -1
- package/dist/universal.mjs +1 -1
- package/dist/websocket-XfyK23zD.d.ts +119 -0
- package/dist/ws.cjs +129 -108
- package/dist/ws.d.ts +21 -131
- package/dist/ws.js +128 -109
- package/dist/ws.mjs +128 -109
- package/dist/wss.cjs +757 -479
- package/dist/wss.d.ts +31 -28
- package/dist/wss.js +755 -479
- package/dist/wss.mjs +758 -482
- package/package.json +16 -1
- package/vendor/epaint-0.31.1/src/image.rs +418 -0
- package/dist/server-CcBFc2F5.d.ts +0 -449
package/dist/el.cjs
CHANGED
|
@@ -17,7 +17,7 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
19
|
|
|
20
|
-
// src/el.ts
|
|
20
|
+
// src/client/el/index.ts
|
|
21
21
|
var el_exports = {};
|
|
22
22
|
__export(el_exports, {
|
|
23
23
|
a: () => a,
|
|
@@ -205,44 +205,60 @@ __export(el_exports, {
|
|
|
205
205
|
wbr: () => wbr
|
|
206
206
|
});
|
|
207
207
|
module.exports = __toCommonJS(el_exports);
|
|
208
|
+
|
|
209
|
+
// src/client/el/helpers.ts
|
|
208
210
|
var hasDocument = typeof document !== "undefined";
|
|
209
211
|
function capitalize(str) {
|
|
210
212
|
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
211
213
|
}
|
|
212
|
-
function bindDocMethod(method) {
|
|
213
|
-
return
|
|
214
|
+
function bindDocMethod(target, method) {
|
|
215
|
+
return target && method ? method.bind(target) : void 0;
|
|
214
216
|
}
|
|
215
|
-
function
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
217
|
+
function isStateLike(value) {
|
|
218
|
+
return !!value && typeof value === "object" && "value" in value && "subscribe" in value;
|
|
219
|
+
}
|
|
220
|
+
function isVNodeLike(value) {
|
|
221
|
+
return !!value && typeof value === "object" && "tagName" in value;
|
|
220
222
|
}
|
|
223
|
+
function flattenChildren(children) {
|
|
224
|
+
const flatChildren = [];
|
|
225
|
+
for (let i2 = 0, len = children.length; i2 < len; i2++) {
|
|
226
|
+
const child = children[i2];
|
|
227
|
+
if (child == null || child === false) continue;
|
|
228
|
+
if (Array.isArray(child)) {
|
|
229
|
+
for (let j = 0, childLen = child.length; j < childLen; j++) {
|
|
230
|
+
const nestedChild = child[j];
|
|
231
|
+
if (nestedChild != null && nestedChild !== false) {
|
|
232
|
+
flatChildren.push(nestedChild);
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
} else {
|
|
236
|
+
flatChildren.push(child);
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
return flatChildren;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
// src/client/el/factory.ts
|
|
221
243
|
var createElementFactory = (tag) => {
|
|
222
244
|
return function(props, ...rest) {
|
|
223
|
-
if (!arguments.length)
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
const isChild = typeof props !== "object" || Array.isArray(props) || props === null ||
|
|
245
|
+
if (!arguments.length) {
|
|
246
|
+
return { tagName: tag, props: {}, children: [] };
|
|
247
|
+
}
|
|
248
|
+
const isChild = typeof props !== "object" || Array.isArray(props) || props === null || isStateLike(props) || isVNodeLike(props);
|
|
227
249
|
const actualProps = isChild ? {} : props;
|
|
228
250
|
const args = isChild ? [props, ...rest] : rest;
|
|
229
|
-
if (!args.length)
|
|
230
|
-
|
|
231
|
-
for (let i2 = 0, len = args.length; i2 < len; i2++) {
|
|
232
|
-
const child = args[i2];
|
|
233
|
-
if (child == null || child === false) continue;
|
|
234
|
-
if (Array.isArray(child)) {
|
|
235
|
-
for (let j = 0, cLen = child.length; j < cLen; j++) {
|
|
236
|
-
const c = child[j];
|
|
237
|
-
c != null && c !== false && flatChildren.push(c);
|
|
238
|
-
}
|
|
239
|
-
} else {
|
|
240
|
-
flatChildren.push(child);
|
|
241
|
-
}
|
|
251
|
+
if (!args.length) {
|
|
252
|
+
return { tagName: tag, props: actualProps, children: [] };
|
|
242
253
|
}
|
|
243
|
-
return { tagName: tag, props: actualProps, children:
|
|
254
|
+
return { tagName: tag, props: actualProps, children: flattenChildren(args) };
|
|
244
255
|
};
|
|
245
256
|
};
|
|
257
|
+
var frag = function(...children) {
|
|
258
|
+
return { tagName: "", props: {}, children: flattenChildren(children) };
|
|
259
|
+
};
|
|
260
|
+
|
|
261
|
+
// src/client/el/tags.ts
|
|
246
262
|
var tags = [
|
|
247
263
|
"html",
|
|
248
264
|
"head",
|
|
@@ -414,6 +430,14 @@ var mathTags = [
|
|
|
414
430
|
"msub",
|
|
415
431
|
"msup"
|
|
416
432
|
];
|
|
433
|
+
|
|
434
|
+
// src/client/el/registry.ts
|
|
435
|
+
function createPrefixedFactories(tagsToCreate, prefix, elements2) {
|
|
436
|
+
tagsToCreate.forEach((tag) => {
|
|
437
|
+
const name = prefix + capitalize(tag);
|
|
438
|
+
elements2[name] = createElementFactory(tag);
|
|
439
|
+
});
|
|
440
|
+
}
|
|
417
441
|
var elements = {};
|
|
418
442
|
tags.forEach((tag) => {
|
|
419
443
|
elements[tag] = createElementFactory(tag);
|
|
@@ -590,35 +614,21 @@ var {
|
|
|
590
614
|
varElement
|
|
591
615
|
} = elements;
|
|
592
616
|
var el = elements;
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
for (let i2 = 0, len = children.length; i2 < len; i2++) {
|
|
596
|
-
const child = children[i2];
|
|
597
|
-
if (child == null || child === false) continue;
|
|
598
|
-
if (Array.isArray(child)) {
|
|
599
|
-
for (let j = 0, cLen = child.length; j < cLen; j++) {
|
|
600
|
-
const c = child[j];
|
|
601
|
-
c != null && c !== false && flatChildren.push(c);
|
|
602
|
-
}
|
|
603
|
-
} else {
|
|
604
|
-
flatChildren.push(child);
|
|
605
|
-
}
|
|
606
|
-
}
|
|
607
|
-
return { tagName: "", props: {}, children: flatChildren };
|
|
608
|
-
};
|
|
617
|
+
|
|
618
|
+
// src/client/el/dom-utils.ts
|
|
609
619
|
var doc = hasDocument ? document : void 0;
|
|
610
|
-
var getEl = bindDocMethod(doc?.querySelector);
|
|
611
|
-
var getEls = bindDocMethod(doc?.querySelectorAll);
|
|
612
|
-
var createEl = bindDocMethod(doc?.createElement);
|
|
620
|
+
var getEl = bindDocMethod(doc, doc?.querySelector);
|
|
621
|
+
var getEls = bindDocMethod(doc, doc?.querySelectorAll);
|
|
622
|
+
var createEl = bindDocMethod(doc, doc?.createElement);
|
|
613
623
|
var createSvgEl = hasDocument ? doc.createElementNS.bind(doc, "http://www.w3.org/2000/svg") : void 0;
|
|
614
624
|
var createMathEl = hasDocument ? doc.createElementNS.bind(doc, "http://www.w3.org/1998/Math/MathML") : void 0;
|
|
615
|
-
var fragment = bindDocMethod(doc?.createDocumentFragment);
|
|
616
|
-
var textNode = bindDocMethod(doc?.createTextNode);
|
|
617
|
-
var commentNode = bindDocMethod(doc?.createComment);
|
|
618
|
-
var getElId = bindDocMethod(doc?.getElementById);
|
|
619
|
-
var getElClass = bindDocMethod(doc?.getElementsByClassName);
|
|
620
|
-
var getElTag = bindDocMethod(doc?.getElementsByTagName);
|
|
621
|
-
var getElName = bindDocMethod(doc?.getElementsByName);
|
|
625
|
+
var fragment = bindDocMethod(doc, doc?.createDocumentFragment);
|
|
626
|
+
var textNode = bindDocMethod(doc, doc?.createTextNode);
|
|
627
|
+
var commentNode = bindDocMethod(doc, doc?.createComment);
|
|
628
|
+
var getElId = bindDocMethod(doc, doc?.getElementById);
|
|
629
|
+
var getElClass = bindDocMethod(doc, doc?.getElementsByClassName);
|
|
630
|
+
var getElTag = bindDocMethod(doc, doc?.getElementsByTagName);
|
|
631
|
+
var getElName = bindDocMethod(doc, doc?.getElementsByName);
|
|
622
632
|
// Annotate the CommonJS export names for ESM import in node:
|
|
623
633
|
0 && (module.exports = {
|
|
624
634
|
a,
|
package/dist/el.d.ts
CHANGED
|
@@ -1,14 +1,9 @@
|
|
|
1
|
-
import { ElementFactory } from './types.js';
|
|
2
|
-
import '
|
|
3
|
-
import 'events';
|
|
4
|
-
import 'http';
|
|
5
|
-
import 'ws';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Elit - Element Factories
|
|
9
|
-
*/
|
|
1
|
+
import { E as ElementFactory } from './types-BONVzPtp.js';
|
|
2
|
+
import './types-D0LjrYjS.js';
|
|
10
3
|
|
|
11
4
|
declare const createElementFactory: (tag: string) => ElementFactory;
|
|
5
|
+
declare const frag: ElementFactory;
|
|
6
|
+
|
|
12
7
|
declare const tags: readonly ["html", "head", "body", "title", "base", "link", "meta", "style", "address", "article", "aside", "footer", "header", "h1", "h2", "h3", "h4", "h5", "h6", "main", "nav", "section", "blockquote", "dd", "div", "dl", "dt", "figcaption", "figure", "hr", "li", "ol", "p", "pre", "ul", "a", "abbr", "b", "bdi", "bdo", "br", "cite", "code", "data", "dfn", "em", "i", "kbd", "mark", "q", "rp", "rt", "ruby", "s", "samp", "small", "span", "strong", "sub", "sup", "time", "u", "wbr", "area", "audio", "img", "map", "track", "video", "embed", "iframe", "object", "param", "picture", "portal", "source", "canvas", "noscript", "script", "del", "ins", "caption", "col", "colgroup", "table", "tbody", "td", "tfoot", "th", "thead", "tr", "button", "datalist", "fieldset", "form", "input", "label", "legend", "meter", "optgroup", "option", "output", "progress", "select", "textarea", "details", "dialog", "menu", "summary", "slot", "template"];
|
|
13
8
|
declare const svgTags: readonly ["svg", "circle", "rect", "path", "line", "polyline", "polygon", "ellipse", "g", "text", "tspan", "defs", "linearGradient", "radialGradient", "stop", "pattern", "mask", "clipPath", "use", "symbol", "marker", "image", "foreignObject", "animate", "animateTransform", "animateMotion", "set", "filter", "feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feFlood", "feGaussianBlur", "feMorphology", "feOffset", "feSpecularLighting", "feTile", "feTurbulence"];
|
|
14
9
|
declare const mathTags: readonly ["math", "mi", "mn", "mo", "ms", "mtext", "mrow", "mfrac", "msqrt", "mroot", "msub", "msup"];
|
|
@@ -21,6 +16,7 @@ type Elements = {
|
|
|
21
16
|
} & {
|
|
22
17
|
varElement: ElementFactory;
|
|
23
18
|
};
|
|
19
|
+
|
|
24
20
|
declare const elements: Partial<Elements>;
|
|
25
21
|
declare const html: ElementFactory;
|
|
26
22
|
declare const head: ElementFactory;
|
|
@@ -190,7 +186,6 @@ declare const mathMsup: ElementFactory;
|
|
|
190
186
|
declare const varElement: ElementFactory;
|
|
191
187
|
declare const el: Partial<Elements>;
|
|
192
188
|
|
|
193
|
-
declare const frag: ElementFactory;
|
|
194
189
|
declare const doc: any;
|
|
195
190
|
declare const getEl: any;
|
|
196
191
|
declare const getEls: any;
|
package/dist/el.js
CHANGED
|
@@ -1,44 +1,58 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
(() => {
|
|
3
|
-
// src/el.ts
|
|
3
|
+
// src/client/el/helpers.ts
|
|
4
4
|
var hasDocument = typeof document !== "undefined";
|
|
5
5
|
function capitalize(str) {
|
|
6
6
|
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
7
7
|
}
|
|
8
|
-
function bindDocMethod(method) {
|
|
9
|
-
return
|
|
8
|
+
function bindDocMethod(target, method) {
|
|
9
|
+
return target && method ? method.bind(target) : void 0;
|
|
10
10
|
}
|
|
11
|
-
function
|
|
12
|
-
|
|
13
|
-
const name = prefix + capitalize(tag);
|
|
14
|
-
elements2[name] = createElementFactory(tag);
|
|
15
|
-
});
|
|
11
|
+
function isStateLike(value) {
|
|
12
|
+
return !!value && typeof value === "object" && "value" in value && "subscribe" in value;
|
|
16
13
|
}
|
|
14
|
+
function isVNodeLike(value) {
|
|
15
|
+
return !!value && typeof value === "object" && "tagName" in value;
|
|
16
|
+
}
|
|
17
|
+
function flattenChildren(children) {
|
|
18
|
+
const flatChildren = [];
|
|
19
|
+
for (let i2 = 0, len = children.length; i2 < len; i2++) {
|
|
20
|
+
const child = children[i2];
|
|
21
|
+
if (child == null || child === false) continue;
|
|
22
|
+
if (Array.isArray(child)) {
|
|
23
|
+
for (let j = 0, childLen = child.length; j < childLen; j++) {
|
|
24
|
+
const nestedChild = child[j];
|
|
25
|
+
if (nestedChild != null && nestedChild !== false) {
|
|
26
|
+
flatChildren.push(nestedChild);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
} else {
|
|
30
|
+
flatChildren.push(child);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return flatChildren;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
// src/client/el/factory.ts
|
|
17
37
|
var createElementFactory = (tag) => {
|
|
18
38
|
return function(props, ...rest) {
|
|
19
|
-
if (!arguments.length)
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const isChild = typeof props !== "object" || Array.isArray(props) || props === null ||
|
|
39
|
+
if (!arguments.length) {
|
|
40
|
+
return { tagName: tag, props: {}, children: [] };
|
|
41
|
+
}
|
|
42
|
+
const isChild = typeof props !== "object" || Array.isArray(props) || props === null || isStateLike(props) || isVNodeLike(props);
|
|
23
43
|
const actualProps = isChild ? {} : props;
|
|
24
44
|
const args = isChild ? [props, ...rest] : rest;
|
|
25
|
-
if (!args.length)
|
|
26
|
-
|
|
27
|
-
for (let i2 = 0, len = args.length; i2 < len; i2++) {
|
|
28
|
-
const child = args[i2];
|
|
29
|
-
if (child == null || child === false) continue;
|
|
30
|
-
if (Array.isArray(child)) {
|
|
31
|
-
for (let j = 0, cLen = child.length; j < cLen; j++) {
|
|
32
|
-
const c = child[j];
|
|
33
|
-
c != null && c !== false && flatChildren.push(c);
|
|
34
|
-
}
|
|
35
|
-
} else {
|
|
36
|
-
flatChildren.push(child);
|
|
37
|
-
}
|
|
45
|
+
if (!args.length) {
|
|
46
|
+
return { tagName: tag, props: actualProps, children: [] };
|
|
38
47
|
}
|
|
39
|
-
return { tagName: tag, props: actualProps, children:
|
|
48
|
+
return { tagName: tag, props: actualProps, children: flattenChildren(args) };
|
|
40
49
|
};
|
|
41
50
|
};
|
|
51
|
+
var frag = function(...children) {
|
|
52
|
+
return { tagName: "", props: {}, children: flattenChildren(children) };
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
// src/client/el/tags.ts
|
|
42
56
|
var tags = [
|
|
43
57
|
"html",
|
|
44
58
|
"head",
|
|
@@ -210,6 +224,14 @@
|
|
|
210
224
|
"msub",
|
|
211
225
|
"msup"
|
|
212
226
|
];
|
|
227
|
+
|
|
228
|
+
// src/client/el/registry.ts
|
|
229
|
+
function createPrefixedFactories(tagsToCreate, prefix, elements2) {
|
|
230
|
+
tagsToCreate.forEach((tag) => {
|
|
231
|
+
const name = prefix + capitalize(tag);
|
|
232
|
+
elements2[name] = createElementFactory(tag);
|
|
233
|
+
});
|
|
234
|
+
}
|
|
213
235
|
var elements = {};
|
|
214
236
|
tags.forEach((tag) => {
|
|
215
237
|
elements[tag] = createElementFactory(tag);
|
|
@@ -386,33 +408,19 @@
|
|
|
386
408
|
varElement
|
|
387
409
|
} = elements;
|
|
388
410
|
var el = elements;
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
for (let i2 = 0, len = children.length; i2 < len; i2++) {
|
|
392
|
-
const child = children[i2];
|
|
393
|
-
if (child == null || child === false) continue;
|
|
394
|
-
if (Array.isArray(child)) {
|
|
395
|
-
for (let j = 0, cLen = child.length; j < cLen; j++) {
|
|
396
|
-
const c = child[j];
|
|
397
|
-
c != null && c !== false && flatChildren.push(c);
|
|
398
|
-
}
|
|
399
|
-
} else {
|
|
400
|
-
flatChildren.push(child);
|
|
401
|
-
}
|
|
402
|
-
}
|
|
403
|
-
return { tagName: "", props: {}, children: flatChildren };
|
|
404
|
-
};
|
|
411
|
+
|
|
412
|
+
// src/client/el/dom-utils.ts
|
|
405
413
|
var doc = hasDocument ? document : void 0;
|
|
406
|
-
var getEl = bindDocMethod(doc?.querySelector);
|
|
407
|
-
var getEls = bindDocMethod(doc?.querySelectorAll);
|
|
408
|
-
var createEl = bindDocMethod(doc?.createElement);
|
|
414
|
+
var getEl = bindDocMethod(doc, doc?.querySelector);
|
|
415
|
+
var getEls = bindDocMethod(doc, doc?.querySelectorAll);
|
|
416
|
+
var createEl = bindDocMethod(doc, doc?.createElement);
|
|
409
417
|
var createSvgEl = hasDocument ? doc.createElementNS.bind(doc, "http://www.w3.org/2000/svg") : void 0;
|
|
410
418
|
var createMathEl = hasDocument ? doc.createElementNS.bind(doc, "http://www.w3.org/1998/Math/MathML") : void 0;
|
|
411
|
-
var fragment = bindDocMethod(doc?.createDocumentFragment);
|
|
412
|
-
var textNode = bindDocMethod(doc?.createTextNode);
|
|
413
|
-
var commentNode = bindDocMethod(doc?.createComment);
|
|
414
|
-
var getElId = bindDocMethod(doc?.getElementById);
|
|
415
|
-
var getElClass = bindDocMethod(doc?.getElementsByClassName);
|
|
416
|
-
var getElTag = bindDocMethod(doc?.getElementsByTagName);
|
|
417
|
-
var getElName = bindDocMethod(doc?.getElementsByName);
|
|
419
|
+
var fragment = bindDocMethod(doc, doc?.createDocumentFragment);
|
|
420
|
+
var textNode = bindDocMethod(doc, doc?.createTextNode);
|
|
421
|
+
var commentNode = bindDocMethod(doc, doc?.createComment);
|
|
422
|
+
var getElId = bindDocMethod(doc, doc?.getElementById);
|
|
423
|
+
var getElClass = bindDocMethod(doc, doc?.getElementsByClassName);
|
|
424
|
+
var getElTag = bindDocMethod(doc, doc?.getElementsByTagName);
|
|
425
|
+
var getElName = bindDocMethod(doc, doc?.getElementsByName);
|
|
418
426
|
})();
|
package/dist/el.mjs
CHANGED
|
@@ -1,42 +1,56 @@
|
|
|
1
|
-
// src/el.ts
|
|
1
|
+
// src/client/el/helpers.ts
|
|
2
2
|
var hasDocument = typeof document !== "undefined";
|
|
3
3
|
function capitalize(str) {
|
|
4
4
|
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
5
5
|
}
|
|
6
|
-
function bindDocMethod(method) {
|
|
7
|
-
return
|
|
6
|
+
function bindDocMethod(target, method) {
|
|
7
|
+
return target && method ? method.bind(target) : void 0;
|
|
8
8
|
}
|
|
9
|
-
function
|
|
10
|
-
|
|
11
|
-
const name = prefix + capitalize(tag);
|
|
12
|
-
elements2[name] = createElementFactory(tag);
|
|
13
|
-
});
|
|
9
|
+
function isStateLike(value) {
|
|
10
|
+
return !!value && typeof value === "object" && "value" in value && "subscribe" in value;
|
|
14
11
|
}
|
|
12
|
+
function isVNodeLike(value) {
|
|
13
|
+
return !!value && typeof value === "object" && "tagName" in value;
|
|
14
|
+
}
|
|
15
|
+
function flattenChildren(children) {
|
|
16
|
+
const flatChildren = [];
|
|
17
|
+
for (let i2 = 0, len = children.length; i2 < len; i2++) {
|
|
18
|
+
const child = children[i2];
|
|
19
|
+
if (child == null || child === false) continue;
|
|
20
|
+
if (Array.isArray(child)) {
|
|
21
|
+
for (let j = 0, childLen = child.length; j < childLen; j++) {
|
|
22
|
+
const nestedChild = child[j];
|
|
23
|
+
if (nestedChild != null && nestedChild !== false) {
|
|
24
|
+
flatChildren.push(nestedChild);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
} else {
|
|
28
|
+
flatChildren.push(child);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return flatChildren;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// src/client/el/factory.ts
|
|
15
35
|
var createElementFactory = (tag) => {
|
|
16
36
|
return function(props, ...rest) {
|
|
17
|
-
if (!arguments.length)
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
const isChild = typeof props !== "object" || Array.isArray(props) || props === null ||
|
|
37
|
+
if (!arguments.length) {
|
|
38
|
+
return { tagName: tag, props: {}, children: [] };
|
|
39
|
+
}
|
|
40
|
+
const isChild = typeof props !== "object" || Array.isArray(props) || props === null || isStateLike(props) || isVNodeLike(props);
|
|
21
41
|
const actualProps = isChild ? {} : props;
|
|
22
42
|
const args = isChild ? [props, ...rest] : rest;
|
|
23
|
-
if (!args.length)
|
|
24
|
-
|
|
25
|
-
for (let i2 = 0, len = args.length; i2 < len; i2++) {
|
|
26
|
-
const child = args[i2];
|
|
27
|
-
if (child == null || child === false) continue;
|
|
28
|
-
if (Array.isArray(child)) {
|
|
29
|
-
for (let j = 0, cLen = child.length; j < cLen; j++) {
|
|
30
|
-
const c = child[j];
|
|
31
|
-
c != null && c !== false && flatChildren.push(c);
|
|
32
|
-
}
|
|
33
|
-
} else {
|
|
34
|
-
flatChildren.push(child);
|
|
35
|
-
}
|
|
43
|
+
if (!args.length) {
|
|
44
|
+
return { tagName: tag, props: actualProps, children: [] };
|
|
36
45
|
}
|
|
37
|
-
return { tagName: tag, props: actualProps, children:
|
|
46
|
+
return { tagName: tag, props: actualProps, children: flattenChildren(args) };
|
|
38
47
|
};
|
|
39
48
|
};
|
|
49
|
+
var frag = function(...children) {
|
|
50
|
+
return { tagName: "", props: {}, children: flattenChildren(children) };
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
// src/client/el/tags.ts
|
|
40
54
|
var tags = [
|
|
41
55
|
"html",
|
|
42
56
|
"head",
|
|
@@ -208,6 +222,14 @@ var mathTags = [
|
|
|
208
222
|
"msub",
|
|
209
223
|
"msup"
|
|
210
224
|
];
|
|
225
|
+
|
|
226
|
+
// src/client/el/registry.ts
|
|
227
|
+
function createPrefixedFactories(tagsToCreate, prefix, elements2) {
|
|
228
|
+
tagsToCreate.forEach((tag) => {
|
|
229
|
+
const name = prefix + capitalize(tag);
|
|
230
|
+
elements2[name] = createElementFactory(tag);
|
|
231
|
+
});
|
|
232
|
+
}
|
|
211
233
|
var elements = {};
|
|
212
234
|
tags.forEach((tag) => {
|
|
213
235
|
elements[tag] = createElementFactory(tag);
|
|
@@ -384,35 +406,21 @@ var {
|
|
|
384
406
|
varElement
|
|
385
407
|
} = elements;
|
|
386
408
|
var el = elements;
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
for (let i2 = 0, len = children.length; i2 < len; i2++) {
|
|
390
|
-
const child = children[i2];
|
|
391
|
-
if (child == null || child === false) continue;
|
|
392
|
-
if (Array.isArray(child)) {
|
|
393
|
-
for (let j = 0, cLen = child.length; j < cLen; j++) {
|
|
394
|
-
const c = child[j];
|
|
395
|
-
c != null && c !== false && flatChildren.push(c);
|
|
396
|
-
}
|
|
397
|
-
} else {
|
|
398
|
-
flatChildren.push(child);
|
|
399
|
-
}
|
|
400
|
-
}
|
|
401
|
-
return { tagName: "", props: {}, children: flatChildren };
|
|
402
|
-
};
|
|
409
|
+
|
|
410
|
+
// src/client/el/dom-utils.ts
|
|
403
411
|
var doc = hasDocument ? document : void 0;
|
|
404
|
-
var getEl = bindDocMethod(doc?.querySelector);
|
|
405
|
-
var getEls = bindDocMethod(doc?.querySelectorAll);
|
|
406
|
-
var createEl = bindDocMethod(doc?.createElement);
|
|
412
|
+
var getEl = bindDocMethod(doc, doc?.querySelector);
|
|
413
|
+
var getEls = bindDocMethod(doc, doc?.querySelectorAll);
|
|
414
|
+
var createEl = bindDocMethod(doc, doc?.createElement);
|
|
407
415
|
var createSvgEl = hasDocument ? doc.createElementNS.bind(doc, "http://www.w3.org/2000/svg") : void 0;
|
|
408
416
|
var createMathEl = hasDocument ? doc.createElementNS.bind(doc, "http://www.w3.org/1998/Math/MathML") : void 0;
|
|
409
|
-
var fragment = bindDocMethod(doc?.createDocumentFragment);
|
|
410
|
-
var textNode = bindDocMethod(doc?.createTextNode);
|
|
411
|
-
var commentNode = bindDocMethod(doc?.createComment);
|
|
412
|
-
var getElId = bindDocMethod(doc?.getElementById);
|
|
413
|
-
var getElClass = bindDocMethod(doc?.getElementsByClassName);
|
|
414
|
-
var getElTag = bindDocMethod(doc?.getElementsByTagName);
|
|
415
|
-
var getElName = bindDocMethod(doc?.getElementsByName);
|
|
417
|
+
var fragment = bindDocMethod(doc, doc?.createDocumentFragment);
|
|
418
|
+
var textNode = bindDocMethod(doc, doc?.createTextNode);
|
|
419
|
+
var commentNode = bindDocMethod(doc, doc?.createComment);
|
|
420
|
+
var getElId = bindDocMethod(doc, doc?.getElementById);
|
|
421
|
+
var getElClass = bindDocMethod(doc, doc?.getElementsByClassName);
|
|
422
|
+
var getElTag = bindDocMethod(doc, doc?.getElementsByTagName);
|
|
423
|
+
var getElName = bindDocMethod(doc, doc?.getElementsByName);
|
|
416
424
|
export {
|
|
417
425
|
a,
|
|
418
426
|
abbr,
|