@ddd-ts/shape 0.0.3-56 → 0.0.3-58
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 +3 -4
- package/dist/_.d.ts.map +1 -1
- package/dist/choice.d.ts +4 -3
- 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 +9 -11
- 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/literal.d.ts +1 -4
- package/dist/literal.d.ts.map +1 -1
- package/dist/literal.js.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 +12 -13
- package/dist/optional.d.ts.map +1 -1
- package/dist/optional.js +0 -1
- package/dist/optional.js.map +1 -1
- package/dist/test.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/allcases.d.ts +0 -2
- package/dist/allcases.d.ts.map +0 -1
- package/dist/allcases.js +0 -4
- package/dist/allcases.js.map +0 -1
- package/dist/choice.type.d.ts +0 -2
- package/dist/choice.type.d.ts.map +0 -1
- package/dist/choice.type.js +0 -50
- package/dist/choice.type.js.map +0 -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 -21
- package/dist/enum.d.ts.map +0 -1
- package/dist/enum.js +0 -43
- 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 -222
- 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,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const primitive_1 = require("./primitive");
|
|
4
|
-
const testUtils_1 = require("../testUtils");
|
|
5
|
-
describe("Primitive", () => {
|
|
6
|
-
it("uses primitive", () => {
|
|
7
|
-
class Id extends (0, primitive_1.Primitive)(String) {
|
|
8
|
-
}
|
|
9
|
-
const a = new Id("my id");
|
|
10
|
-
expect(a.value).toEqual("my id");
|
|
11
|
-
(0, testUtils_1.checkPrimitive)(Id, a);
|
|
12
|
-
});
|
|
13
|
-
it("uses complex primitive", () => {
|
|
14
|
-
class Test extends (0, primitive_1.Primitive)([String]) {
|
|
15
|
-
}
|
|
16
|
-
const a = new Test(["a", "b", "c"]);
|
|
17
|
-
expect(a.value).toEqual(["a", "b", "c"]);
|
|
18
|
-
(0, testUtils_1.checkPrimitive)(Test, a);
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
|
-
//# sourceMappingURL=primitive.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"primitive.spec.js","sourceRoot":"","sources":["../../src/mixins/primitive.spec.ts"],"names":[],"mappings":";;AAAA,2CAAwC;AACxC,4CAA8C;AAE9C,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,gBAAgB,EAAE,GAAG,EAAE;QACzB,MAAM,EAAG,SAAQ,IAAA,qBAAS,EAAC,MAAM,CAAC;SAAG;QAErC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC;QAC1B,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAEjC,IAAA,0BAAc,EAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QACjC,MAAM,IAAK,SAAQ,IAAA,qBAAS,EAAC,CAAC,MAAM,CAAC,CAAC;SAAG;QAEzC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QAEpC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QAEzC,IAAA,0BAAc,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
package/dist/mixins/shape.d.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { DictConfiguration, DictDefinition } from "../definitions/dict";
|
|
2
|
-
import { AnyDefinition, ShorthandToLonghand, AnyShorthand } from "../definitions/shorthands";
|
|
3
|
-
import { Class } from "../types";
|
|
4
|
-
import { Primitive } from "./primitive";
|
|
5
|
-
import { ObjectShape } from "./objectShape";
|
|
6
|
-
export declare const Shape: <const D extends AnyShorthand | AnyDefinition, const B extends Class<{}>>(definition: D, base?: B) => D extends DictConfiguration | DictDefinition ? {
|
|
7
|
-
new (data: import("../types").Expand<import("..").DefinitionParameter<ShorthandToLonghand<D>>>): import("..").DefinitionRuntime<ShorthandToLonghand<D>> & {
|
|
8
|
-
serialize(): import("../types").Expand<ReturnType<ShorthandToLonghand<D>["serialize"]>>;
|
|
9
|
-
} & InstanceType<B> & {};
|
|
10
|
-
isShape: true;
|
|
11
|
-
deserialize<T extends import("../types").Constructor<any>>(this: T, serialized: import("../types").Expand<ReturnType<ShorthandToLonghand<D>["serialize"]>>): InstanceType<T>;
|
|
12
|
-
} & Omit<B, ""> & {} : {
|
|
13
|
-
new (...args: ShorthandToLonghand<ShorthandToLonghand<D>> extends import("..").NothingDefinition ? [] : [data: import("../types").Expand<import("..").DefinitionParameter<ShorthandToLonghand<ShorthandToLonghand<D>>>>]): {
|
|
14
|
-
serialize(): import("../types").Expand<ReturnType<ShorthandToLonghand<ShorthandToLonghand<D>>["serialize"]>>;
|
|
15
|
-
} & {
|
|
16
|
-
value: import("..").DefinitionRuntime<ShorthandToLonghand<ShorthandToLonghand<D>>>;
|
|
17
|
-
serialize(): import("../types").Expand<ReturnType<ShorthandToLonghand<ShorthandToLonghand<D>>["serialize"]>>;
|
|
18
|
-
} & InstanceType<B> & { [k in keyof ShorthandToLonghand<ShorthandToLonghand<D>>["instanceMethods"]]: ReturnType<ShorthandToLonghand<ShorthandToLonghand<D>>["instanceMethods"][k] extends infer T_1 ? T_1 extends ShorthandToLonghand<ShorthandToLonghand<D>>["instanceMethods"][k] ? T_1 extends (_: any, ...args: infer U) => any ? (...args: U) => ReturnType<T_1> : never : never : never>; };
|
|
19
|
-
isPrimitive: true;
|
|
20
|
-
deserialize<T_2 extends Class<{}>>(this: T_2, serialized: import("../types").Expand<ReturnType<ShorthandToLonghand<ShorthandToLonghand<D>>["serialize"]>>): InstanceType<T_2>;
|
|
21
|
-
} & Omit<B, ""> & { [k_1 in keyof ShorthandToLonghand<ShorthandToLonghand<D>>["staticProperties"]]: ShorthandToLonghand<ShorthandToLonghand<D>>["staticProperties"][k_1]; };
|
|
22
|
-
//# sourceMappingURL=shape.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shape.d.ts","sourceRoot":"","sources":["../../src/mixins/shape.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,iBAAiB,EACjB,cAAc,EAEd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACN,aAAa,EACb,mBAAmB,EACnB,YAAY,EACZ,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;2KAcjB,CAAC"}
|
package/dist/mixins/shape.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Shape = void 0;
|
|
4
|
-
const shorthandToLonghand_1 = require("../shorthandToLonghand");
|
|
5
|
-
const primitive_1 = require("./primitive");
|
|
6
|
-
const objectShape_1 = require("./objectShape");
|
|
7
|
-
class Base {
|
|
8
|
-
}
|
|
9
|
-
const Shape = (definition, base = Base) => {
|
|
10
|
-
const longhand = (0, shorthandToLonghand_1.shorthandToLonghand)(definition);
|
|
11
|
-
if (!longhand.isDict) {
|
|
12
|
-
return (0, primitive_1.Primitive)(definition, base);
|
|
13
|
-
}
|
|
14
|
-
return (0, objectShape_1.ObjectShape)(definition, base);
|
|
15
|
-
};
|
|
16
|
-
exports.Shape = Shape;
|
|
17
|
-
//# sourceMappingURL=shape.js.map
|
package/dist/mixins/shape.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shape.js","sourceRoot":"","sources":["../../src/mixins/shape.ts"],"names":[],"mappings":";;;AAUA,gEAA6D;AAE7D,2CAAwC;AACxC,+CAA4C;AAE5C,MAAM,IAAI;CAAG;AAEN,MAAM,KAAK,GAAG,CAIpB,UAAa,EACb,OAAU,IAAS,EAGuC,EAAE;IAC5D,MAAM,QAAQ,GAAG,IAAA,yCAAmB,EAAC,UAAU,CAAC,CAAC;IACjD,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACtB,OAAO,IAAA,qBAAS,EAAC,UAAU,EAAE,IAAI,CAAQ,CAAC;IAC3C,CAAC;IACD,OAAO,IAAA,yBAAW,EAAC,UAA4B,EAAE,IAAI,CAAQ,CAAC;AAC/D,CAAC,CAAC;AAdW,QAAA,KAAK,SAchB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shape.spec.d.ts","sourceRoot":"","sources":["../../src/mixins/shape.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const optional_1 = require("../definitions/optional");
|
|
4
|
-
const testUtils_1 = require("../testUtils");
|
|
5
|
-
const shape_1 = require("./shape");
|
|
6
|
-
describe("Shape", () => {
|
|
7
|
-
it("uses primitive", () => {
|
|
8
|
-
class Id extends (0, shape_1.Shape)(String) {
|
|
9
|
-
test() {
|
|
10
|
-
return "2";
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
const a = new Id("my id");
|
|
14
|
-
expect(a.value).toEqual("my id");
|
|
15
|
-
expect(a.test()).toEqual("2");
|
|
16
|
-
(0, testUtils_1.checkPrimitive)(Id, a);
|
|
17
|
-
});
|
|
18
|
-
it("uses complex primitive", () => {
|
|
19
|
-
class Test extends (0, shape_1.Shape)([String]) {
|
|
20
|
-
test() {
|
|
21
|
-
return "2";
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
const a = new Test(["a", "b", "c"]);
|
|
25
|
-
expect(a.test()).toEqual("2");
|
|
26
|
-
expect(a.value).toEqual(["a", "b", "c"]);
|
|
27
|
-
(0, testUtils_1.checkPrimitive)(Test, a);
|
|
28
|
-
});
|
|
29
|
-
it("uses dict", () => {
|
|
30
|
-
class PrimitiveChild extends (0, shape_1.Shape)(String) {
|
|
31
|
-
}
|
|
32
|
-
class ShapeChild extends (0, shape_1.Shape)({
|
|
33
|
-
value: Number,
|
|
34
|
-
}) {
|
|
35
|
-
}
|
|
36
|
-
class SerializableChild {
|
|
37
|
-
value;
|
|
38
|
-
constructor(value) {
|
|
39
|
-
this.value = value;
|
|
40
|
-
}
|
|
41
|
-
serialize() {
|
|
42
|
-
return { value: this.value };
|
|
43
|
-
}
|
|
44
|
-
static deserialize(serialized) {
|
|
45
|
-
return new SerializableChild(serialized.value);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
class Test extends (0, shape_1.Shape)({
|
|
49
|
-
string: String,
|
|
50
|
-
number: Number,
|
|
51
|
-
boolean: Boolean,
|
|
52
|
-
date: Date,
|
|
53
|
-
optional: (0, optional_1.Optional)(Number),
|
|
54
|
-
multiple: [Number],
|
|
55
|
-
stringEnum: ["a", "b", "c"],
|
|
56
|
-
child: ShapeChild,
|
|
57
|
-
serializableClass: SerializableChild,
|
|
58
|
-
primitiveChild: PrimitiveChild,
|
|
59
|
-
}) {
|
|
60
|
-
}
|
|
61
|
-
const a = new Test({
|
|
62
|
-
string: "my string",
|
|
63
|
-
number: 2,
|
|
64
|
-
boolean: true,
|
|
65
|
-
date: new Date("1998-10-28T00:00:00.000Z"),
|
|
66
|
-
optional: undefined,
|
|
67
|
-
multiple: [1, 2, 3, 4, 5],
|
|
68
|
-
stringEnum: "b",
|
|
69
|
-
child: new ShapeChild({ value: 4 }),
|
|
70
|
-
serializableClass: new SerializableChild(5),
|
|
71
|
-
primitiveChild: new PrimitiveChild("primitive"),
|
|
72
|
-
});
|
|
73
|
-
expect(a.string).toEqual("my string");
|
|
74
|
-
expect(a.number).toEqual(2);
|
|
75
|
-
expect(a.boolean).toEqual(true);
|
|
76
|
-
expect(a.date).toEqual(new Date("1998-10-28T00:00:00.000Z"));
|
|
77
|
-
expect(a.optional).toEqual(undefined);
|
|
78
|
-
expect(a.multiple).toEqual([1, 2, 3, 4, 5]);
|
|
79
|
-
expect(a.stringEnum.value).toEqual("b");
|
|
80
|
-
expect(a.child).toEqual(new ShapeChild({ value: 4 }));
|
|
81
|
-
expect(a.serializableClass).toEqual(new SerializableChild(5));
|
|
82
|
-
expect(a.primitiveChild.value).toEqual("primitive");
|
|
83
|
-
(0, testUtils_1.check)(Test, a);
|
|
84
|
-
});
|
|
85
|
-
});
|
|
86
|
-
//# sourceMappingURL=shape.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shape.spec.js","sourceRoot":"","sources":["../../src/mixins/shape.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { IsShapeConstructor } from "../mixins/objectShape";
|
|
2
|
-
import { Definition } from "./definition";
|
|
3
|
-
export type ChildConfiguration = IsShapeConstructor<Definition>;
|
|
4
|
-
export type ChildShorthand = ChildConfiguration;
|
|
5
|
-
export type ChildDefinition<C extends ChildConfiguration = ChildConfiguration> = Definition<InstanceType<C>, InstanceType<C> extends {
|
|
6
|
-
serialize(): infer D;
|
|
7
|
-
} ? D : never>;
|
|
8
|
-
export declare function Child<C extends ChildConfiguration>(configuration: C): ChildDefinition<C>;
|
|
9
|
-
//# sourceMappingURL=child.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"child.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/child.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;AAChE,MAAM,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAChD,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB,IAC5E,UAAU,CACT,YAAY,CAAC,CAAC,CAAC,EACf,YAAY,CAAC,CAAC,CAAC,SAAS;IAAE,SAAS,IAAI,MAAM,CAAC,CAAA;CAAE,GAAG,CAAC,GAAG,KAAK,CAC5D,CAAC;AACH,wBAAgB,KAAK,CAAC,CAAC,SAAS,kBAAkB,EACjD,aAAa,EAAE,CAAC,GACd,eAAe,CAAC,CAAC,CAAC,CAUpB"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Child = void 0;
|
|
4
|
-
function Child(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.Child = Child;
|
|
16
|
-
//# sourceMappingURL=child.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"child.js","sourceRoot":"","sources":["../../../src/new/definitions/child.ts"],"names":[],"mappings":";;;AAUA,SAAgB,KAAK,CACpB,aAAgB;IAEhB,OAAO;QACN,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK;QAChC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACtB,OAAO,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5B,CAAC;QACD,WAAW,EAAE,CAAC,UAAU,EAAE,EAAE;YAC3B,OAAO,aAAa,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC9C,CAAC;KACD,CAAC;AACH,CAAC;AAZD,sBAYC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"child.spec.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/child.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,34 +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 child_1 = require("./child");
|
|
6
|
-
describe("Definition: Child", () => {
|
|
7
|
-
it("uses keyword notation", () => {
|
|
8
|
-
class Other extends (0, objectShape_1.ObjectShape)({
|
|
9
|
-
value: String,
|
|
10
|
-
}) {
|
|
11
|
-
}
|
|
12
|
-
class Test extends (0, objectShape_1.ObjectShape)({
|
|
13
|
-
value: (0, child_1.Child)(Other),
|
|
14
|
-
}) {
|
|
15
|
-
}
|
|
16
|
-
const a = new Test({ value: new Other({ value: "ya" }) });
|
|
17
|
-
expect(a.value.value).toEqual("ya");
|
|
18
|
-
(0, testUtils_1.check)(Test, a);
|
|
19
|
-
});
|
|
20
|
-
it("uses keyword-less notation", () => {
|
|
21
|
-
class Other extends (0, objectShape_1.ObjectShape)({
|
|
22
|
-
value: String,
|
|
23
|
-
}) {
|
|
24
|
-
}
|
|
25
|
-
class Test extends (0, objectShape_1.ObjectShape)({
|
|
26
|
-
value: Other,
|
|
27
|
-
}) {
|
|
28
|
-
}
|
|
29
|
-
const a = new Test({ value: new Other({ value: "ya" }) });
|
|
30
|
-
expect(a.value.value).toEqual("ya");
|
|
31
|
-
(0, testUtils_1.check)(Test, a);
|
|
32
|
-
});
|
|
33
|
-
});
|
|
34
|
-
//# sourceMappingURL=child.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"child.spec.js","sourceRoot":"","sources":["../../../src/new/definitions/child.spec.ts"],"names":[],"mappings":";;AAAA,uDAAoD;AACpD,4CAAqC;AACrC,mCAAgC;AAEhC,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAChC,MAAM,KAAM,SAAQ,IAAA,yBAAW,EAAC;YAC/B,KAAK,EAAE,MAAM;SACb,CAAC;SAAG;QAEL,MAAM,IAAK,SAAQ,IAAA,yBAAW,EAAC;YAC9B,KAAK,EAAE,IAAA,aAAK,EAAC,KAAK,CAAC;SACnB,CAAC;SAAG;QAEL,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC1D,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpC,IAAA,iBAAK,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACrC,MAAM,KAAM,SAAQ,IAAA,yBAAW,EAAC;YAC/B,KAAK,EAAE,MAAM;SACb,CAAC;SAAG;QAEL,MAAM,IAAK,SAAQ,IAAA,yBAAW,EAAC;YAC9B,KAAK,EAAE,KAAK;SACZ,CAAC;SAAG;QAEL,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC1D,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACpC,IAAA,iBAAK,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export type Definition<R = any, S = any, P = R> = {
|
|
2
|
-
paramToRuntime: (param: P) => R;
|
|
3
|
-
serialize(runtime: R): S;
|
|
4
|
-
deserialize(serialized: S): P;
|
|
5
|
-
__used?: P;
|
|
6
|
-
isDict?: true;
|
|
7
|
-
};
|
|
8
|
-
export type DefinitionRuntime<D extends Definition> = Parameters<D["serialize"]>[0];
|
|
9
|
-
export type DefinitionSerialized<D extends Definition> = ReturnType<D["serialize"]>;
|
|
10
|
-
export type DefinitionParameter<D extends Definition> = D extends Definition<any, any, infer P> ? P : never;
|
|
11
|
-
//# sourceMappingURL=definition.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"definition.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/definition.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI;IACjD,cAAc,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;IAChC,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;IACzB,WAAW,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,MAAM,CAAC,EAAE,IAAI,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,UAAU,IAAI,UAAU,CAC/D,CAAC,CAAC,WAAW,CAAC,CACd,CAAC,CAAC,CAAC,CAAC;AACL,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,UAAU,IAAI,UAAU,CAClE,CAAC,CAAC,WAAW,CAAC,CACd,CAAC;AACF,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,UAAU,IAAI,CAAC,SAAS,UAAU,CAC3E,GAAG,EACH,GAAG,EACH,MAAM,CAAC,CACP,GACE,CAAC,GACD,KAAK,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../src/new/definitions/definition.ts"],"names":[],"mappings":""}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { Definition, DefinitionParameter, DefinitionRuntime, DefinitionSerialized } from "./definition";
|
|
2
|
-
import { AnyShorthand, ShorthandToLonghand } from "./shorthands";
|
|
3
|
-
export type DictConfiguration = {
|
|
4
|
-
[key: string]: AnyShorthand | Definition;
|
|
5
|
-
};
|
|
6
|
-
export type DictShorthand = DictConfiguration;
|
|
7
|
-
type Identity<T> = {
|
|
8
|
-
[k in keyof T]: T[k];
|
|
9
|
-
};
|
|
10
|
-
type OnlyOptionalKeys<C extends DictConfiguration> = {
|
|
11
|
-
[k in keyof C]: C[k] extends {
|
|
12
|
-
optional: true;
|
|
13
|
-
} ? k : never;
|
|
14
|
-
}[keyof C];
|
|
15
|
-
type OnlyRequiredKeys<C extends DictConfiguration> = {
|
|
16
|
-
[k in keyof C]: C[k] extends {
|
|
17
|
-
optional: true;
|
|
18
|
-
} ? never : k;
|
|
19
|
-
}[keyof C];
|
|
20
|
-
type DictRuntime<C extends DictConfiguration> = Identity<{
|
|
21
|
-
[k in OnlyRequiredKeys<C>]: DefinitionRuntime<ShorthandToLonghand<C[k]>>;
|
|
22
|
-
} & {
|
|
23
|
-
[k in OnlyOptionalKeys<C>]?: DefinitionRuntime<ShorthandToLonghand<C[k]>>;
|
|
24
|
-
}>;
|
|
25
|
-
type DictSerialized<C extends DictConfiguration> = Identity<{
|
|
26
|
-
[k in OnlyRequiredKeys<C>]: DefinitionSerialized<ShorthandToLonghand<C[k]>>;
|
|
27
|
-
} & {
|
|
28
|
-
[k in OnlyOptionalKeys<C>]?: DefinitionSerialized<ShorthandToLonghand<C[k]>>;
|
|
29
|
-
}>;
|
|
30
|
-
type DictParameter<C extends DictConfiguration> = Identity<{
|
|
31
|
-
[k in OnlyRequiredKeys<C>]: DefinitionParameter<ShorthandToLonghand<C[k]>>;
|
|
32
|
-
} & {
|
|
33
|
-
[k in OnlyOptionalKeys<C>]?: DefinitionParameter<ShorthandToLonghand<C[k]>>;
|
|
34
|
-
}>;
|
|
35
|
-
export type DictDefinition<C extends DictConfiguration = DictConfiguration> = Definition<DictRuntime<C>, DictSerialized<C>, DictParameter<C>>;
|
|
36
|
-
export declare function Dict<C extends DictConfiguration>(configuration: C): DictDefinition<C>;
|
|
37
|
-
export {};
|
|
38
|
-
//# sourceMappingURL=dict.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dict.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/dict.ts"],"names":[],"mappings":"AACA,OAAO,EACN,UAAU,EACV,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEjE,MAAM,MAAM,iBAAiB,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,CAAA;CAAE,CAAC;AAC7E,MAAM,MAAM,aAAa,GAAG,iBAAiB,CAAC;AAE9C,KAAK,QAAQ,CAAC,CAAC,IAAI;KACjB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACpB,CAAC;AAEF,KAAK,gBAAgB,CAAC,CAAC,SAAS,iBAAiB,IAAI;KACnD,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;QAAE,QAAQ,EAAE,IAAI,CAAA;KAAE,GAAG,CAAC,GAAG,KAAK;CAC3D,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX,KAAK,gBAAgB,CAAC,CAAC,SAAS,iBAAiB,IAAI;KACnD,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;QAAE,QAAQ,EAAE,IAAI,CAAA;KAAE,GAAG,KAAK,GAAG,CAAC;CAC3D,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX,KAAK,WAAW,CAAC,CAAC,SAAS,iBAAiB,IAAI,QAAQ,CACvD;KACE,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACxE,GAAG;KACF,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACzE,CACD,CAAC;AAEF,KAAK,cAAc,CAAC,CAAC,SAAS,iBAAiB,IAAI,QAAQ,CAC1D;KACE,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,GAAG,oBAAoB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC3E,GAAG;KACF,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAChD,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACzB;CACD,CACD,CAAC;AAEF,KAAK,aAAa,CAAC,CAAC,SAAS,iBAAiB,IAAI,QAAQ,CACzD;KACE,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC1E,GAAG;KACF,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC3E,CACD,CAAC;AAEF,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,iBAAiB,GAAG,iBAAiB,IACzE,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;AACjE,wBAAgB,IAAI,CAAC,CAAC,SAAS,iBAAiB,EAC/C,aAAa,EAAE,CAAC,GACd,cAAc,CAAC,CAAC,CAAC,CAsCnB"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Dict = void 0;
|
|
4
|
-
const shorthandToLonghand_1 = require("../shorthandToLonghand");
|
|
5
|
-
function Dict(configuration) {
|
|
6
|
-
const longhand = Object.entries(configuration).reduce((acc, [key, value]) => {
|
|
7
|
-
acc[key] = (0, shorthandToLonghand_1.shorthandToLonghand)(value);
|
|
8
|
-
return acc;
|
|
9
|
-
}, {});
|
|
10
|
-
return {
|
|
11
|
-
paramToRuntime: (param) => {
|
|
12
|
-
return Object.entries(longhand).reduce((acc, [key, value]) => {
|
|
13
|
-
const typedKey = key;
|
|
14
|
-
const paramAtKey = param[typedKey];
|
|
15
|
-
acc[key] = value.paramToRuntime(paramAtKey);
|
|
16
|
-
return acc;
|
|
17
|
-
}, {});
|
|
18
|
-
},
|
|
19
|
-
serialize: (runtime) => {
|
|
20
|
-
const serialized = {};
|
|
21
|
-
for (const key in longhand) {
|
|
22
|
-
const typedKey = key;
|
|
23
|
-
serialized[key] = longhand[key].serialize(runtime[typedKey]);
|
|
24
|
-
}
|
|
25
|
-
return serialized;
|
|
26
|
-
},
|
|
27
|
-
deserialize: (serialized) => {
|
|
28
|
-
const runtime = {};
|
|
29
|
-
for (const key in longhand) {
|
|
30
|
-
const typedKey = key;
|
|
31
|
-
runtime[key] = longhand[key].deserialize(serialized[typedKey]);
|
|
32
|
-
}
|
|
33
|
-
return runtime;
|
|
34
|
-
},
|
|
35
|
-
isDict: true,
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
exports.Dict = Dict;
|
|
39
|
-
//# sourceMappingURL=dict.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dict.js","sourceRoot":"","sources":["../../../src/new/definitions/dict.ts"],"names":[],"mappings":";;;AAAA,gEAA6D;AAoD7D,SAAgB,IAAI,CACnB,aAAgB;IAEhB,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,MAAM,CAElD,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACxB,GAAG,CAAC,GAAG,CAAC,GAAG,IAAA,yCAAmB,EAAC,KAAK,CAAC,CAAC;QACtC,OAAO,GAAG,CAAC;IACZ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACN,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE;YACzB,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CACrC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBACrB,MAAM,QAAQ,GAAG,GAA6B,CAAC;gBAC/C,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACnC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;gBAC5C,OAAO,GAAG,CAAC;YACZ,CAAC,EACD,EAAE,CACgB,CAAC;QACrB,CAAC;QACD,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACtB,MAAM,UAAU,GAAG,EAAS,CAAC;YAC7B,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAG,GAA2B,CAAC;gBAC7C,UAAU,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAE,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/D,CAAC;YACD,OAAO,UAAU,CAAC;QACnB,CAAC;QACD,WAAW,EAAE,CAAC,UAAU,EAAE,EAAE;YAC3B,MAAM,OAAO,GAAG,EAAS,CAAC;YAC1B,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAG,GAA2B,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAE,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;YACjE,CAAC;YACD,OAAO,OAAO,CAAC;QAChB,CAAC;QACD,MAAM,EAAE,IAAI;KACZ,CAAC;AACH,CAAC;AAxCD,oBAwCC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dict.spec.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/dict.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,30 +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 dict_1 = require("./dict");
|
|
6
|
-
describe("Definition: Dict", () => {
|
|
7
|
-
it("uses keyword notation", () => {
|
|
8
|
-
class Test extends (0, objectShape_1.ObjectShape)((0, dict_1.Dict)({
|
|
9
|
-
value: Number,
|
|
10
|
-
})) {
|
|
11
|
-
}
|
|
12
|
-
// @ts-expect-error - missing value
|
|
13
|
-
expect(() => new Test()).toThrow();
|
|
14
|
-
const a = new Test({ value: 1 });
|
|
15
|
-
expect(a.value).toEqual(1);
|
|
16
|
-
(0, testUtils_1.check)(Test, a);
|
|
17
|
-
});
|
|
18
|
-
it("uses keyword-less notation", () => {
|
|
19
|
-
class Test extends (0, objectShape_1.ObjectShape)({
|
|
20
|
-
value: Number,
|
|
21
|
-
}) {
|
|
22
|
-
}
|
|
23
|
-
// @ts-expect-error - missing value
|
|
24
|
-
expect(() => new Test()).toThrow();
|
|
25
|
-
const a = new Test({ value: 1 });
|
|
26
|
-
expect(a.value).toEqual(1);
|
|
27
|
-
(0, testUtils_1.check)(Test, a);
|
|
28
|
-
});
|
|
29
|
-
});
|
|
30
|
-
//# sourceMappingURL=dict.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dict.spec.js","sourceRoot":"","sources":["../../../src/new/definitions/dict.spec.ts"],"names":[],"mappings":";;AAAA,uDAAoD;AACpD,4CAAqC;AACrC,iCAA8B;AAE9B,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAChC,MAAM,IAAK,SAAQ,IAAA,yBAAW,EAC7B,IAAA,WAAI,EAAC;YACJ,KAAK,EAAE,MAAM;SACb,CAAC,CACF;SAAG;QAEJ,mCAAmC;QACnC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;QAEnC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QACjC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,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,MAAM;SACb,CAAC;SAAG;QAEL,mCAAmC;QACnC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;QAEnC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QACjC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAA,iBAAK,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Definition } from "./definition";
|
|
2
|
-
import { SerializableClassConfiguration } from "./serializableClass";
|
|
3
|
-
export type EitherConfiguration = SerializableClassConfiguration[];
|
|
4
|
-
export type EitherDefinition<C extends EitherConfiguration = EitherConfiguration> = Definition<InstanceType<C[number]>, [
|
|
5
|
-
number,
|
|
6
|
-
ReturnType<InstanceType<C[number]>["serialize"]>
|
|
7
|
-
]>;
|
|
8
|
-
export declare function Either<C extends EitherConfiguration>(...configuration: C): EitherDefinition<C>;
|
|
9
|
-
//# sourceMappingURL=either.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"either.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/either.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,8BAA8B,EAAE,MAAM,qBAAqB,CAAC;AAErE,MAAM,MAAM,mBAAmB,GAAG,8BAA8B,EAAE,CAAC;AACnE,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,mBAAmB,GAAG,mBAAmB,IAAI,UAAU,CAC5F,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EACvB;IAAC,MAAM;IAAE,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;CAAC,CAC3D,CAAC;AACF,wBAAgB,MAAM,CAAC,CAAC,SAAS,mBAAmB,EAClD,GAAG,aAAa,EAAE,CAAC,GAClB,gBAAgB,CAAC,CAAC,CAAC,CAqBrB"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Either = void 0;
|
|
4
|
-
function Either(...configuration) {
|
|
5
|
-
return {
|
|
6
|
-
paramToRuntime: (param) => param,
|
|
7
|
-
serialize: (runtime) => {
|
|
8
|
-
const index = configuration.findIndex((c) => runtime.constructor === c);
|
|
9
|
-
const ctor = configuration[index];
|
|
10
|
-
if (!ctor) {
|
|
11
|
-
throw new Error(`Cannot serialize either of type ${runtime.constructor}`);
|
|
12
|
-
}
|
|
13
|
-
return [index, runtime.serialize()];
|
|
14
|
-
},
|
|
15
|
-
deserialize: ([index, serialized]) => {
|
|
16
|
-
const ctor = configuration[index];
|
|
17
|
-
if (!ctor) {
|
|
18
|
-
throw new Error(`Cannot deserialize either at index ${index}`);
|
|
19
|
-
}
|
|
20
|
-
return ctor.deserialize(serialized);
|
|
21
|
-
}
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
exports.Either = Either;
|
|
25
|
-
//# sourceMappingURL=either.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"either.js","sourceRoot":"","sources":["../../../src/new/definitions/either.ts"],"names":[],"mappings":";;;AASA,SAAgB,MAAM,CACpB,GAAG,aAAgB;IAEnB,OAAO;QACL,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK;QAChC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;YACrB,MAAM,KAAK,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC;YACxE,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CACb,mCAAmC,OAAO,CAAC,WAAW,EAAE,CACzD,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,EAAE,CAAQ,CAAC;QAC7C,CAAC;QACD,WAAW,EAAE,CAAC,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE;YACnC,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CAAC,sCAAsC,KAAK,EAAE,CAAC,CAAC;YACjE,CAAC;YACD,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;KACF,CAAC;AACJ,CAAC;AAvBD,wBAuBC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"either.spec.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/either.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,27 +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 either_1 = require("./either");
|
|
6
|
-
describe("Definition: Either", () => {
|
|
7
|
-
it("uses keyword notation", () => {
|
|
8
|
-
class A extends (0, objectShape_1.ObjectShape)({
|
|
9
|
-
value: String,
|
|
10
|
-
}) {
|
|
11
|
-
}
|
|
12
|
-
class B extends (0, objectShape_1.ObjectShape)({
|
|
13
|
-
value: Number,
|
|
14
|
-
}) {
|
|
15
|
-
}
|
|
16
|
-
class Test extends (0, objectShape_1.ObjectShape)({
|
|
17
|
-
value: (0, either_1.Either)(A, B),
|
|
18
|
-
}) {
|
|
19
|
-
}
|
|
20
|
-
const a = new Test({ value: new A({ value: "a" }) });
|
|
21
|
-
expect(a.value.value).toEqual("a");
|
|
22
|
-
(0, testUtils_1.check)(Test, a);
|
|
23
|
-
const b = new Test({ value: new B({ value: 1 }) });
|
|
24
|
-
expect(b.value.value).toEqual(1);
|
|
25
|
-
});
|
|
26
|
-
});
|
|
27
|
-
//# sourceMappingURL=either.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"either.spec.js","sourceRoot":"","sources":["../../../src/new/definitions/either.spec.ts"],"names":[],"mappings":";;AAAA,uDAAoD;AACpD,4CAAqC;AACrC,qCAAkC;AAElC,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAChC,MAAM,CAAE,SAAQ,IAAA,yBAAW,EAAC;YAC3B,KAAK,EAAE,MAAM;SACb,CAAC;SAAG;QAEL,MAAM,CAAE,SAAQ,IAAA,yBAAW,EAAC;YAC3B,KAAK,EAAE,MAAM;SACb,CAAC;SAAG;QAEL,MAAM,IAAK,SAAQ,IAAA,yBAAW,EAAC;YAC9B,KAAK,EAAE,IAAA,eAAM,EAAC,CAAC,EAAE,CAAC,CAAC;SACnB,CAAC;SAAG;QAEL,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QACrD,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACnC,IAAA,iBAAK,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAEf,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACnD,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Definition } from "./definition";
|
|
2
|
-
export type Literals = [
|
|
3
|
-
[
|
|
4
|
-
typeof String,
|
|
5
|
-
string
|
|
6
|
-
],
|
|
7
|
-
[
|
|
8
|
-
typeof Number,
|
|
9
|
-
number
|
|
10
|
-
],
|
|
11
|
-
[
|
|
12
|
-
typeof Boolean,
|
|
13
|
-
boolean
|
|
14
|
-
],
|
|
15
|
-
[
|
|
16
|
-
typeof Date,
|
|
17
|
-
Date
|
|
18
|
-
]
|
|
19
|
-
];
|
|
20
|
-
export type LiteralInput = Literals[number][0];
|
|
21
|
-
export type LiteralPrimitive = Literals[number][1];
|
|
22
|
-
export type LiteralRuntime<L extends LiteralInput> = Extract<Literals[number], [
|
|
23
|
-
L,
|
|
24
|
-
unknown
|
|
25
|
-
]>[1];
|
|
26
|
-
export type LiteralShorthand = LiteralInput;
|
|
27
|
-
export type LiteralConfiguration = LiteralInput | LiteralShorthand;
|
|
28
|
-
export type LiteralDefinition<C extends LiteralConfiguration = LiteralConfiguration> = Definition<LiteralRuntime<C>, LiteralRuntime<C>>;
|
|
29
|
-
export declare function Literal<C extends LiteralConfiguration>(configuration: C): LiteralDefinition<C>;
|
|
30
|
-
//# sourceMappingURL=literal.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"literal.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/literal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,MAAM,QAAQ,GAAG;IACrB;QAAC,OAAO,MAAM;QAAE,MAAM;KAAC;IACvB;QAAC,OAAO,MAAM;QAAE,MAAM;KAAC;IACvB;QAAC,OAAO,OAAO;QAAE,OAAO;KAAC;IACzB;QAAC,OAAO,IAAI;QAAE,IAAI;KAAC;CACpB,CAAC;AACF,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/C,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAEnD,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,YAAY,IAAI,OAAO,CAC1D,QAAQ,CAAC,MAAM,CAAC,EAChB;IAAC,CAAC;IAAE,OAAO;CAAC,CACb,CAAC,CAAC,CAAC,CAAC;AAEL,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC;AAC5C,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG,gBAAgB,CAAC;AACnE,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,oBAAoB,GAAG,oBAAoB,IAAI,UAAU,CAC/F,cAAc,CAAC,CAAC,CAAC,EACjB,cAAc,CAAC,CAAC,CAAC,CAClB,CAAC;AACF,wBAAgB,OAAO,CAAC,CAAC,SAAS,oBAAoB,EACpD,aAAa,EAAE,CAAC,GACf,iBAAiB,CAAC,CAAC,CAAC,CAMtB"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Literal = void 0;
|
|
4
|
-
function Literal(configuration) {
|
|
5
|
-
return {
|
|
6
|
-
paramToRuntime: (param) => param,
|
|
7
|
-
serialize: (runtime) => runtime,
|
|
8
|
-
deserialize: (serialized) => serialized
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
exports.Literal = Literal;
|
|
12
|
-
//# sourceMappingURL=literal.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"literal.js","sourceRoot":"","sources":["../../../src/new/definitions/literal.ts"],"names":[],"mappings":";;;AAsBA,SAAgB,OAAO,CACrB,aAAgB;IAEhB,OAAO;QACL,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;KACxC,CAAC;AACJ,CAAC;AARD,0BAQC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"literal.spec.d.ts","sourceRoot":"","sources":["../../../src/new/definitions/literal.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,49 +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 dict_1 = require("./dict");
|
|
6
|
-
const literal_1 = require("./literal");
|
|
7
|
-
describe("Definition: Literal", () => {
|
|
8
|
-
it("uses keyword notation", () => {
|
|
9
|
-
class Test extends (0, objectShape_1.ObjectShape)((0, dict_1.Dict)({
|
|
10
|
-
string: (0, literal_1.Literal)(String),
|
|
11
|
-
number: (0, literal_1.Literal)(Number),
|
|
12
|
-
date: (0, literal_1.Literal)(Date),
|
|
13
|
-
})) {
|
|
14
|
-
}
|
|
15
|
-
// @ts-expect-error - missing value
|
|
16
|
-
new Test({ string: "1", number: 1 });
|
|
17
|
-
new Test({
|
|
18
|
-
// @ts-expect-error - wrong type
|
|
19
|
-
string: 1,
|
|
20
|
-
// @ts-expect-error - wrong type
|
|
21
|
-
number: "1",
|
|
22
|
-
// @ts-expect-error - wrong type
|
|
23
|
-
date: "1",
|
|
24
|
-
});
|
|
25
|
-
const test = new Test({ string: "a", number: 1, date: new Date() });
|
|
26
|
-
expect(test.string).toBe("a");
|
|
27
|
-
expect(test.number).toBe(1);
|
|
28
|
-
expect(test.date).toBeInstanceOf(Date);
|
|
29
|
-
(0, testUtils_1.check)(Test, test);
|
|
30
|
-
});
|
|
31
|
-
it("uses keyword-less notation", () => {
|
|
32
|
-
class Test extends (0, objectShape_1.ObjectShape)({
|
|
33
|
-
string: String,
|
|
34
|
-
number: Number,
|
|
35
|
-
date: Date,
|
|
36
|
-
}) {
|
|
37
|
-
}
|
|
38
|
-
// @ts-expect-error - missing value
|
|
39
|
-
new Test({});
|
|
40
|
-
// @ts-expect-error - wrong type
|
|
41
|
-
new Test({ value: 1 });
|
|
42
|
-
const test = new Test({ string: "a", number: 1, date: new Date() });
|
|
43
|
-
expect(test.string).toBe("a");
|
|
44
|
-
expect(test.number).toBe(1);
|
|
45
|
-
expect(test.date).toBeInstanceOf(Date);
|
|
46
|
-
(0, testUtils_1.check)(Test, test);
|
|
47
|
-
});
|
|
48
|
-
});
|
|
49
|
-
//# sourceMappingURL=literal.spec.js.map
|