reactronic 0.23.112 → 0.23.114
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.
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { all, pause } from './util/Utils.js';
|
|
2
2
|
export { MergeList } from './util/MergeList.js';
|
|
3
|
-
export type { MergeItem, MergeListReader } from './util/MergeList.js';
|
|
3
|
+
export type { MergedItem as MergeItem, MergeListReader } from './util/MergeList.js';
|
|
4
4
|
export { SealedArray } from './util/SealedArray.js';
|
|
5
5
|
export { SealedMap } from './util/SealedMap.js';
|
|
6
6
|
export { SealedSet } from './util/SealedSet.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MergeList,
|
|
1
|
+
import { MergeList, MergedItem, MergeListReader } from '../util/MergeList.js';
|
|
2
2
|
import { ObservableObject } from './Mvcc.js';
|
|
3
3
|
export declare abstract class ObservableMergeList<T> extends ObservableObject implements MergeListReader<T> {
|
|
4
4
|
protected abstract impl: MergeList<T>;
|
|
@@ -7,20 +7,20 @@ export declare abstract class ObservableMergeList<T> extends ObservableObject im
|
|
|
7
7
|
get addedCount(): number;
|
|
8
8
|
get removedCount(): number;
|
|
9
9
|
get isMergeInProgress(): boolean;
|
|
10
|
-
lookup(key: string):
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
move(item:
|
|
10
|
+
lookup(key: string): MergedItem<T> | undefined;
|
|
11
|
+
tryMergeAsExisting(key: string): MergedItem<T> | undefined;
|
|
12
|
+
mergeAsAdded(instance: T): MergedItem<T>;
|
|
13
|
+
mergeAsRemoved(item: MergedItem<T>): void;
|
|
14
|
+
move(item: MergedItem<T>, after: MergedItem<T>): void;
|
|
15
15
|
beginMerge(): void;
|
|
16
16
|
endMerge(error?: unknown): void;
|
|
17
17
|
resetAddedAndRemovedLists(): void;
|
|
18
|
-
|
|
19
|
-
items(): Generator<
|
|
20
|
-
addedItems(reset?: boolean): Generator<
|
|
21
|
-
removedItems(reset?: boolean): Generator<
|
|
22
|
-
isAdded(item:
|
|
23
|
-
isMoved(item:
|
|
24
|
-
isRemoved(item:
|
|
25
|
-
|
|
18
|
+
lastMergedItem(): MergedItem<T> | undefined;
|
|
19
|
+
items(): Generator<MergedItem<T>>;
|
|
20
|
+
addedItems(reset?: boolean): Generator<MergedItem<T>>;
|
|
21
|
+
removedItems(reset?: boolean): Generator<MergedItem<T>>;
|
|
22
|
+
isAdded(item: MergedItem<T>): boolean;
|
|
23
|
+
isMoved(item: MergedItem<T>): boolean;
|
|
24
|
+
isRemoved(item: MergedItem<T>): boolean;
|
|
25
|
+
isActual(item: MergedItem<T>): boolean;
|
|
26
26
|
}
|
|
@@ -6,19 +6,19 @@ export class ObservableMergeList extends ObservableObject {
|
|
|
6
6
|
get removedCount() { return this.impl.removedCount; }
|
|
7
7
|
get isMergeInProgress() { return this.impl.isMergeInProgress; }
|
|
8
8
|
lookup(key) { return this.impl.lookup(key); }
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
tryMergeAsExisting(key) { return this.impl.tryMergeAsExisting(key); }
|
|
10
|
+
mergeAsAdded(instance) { return this.impl.mergeAsAdded(instance); }
|
|
11
|
+
mergeAsRemoved(item) { return this.impl.mergeAsRemoved(item); }
|
|
12
12
|
move(item, after) { this.impl.move(item, after); }
|
|
13
13
|
beginMerge() { this.impl.beginMerge(); }
|
|
14
14
|
endMerge(error) { this.impl.endMerge(error); }
|
|
15
15
|
resetAddedAndRemovedLists() { this.impl.resetAddedAndRemovedLists(); }
|
|
16
|
-
|
|
16
|
+
lastMergedItem() { return this.impl.lastMergedItem(); }
|
|
17
17
|
items() { return this.impl.items(); }
|
|
18
18
|
addedItems(reset) { return this.impl.addedItems(reset); }
|
|
19
19
|
removedItems(reset) { return this.impl.removedItems(reset); }
|
|
20
20
|
isAdded(item) { return this.impl.isAdded(item); }
|
|
21
21
|
isMoved(item) { return this.impl.isMoved(item); }
|
|
22
22
|
isRemoved(item) { return this.impl.isRemoved(item); }
|
|
23
|
-
|
|
23
|
+
isActual(item) { return this.impl.isActual(item); }
|
|
24
24
|
}
|
|
@@ -5,27 +5,27 @@ export interface MergeListReader<T> {
|
|
|
5
5
|
readonly addedCount: number;
|
|
6
6
|
readonly removedCount: number;
|
|
7
7
|
readonly isMergeInProgress: boolean;
|
|
8
|
-
lookup(key: string):
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
move(item:
|
|
8
|
+
lookup(key: string): MergedItem<T> | undefined;
|
|
9
|
+
tryMergeAsExisting(key: string): MergedItem<T> | undefined;
|
|
10
|
+
mergeAsAdded(instance: T): MergedItem<T>;
|
|
11
|
+
mergeAsRemoved(item: MergedItem<T>): void;
|
|
12
|
+
move(item: MergedItem<T>, after: MergedItem<T>): void;
|
|
13
13
|
beginMerge(): void;
|
|
14
14
|
endMerge(error?: unknown): void;
|
|
15
15
|
resetAddedAndRemovedLists(): void;
|
|
16
|
-
|
|
17
|
-
items(): Generator<
|
|
18
|
-
addedItems(reset?: boolean): Generator<
|
|
19
|
-
removedItems(reset?: boolean): Generator<
|
|
20
|
-
isAdded(item:
|
|
21
|
-
isMoved(item:
|
|
22
|
-
isRemoved(item:
|
|
23
|
-
|
|
16
|
+
lastMergedItem(): MergedItem<T> | undefined;
|
|
17
|
+
items(): Generator<MergedItem<T>>;
|
|
18
|
+
addedItems(reset?: boolean): Generator<MergedItem<T>>;
|
|
19
|
+
removedItems(reset?: boolean): Generator<MergedItem<T>>;
|
|
20
|
+
isAdded(item: MergedItem<T>): boolean;
|
|
21
|
+
isMoved(item: MergedItem<T>): boolean;
|
|
22
|
+
isRemoved(item: MergedItem<T>): boolean;
|
|
23
|
+
isActual(item: MergedItem<T>): boolean;
|
|
24
24
|
}
|
|
25
|
-
export interface
|
|
25
|
+
export interface MergedItem<T> {
|
|
26
26
|
readonly instance: T;
|
|
27
|
-
readonly prev?:
|
|
28
|
-
aux?:
|
|
27
|
+
readonly prev?: MergedItem<T>;
|
|
28
|
+
aux?: MergedItem<T>;
|
|
29
29
|
}
|
|
30
30
|
export declare class MergeList<T> implements MergeListReader<T> {
|
|
31
31
|
readonly getKey: GetMergeItemKey<T>;
|
|
@@ -44,24 +44,24 @@ export declare class MergeList<T> implements MergeListReader<T> {
|
|
|
44
44
|
get addedCount(): number;
|
|
45
45
|
get removedCount(): number;
|
|
46
46
|
get isMergeInProgress(): boolean;
|
|
47
|
-
lookup(key: string | undefined):
|
|
48
|
-
|
|
47
|
+
lookup(key: string | undefined): MergedItem<T> | undefined;
|
|
48
|
+
tryMergeAsExisting(key: string, resolution?: {
|
|
49
49
|
isDuplicate: boolean;
|
|
50
|
-
}, error?: string):
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
move(item:
|
|
50
|
+
}, error?: string): MergedItem<T> | undefined;
|
|
51
|
+
mergeAsAdded(instance: T): MergedItem<T>;
|
|
52
|
+
mergeAsRemoved(item: MergedItem<T>): void;
|
|
53
|
+
move(item: MergedItem<T>, after: MergedItem<T>): void;
|
|
54
54
|
beginMerge(): void;
|
|
55
55
|
endMerge(error?: unknown): void;
|
|
56
56
|
resetAddedAndRemovedLists(): void;
|
|
57
|
-
|
|
58
|
-
items(): Generator<
|
|
59
|
-
addedItems(reset?: boolean): Generator<
|
|
60
|
-
removedItems(reset?: boolean): Generator<
|
|
61
|
-
isAdded(item:
|
|
62
|
-
isMoved(item:
|
|
63
|
-
isRemoved(item:
|
|
64
|
-
|
|
65
|
-
markAsMoved(item:
|
|
66
|
-
static createItem<T>(instance: T):
|
|
57
|
+
lastMergedItem(): MergedItem<T> | undefined;
|
|
58
|
+
items(): Generator<MergedItem<T>>;
|
|
59
|
+
addedItems(reset?: boolean): Generator<MergedItem<T>>;
|
|
60
|
+
removedItems(reset?: boolean): Generator<MergedItem<T>>;
|
|
61
|
+
isAdded(item: MergedItem<T>): boolean;
|
|
62
|
+
isMoved(item: MergedItem<T>): boolean;
|
|
63
|
+
isRemoved(item: MergedItem<T>): boolean;
|
|
64
|
+
isActual(item: MergedItem<T>): boolean;
|
|
65
|
+
markAsMoved(item: MergedItem<T>): void;
|
|
66
|
+
static createItem<T>(instance: T): MergedItem<T>;
|
|
67
67
|
}
|
|
@@ -43,7 +43,7 @@ export class MergeList {
|
|
|
43
43
|
}
|
|
44
44
|
return result;
|
|
45
45
|
}
|
|
46
|
-
|
|
46
|
+
tryMergeAsExisting(key, resolution, error) {
|
|
47
47
|
const tag = this.tag;
|
|
48
48
|
if (tag < 0)
|
|
49
49
|
throw new Error(error !== null && error !== void 0 ? error : 'merge is not in progress');
|
|
@@ -70,7 +70,7 @@ export class MergeList {
|
|
|
70
70
|
resolution.isDuplicate = false;
|
|
71
71
|
return item;
|
|
72
72
|
}
|
|
73
|
-
|
|
73
|
+
mergeAsAdded(instance) {
|
|
74
74
|
const key = this.getKey(instance);
|
|
75
75
|
if (this.lookup(key) !== undefined)
|
|
76
76
|
throw new Error(`key is already in use: ${key}`);
|
|
@@ -87,7 +87,7 @@ export class MergeList {
|
|
|
87
87
|
this.added.aux(item);
|
|
88
88
|
return item;
|
|
89
89
|
}
|
|
90
|
-
|
|
90
|
+
mergeAsRemoved(item) {
|
|
91
91
|
const t = item;
|
|
92
92
|
if (!this.isRemoved(t)) {
|
|
93
93
|
this.current.exclude(t);
|
|
@@ -142,7 +142,7 @@ export class MergeList {
|
|
|
142
142
|
this.removed.reset();
|
|
143
143
|
this.added.reset();
|
|
144
144
|
}
|
|
145
|
-
|
|
145
|
+
lastMergedItem() {
|
|
146
146
|
return this.current.last;
|
|
147
147
|
}
|
|
148
148
|
*items() {
|
|
@@ -193,7 +193,7 @@ export class MergeList {
|
|
|
193
193
|
const tag = this.tag;
|
|
194
194
|
return tag > 0 ? t.tag < tag : t.tag < tag - 1;
|
|
195
195
|
}
|
|
196
|
-
|
|
196
|
+
isActual(item) {
|
|
197
197
|
const t = item;
|
|
198
198
|
return t.tag === this.tag;
|
|
199
199
|
}
|