@mgarlik/datastore 0.1.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/LICENSE +21 -0
- package/README.md +29 -0
- package/dist/index.cjs +2370 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +413 -0
- package/dist/index.d.ts +413 -0
- package/dist/index.js +2289 -0
- package/dist/index.js.map +1 -0
- package/package.json +48 -0
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,413 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import React, { ReactNode } from 'react';
|
|
3
|
+
import * as SQL from 'expo-sqlite';
|
|
4
|
+
|
|
5
|
+
declare class SQLite$1 {
|
|
6
|
+
dbName: string;
|
|
7
|
+
private db;
|
|
8
|
+
constructor(name?: string);
|
|
9
|
+
private initDB;
|
|
10
|
+
private getDb;
|
|
11
|
+
private createTable;
|
|
12
|
+
private createTables;
|
|
13
|
+
/**
|
|
14
|
+
* Smazani starych logu
|
|
15
|
+
*/
|
|
16
|
+
private deleteLogs;
|
|
17
|
+
read<T>(query: string, args?: SQL.SQLiteBindParams): Promise<T[]>;
|
|
18
|
+
query<T>(query: string, args?: SQL.SQLiteBindParams): Promise<T[]>;
|
|
19
|
+
dropTable(table: string): Promise<SQL.SQLiteRunResult>;
|
|
20
|
+
emptyTable(table: string): Promise<SQL.SQLiteRunResult>;
|
|
21
|
+
getTables(): Promise<unknown[]>;
|
|
22
|
+
resetDatabase(): Promise<void>;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
type ProviderTypes = string;
|
|
26
|
+
type ProviderDataSource = {
|
|
27
|
+
uri?: string;
|
|
28
|
+
crud?: {
|
|
29
|
+
create?: string;
|
|
30
|
+
read?: string;
|
|
31
|
+
update?: string;
|
|
32
|
+
delete?: string;
|
|
33
|
+
updates?: {
|
|
34
|
+
[key: string]: string;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
data?: any[];
|
|
38
|
+
addData?: Record<string, any>[];
|
|
39
|
+
readAllFields?: boolean;
|
|
40
|
+
filter?: Record<string, any>;
|
|
41
|
+
socketListeners?: string[];
|
|
42
|
+
params?: Record<string, any>;
|
|
43
|
+
select?: any;
|
|
44
|
+
file?: string;
|
|
45
|
+
};
|
|
46
|
+
type DataProvider = {
|
|
47
|
+
id: ProviderTypes;
|
|
48
|
+
dataSource?: ProviderDataSource;
|
|
49
|
+
isPermanent?: boolean;
|
|
50
|
+
isPersisting?: boolean;
|
|
51
|
+
depend?: string;
|
|
52
|
+
autoCreate?: boolean;
|
|
53
|
+
schema?: Record<string, any>;
|
|
54
|
+
editor?: Record<string, any>;
|
|
55
|
+
actions?: string[];
|
|
56
|
+
};
|
|
57
|
+
type DataProviders = Record<string, DataProvider>;
|
|
58
|
+
|
|
59
|
+
type Uuid = string;
|
|
60
|
+
type JSONType = string | number | boolean | {
|
|
61
|
+
[x: string]: JSONType;
|
|
62
|
+
} | Array<JSONType>;
|
|
63
|
+
type SocketServerType = {
|
|
64
|
+
url: string;
|
|
65
|
+
params: Record<string, any>;
|
|
66
|
+
};
|
|
67
|
+
type SocketItem = {
|
|
68
|
+
listeners: number;
|
|
69
|
+
data: any[];
|
|
70
|
+
};
|
|
71
|
+
type DispatcherActionType = "registerProvider" | "unregisterProvider" | "updateDataStore" | "createDocument" | "updateDocument" | "updateDocuments" | "removeItem" | "deleteDocument" | "createProviderItem" | "deleteProviderItem";
|
|
72
|
+
type DispatcherType = {
|
|
73
|
+
isBussy: Boolean;
|
|
74
|
+
actions: {
|
|
75
|
+
action: DispatcherActionType;
|
|
76
|
+
data: any;
|
|
77
|
+
callback?: (data: JSONType) => void;
|
|
78
|
+
}[];
|
|
79
|
+
};
|
|
80
|
+
type SchemaTypeItem = {
|
|
81
|
+
/**
|
|
82
|
+
* Nazev zdrojoveho pole dat
|
|
83
|
+
*/
|
|
84
|
+
source?: string;
|
|
85
|
+
/**
|
|
86
|
+
* povolene hodnoty
|
|
87
|
+
*/
|
|
88
|
+
enum?: string[];
|
|
89
|
+
/**
|
|
90
|
+
* Je pole vyzadovano ?
|
|
91
|
+
*/
|
|
92
|
+
required?: boolean;
|
|
93
|
+
/**
|
|
94
|
+
* Je pole vyditelne ?
|
|
95
|
+
*/
|
|
96
|
+
visibility?: "visible" | "hidden";
|
|
97
|
+
/**
|
|
98
|
+
* Lze pole editovat ?
|
|
99
|
+
*/
|
|
100
|
+
editable?: boolean;
|
|
101
|
+
type?: "string" | "number" | "boolean";
|
|
102
|
+
form?: "select" | "textInput" | "dateTime" | "radio";
|
|
103
|
+
mode?: "screen";
|
|
104
|
+
title?: string;
|
|
105
|
+
placeholder?: string;
|
|
106
|
+
description?: string;
|
|
107
|
+
dataSource?: {
|
|
108
|
+
dataProvider: string;
|
|
109
|
+
};
|
|
110
|
+
itemRules?: string;
|
|
111
|
+
options?: {
|
|
112
|
+
dataProvider: string;
|
|
113
|
+
};
|
|
114
|
+
validations?: {
|
|
115
|
+
required?: string;
|
|
116
|
+
pattern?: JSONType;
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
type SchemaType = {
|
|
120
|
+
[key: string]: SchemaTypeItem;
|
|
121
|
+
};
|
|
122
|
+
/**
|
|
123
|
+
* Data Provider Filter
|
|
124
|
+
*/
|
|
125
|
+
type filterItemType = {
|
|
126
|
+
id: Uuid;
|
|
127
|
+
priority: number;
|
|
128
|
+
name: string;
|
|
129
|
+
value: string;
|
|
130
|
+
count?: number;
|
|
131
|
+
};
|
|
132
|
+
type FilterType = {
|
|
133
|
+
id: Uuid;
|
|
134
|
+
name: string;
|
|
135
|
+
priority: number;
|
|
136
|
+
values: Partial<filterItemType>[];
|
|
137
|
+
type: string;
|
|
138
|
+
};
|
|
139
|
+
/**
|
|
140
|
+
*
|
|
141
|
+
*/
|
|
142
|
+
type ProductFiltersType = {
|
|
143
|
+
/** Text input box ? */
|
|
144
|
+
name?: string;
|
|
145
|
+
/** Objekt filterovacich parametru {[filterId]: valuesId[]} */
|
|
146
|
+
filteringParameters: {
|
|
147
|
+
[key: Uuid]: Uuid[];
|
|
148
|
+
};
|
|
149
|
+
};
|
|
150
|
+
interface DataStoreProps {
|
|
151
|
+
providers: DataProviders;
|
|
152
|
+
/** Adresa REST/CRUD serveru */
|
|
153
|
+
restServer: string;
|
|
154
|
+
socketServer: SocketServerType;
|
|
155
|
+
/** false - provider nebude cist/ukladat data do persistentniho uloziste */
|
|
156
|
+
usePersistentStorage?: boolean;
|
|
157
|
+
children: ReactNode;
|
|
158
|
+
}
|
|
159
|
+
interface DataStore {
|
|
160
|
+
providers: Record<string, any>;
|
|
161
|
+
documents: Record<string, any>;
|
|
162
|
+
updateDocuments: (data: {
|
|
163
|
+
model: string;
|
|
164
|
+
documents: any;
|
|
165
|
+
mode?: "update" | "replace";
|
|
166
|
+
}) => Promise<void>;
|
|
167
|
+
dispatch: (action: DispatcherActionType, data: any, callback?: (data: JSONType) => void) => void;
|
|
168
|
+
initProvider: (id: string, data?: any) => Promise<any>;
|
|
169
|
+
/** Smaze data providera z databaze */
|
|
170
|
+
resetProvider: (id: ProviderTypes) => Promise<void>;
|
|
171
|
+
registerProvider: (provider: DataProvider) => Promise<any>;
|
|
172
|
+
unregisterProvider: (id: string) => Promise<void>;
|
|
173
|
+
updateProviderListeners: (id: string, val: number) => Promise<void>;
|
|
174
|
+
resetDataStore: () => Promise<void>;
|
|
175
|
+
counterProviders: Record<string, number>;
|
|
176
|
+
counterDocuments: Record<string, number>;
|
|
177
|
+
presetProviders: Record<ProviderTypes, DataProvider>;
|
|
178
|
+
sockets: Record<string, SocketItem>;
|
|
179
|
+
isLive: boolean;
|
|
180
|
+
isSynchronizing: boolean;
|
|
181
|
+
startSockets: () => void;
|
|
182
|
+
stopSockets: () => void;
|
|
183
|
+
registerProviderSockets: (sockets: string | string[]) => void;
|
|
184
|
+
unregisterProviderSockets: (sockets: string | string[]) => void;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
declare const SQLite: SQLite$1;
|
|
188
|
+
type DataStoreMetaType = Pick<DataStore, "isLive" | "isSynchronizing" | "sockets" | "counterProviders" | "counterDocuments">;
|
|
189
|
+
type DataStoreActionsType = Pick<DataStore, "dispatch" | "initProvider" | "resetProvider" | "registerProvider" | "unregisterProvider" | "updateProviderListeners" | "resetDataStore" | "startSockets" | "stopSockets" | "registerProviderSockets" | "unregisterProviderSockets" | "updateDocuments" | "presetProviders">;
|
|
190
|
+
type DataStoreStableType = {
|
|
191
|
+
dispatch: DataStore["dispatch"];
|
|
192
|
+
presetProviders: DataStore["presetProviders"];
|
|
193
|
+
updateProviderListeners: DataStore["updateProviderListeners"];
|
|
194
|
+
subscribeToProvider: (providerId: string, callback: () => void) => () => void;
|
|
195
|
+
getProviderLastUpdate: (providerId: string) => string | null;
|
|
196
|
+
getExternalDocuments: () => Record<string, any>;
|
|
197
|
+
getExternalProviders: () => Record<string, any>;
|
|
198
|
+
};
|
|
199
|
+
/** Meta (isLive, isSynchronizing, sockets, counters) */
|
|
200
|
+
declare const DataStoreContext: React.Context<DataStoreMetaType>;
|
|
201
|
+
/** Raw documents map */
|
|
202
|
+
declare const DataStoreDocumentsContext: React.Context<Record<string, any>>;
|
|
203
|
+
/** Raw providers map */
|
|
204
|
+
declare const DataStoreProvidersContext: React.Context<Record<string, any>>;
|
|
205
|
+
/** Stable action callbacks */
|
|
206
|
+
declare const DataStoreActionsContext: React.Context<DataStoreActionsType>;
|
|
207
|
+
/** Stable datastore API for provider-scoped subscriptions */
|
|
208
|
+
declare const DataStoreStableContext: React.Context<DataStoreStableType>;
|
|
209
|
+
/** Returns all stable action callbacks. Components using this hook never re-render due to document changes. */
|
|
210
|
+
declare const useDataStoreActions: () => DataStoreActionsType;
|
|
211
|
+
/**
|
|
212
|
+
*
|
|
213
|
+
* @param filter - objekt filteru
|
|
214
|
+
* @param resultType - "object"(default) | "array"
|
|
215
|
+
* @returns {documents, filter}
|
|
216
|
+
*/
|
|
217
|
+
declare const useFilteredDocuments: (filter: Record<string, any>) => {
|
|
218
|
+
documents: any[] | Record<string, any>;
|
|
219
|
+
setFilter: React.Dispatch<React.SetStateAction<Record<string, any>>>;
|
|
220
|
+
};
|
|
221
|
+
/**
|
|
222
|
+
* Vrati objekt vsech dokumentu
|
|
223
|
+
*
|
|
224
|
+
* @returns {} documentu
|
|
225
|
+
*/
|
|
226
|
+
declare const useDocuments: () => {
|
|
227
|
+
[key: string]: any;
|
|
228
|
+
};
|
|
229
|
+
/**
|
|
230
|
+
* Vrati object of documents daneho providera. Dokumenty lze vyfiltrovat
|
|
231
|
+
*
|
|
232
|
+
* @param {*} provider
|
|
233
|
+
* @param {*} filter
|
|
234
|
+
* @returns
|
|
235
|
+
*/
|
|
236
|
+
declare const useProviderDocuments: (provider: ProviderTypes, settings?: {
|
|
237
|
+
filter?: Record<string, any>;
|
|
238
|
+
documentId?: Uuid;
|
|
239
|
+
document?: Record<string, any>;
|
|
240
|
+
}) => {
|
|
241
|
+
[key: string]: any;
|
|
242
|
+
};
|
|
243
|
+
declare const useProvider: (val: ProviderTypes) => any;
|
|
244
|
+
/** Full DataStore — merges all sub-contexts. Components using this re-render on any state change. */
|
|
245
|
+
declare const useDataStore: () => DataStore;
|
|
246
|
+
declare const DataStoreProvider: ({ socketServer, restServer, usePersistentStorage, ...props }: DataStoreProps) => react_jsx_runtime.JSX.Element;
|
|
247
|
+
|
|
248
|
+
/**
|
|
249
|
+
*
|
|
250
|
+
* @param id ID providera z ProviderTypes
|
|
251
|
+
* @param params parametry pro doplneni URI adresy z dataProviders
|
|
252
|
+
* @param dataFilter Filter dat providera
|
|
253
|
+
* @param settings documentId ID dokumentu pouziteho k prepocitani dokumentu providera, document: JSON dokument k prepocitani dokumentu providera
|
|
254
|
+
* @returns void
|
|
255
|
+
*/
|
|
256
|
+
declare const useDataProvider: (
|
|
257
|
+
/**
|
|
258
|
+
* Provider id nebo objekt data {key: value}
|
|
259
|
+
*/
|
|
260
|
+
id: ProviderTypes | {
|
|
261
|
+
[key: string]: any;
|
|
262
|
+
},
|
|
263
|
+
/**
|
|
264
|
+
* Parametry pro prerenderovani providera (profiles/<%= profileId %>)
|
|
265
|
+
*/
|
|
266
|
+
params?: {
|
|
267
|
+
[key: string]: string;
|
|
268
|
+
} | null,
|
|
269
|
+
/**
|
|
270
|
+
* Filtrovani dat
|
|
271
|
+
*/
|
|
272
|
+
dataFilter?: JSONType | null,
|
|
273
|
+
/**
|
|
274
|
+
* Nejake nastaveni
|
|
275
|
+
*/
|
|
276
|
+
settings?: {
|
|
277
|
+
documentId?: string;
|
|
278
|
+
document?: JSONType;
|
|
279
|
+
}) => {
|
|
280
|
+
documents: any;
|
|
281
|
+
schema: any;
|
|
282
|
+
update: (val: JSONType) => void;
|
|
283
|
+
updateItem: ({ params, data, variant, documentId }: {
|
|
284
|
+
params?: JSONType;
|
|
285
|
+
data?: JSONType;
|
|
286
|
+
variant?: string;
|
|
287
|
+
documentId?: string;
|
|
288
|
+
}, callback?: (resp: JSONType) => void) => void;
|
|
289
|
+
deleteItem: ({ params, data }: {
|
|
290
|
+
params?: JSONType;
|
|
291
|
+
data?: JSONType;
|
|
292
|
+
}, callback?: (resp: JSONType) => void) => void;
|
|
293
|
+
createItem: (data: JSONType, callback?: () => void) => void;
|
|
294
|
+
};
|
|
295
|
+
|
|
296
|
+
/**
|
|
297
|
+
* blabla
|
|
298
|
+
*/
|
|
299
|
+
interface UseDocumentParams {
|
|
300
|
+
/**
|
|
301
|
+
* UUID dokumentu
|
|
302
|
+
*/
|
|
303
|
+
documentId: Uuid;
|
|
304
|
+
model?: string;
|
|
305
|
+
/**
|
|
306
|
+
* nazev Providera, nebo objekt definice Providera
|
|
307
|
+
*/
|
|
308
|
+
provider?: string | {};
|
|
309
|
+
/**
|
|
310
|
+
* Polozky ktere chceme ziskat. Ty co nejsou ulozene se pokusi stahnout z modelu nebo podle definice Providera a doplnit. Pokud nejsou nastavena zadne polozky, tak vrati to co ma v zarizeni.
|
|
311
|
+
*/
|
|
312
|
+
fields?: string[];
|
|
313
|
+
/**
|
|
314
|
+
* true|false - pozadujeme kompletni dokument.
|
|
315
|
+
*/
|
|
316
|
+
allFields?: boolean;
|
|
317
|
+
}
|
|
318
|
+
interface UseDocumentResult {
|
|
319
|
+
/**
|
|
320
|
+
* Vraci neco
|
|
321
|
+
*/
|
|
322
|
+
document: Record<string, any>;
|
|
323
|
+
}
|
|
324
|
+
/**
|
|
325
|
+
* Provider dokumentu z DataProvider
|
|
326
|
+
*
|
|
327
|
+
* Example: useDocument({documentId: "123-123123-123123-12", model: "products", fields: ["name", "image"]})
|
|
328
|
+
*
|
|
329
|
+
* @param documentId - ID dokumentu
|
|
330
|
+
* @param model - nazev modelu
|
|
331
|
+
* @param provider - nazev providera
|
|
332
|
+
* @param fields - seznam polozek dokumentu ktere chceme ziskat
|
|
333
|
+
* @param allFields - kompletni dokument
|
|
334
|
+
*
|
|
335
|
+
* @returns - vraci dokument
|
|
336
|
+
*/
|
|
337
|
+
declare const useDocument: ({ documentId, model, provider, fields, allFields }: UseDocumentParams) => UseDocumentResult;
|
|
338
|
+
|
|
339
|
+
declare const useProviderActions: (providerId: Uuid, data?: JSONType) => {
|
|
340
|
+
schema: any;
|
|
341
|
+
update: (val: JSONType) => void;
|
|
342
|
+
updateItem: ({ params, data, variant, documentId }: {
|
|
343
|
+
params?: JSONType;
|
|
344
|
+
data?: any;
|
|
345
|
+
variant?: string;
|
|
346
|
+
documentId?: Uuid;
|
|
347
|
+
}, callback?: (value: JSONType) => void) => void;
|
|
348
|
+
deleteItem: ({ params, data }: {
|
|
349
|
+
params: JSONType;
|
|
350
|
+
data?: JSONType;
|
|
351
|
+
}, callback?: () => void) => void;
|
|
352
|
+
createItem: (data: JSONType, callback?: (value: JSONType) => void) => void;
|
|
353
|
+
};
|
|
354
|
+
|
|
355
|
+
declare function recalculateObjectWithDocument(obj: any, document: any): any;
|
|
356
|
+
declare function getValueByRules(data: any, document: any, { mode, ruleId }: {
|
|
357
|
+
mode?: any;
|
|
358
|
+
ruleId?: any;
|
|
359
|
+
}): any;
|
|
360
|
+
declare function doesValueMatchFilter(objVal: any, value: any, documents?: any): any;
|
|
361
|
+
declare function doesObjectMatchFilter(obj: any, filter: any, documents?: any): any;
|
|
362
|
+
/**
|
|
363
|
+
*
|
|
364
|
+
* Filteruje pole dokumentu podle filteru
|
|
365
|
+
*
|
|
366
|
+
* @param {*} documents Pole dokumentu
|
|
367
|
+
* @param {*} filter object filteru
|
|
368
|
+
* @returns vraci pole vyfilterovanych dokumentu
|
|
369
|
+
*/
|
|
370
|
+
declare const filterDocuments: <T>(documents: T[] | T, filter: any) => any;
|
|
371
|
+
declare const filterDocumentsAsync: <T>(documents: T[] | T, filter: any) => Promise<any>;
|
|
372
|
+
declare const dataStoreFilterObject: (obj: any, filter: any) => any;
|
|
373
|
+
/**
|
|
374
|
+
*
|
|
375
|
+
* @returns UUID v4
|
|
376
|
+
*
|
|
377
|
+
* Vygeneruje unikatni UUID v4
|
|
378
|
+
*/
|
|
379
|
+
declare function uuid(): string;
|
|
380
|
+
declare function isUuid(val: string): boolean;
|
|
381
|
+
|
|
382
|
+
/**
|
|
383
|
+
* Black: \x1b[30m
|
|
384
|
+
* Red: \x1b[31m
|
|
385
|
+
* Green: \x1b[32m
|
|
386
|
+
*Yellow: \x1b[33m
|
|
387
|
+
* Blue: \x1b[34m
|
|
388
|
+
* Magenta: \x1b[35m
|
|
389
|
+
* Cyan: \x1b[36m
|
|
390
|
+
* White: \x1b[37m
|
|
391
|
+
*/
|
|
392
|
+
declare const COLOR_WHITE = "\u001B[37m%s\u001B[0m";
|
|
393
|
+
declare const COLOR_MAGENTA = "\u001B[35m%s\u001B[0m";
|
|
394
|
+
declare const COLOR_BLUE = "\u001B[34m%s\u001B[0m";
|
|
395
|
+
declare const COLOR_CYAN = "\u001B[36m%s\u001B[0m";
|
|
396
|
+
declare const COLOR_GREEN = "\u001B[32m%s\u001B[0m";
|
|
397
|
+
declare const COLOR_RED = "\u001B[31m%s\u001B[0m";
|
|
398
|
+
declare const COLOR_ERROR = "\u001B[31m%s\u001B[0m";
|
|
399
|
+
declare const COLOR_YELLOW = "\u001B[33m%s\u001B[0m";
|
|
400
|
+
declare const COLOR_ORANGE = "\u001B[38;5;208m%s\u001B[0m";
|
|
401
|
+
declare const COLOR_WARNING = "\u001B[33m%s\u001B[0m";
|
|
402
|
+
declare const COLOR_PROVIDER = "\u001B[35m%s\u001B[0m";
|
|
403
|
+
declare const COLOR_CONTEXT = "\u001B[35m%s\u001B[0m";
|
|
404
|
+
declare const COLOR_RENDER = "\u001B[34m%s\u001B[0m";
|
|
405
|
+
declare const COLOR_FUNCTION = "\u001B[36m%s\u001B[0m";
|
|
406
|
+
declare const COLOR_SCREEN = "\u001B[32m%s\u001B[0m";
|
|
407
|
+
declare const COLOR_SOCKET = "\u001B[36m%s\u001B[0m";
|
|
408
|
+
declare const COLOR_SOCKETS = "\u001B[33m%s\u001B[0m";
|
|
409
|
+
declare const COLOR_AXIOS = "\u001B[33m%s\u001B[0m";
|
|
410
|
+
declare const COLOR_APP = "\u001B[34m%s\u001B[0m";
|
|
411
|
+
declare const COLOR_DS = "\u001B[35m%s\u001B[0m";
|
|
412
|
+
|
|
413
|
+
export { COLOR_APP, COLOR_AXIOS, COLOR_BLUE, COLOR_CONTEXT, COLOR_CYAN, COLOR_DS, COLOR_ERROR, COLOR_FUNCTION, COLOR_GREEN, COLOR_MAGENTA, COLOR_ORANGE, COLOR_PROVIDER, COLOR_RED, COLOR_RENDER, COLOR_SCREEN, COLOR_SOCKET, COLOR_SOCKETS, COLOR_WARNING, COLOR_WHITE, COLOR_YELLOW, type DataProvider, type DataProviders, type DataStore, DataStoreActionsContext, DataStoreContext, DataStoreDocumentsContext, type DataStoreProps, DataStoreProvider, DataStoreProvidersContext, DataStoreStableContext, type DispatcherActionType, type DispatcherType, type FilterType, type JSONType, type ProductFiltersType, type ProviderDataSource, type ProviderTypes, SQLite, type SchemaType, type SocketItem, type SocketServerType, type Uuid, dataStoreFilterObject, doesObjectMatchFilter, doesValueMatchFilter, filterDocuments, filterDocumentsAsync, type filterItemType, getValueByRules, isUuid, recalculateObjectWithDocument, useDataProvider, useDataStore, useDataStoreActions, useDocument, useDocuments, useFilteredDocuments, useProvider, useProviderActions, useProviderDocuments, uuid };
|