essor 0.0.6 → 0.0.7-beta.1
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/essor.cjs.js +26 -26
- package/dist/essor.cjs.js.map +1 -1
- package/dist/essor.d.cts +3 -5
- package/dist/essor.d.ts +3 -5
- package/dist/essor.dev.cjs.js +46 -39
- package/dist/essor.dev.esm.js +46 -39
- package/dist/essor.esm.js +3 -3
- package/dist/essor.esm.js.map +1 -1
- package/package.json +2 -2
package/dist/essor.d.cts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ExcludeType } from 'essor-shared';
|
|
2
2
|
import * as csstype from 'csstype';
|
|
3
3
|
|
|
4
|
-
declare const __essor_version = "0.0.6
|
|
4
|
+
declare const __essor_version = "0.0.6";
|
|
5
5
|
|
|
6
6
|
type EffectFn = () => void;
|
|
7
7
|
/**
|
|
@@ -9,14 +9,12 @@ type EffectFn = () => void;
|
|
|
9
9
|
*/
|
|
10
10
|
declare class Signal$1<T> {
|
|
11
11
|
private _value;
|
|
12
|
-
private _reactive;
|
|
13
|
-
private __activeEffect;
|
|
14
12
|
constructor(value: T);
|
|
15
13
|
valueOf(): T;
|
|
16
14
|
toString(): string;
|
|
17
15
|
toJSON(): T;
|
|
18
16
|
get value(): T;
|
|
19
|
-
__triggerObject
|
|
17
|
+
private __triggerObject;
|
|
20
18
|
set value(newValue: T);
|
|
21
19
|
peek(): T;
|
|
22
20
|
update(): void;
|
|
@@ -36,7 +34,7 @@ declare function isSignal<T>(value: any): value is Signal$1<T>;
|
|
|
36
34
|
/**
|
|
37
35
|
* Computed class representing a computed reactive value.
|
|
38
36
|
*/
|
|
39
|
-
declare class Computed<T> {
|
|
37
|
+
declare class Computed<T = unknown> {
|
|
40
38
|
private readonly fn;
|
|
41
39
|
private _value;
|
|
42
40
|
private _deps;
|
package/dist/essor.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ExcludeType } from 'essor-shared';
|
|
2
2
|
import * as csstype from 'csstype';
|
|
3
3
|
|
|
4
|
-
declare const __essor_version = "0.0.6
|
|
4
|
+
declare const __essor_version = "0.0.6";
|
|
5
5
|
|
|
6
6
|
type EffectFn = () => void;
|
|
7
7
|
/**
|
|
@@ -9,14 +9,12 @@ type EffectFn = () => void;
|
|
|
9
9
|
*/
|
|
10
10
|
declare class Signal$1<T> {
|
|
11
11
|
private _value;
|
|
12
|
-
private _reactive;
|
|
13
|
-
private __activeEffect;
|
|
14
12
|
constructor(value: T);
|
|
15
13
|
valueOf(): T;
|
|
16
14
|
toString(): string;
|
|
17
15
|
toJSON(): T;
|
|
18
16
|
get value(): T;
|
|
19
|
-
__triggerObject
|
|
17
|
+
private __triggerObject;
|
|
20
18
|
set value(newValue: T);
|
|
21
19
|
peek(): T;
|
|
22
20
|
update(): void;
|
|
@@ -36,7 +34,7 @@ declare function isSignal<T>(value: any): value is Signal$1<T>;
|
|
|
36
34
|
/**
|
|
37
35
|
* Computed class representing a computed reactive value.
|
|
38
36
|
*/
|
|
39
|
-
declare class Computed<T> {
|
|
37
|
+
declare class Computed<T = unknown> {
|
|
40
38
|
private readonly fn;
|
|
41
39
|
private _value;
|
|
42
40
|
private _deps;
|
package/dist/essor.dev.cjs.js
CHANGED
|
@@ -18,7 +18,7 @@ var __spreadValues = (a, b) => {
|
|
|
18
18
|
};
|
|
19
19
|
|
|
20
20
|
// src/version.ts
|
|
21
|
-
var __essor_version = "0.0.6
|
|
21
|
+
var __essor_version = "0.0.6";
|
|
22
22
|
|
|
23
23
|
// ../shared/dist/essor-shared.js
|
|
24
24
|
var isObject = (val) => val !== null && typeof val === "object";
|
|
@@ -167,15 +167,17 @@ var capitalizeFirstLetter = (inputString) => {
|
|
|
167
167
|
// src/signal/signal.ts
|
|
168
168
|
var activeEffect = null;
|
|
169
169
|
var activeComputed = null;
|
|
170
|
-
var
|
|
171
|
-
var
|
|
172
|
-
var
|
|
170
|
+
var computedMap = /* @__PURE__ */ new WeakMap();
|
|
171
|
+
var signalMap = /* @__PURE__ */ new WeakMap();
|
|
172
|
+
var effectDeps = /* @__PURE__ */ new Set();
|
|
173
|
+
var reactiveMap = /* @__PURE__ */ new WeakMap();
|
|
173
174
|
var arrayMethods = ["push", "pop", "shift", "unshift", "splice", "sort", "reverse"];
|
|
174
175
|
function track(target, key) {
|
|
175
|
-
|
|
176
|
+
if (!activeEffect && !activeComputed) return;
|
|
177
|
+
let depsMap = signalMap.get(target);
|
|
176
178
|
if (!depsMap) {
|
|
177
179
|
depsMap = /* @__PURE__ */ new Map();
|
|
178
|
-
|
|
180
|
+
signalMap.set(target, depsMap);
|
|
179
181
|
}
|
|
180
182
|
let dep = depsMap.get(key);
|
|
181
183
|
if (!dep) {
|
|
@@ -183,27 +185,35 @@ function track(target, key) {
|
|
|
183
185
|
depsMap.set(key, dep);
|
|
184
186
|
}
|
|
185
187
|
if (activeEffect) dep.add(activeEffect);
|
|
186
|
-
|
|
187
|
-
|
|
188
|
+
let depsMap2 = computedMap.get(target);
|
|
189
|
+
if (!depsMap2) {
|
|
190
|
+
depsMap2 = /* @__PURE__ */ new Map();
|
|
191
|
+
computedMap.set(target, depsMap2);
|
|
192
|
+
}
|
|
193
|
+
let dep2 = depsMap2.get(key);
|
|
194
|
+
if (!dep2) {
|
|
195
|
+
dep2 = /* @__PURE__ */ new Set();
|
|
196
|
+
depsMap2.set(key, dep2);
|
|
188
197
|
}
|
|
198
|
+
if (activeComputed) dep2.add(activeComputed);
|
|
189
199
|
}
|
|
190
200
|
function trigger(target, key) {
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
}
|
|
194
|
-
const depsMap = targetMap.get(target);
|
|
195
|
-
if (!depsMap) {
|
|
196
|
-
return;
|
|
197
|
-
}
|
|
201
|
+
const depsMap = signalMap.get(target);
|
|
202
|
+
if (!depsMap) return;
|
|
198
203
|
const dep = depsMap.get(key);
|
|
199
204
|
if (dep) {
|
|
200
|
-
dep.forEach((effect) =>
|
|
205
|
+
dep.forEach((effect) => effectDeps.has(effect) && effect());
|
|
206
|
+
}
|
|
207
|
+
const computedDeps = computedMap.get(target);
|
|
208
|
+
if (computedDeps) {
|
|
209
|
+
const computeds = computedDeps.get(key);
|
|
210
|
+
if (computeds) {
|
|
211
|
+
computeds.forEach((computed) => computed.run());
|
|
212
|
+
}
|
|
201
213
|
}
|
|
202
214
|
}
|
|
203
215
|
var Signal = class {
|
|
204
216
|
constructor(value) {
|
|
205
|
-
// @ts-ignore
|
|
206
|
-
this.__activeEffect = null;
|
|
207
217
|
this._value = value;
|
|
208
218
|
}
|
|
209
219
|
valueOf() {
|
|
@@ -224,12 +234,10 @@ var Signal = class {
|
|
|
224
234
|
this.__triggerObject();
|
|
225
235
|
return this._value;
|
|
226
236
|
}
|
|
227
|
-
// if the value is not a primitive or an HTML element, create a reactive proxy
|
|
228
237
|
__triggerObject() {
|
|
229
|
-
if (
|
|
230
|
-
this.
|
|
238
|
+
if (!isPrimitive(this._value) && !isHtmlElement(this._value)) {
|
|
239
|
+
useReactive(this._value);
|
|
231
240
|
}
|
|
232
|
-
this._reactive = isPrimitive(this._value) || isHtmlElement(this._value) ? this._value : useReactive(this._value);
|
|
233
241
|
}
|
|
234
242
|
set value(newValue) {
|
|
235
243
|
if (isSignal(newValue)) {
|
|
@@ -238,10 +246,8 @@ var Signal = class {
|
|
|
238
246
|
}
|
|
239
247
|
if (hasChanged(newValue, this._value)) {
|
|
240
248
|
this._value = newValue;
|
|
241
|
-
if (!isPrimitive(this._value) && !isHtmlElement(this._value)
|
|
242
|
-
activeEffect = this.__activeEffect;
|
|
249
|
+
if (!isPrimitive(this._value) && !isHtmlElement(this._value)) {
|
|
243
250
|
this.__triggerObject();
|
|
244
|
-
activeEffect = null;
|
|
245
251
|
}
|
|
246
252
|
trigger(this, "value");
|
|
247
253
|
}
|
|
@@ -302,10 +308,10 @@ function useEffect(fn) {
|
|
|
302
308
|
fn();
|
|
303
309
|
activeEffect = prev;
|
|
304
310
|
}
|
|
305
|
-
|
|
311
|
+
effectDeps.add(effectFn);
|
|
306
312
|
effectFn();
|
|
307
313
|
return () => {
|
|
308
|
-
|
|
314
|
+
effectDeps.delete(effectFn);
|
|
309
315
|
activeEffect = null;
|
|
310
316
|
};
|
|
311
317
|
}
|
|
@@ -344,9 +350,8 @@ function unReactive(obj) {
|
|
|
344
350
|
if (!isReactive(obj)) {
|
|
345
351
|
return obj;
|
|
346
352
|
}
|
|
347
|
-
return
|
|
353
|
+
return __spreadValues({}, obj);
|
|
348
354
|
}
|
|
349
|
-
var reactiveMap = /* @__PURE__ */ new WeakMap();
|
|
350
355
|
function useReactive(initialValue, exclude) {
|
|
351
356
|
if (!isObject(initialValue)) {
|
|
352
357
|
return initialValue;
|
|
@@ -984,18 +989,17 @@ function convertToHtmlTag(tag) {
|
|
|
984
989
|
// src/template/patch.ts
|
|
985
990
|
function patchChildren(parent, childrenMap, nextChildren, before) {
|
|
986
991
|
const result = /* @__PURE__ */ new Map();
|
|
987
|
-
const children = childrenMap.values();
|
|
988
|
-
const
|
|
992
|
+
const children = Array.from(childrenMap.values());
|
|
993
|
+
const childrenLength = children.length;
|
|
989
994
|
if (childrenMap.size > 0 && nextChildren.length === 0) {
|
|
990
|
-
if (
|
|
991
|
-
|
|
992
|
-
parentElement.innerHTML = "";
|
|
995
|
+
if (parent.childNodes.length === childrenLength + (before ? 1 : 0)) {
|
|
996
|
+
parent.innerHTML = "";
|
|
993
997
|
if (before) {
|
|
994
998
|
insertChild(parent, before);
|
|
995
999
|
}
|
|
996
1000
|
} else {
|
|
997
1001
|
const range = document.createRange();
|
|
998
|
-
const child = children
|
|
1002
|
+
const child = children[0];
|
|
999
1003
|
const start = isJsxElement(child) ? child.firstChild : child;
|
|
1000
1004
|
range.setStartBefore(start);
|
|
1001
1005
|
if (before) {
|
|
@@ -1005,7 +1009,7 @@ function patchChildren(parent, childrenMap, nextChildren, before) {
|
|
|
1005
1009
|
}
|
|
1006
1010
|
range.deleteContents();
|
|
1007
1011
|
}
|
|
1008
|
-
|
|
1012
|
+
children.forEach((node) => {
|
|
1009
1013
|
if (isJsxElement(node)) {
|
|
1010
1014
|
node.unmount();
|
|
1011
1015
|
}
|
|
@@ -1014,13 +1018,14 @@ function patchChildren(parent, childrenMap, nextChildren, before) {
|
|
|
1014
1018
|
}
|
|
1015
1019
|
const replaces = [];
|
|
1016
1020
|
const nextChildrenMap = mapKeys(nextChildren);
|
|
1021
|
+
let childIndex = 0;
|
|
1017
1022
|
for (let [i, child] of nextChildren.entries()) {
|
|
1018
|
-
let currChild = children
|
|
1023
|
+
let currChild = children[childIndex];
|
|
1019
1024
|
let currKey = getKey(currChild, i);
|
|
1020
1025
|
while (currChild && !nextChildrenMap.has(currKey)) {
|
|
1021
1026
|
removeChild(currChild);
|
|
1022
1027
|
childrenMap.delete(currKey);
|
|
1023
|
-
currChild = children
|
|
1028
|
+
currChild = children[++childIndex];
|
|
1024
1029
|
currKey = getKey(currChild, i);
|
|
1025
1030
|
}
|
|
1026
1031
|
const key = getKey(child, i);
|
|
@@ -1029,7 +1034,9 @@ function patchChildren(parent, childrenMap, nextChildren, before) {
|
|
|
1029
1034
|
child = patch(parent, origChild, child);
|
|
1030
1035
|
}
|
|
1031
1036
|
if (currChild) {
|
|
1032
|
-
if (currChild) {
|
|
1037
|
+
if (currChild === origChild) {
|
|
1038
|
+
childIndex++;
|
|
1039
|
+
} else if (currChild) {
|
|
1033
1040
|
const placeholder = document.createComment("");
|
|
1034
1041
|
insertChild(parent, placeholder, currChild);
|
|
1035
1042
|
replaces.push([placeholder, child]);
|
package/dist/essor.dev.esm.js
CHANGED
|
@@ -16,7 +16,7 @@ var __spreadValues = (a, b) => {
|
|
|
16
16
|
};
|
|
17
17
|
|
|
18
18
|
// src/version.ts
|
|
19
|
-
var __essor_version = "0.0.6
|
|
19
|
+
var __essor_version = "0.0.6";
|
|
20
20
|
|
|
21
21
|
// ../shared/dist/essor-shared.js
|
|
22
22
|
var isObject = (val) => val !== null && typeof val === "object";
|
|
@@ -165,15 +165,17 @@ var capitalizeFirstLetter = (inputString) => {
|
|
|
165
165
|
// src/signal/signal.ts
|
|
166
166
|
var activeEffect = null;
|
|
167
167
|
var activeComputed = null;
|
|
168
|
-
var
|
|
169
|
-
var
|
|
170
|
-
var
|
|
168
|
+
var computedMap = /* @__PURE__ */ new WeakMap();
|
|
169
|
+
var signalMap = /* @__PURE__ */ new WeakMap();
|
|
170
|
+
var effectDeps = /* @__PURE__ */ new Set();
|
|
171
|
+
var reactiveMap = /* @__PURE__ */ new WeakMap();
|
|
171
172
|
var arrayMethods = ["push", "pop", "shift", "unshift", "splice", "sort", "reverse"];
|
|
172
173
|
function track(target, key) {
|
|
173
|
-
|
|
174
|
+
if (!activeEffect && !activeComputed) return;
|
|
175
|
+
let depsMap = signalMap.get(target);
|
|
174
176
|
if (!depsMap) {
|
|
175
177
|
depsMap = /* @__PURE__ */ new Map();
|
|
176
|
-
|
|
178
|
+
signalMap.set(target, depsMap);
|
|
177
179
|
}
|
|
178
180
|
let dep = depsMap.get(key);
|
|
179
181
|
if (!dep) {
|
|
@@ -181,27 +183,35 @@ function track(target, key) {
|
|
|
181
183
|
depsMap.set(key, dep);
|
|
182
184
|
}
|
|
183
185
|
if (activeEffect) dep.add(activeEffect);
|
|
184
|
-
|
|
185
|
-
|
|
186
|
+
let depsMap2 = computedMap.get(target);
|
|
187
|
+
if (!depsMap2) {
|
|
188
|
+
depsMap2 = /* @__PURE__ */ new Map();
|
|
189
|
+
computedMap.set(target, depsMap2);
|
|
190
|
+
}
|
|
191
|
+
let dep2 = depsMap2.get(key);
|
|
192
|
+
if (!dep2) {
|
|
193
|
+
dep2 = /* @__PURE__ */ new Set();
|
|
194
|
+
depsMap2.set(key, dep2);
|
|
186
195
|
}
|
|
196
|
+
if (activeComputed) dep2.add(activeComputed);
|
|
187
197
|
}
|
|
188
198
|
function trigger(target, key) {
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
}
|
|
192
|
-
const depsMap = targetMap.get(target);
|
|
193
|
-
if (!depsMap) {
|
|
194
|
-
return;
|
|
195
|
-
}
|
|
199
|
+
const depsMap = signalMap.get(target);
|
|
200
|
+
if (!depsMap) return;
|
|
196
201
|
const dep = depsMap.get(key);
|
|
197
202
|
if (dep) {
|
|
198
|
-
dep.forEach((effect) =>
|
|
203
|
+
dep.forEach((effect) => effectDeps.has(effect) && effect());
|
|
204
|
+
}
|
|
205
|
+
const computedDeps = computedMap.get(target);
|
|
206
|
+
if (computedDeps) {
|
|
207
|
+
const computeds = computedDeps.get(key);
|
|
208
|
+
if (computeds) {
|
|
209
|
+
computeds.forEach((computed) => computed.run());
|
|
210
|
+
}
|
|
199
211
|
}
|
|
200
212
|
}
|
|
201
213
|
var Signal = class {
|
|
202
214
|
constructor(value) {
|
|
203
|
-
// @ts-ignore
|
|
204
|
-
this.__activeEffect = null;
|
|
205
215
|
this._value = value;
|
|
206
216
|
}
|
|
207
217
|
valueOf() {
|
|
@@ -222,12 +232,10 @@ var Signal = class {
|
|
|
222
232
|
this.__triggerObject();
|
|
223
233
|
return this._value;
|
|
224
234
|
}
|
|
225
|
-
// if the value is not a primitive or an HTML element, create a reactive proxy
|
|
226
235
|
__triggerObject() {
|
|
227
|
-
if (
|
|
228
|
-
this.
|
|
236
|
+
if (!isPrimitive(this._value) && !isHtmlElement(this._value)) {
|
|
237
|
+
useReactive(this._value);
|
|
229
238
|
}
|
|
230
|
-
this._reactive = isPrimitive(this._value) || isHtmlElement(this._value) ? this._value : useReactive(this._value);
|
|
231
239
|
}
|
|
232
240
|
set value(newValue) {
|
|
233
241
|
if (isSignal(newValue)) {
|
|
@@ -236,10 +244,8 @@ var Signal = class {
|
|
|
236
244
|
}
|
|
237
245
|
if (hasChanged(newValue, this._value)) {
|
|
238
246
|
this._value = newValue;
|
|
239
|
-
if (!isPrimitive(this._value) && !isHtmlElement(this._value)
|
|
240
|
-
activeEffect = this.__activeEffect;
|
|
247
|
+
if (!isPrimitive(this._value) && !isHtmlElement(this._value)) {
|
|
241
248
|
this.__triggerObject();
|
|
242
|
-
activeEffect = null;
|
|
243
249
|
}
|
|
244
250
|
trigger(this, "value");
|
|
245
251
|
}
|
|
@@ -300,10 +306,10 @@ function useEffect(fn) {
|
|
|
300
306
|
fn();
|
|
301
307
|
activeEffect = prev;
|
|
302
308
|
}
|
|
303
|
-
|
|
309
|
+
effectDeps.add(effectFn);
|
|
304
310
|
effectFn();
|
|
305
311
|
return () => {
|
|
306
|
-
|
|
312
|
+
effectDeps.delete(effectFn);
|
|
307
313
|
activeEffect = null;
|
|
308
314
|
};
|
|
309
315
|
}
|
|
@@ -342,9 +348,8 @@ function unReactive(obj) {
|
|
|
342
348
|
if (!isReactive(obj)) {
|
|
343
349
|
return obj;
|
|
344
350
|
}
|
|
345
|
-
return
|
|
351
|
+
return __spreadValues({}, obj);
|
|
346
352
|
}
|
|
347
|
-
var reactiveMap = /* @__PURE__ */ new WeakMap();
|
|
348
353
|
function useReactive(initialValue, exclude) {
|
|
349
354
|
if (!isObject(initialValue)) {
|
|
350
355
|
return initialValue;
|
|
@@ -982,18 +987,17 @@ function convertToHtmlTag(tag) {
|
|
|
982
987
|
// src/template/patch.ts
|
|
983
988
|
function patchChildren(parent, childrenMap, nextChildren, before) {
|
|
984
989
|
const result = /* @__PURE__ */ new Map();
|
|
985
|
-
const children = childrenMap.values();
|
|
986
|
-
const
|
|
990
|
+
const children = Array.from(childrenMap.values());
|
|
991
|
+
const childrenLength = children.length;
|
|
987
992
|
if (childrenMap.size > 0 && nextChildren.length === 0) {
|
|
988
|
-
if (
|
|
989
|
-
|
|
990
|
-
parentElement.innerHTML = "";
|
|
993
|
+
if (parent.childNodes.length === childrenLength + (before ? 1 : 0)) {
|
|
994
|
+
parent.innerHTML = "";
|
|
991
995
|
if (before) {
|
|
992
996
|
insertChild(parent, before);
|
|
993
997
|
}
|
|
994
998
|
} else {
|
|
995
999
|
const range = document.createRange();
|
|
996
|
-
const child = children
|
|
1000
|
+
const child = children[0];
|
|
997
1001
|
const start = isJsxElement(child) ? child.firstChild : child;
|
|
998
1002
|
range.setStartBefore(start);
|
|
999
1003
|
if (before) {
|
|
@@ -1003,7 +1007,7 @@ function patchChildren(parent, childrenMap, nextChildren, before) {
|
|
|
1003
1007
|
}
|
|
1004
1008
|
range.deleteContents();
|
|
1005
1009
|
}
|
|
1006
|
-
|
|
1010
|
+
children.forEach((node) => {
|
|
1007
1011
|
if (isJsxElement(node)) {
|
|
1008
1012
|
node.unmount();
|
|
1009
1013
|
}
|
|
@@ -1012,13 +1016,14 @@ function patchChildren(parent, childrenMap, nextChildren, before) {
|
|
|
1012
1016
|
}
|
|
1013
1017
|
const replaces = [];
|
|
1014
1018
|
const nextChildrenMap = mapKeys(nextChildren);
|
|
1019
|
+
let childIndex = 0;
|
|
1015
1020
|
for (let [i, child] of nextChildren.entries()) {
|
|
1016
|
-
let currChild = children
|
|
1021
|
+
let currChild = children[childIndex];
|
|
1017
1022
|
let currKey = getKey(currChild, i);
|
|
1018
1023
|
while (currChild && !nextChildrenMap.has(currKey)) {
|
|
1019
1024
|
removeChild(currChild);
|
|
1020
1025
|
childrenMap.delete(currKey);
|
|
1021
|
-
currChild = children
|
|
1026
|
+
currChild = children[++childIndex];
|
|
1022
1027
|
currKey = getKey(currChild, i);
|
|
1023
1028
|
}
|
|
1024
1029
|
const key = getKey(child, i);
|
|
@@ -1027,7 +1032,9 @@ function patchChildren(parent, childrenMap, nextChildren, before) {
|
|
|
1027
1032
|
child = patch(parent, origChild, child);
|
|
1028
1033
|
}
|
|
1029
1034
|
if (currChild) {
|
|
1030
|
-
if (currChild) {
|
|
1035
|
+
if (currChild === origChild) {
|
|
1036
|
+
childIndex++;
|
|
1037
|
+
} else if (currChild) {
|
|
1031
1038
|
const placeholder = document.createComment("");
|
|
1032
1039
|
insertChild(parent, placeholder, currChild);
|
|
1033
1040
|
replaces.push([placeholder, child]);
|
package/dist/essor.esm.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
var Oe=Object.defineProperty;var de=Object.getOwnPropertySymbols;var je=Object.prototype.hasOwnProperty,_e=Object.prototype.propertyIsEnumerable;var me=(e,t,n)=>t in e?Oe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,j=(e,t)=>{for(var n in t||(t={}))je.call(t,n)&&me(e,n,t[n]);if(de)for(var n of de(t))_e.call(t,n)&&me(e,n,t[n]);return e};var he="0.0.6-beta.16";var S=e=>e!==null&&typeof e=="object";var k=Array.isArray;function q(e){return typeof e=="string"}function Re(e){return e===null}function ge(e){return e==null}var d=e=>typeof e=="function";function U(e){return e===!1||e===null||e===void 0||e===""}var M=e=>["string","number","boolean","symbol","undefined"].includes(typeof e)||Re(e),Z=e=>e instanceof HTMLElement||e instanceof SVGElement;function Q(e){return Array.isArray(e)?e.flat():[e]}var J=(e,t)=>e!==t&&(e===e||t===t),ye=Function.prototype;function y(e,t){return q(e)?e.indexOf(t)===0:!1}function w(e,t=new WeakMap){if(e===null||typeof e!="object")return e;if(t.has(e))return t.get(e);if(e instanceof Date)return new Date(e);if(e instanceof RegExp)return new RegExp(e);if(e instanceof Map){let o=new Map;return t.set(e,o),e.forEach((s,i)=>{o.set(w(i,t),w(s,t));}),o}if(e instanceof Set){let o=new Set;return t.set(e,o),e.forEach(s=>{o.add(w(s,t));}),o}let n=Array.isArray(e)?[]:{};t.set(e,n);let r=Object.keys(e);for(let o of r)n[o]=w(e[o],t);return n}function _(e,t,n=new WeakMap){if(M(e)&&M(t))return e===t;if(e===t)return !0;if(e==null||t==null||typeof e!="object"||typeof t!="object"||e.constructor!==t.constructor)return !1;if(n.has(e))return n.get(e)===t;if(n.set(e,t),Array.isArray(e)){if(e.length!==t.length)return !1;for(let[s,i]of e.entries())if(!_(i,t[s],n))return !1;return !0}if(e instanceof Map){if(e.size!==t.size)return !1;for(let[s,i]of e)if(!t.has(s)||!_(i,t.get(s),n))return !1;return !0}if(e instanceof Set){if(e.size!==t.size)return !1;let s=Array.from(e).sort(),i=Array.from(t).sort();for(let[a,c]of s.entries())if(!_(c,i[a],n))return !1;return !0}let r=Object.keys(e),o=new Set(Object.keys(t));if(r.length!==o.size)return !1;for(let s of r)if(!o.has(s)||!_(e[s],t[s],n))return !1;return !0}function K(e,t){return Array.isArray(t)?t.includes(e):d(t)?t(e):!1}var Te=e=>e.replaceAll(/[A-Z]+/g,(t,n)=>`${n>0?"-":""}${t.toLocaleLowerCase()}`);var ve=e=>e.charAt(0).toUpperCase()+e.slice(1);var g=null,F=null,ee=new Set,te=new WeakMap,ne=new Set,Le=["push","pop","shift","unshift","splice","sort","reverse"];function R(e,t){let n=te.get(e);n||(n=new Map,te.set(e,n));let r=n.get(t);r||(r=new Set,n.set(t,r)),g&&r.add(g),F&&ee.add(F);}function I(e,t){ee.size>0&&ee.forEach(o=>o.run());let n=te.get(e);if(!n)return;let r=n.get(t);r&&r.forEach(o=>ne.has(o)&&o());}var G=class{constructor(t){this.__activeEffect=null;this._value=t;}valueOf(){return R(this,"value"),this.__triggerObject(),this._value}toString(){return R(this,"value"),this.__triggerObject(),String(this._value)}toJSON(){return this._value}get value(){return R(this,"value"),this.__triggerObject(),this._value}__triggerObject(){g&&(this.__activeEffect=g),this._reactive=M(this._value)||Z(this._value)?this._value:A(this._value);}set value(t){p(t)&&(console.warn("Signal cannot be set to another signal, use .peek() instead"),t=t.peek()),J(t,this._value)&&(this._value=t,!M(this._value)&&!Z(this._value)&&!g&&(g=this.__activeEffect,this.__triggerObject(),g=null),I(this,"value"));}peek(){return this._value}update(){I(this,"value");}};function L(e){return p(e)?e:new G(e)}function p(e){return e instanceof G}var z=class{constructor(t){this.fn=t;this._deps=new Set;let n=F;F=this,this._value=this.fn(),F=n;}peek(){return this._value}run(){let t=this.fn();J(t,this._value)&&(this._value=t,this._deps.forEach(n=>n()));}get value(){return g&&this._deps.add(g),R(this,"_value"),this._value}};function re(e){return new z(e)}function X(e){return e instanceof z}function N(e){function t(){let n=g;g=t,e(),g=n;}return ne.add(t),t(),()=>{ne.delete(t),g=null;}}function oe(e,t){return Object.entries(e).reduce((r,[o,s])=>(r[o]=K(o,t)||p(s)?s:L(s),r),{})}function be(e,t){return e?p(e)?e.peek():k(e)?e.map(n=>be(n,t)):S(e)?Object.entries(e).reduce((n,[r,o])=>(K(r,t)?n[r]=o:n[r]=p(o)?o.peek():o,n),{}):e:{}}var xe=Symbol("useReactive");function W(e){return e&&e[xe]===!0}function We(e){return W(e)?Object.assign({},e):e}var Y=new WeakMap;function A(e,t){if(!S(e)||W(e))return e;if(Y.has(e))return Y.get(e);Array.isArray(e)&&Le.forEach(o=>{let s=e[o];R(e,"length"),Object.defineProperties(e,{[o]:{value(...i){let a=s.apply(this,i);return I(e,"length"),a},enumerable:!1,configurable:!0,writable:!0}});});let n={get(o,s,i){if(s===xe||y(s,"_"))return !0;let a=Reflect.get(o,s,i),c=p(a)?a.value:a;return K(s,t)?c:(R(o,s),S(c)?A(c):c)},set(o,s,i,a){if(K(s,t))return Reflect.set(o,s,i,a),!0;let c=Reflect.get(o,s,a);p(c)&&(c=c.value),p(i)&&(i=i.value);let u=Reflect.set(o,s,i,a);return J(i,c)&&I(o,s),u},deleteProperty(o,s){let i=Reflect.get(o,s),a=Reflect.deleteProperty(o,s);return i!==void 0&&I(o,s),a}},r=new Proxy(e,n);return Y.set(e,r),r}function se(e,...t){console.warn.apply(console,[`[Essor warn]: ${e}`].concat(t));}function Pe(e,t,n){return He(e,t,n)}function He(e,t,n){let r,o=n==null?void 0:n.deep;if(p(e)||X(e)?r=()=>e.value:W(e)?r=()=>j({},e):k(e)?r=()=>e.map(c=>p(c)||X(c)?c.value:W(c)?j({},c):d(c)?c():se("Invalid source",c)):d(e)?r=e:(se("Invalid source type",e),r=ye),t&&o){let c=r;r=()=>P(c());}let s,i=()=>{let c=w(r());_(c,s)||(t&&t(c,s),s=M(c)?c:w(c));},a=N(i);return n!=null&&n.immediate&&i(),a}function P(e,t=new Set){return !S(e)||t.has(e)||(t.add(e),k(e)?e.forEach(n=>P(n,t)):e instanceof Map?e.forEach((n,r)=>{P(r,t),P(n,t);}):e instanceof Set?e.forEach(n=>P(n,t)):Object.keys(e).forEach(n=>{P(e[n],t);})),e}var B=0,ie=new Map;function $e(e){let{state:t,getters:n,actions:r}=e,o=j({},t!=null?t:{}),s=A(t!=null?t:{}),i=[],a=[],u=j({state:s},{patch$(l){Object.assign(s,l),i.forEach(f=>f(s)),a.forEach(f=>f(s));},subscribe$(l){i.push(l);},unsubscribe$(l){let f=i.indexOf(l);f!==-1&&i.splice(f,1);},onAction$(l){a.push(l);},reset$(){Object.assign(s,o);}});for(let l in n){let f=n[l];f&&(u[l]=re(f.bind(s,s)));}for(let l in r){let f=r[l];f&&(u[l]=f.bind(s));}return ie.set(B,u),++B,u}function Ke(e){return function(){return ie.has(B)?ie.get(B):$e(e)}}var E=class E{constructor(t,n,r){this.template=t;this.props=n;this.key=r;this.proxyProps={};this.context={};this.emitter=new Set;this.mounted=!1;this.rootNode=null;this.hooks={mounted:new Set,destroy:new Set};this.trackMap=new Map;this.proxyProps=oe(n,o=>y(o,"on")||y(o,"update"));}addEventListener(){}removeEventListener(){}get firstChild(){var t,n;return (n=(t=this.rootNode)==null?void 0:t.firstChild)!=null?n:null}get isConnected(){var t,n;return (n=(t=this.rootNode)==null?void 0:t.isConnected)!=null?n:!1}addHook(t,n){var r;(r=this.hooks[t])==null||r.add(n);}getContext(t){return E.context[t]}setContext(t,n){E.context[t]=n;}inheritNode(t){this.context=t.context,this.hooks=t.hooks,Object.assign(this.proxyProps,t.proxyProps),this.rootNode=t.rootNode,this.trackMap=t.trackMap;let n=this.props;this.props=t.props,this.patchProps(n);}unmount(){var t;this.hooks.destroy.forEach(n=>n()),Object.values(this.hooks).forEach(n=>n.clear()),(t=this.rootNode)==null||t.unmount(),this.rootNode=null,this.proxyProps={},this.mounted=!1,this.emitter.forEach(n=>n()),E.context={};}mount(t,n){var o,s,i,a;if(!d(this.template))throw new Error("Template must be a function");if(this.isConnected)return (s=(o=this.rootNode)==null?void 0:o.mount(t,n))!=null?s:[];E.ref=this,this.rootNode=this.template(A(this.proxyProps,["children"])),E.ref=null,this.mounted=!0;let r=(a=(i=this.rootNode)==null?void 0:i.mount(t,n))!=null?a:[];return this.hooks.mounted.forEach(c=>c()),this.patchProps(this.props),r}getNodeTrack(t,n){let r=this.trackMap.get(t);return r||(r={cleanup:()=>{}},this.trackMap.set(t,r)),n||r.cleanup(),r}patchProps(t){var n,r,o,s,i;for(let[a,c]of Object.entries(t))if(y(a,"on")&&((n=this.rootNode)!=null&&n.nodes)){let u=a.slice(2).toLowerCase(),l=c,f=v(this.rootNode.nodes[0],u,l);this.emitter.add(f);}else if(a==="ref")p(c)?t[a].value=(r=this.rootNode)==null?void 0:r.nodes[0]:d(c)&&t[a]((o=this.rootNode)==null?void 0:o.nodes[0]);else if(y(a,"update"))t[a]=p(c)?c.value:c;else {let u=(i=(s=this.proxyProps)[a])!=null?i:s[a]=L(c),l=this.getNodeTrack(a);l.cleanup=N(()=>{u.value=d(c)?c():c;});}this.props=t;}};E.ref=null,E.context={};var T=E;function Fe(e,t,n){return q(e)&&(Ee(e)&&(e=Se(e),t={1:t}),e=Ne(e)),d(e)?new T(e,t,n):new H(e,t,n)}function b(e){return e instanceof T||e instanceof H}function Ne(e){let t=document.createElement("template");return t.innerHTML=e,t}function Ie(e){return e.children}function ae(e){if(b(e)||e instanceof Node)return e;let t=U(e)?"":String(e);return document.createTextNode(t)}function x(e,t,n=null){let r=b(n)?n.firstChild:n;b(t)?t.mount(e,r):r?r.before(t):e.append(t);}function O(e){b(e)?e.unmount():e.parentNode&&e.remove();}function ce(e,t,n){x(e,t,n),O(n);}function ue(e,t,n){if(t==="class"){typeof n=="string"?e.className=n:Array.isArray(n)?e.className=n.join(" "):n&&typeof n=="object"&&(e.className=Object.entries(n).reduce((r,[o,s])=>r+(s?` ${o}`:""),"").trim());return}if(t==="style"){if(typeof n=="string")e.style.cssText=n;else if(n&&typeof n=="object"){let r=n;Object.keys(r).forEach(o=>{e.style.setProperty(Te(o),String(r[o]));});}return}U(n)?e.removeAttribute(t):n===!0?e.setAttribute(t,""):e.setAttribute(t,String(n));}function Ce(e,t){if(e instanceof HTMLInputElement){if(e.type==="checkbox")return v(e,"change",()=>{t(!!e.checked);});if(e.type==="date")return v(e,"change",()=>{t(e.value?e.value:"");});if(e.type==="file")return v(e,"change",()=>{e.files&&t(e.files);});if(e.type==="number")return v(e,"input",()=>{let n=Number.parseFloat(e.value);t(Number.isNaN(n)?"":String(n));});if(e.type==="radio")return v(e,"change",()=>{t(e.checked?e.value:"");});if(e.type==="text")return v(e,"input",()=>{t(e.value);})}if(e instanceof HTMLSelectElement)return v(e,"change",()=>{t(e.value);});if(e instanceof HTMLTextAreaElement)return v(e,"input",()=>{t(e.value);})}var ke=Promise.resolve();function Je(e){return e?ke.then(e):ke}function v(e,t,n){return e.addEventListener(t,n),()=>e.removeEventListener(t,n)}var Ge=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"],ze=["a","abbr","acronym","address","applet","area","article","aside","audio","b","base","basefont","bdi","bdo","bgsound","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","command","content","data","datalist","dd","del","details","dfn","dialog","dir","div","dl","dt","em","embed","fieldset","figcaption","figure","font","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","image","img","input","ins","kbd","keygen","label","legend","li","link","listing","main","map","mark","marquee","menu","menuitem","meta","meter","nav","nobr","noframes","noscript","object","ol","optgroup","option","output","p","param","picture","plaintext","pre","progress","q","rb","rp","rt","rtc","ruby","s","samp","script","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","tt","u","ul","var","video","wbr","xmp"];function Ee(e){return ze.includes(e)}function Se(e){return Ge.includes(e)?`<${e}/>`:`<${e}></${e}>`}function we(e,t,n,r){let o=new Map,s=t.values(),i=e.childNodes.length;if(t.size>0&&n.length===0){if(i===t.size+(r?1:0)){let u=e;u.innerHTML="",r&&x(e,r);}else {let u=document.createRange(),l=s.next().value,f=b(l)?l.firstChild:l;u.setStartBefore(f),r?u.setEndBefore(r):u.setEndAfter(e),u.deleteContents();}return t.forEach(u=>{b(u)&&u.unmount();}),o}let a=[],c=Be(n);for(let[u,l]of n.entries()){let f=s.next().value,C=D(f,u);for(;f&&!c.has(C);)O(f),t.delete(C),f=s.next().value,C=D(f,u);let $=D(l,u),fe=t.get($);if(fe&&(l=Xe(e,fe,l)),f)if(f){let pe=document.createComment("");x(e,pe,f),a.push([pe,l]);}else x(e,l,r);else x(e,l,r);o.set($,l);}return a.forEach(([u,l])=>ce(e,l,u)),t.forEach((u,l)=>{u.isConnected&&!o.has(l)&&O(u);}),o}function Xe(e,t,n){return t===n?t:b(t)&&b(n)&&t.template===n.template?(n.inheritNode(t),n):t instanceof Text&&n instanceof Text?(t.textContent!==n.textContent&&(t.textContent=n.textContent),t):(ce(e,n,t),n)}function Be(e){let t=new Map;for(let[n,r]of e.entries()){let o=D(r,n);t.set(o,r);}return t}function D(e,t){let n=e instanceof Element?e.id:void 0,r=n===""?void 0:n;return r!=null?r:`_$${t}$`}var H=class e{constructor(t,n,r){this.template=t;this.props=n;this.key=r;this.treeMap=new Map;this.mounted=!1;this.nodes=[];this.provides={};this.trackMap=new Map;this.parent=null;}get firstChild(){var t;return (t=this.nodes[0])!=null?t:null}get isConnected(){return this.mounted}addEventListener(){}removeEventListener(){}unmount(){this.trackMap.forEach(t=>{var n,r;(n=t.cleanup)==null||n.call(t),(r=t.lastNodes)==null||r.forEach(o=>{t.isRoot?O(o):o instanceof e&&o.unmount();});}),this.trackMap.clear(),this.treeMap.clear(),this.nodes.forEach(t=>O(t)),this.nodes=[],this.mounted=!1;}mount(t,n){var s;if(this.parent=t,this.isConnected)return this.nodes.forEach(i=>x(t,i,n)),this.nodes;let r=this.template.content.cloneNode(!0),o=r.firstChild;return (s=o==null?void 0:o.hasAttribute)!=null&&s.call(o,"_svg_")&&(o.remove(),o==null||o.childNodes.forEach(i=>{r.append(i);})),this.nodes=Array.from(r.childNodes),this.mapNodeTree(t,r),x(t,r,n),this.patchNodes(this.props),this.mounted=!0,this.nodes}mapNodeTree(t,n){let r=1;this.treeMap.set(0,t);let o=s=>{s.nodeType!==Node.DOCUMENT_FRAGMENT_NODE&&this.treeMap.set(r++,s);let i=s.firstChild;for(;i;)o(i),i=i.nextSibling;};o(n);}patchNodes(t){for(let n in t){let r=Number(n),o=this.treeMap.get(r);if(o){let s=this.props[n];this.patchNode(n,o,s,r===0);}}this.props=t;}getNodeTrack(t,n,r){var s;let o=this.trackMap.get(t);return o||(o={cleanup:()=>{}},n&&(o.lastNodes=new Map),r&&(o.isRoot=!0),this.trackMap.set(t,o)),(s=o.cleanup)==null||s.call(o),o}inheritNode(t){this.mounted=t.mounted,this.nodes=t.nodes,this.trackMap=t.trackMap,this.treeMap=t.treeMap;let n=this.props;this.props=t.props,this.patchNodes(n);}patchNode(t,n,r,o){for(let s in r)if(s==="children"&&r.children)if(k(r.children))r.children.filter(Boolean).forEach((i,a)=>{var $;let[c,u]=k(i)?i:[i,null],l=ge(u)?null:($=this.treeMap.get(u))!=null?$:null,f=`${t}:${s}:${a}`,C=this.getNodeTrack(f,!0,o);Ae(C,n,c,l);});else {let i=`${t}:${s}:0`,a=this.getNodeTrack(i,!0,o);Ae(a,n,r.children,null);}else if(s==="ref")p(r[s])?r[s].value=n:d(r[s])&&r[s](n);else if(y(s,"on")){let i=s.slice(2).toLocaleLowerCase(),a=this.getNodeTrack(`${t}:${s}`),c=r[s];a.cleanup=v(n,i,c);}else if(!y(s,"update")){let i=this.getNodeTrack(`${t}:${s}`),a=r[s],c=p(a)?a:L(a);Me(i,n,s,c.value);let u=N(()=>{c.value=p(a)?a.value:a,Me(i,n,s,c.value);}),l,f=`update${ve(s)}`;r[f]&&(l=Ce(n,C=>{r[f](C);})),i.cleanup=()=>{u&&u(),l&&l();};}}};function Me(e,t,n,r){let o=t;o.setAttribute&&(d(r)?e.cleanup=N(()=>{ue(o,n,r());}):ue(o,n,r));}function Ae(e,t,n,r){d(n)?e.cleanup=N(()=>{let o=Q(n()).map(ae);e.lastNodes=we(t,e.lastNodes,o,r);}):Q(n).forEach((o,s)=>{let i=ae(o);e.lastNodes.set(String(s),i),x(t,i,r);});}function De(e){var t;V("onMounted"),(t=T.ref)==null||t.addHook("mounted",e);}function Ve(e){var t;V("onDestroy"),(t=T.ref)==null||t.addHook("destroy",e);}function V(e){T.ref||console.error(`"${e}" can only be called within the component function body
|
|
2
|
-
and cannot be used in asynchronous or deferred calls.`);}function
|
|
1
|
+
var je=Object.defineProperty;var me=Object.getOwnPropertySymbols;var Re=Object.prototype.hasOwnProperty,_e=Object.prototype.propertyIsEnumerable;var he=(e,t,n)=>t in e?je(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,k=(e,t)=>{for(var n in t||(t={}))Re.call(t,n)&&he(e,n,t[n]);if(me)for(var n of me(t))_e.call(t,n)&&he(e,n,t[n]);return e};var ge="0.0.6";var C=e=>e!==null&&typeof e=="object";var M=Array.isArray;function U(e){return typeof e=="string"}function Le(e){return e===null}function ye(e){return e==null}var d=e=>typeof e=="function";function Z(e){return e===!1||e===null||e===void 0||e===""}var A=e=>["string","number","boolean","symbol","undefined"].includes(typeof e)||Le(e),Q=e=>e instanceof HTMLElement||e instanceof SVGElement;function Y(e){return Array.isArray(e)?e.flat():[e]}var J=(e,t)=>e!==t&&(e===e||t===t),Te=Function.prototype;function y(e,t){return U(e)?e.indexOf(t)===0:!1}function w(e,t=new WeakMap){if(e===null||typeof e!="object")return e;if(t.has(e))return t.get(e);if(e instanceof Date)return new Date(e);if(e instanceof RegExp)return new RegExp(e);if(e instanceof Map){let s=new Map;return t.set(e,s),e.forEach((o,i)=>{s.set(w(i,t),w(o,t));}),s}if(e instanceof Set){let s=new Set;return t.set(e,s),e.forEach(o=>{s.add(w(o,t));}),s}let n=Array.isArray(e)?[]:{};t.set(e,n);let r=Object.keys(e);for(let s of r)n[s]=w(e[s],t);return n}function _(e,t,n=new WeakMap){if(A(e)&&A(t))return e===t;if(e===t)return !0;if(e==null||t==null||typeof e!="object"||typeof t!="object"||e.constructor!==t.constructor)return !1;if(n.has(e))return n.get(e)===t;if(n.set(e,t),Array.isArray(e)){if(e.length!==t.length)return !1;for(let[o,i]of e.entries())if(!_(i,t[o],n))return !1;return !0}if(e instanceof Map){if(e.size!==t.size)return !1;for(let[o,i]of e)if(!t.has(o)||!_(i,t.get(o),n))return !1;return !0}if(e instanceof Set){if(e.size!==t.size)return !1;let o=Array.from(e).sort(),i=Array.from(t).sort();for(let[a,c]of o.entries())if(!_(c,i[a],n))return !1;return !0}let r=Object.keys(e),s=new Set(Object.keys(t));if(r.length!==s.size)return !1;for(let o of r)if(!s.has(o)||!_(e[o],t[o],n))return !1;return !0}function I(e,t){return Array.isArray(t)?t.includes(e):d(t)?t(e):!1}var be=e=>e.replaceAll(/[A-Z]+/g,(t,n)=>`${n>0?"-":""}${t.toLocaleLowerCase()}`);var ve=e=>e.charAt(0).toUpperCase()+e.slice(1);var N=null,L=null,te=new WeakMap,ne=new WeakMap,re=new Set,ee=new WeakMap,We=["push","pop","shift","unshift","splice","sort","reverse"];function W(e,t){if(!N&&!L)return;let n=ne.get(e);n||(n=new Map,ne.set(e,n));let r=n.get(t);r||(r=new Set,n.set(t,r)),N&&r.add(N);let s=te.get(e);s||(s=new Map,te.set(e,s));let o=s.get(t);o||(o=new Set,s.set(t,o)),L&&o.add(L);}function F(e,t){let n=ne.get(e);if(!n)return;let r=n.get(t);r&&r.forEach(o=>re.has(o)&&o());let s=te.get(e);if(s){let o=s.get(t);o&&o.forEach(i=>i.run());}}var G=class{constructor(t){this._value=t;}valueOf(){return W(this,"value"),this.__triggerObject(),this._value}toString(){return W(this,"value"),this.__triggerObject(),String(this._value)}toJSON(){return this._value}get value(){return W(this,"value"),this.__triggerObject(),this._value}__triggerObject(){!A(this._value)&&!Q(this._value)&&O(this._value);}set value(t){p(t)&&(console.warn("Signal cannot be set to another signal, use .peek() instead"),t=t.peek()),J(t,this._value)&&(this._value=t,!A(this._value)&&!Q(this._value)&&this.__triggerObject(),F(this,"value"));}peek(){return this._value}update(){F(this,"value");}};function P(e){return p(e)?e:new G(e)}function p(e){return e instanceof G}var X=class{constructor(t){this.fn=t;this._deps=new Set;let n=L;L=this,this._value=this.fn(),L=n;}peek(){return this._value}run(){let t=this.fn();J(t,this._value)&&(this._value=t,this._deps.forEach(n=>n()));}get value(){return N&&this._deps.add(N),W(this,"_value"),this._value}};function oe(e){return new X(e)}function z(e){return e instanceof X}function S(e){function t(){let n=N;N=t,e(),N=n;}return re.add(t),t(),()=>{re.delete(t),N=null;}}function se(e,t){return Object.entries(e).reduce((r,[s,o])=>(r[s]=I(s,t)||p(o)?o:P(o),r),{})}function xe(e,t){return e?p(e)?e.peek():M(e)?e.map(n=>xe(n,t)):C(e)?Object.entries(e).reduce((n,[r,s])=>(I(r,t)?n[r]=s:n[r]=p(s)?s.peek():s,n),{}):e:{}}var Ne=Symbol("useReactive");function H(e){return e&&e[Ne]===!0}function Pe(e){return H(e)?k({},e):e}function O(e,t){if(!C(e)||H(e))return e;if(ee.has(e))return ee.get(e);Array.isArray(e)&&We.forEach(s=>{let o=e[s];W(e,"length"),Object.defineProperties(e,{[s]:{value(...i){let a=o.apply(this,i);return F(e,"length"),a},enumerable:!1,configurable:!0,writable:!0}});});let n={get(s,o,i){if(o===Ne||y(o,"_"))return !0;let a=Reflect.get(s,o,i),c=p(a)?a.value:a;return I(o,t)?c:(W(s,o),C(c)?O(c):c)},set(s,o,i,a){if(I(o,t))return Reflect.set(s,o,i,a),!0;let c=Reflect.get(s,o,a);p(c)&&(c=c.value),p(i)&&(i=i.value);let f=Reflect.set(s,o,i,a);return J(i,c)&&F(s,o),f},deleteProperty(s,o){let i=Reflect.get(s,o),a=Reflect.deleteProperty(s,o);return i!==void 0&&F(s,o),a}},r=new Proxy(e,n);return ee.set(e,r),r}function ie(e,...t){console.warn.apply(console,[`[Essor warn]: ${e}`].concat(t));}function He(e,t,n){return $e(e,t,n)}function $e(e,t,n){let r,s=n==null?void 0:n.deep;if(p(e)||z(e)?r=()=>e.value:H(e)?r=()=>k({},e):M(e)?r=()=>e.map(c=>p(c)||z(c)?c.value:H(c)?k({},c):d(c)?c():ie("Invalid source",c)):d(e)?r=e:(ie("Invalid source type",e),r=Te),t&&s){let c=r;r=()=>$(c());}let o,i=()=>{let c=w(r());_(c,o)||(t&&t(c,o),o=A(c)?c:w(c));},a=S(i);return n!=null&&n.immediate&&i(),a}function $(e,t=new Set){return !C(e)||t.has(e)||(t.add(e),M(e)?e.forEach(n=>$(n,t)):e instanceof Map?e.forEach((n,r)=>{$(r,t),$(n,t);}):e instanceof Set?e.forEach(n=>$(n,t)):Object.keys(e).forEach(n=>{$(e[n],t);})),e}var B=0,ae=new Map;function Ke(e){let{state:t,getters:n,actions:r}=e,s=k({},t!=null?t:{}),o=O(t!=null?t:{}),i=[],a=[],f=k({state:o},{patch$(u){Object.assign(o,u),i.forEach(l=>l(o)),a.forEach(l=>l(o));},subscribe$(u){i.push(u);},unsubscribe$(u){let l=i.indexOf(u);l!==-1&&i.splice(l,1);},onAction$(u){a.push(u);},reset$(){Object.assign(o,s);}});for(let u in n){let l=n[u];l&&(f[u]=oe(l.bind(o,o)));}for(let u in r){let l=r[u];l&&(f[u]=l.bind(o));}return ae.set(B,f),++B,f}function Ie(e){return function(){return ae.has(B)?ae.get(B):Ke(e)}}var E=class E{constructor(t,n,r){this.template=t;this.props=n;this.key=r;this.proxyProps={};this.context={};this.emitter=new Set;this.mounted=!1;this.rootNode=null;this.hooks={mounted:new Set,destroy:new Set};this.trackMap=new Map;this.proxyProps=se(n,s=>y(s,"on")||y(s,"update"));}addEventListener(){}removeEventListener(){}get firstChild(){var t,n;return (n=(t=this.rootNode)==null?void 0:t.firstChild)!=null?n:null}get isConnected(){var t,n;return (n=(t=this.rootNode)==null?void 0:t.isConnected)!=null?n:!1}addHook(t,n){var r;(r=this.hooks[t])==null||r.add(n);}getContext(t){return E.context[t]}setContext(t,n){E.context[t]=n;}inheritNode(t){this.context=t.context,this.hooks=t.hooks,Object.assign(this.proxyProps,t.proxyProps),this.rootNode=t.rootNode,this.trackMap=t.trackMap;let n=this.props;this.props=t.props,this.patchProps(n);}unmount(){var t;this.hooks.destroy.forEach(n=>n()),Object.values(this.hooks).forEach(n=>n.clear()),(t=this.rootNode)==null||t.unmount(),this.rootNode=null,this.proxyProps={},this.mounted=!1,this.emitter.forEach(n=>n()),E.context={};}mount(t,n){var s,o,i,a;if(!d(this.template))throw new Error("Template must be a function");if(this.isConnected)return (o=(s=this.rootNode)==null?void 0:s.mount(t,n))!=null?o:[];E.ref=this,this.rootNode=this.template(O(this.proxyProps,["children"])),E.ref=null,this.mounted=!0;let r=(a=(i=this.rootNode)==null?void 0:i.mount(t,n))!=null?a:[];return this.hooks.mounted.forEach(c=>c()),this.patchProps(this.props),r}getNodeTrack(t,n){let r=this.trackMap.get(t);return r||(r={cleanup:()=>{}},this.trackMap.set(t,r)),n||r.cleanup(),r}patchProps(t){var n,r,s,o,i;for(let[a,c]of Object.entries(t))if(y(a,"on")&&((n=this.rootNode)!=null&&n.nodes)){let f=a.slice(2).toLowerCase(),u=c,l=b(this.rootNode.nodes[0],f,u);this.emitter.add(l);}else if(a==="ref")p(c)?t[a].value=(r=this.rootNode)==null?void 0:r.nodes[0]:d(c)&&t[a]((s=this.rootNode)==null?void 0:s.nodes[0]);else if(y(a,"update"))t[a]=p(c)?c.value:c;else {let f=(i=(o=this.proxyProps)[a])!=null?i:o[a]=P(c),u=this.getNodeTrack(a);u.cleanup=S(()=>{f.value=d(c)?c():c;});}this.props=t;}};E.ref=null,E.context={};var T=E;function Fe(e,t,n){return U(e)&&(Ee(e)&&(e=ke(e),t={1:t}),e=Se(e)),d(e)?new T(e,t,n):new K(e,t,n)}function v(e){return e instanceof T||e instanceof K}function Se(e){let t=document.createElement("template");return t.innerHTML=e,t}function Je(e){return e.children}function ce(e){if(v(e)||e instanceof Node)return e;let t=Z(e)?"":String(e);return document.createTextNode(t)}function x(e,t,n=null){let r=v(n)?n.firstChild:n;v(t)?t.mount(e,r):r?r.before(t):e.append(t);}function j(e){v(e)?e.unmount():e.parentNode&&e.remove();}function ue(e,t,n){x(e,t,n),j(n);}function le(e,t,n){if(t==="class"){typeof n=="string"?e.className=n:Array.isArray(n)?e.className=n.join(" "):n&&typeof n=="object"&&(e.className=Object.entries(n).reduce((r,[s,o])=>r+(o?` ${s}`:""),"").trim());return}if(t==="style"){if(typeof n=="string")e.style.cssText=n;else if(n&&typeof n=="object"){let r=n;Object.keys(r).forEach(s=>{e.style.setProperty(be(s),String(r[s]));});}return}Z(n)?e.removeAttribute(t):n===!0?e.setAttribute(t,""):e.setAttribute(t,String(n));}function Me(e,t){if(e instanceof HTMLInputElement){if(e.type==="checkbox")return b(e,"change",()=>{t(!!e.checked);});if(e.type==="date")return b(e,"change",()=>{t(e.value?e.value:"");});if(e.type==="file")return b(e,"change",()=>{e.files&&t(e.files);});if(e.type==="number")return b(e,"input",()=>{let n=Number.parseFloat(e.value);t(Number.isNaN(n)?"":String(n));});if(e.type==="radio")return b(e,"change",()=>{t(e.checked?e.value:"");});if(e.type==="text")return b(e,"input",()=>{t(e.value);})}if(e instanceof HTMLSelectElement)return b(e,"change",()=>{t(e.value);});if(e instanceof HTMLTextAreaElement)return b(e,"input",()=>{t(e.value);})}var Ce=Promise.resolve();function Ge(e){return e?Ce.then(e):Ce}function b(e,t,n){return e.addEventListener(t,n),()=>e.removeEventListener(t,n)}var Xe=["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"],ze=["a","abbr","acronym","address","applet","area","article","aside","audio","b","base","basefont","bdi","bdo","bgsound","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","command","content","data","datalist","dd","del","details","dfn","dialog","dir","div","dl","dt","em","embed","fieldset","figcaption","figure","font","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","image","img","input","ins","kbd","keygen","label","legend","li","link","listing","main","map","mark","marquee","menu","menuitem","meta","meter","nav","nobr","noframes","noscript","object","ol","optgroup","option","output","p","param","picture","plaintext","pre","progress","q","rb","rp","rt","rtc","ruby","s","samp","script","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","tt","u","ul","var","video","wbr","xmp"];function Ee(e){return ze.includes(e)}function ke(e){return Xe.includes(e)?`<${e}/>`:`<${e}></${e}>`}function we(e,t,n,r){let s=new Map,o=Array.from(t.values()),i=o.length;if(t.size>0&&n.length===0){if(e.childNodes.length===i+(r?1:0))e.innerHTML="",r&&x(e,r);else {let u=document.createRange(),l=o[0],m=v(l)?l.firstChild:l;u.setStartBefore(m),r?u.setEndBefore(r):u.setEndAfter(e),u.deleteContents();}return o.forEach(u=>{v(u)&&u.unmount();}),s}let a=[],c=De(n),f=0;for(let[u,l]of n.entries()){let m=o[f],R=D(m,u);for(;m&&!c.has(R);)j(m),t.delete(R),m=o[++f],R=D(m,u);let pe=D(l,u),q=t.get(pe);if(q&&(l=Be(e,q,l)),m)if(m===q)f++;else if(m){let de=document.createComment("");x(e,de,m),a.push([de,l]);}else x(e,l,r);else x(e,l,r);s.set(pe,l);}return a.forEach(([u,l])=>ue(e,l,u)),t.forEach((u,l)=>{u.isConnected&&!s.has(l)&&j(u);}),s}function Be(e,t,n){return t===n?t:v(t)&&v(n)&&t.template===n.template?(n.inheritNode(t),n):t instanceof Text&&n instanceof Text?(t.textContent!==n.textContent&&(t.textContent=n.textContent),t):(ue(e,n,t),n)}function De(e){let t=new Map;for(let[n,r]of e.entries()){let s=D(r,n);t.set(s,r);}return t}function D(e,t){let n=e instanceof Element?e.id:void 0,r=n===""?void 0:n;return r!=null?r:`_$${t}$`}var K=class e{constructor(t,n,r){this.template=t;this.props=n;this.key=r;this.treeMap=new Map;this.mounted=!1;this.nodes=[];this.provides={};this.trackMap=new Map;this.parent=null;}get firstChild(){var t;return (t=this.nodes[0])!=null?t:null}get isConnected(){return this.mounted}addEventListener(){}removeEventListener(){}unmount(){this.trackMap.forEach(t=>{var n,r;(n=t.cleanup)==null||n.call(t),(r=t.lastNodes)==null||r.forEach(s=>{t.isRoot?j(s):s instanceof e&&s.unmount();});}),this.trackMap.clear(),this.treeMap.clear(),this.nodes.forEach(t=>j(t)),this.nodes=[],this.mounted=!1;}mount(t,n){var o;if(this.parent=t,this.isConnected)return this.nodes.forEach(i=>x(t,i,n)),this.nodes;let r=this.template.content.cloneNode(!0),s=r.firstChild;return (o=s==null?void 0:s.hasAttribute)!=null&&o.call(s,"_svg_")&&(s.remove(),s==null||s.childNodes.forEach(i=>{r.append(i);})),this.nodes=Array.from(r.childNodes),this.mapNodeTree(t,r),x(t,r,n),this.patchNodes(this.props),this.mounted=!0,this.nodes}mapNodeTree(t,n){let r=1;this.treeMap.set(0,t);let s=o=>{o.nodeType!==Node.DOCUMENT_FRAGMENT_NODE&&this.treeMap.set(r++,o);let i=o.firstChild;for(;i;)s(i),i=i.nextSibling;};s(n);}patchNodes(t){for(let n in t){let r=Number(n),s=this.treeMap.get(r);if(s){let o=this.props[n];this.patchNode(n,s,o,r===0);}}this.props=t;}getNodeTrack(t,n,r){var o;let s=this.trackMap.get(t);return s||(s={cleanup:()=>{}},n&&(s.lastNodes=new Map),r&&(s.isRoot=!0),this.trackMap.set(t,s)),(o=s.cleanup)==null||o.call(s),s}inheritNode(t){this.mounted=t.mounted,this.nodes=t.nodes,this.trackMap=t.trackMap,this.treeMap=t.treeMap;let n=this.props;this.props=t.props,this.patchNodes(n);}patchNode(t,n,r,s){for(let o in r)if(o==="children"&&r.children)if(M(r.children))r.children.filter(Boolean).forEach((i,a)=>{var R;let[c,f]=M(i)?i:[i,null],u=ye(f)?null:(R=this.treeMap.get(f))!=null?R:null,l=`${t}:${o}:${a}`,m=this.getNodeTrack(l,!0,s);Oe(m,n,c,u);});else {let i=`${t}:${o}:0`,a=this.getNodeTrack(i,!0,s);Oe(a,n,r.children,null);}else if(o==="ref")p(r[o])?r[o].value=n:d(r[o])&&r[o](n);else if(y(o,"on")){let i=o.slice(2).toLocaleLowerCase(),a=this.getNodeTrack(`${t}:${o}`),c=r[o];a.cleanup=b(n,i,c);}else if(!y(o,"update")){let i=this.getNodeTrack(`${t}:${o}`),a=r[o],c=p(a)?a:P(a);Ae(i,n,o,c.value);let f=S(()=>{c.value=p(a)?a.value:a,Ae(i,n,o,c.value);}),u,l=`update${ve(o)}`;r[l]&&(u=Me(n,m=>{r[l](m);})),i.cleanup=()=>{f&&f(),u&&u();};}}};function Ae(e,t,n,r){let s=t;s.setAttribute&&(d(r)?e.cleanup=S(()=>{le(s,n,r());}):le(s,n,r));}function Oe(e,t,n,r){d(n)?e.cleanup=S(()=>{let s=Y(n()).map(ce);e.lastNodes=we(t,e.lastNodes,s,r);}):Y(n).forEach((s,o)=>{let i=ce(s);e.lastNodes.set(String(o),i),x(t,i,r);});}function Ve(e){var t;V("onMounted"),(t=T.ref)==null||t.addHook("mounted",e);}function qe(e){var t;V("onDestroy"),(t=T.ref)==null||t.addHook("destroy",e);}function V(e){T.ref||console.error(`"${e}" can only be called within the component function body
|
|
2
|
+
and cannot be used in asynchronous or deferred calls.`);}function Ue(e,t){var n;V("useProvide"),(n=T.ref)==null||n.setContext(e,t);}function Ze(e,t){var n;return V("useInject"),((n=T.ref)==null?void 0:n.getContext(e))||t}function Qe(){let e=null;return new Proxy({},{get(t,n){return n==="__is_ref"?!0:e},set(t,n,r){return e=r,!0}})}function Ye(e){return Object.entries(e).map(([t,n])=>`${t}=${JSON.stringify(escape(String(n)))}`).join(" ")}function fe(e,t){if(d(e))return e(t);let n=Array.isArray(e)?e.reduce((o,i,a)=>(o[a+1]={template:i},o),{}):e,r={},s={};if(C(n))for(let[o,i]of Object.entries(n)){let a=t[o];if(a){for(let c in a)y(c,"on")&&d(a[c])&&delete a[c];if(a.children){for(let[c,f]of a.children)r[f]||(r[f]=[]),r[f].push(c);delete a.children;}}s[o]={template:i.template,prop:a};}return Object.entries(s).map(([o,{template:i,prop:a}])=>{let c=i;return a&&(c+=` ${Ye(a)}`),r[o]&&(c+=r[o].map(f=>fe(f,a)).join("")),c}).join("")}function mn(e,t){return fe(e,t)}function hn(e,t,n={}){t.innerHTML=fe(e,n);}globalThis&&(globalThis.__essor_version=ge);
|
|
3
3
|
|
|
4
|
-
export { T as ComponentNode,
|
|
4
|
+
export { T as ComponentNode, Je as Fragment, K as TemplateNode, ge as __essor_version, Ie as createStore, Fe as h, z as isComputed, v as isJsxElement, H as isReactive, p as isSignal, Ge as nextTick, qe as onDestroy, Ve as onMount, fe as renderTemplate, mn as renderToString, se as signalObject, hn as ssgRender, Se as template, Pe as unReactive, xe as unSignal, oe as useComputed, S as useEffect, Ze as useInject, Ue as useProvide, O as useReactive, Qe as useRef, P as useSignal, He as useWatch };
|
|
5
5
|
//# sourceMappingURL=out.js.map
|
|
6
6
|
//# sourceMappingURL=essor.esm.js.map
|