@cratis/fundamentals 7.19.4 → 7.19.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/JsonSerializer.ts +13 -6
- package/dist/JsonSerializer.d.ts.map +1 -1
- package/dist/JsonSerializer.js +15 -6
- package/dist/JsonSerializer.js.map +1 -1
- package/dist/cjs/ConceptAs.d.ts +1 -1
- package/dist/cjs/DateOnly.d.ts +1 -1
- package/dist/cjs/DerivedType.d.ts +2 -2
- package/dist/cjs/Field.d.ts +1 -1
- package/dist/cjs/Fields.d.ts +3 -3
- package/dist/cjs/Guid.d.ts +2 -2
- package/dist/cjs/JsonSerializer.d.ts +2 -2
- package/dist/cjs/JsonSerializer.d.ts.map +1 -1
- package/dist/cjs/JsonSerializer.js +15 -6
- package/dist/cjs/JsonSerializer.js.map +1 -1
- package/dist/cjs/PropertyAccessorDescriptor.d.ts +1 -1
- package/dist/cjs/StandardClassDecoratorContext.d.ts +1 -1
- package/dist/cjs/TimeOnly.d.ts +1 -1
- package/dist/cjs/TimeSpan.d.ts +1 -1
- package/dist/cjs/ValueMap.d.ts +1 -1
- package/dist/cjs/derivedTypeDecorator.d.ts +3 -3
- package/dist/cjs/fieldDecorator.d.ts +2 -2
- package/dist/cjs/fieldDecoratorMetadata.d.ts +3 -3
- package/dist/cjs/geospatial/LineString.d.ts +2 -2
- package/dist/cjs/geospatial/LinearRing.d.ts +1 -1
- package/dist/cjs/geospatial/Point.d.ts +1 -1
- package/dist/cjs/geospatial/Polygon.d.ts +2 -2
- package/dist/cjs/geospatial/index.d.ts +4 -4
- package/dist/cjs/index.d.ts +20 -20
- package/dist/cjs/json/DateJsonConverter.d.ts +2 -2
- package/dist/cjs/json/DateOnlyJsonConverter.d.ts +3 -3
- package/dist/cjs/json/GuidJsonConverter.d.ts +3 -3
- package/dist/cjs/json/JsonConverter.d.ts +1 -1
- package/dist/cjs/json/LineStringJsonConverter.d.ts +3 -3
- package/dist/cjs/json/PointJsonConverter.d.ts +3 -3
- package/dist/cjs/json/PolygonJsonConverter.d.ts +3 -3
- package/dist/cjs/json/TimeOnlyJsonConverter.d.ts +3 -3
- package/dist/cjs/json/TimeSpanJsonConverter.d.ts +3 -3
- package/dist/cjs/json/ValueMapJsonConverter.d.ts +3 -3
- package/dist/cjs/json/index.d.ts +10 -10
- package/dist/cjs/typeKey.d.ts +1 -1
- package/dist/esm/ConceptAs.d.ts +1 -1
- package/dist/esm/DateOnly.d.ts +1 -1
- package/dist/esm/DerivedType.d.ts +2 -2
- package/dist/esm/Field.d.ts +1 -1
- package/dist/esm/Fields.d.ts +3 -3
- package/dist/esm/Guid.d.ts +2 -2
- package/dist/esm/JsonSerializer.d.ts +2 -2
- package/dist/esm/JsonSerializer.d.ts.map +1 -1
- package/dist/esm/JsonSerializer.js +15 -6
- package/dist/esm/JsonSerializer.js.map +1 -1
- package/dist/esm/PropertyAccessorDescriptor.d.ts +1 -1
- package/dist/esm/StandardClassDecoratorContext.d.ts +1 -1
- package/dist/esm/TimeOnly.d.ts +1 -1
- package/dist/esm/TimeSpan.d.ts +1 -1
- package/dist/esm/ValueMap.d.ts +1 -1
- package/dist/esm/derivedTypeDecorator.d.ts +3 -3
- package/dist/esm/fieldDecorator.d.ts +2 -2
- package/dist/esm/fieldDecoratorMetadata.d.ts +3 -3
- package/dist/esm/geospatial/LineString.d.ts +2 -2
- package/dist/esm/geospatial/LinearRing.d.ts +1 -1
- package/dist/esm/geospatial/Point.d.ts +1 -1
- package/dist/esm/geospatial/Polygon.d.ts +2 -2
- package/dist/esm/geospatial/index.d.ts +4 -4
- package/dist/esm/index.d.ts +20 -20
- package/dist/esm/json/DateJsonConverter.d.ts +2 -2
- package/dist/esm/json/DateOnlyJsonConverter.d.ts +3 -3
- package/dist/esm/json/GuidJsonConverter.d.ts +3 -3
- package/dist/esm/json/JsonConverter.d.ts +1 -1
- package/dist/esm/json/LineStringJsonConverter.d.ts +3 -3
- package/dist/esm/json/PointJsonConverter.d.ts +3 -3
- package/dist/esm/json/PolygonJsonConverter.d.ts +3 -3
- package/dist/esm/json/TimeOnlyJsonConverter.d.ts +3 -3
- package/dist/esm/json/TimeSpanJsonConverter.d.ts +3 -3
- package/dist/esm/json/ValueMapJsonConverter.d.ts +3 -3
- package/dist/esm/json/index.d.ts +10 -10
- package/dist/esm/typeKey.d.ts +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/for_JsonSerializer/given/a_model_with_field_metadata.ts +63 -0
- package/for_JsonSerializer/given/given.ts +6 -0
- package/for_JsonSerializer/when_deserializing_fields_with_legacy_decorators.ts +41 -0
- package/for_JsonSerializer/when_deserializing_generic_array_without_a_value.ts +10 -0
- package/for_JsonSerializer/when_round_tripping_fields_with_legacy_decorators.ts +31 -0
- package/for_fieldDecorator/fixtures/standard_decorated_types.ts +53 -2
- package/for_fieldDecorator/when_executing_standard_typescript_decorator_emit.ts +46 -1
- package/package.json +37 -16
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Constructor } from '../Constructor';
|
|
2
|
-
import { TimeSpan } from '../TimeSpan';
|
|
3
|
-
import { JsonConverter } from './JsonConverter';
|
|
1
|
+
import { Constructor } from '../Constructor.js';
|
|
2
|
+
import { TimeSpan } from '../TimeSpan.js';
|
|
3
|
+
import { JsonConverter } from './JsonConverter.js';
|
|
4
4
|
export declare class TimeSpanJsonConverter extends JsonConverter<TimeSpan> {
|
|
5
5
|
get type(): Constructor<TimeSpan>;
|
|
6
6
|
read(value: any): TimeSpan;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Constructor } from '../Constructor';
|
|
2
|
-
import { ValueMap } from '../ValueMap';
|
|
3
|
-
import { JsonConverter } from './JsonConverter';
|
|
1
|
+
import { Constructor } from '../Constructor.js';
|
|
2
|
+
import { ValueMap } from '../ValueMap.js';
|
|
3
|
+
import { JsonConverter } from './JsonConverter.js';
|
|
4
4
|
export declare class ValueMapJsonConverter extends JsonConverter<ValueMap<any, any>> {
|
|
5
5
|
private static serializeMapKey;
|
|
6
6
|
private static convertTypesOnInstance;
|
package/dist/esm/json/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
export * from './JsonConverter';
|
|
2
|
-
export * from './DateJsonConverter';
|
|
3
|
-
export * from './DateOnlyJsonConverter';
|
|
4
|
-
export * from './GuidJsonConverter';
|
|
5
|
-
export * from './TimeOnlyJsonConverter';
|
|
6
|
-
export * from './TimeSpanJsonConverter';
|
|
7
|
-
export * from './PointJsonConverter';
|
|
8
|
-
export * from './LineStringJsonConverter';
|
|
9
|
-
export * from './PolygonJsonConverter';
|
|
10
|
-
export * from './ValueMapJsonConverter';
|
|
1
|
+
export * from './JsonConverter.js';
|
|
2
|
+
export * from './DateJsonConverter.js';
|
|
3
|
+
export * from './DateOnlyJsonConverter.js';
|
|
4
|
+
export * from './GuidJsonConverter.js';
|
|
5
|
+
export * from './TimeOnlyJsonConverter.js';
|
|
6
|
+
export * from './TimeSpanJsonConverter.js';
|
|
7
|
+
export * from './PointJsonConverter.js';
|
|
8
|
+
export * from './LineStringJsonConverter.js';
|
|
9
|
+
export * from './PolygonJsonConverter.js';
|
|
10
|
+
export * from './ValueMapJsonConverter.js';
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/esm/typeKey.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Constructor } from './Constructor';
|
|
1
|
+
import { Constructor } from './Constructor.js';
|
|
2
2
|
export declare const typeKey: unique symbol;
|
|
3
3
|
export declare const declaredTypeKey: (type: Constructor | undefined) => string | undefined;
|
|
4
4
|
export declare const typeKeyOf: (type: Constructor | undefined) => string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"7.0.2","root":[[92,131]],"packageJsons":["../node_modules/tslib/modules/package.json","../node_modules/tslib/package.json","../package.json"],"fileNames":["lib.es5.d.ts","lib.es2015.d.ts","lib.es2016.d.ts","lib.es2017.d.ts","lib.es2018.d.ts","lib.es2019.d.ts","lib.es2020.d.ts","lib.es2021.d.ts","lib.es2022.d.ts","lib.es2023.d.ts","lib.es2024.d.ts","lib.es2025.d.ts","lib.esnext.d.ts","lib.dom.d.ts","lib.dom.iterable.d.ts","lib.es2015.core.d.ts","lib.es2015.collection.d.ts","lib.es2015.generator.d.ts","lib.es2015.iterable.d.ts","lib.es2015.promise.d.ts","lib.es2015.proxy.d.ts","lib.es2015.reflect.d.ts","lib.es2015.symbol.d.ts","lib.es2015.symbol.wellknown.d.ts","lib.es2016.array.include.d.ts","lib.es2016.intl.d.ts","lib.es2017.arraybuffer.d.ts","lib.es2017.date.d.ts","lib.es2017.object.d.ts","lib.es2017.sharedmemory.d.ts","lib.es2017.string.d.ts","lib.es2017.intl.d.ts","lib.es2017.typedarrays.d.ts","lib.es2018.asyncgenerator.d.ts","lib.es2018.asynciterable.d.ts","lib.es2018.intl.d.ts","lib.es2018.promise.d.ts","lib.es2018.regexp.d.ts","lib.es2019.array.d.ts","lib.es2019.object.d.ts","lib.es2019.string.d.ts","lib.es2019.symbol.d.ts","lib.es2019.intl.d.ts","lib.es2020.bigint.d.ts","lib.es2020.date.d.ts","lib.es2020.promise.d.ts","lib.es2020.sharedmemory.d.ts","lib.es2020.string.d.ts","lib.es2020.symbol.wellknown.d.ts","lib.es2020.intl.d.ts","lib.es2020.number.d.ts","lib.es2021.promise.d.ts","lib.es2021.string.d.ts","lib.es2021.weakref.d.ts","lib.es2021.intl.d.ts","lib.es2022.array.d.ts","lib.es2022.error.d.ts","lib.es2022.intl.d.ts","lib.es2022.object.d.ts","lib.es2022.string.d.ts","lib.es2022.regexp.d.ts","lib.es2023.array.d.ts","lib.es2023.collection.d.ts","lib.es2023.intl.d.ts","lib.es2024.arraybuffer.d.ts","lib.es2024.collection.d.ts","lib.es2024.object.d.ts","lib.es2024.promise.d.ts","lib.es2024.regexp.d.ts","lib.es2024.sharedmemory.d.ts","lib.es2024.string.d.ts","lib.es2025.collection.d.ts","lib.es2025.float16.d.ts","lib.es2025.intl.d.ts","lib.es2025.iterator.d.ts","lib.es2025.promise.d.ts","lib.es2025.regexp.d.ts","lib.esnext.array.d.ts","lib.esnext.collection.d.ts","lib.esnext.date.d.ts","lib.esnext.decorators.d.ts","lib.esnext.disposable.d.ts","lib.esnext.error.d.ts","lib.esnext.intl.d.ts","lib.esnext.sharedmemory.d.ts","lib.esnext.temporal.d.ts","lib.esnext.typedarrays.d.ts","lib.decorators.d.ts","lib.decorators.legacy.d.ts","../node_modules/tslib/tslib.d.ts","../node_modules/tslib/modules/index.d.ts","../Constructor.ts","../typeKey.ts","../ConceptAs.ts","../Field.ts","../reflection.ts","../fieldDecoratorMetadata.ts","../Fields.ts","../StandardFieldDecoratorContext.ts","../fieldDecorator.ts","../DateOnly.ts","../DerivedType.ts","../IEquatable.ts","../Guid.ts","../duplicateInstanceGuard.ts","../ValueMap.ts","../json/JsonConverter.ts","../json/DateJsonConverter.ts","../json/DateOnlyJsonConverter.ts","../json/GuidJsonConverter.ts","../TimeOnly.ts","../json/TimeOnlyJsonConverter.ts","../TimeSpan.ts","../json/TimeSpanJsonConverter.ts","../geospatial/Point.ts","../geospatial/LinearRing.ts","../geospatial/LineString.ts","../geospatial/Polygon.ts","../geospatial/index.ts","../json/PointJsonConverter.ts","../json/LineStringJsonConverter.ts","../json/PolygonJsonConverter.ts","../json/ValueMapJsonConverter.ts","../json/index.ts","../JsonSerializer.ts","../PropertyAccessor.ts","../PropertyAccessorDescriptor.ts","../PropertyPathResolverProxyHandler.ts","../StandardClassDecoratorContext.ts","../derivedTypeDecorator.ts","../index.ts"],"fileInfos":[{"version":"16934abaab7026ac114da441aabea1a0","affectsGlobalScope":true,"impliedNodeFormat":1},"d4306fb2e47f74835e8674ffac07d76f","e437c5c1302869326c3bb93da85bbbcf","e4324975a566567b21d350615f1fc6ac","333b1b9a2a9ac3b8497dba5c63b5ba50","6cffacd662b6eb5fa7a36aa2ea366bfa","b4c34f9c23304dbef2d23698637ed638","e5cb86a5fc491796ecd1d2dd348d208f","feb6c6fb19cdb246a5d8acb36a6901c7","9443a7f109277ffaa79d893ed2549995","793cee405385076e27c24f409659dccd","09f69c6610266eaee1ac9e3e30df2c71","62bad718844246b8e17547f37bad6085",{"version":"aae8996e8b5684814785a42cbbefcd79","affectsGlobalScope":true,"impliedNodeFormat":1},"abad6dd56cc8caf095c165df8124d237",{"version":"926204c28cd3d073865348473ae28d2e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f25e42c801b2cb3cf2b39792006a9beb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6344b55f26a4e81d9608777dbfb877dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3c0ed28e53d3695b363e256ec1c023fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4c2761daba7f17141c25baa0821ac5da","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b87656acabd63e69379ff6ffcfe52fc7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"597469522da047a5af5222cc6989f405","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1708ea4d34dc37fadadc63ca01127e80","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"55d97a8c6fbf34a30450a7b1e5f7a298","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0ee05eb59426d33e374226d8dcfa708b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e347c14030993906efcfbb88915b6a05","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b0231263857c9b6a03641acdc9280ceb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3b15c4a83b598cacb4067676e6f0abed","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b417d97b7934cef63b1889abec0bbfbf","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"09a6cf4032ebba60ce22a501e663f881","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2b056277dd138e8f5650fc04e20eaa8d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e22cc07e3f3cc242ba52fa3f8ea1fc58","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2c45da767a1bfbb220848df1bc4029e4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b44c3e0fbaf2130cdcf6ac38b120ffa1","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b612fb5cf8e5d964b92063a75207632a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"02705151a5e1551b9162a9ed8ab763f7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"41025e398be9215d32e4337335da8f0b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"52684c2b1f353a5538e4f275182a54cd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6dedb6a4f90d1df3a6fbe5693e44886c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ca3f36fe3562c07e0f0d71c2bebd3f6d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"409974d6129befbb8226ddd1c6558568","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4d9cfde2a1ae1b4925f1f9bc10848e5d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7e1daecc66dd564144e3bb1a0266b5fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a8e1d9bb35fd0637f2f9fd2b2a54f2ec","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4f168501772a6543182765bfd5f2fbfe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a19c80aad1b2162103496f5ba293a732","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b69afa63cd5d059851c78adb2856ee09","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ae2fc5d954e9b0f5feee3d481b953c27","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1cfd3091a071d8b6feec15277643bafe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1da2c1f258970fd3cc91184f69e91a9d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a0d87491913d843139e0c993650a3235","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4ef72aa378127e7b7abba915b0110b1e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3ec74c6a7d4463f0254db3a74cf75646","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"84c2bdfa470d075526cce6322d81b0b6","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0b3844c2b8c73e4e1ab91431411cad11","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4fc71cf4a15b8d99675a31df77f26e07","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d1b49564ddaeca3df5b6dbae925d2242","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6a25be566d60ccfc2d6e8b7bfdeefa83","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8a20e27646985dfd58c57ca6566553dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9969f02ad3cdcbf4f709405cda44167f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9c9be4792a7a4f42c15ae7360bf28779","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8cf777fe00349b71ee9c4b6f3fe7fd19","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"74f96bc192530c9723f572bfff3d3078","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1df91c56b25955c56387426f378173c5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"38856f70edcd2115c355d96ec77cc09e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"de8700156c1275465bcd473c28b359aa","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d47cfdb6ede40518357bb5a4cd7cd9fb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6e5773860cd9e5b15e683113f642ab47","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"30ff5fe1682f7fcd629880476ca3c2e0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"bf23d7d1b40b9015b694ddc2f011752f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2cc585d42e2c548f9f24a30a1989fd33","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"713906ce9d332d2242b7f05ed9304be3","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0219894bfe5042c7e1aa2d22e4a91ed0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6009ffff7e43c93318804d2d28e37fe3","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"03be89b227587594fbb50509fc1c2e45","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b30df52dc24740c0bad7c55c3511df7d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ab8d3c9b5ed5c2ab8f383607eef439f0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d950ec671d0a8e07f3c1a31e94abed86","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1abef2ace5eccb02d60dd73cd5a5ee4c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f5f0a3044029d1cc081b5887eb4deb07","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d57c697f1446940ec4bfe669c962e2c4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"be41035d7b941482a1e1ae6a5c5dcca5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"10f7d9da7564f27f8ddf4a162b6da6d3","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1d0520af549e0c3581f15173cc713ca1","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d65083f97fd741cff028472563eddb79","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"da7f24f00653ebac660ac1c0821ed33d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7cb5ae9e65516ea2235f0721f6aac43c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f64453cbf9671f28158677fa5c43967a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"33f317af5428801f944a478d2c1e38e5","affectsGlobalScope":true,"impliedNodeFormat":1},"68565f078f6cbaa18bac7ac1aee706a4",{"version":"6df9988546b1b8e15cb137c4ed46c629","impliedNodeFormat":99},{"version":"04bfab517bef8ec649195900a112645a","signature":"0aa13ceea7e7c3f53c785d7ca09fc461","impliedNodeFormat":1},{"version":"4be4109ece9fb3a502363e428d4b9d09","signature":"05d855d5235efc2be94c1a4393c609e4","impliedNodeFormat":1},{"version":"a7ffa0f207e5e558300b989f56e10ed8","signature":"dee26c2062ab4d0c96825cd9f06fc8ec","impliedNodeFormat":1},{"version":"30572a6c021fe02cf36ded539f81c4ab","signature":"86f3667a6b4bdf2ea2cb1b3d22824431","impliedNodeFormat":1},{"version":"d6444c005923a0e29b164735b3faf628","signature":"3ebc9c537c34634924dad5f75a5e826d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"eed8a4269d54d1b794fc93932726b39a","signature":"4c5307b1c87b22bd7862ce9245df2355","impliedNodeFormat":1},{"version":"4dad3ba63dfa4906aa5d59f3b088a12a","signature":"0c843f46bbfeb9f4f5e2f551ac701e71","impliedNodeFormat":1},{"version":"2a26f729ac58a50a4af8ae4cb949113b","signature":"56e1e5e440c94e1e1d7f6e87e79ad79a","impliedNodeFormat":1},{"version":"1a5c6baa45b220f4318f3265c59548eb","signature":"613a934507b0cfd0950cb8e6973dfedf","impliedNodeFormat":1},{"version":"485c2c85724ef7b3927b680aea8a91f9","signature":"bad057a4b4ea4af9b6014d316293750a","impliedNodeFormat":1},{"version":"b361021d3d18d13aac63b35d4b0ef1d1","signature":"e574772f7137c7acb41b9b4cf9df058d","impliedNodeFormat":1},{"version":"10bacfe190f9fe270633c42af70386a1","signature":"38aed49039f4cd461d25f012f97b8c39","impliedNodeFormat":1},{"version":"cc34701bb2e1462b45d017a6fe2f141f","signature":"719dfec5f3283ec85710adbba78e6365","impliedNodeFormat":1},{"version":"4824fb9728966ca9f9ce17b9ce75f05c","signature":"c2020050bac2e38d3fa0a6b493982137","impliedNodeFormat":1},{"version":"a1749f74fd525e58a163f183940e7e09","signature":"6aa3c11249f9aaa1ac65d937ead30969","impliedNodeFormat":1},{"version":"351814ccfa1ba58ef45ec89a4aeb404c","signature":"f98eec2170a99869483d3eca900d0cc0","impliedNodeFormat":1},{"version":"5184ac9b0d8991786893fe84aa78d6b9","signature":"b5ebd566a1965c6a14cd722344ce6f6e","impliedNodeFormat":1},{"version":"c7735481ae825eb6bbcfd4a9805ba6c1","signature":"a7d694b86b36ce7df89de40ffc9402aa","impliedNodeFormat":1},{"version":"908d0f661e9c957f8aa06d19d4ab330d","signature":"6417e5a1c83740dd726339c7dcb25e00","impliedNodeFormat":1},{"version":"7ac4e2073efabc8a9b3ffd50e858f616","signature":"a45a1270e3bec3c20dfc71dbd1f4c873","impliedNodeFormat":1},{"version":"9e48231dbfedcc7214ebef6ea6286a23","signature":"6fbd3fb27221371a80b8e5096ab64669","impliedNodeFormat":1},{"version":"dbf142eb5e53d886df2e7093c459d38a","signature":"819455b7d09613669008590152f72bfb","impliedNodeFormat":1},{"version":"458e81f3aa2be4dce8b9c74ea9501bbb","signature":"cb18508ff8bbf75a7e3ab6a4326d04bc","impliedNodeFormat":1},{"version":"27ff541c8e95725471b6b63deda1cee5","signature":"58b7f36019024977c58e8f9578061940","impliedNodeFormat":1},{"version":"5a1c99c1b8aee61fe81f2c24580f964a","signature":"f54113fe7e33138fa6bef35633d9c756","impliedNodeFormat":1},{"version":"640a86079ef069627d498d92042be3fd","signature":"9ebee2bd622814352f911c1123c777bb","impliedNodeFormat":1},{"version":"c61a48c85d6c125ca9883e4b050cdca7","signature":"1c1616eb4a9ee2509a326a00d2bb66f7","impliedNodeFormat":1},{"version":"422db4edf8c3ce6cf7e553ebd6fb9d67","signature":"9cb1145b2a3893442ee4af6d07a433a1","impliedNodeFormat":1},{"version":"f5389e83dd9ce8454cf4c529c3f27303","signature":"f39ebf82376bef22974827fb45fc2868","impliedNodeFormat":1},{"version":"aa02a24e6da8595f2ddf20291c42af9f","signature":"1fb32a9a54778e35701953fde7d6a644","impliedNodeFormat":1},{"version":"5565dbac2a69a59c1fcba503a6e50586","signature":"5faf589f6dca05637ace1b1e2b65a5d9","impliedNodeFormat":1},{"version":"8e1e86bc20e3c61f979e2567130c7842","signature":"b862c86ba994a1012909a9193bf8fccb","impliedNodeFormat":1},{"version":"11d4a6190e2dfd54e76be78ac56a83d2","signature":"c008349de6f254aab2ea421ab4467148","impliedNodeFormat":1},{"version":"e399c2749f7860a89efb559dc3ab8650","signature":"619e7562793b95efc8e4045b345c2958","impliedNodeFormat":1},{"version":"90afd3587a9a35670427e6961c843453","signature":"5c86fabce3450c64974c38377a4c7e78","impliedNodeFormat":1},{"version":"88e8ac668c482d4adea78be66563f1df","signature":"44105eab8a75458fcab12433d5d313c3","impliedNodeFormat":1},{"version":"975510ec28b104338b0200ad7da6681a","signature":"94ffea549c13e56a8cf4c04a811cbc75","impliedNodeFormat":1},{"version":"4233f8df71c1590dc418143794641f46","signature":"5c8de80b459b0cbf43397cfb4b8ff0d3","impliedNodeFormat":1},{"version":"77ef4441645eb9547648b763c0e124d6","signature":"d42cb94635f66e63be4724c41308e9c7","impliedNodeFormat":1},{"version":"22ac9c87f6f69a0d5e058def48f6029e","signature":"58604a62d80d6df338da00a0caafddb6","impliedNodeFormat":1}],"fileIdsList":[[93],[93,100],[92,96],[92],[92,95,96,97],[93,103],[92,93,95,98,102,105,106,124],[126],[92,96,102,129],[92,95,97,98,99],[92,95,96],[93,115],[115],[93,116],[115,116,117,118],[92,93,94,95,98,100,101,102,103,104,106,111,113,119,124,125,126,127,128,130],[92,107],[92,101,107],[92,104,107],[92,107,119],[92,107,111],[92,107,113],[92,106,107],[107,108,109,110,112,114,120,121,122,123],[90]],"options":{"allowJs":false,"assumeChangesOnlyAffectDirectDependencies":true,"checkJs":false,"composite":true,"emitDecoratorMetadata":true,"declaration":true,"declarationMap":true,"experimentalDecorators":true,"importHelpers":true,"jsx":4,"module":7,"newLine":2,"noFallthroughCasesInSwitch":true,"noImplicitAny":false,"noImplicitReturns":true,"outDir":"./","preserveConstEnums":true,"removeComments":true,"rootDir":"..","skipLibCheck":true,"strict":true,"strictNullChecks":true,"stripInternal":true,"sourceMap":true,"target":9,"allowSyntheticDefaultImports":true,"alwaysStrict":true,"esModuleInterop":true},"referencedMap":[[94,1],[101,2],[102,3],[95,4],[98,5],[104,6],[125,7],[127,8],[129,4],[111,2],[113,2],[106,1],[130,9],[100,10],[97,11],[117,12],[116,13],[115,2],[118,14],[119,15],[131,16],[108,17],[109,18],[110,19],[107,4],[121,20],[120,20],[122,20],[112,21],[114,22],[123,23],[124,24],[91,25],[93,4]],"latestChangedDtsFile":"./index.d.ts"}
|
|
1
|
+
{"version":"7.0.2","root":[[92,131]],"packageJsons":["../node_modules/tslib/modules/package.json","../node_modules/tslib/package.json","../package.json"],"fileNames":["lib.es5.d.ts","lib.es2015.d.ts","lib.es2016.d.ts","lib.es2017.d.ts","lib.es2018.d.ts","lib.es2019.d.ts","lib.es2020.d.ts","lib.es2021.d.ts","lib.es2022.d.ts","lib.es2023.d.ts","lib.es2024.d.ts","lib.es2025.d.ts","lib.esnext.d.ts","lib.dom.d.ts","lib.dom.iterable.d.ts","lib.es2015.core.d.ts","lib.es2015.collection.d.ts","lib.es2015.generator.d.ts","lib.es2015.iterable.d.ts","lib.es2015.promise.d.ts","lib.es2015.proxy.d.ts","lib.es2015.reflect.d.ts","lib.es2015.symbol.d.ts","lib.es2015.symbol.wellknown.d.ts","lib.es2016.array.include.d.ts","lib.es2016.intl.d.ts","lib.es2017.arraybuffer.d.ts","lib.es2017.date.d.ts","lib.es2017.object.d.ts","lib.es2017.sharedmemory.d.ts","lib.es2017.string.d.ts","lib.es2017.intl.d.ts","lib.es2017.typedarrays.d.ts","lib.es2018.asyncgenerator.d.ts","lib.es2018.asynciterable.d.ts","lib.es2018.intl.d.ts","lib.es2018.promise.d.ts","lib.es2018.regexp.d.ts","lib.es2019.array.d.ts","lib.es2019.object.d.ts","lib.es2019.string.d.ts","lib.es2019.symbol.d.ts","lib.es2019.intl.d.ts","lib.es2020.bigint.d.ts","lib.es2020.date.d.ts","lib.es2020.promise.d.ts","lib.es2020.sharedmemory.d.ts","lib.es2020.string.d.ts","lib.es2020.symbol.wellknown.d.ts","lib.es2020.intl.d.ts","lib.es2020.number.d.ts","lib.es2021.promise.d.ts","lib.es2021.string.d.ts","lib.es2021.weakref.d.ts","lib.es2021.intl.d.ts","lib.es2022.array.d.ts","lib.es2022.error.d.ts","lib.es2022.intl.d.ts","lib.es2022.object.d.ts","lib.es2022.string.d.ts","lib.es2022.regexp.d.ts","lib.es2023.array.d.ts","lib.es2023.collection.d.ts","lib.es2023.intl.d.ts","lib.es2024.arraybuffer.d.ts","lib.es2024.collection.d.ts","lib.es2024.object.d.ts","lib.es2024.promise.d.ts","lib.es2024.regexp.d.ts","lib.es2024.sharedmemory.d.ts","lib.es2024.string.d.ts","lib.es2025.collection.d.ts","lib.es2025.float16.d.ts","lib.es2025.intl.d.ts","lib.es2025.iterator.d.ts","lib.es2025.promise.d.ts","lib.es2025.regexp.d.ts","lib.esnext.array.d.ts","lib.esnext.collection.d.ts","lib.esnext.date.d.ts","lib.esnext.decorators.d.ts","lib.esnext.disposable.d.ts","lib.esnext.error.d.ts","lib.esnext.intl.d.ts","lib.esnext.sharedmemory.d.ts","lib.esnext.temporal.d.ts","lib.esnext.typedarrays.d.ts","lib.decorators.d.ts","lib.decorators.legacy.d.ts","../node_modules/tslib/tslib.d.ts","../node_modules/tslib/modules/index.d.ts","../Constructor.ts","../typeKey.ts","../ConceptAs.ts","../Field.ts","../reflection.ts","../fieldDecoratorMetadata.ts","../Fields.ts","../StandardFieldDecoratorContext.ts","../fieldDecorator.ts","../DateOnly.ts","../DerivedType.ts","../IEquatable.ts","../Guid.ts","../duplicateInstanceGuard.ts","../ValueMap.ts","../json/JsonConverter.ts","../json/DateJsonConverter.ts","../json/DateOnlyJsonConverter.ts","../json/GuidJsonConverter.ts","../TimeOnly.ts","../json/TimeOnlyJsonConverter.ts","../TimeSpan.ts","../json/TimeSpanJsonConverter.ts","../geospatial/Point.ts","../geospatial/LinearRing.ts","../geospatial/LineString.ts","../geospatial/Polygon.ts","../geospatial/index.ts","../json/PointJsonConverter.ts","../json/LineStringJsonConverter.ts","../json/PolygonJsonConverter.ts","../json/ValueMapJsonConverter.ts","../json/index.ts","../JsonSerializer.ts","../PropertyAccessor.ts","../PropertyAccessorDescriptor.ts","../PropertyPathResolverProxyHandler.ts","../StandardClassDecoratorContext.ts","../derivedTypeDecorator.ts","../index.ts"],"fileInfos":[{"version":"16934abaab7026ac114da441aabea1a0","affectsGlobalScope":true,"impliedNodeFormat":1},"d4306fb2e47f74835e8674ffac07d76f","e437c5c1302869326c3bb93da85bbbcf","e4324975a566567b21d350615f1fc6ac","333b1b9a2a9ac3b8497dba5c63b5ba50","6cffacd662b6eb5fa7a36aa2ea366bfa","b4c34f9c23304dbef2d23698637ed638","e5cb86a5fc491796ecd1d2dd348d208f","feb6c6fb19cdb246a5d8acb36a6901c7","9443a7f109277ffaa79d893ed2549995","793cee405385076e27c24f409659dccd","09f69c6610266eaee1ac9e3e30df2c71","62bad718844246b8e17547f37bad6085",{"version":"aae8996e8b5684814785a42cbbefcd79","affectsGlobalScope":true,"impliedNodeFormat":1},"abad6dd56cc8caf095c165df8124d237",{"version":"926204c28cd3d073865348473ae28d2e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f25e42c801b2cb3cf2b39792006a9beb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6344b55f26a4e81d9608777dbfb877dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3c0ed28e53d3695b363e256ec1c023fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4c2761daba7f17141c25baa0821ac5da","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b87656acabd63e69379ff6ffcfe52fc7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"597469522da047a5af5222cc6989f405","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1708ea4d34dc37fadadc63ca01127e80","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"55d97a8c6fbf34a30450a7b1e5f7a298","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0ee05eb59426d33e374226d8dcfa708b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e347c14030993906efcfbb88915b6a05","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b0231263857c9b6a03641acdc9280ceb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3b15c4a83b598cacb4067676e6f0abed","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b417d97b7934cef63b1889abec0bbfbf","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"09a6cf4032ebba60ce22a501e663f881","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2b056277dd138e8f5650fc04e20eaa8d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e22cc07e3f3cc242ba52fa3f8ea1fc58","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2c45da767a1bfbb220848df1bc4029e4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b44c3e0fbaf2130cdcf6ac38b120ffa1","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b612fb5cf8e5d964b92063a75207632a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"02705151a5e1551b9162a9ed8ab763f7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"41025e398be9215d32e4337335da8f0b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"52684c2b1f353a5538e4f275182a54cd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6dedb6a4f90d1df3a6fbe5693e44886c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ca3f36fe3562c07e0f0d71c2bebd3f6d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"409974d6129befbb8226ddd1c6558568","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4d9cfde2a1ae1b4925f1f9bc10848e5d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7e1daecc66dd564144e3bb1a0266b5fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a8e1d9bb35fd0637f2f9fd2b2a54f2ec","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4f168501772a6543182765bfd5f2fbfe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a19c80aad1b2162103496f5ba293a732","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b69afa63cd5d059851c78adb2856ee09","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ae2fc5d954e9b0f5feee3d481b953c27","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1cfd3091a071d8b6feec15277643bafe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1da2c1f258970fd3cc91184f69e91a9d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a0d87491913d843139e0c993650a3235","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4ef72aa378127e7b7abba915b0110b1e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3ec74c6a7d4463f0254db3a74cf75646","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"84c2bdfa470d075526cce6322d81b0b6","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0b3844c2b8c73e4e1ab91431411cad11","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4fc71cf4a15b8d99675a31df77f26e07","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d1b49564ddaeca3df5b6dbae925d2242","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6a25be566d60ccfc2d6e8b7bfdeefa83","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8a20e27646985dfd58c57ca6566553dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9969f02ad3cdcbf4f709405cda44167f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9c9be4792a7a4f42c15ae7360bf28779","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8cf777fe00349b71ee9c4b6f3fe7fd19","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"74f96bc192530c9723f572bfff3d3078","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1df91c56b25955c56387426f378173c5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"38856f70edcd2115c355d96ec77cc09e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"de8700156c1275465bcd473c28b359aa","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d47cfdb6ede40518357bb5a4cd7cd9fb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6e5773860cd9e5b15e683113f642ab47","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"30ff5fe1682f7fcd629880476ca3c2e0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"bf23d7d1b40b9015b694ddc2f011752f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2cc585d42e2c548f9f24a30a1989fd33","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"713906ce9d332d2242b7f05ed9304be3","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0219894bfe5042c7e1aa2d22e4a91ed0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6009ffff7e43c93318804d2d28e37fe3","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"03be89b227587594fbb50509fc1c2e45","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b30df52dc24740c0bad7c55c3511df7d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ab8d3c9b5ed5c2ab8f383607eef439f0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d950ec671d0a8e07f3c1a31e94abed86","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1abef2ace5eccb02d60dd73cd5a5ee4c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f5f0a3044029d1cc081b5887eb4deb07","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d57c697f1446940ec4bfe669c962e2c4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"be41035d7b941482a1e1ae6a5c5dcca5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"10f7d9da7564f27f8ddf4a162b6da6d3","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1d0520af549e0c3581f15173cc713ca1","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d65083f97fd741cff028472563eddb79","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"da7f24f00653ebac660ac1c0821ed33d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7cb5ae9e65516ea2235f0721f6aac43c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f64453cbf9671f28158677fa5c43967a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"33f317af5428801f944a478d2c1e38e5","affectsGlobalScope":true,"impliedNodeFormat":1},"68565f078f6cbaa18bac7ac1aee706a4",{"version":"6df9988546b1b8e15cb137c4ed46c629","impliedNodeFormat":99},{"version":"04bfab517bef8ec649195900a112645a","signature":"0aa13ceea7e7c3f53c785d7ca09fc461","impliedNodeFormat":1},{"version":"4be4109ece9fb3a502363e428d4b9d09","signature":"05d855d5235efc2be94c1a4393c609e4","impliedNodeFormat":1},{"version":"a7ffa0f207e5e558300b989f56e10ed8","signature":"dee26c2062ab4d0c96825cd9f06fc8ec","impliedNodeFormat":1},{"version":"30572a6c021fe02cf36ded539f81c4ab","signature":"86f3667a6b4bdf2ea2cb1b3d22824431","impliedNodeFormat":1},{"version":"d6444c005923a0e29b164735b3faf628","signature":"3ebc9c537c34634924dad5f75a5e826d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"eed8a4269d54d1b794fc93932726b39a","signature":"4c5307b1c87b22bd7862ce9245df2355","impliedNodeFormat":1},{"version":"4dad3ba63dfa4906aa5d59f3b088a12a","signature":"0c843f46bbfeb9f4f5e2f551ac701e71","impliedNodeFormat":1},{"version":"2a26f729ac58a50a4af8ae4cb949113b","signature":"56e1e5e440c94e1e1d7f6e87e79ad79a","impliedNodeFormat":1},{"version":"1a5c6baa45b220f4318f3265c59548eb","signature":"613a934507b0cfd0950cb8e6973dfedf","impliedNodeFormat":1},{"version":"485c2c85724ef7b3927b680aea8a91f9","signature":"bad057a4b4ea4af9b6014d316293750a","impliedNodeFormat":1},{"version":"b361021d3d18d13aac63b35d4b0ef1d1","signature":"e574772f7137c7acb41b9b4cf9df058d","impliedNodeFormat":1},{"version":"10bacfe190f9fe270633c42af70386a1","signature":"38aed49039f4cd461d25f012f97b8c39","impliedNodeFormat":1},{"version":"cc34701bb2e1462b45d017a6fe2f141f","signature":"719dfec5f3283ec85710adbba78e6365","impliedNodeFormat":1},{"version":"4824fb9728966ca9f9ce17b9ce75f05c","signature":"c2020050bac2e38d3fa0a6b493982137","impliedNodeFormat":1},{"version":"a1749f74fd525e58a163f183940e7e09","signature":"6aa3c11249f9aaa1ac65d937ead30969","impliedNodeFormat":1},{"version":"351814ccfa1ba58ef45ec89a4aeb404c","signature":"f98eec2170a99869483d3eca900d0cc0","impliedNodeFormat":1},{"version":"5184ac9b0d8991786893fe84aa78d6b9","signature":"b5ebd566a1965c6a14cd722344ce6f6e","impliedNodeFormat":1},{"version":"c7735481ae825eb6bbcfd4a9805ba6c1","signature":"a7d694b86b36ce7df89de40ffc9402aa","impliedNodeFormat":1},{"version":"908d0f661e9c957f8aa06d19d4ab330d","signature":"6417e5a1c83740dd726339c7dcb25e00","impliedNodeFormat":1},{"version":"7ac4e2073efabc8a9b3ffd50e858f616","signature":"a45a1270e3bec3c20dfc71dbd1f4c873","impliedNodeFormat":1},{"version":"9e48231dbfedcc7214ebef6ea6286a23","signature":"6fbd3fb27221371a80b8e5096ab64669","impliedNodeFormat":1},{"version":"dbf142eb5e53d886df2e7093c459d38a","signature":"819455b7d09613669008590152f72bfb","impliedNodeFormat":1},{"version":"458e81f3aa2be4dce8b9c74ea9501bbb","signature":"cb18508ff8bbf75a7e3ab6a4326d04bc","impliedNodeFormat":1},{"version":"27ff541c8e95725471b6b63deda1cee5","signature":"58b7f36019024977c58e8f9578061940","impliedNodeFormat":1},{"version":"5a1c99c1b8aee61fe81f2c24580f964a","signature":"f54113fe7e33138fa6bef35633d9c756","impliedNodeFormat":1},{"version":"640a86079ef069627d498d92042be3fd","signature":"9ebee2bd622814352f911c1123c777bb","impliedNodeFormat":1},{"version":"c61a48c85d6c125ca9883e4b050cdca7","signature":"1c1616eb4a9ee2509a326a00d2bb66f7","impliedNodeFormat":1},{"version":"422db4edf8c3ce6cf7e553ebd6fb9d67","signature":"9cb1145b2a3893442ee4af6d07a433a1","impliedNodeFormat":1},{"version":"f5389e83dd9ce8454cf4c529c3f27303","signature":"f39ebf82376bef22974827fb45fc2868","impliedNodeFormat":1},{"version":"aa02a24e6da8595f2ddf20291c42af9f","signature":"1fb32a9a54778e35701953fde7d6a644","impliedNodeFormat":1},{"version":"5565dbac2a69a59c1fcba503a6e50586","signature":"5faf589f6dca05637ace1b1e2b65a5d9","impliedNodeFormat":1},{"version":"8e1e86bc20e3c61f979e2567130c7842","signature":"b862c86ba994a1012909a9193bf8fccb","impliedNodeFormat":1},{"version":"11d4a6190e2dfd54e76be78ac56a83d2","signature":"c008349de6f254aab2ea421ab4467148","impliedNodeFormat":1},{"version":"e428199a69f1b0f1eae01bcc82cf6f0e","signature":"619e7562793b95efc8e4045b345c2958","impliedNodeFormat":1},{"version":"90afd3587a9a35670427e6961c843453","signature":"5c86fabce3450c64974c38377a4c7e78","impliedNodeFormat":1},{"version":"88e8ac668c482d4adea78be66563f1df","signature":"44105eab8a75458fcab12433d5d313c3","impliedNodeFormat":1},{"version":"975510ec28b104338b0200ad7da6681a","signature":"94ffea549c13e56a8cf4c04a811cbc75","impliedNodeFormat":1},{"version":"4233f8df71c1590dc418143794641f46","signature":"5c8de80b459b0cbf43397cfb4b8ff0d3","impliedNodeFormat":1},{"version":"77ef4441645eb9547648b763c0e124d6","signature":"d42cb94635f66e63be4724c41308e9c7","impliedNodeFormat":1},{"version":"22ac9c87f6f69a0d5e058def48f6029e","signature":"58604a62d80d6df338da00a0caafddb6","impliedNodeFormat":1}],"fileIdsList":[[93],[93,100],[92,96],[92],[92,95,96,97],[93,103],[92,93,95,98,102,105,106,124],[126],[92,96,102,129],[92,95,97,98,99],[92,95,96],[93,115],[115],[93,116],[115,116,117,118],[92,93,94,95,98,100,101,102,103,104,106,111,113,119,124,125,126,127,128,130],[92,107],[92,101,107],[92,104,107],[92,107,119],[92,107,111],[92,107,113],[92,106,107],[107,108,109,110,112,114,120,121,122,123],[90]],"options":{"allowJs":false,"assumeChangesOnlyAffectDirectDependencies":true,"checkJs":false,"composite":true,"emitDecoratorMetadata":true,"declaration":true,"declarationMap":true,"experimentalDecorators":true,"importHelpers":true,"jsx":4,"module":7,"newLine":2,"noFallthroughCasesInSwitch":true,"noImplicitAny":false,"noImplicitReturns":true,"outDir":"./","preserveConstEnums":true,"removeComments":true,"rootDir":"..","skipLibCheck":true,"strict":true,"strictNullChecks":true,"stripInternal":true,"sourceMap":true,"target":9,"allowSyntheticDefaultImports":true,"alwaysStrict":true,"esModuleInterop":true},"referencedMap":[[94,1],[101,2],[102,3],[95,4],[98,5],[104,6],[125,7],[127,8],[129,4],[111,2],[113,2],[106,1],[130,9],[100,10],[97,11],[117,12],[116,13],[115,2],[118,14],[119,15],[131,16],[108,17],[109,18],[110,19],[107,4],[121,20],[120,20],[122,20],[112,21],[114,22],[123,23],[124,24],[91,25],[93,4]],"latestChangedDtsFile":"./index.d.ts"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
2
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
|
+
|
|
4
|
+
import { ConceptAs } from '../../ConceptAs';
|
|
5
|
+
import { field } from '../../fieldDecorator';
|
|
6
|
+
import { Guid } from '../../Guid';
|
|
7
|
+
|
|
8
|
+
export class Identifier extends ConceptAs<Guid> {
|
|
9
|
+
static readonly valueType = Guid;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export class Label extends ConceptAs<string> {}
|
|
13
|
+
export class Quantity extends ConceptAs<number> {}
|
|
14
|
+
export class Enabled extends ConceptAs<boolean> {}
|
|
15
|
+
|
|
16
|
+
export class Child {
|
|
17
|
+
@field(Identifier)
|
|
18
|
+
identifier!: Identifier;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export class Document {
|
|
22
|
+
@field(Array, { genericArguments: [String] })
|
|
23
|
+
names!: string[];
|
|
24
|
+
|
|
25
|
+
@field(Identifier)
|
|
26
|
+
identifier!: Identifier;
|
|
27
|
+
|
|
28
|
+
@field(Label)
|
|
29
|
+
label!: Label;
|
|
30
|
+
|
|
31
|
+
@field(Quantity)
|
|
32
|
+
quantity!: Quantity;
|
|
33
|
+
|
|
34
|
+
@field(Enabled)
|
|
35
|
+
enabled!: Enabled;
|
|
36
|
+
|
|
37
|
+
@field(Child)
|
|
38
|
+
child!: Child;
|
|
39
|
+
|
|
40
|
+
@field(Array, { genericArguments: [Identifier] })
|
|
41
|
+
identifiers!: Identifier[];
|
|
42
|
+
|
|
43
|
+
@field(Array, { genericArguments: [Child] })
|
|
44
|
+
children!: Child[];
|
|
45
|
+
|
|
46
|
+
@field(Label, true)
|
|
47
|
+
legacyLabels!: Label[];
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export class a_model_with_field_metadata {
|
|
51
|
+
readonly identifier = 'f0fa7c5e-9f7b-4688-8851-e0b6eeebe28b';
|
|
52
|
+
readonly payload = {
|
|
53
|
+
names: ['one', 'two'],
|
|
54
|
+
identifier: this.identifier,
|
|
55
|
+
label: '',
|
|
56
|
+
quantity: 0,
|
|
57
|
+
enabled: false,
|
|
58
|
+
child: { identifier: this.identifier },
|
|
59
|
+
identifiers: [this.identifier],
|
|
60
|
+
children: [{ identifier: this.identifier }],
|
|
61
|
+
legacyLabels: ['older']
|
|
62
|
+
};
|
|
63
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
2
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
|
+
|
|
4
|
+
export function given<T>(contextType: new () => T, specification: (context: T) => void): () => void {
|
|
5
|
+
return () => specification(new contextType());
|
|
6
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
2
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
|
+
|
|
4
|
+
import { given } from './given/given';
|
|
5
|
+
import { JsonSerializer } from '../JsonSerializer';
|
|
6
|
+
import { Guid } from '../Guid';
|
|
7
|
+
import { Child, Document, Enabled, Identifier, Label, Quantity, a_model_with_field_metadata } from './given/a_model_with_field_metadata';
|
|
8
|
+
|
|
9
|
+
describe('when deserializing fields with legacy decorators', given(a_model_with_field_metadata, context => {
|
|
10
|
+
let result: Document;
|
|
11
|
+
|
|
12
|
+
beforeEach(() => {
|
|
13
|
+
result = JsonSerializer.deserialize(Document, JSON.stringify(context.payload));
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
it('should read array elements declared through generic arguments', () => result.names.should.deep.equal(['one', 'two']));
|
|
17
|
+
it('should read a concept underlying Guid as a Guid', () => result.identifier.value.should.be.instanceOf(Guid));
|
|
18
|
+
it('should retain the concept underlying Guid value', () => result.identifier.value.toString().should.equal(context.identifier));
|
|
19
|
+
it('should wrap an empty string in its concept', () => {
|
|
20
|
+
result.label.should.be.instanceOf(Label);
|
|
21
|
+
result.label.value.should.equal('');
|
|
22
|
+
});
|
|
23
|
+
it('should wrap zero in its concept', () => {
|
|
24
|
+
result.quantity.should.be.instanceOf(Quantity);
|
|
25
|
+
result.quantity.value.should.equal(0);
|
|
26
|
+
});
|
|
27
|
+
it('should wrap false in its concept', () => {
|
|
28
|
+
result.enabled.should.be.instanceOf(Enabled);
|
|
29
|
+
result.enabled.value.should.equal(false);
|
|
30
|
+
});
|
|
31
|
+
it('should deserialize a nested model and its concept', () => {
|
|
32
|
+
result.child.should.be.instanceOf(Child);
|
|
33
|
+
result.child.identifier.value.should.be.instanceOf(Guid);
|
|
34
|
+
});
|
|
35
|
+
it('should deserialize an array of concepts', () => {
|
|
36
|
+
result.identifiers[0].should.be.instanceOf(Identifier);
|
|
37
|
+
result.identifiers[0].value.should.be.instanceOf(Guid);
|
|
38
|
+
});
|
|
39
|
+
it('should deserialize an array of nested models', () => result.children[0].should.be.instanceOf(Child));
|
|
40
|
+
it('should keep reading legacy enumerable concept fields', () => result.legacyLabels[0].value.should.equal('older'));
|
|
41
|
+
}));
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
2
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
|
+
|
|
4
|
+
import { JsonSerializer } from '../JsonSerializer';
|
|
5
|
+
import { Document } from './given/a_model_with_field_metadata';
|
|
6
|
+
|
|
7
|
+
describe('when deserializing a generic array without a value', () => {
|
|
8
|
+
it('should use an empty array for an absent collection', () => JsonSerializer.deserialize(Document, '{}').names.should.deep.equal([]));
|
|
9
|
+
it('should preserve an explicit null collection', () => (JsonSerializer.deserialize(Document, '{"names":null}').names === null).should.be.true);
|
|
10
|
+
});
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
2
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
3
|
+
|
|
4
|
+
import { given } from './given/given';
|
|
5
|
+
import { JsonSerializer } from '../JsonSerializer';
|
|
6
|
+
import { Document, a_model_with_field_metadata } from './given/a_model_with_field_metadata';
|
|
7
|
+
|
|
8
|
+
describe('when round tripping fields with legacy decorators', given(a_model_with_field_metadata, context => {
|
|
9
|
+
let written: {
|
|
10
|
+
identifier: string;
|
|
11
|
+
label: string;
|
|
12
|
+
quantity: number;
|
|
13
|
+
enabled: boolean;
|
|
14
|
+
identifiers: string[];
|
|
15
|
+
children: { identifier: string }[];
|
|
16
|
+
};
|
|
17
|
+
let read: Document;
|
|
18
|
+
|
|
19
|
+
beforeEach(() => {
|
|
20
|
+
const document = JsonSerializer.deserialize(Document, JSON.stringify(context.payload));
|
|
21
|
+
const json = JsonSerializer.serialize(document);
|
|
22
|
+
written = JSON.parse(json);
|
|
23
|
+
read = JsonSerializer.deserialize(Document, json);
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
it('should write a concept wrapping a Guid as a string', () => written.identifier.should.equal(context.identifier));
|
|
27
|
+
it('should write falsy concept payloads without object wrappers', () => [written.label, written.quantity, written.enabled].should.deep.equal(['', 0, false]));
|
|
28
|
+
it('should write generic arrays of concepts as underlying values', () => written.identifiers.should.deep.equal([context.identifier]));
|
|
29
|
+
it('should write generic arrays of nested models as objects', () => written.children.should.deep.equal([{ identifier: context.identifier }]));
|
|
30
|
+
it('should read back the nested array model and typed concept', () => read.children[0].identifier.value.toString().should.equal(context.identifier));
|
|
31
|
+
}));
|
|
@@ -3,7 +3,20 @@
|
|
|
3
3
|
|
|
4
4
|
declare const fundamentals: typeof import('../../index');
|
|
5
5
|
|
|
6
|
-
const { derivedType, field, JsonSerializer, ValueMap } = fundamentals;
|
|
6
|
+
const { ConceptAs, derivedType, field, Guid, JsonSerializer, ValueMap } = fundamentals;
|
|
7
|
+
|
|
8
|
+
class Identifier extends ConceptAs<InstanceType<typeof Guid>> {
|
|
9
|
+
static readonly valueType = Guid;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
class Label extends ConceptAs<string> {}
|
|
13
|
+
class Quantity extends ConceptAs<number> {}
|
|
14
|
+
class Enabled extends ConceptAs<boolean> {}
|
|
15
|
+
|
|
16
|
+
class Child {
|
|
17
|
+
@field(Identifier)
|
|
18
|
+
identifier!: Identifier;
|
|
19
|
+
}
|
|
7
20
|
|
|
8
21
|
function replaceClass<Target extends import('../../Constructor').Constructor>(target: Target): Target {
|
|
9
22
|
return class extends target { } as Target;
|
|
@@ -39,6 +52,33 @@ class Drawing {
|
|
|
39
52
|
@field(String)
|
|
40
53
|
title!: string;
|
|
41
54
|
|
|
55
|
+
@field(Array, { genericArguments: [String] })
|
|
56
|
+
names!: string[];
|
|
57
|
+
|
|
58
|
+
@field(Identifier)
|
|
59
|
+
identifier!: Identifier;
|
|
60
|
+
|
|
61
|
+
@field(Label)
|
|
62
|
+
label!: Label;
|
|
63
|
+
|
|
64
|
+
@field(Quantity)
|
|
65
|
+
quantity!: Quantity;
|
|
66
|
+
|
|
67
|
+
@field(Enabled)
|
|
68
|
+
enabled!: Enabled;
|
|
69
|
+
|
|
70
|
+
@field(Child)
|
|
71
|
+
child!: Child;
|
|
72
|
+
|
|
73
|
+
@field(Array, { genericArguments: [Identifier] })
|
|
74
|
+
identifiers!: Identifier[];
|
|
75
|
+
|
|
76
|
+
@field(Array, { genericArguments: [Child] })
|
|
77
|
+
children!: Child[];
|
|
78
|
+
|
|
79
|
+
@field(Label, true)
|
|
80
|
+
legacyLabels!: Label[];
|
|
81
|
+
|
|
42
82
|
@field(Date)
|
|
43
83
|
createdAt!: Date;
|
|
44
84
|
|
|
@@ -54,8 +94,18 @@ class Drawing {
|
|
|
54
94
|
}
|
|
55
95
|
|
|
56
96
|
const instanceCountBeforeDeserialize = Drawing.instanceCount;
|
|
97
|
+
const identifier = 'f0fa7c5e-9f7b-4688-8851-e0b6eeebe28b';
|
|
57
98
|
const drawing = JsonSerializer.deserialize(Drawing, JSON.stringify({
|
|
99
|
+
child: { identifier },
|
|
100
|
+
children: [{ identifier }],
|
|
58
101
|
createdAt: '2026-08-16T09:30:00.000Z',
|
|
102
|
+
enabled: false,
|
|
103
|
+
identifier,
|
|
104
|
+
identifiers: [identifier],
|
|
105
|
+
label: '',
|
|
106
|
+
legacyLabels: ['older'],
|
|
107
|
+
names: ['one', 'two'],
|
|
108
|
+
quantity: 0,
|
|
59
109
|
scores: {
|
|
60
110
|
first: 42
|
|
61
111
|
},
|
|
@@ -72,5 +122,6 @@ const drawing = JsonSerializer.deserialize(Drawing, JSON.stringify({
|
|
|
72
122
|
title: 'Standard decorators'
|
|
73
123
|
}));
|
|
74
124
|
const instanceCountAfterDeserialize = Drawing.instanceCount;
|
|
125
|
+
const serializedDrawing = JsonSerializer.serialize(drawing);
|
|
75
126
|
|
|
76
|
-
void [Circle, Rectangle, ReplacedShape, instanceCountBeforeDeserialize, drawing, instanceCountAfterDeserialize];
|
|
127
|
+
void [Child, Circle, Rectangle, ReplacedShape, instanceCountBeforeDeserialize, drawing, instanceCountAfterDeserialize, serializedDrawing];
|
|
@@ -19,19 +19,34 @@ describe('when executing standard TypeScript decorator emit', () => {
|
|
|
19
19
|
let symbolMetadataWasAbsent: boolean;
|
|
20
20
|
let symbolMetadataWasPolyfilled: boolean;
|
|
21
21
|
let executionResult: {
|
|
22
|
+
Child: fundamentals.Constructor;
|
|
22
23
|
Circle: fundamentals.Constructor;
|
|
23
24
|
Drawing: fundamentals.Constructor;
|
|
25
|
+
Enabled: fundamentals.Constructor;
|
|
26
|
+
Identifier: fundamentals.Constructor;
|
|
27
|
+
Label: fundamentals.Constructor;
|
|
28
|
+
Quantity: fundamentals.Constructor;
|
|
24
29
|
Rectangle: fundamentals.Constructor;
|
|
25
30
|
ReplacedShape: fundamentals.Constructor;
|
|
26
31
|
Shape: fundamentals.Constructor;
|
|
27
32
|
drawing: {
|
|
33
|
+
child: { identifier: { value: fundamentals.Guid } };
|
|
34
|
+
children: object[];
|
|
28
35
|
createdAt: Date;
|
|
36
|
+
enabled: { value: boolean };
|
|
37
|
+
identifier: { value: fundamentals.Guid };
|
|
38
|
+
identifiers: { value: fundamentals.Guid }[];
|
|
39
|
+
label: { value: string };
|
|
40
|
+
legacyLabels: { value: string }[];
|
|
41
|
+
names: string[];
|
|
42
|
+
quantity: { value: number };
|
|
29
43
|
scores: fundamentals.ValueMap<string, number>;
|
|
30
44
|
shapes: object[];
|
|
31
45
|
title: string;
|
|
32
46
|
};
|
|
33
47
|
instanceCountAfterDeserialize: number;
|
|
34
48
|
instanceCountBeforeDeserialize: number;
|
|
49
|
+
serializedDrawing: string;
|
|
35
50
|
};
|
|
36
51
|
let registeredDerivedTypes: fundamentals.Constructor[];
|
|
37
52
|
let legacySemanticDiagnosticCount: number;
|
|
@@ -86,7 +101,7 @@ describe('when executing standard TypeScript decorator emit', () => {
|
|
|
86
101
|
reportDiagnostics: true
|
|
87
102
|
}).outputText;
|
|
88
103
|
|
|
89
|
-
const script = new Script(`${emittedJavaScript}\n({ Circle, Drawing, Rectangle, ReplacedShape, Shape, drawing, instanceCountAfterDeserialize, instanceCountBeforeDeserialize })`);
|
|
104
|
+
const script = new Script(`${emittedJavaScript}\n({ Child, Circle, Drawing, Enabled, Identifier, Label, Quantity, Rectangle, ReplacedShape, Shape, drawing, instanceCountAfterDeserialize, instanceCountBeforeDeserialize, serializedDrawing })`);
|
|
90
105
|
executionResult = script.runInNewContext({ Array, Boolean, Date, fundamentals, JSON, Number, Object, String, Symbol }) as typeof executionResult;
|
|
91
106
|
registeredDerivedTypes = fundamentals.DerivedType.getDerivedTypesFor(executionResult.Shape);
|
|
92
107
|
});
|
|
@@ -104,6 +119,36 @@ describe('when executing standard TypeScript decorator emit', () => {
|
|
|
104
119
|
it('should expose field metadata before constructing an instance', () => executionResult.instanceCountBeforeDeserialize.should.equal(0));
|
|
105
120
|
it('should construct the target only during first-call deserialization', () => executionResult.instanceCountAfterDeserialize.should.equal(1));
|
|
106
121
|
it('should deserialize primitive fields', () => executionResult.drawing.title.should.equal('Standard decorators'));
|
|
122
|
+
it('should read array elements declared through generic arguments', () => executionResult.drawing.names.should.deep.equal(['one', 'two']));
|
|
123
|
+
it('should read a concept underlying Guid as a Guid', () => executionResult.drawing.identifier.value.should.be.instanceOf(fundamentals.Guid));
|
|
124
|
+
it('should wrap an empty string in its concept', () => {
|
|
125
|
+
(executionResult.drawing.label instanceof executionResult.Label).should.be.true;
|
|
126
|
+
executionResult.drawing.label.value.should.equal('');
|
|
127
|
+
});
|
|
128
|
+
it('should wrap zero in its concept', () => {
|
|
129
|
+
(executionResult.drawing.quantity instanceof executionResult.Quantity).should.be.true;
|
|
130
|
+
executionResult.drawing.quantity.value.should.equal(0);
|
|
131
|
+
});
|
|
132
|
+
it('should wrap false in its concept', () => {
|
|
133
|
+
(executionResult.drawing.enabled instanceof executionResult.Enabled).should.be.true;
|
|
134
|
+
executionResult.drawing.enabled.value.should.equal(false);
|
|
135
|
+
});
|
|
136
|
+
it('should read a nested model and its concept', () => {
|
|
137
|
+
(executionResult.drawing.child instanceof executionResult.Child).should.be.true;
|
|
138
|
+
executionResult.drawing.child.identifier.value.should.be.instanceOf(fundamentals.Guid);
|
|
139
|
+
});
|
|
140
|
+
it('should read an array of concepts', () => {
|
|
141
|
+
(executionResult.drawing.identifiers[0] instanceof executionResult.Identifier).should.be.true;
|
|
142
|
+
executionResult.drawing.identifiers[0].value.should.be.instanceOf(fundamentals.Guid);
|
|
143
|
+
});
|
|
144
|
+
it('should read an array of nested models', () => (executionResult.drawing.children[0] instanceof executionResult.Child).should.be.true);
|
|
145
|
+
it('should keep reading legacy enumerable fields', () => executionResult.drawing.legacyLabels[0].value.should.equal('older'));
|
|
146
|
+
it('should serialize generic arrays of concepts as values', () => JSON.parse(executionResult.serializedDrawing).identifiers.should.deep.equal(['f0fa7c5e-9f7b-4688-8851-e0b6eeebe28b']));
|
|
147
|
+
it('should serialize generic arrays of nested models', () => JSON.parse(executionResult.serializedDrawing).children.should.deep.equal([{ identifier: 'f0fa7c5e-9f7b-4688-8851-e0b6eeebe28b' }]));
|
|
148
|
+
it('should serialize falsy concept values', () => {
|
|
149
|
+
const written = JSON.parse(executionResult.serializedDrawing);
|
|
150
|
+
[written.label, written.quantity, written.enabled].should.deep.equal(['', 0, false]);
|
|
151
|
+
});
|
|
107
152
|
it('should deserialize date fields', () => executionResult.drawing.createdAt.should.be.instanceOf(Date));
|
|
108
153
|
it('should deserialize polymorphic array entries', () => (executionResult.drawing.shapes[0] instanceof executionResult.Circle).should.be.true);
|
|
109
154
|
it('should deserialize every registered derivative', () => (executionResult.drawing.shapes[1] instanceof executionResult.Rectangle).should.be.true);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cratis/fundamentals",
|
|
3
|
-
"version": "7.19.
|
|
3
|
+
"version": "7.19.6",
|
|
4
4
|
"description": "The shared building blocks beneath the Cratis stack — GUIDs, concepts, derived-type serialization, property-path proxies, and decorators for TypeScript",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cratis",
|
|
@@ -31,24 +31,44 @@
|
|
|
31
31
|
"exports": {
|
|
32
32
|
"./package.json": "./package.json",
|
|
33
33
|
".": {
|
|
34
|
-
"
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
"import": {
|
|
35
|
+
"types": "./dist/esm/index.d.ts",
|
|
36
|
+
"default": "./dist/esm/index.js"
|
|
37
|
+
},
|
|
38
|
+
"require": {
|
|
39
|
+
"types": "./dist/cjs/index.d.ts",
|
|
40
|
+
"default": "./dist/cjs/index.js"
|
|
41
|
+
}
|
|
37
42
|
},
|
|
38
43
|
"./geospatial": {
|
|
39
|
-
"
|
|
40
|
-
|
|
41
|
-
|
|
44
|
+
"import": {
|
|
45
|
+
"types": "./dist/esm/geospatial/index.d.ts",
|
|
46
|
+
"default": "./dist/esm/geospatial/index.js"
|
|
47
|
+
},
|
|
48
|
+
"require": {
|
|
49
|
+
"types": "./dist/cjs/geospatial/index.d.ts",
|
|
50
|
+
"default": "./dist/cjs/geospatial/index.js"
|
|
51
|
+
}
|
|
42
52
|
},
|
|
43
53
|
"./json": {
|
|
44
|
-
"
|
|
45
|
-
|
|
46
|
-
|
|
54
|
+
"import": {
|
|
55
|
+
"types": "./dist/esm/json/index.d.ts",
|
|
56
|
+
"default": "./dist/esm/json/index.js"
|
|
57
|
+
},
|
|
58
|
+
"require": {
|
|
59
|
+
"types": "./dist/cjs/json/index.d.ts",
|
|
60
|
+
"default": "./dist/cjs/json/index.js"
|
|
61
|
+
}
|
|
47
62
|
},
|
|
48
63
|
"./reflection": {
|
|
49
|
-
"
|
|
50
|
-
|
|
51
|
-
|
|
64
|
+
"import": {
|
|
65
|
+
"types": "./dist/esm/reflection.d.ts",
|
|
66
|
+
"default": "./dist/esm/reflection.js"
|
|
67
|
+
},
|
|
68
|
+
"require": {
|
|
69
|
+
"types": "./dist/cjs/reflection.d.ts",
|
|
70
|
+
"default": "./dist/cjs/reflection.js"
|
|
71
|
+
}
|
|
52
72
|
}
|
|
53
73
|
},
|
|
54
74
|
"installConfig": {
|
|
@@ -62,14 +82,15 @@
|
|
|
62
82
|
"typescript-programmatic-api": "npm:@typescript/typescript6@^6.0.2"
|
|
63
83
|
},
|
|
64
84
|
"scripts": {
|
|
65
|
-
"prepare": "yarn
|
|
85
|
+
"prepare": "yarn build",
|
|
66
86
|
"clean": "yarn g:clean",
|
|
67
|
-
"build": "yarn g:build",
|
|
87
|
+
"build": "yarn g:build && node scripts/fix-declarations.mjs",
|
|
68
88
|
"lint": "yarn g:lint",
|
|
69
89
|
"lint:ci": "yarn g:lint:ci",
|
|
70
90
|
"test": "yarn g:test",
|
|
71
91
|
"test:watch": "yarn g:test:watch",
|
|
72
|
-
"ci": "yarn
|
|
92
|
+
"ci": "yarn clean && yarn lint:ci && yarn build && yarn test:consumers && yarn test",
|
|
93
|
+
"test:consumers": "node scripts/check-consumers.mjs",
|
|
73
94
|
"up": "yarn g:up"
|
|
74
95
|
}
|
|
75
96
|
}
|