@declaro/data 2.0.0-beta.14 → 2.0.0-beta.140
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{LICENSE → LICENSE.md} +1 -1
- package/README.md +0 -0
- package/dist/browser/index.js +26 -0
- package/dist/browser/index.js.map +93 -0
- package/dist/node/index.cjs +13372 -0
- package/dist/node/index.cjs.map +93 -0
- package/dist/node/index.js +13351 -0
- package/dist/node/index.js.map +93 -0
- package/dist/ts/application/model-controller.d.ts +60 -0
- package/dist/ts/application/model-controller.d.ts.map +1 -0
- package/dist/ts/application/model-controller.test.d.ts +2 -0
- package/dist/ts/application/model-controller.test.d.ts.map +1 -0
- package/dist/ts/application/read-only-model-controller.d.ts +24 -0
- package/dist/ts/application/read-only-model-controller.d.ts.map +1 -0
- package/dist/ts/application/read-only-model-controller.test.d.ts +2 -0
- package/dist/ts/application/read-only-model-controller.test.d.ts.map +1 -0
- package/dist/ts/domain/events/domain-event.d.ts +41 -0
- package/dist/ts/domain/events/domain-event.d.ts.map +1 -0
- package/dist/ts/domain/events/domain-event.test.d.ts +2 -0
- package/dist/ts/domain/events/domain-event.test.d.ts.map +1 -0
- package/dist/ts/domain/events/event-types.d.ts +37 -0
- package/dist/ts/domain/events/event-types.d.ts.map +1 -0
- package/dist/ts/domain/events/mutation-event.d.ts +41 -0
- package/dist/ts/domain/events/mutation-event.d.ts.map +1 -0
- package/dist/ts/domain/events/mutation-event.test.d.ts +2 -0
- package/dist/ts/domain/events/mutation-event.test.d.ts.map +1 -0
- package/dist/ts/domain/events/query-event.d.ts +8 -0
- package/dist/ts/domain/events/query-event.d.ts.map +1 -0
- package/dist/ts/domain/events/query-event.test.d.ts +2 -0
- package/dist/ts/domain/events/query-event.test.d.ts.map +1 -0
- package/dist/ts/domain/events/request-event.d.ts +26 -0
- package/dist/ts/domain/events/request-event.d.ts.map +1 -0
- package/dist/ts/domain/events/request-event.test.d.ts +2 -0
- package/dist/ts/domain/events/request-event.test.d.ts.map +1 -0
- package/dist/ts/domain/interfaces/repository.d.ts +110 -0
- package/dist/ts/domain/interfaces/repository.d.ts.map +1 -0
- package/dist/ts/domain/models/pagination.d.ts +28 -0
- package/dist/ts/domain/models/pagination.d.ts.map +1 -0
- package/dist/ts/domain/services/base-model-service.d.ts +23 -0
- package/dist/ts/domain/services/base-model-service.d.ts.map +1 -0
- package/dist/ts/domain/services/model-service-args.d.ts +9 -0
- package/dist/ts/domain/services/model-service-args.d.ts.map +1 -0
- package/dist/ts/domain/services/model-service.d.ts +99 -0
- package/dist/ts/domain/services/model-service.d.ts.map +1 -0
- package/dist/ts/domain/services/model-service.normalization.test.d.ts +2 -0
- package/dist/ts/domain/services/model-service.normalization.test.d.ts.map +1 -0
- package/dist/ts/domain/services/model-service.test.d.ts +2 -0
- package/dist/ts/domain/services/model-service.test.d.ts.map +1 -0
- package/dist/ts/domain/services/read-only-model-service.d.ts +90 -0
- package/dist/ts/domain/services/read-only-model-service.d.ts.map +1 -0
- package/dist/ts/domain/services/read-only-model-service.test.d.ts +2 -0
- package/dist/ts/domain/services/read-only-model-service.test.d.ts.map +1 -0
- package/dist/ts/index.d.ts +18 -0
- package/dist/ts/index.d.ts.map +1 -0
- package/dist/ts/shared/utils/schema-inference.d.ts +23 -0
- package/dist/ts/shared/utils/schema-inference.d.ts.map +1 -0
- package/dist/ts/shared/utils/schema-inheritance.d.ts +24 -0
- package/dist/ts/shared/utils/schema-inheritance.d.ts.map +1 -0
- package/dist/ts/shared/utils/schema-inheritance.test.d.ts +2 -0
- package/dist/ts/shared/utils/schema-inheritance.test.d.ts.map +1 -0
- package/dist/ts/shared/utils/test/animal-schema.d.ts +57 -0
- package/dist/ts/shared/utils/test/animal-schema.d.ts.map +1 -0
- package/dist/ts/shared/utils/test/animal-trait-schema.d.ts +55 -0
- package/dist/ts/shared/utils/test/animal-trait-schema.d.ts.map +1 -0
- package/dist/ts/shared/utils/test/elephant-schema.d.ts +30 -0
- package/dist/ts/shared/utils/test/elephant-schema.d.ts.map +1 -0
- package/dist/ts/shared/utils/test/elephant-trait-schema.d.ts +26 -0
- package/dist/ts/shared/utils/test/elephant-trait-schema.d.ts.map +1 -0
- package/dist/ts/test/mock/models/mock-book-models.d.ts +42 -0
- package/dist/ts/test/mock/models/mock-book-models.d.ts.map +1 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.assign.test.d.ts +2 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.assign.test.d.ts.map +1 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.basic.test.d.ts +2 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.basic.test.d.ts.map +1 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.bulk-upsert.test.d.ts +2 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.bulk-upsert.test.d.ts.map +1 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.count.test.d.ts +2 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.count.test.d.ts.map +1 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.d.ts +62 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.d.ts.map +1 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.search.test.d.ts +2 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.search.test.d.ts.map +1 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.trash.test.d.ts +2 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.trash.test.d.ts.map +1 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.upsert.test.d.ts +2 -0
- package/dist/ts/test/mock/repositories/mock-memory-repository.upsert.test.d.ts.map +1 -0
- package/package.json +46 -42
- package/src/application/model-controller.test.ts +694 -0
- package/src/application/model-controller.ts +186 -0
- package/src/application/read-only-model-controller.test.ts +335 -0
- package/src/application/read-only-model-controller.ts +79 -0
- package/src/domain/events/domain-event.test.ts +82 -0
- package/src/domain/events/domain-event.ts +69 -0
- package/src/domain/events/event-types.ts +37 -0
- package/src/domain/events/mutation-event.test.ts +390 -0
- package/src/domain/events/mutation-event.ts +53 -0
- package/src/domain/events/query-event.test.ts +228 -0
- package/src/domain/events/query-event.ts +14 -0
- package/src/domain/events/request-event.test.ts +38 -0
- package/src/domain/events/request-event.ts +47 -0
- package/src/domain/interfaces/repository.ts +136 -0
- package/src/domain/models/pagination.ts +28 -0
- package/src/domain/services/base-model-service.ts +54 -0
- package/src/domain/services/model-service-args.ts +9 -0
- package/src/domain/services/model-service.normalization.test.ts +704 -0
- package/src/domain/services/model-service.test.ts +1616 -0
- package/src/domain/services/model-service.ts +597 -0
- package/src/domain/services/read-only-model-service.test.ts +1130 -0
- package/src/domain/services/read-only-model-service.ts +211 -0
- package/src/index.ts +17 -4
- package/src/shared/utils/schema-inference.ts +26 -0
- package/src/shared/utils/schema-inheritance.test.ts +295 -0
- package/src/shared/utils/schema-inheritance.ts +28 -0
- package/src/shared/utils/test/animal-schema.ts +46 -0
- package/src/shared/utils/test/animal-trait-schema.ts +45 -0
- package/src/shared/utils/test/elephant-schema.ts +58 -0
- package/src/shared/utils/test/elephant-trait-schema.ts +53 -0
- package/src/test/mock/models/mock-book-models.ts +78 -0
- package/src/test/mock/repositories/mock-memory-repository.assign.test.ts +215 -0
- package/src/test/mock/repositories/mock-memory-repository.basic.test.ts +129 -0
- package/src/test/mock/repositories/mock-memory-repository.bulk-upsert.test.ts +159 -0
- package/src/test/mock/repositories/mock-memory-repository.count.test.ts +98 -0
- package/src/test/mock/repositories/mock-memory-repository.search.test.ts +265 -0
- package/src/test/mock/repositories/mock-memory-repository.trash.test.ts +736 -0
- package/src/test/mock/repositories/mock-memory-repository.ts +401 -0
- package/src/test/mock/repositories/mock-memory-repository.upsert.test.ts +108 -0
- package/dist/databaseConnection.d.ts +0 -24
- package/dist/datastoreAbstract.d.ts +0 -37
- package/dist/declaro-data.cjs +0 -1
- package/dist/declaro-data.mjs +0 -250
- package/dist/hydrateEntity.d.ts +0 -8
- package/dist/index.d.ts +0 -4
- package/dist/serverConnection.d.ts +0 -15
- package/dist/trackedStatus.d.ts +0 -15
- package/src/databaseConnection.ts +0 -137
- package/src/datastoreAbstract.ts +0 -190
- package/src/hydrateEntity.ts +0 -36
- package/src/placeholder.test.ts +0 -7
- package/src/serverConnection.ts +0 -74
- package/src/trackedStatus.ts +0 -35
- package/tsconfig.json +0 -10
- package/vite.config.ts +0 -23
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-service.d.ts","sourceRoot":"","sources":["../../../../src/domain/services/model-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-service.normalization.test.d.ts","sourceRoot":"","sources":["../../../../src/domain/services/model-service.normalization.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-service.test.d.ts","sourceRoot":"","sources":["../../../../src/domain/services/model-service.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import type { AnyModelSchema } from '@declaro/core';
|
|
2
|
+
import type { InferDetail, InferFilters, InferLookup, InferSearchResults, InferSort, InferSummary } from '../../shared/utils/schema-inference';
|
|
3
|
+
import { BaseModelService, type IActionOptions } from './base-model-service';
|
|
4
|
+
import type { IPaginationInput } from '../models/pagination';
|
|
5
|
+
/**
|
|
6
|
+
* Options for loading records.
|
|
7
|
+
*/
|
|
8
|
+
export interface ILoadOptions extends IActionOptions {
|
|
9
|
+
/**
|
|
10
|
+
* If true, only removed (soft-deleted) records will be returned.
|
|
11
|
+
*/
|
|
12
|
+
removedOnly?: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* If true, both removed and non-removed records will be returned.
|
|
15
|
+
*/
|
|
16
|
+
includeRemoved?: boolean;
|
|
17
|
+
/**
|
|
18
|
+
* If true, skips dispatching events for this action.
|
|
19
|
+
*/
|
|
20
|
+
doNotDispatchEvents?: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* If true, bypasses any caching mechanism and forces fresh data retrieval from the repository.
|
|
23
|
+
*
|
|
24
|
+
* Use with caution, as this may have performance implications. This option is typically used in scenarios where data consistency is critical and the latest data must be retrieved, such as after a known update or in real-time applications.
|
|
25
|
+
*/
|
|
26
|
+
noCache?: boolean;
|
|
27
|
+
}
|
|
28
|
+
export interface ISearchOptions<TSchema extends AnyModelSchema> extends IActionOptions {
|
|
29
|
+
pagination?: IPaginationInput;
|
|
30
|
+
sort?: InferSort<TSchema>;
|
|
31
|
+
/**
|
|
32
|
+
* If true, only removed (soft-deleted) records will be returned.
|
|
33
|
+
*/
|
|
34
|
+
removedOnly?: boolean;
|
|
35
|
+
/**
|
|
36
|
+
* If true, both removed and non-removed records will be returned.
|
|
37
|
+
*/
|
|
38
|
+
includeRemoved?: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* If true, skips dispatching events for this action.
|
|
41
|
+
*/
|
|
42
|
+
doNotDispatchEvents?: boolean;
|
|
43
|
+
}
|
|
44
|
+
export declare class ReadOnlyModelService<TSchema extends AnyModelSchema> extends BaseModelService<TSchema> {
|
|
45
|
+
/**
|
|
46
|
+
* Normalize the detail data to match the expected schema.
|
|
47
|
+
* WARNING: This method is called once per detail in load operations.
|
|
48
|
+
* Any intensive operations or queries should be avoided here, and done via bulk operations in the respective methods such as `loadMany` instead.
|
|
49
|
+
* @param detail The detail data to normalize.
|
|
50
|
+
* @returns The normalized detail data.
|
|
51
|
+
*/
|
|
52
|
+
normalizeDetail(detail: InferDetail<TSchema>): Promise<InferDetail<TSchema>>;
|
|
53
|
+
/**
|
|
54
|
+
* Normalize the summary data to match the expected schema.
|
|
55
|
+
* WARNING: This method is called once per summary in search results, often in parallel.
|
|
56
|
+
* Any intensive operations or queries should be avoided here, and done via bulk operations in the respective methods such as `search` instead.
|
|
57
|
+
*
|
|
58
|
+
* @param summary The summary data to normalize.
|
|
59
|
+
* @returns The normalized summary data.
|
|
60
|
+
*/
|
|
61
|
+
normalizeSummary(summary: InferSummary<TSchema>): Promise<InferSummary<TSchema>>;
|
|
62
|
+
/**
|
|
63
|
+
* Load a single record by its lookup criteria.
|
|
64
|
+
* @param lookup The lookup criteria to find the record.
|
|
65
|
+
* @param options Additional options for the load operation.
|
|
66
|
+
* @returns The loaded record details.
|
|
67
|
+
*/
|
|
68
|
+
load(lookup: InferLookup<TSchema>, options?: ILoadOptions): Promise<InferDetail<TSchema>>;
|
|
69
|
+
/**
|
|
70
|
+
* Load multiple records by their lookup criteria.
|
|
71
|
+
* @param lookups The lookup criteria to find the records.
|
|
72
|
+
* @param options Additional options for the load operation.
|
|
73
|
+
* @returns An array of loaded record details.
|
|
74
|
+
*/
|
|
75
|
+
loadMany(lookups: InferLookup<TSchema>[], options?: ILoadOptions): Promise<InferDetail<TSchema>[]>;
|
|
76
|
+
/**
|
|
77
|
+
* Search for records matching the given filters.
|
|
78
|
+
* @param filters The filters to apply to the search.
|
|
79
|
+
* @param options Additional options for the search operation.
|
|
80
|
+
* @returns The search results.
|
|
81
|
+
*/
|
|
82
|
+
search(filters: InferFilters<TSchema>, options?: ISearchOptions<TSchema>): Promise<InferSearchResults<TSchema>>;
|
|
83
|
+
/**
|
|
84
|
+
* Count the number of records matching the given filters.
|
|
85
|
+
* @param filters The filters to apply to the count operation.
|
|
86
|
+
* @returns The count of matching records.
|
|
87
|
+
*/
|
|
88
|
+
count(filters: InferFilters<TSchema>, options?: ISearchOptions<TSchema>): Promise<number>;
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=read-only-model-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-only-model-service.d.ts","sourceRoot":"","sources":["../../../../src/domain/services/read-only-model-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAS,MAAM,eAAe,CAAA;AAC1D,OAAO,KAAK,EACR,WAAW,EACX,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,SAAS,EACT,YAAY,EACf,MAAM,qCAAqC,CAAA;AAG5C,OAAO,EAAE,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAE5D;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,cAAc;IAChD;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IAExB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAE7B;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;CACpB;AACD,MAAM,WAAW,cAAc,CAAC,OAAO,SAAS,cAAc,CAAE,SAAQ,cAAc;IAClF,UAAU,CAAC,EAAE,gBAAgB,CAAA;IAC7B,IAAI,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;IACzB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAChC;AAED,qBAAa,oBAAoB,CAAC,OAAO,SAAS,cAAc,CAAE,SAAQ,gBAAgB,CAAC,OAAO,CAAC;IAC/F;;;;;;OAMG;IACG,eAAe,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAIlF;;;;;;;OAOG;IACG,gBAAgB,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAItF;;;;;OAKG;IACG,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAyB/F;;;;;OAKG;IACG,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;IAyBxG;;;;;OAKG;IACG,MAAM,CACR,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,EAC9B,OAAO,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAClC,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IA6BvC;;;;OAIG;IACG,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;CAyBlG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-only-model-service.test.d.ts","sourceRoot":"","sources":["../../../../src/domain/services/read-only-model-service.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export * from './application/model-controller';
|
|
2
|
+
export * from './application/read-only-model-controller';
|
|
3
|
+
export * from './domain/events/domain-event';
|
|
4
|
+
export * from './domain/events/event-types';
|
|
5
|
+
export * from './domain/events/mutation-event';
|
|
6
|
+
export * from './domain/events/query-event';
|
|
7
|
+
export * from './domain/events/request-event';
|
|
8
|
+
export * from './domain/interfaces/repository';
|
|
9
|
+
export * from './domain/models/pagination';
|
|
10
|
+
export * from './domain/services/base-model-service';
|
|
11
|
+
export * from './domain/services/model-service';
|
|
12
|
+
export * from './domain/services/model-service-args';
|
|
13
|
+
export * from './domain/services/read-only-model-service';
|
|
14
|
+
export * from './shared/utils/schema-inference';
|
|
15
|
+
export * from './shared/utils/schema-inheritance';
|
|
16
|
+
export * from './test/mock/models/mock-book-models';
|
|
17
|
+
export * from './test/mock/repositories/mock-memory-repository';
|
|
18
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAA;AAC9C,cAAc,0CAA0C,CAAA;AACxD,cAAc,8BAA8B,CAAA;AAC5C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,sCAAsC,CAAA;AACpD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,sCAAsC,CAAA;AACpD,cAAc,2CAA2C,CAAA;AACzD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,mCAAmC,CAAA;AACjD,cAAc,qCAAqC,CAAA;AACnD,cAAc,iDAAiD,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { AnyModelSchema, InferModelInput, InferModelOutput } from '@declaro/core';
|
|
2
|
+
import type { IPagination } from '../../domain/models/pagination';
|
|
3
|
+
export interface ISearchResults<T> {
|
|
4
|
+
results: T[];
|
|
5
|
+
pagination: IPagination;
|
|
6
|
+
}
|
|
7
|
+
export type InferLookup<TSchema extends AnyModelSchema> = InferModelInput<TSchema['definition']['lookup']>;
|
|
8
|
+
export type InferDetail<TSchema extends AnyModelSchema> = InferModelOutput<TSchema['definition']['detail']>;
|
|
9
|
+
export type InferFilters<TSchema extends AnyModelSchema> = InferModelInput<TSchema['definition']['filters']>;
|
|
10
|
+
export type InferSummary<TSchema extends AnyModelSchema> = InferModelOutput<TSchema['definition']['summary']>;
|
|
11
|
+
export type InferSort<TSchema extends AnyModelSchema> = InferModelInput<TSchema['definition']['sort']>;
|
|
12
|
+
export type InferInput<TSchema extends AnyModelSchema> = InferModelInput<TSchema['definition']['input']>;
|
|
13
|
+
export type InferSearchResults<TSchema extends AnyModelSchema> = ISearchResults<InferSummary<TSchema>>;
|
|
14
|
+
export type InferEntityMetadata<TSchema extends AnyModelSchema> = ReturnType<TSchema['getEntityMetadata']>;
|
|
15
|
+
export type InferPrimaryKeyType<TSchema extends AnyModelSchema> = InferLookup<TSchema>[InferEntityMetadata<TSchema>['primaryKey']];
|
|
16
|
+
export type InferSummarySchema<TSchema extends AnyModelSchema> = TSchema['definition']['summary']['schema'];
|
|
17
|
+
export type InferDetailSchema<TSchema extends AnyModelSchema> = TSchema['definition']['detail']['schema'];
|
|
18
|
+
export type InferLookupSchema<TSchema extends AnyModelSchema> = TSchema['definition']['lookup']['schema'];
|
|
19
|
+
export type InferInputSchema<TSchema extends AnyModelSchema> = TSchema['definition']['input']['schema'];
|
|
20
|
+
export type InferFiltersSchema<TSchema extends AnyModelSchema> = TSchema['definition']['filters']['schema'];
|
|
21
|
+
export type InferSortSchema<TSchema extends AnyModelSchema> = TSchema['definition']['sort']['schema'];
|
|
22
|
+
export type InferSearchResultsSchema<TSchema extends AnyModelSchema> = TSchema['definition']['search']['schema'];
|
|
23
|
+
//# sourceMappingURL=schema-inference.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-inference.d.ts","sourceRoot":"","sources":["../../../../src/shared/utils/schema-inference.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACtF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAA;AAEjE,MAAM,WAAW,cAAc,CAAC,CAAC;IAC7B,OAAO,EAAE,CAAC,EAAE,CAAA;IACZ,UAAU,EAAE,WAAW,CAAA;CAC1B;AAED,MAAM,MAAM,WAAW,CAAC,OAAO,SAAS,cAAc,IAAI,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA;AAC1G,MAAM,MAAM,WAAW,CAAC,OAAO,SAAS,cAAc,IAAI,gBAAgB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA;AAC3G,MAAM,MAAM,YAAY,CAAC,OAAO,SAAS,cAAc,IAAI,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;AAC5G,MAAM,MAAM,YAAY,CAAC,OAAO,SAAS,cAAc,IAAI,gBAAgB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;AAC7G,MAAM,MAAM,SAAS,CAAC,OAAO,SAAS,cAAc,IAAI,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;AACtG,MAAM,MAAM,UAAU,CAAC,OAAO,SAAS,cAAc,IAAI,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;AACxG,MAAM,MAAM,kBAAkB,CAAC,OAAO,SAAS,cAAc,IAAI,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAA;AACtG,MAAM,MAAM,mBAAmB,CAAC,OAAO,SAAS,cAAc,IAAI,UAAU,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAA;AAC1G,MAAM,MAAM,mBAAmB,CAAC,OAAO,SAAS,cAAc,IAC1D,WAAW,CAAC,OAAO,CAAC,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAA;AAEpE,MAAM,MAAM,kBAAkB,CAAC,OAAO,SAAS,cAAc,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAA;AAC3G,MAAM,MAAM,iBAAiB,CAAC,OAAO,SAAS,cAAc,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAA;AACzG,MAAM,MAAM,iBAAiB,CAAC,OAAO,SAAS,cAAc,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAA;AACzG,MAAM,MAAM,gBAAgB,CAAC,OAAO,SAAS,cAAc,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAA;AACvG,MAAM,MAAM,kBAAkB,CAAC,OAAO,SAAS,cAAc,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAA;AAC3G,MAAM,MAAM,eAAe,CAAC,OAAO,SAAS,cAAc,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAA;AACrG,MAAM,MAAM,wBAAwB,CAAC,OAAO,SAAS,cAAc,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { AnyModelSchema, Model, ModelSchema } from '@declaro/core';
|
|
2
|
+
import type { InferEntityMetadata } from './schema-inference';
|
|
3
|
+
/**
|
|
4
|
+
* Represents a child schema that inherits from a parent schema.
|
|
5
|
+
* This is useful for creating schemas that extend the functionality of an existing schema.
|
|
6
|
+
* It replaces the schema name and all model names with a string type.
|
|
7
|
+
*
|
|
8
|
+
* @warning This type is intended for use in generic types. In most cases, you should use concrete schemas for inheritance for best type inference.
|
|
9
|
+
*
|
|
10
|
+
* @template TSchema - The parent schema type.
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { ModelSchema, ChildSchema } from '@declaro/core';
|
|
14
|
+
*
|
|
15
|
+
* export class ParentService<TSchema extends ChildSchema<typeof ParentSchema>> extends ModelService<TSchema> {
|
|
16
|
+
* constructor(args: IModelServiceArgs<TSchema>) {
|
|
17
|
+
* super(args);
|
|
18
|
+
* }
|
|
19
|
+
* }
|
|
20
|
+
*/
|
|
21
|
+
export type ChildSchema<TSchema extends AnyModelSchema> = ModelSchema<string, {
|
|
22
|
+
[K in keyof TSchema['definition']]: Model<string, TSchema['definition'][K]['schema']>;
|
|
23
|
+
}, InferEntityMetadata<TSchema>>;
|
|
24
|
+
//# sourceMappingURL=schema-inheritance.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-inheritance.d.ts","sourceRoot":"","sources":["../../../../src/shared/utils/schema-inheritance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AACvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAE7D;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,WAAW,CAAC,OAAO,SAAS,cAAc,IAAI,WAAW,CACjE,MAAM,EACN;KACK,CAAC,IAAI,MAAM,OAAO,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;CACxF,EACD,mBAAmB,CAAC,OAAO,CAAC,CAC/B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-inheritance.test.d.ts","sourceRoot":"","sources":["../../../../src/shared/utils/schema-inheritance.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { ModelSchema } from '@declaro/core';
|
|
2
|
+
import { ZodModel } from '@declaro/zod';
|
|
3
|
+
import z4 from 'zod/v4';
|
|
4
|
+
export declare const AnimalDetailSchema: z4.ZodObject<{
|
|
5
|
+
name: z4.ZodString;
|
|
6
|
+
sound: z4.ZodString;
|
|
7
|
+
traits: z4.ZodArray<z4.ZodObject<{
|
|
8
|
+
title: z4.ZodString;
|
|
9
|
+
description: z4.ZodString;
|
|
10
|
+
animal: z4.ZodOptional<z4.ZodObject</*elided*/ any, z4.core.$strip>>;
|
|
11
|
+
}, z4.core.$strip>>;
|
|
12
|
+
}, z4.core.$strip>;
|
|
13
|
+
export declare const AnimalLookupSchema: z4.ZodObject<{
|
|
14
|
+
id: z4.ZodNumber;
|
|
15
|
+
}, z4.core.$strip>;
|
|
16
|
+
export declare const AnimalFiltersSchema: z4.ZodObject<{
|
|
17
|
+
text: z4.ZodOptional<z4.ZodString>;
|
|
18
|
+
sound: z4.ZodOptional<z4.ZodString>;
|
|
19
|
+
}, z4.core.$strip>;
|
|
20
|
+
export declare const AnimalSortSchema: z4.ZodArray<z4.ZodObject<import("@declaro/zod").SortObjectShape<"name" | "sound">, z4.core.$strip>>;
|
|
21
|
+
export declare const AnimalSummarySchema: z4.ZodObject<{
|
|
22
|
+
name: z4.ZodString;
|
|
23
|
+
sound: z4.ZodString;
|
|
24
|
+
traits: z4.ZodArray<z4.ZodObject<{
|
|
25
|
+
title: z4.ZodString;
|
|
26
|
+
animal: z4.ZodOptional<z4.ZodObject</*elided*/ any, z4.core.$strip>>;
|
|
27
|
+
}, z4.core.$strip>>;
|
|
28
|
+
}, z4.core.$strip>;
|
|
29
|
+
export declare const AnimalSchema: ModelSchema<"AnimalSchema", {
|
|
30
|
+
lookup: ZodModel<"AnimalLookup", z4.ZodObject<{
|
|
31
|
+
id: z4.ZodNumber;
|
|
32
|
+
}, z4.core.$strip>>;
|
|
33
|
+
detail: ZodModel<"AnimalDetail", z4.ZodObject<{
|
|
34
|
+
name: z4.ZodString;
|
|
35
|
+
sound: z4.ZodString;
|
|
36
|
+
traits: z4.ZodArray<z4.ZodObject<{
|
|
37
|
+
title: z4.ZodString;
|
|
38
|
+
description: z4.ZodString;
|
|
39
|
+
animal: z4.ZodOptional<z4.ZodObject</*elided*/ any, z4.core.$strip>>;
|
|
40
|
+
}, z4.core.$strip>>;
|
|
41
|
+
}, z4.core.$strip>>;
|
|
42
|
+
filters: ZodModel<"AnimalFilters", z4.ZodObject<{
|
|
43
|
+
text: z4.ZodOptional<z4.ZodString>;
|
|
44
|
+
sound: z4.ZodOptional<z4.ZodString>;
|
|
45
|
+
}, z4.core.$strip>>;
|
|
46
|
+
sort: ZodModel<"AnimalSort", z4.ZodArray<z4.ZodObject<import("@declaro/zod").SortObjectShape<"name" | "sound">, z4.core.$strip>>>;
|
|
47
|
+
summary: ZodModel<"AnimalSummary", z4.ZodObject<{
|
|
48
|
+
name: z4.ZodString;
|
|
49
|
+
sound: z4.ZodString;
|
|
50
|
+
traits: z4.ZodArray<z4.ZodObject<{
|
|
51
|
+
title: z4.ZodString;
|
|
52
|
+
animal: z4.ZodOptional<z4.ZodObject</*elided*/ any, z4.core.$strip>>;
|
|
53
|
+
}, z4.core.$strip>>;
|
|
54
|
+
}, z4.core.$strip>>;
|
|
55
|
+
}, undefined>;
|
|
56
|
+
export type IAnimalSchema = typeof AnimalSchema;
|
|
57
|
+
//# sourceMappingURL=animal-schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"animal-schema.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/test/animal-schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAa,QAAQ,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,MAAM,QAAQ,CAAA;AAGvB,eAAO,MAAM,kBAAkB;;;;;;;;kBAM7B,CAAA;AAEF,eAAO,MAAM,kBAAkB;;kBAE7B,CAAA;AAEF,eAAO,MAAM,mBAAmB;;;kBAG9B,CAAA;AAEF,eAAO,MAAM,gBAAgB,qGAA+B,CAAA;AAE5D,eAAO,MAAM,mBAAmB;;;;;;;kBAM9B,CAAA;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;aASnB,CAAA;AAEN,MAAM,MAAM,aAAa,GAAG,OAAO,YAAY,CAAA"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { ZodModel } from '@declaro/zod';
|
|
2
|
+
import { ModelSchema } from '@declaro/core';
|
|
3
|
+
import z4 from 'zod/v4';
|
|
4
|
+
export declare const AnimalTraitsDetailSchema: z4.ZodObject<{
|
|
5
|
+
title: z4.ZodString;
|
|
6
|
+
description: z4.ZodString;
|
|
7
|
+
animal: z4.ZodOptional<z4.ZodObject<{
|
|
8
|
+
name: z4.ZodString;
|
|
9
|
+
sound: z4.ZodString;
|
|
10
|
+
traits: z4.ZodArray<z4.ZodObject</*elided*/ any, z4.core.$strip>>;
|
|
11
|
+
}, z4.core.$strip>>;
|
|
12
|
+
}, z4.core.$strip>;
|
|
13
|
+
export declare const AnimalTraitsSummarySchema: z4.ZodObject<{
|
|
14
|
+
title: z4.ZodString;
|
|
15
|
+
animal: z4.ZodOptional<z4.ZodObject<{
|
|
16
|
+
name: z4.ZodString;
|
|
17
|
+
sound: z4.ZodString;
|
|
18
|
+
traits: z4.ZodArray<z4.ZodObject</*elided*/ any, z4.core.$strip>>;
|
|
19
|
+
}, z4.core.$strip>>;
|
|
20
|
+
}, z4.core.$strip>;
|
|
21
|
+
export declare const AnimalTraitsLookupSchema: z4.ZodObject<{
|
|
22
|
+
id: z4.ZodNumber;
|
|
23
|
+
}, z4.core.$strip>;
|
|
24
|
+
export declare const AnimalTraitsFiltersSchema: z4.ZodObject<{
|
|
25
|
+
text: z4.ZodOptional<z4.ZodString>;
|
|
26
|
+
}, z4.core.$strip>;
|
|
27
|
+
export declare const AnimalTraitsSortSchema: z4.ZodArray<z4.ZodObject<import("@declaro/zod").SortObjectShape<"title">, z4.core.$strip>>;
|
|
28
|
+
export declare const AnimalTraitsSchema: ModelSchema<"AnimalTraitsSchema", {
|
|
29
|
+
lookup: ZodModel<"AnimalTraitsLookup", z4.ZodObject<{
|
|
30
|
+
id: z4.ZodNumber;
|
|
31
|
+
}, z4.core.$strip>>;
|
|
32
|
+
detail: ZodModel<"AnimalTraitsDetail", z4.ZodObject<{
|
|
33
|
+
title: z4.ZodString;
|
|
34
|
+
description: z4.ZodString;
|
|
35
|
+
animal: z4.ZodOptional<z4.ZodObject<{
|
|
36
|
+
name: z4.ZodString;
|
|
37
|
+
sound: z4.ZodString;
|
|
38
|
+
traits: z4.ZodArray<z4.ZodObject</*elided*/ any, z4.core.$strip>>;
|
|
39
|
+
}, z4.core.$strip>>;
|
|
40
|
+
}, z4.core.$strip>>;
|
|
41
|
+
filters: ZodModel<"AnimalTraitsFilters", z4.ZodObject<{
|
|
42
|
+
text: z4.ZodOptional<z4.ZodString>;
|
|
43
|
+
}, z4.core.$strip>>;
|
|
44
|
+
sort: ZodModel<"AnimalTraitsSort", z4.ZodArray<z4.ZodObject<import("@declaro/zod").SortObjectShape<"title">, z4.core.$strip>>>;
|
|
45
|
+
summary: ZodModel<"AnimalTraitsSummary", z4.ZodObject<{
|
|
46
|
+
title: z4.ZodString;
|
|
47
|
+
animal: z4.ZodOptional<z4.ZodObject<{
|
|
48
|
+
name: z4.ZodString;
|
|
49
|
+
sound: z4.ZodString;
|
|
50
|
+
traits: z4.ZodArray<z4.ZodObject</*elided*/ any, z4.core.$strip>>;
|
|
51
|
+
}, z4.core.$strip>>;
|
|
52
|
+
}, z4.core.$strip>>;
|
|
53
|
+
}, undefined>;
|
|
54
|
+
export type IAnimalTraitSchema = typeof AnimalTraitsSchema;
|
|
55
|
+
//# sourceMappingURL=animal-trait-schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"animal-trait-schema.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/test/animal-trait-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,QAAQ,EAAE,MAAM,cAAc,CAAA;AAKlD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,MAAM,QAAQ,CAAA;AAEvB,eAAO,MAAM,wBAAwB;;;;;;;;kBAMnC,CAAA;AAEF,eAAO,MAAM,yBAAyB;;;;;;;kBAKpC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;kBAEnC,CAAA;AAEF,eAAO,MAAM,yBAAyB;;kBAEpC,CAAA;AAEF,eAAO,MAAM,sBAAsB,4FAAuB,CAAA;AAE1D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;aASzB,CAAA;AAEN,MAAM,MAAM,kBAAkB,GAAG,OAAO,kBAAkB,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import z4 from 'zod/v4';
|
|
2
|
+
import { ModelSchema } from '@declaro/core';
|
|
3
|
+
import { ZodModel } from '@declaro/zod';
|
|
4
|
+
export declare const ElephantDetailSchema: any;
|
|
5
|
+
export declare const ElephantSummarySchema: any;
|
|
6
|
+
export declare const ElephantLookupSchema: z4.ZodObject<{
|
|
7
|
+
id: z4.ZodNumber;
|
|
8
|
+
}, z4.core.$strip>;
|
|
9
|
+
export declare const ElephantFiltersSchema: z4.ZodObject<{
|
|
10
|
+
minTrunkLength: z4.ZodOptional<z4.ZodNumber>;
|
|
11
|
+
maxTrunkLength: z4.ZodOptional<z4.ZodNumber>;
|
|
12
|
+
text: z4.ZodOptional<z4.ZodString>;
|
|
13
|
+
sound: z4.ZodOptional<z4.ZodString>;
|
|
14
|
+
}, z4.core.$strip>;
|
|
15
|
+
export declare const ElephantSchema: ModelSchema<"ElephantSchema", {
|
|
16
|
+
lookup: ZodModel<"ElephantLookup", z4.ZodObject<{
|
|
17
|
+
id: z4.ZodNumber;
|
|
18
|
+
}, z4.core.$strip>>;
|
|
19
|
+
detail: ZodModel<"ElephantDetail", any>;
|
|
20
|
+
filters: ZodModel<"ElephantFilters", z4.ZodObject<{
|
|
21
|
+
minTrunkLength: z4.ZodOptional<z4.ZodNumber>;
|
|
22
|
+
maxTrunkLength: z4.ZodOptional<z4.ZodNumber>;
|
|
23
|
+
text: z4.ZodOptional<z4.ZodString>;
|
|
24
|
+
sound: z4.ZodOptional<z4.ZodString>;
|
|
25
|
+
}, z4.core.$strip>>;
|
|
26
|
+
sort: ZodModel<"ElephantSort", z4.ZodArray<z4.ZodObject<import("@declaro/zod").SortObjectShape<"name" | "sound">, z4.core.$strip>>>;
|
|
27
|
+
summary: ZodModel<"ElephantSummary", any>;
|
|
28
|
+
}, undefined>;
|
|
29
|
+
export type IElephantSchema = typeof ElephantSchema;
|
|
30
|
+
//# sourceMappingURL=elephant-schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"elephant-schema.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/test/elephant-schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,QAAQ,CAAA;AAQvB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAGvC,eAAO,MAAM,oBAAoB,KAY/B,CAAA;AAEF,eAAO,MAAM,qBAAqB,KAMhC,CAAA;AAEF,eAAO,MAAM,oBAAoB;;kBAE/B,CAAA;AAEF,eAAO,MAAM,qBAAqB;;;;;kBAIhC,CAAA;AAEF,eAAO,MAAM,cAAc;;;;;;;;;;;;;aASrB,CAAA;AAEN,MAAM,MAAM,eAAe,GAAG,OAAO,cAAc,CAAA"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import z4 from 'zod/v4';
|
|
2
|
+
import { ModelSchema } from '@declaro/core';
|
|
3
|
+
import { ZodModel } from '@declaro/zod';
|
|
4
|
+
export declare const ElephantTraitsDetailSchema: any;
|
|
5
|
+
export declare const ElephantTraitsSummarySchema: any;
|
|
6
|
+
export declare const ElephantTraitsLookupSchema: z4.ZodObject<{
|
|
7
|
+
id: z4.ZodNumber;
|
|
8
|
+
}, z4.core.$strip>;
|
|
9
|
+
export declare const ElephantTraitsFiltersSchema: z4.ZodObject<{
|
|
10
|
+
isSharp: z4.ZodOptional<z4.ZodBoolean>;
|
|
11
|
+
text: z4.ZodOptional<z4.ZodString>;
|
|
12
|
+
}, z4.core.$strip>;
|
|
13
|
+
export declare const ElephantTraitsSchema: ModelSchema<"ElephantTraitsSchema", {
|
|
14
|
+
lookup: ZodModel<"ElephantTraitsLookup", z4.ZodObject<{
|
|
15
|
+
id: z4.ZodNumber;
|
|
16
|
+
}, z4.core.$strip>>;
|
|
17
|
+
detail: ZodModel<"ElephantTraitsDetail", any>;
|
|
18
|
+
filters: ZodModel<"ElephantTraitsFilters", z4.ZodObject<{
|
|
19
|
+
isSharp: z4.ZodOptional<z4.ZodBoolean>;
|
|
20
|
+
text: z4.ZodOptional<z4.ZodString>;
|
|
21
|
+
}, z4.core.$strip>>;
|
|
22
|
+
sort: ZodModel<"ElephantTraitsSort", z4.ZodArray<z4.ZodObject<import("@declaro/zod").SortObjectShape<"title">, z4.core.$strip>>>;
|
|
23
|
+
summary: ZodModel<"ElephantTraitsSummary", any>;
|
|
24
|
+
}, undefined>;
|
|
25
|
+
export type IElephantTraitSchema = typeof ElephantTraitsSchema;
|
|
26
|
+
//# sourceMappingURL=elephant-trait-schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"elephant-trait-schema.d.ts","sourceRoot":"","sources":["../../../../../src/shared/utils/test/elephant-trait-schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,QAAQ,CAAA;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAUvC,eAAO,MAAM,0BAA0B,KAOrC,CAAA;AAEF,eAAO,MAAM,2BAA2B,KAOtC,CAAA;AAEF,eAAO,MAAM,0BAA0B;;kBAErC,CAAA;AAEF,eAAO,MAAM,2BAA2B;;;kBAGtC,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;aAS3B,CAAA;AAEN,MAAM,MAAM,oBAAoB,GAAG,OAAO,oBAAoB,CAAA"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { ModelSchema } from '@declaro/core';
|
|
2
|
+
import { ZodModel } from '@declaro/zod';
|
|
3
|
+
import { z } from 'zod/v4';
|
|
4
|
+
import type { InferFilters, InferLookup, InferDetail, InferSummary, InferSort, InferInput, InferSearchResults, InferEntityMetadata } from '../../../shared/utils/schema-inference';
|
|
5
|
+
export declare const MockBookSchema: ModelSchema<"Book", {
|
|
6
|
+
lookup: ZodModel<"BookLookup", z.ZodObject<{
|
|
7
|
+
id: z.ZodNumber;
|
|
8
|
+
}, z.core.$strip>>;
|
|
9
|
+
detail: ZodModel<"BookDetail", z.ZodObject<{
|
|
10
|
+
id: z.ZodNumber;
|
|
11
|
+
title: z.ZodString;
|
|
12
|
+
author: z.ZodString;
|
|
13
|
+
publishedDate: z.ZodCoercedDate<unknown>;
|
|
14
|
+
}, z.core.$strip>>;
|
|
15
|
+
filters: ZodModel<"BookFilters", z.ZodObject<{
|
|
16
|
+
text: z.ZodOptional<z.ZodString>;
|
|
17
|
+
}, z.core.$strip>>;
|
|
18
|
+
summary: ZodModel<"BookSummary", z.ZodObject<{
|
|
19
|
+
id: z.ZodNumber;
|
|
20
|
+
title: z.ZodString;
|
|
21
|
+
author: z.ZodString;
|
|
22
|
+
publishedDate: z.ZodCoercedDate<unknown>;
|
|
23
|
+
}, z.core.$strip>>;
|
|
24
|
+
sort: ZodModel<"BookSort", z.ZodArray<z.ZodObject<import("@declaro/zod").SortObjectShape<"title" | "author">, z.core.$strip>>>;
|
|
25
|
+
input: ZodModel<"BookInput", z.ZodObject<{
|
|
26
|
+
id: z.ZodOptional<z.ZodNumber>;
|
|
27
|
+
title: z.ZodString;
|
|
28
|
+
author: z.ZodString;
|
|
29
|
+
publishedDate: z.ZodCoercedDate<unknown>;
|
|
30
|
+
}, z.core.$strip>>;
|
|
31
|
+
}, {
|
|
32
|
+
primaryKey: "id";
|
|
33
|
+
}>;
|
|
34
|
+
export type MockBookFilters = InferFilters<typeof MockBookSchema>;
|
|
35
|
+
export type MockBookLookup = InferLookup<typeof MockBookSchema>;
|
|
36
|
+
export type MockBookDetail = InferDetail<typeof MockBookSchema>;
|
|
37
|
+
export type MockBookSummary = InferSummary<typeof MockBookSchema>;
|
|
38
|
+
export type MockBookSort = InferSort<typeof MockBookSchema>;
|
|
39
|
+
export type MockBookInput = InferInput<typeof MockBookSchema>;
|
|
40
|
+
export type MockBookSearchResults = InferSearchResults<typeof MockBookSchema>;
|
|
41
|
+
export type MockBookEntityMetadata = InferEntityMetadata<typeof MockBookSchema>;
|
|
42
|
+
//# sourceMappingURL=mock-book-models.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-book-models.d.ts","sourceRoot":"","sources":["../../../../../src/test/mock/models/mock-book-models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EAAa,QAAQ,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,KAAK,EACR,YAAY,EACZ,WAAW,EACX,WAAW,EACX,YAAY,EACZ,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,mBAAmB,EACtB,MAAM,wCAAwC,CAAA;AAE/C,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsDrB,CAAA;AAEN,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,CAAA;AACjE,MAAM,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,cAAc,CAAC,CAAA;AAC/D,MAAM,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,cAAc,CAAC,CAAA;AAC/D,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,CAAA;AACjE,MAAM,MAAM,YAAY,GAAG,SAAS,CAAC,OAAO,cAAc,CAAC,CAAA;AAC3D,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAA;AAC7D,MAAM,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,OAAO,cAAc,CAAC,CAAA;AAC7E,MAAM,MAAM,sBAAsB,GAAG,mBAAmB,CAAC,OAAO,cAAc,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-memory-repository.assign.test.d.ts","sourceRoot":"","sources":["../../../../../src/test/mock/repositories/mock-memory-repository.assign.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-memory-repository.basic.test.d.ts","sourceRoot":"","sources":["../../../../../src/test/mock/repositories/mock-memory-repository.basic.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-memory-repository.bulk-upsert.test.d.ts","sourceRoot":"","sources":["../../../../../src/test/mock/repositories/mock-memory-repository.bulk-upsert.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-memory-repository.count.test.d.ts","sourceRoot":"","sources":["../../../../../src/test/mock/repositories/mock-memory-repository.count.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { AnyModelSchema, IModelEntityMetadata } from '@declaro/core';
|
|
2
|
+
import type { IRepository } from '../../../domain/interfaces/repository';
|
|
3
|
+
import type { InferDetail, InferFilters, InferInput, InferLookup, InferSearchResults, InferSummary } from '../../../shared/utils/schema-inference';
|
|
4
|
+
import type { ILoadOptions, ISearchOptions } from '../../../domain/services/read-only-model-service';
|
|
5
|
+
import type { ICreateOptions, IUpdateOptions } from '../../../domain/services/model-service';
|
|
6
|
+
export interface IMockMemoryRepositoryArgs<TSchema extends AnyModelSchema> {
|
|
7
|
+
schema: TSchema;
|
|
8
|
+
lookup?: (data: InferDetail<TSchema>, lookup: InferLookup<TSchema>) => boolean;
|
|
9
|
+
filter?: (data: InferSummary<TSchema>, filters: InferFilters<TSchema>) => boolean;
|
|
10
|
+
assign?: (data: InferDetail<TSchema>, input: InferInput<TSchema>) => InferDetail<TSchema>;
|
|
11
|
+
}
|
|
12
|
+
export declare class MockMemoryRepository<TSchema extends AnyModelSchema> implements IRepository<TSchema> {
|
|
13
|
+
protected args: IMockMemoryRepositoryArgs<TSchema>;
|
|
14
|
+
protected data: Map<string, InferDetail<TSchema>>;
|
|
15
|
+
protected trash: Map<string, InferDetail<TSchema>>;
|
|
16
|
+
protected entityMetadata: IModelEntityMetadata;
|
|
17
|
+
protected nextId: number;
|
|
18
|
+
constructor(args: IMockMemoryRepositoryArgs<TSchema>);
|
|
19
|
+
private findOne;
|
|
20
|
+
/**
|
|
21
|
+
* Find an item and return both the item and its key
|
|
22
|
+
* @param lookup - The lookup criteria
|
|
23
|
+
* @param map - The map to search in
|
|
24
|
+
* @returns Object containing the item and its key, or undefined if not found
|
|
25
|
+
*/
|
|
26
|
+
private findOneWithKey;
|
|
27
|
+
/**
|
|
28
|
+
* Loads a single item by lookup criteria.
|
|
29
|
+
* @param input - The lookup criteria.
|
|
30
|
+
* @param options - Optional load options including removedOnly and includeRemoved.
|
|
31
|
+
* @returns The found item or null if not found.
|
|
32
|
+
*/
|
|
33
|
+
load(input: InferLookup<TSchema>, options?: ILoadOptions): Promise<InferDetail<TSchema> | null>;
|
|
34
|
+
loadMany(inputs: InferLookup<TSchema>[]): Promise<InferDetail<TSchema>[]>;
|
|
35
|
+
search(input: InferFilters<TSchema>, options?: ISearchOptions<TSchema>): Promise<InferSearchResults<TSchema>>;
|
|
36
|
+
remove(lookup: InferLookup<TSchema>): Promise<InferSummary<TSchema>>;
|
|
37
|
+
restore(lookup: InferLookup<TSchema>): Promise<InferSummary<TSchema>>;
|
|
38
|
+
create(input: InferInput<TSchema>): Promise<InferDetail<TSchema>>;
|
|
39
|
+
update(lookup: InferLookup<TSchema>, input: InferInput<TSchema>): Promise<InferDetail<TSchema>>;
|
|
40
|
+
count(search: InferFilters<TSchema>, options?: ISearchOptions<TSchema> | undefined): Promise<number>;
|
|
41
|
+
upsert(input: InferInput<TSchema>, options?: ICreateOptions | IUpdateOptions): Promise<InferDetail<TSchema>>;
|
|
42
|
+
bulkUpsert(inputs: InferInput<TSchema>[], options?: ICreateOptions | IUpdateOptions): Promise<InferDetail<TSchema>[]>;
|
|
43
|
+
permanentlyDelete(lookup: InferLookup<TSchema>): Promise<InferSummary<TSchema>>;
|
|
44
|
+
permanentlyDeleteFromTrash(lookup: InferLookup<TSchema>): Promise<InferSummary<TSchema>>;
|
|
45
|
+
emptyTrash(filters?: InferFilters<TSchema>): Promise<number>;
|
|
46
|
+
/**
|
|
47
|
+
* Apply filtering logic to all items based on the provided search criteria
|
|
48
|
+
* @param input - The search/filter criteria
|
|
49
|
+
* @param options - Optional search options including removedOnly and includeRemoved
|
|
50
|
+
* @returns Filtered array of items
|
|
51
|
+
*/
|
|
52
|
+
protected applyFilters(input: InferFilters<TSchema>, options?: ISearchOptions<TSchema>): InferDetail<TSchema>[];
|
|
53
|
+
/**
|
|
54
|
+
* Assign input data to existing data using the provided assign function or default Object.assign
|
|
55
|
+
* @param existingData - The existing data to merge with
|
|
56
|
+
* @param input - The input data to assign
|
|
57
|
+
* @returns The merged data
|
|
58
|
+
*/
|
|
59
|
+
protected assignInput(existingData: InferDetail<TSchema>, input: InferInput<TSchema>): InferDetail<TSchema>;
|
|
60
|
+
protected generatePrimaryKey(): Promise<string | number>;
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=mock-memory-repository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-memory-repository.d.ts","sourceRoot":"","sources":["../../../../../src/test/mock/repositories/mock-memory-repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-memory-repository.search.test.d.ts","sourceRoot":"","sources":["../../../../../src/test/mock/repositories/mock-memory-repository.search.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-memory-repository.trash.test.d.ts","sourceRoot":"","sources":["../../../../../src/test/mock/repositories/mock-memory-repository.trash.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-memory-repository.upsert.test.d.ts","sourceRoot":"","sources":["../../../../../src/test/mock/repositories/mock-memory-repository.upsert.test.ts"],"names":[],"mappings":""}
|