@legendapp/state 2.2.0-next.3 → 2.2.0-next.30
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/babel.js.map +1 -1
- package/config/enableDirectAccess.d.ts +1 -1
- package/config/enableDirectPeek.d.ts +1 -1
- package/config/enableReactDirectRender.js.map +1 -1
- package/config/enableReactDirectRender.mjs.map +1 -1
- package/config/enableReactTracking.d.ts +4 -3
- package/config/enableReactTracking.js.map +1 -1
- package/config/enableReactTracking.mjs.map +1 -1
- package/config/enableReactUse.d.ts +1 -1
- package/helpers/fetch.d.ts +4 -3
- package/helpers/fetch.js.map +1 -1
- package/helpers/fetch.mjs.map +1 -1
- package/helpers/pageHash.js.map +1 -1
- package/helpers/pageHash.mjs.map +1 -1
- package/helpers/pageHashParams.js.map +1 -1
- package/helpers/pageHashParams.mjs.map +1 -1
- package/helpers/time.d.ts +2 -2
- package/helpers/time.js.map +1 -1
- package/helpers/time.mjs.map +1 -1
- package/history.js.map +1 -1
- package/history.mjs.map +1 -1
- package/index.d.ts +15 -4
- package/index.js +534 -242
- package/index.js.map +1 -1
- package/index.mjs +533 -243
- package/index.mjs.map +1 -1
- package/package.json +2 -10
- package/persist-plugins/async-storage.js.map +1 -1
- package/persist-plugins/async-storage.mjs.map +1 -1
- package/persist-plugins/fetch.js.map +1 -1
- package/persist-plugins/fetch.mjs.map +1 -1
- package/persist-plugins/firebase.js.map +1 -1
- package/persist-plugins/firebase.mjs.map +1 -1
- package/persist-plugins/indexeddb.js.map +1 -1
- package/persist-plugins/indexeddb.mjs.map +1 -1
- package/persist-plugins/local-storage.js +10 -2
- package/persist-plugins/local-storage.js.map +1 -1
- package/persist-plugins/local-storage.mjs +10 -2
- package/persist-plugins/local-storage.mjs.map +1 -1
- package/persist-plugins/mmkv.js.map +1 -1
- package/persist-plugins/mmkv.mjs.map +1 -1
- package/persist-plugins/query.js.map +1 -1
- package/persist-plugins/query.mjs.map +1 -1
- package/persist.d.ts +15 -1
- package/persist.js +365 -116
- package/persist.js.map +1 -1
- package/persist.mjs +366 -117
- package/persist.mjs.map +1 -1
- package/react-hooks/createObservableHook.js +1 -1
- package/react-hooks/createObservableHook.js.map +1 -1
- package/react-hooks/createObservableHook.mjs +1 -1
- package/react-hooks/createObservableHook.mjs.map +1 -1
- package/react-hooks/useFetch.d.ts +4 -3
- package/react-hooks/useFetch.js.map +1 -1
- package/react-hooks/useFetch.mjs.map +1 -1
- package/react-hooks/useHover.js.map +1 -1
- package/react-hooks/useHover.mjs.map +1 -1
- package/react-hooks/useMeasure.js.map +1 -1
- package/react-hooks/useMeasure.mjs.map +1 -1
- package/react-hooks/useObservableNextRouter.js.map +1 -1
- package/react-hooks/useObservableNextRouter.mjs.map +1 -1
- package/react-hooks/useObservableQuery.js.map +1 -1
- package/react-hooks/useObservableQuery.mjs.map +1 -1
- package/react-hooks/usePersistedObservable.d.ts +2 -2
- package/react-hooks/usePersistedObservable.js +3 -3
- package/react-hooks/usePersistedObservable.js.map +1 -1
- package/react-hooks/usePersistedObservable.mjs +3 -3
- package/react-hooks/usePersistedObservable.mjs.map +1 -1
- package/react.js +13 -8
- package/react.js.map +1 -1
- package/react.mjs +14 -9
- package/react.mjs.map +1 -1
- package/src/ObservableObject.d.ts +8 -4
- package/src/ObservablePrimitive.d.ts +2 -1
- package/src/activated.d.ts +3 -0
- package/src/batching.d.ts +3 -1
- package/src/computed.d.ts +1 -1
- package/src/config/enableDirectAccess.d.ts +1 -1
- package/src/config/enableDirectPeek.d.ts +1 -1
- package/src/config/enableReactTracking.d.ts +4 -3
- package/src/config/enableReactUse.d.ts +1 -1
- package/src/createObservable.d.ts +2 -2
- package/src/globals.d.ts +11 -4
- package/src/helpers/fetch.d.ts +4 -3
- package/src/helpers/time.d.ts +2 -2
- package/src/helpers.d.ts +3 -2
- package/src/history/trackHistory.d.ts +1 -1
- package/src/observable.d.ts +6 -15
- package/src/observableInterfaces.d.ts +60 -331
- package/src/observableTypes.d.ts +93 -0
- package/src/persist/observablePersistRemoteFunctionsAdapter.d.ts +1 -1
- package/src/persist/persistActivateNode.d.ts +1 -0
- package/src/persist/persistHelpers.d.ts +1 -1
- package/src/persist/persistObservable.d.ts +3 -12
- package/src/persistTypes.d.ts +229 -0
- package/src/proxy.d.ts +2 -1
- package/src/react/Computed.d.ts +1 -1
- package/src/react/Switch.d.ts +3 -3
- package/src/react/reactInterfaces.d.ts +2 -1
- package/src/react/usePauseProvider.d.ts +3 -3
- package/src/react/useWhen.d.ts +2 -2
- package/src/react-hooks/useFetch.d.ts +4 -3
- package/src/react-hooks/usePersistedObservable.d.ts +2 -2
- package/src/retry.d.ts +6 -0
- package/src/trackSelector.d.ts +3 -2
- package/src/when.d.ts +6 -2
- package/trace.js.map +1 -1
- package/trace.mjs.map +1 -1
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
import type { AsyncStorageStatic } from '@react-native-async-storage/async-storage';
|
|
2
|
+
import type { DatabaseReference, Query } from 'firebase/database';
|
|
3
|
+
import { ArrayValue, Change, ClassConstructor, RecordValue, RetryOptions, Selector, TypeAtPath } from './observableInterfaces';
|
|
4
|
+
import { Observable, ObservableReadable, ObservableState } from './observableTypes';
|
|
5
|
+
export interface PersistTransform<T = any> {
|
|
6
|
+
in?: (value: T) => T | Promise<T>;
|
|
7
|
+
out?: (value: T) => T | Promise<T>;
|
|
8
|
+
}
|
|
9
|
+
export interface PersistOptionsLocal<T = any> {
|
|
10
|
+
name: string;
|
|
11
|
+
transform?: PersistTransform<T>;
|
|
12
|
+
fieldTransforms?: FieldTransforms<T>;
|
|
13
|
+
readonly?: boolean;
|
|
14
|
+
mmkv?: MMKVConfiguration;
|
|
15
|
+
indexedDB?: {
|
|
16
|
+
prefixID?: string;
|
|
17
|
+
itemID?: string;
|
|
18
|
+
};
|
|
19
|
+
options?: any;
|
|
20
|
+
}
|
|
21
|
+
export type PersistOptionsRemote<T = any> = ObservablePersistenceConfigRemoteGlobalOptions & {
|
|
22
|
+
readonly?: boolean;
|
|
23
|
+
waitForGet?: Selector<any>;
|
|
24
|
+
waitForSet?: Selector<any> | ((changes: Change[]) => any);
|
|
25
|
+
manual?: boolean;
|
|
26
|
+
fieldTransforms?: FieldTransforms<T>;
|
|
27
|
+
allowSetIfError?: boolean;
|
|
28
|
+
transform?: PersistTransform<T>;
|
|
29
|
+
firebase?: {
|
|
30
|
+
refPath: (uid: string | undefined) => string;
|
|
31
|
+
query?: (ref: DatabaseReference) => DatabaseReference | Query;
|
|
32
|
+
queryByModified?: QueryByModified<T>;
|
|
33
|
+
ignoreKeys?: string[];
|
|
34
|
+
requireAuth?: boolean;
|
|
35
|
+
mode?: 'once' | 'realtime';
|
|
36
|
+
};
|
|
37
|
+
offlineBehavior?: false | 'retry';
|
|
38
|
+
changeTimeout?: number;
|
|
39
|
+
metadataTimeout?: number;
|
|
40
|
+
retry?: RetryOptions;
|
|
41
|
+
onGetError?: (error: Error) => void;
|
|
42
|
+
onSetError?: (error: Error) => void;
|
|
43
|
+
log?: (message?: any, ...optionalParams: any[]) => void;
|
|
44
|
+
onBeforeSet?: () => void;
|
|
45
|
+
onSet?: () => void;
|
|
46
|
+
};
|
|
47
|
+
export interface ObservablePersistenceConfigLocalGlobalOptions {
|
|
48
|
+
onGetError?: (error: Error) => void;
|
|
49
|
+
onSetError?: (error: Error) => void;
|
|
50
|
+
indexedDB?: {
|
|
51
|
+
databaseName: string;
|
|
52
|
+
version: number;
|
|
53
|
+
tableNames: string[];
|
|
54
|
+
};
|
|
55
|
+
asyncStorage?: {
|
|
56
|
+
AsyncStorage: AsyncStorageStatic;
|
|
57
|
+
preload?: boolean | string[];
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
export interface ObservablePersistenceConfigRemoteGlobalOptions {
|
|
61
|
+
saveTimeout?: number;
|
|
62
|
+
dateModifiedKey?: string;
|
|
63
|
+
offlineBehavior?: false | 'retry';
|
|
64
|
+
onGetError?: (error: Error) => void;
|
|
65
|
+
onSetError?: (error: Error) => void;
|
|
66
|
+
log?: (logLevel: 'verbose' | 'warning' | 'error', message: any, ...optionalParams: any[]) => void;
|
|
67
|
+
onBeforeSet?: () => void;
|
|
68
|
+
onSet?: () => void;
|
|
69
|
+
}
|
|
70
|
+
export interface ObservablePersistenceConfig {
|
|
71
|
+
pluginLocal?: ClassConstructor<ObservablePersistLocal>;
|
|
72
|
+
pluginRemote?: ClassConstructor<ObservablePersistRemoteClass> | ObservablePersistRemoteFunctions;
|
|
73
|
+
localOptions?: ObservablePersistenceConfigLocalGlobalOptions;
|
|
74
|
+
remoteOptions?: ObservablePersistenceConfigRemoteGlobalOptions;
|
|
75
|
+
}
|
|
76
|
+
export interface PersistOptions<T = any> {
|
|
77
|
+
local?: string | PersistOptionsLocal<T>;
|
|
78
|
+
remote?: PersistOptionsRemote<T>;
|
|
79
|
+
pluginLocal?: ClassConstructor<ObservablePersistLocal>;
|
|
80
|
+
pluginRemote?: ClassConstructor<ObservablePersistRemoteClass> | ObservablePersistRemoteFunctions<T>;
|
|
81
|
+
}
|
|
82
|
+
export interface PersistMetadata {
|
|
83
|
+
id?: '__legend_metadata';
|
|
84
|
+
lastSync?: number;
|
|
85
|
+
pending?: any;
|
|
86
|
+
}
|
|
87
|
+
export interface ObservablePersistLocal {
|
|
88
|
+
initialize?(config: ObservablePersistenceConfigLocalGlobalOptions): void | Promise<void>;
|
|
89
|
+
loadTable?(table: string, config: PersistOptionsLocal): Promise<any> | void;
|
|
90
|
+
getTable<T = any>(table: string, config: PersistOptionsLocal): T;
|
|
91
|
+
set(table: string, changes: Change[], config: PersistOptionsLocal): Promise<any> | void;
|
|
92
|
+
deleteTable(table: string, config: PersistOptionsLocal): Promise<any> | void;
|
|
93
|
+
getMetadata(table: string, config: PersistOptionsLocal): PersistMetadata;
|
|
94
|
+
setMetadata(table: string, metadata: PersistMetadata, config: PersistOptionsLocal): Promise<any> | void;
|
|
95
|
+
deleteMetadata(table: string, config: PersistOptionsLocal): Promise<any> | void;
|
|
96
|
+
}
|
|
97
|
+
export interface ObservableOnChangeParams {
|
|
98
|
+
value: unknown;
|
|
99
|
+
path?: string[];
|
|
100
|
+
pathTypes?: TypeAtPath[];
|
|
101
|
+
mode?: 'assign' | 'set' | 'dateModified' | 'lastSync' | 'merge';
|
|
102
|
+
dateModified?: number | undefined;
|
|
103
|
+
lastSync?: number | undefined;
|
|
104
|
+
}
|
|
105
|
+
export interface ObservablePersistRemoteSetParams<T> {
|
|
106
|
+
syncState: Observable<ObservablePersistState>;
|
|
107
|
+
obs: Observable<T>;
|
|
108
|
+
options: PersistOptions<T>;
|
|
109
|
+
changes: Change[];
|
|
110
|
+
value: T;
|
|
111
|
+
}
|
|
112
|
+
export interface ObservablePersistRemoteGetParams<T> {
|
|
113
|
+
state: Observable<ObservablePersistState>;
|
|
114
|
+
obs: ObservableReadable<T>;
|
|
115
|
+
options: PersistOptions<T>;
|
|
116
|
+
dateModified?: number;
|
|
117
|
+
lastSync?: number;
|
|
118
|
+
mode?: 'assign' | 'set' | 'dateModified' | 'merge';
|
|
119
|
+
onGet: () => void;
|
|
120
|
+
onError: (error: Error) => void;
|
|
121
|
+
onChange: (params: ObservableOnChangeParams) => void | Promise<void>;
|
|
122
|
+
}
|
|
123
|
+
export type ObservablePersistRemoteGetFnParams<T> = Omit<ObservablePersistRemoteGetParams<T>, 'onGet'>;
|
|
124
|
+
export interface ObservablePersistRemoteClass {
|
|
125
|
+
get?<T>(params: ObservablePersistRemoteGetParams<T>): void;
|
|
126
|
+
set?<T>(params: ObservablePersistRemoteSetParams<T>): void | Promise<void | {
|
|
127
|
+
changes?: object;
|
|
128
|
+
dateModified?: number;
|
|
129
|
+
lastSync?: number;
|
|
130
|
+
pathStrs?: string[];
|
|
131
|
+
}>;
|
|
132
|
+
}
|
|
133
|
+
export interface ObservablePersistRemoteFunctions<T = any> {
|
|
134
|
+
get?(params: ObservablePersistRemoteGetFnParams<T>): T | Promise<T>;
|
|
135
|
+
set?(params: ObservablePersistRemoteSetParams<T>): void | Promise<void | {
|
|
136
|
+
changes?: object | undefined;
|
|
137
|
+
dateModified?: number;
|
|
138
|
+
lastSync?: number;
|
|
139
|
+
}>;
|
|
140
|
+
}
|
|
141
|
+
export interface ObservablePersistStateBase {
|
|
142
|
+
isLoadedLocal: boolean;
|
|
143
|
+
isEnabledLocal: boolean;
|
|
144
|
+
isEnabledRemote: boolean;
|
|
145
|
+
dateModified?: number;
|
|
146
|
+
lastSync?: number;
|
|
147
|
+
syncCount?: number;
|
|
148
|
+
clearLocal: () => Promise<void>;
|
|
149
|
+
sync: () => Promise<void>;
|
|
150
|
+
getPendingChanges: () => Record<string, {
|
|
151
|
+
p: any;
|
|
152
|
+
v?: any;
|
|
153
|
+
}> | undefined;
|
|
154
|
+
}
|
|
155
|
+
export type ObservablePersistState = ObservableState & ObservablePersistStateBase;
|
|
156
|
+
export type ObservablePersistStateInternal = ObservablePersistState & {
|
|
157
|
+
refreshNum: number;
|
|
158
|
+
};
|
|
159
|
+
export interface WithPersistState {
|
|
160
|
+
state?: ObservablePersistState;
|
|
161
|
+
_state?: ObservablePersistState;
|
|
162
|
+
}
|
|
163
|
+
export interface CacheOptions<T = any> {
|
|
164
|
+
local: string | PersistOptionsLocal<T>;
|
|
165
|
+
pluginLocal?: ClassConstructor<ObservablePersistLocal, T[]>;
|
|
166
|
+
}
|
|
167
|
+
declare type ObjectKeys<T> = Pick<T, {
|
|
168
|
+
[K in keyof T]-?: K extends string ? T[K] extends Record<string, any> ? T[K] extends any[] ? never : K : never : never;
|
|
169
|
+
}[keyof T]>;
|
|
170
|
+
declare type DictKeys<T> = Pick<T, {
|
|
171
|
+
[K in keyof T]-?: K extends string ? (T[K] extends Record<string, Record<string, any>> ? K : never) : never;
|
|
172
|
+
}[keyof T]>;
|
|
173
|
+
declare type ArrayKeys<T> = Pick<T, {
|
|
174
|
+
[K in keyof T]-?: K extends string | number ? (T[K] extends any[] ? K : never) : never;
|
|
175
|
+
}[keyof T]>;
|
|
176
|
+
export declare type FieldTransforms<T> = (T extends Record<string, Record<string, any>> ? {
|
|
177
|
+
_dict: FieldTransformsInner<RecordValue<T>>;
|
|
178
|
+
} : never) | FieldTransformsInner<T>;
|
|
179
|
+
export declare type FieldTransformsInner<T> = {
|
|
180
|
+
[K in keyof T]: string;
|
|
181
|
+
} & ({
|
|
182
|
+
[K in keyof ObjectKeys<T> as `${K}_obj`]?: FieldTransforms<T[K]>;
|
|
183
|
+
} | {
|
|
184
|
+
[K in keyof DictKeys<T> as `${K}_dict`]?: FieldTransforms<RecordValue<T[K]>>;
|
|
185
|
+
}) & {
|
|
186
|
+
[K in keyof ArrayKeys<T> as `${K}_arr`]?: FieldTransforms<ArrayValue<T[K]>>;
|
|
187
|
+
} & {
|
|
188
|
+
[K in keyof ArrayKeys<T> as `${K}_val`]?: FieldTransforms<ArrayValue<T[K]>>;
|
|
189
|
+
};
|
|
190
|
+
export type QueryByModified<T> = boolean | {
|
|
191
|
+
[K in keyof T]?: QueryByModified<T[K]>;
|
|
192
|
+
} | {
|
|
193
|
+
'*'?: boolean;
|
|
194
|
+
};
|
|
195
|
+
interface MMKVConfiguration {
|
|
196
|
+
/**
|
|
197
|
+
* The MMKV instance's ID. If you want to use multiple instances, make sure to use different IDs!
|
|
198
|
+
*
|
|
199
|
+
* @example
|
|
200
|
+
* ```ts
|
|
201
|
+
* const userStorage = new MMKV({ id: `user-${userId}-storage` })
|
|
202
|
+
* const globalStorage = new MMKV({ id: 'global-app-storage' })
|
|
203
|
+
* ```
|
|
204
|
+
*
|
|
205
|
+
* @default 'mmkv.default'
|
|
206
|
+
*/
|
|
207
|
+
id: string;
|
|
208
|
+
/**
|
|
209
|
+
* The MMKV instance's root path. By default, MMKV stores file inside `$(Documents)/mmkv/`. You can customize MMKV's root directory on MMKV initialization:
|
|
210
|
+
*
|
|
211
|
+
* @example
|
|
212
|
+
* ```ts
|
|
213
|
+
* const temporaryStorage = new MMKV({ path: '/tmp/' })
|
|
214
|
+
* ```
|
|
215
|
+
*/
|
|
216
|
+
path?: string;
|
|
217
|
+
/**
|
|
218
|
+
* The MMKV instance's encryption/decryption key. By default, MMKV stores all key-values in plain text on file, relying on iOS's sandbox to make sure the file is encrypted. Should you worry about information leaking, you can choose to encrypt MMKV.
|
|
219
|
+
*
|
|
220
|
+
* Encryption keys can have a maximum length of 16 bytes.
|
|
221
|
+
*
|
|
222
|
+
* @example
|
|
223
|
+
* ```ts
|
|
224
|
+
* const secureStorage = new MMKV({ encryptionKey: 'my-encryption-key!' })
|
|
225
|
+
* ```
|
|
226
|
+
*/
|
|
227
|
+
encryptionKey?: string;
|
|
228
|
+
}
|
|
229
|
+
export {};
|
package/src/proxy.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ObservableWriteable } from './observableTypes';
|
|
2
|
+
import { ObservableProxy, ObservableProxyLink, ObservableProxyTwoWay } from './observableInterfaces';
|
|
2
3
|
export declare function proxy<T, T2 = T>(get: (key: string) => T, set: (key: string, value: T2) => void): ObservableProxyTwoWay<Record<string, T>, T2>;
|
|
3
4
|
export declare function proxy<T extends Record<string, any>>(get: <K extends keyof T>(key: K) => ObservableWriteable<T[K]>): ObservableProxyLink<T>;
|
|
4
5
|
export declare function proxy<T>(get: (key: string) => ObservableWriteable<T>): ObservableProxyLink<Record<string, T>>;
|
package/src/react/Computed.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ReactElement, ReactNode } from 'react';
|
|
2
|
-
import type { ObservableReadable } from '../
|
|
2
|
+
import type { ObservableReadable } from '../observableTypes';
|
|
3
3
|
export declare function Computed({ children }: {
|
|
4
4
|
children: ObservableReadable | (() => ReactNode);
|
|
5
5
|
}): ReactElement;
|
package/src/react/Switch.d.ts
CHANGED
|
@@ -3,12 +3,12 @@ import { ReactElement, ReactNode } from 'react';
|
|
|
3
3
|
export declare function Switch<T extends object>({ value, children, }: {
|
|
4
4
|
value?: Selector<T>;
|
|
5
5
|
children: Partial<Record<keyof T | 'null' | 'undefined' | 'default', () => ReactNode>>;
|
|
6
|
-
}): ReactElement;
|
|
6
|
+
}): ReactElement | null;
|
|
7
7
|
export declare function Switch<T extends string | number | symbol>({ value, children, }: {
|
|
8
8
|
value?: Selector<T>;
|
|
9
9
|
children: Partial<Record<T | 'null' | 'undefined' | 'default', () => ReactNode>>;
|
|
10
|
-
}): ReactElement;
|
|
10
|
+
}): ReactElement | null;
|
|
11
11
|
export declare function Switch<T extends boolean>({ value, children, }: {
|
|
12
12
|
value?: Selector<T>;
|
|
13
13
|
children: Partial<Record<'false' | 'true' | 'null' | 'undefined' | 'default', () => ReactNode>>;
|
|
14
|
-
}): ReactElement;
|
|
14
|
+
}): ReactElement | null;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { FC, LegacyRef, ReactNode } from 'react';
|
|
2
|
-
import type { Observable
|
|
2
|
+
import type { Observable } from '../observableTypes';
|
|
3
|
+
import type { Selector } from '../observableInterfaces';
|
|
3
4
|
export type ShapeWithNew$<T> = Partial<Omit<T, 'children'>> & {
|
|
4
5
|
[K in keyof T as K extends `$${string & K}` ? K : `$${string & K}`]?: Selector<T[K]>;
|
|
5
6
|
} & {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
|
-
export declare const PauseContext: import("react").Context<import("
|
|
2
|
+
export declare const PauseContext: import("react").Context<import("../observableTypes").ObservableBoolean>;
|
|
3
3
|
export declare function usePauseProvider(): {
|
|
4
4
|
PauseProvider: ({ children }: {
|
|
5
5
|
children: ReactNode;
|
|
6
|
-
}) => import("react").FunctionComponentElement<import("react").ProviderProps<import("
|
|
7
|
-
isPaused$: import("
|
|
6
|
+
}) => import("react").FunctionComponentElement<import("react").ProviderProps<import("../observableTypes").ObservableBoolean>>;
|
|
7
|
+
isPaused$: import("../observableTypes").ObservableBoolean;
|
|
8
8
|
};
|
package/src/react/useWhen.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { Selector } from '@legendapp/state';
|
|
2
|
-
export declare function useWhen<T>(predicate: Selector<T>, effect: (value: T) => any | (() => any)): Promise<
|
|
3
|
-
export declare function useWhenReady<T>(predicate: Selector<T>, effect: (value: T) => any | (() => any)): Promise<
|
|
2
|
+
export declare function useWhen<T>(predicate: Selector<T>, effect: (value: T) => any | (() => any)): Promise<any>;
|
|
3
|
+
export declare function useWhenReady<T>(predicate: Selector<T>, effect: (value: T) => any | (() => any)): Promise<any>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { Observable } from '@legendapp/state';
|
|
2
|
+
export declare function useFetch<T>(input: RequestInfo | URL, init?: RequestInit, valueType?: 'arrayBuffer' | 'blob' | 'formData' | 'json' | 'text'): Observable<{
|
|
3
|
+
data?: T;
|
|
3
4
|
error?: any;
|
|
4
|
-
errorStr?: string
|
|
5
|
+
errorStr?: string;
|
|
5
6
|
loading: boolean;
|
|
6
7
|
}>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Observable,
|
|
1
|
+
import { Observable, WithPersistState } from '@legendapp/state';
|
|
2
2
|
import type { WithoutState } from '../persist/persistObservable';
|
|
3
3
|
/**
|
|
4
4
|
* A React hook that creates a new observable and can optionally listen or persist its state.
|
|
@@ -8,4 +8,4 @@ import type { WithoutState } from '../persist/persistObservable';
|
|
|
8
8
|
*
|
|
9
9
|
* @see https://www.legendapp.com/dev/state/react/#useObservable
|
|
10
10
|
*/
|
|
11
|
-
export declare function usePersistedObservable<T extends WithoutState>(
|
|
11
|
+
export declare function usePersistedObservable<T extends WithoutState>(): Observable<WithPersistState & T>;
|
package/src/retry.d.ts
ADDED
package/src/trackSelector.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import type { ListenerParams, ObservableListenerDispose, ObserveEvent, Selector } from './observableInterfaces';
|
|
1
|
+
import type { ListenerParams, NodeValue, ObservableListenerDispose, ObserveEvent, Selector, TrackingNode } from './observableInterfaces';
|
|
2
2
|
import type { ObserveOptions } from './observe';
|
|
3
3
|
export declare function trackSelector<T>(selector: Selector<T>, update: (params: ListenerParams) => void, observeEvent?: ObserveEvent<T>, observeOptions?: ObserveOptions, createResubscribe?: boolean): {
|
|
4
4
|
value: any;
|
|
5
|
-
|
|
5
|
+
nodes: Map<NodeValue, TrackingNode> | undefined;
|
|
6
|
+
dispose: (() => void) | undefined;
|
|
6
7
|
resubscribe: ObservableListenerDispose | undefined;
|
|
7
8
|
};
|
package/src/when.d.ts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import type { Selector } from './observableInterfaces';
|
|
2
|
-
export declare function when<T>(predicate:
|
|
3
|
-
export declare function
|
|
2
|
+
export declare function when<T, T2>(predicate: Promise<T>, effect: (value: T) => T2): Promise<T2>;
|
|
3
|
+
export declare function when<T, T2>(predicate: Selector<T>, effect: (value: T) => T2): Promise<T2>;
|
|
4
|
+
export declare function when<T>(predicate: Selector<T>): Promise<T>;
|
|
5
|
+
export declare function whenReady<T, T2>(predicate: Promise<T>, effect: (value: T) => T2): Promise<T2>;
|
|
6
|
+
export declare function whenReady<T, T2>(predicate: Selector<T>, effect: (value: T) => T2): Promise<T2>;
|
|
7
|
+
export declare function whenReady<T>(predicate: Selector<T>): Promise<T>;
|
package/trace.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace.js","sources":["../../src/trace/traceHelpers.ts","../../src/trace/useTraceListeners.ts","../../src/trace/useTraceUpdates.ts","../../src/trace/useVerifyNotTracking.ts","../../src/trace/useVerifyOneRender.ts"],"sourcesContent":[null,null,null,null,null],"names":["tracking","traceNodes","optimized","useRef"],"mappings":";;;;;AAEM,SAAU,WAAW,CAAC,IAAe,EAAA;IACvC,MAAM,GAAG,GAAwB,EAAE,CAAC;IACpC,IAAI,CAAC,GAAG,IAAI,CAAC;IACb,OAAO,CAAA,CAAC,KAAA,IAAA,IAAD,CAAC,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAD,CAAC,CAAE,GAAG,MAAK,SAAS,EAAE;QACzB,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;AACxB,QAAA,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"trace.js","sources":["../../src/trace/traceHelpers.ts","../../src/trace/useTraceListeners.ts","../../src/trace/useTraceUpdates.ts","../../src/trace/useVerifyNotTracking.ts","../../src/trace/useVerifyOneRender.ts"],"sourcesContent":[null,null,null,null,null],"names":["tracking","traceNodes","optimized","useRef"],"mappings":";;;;;AAEM,SAAU,WAAW,CAAC,IAAe,EAAA;IACvC,MAAM,GAAG,GAAwB,EAAE,CAAC;IACpC,IAAI,CAAC,GAAG,IAAI,CAAC;IACb,OAAO,CAAA,CAAC,KAAA,IAAA,IAAD,CAAC,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAD,CAAC,CAAE,GAAG,MAAK,SAAS,EAAE;QACzB,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;AACxB,QAAA,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;KAChB;AACD,IAAA,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB;;ACPM,SAAU,iBAAiB,CAAY,IAAa,EAAA;AACtD,IAAA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,IAAIA,cAAQ,CAAC,OAAO,EAAE;AAC5D,QAAAA,cAAQ,CAAC,OAAO,CAAC,cAAc,GAAGC,YAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;KACjE;AACL,CAAC;AAED,SAASA,YAAU,CAAC,IAAwB,EAAE,KAAmC,EAAA;AAC7E,IAAA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,IAAID,cAAQ,CAAC,OAAO,EAAE;AAC5D,QAAAA,cAAQ,CAAC,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;QAC5C,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,IAAI,KAAK,EAAE;YACP,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE;AAClC,gBAAA,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;AAChC,gBAAA,MAAM,OAAO,GAAG,KAAK,KAAK,IAAI,CAAC;AAC/B,gBAAA,MAAM,WAAW,GAAG,KAAK,KAAKE,eAAS,CAAC;AACxC,gBAAA,GAAG,CAAC,IAAI,CACJ,CAAG,EAAA,GAAG,CAAC,MAAM,GAAG,CAAC,CAAA,EAAA,EAAK,WAAW,CAAC,IAAI,CAAC,CAAA,EAAG,OAAO,GAAG,YAAY,GAAG,EAAE,CAAA,EACjE,WAAW,GAAG,cAAc,GAAG,EACnC,CAAA,CAAE,CACL,CAAC;aACL;SACJ;AAED,QAAA,OAAO,CAAC,GAAG,CACP,kBAAkB,IAAI,GAAG,IAAI,GAAG,GAAG,GAAG,EAAE,YAAY,GAAG,CAAC,MAAM,CAC1D,WAAA,EAAA,GAAG,CAAC,MAAM,KAAK,CAAC,GAAG,GAAG,GAAG,EAC7B,CAAM,GAAA,EAAA,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAE,CACzB,CAAC;KACL;AACL;;AC9BM,SAAU,eAAe,CAAC,IAAa,EAAA;AACzC,IAAA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,IAAIF,cAAQ,CAAC,OAAO,EAAE;AAC5D,QAAAA,cAAQ,CAAC,OAAO,CAAC,YAAY,GAAG,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;KACzE;AACL,CAAC;AAED,SAAS,eAAe,CAAC,IAAwB,EAAE,QAAkB,EAAA;IACjE,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,QAAQ,CAAC,IAAwB,EAAE,QAAkB,EAAE,MAA2B,EAAA;AACvF,IAAA,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAC3B,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE;AACxC,QAAA,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,KAAI;AAClD,YAAA,OAAO,CAAC,GAAG,CAAC,CAA4B,yBAAA,EAAA,IAAI,GAAG,IAAI,GAAG,GAAG,GAAG,EAAE,YAAY,IAAI,CAAA;AAClF,MAAA,EAAA,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;AAC5B,IAAA,EAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA,CAAE,CAAC,CAAC;AAC7B,SAAC,CAAC,CAAC;QACH,OAAO,QAAQ,EAAE,CAAC;KACrB;AACL;;ACnBM,SAAU,oBAAoB,CAAY,IAAa,EAAA;IACzD,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE;AACxC,QAAAA,cAAQ,CAAC,OAAQ,CAAC,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;KAClE;AACL,CAAC;AAED,SAAS,UAAU,CAAC,IAAwB,EAAE,KAAmC,EAAA;IAC7E,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE;AACxC,QAAAA,cAAQ,CAAC,OAAQ,CAAC,cAAc,GAAG,SAAS,CAAC;QAC7C,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,IAAI,KAAK,EAAE;YACP,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE;AAClC,gBAAA,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;AAChC,gBAAA,MAAM,OAAO,GAAG,KAAK,KAAK,IAAI,CAAC;AAC/B,gBAAA,MAAM,WAAW,GAAG,KAAK,KAAKE,eAAS,CAAC;AACxC,gBAAA,GAAG,CAAC,IAAI,CACJ,CAAG,EAAA,GAAG,CAAC,MAAM,GAAG,CAAC,CAAA,EAAA,EAAK,WAAW,CAAC,IAAI,CAAC,CAAA,EAAG,OAAO,GAAG,YAAY,GAAG,EAAE,CAAA,EACjE,WAAW,GAAG,cAAc,GAAG,EACnC,CAAA,CAAE,CACL,CAAC;aACL;AACD,YAAA,OAAO,CAAC,KAAK,CACT,kBAAkB,IAAI,GAAG,IAAI,GAAG,GAAG,GAAG,EAAE,YAAY,GAAG,CAAC,MAAM,CAC1D,WAAA,EAAA,GAAG,CAAC,MAAM,KAAK,CAAC,GAAG,GAAG,GAAG,EAC7B,CAA4B,yBAAA,EAAA,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAE,CAC/C,CAAC;SACL;KACJ;AACL;;AC7BM,SAAU,kBAAkB,CAAC,IAAa,EAAA;IAC5C,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE;QACxC,MAAM,UAAU,GAAG,EAAEC,YAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;AACvC,QAAA,IAAI,UAAU,GAAG,CAAC,EAAE;AAChB,YAAA,OAAO,CAAC,KAAK,CAAC,CAAkB,eAAA,EAAA,IAAI,GAAG,IAAI,GAAG,GAAG,GAAG,EAAE,CAAA,iCAAA,CAAmC,CAAC,CAAC;SAC9F;KACJ;AACL;;;;;;;"}
|
package/trace.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace.mjs","sources":["../../src/trace/traceHelpers.ts","../../src/trace/useTraceListeners.ts","../../src/trace/useTraceUpdates.ts","../../src/trace/useVerifyNotTracking.ts","../../src/trace/useVerifyOneRender.ts"],"sourcesContent":[null,null,null,null,null],"names":["traceNodes"],"mappings":";;;AAEM,SAAU,WAAW,CAAC,IAAe,EAAA;IACvC,MAAM,GAAG,GAAwB,EAAE,CAAC;IACpC,IAAI,CAAC,GAAG,IAAI,CAAC;IACb,OAAO,CAAA,CAAC,KAAA,IAAA,IAAD,CAAC,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAD,CAAC,CAAE,GAAG,MAAK,SAAS,EAAE;QACzB,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;AACxB,QAAA,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"trace.mjs","sources":["../../src/trace/traceHelpers.ts","../../src/trace/useTraceListeners.ts","../../src/trace/useTraceUpdates.ts","../../src/trace/useVerifyNotTracking.ts","../../src/trace/useVerifyOneRender.ts"],"sourcesContent":[null,null,null,null,null],"names":["traceNodes"],"mappings":"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"}
|