@hf-chimera/store 0.0.10 → 0.0.12
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/CHANGELOG.md +12 -0
- package/README.md +121 -150
- package/dist/adapters/react.cjs +4 -3
- package/dist/adapters/react.cjs.map +1 -0
- package/dist/adapters/react.d.cts +2 -2
- package/dist/adapters/react.d.cts.map +1 -1
- package/dist/adapters/react.d.ts +2 -2
- package/dist/adapters/react.d.ts.map +1 -1
- package/dist/adapters/react.js +2 -2
- package/dist/defaults-Bg1kIemd.cjs +2 -1
- package/dist/defaults-Bg1kIemd.cjs.map +1 -0
- package/dist/defaults.cjs +2 -1
- package/dist/defaults.cjs.map +1 -0
- package/dist/defaults.d.cts +1 -1
- package/dist/defaults.d.cts.map +1 -1
- package/dist/defaults.d.ts +1 -1
- package/dist/defaults.d.ts.map +1 -1
- package/dist/{index-aFqSzWq5.d.ts → index-B6sY7hiW.d.ts} +2 -2
- package/dist/index-B6sY7hiW.d.ts.map +1 -0
- package/dist/{index-BcCVbW9M.d.cts → index-CTTQ1Hr3.d.ts} +35 -31
- package/dist/index-CTTQ1Hr3.d.ts.map +1 -0
- package/dist/{index-sjIP2TCu.d.cts → index-CiER0sxG.d.cts} +2 -2
- package/dist/index-CiER0sxG.d.cts.map +1 -0
- package/dist/{index-O42il7qa.d.ts → index-CkaYmEhA.d.cts} +35 -31
- package/dist/index-CkaYmEhA.d.cts.map +1 -0
- package/dist/index.cjs +3 -2
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/{qb-pl8eUjYV.cjs → qb-PXzZgo2H.cjs} +3 -2
- package/dist/qb-PXzZgo2H.cjs.map +1 -0
- package/dist/{qb-DNcihcMP.js → qb-pchs-vdM.js} +2 -2
- package/dist/qb-pchs-vdM.js.map +1 -0
- package/dist/qb.cjs +2 -2
- package/dist/qb.d.cts +2 -2
- package/dist/qb.d.ts +2 -2
- package/dist/qb.js +2 -2
- package/dist/{src-BTo-wGWx.js → src-C74sq0jQ.js} +8 -2
- package/dist/src-C74sq0jQ.js.map +1 -0
- package/dist/{src-FCZZKq4W.cjs → src-TJG6k3Nr.cjs} +16 -3
- package/dist/src-TJG6k3Nr.cjs.map +1 -0
- package/package.json +11 -12
- package/dist/index-BcCVbW9M.d.cts.map +0 -1
- package/dist/index-O42il7qa.d.ts.map +0 -1
- package/dist/index-aFqSzWq5.d.ts.map +0 -1
- package/dist/index-sjIP2TCu.d.cts.map +0 -1
- package/dist/qb-DNcihcMP.js.map +0 -1
- package/dist/src-BTo-wGWx.js.map +0 -1
package/CHANGELOG.md
CHANGED
package/README.md
CHANGED
|
@@ -65,67 +65,90 @@ const store = new ChimeraStore<EntityMap>({
|
|
|
65
65
|
query: {
|
|
66
66
|
defaults: {
|
|
67
67
|
trustQuery: true,
|
|
68
|
-
updateDebounceTimeout: 0,
|
|
69
68
|
// idGetter can be a string (object key) or a function
|
|
70
69
|
// String: Uses the specified property as the ID (e.g., 'id', 'uuid', 'key')
|
|
71
70
|
// Function: Custom ID extraction logic (entityName, value) => string | number
|
|
72
71
|
idGetter: 'id',
|
|
73
|
-
collectionFetcher: async (entityName, params, requestParams) => {
|
|
74
|
-
// Implement your data fetching logic
|
|
75
|
-
const response = await fetch(`/api/${entityName}`, {
|
|
76
|
-
signal: requestParams.signal,
|
|
77
|
-
// Add your request logic here
|
|
78
|
-
});
|
|
79
|
-
return {data: await response.json()};
|
|
80
|
-
},
|
|
81
|
-
itemFetcher: async (entityName, params, requestParams) => {
|
|
82
|
-
const response = await fetch(`/api/${entityName}/${params.id}`, {
|
|
83
|
-
signal: requestParams.signal,
|
|
84
|
-
});
|
|
85
|
-
return {data: await response.json()};
|
|
86
|
-
},
|
|
87
|
-
itemUpdater: async (entityName, item, requestParams) => {
|
|
88
|
-
const response = await fetch(`/api/${entityName}/${item.id}`, {
|
|
89
|
-
method: 'PUT',
|
|
90
|
-
body: JSON.stringify(item),
|
|
91
|
-
signal: requestParams.signal,
|
|
92
|
-
});
|
|
93
|
-
return {data: await response.json()};
|
|
94
|
-
},
|
|
95
|
-
itemDeleter: async (entityName, id, requestParams) => {
|
|
96
|
-
await fetch(`/api/${entityName}/${id}`, {
|
|
97
|
-
method: 'DELETE',
|
|
98
|
-
signal: requestParams.signal,
|
|
99
|
-
});
|
|
100
|
-
return {result: {id, success: true}};
|
|
101
|
-
},
|
|
102
|
-
itemCreator: async (entityName, item, requestParams) => {
|
|
103
|
-
const response = await fetch(`/api/${entityName}`, {
|
|
104
|
-
method: 'POST',
|
|
105
|
-
body: JSON.stringify(item),
|
|
106
|
-
signal: requestParams.signal,
|
|
107
|
-
});
|
|
108
|
-
return {data: await response.json()};
|
|
109
|
-
},
|
|
110
72
|
},
|
|
111
73
|
entities: {
|
|
112
74
|
// Define configuration for each entity in your EntityMap
|
|
113
|
-
//
|
|
114
|
-
// You can override defaults or add entity-specific configuration here
|
|
75
|
+
// Each entity must have its own fetchers, updaters, deleters, and creators
|
|
115
76
|
users: {
|
|
116
|
-
|
|
117
|
-
|
|
77
|
+
collectionFetcher: async (params, requestParams) => {
|
|
78
|
+
const response = await fetch(`/api/users`, {
|
|
79
|
+
signal: requestParams.signal,
|
|
80
|
+
});
|
|
81
|
+
return { data: await response.json() };
|
|
82
|
+
},
|
|
83
|
+
itemFetcher: async (params, requestParams) => {
|
|
84
|
+
const response = await fetch(`/api/users/${params.id}`, {
|
|
85
|
+
signal: requestParams.signal,
|
|
86
|
+
});
|
|
87
|
+
return { data: await response.json() };
|
|
88
|
+
},
|
|
89
|
+
itemUpdater: async (item, requestParams) => {
|
|
90
|
+
const response = await fetch(`/api/users/${item.id}`, {
|
|
91
|
+
method: 'PUT',
|
|
92
|
+
body: JSON.stringify(item),
|
|
93
|
+
signal: requestParams.signal,
|
|
94
|
+
});
|
|
95
|
+
return { data: await response.json() };
|
|
96
|
+
},
|
|
97
|
+
itemDeleter: async (id, requestParams) => {
|
|
98
|
+
await fetch(`/api/users/${id}`, {
|
|
99
|
+
method: 'DELETE',
|
|
100
|
+
signal: requestParams.signal,
|
|
101
|
+
});
|
|
102
|
+
return { result: { id, success: true } };
|
|
103
|
+
},
|
|
104
|
+
itemCreator: async (item, requestParams) => {
|
|
105
|
+
const response = await fetch(`/api/users`, {
|
|
106
|
+
method: 'POST',
|
|
107
|
+
body: JSON.stringify(item),
|
|
108
|
+
signal: requestParams.signal,
|
|
109
|
+
});
|
|
110
|
+
return { data: await response.json() };
|
|
111
|
+
},
|
|
118
112
|
},
|
|
119
113
|
posts: {
|
|
120
|
-
|
|
121
|
-
|
|
114
|
+
collectionFetcher: async (params, requestParams) => {
|
|
115
|
+
const response = await fetch(`/api/posts`, {
|
|
116
|
+
signal: requestParams.signal,
|
|
117
|
+
});
|
|
118
|
+
return { data: await response.json() };
|
|
119
|
+
},
|
|
120
|
+
itemFetcher: async (params, requestParams) => {
|
|
121
|
+
const response = await fetch(`/api/posts/${params.id}`, {
|
|
122
|
+
signal: requestParams.signal,
|
|
123
|
+
});
|
|
124
|
+
return { data: await response.json() };
|
|
125
|
+
},
|
|
126
|
+
itemUpdater: async (item, requestParams) => {
|
|
127
|
+
const response = await fetch(`/api/posts/${item.id}`, {
|
|
128
|
+
method: 'PUT',
|
|
129
|
+
body: JSON.stringify(item),
|
|
130
|
+
signal: requestParams.signal,
|
|
131
|
+
});
|
|
132
|
+
return { data: await response.json() };
|
|
133
|
+
},
|
|
134
|
+
itemDeleter: async (id, requestParams) => {
|
|
135
|
+
await fetch(`/api/posts/${id}`, {
|
|
136
|
+
method: 'DELETE',
|
|
137
|
+
signal: requestParams.signal,
|
|
138
|
+
});
|
|
139
|
+
return { result: { id, success: true } };
|
|
140
|
+
},
|
|
141
|
+
itemCreator: async (item, requestParams) => {
|
|
142
|
+
const response = await fetch(`/api/posts`, {
|
|
143
|
+
method: 'POST',
|
|
144
|
+
body: JSON.stringify(item),
|
|
145
|
+
signal: requestParams.signal,
|
|
146
|
+
});
|
|
147
|
+
return { data: await response.json() };
|
|
148
|
+
},
|
|
122
149
|
},
|
|
123
150
|
},
|
|
124
151
|
},
|
|
125
|
-
debug: {
|
|
126
|
-
devMode: true,
|
|
127
|
-
logs: true,
|
|
128
|
-
},
|
|
129
152
|
});
|
|
130
153
|
```
|
|
131
154
|
|
|
@@ -215,7 +238,7 @@ Chimera Store provides a powerful filtering system with support for:
|
|
|
215
238
|
|
|
216
239
|
- **Operators**: `eq`, `neq`, `gt`, `gte`, `lt`, `lte`, `contains`,
|
|
217
240
|
`startsWith`, `endsWith`, `in`, `notIn`
|
|
218
|
-
- **Conjunctions**: `and`, `or`
|
|
241
|
+
- **Conjunctions**: `and`, `or`, `not`
|
|
219
242
|
- **Custom Operators**: Extensible operator system for custom logic
|
|
220
243
|
- **Utility Functions**: Use `chimeraCreateOperator` and
|
|
221
244
|
`chimeraCreateConjunction` to build filters
|
|
@@ -240,28 +263,16 @@ operations.
|
|
|
240
263
|
#### Constructor
|
|
241
264
|
|
|
242
265
|
```typescript
|
|
243
|
-
new ChimeraStore<EntityMap
|
|
244
|
-
:
|
|
245
|
-
Config
|
|
246
|
-
)
|
|
266
|
+
const store = new ChimeraStore<EntityMap>(config)
|
|
247
267
|
```
|
|
248
268
|
|
|
249
269
|
#### Methods
|
|
250
270
|
|
|
251
271
|
- `from<EntityName>(entityName: EntityName)`: Get repository for specific entity
|
|
252
|
-
- `updateOne<EntityName>(entityName: EntityName, item: EntityMap[EntityName])`:
|
|
253
|
-
|
|
254
|
-
-
|
|
255
|
-
|
|
256
|
-
`updateMany<EntityName>(entityName: EntityName, items: Iterable<EntityMap[EntityName]>)`:
|
|
257
|
-
Update multiple items
|
|
258
|
-
|
|
259
|
-
- `deleteOne<EntityName>(entityName: EntityName, id: ChimeraEntityId)`: Delete
|
|
260
|
-
single item
|
|
261
|
-
-
|
|
262
|
-
|
|
263
|
-
`deleteMany<EntityName>(entityName: EntityName, ids: Iterable<ChimeraEntityId>)`:
|
|
264
|
-
Delete multiple items
|
|
272
|
+
- `updateOne<EntityName>(entityName: EntityName, item: EntityMap[EntityName])`: Update single item
|
|
273
|
+
- `updateMany<EntityName>(entityName: EntityName, items: Iterable<EntityMap[EntityName]>)`: Update multiple items
|
|
274
|
+
- `deleteOne<EntityName>(entityName: EntityName, id: ChimeraEntityId)`: Delete single item
|
|
275
|
+
- `deleteMany<EntityName>(entityName: EntityName, ids: Iterable<ChimeraEntityId>)`: Delete multiple items
|
|
265
276
|
|
|
266
277
|
### ChimeraEntityRepository
|
|
267
278
|
|
|
@@ -271,8 +282,7 @@ Entity-specific repository with query capabilities.
|
|
|
271
282
|
|
|
272
283
|
- `createItem(item: DeepPartial<Item>, meta?: any)`: Create new item
|
|
273
284
|
- `getItem(id: ChimeraEntityId, meta?: any)`: Get single item
|
|
274
|
-
- `getCollection(params: ChimeraCollectionParams)`: Get filtered/sorted
|
|
275
|
-
collection
|
|
285
|
+
- `getCollection(params: ChimeraCollectionParams)`: Get filtered/sorted collection
|
|
276
286
|
|
|
277
287
|
### ChimeraItemQuery
|
|
278
288
|
|
|
@@ -290,8 +300,7 @@ Represents a single item query with full CRUD operations.
|
|
|
290
300
|
|
|
291
301
|
- `refetch(force?: boolean)`: Refetch data
|
|
292
302
|
- `update(item: Item, force?: boolean)`: Update item
|
|
293
|
-
- `mutate(mutator: (draft: Item) => Item, force?: boolean)`: Update using
|
|
294
|
-
mutator function
|
|
303
|
+
- `mutate(mutator: (draft: Item) => Item, force?: boolean)`: Update using mutator function
|
|
295
304
|
- `commit(force?: boolean)`: Commit mutable changes
|
|
296
305
|
- `delete(force?: boolean)`: Delete item
|
|
297
306
|
|
|
@@ -367,7 +376,7 @@ const customFilterConfig = {
|
|
|
367
376
|
},
|
|
368
377
|
};
|
|
369
378
|
|
|
370
|
-
const store = new ChimeraStore({
|
|
379
|
+
const store = new ChimeraStore<EntityMap, typeof customFilterConfig.operators>({
|
|
371
380
|
filter: customFilterConfig,
|
|
372
381
|
// ... other config
|
|
373
382
|
});
|
|
@@ -442,7 +451,7 @@ const customOrderConfig = {
|
|
|
442
451
|
primitiveComparator: (a: unknown, b: unknown, nulls: ChimeraOrderNulls) => {
|
|
443
452
|
// Custom comparison logic
|
|
444
453
|
if (typeof a === 'string' && typeof b === 'string') {
|
|
445
|
-
return a.localeCompare(b, undefined, {numeric: true});
|
|
454
|
+
return a.localeCompare(b, undefined, { numeric: true });
|
|
446
455
|
}
|
|
447
456
|
return chimeraDefaultOrderConfig.primitiveComparator(a, b, nulls);
|
|
448
457
|
},
|
|
@@ -494,100 +503,63 @@ try {
|
|
|
494
503
|
### Query Configuration
|
|
495
504
|
|
|
496
505
|
```typescript
|
|
497
|
-
{
|
|
506
|
+
type ConfigExample = {
|
|
498
507
|
query: {
|
|
499
508
|
defaults: {
|
|
500
|
-
trustQuery: boolean
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
:
|
|
518
|
-
Function, // Default item deleter
|
|
519
|
-
itemCreator
|
|
520
|
-
:
|
|
521
|
-
Function, // Default item creator
|
|
509
|
+
trustQuery: boolean; // Trust external data providers
|
|
510
|
+
idGetter: ((entityName: string, value: unknown) => string | number) | string; // Default ID getter
|
|
511
|
+
collectionFetcher?: (params: any, request: {
|
|
512
|
+
signal?: AbortSignal
|
|
513
|
+
}) => Promise<{ data: any[] }>;
|
|
514
|
+
itemFetcher?: (params: any, request: {
|
|
515
|
+
signal?: AbortSignal
|
|
516
|
+
}) => Promise<{ data: any }>;
|
|
517
|
+
itemUpdater?: (item: any, request: { signal?: AbortSignal }) => Promise<{
|
|
518
|
+
data: any
|
|
519
|
+
}>;
|
|
520
|
+
itemDeleter?: (id: string | number, request: {
|
|
521
|
+
signal?: AbortSignal
|
|
522
|
+
}) => Promise<{ result?: any }>;
|
|
523
|
+
itemCreator?: (item: any, request: { signal?: AbortSignal }) => Promise<{
|
|
524
|
+
data: any
|
|
525
|
+
}>;
|
|
522
526
|
// ... batched operations
|
|
523
|
-
}
|
|
524
|
-
,
|
|
527
|
+
};
|
|
525
528
|
entities: {
|
|
526
|
-
[entityName]
|
|
527
|
-
:
|
|
528
|
-
{
|
|
529
|
+
[entityName: string]: {
|
|
529
530
|
// Entity-specific overrides
|
|
530
|
-
}
|
|
531
|
-
}
|
|
532
|
-
}
|
|
533
|
-
}
|
|
531
|
+
};
|
|
532
|
+
};
|
|
533
|
+
};
|
|
534
|
+
};
|
|
534
535
|
```
|
|
535
536
|
|
|
536
537
|
### Filter Configuration
|
|
537
538
|
|
|
538
539
|
```typescript
|
|
539
|
-
{
|
|
540
|
+
type FilterConfigExample = {
|
|
540
541
|
filter: {
|
|
541
|
-
conjunctions: {
|
|
542
|
-
and: Function,
|
|
543
|
-
or
|
|
544
|
-
:
|
|
545
|
-
Function,
|
|
546
|
-
}
|
|
547
|
-
,
|
|
548
542
|
operators: {
|
|
549
|
-
eq:
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
Function,
|
|
553
|
-
gt
|
|
554
|
-
:
|
|
555
|
-
Function,
|
|
543
|
+
eq: <T>(a: T, b: T) => boolean;
|
|
544
|
+
neq: <T>(a: T, b: T) => boolean;
|
|
545
|
+
gt?: (a: number, b: number) => boolean;
|
|
556
546
|
// ... custom operators
|
|
557
|
-
}
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
}
|
|
561
|
-
}
|
|
547
|
+
};
|
|
548
|
+
getFilterKey?: (input: unknown) => string; // Cache key generator for filters
|
|
549
|
+
getOperatorKey?: (input: unknown) => string; // Cache key generator for operators
|
|
550
|
+
};
|
|
551
|
+
};
|
|
562
552
|
```
|
|
563
553
|
|
|
564
554
|
### Order Configuration
|
|
565
555
|
|
|
566
556
|
```typescript
|
|
567
|
-
{
|
|
557
|
+
type OrderConfigExample = {
|
|
568
558
|
order: {
|
|
569
|
-
primitiveComparator:
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
}
|
|
574
|
-
}
|
|
575
|
-
```
|
|
576
|
-
|
|
577
|
-
### Debug Configuration
|
|
578
|
-
|
|
579
|
-
```typescript
|
|
580
|
-
{
|
|
581
|
-
debug: {
|
|
582
|
-
name: string, // Debug name
|
|
583
|
-
devMode
|
|
584
|
-
:
|
|
585
|
-
boolean, // Development mode
|
|
586
|
-
logs
|
|
587
|
-
:
|
|
588
|
-
boolean, // Enable logging
|
|
589
|
-
}
|
|
590
|
-
}
|
|
559
|
+
primitiveComparator: (a: unknown, b: unknown, nulls: ChimeraOrderNulls) => number; // Custom comparator
|
|
560
|
+
getKey: (input: unknown) => string; // Cache key generator
|
|
561
|
+
};
|
|
562
|
+
};
|
|
591
563
|
```
|
|
592
564
|
|
|
593
565
|
## Performance Considerations
|
|
@@ -607,7 +579,6 @@ try {
|
|
|
607
579
|
### Update Optimization
|
|
608
580
|
|
|
609
581
|
- Batch operations for multiple updates
|
|
610
|
-
- Debounced updates to reduce API calls
|
|
611
582
|
- Optimistic updates for better UX
|
|
612
583
|
|
|
613
584
|
## Browser Support
|
|
@@ -626,11 +597,11 @@ try {
|
|
|
626
597
|
|
|
627
598
|
## License
|
|
628
599
|
|
|
629
|
-
MIT License
|
|
600
|
+
MIT License — see [LICENSE](LICENSE) file for details.
|
|
630
601
|
|
|
631
602
|
## Support
|
|
632
603
|
|
|
633
604
|
- **Issues**: [GitHub Issues](https://github.com/hf-chimera/store/issues)
|
|
634
605
|
- **Documentation**: [GitHub Wiki](https://github.com/hf-chimera/store/wiki)
|
|
635
606
|
- **Discussions
|
|
636
|
-
**: [GitHub Discussions](https://github.com/hf-chimera/store/discussions)
|
|
607
|
+
**: [GitHub Discussions](https://github.com/hf-chimera/store/discussions)
|
package/dist/adapters/react.cjs
CHANGED
|
@@ -22,8 +22,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
22
22
|
|
|
23
23
|
//#endregion
|
|
24
24
|
require('../defaults-Bg1kIemd.cjs');
|
|
25
|
-
require('../src-
|
|
26
|
-
const require_qb = require('../qb-
|
|
25
|
+
require('../src-TJG6k3Nr.cjs');
|
|
26
|
+
const require_qb = require('../qb-PXzZgo2H.cjs');
|
|
27
27
|
let react = require("react");
|
|
28
28
|
react = __toESM(react);
|
|
29
29
|
|
|
@@ -118,4 +118,5 @@ exports.getChimeraTypedHooks = getChimeraTypedHooks;
|
|
|
118
118
|
exports.useChimeraCollection = useChimeraCollection;
|
|
119
119
|
exports.useChimeraItem = useChimeraItem;
|
|
120
120
|
exports.useChimeraRepository = useChimeraRepository;
|
|
121
|
-
exports.useChimeraStore = useChimeraStore;
|
|
121
|
+
exports.useChimeraStore = useChimeraStore;
|
|
122
|
+
//# sourceMappingURL=react.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react.cjs","names":["ChimeraQueryBuilder"],"sources":["../../packages/adapters/react/context.tsx","../../packages/adapters/react/hooks.ts"],"sourcesContent":["import { createContext, type ReactNode, useMemo } from \"react\";\nimport type { AnyChimeraStore } from \"../../../src/store\";\n\nexport interface ChimeraStoreContextValue<T extends AnyChimeraStore> {\n\tstore: T;\n}\n\nexport interface ChimeraStoreProviderProps<T extends AnyChimeraStore> {\n\tchildren: ReactNode;\n\tstore: T;\n}\n\nexport const ChimeraStoreContext = createContext<ChimeraStoreContextValue<AnyChimeraStore> | null>(null);\n\nexport const ChimeraStoreProvider = <T extends AnyChimeraStore>({ children, store }: ChimeraStoreProviderProps<T>) => (\n\t<ChimeraStoreContext.Provider value={useMemo(() => ({ store }), [store])}>{children}</ChimeraStoreContext.Provider>\n);\n","import { useContext, useEffect, useMemo, useRef, useState } from \"react\";\nimport type { ChimeraCollectionQuery } from \"../../../src/query/ChimeraCollectionQuery\";\nimport type { ChimeraItemQuery } from \"../../../src/query/ChimeraItemQuery\";\nimport type { ChimeraEntityId } from \"../../../src/shared/types\";\nimport type { ChimeraEntityRepository } from \"../../../src/store/ChimeraEntityRepository\";\nimport type {\n\tAnyChimeraStore,\n\tChimeraStoreEntities,\n\tChimeraStoreEntityType,\n\tChimeraStoreOperatorMap,\n} from \"../../../src/store/ChimeraStore\";\nimport type { ChimeraCollectionParams } from \"../../../src/store/types\";\nimport { ChimeraQueryBuilder, type QueryBuilderCreator } from \"../../qb\";\nimport { ChimeraStoreContext } from \"./context\";\n\nexport function useChimeraStore<T extends AnyChimeraStore>(): T {\n\tconst context = useContext(ChimeraStoreContext);\n\tif (!context) {\n\t\tthrow new Error(\"useChimeraStore must be used within a ChimeraStoreProvider\");\n\t}\n\treturn context.store as T;\n}\n\nexport function useChimeraRepository<T extends AnyChimeraStore, EntityName extends ChimeraStoreEntities<T>>(\n\tentityName: EntityName,\n): ChimeraEntityRepository<ChimeraStoreEntityType<T, EntityName>, ChimeraStoreOperatorMap<T>> {\n\tconst store = useChimeraStore<T>();\n\treturn store.from(entityName);\n}\n\nconst CHIMERA_COLLECTION_UPDATE_EVENTS = [\n\t\"ready\",\n\t\"updated\",\n\t\"selfUpdated\",\n\t\"selfItemCreated\",\n\t\"itemAdded\",\n\t\"itemUpdated\",\n\t\"selfItemUpdated\",\n\t\"itemDeleted\",\n\t\"selfItemDeleted\",\n\t\"error\",\n] as const;\nexport const useChimeraCollection = <T extends AnyChimeraStore, EntityName extends ChimeraStoreEntities<T>, Meta = any>(\n\tentityName: EntityName,\n\tparams:\n\t\t| ChimeraCollectionParams<ChimeraStoreOperatorMap<T>, ChimeraStoreEntityType<T, EntityName>, Meta>\n\t\t| QueryBuilderCreator<T, ChimeraStoreEntityType<T, EntityName>, ChimeraStoreOperatorMap<T>>,\n\tdeps?: unknown[],\n): ChimeraCollectionQuery<ChimeraStoreEntityType<T, EntityName>, ChimeraStoreOperatorMap<T>> => {\n\tconst [, trigger] = useState(() => ({}));\n\n\tconst repository = useChimeraRepository<T, EntityName>(entityName);\n\n\tconst oldDeps = useRef(deps);\n\tif ((oldDeps.current && !deps) || (!oldDeps.current && deps)) {\n\t\tconsole.warn(\n\t\t\t\"useChimeraCollection deps is not a reactive param!\\n\" +\n\t\t\t\t\"Use deps if you want to control dependencies manually.\\n\" +\n\t\t\t\t\"Omit it if you already have a stable reference to params\",\n\t\t);\n\t}\n\toldDeps.current = deps;\n\n\tconst memeParams = useMemo(\n\t\t() => {\n\t\t\tif (typeof params !== \"function\") return params;\n\n\t\t\tconst q = new ChimeraQueryBuilder();\n\t\t\tparams(q);\n\t\t\treturn q.build();\n\t\t},\n\t\t// biome-ignore lint/correctness/useExhaustiveDependencies: Very unlikely it will be changed over time, anyway warning for this already added.\n\t\tdeps ? deps : [params],\n\t);\n\tconst collection = useMemo(() => repository.getCollection(memeParams), [repository, memeParams]);\n\n\tuseEffect(() => {\n\t\tconst handler = () => trigger({});\n\t\tfor (const event of CHIMERA_COLLECTION_UPDATE_EVENTS) {\n\t\t\tcollection.on(event, handler);\n\t\t}\n\t\treturn () => {\n\t\t\tfor (const event of CHIMERA_COLLECTION_UPDATE_EVENTS) {\n\t\t\t\tcollection.off(event, handler);\n\t\t\t}\n\t\t};\n\t}, [collection]);\n\n\treturn collection;\n};\n\nconst CHIMERA_ITEM_UPDATE_EVENTS = [\n\t\"initialized\",\n\t\"selfCreated\",\n\t\"ready\",\n\t\"updated\",\n\t\"selfUpdated\",\n\t\"deleted\",\n\t\"selfDeleted\",\n\t\"error\",\n] as const;\nexport const useChimeraItem = <T extends AnyChimeraStore, EntityName extends ChimeraStoreEntities<T>, Meta = any>(\n\tentityName: EntityName,\n\tid: ChimeraEntityId,\n\tmeta?: Meta,\n): ChimeraItemQuery<ChimeraStoreEntityType<T, EntityName>> => {\n\tconst [, trigger] = useState(() => ({}));\n\n\tconst repository = useChimeraRepository<T, EntityName>(entityName);\n\tconst item = repository.getItem(id, meta);\n\n\tuseEffect(() => {\n\t\tconst handler = () => trigger({});\n\t\tfor (const event of CHIMERA_ITEM_UPDATE_EVENTS) {\n\t\t\titem.on(event, handler);\n\t\t}\n\t\treturn () => {\n\t\t\tfor (const event of CHIMERA_ITEM_UPDATE_EVENTS) {\n\t\t\t\titem.off(event, handler);\n\t\t\t}\n\t\t};\n\t}, [item]);\n\n\treturn item;\n};\n\nexport function getChimeraTypedHooks<T extends AnyChimeraStore>(\n\twithoutPrefix: true,\n): {\n\tuseStore: () => T;\n\tuseRepository: <EntityName extends ChimeraStoreEntities<T>>(\n\t\tentityName: EntityName,\n\t) => ChimeraEntityRepository<ChimeraStoreEntityType<T, EntityName>, ChimeraStoreOperatorMap<T>>;\n\tuseCollection: <EntityName extends ChimeraStoreEntities<T>, Meta = any>(\n\t\tentityName: EntityName,\n\t\tparams: ChimeraCollectionParams<ChimeraStoreOperatorMap<T>, ChimeraStoreEntityType<T, EntityName>, Meta>,\n\t\tdeps?: unknown[],\n\t) => ChimeraCollectionQuery<ChimeraStoreEntityType<T, EntityName>, ChimeraStoreOperatorMap<T>>;\n\tuseItem: <EntityName extends ChimeraStoreEntities<T>, Meta = any>(\n\t\tentityName: EntityName,\n\t\tid: ChimeraEntityId,\n\t\tmeta?: Meta,\n\t) => ChimeraItemQuery<ChimeraStoreEntityType<T, EntityName>>;\n};\nexport function getChimeraTypedHooks<T extends AnyChimeraStore>(\n\twithoutPrefix?: false,\n): {\n\tuseChimeraStore: () => T;\n\tuseChimeraRepository: <EntityName extends ChimeraStoreEntities<T>>(\n\t\tentityName: EntityName,\n\t) => ChimeraEntityRepository<ChimeraStoreEntityType<T, EntityName>, ChimeraStoreOperatorMap<T>>;\n\tuseChimeraCollection: <EntityName extends ChimeraStoreEntities<T>, Meta = any>(\n\t\tentityName: EntityName,\n\t\tparams:\n\t\t\t| ChimeraCollectionParams<ChimeraStoreOperatorMap<T>, ChimeraStoreEntityType<T, EntityName>, Meta>\n\t\t\t| QueryBuilderCreator<T, ChimeraStoreEntityType<T, EntityName>, ChimeraStoreOperatorMap<T>>,\n\t\tdeps?: unknown[],\n\t) => ChimeraCollectionQuery<ChimeraStoreEntityType<T, EntityName>, ChimeraStoreOperatorMap<T>>;\n\tuseChimeraItem: <EntityName extends ChimeraStoreEntities<T>, Meta = any>(\n\t\tentityName: EntityName,\n\t\tid: ChimeraEntityId,\n\t\tmeta?: Meta,\n\t) => ChimeraItemQuery<ChimeraStoreEntityType<T, EntityName>>;\n};\nexport function getChimeraTypedHooks<T extends AnyChimeraStore>(\n\twithoutPrefix?: boolean,\n):\n\t| {\n\t\t\tuseChimeraStore: () => T;\n\t\t\tuseChimeraRepository: <EntityName extends ChimeraStoreEntities<T>>(\n\t\t\t\tentityName: EntityName,\n\t\t\t) => ChimeraEntityRepository<ChimeraStoreEntityType<T, EntityName>, ChimeraStoreOperatorMap<T>>;\n\t\t\tuseChimeraCollection: <EntityName extends ChimeraStoreEntities<T>, Meta = any>(\n\t\t\t\tentityName: EntityName,\n\t\t\t\tparams: ChimeraCollectionParams<ChimeraStoreOperatorMap<T>, ChimeraStoreEntityType<T, EntityName>, Meta>,\n\t\t\t\tdeps?: unknown[],\n\t\t\t) => ChimeraCollectionQuery<ChimeraStoreEntityType<T, EntityName>, ChimeraStoreOperatorMap<T>>;\n\t\t\tuseChimeraItem: <EntityName extends ChimeraStoreEntities<T>, Meta = any>(\n\t\t\t\tentityName: EntityName,\n\t\t\t\tid: ChimeraEntityId,\n\t\t\t\tmeta?: Meta,\n\t\t\t) => ChimeraItemQuery<ChimeraStoreEntityType<T, EntityName>>;\n\t }\n\t| {\n\t\t\tuseStore: () => T;\n\t\t\tuseRepository: <EntityName extends ChimeraStoreEntities<T>>(\n\t\t\t\tentityName: EntityName,\n\t\t\t) => ChimeraEntityRepository<ChimeraStoreEntityType<T, EntityName>, ChimeraStoreOperatorMap<T>>;\n\t\t\tuseCollection: <EntityName extends ChimeraStoreEntities<T>, Meta = any>(\n\t\t\t\tentityName: EntityName,\n\t\t\t\tparams: ChimeraCollectionParams<ChimeraStoreOperatorMap<T>, ChimeraStoreEntityType<T, EntityName>, Meta>,\n\t\t\t\tdeps?: unknown[],\n\t\t\t) => ChimeraCollectionQuery<ChimeraStoreEntityType<T, EntityName>, ChimeraStoreOperatorMap<T>>;\n\t\t\tuseItem: <EntityName extends ChimeraStoreEntities<T>, Meta = any>(\n\t\t\t\tentityName: EntityName,\n\t\t\t\tid: ChimeraEntityId,\n\t\t\t\tmeta?: Meta,\n\t\t\t) => ChimeraItemQuery<ChimeraStoreEntityType<T, EntityName>>;\n\t } {\n\treturn (\n\t\twithoutPrefix\n\t\t\t? {\n\t\t\t\t\tuseCollection: useChimeraCollection,\n\t\t\t\t\tuseItem: useChimeraItem,\n\t\t\t\t\tuseRepository: useChimeraRepository,\n\t\t\t\t\tuseStore: useChimeraStore,\n\t\t\t\t}\n\t\t\t: {\n\t\t\t\t\tuseChimeraCollection,\n\t\t\t\t\tuseChimeraItem,\n\t\t\t\t\tuseChimeraRepository,\n\t\t\t\t\tuseChimeraStore,\n\t\t\t\t}\n\t) as ReturnType<typeof getChimeraTypedHooks<T>>;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,MAAa,+CAAsF,KAAK;AAExG,MAAa,wBAAmD,EAAE,UAAU,YAC3E,CAAC,oBAAoB,SAAS,iCAAsB,EAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS,EAAE,oBAAoB;;;;ACA3G,SAAgB,kBAAgD;CAC/D,MAAM,gCAAqB,oBAAoB;AAC/C,KAAI,CAAC,QACJ,OAAM,IAAI,MAAM,6DAA6D;AAE9E,QAAO,QAAQ;;AAGhB,SAAgB,qBACf,YAC6F;AAE7F,QADc,iBAAoB,CACrB,KAAK,WAAW;;AAG9B,MAAM,mCAAmC;CACxC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACD,MAAa,wBACZ,YACA,QAGA,SAC+F;CAC/F,MAAM,GAAG,sCAA2B,EAAE,EAAE;CAExC,MAAM,aAAa,qBAAoC,WAAW;CAElE,MAAM,4BAAiB,KAAK;AAC5B,KAAK,QAAQ,WAAW,CAAC,QAAU,CAAC,QAAQ,WAAW,KACtD,SAAQ,KACP,uKAGA;AAEF,SAAQ,UAAU;CAElB,MAAM,sCACC;AACL,MAAI,OAAO,WAAW,WAAY,QAAO;EAEzC,MAAM,IAAI,IAAIA,gCAAqB;AACnC,SAAO,EAAE;AACT,SAAO,EAAE,OAAO;IAGjB,OAAO,OAAO,CAAC,OAAO,CACtB;CACD,MAAM,sCAA2B,WAAW,cAAc,WAAW,EAAE,CAAC,YAAY,WAAW,CAAC;AAEhG,4BAAgB;EACf,MAAM,gBAAgB,QAAQ,EAAE,CAAC;AACjC,OAAK,MAAM,SAAS,iCACnB,YAAW,GAAG,OAAO,QAAQ;AAE9B,eAAa;AACZ,QAAK,MAAM,SAAS,iCACnB,YAAW,IAAI,OAAO,QAAQ;;IAG9B,CAAC,WAAW,CAAC;AAEhB,QAAO;;AAGR,MAAM,6BAA6B;CAClC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACD,MAAa,kBACZ,YACA,IACA,SAC6D;CAC7D,MAAM,GAAG,sCAA2B,EAAE,EAAE;CAGxC,MAAM,OADa,qBAAoC,WAAW,CAC1C,QAAQ,IAAI,KAAK;AAEzC,4BAAgB;EACf,MAAM,gBAAgB,QAAQ,EAAE,CAAC;AACjC,OAAK,MAAM,SAAS,2BACnB,MAAK,GAAG,OAAO,QAAQ;AAExB,eAAa;AACZ,QAAK,MAAM,SAAS,2BACnB,MAAK,IAAI,OAAO,QAAQ;;IAGxB,CAAC,KAAK,CAAC;AAEV,QAAO;;AAyCR,SAAgB,qBACf,eAiCI;AACJ,QACC,gBACG;EACA,eAAe;EACf,SAAS;EACT,eAAe;EACf,UAAU;EACV,GACA;EACA;EACA;EACA;EACA;EACA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { C as ChimeraItemQuery,
|
|
2
|
-
import { n as QueryBuilderCreator } from "../index-
|
|
1
|
+
import { C as ChimeraItemQuery, F as ChimeraCollectionQuery, Ut as ChimeraEntityId, _ as ChimeraStoreEntityType, b as ChimeraEntityRepository, h as ChimeraStoreEntities, p as AnyChimeraStore, x as ChimeraCollectionParams, y as ChimeraStoreOperatorMap } from "../index-CkaYmEhA.cjs";
|
|
2
|
+
import { n as QueryBuilderCreator } from "../index-CiER0sxG.cjs";
|
|
3
3
|
import * as react0 from "react";
|
|
4
4
|
import { ReactNode } from "react";
|
|
5
5
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react.d.cts","names":[],"sources":["
|
|
1
|
+
{"version":3,"file":"react.d.cts","names":[],"sources":["../../packages/adapters/react/context.tsx","../../packages/adapters/react/hooks.ts"],"sourcesContent":[],"mappings":";;;;;;UAGiB,mCAAmC;SAC5C;;UAGS,oCAAoC;EAJpC,QAAA,EAKN,SALM;EAIA,KAAA,EAET,CAFS;;AACN,cAIE,mBAJF,EAIqB,MAAA,CAAA,OAJrB,CAIqB,wBAJrB,CAIqB,eAJrB,CAAA,GAAA,IAAA,CAAA;AACH,cAKK,oBALL,EAAA,CAAA,UAKuC,eALvC,CAAA,CAAA;EAAA,QAAA;EAAA;AAAA,CAAA,EAK6E,yBAL7E,CAKuG,CALvG,CAAA,EAAA,GAKyG,MAAA,CAAA,GAAA,CAAA,OALzG;;;AAFS,iBCQD,eDR0B,CAAA,UCQA,eDRA,CAAA,CAAA,CAAA,ECQoB,CDRpB;AAAW,iBCgBrC,oBDhBqC,CAAA,UCgBN,eDhBM,EAAA,mBCgB8B,oBDhB9B,CCgBmD,CDhBnD,CAAA,CAAA,CAAA,UAAA,ECiBxC,UDjBwC,CAAA,ECkBlD,uBDlBkD,CCkB1B,sBDlB0B,CCkBH,CDlBG,ECkBA,UDlBA,CAAA,ECkBa,uBDlBb,CCkBqC,CDlBrC,CAAA,CAAA;AAC1C,cCkCE,oBDlCF,EAAA,CAAA,UCkCoC,eDlCpC,EAAA,mBCkCwE,oBDlCxE,CCkC6F,CDlC7F,CAAA,EAAA,OAAA,GAAA,CAAA,CAAA,UAAA,ECmCE,UDnCF,EAAA,MAAA,ECqCP,uBDrCO,CCqCiB,uBDrCjB,CCqCyC,CDrCzC,CAAA,ECqC6C,sBDrC7C,CCqCoE,CDrCpE,ECqCuE,UDrCvE,CAAA,ECqCoF,IDrCpF,CAAA,GCsCP,mBDtCO,CCsCa,CDtCb,ECsCgB,sBDtChB,CCsCuC,CDtCvC,ECsC0C,UDtC1C,CAAA,ECsCuD,uBDtCvD,CCsC+E,CDtC/E,CAAA,CAAA,EAAA,IAAA,CAAA,EAAA,OAAA,EAAA,EAAA,GCwCR,sBDxCQ,CCwCe,sBDxCf,CCwCsC,CDxCtC,ECwCyC,UDxCzC,CAAA,ECwCsD,uBDxCtD,CCwC8E,CDxC9E,CAAA,CAAA;AACH,cC4FK,cD5FL,EAAA,CAAA,UC4FiC,eD5FjC,EAAA,mBC4FqE,oBD5FrE,CC4F0F,CD5F1F,CAAA,EAAA,OAAA,GAAA,CAAA,CAAA,UAAA,EC6FK,UD7FL,EAAA,EAAA,EC8FH,eD9FG,EAAA,IAAA,CAAA,EC+FA,ID/FA,EAAA,GCgGL,gBDhGK,CCgGY,sBDhGZ,CCgGmC,CDhGnC,ECgGsC,UDhGtC,CAAA,CAAA;AAAC,iBCqHO,oBDrHP,CAAA,UCqHsC,eDrHtC,CAAA,CAAA,aAAA,EAAA,IAAA,CAAA,EAAA;EAGI,QAAA,EAAA,GAAA,GCqHI,CDrHJ;EAAmB,aAAA,EAAA,CAAA,mBCsHI,oBDtHJ,CCsHyB,CDtHzB,CAAA,CAAA,CAAA,UAAA,ECuHlB,UDvHkB,EAAA,GCwH1B,uBDxH0B,CCwHF,sBDxHE,CCwHqB,CDxHrB,ECwHwB,UDxHxB,CAAA,ECwHqC,uBDxHrC,CCwH6D,CDxH7D,CAAA,CAAA;EAAA,aAAA,EAAA,CAAA,mBCyHI,oBDzHJ,CCyHyB,CDzHzB,CAAA,EAAA,OAAA,GAAA,CAAA,CAAA,UAAA,EC0HlB,UD1HkB,EAAA,MAAA,EC2HtB,uBD3HsB,CC2HE,uBD3HF,CC2H0B,CD3H1B,CAAA,EC2H8B,sBD3H9B,CC2HqD,CD3HrD,EC2HwD,UD3HxD,CAAA,EC2HqE,ID3HrE,CAAA,EAAA,IAAA,CAAA,EAAA,OAAA,EAAA,EAAA,GC6H1B,sBD7H0B,CC6HH,sBD7HG,CC6HoB,CD7HpB,EC6HuB,UD7HvB,CAAA,EC6HoC,uBD7HpC,CC6H4D,CD7H5D,CAAA,CAAA;EAAA,OAAA,EAAA,CAAA,mBC8HF,oBD9HE,CC8HmB,CD9HnB,CAAA,EAAA,OAAA,GAAA,CAAA,CAAA,UAAA,EC+HlB,UD/HkB,EAAA,EAAA,ECgI1B,eDhI0B,EAAA,IAAA,CAAA,ECiIvB,IDjIuB,EAAA,GCkI1B,gBDlI0B,CCkIT,sBDlIS,CCkIc,CDlId,ECkIiB,UDlIjB,CAAA,CAAA;CAAA;AAEnB,iBCkIG,oBDhIf,CAAA,UCgI8C,eDhI9C,CAAA,CAAA,aAAA,CAAA,EAAA,KAAA,CAAA,EAAA;EAF8C,eAAA,EAAA,GAAA,GCqIvB,CDrIuB;EAAiB,oBAAA,EAAA,CAAA,mBCsIrB,oBDtIqB,CCsIA,CDtIA,CAAA,CAAA,CAAA,UAAA,ECuIlD,UDvIkD,EAAA,GCwI1D,uBDxI0D,CCwIlC,sBDxIkC,CCwIX,CDxIW,ECwIR,UDxIQ,CAAA,ECwIK,uBDxIL,CCwI6B,CDxI7B,CAAA,CAAA;EAAA,oBAAA,EAAA,CAAA,mBCyIrB,oBDzIqB,CCyIA,CDzIA,CAAA,EAAA,OAAA,GAAA,CAAA,CAAA,UAAA,EC0IlD,UD1IkD,EAAA,MAAA,EC4I3D,uBD5I2D,CC4InC,uBD5ImC,CC4IX,CD5IW,CAAA,EC4IP,sBD5IO,CC4IgB,CD5IhB,EC4ImB,UD5InB,CAAA,EC4IgC,ID5IhC,CAAA,GC6I3D,mBD7I2D,CC6IvC,CD7IuC,EC6IpC,sBD7IoC,CC6Ib,CD7Ia,EC6IV,UD7IU,CAAA,EC6IG,uBD7IH,CC6I2B,CD7I3B,CAAA,CAAA,EAAA,IAAA,CAAA,EAAA,OAAA,EAAA,EAAA,GC+I1D,sBD/I0D,CC+InC,sBD/ImC,CC+IZ,CD/IY,EC+IT,UD/IS,CAAA,EC+II,uBD/IJ,CC+I4B,CD/I5B,CAAA,CAAA;EAA+C,cAAA,EAAA,CAAA,mBCgJ1E,oBDhJ0E,CCgJrD,CDhJqD,CAAA,EAAA,OAAA,GAAA,CAAA,CAAA,UAAA,ECiJjG,UDjJiG,EAAA,EAAA,ECkJzG,eDlJyG,EAAA,IAAA,CAAA,ECmJtG,IDnJsG,EAAA,GCoJzG,gBDpJyG,CCoJxF,sBDpJwF,CCoJjE,CDpJiE,ECoJ9D,UDpJ8D,CAAA,CAAA;CAA1B"}
|
package/dist/adapters/react.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { C as ChimeraItemQuery,
|
|
2
|
-
import { n as QueryBuilderCreator } from "../index-
|
|
1
|
+
import { C as ChimeraItemQuery, F as ChimeraCollectionQuery, Ut as ChimeraEntityId, _ as ChimeraStoreEntityType, b as ChimeraEntityRepository, h as ChimeraStoreEntities, p as AnyChimeraStore, x as ChimeraCollectionParams, y as ChimeraStoreOperatorMap } from "../index-CTTQ1Hr3.js";
|
|
2
|
+
import { n as QueryBuilderCreator } from "../index-B6sY7hiW.js";
|
|
3
3
|
import * as react0 from "react";
|
|
4
4
|
import { ReactNode } from "react";
|
|
5
5
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react.d.ts","names":[],"sources":["
|
|
1
|
+
{"version":3,"file":"react.d.ts","names":[],"sources":["../../packages/adapters/react/context.tsx","../../packages/adapters/react/hooks.ts"],"sourcesContent":[],"mappings":";;;;;;UAGiB,mCAAmC;SAC5C;;UAGS,oCAAoC;EAJpC,QAAA,EAKN,SALM;EAIA,KAAA,EAET,CAFS;;AACN,cAIE,mBAJF,EAIqB,MAAA,CAAA,OAJrB,CAIqB,wBAJrB,CAIqB,eAJrB,CAAA,GAAA,IAAA,CAAA;AACH,cAKK,oBALL,EAAA,CAAA,UAKuC,eALvC,CAAA,CAAA;EAAA,QAAA;EAAA;AAAA,CAAA,EAK6E,yBAL7E,CAKuG,CALvG,CAAA,EAAA,GAKyG,MAAA,CAAA,GAAA,CAAA,OALzG;;;AAFS,iBCQD,eDR0B,CAAA,UCQA,eDRA,CAAA,CAAA,CAAA,ECQoB,CDRpB;AAAW,iBCgBrC,oBDhBqC,CAAA,UCgBN,eDhBM,EAAA,mBCgB8B,oBDhB9B,CCgBmD,CDhBnD,CAAA,CAAA,CAAA,UAAA,ECiBxC,UDjBwC,CAAA,ECkBlD,uBDlBkD,CCkB1B,sBDlB0B,CCkBH,CDlBG,ECkBA,UDlBA,CAAA,ECkBa,uBDlBb,CCkBqC,CDlBrC,CAAA,CAAA;AAC1C,cCkCE,oBDlCF,EAAA,CAAA,UCkCoC,eDlCpC,EAAA,mBCkCwE,oBDlCxE,CCkC6F,CDlC7F,CAAA,EAAA,OAAA,GAAA,CAAA,CAAA,UAAA,ECmCE,UDnCF,EAAA,MAAA,ECqCP,uBDrCO,CCqCiB,uBDrCjB,CCqCyC,CDrCzC,CAAA,ECqC6C,sBDrC7C,CCqCoE,CDrCpE,ECqCuE,UDrCvE,CAAA,ECqCoF,IDrCpF,CAAA,GCsCP,mBDtCO,CCsCa,CDtCb,ECsCgB,sBDtChB,CCsCuC,CDtCvC,ECsC0C,UDtC1C,CAAA,ECsCuD,uBDtCvD,CCsC+E,CDtC/E,CAAA,CAAA,EAAA,IAAA,CAAA,EAAA,OAAA,EAAA,EAAA,GCwCR,sBDxCQ,CCwCe,sBDxCf,CCwCsC,CDxCtC,ECwCyC,UDxCzC,CAAA,ECwCsD,uBDxCtD,CCwC8E,CDxC9E,CAAA,CAAA;AACH,cC4FK,cD5FL,EAAA,CAAA,UC4FiC,eD5FjC,EAAA,mBC4FqE,oBD5FrE,CC4F0F,CD5F1F,CAAA,EAAA,OAAA,GAAA,CAAA,CAAA,UAAA,EC6FK,UD7FL,EAAA,EAAA,EC8FH,eD9FG,EAAA,IAAA,CAAA,EC+FA,ID/FA,EAAA,GCgGL,gBDhGK,CCgGY,sBDhGZ,CCgGmC,CDhGnC,ECgGsC,UDhGtC,CAAA,CAAA;AAAC,iBCqHO,oBDrHP,CAAA,UCqHsC,eDrHtC,CAAA,CAAA,aAAA,EAAA,IAAA,CAAA,EAAA;EAGI,QAAA,EAAA,GAAA,GCqHI,CDrHJ;EAAmB,aAAA,EAAA,CAAA,mBCsHI,oBDtHJ,CCsHyB,CDtHzB,CAAA,CAAA,CAAA,UAAA,ECuHlB,UDvHkB,EAAA,GCwH1B,uBDxH0B,CCwHF,sBDxHE,CCwHqB,CDxHrB,ECwHwB,UDxHxB,CAAA,ECwHqC,uBDxHrC,CCwH6D,CDxH7D,CAAA,CAAA;EAAA,aAAA,EAAA,CAAA,mBCyHI,oBDzHJ,CCyHyB,CDzHzB,CAAA,EAAA,OAAA,GAAA,CAAA,CAAA,UAAA,EC0HlB,UD1HkB,EAAA,MAAA,EC2HtB,uBD3HsB,CC2HE,uBD3HF,CC2H0B,CD3H1B,CAAA,EC2H8B,sBD3H9B,CC2HqD,CD3HrD,EC2HwD,UD3HxD,CAAA,EC2HqE,ID3HrE,CAAA,EAAA,IAAA,CAAA,EAAA,OAAA,EAAA,EAAA,GC6H1B,sBD7H0B,CC6HH,sBD7HG,CC6HoB,CD7HpB,EC6HuB,UD7HvB,CAAA,EC6HoC,uBD7HpC,CC6H4D,CD7H5D,CAAA,CAAA;EAAA,OAAA,EAAA,CAAA,mBC8HF,oBD9HE,CC8HmB,CD9HnB,CAAA,EAAA,OAAA,GAAA,CAAA,CAAA,UAAA,EC+HlB,UD/HkB,EAAA,EAAA,ECgI1B,eDhI0B,EAAA,IAAA,CAAA,ECiIvB,IDjIuB,EAAA,GCkI1B,gBDlI0B,CCkIT,sBDlIS,CCkIc,CDlId,ECkIiB,UDlIjB,CAAA,CAAA;CAAA;AAEnB,iBCkIG,oBDhIf,CAAA,UCgI8C,eDhI9C,CAAA,CAAA,aAAA,CAAA,EAAA,KAAA,CAAA,EAAA;EAF8C,eAAA,EAAA,GAAA,GCqIvB,CDrIuB;EAAiB,oBAAA,EAAA,CAAA,mBCsIrB,oBDtIqB,CCsIA,CDtIA,CAAA,CAAA,CAAA,UAAA,ECuIlD,UDvIkD,EAAA,GCwI1D,uBDxI0D,CCwIlC,sBDxIkC,CCwIX,CDxIW,ECwIR,UDxIQ,CAAA,ECwIK,uBDxIL,CCwI6B,CDxI7B,CAAA,CAAA;EAAA,oBAAA,EAAA,CAAA,mBCyIrB,oBDzIqB,CCyIA,CDzIA,CAAA,EAAA,OAAA,GAAA,CAAA,CAAA,UAAA,EC0IlD,UD1IkD,EAAA,MAAA,EC4I3D,uBD5I2D,CC4InC,uBD5ImC,CC4IX,CD5IW,CAAA,EC4IP,sBD5IO,CC4IgB,CD5IhB,EC4ImB,UD5InB,CAAA,EC4IgC,ID5IhC,CAAA,GC6I3D,mBD7I2D,CC6IvC,CD7IuC,EC6IpC,sBD7IoC,CC6Ib,CD7Ia,EC6IV,UD7IU,CAAA,EC6IG,uBD7IH,CC6I2B,CD7I3B,CAAA,CAAA,EAAA,IAAA,CAAA,EAAA,OAAA,EAAA,EAAA,GC+I1D,sBD/I0D,CC+InC,sBD/ImC,CC+IZ,CD/IY,EC+IT,UD/IS,CAAA,EC+II,uBD/IJ,CC+I4B,CD/I5B,CAAA,CAAA;EAA+C,cAAA,EAAA,CAAA,mBCgJ1E,oBDhJ0E,CCgJrD,CDhJqD,CAAA,EAAA,OAAA,GAAA,CAAA,CAAA,UAAA,ECiJjG,UDjJiG,EAAA,EAAA,ECkJzG,eDlJyG,EAAA,IAAA,CAAA,ECmJtG,IDnJsG,EAAA,GCoJzG,gBDpJyG,CCoJxF,sBDpJwF,CCoJjE,CDpJiE,ECoJ9D,UDpJ8D,CAAA,CAAA;CAA1B"}
|
package/dist/adapters/react.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "../defaults-CLUQg2zK.js";
|
|
2
|
-
import "../src-
|
|
3
|
-
import { t as ChimeraQueryBuilder } from "../qb-
|
|
2
|
+
import "../src-C74sq0jQ.js";
|
|
3
|
+
import { t as ChimeraQueryBuilder } from "../qb-pchs-vdM.js";
|
|
4
4
|
import { createContext, useContext, useEffect, useMemo, useRef, useState } from "react";
|
|
5
5
|
|
|
6
6
|
//#region packages/adapters/react/context.tsx
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaults-Bg1kIemd.cjs","names":["getKeyFromOperation: ChimeraKeyFromOperatorGetter","chimeraDefaultGetKeyFromFilter: ChimeraKeyFromFilterGetter","chimeraDefaultComparator: ChimeraPrimitiveComparator","chimeraDefaultKeyFromOrder: ChimeraKeyFromOrderGetter"],"sources":["../src/shared/errors.ts","../src/order/errors.ts","../src/query/errors.ts","../src/debug/defaults.ts","../src/filter/defaults.ts","../src/order/defaults.ts","../src/query/defaults.ts"],"sourcesContent":["export class ChimeraError extends Error {}\n\nexport class ChimeraInternalError extends ChimeraError {\n\tconstructor(message: string, options?: ErrorOptions) {\n\t\tsuper(\n\t\t\t`${message}\\nIf you have this bug, feel free to create an issue in https://github.com/hf-chimera/store/issues`,\n\t\t\toptions,\n\t\t);\n\t}\n}\n","import { ChimeraError } from \"../shared/errors.ts\";\n\nexport class ChimeraOrderError extends ChimeraError {}\n\nexport class ChimeraOrderTypeError extends ChimeraOrderError {}\n\nexport class ChimeraOrderTypeComparisonError extends ChimeraOrderTypeError {\n\tconstructor(a: unknown, b: unknown) {\n\t\tsuper(\n\t\t\t`Unsupported comparison \"${a}\"(${typeof a}[${a != null ? a.constructor.name : a}]) with \"${b}\"(${typeof b}[${b != null ? b.constructor.name : b}])`,\n\t\t);\n\t}\n}\n","import { ChimeraError } from \"../shared/errors.ts\";\nimport type { ChimeraEntityId } from \"../shared/types.ts\";\nimport type { ChimeraQueryFetchingState } from \"./types.ts\";\n\nconst formatDeepErrorMessage = (message: string, cause: unknown): string =>\n\t`${message}: ${cause instanceof Error ? `\\n ${cause.stack}` : cause}`;\n\nexport class ChimeraQueryError extends ChimeraError {\n\treadonly entityName: string;\n\n\tconstructor(entityName: string, message: string, options?: ErrorOptions) {\n\t\tsuper(message, options);\n\t\tthis.entityName = entityName;\n\t}\n}\n\nexport class ChimeraQueryIdMismatchError extends ChimeraQueryError {\n\treadonly old: ChimeraEntityId;\n\treadonly new: ChimeraEntityId;\n\n\tconstructor(entityName: string, oldId: ChimeraEntityId, newId: ChimeraEntityId) {\n\t\tsuper(\n\t\t\tentityName,\n\t\t\t`\nCan't update \"${entityName}\" item if the change updates it's [id] (changed from \"${oldId}\" to \"${newId}\").\nIf such an update should not be an error, update <idGetter> field in \"${entityName}\" entity config to make Chimera get the [id] value properly.\n\t\t`.trim(),\n\t\t);\n\t\tthis.old = oldId;\n\t\tthis.new = newId;\n\t}\n}\n\nexport class ChimeraQueryNotSpecifiedError extends ChimeraQueryError {\n\treadonly methodName: string;\n\n\tconstructor(entityName: string, methodName: string) {\n\t\tsuper(entityName, `<${methodName}> for entity \"${entityName}\" was not specified`);\n\t\tthis.methodName = methodName;\n\t}\n}\n\nexport class ChimeraQueryTrustError extends ChimeraQueryError {\n\tconstructor(entityName: string, description: string) {\n\t\tsuper(\n\t\t\tentityName,\n\t\t\t`\nDO NOT IGNORE THIS ERROR OR YOUR PROD MAY BREAK!\n\nLooks like your \"${entityName}\" query provider ${description}\n\nBy default Chimera tend to trust external query provider to avoid extra data processing.\nIf it is not your case, set field \"trustQuery\" to \"false\" in config defaults or for specific entity.\nThis error visible only if \"devMode\" is \"true\".\nIf you'll ignore it, your production may fail, because Chimera won't check the data correctness.\n`.trim(),\n\t\t);\n\t}\n}\n\nexport class ChimeraQueryTrustIdMismatchError extends ChimeraQueryTrustError {\n\treadonly old: ChimeraEntityId;\n\treadonly new: ChimeraEntityId;\n\n\tconstructor(entityName: string, oldId: ChimeraEntityId, newId: ChimeraEntityId) {\n\t\tsuper(\n\t\t\tentityName,\n\t\t\t`\nreturned an item with [id] that not matches with the [id] of item that was updated (changed from \"${oldId}\" to \"${newId}\"). \nIf it is not an error, update <idGetter> field in \"${entityName}\" entity config to make Chimera get the [id] value properly.\n`.trim(),\n\t\t);\n\t\tthis.old = oldId;\n\t\tthis.new = newId;\n\t}\n}\n\nexport class ChimeraQueryTrustFetchedCollectionError extends ChimeraQueryTrustError {\n\treadonly old: unknown[];\n\treadonly new: unknown[];\n\n\tconstructor(entityName: string, input: unknown[], output: unknown[]) {\n\t\tsuper(entityName, \"returned not properly sorted or ordered collection.\");\n\t\tthis.old = input;\n\t\tthis.new = output;\n\t}\n}\n\nexport class ChimeraQueryFetchingError extends ChimeraQueryError {\n\tconstructor(entityName: string, cause: unknown) {\n\t\tsuper(entityName, formatDeepErrorMessage(\"Something went wrong\", cause), { cause });\n\t}\n}\n\nexport class ChimeraQueryDeletingError extends ChimeraQueryError {\n\tconstructor(entityName: string, cause: unknown) {\n\t\tsuper(entityName, formatDeepErrorMessage(\"Something went wrong\", cause), { cause });\n\t}\n}\n\nexport class ChimeraQueryNotReadyError extends ChimeraQueryError {\n\tconstructor(entityName: string) {\n\t\tsuper(entityName, \"Unable to get unready value.\");\n\t}\n}\n\nexport class ChimeraQueryDeletedItemError extends ChimeraQueryError {\n\tconstructor(entityName: string, id: ChimeraEntityId) {\n\t\tsuper(entityName, `Unable to updated deleted item with [id] \"${id}.\"`);\n\t}\n}\n\nexport class ChimeraQueryUnsuccessfulDeletionError extends ChimeraQueryError {\n\tconstructor(entityName: string, id: ChimeraEntityId) {\n\t\tsuper(entityName, `Item with [id] \"${id}\" was not deleted.`);\n\t}\n}\n\nexport class ChimeraQueryAlreadyRunningError extends ChimeraQueryError {\n\tconstructor(entityName: string, status: ChimeraQueryFetchingState) {\n\t\tsuper(entityName, `Unable to operate query. Other process already running ${status}.`);\n\t}\n}\n\nexport class ChimeraQueryNotCreatedError extends ChimeraQueryError {\n\tconstructor(entityName: string) {\n\t\tsuper(entityName, \"Unable to operate not created item.\");\n\t}\n}\n","import type { ChimeraDebugConfig } from \"./types.ts\";\n\nexport const chimeraDefaultDebugConfig = {\n\tdevMode: false,\n\tlogs: \"info\",\n\tname: \"chimera\",\n} satisfies Required<ChimeraDebugConfig>;\n","import type {\n\tChimeraFilterConfig,\n\tChimeraKeyFromFilterGetter,\n\tChimeraKeyFromOperatorGetter,\n\tChimeraOperatorMap,\n} from \"./types.ts\";\n\nexport const getKeyFromOperation: ChimeraKeyFromOperatorGetter = (operator) => JSON.stringify(operator);\nexport const chimeraDefaultGetKeyFromFilter: ChimeraKeyFromFilterGetter = (filter) => JSON.stringify(filter);\n\nexport const chimeraDefaultFilterOperators = {\n\tcontains: <\n\t\tI extends string | unknown[],\n\t\tT extends I extends never[] ? unknown : I extends unknown[] ? I[number] | I : I extends string ? string : never,\n\t>(\n\t\ta: I,\n\t\tb: T,\n\t) => {\n\t\tif (typeof a === \"string\") return a.includes(b as string);\n\t\tif (Array.isArray(a)) return Array.isArray(b) ? b.every((v) => a.includes(v)) : a.includes(b);\n\t\treturn false;\n\t},\n\tendsWith: (a: string, b: string) => a.endsWith(b),\n\tstartsWith: (a: string, b: string) => a.startsWith(b),\n\teq: <T>(a: T, b: T) => a === b,\n\tgt: (a, b) => a > b,\n\tgte: (a, b) => a >= b,\n\tin: <I, T extends I extends never[] ? unknown[] : I extends unknown[] ? I : I[]>(a: I, b: T) =>\n\t\t(Array.isArray(a) ? a : [a]).some((v) => b.includes(v)),\n\tlt: (a, b) => a < b,\n\tlte: (a, b) => a <= b,\n\tneq: <T>(a: T, b: T) => a !== b,\n\tnotIn: (a, b) => (Array.isArray(a) ? a : [a]).every((v) => !b.includes(v)),\n} satisfies ChimeraOperatorMap;\n\nexport const chimeraDefaultFilterConfig = {\n\tgetFilterKey: chimeraDefaultGetKeyFromFilter,\n\tgetOperatorKey: getKeyFromOperation,\n\toperators: chimeraDefaultFilterOperators,\n} satisfies ChimeraFilterConfig<typeof chimeraDefaultFilterOperators>;\n","import { ChimeraOrderTypeComparisonError } from \"./errors.ts\";\nimport type { ChimeraKeyFromOrderGetter, ChimeraOrderConfig, ChimeraPrimitiveComparator } from \"./types.ts\";\n\nexport const chimeraDefaultComparator: ChimeraPrimitiveComparator = (a: unknown, b: unknown): number => {\n\tlet result = 0;\n\n\tif (typeof a === \"string\" && typeof b === \"string\") {\n\t\tresult = a.localeCompare(b);\n\t} else if ((typeof a === \"number\" && typeof b === \"number\") || (typeof a === \"boolean\" && typeof b === \"boolean\")) {\n\t\tresult = (a as number) - (b as number);\n\t} else if (a instanceof Date && b instanceof Date) {\n\t\tresult = a.getTime() - b.getTime();\n\t} else if (a == null || b == null) {\n\t\t// biome-ignore lint/suspicious/noDoubleEquals: At least one of the operands should be null or undefined. If one of them is null and the other is undefined, we should get true.\n\t\tresult = a == b ? 0 : a == null ? -1 : 1;\n\t} else {\n\t\tthrow new ChimeraOrderTypeComparisonError(a, b);\n\t}\n\treturn result;\n};\n\nexport const chimeraDefaultKeyFromOrder: ChimeraKeyFromOrderGetter = (order): string => JSON.stringify(order);\n\nexport const chimeraDefaultOrderConfig = {\n\tgetKey: chimeraDefaultKeyFromOrder,\n\tprimitiveComparator: chimeraDefaultComparator,\n} satisfies Required<ChimeraOrderConfig>;\n","import type { chimeraDefaultFilterOperators } from \"../filter/defaults\";\nimport type { ChimeraEntityMap } from \"../shared/types.ts\";\nimport { ChimeraQueryNotSpecifiedError } from \"./errors.ts\";\nimport type { ChimeraQueryConfig, ChimeraQueryDefaultsConfig } from \"./types.ts\";\n\nexport const chimeraDefaultQueryConfig = {\n\tdefaults: {\n\t\tbatchedCreator: (entity: string) => {\n\t\t\tthrow new ChimeraQueryNotSpecifiedError(entity, \"batchedCreator\");\n\t\t},\n\t\tbatchedDeleter: (entity: string) => {\n\t\t\tthrow new ChimeraQueryNotSpecifiedError(entity, \"batchedDeleter\");\n\t\t},\n\t\tbatchedUpdater: (entity: string) => {\n\t\t\tthrow new ChimeraQueryNotSpecifiedError(entity, \"batchedUpdater\");\n\t\t},\n\n\t\tcollectionFetcher: (entity: string) => {\n\t\t\tthrow new ChimeraQueryNotSpecifiedError(entity, \"collectionFetcher\");\n\t\t},\n\n\t\tidGetter: (entity: string) => {\n\t\t\tthrow new ChimeraQueryNotSpecifiedError(entity, \"idGetter\");\n\t\t},\n\n\t\titemCreator: (entity: string) => {\n\t\t\tthrow new ChimeraQueryNotSpecifiedError(entity, \"itemCreator\");\n\t\t},\n\n\t\titemDeleter: (entity: string) => {\n\t\t\tthrow new ChimeraQueryNotSpecifiedError(entity, \"itemDeleter\");\n\t\t},\n\t\titemFetcher: (entity: string) => {\n\t\t\tthrow new ChimeraQueryNotSpecifiedError(entity, \"itemFetcher\");\n\t\t},\n\n\t\titemUpdater: (entity: string) => {\n\t\t\tthrow new ChimeraQueryNotSpecifiedError(entity, \"itemUpdater\");\n\t\t},\n\t\ttrustQuery: true,\n\t\tupdateDebounceTimeout: 0,\n\t} as Required<ChimeraQueryDefaultsConfig<ChimeraEntityMap, typeof chimeraDefaultFilterOperators>>,\n\tentities: {},\n} satisfies ChimeraQueryConfig<ChimeraEntityMap, typeof chimeraDefaultFilterOperators>;\n"],"mappings":"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"}
|
package/dist/defaults.cjs
CHANGED
|
@@ -18,4 +18,5 @@ exports.chimeraDefaultKeyFromOrder = require_defaults.chimeraDefaultKeyFromOrder
|
|
|
18
18
|
exports.chimeraDefaultOrderConfig = require_defaults.chimeraDefaultOrderConfig;
|
|
19
19
|
exports.chimeraDefaultQueryConfig = require_defaults.chimeraDefaultQueryConfig;
|
|
20
20
|
exports.chimeraDefaultStoreConfig = chimeraDefaultStoreConfig;
|
|
21
|
-
exports.getKeyFromOperation = require_defaults.getKeyFromOperation;
|
|
21
|
+
exports.getKeyFromOperation = require_defaults.getKeyFromOperation;
|
|
22
|
+
//# sourceMappingURL=defaults.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaults.cjs","names":["chimeraDefaultDebugConfig","chimeraDefaultFilterConfig","chimeraDefaultOrderConfig","chimeraDefaultQueryConfig"],"sources":["../src/store/defaults.ts"],"sourcesContent":["import { chimeraDefaultDebugConfig } from \"../debug/defaults.ts\";\nimport { chimeraDefaultFilterConfig, type chimeraDefaultFilterOperators } from \"../filter/defaults.ts\";\nimport { chimeraDefaultOrderConfig } from \"../order/defaults.ts\";\nimport { chimeraDefaultQueryConfig } from \"../query/defaults.ts\";\nimport type { ChimeraEntityMap } from \"../shared/types.ts\";\nimport type { ChimeraStoreConfig } from \"./types.ts\";\n\nexport const chimeraDefaultStoreConfig = {\n\tdebug: chimeraDefaultDebugConfig,\n\tfilter: chimeraDefaultFilterConfig,\n\torder: chimeraDefaultOrderConfig,\n\tquery: chimeraDefaultQueryConfig,\n} satisfies ChimeraStoreConfig<ChimeraEntityMap, typeof chimeraDefaultFilterOperators>;\n"],"mappings":";;;AAOA,MAAa,4BAA4B;CACxC,OAAOA;CACP,QAAQC;CACR,OAAOC;CACP,OAAOC;CACP"}
|
package/dist/defaults.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Dt as getKeyFromOperation, Et as chimeraDefaultGetKeyFromFilter, Ft as ChimeraKeyFromFilterGetter, It as ChimeraKeyFromOperatorGetter, St as ChimeraPrimitiveComparator, Tt as chimeraDefaultFilterOperators, Wt as ChimeraEntityMap, Z as ChimeraQueryDefaultsConfig, gt as ChimeraKeyFromOrderGetter, wt as chimeraDefaultFilterConfig } from "./index-CkaYmEhA.cjs";
|
|
2
2
|
|
|
3
3
|
//#region src/debug/defaults.d.ts
|
|
4
4
|
declare const chimeraDefaultDebugConfig: {
|
package/dist/defaults.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.d.cts","names":[],"sources":["
|
|
1
|
+
{"version":3,"file":"defaults.d.cts","names":[],"sources":["../src/debug/defaults.ts","../src/order/defaults.ts","../src/query/defaults.ts","../src/store/defaults.ts"],"sourcesContent":[],"mappings":";;;cAEa;;;EAAA,IAAA,EAAA,MAAA;;;;cCCA,0BAA0B;cAkB1B,4BAA4B;ADnB5B,cCqBA,yBDjB2B,EAAA;UCoBA;uBAAA;;;;ADxB3B,cEGA,yBFC2B,EAAA;YEmClC,SAAS,2BAA2B,yBAAyB;;;;;cClCtD;EHLA,KAAA,EAAA;;;;ECCA,CAAA;EAkBA,MAAA,EAAA;IAEA,YAAA,EEXyE,0BFc9C;;;;MCrB3B,QAAA,EAAA,CAAA,CAAA,EAAA,MAsCyE,EAAA,CAAA,EAAA,MAAA,EAAA,GAAA,OAAA;MAF5C,UAAA,EAAA,CAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,MAAA,EAAA,GAAA,OAAA;MAAyB,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,EAAA,CAAA,GAAA,EAAA,GAAA,OAAA;MAApD,EAAA,EAAA,CAAA,CAAA,EAAA,GAAA,EAAA,CAAA,EAAA,GAAA,EAAA,GAAA,OAAA;MAAT,GAAA,EAAA,CAAA,CAAA,EAAA,GAAA,EAAA,CAAA,EAAA,GAAA,EAAA,GAAA,OAAA;MAAQ,EAAA,EAAA,CAAA,CAAA,EAAA,YAAA,SAAA,KAAA,EAAA,GAAA,OAAA,EAAA,IAAA,SAAA,OAAA,EAAA,IAAA,IAAA,EAAA,EAAA,CAAA,CAAA,GAAA,EAAA,CAAA,GAAA,EAAA,GAAA,OAAA;;;;MClCD,KAAA,EAAA,CAAA,CAAA,EAAA,GAAA,EAAA,CAAA,EAAA,GAKyE,EAAA,GAAA,OAAA;IAAA,CAAA"}
|
package/dist/defaults.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Dt as getKeyFromOperation, Et as chimeraDefaultGetKeyFromFilter, Ft as ChimeraKeyFromFilterGetter, It as ChimeraKeyFromOperatorGetter, St as ChimeraPrimitiveComparator, Tt as chimeraDefaultFilterOperators, Wt as ChimeraEntityMap, Z as ChimeraQueryDefaultsConfig, gt as ChimeraKeyFromOrderGetter, wt as chimeraDefaultFilterConfig } from "./index-CTTQ1Hr3.js";
|
|
2
2
|
|
|
3
3
|
//#region src/debug/defaults.d.ts
|
|
4
4
|
declare const chimeraDefaultDebugConfig: {
|
package/dist/defaults.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.d.ts","names":[],"sources":["
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","names":[],"sources":["../src/debug/defaults.ts","../src/order/defaults.ts","../src/query/defaults.ts","../src/store/defaults.ts"],"sourcesContent":[],"mappings":";;;cAEa;;;EAAA,IAAA,EAAA,MAAA;;;;cCCA,0BAA0B;cAkB1B,4BAA4B;ADnB5B,cCqBA,yBDjB2B,EAAA;UCoBA;uBAAA;;;;ADxB3B,cEGA,yBFC2B,EAAA;YEmClC,SAAS,2BAA2B,yBAAyB;;;;;cClCtD;EHLA,KAAA,EAAA;;;;ECCA,CAAA;EAkBA,MAAA,EAAA;IAEA,YAAA,EEXyE,0BFc9C;;;;MCrB3B,QAAA,EAAA,CAAA,CAAA,EAAA,MAsCyE,EAAA,CAAA,EAAA,MAAA,EAAA,GAAA,OAAA;MAF5C,UAAA,EAAA,CAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,MAAA,EAAA,GAAA,OAAA;MAAyB,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,EAAA,CAAA,GAAA,EAAA,GAAA,OAAA;MAApD,EAAA,EAAA,CAAA,CAAA,EAAA,GAAA,EAAA,CAAA,EAAA,GAAA,EAAA,GAAA,OAAA;MAAT,GAAA,EAAA,CAAA,CAAA,EAAA,GAAA,EAAA,CAAA,EAAA,GAAA,EAAA,GAAA,OAAA;MAAQ,EAAA,EAAA,CAAA,CAAA,EAAA,YAAA,SAAA,KAAA,EAAA,GAAA,OAAA,EAAA,IAAA,SAAA,OAAA,EAAA,IAAA,IAAA,EAAA,EAAA,CAAA,CAAA,GAAA,EAAA,CAAA,GAAA,EAAA,GAAA,OAAA;;;;MClCD,KAAA,EAAA,CAAA,CAAA,EAAA,GAAA,EAAA,CAAA,EAAA,GAKyE,EAAA,GAAA,OAAA;IAAA,CAAA"}
|