@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.
Files changed (307) hide show
  1. package/dist/_.d.ts +3 -4
  2. package/dist/_.d.ts.map +1 -1
  3. package/dist/choice.d.ts +4 -3
  4. package/dist/choice.d.ts.map +1 -1
  5. package/dist/choice.js +1 -0
  6. package/dist/choice.js.map +1 -1
  7. package/dist/class.d.ts.map +1 -1
  8. package/dist/dict.d.ts +9 -11
  9. package/dist/dict.d.ts.map +1 -1
  10. package/dist/dict.js +0 -2
  11. package/dist/dict.js.map +1 -1
  12. package/dist/either.d.ts.map +1 -1
  13. package/dist/literal.d.ts +1 -4
  14. package/dist/literal.d.ts.map +1 -1
  15. package/dist/literal.js.map +1 -1
  16. package/dist/mapping.d.ts.map +1 -1
  17. package/dist/multiple.d.ts +99 -153
  18. package/dist/multiple.d.ts.map +1 -1
  19. package/dist/multiple.js +73 -27
  20. package/dist/multiple.js.map +1 -1
  21. package/dist/nothing.d.ts.map +1 -1
  22. package/dist/optional.d.ts +12 -13
  23. package/dist/optional.d.ts.map +1 -1
  24. package/dist/optional.js +0 -1
  25. package/dist/optional.js.map +1 -1
  26. package/dist/test.d.ts.map +1 -1
  27. package/package.json +1 -1
  28. package/dist/allcases.d.ts +0 -2
  29. package/dist/allcases.d.ts.map +0 -1
  30. package/dist/allcases.js +0 -4
  31. package/dist/allcases.js.map +0 -1
  32. package/dist/choice.type.d.ts +0 -2
  33. package/dist/choice.type.d.ts.map +0 -1
  34. package/dist/choice.type.js +0 -50
  35. package/dist/choice.type.js.map +0 -1
  36. package/dist/definitions/child.d.ts +0 -9
  37. package/dist/definitions/child.d.ts.map +0 -1
  38. package/dist/definitions/child.js +0 -18
  39. package/dist/definitions/child.js.map +0 -1
  40. package/dist/definitions/child.spec.d.ts +0 -2
  41. package/dist/definitions/child.spec.d.ts.map +0 -1
  42. package/dist/definitions/child.spec.js +0 -34
  43. package/dist/definitions/child.spec.js.map +0 -1
  44. package/dist/definitions/definition.d.ts +0 -13
  45. package/dist/definitions/definition.d.ts.map +0 -1
  46. package/dist/definitions/definition.js +0 -3
  47. package/dist/definitions/definition.js.map +0 -1
  48. package/dist/definitions/dict.d.ts +0 -38
  49. package/dist/definitions/dict.d.ts.map +0 -1
  50. package/dist/definitions/dict.js +0 -41
  51. package/dist/definitions/dict.js.map +0 -1
  52. package/dist/definitions/dict.spec.d.ts +0 -2
  53. package/dist/definitions/dict.spec.d.ts.map +0 -1
  54. package/dist/definitions/dict.spec.js +0 -30
  55. package/dist/definitions/dict.spec.js.map +0 -1
  56. package/dist/definitions/either.d.ts +0 -9
  57. package/dist/definitions/either.d.ts.map +0 -1
  58. package/dist/definitions/either.js +0 -27
  59. package/dist/definitions/either.js.map +0 -1
  60. package/dist/definitions/either.spec.d.ts +0 -2
  61. package/dist/definitions/either.spec.d.ts.map +0 -1
  62. package/dist/definitions/either.spec.js +0 -27
  63. package/dist/definitions/either.spec.js.map +0 -1
  64. package/dist/definitions/literal.d.ts +0 -30
  65. package/dist/definitions/literal.d.ts.map +0 -1
  66. package/dist/definitions/literal.js +0 -14
  67. package/dist/definitions/literal.js.map +0 -1
  68. package/dist/definitions/literal.spec.d.ts +0 -2
  69. package/dist/definitions/literal.spec.d.ts.map +0 -1
  70. package/dist/definitions/literal.spec.js +0 -49
  71. package/dist/definitions/literal.spec.js.map +0 -1
  72. package/dist/definitions/multiple.d.ts +0 -9
  73. package/dist/definitions/multiple.d.ts.map +0 -1
  74. package/dist/definitions/multiple.js +0 -20
  75. package/dist/definitions/multiple.js.map +0 -1
  76. package/dist/definitions/multiple.spec.d.ts +0 -2
  77. package/dist/definitions/multiple.spec.d.ts.map +0 -1
  78. package/dist/definitions/multiple.spec.js +0 -46
  79. package/dist/definitions/multiple.spec.js.map +0 -1
  80. package/dist/definitions/nothing.d.ts +0 -6
  81. package/dist/definitions/nothing.d.ts.map +0 -1
  82. package/dist/definitions/nothing.js +0 -14
  83. package/dist/definitions/nothing.js.map +0 -1
  84. package/dist/definitions/optional.d.ts +0 -10
  85. package/dist/definitions/optional.d.ts.map +0 -1
  86. package/dist/definitions/optional.js +0 -21
  87. package/dist/definitions/optional.js.map +0 -1
  88. package/dist/definitions/optional.spec.d.ts +0 -2
  89. package/dist/definitions/optional.spec.d.ts.map +0 -1
  90. package/dist/definitions/optional.spec.js +0 -20
  91. package/dist/definitions/optional.spec.js.map +0 -1
  92. package/dist/definitions/serializableClass.d.ts +0 -15
  93. package/dist/definitions/serializableClass.d.ts.map +0 -1
  94. package/dist/definitions/serializableClass.js +0 -18
  95. package/dist/definitions/serializableClass.js.map +0 -1
  96. package/dist/definitions/serializableClass.spec.d.ts +0 -2
  97. package/dist/definitions/serializableClass.spec.d.ts.map +0 -1
  98. package/dist/definitions/serializableClass.spec.js +0 -106
  99. package/dist/definitions/serializableClass.spec.js.map +0 -1
  100. package/dist/definitions/shorthands.d.ts +0 -18
  101. package/dist/definitions/shorthands.d.ts.map +0 -1
  102. package/dist/definitions/shorthands.js +0 -3
  103. package/dist/definitions/shorthands.js.map +0 -1
  104. package/dist/definitions/stringEnum.d.ts +0 -37
  105. package/dist/definitions/stringEnum.d.ts.map +0 -1
  106. package/dist/definitions/stringEnum.js +0 -43
  107. package/dist/definitions/stringEnum.js.map +0 -1
  108. package/dist/definitions/stringEnum.spec.d.ts +0 -2
  109. package/dist/definitions/stringEnum.spec.d.ts.map +0 -1
  110. package/dist/definitions/stringEnum.spec.js +0 -86
  111. package/dist/definitions/stringEnum.spec.js.map +0 -1
  112. package/dist/definitions/tuple.d.ts +0 -11
  113. package/dist/definitions/tuple.d.ts.map +0 -1
  114. package/dist/definitions/tuple.js +0 -20
  115. package/dist/definitions/tuple.js.map +0 -1
  116. package/dist/definitions/tuple.spec.d.ts +0 -2
  117. package/dist/definitions/tuple.spec.d.ts.map +0 -1
  118. package/dist/definitions/tuple.spec.js +0 -18
  119. package/dist/definitions/tuple.spec.js.map +0 -1
  120. package/dist/enum.d.ts +0 -21
  121. package/dist/enum.d.ts.map +0 -1
  122. package/dist/enum.js +0 -43
  123. package/dist/enum.js.map +0 -1
  124. package/dist/enum.spec.d.ts +0 -2
  125. package/dist/enum.spec.d.ts.map +0 -1
  126. package/dist/enum.spec.js +0 -222
  127. package/dist/enum.spec.js.map +0 -1
  128. package/dist/index.spec.d.ts +0 -2
  129. package/dist/index.spec.d.ts.map +0 -1
  130. package/dist/index.spec.js +0 -357
  131. package/dist/index.spec.js.map +0 -1
  132. package/dist/mixins/objectShape.d.ts +0 -18
  133. package/dist/mixins/objectShape.d.ts.map +0 -1
  134. package/dist/mixins/objectShape.js +0 -35
  135. package/dist/mixins/objectShape.js.map +0 -1
  136. package/dist/mixins/objectShape.spec.d.ts +0 -2
  137. package/dist/mixins/objectShape.spec.d.ts.map +0 -1
  138. package/dist/mixins/objectShape.spec.js +0 -99
  139. package/dist/mixins/objectShape.spec.js.map +0 -1
  140. package/dist/mixins/primitive.d.ts +0 -23
  141. package/dist/mixins/primitive.d.ts.map +0 -1
  142. package/dist/mixins/primitive.js +0 -35
  143. package/dist/mixins/primitive.js.map +0 -1
  144. package/dist/mixins/primitive.spec.d.ts +0 -2
  145. package/dist/mixins/primitive.spec.d.ts.map +0 -1
  146. package/dist/mixins/primitive.spec.js +0 -21
  147. package/dist/mixins/primitive.spec.js.map +0 -1
  148. package/dist/mixins/shape.d.ts +0 -22
  149. package/dist/mixins/shape.d.ts.map +0 -1
  150. package/dist/mixins/shape.js +0 -17
  151. package/dist/mixins/shape.js.map +0 -1
  152. package/dist/mixins/shape.spec.d.ts +0 -2
  153. package/dist/mixins/shape.spec.d.ts.map +0 -1
  154. package/dist/mixins/shape.spec.js +0 -86
  155. package/dist/mixins/shape.spec.js.map +0 -1
  156. package/dist/new/definitions/child.d.ts +0 -9
  157. package/dist/new/definitions/child.d.ts.map +0 -1
  158. package/dist/new/definitions/child.js +0 -16
  159. package/dist/new/definitions/child.js.map +0 -1
  160. package/dist/new/definitions/child.spec.d.ts +0 -2
  161. package/dist/new/definitions/child.spec.d.ts.map +0 -1
  162. package/dist/new/definitions/child.spec.js +0 -34
  163. package/dist/new/definitions/child.spec.js.map +0 -1
  164. package/dist/new/definitions/definition.d.ts +0 -11
  165. package/dist/new/definitions/definition.d.ts.map +0 -1
  166. package/dist/new/definitions/definition.js +0 -3
  167. package/dist/new/definitions/definition.js.map +0 -1
  168. package/dist/new/definitions/dict.d.ts +0 -38
  169. package/dist/new/definitions/dict.d.ts.map +0 -1
  170. package/dist/new/definitions/dict.js +0 -39
  171. package/dist/new/definitions/dict.js.map +0 -1
  172. package/dist/new/definitions/dict.spec.d.ts +0 -2
  173. package/dist/new/definitions/dict.spec.d.ts.map +0 -1
  174. package/dist/new/definitions/dict.spec.js +0 -30
  175. package/dist/new/definitions/dict.spec.js.map +0 -1
  176. package/dist/new/definitions/either.d.ts +0 -9
  177. package/dist/new/definitions/either.d.ts.map +0 -1
  178. package/dist/new/definitions/either.js +0 -25
  179. package/dist/new/definitions/either.js.map +0 -1
  180. package/dist/new/definitions/either.spec.d.ts +0 -2
  181. package/dist/new/definitions/either.spec.d.ts.map +0 -1
  182. package/dist/new/definitions/either.spec.js +0 -27
  183. package/dist/new/definitions/either.spec.js.map +0 -1
  184. package/dist/new/definitions/literal.d.ts +0 -30
  185. package/dist/new/definitions/literal.d.ts.map +0 -1
  186. package/dist/new/definitions/literal.js +0 -12
  187. package/dist/new/definitions/literal.js.map +0 -1
  188. package/dist/new/definitions/literal.spec.d.ts +0 -2
  189. package/dist/new/definitions/literal.spec.d.ts.map +0 -1
  190. package/dist/new/definitions/literal.spec.js +0 -49
  191. package/dist/new/definitions/literal.spec.js.map +0 -1
  192. package/dist/new/definitions/multiple.d.ts +0 -9
  193. package/dist/new/definitions/multiple.d.ts.map +0 -1
  194. package/dist/new/definitions/multiple.js +0 -18
  195. package/dist/new/definitions/multiple.js.map +0 -1
  196. package/dist/new/definitions/multiple.spec.d.ts +0 -2
  197. package/dist/new/definitions/multiple.spec.d.ts.map +0 -1
  198. package/dist/new/definitions/multiple.spec.js +0 -29
  199. package/dist/new/definitions/multiple.spec.js.map +0 -1
  200. package/dist/new/definitions/nothing.d.ts +0 -6
  201. package/dist/new/definitions/nothing.d.ts.map +0 -1
  202. package/dist/new/definitions/nothing.js +0 -12
  203. package/dist/new/definitions/nothing.js.map +0 -1
  204. package/dist/new/definitions/optional.d.ts +0 -10
  205. package/dist/new/definitions/optional.d.ts.map +0 -1
  206. package/dist/new/definitions/optional.js +0 -19
  207. package/dist/new/definitions/optional.js.map +0 -1
  208. package/dist/new/definitions/optional.spec.d.ts +0 -2
  209. package/dist/new/definitions/optional.spec.d.ts.map +0 -1
  210. package/dist/new/definitions/optional.spec.js +0 -20
  211. package/dist/new/definitions/optional.spec.js.map +0 -1
  212. package/dist/new/definitions/serializableClass.d.ts +0 -15
  213. package/dist/new/definitions/serializableClass.d.ts.map +0 -1
  214. package/dist/new/definitions/serializableClass.js +0 -16
  215. package/dist/new/definitions/serializableClass.js.map +0 -1
  216. package/dist/new/definitions/serializableClass.spec.d.ts +0 -2
  217. package/dist/new/definitions/serializableClass.spec.d.ts.map +0 -1
  218. package/dist/new/definitions/serializableClass.spec.js +0 -106
  219. package/dist/new/definitions/serializableClass.spec.js.map +0 -1
  220. package/dist/new/definitions/shorthands.d.ts +0 -18
  221. package/dist/new/definitions/shorthands.d.ts.map +0 -1
  222. package/dist/new/definitions/shorthands.js +0 -3
  223. package/dist/new/definitions/shorthands.js.map +0 -1
  224. package/dist/new/definitions/stringEnum.d.ts +0 -29
  225. package/dist/new/definitions/stringEnum.d.ts.map +0 -1
  226. package/dist/new/definitions/stringEnum.js +0 -29
  227. package/dist/new/definitions/stringEnum.js.map +0 -1
  228. package/dist/new/definitions/stringEnum.spec.d.ts +0 -2
  229. package/dist/new/definitions/stringEnum.spec.d.ts.map +0 -1
  230. package/dist/new/definitions/stringEnum.spec.js +0 -60
  231. package/dist/new/definitions/stringEnum.spec.js.map +0 -1
  232. package/dist/new/definitions/tuple.d.ts +0 -11
  233. package/dist/new/definitions/tuple.d.ts.map +0 -1
  234. package/dist/new/definitions/tuple.js +0 -18
  235. package/dist/new/definitions/tuple.js.map +0 -1
  236. package/dist/new/definitions/tuple.spec.d.ts +0 -2
  237. package/dist/new/definitions/tuple.spec.d.ts.map +0 -1
  238. package/dist/new/definitions/tuple.spec.js +0 -18
  239. package/dist/new/definitions/tuple.spec.js.map +0 -1
  240. package/dist/new/index.d.ts +0 -13
  241. package/dist/new/index.d.ts.map +0 -1
  242. package/dist/new/index.js +0 -29
  243. package/dist/new/index.js.map +0 -1
  244. package/dist/new/mixins/objectShape.d.ts +0 -18
  245. package/dist/new/mixins/objectShape.d.ts.map +0 -1
  246. package/dist/new/mixins/objectShape.js +0 -27
  247. package/dist/new/mixins/objectShape.js.map +0 -1
  248. package/dist/new/mixins/objectShape.spec.d.ts +0 -2
  249. package/dist/new/mixins/objectShape.spec.d.ts.map +0 -1
  250. package/dist/new/mixins/objectShape.spec.js +0 -100
  251. package/dist/new/mixins/objectShape.spec.js.map +0 -1
  252. package/dist/new/mixins/primitive.d.ts +0 -21
  253. package/dist/new/mixins/primitive.d.ts.map +0 -1
  254. package/dist/new/mixins/primitive.js +0 -27
  255. package/dist/new/mixins/primitive.js.map +0 -1
  256. package/dist/new/mixins/primitive.spec.d.ts +0 -2
  257. package/dist/new/mixins/primitive.spec.d.ts.map +0 -1
  258. package/dist/new/mixins/primitive.spec.js +0 -22
  259. package/dist/new/mixins/primitive.spec.js.map +0 -1
  260. package/dist/new/mixins/shape.d.ts +0 -22
  261. package/dist/new/mixins/shape.d.ts.map +0 -1
  262. package/dist/new/mixins/shape.js +0 -17
  263. package/dist/new/mixins/shape.js.map +0 -1
  264. package/dist/new/mixins/shape.spec.d.ts +0 -2
  265. package/dist/new/mixins/shape.spec.d.ts.map +0 -1
  266. package/dist/new/mixins/shape.spec.js +0 -86
  267. package/dist/new/mixins/shape.spec.js.map +0 -1
  268. package/dist/new/shorthandToLonghand.d.ts +0 -4
  269. package/dist/new/shorthandToLonghand.d.ts.map +0 -1
  270. package/dist/new/shorthandToLonghand.js +0 -59
  271. package/dist/new/shorthandToLonghand.js.map +0 -1
  272. package/dist/new/testUtils.d.ts +0 -6
  273. package/dist/new/testUtils.d.ts.map +0 -1
  274. package/dist/new/testUtils.js +0 -12
  275. package/dist/new/testUtils.js.map +0 -1
  276. package/dist/new/types.d.ts +0 -11
  277. package/dist/new/types.d.ts.map +0 -1
  278. package/dist/new/types.js +0 -3
  279. package/dist/new/types.js.map +0 -1
  280. package/dist/old/enum.d.ts +0 -25
  281. package/dist/old/enum.d.ts.map +0 -1
  282. package/dist/old/enum.js +0 -37
  283. package/dist/old/enum.js.map +0 -1
  284. package/dist/old/enum.spec.d.ts +0 -2
  285. package/dist/old/enum.spec.d.ts.map +0 -1
  286. package/dist/old/enum.spec.js +0 -71
  287. package/dist/old/enum.spec.js.map +0 -1
  288. package/dist/old/index.d.ts +0 -94
  289. package/dist/old/index.d.ts.map +0 -1
  290. package/dist/old/index.js +0 -129
  291. package/dist/old/index.js.map +0 -1
  292. package/dist/old/index.spec.d.ts +0 -2
  293. package/dist/old/index.spec.d.ts.map +0 -1
  294. package/dist/old/index.spec.js +0 -357
  295. package/dist/old/index.spec.js.map +0 -1
  296. package/dist/shorthandToLonghand.d.ts +0 -4
  297. package/dist/shorthandToLonghand.d.ts.map +0 -1
  298. package/dist/shorthandToLonghand.js +0 -59
  299. package/dist/shorthandToLonghand.js.map +0 -1
  300. package/dist/testUtils.d.ts +0 -6
  301. package/dist/testUtils.d.ts.map +0 -1
  302. package/dist/testUtils.js +0 -12
  303. package/dist/testUtils.js.map +0 -1
  304. package/dist/types.d.ts +0 -11
  305. package/dist/types.d.ts.map +0 -1
  306. package/dist/types.js +0 -3
  307. 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"}
@@ -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"}
@@ -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
@@ -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,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=shape.spec.d.ts.map
@@ -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,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=child.spec.d.ts.map
@@ -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,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=definition.js.map
@@ -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,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=dict.spec.d.ts.map
@@ -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,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=either.spec.d.ts.map
@@ -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,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=literal.spec.d.ts.map
@@ -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