@qwik.dev/core 2.0.0-beta.36 → 2.0.0-beta.38
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/backpatch/package.json +1 -1
- package/dist/build/package.json +1 -1
- package/dist/cli.mjs +2 -2
- package/dist/core-internal.d.ts +526 -345
- package/dist/core.min.mjs +9 -8
- package/dist/core.mjs +1784 -925
- package/dist/core.mjs.map +1 -1
- package/dist/core.prod.mjs +4294 -3600
- package/dist/loader/index.mjs +2 -2
- package/dist/loader/package.json +1 -1
- package/dist/optimizer.d.ts +11 -3
- package/dist/optimizer.mjs +1574 -1459
- package/dist/preloader.mjs +1 -1
- package/dist/qwikloader.debug.js +23 -21
- package/dist/qwikloader.js +1 -1
- package/dist/server.d.ts +7 -0
- package/dist/server.mjs +63 -27
- package/dist/server.prod.mjs +424 -378
- package/dist/starters/adapters/bun/src/entry.bun.ts +35 -0
- package/dist/starters/adapters/cloud-run/src/entry.cloud-run.tsx +20 -0
- package/dist/starters/adapters/deno/src/entry.deno.ts +41 -0
- package/dist/starters/adapters/express/src/entry.express.tsx +20 -0
- package/dist/starters/adapters/fastify/src/entry.fastify.tsx +20 -0
- package/dist/starters/adapters/fastify/src/plugins/fastify-qwik.ts +10 -1
- package/dist/starters/adapters/node-server/src/entry.node-server.tsx +20 -0
- package/dist/testing/index.d.ts +40 -30
- package/dist/testing/index.mjs +1451 -719
- package/dist/testing/package.json +1 -1
- package/dist/worker/package.json +1 -1
- package/dist/worker/worker.shared.js +1 -1
- package/handlers.mjs +3 -0
- package/package.json +4 -4
- package/public.d.ts +3 -0
package/dist/server.prod.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license
|
|
3
|
-
* @qwik.dev/core/server 2.0.0-beta.
|
|
3
|
+
* @qwik.dev/core/server 2.0.0-beta.38-dev+0339f17
|
|
4
4
|
* Copyright QwikDev. All Rights Reserved.
|
|
5
5
|
* Use of this source code is governed by an MIT-style license that can be
|
|
6
6
|
* found in the LICENSE file at https://github.com/QwikDev/qwik/blob/main/LICENSE
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
import { setPlatform as setPlatform2 } from "@qwik.dev/core";
|
|
10
10
|
|
|
11
11
|
// packages/qwik/src/server/platform.ts
|
|
12
|
-
import { setPlatform as
|
|
12
|
+
import { setPlatform as yr } from "@qwik.dev/core";
|
|
13
13
|
|
|
14
14
|
import { isDev as isDev6 } from "@qwik.dev/core/build";
|
|
15
15
|
|
|
@@ -17,7 +17,7 @@ import { isDev as isDev6 } from "@qwik.dev/core/build";
|
|
|
17
17
|
import { isDev as isDev2 } from "@qwik.dev/core/build";
|
|
18
18
|
|
|
19
19
|
// packages/qwik/src/core/shared/error/assert.ts
|
|
20
|
-
import { isDev as
|
|
20
|
+
import { isDev as je } from "@qwik.dev/core/build";
|
|
21
21
|
|
|
22
22
|
// packages/qwik/src/core/shared/utils/qdev.ts
|
|
23
23
|
var qDev = globalThis.qDev !== false;
|
|
@@ -34,18 +34,18 @@ var qRuntimeQrl = globalThis.qRuntimeQrl === true;
|
|
|
34
34
|
var STYLE = qDev ? `background: #564CE0; color: white; padding: 2px 3px; border-radius: 2px; font-size: 0.8em;` : "";
|
|
35
35
|
|
|
36
36
|
var throwErrorAndStop = (e, ...t) => {
|
|
37
|
-
const n =
|
|
37
|
+
const n = De(false, e, ...t);
|
|
38
38
|
debugger;
|
|
39
39
|
throw n;
|
|
40
40
|
};
|
|
41
41
|
|
|
42
42
|
var logErrorAndStop = (e, ...t) => {
|
|
43
|
-
const n =
|
|
43
|
+
const n = De(qDev, e, ...t);
|
|
44
44
|
debugger;
|
|
45
45
|
return n;
|
|
46
46
|
};
|
|
47
47
|
|
|
48
|
-
var
|
|
48
|
+
var De = (e, t, ...n) => {
|
|
49
49
|
const r = t instanceof Error ? t : new Error(t);
|
|
50
50
|
!qTest && console.error("%cQWIK ERROR", STYLE, r.message, ...n, r.stack);
|
|
51
51
|
e && !qTest && setTimeout(() => {
|
|
@@ -58,7 +58,7 @@ var be = (e, t, ...n) => {
|
|
|
58
58
|
var ASSERT_DISCLAIMER = "Internal assert, this is likely caused by a bug in Qwik: ";
|
|
59
59
|
|
|
60
60
|
function assertTrue(e, t, ...n) {
|
|
61
|
-
if (
|
|
61
|
+
if (je) {
|
|
62
62
|
if (e === true) {
|
|
63
63
|
return;
|
|
64
64
|
}
|
|
@@ -67,7 +67,7 @@ function assertTrue(e, t, ...n) {
|
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
// packages/qwik/src/core/client/util-mapArray.ts
|
|
70
|
-
var
|
|
70
|
+
var Xe = (e, t, n) => {
|
|
71
71
|
isDev2 && assertTrue(n % 2 === 0, "Expecting even number.");
|
|
72
72
|
let r = n >> 1;
|
|
73
73
|
let s = e.length - 2 >> 1;
|
|
@@ -86,8 +86,8 @@ var ve = (e, t, n) => {
|
|
|
86
86
|
return r << 1 ^ -1;
|
|
87
87
|
};
|
|
88
88
|
|
|
89
|
-
var
|
|
90
|
-
const i =
|
|
89
|
+
var We = (e, t, n, r, s = false) => {
|
|
90
|
+
const i = Xe(e, t, r);
|
|
91
91
|
if (i >= 0) {
|
|
92
92
|
if (n == null && !s) {
|
|
93
93
|
e.splice(i, 2);
|
|
@@ -100,7 +100,7 @@ var _e = (e, t, n, r, s = false) => {
|
|
|
100
100
|
};
|
|
101
101
|
|
|
102
102
|
var mapApp_remove = (e, t, n) => {
|
|
103
|
-
const r =
|
|
103
|
+
const r = Xe(e, t, n);
|
|
104
104
|
let s = null;
|
|
105
105
|
if (r >= 0) {
|
|
106
106
|
s = e[r + 1];
|
|
@@ -110,8 +110,8 @@ var mapApp_remove = (e, t, n) => {
|
|
|
110
110
|
return s;
|
|
111
111
|
};
|
|
112
112
|
|
|
113
|
-
var
|
|
114
|
-
const r =
|
|
113
|
+
var Ve = (e, t, n) => {
|
|
114
|
+
const r = Xe(e, t, n);
|
|
115
115
|
if (r >= 0) {
|
|
116
116
|
return e[r + 1];
|
|
117
117
|
} else {
|
|
@@ -119,17 +119,17 @@ var ge = (e, t, n) => {
|
|
|
119
119
|
}
|
|
120
120
|
};
|
|
121
121
|
|
|
122
|
-
var
|
|
122
|
+
var Ue = (e, t, n) => Xe(e, t, n) >= 0;
|
|
123
123
|
|
|
124
124
|
// packages/qwik/src/core/shared/error/error.ts
|
|
125
125
|
import { isDev as isDev3 } from "@qwik.dev/core/build";
|
|
126
126
|
|
|
127
127
|
// packages/qwik/src/core/shared/utils/types.ts
|
|
128
|
-
var
|
|
128
|
+
var Be = e => typeof e === "object" && e !== null;
|
|
129
129
|
|
|
130
|
-
var
|
|
130
|
+
var Qe = e => Array.isArray(e);
|
|
131
131
|
|
|
132
|
-
var
|
|
132
|
+
var He = e => typeof e === "string";
|
|
133
133
|
|
|
134
134
|
// packages/qwik/src/core/shared/error/error.ts
|
|
135
135
|
var baseUrl = "https://qwikdev-build-v2.qwik-8nx.pages.dev/docs/errors/#q";
|
|
@@ -194,8 +194,8 @@ var codeToText = (e, ...t) => {
|
|
|
194
194
|
// 27
|
|
195
195
|
"Cannot coerce a Signal, use `.value` instead",
|
|
196
196
|
// 28
|
|
197
|
-
"
|
|
198
|
-
// 29
|
|
197
|
+
"",
|
|
198
|
+
// 29 (cleared: useComputed$ now supports async functions)
|
|
199
199
|
`===\nQwik version {{0}} already imported while importing {{1}}.\nThis can lead to issues due to duplicated shared structures.\nVerify that the Qwik libraries you're using are in "resolve.noExternal[]" and in "optimizeDeps.exclude".\n===\n`,
|
|
200
200
|
// 30
|
|
201
201
|
"WrappedSignal is read-only",
|
|
@@ -206,12 +206,18 @@ var codeToText = (e, ...t) => {
|
|
|
206
206
|
// 33
|
|
207
207
|
"Serialization Error: Cannot serialize function: {{0}}",
|
|
208
208
|
// 34
|
|
209
|
-
"Cannot read .value of a clientOnly async signal during SSR. Use .loading to check state, or provide an initial value."
|
|
209
|
+
"Cannot read .value of a clientOnly async signal during SSR. Use .loading to check state, or provide an initial value.",
|
|
210
|
+
// 35
|
|
211
|
+
"Invalid element name for SSR {{0}}",
|
|
212
|
+
// 36
|
|
213
|
+
"Invalid serialized Promise dependency",
|
|
214
|
+
// 37
|
|
215
|
+
"Invalid serialized Uint8Array payload" ];
|
|
210
216
|
let r = n[e] ?? "";
|
|
211
217
|
if (t.length) {
|
|
212
218
|
r = r.replaceAll(/{{(\d+)}}/g, (e, n) => {
|
|
213
219
|
let r = t[n];
|
|
214
|
-
if (r &&
|
|
220
|
+
if (r && Be(r) && r.constructor === Object) {
|
|
215
221
|
r = JSON.stringify(r).slice(0, 50);
|
|
216
222
|
}
|
|
217
223
|
return r;
|
|
@@ -223,7 +229,7 @@ var codeToText = (e, ...t) => {
|
|
|
223
229
|
}
|
|
224
230
|
};
|
|
225
231
|
|
|
226
|
-
var
|
|
232
|
+
var Ye = (e, t = []) => {
|
|
227
233
|
const n = codeToText(e, ...t);
|
|
228
234
|
return logErrorAndStop(n, ...t);
|
|
229
235
|
};
|
|
@@ -231,10 +237,10 @@ var qe = (e, t = []) => {
|
|
|
231
237
|
// packages/qwik/src/core/shared/qrl/qrl-utils.ts
|
|
232
238
|
import { isDev as isDev4 } from "@qwik.dev/core/build";
|
|
233
239
|
|
|
234
|
-
var
|
|
240
|
+
var Ge = "<sync>";
|
|
235
241
|
|
|
236
242
|
// packages/qwik/src/core/shared/types.ts
|
|
237
|
-
var
|
|
243
|
+
var Ze = "q:type";
|
|
238
244
|
|
|
239
245
|
// packages/qwik/src/core/shared/vnode-data-types.ts
|
|
240
246
|
var VNodeDataSeparator = {
|
|
@@ -406,7 +412,7 @@ var VNodeDataChar = {
|
|
|
406
412
|
/* ******* */ "~"
|
|
407
413
|
};
|
|
408
414
|
|
|
409
|
-
var
|
|
415
|
+
var ri = (e, t) => {
|
|
410
416
|
const n = parseInt(e, 10) - 1;
|
|
411
417
|
const r = n + t;
|
|
412
418
|
return -(r * (r + 1) / 2 + t + 1);
|
|
@@ -496,29 +502,31 @@ function encodeVNodeDataKey(e) {
|
|
|
496
502
|
}
|
|
497
503
|
|
|
498
504
|
// packages/qwik/src/core/shared/utils/markers.ts
|
|
499
|
-
var
|
|
505
|
+
var si = "q:renderFn";
|
|
500
506
|
|
|
501
|
-
var
|
|
507
|
+
var ui = "q:slot";
|
|
502
508
|
|
|
503
509
|
var QSlotParent = "q:sparent";
|
|
504
510
|
|
|
505
511
|
var QStatePatchAttr = "q:patch";
|
|
506
512
|
|
|
507
|
-
var
|
|
513
|
+
var ai = "q:r";
|
|
508
514
|
|
|
509
|
-
var
|
|
515
|
+
var hi = "q:style";
|
|
510
516
|
|
|
511
|
-
var
|
|
517
|
+
var di = "style[q\\:style]";
|
|
512
518
|
|
|
513
519
|
var QStyleSSelector = "style[q\\:sstyle]";
|
|
514
520
|
|
|
515
|
-
var
|
|
521
|
+
var pi = di + "," + QStyleSSelector;
|
|
516
522
|
|
|
517
|
-
var
|
|
523
|
+
var $i = "q:sstyle";
|
|
518
524
|
|
|
519
|
-
var
|
|
525
|
+
var yi = "q:ctx";
|
|
520
526
|
|
|
521
|
-
var
|
|
527
|
+
var mi = "q:brefs";
|
|
528
|
+
|
|
529
|
+
var QwikEvContainerReady = 0;
|
|
522
530
|
|
|
523
531
|
var QRenderAttr = "q:render";
|
|
524
532
|
|
|
@@ -526,7 +534,7 @@ var QRuntimeAttr = "q:runtime";
|
|
|
526
534
|
|
|
527
535
|
var QVersionAttr = "q:version";
|
|
528
536
|
|
|
529
|
-
var
|
|
537
|
+
var vi = "q:base";
|
|
530
538
|
|
|
531
539
|
var QLocaleAttr = "q:locale";
|
|
532
540
|
|
|
@@ -534,74 +542,76 @@ var QManifestHashAttr = "q:manifest-hash";
|
|
|
534
542
|
|
|
535
543
|
var QInstanceAttr = "q:instance";
|
|
536
544
|
|
|
537
|
-
var
|
|
545
|
+
var QStatePrewarmAttr = "q:prewarm";
|
|
546
|
+
|
|
547
|
+
var bi = "q:container-island";
|
|
538
548
|
|
|
539
|
-
var
|
|
549
|
+
var _i = "/" + bi;
|
|
540
550
|
|
|
541
|
-
var
|
|
551
|
+
var gi = "q:ignore";
|
|
542
552
|
|
|
543
|
-
var
|
|
553
|
+
var Ei = "/" + gi;
|
|
544
554
|
|
|
545
|
-
var
|
|
555
|
+
var Si = "q:container";
|
|
546
556
|
|
|
547
|
-
var
|
|
557
|
+
var ki = "/" + Si;
|
|
548
558
|
|
|
549
|
-
var
|
|
559
|
+
var Pi = "q:template";
|
|
550
560
|
|
|
551
|
-
var
|
|
561
|
+
var Ti = "[q\\:container]:not([q\\:container=" + "html" /* HTML */ + "]):not([q\\:container=" + "text" /* TEXT */ + "])";
|
|
552
562
|
|
|
553
563
|
var QDefaultSlot = "";
|
|
554
564
|
|
|
555
|
-
var
|
|
565
|
+
var Ii = "q:id";
|
|
556
566
|
|
|
557
|
-
var
|
|
567
|
+
var Ni = "q:key";
|
|
558
568
|
|
|
559
|
-
var
|
|
569
|
+
var Ci = "q:props";
|
|
560
570
|
|
|
561
|
-
var
|
|
571
|
+
var Oi = "q:seq";
|
|
562
572
|
|
|
563
|
-
var
|
|
573
|
+
var ji = "q:seqIdx";
|
|
564
574
|
|
|
565
575
|
var ELEMENT_BACKPATCH_DATA = "qwik/backpatch";
|
|
566
576
|
|
|
567
|
-
var
|
|
577
|
+
var Li = "q:p";
|
|
568
578
|
|
|
569
|
-
var
|
|
579
|
+
var Fi = "q:ps";
|
|
570
580
|
|
|
571
|
-
var
|
|
581
|
+
var Di = ":";
|
|
572
582
|
|
|
573
|
-
var
|
|
583
|
+
var Xi = Di + "on";
|
|
574
584
|
|
|
575
|
-
var
|
|
585
|
+
var Wi = Di + "onIdx";
|
|
576
586
|
|
|
577
|
-
var
|
|
587
|
+
var Vi = Di + "onFlags";
|
|
578
588
|
|
|
579
|
-
var
|
|
589
|
+
var Ui = Di + "nearestCursorBoundary";
|
|
580
590
|
|
|
581
|
-
var
|
|
591
|
+
var zi = ":";
|
|
582
592
|
|
|
583
|
-
var
|
|
593
|
+
var Bi = "dangerouslySetInnerHTML";
|
|
584
594
|
|
|
585
595
|
// packages/qwik/src/core/shared/utils/promises.ts
|
|
586
|
-
import { isDev as isDev5, isServer as
|
|
596
|
+
import { isDev as isDev5, isServer as Ce } from "@qwik.dev/core/build";
|
|
587
597
|
|
|
588
|
-
var
|
|
598
|
+
var Hi = 100;
|
|
589
599
|
|
|
590
|
-
var
|
|
600
|
+
var Ji = e => !!e && typeof e == "object" && typeof e.then === "function";
|
|
591
601
|
|
|
592
|
-
var
|
|
602
|
+
var Gi = (e, t) => Ji(e) ? e.then(t) : t(e);
|
|
593
603
|
|
|
594
604
|
var checkError = e => {
|
|
595
|
-
if (
|
|
605
|
+
if (Ce && e instanceof ReferenceError && e.message.includes("window")) {
|
|
596
606
|
e.message = 'It seems like you forgot to add "if (isBrowser) {...}" here:' + e.message;
|
|
597
607
|
}
|
|
598
608
|
};
|
|
599
609
|
|
|
600
|
-
var
|
|
610
|
+
var Zi = e => {
|
|
601
611
|
throw e;
|
|
602
612
|
};
|
|
603
613
|
|
|
604
|
-
function n(e, t =
|
|
614
|
+
function n(e, t = Zi) {
|
|
605
615
|
let n = false;
|
|
606
616
|
let r;
|
|
607
617
|
try {
|
|
@@ -610,21 +620,21 @@ function n(e, t = Ms) {
|
|
|
610
620
|
} catch (e) {
|
|
611
621
|
r = e;
|
|
612
622
|
}
|
|
613
|
-
if (!
|
|
623
|
+
if (!Ji(r)) {
|
|
614
624
|
if (n) {
|
|
615
625
|
return r;
|
|
616
626
|
}
|
|
617
627
|
isDev5 && checkError(r);
|
|
618
628
|
return t(r);
|
|
619
629
|
}
|
|
620
|
-
let s =
|
|
630
|
+
let s = Hi;
|
|
621
631
|
const i = async n => {
|
|
622
|
-
while (
|
|
632
|
+
while (Ji(n)) {
|
|
623
633
|
try {
|
|
624
634
|
await n;
|
|
625
635
|
return await e();
|
|
626
636
|
} catch (e) {
|
|
627
|
-
if (
|
|
637
|
+
if (Ji(e)) {
|
|
628
638
|
if (! --s) {
|
|
629
639
|
n = new Error("Exceeded max retry count in retryOnPromise");
|
|
630
640
|
break;
|
|
@@ -653,34 +663,34 @@ function convertStyleIdsToString(e) {
|
|
|
653
663
|
}
|
|
654
664
|
|
|
655
665
|
// packages/qwik/src/core/shared/utils/event-names.ts
|
|
656
|
-
var
|
|
666
|
+
var er = e => e.charCodeAt(0) === 113 && e.charCodeAt(1) === 45 && (e.charCodeAt(3) === 58 || e.charCodeAt(3) === 112 && e.charCodeAt(4) === 58);
|
|
657
667
|
|
|
658
668
|
function isPreventDefault(e) {
|
|
659
669
|
return e.startsWith("preventdefault:");
|
|
660
670
|
}
|
|
661
671
|
|
|
662
672
|
// packages/qwik/src/core/shared/utils/unitless_number.ts
|
|
663
|
-
var
|
|
673
|
+
var or = /* @__PURE__ */ new Set([ "animationIterationCount", "aspectRatio", "borderImageOutset", "borderImageSlice", "borderImageWidth", "boxFlex", "boxFlexGroup", "boxOrdinalGroup", "columnCount", "columns", "flex", "flexGrow", "flexShrink", "gridArea", "gridRow", "gridRowEnd", "gridRowStart", "gridColumn", "gridColumnEnd", "gridColumnStart", "fontWeight", "lineClamp", "lineHeight", "opacity", "order", "orphans", "scale", "tabSize", "widows", "zIndex", "zoom", "MozAnimationIterationCount",
|
|
664
674
|
// Known Prefixed Properties
|
|
665
675
|
"MozBoxFlex",
|
|
666
676
|
// TODO: Remove these since they shouldn't be used in modern code
|
|
667
677
|
"msFlex", "msFlexPositive", "WebkitAnimationIterationCount", "WebkitBoxFlex", "WebkitBoxOrdinalGroup", "WebkitColumnCount", "WebkitColumns", "WebkitFlex", "WebkitFlexGrow", "WebkitFlexShrink", "WebkitLineClamp" ]);
|
|
668
678
|
|
|
669
|
-
var isUnitlessNumber = e =>
|
|
679
|
+
var isUnitlessNumber = e => or.has(e);
|
|
670
680
|
|
|
671
681
|
// packages/qwik/src/core/shared/utils/styles.ts
|
|
672
|
-
var
|
|
682
|
+
var ur = e => {
|
|
673
683
|
if (!e) {
|
|
674
684
|
return "";
|
|
675
685
|
}
|
|
676
|
-
if (
|
|
686
|
+
if (He(e)) {
|
|
677
687
|
return e.trim();
|
|
678
688
|
}
|
|
679
689
|
const t = [];
|
|
680
|
-
if (
|
|
690
|
+
if (Qe(e)) {
|
|
681
691
|
for (let n = 0; n < e.length; n++) {
|
|
682
692
|
const r = e[n];
|
|
683
|
-
const s =
|
|
693
|
+
const s = ur(r);
|
|
684
694
|
if (s) {
|
|
685
695
|
t.push(s);
|
|
686
696
|
}
|
|
@@ -695,15 +705,15 @@ var Fs = e => {
|
|
|
695
705
|
return t.join(" ");
|
|
696
706
|
};
|
|
697
707
|
|
|
698
|
-
var
|
|
708
|
+
var cr = e => e.replace(/([A-Z])/g, "-$1").toLowerCase();
|
|
699
709
|
|
|
700
|
-
var
|
|
710
|
+
var fr = e => {
|
|
701
711
|
if (e == null) {
|
|
702
712
|
return "";
|
|
703
713
|
}
|
|
704
714
|
if (typeof e == "object") {
|
|
705
|
-
if (
|
|
706
|
-
throw
|
|
715
|
+
if (Qe(e)) {
|
|
716
|
+
throw Ye(0 /* stringifyClassOrStyle */ , [ e, "style" ]);
|
|
707
717
|
} else {
|
|
708
718
|
const t = [];
|
|
709
719
|
for (const n in e) {
|
|
@@ -713,7 +723,7 @@ var stringifyStyle = e => {
|
|
|
713
723
|
if (n.startsWith("--")) {
|
|
714
724
|
t.push(n + ":" + r);
|
|
715
725
|
} else {
|
|
716
|
-
t.push(
|
|
726
|
+
t.push(cr(n) + ":" + ar(n, r));
|
|
717
727
|
}
|
|
718
728
|
}
|
|
719
729
|
}
|
|
@@ -726,12 +736,12 @@ var stringifyStyle = e => {
|
|
|
726
736
|
|
|
727
737
|
var serializeBooleanOrNumberAttribute = e => e != null ? String(e) : null;
|
|
728
738
|
|
|
729
|
-
function
|
|
739
|
+
function i(e, t, n) {
|
|
730
740
|
if (isClassAttr(e)) {
|
|
731
|
-
const e =
|
|
741
|
+
const e = ur(t);
|
|
732
742
|
t = n ? n + (e.length ? " " + e : e) : e;
|
|
733
743
|
} else if (e === "style") {
|
|
734
|
-
t =
|
|
744
|
+
t = fr(t);
|
|
735
745
|
} else if (isEnumeratedBooleanAttribute(e) || typeof t === "number") {
|
|
736
746
|
t = serializeBooleanOrNumberAttribute(t);
|
|
737
747
|
} else if (t === false || t == null) {
|
|
@@ -746,7 +756,7 @@ function isEnumeratedBooleanAttribute(e) {
|
|
|
746
756
|
return isAriaAttribute(e) || [ "spellcheck", "draggable", "contenteditable" ].includes(e);
|
|
747
757
|
}
|
|
748
758
|
|
|
749
|
-
var
|
|
759
|
+
var ar = (e, t) => {
|
|
750
760
|
if (typeof t === "number" && t !== 0 && !isUnitlessNumber(e)) {
|
|
751
761
|
return t + "px";
|
|
752
762
|
}
|
|
@@ -775,9 +785,9 @@ var parseBundleGraph = e => {
|
|
|
775
785
|
o = -i / 10;
|
|
776
786
|
} else {
|
|
777
787
|
s.push({
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
788
|
+
fn: e[i],
|
|
789
|
+
mn: o,
|
|
790
|
+
wn: 1
|
|
781
791
|
});
|
|
782
792
|
}
|
|
783
793
|
n++;
|
|
@@ -796,7 +806,7 @@ var initPreloader = e => {
|
|
|
796
806
|
};
|
|
797
807
|
|
|
798
808
|
// packages/qwik/src/core/shared/utils/objects.ts
|
|
799
|
-
var
|
|
809
|
+
var Cr = e => {
|
|
800
810
|
for (const t in e) {
|
|
801
811
|
if (Object.prototype.hasOwnProperty.call(e, t)) {
|
|
802
812
|
return false;
|
|
@@ -818,13 +828,18 @@ var writeStringRootRef = (e, t) => e.write(String(t));
|
|
|
818
828
|
|
|
819
829
|
var writeStringRootRefPath = (e, t) => e.write(stringifyRootRefPath(t));
|
|
820
830
|
|
|
821
|
-
var
|
|
831
|
+
var writeStringRootRefDelta = (e, t, n) => e.write(String(t - n));
|
|
832
|
+
|
|
833
|
+
var Or = e => ({
|
|
822
834
|
write: e,
|
|
823
835
|
writeRootRef(e) {
|
|
824
836
|
return writeStringRootRef(this, e);
|
|
825
837
|
},
|
|
826
838
|
writeRootRefPath(e) {
|
|
827
839
|
return writeStringRootRefPath(this, e);
|
|
840
|
+
},
|
|
841
|
+
writeRootRefDelta(e, t) {
|
|
842
|
+
return writeStringRootRefDelta(this, e, t);
|
|
828
843
|
}
|
|
829
844
|
});
|
|
830
845
|
|
|
@@ -835,21 +850,21 @@ var GT = ">";
|
|
|
835
850
|
|
|
836
851
|
var CLOSE_TAG = "</";
|
|
837
852
|
|
|
838
|
-
var
|
|
853
|
+
var Ja = " ";
|
|
839
854
|
|
|
840
855
|
var ATTR_EQUALS_QUOTE = '="';
|
|
841
856
|
|
|
842
|
-
var
|
|
857
|
+
var jr = '"';
|
|
843
858
|
|
|
844
859
|
var EMPTY_ATTR = '=""';
|
|
845
860
|
|
|
846
|
-
var
|
|
861
|
+
var Lr = "[";
|
|
847
862
|
|
|
848
|
-
var
|
|
863
|
+
var Fr = "]";
|
|
849
864
|
|
|
850
865
|
var PAREN_CLOSE = ")";
|
|
851
866
|
|
|
852
|
-
var
|
|
867
|
+
var Dr = ",";
|
|
853
868
|
|
|
854
869
|
// packages/qwik/src/server/platform.ts
|
|
855
870
|
var getDevSegmentPath = (e, t, n, r) => {
|
|
@@ -857,7 +872,7 @@ var getDevSegmentPath = (e, t, n, r) => {
|
|
|
857
872
|
if (s) {
|
|
858
873
|
return s;
|
|
859
874
|
}
|
|
860
|
-
if (n ===
|
|
875
|
+
if (n === Ge) {
|
|
861
876
|
return [ n, "" ];
|
|
862
877
|
}
|
|
863
878
|
if (!r) {
|
|
@@ -871,14 +886,14 @@ var getDevSegmentPath = (e, t, n, r) => {
|
|
|
871
886
|
return [ n, i ];
|
|
872
887
|
};
|
|
873
888
|
|
|
874
|
-
function
|
|
889
|
+
function dr(e, t) {
|
|
875
890
|
const n = t?.mapper;
|
|
876
891
|
const r = e.symbolMapper ? e.symbolMapper : (e, t, r) => {
|
|
877
892
|
if (n || isDev6 && import.meta.env?.MODE !== "test") {
|
|
878
|
-
const t =
|
|
893
|
+
const t = sd(e);
|
|
879
894
|
const s = !isDev6 ? n[t] : getDevSegmentPath(n, t, e, r);
|
|
880
895
|
if (!s) {
|
|
881
|
-
if (t ===
|
|
896
|
+
if (t === Ge) {
|
|
882
897
|
return [ t, "" ];
|
|
883
898
|
}
|
|
884
899
|
const s = globalThis.__qwik_reg_symbols?.has(t);
|
|
@@ -893,12 +908,12 @@ function Vs(e, t) {
|
|
|
893
908
|
const s = {
|
|
894
909
|
isServer: true,
|
|
895
910
|
async importSymbol(e, t, n) {
|
|
896
|
-
const r =
|
|
911
|
+
const r = sd(n);
|
|
897
912
|
const s = globalThis.__qwik_reg_symbols?.get(r);
|
|
898
913
|
if (s) {
|
|
899
914
|
return s;
|
|
900
915
|
}
|
|
901
|
-
throw
|
|
916
|
+
throw Ye(6 /* dynamicImportFailed */ , [ n ]);
|
|
902
917
|
},
|
|
903
918
|
raf: () => {
|
|
904
919
|
console.error("server can not rerender");
|
|
@@ -912,11 +927,11 @@ function Vs(e, t) {
|
|
|
912
927
|
}
|
|
913
928
|
|
|
914
929
|
async function setServerPlatform(e, t) {
|
|
915
|
-
const n =
|
|
916
|
-
|
|
930
|
+
const n = dr(e, t);
|
|
931
|
+
yr(n);
|
|
917
932
|
}
|
|
918
933
|
|
|
919
|
-
var
|
|
934
|
+
var sd = e => {
|
|
920
935
|
const t = e.lastIndexOf("_");
|
|
921
936
|
if (t > -1) {
|
|
922
937
|
return e.slice(t + 1);
|
|
@@ -925,33 +940,33 @@ var Sh = e => {
|
|
|
925
940
|
};
|
|
926
941
|
|
|
927
942
|
// packages/qwik/src/server/ssr-render.ts
|
|
928
|
-
import { getClientManifest as
|
|
943
|
+
import { getClientManifest as ga } from "@qwik.dev/core";
|
|
929
944
|
|
|
930
945
|
// packages/qwik/src/server/ssr-container.ts
|
|
931
946
|
import { isDev as isDev8 } from "@qwik.dev/core/build";
|
|
932
947
|
|
|
933
|
-
import { _SubscriptionData as
|
|
948
|
+
import { _SubscriptionData as Ys, _SharedContainer as Cc, _jsxSorted as co, _jsxSplit as fo, _res as _, _setEvent, _walkJSX as zn, _createQRL as sa, isSignal as qu } from "@qwik.dev/core/internal";
|
|
934
949
|
|
|
935
950
|
// packages/qwik/src/server/ooos-utils.ts
|
|
936
|
-
import { _SubscriptionPatch as
|
|
951
|
+
import { _SubscriptionPatch as Ku } from "@qwik.dev/core/internal";
|
|
937
952
|
|
|
938
953
|
var recordExternalRootEffect = (e, t, n, r, s, i, o, a) => {
|
|
939
954
|
if (!r || o !== null && !a) {
|
|
940
955
|
return;
|
|
941
956
|
}
|
|
942
|
-
let
|
|
957
|
+
let l = s;
|
|
943
958
|
if (o !== null && s && (typeof s === "object" || typeof s === "function")) {
|
|
944
|
-
|
|
959
|
+
l = n.get(s) || s;
|
|
945
960
|
}
|
|
946
|
-
const
|
|
947
|
-
t.
|
|
948
|
-
t.
|
|
961
|
+
const c = e.Oe(l);
|
|
962
|
+
t.kt(l);
|
|
963
|
+
t.kt(i);
|
|
949
964
|
if (o !== null && typeof o !== "string") {
|
|
950
|
-
t.
|
|
965
|
+
t.kt(o);
|
|
951
966
|
}
|
|
952
967
|
r.push({
|
|
953
|
-
rootObj:
|
|
954
|
-
rootId:
|
|
968
|
+
rootObj: l,
|
|
969
|
+
rootId: c,
|
|
955
970
|
effect: i,
|
|
956
971
|
prop: o
|
|
957
972
|
});
|
|
@@ -965,27 +980,27 @@ var collectSubscriptionPatches = (e, t, n) => {
|
|
|
965
980
|
const s = /* @__PURE__ */ new Map;
|
|
966
981
|
for (let i = 0; i < t.length; i++) {
|
|
967
982
|
const o = t[i];
|
|
968
|
-
const a = o.rootId === void 0 ? e.
|
|
983
|
+
const a = o.rootId === void 0 ? e.Oe(o.rootObj) : o.rootId;
|
|
969
984
|
if (a === void 0 || a >= n) {
|
|
970
985
|
continue;
|
|
971
986
|
}
|
|
972
|
-
let
|
|
973
|
-
if (!
|
|
974
|
-
|
|
975
|
-
s.set(a,
|
|
976
|
-
r.push(
|
|
987
|
+
let l = s.get(a);
|
|
988
|
+
if (!l) {
|
|
989
|
+
l = new Ku(a, o.prop === null ? /* @__PURE__ */ new Set : /* @__PURE__ */ new Map);
|
|
990
|
+
s.set(a, l);
|
|
991
|
+
r.push(l);
|
|
977
992
|
}
|
|
978
|
-
const
|
|
993
|
+
const c = l.subscriptions;
|
|
979
994
|
if (o.prop === null) {
|
|
980
|
-
if (
|
|
981
|
-
|
|
995
|
+
if (c instanceof Set) {
|
|
996
|
+
c.add(o.effect);
|
|
982
997
|
}
|
|
983
998
|
} else {
|
|
984
|
-
if (
|
|
985
|
-
let e =
|
|
999
|
+
if (c instanceof Map) {
|
|
1000
|
+
let e = c.get(o.prop);
|
|
986
1001
|
if (!e) {
|
|
987
1002
|
e = /* @__PURE__ */ new Set;
|
|
988
|
-
|
|
1003
|
+
c.set(o.prop, e);
|
|
989
1004
|
}
|
|
990
1005
|
e.add(o.effect);
|
|
991
1006
|
}
|
|
@@ -995,7 +1010,7 @@ var collectSubscriptionPatches = (e, t, n) => {
|
|
|
995
1010
|
};
|
|
996
1011
|
|
|
997
1012
|
// packages/qwik/src/server/preload-impl.ts
|
|
998
|
-
import { getPlatform as
|
|
1013
|
+
import { getPlatform as mr } from "@qwik.dev/core";
|
|
999
1014
|
|
|
1000
1015
|
var simplifyPath = (e, t) => {
|
|
1001
1016
|
if (t == null) {
|
|
@@ -1015,7 +1030,7 @@ var simplifyPath = (e, t) => {
|
|
|
1015
1030
|
};
|
|
1016
1031
|
|
|
1017
1032
|
var getBase = e => {
|
|
1018
|
-
let t = e.
|
|
1033
|
+
let t = e.We;
|
|
1019
1034
|
if (import.meta.env?.DEV && !qTest) {
|
|
1020
1035
|
t = import.meta.env?.BASE_URL;
|
|
1021
1036
|
}
|
|
@@ -1039,15 +1054,15 @@ var preloaderPre = (e, t, n) => {
|
|
|
1039
1054
|
a.push(`P:${t.maxIdlePreloads}`);
|
|
1040
1055
|
}
|
|
1041
1056
|
}
|
|
1042
|
-
const
|
|
1043
|
-
const
|
|
1057
|
+
const l = a.length ? `,{${a.join(",")}}` : "";
|
|
1058
|
+
const c = {
|
|
1044
1059
|
rel: "modulepreload",
|
|
1045
1060
|
href: i
|
|
1046
1061
|
};
|
|
1047
1062
|
if (n) {
|
|
1048
|
-
|
|
1063
|
+
c["nonce"] = n;
|
|
1049
1064
|
}
|
|
1050
|
-
e.openElement("link", null,
|
|
1065
|
+
e.openElement("link", null, c, null, null, null);
|
|
1051
1066
|
e.closeElement();
|
|
1052
1067
|
e.openElement("link", null, {
|
|
1053
1068
|
rel: "preload",
|
|
@@ -1056,7 +1071,7 @@ var preloaderPre = (e, t, n) => {
|
|
|
1056
1071
|
crossorigin: "anonymous"
|
|
1057
1072
|
}, null, null, null);
|
|
1058
1073
|
e.closeElement();
|
|
1059
|
-
const u = `let b=fetch("${o}");import("${i}").then(({l})=>l(${JSON.stringify(s)},b${
|
|
1074
|
+
const u = `let b=fetch("${o}");import("${i}").then(({l})=>l(${JSON.stringify(s)},b${l}));`;
|
|
1060
1075
|
const h = {
|
|
1061
1076
|
type: "module",
|
|
1062
1077
|
async: true,
|
|
@@ -1089,10 +1104,10 @@ var includePreloader = (e, t, n, r) => {
|
|
|
1089
1104
|
let i = s;
|
|
1090
1105
|
const o = getBase(e);
|
|
1091
1106
|
const a = [];
|
|
1092
|
-
const {resolvedManifest:
|
|
1107
|
+
const {resolvedManifest: l} = e;
|
|
1093
1108
|
if (i) {
|
|
1094
|
-
const e =
|
|
1095
|
-
const t =
|
|
1109
|
+
const e = l?.manifest.preloader;
|
|
1110
|
+
const t = l?.manifest.core;
|
|
1096
1111
|
for (let r = 0; r < n.length; r++) {
|
|
1097
1112
|
const s = n[r];
|
|
1098
1113
|
if (s === e || s === t) {
|
|
@@ -1104,7 +1119,7 @@ var includePreloader = (e, t, n, r) => {
|
|
|
1104
1119
|
}
|
|
1105
1120
|
}
|
|
1106
1121
|
}
|
|
1107
|
-
const
|
|
1122
|
+
const c = simplifyPath(o, l?.manifest.preloader);
|
|
1108
1123
|
const u = a.length ?
|
|
1109
1124
|
/**
|
|
1110
1125
|
* We only use modulepreload links because they behave best. Older browsers can rely on the
|
|
@@ -1112,8 +1127,8 @@ var includePreloader = (e, t, n, r) => {
|
|
|
1112
1127
|
* links.
|
|
1113
1128
|
*/ `${JSON.stringify(a)}.map((l,e)=>{e=document.createElement('link');e.rel='modulepreload';e.href=${JSON.stringify(o)}+l;document.head.appendChild(e)});` : "";
|
|
1114
1129
|
let h = u;
|
|
1115
|
-
if (
|
|
1116
|
-
h += `window.addEventListener('load',f=>{f=_=>import("${
|
|
1130
|
+
if (c) {
|
|
1131
|
+
h += `window.addEventListener('load',f=>{f=_=>import("${c}").then(({p})=>p(${JSON.stringify(n)}));try{requestIdleCallback(f,{timeout:2000})}catch(e){setTimeout(f,200)}})`;
|
|
1117
1132
|
}
|
|
1118
1133
|
if (h) {
|
|
1119
1134
|
const t = {
|
|
@@ -1134,7 +1149,7 @@ var preloaderPost = (e, t, n) => {
|
|
|
1134
1149
|
return;
|
|
1135
1150
|
}
|
|
1136
1151
|
if (t.preloader !== false) {
|
|
1137
|
-
const r = Array.from(e.serializationCtx.
|
|
1152
|
+
const r = Array.from(e.serializationCtx.It);
|
|
1138
1153
|
const s = getBundles(r);
|
|
1139
1154
|
includePreloader(e, t.preloader, s, n);
|
|
1140
1155
|
}
|
|
@@ -1148,10 +1163,10 @@ function normalizePreLoaderOptions(e) {
|
|
|
1148
1163
|
}
|
|
1149
1164
|
|
|
1150
1165
|
var getBundles = e => {
|
|
1151
|
-
const t =
|
|
1166
|
+
const t = mr();
|
|
1152
1167
|
const n = e?.map(e => {
|
|
1153
|
-
const n = e.
|
|
1154
|
-
const r = e.
|
|
1168
|
+
const n = e._t;
|
|
1169
|
+
const r = e.gt;
|
|
1155
1170
|
const s = t.chunkForSymbol(n, r, e.dev?.file);
|
|
1156
1171
|
if (s) {
|
|
1157
1172
|
return s[1];
|
|
@@ -1167,9 +1182,9 @@ var preLoaderOptionsDefault = {
|
|
|
1167
1182
|
};
|
|
1168
1183
|
|
|
1169
1184
|
// packages/qwik/src/server/scripts.ts
|
|
1170
|
-
var QWIK_LOADER_DEFAULT_MINIFIED = 'const e=document,t=window,n="w",r="wp",o="d",s="dp",i="e",
|
|
1185
|
+
var QWIK_LOADER_DEFAULT_MINIFIED = 'const e=document,t=window,n="w",r="wp",o="d",s="dp",i="e",a="ep",c="capture:",l="readystatechange",p=0,u=new Set,d=new Set([e]),f=new Map,h={};let q,b,g;const m=(e,t)=>Array.from(e.querySelectorAll(t)),v=e=>{const t=[];return d.forEach(n=>t.push(...m(n,e))),t},w=(e,t,n,r=!1,o=!1)=>e.addEventListener(t,n,{capture:r,passive:o}),y=e=>{H(e);const t=m(e,"[q\\\\:shadowroot]");for(let e=0;e<t.length;e++){const n=t[e].shadowRoot;n&&y(n)}},A=e=>e&&"function"==typeof e.then,E=async e=>{for(let t=0;t<e.length;t++)await e[t]()},C=e=>{if(e.length){const t=()=>E(e);g=g?g.then(t,t):t()}},S=t=>{if(void 0===t._qwikjson_){let n=(t===e.documentElement?e.body:t).lastElementChild;for(;n;){if("SCRIPT"===n.tagName&&"qwik/json"===n.getAttribute("type")){t._qwikjson_=JSON.parse(n.textContent.replace(/\\\\x3C(\\/?script)/gi,"<$1"));break}n=n.previousElementSibling}}},_=e=>{h[e]=1,I(l)},k=t=>{const n=t.getAttribute("q:instance");return"paused"===t.getAttribute("q:container")&&"loading"===e.readyState&&!h[n]&&new Promise(t=>{w(e,l,()=>{("loading"!==e.readyState||h[n])&&t()})})},$=(e,t)=>new CustomEvent(e,{detail:t}),I=(t,n)=>{e.dispatchEvent($(t,n))},N=e=>e.replace(/([A-Z-])/g,e=>"-"+e.toLowerCase()),R=e=>e.replace(/-./g,e=>e[1].toUpperCase()),T=e=>{const t=e.indexOf(":");return{scope:e.slice(0,t),eventName:R(e.slice(t+1))}},x=e=>2===e.length,B=e=>e.charAt(0),L=e=>!!e&&1===e.nodeType,U=(e,t,n)=>e.hasAttribute(n)&&(!!e._qDispatch?.[t]||e.hasAttribute("q-"+t)),j=(t,n,r,o,s,i,a,c=!0)=>{const l={qBase:r,symbol:i,element:n,reqTime:a};if(!s){const n=(e["qFuncs_"+t.getAttribute("q:instance")]||[])[+i];if(!n&&c){const e=Error("sym:"+i);I("qerror",{importError:"sync",error:e,...l}),console.error(e)}return n}const p=`${i}|${r}|${s}`,u=f.get(p);if(u)return u;const d=new URL(s,o).href,h=import(d);return S(t),h.then(e=>{const t=e[i];if(t)f.set(p,t),I("qsymbol",l);else{const e=Error(`${i} not in ${d}`);I("qerror",{importError:"no-symbol",error:e,...l}),console.error(e)}return t},e=>{I("qerror",{importError:"async",error:e,...l}),console.error(e)})},D=(t,n,r,o,s,i=!0)=>{let a=!1;s&&(i&&t.hasAttribute("preventdefault:"+s)&&n.preventDefault(),t.hasAttribute("stoppropagation:"+s)&&n.stopPropagation());const c=t._qDispatch?.[r];if(c){if("function"==typeof c){const e=()=>c(n,t);if(a)o.push(async()=>{const t=e();A(t)&&await t});else{const t=e();A(t)&&(a=!0,o.push(()=>t))}}else if(c.length)for(let e=0;e<c.length;e++){const r=c[e];if(r){const e=()=>r(n,t);if(a)o.push(async()=>{const t=e();A(t)&&await t});else{const t=e();A(t)&&(a=!0,o.push(()=>t))}}}return}const l=t.getAttribute("q-"+r);if(l){const r=t.closest("[q\\\\:container]:not([q\\\\:container=html]):not([q\\\\:container=text])"),s=r.getAttribute("q:base"),i=new URL(s,e.baseURI),c=l.split("|"),p=k(r);for(let e=0;e<c.length;e++){const l=c[e],u=performance.now(),[d,f,h]=l.split("#"),q=e=>{if(e&&t.isConnected){const r=e=>{I("qerror",{error:e,qBase:s,symbol:f,element:t,reqTime:u})};try{const o=e.call(h,n,t);if(A(o))return o.catch(r)}catch(e){return r(e)}}},b=(e=!0)=>j(r,t,s,i,d,f,u,e),g=p?void 0:b();if(p)a=!0,o.push(async()=>{await p,await q(await b(!1)||await b())});else if(A(g))a=!0,o.push(()=>g.then(q));else if(a)a=!0,o.push(async()=>{await q(g||await b())});else{const e=q(g);A(e)&&(a=!0,o.push(()=>e))}}}},O=(e,t=i,n=!0)=>{const r=N(e.type),o=t+":"+r,s=c+r,a=[],l=[],p=[];let u=e.target;for(;u;)L(u)?(a.push(u),l.push(U(u,o,s)),u=u.parentElement):u=u.parentElement;for(let t=a.length-1;t>=0;t--)if(l[t]&&(D(a[t],e,o,p,r,n),e.cancelBubble))return void C(p);for(let t=0;t<a.length;t++)if(!l[t]&&(D(a[t],e,o,p,r,n),!e.bubbles||e.cancelBubble))return void C(p);C(p)},P=e=>O(e,a,!1),F=(e,t,n=!0)=>{const r=N(t.type),o=e+":"+r,s=v("[q-"+e+"\\\\:"+r+"]"),i=[];for(let e=0;e<s.length;e++){const a=s[e];D(a,t,o,i,r,n)}C(i)},J=e=>{F(o,e)},M=e=>{F(s,e,!1)},Z=e=>{F(n,e)},z=e=>{F(r,e,!1)},G=()=>{const n=e.readyState;if("interactive"==n||"complete"==n){if(b=1,d.forEach(y),u.has("d:qinit")){u.delete("d:qinit");const e=$("qinit"),t=v("[q-d\\\\:qinit]"),n=[];for(let r=0;r<t.length;r++){const o=t[r];D(o,e,"d:qinit",n),o.removeAttribute("q-d:qinit")}C(n)}if(u.has("d:qidle")&&(u.delete("d:qidle"),(t.requestIdleCallback??t.setTimeout).bind(t)(()=>{const e=$("qidle"),t=v("[q-d\\\\:qidle]"),n=[];for(let r=0;r<t.length;r++){const o=t[r];D(o,e,"d:qidle",n),o.removeAttribute("q-d:qidle")}C(n)})),u.has("e:qvisible")){q||(q=new IntersectionObserver(e=>{const t=[];for(let n=0;n<e.length;n++){const r=e[n];r.isIntersecting&&(q.unobserve(r.target),D(r.target,$("qvisible",r),"e:qvisible",t))}C(t)}));const e=v("[q-e\\\\:qvisible]:not([q\\\\:observed])");for(let t=0;t<e.length;t++){const n=e[t];q.observe(n),n.setAttribute("q:observed","true")}}}},H=(...e)=>{for(let r=0;r<e.length;r++){const s=e[r];if(0===s)_(e[++r]);else if("string"==typeof s){if(!u.has(s)){u.add(s);const{scope:e,eventName:r}=T(s),i=x(e),a=B(e);a===n?w(t,r,i?z:Z,!0,i):d.forEach(e=>w(e,r,a===o?i?M:J:i?P:O,!0,i)),1!==b||"e:qvisible"!==s&&"d:qinit"!==s&&"d:qidle"!==s||G()}}else d.has(s)||(u.forEach(e=>{const{scope:t,eventName:r}=T(e),i=x(t),a=B(t);a!==n&&w(s,r,a===o?i?M:J:i?P:O,!0,i)}),d.add(s))}},K=t._qwikEv;K?.roots||(Array.isArray(K)?H(...K):H("e:click","e:input"),t._qwikEv={events:u,roots:d,push:H},w(e,l,G),G())';
|
|
1171
1186
|
|
|
1172
|
-
var QWIK_LOADER_DEFAULT_DEBUG = 'const doc = document;\nconst win = window;\nconst windowPrefix = "w";\nconst passiveWindowPrefix = "wp";\nconst documentPrefix = "d";\nconst passiveDocumentPrefix = "dp";\nconst elementPrefix = "e";\nconst passiveElementPrefix = "ep";\nconst capturePrefix = "capture:";\nconst readyStateChange = "readystatechange";\nconst containerReady = "qready";\nconst events = /* @__PURE__ */ new Set();\nconst roots = /* @__PURE__ */ new Set([doc]);\nconst symbols = /* @__PURE__ */ new Map();\nlet observer;\nlet hasInitialized;\nlet queuedTasks;\nconst nativeQuerySelectorAll = (root, selector) => Array.from(root.querySelectorAll(selector));\nconst querySelectorAll = (query) => {\n const elements = [];\n roots.forEach((root) => elements.push(...nativeQuerySelectorAll(root, query)));\n return elements;\n};\nconst addEventListener = (el, eventName, handler, capture = false, passive = false) => el.addEventListener(eventName, handler, { capture, passive });\nconst findShadowRoots = (fragment) => {\n addEventOrRoot(fragment);\n const shadowRoots = nativeQuerySelectorAll(fragment, "[q\\\\:shadowroot]");\n for (let i = 0; i < shadowRoots.length; i++) {\n const parent = shadowRoots[i];\n const shadowRoot = parent.shadowRoot;\n shadowRoot && findShadowRoots(shadowRoot);\n }\n};\nconst isPromise = (promise) => promise && typeof promise.then === "function";\nconst runTasks = async (tasks) => {\n for (let i = 0; i < tasks.length; i++) {\n await tasks[i]();\n }\n};\nconst queueTasks = (tasks) => {\n if (tasks.length) {\n const run = () => runTasks(tasks);\n queuedTasks = queuedTasks ? queuedTasks.then(run, run) : run();\n }\n};\nconst resolveContainer = (containerEl) => {\n if (containerEl._qwikjson_ === void 0) {\n const parentJSON = containerEl === doc.documentElement ? doc.body : containerEl;\n let script = parentJSON.lastElementChild;\n while (script) {\n if (script.tagName === "SCRIPT" && script.getAttribute("type") === "qwik/json") {\n containerEl._qwikjson_ = JSON.parse(\n script.textContent.replace(/\\\\x3C(\\/?script)/gi, "<$1")\n );\n break;\n }\n script = script.previousElementSibling;\n }\n }\n};\nconst waitForContainerReady = (container) => {\n const hash = container.getAttribute("q:instance");\n return container.getAttribute("q:container") === "paused" && doc.readyState === "loading" && !doc[containerReady]?.[hash] && new Promise((resolve) => {\n const ready = (ev) => {\n if (ev.detail === hash) {\n doc.removeEventListener(containerReady, ready);\n resolve();\n }\n };\n addEventListener(doc, readyStateChange, resolve);\n addEventListener(doc, containerReady, ready);\n });\n};\nconst createEvent = (eventName, detail) => new CustomEvent(eventName, { detail });\nconst emitEvent = (eventName, detail) => {\n doc.dispatchEvent(createEvent(eventName, detail));\n};\nconst camelToKebab = (str) => str.replace(/([A-Z-])/g, (a) => "-" + a.toLowerCase());\nconst kebabToCamel = (eventName) => eventName.replace(/-./g, (a) => a[1].toUpperCase());\nconst parseKebabEvent = (event) => {\n const separatorIndex = event.indexOf(":");\n const scope = event.slice(0, separatorIndex);\n return {\n scope,\n eventName: kebabToCamel(event.slice(separatorIndex + 1))\n };\n};\nconst isPassiveScope = (scope) => scope.length === 2;\nconst getRootScope = (scope) => scope.charAt(0);\nconst isElementNode = (node) => !!node && node.nodeType === 1;\nconst isCaptureHandlerElement = (element, scopedKebabName, captureAttribute) => element.hasAttribute(captureAttribute) && (!!element._qDispatch?.[scopedKebabName] || element.hasAttribute("q-" + scopedKebabName));\nconst resolveHandler = (container, element, qBase, base, chunk, symbol, reqTime, reportSyncError = true) => {\n const eventData = {\n qBase,\n symbol,\n element,\n reqTime\n };\n if (!chunk) {\n const handler2 = (doc["qFuncs_" + container.getAttribute("q:instance")] || [])[+symbol];\n if (!handler2 && reportSyncError) {\n const error = new Error("sym:" + symbol);\n emitEvent("qerror", {\n importError: "sync",\n error,\n ...eventData\n });\n console.error(error);\n }\n return handler2;\n }\n const key = `${symbol}|${qBase}|${chunk}`;\n const handler = symbols.get(key);\n if (handler) {\n return handler;\n }\n const href = new URL(chunk, base).href;\n const module = import(\n href\n );\n resolveContainer(container);\n return module.then(\n (module2) => {\n const handler2 = module2[symbol];\n if (!handler2) {\n const error = new Error(`${symbol} not in ${href}`);\n emitEvent("qerror", {\n importError: "no-symbol",\n error,\n ...eventData\n });\n console.error(error);\n } else {\n symbols.set(key, handler2);\n emitEvent("qsymbol", eventData);\n }\n return handler2;\n },\n (error) => {\n emitEvent("qerror", {\n importError: "async",\n error,\n ...eventData\n });\n console.error(error);\n return void 0;\n }\n );\n};\nconst dispatch = (element, ev, scopedKebabName, tasks, kebabName, allowPreventDefault = true) => {\n let defer = false;\n if (kebabName) {\n if (allowPreventDefault && element.hasAttribute("preventdefault:" + kebabName)) {\n ev.preventDefault();\n }\n if (element.hasAttribute("stoppropagation:" + kebabName)) {\n ev.stopPropagation();\n }\n }\n const handlers = element._qDispatch?.[scopedKebabName];\n if (handlers) {\n if (typeof handlers === "function") {\n const run = () => handlers(ev, element);\n if (defer) {\n tasks.push(async () => {\n const result = run();\n if (isPromise(result)) {\n await result;\n }\n });\n } else {\n const result = run();\n if (isPromise(result)) {\n defer = true;\n tasks.push(() => result);\n }\n }\n } else if (handlers.length) {\n for (let i = 0; i < handlers.length; i++) {\n const handler = handlers[i];\n if (handler) {\n const run = () => handler(ev, element);\n if (defer) {\n tasks.push(async () => {\n const result = run();\n if (isPromise(result)) {\n await result;\n }\n });\n } else {\n const result = run();\n if (isPromise(result)) {\n defer = true;\n tasks.push(() => result);\n }\n }\n }\n }\n }\n return;\n }\n const attrValue = element.getAttribute("q-" + scopedKebabName);\n if (attrValue) {\n const container = element.closest(\n "[q\\\\:container]:not([q\\\\:container=html]):not([q\\\\:container=text])"\n );\n const qBase = container.getAttribute("q:base");\n const base = new URL(qBase, doc.baseURI);\n const qrls = attrValue.split("|");\n const waitForReady = waitForContainerReady(container);\n for (let i = 0; i < qrls.length; i++) {\n const qrl = qrls[i];\n const reqTime = performance.now();\n const [chunk, symbol, capturedIds] = qrl.split("#");\n const run = (handler2) => {\n if (handler2 && element.isConnected) {\n const onError = (error) => {\n const retry = waitForContainerReady(container);\n if (retry) {\n return retry.then(() => run(handler2));\n }\n emitEvent("qerror", {\n error,\n qBase,\n symbol,\n element,\n reqTime\n });\n };\n try {\n const result = handler2.call(capturedIds, ev, element);\n if (isPromise(result)) {\n return result.catch(onError);\n }\n } catch (error) {\n return onError(error);\n }\n }\n };\n const resolve = (reportSyncError = true) => resolveHandler(container, element, qBase, base, chunk, symbol, reqTime, reportSyncError);\n const handler = waitForReady && !chunk ? resolve(false) : resolve();\n if (isPromise(handler)) {\n defer = true;\n tasks.push(() => handler.then(run));\n } else if (defer || waitForReady && !chunk && !handler) {\n defer = true;\n tasks.push(async () => {\n let retryHandler = handler;\n if (!retryHandler && waitForReady) {\n await waitForReady;\n retryHandler = resolve(false);\n }\n await run(retryHandler || await resolve());\n });\n } else {\n const result = run(handler);\n if (isPromise(result)) {\n defer = true;\n tasks.push(() => result);\n }\n }\n }\n }\n};\nconst processElementEvent = (ev, scope = elementPrefix, allowPreventDefault = true) => {\n const kebabName = camelToKebab(ev.type);\n const scopedKebabName = scope + ":" + kebabName;\n const captureAttribute = capturePrefix + kebabName;\n const elements = [];\n const captureHandlers = [];\n const tasks = [];\n let current = ev.target;\n while (current) {\n if (isElementNode(current)) {\n elements.push(current);\n captureHandlers.push(isCaptureHandlerElement(current, scopedKebabName, captureAttribute));\n current = current.parentElement;\n } else {\n current = current.parentElement;\n }\n }\n for (let i = elements.length - 1; i >= 0; i--) {\n if (captureHandlers[i]) {\n dispatch(elements[i], ev, scopedKebabName, tasks, kebabName, allowPreventDefault);\n if (ev.cancelBubble) {\n queueTasks(tasks);\n return;\n }\n }\n }\n for (let i = 0; i < elements.length; i++) {\n if (!captureHandlers[i]) {\n dispatch(elements[i], ev, scopedKebabName, tasks, kebabName, allowPreventDefault);\n if (!ev.bubbles || ev.cancelBubble) {\n queueTasks(tasks);\n return;\n }\n }\n }\n queueTasks(tasks);\n};\nconst processPassiveElementEvent = (ev) => processElementEvent(ev, passiveElementPrefix, false);\nconst broadcast = (scope, ev, allowPreventDefault = true) => {\n const kebabName = camelToKebab(ev.type);\n const scopedKebabName = scope + ":" + kebabName;\n const elements = querySelectorAll("[q-" + scope + "\\\\:" + kebabName + "]");\n const tasks = [];\n for (let i = 0; i < elements.length; i++) {\n const el = elements[i];\n dispatch(el, ev, scopedKebabName, tasks, kebabName, allowPreventDefault);\n }\n queueTasks(tasks);\n};\nconst processDocumentEvent = (ev) => {\n broadcast(documentPrefix, ev);\n};\nconst processPassiveDocumentEvent = (ev) => {\n broadcast(passiveDocumentPrefix, ev, false);\n};\nconst processWindowEvent = (ev) => {\n broadcast(windowPrefix, ev);\n};\nconst processPassiveWindowEvent = (ev) => {\n broadcast(passiveWindowPrefix, ev, false);\n};\nconst processReadyStateChange = () => {\n const readyState = doc.readyState;\n if (readyState == "interactive" || readyState == "complete") {\n hasInitialized = 1;\n roots.forEach(findShadowRoots);\n if (events.has("d:qinit")) {\n events.delete("d:qinit");\n const ev = createEvent("qinit");\n const elements = querySelectorAll("[q-d\\\\:qinit]");\n const tasks = [];\n for (let i = 0; i < elements.length; i++) {\n const el = elements[i];\n dispatch(el, ev, "d:qinit", tasks);\n el.removeAttribute("q-d:qinit");\n }\n queueTasks(tasks);\n }\n if (events.has("d:qidle")) {\n events.delete("d:qidle");\n const riC = win.requestIdleCallback ?? win.setTimeout;\n riC.bind(win)(() => {\n const ev = createEvent("qidle");\n const elements = querySelectorAll("[q-d\\\\:qidle]");\n const tasks = [];\n for (let i = 0; i < elements.length; i++) {\n const el = elements[i];\n dispatch(el, ev, "d:qidle", tasks);\n el.removeAttribute("q-d:qidle");\n }\n queueTasks(tasks);\n });\n }\n if (events.has("e:qvisible")) {\n observer || (observer = new IntersectionObserver((entries) => {\n const tasks = [];\n for (let i = 0; i < entries.length; i++) {\n const entry = entries[i];\n if (entry.isIntersecting) {\n observer.unobserve(entry.target);\n dispatch(\n entry.target,\n createEvent("qvisible", entry),\n "e:qvisible",\n tasks\n );\n }\n }\n queueTasks(tasks);\n }));\n const elements = querySelectorAll("[q-e\\\\:qvisible]:not([q\\\\:observed])");\n for (let i = 0; i < elements.length; i++) {\n const el = elements[i];\n observer.observe(el);\n el.setAttribute("q:observed", "true");\n }\n }\n }\n};\nconst addEventOrRoot = (...eventNames) => {\n for (let i = 0; i < eventNames.length; i++) {\n const eventNameOrRoot = eventNames[i];\n if (typeof eventNameOrRoot === "string") {\n if (!events.has(eventNameOrRoot)) {\n events.add(eventNameOrRoot);\n const { scope, eventName } = parseKebabEvent(eventNameOrRoot);\n const passive = isPassiveScope(scope);\n const rootScope = getRootScope(scope);\n if (rootScope === windowPrefix) {\n addEventListener(\n win,\n eventName,\n passive ? processPassiveWindowEvent : processWindowEvent,\n true,\n passive\n );\n } else {\n roots.forEach(\n (root) => addEventListener(\n root,\n eventName,\n rootScope === documentPrefix ? passive ? processPassiveDocumentEvent : processDocumentEvent : passive ? processPassiveElementEvent : processElementEvent,\n true,\n passive\n )\n );\n }\n if (hasInitialized === 1 && (eventNameOrRoot === "e:qvisible" || eventNameOrRoot === "d:qinit" || eventNameOrRoot === "d:qidle")) {\n processReadyStateChange();\n }\n }\n } else {\n if (!roots.has(eventNameOrRoot)) {\n events.forEach((kebabEventName) => {\n const { scope, eventName } = parseKebabEvent(kebabEventName);\n const passive = isPassiveScope(scope);\n const rootScope = getRootScope(scope);\n if (rootScope !== windowPrefix) {\n addEventListener(\n eventNameOrRoot,\n eventName,\n rootScope === documentPrefix ? passive ? processPassiveDocumentEvent : processDocumentEvent : passive ? processPassiveElementEvent : processElementEvent,\n true,\n passive\n );\n }\n });\n roots.add(eventNameOrRoot);\n }\n }\n }\n};\nconst _qwikEv = win._qwikEv;\nif (!_qwikEv?.roots) {\n if (Array.isArray(_qwikEv)) {\n addEventOrRoot(..._qwikEv);\n } else {\n addEventOrRoot("e:click", "e:input");\n }\n win._qwikEv = {\n events,\n roots,\n push: addEventOrRoot\n };\n addEventListener(doc, readyStateChange, processReadyStateChange);\n processReadyStateChange();\n}';
|
|
1187
|
+
var QWIK_LOADER_DEFAULT_DEBUG = 'const doc = document;\nconst win = window;\nconst windowPrefix = "w";\nconst passiveWindowPrefix = "wp";\nconst documentPrefix = "d";\nconst passiveDocumentPrefix = "dp";\nconst elementPrefix = "e";\nconst passiveElementPrefix = "ep";\nconst capturePrefix = "capture:";\nconst readyStateChange = "readystatechange";\nconst QwikEvContainerReady = 0;\nconst events = /* @__PURE__ */ new Set();\nconst roots = /* @__PURE__ */ new Set([doc]);\nconst symbols = /* @__PURE__ */ new Map();\nconst readyContainers = {};\nlet observer;\nlet hasInitialized;\nlet queuedTasks;\nconst nativeQuerySelectorAll = (root, selector) => Array.from(root.querySelectorAll(selector));\nconst querySelectorAll = (query) => {\n const elements = [];\n roots.forEach((root) => elements.push(...nativeQuerySelectorAll(root, query)));\n return elements;\n};\nconst addEventListener = (el, eventName, handler, capture = false, passive = false) => el.addEventListener(eventName, handler, { capture, passive });\nconst findShadowRoots = (fragment) => {\n addEventOrRoot(fragment);\n const shadowRoots = nativeQuerySelectorAll(fragment, "[q\\\\:shadowroot]");\n for (let i = 0; i < shadowRoots.length; i++) {\n const parent = shadowRoots[i];\n const shadowRoot = parent.shadowRoot;\n shadowRoot && findShadowRoots(shadowRoot);\n }\n};\nconst isPromise = (promise) => promise && typeof promise.then === "function";\nconst runTasks = async (tasks) => {\n for (let i = 0; i < tasks.length; i++) {\n await tasks[i]();\n }\n};\nconst queueTasks = (tasks) => {\n if (tasks.length) {\n const run = () => runTasks(tasks);\n queuedTasks = queuedTasks ? queuedTasks.then(run, run) : run();\n }\n};\nconst resolveContainer = (containerEl) => {\n if (containerEl._qwikjson_ === void 0) {\n const parentJSON = containerEl === doc.documentElement ? doc.body : containerEl;\n let script = parentJSON.lastElementChild;\n while (script) {\n if (script.tagName === "SCRIPT" && script.getAttribute("type") === "qwik/json") {\n containerEl._qwikjson_ = JSON.parse(\n script.textContent.replace(/\\\\x3C(\\/?script)/gi, "<$1")\n );\n break;\n }\n script = script.previousElementSibling;\n }\n }\n};\nconst markContainerReady = (hash) => {\n readyContainers[hash] = 1;\n emitEvent(readyStateChange);\n};\nconst waitForContainerReady = (container) => {\n const hash = container.getAttribute("q:instance");\n return container.getAttribute("q:container") === "paused" && doc.readyState === "loading" && !readyContainers[hash] && new Promise((resolve) => {\n const ready = () => {\n if (doc.readyState !== "loading" || readyContainers[hash]) {\n resolve();\n }\n };\n addEventListener(doc, readyStateChange, ready);\n });\n};\nconst createEvent = (eventName, detail) => new CustomEvent(eventName, { detail });\nconst emitEvent = (eventName, detail) => {\n doc.dispatchEvent(createEvent(eventName, detail));\n};\nconst camelToKebab = (str) => str.replace(/([A-Z-])/g, (a) => "-" + a.toLowerCase());\nconst kebabToCamel = (eventName) => eventName.replace(/-./g, (a) => a[1].toUpperCase());\nconst parseKebabEvent = (event) => {\n const separatorIndex = event.indexOf(":");\n const scope = event.slice(0, separatorIndex);\n return {\n scope,\n eventName: kebabToCamel(event.slice(separatorIndex + 1))\n };\n};\nconst isPassiveScope = (scope) => scope.length === 2;\nconst getRootScope = (scope) => scope.charAt(0);\nconst isElementNode = (node) => !!node && node.nodeType === 1;\nconst isCaptureHandlerElement = (element, scopedKebabName, captureAttribute) => element.hasAttribute(captureAttribute) && (!!element._qDispatch?.[scopedKebabName] || element.hasAttribute("q-" + scopedKebabName));\nconst resolveHandler = (container, element, qBase, base, chunk, symbol, reqTime, reportSyncError = true) => {\n const eventData = {\n qBase,\n symbol,\n element,\n reqTime\n };\n if (!chunk) {\n const handler2 = (doc["qFuncs_" + container.getAttribute("q:instance")] || [])[+symbol];\n if (!handler2 && reportSyncError) {\n const error = new Error("sym:" + symbol);\n emitEvent("qerror", {\n importError: "sync",\n error,\n ...eventData\n });\n console.error(error);\n }\n return handler2;\n }\n const key = `${symbol}|${qBase}|${chunk}`;\n const handler = symbols.get(key);\n if (handler) {\n return handler;\n }\n const href = new URL(chunk, base).href;\n const module = import(\n href\n );\n resolveContainer(container);\n return module.then(\n (module2) => {\n const handler2 = module2[symbol];\n if (!handler2) {\n const error = new Error(`${symbol} not in ${href}`);\n emitEvent("qerror", {\n importError: "no-symbol",\n error,\n ...eventData\n });\n console.error(error);\n } else {\n symbols.set(key, handler2);\n emitEvent("qsymbol", eventData);\n }\n return handler2;\n },\n (error) => {\n emitEvent("qerror", {\n importError: "async",\n error,\n ...eventData\n });\n console.error(error);\n return void 0;\n }\n );\n};\nconst dispatch = (element, ev, scopedKebabName, tasks, kebabName, allowPreventDefault = true) => {\n let defer = false;\n if (kebabName) {\n if (allowPreventDefault && element.hasAttribute("preventdefault:" + kebabName)) {\n ev.preventDefault();\n }\n if (element.hasAttribute("stoppropagation:" + kebabName)) {\n ev.stopPropagation();\n }\n }\n const handlers = element._qDispatch?.[scopedKebabName];\n if (handlers) {\n if (typeof handlers === "function") {\n const run = () => handlers(ev, element);\n if (defer) {\n tasks.push(async () => {\n const result = run();\n if (isPromise(result)) {\n await result;\n }\n });\n } else {\n const result = run();\n if (isPromise(result)) {\n defer = true;\n tasks.push(() => result);\n }\n }\n } else if (handlers.length) {\n for (let i = 0; i < handlers.length; i++) {\n const handler = handlers[i];\n if (handler) {\n const run = () => handler(ev, element);\n if (defer) {\n tasks.push(async () => {\n const result = run();\n if (isPromise(result)) {\n await result;\n }\n });\n } else {\n const result = run();\n if (isPromise(result)) {\n defer = true;\n tasks.push(() => result);\n }\n }\n }\n }\n }\n return;\n }\n const attrValue = element.getAttribute("q-" + scopedKebabName);\n if (attrValue) {\n const container = element.closest(\n "[q\\\\:container]:not([q\\\\:container=html]):not([q\\\\:container=text])"\n );\n const qBase = container.getAttribute("q:base");\n const base = new URL(qBase, doc.baseURI);\n const qrls = attrValue.split("|");\n const waitForReady = waitForContainerReady(container);\n for (let i = 0; i < qrls.length; i++) {\n const qrl = qrls[i];\n const reqTime = performance.now();\n const [chunk, symbol, capturedIds] = qrl.split("#");\n const run = (handler2) => {\n if (handler2 && element.isConnected) {\n const onError = (error) => {\n emitEvent("qerror", {\n error,\n qBase,\n symbol,\n element,\n reqTime\n });\n };\n try {\n const result = handler2.call(capturedIds, ev, element);\n if (isPromise(result)) {\n return result.catch(onError);\n }\n } catch (error) {\n return onError(error);\n }\n }\n };\n const resolve = (reportSyncError = true) => resolveHandler(container, element, qBase, base, chunk, symbol, reqTime, reportSyncError);\n const handler = waitForReady ? void 0 : resolve();\n if (waitForReady) {\n defer = true;\n tasks.push(async () => {\n await waitForReady;\n await run(await resolve(false) || await resolve());\n });\n } else if (isPromise(handler)) {\n defer = true;\n tasks.push(() => handler.then(run));\n } else if (defer) {\n defer = true;\n tasks.push(async () => {\n await run(handler || await resolve());\n });\n } else {\n const result = run(handler);\n if (isPromise(result)) {\n defer = true;\n tasks.push(() => result);\n }\n }\n }\n }\n};\nconst processElementEvent = (ev, scope = elementPrefix, allowPreventDefault = true) => {\n const kebabName = camelToKebab(ev.type);\n const scopedKebabName = scope + ":" + kebabName;\n const captureAttribute = capturePrefix + kebabName;\n const elements = [];\n const captureHandlers = [];\n const tasks = [];\n let current = ev.target;\n while (current) {\n if (isElementNode(current)) {\n elements.push(current);\n captureHandlers.push(isCaptureHandlerElement(current, scopedKebabName, captureAttribute));\n current = current.parentElement;\n } else {\n current = current.parentElement;\n }\n }\n for (let i = elements.length - 1; i >= 0; i--) {\n if (captureHandlers[i]) {\n dispatch(elements[i], ev, scopedKebabName, tasks, kebabName, allowPreventDefault);\n if (ev.cancelBubble) {\n queueTasks(tasks);\n return;\n }\n }\n }\n for (let i = 0; i < elements.length; i++) {\n if (!captureHandlers[i]) {\n dispatch(elements[i], ev, scopedKebabName, tasks, kebabName, allowPreventDefault);\n if (!ev.bubbles || ev.cancelBubble) {\n queueTasks(tasks);\n return;\n }\n }\n }\n queueTasks(tasks);\n};\nconst processPassiveElementEvent = (ev) => processElementEvent(ev, passiveElementPrefix, false);\nconst broadcast = (scope, ev, allowPreventDefault = true) => {\n const kebabName = camelToKebab(ev.type);\n const scopedKebabName = scope + ":" + kebabName;\n const elements = querySelectorAll("[q-" + scope + "\\\\:" + kebabName + "]");\n const tasks = [];\n for (let i = 0; i < elements.length; i++) {\n const el = elements[i];\n dispatch(el, ev, scopedKebabName, tasks, kebabName, allowPreventDefault);\n }\n queueTasks(tasks);\n};\nconst processDocumentEvent = (ev) => {\n broadcast(documentPrefix, ev);\n};\nconst processPassiveDocumentEvent = (ev) => {\n broadcast(passiveDocumentPrefix, ev, false);\n};\nconst processWindowEvent = (ev) => {\n broadcast(windowPrefix, ev);\n};\nconst processPassiveWindowEvent = (ev) => {\n broadcast(passiveWindowPrefix, ev, false);\n};\nconst processReadyStateChange = () => {\n const readyState = doc.readyState;\n if (readyState == "interactive" || readyState == "complete") {\n hasInitialized = 1;\n roots.forEach(findShadowRoots);\n if (events.has("d:qinit")) {\n events.delete("d:qinit");\n const ev = createEvent("qinit");\n const elements = querySelectorAll("[q-d\\\\:qinit]");\n const tasks = [];\n for (let i = 0; i < elements.length; i++) {\n const el = elements[i];\n dispatch(el, ev, "d:qinit", tasks);\n el.removeAttribute("q-d:qinit");\n }\n queueTasks(tasks);\n }\n if (events.has("d:qidle")) {\n events.delete("d:qidle");\n const riC = win.requestIdleCallback ?? win.setTimeout;\n riC.bind(win)(() => {\n const ev = createEvent("qidle");\n const elements = querySelectorAll("[q-d\\\\:qidle]");\n const tasks = [];\n for (let i = 0; i < elements.length; i++) {\n const el = elements[i];\n dispatch(el, ev, "d:qidle", tasks);\n el.removeAttribute("q-d:qidle");\n }\n queueTasks(tasks);\n });\n }\n if (events.has("e:qvisible")) {\n observer || (observer = new IntersectionObserver((entries) => {\n const tasks = [];\n for (let i = 0; i < entries.length; i++) {\n const entry = entries[i];\n if (entry.isIntersecting) {\n observer.unobserve(entry.target);\n dispatch(\n entry.target,\n createEvent("qvisible", entry),\n "e:qvisible",\n tasks\n );\n }\n }\n queueTasks(tasks);\n }));\n const elements = querySelectorAll("[q-e\\\\:qvisible]:not([q\\\\:observed])");\n for (let i = 0; i < elements.length; i++) {\n const el = elements[i];\n observer.observe(el);\n el.setAttribute("q:observed", "true");\n }\n }\n }\n};\nconst addEventOrRoot = (...eventNames) => {\n for (let i = 0; i < eventNames.length; i++) {\n const eventNameOrRoot = eventNames[i];\n if (eventNameOrRoot === QwikEvContainerReady) {\n markContainerReady(eventNames[++i]);\n } else if (typeof eventNameOrRoot === "string") {\n if (!events.has(eventNameOrRoot)) {\n events.add(eventNameOrRoot);\n const { scope, eventName } = parseKebabEvent(eventNameOrRoot);\n const passive = isPassiveScope(scope);\n const rootScope = getRootScope(scope);\n if (rootScope === windowPrefix) {\n addEventListener(\n win,\n eventName,\n passive ? processPassiveWindowEvent : processWindowEvent,\n true,\n passive\n );\n } else {\n roots.forEach(\n (root) => addEventListener(\n root,\n eventName,\n rootScope === documentPrefix ? passive ? processPassiveDocumentEvent : processDocumentEvent : passive ? processPassiveElementEvent : processElementEvent,\n true,\n passive\n )\n );\n }\n if (hasInitialized === 1 && (eventNameOrRoot === "e:qvisible" || eventNameOrRoot === "d:qinit" || eventNameOrRoot === "d:qidle")) {\n processReadyStateChange();\n }\n }\n } else {\n if (!roots.has(eventNameOrRoot)) {\n events.forEach((kebabEventName) => {\n const { scope, eventName } = parseKebabEvent(kebabEventName);\n const passive = isPassiveScope(scope);\n const rootScope = getRootScope(scope);\n if (rootScope !== windowPrefix) {\n addEventListener(\n eventNameOrRoot,\n eventName,\n rootScope === documentPrefix ? passive ? processPassiveDocumentEvent : processDocumentEvent : passive ? processPassiveElementEvent : processElementEvent,\n true,\n passive\n );\n }\n });\n roots.add(eventNameOrRoot);\n }\n }\n }\n};\nconst _qwikEv = win._qwikEv;\nif (!_qwikEv?.roots) {\n if (Array.isArray(_qwikEv)) {\n addEventOrRoot(..._qwikEv);\n } else {\n addEventOrRoot("e:click", "e:input");\n }\n win._qwikEv = {\n events,\n roots,\n push: addEventOrRoot\n };\n addEventListener(doc, readyStateChange, processReadyStateChange);\n processReadyStateChange();\n}';
|
|
1173
1188
|
|
|
1174
1189
|
var QWIK_BACKPATCH_EXECUTOR_MINIFIED = `const t='script[type="qwik/backpatch"]';function e(e,n){const o=n||e.querySelector("[q\\\\:container]:not([q\\\\:container=html]):not([q\\\\:container=text])");if(o){const n=o.querySelectorAll(t),r=n[n.length-1];if(r){const t=JSON.parse(r.textContent||"[]"),n=e.createTreeWalker(o,NodeFilter.SHOW_ELEMENT);let c=n.currentNode,i=c.hasAttribute(":")?0:-1;for(let e=0;e<t.length;e+=3){const o=t[e],r=t[e+1];let l=t[e+2];for(;i<o&&(c=n.nextNode(),c);)c.hasAttribute(":")&&i++;const s=c;null==l||!1===l?s.removeAttribute(r):("boolean"==typeof l&&(l=""),s.setAttribute(r,l))}}}}const n=document.currentScript;if(n){const t=n.closest("[q\\\\:container]:not([q\\\\:container=html]):not([q\\\\:container=text])");t&&e(document,t)}`;
|
|
1175
1190
|
|
|
@@ -1204,7 +1219,7 @@ function getQwikOutOfOrderExecutorScript(e = {}) {
|
|
|
1204
1219
|
}
|
|
1205
1220
|
|
|
1206
1221
|
// packages/qwik/src/server/ssr-node.ts
|
|
1207
|
-
import { _isJSXNode as
|
|
1222
|
+
import { _isJSXNode as Zs, _EMPTY_OBJ, _EFFECT_BACK_REF as Vr } from "@qwik.dev/core/internal";
|
|
1208
1223
|
|
|
1209
1224
|
import { isDev as isDev7 } from "@qwik.dev/core/build";
|
|
1210
1225
|
|
|
@@ -1236,19 +1251,19 @@ var SsrNode = class {
|
|
|
1236
1251
|
attrs;
|
|
1237
1252
|
/** Local props which don't serialize; */
|
|
1238
1253
|
localProps=null;
|
|
1239
|
-
get [
|
|
1240
|
-
return this.getProp(
|
|
1254
|
+
get [Vr]() {
|
|
1255
|
+
return this.getProp(mi);
|
|
1241
1256
|
}
|
|
1242
1257
|
setProp(e, t) {
|
|
1243
1258
|
if (this.attrs === _EMPTY_OBJ) {
|
|
1244
1259
|
this.setEmptyArrayAsVNodeDataAttributes();
|
|
1245
1260
|
}
|
|
1246
|
-
if (e.startsWith(
|
|
1261
|
+
if (e.startsWith(Di)) {
|
|
1247
1262
|
(this.localProps ||= {})[e] = t;
|
|
1248
1263
|
} else {
|
|
1249
1264
|
this.attrs[e] = t;
|
|
1250
1265
|
}
|
|
1251
|
-
if (e ==
|
|
1266
|
+
if (e == Oi && t) {
|
|
1252
1267
|
this.cleanupQueue.push(t);
|
|
1253
1268
|
}
|
|
1254
1269
|
}
|
|
@@ -1264,14 +1279,14 @@ var SsrNode = class {
|
|
|
1264
1279
|
}
|
|
1265
1280
|
}
|
|
1266
1281
|
getProp(e) {
|
|
1267
|
-
if (e.startsWith(
|
|
1282
|
+
if (e.startsWith(Di)) {
|
|
1268
1283
|
return this.localProps ? this.localProps[e] ?? null : null;
|
|
1269
1284
|
} else {
|
|
1270
1285
|
return this.attrs[e] ?? null;
|
|
1271
1286
|
}
|
|
1272
1287
|
}
|
|
1273
1288
|
removeProp(e) {
|
|
1274
|
-
if (e.startsWith(
|
|
1289
|
+
if (e.startsWith(Di)) {
|
|
1275
1290
|
if (this.localProps) {
|
|
1276
1291
|
delete this.localProps[e];
|
|
1277
1292
|
}
|
|
@@ -1314,7 +1329,7 @@ var SsrNode = class {
|
|
|
1314
1329
|
|
|
1315
1330
|
var DomRef = class {
|
|
1316
1331
|
constructor(e) {
|
|
1317
|
-
this
|
|
1332
|
+
this.$e = e;
|
|
1318
1333
|
}
|
|
1319
1334
|
__brand__="DomRef";
|
|
1320
1335
|
};
|
|
@@ -1331,14 +1346,14 @@ var SsrComponentFrame = class {
|
|
|
1331
1346
|
distributeChildrenIntoSlots(e, t, n) {
|
|
1332
1347
|
this.projectionScopedStyle = t;
|
|
1333
1348
|
this.projectionComponentFrame = n;
|
|
1334
|
-
if (
|
|
1349
|
+
if (Zs(e)) {
|
|
1335
1350
|
const t = this.getSlotName(e);
|
|
1336
|
-
|
|
1351
|
+
We(this.slots, t, e, 0);
|
|
1337
1352
|
} else if (Array.isArray(e) && e.length > 0) {
|
|
1338
1353
|
const t = [];
|
|
1339
1354
|
for (let n = 0; n < e.length; n++) {
|
|
1340
1355
|
const r = e[n];
|
|
1341
|
-
if (
|
|
1356
|
+
if (Zs(r)) {
|
|
1342
1357
|
const e = this.getSlotName(r);
|
|
1343
1358
|
if (e === QDefaultSlot) {
|
|
1344
1359
|
t.push(r);
|
|
@@ -1349,13 +1364,13 @@ var SsrComponentFrame = class {
|
|
|
1349
1364
|
t.push(r);
|
|
1350
1365
|
}
|
|
1351
1366
|
}
|
|
1352
|
-
t.length > 0 &&
|
|
1367
|
+
t.length > 0 && We(this.slots, QDefaultSlot, t, 0);
|
|
1353
1368
|
} else {
|
|
1354
|
-
|
|
1369
|
+
We(this.slots, QDefaultSlot, e, 0);
|
|
1355
1370
|
}
|
|
1356
1371
|
}
|
|
1357
1372
|
updateSlot(e, t) {
|
|
1358
|
-
let n =
|
|
1373
|
+
let n = Ve(this.slots, e, 0);
|
|
1359
1374
|
if (n === null) {
|
|
1360
1375
|
n = t;
|
|
1361
1376
|
} else if (Array.isArray(n)) {
|
|
@@ -1363,16 +1378,16 @@ var SsrComponentFrame = class {
|
|
|
1363
1378
|
} else {
|
|
1364
1379
|
n = [ n, t ];
|
|
1365
1380
|
}
|
|
1366
|
-
|
|
1381
|
+
We(this.slots, e, n, 0);
|
|
1367
1382
|
}
|
|
1368
1383
|
getSlotName(e) {
|
|
1369
|
-
if (e.props[
|
|
1370
|
-
return e.props[
|
|
1384
|
+
if (e.props[ui]) {
|
|
1385
|
+
return e.props[ui];
|
|
1371
1386
|
}
|
|
1372
1387
|
return QDefaultSlot;
|
|
1373
1388
|
}
|
|
1374
1389
|
hasSlot(e) {
|
|
1375
|
-
return
|
|
1390
|
+
return Ue(this.slots, e, 0);
|
|
1376
1391
|
}
|
|
1377
1392
|
claimChildrenForSlot(e) {
|
|
1378
1393
|
return mapApp_remove(this.slots, e, 0);
|
|
@@ -1392,6 +1407,10 @@ var renderSSRChunks = (e, t) => {
|
|
|
1392
1407
|
const s = e[r];
|
|
1393
1408
|
if (typeof s === "string") {
|
|
1394
1409
|
n += s;
|
|
1410
|
+
} else if (s.type === "root-ref-delta") {
|
|
1411
|
+
const e = t ? t[s.localId] ?? s.localId : s.localId;
|
|
1412
|
+
const r = t ? t[s.localBaseId] ?? s.localBaseId : s.localBaseId;
|
|
1413
|
+
n += String(e - r);
|
|
1395
1414
|
} else {
|
|
1396
1415
|
const e = s.type === "root-ref" ? s.localId : s.localPath[0];
|
|
1397
1416
|
n += String(t ? t[e] ?? e : e);
|
|
@@ -1418,6 +1437,9 @@ var StringSSRWriter = class {
|
|
|
1418
1437
|
writeRootRefPath(e) {
|
|
1419
1438
|
writeStringRootRefPath(this, e);
|
|
1420
1439
|
}
|
|
1440
|
+
writeRootRefDelta(e, t) {
|
|
1441
|
+
writeStringRootRefDelta(this, e, t);
|
|
1442
|
+
}
|
|
1421
1443
|
clear() {
|
|
1422
1444
|
this.buffer.length = 0;
|
|
1423
1445
|
}
|
|
@@ -1443,6 +1465,13 @@ var StringBufferSegmentWriter = class {
|
|
|
1443
1465
|
localPath: e
|
|
1444
1466
|
});
|
|
1445
1467
|
}
|
|
1468
|
+
writeRootRefDelta(e, t) {
|
|
1469
|
+
this.chunks.push({
|
|
1470
|
+
type: "root-ref-delta",
|
|
1471
|
+
localId: e,
|
|
1472
|
+
localBaseId: t
|
|
1473
|
+
});
|
|
1474
|
+
}
|
|
1446
1475
|
clear() {
|
|
1447
1476
|
this.chunks.length = 0;
|
|
1448
1477
|
}
|
|
@@ -1872,7 +1901,7 @@ function getBuildBase(e) {
|
|
|
1872
1901
|
}
|
|
1873
1902
|
|
|
1874
1903
|
var versions = {
|
|
1875
|
-
qwik: "2.0.0-beta.
|
|
1904
|
+
qwik: "2.0.0-beta.38-dev+0339f17",
|
|
1876
1905
|
qwikDom: "2.1.19"
|
|
1877
1906
|
};
|
|
1878
1907
|
|
|
@@ -1971,6 +2000,8 @@ function encodeAsAlphanumeric(e) {
|
|
|
1971
2000
|
}
|
|
1972
2001
|
|
|
1973
2002
|
// packages/qwik/src/server/ssr-container.ts
|
|
2003
|
+
var VALID_ELEMENT_NAME = /^[A-Za-z][A-Za-z0-9._:-]*$/;
|
|
2004
|
+
|
|
1974
2005
|
var NO_SCRIPT_HERE_ELEMENTS = /* @__PURE__ */ new Set([ "script", "style", "textarea", "title", "iframe", "noframes", "noscript", "xmp", "template", "svg", "math" ]);
|
|
1975
2006
|
|
|
1976
2007
|
function ssrCreateContainer(e) {
|
|
@@ -2009,7 +2040,7 @@ var QTemplateProps = {
|
|
|
2009
2040
|
"aria-hidden": true
|
|
2010
2041
|
};
|
|
2011
2042
|
|
|
2012
|
-
var SSRContainer = class extends
|
|
2043
|
+
var SSRContainer = class extends Cc {
|
|
2013
2044
|
tag;
|
|
2014
2045
|
isHtml;
|
|
2015
2046
|
writer;
|
|
@@ -2058,7 +2089,7 @@ var SSRContainer = class extends ic {
|
|
|
2058
2089
|
componentStack=[];
|
|
2059
2090
|
cleanupQueue=[];
|
|
2060
2091
|
emitContainerDataFrame=null;
|
|
2061
|
-
|
|
2092
|
+
Qt=randomStr();
|
|
2062
2093
|
// Temporary flag to find missing roots after the state was serialized
|
|
2063
2094
|
t=false;
|
|
2064
2095
|
qlInclude;
|
|
@@ -2091,7 +2122,7 @@ var SSRContainer = class extends ic {
|
|
|
2091
2122
|
this.writer = e.writer;
|
|
2092
2123
|
this.streamHandler = e.streamHandler;
|
|
2093
2124
|
this.timing = e.timing;
|
|
2094
|
-
this.
|
|
2125
|
+
this.We = e.buildBase;
|
|
2095
2126
|
this.resolvedManifest = e.resolvedManifest;
|
|
2096
2127
|
this.renderOptions = e.renderOptions;
|
|
2097
2128
|
const t = this.renderOptions.streaming?.outOfOrder === true;
|
|
@@ -2103,7 +2134,7 @@ var SSRContainer = class extends ic {
|
|
|
2103
2134
|
} else {
|
|
2104
2135
|
this.outOfOrderStreaming = t;
|
|
2105
2136
|
}
|
|
2106
|
-
this.
|
|
2137
|
+
this.Xe = 1e5;
|
|
2107
2138
|
const n = this.renderOptions.qwikLoader;
|
|
2108
2139
|
this.qlInclude = n ? typeof n === "object" ? n.include === "never" ? 2 /* Done */ : 0 /* Module */ : n === "inline" ? 1 /* Inline */ : n === "never" ? 2 /* Done */ : 0 /* Module */ : 0 /* Module */;
|
|
2109
2140
|
if (this.qlInclude === 0 /* Module */) {
|
|
@@ -2137,7 +2168,7 @@ var SSRContainer = class extends ic {
|
|
|
2137
2168
|
await this.closeContainer();
|
|
2138
2169
|
}
|
|
2139
2170
|
async renderJSX(e, t) {
|
|
2140
|
-
await
|
|
2171
|
+
await zn(this, e, t);
|
|
2141
2172
|
}
|
|
2142
2173
|
A() {
|
|
2143
2174
|
return this.i === 2 /* OOOSReady */;
|
|
@@ -2165,7 +2196,7 @@ var SSRContainer = class extends ic {
|
|
|
2165
2196
|
if (!__EXPERIMENTAL__.suspense || !this.outOfOrderStreaming || this.A()) {
|
|
2166
2197
|
return;
|
|
2167
2198
|
}
|
|
2168
|
-
this.rootContainerSerializedRootCount = this.serializationCtx.
|
|
2199
|
+
this.rootContainerSerializedRootCount = this.serializationCtx.fe.length;
|
|
2169
2200
|
this.i = 2 /* OOOSReady */;
|
|
2170
2201
|
this.resolveRootContainerReady?.();
|
|
2171
2202
|
this.resolveRootContainerReady = null;
|
|
@@ -2212,7 +2243,7 @@ var SSRContainer = class extends ic {
|
|
|
2212
2243
|
F() {
|
|
2213
2244
|
let e = this;
|
|
2214
2245
|
while (e instanceof SSRSegmentContainer) {
|
|
2215
|
-
e = e.
|
|
2246
|
+
e = e.De;
|
|
2216
2247
|
}
|
|
2217
2248
|
return e;
|
|
2218
2249
|
}
|
|
@@ -2235,17 +2266,17 @@ var SSRContainer = class extends ic {
|
|
|
2235
2266
|
tagName: this.tag,
|
|
2236
2267
|
writer: t,
|
|
2237
2268
|
streamHandler: noopStreamHandler,
|
|
2238
|
-
locale: this.
|
|
2269
|
+
locale: this.en,
|
|
2239
2270
|
timing: this.timing,
|
|
2240
|
-
buildBase: this.
|
|
2271
|
+
buildBase: this.We || "/build/",
|
|
2241
2272
|
resolvedManifest: this.resolvedManifest,
|
|
2242
2273
|
renderOptions: this.renderOptions
|
|
2243
2274
|
}, n);
|
|
2244
2275
|
const o = i;
|
|
2245
|
-
o.
|
|
2246
|
-
o
|
|
2276
|
+
o.Jn = true;
|
|
2277
|
+
o.$t = this.$t;
|
|
2247
2278
|
i.serializationCtx = i.serializationCtxFactory(SsrNode, DomRef, this.symbolToChunkResolver, t);
|
|
2248
|
-
i.serializationCtx.
|
|
2279
|
+
i.serializationCtx.Et = this.serializationCtx.Et.bind(this.serializationCtx);
|
|
2249
2280
|
i.currentElementFrame = s;
|
|
2250
2281
|
i.currentComponentNode = this.currentComponentNode;
|
|
2251
2282
|
i.depthFirstElementCount = 0;
|
|
@@ -2255,7 +2286,7 @@ var SSRContainer = class extends ic {
|
|
|
2255
2286
|
i.styleIds = this.styleIds;
|
|
2256
2287
|
i.emittedQwikEventNames = this.emittedQwikEventNames;
|
|
2257
2288
|
i.qlInclude = 2 /* Done */;
|
|
2258
|
-
i.
|
|
2289
|
+
i.Qt = this.Qt;
|
|
2259
2290
|
o._didAddQwikLoader = true;
|
|
2260
2291
|
return i;
|
|
2261
2292
|
}
|
|
@@ -2276,19 +2307,19 @@ var SSRContainer = class extends ic {
|
|
|
2276
2307
|
}
|
|
2277
2308
|
setContext(e, t, n) {
|
|
2278
2309
|
const r = e;
|
|
2279
|
-
let s = r.getProp(
|
|
2310
|
+
let s = r.getProp(yi);
|
|
2280
2311
|
if (s == null) {
|
|
2281
|
-
r.setProp(
|
|
2312
|
+
r.setProp(yi, s = []);
|
|
2282
2313
|
}
|
|
2283
|
-
|
|
2314
|
+
We(s, t.id, n, 0, true);
|
|
2284
2315
|
this.addRoot(r);
|
|
2285
2316
|
}
|
|
2286
2317
|
resolveContext(e, t) {
|
|
2287
2318
|
let n = e;
|
|
2288
2319
|
while (n) {
|
|
2289
|
-
const e = n.getProp(
|
|
2290
|
-
if (e != null &&
|
|
2291
|
-
return
|
|
2320
|
+
const e = n.getProp(yi);
|
|
2321
|
+
if (e != null && Ue(e, t.id, 0)) {
|
|
2322
|
+
return Ve(e, t.id, 0);
|
|
2292
2323
|
}
|
|
2293
2324
|
n = n.parentComponent;
|
|
2294
2325
|
}
|
|
@@ -2315,15 +2346,21 @@ var SSRContainer = class extends ic {
|
|
|
2315
2346
|
}
|
|
2316
2347
|
const e = this.renderOptions.containerAttributes || {};
|
|
2317
2348
|
const t = e[QRenderAttr];
|
|
2318
|
-
e[
|
|
2349
|
+
e[Si] = "paused" /* PAUSED */;
|
|
2319
2350
|
e[QRuntimeAttr] = "2";
|
|
2320
|
-
e[QVersionAttr] = this.
|
|
2351
|
+
e[QVersionAttr] = this.Fe ?? "dev";
|
|
2321
2352
|
e[QRenderAttr] = (t ? t + "-" : "") + (isDev8 ? "ssr-dev" : "ssr");
|
|
2322
|
-
e[
|
|
2323
|
-
e[QLocaleAttr] = this.
|
|
2353
|
+
e[vi] = this.We || "";
|
|
2354
|
+
e[QLocaleAttr] = this.en;
|
|
2324
2355
|
e[QManifestHashAttr] = this.resolvedManifest.manifest.manifestHash;
|
|
2325
|
-
e[QInstanceAttr] = this.
|
|
2326
|
-
this.
|
|
2356
|
+
e[QInstanceAttr] = this.Qt;
|
|
2357
|
+
const n = this.renderOptions.statePrewarm;
|
|
2358
|
+
if (typeof n === "number") {
|
|
2359
|
+
e[QStatePrewarmAttr] = String(n);
|
|
2360
|
+
} else {
|
|
2361
|
+
delete e[QStatePrewarmAttr];
|
|
2362
|
+
}
|
|
2363
|
+
this.un.containerAttributes = e;
|
|
2327
2364
|
this.openElement(this.tag, null, e);
|
|
2328
2365
|
if (!this.isHtml) {
|
|
2329
2366
|
this.emitContainerDataFrame = this.currentElementFrame;
|
|
@@ -2332,22 +2369,25 @@ var SSRContainer = class extends ic {
|
|
|
2332
2369
|
/** Renders closing tag for current container */ closeContainer() {
|
|
2333
2370
|
return this.closeElement();
|
|
2334
2371
|
}
|
|
2335
|
-
|
|
2372
|
+
At=0;
|
|
2336
2373
|
/** Renders opening tag for DOM element */
|
|
2337
2374
|
openElement(e, t, n, r = null, s = null, i = null, o = true) {
|
|
2375
|
+
if (!VALID_ELEMENT_NAME.test(e)) {
|
|
2376
|
+
throw Ye(36 /* invalidElementName */ , [ JSON.stringify(e) ]);
|
|
2377
|
+
}
|
|
2338
2378
|
const a = isQwikStyleElement(e, n) || isQwikStyleElement(e, r);
|
|
2339
2379
|
if (NO_SCRIPT_HERE_ELEMENTS.has(e)) {
|
|
2340
|
-
this.
|
|
2380
|
+
this.At++;
|
|
2341
2381
|
}
|
|
2342
2382
|
if (
|
|
2343
2383
|
// don't append qwik loader before qwik style elements
|
|
2344
2384
|
// it will confuse the resuming, because styles are expected to be the first nodes in subtree
|
|
2345
2385
|
!a && this.qlInclude === 1 /* Inline */) {
|
|
2346
|
-
if (this.
|
|
2386
|
+
if (this.At === 0 && this.size > 30 * 1024 && e !== "body") {
|
|
2347
2387
|
this.emitQwikLoaderInline();
|
|
2348
2388
|
}
|
|
2349
2389
|
}
|
|
2350
|
-
let
|
|
2390
|
+
let l = void 0;
|
|
2351
2391
|
this.lastNode = null;
|
|
2352
2392
|
if (!a && this.currentElementFrame) {
|
|
2353
2393
|
vNodeData_incrementElementCount(this.currentElementFrame.vNodeData);
|
|
@@ -2359,31 +2399,33 @@ var SSRContainer = class extends ic {
|
|
|
2359
2399
|
vNodeData_openElement(this.currentElementFrame.vNodeData);
|
|
2360
2400
|
this.write(LT);
|
|
2361
2401
|
this.write(e);
|
|
2362
|
-
const
|
|
2402
|
+
const c = this.getOrCreateLastNode();
|
|
2363
2403
|
if (n) {
|
|
2364
|
-
|
|
2404
|
+
l = this.writeAttrs(e, n, false, s, i, o);
|
|
2365
2405
|
}
|
|
2366
|
-
this.write(" " +
|
|
2406
|
+
this.write(" " + zi);
|
|
2367
2407
|
if (t !== null) {
|
|
2368
|
-
this.write(
|
|
2408
|
+
this.write(ATTR_EQUALS_QUOTE);
|
|
2409
|
+
this.write(escapeHTML(t));
|
|
2410
|
+
this.write(jr);
|
|
2369
2411
|
} else if (qTest) {
|
|
2370
2412
|
this.write(EMPTY_ATTR);
|
|
2371
2413
|
}
|
|
2372
|
-
if (r && !
|
|
2373
|
-
|
|
2414
|
+
if (r && !Cr(r)) {
|
|
2415
|
+
l = this.writeAttrs(e, r, true, s, i, o) || l;
|
|
2374
2416
|
}
|
|
2375
2417
|
this.write(GT);
|
|
2376
|
-
if (
|
|
2377
|
-
|
|
2418
|
+
if (c) {
|
|
2419
|
+
c.setTreeNonUpdatable();
|
|
2378
2420
|
}
|
|
2379
|
-
return
|
|
2421
|
+
return l;
|
|
2380
2422
|
}
|
|
2381
2423
|
/** Renders closing tag for DOM element */ closeElement() {
|
|
2382
2424
|
if (this.currentElementFrame === this.emitContainerDataFrame) {
|
|
2383
2425
|
this.emitContainerDataFrame = null;
|
|
2384
2426
|
this.onRenderDone();
|
|
2385
2427
|
const e = createTimer();
|
|
2386
|
-
return
|
|
2428
|
+
return Gi(Gi(this.emitContainerData(), () => this._closeElement()), () => {
|
|
2387
2429
|
this.timing.snapshot = e();
|
|
2388
2430
|
});
|
|
2389
2431
|
}
|
|
@@ -2399,7 +2441,7 @@ var SSRContainer = class extends ic {
|
|
|
2399
2441
|
for (let t = 0; t < e.length; t++) {
|
|
2400
2442
|
const n = e[t];
|
|
2401
2443
|
if (hasDestroy(n)) {
|
|
2402
|
-
n.
|
|
2444
|
+
n.cn();
|
|
2403
2445
|
}
|
|
2404
2446
|
}
|
|
2405
2447
|
e = this.cleanupQueue.pop();
|
|
@@ -2415,7 +2457,7 @@ var SSRContainer = class extends ic {
|
|
|
2415
2457
|
}
|
|
2416
2458
|
this.lastNode = null;
|
|
2417
2459
|
if (NO_SCRIPT_HERE_ELEMENTS.has(t)) {
|
|
2418
|
-
this.
|
|
2460
|
+
this.At--;
|
|
2419
2461
|
}
|
|
2420
2462
|
}
|
|
2421
2463
|
/** Writes opening data to vNodeData for fragment boundaries */ openFragment(e) {
|
|
@@ -2481,7 +2523,7 @@ var SSRContainer = class extends ic {
|
|
|
2481
2523
|
if (e.slots.length === 0) {
|
|
2482
2524
|
return;
|
|
2483
2525
|
}
|
|
2484
|
-
this.openElement(
|
|
2526
|
+
this.openElement(Pi, null, QTemplateProps, null);
|
|
2485
2527
|
const t = e.projectionScopedStyle;
|
|
2486
2528
|
for (let n = 0; n < e.slots.length; n += 2) {
|
|
2487
2529
|
const r = e.slots[n];
|
|
@@ -2490,12 +2532,12 @@ var SSRContainer = class extends ic {
|
|
|
2490
2532
|
this.markVNodeRefForSerialization(e.componentNode);
|
|
2491
2533
|
}
|
|
2492
2534
|
this.openFragment(isDev8 ? {
|
|
2493
|
-
[
|
|
2535
|
+
[Ze]: "P" /* Projection */ ,
|
|
2494
2536
|
[QSlotParent]: e.componentNode.id,
|
|
2495
|
-
[
|
|
2537
|
+
[ui]: r
|
|
2496
2538
|
} : {
|
|
2497
2539
|
[QSlotParent]: e.componentNode.id,
|
|
2498
|
-
[
|
|
2540
|
+
[ui]: r
|
|
2499
2541
|
});
|
|
2500
2542
|
const i = this.getOrCreateLastNode();
|
|
2501
2543
|
i.vnodeData[0] |= 16 /* SERIALIZE */;
|
|
@@ -2521,16 +2563,16 @@ var SSRContainer = class extends ic {
|
|
|
2521
2563
|
}
|
|
2522
2564
|
addRoot(e) {
|
|
2523
2565
|
if (this.t) {
|
|
2524
|
-
const t = this.serializationCtx.
|
|
2566
|
+
const t = this.serializationCtx.Oe(e);
|
|
2525
2567
|
return t;
|
|
2526
2568
|
}
|
|
2527
|
-
return this.serializationCtx.
|
|
2569
|
+
return this.serializationCtx.kt(e);
|
|
2528
2570
|
}
|
|
2529
2571
|
getOrCreateLastNode() {
|
|
2530
2572
|
if (!this.lastNode) {
|
|
2531
2573
|
const e = this.currentElementFrame;
|
|
2532
2574
|
const t = e.depthFirstElementIdx + 1;
|
|
2533
|
-
const n = e.refBase ?? (this.vnodeSegment ?
|
|
2575
|
+
const n = e.refBase ?? (this.vnodeSegment ? ri(this.vnodeSegment, t) : t + this.vNodeDataOffset);
|
|
2534
2576
|
this.lastNode = vNodeData_createSsrNodeReference(this.currentComponentNode, e.vNodeData, n, this.cleanupQueue, e.currentFile);
|
|
2535
2577
|
}
|
|
2536
2578
|
return this.lastNode;
|
|
@@ -2545,7 +2587,7 @@ var SSRContainer = class extends ic {
|
|
|
2545
2587
|
}
|
|
2546
2588
|
for (let t = 0; t < e.length; t++) {
|
|
2547
2589
|
const n = e[t];
|
|
2548
|
-
const r =
|
|
2590
|
+
const r = fo(n.tag, null, n.attributes || {}, null, 0, null);
|
|
2549
2591
|
if (n.location === "head") {
|
|
2550
2592
|
this.additionalHeadNodes.push(r);
|
|
2551
2593
|
} else {
|
|
@@ -2553,19 +2595,19 @@ var SSRContainer = class extends ic {
|
|
|
2553
2595
|
}
|
|
2554
2596
|
}
|
|
2555
2597
|
}
|
|
2556
|
-
|
|
2598
|
+
Ke(e, t, n, r) {
|
|
2557
2599
|
if (r) {
|
|
2558
2600
|
const e = this.getComponentFrame(0);
|
|
2559
2601
|
e.scopedStyleIds.add(t);
|
|
2560
2602
|
const r = convertStyleIdsToString(e.scopedStyleIds);
|
|
2561
|
-
this.setHostProp(n,
|
|
2603
|
+
this.setHostProp(n, $i, r);
|
|
2562
2604
|
}
|
|
2563
2605
|
if (!this.styleIds.has(t)) {
|
|
2564
2606
|
this.styleIds.add(t);
|
|
2565
2607
|
if (this.currentElementFrame?.elementName === "html") {
|
|
2566
|
-
this.additionalHeadNodes.push(
|
|
2608
|
+
this.additionalHeadNodes.push(co("style", null, {
|
|
2567
2609
|
dangerouslySetInnerHTML: e,
|
|
2568
|
-
[
|
|
2610
|
+
[hi]: t
|
|
2569
2611
|
}, null, 0, t));
|
|
2570
2612
|
} else {
|
|
2571
2613
|
this._styleNode(t, e);
|
|
@@ -2574,12 +2616,12 @@ var SSRContainer = class extends ic {
|
|
|
2574
2616
|
}
|
|
2575
2617
|
_styleNode(e, t) {
|
|
2576
2618
|
this.openElement("style", null, {
|
|
2577
|
-
[
|
|
2619
|
+
[hi]: e
|
|
2578
2620
|
});
|
|
2579
2621
|
this.write(t);
|
|
2580
2622
|
this.closeElement();
|
|
2581
2623
|
}
|
|
2582
|
-
|
|
2624
|
+
ct(e) {
|
|
2583
2625
|
if (this.isHtml && this.currentElementFrame?.elementName === "html") {
|
|
2584
2626
|
this.additionalHeadNodes.push(e);
|
|
2585
2627
|
return true;
|
|
@@ -2590,11 +2632,11 @@ var SSRContainer = class extends ic {
|
|
|
2590
2632
|
emitContainerData() {
|
|
2591
2633
|
const e = this.renderOptions.streaming?.inOrder?.strategy === "disabled";
|
|
2592
2634
|
const t = !e || __EXPERIMENTAL__.suspense && this.outOfOrderStreaming && this.outOfOrderUsed;
|
|
2593
|
-
return
|
|
2635
|
+
return Gi(Gi(t ? this.streamHandler.flush() : void 0, () => this.resolvePromiseAttributes()), () => {
|
|
2594
2636
|
this.i = 1 /* DataStreamStarted */;
|
|
2595
|
-
return
|
|
2637
|
+
return Gi(this.emitStateData(), () => {
|
|
2596
2638
|
this.t = true;
|
|
2597
|
-
return
|
|
2639
|
+
return Gi(this.emitRestStateData(), () => this.emitOutOfOrderSegmentsAndData());
|
|
2598
2640
|
});
|
|
2599
2641
|
});
|
|
2600
2642
|
}
|
|
@@ -2602,13 +2644,12 @@ var SSRContainer = class extends ic {
|
|
|
2602
2644
|
this.emitVNodeData();
|
|
2603
2645
|
this.emitDelayedOutOfOrderSegmentVNodeData();
|
|
2604
2646
|
if (!isDev8) {
|
|
2605
|
-
preloaderPost(this, this.renderOptions, this.
|
|
2647
|
+
preloaderPost(this, this.renderOptions, this.un?.nonce);
|
|
2606
2648
|
}
|
|
2607
2649
|
this.emitSyncFnsData();
|
|
2608
2650
|
this.emitPatchDataIfNeeded();
|
|
2609
2651
|
this.emitExecutorIfNeeded();
|
|
2610
2652
|
this.emitQwikLoaderAtBottomIfNeeded();
|
|
2611
|
-
this.emitContainerReadyEventIfNeeded();
|
|
2612
2653
|
}
|
|
2613
2654
|
emitDelayedOutOfOrderSegmentVNodeData() {
|
|
2614
2655
|
if (!__EXPERIMENTAL__.suspense || !this.outOfOrderStreaming || !this.outOfOrderUsed) {
|
|
@@ -2616,8 +2657,8 @@ var SSRContainer = class extends ic {
|
|
|
2616
2657
|
}
|
|
2617
2658
|
for (let e = 0; e < this.outOfOrderSegments.length; e++) {
|
|
2618
2659
|
const t = this.outOfOrderSegments[e];
|
|
2619
|
-
if (t.
|
|
2620
|
-
t.
|
|
2660
|
+
if (t.er === 1 /* EarlyFinalized */) {
|
|
2661
|
+
t.tr();
|
|
2621
2662
|
e--;
|
|
2622
2663
|
}
|
|
2623
2664
|
}
|
|
@@ -2627,7 +2668,7 @@ var SSRContainer = class extends ic {
|
|
|
2627
2668
|
return;
|
|
2628
2669
|
}
|
|
2629
2670
|
this.emitOutOfOrderExecutorIfNeeded();
|
|
2630
|
-
return
|
|
2671
|
+
return Gi(this.streamHandler.flush(), async () => {
|
|
2631
2672
|
this.I();
|
|
2632
2673
|
if (this.outOfOrderPendingSegments.length) {
|
|
2633
2674
|
await Promise.all(this.outOfOrderPendingSegments);
|
|
@@ -2653,7 +2694,7 @@ var SSRContainer = class extends ic {
|
|
|
2653
2694
|
* skipped. By choosing different separators we can encode different numbers of elements to skip.
|
|
2654
2695
|
*/ emitVNodeData(e) {
|
|
2655
2696
|
this.F().markVNodeDataOwnerEmitted(e);
|
|
2656
|
-
if (!e && !this.serializationCtx.
|
|
2697
|
+
if (!e && !this.serializationCtx.fe.length && !this.hasVNodeRefsForSerialization) {
|
|
2657
2698
|
return;
|
|
2658
2699
|
}
|
|
2659
2700
|
this.emitVNodeDataScript(e, this.vNodeDatas.entries());
|
|
@@ -2663,7 +2704,7 @@ var SSRContainer = class extends ic {
|
|
|
2663
2704
|
type: "qwik/vnode"
|
|
2664
2705
|
};
|
|
2665
2706
|
if (__EXPERIMENTAL__.suspense && this.outOfOrderStreaming && e) {
|
|
2666
|
-
r[
|
|
2707
|
+
r[ai] = e;
|
|
2667
2708
|
}
|
|
2668
2709
|
if (n) {
|
|
2669
2710
|
r[QStatePatchAttr] = true;
|
|
@@ -2697,7 +2738,7 @@ var SSRContainer = class extends ic {
|
|
|
2697
2738
|
t--;
|
|
2698
2739
|
this.write(VNodeDataChar.CLOSE_CHAR);
|
|
2699
2740
|
} else if (i === WRITE_ELEMENT_ATTRS) {
|
|
2700
|
-
if (e && !
|
|
2741
|
+
if (e && !Cr(e)) {
|
|
2701
2742
|
this.write(VNodeDataChar.SEPARATOR_CHAR);
|
|
2702
2743
|
this.write(VNodeDataChar.SEPARATOR_CHAR);
|
|
2703
2744
|
this.writeFragmentAttrs(e);
|
|
@@ -2765,7 +2806,7 @@ var SSRContainer = class extends ic {
|
|
|
2765
2806
|
let r = n;
|
|
2766
2807
|
let s;
|
|
2767
2808
|
let i = null;
|
|
2768
|
-
if (t ===
|
|
2809
|
+
if (t === Ii && typeof n === "number") {
|
|
2769
2810
|
s = n;
|
|
2770
2811
|
r = String(n);
|
|
2771
2812
|
} else if (typeof n !== "string") {
|
|
@@ -2776,36 +2817,36 @@ var SSRContainer = class extends ic {
|
|
|
2776
2817
|
r = String(s);
|
|
2777
2818
|
}
|
|
2778
2819
|
switch (t) {
|
|
2779
|
-
case
|
|
2820
|
+
case $i:
|
|
2780
2821
|
this.write(VNodeDataChar.SCOPED_STYLE_CHAR);
|
|
2781
2822
|
break;
|
|
2782
2823
|
|
|
2783
|
-
case
|
|
2824
|
+
case si:
|
|
2784
2825
|
this.write(VNodeDataChar.RENDER_FN_CHAR);
|
|
2785
2826
|
break;
|
|
2786
2827
|
|
|
2787
|
-
case
|
|
2828
|
+
case Ii:
|
|
2788
2829
|
this.write(VNodeDataChar.ID_CHAR);
|
|
2789
2830
|
break;
|
|
2790
2831
|
|
|
2791
|
-
case
|
|
2832
|
+
case Ci:
|
|
2792
2833
|
this.write(VNodeDataChar.PROPS_CHAR);
|
|
2793
2834
|
break;
|
|
2794
2835
|
|
|
2795
|
-
case
|
|
2836
|
+
case Ni:
|
|
2796
2837
|
i = encodeVNodeDataKey;
|
|
2797
2838
|
this.write(VNodeDataChar.KEY_CHAR);
|
|
2798
2839
|
break;
|
|
2799
2840
|
|
|
2800
|
-
case
|
|
2841
|
+
case Oi:
|
|
2801
2842
|
this.write(VNodeDataChar.SEQ_CHAR);
|
|
2802
2843
|
break;
|
|
2803
2844
|
|
|
2804
|
-
case
|
|
2845
|
+
case ji:
|
|
2805
2846
|
this.write(VNodeDataChar.SEQ_IDX_CHAR);
|
|
2806
2847
|
break;
|
|
2807
2848
|
|
|
2808
|
-
case
|
|
2849
|
+
case mi:
|
|
2809
2850
|
this.write(VNodeDataChar.BACK_REFS_CHAR);
|
|
2810
2851
|
break;
|
|
2811
2852
|
|
|
@@ -2814,11 +2855,12 @@ var SSRContainer = class extends ic {
|
|
|
2814
2855
|
break;
|
|
2815
2856
|
|
|
2816
2857
|
// Skipping `\` character for now because it is used for escaping.
|
|
2817
|
-
case
|
|
2858
|
+
case yi:
|
|
2818
2859
|
this.write(VNodeDataChar.CONTEXT_CHAR);
|
|
2819
2860
|
break;
|
|
2820
2861
|
|
|
2821
|
-
case
|
|
2862
|
+
case ui:
|
|
2863
|
+
i = encodeVNodeDataKey;
|
|
2822
2864
|
this.write(VNodeDataChar.SLOT_CHAR);
|
|
2823
2865
|
break;
|
|
2824
2866
|
|
|
@@ -2844,29 +2886,29 @@ var SSRContainer = class extends ic {
|
|
|
2844
2886
|
}
|
|
2845
2887
|
}
|
|
2846
2888
|
emitStateData() {
|
|
2847
|
-
if (!this.serializationCtx.
|
|
2889
|
+
if (!this.serializationCtx.fe.length && !this.serializationCtx.qt.size) {
|
|
2848
2890
|
return;
|
|
2849
2891
|
}
|
|
2850
2892
|
const e = this.stateScriptAttrs();
|
|
2851
2893
|
this.openScript(e);
|
|
2852
|
-
this.serializationCtx.
|
|
2853
|
-
return
|
|
2894
|
+
this.serializationCtx.oe(this.writer);
|
|
2895
|
+
return Gi(this.serializationCtx.Vt(), () => {
|
|
2854
2896
|
this.closeScript();
|
|
2855
2897
|
});
|
|
2856
2898
|
}
|
|
2857
2899
|
/** Add q-d:qidle attribute to eagerly resume some state if needed */ stateScriptAttrs() {
|
|
2858
2900
|
const e = {
|
|
2859
2901
|
type: "qwik/state",
|
|
2860
|
-
[QInstanceAttr]: this.
|
|
2902
|
+
[QInstanceAttr]: this.Qt
|
|
2861
2903
|
};
|
|
2862
|
-
const t = this.serializationCtx.
|
|
2904
|
+
const t = this.serializationCtx.qt;
|
|
2863
2905
|
if (t.size > 0) {
|
|
2864
|
-
e["q-d:qidle"] =
|
|
2906
|
+
e["q-d:qidle"] = sa(null, "_res", _, null, [ ...t ]);
|
|
2865
2907
|
}
|
|
2866
2908
|
return e;
|
|
2867
2909
|
}
|
|
2868
2910
|
emitSyncFnsData(e = false) {
|
|
2869
|
-
const t = this.serializationCtx
|
|
2911
|
+
const t = this.serializationCtx.qe;
|
|
2870
2912
|
const n = e ? this.emittedSyncFnCount : 0;
|
|
2871
2913
|
if (t.length > n) {
|
|
2872
2914
|
const r = {
|
|
@@ -2877,17 +2919,17 @@ var SSRContainer = class extends ic {
|
|
|
2877
2919
|
}
|
|
2878
2920
|
this.openScript(r);
|
|
2879
2921
|
if (e) {
|
|
2880
|
-
const e = Q_FUNCS_PREFIX.replace("HASH", this.
|
|
2922
|
+
const e = Q_FUNCS_PREFIX.replace("HASH", this.Qt).slice(0, -1);
|
|
2881
2923
|
this.write(`(${e}||(${e}=[])).push(`);
|
|
2882
2924
|
} else {
|
|
2883
|
-
this.write(Q_FUNCS_PREFIX.replace("HASH", this.
|
|
2925
|
+
this.write(Q_FUNCS_PREFIX.replace("HASH", this.Qt));
|
|
2884
2926
|
}
|
|
2885
2927
|
if (!e) {
|
|
2886
|
-
this.write(
|
|
2928
|
+
this.write(Lr);
|
|
2887
2929
|
}
|
|
2888
|
-
this.writeArray(e ? t.slice(n) : t,
|
|
2930
|
+
this.writeArray(e ? t.slice(n) : t, Dr);
|
|
2889
2931
|
if (!e) {
|
|
2890
|
-
this.write(
|
|
2932
|
+
this.write(Fr);
|
|
2891
2933
|
}
|
|
2892
2934
|
if (e) {
|
|
2893
2935
|
this.write(")");
|
|
@@ -2901,7 +2943,7 @@ var SSRContainer = class extends ic {
|
|
|
2901
2943
|
for (const [t, n] of this.backpatchMap) {
|
|
2902
2944
|
for (let r = 0; r < n.length; r++) {
|
|
2903
2945
|
const s = n[r];
|
|
2904
|
-
e.push(t, s.attrName,
|
|
2946
|
+
e.push(t, s.attrName, qu(s.value) ? s.value.untrackedValue : s.value);
|
|
2905
2947
|
}
|
|
2906
2948
|
}
|
|
2907
2949
|
this.backpatchMap.clear();
|
|
@@ -2913,7 +2955,7 @@ var SSRContainer = class extends ic {
|
|
|
2913
2955
|
if (this.renderOptions.serverData?.nonce) {
|
|
2914
2956
|
t["nonce"] = this.renderOptions.serverData.nonce;
|
|
2915
2957
|
}
|
|
2916
|
-
this.writeScript(t, JSON.stringify(e));
|
|
2958
|
+
this.writeScript(t, JSON.stringify(e).replaceAll("<", "\\u003C"));
|
|
2917
2959
|
}
|
|
2918
2960
|
}
|
|
2919
2961
|
emitBackpatchDataAndExecutorIfNeeded() {
|
|
@@ -2960,12 +3002,6 @@ var SSRContainer = class extends ic {
|
|
|
2960
3002
|
}
|
|
2961
3003
|
this.writeScript(t, e);
|
|
2962
3004
|
}
|
|
2963
|
-
emitContainerReadyEventIfNeeded() {
|
|
2964
|
-
if (!__EXPERIMENTAL__.suspense || !this.outOfOrderStreaming || !this.outOfOrderUsed) {
|
|
2965
|
-
return;
|
|
2966
|
-
}
|
|
2967
|
-
this.emitInlineScript(`document.qready||(document.qready={});document.qready["${this.Te}"]=1;try{document.dispatchEvent(new CustomEvent("qready",{detail:"${this.Te}"}))}catch(e){}`);
|
|
2968
|
-
}
|
|
2969
3005
|
writeScript(e, t) {
|
|
2970
3006
|
this.openScript(e);
|
|
2971
3007
|
if (t) {
|
|
@@ -2987,12 +3023,12 @@ var SSRContainer = class extends ic {
|
|
|
2987
3023
|
}
|
|
2988
3024
|
}
|
|
2989
3025
|
isStatic() {
|
|
2990
|
-
return !(__EXPERIMENTAL__.suspense && this.outOfOrderStreaming && this.outOfOrderUsed) && this.serializationCtx.
|
|
3026
|
+
return !(__EXPERIMENTAL__.suspense && this.outOfOrderStreaming && this.outOfOrderUsed) && this.serializationCtx.It.size === 0;
|
|
2991
3027
|
}
|
|
2992
3028
|
emitQwikLoaderAtTopIfNeeded() {
|
|
2993
3029
|
if (this.qlInclude === 0 /* Module */) {
|
|
2994
3030
|
this.qlInclude = 2 /* Done */;
|
|
2995
|
-
const e = this.
|
|
3031
|
+
const e = this.We + this.resolvedManifest.manifest.qwikLoader;
|
|
2996
3032
|
const t = {
|
|
2997
3033
|
rel: "modulepreload",
|
|
2998
3034
|
href: e
|
|
@@ -3034,18 +3070,21 @@ var SSRContainer = class extends ic {
|
|
|
3034
3070
|
if (this.qlInclude !== 2 /* Done */) {
|
|
3035
3071
|
this.emitQwikLoaderInline();
|
|
3036
3072
|
}
|
|
3037
|
-
this.emitNewQwikEvents();
|
|
3073
|
+
this.emitNewQwikEvents(true);
|
|
3038
3074
|
}
|
|
3039
3075
|
}
|
|
3040
|
-
emitNewQwikEvents() {
|
|
3041
|
-
const
|
|
3042
|
-
for (const
|
|
3043
|
-
if (!this.emittedQwikEventNames.has(
|
|
3044
|
-
this.emittedQwikEventNames.add(
|
|
3045
|
-
|
|
3076
|
+
emitNewQwikEvents(e = false) {
|
|
3077
|
+
const t = [];
|
|
3078
|
+
for (const e of this.serializationCtx.xt) {
|
|
3079
|
+
if (!this.emittedQwikEventNames.has(e)) {
|
|
3080
|
+
this.emittedQwikEventNames.add(e);
|
|
3081
|
+
t.push(JSON.stringify(e));
|
|
3046
3082
|
}
|
|
3047
3083
|
}
|
|
3048
|
-
|
|
3084
|
+
if (e) {
|
|
3085
|
+
t.push(`${QwikEvContainerReady}`, JSON.stringify(this.Qt));
|
|
3086
|
+
}
|
|
3087
|
+
this.emitQwikEvents(t);
|
|
3049
3088
|
}
|
|
3050
3089
|
emitQwikEvents(e) {
|
|
3051
3090
|
if (e.length > 0) {
|
|
@@ -3056,7 +3095,7 @@ var SSRContainer = class extends ic {
|
|
|
3056
3095
|
}
|
|
3057
3096
|
this.openScript(t);
|
|
3058
3097
|
this.write(`(window._qwikEv||(window._qwikEv=[])).push(`);
|
|
3059
|
-
this.writeArray(e,
|
|
3098
|
+
this.writeArray(e, Dr);
|
|
3060
3099
|
this.write(PAREN_CLOSE);
|
|
3061
3100
|
this.closeScript();
|
|
3062
3101
|
}
|
|
@@ -3154,6 +3193,11 @@ var SSRContainer = class extends ic {
|
|
|
3154
3193
|
this.size += 1 + String(e[t]).length;
|
|
3155
3194
|
}
|
|
3156
3195
|
}
|
|
3196
|
+
writeRootRefDelta(e, t) {
|
|
3197
|
+
const n = e - t;
|
|
3198
|
+
this.size += String(n).length;
|
|
3199
|
+
this.writer.writeRootRefDelta(e, t);
|
|
3200
|
+
}
|
|
3157
3201
|
writeArray(e, t) {
|
|
3158
3202
|
for (let n = 0; n < e.length; n++) {
|
|
3159
3203
|
const r = e[n];
|
|
@@ -3163,22 +3207,22 @@ var SSRContainer = class extends ic {
|
|
|
3163
3207
|
this.write(r);
|
|
3164
3208
|
}
|
|
3165
3209
|
}
|
|
3166
|
-
writeAttrs(e, t, r,
|
|
3167
|
-
let
|
|
3168
|
-
for (let
|
|
3169
|
-
let u = t[
|
|
3170
|
-
if (isSSRUnsafeAttr(
|
|
3210
|
+
writeAttrs(e, t, r, s, o, a) {
|
|
3211
|
+
let l = void 0;
|
|
3212
|
+
for (let c in t) {
|
|
3213
|
+
let u = t[c];
|
|
3214
|
+
if (isSSRUnsafeAttr(c)) {
|
|
3171
3215
|
if (isDev8) {
|
|
3172
|
-
throw
|
|
3216
|
+
throw Ye(32 /* unsafeAttr */ , [ c ]);
|
|
3173
3217
|
}
|
|
3174
3218
|
continue;
|
|
3175
3219
|
}
|
|
3176
|
-
if (
|
|
3177
|
-
u = _setEvent(this.serializationCtx,
|
|
3178
|
-
} else if (
|
|
3220
|
+
if (er(c)) {
|
|
3221
|
+
u = _setEvent(this.serializationCtx, c, u, a);
|
|
3222
|
+
} else if (c === "ref") {
|
|
3179
3223
|
const e = this.getOrCreateLastNode();
|
|
3180
|
-
if (
|
|
3181
|
-
u.
|
|
3224
|
+
if (qu(u)) {
|
|
3225
|
+
u.Ct = new DomRef(e);
|
|
3182
3226
|
continue;
|
|
3183
3227
|
} else if (typeof u === "function") {
|
|
3184
3228
|
u(new DomRef(e));
|
|
@@ -3186,58 +3230,58 @@ var SSRContainer = class extends ic {
|
|
|
3186
3230
|
} else if (u == null) {
|
|
3187
3231
|
continue;
|
|
3188
3232
|
} else {
|
|
3189
|
-
throw
|
|
3233
|
+
throw Ye(15 /* invalidRefValue */ , [ o ]);
|
|
3190
3234
|
}
|
|
3191
|
-
} else if (
|
|
3235
|
+
} else if (c === Li || c === Fi) {
|
|
3192
3236
|
const e = this.addRoot(u);
|
|
3193
3237
|
if (e === void 0) {
|
|
3194
3238
|
continue;
|
|
3195
3239
|
}
|
|
3196
3240
|
u = typeof e === "number" ? [ e ] : String(e);
|
|
3197
|
-
} else if (
|
|
3241
|
+
} else if (qu(u)) {
|
|
3198
3242
|
const e = this.getOrCreateLastNode();
|
|
3199
|
-
const t = new
|
|
3200
|
-
O:
|
|
3243
|
+
const t = new Ys({
|
|
3244
|
+
O: s,
|
|
3201
3245
|
et: r
|
|
3202
3246
|
});
|
|
3203
|
-
const
|
|
3204
|
-
u = n(() => this.trackSignalValue(
|
|
3247
|
+
const i = u;
|
|
3248
|
+
u = n(() => this.trackSignalValue(i, e, c, t));
|
|
3205
3249
|
}
|
|
3206
|
-
if (
|
|
3250
|
+
if (Ji(u)) {
|
|
3207
3251
|
const e = this.getOrCreateLastNode();
|
|
3208
3252
|
this.addPromiseAttribute(u);
|
|
3209
3253
|
u.then(t => {
|
|
3210
|
-
this.addBackpatchEntry(e.id,
|
|
3254
|
+
this.addBackpatchEntry(e.id, c, i(c, t, s));
|
|
3211
3255
|
});
|
|
3212
3256
|
continue;
|
|
3213
3257
|
}
|
|
3214
|
-
if (
|
|
3258
|
+
if (c === Bi) {
|
|
3215
3259
|
if (u) {
|
|
3216
|
-
|
|
3217
|
-
|
|
3260
|
+
l = String(u);
|
|
3261
|
+
c = Si;
|
|
3218
3262
|
u = "html" /* HTML */;
|
|
3219
3263
|
}
|
|
3220
3264
|
if (e === "style") {
|
|
3221
3265
|
continue;
|
|
3222
3266
|
}
|
|
3223
|
-
} else if (isPreventDefault(
|
|
3224
|
-
addPreventDefaultEventToSerializationContext(this.serializationCtx,
|
|
3267
|
+
} else if (isPreventDefault(c)) {
|
|
3268
|
+
addPreventDefaultEventToSerializationContext(this.serializationCtx, c);
|
|
3225
3269
|
}
|
|
3226
|
-
if (e === "textarea" &&
|
|
3270
|
+
if (e === "textarea" && c === "value") {
|
|
3227
3271
|
if (u && typeof u !== "string") {
|
|
3228
3272
|
if (isDev8) {
|
|
3229
|
-
throw
|
|
3273
|
+
throw Ye(23 /* wrongTextareaValue */ , [ o, u ]);
|
|
3230
3274
|
}
|
|
3231
3275
|
continue;
|
|
3232
3276
|
}
|
|
3233
|
-
|
|
3234
|
-
|
|
3277
|
+
l = escapeHTML(u || "");
|
|
3278
|
+
c = Si;
|
|
3235
3279
|
u = "text" /* TEXT */;
|
|
3236
3280
|
}
|
|
3237
|
-
const h =
|
|
3281
|
+
const h = i(c, u, s);
|
|
3238
3282
|
if (h != null && h !== false) {
|
|
3239
|
-
this.write(
|
|
3240
|
-
this.write(
|
|
3283
|
+
this.write(Ja);
|
|
3284
|
+
this.write(c);
|
|
3241
3285
|
if (h !== true) {
|
|
3242
3286
|
this.write(ATTR_EQUALS_QUOTE);
|
|
3243
3287
|
if (Array.isArray(h)) {
|
|
@@ -3246,11 +3290,11 @@ var SSRContainer = class extends ic {
|
|
|
3246
3290
|
const e = escapeHTML(String(h));
|
|
3247
3291
|
this.write(e);
|
|
3248
3292
|
}
|
|
3249
|
-
this.write(
|
|
3293
|
+
this.write(jr);
|
|
3250
3294
|
}
|
|
3251
3295
|
}
|
|
3252
3296
|
}
|
|
3253
|
-
return
|
|
3297
|
+
return l;
|
|
3254
3298
|
}
|
|
3255
3299
|
writeEscapedChunks(e) {
|
|
3256
3300
|
for (let t = 0; t < e.length; t++) {
|
|
@@ -3259,6 +3303,8 @@ var SSRContainer = class extends ic {
|
|
|
3259
3303
|
this.write(escapeHTML(n));
|
|
3260
3304
|
} else if (typeof n === "number") {
|
|
3261
3305
|
this.writeRootRef(n);
|
|
3306
|
+
} else if ("base" in n) {
|
|
3307
|
+
this.writeRootRefDelta(n.id, n.base);
|
|
3262
3308
|
} else {
|
|
3263
3309
|
this.writeRootRefPath(n.path);
|
|
3264
3310
|
}
|
|
@@ -3279,44 +3325,44 @@ var SSRContainer = class extends ic {
|
|
|
3279
3325
|
var SSRSegmentContainer = class extends SSRContainer {
|
|
3280
3326
|
constructor(e, t) {
|
|
3281
3327
|
super(e);
|
|
3282
|
-
this.
|
|
3328
|
+
this.De = t;
|
|
3283
3329
|
}
|
|
3284
|
-
|
|
3285
|
-
|
|
3330
|
+
er=0 /* Rendering */;
|
|
3331
|
+
nr=null;
|
|
3286
3332
|
subscriptionPatchRecords=[];
|
|
3287
3333
|
pendingVNodeDataPatches=null;
|
|
3288
3334
|
nextOutOfOrderId() {
|
|
3289
|
-
return this.
|
|
3335
|
+
return this.De.nextOutOfOrderId();
|
|
3290
3336
|
}
|
|
3291
3337
|
S(e) {
|
|
3292
|
-
return this.
|
|
3338
|
+
return this.De.S(e);
|
|
3293
3339
|
}
|
|
3294
3340
|
queueOutOfOrderSegment(e) {
|
|
3295
|
-
this.
|
|
3341
|
+
this.De.queueOutOfOrderSegment(e);
|
|
3296
3342
|
}
|
|
3297
3343
|
emitOutOfOrderSegmentScripts(e) {
|
|
3298
|
-
this.
|
|
3344
|
+
this.De.emitOutOfOrderSegmentScripts(e);
|
|
3299
3345
|
}
|
|
3300
3346
|
emitOutOfOrderExecutorIfNeeded() {
|
|
3301
|
-
this.
|
|
3347
|
+
this.De.emitOutOfOrderExecutorIfNeeded();
|
|
3302
3348
|
}
|
|
3303
|
-
|
|
3304
|
-
recordExternalRootEffect(this.
|
|
3349
|
+
_n(e, t, n, r) {
|
|
3350
|
+
recordExternalRootEffect(this.De.serializationCtx, this.serializationCtx, this.De.$t, this.subscriptionPatchRecords, e, t, n, r);
|
|
3305
3351
|
}
|
|
3306
3352
|
async P(e, t) {
|
|
3307
|
-
const n = this.
|
|
3353
|
+
const n = this.De;
|
|
3308
3354
|
const r = n.A();
|
|
3309
3355
|
const s = this.serializationCtx;
|
|
3310
3356
|
try {
|
|
3311
|
-
const i = this.
|
|
3312
|
-
this.
|
|
3313
|
-
this.
|
|
3314
|
-
const o = this.
|
|
3357
|
+
const i = this.rr(n, s);
|
|
3358
|
+
this.sr(n, s);
|
|
3359
|
+
this.ir(n, s);
|
|
3360
|
+
const o = this.ar(n, r, s);
|
|
3315
3361
|
if (r && (i.newRootLocalIds.length > 0 || o !== void 0)) {
|
|
3316
|
-
s.
|
|
3362
|
+
s.ge = n.serializationCtx.se;
|
|
3317
3363
|
await this.emitStatePatchData(e, i.newRootStart, i.newRootLocalIds, o);
|
|
3318
|
-
n.serializationCtx.
|
|
3319
|
-
n.serializationCtx.
|
|
3364
|
+
n.serializationCtx.ke = n.serializationCtx.fe.length + (n.serializationCtx.Se ? 1 : 0);
|
|
3365
|
+
n.serializationCtx.se += s.se;
|
|
3320
3366
|
}
|
|
3321
3367
|
this.emitPendingVNodeDataPatches();
|
|
3322
3368
|
if (r) {
|
|
@@ -3334,32 +3380,32 @@ var SSRSegmentContainer = class extends SSRContainer {
|
|
|
3334
3380
|
this.drainCleanupQueue();
|
|
3335
3381
|
const a = i.rootIdMap;
|
|
3336
3382
|
if (r) {
|
|
3337
|
-
this.
|
|
3383
|
+
this.er = 2 /* Done */;
|
|
3338
3384
|
} else {
|
|
3339
|
-
this.
|
|
3340
|
-
this.
|
|
3385
|
+
this.nr = a;
|
|
3386
|
+
this.er = 1 /* EarlyFinalized */;
|
|
3341
3387
|
}
|
|
3342
3388
|
return {
|
|
3343
3389
|
html: renderSSRChunks(t.htmlChunks, a),
|
|
3344
3390
|
scripts: t.writer.toString(a)
|
|
3345
3391
|
};
|
|
3346
3392
|
} finally {
|
|
3347
|
-
if (this.
|
|
3348
|
-
s.
|
|
3393
|
+
if (this.er !== 1 /* EarlyFinalized */) {
|
|
3394
|
+
s.Me = void 0;
|
|
3349
3395
|
n.removeOutOfOrderSegment(this);
|
|
3350
3396
|
}
|
|
3351
|
-
n.serializationCtx.
|
|
3397
|
+
n.serializationCtx.oe(n.writer);
|
|
3352
3398
|
}
|
|
3353
3399
|
}
|
|
3354
|
-
|
|
3400
|
+
tr() {
|
|
3355
3401
|
try {
|
|
3356
3402
|
this.emitVNodeData(this.vnodeSegment);
|
|
3357
3403
|
this.emitPendingVNodeDataPatches();
|
|
3358
|
-
this.
|
|
3359
|
-
this.
|
|
3360
|
-
this.
|
|
3404
|
+
this.De.emitOutOfOrderSegmentScripts(this.writer.toString(this.nr));
|
|
3405
|
+
this.er = 2 /* Done */;
|
|
3406
|
+
this.De.removeOutOfOrderSegment(this);
|
|
3361
3407
|
} finally {
|
|
3362
|
-
this.serializationCtx.
|
|
3408
|
+
this.serializationCtx.Me = void 0;
|
|
3363
3409
|
}
|
|
3364
3410
|
}
|
|
3365
3411
|
markVNodeDataForSerialization(e, t = 16 /* SERIALIZE */) {
|
|
@@ -3398,24 +3444,24 @@ var SSRSegmentContainer = class extends SSRContainer {
|
|
|
3398
3444
|
this.emitVNodeDataScript(t, e, true);
|
|
3399
3445
|
}
|
|
3400
3446
|
}
|
|
3401
|
-
|
|
3447
|
+
rr(e, t) {
|
|
3402
3448
|
const n = this.commitSegmentRoots(e, t);
|
|
3403
|
-
t.
|
|
3449
|
+
t.Me = (t, r, s) => {
|
|
3404
3450
|
this.commitSegmentRoot(e, t, r, s, n);
|
|
3405
3451
|
};
|
|
3406
3452
|
return n;
|
|
3407
3453
|
}
|
|
3408
|
-
|
|
3454
|
+
ar(e, t, n) {
|
|
3409
3455
|
let r = void 0;
|
|
3410
3456
|
const s = t ? this.collectSubscriptionPatches(e, e.rootContainerSerializedRootCount) : void 0;
|
|
3411
3457
|
if (s) {
|
|
3412
|
-
r = n.
|
|
3458
|
+
r = n.kt(s);
|
|
3413
3459
|
}
|
|
3414
3460
|
return r;
|
|
3415
3461
|
}
|
|
3416
3462
|
commitSegmentRoots(e, t) {
|
|
3417
3463
|
const n = [];
|
|
3418
|
-
const r = e.A() ? e.serializationCtx.
|
|
3464
|
+
const r = e.A() ? e.serializationCtx.ke : e.serializationCtx.fe.length;
|
|
3419
3465
|
const s = [];
|
|
3420
3466
|
const i = {
|
|
3421
3467
|
rootIdMap: n,
|
|
@@ -3423,8 +3469,8 @@ var SSRSegmentContainer = class extends SSRContainer {
|
|
|
3423
3469
|
newRootLocalIds: s
|
|
3424
3470
|
};
|
|
3425
3471
|
this.promoteSharedSegmentRoots(e, t, i);
|
|
3426
|
-
const o = t.
|
|
3427
|
-
const a = t.
|
|
3472
|
+
const o = t.fe;
|
|
3473
|
+
const a = t.Ae;
|
|
3428
3474
|
for (let t = 0; t < o.length; t++) {
|
|
3429
3475
|
const n = a[t];
|
|
3430
3476
|
this.commitSegmentRoot(e, t, o[t], n, i);
|
|
@@ -3432,8 +3478,8 @@ var SSRSegmentContainer = class extends SSRContainer {
|
|
|
3432
3478
|
return i;
|
|
3433
3479
|
}
|
|
3434
3480
|
promoteSharedSegmentRoots(e, t, n) {
|
|
3435
|
-
const r = t.
|
|
3436
|
-
const s = t.
|
|
3481
|
+
const r = t.fe;
|
|
3482
|
+
const s = t.Ae;
|
|
3437
3483
|
for (let t = 0; t < s.length; t++) {
|
|
3438
3484
|
const i = s[t];
|
|
3439
3485
|
if (this.isRootOrUsedByOtherLiveSegment(e, i)) {
|
|
@@ -3442,7 +3488,7 @@ var SSRSegmentContainer = class extends SSRContainer {
|
|
|
3442
3488
|
}
|
|
3443
3489
|
}
|
|
3444
3490
|
isRootOrUsedByOtherLiveSegment(e, t) {
|
|
3445
|
-
if (e.serializationCtx.
|
|
3491
|
+
if (e.serializationCtx.Oe(t) !== void 0) {
|
|
3446
3492
|
return true;
|
|
3447
3493
|
}
|
|
3448
3494
|
const n = e.outOfOrderSegments;
|
|
@@ -3451,7 +3497,7 @@ var SSRSegmentContainer = class extends SSRContainer {
|
|
|
3451
3497
|
if (r === this) {
|
|
3452
3498
|
continue;
|
|
3453
3499
|
}
|
|
3454
|
-
const s = r.serializationCtx.
|
|
3500
|
+
const s = r.serializationCtx.Ae;
|
|
3455
3501
|
for (let e = 0; e < s.length; e++) {
|
|
3456
3502
|
if (s[e] === t) {
|
|
3457
3503
|
return true;
|
|
@@ -3464,34 +3510,34 @@ var SSRSegmentContainer = class extends SSRContainer {
|
|
|
3464
3510
|
if (s.rootIdMap[t] !== void 0) {
|
|
3465
3511
|
return;
|
|
3466
3512
|
}
|
|
3467
|
-
let i = e.serializationCtx.
|
|
3513
|
+
let i = e.serializationCtx.Oe(r);
|
|
3468
3514
|
if (i === void 0) {
|
|
3469
|
-
i = e.serializationCtx.
|
|
3515
|
+
i = e.serializationCtx.Ce(n, r);
|
|
3470
3516
|
s.newRootLocalIds.push(t);
|
|
3471
3517
|
this.seedCommittedRootForLiveSegments(e, r);
|
|
3472
3518
|
}
|
|
3473
3519
|
const o = e.serializationCtx;
|
|
3474
|
-
s.rootIdMap[t] = e.A() && i >= o.
|
|
3520
|
+
s.rootIdMap[t] = e.A() && i >= o.Ee ? i + (o.Se ? 1 : 0) : i;
|
|
3475
3521
|
}
|
|
3476
3522
|
seedCommittedRootForLiveSegments(e, t) {
|
|
3477
3523
|
const n = e.outOfOrderSegments;
|
|
3478
3524
|
for (let e = 0; e < n.length; e++) {
|
|
3479
3525
|
const r = n[e];
|
|
3480
|
-
if (r !== this && r.
|
|
3481
|
-
r.serializationCtx.
|
|
3526
|
+
if (r !== this && r.er === 0 /* Rendering */) {
|
|
3527
|
+
r.serializationCtx.kt(t);
|
|
3482
3528
|
}
|
|
3483
3529
|
}
|
|
3484
3530
|
}
|
|
3485
|
-
|
|
3486
|
-
for (const n of t.At) {
|
|
3487
|
-
e.serializationCtx.At.add(n);
|
|
3488
|
-
}
|
|
3531
|
+
sr(e, t) {
|
|
3489
3532
|
for (const n of t.xt) {
|
|
3490
3533
|
e.serializationCtx.xt.add(n);
|
|
3491
3534
|
}
|
|
3535
|
+
for (const n of t.It) {
|
|
3536
|
+
e.serializationCtx.It.add(n);
|
|
3537
|
+
}
|
|
3492
3538
|
}
|
|
3493
|
-
|
|
3494
|
-
e.serializationCtx
|
|
3539
|
+
ir(e, t) {
|
|
3540
|
+
e.serializationCtx.qe.push(...t.qe);
|
|
3495
3541
|
}
|
|
3496
3542
|
collectSubscriptionPatches(e, t) {
|
|
3497
3543
|
if (!__EXPERIMENTAL__.suspense || !this.outOfOrderStreaming) {
|
|
@@ -3502,9 +3548,9 @@ var SSRSegmentContainer = class extends SSRContainer {
|
|
|
3502
3548
|
emitStatePatchData(e, t, n, r) {
|
|
3503
3549
|
const s = this.statePatchScriptAttrs(e);
|
|
3504
3550
|
this.openScript(s);
|
|
3505
|
-
this.serializationCtx.
|
|
3506
|
-
this.serializationCtx.
|
|
3507
|
-
return
|
|
3551
|
+
this.serializationCtx.oe(this.writer);
|
|
3552
|
+
this.serializationCtx.pe = this.markVNodeDataForSerialization.bind(this);
|
|
3553
|
+
return Gi(this.serializationCtx.Ie(t, n, r, 0), () => {
|
|
3508
3554
|
this.closeScript();
|
|
3509
3555
|
});
|
|
3510
3556
|
}
|
|
@@ -3512,7 +3558,7 @@ var SSRSegmentContainer = class extends SSRContainer {
|
|
|
3512
3558
|
const t = this.stateScriptAttrs();
|
|
3513
3559
|
t[QStatePatchAttr] = true;
|
|
3514
3560
|
if (e) {
|
|
3515
|
-
t[
|
|
3561
|
+
t[ai] = e;
|
|
3516
3562
|
}
|
|
3517
3563
|
return t;
|
|
3518
3564
|
}
|
|
@@ -3520,17 +3566,17 @@ var SSRSegmentContainer = class extends SSRContainer {
|
|
|
3520
3566
|
|
|
3521
3567
|
var isQwikStyleElement = (e, t) => {
|
|
3522
3568
|
if (e === "style" && t != null) {
|
|
3523
|
-
return Object.prototype.hasOwnProperty.call(t,
|
|
3569
|
+
return Object.prototype.hasOwnProperty.call(t, hi) || Object.prototype.hasOwnProperty.call(t, $i);
|
|
3524
3570
|
}
|
|
3525
3571
|
return false;
|
|
3526
3572
|
};
|
|
3527
3573
|
|
|
3528
3574
|
function newTagError(e) {
|
|
3529
|
-
return
|
|
3575
|
+
return Ye(12 /* tagError */ , [ e ]);
|
|
3530
3576
|
}
|
|
3531
3577
|
|
|
3532
3578
|
function hasDestroy(e) {
|
|
3533
|
-
return e && typeof e === "object" && typeof e.
|
|
3579
|
+
return e && typeof e === "object" && typeof e.cn === "function";
|
|
3534
3580
|
}
|
|
3535
3581
|
|
|
3536
3582
|
function isSSRUnsafeAttr(e) {
|
|
@@ -3550,7 +3596,7 @@ function randomStr() {
|
|
|
3550
3596
|
function addPreventDefaultEventToSerializationContext(e, t) {
|
|
3551
3597
|
const n = "e" + t.substring(14);
|
|
3552
3598
|
if (n) {
|
|
3553
|
-
e.
|
|
3599
|
+
e.xt.add(n);
|
|
3554
3600
|
}
|
|
3555
3601
|
}
|
|
3556
3602
|
|
|
@@ -3584,7 +3630,7 @@ var StreamHandler = class {
|
|
|
3584
3630
|
let t;
|
|
3585
3631
|
switch (this.inOrderStreaming.strategy) {
|
|
3586
3632
|
case "disabled":
|
|
3587
|
-
t =
|
|
3633
|
+
t = Or(t => {
|
|
3588
3634
|
if (t === void 0 || t === null) {
|
|
3589
3635
|
return;
|
|
3590
3636
|
}
|
|
@@ -3595,7 +3641,7 @@ var StreamHandler = class {
|
|
|
3595
3641
|
case "direct":
|
|
3596
3642
|
{
|
|
3597
3643
|
const n = this.nativeStream;
|
|
3598
|
-
t =
|
|
3644
|
+
t = Or(t => {
|
|
3599
3645
|
if (t === void 0 || t === null) {
|
|
3600
3646
|
return;
|
|
3601
3647
|
}
|
|
@@ -3613,7 +3659,7 @@ var StreamHandler = class {
|
|
|
3613
3659
|
{
|
|
3614
3660
|
const n = this.inOrderStreaming.maximumChunk ?? 0;
|
|
3615
3661
|
const r = this.inOrderStreaming.maximumInitialChunk ?? 0;
|
|
3616
|
-
t =
|
|
3662
|
+
t = Or(t => {
|
|
3617
3663
|
if (t === void 0 || t === null) {
|
|
3618
3664
|
return;
|
|
3619
3665
|
}
|
|
@@ -3641,7 +3687,7 @@ var StreamHandler = class {
|
|
|
3641
3687
|
}
|
|
3642
3688
|
}
|
|
3643
3689
|
trackPendingFlush(e) {
|
|
3644
|
-
if (!
|
|
3690
|
+
if (!Ji(e)) {
|
|
3645
3691
|
return;
|
|
3646
3692
|
}
|
|
3647
3693
|
const t = Promise.resolve(e).finally(() => {
|
|
@@ -3738,7 +3784,7 @@ var renderToStream = async (e, t) => {
|
|
|
3738
3784
|
const i = resolveManifest(t.manifest);
|
|
3739
3785
|
const o = typeof t.locale === "function" ? t.locale(t) : t.serverData?.locale || t.locale || t.containerAttributes?.locale || "";
|
|
3740
3786
|
const a = new StreamHandler(t, n);
|
|
3741
|
-
const
|
|
3787
|
+
const l = ssrCreateContainer({
|
|
3742
3788
|
tagName: r,
|
|
3743
3789
|
locale: o,
|
|
3744
3790
|
writer: a.stream,
|
|
@@ -3749,21 +3795,21 @@ var renderToStream = async (e, t) => {
|
|
|
3749
3795
|
renderOptions: t
|
|
3750
3796
|
});
|
|
3751
3797
|
await setServerPlatform(t, i);
|
|
3752
|
-
await
|
|
3753
|
-
await
|
|
3798
|
+
await l.render(e);
|
|
3799
|
+
await l.l;
|
|
3754
3800
|
await a.flush();
|
|
3755
|
-
const
|
|
3801
|
+
const c = {
|
|
3756
3802
|
flushes: a.networkFlushes,
|
|
3757
3803
|
manifest: i?.manifest,
|
|
3758
|
-
size:
|
|
3804
|
+
size: l.size,
|
|
3759
3805
|
isStatic: false,
|
|
3760
3806
|
timing: n
|
|
3761
3807
|
};
|
|
3762
|
-
return
|
|
3808
|
+
return c;
|
|
3763
3809
|
};
|
|
3764
3810
|
|
|
3765
3811
|
function resolveManifest(e) {
|
|
3766
|
-
const t =
|
|
3812
|
+
const t = ga();
|
|
3767
3813
|
const n = e ? {
|
|
3768
3814
|
...t,
|
|
3769
3815
|
...e
|
|
@@ -3775,7 +3821,7 @@ function resolveManifest(e) {
|
|
|
3775
3821
|
const e = {};
|
|
3776
3822
|
for (const t in n.mapping) {
|
|
3777
3823
|
const r = n.mapping[t];
|
|
3778
|
-
e[
|
|
3824
|
+
e[sd(t)] = [ t, r ];
|
|
3779
3825
|
}
|
|
3780
3826
|
return {
|
|
3781
3827
|
mapper: e,
|
|
@@ -3790,7 +3836,7 @@ var Q_FUNCS_PREFIX = 'document["qFuncs_HASH"]=';
|
|
|
3790
3836
|
|
|
3791
3837
|
// packages/qwik/src/server/index.ts
|
|
3792
3838
|
async function setServerPlatform2(e) {
|
|
3793
|
-
const t =
|
|
3839
|
+
const t = dr({
|
|
3794
3840
|
manifest: e
|
|
3795
3841
|
}, resolveManifest(e));
|
|
3796
3842
|
setPlatform2(t);
|