@pristine-ts/data-mapping-common 2.0.4 → 2.0.6
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/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/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
|
@@ -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"}
|