@alwatr/signal 5.1.0 → 5.2.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 +21 -0
- package/dist/core/computed-signal.d.ts +32 -5
- package/dist/core/computed-signal.d.ts.map +1 -1
- package/dist/core/effect-signal.d.ts +24 -2
- package/dist/core/effect-signal.d.ts.map +1 -1
- package/dist/core/event-signal.d.ts +4 -0
- package/dist/core/event-signal.d.ts.map +1 -1
- package/dist/core/signal-base.d.ts +16 -8
- package/dist/core/signal-base.d.ts.map +1 -1
- package/dist/core/state-signal.d.ts +8 -0
- package/dist/core/state-signal.d.ts.map +1 -1
- package/dist/main.cjs +128 -62
- package/dist/main.cjs.map +2 -2
- package/dist/main.mjs +128 -62
- package/dist/main.mjs.map +2 -2
- package/dist/type.d.ts +29 -5
- package/dist/type.d.ts.map +1 -1
- package/package.json +2 -2
package/dist/type.d.ts
CHANGED
|
@@ -72,7 +72,13 @@ export interface SubscribeResult {
|
|
|
72
72
|
* @internal
|
|
73
73
|
*/
|
|
74
74
|
export interface Observer_<T> {
|
|
75
|
+
/**
|
|
76
|
+
* The listener's callback function.
|
|
77
|
+
*/
|
|
75
78
|
callback: ListenerCallback<T>;
|
|
79
|
+
/**
|
|
80
|
+
* Subscription options for the observer.
|
|
81
|
+
*/
|
|
76
82
|
options?: SubscribeOptions;
|
|
77
83
|
}
|
|
78
84
|
/**
|
|
@@ -192,6 +198,16 @@ export interface ComputedSignalConfig<T> extends SignalConfig {
|
|
|
192
198
|
* Configuration for creating an `EffectSignal`.
|
|
193
199
|
*/
|
|
194
200
|
export interface EffectSignalConfig {
|
|
201
|
+
/**
|
|
202
|
+
* A unique identifier for the signal. This is crucial for debugging, logging, and differentiating signals,
|
|
203
|
+
* especially in large applications.
|
|
204
|
+
* @default auto-generated based on dependencies
|
|
205
|
+
*
|
|
206
|
+
* @example
|
|
207
|
+
* 'user-profile-signal'
|
|
208
|
+
* 'app-theme-signal'
|
|
209
|
+
*/
|
|
210
|
+
signalId?: string;
|
|
195
211
|
/**
|
|
196
212
|
* An array of dependency signals (`StateSignal` or `ComputedSignal` instances).
|
|
197
213
|
* The effect's `run` function will be executed whenever any of these signals change.
|
|
@@ -227,6 +243,10 @@ export interface EffectSignalConfig {
|
|
|
227
243
|
* The public interface for an `EffectSignal`, which provides a `destroy` method for cleanup.
|
|
228
244
|
*/
|
|
229
245
|
export interface IEffectSignal {
|
|
246
|
+
/**
|
|
247
|
+
* The unique identifier for this signal instance.
|
|
248
|
+
*/
|
|
249
|
+
signalId: string;
|
|
230
250
|
/**
|
|
231
251
|
* Permanently disposes of the effect, unsubscribing from all dependencies
|
|
232
252
|
* and stopping any future executions. This is crucial for preventing memory leaks
|
|
@@ -240,18 +260,22 @@ export interface IEffectSignal {
|
|
|
240
260
|
*/
|
|
241
261
|
readonly isDestroyed: boolean;
|
|
242
262
|
}
|
|
263
|
+
/**
|
|
264
|
+
* Configuration for creating a debounced signal using `createDebouncedSignal`.
|
|
265
|
+
*
|
|
266
|
+
* @see {@link createDebouncedSignal}
|
|
267
|
+
* @see {@link DebouncerConfig}
|
|
268
|
+
*/
|
|
243
269
|
export interface DebounceSignalConfig extends Omit<DebouncerConfig<never>, 'func' | 'thisContext'> {
|
|
244
270
|
/**
|
|
245
|
-
* A unique identifier for the signal. This is crucial for debugging
|
|
246
|
-
* especially in large applications.
|
|
271
|
+
* A unique identifier for the signal. This is crucial for debugging and differentiating signals.
|
|
247
272
|
*
|
|
248
273
|
* @default `${sourceSignal.signalId}-debounced`
|
|
249
274
|
*/
|
|
250
275
|
signalId?: string;
|
|
251
276
|
/**
|
|
252
|
-
* An optional callback
|
|
253
|
-
*
|
|
254
|
-
* such as subscriptions or timers created in operators.
|
|
277
|
+
* An optional callback executed when the signal's `destroy` method is called.
|
|
278
|
+
* Useful for cleaning up resources tied to the debounced signal.
|
|
255
279
|
*/
|
|
256
280
|
onDestroy?: () => void;
|
|
257
281
|
}
|
package/dist/type.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../src/type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AAGtD;;;;;;;GAOG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,SAAS,CAAC,IAAI,CAAC,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;;;OASG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;;;;;;;;OASG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;;;;OAQG;IACH,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS,CAAC,CAAC;IAC1B,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../src/type.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alwatr/signal",
|
|
3
3
|
"description": "Alwatr Signal is a powerful, lightweight, and modern reactive programming library. It is inspired by the best concepts from major reactive libraries but engineered to be faster and more efficient than all of them. It provides a robust and elegant way to manage application state through a system of signals, offering fine-grained reactivity, predictability, and excellent performance.",
|
|
4
|
-
"version": "5.
|
|
4
|
+
"version": "5.2.0",
|
|
5
5
|
"author": "S. Ali Mihandoost <ali.mihandoost@gmail.com>",
|
|
6
6
|
"bugs": "https://github.com/Alwatr/flux/issues",
|
|
7
7
|
"dependencies": {
|
|
@@ -68,5 +68,5 @@
|
|
|
68
68
|
},
|
|
69
69
|
"type": "module",
|
|
70
70
|
"types": "./dist/main.d.ts",
|
|
71
|
-
"gitHead": "
|
|
71
|
+
"gitHead": "2a7bbc2e804356aaa24736bd3d79e3800f549056"
|
|
72
72
|
}
|