@fluixi/reactive 1.0.0-alpha.82 → 1.0.0-alpha.84

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.
Files changed (169) hide show
  1. package/README.md +4 -0
  2. package/dist/cdn/reactive.cjs +2673 -1
  3. package/dist/cdn/reactive.global.js +2 -1
  4. package/dist/cdn/reactive.mjs +2657 -1
  5. package/dist/cdn/signal.cjs +299 -1
  6. package/dist/cdn/signal.d.ts +1 -1
  7. package/dist/cdn/signal.global.js +2 -1
  8. package/dist/cdn/signal.js +1 -1
  9. package/dist/cdn/signal.mjs +276 -1
  10. package/dist/index.cjs +2673 -1
  11. package/dist/index.mjs +2657 -1
  12. package/dist/lib/index.cjs +2674 -1
  13. package/dist/lib/index.js +1 -1
  14. package/dist/lib/index.mjs +2659 -1
  15. package/dist/lib/observable/index.cjs +386 -1
  16. package/dist/lib/observable/index.mjs +364 -1
  17. package/dist/lib/observable/observable.cjs +384 -1
  18. package/dist/lib/observable/observable.d.ts +0 -137
  19. package/dist/lib/observable/observable.d.ts.map +1 -1
  20. package/dist/lib/observable/observable.js +0 -71
  21. package/dist/lib/observable/observable.mjs +361 -1
  22. package/dist/lib/observable/subscription.cjs +180 -1
  23. package/dist/lib/observable/subscription.d.ts +0 -12
  24. package/dist/lib/observable/subscription.d.ts.map +1 -1
  25. package/dist/lib/observable/subscription.js +0 -12
  26. package/dist/lib/observable/subscription.mjs +157 -1
  27. package/dist/lib/observable/types.cjs +18 -1
  28. package/dist/lib/observable/types.d.ts.map +1 -1
  29. package/dist/lib/predicates.cjs +44 -1
  30. package/dist/lib/predicates.d.ts +2 -2
  31. package/dist/lib/predicates.js +2 -2
  32. package/dist/lib/predicates.mjs +23 -1
  33. package/dist/lib/signal/api.cjs +571 -1
  34. package/dist/lib/signal/api.d.ts +211 -1
  35. package/dist/lib/signal/api.d.ts.map +1 -1
  36. package/dist/lib/signal/api.js +207 -12
  37. package/dist/lib/signal/api.mjs +548 -1
  38. package/dist/lib/signal/cached-resource.cjs +672 -1
  39. package/dist/lib/signal/cached-resource.d.ts +28 -16
  40. package/dist/lib/signal/cached-resource.d.ts.map +1 -1
  41. package/dist/lib/signal/cached-resource.js +35 -29
  42. package/dist/lib/signal/cached-resource.mjs +650 -1
  43. package/dist/lib/signal/graph/children.cjs +325 -1
  44. package/dist/lib/signal/graph/children.js +1 -1
  45. package/dist/lib/signal/graph/children.mjs +302 -1
  46. package/dist/lib/signal/graph/compat.cjs +578 -1
  47. package/dist/lib/signal/graph/compat.d.ts +13 -13
  48. package/dist/lib/signal/graph/compat.d.ts.map +1 -1
  49. package/dist/lib/signal/graph/compat.js +51 -32
  50. package/dist/lib/signal/graph/compat.mjs +556 -1
  51. package/dist/lib/signal/graph/core.cjs +295 -1
  52. package/dist/lib/signal/graph/core.d.ts +28 -24
  53. package/dist/lib/signal/graph/core.d.ts.map +1 -1
  54. package/dist/lib/signal/graph/core.js +45 -31
  55. package/dist/lib/signal/graph/core.mjs +273 -1
  56. package/dist/lib/signal/graph/debounced.cjs +668 -1
  57. package/dist/lib/signal/graph/debounced.d.ts +5 -5
  58. package/dist/lib/signal/graph/debounced.d.ts.map +1 -1
  59. package/dist/lib/signal/graph/debounced.js +5 -5
  60. package/dist/lib/signal/graph/debounced.mjs +645 -1
  61. package/dist/lib/signal/graph/derived.cjs +496 -1
  62. package/dist/lib/signal/graph/derived.d.ts +1 -1
  63. package/dist/lib/signal/graph/derived.js +1 -1
  64. package/dist/lib/signal/graph/derived.mjs +473 -1
  65. package/dist/lib/signal/graph/detect.cjs +66 -1
  66. package/dist/lib/signal/graph/detect.mjs +45 -1
  67. package/dist/lib/signal/graph/error-boundary.cjs +301 -1
  68. package/dist/lib/signal/graph/error-boundary.js +3 -3
  69. package/dist/lib/signal/graph/error-boundary.mjs +278 -1
  70. package/dist/lib/signal/graph/index.cjs +305 -1
  71. package/dist/lib/signal/graph/index.d.ts +7 -6
  72. package/dist/lib/signal/graph/index.d.ts.map +1 -1
  73. package/dist/lib/signal/graph/index.js +7 -6
  74. package/dist/lib/signal/graph/index.mjs +283 -1
  75. package/dist/lib/signal/graph/observe.cjs +163 -0
  76. package/dist/lib/signal/graph/observe.d.ts +141 -0
  77. package/dist/lib/signal/graph/observe.d.ts.map +1 -0
  78. package/dist/lib/signal/graph/observe.js +149 -0
  79. package/dist/lib/signal/graph/observe.mjs +140 -0
  80. package/dist/lib/signal/graph/resource.cjs +620 -1
  81. package/dist/lib/signal/graph/resource.d.ts +1 -1
  82. package/dist/lib/signal/graph/resource.js +7 -8
  83. package/dist/lib/signal/graph/resource.mjs +597 -1
  84. package/dist/lib/signal/graph/runtime.cjs +501 -1
  85. package/dist/lib/signal/graph/runtime.d.ts +9 -9
  86. package/dist/lib/signal/graph/runtime.d.ts.map +1 -1
  87. package/dist/lib/signal/graph/runtime.js +56 -37
  88. package/dist/lib/signal/graph/runtime.mjs +478 -1
  89. package/dist/lib/signal/graph/signal-next.cjs +1208 -1
  90. package/dist/lib/signal/graph/signal-next.d.ts +5 -5
  91. package/dist/lib/signal/graph/signal-next.d.ts.map +1 -1
  92. package/dist/lib/signal/graph/signal-next.js +14 -12
  93. package/dist/lib/signal/graph/signal-next.mjs +1186 -1
  94. package/dist/lib/signal/graph/ssr-hooks.cjs +60 -1
  95. package/dist/lib/signal/graph/ssr-hooks.d.ts +6 -7
  96. package/dist/lib/signal/graph/ssr-hooks.d.ts.map +1 -1
  97. package/dist/lib/signal/graph/ssr-hooks.js +6 -7
  98. package/dist/lib/signal/graph/ssr-hooks.mjs +39 -1
  99. package/dist/lib/signal/graph/state.cjs +72 -1
  100. package/dist/lib/signal/graph/state.d.ts +43 -10
  101. package/dist/lib/signal/graph/state.d.ts.map +1 -1
  102. package/dist/lib/signal/graph/state.js +83 -21
  103. package/dist/lib/signal/graph/state.mjs +49 -1
  104. package/dist/lib/signal/graph/suspense.cjs +301 -1
  105. package/dist/lib/signal/graph/suspense.js +4 -4
  106. package/dist/lib/signal/graph/suspense.mjs +278 -1
  107. package/dist/lib/signal/index-legacy.cjs +2540 -1
  108. package/dist/lib/signal/index-legacy.d.ts +1 -1
  109. package/dist/lib/signal/index-legacy.js +1 -1
  110. package/dist/lib/signal/index-legacy.mjs +2518 -1
  111. package/dist/lib/signal/index.cjs +1275 -1
  112. package/dist/lib/signal/index.d.ts +5 -2
  113. package/dist/lib/signal/index.d.ts.map +1 -1
  114. package/dist/lib/signal/index.js +8 -3
  115. package/dist/lib/signal/index.mjs +1253 -1
  116. package/dist/lib/signal/list.cjs +549 -1
  117. package/dist/lib/signal/list.d.ts +5 -5
  118. package/dist/lib/signal/list.js +10 -10
  119. package/dist/lib/signal/list.mjs +526 -1
  120. package/dist/lib/signal/resource-api.cjs +626 -1
  121. package/dist/lib/signal/resource-api.d.ts +5 -5
  122. package/dist/lib/signal/resource-api.js +5 -5
  123. package/dist/lib/signal/resource-api.mjs +603 -1
  124. package/dist/lib/signal/signal.cjs +2023 -1
  125. package/dist/lib/signal/signal.d.ts +4 -4
  126. package/dist/lib/signal/signal.d.ts.map +1 -1
  127. package/dist/lib/signal/signal.js +22 -23
  128. package/dist/lib/signal/signal.mjs +2000 -1
  129. package/dist/lib/signal/types.cjs +38 -1
  130. package/dist/lib/signal/types.d.ts.map +1 -1
  131. package/dist/lib/signal/types.js +2 -2
  132. package/dist/lib/signal/types.mjs +17 -1
  133. package/dist/lib/signal/utilities.cjs +1012 -1
  134. package/dist/lib/signal/utilities.d.ts +0 -108
  135. package/dist/lib/signal/utilities.d.ts.map +1 -1
  136. package/dist/lib/signal/utilities.js +0 -158
  137. package/dist/lib/signal/utilities.mjs +990 -1
  138. package/dist/lib/store/api.cjs +612 -1
  139. package/dist/lib/store/api.d.ts +33 -0
  140. package/dist/lib/store/api.d.ts.map +1 -1
  141. package/dist/lib/store/api.js +41 -8
  142. package/dist/lib/store/api.mjs +596 -1
  143. package/dist/lib/store/index.cjs +691 -1
  144. package/dist/lib/store/index.js +1 -1
  145. package/dist/lib/store/index.mjs +676 -1
  146. package/dist/lib/store/setter.types.cjs +18 -1
  147. package/dist/lib/store/setter.types.d.ts +43 -3
  148. package/dist/lib/store/setter.types.d.ts.map +1 -1
  149. package/dist/lib/store/store.cjs +658 -1
  150. package/dist/lib/store/store.d.ts +72 -0
  151. package/dist/lib/store/store.d.ts.map +1 -1
  152. package/dist/lib/store/store.js +294 -11
  153. package/dist/lib/store/store.mjs +644 -1
  154. package/dist/lib/store/types.cjs +18 -1
  155. package/dist/lib/store/types.d.ts +1 -1
  156. package/dist/lib/store/types.d.ts.map +1 -1
  157. package/dist/lib/store/utils.cjs +43 -1
  158. package/dist/lib/store/utils.d.ts +1 -1
  159. package/dist/lib/store/utils.js +1 -1
  160. package/dist/lib/store/utils.mjs +22 -1
  161. package/dist/lib/subject.cjs +450 -1
  162. package/dist/lib/subject.js +3 -91
  163. package/dist/lib/subject.mjs +427 -1
  164. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  165. package/dist/version.generated.cjs +27 -1
  166. package/dist/version.generated.d.ts +1 -1
  167. package/dist/version.generated.js +2 -2
  168. package/dist/version.generated.mjs +7 -1
  169. package/package.json +5 -4
@@ -1,18 +1,7 @@
1
- /**
2
- * @fileoverview Signal Utility Functions
3
- * @description Common utility functions for transforming and combining signals
4
- * @version 1.0.0
5
- */
6
1
  import { type Accessor, type MemoOptions, type EnhancedSignal } from './signal.js';
7
2
  import { Observable } from '../observable/observable.js';
8
3
  /**
9
4
  * Transform a signal value through a mapping function
10
- * @template T - Input signal type
11
- * @template U - Output signal type
12
- * @param signal - Source signal to transform
13
- * @param fn - Mapping function to apply to signal value
14
- * @param options - Memo options for equality checking
15
- * @returns New accessor with transformed value
16
5
  *
17
6
  * @example
18
7
  * ```typescript
@@ -24,11 +13,6 @@ import { Observable } from '../observable/observable.js';
24
13
  export declare function mapSignal<T, U>(signal: Accessor<T>, fn: (value: T) => U, options?: MemoOptions<U>): Accessor<U>;
25
14
  /**
26
15
  * Filter an array signal using a predicate function
27
- * @template T - Array element type
28
- * @param signal - Source signal containing array
29
- * @param predicate - Filter function to test each element
30
- * @param options - Memo options for equality checking
31
- * @returns New accessor with filtered array
32
16
  *
33
17
  * @example
34
18
  * ```typescript
@@ -40,13 +24,6 @@ export declare function mapSignal<T, U>(signal: Accessor<T>, fn: (value: T) => U
40
24
  export declare function filterSignal<T>(signal: Accessor<T[]>, predicate: (value: T, index: number) => boolean, options?: MemoOptions<T[]>): Accessor<T[]>;
41
25
  /**
42
26
  * Reduce an array signal to a single value
43
- * @template T - Array element type
44
- * @template U - Accumulator type
45
- * @param signal - Source signal containing array
46
- * @param reducer - Reducer function
47
- * @param initialValue - Initial accumulator value
48
- * @param options - Memo options for equality checking
49
- * @returns New accessor with reduced value
50
27
  *
51
28
  * @example
52
29
  * ```typescript
@@ -58,11 +35,6 @@ export declare function filterSignal<T>(signal: Accessor<T[]>, predicate: (value
58
35
  export declare function reduceSignal<T, U>(signal: Accessor<T[]>, reducer: (accumulator: U, current: T, index: number) => U, initialValue: U, options?: MemoOptions<U>): Accessor<U>;
59
36
  /**
60
37
  * Find first element in array signal matching predicate
61
- * @template T - Array element type
62
- * @param signal - Source signal containing array
63
- * @param predicate - Predicate function to test elements
64
- * @param options - Memo options for equality checking
65
- * @returns New accessor with found element or undefined
66
38
  *
67
39
  * @example
68
40
  * ```typescript
@@ -74,11 +46,6 @@ export declare function reduceSignal<T, U>(signal: Accessor<T[]>, reducer: (accu
74
46
  export declare function findSignal<T>(signal: Accessor<T[]>, predicate: (value: T, index: number) => boolean, options?: MemoOptions<T | undefined>): Accessor<T | undefined>;
75
47
  /**
76
48
  * Check if any element in array signal matches predicate
77
- * @template T - Array element type
78
- * @param signal - Source signal containing array
79
- * @param predicate - Predicate function to test elements
80
- * @param options - Memo options for equality checking
81
- * @returns New accessor returning boolean
82
49
  *
83
50
  * @example
84
51
  * ```typescript
@@ -90,11 +57,6 @@ export declare function findSignal<T>(signal: Accessor<T[]>, predicate: (value:
90
57
  export declare function someSignal<T>(signal: Accessor<T[]>, predicate: (value: T, index: number) => boolean, options?: MemoOptions<boolean>): Accessor<boolean>;
91
58
  /**
92
59
  * Check if all elements in array signal match predicate
93
- * @template T - Array element type
94
- * @param signal - Source signal containing array
95
- * @param predicate - Predicate function to test elements
96
- * @param options - Memo options for equality checking
97
- * @returns New accessor returning boolean
98
60
  *
99
61
  * @example
100
62
  * ```typescript
@@ -106,11 +68,6 @@ export declare function someSignal<T>(signal: Accessor<T[]>, predicate: (value:
106
68
  export declare function everySignal<T>(signal: Accessor<T[]>, predicate: (value: T, index: number) => boolean, options?: MemoOptions<boolean>): Accessor<boolean>;
107
69
  /**
108
70
  * Sort an array signal
109
- * @template T - Array element type
110
- * @param signal - Source signal containing array
111
- * @param compareFn - Optional compare function for sorting
112
- * @param options - Memo options for equality checking
113
- * @returns New accessor with sorted array
114
71
  *
115
72
  * @example
116
73
  * ```typescript
@@ -122,10 +79,6 @@ export declare function everySignal<T>(signal: Accessor<T[]>, predicate: (value:
122
79
  export declare function sortSignal<T>(signal: Accessor<T[]>, compareFn?: (a: T, b: T) => number, options?: MemoOptions<T[]>): Accessor<T[]>;
123
80
  /**
124
81
  * Get unique values from array signal
125
- * @template T - Array element type
126
- * @param signal - Source signal containing array
127
- * @param options - Memo options for equality checking
128
- * @returns New accessor with unique values
129
82
  *
130
83
  * @example
131
84
  * ```typescript
@@ -137,12 +90,6 @@ export declare function sortSignal<T>(signal: Accessor<T[]>, compareFn?: (a: T,
137
90
  export declare function distinctSignal<T>(signal: Accessor<T[]>, options?: MemoOptions<T[]>): Accessor<T[]>;
138
91
  /**
139
92
  * Combine multiple signals into a single computed signal
140
- * @template T - Tuple type of signal values
141
- * @template U - Result type
142
- * @param signals - Array of signals to combine
143
- * @param combiner - Function to combine signal values
144
- * @param options - Memo options for equality checking
145
- * @returns New accessor with combined value
146
93
  *
147
94
  * @example
148
95
  * ```typescript
@@ -163,11 +110,6 @@ export declare function combineSignals<T extends any[]>(...signals: {
163
110
  }): Observable<T>;
164
111
  /**
165
112
  * Merge two signals, returning value from first truthy signal
166
- * @template T - Signal value type
167
- * @param primary - Primary signal
168
- * @param fallback - Fallback signal if primary is falsy
169
- * @param options - Memo options for equality checking
170
- * @returns New accessor with merged value
171
113
  *
172
114
  * @example
173
115
  * ```typescript
@@ -180,14 +122,6 @@ export declare function combineSignals<T extends any[]>(...signals: {
180
122
  export declare function mergeSignal<T>(primary: Accessor<T>, fallback: Accessor<T>, options?: MemoOptions<T>): Accessor<T>;
181
123
  /**
182
124
  * Combine two signals using a binary operator
183
- * @template T - First signal type
184
- * @template U - Second signal type
185
- * @template V - Result type
186
- * @param a - First signal
187
- * @param b - Second signal
188
- * @param operator - Binary operator function
189
- * @param options - Memo options for equality checking
190
- * @returns New accessor with combined value
191
125
  *
192
126
  * @example
193
127
  * ```typescript
@@ -201,12 +135,6 @@ export declare function zipSignal<T, U, V>(a: Accessor<T>, b: Accessor<U>, opera
201
135
  /**
202
136
  * Select a derived value from a signal with custom equality
203
137
  * Only updates when selected value changes according to equals function
204
- * @template T - Signal type
205
- * @template U - Selected value type
206
- * @param signal - Source signal
207
- * @param selector - Function to select value from signal
208
- * @param equals - Optional equality function (defaults to Object.is)
209
- * @returns New accessor with selected value
210
138
  *
211
139
  * @example
212
140
  * ```typescript
@@ -218,12 +146,6 @@ export declare function zipSignal<T, U, V>(a: Accessor<T>, b: Accessor<U>, opera
218
146
  export declare function selectSignal<T, U>(signal: Accessor<T>, selector: (value: T) => U, equals?: (a: U, b: U) => boolean): Accessor<U>;
219
147
  /**
220
148
  * Pick specific properties from an object signal
221
- * @template T - Object type
222
- * @template K - Property keys
223
- * @param signal - Source signal containing object
224
- * @param keys - Array of property keys to pick
225
- * @param options - Memo options for equality checking
226
- * @returns New accessor with picked properties
227
149
  *
228
150
  * @example
229
151
  * ```typescript
@@ -235,12 +157,6 @@ export declare function selectSignal<T, U>(signal: Accessor<T>, selector: (value
235
157
  export declare function pickSignal<T extends Record<string, any>, K extends keyof T>(signal: Accessor<T>, keys: K[], options?: MemoOptions<Pick<T, K>>): Accessor<Pick<T, K>>;
236
158
  /**
237
159
  * Omit specific properties from an object signal
238
- * @template T - Object type
239
- * @template K - Property keys to omit
240
- * @param signal - Source signal containing object
241
- * @param keys - Array of property keys to omit
242
- * @param options - Memo options for equality checking
243
- * @returns New accessor with omitted properties
244
160
  *
245
161
  * @example
246
162
  * ```typescript
@@ -252,12 +168,6 @@ export declare function pickSignal<T extends Record<string, any>, K extends keyo
252
168
  export declare function omitSignal<T extends Record<string, any>, K extends keyof T>(signal: Accessor<T>, keys: K[], options?: MemoOptions<Omit<T, K>>): Accessor<Omit<T, K>>;
253
169
  /**
254
170
  * Conditionally compute signal based on condition
255
- * @template T - Result type
256
- * @param condition - Condition signal or accessor
257
- * @param whenTrue - Accessor to use when condition is true
258
- * @param whenFalse - Accessor to use when condition is false
259
- * @param options - Memo options for equality checking
260
- * @returns New accessor with conditional value
261
171
  *
262
172
  * @example
263
173
  * ```typescript
@@ -271,11 +181,6 @@ export declare function omitSignal<T extends Record<string, any>, K extends keyo
271
181
  export declare function whenSignal<T>(condition: Accessor<boolean>, whenTrue: Accessor<T>, whenFalse: Accessor<T>, options?: MemoOptions<T>): Accessor<T>;
272
182
  /**
273
183
  * Compute signal only when condition is true, otherwise return undefined
274
- * @template T - Result type
275
- * @param condition - Condition signal or accessor
276
- * @param accessor - Accessor to use when condition is true
277
- * @param options - Memo options for equality checking
278
- * @returns New accessor with conditional value or undefined
279
184
  *
280
185
  * @example
281
186
  * ```typescript
@@ -288,11 +193,6 @@ export declare function whenSignal<T>(condition: Accessor<boolean>, whenTrue: Ac
288
193
  export declare function guardSignal<T>(condition: Accessor<boolean>, accessor: Accessor<T>, options?: MemoOptions<T | undefined>): Accessor<T | undefined>;
289
194
  /**
290
195
  * Debounce a signal - only update after delay period with no changes
291
- * @template T - Signal type
292
- * @param signal - Source signal to debounce
293
- * @param delay - Delay in milliseconds
294
- * @param options - Memo options for equality checking
295
- * @returns New accessor with debounced value
296
196
  *
297
197
  * @example
298
198
  * ```typescript
@@ -304,11 +204,6 @@ export declare function guardSignal<T>(condition: Accessor<boolean>, accessor: A
304
204
  export declare function debounceSignal<T>(signal: Accessor<T>, delay: number, options?: MemoOptions<T>): Accessor<T>;
305
205
  /**
306
206
  * Throttle a signal - limit update frequency
307
- * @template T - Signal type
308
- * @param signal - Source signal to throttle
309
- * @param delay - Minimum delay between updates in milliseconds
310
- * @param options - Memo options for equality checking
311
- * @returns New accessor with throttled value
312
207
  *
313
208
  * @example
314
209
  * ```typescript
@@ -327,9 +222,6 @@ export { type Accessor, type MemoOptions } from './signal.js';
327
222
  * Useful for converting callback-based APIs to promises, implementing timeouts,
328
223
  * or coordinating complex async flows.
329
224
  *
330
- * @template T - The type of the value the promise resolves with
331
- * @returns An object containing the promise, resolve function, and reject function
332
- *
333
225
  * @example
334
226
  * ```typescript
335
227
  * // Create a promise with external controls
@@ -1 +1 @@
1
- {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../../src/lib/signal/utilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../../src/lib/signal/utilities.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,3 @@
1
- /**
2
- * @fileoverview Signal Utility Functions
3
- * @description Common utility functions for transforming and combining signals
4
- * @version 1.0.0
5
- */
6
1
  import { createSignal, createMemo, createEffect } from './graph/compat.js';
7
2
  import { Observable } from '../observable/observable.js';
8
3
  // ============================================================================
@@ -10,12 +5,6 @@ import { Observable } from '../observable/observable.js';
10
5
  // ============================================================================
11
6
  /**
12
7
  * Transform a signal value through a mapping function
13
- * @template T - Input signal type
14
- * @template U - Output signal type
15
- * @param signal - Source signal to transform
16
- * @param fn - Mapping function to apply to signal value
17
- * @param options - Memo options for equality checking
18
- * @returns New accessor with transformed value
19
8
  *
20
9
  * @example
21
10
  * ```typescript
@@ -29,11 +18,6 @@ export function mapSignal(signal, fn, options) {
29
18
  }
30
19
  /**
31
20
  * Filter an array signal using a predicate function
32
- * @template T - Array element type
33
- * @param signal - Source signal containing array
34
- * @param predicate - Filter function to test each element
35
- * @param options - Memo options for equality checking
36
- * @returns New accessor with filtered array
37
21
  *
38
22
  * @example
39
23
  * ```typescript
@@ -47,13 +31,6 @@ export function filterSignal(signal, predicate, options) {
47
31
  }
48
32
  /**
49
33
  * Reduce an array signal to a single value
50
- * @template T - Array element type
51
- * @template U - Accumulator type
52
- * @param signal - Source signal containing array
53
- * @param reducer - Reducer function
54
- * @param initialValue - Initial accumulator value
55
- * @param options - Memo options for equality checking
56
- * @returns New accessor with reduced value
57
34
  *
58
35
  * @example
59
36
  * ```typescript
@@ -67,11 +44,6 @@ export function reduceSignal(signal, reducer, initialValue, options) {
67
44
  }
68
45
  /**
69
46
  * Find first element in array signal matching predicate
70
- * @template T - Array element type
71
- * @param signal - Source signal containing array
72
- * @param predicate - Predicate function to test elements
73
- * @param options - Memo options for equality checking
74
- * @returns New accessor with found element or undefined
75
47
  *
76
48
  * @example
77
49
  * ```typescript
@@ -85,11 +57,6 @@ export function findSignal(signal, predicate, options) {
85
57
  }
86
58
  /**
87
59
  * Check if any element in array signal matches predicate
88
- * @template T - Array element type
89
- * @param signal - Source signal containing array
90
- * @param predicate - Predicate function to test elements
91
- * @param options - Memo options for equality checking
92
- * @returns New accessor returning boolean
93
60
  *
94
61
  * @example
95
62
  * ```typescript
@@ -103,11 +70,6 @@ export function someSignal(signal, predicate, options) {
103
70
  }
104
71
  /**
105
72
  * Check if all elements in array signal match predicate
106
- * @template T - Array element type
107
- * @param signal - Source signal containing array
108
- * @param predicate - Predicate function to test elements
109
- * @param options - Memo options for equality checking
110
- * @returns New accessor returning boolean
111
73
  *
112
74
  * @example
113
75
  * ```typescript
@@ -121,11 +83,6 @@ export function everySignal(signal, predicate, options) {
121
83
  }
122
84
  /**
123
85
  * Sort an array signal
124
- * @template T - Array element type
125
- * @param signal - Source signal containing array
126
- * @param compareFn - Optional compare function for sorting
127
- * @param options - Memo options for equality checking
128
- * @returns New accessor with sorted array
129
86
  *
130
87
  * @example
131
88
  * ```typescript
@@ -139,10 +96,6 @@ export function sortSignal(signal, compareFn, options) {
139
96
  }
140
97
  /**
141
98
  * Get unique values from array signal
142
- * @template T - Array element type
143
- * @param signal - Source signal containing array
144
- * @param options - Memo options for equality checking
145
- * @returns New accessor with unique values
146
99
  *
147
100
  * @example
148
101
  * ```typescript
@@ -159,12 +112,6 @@ export function distinctSignal(signal, options) {
159
112
  // ============================================================================
160
113
  /**
161
114
  * Combine multiple signals into a single computed signal
162
- * @template T - Tuple type of signal values
163
- * @template U - Result type
164
- * @param signals - Array of signals to combine
165
- * @param combiner - Function to combine signal values
166
- * @param options - Memo options for equality checking
167
- * @returns New accessor with combined value
168
115
  *
169
116
  * @example
170
117
  * ```typescript
@@ -211,72 +158,14 @@ export function combineSignals(...signals) {
211
158
  });
212
159
  };
213
160
  });
214
- // return {
215
- // subscribe(
216
- // observerOrNext?: ((value: T) => void) | Partial<SignalObserver<T>>,
217
- // error?: (error: any) => void,
218
- // complete?: () => void
219
- // ): Subscription {
220
- // const observer = typeof observerOrNext === 'function'
221
- // ? { next: observerOrNext, error, complete }
222
- // : observerOrNext || {};
223
- // const getValues = () => signals.map(s =>
224
- // typeof s === 'function' ? s() : s.get()
225
- // ) as T;
226
- // if (observer.next) {
227
- // observer.next(getValues());
228
- // }
229
- // const disposers = signals.map(signal => {
230
- // if (typeof signal === 'function' && (signal as any).subscribe) {
231
- // return (signal as any).subscribe(() => {
232
- // if (observer.next) {
233
- // observer.next(getValues());
234
- // }
235
- // });
236
- // } else if (typeof signal !== 'function') {
237
- // return signal.subscribe(() => {
238
- // if (observer.next) {
239
- // observer.next(getValues());
240
- // }
241
- // });
242
- // }
243
- // return createEffect(() => {
244
- // getValues();
245
- // if (observer.next) {
246
- // observer.next(getValues());
247
- // }
248
- // });
249
- // });
250
- // return {
251
- // unsubscribe: () => {
252
- // disposers.forEach(dispose => {
253
- // if (typeof dispose === 'function') dispose();
254
- // else if (dispose && typeof dispose.unsubscribe === 'function') {
255
- // dispose.unsubscribe();
256
- // }
257
- // });
258
- // },
259
- // closed: false
260
- // };
261
161
  // },
262
162
  // pipe(...operators: any[]): Observable<any> {
263
163
  // throw new Error('Pipe requires RxJS');
264
164
  // }
265
165
  // };
266
166
  }
267
- // export function isSignal<T>(fn: any): fn is () => T {
268
- // return typeof fn === 'function' && fn.length === 0;
269
- // }
270
- // export function isEffect(fn: any): fn is SignalObserver {
271
- // return typeof fn === 'function' && 'dependencies' in fn;
272
- // }
273
167
  /**
274
168
  * Merge two signals, returning value from first truthy signal
275
- * @template T - Signal value type
276
- * @param primary - Primary signal
277
- * @param fallback - Fallback signal if primary is falsy
278
- * @param options - Memo options for equality checking
279
- * @returns New accessor with merged value
280
169
  *
281
170
  * @example
282
171
  * ```typescript
@@ -291,14 +180,6 @@ export function mergeSignal(primary, fallback, options) {
291
180
  }
292
181
  /**
293
182
  * Combine two signals using a binary operator
294
- * @template T - First signal type
295
- * @template U - Second signal type
296
- * @template V - Result type
297
- * @param a - First signal
298
- * @param b - Second signal
299
- * @param operator - Binary operator function
300
- * @param options - Memo options for equality checking
301
- * @returns New accessor with combined value
302
183
  *
303
184
  * @example
304
185
  * ```typescript
@@ -317,12 +198,6 @@ export function zipSignal(a, b, operator, options) {
317
198
  /**
318
199
  * Select a derived value from a signal with custom equality
319
200
  * Only updates when selected value changes according to equals function
320
- * @template T - Signal type
321
- * @template U - Selected value type
322
- * @param signal - Source signal
323
- * @param selector - Function to select value from signal
324
- * @param equals - Optional equality function (defaults to Object.is)
325
- * @returns New accessor with selected value
326
201
  *
327
202
  * @example
328
203
  * ```typescript
@@ -339,12 +214,6 @@ export function selectSignal(signal, selector, equals) {
339
214
  }
340
215
  /**
341
216
  * Pick specific properties from an object signal
342
- * @template T - Object type
343
- * @template K - Property keys
344
- * @param signal - Source signal containing object
345
- * @param keys - Array of property keys to pick
346
- * @param options - Memo options for equality checking
347
- * @returns New accessor with picked properties
348
217
  *
349
218
  * @example
350
219
  * ```typescript
@@ -365,12 +234,6 @@ export function pickSignal(signal, keys, options) {
365
234
  }
366
235
  /**
367
236
  * Omit specific properties from an object signal
368
- * @template T - Object type
369
- * @template K - Property keys to omit
370
- * @param signal - Source signal containing object
371
- * @param keys - Array of property keys to omit
372
- * @param options - Memo options for equality checking
373
- * @returns New accessor with omitted properties
374
237
  *
375
238
  * @example
376
239
  * ```typescript
@@ -394,12 +257,6 @@ export function omitSignal(signal, keys, options) {
394
257
  // ============================================================================
395
258
  /**
396
259
  * Conditionally compute signal based on condition
397
- * @template T - Result type
398
- * @param condition - Condition signal or accessor
399
- * @param whenTrue - Accessor to use when condition is true
400
- * @param whenFalse - Accessor to use when condition is false
401
- * @param options - Memo options for equality checking
402
- * @returns New accessor with conditional value
403
260
  *
404
261
  * @example
405
262
  * ```typescript
@@ -415,11 +272,6 @@ export function whenSignal(condition, whenTrue, whenFalse, options) {
415
272
  }
416
273
  /**
417
274
  * Compute signal only when condition is true, otherwise return undefined
418
- * @template T - Result type
419
- * @param condition - Condition signal or accessor
420
- * @param accessor - Accessor to use when condition is true
421
- * @param options - Memo options for equality checking
422
- * @returns New accessor with conditional value or undefined
423
275
  *
424
276
  * @example
425
277
  * ```typescript
@@ -437,11 +289,6 @@ export function guardSignal(condition, accessor, options) {
437
289
  // ============================================================================
438
290
  /**
439
291
  * Debounce a signal - only update after delay period with no changes
440
- * @template T - Signal type
441
- * @param signal - Source signal to debounce
442
- * @param delay - Delay in milliseconds
443
- * @param options - Memo options for equality checking
444
- * @returns New accessor with debounced value
445
292
  *
446
293
  * @example
447
294
  * ```typescript
@@ -462,11 +309,6 @@ export function debounceSignal(signal, delay, options) {
462
309
  }
463
310
  /**
464
311
  * Throttle a signal - limit update frequency
465
- * @template T - Signal type
466
- * @param signal - Source signal to throttle
467
- * @param delay - Minimum delay between updates in milliseconds
468
- * @param options - Memo options for equality checking
469
- * @returns New accessor with throttled value
470
312
  *
471
313
  * @example
472
314
  * ```typescript