@solid-nestjs/common 0.2.8 → 0.2.9
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/dist/adapters/index.d.ts +7 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +23 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/validation.adapter.d.ts +20 -0
- package/dist/adapters/validation.adapter.d.ts.map +1 -0
- package/dist/adapters/validation.adapter.js +309 -0
- package/dist/adapters/validation.adapter.js.map +1 -0
- package/dist/decorator-registry/decorator-registry.d.ts +54 -0
- package/dist/decorator-registry/decorator-registry.d.ts.map +1 -0
- package/dist/decorator-registry/decorator-registry.js +161 -0
- package/dist/decorator-registry/decorator-registry.js.map +1 -0
- package/dist/decorator-registry/index.d.ts +2 -0
- package/dist/decorator-registry/index.d.ts.map +1 -0
- package/dist/decorator-registry/index.js +18 -0
- package/dist/decorator-registry/index.js.map +1 -0
- package/dist/decorators/index.d.ts +6 -0
- package/dist/decorators/index.d.ts.map +1 -1
- package/dist/decorators/index.js +6 -0
- package/dist/decorators/index.js.map +1 -1
- package/dist/decorators/solid-entity.decorator.d.ts +6 -0
- package/dist/decorators/solid-entity.decorator.d.ts.map +1 -0
- package/dist/decorators/solid-entity.decorator.js +23 -0
- package/dist/decorators/solid-entity.decorator.js.map +1 -0
- package/dist/decorators/solid-field.decorator.d.ts +7 -0
- package/dist/decorators/solid-field.decorator.d.ts.map +1 -0
- package/dist/decorators/solid-field.decorator.js +51 -0
- package/dist/decorators/solid-field.decorator.js.map +1 -0
- package/dist/decorators/solid-id.decorator.d.ts +9 -0
- package/dist/decorators/solid-id.decorator.d.ts.map +1 -0
- package/dist/decorators/solid-id.decorator.js +27 -0
- package/dist/decorators/solid-id.decorator.js.map +1 -0
- package/dist/decorators/solid-input.decorator.d.ts +6 -0
- package/dist/decorators/solid-input.decorator.d.ts.map +1 -0
- package/dist/decorators/solid-input.decorator.js +35 -0
- package/dist/decorators/solid-input.decorator.js.map +1 -0
- package/dist/decorators/solid-relation.decorator.d.ts +19 -0
- package/dist/decorators/solid-relation.decorator.d.ts.map +1 -0
- package/dist/decorators/solid-relation.decorator.js +66 -0
- package/dist/decorators/solid-relation.decorator.js.map +1 -0
- package/dist/decorators/solid-timestamp.decorator.d.ts +13 -0
- package/dist/decorators/solid-timestamp.decorator.d.ts.map +1 -0
- package/dist/decorators/solid-timestamp.decorator.js +49 -0
- package/dist/decorators/solid-timestamp.decorator.js.map +1 -0
- package/dist/helpers/args-helpers/class-generator.helper.d.ts +143 -0
- package/dist/helpers/args-helpers/class-generator.helper.d.ts.map +1 -0
- package/dist/helpers/args-helpers/class-generator.helper.js +221 -0
- package/dist/helpers/args-helpers/class-generator.helper.js.map +1 -0
- package/dist/helpers/args-helpers/create-groupby-request.helper.d.ts +83 -0
- package/dist/helpers/args-helpers/create-groupby-request.helper.d.ts.map +1 -0
- package/dist/helpers/args-helpers/create-groupby-request.helper.js +119 -0
- package/dist/helpers/args-helpers/create-groupby-request.helper.js.map +1 -0
- package/dist/helpers/args-helpers/decorator-builder.helper.d.ts +160 -0
- package/dist/helpers/args-helpers/decorator-builder.helper.d.ts.map +1 -0
- package/dist/helpers/args-helpers/decorator-builder.helper.js +161 -0
- package/dist/helpers/args-helpers/decorator-builder.helper.js.map +1 -0
- package/dist/helpers/args-helpers/field-config.helper.d.ts +98 -0
- package/dist/helpers/args-helpers/field-config.helper.d.ts.map +1 -0
- package/dist/helpers/args-helpers/field-config.helper.js +143 -0
- package/dist/helpers/args-helpers/field-config.helper.js.map +1 -0
- package/dist/helpers/args-helpers/groupby-args-from.helper.d.ts +87 -0
- package/dist/helpers/args-helpers/groupby-args-from.helper.d.ts.map +1 -0
- package/dist/helpers/args-helpers/groupby-args-from.helper.js +185 -0
- package/dist/helpers/args-helpers/groupby-args-from.helper.js.map +1 -0
- package/dist/helpers/args-helpers/index.d.ts +15 -0
- package/dist/helpers/args-helpers/index.d.ts.map +1 -0
- package/dist/helpers/args-helpers/index.js +58 -0
- package/dist/helpers/args-helpers/index.js.map +1 -0
- package/dist/helpers/args-helpers/type-inference.helper.d.ts +191 -0
- package/dist/helpers/args-helpers/type-inference.helper.d.ts.map +1 -0
- package/dist/helpers/args-helpers/type-inference.helper.js +330 -0
- package/dist/helpers/args-helpers/type-inference.helper.js.map +1 -0
- package/dist/helpers/class-generation/dynamic-class.helper.d.ts +101 -0
- package/dist/helpers/class-generation/dynamic-class.helper.d.ts.map +1 -0
- package/dist/helpers/class-generation/dynamic-class.helper.js +180 -0
- package/dist/helpers/class-generation/dynamic-class.helper.js.map +1 -0
- package/dist/helpers/class-generation/index.d.ts +9 -0
- package/dist/helpers/class-generation/index.d.ts.map +1 -0
- package/dist/helpers/class-generation/index.js +18 -0
- package/dist/helpers/class-generation/index.js.map +1 -0
- package/dist/helpers/decorators/decorator-utils.helper.d.ts +75 -0
- package/dist/helpers/decorators/decorator-utils.helper.d.ts.map +1 -0
- package/dist/helpers/decorators/decorator-utils.helper.js +92 -0
- package/dist/helpers/decorators/decorator-utils.helper.js.map +1 -0
- package/dist/helpers/decorators/index.d.ts +9 -0
- package/dist/helpers/decorators/index.d.ts.map +1 -0
- package/dist/helpers/decorators/index.js +16 -0
- package/dist/helpers/decorators/index.js.map +1 -0
- package/dist/helpers/dto-generator-base.helper.d.ts +19 -0
- package/dist/helpers/dto-generator-base.helper.d.ts.map +1 -0
- package/dist/helpers/dto-generator-base.helper.js +72 -0
- package/dist/helpers/dto-generator-base.helper.js.map +1 -0
- package/dist/helpers/index.d.ts +9 -0
- package/dist/helpers/index.d.ts.map +1 -1
- package/dist/helpers/index.js +9 -0
- package/dist/helpers/index.js.map +1 -1
- package/dist/helpers/metadata-extractor.helper.d.ts +26 -0
- package/dist/helpers/metadata-extractor.helper.d.ts.map +1 -0
- package/dist/helpers/metadata-extractor.helper.js +67 -0
- package/dist/helpers/metadata-extractor.helper.js.map +1 -0
- package/dist/helpers/package-detector.helper.d.ts +33 -0
- package/dist/helpers/package-detector.helper.d.ts.map +1 -0
- package/dist/helpers/package-detector.helper.js +82 -0
- package/dist/helpers/package-detector.helper.js.map +1 -0
- package/dist/helpers/property-filter.helper.d.ts +15 -0
- package/dist/helpers/property-filter.helper.d.ts.map +1 -0
- package/dist/helpers/property-filter.helper.js +44 -0
- package/dist/helpers/property-filter.helper.js.map +1 -0
- package/dist/helpers/type-inference.helper.d.ts +76 -0
- package/dist/helpers/type-inference.helper.d.ts.map +1 -0
- package/dist/helpers/type-inference.helper.js +205 -0
- package/dist/helpers/type-inference.helper.js.map +1 -0
- package/dist/helpers/validation-inference.helper.d.ts +18 -0
- package/dist/helpers/validation-inference.helper.d.ts.map +1 -0
- package/dist/helpers/validation-inference.helper.js +100 -0
- package/dist/helpers/validation-inference.helper.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/interfaces/adapters/decorator-adapter.interface.d.ts +8 -0
- package/dist/interfaces/adapters/decorator-adapter.interface.d.ts.map +1 -0
- package/dist/interfaces/adapters/decorator-adapter.interface.js +3 -0
- package/dist/interfaces/adapters/decorator-adapter.interface.js.map +1 -0
- package/dist/interfaces/decorators/solid-field-options.interface.d.ts +55 -0
- package/dist/interfaces/decorators/solid-field-options.interface.d.ts.map +1 -0
- package/dist/interfaces/decorators/solid-field-options.interface.js +3 -0
- package/dist/interfaces/decorators/solid-field-options.interface.js.map +1 -0
- package/dist/interfaces/index.d.ts +3 -0
- package/dist/interfaces/index.d.ts.map +1 -1
- package/dist/interfaces/index.js +3 -0
- package/dist/interfaces/index.js.map +1 -1
- package/dist/interfaces/metadata/field-metadata.interface.d.ts +29 -0
- package/dist/interfaces/metadata/field-metadata.interface.d.ts.map +1 -0
- package/dist/interfaces/metadata/field-metadata.interface.js +3 -0
- package/dist/interfaces/metadata/field-metadata.interface.js.map +1 -0
- package/dist/metadata/index.d.ts +2 -0
- package/dist/metadata/index.d.ts.map +1 -0
- package/dist/metadata/index.js +18 -0
- package/dist/metadata/index.js.map +1 -0
- package/dist/metadata/metadata-storage.d.ts +54 -0
- package/dist/metadata/metadata-storage.d.ts.map +1 -0
- package/dist/metadata/metadata-storage.js +106 -0
- package/dist/metadata/metadata-storage.js.map +1 -0
- package/dist/registry/index.d.ts +2 -0
- package/dist/registry/index.d.ts.map +1 -0
- package/dist/registry/index.js +18 -0
- package/dist/registry/index.js.map +1 -0
- package/dist/registry/relation-adapter-registry.d.ts +11 -0
- package/dist/registry/relation-adapter-registry.d.ts.map +1 -0
- package/dist/registry/relation-adapter-registry.js +30 -0
- package/dist/registry/relation-adapter-registry.js.map +1 -0
- package/dist/types/dto-generation.types.d.ts +46 -0
- package/dist/types/dto-generation.types.d.ts.map +1 -0
- package/dist/types/dto-generation.types.js +6 -0
- package/dist/types/dto-generation.types.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./metadata-storage"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/metadata/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { FieldMetadata, EntityMetadata } from '../interfaces';
|
|
2
|
+
export declare class MetadataStorage {
|
|
3
|
+
private static fieldMetadata;
|
|
4
|
+
private static entityMetadata;
|
|
5
|
+
/**
|
|
6
|
+
* Adds field metadata for a specific class property
|
|
7
|
+
*/
|
|
8
|
+
static addFieldMetadata(metadata: FieldMetadata): void;
|
|
9
|
+
/**
|
|
10
|
+
* Gets field metadata for a class or specific property
|
|
11
|
+
*/
|
|
12
|
+
static getFieldMetadata(target: Function, propertyKey?: string | symbol): FieldMetadata[];
|
|
13
|
+
/**
|
|
14
|
+
* Gets all field metadata for a class including inherited fields
|
|
15
|
+
*/
|
|
16
|
+
static getAllFieldMetadata(target: Function): FieldMetadata[];
|
|
17
|
+
/**
|
|
18
|
+
* Adds entity metadata for a class
|
|
19
|
+
*/
|
|
20
|
+
static addEntityMetadata(metadata: EntityMetadata): void;
|
|
21
|
+
/**
|
|
22
|
+
* Gets entity metadata for a class
|
|
23
|
+
*/
|
|
24
|
+
static getEntityMetadata(target: Function): EntityMetadata | undefined;
|
|
25
|
+
/**
|
|
26
|
+
* Gets all entity metadata
|
|
27
|
+
*/
|
|
28
|
+
static getAllEntityMetadata(): EntityMetadata[];
|
|
29
|
+
/**
|
|
30
|
+
* Checks if a class has field metadata
|
|
31
|
+
*/
|
|
32
|
+
static hasFieldMetadata(target: Function): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Checks if a class has entity metadata
|
|
35
|
+
*/
|
|
36
|
+
static hasEntityMetadata(target: Function): boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Removes all metadata for a specific class
|
|
39
|
+
*/
|
|
40
|
+
static removeMetadata(target: Function): void;
|
|
41
|
+
/**
|
|
42
|
+
* Clears all metadata (useful for testing)
|
|
43
|
+
*/
|
|
44
|
+
static clearMetadata(): void;
|
|
45
|
+
/**
|
|
46
|
+
* Gets statistics about stored metadata
|
|
47
|
+
*/
|
|
48
|
+
static getStats(): {
|
|
49
|
+
totalClasses: number;
|
|
50
|
+
totalFields: number;
|
|
51
|
+
totalEntities: number;
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=metadata-storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata-storage.d.ts","sourceRoot":"","sources":["../../src/metadata/metadata-storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE9D,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAC,aAAa,CAA4D;IACxF,OAAO,CAAC,MAAM,CAAC,cAAc,CAAuC;IAEpE;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI;IAStD;;OAEG;IACH,MAAM,CAAC,gBAAgB,CACrB,MAAM,EAAE,QAAQ,EAChB,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAC5B,aAAa,EAAE;IAclB;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,GAAG,aAAa,EAAE;IAc7D;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAIxD;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,QAAQ,GAAG,cAAc,GAAG,SAAS;IAItE;;OAEG;IACH,MAAM,CAAC,oBAAoB,IAAI,cAAc,EAAE;IAI/C;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;IAIlD;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;IAInD;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI;IAK7C;;OAEG;IACH,MAAM,CAAC,aAAa,IAAI,IAAI;IAK5B;;OAEG;IACH,MAAM,CAAC,QAAQ,IAAI;QACjB,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;KACvB;CAYF"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MetadataStorage = void 0;
|
|
4
|
+
class MetadataStorage {
|
|
5
|
+
/**
|
|
6
|
+
* Adds field metadata for a specific class property
|
|
7
|
+
*/
|
|
8
|
+
static addFieldMetadata(metadata) {
|
|
9
|
+
let classMetadata = this.fieldMetadata.get(metadata.target);
|
|
10
|
+
if (!classMetadata) {
|
|
11
|
+
classMetadata = new Map();
|
|
12
|
+
this.fieldMetadata.set(metadata.target, classMetadata);
|
|
13
|
+
}
|
|
14
|
+
classMetadata.set(metadata.propertyKey, metadata);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Gets field metadata for a class or specific property
|
|
18
|
+
*/
|
|
19
|
+
static getFieldMetadata(target, propertyKey) {
|
|
20
|
+
const classMetadata = this.fieldMetadata.get(target);
|
|
21
|
+
if (!classMetadata) {
|
|
22
|
+
return [];
|
|
23
|
+
}
|
|
24
|
+
if (propertyKey !== undefined) {
|
|
25
|
+
const fieldMetadata = classMetadata.get(propertyKey);
|
|
26
|
+
return fieldMetadata ? [fieldMetadata] : [];
|
|
27
|
+
}
|
|
28
|
+
return Array.from(classMetadata.values());
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Gets all field metadata for a class including inherited fields
|
|
32
|
+
*/
|
|
33
|
+
static getAllFieldMetadata(target) {
|
|
34
|
+
const allMetadata = [];
|
|
35
|
+
let currentTarget = target;
|
|
36
|
+
// Walk up the prototype chain to collect metadata from parent classes
|
|
37
|
+
while (currentTarget && currentTarget !== Object) {
|
|
38
|
+
const metadata = this.getFieldMetadata(currentTarget);
|
|
39
|
+
allMetadata.push(...metadata);
|
|
40
|
+
currentTarget = Object.getPrototypeOf(currentTarget);
|
|
41
|
+
}
|
|
42
|
+
return allMetadata;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Adds entity metadata for a class
|
|
46
|
+
*/
|
|
47
|
+
static addEntityMetadata(metadata) {
|
|
48
|
+
this.entityMetadata.set(metadata.target, metadata);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Gets entity metadata for a class
|
|
52
|
+
*/
|
|
53
|
+
static getEntityMetadata(target) {
|
|
54
|
+
return this.entityMetadata.get(target);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Gets all entity metadata
|
|
58
|
+
*/
|
|
59
|
+
static getAllEntityMetadata() {
|
|
60
|
+
return Array.from(this.entityMetadata.values());
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Checks if a class has field metadata
|
|
64
|
+
*/
|
|
65
|
+
static hasFieldMetadata(target) {
|
|
66
|
+
return this.fieldMetadata.has(target);
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Checks if a class has entity metadata
|
|
70
|
+
*/
|
|
71
|
+
static hasEntityMetadata(target) {
|
|
72
|
+
return this.entityMetadata.has(target);
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Removes all metadata for a specific class
|
|
76
|
+
*/
|
|
77
|
+
static removeMetadata(target) {
|
|
78
|
+
this.fieldMetadata.delete(target);
|
|
79
|
+
this.entityMetadata.delete(target);
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Clears all metadata (useful for testing)
|
|
83
|
+
*/
|
|
84
|
+
static clearMetadata() {
|
|
85
|
+
this.fieldMetadata.clear();
|
|
86
|
+
this.entityMetadata.clear();
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Gets statistics about stored metadata
|
|
90
|
+
*/
|
|
91
|
+
static getStats() {
|
|
92
|
+
let totalFields = 0;
|
|
93
|
+
this.fieldMetadata.forEach(classMetadata => {
|
|
94
|
+
totalFields += classMetadata.size;
|
|
95
|
+
});
|
|
96
|
+
return {
|
|
97
|
+
totalClasses: this.fieldMetadata.size,
|
|
98
|
+
totalFields,
|
|
99
|
+
totalEntities: this.entityMetadata.size,
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
exports.MetadataStorage = MetadataStorage;
|
|
104
|
+
MetadataStorage.fieldMetadata = new Map();
|
|
105
|
+
MetadataStorage.entityMetadata = new Map();
|
|
106
|
+
//# sourceMappingURL=metadata-storage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata-storage.js","sourceRoot":"","sources":["../../src/metadata/metadata-storage.ts"],"names":[],"mappings":";;;AAEA,MAAa,eAAe;IAI1B;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,QAAuB;QAC7C,IAAI,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QACzD,CAAC;QACD,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,gBAAgB,CACrB,MAAgB,EAChB,WAA6B;QAE7B,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACrD,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,mBAAmB,CAAC,MAAgB;QACzC,MAAM,WAAW,GAAoB,EAAE,CAAC;QACxC,IAAI,aAAa,GAAG,MAAM,CAAC;QAE3B,sEAAsE;QACtE,OAAO,aAAa,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;YACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;YACtD,WAAW,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;YAC9B,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,QAAwB;QAC/C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,MAAgB;QACvC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,oBAAoB;QACzB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,MAAgB;QACtC,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,MAAgB;QACvC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,MAAgB;QACpC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,aAAa;QAClB,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ;QAKb,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;YACzC,WAAW,IAAI,aAAa,CAAC,IAAI,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI;YACrC,WAAW;YACX,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI;SACxC,CAAC;IACJ,CAAC;;AA1HH,0CA2HC;AA1HgB,6BAAa,GAAG,IAAI,GAAG,EAAiD,CAAC;AACzE,8BAAc,GAAG,IAAI,GAAG,EAA4B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/registry/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./relation-adapter-registry"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/registry/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8DAA4C"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface RelationAdapterHelper {
|
|
2
|
+
getRelationAdapterOptions(type: string, targetFn: () => Function, inverseSide: any, options: any): any;
|
|
3
|
+
}
|
|
4
|
+
export declare class RelationAdapterRegistry {
|
|
5
|
+
private static adapters;
|
|
6
|
+
static registerAdapter(name: string, adapter: RelationAdapterHelper): void;
|
|
7
|
+
static getAdapterOptions(name: string, type: string, targetFn: () => Function, inverseSide: any, options: any): any;
|
|
8
|
+
static getRegisteredAdapters(): string[];
|
|
9
|
+
static hasAdapter(name: string): boolean;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=relation-adapter-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"relation-adapter-registry.d.ts","sourceRoot":"","sources":["../../src/registry/relation-adapter-registry.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,qBAAqB;IACpC,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,GAAG,CAAC;CACxG;AAED,qBAAa,uBAAuB;IAClC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA4C;IAEnE,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,IAAI;IAI1E,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,GAAG;IAcnH,MAAM,CAAC,qBAAqB,IAAI,MAAM,EAAE;IAIxC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAGzC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RelationAdapterRegistry = void 0;
|
|
4
|
+
class RelationAdapterRegistry {
|
|
5
|
+
static registerAdapter(name, adapter) {
|
|
6
|
+
this.adapters.set(name, adapter);
|
|
7
|
+
}
|
|
8
|
+
static getAdapterOptions(name, type, targetFn, inverseSide, options) {
|
|
9
|
+
const adapter = this.adapters.get(name);
|
|
10
|
+
if (!adapter) {
|
|
11
|
+
return {};
|
|
12
|
+
}
|
|
13
|
+
try {
|
|
14
|
+
return adapter.getRelationAdapterOptions(type, targetFn, inverseSide, options);
|
|
15
|
+
}
|
|
16
|
+
catch (error) {
|
|
17
|
+
console.warn(`[SolidNestJS] Failed to get adapter options for ${name}:`, error);
|
|
18
|
+
return {};
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
static getRegisteredAdapters() {
|
|
22
|
+
return Array.from(this.adapters.keys());
|
|
23
|
+
}
|
|
24
|
+
static hasAdapter(name) {
|
|
25
|
+
return this.adapters.has(name);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.RelationAdapterRegistry = RelationAdapterRegistry;
|
|
29
|
+
RelationAdapterRegistry.adapters = new Map();
|
|
30
|
+
//# sourceMappingURL=relation-adapter-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"relation-adapter-registry.js","sourceRoot":"","sources":["../../src/registry/relation-adapter-registry.ts"],"names":[],"mappings":";;;AAIA,MAAa,uBAAuB;IAGlC,MAAM,CAAC,eAAe,CAAC,IAAY,EAAE,OAA8B;QACjE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,IAAY,EAAE,IAAY,EAAE,QAAwB,EAAE,WAAgB,EAAE,OAAY;QAC3G,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,CAAC;YACH,OAAO,OAAO,CAAC,yBAAyB,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACjF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,mDAAmD,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;YAChF,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,MAAM,CAAC,qBAAqB;QAC1B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,IAAY;QAC5B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;;AA3BH,0DA4BC;AA3BgB,gCAAQ,GAAG,IAAI,GAAG,EAAiC,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type utilities for DTO generation with better TypeScript inference
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Primitive types that are safe to include in DTOs
|
|
6
|
+
*/
|
|
7
|
+
export type PrimitiveTypes = string | number | boolean | Date;
|
|
8
|
+
/**
|
|
9
|
+
* Check if a type is primitive (flat type safe for DTOs)
|
|
10
|
+
*/
|
|
11
|
+
export type IsPrimitive<T> = T extends PrimitiveTypes ? true : false;
|
|
12
|
+
/**
|
|
13
|
+
* Extract only primitive properties from an entity type
|
|
14
|
+
*/
|
|
15
|
+
export type PrimitivePropertiesOf<T> = {
|
|
16
|
+
[K in keyof T]: IsPrimitive<T[K]> extends true ? T[K] : never;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Get only the keys of primitive properties
|
|
20
|
+
*/
|
|
21
|
+
export type PrimitiveKeysOf<T> = {
|
|
22
|
+
[K in keyof T]: IsPrimitive<T[K]> extends true ? K : never;
|
|
23
|
+
}[keyof T];
|
|
24
|
+
/**
|
|
25
|
+
* Pick only primitive properties from an entity
|
|
26
|
+
*/
|
|
27
|
+
export type PickPrimitive<T> = Pick<T, PrimitiveKeysOf<T>>;
|
|
28
|
+
/**
|
|
29
|
+
* For array format: Pick only the specified keys that are also primitive
|
|
30
|
+
*/
|
|
31
|
+
export type PickSelectedKeys<T, K extends keyof T> = Pick<T, K & PrimitiveKeysOf<T>>;
|
|
32
|
+
/**
|
|
33
|
+
* For object format: Pick keys based on boolean configuration, but only primitive ones
|
|
34
|
+
*/
|
|
35
|
+
export type PickByConfig<T, Config extends Partial<Record<keyof T, boolean>>> = Pick<T, {
|
|
36
|
+
[K in keyof Config]: Config[K] extends true ? K extends PrimitiveKeysOf<T> ? K : never : never;
|
|
37
|
+
}[keyof Config]>;
|
|
38
|
+
/**
|
|
39
|
+
* Property inclusion configuration type
|
|
40
|
+
*/
|
|
41
|
+
export type PropertyInclusionConfig<TEntity> = Partial<Record<keyof TEntity, boolean>>;
|
|
42
|
+
/**
|
|
43
|
+
* Infer the correct return type based on the properties/config parameter
|
|
44
|
+
*/
|
|
45
|
+
export type InferDtoType<TEntity, TPropertiesOrConfig extends (keyof TEntity)[] | PropertyInclusionConfig<TEntity> | undefined> = TPropertiesOrConfig extends (keyof TEntity)[] ? PickSelectedKeys<TEntity, TPropertiesOrConfig[number]> : TPropertiesOrConfig extends PropertyInclusionConfig<TEntity> ? PickByConfig<TEntity, TPropertiesOrConfig> : PickPrimitive<TEntity>;
|
|
46
|
+
//# sourceMappingURL=dto-generation.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dto-generation.types.d.ts","sourceRoot":"","sources":["../../src/types/dto-generation.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,cAAc,GAAG,IAAI,GAAG,KAAK,CAAC;AAErE;;GAEG;AACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI;KACpC,CAAC,IAAI,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK;CAC9D,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI;KAC9B,CAAC,IAAI,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG,KAAK;CAC3D,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;AAE3D;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;AAErF;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,MAAM,SAAS,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,IAAI,CAClF,CAAC,EACD;KACG,CAAC,IAAI,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,IAAI,GACvC,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC,GAC1B,CAAC,GACD,KAAK,GACP,KAAK;CACV,CAAC,MAAM,MAAM,CAAC,CAChB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uBAAuB,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AAEvF;;GAEG;AACH,MAAM,MAAM,YAAY,CACtB,OAAO,EACP,mBAAmB,SAAS,CAAC,MAAM,OAAO,CAAC,EAAE,GAAG,uBAAuB,CAAC,OAAO,CAAC,GAAG,SAAS,IAC1F,mBAAmB,SAAS,CAAC,MAAM,OAAO,CAAC,EAAE,GAC7C,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC,GACtD,mBAAmB,SAAS,uBAAuB,CAAC,OAAO,CAAC,GAC5D,YAAY,CAAC,OAAO,EAAE,mBAAmB,CAAC,GAC1C,aAAa,CAAC,OAAO,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dto-generation.types.js","sourceRoot":"","sources":["../../src/types/dto-generation.types.ts"],"names":[],"mappings":";AAAA;;GAEG"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,8BAA8B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC"}
|
package/dist/types/index.js
CHANGED
|
@@ -21,4 +21,5 @@ __exportStar(require("./find-args.type"), exports);
|
|
|
21
21
|
__exportStar(require("./group-by.type"), exports);
|
|
22
22
|
__exportStar(require("./prettify.type"), exports);
|
|
23
23
|
__exportStar(require("./union-to-intersection.type"), exports);
|
|
24
|
+
__exportStar(require("./dto-generation.types"), exports);
|
|
24
25
|
//# sourceMappingURL=index.js.map
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,iDAA+B;AAC/B,sDAAoC;AACpC,mDAAiC;AACjC,kDAAgC;AAChC,kDAAgC;AAChC,+DAA6C"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,iDAA+B;AAC/B,sDAAoC;AACpC,mDAAiC;AACjC,kDAAgC;AAChC,kDAAgC;AAChC,+DAA6C;AAC7C,yDAAuC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@solid-nestjs/common",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.9",
|
|
4
4
|
"description": "solid-nestjs common utilities",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -42,5 +42,5 @@
|
|
|
42
42
|
"tsconfig.json": "^1.0.11",
|
|
43
43
|
"typescript": "^5.8.3"
|
|
44
44
|
},
|
|
45
|
-
"gitHead": "
|
|
45
|
+
"gitHead": "3ebf7d4bd0a62c0964bbf3f3810c2ee3b2a3051b"
|
|
46
46
|
}
|