@forestadmin/datasource-mongoose 1.13.4 → 1.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -13,6 +13,7 @@ export default class FieldsGenerator {
|
|
|
13
13
|
private static getColumnType;
|
|
14
14
|
/** Build ColumnType from CleanSchema recursively */
|
|
15
15
|
private static getColumnTypeRec;
|
|
16
|
+
private static getCompositeFieldType;
|
|
16
17
|
/** Get enum validator from field definition */
|
|
17
18
|
private static getEnumValues;
|
|
18
19
|
}
|
|
@@ -102,7 +102,16 @@ class FieldsGenerator {
|
|
|
102
102
|
if (field['[]']) {
|
|
103
103
|
return [this.getColumnTypeRec(field['[]'])];
|
|
104
104
|
}
|
|
105
|
-
return Object.entries(field).reduce((memo, [name, subSchema]) => ({ ...memo, [name]: this.
|
|
105
|
+
return Object.entries(field).reduce((memo, [name, subSchema]) => ({ ...memo, [name]: this.getCompositeFieldType(subSchema) }), {});
|
|
106
|
+
}
|
|
107
|
+
static getCompositeFieldType(field) {
|
|
108
|
+
if ((0, is_schema_type_1.default)(field) && field.instance === 'String') {
|
|
109
|
+
const enumValues = this.getEnumValues(field);
|
|
110
|
+
if (enumValues && enumValues.every(v => typeof v === 'string')) {
|
|
111
|
+
return { type: 'Enum', enumValues };
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return this.getColumnTypeRec(field);
|
|
106
115
|
}
|
|
107
116
|
/** Get enum validator from field definition */
|
|
108
117
|
static getEnumValues(field) {
|
|
@@ -110,4 +119,4 @@ class FieldsGenerator {
|
|
|
110
119
|
}
|
|
111
120
|
}
|
|
112
121
|
exports.default = FieldsGenerator;
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
122
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL3NjaGVtYS9maWVsZHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFjQSwwRUFBMEQ7QUFDMUQsc0VBQTRDO0FBQzVDLG1FQUFtRDtBQUNuRCx3Q0FBb0M7QUFDcEMseUVBQWdEO0FBRWhELHdEQUF3RDtBQUN4RCxNQUFxQixlQUFlO0lBQ2xDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FDdEIsS0FBcUIsRUFDckIsUUFBZSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUU3RCxNQUFNLFNBQVMsR0FBK0IsRUFBRSxDQUFDO1FBQ2pELE1BQU0sV0FBVyxHQUFHLGdCQUFjLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV0RSx3Q0FBd0M7UUFDeEMsS0FBSyxNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDL0QsSUFBSSxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQ3RCLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBRWhELElBQUksSUFBQSx3QkFBWSxFQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7b0JBQzdDLFNBQVMsQ0FBQyxHQUFHLElBQUksYUFBYSxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDakYsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBRUQsMEVBQTBFO1FB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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forestadmin/datasource-mongoose",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.14.0",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"license": "GPL-3.0",
|
|
6
6
|
"publishConfig": {
|
|
@@ -16,11 +16,11 @@
|
|
|
16
16
|
"dist/**/*.d.ts"
|
|
17
17
|
],
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@forestadmin/datasource-toolkit": "1.
|
|
19
|
+
"@forestadmin/datasource-toolkit": "1.54.0",
|
|
20
20
|
"luxon": "^3.2.1"
|
|
21
21
|
},
|
|
22
22
|
"devDependencies": {
|
|
23
|
-
"mongoose": "8.
|
|
23
|
+
"mongoose": "8.22.1"
|
|
24
24
|
},
|
|
25
25
|
"peerDependencies": {
|
|
26
26
|
"mongoose": "6.x || 7.x || 8.x"
|