j-templates 6.0.3 → 6.0.5
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/Node/component.js +0 -4
- package/Node/elementNode.js +13 -13
- package/Store/Diff/diffAsync.js +0 -1
- package/Store/Diff/diffSync.js +0 -1
- package/Store/Diff/diffTree.js +1 -2
- package/Store/Diff/workerQueue.js +0 -2
- package/Store/Store/store.js +1 -3
- package/Store/Store/storeAsync.js +1 -2
- package/Store/Store/storeSync.js +0 -1
- package/Store/Tree/observableNode.js +3 -5
- package/Store/Tree/observableScope.js +0 -2
- package/Store/Tree/observableTree.js +42 -43
- package/Utils/animation.js +0 -9
- package/Utils/asyncQueue.js +4 -2
- package/Utils/injector.js +0 -2
- package/jTemplates.js +1 -1
- package/jTemplates.js.map +1 -1
- package/package.json +1 -1
package/Node/component.js
CHANGED
|
@@ -6,10 +6,6 @@ const componentNode_1 = require("./componentNode");
|
|
|
6
6
|
const decorators_1 = require("../Utils/decorators");
|
|
7
7
|
const observableScope_1 = require("../Store/Tree/observableScope");
|
|
8
8
|
class Component {
|
|
9
|
-
nodeRef;
|
|
10
|
-
componentEvents;
|
|
11
|
-
scope;
|
|
12
|
-
templates;
|
|
13
9
|
get Injector() {
|
|
14
10
|
return this.nodeRef.injector;
|
|
15
11
|
}
|
package/Node/elementNode.js
CHANGED
|
@@ -8,6 +8,7 @@ const thread_1 = require("../Utils/thread");
|
|
|
8
8
|
const boundNode_1 = require("./boundNode");
|
|
9
9
|
const nodeConfig_1 = require("./nodeConfig");
|
|
10
10
|
const nodeRef_1 = require("./nodeRef");
|
|
11
|
+
const valueDefault = [];
|
|
11
12
|
var ElementNode;
|
|
12
13
|
(function (ElementNode) {
|
|
13
14
|
function Create(type, namespace, nodeDef, children) {
|
|
@@ -22,13 +23,21 @@ var ElementNode;
|
|
|
22
23
|
var nodeDef = elementNode.nodeDef;
|
|
23
24
|
if (nodeDef.data) {
|
|
24
25
|
const dataScope = observableScope_1.ObservableScope.Create(nodeDef.data);
|
|
26
|
+
const valueScope = observableScope_1.ObservableScope.Create(function () {
|
|
27
|
+
let value = observableScope_1.ObservableScope.Value(dataScope);
|
|
28
|
+
if (!value)
|
|
29
|
+
return valueDefault;
|
|
30
|
+
if (!Array.isArray(value))
|
|
31
|
+
return [value];
|
|
32
|
+
return value.slice();
|
|
33
|
+
});
|
|
25
34
|
elementNode.childNodes = new Set();
|
|
26
35
|
elementNode.scopes ??= [];
|
|
27
|
-
elementNode.scopes.push(dataScope);
|
|
36
|
+
elementNode.scopes.push(dataScope, valueScope);
|
|
28
37
|
observableScope_1.ObservableScope.Watch(dataScope, function () {
|
|
29
|
-
ScheduleSetData(elementNode,
|
|
38
|
+
ScheduleSetData(elementNode, valueScope);
|
|
30
39
|
});
|
|
31
|
-
SetData(elementNode,
|
|
40
|
+
SetData(elementNode, observableScope_1.ObservableScope.Value(valueScope), true);
|
|
32
41
|
}
|
|
33
42
|
else
|
|
34
43
|
SetDefaultData(elementNode);
|
|
@@ -37,15 +46,6 @@ var ElementNode;
|
|
|
37
46
|
}
|
|
38
47
|
ElementNode.Init = Init;
|
|
39
48
|
})(ElementNode || (exports.ElementNode = ElementNode = {}));
|
|
40
|
-
const valueDefault = [];
|
|
41
|
-
function GetValue(dataScope) {
|
|
42
|
-
var value = observableScope_1.ObservableScope.Value(dataScope);
|
|
43
|
-
if (!value)
|
|
44
|
-
return valueDefault;
|
|
45
|
-
if (!Array.isArray(value))
|
|
46
|
-
value = [value];
|
|
47
|
-
return value;
|
|
48
|
-
}
|
|
49
49
|
function ScheduleSetData(node, scope) {
|
|
50
50
|
if (node.setData)
|
|
51
51
|
return;
|
|
@@ -54,7 +54,7 @@ function ScheduleSetData(node, scope) {
|
|
|
54
54
|
node.setData = false;
|
|
55
55
|
if (node.destroyed)
|
|
56
56
|
return;
|
|
57
|
-
SetData(node,
|
|
57
|
+
SetData(node, observableScope_1.ObservableScope.Value(scope));
|
|
58
58
|
});
|
|
59
59
|
}
|
|
60
60
|
function SetDefaultData(node) {
|
package/Store/Diff/diffAsync.js
CHANGED
|
@@ -4,7 +4,6 @@ exports.DiffAsync = void 0;
|
|
|
4
4
|
const workerQueue_1 = require("./workerQueue");
|
|
5
5
|
const diffWorker_1 = require("./diffWorker");
|
|
6
6
|
class DiffAsync {
|
|
7
|
-
workerQueue;
|
|
8
7
|
constructor(keyFunc) {
|
|
9
8
|
this.workerQueue = new workerQueue_1.WorkerQueue(diffWorker_1.DiffWorker.Create());
|
|
10
9
|
this.workerQueue.Push({ method: "create", arguments: keyFunc ? [keyFunc.toString()] : [] });
|
package/Store/Diff/diffSync.js
CHANGED
|
@@ -6,7 +6,6 @@ const jsonDeepClone_1 = require("../../Utils/jsonDeepClone");
|
|
|
6
6
|
const diffTree_1 = require("./diffTree");
|
|
7
7
|
const diffCnstr = (0, diffTree_1.DiffTreeFactory)(json_1.JsonDiffFactory);
|
|
8
8
|
class DiffSync {
|
|
9
|
-
diffTree;
|
|
10
9
|
constructor(keyFunc) {
|
|
11
10
|
this.diffTree = new diffCnstr(keyFunc);
|
|
12
11
|
}
|
package/Store/Diff/diffTree.js
CHANGED
|
@@ -114,10 +114,9 @@ function DiffTreeFactory(jsonDiffFactory, worker) {
|
|
|
114
114
|
return diffResult;
|
|
115
115
|
}
|
|
116
116
|
class DiffTree {
|
|
117
|
-
keyFunc;
|
|
118
|
-
rootState = {};
|
|
119
117
|
constructor(keyFunc) {
|
|
120
118
|
this.keyFunc = keyFunc;
|
|
119
|
+
this.rootState = {};
|
|
121
120
|
}
|
|
122
121
|
DiffBatch(data) {
|
|
123
122
|
const results = data
|
|
@@ -3,8 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.WorkerQueue = void 0;
|
|
4
4
|
const list_1 = require("../../Utils/list");
|
|
5
5
|
class WorkerQueue {
|
|
6
|
-
callbacks;
|
|
7
|
-
worker;
|
|
8
6
|
constructor(worker) {
|
|
9
7
|
this.worker = worker;
|
|
10
8
|
this.callbacks = list_1.List.Create();
|
package/Store/Store/store.js
CHANGED
|
@@ -4,11 +4,9 @@ exports.Store = void 0;
|
|
|
4
4
|
const json_1 = require("../../Utils/json");
|
|
5
5
|
const observableNode_1 = require("../Tree/observableNode");
|
|
6
6
|
class Store {
|
|
7
|
-
keyFunc;
|
|
8
|
-
rootMap = new Map();
|
|
9
|
-
createNode;
|
|
10
7
|
constructor(keyFunc) {
|
|
11
8
|
this.keyFunc = keyFunc;
|
|
9
|
+
this.rootMap = new Map();
|
|
12
10
|
const aliasFunc = (value) => {
|
|
13
11
|
const key = keyFunc(value);
|
|
14
12
|
if (key === undefined)
|
|
@@ -7,10 +7,9 @@ const diffAsync_1 = require("../Diff/diffAsync");
|
|
|
7
7
|
const observableNode_1 = require("../Tree/observableNode");
|
|
8
8
|
const store_1 = require("./store");
|
|
9
9
|
class StoreAsync extends store_1.Store {
|
|
10
|
-
diff;
|
|
11
|
-
queue = new asyncQueue_1.AsyncQueue();
|
|
12
10
|
constructor(keyFunc) {
|
|
13
11
|
super(keyFunc);
|
|
12
|
+
this.queue = new asyncQueue_1.AsyncQueue();
|
|
14
13
|
this.diff = new diffAsync_1.DiffAsync(keyFunc);
|
|
15
14
|
}
|
|
16
15
|
async Write(data, key) {
|
package/Store/Store/storeSync.js
CHANGED
|
@@ -6,7 +6,6 @@ const diffSync_1 = require("../Diff/diffSync");
|
|
|
6
6
|
const observableNode_1 = require("../Tree/observableNode");
|
|
7
7
|
const store_1 = require("./store");
|
|
8
8
|
class StoreSync extends store_1.Store {
|
|
9
|
-
diff;
|
|
10
9
|
constructor(keyFunc) {
|
|
11
10
|
super(keyFunc);
|
|
12
11
|
this.diff = new diffSync_1.DiffSync(keyFunc);
|
|
@@ -154,12 +154,10 @@ function CreateProxyFactory(alias) {
|
|
|
154
154
|
return arrayValue;
|
|
155
155
|
if (typeof arrayValue === "function")
|
|
156
156
|
return function ArrayFunction(...args) {
|
|
157
|
-
const proxyArray = array.slice();
|
|
157
|
+
const proxyArray = prop === "slice" ? array.slice(...args) : array.slice();
|
|
158
158
|
for (let x = 0; x < proxyArray.length; x++)
|
|
159
|
-
proxyArray[x] =
|
|
160
|
-
|
|
161
|
-
CreateProxyFromValue(proxyArray[x]);
|
|
162
|
-
let result = proxyArray[prop](...args);
|
|
159
|
+
proxyArray[x] = CreateProxyFromValue(proxyArray[x]);
|
|
160
|
+
let result = prop === "slice" ? proxyArray : proxyArray[prop](...args);
|
|
163
161
|
switch (prop) {
|
|
164
162
|
case "push":
|
|
165
163
|
case "unshift":
|
|
@@ -4,7 +4,6 @@ exports.ObservableScope = exports.ObservableScopeWrapper = exports.ObservableSco
|
|
|
4
4
|
const array_1 = require("../../Utils/array");
|
|
5
5
|
const emitter_1 = require("../../Utils/emitter");
|
|
6
6
|
class ObservableScopeValue {
|
|
7
|
-
scope;
|
|
8
7
|
get Value() {
|
|
9
8
|
return ObservableScope.Value(this.scope);
|
|
10
9
|
}
|
|
@@ -14,7 +13,6 @@ class ObservableScopeValue {
|
|
|
14
13
|
}
|
|
15
14
|
exports.ObservableScopeValue = ObservableScopeValue;
|
|
16
15
|
class ObservableScopeWrapper extends ObservableScopeValue {
|
|
17
|
-
scopeEmitter;
|
|
18
16
|
constructor(scope) {
|
|
19
17
|
super(scope);
|
|
20
18
|
if (scope.emitter) {
|
|
@@ -19,15 +19,50 @@ function TypeOf(value) {
|
|
|
19
19
|
return Type.Value;
|
|
20
20
|
}
|
|
21
21
|
class ObservableTree {
|
|
22
|
-
valuePathResolver;
|
|
23
|
-
undefinedScope = observableScope_1.ObservableScope.Create(function () { return undefined; });
|
|
24
|
-
scopeCache = new WeakMap();
|
|
25
|
-
leafScopeCache = new WeakMap();
|
|
26
|
-
proxyCache = new WeakMap();
|
|
27
|
-
pathCache = new WeakMap();
|
|
28
|
-
rootStateMap = new Map();
|
|
29
22
|
constructor(valuePathResolver) {
|
|
30
23
|
this.valuePathResolver = valuePathResolver;
|
|
24
|
+
this.undefinedScope = observableScope_1.ObservableScope.Create(function () { return undefined; });
|
|
25
|
+
this.scopeCache = new WeakMap();
|
|
26
|
+
this.leafScopeCache = new WeakMap();
|
|
27
|
+
this.proxyCache = new WeakMap();
|
|
28
|
+
this.pathCache = new WeakMap();
|
|
29
|
+
this.rootStateMap = new Map();
|
|
30
|
+
this.ObjectProxyGetter = (value, prop) => {
|
|
31
|
+
function toJSON() {
|
|
32
|
+
return value;
|
|
33
|
+
}
|
|
34
|
+
;
|
|
35
|
+
switch (prop) {
|
|
36
|
+
case "toJSON":
|
|
37
|
+
return toJSON;
|
|
38
|
+
default:
|
|
39
|
+
if (typeof prop === 'symbol')
|
|
40
|
+
return value[prop];
|
|
41
|
+
return observableScope_1.ObservableScope.Value(this.GetPropertyScope(value, prop));
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
this.ArrayProxyGetter = (value, prop) => {
|
|
45
|
+
function toJSON() {
|
|
46
|
+
return value;
|
|
47
|
+
}
|
|
48
|
+
;
|
|
49
|
+
switch (prop) {
|
|
50
|
+
case "toJSON":
|
|
51
|
+
return toJSON;
|
|
52
|
+
default:
|
|
53
|
+
if (typeof prop === 'symbol')
|
|
54
|
+
return value[prop];
|
|
55
|
+
if (isNaN(parseInt(prop))) {
|
|
56
|
+
const ret = value[prop];
|
|
57
|
+
if (typeof ret === 'function') {
|
|
58
|
+
const copy = value.map((val, index) => observableScope_1.ObservableScope.Value(this.GetPropertyScope(value, index.toString())));
|
|
59
|
+
return ret.bind(copy);
|
|
60
|
+
}
|
|
61
|
+
return ret;
|
|
62
|
+
}
|
|
63
|
+
return observableScope_1.ObservableScope.Value(this.GetPropertyScope(value, prop));
|
|
64
|
+
}
|
|
65
|
+
};
|
|
31
66
|
}
|
|
32
67
|
static UnwrapProxyValues(value) {
|
|
33
68
|
if (value?.toJSON && typeof value.toJSON === 'function')
|
|
@@ -132,47 +167,11 @@ class ObservableTree {
|
|
|
132
167
|
}
|
|
133
168
|
return proxy;
|
|
134
169
|
}
|
|
135
|
-
ObjectProxyGetter = (value, prop) => {
|
|
136
|
-
function toJSON() {
|
|
137
|
-
return value;
|
|
138
|
-
}
|
|
139
|
-
;
|
|
140
|
-
switch (prop) {
|
|
141
|
-
case "toJSON":
|
|
142
|
-
return toJSON;
|
|
143
|
-
default:
|
|
144
|
-
if (typeof prop === 'symbol')
|
|
145
|
-
return value[prop];
|
|
146
|
-
return observableScope_1.ObservableScope.Value(this.GetPropertyScope(value, prop));
|
|
147
|
-
}
|
|
148
|
-
};
|
|
149
170
|
CreateObjectProxy(value) {
|
|
150
171
|
return new Proxy(value, {
|
|
151
172
|
get: this.ObjectProxyGetter
|
|
152
173
|
});
|
|
153
174
|
}
|
|
154
|
-
ArrayProxyGetter = (value, prop) => {
|
|
155
|
-
function toJSON() {
|
|
156
|
-
return value;
|
|
157
|
-
}
|
|
158
|
-
;
|
|
159
|
-
switch (prop) {
|
|
160
|
-
case "toJSON":
|
|
161
|
-
return toJSON;
|
|
162
|
-
default:
|
|
163
|
-
if (typeof prop === 'symbol')
|
|
164
|
-
return value[prop];
|
|
165
|
-
if (isNaN(parseInt(prop))) {
|
|
166
|
-
const ret = value[prop];
|
|
167
|
-
if (typeof ret === 'function') {
|
|
168
|
-
const copy = value.map((val, index) => observableScope_1.ObservableScope.Value(this.GetPropertyScope(value, index.toString())));
|
|
169
|
-
return ret.bind(copy);
|
|
170
|
-
}
|
|
171
|
-
return ret;
|
|
172
|
-
}
|
|
173
|
-
return observableScope_1.ObservableScope.Value(this.GetPropertyScope(value, prop));
|
|
174
|
-
}
|
|
175
|
-
};
|
|
176
175
|
CreateArrayProxy(value) {
|
|
177
176
|
return new Proxy(value, {
|
|
178
177
|
get: this.ArrayProxyGetter
|
package/Utils/animation.js
CHANGED
|
@@ -22,15 +22,6 @@ var AnimationType;
|
|
|
22
22
|
AnimationType[AnimationType["EaseIn"] = 1] = "EaseIn";
|
|
23
23
|
})(AnimationType || (exports.AnimationType = AnimationType = {}));
|
|
24
24
|
class Animation {
|
|
25
|
-
type;
|
|
26
|
-
frameCount;
|
|
27
|
-
frameTimings;
|
|
28
|
-
update;
|
|
29
|
-
animationTimeouts;
|
|
30
|
-
running;
|
|
31
|
-
start;
|
|
32
|
-
end;
|
|
33
|
-
enabled;
|
|
34
25
|
get Running() {
|
|
35
26
|
return this.running;
|
|
36
27
|
}
|
package/Utils/asyncQueue.js
CHANGED
|
@@ -3,8 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.AsyncQueue = void 0;
|
|
4
4
|
const list_1 = require("./list");
|
|
5
5
|
class AsyncQueue {
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
constructor() {
|
|
7
|
+
this.running = false;
|
|
8
|
+
this.queue = list_1.List.Create();
|
|
9
|
+
}
|
|
8
10
|
Next(callback) {
|
|
9
11
|
const ret = new Promise((resolve, reject) => {
|
|
10
12
|
list_1.List.Add(this.queue, async function () {
|
package/Utils/injector.js
CHANGED
package/jTemplates.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(()=>{"use strict";var __webpack_modules__={642:(e,t)=>{function n(e,t,n,o){const r=n;t[o]??=function(e,t){let n;return function(o){o!==n&&(n&&e.removeEventListener(t,n),o&&e.addEventListener(t,o),n=o)}}(e,o),t[o](r)}Object.defineProperty(t,"__esModule",{value:!0}),t.CreateEventAssignment=function(e){let t;const o={};return function(r){const i=null!==r?Object.keys(r):[],s=void 0===t?i:i.concat(t);t=i;for(let t=0;t<s.length;t++)n(e,o,r&&r[s[t]],s[t])}}},543:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CreateNodeValueAssignment=function(e){let t=e.nodeValue;return function(n){n.nodeValue!==t&&(e.nodeValue=n.nodeValue,t=n.nodeValue)}},t.CreatePropertyAssignment=c;const o=n(130);function r(e,t){let n=e[t];return function(o){o!==n&&(e[t]=o,n=o)}}function i(e,t,n){t.value??="INPUT"===e.nodeName?function(e){let t=e.value;return e.addEventListener("blur",(function(){e.value=t})),function(n){if(n!==t){const o=e.selectionStart,r=e.selectionEnd;e.value=n,e.ownerDocument.activeElement===e&&e.setSelectionRange(o,r),t=n}}}(e):r(e,"value"),t.value(n.value)}function s(e,t,n,i){const s=n[i];t[i]??="value"===(0,o.JsonType)(s)?r(e,i):c(e[i],!1),t[i](s)}function c(e,t=!0){const n={};return function(o){const r=Object.keys(o);for(let c=0;c<r.length;c++)!0===t&&"value"===r[c]?i(e,n,o):s(e,n,o,r[c])}}},641:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DOMNodeConfig=void 0;const o=n(819),r=n(496),i=n(543),s=n(642);let c=r.List.Create(),u=!1;function a(){r.List.Add(c,null);const e=Date.now();let t;for(;t=r.List.Pop(c);)t();0===c.size?u=!1:Date.now()-e<16?a():o.wndw.requestAnimationFrame(a)}t.DOMNodeConfig={createNode:(e,t)=>t?o.wndw.document.createElementNS(t,e):o.wndw.document.createElement(e),createTextNode:(e="")=>o.wndw.document.createTextNode(e),scheduleUpdate(e){r.List.Add(c,e),u||(u=!0,o.wndw.requestAnimationFrame(a))},addListener(e,t,n){e.addEventListener(t,n)},removeListener(e,t,n){e.removeEventListener(t,n)},addChild(e,t){e.appendChild(t)},addChildFirst(e,n){t.DOMNodeConfig.addChildBefore(e,e.firstChild,n)},addChildBefore(e,n,o){n?o!==n&&e.insertBefore(o,n):t.DOMNodeConfig.addChild(e,o)},addChildAfter(e,n,o){n?t.DOMNodeConfig.addChildBefore(e,n.nextSibling,o):t.DOMNodeConfig.addChildFirst(e,o)},removeChild(e,t){e.removeChild(t)},remove(e){e&&e.parentNode&&e.parentNode.removeChild(e)},setText(e,t){e.textContent=t},getAttribute:(e,t)=>e.getAttribute(t),setAttribute(e,t,n){e.setAttribute(t,n)},createPropertyAssignment:e=>e.nodeType===Node.TEXT_NODE?(0,i.CreateNodeValueAssignment)(e):(0,i.CreatePropertyAssignment)(e),createEventAssignment:e=>(0,s.CreateEventAssignment)(e),fireEvent(e,t,n){var o=new CustomEvent(t,n);e.dispatchEvent(o)},getFirstChild:e=>e.firstChild,getLastChild:e=>e.lastChild,getNextSibling:e=>e.nextSibling,replaceChildren(e,t){e.replaceChildren(...t)}}},774:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.div=function(e,t){return o.ElementNode.Create("div",null,e,t)},t.a=function(e,t){return o.ElementNode.Create("a",null,e,t)},t.ul=function(e,t){return o.ElementNode.Create("ul",null,e,t)},t.li=function(e,t){return o.ElementNode.Create("li",null,e,t)},t.br=function(e){return o.ElementNode.Create("br",null,e,null)},t.b=function(e,t){return o.ElementNode.Create("b",null,e,t)},t.span=function(e,t){return o.ElementNode.Create("span",null,e,t)},t.img=function(e){return o.ElementNode.Create("img",null,e,null)},t.video=function(e,t){return o.ElementNode.Create("video",null,e,t)},t.source=function(e){return o.ElementNode.Create("source",null,e,null)},t.input=function(e){return o.ElementNode.Create("input",null,e,null)},t.textarea=function(e){return o.ElementNode.Create("textarea",null,e,null)},t.select=function(e,t){return o.ElementNode.Create("select",null,e,t)},t.option=function(e,t){return o.ElementNode.Create("option",null,e,t)},t.h1=function(e,t){return o.ElementNode.Create("h1",null,e,t)},t.h2=function(e,t){return o.ElementNode.Create("h2",null,e,t)},t.h3=function(e,t){return o.ElementNode.Create("h3",null,e,t)},t.p=function(e,t){return o.ElementNode.Create("p",null,e,t)},t.style=function(e,t){return o.ElementNode.Create("style",null,e,t)},t.button=function(e,t){return o.ElementNode.Create("button",null,e,t)},t.table=function(e,t){return o.ElementNode.Create("table",null,e,t)},t.tbody=function(e,t){return o.ElementNode.Create("tbody",null,e,t)},t.th=function(e,t){return o.ElementNode.Create("th",null,e,t)},t.tr=function(e,t){return o.ElementNode.Create("tr",null,e,t)},t.td=function(e,t){return o.ElementNode.Create("td",null,e,t)};const o=n(413)},147:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),r(n(774),t),r(n(716),t),r(n(543),t),r(n(642),t)},716:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.svg=function(e,t){return o.ElementNode.Create("svg",r,e,t)},t.g=function(e,t){return o.ElementNode.Create("g",r,e,t)},t.circle=function(e,t){return o.ElementNode.Create("circle",r,e,t)};const o=n(413),r="http://www.w3.org/2000/svg"},819:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.wndw=void 0,t.wndw="undefined"!=typeof window?window:function(){try{return Object(function(){var e=new Error("Cannot find module 'jsdom'");throw e.code="MODULE_NOT_FOUND",e}())("").window}catch(e){return}}()},173:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BoundNode=void 0;const o=n(267),r=n(948);var i;function s(e,t){if(t)for(var n in t)o.NodeConfig.getAttribute(e.node,n)!==t[n]&&o.NodeConfig.setAttribute(e.node,n,t[n])}!function(e){e.Init=function(e){const t=e.nodeDef;if(t.props){const n=r.ObservableScope.Create(t.props);e.scopes??=[],e.scopes.push(n),e.assignProperties=o.NodeConfig.createPropertyAssignment(e.node),r.ObservableScope.Watch(n,(function(t){!function(e,t){e.setProperties||(e.setProperties=!0,o.NodeConfig.scheduleUpdate((function(){if(e.setProperties=!1,e.destroyed)return;const n=r.ObservableScope.Value(t);e.assignProperties(n)})))}(e,t)}));const i=r.ObservableScope.Value(n);e.assignProperties(i)}if(t.attrs){const n=r.ObservableScope.Create(t.attrs);e.scopes??=[],e.scopes.push(n),r.ObservableScope.Watch(n,(function(t){!function(e,t){e.setAttributes||(e.setAttributes=!0,o.NodeConfig.scheduleUpdate((function(){e.setAttributes=!1,e.destroyed||s(e,r.ObservableScope.Value(t))})))}(e,t)})),s(e,r.ObservableScope.Value(n))}if(t.on){const n=r.ObservableScope.Create(t.on);e.scopes??=[],e.scopes.push(n),e.assignEvents=o.NodeConfig.createEventAssignment(e.node),r.ObservableScope.Watch(n,(function(t){!function(e,t){e.setEvents||(e.setEvents=!0,o.NodeConfig.scheduleUpdate((function(){if(e.setEvents=!1,e.destroyed)return;const n=r.ObservableScope.Value(t);e.assignEvents(n)})))}(e,t)}));const i=r.ObservableScope.Value(n);e.assignEvents(i)}}}(i||(t.BoundNode=i={}))},342:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Component=void 0;const o=n(64),r=n(230),i=n(334),s=n(948);class c{nodeRef;componentEvents;scope;templates;get Injector(){return this.nodeRef.injector}get Destroyed(){return this.nodeRef.destroyed}get Scope(){return this.scope}get Data(){return this.scope.Value}get NodeRef(){return this.nodeRef}get Templates(){return this.templates}constructor(e,t,n,o){this.nodeRef=n,this.componentEvents=o,this.scope=new s.ObservableScope(e),this.templates=t||{}}Template(){return[]}Bound(){}Fire(e,t){var n=this.componentEvents&&this.componentEvents[e];n&&n(t)}Destroy(){this.scope.Destroy(),i.Destroy.All(this)}}t.Component=c,function(e){function t(e,t,n){return r.ComponentNode.ToFunction(e,t,n)}function n(e,t){o.NodeRef.Init(t);var n=o.NodeRef.Wrap(e);o.NodeRef.AddChild(n,t)}e.ToFunction=t,e.Register=function(e,o){const r=t(`${e}-component`,void 0,o);class i extends HTMLElement{constructor(){super(),n(this.attachShadow({mode:"open"}),r({}))}}customElements.define(e,i)},e.Attach=n}(c||(t.Component=c={}))},230:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ComponentNode=void 0;const o=n(173),r=n(64),i=n(267),s=n(342),c=n(880),u=n(334),a=n(224),l=n(496);var d;function f(e){const t=e.component.Template();return Array.isArray(t)?t:[t]}function p(e,t){(0,a.Thread)((function(){if(e.destroyed)return;const n=c.Injector.Scope(e.injector,f,e);(0,a.Schedule)((function(){r.NodeRef.InitAll(e,n)})),(0,a.Thread)((function(){if(e.destroyed)return;const o=l.List.Create();l.List.Add(o,{value:void 0,init:!0,nodes:n}),t?r.NodeRef.ReconcileChildren(e,o):i.NodeConfig.scheduleUpdate((function(){e.destroyed||r.NodeRef.ReconcileChildren(e,o)}))})),e.component.Bound!==s.Component.prototype.Bound&&(0,a.After)((function(){i.NodeConfig.scheduleUpdate((()=>setTimeout((()=>e.component.Bound()),0)))}))}))}!function(e){e.Fire=function(e,t){var n=this.componentEvents&&this.componentEvents[e];n&&n(t)},e.ToFunction=function(e,t,n){return function(o,i){return function(e,t,n,o,i){var s=r.NodeRef.Create(e,t,r.NodeRefType.ComponentNode);return s.nodeDef=n,s.constructor=o,s.templates=i,s}(e,t,o,n,i)}},e.Init=function(e){var t,n=e.nodeDef,s=n.on;n.on=null,e.component=new e.constructor(n.data,e.templates,e,s),t=e,u.PreReq.Has(t.component)?function(e){return new Promise((t=>{(0,a.Thread)((function(){const n=c.Injector.Scope(e.injector,u.PreReqTemplate.Get,e.component);(0,a.Schedule)((function(){e.destroyed||r.NodeRef.InitAll(e,n)})),(0,a.Thread)((function(){if(!e.destroyed){for(var o=0;o<n.length;o++)r.NodeRef.AddChild(e,n[o]);u.PreReq.All(e.component).then((function(){if(!e.destroyed){for(var o=0;o<n.length;o++)r.NodeRef.Destroy(n[o]);i.NodeConfig.scheduleUpdate((function(){if(!e.destroyed){for(var o=0;o<n.length;o++)r.NodeRef.DetachChild(e,n[o]);t()}}))}}))}}))}))}))}(t).then((function(){p(t,!1)})):p(t,!0),o.BoundNode.Init(e)}}(d||(t.ComponentNode=d={}))},413:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ElementNode=void 0;const o=n(948),r=n(880),i=n(496),s=n(224),c=n(173),u=n(267),a=n(64);var l;!function(e){e.Create=function(e,t,n,o){var r=a.NodeRef.Create(e,t,a.NodeRefType.ElementNode);return r.nodeDef=n,r.childrenFunc=o,r},e.Init=function(e){if(e.childrenFunc){var t=e.nodeDef;if(t.data){const n=o.ObservableScope.Create(t.data);e.childNodes=new Set,e.scopes??=[],e.scopes.push(n),o.ObservableScope.Watch(n,(function(){!function(e,t){e.setData||(e.setData=!0,u.NodeConfig.scheduleUpdate((function(){e.setData=!1,e.destroyed||h(e,f(t))})))}(e,n)})),h(e,f(n),!0)}else n=e,(0,s.Synch)((function(){const e=r.Injector.Scope(n.injector,v,n.childrenFunc,!0);e.length>0&&(a.NodeRef.InitAll(n,e),(0,s.Thread)((function(){if(n.destroyed)return;const t=i.List.Create();i.List.Add(t,{value:null,init:!0,nodes:e}),a.NodeRef.ReconcileChildren(n,t)})))}))}var n;c.BoundNode.Init(e)}}(l||(t.ElementNode=l={}));const d=[];function f(e){var t=o.ObservableScope.Value(e);return t?(Array.isArray(t)||(t=[t]),t):d}function p(e){return e.value}function h(e,t,n=!1){(0,s.Synch)((function(){!function(e,t){const n=i.List.Create(),o=i.List.Create(),c=e.nodeList,u=c&&i.List.ToNodeMap(c,p);for(let s=0;s<t.length;s++){let a;if(u){const e=u.get(t[s]);if(e){let t=e.length-1;for(;t>=0&&!a;t--)a=e[t],e[t]=null}}a?(i.List.RemoveNode(c,a),i.List.AddNode(n,a),a.data.init||i.List.Add(o,a.data)):(a=i.List.Add(n,{value:t[s],init:!1,nodes:r.Injector.Scope(e.injector,v,e.childrenFunc,t[s])}),i.List.Add(o,a.data))}let l=o.head;for(;l;){const t=l.data;(0,s.Schedule)((function(){e.destroyed||0===n.size||(a.NodeRef.InitAll(e,t.nodes),t.init=!0)})),l=l.next}if(c){let t=c.head;for(;t;){const n=t.data;t=t.next;for(let t=0;t<n.nodes.length;t++)e.childNodes.delete(n.nodes[t]);a.NodeRef.DestroyAll(n.nodes)}i.List.Clear(c)}e.nodeList=n}(e,t);const o=e.nodeList,c=o.size;(0,s.Thread)((function(t){e.destroyed||(n||!t?a.NodeRef.ReconcileChildren(e,o):u.NodeConfig.scheduleUpdate((function(){e.destroyed||o.size!==c||a.NodeRef.ReconcileChildren(e,o)})))}))}))}function v(e,t){const n=e(t);if("string"==typeof n||!n){const n=a.NodeRef.Create("text",null,a.NodeRefType.BoundNode);return n.nodeDef={props:function(){return{nodeValue:e(t)}}},[n]}return Array.isArray(n)?n:[n]}},267:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.NodeConfig=void 0;const o=n(641);t.NodeConfig=o.DOMNodeConfig},64:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.NodeRef=t.NodeRefType=void 0;const o=n(267),r=n(880),i=n(173),s=n(413),c=n(230),u=n(890);var a,l;!function(e){e[e.NodeRef=0]="NodeRef",e[e.BoundNode=1]="BoundNode",e[e.ElementNode=2]="ElementNode",e[e.ComponentNode=3]="ComponentNode"}(a||(t.NodeRefType=a={})),function(e){function t(e,t,n){switch(n){case a.NodeRef:return{node:null,nodeType:e,nodeNamespace:t,type:a.NodeRef,injector:r.Injector.Current()||new r.Injector,parent:null,childNodes:null,destroyed:!1};case a.BoundNode:return{node:null,nodeDef:null,nodeType:e,nodeNamespace:t,type:a.BoundNode,injector:r.Injector.Current()||new r.Injector,parent:null,childNodes:null,destroyed:!1,lastEvents:null,setProperties:!1,assignProperties:null,assignEvents:null,setAttributes:!1,setEvents:!1,scopes:null};case a.ElementNode:return{node:null,nodeDef:null,nodeType:e,nodeNamespace:t,type:a.ElementNode,injector:r.Injector.Current()||new r.Injector,parent:null,childNodes:null,destroyed:!1,lastEvents:null,setProperties:!1,assignProperties:null,assignEvents:null,setAttributes:!1,setEvents:!1,childrenFunc:null,nodeList:null,setData:!1,scopes:null};case a.ComponentNode:return{node:null,nodeDef:null,nodeType:e,nodeNamespace:t,type:a.ComponentNode,injector:r.Injector.Current()||new r.Injector,parent:null,childNodes:null,destroyed:!1,setProperties:!1,assignProperties:null,assignEvents:null,setAttributes:!1,setEvents:!1,component:null,componentEvents:null,scopes:null}}}function n(e){if(!e.node)switch(e.node="text"===e.nodeType?o.NodeConfig.createTextNode():o.NodeConfig.createNode(e.nodeType,e.nodeNamespace),e.childNodes="text"!==e.nodeType?[]:null,e.type){case a.BoundNode:i.BoundNode.Init(e);break;case a.ElementNode:s.ElementNode.Init(e);break;case a.ComponentNode:c.ComponentNode.Init(e)}}function l(e,t){Array.isArray(e.childNodes)?e.childNodes.push(t):e.childNodes.add(t)}function d(e){if(!e.destroyed){if(e.destroyed=!0,Array.isArray(e.childNodes))for(let t=0;t<e.childNodes.length;t++)d(e.childNodes[t]);else e.childNodes?.forEach(d);switch(e.type){case a.ComponentNode:e.component?.Destroy();case a.ElementNode:e.assignEvents?.(null);case a.BoundNode:for(let t=0;e.scopes&&t<e.scopes.length;t++)u.ObservableScope.Destroy(e.scopes[t])}e.node=null}}e.Wrap=function(e){var n=t(null,null,a.NodeRef);return n.node=e,n.childNodes=new Set,n},e.Create=t,e.Init=n,e.InitAll=function(e,t){for(var o=0;o<t.length;o++)t[o].parent=e,l(e,t[o]),n(t[o])},e.AddChild=function(e,t){t.parent=e,l(e,t),o.NodeConfig.addChild(e.node,t.node)},e.AddChildAfter=function(e,t,n){if(t&&t.parent!==e)throw"currentChild is not valid";n.parent=e,l(e,n),o.NodeConfig.addChildAfter(e.node,t&&t.node,n.node)},e.ReconcileChildren=function(e,t){const n=e.node;if(0===t.size)return void o.NodeConfig.replaceChildren(n,[]);let r,i=t?.head,s=!1,c=!1;for(;i;){for(let e=0;e<i.data.nodes.length;e++){const t=r?o.NodeConfig.getNextSibling(r):o.NodeConfig.getFirstChild(n),u=i.data.nodes[e].node;t!==u?(o.NodeConfig.addChildBefore(n,t,u),!c&&s&&t&&o.NodeConfig.removeChild(n,t),c=s,s=!0):(s=!1,c=!1),r=u}i=i.next}let u=o.NodeConfig.getLastChild(n);for(;r&&r!==u;)o.NodeConfig.removeChild(n,u),u=o.NodeConfig.getLastChild(n)},e.DetachChild=function(e,t){!Array.isArray(e.childNodes)&&e.childNodes.delete(t)&&(o.NodeConfig.removeChild(e.node,t.node),t.parent=null)},e.Destroy=d,e.DestroyAll=function(e){for(let t=0;t<e.length;t++)d(e[t])}}(l||(t.NodeRef=l={}))},377:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DiffAsync=void 0;const o=n(521),r=n(547);t.DiffAsync=class{workerQueue;constructor(e){this.workerQueue=new o.WorkerQueue(r.DiffWorker.Create()),this.workerQueue.Push({method:"create",arguments:e?[e.toString()]:[]})}async DiffPath(e,t){return await this.workerQueue.Push({method:"diffpath",arguments:[e,t]})}async DiffBatch(e){return await this.workerQueue.Push({method:"diffbatch",arguments:[e]})}Destroy(){this.workerQueue.Destroy()}}},606:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DiffSync=void 0;const o=n(874),r=n(747),i=(0,n(285).DiffTreeFactory)(o.JsonDiffFactory);t.DiffSync=class{diffTree;constructor(e){this.diffTree=new i(e)}DiffPath(e,t){return t=(0,r.JsonDeepClone)(t),this.diffTree.DiffPath(e,t)}DiffBatch(e){return e=(0,r.JsonDeepClone)(e),this.diffTree.DiffBatch(e)}}},285:(__unused_webpack_module,exports)=>{function DiffTreeFactory(jsonDiffFactory,worker){const{JsonDiff,JsonType}=jsonDiffFactory(),ctx=this;if(ctx&&worker){let diffTree=null;ctx.onmessage=function(event){const data=event.data;switch(data.method){case"create":{const keyFunc=data.arguments[0]?eval(data.arguments[0]):void 0;diffTree=new DiffTree(keyFunc),ctx.postMessage(null);break}case"diffpath":{const e=diffTree.DiffPath(data.arguments[0],data.arguments[1]);ctx.postMessage(e);break}case"diffbatch":{const e=diffTree.DiffBatch(data.arguments[0]);ctx.postMessage(e);break}case"getpath":{const e=diffTree.GetPath(data.arguments[0]);ctx.postMessage(e);break}}}}function FlattenValue(e,t,n){switch(JsonType(t)){case"array":const o=t;for(let t=0;t<o.length;t++)FlattenValue(e,o[t],n);break;case"object":const r=t,i=n(r);i&&(e[i]=r);const s=Object.keys(r);for(let t=0;t<s.length;t++)FlattenValue(e,r[s[t]],n)}return e}function GetPathValue(e,t){if(""===t)return e;const n=t.split(".");let o=e;for(let e=0;e<n.length;e++)o=o[n[e]];return o}function SetPathValue(e,t,n){if(0===t.length)return;let o=e,r=0;for(;r<t.length-1;r++)o=o[t[r]];o[t[r]]=n}function ResolveKeyPath(e,t,n){const o=t.split("."),r=new Array(o.length-1);let i=e;for(let e=0;e<o.length-1;e++)i=i[o[e]],r[e]=i;let s=r.length-1;for(;s>=0&&("object"!==JsonType(r[s])||!n(r[s]));s--);if(s>=0){const e=n(r[s]);return o.splice(0,s+1,e),o.join(".")}return t}function UpdateSource(e,t,n,o){const r=[];if(o){const i=ResolveKeyPath(e,t,o);if(i!==t){const t=UpdateSource(e,i,n,o);r.push(...t)}}const i=GetPathValue(e,t);if(JsonDiff(n,i,t,r),o){let t={};t=FlattenValue(t,n,o);const i=Object.keys(t);for(let n=0;n<i.length;n++)JsonDiff(t[i[n]],e[i[n]],i[n],r)}const s=r.filter((e=>void 0!==e.value));for(let t=0;t<s.length;t++)SetPathValue(e,s[t].path,s[t].value);return r}class DiffTree{keyFunc;rootState={};constructor(e){this.keyFunc=e}DiffBatch(e){return e.map((({path:e,value:t})=>this.DiffPath(e,t))).flat(1)}DiffPath(e,t){return UpdateSource(this.rootState,e,t,this.keyFunc)}GetPath(e){return GetPathValue(this.rootState,e)}}return DiffTree}Object.defineProperty(exports,"__esModule",{value:!0}),exports.DiffTreeFactory=DiffTreeFactory},547:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DiffWorker=void 0;const o=n(874),r=n(285);var i;!function(e){let t=null,n=null;"undefined"!=typeof Worker&&(t=Worker,n=URL.createObjectURL(new Blob([`(${r.DiffTreeFactory}).call(this, (${o.JsonDiffFactory}), true)`]))),e.Create=function(){if(!t)throw"Worker is not available";return new t(n)}}(i||(t.DiffWorker=i={}))},521:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WorkerQueue=void 0;const o=n(496);t.WorkerQueue=class{callbacks;worker;constructor(e){this.worker=e,this.callbacks=o.List.Create(),this.worker.onerror=e=>{const t=o.List.Pop(this.callbacks);t&&t(null,e)},this.worker.onmessage=e=>{const t=o.List.Pop(this.callbacks);t&&t(e.data)}}Push(e){return new Promise(((t,n)=>{o.List.Add(this.callbacks,(function(e,o){o?n(o):t(e)})),this.worker.postMessage(e)}))}Destroy(){this.worker.terminate()}}},501:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Store=void 0;const o=n(874),r=n(318);t.Store=class{keyFunc;rootMap=new Map;createNode;constructor(e){this.keyFunc=e,this.createNode=r.ObservableNode.CreateFactory((t=>{const n=e(t);if(void 0===n)return;const o=this.rootMap.get(n);if(void 0===o)throw`No root object found for key: ${n}`;return o[r.GET_OBSERVABLE_VALUE][n]}))}Get(e,t){let n=this.rootMap.get(e);return void 0===n&&(n=this.createNode({[e]:t}),this.rootMap.set(e,n)),n[e]}UpdateRootMap(e){for(let t=0;t<e.length;){const n=e[t].path[0],o=t;for(;t<e.length&&e[t].path[0]===n;)t++;const r=e.slice(o,t);this.UpdateRootObject(r[0].path[0],r)}}UpdateRootObject(e,t){const n=this.rootMap.get(e);if(void 0!==n)r.ObservableNode.EnableDiff(!0),(0,o.ApplyDiff)(n,t),r.ObservableNode.EnableDiff(!1);else{if(t.length>1||t[0].path.length>1)throw`Unable to initialize root path ${e} with ${t.length} results and initial path ${t[0].path}`;const n=this.createNode({[e]:t[0].value});this.rootMap.set(e,n)}}}},161:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.StoreAsync=void 0;const o=n(263),r=n(624),i=n(377),s=n(318),c=n(501);class u extends c.Store{diff;queue=new o.AsyncQueue;constructor(e){super(e),this.diff=new i.DiffAsync(e)}async Write(e,t){await this.queue.Next((async()=>{if(!(t=t||this.keyFunc(e)))throw"No key provided for data";const n=await this.diff.DiffPath(t,e);this.UpdateRootMap(n)}))}async Patch(e,t){await this.queue.Next((async()=>{const n=this.Get(e);if(void 0===n)throw"Unable to patch undefined value";const o=n.toJSON(),i=(0,r.JsonMerge)(o,t),s=await this.diff.DiffPath(e,i);this.UpdateRootMap(s)}))}async Push(e,...t){await this.queue.Next((async()=>{const n=this.Get(e),o=t.map((function(t,o){return{path:`${e}.${n.length+o}`,value:t}})),r=await this.diff.DiffBatch(o);this.UpdateRootMap(r)}))}async Splice(e,t,n,...o){return await this.queue.Next((async()=>{const r=this.Get(e)[s.GET_OBSERVABLE_VALUE].slice(),i=r.splice(t,n,...o),c=await this.diff.DiffPath(e,r);return this.UpdateRootMap(c),i}))}Destroy(){this.queue.Stop(),this.diff.Destroy()}}t.StoreAsync=u},961:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.StoreSync=void 0;const o=n(624),r=n(606),i=n(318),s=n(501);class c extends s.Store{diff;constructor(e){super(e),this.diff=new r.DiffSync(e)}Write(e,t){if(!(t=t||this.keyFunc(e)))throw"No key provided for data";const n=this.diff.DiffPath(t,e);this.UpdateRootMap(n)}Patch(e,t){const n=this.Get(e);if(void 0===n)throw"Unable to patch undefined value";const r=n.toJSON(),i=(0,o.JsonMerge)(r,t),s=this.diff.DiffPath(e,i);this.UpdateRootMap(s)}Push(e,...t){const n=this.Get(e),o=t.map((function(t,o){return{path:`${e}.${n.length+o}`,value:t}})),r=this.diff.DiffBatch(o);this.UpdateRootMap(r)}Splice(e,t,n,...o){const r=this.Get(e)[i.GET_OBSERVABLE_VALUE].slice(),s=r.splice(t,n,...o),c=this.diff.DiffPath(e,r);return this.UpdateRootMap(c),s}}t.StoreSync=c},318:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ObservableNode=t.GET_TO_JSON=t.GET_OBSERVABLE_VALUE=t.IS_OBSERVABLE_NODE=void 0;const o=n(874),r=n(130),i=n(948);t.IS_OBSERVABLE_NODE="____isObservableNode",t.GET_OBSERVABLE_VALUE="____getObservableValue",t.GET_TO_JSON="toJSON";const s=new WeakMap,c=new WeakMap;function u(e,t){return{...Object.getOwnPropertyDescriptor(e,t),configurable:!0}}function a(e,t){return{...Object.getOwnPropertyDescriptor(e,t),configurable:!0}}function l(e,t){return Object.hasOwn(e,t)}function d(e,t){return Object.hasOwn(e,t)}function f(e){return Object.keys(e)}function p(e){return Object.keys(e)}function h(e){const n=(0,r.JsonType)(e);if("value"===n)return e;if(!0===e[t.IS_OBSERVABLE_NODE])return e[t.GET_OBSERVABLE_VALUE];switch(n){case"object":{const t=Object.keys(e);for(let n=0;n<t.length;n++)e[t[n]]=h(e[t[n]])}case"array":for(let t=0;t<e.length;t++)e[t]=h(e[t])}return e}let v=!1;function b(e){function n(e){return C(e=h(e))}const b=void 0!==e?function t(o){switch((0,r.JsonType)(o)){case"array":return n(o).map(t);case"object":{const r=e(o)??o,i=n(r),s=Object.keys(i),c={};for(let e=0;e<s.length;e++)c[s[e]]=t(r[s[e]]);return c}default:return o}}:function(e){return e},y=void 0!==e;function m(e){const t=i.ObservableScope.Create((()=>e)),n=new Proxy(e,{get:O,set:_,has:l,ownKeys:f,getOwnPropertyDescriptor:u});return c.set(e,t),s.set(e,n),n}function g(e,n,o){if(y&&!v)throw"Object is readonly";if(n===t.IS_OBSERVABLE_NODE)throw`Cannot assign read-only property: ${t.IS_OBSERVABLE_NODE}`;o=h(o),e[n]=o;const r=c.get(e);return i.ObservableScope.Update(r),!0}function N(e,n){if(n===t.IS_OBSERVABLE_NODE)return!0;if(y&&!v)switch(n){case"push":case"unshift":case"splice":case"pop":case"shift":case"sort":case"reverse":if(y&&!v)throw"Object is readonly"}const o=c.get(e);switch(e=i.ObservableScope.Value(o),n){case t.GET_TO_JSON:return function(){return b(e)};case t.GET_OBSERVABLE_VALUE:return e;default:{const t=e[n];return"symbol"==typeof n?t:"function"==typeof t?function(...t){const r=e.slice();for(let e=0;e<r.length;e++)r[e]=s.get(r[e])??C(r[e]);let c=r[n](...t);switch(n){case"push":case"unshift":case"splice":case"pop":case"shift":case"sort":case"reverse":e.length=r.length;for(let t=0;t<r.length;t++)e[t]=h(r[t]);i.ObservableScope.Update(o)}return c}:C(t)}}}function _(e,n,r){if(y&&!v)throw"Object is readonly";if(n===t.IS_OBSERVABLE_NODE)throw`Cannot assign read-only property: ${t.IS_OBSERVABLE_NODE}`;const u=c.get(e);if(r=h(r),v)e[n]=r,i.ObservableScope.Update(u);else{v=!0;const t=(0,o.JsonDiff)(r,e[n]);for(let o=0;o<t.length;o++)if(0===t[o].path.length)s.get(e)[n]=t[o].value;else{const r=t[o].path;let i=e[n],c=0;for(;c<r.length-1;c++)i=i[r[c]];(s.get(i)??i)[r[c]]=t[o].value}v=!1}return!0}function O(e,n){if(n===t.IS_OBSERVABLE_NODE)return!0;const o=c.get(e);switch(e=i.ObservableScope.Value(o),n){case t.GET_TO_JSON:return function(){return b(e)};case t.GET_OBSERVABLE_VALUE:return e;default:{const t=e[n];return"symbol"==typeof n?t:C(t)}}}function C(t){switch((0,r.JsonType)(t)){case"object":{let n=s.get(t)??m(t);if(void 0!==e){const t=e(n);void 0!==t&&(n=s.get(t)??m(t))}return n}case"array":{const e=s.get(t)??function(e){const t=i.ObservableScope.Create((()=>e)),n=new Proxy(e,{get:N,set:g,has:d,ownKeys:p,getOwnPropertyDescriptor:a});return c.set(e,t),s.set(e,n),n}(t);return i.ObservableScope.Touch(c.get(t)),e}default:return t}}return n}const y=b();var m;!function(e){e.Create=function(e){return y(e)},e.EnableDiff=function(e){v=e},e.CreateFactory=function(e){return b(e)}}(m||(t.ObservableNode=m={}))},948:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ObservableScope=t.ObservableScopeWrapper=t.ObservableScopeValue=void 0;const o=n(959),r=n(116);class i{scope;get Value(){return c.Value(this.scope)}constructor(e){this.scope=e}}t.ObservableScopeValue=i;class s extends i{scopeEmitter;constructor(e){super(e),e.emitter&&(this.scopeEmitter=r.Emitter.Create(),r.Emitter.On(e.emitter,(()=>r.Emitter.Emit(this.scopeEmitter,this))))}Scope(e){return new c((()=>e(this.Value)))}Watch(e){this.scopeEmitter&&(r.Emitter.On(this.scopeEmitter,e),e(this))}Unwatch(e){this.scopeEmitter&&r.Emitter.Remove(this.scopeEmitter,e)}Destroy(){d(this.scope),this.scopeEmitter&&r.Emitter.Clear(this.scopeEmitter)}}t.ObservableScopeWrapper=s;class c extends s{constructor(e){super(c.Create(e))}}t.ObservableScope=c;let u=null,a=!1;function l(e){return!e||e.dirty||e.destroyed?e.destroyed:(e.dirty=!!e.getFunction,r.Emitter.Emit(e.emitter,e),!1)}function d(e){e&&(e.emitters=null,e.emitter=null,e.getFunction=null,e.setCallback=null,e.destroyed=!0)}!function(e){function t(e){a&&e&&(u??=new Set,u.add(e))}e.Create=function(e){const t="function"==typeof e,n={getFunction:t?e:null,value:t?null:e,async:!!t&&"AsyncFunction"===e[Symbol.toStringTag],dirty:t,emitter:t?r.Emitter.Create():null,emitters:[],destroyed:!1,setCallback:t?function(){return l(n)}:null};return n},e.Register=t,e.Value=function(e){if(e)return t(e.emitter),function(e){if(!e.dirty)return;e.dirty=!1;let t=null;const n=e.getFunction&&function(n){const o=u;u=null;const r=a;a=!0,t=e.getFunction();const i=u;return u=o,a=r,i}();e.async?Promise.resolve(t).then((t=>{e.value=t,r.Emitter.Emit(e.emitter,e)})):e.value=t,function(e,t){if(null===t){for(let t=0;t<e.emitters.length;t++)r.Emitter.Remove(e.emitters[t],e.setCallback);return void(e.emitters=[])}let n=!1;for(let o=0;o<e.emitters.length;o++)t.delete(e.emitters[o])||(r.Emitter.Remove(e.emitters[o],e.setCallback),e.emitters[o]=null,n=!0);const i=e.emitters.length;e.emitters.push(...t);for(let t=i;t<e.emitters.length;t++)r.Emitter.On(e.emitters[t],e.setCallback);n&&(0,o.RemoveNulls)(e.emitters)}(e,n)}(e),e.value},e.Watching=function(){return a},e.Touch=function(e){e&&e.emitter&&t(e.emitter)},e.Watch=function(e,t){e&&e.emitter&&r.Emitter.On(e.emitter,t)},e.Unwatch=function(e,t){e&&e.emitter&&r.Emitter.Remove(e.emitter,t)},e.Update=function(e){l(e)},e.Destroy=function(e){d(e)}}(c||(t.ObservableScope=c={}))},890:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ObservableNode=t.ObservableScope=t.StoreAsync=t.StoreSync=void 0;var o=n(961);Object.defineProperty(t,"StoreSync",{enumerable:!0,get:function(){return o.StoreSync}});var r=n(161);Object.defineProperty(t,"StoreAsync",{enumerable:!0,get:function(){return r.StoreAsync}});var i=n(948);Object.defineProperty(t,"ObservableScope",{enumerable:!0,get:function(){return i.ObservableScope}});var s=n(318);Object.defineProperty(t,"ObservableNode",{enumerable:!0,get:function(){return s.ObservableNode}})},20:(e,t)=>{var n,o;Object.defineProperty(t,"__esModule",{value:!0}),t.Animation=t.AnimationType=void 0,function(e){e.EaseIn=function*(e){for(var t=1/e,n=t,o=0;o<e;o++,n+=t)yield(1-n)*(1-n)*(1-n)*0+3*(1-n)*(1-n)*n*1+3*(1-n)*n*n*1+n*n*n*1},e.Linear=function*(e){for(var t=1/e,n=t,o=0;o<e;o++,n+=t)yield n}}(n||(n={})),function(e){e[e.Linear=0]="Linear",e[e.EaseIn=1]="EaseIn"}(o||(t.AnimationType=o={})),t.Animation=class{type;frameCount;frameTimings;update;animationTimeouts;running;start;end;enabled;get Running(){return this.running}get Start(){return this.start}get End(){return this.end}get Enabled(){return this.enabled}constructor(e,t,n){this.running=!1,this.start=null,this.end=null,this.enabled=!0,this.type=e,this.frameCount=Math.ceil(t/1e3*60),this.frameTimings=[];for(var o=t/this.frameCount,r=0;r<this.frameCount;r++)this.frameTimings[r]=(r+1)*o;this.update=n,this.animationTimeouts=[]}Animate(e,t){if(this.enabled){var r=t-e;if(0!==r)return this.Cancel(),this.running=!0,this.start=e,this.end=t,new Promise((t=>{var i=n[o[this.type]],s=0;for(var c of i(this.frameCount)){var u=c*r+e;this.SetTimeout(s,u,s===this.frameCount-1?t:null),s++}})).then((()=>{this.running=!1,this.start=null,this.end=null}))}}Disable(){this.Cancel(),this.enabled=!1}Enable(){this.enabled=!0}Cancel(){for(var e=0;e<this.animationTimeouts.length;e++)clearTimeout(this.animationTimeouts[e]);this.running=!1,this.start=null,this.end=null}Destroy(){this.Cancel()}SetTimeout(e,t,n){this.animationTimeouts[e]=setTimeout((()=>{this.update(t),n&&n()}),this.frameTimings[e])}}},959:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RemoveNulls=function(e,t=0){let n=t;for(;n<e.length&&null!==e[n];n++);let o=n+1;for(;o<e.length&&null===e[o];o++);for(;o<e.length;)for(e[n]=e[o],n++,o++;o<e.length&&null===e[o];o++);e.splice(n)}},263:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncQueue=void 0;const o=n(496);t.AsyncQueue=class{running=!1;queue=o.List.Create();Next(e){const t=new Promise(((t,n)=>{o.List.Add(this.queue,(async function(){try{const n=await e();t(n)}catch(e){n(e)}}))}));return this.Start(),t}Stop(){o.List.Clear(this.queue)}Start(){this.running||(this.running=!0,this.ExecuteQueue())}async ExecuteQueue(){const e=o.List.Pop(this.queue);null!==e?(await e(),this.ExecuteQueue()):this.running=!1}}},334:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.State=function(){return a},t.Value=function(){return l},t.StateAsync=function(e,t){return f.bind(null,e,t??d)},t.Scope=function(){return p},t.Inject=function(e){return h.bind(null,e)},t.Destroy=v,t.PreReqTemplate=y,t.PreReq=g;const o=n(948),r=n(318),i=n(890),s=new WeakMap,c=new WeakMap;function u(e){const t=s.get(e)??new Map;return s.set(e,t),t}function a(e,t){const n=`StateDecorator_${t}`;return{configurable:!1,enumerable:!0,get:function(){return u(this).get(n)},set:function(e){const t=u(this),o=t.get(n);if(o){const t=Object.keys(e);for(let n=0;n<t.length;n++)o[t[n]]=e[t[n]]}else t.set(n,r.ObservableNode.Create(e))}}}function l(e,t){const n=`ValueDecorator_${t}`;return{configurable:!1,enumerable:!0,get:function(){const e=u(this).get(n);return o.ObservableScope.Value(e)},set:function(e){const t=function(e){const t=c.get(e)??new Map;return c.set(e,t),t}(this);t.set(n,e);const r=u(this);let i=r.get(n);void 0===i?(i=o.ObservableScope.Create((function(){return t.get(n)})),r.set(n,i)):o.ObservableScope.Update(i)}}}function d(){}function f(e,t,n,o){const r=`ValueDecorator_${o}`;return{configurable:!1,enumerable:!0,get:function(){const t=u(this).get(r);return t?.Get("root",e)??e},set:function(e){const n=u(this);let o=n.get(r);void 0===o&&(o=new i.StoreAsync(t),n.set(r,o)),o.Write(e,"root")}}}function p(e,t,n){if(!n||!n.get)throw"Scope decorator requires a getter";if(n&&n.set)throw"Scope decorator does not support setters";const r=`ScopeDecorator_${t}`;return b(e,r),{configurable:!1,enumerable:!0,get:function(){var e=u(this),t=e.get(r);if(!t){const i=n.get.bind(this);t=new o.ObservableScope(i),e.set(r,t)}return t.Value}}}function h(e,t,n,o){return{configurable:!1,enumerable:!0,get:function(){return this.Injector.Get(e)},set:function(t){this.Injector.Set(e,t)}}}function v(){return b}function b(e,t){var n=e;n.DestroyDecorator_Destroys=n.DestroyDecorator_Destroys||[],n.DestroyDecorator_Destroys.push(t)}function y(e){return m.bind(null,e)}function m(e,t){t.prototype.PreReqTemplateDecorator_Template=e}function g(){return N}function N(e,t){var n=e;n.PreReqDecorator_PreReqs=n.PreReqDecorator_PreReqs||[],n.PreReqDecorator_PreReqs.push(t)}!function(e){e.All=function(e){}}(v||(t.Destroy=v={})),function(e){e.Get=function(e){var t=e&&e.PreReqTemplateDecorator_Template,n=t?t():[];return Array.isArray(n)||(n=[n]),n}}(y||(t.PreReqTemplate=y={})),function(e){function t(e){return e&&e.PreReqDecorator_PreReqs||[]}e.All=function(e){var n=t(e).map((t=>e[t]&&e[t].Init||Promise.resolve()));return Promise.all(n)},e.Has=function(e){return t(e).length>0}}(g||(t.PreReq=g={}))},116:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Emitter=void 0;const o=n(959);var r;!function(e){e.Create=function(){return[]},e.On=function(e,t){e.push(t)},e.Emit=function(e,...t){let n=!1;for(let o=0;o<e.length;o++){const r=e[o]?.(...t);!0===r&&(n=!0,e[o]=null)}n&&(0,o.RemoveNulls)(e)},e.Remove=function(e,t){const n=e.indexOf(t);n>=0&&(e[n]=null,(0,o.RemoveNulls)(e,n))},e.Clear=function(e){e.splice(0)}}(r||(t.Emitter=r={}))},586:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),r(n(334),t),r(n(20),t)},880:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Injector=void 0;class n{parent;typeMap;constructor(){this.parent=n.Current(),this.typeMap=new Map}Get(e){if(0===this.typeMap.size)return this.parent&&this.parent.Get(e);var t=this.typeMap.get(e);return t||(t=this.parent&&this.parent.Get(e)),t}Set(e,t){this.typeMap.set(e,t)}}t.Injector=n,function(e){var t=null;function n(){return t}e.Current=n,e.Scope=function(e,o,...r){var i=n();t=e;const s=o(...r);return t=i,s}}(n||(t.Injector=n={}))},874:(e,t)=>{var n;function o(){const e=Object.getPrototypeOf({});function t(t){return null==t?"value":Array.isArray(t)?"array":e===Object.getPrototypeOf(t)?"object":"value"}function n(e,o,r,i){if(o===r)return!1;const s=t(o),c=t(r),u=i.length;let a=!0;if(s===c)switch(s){case"array":a=function(e,t,o,r){let i=!0;if(t.length!==o.length&&r.push({path:e.concat("length"),value:t.length}),t.length>0||o.length>0)for(let s=0;s<t.length;s++){const c=e.concat(s),u=o[s];i=n(c,t[s],u,r)&&i}else i=!1;return i}(e,o,r,i);break;case"object":a=function(e,t,o,r){const i=Object.keys(t).sort(),s=Object.keys(o).sort();if(0===i.length&&0===s.length)return!1;if(i.length<s.length)return!0;let c=0,u=0;for(;c<i.length;){const a=e.concat(i[c]);u<s.length&&i[c]===s[u]?(n(a,t[i[c]],o[s[u]],r),u++):void 0!==t[i[c]]&&r.push({path:a,value:t[i[c]]}),c++}return u<s.length}(e,o,r,i)}return!!a&&(i.splice(u),i.push({path:e,value:o}),!0)}return{JsonDiff:function(e,t,o,r){const i=r??[];return n(o?o.split("."):[],e,t,i),i},JsonType:t}}Object.defineProperty(t,"__esModule",{value:!0}),t.JsonType=t.JsonDiff=void 0,t.ApplyDiff=function(e,t){const n=[["",e]];for(let e=0;e<t.length;e++){const{path:o,value:r}=t[e];let i=0;for(;i<o.length-1;i++){const e=o[i],t=n[i][1],r=i+1;if(n.length<=r)n.push([e,t[e]]);else if(n[r][0]!==e){n[r][0]=e,n[r][1]=t[e];const o=r+1;o<n.length&&(n[o][0]=null)}}n[i][1][o[i]]=r}},t.JsonDiffFactory=o,n=o(),t.JsonDiff=n.JsonDiff,t.JsonType=n.JsonType},747:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.JsonDeepClone=function e(t){switch((0,o.JsonType)(t)){case"array":return t.map(e);case"object":{const n={},o=Object.keys(t);for(let r=0;r<o.length;r++)n[o[r]]=e(t[o[r]]);return n}default:return t}};const o=n(130)},624:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.JsonMerge=function e(t,n){if(void 0===n)return t;const r=(0,o.JsonType)(t);if(r!==(0,o.JsonType)(n))return n;switch(r){case"array":{const o=n;return t.map((function(t,n){return e(t,o[n])}))}case"object":{const o=t,r=n,i=Object.keys(o),s={};for(let t=0;t<i.length;t++)s[i[t]]=e(o[i[t]],r[i[t]]);return s}default:return n}};const o=n(130)},130:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.JsonType=void 0;var o=n(874);Object.defineProperty(t,"JsonType",{enumerable:!0,get:function(){return o.JsonType}})},496:(e,t)=>{var n;Object.defineProperty(t,"__esModule",{value:!0}),t.List=void 0,function(e){function t(e,t){return 0===e.size?(e.head=t,e.tail=t,e.size=1):(t.previous=e.tail,e.tail.next=t,e.tail=t,e.size++),t}e.Create=function(){return{head:null,tail:null,size:0}},e.Clear=function(e){e.head=null,e.tail=null,e.size=0},e.Push=function(e,t){const n={previous:null,next:null,data:t};return 0===e.size?(e.head=n,e.tail=n,e.size=1):(n.next=e.head,e.head.previous=n,e.head=n,e.size++),n},e.Pop=function(e){if(0===e.size)return null;const t=e.head;return e.head=t.next,e.head&&(e.head.previous=null),e.size--,0===e.size&&(e.tail=null),t.data},e.Add=function(e,n){return t(e,{previous:null,next:null,data:n})},e.AddNode=t,e.AddBefore=function(t,n,o){if(!n)return e.Add(t,o);const r={previous:null,next:null,data:o},i=n.previous;return r.next=n,n.previous=r,t.head===n&&(t.head=r),i&&(i.next=r,r.previous=i),t.size++,r},e.AddAfter=function(t,n,o){if(!n)return e.Push(t,o);const r={previous:null,next:null,data:o},i=n.next;return n.next=r,r.previous=n,t.tail===n&&(t.tail=r),i&&(i.previous=r,r.next=i),t.size++,r},e.Remove=function(e){if(0===e.size)return null;var t=e.tail;return e.tail=t.previous,e.tail&&(e.tail.next=null),e.size--,0===e.size&&(e.head=null),t.data},e.RemoveNode=function(e,t){if(e.head===t)e.head=t.next;else if(e.tail===t)e.tail=t.previous;else{const e=t.previous,n=t.next;e.next=n,n.previous=e}t.next=t.previous=null,e.size--,e.size>0&&(e.head.previous=e.tail.next=null)},e.ForEach=function(e,t){let n=e.head;for(;n;)t(n.data),n=n.next},e.ToNodeMap=function(e,t){const n=new Map;let o=e.head;for(;o;){const e=t(o.data),r=n.get(e)||[o];r[0]!==o?r.push(o):n.set(e,r),o=o.next}return n}}(n||(t.List=n={}))},224:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Schedule=b,t.After=function(e){v(e,!1,!1)},t.Callback=function(e){return function(t,n,o,r){b((function(){e(t,n,o,r)}))}},t.Synch=m,t.Thread=g,t.ThreadAsync=function(e){return new Promise((t=>g((function(n){e(n),g(t)}))))};const o=n(496),r=16,i=o.List.Create();let s=null,c=!1;const u=setTimeout;function a(){return this.end-Date.now()}function l(){return{end:Date.now()+r,timeRemaining:a}}function d(e=l()){let t;for(;e.timeRemaining()>0&&(t=o.List.Pop(i));)h(t,e);i.size>0?u(d):c=!1}function f(e){o.List.Add(i,e),c||(c=!0,u(d))}function p(e,t){const n=e.workEndNode;e.workEndNode=e.workList.head,t(!0),e.workEndNode=n}function h(e,t=l()){const n=s;s=e;const r=e.async;let i;for(;r===e.async&&t.timeRemaining()>0&&(i=o.List.Pop(e.workList));)p(e,i);e.workList.size>0&&f(e),s=n}function v(e,t,n){s=s||{async:!1,workEndNode:null,workList:o.List.Create()},s.async=s.async||n,t?o.List.AddBefore(s.workList,s.workEndNode,e):s.workEndNode?o.List.AddAfter(s.workList,s.workEndNode,e):s.workEndNode=o.List.Add(s.workList,e)}function b(e){v(e,!0,!0)}var y=!1;function m(e){s||y?e(!1):(y=!0,function(e){e(!1),s&&(s.async?f(s):h(s)),s=null}(e),y=!1)}function g(e){s?v(e,!0,!1):m(e)}},156:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Component=void 0;var o=n(342);Object.defineProperty(t,"Component",{enumerable:!0,get:function(){return o.Component}})},576:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.ObservableNode=t.ObservableScope=void 0,r(n(156),t),r(n(586),t);var i=n(890);Object.defineProperty(t,"ObservableScope",{enumerable:!0,get:function(){return i.ObservableScope}}),Object.defineProperty(t,"ObservableNode",{enumerable:!0,get:function(){return i.ObservableNode}}),r(n(147),t)}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var n=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e].call(n.exports,n,n.exports,__webpack_require__),n.exports}var __webpack_exports__={};(()=>{const e=__webpack_require__(576);for(var t in e)window[t]=e[t]})()})();
|
|
1
|
+
(()=>{"use strict";var __webpack_modules__={642:(e,t)=>{function n(e,t,n,o){const r=n;t[o]??=function(e,t){let n;return function(o){o!==n&&(n&&e.removeEventListener(t,n),o&&e.addEventListener(t,o),n=o)}}(e,o),t[o](r)}Object.defineProperty(t,"__esModule",{value:!0}),t.CreateEventAssignment=function(e){let t;const o={};return function(r){const i=null!==r?Object.keys(r):[],s=void 0===t?i:i.concat(t);t=i;for(let t=0;t<s.length;t++)n(e,o,r&&r[s[t]],s[t])}}},543:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CreateNodeValueAssignment=function(e){let t=e.nodeValue;return function(n){n.nodeValue!==t&&(e.nodeValue=n.nodeValue,t=n.nodeValue)}},t.CreatePropertyAssignment=c;const o=n(130);function r(e,t){let n=e[t];return function(o){o!==n&&(e[t]=o,n=o)}}function i(e,t,n){t.value??="INPUT"===e.nodeName?function(e){let t=e.value;return e.addEventListener("blur",(function(){e.value=t})),function(n){if(n!==t){const o=e.selectionStart,r=e.selectionEnd;e.value=n,e.ownerDocument.activeElement===e&&e.setSelectionRange(o,r),t=n}}}(e):r(e,"value"),t.value(n.value)}function s(e,t,n,i){const s=n[i];t[i]??="value"===(0,o.JsonType)(s)?r(e,i):c(e[i],!1),t[i](s)}function c(e,t=!0){const n={};return function(o){const r=Object.keys(o);for(let c=0;c<r.length;c++)!0===t&&"value"===r[c]?i(e,n,o):s(e,n,o,r[c])}}},641:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DOMNodeConfig=void 0;const o=n(819),r=n(496),i=n(543),s=n(642);let c=r.List.Create(),u=!1;function a(){r.List.Add(c,null);const e=Date.now();let t;for(;t=r.List.Pop(c);)t();0===c.size?u=!1:Date.now()-e<16?a():o.wndw.requestAnimationFrame(a)}t.DOMNodeConfig={createNode:(e,t)=>t?o.wndw.document.createElementNS(t,e):o.wndw.document.createElement(e),createTextNode:(e="")=>o.wndw.document.createTextNode(e),scheduleUpdate(e){r.List.Add(c,e),u||(u=!0,o.wndw.requestAnimationFrame(a))},addListener(e,t,n){e.addEventListener(t,n)},removeListener(e,t,n){e.removeEventListener(t,n)},addChild(e,t){e.appendChild(t)},addChildFirst(e,n){t.DOMNodeConfig.addChildBefore(e,e.firstChild,n)},addChildBefore(e,n,o){n?o!==n&&e.insertBefore(o,n):t.DOMNodeConfig.addChild(e,o)},addChildAfter(e,n,o){n?t.DOMNodeConfig.addChildBefore(e,n.nextSibling,o):t.DOMNodeConfig.addChildFirst(e,o)},removeChild(e,t){e.removeChild(t)},remove(e){e&&e.parentNode&&e.parentNode.removeChild(e)},setText(e,t){e.textContent=t},getAttribute:(e,t)=>e.getAttribute(t),setAttribute(e,t,n){e.setAttribute(t,n)},createPropertyAssignment:e=>e.nodeType===Node.TEXT_NODE?(0,i.CreateNodeValueAssignment)(e):(0,i.CreatePropertyAssignment)(e),createEventAssignment:e=>(0,s.CreateEventAssignment)(e),fireEvent(e,t,n){var o=new CustomEvent(t,n);e.dispatchEvent(o)},getFirstChild:e=>e.firstChild,getLastChild:e=>e.lastChild,getNextSibling:e=>e.nextSibling,replaceChildren(e,t){e.replaceChildren(...t)}}},774:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.div=function(e,t){return o.ElementNode.Create("div",null,e,t)},t.a=function(e,t){return o.ElementNode.Create("a",null,e,t)},t.ul=function(e,t){return o.ElementNode.Create("ul",null,e,t)},t.li=function(e,t){return o.ElementNode.Create("li",null,e,t)},t.br=function(e){return o.ElementNode.Create("br",null,e,null)},t.b=function(e,t){return o.ElementNode.Create("b",null,e,t)},t.span=function(e,t){return o.ElementNode.Create("span",null,e,t)},t.img=function(e){return o.ElementNode.Create("img",null,e,null)},t.video=function(e,t){return o.ElementNode.Create("video",null,e,t)},t.source=function(e){return o.ElementNode.Create("source",null,e,null)},t.input=function(e){return o.ElementNode.Create("input",null,e,null)},t.textarea=function(e){return o.ElementNode.Create("textarea",null,e,null)},t.select=function(e,t){return o.ElementNode.Create("select",null,e,t)},t.option=function(e,t){return o.ElementNode.Create("option",null,e,t)},t.h1=function(e,t){return o.ElementNode.Create("h1",null,e,t)},t.h2=function(e,t){return o.ElementNode.Create("h2",null,e,t)},t.h3=function(e,t){return o.ElementNode.Create("h3",null,e,t)},t.p=function(e,t){return o.ElementNode.Create("p",null,e,t)},t.style=function(e,t){return o.ElementNode.Create("style",null,e,t)},t.button=function(e,t){return o.ElementNode.Create("button",null,e,t)},t.table=function(e,t){return o.ElementNode.Create("table",null,e,t)},t.tbody=function(e,t){return o.ElementNode.Create("tbody",null,e,t)},t.th=function(e,t){return o.ElementNode.Create("th",null,e,t)},t.tr=function(e,t){return o.ElementNode.Create("tr",null,e,t)},t.td=function(e,t){return o.ElementNode.Create("td",null,e,t)};const o=n(413)},147:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),r(n(774),t),r(n(716),t),r(n(543),t),r(n(642),t)},716:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.svg=function(e,t){return o.ElementNode.Create("svg",r,e,t)},t.g=function(e,t){return o.ElementNode.Create("g",r,e,t)},t.circle=function(e,t){return o.ElementNode.Create("circle",r,e,t)};const o=n(413),r="http://www.w3.org/2000/svg"},819:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.wndw=void 0,t.wndw="undefined"!=typeof window?window:function(){try{return Object(function(){var e=new Error("Cannot find module 'jsdom'");throw e.code="MODULE_NOT_FOUND",e}())("").window}catch(e){return}}()},173:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BoundNode=void 0;const o=n(267),r=n(948);var i;function s(e,t){if(t)for(var n in t)o.NodeConfig.getAttribute(e.node,n)!==t[n]&&o.NodeConfig.setAttribute(e.node,n,t[n])}!function(e){e.Init=function(e){const t=e.nodeDef;if(t.props){const n=r.ObservableScope.Create(t.props);e.scopes??=[],e.scopes.push(n),e.assignProperties=o.NodeConfig.createPropertyAssignment(e.node),r.ObservableScope.Watch(n,(function(t){!function(e,t){e.setProperties||(e.setProperties=!0,o.NodeConfig.scheduleUpdate((function(){if(e.setProperties=!1,e.destroyed)return;const n=r.ObservableScope.Value(t);e.assignProperties(n)})))}(e,t)}));const i=r.ObservableScope.Value(n);e.assignProperties(i)}if(t.attrs){const n=r.ObservableScope.Create(t.attrs);e.scopes??=[],e.scopes.push(n),r.ObservableScope.Watch(n,(function(t){!function(e,t){e.setAttributes||(e.setAttributes=!0,o.NodeConfig.scheduleUpdate((function(){e.setAttributes=!1,e.destroyed||s(e,r.ObservableScope.Value(t))})))}(e,t)})),s(e,r.ObservableScope.Value(n))}if(t.on){const n=r.ObservableScope.Create(t.on);e.scopes??=[],e.scopes.push(n),e.assignEvents=o.NodeConfig.createEventAssignment(e.node),r.ObservableScope.Watch(n,(function(t){!function(e,t){e.setEvents||(e.setEvents=!0,o.NodeConfig.scheduleUpdate((function(){if(e.setEvents=!1,e.destroyed)return;const n=r.ObservableScope.Value(t);e.assignEvents(n)})))}(e,t)}));const i=r.ObservableScope.Value(n);e.assignEvents(i)}}}(i||(t.BoundNode=i={}))},342:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Component=void 0;const o=n(64),r=n(230),i=n(334),s=n(948);class c{get Injector(){return this.nodeRef.injector}get Destroyed(){return this.nodeRef.destroyed}get Scope(){return this.scope}get Data(){return this.scope.Value}get NodeRef(){return this.nodeRef}get Templates(){return this.templates}constructor(e,t,n,o){this.nodeRef=n,this.componentEvents=o,this.scope=new s.ObservableScope(e),this.templates=t||{}}Template(){return[]}Bound(){}Fire(e,t){var n=this.componentEvents&&this.componentEvents[e];n&&n(t)}Destroy(){this.scope.Destroy(),i.Destroy.All(this)}}t.Component=c,function(e){function t(e,t,n){return r.ComponentNode.ToFunction(e,t,n)}function n(e,t){o.NodeRef.Init(t);var n=o.NodeRef.Wrap(e);o.NodeRef.AddChild(n,t)}e.ToFunction=t,e.Register=function(e,o){const r=t(`${e}-component`,void 0,o);class i extends HTMLElement{constructor(){super(),n(this.attachShadow({mode:"open"}),r({}))}}customElements.define(e,i)},e.Attach=n}(c||(t.Component=c={}))},230:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ComponentNode=void 0;const o=n(173),r=n(64),i=n(267),s=n(342),c=n(880),u=n(334),a=n(224),l=n(496);var d;function f(e){const t=e.component.Template();return Array.isArray(t)?t:[t]}function h(e,t){(0,a.Thread)((function(){if(e.destroyed)return;const n=c.Injector.Scope(e.injector,f,e);(0,a.Schedule)((function(){r.NodeRef.InitAll(e,n)})),(0,a.Thread)((function(){if(e.destroyed)return;const o=l.List.Create();l.List.Add(o,{value:void 0,init:!0,nodes:n}),t?r.NodeRef.ReconcileChildren(e,o):i.NodeConfig.scheduleUpdate((function(){e.destroyed||r.NodeRef.ReconcileChildren(e,o)}))})),e.component.Bound!==s.Component.prototype.Bound&&(0,a.After)((function(){i.NodeConfig.scheduleUpdate((()=>setTimeout((()=>e.component.Bound()),0)))}))}))}!function(e){e.Fire=function(e,t){var n=this.componentEvents&&this.componentEvents[e];n&&n(t)},e.ToFunction=function(e,t,n){return function(o,i){return function(e,t,n,o,i){var s=r.NodeRef.Create(e,t,r.NodeRefType.ComponentNode);return s.nodeDef=n,s.constructor=o,s.templates=i,s}(e,t,o,n,i)}},e.Init=function(e){var t,n=e.nodeDef,s=n.on;n.on=null,e.component=new e.constructor(n.data,e.templates,e,s),t=e,u.PreReq.Has(t.component)?function(e){return new Promise((t=>{(0,a.Thread)((function(){const n=c.Injector.Scope(e.injector,u.PreReqTemplate.Get,e.component);(0,a.Schedule)((function(){e.destroyed||r.NodeRef.InitAll(e,n)})),(0,a.Thread)((function(){if(!e.destroyed){for(var o=0;o<n.length;o++)r.NodeRef.AddChild(e,n[o]);u.PreReq.All(e.component).then((function(){if(!e.destroyed){for(var o=0;o<n.length;o++)r.NodeRef.Destroy(n[o]);i.NodeConfig.scheduleUpdate((function(){if(!e.destroyed){for(var o=0;o<n.length;o++)r.NodeRef.DetachChild(e,n[o]);t()}}))}}))}}))}))}))}(t).then((function(){h(t,!1)})):h(t,!0),o.BoundNode.Init(e)}}(d||(t.ComponentNode=d={}))},413:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ElementNode=void 0;const o=n(948),r=n(880),i=n(496),s=n(224),c=n(173),u=n(267),a=n(64),l=[];var d;function f(e){return e.value}function h(e,t,n=!1){(0,s.Synch)((function(){!function(e,t){const n=i.List.Create(),o=i.List.Create(),c=e.nodeList,u=c&&i.List.ToNodeMap(c,f);for(let s=0;s<t.length;s++){let a;if(u){const e=u.get(t[s]);if(e){let t=e.length-1;for(;t>=0&&!a;t--)a=e[t],e[t]=null}}a?(i.List.RemoveNode(c,a),i.List.AddNode(n,a),a.data.init||i.List.Add(o,a.data)):(a=i.List.Add(n,{value:t[s],init:!1,nodes:r.Injector.Scope(e.injector,p,e.childrenFunc,t[s])}),i.List.Add(o,a.data))}let l=o.head;for(;l;){const t=l.data;(0,s.Schedule)((function(){e.destroyed||0===n.size||(a.NodeRef.InitAll(e,t.nodes),t.init=!0)})),l=l.next}if(c){let t=c.head;for(;t;){const n=t.data;t=t.next;for(let t=0;t<n.nodes.length;t++)e.childNodes.delete(n.nodes[t]);a.NodeRef.DestroyAll(n.nodes)}i.List.Clear(c)}e.nodeList=n}(e,t);const o=e.nodeList,c=o.size;(0,s.Thread)((function(t){e.destroyed||(n||!t?a.NodeRef.ReconcileChildren(e,o):u.NodeConfig.scheduleUpdate((function(){e.destroyed||o.size!==c||a.NodeRef.ReconcileChildren(e,o)})))}))}))}function p(e,t){const n=e(t);if("string"==typeof n||!n){const n=a.NodeRef.Create("text",null,a.NodeRefType.BoundNode);return n.nodeDef={props:function(){return{nodeValue:e(t)}}},[n]}return Array.isArray(n)?n:[n]}!function(e){e.Create=function(e,t,n,o){var r=a.NodeRef.Create(e,t,a.NodeRefType.ElementNode);return r.nodeDef=n,r.childrenFunc=o,r},e.Init=function(e){if(e.childrenFunc){var t=e.nodeDef;if(t.data){const n=o.ObservableScope.Create(t.data),r=o.ObservableScope.Create((function(){let e=o.ObservableScope.Value(n);return e?Array.isArray(e)?e.slice():[e]:l}));e.childNodes=new Set,e.scopes??=[],e.scopes.push(n,r),o.ObservableScope.Watch(n,(function(){!function(e,t){e.setData||(e.setData=!0,u.NodeConfig.scheduleUpdate((function(){e.setData=!1,e.destroyed||h(e,o.ObservableScope.Value(t))})))}(e,r)})),h(e,o.ObservableScope.Value(r),!0)}else n=e,(0,s.Synch)((function(){const e=r.Injector.Scope(n.injector,p,n.childrenFunc,!0);e.length>0&&(a.NodeRef.InitAll(n,e),(0,s.Thread)((function(){if(n.destroyed)return;const t=i.List.Create();i.List.Add(t,{value:null,init:!0,nodes:e}),a.NodeRef.ReconcileChildren(n,t)})))}))}var n;c.BoundNode.Init(e)}}(d||(t.ElementNode=d={}))},267:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.NodeConfig=void 0;const o=n(641);t.NodeConfig=o.DOMNodeConfig},64:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.NodeRef=t.NodeRefType=void 0;const o=n(267),r=n(880),i=n(173),s=n(413),c=n(230),u=n(890);var a,l;!function(e){e[e.NodeRef=0]="NodeRef",e[e.BoundNode=1]="BoundNode",e[e.ElementNode=2]="ElementNode",e[e.ComponentNode=3]="ComponentNode"}(a||(t.NodeRefType=a={})),function(e){function t(e,t,n){switch(n){case a.NodeRef:return{node:null,nodeType:e,nodeNamespace:t,type:a.NodeRef,injector:r.Injector.Current()||new r.Injector,parent:null,childNodes:null,destroyed:!1};case a.BoundNode:return{node:null,nodeDef:null,nodeType:e,nodeNamespace:t,type:a.BoundNode,injector:r.Injector.Current()||new r.Injector,parent:null,childNodes:null,destroyed:!1,lastEvents:null,setProperties:!1,assignProperties:null,assignEvents:null,setAttributes:!1,setEvents:!1,scopes:null};case a.ElementNode:return{node:null,nodeDef:null,nodeType:e,nodeNamespace:t,type:a.ElementNode,injector:r.Injector.Current()||new r.Injector,parent:null,childNodes:null,destroyed:!1,lastEvents:null,setProperties:!1,assignProperties:null,assignEvents:null,setAttributes:!1,setEvents:!1,childrenFunc:null,nodeList:null,setData:!1,scopes:null};case a.ComponentNode:return{node:null,nodeDef:null,nodeType:e,nodeNamespace:t,type:a.ComponentNode,injector:r.Injector.Current()||new r.Injector,parent:null,childNodes:null,destroyed:!1,setProperties:!1,assignProperties:null,assignEvents:null,setAttributes:!1,setEvents:!1,component:null,componentEvents:null,scopes:null}}}function n(e){if(!e.node)switch(e.node="text"===e.nodeType?o.NodeConfig.createTextNode():o.NodeConfig.createNode(e.nodeType,e.nodeNamespace),e.childNodes="text"!==e.nodeType?[]:null,e.type){case a.BoundNode:i.BoundNode.Init(e);break;case a.ElementNode:s.ElementNode.Init(e);break;case a.ComponentNode:c.ComponentNode.Init(e)}}function l(e,t){Array.isArray(e.childNodes)?e.childNodes.push(t):e.childNodes.add(t)}function d(e){if(!e.destroyed){if(e.destroyed=!0,Array.isArray(e.childNodes))for(let t=0;t<e.childNodes.length;t++)d(e.childNodes[t]);else e.childNodes?.forEach(d);switch(e.type){case a.ComponentNode:e.component?.Destroy();case a.ElementNode:e.assignEvents?.(null);case a.BoundNode:for(let t=0;e.scopes&&t<e.scopes.length;t++)u.ObservableScope.Destroy(e.scopes[t])}e.node=null}}e.Wrap=function(e){var n=t(null,null,a.NodeRef);return n.node=e,n.childNodes=new Set,n},e.Create=t,e.Init=n,e.InitAll=function(e,t){for(var o=0;o<t.length;o++)t[o].parent=e,l(e,t[o]),n(t[o])},e.AddChild=function(e,t){t.parent=e,l(e,t),o.NodeConfig.addChild(e.node,t.node)},e.AddChildAfter=function(e,t,n){if(t&&t.parent!==e)throw"currentChild is not valid";n.parent=e,l(e,n),o.NodeConfig.addChildAfter(e.node,t&&t.node,n.node)},e.ReconcileChildren=function(e,t){const n=e.node;if(0===t.size)return void o.NodeConfig.replaceChildren(n,[]);let r,i=t?.head,s=!1,c=!1;for(;i;){for(let e=0;e<i.data.nodes.length;e++){const t=r?o.NodeConfig.getNextSibling(r):o.NodeConfig.getFirstChild(n),u=i.data.nodes[e].node;t!==u?(o.NodeConfig.addChildBefore(n,t,u),!c&&s&&t&&o.NodeConfig.removeChild(n,t),c=s,s=!0):(s=!1,c=!1),r=u}i=i.next}let u=o.NodeConfig.getLastChild(n);for(;r&&r!==u;)o.NodeConfig.removeChild(n,u),u=o.NodeConfig.getLastChild(n)},e.DetachChild=function(e,t){!Array.isArray(e.childNodes)&&e.childNodes.delete(t)&&(o.NodeConfig.removeChild(e.node,t.node),t.parent=null)},e.Destroy=d,e.DestroyAll=function(e){for(let t=0;t<e.length;t++)d(e[t])}}(l||(t.NodeRef=l={}))},377:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DiffAsync=void 0;const o=n(521),r=n(547);t.DiffAsync=class{constructor(e){this.workerQueue=new o.WorkerQueue(r.DiffWorker.Create()),this.workerQueue.Push({method:"create",arguments:e?[e.toString()]:[]})}async DiffPath(e,t){return await this.workerQueue.Push({method:"diffpath",arguments:[e,t]})}async DiffBatch(e){return await this.workerQueue.Push({method:"diffbatch",arguments:[e]})}Destroy(){this.workerQueue.Destroy()}}},606:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DiffSync=void 0;const o=n(874),r=n(747),i=(0,n(285).DiffTreeFactory)(o.JsonDiffFactory);t.DiffSync=class{constructor(e){this.diffTree=new i(e)}DiffPath(e,t){return t=(0,r.JsonDeepClone)(t),this.diffTree.DiffPath(e,t)}DiffBatch(e){return e=(0,r.JsonDeepClone)(e),this.diffTree.DiffBatch(e)}}},285:(__unused_webpack_module,exports)=>{function DiffTreeFactory(jsonDiffFactory,worker){const{JsonDiff,JsonType}=jsonDiffFactory(),ctx=this;if(ctx&&worker){let diffTree=null;ctx.onmessage=function(event){const data=event.data;switch(data.method){case"create":{const keyFunc=data.arguments[0]?eval(data.arguments[0]):void 0;diffTree=new DiffTree(keyFunc),ctx.postMessage(null);break}case"diffpath":{const e=diffTree.DiffPath(data.arguments[0],data.arguments[1]);ctx.postMessage(e);break}case"diffbatch":{const e=diffTree.DiffBatch(data.arguments[0]);ctx.postMessage(e);break}case"getpath":{const e=diffTree.GetPath(data.arguments[0]);ctx.postMessage(e);break}}}}function FlattenValue(e,t,n){switch(JsonType(t)){case"array":const o=t;for(let t=0;t<o.length;t++)FlattenValue(e,o[t],n);break;case"object":const r=t,i=n(r);i&&(e[i]=r);const s=Object.keys(r);for(let t=0;t<s.length;t++)FlattenValue(e,r[s[t]],n)}return e}function GetPathValue(e,t){if(""===t)return e;const n=t.split(".");let o=e;for(let e=0;e<n.length;e++)o=o[n[e]];return o}function SetPathValue(e,t,n){if(0===t.length)return;let o=e,r=0;for(;r<t.length-1;r++)o=o[t[r]];o[t[r]]=n}function ResolveKeyPath(e,t,n){const o=t.split("."),r=new Array(o.length-1);let i=e;for(let e=0;e<o.length-1;e++)i=i[o[e]],r[e]=i;let s=r.length-1;for(;s>=0&&("object"!==JsonType(r[s])||!n(r[s]));s--);if(s>=0){const e=n(r[s]);return o.splice(0,s+1,e),o.join(".")}return t}function UpdateSource(e,t,n,o){const r=[];if(o){const i=ResolveKeyPath(e,t,o);if(i!==t){const t=UpdateSource(e,i,n,o);r.push(...t)}}const i=GetPathValue(e,t);if(JsonDiff(n,i,t,r),o){let t={};t=FlattenValue(t,n,o);const i=Object.keys(t);for(let n=0;n<i.length;n++)JsonDiff(t[i[n]],e[i[n]],i[n],r)}const s=r.filter((e=>void 0!==e.value));for(let t=0;t<s.length;t++)SetPathValue(e,s[t].path,s[t].value);return r}class DiffTree{constructor(e){this.keyFunc=e,this.rootState={}}DiffBatch(e){return e.map((({path:e,value:t})=>this.DiffPath(e,t))).flat(1)}DiffPath(e,t){return UpdateSource(this.rootState,e,t,this.keyFunc)}GetPath(e){return GetPathValue(this.rootState,e)}}return DiffTree}Object.defineProperty(exports,"__esModule",{value:!0}),exports.DiffTreeFactory=DiffTreeFactory},547:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DiffWorker=void 0;const o=n(874),r=n(285);var i;!function(e){let t=null,n=null;"undefined"!=typeof Worker&&(t=Worker,n=URL.createObjectURL(new Blob([`(${r.DiffTreeFactory}).call(this, (${o.JsonDiffFactory}), true)`]))),e.Create=function(){if(!t)throw"Worker is not available";return new t(n)}}(i||(t.DiffWorker=i={}))},521:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WorkerQueue=void 0;const o=n(496);t.WorkerQueue=class{constructor(e){this.worker=e,this.callbacks=o.List.Create(),this.worker.onerror=e=>{const t=o.List.Pop(this.callbacks);t&&t(null,e)},this.worker.onmessage=e=>{const t=o.List.Pop(this.callbacks);t&&t(e.data)}}Push(e){return new Promise(((t,n)=>{o.List.Add(this.callbacks,(function(e,o){o?n(o):t(e)})),this.worker.postMessage(e)}))}Destroy(){this.worker.terminate()}}},501:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Store=void 0;const o=n(874),r=n(318);t.Store=class{constructor(e){this.keyFunc=e,this.rootMap=new Map,this.createNode=r.ObservableNode.CreateFactory((t=>{const n=e(t);if(void 0===n)return;const o=this.rootMap.get(n);if(void 0===o)throw`No root object found for key: ${n}`;return o[r.GET_OBSERVABLE_VALUE][n]}))}Get(e,t){let n=this.rootMap.get(e);return void 0===n&&(n=this.createNode({[e]:t}),this.rootMap.set(e,n)),n[e]}UpdateRootMap(e){for(let t=0;t<e.length;){const n=e[t].path[0],o=t;for(;t<e.length&&e[t].path[0]===n;)t++;const r=e.slice(o,t);this.UpdateRootObject(r[0].path[0],r)}}UpdateRootObject(e,t){const n=this.rootMap.get(e);if(void 0!==n)r.ObservableNode.EnableDiff(!0),(0,o.ApplyDiff)(n,t),r.ObservableNode.EnableDiff(!1);else{if(t.length>1||t[0].path.length>1)throw`Unable to initialize root path ${e} with ${t.length} results and initial path ${t[0].path}`;const n=this.createNode({[e]:t[0].value});this.rootMap.set(e,n)}}}},161:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.StoreAsync=void 0;const o=n(263),r=n(624),i=n(377),s=n(318),c=n(501);class u extends c.Store{constructor(e){super(e),this.queue=new o.AsyncQueue,this.diff=new i.DiffAsync(e)}async Write(e,t){await this.queue.Next((async()=>{if(!(t=t||this.keyFunc(e)))throw"No key provided for data";const n=await this.diff.DiffPath(t,e);this.UpdateRootMap(n)}))}async Patch(e,t){await this.queue.Next((async()=>{const n=this.Get(e);if(void 0===n)throw"Unable to patch undefined value";const o=n.toJSON(),i=(0,r.JsonMerge)(o,t),s=await this.diff.DiffPath(e,i);this.UpdateRootMap(s)}))}async Push(e,...t){await this.queue.Next((async()=>{const n=this.Get(e),o=t.map((function(t,o){return{path:`${e}.${n.length+o}`,value:t}})),r=await this.diff.DiffBatch(o);this.UpdateRootMap(r)}))}async Splice(e,t,n,...o){return await this.queue.Next((async()=>{const r=this.Get(e)[s.GET_OBSERVABLE_VALUE].slice(),i=r.splice(t,n,...o),c=await this.diff.DiffPath(e,r);return this.UpdateRootMap(c),i}))}Destroy(){this.queue.Stop(),this.diff.Destroy()}}t.StoreAsync=u},961:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.StoreSync=void 0;const o=n(624),r=n(606),i=n(318),s=n(501);class c extends s.Store{constructor(e){super(e),this.diff=new r.DiffSync(e)}Write(e,t){if(!(t=t||this.keyFunc(e)))throw"No key provided for data";const n=this.diff.DiffPath(t,e);this.UpdateRootMap(n)}Patch(e,t){const n=this.Get(e);if(void 0===n)throw"Unable to patch undefined value";const r=n.toJSON(),i=(0,o.JsonMerge)(r,t),s=this.diff.DiffPath(e,i);this.UpdateRootMap(s)}Push(e,...t){const n=this.Get(e),o=t.map((function(t,o){return{path:`${e}.${n.length+o}`,value:t}})),r=this.diff.DiffBatch(o);this.UpdateRootMap(r)}Splice(e,t,n,...o){const r=this.Get(e)[i.GET_OBSERVABLE_VALUE].slice(),s=r.splice(t,n,...o),c=this.diff.DiffPath(e,r);return this.UpdateRootMap(c),s}}t.StoreSync=c},318:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ObservableNode=t.GET_TO_JSON=t.GET_OBSERVABLE_VALUE=t.IS_OBSERVABLE_NODE=void 0;const o=n(874),r=n(130),i=n(948);t.IS_OBSERVABLE_NODE="____isObservableNode",t.GET_OBSERVABLE_VALUE="____getObservableValue",t.GET_TO_JSON="toJSON";const s=new WeakMap,c=new WeakMap;function u(e,t){return{...Object.getOwnPropertyDescriptor(e,t),configurable:!0}}function a(e,t){return{...Object.getOwnPropertyDescriptor(e,t),configurable:!0}}function l(e,t){return Object.hasOwn(e,t)}function d(e,t){return Object.hasOwn(e,t)}function f(e){return Object.keys(e)}function h(e){return Object.keys(e)}function p(e){const n=(0,r.JsonType)(e);if("value"===n)return e;if(!0===e[t.IS_OBSERVABLE_NODE])return e[t.GET_OBSERVABLE_VALUE];switch(n){case"object":{const t=Object.keys(e);for(let n=0;n<t.length;n++)e[t[n]]=p(e[t[n]])}case"array":for(let t=0;t<e.length;t++)e[t]=p(e[t])}return e}let v=!1;function b(e){function n(e){return C(e=p(e))}const b=void 0!==e?function t(o){switch((0,r.JsonType)(o)){case"array":return n(o).map(t);case"object":{const r=e(o)??o,i=n(r),s=Object.keys(i),c={};for(let e=0;e<s.length;e++)c[s[e]]=t(r[s[e]]);return c}default:return o}}:function(e){return e},y=void 0!==e;function m(e){const t=i.ObservableScope.Create((()=>e)),n=new Proxy(e,{get:O,set:_,has:l,ownKeys:f,getOwnPropertyDescriptor:u});return c.set(e,t),s.set(e,n),n}function g(e,n,o){if(y&&!v)throw"Object is readonly";if(n===t.IS_OBSERVABLE_NODE)throw`Cannot assign read-only property: ${t.IS_OBSERVABLE_NODE}`;o=p(o),e[n]=o;const r=c.get(e);return i.ObservableScope.Update(r),!0}function N(e,n){if(n===t.IS_OBSERVABLE_NODE)return!0;if(y&&!v)switch(n){case"push":case"unshift":case"splice":case"pop":case"shift":case"sort":case"reverse":if(y&&!v)throw"Object is readonly"}const o=c.get(e);switch(e=i.ObservableScope.Value(o),n){case t.GET_TO_JSON:return function(){return b(e)};case t.GET_OBSERVABLE_VALUE:return e;default:{const t=e[n];return"symbol"==typeof n?t:"function"==typeof t?function(...t){const r="slice"===n?e.slice(...t):e.slice();for(let e=0;e<r.length;e++)r[e]=C(r[e]);let s="slice"===n?r:r[n](...t);switch(n){case"push":case"unshift":case"splice":case"pop":case"shift":case"sort":case"reverse":e.length=r.length;for(let t=0;t<r.length;t++)e[t]=p(r[t]);i.ObservableScope.Update(o)}return s}:C(t)}}}function _(e,n,r){if(y&&!v)throw"Object is readonly";if(n===t.IS_OBSERVABLE_NODE)throw`Cannot assign read-only property: ${t.IS_OBSERVABLE_NODE}`;const u=c.get(e);if(r=p(r),v)e[n]=r,i.ObservableScope.Update(u);else{v=!0;const t=(0,o.JsonDiff)(r,e[n]);for(let o=0;o<t.length;o++)if(0===t[o].path.length)s.get(e)[n]=t[o].value;else{const r=t[o].path;let i=e[n],c=0;for(;c<r.length-1;c++)i=i[r[c]];(s.get(i)??i)[r[c]]=t[o].value}v=!1}return!0}function O(e,n){if(n===t.IS_OBSERVABLE_NODE)return!0;const o=c.get(e);switch(e=i.ObservableScope.Value(o),n){case t.GET_TO_JSON:return function(){return b(e)};case t.GET_OBSERVABLE_VALUE:return e;default:{const t=e[n];return"symbol"==typeof n?t:C(t)}}}function C(t){switch((0,r.JsonType)(t)){case"object":{let n=s.get(t)??m(t);if(void 0!==e){const t=e(n);void 0!==t&&(n=s.get(t)??m(t))}return n}case"array":{const e=s.get(t)??function(e){const t=i.ObservableScope.Create((()=>e)),n=new Proxy(e,{get:N,set:g,has:d,ownKeys:h,getOwnPropertyDescriptor:a});return c.set(e,t),s.set(e,n),n}(t);return i.ObservableScope.Touch(c.get(t)),e}default:return t}}return n}const y=b();var m;!function(e){e.Create=function(e){return y(e)},e.EnableDiff=function(e){v=e},e.CreateFactory=function(e){return b(e)}}(m||(t.ObservableNode=m={}))},948:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ObservableScope=t.ObservableScopeWrapper=t.ObservableScopeValue=void 0;const o=n(959),r=n(116);class i{get Value(){return c.Value(this.scope)}constructor(e){this.scope=e}}t.ObservableScopeValue=i;class s extends i{constructor(e){super(e),e.emitter&&(this.scopeEmitter=r.Emitter.Create(),r.Emitter.On(e.emitter,(()=>r.Emitter.Emit(this.scopeEmitter,this))))}Scope(e){return new c((()=>e(this.Value)))}Watch(e){this.scopeEmitter&&(r.Emitter.On(this.scopeEmitter,e),e(this))}Unwatch(e){this.scopeEmitter&&r.Emitter.Remove(this.scopeEmitter,e)}Destroy(){d(this.scope),this.scopeEmitter&&r.Emitter.Clear(this.scopeEmitter)}}t.ObservableScopeWrapper=s;class c extends s{constructor(e){super(c.Create(e))}}t.ObservableScope=c;let u=null,a=!1;function l(e){return!e||e.dirty||e.destroyed?e.destroyed:(e.dirty=!!e.getFunction,r.Emitter.Emit(e.emitter,e),!1)}function d(e){e&&(e.emitters=null,e.emitter=null,e.getFunction=null,e.setCallback=null,e.destroyed=!0)}!function(e){function t(e){a&&e&&(u??=new Set,u.add(e))}e.Create=function(e){const t="function"==typeof e,n={getFunction:t?e:null,value:t?null:e,async:!!t&&"AsyncFunction"===e[Symbol.toStringTag],dirty:t,emitter:t?r.Emitter.Create():null,emitters:[],destroyed:!1,setCallback:t?function(){return l(n)}:null};return n},e.Register=t,e.Value=function(e){if(e)return t(e.emitter),function(e){if(!e.dirty)return;e.dirty=!1;let t=null;const n=e.getFunction&&function(n){const o=u;u=null;const r=a;a=!0,t=e.getFunction();const i=u;return u=o,a=r,i}();e.async?Promise.resolve(t).then((t=>{e.value=t,r.Emitter.Emit(e.emitter,e)})):e.value=t,function(e,t){if(null===t){for(let t=0;t<e.emitters.length;t++)r.Emitter.Remove(e.emitters[t],e.setCallback);return void(e.emitters=[])}let n=!1;for(let o=0;o<e.emitters.length;o++)t.delete(e.emitters[o])||(r.Emitter.Remove(e.emitters[o],e.setCallback),e.emitters[o]=null,n=!0);const i=e.emitters.length;e.emitters.push(...t);for(let t=i;t<e.emitters.length;t++)r.Emitter.On(e.emitters[t],e.setCallback);n&&(0,o.RemoveNulls)(e.emitters)}(e,n)}(e),e.value},e.Watching=function(){return a},e.Touch=function(e){e&&e.emitter&&t(e.emitter)},e.Watch=function(e,t){e&&e.emitter&&r.Emitter.On(e.emitter,t)},e.Unwatch=function(e,t){e&&e.emitter&&r.Emitter.Remove(e.emitter,t)},e.Update=function(e){l(e)},e.Destroy=function(e){d(e)}}(c||(t.ObservableScope=c={}))},890:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ObservableNode=t.ObservableScope=t.StoreAsync=t.StoreSync=void 0;var o=n(961);Object.defineProperty(t,"StoreSync",{enumerable:!0,get:function(){return o.StoreSync}});var r=n(161);Object.defineProperty(t,"StoreAsync",{enumerable:!0,get:function(){return r.StoreAsync}});var i=n(948);Object.defineProperty(t,"ObservableScope",{enumerable:!0,get:function(){return i.ObservableScope}});var s=n(318);Object.defineProperty(t,"ObservableNode",{enumerable:!0,get:function(){return s.ObservableNode}})},20:(e,t)=>{var n,o;Object.defineProperty(t,"__esModule",{value:!0}),t.Animation=t.AnimationType=void 0,function(e){e.EaseIn=function*(e){for(var t=1/e,n=t,o=0;o<e;o++,n+=t)yield(1-n)*(1-n)*(1-n)*0+3*(1-n)*(1-n)*n*1+3*(1-n)*n*n*1+n*n*n*1},e.Linear=function*(e){for(var t=1/e,n=t,o=0;o<e;o++,n+=t)yield n}}(n||(n={})),function(e){e[e.Linear=0]="Linear",e[e.EaseIn=1]="EaseIn"}(o||(t.AnimationType=o={})),t.Animation=class{get Running(){return this.running}get Start(){return this.start}get End(){return this.end}get Enabled(){return this.enabled}constructor(e,t,n){this.running=!1,this.start=null,this.end=null,this.enabled=!0,this.type=e,this.frameCount=Math.ceil(t/1e3*60),this.frameTimings=[];for(var o=t/this.frameCount,r=0;r<this.frameCount;r++)this.frameTimings[r]=(r+1)*o;this.update=n,this.animationTimeouts=[]}Animate(e,t){if(this.enabled){var r=t-e;if(0!==r)return this.Cancel(),this.running=!0,this.start=e,this.end=t,new Promise((t=>{var i=n[o[this.type]],s=0;for(var c of i(this.frameCount)){var u=c*r+e;this.SetTimeout(s,u,s===this.frameCount-1?t:null),s++}})).then((()=>{this.running=!1,this.start=null,this.end=null}))}}Disable(){this.Cancel(),this.enabled=!1}Enable(){this.enabled=!0}Cancel(){for(var e=0;e<this.animationTimeouts.length;e++)clearTimeout(this.animationTimeouts[e]);this.running=!1,this.start=null,this.end=null}Destroy(){this.Cancel()}SetTimeout(e,t,n){this.animationTimeouts[e]=setTimeout((()=>{this.update(t),n&&n()}),this.frameTimings[e])}}},959:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RemoveNulls=function(e,t=0){let n=t;for(;n<e.length&&null!==e[n];n++);let o=n+1;for(;o<e.length&&null===e[o];o++);for(;o<e.length;)for(e[n]=e[o],n++,o++;o<e.length&&null===e[o];o++);e.splice(n)}},263:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncQueue=void 0;const o=n(496);t.AsyncQueue=class{constructor(){this.running=!1,this.queue=o.List.Create()}Next(e){const t=new Promise(((t,n)=>{o.List.Add(this.queue,(async function(){try{const n=await e();t(n)}catch(e){n(e)}}))}));return this.Start(),t}Stop(){o.List.Clear(this.queue)}Start(){this.running||(this.running=!0,this.ExecuteQueue())}async ExecuteQueue(){const e=o.List.Pop(this.queue);null!==e?(await e(),this.ExecuteQueue()):this.running=!1}}},334:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.State=function(){return a},t.Value=function(){return l},t.StateAsync=function(e,t){return f.bind(null,e,t??d)},t.Scope=function(){return h},t.Inject=function(e){return p.bind(null,e)},t.Destroy=v,t.PreReqTemplate=y,t.PreReq=g;const o=n(948),r=n(318),i=n(890),s=new WeakMap,c=new WeakMap;function u(e){const t=s.get(e)??new Map;return s.set(e,t),t}function a(e,t){const n=`StateDecorator_${t}`;return{configurable:!1,enumerable:!0,get:function(){return u(this).get(n)},set:function(e){const t=u(this),o=t.get(n);if(o){const t=Object.keys(e);for(let n=0;n<t.length;n++)o[t[n]]=e[t[n]]}else t.set(n,r.ObservableNode.Create(e))}}}function l(e,t){const n=`ValueDecorator_${t}`;return{configurable:!1,enumerable:!0,get:function(){const e=u(this).get(n);return o.ObservableScope.Value(e)},set:function(e){const t=function(e){const t=c.get(e)??new Map;return c.set(e,t),t}(this);t.set(n,e);const r=u(this);let i=r.get(n);void 0===i?(i=o.ObservableScope.Create((function(){return t.get(n)})),r.set(n,i)):o.ObservableScope.Update(i)}}}function d(){}function f(e,t,n,o){const r=`ValueDecorator_${o}`;return{configurable:!1,enumerable:!0,get:function(){const t=u(this).get(r);return t?.Get("root",e)??e},set:function(e){const n=u(this);let o=n.get(r);void 0===o&&(o=new i.StoreAsync(t),n.set(r,o)),o.Write(e,"root")}}}function h(e,t,n){if(!n||!n.get)throw"Scope decorator requires a getter";if(n&&n.set)throw"Scope decorator does not support setters";const r=`ScopeDecorator_${t}`;return b(e,r),{configurable:!1,enumerable:!0,get:function(){var e=u(this),t=e.get(r);if(!t){const i=n.get.bind(this);t=new o.ObservableScope(i),e.set(r,t)}return t.Value}}}function p(e,t,n,o){return{configurable:!1,enumerable:!0,get:function(){return this.Injector.Get(e)},set:function(t){this.Injector.Set(e,t)}}}function v(){return b}function b(e,t){var n=e;n.DestroyDecorator_Destroys=n.DestroyDecorator_Destroys||[],n.DestroyDecorator_Destroys.push(t)}function y(e){return m.bind(null,e)}function m(e,t){t.prototype.PreReqTemplateDecorator_Template=e}function g(){return N}function N(e,t){var n=e;n.PreReqDecorator_PreReqs=n.PreReqDecorator_PreReqs||[],n.PreReqDecorator_PreReqs.push(t)}!function(e){e.All=function(e){}}(v||(t.Destroy=v={})),function(e){e.Get=function(e){var t=e&&e.PreReqTemplateDecorator_Template,n=t?t():[];return Array.isArray(n)||(n=[n]),n}}(y||(t.PreReqTemplate=y={})),function(e){function t(e){return e&&e.PreReqDecorator_PreReqs||[]}e.All=function(e){var n=t(e).map((t=>e[t]&&e[t].Init||Promise.resolve()));return Promise.all(n)},e.Has=function(e){return t(e).length>0}}(g||(t.PreReq=g={}))},116:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Emitter=void 0;const o=n(959);var r;!function(e){e.Create=function(){return[]},e.On=function(e,t){e.push(t)},e.Emit=function(e,...t){let n=!1;for(let o=0;o<e.length;o++){const r=e[o]?.(...t);!0===r&&(n=!0,e[o]=null)}n&&(0,o.RemoveNulls)(e)},e.Remove=function(e,t){const n=e.indexOf(t);n>=0&&(e[n]=null,(0,o.RemoveNulls)(e,n))},e.Clear=function(e){e.splice(0)}}(r||(t.Emitter=r={}))},586:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),r(n(334),t),r(n(20),t)},880:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Injector=void 0;class n{constructor(){this.parent=n.Current(),this.typeMap=new Map}Get(e){if(0===this.typeMap.size)return this.parent&&this.parent.Get(e);var t=this.typeMap.get(e);return t||(t=this.parent&&this.parent.Get(e)),t}Set(e,t){this.typeMap.set(e,t)}}t.Injector=n,function(e){var t=null;function n(){return t}e.Current=n,e.Scope=function(e,o,...r){var i=n();t=e;const s=o(...r);return t=i,s}}(n||(t.Injector=n={}))},874:(e,t)=>{var n;function o(){const e=Object.getPrototypeOf({});function t(t){return null==t?"value":Array.isArray(t)?"array":e===Object.getPrototypeOf(t)?"object":"value"}function n(e,o,r,i){if(o===r)return!1;const s=t(o),c=t(r),u=i.length;let a=!0;if(s===c)switch(s){case"array":a=function(e,t,o,r){let i=!0;if(t.length!==o.length&&r.push({path:e.concat("length"),value:t.length}),t.length>0||o.length>0)for(let s=0;s<t.length;s++){const c=e.concat(s),u=o[s];i=n(c,t[s],u,r)&&i}else i=!1;return i}(e,o,r,i);break;case"object":a=function(e,t,o,r){const i=Object.keys(t).sort(),s=Object.keys(o).sort();if(0===i.length&&0===s.length)return!1;if(i.length<s.length)return!0;let c=0,u=0;for(;c<i.length;){const a=e.concat(i[c]);u<s.length&&i[c]===s[u]?(n(a,t[i[c]],o[s[u]],r),u++):void 0!==t[i[c]]&&r.push({path:a,value:t[i[c]]}),c++}return u<s.length}(e,o,r,i)}return!!a&&(i.splice(u),i.push({path:e,value:o}),!0)}return{JsonDiff:function(e,t,o,r){const i=r??[];return n(o?o.split("."):[],e,t,i),i},JsonType:t}}Object.defineProperty(t,"__esModule",{value:!0}),t.JsonType=t.JsonDiff=void 0,t.ApplyDiff=function(e,t){const n=[["",e]];for(let e=0;e<t.length;e++){const{path:o,value:r}=t[e];let i=0;for(;i<o.length-1;i++){const e=o[i],t=n[i][1],r=i+1;if(n.length<=r)n.push([e,t[e]]);else if(n[r][0]!==e){n[r][0]=e,n[r][1]=t[e];const o=r+1;o<n.length&&(n[o][0]=null)}}n[i][1][o[i]]=r}},t.JsonDiffFactory=o,n=o(),t.JsonDiff=n.JsonDiff,t.JsonType=n.JsonType},747:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.JsonDeepClone=function e(t){switch((0,o.JsonType)(t)){case"array":return t.map(e);case"object":{const n={},o=Object.keys(t);for(let r=0;r<o.length;r++)n[o[r]]=e(t[o[r]]);return n}default:return t}};const o=n(130)},624:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.JsonMerge=function e(t,n){if(void 0===n)return t;const r=(0,o.JsonType)(t);if(r!==(0,o.JsonType)(n))return n;switch(r){case"array":{const o=n;return t.map((function(t,n){return e(t,o[n])}))}case"object":{const o=t,r=n,i=Object.keys(o),s={};for(let t=0;t<i.length;t++)s[i[t]]=e(o[i[t]],r[i[t]]);return s}default:return n}};const o=n(130)},130:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.JsonType=void 0;var o=n(874);Object.defineProperty(t,"JsonType",{enumerable:!0,get:function(){return o.JsonType}})},496:(e,t)=>{var n;Object.defineProperty(t,"__esModule",{value:!0}),t.List=void 0,function(e){function t(e,t){return 0===e.size?(e.head=t,e.tail=t,e.size=1):(t.previous=e.tail,e.tail.next=t,e.tail=t,e.size++),t}e.Create=function(){return{head:null,tail:null,size:0}},e.Clear=function(e){e.head=null,e.tail=null,e.size=0},e.Push=function(e,t){const n={previous:null,next:null,data:t};return 0===e.size?(e.head=n,e.tail=n,e.size=1):(n.next=e.head,e.head.previous=n,e.head=n,e.size++),n},e.Pop=function(e){if(0===e.size)return null;const t=e.head;return e.head=t.next,e.head&&(e.head.previous=null),e.size--,0===e.size&&(e.tail=null),t.data},e.Add=function(e,n){return t(e,{previous:null,next:null,data:n})},e.AddNode=t,e.AddBefore=function(t,n,o){if(!n)return e.Add(t,o);const r={previous:null,next:null,data:o},i=n.previous;return r.next=n,n.previous=r,t.head===n&&(t.head=r),i&&(i.next=r,r.previous=i),t.size++,r},e.AddAfter=function(t,n,o){if(!n)return e.Push(t,o);const r={previous:null,next:null,data:o},i=n.next;return n.next=r,r.previous=n,t.tail===n&&(t.tail=r),i&&(i.previous=r,r.next=i),t.size++,r},e.Remove=function(e){if(0===e.size)return null;var t=e.tail;return e.tail=t.previous,e.tail&&(e.tail.next=null),e.size--,0===e.size&&(e.head=null),t.data},e.RemoveNode=function(e,t){if(e.head===t)e.head=t.next;else if(e.tail===t)e.tail=t.previous;else{const e=t.previous,n=t.next;e.next=n,n.previous=e}t.next=t.previous=null,e.size--,e.size>0&&(e.head.previous=e.tail.next=null)},e.ForEach=function(e,t){let n=e.head;for(;n;)t(n.data),n=n.next},e.ToNodeMap=function(e,t){const n=new Map;let o=e.head;for(;o;){const e=t(o.data),r=n.get(e)||[o];r[0]!==o?r.push(o):n.set(e,r),o=o.next}return n}}(n||(t.List=n={}))},224:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Schedule=b,t.After=function(e){v(e,!1,!1)},t.Callback=function(e){return function(t,n,o,r){b((function(){e(t,n,o,r)}))}},t.Synch=m,t.Thread=g,t.ThreadAsync=function(e){return new Promise((t=>g((function(n){e(n),g(t)}))))};const o=n(496),r=16,i=o.List.Create();let s=null,c=!1;const u=setTimeout;function a(){return this.end-Date.now()}function l(){return{end:Date.now()+r,timeRemaining:a}}function d(e=l()){let t;for(;e.timeRemaining()>0&&(t=o.List.Pop(i));)p(t,e);i.size>0?u(d):c=!1}function f(e){o.List.Add(i,e),c||(c=!0,u(d))}function h(e,t){const n=e.workEndNode;e.workEndNode=e.workList.head,t(!0),e.workEndNode=n}function p(e,t=l()){const n=s;s=e;const r=e.async;let i;for(;r===e.async&&t.timeRemaining()>0&&(i=o.List.Pop(e.workList));)h(e,i);e.workList.size>0&&f(e),s=n}function v(e,t,n){s=s||{async:!1,workEndNode:null,workList:o.List.Create()},s.async=s.async||n,t?o.List.AddBefore(s.workList,s.workEndNode,e):s.workEndNode?o.List.AddAfter(s.workList,s.workEndNode,e):s.workEndNode=o.List.Add(s.workList,e)}function b(e){v(e,!0,!0)}var y=!1;function m(e){s||y?e(!1):(y=!0,function(e){e(!1),s&&(s.async?f(s):p(s)),s=null}(e),y=!1)}function g(e){s?v(e,!0,!1):m(e)}},156:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Component=void 0;var o=n(342);Object.defineProperty(t,"Component",{enumerable:!0,get:function(){return o.Component}})},576:function(e,t,n){var o=this&&this.__createBinding||(Object.create?function(e,t,n,o){void 0===o&&(o=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,o,r)}:function(e,t,n,o){void 0===o&&(o=n),e[o]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||o(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.ObservableNode=t.ObservableScope=void 0,r(n(156),t),r(n(586),t);var i=n(890);Object.defineProperty(t,"ObservableScope",{enumerable:!0,get:function(){return i.ObservableScope}}),Object.defineProperty(t,"ObservableNode",{enumerable:!0,get:function(){return i.ObservableNode}}),r(n(147),t)}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var n=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e].call(n.exports,n,n.exports,__webpack_require__),n.exports}var __webpack_exports__={};(()=>{const e=__webpack_require__(576);for(var t in e)window[t]=e[t]})()})();
|
|
2
2
|
//# sourceMappingURL=jTemplates.js.map
|