solid-js 1.9.6 → 1.9.7

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 (44) hide show
  1. package/dist/dev.cjs +18 -8
  2. package/dist/dev.js +326 -557
  3. package/dist/server.js +81 -178
  4. package/dist/solid.cjs +18 -8
  5. package/dist/solid.js +282 -486
  6. package/h/dist/h.js +9 -40
  7. package/h/jsx-runtime/dist/jsx.js +1 -1
  8. package/h/jsx-runtime/types/index.d.ts +8 -11
  9. package/h/types/hyperscript.d.ts +11 -11
  10. package/html/dist/html.js +94 -219
  11. package/html/types/lit.d.ts +33 -52
  12. package/package.json +3 -3
  13. package/store/dist/dev.js +43 -123
  14. package/store/dist/server.js +8 -20
  15. package/store/dist/store.js +40 -114
  16. package/store/types/index.d.ts +7 -21
  17. package/store/types/modifiers.d.ts +3 -6
  18. package/store/types/mutable.d.ts +2 -5
  19. package/store/types/server.d.ts +5 -25
  20. package/store/types/store.d.ts +61 -218
  21. package/types/index.d.ts +11 -78
  22. package/types/reactive/array.d.ts +4 -12
  23. package/types/reactive/observable.d.ts +16 -22
  24. package/types/reactive/scheduler.d.ts +6 -9
  25. package/types/reactive/signal.d.ts +145 -236
  26. package/types/render/Suspense.d.ts +5 -5
  27. package/types/render/component.d.ts +37 -73
  28. package/types/render/flow.d.ts +31 -43
  29. package/types/render/hydration.d.ts +15 -15
  30. package/types/server/index.d.ts +2 -57
  31. package/types/server/reactive.d.ts +45 -76
  32. package/types/server/rendering.d.ts +98 -169
  33. package/universal/dist/dev.js +12 -28
  34. package/universal/dist/universal.js +12 -28
  35. package/universal/types/index.d.ts +1 -3
  36. package/universal/types/universal.d.ts +1 -0
  37. package/web/dist/dev.js +90 -644
  38. package/web/dist/server.cjs +1 -1
  39. package/web/dist/server.js +110 -647
  40. package/web/dist/web.js +88 -632
  41. package/web/storage/dist/storage.js +3 -3
  42. package/web/types/core.d.ts +1 -9
  43. package/web/types/index.d.ts +11 -31
  44. package/web/types/server-mock.d.ts +32 -47
@@ -1,39 +1,23 @@
1
1
  export declare const IS_DEV: string | boolean;
2
- export declare const $RAW: unique symbol,
3
- $NODE: unique symbol,
4
- $HAS: unique symbol,
5
- $SELF: unique symbol;
2
+ export declare const $RAW: unique symbol, $NODE: unique symbol, $HAS: unique symbol, $SELF: unique symbol;
6
3
  export declare const DevHooks: {
7
- onStoreNodeUpdate: OnStoreNodeUpdate | null;
4
+ onStoreNodeUpdate: OnStoreNodeUpdate | null;
8
5
  };
9
6
  type DataNode = {
10
- (): any;
11
- $(value?: any): void;
7
+ (): any;
8
+ $(value?: any): void;
12
9
  };
13
10
  export type DataNodes = Record<PropertyKey, DataNode | undefined>;
14
- export type OnStoreNodeUpdate = (
15
- state: StoreNode,
16
- property: PropertyKey,
17
- value: StoreNode | NotWrappable,
18
- prev: StoreNode | NotWrappable
19
- ) => void;
11
+ export type OnStoreNodeUpdate = (state: StoreNode, property: PropertyKey, value: StoreNode | NotWrappable, prev: StoreNode | NotWrappable) => void;
20
12
  export interface StoreNode {
21
- [$NODE]?: DataNodes;
22
- [key: PropertyKey]: any;
13
+ [$NODE]?: DataNodes;
14
+ [key: PropertyKey]: any;
23
15
  }
24
16
  export declare namespace SolidStore {
25
- interface Unwrappable {}
17
+ interface Unwrappable {
18
+ }
26
19
  }
27
- export type NotWrappable =
28
- | string
29
- | number
30
- | bigint
31
- | symbol
32
- | boolean
33
- | Function
34
- | null
35
- | undefined
36
- | SolidStore.Unwrappable[keyof SolidStore.Unwrappable];
20
+ export type NotWrappable = string | number | bigint | symbol | boolean | Function | null | undefined | SolidStore.Unwrappable[keyof SolidStore.Unwrappable];
37
21
  export type Store<T> = T;
38
22
  export declare function isWrappable<T>(obj: T | NotWrappable): obj is T;
39
23
  /**
@@ -50,215 +34,74 @@ export declare function isWrappable<T>(obj: T | NotWrappable): obj is T;
50
34
  export declare function unwrap<T>(item: T, set?: Set<unknown>): T;
51
35
  export declare function getNodes(target: StoreNode, symbol: typeof $NODE | typeof $HAS): DataNodes;
52
36
  export declare function getNode(nodes: DataNodes, property: PropertyKey, value?: any): DataNode;
53
- export declare function proxyDescriptor(
54
- target: StoreNode,
55
- property: PropertyKey
56
- ): TypedPropertyDescriptor<any> | undefined;
37
+ export declare function proxyDescriptor(target: StoreNode, property: PropertyKey): TypedPropertyDescriptor<any> | undefined;
57
38
  export declare function trackSelf(target: StoreNode): void;
58
39
  export declare function ownKeys(target: StoreNode): (string | symbol)[];
59
- export declare function setProperty(
60
- state: StoreNode,
61
- property: PropertyKey,
62
- value: any,
63
- deleting?: boolean
64
- ): void;
65
- export declare function updatePath(
66
- current: StoreNode,
67
- path: any[],
68
- traversed?: PropertyKey[]
69
- ): void;
40
+ export declare function setProperty(state: StoreNode, property: PropertyKey, value: any, deleting?: boolean): void;
41
+ export declare function updatePath(current: StoreNode, path: any[], traversed?: PropertyKey[]): void;
70
42
  /** @deprecated */
71
- export type DeepReadonly<T> = 0 extends 1 & T
72
- ? T
73
- : T extends NotWrappable
74
- ? T
75
- : {
76
- readonly [K in keyof T]: DeepReadonly<T[K]>;
77
- };
43
+ export type DeepReadonly<T> = 0 extends 1 & T ? T : T extends NotWrappable ? T : {
44
+ readonly [K in keyof T]: DeepReadonly<T[K]>;
45
+ };
78
46
  /** @deprecated */
79
- export type DeepMutable<T> = 0 extends 1 & T
80
- ? T
81
- : T extends NotWrappable
82
- ? T
83
- : {
84
- -readonly [K in keyof T]: DeepMutable<T[K]>;
85
- };
86
- export type CustomPartial<T> = T extends readonly unknown[]
87
- ? "0" extends keyof T
88
- ? {
89
- [K in Extract<keyof T, `${number}`>]?: T[K];
90
- }
91
- : {
92
- [x: number]: T[number];
93
- }
94
- : Partial<T>;
47
+ export type DeepMutable<T> = 0 extends 1 & T ? T : T extends NotWrappable ? T : {
48
+ -readonly [K in keyof T]: DeepMutable<T[K]>;
49
+ };
50
+ export type CustomPartial<T> = T extends readonly unknown[] ? "0" extends keyof T ? {
51
+ [K in Extract<keyof T, `${number}`>]?: T[K];
52
+ } : {
53
+ [x: number]: T[number];
54
+ } : Partial<T>;
95
55
  export type PickMutable<T> = {
96
- [K in keyof T as (<U>() => U extends {
97
- [V in K]: T[V];
98
- }
99
- ? 1
100
- : 2) extends <U>() => U extends {
101
- -readonly [V in K]: T[V];
102
- }
103
- ? 1
104
- : 2
105
- ? K
106
- : never]: T[K];
56
+ [K in keyof T as (<U>() => U extends {
57
+ [V in K]: T[V];
58
+ } ? 1 : 2) extends <U>() => U extends {
59
+ -readonly [V in K]: T[V];
60
+ } ? 1 : 2 ? K : never]: T[K];
107
61
  };
108
62
  export type StorePathRange = {
109
- from?: number;
110
- to?: number;
111
- by?: number;
63
+ from?: number;
64
+ to?: number;
65
+ by?: number;
112
66
  };
113
67
  export type ArrayFilterFn<T> = (item: T, index: number) => boolean;
114
- export type StoreSetter<T, U extends PropertyKey[] = []> =
115
- | T
116
- | CustomPartial<T>
117
- | ((prevState: T, traversed: U) => T | CustomPartial<T>);
118
- export type Part<T, K extends KeyOf<T> = KeyOf<T>> =
119
- | K
120
- | ([K] extends [never] ? never : readonly K[])
121
- | ([T] extends [readonly unknown[]] ? ArrayFilterFn<T[number]> | StorePathRange : never);
68
+ export type StoreSetter<T, U extends PropertyKey[] = []> = T | CustomPartial<T> | ((prevState: T, traversed: U) => T | CustomPartial<T>);
69
+ export type Part<T, K extends KeyOf<T> = KeyOf<T>> = K | ([K] extends [never] ? never : readonly K[]) | ([T] extends [readonly unknown[]] ? ArrayFilterFn<T[number]> | StorePathRange : never);
122
70
  type W<T> = Exclude<T, NotWrappable>;
123
- type KeyOf<T> = number extends keyof T
124
- ? 0 extends 1 & T
125
- ? keyof T
126
- : [T] extends [never]
127
- ? never
128
- : [T] extends [readonly unknown[]]
129
- ? number
130
- : keyof T
131
- : keyof T;
71
+ type KeyOf<T> = number extends keyof T ? 0 extends 1 & T ? keyof T : [T] extends [never] ? never : [
72
+ T
73
+ ] extends [readonly unknown[]] ? number : keyof T : keyof T;
132
74
  type MutableKeyOf<T> = KeyOf<T> & keyof PickMutable<T>;
133
- type Rest<T, U extends PropertyKey[], K extends KeyOf<T> = KeyOf<T>> = [T] extends [never]
134
- ? never
135
- : K extends MutableKeyOf<T>
136
- ? [Part<T, K>, ...RestSetterOrContinue<T[K], [K, ...U]>]
137
- : K extends KeyOf<T>
138
- ? [Part<T, K>, ...RestContinue<T[K], [K, ...U]>]
139
- : never;
140
- type RestContinue<T, U extends PropertyKey[]> = 0 extends 1 & T
141
- ? [...Part<any>[], StoreSetter<any, PropertyKey[]>]
142
- : Rest<W<T>, U>;
75
+ type Rest<T, U extends PropertyKey[], K extends KeyOf<T> = KeyOf<T>> = [T] extends [never] ? never : K extends MutableKeyOf<T> ? [Part<T, K>, ...RestSetterOrContinue<T[K], [K, ...U]>] : K extends KeyOf<T> ? [Part<T, K>, ...RestContinue<T[K], [K, ...U]>] : never;
76
+ type RestContinue<T, U extends PropertyKey[]> = 0 extends 1 & T ? [...Part<any>[], StoreSetter<any, PropertyKey[]>] : Rest<W<T>, U>;
143
77
  type RestSetterOrContinue<T, U extends PropertyKey[]> = [StoreSetter<T, U>] | RestContinue<T, U>;
144
78
  export interface SetStoreFunction<T> {
145
- <
146
- K1 extends KeyOf<W<T>>,
147
- K2 extends KeyOf<W<W<T>[K1]>>,
148
- K3 extends KeyOf<W<W<W<T>[K1]>[K2]>>,
149
- K4 extends KeyOf<W<W<W<W<T>[K1]>[K2]>[K3]>>,
150
- K5 extends KeyOf<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>>,
151
- K6 extends KeyOf<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>>,
152
- K7 extends MutableKeyOf<W<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>[K6]>>
153
- >(
154
- k1: Part<W<T>, K1>,
155
- k2: Part<W<W<T>[K1]>, K2>,
156
- k3: Part<W<W<W<T>[K1]>[K2]>, K3>,
157
- k4: Part<W<W<W<W<T>[K1]>[K2]>[K3]>, K4>,
158
- k5: Part<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>, K5>,
159
- k6: Part<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>, K6>,
160
- k7: Part<W<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>[K6]>, K7>,
161
- setter: StoreSetter<
162
- W<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>[K6]>[K7],
163
- [K7, K6, K5, K4, K3, K2, K1]
164
- >
165
- ): void;
166
- <
167
- K1 extends KeyOf<W<T>>,
168
- K2 extends KeyOf<W<W<T>[K1]>>,
169
- K3 extends KeyOf<W<W<W<T>[K1]>[K2]>>,
170
- K4 extends KeyOf<W<W<W<W<T>[K1]>[K2]>[K3]>>,
171
- K5 extends KeyOf<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>>,
172
- K6 extends MutableKeyOf<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>>
173
- >(
174
- k1: Part<W<T>, K1>,
175
- k2: Part<W<W<T>[K1]>, K2>,
176
- k3: Part<W<W<W<T>[K1]>[K2]>, K3>,
177
- k4: Part<W<W<W<W<T>[K1]>[K2]>[K3]>, K4>,
178
- k5: Part<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>, K5>,
179
- k6: Part<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>, K6>,
180
- setter: StoreSetter<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>[K6], [K6, K5, K4, K3, K2, K1]>
181
- ): void;
182
- <
183
- K1 extends KeyOf<W<T>>,
184
- K2 extends KeyOf<W<W<T>[K1]>>,
185
- K3 extends KeyOf<W<W<W<T>[K1]>[K2]>>,
186
- K4 extends KeyOf<W<W<W<W<T>[K1]>[K2]>[K3]>>,
187
- K5 extends MutableKeyOf<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>>
188
- >(
189
- k1: Part<W<T>, K1>,
190
- k2: Part<W<W<T>[K1]>, K2>,
191
- k3: Part<W<W<W<T>[K1]>[K2]>, K3>,
192
- k4: Part<W<W<W<W<T>[K1]>[K2]>[K3]>, K4>,
193
- k5: Part<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>, K5>,
194
- setter: StoreSetter<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5], [K5, K4, K3, K2, K1]>
195
- ): void;
196
- <
197
- K1 extends KeyOf<W<T>>,
198
- K2 extends KeyOf<W<W<T>[K1]>>,
199
- K3 extends KeyOf<W<W<W<T>[K1]>[K2]>>,
200
- K4 extends MutableKeyOf<W<W<W<W<T>[K1]>[K2]>[K3]>>
201
- >(
202
- k1: Part<W<T>, K1>,
203
- k2: Part<W<W<T>[K1]>, K2>,
204
- k3: Part<W<W<W<T>[K1]>[K2]>, K3>,
205
- k4: Part<W<W<W<W<T>[K1]>[K2]>[K3]>, K4>,
206
- setter: StoreSetter<W<W<W<W<T>[K1]>[K2]>[K3]>[K4], [K4, K3, K2, K1]>
207
- ): void;
208
- <
209
- K1 extends KeyOf<W<T>>,
210
- K2 extends KeyOf<W<W<T>[K1]>>,
211
- K3 extends MutableKeyOf<W<W<W<T>[K1]>[K2]>>
212
- >(
213
- k1: Part<W<T>, K1>,
214
- k2: Part<W<W<T>[K1]>, K2>,
215
- k3: Part<W<W<W<T>[K1]>[K2]>, K3>,
216
- setter: StoreSetter<W<W<W<T>[K1]>[K2]>[K3], [K3, K2, K1]>
217
- ): void;
218
- <K1 extends KeyOf<W<T>>, K2 extends MutableKeyOf<W<W<T>[K1]>>>(
219
- k1: Part<W<T>, K1>,
220
- k2: Part<W<W<T>[K1]>, K2>,
221
- setter: StoreSetter<W<W<T>[K1]>[K2], [K2, K1]>
222
- ): void;
223
- <K1 extends MutableKeyOf<W<T>>>(k1: Part<W<T>, K1>, setter: StoreSetter<W<T>[K1], [K1]>): void;
224
- (setter: StoreSetter<T, []>): void;
225
- <
226
- K1 extends KeyOf<W<T>>,
227
- K2 extends KeyOf<W<W<T>[K1]>>,
228
- K3 extends KeyOf<W<W<W<T>[K1]>[K2]>>,
229
- K4 extends KeyOf<W<W<W<W<T>[K1]>[K2]>[K3]>>,
230
- K5 extends KeyOf<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>>,
231
- K6 extends KeyOf<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>>,
232
- K7 extends KeyOf<W<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>[K6]>>
233
- >(
234
- k1: Part<W<T>, K1>,
235
- k2: Part<W<W<T>[K1]>, K2>,
236
- k3: Part<W<W<W<T>[K1]>[K2]>, K3>,
237
- k4: Part<W<W<W<W<T>[K1]>[K2]>[K3]>, K4>,
238
- k5: Part<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>, K5>,
239
- k6: Part<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>, K6>,
240
- k7: Part<W<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>[K6]>, K7>,
241
- ...rest: Rest<W<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>[K6]>[K7], [K7, K6, K5, K4, K3, K2, K1]>
242
- ): void;
79
+ <K1 extends KeyOf<W<T>>, K2 extends KeyOf<W<W<T>[K1]>>, K3 extends KeyOf<W<W<W<T>[K1]>[K2]>>, K4 extends KeyOf<W<W<W<W<T>[K1]>[K2]>[K3]>>, K5 extends KeyOf<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>>, K6 extends KeyOf<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>>, K7 extends MutableKeyOf<W<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>[K6]>>>(k1: Part<W<T>, K1>, k2: Part<W<W<T>[K1]>, K2>, k3: Part<W<W<W<T>[K1]>[K2]>, K3>, k4: Part<W<W<W<W<T>[K1]>[K2]>[K3]>, K4>, k5: Part<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>, K5>, k6: Part<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>, K6>, k7: Part<W<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>[K6]>, K7>, setter: StoreSetter<W<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>[K6]>[K7], [
80
+ K7,
81
+ K6,
82
+ K5,
83
+ K4,
84
+ K3,
85
+ K2,
86
+ K1
87
+ ]>): void;
88
+ <K1 extends KeyOf<W<T>>, K2 extends KeyOf<W<W<T>[K1]>>, K3 extends KeyOf<W<W<W<T>[K1]>[K2]>>, K4 extends KeyOf<W<W<W<W<T>[K1]>[K2]>[K3]>>, K5 extends KeyOf<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>>, K6 extends MutableKeyOf<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>>>(k1: Part<W<T>, K1>, k2: Part<W<W<T>[K1]>, K2>, k3: Part<W<W<W<T>[K1]>[K2]>, K3>, k4: Part<W<W<W<W<T>[K1]>[K2]>[K3]>, K4>, k5: Part<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>, K5>, k6: Part<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>, K6>, setter: StoreSetter<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>[K6], [K6, K5, K4, K3, K2, K1]>): void;
89
+ <K1 extends KeyOf<W<T>>, K2 extends KeyOf<W<W<T>[K1]>>, K3 extends KeyOf<W<W<W<T>[K1]>[K2]>>, K4 extends KeyOf<W<W<W<W<T>[K1]>[K2]>[K3]>>, K5 extends MutableKeyOf<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>>>(k1: Part<W<T>, K1>, k2: Part<W<W<T>[K1]>, K2>, k3: Part<W<W<W<T>[K1]>[K2]>, K3>, k4: Part<W<W<W<W<T>[K1]>[K2]>[K3]>, K4>, k5: Part<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>, K5>, setter: StoreSetter<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5], [K5, K4, K3, K2, K1]>): void;
90
+ <K1 extends KeyOf<W<T>>, K2 extends KeyOf<W<W<T>[K1]>>, K3 extends KeyOf<W<W<W<T>[K1]>[K2]>>, K4 extends MutableKeyOf<W<W<W<W<T>[K1]>[K2]>[K3]>>>(k1: Part<W<T>, K1>, k2: Part<W<W<T>[K1]>, K2>, k3: Part<W<W<W<T>[K1]>[K2]>, K3>, k4: Part<W<W<W<W<T>[K1]>[K2]>[K3]>, K4>, setter: StoreSetter<W<W<W<W<T>[K1]>[K2]>[K3]>[K4], [K4, K3, K2, K1]>): void;
91
+ <K1 extends KeyOf<W<T>>, K2 extends KeyOf<W<W<T>[K1]>>, K3 extends MutableKeyOf<W<W<W<T>[K1]>[K2]>>>(k1: Part<W<T>, K1>, k2: Part<W<W<T>[K1]>, K2>, k3: Part<W<W<W<T>[K1]>[K2]>, K3>, setter: StoreSetter<W<W<W<T>[K1]>[K2]>[K3], [K3, K2, K1]>): void;
92
+ <K1 extends KeyOf<W<T>>, K2 extends MutableKeyOf<W<W<T>[K1]>>>(k1: Part<W<T>, K1>, k2: Part<W<W<T>[K1]>, K2>, setter: StoreSetter<W<W<T>[K1]>[K2], [K2, K1]>): void;
93
+ <K1 extends MutableKeyOf<W<T>>>(k1: Part<W<T>, K1>, setter: StoreSetter<W<T>[K1], [K1]>): void;
94
+ (setter: StoreSetter<T, []>): void;
95
+ <K1 extends KeyOf<W<T>>, K2 extends KeyOf<W<W<T>[K1]>>, K3 extends KeyOf<W<W<W<T>[K1]>[K2]>>, K4 extends KeyOf<W<W<W<W<T>[K1]>[K2]>[K3]>>, K5 extends KeyOf<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>>, K6 extends KeyOf<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>>, K7 extends KeyOf<W<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>[K6]>>>(k1: Part<W<T>, K1>, k2: Part<W<W<T>[K1]>, K2>, k3: Part<W<W<W<T>[K1]>[K2]>, K3>, k4: Part<W<W<W<W<T>[K1]>[K2]>[K3]>, K4>, k5: Part<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>, K5>, k6: Part<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>, K6>, k7: Part<W<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>[K6]>, K7>, ...rest: Rest<W<W<W<W<W<W<W<T>[K1]>[K2]>[K3]>[K4]>[K5]>[K6]>[K7], [K7, K6, K5, K4, K3, K2, K1]>): void;
243
96
  }
244
97
  /**
245
98
  * Creates a reactive store that can be read through a proxy object and written with a setter function
246
99
  *
247
100
  * @description https://docs.solidjs.com/reference/store-utilities/create-store
248
101
  */
249
- export declare function createStore<T extends object = {}>(
250
- ...[store, options]: {} extends T
251
- ? [
252
- store?: T | Store<T>,
253
- options?: {
254
- name?: string;
255
- }
256
- ]
257
- : [
258
- store: T | Store<T>,
259
- options?: {
260
- name?: string;
261
- }
262
- ]
263
- ): [get: Store<T>, set: SetStoreFunction<T>];
102
+ export declare function createStore<T extends object = {}>(...[store, options]: {} extends T ? [store?: T | Store<T>, options?: {
103
+ name?: string;
104
+ }] : [store: T | Store<T>, options?: {
105
+ name?: string;
106
+ }]): [get: Store<T>, set: SetStoreFunction<T>];
264
107
  export {};
package/types/index.d.ts CHANGED
@@ -1,66 +1,5 @@
1
- export {
2
- $DEVCOMP,
3
- $PROXY,
4
- $TRACK,
5
- batch,
6
- catchError,
7
- children,
8
- createComputed,
9
- createContext,
10
- createDeferred,
11
- createEffect,
12
- createMemo,
13
- createReaction,
14
- createRenderEffect,
15
- createResource,
16
- createRoot,
17
- createSelector,
18
- createSignal,
19
- enableExternalSource,
20
- enableScheduling,
21
- equalFn,
22
- getListener,
23
- getOwner,
24
- on,
25
- onCleanup,
26
- onError,
27
- onMount,
28
- runWithOwner,
29
- startTransition,
30
- untrack,
31
- useContext,
32
- useTransition
33
- } from "./reactive/signal.js";
34
- export type {
35
- Accessor,
36
- AccessorArray,
37
- ChildrenReturn,
38
- Context,
39
- ContextProviderComponent,
40
- EffectFunction,
41
- EffectOptions,
42
- InitializedResource,
43
- InitializedResourceOptions,
44
- InitializedResourceReturn,
45
- MemoOptions,
46
- NoInfer,
47
- OnEffectFunction,
48
- OnOptions,
49
- Owner,
50
- ResolvedChildren,
51
- ResolvedJSXElement,
52
- Resource,
53
- ResourceActions,
54
- ResourceFetcher,
55
- ResourceFetcherInfo,
56
- ResourceOptions,
57
- ResourceReturn,
58
- ResourceSource,
59
- ReturnTypes,
60
- Setter,
61
- Signal,
62
- SignalOptions
63
- } from "./reactive/signal.js";
1
+ export { $DEVCOMP, $PROXY, $TRACK, batch, catchError, children, createComputed, createContext, createDeferred, createEffect, createMemo, createReaction, createRenderEffect, createResource, createRoot, createSelector, createSignal, enableExternalSource, enableScheduling, equalFn, getListener, getOwner, on, onCleanup, onError, onMount, runWithOwner, startTransition, untrack, useContext, useTransition } from "./reactive/signal.js";
2
+ export type { Accessor, AccessorArray, ChildrenReturn, Context, ContextProviderComponent, EffectFunction, EffectOptions, InitializedResource, InitializedResourceOptions, InitializedResourceReturn, MemoOptions, NoInfer, OnEffectFunction, OnOptions, Owner, ResolvedChildren, ResolvedJSXElement, Resource, ResourceActions, ResourceFetcher, ResourceFetcherInfo, ResourceOptions, ResourceReturn, ResourceSource, ReturnTypes, Setter, Signal, SignalOptions } from "./reactive/signal.js";
64
3
  export * from "./reactive/observable.js";
65
4
  export * from "./reactive/scheduler.js";
66
5
  export * from "./reactive/array.js";
@@ -69,22 +8,16 @@ import type { JSX } from "./jsx.js";
69
8
  type JSXElement = JSX.Element;
70
9
  export type { JSXElement, JSX };
71
10
  import { registerGraph, writeSignal } from "./reactive/signal.js";
72
- export declare const DEV:
73
- | {
74
- readonly hooks: {
11
+ export declare const DEV: {
12
+ readonly hooks: {
75
13
  afterUpdate: (() => void) | null;
76
14
  afterCreateOwner: ((owner: import("./reactive/signal.js").Owner) => void) | null;
77
- afterCreateSignal:
78
- | ((signal: import("./reactive/signal.js").SignalState<any>) => void)
79
- | null;
80
- afterRegisterGraph:
81
- | ((sourceMapValue: import("./reactive/signal.js").SourceMapValue) => void)
82
- | null;
83
- };
84
- readonly writeSignal: typeof writeSignal;
85
- readonly registerGraph: typeof registerGraph;
86
- }
87
- | undefined;
15
+ afterCreateSignal: ((signal: import("./reactive/signal.js").SignalState<any>) => void) | null;
16
+ afterRegisterGraph: ((sourceMapValue: import("./reactive/signal.js").SourceMapValue) => void) | null;
17
+ };
18
+ readonly writeSignal: typeof writeSignal;
19
+ readonly registerGraph: typeof registerGraph;
20
+ } | undefined;
88
21
  declare global {
89
- var Solid$$: boolean;
22
+ var Solid$$: boolean;
90
23
  }
@@ -29,13 +29,9 @@ SOFTWARE.
29
29
  *
30
30
  * @description https://docs.solidjs.com/reference/reactive-utilities/map-array
31
31
  */
32
- export declare function mapArray<T, U>(
33
- list: Accessor<readonly T[] | undefined | null | false>,
34
- mapFn: (v: T, i: Accessor<number>) => U,
35
- options?: {
32
+ export declare function mapArray<T, U>(list: Accessor<readonly T[] | undefined | null | false>, mapFn: (v: T, i: Accessor<number>) => U, options?: {
36
33
  fallback?: Accessor<any>;
37
- }
38
- ): () => U[];
34
+ }): () => U[];
39
35
  /**
40
36
  * Reactively maps arrays by index instead of value - underlying helper for the `<Index>` control flow
41
37
  *
@@ -43,10 +39,6 @@ export declare function mapArray<T, U>(
43
39
  *
44
40
  * @description https://docs.solidjs.com/reference/reactive-utilities/index-array
45
41
  */
46
- export declare function indexArray<T, U>(
47
- list: Accessor<readonly T[] | undefined | null | false>,
48
- mapFn: (v: Accessor<T>, i: number) => U,
49
- options?: {
42
+ export declare function indexArray<T, U>(list: Accessor<readonly T[] | undefined | null | false>, mapFn: (v: Accessor<T>, i: number) => U, options?: {
50
43
  fallback?: Accessor<any>;
51
- }
52
- ): () => U[];
44
+ }): () => U[];
@@ -1,22 +1,20 @@
1
1
  import { Accessor, Setter } from "./signal.js";
2
2
  declare global {
3
- interface SymbolConstructor {
4
- readonly observable: symbol;
5
- }
3
+ interface SymbolConstructor {
4
+ readonly observable: symbol;
5
+ }
6
6
  }
7
7
  interface Observable<T> {
8
- subscribe(observer: ObservableObserver<T>): {
9
- unsubscribe(): void;
10
- };
11
- [Symbol.observable](): Observable<T>;
12
- }
13
- export type ObservableObserver<T> =
14
- | ((v: T) => void)
15
- | {
16
- next?: (v: T) => void;
17
- error?: (v: any) => void;
18
- complete?: (v: boolean) => void;
8
+ subscribe(observer: ObservableObserver<T>): {
9
+ unsubscribe(): void;
19
10
  };
11
+ [Symbol.observable](): Observable<T>;
12
+ }
13
+ export type ObservableObserver<T> = ((v: T) => void) | {
14
+ next?: (v: T) => void;
15
+ error?: (v: any) => void;
16
+ complete?: (v: boolean) => void;
17
+ };
20
18
  /**
21
19
  * Creates a simple observable from a signal's accessor to be used with the `from` operator of observable libraries like e.g. rxjs
22
20
  * ```typescript
@@ -28,15 +26,11 @@ export type ObservableObserver<T> =
28
26
  * description https://docs.solidjs.com/reference/reactive-utilities/observable
29
27
  */
30
28
  export declare function observable<T>(input: Accessor<T>): Observable<T>;
31
- type Producer<T> =
32
- | ((setter: Setter<T>) => () => void)
33
- | {
34
- subscribe: (fn: (v: T) => void) =>
35
- | (() => void)
36
- | {
37
- unsubscribe: () => void;
38
- };
29
+ type Producer<T> = ((setter: Setter<T>) => () => void) | {
30
+ subscribe: (fn: (v: T) => void) => (() => void) | {
31
+ unsubscribe: () => void;
39
32
  };
33
+ };
40
34
  export declare function from<T>(producer: Producer<T>, initalValue: T): Accessor<T>;
41
35
  export declare function from<T>(producer: Producer<T | undefined>): Accessor<T | undefined>;
42
36
  export {};
@@ -1,13 +1,10 @@
1
1
  export interface Task {
2
- id: number;
3
- fn: ((didTimeout: boolean) => void) | null;
4
- startTime: number;
5
- expirationTime: number;
2
+ id: number;
3
+ fn: ((didTimeout: boolean) => void) | null;
4
+ startTime: number;
5
+ expirationTime: number;
6
6
  }
7
- export declare function requestCallback(
8
- fn: () => void,
9
- options?: {
7
+ export declare function requestCallback(fn: () => void, options?: {
10
8
  timeout: number;
11
- }
12
- ): Task;
9
+ }): Task;
13
10
  export declare function cancelCallback(task: Task): void;