sibujs 4.7.0 → 4.8.0
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/dist/browser.cjs +45 -4
- package/dist/browser.d.cts +23 -0
- package/dist/browser.d.ts +23 -0
- package/dist/browser.js +6 -5
- package/dist/build.cjs +513 -78
- package/dist/build.d.cts +22 -8
- package/dist/build.d.ts +22 -8
- package/dist/build.js +68 -21
- package/dist/cdn.dev.global.js +15 -13
- package/dist/cdn.full.dev.global.js +15 -13
- package/dist/cdn.full.global.js +14 -12
- package/dist/cdn.global.js +14 -12
- package/dist/chunk-3ACAAQIN.js +224 -0
- package/dist/{chunk-DKXRACVN.js → chunk-44MTL7ED.js} +6 -6
- package/dist/{chunk-3QWBSL5R.js → chunk-4WMSTZ7J.js} +8 -5
- package/dist/{chunk-H3SRKIYX.js → chunk-62BDYGAG.js} +8 -0
- package/dist/{chunk-BSY63EM6.js → chunk-C5PEWEGH.js} +20 -5
- package/dist/{chunk-BC2SECJD.js → chunk-C7AA2CZX.js} +1 -1
- package/dist/{chunk-SLM3IA34.js → chunk-CZPRSWSS.js} +1 -1
- package/dist/{chunk-FQRUXCEE.js → chunk-DSID757X.js} +1 -1
- package/dist/{chunk-ZVL7TY4K.js → chunk-EGUQLBHE.js} +22 -8
- package/dist/{chunk-2INLLLMZ.js → chunk-EXXSN3BW.js} +202 -26
- package/dist/{chunk-HURREPU2.js → chunk-FC6KCJSA.js} +87 -150
- package/dist/{chunk-Z3OHK6QT.js → chunk-GSGNX35Q.js} +5 -5
- package/dist/{chunk-XYV3EDB7.js → chunk-J3YQ457H.js} +37 -20
- package/dist/{chunk-VZSG24LS.js → chunk-JUTFX2RM.js} +18 -10
- package/dist/{chunk-RUSSKG6G.js → chunk-KJ3UKABJ.js} +1 -1
- package/dist/{chunk-UNWRJRKC.js → chunk-LI4W3U6C.js} +1 -1
- package/dist/{chunk-FNJXNGYZ.js → chunk-O6TRVMJI.js} +58 -6
- package/dist/{chunk-7LUJQAOJ.js → chunk-Q5J2LVKH.js} +1 -1
- package/dist/{chunk-4AWA2PVD.js → chunk-QGMSESDD.js} +10 -5
- package/dist/{chunk-XZR4PXRE.js → chunk-RGLPEBDE.js} +13 -10
- package/dist/{chunk-JWKYU5GV.js → chunk-TQQUN4WR.js} +1 -1
- package/dist/{chunk-WOLJZUFQ.js → chunk-UCNP3HVM.js} +12 -8
- package/dist/{chunk-WEQ3DMVL.js → chunk-V3LHZSU5.js} +1 -1
- package/dist/{chunk-UOL2ECCS.js → chunk-VWT3VXPL.js} +18 -12
- package/dist/{chunk-2BPG2XDA.js → chunk-ZVLHNEEL.js} +17 -35
- package/dist/{customElement-MmInOW1U.d.ts → customElement-pYDKUzWl.d.cts} +11 -3
- package/dist/{customElement-MmInOW1U.d.cts → customElement-pYDKUzWl.d.ts} +11 -3
- package/dist/data.cjs +9 -2
- package/dist/data.js +6 -6
- package/dist/devtools.cjs +1 -1
- package/dist/devtools.js +5 -5
- package/dist/ecosystem.cjs +400 -37
- package/dist/ecosystem.js +9 -8
- package/dist/extras.cjs +621 -252
- package/dist/extras.d.cts +2 -2
- package/dist/extras.d.ts +2 -2
- package/dist/extras.js +24 -23
- package/dist/index.cjs +464 -70
- package/dist/index.d.cts +28 -2
- package/dist/index.d.ts +28 -2
- package/dist/index.js +16 -12
- package/dist/motion.cjs +1 -1
- package/dist/motion.js +3 -3
- package/dist/patterns.cjs +10 -7
- package/dist/patterns.js +6 -6
- package/dist/performance.cjs +31 -2
- package/dist/performance.d.cts +12 -2
- package/dist/performance.d.ts +12 -2
- package/dist/performance.js +8 -6
- package/dist/plugins.cjs +558 -231
- package/dist/plugins.d.cts +8 -3
- package/dist/plugins.d.ts +8 -3
- package/dist/plugins.js +22 -28
- package/dist/{ssr-XOTUASDO.js → ssr-5OWAH3U2.js} +4 -2
- package/dist/{ssr-Bli9XRW5.d.ts → ssr-C8hgIAw7.d.cts} +6 -0
- package/dist/{ssr-Bli9XRW5.d.cts → ssr-C8hgIAw7.d.ts} +6 -0
- package/dist/ssr.cjs +457 -131
- package/dist/ssr.d.cts +55 -5
- package/dist/ssr.d.ts +55 -5
- package/dist/ssr.js +11 -9
- package/dist/testing.cjs +3 -3
- package/dist/testing.js +4 -4
- package/dist/ui.cjs +608 -240
- package/dist/ui.d.cts +1 -1
- package/dist/ui.d.ts +1 -1
- package/dist/ui.js +9 -8
- package/dist/widgets.cjs +1 -1
- package/dist/widgets.js +7 -7
- package/package.json +5 -4
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
import {
|
|
2
2
|
bindAttribute,
|
|
3
3
|
setSafeAttribute
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-O6TRVMJI.js";
|
|
5
|
+
import {
|
|
6
|
+
isBlockedElement
|
|
7
|
+
} from "./chunk-3ACAAQIN.js";
|
|
5
8
|
import {
|
|
6
9
|
isEventHandlerAttr,
|
|
7
|
-
|
|
10
|
+
sanitizeCSSDeclaration,
|
|
8
11
|
sanitizeStyleAttribute
|
|
9
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-EXXSN3BW.js";
|
|
10
13
|
import {
|
|
11
14
|
reactiveBinding
|
|
12
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-TQQUN4WR.js";
|
|
13
16
|
import {
|
|
14
17
|
DEV,
|
|
15
18
|
devWarn,
|
|
@@ -189,10 +192,6 @@ function bindChildNode(placeholder, getter) {
|
|
|
189
192
|
|
|
190
193
|
// src/core/rendering/tagFactory.ts
|
|
191
194
|
var SVG_NS = "http://www.w3.org/2000/svg";
|
|
192
|
-
var BLOCKED_TAGS = /* @__PURE__ */ new Set(["script", "iframe", "object", "embed", "frame", "frameset"]);
|
|
193
|
-
function isBlockedTag(tag) {
|
|
194
|
-
return BLOCKED_TAGS.has(tag.toLowerCase());
|
|
195
|
-
}
|
|
196
195
|
var CLOBBER_RISKY_IDS = /* @__PURE__ */ new Set([
|
|
197
196
|
"config",
|
|
198
197
|
"location",
|
|
@@ -237,11 +236,12 @@ function applyStyle(el, style) {
|
|
|
237
236
|
}
|
|
238
237
|
const next = [];
|
|
239
238
|
for (const prop in value) {
|
|
239
|
+
if (!Object.hasOwn(value, prop)) continue;
|
|
240
240
|
const val = value[prop];
|
|
241
241
|
if (val == null) continue;
|
|
242
242
|
const name = toKebab(prop);
|
|
243
243
|
next.push(name);
|
|
244
|
-
decl.setProperty(name,
|
|
244
|
+
decl.setProperty(name, sanitizeCSSDeclaration(name, String(val), { element: el }));
|
|
245
245
|
}
|
|
246
246
|
for (let i = 0; i < written.length; i++) {
|
|
247
247
|
if (next.indexOf(written[i]) === -1) decl.removeProperty(written[i]);
|
|
@@ -257,16 +257,17 @@ function applyStyle(el, style) {
|
|
|
257
257
|
}
|
|
258
258
|
const htmlEl = el;
|
|
259
259
|
for (const prop in style) {
|
|
260
|
+
if (!Object.hasOwn(style, prop)) continue;
|
|
260
261
|
const val = style[prop];
|
|
261
262
|
const name = toKebab(prop);
|
|
262
263
|
if (typeof val === "function") {
|
|
263
264
|
const getter = val;
|
|
264
265
|
const teardown = reactiveBinding(() => {
|
|
265
|
-
htmlEl.style.setProperty(name,
|
|
266
|
+
htmlEl.style.setProperty(name, sanitizeCSSDeclaration(name, String(getter()), { element: el }));
|
|
266
267
|
}, el);
|
|
267
268
|
registerDisposer(el, teardown);
|
|
268
269
|
} else {
|
|
269
|
-
htmlEl.style.setProperty(name,
|
|
270
|
+
htmlEl.style.setProperty(name, sanitizeCSSDeclaration(name, String(val), { element: el }));
|
|
270
271
|
}
|
|
271
272
|
}
|
|
272
273
|
}
|
|
@@ -276,6 +277,7 @@ function resolveClassValue(cls) {
|
|
|
276
277
|
if (!cls) return "";
|
|
277
278
|
let out = "";
|
|
278
279
|
for (const name in cls) {
|
|
280
|
+
if (!Object.hasOwn(cls, name)) continue;
|
|
279
281
|
const val = cls[name];
|
|
280
282
|
const active = typeof val === "function" ? val() : val;
|
|
281
283
|
if (active) out = out ? `${out} ${name}` : name;
|
|
@@ -300,6 +302,7 @@ function applyClass(el, cls) {
|
|
|
300
302
|
let hasReactive = false;
|
|
301
303
|
let result = "";
|
|
302
304
|
for (const name in obj) {
|
|
305
|
+
if (!Object.hasOwn(obj, name)) continue;
|
|
303
306
|
const val = obj[name];
|
|
304
307
|
if (typeof val === "function") {
|
|
305
308
|
hasReactive = true;
|
|
@@ -311,6 +314,7 @@ function applyClass(el, cls) {
|
|
|
311
314
|
const update = () => {
|
|
312
315
|
let r = "";
|
|
313
316
|
for (const name in obj) {
|
|
317
|
+
if (!Object.hasOwn(obj, name)) continue;
|
|
314
318
|
const val = obj[name];
|
|
315
319
|
const active = typeof val === "function" ? val() : val;
|
|
316
320
|
if (active) r = r ? `${r} ${name}` : name;
|
|
@@ -374,7 +378,7 @@ function appendChildren(el, nodes) {
|
|
|
374
378
|
}
|
|
375
379
|
}
|
|
376
380
|
function tagFactory(tag, ns) {
|
|
377
|
-
const blocked =
|
|
381
|
+
const blocked = isBlockedElement(tag);
|
|
378
382
|
return (first, second) => {
|
|
379
383
|
if (blocked) {
|
|
380
384
|
throw new Error(`tagFactory: refusing to create <${tag}> \u2014 tag is blocked for security reasons.`);
|
|
@@ -437,6 +441,7 @@ function tagFactory(tag, ns) {
|
|
|
437
441
|
const pOn = props.on;
|
|
438
442
|
if (pOn) {
|
|
439
443
|
for (const ev in pOn) {
|
|
444
|
+
if (!Object.hasOwn(pOn, ev)) continue;
|
|
440
445
|
const handler = pOn[ev];
|
|
441
446
|
if (typeof handler === "function") {
|
|
442
447
|
el.addEventListener(ev, handler);
|
|
@@ -463,6 +468,7 @@ function tagFactory(tag, ns) {
|
|
|
463
468
|
continue;
|
|
464
469
|
// already handled above / below
|
|
465
470
|
default: {
|
|
471
|
+
if (!Object.hasOwn(props, key)) continue;
|
|
466
472
|
const value = props[key];
|
|
467
473
|
if (value == null) continue;
|
|
468
474
|
if (isEventHandlerAttr(key)) continue;
|
|
@@ -1,29 +1,33 @@
|
|
|
1
1
|
import {
|
|
2
2
|
domBinding
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-C7AA2CZX.js";
|
|
4
4
|
import {
|
|
5
5
|
bindAttribute,
|
|
6
6
|
setSafeAttribute
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-O6TRVMJI.js";
|
|
8
8
|
import {
|
|
9
|
-
|
|
10
|
-
} from "./chunk-
|
|
9
|
+
isBlockedElement
|
|
10
|
+
} from "./chunk-3ACAAQIN.js";
|
|
11
11
|
import {
|
|
12
|
-
|
|
13
|
-
} from "./chunk-
|
|
12
|
+
derived
|
|
13
|
+
} from "./chunk-KJ3UKABJ.js";
|
|
14
14
|
import {
|
|
15
15
|
globalSingleton
|
|
16
16
|
} from "./chunk-7ZHH77QA.js";
|
|
17
|
+
import {
|
|
18
|
+
isEventHandlerAttr,
|
|
19
|
+
sanitizeStylesheetText
|
|
20
|
+
} from "./chunk-EXXSN3BW.js";
|
|
17
21
|
import {
|
|
18
22
|
adoptThenable
|
|
19
23
|
} from "./chunk-5HZXGZ6T.js";
|
|
20
24
|
import {
|
|
21
25
|
signal
|
|
22
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-DSID757X.js";
|
|
23
27
|
import {
|
|
24
28
|
reactiveBinding,
|
|
25
29
|
track
|
|
26
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-TQQUN4WR.js";
|
|
27
31
|
import {
|
|
28
32
|
dispose,
|
|
29
33
|
disposeNodeOwn,
|
|
@@ -745,31 +749,6 @@ function announce(message, priority = "polite") {
|
|
|
745
749
|
|
|
746
750
|
// src/ui/scopedStyle.ts
|
|
747
751
|
var _scope = globalSingleton(/* @__PURE__ */ Symbol.for("sibujs.scopedStyle.v1"), () => ({ n: 0 }));
|
|
748
|
-
function decodeCssEscapes(css) {
|
|
749
|
-
return css.replace(/\\([0-9a-f]{1,6})[ \t\n\r\f]?|\\([^\n])/gi, (_match, hex, ch) => {
|
|
750
|
-
if (hex) {
|
|
751
|
-
const code = Number.parseInt(hex, 16);
|
|
752
|
-
if (Number.isFinite(code) && code > 0 && code <= 1114111) {
|
|
753
|
-
try {
|
|
754
|
-
return String.fromCodePoint(code);
|
|
755
|
-
} catch {
|
|
756
|
-
return "";
|
|
757
|
-
}
|
|
758
|
-
}
|
|
759
|
-
return "";
|
|
760
|
-
}
|
|
761
|
-
return ch || "";
|
|
762
|
-
});
|
|
763
|
-
}
|
|
764
|
-
function sanitizeCSS(css) {
|
|
765
|
-
let sanitized = decodeCssEscapes(css);
|
|
766
|
-
sanitized = sanitized.replace(/@import\s+[^;]+;/gi, "/* @import removed */");
|
|
767
|
-
sanitized = sanitized.replace(/url\s*\(\s*(?:"[^"]*"|'[^']*'|[^)]*)\s*\)/gi, "/* url() removed */");
|
|
768
|
-
sanitized = sanitized.replace(/expression\s*\(\s*(?:"[^"]*"|'[^']*'|[^)]*)\s*\)/gi, "/* expression() removed */");
|
|
769
|
-
sanitized = sanitized.replace(/-moz-binding\s*:[^;]+;/gi, "/* -moz-binding removed */");
|
|
770
|
-
sanitized = sanitized.replace(/behavior\s*:[^;]+;/gi, "/* behavior removed */");
|
|
771
|
-
return sanitized;
|
|
772
|
-
}
|
|
773
752
|
function firstCompoundEnd(selector) {
|
|
774
753
|
let parens = 0;
|
|
775
754
|
let brackets = 0;
|
|
@@ -931,7 +910,7 @@ function scopeStylesheet(css, attr) {
|
|
|
931
910
|
function scopedStyle(css) {
|
|
932
911
|
const id = `sibu-s${_scope.n++}`;
|
|
933
912
|
const attr = `data-${id}`;
|
|
934
|
-
const safeCss =
|
|
913
|
+
const safeCss = sanitizeStylesheetText(css);
|
|
935
914
|
const scopedCSS = scopeStylesheet(safeCss, attr);
|
|
936
915
|
if (typeof document !== "undefined") {
|
|
937
916
|
const styleEl = document.createElement("style");
|
|
@@ -989,7 +968,7 @@ function bindBoolAttr(el, attr, getter) {
|
|
|
989
968
|
reportError(err, { phase: "binding", name: "bindBoolAttr", node: el });
|
|
990
969
|
return;
|
|
991
970
|
}
|
|
992
|
-
setSafeAttribute(el, attr, Boolean(value), { label: "bindBoolAttr" });
|
|
971
|
+
setSafeAttribute(el, attr, Boolean(value), { label: "bindBoolAttr", reactive: true });
|
|
993
972
|
}
|
|
994
973
|
return reactiveBinding(commit, el);
|
|
995
974
|
}
|
|
@@ -1472,6 +1451,9 @@ function defineElement(name, component, options = {}) {
|
|
|
1472
1451
|
customElements.define(name, SibuElement);
|
|
1473
1452
|
}
|
|
1474
1453
|
function svgElement(tag, props = {}, ...nodes) {
|
|
1454
|
+
if (isBlockedElement(tag)) {
|
|
1455
|
+
throw new Error(`svgElement: refusing to create <${tag}> \u2014 tag is blocked for security reasons.`);
|
|
1456
|
+
}
|
|
1475
1457
|
const el = document.createElementNS(SVG_NS, tag);
|
|
1476
1458
|
for (const [key, value] of Object.entries(props)) {
|
|
1477
1459
|
if (key === "nodes") continue;
|
|
@@ -277,9 +277,11 @@ declare function announce(message: string, priority?: "polite" | "assertive"): v
|
|
|
277
277
|
* and prefixing all selectors.
|
|
278
278
|
* Returns the scope attribute name and injects the CSS into the document.
|
|
279
279
|
*
|
|
280
|
-
* CSS is sanitized
|
|
281
|
-
* `
|
|
282
|
-
*
|
|
280
|
+
* CSS is sanitized by the framework's stylesheet-text policy
|
|
281
|
+
* (`sanitizeStylesheetText`): `url()`, `image-set()`, `image()`, `src()`,
|
|
282
|
+
* `expression()`, `@import`, `behavior`, `-moz-binding` and `progid:` filters
|
|
283
|
+
* are removed. For a content image use an `<img>`; for a decorative one, a
|
|
284
|
+
* stylesheet you ship.
|
|
283
285
|
*/
|
|
284
286
|
declare function scopedStyle(css: string): {
|
|
285
287
|
scope: string;
|
|
@@ -484,6 +486,7 @@ declare function eventBus<T extends object>(): {
|
|
|
484
486
|
interface CustomElementOptions {
|
|
485
487
|
shadow?: boolean;
|
|
486
488
|
mode?: "open" | "closed";
|
|
489
|
+
/** Stylesheet source for the element's shadow root, applied unsanitized — developer CSS, not runtime data. */
|
|
487
490
|
styles?: string;
|
|
488
491
|
observedAttributes?: string[];
|
|
489
492
|
}
|
|
@@ -504,6 +507,11 @@ declare function defineElement(name: string, component: (props: Record<string, u
|
|
|
504
507
|
*
|
|
505
508
|
* Function-valued `on*` props keep their existing meaning — `addEventListener`,
|
|
506
509
|
* never an attribute.
|
|
510
|
+
*
|
|
511
|
+
* The TAG is policed like a tag factory's, through the shared element policy:
|
|
512
|
+
* `svgElement("script", { href })` is refused. SVG has its own `<script>`, which
|
|
513
|
+
* the browser fetches and runs when it is inserted, so an unrestricted tag name
|
|
514
|
+
* here was a way around the tag factories' block on script elements.
|
|
507
515
|
*/
|
|
508
516
|
declare function svgElement(tag: string, props?: Record<string, unknown>, ...nodes: (SVGElement | string)[]): SVGElement;
|
|
509
517
|
|
|
@@ -277,9 +277,11 @@ declare function announce(message: string, priority?: "polite" | "assertive"): v
|
|
|
277
277
|
* and prefixing all selectors.
|
|
278
278
|
* Returns the scope attribute name and injects the CSS into the document.
|
|
279
279
|
*
|
|
280
|
-
* CSS is sanitized
|
|
281
|
-
* `
|
|
282
|
-
*
|
|
280
|
+
* CSS is sanitized by the framework's stylesheet-text policy
|
|
281
|
+
* (`sanitizeStylesheetText`): `url()`, `image-set()`, `image()`, `src()`,
|
|
282
|
+
* `expression()`, `@import`, `behavior`, `-moz-binding` and `progid:` filters
|
|
283
|
+
* are removed. For a content image use an `<img>`; for a decorative one, a
|
|
284
|
+
* stylesheet you ship.
|
|
283
285
|
*/
|
|
284
286
|
declare function scopedStyle(css: string): {
|
|
285
287
|
scope: string;
|
|
@@ -484,6 +486,7 @@ declare function eventBus<T extends object>(): {
|
|
|
484
486
|
interface CustomElementOptions {
|
|
485
487
|
shadow?: boolean;
|
|
486
488
|
mode?: "open" | "closed";
|
|
489
|
+
/** Stylesheet source for the element's shadow root, applied unsanitized — developer CSS, not runtime data. */
|
|
487
490
|
styles?: string;
|
|
488
491
|
observedAttributes?: string[];
|
|
489
492
|
}
|
|
@@ -504,6 +507,11 @@ declare function defineElement(name: string, component: (props: Record<string, u
|
|
|
504
507
|
*
|
|
505
508
|
* Function-valued `on*` props keep their existing meaning — `addEventListener`,
|
|
506
509
|
* never an attribute.
|
|
510
|
+
*
|
|
511
|
+
* The TAG is policed like a tag factory's, through the shared element policy:
|
|
512
|
+
* `svgElement("script", { href })` is refused. SVG has its own `<script>`, which
|
|
513
|
+
* the browser fetches and runs when it is inserted, so an unrestricted tag name
|
|
514
|
+
* here was a way around the tag factories' block on script elements.
|
|
507
515
|
*/
|
|
508
516
|
declare function svgElement(tag: string, props?: Record<string, unknown>, ...nodes: (SVGElement | string)[]): SVGElement;
|
|
509
517
|
|
package/dist/data.cjs
CHANGED
|
@@ -660,7 +660,7 @@ function forEachSubscriber(signal2, visit) {
|
|
|
660
660
|
}
|
|
661
661
|
|
|
662
662
|
// src/reactivity/track.ts
|
|
663
|
-
var _runtimeVersion = true ? "4.
|
|
663
|
+
var _runtimeVersion = true ? "4.8.0" : "dev";
|
|
664
664
|
var REGISTRY_KEY = /* @__PURE__ */ Symbol.for("sibujs.reactive.v1");
|
|
665
665
|
function resolveReactiveApi() {
|
|
666
666
|
const g = globalThis;
|
|
@@ -1289,7 +1289,11 @@ function reconcile(prev, next, depth, walk, newRoot) {
|
|
|
1289
1289
|
const nextChild = nextRecord[key];
|
|
1290
1290
|
const hasPrev = Object.hasOwn(prevRecord, key);
|
|
1291
1291
|
const shared = hasPrev ? reconcile(prevRecord[key], nextChild, depth + 1, walk, false) : nextChild;
|
|
1292
|
-
|
|
1292
|
+
if (key === "__proto__") {
|
|
1293
|
+
Object.defineProperty(copy, key, { value: shared, writable: true, enumerable: true, configurable: true });
|
|
1294
|
+
} else {
|
|
1295
|
+
copy[key] = shared;
|
|
1296
|
+
}
|
|
1293
1297
|
if (!hasPrev || !Object.is(shared, prevRecord[key])) allFromPrev = false;
|
|
1294
1298
|
if (!Object.is(shared, nextChild)) allFromNext = false;
|
|
1295
1299
|
}
|
|
@@ -2660,6 +2664,9 @@ function sanitizeUrl(url) {
|
|
|
2660
2664
|
const probe = stripControlChars(url).trim();
|
|
2661
2665
|
if (!probe) return "";
|
|
2662
2666
|
const output = url.replace(OUTER_TRIM, "");
|
|
2667
|
+
if (probe.length >= 2 && (probe[0] === "\\" || probe[0] === "/") && (probe[1] === "\\" || probe[1] === "/") && (probe[0] === "\\" || probe[1] === "\\")) {
|
|
2668
|
+
return "";
|
|
2669
|
+
}
|
|
2663
2670
|
const lower = probe.toLowerCase();
|
|
2664
2671
|
let schemeEnd = -1;
|
|
2665
2672
|
for (let i = 0; i < lower.length; i++) {
|
package/dist/data.js
CHANGED
|
@@ -22,14 +22,14 @@ import {
|
|
|
22
22
|
throttle,
|
|
23
23
|
withLoader,
|
|
24
24
|
withRetry
|
|
25
|
-
} from "./chunk-
|
|
26
|
-
import "./chunk-
|
|
27
|
-
import "./chunk-2INLLLMZ.js";
|
|
25
|
+
} from "./chunk-UCNP3HVM.js";
|
|
26
|
+
import "./chunk-KJ3UKABJ.js";
|
|
28
27
|
import "./chunk-7ZHH77QA.js";
|
|
29
|
-
import "./chunk-
|
|
28
|
+
import "./chunk-V3LHZSU5.js";
|
|
29
|
+
import "./chunk-EXXSN3BW.js";
|
|
30
30
|
import "./chunk-7XHATCIH.js";
|
|
31
|
-
import "./chunk-
|
|
32
|
-
import "./chunk-
|
|
31
|
+
import "./chunk-DSID757X.js";
|
|
32
|
+
import "./chunk-TQQUN4WR.js";
|
|
33
33
|
import "./chunk-NYNYSPK7.js";
|
|
34
34
|
export {
|
|
35
35
|
__resetQueryCache,
|
package/dist/devtools.cjs
CHANGED
|
@@ -844,7 +844,7 @@ function forEachSubscriber(signal2, visit) {
|
|
|
844
844
|
}
|
|
845
845
|
|
|
846
846
|
// src/reactivity/track.ts
|
|
847
|
-
var _runtimeVersion = true ? "4.
|
|
847
|
+
var _runtimeVersion = true ? "4.8.0" : "dev";
|
|
848
848
|
var REGISTRY_KEY = /* @__PURE__ */ Symbol.for("sibujs.reactive.v1");
|
|
849
849
|
function resolveReactiveApi() {
|
|
850
850
|
const g = globalThis;
|
package/dist/devtools.js
CHANGED
|
@@ -35,13 +35,13 @@ import {
|
|
|
35
35
|
trackCleanup,
|
|
36
36
|
walkDependencyGraph,
|
|
37
37
|
withErrorTracking
|
|
38
|
-
} from "./chunk-
|
|
39
|
-
import "./chunk-2INLLLMZ.js";
|
|
38
|
+
} from "./chunk-44MTL7ED.js";
|
|
40
39
|
import "./chunk-7ZHH77QA.js";
|
|
41
|
-
import "./chunk-
|
|
40
|
+
import "./chunk-V3LHZSU5.js";
|
|
41
|
+
import "./chunk-EXXSN3BW.js";
|
|
42
42
|
import "./chunk-7XHATCIH.js";
|
|
43
|
-
import "./chunk-
|
|
44
|
-
import "./chunk-
|
|
43
|
+
import "./chunk-DSID757X.js";
|
|
44
|
+
import "./chunk-TQQUN4WR.js";
|
|
45
45
|
import {
|
|
46
46
|
isDev
|
|
47
47
|
} from "./chunk-NYNYSPK7.js";
|