integreat 1.4.0-rc.3 → 1.4.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.
|
@@ -38,7 +38,7 @@ const typeFromDef = (prop) => isFieldDefinition(prop)
|
|
|
38
38
|
: undefined;
|
|
39
39
|
const hasArrayNotation = (key) => typeof key === 'string' && key.endsWith('[]');
|
|
40
40
|
const removeArrayNotation = (key) => hasArrayNotation(key) ? key.slice(0, key.length - 2) : key;
|
|
41
|
-
function
|
|
41
|
+
function createCastFn(def, schemas) {
|
|
42
42
|
if (isFieldDefinition(def)) {
|
|
43
43
|
if (def?.const !== undefined) {
|
|
44
44
|
return () => () => def.const;
|
|
@@ -69,13 +69,16 @@ const handleArray = (fn, isArrayExpected, type) => isArrayExpected
|
|
|
69
69
|
: type === 'unknown'
|
|
70
70
|
? (isRev, noDefaults) => fn(isRev, noDefaults)
|
|
71
71
|
: (isRev, noDefaults) => unwrapSingleArrayItem(fn(isRev, noDefaults));
|
|
72
|
-
function getDates(
|
|
73
|
-
|
|
72
|
+
function getDates(shouldHaveCreatedAt, shouldHaveUpdatedAt, createdAt, updatedAt, noDefaults) {
|
|
73
|
+
if (noDefaults) {
|
|
74
|
+
return {};
|
|
75
|
+
}
|
|
76
|
+
const nextCreatedAt = shouldHaveCreatedAt
|
|
74
77
|
? createdAt
|
|
75
78
|
? createdAt
|
|
76
79
|
: updatedAt ?? new Date()
|
|
77
80
|
: undefined;
|
|
78
|
-
const nextUpdatedAt =
|
|
81
|
+
const nextUpdatedAt = shouldHaveUpdatedAt
|
|
79
82
|
? updatedAt
|
|
80
83
|
? updatedAt
|
|
81
84
|
: nextCreatedAt ?? new Date()
|
|
@@ -85,8 +88,8 @@ function getDates(shape, createdAt, updatedAt) {
|
|
|
85
88
|
...(nextUpdatedAt ? { updatedAt: nextUpdatedAt } : {}),
|
|
86
89
|
};
|
|
87
90
|
}
|
|
88
|
-
function
|
|
89
|
-
const cast =
|
|
91
|
+
function createCastFnHandlingArrays(key, def, schemas) {
|
|
92
|
+
const cast = createCastFn(def, schemas);
|
|
90
93
|
if (cast) {
|
|
91
94
|
const type = typeFromDef(def);
|
|
92
95
|
return handleArray(cast, hasArrayNotation(key) || hasArrayNotation(type), type);
|
|
@@ -95,39 +98,42 @@ function createCastFn(key, def, schemas) {
|
|
|
95
98
|
return undefined;
|
|
96
99
|
}
|
|
97
100
|
}
|
|
98
|
-
const completeItemBeforeCast = ({ id, createdAt, updatedAt, ...item },
|
|
101
|
+
const completeItemBeforeCast = (shouldHaveCreatedAt, shouldHaveUpdatedAt, doGenerateId) => ({ id, createdAt, updatedAt, ...item }, noDefaults) => ({
|
|
99
102
|
id: id ?? (doGenerateId && !noDefaults ? nanoid() : null),
|
|
100
103
|
...item,
|
|
101
|
-
...
|
|
104
|
+
...getDates(shouldHaveCreatedAt, shouldHaveUpdatedAt, createdAt, updatedAt, noDefaults),
|
|
102
105
|
});
|
|
103
106
|
const castField = (item, isRev, noDefaults) => ([key, cast]) => [
|
|
104
107
|
key,
|
|
105
108
|
cast(isRev, noDefaults)(item[key]),
|
|
106
109
|
];
|
|
107
110
|
const fieldHasValue = ([_, value]) => value !== undefined;
|
|
111
|
+
const createFieldCast = (schemas) => ([key, def]) => [removeArrayNotation(key), createCastFnHandlingArrays(key, def, schemas)];
|
|
112
|
+
const entryHasCastFn = (entry) => entry[1] !== undefined;
|
|
113
|
+
const includeType = (isRev, type) => !isRev && typeof type === 'string' ? [['$type', type]] : [];
|
|
114
|
+
const includeIsNewAndIsDeleted = (item) => [
|
|
115
|
+
...(item.isNew === true ? [['isNew', true]] : []),
|
|
116
|
+
...(item.isDeleted === true ? [['isDeleted', true]] : []),
|
|
117
|
+
];
|
|
118
|
+
const createCastItemFn = (completeItem, fields, type) => (isRev, noDefaults) => function castItem(rawItem) {
|
|
119
|
+
if (!isObject(rawItem)) {
|
|
120
|
+
return undefined;
|
|
121
|
+
}
|
|
122
|
+
const item = completeItem(rawItem, noDefaults);
|
|
123
|
+
return Object.fromEntries([
|
|
124
|
+
...fields.map(castField(item, isRev, noDefaults)).filter(fieldHasValue),
|
|
125
|
+
...includeType(isRev, type),
|
|
126
|
+
...includeIsNewAndIsDeleted(item),
|
|
127
|
+
]);
|
|
128
|
+
};
|
|
108
129
|
function createShapeCast(shape, type, schemas, doGenerateId = false) {
|
|
109
130
|
const fields = Object.entries(shape)
|
|
110
|
-
.map((
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
return (
|
|
116
|
-
if (isObject(rawItem)) {
|
|
117
|
-
const item = completeItemBeforeCast(rawItem, shape, doGenerateId, noDefaults);
|
|
118
|
-
return Object.fromEntries([
|
|
119
|
-
...fields
|
|
120
|
-
.map(castField(item, isRev, noDefaults))
|
|
121
|
-
.filter(fieldHasValue),
|
|
122
|
-
...(!isRev && typeof type === 'string' ? [['$type', type]] : []),
|
|
123
|
-
...(item.isNew === true ? [['isNew', true]] : []),
|
|
124
|
-
...(item.isDeleted === true ? [['isDeleted', true]] : []),
|
|
125
|
-
]);
|
|
126
|
-
}
|
|
127
|
-
else {
|
|
128
|
-
return undefined;
|
|
129
|
-
}
|
|
130
|
-
};
|
|
131
|
+
.map(createFieldCast(schemas))
|
|
132
|
+
.filter(entryHasCastFn);
|
|
133
|
+
const shouldHaveCreatedAt = !!shape.createdAt;
|
|
134
|
+
const shouldHaveUpdatedAt = !!shape.updatedAt;
|
|
135
|
+
const completeItem = completeItemBeforeCast(shouldHaveCreatedAt, shouldHaveUpdatedAt, doGenerateId);
|
|
136
|
+
return createCastItemFn(completeItem, fields, type);
|
|
131
137
|
}
|
|
132
138
|
export default function createCast(shape, type, schemas = new Map(), doGenerateId = false) {
|
|
133
139
|
const castShape = createShapeCast(shape, type, schemas, doGenerateId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createCast.js","sourceRoot":"","sources":["../../src/schema/createCast.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,SAAS,MAAM,sBAAsB,CAAA;AAC5C,OAAO,MAAM,MAAM,mBAAmB,CAAA;AACtC,OAAO,SAAS,MAAM,sBAAsB,CAAA;AAC5C,OAAO,QAAQ,MAAM,qBAAqB,CAAA;AAC1C,OAAO,QAAQ,MAAM,qBAAqB,CAAA;AAC1C,OAAO,cAAc,MAAM,2BAA2B,CAAA;AACtD,OAAO,QAAQ,MAAM,qBAAqB,CAAA;AAC1C,OAAO,EACL,QAAQ,EACR,iBAAiB,EACjB,OAAO,EACP,oBAAoB,GACrB,MAAM,gBAAgB,CAAA;AACvB,OAAO,WAAW,MAAM,yBAAyB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAQ/C,SAAS,cAAc,CAAC,IAAY,EAAE,OAA4B;IAChE,QAAQ,IAAI,EAAE;QACZ,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAA;QACjB,KAAK,SAAS;YACZ,OAAO,SAAS,CAAA;QAClB,KAAK,QAAQ,CAAC;QACd,KAAK,OAAO;YACV,OAAO,QAAQ,CAAA;QACjB,KAAK,SAAS;YACZ,OAAO,SAAS,CAAA;QAClB,KAAK,MAAM;YACT,OAAO,MAAM,CAAA;QACf,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAA;QACjB,KAAK,SAAS;YACZ,OAAO,CAAC,KAAc,EAAE,EAAE,CAAC,KAAK,CAAA;QAClC;YACE,OAAO,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;KACvC;AACH,CAAC;AAED,MAAM,WAAW,GAAG,CAAC,IAAuC,EAAE,EAAE,CAC9D,iBAAiB,CAAC,IAAI,CAAC;IACrB,CAAC,CAAC,IAAI,CAAC,KAAK;IACZ,CAAC,CAAC,OAAO,IAAI,KAAK,QAAQ;QAC1B,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,SAAS,CAAA;AAEf,MAAM,gBAAgB,GAAG,CAAC,GAAY,EAAE,EAAE,CACxC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;AAE/C,MAAM,mBAAmB,GAAG,CAAC,GAAW,EAAE,EAAE,CAC1C,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;AAE5D,SAAS,
|
|
1
|
+
{"version":3,"file":"createCast.js","sourceRoot":"","sources":["../../src/schema/createCast.ts"],"names":[],"mappings":"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"}
|