@ng-org/alien-deepsignals 0.1.2-alpha.10 → 0.1.2-alpha.12
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/dist/core.d.ts +5 -1
- package/dist/core.d.ts.map +1 -1
- package/dist/core.js +11 -11
- package/dist/deepSignal.d.ts +1 -1
- package/dist/deepSignal.d.ts.map +1 -1
- package/dist/deepSignal.js +16 -27
- package/dist/hooks/react/index.js +2 -8
- package/dist/hooks/react/useDeepSignal.d.ts +2 -2
- package/dist/hooks/react/useDeepSignal.d.ts.map +1 -1
- package/dist/hooks/react/useDeepSignal.js +11 -13
- package/dist/hooks/svelte/index.js +2 -8
- package/dist/hooks/svelte/useDeepSignal.svelte.d.ts +1 -1
- package/dist/hooks/svelte/useDeepSignal.svelte.d.ts.map +1 -1
- package/dist/hooks/svelte/useDeepSignal.svelte.js +6 -9
- package/dist/hooks/svelte4/index.js +2 -8
- package/dist/hooks/svelte4/useDeepSignal.svelte.d.ts +1 -1
- package/dist/hooks/svelte4/useDeepSignal.svelte.d.ts.map +1 -1
- package/dist/hooks/svelte4/useDeepSignal.svelte.js +14 -17
- package/dist/hooks/vue/index.d.ts +1 -1
- package/dist/hooks/vue/index.d.ts.map +1 -1
- package/dist/hooks/vue/index.js +2 -8
- package/dist/hooks/vue/useDeepSignal.d.ts +1 -1
- package/dist/hooks/vue/useDeepSignal.d.ts.map +1 -1
- package/dist/hooks/vue/useDeepSignal.js +6 -9
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -27
- package/dist/iteratorHelpers.js +2 -6
- package/dist/test/frontend/astro-app/src/components/ReactPanel.d.ts.map +1 -1
- package/dist/test/frontend/astro-app/src/components/ReactPanel.jsx +13 -51
- package/dist/test/frontend/playwright/crossFrameworkHooks.spec.js +24 -26
- package/dist/test/frontend/utils/mockData.js +16 -21
- package/dist/test/frontend/utils/paths.js +2 -6
- package/dist/test/frontend/utils/renderMetrics.js +5 -12
- package/dist/test/frontend/utils/state.d.ts +1 -1
- package/dist/test/frontend/utils/state.js +13 -17
- package/dist/test/lib/deepSignalOptions.test.js +66 -68
- package/dist/test/lib/index.test.js +373 -375
- package/dist/test/lib/misc.test.js +98 -100
- package/dist/test/lib/watch.test.js +355 -357
- package/dist/types.d.ts +5 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -2
- package/dist/watch.d.ts +1 -1
- package/dist/watch.d.ts.map +1 -1
- package/dist/watch.js +6 -9
- package/package.json +2 -1
package/dist/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { computed, alienSignal } from "./core";
|
|
1
|
+
import { computed, alienSignal } from "./core.ts";
|
|
2
2
|
/** Deep mutation emitted from a deepSignal root. */
|
|
3
3
|
export type DeepPatch = {
|
|
4
4
|
path: (string | number)[];
|
|
@@ -140,9 +140,13 @@ export type DeepSignalSetProps<T> = {
|
|
|
140
140
|
/** Get the element that was first inserted into the set. */
|
|
141
141
|
first(): undefined | (T extends object ? DeepSignal<T> : T);
|
|
142
142
|
/**
|
|
143
|
+
* @internal This is only useful when you are using custom ids for sets.
|
|
144
|
+
* You should probably use {@link DeepSignalSetProps.getBy}.
|
|
145
|
+
*
|
|
143
146
|
* Retrieve an entry from the Set by its synthetic set ID.
|
|
144
147
|
* @param id - The synthetic ID (string or number) assigned to the entry.
|
|
145
148
|
* @returns The proxied entry if found, undefined otherwise.
|
|
149
|
+
* @ignore
|
|
146
150
|
*/
|
|
147
151
|
getById(id: string | number): DeepSignal<T> | undefined;
|
|
148
152
|
/**
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copyright (c) 2025 Laurin Weger, Par le Peuple, NextGraph.org developers
|
|
3
2
|
// All rights reserved.
|
|
4
3
|
// Licensed under the Apache License, Version 2.0
|
|
@@ -8,4 +7,4 @@
|
|
|
8
7
|
// notice may not be copied, modified, or distributed except
|
|
9
8
|
// according to those terms.
|
|
10
9
|
// SPDX-License-Identifier: Apache-2.0 OR MIT
|
|
11
|
-
|
|
10
|
+
export {};
|
package/dist/watch.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DeepPatch, DeepSignal, DeepSignalObject, DeepSignalSet } from "./types";
|
|
1
|
+
import { DeepPatch, DeepSignal, DeepSignalObject, DeepSignalSet } from "./types.ts";
|
|
2
2
|
export type RegisterCleanup = (cleanupFn: () => void) => void;
|
|
3
3
|
export interface WatchOptions {
|
|
4
4
|
/** True, if the callback should be run immediately after `watch` was called. @default false*/
|
package/dist/watch.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watch.d.ts","sourceRoot":"","sources":["../src/watch.ts"],"names":[],"mappings":"AAgBA,OAAO,EACH,SAAS,EAET,UAAU,EACV,gBAAgB,EAChB,aAAa,EAChB,MAAM,
|
|
1
|
+
{"version":3,"file":"watch.d.ts","sourceRoot":"","sources":["../src/watch.ts"],"names":[],"mappings":"AAgBA,OAAO,EACH,SAAS,EAET,UAAU,EACV,gBAAgB,EAChB,aAAa,EAChB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,eAAe,GAAG,CAAC,SAAS,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;AAE9D,MAAM,WAAW,YAAY;IACzB,8FAA8F;IAC9F,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uFAAuF;IACvF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,MAAM;IAC7C,uBAAuB;IACvB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,qDAAqD;IACrD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sCAAsC;IACtC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;CAC3B;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,MAAM,IAAI,CAC/C,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,KACxB,IAAI,CAAC;AAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,EAClC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EAC9D,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAC/B,OAAO,GAAE,YAAiB;;;EAiE7B"}
|
package/dist/watch.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copyright (c) 2025 Laurin Weger, Par le Peuple, NextGraph.org developers
|
|
3
2
|
// All rights reserved.
|
|
4
3
|
// Licensed under the Apache License, Version 2.0
|
|
@@ -8,9 +7,7 @@
|
|
|
8
7
|
// notice may not be copied, modified, or distributed except
|
|
9
8
|
// according to those terms.
|
|
10
9
|
// SPDX-License-Identifier: Apache-2.0 OR MIT
|
|
11
|
-
|
|
12
|
-
exports.watch = watch;
|
|
13
|
-
const deepSignal_1 = require("./deepSignal");
|
|
10
|
+
import { getDeepSignalRootId, getDeepSignalVersion, isDeepSignal, subscribeDeepMutations, } from "./deepSignal.js";
|
|
14
11
|
/**
|
|
15
12
|
* Watch for changes to a deepSignal.
|
|
16
13
|
*
|
|
@@ -46,11 +43,11 @@ const deepSignal_1 = require("./deepSignal");
|
|
|
46
43
|
* // ]
|
|
47
44
|
* ```
|
|
48
45
|
*/
|
|
49
|
-
function watch(source, callback, options = {}) {
|
|
50
|
-
if (!
|
|
46
|
+
export function watch(source, callback, options = {}) {
|
|
47
|
+
if (!isDeepSignal(source)) {
|
|
51
48
|
throw new Error("watch() expects a deepSignal root proxy");
|
|
52
49
|
}
|
|
53
|
-
const rootId =
|
|
50
|
+
const rootId = getDeepSignalRootId(source);
|
|
54
51
|
if (!rootId)
|
|
55
52
|
throw new Error("Unable to resolve deepSignal root id");
|
|
56
53
|
let active = true;
|
|
@@ -89,7 +86,7 @@ function watch(source, callback, options = {}) {
|
|
|
89
86
|
if (once)
|
|
90
87
|
stopListening();
|
|
91
88
|
};
|
|
92
|
-
const unsubscribe =
|
|
89
|
+
const unsubscribe = subscribeDeepMutations(rootId, (batch) => {
|
|
93
90
|
if (!batch.patches.length)
|
|
94
91
|
return;
|
|
95
92
|
deliver(batch);
|
|
@@ -97,7 +94,7 @@ function watch(source, callback, options = {}) {
|
|
|
97
94
|
if (immediate) {
|
|
98
95
|
deliver({
|
|
99
96
|
patches: [],
|
|
100
|
-
version:
|
|
97
|
+
version: getDeepSignalVersion(rootId) ?? 0,
|
|
101
98
|
});
|
|
102
99
|
}
|
|
103
100
|
return {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ng-org/alien-deepsignals",
|
|
3
|
-
"version": "0.1.2-alpha.
|
|
3
|
+
"version": "0.1.2-alpha.12",
|
|
4
4
|
"private": false,
|
|
5
5
|
"authors": [
|
|
6
6
|
"Laurin Weger",
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
"files": [
|
|
11
11
|
"dist"
|
|
12
12
|
],
|
|
13
|
+
"type": "module",
|
|
13
14
|
"main": "dist/index.js",
|
|
14
15
|
"publishConfig": {
|
|
15
16
|
"access": "public"
|