sprae 10.9.3 → 10.10.0

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/sprae.umd.js DELETED
@@ -1,702 +0,0 @@
1
- (function (g, f) {
2
- if ("object" == typeof exports && "object" == typeof module) {
3
- module.exports = f();
4
- } else if ("function" == typeof define && define.amd) {
5
- define("sprae", [], f);
6
- } else if ("object" == typeof exports) {
7
- exports["sprae"] = f();
8
- } else {
9
- g["sprae"] = f();
10
- }
11
- }(this, () => {
12
- var exports = {};
13
- var module = { exports };(function (g, f) {
14
- if ("object" == typeof exports && "object" == typeof module) {
15
- module.exports = f();
16
- } else if ("function" == typeof define && define.amd) {
17
- define("sprae", [], f);
18
- } else if ("object" == typeof exports) {
19
- exports["sprae"] = f();
20
- } else {
21
- g["sprae"] = f();
22
- }
23
- }(this, () => {
24
- var exports = {};
25
- var module = { exports };
26
- var __defProp = Object.defineProperty;
27
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
28
- var __getOwnPropNames = Object.getOwnPropertyNames;
29
- var __hasOwnProp = Object.prototype.hasOwnProperty;
30
- var __export = (target, all) => {
31
- for (var name in all)
32
- __defProp(target, name, { get: all[name], enumerable: true });
33
- };
34
- var __copyProps = (to, from, except, desc) => {
35
- if (from && typeof from === "object" || typeof from === "function") {
36
- for (let key of __getOwnPropNames(from))
37
- if (!__hasOwnProp.call(to, key) && key !== except)
38
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
39
- }
40
- return to;
41
- };
42
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
43
-
44
- // sprae.js
45
- var sprae_exports = {};
46
- __export(sprae_exports, {
47
- default: () => sprae_default
48
- });
49
- module.exports = __toCommonJS(sprae_exports);
50
-
51
- // signal.js
52
- var signal;
53
- var effect;
54
- var untracked;
55
- var batch;
56
- var computed;
57
- function use(s) {
58
- signal = s.signal;
59
- effect = s.effect;
60
- computed = s.computed;
61
- batch = s.batch || ((fn) => fn());
62
- untracked = s.untracked || batch;
63
- }
64
-
65
- // store.js
66
- var _signals = Symbol("signals");
67
- var _change = Symbol("length");
68
- function store(values, parent) {
69
- if (!values)
70
- return values;
71
- if (values[_signals])
72
- return values;
73
- if (Array.isArray(values))
74
- return list(values);
75
- if (values.constructor !== Object)
76
- return values;
77
- let signals = { ...parent?.[_signals] }, _len = signal(Object.values(values).length);
78
- const state = new Proxy(signals, {
79
- get: (_, key) => key === _change ? _len : key === _signals ? signals : signals[key]?.valueOf(),
80
- set: (_, key, v, s) => (s = signals[key], set(signals, key, v), s ?? ++_len.value, 1),
81
- deleteProperty: (_, key) => (signals[key] && (del(signals, key), _len.value--), 1),
82
- ownKeys() {
83
- _len.value;
84
- return Reflect.ownKeys(signals);
85
- }
86
- });
87
- for (let key in values) {
88
- const desc = Object.getOwnPropertyDescriptor(values, key);
89
- if (desc?.get) {
90
- (signals[key] = computed(desc.get.bind(state)))._set = desc.set?.bind(state);
91
- } else {
92
- signals[key] = void 0;
93
- set(signals, key, values[key]);
94
- }
95
- }
96
- return state;
97
- }
98
- var mut = { push: 1, pop: 1, shift: 1, unshift: 1, splice: 1 };
99
- function list(values) {
100
- let lastProp;
101
- if (values[_signals])
102
- return values;
103
- let _len = signal(values.length), signals = Array(values.length).fill();
104
- const state = new Proxy(signals, {
105
- get(_, key) {
106
- if (typeof key === "symbol")
107
- return key === _change ? _len : key === _signals ? signals : signals[key];
108
- if (key === "length")
109
- return mut[lastProp] ? _len.peek() : _len.value;
110
- lastProp = key;
111
- if (signals[key])
112
- return signals[key].valueOf();
113
- if (key < signals.length)
114
- return (signals[key] = signal(store(values[key]))).value;
115
- },
116
- set(_, key, v) {
117
- if (key === "length") {
118
- for (let i = v, l = signals.length; i < l; i++)
119
- delete state[i];
120
- _len.value = signals.length = v;
121
- return true;
122
- }
123
- set(signals, key, v);
124
- if (key >= _len.peek())
125
- _len.value = signals.length = Number(key) + 1;
126
- return true;
127
- },
128
- deleteProperty: (_, key) => (signals[key] && del(signals, key), 1)
129
- });
130
- return state;
131
- }
132
- function set(signals, key, v) {
133
- let s = signals[key];
134
- if (key[0] === "_")
135
- signals[key] = v;
136
- else if (!s) {
137
- signals[key] = s = v?.peek ? v : signal(store(v));
138
- } else if (v === s.peek())
139
- ;
140
- else if (s._set)
141
- s._set(v);
142
- else if (Array.isArray(v) && Array.isArray(s.peek())) {
143
- const cur = s.peek();
144
- if (cur[_change])
145
- untracked(() => {
146
- batch(() => {
147
- let i = 0, l = v.length;
148
- for (; i < l; i++)
149
- cur[i] = v[i];
150
- cur.length = l;
151
- });
152
- });
153
- else {
154
- s.value = v;
155
- }
156
- } else {
157
- s.value = store(v);
158
- }
159
- }
160
- function del(signals, key) {
161
- const s = signals[key], del2 = s[Symbol.dispose];
162
- if (del2)
163
- delete s[Symbol.dispose];
164
- delete signals[key];
165
- del2?.();
166
- }
167
-
168
- // core.js
169
- var _dispose = Symbol.dispose || (Symbol.dispose = Symbol("dispose"));
170
- var directive = {};
171
- var memo = /* @__PURE__ */ new WeakMap();
172
- function sprae(el, values) {
173
- if (!el?.childNodes)
174
- return;
175
- if (memo.has(el)) {
176
- return Object.assign(memo.get(el), values);
177
- }
178
- const state = store(values || {}), disposes = [];
179
- init(el);
180
- if (!memo.has(el))
181
- memo.set(el, state);
182
- el[_dispose] = () => {
183
- while (disposes.length)
184
- disposes.pop()();
185
- memo.delete(el);
186
- };
187
- return state;
188
- function init(el2, parent = el2.parentNode) {
189
- if (!el2.childNodes)
190
- return;
191
- for (let i = 0; i < el2.attributes?.length; ) {
192
- let attr2 = el2.attributes[i];
193
- if (attr2.name[0] === ":") {
194
- el2.removeAttribute(attr2.name);
195
- let names = attr2.name.slice(1).split(":");
196
- for (let name of names) {
197
- let dir = directive[name] || directive.default;
198
- let evaluate = (dir.parse || parse)(attr2.value);
199
- let dispose = dir(el2, evaluate, state, name);
200
- if (dispose)
201
- disposes.push(dispose);
202
- }
203
- if (memo.has(el2))
204
- return el2[_dispose] && disposes.push(el2[_dispose]);
205
- if (el2.parentNode !== parent)
206
- return;
207
- } else
208
- i++;
209
- }
210
- for (let child of [...el2.childNodes])
211
- init(child, el2);
212
- }
213
- ;
214
- }
215
- var evalMemo = {};
216
- var parse = (expr, dir, fn) => {
217
- if (fn = evalMemo[expr = expr.trim()])
218
- return fn;
219
- try {
220
- fn = compile(expr);
221
- } catch (e) {
222
- err(e, dir, expr);
223
- }
224
- return evalMemo[expr] = fn;
225
- };
226
- var err = (e, dir, expr = "") => {
227
- throw Object.assign(e, { message: `\u2234 ${e.message}
228
-
229
- ${dir}${expr ? `="${expr}"
230
-
231
- ` : ""}`, expr });
232
- };
233
- var compile;
234
- sprae.use = (s) => {
235
- s.signal && use(s);
236
- s.compile && (compile = s.compile);
237
- };
238
- var frag = (tpl) => {
239
- if (!tpl.nodeType)
240
- return tpl;
241
- let content = tpl.content.cloneNode(true), attributes = [...tpl.attributes], ref = document.createTextNode(""), childNodes = (content.append(ref), [...content.childNodes]);
242
- return {
243
- childNodes,
244
- content,
245
- remove: () => content.append(...childNodes),
246
- replaceWith(el) {
247
- if (el === ref)
248
- return;
249
- ref.before(el);
250
- content.append(...childNodes);
251
- },
252
- attributes,
253
- removeAttribute(name) {
254
- attributes.splice(attributes.findIndex((a) => a.name === name), 1);
255
- }
256
- };
257
- };
258
-
259
- // node_modules/ulive/dist/ulive.es.js
260
- var ulive_es_exports = {};
261
- __export(ulive_es_exports, {
262
- batch: () => batch2,
263
- computed: () => computed2,
264
- effect: () => effect2,
265
- signal: () => signal2,
266
- untracked: () => untracked2
267
- });
268
- var current;
269
- var batched;
270
- var signal2 = (v, s, obs = /* @__PURE__ */ new Set()) => (s = {
271
- get value() {
272
- current?.deps.push(obs.add(current));
273
- return v;
274
- },
275
- set value(val) {
276
- if (val === v)
277
- return;
278
- v = val;
279
- for (let sub of obs)
280
- batched ? batched.add(sub) : sub();
281
- },
282
- peek() {
283
- return v;
284
- }
285
- }, s.toJSON = s.then = s.toString = s.valueOf = () => s.value, s);
286
- var effect2 = (fn, teardown, fx, deps) => (fx = (prev) => {
287
- teardown?.call?.();
288
- prev = current, current = fx;
289
- try {
290
- teardown = fn();
291
- } finally {
292
- current = prev;
293
- }
294
- }, deps = fx.deps = [], fx(), (dep) => {
295
- teardown?.call?.();
296
- while (dep = deps.pop())
297
- dep.delete(fx);
298
- });
299
- var computed2 = (fn, s = signal2(), c, e) => (c = {
300
- get value() {
301
- e || (e = effect2(() => s.value = fn()));
302
- return s.value;
303
- },
304
- peek: s.peek
305
- }, c.toJSON = c.then = c.toString = c.valueOf = () => c.value, c);
306
- var batch2 = (fn) => {
307
- let fxs = batched;
308
- if (!fxs)
309
- batched = /* @__PURE__ */ new Set();
310
- try {
311
- fn();
312
- } finally {
313
- if (!fxs) {
314
- fxs = batched;
315
- batched = null;
316
- for (const fx of fxs)
317
- fx();
318
- }
319
- }
320
- };
321
- var untracked2 = (fn, prev, v) => (prev = current, current = null, v = fn(), current = prev, v);
322
-
323
- // directive/if.js
324
- var _prevIf = Symbol("if");
325
- directive.if = (el, evaluate, state) => {
326
- let next = el.nextElementSibling, holder = document.createTextNode(""), curEl, ifEl, elseEl;
327
- el.replaceWith(holder);
328
- ifEl = el.content ? frag(el) : el;
329
- memo.set(ifEl, null);
330
- if (next?.hasAttribute(":else")) {
331
- next.removeAttribute(":else");
332
- if (!next.hasAttribute(":if"))
333
- next.remove(), elseEl = next.content ? frag(next) : next, memo.set(elseEl, null);
334
- }
335
- return effect(() => {
336
- const newEl = evaluate(state) ? ifEl : el[_prevIf] ? null : elseEl;
337
- if (next)
338
- next[_prevIf] = newEl === ifEl;
339
- if (curEl != newEl) {
340
- curEl?.remove();
341
- if (curEl = newEl) {
342
- holder.before(curEl.content || curEl);
343
- memo.get(curEl) === null && memo.delete(curEl);
344
- sprae(curEl, state);
345
- }
346
- }
347
- });
348
- };
349
-
350
- // directive/each.js
351
- directive.each = (tpl, [itemVar, idxVar, evaluate], state) => {
352
- const holder = document.createTextNode("");
353
- tpl.replaceWith(holder);
354
- let cur, keys2, prevl = 0;
355
- const items = computed(() => {
356
- keys2 = null;
357
- let items2 = evaluate(state);
358
- if (typeof items2 === "number")
359
- items2 = Array.from({ length: items2 }, (_, i) => i + 1);
360
- if (items2?.constructor === Object)
361
- keys2 = Object.keys(items2), items2 = Object.values(items2);
362
- return items2 || [];
363
- });
364
- const update = () => {
365
- untracked(() => {
366
- var _a, _b;
367
- let i = 0, newItems = items.value, newl = newItems.length;
368
- if (cur && !cur[_change]) {
369
- for (let s of cur[_signals] || []) {
370
- s[Symbol.dispose]();
371
- }
372
- cur = null, prevl = 0;
373
- }
374
- if (newl < prevl) {
375
- cur.length = newl;
376
- } else {
377
- if (!cur) {
378
- cur = newItems;
379
- } else {
380
- for (; i < prevl; i++) {
381
- cur[i] = newItems[i];
382
- }
383
- }
384
- for (; i < newl; i++) {
385
- cur[i] = newItems[i];
386
- let idx = i, scope = store({
387
- [itemVar]: cur[_signals]?.[idx] || cur[idx],
388
- [idxVar]: keys2 ? keys2[idx] : idx
389
- }, state), el = tpl.content ? frag(tpl) : tpl.cloneNode(true);
390
- holder.before(el.content || el);
391
- sprae(el, scope);
392
- ((_b = cur[_a = _signals] || (cur[_a] = []))[i] || (_b[i] = {}))[Symbol.dispose] = () => {
393
- el[Symbol.dispose](), el.remove();
394
- };
395
- }
396
- }
397
- prevl = newl;
398
- });
399
- };
400
- let planned = 0;
401
- return effect(() => {
402
- items.value[_change]?.value;
403
- if (!planned) {
404
- update();
405
- queueMicrotask(() => (planned && update(), planned = 0));
406
- } else
407
- planned++;
408
- });
409
- };
410
- directive.each.parse = (expr) => {
411
- let [leftSide, itemsExpr] = expr.split(/\s+in\s+/);
412
- let [itemVar, idxVar = "$"] = leftSide.split(/\s*,\s*/);
413
- return [itemVar, idxVar, parse(itemsExpr)];
414
- };
415
-
416
- // directive/ref.js
417
- directive.ref = (el, expr, state) => {
418
- state[expr] = el;
419
- };
420
- directive.ref.parse = (expr) => expr;
421
-
422
- // directive/with.js
423
- directive.with = (el, evaluate, rootState) => {
424
- let state;
425
- return effect(() => {
426
- let values = evaluate(rootState);
427
- sprae(el, state ? values : state = store(values, rootState));
428
- });
429
- };
430
-
431
- // directive/html.js
432
- directive.html = (el, evaluate, state) => {
433
- let tpl = evaluate(state);
434
- if (!tpl)
435
- return;
436
- let content = (tpl.content || tpl).cloneNode(true);
437
- el.replaceChildren(content);
438
- sprae(el, state);
439
- };
440
-
441
- // directive/text.js
442
- directive.text = (el, evaluate, state) => {
443
- if (el.content)
444
- el.replaceWith(el = frag(el).childNodes[0]);
445
- return effect(() => {
446
- let value = evaluate(state);
447
- el.textContent = value == null ? "" : value;
448
- });
449
- };
450
-
451
- // directive/class.js
452
- directive.class = (el, evaluate, state) => {
453
- let cur = /* @__PURE__ */ new Set();
454
- return effect(() => {
455
- let v = evaluate(state);
456
- let clsx = /* @__PURE__ */ new Set();
457
- if (v) {
458
- if (typeof v === "string")
459
- v.split(" ").map((cls) => clsx.add(cls));
460
- else if (Array.isArray(v))
461
- v.map((v2) => v2 && clsx.add(v2));
462
- else
463
- Object.entries(v).map(([k, v2]) => v2 && clsx.add(k));
464
- }
465
- for (let cls of cur)
466
- if (clsx.has(cls))
467
- clsx.delete(cls);
468
- else
469
- el.classList.remove(cls);
470
- for (let cls of cur = clsx)
471
- el.classList.add(cls);
472
- });
473
- };
474
-
475
- // directive/style.js
476
- directive.style = (el, evaluate, state) => {
477
- let initStyle = el.getAttribute("style");
478
- return effect(() => {
479
- let v = evaluate(state);
480
- if (typeof v === "string")
481
- el.setAttribute("style", initStyle + (initStyle.endsWith(";") ? "" : "; ") + v);
482
- else {
483
- if (initStyle)
484
- el.setAttribute("style", initStyle);
485
- for (let k in v)
486
- k[0] == "-" ? el.style.setProperty(k, v[k]) : el.style[k] = v[k];
487
- }
488
- });
489
- };
490
-
491
- // directive/default.js
492
- directive.default = (target, evaluate, state, name) => {
493
- if (!name.startsWith("on"))
494
- return effect(() => {
495
- let value = evaluate(state);
496
- if (name)
497
- attr(target, name, value);
498
- else
499
- for (let key in value)
500
- attr(target, dashcase(key), value[key]);
501
- });
502
- const ctxs = name.split("..").map((e) => {
503
- let ctx = { evt: "", target, test: () => true };
504
- ctx.evt = (e.startsWith("on") ? e.slice(2) : e).replace(
505
- /\.(\w+)?-?([-\w]+)?/g,
506
- (match, mod, param = "") => (ctx.test = mods[mod]?.(ctx, ...param.split("-")) || ctx.test, "")
507
- );
508
- return ctx;
509
- });
510
- if (ctxs.length == 1)
511
- return effect(() => addListener(evaluate(state), ctxs[0]));
512
- let startFn, nextFn, off, idx = 0;
513
- const nextListener = (fn) => {
514
- off = addListener((e) => (off(), nextFn = fn?.(e), (idx = ++idx % ctxs.length) ? nextListener(nextFn) : startFn && nextListener(startFn)), ctxs[idx]);
515
- };
516
- return effect(() => (startFn = evaluate(state), !off && nextListener(startFn), () => startFn = null));
517
- function addListener(fn, { evt, target: target2, test, defer, stop, prevent, immediate, ...opts }) {
518
- if (defer)
519
- fn = defer(fn);
520
- const cb = (e) => {
521
- try {
522
- test(e) && (stop && (immediate ? e.stopImmediatePropagation() : e.stopPropagation()), prevent && e.preventDefault(), fn?.(e));
523
- } catch (error) {
524
- err(error, `:on${evt}`, fn);
525
- }
526
- };
527
- target2.addEventListener(evt, cb, opts);
528
- return () => target2.removeEventListener(evt, cb, opts);
529
- }
530
- ;
531
- };
532
- var mods = {
533
- prevent(ctx) {
534
- ctx.prevent = true;
535
- },
536
- stop(ctx) {
537
- ctx.stop = true;
538
- },
539
- immediate(ctx) {
540
- ctx.immediate = true;
541
- },
542
- once(ctx) {
543
- ctx.once = true;
544
- },
545
- passive(ctx) {
546
- ctx.passive = true;
547
- },
548
- capture(ctx) {
549
- ctx.capture = true;
550
- },
551
- window(ctx) {
552
- ctx.target = window;
553
- },
554
- document(ctx) {
555
- ctx.target = document;
556
- },
557
- throttle(ctx, limit) {
558
- ctx.defer = (fn) => throttle(fn, limit ? Number(limit) || 0 : 108);
559
- },
560
- debounce(ctx, wait) {
561
- ctx.defer = (fn) => debounce(fn, wait ? Number(wait) || 0 : 108);
562
- },
563
- outside: (ctx) => (e) => {
564
- let target = ctx.target;
565
- if (target.contains(e.target))
566
- return false;
567
- if (e.target.isConnected === false)
568
- return false;
569
- if (target.offsetWidth < 1 && target.offsetHeight < 1)
570
- return false;
571
- return true;
572
- },
573
- self: (ctx) => (e) => e.target === ctx.target,
574
- ctrl: (_, ...param) => (e) => keys.ctrl(e) && param.every((p) => keys[p] ? keys[p](e) : e.key === p),
575
- shift: (_, ...param) => (e) => keys.shift(e) && param.every((p) => keys[p] ? keys[p](e) : e.key === p),
576
- alt: (_, ...param) => (e) => keys.alt(e) && param.every((p) => keys[p] ? keys[p](e) : e.key === p),
577
- meta: (_, ...param) => (e) => keys.meta(e) && param.every((p) => keys[p] ? keys[p](e) : e.key === p),
578
- arrow: () => keys.arrow,
579
- enter: () => keys.enter,
580
- esc: () => keys.esc,
581
- tab: () => keys.tab,
582
- space: () => keys.space,
583
- delete: () => keys.delete,
584
- digit: () => keys.digit,
585
- letter: () => keys.letter,
586
- char: () => keys.char
587
- };
588
- var keys = {
589
- ctrl: (e) => e.ctrlKey || e.key === "Control" || e.key === "Ctrl",
590
- shift: (e) => e.shiftKey || e.key === "Shift",
591
- alt: (e) => e.altKey || e.key === "Alt",
592
- meta: (e) => e.metaKey || e.key === "Meta" || e.key === "Command",
593
- arrow: (e) => e.key.startsWith("Arrow"),
594
- enter: (e) => e.key === "Enter",
595
- esc: (e) => e.key.startsWith("Esc"),
596
- tab: (e) => e.key === "Tab",
597
- space: (e) => e.key === "\xA0" || e.key === "Space" || e.key === " ",
598
- delete: (e) => e.key === "Delete" || e.key === "Backspace",
599
- digit: (e) => /^\d$/.test(e.key),
600
- letter: (e) => /^\p{L}$/gu.test(e.key),
601
- char: (e) => /^\S$/.test(e.key)
602
- };
603
- var attr = (el, name, v) => {
604
- if (v == null || v === false)
605
- el.removeAttribute(name);
606
- else
607
- el.setAttribute(name, v === true ? "" : typeof v === "number" || typeof v === "string" ? v : "");
608
- };
609
- var throttle = (fn, limit) => {
610
- let pause, planned, block = (e) => {
611
- pause = true;
612
- setTimeout(() => {
613
- pause = false;
614
- if (planned)
615
- return planned = false, block(e), fn(e);
616
- }, limit);
617
- };
618
- return (e) => {
619
- if (pause)
620
- return planned = true;
621
- block(e);
622
- return fn(e);
623
- };
624
- };
625
- var debounce = (fn, wait) => {
626
- let timeout;
627
- return (e) => {
628
- clearTimeout(timeout);
629
- timeout = setTimeout(() => {
630
- timeout = null;
631
- fn(e);
632
- }, wait);
633
- };
634
- };
635
- var dashcase = (str) => {
636
- return str.replace(/[A-Z\u00C0-\u00D6\u00D8-\u00DE]/g, (match) => "-" + match.toLowerCase());
637
- };
638
-
639
- // directive/value.js
640
- directive.value = (el, [getValue, setValue], state) => {
641
- const update = el.type === "text" || el.type === "" ? (value) => el.setAttribute("value", el.value = value == null ? "" : value) : el.tagName === "TEXTAREA" || el.type === "text" || el.type === "" ? (value, from, to) => (from = el.selectionStart, to = el.selectionEnd, el.setAttribute("value", el.value = value == null ? "" : value), from && el.setSelectionRange(from, to)) : el.type === "checkbox" ? (value) => (el.checked = value, attr(el, "checked", value)) : el.type === "select-one" ? (value) => {
642
- for (let option in el.options)
643
- option.removeAttribute("selected");
644
- el.value = value;
645
- el.selectedOptions[0]?.setAttribute("selected", "");
646
- } : (value) => el.value = value;
647
- const handleChange = el.type === "checkbox" ? (e) => setValue(state, el.checked) : (e) => setValue(state, el.value);
648
- el.addEventListener("input", handleChange);
649
- el.addEventListener("change", handleChange);
650
- return effect(() => update(getValue(state)));
651
- };
652
- directive.value.parse = (expr) => {
653
- let evaluate = [parse(expr)];
654
- try {
655
- evaluate.push(parse(`${expr}=arguments[1];`));
656
- } catch (e) {
657
- }
658
- return evaluate;
659
- };
660
-
661
- // directive/fx.js
662
- directive.fx = (el, evaluate, state) => {
663
- return effect(() => evaluate(state));
664
- };
665
-
666
- // sprae.js
667
- sprae.use(ulive_es_exports);
668
- sprae.use({ compile: (expr) => sprae.constructor(`with (arguments[0]) { return ${expr} };`) });
669
- var sprae_default = sprae;
670
- if (document?.currentScript?.hasAttribute('init')) sprae(document.documentElement)if (typeof module.exports == "object" && typeof exports == "object") {
671
- var __cp = (to, from, except, desc) => {
672
- if ((from && typeof from === "object") || typeof from === "function") {
673
- for (let key of Object.getOwnPropertyNames(from)) {
674
- if (!Object.prototype.hasOwnProperty.call(to, key) && key !== except)
675
- Object.defineProperty(to, key, {
676
- get: () => from[key],
677
- enumerable: !(desc = Object.getOwnPropertyDescriptor(from, key)) || desc.enumerable,
678
- });
679
- }
680
- }
681
- return to;
682
- };
683
- module.exports = __cp(module.exports, exports);
684
- }
685
- return module.exports;
686
- }))if (typeof module.exports == "object" && typeof exports == "object") {
687
- var __cp = (to, from, except, desc) => {
688
- if ((from && typeof from === "object") || typeof from === "function") {
689
- for (let key of Object.getOwnPropertyNames(from)) {
690
- if (!Object.prototype.hasOwnProperty.call(to, key) && key !== except)
691
- Object.defineProperty(to, key, {
692
- get: () => from[key],
693
- enumerable: !(desc = Object.getOwnPropertyDescriptor(from, key)) || desc.enumerable,
694
- });
695
- }
696
- }
697
- return to;
698
- };
699
- module.exports = __cp(module.exports, exports);
700
- }
701
- return module.exports;
702
- }))