@forestadmin/datasource-sequelize 1.4.0 → 1.5.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.
|
@@ -2,5 +2,6 @@ import { RecordData } from '@forestadmin/datasource-toolkit';
|
|
|
2
2
|
export default class Serializer {
|
|
3
3
|
static serialize(record: RecordData): RecordData;
|
|
4
4
|
static serializeValue(value: unknown): unknown;
|
|
5
|
+
static serializeDate(date: Date): string;
|
|
5
6
|
}
|
|
6
7
|
//# sourceMappingURL=serializer.d.ts.map
|
package/dist/utils/serializer.js
CHANGED
|
@@ -5,25 +5,33 @@ class Serializer {
|
|
|
5
5
|
Object.entries(record).forEach(([name, value]) => {
|
|
6
6
|
if (value instanceof Date)
|
|
7
7
|
record[name] = this.serializeValue(value);
|
|
8
|
-
if (Array.isArray(value))
|
|
8
|
+
else if (Array.isArray(value))
|
|
9
9
|
this.serializeValue(value); // the change is by references
|
|
10
|
-
if (value instanceof Object)
|
|
10
|
+
else if (value instanceof Object)
|
|
11
11
|
return this.serialize(record[name]);
|
|
12
12
|
});
|
|
13
13
|
return record;
|
|
14
14
|
}
|
|
15
15
|
static serializeValue(value) {
|
|
16
16
|
if (value instanceof Date)
|
|
17
|
-
return
|
|
17
|
+
return Serializer.serializeDate(value);
|
|
18
18
|
if (Array.isArray(value)) {
|
|
19
19
|
value.forEach((v, i) => {
|
|
20
20
|
// serialize by reference to improve performances by avoiding the copies
|
|
21
|
-
if (
|
|
22
|
-
value[i] =
|
|
21
|
+
if (v instanceof Date)
|
|
22
|
+
value[i] = Serializer.serializeDate(v);
|
|
23
23
|
});
|
|
24
24
|
}
|
|
25
25
|
return value;
|
|
26
26
|
}
|
|
27
|
+
static serializeDate(date) {
|
|
28
|
+
try {
|
|
29
|
+
return date.toISOString();
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
27
35
|
}
|
|
28
36
|
exports.default = Serializer;
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsaXplci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9zZXJpYWxpemVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUEsTUFBcUIsVUFBVTtJQUM3QixNQUFNLENBQUMsU0FBUyxDQUFDLE1BQWtCO1FBQ2pDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtZQUMvQyxJQUFJLEtBQUssWUFBWSxJQUFJO2dCQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO2lCQUNoRSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO2dCQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyw4QkFBOEI7aUJBQ3BGLElBQUksS0FBSyxZQUFZLE1BQU07Z0JBQUUsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBYztRQUNsQyxJQUFJLEtBQUssWUFBWSxJQUFJO1lBQUUsT0FBTyxVQUFVLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWxFLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN4QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUNyQix3RUFBd0U7Z0JBQ3hFLElBQUksQ0FBQyxZQUFZLElBQUk7b0JBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDaEUsQ0FBQyxDQUFDLENBQUM7U0FDSjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBVTtRQUM3QixJQUFJO1lBQ0YsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDM0I7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLE9BQU8sSUFBSSxDQUFDO1NBQ2I7SUFDSCxDQUFDO0NBQ0Y7QUEvQkQsNkJBK0JDIn0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forestadmin/datasource-sequelize",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.0",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"license": "GPL-3.0",
|
|
6
6
|
"publishConfig": {
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"directory": "packages/datasource-sequelize"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@forestadmin/datasource-toolkit": "1.
|
|
15
|
+
"@forestadmin/datasource-toolkit": "1.9.0"
|
|
16
16
|
},
|
|
17
17
|
"files": [
|
|
18
18
|
"dist/**/*.js",
|