@ddd-ts/shape 0.0.3-55 → 0.0.3-57
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/_.d.ts +2 -3
- package/dist/_.d.ts.map +1 -1
- package/dist/choice.d.ts +24 -140
- package/dist/choice.d.ts.map +1 -1
- package/dist/choice.js +1 -0
- package/dist/choice.js.map +1 -1
- package/dist/class.d.ts.map +1 -1
- package/dist/dict.d.ts +5 -13
- package/dist/dict.d.ts.map +1 -1
- package/dist/dict.js +0 -2
- package/dist/dict.js.map +1 -1
- package/dist/either.d.ts.map +1 -1
- package/dist/either.js.map +1 -1
- package/dist/literal.d.ts.map +1 -1
- package/dist/mapping.d.ts.map +1 -1
- package/dist/multiple.d.ts +99 -153
- package/dist/multiple.d.ts.map +1 -1
- package/dist/multiple.js +73 -27
- package/dist/multiple.js.map +1 -1
- package/dist/nothing.d.ts.map +1 -1
- package/dist/optional.d.ts.map +1 -1
- package/dist/test.d.ts +1 -1
- package/dist/test.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/definitions/child.d.ts +0 -9
- package/dist/definitions/child.d.ts.map +0 -1
- package/dist/definitions/child.js +0 -18
- package/dist/definitions/child.js.map +0 -1
- package/dist/definitions/child.spec.d.ts +0 -2
- package/dist/definitions/child.spec.d.ts.map +0 -1
- package/dist/definitions/child.spec.js +0 -34
- package/dist/definitions/child.spec.js.map +0 -1
- package/dist/definitions/definition.d.ts +0 -13
- package/dist/definitions/definition.d.ts.map +0 -1
- package/dist/definitions/definition.js +0 -3
- package/dist/definitions/definition.js.map +0 -1
- package/dist/definitions/dict.d.ts +0 -38
- package/dist/definitions/dict.d.ts.map +0 -1
- package/dist/definitions/dict.js +0 -41
- package/dist/definitions/dict.js.map +0 -1
- package/dist/definitions/dict.spec.d.ts +0 -2
- package/dist/definitions/dict.spec.d.ts.map +0 -1
- package/dist/definitions/dict.spec.js +0 -30
- package/dist/definitions/dict.spec.js.map +0 -1
- package/dist/definitions/either.d.ts +0 -9
- package/dist/definitions/either.d.ts.map +0 -1
- package/dist/definitions/either.js +0 -27
- package/dist/definitions/either.js.map +0 -1
- package/dist/definitions/either.spec.d.ts +0 -2
- package/dist/definitions/either.spec.d.ts.map +0 -1
- package/dist/definitions/either.spec.js +0 -27
- package/dist/definitions/either.spec.js.map +0 -1
- package/dist/definitions/literal.d.ts +0 -30
- package/dist/definitions/literal.d.ts.map +0 -1
- package/dist/definitions/literal.js +0 -14
- package/dist/definitions/literal.js.map +0 -1
- package/dist/definitions/literal.spec.d.ts +0 -2
- package/dist/definitions/literal.spec.d.ts.map +0 -1
- package/dist/definitions/literal.spec.js +0 -49
- package/dist/definitions/literal.spec.js.map +0 -1
- package/dist/definitions/multiple.d.ts +0 -9
- package/dist/definitions/multiple.d.ts.map +0 -1
- package/dist/definitions/multiple.js +0 -20
- package/dist/definitions/multiple.js.map +0 -1
- package/dist/definitions/multiple.spec.d.ts +0 -2
- package/dist/definitions/multiple.spec.d.ts.map +0 -1
- package/dist/definitions/multiple.spec.js +0 -46
- package/dist/definitions/multiple.spec.js.map +0 -1
- package/dist/definitions/nothing.d.ts +0 -6
- package/dist/definitions/nothing.d.ts.map +0 -1
- package/dist/definitions/nothing.js +0 -14
- package/dist/definitions/nothing.js.map +0 -1
- package/dist/definitions/optional.d.ts +0 -10
- package/dist/definitions/optional.d.ts.map +0 -1
- package/dist/definitions/optional.js +0 -21
- package/dist/definitions/optional.js.map +0 -1
- package/dist/definitions/optional.spec.d.ts +0 -2
- package/dist/definitions/optional.spec.d.ts.map +0 -1
- package/dist/definitions/optional.spec.js +0 -20
- package/dist/definitions/optional.spec.js.map +0 -1
- package/dist/definitions/serializableClass.d.ts +0 -15
- package/dist/definitions/serializableClass.d.ts.map +0 -1
- package/dist/definitions/serializableClass.js +0 -18
- package/dist/definitions/serializableClass.js.map +0 -1
- package/dist/definitions/serializableClass.spec.d.ts +0 -2
- package/dist/definitions/serializableClass.spec.d.ts.map +0 -1
- package/dist/definitions/serializableClass.spec.js +0 -106
- package/dist/definitions/serializableClass.spec.js.map +0 -1
- package/dist/definitions/shorthands.d.ts +0 -18
- package/dist/definitions/shorthands.d.ts.map +0 -1
- package/dist/definitions/shorthands.js +0 -3
- package/dist/definitions/shorthands.js.map +0 -1
- package/dist/definitions/stringEnum.d.ts +0 -37
- package/dist/definitions/stringEnum.d.ts.map +0 -1
- package/dist/definitions/stringEnum.js +0 -43
- package/dist/definitions/stringEnum.js.map +0 -1
- package/dist/definitions/stringEnum.spec.d.ts +0 -2
- package/dist/definitions/stringEnum.spec.d.ts.map +0 -1
- package/dist/definitions/stringEnum.spec.js +0 -86
- package/dist/definitions/stringEnum.spec.js.map +0 -1
- package/dist/definitions/tuple.d.ts +0 -11
- package/dist/definitions/tuple.d.ts.map +0 -1
- package/dist/definitions/tuple.js +0 -20
- package/dist/definitions/tuple.js.map +0 -1
- package/dist/definitions/tuple.spec.d.ts +0 -2
- package/dist/definitions/tuple.spec.d.ts.map +0 -1
- package/dist/definitions/tuple.spec.js +0 -18
- package/dist/definitions/tuple.spec.js.map +0 -1
- package/dist/enum.d.ts +0 -25
- package/dist/enum.d.ts.map +0 -1
- package/dist/enum.js +0 -37
- package/dist/enum.js.map +0 -1
- package/dist/enum.spec.d.ts +0 -2
- package/dist/enum.spec.d.ts.map +0 -1
- package/dist/enum.spec.js +0 -71
- package/dist/enum.spec.js.map +0 -1
- package/dist/index.spec.d.ts +0 -2
- package/dist/index.spec.d.ts.map +0 -1
- package/dist/index.spec.js +0 -357
- package/dist/index.spec.js.map +0 -1
- package/dist/mixins/objectShape.d.ts +0 -18
- package/dist/mixins/objectShape.d.ts.map +0 -1
- package/dist/mixins/objectShape.js +0 -35
- package/dist/mixins/objectShape.js.map +0 -1
- package/dist/mixins/objectShape.spec.d.ts +0 -2
- package/dist/mixins/objectShape.spec.d.ts.map +0 -1
- package/dist/mixins/objectShape.spec.js +0 -99
- package/dist/mixins/objectShape.spec.js.map +0 -1
- package/dist/mixins/primitive.d.ts +0 -23
- package/dist/mixins/primitive.d.ts.map +0 -1
- package/dist/mixins/primitive.js +0 -35
- package/dist/mixins/primitive.js.map +0 -1
- package/dist/mixins/primitive.spec.d.ts +0 -2
- package/dist/mixins/primitive.spec.d.ts.map +0 -1
- package/dist/mixins/primitive.spec.js +0 -21
- package/dist/mixins/primitive.spec.js.map +0 -1
- package/dist/mixins/shape.d.ts +0 -22
- package/dist/mixins/shape.d.ts.map +0 -1
- package/dist/mixins/shape.js +0 -17
- package/dist/mixins/shape.js.map +0 -1
- package/dist/mixins/shape.spec.d.ts +0 -2
- package/dist/mixins/shape.spec.d.ts.map +0 -1
- package/dist/mixins/shape.spec.js +0 -86
- package/dist/mixins/shape.spec.js.map +0 -1
- package/dist/new/definitions/child.d.ts +0 -9
- package/dist/new/definitions/child.d.ts.map +0 -1
- package/dist/new/definitions/child.js +0 -16
- package/dist/new/definitions/child.js.map +0 -1
- package/dist/new/definitions/child.spec.d.ts +0 -2
- package/dist/new/definitions/child.spec.d.ts.map +0 -1
- package/dist/new/definitions/child.spec.js +0 -34
- package/dist/new/definitions/child.spec.js.map +0 -1
- package/dist/new/definitions/definition.d.ts +0 -11
- package/dist/new/definitions/definition.d.ts.map +0 -1
- package/dist/new/definitions/definition.js +0 -3
- package/dist/new/definitions/definition.js.map +0 -1
- package/dist/new/definitions/dict.d.ts +0 -38
- package/dist/new/definitions/dict.d.ts.map +0 -1
- package/dist/new/definitions/dict.js +0 -39
- package/dist/new/definitions/dict.js.map +0 -1
- package/dist/new/definitions/dict.spec.d.ts +0 -2
- package/dist/new/definitions/dict.spec.d.ts.map +0 -1
- package/dist/new/definitions/dict.spec.js +0 -30
- package/dist/new/definitions/dict.spec.js.map +0 -1
- package/dist/new/definitions/either.d.ts +0 -9
- package/dist/new/definitions/either.d.ts.map +0 -1
- package/dist/new/definitions/either.js +0 -25
- package/dist/new/definitions/either.js.map +0 -1
- package/dist/new/definitions/either.spec.d.ts +0 -2
- package/dist/new/definitions/either.spec.d.ts.map +0 -1
- package/dist/new/definitions/either.spec.js +0 -27
- package/dist/new/definitions/either.spec.js.map +0 -1
- package/dist/new/definitions/literal.d.ts +0 -30
- package/dist/new/definitions/literal.d.ts.map +0 -1
- package/dist/new/definitions/literal.js +0 -12
- package/dist/new/definitions/literal.js.map +0 -1
- package/dist/new/definitions/literal.spec.d.ts +0 -2
- package/dist/new/definitions/literal.spec.d.ts.map +0 -1
- package/dist/new/definitions/literal.spec.js +0 -49
- package/dist/new/definitions/literal.spec.js.map +0 -1
- package/dist/new/definitions/multiple.d.ts +0 -9
- package/dist/new/definitions/multiple.d.ts.map +0 -1
- package/dist/new/definitions/multiple.js +0 -18
- package/dist/new/definitions/multiple.js.map +0 -1
- package/dist/new/definitions/multiple.spec.d.ts +0 -2
- package/dist/new/definitions/multiple.spec.d.ts.map +0 -1
- package/dist/new/definitions/multiple.spec.js +0 -29
- package/dist/new/definitions/multiple.spec.js.map +0 -1
- package/dist/new/definitions/nothing.d.ts +0 -6
- package/dist/new/definitions/nothing.d.ts.map +0 -1
- package/dist/new/definitions/nothing.js +0 -12
- package/dist/new/definitions/nothing.js.map +0 -1
- package/dist/new/definitions/optional.d.ts +0 -10
- package/dist/new/definitions/optional.d.ts.map +0 -1
- package/dist/new/definitions/optional.js +0 -19
- package/dist/new/definitions/optional.js.map +0 -1
- package/dist/new/definitions/optional.spec.d.ts +0 -2
- package/dist/new/definitions/optional.spec.d.ts.map +0 -1
- package/dist/new/definitions/optional.spec.js +0 -20
- package/dist/new/definitions/optional.spec.js.map +0 -1
- package/dist/new/definitions/serializableClass.d.ts +0 -15
- package/dist/new/definitions/serializableClass.d.ts.map +0 -1
- package/dist/new/definitions/serializableClass.js +0 -16
- package/dist/new/definitions/serializableClass.js.map +0 -1
- package/dist/new/definitions/serializableClass.spec.d.ts +0 -2
- package/dist/new/definitions/serializableClass.spec.d.ts.map +0 -1
- package/dist/new/definitions/serializableClass.spec.js +0 -106
- package/dist/new/definitions/serializableClass.spec.js.map +0 -1
- package/dist/new/definitions/shorthands.d.ts +0 -18
- package/dist/new/definitions/shorthands.d.ts.map +0 -1
- package/dist/new/definitions/shorthands.js +0 -3
- package/dist/new/definitions/shorthands.js.map +0 -1
- package/dist/new/definitions/stringEnum.d.ts +0 -29
- package/dist/new/definitions/stringEnum.d.ts.map +0 -1
- package/dist/new/definitions/stringEnum.js +0 -29
- package/dist/new/definitions/stringEnum.js.map +0 -1
- package/dist/new/definitions/stringEnum.spec.d.ts +0 -2
- package/dist/new/definitions/stringEnum.spec.d.ts.map +0 -1
- package/dist/new/definitions/stringEnum.spec.js +0 -60
- package/dist/new/definitions/stringEnum.spec.js.map +0 -1
- package/dist/new/definitions/tuple.d.ts +0 -11
- package/dist/new/definitions/tuple.d.ts.map +0 -1
- package/dist/new/definitions/tuple.js +0 -18
- package/dist/new/definitions/tuple.js.map +0 -1
- package/dist/new/definitions/tuple.spec.d.ts +0 -2
- package/dist/new/definitions/tuple.spec.d.ts.map +0 -1
- package/dist/new/definitions/tuple.spec.js +0 -18
- package/dist/new/definitions/tuple.spec.js.map +0 -1
- package/dist/new/index.d.ts +0 -13
- package/dist/new/index.d.ts.map +0 -1
- package/dist/new/index.js +0 -29
- package/dist/new/index.js.map +0 -1
- package/dist/new/mixins/objectShape.d.ts +0 -18
- package/dist/new/mixins/objectShape.d.ts.map +0 -1
- package/dist/new/mixins/objectShape.js +0 -27
- package/dist/new/mixins/objectShape.js.map +0 -1
- package/dist/new/mixins/objectShape.spec.d.ts +0 -2
- package/dist/new/mixins/objectShape.spec.d.ts.map +0 -1
- package/dist/new/mixins/objectShape.spec.js +0 -100
- package/dist/new/mixins/objectShape.spec.js.map +0 -1
- package/dist/new/mixins/primitive.d.ts +0 -21
- package/dist/new/mixins/primitive.d.ts.map +0 -1
- package/dist/new/mixins/primitive.js +0 -27
- package/dist/new/mixins/primitive.js.map +0 -1
- package/dist/new/mixins/primitive.spec.d.ts +0 -2
- package/dist/new/mixins/primitive.spec.d.ts.map +0 -1
- package/dist/new/mixins/primitive.spec.js +0 -22
- package/dist/new/mixins/primitive.spec.js.map +0 -1
- package/dist/new/mixins/shape.d.ts +0 -22
- package/dist/new/mixins/shape.d.ts.map +0 -1
- package/dist/new/mixins/shape.js +0 -17
- package/dist/new/mixins/shape.js.map +0 -1
- package/dist/new/mixins/shape.spec.d.ts +0 -2
- package/dist/new/mixins/shape.spec.d.ts.map +0 -1
- package/dist/new/mixins/shape.spec.js +0 -86
- package/dist/new/mixins/shape.spec.js.map +0 -1
- package/dist/new/shorthandToLonghand.d.ts +0 -4
- package/dist/new/shorthandToLonghand.d.ts.map +0 -1
- package/dist/new/shorthandToLonghand.js +0 -59
- package/dist/new/shorthandToLonghand.js.map +0 -1
- package/dist/new/testUtils.d.ts +0 -6
- package/dist/new/testUtils.d.ts.map +0 -1
- package/dist/new/testUtils.js +0 -12
- package/dist/new/testUtils.js.map +0 -1
- package/dist/new/types.d.ts +0 -11
- package/dist/new/types.d.ts.map +0 -1
- package/dist/new/types.js +0 -3
- package/dist/new/types.js.map +0 -1
- package/dist/old/enum.d.ts +0 -25
- package/dist/old/enum.d.ts.map +0 -1
- package/dist/old/enum.js +0 -37
- package/dist/old/enum.js.map +0 -1
- package/dist/old/enum.spec.d.ts +0 -2
- package/dist/old/enum.spec.d.ts.map +0 -1
- package/dist/old/enum.spec.js +0 -71
- package/dist/old/enum.spec.js.map +0 -1
- package/dist/old/index.d.ts +0 -94
- package/dist/old/index.d.ts.map +0 -1
- package/dist/old/index.js +0 -129
- package/dist/old/index.js.map +0 -1
- package/dist/old/index.spec.d.ts +0 -2
- package/dist/old/index.spec.d.ts.map +0 -1
- package/dist/old/index.spec.js +0 -357
- package/dist/old/index.spec.js.map +0 -1
- package/dist/shorthandToLonghand.d.ts +0 -4
- package/dist/shorthandToLonghand.d.ts.map +0 -1
- package/dist/shorthandToLonghand.js +0 -59
- package/dist/shorthandToLonghand.js.map +0 -1
- package/dist/testUtils.d.ts +0 -6
- package/dist/testUtils.d.ts.map +0 -1
- package/dist/testUtils.js +0 -12
- package/dist/testUtils.js.map +0 -1
- package/dist/types.d.ts +0 -11
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -3
- package/dist/types.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"literal.spec.js","sourceRoot":"","sources":["../../../src/new/definitions/literal.spec.ts"],"names":[],"mappings":";;AAAA,uDAAoD;AACpD,4CAAqC;AACrC,iCAA8B;AAC9B,uCAAoC;AAEpC,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAChC,MAAM,IAAK,SAAQ,IAAA,yBAAW,EAC7B,IAAA,WAAI,EAAC;YACJ,MAAM,EAAE,IAAA,iBAAO,EAAC,MAAM,CAAC;YACvB,MAAM,EAAE,IAAA,iBAAO,EAAC,MAAM,CAAC;YACvB,IAAI,EAAE,IAAA,iBAAO,EAAC,IAAI,CAAC;SACnB,CAAC,CACF;SAAG;QAEJ,mCAAmC;QACnC,IAAI,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QACrC,IAAI,IAAI,CAAC;YACR,gCAAgC;YAChC,MAAM,EAAE,CAAC;YACT,gCAAgC;YAChC,MAAM,EAAE,GAAG;YACX,gCAAgC;YAChC,IAAI,EAAE,GAAG;SACT,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QAEpE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAEvC,IAAA,iBAAK,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACrC,MAAM,IAAK,SAAQ,IAAA,yBAAW,EAAC;YAC9B,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;SACV,CAAC;SAAG;QAEL,mCAAmC;QACnC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,gCAAgC;QAChC,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QAEvB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QAEpE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAEvC,IAAA,iBAAK,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACnB,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Definition, DefinitionRuntime, DefinitionSerialized } from "./definition";
|
|
2
|
-
import { AnyShorthand, ShorthandToLonghand } from "./shorthands";
|
|
3
|
-
export type MultipleConfiguration = AnyShorthand | Definition;
|
|
4
|
-
export type MultipleShorthand = Array<MultipleConfiguration> & {
|
|
5
|
-
length: 1;
|
|
6
|
-
};
|
|
7
|
-
export type MultipleDefinition<C extends MultipleConfiguration = MultipleConfiguration> = Definition<DefinitionRuntime<ShorthandToLonghand<C>>[], DefinitionSerialized<ShorthandToLonghand<C>>[]>;
|
|
8
|
-
export declare function Multiple<C extends MultipleConfiguration>(configuration: C): MultipleDefinition<C>;
|
|
9
|
-
//# sourceMappingURL=multiple.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"multiple.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/multiple.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEjE,MAAM,MAAM,qBAAqB,GAAG,YAAY,GAAG,UAAU,CAAC;AAC9D,MAAM,MAAM,iBAAiB,GAAG,KAAK,CAAC,qBAAqB,CAAC,GAAG;IAAE,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC;AAC7E,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,qBAAqB,GAAG,qBAAqB,IAAI,UAAU,CAClG,iBAAiB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAE,EAC3C,oBAAoB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAE,CAC/C,CAAC;AACF,wBAAgB,QAAQ,CAAC,CAAC,SAAS,qBAAqB,EACtD,aAAa,EAAE,CAAC,GACf,kBAAkB,CAAC,CAAC,CAAC,CAYvB"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Multiple = void 0;
|
|
4
|
-
const shorthandToLonghand_1 = require("../shorthandToLonghand");
|
|
5
|
-
function Multiple(configuration) {
|
|
6
|
-
const longhand = (0, shorthandToLonghand_1.shorthandToLonghand)(configuration);
|
|
7
|
-
return {
|
|
8
|
-
paramToRuntime: (param) => param.map((p) => longhand.paramToRuntime(p)),
|
|
9
|
-
serialize: (runtime) => {
|
|
10
|
-
return runtime.map(longhand.serialize);
|
|
11
|
-
},
|
|
12
|
-
deserialize: (serialized) => {
|
|
13
|
-
return serialized.map(longhand.deserialize);
|
|
14
|
-
}
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
exports.Multiple = Multiple;
|
|
18
|
-
//# sourceMappingURL=multiple.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"multiple.js","sourceRoot":"","sources":["../../../src/new/definitions/multiple.ts"],"names":[],"mappings":";;;AAAA,gEAA6D;AAc7D,SAAgB,QAAQ,CACtB,aAAgB;IAEhB,MAAM,QAAQ,GAAG,IAAA,yCAAmB,EAAC,aAAa,CAAC,CAAC;IAEpD,OAAO;QACL,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACvE,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACrB,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;QACD,WAAW,EAAE,CAAC,UAAU,EAAE,EAAE;YAC1B,OAAO,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC9C,CAAC;KACF,CAAC;AACJ,CAAC;AAdD,4BAcC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"multiple.spec.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/multiple.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const objectShape_1 = require("../mixins/objectShape");
|
|
4
|
-
const testUtils_1 = require("../testUtils");
|
|
5
|
-
const literal_1 = require("./literal");
|
|
6
|
-
const multiple_1 = require("./multiple");
|
|
7
|
-
describe("Definition: Multiple", () => {
|
|
8
|
-
it("uses keyword notation", () => {
|
|
9
|
-
class Test extends (0, objectShape_1.ObjectShape)({
|
|
10
|
-
value: (0, multiple_1.Multiple)((0, literal_1.Literal)(String)),
|
|
11
|
-
}) {
|
|
12
|
-
}
|
|
13
|
-
const a = new Test({
|
|
14
|
-
value: ["a", "b", "c"],
|
|
15
|
-
});
|
|
16
|
-
expect(a.value).toEqual(["a", "b", "c"]);
|
|
17
|
-
(0, testUtils_1.check)(Test, a);
|
|
18
|
-
});
|
|
19
|
-
it("uses keyword-less notation", () => {
|
|
20
|
-
class Test extends (0, objectShape_1.ObjectShape)({
|
|
21
|
-
value: [String],
|
|
22
|
-
}) {
|
|
23
|
-
}
|
|
24
|
-
const a = new Test({ value: ["a", "b", "c"] });
|
|
25
|
-
expect(a.value).toEqual(["a", "b", "c"]);
|
|
26
|
-
(0, testUtils_1.check)(Test, a);
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
//# sourceMappingURL=multiple.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"multiple.spec.js","sourceRoot":"","sources":["../../../src/new/definitions/multiple.spec.ts"],"names":[],"mappings":";;AAAA,uDAAoD;AACpD,4CAAqC;AACrC,uCAAoC;AACpC,yCAAsC;AAEtC,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAChC,MAAM,IAAK,SAAQ,IAAA,yBAAW,EAAC;YAC9B,KAAK,EAAE,IAAA,mBAAQ,EAAC,IAAA,iBAAO,EAAC,MAAM,CAAC,CAAC;SAChC,CAAC;SAAG;QAEL,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC;YAClB,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;SACtB,CAAC,CAAC;QAEH,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QACzC,IAAA,iBAAK,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACrC,MAAM,IAAK,SAAQ,IAAA,yBAAW,EAAC;YAC9B,KAAK,EAAE,CAAC,MAAM,CAAC;SACf,CAAC;SAAG;QAEL,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAE/C,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QACzC,IAAA,iBAAK,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { Definition } from "./definition";
|
|
2
|
-
export type NothingConfiguration = undefined;
|
|
3
|
-
export type NothingShorthand = NothingConfiguration;
|
|
4
|
-
export type NothingDefinition<C extends NothingConfiguration = NothingConfiguration> = Definition<C, C, C>;
|
|
5
|
-
export declare function Nothing<C extends NothingConfiguration>(configuration: C): NothingDefinition<C>;
|
|
6
|
-
//# sourceMappingURL=nothing.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"nothing.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/nothing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,MAAM,oBAAoB,GAAG,SAAS,CAAC;AAC7C,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,CAAC;AACpD,MAAM,MAAM,iBAAiB,CAC5B,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,IAClD,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACxB,wBAAgB,OAAO,CAAC,CAAC,SAAS,oBAAoB,EACrD,aAAa,EAAE,CAAC,GACd,iBAAiB,CAAC,CAAC,CAAC,CAMtB"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Nothing = void 0;
|
|
4
|
-
function Nothing(configuration) {
|
|
5
|
-
return {
|
|
6
|
-
paramToRuntime: (param) => param,
|
|
7
|
-
serialize: (runtime) => runtime,
|
|
8
|
-
deserialize: (serialized) => serialized,
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
exports.Nothing = Nothing;
|
|
12
|
-
//# sourceMappingURL=nothing.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"nothing.js","sourceRoot":"","sources":["../../../src/new/definitions/nothing.ts"],"names":[],"mappings":";;;AAOA,SAAgB,OAAO,CACtB,aAAgB;IAEhB,OAAO;QACN,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK;QAChC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO;QAC/B,WAAW,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU;KACvC,CAAC;AACH,CAAC;AARD,0BAQC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { Definition, DefinitionRuntime, DefinitionSerialized } from "./definition";
|
|
2
|
-
import { AnyShorthand, ShorthandToLonghand } from "./shorthands";
|
|
3
|
-
export type OptionalConfiguration = AnyShorthand | Definition;
|
|
4
|
-
export type OptionalDefinition<C extends OptionalConfiguration = OptionalConfiguration> = Definition<DefinitionRuntime<ShorthandToLonghand<C>> | undefined, DefinitionSerialized<ShorthandToLonghand<C>> | undefined> & {
|
|
5
|
-
optional: true;
|
|
6
|
-
};
|
|
7
|
-
export declare function Optional<C extends OptionalConfiguration>(configuration: Exclude<C, {
|
|
8
|
-
optional: true;
|
|
9
|
-
}>): OptionalDefinition<C>;
|
|
10
|
-
//# sourceMappingURL=optional.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"optional.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/optional.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEjE,MAAM,MAAM,qBAAqB,GAAG,YAAY,GAAG,UAAU,CAAC;AAC9D,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,qBAAqB,GAAG,qBAAqB,IAAI,UAAU,CAClG,iBAAiB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,EACrD,oBAAoB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CACzD,GAAG;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AAEvB,wBAAgB,QAAQ,CAAC,CAAC,SAAS,qBAAqB,EACtD,aAAa,EAAE,OAAO,CAAC,CAAC,EAAE;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC,GAC5C,kBAAkB,CAAC,CAAC,CAAC,CAcvB"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Optional = void 0;
|
|
4
|
-
const shorthandToLonghand_1 = require("../shorthandToLonghand");
|
|
5
|
-
function Optional(configuration) {
|
|
6
|
-
const longhand = (0, shorthandToLonghand_1.shorthandToLonghand)(configuration);
|
|
7
|
-
return {
|
|
8
|
-
optional: true,
|
|
9
|
-
paramToRuntime: (param) => param ? longhand.paramToRuntime(param) : undefined,
|
|
10
|
-
serialize: (runtime) => {
|
|
11
|
-
return runtime ? longhand.serialize(runtime) : undefined;
|
|
12
|
-
},
|
|
13
|
-
deserialize: (serialized) => {
|
|
14
|
-
return serialized ? longhand.deserialize(serialized) : undefined;
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
exports.Optional = Optional;
|
|
19
|
-
//# sourceMappingURL=optional.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"optional.js","sourceRoot":"","sources":["../../../src/new/definitions/optional.ts"],"names":[],"mappings":";;;AAAA,gEAA6D;AAc7D,SAAgB,QAAQ,CACtB,aAA6C;IAE7C,MAAM,QAAQ,GAAG,IAAA,yCAAmB,EAAC,aAAa,CAAC,CAAC;IAEpD,OAAO;QACL,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CACxB,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;QACpD,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACrB,OAAO,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3D,CAAC;QACD,WAAW,EAAE,CAAC,UAAU,EAAE,EAAE;YAC1B,OAAO,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnE,CAAC;KACF,CAAC;AACJ,CAAC;AAhBD,4BAgBC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"optional.spec.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/optional.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const objectShape_1 = require("../mixins/objectShape");
|
|
4
|
-
const testUtils_1 = require("../testUtils");
|
|
5
|
-
const optional_1 = require("./optional");
|
|
6
|
-
describe("Definition: Optional", () => {
|
|
7
|
-
it("uses keyword notation", () => {
|
|
8
|
-
class Test extends (0, objectShape_1.ObjectShape)({
|
|
9
|
-
value: (0, optional_1.Optional)(String),
|
|
10
|
-
}) {
|
|
11
|
-
}
|
|
12
|
-
const a = new Test({});
|
|
13
|
-
expect(a.value).toEqual(undefined);
|
|
14
|
-
(0, testUtils_1.check)(Test, a);
|
|
15
|
-
const b = new Test({ value: "a" });
|
|
16
|
-
expect(b.value).toEqual("a");
|
|
17
|
-
(0, testUtils_1.check)(Test, b);
|
|
18
|
-
});
|
|
19
|
-
});
|
|
20
|
-
//# sourceMappingURL=optional.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"optional.spec.js","sourceRoot":"","sources":["../../../src/new/definitions/optional.spec.ts"],"names":[],"mappings":";;AAAA,uDAAoD;AACpD,4CAAqC;AACrC,yCAAsC;AAEtC,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAChC,MAAM,IAAK,SAAQ,IAAA,yBAAW,EAAC;YAC9B,KAAK,EAAE,IAAA,mBAAQ,EAAC,MAAM,CAAC;SACvB,CAAC;SAAG;QAEL,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC;QACvB,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACnC,IAAA,iBAAK,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAEf,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QACnC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAA,iBAAK,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Constructor } from "../types";
|
|
2
|
-
import { Definition } from "./definition";
|
|
3
|
-
type Serialization = {
|
|
4
|
-
[key: string]: Serialization;
|
|
5
|
-
} | string | number | boolean | Date | undefined;
|
|
6
|
-
export type SerializableClassConfiguration = Constructor<{
|
|
7
|
-
serialize(): Serialization;
|
|
8
|
-
}> & {
|
|
9
|
-
deserialize(serialized: Serialization): any;
|
|
10
|
-
};
|
|
11
|
-
export type SerializableClassShorthand = SerializableClassConfiguration;
|
|
12
|
-
export type SerializableClassDefinition<C extends SerializableClassConfiguration = SerializableClassConfiguration> = Definition<InstanceType<C>, ReturnType<InstanceType<C>["serialize"]>>;
|
|
13
|
-
export declare function SerializableClass<C extends SerializableClassConfiguration>(configuration: C): SerializableClassDefinition<C>;
|
|
14
|
-
export {};
|
|
15
|
-
//# sourceMappingURL=serializableClass.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"serializableClass.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/serializableClass.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,KAAK,aAAa,GACd;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAA;CAAE,GAChC,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,SAAS,CAAC;AAEd,MAAM,MAAM,8BAA8B,GAAG,WAAW,CAAC;IACvD,SAAS,IAAI,aAAa,CAAC;CAC5B,CAAC,GAAG;IACH,WAAW,CAAC,UAAU,EAAE,aAAa,GAAG,GAAG,CAAC;CAC7C,CAAC;AACF,MAAM,MAAM,0BAA0B,GAAG,8BAA8B,CAAC;AACxE,MAAM,MAAM,2BAA2B,CACrC,CAAC,SAAS,8BAA8B,GAAG,8BAA8B,IACvE,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;AAC1E,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,8BAA8B,EACxE,aAAa,EAAE,CAAC,GACf,2BAA2B,CAAC,CAAC,CAAC,CAUhC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SerializableClass = void 0;
|
|
4
|
-
function SerializableClass(configuration) {
|
|
5
|
-
return {
|
|
6
|
-
paramToRuntime: (param) => param,
|
|
7
|
-
serialize: (runtime) => {
|
|
8
|
-
return runtime.serialize();
|
|
9
|
-
},
|
|
10
|
-
deserialize: (serialized) => {
|
|
11
|
-
return configuration.deserialize(serialized);
|
|
12
|
-
}
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
exports.SerializableClass = SerializableClass;
|
|
16
|
-
//# sourceMappingURL=serializableClass.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"serializableClass.js","sourceRoot":"","sources":["../../../src/new/definitions/serializableClass.ts"],"names":[],"mappings":";;;AAqBA,SAAgB,iBAAiB,CAC/B,aAAgB;IAEhB,OAAO;QACL,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK;QAChC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACrB,OAAO,OAAO,CAAC,SAAS,EAAS,CAAC;QACpC,CAAC;QACD,WAAW,EAAE,CAAC,UAAU,EAAE,EAAE;YAC1B,OAAO,aAAa,CAAC,WAAW,CAAC,UAAU,CAAQ,CAAC;QACtD,CAAC;KACF,CAAC;AACJ,CAAC;AAZD,8CAYC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"serializableClass.spec.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/serializableClass.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const objectShape_1 = require("../mixins/objectShape");
|
|
4
|
-
const testUtils_1 = require("../testUtils");
|
|
5
|
-
const serializableClass_1 = require("./serializableClass");
|
|
6
|
-
describe("Definition: SerializableClass", () => {
|
|
7
|
-
it("uses keyword notation", () => {
|
|
8
|
-
class Id {
|
|
9
|
-
value;
|
|
10
|
-
constructor(value) {
|
|
11
|
-
this.value = value;
|
|
12
|
-
}
|
|
13
|
-
serialize() {
|
|
14
|
-
return this.value;
|
|
15
|
-
}
|
|
16
|
-
static deserialize(value) {
|
|
17
|
-
return new Id(value);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
class Test extends (0, objectShape_1.ObjectShape)({
|
|
21
|
-
value: (0, serializableClass_1.SerializableClass)(Id),
|
|
22
|
-
}) {
|
|
23
|
-
}
|
|
24
|
-
const a = new Test({
|
|
25
|
-
value: new Id("abc"),
|
|
26
|
-
});
|
|
27
|
-
expect(a.value).toBeInstanceOf(Id);
|
|
28
|
-
expect(a.value.value).toEqual("abc");
|
|
29
|
-
(0, testUtils_1.check)(Test, a);
|
|
30
|
-
});
|
|
31
|
-
it("uses keyword-less notation", () => {
|
|
32
|
-
class Id {
|
|
33
|
-
value;
|
|
34
|
-
constructor(value) {
|
|
35
|
-
this.value = value;
|
|
36
|
-
}
|
|
37
|
-
serialize() {
|
|
38
|
-
return this.value;
|
|
39
|
-
}
|
|
40
|
-
static deserialize(value) {
|
|
41
|
-
return new Id(value);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
class Test extends (0, objectShape_1.ObjectShape)({
|
|
45
|
-
value: Id,
|
|
46
|
-
}) {
|
|
47
|
-
}
|
|
48
|
-
const a = new Test({
|
|
49
|
-
value: new Id("abc"),
|
|
50
|
-
});
|
|
51
|
-
expect(a.value).toBeInstanceOf(Id);
|
|
52
|
-
expect(a.value.value).toEqual("abc");
|
|
53
|
-
(0, testUtils_1.check)(Test, a);
|
|
54
|
-
});
|
|
55
|
-
it("does not allow SerializableClass with not serializable serialize() return type", () => {
|
|
56
|
-
class Test {
|
|
57
|
-
serialize() {
|
|
58
|
-
return {
|
|
59
|
-
ok: 1,
|
|
60
|
-
ko: () => { },
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
static deserialize(arg) {
|
|
64
|
-
return new Test();
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
// @ts-expect-error - cannot detect shorthand
|
|
68
|
-
class TestShape extends (0, objectShape_1.ObjectShape)({
|
|
69
|
-
// @ts-expect-error - class is not serializable
|
|
70
|
-
ko: Test,
|
|
71
|
-
}) {
|
|
72
|
-
}
|
|
73
|
-
});
|
|
74
|
-
it("Allows recursive serialization with SerializableClass", () => {
|
|
75
|
-
class Tree {
|
|
76
|
-
name;
|
|
77
|
-
child;
|
|
78
|
-
constructor(name, child) {
|
|
79
|
-
this.name = name;
|
|
80
|
-
this.child = child;
|
|
81
|
-
}
|
|
82
|
-
serialize() {
|
|
83
|
-
return {
|
|
84
|
-
name: this.name,
|
|
85
|
-
child: this.child?.serialize(),
|
|
86
|
-
};
|
|
87
|
-
}
|
|
88
|
-
static deserialize(serialized) {
|
|
89
|
-
return new Tree(serialized.name, serialized.child ? Tree.deserialize(serialized.child) : undefined);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
class Test extends (0, objectShape_1.ObjectShape)({
|
|
93
|
-
root: Tree,
|
|
94
|
-
}) {
|
|
95
|
-
}
|
|
96
|
-
const a = new Test({
|
|
97
|
-
root: new Tree("a", new Tree("b", new Tree("c", undefined))),
|
|
98
|
-
});
|
|
99
|
-
expect(a.root.name).toBe("a");
|
|
100
|
-
expect(a.root.child?.name).toBe("b");
|
|
101
|
-
expect(a.root.child?.child?.name).toBe("c");
|
|
102
|
-
expect(a.root.child?.child?.child).toBe(undefined);
|
|
103
|
-
(0, testUtils_1.check)(Test, a);
|
|
104
|
-
});
|
|
105
|
-
});
|
|
106
|
-
//# sourceMappingURL=serializableClass.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"serializableClass.spec.js","sourceRoot":"","sources":["../../../src/new/definitions/serializableClass.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { IsShapeConstructor } from "../mixins/objectShape";
|
|
2
|
-
import { ChildDefinition, ChildShorthand } from "./child";
|
|
3
|
-
import { Definition } from "./definition";
|
|
4
|
-
import { DictShorthand, DictDefinition } from "./dict";
|
|
5
|
-
import { SerializableClassConfiguration, SerializableClassDefinition, SerializableClassShorthand } from "./serializableClass";
|
|
6
|
-
import { LiteralShorthand, LiteralDefinition } from "./literal";
|
|
7
|
-
import { MultipleDefinition, MultipleShorthand } from "./multiple";
|
|
8
|
-
import { StringEnumDefinition, StringEnumShorthand } from "./stringEnum";
|
|
9
|
-
import { EitherDefinition } from "./either";
|
|
10
|
-
import { OptionalDefinition } from "./optional";
|
|
11
|
-
import { TupleDefinition } from "./tuple";
|
|
12
|
-
import { NothingDefinition, NothingShorthand } from "./nothing";
|
|
13
|
-
export type AnyShorthand = LiteralShorthand | DictShorthand | MultipleShorthand | ChildShorthand | SerializableClassShorthand | StringEnumShorthand | NothingShorthand;
|
|
14
|
-
export type AnyDefinition = ChildDefinition | SerializableClassDefinition | DictDefinition | EitherDefinition | LiteralDefinition | MultipleDefinition | OptionalDefinition | StringEnumDefinition | TupleDefinition | NothingDefinition;
|
|
15
|
-
export type ShorthandToLonghand<T> = T extends undefined ? NothingDefinition : T extends IsShapeConstructor<Definition> ? ChildDefinition<T> : T extends SerializableClassConfiguration ? SerializableClassDefinition<T> : T extends Definition ? T : T extends typeof String ? LiteralDefinition<T> : T extends typeof Number ? LiteralDefinition<T> : T extends typeof Boolean ? LiteralDefinition<T> : T extends typeof Date ? LiteralDefinition<T> : T extends [...infer C extends string[]] ? StringEnumDefinition<C> : T extends [infer C] ? MultipleDefinition<ShorthandToLonghand<C>> : T extends Record<string, any> ? DictDefinition<{
|
|
16
|
-
[k in keyof T]: ShorthandToLonghand<T[k]>;
|
|
17
|
-
}> : never;
|
|
18
|
-
//# sourceMappingURL=shorthands.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shorthands.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/shorthands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACvD,OAAO,EACN,8BAA8B,EAC9B,2BAA2B,EAC3B,0BAA0B,EAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EACN,iBAAiB,EACjB,gBAAgB,EAChB,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,YAAY,GACrB,gBAAgB,GAChB,aAAa,GACb,iBAAiB,GACjB,cAAc,GACd,0BAA0B,GAC1B,mBAAmB,GACnB,gBAAgB,CAAC;AAEpB,MAAM,MAAM,aAAa,GACtB,eAAe,GACf,2BAA2B,GAC3B,cAAc,GACd,gBAAgB,GAChB,iBAAiB,GACjB,kBAAkB,GAClB,kBAAkB,GAClB,oBAAoB,GACpB,eAAe,GACf,iBAAiB,CAAA;AAEpB,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GACrD,iBAAiB,GACjB,CAAC,SAAS,kBAAkB,CAAC,UAAU,CAAC,GACtC,eAAe,CAAC,CAAC,CAAC,GAClB,CAAC,SAAS,8BAA8B,GACvC,2BAA2B,CAAC,CAAC,CAAC,GAC9B,CAAC,SAAS,UAAU,GACnB,CAAC,GACD,CAAC,SAAS,OAAO,MAAM,GACtB,iBAAiB,CAAC,CAAC,CAAC,GACpB,CAAC,SAAS,OAAO,MAAM,GACtB,iBAAiB,CAAC,CAAC,CAAC,GACpB,CAAC,SAAS,OAAO,OAAO,GACvB,iBAAiB,CAAC,CAAC,CAAC,GACpB,CAAC,SAAS,OAAO,IAAI,GACpB,iBAAiB,CAAC,CAAC,CAAC,GACpB,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,SAAS,MAAM,EAAE,CAAC,GACtC,oBAAoB,CAAC,CAAC,CAAC,GACvB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,GAClB,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,GAC1C,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC5B,cAAc,CAAC;KACf,CAAC,IAAI,MAAM,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACxC,CAAC,GACD,KAAK,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shorthands.js","sourceRoot":"","sources":["../../../src/new/definitions/shorthands.ts"],"names":[],"mappings":""}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { Definition } from "./definition";
|
|
2
|
-
type Matcher<cases extends string> = {
|
|
3
|
-
[K in cases]?: () => any;
|
|
4
|
-
};
|
|
5
|
-
type Catchall = {
|
|
6
|
-
_: () => any;
|
|
7
|
-
};
|
|
8
|
-
type MatcherParam<cases extends string> = Required<Matcher<cases>> | (Matcher<cases> & Catchall);
|
|
9
|
-
declare class Matchable<C extends string> {
|
|
10
|
-
readonly value: C;
|
|
11
|
-
constructor(value: C);
|
|
12
|
-
is<U extends C>(value: U): this is this & {
|
|
13
|
-
value: U;
|
|
14
|
-
serialize(): U;
|
|
15
|
-
};
|
|
16
|
-
match<M extends MatcherParam<C>>(matcher: M): M extends Required<MatcherParam<C>> ? {
|
|
17
|
-
[K in C]: M[K] extends () => infer R ? R : never;
|
|
18
|
-
}[C] : {
|
|
19
|
-
[K in C]: M[K] extends () => infer R ? R : never;
|
|
20
|
-
}[C] | (M extends {
|
|
21
|
-
_: () => infer R;
|
|
22
|
-
} ? R : never);
|
|
23
|
-
}
|
|
24
|
-
export type StringEnumConfiguration = string[];
|
|
25
|
-
export type StringEnumShorthand = StringEnumConfiguration;
|
|
26
|
-
export type StringEnumDefinition<C extends StringEnumConfiguration = StringEnumConfiguration> = Definition<Matchable<C[number]>, C[number], C[number]>;
|
|
27
|
-
export declare function StringEnum<const C extends StringEnumConfiguration>(...configuration: C): StringEnumDefinition<C>;
|
|
28
|
-
export {};
|
|
29
|
-
//# sourceMappingURL=stringEnum.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stringEnum.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/stringEnum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,KAAK,OAAO,CAAC,KAAK,SAAS,MAAM,IAAI;KAClC,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG;CACzB,CAAC;AAEF,KAAK,QAAQ,GAAG;IAAE,CAAC,EAAE,MAAM,GAAG,CAAA;CAAE,CAAC;AAEjC,KAAK,YAAY,CAAC,KAAK,SAAS,MAAM,IAClC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GACxB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,CAAC;AAEhC,cAAM,SAAS,CAAC,CAAC,SAAS,MAAM;aACF,KAAK,EAAE,CAAC;gBAAR,KAAK,EAAE,CAAC;IAEpC,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,IAAI,IAAI,GAAG;QAAE,KAAK,EAAE,CAAC,CAAC;QAAC,SAAS,IAAI,CAAC,CAAA;KAAE;IAItE,KAAK,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,EAC7B,OAAO,EAAE,CAAC,GACT,CAAC,SAAS,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAClC;SACC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK;KACjD,CAAC,CAAC,CAAC,GAEF;SACC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK;KACjD,CAAC,CAAC,CAAC,GACF,CAAC,CAAC,SAAS;QAAE,CAAC,EAAE,MAAM,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,KAAK,CAAC;CAIjD;AAED,MAAM,MAAM,uBAAuB,GAAG,MAAM,EAAE,CAAC;AAC/C,MAAM,MAAM,mBAAmB,GAAG,uBAAuB,CAAC;AAC1D,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,uBAAuB,GAAG,uBAAuB,IAC1F,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AACzD,wBAAgB,UAAU,CAAC,KAAK,CAAC,CAAC,SAAS,uBAAuB,EAChE,GAAG,aAAa,EAAE,CAAC,GAClB,oBAAoB,CAAC,CAAC,CAAC,CAUzB"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.StringEnum = void 0;
|
|
4
|
-
class Matchable {
|
|
5
|
-
value;
|
|
6
|
-
constructor(value) {
|
|
7
|
-
this.value = value;
|
|
8
|
-
}
|
|
9
|
-
is(value) {
|
|
10
|
-
return this.value === value;
|
|
11
|
-
}
|
|
12
|
-
match(matcher) {
|
|
13
|
-
const fn = matcher[this.value] ?? matcher._;
|
|
14
|
-
return fn();
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
function StringEnum(...configuration) {
|
|
18
|
-
return {
|
|
19
|
-
paramToRuntime: (param) => new Matchable(param),
|
|
20
|
-
serialize: (runtime) => {
|
|
21
|
-
return runtime.value;
|
|
22
|
-
},
|
|
23
|
-
deserialize: (serialized) => {
|
|
24
|
-
return serialized;
|
|
25
|
-
}
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
exports.StringEnum = StringEnum;
|
|
29
|
-
//# sourceMappingURL=stringEnum.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stringEnum.js","sourceRoot":"","sources":["../../../src/new/definitions/stringEnum.ts"],"names":[],"mappings":";;;AAYA,MAAM,SAAS;IACe;IAA5B,YAA4B,KAAQ;QAAR,UAAK,GAAL,KAAK,CAAG;IAAI,CAAC;IAEzC,EAAE,CAAc,KAAQ;QACtB,OAAO,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC;IAC9B,CAAC;IAED,KAAK,CACH,OAAU;QAUV,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAK,OAAe,CAAC,CAAC,CAAC;QACrD,OAAO,EAAE,EAAS,CAAC;IACrB,CAAC;CACF;AAMD,SAAgB,UAAU,CACxB,GAAG,aAAgB;IAEnB,OAAO;QACL,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC;QAC/C,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACrB,OAAO,OAAO,CAAC,KAAK,CAAC;QACvB,CAAC;QACD,WAAW,EAAE,CAAC,UAAU,EAAE,EAAE;YAC1B,OAAO,UAAU,CAAC;QACpB,CAAC;KACF,CAAC;AACJ,CAAC;AAZD,gCAYC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stringEnum.spec.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/stringEnum.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const objectShape_1 = require("../mixins/objectShape");
|
|
4
|
-
const testUtils_1 = require("../testUtils");
|
|
5
|
-
const stringEnum_1 = require("./stringEnum");
|
|
6
|
-
describe("Definition: StringEnum", () => {
|
|
7
|
-
it("uses keyword notation", () => {
|
|
8
|
-
class Test extends (0, objectShape_1.ObjectShape)({
|
|
9
|
-
enum: (0, stringEnum_1.StringEnum)("A", "B"),
|
|
10
|
-
}) {
|
|
11
|
-
}
|
|
12
|
-
const valid = new Test({
|
|
13
|
-
enum: "A",
|
|
14
|
-
});
|
|
15
|
-
const result = valid.enum.match({
|
|
16
|
-
A: () => "string",
|
|
17
|
-
_: () => 1,
|
|
18
|
-
});
|
|
19
|
-
const fallbackResult = valid.enum.match({
|
|
20
|
-
A: () => "string",
|
|
21
|
-
B: () => 1,
|
|
22
|
-
});
|
|
23
|
-
const invalid = new Test({
|
|
24
|
-
// @ts-expect-error - wrong type
|
|
25
|
-
enum: "C",
|
|
26
|
-
});
|
|
27
|
-
const a = new Test({
|
|
28
|
-
enum: "A",
|
|
29
|
-
});
|
|
30
|
-
expect(a.enum.value).toBe("A");
|
|
31
|
-
(0, testUtils_1.check)(Test, a);
|
|
32
|
-
});
|
|
33
|
-
it("uses keyword-less notation", () => {
|
|
34
|
-
class Test extends (0, objectShape_1.ObjectShape)({
|
|
35
|
-
enum: ["A", "B"],
|
|
36
|
-
}) {
|
|
37
|
-
}
|
|
38
|
-
const valid = new Test({
|
|
39
|
-
enum: "A",
|
|
40
|
-
});
|
|
41
|
-
const result = valid.enum.match({
|
|
42
|
-
A: () => "string",
|
|
43
|
-
_: () => 1,
|
|
44
|
-
});
|
|
45
|
-
const fallbackResult = valid.enum.match({
|
|
46
|
-
A: () => "string",
|
|
47
|
-
B: () => 1,
|
|
48
|
-
});
|
|
49
|
-
const invalid = new Test({
|
|
50
|
-
// @ts-expect-error - wrong type
|
|
51
|
-
enum: "C",
|
|
52
|
-
});
|
|
53
|
-
const a = new Test({
|
|
54
|
-
enum: "A",
|
|
55
|
-
});
|
|
56
|
-
expect(a.enum.value).toBe("A");
|
|
57
|
-
(0, testUtils_1.check)(Test, a);
|
|
58
|
-
});
|
|
59
|
-
});
|
|
60
|
-
//# sourceMappingURL=stringEnum.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stringEnum.spec.js","sourceRoot":"","sources":["../../../src/new/definitions/stringEnum.spec.ts"],"names":[],"mappings":";;AAAA,uDAAoD;AACpD,4CAAqC;AACrC,6CAA0C;AAE1C,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACvC,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAChC,MAAM,IAAK,SAAQ,IAAA,yBAAW,EAAC;YAC9B,IAAI,EAAE,IAAA,uBAAU,EAAC,GAAG,EAAE,GAAG,CAAC;SAC1B,CAAC;SAAG;QAEL,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC;YACtB,IAAI,EAAE,GAAG;SACT,CAAC,CAAC;QAEH,MAAM,MAAM,GAAoB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;YAChD,CAAC,EAAE,GAAG,EAAE,CAAC,QAAQ;YACjB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;SACV,CAAC,CAAC;QAEH,MAAM,cAAc,GAAoB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;YACxD,CAAC,EAAE,GAAG,EAAE,CAAC,QAAQ;YACjB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;SACV,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC;YACxB,gCAAgC;YAChC,IAAI,EAAE,GAAG;SACT,CAAC,CAAC;QAEH,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC;YAClB,IAAI,EAAE,GAAG;SACT,CAAC,CAAC;QAEH,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAA,iBAAK,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACrC,MAAM,IAAK,SAAQ,IAAA,yBAAW,EAAC;YAC9B,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;SAChB,CAAC;SAAG;QAEL,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC;YACtB,IAAI,EAAE,GAAG;SACT,CAAC,CAAC;QAEH,MAAM,MAAM,GAAoB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;YAChD,CAAC,EAAE,GAAG,EAAE,CAAC,QAAQ;YACjB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;SACV,CAAC,CAAC;QAEH,MAAM,cAAc,GAAoB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;YACxD,CAAC,EAAE,GAAG,EAAE,CAAC,QAAQ;YACjB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;SACV,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC;YACxB,gCAAgC;YAChC,IAAI,EAAE,GAAG;SACT,CAAC,CAAC;QAEH,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC;YAClB,IAAI,EAAE,GAAG;SACT,CAAC,CAAC;QAEH,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAA,iBAAK,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { Definition, DefinitionRuntime, DefinitionSerialized } from "./definition";
|
|
2
|
-
import { AnyShorthand, ShorthandToLonghand } from "./shorthands";
|
|
3
|
-
export type TupleConfiguration = (AnyShorthand | Definition)[];
|
|
4
|
-
export type TupleShorthand = TupleConfiguration;
|
|
5
|
-
export type TupleDefinition<C extends TupleConfiguration = TupleConfiguration> = Definition<{
|
|
6
|
-
[k in keyof C]: DefinitionRuntime<ShorthandToLonghand<C[k]>>;
|
|
7
|
-
}, {
|
|
8
|
-
[k in keyof C]: DefinitionSerialized<ShorthandToLonghand<C[k]>>;
|
|
9
|
-
}>;
|
|
10
|
-
export declare function Tuple<C extends TupleConfiguration>(...configuration: C): TupleDefinition<C>;
|
|
11
|
-
//# sourceMappingURL=tuple.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tuple.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/tuple.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEjE,MAAM,MAAM,kBAAkB,GAAG,CAAC,YAAY,GAAG,UAAU,CAAC,EAAE,CAAC;AAC/D,MAAM,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAChD,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB,IAAI,UAAU,CACzF;KACG,CAAC,IAAI,MAAM,CAAC,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC7D,EACD;KACG,CAAC,IAAI,MAAM,CAAC,GAAG,oBAAoB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAChE,CACF,CAAC;AAEF,wBAAgB,KAAK,CAAC,CAAC,SAAS,kBAAkB,EAChD,GAAG,aAAa,EAAE,CAAC,GAClB,eAAe,CAAC,CAAC,CAAC,CAcpB"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Tuple = void 0;
|
|
4
|
-
const shorthandToLonghand_1 = require("../shorthandToLonghand");
|
|
5
|
-
function Tuple(...configuration) {
|
|
6
|
-
const longhand = configuration.map(shorthandToLonghand_1.shorthandToLonghand);
|
|
7
|
-
return {
|
|
8
|
-
paramToRuntime: (param) => param,
|
|
9
|
-
serialize: (runtime) => {
|
|
10
|
-
return runtime.map((r, index) => longhand[index].serialize(r));
|
|
11
|
-
},
|
|
12
|
-
deserialize: (serialized) => {
|
|
13
|
-
return serialized.map((s, index) => longhand[index].deserialize(s));
|
|
14
|
-
}
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
exports.Tuple = Tuple;
|
|
18
|
-
//# sourceMappingURL=tuple.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tuple.js","sourceRoot":"","sources":["../../../src/new/definitions/tuple.ts"],"names":[],"mappings":";;;AAAA,gEAA6D;AAmB7D,SAAgB,KAAK,CACnB,GAAG,aAAgB;IAEnB,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,yCAAmB,CAAC,CAAC;IAExD,OAAO;QACL,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK;QAChC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACrB,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAQ,CAAC;QACzE,CAAC;QACD,WAAW,EAAE,CAAC,UAAU,EAAE,EAAE;YAC1B,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CACjC,QAAQ,CAAC,KAAK,CAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CACzB,CAAC;QACX,CAAC;KACF,CAAC;AACJ,CAAC;AAhBD,sBAgBC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tuple.spec.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/tuple.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const objectShape_1 = require("../mixins/objectShape");
|
|
4
|
-
const testUtils_1 = require("../testUtils");
|
|
5
|
-
const tuple_1 = require("./tuple");
|
|
6
|
-
describe("Definition: Tuple", () => {
|
|
7
|
-
it("keyword notation", () => {
|
|
8
|
-
class Test extends (0, objectShape_1.ObjectShape)({
|
|
9
|
-
tuple: (0, tuple_1.Tuple)(Number, String),
|
|
10
|
-
}) {
|
|
11
|
-
}
|
|
12
|
-
const a = new Test({
|
|
13
|
-
tuple: [1, "a"],
|
|
14
|
-
});
|
|
15
|
-
(0, testUtils_1.check)(Test, a);
|
|
16
|
-
});
|
|
17
|
-
});
|
|
18
|
-
//# sourceMappingURL=tuple.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tuple.spec.js","sourceRoot":"","sources":["../../../src/new/definitions/tuple.spec.ts"],"names":[],"mappings":";;AAAA,uDAAoD;AACpD,4CAAqC;AACrC,mCAAgC;AAEhC,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAC3B,MAAM,IAAK,SAAQ,IAAA,yBAAW,EAAC;YAC9B,KAAK,EAAE,IAAA,aAAK,EAAC,MAAM,EAAE,MAAM,CAAC;SAC5B,CAAC;SAAG;QAEL,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC;YAClB,KAAK,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC;SACf,CAAC,CAAC;QAEH,IAAA,iBAAK,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|