@qwik.dev/core 2.0.0-beta.30 → 2.0.0-beta.32
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 +215 -170
- package/dist/core-internal.d.ts +147 -29
- package/dist/core.min.mjs +2 -2
- package/dist/core.mjs +11021 -10352
- package/dist/core.mjs.map +1 -1
- package/dist/core.prod.mjs +6064 -5555
- package/dist/insights/vite/index.mjs +36 -33
- package/dist/loader/index.mjs +2 -2
- package/dist/loader/package.json +1 -1
- package/dist/optimizer.mjs +790 -766
- package/dist/preloader.mjs +210 -112
- package/dist/qwikloader.debug.js +261 -101
- package/dist/qwikloader.js +1 -1
- package/dist/server.mjs +272 -95
- package/dist/server.prod.mjs +873 -681
- package/dist/starters/adapters/bun/src/entry.bun.ts +2 -8
- package/dist/starters/adapters/cloud-run/src/entry.cloud-run.tsx +2 -4
- package/dist/starters/adapters/deno/src/entry.deno.ts +2 -8
- package/dist/starters/adapters/express/src/entry.express.tsx +1 -4
- package/dist/starters/adapters/fastify/src/plugins/fastify-qwik.ts +1 -2
- package/dist/starters/adapters/node-server/src/entry.node-server.tsx +2 -4
- package/dist/testing/index.d.ts +9 -4
- package/dist/testing/index.mjs +1226 -472
- package/dist/testing/package.json +1 -1
- package/package.json +3 -3
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.32-dev+0e29f8a
|
|
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 jr } from "@qwik.dev/core";
|
|
13
13
|
|
|
14
14
|
import { isDev as isDev5 } from "@qwik.dev/core/build";
|
|
15
15
|
|
|
@@ -17,123 +17,125 @@ import { isDev as isDev5 } 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 ne } from "@qwik.dev/core/build";
|
|
21
21
|
|
|
22
22
|
// packages/qwik/src/core/shared/utils/qdev.ts
|
|
23
|
-
var
|
|
23
|
+
var ee = globalThis;
|
|
24
24
|
|
|
25
|
-
var
|
|
25
|
+
var re = ee.qDev !== false;
|
|
26
26
|
|
|
27
|
-
var qInspector =
|
|
27
|
+
var qInspector = ee.qInspector === true;
|
|
28
28
|
|
|
29
|
-
var
|
|
29
|
+
var ie = ee.qDynamicPlatform !== false;
|
|
30
30
|
|
|
31
|
-
var
|
|
31
|
+
var se = ee.qTest === true;
|
|
32
32
|
|
|
33
|
-
var
|
|
33
|
+
var oe = ee.qRuntimeQrl === true;
|
|
34
34
|
|
|
35
35
|
// packages/qwik/src/core/shared/utils/log.ts
|
|
36
|
-
var
|
|
36
|
+
var ue = re ? `background: #564CE0; color: white; padding: 2px 3px; border-radius: 2px; font-size: 0.8em;` : "";
|
|
37
37
|
|
|
38
38
|
var throwErrorAndStop = (e, ...t) => {
|
|
39
|
-
const
|
|
39
|
+
const n = he(false, e, ...t);
|
|
40
40
|
debugger;
|
|
41
|
-
throw
|
|
41
|
+
throw n;
|
|
42
42
|
};
|
|
43
43
|
|
|
44
44
|
var logErrorAndStop = (e, ...t) => {
|
|
45
|
-
const
|
|
45
|
+
const n = he(re, e, ...t);
|
|
46
46
|
debugger;
|
|
47
|
-
return
|
|
47
|
+
return n;
|
|
48
48
|
};
|
|
49
49
|
|
|
50
|
-
var
|
|
51
|
-
const
|
|
52
|
-
!
|
|
53
|
-
e && !
|
|
54
|
-
throw
|
|
50
|
+
var he = (e, t, ...n) => {
|
|
51
|
+
const r = t instanceof Error ? t : new Error(t);
|
|
52
|
+
!se && console.error("%cQWIK ERROR", ue, r.message, ...n, r.stack);
|
|
53
|
+
e && !se && setTimeout(() => {
|
|
54
|
+
throw r;
|
|
55
55
|
}, 0);
|
|
56
|
-
return
|
|
56
|
+
return r;
|
|
57
57
|
};
|
|
58
58
|
|
|
59
59
|
// packages/qwik/src/core/shared/error/assert.ts
|
|
60
60
|
var ASSERT_DISCLAIMER = "Internal assert, this is likely caused by a bug in Qwik: ";
|
|
61
61
|
|
|
62
|
-
function assertTrue(e, t, ...
|
|
63
|
-
if (
|
|
62
|
+
function assertTrue(e, t, ...n) {
|
|
63
|
+
if (ne) {
|
|
64
64
|
if (e === true) {
|
|
65
65
|
return;
|
|
66
66
|
}
|
|
67
|
-
throwErrorAndStop(ASSERT_DISCLAIMER + t, ...
|
|
67
|
+
throwErrorAndStop(ASSERT_DISCLAIMER + t, ...n);
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
|
|
71
71
|
// packages/qwik/src/core/client/util-mapArray.ts
|
|
72
|
-
var
|
|
73
|
-
isDev2 && assertTrue(
|
|
74
|
-
let
|
|
72
|
+
var de = (e, t, n) => {
|
|
73
|
+
isDev2 && assertTrue(n % 2 === 0, "Expecting even number.");
|
|
74
|
+
let r = n >> 1;
|
|
75
75
|
let s = e.length - 2 >> 1;
|
|
76
|
-
while (
|
|
77
|
-
const
|
|
78
|
-
const i = e[
|
|
76
|
+
while (r <= s) {
|
|
77
|
+
const n = r + (s - r >> 1);
|
|
78
|
+
const i = e[n << 1];
|
|
79
79
|
if (i === t) {
|
|
80
|
-
return
|
|
80
|
+
return n << 1;
|
|
81
81
|
}
|
|
82
82
|
if (i < t) {
|
|
83
|
-
|
|
83
|
+
r = n + 1;
|
|
84
84
|
} else {
|
|
85
|
-
s =
|
|
85
|
+
s = n - 1;
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
|
-
return
|
|
88
|
+
return r << 1 ^ -1;
|
|
89
89
|
};
|
|
90
90
|
|
|
91
|
-
var
|
|
92
|
-
const i =
|
|
91
|
+
var pe = (e, t, n, r, s = false) => {
|
|
92
|
+
const i = de(e, t, r);
|
|
93
93
|
if (i >= 0) {
|
|
94
|
-
if (
|
|
94
|
+
if (n == null && !s) {
|
|
95
95
|
e.splice(i, 2);
|
|
96
96
|
} else {
|
|
97
|
-
e[i + 1] =
|
|
97
|
+
e[i + 1] = n;
|
|
98
98
|
}
|
|
99
|
-
} else if (
|
|
100
|
-
e.splice(i ^ -1, 0, t,
|
|
99
|
+
} else if (n != null || s) {
|
|
100
|
+
e.splice(i ^ -1, 0, t, n);
|
|
101
101
|
}
|
|
102
102
|
};
|
|
103
103
|
|
|
104
|
-
var mapApp_remove = (e, t,
|
|
105
|
-
const
|
|
104
|
+
var mapApp_remove = (e, t, n) => {
|
|
105
|
+
const r = de(e, t, n);
|
|
106
106
|
let s = null;
|
|
107
|
-
if (
|
|
108
|
-
s = e[
|
|
109
|
-
e.splice(
|
|
107
|
+
if (r >= 0) {
|
|
108
|
+
s = e[r + 1];
|
|
109
|
+
e.splice(r, 2);
|
|
110
110
|
return s;
|
|
111
111
|
}
|
|
112
112
|
return s;
|
|
113
113
|
};
|
|
114
114
|
|
|
115
|
-
var
|
|
116
|
-
const
|
|
117
|
-
if (
|
|
118
|
-
return e[
|
|
115
|
+
var $e = (e, t, n) => {
|
|
116
|
+
const r = de(e, t, n);
|
|
117
|
+
if (r >= 0) {
|
|
118
|
+
return e[r + 1];
|
|
119
119
|
} else {
|
|
120
120
|
return null;
|
|
121
121
|
}
|
|
122
122
|
};
|
|
123
123
|
|
|
124
|
-
var
|
|
124
|
+
var me = (e, t, n) => de(e, t, n) >= 0;
|
|
125
125
|
|
|
126
126
|
// packages/qwik/src/core/shared/utils/types.ts
|
|
127
|
-
var
|
|
127
|
+
var we = e => typeof e === "object" && e !== null;
|
|
128
128
|
|
|
129
|
-
var
|
|
129
|
+
var be = e => Array.isArray(e);
|
|
130
130
|
|
|
131
|
-
var
|
|
131
|
+
var ve = e => typeof e === "string";
|
|
132
132
|
|
|
133
133
|
// packages/qwik/src/core/shared/error/error.ts
|
|
134
|
+
var baseUrl = "https://qwikdev-build-v2.qwik-8nx.pages.dev/docs/errors/#Q";
|
|
135
|
+
|
|
134
136
|
var codeToText = (e, ...t) => {
|
|
135
|
-
if (
|
|
136
|
-
const
|
|
137
|
+
if (re) {
|
|
138
|
+
const n = [ "Error while serializing class or style attributes",
|
|
137
139
|
// 0
|
|
138
140
|
"Scheduler not found",
|
|
139
141
|
// 1
|
|
@@ -201,35 +203,42 @@ var codeToText = (e, ...t) => {
|
|
|
201
203
|
// 32
|
|
202
204
|
"SerializerSymbol function returned rejected promise",
|
|
203
205
|
// 33
|
|
204
|
-
"Serialization Error: Cannot serialize function: {{0}}"
|
|
205
|
-
|
|
206
|
+
"Serialization Error: Cannot serialize function: {{0}}",
|
|
207
|
+
// 34
|
|
208
|
+
"Cannot read .value of a clientOnly async signal during SSR. Use .loading to check state, or provide an initial value." ];
|
|
209
|
+
let r = n[e] ?? "";
|
|
206
210
|
if (t.length) {
|
|
207
|
-
|
|
208
|
-
let
|
|
209
|
-
if (
|
|
210
|
-
|
|
211
|
+
r = r.replaceAll(/{{(\d+)}}/g, (e, n) => {
|
|
212
|
+
let r = t[n];
|
|
213
|
+
if (r && we(r) && r.constructor === Object) {
|
|
214
|
+
r = JSON.stringify(r).slice(0, 50);
|
|
211
215
|
}
|
|
212
|
-
return
|
|
216
|
+
return r;
|
|
213
217
|
});
|
|
214
218
|
}
|
|
215
|
-
return `Code(Q${e}): ${
|
|
219
|
+
return `Code(Q${e}): ${r}`;
|
|
216
220
|
} else {
|
|
217
|
-
return `Code(Q${e})
|
|
221
|
+
return `Code(Q${e}) ${baseUrl}${e}`;
|
|
218
222
|
}
|
|
219
223
|
};
|
|
220
224
|
|
|
221
|
-
var
|
|
222
|
-
const
|
|
223
|
-
return logErrorAndStop(
|
|
225
|
+
var Se = (e, t = []) => {
|
|
226
|
+
const n = codeToText(e, ...t);
|
|
227
|
+
return logErrorAndStop(n, ...t);
|
|
224
228
|
};
|
|
225
229
|
|
|
226
230
|
// packages/qwik/src/core/shared/qrl/qrl-utils.ts
|
|
227
231
|
import { isDev as isDev3 } from "@qwik.dev/core/build";
|
|
228
232
|
|
|
229
|
-
var
|
|
233
|
+
var ke = "<sync>";
|
|
234
|
+
|
|
235
|
+
var Ia = e => {
|
|
236
|
+
const t = e.lastIndexOf("_") + 1;
|
|
237
|
+
return e.slice(t);
|
|
238
|
+
};
|
|
230
239
|
|
|
231
240
|
// packages/qwik/src/core/shared/types.ts
|
|
232
|
-
var
|
|
241
|
+
var qe = "q:type";
|
|
233
242
|
|
|
234
243
|
// packages/qwik/src/core/shared/vnode-data-types.ts
|
|
235
244
|
var VNodeDataSeparator = {
|
|
@@ -404,25 +413,25 @@ var VNodeDataChar = {
|
|
|
404
413
|
// packages/qwik/src/core/shared/utils/character-escaping.ts
|
|
405
414
|
function escapeHTML(e) {
|
|
406
415
|
let t = "";
|
|
407
|
-
const
|
|
408
|
-
let
|
|
409
|
-
let s =
|
|
410
|
-
for (;
|
|
411
|
-
const
|
|
412
|
-
if (
|
|
413
|
-
t += e.substring(s,
|
|
414
|
-
} else if (
|
|
415
|
-
t += e.substring(s,
|
|
416
|
-
} else if (
|
|
417
|
-
t += e.substring(s,
|
|
418
|
-
} else if (
|
|
419
|
-
t += e.substring(s,
|
|
420
|
-
} else if (
|
|
421
|
-
t += e.substring(s,
|
|
416
|
+
const n = e.length;
|
|
417
|
+
let r = 0;
|
|
418
|
+
let s = r;
|
|
419
|
+
for (;r < n; r++) {
|
|
420
|
+
const n = e.charCodeAt(r);
|
|
421
|
+
if (n === 60) {
|
|
422
|
+
t += e.substring(s, r) + "<";
|
|
423
|
+
} else if (n === 62) {
|
|
424
|
+
t += e.substring(s, r) + ">";
|
|
425
|
+
} else if (n === 38) {
|
|
426
|
+
t += e.substring(s, r) + "&";
|
|
427
|
+
} else if (n === 34) {
|
|
428
|
+
t += e.substring(s, r) + """;
|
|
429
|
+
} else if (n === 39) {
|
|
430
|
+
t += e.substring(s, r) + "'";
|
|
422
431
|
} else {
|
|
423
432
|
continue;
|
|
424
433
|
}
|
|
425
|
-
s =
|
|
434
|
+
s = r + 1;
|
|
426
435
|
}
|
|
427
436
|
if (s === 0) {
|
|
428
437
|
return e;
|
|
@@ -433,17 +442,17 @@ function escapeHTML(e) {
|
|
|
433
442
|
|
|
434
443
|
function encodeVNodeDataString(e) {
|
|
435
444
|
let t = "";
|
|
436
|
-
const
|
|
437
|
-
let
|
|
438
|
-
let s =
|
|
439
|
-
for (;
|
|
440
|
-
const
|
|
441
|
-
if (
|
|
442
|
-
t += e.substring(s,
|
|
445
|
+
const n = e.length;
|
|
446
|
+
let r = 0;
|
|
447
|
+
let s = r;
|
|
448
|
+
for (;r < n; r++) {
|
|
449
|
+
const n = e.charCodeAt(r);
|
|
450
|
+
if (n >= VNodeDataSeparator.ADVANCE_1 && n <= VNodeDataSeparator.ADVANCE_8192) {
|
|
451
|
+
t += e.substring(s, r) + "\\" + e.charAt(r);
|
|
443
452
|
} else {
|
|
444
453
|
continue;
|
|
445
454
|
}
|
|
446
|
-
s =
|
|
455
|
+
s = r + 1;
|
|
447
456
|
}
|
|
448
457
|
if (s === 0) {
|
|
449
458
|
return e;
|
|
@@ -453,25 +462,25 @@ function encodeVNodeDataString(e) {
|
|
|
453
462
|
}
|
|
454
463
|
|
|
455
464
|
// packages/qwik/src/core/shared/utils/markers.ts
|
|
456
|
-
var
|
|
465
|
+
var Ee = "q:renderFn";
|
|
457
466
|
|
|
458
|
-
var
|
|
467
|
+
var je = "q:slot";
|
|
459
468
|
|
|
460
469
|
var QSlotParent = "q:sparent";
|
|
461
470
|
|
|
462
|
-
var
|
|
471
|
+
var Oe = "q:style";
|
|
463
472
|
|
|
464
|
-
var
|
|
473
|
+
var Ae = "style[q\\:style]";
|
|
465
474
|
|
|
466
475
|
var QStyleSSelector = "style[q\\:sstyle]";
|
|
467
476
|
|
|
468
|
-
var
|
|
477
|
+
var Me = Ae + "," + QStyleSSelector;
|
|
469
478
|
|
|
470
|
-
var
|
|
479
|
+
var Ne = "q:sstyle";
|
|
471
480
|
|
|
472
|
-
var
|
|
481
|
+
var Ie = "q:ctx";
|
|
473
482
|
|
|
474
|
-
var
|
|
483
|
+
var Fe = "q:brefs";
|
|
475
484
|
|
|
476
485
|
var QRenderAttr = "q:render";
|
|
477
486
|
|
|
@@ -479,7 +488,7 @@ var QRuntimeAttr = "q:runtime";
|
|
|
479
488
|
|
|
480
489
|
var QVersionAttr = "q:version";
|
|
481
490
|
|
|
482
|
-
var
|
|
491
|
+
var ze = "q:base";
|
|
483
492
|
|
|
484
493
|
var QLocaleAttr = "q:locale";
|
|
485
494
|
|
|
@@ -487,111 +496,111 @@ var QManifestHashAttr = "q:manifest-hash";
|
|
|
487
496
|
|
|
488
497
|
var QInstanceAttr = "q:instance";
|
|
489
498
|
|
|
490
|
-
var
|
|
499
|
+
var Le = "q:container-island";
|
|
491
500
|
|
|
492
|
-
var
|
|
501
|
+
var Ue = "/" + Le;
|
|
493
502
|
|
|
494
|
-
var
|
|
503
|
+
var We = "q:ignore";
|
|
495
504
|
|
|
496
|
-
var
|
|
505
|
+
var Qe = "/" + We;
|
|
497
506
|
|
|
498
|
-
var
|
|
507
|
+
var Ve = "q:container";
|
|
499
508
|
|
|
500
|
-
var
|
|
509
|
+
var Je = "/" + Ve;
|
|
501
510
|
|
|
502
|
-
var
|
|
511
|
+
var Be = "q:template";
|
|
503
512
|
|
|
504
513
|
var QContainerSelector = "[q\\:container]:not([q\\:container=" + "html" /* HTML */ + "]):not([q\\:container=" + "text" /* TEXT */ + "])";
|
|
505
514
|
|
|
506
|
-
var
|
|
515
|
+
var Ke = "";
|
|
507
516
|
|
|
508
517
|
var ELEMENT_ID = "q:id";
|
|
509
518
|
|
|
510
|
-
var
|
|
519
|
+
var Ze = "q:key";
|
|
511
520
|
|
|
512
|
-
var
|
|
521
|
+
var tr = "q:props";
|
|
513
522
|
|
|
514
|
-
var
|
|
523
|
+
var nr = "q:seq";
|
|
515
524
|
|
|
516
|
-
var
|
|
525
|
+
var er = "q:seqIdx";
|
|
517
526
|
|
|
518
527
|
var ELEMENT_BACKPATCH_DATA = "qwik/backpatch";
|
|
519
528
|
|
|
520
|
-
var
|
|
529
|
+
var rr = "q:p";
|
|
521
530
|
|
|
522
|
-
var
|
|
531
|
+
var ir = "q:ps";
|
|
523
532
|
|
|
524
|
-
var
|
|
533
|
+
var sr = ":";
|
|
525
534
|
|
|
526
|
-
var
|
|
535
|
+
var or = sr + "on";
|
|
527
536
|
|
|
528
|
-
var
|
|
537
|
+
var lr = sr + "onIdx";
|
|
529
538
|
|
|
530
|
-
var
|
|
539
|
+
var ur = sr + "onFlags";
|
|
531
540
|
|
|
532
|
-
var
|
|
541
|
+
var cr = ":";
|
|
533
542
|
|
|
534
|
-
var
|
|
543
|
+
var fr = "dangerouslySetInnerHTML";
|
|
535
544
|
|
|
536
545
|
// packages/qwik/src/core/shared/utils/promises.ts
|
|
537
|
-
import { isDev as isDev4, isServer as
|
|
546
|
+
import { isDev as isDev4, isServer as Zn } from "@qwik.dev/core/build";
|
|
538
547
|
|
|
539
|
-
var
|
|
548
|
+
var hr = 100;
|
|
540
549
|
|
|
541
|
-
var
|
|
550
|
+
var dr = e => !!e && typeof e == "object" && typeof e.then === "function";
|
|
542
551
|
|
|
543
|
-
var
|
|
552
|
+
var $r = (e, t) => dr(e) ? e.then(t) : t(e);
|
|
544
553
|
|
|
545
554
|
var checkError = e => {
|
|
546
|
-
if (
|
|
555
|
+
if (Zn && e instanceof ReferenceError && e.message.includes("window")) {
|
|
547
556
|
e.message = 'It seems like you forgot to add "if (isBrowser) {...}" here:' + e.message;
|
|
548
557
|
}
|
|
549
558
|
};
|
|
550
559
|
|
|
551
|
-
var
|
|
560
|
+
var mr = e => {
|
|
552
561
|
throw e;
|
|
553
562
|
};
|
|
554
563
|
|
|
555
|
-
function n(e, t =
|
|
556
|
-
let
|
|
557
|
-
let
|
|
564
|
+
function n(e, t = mr) {
|
|
565
|
+
let n = false;
|
|
566
|
+
let r;
|
|
558
567
|
try {
|
|
559
|
-
|
|
560
|
-
|
|
568
|
+
r = e();
|
|
569
|
+
n = true;
|
|
561
570
|
} catch (e) {
|
|
562
|
-
|
|
571
|
+
r = e;
|
|
563
572
|
}
|
|
564
|
-
if (!
|
|
565
|
-
if (
|
|
566
|
-
return
|
|
573
|
+
if (!dr(r)) {
|
|
574
|
+
if (n) {
|
|
575
|
+
return r;
|
|
567
576
|
}
|
|
568
|
-
isDev4 && checkError(
|
|
569
|
-
return t(
|
|
577
|
+
isDev4 && checkError(r);
|
|
578
|
+
return t(r);
|
|
570
579
|
}
|
|
571
|
-
let s =
|
|
572
|
-
const i = async
|
|
573
|
-
while (
|
|
580
|
+
let s = hr;
|
|
581
|
+
const i = async n => {
|
|
582
|
+
while (dr(n)) {
|
|
574
583
|
try {
|
|
575
|
-
await
|
|
584
|
+
await n;
|
|
576
585
|
return await e();
|
|
577
586
|
} catch (e) {
|
|
578
|
-
if (
|
|
587
|
+
if (dr(e)) {
|
|
579
588
|
if (! --s) {
|
|
580
|
-
|
|
589
|
+
n = new Error("Exceeded max retry count in retryOnPromise");
|
|
581
590
|
break;
|
|
582
591
|
} else {
|
|
583
|
-
|
|
592
|
+
n = e;
|
|
584
593
|
}
|
|
585
594
|
} else {
|
|
586
|
-
|
|
595
|
+
n = e;
|
|
587
596
|
break;
|
|
588
597
|
}
|
|
589
598
|
}
|
|
590
599
|
}
|
|
591
|
-
isDev4 && checkError(
|
|
592
|
-
return t(
|
|
600
|
+
isDev4 && checkError(n);
|
|
601
|
+
return t(n);
|
|
593
602
|
};
|
|
594
|
-
return
|
|
603
|
+
return n ? r.catch(i) : i(r);
|
|
595
604
|
}
|
|
596
605
|
|
|
597
606
|
// packages/qwik/src/core/shared/utils/scoped-styles.ts
|
|
@@ -604,66 +613,67 @@ function convertStyleIdsToString(e) {
|
|
|
604
613
|
}
|
|
605
614
|
|
|
606
615
|
// packages/qwik/src/core/shared/utils/event-names.ts
|
|
607
|
-
var
|
|
616
|
+
var br = e => e.charCodeAt(0) === 113 && e.charCodeAt(1) === 45 && (e.charCodeAt(3) === 58 || e.charCodeAt(3) === 112 && e.charCodeAt(4) === 58);
|
|
608
617
|
|
|
609
618
|
function isPreventDefault(e) {
|
|
610
619
|
return e.startsWith("preventdefault:");
|
|
611
620
|
}
|
|
612
621
|
|
|
613
622
|
// packages/qwik/src/core/shared/utils/unitless_number.ts
|
|
614
|
-
var
|
|
623
|
+
var kr = /* @__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",
|
|
615
624
|
// Known Prefixed Properties
|
|
616
625
|
"MozBoxFlex",
|
|
617
626
|
// TODO: Remove these since they shouldn't be used in modern code
|
|
618
627
|
"msFlex", "msFlexPositive", "WebkitAnimationIterationCount", "WebkitBoxFlex", "WebkitBoxOrdinalGroup", "WebkitColumnCount", "WebkitColumns", "WebkitFlex", "WebkitFlexGrow", "WebkitFlexShrink", "WebkitLineClamp" ]);
|
|
619
628
|
|
|
620
|
-
var isUnitlessNumber = e =>
|
|
629
|
+
var isUnitlessNumber = e => kr.has(e);
|
|
621
630
|
|
|
622
631
|
// packages/qwik/src/core/shared/utils/styles.ts
|
|
623
|
-
var
|
|
632
|
+
var qr = e => {
|
|
624
633
|
if (!e) {
|
|
625
634
|
return "";
|
|
626
635
|
}
|
|
627
|
-
if (
|
|
636
|
+
if (ve(e)) {
|
|
628
637
|
return e.trim();
|
|
629
638
|
}
|
|
630
639
|
const t = [];
|
|
631
|
-
if (
|
|
632
|
-
for (
|
|
633
|
-
const
|
|
634
|
-
|
|
635
|
-
|
|
640
|
+
if (be(e)) {
|
|
641
|
+
for (let n = 0; n < e.length; n++) {
|
|
642
|
+
const r = e[n];
|
|
643
|
+
const s = qr(r);
|
|
644
|
+
if (s) {
|
|
645
|
+
t.push(s);
|
|
636
646
|
}
|
|
637
647
|
}
|
|
638
648
|
} else {
|
|
639
|
-
for (const [
|
|
640
|
-
if (
|
|
641
|
-
t.push(
|
|
649
|
+
for (const [n, r] of Object.entries(e)) {
|
|
650
|
+
if (r) {
|
|
651
|
+
t.push(n.trim());
|
|
642
652
|
}
|
|
643
653
|
}
|
|
644
654
|
}
|
|
645
655
|
return t.join(" ");
|
|
646
656
|
};
|
|
647
657
|
|
|
648
|
-
var
|
|
658
|
+
var Rr = e => e.replace(/([A-Z])/g, "-$1").toLowerCase();
|
|
649
659
|
|
|
650
660
|
var stringifyStyle = e => {
|
|
651
661
|
if (e == null) {
|
|
652
662
|
return "";
|
|
653
663
|
}
|
|
654
664
|
if (typeof e == "object") {
|
|
655
|
-
if (
|
|
656
|
-
throw
|
|
665
|
+
if (be(e)) {
|
|
666
|
+
throw Se(0 /* stringifyClassOrStyle */ , [ e, "style" ]);
|
|
657
667
|
} else {
|
|
658
668
|
const t = [];
|
|
659
|
-
for (const
|
|
660
|
-
if (Object.prototype.hasOwnProperty.call(e,
|
|
661
|
-
const
|
|
662
|
-
if (
|
|
663
|
-
if (
|
|
664
|
-
t.push(
|
|
669
|
+
for (const n in e) {
|
|
670
|
+
if (Object.prototype.hasOwnProperty.call(e, n)) {
|
|
671
|
+
const r = e[n];
|
|
672
|
+
if (r != null && typeof r !== "function") {
|
|
673
|
+
if (n.startsWith("--")) {
|
|
674
|
+
t.push(n + ":" + r);
|
|
665
675
|
} else {
|
|
666
|
-
t.push(
|
|
676
|
+
t.push(Rr(n) + ":" + Cr(n, r));
|
|
667
677
|
}
|
|
668
678
|
}
|
|
669
679
|
}
|
|
@@ -676,10 +686,10 @@ var stringifyStyle = e => {
|
|
|
676
686
|
|
|
677
687
|
var serializeBooleanOrNumberAttribute = e => e != null ? String(e) : null;
|
|
678
688
|
|
|
679
|
-
function r(e, t,
|
|
689
|
+
function r(e, t, n) {
|
|
680
690
|
if (isClassAttr(e)) {
|
|
681
|
-
const e =
|
|
682
|
-
t =
|
|
691
|
+
const e = qr(t);
|
|
692
|
+
t = n ? n + (e.length ? " " + e : e) : e;
|
|
683
693
|
} else if (e === "style") {
|
|
684
694
|
t = stringifyStyle(t);
|
|
685
695
|
} else if (isEnumeratedBooleanAttribute(e) || typeof t === "number") {
|
|
@@ -696,7 +706,7 @@ function isEnumeratedBooleanAttribute(e) {
|
|
|
696
706
|
return isAriaAttribute(e) || [ "spellcheck", "draggable", "contenteditable" ].includes(e);
|
|
697
707
|
}
|
|
698
708
|
|
|
699
|
-
var
|
|
709
|
+
var Cr = (e, t) => {
|
|
700
710
|
if (typeof t === "number" && t !== 0 && !isUnitlessNumber(e)) {
|
|
701
711
|
return t + "px";
|
|
702
712
|
}
|
|
@@ -711,12 +721,80 @@ function isAriaAttribute(e) {
|
|
|
711
721
|
import { isBrowser as isBrowser3 } from "@qwik.dev/core/build";
|
|
712
722
|
|
|
713
723
|
// packages/qwik/src/core/preloader/bundle-graph.ts
|
|
714
|
-
import {
|
|
724
|
+
import { isServer as isServer4 } from "@qwik.dev/core/build";
|
|
725
|
+
|
|
726
|
+
// packages/qwik/src/core/shared/platform/platform.ts
|
|
727
|
+
import { isServer as isServer2 } from "@qwik.dev/core/build";
|
|
728
|
+
|
|
729
|
+
var Er = () => ({
|
|
730
|
+
isServer: isServer2,
|
|
731
|
+
importSymbol(e, t, n) {
|
|
732
|
+
if (isServer2) {
|
|
733
|
+
const e = Ia(n);
|
|
734
|
+
const t = globalThis.__qwik_reg_symbols?.get(e);
|
|
735
|
+
if (t) {
|
|
736
|
+
return t;
|
|
737
|
+
}
|
|
738
|
+
throw Se(6 /* dynamicImportFailed */ , [ n ]);
|
|
739
|
+
}
|
|
740
|
+
if (!t) {
|
|
741
|
+
throw Se(14 /* qrlMissingChunk */ , [ n ]);
|
|
742
|
+
}
|
|
743
|
+
if (!e) {
|
|
744
|
+
throw Se(13 /* qrlMissingContainer */ , [ t, n ]);
|
|
745
|
+
}
|
|
746
|
+
const r = Tr(e.ownerDocument, e, t).toString();
|
|
747
|
+
const s = new URL(r);
|
|
748
|
+
s.hash = "";
|
|
749
|
+
const i = s.href;
|
|
750
|
+
return import(
|
|
751
|
+
/* @vite-ignore */
|
|
752
|
+
i).then(e => e[n]);
|
|
753
|
+
},
|
|
754
|
+
raf: e => new Promise(t => {
|
|
755
|
+
requestAnimationFrame(() => {
|
|
756
|
+
t(e());
|
|
757
|
+
});
|
|
758
|
+
}),
|
|
759
|
+
chunkForSymbol(e, t) {
|
|
760
|
+
return [ e, t ?? "_" ];
|
|
761
|
+
}
|
|
762
|
+
});
|
|
763
|
+
|
|
764
|
+
var Tr = (e, t, n) => {
|
|
765
|
+
const r = e.baseURI;
|
|
766
|
+
const s = new URL(t.getAttribute(ze) ?? r, r);
|
|
767
|
+
return new URL(n, s);
|
|
768
|
+
};
|
|
769
|
+
|
|
770
|
+
var Pr = /* @__PURE__ */ Er();
|
|
771
|
+
|
|
772
|
+
var Or = () => {
|
|
773
|
+
if (ie) {
|
|
774
|
+
return Pr.isServer;
|
|
775
|
+
}
|
|
776
|
+
return false;
|
|
777
|
+
};
|
|
778
|
+
|
|
779
|
+
// packages/qwik/src/core/shared/platform/next-tick.ts
|
|
780
|
+
var Ar = e => {
|
|
781
|
+
let t;
|
|
782
|
+
if (typeof MessageChannel !== "undefined") {
|
|
783
|
+
const n = new MessageChannel;
|
|
784
|
+
n.port1.onmessage = () => e();
|
|
785
|
+
t = () => n.port2.postMessage(null);
|
|
786
|
+
} else {
|
|
787
|
+
t = () => setTimeout(e);
|
|
788
|
+
}
|
|
789
|
+
return t;
|
|
790
|
+
};
|
|
715
791
|
|
|
716
792
|
// packages/qwik/src/core/preloader/constants.ts
|
|
717
|
-
import {
|
|
793
|
+
import { isServer as isServer3 } from "@qwik.dev/core/build";
|
|
794
|
+
|
|
795
|
+
var Mr = import.meta.env.TEST ? !Or() : !isServer3;
|
|
718
796
|
|
|
719
|
-
var
|
|
797
|
+
var Nr = Mr ? document : void 0;
|
|
720
798
|
|
|
721
799
|
var config = {
|
|
722
800
|
t: false,
|
|
@@ -724,11 +802,13 @@ var config = {
|
|
|
724
802
|
v: .65
|
|
725
803
|
};
|
|
726
804
|
|
|
727
|
-
var
|
|
805
|
+
var Ir = Mr && Nr.createElement("link").relList?.supports?.("modulepreload") ? "modulePreload" : "preload";
|
|
728
806
|
|
|
729
|
-
var loadStart =
|
|
807
|
+
var loadStart = performance.now();
|
|
730
808
|
|
|
731
|
-
var
|
|
809
|
+
var Fr = /\.[mc]?js$/;
|
|
810
|
+
|
|
811
|
+
var Dr = 1e3 / 60;
|
|
732
812
|
|
|
733
813
|
// packages/qwik/src/core/preloader/types.ts
|
|
734
814
|
var BundleImportState_None = 0;
|
|
@@ -746,59 +826,61 @@ var base;
|
|
|
746
826
|
|
|
747
827
|
var graph;
|
|
748
828
|
|
|
829
|
+
var isBrowser2 = import.meta.env.TEST ? !Or() : !isServer4;
|
|
830
|
+
|
|
749
831
|
var makeBundle = (e, t) => ({
|
|
750
832
|
zt: e,
|
|
751
|
-
|
|
833
|
+
At: Fr.test(e) ? BundleImportState_None : BundleImportState_Alias,
|
|
752
834
|
Lt: shouldResetFactor ? t?.map(e => ({
|
|
753
835
|
...e,
|
|
754
|
-
|
|
836
|
+
Kt: 1
|
|
755
837
|
})) : t,
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
838
|
+
Ut: 1,
|
|
839
|
+
Wt: performance.now(),
|
|
840
|
+
Qt: 0,
|
|
841
|
+
Vt: 0
|
|
760
842
|
});
|
|
761
843
|
|
|
762
844
|
var parseBundleGraph = e => {
|
|
763
845
|
const t = /* @__PURE__ */ new Map;
|
|
764
|
-
let
|
|
765
|
-
while (
|
|
766
|
-
const
|
|
846
|
+
let n = 0;
|
|
847
|
+
while (n < e.length) {
|
|
848
|
+
const r = e[n++];
|
|
767
849
|
const s = [];
|
|
768
850
|
let i;
|
|
769
851
|
let o = 1;
|
|
770
|
-
while (i = e[
|
|
852
|
+
while (i = e[n], typeof i === "number") {
|
|
771
853
|
if (i < 0) {
|
|
772
854
|
o = -i / 10;
|
|
773
855
|
} else {
|
|
774
856
|
s.push({
|
|
775
857
|
zt: e[i],
|
|
776
|
-
|
|
777
|
-
|
|
858
|
+
Gt: o,
|
|
859
|
+
Kt: 1
|
|
778
860
|
});
|
|
779
861
|
}
|
|
780
|
-
|
|
862
|
+
n++;
|
|
781
863
|
}
|
|
782
|
-
t.set(
|
|
864
|
+
t.set(r, s);
|
|
783
865
|
}
|
|
784
866
|
return t;
|
|
785
867
|
};
|
|
786
868
|
|
|
787
|
-
var
|
|
788
|
-
let t =
|
|
869
|
+
var zr = e => {
|
|
870
|
+
let t = Lr.get(e);
|
|
789
871
|
if (!t) {
|
|
790
|
-
let
|
|
872
|
+
let n;
|
|
791
873
|
if (graph) {
|
|
792
|
-
|
|
793
|
-
if (!
|
|
874
|
+
n = graph.get(e);
|
|
875
|
+
if (!n) {
|
|
794
876
|
return;
|
|
795
877
|
}
|
|
796
|
-
if (!
|
|
797
|
-
|
|
878
|
+
if (!n.length) {
|
|
879
|
+
n = void 0;
|
|
798
880
|
}
|
|
799
881
|
}
|
|
800
|
-
t = makeBundle(e,
|
|
801
|
-
|
|
882
|
+
t = makeBundle(e, n);
|
|
883
|
+
Lr.set(e, t);
|
|
802
884
|
}
|
|
803
885
|
return t;
|
|
804
886
|
};
|
|
@@ -820,31 +902,49 @@ var initPreloader = (e, t) => {
|
|
|
820
902
|
};
|
|
821
903
|
|
|
822
904
|
// packages/qwik/src/core/preloader/queue.ts
|
|
823
|
-
var
|
|
905
|
+
var Lr = /* @__PURE__ */ new Map;
|
|
824
906
|
|
|
825
907
|
var shouldResetFactor;
|
|
826
908
|
|
|
827
909
|
var queueDirty;
|
|
828
910
|
|
|
829
|
-
var
|
|
911
|
+
var Ur = 0;
|
|
912
|
+
|
|
913
|
+
var Wr = [];
|
|
830
914
|
|
|
831
|
-
var
|
|
915
|
+
var Qr = Ar(Fa);
|
|
916
|
+
|
|
917
|
+
var Vr = Ar(i);
|
|
918
|
+
|
|
919
|
+
var Jr = false;
|
|
920
|
+
|
|
921
|
+
var Br = false;
|
|
922
|
+
|
|
923
|
+
var Hr = false;
|
|
924
|
+
|
|
925
|
+
var Yr = import.meta.env.TEST ? !Or() : isBrowser3;
|
|
926
|
+
|
|
927
|
+
var Xr = [];
|
|
832
928
|
|
|
833
929
|
var log = (...e) => {
|
|
834
|
-
console.log(`Preloader ${
|
|
930
|
+
console.log(`Preloader ${performance.now() - loadStart}ms ${Ur}/${Wr.length} queued>`, ...e);
|
|
835
931
|
};
|
|
836
932
|
|
|
837
933
|
var resetQueue = () => {
|
|
838
|
-
|
|
934
|
+
Lr.clear();
|
|
839
935
|
queueDirty = false;
|
|
840
936
|
shouldResetFactor = true;
|
|
841
|
-
|
|
842
|
-
|
|
937
|
+
Ur = 0;
|
|
938
|
+
Wr.length = 0;
|
|
939
|
+
Xr.length = 0;
|
|
940
|
+
Jr = false;
|
|
941
|
+
Br = false;
|
|
942
|
+
Hr = false;
|
|
843
943
|
};
|
|
844
944
|
|
|
845
945
|
var sortQueue = () => {
|
|
846
946
|
if (queueDirty) {
|
|
847
|
-
|
|
947
|
+
Wr.sort((e, t) => e.Ut - t.Ut);
|
|
848
948
|
queueDirty = false;
|
|
849
949
|
}
|
|
850
950
|
};
|
|
@@ -853,10 +953,11 @@ var getQueue = () => {
|
|
|
853
953
|
sortQueue();
|
|
854
954
|
let e = .4;
|
|
855
955
|
const t = [];
|
|
856
|
-
for (
|
|
857
|
-
const
|
|
858
|
-
|
|
859
|
-
|
|
956
|
+
for (let n = 0; n < Wr.length; n++) {
|
|
957
|
+
const r = Wr[n];
|
|
958
|
+
const s = Math.round((1 - r.Ut) * 10);
|
|
959
|
+
if (s !== e) {
|
|
960
|
+
e = s;
|
|
860
961
|
t.push(e);
|
|
861
962
|
}
|
|
862
963
|
t.push(r.zt);
|
|
@@ -864,138 +965,223 @@ var getQueue = () => {
|
|
|
864
965
|
return t;
|
|
865
966
|
};
|
|
866
967
|
|
|
867
|
-
|
|
868
|
-
|
|
968
|
+
function Fa() {
|
|
969
|
+
Jr = false;
|
|
970
|
+
if (!Wr.length) {
|
|
869
971
|
return;
|
|
870
972
|
}
|
|
871
973
|
sortQueue();
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
const
|
|
876
|
-
const
|
|
974
|
+
const e = performance.now() + Dr;
|
|
975
|
+
let t = false;
|
|
976
|
+
while (Wr.length) {
|
|
977
|
+
const n = Wr[0];
|
|
978
|
+
const r = n.Ut;
|
|
979
|
+
const s = 1 - r;
|
|
980
|
+
const i = graph ? config.i :
|
|
877
981
|
// While the graph is not available, we limit to 5 preloads
|
|
878
982
|
5;
|
|
879
|
-
if (
|
|
880
|
-
|
|
881
|
-
|
|
983
|
+
if (s >= .99 || Ur < i) {
|
|
984
|
+
Wr.shift();
|
|
985
|
+
Zr(n);
|
|
986
|
+
if (performance.now() >= e) {
|
|
987
|
+
t = true;
|
|
988
|
+
break;
|
|
989
|
+
}
|
|
882
990
|
} else {
|
|
883
991
|
break;
|
|
884
992
|
}
|
|
885
993
|
}
|
|
886
|
-
if (
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
const r = e.reduce((e, t) => e + t.Qt, 0);
|
|
890
|
-
log(`>>>> done ${e.length}/${Er.size} total: ${t}ms waited, ${r}ms loaded`);
|
|
994
|
+
if (t && Wr.length && !Jr) {
|
|
995
|
+
Jr = true;
|
|
996
|
+
Qr();
|
|
891
997
|
}
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
998
|
+
if (config.t && !Wr.length) {
|
|
999
|
+
const e = [ ...Lr.values() ].filter(e => e.At > BundleImportState_None);
|
|
1000
|
+
const t = e.reduce((e, t) => e + t.Qt, 0);
|
|
1001
|
+
const n = e.reduce((e, t) => e + t.Vt, 0);
|
|
1002
|
+
log(`>>>> done ${e.length}/${Lr.size} total: ${t}ms waited, ${n}ms loaded`);
|
|
897
1003
|
}
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
r.onload = r.onerror = () => {
|
|
908
|
-
Cr--;
|
|
909
|
-
const n = Date.now();
|
|
910
|
-
e.Qt = n - t;
|
|
911
|
-
e.Tt = BundleImportState_Loaded;
|
|
912
|
-
config.t && log(`>> done after ${e.Qt}ms`, e.zt);
|
|
913
|
-
r.remove();
|
|
914
|
-
_r();
|
|
915
|
-
};
|
|
916
|
-
kr.head.appendChild(r);
|
|
1004
|
+
}
|
|
1005
|
+
|
|
1006
|
+
var Gr = (e, t, n, r) => {
|
|
1007
|
+
Xr.unshift({
|
|
1008
|
+
Jt: e,
|
|
1009
|
+
Ut: t,
|
|
1010
|
+
Bt: r,
|
|
1011
|
+
Ht: n
|
|
1012
|
+
});
|
|
917
1013
|
};
|
|
918
1014
|
|
|
919
|
-
var
|
|
920
|
-
|
|
921
|
-
|
|
1015
|
+
var Kr = () => {
|
|
1016
|
+
const e = Xr[Xr.length - 1];
|
|
1017
|
+
const t = e.Jt;
|
|
1018
|
+
if (e.Lt) {
|
|
1019
|
+
const n = e.Yt;
|
|
1020
|
+
if (n >= e.Lt.length) {
|
|
1021
|
+
Xr.pop();
|
|
1022
|
+
return false;
|
|
1023
|
+
}
|
|
1024
|
+
const r = e.Lt[n];
|
|
1025
|
+
e.Yt = n + 1;
|
|
1026
|
+
const s = zr(r.zt);
|
|
1027
|
+
if (s.Ut === 0) {
|
|
1028
|
+
return true;
|
|
1029
|
+
}
|
|
1030
|
+
const i = 1 - t.Ut;
|
|
1031
|
+
let o;
|
|
1032
|
+
if (i === 1 || i >= .99 && e.Ht.Xt < 100) {
|
|
1033
|
+
e.Ht.Xt++;
|
|
1034
|
+
o = Math.min(.01, 1 - r.Gt);
|
|
1035
|
+
} else {
|
|
1036
|
+
const e = 1 - r.Gt * i;
|
|
1037
|
+
const t = r.Kt;
|
|
1038
|
+
const n = e / t;
|
|
1039
|
+
o = Math.max(.02, s.Ut * n);
|
|
1040
|
+
r.Kt = n;
|
|
1041
|
+
}
|
|
1042
|
+
Xr.push({
|
|
1043
|
+
Jt: s,
|
|
1044
|
+
Ut: o,
|
|
1045
|
+
Bt: e.Bt,
|
|
1046
|
+
Ht: e.Ht
|
|
1047
|
+
});
|
|
1048
|
+
return true;
|
|
922
1049
|
}
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
1050
|
+
if (e.Bt?.has(t)) {
|
|
1051
|
+
Xr.pop();
|
|
1052
|
+
return false;
|
|
1053
|
+
}
|
|
1054
|
+
const n = t.Ut;
|
|
1055
|
+
t.Ut = e.Ut;
|
|
1056
|
+
if (n - t.Ut < .01) {
|
|
1057
|
+
Xr.pop();
|
|
1058
|
+
return false;
|
|
927
1059
|
}
|
|
928
1060
|
if (
|
|
929
1061
|
// don't queue until we have initialized the preloader
|
|
930
|
-
base != null &&
|
|
931
|
-
if (
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
config.t && log(`queued ${Math.round((1 -
|
|
1062
|
+
base != null && t.At < BundleImportState_Preload) {
|
|
1063
|
+
if (t.At === BundleImportState_None) {
|
|
1064
|
+
t.At = BundleImportState_Queued;
|
|
1065
|
+
Wr.push(t);
|
|
1066
|
+
config.t && log(`queued ${Math.round((1 - t.Ut) * 100)}%`, t.zt);
|
|
935
1067
|
}
|
|
936
1068
|
queueDirty = true;
|
|
937
1069
|
}
|
|
938
|
-
if (
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
1070
|
+
if (t.Lt?.length) {
|
|
1071
|
+
const n = e.Bt || /* @__PURE__ */ new Set;
|
|
1072
|
+
n.add(t);
|
|
1073
|
+
e.Bt = n;
|
|
1074
|
+
e.Lt = t.Lt;
|
|
1075
|
+
e.Yt = 0;
|
|
1076
|
+
return false;
|
|
1077
|
+
}
|
|
1078
|
+
Xr.pop();
|
|
1079
|
+
return false;
|
|
1080
|
+
};
|
|
1081
|
+
|
|
1082
|
+
function i() {
|
|
1083
|
+
if (Hr || !Xr.length) {
|
|
1084
|
+
return;
|
|
1085
|
+
}
|
|
1086
|
+
Br = false;
|
|
1087
|
+
Hr = true;
|
|
1088
|
+
const e = Yr ? performance.now() + Dr : 0;
|
|
1089
|
+
let t = false;
|
|
1090
|
+
while (Xr.length) {
|
|
1091
|
+
t = true;
|
|
1092
|
+
const n = Kr();
|
|
1093
|
+
if (Yr && n && performance.now() >= e) {
|
|
1094
|
+
if (!Br) {
|
|
1095
|
+
Br = true;
|
|
1096
|
+
Vr();
|
|
957
1097
|
}
|
|
958
|
-
|
|
1098
|
+
break;
|
|
959
1099
|
}
|
|
960
1100
|
}
|
|
1101
|
+
Hr = false;
|
|
1102
|
+
if (t && Yr) {
|
|
1103
|
+
Qr();
|
|
1104
|
+
}
|
|
1105
|
+
}
|
|
1106
|
+
|
|
1107
|
+
var Zr = e => {
|
|
1108
|
+
if (e.At >= BundleImportState_Preload) {
|
|
1109
|
+
return;
|
|
1110
|
+
}
|
|
1111
|
+
Ur++;
|
|
1112
|
+
const t = performance.now();
|
|
1113
|
+
e.Qt = t - e.Wt;
|
|
1114
|
+
e.At = BundleImportState_Preload;
|
|
1115
|
+
config.t && log(`<< load ${Math.round((1 - e.Ut) * 100)}% after ${`${e.Qt}ms`}`, e.zt);
|
|
1116
|
+
const n = Nr.createElement("link");
|
|
1117
|
+
n.href = new URL(`${base}${e.zt}`, Nr.baseURI).toString();
|
|
1118
|
+
n.rel = Ir;
|
|
1119
|
+
n.as = "script";
|
|
1120
|
+
n.onload = n.onerror = () => {
|
|
1121
|
+
Ur--;
|
|
1122
|
+
const r = performance.now();
|
|
1123
|
+
e.Vt = r - t;
|
|
1124
|
+
e.At = BundleImportState_Loaded;
|
|
1125
|
+
config.t && log(`>> done after ${e.Vt}ms`, e.zt);
|
|
1126
|
+
n.remove();
|
|
1127
|
+
Qr();
|
|
1128
|
+
};
|
|
1129
|
+
Nr.head.appendChild(n);
|
|
961
1130
|
};
|
|
962
1131
|
|
|
963
|
-
var
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
1132
|
+
var adjustProbabilities = (e, t, n) => {
|
|
1133
|
+
Gr(e, t, {
|
|
1134
|
+
Xt: 0
|
|
1135
|
+
}, n);
|
|
1136
|
+
if (Yr) {
|
|
1137
|
+
Vr();
|
|
1138
|
+
} else {
|
|
1139
|
+
i();
|
|
967
1140
|
}
|
|
968
1141
|
};
|
|
969
1142
|
|
|
970
|
-
var
|
|
1143
|
+
var ti = (e, t, n) => {
|
|
1144
|
+
const r = zr(e);
|
|
1145
|
+
if (r && r.Ut > t) {
|
|
1146
|
+
if (n) {
|
|
1147
|
+
Gr(r, t, n);
|
|
1148
|
+
} else {
|
|
1149
|
+
adjustProbabilities(r, t);
|
|
1150
|
+
}
|
|
1151
|
+
}
|
|
1152
|
+
};
|
|
971
1153
|
|
|
972
1154
|
var preload = (e, t) => {
|
|
973
1155
|
if (!e?.length) {
|
|
974
1156
|
return;
|
|
975
1157
|
}
|
|
976
|
-
|
|
977
|
-
|
|
1158
|
+
let n = t ? 1 - t : .4;
|
|
1159
|
+
const r = {
|
|
1160
|
+
Xt: 0
|
|
1161
|
+
};
|
|
978
1162
|
if (Array.isArray(e)) {
|
|
979
1163
|
for (let t = e.length - 1; t >= 0; t--) {
|
|
980
|
-
const
|
|
981
|
-
if (typeof
|
|
982
|
-
|
|
1164
|
+
const s = e[t];
|
|
1165
|
+
if (typeof s === "number") {
|
|
1166
|
+
n = 1 - s / 10;
|
|
983
1167
|
} else {
|
|
984
|
-
|
|
1168
|
+
ti(s, n, r);
|
|
985
1169
|
}
|
|
986
1170
|
}
|
|
987
1171
|
} else {
|
|
988
|
-
|
|
1172
|
+
ti(e, n, r);
|
|
989
1173
|
}
|
|
990
|
-
if (
|
|
991
|
-
|
|
1174
|
+
if (Yr) {
|
|
1175
|
+
Vr();
|
|
1176
|
+
} else {
|
|
1177
|
+
i();
|
|
992
1178
|
}
|
|
993
1179
|
};
|
|
994
1180
|
|
|
995
|
-
if (isBrowser3) {
|
|
1181
|
+
if (import.meta.env.TEST ? !Or() : isBrowser3) {
|
|
996
1182
|
document.addEventListener("qsymbol", e => {
|
|
997
|
-
const {symbol: t, href:
|
|
998
|
-
if (
|
|
1183
|
+
const {symbol: t, href: n} = e.detail;
|
|
1184
|
+
if (n) {
|
|
999
1185
|
const e = t.slice(t.lastIndexOf("_") + 1);
|
|
1000
1186
|
preload(e, 1);
|
|
1001
1187
|
}
|
|
@@ -1003,7 +1189,7 @@ if (isBrowser3) {
|
|
|
1003
1189
|
}
|
|
1004
1190
|
|
|
1005
1191
|
// packages/qwik/src/core/shared/utils/objects.ts
|
|
1006
|
-
var
|
|
1192
|
+
var ni = e => {
|
|
1007
1193
|
for (const t in e) {
|
|
1008
1194
|
if (Object.prototype.hasOwnProperty.call(e, t)) {
|
|
1009
1195
|
return false;
|
|
@@ -1019,7 +1205,7 @@ var GT = ">";
|
|
|
1019
1205
|
|
|
1020
1206
|
var CLOSE_TAG = "</";
|
|
1021
1207
|
|
|
1022
|
-
var
|
|
1208
|
+
var Lf = " ";
|
|
1023
1209
|
|
|
1024
1210
|
var ATTR_EQUALS_QUOTE = '="';
|
|
1025
1211
|
|
|
@@ -1033,74 +1219,74 @@ var BRACKET_CLOSE = "]";
|
|
|
1033
1219
|
|
|
1034
1220
|
var PAREN_CLOSE = ")";
|
|
1035
1221
|
|
|
1036
|
-
var
|
|
1222
|
+
var ei = ",";
|
|
1037
1223
|
|
|
1038
1224
|
// packages/qwik/src/server/platform.ts
|
|
1039
|
-
var getDevSegmentPath = (e, t,
|
|
1225
|
+
var getDevSegmentPath = (e, t, n, r) => {
|
|
1040
1226
|
const s = e?.[t];
|
|
1041
1227
|
if (s) {
|
|
1042
1228
|
return s;
|
|
1043
1229
|
}
|
|
1044
|
-
if (
|
|
1045
|
-
return [
|
|
1230
|
+
if (n === ke) {
|
|
1231
|
+
return [ n, "" ];
|
|
1046
1232
|
}
|
|
1047
|
-
if (!
|
|
1048
|
-
if (
|
|
1049
|
-
return [
|
|
1233
|
+
if (!r) {
|
|
1234
|
+
if (n.startsWith("_") && n.length < 6) {
|
|
1235
|
+
return [ n, `${import.meta.env.BASE_URL}@qwik-handlers` ];
|
|
1050
1236
|
}
|
|
1051
|
-
console.error("qwik symbolMapper: unknown qrl requested without parent:",
|
|
1052
|
-
return [
|
|
1237
|
+
console.error("qwik symbolMapper: unknown qrl requested without parent:", n);
|
|
1238
|
+
return [ n, `${import.meta.env.BASE_URL}${n}.js` ];
|
|
1053
1239
|
}
|
|
1054
|
-
const i = `${import.meta.env.BASE_URL}${
|
|
1055
|
-
return [
|
|
1240
|
+
const i = `${import.meta.env.BASE_URL}${r.startsWith("/") ? r.slice(1) : r}_${n}.js`;
|
|
1241
|
+
return [ n, i ];
|
|
1056
1242
|
};
|
|
1057
1243
|
|
|
1058
|
-
function
|
|
1059
|
-
const
|
|
1060
|
-
const
|
|
1061
|
-
if (
|
|
1062
|
-
const t =
|
|
1063
|
-
const s = !isDev5 ?
|
|
1244
|
+
function createPlatform2(e, t) {
|
|
1245
|
+
const n = t?.mapper;
|
|
1246
|
+
const r = e.symbolMapper ? e.symbolMapper : (e, t, r) => {
|
|
1247
|
+
if (n || isDev5 && import.meta.env.MODE !== "test") {
|
|
1248
|
+
const t = getSymbolHash2(e);
|
|
1249
|
+
const s = !isDev5 ? n[t] : getDevSegmentPath(n, t, e, r);
|
|
1064
1250
|
if (!s) {
|
|
1065
|
-
if (t ===
|
|
1251
|
+
if (t === ke) {
|
|
1066
1252
|
return [ t, "" ];
|
|
1067
1253
|
}
|
|
1068
1254
|
const s = globalThis.__qwik_reg_symbols?.has(t);
|
|
1069
1255
|
if (s) {
|
|
1070
1256
|
return [ e, "_" ];
|
|
1071
1257
|
}
|
|
1072
|
-
console.error("Cannot resolve symbol", e, "in",
|
|
1258
|
+
console.error("Cannot resolve symbol", e, "in", n, r);
|
|
1073
1259
|
}
|
|
1074
1260
|
return s;
|
|
1075
1261
|
}
|
|
1076
1262
|
};
|
|
1077
1263
|
const s = {
|
|
1078
1264
|
isServer: true,
|
|
1079
|
-
async importSymbol(e, t,
|
|
1080
|
-
const
|
|
1081
|
-
const s = globalThis.__qwik_reg_symbols?.get(
|
|
1265
|
+
async importSymbol(e, t, n) {
|
|
1266
|
+
const r = getSymbolHash2(n);
|
|
1267
|
+
const s = globalThis.__qwik_reg_symbols?.get(r);
|
|
1082
1268
|
if (s) {
|
|
1083
1269
|
return s;
|
|
1084
1270
|
}
|
|
1085
|
-
throw
|
|
1271
|
+
throw Se(6 /* dynamicImportFailed */ , [ n ]);
|
|
1086
1272
|
},
|
|
1087
1273
|
raf: () => {
|
|
1088
1274
|
console.error("server can not rerender");
|
|
1089
1275
|
return Promise.resolve();
|
|
1090
1276
|
},
|
|
1091
1277
|
chunkForSymbol(e, t, s) {
|
|
1092
|
-
return
|
|
1278
|
+
return r(e, n, s);
|
|
1093
1279
|
}
|
|
1094
1280
|
};
|
|
1095
1281
|
return s;
|
|
1096
1282
|
}
|
|
1097
1283
|
|
|
1098
1284
|
async function setServerPlatform(e, t) {
|
|
1099
|
-
const
|
|
1100
|
-
|
|
1285
|
+
const n = createPlatform2(e, t);
|
|
1286
|
+
jr(n);
|
|
1101
1287
|
}
|
|
1102
1288
|
|
|
1103
|
-
var
|
|
1289
|
+
var getSymbolHash2 = e => {
|
|
1104
1290
|
const t = e.lastIndexOf("_");
|
|
1105
1291
|
if (t > -1) {
|
|
1106
1292
|
return e.slice(t + 1);
|
|
@@ -1116,8 +1302,8 @@ function createTimer() {
|
|
|
1116
1302
|
const e = performance.now();
|
|
1117
1303
|
return () => {
|
|
1118
1304
|
const t = performance.now();
|
|
1119
|
-
const
|
|
1120
|
-
return
|
|
1305
|
+
const n = t - e;
|
|
1306
|
+
return n / 1e6;
|
|
1121
1307
|
};
|
|
1122
1308
|
}
|
|
1123
1309
|
|
|
@@ -1136,64 +1322,65 @@ function getBuildBase(e) {
|
|
|
1136
1322
|
}
|
|
1137
1323
|
|
|
1138
1324
|
var versions = {
|
|
1139
|
-
qwik: "2.0.0-beta.
|
|
1325
|
+
qwik: "2.0.0-beta.32-dev+0e29f8a",
|
|
1140
1326
|
qwikDom: "2.1.19"
|
|
1141
1327
|
};
|
|
1142
1328
|
|
|
1143
1329
|
// packages/qwik/src/server/ssr-container.ts
|
|
1144
1330
|
import { isDev as isDev7 } from "@qwik.dev/core/build";
|
|
1145
1331
|
|
|
1146
|
-
import { _SubscriptionData as
|
|
1332
|
+
import { _SubscriptionData as fs, _SharedContainer as Au, _jsxSorted as xs, _jsxSplit as qs, _res as w, _setEvent, _walkJSX as Cn, _createQRL as Gc, isSignal as Dl } from "@qwik.dev/core/internal";
|
|
1147
1333
|
|
|
1148
1334
|
// packages/qwik/src/server/preload-strategy.ts
|
|
1149
|
-
import { getPlatform as
|
|
1335
|
+
import { getPlatform as _r } from "@qwik.dev/core";
|
|
1150
1336
|
|
|
1151
1337
|
// packages/qwik/src/server/preload-utils.ts
|
|
1152
1338
|
function flattenPrefetchResources(e) {
|
|
1153
1339
|
const t = [];
|
|
1154
|
-
const
|
|
1340
|
+
const n = e => {
|
|
1155
1341
|
if (e) {
|
|
1156
|
-
for (
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1342
|
+
for (let r = 0; r < e.length; r++) {
|
|
1343
|
+
const s = e[r];
|
|
1344
|
+
if (!t.includes(s.url)) {
|
|
1345
|
+
t.push(s.url);
|
|
1346
|
+
if (s.imports) {
|
|
1347
|
+
n(s.imports);
|
|
1161
1348
|
}
|
|
1162
1349
|
}
|
|
1163
1350
|
}
|
|
1164
1351
|
}
|
|
1165
1352
|
};
|
|
1166
|
-
|
|
1353
|
+
n(e);
|
|
1167
1354
|
return t;
|
|
1168
1355
|
}
|
|
1169
1356
|
|
|
1170
1357
|
// packages/qwik/src/server/preload-strategy.ts
|
|
1171
1358
|
var getBundles = e => {
|
|
1172
|
-
const t =
|
|
1173
|
-
const
|
|
1174
|
-
const
|
|
1175
|
-
const
|
|
1176
|
-
const s = t.chunkForSymbol(
|
|
1359
|
+
const t = _r();
|
|
1360
|
+
const n = e?.map(e => {
|
|
1361
|
+
const n = e.bt;
|
|
1362
|
+
const r = e.vt;
|
|
1363
|
+
const s = t.chunkForSymbol(n, r, e.dev?.file);
|
|
1177
1364
|
if (s) {
|
|
1178
1365
|
return s[1];
|
|
1179
1366
|
}
|
|
1180
|
-
return
|
|
1367
|
+
return r;
|
|
1181
1368
|
}).filter(Boolean);
|
|
1182
|
-
return [ ...new Set(
|
|
1369
|
+
return [ ...new Set(n) ];
|
|
1183
1370
|
};
|
|
1184
1371
|
|
|
1185
|
-
function getPreloadPaths(e, t,
|
|
1186
|
-
const
|
|
1187
|
-
if (
|
|
1372
|
+
function getPreloadPaths(e, t, n) {
|
|
1373
|
+
const r = t.prefetchStrategy;
|
|
1374
|
+
if (r === null) {
|
|
1188
1375
|
return [];
|
|
1189
1376
|
}
|
|
1190
|
-
if (!
|
|
1377
|
+
if (!n?.manifest.bundleGraph) {
|
|
1191
1378
|
return getBundles(e);
|
|
1192
1379
|
}
|
|
1193
|
-
if (typeof
|
|
1380
|
+
if (typeof r?.symbolsToPrefetch === "function") {
|
|
1194
1381
|
try {
|
|
1195
|
-
const e =
|
|
1196
|
-
manifest:
|
|
1382
|
+
const e = r.symbolsToPrefetch({
|
|
1383
|
+
manifest: n.manifest
|
|
1197
1384
|
});
|
|
1198
1385
|
return flattenPrefetchResources(e);
|
|
1199
1386
|
} catch (e) {
|
|
@@ -1201,10 +1388,10 @@ function getPreloadPaths(e, t, r) {
|
|
|
1201
1388
|
}
|
|
1202
1389
|
}
|
|
1203
1390
|
const s = /* @__PURE__ */ new Set;
|
|
1204
|
-
for (
|
|
1205
|
-
const
|
|
1206
|
-
if (
|
|
1207
|
-
s.add(
|
|
1391
|
+
for (let t = 0; t < e.length; t++) {
|
|
1392
|
+
const n = getSymbolHash2(e[t].bt);
|
|
1393
|
+
if (n && n.length >= 10) {
|
|
1394
|
+
s.add(n);
|
|
1208
1395
|
}
|
|
1209
1396
|
}
|
|
1210
1397
|
return [ ...s ];
|
|
@@ -1215,10 +1402,10 @@ var expandBundles = (e, t) => {
|
|
|
1215
1402
|
return [ ...new Set(e) ];
|
|
1216
1403
|
}
|
|
1217
1404
|
resetQueue();
|
|
1218
|
-
let
|
|
1219
|
-
for (
|
|
1220
|
-
preload(t,
|
|
1221
|
-
|
|
1405
|
+
let n = .99;
|
|
1406
|
+
for (let t = 0; t < e.length; t++) {
|
|
1407
|
+
preload(e[t], n);
|
|
1408
|
+
n *= .95;
|
|
1222
1409
|
}
|
|
1223
1410
|
return getQueue();
|
|
1224
1411
|
};
|
|
@@ -1228,41 +1415,42 @@ var simplifyPath = (e, t) => {
|
|
|
1228
1415
|
if (t == null) {
|
|
1229
1416
|
return null;
|
|
1230
1417
|
}
|
|
1231
|
-
const
|
|
1232
|
-
const
|
|
1233
|
-
for (
|
|
1234
|
-
|
|
1235
|
-
|
|
1418
|
+
const n = `${e}${t}`.split("/");
|
|
1419
|
+
const r = [];
|
|
1420
|
+
for (let e = 0; e < n.length; e++) {
|
|
1421
|
+
const t = n[e];
|
|
1422
|
+
if (t === ".." && r.length > 0) {
|
|
1423
|
+
r.pop();
|
|
1236
1424
|
} else {
|
|
1237
|
-
|
|
1425
|
+
r.push(t);
|
|
1238
1426
|
}
|
|
1239
1427
|
}
|
|
1240
|
-
return
|
|
1428
|
+
return r.join("/");
|
|
1241
1429
|
};
|
|
1242
1430
|
|
|
1243
1431
|
var getBase = e => {
|
|
1244
|
-
let t = e.
|
|
1432
|
+
let t = e.ae;
|
|
1245
1433
|
if (import.meta.env.DEV && !import.meta.env.TEST) {
|
|
1246
1434
|
t = import.meta.env.BASE_URL;
|
|
1247
1435
|
}
|
|
1248
1436
|
return t;
|
|
1249
1437
|
};
|
|
1250
1438
|
|
|
1251
|
-
var preloaderPre = (e, t,
|
|
1252
|
-
const {resolvedManifest:
|
|
1439
|
+
var preloaderPre = (e, t, n) => {
|
|
1440
|
+
const {resolvedManifest: r} = e;
|
|
1253
1441
|
const s = getBase(e);
|
|
1254
|
-
const i = simplifyPath(s,
|
|
1255
|
-
let o =
|
|
1442
|
+
const i = simplifyPath(s, r?.manifest?.preloader);
|
|
1443
|
+
let o = r?.manifest.bundleGraphAsset;
|
|
1256
1444
|
if (o) {
|
|
1257
1445
|
o = (import.meta.env.BASE_URL || "/") + o;
|
|
1258
1446
|
}
|
|
1259
1447
|
if (i && o && t !== false) {
|
|
1260
|
-
const
|
|
1448
|
+
const r = typeof t === "object" ? {
|
|
1261
1449
|
debug: t.debug,
|
|
1262
1450
|
preloadProbability: t.ssrPreloadProbability
|
|
1263
1451
|
} : void 0;
|
|
1264
1452
|
const a = e.resolvedManifest?.manifest.bundleGraph;
|
|
1265
|
-
initPreloader(a,
|
|
1453
|
+
initPreloader(a, r);
|
|
1266
1454
|
const l = [];
|
|
1267
1455
|
if (t) {
|
|
1268
1456
|
if (t.debug) {
|
|
@@ -1280,8 +1468,8 @@ var preloaderPre = (e, t, r) => {
|
|
|
1280
1468
|
rel: "modulepreload",
|
|
1281
1469
|
href: i
|
|
1282
1470
|
};
|
|
1283
|
-
if (
|
|
1284
|
-
u["nonce"] =
|
|
1471
|
+
if (n) {
|
|
1472
|
+
u["nonce"] = n;
|
|
1285
1473
|
}
|
|
1286
1474
|
e.openElement("link", null, u, null, null, null);
|
|
1287
1475
|
e.closeElement();
|
|
@@ -1298,29 +1486,29 @@ var preloaderPre = (e, t, r) => {
|
|
|
1298
1486
|
async: true,
|
|
1299
1487
|
crossorigin: "anonymous"
|
|
1300
1488
|
};
|
|
1301
|
-
if (
|
|
1302
|
-
h["nonce"] =
|
|
1489
|
+
if (n) {
|
|
1490
|
+
h["nonce"] = n;
|
|
1303
1491
|
}
|
|
1304
1492
|
e.openElement("script", null, h, null, null, null);
|
|
1305
1493
|
e.write(d);
|
|
1306
1494
|
e.closeElement();
|
|
1307
1495
|
}
|
|
1308
|
-
const a = simplifyPath(s,
|
|
1496
|
+
const a = simplifyPath(s, r?.manifest.core);
|
|
1309
1497
|
if (a) {
|
|
1310
1498
|
const t = {
|
|
1311
1499
|
rel: "modulepreload",
|
|
1312
1500
|
href: a
|
|
1313
1501
|
};
|
|
1314
|
-
if (
|
|
1315
|
-
t["nonce"] =
|
|
1502
|
+
if (n) {
|
|
1503
|
+
t["nonce"] = n;
|
|
1316
1504
|
}
|
|
1317
1505
|
e.openElement("link", null, t, null, null, null);
|
|
1318
1506
|
e.closeElement();
|
|
1319
1507
|
}
|
|
1320
1508
|
};
|
|
1321
1509
|
|
|
1322
|
-
var includePreloader = (e, t,
|
|
1323
|
-
if (
|
|
1510
|
+
var includePreloader = (e, t, n, r) => {
|
|
1511
|
+
if (n.length === 0 || t === false) {
|
|
1324
1512
|
return null;
|
|
1325
1513
|
}
|
|
1326
1514
|
const {ssrPreloads: s, ssrPreloadProbability: i} = normalizePreLoaderOptions(typeof t === "boolean" ? void 0 : t);
|
|
@@ -1331,23 +1519,24 @@ var includePreloader = (e, t, r, n) => {
|
|
|
1331
1519
|
if (o) {
|
|
1332
1520
|
const e = c?.manifest.preloader;
|
|
1333
1521
|
const t = c?.manifest.core;
|
|
1334
|
-
const
|
|
1522
|
+
const r = expandBundles(n, c);
|
|
1335
1523
|
let s = 4;
|
|
1336
1524
|
const a = i * 10;
|
|
1337
|
-
for (
|
|
1338
|
-
|
|
1525
|
+
for (let n = 0; n < r.length; n++) {
|
|
1526
|
+
const i = r[n];
|
|
1527
|
+
if (typeof i === "string") {
|
|
1339
1528
|
if (s < a) {
|
|
1340
1529
|
break;
|
|
1341
1530
|
}
|
|
1342
|
-
if (
|
|
1531
|
+
if (i === e || i === t) {
|
|
1343
1532
|
continue;
|
|
1344
1533
|
}
|
|
1345
|
-
l.push(
|
|
1534
|
+
l.push(i);
|
|
1346
1535
|
if (--o === 0) {
|
|
1347
1536
|
break;
|
|
1348
1537
|
}
|
|
1349
1538
|
} else {
|
|
1350
|
-
s =
|
|
1539
|
+
s = i;
|
|
1351
1540
|
}
|
|
1352
1541
|
}
|
|
1353
1542
|
}
|
|
@@ -1360,7 +1549,7 @@ var includePreloader = (e, t, r, n) => {
|
|
|
1360
1549
|
*/ `${JSON.stringify(l)}.map((l,e)=>{e=document.createElement('link');e.rel='modulepreload';e.href=${JSON.stringify(a)}+l;document.head.appendChild(e)});` : "";
|
|
1361
1550
|
let h = d;
|
|
1362
1551
|
if (u) {
|
|
1363
|
-
h += `window.addEventListener('load',f=>{f=_=>import("${u}").then(({p})=>p(${JSON.stringify(
|
|
1552
|
+
h += `window.addEventListener('load',f=>{f=_=>import("${u}").then(({p})=>p(${JSON.stringify(n)}));try{requestIdleCallback(f,{timeout:2000})}catch(e){setTimeout(f,200)}})`;
|
|
1364
1553
|
}
|
|
1365
1554
|
if (h) {
|
|
1366
1555
|
const t = {
|
|
@@ -1368,8 +1557,8 @@ var includePreloader = (e, t, r, n) => {
|
|
|
1368
1557
|
async: "true",
|
|
1369
1558
|
"q:type": "preload"
|
|
1370
1559
|
};
|
|
1371
|
-
if (
|
|
1372
|
-
t["nonce"] =
|
|
1560
|
+
if (r) {
|
|
1561
|
+
t["nonce"] = r;
|
|
1373
1562
|
}
|
|
1374
1563
|
e.openElement("script", null, t, null, null, null);
|
|
1375
1564
|
e.write(h);
|
|
@@ -1378,12 +1567,12 @@ var includePreloader = (e, t, r, n) => {
|
|
|
1378
1567
|
return null;
|
|
1379
1568
|
};
|
|
1380
1569
|
|
|
1381
|
-
var preloaderPost = (e, t,
|
|
1570
|
+
var preloaderPost = (e, t, n) => {
|
|
1382
1571
|
if (t.preloader !== false) {
|
|
1383
|
-
const
|
|
1384
|
-
const s = getPreloadPaths(
|
|
1572
|
+
const r = Array.from(e.serializationCtx.jt);
|
|
1573
|
+
const s = getPreloadPaths(r, t, e.resolvedManifest);
|
|
1385
1574
|
if (s.length > 0) {
|
|
1386
|
-
includePreloader(e, t.preloader, s,
|
|
1575
|
+
includePreloader(e, t.preloader, s, n);
|
|
1387
1576
|
}
|
|
1388
1577
|
}
|
|
1389
1578
|
};
|
|
@@ -1404,9 +1593,9 @@ var preLoaderOptionsDefault = {
|
|
|
1404
1593
|
};
|
|
1405
1594
|
|
|
1406
1595
|
// packages/qwik/src/server/scripts.ts
|
|
1407
|
-
var QWIK_LOADER_DEFAULT_MINIFIED = 'const e=document,t=window,
|
|
1596
|
+
var QWIK_LOADER_DEFAULT_MINIFIED = 'const e=document,t=window,r="w",n="wp",o="d",s="dp",i="e",c="ep",l="capture:",a=new Set,p=new Set([e]),q=new Map;let u,f,h;const d=(e,t)=>Array.from(e.querySelectorAll(t)),b=e=>{const t=[];return p.forEach(r=>t.push(...d(r,e))),t},m=(e,t,r,n=!1,o=!1)=>e.addEventListener(t,r,{capture:n,passive:o}),g=e=>{J(e);const t=d(e,"[q\\\\:shadowroot]");for(let e=0;e<t.length;e++){const r=t[e].shadowRoot;r&&g(r)}},v=e=>e&&"function"==typeof e.then,y=async e=>{for(let t=0;t<e.length;t++)await e[t]()},w=e=>{if(e.length){const t=()=>y(e);h=h?h.then(t,t):t()}},E=t=>{if(void 0===t._qwikjson_){let r=(t===e.documentElement?e.body:t).lastElementChild;for(;r;){if("SCRIPT"===r.tagName&&"qwik/json"===r.getAttribute("type")){t._qwikjson_=JSON.parse(r.textContent.replace(/\\\\x3C(\\/?script)/gi,"<$1"));break}r=r.previousElementSibling}}},A=(e,t)=>new CustomEvent(e,{detail:t}),C=(t,r)=>{e.dispatchEvent(A(t,r))},_=e=>e.replace(/([A-Z-])/g,e=>"-"+e.toLowerCase()),k=e=>e.replace(/-./g,e=>e[1].toUpperCase()),B=e=>{const t=e.indexOf(":");return{scope:e.slice(0,t),eventName:k(e.slice(t+1))}},S=e=>2===e.length,I=e=>e.charAt(0),N=e=>!!e&&1===e.nodeType,T=(e,t,r)=>e.hasAttribute(r)&&(!!e._qDispatch?.[t]||e.hasAttribute("q-"+t)),$=(t,r,n,o,s,i,c)=>{const l={qBase:n,symbol:i,element:r,reqTime:c};if(""===s){const r=t.getAttribute("q:instance"),n=(e["qFuncs_"+r]||[])[Number.parseInt(i)];if(!n){const e=Error("sym:"+i);C("qerror",{importError:"sync",error:e,...l}),console.error(e)}return n}const a=`${i}|${n}|${s}`,p=q.get(a);if(p)return p;const u=new URL(s,o).href,f=import(u);return E(t),f.then(e=>{const t=e[i];if(t)q.set(a,t),C("qsymbol",l);else{const e=Error(`${i} not in ${u}`);C("qerror",{importError:"no-symbol",error:e,...l}),console.error(e)}return t},e=>{C("qerror",{importError:"async",error:e,...l}),console.error(e)})},R=(t,r,n,o,s,i=!0)=>{let c=!1;s&&(i&&t.hasAttribute("preventdefault:"+s)&&r.preventDefault(),t.hasAttribute("stoppropagation:"+s)&&r.stopPropagation());const l=t._qDispatch?.[n];if(l){if("function"==typeof l){const e=()=>l(r,t);if(c)o.push(async()=>{const t=e();v(t)&&await t});else{const t=e();v(t)&&(c=!0,o.push(()=>t))}}else if(l.length)for(let e=0;e<l.length;e++){const n=l[e];if(n){const e=()=>n(r,t);if(c)o.push(async()=>{const t=e();v(t)&&await t});else{const t=e();v(t)&&(c=!0,o.push(()=>t))}}}return}const a=t.getAttribute("q-"+n);if(a){const n=t.closest("[q\\\\:container]:not([q\\\\:container=html]):not([q\\\\:container=text])"),s=n.getAttribute("q:base"),i=new URL(s,e.baseURI),l=a.split("|");for(let e=0;e<l.length;e++){const a=l[e],p=performance.now(),[q,u,f]=a.split("#"),h=e=>{if(e&&t.isConnected)try{const n=e.call(f,r,t);if(v(n))return n.catch(e=>{C("qerror",{error:e,qBase:s,symbol:u,element:t,reqTime:p})})}catch(e){C("qerror",{error:e,qBase:s,symbol:u,element:t,reqTime:p})}},d=$(n,t,s,i,q,u,p);if(c||v(d))c=!0,o.push(async()=>{await h(v(d)?await d:d)});else{const e=h(d);v(e)&&(c=!0,o.push(()=>e))}}}},x=(e,t=i,r=!0)=>{const n=_(e.type),o=t+":"+n,s=l+n,c=[],a=[],p=[];let q=e.target;for(;q;)N(q)?(c.push(q),a.push(T(q,o,s)),q=q.parentElement):q=q.parentElement;for(let t=c.length-1;t>=0;t--)if(a[t]&&(R(c[t],e,o,p,n,r),e.cancelBubble||e.cancelBubble))return void w(p);for(let t=0;t<c.length;t++)if(!a[t]&&(R(c[t],e,o,p,n,r),!e.bubbles||e.cancelBubble||e.cancelBubble))return void w(p);w(p)},L=e=>x(e,c,!1),U=(e,t,r=!0)=>{const n=_(t.type),o=e+":"+n,s=b("[q-"+e+"\\\\:"+n+"]"),i=[];for(let e=0;e<s.length;e++){const c=s[e];R(c,t,o,i,n,r)}w(i)},j=e=>{U(o,e)},D=e=>{U(s,e,!1)},O=e=>{U(r,e)},P=e=>{U(n,e,!1)},F=()=>{const r=e.readyState;if("interactive"==r||"complete"==r){if(f=1,p.forEach(g),a.has("d:qinit")){a.delete("d:qinit");const e=A("qinit"),t=b("[q-d\\\\:qinit]"),r=[];for(let n=0;n<t.length;n++){const o=t[n];R(o,e,"d:qinit",r),o.removeAttribute("q-d:qinit")}w(r)}if(a.has("d:qidle")&&(a.delete("d:qidle"),(t.requestIdleCallback??t.setTimeout).bind(t)(()=>{const e=A("qidle"),t=b("[q-d\\\\:qidle]"),r=[];for(let n=0;n<t.length;n++){const o=t[n];R(o,e,"d:qidle",r),o.removeAttribute("q-d:qidle")}w(r)})),a.has("e:qvisible")){u||(u=new IntersectionObserver(e=>{const t=[];for(let r=0;r<e.length;r++){const n=e[r];n.isIntersecting&&(u.unobserve(n.target),R(n.target,A("qvisible",n),"e:qvisible",t))}w(t)}));const e=b("[q-e\\\\:qvisible]:not([q\\\\:observed])");for(let t=0;t<e.length;t++){const r=e[t];u.observe(r),r.setAttribute("q:observed","true")}}}},J=(...e)=>{for(let n=0;n<e.length;n++){const s=e[n];if("string"==typeof s){if(!a.has(s)){a.add(s);const{scope:e,eventName:n}=B(s),i=S(e),c=I(e);c===r?m(t,n,i?P:O,!0,i):p.forEach(e=>m(e,n,c===o?i?D:j:i?L:x,!0,i)),1!==f||"e:qvisible"!==s&&"d:qinit"!==s&&"d:qidle"!==s||F()}}else p.has(s)||(a.forEach(e=>{const{scope:t,eventName:n}=B(e),i=S(t),c=I(t);c!==r&&m(s,n,c===o?i?D:j:i?L:x,!0,i)}),p.add(s))}},M=t._qwikEv;M?.roots||(Array.isArray(M)?J(...M):J("e:click","e:input"),t._qwikEv={events:a,roots:p,push:J},m(e,"readystatechange",F),F())';
|
|
1408
1597
|
|
|
1409
|
-
var QWIK_LOADER_DEFAULT_DEBUG = 'const doc = document;\nconst win = window;\nconst windowPrefix = "w";\nconst documentPrefix = "d";\nconst events = /* @__PURE__ */ new Set();\nconst roots = /* @__PURE__ */ new Set([doc]);\nconst symbols = /* @__PURE__ */ new Map();\nlet observer;\nlet hasInitialized;\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) => el.addEventListener(eventName, handler, { capture, passive: false });\nconst findShadowRoots = (fragment) => {\n addEventOrRoot(fragment);\n nativeQuerySelectorAll(fragment, "[q\\\\:shadowroot]").forEach((parent) => {\n const shadowRoot = parent.shadowRoot;\n shadowRoot && findShadowRoots(shadowRoot);\n });\n};\nconst isPromise = (promise) => promise && typeof promise.then === "function";\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 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 scope: event.charAt(0),\n eventName: kebabToCamel(event.slice(2))\n});\nconst dispatch = async (element, ev, scopedKebabName, kebabName) => {\n if (kebabName) {\n if (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 result = handlers(ev, element);\n if (isPromise(result)) {\n await result;\n }\n } else if (handlers.length) {\n for (let i = 0; i < handlers.length; i++) {\n const handler = handlers[i];\n const result = handler?.(ev, element);\n if (isPromise(result)) {\n await result;\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 for (const qrl of attrValue.split("|")) {\n const reqTime = performance.now();\n const [chunk, symbol, capturedIds] = qrl.split("#");\n const eventData = {\n qBase,\n symbol,\n element,\n reqTime\n };\n let handler;\n let importError;\n let error;\n if (chunk === "") {\n const hash = container.getAttribute("q:instance");\n handler = (doc["qFuncs_" + hash] || [])[Number.parseInt(symbol)];\n if (!handler) {\n importError = "sync";\n error = new Error("sym:" + symbol);\n }\n } else {\n const key = `${symbol}|${qBase}|${chunk}`;\n handler = symbols.get(key);\n if (!handler) {\n const href = new URL(chunk, base).href;\n try {\n const module = import(\n href\n );\n resolveContainer(container);\n handler = (await module)[symbol];\n if (!handler) {\n importError = "no-symbol";\n error = new Error(`${symbol} not in ${href}`);\n } else {\n symbols.set(key, handler);\n emitEvent("qsymbol", eventData);\n }\n } catch (err) {\n importError = "async";\n error = err;\n }\n }\n }\n if (!handler) {\n emitEvent("qerror", {\n importError,\n error,\n ...eventData\n });\n console.error(error);\n continue;\n }\n if (element.isConnected) {\n try {\n const result = handler.call(capturedIds, ev, element);\n if (isPromise(result)) {\n await result;\n }\n } catch (error2) {\n emitEvent("qerror", { error: error2, ...eventData });\n }\n }\n }\n }\n};\nconst processElementEvent = async (ev) => {\n const kebabName = camelToKebab(ev.type);\n const scopedKebabName = "e:" + kebabName;\n let element = ev.target;\n while (element && element.getAttribute) {\n const results = dispatch(element, ev, scopedKebabName, kebabName);\n const doBubble = ev.bubbles && !ev.cancelBubble;\n if (isPromise(results)) {\n await results;\n }\n element = doBubble && ev.bubbles && !ev.cancelBubble ? element.parentElement : null;\n }\n};\nconst broadcast = (infix, ev) => {\n const kebabName = camelToKebab(ev.type);\n const scopedKebabName = infix + ":" + kebabName;\n querySelectorAll("[q-" + infix + "\\\\:" + kebabName + "]").forEach(\n (el) => dispatch(el, ev, scopedKebabName, kebabName)\n );\n};\nconst processDocumentEvent = async (ev) => {\n broadcast(documentPrefix, ev);\n};\nconst processWindowEvent = (ev) => {\n broadcast(windowPrefix, ev);\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 querySelectorAll("[q-d\\\\:qinit]").forEach((el) => {\n dispatch(el, ev, "d:qinit");\n el.removeAttribute("q-d:qinit");\n });\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 querySelectorAll("[q-d\\\\:qidle]").forEach((el) => {\n dispatch(el, ev, "d:qidle");\n el.removeAttribute("q-d:qidle");\n });\n });\n }\n if (events.has("e:qvisible")) {\n observer || (observer = new IntersectionObserver((entries) => {\n for (const entry of entries) {\n if (entry.isIntersecting) {\n observer.unobserve(entry.target);\n dispatch(entry.target, createEvent("qvisible", entry), "e:qvisible");\n }\n }\n }));\n querySelectorAll("[q-e\\\\:qvisible]:not([q\\\\:observed])").forEach((el) => {\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 if (scope === windowPrefix) {\n addEventListener(win, eventName, processWindowEvent, true);\n } else {\n roots.forEach(\n (root) => addEventListener(\n root,\n eventName,\n scope === documentPrefix ? processDocumentEvent : processElementEvent,\n true\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 if (scope !== windowPrefix) {\n addEventListener(\n eventNameOrRoot,\n eventName,\n scope === documentPrefix ? processDocumentEvent : processElementEvent,\n true\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}';
|
|
1598
|
+
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 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 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) => {\n const eventData = {\n qBase,\n symbol,\n element,\n reqTime\n };\n if (chunk === "") {\n const hash = container.getAttribute("q:instance");\n const handler2 = (doc["qFuncs_" + hash] || [])[Number.parseInt(symbol)];\n if (!handler2) {\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 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 try {\n const result = handler2.call(capturedIds, ev, element);\n if (isPromise(result)) {\n return result.catch((error) => {\n emitEvent("qerror", {\n error,\n qBase,\n symbol,\n element,\n reqTime\n });\n });\n }\n } catch (error) {\n emitEvent("qerror", {\n error,\n qBase,\n symbol,\n element,\n reqTime\n });\n }\n }\n };\n const handler = resolveHandler(container, element, qBase, base, chunk, symbol, reqTime);\n if (defer || isPromise(handler)) {\n defer = true;\n tasks.push(async () => {\n await run(isPromise(handler) ? await handler : handler);\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 const continuePropagation = !ev.cancelBubble;\n if (!continuePropagation || 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 const doBubble = ev.bubbles && !ev.cancelBubble;\n if (!doBubble || 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}';
|
|
1410
1599
|
|
|
1411
1600
|
var QWIK_BACKPATCH_EXECUTOR_MINIFIED = `const t='script[type="qwik/backpatch"]',e=document.currentScript;if(e){const o=e.closest("[q\\\\:container]:not([q\\\\:container=html]):not([q\\\\:container=text])");if(o){const e=o.querySelector(t);if(e){const t=JSON.parse(e.textContent||"[]"),n=document.createTreeWalker(o,NodeFilter.SHOW_ELEMENT);let r=n.currentNode,c=r.hasAttribute(":")?0:-1;for(let e=0;e<t.length;e+=3){const o=t[e],i=t[e+1];let s=t[e+2];for(;c<o&&(r=n.nextNode(),r);)r.hasAttribute(":")&&c++;const l=r;null==s||!1===s?l.removeAttribute(i):("boolean"==typeof s&&(s=""),l.setAttribute(i,s))}}}}`;
|
|
1412
1601
|
|
|
@@ -1429,15 +1618,15 @@ function getQwikBackpatchExecutorScript(e = {}) {
|
|
|
1429
1618
|
}
|
|
1430
1619
|
|
|
1431
1620
|
// packages/qwik/src/server/ssr-node.ts
|
|
1432
|
-
import { _isJSXNode as
|
|
1621
|
+
import { _isJSXNode as $s, _EMPTY_OBJ, _EFFECT_BACK_REF as si } from "@qwik.dev/core/internal";
|
|
1433
1622
|
|
|
1434
1623
|
import { isDev as isDev6 } from "@qwik.dev/core/build";
|
|
1435
1624
|
|
|
1436
1625
|
var SsrNode = class {
|
|
1437
|
-
constructor(e, t,
|
|
1626
|
+
constructor(e, t, n, r, s, i) {
|
|
1438
1627
|
this.parentComponent = e;
|
|
1439
|
-
this.attributesIndex =
|
|
1440
|
-
this.cleanupQueue =
|
|
1628
|
+
this.attributesIndex = n;
|
|
1629
|
+
this.cleanupQueue = r;
|
|
1441
1630
|
this.vnodeData = s;
|
|
1442
1631
|
this.currentFile = i;
|
|
1443
1632
|
this.id = t;
|
|
@@ -1461,19 +1650,19 @@ var SsrNode = class {
|
|
|
1461
1650
|
attrs;
|
|
1462
1651
|
/** Local props which don't serialize; */
|
|
1463
1652
|
localProps=null;
|
|
1464
|
-
get [
|
|
1465
|
-
return this.getProp(
|
|
1653
|
+
get [si]() {
|
|
1654
|
+
return this.getProp(Fe);
|
|
1466
1655
|
}
|
|
1467
1656
|
setProp(e, t) {
|
|
1468
1657
|
if (this.attrs === _EMPTY_OBJ) {
|
|
1469
1658
|
this.setEmptyArrayAsVNodeDataAttributes();
|
|
1470
1659
|
}
|
|
1471
|
-
if (e.startsWith(
|
|
1660
|
+
if (e.startsWith(sr)) {
|
|
1472
1661
|
(this.localProps ||= {})[e] = t;
|
|
1473
1662
|
} else {
|
|
1474
1663
|
this.attrs[e] = t;
|
|
1475
1664
|
}
|
|
1476
|
-
if (e ==
|
|
1665
|
+
if (e == nr && t) {
|
|
1477
1666
|
this.cleanupQueue.push(t);
|
|
1478
1667
|
}
|
|
1479
1668
|
}
|
|
@@ -1489,14 +1678,14 @@ var SsrNode = class {
|
|
|
1489
1678
|
}
|
|
1490
1679
|
}
|
|
1491
1680
|
getProp(e) {
|
|
1492
|
-
if (e.startsWith(
|
|
1681
|
+
if (e.startsWith(sr)) {
|
|
1493
1682
|
return this.localProps ? this.localProps[e] ?? null : null;
|
|
1494
1683
|
} else {
|
|
1495
1684
|
return this.attrs[e] ?? null;
|
|
1496
1685
|
}
|
|
1497
1686
|
}
|
|
1498
1687
|
removeProp(e) {
|
|
1499
|
-
if (e.startsWith(
|
|
1688
|
+
if (e.startsWith(sr)) {
|
|
1500
1689
|
if (this.localProps) {
|
|
1501
1690
|
delete this.localProps[e];
|
|
1502
1691
|
}
|
|
@@ -1514,8 +1703,9 @@ var SsrNode = class {
|
|
|
1514
1703
|
if (this.flags & 1 /* Updatable */) {
|
|
1515
1704
|
this.flags &= ~1 /* Updatable */;
|
|
1516
1705
|
if (this.children) {
|
|
1517
|
-
for (
|
|
1518
|
-
e
|
|
1706
|
+
for (let e = 0; e < this.children.length; e++) {
|
|
1707
|
+
const t = this.children[e];
|
|
1708
|
+
t.setTreeNonUpdatable();
|
|
1519
1709
|
}
|
|
1520
1710
|
}
|
|
1521
1711
|
}
|
|
@@ -1524,9 +1714,9 @@ var SsrNode = class {
|
|
|
1524
1714
|
if (isDev6) {
|
|
1525
1715
|
let e = "";
|
|
1526
1716
|
for (const t in this.attrs) {
|
|
1527
|
-
const
|
|
1717
|
+
const n = this.attrs[t];
|
|
1528
1718
|
e += `${t}=`;
|
|
1529
|
-
e += `${typeof
|
|
1719
|
+
e += `${typeof n === "string" || typeof n === "number" ? JSON.stringify(n) : "*"}`;
|
|
1530
1720
|
e += ", ";
|
|
1531
1721
|
}
|
|
1532
1722
|
return `<SSRNode id="${this.id}" ${e} />`;
|
|
@@ -1538,7 +1728,7 @@ var SsrNode = class {
|
|
|
1538
1728
|
|
|
1539
1729
|
var DomRef = class {
|
|
1540
1730
|
constructor(e) {
|
|
1541
|
-
this.
|
|
1731
|
+
this.Hn = e;
|
|
1542
1732
|
}
|
|
1543
1733
|
__brand__="DomRef";
|
|
1544
1734
|
};
|
|
@@ -1552,57 +1742,57 @@ var SsrComponentFrame = class {
|
|
|
1552
1742
|
scopedStyleIds=/* @__PURE__ */ new Set;
|
|
1553
1743
|
projectionScopedStyle=null;
|
|
1554
1744
|
projectionComponentFrame=null;
|
|
1555
|
-
distributeChildrenIntoSlots(e, t,
|
|
1745
|
+
distributeChildrenIntoSlots(e, t, n) {
|
|
1556
1746
|
this.projectionScopedStyle = t;
|
|
1557
|
-
this.projectionComponentFrame =
|
|
1558
|
-
if (
|
|
1747
|
+
this.projectionComponentFrame = n;
|
|
1748
|
+
if ($s(e)) {
|
|
1559
1749
|
const t = this.getSlotName(e);
|
|
1560
|
-
|
|
1750
|
+
pe(this.slots, t, e, 0);
|
|
1561
1751
|
} else if (Array.isArray(e) && e.length > 0) {
|
|
1562
1752
|
const t = [];
|
|
1563
|
-
for (let
|
|
1564
|
-
const
|
|
1565
|
-
if (
|
|
1566
|
-
const e = this.getSlotName(
|
|
1567
|
-
if (e ===
|
|
1568
|
-
t.push(
|
|
1753
|
+
for (let n = 0; n < e.length; n++) {
|
|
1754
|
+
const r = e[n];
|
|
1755
|
+
if ($s(r)) {
|
|
1756
|
+
const e = this.getSlotName(r);
|
|
1757
|
+
if (e === Ke) {
|
|
1758
|
+
t.push(r);
|
|
1569
1759
|
} else {
|
|
1570
|
-
this.updateSlot(e,
|
|
1760
|
+
this.updateSlot(e, r);
|
|
1571
1761
|
}
|
|
1572
1762
|
} else {
|
|
1573
|
-
t.push(
|
|
1763
|
+
t.push(r);
|
|
1574
1764
|
}
|
|
1575
1765
|
}
|
|
1576
|
-
t.length > 0 &&
|
|
1766
|
+
t.length > 0 && pe(this.slots, Ke, t, 0);
|
|
1577
1767
|
} else {
|
|
1578
|
-
|
|
1768
|
+
pe(this.slots, Ke, e, 0);
|
|
1579
1769
|
}
|
|
1580
1770
|
}
|
|
1581
1771
|
updateSlot(e, t) {
|
|
1582
|
-
let
|
|
1583
|
-
if (
|
|
1584
|
-
|
|
1585
|
-
} else if (Array.isArray(
|
|
1586
|
-
|
|
1772
|
+
let n = $e(this.slots, e, 0);
|
|
1773
|
+
if (n === null) {
|
|
1774
|
+
n = t;
|
|
1775
|
+
} else if (Array.isArray(n)) {
|
|
1776
|
+
n.push(t);
|
|
1587
1777
|
} else {
|
|
1588
|
-
|
|
1778
|
+
n = [ n, t ];
|
|
1589
1779
|
}
|
|
1590
|
-
|
|
1780
|
+
pe(this.slots, e, n, 0);
|
|
1591
1781
|
}
|
|
1592
1782
|
getSlotName(e) {
|
|
1593
|
-
if (e.props[
|
|
1594
|
-
return e.props[
|
|
1783
|
+
if (e.props[je]) {
|
|
1784
|
+
return e.props[je];
|
|
1595
1785
|
}
|
|
1596
|
-
return
|
|
1786
|
+
return Ke;
|
|
1597
1787
|
}
|
|
1598
1788
|
hasSlot(e) {
|
|
1599
|
-
return
|
|
1789
|
+
return me(this.slots, e, 0);
|
|
1600
1790
|
}
|
|
1601
1791
|
consumeChildrenForSlot(e, t) {
|
|
1602
|
-
const
|
|
1792
|
+
const n = mapApp_remove(this.slots, t, 0);
|
|
1603
1793
|
this.componentNode.setProp(t, e.id);
|
|
1604
1794
|
e.setProp(QSlotParent, this.componentNode.id);
|
|
1605
|
-
return
|
|
1795
|
+
return n;
|
|
1606
1796
|
}
|
|
1607
1797
|
};
|
|
1608
1798
|
|
|
@@ -2003,18 +2193,18 @@ var WRITE_ELEMENT_ATTRS = Number.MAX_SAFE_INTEGER - 2;
|
|
|
2003
2193
|
|
|
2004
2194
|
function vNodeData_incrementElementCount(e) {
|
|
2005
2195
|
const t = e.length;
|
|
2006
|
-
const
|
|
2007
|
-
if (
|
|
2196
|
+
const n = t > 1 ? e[t - 1] : 0;
|
|
2197
|
+
if (n >= 0) {
|
|
2008
2198
|
e.push(-1);
|
|
2009
2199
|
} else {
|
|
2010
|
-
e[t - 1] =
|
|
2200
|
+
e[t - 1] = n - 1;
|
|
2011
2201
|
}
|
|
2012
2202
|
}
|
|
2013
2203
|
|
|
2014
2204
|
function vNodeData_addTextSize(e, t) {
|
|
2015
|
-
const
|
|
2016
|
-
const
|
|
2017
|
-
if (
|
|
2205
|
+
const n = e.length;
|
|
2206
|
+
const r = n > 1 ? e[n - 1] : 0;
|
|
2207
|
+
if (n > 1 && r >= 0) {
|
|
2018
2208
|
e[0] |= 1 /* TEXT_DATA */;
|
|
2019
2209
|
}
|
|
2020
2210
|
e.push(t);
|
|
@@ -2037,29 +2227,29 @@ function vNodeData_openElement(e) {
|
|
|
2037
2227
|
e[0] |= 4 /* ELEMENT_NODE */;
|
|
2038
2228
|
}
|
|
2039
2229
|
|
|
2040
|
-
function vNodeData_createSsrNodeReference(e, t,
|
|
2230
|
+
function vNodeData_createSsrNodeReference(e, t, n, r, s) {
|
|
2041
2231
|
t[0] |= 8 /* REFERENCE */;
|
|
2042
2232
|
const i = [ -1 ];
|
|
2043
2233
|
let o = -1;
|
|
2044
2234
|
for (let e = 1; e < t.length; e++) {
|
|
2045
|
-
const
|
|
2046
|
-
if (typeof
|
|
2235
|
+
const n = t[e];
|
|
2236
|
+
if (typeof n === "object" && n !== null) {
|
|
2047
2237
|
o = e;
|
|
2048
2238
|
e++;
|
|
2049
2239
|
if (t[e] !== WRITE_ELEMENT_ATTRS) {
|
|
2050
2240
|
i[i.length - 1]++;
|
|
2051
2241
|
i.push(-1);
|
|
2052
2242
|
}
|
|
2053
|
-
} else if (
|
|
2243
|
+
} else if (n === CLOSE_FRAGMENT) {
|
|
2054
2244
|
i.pop();
|
|
2055
|
-
} else if (
|
|
2056
|
-
const e = 0 -
|
|
2245
|
+
} else if (n < 0) {
|
|
2246
|
+
const e = 0 - n;
|
|
2057
2247
|
i[i.length - 1] += e;
|
|
2058
2248
|
} else {
|
|
2059
2249
|
i[i.length - 1]++;
|
|
2060
2250
|
}
|
|
2061
2251
|
}
|
|
2062
|
-
let a =
|
|
2252
|
+
let a = n + "";
|
|
2063
2253
|
if (t[0] & (2 /* VIRTUAL_NODE */ | 1 /* TEXT_DATA */)) {
|
|
2064
2254
|
for (let e = 0; e < i.length; e++) {
|
|
2065
2255
|
const t = i[e];
|
|
@@ -2068,7 +2258,7 @@ function vNodeData_createSsrNodeReference(e, t, r, n, s) {
|
|
|
2068
2258
|
}
|
|
2069
2259
|
}
|
|
2070
2260
|
}
|
|
2071
|
-
return new SsrNode(e, a, o,
|
|
2261
|
+
return new SsrNode(e, a, o, r, t, s);
|
|
2072
2262
|
}
|
|
2073
2263
|
|
|
2074
2264
|
var ALPHANUMERIC = [];
|
|
@@ -2123,14 +2313,14 @@ var StringBufferWriter = class {
|
|
|
2123
2313
|
}
|
|
2124
2314
|
};
|
|
2125
2315
|
|
|
2126
|
-
var
|
|
2316
|
+
var Di = {};
|
|
2127
2317
|
|
|
2128
2318
|
var QTemplateProps = {
|
|
2129
2319
|
hidden: true,
|
|
2130
2320
|
"aria-hidden": true
|
|
2131
2321
|
};
|
|
2132
2322
|
|
|
2133
|
-
var SSRContainer = class extends
|
|
2323
|
+
var SSRContainer = class extends Au {
|
|
2134
2324
|
tag;
|
|
2135
2325
|
isHtml;
|
|
2136
2326
|
writer;
|
|
@@ -2172,17 +2362,17 @@ var SSRContainer = class extends rc {
|
|
|
2172
2362
|
componentStack=[];
|
|
2173
2363
|
cleanupQueue=[];
|
|
2174
2364
|
emitContainerDataFrame=null;
|
|
2175
|
-
|
|
2365
|
+
fe=randomStr();
|
|
2176
2366
|
// Temporary flag to find missing roots after the state was serialized
|
|
2177
2367
|
S=false;
|
|
2178
2368
|
qlInclude;
|
|
2179
2369
|
promiseAttributes=null;
|
|
2180
2370
|
constructor(e) {
|
|
2181
|
-
super(e.renderOptions.serverData ??
|
|
2371
|
+
super(e.renderOptions.serverData ?? Di, e.locale);
|
|
2182
2372
|
this.symbolToChunkResolver = e => {
|
|
2183
2373
|
const t = e.lastIndexOf("_");
|
|
2184
|
-
const
|
|
2185
|
-
return
|
|
2374
|
+
const n = this.resolvedManifest.mapper[t == -1 ? e : e.substring(t + 1)];
|
|
2375
|
+
return n ? n[1] : "";
|
|
2186
2376
|
};
|
|
2187
2377
|
this.serializationCtx = this.serializationCtxFactory(SsrNode, DomRef, this.symbolToChunkResolver, e.writer);
|
|
2188
2378
|
this.renderTimer = createTimer();
|
|
@@ -2191,10 +2381,10 @@ var SSRContainer = class extends rc {
|
|
|
2191
2381
|
this.writer = e.writer;
|
|
2192
2382
|
this.streamHandler = e.streamHandler;
|
|
2193
2383
|
this.timing = e.timing;
|
|
2194
|
-
this.
|
|
2384
|
+
this.ae = e.buildBase;
|
|
2195
2385
|
this.resolvedManifest = e.resolvedManifest;
|
|
2196
2386
|
this.renderOptions = e.renderOptions;
|
|
2197
|
-
this.
|
|
2387
|
+
this.ce = 1e5;
|
|
2198
2388
|
const t = this.renderOptions.qwikLoader;
|
|
2199
2389
|
this.qlInclude = t ? typeof t === "object" ? t.include === "never" ? 2 /* Done */ : 0 /* Module */ : t === "inline" ? 1 /* Inline */ : t === "never" ? 2 /* Done */ : 0 /* Module */ : 0 /* Module */;
|
|
2200
2390
|
if (this.qlInclude === 0 /* Module */) {
|
|
@@ -2209,15 +2399,15 @@ var SSRContainer = class extends rc {
|
|
|
2209
2399
|
handleError(e, t) {
|
|
2210
2400
|
throw e;
|
|
2211
2401
|
}
|
|
2212
|
-
addBackpatchEntry(e, t,
|
|
2213
|
-
const
|
|
2402
|
+
addBackpatchEntry(e, t, n) {
|
|
2403
|
+
const r = parseInt(e, 10);
|
|
2214
2404
|
const s = {
|
|
2215
2405
|
attrName: t,
|
|
2216
|
-
value:
|
|
2406
|
+
value: n
|
|
2217
2407
|
};
|
|
2218
|
-
const i = this.backpatchMap.get(
|
|
2408
|
+
const i = this.backpatchMap.get(r) || [];
|
|
2219
2409
|
i.push(s);
|
|
2220
|
-
this.backpatchMap.set(
|
|
2410
|
+
this.backpatchMap.set(r, i);
|
|
2221
2411
|
}
|
|
2222
2412
|
async render(e) {
|
|
2223
2413
|
this.openContainer();
|
|
@@ -2228,25 +2418,25 @@ var SSRContainer = class extends rc {
|
|
|
2228
2418
|
await this.closeContainer();
|
|
2229
2419
|
}
|
|
2230
2420
|
async renderJSX(e, t) {
|
|
2231
|
-
await
|
|
2421
|
+
await Cn(this, e, t);
|
|
2232
2422
|
}
|
|
2233
|
-
setContext(e, t,
|
|
2234
|
-
const
|
|
2235
|
-
let s =
|
|
2423
|
+
setContext(e, t, n) {
|
|
2424
|
+
const r = e;
|
|
2425
|
+
let s = r.getProp(Ie);
|
|
2236
2426
|
if (s == null) {
|
|
2237
|
-
|
|
2427
|
+
r.setProp(Ie, s = []);
|
|
2238
2428
|
}
|
|
2239
|
-
|
|
2240
|
-
this.addRoot(
|
|
2429
|
+
pe(s, t.id, n, 0, true);
|
|
2430
|
+
this.addRoot(r);
|
|
2241
2431
|
}
|
|
2242
2432
|
resolveContext(e, t) {
|
|
2243
|
-
let
|
|
2244
|
-
while (
|
|
2245
|
-
const e =
|
|
2246
|
-
if (e != null &&
|
|
2247
|
-
return
|
|
2433
|
+
let n = e;
|
|
2434
|
+
while (n) {
|
|
2435
|
+
const e = n.getProp(Ie);
|
|
2436
|
+
if (e != null && me(e, t.id, 0)) {
|
|
2437
|
+
return $e(e, t.id, 0);
|
|
2248
2438
|
}
|
|
2249
|
-
|
|
2439
|
+
n = n.parentComponent;
|
|
2250
2440
|
}
|
|
2251
2441
|
return void 0;
|
|
2252
2442
|
}
|
|
@@ -2254,13 +2444,13 @@ var SSRContainer = class extends rc {
|
|
|
2254
2444
|
const t = e;
|
|
2255
2445
|
return t.parentComponent;
|
|
2256
2446
|
}
|
|
2257
|
-
setHostProp(e, t,
|
|
2258
|
-
const
|
|
2259
|
-
return
|
|
2447
|
+
setHostProp(e, t, n) {
|
|
2448
|
+
const r = e;
|
|
2449
|
+
return r.setProp(t, n);
|
|
2260
2450
|
}
|
|
2261
2451
|
getHostProp(e, t) {
|
|
2262
|
-
const
|
|
2263
|
-
return
|
|
2452
|
+
const n = e;
|
|
2453
|
+
return n.getProp(t);
|
|
2264
2454
|
}
|
|
2265
2455
|
/**
|
|
2266
2456
|
* Renders opening tag for container. It could be a html tag for regular apps or custom element
|
|
@@ -2271,15 +2461,15 @@ var SSRContainer = class extends rc {
|
|
|
2271
2461
|
}
|
|
2272
2462
|
const e = this.renderOptions.containerAttributes || {};
|
|
2273
2463
|
const t = e[QRenderAttr];
|
|
2274
|
-
e[
|
|
2464
|
+
e[Ve] = "paused" /* PAUSED */;
|
|
2275
2465
|
e[QRuntimeAttr] = "2";
|
|
2276
|
-
e[QVersionAttr] = this.
|
|
2466
|
+
e[QVersionAttr] = this.ue ?? "dev";
|
|
2277
2467
|
e[QRenderAttr] = (t ? t + "-" : "") + (isDev7 ? "ssr-dev" : "ssr");
|
|
2278
|
-
e[
|
|
2279
|
-
e[QLocaleAttr] = this.
|
|
2468
|
+
e[ze] = this.ae || "";
|
|
2469
|
+
e[QLocaleAttr] = this.Mt;
|
|
2280
2470
|
e[QManifestHashAttr] = this.resolvedManifest.manifest.manifestHash;
|
|
2281
|
-
e[QInstanceAttr] = this.
|
|
2282
|
-
this.
|
|
2471
|
+
e[QInstanceAttr] = this.fe;
|
|
2472
|
+
this.Dt.containerAttributes = e;
|
|
2283
2473
|
this.openElement(this.tag, null, e);
|
|
2284
2474
|
if (!this.isHtml) {
|
|
2285
2475
|
this.emitContainerDataFrame = this.currentElementFrame;
|
|
@@ -2288,18 +2478,19 @@ var SSRContainer = class extends rc {
|
|
|
2288
2478
|
/** Renders closing tag for current container */ closeContainer() {
|
|
2289
2479
|
return this.closeElement();
|
|
2290
2480
|
}
|
|
2291
|
-
|
|
2481
|
+
Et=0;
|
|
2292
2482
|
/** Renders opening tag for DOM element */
|
|
2293
|
-
openElement(e, t,
|
|
2294
|
-
const a = isQwikStyleElement(e,
|
|
2483
|
+
openElement(e, t, n, r = null, s = null, i = null, o = true) {
|
|
2484
|
+
const a = isQwikStyleElement(e, n) || isQwikStyleElement(e, r);
|
|
2485
|
+
if (e === "noscript" || e === "template" || e === "script") {
|
|
2486
|
+
this.Et++;
|
|
2487
|
+
}
|
|
2295
2488
|
if (
|
|
2296
2489
|
// don't append qwik loader before qwik style elements
|
|
2297
2490
|
// it will confuse the resuming, because styles are expected to be the first nodes in subtree
|
|
2298
2491
|
!a && this.qlInclude === 1 /* Inline */) {
|
|
2299
|
-
if (this.
|
|
2492
|
+
if (this.Et === 0 && this.size > 30 * 1024 && e !== "body") {
|
|
2300
2493
|
this.emitQwikLoaderInline();
|
|
2301
|
-
} else if (e === "noscript" || e === "template") {
|
|
2302
|
-
this.C++;
|
|
2303
2494
|
}
|
|
2304
2495
|
}
|
|
2305
2496
|
let l = void 0;
|
|
@@ -2315,17 +2506,17 @@ var SSRContainer = class extends rc {
|
|
|
2315
2506
|
this.write(LT);
|
|
2316
2507
|
this.write(e);
|
|
2317
2508
|
const c = this.getOrCreateLastNode();
|
|
2318
|
-
if (
|
|
2319
|
-
l = this.writeAttrs(e,
|
|
2509
|
+
if (n) {
|
|
2510
|
+
l = this.writeAttrs(e, n, false, s, i, o);
|
|
2320
2511
|
}
|
|
2321
|
-
this.write(" " +
|
|
2512
|
+
this.write(" " + cr);
|
|
2322
2513
|
if (t !== null) {
|
|
2323
2514
|
this.write(`="${t}"`);
|
|
2324
2515
|
} else if (import.meta.env.TEST) {
|
|
2325
2516
|
this.write(EMPTY_ATTR);
|
|
2326
2517
|
}
|
|
2327
|
-
if (
|
|
2328
|
-
l = this.writeAttrs(e,
|
|
2518
|
+
if (r && !ni(r)) {
|
|
2519
|
+
l = this.writeAttrs(e, r, true, s, i, o) || l;
|
|
2329
2520
|
}
|
|
2330
2521
|
this.write(GT);
|
|
2331
2522
|
if (c) {
|
|
@@ -2338,7 +2529,7 @@ var SSRContainer = class extends rc {
|
|
|
2338
2529
|
this.emitContainerDataFrame = null;
|
|
2339
2530
|
this.onRenderDone();
|
|
2340
2531
|
const e = createTimer();
|
|
2341
|
-
return
|
|
2532
|
+
return $r($r(this.emitContainerData(), () => this._closeElement()), () => {
|
|
2342
2533
|
this.timing.snapshot = e();
|
|
2343
2534
|
});
|
|
2344
2535
|
}
|
|
@@ -2352,9 +2543,9 @@ var SSRContainer = class extends rc {
|
|
|
2352
2543
|
let e = this.cleanupQueue.pop();
|
|
2353
2544
|
while (e) {
|
|
2354
2545
|
for (let t = 0; t < e.length; t++) {
|
|
2355
|
-
const
|
|
2356
|
-
if (hasDestroy(
|
|
2357
|
-
|
|
2546
|
+
const n = e[t];
|
|
2547
|
+
if (hasDestroy(n)) {
|
|
2548
|
+
n.Cn();
|
|
2358
2549
|
}
|
|
2359
2550
|
}
|
|
2360
2551
|
e = this.cleanupQueue.pop();
|
|
@@ -2369,10 +2560,8 @@ var SSRContainer = class extends rc {
|
|
|
2369
2560
|
this.write(GT);
|
|
2370
2561
|
}
|
|
2371
2562
|
this.lastNode = null;
|
|
2372
|
-
if (
|
|
2373
|
-
|
|
2374
|
-
this.C--;
|
|
2375
|
-
}
|
|
2563
|
+
if (t === "noscript" || t === "template" || t === "script") {
|
|
2564
|
+
this.Et--;
|
|
2376
2565
|
}
|
|
2377
2566
|
}
|
|
2378
2567
|
/** Writes opening data to vNodeData for fragment boundaries */ openFragment(e) {
|
|
@@ -2391,7 +2580,7 @@ var SSRContainer = class extends rc {
|
|
|
2391
2580
|
this.openFragment(e);
|
|
2392
2581
|
const t = this.getComponentFrame();
|
|
2393
2582
|
if (t) {
|
|
2394
|
-
this.serializationCtx.
|
|
2583
|
+
this.serializationCtx.kt(t.componentNode);
|
|
2395
2584
|
t.projectionDepth++;
|
|
2396
2585
|
}
|
|
2397
2586
|
}
|
|
@@ -2415,8 +2604,8 @@ var SSRContainer = class extends rc {
|
|
|
2415
2604
|
* @returns
|
|
2416
2605
|
*/ getComponentFrame(e = 0) {
|
|
2417
2606
|
const t = this.componentStack.length;
|
|
2418
|
-
const
|
|
2419
|
-
return
|
|
2607
|
+
const n = t - e - 1;
|
|
2608
|
+
return n >= 0 ? this.componentStack[n] : null;
|
|
2420
2609
|
}
|
|
2421
2610
|
getParentComponentFrame() {
|
|
2422
2611
|
const e = this.getComponentFrame()?.projectionDepth || 0;
|
|
@@ -2432,13 +2621,13 @@ var SSRContainer = class extends rc {
|
|
|
2432
2621
|
if (e.slots.length === 0) {
|
|
2433
2622
|
return;
|
|
2434
2623
|
}
|
|
2435
|
-
this.openElement(
|
|
2624
|
+
this.openElement(Be, null, QTemplateProps, null);
|
|
2436
2625
|
const t = e.projectionScopedStyle;
|
|
2437
|
-
for (let
|
|
2438
|
-
const
|
|
2439
|
-
const s = e.slots[
|
|
2626
|
+
for (let n = 0; n < e.slots.length; n += 2) {
|
|
2627
|
+
const r = e.slots[n];
|
|
2628
|
+
const s = e.slots[n + 1];
|
|
2440
2629
|
this.openFragment(isDev7 ? {
|
|
2441
|
-
[
|
|
2630
|
+
[qe]: "P" /* Projection */ ,
|
|
2442
2631
|
[QSlotParent]: e.componentNode.id
|
|
2443
2632
|
} : {
|
|
2444
2633
|
[QSlotParent]: e.componentNode.id
|
|
@@ -2447,7 +2636,7 @@ var SSRContainer = class extends rc {
|
|
|
2447
2636
|
if (i.vnodeData) {
|
|
2448
2637
|
i.vnodeData[0] |= 16 /* SERIALIZE */;
|
|
2449
2638
|
}
|
|
2450
|
-
e.componentNode.setProp(
|
|
2639
|
+
e.componentNode.setProp(r, i.id);
|
|
2451
2640
|
await this.renderJSX(s, {
|
|
2452
2641
|
currentStyleScoped: t,
|
|
2453
2642
|
parentComponentFrame: e.projectionComponentFrame
|
|
@@ -2469,9 +2658,9 @@ var SSRContainer = class extends rc {
|
|
|
2469
2658
|
}
|
|
2470
2659
|
addRoot(e) {
|
|
2471
2660
|
if (this.S) {
|
|
2472
|
-
return this.serializationCtx.
|
|
2661
|
+
return this.serializationCtx.oe(e);
|
|
2473
2662
|
}
|
|
2474
|
-
return this.serializationCtx.
|
|
2663
|
+
return this.serializationCtx.kt(e);
|
|
2475
2664
|
}
|
|
2476
2665
|
getOrCreateLastNode() {
|
|
2477
2666
|
if (!this.lastNode) {
|
|
@@ -2481,8 +2670,8 @@ var SSRContainer = class extends rc {
|
|
|
2481
2670
|
}
|
|
2482
2671
|
return this.lastNode;
|
|
2483
2672
|
}
|
|
2484
|
-
addUnclaimedProjection(e, t,
|
|
2485
|
-
e.slots.push(t,
|
|
2673
|
+
addUnclaimedProjection(e, t, n) {
|
|
2674
|
+
e.slots.push(t, n);
|
|
2486
2675
|
}
|
|
2487
2676
|
A() {
|
|
2488
2677
|
const e = this.resolvedManifest.manifest.injections;
|
|
@@ -2490,28 +2679,28 @@ var SSRContainer = class extends rc {
|
|
|
2490
2679
|
return;
|
|
2491
2680
|
}
|
|
2492
2681
|
for (let t = 0; t < e.length; t++) {
|
|
2493
|
-
const
|
|
2494
|
-
const
|
|
2495
|
-
if (
|
|
2496
|
-
this.additionalHeadNodes.push(
|
|
2682
|
+
const n = e[t];
|
|
2683
|
+
const r = qs(n.tag, null, n.attributes || {}, null, 0, null);
|
|
2684
|
+
if (n.location === "head") {
|
|
2685
|
+
this.additionalHeadNodes.push(r);
|
|
2497
2686
|
} else {
|
|
2498
|
-
this.additionalBodyNodes.push(
|
|
2687
|
+
this.additionalBodyNodes.push(r);
|
|
2499
2688
|
}
|
|
2500
2689
|
}
|
|
2501
2690
|
}
|
|
2502
|
-
|
|
2503
|
-
if (
|
|
2691
|
+
ve(e, t, n, r) {
|
|
2692
|
+
if (r) {
|
|
2504
2693
|
const e = this.getComponentFrame(0);
|
|
2505
2694
|
e.scopedStyleIds.add(t);
|
|
2506
|
-
const
|
|
2507
|
-
this.setHostProp(
|
|
2695
|
+
const r = convertStyleIdsToString(e.scopedStyleIds);
|
|
2696
|
+
this.setHostProp(n, Ne, r);
|
|
2508
2697
|
}
|
|
2509
2698
|
if (!this.styleIds.has(t)) {
|
|
2510
2699
|
this.styleIds.add(t);
|
|
2511
2700
|
if (this.currentElementFrame?.elementName === "html") {
|
|
2512
|
-
this.additionalHeadNodes.push(
|
|
2701
|
+
this.additionalHeadNodes.push(xs("style", null, {
|
|
2513
2702
|
dangerouslySetInnerHTML: e,
|
|
2514
|
-
[
|
|
2703
|
+
[Oe]: t
|
|
2515
2704
|
}, null, 0, t));
|
|
2516
2705
|
} else {
|
|
2517
2706
|
this._styleNode(t, e);
|
|
@@ -2520,17 +2709,17 @@ var SSRContainer = class extends rc {
|
|
|
2520
2709
|
}
|
|
2521
2710
|
_styleNode(e, t) {
|
|
2522
2711
|
this.openElement("style", null, {
|
|
2523
|
-
[
|
|
2712
|
+
[Oe]: e
|
|
2524
2713
|
});
|
|
2525
2714
|
this.write(t);
|
|
2526
2715
|
this.closeElement();
|
|
2527
2716
|
}
|
|
2528
2717
|
////////////////////////////////////
|
|
2529
2718
|
emitContainerData() {
|
|
2530
|
-
return
|
|
2719
|
+
return $r(this.resolvePromiseAttributes(), () => $r(this.emitStateData(), () => {
|
|
2531
2720
|
this.S = true;
|
|
2532
2721
|
this.emitVNodeData();
|
|
2533
|
-
preloaderPost(this, this.renderOptions, this.
|
|
2722
|
+
preloaderPost(this, this.renderOptions, this.Dt?.nonce);
|
|
2534
2723
|
this.emitSyncFnsData();
|
|
2535
2724
|
this.emitPatchDataIfNeeded();
|
|
2536
2725
|
this.emitExecutorIfNeeded();
|
|
@@ -2555,7 +2744,7 @@ var SSRContainer = class extends rc {
|
|
|
2555
2744
|
* NOTE: Not every element will need vNodeData. So we need to encode how many elements should be
|
|
2556
2745
|
* skipped. By choosing different separators we can encode different numbers of elements to skip.
|
|
2557
2746
|
*/ emitVNodeData() {
|
|
2558
|
-
if (!this.serializationCtx.
|
|
2747
|
+
if (!this.serializationCtx.Qn.length) {
|
|
2559
2748
|
return;
|
|
2560
2749
|
}
|
|
2561
2750
|
this.openElement("script", null, {
|
|
@@ -2563,35 +2752,35 @@ var SSRContainer = class extends rc {
|
|
|
2563
2752
|
});
|
|
2564
2753
|
const e = [];
|
|
2565
2754
|
const t = this.vNodeDatas;
|
|
2566
|
-
let
|
|
2567
|
-
for (let
|
|
2568
|
-
const s = t[
|
|
2755
|
+
let n = 0;
|
|
2756
|
+
for (let r = 0; r < t.length; r++) {
|
|
2757
|
+
const s = t[r];
|
|
2569
2758
|
const i = s[0];
|
|
2570
2759
|
if (i & 16 /* SERIALIZE */) {
|
|
2571
|
-
|
|
2760
|
+
n = this.emitVNodeSeparators(n, r);
|
|
2572
2761
|
if (i & 8 /* REFERENCE */) {
|
|
2573
2762
|
this.write(VNodeDataSeparator.REFERENCE_CH);
|
|
2574
2763
|
}
|
|
2575
2764
|
if (i & (1 /* TEXT_DATA */ | 2 /* VIRTUAL_NODE */ | 4 /* ELEMENT_NODE */)) {
|
|
2576
2765
|
let t = null;
|
|
2577
|
-
let
|
|
2578
|
-
for (let
|
|
2579
|
-
const i = s[
|
|
2766
|
+
let n = 0;
|
|
2767
|
+
for (let r = 1; r < s.length; r++) {
|
|
2768
|
+
const i = s[r];
|
|
2580
2769
|
if (typeof i === "object" && i !== null) {
|
|
2581
2770
|
e.push(t);
|
|
2582
2771
|
t = i;
|
|
2583
2772
|
} else if (i === OPEN_FRAGMENT) {
|
|
2584
|
-
|
|
2773
|
+
n++;
|
|
2585
2774
|
this.write(VNodeDataChar.OPEN_CHAR);
|
|
2586
2775
|
} else if (i === CLOSE_FRAGMENT) {
|
|
2587
2776
|
if (t) {
|
|
2588
2777
|
this.writeFragmentAttrs(t);
|
|
2589
2778
|
t = e.pop();
|
|
2590
2779
|
}
|
|
2591
|
-
|
|
2780
|
+
n--;
|
|
2592
2781
|
this.write(VNodeDataChar.CLOSE_CHAR);
|
|
2593
2782
|
} else if (i === WRITE_ELEMENT_ATTRS) {
|
|
2594
|
-
if (t && !
|
|
2783
|
+
if (t && !ni(t)) {
|
|
2595
2784
|
this.write(VNodeDataChar.SEPARATOR_CHAR);
|
|
2596
2785
|
this.write(VNodeDataChar.SEPARATOR_CHAR);
|
|
2597
2786
|
this.writeFragmentAttrs(t);
|
|
@@ -2605,7 +2794,7 @@ var SSRContainer = class extends rc {
|
|
|
2605
2794
|
this.write(String(0 - i));
|
|
2606
2795
|
}
|
|
2607
2796
|
}
|
|
2608
|
-
while (
|
|
2797
|
+
while (n-- > 0) {
|
|
2609
2798
|
if (t) {
|
|
2610
2799
|
this.writeFragmentAttrs(t);
|
|
2611
2800
|
t = e.pop();
|
|
@@ -2619,21 +2808,21 @@ var SSRContainer = class extends rc {
|
|
|
2619
2808
|
}
|
|
2620
2809
|
writeFragmentAttrs(e) {
|
|
2621
2810
|
for (const t in e) {
|
|
2622
|
-
let
|
|
2623
|
-
let
|
|
2624
|
-
if (typeof
|
|
2625
|
-
const e = this.addRoot(
|
|
2811
|
+
let n = e[t];
|
|
2812
|
+
let r = false;
|
|
2813
|
+
if (typeof n !== "string") {
|
|
2814
|
+
const e = this.addRoot(n);
|
|
2626
2815
|
if (e === void 0) {
|
|
2627
2816
|
continue;
|
|
2628
2817
|
}
|
|
2629
|
-
|
|
2818
|
+
n = String(e);
|
|
2630
2819
|
}
|
|
2631
2820
|
switch (t) {
|
|
2632
|
-
case
|
|
2821
|
+
case Ne:
|
|
2633
2822
|
this.write(VNodeDataChar.SCOPED_STYLE_CHAR);
|
|
2634
2823
|
break;
|
|
2635
2824
|
|
|
2636
|
-
case
|
|
2825
|
+
case Ee:
|
|
2637
2826
|
this.write(VNodeDataChar.RENDER_FN_CHAR);
|
|
2638
2827
|
break;
|
|
2639
2828
|
|
|
@@ -2641,24 +2830,24 @@ var SSRContainer = class extends rc {
|
|
|
2641
2830
|
this.write(VNodeDataChar.ID_CHAR);
|
|
2642
2831
|
break;
|
|
2643
2832
|
|
|
2644
|
-
case
|
|
2833
|
+
case tr:
|
|
2645
2834
|
this.write(VNodeDataChar.PROPS_CHAR);
|
|
2646
2835
|
break;
|
|
2647
2836
|
|
|
2648
|
-
case
|
|
2649
|
-
|
|
2837
|
+
case Ze:
|
|
2838
|
+
r = true;
|
|
2650
2839
|
this.write(VNodeDataChar.KEY_CHAR);
|
|
2651
2840
|
break;
|
|
2652
2841
|
|
|
2653
|
-
case
|
|
2842
|
+
case nr:
|
|
2654
2843
|
this.write(VNodeDataChar.SEQ_CHAR);
|
|
2655
2844
|
break;
|
|
2656
2845
|
|
|
2657
|
-
case
|
|
2846
|
+
case er:
|
|
2658
2847
|
this.write(VNodeDataChar.SEQ_IDX_CHAR);
|
|
2659
2848
|
break;
|
|
2660
2849
|
|
|
2661
|
-
case
|
|
2850
|
+
case Fe:
|
|
2662
2851
|
this.write(VNodeDataChar.BACK_REFS_CHAR);
|
|
2663
2852
|
break;
|
|
2664
2853
|
|
|
@@ -2667,40 +2856,40 @@ var SSRContainer = class extends rc {
|
|
|
2667
2856
|
break;
|
|
2668
2857
|
|
|
2669
2858
|
// Skipping `\` character for now because it is used for escaping.
|
|
2670
|
-
case
|
|
2859
|
+
case Ie:
|
|
2671
2860
|
this.write(VNodeDataChar.CONTEXT_CHAR);
|
|
2672
2861
|
break;
|
|
2673
2862
|
|
|
2674
|
-
case
|
|
2863
|
+
case je:
|
|
2675
2864
|
this.write(VNodeDataChar.SLOT_CHAR);
|
|
2676
2865
|
break;
|
|
2677
2866
|
|
|
2678
2867
|
default:
|
|
2679
2868
|
{
|
|
2680
|
-
|
|
2869
|
+
r = true;
|
|
2681
2870
|
this.write(VNodeDataChar.SEPARATOR_CHAR);
|
|
2682
2871
|
this.write(encodeVNodeDataString(t));
|
|
2683
2872
|
this.write(VNodeDataChar.SEPARATOR_CHAR);
|
|
2684
2873
|
}
|
|
2685
2874
|
}
|
|
2686
|
-
const s = encodeVNodeDataString(
|
|
2687
|
-
const i =
|
|
2875
|
+
const s = encodeVNodeDataString(r ? encodeURI(n) : n);
|
|
2876
|
+
const i = r ? s !== n : false;
|
|
2688
2877
|
if (i) {
|
|
2689
2878
|
this.write(VNodeDataChar.SEPARATOR_CHAR);
|
|
2690
2879
|
this.write(s);
|
|
2691
2880
|
this.write(VNodeDataChar.SEPARATOR_CHAR);
|
|
2692
2881
|
} else {
|
|
2693
|
-
this.write(
|
|
2882
|
+
this.write(n);
|
|
2694
2883
|
}
|
|
2695
2884
|
}
|
|
2696
2885
|
}
|
|
2697
2886
|
emitStateData() {
|
|
2698
|
-
if (!this.serializationCtx.
|
|
2887
|
+
if (!this.serializationCtx.Qn.length) {
|
|
2699
2888
|
return;
|
|
2700
2889
|
}
|
|
2701
2890
|
const e = this.stateScriptAttrs();
|
|
2702
2891
|
this.openElement("script", null, e);
|
|
2703
|
-
return
|
|
2892
|
+
return $r(this.serializationCtx._t(), () => {
|
|
2704
2893
|
this.closeElement();
|
|
2705
2894
|
});
|
|
2706
2895
|
}
|
|
@@ -2708,14 +2897,14 @@ var SSRContainer = class extends rc {
|
|
|
2708
2897
|
const e = {
|
|
2709
2898
|
type: "qwik/state"
|
|
2710
2899
|
};
|
|
2711
|
-
const t = this.serializationCtx.
|
|
2900
|
+
const t = this.serializationCtx.Ct;
|
|
2712
2901
|
if (t.size > 0) {
|
|
2713
|
-
e["q-d:qidle"] =
|
|
2902
|
+
e["q-d:qidle"] = Gc(null, "_res", w, null, [ ...t ]);
|
|
2714
2903
|
}
|
|
2715
2904
|
return e;
|
|
2716
2905
|
}
|
|
2717
2906
|
emitSyncFnsData() {
|
|
2718
|
-
const e = this.serializationCtx.
|
|
2907
|
+
const e = this.serializationCtx.re;
|
|
2719
2908
|
if (e.length) {
|
|
2720
2909
|
const t = {
|
|
2721
2910
|
"q:func": "qwik/json"
|
|
@@ -2724,18 +2913,19 @@ var SSRContainer = class extends rc {
|
|
|
2724
2913
|
t["nonce"] = this.renderOptions.serverData.nonce;
|
|
2725
2914
|
}
|
|
2726
2915
|
this.openElement("script", null, t);
|
|
2727
|
-
this.write(Q_FUNCS_PREFIX.replace("HASH", this.
|
|
2916
|
+
this.write(Q_FUNCS_PREFIX.replace("HASH", this.fe));
|
|
2728
2917
|
this.write(BRACKET_OPEN);
|
|
2729
|
-
this.writeArray(e,
|
|
2918
|
+
this.writeArray(e, ei);
|
|
2730
2919
|
this.write(BRACKET_CLOSE);
|
|
2731
2920
|
this.closeElement();
|
|
2732
2921
|
}
|
|
2733
2922
|
}
|
|
2734
2923
|
emitPatchDataIfNeeded() {
|
|
2735
2924
|
const e = [];
|
|
2736
|
-
for (const [t,
|
|
2737
|
-
for (
|
|
2738
|
-
|
|
2925
|
+
for (const [t, n] of this.backpatchMap) {
|
|
2926
|
+
for (let r = 0; r < n.length; r++) {
|
|
2927
|
+
const s = n[r];
|
|
2928
|
+
e.push(t, s.attrName, Dl(s.value) ? s.value.untrackedValue : s.value);
|
|
2739
2929
|
}
|
|
2740
2930
|
}
|
|
2741
2931
|
this.backpatchMap.clear();
|
|
@@ -2773,31 +2963,31 @@ var SSRContainer = class extends rc {
|
|
|
2773
2963
|
preloaderPre(this, this.renderOptions.preloader, this.renderOptions.serverData?.nonce);
|
|
2774
2964
|
}
|
|
2775
2965
|
isStatic() {
|
|
2776
|
-
return this.serializationCtx.
|
|
2966
|
+
return this.serializationCtx.jt.size === 0;
|
|
2777
2967
|
}
|
|
2778
2968
|
emitQwikLoaderAtTopIfNeeded() {
|
|
2779
2969
|
if (this.qlInclude === 0 /* Module */) {
|
|
2780
2970
|
this.qlInclude = 2 /* Done */;
|
|
2781
|
-
const e = this.
|
|
2971
|
+
const e = this.ae + this.resolvedManifest.manifest.qwikLoader;
|
|
2782
2972
|
const t = {
|
|
2783
2973
|
rel: "modulepreload",
|
|
2784
2974
|
href: e
|
|
2785
2975
|
};
|
|
2786
|
-
const
|
|
2787
|
-
if (
|
|
2788
|
-
t["nonce"] =
|
|
2976
|
+
const n = this.renderOptions.serverData?.nonce;
|
|
2977
|
+
if (n) {
|
|
2978
|
+
t["nonce"] = n;
|
|
2789
2979
|
}
|
|
2790
2980
|
this.openElement("link", null, t);
|
|
2791
2981
|
this.closeElement();
|
|
2792
|
-
const
|
|
2982
|
+
const r = {
|
|
2793
2983
|
async: true,
|
|
2794
2984
|
type: "module",
|
|
2795
2985
|
src: e
|
|
2796
2986
|
};
|
|
2797
|
-
if (
|
|
2798
|
-
|
|
2987
|
+
if (n) {
|
|
2988
|
+
r["nonce"] = n;
|
|
2799
2989
|
}
|
|
2800
|
-
this.openElement("script", null,
|
|
2990
|
+
this.openElement("script", null, r);
|
|
2801
2991
|
this.closeElement();
|
|
2802
2992
|
}
|
|
2803
2993
|
}
|
|
@@ -2823,89 +3013,90 @@ var SSRContainer = class extends rc {
|
|
|
2823
3013
|
if (this.qlInclude !== 2 /* Done */) {
|
|
2824
3014
|
this.emitQwikLoaderInline();
|
|
2825
3015
|
}
|
|
2826
|
-
this.emitQwikEvents(Array.from(this.serializationCtx.
|
|
3016
|
+
this.emitQwikEvents(Array.from(this.serializationCtx.Pt, e => JSON.stringify(e)));
|
|
2827
3017
|
}
|
|
2828
3018
|
}
|
|
2829
3019
|
emitQwikEvents(e) {
|
|
2830
3020
|
if (e.length > 0) {
|
|
2831
3021
|
const t = {};
|
|
2832
|
-
const
|
|
2833
|
-
if (
|
|
2834
|
-
t["nonce"] =
|
|
3022
|
+
const n = this.renderOptions.serverData?.nonce;
|
|
3023
|
+
if (n) {
|
|
3024
|
+
t["nonce"] = n;
|
|
2835
3025
|
}
|
|
2836
3026
|
this.openElement("script", null, t);
|
|
2837
3027
|
this.write(`(window._qwikEv||(window._qwikEv=[])).push(`);
|
|
2838
|
-
this.writeArray(e,
|
|
3028
|
+
this.writeArray(e, ei);
|
|
2839
3029
|
this.write(PAREN_CLOSE);
|
|
2840
3030
|
this.closeElement();
|
|
2841
3031
|
}
|
|
2842
3032
|
}
|
|
2843
3033
|
// Keep in sync with process-vnode-data.unit.ts
|
|
2844
3034
|
emitVNodeSeparators(e, t) {
|
|
2845
|
-
let
|
|
2846
|
-
while (
|
|
2847
|
-
if (
|
|
3035
|
+
let n = t - e;
|
|
3036
|
+
while (n != 0) {
|
|
3037
|
+
if (n >= 8192) {
|
|
2848
3038
|
this.write(VNodeDataSeparator.ADVANCE_8192_CH);
|
|
2849
|
-
|
|
3039
|
+
n -= 8192;
|
|
2850
3040
|
} else {
|
|
2851
|
-
|
|
2852
|
-
|
|
2853
|
-
|
|
2854
|
-
|
|
2855
|
-
|
|
2856
|
-
|
|
2857
|
-
|
|
2858
|
-
|
|
2859
|
-
|
|
2860
|
-
|
|
2861
|
-
|
|
2862
|
-
|
|
2863
|
-
|
|
2864
|
-
|
|
3041
|
+
n & 4096 && this.write(VNodeDataSeparator.ADVANCE_4096_CH);
|
|
3042
|
+
n & 2048 && this.write(VNodeDataSeparator.ADVANCE_2048_CH);
|
|
3043
|
+
n & 1024 && this.write(VNodeDataSeparator.ADVANCE_1024_CH);
|
|
3044
|
+
n & 512 && this.write(VNodeDataSeparator.ADVANCE_512_CH);
|
|
3045
|
+
n & 256 && this.write(VNodeDataSeparator.ADVANCE_256_CH);
|
|
3046
|
+
n & 128 && this.write(VNodeDataSeparator.ADVANCE_128_CH);
|
|
3047
|
+
n & 64 && this.write(VNodeDataSeparator.ADVANCE_64_CH);
|
|
3048
|
+
n & 32 && this.write(VNodeDataSeparator.ADVANCE_32_CH);
|
|
3049
|
+
n & 16 && this.write(VNodeDataSeparator.ADVANCE_16_CH);
|
|
3050
|
+
n & 8 && this.write(VNodeDataSeparator.ADVANCE_8_CH);
|
|
3051
|
+
n & 4 && this.write(VNodeDataSeparator.ADVANCE_4_CH);
|
|
3052
|
+
n & 2 && this.write(VNodeDataSeparator.ADVANCE_2_CH);
|
|
3053
|
+
n & 1 && this.write(VNodeDataSeparator.ADVANCE_1_CH);
|
|
3054
|
+
n = 0;
|
|
2865
3055
|
}
|
|
2866
3056
|
}
|
|
2867
3057
|
return t;
|
|
2868
3058
|
}
|
|
2869
|
-
createAndPushFrame(e, t,
|
|
2870
|
-
let
|
|
3059
|
+
createAndPushFrame(e, t, n) {
|
|
3060
|
+
let r = 10 /* ANYTHING */;
|
|
2871
3061
|
if (isDev7) {
|
|
2872
3062
|
if (!this.currentElementFrame) {
|
|
2873
|
-
|
|
3063
|
+
r = initialTag(e);
|
|
2874
3064
|
} else {
|
|
2875
3065
|
let t = this.currentElementFrame;
|
|
2876
3066
|
const s = t.tagNesting;
|
|
2877
|
-
|
|
2878
|
-
if (
|
|
2879
|
-
const
|
|
3067
|
+
r = isTagAllowed(s, e);
|
|
3068
|
+
if (r === 0 /* NOT_ALLOWED */) {
|
|
3069
|
+
const r = [];
|
|
2880
3070
|
while (t) {
|
|
2881
|
-
|
|
3071
|
+
r.unshift(t);
|
|
2882
3072
|
t = t.parent;
|
|
2883
3073
|
}
|
|
2884
3074
|
const i = [];
|
|
2885
|
-
if (
|
|
2886
|
-
i.push(`Error found in file: ${
|
|
3075
|
+
if (n) {
|
|
3076
|
+
i.push(`Error found in file: ${n}`);
|
|
2887
3077
|
}
|
|
2888
3078
|
i.push(`HTML rules do not allow '<${e}>' at this location.`, ` (The HTML parser will try to recover by auto-closing or inserting additional tags which will confuse Qwik when it resumes.)`, ` Offending tag: <${e}>`, ` Existing tag context:`);
|
|
2889
3079
|
let o = " ";
|
|
2890
3080
|
let a = "";
|
|
2891
|
-
for (
|
|
2892
|
-
const
|
|
2893
|
-
|
|
2894
|
-
a
|
|
3081
|
+
for (let e = 0; e < r.length; e++) {
|
|
3082
|
+
const t = r[e];
|
|
3083
|
+
const [n, s] = allowedContent(t.tagNesting);
|
|
3084
|
+
i.push(`${o}<${t.elementName}>${a !== n ? ` [${n}]${s ? ` -> ${s}` : ""}` : ""}`);
|
|
3085
|
+
a = n;
|
|
2895
3086
|
o += " ";
|
|
2896
3087
|
}
|
|
2897
3088
|
i.push(`${o}<${e}> <= is not allowed as a child of ${allowedContent(s)[0]}.`);
|
|
2898
|
-
throw newTagError(i.join("\n"));
|
|
3089
|
+
throw newTagError(i.map(escapeHTML).join("\n"));
|
|
2899
3090
|
}
|
|
2900
3091
|
}
|
|
2901
3092
|
}
|
|
2902
3093
|
const s = {
|
|
2903
|
-
tagNesting:
|
|
3094
|
+
tagNesting: r,
|
|
2904
3095
|
parent: this.currentElementFrame,
|
|
2905
3096
|
elementName: e,
|
|
2906
3097
|
depthFirstElementIdx: t,
|
|
2907
3098
|
vNodeData: [ 0 /* NONE */ ],
|
|
2908
|
-
currentFile: isDev7 ?
|
|
3099
|
+
currentFile: isDev7 ? n || null : null
|
|
2909
3100
|
};
|
|
2910
3101
|
this.currentElementFrame = s;
|
|
2911
3102
|
this.vNodeDatas.push(s.vNodeData);
|
|
@@ -2921,12 +3112,12 @@ var SSRContainer = class extends rc {
|
|
|
2921
3112
|
this.writer.write(e);
|
|
2922
3113
|
}
|
|
2923
3114
|
writeArray(e, t) {
|
|
2924
|
-
for (let
|
|
2925
|
-
const
|
|
2926
|
-
if (
|
|
3115
|
+
for (let n = 0; n < e.length; n++) {
|
|
3116
|
+
const r = e[n];
|
|
3117
|
+
if (n > 0) {
|
|
2927
3118
|
this.write(t);
|
|
2928
3119
|
}
|
|
2929
|
-
this.write(
|
|
3120
|
+
this.write(r);
|
|
2930
3121
|
}
|
|
2931
3122
|
}
|
|
2932
3123
|
writeAttrs(e, t, s, i, o, a) {
|
|
@@ -2935,16 +3126,16 @@ var SSRContainer = class extends rc {
|
|
|
2935
3126
|
let u = t[c];
|
|
2936
3127
|
if (isSSRUnsafeAttr(c)) {
|
|
2937
3128
|
if (isDev7) {
|
|
2938
|
-
throw
|
|
3129
|
+
throw Se(32 /* unsafeAttr */ , [ c ]);
|
|
2939
3130
|
}
|
|
2940
3131
|
continue;
|
|
2941
3132
|
}
|
|
2942
|
-
if (
|
|
3133
|
+
if (br(c)) {
|
|
2943
3134
|
u = _setEvent(this.serializationCtx, c, u, a);
|
|
2944
3135
|
} else if (c === "ref") {
|
|
2945
3136
|
const e = this.getOrCreateLastNode();
|
|
2946
|
-
if (
|
|
2947
|
-
u.
|
|
3137
|
+
if (Dl(u)) {
|
|
3138
|
+
u.Zt = new DomRef(e);
|
|
2948
3139
|
continue;
|
|
2949
3140
|
} else if (typeof u === "function") {
|
|
2950
3141
|
u(new DomRef(e));
|
|
@@ -2952,20 +3143,20 @@ var SSRContainer = class extends rc {
|
|
|
2952
3143
|
} else if (u == null) {
|
|
2953
3144
|
continue;
|
|
2954
3145
|
} else {
|
|
2955
|
-
throw
|
|
3146
|
+
throw Se(15 /* invalidRefValue */ , [ o ]);
|
|
2956
3147
|
}
|
|
2957
|
-
} else if (c ===
|
|
2958
|
-
u = this.serializationCtx.
|
|
2959
|
-
} else if (
|
|
3148
|
+
} else if (c === rr || c === ir) {
|
|
3149
|
+
u = this.serializationCtx.kt(u);
|
|
3150
|
+
} else if (Dl(u)) {
|
|
2960
3151
|
const e = this.getOrCreateLastNode();
|
|
2961
|
-
const t = new
|
|
2962
|
-
|
|
2963
|
-
|
|
3152
|
+
const t = new fs({
|
|
3153
|
+
M: i,
|
|
3154
|
+
et: s
|
|
2964
3155
|
});
|
|
2965
3156
|
const r = u;
|
|
2966
3157
|
u = n(() => this.trackSignalValue(r, e, c, t));
|
|
2967
3158
|
}
|
|
2968
|
-
if (
|
|
3159
|
+
if (dr(u)) {
|
|
2969
3160
|
const e = this.getOrCreateLastNode();
|
|
2970
3161
|
this.addPromiseAttribute(u);
|
|
2971
3162
|
u.then(t => {
|
|
@@ -2973,10 +3164,10 @@ var SSRContainer = class extends rc {
|
|
|
2973
3164
|
});
|
|
2974
3165
|
continue;
|
|
2975
3166
|
}
|
|
2976
|
-
if (c ===
|
|
3167
|
+
if (c === fr) {
|
|
2977
3168
|
if (u) {
|
|
2978
3169
|
l = String(u);
|
|
2979
|
-
c =
|
|
3170
|
+
c = Ve;
|
|
2980
3171
|
u = "html" /* HTML */;
|
|
2981
3172
|
}
|
|
2982
3173
|
if (e === "style") {
|
|
@@ -2988,17 +3179,17 @@ var SSRContainer = class extends rc {
|
|
|
2988
3179
|
if (e === "textarea" && c === "value") {
|
|
2989
3180
|
if (u && typeof u !== "string") {
|
|
2990
3181
|
if (isDev7) {
|
|
2991
|
-
throw
|
|
3182
|
+
throw Se(23 /* wrongTextareaValue */ , [ o, u ]);
|
|
2992
3183
|
}
|
|
2993
3184
|
continue;
|
|
2994
3185
|
}
|
|
2995
3186
|
l = escapeHTML(u || "");
|
|
2996
|
-
c =
|
|
3187
|
+
c = Ve;
|
|
2997
3188
|
u = "text" /* TEXT */;
|
|
2998
3189
|
}
|
|
2999
3190
|
const d = r(c, u, i);
|
|
3000
3191
|
if (d != null && d !== false) {
|
|
3001
|
-
this.write(
|
|
3192
|
+
this.write(Lf);
|
|
3002
3193
|
this.write(c);
|
|
3003
3194
|
if (d !== true) {
|
|
3004
3195
|
this.write(ATTR_EQUALS_QUOTE);
|
|
@@ -3024,23 +3215,23 @@ var SSRContainer = class extends rc {
|
|
|
3024
3215
|
|
|
3025
3216
|
var isQwikStyleElement = (e, t) => {
|
|
3026
3217
|
if (e === "style" && t != null) {
|
|
3027
|
-
return Object.prototype.hasOwnProperty.call(t,
|
|
3218
|
+
return Object.prototype.hasOwnProperty.call(t, Oe) || Object.prototype.hasOwnProperty.call(t, Ne);
|
|
3028
3219
|
}
|
|
3029
3220
|
return false;
|
|
3030
3221
|
};
|
|
3031
3222
|
|
|
3032
3223
|
function newTagError(e) {
|
|
3033
|
-
return
|
|
3224
|
+
return Se(12 /* tagError */ , [ e ]);
|
|
3034
3225
|
}
|
|
3035
3226
|
|
|
3036
3227
|
function hasDestroy(e) {
|
|
3037
|
-
return e && typeof e === "object" && typeof e.
|
|
3228
|
+
return e && typeof e === "object" && typeof e.Cn === "function";
|
|
3038
3229
|
}
|
|
3039
3230
|
|
|
3040
3231
|
function isSSRUnsafeAttr(e) {
|
|
3041
3232
|
for (let t = 0; t < e.length; t++) {
|
|
3042
|
-
const
|
|
3043
|
-
if (
|
|
3233
|
+
const n = e.charCodeAt(t);
|
|
3234
|
+
if (n === 62 || n === 47 || n === 61 || n === 34 || n === 39 || n === 9 || n === 10 || n === 12 || n === 32) {
|
|
3044
3235
|
return true;
|
|
3045
3236
|
}
|
|
3046
3237
|
}
|
|
@@ -3052,9 +3243,9 @@ function randomStr() {
|
|
|
3052
3243
|
}
|
|
3053
3244
|
|
|
3054
3245
|
function addPreventDefaultEventToSerializationContext(e, t) {
|
|
3055
|
-
const
|
|
3056
|
-
if (
|
|
3057
|
-
e.
|
|
3246
|
+
const n = "e" + t.substring(14);
|
|
3247
|
+
if (n) {
|
|
3248
|
+
e.Pt.add(n);
|
|
3058
3249
|
}
|
|
3059
3250
|
}
|
|
3060
3251
|
|
|
@@ -3116,8 +3307,8 @@ var StreamHandler = class {
|
|
|
3116
3307
|
default:
|
|
3117
3308
|
case "auto":
|
|
3118
3309
|
{
|
|
3119
|
-
const
|
|
3120
|
-
const
|
|
3310
|
+
const n = this.inOrderStreaming.maximumChunk ?? 0;
|
|
3311
|
+
const r = this.inOrderStreaming.maximumInitialChunk ?? 0;
|
|
3121
3312
|
t = {
|
|
3122
3313
|
write(t) {
|
|
3123
3314
|
if (t === void 0 || t === null) {
|
|
@@ -3125,7 +3316,7 @@ var StreamHandler = class {
|
|
|
3125
3316
|
}
|
|
3126
3317
|
e.enqueue(t);
|
|
3127
3318
|
if (e.streamBlockDepth === 0) {
|
|
3128
|
-
const t = e.networkFlushes === 0 ?
|
|
3319
|
+
const t = e.networkFlushes === 0 ? r : n;
|
|
3129
3320
|
if (e.bufferSize >= t) {
|
|
3130
3321
|
e.flush();
|
|
3131
3322
|
}
|
|
@@ -3175,42 +3366,42 @@ var StreamHandler = class {
|
|
|
3175
3366
|
|
|
3176
3367
|
// packages/qwik/src/server/ssr-render.ts
|
|
3177
3368
|
var renderToString = async (e, t = {}) => {
|
|
3178
|
-
const
|
|
3179
|
-
const
|
|
3369
|
+
const n = [];
|
|
3370
|
+
const r = {
|
|
3180
3371
|
write(e) {
|
|
3181
|
-
|
|
3372
|
+
n.push(e);
|
|
3182
3373
|
}
|
|
3183
3374
|
};
|
|
3184
3375
|
const s = await renderToStream(e, {
|
|
3185
3376
|
...t,
|
|
3186
|
-
stream:
|
|
3377
|
+
stream: r
|
|
3187
3378
|
});
|
|
3188
3379
|
return {
|
|
3189
3380
|
isStatic: s.isStatic,
|
|
3190
3381
|
timing: s.timing,
|
|
3191
3382
|
manifest: s.manifest,
|
|
3192
3383
|
snapshotResult: s.snapshotResult,
|
|
3193
|
-
html:
|
|
3384
|
+
html: n.join("")
|
|
3194
3385
|
};
|
|
3195
3386
|
};
|
|
3196
3387
|
|
|
3197
3388
|
var renderToStream = async (e, t) => {
|
|
3198
|
-
const
|
|
3389
|
+
const n = {
|
|
3199
3390
|
firstFlush: 0,
|
|
3200
3391
|
render: 0,
|
|
3201
3392
|
snapshot: 0
|
|
3202
3393
|
};
|
|
3203
|
-
const
|
|
3394
|
+
const r = t.containerTagName ?? "html";
|
|
3204
3395
|
const s = getBuildBase(t);
|
|
3205
3396
|
const i = resolveManifest(t.manifest);
|
|
3206
3397
|
const o = typeof t.locale === "function" ? t.locale(t) : t.serverData?.locale || t.locale || t.containerAttributes?.locale || "";
|
|
3207
|
-
const a = new StreamHandler(t,
|
|
3398
|
+
const a = new StreamHandler(t, n);
|
|
3208
3399
|
const l = ssrCreateContainer({
|
|
3209
|
-
tagName:
|
|
3400
|
+
tagName: r,
|
|
3210
3401
|
locale: o,
|
|
3211
3402
|
writer: a.stream,
|
|
3212
3403
|
streamHandler: a,
|
|
3213
|
-
timing:
|
|
3404
|
+
timing: n,
|
|
3214
3405
|
buildBase: s,
|
|
3215
3406
|
resolvedManifest: i,
|
|
3216
3407
|
renderOptions: t
|
|
@@ -3224,7 +3415,7 @@ var renderToStream = async (e, t) => {
|
|
|
3224
3415
|
manifest: i?.manifest,
|
|
3225
3416
|
size: l.size,
|
|
3226
3417
|
isStatic: false,
|
|
3227
|
-
timing:
|
|
3418
|
+
timing: n
|
|
3228
3419
|
};
|
|
3229
3420
|
return c;
|
|
3230
3421
|
};
|
|
@@ -3239,9 +3430,10 @@ function resolveManifest(e) {
|
|
|
3239
3430
|
}
|
|
3240
3431
|
if (t.mapping) {
|
|
3241
3432
|
const e = {};
|
|
3242
|
-
|
|
3243
|
-
|
|
3244
|
-
|
|
3433
|
+
for (const n in t.mapping) {
|
|
3434
|
+
const r = t.mapping[n];
|
|
3435
|
+
e[getSymbolHash2(n)] = [ n, r ];
|
|
3436
|
+
}
|
|
3245
3437
|
return {
|
|
3246
3438
|
mapper: e,
|
|
3247
3439
|
manifest: t,
|
|
@@ -3255,7 +3447,7 @@ var Q_FUNCS_PREFIX = 'document["qFuncs_HASH"]=';
|
|
|
3255
3447
|
|
|
3256
3448
|
// packages/qwik/src/server/index.ts
|
|
3257
3449
|
async function setServerPlatform2(e) {
|
|
3258
|
-
const t =
|
|
3450
|
+
const t = createPlatform2({
|
|
3259
3451
|
manifest: e
|
|
3260
3452
|
}, resolveManifest(e));
|
|
3261
3453
|
setPlatform2(t);
|