@adbl/cells 0.0.12 → 0.0.14
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/README.md +16 -13
- package/add-references.sh +19 -0
- package/dist/index.js +1 -0
- package/dist/library/classes.d.ts +68 -42
- package/dist/library/classes.js +185 -215
- package/dist/library/classes.js.map +1 -1
- package/dist/library/index.js +1 -0
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -37,10 +37,10 @@ Source cells are the building blocks of your reactive state. They hold values th
|
|
|
37
37
|
import { Cell } from '@adbl/cells';
|
|
38
38
|
|
|
39
39
|
const count = Cell.source(0);
|
|
40
|
-
console.log(count.
|
|
40
|
+
console.log(count.get()); // Output: 0
|
|
41
41
|
|
|
42
|
-
count.
|
|
43
|
-
console.log(count.
|
|
42
|
+
count.set(5);
|
|
43
|
+
console.log(count.get()); // Output: 5
|
|
44
44
|
```
|
|
45
45
|
|
|
46
46
|
### 2. Derived Cells
|
|
@@ -49,12 +49,12 @@ Derived cells allow you to create computed values based on other cells. They upd
|
|
|
49
49
|
|
|
50
50
|
```javascript
|
|
51
51
|
const count = Cell.source(0);
|
|
52
|
-
const doubledCount = Cell.derived(() => count.
|
|
52
|
+
const doubledCount = Cell.derived(() => count.get() * 2);
|
|
53
53
|
|
|
54
|
-
console.log(doubledCount.
|
|
54
|
+
console.log(doubledCount.get()); // Output: 0
|
|
55
55
|
|
|
56
|
-
count.
|
|
57
|
-
console.log(doubledCount.
|
|
56
|
+
count.set(5);
|
|
57
|
+
console.log(doubledCount.get()); // Output: 10
|
|
58
58
|
```
|
|
59
59
|
|
|
60
60
|
### 3. Reactive Effects
|
|
@@ -68,8 +68,8 @@ count.listen((newValue) => {
|
|
|
68
68
|
console.log(`Count changed to: ${newValue}`);
|
|
69
69
|
});
|
|
70
70
|
|
|
71
|
-
count.
|
|
72
|
-
count.
|
|
71
|
+
count.set(3); // Output: "Count changed to: 3"
|
|
72
|
+
count.set(7); // Output: "Count changed to: 7"
|
|
73
73
|
```
|
|
74
74
|
|
|
75
75
|
### 5. Batch Updates
|
|
@@ -80,13 +80,16 @@ When you need to perform multiple updates but only want to trigger effects once,
|
|
|
80
80
|
const cell1 = Cell.source(0);
|
|
81
81
|
const cell2 = Cell.source(0);
|
|
82
82
|
|
|
83
|
-
|
|
83
|
+
const callback = () => {
|
|
84
84
|
console.log('Update occurred');
|
|
85
|
-
}
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
cell1.listen(callback);
|
|
88
|
+
cell2.listen(callback);
|
|
86
89
|
|
|
87
90
|
Cell.batch(() => {
|
|
88
|
-
cell1.
|
|
89
|
-
cell2.
|
|
91
|
+
cell1.set(1);
|
|
92
|
+
cell2.set(2);
|
|
90
93
|
});
|
|
91
94
|
// Output: "Update occurred" (only once)
|
|
92
95
|
```
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
# Find all .js files in the dist directory
|
|
4
|
+
find dist -type f -name "*.js" | while read -r jsfile; do
|
|
5
|
+
# Get the base name of the file (e.g., index.js)
|
|
6
|
+
base_name=$(basename "$jsfile")
|
|
7
|
+
# Construct the corresponding .d.ts filename (e.g., index.d.ts)
|
|
8
|
+
dts_file="${base_name%.js}.d.ts"
|
|
9
|
+
# Construct the reference comment
|
|
10
|
+
reference_comment="/// <reference types=\"./$dts_file\" />"
|
|
11
|
+
|
|
12
|
+
# Check if the reference comment already exists
|
|
13
|
+
if ! grep -qF "$reference_comment" "$jsfile"; then
|
|
14
|
+
# Prepend the reference comment to the file
|
|
15
|
+
echo "$reference_comment" | cat - "$jsfile" > temp_file && mv temp_file "$jsfile"
|
|
16
|
+
fi
|
|
17
|
+
done
|
|
18
|
+
|
|
19
|
+
echo "Finished adding references."
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @template {*} T
|
|
2
|
+
* @template {*} T The type of value stored in the cell
|
|
3
|
+
*
|
|
4
|
+
* Base class for reactive cells.
|
|
5
|
+
* This class should not be instantiated directly - use `Cell.source` or
|
|
6
|
+
* `Cell.derived` instead.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* // Create a source cell
|
|
11
|
+
* const count = Cell.source(0);
|
|
12
|
+
*
|
|
13
|
+
* // Listen to changes
|
|
14
|
+
* count.listen(value => console.log('Count changed:', value));
|
|
15
|
+
*
|
|
16
|
+
* // Update the value
|
|
17
|
+
* count.set(1); // Logs: Count changed: 1
|
|
18
|
+
* ```
|
|
3
19
|
*/
|
|
4
20
|
export class Cell<T extends unknown> {
|
|
5
21
|
/**
|
|
@@ -12,10 +28,10 @@ export class Cell<T extends unknown> {
|
|
|
12
28
|
* import { Cell } from '@adbl/cells';
|
|
13
29
|
*
|
|
14
30
|
* const cell = Cell.source('Hello world');
|
|
15
|
-
* console.log(cell.
|
|
31
|
+
* console.log(cell.get()); // Hello world.
|
|
16
32
|
*
|
|
17
|
-
* cell.
|
|
18
|
-
* console.log(cell.
|
|
33
|
+
* cell.set('Greetings!');
|
|
34
|
+
* console.log(cell.get()) // Greetings!
|
|
19
35
|
* ```
|
|
20
36
|
*/
|
|
21
37
|
static source: <T_1>(value: T_1, options?: Partial<CellOptions<T_1>> | undefined) => SourceCell<T_1>;
|
|
@@ -28,12 +44,12 @@ export class Cell<T extends unknown> {
|
|
|
28
44
|
* import { Cell } from '@adbl/cells';
|
|
29
45
|
*
|
|
30
46
|
* const cell = Cell.source(2);
|
|
31
|
-
* const derived = Cell.derived(() => cell.
|
|
47
|
+
* const derived = Cell.derived(() => cell.get() * 2);
|
|
32
48
|
*
|
|
33
|
-
* console.log(derived.
|
|
49
|
+
* console.log(derived.get()); // 4
|
|
34
50
|
*
|
|
35
|
-
* cell.
|
|
36
|
-
* console.log(derived.
|
|
51
|
+
* cell.set(3);
|
|
52
|
+
* console.log(derived.get()); // 6
|
|
37
53
|
* ```
|
|
38
54
|
*/
|
|
39
55
|
static derived: <T_2>(callback: () => T_2) => DerivedCell<T_2>;
|
|
@@ -92,10 +108,9 @@ export class Cell<T extends unknown> {
|
|
|
92
108
|
*/
|
|
93
109
|
static async<X_1, Y>(getter: (input: X_1) => Promise<Y>): AsyncRequestAtoms<X_1, Y>;
|
|
94
110
|
/**
|
|
95
|
-
* @readonly
|
|
96
111
|
* @returns {Array<DerivedCell<any>>}
|
|
97
112
|
*/
|
|
98
|
-
|
|
113
|
+
get derivedCells(): DerivedCell<any>[];
|
|
99
114
|
/**
|
|
100
115
|
* @protected @type T
|
|
101
116
|
*/
|
|
@@ -110,7 +125,11 @@ export class Cell<T extends unknown> {
|
|
|
110
125
|
* @returns {T} The value of the Cell.
|
|
111
126
|
*/
|
|
112
127
|
valueOf(): T;
|
|
113
|
-
|
|
128
|
+
/**
|
|
129
|
+
* Gets the current value of the cell and registers it as a dependency if called within a derived cell computation.
|
|
130
|
+
* @returns {T} The value of the Cell.
|
|
131
|
+
*/
|
|
132
|
+
get(): T;
|
|
114
133
|
/**
|
|
115
134
|
* Stringifies the value of the Cell.
|
|
116
135
|
* @returns {string}
|
|
@@ -152,12 +171,13 @@ export class Cell<T extends unknown> {
|
|
|
152
171
|
*/
|
|
153
172
|
stopListeningTo(name: string): void;
|
|
154
173
|
/**
|
|
174
|
+
* @protected
|
|
155
175
|
* Updates the root object and notifies any registered watchers and computed dependents.
|
|
156
176
|
* This method is called whenever the root object's value changes.
|
|
157
177
|
*/
|
|
158
|
-
update(): void;
|
|
178
|
+
protected update(): void;
|
|
159
179
|
/**
|
|
160
|
-
* Returns the current value of the cell without registering
|
|
180
|
+
* Returns the current value of the cell without registering dependencies.
|
|
161
181
|
* @returns {T} - The current value of the cell.
|
|
162
182
|
*/
|
|
163
183
|
peek(): T;
|
|
@@ -179,14 +199,6 @@ export class DerivedCell<T extends unknown> extends Cell<T> {
|
|
|
179
199
|
/** @type {() => T} */
|
|
180
200
|
computedFn: () => T;
|
|
181
201
|
initialized: boolean;
|
|
182
|
-
/**
|
|
183
|
-
* @readonly
|
|
184
|
-
*/
|
|
185
|
-
readonly set value(_: T);
|
|
186
|
-
/**
|
|
187
|
-
* @readonly
|
|
188
|
-
*/
|
|
189
|
-
readonly get value(): T;
|
|
190
202
|
/**
|
|
191
203
|
* Listens for changes to the cell, initializing the value if not already done.
|
|
192
204
|
* @param {(newValue: T) => void} callback - The function to call when the cell's value changes.
|
|
@@ -200,11 +212,27 @@ export class DerivedCell<T extends unknown> extends Cell<T> {
|
|
|
200
212
|
* @returns {*} The result of the parent class's runAndListen method.
|
|
201
213
|
*/
|
|
202
214
|
runAndListen(callback: (newValue: T) => void, options?: object | undefined): any;
|
|
203
|
-
deproxy(): void;
|
|
204
215
|
}
|
|
205
216
|
/**
|
|
206
217
|
* @template {*} T
|
|
207
218
|
* @extends {Cell<T>}
|
|
219
|
+
* A cell whose value can be directly modified.
|
|
220
|
+
* Source cells are the primary way to introduce reactivity.
|
|
221
|
+
* They can hold any value type and will automatically handle proxying of objects
|
|
222
|
+
* to enable deep reactivity when needed.
|
|
223
|
+
*
|
|
224
|
+
* @example
|
|
225
|
+
* ```typescript
|
|
226
|
+
* const count = Cell.source(0);
|
|
227
|
+
* ```
|
|
228
|
+
*
|
|
229
|
+
* @example
|
|
230
|
+
* ```typescript
|
|
231
|
+
* // With options
|
|
232
|
+
* const immutableCell = Cell.source(42, { immutable: true });
|
|
233
|
+
* // Will throw error:
|
|
234
|
+
* immutableCell.set(43);
|
|
235
|
+
* ```
|
|
208
236
|
*/
|
|
209
237
|
export class SourceCell<T extends unknown> extends Cell<T> {
|
|
210
238
|
/**
|
|
@@ -214,29 +242,29 @@ export class SourceCell<T extends unknown> extends Cell<T> {
|
|
|
214
242
|
*/
|
|
215
243
|
constructor(value: T, options?: Partial<CellOptions<T>> | undefined);
|
|
216
244
|
options: Partial<CellOptions<T>> | undefined;
|
|
217
|
-
/**
|
|
218
|
-
* For cells containing objects, returns the object itself.
|
|
219
|
-
* This can be useful in scenarios where unfettered access to the original object is needed,
|
|
220
|
-
* such as when using the object as a cache.
|
|
221
|
-
*
|
|
222
|
-
* @example
|
|
223
|
-
* const cell = new SourceCell({ a: 1, b: 2 });
|
|
224
|
-
* console.log(cell.deproxy()); // { a: 1, b: 2 }
|
|
225
|
-
*
|
|
226
|
-
* cell.value = { a: 3, b: 4 };
|
|
227
|
-
* console.log(cell.deproxy()); // { a: 3, b: 4 }
|
|
228
|
-
*
|
|
229
|
-
* @returns {T extends object ? T : never} The original object if T is an object, otherwise never.
|
|
230
|
-
*/
|
|
231
|
-
deproxy(): T extends object ? T : never;
|
|
232
245
|
/**
|
|
233
246
|
* Sets the value stored in the Cell and triggers an update.
|
|
234
247
|
* @param {T} value
|
|
235
248
|
*/
|
|
236
|
-
set
|
|
237
|
-
get value(): T;
|
|
249
|
+
set(value: T): void;
|
|
238
250
|
#private;
|
|
239
251
|
}
|
|
252
|
+
/**
|
|
253
|
+
* An error class that aggregates multiple errors thrown during a cell update cycle.
|
|
254
|
+
*
|
|
255
|
+
* This error is thrown when one or more errors are encountered while updating cells,
|
|
256
|
+
* such as when running effect callbacks or computed updates. The `errors` property
|
|
257
|
+
* contains an array of all the errors that occurred during the update cycle.
|
|
258
|
+
*
|
|
259
|
+
* @example
|
|
260
|
+
* try {
|
|
261
|
+
* // Some cell update logic that may throw
|
|
262
|
+
* } catch (e) {
|
|
263
|
+
* if (e instanceof CellUpdateError) {
|
|
264
|
+
* console.error('Multiple errors occurred:', e.errors);
|
|
265
|
+
* }
|
|
266
|
+
* }
|
|
267
|
+
*/
|
|
240
268
|
export class CellUpdateError extends Error {
|
|
241
269
|
/** @param {Error[]} errors */
|
|
242
270
|
constructor(errors: Error[]);
|
|
@@ -301,6 +329,4 @@ export type CellOptions<T> = {
|
|
|
301
329
|
equals?: ((oldValue: T, newValue: T) => boolean) | undefined;
|
|
302
330
|
};
|
|
303
331
|
export type NeverIfAny<T> = 0 extends (1 & T) ? never : T;
|
|
304
|
-
export type
|
|
305
|
-
deref: () => T | undefined;
|
|
306
|
-
};
|
|
332
|
+
export type Cellular<T> = () => T;
|
package/dist/library/classes.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="./classes.d.ts" />
|
|
1
2
|
/**
|
|
2
3
|
* @template Input, Output
|
|
3
4
|
* @typedef {Object} AsyncRequestAtoms
|
|
@@ -43,34 +44,38 @@
|
|
|
43
44
|
* @template T
|
|
44
45
|
* @typedef {0 extends (1 & T) ? never : T} NeverIfAny
|
|
45
46
|
*/
|
|
47
|
+
/**
|
|
48
|
+
* @template T
|
|
49
|
+
* @typedef {() => T} Cellular
|
|
50
|
+
*/
|
|
46
51
|
/**
|
|
47
52
|
* The nesting level of batch operations.
|
|
48
53
|
* This will prevent nested batch operations from triggering effects when they finish.
|
|
49
54
|
* @type {number}
|
|
50
55
|
*/
|
|
51
|
-
let
|
|
56
|
+
let BATCH_NESTING_LEVEL = 0;
|
|
52
57
|
/**
|
|
53
58
|
* A map of effect tuples to be executed in a batch.
|
|
54
59
|
* The key in each entry is the effect, and the value is the argument to call it with.
|
|
55
60
|
* All callbacks in this map will be executed only once in a batch.
|
|
56
61
|
* @type {Map<Function, any>}
|
|
57
62
|
*/
|
|
58
|
-
let
|
|
63
|
+
let BATCHED_EFFECTS = new Map();
|
|
59
64
|
/**
|
|
60
65
|
* A value representing the computed values that are currently being calculated.
|
|
61
66
|
* It is an array so it can keep track of nested computed values.
|
|
62
67
|
* @type {DerivedCell<any>[]}
|
|
63
68
|
*/
|
|
64
|
-
const
|
|
69
|
+
const ACTIVE_DERIVED_CTX = [];
|
|
65
70
|
/**
|
|
66
71
|
* Tracks cells that need to be updated during the update cycle.
|
|
67
72
|
* Cells are added to this stack to be processed and updated sequentially.
|
|
68
73
|
* @type {Set<Cell<any>>}
|
|
69
74
|
*/
|
|
70
|
-
const
|
|
75
|
+
const UPDATE_BUFFER = new Set();
|
|
71
76
|
/** @type {WeakMap<Cell<any>, Set<WeakRef<DerivedCell<any>>>>} */
|
|
72
|
-
const
|
|
73
|
-
let
|
|
77
|
+
const DERIVED_CELLS = new WeakMap();
|
|
78
|
+
let IS_UPDATING = false;
|
|
74
79
|
/** @type {Error[]} */
|
|
75
80
|
const cellErrors = [];
|
|
76
81
|
/**
|
|
@@ -83,17 +88,18 @@ const cellErrors = [];
|
|
|
83
88
|
* updates of the same cell.
|
|
84
89
|
*/
|
|
85
90
|
function triggerUpdate() {
|
|
86
|
-
|
|
87
|
-
for (const cell of
|
|
91
|
+
IS_UPDATING = true;
|
|
92
|
+
for (const cell of UPDATE_BUFFER) {
|
|
88
93
|
if (cell instanceof DerivedCell) {
|
|
89
94
|
const newValue = cell.computedFn();
|
|
90
|
-
|
|
95
|
+
// @ts-ignore: wvalue is protected.
|
|
96
|
+
if (deepEqual(cell.wvalue, newValue))
|
|
91
97
|
continue;
|
|
92
98
|
// @ts-ignore: wvalue is protected.
|
|
93
99
|
cell.wvalue = newValue;
|
|
94
100
|
}
|
|
95
101
|
// Run computed dependents.
|
|
96
|
-
const computedDependents =
|
|
102
|
+
const computedDependents = DERIVED_CELLS.get(cell);
|
|
97
103
|
if (computedDependents)
|
|
98
104
|
for (const dependent of computedDependents) {
|
|
99
105
|
const deref = dependent.deref();
|
|
@@ -102,23 +108,24 @@ function triggerUpdate() {
|
|
|
102
108
|
continue;
|
|
103
109
|
}
|
|
104
110
|
const computedCell = deref;
|
|
105
|
-
if (
|
|
106
|
-
|
|
111
|
+
if (BATCH_NESTING_LEVEL > 0) {
|
|
112
|
+
BATCHED_EFFECTS.set(() => {
|
|
107
113
|
if (!computedCell.initialized)
|
|
108
114
|
return;
|
|
109
|
-
|
|
115
|
+
UPDATE_BUFFER.add(computedCell);
|
|
110
116
|
}, undefined);
|
|
111
117
|
}
|
|
112
118
|
else {
|
|
113
119
|
if (!computedCell.initialized)
|
|
114
120
|
continue;
|
|
115
|
-
|
|
121
|
+
UPDATE_BUFFER.add(computedCell);
|
|
116
122
|
}
|
|
117
123
|
}
|
|
124
|
+
//@ts-ignore: Cell.update is protected.
|
|
118
125
|
cell.update();
|
|
119
126
|
}
|
|
120
|
-
|
|
121
|
-
|
|
127
|
+
UPDATE_BUFFER.clear();
|
|
128
|
+
IS_UPDATING = false;
|
|
122
129
|
throwAnyErrors();
|
|
123
130
|
}
|
|
124
131
|
function throwAnyErrors() {
|
|
@@ -128,72 +135,26 @@ function throwAnyErrors() {
|
|
|
128
135
|
throw new CellUpdateError(errors);
|
|
129
136
|
}
|
|
130
137
|
}
|
|
131
|
-
const
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
Date: {
|
|
152
|
-
setDate: Symbol('setDate'),
|
|
153
|
-
setMonth: Symbol('setMonth'),
|
|
154
|
-
setFullYear: Symbol('setFullYear'),
|
|
155
|
-
setHours: Symbol('setHours'),
|
|
156
|
-
setMinutes: Symbol('setMinutes'),
|
|
157
|
-
setSeconds: Symbol('setSeconds'),
|
|
158
|
-
setMilliseconds: Symbol('setMilliseconds'),
|
|
159
|
-
},
|
|
160
|
-
};
|
|
161
|
-
const mutativeMapMethods = /^(set|delete|clear)$/;
|
|
162
|
-
const mutativeSetMethods = /^(add|delete|clear)$/;
|
|
163
|
-
const mutativeArrayMethods = /^(push|pop|shift|unshift|splice|sort|reverse)$/;
|
|
164
|
-
const mutativeDateMethods = /^(setDate|setMonth|setFullYear|setHours|setMinutes|setSeconds|setMilliseconds)$/;
|
|
165
|
-
/**
|
|
166
|
-
* Proxies mutative methods of a given value to trigger cell updates when called.
|
|
167
|
-
*
|
|
168
|
-
* @template {object} T
|
|
169
|
-
* @param {T} value - The object whose methods are to be proxied.
|
|
170
|
-
* @param {keyof typeof mutativeMethods} prototypeName - The name of the prototype (e.g., 'Map', 'Set') whose methods are being proxied.
|
|
171
|
-
* @param {Cell<any>} cell - The cell to be updated when a mutative method is called.
|
|
172
|
-
*/
|
|
173
|
-
const proxyMutativeMethods = (value, prototypeName, cell) => {
|
|
174
|
-
for (const method in mutativeMethods[prototypeName]) {
|
|
175
|
-
Reflect.set(value, Reflect.get(mutativeMethods[prototypeName], method),
|
|
176
|
-
/**
|
|
177
|
-
* @param {...any} args - The arguments passed to the mutative method.
|
|
178
|
-
* @returns {any} The result of calling the original method.
|
|
179
|
-
*/
|
|
180
|
-
(...args) => {
|
|
181
|
-
// @ts-ignore
|
|
182
|
-
const innerMethod = value[method]; // Direct access is faster than Reflection here.
|
|
183
|
-
const result = innerMethod.apply(value, args);
|
|
184
|
-
updateBuffer.add(cell);
|
|
185
|
-
if (!isUpdating)
|
|
186
|
-
triggerUpdate();
|
|
187
|
-
return result;
|
|
188
|
-
});
|
|
189
|
-
}
|
|
190
|
-
};
|
|
191
|
-
/**
|
|
192
|
-
* @template T
|
|
193
|
-
* @typedef {{
|
|
194
|
-
* deref: () => T | undefined
|
|
195
|
-
* }} Reference
|
|
196
|
-
*/
|
|
138
|
+
const mutativeMapMethods = new Set(['set', 'delete', 'clear']);
|
|
139
|
+
const mutativeSetMethods = new Set(['add', 'delete', 'clear']);
|
|
140
|
+
const mutativeArrayMethods = new Set([
|
|
141
|
+
'push',
|
|
142
|
+
'pop',
|
|
143
|
+
'shift',
|
|
144
|
+
'unshift',
|
|
145
|
+
'splice',
|
|
146
|
+
'sort',
|
|
147
|
+
'reverse',
|
|
148
|
+
]);
|
|
149
|
+
const mutativeDateMethods = new Set([
|
|
150
|
+
'setDate',
|
|
151
|
+
'setMonth',
|
|
152
|
+
'setFullYear',
|
|
153
|
+
'setHours',
|
|
154
|
+
'setMinutes',
|
|
155
|
+
'setSeconds',
|
|
156
|
+
'setMilliseconds',
|
|
157
|
+
]);
|
|
197
158
|
/** @template T */
|
|
198
159
|
class Effect {
|
|
199
160
|
/**
|
|
@@ -229,19 +190,39 @@ class Effect {
|
|
|
229
190
|
}
|
|
230
191
|
}
|
|
231
192
|
/**
|
|
232
|
-
* @template {*} T
|
|
193
|
+
* @template {*} T The type of value stored in the cell
|
|
194
|
+
*
|
|
195
|
+
* Base class for reactive cells.
|
|
196
|
+
* This class should not be instantiated directly - use `Cell.source` or
|
|
197
|
+
* `Cell.derived` instead.
|
|
198
|
+
*
|
|
199
|
+
* @example
|
|
200
|
+
* ```typescript
|
|
201
|
+
* // Create a source cell
|
|
202
|
+
* const count = Cell.source(0);
|
|
203
|
+
*
|
|
204
|
+
* // Listen to changes
|
|
205
|
+
* count.listen(value => console.log('Count changed:', value));
|
|
206
|
+
*
|
|
207
|
+
* // Update the value
|
|
208
|
+
* count.set(1); // Logs: Count changed: 1
|
|
209
|
+
* ```
|
|
233
210
|
*/
|
|
234
211
|
export class Cell {
|
|
235
212
|
/**
|
|
236
213
|
* @type {Array<Effect<T>>}
|
|
237
214
|
*/
|
|
238
215
|
#effects = [];
|
|
216
|
+
constructor() {
|
|
217
|
+
if (new.target === Cell) {
|
|
218
|
+
throw new Error('Cell should not be instantiated directly. Use `Cell.source` or `Cell.derived` instead.');
|
|
219
|
+
}
|
|
220
|
+
}
|
|
239
221
|
/**
|
|
240
|
-
* @readonly
|
|
241
222
|
* @returns {Array<DerivedCell<any>>}
|
|
242
223
|
*/
|
|
243
224
|
get derivedCells() {
|
|
244
|
-
const dependents =
|
|
225
|
+
const dependents = DERIVED_CELLS.get(this);
|
|
245
226
|
const cells = [];
|
|
246
227
|
if (dependents) {
|
|
247
228
|
for (const cell of dependents) {
|
|
@@ -268,17 +249,20 @@ export class Cell {
|
|
|
268
249
|
* @returns {T} The value of the Cell.
|
|
269
250
|
*/
|
|
270
251
|
valueOf() {
|
|
271
|
-
return this.revalued;
|
|
272
|
-
}
|
|
273
|
-
get value() {
|
|
274
252
|
return this.wvalue;
|
|
275
253
|
}
|
|
254
|
+
/**
|
|
255
|
+
* Gets the current value of the cell and registers it as a dependency if called within a derived cell computation.
|
|
256
|
+
* @returns {T} The value of the Cell.
|
|
257
|
+
*/
|
|
258
|
+
get() {
|
|
259
|
+
return this.revalued;
|
|
260
|
+
}
|
|
276
261
|
/**
|
|
277
262
|
* Stringifies the value of the Cell.
|
|
278
263
|
* @returns {string}
|
|
279
264
|
*/
|
|
280
265
|
toString() {
|
|
281
|
-
// @ts-ignore
|
|
282
266
|
return String(this.wvalue);
|
|
283
267
|
}
|
|
284
268
|
/**
|
|
@@ -286,17 +270,19 @@ export class Cell {
|
|
|
286
270
|
* @protected @type {T}
|
|
287
271
|
*/
|
|
288
272
|
get revalued() {
|
|
289
|
-
const currentlyComputedValue =
|
|
290
|
-
if (currentlyComputedValue === undefined)
|
|
273
|
+
const currentlyComputedValue = ACTIVE_DERIVED_CTX[ACTIVE_DERIVED_CTX.length - 1];
|
|
274
|
+
if (currentlyComputedValue === undefined) {
|
|
291
275
|
return this.wvalue;
|
|
292
|
-
|
|
276
|
+
}
|
|
277
|
+
let dependents = DERIVED_CELLS.get(this);
|
|
293
278
|
if (dependents === undefined) {
|
|
294
279
|
dependents = new Set();
|
|
295
|
-
|
|
280
|
+
DERIVED_CELLS.set(this, dependents);
|
|
296
281
|
}
|
|
297
282
|
const isAlreadySubscribed = dependents?.has(currentlyComputedValue.ref);
|
|
298
|
-
if (isAlreadySubscribed)
|
|
283
|
+
if (isAlreadySubscribed) {
|
|
299
284
|
return this.wvalue;
|
|
285
|
+
}
|
|
300
286
|
dependents.add(currentlyComputedValue.ref);
|
|
301
287
|
return this.wvalue;
|
|
302
288
|
}
|
|
@@ -417,12 +403,13 @@ export class Cell {
|
|
|
417
403
|
this.#effects.splice(effectIndex, 1);
|
|
418
404
|
}
|
|
419
405
|
/**
|
|
406
|
+
* @protected
|
|
420
407
|
* Updates the root object and notifies any registered watchers and computed dependents.
|
|
421
408
|
* This method is called whenever the root object's value changes.
|
|
422
409
|
*/
|
|
423
410
|
update() {
|
|
424
411
|
// Run watchers.
|
|
425
|
-
const wvalue = this.
|
|
412
|
+
const wvalue = this.wvalue;
|
|
426
413
|
const effects = this.#effects;
|
|
427
414
|
let len = effects.length;
|
|
428
415
|
for (let i = 0; i < len; i++) {
|
|
@@ -433,8 +420,8 @@ export class Cell {
|
|
|
433
420
|
len--;
|
|
434
421
|
continue;
|
|
435
422
|
}
|
|
436
|
-
if (
|
|
437
|
-
|
|
423
|
+
if (BATCH_NESTING_LEVEL > 0) {
|
|
424
|
+
BATCHED_EFFECTS.set(watcher, wvalue);
|
|
438
425
|
}
|
|
439
426
|
else {
|
|
440
427
|
try {
|
|
@@ -449,7 +436,7 @@ export class Cell {
|
|
|
449
436
|
}
|
|
450
437
|
}
|
|
451
438
|
/**
|
|
452
|
-
* Returns the current value of the cell without registering
|
|
439
|
+
* Returns the current value of the cell without registering dependencies.
|
|
453
440
|
* @returns {T} - The current value of the cell.
|
|
454
441
|
*/
|
|
455
442
|
peek() {
|
|
@@ -465,10 +452,10 @@ export class Cell {
|
|
|
465
452
|
* import { Cell } from '@adbl/cells';
|
|
466
453
|
*
|
|
467
454
|
* const cell = Cell.source('Hello world');
|
|
468
|
-
* console.log(cell.
|
|
455
|
+
* console.log(cell.get()); // Hello world.
|
|
469
456
|
*
|
|
470
|
-
* cell.
|
|
471
|
-
* console.log(cell.
|
|
457
|
+
* cell.set('Greetings!');
|
|
458
|
+
* console.log(cell.get()) // Greetings!
|
|
472
459
|
* ```
|
|
473
460
|
*/
|
|
474
461
|
static source = (value, options) => new SourceCell(value, options);
|
|
@@ -481,12 +468,12 @@ export class Cell {
|
|
|
481
468
|
* import { Cell } from '@adbl/cells';
|
|
482
469
|
*
|
|
483
470
|
* const cell = Cell.source(2);
|
|
484
|
-
* const derived = Cell.derived(() => cell.
|
|
471
|
+
* const derived = Cell.derived(() => cell.get() * 2);
|
|
485
472
|
*
|
|
486
|
-
* console.log(derived.
|
|
473
|
+
* console.log(derived.get()); // 4
|
|
487
474
|
*
|
|
488
|
-
* cell.
|
|
489
|
-
* console.log(derived.
|
|
475
|
+
* cell.set(3);
|
|
476
|
+
* console.log(derived.get()); // 6
|
|
490
477
|
* ```
|
|
491
478
|
*/
|
|
492
479
|
static derived = (callback) => new DerivedCell(callback);
|
|
@@ -497,7 +484,7 @@ export class Cell {
|
|
|
497
484
|
* @returns {X} The return value of the callback.
|
|
498
485
|
*/
|
|
499
486
|
static batch = (callback) => {
|
|
500
|
-
|
|
487
|
+
BATCH_NESTING_LEVEL++;
|
|
501
488
|
/** @type {X | undefined} */
|
|
502
489
|
let value = undefined;
|
|
503
490
|
let error;
|
|
@@ -507,17 +494,17 @@ export class Cell {
|
|
|
507
494
|
catch (e) {
|
|
508
495
|
error = e;
|
|
509
496
|
}
|
|
510
|
-
|
|
497
|
+
BATCH_NESTING_LEVEL--;
|
|
511
498
|
if (error instanceof Error) {
|
|
512
499
|
cellErrors.push(error);
|
|
513
500
|
}
|
|
514
|
-
if (
|
|
515
|
-
for (const [effect, args] of
|
|
501
|
+
if (BATCH_NESTING_LEVEL === 0) {
|
|
502
|
+
for (const [effect, args] of BATCHED_EFFECTS) {
|
|
516
503
|
effect(args);
|
|
517
504
|
}
|
|
518
|
-
if (!
|
|
505
|
+
if (!IS_UPDATING)
|
|
519
506
|
triggerUpdate();
|
|
520
|
-
|
|
507
|
+
BATCHED_EFFECTS = new Map();
|
|
521
508
|
}
|
|
522
509
|
throwAnyErrors();
|
|
523
510
|
return /** @type {X} */ (value);
|
|
@@ -602,25 +589,25 @@ export class Cell {
|
|
|
602
589
|
/** @type {X | undefined} */
|
|
603
590
|
let initialInput = undefined;
|
|
604
591
|
async function run(input = initialInput) {
|
|
605
|
-
pending.
|
|
606
|
-
error.
|
|
607
|
-
data.
|
|
592
|
+
pending.set(true);
|
|
593
|
+
error.set(null);
|
|
594
|
+
data.set(null);
|
|
608
595
|
await Cell.batch(async () => {
|
|
609
596
|
try {
|
|
610
597
|
initialInput = input;
|
|
611
598
|
const result = await getter(/** @type {X} */ (input));
|
|
612
|
-
data.
|
|
599
|
+
data.set(result);
|
|
613
600
|
}
|
|
614
601
|
catch (e) {
|
|
615
602
|
if (e instanceof Error) {
|
|
616
|
-
error.
|
|
603
|
+
error.set(e);
|
|
617
604
|
}
|
|
618
605
|
else {
|
|
619
606
|
throw e;
|
|
620
607
|
}
|
|
621
608
|
}
|
|
622
609
|
finally {
|
|
623
|
-
pending.
|
|
610
|
+
pending.set(false);
|
|
624
611
|
}
|
|
625
612
|
});
|
|
626
613
|
}
|
|
@@ -630,16 +617,16 @@ export class Cell {
|
|
|
630
617
|
*/
|
|
631
618
|
async function reload(newInput, changeLoadingState = true) {
|
|
632
619
|
if (changeLoadingState) {
|
|
633
|
-
pending.
|
|
620
|
+
pending.set(true);
|
|
634
621
|
}
|
|
635
622
|
try {
|
|
636
623
|
const result = await getter(
|
|
637
624
|
/** @type {X} */ (newInput ?? initialInput));
|
|
638
|
-
data.
|
|
625
|
+
data.set(result);
|
|
639
626
|
}
|
|
640
627
|
catch (e) {
|
|
641
628
|
if (e instanceof Error) {
|
|
642
|
-
error.
|
|
629
|
+
error.set(e);
|
|
643
630
|
}
|
|
644
631
|
else {
|
|
645
632
|
throw e;
|
|
@@ -647,7 +634,7 @@ export class Cell {
|
|
|
647
634
|
}
|
|
648
635
|
finally {
|
|
649
636
|
if (changeLoadingState) {
|
|
650
|
-
pending.
|
|
637
|
+
pending.set(false);
|
|
651
638
|
}
|
|
652
639
|
}
|
|
653
640
|
}
|
|
@@ -675,7 +662,7 @@ export class DerivedCell extends Cell {
|
|
|
675
662
|
this.ref = new WeakRef(this);
|
|
676
663
|
// Ensures that the cell is derived every time the computing function is called.
|
|
677
664
|
const derivationWrapper = () => {
|
|
678
|
-
|
|
665
|
+
ACTIVE_DERIVED_CTX.push(this);
|
|
679
666
|
let value = this.wvalue;
|
|
680
667
|
try {
|
|
681
668
|
value = computedFn();
|
|
@@ -684,7 +671,7 @@ export class DerivedCell extends Cell {
|
|
|
684
671
|
if (e instanceof Error)
|
|
685
672
|
cellErrors.push(e);
|
|
686
673
|
}
|
|
687
|
-
|
|
674
|
+
ACTIVE_DERIVED_CTX.pop();
|
|
688
675
|
return value;
|
|
689
676
|
};
|
|
690
677
|
this.computedFn = /** @type {() => T} */ (derivationWrapper);
|
|
@@ -695,9 +682,11 @@ export class DerivedCell extends Cell {
|
|
|
695
682
|
/** @type {WeakRef<this>} */
|
|
696
683
|
ref;
|
|
697
684
|
/**
|
|
698
|
-
*
|
|
685
|
+
* Gets the current value of the derived cell, computing it if necessary,
|
|
686
|
+
* and registers it as a dependency if called within another derived cell computation.
|
|
687
|
+
* @returns {T} The value of the Cell.
|
|
699
688
|
*/
|
|
700
|
-
get
|
|
689
|
+
get() {
|
|
701
690
|
if (!this.initialized) {
|
|
702
691
|
this.initialized = true;
|
|
703
692
|
this.setValue(this.computedFn());
|
|
@@ -732,23 +721,29 @@ export class DerivedCell extends Cell {
|
|
|
732
721
|
}
|
|
733
722
|
return super.runAndListen(callback, options);
|
|
734
723
|
}
|
|
735
|
-
/**
|
|
736
|
-
* @readonly
|
|
737
|
-
*/
|
|
738
|
-
set value(_) {
|
|
739
|
-
throw new Error('Cannot set a derived Cell value.');
|
|
740
|
-
}
|
|
741
|
-
deproxy() {
|
|
742
|
-
throw new Error('Cannot deproxy a derived cell.');
|
|
743
|
-
}
|
|
744
724
|
}
|
|
745
725
|
/**
|
|
746
726
|
* @template {*} T
|
|
747
727
|
* @extends {Cell<T>}
|
|
728
|
+
* A cell whose value can be directly modified.
|
|
729
|
+
* Source cells are the primary way to introduce reactivity.
|
|
730
|
+
* They can hold any value type and will automatically handle proxying of objects
|
|
731
|
+
* to enable deep reactivity when needed.
|
|
732
|
+
*
|
|
733
|
+
* @example
|
|
734
|
+
* ```typescript
|
|
735
|
+
* const count = Cell.source(0);
|
|
736
|
+
* ```
|
|
737
|
+
*
|
|
738
|
+
* @example
|
|
739
|
+
* ```typescript
|
|
740
|
+
* // With options
|
|
741
|
+
* const immutableCell = Cell.source(42, { immutable: true });
|
|
742
|
+
* // Will throw error:
|
|
743
|
+
* immutableCell.set(43);
|
|
744
|
+
* ```
|
|
748
745
|
*/
|
|
749
746
|
export class SourceCell extends Cell {
|
|
750
|
-
/** @type {object | undefined} */
|
|
751
|
-
#originalObject;
|
|
752
747
|
/**
|
|
753
748
|
* Creates a new Cell with the provided value.
|
|
754
749
|
* @param {T} value
|
|
@@ -758,65 +753,35 @@ export class SourceCell extends Cell {
|
|
|
758
753
|
super();
|
|
759
754
|
if (options !== undefined)
|
|
760
755
|
this.options = options;
|
|
761
|
-
this.setValue(
|
|
762
|
-
if (typeof value === 'object' && value !== null) {
|
|
763
|
-
this.#originalObject = value;
|
|
764
|
-
}
|
|
765
|
-
}
|
|
766
|
-
/**
|
|
767
|
-
* For cells containing objects, returns the object itself.
|
|
768
|
-
* This can be useful in scenarios where unfettered access to the original object is needed,
|
|
769
|
-
* such as when using the object as a cache.
|
|
770
|
-
*
|
|
771
|
-
* @example
|
|
772
|
-
* const cell = new SourceCell({ a: 1, b: 2 });
|
|
773
|
-
* console.log(cell.deproxy()); // { a: 1, b: 2 }
|
|
774
|
-
*
|
|
775
|
-
* cell.value = { a: 3, b: 4 };
|
|
776
|
-
* console.log(cell.deproxy()); // { a: 3, b: 4 }
|
|
777
|
-
*
|
|
778
|
-
* @returns {T extends object ? T : never} The original object if T is an object, otherwise never.
|
|
779
|
-
*/
|
|
780
|
-
deproxy() {
|
|
781
|
-
const originalObject = this.#originalObject;
|
|
782
|
-
if (typeof originalObject === 'object' && originalObject !== null) {
|
|
783
|
-
return /** @type {T extends object ? T : never} */ (originalObject);
|
|
784
|
-
}
|
|
785
|
-
throw new Error('Cannot deproxy a non-object cell.');
|
|
756
|
+
this.setValue(value);
|
|
786
757
|
}
|
|
787
758
|
peek() {
|
|
788
|
-
const originalObject = this.#originalObject;
|
|
789
|
-
if (typeof originalObject === 'object' && originalObject !== null) {
|
|
790
|
-
return /** @type {T extends object ? T : never} */ (originalObject);
|
|
791
|
-
}
|
|
792
759
|
return this.wvalue;
|
|
793
760
|
}
|
|
794
|
-
|
|
795
|
-
|
|
761
|
+
/**
|
|
762
|
+
* Gets the current value of the source cell and registers it as a dependency if called within a derived cell computation.
|
|
763
|
+
* @returns {T} The value of the Cell.
|
|
764
|
+
*/
|
|
765
|
+
get() {
|
|
766
|
+
return this.#proxy(this.revalued);
|
|
796
767
|
}
|
|
797
768
|
/**
|
|
798
769
|
* Sets the value stored in the Cell and triggers an update.
|
|
799
770
|
* @param {T} value
|
|
800
771
|
*/
|
|
801
|
-
set
|
|
772
|
+
set(value) {
|
|
802
773
|
if (this.options?.immutable) {
|
|
803
774
|
throw new Error('Cannot set the value of an immutable cell.');
|
|
804
775
|
}
|
|
805
|
-
const oldValue = this.
|
|
776
|
+
const oldValue = this.wvalue;
|
|
806
777
|
const isEqual = this.options?.equals
|
|
807
778
|
? this.options.equals(oldValue, value)
|
|
808
779
|
: deepEqual(oldValue, value);
|
|
809
780
|
if (isEqual)
|
|
810
781
|
return;
|
|
811
|
-
this.setValue(
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
}
|
|
815
|
-
else {
|
|
816
|
-
this.#originalObject = undefined;
|
|
817
|
-
}
|
|
818
|
-
updateBuffer.add(this);
|
|
819
|
-
if (!isUpdating)
|
|
782
|
+
this.setValue(value);
|
|
783
|
+
UPDATE_BUFFER.add(this);
|
|
784
|
+
if (!IS_UPDATING)
|
|
820
785
|
triggerUpdate();
|
|
821
786
|
}
|
|
822
787
|
/**
|
|
@@ -826,21 +791,8 @@ export class SourceCell extends Cell {
|
|
|
826
791
|
* @returns {T} - The proxied value.
|
|
827
792
|
*/
|
|
828
793
|
#proxy(value) {
|
|
829
|
-
if (typeof value !== 'object' || value === null)
|
|
794
|
+
if (typeof value !== 'object' || value === null)
|
|
830
795
|
return value;
|
|
831
|
-
}
|
|
832
|
-
if (value instanceof Map) {
|
|
833
|
-
proxyMutativeMethods(value, 'Map', this);
|
|
834
|
-
}
|
|
835
|
-
else if (value instanceof Set) {
|
|
836
|
-
proxyMutativeMethods(value, 'Set', this);
|
|
837
|
-
}
|
|
838
|
-
else if (value instanceof Date) {
|
|
839
|
-
proxyMutativeMethods(value, 'Date', this);
|
|
840
|
-
}
|
|
841
|
-
else if (ArrayBuffer.isView(value) || Array.isArray(value)) {
|
|
842
|
-
proxyMutativeMethods(value, 'Array', this);
|
|
843
|
-
}
|
|
844
796
|
return new Proxy(value, {
|
|
845
797
|
get: (target, prop) => {
|
|
846
798
|
this.revalued;
|
|
@@ -848,46 +800,64 @@ export class SourceCell extends Cell {
|
|
|
848
800
|
// @ts-ignore: Direct access is faster than Reflection here.
|
|
849
801
|
return this.#proxy(target[prop]);
|
|
850
802
|
}
|
|
803
|
+
if (typeof prop === 'string') {
|
|
804
|
+
const isMutativeMethod = (target instanceof Map && mutativeMapMethods.has(prop)) ||
|
|
805
|
+
(target instanceof Set && mutativeSetMethods.has(prop)) ||
|
|
806
|
+
(target instanceof Date && mutativeDateMethods.has(prop)) ||
|
|
807
|
+
((ArrayBuffer.isView(target) || Array.isArray(target)) &&
|
|
808
|
+
mutativeArrayMethods.has(prop));
|
|
809
|
+
if (isMutativeMethod) {
|
|
810
|
+
// @ts-ignore: Direct access is faster than Reflection here.
|
|
811
|
+
return (...args) => {
|
|
812
|
+
// @ts-ignore: Direct access is faster than Reflection here.
|
|
813
|
+
const result = target[prop](...args);
|
|
814
|
+
UPDATE_BUFFER.add(this);
|
|
815
|
+
if (!IS_UPDATING)
|
|
816
|
+
triggerUpdate();
|
|
817
|
+
return result;
|
|
818
|
+
};
|
|
819
|
+
}
|
|
820
|
+
}
|
|
851
821
|
// @ts-ignore: Direct access is faster than Reflection here.
|
|
852
822
|
let value = target[prop];
|
|
853
823
|
if (typeof value === 'function') {
|
|
854
824
|
value = value.bind(target);
|
|
855
825
|
}
|
|
856
|
-
if (typeof prop === 'string') {
|
|
857
|
-
if (target instanceof Map && mutativeMapMethods.test(prop)) {
|
|
858
|
-
// @ts-ignore: Direct access is faster than Reflection here.
|
|
859
|
-
return target[mutativeMethods.Map[prop]];
|
|
860
|
-
}
|
|
861
|
-
if (target instanceof Set && mutativeSetMethods.test(prop)) {
|
|
862
|
-
// @ts-ignore: Direct access is faster than Reflection here.
|
|
863
|
-
return target[mutativeMethods.Set[prop]];
|
|
864
|
-
}
|
|
865
|
-
if (target instanceof Date && mutativeDateMethods.test(prop)) {
|
|
866
|
-
// @ts-ignore: Direct access is faster than Reflection here.
|
|
867
|
-
return target[mutativeMethods.Date[prop]];
|
|
868
|
-
}
|
|
869
|
-
if ((ArrayBuffer.isView(target) || Array.isArray(target)) &&
|
|
870
|
-
mutativeArrayMethods.test(prop)) {
|
|
871
|
-
// @ts-ignore: Direct access is faster than Reflection here.
|
|
872
|
-
return target[mutativeMethods.Array[prop]];
|
|
873
|
-
}
|
|
874
|
-
}
|
|
875
826
|
return value;
|
|
876
827
|
},
|
|
877
828
|
set: (target, prop, value) => {
|
|
878
|
-
|
|
879
|
-
|
|
829
|
+
// @ts-ignore: dynamic object access.
|
|
830
|
+
const formerValue = target[prop];
|
|
880
831
|
const isEqual = deepEqual(formerValue, value);
|
|
881
832
|
if (!isEqual) {
|
|
882
|
-
|
|
883
|
-
|
|
833
|
+
// @ts-ignore: dynamic object access.
|
|
834
|
+
target[prop] = value;
|
|
835
|
+
UPDATE_BUFFER.add(this);
|
|
836
|
+
if (!IS_UPDATING) {
|
|
884
837
|
triggerUpdate();
|
|
838
|
+
}
|
|
885
839
|
}
|
|
886
840
|
return true;
|
|
887
841
|
},
|
|
888
842
|
});
|
|
889
843
|
}
|
|
890
844
|
}
|
|
845
|
+
/**
|
|
846
|
+
* An error class that aggregates multiple errors thrown during a cell update cycle.
|
|
847
|
+
*
|
|
848
|
+
* This error is thrown when one or more errors are encountered while updating cells,
|
|
849
|
+
* such as when running effect callbacks or computed updates. The `errors` property
|
|
850
|
+
* contains an array of all the errors that occurred during the update cycle.
|
|
851
|
+
*
|
|
852
|
+
* @example
|
|
853
|
+
* try {
|
|
854
|
+
* // Some cell update logic that may throw
|
|
855
|
+
* } catch (e) {
|
|
856
|
+
* if (e instanceof CellUpdateError) {
|
|
857
|
+
* console.error('Multiple errors occurred:', e.errors);
|
|
858
|
+
* }
|
|
859
|
+
* }
|
|
860
|
+
*/
|
|
891
861
|
export class CellUpdateError extends Error {
|
|
892
862
|
/** @param {Error[]} errors */
|
|
893
863
|
constructor(errors) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classes.js","sourceRoot":"","sources":["../../library/classes.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"classes.js","sourceRoot":"","sources":["../../library/classes.js"],"names":[],"mappings":"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"}
|
package/dist/library/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adbl/cells",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.14",
|
|
4
4
|
"description": "A simple implementation of reactive updates for JavaScript",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"private": false,
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
"test-once": "vitest run",
|
|
12
12
|
"test": "vitest",
|
|
13
13
|
"build": "tsc --p jsconfig.json",
|
|
14
|
+
"postbuild": "chmod +x ./add-references.sh && ./add-references.sh",
|
|
14
15
|
"prepublish": "bunx pkg-pr-new publish"
|
|
15
16
|
},
|
|
16
17
|
"exports": {
|