@colijnit/transaction 12.1.5 → 12.1.8

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 (455) hide show
  1. package/README.md +10 -13
  2. package/bundles/colijnit-transaction.umd.js +5427 -7279
  3. package/bundles/colijnit-transaction.umd.js.map +1 -1
  4. package/colijnit-transaction.d.ts +45 -57
  5. package/colijnit-transaction.metadata.json +1 -1
  6. package/esm2015/colijnit-transaction.js +46 -58
  7. package/esm2015/lib/assets/dictionary/text.properties.js +346 -0
  8. package/esm2015/lib/component/checkout/checkout-login/checkout-login.component.js +106 -0
  9. package/esm2015/lib/component/checkout/checkout-overview-delivery-address/checkout-overview-delivery-address.component.js +47 -0
  10. package/esm2015/lib/component/checkout/checkout-overview-delivery-edit/checkout-overview-delivery-edit.component.js +443 -0
  11. package/esm2015/lib/component/checkout/checkout-overview-relation-edit/checkout-overview-relation-edit.component.js +371 -0
  12. package/esm2015/lib/component/checkout/checkout-relation-suggestions-list/checkout-relation-suggestions-list.component.js +30 -0
  13. package/esm2015/lib/component/checkout/checkout-relation-suggestions-list-item/checkout-relation-suggestions-list-item.component.js +31 -0
  14. package/esm2015/lib/component/checkout/checkout.component.js +102 -0
  15. package/esm2015/lib/component/checkout/checkout.module.js +77 -0
  16. package/esm2015/lib/component/confirmation-dialog/confirmation-dialog.component.js +38 -0
  17. package/esm2015/lib/component/confirmation-dialog/confirmation-dialog.module.js +24 -0
  18. package/esm2015/lib/component/core/base/dialog-base.component.js +6 -0
  19. package/esm2015/lib/component/core/base/transaction-base.component.js +96 -0
  20. package/esm2015/lib/component/core/core.module.js +36 -0
  21. package/esm2015/lib/component/core/enum/app-popup-button-type.enum.js +11 -0
  22. package/esm2015/lib/component/core/icon/icon.component.js +31 -0
  23. package/esm2015/lib/component/core/image-display/image-display.component.js +29 -0
  24. package/esm2015/lib/component/core/relation/customer-groups.component.js +40 -0
  25. package/esm2015/lib/component/core/stock-status-indicator/stock-status-indicator.component.js +24 -0
  26. package/esm2015/lib/component/discount/discount.component.js +107 -0
  27. package/esm2015/lib/component/discount/discount.module.js +29 -0
  28. package/esm2015/lib/component/relation-address/relation-address.component.js +125 -0
  29. package/esm2015/lib/component/relation-address/relation-address.module.js +28 -0
  30. package/esm2015/lib/component/relation-address-select/relation-address-select.component.js +146 -0
  31. package/esm2015/lib/component/relation-address-select/relation-address-select.module.js +33 -0
  32. package/esm2015/lib/component/relation-address-tile/relation-address-tile.component.js +73 -0
  33. package/esm2015/lib/component/relation-address-tile/relation-address-tile.module.js +30 -0
  34. package/esm2015/lib/component/shared/transaction-article-text/transaction-article-text.component.js +118 -0
  35. package/esm2015/lib/component/shared/transaction-article-text/transaction-article-text.module.js +31 -0
  36. package/esm2015/lib/component/shared/transaction-article-text-overview/transaction-article-text-overview.component.js +129 -0
  37. package/esm2015/lib/component/shared/transaction-article-text-overview/transaction-article-text-overview.module.js +34 -0
  38. package/esm2015/lib/component/shopping-cart/shopping-cart.component.js +57 -0
  39. package/esm2015/lib/component/shopping-cart/shopping-cart.module.js +27 -0
  40. package/esm2015/lib/component/shopping-cart-preview/shopping-cart-preview.component.js +51 -0
  41. package/esm2015/lib/component/shopping-cart-preview/shopping-cart-preview.module.js +29 -0
  42. package/esm2015/lib/component/stepper/component/stepper-step.component.js +40 -0
  43. package/esm2015/lib/component/stepper/stepper.component.js +126 -0
  44. package/esm2015/lib/component/stepper/stepper.module.js +26 -0
  45. package/esm2015/lib/component/transaction/transaction.component.js +96 -0
  46. package/esm2015/lib/component/transaction/transaction.module.js +39 -0
  47. package/esm2015/lib/component/transaction-header/transaction-header.component.js +36 -0
  48. package/esm2015/lib/component/transaction-header/transaction-header.module.js +27 -0
  49. package/esm2015/lib/component/transaction-header-contact/transaction-header-contact.component.js +34 -0
  50. package/esm2015/lib/component/transaction-header-contact/transaction-header-contact.module.js +19 -0
  51. package/esm2015/lib/component/transaction-header-delivery/transaction-header-delivery.component.js +57 -0
  52. package/esm2015/lib/component/transaction-header-delivery/transaction-header-delivery.module.js +21 -0
  53. package/esm2015/lib/component/transaction-header-relation/transaction-header-relation.component.js +35 -0
  54. package/esm2015/lib/component/transaction-header-relation/transaction-header-relation.module.js +19 -0
  55. package/esm2015/lib/component/transaction-line/transaction-line.component.js +250 -0
  56. package/esm2015/lib/component/transaction-line/transaction-line.module.js +30 -0
  57. package/esm2015/lib/component/transaction-line-grid/transaction-line-grid.component.js +23 -0
  58. package/esm2015/lib/component/transaction-line-grid/transaction-line-grid.module.js +21 -0
  59. package/esm2015/lib/component/transaction-lines/transaction-lines.component.js +117 -0
  60. package/esm2015/lib/component/transaction-lines/transaction-lines.module.js +31 -0
  61. package/esm2015/lib/component/transaction-lines-grid/transaction-lines-grid.component.js +58 -0
  62. package/esm2015/lib/component/transaction-lines-grid/transaction-lines-grid.module.js +26 -0
  63. package/esm2015/lib/component/transaction-totals/transaction-totals.component.js +44 -0
  64. package/esm2015/lib/component/transaction-totals/transaction-totals.module.js +23 -0
  65. package/esm2015/lib/enum/content-view-mode.enum.js +10 -0
  66. package/esm2015/lib/enum/icon.enum.js +17 -0
  67. package/esm2015/lib/enum/language-code.enum.js +8 -0
  68. package/esm2015/lib/enum/order-discount-type.enum.js +7 -0
  69. package/esm2015/lib/enum/time-size.type.js +10 -0
  70. package/esm2015/lib/factory/business-object-factory.js +120 -0
  71. package/esm2015/lib/factory/decorators/boolean.decorator.js +102 -0
  72. package/esm2015/lib/factory/decorators/complex-array.decorator.js +55 -0
  73. package/esm2015/lib/factory/decorators/complex-field.decorator.js +57 -0
  74. package/esm2015/lib/factory/decorators/date-field.decorator.js +36 -0
  75. package/esm2015/lib/factory/decorators/string-number.decorator.js +43 -0
  76. package/esm2015/lib/model/business-object.js +81 -0
  77. package/esm2015/lib/model/icon-svg.js +16 -0
  78. package/esm2015/lib/model/standard-text.js +3 -0
  79. package/esm2015/lib/model/text-value-container.js +3 -0
  80. package/esm2015/lib/pipe/append.pipe.js +17 -0
  81. package/esm2015/lib/pipe/co-currency.pipe.js +47 -0
  82. package/esm2015/lib/pipe/date-duration.pipe.js +57 -0
  83. package/esm2015/lib/pipe/delivery-time.pipe.js +33 -0
  84. package/esm2015/lib/pipe/localize.pipe.js +28 -0
  85. package/esm2015/lib/pipe/pipe.module.js +37 -0
  86. package/esm2015/lib/pipe/safe-html.pipe.js +19 -0
  87. package/esm2015/lib/pipe/safe-style.pipe.js +19 -0
  88. package/esm2015/lib/service/dialog.service.js +65 -0
  89. package/esm2015/lib/service/dictionary.service.js +76 -0
  90. package/esm2015/lib/service/icon-cache.service.js +51 -0
  91. package/esm2015/lib/service/ione-connector-adapter.service.js +578 -0
  92. package/esm2015/lib/service/options.service.js +69 -0
  93. package/esm2015/lib/service/pending-reason.service.js +171 -0
  94. package/esm2015/lib/service/transaction.service.js +513 -0
  95. package/esm2015/lib/utils/array-utils.js +183 -0
  96. package/esm2015/lib/utils/is-nill.function.js +5 -0
  97. package/esm2015/lib/utils/string-utils.js +64 -0
  98. package/esm2015/public_api.js +28 -10
  99. package/fesm2015/colijnit-transaction.js +5287 -7210
  100. package/fesm2015/colijnit-transaction.js.map +1 -1
  101. package/{assets → lib/assets}/dictionary/text.properties.d.ts +0 -0
  102. package/{app → lib}/component/checkout/checkout-login/checkout-login.component.d.ts +0 -0
  103. package/lib/component/checkout/checkout-login/checkout-login.component.scss +35 -0
  104. package/{app → lib}/component/checkout/checkout-overview-delivery-address/checkout-overview-delivery-address.component.d.ts +0 -0
  105. package/lib/component/checkout/checkout-overview-delivery-address/checkout-overview-delivery-address.component.scss +0 -0
  106. package/{app → lib}/component/checkout/checkout-overview-delivery-edit/checkout-overview-delivery-edit.component.d.ts +38 -14
  107. package/lib/component/checkout/checkout-overview-delivery-edit/style/_layout.scss +91 -0
  108. package/lib/component/checkout/checkout-overview-delivery-edit/style/_material-definition.scss +12 -0
  109. package/lib/component/checkout/checkout-overview-delivery-edit/style/_theme.scss +17 -0
  110. package/lib/component/checkout/checkout-overview-delivery-edit/style/material.scss +8 -0
  111. package/{app → lib}/component/checkout/checkout-overview-relation-edit/checkout-overview-relation-edit.component.d.ts +12 -13
  112. package/lib/component/checkout/checkout-overview-relation-edit/style/_layout.scss +97 -0
  113. package/lib/component/checkout/checkout-overview-relation-edit/style/_material-definition.scss +17 -0
  114. package/lib/component/checkout/checkout-overview-relation-edit/style/_theme.scss +9 -0
  115. package/lib/component/checkout/checkout-overview-relation-edit/style/material.scss +6 -0
  116. package/{app → lib}/component/checkout/checkout-relation-suggestions-list/checkout-relation-suggestions-list.component.d.ts +2 -3
  117. package/lib/component/checkout/checkout-relation-suggestions-list/style/_layout.scss +7 -0
  118. package/lib/component/checkout/checkout-relation-suggestions-list/style/_material-definition.scss +0 -0
  119. package/lib/component/checkout/checkout-relation-suggestions-list/style/_theme.scss +6 -0
  120. package/lib/component/checkout/checkout-relation-suggestions-list/style/material.scss +5 -0
  121. package/lib/component/checkout/checkout-relation-suggestions-list-item/checkout-relation-suggestions-list-item.component.d.ts +8 -0
  122. package/lib/component/checkout/checkout-relation-suggestions-list-item/style/_layout.scss +34 -0
  123. package/lib/component/checkout/checkout-relation-suggestions-list-item/style/_material-definition.scss +8 -0
  124. package/lib/component/checkout/checkout-relation-suggestions-list-item/style/_theme.scss +6 -0
  125. package/lib/component/checkout/checkout-relation-suggestions-list-item/style/material.scss +4 -0
  126. package/lib/component/checkout/checkout.component.d.ts +27 -0
  127. package/lib/component/checkout/checkout.module.d.ts +2 -0
  128. package/lib/component/checkout/style/_layout.scss +6 -0
  129. package/lib/component/checkout/style/_material-definition.scss +0 -0
  130. package/lib/component/checkout/style/_theme.scss +8 -0
  131. package/lib/component/checkout/style/material.scss +8 -0
  132. package/lib/component/confirmation-dialog/confirmation-dialog.component.d.ts +8 -0
  133. package/lib/component/confirmation-dialog/confirmation-dialog.module.d.ts +2 -0
  134. package/lib/component/confirmation-dialog/style/_layout.scss +22 -0
  135. package/lib/component/confirmation-dialog/style/_material-definition.scss +2 -0
  136. package/lib/component/confirmation-dialog/style/_theme.scss +6 -0
  137. package/lib/component/confirmation-dialog/style/material.scss +4 -0
  138. package/lib/component/core/base/dialog-base.component.d.ts +4 -0
  139. package/lib/component/core/base/style/_layout.scss +7 -0
  140. package/lib/component/core/base/style/_material-definition.scss +0 -0
  141. package/lib/component/core/base/style/_theme.scss +6 -0
  142. package/lib/component/core/base/style/material.scss +4 -0
  143. package/{app → lib}/component/core/base/transaction-base.component.d.ts +7 -23
  144. package/lib/component/core/characteristic-answer/characteristic-answer.component.scss +20 -0
  145. package/{app → lib}/component/core/core.module.d.ts +0 -0
  146. package/lib/component/core/enum/app-popup-button-type.enum.d.ts +9 -0
  147. package/{app/component/common → lib/component/core}/icon/icon.component.d.ts +3 -2
  148. package/lib/component/core/icon/icon.component.scss +87 -0
  149. package/lib/component/core/image-display/image-display.component.d.ts +5 -0
  150. package/lib/component/core/image-display/style/_layout.scss +57 -0
  151. package/lib/component/core/image-display/style/_material-definition.scss +4 -0
  152. package/lib/component/core/image-display/style/_theme.scss +6 -0
  153. package/lib/component/core/image-display/style/material.scss +4 -0
  154. package/lib/component/core/relation/customer-groups.component.d.ts +13 -0
  155. package/{app → lib}/component/core/stock-status-indicator/stock-status-indicator.component.d.ts +0 -0
  156. package/lib/component/core/stock-status-indicator/stock-status-indicator.component.scss +47 -0
  157. package/lib/component/discount/discount.component.d.ts +19 -0
  158. package/lib/component/discount/discount.module.d.ts +2 -0
  159. package/lib/component/discount/style/_layout.scss +0 -0
  160. package/lib/component/discount/style/_material-definition.scss +0 -0
  161. package/lib/component/discount/style/_theme.scss +0 -0
  162. package/lib/component/discount/style/material.scss +0 -0
  163. package/lib/component/relation-address/relation-address.component.d.ts +28 -0
  164. package/lib/component/relation-address/relation-address.module.d.ts +2 -0
  165. package/lib/component/relation-address/style/_layout.scss +20 -0
  166. package/lib/component/relation-address/style/_material-definition.scss +3 -0
  167. package/lib/component/relation-address/style/_theme.scss +7 -0
  168. package/lib/component/relation-address/style/material.scss +5 -0
  169. package/lib/component/relation-address-select/relation-address-select.component.d.ts +33 -0
  170. package/lib/component/relation-address-select/relation-address-select.module.d.ts +2 -0
  171. package/lib/component/relation-address-select/style/_layout.scss +85 -0
  172. package/lib/component/relation-address-select/style/_material-definition.scss +4 -0
  173. package/lib/component/relation-address-select/style/_theme.scss +6 -0
  174. package/lib/component/relation-address-select/style/material.scss +5 -0
  175. package/lib/component/relation-address-tile/relation-address-tile.component.d.ts +13 -0
  176. package/lib/component/relation-address-tile/relation-address-tile.module.d.ts +2 -0
  177. package/lib/component/relation-address-tile/style/_layout.scss +63 -0
  178. package/lib/component/relation-address-tile/style/_material-definition.scss +15 -0
  179. package/lib/component/relation-address-tile/style/_theme.scss +51 -0
  180. package/lib/component/relation-address-tile/style/material.scss +4 -0
  181. package/lib/component/service-order/service-order.component.scss +154 -0
  182. package/lib/component/service-order/summary/transaction-delivery-summary.component.scss +22 -0
  183. package/lib/component/service-order/summary/transaction-summary-block.component.scss +109 -0
  184. package/lib/component/service-order/transaction-edit-article-text/transaction-edit-article-text.component.scss +0 -0
  185. package/lib/component/service-order/transaction-manager/transaction-manager.component.scss +54 -0
  186. package/lib/component/service-order/transaction-order-line-view/transaction-order-line-view.component.scss +90 -0
  187. package/lib/component/service-order/transaction-order-lines/transaction-order-lines.component.scss +85 -0
  188. package/lib/component/service-order/transaction-order-totals/transaction-order-totals.component.scss +26 -0
  189. package/lib/component/service-order/transaction-relation/transaction-relation-edit.component.scss +24 -0
  190. package/lib/component/service-order/transaction-sidebar/transaction-line-accordion.component.scss +0 -0
  191. package/lib/component/service-order/transaction-sidebar/transaction-sidebar-right.component.scss +17 -0
  192. package/lib/component/service-order/warehouse/warehouse.component.scss +54 -0
  193. package/lib/component/shared/transaction-article-text/style/_layout.scss +42 -0
  194. package/lib/component/shared/transaction-article-text/style/_material-definition.scss +7 -0
  195. package/lib/component/shared/transaction-article-text/style/_theme.scss +11 -0
  196. package/lib/component/shared/transaction-article-text/style/material.scss +5 -0
  197. package/lib/component/shared/transaction-article-text/transaction-article-text.component.d.ts +31 -0
  198. package/lib/component/shared/transaction-article-text/transaction-article-text.module.d.ts +2 -0
  199. package/lib/component/shared/transaction-article-text-overview/style/_layout.scss +56 -0
  200. package/lib/component/shared/transaction-article-text-overview/style/_material-definition.scss +9 -0
  201. package/lib/component/shared/transaction-article-text-overview/style/_theme.scss +9 -0
  202. package/lib/component/shared/transaction-article-text-overview/style/material.scss +4 -0
  203. package/lib/component/shared/transaction-article-text-overview/transaction-article-text-overview.component.d.ts +30 -0
  204. package/lib/component/shared/transaction-article-text-overview/transaction-article-text-overview.module.d.ts +2 -0
  205. package/lib/component/shopping-cart/shopping-cart.component.d.ts +15 -0
  206. package/lib/component/shopping-cart/shopping-cart.module.d.ts +2 -0
  207. package/lib/component/shopping-cart/style/_layout.scss +33 -0
  208. package/lib/component/shopping-cart/style/_material-definition.scss +10 -0
  209. package/lib/component/shopping-cart/style/_theme.scss +14 -0
  210. package/lib/component/shopping-cart/style/material.scss +4 -0
  211. package/lib/component/shopping-cart-OLD/shopping-cart-manager/shopping-cart-manager.component.scss +54 -0
  212. package/lib/component/shopping-cart-preview/shopping-cart-preview.component.d.ts +11 -0
  213. package/lib/component/shopping-cart-preview/shopping-cart-preview.module.d.ts +2 -0
  214. package/lib/component/shopping-cart-preview/style/_layout.scss +44 -0
  215. package/lib/component/shopping-cart-preview/style/_material-definition.scss +20 -0
  216. package/lib/component/shopping-cart-preview/style/_theme.scss +17 -0
  217. package/lib/component/shopping-cart-preview/style/material.scss +4 -0
  218. package/lib/component/stepper/component/stepper-step.component.d.ts +12 -0
  219. package/lib/component/stepper/stepper.component.d.ts +30 -0
  220. package/lib/component/stepper/stepper.module.d.ts +2 -0
  221. package/lib/component/stepper/style/_layout.scss +75 -0
  222. package/lib/component/stepper/style/_material-definition.scss +11 -0
  223. package/lib/component/stepper/style/_theme.scss +7 -0
  224. package/lib/component/stepper/style/material.scss +4 -0
  225. package/lib/component/transaction/style/_layout.scss +25 -0
  226. package/lib/component/transaction/style/_material-definition.scss +7 -0
  227. package/lib/component/transaction/style/_theme.scss +24 -0
  228. package/lib/component/transaction/style/material.scss +8 -0
  229. package/lib/component/transaction/transaction.component.d.ts +24 -0
  230. package/lib/component/transaction/transaction.module.d.ts +2 -0
  231. package/lib/component/transaction-header/style/_layout.scss +38 -0
  232. package/lib/component/transaction-header/style/_material-definition.scss +8 -0
  233. package/lib/component/transaction-header/style/_theme.scss +11 -0
  234. package/lib/component/transaction-header/style/material.scss +7 -0
  235. package/lib/component/transaction-header/transaction-header.component.d.ts +9 -0
  236. package/lib/component/transaction-header/transaction-header.module.d.ts +2 -0
  237. package/lib/component/transaction-header-contact/style/_layout.scss +25 -0
  238. package/lib/component/transaction-header-contact/style/_material-definition.scss +7 -0
  239. package/lib/component/transaction-header-contact/style/_theme.scss +11 -0
  240. package/lib/component/transaction-header-contact/style/material.scss +4 -0
  241. package/lib/component/transaction-header-contact/transaction-header-contact.component.d.ts +4 -0
  242. package/lib/component/transaction-header-contact/transaction-header-contact.module.d.ts +2 -0
  243. package/lib/component/transaction-header-delivery/style/_layout.scss +54 -0
  244. package/lib/component/transaction-header-delivery/style/_material-definition.scss +12 -0
  245. package/lib/component/transaction-header-delivery/style/_theme.scss +24 -0
  246. package/lib/component/transaction-header-delivery/style/material.scss +4 -0
  247. package/lib/component/transaction-header-delivery/transaction-header-delivery.component.d.ts +13 -0
  248. package/lib/component/transaction-header-delivery/transaction-header-delivery.module.d.ts +2 -0
  249. package/lib/component/transaction-header-relation/style/_layout.scss +25 -0
  250. package/lib/component/transaction-header-relation/style/_material-definition.scss +7 -0
  251. package/lib/component/transaction-header-relation/style/_theme.scss +11 -0
  252. package/lib/component/transaction-header-relation/style/material.scss +4 -0
  253. package/lib/component/transaction-header-relation/transaction-header-relation.component.d.ts +4 -0
  254. package/lib/component/transaction-header-relation/transaction-header-relation.module.d.ts +2 -0
  255. package/lib/component/transaction-line/style/_layout.scss +143 -0
  256. package/lib/component/transaction-line/style/_material-definition.scss +29 -0
  257. package/lib/component/transaction-line/style/_theme.scss +36 -0
  258. package/lib/component/transaction-line/style/material.scss +8 -0
  259. package/lib/component/transaction-line/transaction-line.component.d.ts +46 -0
  260. package/lib/component/transaction-line/transaction-line.module.d.ts +2 -0
  261. package/lib/component/transaction-line-grid/style/_layout.scss +6 -0
  262. package/lib/component/transaction-line-grid/style/_material-definition.scss +0 -0
  263. package/lib/component/transaction-line-grid/style/_theme.scss +6 -0
  264. package/lib/component/transaction-line-grid/style/material.scss +4 -0
  265. package/lib/component/transaction-line-grid/transaction-line-grid.component.d.ts +5 -0
  266. package/lib/component/transaction-line-grid/transaction-line-grid.module.d.ts +2 -0
  267. package/lib/component/transaction-lines/style/_layout.scss +33 -0
  268. package/lib/component/transaction-lines/style/_material-definition.scss +3 -0
  269. package/lib/component/transaction-lines/style/_theme.scss +19 -0
  270. package/lib/component/transaction-lines/style/material.scss +7 -0
  271. package/lib/component/transaction-lines/transaction-lines.component.d.ts +31 -0
  272. package/lib/component/transaction-lines/transaction-lines.module.d.ts +2 -0
  273. package/lib/component/transaction-lines-grid/style/_layout.scss +37 -0
  274. package/lib/component/transaction-lines-grid/style/_material-definition.scss +19 -0
  275. package/lib/component/transaction-lines-grid/style/_theme.scss +15 -0
  276. package/lib/component/transaction-lines-grid/style/material.scss +5 -0
  277. package/lib/component/transaction-lines-grid/transaction-lines-grid.component.d.ts +17 -0
  278. package/lib/component/transaction-lines-grid/transaction-lines-grid.module.d.ts +2 -0
  279. package/lib/component/transaction-totals/style/_layout.scss +35 -0
  280. package/lib/component/transaction-totals/style/_material-definition.scss +15 -0
  281. package/lib/component/transaction-totals/style/_theme.scss +10 -0
  282. package/lib/component/transaction-totals/style/material.scss +4 -0
  283. package/lib/component/transaction-totals/transaction-totals.component.d.ts +9 -0
  284. package/lib/component/transaction-totals/transaction-totals.module.d.ts +2 -0
  285. package/{app → lib}/enum/content-view-mode.enum.d.ts +0 -0
  286. package/lib/enum/icon.enum.d.ts +15 -0
  287. package/{app → lib}/enum/language-code.enum.d.ts +0 -0
  288. package/{app → lib}/enum/order-discount-type.enum.d.ts +0 -0
  289. package/{app → lib}/enum/time-size.type.d.ts +0 -0
  290. package/{factory → lib/factory}/business-object-factory.d.ts +1 -1
  291. package/{factory → lib/factory}/decorators/boolean.decorator.d.ts +0 -0
  292. package/{factory → lib/factory}/decorators/complex-array.decorator.d.ts +0 -0
  293. package/{factory → lib/factory}/decorators/complex-field.decorator.d.ts +0 -0
  294. package/{factory → lib/factory}/decorators/date-field.decorator.d.ts +0 -0
  295. package/{factory → lib/factory}/decorators/string-number.decorator.d.ts +0 -0
  296. package/{app → lib}/model/business-object.d.ts +0 -0
  297. package/lib/model/icon-svg.d.ts +4 -0
  298. package/{app → lib}/model/standard-text.d.ts +0 -0
  299. package/{app → lib}/model/text-value-container.d.ts +0 -0
  300. package/{app → lib}/pipe/append.pipe.d.ts +0 -0
  301. package/{app → lib}/pipe/co-currency.pipe.d.ts +0 -0
  302. package/{app → lib}/pipe/date-duration.pipe.d.ts +0 -0
  303. package/{app → lib}/pipe/delivery-time.pipe.d.ts +0 -0
  304. package/{app → lib}/pipe/localize.pipe.d.ts +0 -0
  305. package/lib/pipe/pipe.module.d.ts +2 -0
  306. package/lib/pipe/safe-html.pipe.d.ts +7 -0
  307. package/{app/pipe/safe-style-pipe.d.ts → lib/pipe/safe-style.pipe.d.ts} +0 -0
  308. package/lib/service/dialog.service.d.ts +11 -0
  309. package/{app → lib}/service/dictionary.service.d.ts +0 -0
  310. package/lib/service/icon-cache.service.d.ts +18 -0
  311. package/{app → lib}/service/ione-connector-adapter.service.d.ts +12 -7
  312. package/lib/service/options.service.d.ts +12 -0
  313. package/lib/service/pending-reason.service.d.ts +31 -0
  314. package/{app → lib}/service/transaction.service.d.ts +13 -47
  315. package/lib/style/_mixin.scss +9 -0
  316. package/lib/style/_variables.scss +93 -0
  317. package/{utils → lib/utils}/array-utils.d.ts +0 -0
  318. package/{utils → lib/utils}/is-nill.function.d.ts +0 -0
  319. package/{app → lib}/utils/string-utils.d.ts +0 -0
  320. package/package.json +27 -34
  321. package/public_api.d.ts +27 -6
  322. package/app/component/checkout/checkout/checkout.component.d.ts +0 -32
  323. package/app/component/checkout/checkout-overview/checkout-overview.component.d.ts +0 -42
  324. package/app/component/checkout/checkout-overview-block/checkout-overview-block.component.d.ts +0 -12
  325. package/app/component/checkout/checkout-overview-relation-address/checkout-overview-relation-address.component.d.ts +0 -22
  326. package/app/component/checkout/checkout-relation-suggestions-list-item/checkout-relation-suggestions-list-item.component.d.ts +0 -12
  327. package/app/component/checkout/ione-checkout.component.d.ts +0 -41
  328. package/app/component/checkout/ione-checkout.module.d.ts +0 -2
  329. package/app/component/checkout/retail-transaction-checkout/retail-transaction-checkout.component.d.ts +0 -13
  330. package/app/component/common/image-display/image-display.component.d.ts +0 -13
  331. package/app/component/common/no-image-display/no-image-display.component.d.ts +0 -5
  332. package/app/component/core/base/default-ok-cancel-buttons.component.d.ts +0 -13
  333. package/app/component/core/characteristic-answer/characteristic-answer.component.d.ts +0 -22
  334. package/app/component/core/directive/template-wrapper.directive.d.ts +0 -13
  335. package/app/component/service-order/ione-service-order-module.d.ts +0 -2
  336. package/app/component/service-order/ione-service-order.component.d.ts +0 -25
  337. package/app/component/service-order/service-order.component.d.ts +0 -52
  338. package/app/component/service-order/summary/transaction-article-summary.component.d.ts +0 -17
  339. package/app/component/service-order/summary/transaction-delivery-summary.component.d.ts +0 -20
  340. package/app/component/service-order/summary/transaction-order-summary.component.d.ts +0 -16
  341. package/app/component/service-order/summary/transaction-payment-info.component.d.ts +0 -14
  342. package/app/component/service-order/summary/transaction-product-contract-summary.component.d.ts +0 -7
  343. package/app/component/service-order/summary/transaction-product-summary.component.d.ts +0 -15
  344. package/app/component/service-order/summary/transaction-service-status.component.d.ts +0 -15
  345. package/app/component/service-order/summary/transaction-service-summary.component.d.ts +0 -15
  346. package/app/component/service-order/summary/transaction-summary-block.component.d.ts +0 -16
  347. package/app/component/service-order/transaction-article-text/transaction-article-text.component.d.ts +0 -33
  348. package/app/component/service-order/transaction-article-text-overview/transaction-article-text-overview.component.d.ts +0 -23
  349. package/app/component/service-order/transaction-edit-article-text/transaction-edit-article-text.component.d.ts +0 -19
  350. package/app/component/service-order/transaction-header-block/transaction-header-block.component.d.ts +0 -15
  351. package/app/component/service-order/transaction-manager/transaction-manager.component.d.ts +0 -64
  352. package/app/component/service-order/transaction-order-line-view/transaction-order-line-view.component.d.ts +0 -16
  353. package/app/component/service-order/transaction-order-lines/transaction-order-lines.component.d.ts +0 -25
  354. package/app/component/service-order/transaction-order-totals/transaction-order-totals.component.d.ts +0 -6
  355. package/app/component/service-order/transaction-relation/transaction-relation-address.component.d.ts +0 -22
  356. package/app/component/service-order/transaction-relation/transaction-relation-edit.component.d.ts +0 -29
  357. package/app/component/service-order/transaction-sidebar/transaction-line-accordion.component.d.ts +0 -11
  358. package/app/component/service-order/transaction-sidebar/transaction-sidebar-right.component.d.ts +0 -26
  359. package/app/component/service-order/warehouse/warehouse.component.d.ts +0 -35
  360. package/app/component/shopping-cart/ione-shopping-cart.component.d.ts +0 -71
  361. package/app/component/shopping-cart/ione-shopping-cart.module.d.ts +0 -2
  362. package/app/component/shopping-cart/shopping-cart/shopping-cart.component.d.ts +0 -61
  363. package/app/component/shopping-cart/shopping-cart-line/shopping-cart-line.component.d.ts +0 -34
  364. package/app/component/shopping-cart/shopping-cart-manager/shopping-cart-manager.component.d.ts +0 -91
  365. package/app/enum/checkout-steps.enum.d.ts +0 -7
  366. package/app/enum/direction.enum.d.ts +0 -6
  367. package/app/model/transaction-add-text-line-request.d.ts +0 -9
  368. package/app/service/options.service.d.ts +0 -14
  369. package/app/service/transaction-event.service.d.ts +0 -53
  370. package/css/styles.css +0 -38
  371. package/enum/position-grid-row.enum.d.ts +0 -4
  372. package/esm2015/app/component/checkout/checkout/checkout.component.js +0 -149
  373. package/esm2015/app/component/checkout/checkout-login/checkout-login.component.js +0 -106
  374. package/esm2015/app/component/checkout/checkout-overview/checkout-overview.component.js +0 -185
  375. package/esm2015/app/component/checkout/checkout-overview-block/checkout-overview-block.component.js +0 -47
  376. package/esm2015/app/component/checkout/checkout-overview-delivery-address/checkout-overview-delivery-address.component.js +0 -47
  377. package/esm2015/app/component/checkout/checkout-overview-delivery-edit/checkout-overview-delivery-edit.component.js +0 -420
  378. package/esm2015/app/component/checkout/checkout-overview-relation-address/checkout-overview-relation-address.component.js +0 -115
  379. package/esm2015/app/component/checkout/checkout-overview-relation-edit/checkout-overview-relation-edit.component.js +0 -396
  380. package/esm2015/app/component/checkout/checkout-relation-suggestions-list/checkout-relation-suggestions-list.component.js +0 -33
  381. package/esm2015/app/component/checkout/checkout-relation-suggestions-list-item/checkout-relation-suggestions-list-item.component.js +0 -53
  382. package/esm2015/app/component/checkout/ione-checkout.component.js +0 -137
  383. package/esm2015/app/component/checkout/ione-checkout.module.js +0 -76
  384. package/esm2015/app/component/checkout/retail-transaction-checkout/retail-transaction-checkout.component.js +0 -53
  385. package/esm2015/app/component/common/icon/icon.component.js +0 -32
  386. package/esm2015/app/component/common/image-display/image-display.component.js +0 -41
  387. package/esm2015/app/component/common/no-image-display/no-image-display.component.js +0 -26
  388. package/esm2015/app/component/core/base/default-ok-cancel-buttons.component.js +0 -39
  389. package/esm2015/app/component/core/base/transaction-base.component.js +0 -146
  390. package/esm2015/app/component/core/characteristic-answer/characteristic-answer.component.js +0 -100
  391. package/esm2015/app/component/core/core.module.js +0 -43
  392. package/esm2015/app/component/core/directive/template-wrapper.directive.js +0 -69
  393. package/esm2015/app/component/core/stock-status-indicator/stock-status-indicator.component.js +0 -24
  394. package/esm2015/app/component/service-order/ione-service-order-module.js +0 -114
  395. package/esm2015/app/component/service-order/ione-service-order.component.js +0 -96
  396. package/esm2015/app/component/service-order/service-order.component.js +0 -199
  397. package/esm2015/app/component/service-order/summary/transaction-article-summary.component.js +0 -55
  398. package/esm2015/app/component/service-order/summary/transaction-delivery-summary.component.js +0 -59
  399. package/esm2015/app/component/service-order/summary/transaction-order-summary.component.js +0 -43
  400. package/esm2015/app/component/service-order/summary/transaction-payment-info.component.js +0 -35
  401. package/esm2015/app/component/service-order/summary/transaction-product-contract-summary.component.js +0 -38
  402. package/esm2015/app/component/service-order/summary/transaction-product-summary.component.js +0 -41
  403. package/esm2015/app/component/service-order/summary/transaction-service-status.component.js +0 -37
  404. package/esm2015/app/component/service-order/summary/transaction-service-summary.component.js +0 -38
  405. package/esm2015/app/component/service-order/summary/transaction-summary-block.component.js +0 -53
  406. package/esm2015/app/component/service-order/transaction-article-text/transaction-article-text.component.js +0 -140
  407. package/esm2015/app/component/service-order/transaction-article-text-overview/transaction-article-text-overview.component.js +0 -105
  408. package/esm2015/app/component/service-order/transaction-edit-article-text/transaction-edit-article-text.component.js +0 -73
  409. package/esm2015/app/component/service-order/transaction-header-block/transaction-header-block.component.js +0 -83
  410. package/esm2015/app/component/service-order/transaction-manager/transaction-manager.component.js +0 -314
  411. package/esm2015/app/component/service-order/transaction-order-line-view/transaction-order-line-view.component.js +0 -76
  412. package/esm2015/app/component/service-order/transaction-order-lines/transaction-order-lines.component.js +0 -71
  413. package/esm2015/app/component/service-order/transaction-order-totals/transaction-order-totals.component.js +0 -36
  414. package/esm2015/app/component/service-order/transaction-relation/transaction-relation-address.component.js +0 -116
  415. package/esm2015/app/component/service-order/transaction-relation/transaction-relation-edit.component.js +0 -225
  416. package/esm2015/app/component/service-order/transaction-sidebar/transaction-line-accordion.component.js +0 -172
  417. package/esm2015/app/component/service-order/transaction-sidebar/transaction-sidebar-right.component.js +0 -120
  418. package/esm2015/app/component/service-order/warehouse/warehouse.component.js +0 -133
  419. package/esm2015/app/component/shopping-cart/ione-shopping-cart.component.js +0 -185
  420. package/esm2015/app/component/shopping-cart/ione-shopping-cart.module.js +0 -62
  421. package/esm2015/app/component/shopping-cart/shopping-cart/shopping-cart.component.js +0 -294
  422. package/esm2015/app/component/shopping-cart/shopping-cart-line/shopping-cart-line.component.js +0 -172
  423. package/esm2015/app/component/shopping-cart/shopping-cart-manager/shopping-cart-manager.component.js +0 -451
  424. package/esm2015/app/enum/checkout-steps.enum.js +0 -10
  425. package/esm2015/app/enum/content-view-mode.enum.js +0 -10
  426. package/esm2015/app/enum/direction.enum.js +0 -9
  427. package/esm2015/app/enum/language-code.enum.js +0 -8
  428. package/esm2015/app/enum/order-discount-type.enum.js +0 -7
  429. package/esm2015/app/enum/time-size.type.js +0 -10
  430. package/esm2015/app/model/business-object.js +0 -81
  431. package/esm2015/app/model/standard-text.js +0 -3
  432. package/esm2015/app/model/text-value-container.js +0 -3
  433. package/esm2015/app/model/transaction-add-text-line-request.js +0 -11
  434. package/esm2015/app/pipe/append.pipe.js +0 -17
  435. package/esm2015/app/pipe/co-currency.pipe.js +0 -47
  436. package/esm2015/app/pipe/date-duration.pipe.js +0 -57
  437. package/esm2015/app/pipe/delivery-time.pipe.js +0 -33
  438. package/esm2015/app/pipe/localize.pipe.js +0 -28
  439. package/esm2015/app/pipe/safe-style-pipe.js +0 -19
  440. package/esm2015/app/service/dictionary.service.js +0 -76
  441. package/esm2015/app/service/ione-connector-adapter.service.js +0 -553
  442. package/esm2015/app/service/options.service.js +0 -92
  443. package/esm2015/app/service/transaction-event.service.js +0 -26
  444. package/esm2015/app/service/transaction.service.js +0 -572
  445. package/esm2015/app/utils/string-utils.js +0 -64
  446. package/esm2015/assets/dictionary/text.properties.js +0 -332
  447. package/esm2015/enum/position-grid-row.enum.js +0 -6
  448. package/esm2015/factory/business-object-factory.js +0 -120
  449. package/esm2015/factory/decorators/boolean.decorator.js +0 -102
  450. package/esm2015/factory/decorators/complex-array.decorator.js +0 -55
  451. package/esm2015/factory/decorators/complex-field.decorator.js +0 -57
  452. package/esm2015/factory/decorators/date-field.decorator.js +0 -36
  453. package/esm2015/factory/decorators/string-number.decorator.js +0 -43
  454. package/esm2015/utils/array-utils.js +0 -183
  455. package/esm2015/utils/is-nill.function.js +0 -5
@@ -1,102 +0,0 @@
1
- import { GetYesNoDbBooleanValue } from "@colijnit/transactionapi/build/enum/yes-no-db-type.enum";
2
- import { GetTrueFalseDbBooleanValue } from "@colijnit/transactionapi/build/enum/true-false-db-type.enum";
3
- import { GetOneZeroDbBooleanValue } from "@colijnit/transactionapi/build/enum/one-zero-bool-db-type.enum";
4
- import { GetLogicalBooleanValue } from "@colijnit/transactionapi/build/enum/db-boolean-value-type.enum";
5
- const PROP_META_KEY_JN = "booleanTextJN";
6
- const PROP_META_KEY_TF = "booleanTextTF";
7
- const PROP_META_KEY_10 = "booleanText10";
8
- /**
9
- * There are 'J', 'T', 'N', 'F', 0 and 1 'boolean values' in the database. These should be translated to true and false boolean values in
10
- * our client application.
11
- *
12
- * The values 'J' and 'N' seem to be most commonly used. This is the default setting when using this decorator.
13
- * You can pass 'T' or 1 for the other variants as follows:
14
- *
15
- * Usage:
16
- *
17
- * @BooleanText() or @BooleanText("J") (the default, uses YesNoDbType char values)
18
- * public foo: boolean // 'J' and 'N' become true and false after BusinessObjectFactoryService and -SerializerService processing
19
- *
20
- * @BooleanText('T') (uses TrueFalseDbType char values)
21
- * public bar: boolean // 'T' and 'F' become true and false after BusinessObjectFactoryService and -SerializerService processing
22
- *
23
- * @BooleanText(1)
24
- * public baz: boolean // 1 and 0 become true and false after BusinessObjectFactoryService and -SerializerService processing
25
- */
26
- export function BooleanText(type) {
27
- return function (target, propertyKey) {
28
- if (!target || !propertyKey) {
29
- return;
30
- }
31
- // by default, it's a J N boolean text
32
- if (!type || type === "J") {
33
- Reflect.defineMetadata(PROP_META_KEY_JN, true, target, propertyKey);
34
- }
35
- else if (type === "T") {
36
- Reflect.defineMetadata(PROP_META_KEY_TF, true, target, propertyKey);
37
- }
38
- else if (type === 1) {
39
- Reflect.defineMetadata(PROP_META_KEY_10, true, target, propertyKey);
40
- }
41
- };
42
- }
43
- // Utility function holder of the BooleanTextDecorator decorator.
44
- export class BooleanTextDecorator {
45
- /**
46
- * Returns whether given property (as a string) on given object is a boolean text field. That is, it's a field that is decorated
47
- * with the @BooleanText decorator.
48
- */
49
- static IsBooleanTextField(target, propertyKey) {
50
- if (!target || !propertyKey || typeof target !== "object") {
51
- return false;
52
- }
53
- return (Reflect.getMetadata(PROP_META_KEY_JN, target, propertyKey) === true
54
- ||
55
- Reflect.getMetadata(PROP_META_KEY_TF, target, propertyKey) === true
56
- ||
57
- Reflect.getMetadata(PROP_META_KEY_10, target, propertyKey) === true);
58
- }
59
- /**
60
- * Returns the logical true or false value of given character ('J', 'N', 'T' or 'F') or number (0 or 1).
61
- * Returns UNDEFINED if given boolChar was not recognised as a boolean text.
62
- */
63
- static GetLogicalBooleanValue(dbBoolChar) {
64
- return GetLogicalBooleanValue(dbBoolChar);
65
- }
66
- /**
67
- * Returns the boolean character / number of given logical bool property on target object. Uses its @BooleanText() annotation to decide
68
- * what character / number to return.
69
- * Used in BusinessObjectSerializerServiceService to convert logical bools to their original boolean character.
70
- * @returns {string|number} The original, reverse-engineered boolean character (or number) of given object property, or undefined.
71
- */
72
- static GetDbBooleanValue(target, propertyKey) {
73
- if (!target || !propertyKey || typeof target !== "object") {
74
- return undefined;
75
- }
76
- let dbBoolVal = undefined;
77
- const curBoolVal = target[propertyKey];
78
- if (BooleanTextDecorator._IsJaNeeProp(target, propertyKey)) {
79
- dbBoolVal = GetYesNoDbBooleanValue(curBoolVal);
80
- }
81
- else if (BooleanTextDecorator._IsTrueFalseProp(target, propertyKey)) {
82
- dbBoolVal = GetTrueFalseDbBooleanValue(curBoolVal);
83
- }
84
- else if (BooleanTextDecorator._IsZeroOneProp(target, propertyKey)) {
85
- dbBoolVal = GetOneZeroDbBooleanValue(curBoolVal);
86
- }
87
- return dbBoolVal;
88
- }
89
- static _IsJaNeeProp(target, propertyKey) {
90
- return BooleanTextDecorator._IsProp(PROP_META_KEY_JN, target, propertyKey);
91
- }
92
- static _IsTrueFalseProp(target, propertyKey) {
93
- return BooleanTextDecorator._IsProp(PROP_META_KEY_TF, target, propertyKey);
94
- }
95
- static _IsZeroOneProp(target, propertyKey) {
96
- return BooleanTextDecorator._IsProp(PROP_META_KEY_10, target, propertyKey);
97
- }
98
- static _IsProp(prop, target, propertyKey) {
99
- return !!target && !!propertyKey && typeof target === "object" && Reflect.hasMetadata(prop, target, propertyKey);
100
- }
101
- }
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi5kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZmFjdG9yeS9kZWNvcmF0b3JzL2Jvb2xlYW4uZGVjb3JhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLHlEQUF5RCxDQUFDO0FBQy9GLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLDZEQUE2RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLGdFQUFnRSxDQUFDO0FBQ3hHLE9BQU8sRUFBcUIsc0JBQXNCLEVBQUMsTUFBTSxnRUFBZ0UsQ0FBQztBQUUxSCxNQUFNLGdCQUFnQixHQUFXLGVBQWUsQ0FBQztBQUNqRCxNQUFNLGdCQUFnQixHQUFXLGVBQWUsQ0FBQztBQUNqRCxNQUFNLGdCQUFnQixHQUFXLGVBQWUsQ0FBQztBQUVqRDs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUFDLElBQW9CO0lBQzVDLE9BQU8sVUFBVSxNQUFXLEVBQUUsV0FBbUI7UUFDN0MsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUN6QixPQUFPO1NBQ1Y7UUFDRCxzQ0FBc0M7UUFDdEMsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLEtBQUssR0FBRyxFQUFFO1lBQ3ZCLE9BQU8sQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQztTQUN2RTthQUFNLElBQUksSUFBSSxLQUFLLEdBQUcsRUFBRTtZQUNyQixPQUFPLENBQUMsY0FBYyxDQUFDLGdCQUFnQixFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUM7U0FDdkU7YUFBTSxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUU7WUFDbkIsT0FBTyxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1NBQ3ZFO0lBQ0wsQ0FBQyxDQUFDO0FBQ04sQ0FBQztBQUVELGlFQUFpRTtBQUNqRSxNQUFNLE9BQU8sb0JBQW9CO0lBRTdCOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxNQUFjLEVBQUUsV0FBbUI7UUFDaEUsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLFdBQVcsSUFBSSxPQUFPLE1BQU0sS0FBSyxRQUFRLEVBQUU7WUFDdkQsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFDRCxPQUFPLENBQ0gsT0FBTyxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsV0FBVyxDQUFDLEtBQUssSUFBSTs7Z0JBRW5FLE9BQU8sQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxLQUFLLElBQUk7O2dCQUVuRSxPQUFPLENBQUMsV0FBVyxDQUFDLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxXQUFXLENBQUMsS0FBSyxJQUFJLENBQ3RFLENBQUM7SUFDTixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLHNCQUFzQixDQUFDLFVBQXVDO1FBQ3hFLE9BQU8sc0JBQXNCLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLGlCQUFpQixDQUFDLE1BQWMsRUFBRSxXQUFtQjtRQUMvRCxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsV0FBVyxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRTtZQUN2RCxPQUFPLFNBQVMsQ0FBQztTQUNwQjtRQUVELElBQUksU0FBUyxHQUFRLFNBQVMsQ0FBQztRQUUvQixNQUFNLFVBQVUsR0FBWSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFaEQsSUFBSSxvQkFBb0IsQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxFQUFFO1lBQ3hELFNBQVMsR0FBRyxzQkFBc0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUNsRDthQUFNLElBQUksb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxFQUFFO1lBQ25FLFNBQVMsR0FBRywwQkFBMEIsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN0RDthQUFNLElBQUksb0JBQW9CLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUMsRUFBRTtZQUNqRSxTQUFTLEdBQUcsd0JBQXdCLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDcEQ7UUFFRCxPQUFPLFNBQXNDLENBQUM7SUFDbEQsQ0FBQztJQUVPLE1BQU0sQ0FBQyxZQUFZLENBQUMsTUFBYyxFQUFFLFdBQW1CO1FBQzNELE9BQU8sb0JBQW9CLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRU8sTUFBTSxDQUFDLGdCQUFnQixDQUFDLE1BQWMsRUFBRSxXQUFtQjtRQUMvRCxPQUFPLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUVPLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBYyxFQUFFLFdBQW1CO1FBQzdELE9BQU8sb0JBQW9CLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFZLEVBQUUsTUFBYyxFQUFFLFdBQW1CO1FBQ3BFLE9BQU8sQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsV0FBVyxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsSUFBSSxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDckgsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtHZXRZZXNOb0RiQm9vbGVhblZhbHVlfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL2VudW0veWVzLW5vLWRiLXR5cGUuZW51bVwiO1xyXG5pbXBvcnQge0dldFRydWVGYWxzZURiQm9vbGVhblZhbHVlfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL2VudW0vdHJ1ZS1mYWxzZS1kYi10eXBlLmVudW1cIjtcclxuaW1wb3J0IHtHZXRPbmVaZXJvRGJCb29sZWFuVmFsdWV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvZW51bS9vbmUtemVyby1ib29sLWRiLXR5cGUuZW51bVwiO1xyXG5pbXBvcnQge0RiQm9vbGVhblZhbHVlVHlwZSwgR2V0TG9naWNhbEJvb2xlYW5WYWx1ZX0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL2RiLWJvb2xlYW4tdmFsdWUtdHlwZS5lbnVtXCI7XHJcblxyXG5jb25zdCBQUk9QX01FVEFfS0VZX0pOOiBzdHJpbmcgPSBcImJvb2xlYW5UZXh0Sk5cIjtcclxuY29uc3QgUFJPUF9NRVRBX0tFWV9URjogc3RyaW5nID0gXCJib29sZWFuVGV4dFRGXCI7XHJcbmNvbnN0IFBST1BfTUVUQV9LRVlfMTA6IHN0cmluZyA9IFwiYm9vbGVhblRleHQxMFwiO1xyXG5cclxuLyoqXHJcbiAqIFRoZXJlIGFyZSAnSicsICdUJywgJ04nLCAnRicsIDAgYW5kIDEgJ2Jvb2xlYW4gdmFsdWVzJyBpbiB0aGUgZGF0YWJhc2UuIFRoZXNlIHNob3VsZCBiZSB0cmFuc2xhdGVkIHRvIHRydWUgYW5kIGZhbHNlIGJvb2xlYW4gdmFsdWVzIGluXHJcbiAqIG91ciBjbGllbnQgYXBwbGljYXRpb24uXHJcbiAqXHJcbiAqIFRoZSB2YWx1ZXMgJ0onIGFuZCAnTicgc2VlbSB0byBiZSBtb3N0IGNvbW1vbmx5IHVzZWQuIFRoaXMgaXMgdGhlIGRlZmF1bHQgc2V0dGluZyB3aGVuIHVzaW5nIHRoaXMgZGVjb3JhdG9yLlxyXG4gKiBZb3UgY2FuIHBhc3MgJ1QnIG9yIDEgZm9yIHRoZSBvdGhlciB2YXJpYW50cyBhcyBmb2xsb3dzOlxyXG4gKlxyXG4gKiBVc2FnZTpcclxuICpcclxuICogQEJvb2xlYW5UZXh0KCkgb3IgQEJvb2xlYW5UZXh0KFwiSlwiKSAodGhlIGRlZmF1bHQsIHVzZXMgWWVzTm9EYlR5cGUgY2hhciB2YWx1ZXMpXHJcbiAqIHB1YmxpYyBmb286IGJvb2xlYW4gLy8gJ0onIGFuZCAnTicgYmVjb21lIHRydWUgYW5kIGZhbHNlIGFmdGVyIEJ1c2luZXNzT2JqZWN0RmFjdG9yeVNlcnZpY2UgYW5kIC1TZXJpYWxpemVyU2VydmljZSBwcm9jZXNzaW5nXHJcbiAqXHJcbiAqIEBCb29sZWFuVGV4dCgnVCcpICh1c2VzIFRydWVGYWxzZURiVHlwZSBjaGFyIHZhbHVlcylcclxuICogcHVibGljIGJhcjogYm9vbGVhbiAvLyAnVCcgYW5kICdGJyBiZWNvbWUgdHJ1ZSBhbmQgZmFsc2UgYWZ0ZXIgQnVzaW5lc3NPYmplY3RGYWN0b3J5U2VydmljZSBhbmQgLVNlcmlhbGl6ZXJTZXJ2aWNlIHByb2Nlc3NpbmdcclxuICpcclxuICogQEJvb2xlYW5UZXh0KDEpXHJcbiAqIHB1YmxpYyBiYXo6IGJvb2xlYW4gLy8gMSBhbmQgMCBiZWNvbWUgdHJ1ZSBhbmQgZmFsc2UgYWZ0ZXIgQnVzaW5lc3NPYmplY3RGYWN0b3J5U2VydmljZSBhbmQgLVNlcmlhbGl6ZXJTZXJ2aWNlIHByb2Nlc3NpbmdcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBCb29sZWFuVGV4dCh0eXBlPzogXCJKXCIgfCBcIlRcIiB8IDEpOiBQcm9wZXJ0eURlY29yYXRvciB7XHJcbiAgICByZXR1cm4gZnVuY3Rpb24gKHRhcmdldDogYW55LCBwcm9wZXJ0eUtleTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0YXJnZXQgfHwgIXByb3BlcnR5S2V5KSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gYnkgZGVmYXVsdCwgaXQncyBhIEogTiBib29sZWFuIHRleHRcclxuICAgICAgICBpZiAoIXR5cGUgfHwgdHlwZSA9PT0gXCJKXCIpIHtcclxuICAgICAgICAgICAgUmVmbGVjdC5kZWZpbmVNZXRhZGF0YShQUk9QX01FVEFfS0VZX0pOLCB0cnVlLCB0YXJnZXQsIHByb3BlcnR5S2V5KTtcclxuICAgICAgICB9IGVsc2UgaWYgKHR5cGUgPT09IFwiVFwiKSB7XHJcbiAgICAgICAgICAgIFJlZmxlY3QuZGVmaW5lTWV0YWRhdGEoUFJPUF9NRVRBX0tFWV9URiwgdHJ1ZSwgdGFyZ2V0LCBwcm9wZXJ0eUtleSk7XHJcbiAgICAgICAgfSBlbHNlIGlmICh0eXBlID09PSAxKSB7XHJcbiAgICAgICAgICAgIFJlZmxlY3QuZGVmaW5lTWV0YWRhdGEoUFJPUF9NRVRBX0tFWV8xMCwgdHJ1ZSwgdGFyZ2V0LCBwcm9wZXJ0eUtleSk7XHJcbiAgICAgICAgfVxyXG4gICAgfTtcclxufVxyXG5cclxuLy8gVXRpbGl0eSBmdW5jdGlvbiBob2xkZXIgb2YgdGhlIEJvb2xlYW5UZXh0RGVjb3JhdG9yIGRlY29yYXRvci5cclxuZXhwb3J0IGNsYXNzIEJvb2xlYW5UZXh0RGVjb3JhdG9yIHtcclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldHVybnMgd2hldGhlciBnaXZlbiBwcm9wZXJ0eSAoYXMgYSBzdHJpbmcpIG9uIGdpdmVuIG9iamVjdCBpcyBhIGJvb2xlYW4gdGV4dCBmaWVsZC4gVGhhdCBpcywgaXQncyBhIGZpZWxkIHRoYXQgaXMgZGVjb3JhdGVkXHJcbiAgICAgKiB3aXRoIHRoZSBAQm9vbGVhblRleHQgZGVjb3JhdG9yLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIElzQm9vbGVhblRleHRGaWVsZCh0YXJnZXQ6IE9iamVjdCwgcHJvcGVydHlLZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICghdGFyZ2V0IHx8ICFwcm9wZXJ0eUtleSB8fCB0eXBlb2YgdGFyZ2V0ICE9PSBcIm9iamVjdFwiKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgUmVmbGVjdC5nZXRNZXRhZGF0YShQUk9QX01FVEFfS0VZX0pOLCB0YXJnZXQsIHByb3BlcnR5S2V5KSA9PT0gdHJ1ZVxyXG4gICAgICAgICAgICB8fFxyXG4gICAgICAgICAgICBSZWZsZWN0LmdldE1ldGFkYXRhKFBST1BfTUVUQV9LRVlfVEYsIHRhcmdldCwgcHJvcGVydHlLZXkpID09PSB0cnVlXHJcbiAgICAgICAgICAgIHx8XHJcbiAgICAgICAgICAgIFJlZmxlY3QuZ2V0TWV0YWRhdGEoUFJPUF9NRVRBX0tFWV8xMCwgdGFyZ2V0LCBwcm9wZXJ0eUtleSkgPT09IHRydWVcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0dXJucyB0aGUgbG9naWNhbCB0cnVlIG9yIGZhbHNlIHZhbHVlIG9mIGdpdmVuIGNoYXJhY3RlciAoJ0onLCAnTicsICdUJyBvciAnRicpIG9yIG51bWJlciAoMCBvciAxKS5cclxuICAgICAqIFJldHVybnMgVU5ERUZJTkVEIGlmIGdpdmVuIGJvb2xDaGFyIHdhcyBub3QgcmVjb2duaXNlZCBhcyBhIGJvb2xlYW4gdGV4dC5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHN0YXRpYyBHZXRMb2dpY2FsQm9vbGVhblZhbHVlKGRiQm9vbENoYXI6IERiQm9vbGVhblZhbHVlVHlwZSB8IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBHZXRMb2dpY2FsQm9vbGVhblZhbHVlKGRiQm9vbENoYXIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0dXJucyB0aGUgYm9vbGVhbiBjaGFyYWN0ZXIgLyBudW1iZXIgb2YgZ2l2ZW4gbG9naWNhbCBib29sIHByb3BlcnR5IG9uIHRhcmdldCBvYmplY3QuIFVzZXMgaXRzIEBCb29sZWFuVGV4dCgpIGFubm90YXRpb24gdG8gZGVjaWRlXHJcbiAgICAgKiB3aGF0IGNoYXJhY3RlciAvIG51bWJlciB0byByZXR1cm4uXHJcbiAgICAgKiBVc2VkIGluIEJ1c2luZXNzT2JqZWN0U2VyaWFsaXplclNlcnZpY2VTZXJ2aWNlIHRvIGNvbnZlcnQgbG9naWNhbCBib29scyB0byB0aGVpciBvcmlnaW5hbCBib29sZWFuIGNoYXJhY3Rlci5cclxuICAgICAqIEByZXR1cm5zIHtzdHJpbmd8bnVtYmVyfSBUaGUgb3JpZ2luYWwsIHJldmVyc2UtZW5naW5lZXJlZCBib29sZWFuIGNoYXJhY3RlciAob3IgbnVtYmVyKSBvZiBnaXZlbiBvYmplY3QgcHJvcGVydHksIG9yIHVuZGVmaW5lZC5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHN0YXRpYyBHZXREYkJvb2xlYW5WYWx1ZSh0YXJnZXQ6IE9iamVjdCwgcHJvcGVydHlLZXk6IHN0cmluZyk6IERiQm9vbGVhblZhbHVlVHlwZSB7XHJcbiAgICAgICAgaWYgKCF0YXJnZXQgfHwgIXByb3BlcnR5S2V5IHx8IHR5cGVvZiB0YXJnZXQgIT09IFwib2JqZWN0XCIpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxldCBkYkJvb2xWYWw6IGFueSA9IHVuZGVmaW5lZDtcclxuXHJcbiAgICAgICAgY29uc3QgY3VyQm9vbFZhbDogYm9vbGVhbiA9IHRhcmdldFtwcm9wZXJ0eUtleV07XHJcblxyXG4gICAgICAgIGlmIChCb29sZWFuVGV4dERlY29yYXRvci5fSXNKYU5lZVByb3AodGFyZ2V0LCBwcm9wZXJ0eUtleSkpIHtcclxuICAgICAgICAgICAgZGJCb29sVmFsID0gR2V0WWVzTm9EYkJvb2xlYW5WYWx1ZShjdXJCb29sVmFsKTtcclxuICAgICAgICB9IGVsc2UgaWYgKEJvb2xlYW5UZXh0RGVjb3JhdG9yLl9Jc1RydWVGYWxzZVByb3AodGFyZ2V0LCBwcm9wZXJ0eUtleSkpIHtcclxuICAgICAgICAgICAgZGJCb29sVmFsID0gR2V0VHJ1ZUZhbHNlRGJCb29sZWFuVmFsdWUoY3VyQm9vbFZhbCk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChCb29sZWFuVGV4dERlY29yYXRvci5fSXNaZXJvT25lUHJvcCh0YXJnZXQsIHByb3BlcnR5S2V5KSkge1xyXG4gICAgICAgICAgICBkYkJvb2xWYWwgPSBHZXRPbmVaZXJvRGJCb29sZWFuVmFsdWUoY3VyQm9vbFZhbCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gZGJCb29sVmFsIGFzIGFueSBhcyBEYkJvb2xlYW5WYWx1ZVR5cGU7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMgX0lzSmFOZWVQcm9wKHRhcmdldDogT2JqZWN0LCBwcm9wZXJ0eUtleTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIEJvb2xlYW5UZXh0RGVjb3JhdG9yLl9Jc1Byb3AoUFJPUF9NRVRBX0tFWV9KTiwgdGFyZ2V0LCBwcm9wZXJ0eUtleSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMgX0lzVHJ1ZUZhbHNlUHJvcCh0YXJnZXQ6IE9iamVjdCwgcHJvcGVydHlLZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBCb29sZWFuVGV4dERlY29yYXRvci5fSXNQcm9wKFBST1BfTUVUQV9LRVlfVEYsIHRhcmdldCwgcHJvcGVydHlLZXkpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgc3RhdGljIF9Jc1plcm9PbmVQcm9wKHRhcmdldDogT2JqZWN0LCBwcm9wZXJ0eUtleTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIEJvb2xlYW5UZXh0RGVjb3JhdG9yLl9Jc1Byb3AoUFJPUF9NRVRBX0tFWV8xMCwgdGFyZ2V0LCBwcm9wZXJ0eUtleSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMgX0lzUHJvcChwcm9wOiBzdHJpbmcsIHRhcmdldDogT2JqZWN0LCBwcm9wZXJ0eUtleTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICEhdGFyZ2V0ICYmICEhcHJvcGVydHlLZXkgJiYgdHlwZW9mIHRhcmdldCA9PT0gXCJvYmplY3RcIiAmJiBSZWZsZWN0Lmhhc01ldGFkYXRhKHByb3AsIHRhcmdldCwgcHJvcGVydHlLZXkpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,55 +0,0 @@
1
- import { notNill } from "@colijnit/transactionapi/build/utils/function/not-nill.function";
2
- import { ObjectUtils } from "@colijnit/transactionapi/build/utils/object-utils";
3
- const PROP_META_KEY = "complexArray";
4
- /**
5
- * !! just a TAG DECORATOR for now, there is no code that uses this meta data within the ione connector lib itself.
6
- */
7
- /**
8
- * Property decorator for properties of businessobject classes that are an array of other strongly typed businessobjects.
9
- * Ensures that the BusinessObjectFactoryService makes properly typed objects from incoming raw persistence data. Otherwise we couldn't add methods
10
- * to our own businessobjects and use them, since all fields would be flat data without methods after BusinessObjectFactoryService creation.
11
- *
12
- * Usage:
13
- *
14
- * @ComplexArray(TransactionLine)
15
- * public transactionLines: TransactionLine[]
16
- */
17
- export function ComplexArray(type) {
18
- return function (target, propertyKey) {
19
- if (!target || !propertyKey || typeof target !== "object") {
20
- return;
21
- }
22
- // warn the programmer if given type was undefined; it's probably an import order glitch that caused this, because decorators seem
23
- // to be immediately processed when a class is first imported
24
- if (!type) {
25
- console.warn(`@ComplexArray(type): type was UNDEFINED. Called on prop (${ObjectUtils.GetClassName(target)}, ${propertyKey}). ` +
26
- `Class will not properly serialize and deserialize now. We've always been able to fix this by CHANGING IMPORT ORDERS ` +
27
- `where both classes and their dependencies are used, e.g. factory, repository or models..`);
28
- return;
29
- }
30
- Reflect.defineMetadata(PROP_META_KEY, type, target, propertyKey);
31
- };
32
- }
33
- // Utility function holder of the ComplexArrayDecorator decorator.
34
- export class ComplexArrayDecorator {
35
- /**
36
- * Returns whether given property (as a string) on given object is a complex array. A complex array is an array field that is decorated
37
- * with the @ComplexArray decorator.
38
- */
39
- static IsComplexArray(target, propertyKey) {
40
- if (!target || !propertyKey || typeof target !== "object") {
41
- return false;
42
- }
43
- return (notNill(Reflect.getMetadata(PROP_META_KEY, target, propertyKey)));
44
- }
45
- /**
46
- * Returns the VALUE of the @ComplexArray(VALUE) property decorator on the given propertyKey on the given modelobject.
47
- */
48
- static GetComplexArrayType(target, propertyKey) {
49
- if (!target || !propertyKey || typeof target !== "object") {
50
- return undefined;
51
- }
52
- return Reflect.getMetadata(PROP_META_KEY, target, propertyKey);
53
- }
54
- }
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGxleC1hcnJheS5kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZmFjdG9yeS9kZWNvcmF0b3JzL2NvbXBsZXgtYXJyYXkuZGVjb3JhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQUN4RixPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFFOUUsTUFBTSxhQUFhLEdBQVcsY0FBYyxDQUFDO0FBRTdDOztHQUVHO0FBRUg7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FBQyxJQUFTO0lBQ2xDLE9BQU8sVUFBVSxNQUFXLEVBQUUsV0FBbUI7UUFDN0MsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLFdBQVcsSUFBSSxPQUFPLE1BQU0sS0FBSyxRQUFRLEVBQUU7WUFDdkQsT0FBTztTQUNWO1FBQ0Qsa0lBQWtJO1FBQ2xJLDZEQUE2RDtRQUM3RCxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1AsT0FBTyxDQUFDLElBQUksQ0FBQyw0REFBNEQsV0FBVyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsS0FBSyxXQUFXLEtBQUs7Z0JBQzFILHNIQUFzSDtnQkFDdEgsMEZBQTBGLENBQUMsQ0FBQztZQUNoRyxPQUFPO1NBQ1Y7UUFDRCxPQUFPLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3JFLENBQUMsQ0FBQztBQUNOLENBQUM7QUFFRCxrRUFBa0U7QUFDbEUsTUFBTSxPQUFPLHFCQUFxQjtJQUM5Qjs7O09BR0c7SUFDSSxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQWMsRUFBRSxXQUFtQjtRQUM1RCxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsV0FBVyxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRTtZQUN2RCxPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsbUJBQW1CLENBQUMsTUFBYyxFQUFFLFdBQW1CO1FBQ2pFLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxXQUFXLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUSxFQUFFO1lBQ3ZELE9BQU8sU0FBUyxDQUFDO1NBQ3BCO1FBRUQsT0FBTyxPQUFPLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDbkUsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtub3ROaWxsfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL3V0aWxzL2Z1bmN0aW9uL25vdC1uaWxsLmZ1bmN0aW9uXCI7XHJcbmltcG9ydCB7T2JqZWN0VXRpbHN9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvdXRpbHMvb2JqZWN0LXV0aWxzXCI7XHJcblxyXG5jb25zdCBQUk9QX01FVEFfS0VZOiBzdHJpbmcgPSBcImNvbXBsZXhBcnJheVwiO1xyXG5cclxuLyoqXHJcbiAqICEhIGp1c3QgYSBUQUcgREVDT1JBVE9SIGZvciBub3csIHRoZXJlIGlzIG5vIGNvZGUgdGhhdCB1c2VzIHRoaXMgbWV0YSBkYXRhIHdpdGhpbiB0aGUgaW9uZSBjb25uZWN0b3IgbGliIGl0c2VsZi5cclxuICovXHJcblxyXG4vKipcclxuICogUHJvcGVydHkgZGVjb3JhdG9yIGZvciBwcm9wZXJ0aWVzIG9mIGJ1c2luZXNzb2JqZWN0IGNsYXNzZXMgdGhhdCBhcmUgYW4gYXJyYXkgb2Ygb3RoZXIgc3Ryb25nbHkgdHlwZWQgYnVzaW5lc3NvYmplY3RzLlxyXG4gKiBFbnN1cmVzIHRoYXQgdGhlIEJ1c2luZXNzT2JqZWN0RmFjdG9yeVNlcnZpY2UgbWFrZXMgcHJvcGVybHkgdHlwZWQgb2JqZWN0cyBmcm9tIGluY29taW5nIHJhdyBwZXJzaXN0ZW5jZSBkYXRhLiBPdGhlcndpc2Ugd2UgY291bGRuJ3QgYWRkIG1ldGhvZHNcclxuICogdG8gb3VyIG93biBidXNpbmVzc29iamVjdHMgYW5kIHVzZSB0aGVtLCBzaW5jZSBhbGwgZmllbGRzIHdvdWxkIGJlIGZsYXQgZGF0YSB3aXRob3V0IG1ldGhvZHMgYWZ0ZXIgQnVzaW5lc3NPYmplY3RGYWN0b3J5U2VydmljZSBjcmVhdGlvbi5cclxuICpcclxuICogVXNhZ2U6XHJcbiAqXHJcbiAqIEBDb21wbGV4QXJyYXkoVHJhbnNhY3Rpb25MaW5lKVxyXG4gKiBwdWJsaWMgdHJhbnNhY3Rpb25MaW5lczogVHJhbnNhY3Rpb25MaW5lW11cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBDb21wbGV4QXJyYXkodHlwZTogYW55KTogUHJvcGVydHlEZWNvcmF0b3Ige1xyXG4gICAgcmV0dXJuIGZ1bmN0aW9uICh0YXJnZXQ6IGFueSwgcHJvcGVydHlLZXk6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGFyZ2V0IHx8ICFwcm9wZXJ0eUtleSB8fCB0eXBlb2YgdGFyZ2V0ICE9PSBcIm9iamVjdFwiKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gd2FybiB0aGUgcHJvZ3JhbW1lciBpZiBnaXZlbiB0eXBlIHdhcyB1bmRlZmluZWQ7IGl0J3MgcHJvYmFibHkgYW4gaW1wb3J0IG9yZGVyIGdsaXRjaCB0aGF0IGNhdXNlZCB0aGlzLCBiZWNhdXNlIGRlY29yYXRvcnMgc2VlbVxyXG4gICAgICAgIC8vIHRvIGJlIGltbWVkaWF0ZWx5IHByb2Nlc3NlZCB3aGVuIGEgY2xhc3MgaXMgZmlyc3QgaW1wb3J0ZWRcclxuICAgICAgICBpZiAoIXR5cGUpIHtcclxuICAgICAgICAgICAgY29uc29sZS53YXJuKGBAQ29tcGxleEFycmF5KHR5cGUpOiB0eXBlIHdhcyBVTkRFRklORUQuIENhbGxlZCBvbiBwcm9wICgke09iamVjdFV0aWxzLkdldENsYXNzTmFtZSh0YXJnZXQpfSwgJHtwcm9wZXJ0eUtleX0pLiBgICtcclxuICAgICAgICAgICAgICAgIGBDbGFzcyB3aWxsIG5vdCBwcm9wZXJseSBzZXJpYWxpemUgYW5kIGRlc2VyaWFsaXplIG5vdy4gV2UndmUgYWx3YXlzIGJlZW4gYWJsZSB0byBmaXggdGhpcyBieSBDSEFOR0lORyBJTVBPUlQgT1JERVJTIGAgK1xyXG4gICAgICAgICAgICAgICAgYHdoZXJlIGJvdGggY2xhc3NlcyBhbmQgdGhlaXIgZGVwZW5kZW5jaWVzIGFyZSB1c2VkLCBlLmcuIGZhY3RvcnksIHJlcG9zaXRvcnkgb3IgbW9kZWxzLi5gKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBSZWZsZWN0LmRlZmluZU1ldGFkYXRhKFBST1BfTUVUQV9LRVksIHR5cGUsIHRhcmdldCwgcHJvcGVydHlLZXkpO1xyXG4gICAgfTtcclxufVxyXG5cclxuLy8gVXRpbGl0eSBmdW5jdGlvbiBob2xkZXIgb2YgdGhlIENvbXBsZXhBcnJheURlY29yYXRvciBkZWNvcmF0b3IuXHJcbmV4cG9ydCBjbGFzcyBDb21wbGV4QXJyYXlEZWNvcmF0b3Ige1xyXG4gICAgLyoqXHJcbiAgICAgKiBSZXR1cm5zIHdoZXRoZXIgZ2l2ZW4gcHJvcGVydHkgKGFzIGEgc3RyaW5nKSBvbiBnaXZlbiBvYmplY3QgaXMgYSBjb21wbGV4IGFycmF5LiBBIGNvbXBsZXggYXJyYXkgaXMgYW4gYXJyYXkgZmllbGQgdGhhdCBpcyBkZWNvcmF0ZWRcclxuICAgICAqIHdpdGggdGhlIEBDb21wbGV4QXJyYXkgZGVjb3JhdG9yLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIElzQ29tcGxleEFycmF5KHRhcmdldDogT2JqZWN0LCBwcm9wZXJ0eUtleTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCF0YXJnZXQgfHwgIXByb3BlcnR5S2V5IHx8IHR5cGVvZiB0YXJnZXQgIT09IFwib2JqZWN0XCIpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIChub3ROaWxsKFJlZmxlY3QuZ2V0TWV0YWRhdGEoUFJPUF9NRVRBX0tFWSwgdGFyZ2V0LCBwcm9wZXJ0eUtleSkpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldHVybnMgdGhlIFZBTFVFIG9mIHRoZSBAQ29tcGxleEFycmF5KFZBTFVFKSBwcm9wZXJ0eSBkZWNvcmF0b3Igb24gdGhlIGdpdmVuIHByb3BlcnR5S2V5IG9uIHRoZSBnaXZlbiBtb2RlbG9iamVjdC5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHN0YXRpYyBHZXRDb21wbGV4QXJyYXlUeXBlKHRhcmdldDogT2JqZWN0LCBwcm9wZXJ0eUtleTogc3RyaW5nKTogYW55IHtcclxuICAgICAgICBpZiAoIXRhcmdldCB8fCAhcHJvcGVydHlLZXkgfHwgdHlwZW9mIHRhcmdldCAhPT0gXCJvYmplY3RcIikge1xyXG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIFJlZmxlY3QuZ2V0TWV0YWRhdGEoUFJPUF9NRVRBX0tFWSwgdGFyZ2V0LCBwcm9wZXJ0eUtleSk7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -1,57 +0,0 @@
1
- import { notNill } from "@colijnit/transactionapi/build/utils/function/not-nill.function";
2
- import { ObjectUtils } from "@colijnit/transactionapi/build/utils/object-utils";
3
- const PROP_META_KEY = "complexField";
4
- /**
5
- * !! just a TAG DECORATOR for now, there is no code that uses this meta data within the ione connector lib itself.
6
- */
7
- /**
8
- * Property decorator for properties of businessobject classes that are other strongly typed businessobjects.
9
- * Ensures that the BusinessObjectFactoryService makes properly typed objects from incoming raw persistence data. Otherwise we couldn't add methods
10
- * to our own businessobjects and use them, since all fields would be flat data without methods after BusinessObjectFactoryService creation.
11
- *
12
- * Usage:
13
- *
14
- * @ComplexField(Transaction)
15
- * public transaction: Transaction
16
- *
17
- * Also keeps track of a "complexFieldProps" metadata on the class-level, as a reflect-metadata workaround to be able to
18
- * retrieve all properties that have the @ComplexField(..) decorator (impossible with current Reflect API).
19
- */
20
- export function ComplexField(type) {
21
- return function (target, propertyKey) {
22
- if (!target || !propertyKey) {
23
- return;
24
- }
25
- // warn the programmer if given type was undefined; it's probably an import order glitch that caused this, because decorators seem
26
- // to be immediately processed when a class is first imported
27
- if (!type) {
28
- // eslint-disable-next-line no-console
29
- console.warn(`@ComplexField(type): type was UNDEFINED. Called on prop (${ObjectUtils.GetClassName(target)}, ${propertyKey}). ` +
30
- `Class will not properly serialize and deserialize now. We've always been able to fix this by CHANGING IMPORT ORDERS ` +
31
- `where both classes and their dependencies are used, e.g. factory, repository or models..`);
32
- return;
33
- }
34
- Reflect.defineMetadata(PROP_META_KEY, type, target, propertyKey);
35
- };
36
- }
37
- // Utility function holder of the ComplexFieldDecorator decorator.
38
- export class ComplexFieldDecorator {
39
- /**
40
- * Returns whether given property (as a string) on given object is a complex field. A complex field is a field that is decorated
41
- * with the @ComplexField decorator.
42
- */
43
- static IsComplexField(target, propertyKey) {
44
- if (!target || !propertyKey || typeof target !== "object") {
45
- return false;
46
- }
47
- return (notNill(Reflect.getMetadata(PROP_META_KEY, target, propertyKey)));
48
- }
49
- // Returns the VALUE of the @ComplexField(VALUE) property decorator on the given propertyKey on the given modelObject.
50
- static GetComplexFieldType(target, propertyKey) {
51
- if (!target || !propertyKey || typeof target !== "object") {
52
- return undefined;
53
- }
54
- return Reflect.getMetadata(PROP_META_KEY, target, propertyKey);
55
- }
56
- }
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGxleC1maWVsZC5kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZmFjdG9yeS9kZWNvcmF0b3JzL2NvbXBsZXgtZmllbGQuZGVjb3JhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQUN4RixPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFFOUUsTUFBTSxhQUFhLEdBQVcsY0FBYyxDQUFDO0FBRTdDOztHQUVHO0FBRUg7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FBQyxJQUFTO0lBQ2xDLE9BQU8sVUFBVSxNQUFXLEVBQUUsV0FBbUI7UUFDN0MsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUN6QixPQUFPO1NBQ1Y7UUFFRCxrSUFBa0k7UUFDbEksNkRBQTZEO1FBQzdELElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDVCxzQ0FBc0M7WUFDcEMsT0FBTyxDQUFDLElBQUksQ0FBQyw0REFBNEQsV0FBVyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsS0FBSyxXQUFXLEtBQUs7Z0JBQzFILHNIQUFzSDtnQkFDdEgsMEZBQTBGLENBQUMsQ0FBQztZQUNoRyxPQUFPO1NBQ1Y7UUFDRCxPQUFPLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3JFLENBQUMsQ0FBQztBQUNOLENBQUM7QUFFRCxrRUFBa0U7QUFDbEUsTUFBTSxPQUFPLHFCQUFxQjtJQUU5Qjs7O09BR0c7SUFDSSxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQWMsRUFBRSxXQUFtQjtRQUM1RCxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsV0FBVyxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRTtZQUN2RCxPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUNELE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsc0hBQXNIO0lBQy9HLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxNQUFjLEVBQUUsV0FBbUI7UUFDakUsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLFdBQVcsSUFBSSxPQUFPLE1BQU0sS0FBSyxRQUFRLEVBQUU7WUFDdkQsT0FBTyxTQUFTLENBQUM7U0FDcEI7UUFDRCxPQUFPLE9BQU8sQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNuRSxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge25vdE5pbGx9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvdXRpbHMvZnVuY3Rpb24vbm90LW5pbGwuZnVuY3Rpb25cIjtcclxuaW1wb3J0IHtPYmplY3RVdGlsc30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC91dGlscy9vYmplY3QtdXRpbHNcIjtcclxuXHJcbmNvbnN0IFBST1BfTUVUQV9LRVk6IHN0cmluZyA9IFwiY29tcGxleEZpZWxkXCI7XHJcblxyXG4vKipcclxuICogISEganVzdCBhIFRBRyBERUNPUkFUT1IgZm9yIG5vdywgdGhlcmUgaXMgbm8gY29kZSB0aGF0IHVzZXMgdGhpcyBtZXRhIGRhdGEgd2l0aGluIHRoZSBpb25lIGNvbm5lY3RvciBsaWIgaXRzZWxmLlxyXG4gKi9cclxuXHJcbi8qKlxyXG4gKiBQcm9wZXJ0eSBkZWNvcmF0b3IgZm9yIHByb3BlcnRpZXMgb2YgYnVzaW5lc3NvYmplY3QgY2xhc3NlcyB0aGF0IGFyZSBvdGhlciBzdHJvbmdseSB0eXBlZCBidXNpbmVzc29iamVjdHMuXHJcbiAqIEVuc3VyZXMgdGhhdCB0aGUgQnVzaW5lc3NPYmplY3RGYWN0b3J5U2VydmljZSBtYWtlcyBwcm9wZXJseSB0eXBlZCBvYmplY3RzIGZyb20gaW5jb21pbmcgcmF3IHBlcnNpc3RlbmNlIGRhdGEuIE90aGVyd2lzZSB3ZSBjb3VsZG4ndCBhZGQgbWV0aG9kc1xyXG4gKiB0byBvdXIgb3duIGJ1c2luZXNzb2JqZWN0cyBhbmQgdXNlIHRoZW0sIHNpbmNlIGFsbCBmaWVsZHMgd291bGQgYmUgZmxhdCBkYXRhIHdpdGhvdXQgbWV0aG9kcyBhZnRlciBCdXNpbmVzc09iamVjdEZhY3RvcnlTZXJ2aWNlIGNyZWF0aW9uLlxyXG4gKlxyXG4gKiBVc2FnZTpcclxuICpcclxuICogQENvbXBsZXhGaWVsZChUcmFuc2FjdGlvbilcclxuICogcHVibGljIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvblxyXG4gKlxyXG4gKiBBbHNvIGtlZXBzIHRyYWNrIG9mIGEgXCJjb21wbGV4RmllbGRQcm9wc1wiIG1ldGFkYXRhIG9uIHRoZSBjbGFzcy1sZXZlbCwgYXMgYSByZWZsZWN0LW1ldGFkYXRhIHdvcmthcm91bmQgdG8gYmUgYWJsZSB0b1xyXG4gKiByZXRyaWV2ZSBhbGwgcHJvcGVydGllcyB0aGF0IGhhdmUgdGhlIEBDb21wbGV4RmllbGQoLi4pIGRlY29yYXRvciAoaW1wb3NzaWJsZSB3aXRoIGN1cnJlbnQgUmVmbGVjdCBBUEkpLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIENvbXBsZXhGaWVsZCh0eXBlOiBhbnkpOiBQcm9wZXJ0eURlY29yYXRvciB7XHJcbiAgICByZXR1cm4gZnVuY3Rpb24gKHRhcmdldDogYW55LCBwcm9wZXJ0eUtleTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0YXJnZXQgfHwgIXByb3BlcnR5S2V5KSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIHdhcm4gdGhlIHByb2dyYW1tZXIgaWYgZ2l2ZW4gdHlwZSB3YXMgdW5kZWZpbmVkOyBpdCdzIHByb2JhYmx5IGFuIGltcG9ydCBvcmRlciBnbGl0Y2ggdGhhdCBjYXVzZWQgdGhpcywgYmVjYXVzZSBkZWNvcmF0b3JzIHNlZW1cclxuICAgICAgICAvLyB0byBiZSBpbW1lZGlhdGVseSBwcm9jZXNzZWQgd2hlbiBhIGNsYXNzIGlzIGZpcnN0IGltcG9ydGVkXHJcbiAgICAgICAgaWYgKCF0eXBlKSB7XHJcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxyXG4gICAgICAgICAgICBjb25zb2xlLndhcm4oYEBDb21wbGV4RmllbGQodHlwZSk6IHR5cGUgd2FzIFVOREVGSU5FRC4gQ2FsbGVkIG9uIHByb3AgKCR7T2JqZWN0VXRpbHMuR2V0Q2xhc3NOYW1lKHRhcmdldCl9LCAke3Byb3BlcnR5S2V5fSkuIGAgK1xyXG4gICAgICAgICAgICAgICAgYENsYXNzIHdpbGwgbm90IHByb3Blcmx5IHNlcmlhbGl6ZSBhbmQgZGVzZXJpYWxpemUgbm93LiBXZSd2ZSBhbHdheXMgYmVlbiBhYmxlIHRvIGZpeCB0aGlzIGJ5IENIQU5HSU5HIElNUE9SVCBPUkRFUlMgYCArXHJcbiAgICAgICAgICAgICAgICBgd2hlcmUgYm90aCBjbGFzc2VzIGFuZCB0aGVpciBkZXBlbmRlbmNpZXMgYXJlIHVzZWQsIGUuZy4gZmFjdG9yeSwgcmVwb3NpdG9yeSBvciBtb2RlbHMuLmApO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFJlZmxlY3QuZGVmaW5lTWV0YWRhdGEoUFJPUF9NRVRBX0tFWSwgdHlwZSwgdGFyZ2V0LCBwcm9wZXJ0eUtleSk7XHJcbiAgICB9O1xyXG59XHJcblxyXG4vLyBVdGlsaXR5IGZ1bmN0aW9uIGhvbGRlciBvZiB0aGUgQ29tcGxleEZpZWxkRGVjb3JhdG9yIGRlY29yYXRvci5cclxuZXhwb3J0IGNsYXNzIENvbXBsZXhGaWVsZERlY29yYXRvciB7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZXR1cm5zIHdoZXRoZXIgZ2l2ZW4gcHJvcGVydHkgKGFzIGEgc3RyaW5nKSBvbiBnaXZlbiBvYmplY3QgaXMgYSBjb21wbGV4IGZpZWxkLiBBIGNvbXBsZXggZmllbGQgaXMgYSBmaWVsZCB0aGF0IGlzIGRlY29yYXRlZFxyXG4gICAgICogd2l0aCB0aGUgQENvbXBsZXhGaWVsZCBkZWNvcmF0b3IuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgSXNDb21wbGV4RmllbGQodGFyZ2V0OiBPYmplY3QsIHByb3BlcnR5S2V5OiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoIXRhcmdldCB8fCAhcHJvcGVydHlLZXkgfHwgdHlwZW9mIHRhcmdldCAhPT0gXCJvYmplY3RcIikge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiAobm90TmlsbChSZWZsZWN0LmdldE1ldGFkYXRhKFBST1BfTUVUQV9LRVksIHRhcmdldCwgcHJvcGVydHlLZXkpKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmV0dXJucyB0aGUgVkFMVUUgb2YgdGhlIEBDb21wbGV4RmllbGQoVkFMVUUpIHByb3BlcnR5IGRlY29yYXRvciBvbiB0aGUgZ2l2ZW4gcHJvcGVydHlLZXkgb24gdGhlIGdpdmVuIG1vZGVsT2JqZWN0LlxyXG4gICAgcHVibGljIHN0YXRpYyBHZXRDb21wbGV4RmllbGRUeXBlKHRhcmdldDogT2JqZWN0LCBwcm9wZXJ0eUtleTogc3RyaW5nKTogYW55IHtcclxuICAgICAgICBpZiAoIXRhcmdldCB8fCAhcHJvcGVydHlLZXkgfHwgdHlwZW9mIHRhcmdldCAhPT0gXCJvYmplY3RcIikge1xyXG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gUmVmbGVjdC5nZXRNZXRhZGF0YShQUk9QX01FVEFfS0VZLCB0YXJnZXQsIHByb3BlcnR5S2V5KTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,36 +0,0 @@
1
- import { DateUtils } from "@colijnit/transactionapi/build/utils/date-utils";
2
- const PROP_META_KEY = "dateField";
3
- /**
4
- * !! just a TAG DECORATOR for now, there is no code that uses this meta data within the ione connector lib itself.
5
- */
6
- /**
7
- * Property decorator for properties of businessobject classes that are of type Date, but are sent to us as strings.
8
- * Ensures that the BusinessObjectFactory makes proper JavaScript Date objects from incoming strings for @DateField() decorated properties.
9
- *
10
- * Usage:
11
- *
12
- * @DateField()
13
- * public expectedDeliveryDate: Date
14
- */
15
- export function DateField() {
16
- return function (target, propertyKey) {
17
- if (!target || !propertyKey) {
18
- return;
19
- }
20
- Reflect.defineMetadata(PROP_META_KEY, undefined, target, propertyKey);
21
- };
22
- }
23
- // Utility function holder of the @DateField() decorator.
24
- export class DateFieldFieldDecorator {
25
- // Returns whether given property (as a string) on given object is decorated with @DateField().
26
- static IsDateField(target, propertyKey) {
27
- if (!target || !propertyKey || typeof target !== "object") {
28
- return false;
29
- }
30
- return Reflect.hasMetadata(PROP_META_KEY, target, propertyKey);
31
- }
32
- static StringAsDate(str) {
33
- return DateUtils.StringAsDate(str);
34
- }
35
- }
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1maWVsZC5kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZmFjdG9yeS9kZWNvcmF0b3JzL2RhdGUtZmllbGQuZGVjb3JhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUUxRSxNQUFNLGFBQWEsR0FBVyxXQUFXLENBQUM7QUFFMUM7O0dBRUc7QUFFSDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSxTQUFTO0lBQ3JCLE9BQU8sVUFBVSxNQUFXLEVBQUUsV0FBbUI7UUFDN0MsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUN6QixPQUFPO1NBQ1Y7UUFDRCxPQUFPLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQzFFLENBQUMsQ0FBQztBQUNOLENBQUM7QUFFRCx5REFBeUQ7QUFDekQsTUFBTSxPQUFPLHVCQUF1QjtJQUVoQywrRkFBK0Y7SUFDeEYsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFjLEVBQUUsV0FBbUI7UUFDekQsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLFdBQVcsSUFBSSxPQUFPLE1BQU0sS0FBSyxRQUFRLEVBQUU7WUFDdkQsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFDRCxPQUFPLE9BQU8sQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRU0sTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFXO1FBQ2xDLE9BQU8sU0FBUyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN2QyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RhdGVVdGlsc30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC91dGlscy9kYXRlLXV0aWxzXCI7XHJcblxyXG5jb25zdCBQUk9QX01FVEFfS0VZOiBzdHJpbmcgPSBcImRhdGVGaWVsZFwiO1xyXG5cclxuLyoqXHJcbiAqICEhIGp1c3QgYSBUQUcgREVDT1JBVE9SIGZvciBub3csIHRoZXJlIGlzIG5vIGNvZGUgdGhhdCB1c2VzIHRoaXMgbWV0YSBkYXRhIHdpdGhpbiB0aGUgaW9uZSBjb25uZWN0b3IgbGliIGl0c2VsZi5cclxuICovXHJcblxyXG4vKipcclxuICogUHJvcGVydHkgZGVjb3JhdG9yIGZvciBwcm9wZXJ0aWVzIG9mIGJ1c2luZXNzb2JqZWN0IGNsYXNzZXMgdGhhdCBhcmUgb2YgdHlwZSBEYXRlLCBidXQgYXJlIHNlbnQgdG8gdXMgYXMgc3RyaW5ncy5cclxuICogRW5zdXJlcyB0aGF0IHRoZSBCdXNpbmVzc09iamVjdEZhY3RvcnkgbWFrZXMgcHJvcGVyIEphdmFTY3JpcHQgRGF0ZSBvYmplY3RzIGZyb20gaW5jb21pbmcgc3RyaW5ncyBmb3IgQERhdGVGaWVsZCgpIGRlY29yYXRlZCBwcm9wZXJ0aWVzLlxyXG4gKlxyXG4gKiBVc2FnZTpcclxuICpcclxuICogQERhdGVGaWVsZCgpXHJcbiAqIHB1YmxpYyBleHBlY3RlZERlbGl2ZXJ5RGF0ZTogRGF0ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIERhdGVGaWVsZCgpOiBQcm9wZXJ0eURlY29yYXRvciB7XHJcbiAgICByZXR1cm4gZnVuY3Rpb24gKHRhcmdldDogYW55LCBwcm9wZXJ0eUtleTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0YXJnZXQgfHwgIXByb3BlcnR5S2V5KSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgUmVmbGVjdC5kZWZpbmVNZXRhZGF0YShQUk9QX01FVEFfS0VZLCB1bmRlZmluZWQsIHRhcmdldCwgcHJvcGVydHlLZXkpO1xyXG4gICAgfTtcclxufVxyXG5cclxuLy8gVXRpbGl0eSBmdW5jdGlvbiBob2xkZXIgb2YgdGhlIEBEYXRlRmllbGQoKSBkZWNvcmF0b3IuXHJcbmV4cG9ydCBjbGFzcyBEYXRlRmllbGRGaWVsZERlY29yYXRvciB7XHJcblxyXG4gICAgLy8gUmV0dXJucyB3aGV0aGVyIGdpdmVuIHByb3BlcnR5IChhcyBhIHN0cmluZykgb24gZ2l2ZW4gb2JqZWN0IGlzIGRlY29yYXRlZCB3aXRoIEBEYXRlRmllbGQoKS5cclxuICAgIHB1YmxpYyBzdGF0aWMgSXNEYXRlRmllbGQodGFyZ2V0OiBPYmplY3QsIHByb3BlcnR5S2V5OiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoIXRhcmdldCB8fCAhcHJvcGVydHlLZXkgfHwgdHlwZW9mIHRhcmdldCAhPT0gXCJvYmplY3RcIikge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBSZWZsZWN0Lmhhc01ldGFkYXRhKFBST1BfTUVUQV9LRVksIHRhcmdldCwgcHJvcGVydHlLZXkpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgU3RyaW5nQXNEYXRlKHN0cjogc3RyaW5nKTogRGF0ZSB7XHJcbiAgICAgICAgcmV0dXJuIERhdGVVdGlscy5TdHJpbmdBc0RhdGUoc3RyKTtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,43 +0,0 @@
1
- import { NumberUtils } from "@colijnit/transactionapi/build/utils/number-utils";
2
- const PROP_META_KEY = "stringNumber";
3
- /**
4
- * !! just a TAG DECORATOR for now, there is no code that uses this meta data within the ione connector lib itself.
5
- */
6
- /**
7
- * Decorator for properties of businessobjects that are sent to us as strings from the database, but which we want to use as a number in the client.
8
- *
9
- * Can be handy for incongruent backend api cases, where id data types are communicated wrongly via strings instead of numbers
10
- * (e.g. on EmployeeFullObject.district, points to a District which has a number id, but in employee it's a string representation of that number...)
11
- *
12
- * Used by business object factory and -serializer.
13
- *
14
- * Usage:
15
- *
16
- * @StringNumber()
17
- * public rights: UserRightType
18
- */
19
- export function StringNumber() {
20
- return function (target, propertyKey) {
21
- if (!target || !propertyKey) {
22
- return;
23
- }
24
- Reflect.defineMetadata(PROP_META_KEY, undefined, target, propertyKey);
25
- };
26
- }
27
- // Utility function holder of the @StringNumber() decorator.
28
- export class StringNumberDecorator {
29
- // Returns whether given property (as a string) on given object is decorated with @StringNumber().
30
- static IsStringNumber(target, propertyKey) {
31
- if (!target || !propertyKey || typeof target !== "object") {
32
- return false;
33
- }
34
- return Reflect.hasMetadata(PROP_META_KEY, target, propertyKey);
35
- }
36
- static StringAsNumber(str) {
37
- return NumberUtils.ParseFloatKeepPrecision(str);
38
- }
39
- static NumberAsString(nr) {
40
- return "" + nr;
41
- }
42
- }
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLW51bWJlci5kZWNvcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZmFjdG9yeS9kZWNvcmF0b3JzL3N0cmluZy1udW1iZXIuZGVjb3JhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxtREFBbUQsQ0FBQztBQUU5RSxNQUFNLGFBQWEsR0FBVyxjQUFjLENBQUM7QUFDN0M7O0dBRUc7QUFFSDs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxNQUFNLFVBQVUsWUFBWTtJQUN4QixPQUFPLFVBQVUsTUFBVyxFQUFFLFdBQW1CO1FBQzdDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDekIsT0FBTztTQUNWO1FBQ0QsT0FBTyxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxXQUFXLENBQUMsQ0FBQztJQUMxRSxDQUFDLENBQUM7QUFDTixDQUFDO0FBRUQsNERBQTREO0FBQzVELE1BQU0sT0FBTyxxQkFBcUI7SUFFOUIsa0dBQWtHO0lBQzNGLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBYyxFQUFFLFdBQW1CO1FBQzVELElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxXQUFXLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUSxFQUFFO1lBQ3ZELE9BQU8sS0FBSyxDQUFDO1NBQ2hCO1FBQ0QsT0FBTyxPQUFPLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVNLE1BQU0sQ0FBQyxjQUFjLENBQUMsR0FBVztRQUNwQyxPQUFPLFdBQVcsQ0FBQyx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRU0sTUFBTSxDQUFDLGNBQWMsQ0FBQyxFQUFVO1FBQ25DLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQztJQUNuQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge051bWJlclV0aWxzfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL3V0aWxzL251bWJlci11dGlsc1wiO1xyXG5cclxuY29uc3QgUFJPUF9NRVRBX0tFWTogc3RyaW5nID0gXCJzdHJpbmdOdW1iZXJcIjtcclxuLyoqXHJcbiAqICEhIGp1c3QgYSBUQUcgREVDT1JBVE9SIGZvciBub3csIHRoZXJlIGlzIG5vIGNvZGUgdGhhdCB1c2VzIHRoaXMgbWV0YSBkYXRhIHdpdGhpbiB0aGUgaW9uZSBjb25uZWN0b3IgbGliIGl0c2VsZi5cclxuICovXHJcblxyXG4vKipcclxuICogRGVjb3JhdG9yIGZvciBwcm9wZXJ0aWVzIG9mIGJ1c2luZXNzb2JqZWN0cyB0aGF0IGFyZSBzZW50IHRvIHVzIGFzIHN0cmluZ3MgZnJvbSB0aGUgZGF0YWJhc2UsIGJ1dCB3aGljaCB3ZSB3YW50IHRvIHVzZSBhcyBhIG51bWJlciBpbiB0aGUgY2xpZW50LlxyXG4gKlxyXG4gKiBDYW4gYmUgaGFuZHkgZm9yIGluY29uZ3J1ZW50IGJhY2tlbmQgYXBpIGNhc2VzLCB3aGVyZSBpZCBkYXRhIHR5cGVzIGFyZSBjb21tdW5pY2F0ZWQgd3JvbmdseSB2aWEgc3RyaW5ncyBpbnN0ZWFkIG9mIG51bWJlcnNcclxuICogKGUuZy4gb24gRW1wbG95ZWVGdWxsT2JqZWN0LmRpc3RyaWN0LCBwb2ludHMgdG8gYSBEaXN0cmljdCB3aGljaCBoYXMgYSBudW1iZXIgaWQsIGJ1dCBpbiBlbXBsb3llZSBpdCdzIGEgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoYXQgbnVtYmVyLi4uKVxyXG4gKlxyXG4gKiBVc2VkIGJ5IGJ1c2luZXNzIG9iamVjdCBmYWN0b3J5IGFuZCAtc2VyaWFsaXplci5cclxuICpcclxuICogVXNhZ2U6XHJcbiAqXHJcbiAqIEBTdHJpbmdOdW1iZXIoKVxyXG4gKiBwdWJsaWMgcmlnaHRzOiBVc2VyUmlnaHRUeXBlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gU3RyaW5nTnVtYmVyKCk6IFByb3BlcnR5RGVjb3JhdG9yIHtcclxuICAgIHJldHVybiBmdW5jdGlvbiAodGFyZ2V0OiBhbnksIHByb3BlcnR5S2V5OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRhcmdldCB8fCAhcHJvcGVydHlLZXkpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBSZWZsZWN0LmRlZmluZU1ldGFkYXRhKFBST1BfTUVUQV9LRVksIHVuZGVmaW5lZCwgdGFyZ2V0LCBwcm9wZXJ0eUtleSk7XHJcbiAgICB9O1xyXG59XHJcblxyXG4vLyBVdGlsaXR5IGZ1bmN0aW9uIGhvbGRlciBvZiB0aGUgQFN0cmluZ051bWJlcigpIGRlY29yYXRvci5cclxuZXhwb3J0IGNsYXNzIFN0cmluZ051bWJlckRlY29yYXRvciB7XHJcblxyXG4gICAgLy8gUmV0dXJucyB3aGV0aGVyIGdpdmVuIHByb3BlcnR5IChhcyBhIHN0cmluZykgb24gZ2l2ZW4gb2JqZWN0IGlzIGRlY29yYXRlZCB3aXRoIEBTdHJpbmdOdW1iZXIoKS5cclxuICAgIHB1YmxpYyBzdGF0aWMgSXNTdHJpbmdOdW1iZXIodGFyZ2V0OiBPYmplY3QsIHByb3BlcnR5S2V5OiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoIXRhcmdldCB8fCAhcHJvcGVydHlLZXkgfHwgdHlwZW9mIHRhcmdldCAhPT0gXCJvYmplY3RcIikge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBSZWZsZWN0Lmhhc01ldGFkYXRhKFBST1BfTUVUQV9LRVksIHRhcmdldCwgcHJvcGVydHlLZXkpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgU3RyaW5nQXNOdW1iZXIoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiBOdW1iZXJVdGlscy5QYXJzZUZsb2F0S2VlcFByZWNpc2lvbihzdHIpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgTnVtYmVyQXNTdHJpbmcobnI6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIFwiXCIgKyBucjtcclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,183 +0,0 @@
1
- import { ObjectUtils } from "@colijnit/transactionapi/build/utils/object-utils";
2
- import { NumberUtils } from "@colijnit/transactionapi/build/utils/number-utils";
3
- import { isNill } from "@colijnit/transactionapi/build/utils/function/is-nill.function";
4
- import { notNill } from "@colijnit/transactionapi/build/utils/function/not-nill.function";
5
- export class ArrayUtils {
6
- /**
7
- * Returns whether at least one element in given array could be found by given finder function.
8
- *
9
- * @param {T[]} array
10
- * @param {(element: T) => boolean} finder A finder function that takes an element of the array and returns a boolean that represents
11
- * the 'found status' for that element; whether it should have been found or not.
12
- */
13
- static ContainsAnElementFoundBy(array, finder) {
14
- if (!array || !finder) {
15
- return false;
16
- }
17
- return notNill(this.Find(array, finder));
18
- }
19
- /**
20
- * Cross-browser Array.find() function. Returns the first item in given array for which the foundBy function returns true. Returns
21
- * undefined when none was found.
22
- *
23
- * Example usage:
24
- * const foundItem: BusinessObject = ArrayUtils.Find<BusinessObject>(modelArray, (modelItem: BusinessObject) => <br>
25
- * (return modelItem.getId() === '1')
26
- * * });
27
- *
28
- * @param array The array with items to search in.
29
- * @param foundBy The finder function applied on each items of the array, when that returns true, the item is considered found.
30
- */
31
- static Find(array, foundBy) {
32
- if (!array || !foundBy) {
33
- return undefined;
34
- }
35
- for (let i = 0, len = array.length; i < len; i++) {
36
- const itemCur = array[i];
37
- if (foundBy(itemCur)) {
38
- return itemCur;
39
- }
40
- }
41
- return undefined;
42
- }
43
- // @returns empty array when nothing found, otherwise array with found items
44
- static FindAll(array, foundBy) {
45
- const answer = [];
46
- if (!array || !foundBy) {
47
- return answer;
48
- }
49
- for (let i = 0, len = array.length; i < len; i++) {
50
- const itemCur = array[i];
51
- if (foundBy(itemCur)) {
52
- answer.push(itemCur);
53
- }
54
- }
55
- return answer;
56
- }
57
- // returns a simple clone of given array, using array.slice(0)
58
- static CloneArray(array) {
59
- let answer = [];
60
- if (array) {
61
- answer = array.slice(0);
62
- }
63
- return answer;
64
- }
65
- /**
66
- * Returns a 'semi deep clone' of given array. Its first-level members are object-shallow-cloned (optionally with a strongly typed constructor),
67
- * or just as plain object (see param arrayItemsClass).
68
- * @param array
69
- * @param arrayItemsClass If provided, the cloned array's first-level items will be strongly typed to / constructed as this class. Otherwise
70
- * it'll be a plain object.
71
- * @param deepClone Set to true if array items contain FUNCTIONS that need to be cloned..
72
- * @returns {Array} semi-deep clone of given array
73
- */
74
- static CloneArrayAndItsItems(array, arrayItemsClass, deepClone = false) {
75
- const cloneArray = [];
76
- if (array) {
77
- for (let i = 0, len = array.length; i < len; i++) {
78
- if (deepClone) {
79
- cloneArray.push(ObjectUtils.GetDeepClone(array[i]));
80
- }
81
- else {
82
- cloneArray.push(ObjectUtils.GetShallowClone(array[i], arrayItemsClass));
83
- }
84
- }
85
- }
86
- else {
87
- return [];
88
- }
89
- return cloneArray;
90
- }
91
- /**
92
- * Removes element at given index from given array. Doesn't just set it to null like JavaScripts standard 'delete' does, but really
93
- * removes the element using splice().
94
- *
95
- * @param {number} index
96
- * @param {any[]} array in-out
97
- * @returns {boolean} True if and only if the element on given index is succesfully removed from given array.
98
- */
99
- static RemoveElementAtIndex(index, array) {
100
- if (NumberUtils.IsNaN(index) || index < 0 || !Array.isArray(array) || array.length === 0) {
101
- return false;
102
- }
103
- if (index in array) {
104
- array.splice(index, 1);
105
- return true;
106
- }
107
- else {
108
- return false;
109
- }
110
- }
111
- /**
112
- * Removes given element from given array. Doesn't just set it to null like JavaScripts standard 'delete' does, but really removes the
113
- * element using splice(). Also works on associative arrays.
114
- *
115
- * @param {T} element The element to remove.
116
- * @param {T[]} array The array to remove the element from.
117
- * @returns {boolean} True iff given element was truly successfully removed from given array.
118
- */
119
- static RemoveElement(element, array) {
120
- if (!Array.isArray(array)) {
121
- return false;
122
- }
123
- const index = array.indexOf(element);
124
- return ArrayUtils.RemoveElementAtIndex(index, array);
125
- }
126
- // Checks if given array is defined, and is an array, and has length > 0, and, optionally checks that the first element is of type given clazz.
127
- static IsArrayWithElements(arrayToCheck, classItemsMustBeInstanceOf) {
128
- if (isNill(arrayToCheck)) {
129
- return false;
130
- }
131
- if (Array.isArray(arrayToCheck) && arrayToCheck.length > 0) {
132
- if (classItemsMustBeInstanceOf) {
133
- return arrayToCheck[0] instanceof classItemsMustBeInstanceOf;
134
- }
135
- else {
136
- return true;
137
- }
138
- }
139
- else {
140
- return false;
141
- }
142
- }
143
- // Removes all elements from given array for which given filter function holds true. Returns true if at least one removed, else false.
144
- static RemoveElementsByFilter(array, filterFunction) {
145
- if (!ArrayUtils.IsArrayWithElements(array) || !filterFunction) {
146
- return false;
147
- }
148
- let atLeastOneRemoved = false;
149
- const len = array.length;
150
- for (let i = len - 1; i >= 0; i--) {
151
- const item = array[i];
152
- if (filterFunction.call(this, item) === true) {
153
- array.splice(i, 1);
154
- atLeastOneRemoved = true;
155
- }
156
- }
157
- return atLeastOneRemoved;
158
- }
159
- static MoveElement(element, toIndex, array) {
160
- if (!Array.isArray(array) || isNill(toIndex)) {
161
- return false;
162
- }
163
- const fromIndex = array.indexOf(element);
164
- const toIndexCorrected = NumberUtils.GetNearestNumberWithinBounds(toIndex, 0, array.length - 1);
165
- if (fromIndex === -1 || array[toIndexCorrected] === element) {
166
- // element did not exist in given array, or already existed on given toIndex
167
- return false;
168
- }
169
- array.splice(toIndexCorrected, 0, array.splice(fromIndex, 1)[0]);
170
- return true;
171
- }
172
- // PRE: elements exists in given array. POST: given elementToPlace has a lower index than given afterThisElement. Array is in-out manipulated.
173
- static PlaceElementAfterOther(array, elementToPlace, afterThisElement) {
174
- if (array) {
175
- const afterThisElIdx = array.indexOf(afterThisElement);
176
- const elToPlaceIdx = array.indexOf(elementToPlace);
177
- if (afterThisElIdx >= elToPlaceIdx) {
178
- ArrayUtils.MoveElement(elementToPlace, afterThisElIdx + 1, array);
179
- }
180
- }
181
- }
182
- }
183
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvYXJyYXktdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQzlFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxtREFBbUQsQ0FBQztBQUM5RSxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDdEYsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLGlFQUFpRSxDQUFDO0FBRXhGLE1BQU0sT0FBTyxVQUFVO0lBQ25COzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBSSxLQUFVLEVBQUUsTUFBK0I7UUFDakYsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNuQixPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUksS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVEOzs7Ozs7Ozs7OztPQVdHO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBSSxLQUFVLEVBQUUsT0FBNkI7UUFDM0QsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNwQixPQUFPLFNBQVMsQ0FBQztTQUNwQjtRQUVELEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLEdBQUcsR0FBVyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDOUQsTUFBTSxPQUFPLEdBQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVCLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFHO2dCQUNuQixPQUFPLE9BQU8sQ0FBQzthQUNsQjtTQUNKO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDckIsQ0FBQztJ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cGkvYnVpbGQvdXRpbHMvb2JqZWN0LXV0aWxzXCI7XHJcbmltcG9ydCB7TnVtYmVyVXRpbHN9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvdXRpbHMvbnVtYmVyLXV0aWxzXCI7XHJcbmltcG9ydCB7aXNOaWxsfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL3V0aWxzL2Z1bmN0aW9uL2lzLW5pbGwuZnVuY3Rpb25cIjtcclxuaW1wb3J0IHtub3ROaWxsfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL3V0aWxzL2Z1bmN0aW9uL25vdC1uaWxsLmZ1bmN0aW9uXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgQXJyYXlVdGlscyB7XHJcbiAgICAvKipcclxuICAgICAqIFJldHVybnMgd2hldGhlciBhdCBsZWFzdCBvbmUgZWxlbWVudCBpbiBnaXZlbiBhcnJheSBjb3VsZCBiZSBmb3VuZCBieSBnaXZlbiBmaW5kZXIgZnVuY3Rpb24uXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHtUW119IGFycmF5XHJcbiAgICAgKiBAcGFyYW0geyhlbGVtZW50OiBUKSA9PiBib29sZWFufSBmaW5kZXIgQSBmaW5kZXIgZnVuY3Rpb24gdGhhdCB0YWtlcyBhbiBlbGVtZW50IG9mIHRoZSBhcnJheSBhbmQgcmV0dXJucyBhIGJvb2xlYW4gdGhhdCByZXByZXNlbnRzXHJcbiAgICAgKiB0aGUgJ2ZvdW5kIHN0YXR1cycgZm9yIHRoYXQgZWxlbWVudDsgd2hldGhlciBpdCBzaG91bGQgaGF2ZSBiZWVuIGZvdW5kIG9yIG5vdC5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHN0YXRpYyBDb250YWluc0FuRWxlbWVudEZvdW5kQnk8VD4oYXJyYXk6IFRbXSwgZmluZGVyOiAoZWxlbWVudDogVCkgPT4gYm9vbGVhbik6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICghYXJyYXkgfHwgIWZpbmRlcikge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gbm90TmlsbCh0aGlzLkZpbmQ8VD4oYXJyYXksIGZpbmRlcikpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ3Jvc3MtYnJvd3NlciBBcnJheS5maW5kKCkgZnVuY3Rpb24uIFJldHVybnMgdGhlIGZpcnN0IGl0ZW0gaW4gZ2l2ZW4gYXJyYXkgZm9yIHdoaWNoIHRoZSBmb3VuZEJ5IGZ1bmN0aW9uIHJldHVybnMgdHJ1ZS4gUmV0dXJuc1xyXG4gICAgICogdW5kZWZpbmVkIHdoZW4gbm9uZSB3YXMgZm91bmQuXHJcbiAgICAgKlxyXG4gICAgICogRXhhbXBsZSB1c2FnZTpcclxuICAgICAqIGNvbnN0IGZvdW5kSXRlbTogQnVzaW5lc3NPYmplY3QgPSBBcnJheVV0aWxzLkZpbmQ8QnVzaW5lc3NPYmplY3Q+KG1vZGVsQXJyYXksIChtb2RlbEl0ZW06IEJ1c2luZXNzT2JqZWN0KSA9PiA8YnI+XHJcbiAgICAgKiAgICAgKHJldHVybiBtb2RlbEl0ZW0uZ2V0SWQoKSA9PT0gJzEnKVxyXG4gICAgICogICAqIH0pO1xyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBhcnJheSBUaGUgYXJyYXkgd2l0aCBpdGVtcyB0byBzZWFyY2ggaW4uXHJcbiAgICAgKiBAcGFyYW0gZm91bmRCeSBUaGUgZmluZGVyIGZ1bmN0aW9uIGFwcGxpZWQgb24gZWFjaCBpdGVtcyBvZiB0aGUgYXJyYXksIHdoZW4gdGhhdCByZXR1cm5zIHRydWUsIHRoZSBpdGVtIGlzIGNvbnNpZGVyZWQgZm91bmQuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgRmluZDxUPihhcnJheTogVFtdLCBmb3VuZEJ5OiAoaXRlbTogVCkgPT4gYm9vbGVhbik6IFQge1xyXG4gICAgICAgIGlmICghYXJyYXkgfHwgIWZvdW5kQnkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDAsIGxlbjogbnVtYmVyID0gYXJyYXkubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgY29uc3QgaXRlbUN1cjogVCA9IGFycmF5W2ldO1xyXG4gICAgICAgICAgICBpZiAoZm91bmRCeShpdGVtQ3VyKSApIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBpdGVtQ3VyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQHJldHVybnMgZW1wdHkgYXJyYXkgd2hlbiBub3RoaW5nIGZvdW5kLCBvdGhlcndpc2UgYXJyYXkgd2l0aCBmb3VuZCBpdGVtc1xyXG4gICAgcHVibGljIHN0YXRpYyBGaW5kQWxsPFQ+KGFycmF5OiBUW10sIGZvdW5kQnk6IChpdGVtOiBUKSA9PiBib29sZWFuKTogVFtdIHtcclxuICAgICAgICBjb25zdCBhbnN3ZXI6IFRbXSA9IFtdO1xyXG4gICAgICAgIGlmICghYXJyYXkgfHwgIWZvdW5kQnkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGFuc3dlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDAsIGxlbjogbnVtYmVyID0gYXJyYXkubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgY29uc3QgaXRlbUN1cjogVCA9IGFycmF5W2ldO1xyXG4gICAgICAgICAgICBpZiAoZm91bmRCeShpdGVtQ3VyKSkge1xyXG4gICAgICAgICAgICAgICAgYW5zd2VyLnB1c2goaXRlbUN1cik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGFuc3dlcjtcclxuICAgIH1cclxuXHJcbiAgICAvLyByZXR1cm5zIGEgc2ltcGxlIGNsb25lIG9mIGdpdmVuIGFycmF5LCB1c2luZyBhcnJheS5zbGljZSgwKVxyXG4gICAgcHVibGljIHN0YXRpYyBDbG9uZUFycmF5PFQ+KGFycmF5OiBUW10pOiBUW10ge1xyXG4gICAgICAgIGxldCBhbnN3ZXI6IFRbXSA9IFtdO1xyXG5cclxuICAgICAgICBpZiAoYXJyYXkpIHtcclxuICAgICAgICAgICAgYW5zd2VyID0gYXJyYXkuc2xpY2UoMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gYW5zd2VyO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0dXJucyBhICdzZW1pIGRlZXAgY2xvbmUnIG9mIGdpdmVuIGFycmF5LiBJdHMgZmlyc3QtbGV2ZWwgbWVtYmVycyBhcmUgb2JqZWN0LXNoYWxsb3ctY2xvbmVkIChvcHRpb25hbGx5IHdpdGggYSBzdHJvbmdseSB0eXBlZCBjb25zdHJ1Y3RvciksXHJcbiAgICAgKiBvciBqdXN0IGFzIHBsYWluIG9iamVjdCAoc2VlIHBhcmFtIGFycmF5SXRlbXNDbGFzcykuXHJcbiAgICAgKiBAcGFyYW0gYXJyYXlcclxuICAgICAqIEBwYXJhbSBhcnJheUl0ZW1zQ2xhc3MgSWYgcHJvdmlkZWQsIHRoZSBjbG9uZWQgYXJyYXkncyBmaXJzdC1sZXZlbCBpdGVtcyB3aWxsIGJlIHN0cm9uZ2x5IHR5cGVkIHRvIC8gY29uc3RydWN0ZWQgYXMgdGhpcyBjbGFzcy4gT3RoZXJ3aXNlXHJcbiAgICAgKiBpdCdsbCBiZSBhIHBsYWluIG9iamVjdC5cclxuICAgICAqIEBwYXJhbSBkZWVwQ2xvbmUgU2V0IHRvIHRydWUgaWYgYXJyYXkgaXRlbXMgY29udGFpbiBGVU5DVElPTlMgdGhhdCBuZWVkIHRvIGJlIGNsb25lZC4uXHJcbiAgICAgKiBAcmV0dXJucyB7QXJyYXl9IHNlbWktZGVlcCBjbG9uZSBvZiBnaXZlbiBhcnJheVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIENsb25lQXJyYXlBbmRJdHNJdGVtczxUPihhcnJheTogVFtdLCBhcnJheUl0ZW1zQ2xhc3M/OiBhbnksIGRlZXBDbG9uZTogYm9vbGVhbiA9IGZhbHNlKTogVFtdIHtcclxuICAgICAgICBjb25zdCBjbG9uZUFycmF5OiBUW10gPSBbXTtcclxuXHJcbiAgICAgICAgaWYgKGFycmF5KSB7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDAsIGxlbjogbnVtYmVyID0gYXJyYXkubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgICAgIGlmIChkZWVwQ2xvbmUpIHtcclxuICAgICAgICAgICAgICAgICAgICBjbG9uZUFycmF5LnB1c2goT2JqZWN0VXRpbHMuR2V0RGVlcENsb25lKGFycmF5W2ldKSk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGNsb25lQXJyYXkucHVzaChPYmplY3RVdGlscy5HZXRTaGFsbG93Q2xvbmUoYXJyYXlbaV0sIGFycmF5SXRlbXNDbGFzcykpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIFtdO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGNsb25lQXJyYXk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZW1vdmVzIGVsZW1lbnQgYXQgZ2l2ZW4gaW5kZXggZnJvbSBnaXZlbiBhcnJheS4gRG9lc24ndCBqdXN0IHNldCBpdCB0byBudWxsIGxpa2UgSmF2YVNjcmlwdHMgc3RhbmRhcmQgJ2RlbGV0ZScgZG9lcywgYnV0IHJlYWxseVxyXG4gICAgICogcmVtb3ZlcyB0aGUgZWxlbWVudCB1c2luZyBzcGxpY2UoKS5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0ge251bWJlcn0gaW5kZXhcclxuICAgICAqIEBwYXJhbSB7YW55W119IGFycmF5IGluLW91dFxyXG4gICAgICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIGVsZW1lbnQgb24gZ2l2ZW4gaW5kZXggaXMgc3VjY2VzZnVsbHkgcmVtb3ZlZCBmcm9tIGdpdmVuIGFycmF5LlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIFJlbW92ZUVsZW1lbnRBdEluZGV4KGluZGV4OiBudW1iZXIsIGFycmF5OiBhbnlbXSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmIChOdW1iZXJVdGlscy5Jc05hTihpbmRleCkgfHwgaW5kZXggPCAwIHx8ICFBcnJheS5pc0FycmF5KGFycmF5KSB8fCBhcnJheS5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGluZGV4IGluIGFycmF5KSB7XHJcbiAgICAgICAgICAgIGFycmF5LnNwbGljZShpbmRleCwgMSk7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZW1vdmVzIGdpdmVuIGVsZW1lbnQgZnJvbSBnaXZlbiBhcnJheS4gRG9lc24ndCBqdXN0IHNldCBpdCB0byBudWxsIGxpa2UgSmF2YVNjcmlwdHMgc3RhbmRhcmQgJ2RlbGV0ZScgZG9lcywgYnV0IHJlYWxseSByZW1vdmVzIHRoZVxyXG4gICAgICogZWxlbWVudCB1c2luZyBzcGxpY2UoKS4gQWxzbyB3b3JrcyBvbiBhc3NvY2lhdGl2ZSBhcnJheXMuXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHtUfSBlbGVtZW50IFRoZSBlbGVtZW50IHRvIHJlbW92ZS5cclxuICAgICAqIEBwYXJhbSB7VFtdfSBhcnJheSBUaGUgYXJyYXkgdG8gcmVtb3ZlIHRoZSBlbGVtZW50IGZyb20uXHJcbiAgICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZmYgZ2l2ZW4gZWxlbWVudCB3YXMgdHJ1bHkgc3VjY2Vzc2Z1bGx5IHJlbW92ZWQgZnJvbSBnaXZlbiBhcnJheS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHN0YXRpYyBSZW1vdmVFbGVtZW50PFQ+KGVsZW1lbnQ6IFQsIGFycmF5OiBUW10pOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoYXJyYXkpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGluZGV4OiBudW1iZXIgPSBhcnJheS5pbmRleE9mKGVsZW1lbnQpO1xyXG4gICAgICAgIHJldHVybiBBcnJheVV0aWxzLlJlbW92ZUVsZW1lbnRBdEluZGV4KGluZGV4LCBhcnJheSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQ2hlY2tzIGlmIGdpdmVuIGFycmF5IGlzIGRlZmluZWQsIGFuZCBpcyBhbiBhcnJheSwgYW5kIGhhcyBsZW5ndGggPiAwLCBhbmQsIG9wdGlvbmFsbHkgY2hlY2tzIHRoYXQgdGhlIGZpcnN0IGVsZW1lbnQgaXMgb2YgdHlwZSBnaXZlbiBjbGF6ei5cclxuICAgIHB1YmxpYyBzdGF0aWMgSXNBcnJheVdpdGhFbGVtZW50czxUPihhcnJheVRvQ2hlY2s6IFRbXSwgY2xhc3NJdGVtc011c3RCZUluc3RhbmNlT2Y/OiBhbnkpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoaXNOaWxsKGFycmF5VG9DaGVjaykpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYXJyYXlUb0NoZWNrKSAmJiBhcnJheVRvQ2hlY2subGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICBpZiAoY2xhc3NJdGVtc011c3RCZUluc3RhbmNlT2YpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBhcnJheVRvQ2hlY2tbMF0gaW5zdGFuY2VvZiBjbGFzc0l0ZW1zTXVzdEJlSW5zdGFuY2VPZjtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBSZW1vdmVzIGFsbCBlbGVtZW50cyBmcm9tIGdpdmVuIGFycmF5IGZvciB3aGljaCBnaXZlbiBmaWx0ZXIgZnVuY3Rpb24gaG9sZHMgdHJ1ZS4gUmV0dXJucyB0cnVlIGlmIGF0IGxlYXN0IG9uZSByZW1vdmVkLCBlbHNlIGZhbHNlLlxyXG4gICAgcHVibGljIHN0YXRpYyBSZW1vdmVFbGVtZW50c0J5RmlsdGVyKGFycmF5OiBhbnlbXSwgZmlsdGVyRnVuY3Rpb246IChpdGVtOiBhbnkpID0+IGJvb2xlYW4pOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoIUFycmF5VXRpbHMuSXNBcnJheVdpdGhFbGVtZW50cyhhcnJheSkgfHwgIWZpbHRlckZ1bmN0aW9uKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxldCBhdExlYXN0T25lUmVtb3ZlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgICAgICBjb25zdCBsZW46IG51bWJlciA9IGFycmF5Lmxlbmd0aDtcclxuICAgICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSBsZW4gLSAxOyBpID49IDA7IGktLSkge1xyXG4gICAgICAgICAgICBjb25zdCBpdGVtOiBhbnkgPSBhcnJheVtpXTtcclxuICAgICAgICAgICAgaWYgKGZpbHRlckZ1bmN0aW9uLmNhbGwodGhpcywgaXRlbSkgPT09IHRydWUpIHtcclxuICAgICAgICAgICAgICAgIGFycmF5LnNwbGljZShpLCAxKTtcclxuICAgICAgICAgICAgICAgIGF0TGVhc3RPbmVSZW1vdmVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGF0TGVhc3RPbmVSZW1vdmVkO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgTW92ZUVsZW1lbnQ8VD4oZWxlbWVudDogVCwgdG9JbmRleDogbnVtYmVyLCBhcnJheTogVFtdKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGFycmF5KSB8fCBpc05pbGwodG9JbmRleCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgZnJvbUluZGV4OiBudW1iZXIgPSBhcnJheS5pbmRleE9mKGVsZW1lbnQpO1xyXG4gICAgICAgIGNvbnN0IHRvSW5kZXhDb3JyZWN0ZWQ6IG51bWJlciA9IE51bWJlclV0aWxzLkdldE5lYXJlc3ROdW1iZXJXaXRoaW5Cb3VuZHModG9JbmRleCwgMCwgYXJyYXkubGVuZ3RoIC0gMSk7XHJcbiAgICAgICAgaWYgKGZyb21JbmRleCA9PT0gLTEgfHwgYXJyYXlbdG9JbmRleENvcnJlY3RlZF0gPT09IGVsZW1lbnQpIHtcclxuICAgICAgICAgICAgLy8gZWxlbWVudCBkaWQgbm90IGV4aXN0IGluIGdpdmVuIGFycmF5LCBvciBhbHJlYWR5IGV4aXN0ZWQgb24gZ2l2ZW4gdG9JbmRleFxyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGFycmF5LnNwbGljZSh0b0luZGV4Q29ycmVjdGVkLCAwLCBhcnJheS5zcGxpY2UoZnJvbUluZGV4LCAxKVswXSk7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUFJFOiBlbGVtZW50cyBleGlzdHMgaW4gZ2l2ZW4gYXJyYXkuIFBPU1Q6IGdpdmVuIGVsZW1lbnRUb1BsYWNlIGhhcyBhIGxvd2VyIGluZGV4IHRoYW4gZ2l2ZW4gYWZ0ZXJUaGlzRWxlbWVudC4gQXJyYXkgaXMgaW4tb3V0IG1hbmlwdWxhdGVkLlxyXG4gICAgcHVibGljIHN0YXRpYyBQbGFjZUVsZW1lbnRBZnRlck90aGVyKGFycmF5OiBhbnlbXSwgZWxlbWVudFRvUGxhY2U6IGFueSwgYWZ0ZXJUaGlzRWxlbWVudDogYW55KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKGFycmF5KSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGFmdGVyVGhpc0VsSWR4OiBudW1iZXIgPSBhcnJheS5pbmRleE9mKGFmdGVyVGhpc0VsZW1lbnQpO1xyXG4gICAgICAgICAgICBjb25zdCBlbFRvUGxhY2VJZHg6IG51bWJlciA9IGFycmF5LmluZGV4T2YoZWxlbWVudFRvUGxhY2UpO1xyXG4gICAgICAgICAgICBpZiAoYWZ0ZXJUaGlzRWxJZHggPj0gZWxUb1BsYWNlSWR4KSB7XHJcbiAgICAgICAgICAgICAgICBBcnJheVV0aWxzLk1vdmVFbGVtZW50KGVsZW1lbnRUb1BsYWNlLCBhZnRlclRoaXNFbElkeCArIDEsIGFycmF5KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,5 +0,0 @@
1
- // @returns true iff given value equals null or equals undefined
2
- export function isNill(value) {
3
- return value === null || value === undefined;
4
- }
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtbmlsbC5mdW5jdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9pcy1uaWxsLmZ1bmN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdFQUFnRTtBQUNoRSxNQUFNLFVBQVUsTUFBTSxDQUFDLEtBQVU7SUFDN0IsT0FBTyxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTLENBQUM7QUFDakQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEByZXR1cm5zIHRydWUgaWZmIGdpdmVuIHZhbHVlIGVxdWFscyBudWxsIG9yIGVxdWFscyB1bmRlZmluZWRcclxuZXhwb3J0IGZ1bmN0aW9uIGlzTmlsbCh2YWx1ZTogYW55KTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZDtcclxufSJdfQ==