@goatlab/fluent 0.7.43 → 0.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +144 -13
- package/dist/BaseConnector.js +12 -3
- package/dist/BaseConnector.js.map +1 -1
- package/dist/TypeOrmConnector/TypeOrmConnector.d.ts +4 -2
- package/dist/TypeOrmConnector/TypeOrmConnector.js +14 -2
- package/dist/TypeOrmConnector/TypeOrmConnector.js.map +1 -1
- package/dist/TypeOrmConnector/queryBuilder/mongodb/getMongoFindAggregatedQuery.js +6 -4
- package/dist/TypeOrmConnector/queryBuilder/mongodb/getMongoFindAggregatedQuery.js.map +1 -1
- package/dist/TypeOrmConnector/queryBuilder/mongodb/getMongoWhere.js +54 -0
- package/dist/TypeOrmConnector/queryBuilder/mongodb/getMongoWhere.js.map +1 -1
- package/dist/TypeOrmConnector/test/advanced/typeOrm.entity.d.ts +1 -1
- package/dist/TypeOrmConnector/test/advanced/typeOrm.entity.js +9 -1
- package/dist/TypeOrmConnector/test/advanced/typeOrm.entity.js.map +1 -1
- package/dist/TypeOrmConnector/test/basic/goat.entity.d.ts +2 -2
- package/dist/TypeOrmConnector/test/basic/goat.entity.js +18 -2
- package/dist/TypeOrmConnector/test/basic/goat.entity.js.map +1 -1
- package/dist/TypeOrmConnector/util/extractConditions.js +20 -2
- package/dist/TypeOrmConnector/util/extractConditions.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
|
@@ -76,7 +76,23 @@ exports.GoatSchema = zod_1.z.object({
|
|
|
76
76
|
type: zod_1.z.string(),
|
|
77
77
|
family: zod_1.z.string()
|
|
78
78
|
}).optional(),
|
|
79
|
-
created: zod_1.z.date().optional()
|
|
80
|
-
|
|
79
|
+
created: zod_1.z.union([zod_1.z.date(), zod_1.z.string()]).nullable().optional().transform((val) => {
|
|
80
|
+
if (val === null || val === undefined) {
|
|
81
|
+
return val;
|
|
82
|
+
}
|
|
83
|
+
if (typeof val === 'string') {
|
|
84
|
+
return new Date(val);
|
|
85
|
+
}
|
|
86
|
+
return val;
|
|
87
|
+
}),
|
|
88
|
+
updated: zod_1.z.union([zod_1.z.date(), zod_1.z.string()]).nullable().optional().transform((val) => {
|
|
89
|
+
if (val === null || val === undefined) {
|
|
90
|
+
return val;
|
|
91
|
+
}
|
|
92
|
+
if (typeof val === 'string') {
|
|
93
|
+
return new Date(val);
|
|
94
|
+
}
|
|
95
|
+
return val;
|
|
96
|
+
})
|
|
81
97
|
});
|
|
82
98
|
//# sourceMappingURL=goat.entity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"goat.entity.js","sourceRoot":"","sources":["../../../../src/TypeOrmConnector/test/basic/goat.entity.ts"],"names":[],"mappings":";;;;AACA,oDAAuC;AACvC,6BAAuB;AAEvB,iDAAiD;AAE1C,IAAM,UAAU,GAAhB,MAAM,UAAU;IAErB,EAAE,CAAQ;IAGV,IAAI,CAAQ;IAGZ,GAAG,CAAQ;IAGX,IAAI,CAAS;IAGb,MAAM,CAAU;IAGhB,MAAM,CAAS;IAGf,OAAO,CAAgC;IAGvC,KAAK,CAAmC;IAGxC,OAAO,CAAO;IAGd,OAAO,CAAO;CACf,CAAA;AA9BY,gCAAU;AAErB;IADC,cAAC,CAAC,EAAE,EAAE;;sCACG;AAGV;IADC,cAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;wCACpC;AAGZ;IADC,cAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;uCACjC;AAGX;IADC,cAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;wCACnB;AAGb;IADC,cAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;0CAChB;AAGhB;IADC,cAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;;0CACf;AAGf;IADC,cAAC,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;;2CACA;AAGvC;IADC,cAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;;yCACF;AAGxC;IADC,cAAC,CAAC,OAAO,EAAE;sCACF,IAAI;2CAAA;AAGd;IADC,cAAC,CAAC,OAAO,EAAE;sCACF,IAAI;2CAAA;qBA7BH,UAAU;IADtB,cAAC,CAAC,MAAM,CAAC,MAAM,CAAC;GACJ,UAAU,CA8BtB;AAEY,QAAA,UAAU,GAAG,OAAC,CAAC,MAAM,CAAC;IACjC,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE;IACf,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,MAAM,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,OAAO,EAAE,OAAC,CAAC,MAAM,CAAC;QAChB,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;QACd,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;KAClB,CAAC,CAAC,QAAQ,EAAE;IACb,KAAK,EAAE,OAAC,CAAC,MAAM,CAAC;QACd,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;QAChB,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;KACnB,CAAC,CAAC,QAAQ,EAAE;IACb,OAAO,EAAE,OAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"goat.entity.js","sourceRoot":"","sources":["../../../../src/TypeOrmConnector/test/basic/goat.entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.extractConditions = void 0;
|
|
4
|
-
const js_utils_1 = require("@goatlab/js-utils");
|
|
5
4
|
const types_1 = require("../../types");
|
|
6
5
|
const isAnyObject_1 = require("./isAnyObject");
|
|
6
|
+
/**
|
|
7
|
+
* Custom flatten function that preserves types
|
|
8
|
+
*/
|
|
9
|
+
function flattenWithTypes(obj, prefix = '', result = {}) {
|
|
10
|
+
for (const key in obj) {
|
|
11
|
+
if (obj.hasOwnProperty(key)) {
|
|
12
|
+
const newKey = prefix ? `${prefix}.${key}` : key;
|
|
13
|
+
if (obj[key] !== null && typeof obj[key] === 'object' && !Array.isArray(obj[key])) {
|
|
14
|
+
flattenWithTypes(obj[key], newKey, result);
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
// Preserve the original type
|
|
18
|
+
result[newKey] = obj[key];
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return result;
|
|
23
|
+
}
|
|
7
24
|
/**
|
|
8
25
|
* Transforms the nested object WHERE clause into an
|
|
9
26
|
* Array of clearly defined conditions
|
|
@@ -23,7 +40,8 @@ const extractConditions = (conditions) => {
|
|
|
23
40
|
const value = clause[el];
|
|
24
41
|
if ((0, isAnyObject_1.isAnyObject)(value)) {
|
|
25
42
|
const initialKey = el;
|
|
26
|
-
|
|
43
|
+
// Use a custom flatten that preserves types
|
|
44
|
+
const flatten = flattenWithTypes(value);
|
|
27
45
|
for (const key of Object.keys(flatten)) {
|
|
28
46
|
// Remove .# from keys when we have an array in the flattened object
|
|
29
47
|
const transformedKey = key.replace(new RegExp('.[0-9]', 'g'), '');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractConditions.js","sourceRoot":"","sources":["../../../src/TypeOrmConnector/util/extractConditions.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"extractConditions.js","sourceRoot":"","sources":["../../../src/TypeOrmConnector/util/extractConditions.ts"],"names":[],"mappings":"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"}
|