@qwik.dev/core 2.0.0-beta.25 → 2.0.0-beta.27
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/bindings/qwik.darwin-arm64.node +0 -0
- package/bindings/qwik.linux-x64-gnu.node +0 -0
- package/bindings/qwik.win32-x64-msvc.node +0 -0
- package/bindings/qwik_wasm_bg.wasm +0 -0
- package/dist/backpatch/package.json +1 -1
- package/dist/build/package.json +1 -1
- package/dist/cli.mjs +2 -2
- package/dist/core-internal.d.ts +14 -5
- package/dist/core.min.mjs +1 -1
- package/dist/core.mjs +525 -460
- package/dist/core.mjs.map +1 -1
- package/dist/core.prod.mjs +6068 -6041
- package/dist/insights/index.qwik.mjs +80 -57
- package/dist/loader/package.json +1 -1
- package/dist/optimizer.mjs +320 -319
- package/dist/preloader.mjs +86 -86
- package/dist/server.mjs +30 -36
- package/dist/server.prod.mjs +3263 -0
- package/dist/starters/adapters/fastify/package.json +1 -1
- package/dist/testing/index.d.ts +10 -1
- package/dist/testing/index.mjs +624 -613
- package/dist/testing/package.json +1 -1
- package/package.json +8 -4
package/dist/testing/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license
|
|
3
|
-
* @qwik.dev/core/testing 2.0.0-beta.
|
|
3
|
+
* @qwik.dev/core/testing 2.0.0-beta.27-dev+7fc6984
|
|
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
|
|
@@ -23645,18 +23645,19 @@ import { _isJSXNode, _isStringifiable } from "@qwik.dev/core/internal";
|
|
|
23645
23645
|
import { expect } from "vitest";
|
|
23646
23646
|
|
|
23647
23647
|
// packages/qwik/src/core/client/vnode-utils.ts
|
|
23648
|
-
import { isDev as
|
|
23648
|
+
import { isDev as isDev25 } from "@qwik.dev/core/build";
|
|
23649
23649
|
|
|
23650
23650
|
// packages/qwik/src/core/shared/error/assert.ts
|
|
23651
23651
|
import { isDev } from "@qwik.dev/core/build";
|
|
23652
23652
|
|
|
23653
23653
|
// packages/qwik/src/core/shared/utils/qdev.ts
|
|
23654
|
-
var
|
|
23655
|
-
var
|
|
23656
|
-
var
|
|
23657
|
-
var
|
|
23658
|
-
var
|
|
23659
|
-
var
|
|
23654
|
+
var g = globalThis;
|
|
23655
|
+
var qDev = g.qDev !== false;
|
|
23656
|
+
var qInspector = g.qInspector === true;
|
|
23657
|
+
var qSerialize = g.qSerialize !== false;
|
|
23658
|
+
var qDynamicPlatform = g.qDynamicPlatform !== false;
|
|
23659
|
+
var qTest = g.qTest === true;
|
|
23660
|
+
var qRuntimeQrl = g.qRuntimeQrl === true;
|
|
23660
23661
|
var seal = (obj) => {
|
|
23661
23662
|
if (qDev) {
|
|
23662
23663
|
Object.seal(obj);
|
|
@@ -23788,7 +23789,7 @@ var codeToText = (code2, ...parts) => {
|
|
|
23788
23789
|
// 4
|
|
23789
23790
|
"QRL is not a function",
|
|
23790
23791
|
// 5
|
|
23791
|
-
"Dynamic import not found",
|
|
23792
|
+
"Dynamic import {{0}} not found",
|
|
23792
23793
|
// 6
|
|
23793
23794
|
"Unknown type argument",
|
|
23794
23795
|
// 7
|
|
@@ -24004,6 +24005,7 @@ var createPlatform = () => {
|
|
|
24004
24005
|
if (regSym) {
|
|
24005
24006
|
return regSym;
|
|
24006
24007
|
}
|
|
24008
|
+
throw qError(6 /* dynamicImportFailed */, [symbolName]);
|
|
24007
24009
|
}
|
|
24008
24010
|
if (!url) {
|
|
24009
24011
|
throw qError(14 /* qrlMissingChunk */, [symbolName]);
|
|
@@ -24131,10 +24133,10 @@ function retryOnPromise(fn, onError = justThrow) {
|
|
|
24131
24133
|
}
|
|
24132
24134
|
|
|
24133
24135
|
// packages/qwik/src/core/use/use-core.ts
|
|
24134
|
-
import { isDev as
|
|
24136
|
+
import { isDev as isDev21 } from "@qwik.dev/core/build";
|
|
24135
24137
|
|
|
24136
24138
|
// packages/qwik/src/core/client/dom-container.ts
|
|
24137
|
-
import { isDev as
|
|
24139
|
+
import { isDev as isDev20 } from "@qwik.dev/core/build";
|
|
24138
24140
|
|
|
24139
24141
|
// packages/qwik/src/core/use/use-sequential-scope.ts
|
|
24140
24142
|
var useSequentialScope = () => {
|
|
@@ -24288,7 +24290,7 @@ Object.freeze(EMPTY_ARRAY);
|
|
|
24288
24290
|
Object.freeze(EMPTY_OBJ);
|
|
24289
24291
|
|
|
24290
24292
|
// packages/qwik/src/core/shared/qrl/qrl-class.ts
|
|
24291
|
-
import { isBrowser as
|
|
24293
|
+
import { isBrowser as isBrowser3, isDev as isDev19 } from "@qwik.dev/core/build";
|
|
24292
24294
|
import { p as preload } from "@qwik.dev/core/preloader";
|
|
24293
24295
|
|
|
24294
24296
|
// packages/qwik/src/core/reactive-primitives/backref.ts
|
|
@@ -24418,7 +24420,13 @@ function parseQRL(qrl) {
|
|
|
24418
24420
|
var QRL_RUNTIME_CHUNK = "mock-chunk";
|
|
24419
24421
|
|
|
24420
24422
|
// packages/qwik/src/core/client/run-qrl.ts
|
|
24421
|
-
function runEventHandlerQRL(handler, event, element, ctx
|
|
24423
|
+
function runEventHandlerQRL(handler, event, element, ctx) {
|
|
24424
|
+
if (!element.isConnected) {
|
|
24425
|
+
return;
|
|
24426
|
+
}
|
|
24427
|
+
if (!ctx) {
|
|
24428
|
+
ctx = newInvokeContextFromDOM(event, element);
|
|
24429
|
+
}
|
|
24422
24430
|
const container = ctx.$container$;
|
|
24423
24431
|
const hostElement = ctx.$hostElement$;
|
|
24424
24432
|
vnode_ensureElementInflated(container, hostElement);
|
|
@@ -24598,26 +24606,6 @@ var SignalImpl = class {
|
|
|
24598
24606
|
return { value: this.$untrackedValue$ };
|
|
24599
24607
|
}
|
|
24600
24608
|
};
|
|
24601
|
-
var setupSignalValueAccess = (target, effectsProp, valueProp) => {
|
|
24602
|
-
const ctx = tryGetInvokeContext();
|
|
24603
|
-
if (ctx && (target.$container$ || (target.$container$ = ctx.$container$ || null))) {
|
|
24604
|
-
isDev8 && assertTrue(
|
|
24605
|
-
!ctx.$container$ || ctx.$container$ === target.$container$,
|
|
24606
|
-
"Do not use signals across containers"
|
|
24607
|
-
);
|
|
24608
|
-
const effectSubscriber = ctx.$effectSubscriber$;
|
|
24609
|
-
if (effectSubscriber) {
|
|
24610
|
-
ensureContainsSubscription(
|
|
24611
|
-
target[effectsProp] || (target[effectsProp] = /* @__PURE__ */ new Set()),
|
|
24612
|
-
effectSubscriber
|
|
24613
|
-
);
|
|
24614
|
-
ensureContainsBackRef(effectSubscriber, target);
|
|
24615
|
-
addQrlToSerializationCtx(effectSubscriber, target.$container$);
|
|
24616
|
-
DEBUG && log("read->sub", pad("\n" + target.toString(), " "));
|
|
24617
|
-
}
|
|
24618
|
-
}
|
|
24619
|
-
return target[valueProp];
|
|
24620
|
-
};
|
|
24621
24609
|
|
|
24622
24610
|
// packages/qwik/src/core/shared/jsx/props-proxy.ts
|
|
24623
24611
|
import { isDev as isDev9 } from "@qwik.dev/core/build";
|
|
@@ -24782,7 +24770,7 @@ var isPropsProxy = (obj) => {
|
|
|
24782
24770
|
};
|
|
24783
24771
|
|
|
24784
24772
|
// packages/qwik/src/core/reactive-primitives/impl/async-signal-impl.ts
|
|
24785
|
-
import { isBrowser, isServer as isServer5 } from "@qwik.dev/core/build";
|
|
24773
|
+
import { isBrowser, isDev as isDev11, isServer as isServer5 } from "@qwik.dev/core/build";
|
|
24786
24774
|
|
|
24787
24775
|
// packages/qwik/src/core/reactive-primitives/subscriber.ts
|
|
24788
24776
|
import { isServer as isServer4 } from "@qwik.dev/core/build";
|
|
@@ -24958,7 +24946,7 @@ var AsyncJob = class {
|
|
|
24958
24946
|
}
|
|
24959
24947
|
/** Backward compatible cache method for resource */
|
|
24960
24948
|
cache() {
|
|
24961
|
-
console.error(
|
|
24949
|
+
isDev11 && console.error(
|
|
24962
24950
|
"useResource cache() method does not do anything. Use `useAsync$` instead of `useResource$`, use the `interval` option for polling behavior."
|
|
24963
24951
|
);
|
|
24964
24952
|
}
|
|
@@ -25029,7 +25017,7 @@ var AsyncSignalImpl = class extends (_b2 = ComputedSignalImpl, _a4 = _EFFECT_BAC
|
|
|
25029
25017
|
}
|
|
25030
25018
|
if ((import.meta.env.TEST ? isServerPlatform() : isServer5) && this.$flags$ & 64 /* CLIENT_ONLY */ && this.$untrackedValue$ === NEEDS_COMPUTATION) {
|
|
25031
25019
|
throw new Error(
|
|
25032
|
-
"During SSR, cannot read .value from clientOnly async signal without an initial value. Use .loading or provide an initial value."
|
|
25020
|
+
isDev11 ? "During SSR, cannot read .value from clientOnly async signal without an initial value. Use .loading or provide an initial value." : "Cannot read .value from clientOnly"
|
|
25033
25021
|
);
|
|
25034
25022
|
}
|
|
25035
25023
|
return this.$untrackedValue$;
|
|
@@ -25045,7 +25033,21 @@ var AsyncSignalImpl = class extends (_b2 = ComputedSignalImpl, _a4 = _EFFECT_BAC
|
|
|
25045
25033
|
* `signal.loading ? <Loading /> : signal.value`.
|
|
25046
25034
|
*/
|
|
25047
25035
|
get loading() {
|
|
25048
|
-
|
|
25036
|
+
const val = this.untrackedLoading;
|
|
25037
|
+
const ctx = tryGetInvokeContext();
|
|
25038
|
+
if (ctx && (this.$container$ || (this.$container$ = ctx.$container$ || null))) {
|
|
25039
|
+
isDev11 && assertTrue(
|
|
25040
|
+
!ctx.$container$ || ctx.$container$ === this.$container$,
|
|
25041
|
+
"Do not use signals across containers"
|
|
25042
|
+
);
|
|
25043
|
+
const effectSubscriber = ctx.$effectSubscriber$;
|
|
25044
|
+
if (effectSubscriber) {
|
|
25045
|
+
ensureContainsSubscription(this.$loadingEffects$ || (this.$loadingEffects$ = /* @__PURE__ */ new Set()), effectSubscriber);
|
|
25046
|
+
ensureContainsBackRef(effectSubscriber, this);
|
|
25047
|
+
addQrlToSerializationCtx(effectSubscriber, this.$container$);
|
|
25048
|
+
}
|
|
25049
|
+
}
|
|
25050
|
+
return val;
|
|
25049
25051
|
}
|
|
25050
25052
|
set untrackedLoading(value) {
|
|
25051
25053
|
if (value !== this.$untrackedLoading$) {
|
|
@@ -25064,7 +25066,21 @@ var AsyncSignalImpl = class extends (_b2 = ComputedSignalImpl, _a4 = _EFFECT_BAC
|
|
|
25064
25066
|
}
|
|
25065
25067
|
/** The error that occurred when the signal was resolved. */
|
|
25066
25068
|
get error() {
|
|
25067
|
-
|
|
25069
|
+
const val = this.untrackedError;
|
|
25070
|
+
const ctx = tryGetInvokeContext();
|
|
25071
|
+
if (ctx && (this.$container$ || (this.$container$ = ctx.$container$ || null))) {
|
|
25072
|
+
isDev11 && assertTrue(
|
|
25073
|
+
!ctx.$container$ || ctx.$container$ === this.$container$,
|
|
25074
|
+
"Do not use signals across containers"
|
|
25075
|
+
);
|
|
25076
|
+
const effectSubscriber = ctx.$effectSubscriber$;
|
|
25077
|
+
if (effectSubscriber) {
|
|
25078
|
+
ensureContainsSubscription(this.$errorEffects$ || (this.$errorEffects$ = /* @__PURE__ */ new Set()), effectSubscriber);
|
|
25079
|
+
ensureContainsBackRef(effectSubscriber, this);
|
|
25080
|
+
addQrlToSerializationCtx(effectSubscriber, this.$container$);
|
|
25081
|
+
}
|
|
25082
|
+
}
|
|
25083
|
+
return val;
|
|
25068
25084
|
}
|
|
25069
25085
|
set untrackedError(value) {
|
|
25070
25086
|
if (value !== this.$untrackedError$) {
|
|
@@ -25458,7 +25474,7 @@ function setCursorData(vNode, cursorData) {
|
|
|
25458
25474
|
}
|
|
25459
25475
|
|
|
25460
25476
|
// packages/qwik/src/core/client/vnode-diff.ts
|
|
25461
|
-
import { isDev as
|
|
25477
|
+
import { isDev as isDev15 } from "@qwik.dev/core/build";
|
|
25462
25478
|
|
|
25463
25479
|
// packages/qwik/src/core/reactive-primitives/subscription-data.ts
|
|
25464
25480
|
var SubscriptionData = class {
|
|
@@ -25469,22 +25485,22 @@ var SubscriptionData = class {
|
|
|
25469
25485
|
};
|
|
25470
25486
|
|
|
25471
25487
|
// packages/qwik/src/core/shared/component-execution.ts
|
|
25472
|
-
import { isDev as
|
|
25488
|
+
import { isDev as isDev13, isServer as isServer6 } from "@qwik.dev/core/build";
|
|
25473
25489
|
|
|
25474
25490
|
// packages/qwik/src/core/shared/component.public.ts
|
|
25475
|
-
import { isDev as
|
|
25476
|
-
var componentQrl = (
|
|
25491
|
+
import { isDev as isDev12 } from "@qwik.dev/core/build";
|
|
25492
|
+
var componentQrl = (componentQrl3) => {
|
|
25477
25493
|
function QwikComponent(props, key, flags = 0) {
|
|
25478
|
-
|
|
25479
|
-
|
|
25480
|
-
const hash3 = qTest ? "sX" :
|
|
25494
|
+
isDev12 && assertQrl(componentQrl3);
|
|
25495
|
+
isDev12 && assertNumber(flags, "The Qwik Component was not invoked correctly");
|
|
25496
|
+
const hash3 = qTest ? "sX" : componentQrl3.$hash$.slice(0, 4);
|
|
25481
25497
|
const finalKey = hash3 + ":" + (key ? key : "");
|
|
25482
25498
|
const InnerCmp = () => {
|
|
25483
25499
|
};
|
|
25484
|
-
InnerCmp[SERIALIZABLE_STATE] = [
|
|
25500
|
+
InnerCmp[SERIALIZABLE_STATE] = [componentQrl3];
|
|
25485
25501
|
return _jsxSplit(InnerCmp, props, null, props.children, flags, finalKey);
|
|
25486
25502
|
}
|
|
25487
|
-
QwikComponent[SERIALIZABLE_STATE] = [
|
|
25503
|
+
QwikComponent[SERIALIZABLE_STATE] = [componentQrl3];
|
|
25488
25504
|
return QwikComponent;
|
|
25489
25505
|
};
|
|
25490
25506
|
var SERIALIZABLE_STATE = /* @__PURE__ */ Symbol("serializable-data");
|
|
@@ -25505,9 +25521,10 @@ var isObjectEmpty = (obj) => {
|
|
|
25505
25521
|
// packages/qwik/src/core/shared/jsx/jsx-node.ts
|
|
25506
25522
|
var _hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
25507
25523
|
var JSXNodeImpl = class {
|
|
25508
|
-
constructor(type, varProps, constProps, children, key, toSort, dev) {
|
|
25524
|
+
constructor(type, varProps, constProps, children, flags, key, toSort, dev) {
|
|
25509
25525
|
this.type = type;
|
|
25510
25526
|
this.children = children;
|
|
25527
|
+
this.flags = flags;
|
|
25511
25528
|
__publicField(this, "toSort");
|
|
25512
25529
|
__publicField(this, "key");
|
|
25513
25530
|
__publicField(this, "varProps");
|
|
@@ -25580,7 +25597,7 @@ var executeComponent = (container, renderHost, subscriptionHost, componentQRL, p
|
|
|
25580
25597
|
let isInlineComponent = false;
|
|
25581
25598
|
if (componentQRL === null) {
|
|
25582
25599
|
componentQRL = container.getHostProp(renderHost, OnRenderProp);
|
|
25583
|
-
|
|
25600
|
+
isDev13 && assertDefined(componentQRL, "No Component found at this location");
|
|
25584
25601
|
}
|
|
25585
25602
|
if (isQrl(componentQRL)) {
|
|
25586
25603
|
props = props || container.getHostProp(renderHost, ELEMENT_PROPS) || EMPTY_OBJ;
|
|
@@ -25659,7 +25676,7 @@ function addUseOnEvents(jsx2, useOnEvents) {
|
|
|
25659
25676
|
}
|
|
25660
25677
|
targetElement = placeholderElement;
|
|
25661
25678
|
} else {
|
|
25662
|
-
if (
|
|
25679
|
+
if (isDev13) {
|
|
25663
25680
|
logWarn(
|
|
25664
25681
|
'You are trying to add an event "' + key + '" using `useOn` hook, but a node to which you can add an event is not found. Please make sure that the component has a valid element node. '
|
|
25665
25682
|
);
|
|
@@ -25670,7 +25687,7 @@ function addUseOnEvents(jsx2, useOnEvents) {
|
|
|
25670
25687
|
if (targetElement) {
|
|
25671
25688
|
if (targetElement.type === "script" && key === qVisibleEvent) {
|
|
25672
25689
|
eventKey = "q-d:qinit";
|
|
25673
|
-
if (
|
|
25690
|
+
if (isDev13) {
|
|
25674
25691
|
logWarn(
|
|
25675
25692
|
'You are trying to add an event "' + key + '" using the `useVisibleTask$` hook with the "intersection-observer" strategy, but a node to which you can add an event is not found. Using "document-ready" or "document-idle" instead.'
|
|
25676
25693
|
);
|
|
@@ -25748,7 +25765,7 @@ function injectPlaceholderElement(jsx2) {
|
|
|
25748
25765
|
return [null, jsx2];
|
|
25749
25766
|
}
|
|
25750
25767
|
function createPlaceholderScriptNode() {
|
|
25751
|
-
return new JSXNodeImpl("script", null, { hidden: "" }, null, null);
|
|
25768
|
+
return new JSXNodeImpl("script", null, { hidden: "" }, null, 0, null);
|
|
25752
25769
|
}
|
|
25753
25770
|
|
|
25754
25771
|
// packages/qwik/src/core/shared/jsx/utils.public.ts
|
|
@@ -25757,9 +25774,9 @@ var SSRRaw = () => null;
|
|
|
25757
25774
|
var SSRComment = () => null;
|
|
25758
25775
|
|
|
25759
25776
|
// packages/qwik/src/core/client/vnode-namespace.ts
|
|
25760
|
-
import { isDev as
|
|
25777
|
+
import { isDev as isDev14 } from "@qwik.dev/core/build";
|
|
25761
25778
|
var isForeignObjectElement = (elementName) => {
|
|
25762
|
-
return
|
|
25779
|
+
return isDev14 ? elementName.toLowerCase() === "foreignobject" : elementName === "foreignObject";
|
|
25763
25780
|
};
|
|
25764
25781
|
var isSvgElement = (elementName) => elementName === "svg" || isForeignObjectElement(elementName);
|
|
25765
25782
|
var isMathElement = (elementName) => elementName === "math";
|
|
@@ -26570,38 +26587,41 @@ function setAttribute(journal, vnode, key, value, scopedStyleIdPrefix, originalV
|
|
|
26570
26587
|
)
|
|
26571
26588
|
);
|
|
26572
26589
|
}
|
|
26573
|
-
|
|
26574
|
-
|
|
26575
|
-
container,
|
|
26576
|
-
journal,
|
|
26577
|
-
cursor,
|
|
26578
|
-
scopedStyleIdPrefix,
|
|
26579
|
-
stack
|
|
26580
|
-
asyncQueue
|
|
26581
|
-
asyncAttributePromises
|
|
26582
|
-
vParent
|
|
26583
|
-
vCurrent
|
|
26584
|
-
vNewNode
|
|
26585
|
-
vSiblings
|
|
26586
|
-
vSiblingsArray
|
|
26587
|
-
vSideBuffer
|
|
26588
|
-
jsxChildren
|
|
26589
|
-
jsxValue
|
|
26590
|
-
jsxIdx
|
|
26591
|
-
jsxCount
|
|
26592
|
-
shouldAdvance
|
|
26593
|
-
isCreationMode
|
|
26594
|
-
subscriptionData
|
|
26595
|
-
const
|
|
26590
|
+
function createDiffContext(container, journal, cursor, scopedStyleIdPrefix) {
|
|
26591
|
+
return {
|
|
26592
|
+
$container$: container,
|
|
26593
|
+
$journal$: journal,
|
|
26594
|
+
$cursor$: cursor,
|
|
26595
|
+
$scopedStyleIdPrefix$: scopedStyleIdPrefix,
|
|
26596
|
+
$stack$: [],
|
|
26597
|
+
$asyncQueue$: [],
|
|
26598
|
+
$asyncAttributePromises$: [],
|
|
26599
|
+
$vParent$: null,
|
|
26600
|
+
$vCurrent$: null,
|
|
26601
|
+
$vNewNode$: null,
|
|
26602
|
+
$vSiblings$: null,
|
|
26603
|
+
$vSiblingsArray$: null,
|
|
26604
|
+
$vSideBuffer$: null,
|
|
26605
|
+
$jsxChildren$: null,
|
|
26606
|
+
$jsxValue$: null,
|
|
26607
|
+
$jsxIdx$: 0,
|
|
26608
|
+
$jsxCount$: 0,
|
|
26609
|
+
$shouldAdvance$: true,
|
|
26610
|
+
$isCreationMode$: false,
|
|
26611
|
+
$subscriptionData$: {
|
|
26612
|
+
$const$: new SubscriptionData({
|
|
26596
26613
|
$scopedStyleIdPrefix$: scopedStyleIdPrefix,
|
|
26597
26614
|
$isConst$: true
|
|
26598
26615
|
}),
|
|
26599
|
-
var
|
|
26616
|
+
$var$: new SubscriptionData({
|
|
26600
26617
|
$scopedStyleIdPrefix$: scopedStyleIdPrefix,
|
|
26601
26618
|
$isConst$: false
|
|
26602
26619
|
})
|
|
26603
26620
|
}
|
|
26604
26621
|
};
|
|
26622
|
+
}
|
|
26623
|
+
var vnode_diff = (container, journal, jsxNode, vStartNode, cursor, scopedStyleIdPrefix) => {
|
|
26624
|
+
const diffContext = createDiffContext(container, journal, cursor, scopedStyleIdPrefix);
|
|
26605
26625
|
diff(diffContext, jsxNode, vStartNode);
|
|
26606
26626
|
const result2 = drainAsyncQueue(diffContext);
|
|
26607
26627
|
if (isPromise(result2)) {
|
|
@@ -26613,52 +26633,52 @@ var vnode_diff = (container, journal, jsxNode, vStartNode, cursor, scopedStyleId
|
|
|
26613
26633
|
}
|
|
26614
26634
|
};
|
|
26615
26635
|
function diff(diffContext, jsxNode, vStartNode) {
|
|
26616
|
-
|
|
26617
|
-
|
|
26618
|
-
diffContext
|
|
26619
|
-
diffContext
|
|
26620
|
-
diffContext
|
|
26636
|
+
isDev15 && assertFalse(vnode_isVNode(jsxNode), "JSXNode should not be a VNode");
|
|
26637
|
+
isDev15 && assertTrue(vnode_isVNode(vStartNode), "vStartNode should be a VNode");
|
|
26638
|
+
diffContext.$vParent$ = vStartNode;
|
|
26639
|
+
diffContext.$vNewNode$ = null;
|
|
26640
|
+
diffContext.$vCurrent$ = vnode_getFirstChild(vStartNode);
|
|
26621
26641
|
stackPush(diffContext, jsxNode, true);
|
|
26622
|
-
if (diffContext
|
|
26642
|
+
if (diffContext.$vParent$.flags & 32 /* Deleted */) {
|
|
26623
26643
|
return;
|
|
26624
26644
|
}
|
|
26625
|
-
while (diffContext
|
|
26626
|
-
while (diffContext
|
|
26627
|
-
|
|
26628
|
-
diffContext
|
|
26645
|
+
while (diffContext.$stack$.length) {
|
|
26646
|
+
while (diffContext.$jsxIdx$ < diffContext.$jsxCount$) {
|
|
26647
|
+
isDev15 && assertFalse(
|
|
26648
|
+
diffContext.$vParent$ === diffContext.$vCurrent$,
|
|
26629
26649
|
"Parent and current can't be the same"
|
|
26630
26650
|
);
|
|
26631
|
-
if (typeof diffContext
|
|
26632
|
-
expectText(diffContext, diffContext
|
|
26633
|
-
} else if (typeof diffContext
|
|
26634
|
-
expectText(diffContext, String(diffContext
|
|
26635
|
-
} else if (diffContext
|
|
26636
|
-
if (isJSXNode(diffContext
|
|
26637
|
-
const type = diffContext
|
|
26651
|
+
if (typeof diffContext.$jsxValue$ === "string") {
|
|
26652
|
+
expectText(diffContext, diffContext.$jsxValue$);
|
|
26653
|
+
} else if (typeof diffContext.$jsxValue$ === "number") {
|
|
26654
|
+
expectText(diffContext, String(diffContext.$jsxValue$));
|
|
26655
|
+
} else if (diffContext.$jsxValue$ && typeof diffContext.$jsxValue$ === "object") {
|
|
26656
|
+
if (isJSXNode(diffContext.$jsxValue$)) {
|
|
26657
|
+
const type = diffContext.$jsxValue$.type;
|
|
26638
26658
|
if (typeof type === "string") {
|
|
26639
26659
|
expectNoTextNode(diffContext);
|
|
26640
|
-
expectElement(diffContext, diffContext
|
|
26641
|
-
const hasDangerousInnerHTML = diffContext
|
|
26660
|
+
expectElement(diffContext, diffContext.$jsxValue$, type);
|
|
26661
|
+
const hasDangerousInnerHTML = diffContext.$jsxValue$.constProps && _hasOwnProperty2.call(diffContext.$jsxValue$.constProps, dangerouslySetInnerHTML) || _hasOwnProperty2.call(diffContext.$jsxValue$.varProps, dangerouslySetInnerHTML);
|
|
26642
26662
|
if (hasDangerousInnerHTML) {
|
|
26643
26663
|
expectNoChildren(diffContext, false);
|
|
26644
26664
|
} else {
|
|
26645
|
-
descend(diffContext, diffContext
|
|
26665
|
+
descend(diffContext, diffContext.$jsxValue$.children, true);
|
|
26646
26666
|
}
|
|
26647
26667
|
} else if (typeof type === "function") {
|
|
26648
26668
|
if (type === Fragment) {
|
|
26649
26669
|
expectNoTextNode(diffContext);
|
|
26650
|
-
expectVirtual(diffContext, "F" /* Fragment */, diffContext
|
|
26651
|
-
descend(diffContext, diffContext
|
|
26670
|
+
expectVirtual(diffContext, "F" /* Fragment */, diffContext.$jsxValue$.key);
|
|
26671
|
+
descend(diffContext, diffContext.$jsxValue$.children, true);
|
|
26652
26672
|
} else if (type === Slot) {
|
|
26653
26673
|
expectNoTextNode(diffContext);
|
|
26654
26674
|
if (!expectSlot(diffContext)) {
|
|
26655
|
-
descend(diffContext, diffContext
|
|
26675
|
+
descend(diffContext, diffContext.$jsxValue$.children, true);
|
|
26656
26676
|
}
|
|
26657
26677
|
} else if (type === Projection) {
|
|
26658
26678
|
expectProjection(diffContext);
|
|
26659
26679
|
descend(
|
|
26660
26680
|
diffContext,
|
|
26661
|
-
diffContext
|
|
26681
|
+
diffContext.$jsxValue$.children,
|
|
26662
26682
|
true,
|
|
26663
26683
|
// special case for projection, we don't want to expect no children
|
|
26664
26684
|
// because the projection's children are not removed
|
|
@@ -26673,12 +26693,12 @@ function diff(diffContext, jsxNode, vStartNode) {
|
|
|
26673
26693
|
expectComponent(diffContext, type);
|
|
26674
26694
|
}
|
|
26675
26695
|
}
|
|
26676
|
-
} else if (Array.isArray(diffContext
|
|
26677
|
-
descend(diffContext, diffContext
|
|
26678
|
-
} else if (isSignal(diffContext
|
|
26696
|
+
} else if (Array.isArray(diffContext.$jsxValue$)) {
|
|
26697
|
+
descend(diffContext, diffContext.$jsxValue$, false);
|
|
26698
|
+
} else if (isSignal(diffContext.$jsxValue$)) {
|
|
26679
26699
|
expectVirtual(diffContext, "S" /* WrappedSignal */, null);
|
|
26680
|
-
const unwrappedSignal = diffContext
|
|
26681
|
-
const signals = diffContext
|
|
26700
|
+
const unwrappedSignal = diffContext.$jsxValue$ instanceof WrappedSignalImpl ? diffContext.$jsxValue$.$unwrapIfSignal$() : diffContext.$jsxValue$;
|
|
26701
|
+
const signals = diffContext.$vCurrent$?.[_EFFECT_BACK_REF]?.get(
|
|
26682
26702
|
"." /* VNODE */
|
|
26683
26703
|
)?.backRef;
|
|
26684
26704
|
let hasUnwrappedSignal = signals?.has(unwrappedSignal);
|
|
@@ -26686,7 +26706,7 @@ function diff(diffContext, jsxNode, vStartNode) {
|
|
|
26686
26706
|
hasUnwrappedSignal = containsWrappedSignal(signals, unwrappedSignal);
|
|
26687
26707
|
}
|
|
26688
26708
|
if (!hasUnwrappedSignal) {
|
|
26689
|
-
const vHost = diffContext
|
|
26709
|
+
const vHost = diffContext.$vNewNode$ || diffContext.$vCurrent$;
|
|
26690
26710
|
descend(
|
|
26691
26711
|
diffContext,
|
|
26692
26712
|
resolveSignalAndDescend(
|
|
@@ -26695,20 +26715,20 @@ function diff(diffContext, jsxNode, vStartNode) {
|
|
|
26695
26715
|
unwrappedSignal,
|
|
26696
26716
|
vHost,
|
|
26697
26717
|
"." /* VNODE */,
|
|
26698
|
-
diffContext
|
|
26718
|
+
diffContext.$container$
|
|
26699
26719
|
)
|
|
26700
26720
|
),
|
|
26701
26721
|
true
|
|
26702
26722
|
);
|
|
26703
26723
|
}
|
|
26704
|
-
} else if (isPromise(diffContext
|
|
26724
|
+
} else if (isPromise(diffContext.$jsxValue$)) {
|
|
26705
26725
|
expectVirtual(diffContext, "A" /* Awaited */, null);
|
|
26706
|
-
diffContext
|
|
26707
|
-
diffContext
|
|
26708
|
-
diffContext
|
|
26726
|
+
diffContext.$asyncQueue$.push(
|
|
26727
|
+
diffContext.$jsxValue$,
|
|
26728
|
+
diffContext.$vNewNode$ || diffContext.$vCurrent$
|
|
26709
26729
|
);
|
|
26710
26730
|
}
|
|
26711
|
-
} else if (diffContext
|
|
26731
|
+
} else if (diffContext.$jsxValue$ === SkipRender) {
|
|
26712
26732
|
} else {
|
|
26713
26733
|
expectText(diffContext, "");
|
|
26714
26734
|
}
|
|
@@ -26725,27 +26745,27 @@ function resolveSignalAndDescend(diffContext, fn) {
|
|
|
26725
26745
|
} catch (e) {
|
|
26726
26746
|
if (isPromise(e)) {
|
|
26727
26747
|
const retryPromise = e.then(() => retryOnPromise(fn));
|
|
26728
|
-
diffContext
|
|
26748
|
+
diffContext.$asyncQueue$.push(retryPromise, diffContext.$vNewNode$ || diffContext.$vCurrent$);
|
|
26729
26749
|
return null;
|
|
26730
26750
|
}
|
|
26731
26751
|
throw e;
|
|
26732
26752
|
}
|
|
26733
26753
|
}
|
|
26734
26754
|
function advance(diffContext) {
|
|
26735
|
-
if (!diffContext
|
|
26736
|
-
diffContext
|
|
26755
|
+
if (!diffContext.$shouldAdvance$) {
|
|
26756
|
+
diffContext.$shouldAdvance$ = true;
|
|
26737
26757
|
return;
|
|
26738
26758
|
}
|
|
26739
|
-
diffContext
|
|
26740
|
-
if (diffContext
|
|
26741
|
-
diffContext
|
|
26742
|
-
} else if (diffContext
|
|
26759
|
+
diffContext.$jsxIdx$++;
|
|
26760
|
+
if (diffContext.$jsxIdx$ < diffContext.$jsxCount$) {
|
|
26761
|
+
diffContext.$jsxValue$ = diffContext.$jsxChildren$[diffContext.$jsxIdx$];
|
|
26762
|
+
} else if (diffContext.$stack$.length > 0 && diffContext.$stack$[diffContext.$stack$.length - 1] === false) {
|
|
26743
26763
|
return ascend(diffContext);
|
|
26744
26764
|
}
|
|
26745
|
-
if (diffContext
|
|
26746
|
-
diffContext
|
|
26765
|
+
if (diffContext.$vNewNode$ !== null) {
|
|
26766
|
+
diffContext.$vNewNode$ = null;
|
|
26747
26767
|
} else {
|
|
26748
|
-
diffContext
|
|
26768
|
+
diffContext.$vCurrent$ = peekNextSibling(diffContext.$vCurrent$);
|
|
26749
26769
|
}
|
|
26750
26770
|
}
|
|
26751
26771
|
function descend(diffContext, children, descendVNode, shouldExpectNoChildren = true) {
|
|
@@ -26755,85 +26775,85 @@ function descend(diffContext, children, descendVNode, shouldExpectNoChildren = t
|
|
|
26755
26775
|
}
|
|
26756
26776
|
stackPush(diffContext, children, descendVNode);
|
|
26757
26777
|
if (descendVNode) {
|
|
26758
|
-
|
|
26759
|
-
diffContext
|
|
26778
|
+
isDev15 && assertDefined(
|
|
26779
|
+
diffContext.$vCurrent$ || diffContext.$vNewNode$,
|
|
26760
26780
|
"Expecting vCurrent to be defined."
|
|
26761
26781
|
);
|
|
26762
|
-
const creationMode = diffContext
|
|
26763
|
-
diffContext
|
|
26764
|
-
diffContext
|
|
26765
|
-
diffContext
|
|
26766
|
-
diffContext
|
|
26767
|
-
diffContext
|
|
26768
|
-
diffContext
|
|
26769
|
-
diffContext
|
|
26782
|
+
const creationMode = diffContext.$isCreationMode$ || !!diffContext.$vNewNode$ || !vnode_getFirstChild(diffContext.$vCurrent$);
|
|
26783
|
+
diffContext.$isCreationMode$ = creationMode;
|
|
26784
|
+
diffContext.$vSideBuffer$ = null;
|
|
26785
|
+
diffContext.$vSiblings$ = null;
|
|
26786
|
+
diffContext.$vSiblingsArray$ = null;
|
|
26787
|
+
diffContext.$vParent$ = diffContext.$vNewNode$ || diffContext.$vCurrent$;
|
|
26788
|
+
diffContext.$vCurrent$ = vnode_getFirstChild(diffContext.$vParent$);
|
|
26789
|
+
diffContext.$vNewNode$ = null;
|
|
26770
26790
|
}
|
|
26771
|
-
diffContext
|
|
26791
|
+
diffContext.$shouldAdvance$ = false;
|
|
26772
26792
|
}
|
|
26773
26793
|
function ascend(diffContext) {
|
|
26774
|
-
const descendVNode = diffContext
|
|
26794
|
+
const descendVNode = diffContext.$stack$.pop();
|
|
26775
26795
|
if (descendVNode) {
|
|
26776
|
-
diffContext
|
|
26777
|
-
diffContext
|
|
26778
|
-
diffContext
|
|
26779
|
-
diffContext
|
|
26780
|
-
diffContext
|
|
26781
|
-
diffContext
|
|
26782
|
-
diffContext
|
|
26783
|
-
}
|
|
26784
|
-
diffContext
|
|
26785
|
-
diffContext
|
|
26786
|
-
diffContext
|
|
26787
|
-
diffContext
|
|
26796
|
+
diffContext.$isCreationMode$ = diffContext.$stack$.pop();
|
|
26797
|
+
diffContext.$vSideBuffer$ = diffContext.$stack$.pop();
|
|
26798
|
+
diffContext.$vSiblings$ = diffContext.$stack$.pop();
|
|
26799
|
+
diffContext.$vSiblingsArray$ = diffContext.$stack$.pop();
|
|
26800
|
+
diffContext.$vNewNode$ = diffContext.$stack$.pop();
|
|
26801
|
+
diffContext.$vCurrent$ = diffContext.$stack$.pop();
|
|
26802
|
+
diffContext.$vParent$ = diffContext.$stack$.pop();
|
|
26803
|
+
}
|
|
26804
|
+
diffContext.$jsxValue$ = diffContext.$stack$.pop();
|
|
26805
|
+
diffContext.$jsxCount$ = diffContext.$stack$.pop();
|
|
26806
|
+
diffContext.$jsxIdx$ = diffContext.$stack$.pop();
|
|
26807
|
+
diffContext.$jsxChildren$ = diffContext.$stack$.pop();
|
|
26788
26808
|
advance(diffContext);
|
|
26789
26809
|
}
|
|
26790
26810
|
function stackPush(diffContext, children, descendVNode) {
|
|
26791
|
-
diffContext
|
|
26792
|
-
diffContext
|
|
26793
|
-
diffContext
|
|
26794
|
-
diffContext
|
|
26795
|
-
diffContext
|
|
26811
|
+
diffContext.$stack$.push(
|
|
26812
|
+
diffContext.$jsxChildren$,
|
|
26813
|
+
diffContext.$jsxIdx$,
|
|
26814
|
+
diffContext.$jsxCount$,
|
|
26815
|
+
diffContext.$jsxValue$
|
|
26796
26816
|
);
|
|
26797
26817
|
if (descendVNode) {
|
|
26798
|
-
diffContext
|
|
26799
|
-
diffContext
|
|
26800
|
-
diffContext
|
|
26801
|
-
diffContext
|
|
26802
|
-
diffContext
|
|
26803
|
-
diffContext
|
|
26804
|
-
diffContext
|
|
26805
|
-
diffContext
|
|
26818
|
+
diffContext.$stack$.push(
|
|
26819
|
+
diffContext.$vParent$,
|
|
26820
|
+
diffContext.$vCurrent$,
|
|
26821
|
+
diffContext.$vNewNode$,
|
|
26822
|
+
diffContext.$vSiblingsArray$,
|
|
26823
|
+
diffContext.$vSiblings$,
|
|
26824
|
+
diffContext.$vSideBuffer$,
|
|
26825
|
+
diffContext.$isCreationMode$
|
|
26806
26826
|
);
|
|
26807
26827
|
}
|
|
26808
|
-
diffContext
|
|
26828
|
+
diffContext.$stack$.push(descendVNode);
|
|
26809
26829
|
if (Array.isArray(children)) {
|
|
26810
|
-
diffContext
|
|
26811
|
-
diffContext
|
|
26812
|
-
diffContext
|
|
26813
|
-
diffContext
|
|
26830
|
+
diffContext.$jsxIdx$ = 0;
|
|
26831
|
+
diffContext.$jsxCount$ = children.length;
|
|
26832
|
+
diffContext.$jsxChildren$ = children;
|
|
26833
|
+
diffContext.$jsxValue$ = diffContext.$jsxCount$ > 0 ? children[0] : null;
|
|
26814
26834
|
} else if (children === void 0) {
|
|
26815
|
-
diffContext
|
|
26816
|
-
diffContext
|
|
26817
|
-
diffContext
|
|
26818
|
-
diffContext
|
|
26835
|
+
diffContext.$jsxIdx$ = 0;
|
|
26836
|
+
diffContext.$jsxValue$ = null;
|
|
26837
|
+
diffContext.$jsxChildren$ = null;
|
|
26838
|
+
diffContext.$jsxCount$ = 0;
|
|
26819
26839
|
} else {
|
|
26820
|
-
diffContext
|
|
26821
|
-
diffContext
|
|
26822
|
-
diffContext
|
|
26823
|
-
diffContext
|
|
26840
|
+
diffContext.$jsxIdx$ = 0;
|
|
26841
|
+
diffContext.$jsxValue$ = children;
|
|
26842
|
+
diffContext.$jsxChildren$ = null;
|
|
26843
|
+
diffContext.$jsxCount$ = 1;
|
|
26824
26844
|
}
|
|
26825
26845
|
}
|
|
26826
26846
|
function getInsertBefore(diffContext) {
|
|
26827
|
-
if (diffContext
|
|
26828
|
-
return diffContext
|
|
26847
|
+
if (diffContext.$vNewNode$) {
|
|
26848
|
+
return diffContext.$vCurrent$;
|
|
26829
26849
|
} else {
|
|
26830
|
-
return peekNextSibling(diffContext
|
|
26850
|
+
return peekNextSibling(diffContext.$vCurrent$);
|
|
26831
26851
|
}
|
|
26832
26852
|
}
|
|
26833
26853
|
function descendContentToProject(diffContext, children, host) {
|
|
26834
26854
|
const projectionChildren = Array.isArray(children) ? children : [children];
|
|
26835
26855
|
const createProjectionJSXNode = (slotName) => {
|
|
26836
|
-
return new JSXNodeImpl(Projection, null, null, [], slotName);
|
|
26856
|
+
return new JSXNodeImpl(Projection, null, null, [], 0, slotName);
|
|
26837
26857
|
};
|
|
26838
26858
|
const projections = [];
|
|
26839
26859
|
if (host) {
|
|
@@ -26873,25 +26893,25 @@ function descendContentToProject(diffContext, children, host) {
|
|
|
26873
26893
|
descend(diffContext, projections, true);
|
|
26874
26894
|
}
|
|
26875
26895
|
function expectProjection(diffContext) {
|
|
26876
|
-
const jsxNode = diffContext
|
|
26896
|
+
const jsxNode = diffContext.$jsxValue$;
|
|
26877
26897
|
const slotName = jsxNode.key;
|
|
26878
|
-
diffContext
|
|
26879
|
-
diffContext
|
|
26898
|
+
diffContext.$vCurrent$ = vnode_getProp(
|
|
26899
|
+
diffContext.$vParent$,
|
|
26880
26900
|
slotName,
|
|
26881
|
-
(id) => vnode_locate(diffContext
|
|
26901
|
+
(id) => vnode_locate(diffContext.$container$.rootVNode, id)
|
|
26882
26902
|
);
|
|
26883
|
-
diffContext
|
|
26884
|
-
if (diffContext
|
|
26885
|
-
diffContext
|
|
26886
|
-
|
|
26887
|
-
|
|
26888
|
-
vnode_setProp(diffContext
|
|
26889
|
-
diffContext
|
|
26890
|
-
vnode_setProp(diffContext
|
|
26903
|
+
diffContext.$vCurrent$ = diffContext.$vCurrent$ && diffContext.$vCurrent$.flags & 32 /* Deleted */ ? null : diffContext.$vCurrent$;
|
|
26904
|
+
if (diffContext.$vCurrent$ == null) {
|
|
26905
|
+
diffContext.$vNewNode$ = vnode_newVirtual();
|
|
26906
|
+
isDev15 && vnode_setProp(diffContext.$vNewNode$, DEBUG_TYPE, "P" /* Projection */);
|
|
26907
|
+
isDev15 && vnode_setProp(diffContext.$vNewNode$, "q:code", "expectProjection");
|
|
26908
|
+
vnode_setProp(diffContext.$vNewNode$, QSlot, slotName);
|
|
26909
|
+
diffContext.$vNewNode$.slotParent = diffContext.$vParent$;
|
|
26910
|
+
vnode_setProp(diffContext.$vParent$, slotName, diffContext.$vNewNode$);
|
|
26891
26911
|
}
|
|
26892
26912
|
}
|
|
26893
26913
|
function expectSlot(diffContext) {
|
|
26894
|
-
const vHost = vnode_getProjectionParentComponent(diffContext
|
|
26914
|
+
const vHost = vnode_getProjectionParentComponent(diffContext.$vParent$);
|
|
26895
26915
|
const slotNameKey = getSlotNameKey(diffContext, vHost);
|
|
26896
26916
|
const vProjectedNode = vHost ? vnode_getProp(
|
|
26897
26917
|
vHost,
|
|
@@ -26902,33 +26922,37 @@ function expectSlot(diffContext) {
|
|
|
26902
26922
|
//(id) => vnode_locate(container.rootVNode, id)
|
|
26903
26923
|
) : null;
|
|
26904
26924
|
if (vProjectedNode == null) {
|
|
26905
|
-
diffContext
|
|
26906
|
-
vnode_setProp(diffContext
|
|
26907
|
-
vHost && vnode_setProp(vHost, slotNameKey, diffContext
|
|
26908
|
-
|
|
26925
|
+
diffContext.$vNewNode$ = vnode_newVirtual();
|
|
26926
|
+
vnode_setProp(diffContext.$vNewNode$, QSlot, slotNameKey);
|
|
26927
|
+
vHost && vnode_setProp(vHost, slotNameKey, diffContext.$vNewNode$);
|
|
26928
|
+
isDev15 && vnode_setProp(diffContext.$vNewNode$, DEBUG_TYPE, "P" /* Projection */);
|
|
26909
26929
|
vnode_insertBefore(
|
|
26910
|
-
diffContext
|
|
26911
|
-
diffContext
|
|
26912
|
-
diffContext
|
|
26913
|
-
diffContext
|
|
26930
|
+
diffContext.$journal$,
|
|
26931
|
+
diffContext.$vParent$,
|
|
26932
|
+
diffContext.$vNewNode$,
|
|
26933
|
+
diffContext.$vCurrent$ && getInsertBefore(diffContext)
|
|
26914
26934
|
);
|
|
26915
26935
|
return false;
|
|
26916
|
-
} else if (vProjectedNode === diffContext
|
|
26936
|
+
} else if (vProjectedNode === diffContext.$vCurrent$) {
|
|
26917
26937
|
} else {
|
|
26918
26938
|
const oldParent = vProjectedNode.parent;
|
|
26919
|
-
diffContext
|
|
26920
|
-
vnode_setProp(diffContext
|
|
26921
|
-
vHost && vnode_setProp(vHost, slotNameKey, diffContext
|
|
26922
|
-
|
|
26939
|
+
diffContext.$vNewNode$ = vProjectedNode;
|
|
26940
|
+
vnode_setProp(diffContext.$vNewNode$, QSlot, slotNameKey);
|
|
26941
|
+
vHost && vnode_setProp(vHost, slotNameKey, diffContext.$vNewNode$);
|
|
26942
|
+
isDev15 && vnode_setProp(diffContext.$vNewNode$, DEBUG_TYPE, "P" /* Projection */);
|
|
26943
|
+
vnode_inflateProjectionTrailingText(
|
|
26944
|
+
diffContext.$journal$,
|
|
26945
|
+
diffContext.$vNewNode$
|
|
26946
|
+
);
|
|
26923
26947
|
vnode_insertBefore(
|
|
26924
|
-
diffContext
|
|
26925
|
-
diffContext
|
|
26926
|
-
diffContext
|
|
26927
|
-
diffContext
|
|
26948
|
+
diffContext.$journal$,
|
|
26949
|
+
diffContext.$vParent$,
|
|
26950
|
+
diffContext.$vNewNode$,
|
|
26951
|
+
diffContext.$vCurrent$ && getInsertBefore(diffContext)
|
|
26928
26952
|
);
|
|
26929
26953
|
if (oldParent && vnode_isElementVNode(oldParent) && !oldParent.firstChild && vnode_getElementName(oldParent) === QTemplate) {
|
|
26930
26954
|
vnode_remove(
|
|
26931
|
-
diffContext
|
|
26955
|
+
diffContext.$journal$,
|
|
26932
26956
|
oldParent.parent,
|
|
26933
26957
|
oldParent,
|
|
26934
26958
|
true
|
|
@@ -26938,7 +26962,7 @@ function expectSlot(diffContext) {
|
|
|
26938
26962
|
return true;
|
|
26939
26963
|
}
|
|
26940
26964
|
function getSlotNameKey(diffContext, vHost) {
|
|
26941
|
-
const jsxNode = diffContext
|
|
26965
|
+
const jsxNode = diffContext.$jsxValue$;
|
|
26942
26966
|
const constProps = jsxNode.constProps;
|
|
26943
26967
|
if (constProps && typeof constProps == "object" && _hasOwnProperty2.call(constProps, "name")) {
|
|
26944
26968
|
const constValue = constProps.name;
|
|
@@ -26947,90 +26971,90 @@ function getSlotNameKey(diffContext, vHost) {
|
|
|
26947
26971
|
constValue,
|
|
26948
26972
|
vHost,
|
|
26949
26973
|
":" /* COMPONENT */,
|
|
26950
|
-
diffContext
|
|
26974
|
+
diffContext.$container$
|
|
26951
26975
|
);
|
|
26952
26976
|
}
|
|
26953
26977
|
}
|
|
26954
26978
|
return directGetPropsProxyProp(jsxNode, "name") || QDefaultSlot;
|
|
26955
26979
|
}
|
|
26956
26980
|
function cleanupSideBuffer(diffContext) {
|
|
26957
|
-
if (diffContext
|
|
26958
|
-
for (const vNode of diffContext
|
|
26981
|
+
if (diffContext.$vSideBuffer$) {
|
|
26982
|
+
for (const vNode of diffContext.$vSideBuffer$.values()) {
|
|
26959
26983
|
if (vNode.flags & 32 /* Deleted */) {
|
|
26960
26984
|
continue;
|
|
26961
26985
|
}
|
|
26962
|
-
cleanup(diffContext
|
|
26963
|
-
vnode_remove(diffContext
|
|
26986
|
+
cleanup(diffContext.$container$, diffContext.$journal$, vNode, diffContext.$cursor$);
|
|
26987
|
+
vnode_remove(diffContext.$journal$, diffContext.$vParent$, vNode, true);
|
|
26964
26988
|
}
|
|
26965
|
-
diffContext
|
|
26966
|
-
diffContext
|
|
26989
|
+
diffContext.$vSideBuffer$.clear();
|
|
26990
|
+
diffContext.$vSideBuffer$ = null;
|
|
26967
26991
|
}
|
|
26968
|
-
diffContext
|
|
26992
|
+
diffContext.$vCurrent$ = null;
|
|
26969
26993
|
}
|
|
26970
26994
|
function drainAsyncQueue(diffContext) {
|
|
26971
|
-
while (diffContext
|
|
26972
|
-
const jsxNode = diffContext
|
|
26973
|
-
const vHostNode = diffContext
|
|
26995
|
+
while (diffContext.$asyncQueue$.length) {
|
|
26996
|
+
const jsxNode = diffContext.$asyncQueue$.shift();
|
|
26997
|
+
const vHostNode = diffContext.$asyncQueue$.shift();
|
|
26974
26998
|
if (isPromise(jsxNode)) {
|
|
26975
26999
|
return jsxNode.then((jsxNode2) => {
|
|
26976
27000
|
diff(diffContext, jsxNode2, vHostNode);
|
|
26977
27001
|
return drainAsyncQueue(diffContext);
|
|
26978
27002
|
}).catch((e) => {
|
|
26979
|
-
diffContext
|
|
27003
|
+
diffContext.$container$.handleError(e, vHostNode);
|
|
26980
27004
|
return drainAsyncQueue(diffContext);
|
|
26981
27005
|
});
|
|
26982
27006
|
} else {
|
|
26983
27007
|
diff(diffContext, jsxNode, vHostNode);
|
|
26984
27008
|
}
|
|
26985
27009
|
}
|
|
26986
|
-
if (diffContext
|
|
26987
|
-
const promises = diffContext
|
|
27010
|
+
if (diffContext.$asyncAttributePromises$.length) {
|
|
27011
|
+
const promises = diffContext.$asyncAttributePromises$.splice(0);
|
|
26988
27012
|
return Promise.all(promises).then(() => {
|
|
26989
27013
|
return drainAsyncQueue(diffContext);
|
|
26990
27014
|
});
|
|
26991
27015
|
}
|
|
26992
27016
|
}
|
|
26993
27017
|
function cleanupDiffContext(diffContext) {
|
|
26994
|
-
diffContext
|
|
26995
|
-
diffContext
|
|
27018
|
+
diffContext.$journal$ = null;
|
|
27019
|
+
diffContext.$cursor$ = null;
|
|
26996
27020
|
}
|
|
26997
27021
|
function expectNoChildren(diffContext, removeDOM = true) {
|
|
26998
|
-
const vFirstChild = diffContext
|
|
27022
|
+
const vFirstChild = diffContext.$vCurrent$ && vnode_getFirstChild(diffContext.$vCurrent$);
|
|
26999
27023
|
if (vFirstChild !== null) {
|
|
27000
27024
|
let vChild = vFirstChild;
|
|
27001
27025
|
while (vChild) {
|
|
27002
|
-
cleanup(diffContext
|
|
27026
|
+
cleanup(diffContext.$container$, diffContext.$journal$, vChild, diffContext.$cursor$);
|
|
27003
27027
|
vChild = vChild.nextSibling;
|
|
27004
27028
|
}
|
|
27005
27029
|
vnode_truncate(
|
|
27006
|
-
diffContext
|
|
27007
|
-
diffContext
|
|
27030
|
+
diffContext.$journal$,
|
|
27031
|
+
diffContext.$vCurrent$,
|
|
27008
27032
|
vFirstChild,
|
|
27009
27033
|
removeDOM
|
|
27010
27034
|
);
|
|
27011
27035
|
}
|
|
27012
27036
|
}
|
|
27013
27037
|
function expectNoMore(diffContext) {
|
|
27014
|
-
|
|
27015
|
-
diffContext
|
|
27038
|
+
isDev15 && assertFalse(
|
|
27039
|
+
diffContext.$vParent$ === diffContext.$vCurrent$,
|
|
27016
27040
|
"Parent and current can't be the same"
|
|
27017
27041
|
);
|
|
27018
|
-
if (diffContext
|
|
27019
|
-
while (diffContext
|
|
27020
|
-
const toRemove = diffContext
|
|
27021
|
-
diffContext
|
|
27022
|
-
if (diffContext
|
|
27023
|
-
cleanup(diffContext
|
|
27024
|
-
vnode_remove(diffContext
|
|
27042
|
+
if (diffContext.$vCurrent$ !== null) {
|
|
27043
|
+
while (diffContext.$vCurrent$) {
|
|
27044
|
+
const toRemove = diffContext.$vCurrent$;
|
|
27045
|
+
diffContext.$vCurrent$ = peekNextSibling(diffContext.$vCurrent$);
|
|
27046
|
+
if (diffContext.$vParent$ === toRemove.parent) {
|
|
27047
|
+
cleanup(diffContext.$container$, diffContext.$journal$, toRemove, diffContext.$cursor$);
|
|
27048
|
+
vnode_remove(diffContext.$journal$, diffContext.$vParent$, toRemove, true);
|
|
27025
27049
|
}
|
|
27026
27050
|
}
|
|
27027
27051
|
}
|
|
27028
27052
|
}
|
|
27029
27053
|
function expectNoTextNode(diffContext) {
|
|
27030
|
-
if (diffContext
|
|
27031
|
-
const toRemove = diffContext
|
|
27032
|
-
diffContext
|
|
27033
|
-
vnode_remove(diffContext
|
|
27054
|
+
if (diffContext.$vCurrent$ !== null && vnode_isTextVNode(diffContext.$vCurrent$)) {
|
|
27055
|
+
const toRemove = diffContext.$vCurrent$;
|
|
27056
|
+
diffContext.$vCurrent$ = peekNextSibling(diffContext.$vCurrent$);
|
|
27057
|
+
vnode_remove(diffContext.$journal$, diffContext.$vParent$, toRemove, true);
|
|
27034
27058
|
}
|
|
27035
27059
|
}
|
|
27036
27060
|
function createNewElement(diffContext, jsx2, elementName, currentFile) {
|
|
@@ -27044,7 +27068,7 @@ function createNewElement(diffContext, jsx2, elementName, currentFile) {
|
|
|
27044
27068
|
key2,
|
|
27045
27069
|
value,
|
|
27046
27070
|
element,
|
|
27047
|
-
diffContext
|
|
27071
|
+
diffContext.$vNewNode$,
|
|
27048
27072
|
diffContext
|
|
27049
27073
|
);
|
|
27050
27074
|
continue;
|
|
@@ -27063,29 +27087,29 @@ function createNewElement(diffContext, jsx2, elementName, currentFile) {
|
|
|
27063
27087
|
}
|
|
27064
27088
|
}
|
|
27065
27089
|
if (isSignal(value)) {
|
|
27066
|
-
const vHost = diffContext
|
|
27090
|
+
const vHost = diffContext.$vNewNode$;
|
|
27067
27091
|
const signal = value;
|
|
27068
27092
|
value = retryOnPromise(
|
|
27069
27093
|
() => trackSignalAndAssignHost(
|
|
27070
27094
|
signal,
|
|
27071
27095
|
vHost,
|
|
27072
27096
|
key2,
|
|
27073
|
-
diffContext
|
|
27074
|
-
diffContext
|
|
27097
|
+
diffContext.$container$,
|
|
27098
|
+
diffContext.$subscriptionData$.$const$
|
|
27075
27099
|
)
|
|
27076
27100
|
);
|
|
27077
27101
|
}
|
|
27078
27102
|
if (isPromise(value)) {
|
|
27079
|
-
const vHost = diffContext
|
|
27103
|
+
const vHost = diffContext.$vNewNode$;
|
|
27080
27104
|
const attributePromise = value.then(
|
|
27081
27105
|
(resolvedValue) => directSetAttribute(
|
|
27082
27106
|
element,
|
|
27083
27107
|
key2,
|
|
27084
|
-
serializeAttribute(key2, resolvedValue, diffContext
|
|
27108
|
+
serializeAttribute(key2, resolvedValue, diffContext.$scopedStyleIdPrefix$),
|
|
27085
27109
|
(vHost.flags & 512 /* NS_svg */) !== 0
|
|
27086
27110
|
)
|
|
27087
27111
|
);
|
|
27088
|
-
diffContext
|
|
27112
|
+
diffContext.$asyncAttributePromises$.push(attributePromise);
|
|
27089
27113
|
continue;
|
|
27090
27114
|
}
|
|
27091
27115
|
if (key2 === dangerouslySetInnerHTML) {
|
|
@@ -27097,7 +27121,7 @@ function createNewElement(diffContext, jsx2, elementName, currentFile) {
|
|
|
27097
27121
|
}
|
|
27098
27122
|
if (elementName === "textarea" && key2 === "value") {
|
|
27099
27123
|
if (value && typeof value !== "string") {
|
|
27100
|
-
if (
|
|
27124
|
+
if (isDev15) {
|
|
27101
27125
|
throw qError(23 /* wrongTextareaValue */, [currentFile, value]);
|
|
27102
27126
|
}
|
|
27103
27127
|
continue;
|
|
@@ -27108,26 +27132,26 @@ function createNewElement(diffContext, jsx2, elementName, currentFile) {
|
|
|
27108
27132
|
directSetAttribute(
|
|
27109
27133
|
element,
|
|
27110
27134
|
key2,
|
|
27111
|
-
serializeAttribute(key2, value, diffContext
|
|
27112
|
-
(diffContext
|
|
27135
|
+
serializeAttribute(key2, value, diffContext.$scopedStyleIdPrefix$),
|
|
27136
|
+
(diffContext.$vNewNode$.flags & 512 /* NS_svg */) !== 0
|
|
27113
27137
|
);
|
|
27114
27138
|
}
|
|
27115
27139
|
}
|
|
27116
27140
|
const key = jsx2.key;
|
|
27117
27141
|
if (key) {
|
|
27118
|
-
diffContext
|
|
27142
|
+
diffContext.$vNewNode$.key = key;
|
|
27119
27143
|
}
|
|
27120
|
-
if (diffContext
|
|
27144
|
+
if (diffContext.$scopedStyleIdPrefix$) {
|
|
27121
27145
|
const classAttributeExists = _hasOwnProperty2.call(jsx2.varProps, "class") || jsx2.constProps && _hasOwnProperty2.call(jsx2.constProps, "class");
|
|
27122
27146
|
if (!classAttributeExists) {
|
|
27123
|
-
element.setAttribute("class", diffContext
|
|
27147
|
+
element.setAttribute("class", diffContext.$scopedStyleIdPrefix$);
|
|
27124
27148
|
}
|
|
27125
27149
|
}
|
|
27126
27150
|
vnode_insertElementBefore(
|
|
27127
|
-
diffContext
|
|
27128
|
-
diffContext
|
|
27129
|
-
diffContext
|
|
27130
|
-
diffContext
|
|
27151
|
+
diffContext.$journal$,
|
|
27152
|
+
diffContext.$vParent$,
|
|
27153
|
+
diffContext.$vNewNode$,
|
|
27154
|
+
diffContext.$vCurrent$
|
|
27131
27155
|
);
|
|
27132
27156
|
}
|
|
27133
27157
|
function registerEventHandlers(key, value, element, vnode, diffContext) {
|
|
@@ -27157,27 +27181,27 @@ function registerEventHandlers(key, value, element, vnode, diffContext) {
|
|
|
27157
27181
|
];
|
|
27158
27182
|
}
|
|
27159
27183
|
if (key.charAt(2) !== "e") {
|
|
27160
|
-
vnode_setAttr(diffContext
|
|
27184
|
+
vnode_setAttr(diffContext.$journal$, vnode, key, "");
|
|
27161
27185
|
}
|
|
27162
27186
|
registerQwikLoaderEvent(diffContext, scopedKebabName);
|
|
27163
27187
|
}
|
|
27164
27188
|
function createElementWithNamespace(diffContext, elementName) {
|
|
27165
|
-
const domParentVNode = vnode_getDomParentVNode(diffContext
|
|
27189
|
+
const domParentVNode = vnode_getDomParentVNode(diffContext.$vParent$, true);
|
|
27166
27190
|
const namespaceData = getNewElementNamespaceData(domParentVNode, elementName);
|
|
27167
|
-
const currentDocument = import.meta.env.TEST ? diffContext
|
|
27191
|
+
const currentDocument = import.meta.env.TEST ? diffContext.$container$.document : document;
|
|
27168
27192
|
const element = namespaceData.elementNamespaceFlag === 0 /* NS_html */ ? currentDocument.createElement(elementName) : currentDocument.createElementNS(namespaceData.elementNamespace, elementName);
|
|
27169
|
-
diffContext
|
|
27170
|
-
diffContext
|
|
27193
|
+
diffContext.$vNewNode$ = vnode_newElement(element, elementName);
|
|
27194
|
+
diffContext.$vNewNode$.flags |= namespaceData.elementNamespaceFlag;
|
|
27171
27195
|
return element;
|
|
27172
27196
|
}
|
|
27173
27197
|
function expectElement(diffContext, jsx2, elementName) {
|
|
27174
|
-
if (diffContext
|
|
27198
|
+
if (diffContext.$isCreationMode$) {
|
|
27175
27199
|
createNewElement(diffContext, jsx2, elementName, null);
|
|
27176
27200
|
} else {
|
|
27177
|
-
const isElementVNode = diffContext
|
|
27178
|
-
const isSameElementName = isElementVNode && elementName === vnode_getElementName(diffContext
|
|
27201
|
+
const isElementVNode = diffContext.$vCurrent$ && vnode_isElementVNode(diffContext.$vCurrent$);
|
|
27202
|
+
const isSameElementName = isElementVNode && elementName === vnode_getElementName(diffContext.$vCurrent$);
|
|
27179
27203
|
const jsxKey = jsx2.key;
|
|
27180
|
-
const currentKey = isElementVNode && diffContext
|
|
27204
|
+
const currentKey = isElementVNode && diffContext.$vCurrent$.key;
|
|
27181
27205
|
if (!isSameElementName || jsxKey !== currentKey) {
|
|
27182
27206
|
const sideBufferKey = getSideBufferKey(elementName, jsxKey);
|
|
27183
27207
|
if (moveOrCreateKeyedNode(
|
|
@@ -27185,7 +27209,7 @@ function expectElement(diffContext, jsx2, elementName) {
|
|
|
27185
27209
|
elementName,
|
|
27186
27210
|
jsxKey,
|
|
27187
27211
|
sideBufferKey,
|
|
27188
|
-
diffContext
|
|
27212
|
+
diffContext.$vParent$
|
|
27189
27213
|
)) {
|
|
27190
27214
|
createNewElement(diffContext, jsx2, elementName, null);
|
|
27191
27215
|
}
|
|
@@ -27194,14 +27218,14 @@ function expectElement(diffContext, jsx2, elementName) {
|
|
|
27194
27218
|
}
|
|
27195
27219
|
}
|
|
27196
27220
|
const jsxProps = jsx2.varProps;
|
|
27197
|
-
const vNode = diffContext
|
|
27221
|
+
const vNode = diffContext.$vNewNode$ || diffContext.$vCurrent$;
|
|
27198
27222
|
if (jsxProps) {
|
|
27199
|
-
diffProps(diffContext, vNode, jsxProps,
|
|
27223
|
+
diffProps(diffContext, vNode, jsxProps, isDev15 && getFileLocationFromJsx(jsx2.dev) || null);
|
|
27200
27224
|
}
|
|
27201
27225
|
}
|
|
27202
27226
|
function diffProps(diffContext, vnode, newAttrs, currentFile) {
|
|
27203
|
-
if (!diffContext
|
|
27204
|
-
vnode_ensureElementInflated(diffContext
|
|
27227
|
+
if (!diffContext.$isCreationMode$) {
|
|
27228
|
+
vnode_ensureElementInflated(diffContext.$container$, vnode);
|
|
27205
27229
|
}
|
|
27206
27230
|
const oldAttrs = vnode.props;
|
|
27207
27231
|
for (const key in newAttrs) {
|
|
@@ -27261,7 +27285,7 @@ var patchProperty = (diffContext, vnode, key, value, currentFile) => {
|
|
|
27261
27285
|
return;
|
|
27262
27286
|
}
|
|
27263
27287
|
if (currentEffect) {
|
|
27264
|
-
clearEffectSubscription(diffContext
|
|
27288
|
+
clearEffectSubscription(diffContext.$container$, currentEffect);
|
|
27265
27289
|
}
|
|
27266
27290
|
const vHost = vnode;
|
|
27267
27291
|
value = retryOnPromise(
|
|
@@ -27269,88 +27293,88 @@ var patchProperty = (diffContext, vnode, key, value, currentFile) => {
|
|
|
27269
27293
|
unwrappedSignal,
|
|
27270
27294
|
vHost,
|
|
27271
27295
|
key,
|
|
27272
|
-
diffContext
|
|
27273
|
-
diffContext
|
|
27296
|
+
diffContext.$container$,
|
|
27297
|
+
diffContext.$subscriptionData$.$var$
|
|
27274
27298
|
)
|
|
27275
27299
|
);
|
|
27276
27300
|
} else {
|
|
27277
27301
|
if (currentEffect) {
|
|
27278
|
-
clearEffectSubscription(diffContext
|
|
27302
|
+
clearEffectSubscription(diffContext.$container$, currentEffect);
|
|
27279
27303
|
}
|
|
27280
27304
|
}
|
|
27281
27305
|
if (isPromise(value)) {
|
|
27282
27306
|
const vHost = vnode;
|
|
27283
27307
|
const attributePromise = value.then((resolvedValue) => {
|
|
27284
27308
|
setAttribute(
|
|
27285
|
-
diffContext
|
|
27309
|
+
diffContext.$journal$,
|
|
27286
27310
|
vHost,
|
|
27287
27311
|
key,
|
|
27288
27312
|
resolvedValue,
|
|
27289
|
-
diffContext
|
|
27313
|
+
diffContext.$scopedStyleIdPrefix$,
|
|
27290
27314
|
originalValue
|
|
27291
27315
|
);
|
|
27292
27316
|
});
|
|
27293
|
-
diffContext
|
|
27317
|
+
diffContext.$asyncAttributePromises$.push(attributePromise);
|
|
27294
27318
|
return;
|
|
27295
27319
|
}
|
|
27296
27320
|
setAttribute(
|
|
27297
|
-
diffContext
|
|
27321
|
+
diffContext.$journal$,
|
|
27298
27322
|
vnode,
|
|
27299
27323
|
key,
|
|
27300
27324
|
value,
|
|
27301
|
-
diffContext
|
|
27325
|
+
diffContext.$scopedStyleIdPrefix$,
|
|
27302
27326
|
originalValue
|
|
27303
27327
|
);
|
|
27304
27328
|
};
|
|
27305
27329
|
function registerQwikLoaderEvent(diffContext, eventName) {
|
|
27306
|
-
const qWindow = import.meta.env.TEST ? diffContext
|
|
27330
|
+
const qWindow = import.meta.env.TEST ? diffContext.$container$.document.defaultView : window;
|
|
27307
27331
|
if (qWindow) {
|
|
27308
27332
|
(qWindow._qwikEv || (qWindow._qwikEv = [])).push(eventName);
|
|
27309
27333
|
}
|
|
27310
27334
|
}
|
|
27311
27335
|
function retrieveChildWithKey(diffContext, nodeName, key) {
|
|
27312
27336
|
let vNodeWithKey = null;
|
|
27313
|
-
if (diffContext
|
|
27314
|
-
const vCurrent = diffContext
|
|
27337
|
+
if (diffContext.$vSiblings$ === null) {
|
|
27338
|
+
const vCurrent = diffContext.$vCurrent$;
|
|
27315
27339
|
if (vCurrent) {
|
|
27316
27340
|
const name = vnode_isElementVNode(vCurrent) ? vnode_getElementName(vCurrent) : null;
|
|
27317
|
-
const vKey = getKey(vCurrent) || getComponentHash(vCurrent, diffContext
|
|
27341
|
+
const vKey = getKey(vCurrent) || getComponentHash(vCurrent, diffContext.$container$.$getObjectById$);
|
|
27318
27342
|
if (vKey === key && name === nodeName) {
|
|
27319
27343
|
return vCurrent;
|
|
27320
27344
|
}
|
|
27321
27345
|
}
|
|
27322
|
-
diffContext
|
|
27323
|
-
diffContext
|
|
27324
|
-
let vNode = diffContext
|
|
27346
|
+
diffContext.$vSiblings$ = /* @__PURE__ */ new Map();
|
|
27347
|
+
diffContext.$vSiblingsArray$ = [];
|
|
27348
|
+
let vNode = diffContext.$vCurrent$;
|
|
27325
27349
|
while (vNode) {
|
|
27326
27350
|
const name = vnode_isElementVNode(vNode) ? vnode_getElementName(vNode) : null;
|
|
27327
|
-
const vKey = getKey(vNode) || getComponentHash(vNode, diffContext
|
|
27351
|
+
const vKey = getKey(vNode) || getComponentHash(vNode, diffContext.$container$.$getObjectById$);
|
|
27328
27352
|
if (vNodeWithKey === null && vKey == key && name == nodeName) {
|
|
27329
27353
|
vNodeWithKey = vNode;
|
|
27330
27354
|
} else {
|
|
27331
27355
|
if (vKey === null) {
|
|
27332
|
-
diffContext
|
|
27356
|
+
diffContext.$vSiblingsArray$.push(name, vNode);
|
|
27333
27357
|
} else {
|
|
27334
|
-
diffContext
|
|
27358
|
+
diffContext.$vSiblings$.set(getSideBufferKey(name, vKey), vNode);
|
|
27335
27359
|
}
|
|
27336
27360
|
}
|
|
27337
27361
|
vNode = vNode.nextSibling;
|
|
27338
27362
|
}
|
|
27339
27363
|
} else {
|
|
27340
27364
|
if (key === null) {
|
|
27341
|
-
for (let i = 0; i < diffContext
|
|
27342
|
-
if (diffContext
|
|
27343
|
-
vNodeWithKey = diffContext
|
|
27344
|
-
diffContext
|
|
27365
|
+
for (let i = 0; i < diffContext.$vSiblingsArray$.length; i += 2) {
|
|
27366
|
+
if (diffContext.$vSiblingsArray$[i] === nodeName) {
|
|
27367
|
+
vNodeWithKey = diffContext.$vSiblingsArray$[i + 1];
|
|
27368
|
+
diffContext.$vSiblingsArray$.splice(i, 2);
|
|
27345
27369
|
break;
|
|
27346
27370
|
}
|
|
27347
27371
|
}
|
|
27348
27372
|
} else {
|
|
27349
27373
|
const siblingsKey = getSideBufferKey(nodeName, key);
|
|
27350
|
-
const sibling = diffContext
|
|
27374
|
+
const sibling = diffContext.$vSiblings$.get(siblingsKey);
|
|
27351
27375
|
if (sibling) {
|
|
27352
27376
|
vNodeWithKey = sibling;
|
|
27353
|
-
diffContext
|
|
27377
|
+
diffContext.$vSiblings$.delete(siblingsKey);
|
|
27354
27378
|
}
|
|
27355
27379
|
}
|
|
27356
27380
|
}
|
|
@@ -27359,27 +27383,27 @@ function retrieveChildWithKey(diffContext, nodeName, key) {
|
|
|
27359
27383
|
}
|
|
27360
27384
|
function collectSideBufferSiblings(diffContext, targetNode) {
|
|
27361
27385
|
if (!targetNode) {
|
|
27362
|
-
if (diffContext
|
|
27363
|
-
const name = vnode_isElementVNode(diffContext
|
|
27364
|
-
const vKey = getKey(diffContext
|
|
27386
|
+
if (diffContext.$vCurrent$) {
|
|
27387
|
+
const name = vnode_isElementVNode(diffContext.$vCurrent$) ? vnode_getElementName(diffContext.$vCurrent$) : null;
|
|
27388
|
+
const vKey = getKey(diffContext.$vCurrent$) || getComponentHash(diffContext.$vCurrent$, diffContext.$container$.$getObjectById$);
|
|
27365
27389
|
if (vKey != null) {
|
|
27366
27390
|
const sideBufferKey = getSideBufferKey(name, vKey);
|
|
27367
|
-
diffContext
|
|
27368
|
-
diffContext
|
|
27369
|
-
diffContext
|
|
27391
|
+
diffContext.$vSideBuffer$ || (diffContext.$vSideBuffer$ = /* @__PURE__ */ new Map());
|
|
27392
|
+
diffContext.$vSideBuffer$.set(sideBufferKey, diffContext.$vCurrent$);
|
|
27393
|
+
diffContext.$vSiblings$?.delete(sideBufferKey);
|
|
27370
27394
|
}
|
|
27371
27395
|
}
|
|
27372
27396
|
return;
|
|
27373
27397
|
}
|
|
27374
|
-
let vNode = diffContext
|
|
27398
|
+
let vNode = diffContext.$vCurrent$;
|
|
27375
27399
|
while (vNode && vNode !== targetNode) {
|
|
27376
27400
|
const name = vnode_isElementVNode(vNode) ? vnode_getElementName(vNode) : null;
|
|
27377
|
-
const vKey = getKey(vNode) || getComponentHash(vNode, diffContext
|
|
27401
|
+
const vKey = getKey(vNode) || getComponentHash(vNode, diffContext.$container$.$getObjectById$);
|
|
27378
27402
|
if (vKey != null) {
|
|
27379
27403
|
const sideBufferKey = getSideBufferKey(name, vKey);
|
|
27380
|
-
diffContext
|
|
27381
|
-
diffContext
|
|
27382
|
-
diffContext
|
|
27404
|
+
diffContext.$vSideBuffer$ || (diffContext.$vSideBuffer$ = /* @__PURE__ */ new Map());
|
|
27405
|
+
diffContext.$vSideBuffer$.set(sideBufferKey, vNode);
|
|
27406
|
+
diffContext.$vSiblings$?.delete(sideBufferKey);
|
|
27383
27407
|
}
|
|
27384
27408
|
vNode = vNode.nextSibling;
|
|
27385
27409
|
}
|
|
@@ -27392,52 +27416,52 @@ function getSideBufferKey(nodeName, key) {
|
|
|
27392
27416
|
}
|
|
27393
27417
|
function deleteFromSideBuffer(diffContext, nodeName, key) {
|
|
27394
27418
|
const sbKey = getSideBufferKey(nodeName, key);
|
|
27395
|
-
if (sbKey && diffContext
|
|
27396
|
-
diffContext
|
|
27419
|
+
if (sbKey && diffContext.$vSideBuffer$?.has(sbKey)) {
|
|
27420
|
+
diffContext.$vSideBuffer$.delete(sbKey);
|
|
27397
27421
|
return true;
|
|
27398
27422
|
}
|
|
27399
27423
|
return false;
|
|
27400
27424
|
}
|
|
27401
27425
|
function moveOrCreateKeyedNode(diffContext, nodeName, lookupKey, sideBufferKey, parentForInsert, addCurrentToSideBufferOnSideInsert) {
|
|
27402
|
-
diffContext
|
|
27403
|
-
if (diffContext
|
|
27426
|
+
diffContext.$vNewNode$ = retrieveChildWithKey(diffContext, nodeName, lookupKey);
|
|
27427
|
+
if (diffContext.$vNewNode$) {
|
|
27404
27428
|
if (!sideBufferKey) {
|
|
27405
27429
|
vnode_insertBefore(
|
|
27406
|
-
diffContext
|
|
27430
|
+
diffContext.$journal$,
|
|
27407
27431
|
parentForInsert,
|
|
27408
|
-
diffContext
|
|
27409
|
-
diffContext
|
|
27432
|
+
diffContext.$vNewNode$,
|
|
27433
|
+
diffContext.$vCurrent$
|
|
27410
27434
|
);
|
|
27411
27435
|
}
|
|
27412
|
-
diffContext
|
|
27413
|
-
diffContext
|
|
27436
|
+
diffContext.$vCurrent$ = diffContext.$vNewNode$;
|
|
27437
|
+
diffContext.$vNewNode$ = null;
|
|
27414
27438
|
return false;
|
|
27415
27439
|
}
|
|
27416
27440
|
if (sideBufferKey != null) {
|
|
27417
|
-
const buffered = diffContext
|
|
27441
|
+
const buffered = diffContext.$vSideBuffer$?.get(sideBufferKey) || null;
|
|
27418
27442
|
if (buffered) {
|
|
27419
|
-
diffContext
|
|
27420
|
-
if (addCurrentToSideBufferOnSideInsert && diffContext
|
|
27421
|
-
const currentKey = getKey(diffContext
|
|
27443
|
+
diffContext.$vSideBuffer$.delete(sideBufferKey);
|
|
27444
|
+
if (addCurrentToSideBufferOnSideInsert && diffContext.$vCurrent$) {
|
|
27445
|
+
const currentKey = getKey(diffContext.$vCurrent$) || getComponentHash(diffContext.$vCurrent$, diffContext.$container$.$getObjectById$);
|
|
27422
27446
|
if (currentKey != null) {
|
|
27423
|
-
const currentName = vnode_isElementVNode(diffContext
|
|
27447
|
+
const currentName = vnode_isElementVNode(diffContext.$vCurrent$) ? vnode_getElementName(diffContext.$vCurrent$) : null;
|
|
27424
27448
|
const currentSideKey = getSideBufferKey(currentName, currentKey);
|
|
27425
27449
|
if (currentSideKey != null) {
|
|
27426
|
-
diffContext
|
|
27427
|
-
diffContext
|
|
27450
|
+
diffContext.$vSideBuffer$ || (diffContext.$vSideBuffer$ = /* @__PURE__ */ new Map());
|
|
27451
|
+
diffContext.$vSideBuffer$.set(currentSideKey, diffContext.$vCurrent$);
|
|
27428
27452
|
}
|
|
27429
27453
|
}
|
|
27430
27454
|
}
|
|
27431
|
-
if (buffered !== diffContext
|
|
27455
|
+
if (buffered !== diffContext.$vCurrent$) {
|
|
27432
27456
|
vnode_insertBefore(
|
|
27433
|
-
diffContext
|
|
27457
|
+
diffContext.$journal$,
|
|
27434
27458
|
parentForInsert,
|
|
27435
27459
|
buffered,
|
|
27436
|
-
diffContext
|
|
27460
|
+
diffContext.$vCurrent$
|
|
27437
27461
|
);
|
|
27438
27462
|
}
|
|
27439
|
-
diffContext
|
|
27440
|
-
diffContext
|
|
27463
|
+
diffContext.$vCurrent$ = buffered;
|
|
27464
|
+
diffContext.$vNewNode$ = null;
|
|
27441
27465
|
return false;
|
|
27442
27466
|
}
|
|
27443
27467
|
}
|
|
@@ -27445,22 +27469,24 @@ function moveOrCreateKeyedNode(diffContext, nodeName, lookupKey, sideBufferKey,
|
|
|
27445
27469
|
}
|
|
27446
27470
|
function expectVirtual(diffContext, type, jsxKey) {
|
|
27447
27471
|
const checkKey = type === "F" /* Fragment */;
|
|
27448
|
-
const currentKey = getKey(
|
|
27449
|
-
|
|
27472
|
+
const currentKey = getKey(
|
|
27473
|
+
diffContext.$vCurrent$
|
|
27474
|
+
);
|
|
27475
|
+
const currentIsVirtual = diffContext.$vCurrent$ && vnode_isVirtualVNode(diffContext.$vCurrent$);
|
|
27450
27476
|
const isSameNode = currentIsVirtual && currentKey === jsxKey && (checkKey ? !!jsxKey : true);
|
|
27451
27477
|
if (isSameNode) {
|
|
27452
27478
|
deleteFromSideBuffer(diffContext, null, currentKey);
|
|
27453
27479
|
return;
|
|
27454
27480
|
}
|
|
27455
|
-
if (jsxKey === null || diffContext
|
|
27481
|
+
if (jsxKey === null || diffContext.$isCreationMode$) {
|
|
27456
27482
|
vnode_insertVirtualBefore(
|
|
27457
|
-
diffContext
|
|
27458
|
-
diffContext
|
|
27459
|
-
diffContext
|
|
27460
|
-
diffContext
|
|
27483
|
+
diffContext.$journal$,
|
|
27484
|
+
diffContext.$vParent$,
|
|
27485
|
+
diffContext.$vNewNode$ = vnode_newVirtual(),
|
|
27486
|
+
diffContext.$vCurrent$ && getInsertBefore(diffContext)
|
|
27461
27487
|
);
|
|
27462
|
-
diffContext
|
|
27463
|
-
|
|
27488
|
+
diffContext.$vNewNode$.key = jsxKey;
|
|
27489
|
+
isDev15 && vnode_setProp(diffContext.$vNewNode$, DEBUG_TYPE, type);
|
|
27464
27490
|
return;
|
|
27465
27491
|
}
|
|
27466
27492
|
if (moveOrCreateKeyedNode(
|
|
@@ -27468,69 +27494,71 @@ function expectVirtual(diffContext, type, jsxKey) {
|
|
|
27468
27494
|
null,
|
|
27469
27495
|
jsxKey,
|
|
27470
27496
|
getSideBufferKey(null, jsxKey),
|
|
27471
|
-
diffContext
|
|
27497
|
+
diffContext.$vParent$,
|
|
27472
27498
|
true
|
|
27473
27499
|
)) {
|
|
27474
27500
|
vnode_insertVirtualBefore(
|
|
27475
|
-
diffContext
|
|
27476
|
-
diffContext
|
|
27477
|
-
diffContext
|
|
27478
|
-
diffContext
|
|
27501
|
+
diffContext.$journal$,
|
|
27502
|
+
diffContext.$vParent$,
|
|
27503
|
+
diffContext.$vNewNode$ = vnode_newVirtual(),
|
|
27504
|
+
diffContext.$vCurrent$ && getInsertBefore(diffContext)
|
|
27479
27505
|
);
|
|
27480
|
-
diffContext
|
|
27481
|
-
|
|
27506
|
+
diffContext.$vNewNode$.key = jsxKey;
|
|
27507
|
+
isDev15 && vnode_setProp(diffContext.$vNewNode$, DEBUG_TYPE, type);
|
|
27482
27508
|
}
|
|
27483
27509
|
}
|
|
27484
27510
|
function expectComponent(diffContext, component) {
|
|
27485
27511
|
const componentMeta = component[SERIALIZABLE_STATE];
|
|
27486
|
-
let host = diffContext
|
|
27487
|
-
const jsxNode = diffContext
|
|
27512
|
+
let host = diffContext.$vNewNode$ || diffContext.$vCurrent$;
|
|
27513
|
+
const jsxNode = diffContext.$jsxValue$;
|
|
27488
27514
|
if (componentMeta) {
|
|
27489
27515
|
const jsxProps = jsxNode.props;
|
|
27490
27516
|
let shouldRender = false;
|
|
27491
27517
|
const [componentQRL] = componentMeta;
|
|
27492
27518
|
const componentHash = componentQRL.$hash$;
|
|
27493
|
-
const vNodeComponentHash = getComponentHash(host, diffContext
|
|
27519
|
+
const vNodeComponentHash = getComponentHash(host, diffContext.$container$.$getObjectById$);
|
|
27494
27520
|
const lookupKey = jsxNode.key || componentHash;
|
|
27495
27521
|
const vNodeLookupKey = getKey(host) || vNodeComponentHash;
|
|
27496
27522
|
const lookupKeysAreEqual = lookupKey === vNodeLookupKey;
|
|
27497
27523
|
const hashesAreEqual = componentHash === vNodeComponentHash;
|
|
27498
|
-
if (
|
|
27499
|
-
if (
|
|
27500
|
-
diffContext,
|
|
27501
|
-
|
|
27502
|
-
lookupKey,
|
|
27503
|
-
lookupKey,
|
|
27504
|
-
diffContext.vParent
|
|
27505
|
-
)) {
|
|
27524
|
+
if (lookupKeysAreEqual) {
|
|
27525
|
+
if (hashesAreEqual) {
|
|
27526
|
+
deleteFromSideBuffer(diffContext, null, lookupKey);
|
|
27527
|
+
} else {
|
|
27506
27528
|
insertNewComponent(diffContext, host, componentQRL, jsxProps);
|
|
27529
|
+
host = diffContext.$vNewNode$;
|
|
27507
27530
|
shouldRender = true;
|
|
27508
27531
|
}
|
|
27509
|
-
host = diffContext.vNewNode || diffContext.vCurrent;
|
|
27510
|
-
} else if (!hashesAreEqual || !jsxNode.key) {
|
|
27511
|
-
insertNewComponent(diffContext, host, componentQRL, jsxProps);
|
|
27512
|
-
host = diffContext.vNewNode;
|
|
27513
|
-
shouldRender = true;
|
|
27514
27532
|
} else {
|
|
27515
|
-
|
|
27533
|
+
if (moveOrCreateKeyedNode(diffContext, null, lookupKey, lookupKey, diffContext.$vParent$)) {
|
|
27534
|
+
insertNewComponent(diffContext, host, componentQRL, jsxProps);
|
|
27535
|
+
shouldRender = true;
|
|
27536
|
+
}
|
|
27537
|
+
host = diffContext.$vNewNode$ || diffContext.$vCurrent$;
|
|
27516
27538
|
}
|
|
27517
27539
|
if (host) {
|
|
27518
27540
|
const vNodeProps = vnode_getProp(
|
|
27519
27541
|
host,
|
|
27520
27542
|
ELEMENT_PROPS,
|
|
27521
|
-
diffContext
|
|
27543
|
+
diffContext.$container$.$getObjectById$
|
|
27522
27544
|
);
|
|
27523
27545
|
if (!shouldRender) {
|
|
27524
|
-
|
|
27546
|
+
const propsChanged = handleProps(host, jsxProps, vNodeProps, diffContext.$container$);
|
|
27547
|
+
if (propsChanged && jsxNode.key == null) {
|
|
27548
|
+
insertNewComponent(diffContext, host, componentQRL, jsxProps);
|
|
27549
|
+
host = diffContext.$vNewNode$;
|
|
27550
|
+
shouldRender = true;
|
|
27551
|
+
}
|
|
27552
|
+
shouldRender || (shouldRender = propsChanged);
|
|
27525
27553
|
}
|
|
27526
27554
|
if (shouldRender) {
|
|
27527
27555
|
vnode_setProp(host, OnRenderProp, componentQRL);
|
|
27528
27556
|
host.flags &= ~32 /* Deleted */;
|
|
27529
27557
|
markVNodeDirty(
|
|
27530
|
-
diffContext
|
|
27558
|
+
diffContext.$container$,
|
|
27531
27559
|
host,
|
|
27532
27560
|
4 /* COMPONENT */,
|
|
27533
|
-
diffContext
|
|
27561
|
+
diffContext.$cursor$
|
|
27534
27562
|
);
|
|
27535
27563
|
}
|
|
27536
27564
|
}
|
|
@@ -27539,22 +27567,22 @@ function expectComponent(diffContext, component) {
|
|
|
27539
27567
|
const lookupKey = jsxNode.key;
|
|
27540
27568
|
const vNodeLookupKey = getKey(host);
|
|
27541
27569
|
const lookupKeysAreEqual = lookupKey === vNodeLookupKey;
|
|
27542
|
-
const vNodeComponentHash = getComponentHash(host, diffContext
|
|
27570
|
+
const vNodeComponentHash = getComponentHash(host, diffContext.$container$.$getObjectById$);
|
|
27543
27571
|
const isInlineComponent = vNodeComponentHash == null;
|
|
27544
|
-
if (host && !isInlineComponent ||
|
|
27572
|
+
if (host && !isInlineComponent || !host) {
|
|
27545
27573
|
insertNewInlineComponent(diffContext);
|
|
27546
|
-
host = diffContext
|
|
27574
|
+
host = diffContext.$vNewNode$;
|
|
27547
27575
|
} else if (!lookupKeysAreEqual) {
|
|
27548
27576
|
if (moveOrCreateKeyedNode(
|
|
27549
27577
|
diffContext,
|
|
27550
27578
|
null,
|
|
27551
27579
|
lookupKey,
|
|
27552
27580
|
lookupKey,
|
|
27553
|
-
diffContext
|
|
27581
|
+
diffContext.$vParent$
|
|
27554
27582
|
)) {
|
|
27555
27583
|
insertNewInlineComponent(diffContext);
|
|
27556
27584
|
}
|
|
27557
|
-
host = diffContext
|
|
27585
|
+
host = diffContext.$vNewNode$ || diffContext.$vCurrent$;
|
|
27558
27586
|
} else {
|
|
27559
27587
|
deleteFromSideBuffer(diffContext, null, lookupKey);
|
|
27560
27588
|
}
|
|
@@ -27568,65 +27596,65 @@ function expectComponent(diffContext, component) {
|
|
|
27568
27596
|
componentHost = componentHost.parent || vnode_getProjectionParentComponent(componentHost);
|
|
27569
27597
|
}
|
|
27570
27598
|
const jsxOutput = executeComponent(
|
|
27571
|
-
diffContext
|
|
27599
|
+
diffContext.$container$,
|
|
27572
27600
|
host,
|
|
27573
|
-
componentHost || diffContext
|
|
27601
|
+
componentHost || diffContext.$container$.rootVNode,
|
|
27574
27602
|
component,
|
|
27575
27603
|
jsxNode.props
|
|
27576
27604
|
);
|
|
27577
|
-
diffContext
|
|
27605
|
+
diffContext.$asyncQueue$.push(jsxOutput, host);
|
|
27578
27606
|
}
|
|
27579
27607
|
}
|
|
27580
27608
|
}
|
|
27581
27609
|
function insertNewComponent(diffContext, host, componentQRL, jsxProps) {
|
|
27582
27610
|
if (host) {
|
|
27583
|
-
clearAllEffects(diffContext
|
|
27611
|
+
clearAllEffects(diffContext.$container$, host);
|
|
27584
27612
|
}
|
|
27585
27613
|
vnode_insertVirtualBefore(
|
|
27586
|
-
diffContext
|
|
27587
|
-
diffContext
|
|
27588
|
-
diffContext
|
|
27589
|
-
diffContext
|
|
27614
|
+
diffContext.$journal$,
|
|
27615
|
+
diffContext.$vParent$,
|
|
27616
|
+
diffContext.$vNewNode$ = vnode_newVirtual(),
|
|
27617
|
+
diffContext.$vCurrent$ && getInsertBefore(diffContext)
|
|
27590
27618
|
);
|
|
27591
|
-
const jsxNode = diffContext
|
|
27592
|
-
|
|
27593
|
-
vnode_setProp(diffContext
|
|
27594
|
-
vnode_setProp(diffContext
|
|
27595
|
-
diffContext
|
|
27619
|
+
const jsxNode = diffContext.$jsxValue$;
|
|
27620
|
+
isDev15 && vnode_setProp(diffContext.$vNewNode$, DEBUG_TYPE, "C" /* Component */);
|
|
27621
|
+
vnode_setProp(diffContext.$vNewNode$, OnRenderProp, componentQRL);
|
|
27622
|
+
vnode_setProp(diffContext.$vNewNode$, ELEMENT_PROPS, jsxProps);
|
|
27623
|
+
diffContext.$vNewNode$.key = jsxNode.key;
|
|
27596
27624
|
}
|
|
27597
27625
|
function insertNewInlineComponent(diffContext) {
|
|
27598
27626
|
vnode_insertVirtualBefore(
|
|
27599
|
-
diffContext
|
|
27600
|
-
diffContext
|
|
27601
|
-
diffContext
|
|
27602
|
-
diffContext
|
|
27627
|
+
diffContext.$journal$,
|
|
27628
|
+
diffContext.$vParent$,
|
|
27629
|
+
diffContext.$vNewNode$ = vnode_newVirtual(),
|
|
27630
|
+
diffContext.$vCurrent$ && getInsertBefore(diffContext)
|
|
27603
27631
|
);
|
|
27604
|
-
const jsxNode = diffContext
|
|
27605
|
-
|
|
27606
|
-
vnode_setProp(diffContext
|
|
27632
|
+
const jsxNode = diffContext.$jsxValue$;
|
|
27633
|
+
isDev15 && vnode_setProp(diffContext.$vNewNode$, DEBUG_TYPE, "I" /* InlineComponent */);
|
|
27634
|
+
vnode_setProp(diffContext.$vNewNode$, ELEMENT_PROPS, jsxNode.props);
|
|
27607
27635
|
if (jsxNode.key) {
|
|
27608
|
-
diffContext
|
|
27636
|
+
diffContext.$vNewNode$.key = jsxNode.key;
|
|
27609
27637
|
}
|
|
27610
27638
|
}
|
|
27611
27639
|
function expectText(diffContext, text) {
|
|
27612
|
-
if (diffContext
|
|
27613
|
-
const type = vnode_getType(diffContext
|
|
27640
|
+
if (diffContext.$vCurrent$ !== null) {
|
|
27641
|
+
const type = vnode_getType(diffContext.$vCurrent$);
|
|
27614
27642
|
if (type === 3) {
|
|
27615
|
-
if (text !== vnode_getText(diffContext
|
|
27616
|
-
vnode_setText(diffContext
|
|
27643
|
+
if (text !== vnode_getText(diffContext.$vCurrent$)) {
|
|
27644
|
+
vnode_setText(diffContext.$journal$, diffContext.$vCurrent$, text);
|
|
27617
27645
|
return;
|
|
27618
27646
|
}
|
|
27619
27647
|
return;
|
|
27620
27648
|
}
|
|
27621
27649
|
}
|
|
27622
27650
|
vnode_insertElementBefore(
|
|
27623
|
-
diffContext
|
|
27624
|
-
diffContext
|
|
27625
|
-
diffContext
|
|
27626
|
-
(import.meta.env.TEST ? diffContext
|
|
27651
|
+
diffContext.$journal$,
|
|
27652
|
+
diffContext.$vParent$,
|
|
27653
|
+
diffContext.$vNewNode$ = vnode_newText(
|
|
27654
|
+
(import.meta.env.TEST ? diffContext.$container$.document : document).createTextNode(text),
|
|
27627
27655
|
text
|
|
27628
27656
|
),
|
|
27629
|
-
diffContext
|
|
27657
|
+
diffContext.$vCurrent$
|
|
27630
27658
|
);
|
|
27631
27659
|
}
|
|
27632
27660
|
function getKey(vNode) {
|
|
@@ -28214,7 +28242,7 @@ var createMacroTask = (fn) => {
|
|
|
28214
28242
|
};
|
|
28215
28243
|
|
|
28216
28244
|
// packages/qwik/src/core/shared/cursor/cursor-walker.ts
|
|
28217
|
-
import { isDev as
|
|
28245
|
+
import { isBrowser as isBrowser2, isDev as isDev16, isServer as isServer7 } from "@qwik.dev/core/build";
|
|
28218
28246
|
var DEBUG6 = false;
|
|
28219
28247
|
var nextMicroTask = createMicroTask(processCursorQueue);
|
|
28220
28248
|
var nextMacroTask = createMacroTask(processCursorQueue);
|
|
@@ -28251,7 +28279,7 @@ function walkCursor(cursor, options) {
|
|
|
28251
28279
|
return;
|
|
28252
28280
|
}
|
|
28253
28281
|
const container = cursorData.container;
|
|
28254
|
-
|
|
28282
|
+
isDev16 && assertDefined(container, "Cursor container not found");
|
|
28255
28283
|
if (!cursor.dirty) {
|
|
28256
28284
|
finishWalk(container, cursor, cursorData, isRunningOnServer);
|
|
28257
28285
|
return;
|
|
@@ -28321,7 +28349,7 @@ function walkCursor(cursor, options) {
|
|
|
28321
28349
|
});
|
|
28322
28350
|
return;
|
|
28323
28351
|
}
|
|
28324
|
-
if (
|
|
28352
|
+
if (isBrowser2) {
|
|
28325
28353
|
const elapsed = performance.now() - startTime;
|
|
28326
28354
|
if (elapsed >= timeBudget) {
|
|
28327
28355
|
scheduleYield();
|
|
@@ -28329,7 +28357,7 @@ function walkCursor(cursor, options) {
|
|
|
28329
28357
|
}
|
|
28330
28358
|
}
|
|
28331
28359
|
}
|
|
28332
|
-
|
|
28360
|
+
isDev16 && assertFalse(
|
|
28333
28361
|
!!(cursor.dirty & 127 /* DIRTY_MASK */ && !cursorData.position),
|
|
28334
28362
|
"Cursor is still dirty and position is not set after walking"
|
|
28335
28363
|
);
|
|
@@ -28389,10 +28417,10 @@ function getNextVNode(vNode, cursor) {
|
|
|
28389
28417
|
return null;
|
|
28390
28418
|
}
|
|
28391
28419
|
let parent = null;
|
|
28392
|
-
if (vNode.
|
|
28393
|
-
parent = vNode.parent;
|
|
28394
|
-
} else if (vNode.slotParent && vNode.slotParent.dirty & 32 /* CHILDREN */) {
|
|
28420
|
+
if (vNode.slotParent && vNode.slotParent.dirty & 32 /* CHILDREN */) {
|
|
28395
28421
|
parent = vNode.slotParent;
|
|
28422
|
+
} else if (vNode.parent && vNode.parent.dirty & 32 /* CHILDREN */) {
|
|
28423
|
+
parent = vNode.parent;
|
|
28396
28424
|
}
|
|
28397
28425
|
if (!parent) {
|
|
28398
28426
|
if (cursor.dirty & 127 /* DIRTY_MASK */) {
|
|
@@ -28460,12 +28488,14 @@ function propagatePath(target) {
|
|
|
28460
28488
|
const parent = reusablePath[i + 1] || target;
|
|
28461
28489
|
parent.dirty |= 32 /* CHILDREN */;
|
|
28462
28490
|
parent.dirtyChildren || (parent.dirtyChildren = []);
|
|
28463
|
-
parent.dirtyChildren.
|
|
28491
|
+
if (!parent.dirtyChildren.includes(child)) {
|
|
28492
|
+
parent.dirtyChildren.push(child);
|
|
28493
|
+
}
|
|
28464
28494
|
}
|
|
28465
28495
|
}
|
|
28466
28496
|
function propagateToCursorRoot(vNode, cursorRoot) {
|
|
28467
28497
|
reusablePath.push(vNode);
|
|
28468
|
-
let current = vNode.
|
|
28498
|
+
let current = vNode.slotParent || vNode.parent;
|
|
28469
28499
|
while (current) {
|
|
28470
28500
|
const isDirty = current.dirty & 127 /* DIRTY_MASK */;
|
|
28471
28501
|
const currentIsCursor = isCursor(current);
|
|
@@ -28487,14 +28517,14 @@ function propagateToCursorRoot(vNode, cursorRoot) {
|
|
|
28487
28517
|
}
|
|
28488
28518
|
}
|
|
28489
28519
|
reusablePath.push(current);
|
|
28490
|
-
current = current.
|
|
28520
|
+
current = current.slotParent || current.parent;
|
|
28491
28521
|
}
|
|
28492
28522
|
reusablePath.length = 0;
|
|
28493
28523
|
throwErrorAndStop("Cursor root not found in current path!");
|
|
28494
28524
|
}
|
|
28495
28525
|
function findAndPropagateToBlockingCursor(vNode) {
|
|
28496
28526
|
reusablePath.push(vNode);
|
|
28497
|
-
let current = vNode.
|
|
28527
|
+
let current = vNode.slotParent || vNode.parent;
|
|
28498
28528
|
while (current) {
|
|
28499
28529
|
const currentIsCursor = isCursor(current);
|
|
28500
28530
|
if (currentIsCursor) {
|
|
@@ -28503,7 +28533,7 @@ function findAndPropagateToBlockingCursor(vNode) {
|
|
|
28503
28533
|
return true;
|
|
28504
28534
|
}
|
|
28505
28535
|
reusablePath.push(current);
|
|
28506
|
-
current = current.
|
|
28536
|
+
current = current.slotParent || current.parent;
|
|
28507
28537
|
}
|
|
28508
28538
|
reusablePath.length = 0;
|
|
28509
28539
|
return false;
|
|
@@ -28525,7 +28555,7 @@ function markVNodeDirty(container, vNode, bits, cursorRoot = null) {
|
|
|
28525
28555
|
if ((isRealDirty ? prevDirty & 127 /* DIRTY_MASK */ : prevDirty) || vNode === cursorRoot) {
|
|
28526
28556
|
return;
|
|
28527
28557
|
}
|
|
28528
|
-
const parent = vNode.
|
|
28558
|
+
const parent = vNode.slotParent || vNode.parent;
|
|
28529
28559
|
if (cursorRoot && isRealDirty && parent && !parent.dirty) {
|
|
28530
28560
|
propagateToCursorRoot(vNode, cursorRoot);
|
|
28531
28561
|
return;
|
|
@@ -28535,7 +28565,9 @@ function markVNodeDirty(container, vNode, bits, cursorRoot = null) {
|
|
|
28535
28565
|
parent.dirty |= 32 /* CHILDREN */;
|
|
28536
28566
|
}
|
|
28537
28567
|
parent.dirtyChildren || (parent.dirtyChildren = []);
|
|
28538
|
-
parent.dirtyChildren.
|
|
28568
|
+
if (!parent.dirtyChildren.includes(vNode)) {
|
|
28569
|
+
parent.dirtyChildren.push(vNode);
|
|
28570
|
+
}
|
|
28539
28571
|
if (isRealDirty && vNode.dirtyChildren) {
|
|
28540
28572
|
const cursor = findCursor(vNode);
|
|
28541
28573
|
if (cursor) {
|
|
@@ -28543,7 +28575,7 @@ function markVNodeDirty(container, vNode, bits, cursorRoot = null) {
|
|
|
28543
28575
|
let cursorPosition = cursorData.position;
|
|
28544
28576
|
if (cursorPosition) {
|
|
28545
28577
|
while (cursorPosition !== cursor) {
|
|
28546
|
-
cursorPosition = cursorPosition.
|
|
28578
|
+
cursorPosition = cursorPosition.slotParent || cursorPosition.parent;
|
|
28547
28579
|
if (cursorPosition === vNode) {
|
|
28548
28580
|
cursorData.position = vNode;
|
|
28549
28581
|
break;
|
|
@@ -28563,7 +28595,7 @@ function addVNodeOperation(journal, operation) {
|
|
|
28563
28595
|
}
|
|
28564
28596
|
|
|
28565
28597
|
// packages/qwik/src/core/reactive-primitives/impl/wrapped-signal-impl.ts
|
|
28566
|
-
import { isDev as
|
|
28598
|
+
import { isDev as isDev17 } from "@qwik.dev/core/build";
|
|
28567
28599
|
var _a5, _b3;
|
|
28568
28600
|
var WrappedSignalImpl = class extends (_b3 = SignalImpl, _a5 = _EFFECT_BACK_REF, _b3) {
|
|
28569
28601
|
constructor(container, fn, args, fnStr, flags = 1 /* INVALID */ | 4 /* UNWRAP */) {
|
|
@@ -28598,7 +28630,7 @@ var WrappedSignalImpl = class extends (_b3 = SignalImpl, _a5 = _EFFECT_BACK_REF,
|
|
|
28598
28630
|
}
|
|
28599
28631
|
get untrackedValue() {
|
|
28600
28632
|
this.$computeIfNeeded$();
|
|
28601
|
-
|
|
28633
|
+
isDev17 && assertFalse(this.$untrackedValue$ === NEEDS_COMPUTATION, "Invalid state");
|
|
28602
28634
|
return this.$untrackedValue$;
|
|
28603
28635
|
}
|
|
28604
28636
|
$computeIfNeeded$() {
|
|
@@ -28835,7 +28867,7 @@ function _chk(_, element) {
|
|
|
28835
28867
|
var version = globalThis.QWIK_VERSION;
|
|
28836
28868
|
|
|
28837
28869
|
// packages/qwik/src/core/shared/serdes/serialize.ts
|
|
28838
|
-
import { isDev as
|
|
28870
|
+
import { isDev as isDev18 } from "@qwik.dev/core/build";
|
|
28839
28871
|
|
|
28840
28872
|
// packages/qwik/src/core/shared/ssr-const.ts
|
|
28841
28873
|
var LT = "<";
|
|
@@ -28855,13 +28887,13 @@ var COMMA = ",";
|
|
|
28855
28887
|
var Serializer = class {
|
|
28856
28888
|
constructor($serializationContext$) {
|
|
28857
28889
|
this.$serializationContext$ = $serializationContext$;
|
|
28858
|
-
__publicField(this, "rootIdx", 0);
|
|
28859
|
-
__publicField(this, "forwardRefs", []);
|
|
28860
|
-
__publicField(this, "forwardRefsId", 0);
|
|
28861
|
-
__publicField(this, "promises", /* @__PURE__ */ new Set());
|
|
28862
|
-
__publicField(this, "s11nWeakRefs", /* @__PURE__ */ new Map());
|
|
28863
|
-
__publicField(this, "parent");
|
|
28864
|
-
__publicField(this, "qrlMap", /* @__PURE__ */ new Map());
|
|
28890
|
+
__publicField(this, "$rootIdx$", 0);
|
|
28891
|
+
__publicField(this, "$forwardRefs$", []);
|
|
28892
|
+
__publicField(this, "$forwardRefsId$", 0);
|
|
28893
|
+
__publicField(this, "$promises$", /* @__PURE__ */ new Set());
|
|
28894
|
+
__publicField(this, "$s11nWeakRefs$", /* @__PURE__ */ new Map());
|
|
28895
|
+
__publicField(this, "$parent$");
|
|
28896
|
+
__publicField(this, "$qrlMap$", /* @__PURE__ */ new Map());
|
|
28865
28897
|
__publicField(this, "$writer$");
|
|
28866
28898
|
this.$writer$ = $serializationContext$.$writer$;
|
|
28867
28899
|
}
|
|
@@ -28926,7 +28958,7 @@ var Serializer = class {
|
|
|
28926
28958
|
}
|
|
28927
28959
|
getSeenRefOrOutput(value, index, keepWeak) {
|
|
28928
28960
|
let seen = this.$serializationContext$.getSeenRef(value);
|
|
28929
|
-
const forwardRefIdx = !keepWeak && this
|
|
28961
|
+
const forwardRefIdx = !keepWeak && this.$s11nWeakRefs$.get(value);
|
|
28930
28962
|
if (!seen) {
|
|
28931
28963
|
if (keepWeak) {
|
|
28932
28964
|
return true;
|
|
@@ -28934,11 +28966,11 @@ var Serializer = class {
|
|
|
28934
28966
|
if (typeof forwardRefIdx === "number") {
|
|
28935
28967
|
seen = this.$serializationContext$.$addRoot$(value, true);
|
|
28936
28968
|
} else {
|
|
28937
|
-
return this.$serializationContext$.$markSeen$(value, this
|
|
28969
|
+
return this.$serializationContext$.$markSeen$(value, this.$parent$, index);
|
|
28938
28970
|
}
|
|
28939
28971
|
}
|
|
28940
28972
|
if (seen.$parent$) {
|
|
28941
|
-
if (!this
|
|
28973
|
+
if (!this.$parent$) {
|
|
28942
28974
|
this.$serializationContext$.$promoteToRoot$(seen, index);
|
|
28943
28975
|
value = this.$serializationContext$.$roots$[index];
|
|
28944
28976
|
} else {
|
|
@@ -28946,11 +28978,11 @@ var Serializer = class {
|
|
|
28946
28978
|
}
|
|
28947
28979
|
}
|
|
28948
28980
|
if (typeof forwardRefIdx === "number") {
|
|
28949
|
-
this
|
|
28950
|
-
this
|
|
28981
|
+
this.$forwardRefs$[forwardRefIdx] = seen.$index$;
|
|
28982
|
+
this.$s11nWeakRefs$.delete(value);
|
|
28951
28983
|
}
|
|
28952
28984
|
const rootIdx = value instanceof SerializationBackRef ? value.$path$ : seen.$index$;
|
|
28953
|
-
if (!this
|
|
28985
|
+
if (!this.$parent$ && rootIdx === index) {
|
|
28954
28986
|
return seen;
|
|
28955
28987
|
}
|
|
28956
28988
|
this.output(1 /* RootRef */, rootIdx);
|
|
@@ -29024,13 +29056,13 @@ var Serializer = class {
|
|
|
29024
29056
|
let data;
|
|
29025
29057
|
if (chunk !== "") {
|
|
29026
29058
|
data = `${this.$serializationContext$.$addRoot$(chunk)}#${this.$serializationContext$.$addRoot$(symbol)}${captures ? "#" + captures : ""}`;
|
|
29027
|
-
const existing = this
|
|
29059
|
+
const existing = this.$qrlMap$.get(data);
|
|
29028
29060
|
if (existing) {
|
|
29029
29061
|
const ref = this.$serializationContext$.$addRoot$(existing);
|
|
29030
29062
|
this.output(1 /* RootRef */, ref);
|
|
29031
29063
|
return;
|
|
29032
29064
|
} else {
|
|
29033
|
-
this
|
|
29065
|
+
this.$qrlMap$.set(data, value);
|
|
29034
29066
|
}
|
|
29035
29067
|
} else {
|
|
29036
29068
|
data = Number(symbol);
|
|
@@ -29057,10 +29089,10 @@ var Serializer = class {
|
|
|
29057
29089
|
} else {
|
|
29058
29090
|
const newSeenRef = this.getSeenRefOrOutput(value, index);
|
|
29059
29091
|
if (newSeenRef) {
|
|
29060
|
-
const oldParent = this
|
|
29061
|
-
this
|
|
29092
|
+
const oldParent = this.$parent$;
|
|
29093
|
+
this.$parent$ = newSeenRef;
|
|
29062
29094
|
this.writeObjectValue(value);
|
|
29063
|
-
this
|
|
29095
|
+
this.$parent$ = oldParent;
|
|
29064
29096
|
}
|
|
29065
29097
|
}
|
|
29066
29098
|
break;
|
|
@@ -29117,8 +29149,8 @@ var Serializer = class {
|
|
|
29117
29149
|
});
|
|
29118
29150
|
this.output(2 /* ForwardRef */, forwardRef);
|
|
29119
29151
|
} else {
|
|
29120
|
-
const index = this
|
|
29121
|
-
this
|
|
29152
|
+
const index = this.$parent$.$index$;
|
|
29153
|
+
this.$parent$ = this.$parent$.$parent$;
|
|
29122
29154
|
this.writeValue(result2, index);
|
|
29123
29155
|
}
|
|
29124
29156
|
} else if (isObjectLiteral(value)) {
|
|
@@ -29219,7 +29251,7 @@ var Serializer = class {
|
|
|
29219
29251
|
} else if (value instanceof Error) {
|
|
29220
29252
|
const out = [value.message];
|
|
29221
29253
|
out.push(...Object.entries(value).flat());
|
|
29222
|
-
if (
|
|
29254
|
+
if (isDev18) {
|
|
29223
29255
|
out.push("stack", value.stack);
|
|
29224
29256
|
}
|
|
29225
29257
|
this.output(15 /* Error */, out);
|
|
@@ -29301,8 +29333,8 @@ var Serializer = class {
|
|
|
29301
29333
|
if (value.$qrl$) {
|
|
29302
29334
|
this.output(26 /* SerializerSignal */, [value.$qrl$, value.$effects$, value.$value$]);
|
|
29303
29335
|
} else if (value.$resolved$) {
|
|
29304
|
-
const index = this
|
|
29305
|
-
this
|
|
29336
|
+
const index = this.$parent$.$index$;
|
|
29337
|
+
this.$parent$ = this.$parent$.$parent$;
|
|
29306
29338
|
this.writeValue(value.$value$, index);
|
|
29307
29339
|
} else {
|
|
29308
29340
|
console.error(value.$value$);
|
|
@@ -29321,12 +29353,12 @@ var Serializer = class {
|
|
|
29321
29353
|
this.output(19 /* Uint8Array */, out);
|
|
29322
29354
|
} else if (value instanceof SerializationWeakRef) {
|
|
29323
29355
|
const obj = value.$obj$;
|
|
29324
|
-
if (this.getSeenRefOrOutput(obj, this
|
|
29325
|
-
let forwardRefId = this
|
|
29356
|
+
if (this.getSeenRefOrOutput(obj, this.$parent$.$index$, true)) {
|
|
29357
|
+
let forwardRefId = this.$s11nWeakRefs$.get(obj);
|
|
29326
29358
|
if (forwardRefId === void 0) {
|
|
29327
|
-
forwardRefId = this
|
|
29328
|
-
this
|
|
29329
|
-
this
|
|
29359
|
+
forwardRefId = this.$forwardRefsId$++;
|
|
29360
|
+
this.$s11nWeakRefs$.set(obj, forwardRefId);
|
|
29361
|
+
this.$forwardRefs$[forwardRefId] = -1;
|
|
29330
29362
|
}
|
|
29331
29363
|
this.output(2 /* ForwardRef */, forwardRefId);
|
|
29332
29364
|
}
|
|
@@ -29337,53 +29369,53 @@ var Serializer = class {
|
|
|
29337
29369
|
}
|
|
29338
29370
|
}
|
|
29339
29371
|
resolvePromise(promise, classCreator) {
|
|
29340
|
-
const forwardRefId = this
|
|
29372
|
+
const forwardRefId = this.$forwardRefsId$++;
|
|
29341
29373
|
promise.then((resolvedValue) => {
|
|
29342
|
-
this
|
|
29343
|
-
this
|
|
29374
|
+
this.$promises$.delete(promise);
|
|
29375
|
+
this.$forwardRefs$[forwardRefId] = this.$serializationContext$.$addRoot$(
|
|
29344
29376
|
classCreator(true, resolvedValue)
|
|
29345
29377
|
);
|
|
29346
29378
|
}).catch((err) => {
|
|
29347
|
-
this
|
|
29348
|
-
this
|
|
29379
|
+
this.$promises$.delete(promise);
|
|
29380
|
+
this.$forwardRefs$[forwardRefId] = this.$serializationContext$.$addRoot$(
|
|
29349
29381
|
classCreator(false, err)
|
|
29350
29382
|
);
|
|
29351
29383
|
});
|
|
29352
|
-
this
|
|
29384
|
+
this.$promises$.add(promise);
|
|
29353
29385
|
return forwardRefId;
|
|
29354
29386
|
}
|
|
29355
29387
|
async outputRoots() {
|
|
29356
29388
|
this.$writer$.write(BRACKET_OPEN);
|
|
29357
29389
|
const { $roots$ } = this.$serializationContext$;
|
|
29358
|
-
while (this
|
|
29359
|
-
if (this
|
|
29390
|
+
while (this.$rootIdx$ < $roots$.length || this.$promises$.size) {
|
|
29391
|
+
if (this.$rootIdx$ !== 0) {
|
|
29360
29392
|
this.$writer$.write(COMMA);
|
|
29361
29393
|
}
|
|
29362
29394
|
let separator = false;
|
|
29363
|
-
for (; this
|
|
29395
|
+
for (; this.$rootIdx$ < $roots$.length; this.$rootIdx$++) {
|
|
29364
29396
|
if (separator) {
|
|
29365
29397
|
this.$writer$.write(COMMA);
|
|
29366
29398
|
} else {
|
|
29367
29399
|
separator = true;
|
|
29368
29400
|
}
|
|
29369
|
-
this.writeValue($roots$[this
|
|
29401
|
+
this.writeValue($roots$[this.$rootIdx$], this.$rootIdx$);
|
|
29370
29402
|
}
|
|
29371
|
-
if (this
|
|
29403
|
+
if (this.$promises$.size) {
|
|
29372
29404
|
try {
|
|
29373
|
-
await Promise.race(this
|
|
29405
|
+
await Promise.race(this.$promises$);
|
|
29374
29406
|
} catch {
|
|
29375
29407
|
}
|
|
29376
29408
|
}
|
|
29377
29409
|
}
|
|
29378
|
-
if (this
|
|
29379
|
-
let lastIdx = this
|
|
29380
|
-
while (lastIdx >= 0 && this
|
|
29410
|
+
if (this.$forwardRefs$.length) {
|
|
29411
|
+
let lastIdx = this.$forwardRefs$.length - 1;
|
|
29412
|
+
while (lastIdx >= 0 && this.$forwardRefs$[lastIdx] === -1) {
|
|
29381
29413
|
lastIdx--;
|
|
29382
29414
|
}
|
|
29383
29415
|
if (lastIdx >= 0) {
|
|
29384
29416
|
this.$writer$.write(COMMA);
|
|
29385
29417
|
this.$writer$.write(14 /* ForwardRefs */ + COMMA);
|
|
29386
|
-
const out = lastIdx === this
|
|
29418
|
+
const out = lastIdx === this.$forwardRefs$.length - 1 ? this.$forwardRefs$ : this.$forwardRefs$.slice(0, lastIdx + 1);
|
|
29387
29419
|
this.outputArray(out, true, (value) => {
|
|
29388
29420
|
this.$writer$.write(String(value));
|
|
29389
29421
|
});
|
|
@@ -29721,7 +29753,7 @@ var allocate = (container, typeId, value) => {
|
|
|
29721
29753
|
case 28 /* FormData */:
|
|
29722
29754
|
return new FormData();
|
|
29723
29755
|
case 29 /* JSXNode */:
|
|
29724
|
-
return new JSXNodeImpl(null, null, null, null, null);
|
|
29756
|
+
return new JSXNodeImpl(null, null, null, null, 0, null);
|
|
29725
29757
|
case 12 /* BigInt */:
|
|
29726
29758
|
return BigInt(value);
|
|
29727
29759
|
case 17 /* Set */:
|
|
@@ -29956,7 +29988,7 @@ var inflate = (container, target, typeId, data) => {
|
|
|
29956
29988
|
const d = data;
|
|
29957
29989
|
let owner = d[0];
|
|
29958
29990
|
if (owner === _UNINITIALIZED) {
|
|
29959
|
-
owner = new JSXNodeImpl(Fragment, d[1], d[2], null, null);
|
|
29991
|
+
owner = new JSXNodeImpl(Fragment, d[1], d[2], null, 0, null);
|
|
29960
29992
|
owner._proxy = propsProxy;
|
|
29961
29993
|
}
|
|
29962
29994
|
propsProxy[_OWNER] = owner;
|
|
@@ -30117,13 +30149,13 @@ var makeResolveFunction = (qrl, symbolFn) => {
|
|
|
30117
30149
|
}
|
|
30118
30150
|
}
|
|
30119
30151
|
if (qrl.$chunk$ === "") {
|
|
30120
|
-
|
|
30152
|
+
isDev19 && assertDefined(qrl.$container$, "Sync QRL must have container element");
|
|
30121
30153
|
const hash3 = qrl.$container$.$instanceHash$;
|
|
30122
30154
|
const doc2 = qrl.$container$.element?.ownerDocument || document;
|
|
30123
30155
|
const qFuncs2 = getQFuncs(doc2, hash3);
|
|
30124
30156
|
return qrl.resolved = symbolRef = qFuncs2[Number(qrl.$symbol$)];
|
|
30125
30157
|
}
|
|
30126
|
-
if (
|
|
30158
|
+
if (isBrowser3 && qrl.$chunk$) {
|
|
30127
30159
|
preload(qrl.$chunk$, 1);
|
|
30128
30160
|
}
|
|
30129
30161
|
const start = now();
|
|
@@ -30221,7 +30253,7 @@ var createQRL = (chunk, symbol, symbolRef, symbolFn, captures) => {
|
|
|
30221
30253
|
})
|
|
30222
30254
|
);
|
|
30223
30255
|
}
|
|
30224
|
-
if (
|
|
30256
|
+
if (isBrowser3 && chunk) {
|
|
30225
30257
|
preload(chunk, 0.8);
|
|
30226
30258
|
}
|
|
30227
30259
|
return qrl;
|
|
@@ -30262,7 +30294,7 @@ var BIND_VALUE = "bind:value";
|
|
|
30262
30294
|
var BIND_CHECKED = "bind:checked";
|
|
30263
30295
|
var _hasOwnProperty3 = Object.prototype.hasOwnProperty;
|
|
30264
30296
|
var _jsxSorted = (type, varProps, constProps, children, flags, key, dev) => {
|
|
30265
|
-
return new JSXNodeImpl(type, varProps, constProps, children, key, false, dev);
|
|
30297
|
+
return new JSXNodeImpl(type, varProps, constProps, children, flags, key, false, dev);
|
|
30266
30298
|
};
|
|
30267
30299
|
var _jsxSplit = (type, varProps, constProps, children, flags, key, dev) => {
|
|
30268
30300
|
let toSort = false;
|
|
@@ -30427,7 +30459,7 @@ var _jsxSplit = (type, varProps, constProps, children, flags, key, dev) => {
|
|
|
30427
30459
|
}
|
|
30428
30460
|
}
|
|
30429
30461
|
}
|
|
30430
|
-
return new JSXNodeImpl(type, varProps, constProps, children, key, toSort || true, dev);
|
|
30462
|
+
return new JSXNodeImpl(type, varProps, constProps, children, flags, key, toSort || true, dev);
|
|
30431
30463
|
};
|
|
30432
30464
|
var Virtual = (props) => props.children;
|
|
30433
30465
|
|
|
@@ -30858,12 +30890,12 @@ var DomContainer = class extends _SharedContainer {
|
|
|
30858
30890
|
__publicField(this, "qManifestHash");
|
|
30859
30891
|
__publicField(this, "rootVNode");
|
|
30860
30892
|
__publicField(this, "document");
|
|
30861
|
-
__publicField(this, "$rawStateData$");
|
|
30862
30893
|
__publicField(this, "$storeProxyMap$", /* @__PURE__ */ new WeakMap());
|
|
30863
30894
|
__publicField(this, "$qFuncs$");
|
|
30864
30895
|
__publicField(this, "$instanceHash$");
|
|
30865
30896
|
__publicField(this, "$forwardRefs$", null);
|
|
30866
30897
|
__publicField(this, "vNodeLocate", (id) => vnode_locate(this.rootVNode, id));
|
|
30898
|
+
__publicField(this, "$rawStateData$");
|
|
30867
30899
|
__publicField(this, "$stateData$");
|
|
30868
30900
|
__publicField(this, "$styleIds$", null);
|
|
30869
30901
|
__publicField(this, "$getObjectById$", (id) => {
|
|
@@ -31038,7 +31070,7 @@ var DomContainer = class extends _SharedContainer {
|
|
|
31038
31070
|
}
|
|
31039
31071
|
getSyncFn(id) {
|
|
31040
31072
|
const fn = this.$qFuncs$[id];
|
|
31041
|
-
|
|
31073
|
+
isDev20 && assertTrue(typeof fn === "function", "Invalid reference: " + id);
|
|
31042
31074
|
return fn;
|
|
31043
31075
|
}
|
|
31044
31076
|
$appendStyle$(content, styleId, host, scoped) {
|
|
@@ -31081,17 +31113,17 @@ var DomContainer = class extends _SharedContainer {
|
|
|
31081
31113
|
};
|
|
31082
31114
|
|
|
31083
31115
|
// packages/qwik/src/core/preloader/queue.ts
|
|
31084
|
-
import { isBrowser as
|
|
31116
|
+
import { isBrowser as isBrowser5 } from "@qwik.dev/core/build";
|
|
31085
31117
|
|
|
31086
31118
|
// packages/qwik/src/core/preloader/constants.ts
|
|
31087
|
-
import { isBrowser as
|
|
31088
|
-
var doc =
|
|
31119
|
+
import { isBrowser as isBrowser4 } from "@qwik.dev/core/build";
|
|
31120
|
+
var doc = isBrowser4 ? document : void 0;
|
|
31089
31121
|
var config = {
|
|
31090
31122
|
$DEBUG$: false,
|
|
31091
31123
|
$maxIdlePreloads$: 25,
|
|
31092
31124
|
$invPreloadProbability$: 0.65
|
|
31093
31125
|
};
|
|
31094
|
-
var rel =
|
|
31126
|
+
var rel = isBrowser4 && doc.createElement("link").relList.supports("modulepreload") ? "modulePreload" : "preload";
|
|
31095
31127
|
var loadStart = Date.now();
|
|
31096
31128
|
var isJSRegex = /\.[mc]?js$/;
|
|
31097
31129
|
|
|
@@ -31338,11 +31370,11 @@ var preload2 = (name, probability) => {
|
|
|
31338
31370
|
} else {
|
|
31339
31371
|
handleBundle(name, inverseProbability);
|
|
31340
31372
|
}
|
|
31341
|
-
if (
|
|
31373
|
+
if (isBrowser5) {
|
|
31342
31374
|
trigger();
|
|
31343
31375
|
}
|
|
31344
31376
|
};
|
|
31345
|
-
if (
|
|
31377
|
+
if (isBrowser5) {
|
|
31346
31378
|
document.addEventListener("qsymbol", (ev) => {
|
|
31347
31379
|
const { symbol, href } = ev.detail;
|
|
31348
31380
|
if (href) {
|
|
@@ -31391,8 +31423,8 @@ var useInvokeContext = () => {
|
|
|
31391
31423
|
if (!ctx || ctx.$event$ !== RenderEvent) {
|
|
31392
31424
|
throw qError(10 /* useInvokeContext */);
|
|
31393
31425
|
}
|
|
31394
|
-
|
|
31395
|
-
|
|
31426
|
+
isDev21 && assertDefined(ctx.$hostElement$, `invoke: $hostElement$ must be defined`, ctx);
|
|
31427
|
+
isDev21 && assertDefined(ctx.$effectSubscriber$, `invoke: $effectSubscriber$ must be defined`, ctx);
|
|
31396
31428
|
return ctx;
|
|
31397
31429
|
};
|
|
31398
31430
|
function invoke(context, fn, ...args) {
|
|
@@ -31480,7 +31512,7 @@ var trackSignalAndAssignHost = (value, host, property, container, data) => {
|
|
|
31480
31512
|
};
|
|
31481
31513
|
|
|
31482
31514
|
// packages/qwik/src/core/reactive-primitives/impl/store.ts
|
|
31483
|
-
import { isDev as
|
|
31515
|
+
import { isDev as isDev22, isServer as isServer11 } from "@qwik.dev/core/build";
|
|
31484
31516
|
var DEBUG7 = false;
|
|
31485
31517
|
var log6 = (...args) => console.log("STORE", ...args.map(qwikDebugToString));
|
|
31486
31518
|
var getStoreHandler = (value) => {
|
|
@@ -31541,7 +31573,7 @@ var StoreHandler2 = class {
|
|
|
31541
31573
|
}
|
|
31542
31574
|
this.$container$ = ctx.$container$;
|
|
31543
31575
|
} else {
|
|
31544
|
-
|
|
31576
|
+
isDev22 && assertTrue(
|
|
31545
31577
|
!ctx.$container$ || ctx.$container$ === this.$container$,
|
|
31546
31578
|
"Do not use signals across containers"
|
|
31547
31579
|
);
|
|
@@ -31882,13 +31914,13 @@ function preprocessState(data, container) {
|
|
|
31882
31914
|
}
|
|
31883
31915
|
|
|
31884
31916
|
// packages/qwik/src/core/shared/serdes/serdes.public.ts
|
|
31885
|
-
import { isDev as
|
|
31917
|
+
import { isDev as isDev23 } from "@qwik.dev/core/build";
|
|
31886
31918
|
function getObjectById(id, stateData) {
|
|
31887
31919
|
if (typeof id === "string") {
|
|
31888
31920
|
id = parseInt(id, 10);
|
|
31889
31921
|
return stateData[id];
|
|
31890
31922
|
}
|
|
31891
|
-
|
|
31923
|
+
isDev23 && assertTrue(id < stateData.length, `Invalid reference ${id} >= ${stateData.length}`);
|
|
31892
31924
|
return stateData[id];
|
|
31893
31925
|
}
|
|
31894
31926
|
|
|
@@ -31985,7 +32017,7 @@ var NoSerializeSymbol = /* @__PURE__ */ Symbol("noSerialize");
|
|
|
31985
32017
|
var SerializerSymbol = /* @__PURE__ */ Symbol("serialize");
|
|
31986
32018
|
|
|
31987
32019
|
// packages/qwik/src/core/reactive-primitives/utils.ts
|
|
31988
|
-
import { isDev as
|
|
32020
|
+
import { isDev as isDev24, isServer as isServer12 } from "@qwik.dev/core/build";
|
|
31989
32021
|
var DEBUG8 = false;
|
|
31990
32022
|
var log7 = (...args) => console.log("SIGNAL", ...args.map(qwikDebugToString));
|
|
31991
32023
|
var throwIfQRLNotResolved = (qrl) => {
|
|
@@ -32021,12 +32053,12 @@ var addQrlToSerializationCtx = (effectSubscriber, container) => {
|
|
|
32021
32053
|
}
|
|
32022
32054
|
};
|
|
32023
32055
|
var scheduleEffects = (container, signal, effects) => {
|
|
32024
|
-
const
|
|
32056
|
+
const isBrowser6 = import.meta.env.TEST ? !isServerPlatform() : !isServer12;
|
|
32025
32057
|
if (effects) {
|
|
32026
32058
|
const scheduleEffect = (effectSubscription) => {
|
|
32027
32059
|
const consumer = effectSubscription.consumer;
|
|
32028
32060
|
const property = effectSubscription.property;
|
|
32029
|
-
|
|
32061
|
+
isDev24 && assertDefined(container, "Container must be defined.");
|
|
32030
32062
|
if (isTask(consumer)) {
|
|
32031
32063
|
consumer.$flags$ |= 4 /* DIRTY */;
|
|
32032
32064
|
markVNodeDirty(container, consumer.$el$, 1 /* TASKS */);
|
|
@@ -32035,7 +32067,7 @@ var scheduleEffects = (container, signal, effects) => {
|
|
|
32035
32067
|
} else if (property === ":" /* COMPONENT */) {
|
|
32036
32068
|
markVNodeDirty(container, consumer, 4 /* COMPONENT */);
|
|
32037
32069
|
} else if (property === "." /* VNODE */) {
|
|
32038
|
-
if (
|
|
32070
|
+
if (isBrowser6) {
|
|
32039
32071
|
setNodeDiffPayload(consumer, signal);
|
|
32040
32072
|
markVNodeDirty(container, consumer, 2 /* NODE_DIFF */);
|
|
32041
32073
|
}
|
|
@@ -32048,7 +32080,7 @@ var scheduleEffects = (container, signal, effects) => {
|
|
|
32048
32080
|
scopedStyleIdPrefix: data.$scopedStyleIdPrefix$,
|
|
32049
32081
|
value: signal
|
|
32050
32082
|
};
|
|
32051
|
-
if (
|
|
32083
|
+
if (isBrowser6) {
|
|
32052
32084
|
setNodePropData(consumer, property, payload);
|
|
32053
32085
|
} else {
|
|
32054
32086
|
const node = consumer;
|
|
@@ -32195,10 +32227,19 @@ var fastGetter = (prototype, name) => {
|
|
|
32195
32227
|
return this[name];
|
|
32196
32228
|
};
|
|
32197
32229
|
};
|
|
32230
|
+
var createFastGetter = (propName) => {
|
|
32231
|
+
let getter = null;
|
|
32232
|
+
return (node) => {
|
|
32233
|
+
if (!getter) {
|
|
32234
|
+
getter = fastGetter(node, propName);
|
|
32235
|
+
}
|
|
32236
|
+
return getter.call(node);
|
|
32237
|
+
};
|
|
32238
|
+
};
|
|
32198
32239
|
|
|
32199
32240
|
// packages/qwik/src/core/client/vnode-utils.ts
|
|
32200
32241
|
var vnode_newElement = (element, elementName, key = null) => {
|
|
32201
|
-
|
|
32242
|
+
isDev25 && assertEqual(fastNodeType(element), 1, "Expecting element node.");
|
|
32202
32243
|
const vnode = new ElementVNode(
|
|
32203
32244
|
key,
|
|
32204
32245
|
1 /* Element */ | 8 /* Inflated */ | -1 << 11 /* shift */,
|
|
@@ -32216,7 +32257,7 @@ var vnode_newElement = (element, elementName, key = null) => {
|
|
|
32216
32257
|
return vnode;
|
|
32217
32258
|
};
|
|
32218
32259
|
var vnode_newUnMaterializedElement = (element) => {
|
|
32219
|
-
|
|
32260
|
+
isDev25 && assertEqual(fastNodeType(element), 1, "Expecting element node.");
|
|
32220
32261
|
const vnode = new ElementVNode(
|
|
32221
32262
|
null,
|
|
32222
32263
|
1 /* Element */ | -1 << 11 /* shift */,
|
|
@@ -32234,7 +32275,7 @@ var vnode_newUnMaterializedElement = (element) => {
|
|
|
32234
32275
|
return vnode;
|
|
32235
32276
|
};
|
|
32236
32277
|
var vnode_newSharedText = (previousTextNode, sharedTextNode, textContent) => {
|
|
32237
|
-
|
|
32278
|
+
isDev25 && sharedTextNode && assertEqual(fastNodeType(sharedTextNode), 3, "Expecting text node.");
|
|
32238
32279
|
const vnode = new TextVNode(
|
|
32239
32280
|
4 /* Text */ | -1 << 11 /* shift */,
|
|
32240
32281
|
// Flag
|
|
@@ -32266,10 +32307,10 @@ var vnode_newText = (textNode, textContent) => {
|
|
|
32266
32307
|
textContent
|
|
32267
32308
|
// Text Content
|
|
32268
32309
|
);
|
|
32269
|
-
|
|
32270
|
-
|
|
32271
|
-
|
|
32272
|
-
|
|
32310
|
+
isDev25 && assertEqual(fastNodeType(textNode), 3, "Expecting text node.");
|
|
32311
|
+
isDev25 && assertFalse(vnode_isElementVNode(vnode), "Incorrect format of TextVNode.");
|
|
32312
|
+
isDev25 && assertTrue(vnode_isTextVNode(vnode), "Incorrect format of TextVNode.");
|
|
32313
|
+
isDev25 && assertFalse(vnode_isVirtualVNode(vnode), "Incorrect format of TextVNode.");
|
|
32273
32314
|
return vnode;
|
|
32274
32315
|
};
|
|
32275
32316
|
var vnode_newVirtual = () => {
|
|
@@ -32284,9 +32325,9 @@ var vnode_newVirtual = () => {
|
|
|
32284
32325
|
null,
|
|
32285
32326
|
null
|
|
32286
32327
|
);
|
|
32287
|
-
|
|
32288
|
-
|
|
32289
|
-
|
|
32328
|
+
isDev25 && assertFalse(vnode_isElementVNode(vnode), "Incorrect format of TextVNode.");
|
|
32329
|
+
isDev25 && assertFalse(vnode_isTextVNode(vnode), "Incorrect format of TextVNode.");
|
|
32330
|
+
isDev25 && assertTrue(vnode_isVirtualVNode(vnode), "Incorrect format of TextVNode.");
|
|
32290
32331
|
return vnode;
|
|
32291
32332
|
};
|
|
32292
32333
|
var vnode_isVNode = (vNode) => {
|
|
@@ -32296,12 +32337,12 @@ var vnode_isElementVNode = (vNode) => {
|
|
|
32296
32337
|
return (vNode.flags & 1 /* Element */) === 1 /* Element */;
|
|
32297
32338
|
};
|
|
32298
32339
|
var vnode_isElementOrTextVNode = (vNode) => {
|
|
32299
|
-
|
|
32340
|
+
isDev25 && assertDefined(vNode, "Missing vNode");
|
|
32300
32341
|
const flag = vNode.flags;
|
|
32301
32342
|
return (flag & 5 /* ELEMENT_OR_TEXT_MASK */) !== 0;
|
|
32302
32343
|
};
|
|
32303
32344
|
var vnode_isMaterialized = (vNode) => {
|
|
32304
|
-
|
|
32345
|
+
isDev25 && assertDefined(vNode, "Missing vNode");
|
|
32305
32346
|
const flag = vNode.flags;
|
|
32306
32347
|
return (flag & 1 /* Element */) === 1 /* Element */ && vNode.firstChild !== void 0 && vNode.lastChild !== void 0;
|
|
32307
32348
|
};
|
|
@@ -32312,26 +32353,26 @@ var vnode_isVirtualVNode = (vNode) => {
|
|
|
32312
32353
|
return (vNode.flags & 2 /* Virtual */) === 2 /* Virtual */;
|
|
32313
32354
|
};
|
|
32314
32355
|
var vnode_isProjection = (vNode) => {
|
|
32315
|
-
|
|
32356
|
+
isDev25 && assertDefined(vNode, "Missing vNode");
|
|
32316
32357
|
const flag = vNode.flags;
|
|
32317
32358
|
return (flag & 2 /* Virtual */) === 2 /* Virtual */ && vnode_getProp(vNode, QSlot, null) !== null;
|
|
32318
32359
|
};
|
|
32319
32360
|
var ensureTextVNode = (vNode) => {
|
|
32320
|
-
|
|
32361
|
+
isDev25 && assertTrue(
|
|
32321
32362
|
vnode_isTextVNode(vNode),
|
|
32322
32363
|
"Expecting TextVNode was: " + vnode_getNodeTypeName(vNode)
|
|
32323
32364
|
);
|
|
32324
32365
|
return vNode;
|
|
32325
32366
|
};
|
|
32326
32367
|
var ensureElementOrVirtualVNode = (vNode) => {
|
|
32327
|
-
|
|
32328
|
-
|
|
32368
|
+
isDev25 && assertDefined(vNode, "Missing vNode");
|
|
32369
|
+
isDev25 && assertTrue(
|
|
32329
32370
|
(vNode.flags & 3 /* ELEMENT_OR_VIRTUAL_MASK */) !== 0,
|
|
32330
32371
|
"Expecting ElementVNode or VirtualVNode was: " + vnode_getNodeTypeName(vNode)
|
|
32331
32372
|
);
|
|
32332
32373
|
};
|
|
32333
32374
|
var ensureElementVNode = (vNode) => {
|
|
32334
|
-
|
|
32375
|
+
isDev25 && assertTrue(
|
|
32335
32376
|
vnode_isElementVNode(vNode),
|
|
32336
32377
|
"Expecting ElementVNode was: " + vnode_getNodeTypeName(vNode)
|
|
32337
32378
|
);
|
|
@@ -32462,6 +32503,7 @@ function vnode_walkDirectChildren(journal, vParent, callback) {
|
|
|
32462
32503
|
function vnode_walkVNode(vNode, callback) {
|
|
32463
32504
|
let vCursor = vNode;
|
|
32464
32505
|
if (vnode_isTextVNode(vNode)) {
|
|
32506
|
+
callback?.(vNode, null);
|
|
32465
32507
|
return;
|
|
32466
32508
|
}
|
|
32467
32509
|
let vParent = null;
|
|
@@ -32557,17 +32599,12 @@ var vnode_getDomSibling = (vNode, nextDirection, descend2) => {
|
|
|
32557
32599
|
}
|
|
32558
32600
|
return null;
|
|
32559
32601
|
};
|
|
32560
|
-
var vnode_ensureInflatedIfText = (journal, vNode) => {
|
|
32561
|
-
if (vnode_isTextVNode(vNode)) {
|
|
32562
|
-
vnode_ensureTextInflated(journal, vNode);
|
|
32563
|
-
}
|
|
32564
|
-
};
|
|
32565
32602
|
var vnode_ensureTextInflated = (journal, vnode) => {
|
|
32566
32603
|
const textVNode = ensureTextVNode(vnode);
|
|
32567
32604
|
const flags = textVNode.flags;
|
|
32568
32605
|
if ((flags & 8 /* Inflated */) === 0) {
|
|
32569
32606
|
const parentNode = vnode_getDomParent(vnode, true);
|
|
32570
|
-
|
|
32607
|
+
isDev25 && assertDefined(parentNode, "Missing parent node.");
|
|
32571
32608
|
const sharedTextNode = textVNode.node;
|
|
32572
32609
|
const doc2 = fastOwnerDocument(parentNode);
|
|
32573
32610
|
let vCursor = vnode_getDomSibling(vnode, false, true);
|
|
@@ -32616,7 +32653,7 @@ var vnode_locate = (rootVNode, id) => {
|
|
|
32616
32653
|
let elementOffset = -1;
|
|
32617
32654
|
let refElement;
|
|
32618
32655
|
if (typeof id === "string") {
|
|
32619
|
-
|
|
32656
|
+
isDev25 && assertDefined(qVNodeRefs, "Missing qVNodeRefs.");
|
|
32620
32657
|
elementOffset = parseInt(id);
|
|
32621
32658
|
refElement = qVNodeRefs.get(elementOffset);
|
|
32622
32659
|
} else {
|
|
@@ -32626,9 +32663,9 @@ var vnode_locate = (rootVNode, id) => {
|
|
|
32626
32663
|
return vNode2;
|
|
32627
32664
|
}
|
|
32628
32665
|
}
|
|
32629
|
-
|
|
32666
|
+
isDev25 && assertDefined(refElement, "Missing refElement.");
|
|
32630
32667
|
if (!vnode_isVNode(refElement)) {
|
|
32631
|
-
|
|
32668
|
+
isDev25 && assertTrue(
|
|
32632
32669
|
containerElement2.contains(refElement),
|
|
32633
32670
|
`Couldn't find the element inside the container while locating the VNode.`
|
|
32634
32671
|
);
|
|
@@ -32672,10 +32709,10 @@ var vnode_locate = (rootVNode, id) => {
|
|
|
32672
32709
|
};
|
|
32673
32710
|
var vnode_getChildWithIdx = (vNode, childIdx) => {
|
|
32674
32711
|
let child = vnode_getFirstChild(vNode);
|
|
32675
|
-
|
|
32712
|
+
isDev25 && assertDefined(child, "Missing child.");
|
|
32676
32713
|
while (child.flags >>> 11 /* shift */ !== childIdx) {
|
|
32677
32714
|
child = child.nextSibling;
|
|
32678
|
-
|
|
32715
|
+
isDev25 && assertDefined(child, "Missing child.");
|
|
32679
32716
|
}
|
|
32680
32717
|
return child;
|
|
32681
32718
|
};
|
|
@@ -32683,7 +32720,7 @@ var vNodeStack = [];
|
|
|
32683
32720
|
var vnode_getVNodeForChildNode = (vNode, childElement) => {
|
|
32684
32721
|
ensureElementVNode(vNode);
|
|
32685
32722
|
let child = vnode_getFirstChild(vNode);
|
|
32686
|
-
|
|
32723
|
+
isDev25 && assertDefined(child, "Missing child.");
|
|
32687
32724
|
while (child && (child instanceof ElementVNode ? child.node !== childElement : true)) {
|
|
32688
32725
|
if (vnode_isVirtualVNode(child)) {
|
|
32689
32726
|
const next = child.nextSibling;
|
|
@@ -32702,13 +32739,13 @@ var vnode_getVNodeForChildNode = (vNode, childElement) => {
|
|
|
32702
32739
|
child = next || vNodeStack.pop();
|
|
32703
32740
|
}
|
|
32704
32741
|
}
|
|
32705
|
-
|
|
32742
|
+
isDev25 && assertDefined(child, "Missing child.");
|
|
32706
32743
|
}
|
|
32707
32744
|
while (vNodeStack.length) {
|
|
32708
32745
|
vNodeStack.pop();
|
|
32709
32746
|
}
|
|
32710
32747
|
ensureElementVNode(child);
|
|
32711
|
-
|
|
32748
|
+
isDev25 && assertEqual(child.node, childElement, "Child not found.");
|
|
32712
32749
|
return child;
|
|
32713
32750
|
};
|
|
32714
32751
|
var indexOfAlphanumeric = (id, length) => {
|
|
@@ -32908,7 +32945,7 @@ var vnode_findInsertBefore = (journal, parent, insertBefore) => {
|
|
|
32908
32945
|
} else {
|
|
32909
32946
|
adjustedInsertBefore = insertBefore;
|
|
32910
32947
|
}
|
|
32911
|
-
adjustedInsertBefore &&
|
|
32948
|
+
adjustedInsertBefore && vnode_isTextVNode(adjustedInsertBefore) && vnode_ensureTextInflated(journal, adjustedInsertBefore);
|
|
32912
32949
|
return adjustedInsertBefore;
|
|
32913
32950
|
};
|
|
32914
32951
|
var vnode_connectSiblings = (parent, vNode, vNext) => {
|
|
@@ -32932,6 +32969,15 @@ var vnode_unlinkFromOldParent = (journal, currentParent, newParent, newChild) =>
|
|
|
32932
32969
|
vnode_remove(journal, currentParent, newChild, false);
|
|
32933
32970
|
}
|
|
32934
32971
|
};
|
|
32972
|
+
var vnode_inflateProjectionTrailingText = (journal, projection) => {
|
|
32973
|
+
let last = projection;
|
|
32974
|
+
while (last && vnode_isVirtualVNode(last)) {
|
|
32975
|
+
last = last.lastChild;
|
|
32976
|
+
}
|
|
32977
|
+
if (last && vnode_isTextVNode(last) && (last.flags & 8 /* Inflated */) === 0) {
|
|
32978
|
+
vnode_ensureTextInflated(journal, last);
|
|
32979
|
+
}
|
|
32980
|
+
};
|
|
32935
32981
|
var vnode_insertBefore = (journal, parent, newChild, insertBefore) => {
|
|
32936
32982
|
if (vnode_isElementOrTextVNode(newChild)) {
|
|
32937
32983
|
vnode_insertElementBefore(journal, parent, newChild, insertBefore);
|
|
@@ -32950,7 +32996,7 @@ var vnode_getDomParentVNode = (vnode, includeProjection) => {
|
|
|
32950
32996
|
return vnode;
|
|
32951
32997
|
};
|
|
32952
32998
|
var vnode_remove = (journal, vParent, vToRemove, removeDOM) => {
|
|
32953
|
-
|
|
32999
|
+
isDev25 && assertEqual(vParent, vToRemove.parent, "Parent mismatch.");
|
|
32954
33000
|
if (vnode_isTextVNode(vToRemove)) {
|
|
32955
33001
|
vnode_ensureTextInflated(journal, vToRemove);
|
|
32956
33002
|
}
|
|
@@ -32983,7 +33029,7 @@ var vnode_remove = (journal, vParent, vToRemove, removeDOM) => {
|
|
|
32983
33029
|
vToRemove.nextSibling = null;
|
|
32984
33030
|
};
|
|
32985
33031
|
var vnode_truncate = (journal, vParent, vDelete, removeDOM = true) => {
|
|
32986
|
-
|
|
33032
|
+
isDev25 && assertDefined(vDelete, "Missing vDelete.");
|
|
32987
33033
|
const parent = vnode_getDomParent(vParent, true);
|
|
32988
33034
|
if (parent && removeDOM) {
|
|
32989
33035
|
if (vnode_isElementOrTextVNode(vParent)) {
|
|
@@ -33077,8 +33123,8 @@ var ensureMaterialized = (vnode) => {
|
|
|
33077
33123
|
vFirstChild = vnode_materialize(vParent);
|
|
33078
33124
|
}
|
|
33079
33125
|
}
|
|
33080
|
-
|
|
33081
|
-
|
|
33126
|
+
isDev25 && assertTrue(vParent.firstChild !== void 0, "Did not materialize.");
|
|
33127
|
+
isDev25 && assertTrue(vParent.lastChild !== void 0, "Did not materialize.");
|
|
33082
33128
|
return vFirstChild;
|
|
33083
33129
|
};
|
|
33084
33130
|
var _fastHasAttribute = null;
|
|
@@ -33095,13 +33141,7 @@ var fastGetAttribute = (element, key) => {
|
|
|
33095
33141
|
}
|
|
33096
33142
|
return _fastGetAttribute.call(element, key);
|
|
33097
33143
|
};
|
|
33098
|
-
var
|
|
33099
|
-
var fastNodeType = (node) => {
|
|
33100
|
-
if (!_fastNodeType) {
|
|
33101
|
-
_fastNodeType = fastGetter(node, "nodeType");
|
|
33102
|
-
}
|
|
33103
|
-
return _fastNodeType.call(node);
|
|
33104
|
-
};
|
|
33144
|
+
var fastNodeType = createFastGetter("nodeType");
|
|
33105
33145
|
var fastIsTextOrElement = (node) => {
|
|
33106
33146
|
const type = fastNodeType(node);
|
|
33107
33147
|
return type === /* Node.TEXT_NODE */
|
|
@@ -33164,13 +33204,7 @@ function getNodeAfterCommentNode(node, commentValue, nextSibling, firstChild) {
|
|
|
33164
33204
|
}
|
|
33165
33205
|
return null;
|
|
33166
33206
|
}
|
|
33167
|
-
var
|
|
33168
|
-
var fastParentNode = (node) => {
|
|
33169
|
-
if (!_fastParentNode) {
|
|
33170
|
-
_fastParentNode = fastGetter(node, "parentNode");
|
|
33171
|
-
}
|
|
33172
|
-
return _fastParentNode.call(node);
|
|
33173
|
-
};
|
|
33207
|
+
var fastParentNode = createFastGetter("parentNode");
|
|
33174
33208
|
var _fastFirstChild = null;
|
|
33175
33209
|
var fastFirstChild = (node) => {
|
|
33176
33210
|
if (!_fastFirstChild) {
|
|
@@ -33182,33 +33216,9 @@ var fastFirstChild = (node) => {
|
|
|
33182
33216
|
}
|
|
33183
33217
|
return node;
|
|
33184
33218
|
};
|
|
33185
|
-
var
|
|
33186
|
-
var
|
|
33187
|
-
|
|
33188
|
-
_fastNamespaceURI = fastGetter(element, "namespaceURI");
|
|
33189
|
-
}
|
|
33190
|
-
return _fastNamespaceURI.call(element);
|
|
33191
|
-
};
|
|
33192
|
-
var _fastNodeName = null;
|
|
33193
|
-
var fastNodeName = (element) => {
|
|
33194
|
-
if (!_fastNodeName) {
|
|
33195
|
-
_fastNodeName = fastGetter(element, "nodeName");
|
|
33196
|
-
}
|
|
33197
|
-
return _fastNodeName.call(element);
|
|
33198
|
-
};
|
|
33199
|
-
var _fastOwnerDocument = null;
|
|
33200
|
-
var fastOwnerDocument = (node) => {
|
|
33201
|
-
if (!_fastOwnerDocument) {
|
|
33202
|
-
_fastOwnerDocument = fastGetter(node, "ownerDocument");
|
|
33203
|
-
}
|
|
33204
|
-
return _fastOwnerDocument.call(node);
|
|
33205
|
-
};
|
|
33206
|
-
var hasQStyleAttribute = (element) => {
|
|
33207
|
-
return element.nodeName === "STYLE" && (element.hasAttribute(QScopedStyle) || element.hasAttribute(QStyle));
|
|
33208
|
-
};
|
|
33209
|
-
var hasPropsSeparator = (element) => {
|
|
33210
|
-
return element.hasAttribute(Q_PROPS_SEPARATOR);
|
|
33211
|
-
};
|
|
33219
|
+
var fastNamespaceURI = createFastGetter("namespaceURI");
|
|
33220
|
+
var fastNodeName = createFastGetter("nodeName");
|
|
33221
|
+
var fastOwnerDocument = createFastGetter("ownerDocument");
|
|
33212
33222
|
var materializeFromDOM = (vParent, firstChild, vData) => {
|
|
33213
33223
|
let vFirstChild = null;
|
|
33214
33224
|
const skipElements = () => {
|
|
@@ -33253,7 +33263,7 @@ var materializeFromDOM = (vParent, firstChild, vData) => {
|
|
|
33253
33263
|
}
|
|
33254
33264
|
const id = consumeValue();
|
|
33255
33265
|
container.$setRawState$(parseInt(id), vParent);
|
|
33256
|
-
|
|
33266
|
+
isDev25 && vnode_setProp(vParent, ELEMENT_ID, id);
|
|
33257
33267
|
} else if (peek() === VNodeDataChar.BACK_REFS) {
|
|
33258
33268
|
if (!container) {
|
|
33259
33269
|
container = getDomContainer(vParent.node);
|
|
@@ -33459,10 +33469,10 @@ var isLowercase = (ch) => (
|
|
|
33459
33469
|
function shouldSkipElement(element) {
|
|
33460
33470
|
return (
|
|
33461
33471
|
// Skip over elements that don't have a props separator. They are not rendered by Qwik.
|
|
33462
|
-
!
|
|
33472
|
+
!element.hasAttribute(Q_PROPS_SEPARATOR) || // We pretend that style element's don't exist as they can get moved out.
|
|
33463
33473
|
// skip over style elements, as those need to be moved to the head
|
|
33464
33474
|
// and are not included in the counts.
|
|
33465
|
-
|
|
33475
|
+
element.nodeName === "STYLE" && (element.hasAttribute(QScopedStyle) || element.hasAttribute(QStyle))
|
|
33466
33476
|
);
|
|
33467
33477
|
}
|
|
33468
33478
|
var stack = [];
|
|
@@ -33531,7 +33541,7 @@ function materializeFromVNodeData(vParent, vData, element, child) {
|
|
|
33531
33541
|
}
|
|
33532
33542
|
const id = consumeValue();
|
|
33533
33543
|
container.$setRawState$(parseInt(id), vParent);
|
|
33534
|
-
|
|
33544
|
+
isDev25 && vnode_setProp(vParent, ELEMENT_ID, id);
|
|
33535
33545
|
} else if (peek() === VNodeDataChar.PROPS) {
|
|
33536
33546
|
vnode_setProp(vParent, ELEMENT_PROPS, consumeValue());
|
|
33537
33547
|
} else if (peek() === VNodeDataChar.KEY) {
|
|
@@ -34830,7 +34840,7 @@ async function expectDOM(actual, expected) {
|
|
|
34830
34840
|
|
|
34831
34841
|
// packages/qwik/src/testing/rendering.unit-util.tsx
|
|
34832
34842
|
var import_esbuild = __toESM(require_main(), 1);
|
|
34833
|
-
import { Slot as Slot3,
|
|
34843
|
+
import { Slot as Slot3, componentQrl as componentQrl2, inlinedQrl, render } from "../core.mjs";
|
|
34834
34844
|
import { _getDomContainer as _getDomContainer2 } from "@qwik.dev/core/internal";
|
|
34835
34845
|
import { readFileSync } from "fs";
|
|
34836
34846
|
import { join } from "path";
|
|
@@ -34839,7 +34849,7 @@ import { expect as expect2 } from "vitest";
|
|
|
34839
34849
|
|
|
34840
34850
|
// packages/qwik/src/server/platform.ts
|
|
34841
34851
|
import { setPlatform as setPlatform2 } from "../core.mjs";
|
|
34842
|
-
import { isDev as
|
|
34852
|
+
import { isDev as isDev26 } from "@qwik.dev/core/build";
|
|
34843
34853
|
var getDevSegmentPath = (mapper, hash3, symbolName, parent) => {
|
|
34844
34854
|
const existing = mapper?.[hash3];
|
|
34845
34855
|
if (existing) {
|
|
@@ -34861,9 +34871,9 @@ var getDevSegmentPath = (mapper, hash3, symbolName, parent) => {
|
|
|
34861
34871
|
function createPlatform3(opts, resolvedManifest) {
|
|
34862
34872
|
const mapper = resolvedManifest?.mapper;
|
|
34863
34873
|
const mapperFn = opts.symbolMapper ? opts.symbolMapper : (symbolName, _chunk, parent) => {
|
|
34864
|
-
if (mapper ||
|
|
34874
|
+
if (mapper || isDev26 && import.meta.env.MODE !== "test") {
|
|
34865
34875
|
const hash3 = getSymbolHash2(symbolName);
|
|
34866
|
-
const result2 = !
|
|
34876
|
+
const result2 = !isDev26 ? mapper[hash3] : getDevSegmentPath(mapper, hash3, symbolName, parent);
|
|
34867
34877
|
if (!result2) {
|
|
34868
34878
|
if (hash3 === SYNC_QRL) {
|
|
34869
34879
|
return [hash3, ""];
|
|
@@ -34885,15 +34895,7 @@ function createPlatform3(opts, resolvedManifest) {
|
|
|
34885
34895
|
if (regSym) {
|
|
34886
34896
|
return regSym;
|
|
34887
34897
|
}
|
|
34888
|
-
|
|
34889
|
-
if (!modulePath.endsWith(".js")) {
|
|
34890
|
-
modulePath += ".js";
|
|
34891
|
-
}
|
|
34892
|
-
const module = __require(modulePath);
|
|
34893
|
-
if (!(symbolName in module)) {
|
|
34894
|
-
throw new Error(`Q-ERROR: missing symbol '${symbolName}' in module '${modulePath}'.`);
|
|
34895
|
-
}
|
|
34896
|
-
return module[symbolName];
|
|
34898
|
+
throw qError(6 /* dynamicImportFailed */, [symbolName]);
|
|
34897
34899
|
},
|
|
34898
34900
|
raf: () => {
|
|
34899
34901
|
console.error("server can not rerender");
|
|
@@ -34948,7 +34950,7 @@ var versions = {
|
|
|
34948
34950
|
};
|
|
34949
34951
|
|
|
34950
34952
|
// packages/qwik/src/server/ssr-container.ts
|
|
34951
|
-
import { isDev as
|
|
34953
|
+
import { isDev as isDev28 } from "@qwik.dev/core/build";
|
|
34952
34954
|
import {
|
|
34953
34955
|
_SubscriptionData as SubscriptionData2,
|
|
34954
34956
|
_SharedContainer as _SharedContainer2,
|
|
@@ -35228,7 +35230,7 @@ import {
|
|
|
35228
35230
|
_EMPTY_OBJ,
|
|
35229
35231
|
_EFFECT_BACK_REF as _EFFECT_BACK_REF2
|
|
35230
35232
|
} from "@qwik.dev/core/internal";
|
|
35231
|
-
import { isDev as
|
|
35233
|
+
import { isDev as isDev27 } from "@qwik.dev/core/build";
|
|
35232
35234
|
var SsrNode = class {
|
|
35233
35235
|
constructor(parentComponent, id, attributesIndex, cleanupQueue, vnodeData, currentFile) {
|
|
35234
35236
|
this.parentComponent = parentComponent;
|
|
@@ -35253,7 +35255,7 @@ var SsrNode = class {
|
|
|
35253
35255
|
this.flags = 1 /* Updatable */;
|
|
35254
35256
|
this.attrs = this.attributesIndex >= 0 ? this.vnodeData[this.attributesIndex] : _EMPTY_OBJ;
|
|
35255
35257
|
this.parentComponent?.addChild(this);
|
|
35256
|
-
if (
|
|
35258
|
+
if (isDev27 && id.indexOf("undefined") != -1) {
|
|
35257
35259
|
throw new Error(`Invalid SSR node id: ${id}`);
|
|
35258
35260
|
}
|
|
35259
35261
|
}
|
|
@@ -35317,7 +35319,7 @@ var SsrNode = class {
|
|
|
35317
35319
|
}
|
|
35318
35320
|
}
|
|
35319
35321
|
toString() {
|
|
35320
|
-
if (
|
|
35322
|
+
if (isDev27) {
|
|
35321
35323
|
let stringifiedAttrs = "";
|
|
35322
35324
|
for (const key in this.attrs) {
|
|
35323
35325
|
const value = this.attrs[key];
|
|
@@ -35684,7 +35686,7 @@ var SSRContainer = class extends _SharedContainer2 {
|
|
|
35684
35686
|
containerAttributes[QContainerAttr] = "paused" /* PAUSED */;
|
|
35685
35687
|
containerAttributes[QRuntimeAttr] = "2";
|
|
35686
35688
|
containerAttributes[QVersionAttr] = this.$version$ ?? "dev";
|
|
35687
|
-
containerAttributes[QRenderAttr] = (qRender ? qRender + "-" : "") + (
|
|
35689
|
+
containerAttributes[QRenderAttr] = (qRender ? qRender + "-" : "") + (isDev28 ? "ssr-dev" : "ssr");
|
|
35688
35690
|
containerAttributes[QBaseAttr] = this.$buildBase$ || "";
|
|
35689
35691
|
containerAttributes[QLocaleAttr] = this.$locale$;
|
|
35690
35692
|
containerAttributes[QManifestHashAttr] = this.resolvedManifest.manifest.manifestHash;
|
|
@@ -35700,7 +35702,7 @@ var SSRContainer = class extends _SharedContainer2 {
|
|
|
35700
35702
|
return this.closeElement();
|
|
35701
35703
|
}
|
|
35702
35704
|
/** Renders opening tag for DOM element */
|
|
35703
|
-
openElement(elementName, key, varAttrs, constAttrs = null, styleScopedId = null, currentFile = null) {
|
|
35705
|
+
openElement(elementName, key, varAttrs, constAttrs = null, styleScopedId = null, currentFile = null, hasMovedCaptures = true) {
|
|
35704
35706
|
const isQwikStyle = isQwikStyleElement(elementName, varAttrs) || isQwikStyleElement(elementName, constAttrs);
|
|
35705
35707
|
if (
|
|
35706
35708
|
// don't append qwik loader before qwik style elements
|
|
@@ -35727,7 +35729,14 @@ var SSRContainer = class extends _SharedContainer2 {
|
|
|
35727
35729
|
this.write(elementName);
|
|
35728
35730
|
const lastNode = this.getOrCreateLastNode();
|
|
35729
35731
|
if (varAttrs) {
|
|
35730
|
-
innerHTML = this.writeAttrs(
|
|
35732
|
+
innerHTML = this.writeAttrs(
|
|
35733
|
+
elementName,
|
|
35734
|
+
varAttrs,
|
|
35735
|
+
false,
|
|
35736
|
+
styleScopedId,
|
|
35737
|
+
currentFile,
|
|
35738
|
+
hasMovedCaptures
|
|
35739
|
+
);
|
|
35731
35740
|
}
|
|
35732
35741
|
this.write(" " + Q_PROPS_SEPARATOR);
|
|
35733
35742
|
if (key !== null) {
|
|
@@ -35736,7 +35745,14 @@ var SSRContainer = class extends _SharedContainer2 {
|
|
|
35736
35745
|
this.write(EMPTY_ATTR);
|
|
35737
35746
|
}
|
|
35738
35747
|
if (constAttrs && !isObjectEmpty(constAttrs)) {
|
|
35739
|
-
innerHTML = this.writeAttrs(
|
|
35748
|
+
innerHTML = this.writeAttrs(
|
|
35749
|
+
elementName,
|
|
35750
|
+
constAttrs,
|
|
35751
|
+
true,
|
|
35752
|
+
styleScopedId,
|
|
35753
|
+
currentFile,
|
|
35754
|
+
hasMovedCaptures
|
|
35755
|
+
) || innerHTML;
|
|
35740
35756
|
}
|
|
35741
35757
|
this.write(GT);
|
|
35742
35758
|
if (lastNode) {
|
|
@@ -35859,7 +35875,7 @@ var SSRContainer = class extends _SharedContainer2 {
|
|
|
35859
35875
|
const slotName = componentFrame.slots[i];
|
|
35860
35876
|
const children = componentFrame.slots[i + 1];
|
|
35861
35877
|
this.openFragment(
|
|
35862
|
-
|
|
35878
|
+
isDev28 ? { [DEBUG_TYPE]: "P" /* Projection */, [QSlotParent]: componentFrame.componentNode.id } : { [QSlotParent]: componentFrame.componentNode.id }
|
|
35863
35879
|
);
|
|
35864
35880
|
const lastNode = this.getOrCreateLastNode();
|
|
35865
35881
|
if (lastNode.vnodeData) {
|
|
@@ -36180,7 +36196,7 @@ var SSRContainer = class extends _SharedContainer2 {
|
|
|
36180
36196
|
scriptAttrs["nonce"] = this.renderOptions.serverData.nonce;
|
|
36181
36197
|
}
|
|
36182
36198
|
this.openElement("script", null, scriptAttrs);
|
|
36183
|
-
const backpatchScript = getQwikBackpatchExecutorScript({ debug:
|
|
36199
|
+
const backpatchScript = getQwikBackpatchExecutorScript({ debug: isDev28 });
|
|
36184
36200
|
this.write(backpatchScript);
|
|
36185
36201
|
this.closeElement();
|
|
36186
36202
|
}
|
|
@@ -36278,7 +36294,7 @@ var SSRContainer = class extends _SharedContainer2 {
|
|
|
36278
36294
|
}
|
|
36279
36295
|
createAndPushFrame(elementName, depthFirstElementIdx, currentFile) {
|
|
36280
36296
|
let tagNesting = 10 /* ANYTHING */;
|
|
36281
|
-
if (
|
|
36297
|
+
if (isDev28) {
|
|
36282
36298
|
if (!this.currentElementFrame) {
|
|
36283
36299
|
tagNesting = initialTag(elementName);
|
|
36284
36300
|
} else {
|
|
@@ -36324,7 +36340,7 @@ var SSRContainer = class extends _SharedContainer2 {
|
|
|
36324
36340
|
elementName,
|
|
36325
36341
|
depthFirstElementIdx,
|
|
36326
36342
|
vNodeData: [0 /* NONE */],
|
|
36327
|
-
currentFile:
|
|
36343
|
+
currentFile: isDev28 ? currentFile || null : null
|
|
36328
36344
|
};
|
|
36329
36345
|
this.currentElementFrame = frame;
|
|
36330
36346
|
this.vNodeDatas.push(frame.vNodeData);
|
|
@@ -36348,22 +36364,18 @@ var SSRContainer = class extends _SharedContainer2 {
|
|
|
36348
36364
|
this.write(element);
|
|
36349
36365
|
}
|
|
36350
36366
|
}
|
|
36351
|
-
writeAttrs(tag, attrs, isConst, styleScopedId, currentFile) {
|
|
36367
|
+
writeAttrs(tag, attrs, isConst, styleScopedId, currentFile, hasMovedCaptures) {
|
|
36352
36368
|
let innerHTML = void 0;
|
|
36353
|
-
let isLoopElement = null;
|
|
36354
36369
|
for (let key in attrs) {
|
|
36355
36370
|
let value = attrs[key];
|
|
36356
36371
|
if (isSSRUnsafeAttr(key)) {
|
|
36357
|
-
if (
|
|
36372
|
+
if (isDev28) {
|
|
36358
36373
|
throw qError(32 /* unsafeAttr */, [key]);
|
|
36359
36374
|
}
|
|
36360
36375
|
continue;
|
|
36361
36376
|
}
|
|
36362
36377
|
if (isHtmlAttributeAnEventName(key)) {
|
|
36363
|
-
|
|
36364
|
-
isLoopElement = attributesContainsIterationProp(attrs);
|
|
36365
|
-
}
|
|
36366
|
-
value = _setEvent(this.serializationCtx, key, value, isLoopElement);
|
|
36378
|
+
value = _setEvent(this.serializationCtx, key, value, hasMovedCaptures);
|
|
36367
36379
|
} else if (key === "ref") {
|
|
36368
36380
|
const lastNode = this.getOrCreateLastNode();
|
|
36369
36381
|
if (isSignal3(value)) {
|
|
@@ -36412,7 +36424,7 @@ var SSRContainer = class extends _SharedContainer2 {
|
|
|
36412
36424
|
}
|
|
36413
36425
|
if (tag === "textarea" && key === "value") {
|
|
36414
36426
|
if (value && typeof value !== "string") {
|
|
36415
|
-
if (
|
|
36427
|
+
if (isDev28) {
|
|
36416
36428
|
throw qError(23 /* wrongTextareaValue */, [currentFile, value]);
|
|
36417
36429
|
}
|
|
36418
36430
|
continue;
|
|
@@ -36452,9 +36464,6 @@ var isQwikStyleElement = (tag, attrs) => {
|
|
|
36452
36464
|
}
|
|
36453
36465
|
return false;
|
|
36454
36466
|
};
|
|
36455
|
-
var attributesContainsIterationProp = (attrs) => {
|
|
36456
|
-
return Object.prototype.hasOwnProperty.call(attrs, ITERATION_ITEM_SINGLE) || Object.prototype.hasOwnProperty.call(attrs, ITERATION_ITEM_MULTI);
|
|
36457
|
-
};
|
|
36458
36467
|
function newTagError(text) {
|
|
36459
36468
|
return qError(12 /* tagError */, [text]);
|
|
36460
36469
|
}
|
|
@@ -36887,11 +36896,13 @@ function getHostVNode(vElement) {
|
|
|
36887
36896
|
return vElement;
|
|
36888
36897
|
}
|
|
36889
36898
|
var ErrorProvider = Object.assign(
|
|
36890
|
-
|
|
36891
|
-
|
|
36892
|
-
|
|
36893
|
-
|
|
36894
|
-
|
|
36899
|
+
componentQrl2(
|
|
36900
|
+
inlinedQrl(() => {
|
|
36901
|
+
ErrorProvider.error = null;
|
|
36902
|
+
useContextProvider(ERROR_CONTEXT, ErrorProvider);
|
|
36903
|
+
return /* @__PURE__ */ jsx(Slot3, {});
|
|
36904
|
+
}, "s_ErrorProvider")
|
|
36905
|
+
),
|
|
36895
36906
|
{ error: null }
|
|
36896
36907
|
);
|
|
36897
36908
|
export {
|