@pristine-ts/data-mapping-common 2.0.3 → 2.0.5
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/lib/cjs/mappers/data.mapper.js +29 -0
- package/dist/lib/cjs/mappers/data.mapper.js.map +1 -1
- package/dist/lib/cjs/normalizers/string.normalizer.js +30 -8
- package/dist/lib/cjs/normalizers/string.normalizer.js.map +1 -1
- package/dist/lib/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/lib/esm/mappers/data.mapper.js +30 -1
- package/dist/lib/esm/mappers/data.mapper.js.map +1 -1
- package/dist/lib/esm/normalizers/string.normalizer.js +30 -8
- package/dist/lib/esm/normalizers/string.normalizer.js.map +1 -1
- package/dist/lib/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/types/normalizers/string.normalizer.d.ts +6 -0
- package/package.json +3 -3
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
1
10
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
11
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
12
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -7,11 +16,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
16
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
17
|
});
|
|
9
18
|
};
|
|
19
|
+
import { DataMappingBuilder } from "../builders/data-mapping.builder";
|
|
10
20
|
import { plainToInstance } from "class-transformer";
|
|
11
21
|
import { DataMappingInterceptorNotFoundError } from "../errors/data-mapping-interceptor-not-found.error";
|
|
22
|
+
import { AutoDataMappingBuilderOptions } from "../options/auto-data-mapping-builder.options";
|
|
12
23
|
import { DataMapperOptions } from "../options/data-mapper.options";
|
|
13
24
|
import { PrimitiveType } from "../enums/primitive-type.enum";
|
|
14
|
-
import { EnumUtil } from "@pristine-ts/common";
|
|
25
|
+
import { EnumUtil, traced } from "@pristine-ts/common";
|
|
15
26
|
import { StringNormalizerUniqueKey } from "../normalizers/string.normalizer";
|
|
16
27
|
import { AutoMapPrimitiveTypeNormalizerNotFoundError } from "../errors/auto-map-primitive-type-normalizer-not-found.error";
|
|
17
28
|
import { NumberNormalizerUniqueKey } from "../normalizers/number.normalizer";
|
|
@@ -160,4 +171,22 @@ export class DataMapper {
|
|
|
160
171
|
});
|
|
161
172
|
}
|
|
162
173
|
}
|
|
174
|
+
__decorate([
|
|
175
|
+
traced(),
|
|
176
|
+
__metadata("design:type", Function),
|
|
177
|
+
__metadata("design:paramtypes", [DataMappingBuilder, Array, Object]),
|
|
178
|
+
__metadata("design:returntype", Promise)
|
|
179
|
+
], DataMapper.prototype, "mapAll", null);
|
|
180
|
+
__decorate([
|
|
181
|
+
traced(),
|
|
182
|
+
__metadata("design:type", Function),
|
|
183
|
+
__metadata("design:paramtypes", [Object, Object, AutoDataMappingBuilderOptions]),
|
|
184
|
+
__metadata("design:returntype", Promise)
|
|
185
|
+
], DataMapper.prototype, "autoMap", null);
|
|
186
|
+
__decorate([
|
|
187
|
+
traced(),
|
|
188
|
+
__metadata("design:type", Function),
|
|
189
|
+
__metadata("design:paramtypes", [DataMappingBuilder, Object, Object, DataMapperOptions]),
|
|
190
|
+
__metadata("design:returntype", Promise)
|
|
191
|
+
], DataMapper.prototype, "map", null);
|
|
163
192
|
//# sourceMappingURL=data.mapper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.mapper.js","sourceRoot":"","sources":["../../../../src/mappers/data.mapper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"data.mapper.js","sourceRoot":"","sources":["../../../../src/mappers/data.mapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,17 +34,39 @@ export class StringNormalizer extends BaseNormalizer {
|
|
|
34
34
|
return source.toString();
|
|
35
35
|
case TypeEnum.Object:
|
|
36
36
|
if (source.hasOwnProperty("toString") === true) {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
return "" + source;
|
|
37
|
+
try {
|
|
38
|
+
return source.toString();
|
|
39
|
+
}
|
|
40
|
+
catch (_a) {
|
|
41
|
+
// Custom toString threw — fall through to JSON.stringify.
|
|
42
|
+
}
|
|
44
43
|
}
|
|
44
|
+
return this.safeStringify(source);
|
|
45
45
|
// For now, let's do that for other types. We can make it better eventually.
|
|
46
46
|
default:
|
|
47
|
-
return
|
|
47
|
+
return this.safeStringify(source);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Total stringifier. A normalizer must never propagate a throw from a user-supplied
|
|
52
|
+
* value's `toString` / `Symbol.toPrimitive` or from a circular `JSON.stringify` —
|
|
53
|
+
* normalization runs inside data-mapping pipelines whose callers don't expect to catch.
|
|
54
|
+
*/
|
|
55
|
+
safeStringify(value) {
|
|
56
|
+
try {
|
|
57
|
+
const json = JSON.stringify(value);
|
|
58
|
+
if (json !== undefined) {
|
|
59
|
+
return json;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
catch (_a) {
|
|
63
|
+
// Circular reference, BigInt, throwing toJSON, etc. Fall through.
|
|
64
|
+
}
|
|
65
|
+
try {
|
|
66
|
+
return String(value);
|
|
67
|
+
}
|
|
68
|
+
catch (_b) {
|
|
69
|
+
return "[unrepresentable]";
|
|
48
70
|
}
|
|
49
71
|
}
|
|
50
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"string.normalizer.js","sourceRoot":"","sources":["../../../../src/normalizers/string.normalizer.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAC,MAAM,EAAC,MAAM,UAAU,CAAC;AAChC,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAEjD,MAAM,CAAC,MAAM,yBAAyB,GAAG,4BAA4B,CAAC;AAEtE,MAAM,OAAO,gBAAiB,SAAQ,cAAuC;IAC3E,YAAY;QACV,OAAO,yBAAyB,CAAC;IACnC,CAAC;IAED,SAAS,CAAC,MAAW,EAAE,OAAiC;QACtD,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAElD,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAEnC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;YACzD,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,eAAe,MAAK,KAAK,EAAE,CAAC;gBACvC,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,QAAQ,CAAC,MAAM;gBAClB,OAAO,MAAM,CAAC;YAEhB,KAAK,QAAQ,CAAC,MAAM;gBAClB,OAAO,EAAE,GAAG,MAAM,CAAC;YAErB,KAAK,QAAQ,CAAC,OAAO;gBACnB,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;YAEnC,KAAK,QAAQ,CAAC,IAAI;gBAChB,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,EAAE,CAAC;oBACxB,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;gBAC5C,CAAC;gBAED,4IAA4I;gBAC5I,OAAQ,MAAe,CAAC,MAAM,EAAE,CAAC;YAEnC,KAAK,QAAQ,CAAC,KAAK;gBACjB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;YAElE,KAAK,QAAQ,CAAC,MAAM;gBAClB,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;YAE3B,KAAK,QAAQ,CAAC,MAAM;gBAClB,IAAI,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE,CAAC;oBAC/C,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"string.normalizer.js","sourceRoot":"","sources":["../../../../src/normalizers/string.normalizer.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAC,MAAM,EAAC,MAAM,UAAU,CAAC;AAChC,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAEjD,MAAM,CAAC,MAAM,yBAAyB,GAAG,4BAA4B,CAAC;AAEtE,MAAM,OAAO,gBAAiB,SAAQ,cAAuC;IAC3E,YAAY;QACV,OAAO,yBAAyB,CAAC;IACnC,CAAC;IAED,SAAS,CAAC,MAAW,EAAE,OAAiC;QACtD,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAElD,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAEnC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;YACzD,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,eAAe,MAAK,KAAK,EAAE,CAAC;gBACvC,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,QAAQ,CAAC,MAAM;gBAClB,OAAO,MAAM,CAAC;YAEhB,KAAK,QAAQ,CAAC,MAAM;gBAClB,OAAO,EAAE,GAAG,MAAM,CAAC;YAErB,KAAK,QAAQ,CAAC,OAAO;gBACnB,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;YAEnC,KAAK,QAAQ,CAAC,IAAI;gBAChB,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,EAAE,CAAC;oBACxB,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;gBAC5C,CAAC;gBAED,4IAA4I;gBAC5I,OAAQ,MAAe,CAAC,MAAM,EAAE,CAAC;YAEnC,KAAK,QAAQ,CAAC,KAAK;gBACjB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;YAElE,KAAK,QAAQ,CAAC,MAAM;gBAClB,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;YAE3B,KAAK,QAAQ,CAAC,MAAM;gBAClB,IAAI,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE,CAAC;oBAC/C,IAAI,CAAC;wBACH,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;oBAC3B,CAAC;oBAAC,WAAM,CAAC;wBACP,0DAA0D;oBAC5D,CAAC;gBACH,CAAC;gBAED,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAEpC,4EAA4E;YAC5E;gBACE,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,aAAa,CAAC,KAAc;QAClC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACnC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAAC,WAAM,CAAC;YACP,kEAAkE;QACpE,CAAC;QAED,IAAI,CAAC;YACH,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;QAAC,WAAM,CAAC;YACP,OAAO,mBAAmB,CAAC;QAC7B,CAAC;IACH,CAAC;CACF"}
|