@fictjs/runtime 0.0.13 → 0.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/advanced.cjs +79 -0
- package/dist/advanced.cjs.map +1 -0
- package/dist/advanced.d.cts +50 -0
- package/dist/advanced.d.ts +50 -0
- package/dist/advanced.js +79 -0
- package/dist/advanced.js.map +1 -0
- package/dist/chunk-624QY53A.cjs +45 -0
- package/dist/chunk-624QY53A.cjs.map +1 -0
- package/dist/chunk-F3AIYQB7.js +45 -0
- package/dist/chunk-F3AIYQB7.js.map +1 -0
- package/dist/chunk-GJTYOFMO.cjs +109 -0
- package/dist/chunk-GJTYOFMO.cjs.map +1 -0
- package/dist/chunk-IUZXKAAY.js +109 -0
- package/dist/chunk-IUZXKAAY.js.map +1 -0
- package/dist/chunk-PMF6MWEV.cjs +3301 -0
- package/dist/chunk-PMF6MWEV.cjs.map +1 -0
- package/dist/chunk-RY4WDS6R.js +3301 -0
- package/dist/chunk-RY4WDS6R.js.map +1 -0
- package/dist/context-B7UYnfzM.d.ts +153 -0
- package/dist/context-UXySaqI_.d.cts +153 -0
- package/dist/effect-Auji1rz9.d.cts +350 -0
- package/dist/effect-Auji1rz9.d.ts +350 -0
- package/dist/index.cjs +98 -3558
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +5 -1358
- package/dist/index.d.ts +5 -1358
- package/dist/index.dev.js +240 -1698
- package/dist/index.dev.js.map +1 -1
- package/dist/index.js +63 -3435
- package/dist/index.js.map +1 -1
- package/dist/internal.cjs +901 -0
- package/dist/internal.cjs.map +1 -0
- package/dist/internal.d.cts +158 -0
- package/dist/internal.d.ts +158 -0
- package/dist/internal.js +901 -0
- package/dist/internal.js.map +1 -0
- package/dist/{jsx-dev-runtime.d.ts → props-CrOMYbLv.d.cts} +107 -18
- package/dist/{jsx-dev-runtime.d.cts → props-ES0Ag_Wd.d.ts} +107 -18
- package/dist/scope-DKYzWfTn.d.cts +55 -0
- package/dist/scope-S6eAzBJZ.d.ts +55 -0
- package/package.json +11 -1
- package/src/advanced.ts +101 -0
- package/src/constants.ts +3 -26
- package/src/context.ts +300 -0
- package/src/delegated-events.ts +24 -0
- package/src/index.ts +41 -112
- package/src/internal.ts +130 -0
- package/src/props.ts +48 -46
- package/src/store.ts +47 -7
- package/src/versioned-signal.ts +3 -3
- package/dist/jsx-runtime.d.cts +0 -671
- package/dist/jsx-runtime.d.ts +0 -671
|
@@ -0,0 +1,901 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
|
+
|
|
3
|
+
var _chunk624QY53Acjs = require('./chunk-624QY53A.cjs');
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
var _chunkPMF6MWEVcjs = require('./chunk-PMF6MWEV.cjs');
|
|
70
|
+
|
|
71
|
+
// src/store.ts
|
|
72
|
+
var PROXY = Symbol("fict:store-proxy");
|
|
73
|
+
var TARGET = Symbol("fict:store-target");
|
|
74
|
+
var ITERATE_KEY = Symbol("fict:iterate");
|
|
75
|
+
function createStore(initialValue) {
|
|
76
|
+
const unwrapped = unwrap2(initialValue);
|
|
77
|
+
const wrapped = wrap(unwrapped);
|
|
78
|
+
function setStore(fn) {
|
|
79
|
+
_chunkPMF6MWEVcjs.batch.call(void 0, () => {
|
|
80
|
+
const result = fn(wrapped);
|
|
81
|
+
if (result !== void 0) {
|
|
82
|
+
reconcile(wrapped, result);
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
return [wrapped, setStore];
|
|
87
|
+
}
|
|
88
|
+
var proxyCache = /* @__PURE__ */ new WeakMap();
|
|
89
|
+
var signalCache = /* @__PURE__ */ new WeakMap();
|
|
90
|
+
function wrap(value) {
|
|
91
|
+
if (value === null || typeof value !== "object") return value;
|
|
92
|
+
if (value[PROXY]) return value;
|
|
93
|
+
if (proxyCache.has(value)) return proxyCache.get(value);
|
|
94
|
+
const handler = {
|
|
95
|
+
get(target, prop2, receiver) {
|
|
96
|
+
if (prop2 === PROXY) return true;
|
|
97
|
+
if (prop2 === TARGET) return target;
|
|
98
|
+
const value2 = Reflect.get(target, prop2, receiver);
|
|
99
|
+
track(target, prop2);
|
|
100
|
+
return wrap(value2);
|
|
101
|
+
},
|
|
102
|
+
has(target, prop2) {
|
|
103
|
+
const result = Reflect.has(target, prop2);
|
|
104
|
+
track(target, prop2);
|
|
105
|
+
return result;
|
|
106
|
+
},
|
|
107
|
+
ownKeys(target) {
|
|
108
|
+
track(target, ITERATE_KEY);
|
|
109
|
+
return Reflect.ownKeys(target);
|
|
110
|
+
},
|
|
111
|
+
getOwnPropertyDescriptor(target, prop2) {
|
|
112
|
+
track(target, prop2);
|
|
113
|
+
return Reflect.getOwnPropertyDescriptor(target, prop2);
|
|
114
|
+
},
|
|
115
|
+
set(target, prop2, value2, receiver) {
|
|
116
|
+
if (prop2 === PROXY || prop2 === TARGET) return false;
|
|
117
|
+
const hadKey = Object.prototype.hasOwnProperty.call(target, prop2);
|
|
118
|
+
const oldValue = Reflect.get(target, prop2, receiver);
|
|
119
|
+
if (oldValue === value2) return true;
|
|
120
|
+
const result = Reflect.set(target, prop2, value2, receiver);
|
|
121
|
+
if (result) {
|
|
122
|
+
trigger(target, prop2);
|
|
123
|
+
if (!hadKey) {
|
|
124
|
+
trigger(target, ITERATE_KEY);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return result;
|
|
128
|
+
},
|
|
129
|
+
deleteProperty(target, prop2) {
|
|
130
|
+
const hadKey = Object.prototype.hasOwnProperty.call(target, prop2);
|
|
131
|
+
const result = Reflect.deleteProperty(target, prop2);
|
|
132
|
+
if (result) {
|
|
133
|
+
trigger(target, prop2);
|
|
134
|
+
if (hadKey) {
|
|
135
|
+
trigger(target, ITERATE_KEY);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
return result;
|
|
139
|
+
}
|
|
140
|
+
};
|
|
141
|
+
const proxy = new Proxy(value, handler);
|
|
142
|
+
proxyCache.set(value, proxy);
|
|
143
|
+
return proxy;
|
|
144
|
+
}
|
|
145
|
+
function unwrap2(value) {
|
|
146
|
+
if (value && typeof value === "object" && value[PROXY]) {
|
|
147
|
+
return value[TARGET];
|
|
148
|
+
}
|
|
149
|
+
return value;
|
|
150
|
+
}
|
|
151
|
+
function track(target, prop2) {
|
|
152
|
+
let signals = signalCache.get(target);
|
|
153
|
+
if (!signals) {
|
|
154
|
+
signals = /* @__PURE__ */ new Map();
|
|
155
|
+
signalCache.set(target, signals);
|
|
156
|
+
}
|
|
157
|
+
let s = signals.get(prop2);
|
|
158
|
+
if (!s) {
|
|
159
|
+
const initial = prop2 === ITERATE_KEY ? Reflect.ownKeys(target).length : getLastValue(target, prop2);
|
|
160
|
+
s = _chunkPMF6MWEVcjs.signal.call(void 0, initial);
|
|
161
|
+
signals.set(prop2, s);
|
|
162
|
+
}
|
|
163
|
+
s();
|
|
164
|
+
}
|
|
165
|
+
function trigger(target, prop2) {
|
|
166
|
+
const signals = signalCache.get(target);
|
|
167
|
+
if (signals) {
|
|
168
|
+
const s = signals.get(prop2);
|
|
169
|
+
if (s) {
|
|
170
|
+
if (prop2 === ITERATE_KEY) {
|
|
171
|
+
s(Reflect.ownKeys(target).length);
|
|
172
|
+
} else {
|
|
173
|
+
s(getLastValue(target, prop2));
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
function getLastValue(target, prop2) {
|
|
179
|
+
return target[prop2];
|
|
180
|
+
}
|
|
181
|
+
function reconcile(target, value) {
|
|
182
|
+
if (target === value) return;
|
|
183
|
+
if (value === null || typeof value !== "object") {
|
|
184
|
+
throw new Error(
|
|
185
|
+
`[Fict] Cannot replace store with primitive value: ${String(
|
|
186
|
+
value
|
|
187
|
+
)}. setStore should return an object/array to merge.`
|
|
188
|
+
);
|
|
189
|
+
}
|
|
190
|
+
const realTarget = unwrap2(target);
|
|
191
|
+
const realValue = unwrap2(value);
|
|
192
|
+
const keys = /* @__PURE__ */ new Set([...Object.keys(realTarget), ...Object.keys(realValue)]);
|
|
193
|
+
for (const key of keys) {
|
|
194
|
+
if (realValue[key] === void 0 && realTarget[key] !== void 0) {
|
|
195
|
+
delete target[key];
|
|
196
|
+
} else if (realTarget[key] !== realValue[key]) {
|
|
197
|
+
target[key] = realValue[key];
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
if (Array.isArray(target) && target.length !== realValue.length) {
|
|
201
|
+
target.length = realValue.length;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
// src/reconcile.ts
|
|
206
|
+
function reconcileArrays(parentNode, a, b) {
|
|
207
|
+
const bLength = b.length;
|
|
208
|
+
let aEnd = a.length;
|
|
209
|
+
let bEnd = bLength;
|
|
210
|
+
let aStart = 0;
|
|
211
|
+
let bStart = 0;
|
|
212
|
+
const after = aEnd > 0 ? a[aEnd - 1].nextSibling : null;
|
|
213
|
+
let map = null;
|
|
214
|
+
while (aStart < aEnd || bStart < bEnd) {
|
|
215
|
+
if (a[aStart] === b[bStart]) {
|
|
216
|
+
aStart++;
|
|
217
|
+
bStart++;
|
|
218
|
+
continue;
|
|
219
|
+
}
|
|
220
|
+
while (a[aEnd - 1] === b[bEnd - 1]) {
|
|
221
|
+
aEnd--;
|
|
222
|
+
bEnd--;
|
|
223
|
+
}
|
|
224
|
+
if (aEnd === aStart) {
|
|
225
|
+
const node = bEnd < bLength ? bStart ? b[bStart - 1].nextSibling : _nullishCoalesce(b[bEnd - bStart], () => ( null)) : after;
|
|
226
|
+
const count = bEnd - bStart;
|
|
227
|
+
const doc = parentNode.ownerDocument;
|
|
228
|
+
if (count > 1 && doc) {
|
|
229
|
+
const frag = doc.createDocumentFragment();
|
|
230
|
+
for (let i = bStart; i < bEnd; i++) {
|
|
231
|
+
frag.appendChild(b[i]);
|
|
232
|
+
}
|
|
233
|
+
parentNode.insertBefore(frag, node);
|
|
234
|
+
bStart = bEnd;
|
|
235
|
+
} else {
|
|
236
|
+
while (bStart < bEnd) {
|
|
237
|
+
parentNode.insertBefore(b[bStart++], node);
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
} else if (bEnd === bStart) {
|
|
241
|
+
while (aStart < aEnd) {
|
|
242
|
+
const nodeToRemove = a[aStart];
|
|
243
|
+
if (!map || !map.has(nodeToRemove)) {
|
|
244
|
+
_optionalChain([nodeToRemove, 'access', _ => _.parentNode, 'optionalAccess', _2 => _2.removeChild, 'call', _3 => _3(nodeToRemove)]);
|
|
245
|
+
}
|
|
246
|
+
aStart++;
|
|
247
|
+
}
|
|
248
|
+
} else if (a[aStart] === b[bEnd - 1] && b[bStart] === a[aEnd - 1]) {
|
|
249
|
+
const node = a[--aEnd].nextSibling;
|
|
250
|
+
parentNode.insertBefore(b[bStart++], a[aStart++].nextSibling);
|
|
251
|
+
parentNode.insertBefore(b[--bEnd], node);
|
|
252
|
+
a[aEnd] = b[bEnd];
|
|
253
|
+
} else {
|
|
254
|
+
if (!map) {
|
|
255
|
+
map = /* @__PURE__ */ new Map();
|
|
256
|
+
let i = bStart;
|
|
257
|
+
while (i < bEnd) {
|
|
258
|
+
map.set(b[i], i++);
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
const index = map.get(a[aStart]);
|
|
262
|
+
if (index != null) {
|
|
263
|
+
if (bStart < index && index < bEnd) {
|
|
264
|
+
let i = aStart;
|
|
265
|
+
let sequence = 1;
|
|
266
|
+
let t;
|
|
267
|
+
while (++i < aEnd && i < bEnd) {
|
|
268
|
+
t = map.get(a[i]);
|
|
269
|
+
if (t == null || t !== index + sequence) break;
|
|
270
|
+
sequence++;
|
|
271
|
+
}
|
|
272
|
+
if (sequence > index - bStart) {
|
|
273
|
+
const node = a[aStart];
|
|
274
|
+
while (bStart < index) {
|
|
275
|
+
parentNode.insertBefore(b[bStart++], node);
|
|
276
|
+
}
|
|
277
|
+
} else {
|
|
278
|
+
parentNode.replaceChild(b[bStart++], a[aStart++]);
|
|
279
|
+
}
|
|
280
|
+
} else {
|
|
281
|
+
aStart++;
|
|
282
|
+
}
|
|
283
|
+
} else {
|
|
284
|
+
const nodeToRemove = a[aStart++];
|
|
285
|
+
_optionalChain([nodeToRemove, 'access', _4 => _4.parentNode, 'optionalAccess', _5 => _5.removeChild, 'call', _6 => _6(nodeToRemove)]);
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
// src/list-helpers.ts
|
|
292
|
+
var isDev = true ? false : typeof process === "undefined" || _optionalChain([process, 'access', _7 => _7.env, 'optionalAccess', _8 => _8.NODE_ENV]) !== "production";
|
|
293
|
+
function moveNodesBefore(parent, nodes, anchor) {
|
|
294
|
+
for (let i = nodes.length - 1; i >= 0; i--) {
|
|
295
|
+
const node = nodes[i];
|
|
296
|
+
if (!node || !(node instanceof Node)) {
|
|
297
|
+
const message = isDev ? "Invalid node in moveNodesBefore" : "FICT:E_NODE";
|
|
298
|
+
throw new Error(message);
|
|
299
|
+
}
|
|
300
|
+
if (node.nextSibling !== anchor) {
|
|
301
|
+
if (node.ownerDocument !== parent.ownerDocument && parent.ownerDocument) {
|
|
302
|
+
parent.ownerDocument.adoptNode(node);
|
|
303
|
+
}
|
|
304
|
+
try {
|
|
305
|
+
parent.insertBefore(node, anchor);
|
|
306
|
+
} catch (e) {
|
|
307
|
+
if (parent.ownerDocument) {
|
|
308
|
+
try {
|
|
309
|
+
const clone = parent.ownerDocument.importNode(node, true);
|
|
310
|
+
parent.insertBefore(clone, anchor);
|
|
311
|
+
continue;
|
|
312
|
+
} catch (e2) {
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
throw e;
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
anchor = node;
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
var MAX_SAFE_VERSION = 9007199254740991;
|
|
322
|
+
function createVersionedSignalAccessor(initialValue) {
|
|
323
|
+
let current = initialValue;
|
|
324
|
+
let version = 0;
|
|
325
|
+
const track2 = _chunkPMF6MWEVcjs.signal.call(void 0, version);
|
|
326
|
+
function accessor(value) {
|
|
327
|
+
if (arguments.length === 0) {
|
|
328
|
+
track2();
|
|
329
|
+
return current;
|
|
330
|
+
}
|
|
331
|
+
current = value;
|
|
332
|
+
version = version >= MAX_SAFE_VERSION ? 1 : version + 1;
|
|
333
|
+
track2(version);
|
|
334
|
+
}
|
|
335
|
+
return accessor;
|
|
336
|
+
}
|
|
337
|
+
function createKeyedListContainer() {
|
|
338
|
+
const startMarker = document.createComment("fict:list:start");
|
|
339
|
+
const endMarker = document.createComment("fict:list:end");
|
|
340
|
+
const dispose = () => {
|
|
341
|
+
for (const block of container.blocks.values()) {
|
|
342
|
+
_chunkPMF6MWEVcjs.destroyRoot.call(void 0, block.root);
|
|
343
|
+
}
|
|
344
|
+
container.blocks.clear();
|
|
345
|
+
container.nextBlocks.clear();
|
|
346
|
+
if (!startMarker.parentNode || !endMarker.parentNode) {
|
|
347
|
+
container.currentNodes = [];
|
|
348
|
+
container.nextNodes = [];
|
|
349
|
+
container.orderedBlocks.length = 0;
|
|
350
|
+
container.nextOrderedBlocks.length = 0;
|
|
351
|
+
container.orderedIndexByKey.clear();
|
|
352
|
+
return;
|
|
353
|
+
}
|
|
354
|
+
const range = document.createRange();
|
|
355
|
+
range.setStartBefore(startMarker);
|
|
356
|
+
range.setEndAfter(endMarker);
|
|
357
|
+
range.deleteContents();
|
|
358
|
+
container.currentNodes = [];
|
|
359
|
+
container.nextNodes = [];
|
|
360
|
+
container.nextBlocks.clear();
|
|
361
|
+
container.orderedBlocks.length = 0;
|
|
362
|
+
container.nextOrderedBlocks.length = 0;
|
|
363
|
+
container.orderedIndexByKey.clear();
|
|
364
|
+
};
|
|
365
|
+
const container = {
|
|
366
|
+
startMarker,
|
|
367
|
+
endMarker,
|
|
368
|
+
blocks: /* @__PURE__ */ new Map(),
|
|
369
|
+
nextBlocks: /* @__PURE__ */ new Map(),
|
|
370
|
+
currentNodes: [startMarker, endMarker],
|
|
371
|
+
nextNodes: [],
|
|
372
|
+
orderedBlocks: [],
|
|
373
|
+
nextOrderedBlocks: [],
|
|
374
|
+
orderedIndexByKey: /* @__PURE__ */ new Map(),
|
|
375
|
+
dispose
|
|
376
|
+
};
|
|
377
|
+
return container;
|
|
378
|
+
}
|
|
379
|
+
function createKeyedBlock(key, item, index, render, needsIndex = true, hostRoot) {
|
|
380
|
+
const itemSig = createVersionedSignalAccessor(item);
|
|
381
|
+
const indexSig = needsIndex ? _chunkPMF6MWEVcjs.signal.call(void 0, index) : ((next) => {
|
|
382
|
+
if (arguments.length === 0) return index;
|
|
383
|
+
index = next;
|
|
384
|
+
return index;
|
|
385
|
+
});
|
|
386
|
+
const root = _chunkPMF6MWEVcjs.createRootContext.call(void 0, hostRoot);
|
|
387
|
+
const prevRoot = _chunkPMF6MWEVcjs.pushRoot.call(void 0, root);
|
|
388
|
+
let nodes = [];
|
|
389
|
+
let scopeDispose;
|
|
390
|
+
const prevSub = _chunkPMF6MWEVcjs.setActiveSub.call(void 0, void 0);
|
|
391
|
+
try {
|
|
392
|
+
scopeDispose = _chunkPMF6MWEVcjs.effectScope.call(void 0, () => {
|
|
393
|
+
const rendered = render(itemSig, indexSig, key);
|
|
394
|
+
if (rendered instanceof Node || Array.isArray(rendered) && rendered.every((n) => n instanceof Node)) {
|
|
395
|
+
nodes = _chunkPMF6MWEVcjs.toNodeArray.call(void 0, rendered);
|
|
396
|
+
} else {
|
|
397
|
+
const element = _chunkPMF6MWEVcjs.createElement.call(void 0, rendered);
|
|
398
|
+
nodes = _chunkPMF6MWEVcjs.toNodeArray.call(void 0, element);
|
|
399
|
+
}
|
|
400
|
+
});
|
|
401
|
+
if (scopeDispose) {
|
|
402
|
+
root.cleanups.push(scopeDispose);
|
|
403
|
+
}
|
|
404
|
+
} finally {
|
|
405
|
+
_chunkPMF6MWEVcjs.setActiveSub.call(void 0, prevSub);
|
|
406
|
+
_chunkPMF6MWEVcjs.popRoot.call(void 0, prevRoot);
|
|
407
|
+
}
|
|
408
|
+
return {
|
|
409
|
+
key,
|
|
410
|
+
nodes,
|
|
411
|
+
root,
|
|
412
|
+
item: itemSig,
|
|
413
|
+
index: indexSig,
|
|
414
|
+
rawItem: item,
|
|
415
|
+
rawIndex: index
|
|
416
|
+
};
|
|
417
|
+
}
|
|
418
|
+
function isNodeBetweenMarkers(node, startMarker, endMarker) {
|
|
419
|
+
let current = startMarker.nextSibling;
|
|
420
|
+
while (current && current !== endMarker) {
|
|
421
|
+
if (current === node) return true;
|
|
422
|
+
current = current.nextSibling;
|
|
423
|
+
}
|
|
424
|
+
return false;
|
|
425
|
+
}
|
|
426
|
+
function reorderBySwap(parent, first, second) {
|
|
427
|
+
if (first === second) return false;
|
|
428
|
+
const firstNodes = first.nodes;
|
|
429
|
+
const secondNodes = second.nodes;
|
|
430
|
+
if (firstNodes.length === 0 || secondNodes.length === 0) return false;
|
|
431
|
+
const lastFirst = firstNodes[firstNodes.length - 1];
|
|
432
|
+
const lastSecond = secondNodes[secondNodes.length - 1];
|
|
433
|
+
const afterFirst = lastFirst.nextSibling;
|
|
434
|
+
const afterSecond = lastSecond.nextSibling;
|
|
435
|
+
moveNodesBefore(parent, firstNodes, afterSecond);
|
|
436
|
+
moveNodesBefore(parent, secondNodes, afterFirst);
|
|
437
|
+
return true;
|
|
438
|
+
}
|
|
439
|
+
function getLISIndices(sequence) {
|
|
440
|
+
const predecessors = new Array(sequence.length);
|
|
441
|
+
const result = [];
|
|
442
|
+
for (let i = 0; i < sequence.length; i++) {
|
|
443
|
+
const value = sequence[i];
|
|
444
|
+
if (value < 0) {
|
|
445
|
+
predecessors[i] = -1;
|
|
446
|
+
continue;
|
|
447
|
+
}
|
|
448
|
+
let low = 0;
|
|
449
|
+
let high = result.length;
|
|
450
|
+
while (low < high) {
|
|
451
|
+
const mid = low + high >> 1;
|
|
452
|
+
if (sequence[result[mid]] < value) {
|
|
453
|
+
low = mid + 1;
|
|
454
|
+
} else {
|
|
455
|
+
high = mid;
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
predecessors[i] = low > 0 ? result[low - 1] : -1;
|
|
459
|
+
if (low === result.length) {
|
|
460
|
+
result.push(i);
|
|
461
|
+
} else {
|
|
462
|
+
result[low] = i;
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
const lis = new Array(result.length);
|
|
466
|
+
let k = result.length > 0 ? result[result.length - 1] : -1;
|
|
467
|
+
for (let i = result.length - 1; i >= 0; i--) {
|
|
468
|
+
lis[i] = k;
|
|
469
|
+
k = predecessors[k];
|
|
470
|
+
}
|
|
471
|
+
return lis;
|
|
472
|
+
}
|
|
473
|
+
function reorderByLIS(parent, endMarker, prev, next) {
|
|
474
|
+
const positions = /* @__PURE__ */ new Map();
|
|
475
|
+
for (let i = 0; i < prev.length; i++) {
|
|
476
|
+
positions.set(prev[i], i);
|
|
477
|
+
}
|
|
478
|
+
const sequence = new Array(next.length);
|
|
479
|
+
for (let i = 0; i < next.length; i++) {
|
|
480
|
+
const position = positions.get(next[i]);
|
|
481
|
+
if (position === void 0) return false;
|
|
482
|
+
sequence[i] = position;
|
|
483
|
+
}
|
|
484
|
+
const lisIndices = getLISIndices(sequence);
|
|
485
|
+
if (lisIndices.length === sequence.length) return true;
|
|
486
|
+
const inLIS = new Array(sequence.length).fill(false);
|
|
487
|
+
for (let i = 0; i < lisIndices.length; i++) {
|
|
488
|
+
inLIS[lisIndices[i]] = true;
|
|
489
|
+
}
|
|
490
|
+
let anchor = endMarker;
|
|
491
|
+
let moved = false;
|
|
492
|
+
for (let i = next.length - 1; i >= 0; i--) {
|
|
493
|
+
const block = next[i];
|
|
494
|
+
const nodes = block.nodes;
|
|
495
|
+
if (nodes.length === 0) continue;
|
|
496
|
+
if (inLIS[i]) {
|
|
497
|
+
anchor = nodes[0];
|
|
498
|
+
continue;
|
|
499
|
+
}
|
|
500
|
+
moveNodesBefore(parent, nodes, anchor);
|
|
501
|
+
anchor = nodes[0];
|
|
502
|
+
moved = true;
|
|
503
|
+
}
|
|
504
|
+
return moved;
|
|
505
|
+
}
|
|
506
|
+
function createKeyedList(getItems, keyFn, renderItem, needsIndex) {
|
|
507
|
+
const resolvedNeedsIndex = arguments.length >= 4 ? !!needsIndex : renderItem.length > 1;
|
|
508
|
+
return createFineGrainedKeyedList(getItems, keyFn, renderItem, resolvedNeedsIndex);
|
|
509
|
+
}
|
|
510
|
+
function createFineGrainedKeyedList(getItems, keyFn, renderItem, needsIndex) {
|
|
511
|
+
const container = createKeyedListContainer();
|
|
512
|
+
const hostRoot = _chunkPMF6MWEVcjs.getCurrentRoot.call(void 0, );
|
|
513
|
+
const fragment = document.createDocumentFragment();
|
|
514
|
+
fragment.append(container.startMarker, container.endMarker);
|
|
515
|
+
let disposed = false;
|
|
516
|
+
let effectDispose;
|
|
517
|
+
let connectObserver = null;
|
|
518
|
+
let effectStarted = false;
|
|
519
|
+
let startScheduled = false;
|
|
520
|
+
const getConnectedParent = () => {
|
|
521
|
+
const endParent = container.endMarker.parentNode;
|
|
522
|
+
const startParent = container.startMarker.parentNode;
|
|
523
|
+
if (endParent && startParent && endParent === startParent && endParent.nodeType !== 11) {
|
|
524
|
+
return endParent;
|
|
525
|
+
}
|
|
526
|
+
return null;
|
|
527
|
+
};
|
|
528
|
+
const performDiff = () => {
|
|
529
|
+
if (disposed) return;
|
|
530
|
+
const parent = getConnectedParent();
|
|
531
|
+
if (!parent) return;
|
|
532
|
+
_chunkPMF6MWEVcjs.batch2.call(void 0, () => {
|
|
533
|
+
const oldBlocks = container.blocks;
|
|
534
|
+
const newBlocks = container.nextBlocks;
|
|
535
|
+
const prevOrderedBlocks = container.orderedBlocks;
|
|
536
|
+
const nextOrderedBlocks = container.nextOrderedBlocks;
|
|
537
|
+
const orderedIndexByKey = container.orderedIndexByKey;
|
|
538
|
+
const newItems = getItems();
|
|
539
|
+
if (newItems.length === 0) {
|
|
540
|
+
if (oldBlocks.size > 0) {
|
|
541
|
+
for (const block of oldBlocks.values()) {
|
|
542
|
+
_chunkPMF6MWEVcjs.destroyRoot.call(void 0, block.root);
|
|
543
|
+
}
|
|
544
|
+
const range = document.createRange();
|
|
545
|
+
range.setStartAfter(container.startMarker);
|
|
546
|
+
range.setEndBefore(container.endMarker);
|
|
547
|
+
range.deleteContents();
|
|
548
|
+
}
|
|
549
|
+
oldBlocks.clear();
|
|
550
|
+
newBlocks.clear();
|
|
551
|
+
prevOrderedBlocks.length = 0;
|
|
552
|
+
nextOrderedBlocks.length = 0;
|
|
553
|
+
orderedIndexByKey.clear();
|
|
554
|
+
container.currentNodes.length = 0;
|
|
555
|
+
container.currentNodes.push(container.startMarker, container.endMarker);
|
|
556
|
+
container.nextNodes.length = 0;
|
|
557
|
+
return;
|
|
558
|
+
}
|
|
559
|
+
const prevCount = prevOrderedBlocks.length;
|
|
560
|
+
if (prevCount > 0 && newItems.length === prevCount && orderedIndexByKey.size === prevCount) {
|
|
561
|
+
let stableOrder = true;
|
|
562
|
+
const seen = /* @__PURE__ */ new Set();
|
|
563
|
+
for (let i = 0; i < prevCount; i++) {
|
|
564
|
+
const item = newItems[i];
|
|
565
|
+
const key = keyFn(item, i);
|
|
566
|
+
if (seen.has(key) || prevOrderedBlocks[i].key !== key) {
|
|
567
|
+
stableOrder = false;
|
|
568
|
+
break;
|
|
569
|
+
}
|
|
570
|
+
seen.add(key);
|
|
571
|
+
}
|
|
572
|
+
if (stableOrder) {
|
|
573
|
+
for (let i = 0; i < prevCount; i++) {
|
|
574
|
+
const item = newItems[i];
|
|
575
|
+
const block = prevOrderedBlocks[i];
|
|
576
|
+
if (block.rawItem !== item) {
|
|
577
|
+
block.rawItem = item;
|
|
578
|
+
block.item(item);
|
|
579
|
+
}
|
|
580
|
+
if (needsIndex && block.rawIndex !== i) {
|
|
581
|
+
block.rawIndex = i;
|
|
582
|
+
block.index(i);
|
|
583
|
+
}
|
|
584
|
+
}
|
|
585
|
+
return;
|
|
586
|
+
}
|
|
587
|
+
}
|
|
588
|
+
newBlocks.clear();
|
|
589
|
+
nextOrderedBlocks.length = 0;
|
|
590
|
+
orderedIndexByKey.clear();
|
|
591
|
+
const createdBlocks = [];
|
|
592
|
+
let appendCandidate = prevCount > 0 && newItems.length >= prevCount;
|
|
593
|
+
const appendedBlocks = [];
|
|
594
|
+
let mismatchCount = 0;
|
|
595
|
+
let mismatchFirst = -1;
|
|
596
|
+
let mismatchSecond = -1;
|
|
597
|
+
let hasDuplicateKey = false;
|
|
598
|
+
newItems.forEach((item, index) => {
|
|
599
|
+
const key = keyFn(item, index);
|
|
600
|
+
let block = oldBlocks.get(key);
|
|
601
|
+
const existed = block !== void 0;
|
|
602
|
+
if (block) {
|
|
603
|
+
if (block.rawItem !== item) {
|
|
604
|
+
block.rawItem = item;
|
|
605
|
+
block.item(item);
|
|
606
|
+
}
|
|
607
|
+
if (needsIndex && block.rawIndex !== index) {
|
|
608
|
+
block.rawIndex = index;
|
|
609
|
+
block.index(index);
|
|
610
|
+
}
|
|
611
|
+
}
|
|
612
|
+
if (block) {
|
|
613
|
+
newBlocks.set(key, block);
|
|
614
|
+
oldBlocks.delete(key);
|
|
615
|
+
} else {
|
|
616
|
+
const existingBlock = newBlocks.get(key);
|
|
617
|
+
if (existingBlock) {
|
|
618
|
+
if (isDev) {
|
|
619
|
+
console.warn(
|
|
620
|
+
`[fict] Duplicate key "${String(key)}" detected in list rendering. Each item should have a unique key. The previous item with this key will be replaced.`
|
|
621
|
+
);
|
|
622
|
+
}
|
|
623
|
+
_chunkPMF6MWEVcjs.destroyRoot.call(void 0, existingBlock.root);
|
|
624
|
+
_chunkPMF6MWEVcjs.removeNodes.call(void 0, existingBlock.nodes);
|
|
625
|
+
}
|
|
626
|
+
block = createKeyedBlock(key, item, index, renderItem, needsIndex, hostRoot);
|
|
627
|
+
createdBlocks.push(block);
|
|
628
|
+
}
|
|
629
|
+
const resolvedBlock = block;
|
|
630
|
+
newBlocks.set(key, resolvedBlock);
|
|
631
|
+
const position = orderedIndexByKey.get(key);
|
|
632
|
+
if (position !== void 0) {
|
|
633
|
+
appendCandidate = false;
|
|
634
|
+
hasDuplicateKey = true;
|
|
635
|
+
const prior = nextOrderedBlocks[position];
|
|
636
|
+
if (prior && prior !== resolvedBlock) {
|
|
637
|
+
_chunkPMF6MWEVcjs.destroyRoot.call(void 0, prior.root);
|
|
638
|
+
_chunkPMF6MWEVcjs.removeNodes.call(void 0, prior.nodes);
|
|
639
|
+
}
|
|
640
|
+
nextOrderedBlocks[position] = resolvedBlock;
|
|
641
|
+
} else {
|
|
642
|
+
if (appendCandidate) {
|
|
643
|
+
if (index < prevCount) {
|
|
644
|
+
if (!prevOrderedBlocks[index] || prevOrderedBlocks[index].key !== key) {
|
|
645
|
+
appendCandidate = false;
|
|
646
|
+
}
|
|
647
|
+
} else if (existed) {
|
|
648
|
+
appendCandidate = false;
|
|
649
|
+
}
|
|
650
|
+
}
|
|
651
|
+
const nextIndex = nextOrderedBlocks.length;
|
|
652
|
+
orderedIndexByKey.set(key, nextIndex);
|
|
653
|
+
nextOrderedBlocks.push(resolvedBlock);
|
|
654
|
+
if (mismatchCount < 3 && (nextIndex >= prevCount || prevOrderedBlocks[nextIndex] !== resolvedBlock)) {
|
|
655
|
+
if (mismatchCount === 0) {
|
|
656
|
+
mismatchFirst = nextIndex;
|
|
657
|
+
} else if (mismatchCount === 1) {
|
|
658
|
+
mismatchSecond = nextIndex;
|
|
659
|
+
}
|
|
660
|
+
mismatchCount++;
|
|
661
|
+
}
|
|
662
|
+
}
|
|
663
|
+
if (appendCandidate && index >= prevCount) {
|
|
664
|
+
appendedBlocks.push(resolvedBlock);
|
|
665
|
+
}
|
|
666
|
+
});
|
|
667
|
+
const canAppend = appendCandidate && prevCount > 0 && newItems.length > prevCount && oldBlocks.size === 0 && appendedBlocks.length > 0;
|
|
668
|
+
if (canAppend) {
|
|
669
|
+
const appendedNodes = [];
|
|
670
|
+
for (const block of appendedBlocks) {
|
|
671
|
+
for (let i = 0; i < block.nodes.length; i++) {
|
|
672
|
+
appendedNodes.push(block.nodes[i]);
|
|
673
|
+
}
|
|
674
|
+
}
|
|
675
|
+
if (appendedNodes.length > 0) {
|
|
676
|
+
_chunkPMF6MWEVcjs.insertNodesBefore.call(void 0, parent, appendedNodes, container.endMarker);
|
|
677
|
+
const currentNodes = container.currentNodes;
|
|
678
|
+
currentNodes.pop();
|
|
679
|
+
for (let i = 0; i < appendedNodes.length; i++) {
|
|
680
|
+
currentNodes.push(appendedNodes[i]);
|
|
681
|
+
}
|
|
682
|
+
currentNodes.push(container.endMarker);
|
|
683
|
+
}
|
|
684
|
+
container.blocks = newBlocks;
|
|
685
|
+
container.nextBlocks = oldBlocks;
|
|
686
|
+
container.orderedBlocks = nextOrderedBlocks;
|
|
687
|
+
container.nextOrderedBlocks = prevOrderedBlocks;
|
|
688
|
+
for (const block of createdBlocks) {
|
|
689
|
+
if (newBlocks.get(block.key) === block) {
|
|
690
|
+
_chunkPMF6MWEVcjs.flushOnMount.call(void 0, block.root);
|
|
691
|
+
}
|
|
692
|
+
}
|
|
693
|
+
return;
|
|
694
|
+
}
|
|
695
|
+
if (oldBlocks.size > 0) {
|
|
696
|
+
for (const block of oldBlocks.values()) {
|
|
697
|
+
_chunkPMF6MWEVcjs.destroyRoot.call(void 0, block.root);
|
|
698
|
+
_chunkPMF6MWEVcjs.removeNodes.call(void 0, block.nodes);
|
|
699
|
+
}
|
|
700
|
+
oldBlocks.clear();
|
|
701
|
+
}
|
|
702
|
+
const canReorderInPlace = createdBlocks.length === 0 && oldBlocks.size === 0 && nextOrderedBlocks.length === prevOrderedBlocks.length;
|
|
703
|
+
let skipReconcile = false;
|
|
704
|
+
let updateNodeBuffer = true;
|
|
705
|
+
if (canReorderInPlace && nextOrderedBlocks.length > 0 && !hasDuplicateKey) {
|
|
706
|
+
if (mismatchCount === 0) {
|
|
707
|
+
skipReconcile = true;
|
|
708
|
+
updateNodeBuffer = false;
|
|
709
|
+
} else if (mismatchCount === 2 && prevOrderedBlocks[mismatchFirst] === nextOrderedBlocks[mismatchSecond] && prevOrderedBlocks[mismatchSecond] === nextOrderedBlocks[mismatchFirst]) {
|
|
710
|
+
if (reorderBySwap(
|
|
711
|
+
parent,
|
|
712
|
+
prevOrderedBlocks[mismatchFirst],
|
|
713
|
+
prevOrderedBlocks[mismatchSecond]
|
|
714
|
+
)) {
|
|
715
|
+
skipReconcile = true;
|
|
716
|
+
}
|
|
717
|
+
} else if (reorderByLIS(parent, container.endMarker, prevOrderedBlocks, nextOrderedBlocks)) {
|
|
718
|
+
skipReconcile = true;
|
|
719
|
+
}
|
|
720
|
+
}
|
|
721
|
+
if (!skipReconcile && (newBlocks.size > 0 || container.currentNodes.length > 0)) {
|
|
722
|
+
const prevNodes = container.currentNodes;
|
|
723
|
+
const nextNodes = container.nextNodes;
|
|
724
|
+
nextNodes.length = 0;
|
|
725
|
+
nextNodes.push(container.startMarker);
|
|
726
|
+
for (let i = 0; i < nextOrderedBlocks.length; i++) {
|
|
727
|
+
const nodes = nextOrderedBlocks[i].nodes;
|
|
728
|
+
for (let j = 0; j < nodes.length; j++) {
|
|
729
|
+
nextNodes.push(nodes[j]);
|
|
730
|
+
}
|
|
731
|
+
}
|
|
732
|
+
nextNodes.push(container.endMarker);
|
|
733
|
+
reconcileArrays(parent, prevNodes, nextNodes);
|
|
734
|
+
container.currentNodes = nextNodes;
|
|
735
|
+
container.nextNodes = prevNodes;
|
|
736
|
+
} else if (skipReconcile && updateNodeBuffer) {
|
|
737
|
+
const prevNodes = container.currentNodes;
|
|
738
|
+
const nextNodes = container.nextNodes;
|
|
739
|
+
nextNodes.length = 0;
|
|
740
|
+
nextNodes.push(container.startMarker);
|
|
741
|
+
for (let i = 0; i < nextOrderedBlocks.length; i++) {
|
|
742
|
+
const nodes = nextOrderedBlocks[i].nodes;
|
|
743
|
+
for (let j = 0; j < nodes.length; j++) {
|
|
744
|
+
nextNodes.push(nodes[j]);
|
|
745
|
+
}
|
|
746
|
+
}
|
|
747
|
+
nextNodes.push(container.endMarker);
|
|
748
|
+
container.currentNodes = nextNodes;
|
|
749
|
+
container.nextNodes = prevNodes;
|
|
750
|
+
}
|
|
751
|
+
container.blocks = newBlocks;
|
|
752
|
+
container.nextBlocks = oldBlocks;
|
|
753
|
+
container.orderedBlocks = nextOrderedBlocks;
|
|
754
|
+
container.nextOrderedBlocks = prevOrderedBlocks;
|
|
755
|
+
for (const block of createdBlocks) {
|
|
756
|
+
if (newBlocks.get(block.key) === block) {
|
|
757
|
+
_chunkPMF6MWEVcjs.flushOnMount.call(void 0, block.root);
|
|
758
|
+
}
|
|
759
|
+
}
|
|
760
|
+
});
|
|
761
|
+
};
|
|
762
|
+
const disconnectObserver = () => {
|
|
763
|
+
_optionalChain([connectObserver, 'optionalAccess', _9 => _9.disconnect, 'call', _10 => _10()]);
|
|
764
|
+
connectObserver = null;
|
|
765
|
+
};
|
|
766
|
+
const ensureEffectStarted = () => {
|
|
767
|
+
if (disposed || effectStarted) return effectStarted;
|
|
768
|
+
const parent = getConnectedParent();
|
|
769
|
+
if (!parent) return false;
|
|
770
|
+
const start = () => {
|
|
771
|
+
effectDispose = _chunkPMF6MWEVcjs.createRenderEffect.call(void 0, performDiff);
|
|
772
|
+
effectStarted = true;
|
|
773
|
+
};
|
|
774
|
+
if (hostRoot) {
|
|
775
|
+
const prev = _chunkPMF6MWEVcjs.pushRoot.call(void 0, hostRoot);
|
|
776
|
+
try {
|
|
777
|
+
start();
|
|
778
|
+
} finally {
|
|
779
|
+
_chunkPMF6MWEVcjs.popRoot.call(void 0, prev);
|
|
780
|
+
}
|
|
781
|
+
} else {
|
|
782
|
+
start();
|
|
783
|
+
}
|
|
784
|
+
return true;
|
|
785
|
+
};
|
|
786
|
+
const waitForConnection = () => {
|
|
787
|
+
if (connectObserver || typeof MutationObserver === "undefined") return;
|
|
788
|
+
connectObserver = new MutationObserver(() => {
|
|
789
|
+
if (disposed) return;
|
|
790
|
+
if (getConnectedParent()) {
|
|
791
|
+
disconnectObserver();
|
|
792
|
+
if (ensureEffectStarted()) {
|
|
793
|
+
_chunkPMF6MWEVcjs.flush.call(void 0, );
|
|
794
|
+
}
|
|
795
|
+
}
|
|
796
|
+
});
|
|
797
|
+
connectObserver.observe(document, { childList: true, subtree: true });
|
|
798
|
+
};
|
|
799
|
+
const scheduleStart = () => {
|
|
800
|
+
if (startScheduled || disposed || effectStarted) return;
|
|
801
|
+
startScheduled = true;
|
|
802
|
+
const run = () => {
|
|
803
|
+
startScheduled = false;
|
|
804
|
+
if (!ensureEffectStarted()) {
|
|
805
|
+
waitForConnection();
|
|
806
|
+
}
|
|
807
|
+
};
|
|
808
|
+
if (typeof queueMicrotask === "function") {
|
|
809
|
+
queueMicrotask(run);
|
|
810
|
+
} else {
|
|
811
|
+
Promise.resolve().then(run).catch(() => void 0);
|
|
812
|
+
}
|
|
813
|
+
};
|
|
814
|
+
scheduleStart();
|
|
815
|
+
return {
|
|
816
|
+
get marker() {
|
|
817
|
+
scheduleStart();
|
|
818
|
+
return fragment;
|
|
819
|
+
},
|
|
820
|
+
startMarker: container.startMarker,
|
|
821
|
+
endMarker: container.endMarker,
|
|
822
|
+
// Flush pending items - call after markers are inserted into DOM
|
|
823
|
+
flush: () => {
|
|
824
|
+
if (disposed) return;
|
|
825
|
+
scheduleStart();
|
|
826
|
+
if (ensureEffectStarted()) {
|
|
827
|
+
_chunkPMF6MWEVcjs.flush.call(void 0, );
|
|
828
|
+
} else {
|
|
829
|
+
waitForConnection();
|
|
830
|
+
}
|
|
831
|
+
},
|
|
832
|
+
dispose: () => {
|
|
833
|
+
disposed = true;
|
|
834
|
+
_optionalChain([effectDispose, 'optionalCall', _11 => _11()]);
|
|
835
|
+
disconnectObserver();
|
|
836
|
+
container.dispose();
|
|
837
|
+
}
|
|
838
|
+
};
|
|
839
|
+
}
|
|
840
|
+
|
|
841
|
+
|
|
842
|
+
|
|
843
|
+
|
|
844
|
+
|
|
845
|
+
|
|
846
|
+
|
|
847
|
+
|
|
848
|
+
|
|
849
|
+
|
|
850
|
+
|
|
851
|
+
|
|
852
|
+
|
|
853
|
+
|
|
854
|
+
|
|
855
|
+
|
|
856
|
+
|
|
857
|
+
|
|
858
|
+
|
|
859
|
+
|
|
860
|
+
|
|
861
|
+
|
|
862
|
+
|
|
863
|
+
|
|
864
|
+
|
|
865
|
+
|
|
866
|
+
|
|
867
|
+
|
|
868
|
+
|
|
869
|
+
|
|
870
|
+
|
|
871
|
+
|
|
872
|
+
|
|
873
|
+
|
|
874
|
+
|
|
875
|
+
|
|
876
|
+
|
|
877
|
+
|
|
878
|
+
|
|
879
|
+
|
|
880
|
+
|
|
881
|
+
|
|
882
|
+
|
|
883
|
+
|
|
884
|
+
|
|
885
|
+
|
|
886
|
+
|
|
887
|
+
|
|
888
|
+
|
|
889
|
+
|
|
890
|
+
|
|
891
|
+
|
|
892
|
+
|
|
893
|
+
|
|
894
|
+
|
|
895
|
+
|
|
896
|
+
|
|
897
|
+
|
|
898
|
+
|
|
899
|
+
|
|
900
|
+
exports.Aliases = _chunkPMF6MWEVcjs.Aliases; exports.BooleanAttributes = _chunkPMF6MWEVcjs.BooleanAttributes; exports.ChildProperties = _chunkPMF6MWEVcjs.ChildProperties; exports.DelegatedEvents = _chunkPMF6MWEVcjs.DelegatedEvents; exports.Fragment = _chunkPMF6MWEVcjs.Fragment; exports.Properties = _chunkPMF6MWEVcjs.Properties; exports.SVGElements = _chunkPMF6MWEVcjs.SVGElements; exports.SVGNamespace = _chunkPMF6MWEVcjs.SVGNamespace; exports.UnitlessStyles = _chunkPMF6MWEVcjs.UnitlessStyles; exports.__fictPopContext = _chunkPMF6MWEVcjs.__fictPopContext; exports.__fictProp = _chunkPMF6MWEVcjs.__fictProp; exports.__fictPropsRest = _chunkPMF6MWEVcjs.__fictPropsRest; exports.__fictPushContext = _chunkPMF6MWEVcjs.__fictPushContext; exports.__fictRender = _chunkPMF6MWEVcjs.__fictRender; exports.__fictResetContext = _chunkPMF6MWEVcjs.__fictResetContext; exports.__fictUseContext = _chunkPMF6MWEVcjs.__fictUseContext; exports.__fictUseEffect = _chunkPMF6MWEVcjs.__fictUseEffect; exports.__fictUseMemo = _chunkPMF6MWEVcjs.__fictUseMemo; exports.__fictUseSignal = _chunkPMF6MWEVcjs.__fictUseSignal; exports.addEventListener = _chunkPMF6MWEVcjs.addEventListener; exports.assign = _chunkPMF6MWEVcjs.assign; exports.bindAttribute = _chunkPMF6MWEVcjs.bindAttribute; exports.bindClass = _chunkPMF6MWEVcjs.bindClass; exports.bindEvent = _chunkPMF6MWEVcjs.bindEvent; exports.bindProperty = _chunkPMF6MWEVcjs.bindProperty; exports.bindRef = _chunkPMF6MWEVcjs.bindRef; exports.bindStyle = _chunkPMF6MWEVcjs.bindStyle; exports.bindText = _chunkPMF6MWEVcjs.bindText; exports.callEventHandler = _chunkPMF6MWEVcjs.callEventHandler; exports.classList = _chunkPMF6MWEVcjs.classList; exports.clearDelegatedEvents = _chunkPMF6MWEVcjs.clearDelegatedEvents; exports.createConditional = _chunkPMF6MWEVcjs.createConditional; exports.createEffect = _chunkPMF6MWEVcjs.createEffect; exports.createElement = _chunkPMF6MWEVcjs.createElement; exports.createKeyedList = createKeyedList; exports.createMemo = _chunkPMF6MWEVcjs.createMemo; exports.createPortal = _chunkPMF6MWEVcjs.createPortal; exports.createPropsProxy = _chunkPMF6MWEVcjs.createPropsProxy; exports.createRenderEffect = _chunkPMF6MWEVcjs.createRenderEffect; exports.createSelector = _chunkPMF6MWEVcjs.createSelector; exports.createSignal = _chunkPMF6MWEVcjs.signal; exports.createStore = createStore; exports.delegateEvents = _chunkPMF6MWEVcjs.delegateEvents; exports.getPropAlias = _chunkPMF6MWEVcjs.getPropAlias; exports.insert = _chunkPMF6MWEVcjs.insert; exports.insertNodesBefore = _chunkPMF6MWEVcjs.insertNodesBefore; exports.isNodeBetweenMarkers = isNodeBetweenMarkers; exports.isReactive = _chunkPMF6MWEVcjs.isReactive; exports.mergeProps = _chunkPMF6MWEVcjs.mergeProps; exports.moveNodesBefore = moveNodesBefore; exports.onDestroy = _chunkPMF6MWEVcjs.onDestroy; exports.prop = _chunkPMF6MWEVcjs.prop; exports.reconcileArrays = reconcileArrays; exports.removeNodes = _chunkPMF6MWEVcjs.removeNodes; exports.runInScope = _chunk624QY53Acjs.runInScope; exports.spread = _chunkPMF6MWEVcjs.spread; exports.template = _chunkPMF6MWEVcjs.template; exports.toNodeArray = _chunkPMF6MWEVcjs.toNodeArray; exports.unwrap = _chunkPMF6MWEVcjs.unwrap;
|
|
901
|
+
//# sourceMappingURL=internal.cjs.map
|