@dipscope/type-manager 7.0.0-beta.0 → 7.0.1

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 (392) hide show
  1. package/CHANGELOG.md +268 -262
  2. package/CONTRIBUTING.md +58 -58
  3. package/LICENSE.md +201 -201
  4. package/README.md +1901 -1901
  5. package/dist/es2015/alias.js +1 -1
  6. package/dist/es2015/any.js +2 -2
  7. package/dist/es2015/custom-context.js +57 -57
  8. package/dist/es2015/custom-key.js +7 -7
  9. package/dist/es2015/custom-option.js +1 -1
  10. package/dist/es2015/custom-value-resolver.js +1 -1
  11. package/dist/es2015/custom-value.js +1 -1
  12. package/dist/es2015/default-value-resolver.js +1 -1
  13. package/dist/es2015/default-value.js +1 -1
  14. package/dist/es2015/discriminant.js +1 -1
  15. package/dist/es2015/discriminator.js +1 -1
  16. package/dist/es2015/factories/index.js +1 -1
  17. package/dist/es2015/factories/type-factory.js +33 -33
  18. package/dist/es2015/factory.js +1 -1
  19. package/dist/es2015/functions/get-own-reflect-metadata.js +7 -7
  20. package/dist/es2015/functions/get-reflect-metadata.js +7 -7
  21. package/dist/es2015/functions/get-words.js +4 -4
  22. package/dist/es2015/functions/index.js +18 -18
  23. package/dist/es2015/functions/is-arrow-function.js +4 -4
  24. package/dist/es2015/functions/is-arrow-function.js.map +1 -1
  25. package/dist/es2015/functions/is-ctor-function.js +4 -4
  26. package/dist/es2015/functions/is-ctor-function.js.map +1 -1
  27. package/dist/es2015/functions/is-data-view.js +3 -3
  28. package/dist/es2015/functions/is-float-32-array.js +3 -3
  29. package/dist/es2015/functions/is-float-64-array.js +3 -3
  30. package/dist/es2015/functions/is-int-16-array.js +3 -3
  31. package/dist/es2015/functions/is-int-32-array.js +3 -3
  32. package/dist/es2015/functions/is-int-8-array.js +3 -3
  33. package/dist/es2015/functions/is-uint-16-array.js +3 -3
  34. package/dist/es2015/functions/is-uint-32-array.js +3 -3
  35. package/dist/es2015/functions/is-uint-8-array.js +3 -3
  36. package/dist/es2015/functions/is-uint-8-clamped-array.js +3 -3
  37. package/dist/es2015/functions/json-parse.js +3 -3
  38. package/dist/es2015/functions/json-stringify.js +66 -66
  39. package/dist/es2015/functions/name-of.js +7 -7
  40. package/dist/es2015/generic-argument.js +1 -1
  41. package/dist/es2015/generic-metadata-resolver.js +1 -1
  42. package/dist/es2015/generic-metadata.js +1 -1
  43. package/dist/es2015/generic-structure.js +1 -1
  44. package/dist/es2015/index.js +70 -70
  45. package/dist/es2015/inject-index.js +1 -1
  46. package/dist/es2015/inject-internals.js +1 -1
  47. package/dist/es2015/inject-metadata.js +62 -62
  48. package/dist/es2015/inject-options.js +1 -1
  49. package/dist/es2015/inject-sorter.js +1 -1
  50. package/dist/es2015/inject-sorters/asc-inject-sorter.js +13 -13
  51. package/dist/es2015/inject-sorters/desc-inject-sorter.js +13 -13
  52. package/dist/es2015/inject-sorters/index.js +2 -2
  53. package/dist/es2015/inject.js +23 -23
  54. package/dist/es2015/injector.js +1 -1
  55. package/dist/es2015/injectors/index.js +1 -1
  56. package/dist/es2015/injectors/singleton-injector.js +30 -30
  57. package/dist/es2015/log-level.js +7 -7
  58. package/dist/es2015/log.js +49 -49
  59. package/dist/es2015/metadata.js +80 -80
  60. package/dist/es2015/naming-convention.js +1 -1
  61. package/dist/es2015/naming-conventions/camel-case-naming-convention.js +16 -16
  62. package/dist/es2015/naming-conventions/flat-case-naming-convention.js +12 -12
  63. package/dist/es2015/naming-conventions/flat-upper-case-naming-convention.js +12 -12
  64. package/dist/es2015/naming-conventions/index.js +8 -8
  65. package/dist/es2015/naming-conventions/kebab-case-naming-convention.js +16 -16
  66. package/dist/es2015/naming-conventions/kebab-upper-case-naming-convention.js +16 -16
  67. package/dist/es2015/naming-conventions/pascal-case-naming-convention.js +17 -17
  68. package/dist/es2015/naming-conventions/snake-case-naming-convention.js +16 -16
  69. package/dist/es2015/naming-conventions/snake-upper-case-naming-convention.js +16 -16
  70. package/dist/es2015/property-internals.js +1 -1
  71. package/dist/es2015/property-metadata.js +268 -268
  72. package/dist/es2015/property-name.js +1 -1
  73. package/dist/es2015/property-options.js +1 -1
  74. package/dist/es2015/property-sorter.js +1 -1
  75. package/dist/es2015/property-sorters/asc-property-sorter.js +13 -13
  76. package/dist/es2015/property-sorters/desc-property-sorter.js +13 -13
  77. package/dist/es2015/property-sorters/index.js +2 -2
  78. package/dist/es2015/property.js +38 -38
  79. package/dist/es2015/reference-callback.js +1 -1
  80. package/dist/es2015/reference-handler.js +1 -1
  81. package/dist/es2015/reference-handlers/circular-reference-handler.js +35 -35
  82. package/dist/es2015/reference-handlers/index.js +3 -3
  83. package/dist/es2015/reference-handlers/json-path-reference-handler.js +68 -68
  84. package/dist/es2015/reference-handlers/plain-reference-handler.js +31 -31
  85. package/dist/es2015/reference-key.js +1 -1
  86. package/dist/es2015/reference-value-getter.js +1 -1
  87. package/dist/es2015/reference-value-setter.js +1 -1
  88. package/dist/es2015/reference-value.js +1 -1
  89. package/dist/es2015/serializer-context-options.js +1 -1
  90. package/dist/es2015/serializer-context.js +281 -281
  91. package/dist/es2015/serializer.js +1 -1
  92. package/dist/es2015/serializers/any-serializer.js +21 -21
  93. package/dist/es2015/serializers/array-buffer-serializer.js +40 -40
  94. package/dist/es2015/serializers/array-serializer.js +59 -59
  95. package/dist/es2015/serializers/boolean-serializer.js +54 -54
  96. package/dist/es2015/serializers/data-view-serializer.js +41 -41
  97. package/dist/es2015/serializers/date-serializer.js +33 -33
  98. package/dist/es2015/serializers/float-32-array-serializer.js +34 -34
  99. package/dist/es2015/serializers/float-64-array-serializer.js +34 -34
  100. package/dist/es2015/serializers/index.js +21 -21
  101. package/dist/es2015/serializers/int-16-array-serializer.js +34 -34
  102. package/dist/es2015/serializers/int-32-array-serializer.js +34 -34
  103. package/dist/es2015/serializers/int-8-array-serializer.js +34 -34
  104. package/dist/es2015/serializers/map-serializer.js +95 -95
  105. package/dist/es2015/serializers/number-serializer.js +48 -48
  106. package/dist/es2015/serializers/set-serializer.js +61 -61
  107. package/dist/es2015/serializers/string-serializer.js +54 -54
  108. package/dist/es2015/serializers/type-serializer.js +120 -120
  109. package/dist/es2015/serializers/uint-16-array-serializer.js +34 -34
  110. package/dist/es2015/serializers/uint-32-array-serializer.js +34 -34
  111. package/dist/es2015/serializers/uint-8-array-serializer.js +34 -34
  112. package/dist/es2015/serializers/uint-8-clamped-array-serializer.js +34 -34
  113. package/dist/es2015/serializers/unknown-serializer.js +21 -21
  114. package/dist/es2015/type-abstraction.js +1 -1
  115. package/dist/es2015/type-argument.js +1 -1
  116. package/dist/es2015/type-configuration.js +1 -1
  117. package/dist/es2015/type-context-entry.js +8 -8
  118. package/dist/es2015/type-context.js +30 -30
  119. package/dist/es2015/type-ctor.js +1 -1
  120. package/dist/es2015/type-fn.js +1 -1
  121. package/dist/es2015/type-internals.js +1 -1
  122. package/dist/es2015/type-like.js +1 -1
  123. package/dist/es2015/type-manager-options.js +1 -1
  124. package/dist/es2015/type-manager.js +319 -319
  125. package/dist/es2015/type-metadata-resolver.js +1 -1
  126. package/dist/es2015/type-metadata-symbol.js +1 -1
  127. package/dist/es2015/type-metadata.js +413 -413
  128. package/dist/es2015/type-name.js +1 -1
  129. package/dist/es2015/type-options-base.js +1 -1
  130. package/dist/es2015/type-options.js +1 -1
  131. package/dist/es2015/type-resolver.js +1 -1
  132. package/dist/es2015/type.js +7 -7
  133. package/dist/es2015/unknown.js +2 -2
  134. package/dist/es5/alias.js +1 -1
  135. package/dist/es5/any.js +6 -6
  136. package/dist/es5/custom-context.js +93 -93
  137. package/dist/es5/custom-key.js +9 -9
  138. package/dist/es5/custom-option.js +1 -1
  139. package/dist/es5/custom-value-resolver.js +1 -1
  140. package/dist/es5/custom-value.js +1 -1
  141. package/dist/es5/default-value-resolver.js +1 -1
  142. package/dist/es5/default-value.js +1 -1
  143. package/dist/es5/discriminant.js +1 -1
  144. package/dist/es5/discriminator.js +1 -1
  145. package/dist/es5/factories/index.js +1 -1
  146. package/dist/es5/factories/type-factory.js +59 -59
  147. package/dist/es5/factory.js +1 -1
  148. package/dist/es5/functions/get-own-reflect-metadata.js +7 -7
  149. package/dist/es5/functions/get-reflect-metadata.js +7 -7
  150. package/dist/es5/functions/get-words.js +4 -4
  151. package/dist/es5/functions/index.js +18 -18
  152. package/dist/es5/functions/is-arrow-function.js +4 -4
  153. package/dist/es5/functions/is-arrow-function.js.map +1 -1
  154. package/dist/es5/functions/is-ctor-function.js +4 -4
  155. package/dist/es5/functions/is-ctor-function.js.map +1 -1
  156. package/dist/es5/functions/is-data-view.js +3 -3
  157. package/dist/es5/functions/is-float-32-array.js +3 -3
  158. package/dist/es5/functions/is-float-64-array.js +3 -3
  159. package/dist/es5/functions/is-int-16-array.js +3 -3
  160. package/dist/es5/functions/is-int-32-array.js +3 -3
  161. package/dist/es5/functions/is-int-8-array.js +3 -3
  162. package/dist/es5/functions/is-uint-16-array.js +3 -3
  163. package/dist/es5/functions/is-uint-32-array.js +3 -3
  164. package/dist/es5/functions/is-uint-8-array.js +3 -3
  165. package/dist/es5/functions/is-uint-8-clamped-array.js +3 -3
  166. package/dist/es5/functions/json-parse.js +3 -3
  167. package/dist/es5/functions/json-stringify.js +66 -66
  168. package/dist/es5/functions/name-of.js +7 -7
  169. package/dist/es5/generic-argument.js +1 -1
  170. package/dist/es5/generic-metadata-resolver.js +1 -1
  171. package/dist/es5/generic-metadata.js +1 -1
  172. package/dist/es5/generic-structure.js +1 -1
  173. package/dist/es5/index.js +70 -70
  174. package/dist/es5/inject-index.js +1 -1
  175. package/dist/es5/inject-internals.js +1 -1
  176. package/dist/es5/inject-metadata.js +83 -83
  177. package/dist/es5/inject-options.js +1 -1
  178. package/dist/es5/inject-sorter.js +1 -1
  179. package/dist/es5/inject-sorters/asc-inject-sorter.js +17 -17
  180. package/dist/es5/inject-sorters/desc-inject-sorter.js +17 -17
  181. package/dist/es5/inject-sorters/index.js +2 -2
  182. package/dist/es5/inject.js +23 -23
  183. package/dist/es5/injector.js +1 -1
  184. package/dist/es5/injectors/index.js +1 -1
  185. package/dist/es5/injectors/singleton-injector.js +44 -44
  186. package/dist/es5/log-level.js +7 -7
  187. package/dist/es5/log.js +64 -64
  188. package/dist/es5/metadata.js +105 -105
  189. package/dist/es5/naming-convention.js +1 -1
  190. package/dist/es5/naming-conventions/camel-case-naming-convention.js +20 -20
  191. package/dist/es5/naming-conventions/flat-case-naming-convention.js +16 -16
  192. package/dist/es5/naming-conventions/flat-upper-case-naming-convention.js +16 -16
  193. package/dist/es5/naming-conventions/index.js +8 -8
  194. package/dist/es5/naming-conventions/kebab-case-naming-convention.js +20 -20
  195. package/dist/es5/naming-conventions/kebab-upper-case-naming-convention.js +20 -20
  196. package/dist/es5/naming-conventions/pascal-case-naming-convention.js +21 -21
  197. package/dist/es5/naming-conventions/snake-case-naming-convention.js +20 -20
  198. package/dist/es5/naming-conventions/snake-upper-case-naming-convention.js +20 -20
  199. package/dist/es5/property-internals.js +1 -1
  200. package/dist/es5/property-metadata.js +377 -377
  201. package/dist/es5/property-name.js +1 -1
  202. package/dist/es5/property-options.js +1 -1
  203. package/dist/es5/property-sorter.js +1 -1
  204. package/dist/es5/property-sorters/asc-property-sorter.js +17 -17
  205. package/dist/es5/property-sorters/desc-property-sorter.js +17 -17
  206. package/dist/es5/property-sorters/index.js +2 -2
  207. package/dist/es5/property.js +38 -38
  208. package/dist/es5/reference-callback.js +1 -1
  209. package/dist/es5/reference-handler.js +1 -1
  210. package/dist/es5/reference-handlers/circular-reference-handler.js +39 -39
  211. package/dist/es5/reference-handlers/index.js +3 -3
  212. package/dist/es5/reference-handlers/json-path-reference-handler.js +92 -92
  213. package/dist/es5/reference-handlers/plain-reference-handler.js +35 -35
  214. package/dist/es5/reference-key.js +1 -1
  215. package/dist/es5/reference-value-getter.js +1 -1
  216. package/dist/es5/reference-value-setter.js +1 -1
  217. package/dist/es5/reference-value.js +1 -1
  218. package/dist/es5/serializer-context-options.js +1 -1
  219. package/dist/es5/serializer-context.js +416 -416
  220. package/dist/es5/serializer.js +1 -1
  221. package/dist/es5/serializers/any-serializer.js +25 -25
  222. package/dist/es5/serializers/array-buffer-serializer.js +44 -44
  223. package/dist/es5/serializers/array-serializer.js +69 -69
  224. package/dist/es5/serializers/boolean-serializer.js +58 -58
  225. package/dist/es5/serializers/data-view-serializer.js +45 -45
  226. package/dist/es5/serializers/date-serializer.js +37 -37
  227. package/dist/es5/serializers/float-32-array-serializer.js +38 -38
  228. package/dist/es5/serializers/float-64-array-serializer.js +38 -38
  229. package/dist/es5/serializers/index.js +21 -21
  230. package/dist/es5/serializers/int-16-array-serializer.js +38 -38
  231. package/dist/es5/serializers/int-32-array-serializer.js +38 -38
  232. package/dist/es5/serializers/int-8-array-serializer.js +38 -38
  233. package/dist/es5/serializers/map-serializer.js +114 -114
  234. package/dist/es5/serializers/number-serializer.js +52 -52
  235. package/dist/es5/serializers/set-serializer.js +77 -77
  236. package/dist/es5/serializers/string-serializer.js +58 -58
  237. package/dist/es5/serializers/type-serializer.js +153 -153
  238. package/dist/es5/serializers/uint-16-array-serializer.js +38 -38
  239. package/dist/es5/serializers/uint-32-array-serializer.js +38 -38
  240. package/dist/es5/serializers/uint-8-array-serializer.js +38 -38
  241. package/dist/es5/serializers/uint-8-clamped-array-serializer.js +38 -38
  242. package/dist/es5/serializers/unknown-serializer.js +25 -25
  243. package/dist/es5/type-abstraction.js +1 -1
  244. package/dist/es5/type-argument.js +1 -1
  245. package/dist/es5/type-configuration.js +1 -1
  246. package/dist/es5/type-context-entry.js +10 -10
  247. package/dist/es5/type-context.js +32 -32
  248. package/dist/es5/type-ctor.js +1 -1
  249. package/dist/es5/type-fn.js +1 -1
  250. package/dist/es5/type-internals.js +1 -1
  251. package/dist/es5/type-like.js +1 -1
  252. package/dist/es5/type-manager-options.js +1 -1
  253. package/dist/es5/type-manager.js +412 -412
  254. package/dist/es5/type-metadata-resolver.js +1 -1
  255. package/dist/es5/type-metadata-symbol.js +1 -1
  256. package/dist/es5/type-metadata.js +563 -563
  257. package/dist/es5/type-name.js +1 -1
  258. package/dist/es5/type-options-base.js +1 -1
  259. package/dist/es5/type-options.js +1 -1
  260. package/dist/es5/type-resolver.js +1 -1
  261. package/dist/es5/type.js +7 -7
  262. package/dist/es5/unknown.js +6 -6
  263. package/dist/types/alias.d.ts +6 -6
  264. package/dist/types/any.d.ts +9 -9
  265. package/dist/types/custom-context.d.ts +88 -88
  266. package/dist/types/custom-key.d.ts +28 -28
  267. package/dist/types/custom-option.d.ts +10 -10
  268. package/dist/types/custom-value-resolver.d.ts +6 -6
  269. package/dist/types/custom-value.d.ts +6 -6
  270. package/dist/types/default-value-resolver.d.ts +7 -7
  271. package/dist/types/default-value.d.ts +7 -7
  272. package/dist/types/discriminant.d.ts +8 -8
  273. package/dist/types/discriminator.d.ts +6 -6
  274. package/dist/types/factories/index.d.ts +1 -1
  275. package/dist/types/factories/type-factory.d.ts +19 -19
  276. package/dist/types/factory.d.ts +18 -18
  277. package/dist/types/functions/get-own-reflect-metadata.d.ts +9 -9
  278. package/dist/types/functions/get-reflect-metadata.d.ts +10 -10
  279. package/dist/types/functions/get-words.d.ts +8 -8
  280. package/dist/types/functions/index.d.ts +18 -18
  281. package/dist/types/functions/is-arrow-function.d.ts +8 -8
  282. package/dist/types/functions/is-ctor-function.d.ts +8 -8
  283. package/dist/types/functions/is-data-view.d.ts +8 -8
  284. package/dist/types/functions/is-float-32-array.d.ts +8 -8
  285. package/dist/types/functions/is-float-64-array.d.ts +8 -8
  286. package/dist/types/functions/is-int-16-array.d.ts +8 -8
  287. package/dist/types/functions/is-int-32-array.d.ts +8 -8
  288. package/dist/types/functions/is-int-8-array.d.ts +8 -8
  289. package/dist/types/functions/is-uint-16-array.d.ts +8 -8
  290. package/dist/types/functions/is-uint-32-array.d.ts +8 -8
  291. package/dist/types/functions/is-uint-8-array.d.ts +8 -8
  292. package/dist/types/functions/is-uint-8-clamped-array.d.ts +8 -8
  293. package/dist/types/functions/json-parse.d.ts +9 -9
  294. package/dist/types/functions/json-stringify.d.ts +10 -10
  295. package/dist/types/functions/name-of.d.ts +8 -8
  296. package/dist/types/generic-argument.d.ts +7 -7
  297. package/dist/types/generic-metadata-resolver.d.ts +7 -7
  298. package/dist/types/generic-metadata.d.ts +7 -7
  299. package/dist/types/generic-structure.d.ts +7 -7
  300. package/dist/types/index.d.ts +70 -70
  301. package/dist/types/inject-index.d.ts +6 -6
  302. package/dist/types/inject-internals.d.ts +14 -14
  303. package/dist/types/inject-metadata.d.ts +117 -117
  304. package/dist/types/inject-options.d.ts +22 -22
  305. package/dist/types/inject-sorter.d.ts +19 -19
  306. package/dist/types/inject-sorters/asc-inject-sorter.d.ts +20 -20
  307. package/dist/types/inject-sorters/desc-inject-sorter.d.ts +20 -20
  308. package/dist/types/inject-sorters/index.d.ts +2 -2
  309. package/dist/types/inject.d.ts +10 -10
  310. package/dist/types/injector.d.ts +16 -16
  311. package/dist/types/injectors/index.d.ts +1 -1
  312. package/dist/types/injectors/singleton-injector.d.ts +31 -31
  313. package/dist/types/log-level.d.ts +11 -11
  314. package/dist/types/log.d.ts +95 -95
  315. package/dist/types/metadata.d.ts +99 -99
  316. package/dist/types/naming-convention.d.ts +15 -15
  317. package/dist/types/naming-conventions/camel-case-naming-convention.d.ts +26 -26
  318. package/dist/types/naming-conventions/flat-case-naming-convention.d.ts +25 -25
  319. package/dist/types/naming-conventions/flat-upper-case-naming-convention.d.ts +25 -25
  320. package/dist/types/naming-conventions/index.d.ts +8 -8
  321. package/dist/types/naming-conventions/kebab-case-naming-convention.d.ts +26 -26
  322. package/dist/types/naming-conventions/kebab-upper-case-naming-convention.d.ts +26 -26
  323. package/dist/types/naming-conventions/pascal-case-naming-convention.d.ts +26 -26
  324. package/dist/types/naming-conventions/snake-case-naming-convention.d.ts +26 -26
  325. package/dist/types/naming-conventions/snake-upper-case-naming-convention.d.ts +26 -26
  326. package/dist/types/property-internals.d.ts +35 -35
  327. package/dist/types/property-metadata.d.ts +359 -359
  328. package/dist/types/property-name.d.ts +6 -6
  329. package/dist/types/property-options.d.ts +116 -116
  330. package/dist/types/property-sorter.d.ts +19 -19
  331. package/dist/types/property-sorters/asc-property-sorter.d.ts +20 -20
  332. package/dist/types/property-sorters/desc-property-sorter.d.ts +20 -20
  333. package/dist/types/property-sorters/index.d.ts +2 -2
  334. package/dist/types/property.d.ts +13 -13
  335. package/dist/types/reference-callback.d.ts +7 -7
  336. package/dist/types/reference-handler.d.ts +31 -31
  337. package/dist/types/reference-handlers/circular-reference-handler.d.ts +32 -32
  338. package/dist/types/reference-handlers/index.d.ts +3 -3
  339. package/dist/types/reference-handlers/json-path-reference-handler.d.ts +55 -55
  340. package/dist/types/reference-handlers/plain-reference-handler.d.ts +33 -33
  341. package/dist/types/reference-key.d.ts +6 -6
  342. package/dist/types/reference-value-getter.d.ts +7 -7
  343. package/dist/types/reference-value-setter.d.ts +7 -7
  344. package/dist/types/reference-value.d.ts +6 -6
  345. package/dist/types/serializer-context-options.d.ts +50 -50
  346. package/dist/types/serializer-context.d.ts +418 -418
  347. package/dist/types/serializer.d.ts +27 -27
  348. package/dist/types/serializers/any-serializer.d.ts +28 -28
  349. package/dist/types/serializers/array-buffer-serializer.d.ts +28 -28
  350. package/dist/types/serializers/array-serializer.d.ts +28 -28
  351. package/dist/types/serializers/boolean-serializer.d.ts +37 -37
  352. package/dist/types/serializers/data-view-serializer.d.ts +28 -28
  353. package/dist/types/serializers/date-serializer.d.ts +28 -28
  354. package/dist/types/serializers/float-32-array-serializer.d.ts +28 -28
  355. package/dist/types/serializers/float-64-array-serializer.d.ts +28 -28
  356. package/dist/types/serializers/index.d.ts +21 -21
  357. package/dist/types/serializers/int-16-array-serializer.d.ts +28 -28
  358. package/dist/types/serializers/int-32-array-serializer.d.ts +28 -28
  359. package/dist/types/serializers/int-8-array-serializer.d.ts +28 -28
  360. package/dist/types/serializers/map-serializer.d.ts +28 -28
  361. package/dist/types/serializers/number-serializer.d.ts +37 -37
  362. package/dist/types/serializers/set-serializer.d.ts +28 -28
  363. package/dist/types/serializers/string-serializer.d.ts +37 -37
  364. package/dist/types/serializers/type-serializer.d.ts +28 -28
  365. package/dist/types/serializers/uint-16-array-serializer.d.ts +28 -28
  366. package/dist/types/serializers/uint-32-array-serializer.d.ts +28 -28
  367. package/dist/types/serializers/uint-8-array-serializer.d.ts +28 -28
  368. package/dist/types/serializers/uint-8-clamped-array-serializer.d.ts +28 -28
  369. package/dist/types/serializers/unknown-serializer.d.ts +28 -28
  370. package/dist/types/type-abstraction.d.ts +6 -6
  371. package/dist/types/type-argument.d.ts +9 -9
  372. package/dist/types/type-configuration.d.ts +16 -16
  373. package/dist/types/type-context-entry.d.ts +36 -36
  374. package/dist/types/type-context.d.ts +70 -70
  375. package/dist/types/type-ctor.d.ts +6 -6
  376. package/dist/types/type-fn.d.ts +8 -8
  377. package/dist/types/type-internals.d.ts +14 -14
  378. package/dist/types/type-like.d.ts +7 -7
  379. package/dist/types/type-manager-options.d.ts +33 -33
  380. package/dist/types/type-manager.d.ts +413 -413
  381. package/dist/types/type-metadata-resolver.d.ts +8 -8
  382. package/dist/types/type-metadata-symbol.d.ts +6 -6
  383. package/dist/types/type-metadata.d.ts +513 -513
  384. package/dist/types/type-name.d.ts +6 -6
  385. package/dist/types/type-options-base.d.ts +106 -106
  386. package/dist/types/type-options.d.ts +72 -72
  387. package/dist/types/type-resolver.d.ts +7 -7
  388. package/dist/types/type.d.ts +9 -9
  389. package/dist/types/unknown.d.ts +9 -9
  390. package/dist/umd/index.js +1 -1
  391. package/dist/umd/index.js.map +1 -1
  392. package/package.json +63 -63
@@ -1,39 +1,39 @@
1
- import { isArray, isNull, isUndefined } from 'lodash';
2
- import { isFloat64Array } from '../functions/is-float-64-array';
3
- var Float64ArraySerializer = (function () {
4
- function Float64ArraySerializer() {
5
- }
6
- Float64ArraySerializer.prototype.serialize = function (x, serializerContext) {
7
- if (isUndefined(x)) {
8
- return serializerContext.serializedDefaultValue;
9
- }
10
- if (isNull(x)) {
11
- return serializerContext.serializedNullValue;
12
- }
13
- if (isFloat64Array(x)) {
14
- return Array.from(x);
15
- }
16
- if (serializerContext.log.errorEnabled) {
17
- serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot serialize value as float 64 array."), x);
18
- }
19
- return undefined;
20
- };
21
- Float64ArraySerializer.prototype.deserialize = function (x, serializerContext) {
22
- if (isUndefined(x)) {
23
- return serializerContext.deserializedDefaultValue;
24
- }
25
- if (isNull(x)) {
26
- return serializerContext.deserializedNullValue;
27
- }
28
- if (isArray(x)) {
29
- return Float64Array.from(x);
30
- }
31
- if (serializerContext.log.errorEnabled) {
32
- serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot deserialize value to a float 64 array."), x);
33
- }
34
- return undefined;
35
- };
36
- return Float64ArraySerializer;
37
- }());
38
- export { Float64ArraySerializer };
1
+ import { isArray, isNull, isUndefined } from 'lodash';
2
+ import { isFloat64Array } from '../functions/is-float-64-array';
3
+ var Float64ArraySerializer = (function () {
4
+ function Float64ArraySerializer() {
5
+ }
6
+ Float64ArraySerializer.prototype.serialize = function (x, serializerContext) {
7
+ if (isUndefined(x)) {
8
+ return serializerContext.serializedDefaultValue;
9
+ }
10
+ if (isNull(x)) {
11
+ return serializerContext.serializedNullValue;
12
+ }
13
+ if (isFloat64Array(x)) {
14
+ return Array.from(x);
15
+ }
16
+ if (serializerContext.log.errorEnabled) {
17
+ serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot serialize value as float 64 array."), x);
18
+ }
19
+ return undefined;
20
+ };
21
+ Float64ArraySerializer.prototype.deserialize = function (x, serializerContext) {
22
+ if (isUndefined(x)) {
23
+ return serializerContext.deserializedDefaultValue;
24
+ }
25
+ if (isNull(x)) {
26
+ return serializerContext.deserializedNullValue;
27
+ }
28
+ if (isArray(x)) {
29
+ return Float64Array.from(x);
30
+ }
31
+ if (serializerContext.log.errorEnabled) {
32
+ serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot deserialize value to a float 64 array."), x);
33
+ }
34
+ return undefined;
35
+ };
36
+ return Float64ArraySerializer;
37
+ }());
38
+ export { Float64ArraySerializer };
39
39
  //# sourceMappingURL=float-64-array-serializer.js.map
@@ -1,22 +1,22 @@
1
- export * from './any-serializer';
2
- export * from './array-buffer-serializer';
3
- export * from './array-serializer';
4
- export * from './boolean-serializer';
5
- export * from './data-view-serializer';
6
- export * from './date-serializer';
7
- export * from './float-32-array-serializer';
8
- export * from './float-64-array-serializer';
9
- export * from './int-8-array-serializer';
10
- export * from './int-16-array-serializer';
11
- export * from './int-32-array-serializer';
12
- export * from './map-serializer';
13
- export * from './number-serializer';
14
- export * from './set-serializer';
15
- export * from './string-serializer';
16
- export * from './type-serializer';
17
- export * from './uint-8-array-serializer';
18
- export * from './uint-8-clamped-array-serializer';
19
- export * from './uint-16-array-serializer';
20
- export * from './uint-32-array-serializer';
21
- export * from './unknown-serializer';
1
+ export * from './any-serializer';
2
+ export * from './array-buffer-serializer';
3
+ export * from './array-serializer';
4
+ export * from './boolean-serializer';
5
+ export * from './data-view-serializer';
6
+ export * from './date-serializer';
7
+ export * from './float-32-array-serializer';
8
+ export * from './float-64-array-serializer';
9
+ export * from './int-8-array-serializer';
10
+ export * from './int-16-array-serializer';
11
+ export * from './int-32-array-serializer';
12
+ export * from './map-serializer';
13
+ export * from './number-serializer';
14
+ export * from './set-serializer';
15
+ export * from './string-serializer';
16
+ export * from './type-serializer';
17
+ export * from './uint-8-array-serializer';
18
+ export * from './uint-8-clamped-array-serializer';
19
+ export * from './uint-16-array-serializer';
20
+ export * from './uint-32-array-serializer';
21
+ export * from './unknown-serializer';
22
22
  //# sourceMappingURL=index.js.map
@@ -1,39 +1,39 @@
1
- import { isArray, isNull, isUndefined } from 'lodash';
2
- import { isInt16Array } from '../functions/is-int-16-array';
3
- var Int16ArraySerializer = (function () {
4
- function Int16ArraySerializer() {
5
- }
6
- Int16ArraySerializer.prototype.serialize = function (x, serializerContext) {
7
- if (isUndefined(x)) {
8
- return serializerContext.serializedDefaultValue;
9
- }
10
- if (isNull(x)) {
11
- return serializerContext.serializedNullValue;
12
- }
13
- if (isInt16Array(x)) {
14
- return Array.from(x);
15
- }
16
- if (serializerContext.log.errorEnabled) {
17
- serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot serialize value as int 16 array."), x);
18
- }
19
- return undefined;
20
- };
21
- Int16ArraySerializer.prototype.deserialize = function (x, serializerContext) {
22
- if (isUndefined(x)) {
23
- return serializerContext.deserializedDefaultValue;
24
- }
25
- if (isNull(x)) {
26
- return serializerContext.deserializedNullValue;
27
- }
28
- if (isArray(x)) {
29
- return Int16Array.from(x);
30
- }
31
- if (serializerContext.log.errorEnabled) {
32
- serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot deserialize value as int 16 array."), x);
33
- }
34
- return undefined;
35
- };
36
- return Int16ArraySerializer;
37
- }());
38
- export { Int16ArraySerializer };
1
+ import { isArray, isNull, isUndefined } from 'lodash';
2
+ import { isInt16Array } from '../functions/is-int-16-array';
3
+ var Int16ArraySerializer = (function () {
4
+ function Int16ArraySerializer() {
5
+ }
6
+ Int16ArraySerializer.prototype.serialize = function (x, serializerContext) {
7
+ if (isUndefined(x)) {
8
+ return serializerContext.serializedDefaultValue;
9
+ }
10
+ if (isNull(x)) {
11
+ return serializerContext.serializedNullValue;
12
+ }
13
+ if (isInt16Array(x)) {
14
+ return Array.from(x);
15
+ }
16
+ if (serializerContext.log.errorEnabled) {
17
+ serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot serialize value as int 16 array."), x);
18
+ }
19
+ return undefined;
20
+ };
21
+ Int16ArraySerializer.prototype.deserialize = function (x, serializerContext) {
22
+ if (isUndefined(x)) {
23
+ return serializerContext.deserializedDefaultValue;
24
+ }
25
+ if (isNull(x)) {
26
+ return serializerContext.deserializedNullValue;
27
+ }
28
+ if (isArray(x)) {
29
+ return Int16Array.from(x);
30
+ }
31
+ if (serializerContext.log.errorEnabled) {
32
+ serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot deserialize value as int 16 array."), x);
33
+ }
34
+ return undefined;
35
+ };
36
+ return Int16ArraySerializer;
37
+ }());
38
+ export { Int16ArraySerializer };
39
39
  //# sourceMappingURL=int-16-array-serializer.js.map
@@ -1,39 +1,39 @@
1
- import { isArray, isNull, isUndefined } from 'lodash';
2
- import { isInt32Array } from '../functions/is-int-32-array';
3
- var Int32ArraySerializer = (function () {
4
- function Int32ArraySerializer() {
5
- }
6
- Int32ArraySerializer.prototype.serialize = function (x, serializerContext) {
7
- if (isUndefined(x)) {
8
- return serializerContext.serializedDefaultValue;
9
- }
10
- if (isNull(x)) {
11
- return serializerContext.serializedNullValue;
12
- }
13
- if (isInt32Array(x)) {
14
- return Array.from(x);
15
- }
16
- if (serializerContext.log.errorEnabled) {
17
- serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot serialize value as int 32 array."), x);
18
- }
19
- return undefined;
20
- };
21
- Int32ArraySerializer.prototype.deserialize = function (x, serializerContext) {
22
- if (isUndefined(x)) {
23
- return serializerContext.deserializedDefaultValue;
24
- }
25
- if (isNull(x)) {
26
- return serializerContext.deserializedNullValue;
27
- }
28
- if (isArray(x)) {
29
- return Int32Array.from(x);
30
- }
31
- if (serializerContext.log.errorEnabled) {
32
- serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot deserialize value as int 32 array."), x);
33
- }
34
- return undefined;
35
- };
36
- return Int32ArraySerializer;
37
- }());
38
- export { Int32ArraySerializer };
1
+ import { isArray, isNull, isUndefined } from 'lodash';
2
+ import { isInt32Array } from '../functions/is-int-32-array';
3
+ var Int32ArraySerializer = (function () {
4
+ function Int32ArraySerializer() {
5
+ }
6
+ Int32ArraySerializer.prototype.serialize = function (x, serializerContext) {
7
+ if (isUndefined(x)) {
8
+ return serializerContext.serializedDefaultValue;
9
+ }
10
+ if (isNull(x)) {
11
+ return serializerContext.serializedNullValue;
12
+ }
13
+ if (isInt32Array(x)) {
14
+ return Array.from(x);
15
+ }
16
+ if (serializerContext.log.errorEnabled) {
17
+ serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot serialize value as int 32 array."), x);
18
+ }
19
+ return undefined;
20
+ };
21
+ Int32ArraySerializer.prototype.deserialize = function (x, serializerContext) {
22
+ if (isUndefined(x)) {
23
+ return serializerContext.deserializedDefaultValue;
24
+ }
25
+ if (isNull(x)) {
26
+ return serializerContext.deserializedNullValue;
27
+ }
28
+ if (isArray(x)) {
29
+ return Int32Array.from(x);
30
+ }
31
+ if (serializerContext.log.errorEnabled) {
32
+ serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot deserialize value as int 32 array."), x);
33
+ }
34
+ return undefined;
35
+ };
36
+ return Int32ArraySerializer;
37
+ }());
38
+ export { Int32ArraySerializer };
39
39
  //# sourceMappingURL=int-32-array-serializer.js.map
@@ -1,39 +1,39 @@
1
- import { isArray, isNull, isUndefined } from 'lodash';
2
- import { isInt8Array } from '../functions/is-int-8-array';
3
- var Int8ArraySerializer = (function () {
4
- function Int8ArraySerializer() {
5
- }
6
- Int8ArraySerializer.prototype.serialize = function (x, serializerContext) {
7
- if (isUndefined(x)) {
8
- return serializerContext.serializedDefaultValue;
9
- }
10
- if (isNull(x)) {
11
- return serializerContext.serializedNullValue;
12
- }
13
- if (isInt8Array(x)) {
14
- return Array.from(x);
15
- }
16
- if (serializerContext.log.errorEnabled) {
17
- serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot serialize value as int 8 array."), x);
18
- }
19
- return undefined;
20
- };
21
- Int8ArraySerializer.prototype.deserialize = function (x, serializerContext) {
22
- if (isUndefined(x)) {
23
- return serializerContext.deserializedDefaultValue;
24
- }
25
- if (isNull(x)) {
26
- return serializerContext.deserializedNullValue;
27
- }
28
- if (isArray(x)) {
29
- return Int8Array.from(x);
30
- }
31
- if (serializerContext.log.errorEnabled) {
32
- serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot deserialize value as int 8 array."), x);
33
- }
34
- return undefined;
35
- };
36
- return Int8ArraySerializer;
37
- }());
38
- export { Int8ArraySerializer };
1
+ import { isArray, isNull, isUndefined } from 'lodash';
2
+ import { isInt8Array } from '../functions/is-int-8-array';
3
+ var Int8ArraySerializer = (function () {
4
+ function Int8ArraySerializer() {
5
+ }
6
+ Int8ArraySerializer.prototype.serialize = function (x, serializerContext) {
7
+ if (isUndefined(x)) {
8
+ return serializerContext.serializedDefaultValue;
9
+ }
10
+ if (isNull(x)) {
11
+ return serializerContext.serializedNullValue;
12
+ }
13
+ if (isInt8Array(x)) {
14
+ return Array.from(x);
15
+ }
16
+ if (serializerContext.log.errorEnabled) {
17
+ serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot serialize value as int 8 array."), x);
18
+ }
19
+ return undefined;
20
+ };
21
+ Int8ArraySerializer.prototype.deserialize = function (x, serializerContext) {
22
+ if (isUndefined(x)) {
23
+ return serializerContext.deserializedDefaultValue;
24
+ }
25
+ if (isNull(x)) {
26
+ return serializerContext.deserializedNullValue;
27
+ }
28
+ if (isArray(x)) {
29
+ return Int8Array.from(x);
30
+ }
31
+ if (serializerContext.log.errorEnabled) {
32
+ serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot deserialize value as int 8 array."), x);
33
+ }
34
+ return undefined;
35
+ };
36
+ return Int8ArraySerializer;
37
+ }());
38
+ export { Int8ArraySerializer };
39
39
  //# sourceMappingURL=int-8-array-serializer.js.map
@@ -1,115 +1,115 @@
1
- import { __read, __values } from "tslib";
2
- import { isArray, isMap, isNull, isUndefined } from 'lodash';
3
- var MapSerializer = (function () {
4
- function MapSerializer() {
5
- }
6
- MapSerializer.prototype.serialize = function (x, serializerContext) {
7
- if (isUndefined(x)) {
8
- return serializerContext.serializedDefaultValue;
9
- }
10
- if (isNull(x)) {
11
- return serializerContext.serializedNullValue;
12
- }
13
- if (isMap(x)) {
14
- return serializerContext.defineReference(x, function () {
15
- var e_1, _a;
16
- var map = x;
17
- var array = new Array(x.keys.length);
18
- var genericKeySerializerContext = serializerContext.defineGenericSerializerContext(0);
19
- var genericValueSerializerContext = serializerContext.defineGenericSerializerContext(1);
20
- var keyArraySerializerContext = genericKeySerializerContext.defineChildSerializerContext({
21
- jsonPathKey: genericKeySerializerContext.jsonPathKey
22
- });
23
- var valueArraySerializerContext = genericValueSerializerContext.defineChildSerializerContext({
24
- jsonPathKey: genericValueSerializerContext.jsonPathKey
25
- });
26
- var keySerializerContext = keyArraySerializerContext.defineChildSerializerContext({
27
- jsonPathKey: 'key',
28
- typeMetadata: genericKeySerializerContext.typeMetadata
29
- });
30
- var valueSerializerContext = valueArraySerializerContext.defineChildSerializerContext({
31
- jsonPathKey: 'value',
32
- typeMetadata: genericValueSerializerContext.typeMetadata
33
- });
34
- var i = -1;
35
- try {
36
- for (var _b = __values(map.entries()), _c = _b.next(); !_c.done; _c = _b.next()) {
37
- var _d = __read(_c.value, 2), mk = _d[0], mv = _d[1];
38
- i++;
39
- keyArraySerializerContext.hasJsonPathKey(i);
40
- valueArraySerializerContext.hasJsonPathKey(i);
41
- keySerializerContext.hasReferenceValueSetter(function (v) { return array[i][keySerializerContext.jsonPathKey] = v; });
42
- valueSerializerContext.hasReferenceValueSetter(function (v) { return array[i][valueSerializerContext.jsonPathKey] = v; });
43
- array[i] = {};
44
- array[i][keySerializerContext.jsonPathKey] = keySerializerContext.serialize(mk);
45
- array[i][valueSerializerContext.jsonPathKey] = valueSerializerContext.serialize(mv);
46
- }
47
- }
48
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
49
- finally {
50
- try {
51
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
52
- }
53
- finally { if (e_1) throw e_1.error; }
54
- }
55
- return array;
56
- });
57
- }
58
- if (serializerContext.log.errorEnabled) {
59
- serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot serialize value as map."), x);
60
- }
61
- return undefined;
62
- };
63
- MapSerializer.prototype.deserialize = function (x, serializerContext) {
64
- if (isUndefined(x)) {
65
- return serializerContext.deserializedDefaultValue;
66
- }
67
- if (isNull(x)) {
68
- return serializerContext.deserializedNullValue;
69
- }
70
- if (isArray(x)) {
71
- return serializerContext.restoreReference(x, function () {
72
- var array = x;
73
- var map = new Map();
74
- var genericKeySerializerContext = serializerContext.defineGenericSerializerContext(0);
75
- var genericValueSerializerContext = serializerContext.defineGenericSerializerContext(1);
76
- var keyArraySerializerContext = genericKeySerializerContext.defineChildSerializerContext({
77
- jsonPathKey: genericKeySerializerContext.jsonPathKey
78
- });
79
- var valueArraySerializerContext = genericValueSerializerContext.defineChildSerializerContext({
80
- jsonPathKey: genericValueSerializerContext.jsonPathKey
81
- });
82
- var keySerializerContext = keyArraySerializerContext.defineChildSerializerContext({
83
- jsonPathKey: 'key',
84
- typeMetadata: genericKeySerializerContext.typeMetadata
85
- });
86
- var valueSerializerContext = valueArraySerializerContext.defineChildSerializerContext({
87
- jsonPathKey: 'value',
88
- typeMetadata: genericValueSerializerContext.typeMetadata
89
- });
90
- var _loop_1 = function (i) {
91
- var mk = array[i][keySerializerContext.jsonPathKey];
92
- var mv = array[i][valueSerializerContext.jsonPathKey];
93
- keyArraySerializerContext.hasJsonPathKey(i);
94
- valueArraySerializerContext.hasJsonPathKey(i);
95
- keySerializerContext.hasReferenceValueSetter(function (v) { return map.set(v, undefined); });
96
- var key = keySerializerContext.deserialize(mk);
97
- valueSerializerContext.hasReferenceValueSetter(function (v) { return map.set(key, v); });
98
- var value = valueSerializerContext.deserialize(mv);
99
- map.set(key, value);
100
- };
101
- for (var i = 0; i < array.length; i++) {
102
- _loop_1(i);
103
- }
104
- return map;
105
- });
106
- }
107
- if (serializerContext.log.errorEnabled) {
108
- serializerContext.log.error("".concat(serializerContext.jsonPath, ": Cannot deserialize value as map!"), x);
109
- }
110
- return undefined;
111
- };
112
- return MapSerializer;
113
- }());
114
- export { MapSerializer };
1
+ import { __read, __values } from "tslib";
2
+ import { isArray, isMap, isNull, isUndefined } from 'lodash';
3
+ var MapSerializer = (function () {
4
+ function MapSerializer() {
5
+ }
6
+ MapSerializer.prototype.serialize = function (x, serializerContext) {
7
+ if (isUndefined(x)) {
8
+ return serializerContext.serializedDefaultValue;
9
+ }
10
+ if (isNull(x)) {
11
+ return serializerContext.serializedNullValue;
12
+ }
13
+ if (isMap(x)) {
14
+ return serializerContext.defineReference(x, function () {
15
+ var e_1, _a;
16
+ var map = x;
17
+ var array = new Array(x.keys.length);
18
+ var genericKeySerializerContext = serializerContext.defineGenericSerializerContext(0);
19
+ var genericValueSerializerContext = serializerContext.defineGenericSerializerContext(1);
20
+ var keyArraySerializerContext = genericKeySerializerContext.defineChildSerializerContext({
21
+ jsonPathKey: genericKeySerializerContext.jsonPathKey
22
+ });
23
+ var valueArraySerializerContext = genericValueSerializerContext.defineChildSerializerContext({
24
+ jsonPathKey: genericValueSerializerContext.jsonPathKey
25
+ });
26
+ var keySerializerContext = keyArraySerializerContext.defineChildSerializerContext({
27
+ jsonPathKey: 'key',
28
+ typeMetadata: genericKeySerializerContext.typeMetadata
29
+ });
30
+ var valueSerializerContext = valueArraySerializerContext.defineChildSerializerContext({
31
+ jsonPathKey: 'value',
32
+ typeMetadata: genericValueSerializerContext.typeMetadata
33
+ });
34
+ var i = -1;
35
+ try {
36
+ for (var _b = __values(map.entries()), _c = _b.next(); !_c.done; _c = _b.next()) {
37
+ var _d = __read(_c.value, 2), mk = _d[0], mv = _d[1];
38
+ i++;
39
+ keyArraySerializerContext.hasJsonPathKey(i);
40
+ valueArraySerializerContext.hasJsonPathKey(i);
41
+ keySerializerContext.hasReferenceValueSetter(function (v) { return array[i][keySerializerContext.jsonPathKey] = v; });
42
+ valueSerializerContext.hasReferenceValueSetter(function (v) { return array[i][valueSerializerContext.jsonPathKey] = v; });
43
+ array[i] = {};
44
+ array[i][keySerializerContext.jsonPathKey] = keySerializerContext.serialize(mk);
45
+ array[i][valueSerializerContext.jsonPathKey] = valueSerializerContext.serialize(mv);
46
+ }
47
+ }
48
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
49
+ finally {
50
+ try {
51
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
52
+ }
53
+ finally { if (e_1) throw e_1.error; }
54
+ }
55
+ return array;
56
+ });
57
+ }
58
+ if (serializerContext.log.errorEnabled) {
59
+ serializerContext.log.error("".concat(serializerContext.jsonPath, ": cannot serialize value as map."), x);
60
+ }
61
+ return undefined;
62
+ };
63
+ MapSerializer.prototype.deserialize = function (x, serializerContext) {
64
+ if (isUndefined(x)) {
65
+ return serializerContext.deserializedDefaultValue;
66
+ }
67
+ if (isNull(x)) {
68
+ return serializerContext.deserializedNullValue;
69
+ }
70
+ if (isArray(x)) {
71
+ return serializerContext.restoreReference(x, function () {
72
+ var array = x;
73
+ var map = new Map();
74
+ var genericKeySerializerContext = serializerContext.defineGenericSerializerContext(0);
75
+ var genericValueSerializerContext = serializerContext.defineGenericSerializerContext(1);
76
+ var keyArraySerializerContext = genericKeySerializerContext.defineChildSerializerContext({
77
+ jsonPathKey: genericKeySerializerContext.jsonPathKey
78
+ });
79
+ var valueArraySerializerContext = genericValueSerializerContext.defineChildSerializerContext({
80
+ jsonPathKey: genericValueSerializerContext.jsonPathKey
81
+ });
82
+ var keySerializerContext = keyArraySerializerContext.defineChildSerializerContext({
83
+ jsonPathKey: 'key',
84
+ typeMetadata: genericKeySerializerContext.typeMetadata
85
+ });
86
+ var valueSerializerContext = valueArraySerializerContext.defineChildSerializerContext({
87
+ jsonPathKey: 'value',
88
+ typeMetadata: genericValueSerializerContext.typeMetadata
89
+ });
90
+ var _loop_1 = function (i) {
91
+ var mk = array[i][keySerializerContext.jsonPathKey];
92
+ var mv = array[i][valueSerializerContext.jsonPathKey];
93
+ keyArraySerializerContext.hasJsonPathKey(i);
94
+ valueArraySerializerContext.hasJsonPathKey(i);
95
+ keySerializerContext.hasReferenceValueSetter(function (v) { return map.set(v, undefined); });
96
+ var key = keySerializerContext.deserialize(mk);
97
+ valueSerializerContext.hasReferenceValueSetter(function (v) { return map.set(key, v); });
98
+ var value = valueSerializerContext.deserialize(mv);
99
+ map.set(key, value);
100
+ };
101
+ for (var i = 0; i < array.length; i++) {
102
+ _loop_1(i);
103
+ }
104
+ return map;
105
+ });
106
+ }
107
+ if (serializerContext.log.errorEnabled) {
108
+ serializerContext.log.error("".concat(serializerContext.jsonPath, ": Cannot deserialize value as map!"), x);
109
+ }
110
+ return undefined;
111
+ };
112
+ return MapSerializer;
113
+ }());
114
+ export { MapSerializer };
115
115
  //# sourceMappingURL=map-serializer.js.map