@hf-chimera/store 0.0.15 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +171 -360
- package/dist/defaults-CDnbUToo.cjs +175 -0
- package/dist/defaults-CDnbUToo.cjs.map +1 -0
- package/dist/defaults-DkrKTPXY.mjs +91 -0
- package/dist/defaults-DkrKTPXY.mjs.map +1 -0
- package/dist/defaults.cjs +3 -14
- package/dist/defaults.d.cts +16 -42
- package/dist/defaults.d.cts.map +1 -1
- package/dist/defaults.d.mts +33 -0
- package/dist/defaults.d.mts.map +1 -0
- package/dist/defaults.mjs +3 -0
- package/dist/index.cjs +1709 -23
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +634 -2
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +634 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/{src-C74sq0jQ.js → index.mjs} +252 -246
- package/dist/index.mjs.map +1 -0
- package/dist/types-CNGIuRUw.d.mts +117 -0
- package/dist/types-CNGIuRUw.d.mts.map +1 -0
- package/dist/types-CuI5yXiY.d.cts +117 -0
- package/dist/types-CuI5yXiY.d.cts.map +1 -0
- package/package.json +10 -42
- package/.changeset/README.md +0 -8
- package/CHANGELOG.md +0 -92
- package/dist/adapters/react.cjs +0 -122
- package/dist/adapters/react.cjs.map +0 -1
- package/dist/adapters/react.d.cts +0 -39
- package/dist/adapters/react.d.cts.map +0 -1
- package/dist/adapters/react.d.ts +0 -39
- package/dist/adapters/react.d.ts.map +0 -1
- package/dist/adapters/react.js +0 -92
- package/dist/adapters/react.js.map +0 -1
- package/dist/defaults-Bg1kIemd.cjs +0 -372
- package/dist/defaults-Bg1kIemd.cjs.map +0 -1
- package/dist/defaults-CLUQg2zK.js +0 -210
- package/dist/defaults-CLUQg2zK.js.map +0 -1
- package/dist/defaults.cjs.map +0 -1
- package/dist/defaults.d.ts +0 -59
- package/dist/defaults.d.ts.map +0 -1
- package/dist/defaults.js +0 -13
- package/dist/defaults.js.map +0 -1
- package/dist/index-B6sY7hiW.d.ts +0 -22
- package/dist/index-B6sY7hiW.d.ts.map +0 -1
- package/dist/index-CTTQ1Hr3.d.ts +0 -821
- package/dist/index-CTTQ1Hr3.d.ts.map +0 -1
- package/dist/index-CiER0sxG.d.cts +0 -22
- package/dist/index-CiER0sxG.d.cts.map +0 -1
- package/dist/index-CkaYmEhA.d.cts +0 -821
- package/dist/index-CkaYmEhA.d.cts.map +0 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.js +0 -4
- package/dist/qb-PXzZgo2H.cjs +0 -50
- package/dist/qb-PXzZgo2H.cjs.map +0 -1
- package/dist/qb-pchs-vdM.js +0 -45
- package/dist/qb-pchs-vdM.js.map +0 -1
- package/dist/qb.cjs +0 -5
- package/dist/qb.d.cts +0 -3
- package/dist/qb.d.ts +0 -3
- package/dist/qb.js +0 -5
- package/dist/src-C74sq0jQ.js.map +0 -1
- package/dist/src-TJG6k3Nr.cjs +0 -1771
- package/dist/src-TJG6k3Nr.cjs.map +0 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,2 +1,634 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { A as ChimeraPropertyGetter, C as ChimeraOperatorMap, D as SimplifiedConjunction, E as ChimeraSimplifiedOperator, M as DeepPartial, N as KeysOfType, O as ChimeraEntityGetter, P as Nullish, S as ChimeraOperatorFunction, T as ChimeraSimplifiedFilter, _ as ChimeraFilterConfig, a as ChimeraOrderNulls, b as ChimeraKeyFromFilterGetter, c as ChimeraSimplifiedOrderDescriptor, g as ChimeraFilterChecker, h as ChimeraConjunctionType, i as ChimeraOrderDescriptor, j as Constructable, k as ChimeraEntityId, l as chimeraDefaultFilterConfig, m as ChimeraConjunctionOperationDescriptor, n as ChimeraOrderByComparator, o as ChimeraOrderPriority, p as ChimeraConjunctionDescriptor, r as ChimeraOrderConfig, s as ChimeraPrimitiveComparator, t as ChimeraKeyFromOrderGetter, v as ChimeraFilterDescriptor, w as ChimeraSimplifiedConjunctionOperation, x as ChimeraKeyFromOperatorGetter, y as ChimeraFilterOperatorDescriptor } from "./types-CuI5yXiY.cjs";
|
|
2
|
+
|
|
3
|
+
//#region ../../src/debug/types.d.ts
|
|
4
|
+
type ChimeraLogLevel = "debug" | "info" | "off";
|
|
5
|
+
type ChimeraDebugConfig = {
|
|
6
|
+
name?: string;
|
|
7
|
+
logs?: ChimeraLogLevel;
|
|
8
|
+
devMode?: boolean;
|
|
9
|
+
};
|
|
10
|
+
//#endregion
|
|
11
|
+
//#region ../../src/shared/ChimeraEventEmitter/ChimeraEventEmitter.d.ts
|
|
12
|
+
type ValidEventTypes = string | object;
|
|
13
|
+
type EventNames<T extends ValidEventTypes> = T extends string ? T : keyof T;
|
|
14
|
+
type ArgumentMap<T extends object> = { [K in keyof T]: T[K] extends ((...args: any[]) => void) ? Parameters<T[K]>[0] : T[K] extends any[] ? T[K][0] : T[K] };
|
|
15
|
+
type EventListener<T extends ValidEventTypes, K$1 extends EventNames<T>> = T extends string ? (arg: any) => void : (arg: ArgumentMap<Exclude<T, string | symbol>>[Extract<K$1, keyof T>]) => void;
|
|
16
|
+
type EventArgs<T extends ValidEventTypes, K$1 extends EventNames<T>> = Parameters<EventListener<T, K$1>>[0];
|
|
17
|
+
type EventRecord<TTEventTypes extends ValidEventTypes, TEventNames extends EventNames<TTEventTypes>> = {
|
|
18
|
+
fn: EventListener<TTEventTypes, TEventNames>;
|
|
19
|
+
once: boolean;
|
|
20
|
+
};
|
|
21
|
+
type EventRecordMap<T extends ValidEventTypes> = { [K in EventNames<T>]?: EventRecord<T, K> | EventRecord<T, K>[] };
|
|
22
|
+
declare class ChimeraEventEmitter<TEventTypes$1 extends ValidEventTypes = string> {
|
|
23
|
+
#private;
|
|
24
|
+
_events: EventRecordMap<TEventTypes$1>;
|
|
25
|
+
_eventsCount: number;
|
|
26
|
+
constructor();
|
|
27
|
+
eventNames(): EventNames<TEventTypes$1>[];
|
|
28
|
+
listeners<T extends EventNames<TEventTypes$1>>(event: T): EventListener<TEventTypes$1, T>[];
|
|
29
|
+
listenerCount(event: EventNames<TEventTypes$1>): number;
|
|
30
|
+
removeListener<T extends EventNames<TEventTypes$1>>(event: T, fn?: EventListener<TEventTypes$1, T>, once?: boolean): this;
|
|
31
|
+
emit<T extends EventNames<TEventTypes$1>>(event: T, arg?: EventArgs<TEventTypes$1, T>): boolean;
|
|
32
|
+
on<T extends EventNames<TEventTypes$1>>(event: T, fn: EventListener<TEventTypes$1, T>): this;
|
|
33
|
+
once<T extends EventNames<TEventTypes$1>>(event: T, fn: EventListener<TEventTypes$1, T>): this;
|
|
34
|
+
removeAllListeners(event?: EventNames<TEventTypes$1>): this;
|
|
35
|
+
off: <T extends EventNames<TEventTypes$1>>(event: T, fn?: EventListener<TEventTypes$1, T>, once?: boolean) => this;
|
|
36
|
+
addListener: <T extends EventNames<TEventTypes$1>>(event: T, fn: EventListener<TEventTypes$1, T>) => this;
|
|
37
|
+
}
|
|
38
|
+
type AnyChimeraEventEmitter = ChimeraEventEmitter<any>;
|
|
39
|
+
type ChimeraEventEmitterEvents<TEventEmitter extends AnyChimeraEventEmitter> = TEventEmitter extends ChimeraEventEmitter<infer TEventTypes> ? { [K in EventNames<TEventTypes>]: EventListener<TEventTypes, K> } : never;
|
|
40
|
+
type ChimeraEventEmitterEventNames<TEventEmitter extends AnyChimeraEventEmitter> = keyof ChimeraEventEmitterEvents<TEventEmitter>;
|
|
41
|
+
//#endregion
|
|
42
|
+
//#region ../../src/query/types.d.ts
|
|
43
|
+
declare enum ChimeraQueryFetchingState {
|
|
44
|
+
/** Query just initialized. */
|
|
45
|
+
Initialized = "initialized",
|
|
46
|
+
/** Not used yet. */
|
|
47
|
+
Scheduled = "scheduled",
|
|
48
|
+
/** Fetching in progress. */
|
|
49
|
+
Fetching = "fetching",
|
|
50
|
+
/** Creating in progress */
|
|
51
|
+
Creating = "creating",
|
|
52
|
+
/** Updating in progress. */
|
|
53
|
+
Updating = "updating",
|
|
54
|
+
/** Deleting in progress. */
|
|
55
|
+
Deleting = "deleting",
|
|
56
|
+
/** Fetch requested after reaching the Fetched, Errored, or Prefetched states. */
|
|
57
|
+
Refetching = "refetching",
|
|
58
|
+
/** Data retrieved from existing queries without initiating a fetch. */
|
|
59
|
+
Prefetched = "prefetched",
|
|
60
|
+
/** Fetch ended successfully; data is ready for use. */
|
|
61
|
+
Fetched = "fetched",
|
|
62
|
+
/** Fetch ended with an error; no data is available. */
|
|
63
|
+
Errored = "errored",
|
|
64
|
+
/** Refetch ended with an error, but old data is still available. */
|
|
65
|
+
ReErrored = "reErrored",
|
|
66
|
+
/**
|
|
67
|
+
* Only for the item query, data is deleted, but the local value is still present,
|
|
68
|
+
* no longer allows updates, but `refetch` still works (in case of strange errors, allows recovering state)
|
|
69
|
+
*/
|
|
70
|
+
Deleted = "deleted",
|
|
71
|
+
/** Only for the item query, data was actualized from an external event */
|
|
72
|
+
Actualized = "actualized",
|
|
73
|
+
}
|
|
74
|
+
interface ChimeraQueryFetchingStatable {
|
|
75
|
+
get state(): ChimeraQueryFetchingState;
|
|
76
|
+
get inProgress(): boolean;
|
|
77
|
+
get ready(): boolean;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Id getter types
|
|
81
|
+
*/
|
|
82
|
+
type ChimeraIdGetterFunction<TEntityName$1 extends string, TEntity> = (entity: TEntity, entityName: TEntityName$1) => ChimeraEntityId;
|
|
83
|
+
type ChimeraQueryEntityIdGetter<TEntityName$1 extends string, TEntity> = keyof TEntity | ChimeraIdGetterFunction<TEntityName$1, TEntity>;
|
|
84
|
+
/**
|
|
85
|
+
* Response types
|
|
86
|
+
*/
|
|
87
|
+
type ChimeraQueryCollectionFetcherResponse<Entity, Meta = any> = {
|
|
88
|
+
data: Entity[];
|
|
89
|
+
meta?: Meta;
|
|
90
|
+
};
|
|
91
|
+
type ChimeraQueryItemFetcherResponse<Entity, Meta = any> = {
|
|
92
|
+
data: Entity;
|
|
93
|
+
meta?: Meta;
|
|
94
|
+
};
|
|
95
|
+
type ChimeraQueryDeletionResult<Success extends boolean = boolean> = {
|
|
96
|
+
id: ChimeraEntityId;
|
|
97
|
+
success: Success;
|
|
98
|
+
};
|
|
99
|
+
type ChimeraQueryItemDeleteResponse<Meta = any> = {
|
|
100
|
+
result: ChimeraQueryDeletionResult;
|
|
101
|
+
meta?: Meta;
|
|
102
|
+
};
|
|
103
|
+
type ChimeraQueryBatchedDeleteResponse<Meta = any> = {
|
|
104
|
+
result: ChimeraQueryDeletionResult[];
|
|
105
|
+
meta?: Meta;
|
|
106
|
+
};
|
|
107
|
+
/**
|
|
108
|
+
* Fetcher types
|
|
109
|
+
*/
|
|
110
|
+
type ChimeraQueryEntityFetcherRequestParams = {
|
|
111
|
+
signal: AbortSignal;
|
|
112
|
+
};
|
|
113
|
+
type ChimeraQueryEntityCollectionFetcherParams<Entity, OperatorsMap extends ChimeraOperatorMap, Meta = any> = {
|
|
114
|
+
order: ChimeraSimplifiedOrderDescriptor<keyof Entity & string>[] | null;
|
|
115
|
+
filter: ChimeraSimplifiedFilter<OperatorsMap, keyof Entity & string> | null;
|
|
116
|
+
meta: Meta;
|
|
117
|
+
};
|
|
118
|
+
type ChimeraQueryEntityItemFetcherParams<Entity, Meta = any> = {
|
|
119
|
+
id: ChimeraEntityId;
|
|
120
|
+
meta: Meta;
|
|
121
|
+
};
|
|
122
|
+
type ChimeraQueryEntityCollectionFetcher<TEntityName$1 extends string, TEntity, TOperatorsMap$1 extends ChimeraOperatorMap, TMeta = any> = (params: ChimeraQueryEntityCollectionFetcherParams<TEntity, TOperatorsMap$1, TMeta>, requestParams: ChimeraQueryEntityFetcherRequestParams, entityName: TEntityName$1) => Promise<ChimeraQueryCollectionFetcherResponse<TEntity>>;
|
|
123
|
+
type ChimeraQueryEntityItemFetcher<TEntityName$1 extends string, TEntity> = (params: ChimeraQueryEntityItemFetcherParams<TEntity>, requestParams: ChimeraQueryEntityFetcherRequestParams, entityName: TEntityName$1) => Promise<ChimeraQueryItemFetcherResponse<TEntity>>;
|
|
124
|
+
/**
|
|
125
|
+
* Updater types
|
|
126
|
+
*/
|
|
127
|
+
type ChimeraQueryEntityItemUpdater<TEntityName$1 extends string, TEntity> = (updatedEntity: TEntity, requestParams: ChimeraQueryEntityFetcherRequestParams, entityName: TEntityName$1) => Promise<ChimeraQueryItemFetcherResponse<TEntity>>;
|
|
128
|
+
type ChimeraQueryEntityBatchedUpdater<TEntityName$1 extends string, TEntity> = (updatedEntities: TEntity[], requestParams: ChimeraQueryEntityFetcherRequestParams, entityName: TEntityName$1) => Promise<ChimeraQueryCollectionFetcherResponse<TEntity>>;
|
|
129
|
+
/**
|
|
130
|
+
* Deleter types
|
|
131
|
+
*/
|
|
132
|
+
type ChimeraQueryEntityItemDeleter<TEntityName$1 extends string = string> = (deleteId: ChimeraEntityId, requestParams: ChimeraQueryEntityFetcherRequestParams, entityName: TEntityName$1) => Promise<ChimeraQueryItemDeleteResponse>;
|
|
133
|
+
type ChimeraQueryEntityBatchedDeleter<TEntityName$1 extends string = string> = (deletedIds: ChimeraEntityId[], requestParams: ChimeraQueryEntityFetcherRequestParams, entityName: TEntityName$1) => Promise<ChimeraQueryBatchedDeleteResponse>;
|
|
134
|
+
/**
|
|
135
|
+
* Creator type
|
|
136
|
+
*/
|
|
137
|
+
type ChimeraQueryEntityItemCreator<TEntityName$1 extends string, TEntity> = (item: DeepPartial<TEntity>, requestParams: ChimeraQueryEntityFetcherRequestParams, entityName: TEntityName$1) => Promise<ChimeraQueryItemFetcherResponse<TEntity>>;
|
|
138
|
+
type ChimeraQueryEntityBatchedCreator<TEntityName$1 extends string, TEntity> = (items: DeepPartial<TEntity>[], requestParams: ChimeraQueryEntityFetcherRequestParams, entityName: TEntityName$1) => Promise<ChimeraQueryCollectionFetcherResponse<TEntity>>;
|
|
139
|
+
/**
|
|
140
|
+
* Config types
|
|
141
|
+
*/
|
|
142
|
+
type ChimeraQueryEntityConfig<TEntityName$1 extends string, TEntity, TOperatorsMap$1 extends ChimeraOperatorMap, TMeta = any> = {
|
|
143
|
+
name: TEntityName$1;
|
|
144
|
+
trustQuery?: boolean;
|
|
145
|
+
updateDebounceTimeout?: number;
|
|
146
|
+
idGetter: ChimeraQueryEntityIdGetter<TEntityName$1, TEntity>;
|
|
147
|
+
collectionFetcher?: ChimeraQueryEntityCollectionFetcher<TEntityName$1, TEntity, TOperatorsMap$1, TMeta>;
|
|
148
|
+
itemFetcher?: ChimeraQueryEntityItemFetcher<TEntityName$1, TEntity>;
|
|
149
|
+
itemUpdater?: ChimeraQueryEntityItemUpdater<TEntityName$1, TEntity>;
|
|
150
|
+
batchedUpdater?: ChimeraQueryEntityBatchedUpdater<TEntityName$1, TEntity>;
|
|
151
|
+
itemDeleter?: ChimeraQueryEntityItemDeleter<TEntityName$1>;
|
|
152
|
+
batchedDeleter?: ChimeraQueryEntityBatchedDeleter<TEntityName$1>;
|
|
153
|
+
itemCreator?: ChimeraQueryEntityItemCreator<TEntityName$1, TEntity>;
|
|
154
|
+
batchedCreator?: ChimeraQueryEntityBatchedCreator<TEntityName$1, TEntity>;
|
|
155
|
+
};
|
|
156
|
+
type QueryEntityConfig<TEntityName$1 extends string, TEntity, TOperatorsMap$1 extends ChimeraOperatorMap, TMeta = any> = Required<ChimeraQueryEntityConfig<TEntityName$1, TEntity, TOperatorsMap$1, TMeta>> & {
|
|
157
|
+
idGetter: ChimeraIdGetterFunction<TEntityName$1, TEntity>;
|
|
158
|
+
};
|
|
159
|
+
//#endregion
|
|
160
|
+
//#region ../../src/query/constants.d.ts
|
|
161
|
+
declare const ChimeraGetParamsSym: unique symbol;
|
|
162
|
+
declare const ChimeraSetOneSym: unique symbol;
|
|
163
|
+
declare const ChimeraSetManySym: unique symbol;
|
|
164
|
+
declare const ChimeraDeleteOneSym: unique symbol;
|
|
165
|
+
declare const ChimeraDeleteManySym: unique symbol;
|
|
166
|
+
declare const ChimeraUpdateMixedSym: unique symbol;
|
|
167
|
+
//#endregion
|
|
168
|
+
//#region ../../src/query/ChimeraCollectionQuery.d.ts
|
|
169
|
+
type ChimeraCollectionQueryEventMap<TEntityName$1 extends string, TItem$1 extends object, TOperatorsMap$1 extends ChimeraOperatorMap> = {
|
|
170
|
+
/** Once the query is initialized */
|
|
171
|
+
initialized: {
|
|
172
|
+
instance: ChimeraCollectionQuery<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
173
|
+
};
|
|
174
|
+
/** Once the query data is ready (will be followed by 'update') */
|
|
175
|
+
ready: {
|
|
176
|
+
instance: ChimeraCollectionQuery<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
177
|
+
};
|
|
178
|
+
/** Each time the query was updated */
|
|
179
|
+
updated: {
|
|
180
|
+
instance: ChimeraCollectionQuery<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
181
|
+
items: TItem$1[];
|
|
182
|
+
oldItems: TItem$1[] | null;
|
|
183
|
+
};
|
|
184
|
+
/** Each time the query was an initiator of update */
|
|
185
|
+
selfUpdated: {
|
|
186
|
+
instance: ChimeraCollectionQuery<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
187
|
+
items: TItem$1[];
|
|
188
|
+
oldItems: TItem$1[] | null;
|
|
189
|
+
};
|
|
190
|
+
/** Each time item created */
|
|
191
|
+
selfItemCreated: {
|
|
192
|
+
instance: ChimeraCollectionQuery<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
193
|
+
item: TItem$1;
|
|
194
|
+
};
|
|
195
|
+
/** Each time item added */
|
|
196
|
+
itemAdded: {
|
|
197
|
+
instance: ChimeraCollectionQuery<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
198
|
+
item: TItem$1;
|
|
199
|
+
};
|
|
200
|
+
/** Each time item updated */
|
|
201
|
+
itemUpdated: {
|
|
202
|
+
instance: ChimeraCollectionQuery<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
203
|
+
oldItem: TItem$1;
|
|
204
|
+
newItem: TItem$1;
|
|
205
|
+
};
|
|
206
|
+
/** Each time the query was an initiator of an item update */
|
|
207
|
+
selfItemUpdated: {
|
|
208
|
+
instance: ChimeraCollectionQuery<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
209
|
+
item: TItem$1;
|
|
210
|
+
};
|
|
211
|
+
/** Each time item deleted */
|
|
212
|
+
itemDeleted: {
|
|
213
|
+
instance: ChimeraCollectionQuery<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
214
|
+
item: TItem$1;
|
|
215
|
+
};
|
|
216
|
+
/** Each time the query was an initiator of item deletion */
|
|
217
|
+
selfItemDeleted: {
|
|
218
|
+
instance: ChimeraCollectionQuery<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
219
|
+
id: ChimeraEntityId;
|
|
220
|
+
};
|
|
221
|
+
/** Each time the fetcher produces an error */
|
|
222
|
+
error: {
|
|
223
|
+
instance: ChimeraCollectionQuery<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
224
|
+
error: unknown;
|
|
225
|
+
};
|
|
226
|
+
};
|
|
227
|
+
declare class ChimeraCollectionQuery<TEntityName$1 extends string, TItem$1 extends object, TOperatorsMap$1 extends ChimeraOperatorMap> extends ChimeraEventEmitter<ChimeraCollectionQueryEventMap<TEntityName$1, TItem$1, TOperatorsMap$1>> implements ChimeraQueryFetchingStatable {
|
|
228
|
+
#private;
|
|
229
|
+
emit(): never;
|
|
230
|
+
constructor(config: QueryEntityConfig<TEntityName$1, TItem$1, TOperatorsMap$1>, debugConfig: ChimeraDebugConfig, params: ChimeraQueryEntityCollectionFetcherParams<TItem$1, any>, existingItems: Iterable<TItem$1> | null, order: ChimeraOrderByComparator<TItem$1>, filter: ChimeraFilterChecker<TItem$1>, alreadyValid: boolean);
|
|
231
|
+
get name(): TEntityName$1;
|
|
232
|
+
get [ChimeraGetParamsSym](): ChimeraQueryEntityCollectionFetcherParams<TItem$1, TOperatorsMap$1>;
|
|
233
|
+
[ChimeraSetOneSym](item: TItem$1): void;
|
|
234
|
+
[ChimeraDeleteOneSym](id: ChimeraEntityId): void;
|
|
235
|
+
[ChimeraSetManySym](items: Iterable<TItem$1>): void;
|
|
236
|
+
[ChimeraDeleteManySym](ids: Iterable<ChimeraEntityId>): void;
|
|
237
|
+
[ChimeraUpdateMixedSym](toAdd: Iterable<TItem$1>, toDelete: Iterable<ChimeraEntityId>): void;
|
|
238
|
+
get state(): ChimeraQueryFetchingState;
|
|
239
|
+
get inProgress(): boolean;
|
|
240
|
+
get ready(): boolean;
|
|
241
|
+
get lastError(): unknown;
|
|
242
|
+
/**
|
|
243
|
+
* Wait for the current progress process to complete (both success or error)
|
|
244
|
+
*/
|
|
245
|
+
get progress(): Promise<void>;
|
|
246
|
+
/**
|
|
247
|
+
* Wait for the current progress process to complete, throw an error if it fails
|
|
248
|
+
*/
|
|
249
|
+
get result(): Promise<void>;
|
|
250
|
+
/** Return an item if it is ready, throw error otherwise */
|
|
251
|
+
getById(id: ChimeraEntityId): TItem$1 | undefined;
|
|
252
|
+
/** Return mutable ref to item by idx if it is ready, throw error otherwise */
|
|
253
|
+
mutableAt(idx: number): TItem$1 | undefined;
|
|
254
|
+
/** Return mutable ref to item by [id] if it is ready, throw error otherwise */
|
|
255
|
+
mutableGetById(id: ChimeraEntityId): TItem$1 | undefined;
|
|
256
|
+
/**
|
|
257
|
+
* Trigger refetch, return existing refetch promise if already running
|
|
258
|
+
* @param force If true cancels any running process and starts a new one
|
|
259
|
+
* @throws {ChimeraQueryAlreadyRunningError} If deleting or updating already in progress
|
|
260
|
+
*/
|
|
261
|
+
refetch(force?: boolean): Promise<ChimeraQueryCollectionFetcherResponse<TItem$1>>;
|
|
262
|
+
/**
|
|
263
|
+
* Update item using updated copy
|
|
264
|
+
* @param newItem new item to update
|
|
265
|
+
*/
|
|
266
|
+
update(newItem: TItem$1): Promise<ChimeraQueryItemFetcherResponse<TItem$1>>;
|
|
267
|
+
/**
|
|
268
|
+
* Update item using updated copy
|
|
269
|
+
* @param newItems array of items to update
|
|
270
|
+
*/
|
|
271
|
+
batchedUpdate(newItems: Iterable<TItem$1>): Promise<ChimeraQueryCollectionFetcherResponse<TItem$1>>;
|
|
272
|
+
/**
|
|
273
|
+
* Delete item using its [id]
|
|
274
|
+
* @param id id of item to delete
|
|
275
|
+
*/
|
|
276
|
+
delete(id: ChimeraEntityId): Promise<ChimeraQueryItemDeleteResponse>;
|
|
277
|
+
/**
|
|
278
|
+
* Delete a list of items by their [id]s
|
|
279
|
+
* @param ids array of items to delete
|
|
280
|
+
*/
|
|
281
|
+
batchedDelete(ids: Iterable<ChimeraEntityId>): Promise<ChimeraQueryBatchedDeleteResponse>;
|
|
282
|
+
/**
|
|
283
|
+
* Create new item using partial data
|
|
284
|
+
* @param item partial item data to create new item
|
|
285
|
+
*/
|
|
286
|
+
create(item: DeepPartial<TItem$1>): Promise<ChimeraQueryItemFetcherResponse<TItem$1>>;
|
|
287
|
+
/**
|
|
288
|
+
* Create multiple items using partial data
|
|
289
|
+
* @param items array of partial item data to create new items
|
|
290
|
+
*/
|
|
291
|
+
batchedCreate(items: Iterable<DeepPartial<TItem$1>>): Promise<ChimeraQueryCollectionFetcherResponse<TItem$1>>;
|
|
292
|
+
/**
|
|
293
|
+
* Standard Array API without mutations
|
|
294
|
+
*/
|
|
295
|
+
get length(): number;
|
|
296
|
+
[Symbol.iterator](): Iterator<TItem$1>;
|
|
297
|
+
at(idx: number): TItem$1 | undefined;
|
|
298
|
+
entries(): ArrayIterator<[number, TItem$1]>;
|
|
299
|
+
values(): ArrayIterator<TItem$1>;
|
|
300
|
+
keys(): ArrayIterator<number>;
|
|
301
|
+
every<S extends TItem$1>(predicate: (value: TItem$1, index: number, query: this) => value is S): this is ChimeraCollectionQuery<TEntityName$1, S, TOperatorsMap$1>;
|
|
302
|
+
every(predicate: (value: TItem$1, index: number, query: this) => unknown): boolean;
|
|
303
|
+
some(predicate: (value: TItem$1, index: number, query: this) => unknown): boolean;
|
|
304
|
+
filter<S extends TItem$1>(predicate: (value: TItem$1, index: number, query: this) => value is S): S[];
|
|
305
|
+
filter(predicate: (value: TItem$1, index: number, query: this) => boolean): TItem$1[];
|
|
306
|
+
find<S extends TItem$1>(predicate: (value: TItem$1, index: number, query: this) => value is S): S | undefined;
|
|
307
|
+
find(predicate: (value: TItem$1, index: number, query: this) => unknown): TItem$1 | undefined;
|
|
308
|
+
findIndex<S extends TItem$1>(predicate: (value: TItem$1, index: number, query: this) => value is S): number;
|
|
309
|
+
findIndex(predicate: (value: TItem$1, index: number, query: this) => boolean): number;
|
|
310
|
+
findLast<S extends TItem$1>(predicate: (value: TItem$1, index: number, query: this) => value is S): S | undefined;
|
|
311
|
+
findLast(predicate: (value: TItem$1, index: number, query: this) => boolean): TItem$1 | undefined;
|
|
312
|
+
findLastIndex<S extends TItem$1>(predicate: (value: TItem$1, index: number, query: this) => value is S): number;
|
|
313
|
+
findLastIndex(predicate: (value: TItem$1, index: number, query: this) => boolean): number;
|
|
314
|
+
forEach(cb: (value: TItem$1, index: number, query: this) => void): void;
|
|
315
|
+
includes(item: TItem$1): boolean;
|
|
316
|
+
indexOf(item: TItem$1): number;
|
|
317
|
+
map<U>(cb: (value: TItem$1, index: number, query: this) => U): U[];
|
|
318
|
+
reduce<U>(cb: (previousValue: U, currentValue: TItem$1, currentIndex: number, query: this) => U, initialValue?: U): U | undefined;
|
|
319
|
+
reduceRight<U>(cb: (previousValue: U, currentValue: TItem$1, currentIndex: number, query: this) => U, initialValue?: U): U | undefined;
|
|
320
|
+
slice(start?: number, end?: number): TItem$1[];
|
|
321
|
+
toSorted(compareFn?: (a: TItem$1, b: TItem$1) => number): TItem$1[];
|
|
322
|
+
toSpliced(start: number, deleteCount: number, ...items: TItem$1[]): TItem$1[];
|
|
323
|
+
toJSON(): TItem$1[];
|
|
324
|
+
toString(): string;
|
|
325
|
+
}
|
|
326
|
+
type AnyChimeraCollectionQuery = ChimeraCollectionQuery<any, any, any>;
|
|
327
|
+
type ExtractedChimeraCollectionQuery<TCollectionQuery extends AnyChimeraCollectionQuery> = TCollectionQuery extends ChimeraCollectionQuery<infer TEntityName, infer TItem, infer TOperatorsMap> ? {
|
|
328
|
+
entityName: TEntityName;
|
|
329
|
+
item: TItem;
|
|
330
|
+
operatorsMap: TOperatorsMap;
|
|
331
|
+
} : never;
|
|
332
|
+
type ChimeraCollectionQueryName<TCollectionQuery extends AnyChimeraCollectionQuery> = ExtractedChimeraCollectionQuery<TCollectionQuery>["entityName"];
|
|
333
|
+
type ChimeraCollectionQueryEntity<TCollectionQuery extends AnyChimeraCollectionQuery> = ExtractedChimeraCollectionQuery<TCollectionQuery>["item"];
|
|
334
|
+
type ChimeraCollectionQueryOperatorsMap<TCollectionQuery extends AnyChimeraCollectionQuery> = ExtractedChimeraCollectionQuery<TCollectionQuery>["operatorsMap"];
|
|
335
|
+
//#endregion
|
|
336
|
+
//#region ../../src/shared/errors.d.ts
|
|
337
|
+
declare class ChimeraError extends Error {}
|
|
338
|
+
declare class ChimeraInternalError extends ChimeraError {
|
|
339
|
+
constructor(message: string, options?: ErrorOptions);
|
|
340
|
+
}
|
|
341
|
+
//#endregion
|
|
342
|
+
//#region ../../src/filter/errors.d.ts
|
|
343
|
+
declare class ChimeraFilterError extends ChimeraError {}
|
|
344
|
+
declare class ChimeraFilterOperatorError extends ChimeraFilterError {
|
|
345
|
+
constructor(operator: string, message: string);
|
|
346
|
+
}
|
|
347
|
+
declare class ChimeraFilterOperatorNotFoundError extends ChimeraFilterOperatorError {
|
|
348
|
+
constructor(operator: string);
|
|
349
|
+
}
|
|
350
|
+
//#endregion
|
|
351
|
+
//#region ../../src/filter/filter.d.ts
|
|
352
|
+
declare const chimeraCreateOperator: <Entity, OperatorsMap extends ChimeraOperatorMap, Op extends keyof OperatorsMap & string>(op: Op, value: ChimeraPropertyGetter<Entity, Parameters<OperatorsMap[Op]>[0]> | (KeysOfType<Entity, Parameters<OperatorsMap[Op]>[0]> & string), test: Parameters<OperatorsMap[Op]>[1]) => ChimeraFilterOperatorDescriptor<OperatorsMap, Entity, Op>;
|
|
353
|
+
declare const chimeraCreateConjunction: <Entity, OperatorsMap extends ChimeraOperatorMap, Conj extends Exclude<ChimeraConjunctionType, "not"> = Exclude<ChimeraConjunctionType, "not">>(kind: Conj, operations: ChimeraConjunctionOperationDescriptor<OperatorsMap, Entity>[]) => ChimeraConjunctionDescriptor<OperatorsMap, Entity, Conj>;
|
|
354
|
+
declare const chimeraCreateNot: <Entity, OperatorsMap extends ChimeraOperatorMap>(operation: ChimeraConjunctionOperationDescriptor<OperatorsMap, Entity>) => ChimeraConjunctionDescriptor<OperatorsMap, Entity, "not">;
|
|
355
|
+
declare function chimeraIsConjunction(item: ChimeraConjunctionOperationDescriptor<ChimeraOperatorMap, any>): item is ChimeraConjunctionDescriptor<ChimeraOperatorMap, any>;
|
|
356
|
+
declare function chimeraIsConjunction(item: ChimeraSimplifiedConjunctionOperation<ChimeraOperatorMap>): item is SimplifiedConjunction<ChimeraOperatorMap>;
|
|
357
|
+
declare function chimeraIsOperator(item: ChimeraConjunctionOperationDescriptor<ChimeraOperatorMap, any>): item is ChimeraFilterOperatorDescriptor<ChimeraOperatorMap, any>;
|
|
358
|
+
declare function chimeraIsOperator(item: ChimeraSimplifiedConjunctionOperation<ChimeraOperatorMap>): item is ChimeraSimplifiedOperator<ChimeraOperatorMap>;
|
|
359
|
+
//#endregion
|
|
360
|
+
//#region ../../src/query/ChimeraItemQuery.d.ts
|
|
361
|
+
type ChimeraItemQueryEventMap<TEntityName$1 extends string, TItem$1 extends object> = {
|
|
362
|
+
/** Once the query is initialized */
|
|
363
|
+
initialized: [{
|
|
364
|
+
instance: ChimeraItemQuery<TEntityName$1, TItem$1>;
|
|
365
|
+
}];
|
|
366
|
+
/** Once the query data was created */
|
|
367
|
+
selfCreated: [{
|
|
368
|
+
instance: ChimeraItemQuery<TEntityName$1, TItem$1>;
|
|
369
|
+
item: TItem$1;
|
|
370
|
+
}];
|
|
371
|
+
/** Once the query data is ready (will be followed by 'update') */
|
|
372
|
+
ready: [{
|
|
373
|
+
instance: ChimeraItemQuery<TEntityName$1, TItem$1>;
|
|
374
|
+
}];
|
|
375
|
+
/** Each time the query was updated */
|
|
376
|
+
updated: [{
|
|
377
|
+
instance: ChimeraItemQuery<TEntityName$1, TItem$1>;
|
|
378
|
+
item: TItem$1;
|
|
379
|
+
oldItem: TItem$1 | null;
|
|
380
|
+
}];
|
|
381
|
+
/** Each time the query was an initiator of update */
|
|
382
|
+
selfUpdated: [{
|
|
383
|
+
instance: ChimeraItemQuery<TEntityName$1, TItem$1>;
|
|
384
|
+
item: TItem$1;
|
|
385
|
+
oldItem: TItem$1 | null;
|
|
386
|
+
}];
|
|
387
|
+
/** Once the query data was deleted */
|
|
388
|
+
deleted: [{
|
|
389
|
+
instance: ChimeraItemQuery<TEntityName$1, TItem$1>;
|
|
390
|
+
id: ChimeraEntityId;
|
|
391
|
+
}];
|
|
392
|
+
/** Once the query was an initiator of deletion */
|
|
393
|
+
selfDeleted: [{
|
|
394
|
+
instance: ChimeraItemQuery<TEntityName$1, TItem$1>;
|
|
395
|
+
id: ChimeraEntityId;
|
|
396
|
+
}];
|
|
397
|
+
/** Each time the fetcher produces an error */
|
|
398
|
+
error: [{
|
|
399
|
+
instance: ChimeraItemQuery<TEntityName$1, TItem$1>;
|
|
400
|
+
error: unknown;
|
|
401
|
+
}];
|
|
402
|
+
};
|
|
403
|
+
declare class ChimeraItemQuery<TEntityName$1 extends string, TItem$1 extends object> extends ChimeraEventEmitter<ChimeraItemQueryEventMap<TEntityName$1, TItem$1>> implements ChimeraQueryFetchingStatable {
|
|
404
|
+
#private;
|
|
405
|
+
emit(): never;
|
|
406
|
+
constructor(config: QueryEntityConfig<TEntityName$1, TItem$1, ChimeraOperatorMap>, debugConfig: ChimeraDebugConfig, params: ChimeraQueryEntityItemFetcherParams<TItem$1>, existingItem: TItem$1 | null, toCreateItem: DeepPartial<TItem$1> | null);
|
|
407
|
+
get name(): TEntityName$1;
|
|
408
|
+
get [ChimeraGetParamsSym](): ChimeraQueryEntityItemFetcherParams<TItem$1>;
|
|
409
|
+
[ChimeraSetOneSym](item: TItem$1): void;
|
|
410
|
+
[ChimeraDeleteOneSym](id: ChimeraEntityId): void;
|
|
411
|
+
get state(): ChimeraQueryFetchingState;
|
|
412
|
+
get inProgress(): boolean;
|
|
413
|
+
get ready(): boolean;
|
|
414
|
+
get lastError(): unknown;
|
|
415
|
+
get id(): ChimeraEntityId;
|
|
416
|
+
/** Return an item if it is ready, throw error otherwise */
|
|
417
|
+
get data(): TItem$1;
|
|
418
|
+
/** Get ref for an item that can be changed as a regular object. To send changes to updater, use <commit> method */
|
|
419
|
+
get mutable(): TItem$1;
|
|
420
|
+
get promise(): Promise<unknown> | null;
|
|
421
|
+
/**
|
|
422
|
+
* Wait for the current progress process to complete (both success or error)
|
|
423
|
+
*/
|
|
424
|
+
get progress(): Promise<void>;
|
|
425
|
+
/**
|
|
426
|
+
* Wait for the current progress process to complete, throw an error if it fails
|
|
427
|
+
*/
|
|
428
|
+
get result(): Promise<void>;
|
|
429
|
+
/**
|
|
430
|
+
* Trigger refetch, return existing refetch promise if already running
|
|
431
|
+
* @param force If true cancels any running process and starts a new one
|
|
432
|
+
* @throws {ChimeraQueryAlreadyRunningError} If deleting or updating already in progress
|
|
433
|
+
*/
|
|
434
|
+
refetch(force?: boolean): Promise<ChimeraQueryItemFetcherResponse<TItem$1>>;
|
|
435
|
+
/**
|
|
436
|
+
* Update item using updated copy, a running update process will be cancelled
|
|
437
|
+
* @param newItem new item to replace existing
|
|
438
|
+
* @param force if true cancels any running process including fetch and delete
|
|
439
|
+
* @throws {ChimeraQueryAlreadyRunningError} If deleting or updating already in progress
|
|
440
|
+
*/
|
|
441
|
+
update(newItem: TItem$1, force?: boolean): Promise<ChimeraQueryItemFetcherResponse<TItem$1>>;
|
|
442
|
+
/**
|
|
443
|
+
* Update item using function with draft item as argument
|
|
444
|
+
* that can be used to patch item in place or return a patched value,
|
|
445
|
+
* a running update process will be cancelled
|
|
446
|
+
* @param mutator mutator function
|
|
447
|
+
* @param force if true cancels any running process including fetch and delete
|
|
448
|
+
* @throws {ChimeraQueryAlreadyRunningError} If deleting or updating already in progress
|
|
449
|
+
*/
|
|
450
|
+
mutate(mutator: (draft: TItem$1) => TItem$1, force?: boolean): Promise<ChimeraQueryItemFetcherResponse<TItem$1>>;
|
|
451
|
+
/**
|
|
452
|
+
* Commit updated value from mutable ref, a running update process will be canceled
|
|
453
|
+
* @param force if true cancels any running process including fetch and delete
|
|
454
|
+
* @throws {ChimeraQueryAlreadyRunningError} If deleting or updating already in progress
|
|
455
|
+
*/
|
|
456
|
+
commit(force?: boolean): Promise<ChimeraQueryItemFetcherResponse<TItem$1>>;
|
|
457
|
+
/**
|
|
458
|
+
* Request to delete the value.
|
|
459
|
+
* Local copy will still be available if it was present.
|
|
460
|
+
* A running delete process will be canceled
|
|
461
|
+
* @param force if true cancels any running process including fetch and update
|
|
462
|
+
* @throws {ChimeraQueryAlreadyRunningError} If deleting or updating already in progress
|
|
463
|
+
*/
|
|
464
|
+
delete(force?: boolean): Promise<ChimeraQueryItemDeleteResponse>;
|
|
465
|
+
toJSON(): TItem$1;
|
|
466
|
+
toString(): string;
|
|
467
|
+
}
|
|
468
|
+
type AnyChimeraItemQuery = ChimeraItemQuery<any, any>;
|
|
469
|
+
type ExtractedChimeraItemQuery<TItemQuery> = TItemQuery extends ChimeraItemQuery<infer TEntityName, infer TItem> ? {
|
|
470
|
+
entityName: TEntityName;
|
|
471
|
+
item: TItem;
|
|
472
|
+
} : never;
|
|
473
|
+
type ChimeraItemQueryName = ExtractedChimeraItemQuery<AnyChimeraItemQuery>["entityName"];
|
|
474
|
+
type ChimeraItemQueryEntity = ExtractedChimeraItemQuery<AnyChimeraItemQuery>["item"];
|
|
475
|
+
//#endregion
|
|
476
|
+
//#region ../../src/entity-store/types.d.ts
|
|
477
|
+
type ChimeraCollectionParams<OperatorsMap extends ChimeraOperatorMap, Entity, Meta = any> = {
|
|
478
|
+
filter?: ChimeraFilterDescriptor<OperatorsMap, Entity> | null;
|
|
479
|
+
order?: ChimeraOrderPriority<Entity> | null;
|
|
480
|
+
meta?: Meta;
|
|
481
|
+
};
|
|
482
|
+
//#endregion
|
|
483
|
+
//#region ../../src/entity-store/ChimeraEntityStore.d.ts
|
|
484
|
+
type ChimeraEntityStoreEventMap<TEntityName$1 extends string, TItem$1 extends object, TOperatorsMap$1 extends ChimeraOperatorMap> = {
|
|
485
|
+
/** Once the repository is initialized */
|
|
486
|
+
initialized: {
|
|
487
|
+
instance: ChimeraEntityStore<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
488
|
+
};
|
|
489
|
+
/** Each time item added */
|
|
490
|
+
itemAdded: [{
|
|
491
|
+
instance: ChimeraEntityStore<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
492
|
+
item: TItem$1;
|
|
493
|
+
}];
|
|
494
|
+
/** Each time many items updated */
|
|
495
|
+
updated: [{
|
|
496
|
+
instance: ChimeraEntityStore<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
497
|
+
items: TItem$1[];
|
|
498
|
+
}];
|
|
499
|
+
/** Each time item updated */
|
|
500
|
+
itemUpdated: [{
|
|
501
|
+
instance: ChimeraEntityStore<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
502
|
+
item: TItem$1;
|
|
503
|
+
oldItem: TItem$1 | null;
|
|
504
|
+
}];
|
|
505
|
+
/** Each time many items deleted */
|
|
506
|
+
deleted: [{
|
|
507
|
+
instance: ChimeraEntityStore<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
508
|
+
ids: ChimeraEntityId[];
|
|
509
|
+
}];
|
|
510
|
+
/** Each time item deleted */
|
|
511
|
+
itemDeleted: [{
|
|
512
|
+
instance: ChimeraEntityStore<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
513
|
+
oldItem: TItem$1 | null;
|
|
514
|
+
}];
|
|
515
|
+
};
|
|
516
|
+
declare class ChimeraEntityStore<TEntityName$1 extends string, TItem$1 extends object, TOperatorsMap$1 extends ChimeraOperatorMap> extends ChimeraEventEmitter<ChimeraEntityStoreEventMap<TEntityName$1, TItem$1, TOperatorsMap$1>> {
|
|
517
|
+
#private;
|
|
518
|
+
emit(): never;
|
|
519
|
+
constructor(config: QueryEntityConfig<TEntityName$1, TItem$1, TOperatorsMap$1>, filterConfig: Required<ChimeraFilterConfig<TOperatorsMap$1>>, orderConfig: Required<ChimeraOrderConfig>, debugConfig: Required<ChimeraDebugConfig>);
|
|
520
|
+
get name(): TEntityName$1;
|
|
521
|
+
updateOne(TItem: TItem$1): void;
|
|
522
|
+
deleteOne(id: ChimeraEntityId): void;
|
|
523
|
+
updateMany(items: TItem$1[]): void;
|
|
524
|
+
deleteMany(ids: ChimeraEntityId[]): void;
|
|
525
|
+
updateMixed(toAdd: TItem$1[], toDelete: ChimeraEntityId[]): void;
|
|
526
|
+
createItem(TItem: DeepPartial<TItem$1>, meta?: any): ChimeraItemQuery<TEntityName$1, TItem$1>;
|
|
527
|
+
getItem(id: ChimeraEntityId, meta?: any): ChimeraItemQuery<TEntityName$1, TItem$1>;
|
|
528
|
+
getCollection(params: ChimeraCollectionParams<TOperatorsMap$1, TItem$1>): ChimeraCollectionQuery<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
529
|
+
}
|
|
530
|
+
/**
|
|
531
|
+
* Creates a ChimeraEntityStore instance with populated default values
|
|
532
|
+
* @param entityConfig Entity-specific configuration (idGetter is required)
|
|
533
|
+
* @param filterConfig Optional filter configuration (defaults to chimeraDefaultFilterConfig)
|
|
534
|
+
* @param orderConfig Optional order configuration (defaults to chimeraDefaultOrderConfig)
|
|
535
|
+
* @param debugConfig Optional debug configuration (defaults to chimeraDefaultDebugConfig)
|
|
536
|
+
* @returns ChimeraEntityStore instance
|
|
537
|
+
*/
|
|
538
|
+
declare function createChimeraEntityStore<TEntityName$1 extends string, TItem$1 extends object, TOperatorsMap$1 extends ChimeraOperatorMap>(entityConfig: ChimeraQueryEntityConfig<TEntityName$1, TItem$1, TOperatorsMap$1>, filterConfig: Required<ChimeraFilterConfig<TOperatorsMap$1>>, orderConfig: Required<ChimeraOrderConfig>, debugConfig: Required<ChimeraDebugConfig>): ChimeraEntityStore<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
539
|
+
declare function createChimeraEntityStore<TEntityName$1 extends string, TItem$1 extends object, TOperatorsMap$1 extends ChimeraOperatorMap>(entityConfig: ChimeraQueryEntityConfig<TEntityName$1, TItem$1, TOperatorsMap$1>, filterConfig: Required<ChimeraFilterConfig<TOperatorsMap$1>>, orderConfig: Required<ChimeraOrderConfig>): ChimeraEntityStore<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
540
|
+
declare function createChimeraEntityStore<TEntityName$1 extends string, TItem$1 extends object, TOperatorsMap$1 extends ChimeraOperatorMap>(entityConfig: ChimeraQueryEntityConfig<TEntityName$1, TItem$1, TOperatorsMap$1>, filterConfig: Required<ChimeraFilterConfig<TOperatorsMap$1>>): ChimeraEntityStore<TEntityName$1, TItem$1, TOperatorsMap$1>;
|
|
541
|
+
declare function createChimeraEntityStore<TEntityName$1 extends string, TItem$1 extends object>(entityConfig: ChimeraQueryEntityConfig<TEntityName$1, TItem$1, typeof chimeraDefaultFilterConfig.operators>): ChimeraEntityStore<TEntityName$1, TItem$1, typeof chimeraDefaultFilterConfig.operators>;
|
|
542
|
+
type AnyChimeraEntityStore = ChimeraEntityStore<any, any, any>;
|
|
543
|
+
type ExtractedChimeraEntityStore<TStore extends AnyChimeraEntityStore> = TStore extends ChimeraEntityStore<infer TEntityName, infer TItem, infer TOperatorsMap> ? {
|
|
544
|
+
entityName: TEntityName;
|
|
545
|
+
item: TItem;
|
|
546
|
+
operatorsMap: TOperatorsMap;
|
|
547
|
+
} : never;
|
|
548
|
+
type ChimeraEntityStoreName<TStore extends AnyChimeraEntityStore> = ExtractedChimeraEntityStore<TStore>["entityName"];
|
|
549
|
+
type ChimeraEntityStoreEntity<TStore extends AnyChimeraEntityStore> = ExtractedChimeraEntityStore<TStore>["item"];
|
|
550
|
+
type ChimeraEntityStoreOperatorsMap<TStore extends AnyChimeraEntityStore> = ExtractedChimeraEntityStore<TStore>["operatorsMap"];
|
|
551
|
+
//#endregion
|
|
552
|
+
//#region ../../src/order/errors.d.ts
|
|
553
|
+
declare class ChimeraOrderError extends ChimeraError {}
|
|
554
|
+
declare class ChimeraOrderTypeError extends ChimeraOrderError {}
|
|
555
|
+
declare class ChimeraOrderTypeComparisonError extends ChimeraOrderTypeError {
|
|
556
|
+
constructor(a: unknown, b: unknown);
|
|
557
|
+
}
|
|
558
|
+
//#endregion
|
|
559
|
+
//#region ../../src/order/order.d.ts
|
|
560
|
+
declare const chimeraCreateOrderBy: <Entity>(key: ChimeraPropertyGetter<Entity> | (keyof Entity & string), desc?: boolean, nulls?: ChimeraOrderNulls) => ChimeraOrderDescriptor<Entity>;
|
|
561
|
+
//#endregion
|
|
562
|
+
//#region ../../src/query/errors.d.ts
|
|
563
|
+
declare class ChimeraQueryError extends ChimeraError {
|
|
564
|
+
readonly entityName: string;
|
|
565
|
+
constructor(entityName: string, message: string, options?: ErrorOptions);
|
|
566
|
+
}
|
|
567
|
+
declare class ChimeraQueryIdMismatchError extends ChimeraQueryError {
|
|
568
|
+
readonly old: ChimeraEntityId;
|
|
569
|
+
readonly new: ChimeraEntityId;
|
|
570
|
+
constructor(entityName: string, oldId: ChimeraEntityId, newId: ChimeraEntityId);
|
|
571
|
+
}
|
|
572
|
+
declare class ChimeraQueryNotSpecifiedError extends ChimeraQueryError {
|
|
573
|
+
readonly methodName: string;
|
|
574
|
+
constructor(entityName: string, methodName: string);
|
|
575
|
+
}
|
|
576
|
+
declare class ChimeraQueryTrustError extends ChimeraQueryError {
|
|
577
|
+
constructor(entityName: string, description: string);
|
|
578
|
+
}
|
|
579
|
+
declare class ChimeraQueryTrustIdMismatchError extends ChimeraQueryTrustError {
|
|
580
|
+
readonly old: ChimeraEntityId;
|
|
581
|
+
readonly new: ChimeraEntityId;
|
|
582
|
+
constructor(entityName: string, oldId: ChimeraEntityId, newId: ChimeraEntityId);
|
|
583
|
+
}
|
|
584
|
+
declare class ChimeraQueryTrustFetchedCollectionError extends ChimeraQueryTrustError {
|
|
585
|
+
readonly old: unknown[];
|
|
586
|
+
readonly new: unknown[];
|
|
587
|
+
constructor(entityName: string, input: unknown[], output: unknown[]);
|
|
588
|
+
}
|
|
589
|
+
//#endregion
|
|
590
|
+
//#region ../../src/shared/ChimeraWeakValueMap/ChimeraWeakValueMap.d.ts
|
|
591
|
+
type ChimeraWeakValueMapEventMap<K$1, V extends object> = {
|
|
592
|
+
/** An item was added to the map */
|
|
593
|
+
set: {
|
|
594
|
+
key: K$1;
|
|
595
|
+
value: V;
|
|
596
|
+
instance: ChimeraWeakValueMap<K$1, V>;
|
|
597
|
+
};
|
|
598
|
+
/** An item was removed from the map */
|
|
599
|
+
delete: {
|
|
600
|
+
key: K$1;
|
|
601
|
+
value: V;
|
|
602
|
+
instance: ChimeraWeakValueMap<K$1, V>;
|
|
603
|
+
};
|
|
604
|
+
/** Weak reference was automatically collected */
|
|
605
|
+
finalize: {
|
|
606
|
+
key: K$1;
|
|
607
|
+
instance: ChimeraWeakValueMap<K$1, V>;
|
|
608
|
+
};
|
|
609
|
+
/** All items were removed from the map */
|
|
610
|
+
clear: {
|
|
611
|
+
instance: ChimeraWeakValueMap<K$1, V>;
|
|
612
|
+
};
|
|
613
|
+
};
|
|
614
|
+
declare class ChimeraWeakValueMap<K$1, V extends object> extends ChimeraEventEmitter<ChimeraWeakValueMapEventMap<K$1, V>> {
|
|
615
|
+
#private;
|
|
616
|
+
emit(): never;
|
|
617
|
+
constructor(values?: readonly (readonly [K$1, V])[] | null);
|
|
618
|
+
set(key: K$1, value: V): this;
|
|
619
|
+
delete(key: K$1): boolean;
|
|
620
|
+
has(key: K$1): boolean;
|
|
621
|
+
forEach(callbackFn: (value: V, key: K$1, map: ChimeraWeakValueMap<K$1, V>) => void, thisArg?: any): void;
|
|
622
|
+
get(key: K$1): V | undefined;
|
|
623
|
+
get size(): number;
|
|
624
|
+
entries(): IterableIterator<[K$1, V]>;
|
|
625
|
+
keys(): IterableIterator<K$1>;
|
|
626
|
+
values(): IterableIterator<V>;
|
|
627
|
+
[Symbol.iterator](): IterableIterator<[K$1, V]>;
|
|
628
|
+
clear(): void;
|
|
629
|
+
cleanup(): void;
|
|
630
|
+
get rawSize(): number;
|
|
631
|
+
}
|
|
632
|
+
//#endregion
|
|
633
|
+
export { AnyChimeraCollectionQuery, AnyChimeraEntityStore, AnyChimeraEventEmitter, AnyChimeraItemQuery, ChimeraCollectionParams, ChimeraCollectionQuery, ChimeraCollectionQueryEntity, ChimeraCollectionQueryEventMap, ChimeraCollectionQueryName, ChimeraCollectionQueryOperatorsMap, ChimeraConjunctionDescriptor, ChimeraConjunctionOperationDescriptor, ChimeraConjunctionType, ChimeraEntityGetter, ChimeraEntityId, ChimeraEntityStore, ChimeraEntityStoreEntity, ChimeraEntityStoreEventMap, ChimeraEntityStoreName, ChimeraEntityStoreOperatorsMap, ChimeraError, ChimeraEventEmitter, ChimeraEventEmitterEventNames, ChimeraEventEmitterEvents, ChimeraFilterChecker, ChimeraFilterConfig, ChimeraFilterDescriptor, ChimeraFilterError, ChimeraFilterOperatorDescriptor, ChimeraFilterOperatorError, ChimeraFilterOperatorNotFoundError, ChimeraInternalError, ChimeraItemQuery, ChimeraItemQueryEntity, ChimeraItemQueryEventMap, ChimeraItemQueryName, ChimeraKeyFromFilterGetter, ChimeraKeyFromOperatorGetter, ChimeraKeyFromOrderGetter, ChimeraOperatorFunction, ChimeraOperatorMap, ChimeraOrderByComparator, ChimeraOrderConfig, ChimeraOrderDescriptor, ChimeraOrderError, ChimeraOrderNulls, ChimeraOrderPriority, ChimeraOrderTypeComparisonError, ChimeraOrderTypeError, ChimeraPrimitiveComparator, ChimeraPropertyGetter, ChimeraQueryBatchedDeleteResponse, ChimeraQueryCollectionFetcherResponse, ChimeraQueryDeletionResult, ChimeraQueryEntityBatchedCreator, ChimeraQueryEntityBatchedDeleter, ChimeraQueryEntityBatchedUpdater, ChimeraQueryEntityCollectionFetcher, ChimeraQueryEntityCollectionFetcherParams, ChimeraQueryEntityConfig, ChimeraQueryEntityFetcherRequestParams, ChimeraQueryEntityIdGetter, ChimeraQueryEntityItemCreator, ChimeraQueryEntityItemDeleter, ChimeraQueryEntityItemFetcher, ChimeraQueryEntityItemFetcherParams, ChimeraQueryEntityItemUpdater, ChimeraQueryError, ChimeraQueryFetchingStatable, ChimeraQueryFetchingState, ChimeraQueryIdMismatchError, ChimeraQueryItemDeleteResponse, ChimeraQueryItemFetcherResponse, ChimeraQueryNotSpecifiedError, ChimeraQueryTrustError, ChimeraQueryTrustFetchedCollectionError, ChimeraQueryTrustIdMismatchError, ChimeraSimplifiedConjunctionOperation, ChimeraSimplifiedFilter, ChimeraSimplifiedOperator, ChimeraSimplifiedOrderDescriptor, ChimeraWeakValueMap, ChimeraWeakValueMapEventMap, Constructable, KeysOfType, Nullish, chimeraCreateConjunction, chimeraCreateNot, chimeraCreateOperator, chimeraCreateOrderBy, chimeraIsConjunction, chimeraIsOperator, createChimeraEntityStore };
|
|
634
|
+
//# sourceMappingURL=index.d.cts.map
|