reactronic 0.24.268 → 0.24.270
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/build/dist/source/core/MvccMergeList.d.ts +1 -0
- package/build/dist/source/core/MvccMergeList.js +1 -0
- package/build/dist/source/core/RxNode.d.ts +2 -2
- package/build/dist/source/core/RxNode.js +3 -9
- package/build/dist/source/util/MergeList.d.ts +2 -0
- package/build/dist/source/util/MergeList.js +3 -0
- package/package.json +1 -1
|
@@ -15,6 +15,7 @@ export declare abstract class ObservableMergeList<T> extends ObservableObject im
|
|
|
15
15
|
beginMerge(): void;
|
|
16
16
|
endMerge(error?: unknown): void;
|
|
17
17
|
resetAddedAndRemovedLists(): void;
|
|
18
|
+
firstMergedItem(): MergedItem<T> | undefined;
|
|
18
19
|
lastMergedItem(): MergedItem<T> | undefined;
|
|
19
20
|
items(): Generator<MergedItem<T>>;
|
|
20
21
|
addedItems(reset?: boolean): Generator<MergedItem<T>>;
|
|
@@ -13,6 +13,7 @@ export class ObservableMergeList extends ObservableObject {
|
|
|
13
13
|
beginMerge() { this.impl.beginMerge(); }
|
|
14
14
|
endMerge(error) { this.impl.endMerge(error); }
|
|
15
15
|
resetAddedAndRemovedLists() { this.impl.resetAddedAndRemovedLists(); }
|
|
16
|
+
firstMergedItem() { return this.impl.firstMergedItem(); }
|
|
16
17
|
lastMergedItem() { return this.impl.lastMergedItem(); }
|
|
17
18
|
items() { return this.impl.items(); }
|
|
18
19
|
addedItems(reset) { return this.impl.addedItems(reset); }
|
|
@@ -72,7 +72,7 @@ export type RxNodeDriver<E = unknown> = {
|
|
|
72
72
|
destroy(node: RxNode<E>, isLeader: boolean): boolean;
|
|
73
73
|
mount(node: RxNode<E>): void;
|
|
74
74
|
update(node: RxNode<E>): void | Promise<void>;
|
|
75
|
-
child(ownerNode: RxNode<E>, childDriver: RxNodeDriver<any>, childDeclaration?: RxNodeDecl<any>, childPreset?: RxNodeDecl<any>):
|
|
75
|
+
child(ownerNode: RxNode<E>, childDriver: RxNodeDriver<any>, childDeclaration?: RxNodeDecl<any>, childPreset?: RxNodeDecl<any>): MergedItem<RxNode> | undefined;
|
|
76
76
|
};
|
|
77
77
|
export type RxNodeContext<T extends Object = Object> = {
|
|
78
78
|
value: T;
|
|
@@ -87,7 +87,7 @@ export declare abstract class BaseDriver<E = unknown> implements RxNodeDriver<E>
|
|
|
87
87
|
destroy(node: RxNode<E>, isLeader: boolean): boolean;
|
|
88
88
|
mount(node: RxNode<E>): void;
|
|
89
89
|
update(node: RxNode<E>): void | Promise<void>;
|
|
90
|
-
child(ownerNode: RxNode<E>, childDriver: RxNodeDriver<any>, childDeclaration?: RxNodeDecl<any>, childPreset?: RxNodeDecl<any>):
|
|
90
|
+
child(ownerNode: RxNode<E>, childDriver: RxNodeDriver<any>, childDeclaration?: RxNodeDecl<any>, childPreset?: RxNodeDecl<any>): MergedItem<RxNode> | undefined;
|
|
91
91
|
}
|
|
92
92
|
export declare class RxNodeVariable<T extends Object = Object> {
|
|
93
93
|
readonly defaultValue: T | undefined;
|
|
@@ -36,7 +36,6 @@ export var Priority;
|
|
|
36
36
|
})(Priority || (Priority = {}));
|
|
37
37
|
export class RxNode {
|
|
38
38
|
static declare(driver, declaration, preset) {
|
|
39
|
-
var _a;
|
|
40
39
|
let result;
|
|
41
40
|
if (declaration)
|
|
42
41
|
declaration.preset = preset;
|
|
@@ -45,14 +44,8 @@ export class RxNode {
|
|
|
45
44
|
let key = declaration.key;
|
|
46
45
|
const owner = gOwnSeat === null || gOwnSeat === void 0 ? void 0 : gOwnSeat.instance;
|
|
47
46
|
if (owner) {
|
|
48
|
-
owner.driver.child(owner, driver, declaration, preset);
|
|
49
|
-
let existing = undefined;
|
|
47
|
+
let existing = owner.driver.child(owner, driver, declaration, preset);
|
|
50
48
|
const children = owner.children;
|
|
51
|
-
if (driver.isPartition) {
|
|
52
|
-
const last = children.lastMergedItem();
|
|
53
|
-
if (((_a = last === null || last === void 0 ? void 0 : last.instance) === null || _a === void 0 ? void 0 : _a.driver) === driver)
|
|
54
|
-
existing = last;
|
|
55
|
-
}
|
|
56
49
|
existing !== null && existing !== void 0 ? existing : (existing = children.tryMergeAsExisting(key = key || generateKey(owner), undefined, "nested elements can be declared inside update function only"));
|
|
57
50
|
if (existing) {
|
|
58
51
|
result = existing.instance;
|
|
@@ -171,6 +164,7 @@ export class BaseDriver {
|
|
|
171
164
|
invokeOnChangeViaPresetChain(node.element, node.declaration);
|
|
172
165
|
}
|
|
173
166
|
child(ownerNode, childDriver, childDeclaration, childPreset) {
|
|
167
|
+
return undefined;
|
|
174
168
|
}
|
|
175
169
|
}
|
|
176
170
|
export class RxNodeVariable {
|
|
@@ -370,8 +364,8 @@ function runUpdateNestedNodesThenDo(error, action) {
|
|
|
370
364
|
const childNode = child.instance;
|
|
371
365
|
const isPart = childNode.driver.isPartition;
|
|
372
366
|
const host = isPart ? owner : partition;
|
|
373
|
-
const p = (_a = childNode.priority) !== null && _a !== void 0 ? _a : Priority.realtime;
|
|
374
367
|
mounting = markToMountIfNecessary(mounting, host, child, children, sequential);
|
|
368
|
+
const p = (_a = childNode.priority) !== null && _a !== void 0 ? _a : Priority.realtime;
|
|
375
369
|
if (p === Priority.realtime)
|
|
376
370
|
triggerUpdateViaSeat(child);
|
|
377
371
|
else if (p === Priority.normal)
|
|
@@ -13,6 +13,7 @@ export type MergeListReader<T> = {
|
|
|
13
13
|
beginMerge(): void;
|
|
14
14
|
endMerge(error?: unknown): void;
|
|
15
15
|
resetAddedAndRemovedLists(): void;
|
|
16
|
+
firstMergedItem(): MergedItem<T> | undefined;
|
|
16
17
|
lastMergedItem(): MergedItem<T> | undefined;
|
|
17
18
|
items(onlyAfter?: MergedItem<T>): Generator<MergedItem<T>>;
|
|
18
19
|
addedItems(reset?: boolean): Generator<MergedItem<T>>;
|
|
@@ -56,6 +57,7 @@ export declare class MergeList<T> implements MergeListReader<T> {
|
|
|
56
57
|
beginMerge(): void;
|
|
57
58
|
endMerge(error?: unknown): void;
|
|
58
59
|
resetAddedAndRemovedLists(): void;
|
|
60
|
+
firstMergedItem(): MergedItem<T> | undefined;
|
|
59
61
|
lastMergedItem(): MergedItem<T> | undefined;
|
|
60
62
|
items(onlyAfter?: MergedItem<T>): Generator<MergedItem<T>>;
|
|
61
63
|
addedItems(reset?: boolean): Generator<MergedItem<T>>;
|