@spearwolf/shadow-objects 0.30.1 → 0.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -0
- package/README.md +34 -10
- package/bundle.js +13 -13
- package/package.json +3 -3
- package/src/bundle.js +4 -4
- package/src/bundle.js.map +7 -1
- package/src/constants.js +53 -40
- package/src/constants.js.map +7 -1
- package/src/create-worker.bundle.js +6 -8
- package/src/create-worker.bundle.js.map +7 -1
- package/src/create-worker.js +5 -2
- package/src/create-worker.js.map +7 -1
- package/src/elements/ShaeElement.js +57 -54
- package/src/elements/ShaeElement.js.map +7 -1
- package/src/elements/ShaeEntElement.d.ts.map +1 -1
- package/src/elements/ShaeEntElement.js +320 -341
- package/src/elements/ShaeEntElement.js.map +7 -1
- package/src/elements/ShaePropElement.js +312 -320
- package/src/elements/ShaePropElement.js.map +7 -1
- package/src/elements/ShaeWorkerElement.js +234 -229
- package/src/elements/ShaeWorkerElement.js.map +7 -1
- package/src/elements/constants.js +37 -22
- package/src/elements/constants.js.map +7 -1
- package/src/elements/events.d.ts +1 -1
- package/src/elements/events.d.ts.map +1 -1
- package/src/elements/events.js +1 -2
- package/src/elements/events.js.map +7 -1
- package/src/elements.js +4 -4
- package/src/elements.js.map +7 -1
- package/src/in-the-dark/Entity.d.ts +3 -1
- package/src/in-the-dark/Entity.d.ts.map +1 -1
- package/src/in-the-dark/Entity.js +299 -275
- package/src/in-the-dark/Entity.js.map +7 -1
- package/src/in-the-dark/Kernel.d.ts +1 -1
- package/src/in-the-dark/Kernel.d.ts.map +1 -1
- package/src/in-the-dark/Kernel.js +556 -532
- package/src/in-the-dark/Kernel.js.map +7 -1
- package/src/in-the-dark/Registry.d.ts.map +1 -1
- package/src/in-the-dark/Registry.js +101 -104
- package/src/in-the-dark/Registry.js.map +7 -1
- package/src/in-the-dark/ShadowObject.d.ts.map +1 -1
- package/src/in-the-dark/ShadowObject.js +21 -23
- package/src/in-the-dark/ShadowObject.js.map +7 -1
- package/src/in-the-dark/SignalsPath.d.ts.map +1 -1
- package/src/in-the-dark/SignalsPath.js +139 -123
- package/src/in-the-dark/SignalsPath.js.map +7 -1
- package/src/in-the-dark/events.js +11 -9
- package/src/in-the-dark/events.js.map +7 -1
- package/src/in-the-dark/importModule.js +31 -29
- package/src/in-the-dark/importModule.js.map +7 -1
- package/src/index.d.ts +2 -2
- package/src/index.d.ts.map +1 -1
- package/src/index.js +14 -14
- package/src/index.js.map +7 -1
- package/src/shadow-objects.js +6 -6
- package/src/shadow-objects.js.map +7 -1
- package/src/shadow-objects.worker.js +3 -3
- package/src/shadow-objects.worker.js.map +7 -1
- package/src/shae-ent.js +3 -3
- package/src/shae-ent.js.map +7 -1
- package/src/shae-prop.js +3 -3
- package/src/shae-prop.js.map +7 -1
- package/src/shae-worker.js +3 -3
- package/src/shae-worker.js.map +7 -1
- package/src/types.d.ts +5 -4
- package/src/types.d.ts.map +1 -1
- package/src/types.js +1 -2
- package/src/types.js.map +7 -1
- package/src/utils/ConsoleLogger.js +179 -185
- package/src/utils/ConsoleLogger.js.map +7 -1
- package/src/utils/FrameLoop.js +41 -40
- package/src/utils/FrameLoop.js.map +7 -1
- package/src/utils/array-utils.js +22 -24
- package/src/utils/array-utils.js.map +7 -1
- package/src/utils/attr-utils.js +15 -11
- package/src/utils/attr-utils.js.map +7 -1
- package/src/utils/constants.js +5 -2
- package/src/utils/constants.js.map +7 -1
- package/src/utils/generateUUID.d.ts.map +1 -1
- package/src/utils/generateUUID.js +269 -32
- package/src/utils/generateUUID.js.map +7 -1
- package/src/utils/props-utils.js +34 -43
- package/src/utils/props-utils.js.map +7 -1
- package/src/utils/toMaybe.js +5 -2
- package/src/utils/toMaybe.js.map +7 -1
- package/src/utils/toNamespace.js +6 -3
- package/src/utils/toNamespace.js.map +7 -1
- package/src/utils/toUrlString.js +9 -6
- package/src/utils/toUrlString.js.map +7 -1
- package/src/utils/waitForMessageOfType.js +30 -32
- package/src/utils/waitForMessageOfType.js.map +7 -1
- package/src/view/ComponentChanges.d.ts +1 -1
- package/src/view/ComponentChanges.d.ts.map +1 -1
- package/src/view/ComponentChanges.js +249 -251
- package/src/view/ComponentChanges.js.map +7 -1
- package/src/view/ComponentContext.d.ts.map +1 -1
- package/src/view/ComponentContext.js +303 -331
- package/src/view/ComponentContext.js.map +7 -1
- package/src/view/ComponentMemory.d.ts +1 -0
- package/src/view/ComponentMemory.d.ts.map +1 -1
- package/src/view/ComponentMemory.js +73 -76
- package/src/view/ComponentMemory.js.map +7 -1
- package/src/view/IShadowObjectEnvProxy.js +1 -2
- package/src/view/IShadowObjectEnvProxy.js.map +7 -1
- package/src/view/LocalShadowObjectEnv.d.ts.map +1 -1
- package/src/view/LocalShadowObjectEnv.js +57 -52
- package/src/view/LocalShadowObjectEnv.js.map +7 -1
- package/src/view/RemoteWorkerEnv.js +134 -123
- package/src/view/RemoteWorkerEnv.js.map +7 -1
- package/src/view/ShadowEnv.d.ts.map +1 -1
- package/src/view/ShadowEnv.js +232 -228
- package/src/view/ShadowEnv.js.map +7 -1
- package/src/view/ViewComponent.d.ts +9 -0
- package/src/view/ViewComponent.d.ts.map +1 -1
- package/src/view/ViewComponent.js +142 -130
- package/src/view/ViewComponent.js.map +7 -1
- package/src/view/cloneChangeTrail.js +13 -11
- package/src/view/cloneChangeTrail.js.map +7 -1
- package/src/worker/MessageRouter.d.ts.map +1 -1
- package/src/worker/MessageRouter.js +78 -67
- package/src/worker/MessageRouter.js.map +7 -1
- package/src/worker/WorkerRuntime.js +22 -21
- package/src/worker/WorkerRuntime.js.map +7 -1
- package/tsconfig.lib.tsbuildinfo +0 -1
|
@@ -1,128 +1,144 @@
|
|
|
1
|
-
var
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : /* @__PURE__ */ Symbol.for("Symbol." + name);
|
|
5
|
+
var __typeError = (msg) => {
|
|
6
|
+
throw TypeError(msg);
|
|
7
|
+
};
|
|
8
|
+
var __defNormalProp = (obj, key, value2) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value: value2 }) : obj[key] = value2;
|
|
9
|
+
var __name = (target, value2) => __defProp(target, "name", { value: value2, configurable: true });
|
|
10
|
+
var __decoratorStart = (base) => [, , , __create(base?.[__knownSymbol("metadata")] ?? null)];
|
|
11
|
+
var __decoratorStrings = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"];
|
|
12
|
+
var __expectFn = (fn) => fn !== void 0 && typeof fn !== "function" ? __typeError("Function expected") : fn;
|
|
13
|
+
var __decoratorContext = (kind, name, done, metadata, fns) => ({ kind: __decoratorStrings[kind], name, metadata, addInitializer: (fn) => done._ ? __typeError("Already initialized") : fns.push(__expectFn(fn || null)) });
|
|
14
|
+
var __decoratorMetadata = (array, target) => __defNormalProp(target, __knownSymbol("metadata"), array[3]);
|
|
15
|
+
var __runInitializers = (array, flags, self, value2) => {
|
|
16
|
+
for (var i = 0, fns = array[flags >> 1], n = fns && fns.length; i < n; i++) flags & 1 ? fns[i].call(self) : value2 = fns[i].call(self, value2);
|
|
17
|
+
return value2;
|
|
18
|
+
};
|
|
19
|
+
var __decorateElement = (array, flags, name, decorators, target, extra) => {
|
|
20
|
+
var fn, it, done, ctx, access, k = flags & 7, s = !!(flags & 8), p = !!(flags & 16);
|
|
21
|
+
var j = k > 3 ? array.length + 1 : k ? s ? 1 : 2 : 0, key = __decoratorStrings[k + 5];
|
|
22
|
+
var initializers = k > 3 && (array[j - 1] = []), extraInitializers = array[j] || (array[j] = []);
|
|
23
|
+
var desc = k && (!p && !s && (target = target.prototype), k < 5 && (k > 3 || !p) && __getOwnPropDesc(k < 4 ? target : { get [name]() {
|
|
24
|
+
return __privateGet(this, extra);
|
|
25
|
+
}, set [name](x) {
|
|
26
|
+
return __privateSet(this, extra, x);
|
|
27
|
+
} }, name));
|
|
28
|
+
k ? p && k < 4 && __name(extra, (k > 2 ? "set " : k > 1 ? "get " : "") + name) : __name(target, name);
|
|
29
|
+
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
30
|
+
ctx = __decoratorContext(k, name, done = {}, array[3], extraInitializers);
|
|
31
|
+
if (k) {
|
|
32
|
+
ctx.static = s, ctx.private = p, access = ctx.access = { has: p ? (x) => __privateIn(target, x) : (x) => name in x };
|
|
33
|
+
if (k ^ 3) access.get = p ? (x) => (k ^ 1 ? __privateGet : __privateMethod)(x, target, k ^ 4 ? extra : desc.get) : (x) => x[name];
|
|
34
|
+
if (k > 2) access.set = p ? (x, y) => __privateSet(x, target, y, k ^ 4 ? extra : desc.set) : (x, y) => x[name] = y;
|
|
24
35
|
}
|
|
25
|
-
|
|
26
|
-
|
|
36
|
+
it = (0, decorators[i])(k ? k < 4 ? p ? extra : desc[key] : k > 4 ? void 0 : { get: desc.get, set: desc.set } : target, ctx), done._ = 1;
|
|
37
|
+
if (k ^ 4 || it === void 0) __expectFn(it) && (k > 4 ? initializers.unshift(it) : k ? p ? extra = it : desc[key] = it : target = it);
|
|
38
|
+
else if (typeof it !== "object" || it === null) __typeError("Object expected");
|
|
39
|
+
else __expectFn(fn = it.get) && (desc.get = fn), __expectFn(fn = it.set) && (desc.set = fn), __expectFn(fn = it.init) && initializers.unshift(fn);
|
|
40
|
+
}
|
|
41
|
+
return k || __decoratorMetadata(array, target), desc && __defProp(target, name, desc), p ? k ^ 4 ? extra : desc : target;
|
|
27
42
|
};
|
|
28
|
-
var
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
43
|
+
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
|
44
|
+
var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use the "in" operator on this value') : member.has(obj);
|
|
45
|
+
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
46
|
+
var __privateAdd = (obj, member, value2) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value2);
|
|
47
|
+
var __privateSet = (obj, member, value2, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value2) : member.set(obj, value2), value2);
|
|
48
|
+
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
49
|
+
var _value_dec, _signals, _effect, _init, _value, _SignalsPath_instances, makeRemoveFunc_fn, updateGetValueFromSignalsEffect_fn;
|
|
50
|
+
import { emit, off, retain, retainClear } from "@spearwolf/eventize";
|
|
51
|
+
import {
|
|
52
|
+
createEffect,
|
|
53
|
+
destroyObjectSignals,
|
|
54
|
+
Effect,
|
|
55
|
+
findObjectSignalByName,
|
|
56
|
+
value
|
|
57
|
+
} from "@spearwolf/signalize";
|
|
58
|
+
import { signal } from "@spearwolf/signalize/decorators";
|
|
59
|
+
const VALUE = "value";
|
|
60
|
+
_value_dec = [signal({ name: VALUE })];
|
|
61
|
+
class SignalsPath {
|
|
62
|
+
constructor(signals) {
|
|
63
|
+
__privateAdd(this, _SignalsPath_instances);
|
|
64
|
+
__privateAdd(this, _signals, []);
|
|
65
|
+
__privateAdd(this, _effect);
|
|
66
|
+
__privateAdd(this, _value, __runInitializers(_init, 8, this)), __runInitializers(_init, 11, this);
|
|
67
|
+
this.value$ = void 0;
|
|
68
|
+
retain(this, VALUE);
|
|
69
|
+
this.value$ = findObjectSignalByName(this, VALUE);
|
|
70
|
+
this.value$.onChange((val) => emit(this, VALUE, val));
|
|
71
|
+
if (signals) {
|
|
72
|
+
this.add(...signals);
|
|
32
73
|
}
|
|
33
|
-
|
|
74
|
+
}
|
|
75
|
+
add(...signals) {
|
|
76
|
+
__privateGet(this, _signals).push(...signals);
|
|
77
|
+
__privateMethod(this, _SignalsPath_instances, updateGetValueFromSignalsEffect_fn).call(this);
|
|
78
|
+
return __privateMethod(this, _SignalsPath_instances, makeRemoveFunc_fn).call(this, signals);
|
|
79
|
+
}
|
|
80
|
+
unshift(...signals) {
|
|
81
|
+
__privateGet(this, _signals).unshift(...signals);
|
|
82
|
+
__privateMethod(this, _SignalsPath_instances, updateGetValueFromSignalsEffect_fn).call(this);
|
|
83
|
+
return __privateMethod(this, _SignalsPath_instances, makeRemoveFunc_fn).call(this, signals);
|
|
84
|
+
}
|
|
85
|
+
remove(...signals) {
|
|
86
|
+
__privateMethod(this, _SignalsPath_instances, makeRemoveFunc_fn).call(this, signals)();
|
|
87
|
+
}
|
|
88
|
+
clear() {
|
|
89
|
+
__privateGet(this, _signals).length = 0;
|
|
90
|
+
__privateMethod(this, _SignalsPath_instances, updateGetValueFromSignalsEffect_fn).call(this);
|
|
91
|
+
}
|
|
92
|
+
dispose() {
|
|
93
|
+
this.clear();
|
|
94
|
+
__privateGet(this, _effect)?.destroy();
|
|
95
|
+
__privateSet(this, _effect, void 0);
|
|
96
|
+
retainClear(this, VALUE);
|
|
97
|
+
off(this);
|
|
98
|
+
this.value$.destroy();
|
|
99
|
+
destroyObjectSignals(this);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
_init = __decoratorStart(null);
|
|
103
|
+
_signals = new WeakMap();
|
|
104
|
+
_effect = new WeakMap();
|
|
105
|
+
_value = new WeakMap();
|
|
106
|
+
_SignalsPath_instances = new WeakSet();
|
|
107
|
+
makeRemoveFunc_fn = function(signals) {
|
|
108
|
+
return () => {
|
|
109
|
+
for (const sig of signals) {
|
|
110
|
+
const idx = __privateGet(this, _signals).indexOf(sig);
|
|
111
|
+
if (idx !== -1) {
|
|
112
|
+
__privateGet(this, _signals).splice(idx, 1);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
__privateMethod(this, _SignalsPath_instances, updateGetValueFromSignalsEffect_fn).call(this);
|
|
116
|
+
};
|
|
34
117
|
};
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
49
|
-
}
|
|
50
|
-
static { this.Value = VALUE; }
|
|
51
|
-
#signals;
|
|
52
|
-
#effect;
|
|
53
|
-
#value_accessor_storage;
|
|
54
|
-
get value() { return this.#value_accessor_storage; }
|
|
55
|
-
set value(value) { this.#value_accessor_storage = value; }
|
|
56
|
-
constructor(signals) {
|
|
57
|
-
this.#signals = [];
|
|
58
|
-
this.#value_accessor_storage = __runInitializers(this, _value_initializers, undefined);
|
|
59
|
-
this.value$ = __runInitializers(this, _value_extraInitializers);
|
|
60
|
-
retain(this, VALUE);
|
|
61
|
-
this.value$ = findObjectSignalByName(this, VALUE);
|
|
62
|
-
this.value$.onChange((val) => emit(this, VALUE, val));
|
|
63
|
-
if (signals) {
|
|
64
|
-
this.add(...signals);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
add(...signals) {
|
|
68
|
-
this.#signals.push(...signals);
|
|
69
|
-
this.#updateGetValueFromSignalsEffect();
|
|
70
|
-
return this.#makeRemoveFunc(signals);
|
|
71
|
-
}
|
|
72
|
-
unshift(...signals) {
|
|
73
|
-
this.#signals.unshift(...signals);
|
|
74
|
-
this.#updateGetValueFromSignalsEffect();
|
|
75
|
-
return this.#makeRemoveFunc(signals);
|
|
118
|
+
updateGetValueFromSignalsEffect_fn = function() {
|
|
119
|
+
__privateGet(this, _effect)?.destroy();
|
|
120
|
+
if (__privateGet(this, _signals).length === 0) {
|
|
121
|
+
__privateSet(this, _effect, void 0);
|
|
122
|
+
this.value = void 0;
|
|
123
|
+
} else {
|
|
124
|
+
__privateSet(this, _effect, createEffect(() => {
|
|
125
|
+
let valueFromSignals;
|
|
126
|
+
for (const sig of __privateGet(this, _signals)) {
|
|
127
|
+
const val = value(sig);
|
|
128
|
+
if (val != null) {
|
|
129
|
+
valueFromSignals = val;
|
|
130
|
+
break;
|
|
76
131
|
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
this.value$.destroy();
|
|
91
|
-
destroyObjectSignals(this);
|
|
92
|
-
}
|
|
93
|
-
#makeRemoveFunc(signals) {
|
|
94
|
-
return () => {
|
|
95
|
-
for (const sig of signals) {
|
|
96
|
-
const idx = this.#signals.indexOf(sig);
|
|
97
|
-
if (idx !== -1) {
|
|
98
|
-
this.#signals.splice(idx, 1);
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
this.#updateGetValueFromSignalsEffect();
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
|
-
#updateGetValueFromSignalsEffect() {
|
|
105
|
-
this.#effect?.destroy();
|
|
106
|
-
if (this.#signals.length === 0) {
|
|
107
|
-
this.#effect = undefined;
|
|
108
|
-
this.value = undefined;
|
|
109
|
-
}
|
|
110
|
-
else {
|
|
111
|
-
this.#effect = createEffect(() => {
|
|
112
|
-
let valueFromSignals = undefined;
|
|
113
|
-
for (const sig of this.#signals) {
|
|
114
|
-
const val = value(sig);
|
|
115
|
-
if (val != null) {
|
|
116
|
-
valueFromSignals = val;
|
|
117
|
-
break;
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
this.value = valueFromSignals;
|
|
121
|
-
}, this.#signals);
|
|
122
|
-
this.#effect.run();
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
};
|
|
126
|
-
})();
|
|
127
|
-
export { SignalsPath };
|
|
128
|
-
//# sourceMappingURL=SignalsPath.js.map
|
|
132
|
+
}
|
|
133
|
+
this.value = valueFromSignals;
|
|
134
|
+
}, __privateGet(this, _signals)));
|
|
135
|
+
__privateGet(this, _effect).run();
|
|
136
|
+
}
|
|
137
|
+
};
|
|
138
|
+
__decorateElement(_init, 4, "value", _value_dec, SignalsPath, _value);
|
|
139
|
+
__decoratorMetadata(_init, SignalsPath);
|
|
140
|
+
SignalsPath.Value = VALUE;
|
|
141
|
+
export {
|
|
142
|
+
SignalsPath
|
|
143
|
+
};
|
|
144
|
+
//# sourceMappingURL=SignalsPath.js.map
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/in-the-dark/SignalsPath.ts"],
|
|
4
|
+
"sourcesContent": ["import {emit, off, retain, retainClear} from '@spearwolf/eventize';\nimport {\n createEffect,\n destroyObjectSignals,\n Effect,\n findObjectSignalByName,\n type Signal,\n type SignalLike,\n value,\n} from '@spearwolf/signalize';\nimport {signal} from '@spearwolf/signalize/decorators';\n\nconst VALUE = 'value';\n\nexport class SignalsPath {\n static readonly Value = VALUE;\n\n #signals: SignalLike<any>[] = [];\n #effect?: Effect;\n\n @signal({name: VALUE}) accessor value: any = undefined;\n\n readonly value$: Signal<any>;\n\n constructor(signals?: SignalLike<any>[]) {\n retain(this as SignalsPath, VALUE);\n\n this.value$ = findObjectSignalByName(this, VALUE);\n this.value$.onChange((val) => emit(this as SignalsPath, VALUE, val));\n\n if (signals) {\n this.add(...signals);\n }\n }\n\n add(...signals: (Signal<any> | SignalLike<any>)[]) {\n this.#signals.push(...signals);\n this.#updateGetValueFromSignalsEffect();\n return this.#makeRemoveFunc(signals);\n }\n\n unshift(...signals: SignalLike<any>[]) {\n this.#signals.unshift(...signals);\n this.#updateGetValueFromSignalsEffect();\n return this.#makeRemoveFunc(signals);\n }\n\n remove(...signals: SignalLike<any>[]) {\n this.#makeRemoveFunc(signals)();\n }\n\n clear() {\n this.#signals.length = 0;\n this.#updateGetValueFromSignalsEffect();\n }\n\n dispose() {\n this.clear();\n\n this.#effect?.destroy();\n this.#effect = undefined;\n\n retainClear(this as SignalsPath, VALUE);\n off(this);\n\n this.value$.destroy();\n destroyObjectSignals(this);\n }\n\n #makeRemoveFunc(signals: SignalLike<any>[]) {\n return () => {\n for (const sig of signals) {\n const idx = this.#signals.indexOf(sig);\n if (idx !== -1) {\n this.#signals.splice(idx, 1);\n }\n }\n this.#updateGetValueFromSignalsEffect();\n };\n }\n\n #updateGetValueFromSignalsEffect() {\n this.#effect?.destroy();\n if (this.#signals.length === 0) {\n this.#effect = undefined;\n this.value = undefined;\n } else {\n this.#effect = createEffect(() => {\n let valueFromSignals: any;\n for (const sig of this.#signals) {\n const val = value(sig);\n if (val != null) {\n valueFromSignals = val;\n break;\n }\n }\n this.value = valueFromSignals;\n }, this.#signals);\n this.#effect.run();\n }\n }\n}"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA,SAAQ,MAAM,KAAK,QAAQ,mBAAkB;AAC7C;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAGA;AAAA,OACK;AACP,SAAQ,cAAa;AAErB,MAAM,QAAQ;AAQZ,cAAC,OAAO,EAAC,MAAM,MAAK,CAAC;AANhB,MAAM,YAAY;AAAA,EAUvB,YAAY,SAA6B;AAVpC;AAGL,iCAA8B,CAAC;AAC/B;AAEuB,uBAAS,QAAa,kBAAtB;AAEvB,SAAS,SAAT;AAGE,WAAO,MAAqB,KAAK;AAEjC,SAAK,SAAS,uBAAuB,MAAM,KAAK;AAChD,SAAK,OAAO,SAAS,CAAC,QAAQ,KAAK,MAAqB,OAAO,GAAG,CAAC;AAEnE,QAAI,SAAS;AACX,WAAK,IAAI,GAAG,OAAO;AAAA,IACrB;AAAA,EACF;AAAA,EAEA,OAAO,SAA4C;AACjD,uBAAK,UAAS,KAAK,GAAG,OAAO;AAC7B,0BAAK,4DAAL;AACA,WAAO,sBAAK,2CAAL,WAAqB;AAAA,EAC9B;AAAA,EAEA,WAAW,SAA4B;AACrC,uBAAK,UAAS,QAAQ,GAAG,OAAO;AAChC,0BAAK,4DAAL;AACA,WAAO,sBAAK,2CAAL,WAAqB;AAAA,EAC9B;AAAA,EAEA,UAAU,SAA4B;AACpC,0BAAK,2CAAL,WAAqB,SAAS;AAAA,EAChC;AAAA,EAEA,QAAQ;AACN,uBAAK,UAAS,SAAS;AACvB,0BAAK,4DAAL;AAAA,EACF;AAAA,EAEA,UAAU;AACR,SAAK,MAAM;AAEX,uBAAK,UAAS,QAAQ;AACtB,uBAAK,SAAU;AAEf,gBAAY,MAAqB,KAAK;AACtC,QAAI,IAAI;AAER,SAAK,OAAO,QAAQ;AACpB,yBAAqB,IAAI;AAAA,EAC3B;AAkCF;AAvFO;AAGL;AACA;AAEgC;AAN3B;AAuDL,oBAAe,SAAC,SAA4B;AAC1C,SAAO,MAAM;AACX,eAAW,OAAO,SAAS;AACzB,YAAM,MAAM,mBAAK,UAAS,QAAQ,GAAG;AACrC,UAAI,QAAQ,IAAI;AACd,2BAAK,UAAS,OAAO,KAAK,CAAC;AAAA,MAC7B;AAAA,IACF;AACA,0BAAK,4DAAL;AAAA,EACF;AACF;AAEA,qCAAgC,WAAG;AACjC,qBAAK,UAAS,QAAQ;AACtB,MAAI,mBAAK,UAAS,WAAW,GAAG;AAC9B,uBAAK,SAAU;AACf,SAAK,QAAQ;AAAA,EACf,OAAO;AACL,uBAAK,SAAU,aAAa,MAAM;AAChC,UAAI;AACJ,iBAAW,OAAO,mBAAK,WAAU;AAC/B,cAAM,MAAM,MAAM,GAAG;AACrB,YAAI,OAAO,MAAM;AACf,6BAAmB;AACnB;AAAA,QACF;AAAA,MACF;AACA,WAAK,QAAQ;AAAA,IACf,GAAG,mBAAK,SAAQ;AAChB,uBAAK,SAAQ,IAAI;AAAA,EACnB;AACF;AAhFuB,4BAAS,SAAhC,YANW,aAMqB;AAN3B,2BAAM;AAAA,YACK,QAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
const onCreate = /* @__PURE__ */ Symbol("onCreate");
|
|
2
|
+
const onDestroy = /* @__PURE__ */ Symbol("onDestroy");
|
|
3
|
+
const onParentChanged = /* @__PURE__ */ Symbol("onParentChanged");
|
|
4
|
+
const onViewEvent = /* @__PURE__ */ Symbol("onViewEvent");
|
|
5
|
+
export {
|
|
6
|
+
onCreate,
|
|
7
|
+
onDestroy,
|
|
8
|
+
onParentChanged,
|
|
9
|
+
onViewEvent
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=events.js.map
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/in-the-dark/events.ts"],
|
|
4
|
+
"sourcesContent": ["import type {Entity} from './Entity.js';\n\n// ----------------------------------------------------------------------------\n\nexport const onCreate = Symbol('onCreate');\n\nexport interface OnCreate {\n /**\n * Is called when the shadow-object instance has been created and attached to the entity.\n *\n * This can be the case when the entity is being initialized, or when the already initialized entity has received a token change.\n *\n * Only the shadow-object gets this event.\n * The entity does not get this event.\n */\n [onCreate](entity: Entity): void;\n}\n\n// ----------------------------------------------------------------------------\n\nexport const onDestroy = Symbol('onDestroy');\n\nexport interface OnDestroy {\n /**\n * Is called when the shadow-object is about to be destroyed.\n * Only the shadow-object gets this event.\n * The entity does not get this event.\n */\n [onDestroy](entity: Entity): void;\n}\n\n// ----------------------------------------------------------------------------\n\nexport const onParentChanged = Symbol('onParentChanged');\n\nexport interface OnParentChangedEvent {\n [onParentChanged](entity: Entity): void;\n}\n\n// ----------------------------------------------------------------------------\n\nexport const onViewEvent = Symbol('onViewEvent');\n\nexport interface OnViewEvent {\n [onViewEvent](type: string, data: unknown): void;\n}"],
|
|
5
|
+
"mappings": "AAIO,MAAM,WAAW,uBAAO,UAAU;AAgBlC,MAAM,YAAY,uBAAO,WAAW;AAapC,MAAM,kBAAkB,uBAAO,iBAAiB;AAQhD,MAAM,cAAc,uBAAO,aAAa;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,32 +1,34 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
async function importModule(kernel, module, importedModules, upgradeEntities = true) {
|
|
2
|
+
if (importedModules.has(module)) {
|
|
3
|
+
console.warn("importModule: skipping already imported module", module);
|
|
4
|
+
return;
|
|
5
|
+
} else {
|
|
6
|
+
importedModules.add(module);
|
|
7
|
+
}
|
|
8
|
+
if (module.extends) {
|
|
9
|
+
await Promise.all(module.extends.map((subModule) => importModule(kernel, subModule, importedModules, false)));
|
|
10
|
+
}
|
|
11
|
+
const { registry } = kernel;
|
|
12
|
+
if (module.define) {
|
|
13
|
+
for (const [token, constructor] of Object.entries(module.define)) {
|
|
14
|
+
registry.define(token, constructor);
|
|
5
15
|
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
await Promise.all(module.extends.map((subModule) => importModule(kernel, subModule, importedModules, false)));
|
|
11
|
-
}
|
|
12
|
-
const { registry } = kernel;
|
|
13
|
-
if (module.define) {
|
|
14
|
-
for (const [token, constructor] of Object.entries(module.define)) {
|
|
15
|
-
registry.define(token, constructor);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
if (module.routes) {
|
|
19
|
-
for (const [token, routes] of Object.entries(module.routes)) {
|
|
20
|
-
registry.appendRoute(token, routes);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
await (module.initialize?.({
|
|
24
|
-
define: (token, constructor) => registry.define(token, constructor),
|
|
25
|
-
kernel,
|
|
26
|
-
registry,
|
|
27
|
-
}) ?? Promise.resolve());
|
|
28
|
-
if (upgradeEntities) {
|
|
29
|
-
kernel.upgradeEntities();
|
|
16
|
+
}
|
|
17
|
+
if (module.routes) {
|
|
18
|
+
for (const [token, routes] of Object.entries(module.routes)) {
|
|
19
|
+
registry.appendRoute(token, routes);
|
|
30
20
|
}
|
|
21
|
+
}
|
|
22
|
+
await (module.initialize?.({
|
|
23
|
+
define: (token, constructor) => registry.define(token, constructor),
|
|
24
|
+
kernel,
|
|
25
|
+
registry
|
|
26
|
+
}) ?? Promise.resolve());
|
|
27
|
+
if (upgradeEntities) {
|
|
28
|
+
kernel.upgradeEntities();
|
|
29
|
+
}
|
|
31
30
|
}
|
|
32
|
-
|
|
31
|
+
export {
|
|
32
|
+
importModule
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=importModule.js.map
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/in-the-dark/importModule.ts"],
|
|
4
|
+
"sourcesContent": ["import type {ShadowObjectConstructor, ShadowObjectsModule} from '../types.js';\nimport type {Kernel} from './Kernel.js';\n\nexport async function importModule(\n kernel: Kernel,\n module: ShadowObjectsModule,\n importedModules: Set<ShadowObjectsModule>,\n upgradeEntities = true,\n): Promise<void> {\n if (importedModules.has(module)) {\n console.warn('importModule: skipping already imported module', module);\n return;\n } else {\n importedModules.add(module);\n }\n\n if (module.extends) {\n await Promise.all(module.extends.map((subModule) => importModule(kernel, subModule, importedModules, false)));\n }\n\n const {registry} = kernel;\n\n if (module.define) {\n for (const [token, constructor] of Object.entries(module.define)) {\n registry.define(token, constructor as ShadowObjectConstructor);\n }\n }\n\n if (module.routes) {\n for (const [token, routes] of Object.entries(module.routes)) {\n registry.appendRoute(token, routes);\n }\n }\n\n await (module.initialize?.({\n define: (token, constructor) => registry.define(token, constructor as ShadowObjectConstructor),\n kernel,\n registry,\n }) ?? Promise.resolve());\n\n if (upgradeEntities) {\n kernel.upgradeEntities();\n }\n}"],
|
|
5
|
+
"mappings": "AAGA,eAAsB,aACpB,QACA,QACA,iBACA,kBAAkB,MACH;AACf,MAAI,gBAAgB,IAAI,MAAM,GAAG;AAC/B,YAAQ,KAAK,kDAAkD,MAAM;AACrE;AAAA,EACF,OAAO;AACL,oBAAgB,IAAI,MAAM;AAAA,EAC5B;AAEA,MAAI,OAAO,SAAS;AAClB,UAAM,QAAQ,IAAI,OAAO,QAAQ,IAAI,CAAC,cAAc,aAAa,QAAQ,WAAW,iBAAiB,KAAK,CAAC,CAAC;AAAA,EAC9G;AAEA,QAAM,EAAC,SAAQ,IAAI;AAEnB,MAAI,OAAO,QAAQ;AACjB,eAAW,CAAC,OAAO,WAAW,KAAK,OAAO,QAAQ,OAAO,MAAM,GAAG;AAChE,eAAS,OAAO,OAAO,WAAsC;AAAA,IAC/D;AAAA,EACF;AAEA,MAAI,OAAO,QAAQ;AACjB,eAAW,CAAC,OAAO,MAAM,KAAK,OAAO,QAAQ,OAAO,MAAM,GAAG;AAC3D,eAAS,YAAY,OAAO,MAAM;AAAA,IACpC;AAAA,EACF;AAEA,SAAO,OAAO,aAAa;AAAA,IACzB,QAAQ,CAAC,OAAO,gBAAgB,SAAS,OAAO,OAAO,WAAsC;AAAA,IAC7F;AAAA,IACA;AAAA,EACF,CAAC,KAAK,QAAQ,QAAQ;AAEtB,MAAI,iBAAiB;AACnB,WAAO,gBAAgB;AAAA,EACzB;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/src/index.d.ts
CHANGED
|
@@ -4,13 +4,13 @@ export * from './elements/ShaeElement.js';
|
|
|
4
4
|
export * from './elements/ShaeEntElement.js';
|
|
5
5
|
export * from './elements/ShaePropElement.js';
|
|
6
6
|
export * from './elements/ShaeWorkerElement.js';
|
|
7
|
+
export type * from './types.js';
|
|
7
8
|
export * from './utils/toNamespace.js';
|
|
8
9
|
export * from './view/ComponentContext.js';
|
|
9
10
|
export * from './view/ComponentMemory.js';
|
|
11
|
+
export type * from './view/IShadowObjectEnvProxy.js';
|
|
10
12
|
export * from './view/LocalShadowObjectEnv.js';
|
|
11
13
|
export * from './view/RemoteWorkerEnv.js';
|
|
12
14
|
export * from './view/ShadowEnv.js';
|
|
13
15
|
export * from './view/ViewComponent.js';
|
|
14
|
-
export type * from './types.js';
|
|
15
|
-
export type * from './view/IShadowObjectEnvProxy.js';
|
|
16
16
|
//# sourceMappingURL=index.d.ts.map
|
package/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,mBAAmB,YAAY,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,mBAAmB,iCAAiC,CAAC;AACrD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC"}
|
package/src/index.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export * from
|
|
3
|
-
export * from
|
|
4
|
-
export * from
|
|
5
|
-
export * from
|
|
6
|
-
export * from
|
|
7
|
-
export * from
|
|
8
|
-
export * from
|
|
9
|
-
export * from
|
|
10
|
-
export * from
|
|
11
|
-
export * from
|
|
12
|
-
export * from
|
|
13
|
-
export * from
|
|
14
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
export * from "./constants.js";
|
|
2
|
+
export * from "./elements/constants.js";
|
|
3
|
+
export * from "./elements/ShaeElement.js";
|
|
4
|
+
export * from "./elements/ShaeEntElement.js";
|
|
5
|
+
export * from "./elements/ShaePropElement.js";
|
|
6
|
+
export * from "./elements/ShaeWorkerElement.js";
|
|
7
|
+
export * from "./utils/toNamespace.js";
|
|
8
|
+
export * from "./view/ComponentContext.js";
|
|
9
|
+
export * from "./view/ComponentMemory.js";
|
|
10
|
+
export * from "./view/LocalShadowObjectEnv.js";
|
|
11
|
+
export * from "./view/RemoteWorkerEnv.js";
|
|
12
|
+
export * from "./view/ShadowEnv.js";
|
|
13
|
+
export * from "./view/ViewComponent.js";
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
package/src/index.js.map
CHANGED
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/index.ts"],
|
|
4
|
+
"sourcesContent": ["export * from './constants.js';\nexport * from './elements/constants.js';\nexport * from './elements/ShaeElement.js';\nexport * from './elements/ShaeEntElement.js';\nexport * from './elements/ShaePropElement.js';\nexport * from './elements/ShaeWorkerElement.js';\nexport type * from './types.js';\nexport * from './utils/toNamespace.js';\nexport * from './view/ComponentContext.js';\nexport * from './view/ComponentMemory.js';\nexport type * from './view/IShadowObjectEnvProxy.js';\nexport * from './view/LocalShadowObjectEnv.js';\nexport * from './view/RemoteWorkerEnv.js';\nexport * from './view/ShadowEnv.js';\nexport * from './view/ViewComponent.js';"],
|
|
5
|
+
"mappings": "AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AAEd,cAAc;AACd,cAAc;AACd,cAAc;AAEd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/src/shadow-objects.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export * from
|
|
3
|
-
export * from
|
|
4
|
-
export * from
|
|
5
|
-
export * from
|
|
6
|
-
//# sourceMappingURL=shadow-objects.js.map
|
|
1
|
+
export * from "./constants.js";
|
|
2
|
+
export * from "./in-the-dark/events.js";
|
|
3
|
+
export * from "./in-the-dark/Kernel.js";
|
|
4
|
+
export * from "./in-the-dark/Registry.js";
|
|
5
|
+
export * from "./in-the-dark/ShadowObject.js";
|
|
6
|
+
//# sourceMappingURL=shadow-objects.js.map
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/shadow-objects.ts"],
|
|
4
|
+
"sourcesContent": ["export * from './constants.js';\nexport * from './in-the-dark/events.js';\nexport * from './in-the-dark/Kernel.js';\nexport * from './in-the-dark/Registry.js';\nexport * from './in-the-dark/ShadowObject.js';\nexport type * from './types.js';"],
|
|
5
|
+
"mappings": "AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { WorkerRuntime } from
|
|
2
|
-
console.debug(
|
|
1
|
+
import { WorkerRuntime } from "./worker/WorkerRuntime.js";
|
|
2
|
+
console.debug("@spearwolf/shadow-objects/WorkerRuntime: hello!");
|
|
3
3
|
const shadowRuntime = new WorkerRuntime();
|
|
4
4
|
shadowRuntime.start();
|
|
5
|
-
//# sourceMappingURL=shadow-objects.worker.js.map
|
|
5
|
+
//# sourceMappingURL=shadow-objects.worker.js.map
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/shadow-objects.worker.js"],
|
|
4
|
+
"sourcesContent": ["import {WorkerRuntime} from './worker/WorkerRuntime.js';\n\nconsole.debug('@spearwolf/shadow-objects/WorkerRuntime: hello!');\n\nconst shadowRuntime = new WorkerRuntime();\nshadowRuntime.start();"],
|
|
5
|
+
"mappings": "AAAA,SAAQ,qBAAoB;AAE5B,QAAQ,MAAM,iDAAiD;AAE/D,MAAM,gBAAgB,IAAI,cAAc;AACxC,cAAc,MAAM;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/src/shae-ent.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { SHAE_ENT } from "./elements/constants.js";
|
|
2
|
+
import { ShaeEntElement } from "./elements/ShaeEntElement.js";
|
|
3
3
|
customElements.define(SHAE_ENT, ShaeEntElement);
|
|
4
|
-
//# sourceMappingURL=shae-ent.js.map
|
|
4
|
+
//# sourceMappingURL=shae-ent.js.map
|
package/src/shae-ent.js.map
CHANGED
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/shae-ent.ts"],
|
|
4
|
+
"sourcesContent": ["import {SHAE_ENT} from './elements/constants.js';\nimport {ShaeEntElement} from './elements/ShaeEntElement.js';\n\ncustomElements.define(SHAE_ENT, ShaeEntElement);"],
|
|
5
|
+
"mappings": "AAAA,SAAQ,gBAAe;AACvB,SAAQ,sBAAqB;AAE7B,eAAe,OAAO,UAAU,cAAc;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/src/shae-prop.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { SHAE_ENT, SHAE_PROP } from "./elements/constants.js";
|
|
2
|
+
import { ShaePropElement } from "./elements/ShaePropElement.js";
|
|
3
3
|
customElements.whenDefined(SHAE_ENT).then(() => customElements.define(SHAE_PROP, ShaePropElement));
|
|
4
|
-
//# sourceMappingURL=shae-prop.js.map
|
|
4
|
+
//# sourceMappingURL=shae-prop.js.map
|
package/src/shae-prop.js.map
CHANGED
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/shae-prop.ts"],
|
|
4
|
+
"sourcesContent": ["import {SHAE_ENT, SHAE_PROP} from './elements/constants.js';\nimport {ShaePropElement} from './elements/ShaePropElement.js';\n\ncustomElements.whenDefined(SHAE_ENT).then(() => customElements.define(SHAE_PROP, ShaePropElement));"],
|
|
5
|
+
"mappings": "AAAA,SAAQ,UAAU,iBAAgB;AAClC,SAAQ,uBAAsB;AAE9B,eAAe,YAAY,QAAQ,EAAE,KAAK,MAAM,eAAe,OAAO,WAAW,eAAe,CAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/src/shae-worker.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { SHAE_WORKER } from "./elements/constants.js";
|
|
2
|
+
import { ShaeWorkerElement } from "./elements/ShaeWorkerElement.js";
|
|
3
3
|
customElements.define(SHAE_WORKER, ShaeWorkerElement);
|
|
4
|
-
//# sourceMappingURL=shae-worker.js.map
|
|
4
|
+
//# sourceMappingURL=shae-worker.js.map
|
package/src/shae-worker.js.map
CHANGED
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/shae-worker.ts"],
|
|
4
|
+
"sourcesContent": ["import {SHAE_WORKER} from './elements/constants.js';\nimport {ShaeWorkerElement} from './elements/ShaeWorkerElement.js';\n\ncustomElements.define(SHAE_WORKER, ShaeWorkerElement);"],
|
|
5
|
+
"mappings": "AAAA,SAAQ,mBAAkB;AAC1B,SAAQ,yBAAwB;AAEhC,eAAe,OAAO,aAAa,iBAAiB;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/src/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AnyEventNames, EventArgs, EventizedObject,
|
|
1
|
+
import type { AnyEventNames, EventArgs, EventizedObject, on, once, SubscribeArgs } from '@spearwolf/eventize';
|
|
2
2
|
import type { CompareFunc, createEffect, createMemo, createSignal, Signal, SignalReader } from '@spearwolf/signalize';
|
|
3
3
|
import type { AppliedChangeTrail, ComponentChangeType, ImportedModule } from './constants.js';
|
|
4
4
|
import type { Entity } from './in-the-dark/Entity.js';
|
|
@@ -21,6 +21,7 @@ export interface ICreateEntitiesChange extends IComponentChange {
|
|
|
21
21
|
parentUuid?: string;
|
|
22
22
|
order?: number;
|
|
23
23
|
properties?: ComponentPropertiesType;
|
|
24
|
+
autoDestructionOnParentRemoval?: boolean;
|
|
24
25
|
}
|
|
25
26
|
export interface IChangeToken extends IComponentChange {
|
|
26
27
|
type: ComponentChangeType.ChangeToken;
|
|
@@ -61,7 +62,7 @@ export interface AppliedChangeTrailEvent {
|
|
|
61
62
|
serial?: number;
|
|
62
63
|
error?: string;
|
|
63
64
|
}
|
|
64
|
-
export type EntityApi = Readonly<Pick<Entity, 'uuid' | 'order' | 'hasParent' | 'propKeys' | 'propEntries'> & {
|
|
65
|
+
export type EntityApi = Readonly<Pick<Entity, 'uuid' | 'order' | 'hasParent' | 'propKeys' | 'propEntries' | 'kernel'> & {
|
|
65
66
|
parent?: EntityApi;
|
|
66
67
|
children: readonly EntityApi[];
|
|
67
68
|
traverse(callback: (entity: EntityApi) => unknown): void;
|
|
@@ -91,9 +92,9 @@ export interface ShadowObjectCreationAPI {
|
|
|
91
92
|
createSignal<T = unknown>(...args: Parameters<typeof createSignal<T>>): ReturnType<typeof createSignal<T>>;
|
|
92
93
|
createMemo<T = unknown>(...args: Parameters<typeof createMemo<T>>): SignalReader<T>;
|
|
93
94
|
on(...args: SubscribeArgs): ReturnType<typeof on>;
|
|
94
|
-
on(...args:
|
|
95
|
+
on(...args: [object, ...SubscribeArgs]): ReturnType<typeof on>;
|
|
95
96
|
once(...args: SubscribeArgs): ReturnType<typeof once>;
|
|
96
|
-
once(...args:
|
|
97
|
+
once(...args: [object, ...SubscribeArgs]): ReturnType<typeof once>;
|
|
97
98
|
onViewEvent(callback: (type: string, data: unknown) => any): void;
|
|
98
99
|
/**
|
|
99
100
|
* Emit an event on the *entity* associated with this shadow object.
|