@dipscope/type-manager 7.2.1 → 8.0.0

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 (621) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/README.md +159 -168
  3. package/dist/es2015/constants/default-value-resolver.js +2 -0
  4. package/dist/es2015/constants/default-value-resolver.js.map +1 -0
  5. package/dist/es2015/constants/empty-array.js +2 -0
  6. package/dist/es2015/constants/empty-array.js.map +1 -0
  7. package/dist/es2015/constants/empty-map.js +2 -0
  8. package/dist/es2015/constants/empty-map.js.map +1 -0
  9. package/dist/es2015/constants/index.js +5 -0
  10. package/dist/es2015/constants/index.js.map +1 -0
  11. package/dist/es2015/constants/null-value-resolver.js +2 -0
  12. package/dist/es2015/constants/null-value-resolver.js.map +1 -0
  13. package/dist/es2015/custom-key.js.map +1 -1
  14. package/dist/es2015/factories/type-factory.js +22 -23
  15. package/dist/es2015/factories/type-factory.js.map +1 -1
  16. package/dist/es2015/functions/get-own-reflect-metadata.js +1 -2
  17. package/dist/es2015/functions/get-own-reflect-metadata.js.map +1 -1
  18. package/dist/es2015/functions/get-reflect-metadata.js +1 -2
  19. package/dist/es2015/functions/get-reflect-metadata.js.map +1 -1
  20. package/dist/es2015/functions/get-words.js +61 -2
  21. package/dist/es2015/functions/get-words.js.map +1 -1
  22. package/dist/es2015/functions/index.js +0 -12
  23. package/dist/es2015/functions/index.js.map +1 -1
  24. package/dist/es2015/functions/json-parse.js.map +1 -1
  25. package/dist/es2015/functions/json-stringify.js +6 -5
  26. package/dist/es2015/functions/json-stringify.js.map +1 -1
  27. package/dist/es2015/functions/name-of.js +1 -5
  28. package/dist/es2015/functions/name-of.js.map +1 -1
  29. package/dist/es2015/index.js +13 -12
  30. package/dist/es2015/index.js.map +1 -1
  31. package/dist/es2015/inject-metadata.js +34 -33
  32. package/dist/es2015/inject-metadata.js.map +1 -1
  33. package/dist/es2015/inject-sorters/asc-inject-sorter.js +1 -9
  34. package/dist/es2015/inject-sorters/asc-inject-sorter.js.map +1 -1
  35. package/dist/es2015/inject-sorters/desc-inject-sorter.js +1 -9
  36. package/dist/es2015/inject-sorters/desc-inject-sorter.js.map +1 -1
  37. package/dist/es2015/inject-state.js +2 -0
  38. package/dist/es2015/inject-state.js.map +1 -0
  39. package/dist/es2015/inject-states/index.js +3 -0
  40. package/dist/es2015/inject-states/index.js.map +1 -0
  41. package/dist/es2015/inject-states/resolved-inject-state.js +10 -0
  42. package/dist/es2015/inject-states/resolved-inject-state.js.map +1 -0
  43. package/dist/es2015/inject-states/unresolved-inject-state.js +31 -0
  44. package/dist/es2015/inject-states/unresolved-inject-state.js.map +1 -0
  45. package/dist/es2015/inject.js +6 -8
  46. package/dist/es2015/inject.js.map +1 -1
  47. package/dist/es2015/injectors/singleton-injector.js +6 -10
  48. package/dist/es2015/injectors/singleton-injector.js.map +1 -1
  49. package/dist/es2015/logger-level.js +9 -0
  50. package/dist/es2015/logger-level.js.map +1 -0
  51. package/dist/es2015/logger.js +79 -0
  52. package/dist/es2015/logger.js.map +1 -0
  53. package/dist/es2015/metadata.js +45 -57
  54. package/dist/es2015/metadata.js.map +1 -1
  55. package/dist/es2015/null-value-resolver.js +2 -0
  56. package/dist/es2015/null-value-resolver.js.map +1 -0
  57. package/dist/es2015/nullable.js +2 -0
  58. package/dist/es2015/nullable.js.map +1 -0
  59. package/dist/es2015/optional.js +2 -0
  60. package/dist/es2015/optional.js.map +1 -0
  61. package/dist/es2015/property-extension-metadata-ctor-set-key.js +1 -1
  62. package/dist/es2015/property-extension-metadata-ctor-set-key.js.map +1 -1
  63. package/dist/es2015/property-extension-metadata.js.map +1 -1
  64. package/dist/es2015/property-metadata.js +224 -145
  65. package/dist/es2015/property-metadata.js.map +1 -1
  66. package/dist/es2015/property-sorters/asc-property-sorter.js +1 -9
  67. package/dist/es2015/property-sorters/asc-property-sorter.js.map +1 -1
  68. package/dist/es2015/property-sorters/desc-property-sorter.js +1 -9
  69. package/dist/es2015/property-sorters/desc-property-sorter.js.map +1 -1
  70. package/dist/es2015/property-state.js +2 -0
  71. package/dist/es2015/property-state.js.map +1 -0
  72. package/dist/es2015/property-states/index.js +3 -0
  73. package/dist/es2015/property-states/index.js.map +1 -0
  74. package/dist/es2015/property-states/resolved-property-state.js +27 -0
  75. package/dist/es2015/property-states/resolved-property-state.js.map +1 -0
  76. package/dist/es2015/property-states/unresolved-property-state.js +167 -0
  77. package/dist/es2015/property-states/unresolved-property-state.js.map +1 -0
  78. package/dist/es2015/property.js +17 -19
  79. package/dist/es2015/property.js.map +1 -1
  80. package/dist/es2015/reference-handlers/circular-reference-handler.js +2 -3
  81. package/dist/es2015/reference-handlers/circular-reference-handler.js.map +1 -1
  82. package/dist/es2015/reference-handlers/json-path-reference-handler.js +7 -6
  83. package/dist/es2015/reference-handlers/json-path-reference-handler.js.map +1 -1
  84. package/dist/es2015/reference-handlers/plain-reference-handler.js +2 -3
  85. package/dist/es2015/reference-handlers/plain-reference-handler.js.map +1 -1
  86. package/dist/es2015/serializer-context.js +65 -171
  87. package/dist/es2015/serializer-context.js.map +1 -1
  88. package/dist/es2015/serializers/any-serializer.js +4 -5
  89. package/dist/es2015/serializers/any-serializer.js.map +1 -1
  90. package/dist/es2015/serializers/array-buffer-serializer.js +8 -13
  91. package/dist/es2015/serializers/array-buffer-serializer.js.map +1 -1
  92. package/dist/es2015/serializers/array-serializer.js +18 -25
  93. package/dist/es2015/serializers/array-serializer.js.map +1 -1
  94. package/dist/es2015/serializers/boolean-serializer.js +12 -19
  95. package/dist/es2015/serializers/boolean-serializer.js.map +1 -1
  96. package/dist/es2015/serializers/data-view-serializer.js +8 -14
  97. package/dist/es2015/serializers/data-view-serializer.js.map +1 -1
  98. package/dist/es2015/serializers/date-serializer.js +8 -13
  99. package/dist/es2015/serializers/date-serializer.js.map +1 -1
  100. package/dist/es2015/serializers/float-32-array-serializer.js +8 -14
  101. package/dist/es2015/serializers/float-32-array-serializer.js.map +1 -1
  102. package/dist/es2015/serializers/float-64-array-serializer.js +8 -14
  103. package/dist/es2015/serializers/float-64-array-serializer.js.map +1 -1
  104. package/dist/es2015/serializers/int-16-array-serializer.js +8 -14
  105. package/dist/es2015/serializers/int-16-array-serializer.js.map +1 -1
  106. package/dist/es2015/serializers/int-32-array-serializer.js +8 -14
  107. package/dist/es2015/serializers/int-32-array-serializer.js.map +1 -1
  108. package/dist/es2015/serializers/int-8-array-serializer.js +8 -14
  109. package/dist/es2015/serializers/int-8-array-serializer.js.map +1 -1
  110. package/dist/es2015/serializers/map-serializer.js +42 -54
  111. package/dist/es2015/serializers/map-serializer.js.map +1 -1
  112. package/dist/es2015/serializers/number-serializer.js +10 -17
  113. package/dist/es2015/serializers/number-serializer.js.map +1 -1
  114. package/dist/es2015/serializers/set-serializer.js +19 -26
  115. package/dist/es2015/serializers/set-serializer.js.map +1 -1
  116. package/dist/es2015/serializers/string-serializer.js +12 -19
  117. package/dist/es2015/serializers/string-serializer.js.map +1 -1
  118. package/dist/es2015/serializers/type-serializer.js +64 -71
  119. package/dist/es2015/serializers/type-serializer.js.map +1 -1
  120. package/dist/es2015/serializers/uint-16-array-serializer.js +8 -14
  121. package/dist/es2015/serializers/uint-16-array-serializer.js.map +1 -1
  122. package/dist/es2015/serializers/uint-32-array-serializer.js +8 -14
  123. package/dist/es2015/serializers/uint-32-array-serializer.js.map +1 -1
  124. package/dist/es2015/serializers/uint-8-array-serializer.js +8 -14
  125. package/dist/es2015/serializers/uint-8-array-serializer.js.map +1 -1
  126. package/dist/es2015/serializers/uint-8-clamped-array-serializer.js +8 -14
  127. package/dist/es2015/serializers/uint-8-clamped-array-serializer.js.map +1 -1
  128. package/dist/es2015/serializers/unknown-serializer.js +4 -5
  129. package/dist/es2015/serializers/unknown-serializer.js.map +1 -1
  130. package/dist/es2015/type-entry.js +2 -0
  131. package/dist/es2015/type-entry.js.map +1 -0
  132. package/dist/es2015/type-extension-metadata-ctor-set-key.js +1 -1
  133. package/dist/es2015/type-extension-metadata-ctor-set-key.js.map +1 -1
  134. package/dist/es2015/type-extension-metadata.js.map +1 -1
  135. package/dist/es2015/type-manager.js +55 -55
  136. package/dist/es2015/type-manager.js.map +1 -1
  137. package/dist/es2015/type-metadata-symbol.js +1 -1
  138. package/dist/es2015/type-metadata-symbol.js.map +1 -1
  139. package/dist/es2015/type-metadata.js +465 -226
  140. package/dist/es2015/type-metadata.js.map +1 -1
  141. package/dist/es2015/type-scope.js +6 -7
  142. package/dist/es2015/type-scope.js.map +1 -1
  143. package/dist/es2015/type-state.js +2 -0
  144. package/dist/es2015/type-state.js.map +1 -0
  145. package/dist/es2015/type-states/index.js +3 -0
  146. package/dist/es2015/type-states/index.js.map +1 -0
  147. package/dist/es2015/type-states/resolved-type-state.js +44 -0
  148. package/dist/es2015/type-states/resolved-type-state.js.map +1 -0
  149. package/dist/es2015/type-states/unresolved-type-state.js +303 -0
  150. package/dist/es2015/type-states/unresolved-type-state.js.map +1 -0
  151. package/dist/es2015/type.js.map +1 -1
  152. package/dist/es5/constants/default-value-resolver.js +2 -0
  153. package/dist/es5/constants/default-value-resolver.js.map +1 -0
  154. package/dist/es5/constants/empty-array.js +2 -0
  155. package/dist/es5/constants/empty-array.js.map +1 -0
  156. package/dist/es5/constants/empty-map.js +2 -0
  157. package/dist/es5/constants/empty-map.js.map +1 -0
  158. package/dist/es5/constants/index.js +5 -0
  159. package/dist/es5/constants/index.js.map +1 -0
  160. package/dist/es5/constants/null-value-resolver.js +2 -0
  161. package/dist/es5/constants/null-value-resolver.js.map +1 -0
  162. package/dist/es5/custom-key.js.map +1 -1
  163. package/dist/es5/factories/type-factory.js +63 -39
  164. package/dist/es5/factories/type-factory.js.map +1 -1
  165. package/dist/es5/functions/get-own-reflect-metadata.js +1 -2
  166. package/dist/es5/functions/get-own-reflect-metadata.js.map +1 -1
  167. package/dist/es5/functions/get-reflect-metadata.js +1 -2
  168. package/dist/es5/functions/get-reflect-metadata.js.map +1 -1
  169. package/dist/es5/functions/get-words.js +61 -2
  170. package/dist/es5/functions/get-words.js.map +1 -1
  171. package/dist/es5/functions/index.js +0 -12
  172. package/dist/es5/functions/index.js.map +1 -1
  173. package/dist/es5/functions/json-parse.js.map +1 -1
  174. package/dist/es5/functions/json-stringify.js +6 -5
  175. package/dist/es5/functions/json-stringify.js.map +1 -1
  176. package/dist/es5/functions/name-of.js +1 -5
  177. package/dist/es5/functions/name-of.js.map +1 -1
  178. package/dist/es5/index.js +13 -12
  179. package/dist/es5/index.js.map +1 -1
  180. package/dist/es5/inject-metadata.js +49 -34
  181. package/dist/es5/inject-metadata.js.map +1 -1
  182. package/dist/es5/inject-sorters/asc-inject-sorter.js +1 -9
  183. package/dist/es5/inject-sorters/asc-inject-sorter.js.map +1 -1
  184. package/dist/es5/inject-sorters/desc-inject-sorter.js +1 -9
  185. package/dist/es5/inject-sorters/desc-inject-sorter.js.map +1 -1
  186. package/dist/es5/inject-state.js +2 -0
  187. package/dist/es5/inject-state.js.map +1 -0
  188. package/dist/es5/inject-states/index.js +3 -0
  189. package/dist/es5/inject-states/index.js.map +1 -0
  190. package/dist/es5/inject-states/resolved-inject-state.js +12 -0
  191. package/dist/es5/inject-states/resolved-inject-state.js.map +1 -0
  192. package/dist/es5/inject-states/unresolved-inject-state.js +45 -0
  193. package/dist/es5/inject-states/unresolved-inject-state.js.map +1 -0
  194. package/dist/es5/inject.js +6 -8
  195. package/dist/es5/inject.js.map +1 -1
  196. package/dist/es5/injectors/singleton-injector.js +31 -22
  197. package/dist/es5/injectors/singleton-injector.js.map +1 -1
  198. package/dist/es5/logger-level.js +9 -0
  199. package/dist/es5/logger-level.js.map +1 -0
  200. package/dist/es5/logger.js +122 -0
  201. package/dist/es5/logger.js.map +1 -0
  202. package/dist/es5/metadata.js +44 -79
  203. package/dist/es5/metadata.js.map +1 -1
  204. package/dist/es5/null-value-resolver.js +2 -0
  205. package/dist/es5/null-value-resolver.js.map +1 -0
  206. package/dist/es5/nullable.js +2 -0
  207. package/dist/es5/nullable.js.map +1 -0
  208. package/dist/es5/optional.js +2 -0
  209. package/dist/es5/optional.js.map +1 -0
  210. package/dist/es5/property-extension-metadata-ctor-set-key.js +1 -1
  211. package/dist/es5/property-extension-metadata-ctor-set-key.js.map +1 -1
  212. package/dist/es5/property-extension-metadata.js.map +1 -1
  213. package/dist/es5/property-metadata.js +288 -162
  214. package/dist/es5/property-metadata.js.map +1 -1
  215. package/dist/es5/property-sorters/asc-property-sorter.js +1 -9
  216. package/dist/es5/property-sorters/asc-property-sorter.js.map +1 -1
  217. package/dist/es5/property-sorters/desc-property-sorter.js +1 -9
  218. package/dist/es5/property-sorters/desc-property-sorter.js.map +1 -1
  219. package/dist/es5/property-state.js +2 -0
  220. package/dist/es5/property-state.js.map +1 -0
  221. package/dist/es5/property-states/index.js +3 -0
  222. package/dist/es5/property-states/index.js.map +1 -0
  223. package/dist/es5/property-states/resolved-property-state.js +29 -0
  224. package/dist/es5/property-states/resolved-property-state.js.map +1 -0
  225. package/dist/es5/property-states/unresolved-property-state.js +249 -0
  226. package/dist/es5/property-states/unresolved-property-state.js.map +1 -0
  227. package/dist/es5/property.js +17 -19
  228. package/dist/es5/property.js.map +1 -1
  229. package/dist/es5/reference-handlers/circular-reference-handler.js +2 -3
  230. package/dist/es5/reference-handlers/circular-reference-handler.js.map +1 -1
  231. package/dist/es5/reference-handlers/json-path-reference-handler.js +10 -31
  232. package/dist/es5/reference-handlers/json-path-reference-handler.js.map +1 -1
  233. package/dist/es5/reference-handlers/plain-reference-handler.js +2 -3
  234. package/dist/es5/reference-handlers/plain-reference-handler.js.map +1 -1
  235. package/dist/es5/serializer-context.js +71 -237
  236. package/dist/es5/serializer-context.js.map +1 -1
  237. package/dist/es5/serializers/any-serializer.js +4 -5
  238. package/dist/es5/serializers/any-serializer.js.map +1 -1
  239. package/dist/es5/serializers/array-buffer-serializer.js +8 -13
  240. package/dist/es5/serializers/array-buffer-serializer.js.map +1 -1
  241. package/dist/es5/serializers/array-serializer.js +18 -31
  242. package/dist/es5/serializers/array-serializer.js.map +1 -1
  243. package/dist/es5/serializers/boolean-serializer.js +12 -19
  244. package/dist/es5/serializers/boolean-serializer.js.map +1 -1
  245. package/dist/es5/serializers/data-view-serializer.js +8 -14
  246. package/dist/es5/serializers/data-view-serializer.js.map +1 -1
  247. package/dist/es5/serializers/date-serializer.js +8 -13
  248. package/dist/es5/serializers/date-serializer.js.map +1 -1
  249. package/dist/es5/serializers/float-32-array-serializer.js +8 -14
  250. package/dist/es5/serializers/float-32-array-serializer.js.map +1 -1
  251. package/dist/es5/serializers/float-64-array-serializer.js +8 -14
  252. package/dist/es5/serializers/float-64-array-serializer.js.map +1 -1
  253. package/dist/es5/serializers/int-16-array-serializer.js +8 -14
  254. package/dist/es5/serializers/int-16-array-serializer.js.map +1 -1
  255. package/dist/es5/serializers/int-32-array-serializer.js +8 -14
  256. package/dist/es5/serializers/int-32-array-serializer.js.map +1 -1
  257. package/dist/es5/serializers/int-8-array-serializer.js +8 -14
  258. package/dist/es5/serializers/int-8-array-serializer.js.map +1 -1
  259. package/dist/es5/serializers/map-serializer.js +69 -55
  260. package/dist/es5/serializers/map-serializer.js.map +1 -1
  261. package/dist/es5/serializers/number-serializer.js +10 -17
  262. package/dist/es5/serializers/number-serializer.js.map +1 -1
  263. package/dist/es5/serializers/set-serializer.js +30 -27
  264. package/dist/es5/serializers/set-serializer.js.map +1 -1
  265. package/dist/es5/serializers/string-serializer.js +12 -19
  266. package/dist/es5/serializers/string-serializer.js.map +1 -1
  267. package/dist/es5/serializers/type-serializer.js +65 -101
  268. package/dist/es5/serializers/type-serializer.js.map +1 -1
  269. package/dist/es5/serializers/uint-16-array-serializer.js +8 -14
  270. package/dist/es5/serializers/uint-16-array-serializer.js.map +1 -1
  271. package/dist/es5/serializers/uint-32-array-serializer.js +8 -14
  272. package/dist/es5/serializers/uint-32-array-serializer.js.map +1 -1
  273. package/dist/es5/serializers/uint-8-array-serializer.js +8 -14
  274. package/dist/es5/serializers/uint-8-array-serializer.js.map +1 -1
  275. package/dist/es5/serializers/uint-8-clamped-array-serializer.js +8 -14
  276. package/dist/es5/serializers/uint-8-clamped-array-serializer.js.map +1 -1
  277. package/dist/es5/serializers/unknown-serializer.js +4 -5
  278. package/dist/es5/serializers/unknown-serializer.js.map +1 -1
  279. package/dist/es5/type-entry.js +2 -0
  280. package/dist/es5/type-entry.js.map +1 -0
  281. package/dist/es5/type-extension-metadata-ctor-set-key.js +1 -1
  282. package/dist/es5/type-extension-metadata-ctor-set-key.js.map +1 -1
  283. package/dist/es5/type-extension-metadata.js.map +1 -1
  284. package/dist/es5/type-manager.js +110 -63
  285. package/dist/es5/type-manager.js.map +1 -1
  286. package/dist/es5/type-metadata-symbol.js +1 -1
  287. package/dist/es5/type-metadata-symbol.js.map +1 -1
  288. package/dist/es5/type-metadata.js +597 -273
  289. package/dist/es5/type-metadata.js.map +1 -1
  290. package/dist/es5/type-scope.js +42 -37
  291. package/dist/es5/type-scope.js.map +1 -1
  292. package/dist/es5/type-state.js +2 -0
  293. package/dist/es5/type-state.js.map +1 -0
  294. package/dist/es5/type-states/index.js +3 -0
  295. package/dist/es5/type-states/index.js.map +1 -0
  296. package/dist/es5/type-states/resolved-type-state.js +46 -0
  297. package/dist/es5/type-states/resolved-type-state.js.map +1 -0
  298. package/dist/es5/type-states/unresolved-type-state.js +453 -0
  299. package/dist/es5/type-states/unresolved-type-state.js.map +1 -0
  300. package/dist/es5/type.js.map +1 -1
  301. package/dist/types/constants/default-value-resolver.d.ts +8 -0
  302. package/dist/types/constants/default-value-resolver.d.ts.map +1 -0
  303. package/dist/types/constants/empty-array.d.ts +7 -0
  304. package/dist/types/constants/empty-array.d.ts.map +1 -0
  305. package/dist/types/constants/empty-map.d.ts +7 -0
  306. package/dist/types/constants/empty-map.d.ts.map +1 -0
  307. package/dist/types/constants/index.d.ts +5 -0
  308. package/dist/types/constants/index.d.ts.map +1 -0
  309. package/dist/types/constants/null-value-resolver.d.ts +8 -0
  310. package/dist/types/constants/null-value-resolver.d.ts.map +1 -0
  311. package/dist/types/custom-key.d.ts +4 -3
  312. package/dist/types/custom-key.d.ts.map +1 -1
  313. package/dist/types/custom-option.d.ts +2 -2
  314. package/dist/types/custom-value.d.ts +2 -1
  315. package/dist/types/custom-value.d.ts.map +1 -1
  316. package/dist/types/factories/type-factory.d.ts +8 -5
  317. package/dist/types/factories/type-factory.d.ts.map +1 -1
  318. package/dist/types/factory.d.ts +7 -4
  319. package/dist/types/factory.d.ts.map +1 -1
  320. package/dist/types/functions/get-own-reflect-metadata.d.ts.map +1 -1
  321. package/dist/types/functions/get-reflect-metadata.d.ts.map +1 -1
  322. package/dist/types/functions/get-words.d.ts +3 -3
  323. package/dist/types/functions/get-words.d.ts.map +1 -1
  324. package/dist/types/functions/index.d.ts +0 -12
  325. package/dist/types/functions/index.d.ts.map +1 -1
  326. package/dist/types/functions/json-parse.d.ts +1 -1
  327. package/dist/types/functions/json-parse.d.ts.map +1 -1
  328. package/dist/types/functions/json-stringify.d.ts.map +1 -1
  329. package/dist/types/functions/name-of.d.ts.map +1 -1
  330. package/dist/types/generic-argument.d.ts +2 -2
  331. package/dist/types/generic-argument.d.ts.map +1 -1
  332. package/dist/types/generic-metadata.d.ts +2 -2
  333. package/dist/types/generic-metadata.d.ts.map +1 -1
  334. package/dist/types/index.d.ts +13 -12
  335. package/dist/types/index.d.ts.map +1 -1
  336. package/dist/types/inject-metadata.d.ts +52 -45
  337. package/dist/types/inject-metadata.d.ts.map +1 -1
  338. package/dist/types/inject-options.d.ts +8 -8
  339. package/dist/types/inject-options.d.ts.map +1 -1
  340. package/dist/types/inject-sorter.d.ts +3 -3
  341. package/dist/types/inject-sorter.d.ts.map +1 -1
  342. package/dist/types/inject-sorters/asc-inject-sorter.d.ts +3 -3
  343. package/dist/types/inject-sorters/asc-inject-sorter.d.ts.map +1 -1
  344. package/dist/types/inject-sorters/desc-inject-sorter.d.ts +3 -3
  345. package/dist/types/inject-sorters/desc-inject-sorter.d.ts.map +1 -1
  346. package/dist/types/inject-state.d.ts +36 -0
  347. package/dist/types/inject-state.d.ts.map +1 -0
  348. package/dist/types/inject-states/index.d.ts +3 -0
  349. package/dist/types/inject-states/index.d.ts.map +1 -0
  350. package/dist/types/inject-states/resolved-inject-state.d.ts +46 -0
  351. package/dist/types/inject-states/resolved-inject-state.d.ts.map +1 -0
  352. package/dist/types/inject-states/unresolved-inject-state.d.ts +49 -0
  353. package/dist/types/inject-states/unresolved-inject-state.d.ts.map +1 -0
  354. package/dist/types/inject.d.ts +3 -3
  355. package/dist/types/inject.d.ts.map +1 -1
  356. package/dist/types/injector.d.ts +4 -3
  357. package/dist/types/injector.d.ts.map +1 -1
  358. package/dist/types/injectors/singleton-injector.d.ts +5 -5
  359. package/dist/types/injectors/singleton-injector.d.ts.map +1 -1
  360. package/dist/types/logger-level.d.ts +31 -0
  361. package/dist/types/logger-level.d.ts.map +1 -0
  362. package/dist/types/logger.d.ts +125 -0
  363. package/dist/types/logger.d.ts.map +1 -0
  364. package/dist/types/metadata.d.ts +29 -39
  365. package/dist/types/metadata.d.ts.map +1 -1
  366. package/dist/types/null-value-resolver.d.ts +9 -0
  367. package/dist/types/null-value-resolver.d.ts.map +1 -0
  368. package/dist/types/nullable.d.ts +7 -0
  369. package/dist/types/nullable.d.ts.map +1 -0
  370. package/dist/types/optional.d.ts +7 -0
  371. package/dist/types/optional.d.ts.map +1 -0
  372. package/dist/types/property-extension-metadata-ctor-set-key.d.ts +1 -1
  373. package/dist/types/property-extension-metadata-ctor-set-key.d.ts.map +1 -1
  374. package/dist/types/property-extension-metadata-ctor.d.ts +2 -2
  375. package/dist/types/property-extension-metadata-ctor.d.ts.map +1 -1
  376. package/dist/types/property-extension-metadata.d.ts +7 -7
  377. package/dist/types/property-extension-metadata.d.ts.map +1 -1
  378. package/dist/types/property-metadata.d.ts +134 -119
  379. package/dist/types/property-metadata.d.ts.map +1 -1
  380. package/dist/types/property-options.d.ts +11 -10
  381. package/dist/types/property-options.d.ts.map +1 -1
  382. package/dist/types/property-sorter.d.ts +3 -3
  383. package/dist/types/property-sorter.d.ts.map +1 -1
  384. package/dist/types/property-sorters/asc-property-sorter.d.ts +3 -3
  385. package/dist/types/property-sorters/asc-property-sorter.d.ts.map +1 -1
  386. package/dist/types/property-sorters/desc-property-sorter.d.ts +3 -3
  387. package/dist/types/property-sorters/desc-property-sorter.d.ts.map +1 -1
  388. package/dist/types/property-state.d.ts +149 -0
  389. package/dist/types/property-state.d.ts.map +1 -0
  390. package/dist/types/property-states/index.d.ts +3 -0
  391. package/dist/types/property-states/index.d.ts.map +1 -0
  392. package/dist/types/property-states/resolved-property-state.d.ts +176 -0
  393. package/dist/types/property-states/resolved-property-state.d.ts.map +1 -0
  394. package/dist/types/property-states/unresolved-property-state.d.ts +162 -0
  395. package/dist/types/property-states/unresolved-property-state.d.ts.map +1 -0
  396. package/dist/types/property.d.ts +4 -4
  397. package/dist/types/property.d.ts.map +1 -1
  398. package/dist/types/reference-handlers/circular-reference-handler.d.ts.map +1 -1
  399. package/dist/types/reference-handlers/json-path-reference-handler.d.ts.map +1 -1
  400. package/dist/types/reference-handlers/plain-reference-handler.d.ts.map +1 -1
  401. package/dist/types/reference-value-setter.d.ts +1 -1
  402. package/dist/types/reference-value-setter.d.ts.map +1 -1
  403. package/dist/types/serializer-context.d.ts +70 -164
  404. package/dist/types/serializer-context.d.ts.map +1 -1
  405. package/dist/types/serializer.d.ts +8 -8
  406. package/dist/types/serializer.d.ts.map +1 -1
  407. package/dist/types/serializers/any-serializer.d.ts.map +1 -1
  408. package/dist/types/serializers/array-buffer-serializer.d.ts.map +1 -1
  409. package/dist/types/serializers/array-serializer.d.ts.map +1 -1
  410. package/dist/types/serializers/boolean-serializer.d.ts +1 -1
  411. package/dist/types/serializers/boolean-serializer.d.ts.map +1 -1
  412. package/dist/types/serializers/data-view-serializer.d.ts.map +1 -1
  413. package/dist/types/serializers/date-serializer.d.ts.map +1 -1
  414. package/dist/types/serializers/float-32-array-serializer.d.ts.map +1 -1
  415. package/dist/types/serializers/float-64-array-serializer.d.ts.map +1 -1
  416. package/dist/types/serializers/int-16-array-serializer.d.ts.map +1 -1
  417. package/dist/types/serializers/int-32-array-serializer.d.ts.map +1 -1
  418. package/dist/types/serializers/int-8-array-serializer.d.ts.map +1 -1
  419. package/dist/types/serializers/map-serializer.d.ts.map +1 -1
  420. package/dist/types/serializers/number-serializer.d.ts +1 -1
  421. package/dist/types/serializers/number-serializer.d.ts.map +1 -1
  422. package/dist/types/serializers/set-serializer.d.ts.map +1 -1
  423. package/dist/types/serializers/string-serializer.d.ts +1 -1
  424. package/dist/types/serializers/string-serializer.d.ts.map +1 -1
  425. package/dist/types/serializers/type-serializer.d.ts.map +1 -1
  426. package/dist/types/serializers/uint-16-array-serializer.d.ts.map +1 -1
  427. package/dist/types/serializers/uint-32-array-serializer.d.ts.map +1 -1
  428. package/dist/types/serializers/uint-8-array-serializer.d.ts.map +1 -1
  429. package/dist/types/serializers/uint-8-clamped-array-serializer.d.ts.map +1 -1
  430. package/dist/types/serializers/unknown-serializer.d.ts.map +1 -1
  431. package/dist/types/type-abstraction.d.ts +2 -2
  432. package/dist/types/type-abstraction.d.ts.map +1 -1
  433. package/dist/types/type-argument.d.ts +3 -3
  434. package/dist/types/type-argument.d.ts.map +1 -1
  435. package/dist/types/type-configuration.d.ts +4 -4
  436. package/dist/types/type-configuration.d.ts.map +1 -1
  437. package/dist/types/type-ctor.d.ts +2 -2
  438. package/dist/types/type-ctor.d.ts.map +1 -1
  439. package/dist/types/type-entry.d.ts +29 -0
  440. package/dist/types/type-entry.d.ts.map +1 -0
  441. package/dist/types/type-extension-metadata-ctor-set-key.d.ts +1 -1
  442. package/dist/types/type-extension-metadata-ctor-set-key.d.ts.map +1 -1
  443. package/dist/types/type-extension-metadata-ctor.d.ts +2 -2
  444. package/dist/types/type-extension-metadata-ctor.d.ts.map +1 -1
  445. package/dist/types/type-extension-metadata.d.ts +6 -6
  446. package/dist/types/type-extension-metadata.d.ts.map +1 -1
  447. package/dist/types/type-fn.d.ts +2 -2
  448. package/dist/types/type-fn.d.ts.map +1 -1
  449. package/dist/types/type-like.d.ts +2 -2
  450. package/dist/types/type-like.d.ts.map +1 -1
  451. package/dist/types/type-manager-options.d.ts.map +1 -1
  452. package/dist/types/type-manager.d.ts +116 -123
  453. package/dist/types/type-manager.d.ts.map +1 -1
  454. package/dist/types/type-metadata-symbol.d.ts +1 -1
  455. package/dist/types/type-metadata-symbol.d.ts.map +1 -1
  456. package/dist/types/type-metadata.d.ts +253 -152
  457. package/dist/types/type-metadata.d.ts.map +1 -1
  458. package/dist/types/type-options-base.d.ts +13 -12
  459. package/dist/types/type-options-base.d.ts.map +1 -1
  460. package/dist/types/type-options.d.ts +10 -10
  461. package/dist/types/type-options.d.ts.map +1 -1
  462. package/dist/types/type-resolver.d.ts +2 -2
  463. package/dist/types/type-resolver.d.ts.map +1 -1
  464. package/dist/types/type-scope.d.ts.map +1 -1
  465. package/dist/types/type-state.d.ts +262 -0
  466. package/dist/types/type-state.d.ts.map +1 -0
  467. package/dist/types/type-states/index.d.ts +3 -0
  468. package/dist/types/type-states/index.d.ts.map +1 -0
  469. package/dist/types/type-states/resolved-type-state.d.ts +306 -0
  470. package/dist/types/type-states/resolved-type-state.d.ts.map +1 -0
  471. package/dist/types/type-states/unresolved-type-state.d.ts +275 -0
  472. package/dist/types/type-states/unresolved-type-state.d.ts.map +1 -0
  473. package/dist/types/type.d.ts +2 -2
  474. package/dist/types/type.d.ts.map +1 -1
  475. package/dist/umd/index.js +1 -1
  476. package/dist/umd/index.js.map +1 -1
  477. package/package.json +1 -7
  478. package/dist/es2015/custom-context.js +0 -59
  479. package/dist/es2015/custom-context.js.map +0 -1
  480. package/dist/es2015/functions/is-arrow-function.js +0 -5
  481. package/dist/es2015/functions/is-arrow-function.js.map +0 -1
  482. package/dist/es2015/functions/is-ctor-function.js +0 -5
  483. package/dist/es2015/functions/is-ctor-function.js.map +0 -1
  484. package/dist/es2015/functions/is-data-view.js +0 -4
  485. package/dist/es2015/functions/is-data-view.js.map +0 -1
  486. package/dist/es2015/functions/is-float-32-array.js +0 -4
  487. package/dist/es2015/functions/is-float-32-array.js.map +0 -1
  488. package/dist/es2015/functions/is-float-64-array.js +0 -4
  489. package/dist/es2015/functions/is-float-64-array.js.map +0 -1
  490. package/dist/es2015/functions/is-int-16-array.js +0 -4
  491. package/dist/es2015/functions/is-int-16-array.js.map +0 -1
  492. package/dist/es2015/functions/is-int-32-array.js +0 -4
  493. package/dist/es2015/functions/is-int-32-array.js.map +0 -1
  494. package/dist/es2015/functions/is-int-8-array.js +0 -4
  495. package/dist/es2015/functions/is-int-8-array.js.map +0 -1
  496. package/dist/es2015/functions/is-uint-16-array.js +0 -4
  497. package/dist/es2015/functions/is-uint-16-array.js.map +0 -1
  498. package/dist/es2015/functions/is-uint-32-array.js +0 -4
  499. package/dist/es2015/functions/is-uint-32-array.js.map +0 -1
  500. package/dist/es2015/functions/is-uint-8-array.js +0 -4
  501. package/dist/es2015/functions/is-uint-8-array.js.map +0 -1
  502. package/dist/es2015/functions/is-uint-8-clamped-array.js +0 -4
  503. package/dist/es2015/functions/is-uint-8-clamped-array.js.map +0 -1
  504. package/dist/es2015/generic-metadata-resolver.js +0 -2
  505. package/dist/es2015/generic-metadata-resolver.js.map +0 -1
  506. package/dist/es2015/generic-structure.js +0 -2
  507. package/dist/es2015/generic-structure.js.map +0 -1
  508. package/dist/es2015/inject-internals.js +0 -2
  509. package/dist/es2015/inject-internals.js.map +0 -1
  510. package/dist/es2015/log-level.js +0 -8
  511. package/dist/es2015/log-level.js.map +0 -1
  512. package/dist/es2015/log.js +0 -50
  513. package/dist/es2015/log.js.map +0 -1
  514. package/dist/es2015/property-internals.js +0 -2
  515. package/dist/es2015/property-internals.js.map +0 -1
  516. package/dist/es2015/serializer-context-options.js +0 -2
  517. package/dist/es2015/serializer-context-options.js.map +0 -1
  518. package/dist/es2015/type-context-entry.js +0 -9
  519. package/dist/es2015/type-context-entry.js.map +0 -1
  520. package/dist/es2015/type-context.js +0 -31
  521. package/dist/es2015/type-context.js.map +0 -1
  522. package/dist/es2015/type-internals.js +0 -2
  523. package/dist/es2015/type-internals.js.map +0 -1
  524. package/dist/es2015/type-metadata-resolver.js +0 -2
  525. package/dist/es2015/type-metadata-resolver.js.map +0 -1
  526. package/dist/es5/custom-context.js +0 -95
  527. package/dist/es5/custom-context.js.map +0 -1
  528. package/dist/es5/functions/is-arrow-function.js +0 -5
  529. package/dist/es5/functions/is-arrow-function.js.map +0 -1
  530. package/dist/es5/functions/is-ctor-function.js +0 -5
  531. package/dist/es5/functions/is-ctor-function.js.map +0 -1
  532. package/dist/es5/functions/is-data-view.js +0 -4
  533. package/dist/es5/functions/is-data-view.js.map +0 -1
  534. package/dist/es5/functions/is-float-32-array.js +0 -4
  535. package/dist/es5/functions/is-float-32-array.js.map +0 -1
  536. package/dist/es5/functions/is-float-64-array.js +0 -4
  537. package/dist/es5/functions/is-float-64-array.js.map +0 -1
  538. package/dist/es5/functions/is-int-16-array.js +0 -4
  539. package/dist/es5/functions/is-int-16-array.js.map +0 -1
  540. package/dist/es5/functions/is-int-32-array.js +0 -4
  541. package/dist/es5/functions/is-int-32-array.js.map +0 -1
  542. package/dist/es5/functions/is-int-8-array.js +0 -4
  543. package/dist/es5/functions/is-int-8-array.js.map +0 -1
  544. package/dist/es5/functions/is-uint-16-array.js +0 -4
  545. package/dist/es5/functions/is-uint-16-array.js.map +0 -1
  546. package/dist/es5/functions/is-uint-32-array.js +0 -4
  547. package/dist/es5/functions/is-uint-32-array.js.map +0 -1
  548. package/dist/es5/functions/is-uint-8-array.js +0 -4
  549. package/dist/es5/functions/is-uint-8-array.js.map +0 -1
  550. package/dist/es5/functions/is-uint-8-clamped-array.js +0 -4
  551. package/dist/es5/functions/is-uint-8-clamped-array.js.map +0 -1
  552. package/dist/es5/generic-metadata-resolver.js +0 -2
  553. package/dist/es5/generic-metadata-resolver.js.map +0 -1
  554. package/dist/es5/generic-structure.js +0 -2
  555. package/dist/es5/generic-structure.js.map +0 -1
  556. package/dist/es5/inject-internals.js +0 -2
  557. package/dist/es5/inject-internals.js.map +0 -1
  558. package/dist/es5/log-level.js +0 -8
  559. package/dist/es5/log-level.js.map +0 -1
  560. package/dist/es5/log.js +0 -65
  561. package/dist/es5/log.js.map +0 -1
  562. package/dist/es5/property-internals.js +0 -2
  563. package/dist/es5/property-internals.js.map +0 -1
  564. package/dist/es5/serializer-context-options.js +0 -2
  565. package/dist/es5/serializer-context-options.js.map +0 -1
  566. package/dist/es5/type-context-entry.js +0 -11
  567. package/dist/es5/type-context-entry.js.map +0 -1
  568. package/dist/es5/type-context.js +0 -33
  569. package/dist/es5/type-context.js.map +0 -1
  570. package/dist/es5/type-internals.js +0 -2
  571. package/dist/es5/type-internals.js.map +0 -1
  572. package/dist/es5/type-metadata-resolver.js +0 -2
  573. package/dist/es5/type-metadata-resolver.js.map +0 -1
  574. package/dist/types/custom-context.d.ts +0 -89
  575. package/dist/types/custom-context.d.ts.map +0 -1
  576. package/dist/types/functions/is-arrow-function.d.ts +0 -9
  577. package/dist/types/functions/is-arrow-function.d.ts.map +0 -1
  578. package/dist/types/functions/is-ctor-function.d.ts +0 -9
  579. package/dist/types/functions/is-ctor-function.d.ts.map +0 -1
  580. package/dist/types/functions/is-data-view.d.ts +0 -9
  581. package/dist/types/functions/is-data-view.d.ts.map +0 -1
  582. package/dist/types/functions/is-float-32-array.d.ts +0 -9
  583. package/dist/types/functions/is-float-32-array.d.ts.map +0 -1
  584. package/dist/types/functions/is-float-64-array.d.ts +0 -9
  585. package/dist/types/functions/is-float-64-array.d.ts.map +0 -1
  586. package/dist/types/functions/is-int-16-array.d.ts +0 -9
  587. package/dist/types/functions/is-int-16-array.d.ts.map +0 -1
  588. package/dist/types/functions/is-int-32-array.d.ts +0 -9
  589. package/dist/types/functions/is-int-32-array.d.ts.map +0 -1
  590. package/dist/types/functions/is-int-8-array.d.ts +0 -9
  591. package/dist/types/functions/is-int-8-array.d.ts.map +0 -1
  592. package/dist/types/functions/is-uint-16-array.d.ts +0 -9
  593. package/dist/types/functions/is-uint-16-array.d.ts.map +0 -1
  594. package/dist/types/functions/is-uint-32-array.d.ts +0 -9
  595. package/dist/types/functions/is-uint-32-array.d.ts.map +0 -1
  596. package/dist/types/functions/is-uint-8-array.d.ts +0 -9
  597. package/dist/types/functions/is-uint-8-array.d.ts.map +0 -1
  598. package/dist/types/functions/is-uint-8-clamped-array.d.ts +0 -9
  599. package/dist/types/functions/is-uint-8-clamped-array.d.ts.map +0 -1
  600. package/dist/types/generic-metadata-resolver.d.ts +0 -8
  601. package/dist/types/generic-metadata-resolver.d.ts.map +0 -1
  602. package/dist/types/generic-structure.d.ts +0 -8
  603. package/dist/types/generic-structure.d.ts.map +0 -1
  604. package/dist/types/inject-internals.d.ts +0 -15
  605. package/dist/types/inject-internals.d.ts.map +0 -1
  606. package/dist/types/log-level.d.ts +0 -12
  607. package/dist/types/log-level.d.ts.map +0 -1
  608. package/dist/types/log.d.ts +0 -96
  609. package/dist/types/log.d.ts.map +0 -1
  610. package/dist/types/property-internals.d.ts +0 -36
  611. package/dist/types/property-internals.d.ts.map +0 -1
  612. package/dist/types/serializer-context-options.d.ts +0 -51
  613. package/dist/types/serializer-context-options.d.ts.map +0 -1
  614. package/dist/types/type-context-entry.d.ts +0 -37
  615. package/dist/types/type-context-entry.d.ts.map +0 -1
  616. package/dist/types/type-context.d.ts +0 -71
  617. package/dist/types/type-context.d.ts.map +0 -1
  618. package/dist/types/type-internals.d.ts +0 -15
  619. package/dist/types/type-internals.d.ts.map +0 -1
  620. package/dist/types/type-metadata-resolver.d.ts +0 -9
  621. package/dist/types/type-metadata-resolver.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"map-serializer.js","sourceRoot":"","sources":["../../../src/serializers/map-serializer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"map-serializer.js","sourceRoot":"","sources":["../../../src/serializers/map-serializer.ts"],"names":[],"mappings":"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"}
@@ -1,48 +1,41 @@
1
- import { isBoolean, isNull, isNumber, isString, isUndefined } from 'lodash';
2
1
  export class NumberSerializer {
3
2
  serialize(x, serializerContext) {
4
- if (isUndefined(x)) {
3
+ if (x === undefined) {
5
4
  return serializerContext.serializedDefaultValue;
6
5
  }
7
- if (isNull(x)) {
6
+ if (x === null) {
8
7
  return serializerContext.serializedNullValue;
9
8
  }
10
- if (isNumber(x)) {
9
+ if (typeof x === 'number') {
11
10
  return x;
12
11
  }
13
12
  if (serializerContext.useImplicitConversion) {
14
13
  return this.convert(x, serializerContext);
15
14
  }
16
- if (serializerContext.log.errorEnabled) {
17
- serializerContext.log.error(`${serializerContext.jsonPath}: cannot serialize value as number.`, x);
18
- }
15
+ serializerContext.logger.error('NumberSerializer', `${serializerContext.jsonPath}: cannot serialize value as number.`, x);
19
16
  return undefined;
20
17
  }
21
18
  deserialize(x, serializerContext) {
22
- if (isUndefined(x)) {
19
+ if (x === undefined) {
23
20
  return serializerContext.deserializedDefaultValue;
24
21
  }
25
- if (isNull(x)) {
22
+ if (x === null) {
26
23
  return serializerContext.deserializedNullValue;
27
24
  }
28
- if (isNumber(x)) {
25
+ if (typeof x === 'number') {
29
26
  return x;
30
27
  }
31
28
  if (serializerContext.useImplicitConversion) {
32
29
  return this.convert(x, serializerContext);
33
30
  }
34
- if (serializerContext.log.errorEnabled) {
35
- serializerContext.log.error(`${serializerContext.jsonPath}: cannot deserialize value as number.`, x);
36
- }
31
+ serializerContext.logger.error('NumberSerializer', `${serializerContext.jsonPath}: cannot deserialize value as number.`, x);
37
32
  return undefined;
38
33
  }
39
34
  convert(x, serializerContext) {
40
- if (isString(x) || isBoolean(x)) {
35
+ if (typeof x === 'string' || typeof x === 'boolean') {
41
36
  return Number(x);
42
37
  }
43
- if (serializerContext.log.errorEnabled) {
44
- serializerContext.log.error(`${serializerContext.jsonPath}: cannot convert value to a number.`, x);
45
- }
38
+ serializerContext.logger.error('NumberSerializer', `${serializerContext.jsonPath}: cannot convert value to a number.`, x);
46
39
  return undefined;
47
40
  }
48
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"number-serializer.js","sourceRoot":"","sources":["../../../src/serializers/number-serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAU5E,MAAM,OAAO,gBAAgB;IAUlB,SAAS,CAAC,CAAmB,EAAE,iBAA4C;QAE9E,IAAI,WAAW,CAAC,CAAC,CAAC,EAClB;YACI,OAAO,iBAAiB,CAAC,sBAAsB,CAAC;SACnD;QAED,IAAI,MAAM,CAAC,CAAC,CAAC,EACb;YACI,OAAO,iBAAiB,CAAC,mBAAmB,CAAC;SAChD;QAED,IAAI,QAAQ,CAAC,CAAC,CAAC,EACf;YACI,OAAO,CAAC,CAAC;SACZ;QAED,IAAI,iBAAiB,CAAC,qBAAqB,EAC3C;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC;SAC7C;QAED,IAAI,iBAAiB,CAAC,GAAG,CAAC,YAAY,EACtC;YACI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,QAAQ,qCAAqC,EAAE,CAAC,CAAC,CAAC;SACtG;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAUM,WAAW,CAAC,CAAgB,EAAE,iBAA4C;QAE7E,IAAI,WAAW,CAAC,CAAC,CAAC,EAClB;YACI,OAAO,iBAAiB,CAAC,wBAAwB,CAAC;SACrD;QAED,IAAI,MAAM,CAAC,CAAC,CAAC,EACb;YACI,OAAO,iBAAiB,CAAC,qBAAqB,CAAC;SAClD;QAED,IAAI,QAAQ,CAAC,CAAC,CAAC,EACf;YACI,OAAO,CAAC,CAAC;SACZ;QAED,IAAI,iBAAiB,CAAC,qBAAqB,EAC3C;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC;SAC7C;QAED,IAAI,iBAAiB,CAAC,GAAG,CAAC,YAAY,EACtC;YACI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,QAAQ,uCAAuC,EAAE,CAAC,CAAC,CAAC;SACxG;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAUO,OAAO,CAAC,CAAM,EAAE,iBAA4C;QAEhE,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,EAC/B;YACI,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;SACpB;QAED,IAAI,iBAAiB,CAAC,GAAG,CAAC,YAAY,EACtC;YACI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,QAAQ,qCAAqC,EAAE,CAAC,CAAC,CAAC;SACtG;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ"}
1
+ {"version":3,"file":"number-serializer.js","sourceRoot":"","sources":["../../../src/serializers/number-serializer.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,gBAAgB;IAUlB,SAAS,CAAC,CAAmB,EAAE,iBAA4C;QAE9E,IAAI,CAAC,KAAK,SAAS,EACnB;YACI,OAAO,iBAAiB,CAAC,sBAAsB,CAAC;SACnD;QAED,IAAI,CAAC,KAAK,IAAI,EACd;YACI,OAAO,iBAAiB,CAAC,mBAAmB,CAAC;SAChD;QAED,IAAI,OAAO,CAAC,KAAK,QAAQ,EACzB;YACI,OAAO,CAAC,CAAC;SACZ;QAED,IAAI,iBAAiB,CAAC,qBAAqB,EAC3C;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC;SAC7C;QAED,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,GAAG,iBAAiB,CAAC,QAAQ,qCAAqC,EAAE,CAAC,CAAC,CAAC;QAE1H,OAAO,SAAS,CAAC;IACrB,CAAC;IAUM,WAAW,CAAC,CAAgB,EAAE,iBAA4C;QAE7E,IAAI,CAAC,KAAK,SAAS,EACnB;YACI,OAAO,iBAAiB,CAAC,wBAAwB,CAAC;SACrD;QAED,IAAI,CAAC,KAAK,IAAI,EACd;YACI,OAAO,iBAAiB,CAAC,qBAAqB,CAAC;SAClD;QAED,IAAI,OAAO,CAAC,KAAK,QAAQ,EACzB;YACI,OAAO,CAAC,CAAC;SACZ;QAED,IAAI,iBAAiB,CAAC,qBAAqB,EAC3C;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC;SAC7C;QAED,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,GAAG,iBAAiB,CAAC,QAAQ,uCAAuC,EAAE,CAAC,CAAC,CAAC;QAE5H,OAAO,SAAS,CAAC;IACrB,CAAC;IAUO,OAAO,CAAC,CAAM,EAAE,iBAA4C;QAEhE,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,SAAS,EACnD;YACI,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;SACpB;QAED,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,GAAG,iBAAiB,CAAC,QAAQ,qCAAqC,EAAE,CAAC,CAAC,CAAC;QAE1H,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ"}
@@ -1,61 +1,54 @@
1
- import { isArray, isNull, isSet, isUndefined } from 'lodash';
2
1
  export class SetSerializer {
3
2
  serialize(x, serializerContext) {
4
- if (isUndefined(x)) {
3
+ if (x === undefined) {
5
4
  return serializerContext.serializedDefaultValue;
6
5
  }
7
- if (isNull(x)) {
6
+ if (x === null) {
8
7
  return serializerContext.serializedNullValue;
9
8
  }
10
- if (isSet(x)) {
9
+ if (x instanceof Set) {
11
10
  return serializerContext.defineReference(x, () => {
12
11
  const set = x;
13
- const array = new Array();
12
+ const array = new Array(set.size);
14
13
  const genericSerializerContext = serializerContext.defineGenericSerializerContext(0);
15
- const valueSerializerContext = genericSerializerContext.defineChildSerializerContext({
16
- jsonPathKey: genericSerializerContext.jsonPathKey
17
- });
14
+ const valueSerializerContext = genericSerializerContext.defineChildSerializerContext();
15
+ const serializer = valueSerializerContext.serializer;
16
+ valueSerializerContext.referenceValueSetter = (v, k) => array[k] = v;
18
17
  let i = -1;
19
18
  for (const v of set) {
20
19
  i++;
21
- valueSerializerContext.hasJsonPathKey(i);
22
- valueSerializerContext.hasReferenceValueSetter(v => array[i] = v);
23
- array[i] = valueSerializerContext.serialize(v);
20
+ valueSerializerContext.jsonPathKey = i;
21
+ array[i] = serializer.serialize(v, valueSerializerContext);
24
22
  }
25
23
  return array;
26
24
  });
27
25
  }
28
- if (serializerContext.log.errorEnabled) {
29
- serializerContext.log.error(`${serializerContext.jsonPath}: cannot serialize value as set.`, x);
30
- }
26
+ serializerContext.logger.error('SetSerializer', `${serializerContext.jsonPath}: cannot serialize value as set.`, x);
31
27
  return undefined;
32
28
  }
33
29
  deserialize(x, serializerContext) {
34
- if (isUndefined(x)) {
30
+ if (x === undefined) {
35
31
  return serializerContext.deserializedDefaultValue;
36
32
  }
37
- if (isNull(x)) {
33
+ if (x === null) {
38
34
  return serializerContext.deserializedNullValue;
39
35
  }
40
- if (isArray(x)) {
36
+ if (Array.isArray(x)) {
41
37
  return serializerContext.restoreReference(x, () => {
42
38
  const array = x;
43
39
  const set = new Set();
44
40
  const genericSerializerContext = serializerContext.defineGenericSerializerContext(0);
45
- const valueSerializerContext = genericSerializerContext.defineChildSerializerContext({
46
- jsonPathKey: genericSerializerContext.jsonPathKey
47
- });
41
+ const valueSerializerContext = genericSerializerContext.defineChildSerializerContext();
42
+ const serializer = valueSerializerContext.serializer;
43
+ valueSerializerContext.referenceValueSetter = v => set.add(v);
48
44
  for (let i = 0; i < array.length; i++) {
49
- valueSerializerContext.hasJsonPathKey(i);
50
- valueSerializerContext.hasReferenceValueSetter(v => set.add(v));
51
- set.add(valueSerializerContext.deserialize(array[i]));
45
+ valueSerializerContext.jsonPathKey = i;
46
+ set.add(serializer.deserialize(array[i], valueSerializerContext));
52
47
  }
53
48
  return set;
54
49
  });
55
50
  }
56
- if (serializerContext.log.errorEnabled) {
57
- serializerContext.log.error(`${serializerContext.jsonPath}: cannot deserialize value as set.`, x);
58
- }
51
+ serializerContext.logger.error('SetSerializer', `${serializerContext.jsonPath}: cannot deserialize value as set.`, x);
59
52
  return undefined;
60
53
  }
61
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"set-serializer.js","sourceRoot":"","sources":["../../../src/serializers/set-serializer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"set-serializer.js","sourceRoot":"","sources":["../../../src/serializers/set-serializer.ts"],"names":[],"mappings":"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"}
@@ -1,54 +1,47 @@
1
- import { isBoolean, isDate, isNull, isNumber, isObject, isString, isUndefined } from 'lodash';
2
1
  export class StringSerializer {
3
2
  serialize(x, serializerContext) {
4
- if (isUndefined(x)) {
3
+ if (x === undefined) {
5
4
  return serializerContext.serializedDefaultValue;
6
5
  }
7
- if (isNull(x)) {
6
+ if (x === null) {
8
7
  return serializerContext.serializedNullValue;
9
8
  }
10
- if (isString(x)) {
9
+ if (typeof x === 'string') {
11
10
  return x;
12
11
  }
13
12
  if (serializerContext.useImplicitConversion) {
14
13
  return this.convert(x, serializerContext);
15
14
  }
16
- if (serializerContext.log.errorEnabled) {
17
- serializerContext.log.error(`${serializerContext.jsonPath}: cannot serialize value as string.`, x);
18
- }
15
+ serializerContext.logger.error('StringSerializer', `${serializerContext.jsonPath}: cannot serialize value as string.`, x);
19
16
  return undefined;
20
17
  }
21
18
  deserialize(x, serializerContext) {
22
- if (isUndefined(x)) {
19
+ if (x === undefined) {
23
20
  return serializerContext.deserializedDefaultValue;
24
21
  }
25
- if (isNull(x)) {
22
+ if (x === null) {
26
23
  return serializerContext.deserializedNullValue;
27
24
  }
28
- if (isString(x)) {
25
+ if (typeof x === 'string') {
29
26
  return x;
30
27
  }
31
28
  if (serializerContext.useImplicitConversion) {
32
29
  return this.convert(x, serializerContext);
33
30
  }
34
- if (serializerContext.log.errorEnabled) {
35
- serializerContext.log.error(`${serializerContext.jsonPath}: cannot deserialize value as string.`, x);
36
- }
31
+ serializerContext.logger.error('StringSerializer', `${serializerContext.jsonPath}: cannot deserialize value as string.`, x);
37
32
  return undefined;
38
33
  }
39
34
  convert(x, serializerContext) {
40
- if (isNumber(x) || isBoolean(x)) {
35
+ if (typeof x === 'number' || typeof x === 'boolean') {
41
36
  return String(x);
42
37
  }
43
- if (isDate(x)) {
38
+ if (x instanceof Date) {
44
39
  return x.toISOString();
45
40
  }
46
- if (isObject(x)) {
41
+ if (typeof x === 'object') {
47
42
  return JSON.stringify(x);
48
43
  }
49
- if (serializerContext.log.errorEnabled) {
50
- serializerContext.log.error(`${serializerContext.jsonPath}: cannot convert value to string.`, x);
51
- }
44
+ serializerContext.logger.error('StringSerializer', `${serializerContext.jsonPath}: cannot convert value to string.`, x);
52
45
  return undefined;
53
46
  }
54
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"string-serializer.js","sourceRoot":"","sources":["../../../src/serializers/string-serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAU9F,MAAM,OAAO,gBAAgB;IAUlB,SAAS,CAAC,CAAmB,EAAE,iBAA4C;QAE9E,IAAI,WAAW,CAAC,CAAC,CAAC,EAClB;YACI,OAAO,iBAAiB,CAAC,sBAAsB,CAAC;SACnD;QAED,IAAI,MAAM,CAAC,CAAC,CAAC,EACb;YACI,OAAO,iBAAiB,CAAC,mBAAmB,CAAC;SAChD;QAED,IAAI,QAAQ,CAAC,CAAC,CAAC,EACf;YACI,OAAO,CAAC,CAAC;SACZ;QAED,IAAI,iBAAiB,CAAC,qBAAqB,EAC3C;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC;SAC7C;QAED,IAAI,iBAAiB,CAAC,GAAG,CAAC,YAAY,EACtC;YACI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,QAAQ,qCAAqC,EAAE,CAAC,CAAC,CAAC;SACtG;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAUM,WAAW,CAAC,CAAgB,EAAE,iBAA4C;QAE7E,IAAI,WAAW,CAAC,CAAC,CAAC,EAClB;YACI,OAAO,iBAAiB,CAAC,wBAAwB,CAAC;SACrD;QAED,IAAI,MAAM,CAAC,CAAC,CAAC,EACb;YACI,OAAO,iBAAiB,CAAC,qBAAqB,CAAC;SAClD;QAED,IAAI,QAAQ,CAAC,CAAC,CAAC,EACf;YACI,OAAO,CAAC,CAAC;SACZ;QAED,IAAI,iBAAiB,CAAC,qBAAqB,EAC3C;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC;SAC7C;QAED,IAAI,iBAAiB,CAAC,GAAG,CAAC,YAAY,EACtC;YACI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,QAAQ,uCAAuC,EAAE,CAAC,CAAC,CAAC;SACxG;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAUO,OAAO,CAAC,CAAM,EAAE,iBAA4C;QAEhE,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,EAC/B;YACI,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;SACpB;QAED,IAAI,MAAM,CAAC,CAAC,CAAC,EACb;YACI,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;SAC1B;QAED,IAAI,QAAQ,CAAC,CAAC,CAAC,EACf;YACI,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SAC5B;QAED,IAAI,iBAAiB,CAAC,GAAG,CAAC,YAAY,EACtC;YACI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,QAAQ,mCAAmC,EAAE,CAAC,CAAC,CAAC;SACpG;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ"}
1
+ {"version":3,"file":"string-serializer.js","sourceRoot":"","sources":["../../../src/serializers/string-serializer.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,gBAAgB;IAUlB,SAAS,CAAC,CAAmB,EAAE,iBAA4C;QAE9E,IAAI,CAAC,KAAK,SAAS,EACnB;YACI,OAAO,iBAAiB,CAAC,sBAAsB,CAAC;SACnD;QAED,IAAI,CAAC,KAAK,IAAI,EACd;YACI,OAAO,iBAAiB,CAAC,mBAAmB,CAAC;SAChD;QAED,IAAI,OAAO,CAAC,KAAK,QAAQ,EACzB;YACI,OAAO,CAAC,CAAC;SACZ;QAED,IAAI,iBAAiB,CAAC,qBAAqB,EAC3C;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC;SAC7C;QAED,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,GAAG,iBAAiB,CAAC,QAAQ,qCAAqC,EAAE,CAAC,CAAC,CAAC;QAE1H,OAAO,SAAS,CAAC;IACrB,CAAC;IAUM,WAAW,CAAC,CAAgB,EAAE,iBAA4C;QAE7E,IAAI,CAAC,KAAK,SAAS,EACnB;YACI,OAAO,iBAAiB,CAAC,wBAAwB,CAAC;SACrD;QAED,IAAI,CAAC,KAAK,IAAI,EACd;YACI,OAAO,iBAAiB,CAAC,qBAAqB,CAAC;SAClD;QAED,IAAI,OAAO,CAAC,KAAK,QAAQ,EACzB;YACI,OAAO,CAAC,CAAC;SACZ;QAED,IAAI,iBAAiB,CAAC,qBAAqB,EAC3C;YACI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC;SAC7C;QAED,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,GAAG,iBAAiB,CAAC,QAAQ,uCAAuC,EAAE,CAAC,CAAC,CAAC;QAE5H,OAAO,SAAS,CAAC;IACrB,CAAC;IAUO,OAAO,CAAC,CAAM,EAAE,iBAA4C;QAEhE,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,SAAS,EACnD;YACI,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;SACpB;QAED,IAAI,CAAC,YAAY,IAAI,EACrB;YACI,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;SAC1B;QAED,IAAI,OAAO,CAAC,KAAK,QAAQ,EACzB;YACI,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SAC5B;QAED,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,GAAG,iBAAiB,CAAC,QAAQ,mCAAmC,EAAE,CAAC,CAAC,CAAC;QAExH,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ"}
@@ -1,120 +1,113 @@
1
- import { isNil, isNull, isObject, isUndefined } from 'lodash';
2
- import { TypeContext } from '../type-context';
3
- import { TypeContextEntry } from '../type-context-entry';
4
1
  export class TypeSerializer {
5
2
  serialize(x, serializerContext) {
6
- if (isUndefined(x)) {
3
+ if (x === undefined) {
7
4
  return serializerContext.serializedDefaultValue;
8
5
  }
9
- if (isNull(x)) {
6
+ if (x === null) {
10
7
  return serializerContext.serializedNullValue;
11
8
  }
12
- if (isObject(x)) {
9
+ if (typeof x === 'object') {
13
10
  return serializerContext.defineReference(x, () => {
14
11
  const type = x;
15
12
  const typeSerializerContext = serializerContext.polymorphic
16
13
  ? serializerContext.definePolymorphicSerializerContext(x.constructor)
17
14
  : serializerContext;
18
- const propertySerializerContext = typeSerializerContext.defineChildSerializerContext({
19
- jsonPathKey: typeSerializerContext.jsonPathKey
20
- });
21
- const typeMetadata = typeSerializerContext.typeMetadata;
15
+ const propertySerializerContext = typeSerializerContext.defineChildSerializerContext();
16
+ const typeState = typeSerializerContext.typeState;
22
17
  const object = {};
23
- for (const propertyMetadata of typeMetadata.sortedPropertyMetadatas) {
24
- if (propertyMetadata.serializationConfigured && !propertyMetadata.serializable) {
18
+ propertySerializerContext.referenceValueSetter = (v, k) => {
19
+ const declaringObject = propertySerializerContext.referenceMap.get(type);
20
+ if (declaringObject !== undefined) {
21
+ declaringObject[k] = v;
22
+ }
23
+ };
24
+ for (let i = 0; i < typeState.sortedPropertyMetadatas.length; i++) {
25
+ const propertyMetadata = typeState.sortedPropertyMetadatas[i];
26
+ const propertyState = propertyMetadata.propertyState;
27
+ if (!propertyState.serializable) {
25
28
  continue;
26
29
  }
27
- const serializedPropertyName = propertyMetadata.serializedPropertyName;
28
- const deserializedPropertyName = propertyMetadata.deserializedPropertyName;
30
+ const serializedPropertyName = propertyState.serializedPropertyName;
31
+ const deserializedPropertyName = propertyState.deserializedPropertyName;
29
32
  const propertyValue = type[deserializedPropertyName];
30
- propertySerializerContext.hasJsonPathKey(serializedPropertyName);
31
- propertySerializerContext.hasPropertyMetadata(propertyMetadata);
32
- propertySerializerContext.hasTypeMetadata(propertyMetadata.typeMetadata);
33
- propertySerializerContext.hasGenericStructures(propertyMetadata.genericStructures);
34
- propertySerializerContext.hasGenericMetadataResolvers(propertyMetadata.genericMetadataResolvers);
35
- propertySerializerContext.hasReferenceValueSetter(v => {
36
- const declaringObject = propertySerializerContext.referenceMap.get(type);
37
- if (!isNil(declaringObject)) {
38
- declaringObject[serializedPropertyName] = v;
39
- }
40
- });
41
- const value = propertySerializerContext.serialize(propertyValue);
33
+ propertySerializerContext.jsonPathKey = serializedPropertyName;
34
+ propertySerializerContext.propertyState = propertyState;
35
+ propertySerializerContext.typeState = propertyState.typeMetadata.typeState;
36
+ propertySerializerContext.genericMetadatas = propertyState.genericMetadatas;
37
+ const serializer = propertySerializerContext.serializer;
38
+ const value = serializer.serialize(propertyValue, propertySerializerContext);
42
39
  object[serializedPropertyName] = value;
43
40
  }
44
- if (typeSerializerContext.preserveDiscriminator) {
45
- object[typeSerializerContext.discriminator] = typeSerializerContext.discriminant;
41
+ if (typeState.preserveDiscriminator) {
42
+ object[typeState.discriminator] = typeState.discriminant;
46
43
  }
47
- else if (object.hasOwnProperty(typeSerializerContext.discriminator)) {
48
- delete object[typeSerializerContext.discriminator];
44
+ else if (object.hasOwnProperty(typeState.discriminator)) {
45
+ delete object[typeState.discriminator];
49
46
  }
50
47
  return object;
51
48
  });
52
49
  }
53
- if (serializerContext.log.errorEnabled) {
54
- serializerContext.log.error(`${serializerContext.jsonPath}: cannot serialize value as type.`, x);
55
- }
50
+ serializerContext.logger.error('TypeSerializer', `${serializerContext.jsonPath}: cannot serialize value as type.`, x);
56
51
  return undefined;
57
52
  }
58
53
  deserialize(x, serializerContext) {
59
- if (isUndefined(x)) {
54
+ if (x === undefined) {
60
55
  return serializerContext.deserializedDefaultValue;
61
56
  }
62
- if (isNull(x)) {
57
+ if (x === null) {
63
58
  return serializerContext.deserializedNullValue;
64
59
  }
65
- if (isObject(x)) {
60
+ if (typeof x === 'object') {
66
61
  return serializerContext.restoreReference(x, () => {
67
62
  const object = x;
68
63
  const typeSerializerContext = serializerContext.polymorphic
69
64
  ? serializerContext.definePolymorphicSerializerContext(x)
70
65
  : serializerContext;
71
- const propertySerializerContext = typeSerializerContext.defineChildSerializerContext({
72
- jsonPathKey: typeSerializerContext.jsonPath
73
- });
74
- const typeMetadata = typeSerializerContext.typeMetadata;
75
- const typeContext = new TypeContext(typeMetadata);
76
- for (const propertyMetadata of typeMetadata.sortedPropertyMetadatas) {
77
- if (propertyMetadata.serializationConfigured && !propertyMetadata.deserializable) {
66
+ const propertySerializerContext = typeSerializerContext.defineChildSerializerContext();
67
+ const typeState = typeSerializerContext.typeState;
68
+ const typeEntryMap = new Map();
69
+ propertySerializerContext.referenceValueSetter = (v, k) => {
70
+ const declaringType = propertySerializerContext.referenceMap.get(object);
71
+ if (declaringType !== undefined) {
72
+ declaringType[k] = v;
73
+ }
74
+ };
75
+ for (let i = 0; i < typeState.sortedPropertyMetadatas.length; i++) {
76
+ const propertyMetadata = typeState.sortedPropertyMetadatas[i];
77
+ const propertyState = propertyMetadata.propertyState;
78
+ if (!propertyState.deserializable) {
78
79
  continue;
79
80
  }
80
- const serializedPropertyName = propertyMetadata.serializedPropertyName;
81
- const deserializedPropertyName = propertyMetadata.deserializedPropertyName;
81
+ const serializedPropertyName = propertyState.serializedPropertyName;
82
+ const deserializedPropertyName = propertyState.deserializedPropertyName;
82
83
  const propertyValue = object[serializedPropertyName];
83
- propertySerializerContext.hasJsonPathKey(deserializedPropertyName);
84
- propertySerializerContext.hasPropertyMetadata(propertyMetadata);
85
- propertySerializerContext.hasTypeMetadata(propertyMetadata.typeMetadata);
86
- propertySerializerContext.hasGenericStructures(propertyMetadata.genericStructures);
87
- propertySerializerContext.hasGenericMetadataResolvers(propertyMetadata.genericMetadataResolvers);
88
- propertySerializerContext.hasReferenceValueSetter(v => {
89
- const declaringType = propertySerializerContext.referenceMap.get(object);
90
- if (!isNil(declaringType)) {
91
- declaringType[deserializedPropertyName] = v;
92
- }
93
- });
94
- const value = propertySerializerContext.deserialize(propertyValue);
95
- typeContext.set(deserializedPropertyName, new TypeContextEntry(deserializedPropertyName, value, propertyMetadata));
96
- typeContext.set(serializedPropertyName, new TypeContextEntry(serializedPropertyName, value, propertyMetadata));
84
+ propertySerializerContext.jsonPathKey = serializedPropertyName;
85
+ propertySerializerContext.propertyState = propertyState;
86
+ propertySerializerContext.typeState = propertyState.typeMetadata.typeState;
87
+ propertySerializerContext.genericMetadatas = propertyState.genericMetadatas;
88
+ const serializer = propertySerializerContext.serializer;
89
+ const value = serializer.deserialize(propertyValue, propertySerializerContext);
90
+ typeEntryMap.set(deserializedPropertyName, { key: deserializedPropertyName, value: value, propertyMetadata: propertyMetadata });
91
+ typeEntryMap.set(serializedPropertyName, { key: serializedPropertyName, value: value, propertyMetadata: propertyMetadata });
97
92
  }
98
93
  for (const propertyName in object) {
99
- if (object.hasOwnProperty(propertyName)) {
100
- typeContext.set(propertyName, new TypeContextEntry(propertyName, object[propertyName]));
94
+ if (object.hasOwnProperty(propertyName) && !typeEntryMap.has(propertyName)) {
95
+ typeEntryMap.set(propertyName, { key: propertyName, value: object[propertyName] });
101
96
  }
102
97
  }
103
- const factory = typeSerializerContext.factory;
104
- const injector = typeSerializerContext.injector;
105
- const type = factory.build(typeContext, injector);
106
- if (typeSerializerContext.preserveDiscriminator) {
107
- type[typeSerializerContext.discriminator] = typeSerializerContext.discriminant;
98
+ const factory = typeState.factory;
99
+ const injector = typeState.injector;
100
+ const type = factory.build(typeState.typeMetadata, typeEntryMap, injector);
101
+ if (typeState.preserveDiscriminator) {
102
+ type[typeState.discriminator] = typeState.discriminant;
108
103
  }
109
- else if (type.hasOwnProperty(typeSerializerContext.discriminator)) {
110
- delete type[typeSerializerContext.discriminator];
104
+ else if (type.hasOwnProperty(typeState.discriminator)) {
105
+ delete type[typeState.discriminator];
111
106
  }
112
107
  return type;
113
108
  });
114
109
  }
115
- if (serializerContext.log.errorEnabled) {
116
- serializerContext.log.error(`${serializerContext.jsonPath}: cannot deserialize value as type.`, x);
117
- }
110
+ serializerContext.logger.error('TypeSerializer', `${serializerContext.jsonPath}: cannot deserialize value as type.`, x);
118
111
  return undefined;
119
112
  }
120
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"type-serializer.js","sourceRoot":"","sources":["../../../src/serializers/type-serializer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-serializer.js","sourceRoot":"","sources":["../../../src/serializers/type-serializer.ts"],"names":[],"mappings":"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"}
@@ -1,34 +1,28 @@
1
- import { isArray, isNull, isUndefined } from 'lodash';
2
- import { isUint16Array } from '../functions/is-uint-16-array';
3
1
  export class Uint16ArraySerializer {
4
2
  serialize(x, serializerContext) {
5
- if (isUndefined(x)) {
3
+ if (x === undefined) {
6
4
  return serializerContext.serializedDefaultValue;
7
5
  }
8
- if (isNull(x)) {
6
+ if (x === null) {
9
7
  return serializerContext.serializedNullValue;
10
8
  }
11
- if (isUint16Array(x)) {
9
+ if (x instanceof Uint16Array) {
12
10
  return Array.from(x);
13
11
  }
14
- if (serializerContext.log.errorEnabled) {
15
- serializerContext.log.error(`${serializerContext.jsonPath}: cannot serialize value as uint 16 array.`, x);
16
- }
12
+ serializerContext.logger.error('Uint16ArraySerializer', `${serializerContext.jsonPath}: cannot serialize value as uint 16 array.`, x);
17
13
  return undefined;
18
14
  }
19
15
  deserialize(x, serializerContext) {
20
- if (isUndefined(x)) {
16
+ if (x === undefined) {
21
17
  return serializerContext.deserializedDefaultValue;
22
18
  }
23
- if (isNull(x)) {
19
+ if (x === null) {
24
20
  return serializerContext.deserializedNullValue;
25
21
  }
26
- if (isArray(x)) {
22
+ if (Array.isArray(x)) {
27
23
  return Uint16Array.from(x);
28
24
  }
29
- if (serializerContext.log.errorEnabled) {
30
- serializerContext.log.error(`${serializerContext.jsonPath}: cannot deserialize value as uint 16 array.`, x);
31
- }
25
+ serializerContext.logger.error('Uint16ArraySerializer', `${serializerContext.jsonPath}: cannot deserialize value as uint 16 array.`, x);
32
26
  return undefined;
33
27
  }
34
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"uint-16-array-serializer.js","sourceRoot":"","sources":["../../../src/serializers/uint-16-array-serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAU9D,MAAM,OAAO,qBAAqB;IAUvB,SAAS,CAAC,CAAwB,EAAE,iBAAiD;QAExF,IAAI,WAAW,CAAC,CAAC,CAAC,EAClB;YACI,OAAO,iBAAiB,CAAC,sBAAsB,CAAC;SACnD;QAED,IAAI,MAAM,CAAC,CAAC,CAAC,EACb;YACI,OAAO,iBAAiB,CAAC,mBAAmB,CAAC;SAChD;QAED,IAAI,aAAa,CAAC,CAAC,CAAC,EACpB;YACI,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACxB;QAED,IAAI,iBAAiB,CAAC,GAAG,CAAC,YAAY,EACtC;YACI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,QAAQ,4CAA4C,EAAE,CAAC,CAAC,CAAC;SAC7G;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAUM,WAAW,CAAC,CAAgB,EAAE,iBAAiD;QAElF,IAAI,WAAW,CAAC,CAAC,CAAC,EAClB;YACI,OAAO,iBAAiB,CAAC,wBAAwB,CAAC;SACrD;QAED,IAAI,MAAM,CAAC,CAAC,CAAC,EACb;YACI,OAAO,iBAAiB,CAAC,qBAAqB,CAAC;SAClD;QAED,IAAI,OAAO,CAAC,CAAC,CAAC,EACd;YACI,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC9B;QAED,IAAI,iBAAiB,CAAC,GAAG,CAAC,YAAY,EACtC;YACI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,QAAQ,8CAA8C,EAAE,CAAC,CAAC,CAAC;SAC/G;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ"}
1
+ {"version":3,"file":"uint-16-array-serializer.js","sourceRoot":"","sources":["../../../src/serializers/uint-16-array-serializer.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,qBAAqB;IAUvB,SAAS,CAAC,CAAwB,EAAE,iBAAiD;QAExF,IAAI,CAAC,KAAK,SAAS,EACnB;YACI,OAAO,iBAAiB,CAAC,sBAAsB,CAAC;SACnD;QAED,IAAI,CAAC,KAAK,IAAI,EACd;YACI,OAAO,iBAAiB,CAAC,mBAAmB,CAAC;SAChD;QAED,IAAI,CAAC,YAAY,WAAW,EAC5B;YACI,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACxB;QAED,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,iBAAiB,CAAC,QAAQ,4CAA4C,EAAE,CAAC,CAAC,CAAC;QAEtI,OAAO,SAAS,CAAC;IACrB,CAAC;IAUM,WAAW,CAAC,CAAgB,EAAE,iBAAiD;QAElF,IAAI,CAAC,KAAK,SAAS,EACnB;YACI,OAAO,iBAAiB,CAAC,wBAAwB,CAAC;SACrD;QAED,IAAI,CAAC,KAAK,IAAI,EACd;YACI,OAAO,iBAAiB,CAAC,qBAAqB,CAAC;SAClD;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EACpB;YACI,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC9B;QAED,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,iBAAiB,CAAC,QAAQ,8CAA8C,EAAE,CAAC,CAAC,CAAC;QAExI,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ"}
@@ -1,34 +1,28 @@
1
- import { isArray, isNull, isUndefined } from 'lodash';
2
- import { isUint32Array } from '../functions/is-uint-32-array';
3
1
  export class Uint32ArraySerializer {
4
2
  serialize(x, serializerContext) {
5
- if (isUndefined(x)) {
3
+ if (x === undefined) {
6
4
  return serializerContext.serializedDefaultValue;
7
5
  }
8
- if (isNull(x)) {
6
+ if (x === null) {
9
7
  return serializerContext.serializedNullValue;
10
8
  }
11
- if (isUint32Array(x)) {
9
+ if (x instanceof Uint32Array) {
12
10
  return Array.from(x);
13
11
  }
14
- if (serializerContext.log.errorEnabled) {
15
- serializerContext.log.error(`${serializerContext.jsonPath}: cannot serialize value as uint 32 array.`, x);
16
- }
12
+ serializerContext.logger.error('Uint32ArraySerializer', `${serializerContext.jsonPath}: cannot serialize value as uint 32 array.`, x);
17
13
  return undefined;
18
14
  }
19
15
  deserialize(x, serializerContext) {
20
- if (isUndefined(x)) {
16
+ if (x === undefined) {
21
17
  return serializerContext.deserializedDefaultValue;
22
18
  }
23
- if (isNull(x)) {
19
+ if (x === null) {
24
20
  return serializerContext.deserializedNullValue;
25
21
  }
26
- if (isArray(x)) {
22
+ if (Array.isArray(x)) {
27
23
  return Uint32Array.from(x);
28
24
  }
29
- if (serializerContext.log.errorEnabled) {
30
- serializerContext.log.error(`${serializerContext.jsonPath}: cannot deserialize value as uint 32 array.`, x);
31
- }
25
+ serializerContext.logger.error('Uint32ArraySerializer', `${serializerContext.jsonPath}: cannot deserialize value as uint 32 array.`, x);
32
26
  return undefined;
33
27
  }
34
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"uint-32-array-serializer.js","sourceRoot":"","sources":["../../../src/serializers/uint-32-array-serializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAU9D,MAAM,OAAO,qBAAqB;IAUvB,SAAS,CAAC,CAAwB,EAAE,iBAAiD;QAExF,IAAI,WAAW,CAAC,CAAC,CAAC,EAClB;YACI,OAAO,iBAAiB,CAAC,sBAAsB,CAAC;SACnD;QAED,IAAI,MAAM,CAAC,CAAC,CAAC,EACb;YACI,OAAO,iBAAiB,CAAC,mBAAmB,CAAC;SAChD;QAED,IAAI,aAAa,CAAC,CAAC,CAAC,EACpB;YACI,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACxB;QAED,IAAI,iBAAiB,CAAC,GAAG,CAAC,YAAY,EACtC;YACI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,QAAQ,4CAA4C,EAAE,CAAC,CAAC,CAAC;SAC7G;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAUM,WAAW,CAAC,CAAgB,EAAE,iBAAiD;QAElF,IAAI,WAAW,CAAC,CAAC,CAAC,EAClB;YACI,OAAO,iBAAiB,CAAC,wBAAwB,CAAC;SACrD;QAED,IAAI,MAAM,CAAC,CAAC,CAAC,EACb;YACI,OAAO,iBAAiB,CAAC,qBAAqB,CAAC;SAClD;QAED,IAAI,OAAO,CAAC,CAAC,CAAC,EACd;YACI,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC9B;QAED,IAAI,iBAAiB,CAAC,GAAG,CAAC,YAAY,EACtC;YACI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC,QAAQ,8CAA8C,EAAE,CAAC,CAAC,CAAC;SAC/G;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ"}
1
+ {"version":3,"file":"uint-32-array-serializer.js","sourceRoot":"","sources":["../../../src/serializers/uint-32-array-serializer.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,qBAAqB;IAUvB,SAAS,CAAC,CAAwB,EAAE,iBAAiD;QAExF,IAAI,CAAC,KAAK,SAAS,EACnB;YACI,OAAO,iBAAiB,CAAC,sBAAsB,CAAC;SACnD;QAED,IAAI,CAAC,KAAK,IAAI,EACd;YACI,OAAO,iBAAiB,CAAC,mBAAmB,CAAC;SAChD;QAED,IAAI,CAAC,YAAY,WAAW,EAC5B;YACI,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACxB;QAED,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,iBAAiB,CAAC,QAAQ,4CAA4C,EAAE,CAAC,CAAC,CAAC;QAEtI,OAAO,SAAS,CAAC;IACrB,CAAC;IAUM,WAAW,CAAC,CAAgB,EAAE,iBAAiD;QAElF,IAAI,CAAC,KAAK,SAAS,EACnB;YACI,OAAO,iBAAiB,CAAC,wBAAwB,CAAC;SACrD;QAED,IAAI,CAAC,KAAK,IAAI,EACd;YACI,OAAO,iBAAiB,CAAC,qBAAqB,CAAC;SAClD;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EACpB;YACI,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC9B;QAED,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,iBAAiB,CAAC,QAAQ,8CAA8C,EAAE,CAAC,CAAC,CAAC;QAExI,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ"}