@hitsoft/kadooglu-keops 0.0.1 → 0.0.3

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 (565) hide show
  1. package/config/enums/route-names.d.ts +15 -1
  2. package/esm2020/config/enums/route-names.mjs +1 -1
  3. package/esm2020/config/providers/route.provider.mjs +132 -4
  4. package/esm2020/lib/features/bl-tracking/components/bl-tracking-form.component.mjs +82 -0
  5. package/esm2020/lib/features/bl-tracking/components/bl-tracking.component.mjs +65 -0
  6. package/esm2020/lib/features/bl-tracking/hit-bl-tracking-routing.module.mjs +29 -0
  7. package/esm2020/lib/features/bl-tracking/hit-bl-tracking.module.mjs +58 -0
  8. package/esm2020/lib/features/carriers/components/carrier-form.component.mjs +78 -0
  9. package/esm2020/lib/features/carriers/components/carriers.component.mjs +66 -0
  10. package/esm2020/lib/features/carriers/hit-carriers-routing.module.mjs +29 -0
  11. package/esm2020/lib/features/carriers/hit-carriers.module.mjs +58 -0
  12. package/esm2020/lib/features/container-definitions/components/container-definition-form.component.mjs +2 -2
  13. package/esm2020/lib/features/container-definitions/components/container-definitions.component.mjs +2 -2
  14. package/esm2020/lib/features/container-loading-counts/components/container-loading-counts.component.mjs +4 -4
  15. package/esm2020/lib/features/container-loading-scenarios/components/container-loading-scenarios.component.mjs +2 -2
  16. package/esm2020/lib/features/container-loading-scenarios/container-loading-scenario-l10n-helper.mjs +2 -2
  17. package/esm2020/lib/features/container-mix-types/components/container-mix-type-form.component.mjs +2 -2
  18. package/esm2020/lib/features/container-mix-types/components/container-mix-types.component.mjs +2 -2
  19. package/esm2020/lib/features/container-pallet-capacities/components/container-pallet-capacities.component.mjs +7 -6
  20. package/esm2020/lib/features/container-pallet-capacities/components/container-pallet-capacity-form.component.mjs +2 -2
  21. package/esm2020/lib/features/cost-calculation/components/cost-calculation-inputs.component.mjs +20 -11
  22. package/esm2020/lib/features/cost-calculation/components/cost-calculation-result-sum.component.mjs +2 -2
  23. package/esm2020/lib/features/cost-calculation/components/cost-calculation.component.mjs +16 -22
  24. package/esm2020/lib/features/cost-calculation/cost-calculation.models.mjs +1 -1
  25. package/esm2020/lib/features/cost-calculation/engine/currency.utils.mjs +2 -2
  26. package/esm2020/lib/features/cost-calculation/engine/item-resolver.mjs +2 -2
  27. package/esm2020/lib/features/cost-calculation/engine/models.mjs +2 -2
  28. package/esm2020/lib/features/cost-calculation/engine/stage-builder.mjs +4 -4
  29. package/esm2020/lib/features/cost-calculation/hit-cost-calculation.module.mjs +7 -3
  30. package/esm2020/lib/features/cost-groups/components/cost-group-form.component.mjs +3 -3
  31. package/esm2020/lib/features/cost-groups/components/cost-groups.component.mjs +3 -3
  32. package/esm2020/lib/features/cost-groups/cost-group-role-l10n-helper.mjs +2 -2
  33. package/esm2020/lib/features/cost-items/components/cost-item-form.component.mjs +8 -7
  34. package/esm2020/lib/features/cost-items/components/cost-items.component.mjs +2 -2
  35. package/esm2020/lib/features/cost-items/cost-item-l10n-helper.mjs +2 -2
  36. package/esm2020/lib/features/cost-parameter-categories/components/cost-parameter-categories.component.mjs +2 -2
  37. package/esm2020/lib/features/cost-parameter-categories/components/cost-parameter-category-form.component.mjs +4 -4
  38. package/esm2020/lib/features/cost-parameter-categories/cost-parameter-category-l10n-helper.mjs +2 -5
  39. package/esm2020/lib/features/cost-parameters/components/cost-parameter-form.component.mjs +20 -38
  40. package/esm2020/lib/features/cost-parameters/components/cost-parameters.component.mjs +18 -11
  41. package/esm2020/lib/features/cost-parameters/cost-parameter-l10n-helper.mjs +2 -2
  42. package/esm2020/lib/features/destination-ports/components/destination-port-form.component.mjs +86 -0
  43. package/esm2020/lib/features/destination-ports/components/destination-ports.component.mjs +74 -0
  44. package/esm2020/lib/features/destination-ports/hit-destination-ports-routing.module.mjs +29 -0
  45. package/esm2020/lib/features/destination-ports/hit-destination-ports.module.mjs +58 -0
  46. package/esm2020/lib/features/exchange-rates/components/central-bank-rates.component.mjs +1 -1
  47. package/esm2020/lib/features/exchange-rates/components/exchange-rates.component.mjs +2 -2
  48. package/esm2020/lib/features/exchange-rates/components/fixed-rates-form.component.mjs +3 -3
  49. package/esm2020/lib/features/fob-inland-definitions/components/fob-inland-definition-form.component.mjs +80 -0
  50. package/esm2020/lib/features/fob-inland-definitions/components/fob-inland-definitions.component.mjs +65 -0
  51. package/esm2020/lib/features/fob-inland-definitions/hit-fob-inland-definitions-routing.module.mjs +29 -0
  52. package/esm2020/lib/features/fob-inland-definitions/hit-fob-inland-definitions.module.mjs +58 -0
  53. package/esm2020/lib/features/freight-offers/components/freight-offer-copy.component.mjs +67 -0
  54. package/esm2020/lib/features/freight-offers/components/freight-offer-form.component.mjs +181 -0
  55. package/esm2020/lib/features/freight-offers/components/freight-offers.component.mjs +159 -0
  56. package/esm2020/lib/features/freight-offers/hit-freight-offers-routing.module.mjs +29 -0
  57. package/esm2020/lib/features/freight-offers/hit-freight-offers.module.mjs +62 -0
  58. package/esm2020/lib/features/incoterms/components/incoterm-form.component.mjs +81 -0
  59. package/esm2020/lib/features/incoterms/components/incoterms.component.mjs +65 -0
  60. package/esm2020/lib/features/incoterms/hit-incoterms-routing.module.mjs +29 -0
  61. package/esm2020/lib/features/incoterms/hit-incoterms.module.mjs +58 -0
  62. package/esm2020/lib/features/index.mjs +29 -1
  63. package/esm2020/lib/features/item-package-groups/components/item-package-group-form.component.mjs +78 -0
  64. package/esm2020/lib/features/item-package-groups/components/item-package-groups.component.mjs +69 -0
  65. package/esm2020/lib/features/item-package-groups/hit-item-package-groups-routing.module.mjs +29 -0
  66. package/esm2020/lib/features/item-package-groups/hit-item-package-groups.module.mjs +58 -0
  67. package/esm2020/lib/features/item-package-types/components/item-package-type-form.component.mjs +78 -0
  68. package/esm2020/lib/features/item-package-types/components/item-package-types.component.mjs +69 -0
  69. package/esm2020/lib/features/item-package-types/hit-item-package-types-routing.module.mjs +29 -0
  70. package/esm2020/lib/features/item-package-types/hit-item-package-types.module.mjs +58 -0
  71. package/esm2020/lib/features/item-product-types/components/item-product-type-form.component.mjs +78 -0
  72. package/esm2020/lib/features/item-product-types/components/item-product-types.component.mjs +69 -0
  73. package/esm2020/lib/features/item-product-types/hit-item-product-types-routing.module.mjs +29 -0
  74. package/esm2020/lib/features/item-product-types/hit-item-product-types.module.mjs +58 -0
  75. package/esm2020/lib/features/lines/components/line-form.component.mjs +78 -0
  76. package/esm2020/lib/features/lines/components/lines.component.mjs +66 -0
  77. package/esm2020/lib/features/lines/hit-lines-routing.module.mjs +29 -0
  78. package/esm2020/lib/features/lines/hit-lines.module.mjs +58 -0
  79. package/esm2020/lib/features/packaging-materials/components/packaging-material-form.component.mjs +2 -2
  80. package/esm2020/lib/features/packaging-materials/components/packaging-materials.component.mjs +2 -2
  81. package/esm2020/lib/features/packaging-prices/components/packaging-price-form.component.mjs +6 -11
  82. package/esm2020/lib/features/packaging-prices/components/packaging-prices.component.mjs +2 -2
  83. package/esm2020/lib/features/packaging-prices/packaging-price-calculator.mjs +2 -2
  84. package/esm2020/lib/features/packaging-prices/packaging-price-excel.service.mjs +2 -2
  85. package/esm2020/lib/features/packaging-prices/packaging-price-form.factory.mjs +1 -1
  86. package/esm2020/lib/features/packaging-prices/packaging-price-lines.builder.mjs +2 -2
  87. package/esm2020/lib/features/packaging-types/components/packaging-type-form.component.mjs +2 -2
  88. package/esm2020/lib/features/packaging-types/components/packaging-types.component.mjs +2 -2
  89. package/esm2020/lib/features/pallet-definitions/components/pallet-definition-form.component.mjs +2 -2
  90. package/esm2020/lib/features/pallet-definitions/components/pallet-definitions.component.mjs +2 -2
  91. package/esm2020/lib/features/pos/components/pos-form.component.mjs +77 -0
  92. package/esm2020/lib/features/pos/components/pos.component.mjs +65 -0
  93. package/esm2020/lib/features/pos/hit-pos-routing.module.mjs +29 -0
  94. package/esm2020/lib/features/pos/hit-pos.module.mjs +58 -0
  95. package/esm2020/lib/features/price-parameter-types/components/price-parameter-type-form.component.mjs +2 -2
  96. package/esm2020/lib/features/price-parameter-types/components/price-parameter-types.component.mjs +4 -4
  97. package/esm2020/lib/features/price-parameters/components/price-parameter-form-cost-items.component.mjs +32 -0
  98. package/esm2020/lib/features/price-parameters/components/price-parameter-form-discount-rates-modal.component.mjs +52 -0
  99. package/esm2020/lib/features/price-parameters/components/price-parameter-form-discount-rates.component.mjs +84 -0
  100. package/esm2020/lib/features/price-parameters/components/price-parameter-form-items.component.mjs +43 -0
  101. package/esm2020/lib/features/price-parameters/components/price-parameter-form-price-lists.component.mjs +42 -0
  102. package/esm2020/lib/features/price-parameters/components/price-parameter-form.component.mjs +252 -0
  103. package/esm2020/lib/features/price-parameters/components/price-parameters.component.mjs +78 -0
  104. package/esm2020/lib/features/price-parameters/hit-price-parameters-routing.module.mjs +46 -0
  105. package/esm2020/lib/features/price-parameters/hit-price-parameters.module.mjs +93 -0
  106. package/esm2020/lib/features/price-parameters/price-parameter-cost-match.service.mjs +21 -0
  107. package/esm2020/lib/features/price-parameters/price-parameter-form-data.service.mjs +50 -0
  108. package/esm2020/lib/features/price-parameters/price-parameter-l10n-helper.mjs +7 -0
  109. package/esm2020/lib/features/price-parameters/price-parameter-lookups.service.mjs +32 -0
  110. package/esm2020/lib/features/sap-sales-persons/components/sap-sales-person-form.component.mjs +3 -3
  111. package/esm2020/lib/features/sap-sales-persons/components/sap-sales-persons.component.mjs +5 -3
  112. package/esm2020/lib/features/settings/components/cost-settings.component.mjs +2 -2
  113. package/esm2020/lib/kadooglu-keops-routing.module.mjs +25 -1
  114. package/esm2020/lib/shared/amount-currency-input/amount-currency-input.component.mjs +66 -0
  115. package/esm2020/lib/shared/cost-item-classification.utils.mjs +12 -0
  116. package/esm2020/lib/shared/cost-item-rows.builder.mjs +40 -0
  117. package/esm2020/lib/shared/pipes/resolve-code-name.pipe.mjs +16 -0
  118. package/esm2020/lib/shared/shared-ui.module.mjs +20 -0
  119. package/esm2020/lib/utils/currency.utils.mjs +4 -2
  120. package/esm2020/lib/utils/exchange-rate.utils.mjs +12 -0
  121. package/esm2020/proxy/bl-tracking/dtos/index.mjs +2 -0
  122. package/esm2020/proxy/bl-tracking/dtos/models.mjs +2 -0
  123. package/esm2020/{lib/proxy/cost-items → proxy/business-partners}/dtos/index.mjs +1 -1
  124. package/esm2020/proxy/business-partners/dtos/models.mjs +2 -0
  125. package/esm2020/proxy/carriers/dtos/index.mjs +2 -0
  126. package/esm2020/proxy/carriers/dtos/models.mjs +2 -0
  127. package/esm2020/{lib/proxy/exchange-rates → proxy/container-definitions}/dtos/index.mjs +1 -1
  128. package/esm2020/proxy/container-definitions/dtos/models.mjs +2 -0
  129. package/esm2020/proxy/container-loading-counts/dtos/index.mjs +2 -0
  130. package/esm2020/proxy/container-loading-counts/dtos/models.mjs +2 -0
  131. package/esm2020/proxy/container-loading-counts/loading-target-kind.enum.mjs +8 -0
  132. package/esm2020/proxy/container-loading-scenarios/dtos/index.mjs +2 -0
  133. package/esm2020/proxy/container-loading-scenarios/dtos/models.mjs +2 -0
  134. package/esm2020/proxy/container-loading-scenarios/pallet-status.enum.mjs +8 -0
  135. package/esm2020/proxy/container-mix-types/dtos/index.mjs +2 -0
  136. package/esm2020/proxy/container-mix-types/dtos/models.mjs +2 -0
  137. package/esm2020/proxy/container-pallet-capacities/dtos/index.mjs +2 -0
  138. package/esm2020/proxy/container-pallet-capacities/dtos/models.mjs +2 -0
  139. package/esm2020/proxy/controllers/bl-tracking.service.mjs +36 -0
  140. package/esm2020/proxy/controllers/business-partner.service.mjs +22 -0
  141. package/esm2020/proxy/controllers/carrier.service.mjs +36 -0
  142. package/esm2020/proxy/controllers/container-definition.service.mjs +40 -0
  143. package/esm2020/proxy/controllers/container-loading-count.service.mjs +31 -0
  144. package/esm2020/proxy/controllers/container-loading-scenario.service.mjs +27 -0
  145. package/esm2020/proxy/controllers/container-mix-type.service.mjs +40 -0
  146. package/esm2020/proxy/controllers/container-pallet-capacity.service.mjs +40 -0
  147. package/esm2020/proxy/controllers/cost-group.service.mjs +40 -0
  148. package/esm2020/proxy/controllers/cost-item.service.mjs +40 -0
  149. package/esm2020/proxy/controllers/cost-parameter-category.service.mjs +40 -0
  150. package/esm2020/proxy/controllers/cost-parameter.service.mjs +36 -0
  151. package/esm2020/proxy/controllers/cost-settings.service.mjs +27 -0
  152. package/esm2020/proxy/controllers/destination-port.service.mjs +44 -0
  153. package/esm2020/proxy/controllers/exchange-rate.service.mjs +27 -0
  154. package/esm2020/proxy/controllers/fob-inland-definition.service.mjs +36 -0
  155. package/esm2020/proxy/controllers/freight-offer.service.mjs +57 -0
  156. package/esm2020/proxy/controllers/incoterm.service.mjs +36 -0
  157. package/esm2020/proxy/controllers/index.mjs +33 -0
  158. package/esm2020/proxy/controllers/item-package-group.service.mjs +40 -0
  159. package/esm2020/proxy/controllers/item-package-type.service.mjs +40 -0
  160. package/esm2020/proxy/controllers/item-product-type.service.mjs +40 -0
  161. package/esm2020/proxy/controllers/item.service.mjs +23 -0
  162. package/esm2020/proxy/controllers/line.service.mjs +36 -0
  163. package/esm2020/proxy/controllers/packaging-material.service.mjs +40 -0
  164. package/esm2020/proxy/controllers/packaging-price.service.mjs +55 -0
  165. package/esm2020/proxy/controllers/packaging-type.service.mjs +40 -0
  166. package/esm2020/proxy/controllers/pallet-definition.service.mjs +40 -0
  167. package/esm2020/proxy/controllers/pos.service.mjs +36 -0
  168. package/esm2020/proxy/controllers/price-list.service.mjs +28 -0
  169. package/esm2020/proxy/controllers/price-parameter-type.service.mjs +40 -0
  170. package/esm2020/proxy/controllers/price-parameter.service.mjs +40 -0
  171. package/esm2020/proxy/controllers/sap-sales-person.service.mjs +27 -0
  172. package/esm2020/proxy/cost-groups/cost-group-role.enum.mjs +10 -0
  173. package/esm2020/proxy/cost-groups/dtos/index.mjs +2 -0
  174. package/esm2020/proxy/cost-groups/dtos/models.mjs +2 -0
  175. package/esm2020/proxy/cost-items/cost-item-calculation-type.enum.mjs +9 -0
  176. package/esm2020/{lib/proxy → proxy}/cost-items/cost-item-system-code.enum.mjs +1 -1
  177. package/esm2020/proxy/cost-items/dtos/index.mjs +2 -0
  178. package/esm2020/proxy/cost-items/dtos/models.mjs +2 -0
  179. package/esm2020/proxy/cost-parameter-categories/cost-parameter-category-parent-code.enum.mjs +8 -0
  180. package/esm2020/{lib/proxy/pallet-definitions → proxy/cost-parameter-categories}/dtos/index.mjs +1 -1
  181. package/esm2020/proxy/cost-parameter-categories/dtos/models.mjs +2 -0
  182. package/esm2020/proxy/cost-parameters/cost-parameter-status.enum.mjs +9 -0
  183. package/esm2020/proxy/cost-parameters/dtos/index.mjs +2 -0
  184. package/esm2020/proxy/cost-parameters/dtos/models.mjs +2 -0
  185. package/esm2020/proxy/currencies/currency.enum.mjs +9 -0
  186. package/esm2020/proxy/currencies/index.mjs +2 -0
  187. package/esm2020/proxy/destination-ports/dtos/index.mjs +2 -0
  188. package/esm2020/proxy/destination-ports/dtos/models.mjs +2 -0
  189. package/esm2020/proxy/exchange-rates/dtos/index.mjs +2 -0
  190. package/esm2020/proxy/exchange-rates/dtos/models.mjs +2 -0
  191. package/esm2020/proxy/exchange-rates/exchange-rate-source.enum.mjs +8 -0
  192. package/esm2020/{lib/proxy/cost-parameters → proxy/fob-inland-definitions}/dtos/index.mjs +1 -1
  193. package/esm2020/proxy/fob-inland-definitions/dtos/models.mjs +2 -0
  194. package/esm2020/proxy/freight-offers/dtos/index.mjs +2 -0
  195. package/esm2020/proxy/freight-offers/dtos/models.mjs +2 -0
  196. package/esm2020/proxy/hitsoft-kadooglu-keops-proxy.mjs +5 -0
  197. package/esm2020/proxy/incoterms/dtos/index.mjs +2 -0
  198. package/esm2020/proxy/incoterms/dtos/models.mjs +2 -0
  199. package/esm2020/proxy/item-package-groups/dtos/index.mjs +2 -0
  200. package/esm2020/proxy/item-package-groups/dtos/models.mjs +2 -0
  201. package/esm2020/{lib/proxy/cost-groups → proxy/item-package-types}/dtos/index.mjs +1 -1
  202. package/esm2020/proxy/item-package-types/dtos/models.mjs +2 -0
  203. package/esm2020/proxy/item-product-types/dtos/index.mjs +2 -0
  204. package/esm2020/proxy/item-product-types/dtos/models.mjs +2 -0
  205. package/esm2020/proxy/items/dtos/index.mjs +2 -0
  206. package/esm2020/proxy/items/dtos/models.mjs +2 -0
  207. package/esm2020/proxy/lines/dtos/index.mjs +2 -0
  208. package/esm2020/proxy/lines/dtos/models.mjs +2 -0
  209. package/esm2020/proxy/packaging-materials/dtos/index.mjs +2 -0
  210. package/esm2020/proxy/packaging-materials/dtos/models.mjs +2 -0
  211. package/esm2020/proxy/packaging-prices/dtos/index.mjs +2 -0
  212. package/esm2020/proxy/packaging-prices/dtos/models.mjs +2 -0
  213. package/esm2020/proxy/packaging-types/dtos/index.mjs +2 -0
  214. package/esm2020/proxy/packaging-types/dtos/models.mjs +2 -0
  215. package/esm2020/proxy/pallet-definitions/dtos/index.mjs +2 -0
  216. package/esm2020/proxy/pallet-definitions/dtos/models.mjs +2 -0
  217. package/esm2020/proxy/pos/dtos/index.mjs +2 -0
  218. package/esm2020/proxy/pos/dtos/models.mjs +2 -0
  219. package/esm2020/proxy/price-lists/dtos/index.mjs +2 -0
  220. package/esm2020/proxy/price-lists/dtos/models.mjs +2 -0
  221. package/esm2020/proxy/price-parameter-types/dtos/index.mjs +2 -0
  222. package/esm2020/proxy/price-parameter-types/dtos/models.mjs +2 -0
  223. package/esm2020/proxy/price-parameters/dtos/index.mjs +2 -0
  224. package/esm2020/proxy/price-parameters/dtos/models.mjs +2 -0
  225. package/esm2020/proxy/price-parameters/price-parameter-status.enum.mjs +9 -0
  226. package/esm2020/proxy/public-api.mjs +45 -0
  227. package/esm2020/proxy/sales-persons/dtos/index.mjs +2 -0
  228. package/esm2020/proxy/sales-persons/dtos/models.mjs +2 -0
  229. package/esm2020/proxy/settings/index.mjs +2 -0
  230. package/esm2020/proxy/settings/models.mjs +2 -0
  231. package/esm2020/public-api.mjs +1 -2
  232. package/fesm2015/hitsoft-kadooglu-keops-config.mjs +131 -3
  233. package/fesm2015/hitsoft-kadooglu-keops-config.mjs.map +1 -1
  234. package/fesm2015/hitsoft-kadooglu-keops-proxy.mjs +1185 -0
  235. package/fesm2015/hitsoft-kadooglu-keops-proxy.mjs.map +1 -0
  236. package/fesm2015/hitsoft-kadooglu-keops.mjs +4082 -1728
  237. package/fesm2015/hitsoft-kadooglu-keops.mjs.map +1 -1
  238. package/fesm2020/hitsoft-kadooglu-keops-config.mjs +131 -3
  239. package/fesm2020/hitsoft-kadooglu-keops-config.mjs.map +1 -1
  240. package/fesm2020/hitsoft-kadooglu-keops-proxy.mjs +1185 -0
  241. package/fesm2020/hitsoft-kadooglu-keops-proxy.mjs.map +1 -0
  242. package/fesm2020/hitsoft-kadooglu-keops.mjs +4070 -1729
  243. package/fesm2020/hitsoft-kadooglu-keops.mjs.map +1 -1
  244. package/lib/features/bl-tracking/components/bl-tracking-form.component.d.ts +24 -0
  245. package/lib/features/bl-tracking/components/bl-tracking.component.d.ts +22 -0
  246. package/lib/features/bl-tracking/hit-bl-tracking-routing.module.d.ts +7 -0
  247. package/lib/features/bl-tracking/hit-bl-tracking.module.d.ts +18 -0
  248. package/lib/features/carriers/components/carrier-form.component.d.ts +24 -0
  249. package/lib/features/carriers/components/carriers.component.d.ts +22 -0
  250. package/lib/features/carriers/hit-carriers-routing.module.d.ts +7 -0
  251. package/lib/features/carriers/hit-carriers.module.d.ts +18 -0
  252. package/lib/features/container-definitions/components/container-definition-form.component.d.ts +1 -2
  253. package/lib/features/container-definitions/components/container-definitions.component.d.ts +1 -2
  254. package/lib/features/container-loading-counts/components/container-loading-counts.component.d.ts +2 -5
  255. package/lib/features/container-loading-scenarios/components/container-loading-scenarios.component.d.ts +1 -5
  256. package/lib/features/container-loading-scenarios/container-loading-scenario-l10n-helper.d.ts +1 -1
  257. package/lib/features/container-mix-types/components/container-mix-type-form.component.d.ts +1 -2
  258. package/lib/features/container-mix-types/components/container-mix-types.component.d.ts +1 -2
  259. package/lib/features/container-pallet-capacities/components/container-pallet-capacities.component.d.ts +2 -5
  260. package/lib/features/container-pallet-capacities/components/container-pallet-capacity-form.component.d.ts +1 -4
  261. package/lib/features/cost-calculation/components/cost-calculation-inputs.component.d.ts +3 -5
  262. package/lib/features/cost-calculation/components/cost-calculation-results.component.d.ts +1 -1
  263. package/lib/features/cost-calculation/components/cost-calculation.component.d.ts +3 -6
  264. package/lib/features/cost-calculation/cost-calculation.models.d.ts +1 -3
  265. package/lib/features/cost-calculation/engine/currency.utils.d.ts +1 -1
  266. package/lib/features/cost-calculation/engine/models.d.ts +1 -3
  267. package/lib/features/cost-calculation/hit-cost-calculation.module.d.ts +2 -1
  268. package/lib/features/cost-groups/components/cost-group-form.component.d.ts +2 -4
  269. package/lib/features/cost-groups/components/cost-groups.component.d.ts +1 -5
  270. package/lib/features/cost-groups/cost-group-role-l10n-helper.d.ts +1 -1
  271. package/lib/features/cost-items/components/cost-item-form.component.d.ts +1 -3
  272. package/lib/features/cost-items/components/cost-items.component.d.ts +1 -2
  273. package/lib/features/cost-items/cost-item-l10n-helper.d.ts +1 -1
  274. package/lib/features/cost-parameter-categories/components/cost-parameter-categories.component.d.ts +1 -2
  275. package/lib/features/cost-parameter-categories/components/cost-parameter-category-form.component.d.ts +1 -3
  276. package/lib/features/cost-parameter-categories/cost-parameter-category-l10n-helper.d.ts +1 -1
  277. package/lib/features/cost-parameters/components/cost-parameter-form.component.d.ts +9 -9
  278. package/lib/features/cost-parameters/components/cost-parameters.component.d.ts +6 -6
  279. package/lib/features/cost-parameters/cost-parameter-l10n-helper.d.ts +1 -1
  280. package/lib/features/destination-ports/components/destination-port-form.component.d.ts +25 -0
  281. package/lib/features/destination-ports/components/destination-ports.component.d.ts +24 -0
  282. package/lib/features/destination-ports/hit-destination-ports-routing.module.d.ts +7 -0
  283. package/lib/features/destination-ports/hit-destination-ports.module.d.ts +18 -0
  284. package/lib/features/exchange-rates/components/central-bank-rates.component.d.ts +1 -1
  285. package/lib/features/exchange-rates/components/exchange-rates.component.d.ts +1 -2
  286. package/lib/features/exchange-rates/components/fixed-rates-form.component.d.ts +1 -3
  287. package/lib/features/fob-inland-definitions/components/fob-inland-definition-form.component.d.ts +24 -0
  288. package/lib/features/fob-inland-definitions/components/fob-inland-definitions.component.d.ts +22 -0
  289. package/lib/features/fob-inland-definitions/hit-fob-inland-definitions-routing.module.d.ts +7 -0
  290. package/lib/features/fob-inland-definitions/hit-fob-inland-definitions.module.d.ts +18 -0
  291. package/lib/features/freight-offers/components/freight-offer-copy.component.d.ts +22 -0
  292. package/lib/features/freight-offers/components/freight-offer-form.component.d.ts +49 -0
  293. package/lib/features/freight-offers/components/freight-offers.component.d.ts +47 -0
  294. package/lib/features/freight-offers/hit-freight-offers-routing.module.d.ts +7 -0
  295. package/lib/features/freight-offers/hit-freight-offers.module.d.ts +19 -0
  296. package/lib/features/incoterms/components/incoterm-form.component.d.ts +24 -0
  297. package/lib/features/incoterms/components/incoterms.component.d.ts +22 -0
  298. package/lib/features/incoterms/hit-incoterms-routing.module.d.ts +7 -0
  299. package/lib/features/incoterms/hit-incoterms.module.d.ts +18 -0
  300. package/lib/features/index.d.ts +21 -0
  301. package/lib/features/item-package-groups/components/item-package-group-form.component.d.ts +24 -0
  302. package/lib/features/item-package-groups/components/item-package-groups.component.d.ts +22 -0
  303. package/lib/features/item-package-groups/hit-item-package-groups-routing.module.d.ts +7 -0
  304. package/lib/features/item-package-groups/hit-item-package-groups.module.d.ts +18 -0
  305. package/lib/features/item-package-types/components/item-package-type-form.component.d.ts +24 -0
  306. package/lib/features/item-package-types/components/item-package-types.component.d.ts +22 -0
  307. package/lib/features/item-package-types/hit-item-package-types-routing.module.d.ts +7 -0
  308. package/lib/features/item-package-types/hit-item-package-types.module.d.ts +18 -0
  309. package/lib/features/item-product-types/components/item-product-type-form.component.d.ts +24 -0
  310. package/lib/features/item-product-types/components/item-product-types.component.d.ts +22 -0
  311. package/lib/features/item-product-types/hit-item-product-types-routing.module.d.ts +7 -0
  312. package/lib/features/item-product-types/hit-item-product-types.module.d.ts +18 -0
  313. package/lib/features/lines/components/line-form.component.d.ts +24 -0
  314. package/lib/features/lines/components/lines.component.d.ts +22 -0
  315. package/lib/features/lines/hit-lines-routing.module.d.ts +7 -0
  316. package/lib/features/lines/hit-lines.module.d.ts +18 -0
  317. package/lib/features/packaging-materials/components/packaging-material-form.component.d.ts +1 -3
  318. package/lib/features/packaging-materials/components/packaging-materials.component.d.ts +1 -2
  319. package/lib/features/packaging-prices/components/packaging-price-form.component.d.ts +1 -3
  320. package/lib/features/packaging-prices/components/packaging-prices.component.d.ts +1 -3
  321. package/lib/features/packaging-prices/packaging-price-calculator.d.ts +1 -1
  322. package/lib/features/packaging-prices/packaging-price-excel.service.d.ts +1 -2
  323. package/lib/features/packaging-prices/packaging-price-form.factory.d.ts +1 -1
  324. package/lib/features/packaging-prices/packaging-price-lines.builder.d.ts +1 -1
  325. package/lib/features/packaging-types/components/packaging-type-form.component.d.ts +1 -2
  326. package/lib/features/packaging-types/components/packaging-types.component.d.ts +1 -2
  327. package/lib/features/pallet-definitions/components/pallet-definition-form.component.d.ts +1 -2
  328. package/lib/features/pallet-definitions/components/pallet-definitions.component.d.ts +1 -2
  329. package/lib/features/pos/components/pos-form.component.d.ts +24 -0
  330. package/lib/features/pos/components/pos.component.d.ts +22 -0
  331. package/lib/features/pos/hit-pos-routing.module.d.ts +7 -0
  332. package/lib/features/pos/hit-pos.module.d.ts +18 -0
  333. package/lib/features/price-parameter-types/components/price-parameter-type-form.component.d.ts +1 -2
  334. package/lib/features/price-parameter-types/components/price-parameter-types.component.d.ts +1 -2
  335. package/lib/features/price-parameters/components/price-parameter-form-cost-items.component.d.ts +15 -0
  336. package/lib/features/price-parameters/components/price-parameter-form-discount-rates-modal.component.d.ts +24 -0
  337. package/lib/features/price-parameters/components/price-parameter-form-discount-rates.component.d.ts +22 -0
  338. package/lib/features/price-parameters/components/price-parameter-form-items.component.d.ts +15 -0
  339. package/lib/features/price-parameters/components/price-parameter-form-price-lists.component.d.ts +15 -0
  340. package/lib/features/price-parameters/components/price-parameter-form.component.d.ts +70 -0
  341. package/lib/features/price-parameters/components/price-parameters.component.d.ts +27 -0
  342. package/lib/features/price-parameters/hit-price-parameters-routing.module.d.ts +7 -0
  343. package/lib/features/price-parameters/hit-price-parameters.module.d.ts +24 -0
  344. package/lib/features/price-parameters/price-parameter-cost-match.service.d.ts +10 -0
  345. package/lib/features/price-parameters/price-parameter-form-data.service.d.ts +26 -0
  346. package/lib/features/price-parameters/price-parameter-l10n-helper.d.ts +2 -0
  347. package/lib/features/price-parameters/price-parameter-lookups.service.d.ts +16 -0
  348. package/lib/features/sap-sales-persons/components/sap-sales-person-form.component.d.ts +1 -2
  349. package/lib/features/sap-sales-persons/components/sap-sales-persons.component.d.ts +1 -2
  350. package/lib/features/settings/components/cost-settings.component.d.ts +1 -1
  351. package/lib/shared/amount-currency-input/amount-currency-input.component.d.ts +23 -0
  352. package/lib/shared/cost-item-classification.utils.d.ts +7 -0
  353. package/lib/shared/cost-item-rows.builder.d.ts +11 -0
  354. package/lib/shared/pipes/resolve-code-name.pipe.d.ts +11 -0
  355. package/lib/shared/shared-ui.module.d.ts +10 -0
  356. package/lib/utils/currency.utils.d.ts +2 -1
  357. package/lib/utils/exchange-rate.utils.d.ts +2 -0
  358. package/package.json +9 -1
  359. package/proxy/bl-tracking/dtos/models.d.ts +25 -0
  360. package/proxy/business-partners/dtos/models.d.ts +4 -0
  361. package/proxy/carriers/dtos/models.d.ts +10 -0
  362. package/{lib/proxy → proxy}/container-loading-counts/dtos/models.d.ts +1 -1
  363. package/proxy/controllers/bl-tracking.service.d.ts +14 -0
  364. package/proxy/controllers/business-partner.service.d.ts +11 -0
  365. package/proxy/controllers/carrier.service.d.ts +14 -0
  366. package/{lib/proxy → proxy}/controllers/container-loading-count.service.d.ts +2 -2
  367. package/{lib/proxy → proxy}/controllers/cost-parameter.service.d.ts +1 -2
  368. package/proxy/controllers/destination-port.service.d.ts +17 -0
  369. package/proxy/controllers/fob-inland-definition.service.d.ts +14 -0
  370. package/proxy/controllers/freight-offer.service.d.ts +19 -0
  371. package/proxy/controllers/incoterm.service.d.ts +14 -0
  372. package/{lib/proxy → proxy}/controllers/index.d.ts +14 -0
  373. package/proxy/controllers/item-package-group.service.d.ts +15 -0
  374. package/proxy/controllers/item-package-type.service.d.ts +15 -0
  375. package/proxy/controllers/item-product-type.service.d.ts +15 -0
  376. package/proxy/controllers/line.service.d.ts +14 -0
  377. package/proxy/controllers/pos.service.d.ts +14 -0
  378. package/proxy/controllers/price-list.service.d.ts +12 -0
  379. package/proxy/controllers/price-parameter.service.d.ts +15 -0
  380. package/{lib/proxy → proxy}/cost-parameter-categories/cost-parameter-category-parent-code.enum.d.ts +1 -4
  381. package/{lib/proxy → proxy}/cost-parameters/dtos/models.d.ts +0 -8
  382. package/proxy/destination-ports/dtos/models.d.ts +19 -0
  383. package/proxy/fob-inland-definitions/dtos/models.d.ts +19 -0
  384. package/proxy/freight-offers/dtos/models.d.ts +66 -0
  385. package/proxy/incoterms/dtos/models.d.ts +22 -0
  386. package/proxy/index.d.ts +5 -0
  387. package/proxy/item-package-groups/dtos/models.d.ts +13 -0
  388. package/proxy/item-package-types/dtos/index.d.ts +1 -0
  389. package/proxy/item-package-types/dtos/models.d.ts +13 -0
  390. package/proxy/item-product-types/dtos/index.d.ts +1 -0
  391. package/proxy/item-product-types/dtos/models.d.ts +13 -0
  392. package/proxy/items/dtos/index.d.ts +1 -0
  393. package/proxy/lines/dtos/index.d.ts +1 -0
  394. package/proxy/lines/dtos/models.d.ts +10 -0
  395. package/proxy/packaging-materials/dtos/index.d.ts +1 -0
  396. package/proxy/packaging-prices/dtos/index.d.ts +1 -0
  397. package/proxy/packaging-types/dtos/index.d.ts +1 -0
  398. package/proxy/pallet-definitions/dtos/index.d.ts +1 -0
  399. package/proxy/pos/dtos/index.d.ts +1 -0
  400. package/proxy/pos/dtos/models.d.ts +10 -0
  401. package/proxy/price-lists/dtos/index.d.ts +1 -0
  402. package/proxy/price-lists/dtos/models.d.ts +10 -0
  403. package/proxy/price-parameter-types/dtos/index.d.ts +1 -0
  404. package/proxy/price-parameters/dtos/index.d.ts +1 -0
  405. package/proxy/price-parameters/dtos/models.d.ts +78 -0
  406. package/proxy/price-parameters/price-parameter-status.enum.d.ts +6 -0
  407. package/proxy/public-api.d.ts +43 -0
  408. package/proxy/sales-persons/dtos/index.d.ts +1 -0
  409. package/proxy/settings/index.d.ts +1 -0
  410. package/public-api.d.ts +0 -1
  411. package/esm2020/lib/proxy/container-definitions/dtos/index.mjs +0 -2
  412. package/esm2020/lib/proxy/container-definitions/dtos/models.mjs +0 -2
  413. package/esm2020/lib/proxy/container-definitions/index.mjs +0 -3
  414. package/esm2020/lib/proxy/container-loading-counts/dtos/index.mjs +0 -2
  415. package/esm2020/lib/proxy/container-loading-counts/dtos/models.mjs +0 -2
  416. package/esm2020/lib/proxy/container-loading-counts/index.mjs +0 -4
  417. package/esm2020/lib/proxy/container-loading-counts/loading-target-kind.enum.mjs +0 -8
  418. package/esm2020/lib/proxy/container-loading-scenarios/dtos/index.mjs +0 -2
  419. package/esm2020/lib/proxy/container-loading-scenarios/dtos/models.mjs +0 -2
  420. package/esm2020/lib/proxy/container-loading-scenarios/index.mjs +0 -4
  421. package/esm2020/lib/proxy/container-loading-scenarios/pallet-status.enum.mjs +0 -8
  422. package/esm2020/lib/proxy/container-mix-types/dtos/index.mjs +0 -2
  423. package/esm2020/lib/proxy/container-mix-types/dtos/models.mjs +0 -2
  424. package/esm2020/lib/proxy/container-mix-types/index.mjs +0 -3
  425. package/esm2020/lib/proxy/container-pallet-capacities/dtos/index.mjs +0 -2
  426. package/esm2020/lib/proxy/container-pallet-capacities/dtos/models.mjs +0 -2
  427. package/esm2020/lib/proxy/container-pallet-capacities/index.mjs +0 -3
  428. package/esm2020/lib/proxy/controllers/container-definition.service.mjs +0 -40
  429. package/esm2020/lib/proxy/controllers/container-loading-count.service.mjs +0 -31
  430. package/esm2020/lib/proxy/controllers/container-loading-scenario.service.mjs +0 -27
  431. package/esm2020/lib/proxy/controllers/container-mix-type.service.mjs +0 -40
  432. package/esm2020/lib/proxy/controllers/container-pallet-capacity.service.mjs +0 -40
  433. package/esm2020/lib/proxy/controllers/cost-group.service.mjs +0 -40
  434. package/esm2020/lib/proxy/controllers/cost-item.service.mjs +0 -40
  435. package/esm2020/lib/proxy/controllers/cost-parameter-category.service.mjs +0 -40
  436. package/esm2020/lib/proxy/controllers/cost-parameter.service.mjs +0 -40
  437. package/esm2020/lib/proxy/controllers/cost-settings.service.mjs +0 -27
  438. package/esm2020/lib/proxy/controllers/exchange-rate.service.mjs +0 -27
  439. package/esm2020/lib/proxy/controllers/index.mjs +0 -19
  440. package/esm2020/lib/proxy/controllers/item.service.mjs +0 -23
  441. package/esm2020/lib/proxy/controllers/packaging-material.service.mjs +0 -40
  442. package/esm2020/lib/proxy/controllers/packaging-price.service.mjs +0 -55
  443. package/esm2020/lib/proxy/controllers/packaging-type.service.mjs +0 -40
  444. package/esm2020/lib/proxy/controllers/pallet-definition.service.mjs +0 -40
  445. package/esm2020/lib/proxy/controllers/price-parameter-type.service.mjs +0 -40
  446. package/esm2020/lib/proxy/controllers/sap-sales-person.service.mjs +0 -27
  447. package/esm2020/lib/proxy/cost-groups/cost-group-role.enum.mjs +0 -10
  448. package/esm2020/lib/proxy/cost-groups/dtos/models.mjs +0 -2
  449. package/esm2020/lib/proxy/cost-groups/index.mjs +0 -4
  450. package/esm2020/lib/proxy/cost-items/cost-item-calculation-type.enum.mjs +0 -9
  451. package/esm2020/lib/proxy/cost-items/dtos/models.mjs +0 -2
  452. package/esm2020/lib/proxy/cost-items/index.mjs +0 -5
  453. package/esm2020/lib/proxy/cost-parameter-categories/cost-parameter-category-parent-code.enum.mjs +0 -11
  454. package/esm2020/lib/proxy/cost-parameter-categories/dtos/index.mjs +0 -2
  455. package/esm2020/lib/proxy/cost-parameter-categories/dtos/models.mjs +0 -2
  456. package/esm2020/lib/proxy/cost-parameter-categories/index.mjs +0 -4
  457. package/esm2020/lib/proxy/cost-parameters/cost-parameter-status.enum.mjs +0 -9
  458. package/esm2020/lib/proxy/cost-parameters/dtos/models.mjs +0 -2
  459. package/esm2020/lib/proxy/cost-parameters/index.mjs +0 -4
  460. package/esm2020/lib/proxy/currencies/currency.enum.mjs +0 -9
  461. package/esm2020/lib/proxy/currencies/index.mjs +0 -2
  462. package/esm2020/lib/proxy/exchange-rates/dtos/models.mjs +0 -2
  463. package/esm2020/lib/proxy/exchange-rates/exchange-rate-source.enum.mjs +0 -8
  464. package/esm2020/lib/proxy/exchange-rates/index.mjs +0 -4
  465. package/esm2020/lib/proxy/index.mjs +0 -22
  466. package/esm2020/lib/proxy/items/dtos/index.mjs +0 -2
  467. package/esm2020/lib/proxy/items/dtos/models.mjs +0 -2
  468. package/esm2020/lib/proxy/items/index.mjs +0 -3
  469. package/esm2020/lib/proxy/packaging-materials/dtos/index.mjs +0 -2
  470. package/esm2020/lib/proxy/packaging-materials/dtos/models.mjs +0 -2
  471. package/esm2020/lib/proxy/packaging-materials/index.mjs +0 -3
  472. package/esm2020/lib/proxy/packaging-prices/dtos/index.mjs +0 -2
  473. package/esm2020/lib/proxy/packaging-prices/dtos/models.mjs +0 -2
  474. package/esm2020/lib/proxy/packaging-prices/index.mjs +0 -3
  475. package/esm2020/lib/proxy/packaging-types/dtos/index.mjs +0 -2
  476. package/esm2020/lib/proxy/packaging-types/dtos/models.mjs +0 -2
  477. package/esm2020/lib/proxy/packaging-types/index.mjs +0 -3
  478. package/esm2020/lib/proxy/pallet-definitions/dtos/models.mjs +0 -2
  479. package/esm2020/lib/proxy/pallet-definitions/index.mjs +0 -3
  480. package/esm2020/lib/proxy/price-parameter-types/dtos/index.mjs +0 -2
  481. package/esm2020/lib/proxy/price-parameter-types/dtos/models.mjs +0 -2
  482. package/esm2020/lib/proxy/price-parameter-types/index.mjs +0 -3
  483. package/esm2020/lib/proxy/sales-persons/dtos/index.mjs +0 -2
  484. package/esm2020/lib/proxy/sales-persons/dtos/models.mjs +0 -2
  485. package/esm2020/lib/proxy/sales-persons/index.mjs +0 -3
  486. package/esm2020/lib/proxy/settings/index.mjs +0 -2
  487. package/esm2020/lib/proxy/settings/models.mjs +0 -2
  488. package/lib/proxy/container-definitions/index.d.ts +0 -2
  489. package/lib/proxy/container-loading-counts/index.d.ts +0 -3
  490. package/lib/proxy/container-loading-scenarios/index.d.ts +0 -3
  491. package/lib/proxy/container-mix-types/index.d.ts +0 -2
  492. package/lib/proxy/container-pallet-capacities/index.d.ts +0 -2
  493. package/lib/proxy/cost-groups/index.d.ts +0 -3
  494. package/lib/proxy/cost-items/index.d.ts +0 -4
  495. package/lib/proxy/cost-parameter-categories/index.d.ts +0 -3
  496. package/lib/proxy/cost-parameters/index.d.ts +0 -3
  497. package/lib/proxy/exchange-rates/index.d.ts +0 -3
  498. package/lib/proxy/index.d.ts +0 -21
  499. package/lib/proxy/items/index.d.ts +0 -2
  500. package/lib/proxy/packaging-materials/index.d.ts +0 -2
  501. package/lib/proxy/packaging-prices/index.d.ts +0 -2
  502. package/lib/proxy/packaging-types/index.d.ts +0 -2
  503. package/lib/proxy/pallet-definitions/index.d.ts +0 -2
  504. package/lib/proxy/price-parameter-types/index.d.ts +0 -2
  505. package/lib/proxy/sales-persons/index.d.ts +0 -2
  506. /package/{lib/proxy/container-definitions → proxy/bl-tracking}/dtos/index.d.ts +0 -0
  507. /package/{lib/proxy/container-loading-counts → proxy/business-partners}/dtos/index.d.ts +0 -0
  508. /package/{lib/proxy/container-loading-scenarios → proxy/carriers}/dtos/index.d.ts +0 -0
  509. /package/{lib/proxy/container-mix-types → proxy/container-definitions}/dtos/index.d.ts +0 -0
  510. /package/{lib/proxy → proxy}/container-definitions/dtos/models.d.ts +0 -0
  511. /package/{lib/proxy/container-pallet-capacities → proxy/container-loading-counts}/dtos/index.d.ts +0 -0
  512. /package/{lib/proxy → proxy}/container-loading-counts/loading-target-kind.enum.d.ts +0 -0
  513. /package/{lib/proxy/cost-groups → proxy/container-loading-scenarios}/dtos/index.d.ts +0 -0
  514. /package/{lib/proxy → proxy}/container-loading-scenarios/dtos/models.d.ts +0 -0
  515. /package/{lib/proxy → proxy}/container-loading-scenarios/pallet-status.enum.d.ts +0 -0
  516. /package/{lib/proxy/cost-items → proxy/container-mix-types}/dtos/index.d.ts +0 -0
  517. /package/{lib/proxy → proxy}/container-mix-types/dtos/models.d.ts +0 -0
  518. /package/{lib/proxy/cost-parameter-categories → proxy/container-pallet-capacities}/dtos/index.d.ts +0 -0
  519. /package/{lib/proxy → proxy}/container-pallet-capacities/dtos/models.d.ts +0 -0
  520. /package/{lib/proxy → proxy}/controllers/container-definition.service.d.ts +0 -0
  521. /package/{lib/proxy → proxy}/controllers/container-loading-scenario.service.d.ts +0 -0
  522. /package/{lib/proxy → proxy}/controllers/container-mix-type.service.d.ts +0 -0
  523. /package/{lib/proxy → proxy}/controllers/container-pallet-capacity.service.d.ts +0 -0
  524. /package/{lib/proxy → proxy}/controllers/cost-group.service.d.ts +0 -0
  525. /package/{lib/proxy → proxy}/controllers/cost-item.service.d.ts +0 -0
  526. /package/{lib/proxy → proxy}/controllers/cost-parameter-category.service.d.ts +0 -0
  527. /package/{lib/proxy → proxy}/controllers/cost-settings.service.d.ts +0 -0
  528. /package/{lib/proxy → proxy}/controllers/exchange-rate.service.d.ts +0 -0
  529. /package/{lib/proxy → proxy}/controllers/item.service.d.ts +0 -0
  530. /package/{lib/proxy → proxy}/controllers/packaging-material.service.d.ts +0 -0
  531. /package/{lib/proxy → proxy}/controllers/packaging-price.service.d.ts +0 -0
  532. /package/{lib/proxy → proxy}/controllers/packaging-type.service.d.ts +0 -0
  533. /package/{lib/proxy → proxy}/controllers/pallet-definition.service.d.ts +0 -0
  534. /package/{lib/proxy → proxy}/controllers/price-parameter-type.service.d.ts +0 -0
  535. /package/{lib/proxy → proxy}/controllers/sap-sales-person.service.d.ts +0 -0
  536. /package/{lib/proxy → proxy}/cost-groups/cost-group-role.enum.d.ts +0 -0
  537. /package/{lib/proxy/cost-parameters → proxy/cost-groups}/dtos/index.d.ts +0 -0
  538. /package/{lib/proxy → proxy}/cost-groups/dtos/models.d.ts +0 -0
  539. /package/{lib/proxy → proxy}/cost-items/cost-item-calculation-type.enum.d.ts +0 -0
  540. /package/{lib/proxy → proxy}/cost-items/cost-item-system-code.enum.d.ts +0 -0
  541. /package/{lib/proxy/exchange-rates → proxy/cost-items}/dtos/index.d.ts +0 -0
  542. /package/{lib/proxy → proxy}/cost-items/dtos/models.d.ts +0 -0
  543. /package/{lib/proxy/items → proxy/cost-parameter-categories}/dtos/index.d.ts +0 -0
  544. /package/{lib/proxy → proxy}/cost-parameter-categories/dtos/models.d.ts +0 -0
  545. /package/{lib/proxy → proxy}/cost-parameters/cost-parameter-status.enum.d.ts +0 -0
  546. /package/{lib/proxy/packaging-materials → proxy/cost-parameters}/dtos/index.d.ts +0 -0
  547. /package/{lib/proxy → proxy}/currencies/currency.enum.d.ts +0 -0
  548. /package/{lib/proxy → proxy}/currencies/index.d.ts +0 -0
  549. /package/{lib/proxy/packaging-prices → proxy/destination-ports}/dtos/index.d.ts +0 -0
  550. /package/{lib/proxy/packaging-types → proxy/exchange-rates}/dtos/index.d.ts +0 -0
  551. /package/{lib/proxy → proxy}/exchange-rates/dtos/models.d.ts +0 -0
  552. /package/{lib/proxy → proxy}/exchange-rates/exchange-rate-source.enum.d.ts +0 -0
  553. /package/{lib/proxy/pallet-definitions → proxy/fob-inland-definitions}/dtos/index.d.ts +0 -0
  554. /package/{lib/proxy/price-parameter-types → proxy/freight-offers}/dtos/index.d.ts +0 -0
  555. /package/{lib/proxy/sales-persons → proxy/incoterms}/dtos/index.d.ts +0 -0
  556. /package/{lib/proxy/settings → proxy/item-package-groups/dtos}/index.d.ts +0 -0
  557. /package/{lib/proxy → proxy}/items/dtos/models.d.ts +0 -0
  558. /package/{lib/proxy → proxy}/packaging-materials/dtos/models.d.ts +0 -0
  559. /package/{lib/proxy → proxy}/packaging-prices/dtos/models.d.ts +0 -0
  560. /package/{lib/proxy → proxy}/packaging-types/dtos/models.d.ts +0 -0
  561. /package/{lib/proxy → proxy}/pallet-definitions/dtos/models.d.ts +0 -0
  562. /package/{lib/proxy → proxy}/price-parameter-types/dtos/models.d.ts +0 -0
  563. /package/{lib/proxy → proxy}/sales-persons/dtos/models.d.ts +0 -0
  564. /package/{lib/proxy → proxy}/settings/models.d.ts +0 -0
  565. /package/{src/lib/proxy → proxy/src}/README.md +0 -0
@@ -1,16 +1,17 @@
1
1
  import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { CostItemCalculationType } from '@proxy/cost-items/cost-item-calculation-type.enum';
3
- import { Currency } from '@proxy/currencies/currency.enum';
2
+ import { Currency } from '@hitsoft/kadooglu-keops/proxy';
4
3
  import { CURRENCY_OPTIONS } from '../../../utils/currency.utils';
4
+ import { isRateCostItem } from '../../../shared/cost-item-classification.utils';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "@angular/common";
7
7
  import * as i2 from "@angular/forms";
8
8
  import * as i3 from "devextreme-angular";
9
9
  import * as i4 from "devextreme-angular/core";
10
- import * as i5 from "@abp/ng.core";
10
+ import * as i5 from "../../../shared/amount-currency-input/amount-currency-input.component";
11
+ import * as i6 from "@abp/ng.core";
11
12
  export class CostCalculationInputsComponent {
12
13
  constructor() {
13
- this.RateType = CostItemCalculationType.Rate;
14
+ this.isRate = isRateCostItem;
14
15
  this.currencyOptions = CURRENCY_OPTIONS;
15
16
  this.itemsDataSource = null;
16
17
  this.parameters = [];
@@ -41,20 +42,28 @@ export class CostCalculationInputsComponent {
41
42
  this.selectedParameterCodeChange.emit(this.selectedParameterCode);
42
43
  this.parameterChange.emit();
43
44
  }
44
- onRawOilPriceChange() { this.emitAndRecalc(this.rawOilPriceChange, this.rawOilPrice); }
45
- onRawOilCurrencyChange() { this.emitAndRecalc(this.rawOilCurrencyChange, this.rawOilCurrency); }
46
- onRateUsdChange() { this.emitAndRecalc(this.rateUsdChange, this.rateUsd); }
47
- onRateEurChange() { this.emitAndRecalc(this.rateEurChange, this.rateEur); }
45
+ onRawOilPriceChange() {
46
+ this.emitAndRecalc(this.rawOilPriceChange, this.rawOilPrice);
47
+ }
48
+ onRawOilCurrencyChange() {
49
+ this.emitAndRecalc(this.rawOilCurrencyChange, this.rawOilCurrency);
50
+ }
51
+ onRateUsdChange() {
52
+ this.emitAndRecalc(this.rateUsdChange, this.rateUsd);
53
+ }
54
+ onRateEurChange() {
55
+ this.emitAndRecalc(this.rateEurChange, this.rateEur);
56
+ }
48
57
  emitAndRecalc(emitter, value) {
49
58
  emitter.emit(value);
50
59
  this.recalc.emit();
51
60
  }
52
61
  }
53
62
  CostCalculationInputsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CostCalculationInputsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
54
- CostCalculationInputsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CostCalculationInputsComponent, selector: "lib-cost-calculation-inputs", inputs: { itemsDataSource: "itemsDataSource", itemDisplayExpr: "itemDisplayExpr", parameters: "parameters", parameterDisplayExpr: "parameterDisplayExpr", stages: "stages", selectedItemCode: "selectedItemCode", selectedParameterCode: "selectedParameterCode", rawOilPrice: "rawOilPrice", rawOilCurrency: "rawOilCurrency", systemRateUsd: "systemRateUsd", systemRateEur: "systemRateEur", rateUsd: "rateUsd", rateEur: "rateEur" }, outputs: { selectedItemCodeChange: "selectedItemCodeChange", selectedParameterCodeChange: "selectedParameterCodeChange", rawOilPriceChange: "rawOilPriceChange", rawOilCurrencyChange: "rawOilCurrencyChange", rateUsdChange: "rateUsdChange", rateEurChange: "rateEurChange", itemChange: "itemChange", parameterChange: "parameterChange", recalc: "recalc" }, ngImport: i0, template: "<div class=\"card\">\r\n <div class=\"card-header fw-bold\">{{ 'Keops::CostCalculations:Inputs' | abpLocalization }}</div>\r\n <div class=\"card-body pt-0\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'Keops::CostCalculations:Item' | abpLocalization }}</label>\r\n <dx-select-box\r\n [dataSource]=\"itemsDataSource\"\r\n valueExpr=\"code\"\r\n [displayExpr]=\"itemDisplayExpr\"\r\n [searchEnabled]=\"true\"\r\n [searchExpr]=\"['code', 'name']\"\r\n searchMode=\"contains\"\r\n [searchTimeout]=\"200\"\r\n [minSearchLength]=\"0\"\r\n [showDataBeforeSearch]=\"true\"\r\n [showClearButton]=\"true\"\r\n [(value)]=\"selectedItemCode\"\r\n (onValueChanged)=\"onItemSelected()\"\r\n [placeholder]=\"'Keops::SelectAnOption' | abpLocalization\"\r\n >\r\n <div *dxTemplate=\"let it of 'item'\" class=\"text-truncate\" [title]=\"itemDisplayExpr(it)\">\r\n {{ itemDisplayExpr(it) }}\r\n </div>\r\n </dx-select-box>\r\n </div>\r\n\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'Keops::CostCalculations:CostParameter' | abpLocalization }}</label>\r\n <dx-select-box\r\n [dataSource]=\"parameters\"\r\n valueExpr=\"code\"\r\n [displayExpr]=\"parameterDisplayExpr\"\r\n [searchEnabled]=\"true\"\r\n [showClearButton]=\"true\"\r\n [(value)]=\"selectedParameterCode\"\r\n (onValueChanged)=\"onParameterSelected()\"\r\n [placeholder]=\"'Keops::SelectAnOption' | abpLocalization\"\r\n ></dx-select-box>\r\n </div>\r\n\r\n <div class=\"border rounded p-2 mb-3\">\r\n <div class=\"text-uppercase small mb-2\">{{ 'Keops::CostCalculations:Rates' | abpLocalization }}</div>\r\n\r\n <div class=\"row g-2 mb-2\">\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:SystemUsdRate' | abpLocalization }}</label>\r\n <div class=\"text-muted\">{{ systemRateUsd | number }}</div>\r\n </div>\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:SystemEurRate' | abpLocalization }}</label>\r\n <div class=\"text-muted\">{{ systemRateEur | number }}</div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row g-2\">\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:UsdRate' | abpLocalization }}</label>\r\n <input type=\"number\" class=\"form-control form-control-sm\" [(ngModel)]=\"rateUsd\" (ngModelChange)=\"onRateUsdChange()\" />\r\n </div>\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:EurRate' | abpLocalization }}</label>\r\n <input type=\"number\" class=\"form-control form-control-sm\" [(ngModel)]=\"rateEur\" (ngModelChange)=\"onRateEurChange()\" />\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'Keops::CostCalculations:RawOilPrice' | abpLocalization }}</label>\r\n <div class=\"input-group\">\r\n <input type=\"number\" class=\"form-control\" [(ngModel)]=\"rawOilPrice\" (ngModelChange)=\"onRawOilPriceChange()\" />\r\n <select\r\n class=\"form-select flex-grow-0 w-auto\"\r\n [(ngModel)]=\"rawOilCurrency\"\r\n (ngModelChange)=\"onRawOilCurrencyChange()\"\r\n >\r\n <option *ngFor=\"let c of currencyOptions\" [ngValue]=\"c.value\">{{ c.label }}</option>\r\n </select>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngFor=\"let stage of stages\">\r\n <div class=\"mb-2\">\r\n <div class=\"text-muted text-uppercase small fw-bold border-bottom pb-1\">\r\n <span>{{ stage.groupCode }} - </span>\r\n <span>{{ stage.groupName }}</span>\r\n </div>\r\n </div>\r\n <div class=\"mb-2\" *ngFor=\"let item of stage.items\">\r\n <label class=\"form-label small mb-1\">\r\n {{ item.costItemName }}\r\n </label>\r\n <div class=\"input-group\">\r\n <input type=\"number\" class=\"form-control\" [(ngModel)]=\"item.value\" (ngModelChange)=\"recalc.emit()\" />\r\n <span class=\"input-group-text\" *ngIf=\"item.calculationType === RateType\">%</span>\r\n <select\r\n *ngIf=\"item.calculationType !== RateType\"\r\n class=\"form-select flex-grow-0 w-auto\"\r\n [(ngModel)]=\"item.currency\"\r\n (ngModelChange)=\"recalc.emit()\"\r\n >\r\n <option *ngFor=\"let c of currencyOptions\" [ngValue]=\"c.value\">{{ c.label }}</option>\r\n </select>\r\n </div>\r\n </div>\r\n <div class=\"mb-2 text-muted small fst-italic\" *ngIf=\"stage.items.length === 0\">\r\n \u2014 {{ 'Keops::CostCalculations:NoItems' | abpLocalization }} \u2014\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "directive", type: i4.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }, { kind: "pipe", type: i5.LocalizationPipe, name: "abpLocalization" }] });
63
+ CostCalculationInputsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CostCalculationInputsComponent, selector: "lib-cost-calculation-inputs", inputs: { itemsDataSource: "itemsDataSource", itemDisplayExpr: "itemDisplayExpr", parameters: "parameters", parameterDisplayExpr: "parameterDisplayExpr", stages: "stages", selectedItemCode: "selectedItemCode", selectedParameterCode: "selectedParameterCode", rawOilPrice: "rawOilPrice", rawOilCurrency: "rawOilCurrency", systemRateUsd: "systemRateUsd", systemRateEur: "systemRateEur", rateUsd: "rateUsd", rateEur: "rateEur" }, outputs: { selectedItemCodeChange: "selectedItemCodeChange", selectedParameterCodeChange: "selectedParameterCodeChange", rawOilPriceChange: "rawOilPriceChange", rawOilCurrencyChange: "rawOilCurrencyChange", rateUsdChange: "rateUsdChange", rateEurChange: "rateEurChange", itemChange: "itemChange", parameterChange: "parameterChange", recalc: "recalc" }, ngImport: i0, template: "<div class=\"card\">\r\n <div class=\"card-header fw-bold\">{{ 'Keops::CostCalculations:Inputs' | abpLocalization }}</div>\r\n <div class=\"card-body pt-0\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'Keops::CostCalculations:Item' | abpLocalization }}</label>\r\n <dx-select-box\r\n [dataSource]=\"itemsDataSource\"\r\n valueExpr=\"code\"\r\n [displayExpr]=\"itemDisplayExpr\"\r\n [searchEnabled]=\"true\"\r\n [searchExpr]=\"['code', 'name']\"\r\n searchMode=\"contains\"\r\n [searchTimeout]=\"200\"\r\n [minSearchLength]=\"0\"\r\n [showDataBeforeSearch]=\"true\"\r\n [showClearButton]=\"true\"\r\n [(value)]=\"selectedItemCode\"\r\n (onValueChanged)=\"onItemSelected()\"\r\n [placeholder]=\"'Keops::SelectAnOption' | abpLocalization\"\r\n >\r\n <div *dxTemplate=\"let it of 'item'\" class=\"text-truncate\" [title]=\"itemDisplayExpr(it)\">\r\n {{ itemDisplayExpr(it) }}\r\n </div>\r\n </dx-select-box>\r\n </div>\r\n\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'Keops::CostCalculations:CostParameter' | abpLocalization }}</label>\r\n <dx-select-box\r\n [dataSource]=\"parameters\"\r\n valueExpr=\"code\"\r\n [displayExpr]=\"parameterDisplayExpr\"\r\n [searchEnabled]=\"true\"\r\n [showClearButton]=\"true\"\r\n [(value)]=\"selectedParameterCode\"\r\n (onValueChanged)=\"onParameterSelected()\"\r\n [placeholder]=\"'Keops::SelectAnOption' | abpLocalization\"\r\n ></dx-select-box>\r\n </div>\r\n\r\n <div class=\"border rounded p-2 mb-3\">\r\n <div class=\"text-uppercase small mb-2\">{{ 'Keops::CostCalculations:Rates' | abpLocalization }}</div>\r\n\r\n <div class=\"row g-2 mb-2\">\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:SystemUsdRate' | abpLocalization }}</label>\r\n <div class=\"text-muted\">{{ systemRateUsd | number }}</div>\r\n </div>\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:SystemEurRate' | abpLocalization }}</label>\r\n <div class=\"text-muted\">{{ systemRateEur | number }}</div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row g-2\">\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:UsdRate' | abpLocalization }}</label>\r\n <input type=\"number\" class=\"form-control form-control-sm\" [(ngModel)]=\"rateUsd\" (ngModelChange)=\"onRateUsdChange()\" />\r\n </div>\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:EurRate' | abpLocalization }}</label>\r\n <input type=\"number\" class=\"form-control form-control-sm\" [(ngModel)]=\"rateEur\" (ngModelChange)=\"onRateEurChange()\" />\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'Keops::CostCalculations:RawOilPrice' | abpLocalization }}</label>\r\n <lib-amount-currency-input\r\n [(ngModel)]=\"rawOilPrice\"\r\n (ngModelChange)=\"onRawOilPriceChange()\"\r\n [(currency)]=\"rawOilCurrency\"\r\n (currencyChange)=\"onRawOilCurrencyChange()\"\r\n ></lib-amount-currency-input>\r\n </div>\r\n\r\n <ng-container *ngFor=\"let stage of stages\">\r\n <div class=\"mb-2\">\r\n <div class=\"text-muted text-uppercase small fw-bold border-bottom pb-1\">\r\n <span>{{ stage.groupCode }} - </span>\r\n <span>{{ stage.groupName }}</span>\r\n </div>\r\n </div>\r\n <div class=\"mb-2\" *ngFor=\"let item of stage.items\">\r\n <label class=\"form-label small mb-1\">\r\n {{ item.costItemName }}\r\n </label>\r\n <div class=\"input-group\">\r\n <input type=\"number\" class=\"form-control\" [(ngModel)]=\"item.value\" (ngModelChange)=\"recalc.emit()\" />\r\n <span class=\"input-group-text\" *ngIf=\"isRate(item)\">%</span>\r\n <select\r\n *ngIf=\"!isRate(item)\"\r\n class=\"form-select flex-grow-0 w-auto\"\r\n [(ngModel)]=\"item.currency\"\r\n (ngModelChange)=\"recalc.emit()\"\r\n >\r\n <option *ngFor=\"let c of currencyOptions\" [ngValue]=\"c.value\">{{ c.label }}</option>\r\n </select>\r\n </div>\r\n </div>\r\n <div class=\"mb-2 text-muted small fst-italic\" *ngIf=\"stage.items.length === 0\">\r\n \u2014 {{ 'Keops::CostCalculations:NoItems' | abpLocalization }} \u2014\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "directive", type: i4.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i5.AmountCurrencyInputComponent, selector: "lib-amount-currency-input", inputs: ["currencyOptions", "currency"], outputs: ["currencyChange"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }, { kind: "pipe", type: i6.LocalizationPipe, name: "abpLocalization" }] });
55
64
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CostCalculationInputsComponent, decorators: [{
56
65
  type: Component,
57
- args: [{ selector: 'lib-cost-calculation-inputs', template: "<div class=\"card\">\r\n <div class=\"card-header fw-bold\">{{ 'Keops::CostCalculations:Inputs' | abpLocalization }}</div>\r\n <div class=\"card-body pt-0\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'Keops::CostCalculations:Item' | abpLocalization }}</label>\r\n <dx-select-box\r\n [dataSource]=\"itemsDataSource\"\r\n valueExpr=\"code\"\r\n [displayExpr]=\"itemDisplayExpr\"\r\n [searchEnabled]=\"true\"\r\n [searchExpr]=\"['code', 'name']\"\r\n searchMode=\"contains\"\r\n [searchTimeout]=\"200\"\r\n [minSearchLength]=\"0\"\r\n [showDataBeforeSearch]=\"true\"\r\n [showClearButton]=\"true\"\r\n [(value)]=\"selectedItemCode\"\r\n (onValueChanged)=\"onItemSelected()\"\r\n [placeholder]=\"'Keops::SelectAnOption' | abpLocalization\"\r\n >\r\n <div *dxTemplate=\"let it of 'item'\" class=\"text-truncate\" [title]=\"itemDisplayExpr(it)\">\r\n {{ itemDisplayExpr(it) }}\r\n </div>\r\n </dx-select-box>\r\n </div>\r\n\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'Keops::CostCalculations:CostParameter' | abpLocalization }}</label>\r\n <dx-select-box\r\n [dataSource]=\"parameters\"\r\n valueExpr=\"code\"\r\n [displayExpr]=\"parameterDisplayExpr\"\r\n [searchEnabled]=\"true\"\r\n [showClearButton]=\"true\"\r\n [(value)]=\"selectedParameterCode\"\r\n (onValueChanged)=\"onParameterSelected()\"\r\n [placeholder]=\"'Keops::SelectAnOption' | abpLocalization\"\r\n ></dx-select-box>\r\n </div>\r\n\r\n <div class=\"border rounded p-2 mb-3\">\r\n <div class=\"text-uppercase small mb-2\">{{ 'Keops::CostCalculations:Rates' | abpLocalization }}</div>\r\n\r\n <div class=\"row g-2 mb-2\">\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:SystemUsdRate' | abpLocalization }}</label>\r\n <div class=\"text-muted\">{{ systemRateUsd | number }}</div>\r\n </div>\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:SystemEurRate' | abpLocalization }}</label>\r\n <div class=\"text-muted\">{{ systemRateEur | number }}</div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row g-2\">\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:UsdRate' | abpLocalization }}</label>\r\n <input type=\"number\" class=\"form-control form-control-sm\" [(ngModel)]=\"rateUsd\" (ngModelChange)=\"onRateUsdChange()\" />\r\n </div>\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:EurRate' | abpLocalization }}</label>\r\n <input type=\"number\" class=\"form-control form-control-sm\" [(ngModel)]=\"rateEur\" (ngModelChange)=\"onRateEurChange()\" />\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'Keops::CostCalculations:RawOilPrice' | abpLocalization }}</label>\r\n <div class=\"input-group\">\r\n <input type=\"number\" class=\"form-control\" [(ngModel)]=\"rawOilPrice\" (ngModelChange)=\"onRawOilPriceChange()\" />\r\n <select\r\n class=\"form-select flex-grow-0 w-auto\"\r\n [(ngModel)]=\"rawOilCurrency\"\r\n (ngModelChange)=\"onRawOilCurrencyChange()\"\r\n >\r\n <option *ngFor=\"let c of currencyOptions\" [ngValue]=\"c.value\">{{ c.label }}</option>\r\n </select>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngFor=\"let stage of stages\">\r\n <div class=\"mb-2\">\r\n <div class=\"text-muted text-uppercase small fw-bold border-bottom pb-1\">\r\n <span>{{ stage.groupCode }} - </span>\r\n <span>{{ stage.groupName }}</span>\r\n </div>\r\n </div>\r\n <div class=\"mb-2\" *ngFor=\"let item of stage.items\">\r\n <label class=\"form-label small mb-1\">\r\n {{ item.costItemName }}\r\n </label>\r\n <div class=\"input-group\">\r\n <input type=\"number\" class=\"form-control\" [(ngModel)]=\"item.value\" (ngModelChange)=\"recalc.emit()\" />\r\n <span class=\"input-group-text\" *ngIf=\"item.calculationType === RateType\">%</span>\r\n <select\r\n *ngIf=\"item.calculationType !== RateType\"\r\n class=\"form-select flex-grow-0 w-auto\"\r\n [(ngModel)]=\"item.currency\"\r\n (ngModelChange)=\"recalc.emit()\"\r\n >\r\n <option *ngFor=\"let c of currencyOptions\" [ngValue]=\"c.value\">{{ c.label }}</option>\r\n </select>\r\n </div>\r\n </div>\r\n <div class=\"mb-2 text-muted small fst-italic\" *ngIf=\"stage.items.length === 0\">\r\n \u2014 {{ 'Keops::CostCalculations:NoItems' | abpLocalization }} \u2014\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n" }]
66
+ args: [{ selector: 'lib-cost-calculation-inputs', template: "<div class=\"card\">\r\n <div class=\"card-header fw-bold\">{{ 'Keops::CostCalculations:Inputs' | abpLocalization }}</div>\r\n <div class=\"card-body pt-0\">\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'Keops::CostCalculations:Item' | abpLocalization }}</label>\r\n <dx-select-box\r\n [dataSource]=\"itemsDataSource\"\r\n valueExpr=\"code\"\r\n [displayExpr]=\"itemDisplayExpr\"\r\n [searchEnabled]=\"true\"\r\n [searchExpr]=\"['code', 'name']\"\r\n searchMode=\"contains\"\r\n [searchTimeout]=\"200\"\r\n [minSearchLength]=\"0\"\r\n [showDataBeforeSearch]=\"true\"\r\n [showClearButton]=\"true\"\r\n [(value)]=\"selectedItemCode\"\r\n (onValueChanged)=\"onItemSelected()\"\r\n [placeholder]=\"'Keops::SelectAnOption' | abpLocalization\"\r\n >\r\n <div *dxTemplate=\"let it of 'item'\" class=\"text-truncate\" [title]=\"itemDisplayExpr(it)\">\r\n {{ itemDisplayExpr(it) }}\r\n </div>\r\n </dx-select-box>\r\n </div>\r\n\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'Keops::CostCalculations:CostParameter' | abpLocalization }}</label>\r\n <dx-select-box\r\n [dataSource]=\"parameters\"\r\n valueExpr=\"code\"\r\n [displayExpr]=\"parameterDisplayExpr\"\r\n [searchEnabled]=\"true\"\r\n [showClearButton]=\"true\"\r\n [(value)]=\"selectedParameterCode\"\r\n (onValueChanged)=\"onParameterSelected()\"\r\n [placeholder]=\"'Keops::SelectAnOption' | abpLocalization\"\r\n ></dx-select-box>\r\n </div>\r\n\r\n <div class=\"border rounded p-2 mb-3\">\r\n <div class=\"text-uppercase small mb-2\">{{ 'Keops::CostCalculations:Rates' | abpLocalization }}</div>\r\n\r\n <div class=\"row g-2 mb-2\">\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:SystemUsdRate' | abpLocalization }}</label>\r\n <div class=\"text-muted\">{{ systemRateUsd | number }}</div>\r\n </div>\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:SystemEurRate' | abpLocalization }}</label>\r\n <div class=\"text-muted\">{{ systemRateEur | number }}</div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"row g-2\">\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:UsdRate' | abpLocalization }}</label>\r\n <input type=\"number\" class=\"form-control form-control-sm\" [(ngModel)]=\"rateUsd\" (ngModelChange)=\"onRateUsdChange()\" />\r\n </div>\r\n <div class=\"col-6\">\r\n <label class=\"form-label small mb-1\">{{ 'Keops::CostCalculations:EurRate' | abpLocalization }}</label>\r\n <input type=\"number\" class=\"form-control form-control-sm\" [(ngModel)]=\"rateEur\" (ngModelChange)=\"onRateEurChange()\" />\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'Keops::CostCalculations:RawOilPrice' | abpLocalization }}</label>\r\n <lib-amount-currency-input\r\n [(ngModel)]=\"rawOilPrice\"\r\n (ngModelChange)=\"onRawOilPriceChange()\"\r\n [(currency)]=\"rawOilCurrency\"\r\n (currencyChange)=\"onRawOilCurrencyChange()\"\r\n ></lib-amount-currency-input>\r\n </div>\r\n\r\n <ng-container *ngFor=\"let stage of stages\">\r\n <div class=\"mb-2\">\r\n <div class=\"text-muted text-uppercase small fw-bold border-bottom pb-1\">\r\n <span>{{ stage.groupCode }} - </span>\r\n <span>{{ stage.groupName }}</span>\r\n </div>\r\n </div>\r\n <div class=\"mb-2\" *ngFor=\"let item of stage.items\">\r\n <label class=\"form-label small mb-1\">\r\n {{ item.costItemName }}\r\n </label>\r\n <div class=\"input-group\">\r\n <input type=\"number\" class=\"form-control\" [(ngModel)]=\"item.value\" (ngModelChange)=\"recalc.emit()\" />\r\n <span class=\"input-group-text\" *ngIf=\"isRate(item)\">%</span>\r\n <select\r\n *ngIf=\"!isRate(item)\"\r\n class=\"form-select flex-grow-0 w-auto\"\r\n [(ngModel)]=\"item.currency\"\r\n (ngModelChange)=\"recalc.emit()\"\r\n >\r\n <option *ngFor=\"let c of currencyOptions\" [ngValue]=\"c.value\">{{ c.label }}</option>\r\n </select>\r\n </div>\r\n </div>\r\n <div class=\"mb-2 text-muted small fst-italic\" *ngIf=\"stage.items.length === 0\">\r\n \u2014 {{ 'Keops::CostCalculations:NoItems' | abpLocalization }} \u2014\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n" }]
58
67
  }], propDecorators: { itemsDataSource: [{
59
68
  type: Input
60
69
  }], itemDisplayExpr: [{
@@ -100,4 +109,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
100
109
  }], recalc: [{
101
110
  type: Output
102
111
  }] } });
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29zdC1jYWxjdWxhdGlvbi1pbnB1dHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Fkb29nbHUta2VvcHMvc3JjL2xpYi9mZWF0dXJlcy9jb3N0LWNhbGN1bGF0aW9uL2NvbXBvbmVudHMvY29zdC1jYWxjdWxhdGlvbi1pbnB1dHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Fkb29nbHUta2VvcHMvc3JjL2xpYi9mZWF0dXJlcy9jb3N0LWNhbGN1bGF0aW9uL2NvbXBvbmVudHMvY29zdC1jYWxjdWxhdGlvbi1pbnB1dHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUl2RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM1RixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7Ozs7QUFNakUsTUFBTSxPQUFPLDhCQUE4QjtJQUozQztRQUtXLGFBQVEsR0FBRyx1QkFBdUIsQ0FBQyxJQUFJLENBQUM7UUFDeEMsb0JBQWUsR0FBRyxnQkFBZ0IsQ0FBQztRQUVuQyxvQkFBZSxHQUFzQixJQUFJLENBQUM7UUFHMUMsZUFBVSxHQUF1QixFQUFFLENBQUM7UUFHcEMsV0FBTSxHQUEyQixFQUFFLENBQUM7UUFFcEMscUJBQWdCLEdBQWtCLElBQUksQ0FBQztRQUN0QywyQkFBc0IsR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztRQUU1RCwwQkFBcUIsR0FBa0IsSUFBSSxDQUFDO1FBQzNDLGdDQUEyQixHQUFHLElBQUksWUFBWSxFQUFpQixDQUFDO1FBRWpFLGdC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cG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCBEYXRhU291cmNlIGZyb20gJ2RldmV4dHJlbWUvZGF0YS9kYXRhX3NvdXJjZSc7XHJcbmltcG9ydCB7IENvc3RQYXJhbWV0ZXJEdG8gfSBmcm9tICdAcHJveHkvY29zdC1wYXJhbWV0ZXJzL2R0b3MnO1xyXG5pbXBvcnQgeyBJdGVtRHRvIH0gZnJvbSAnQHByb3h5L2l0ZW1zL2R0b3MnO1xyXG5pbXBvcnQgeyBDb3N0SXRlbUNhbGN1bGF0aW9uVHlwZSB9IGZyb20gJ0Bwcm94eS9jb3N0LWl0ZW1zL2Nvc3QtaXRlbS1jYWxjdWxhdGlvbi10eXBlLmVudW0nO1xyXG5pbXBvcnQgeyBDdXJyZW5jeSB9IGZyb20gJ0Bwcm94eS9jdXJyZW5jaWVzL2N1cnJlbmN5LmVudW0nO1xyXG5pbXBvcnQgeyBDb3N0Q2FsY3VsYXRpb25TdGFnZSB9IGZyb20gJy4uL2Nvc3QtY2FsY3VsYXRpb24ubW9kZWxzJztcclxuaW1wb3J0IHsgQ1VSUkVOQ1lfT1BUSU9OUyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2N1cnJlbmN5LnV0aWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWNvc3QtY2FsY3VsYXRpb24taW5wdXRzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29zdC1jYWxjdWxhdGlvbi1pbnB1dHMuY29tcG9uZW50Lmh0bWwnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29zdENhbGN1bGF0aW9uSW5wdXRzQ29tcG9uZW50IHtcclxuICByZWFkb25seSBSYXRlVHlwZSA9IENvc3RJdGVtQ2FsY3VsYXRpb25UeXBlLlJhdGU7XHJcbiAgcmVhZG9ubHkgY3VycmVuY3lPcHRpb25zID0gQ1VSUkVOQ1lfT1BUSU9OUztcclxuXHJcbiAgQElucHV0KCkgaXRlbXNEYXRhU291cmNlOiBEYXRhU291cmNlIHwgbnVsbCA9IG51bGw7XHJcbiAgQElucHV0KCkgaXRlbURpc3BsYXlFeHByITogKGl0ZW06IEl0ZW1EdG8pID0+IHN0cmluZztcclxuXHJcbiAgQElucHV0KCkgcGFyYW1ldGVyczogQ29zdFBhcmFtZXRlckR0b1tdID0gW107XHJcbiAgQElucHV0KCkgcGFyYW1ldGVyRGlzcGxheUV4cHIhOiAocDogQ29zdFBhcmFtZXRlckR0bykgPT4gc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKSBzdGFnZXM6IENvc3RDYWxjdWxhdGlvblN0YWdlW10gPSBbXTtcclxuXHJcbiAgQElucHV0KCkgc2VsZWN0ZWRJdGVtQ29kZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcbiAgQE91dHB1dCgpIHNlbGVjdGVkSXRlbUNvZGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZyB8IG51bGw+KCk7XHJcblxyXG4gIEBJbnB1dCgpIHNlbGVjdGVkUGFyYW1ldGVyQ29kZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcbiAgQE91dHB1dCgpIHNlbGVjdGVkUGFyYW1ldGVyQ29kZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgbnVsbD4oKTtcclxuXHJcbiAgQElucHV0KCkgcmF3T2lsUHJpY2UgPSAwO1xyXG4gIEBPdXRwdXQoKSByYXdPaWxQcmljZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG5cclxuICBASW5wdXQoKSByYXdPaWxDdXJyZW5jeTogQ3VycmVuY3kgPSBDdXJyZW5jeS5VU0Q7XHJcbiAgQE91dHB1dCgpIHJhd09pbEN1cnJlbmN5Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxDdXJyZW5jeT4oKTtcclxuXHJcbiAgQElucHV0KCkgc3lzdGVtUmF0ZVVzZCA9IDA7XHJcbiAgQElucHV0KCkgc3lzdGVtUmF0ZUV1ciA9IDA7XHJcblxyXG4gIEBJbnB1dCgpIHJhdGVVc2QgPSAwO1xyXG4gIEBPdXRwdXQoKSByYXRlVXNkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcblxyXG4gIEBJbnB1dCgpIHJhdGVFdXIgPSAwO1xyXG4gIEBPdXRwdXQoKSByYXRlRXVyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcblxyXG4gIEBPdXRwdXQoKSBpdGVtQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBwYXJhbWV0ZXJDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpIHJlY2FsYyA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgb25JdGVtU2VsZWN0ZWQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGVkSXRlbUNvZGVDaGFuZ2UuZW1pdCh0aGlzLnNlbGVjdGVkSXRlbUNvZGUpO1xyXG4gICAgdGhpcy5pdGVtQ2hhbmdlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uUGFyYW1ldGVyU2VsZWN0ZWQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbGVjdGVkUGFyYW1ldGVyQ29kZUNoYW5nZS5lbWl0KHRoaXMuc2VsZWN0ZWRQYXJhbWV0ZXJDb2RlKTtcclxuICAgIHRoaXMucGFyYW1ldGVyQ2hhbmdlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIG9uUmF3T2lsUHJpY2VDaGFuZ2UoKTogdm9pZCB7IHRoaXMuZW1pdEFuZFJlY2FsYyh0aGlzLnJhd09pbFByaWNlQ2hhbmdlLCB0aGlzLnJhd09pbFByaWNlKTsgfVxyXG4gIG9uUmF3T2lsQ3VycmVuY3lDaGFuZ2UoKTogdm9pZCB7IHRoaXMuZW1pdEFuZFJlY2FsYyh0aGlzLnJhd09pbEN1cnJlbmN5Q2hhbmdlLCB0aGlzLnJhd09pbEN1cnJlbmN5KTsgfVxyXG4gIG9uUmF0ZVVzZENoYW5nZSgpOiB2b2lkIHsgdGhpcy5lbWl0QW5kUmVjYWxjKHRoaXMucmF0ZVVzZENoYW5nZSwgdGhpcy5yYXRlVXNkKTsgfVxyXG4gIG9uUmF0ZUV1ckNoYW5nZSgpOiB2b2lkIHsgdGhpcy5lbWl0QW5kUmVjYWxjKHRoaXMucmF0ZUV1ckNoYW5nZSwgdGhpcy5yYXRlRXVyKTsgfVxyXG5cclxuICBwcml2YXRlIGVtaXRBbmRSZWNhbGM8VD4oZW1pdHRlcjogRXZlbnRFbWl0dGVyPFQ+LCB2YWx1ZTogVCk6IHZvaWQge1xyXG4gICAgZW1pdHRlci5lbWl0KHZhbHVlKTtcclxuICAgIHRoaXMucmVjYWxjLmVtaXQoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNhcmRcIj5cclxuICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgZnctYm9sZFwiPnt7ICdLZW9wczo6Q29zdENhbGN1bGF0aW9uczpJbnB1dHMnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBwdC0wXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxyXG4gICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3sgJ0tlb3BzOjpDb3N0Q2FsY3VsYXRpb25zOkl0ZW0nIHwgYWJwTG9jYWxpemF0aW9uIH19PC9sYWJlbD5cclxuICAgICAgPGR4LXNlbGVjdC1ib3hcclxuICAgICAgICBbZGF0YVNvdXJjZV09XCJpdGVtc0RhdGFTb3VyY2VcIlxyXG4gICAgICAgIHZhbHVlRXhwcj1cImNvZGVcIlxyXG4gICAgICAgIFtkaXNwbGF5RXhwcl09XCJpdGVtRGlzcGxheUV4cHJcIlxyXG4gICAgICAgIFtzZWFyY2hFbmFibGVkXT1cInRydWVcIlxyXG4gICAgICAgIFtzZWFyY2hFeHByXT1cIlsnY29kZScsICduYW1lJ11cIlxyXG4gICAgICAgIHNlYXJjaE1vZGU9XCJjb250YWluc1wiXHJcbiAgICAgICAgW3NlYXJjaFRpbWVvdXRdPVwiMjAwXCJcclxuICAgICAgICBbbWluU2VhcmNoTGVuZ3RoXT1cIjBcIlxyXG4gICAgICAgIFtzaG93RGF0YUJlZm9yZVNlYXJjaF09XCJ0cnVlXCJcclxuICAgICAgICBbc2hvd0NsZWFyQnV0dG9uXT1cInRydWVcIlxyXG4gICAgICAgIFsodmFsdWUpXT1cInNlbGVjdGVkSXRlbUNvZGVcIlxyXG4gICAgICAgIChvblZhbHVlQ2hhbmdlZCk9XCJvbkl0ZW1TZWxlY3RlZCgpXCJcclxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0tlb3BzOjpTZWxlY3RBbk9wdGlvbicgfCBhYnBMb2NhbGl6YXRpb25cIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGRpdiAqZHhUZW1wbGF0ZT1cImxldCBpdCBvZiAnaXRlbSdcIiBjbGFzcz1cInRleHQtdHJ1bmNhdGVcIiBbdGl0bGVdPVwiaXRlbURpc3BsYXlFeHByKGl0KVwiPlxyXG4gICAgICAgICAge3sgaXRlbURpc3BsYXlFeHByKGl0KSB9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2R4LXNlbGVjdC1ib3g+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwibWItM1wiPlxyXG4gICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3sgJ0tlb3BzOjpDb3N0Q2FsY3VsYXRpb25zOkNvc3RQYXJhbWV0ZXInIHwgYWJwTG9jYWxpemF0aW9uIH19PC9sYWJlbD5cclxuICAgICAgPGR4LXNlbGVjdC1ib3hcclxuICAgICAgICBbZGF0YVNvdXJjZV09XCJwYXJhbWV0ZXJzXCJcclxuICAgICAgICB2YWx1ZUV4cHI9XCJjb2RlXCJcclxuICAgICAgICBbZGlzcGxheUV4cHJdPVwicGFyYW1ldGVyRGlzcGxheUV4cHJcIlxyXG4gICAgICAgIFtzZWFyY2hFbmFibGVkXT1cInRydWVcIlxyXG4gICAgICAgIFtzaG93Q2xlYXJCdXR0b25dPVwidHJ1ZVwiXHJcbiAgICAgICAgWyh2YWx1ZSldPVwic2VsZWN0ZWRQYXJhbWV0ZXJDb2RlXCJcclxuICAgICAgICAob25WYWx1ZUNoYW5nZWQpPVwib25QYXJhbWV0ZXJTZWxlY3RlZCgpXCJcclxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0tlb3BzOjpTZWxlY3RBbk9wdGlvbicgfCBhYnBMb2NhbGl6YXRpb25cIlxyXG4gICAgICA+PC9keC1zZWxlY3QtYm94PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImJvcmRlciByb3VuZGVkIHAtMiBtYi0zXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXVwcGVyY2FzZSBzbWFsbCBtYi0yXCI+e3sgJ0tlb3BzOjpDb3N0Q2FsY3VsYXRpb25zOlJhdGVzJyB8IGFicExvY2FsaXphdGlvbiB9fTwvZGl2PlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cInJvdyBnLTIgbWItMlwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNlwiPlxyXG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbCBzbWFsbCBtYi0xXCI+e3sgJ0tlb3BzOjpDb3N0Q2FsY3VsYXRpb25zOlN5c3RlbVVzZFJhdGUnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9sYWJlbD5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LW11dGVkXCI+e3sgc3lzdGVtUmF0ZVVzZCB8IG51bWJlciB9fTwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNlwiPlxyXG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbCBzbWFsbCBtYi0xXCI+e3sgJ0tlb3BzOjpDb3N0Q2FsY3VsYXRpb25zOlN5c3RlbUV1clJhdGUnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9sYWJlbD5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LW11dGVkXCI+e3sgc3lzdGVtUmF0ZUV1ciB8IG51bWJlciB9fTwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3cgZy0yXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC02XCI+XHJcbiAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsIHNtYWxsIG1iLTFcIj57eyAnS2VvcHM6OkNvc3RDYWxjdWxhdGlvbnM6VXNkUmF0ZScgfCBhYnBMb2NhbGl6YXRpb24gfX08L2xhYmVsPlxyXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJudW1iZXJcIiBjbGFzcz1cImZvcm0tY29udHJvbCBmb3JtLWNvbnRyb2wtc21cIiBbKG5nTW9kZWwpXT1cInJhdGVVc2RcIiAobmdNb2RlbENoYW5nZSk9XCJvblJhdGVVc2RDaGFuZ2UoKVwiIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbC02XCI+XHJcbiAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsIHNtYWxsIG1iLTFcIj57eyAnS2VvcHM6OkNvc3RDYWxjdWxhdGlvbnM6RXVyUmF0ZScgfCBhYnBMb2NhbGl6YXRpb24gfX08L2xhYmVsPlxyXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJudW1iZXJcIiBjbGFzcz1cImZvcm0tY29udHJvbCBmb3JtLWNvbnRyb2wtc21cIiBbKG5nTW9kZWwpXT1cInJhdGVFdXJcIiAobmdNb2RlbENoYW5nZSk9XCJvblJhdGVFdXJDaGFuZ2UoKVwiIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cclxuICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7ICdLZW9wczo6Q29zdENhbGN1bGF0aW9uczpSYXdPaWxQcmljZScgfCBhYnBMb2NhbGl6YXRpb24gfX08L2xhYmVsPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXBcIj5cclxuICAgICAgICA8aW5wdXQgdHlwZT1cIm51bWJlclwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJyYXdPaWxQcmljZVwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uUmF3T2lsUHJpY2VDaGFuZ2UoKVwiIC8+XHJcbiAgICAgICAgPHNlbGVjdFxyXG4gICAgICAgICAgY2xhc3M9XCJmb3JtLXNlbGVjdCBmbGV4LWdyb3ctMCB3LWF1dG9cIlxyXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJyYXdPaWxDdXJyZW5jeVwiXHJcbiAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblJhd09pbEN1cnJlbmN5Q2hhbmdlKClcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IGMgb2YgY3VycmVuY3lPcHRpb25zXCIgW25nVmFsdWVdPVwiYy52YWx1ZVwiPnt7IGMubGFiZWwgfX08L29wdGlvbj5cclxuICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzdGFnZSBvZiBzdGFnZXNcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1iLTJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1tdXRlZCB0ZXh0LXVwcGVyY2FzZSBzbWFsbCBmdy1ib2xkIGJvcmRlci1ib3R0b20gcGItMVwiPlxyXG4gICAgICAgICAgPHNwYW4+e3sgc3RhZ2UuZ3JvdXBDb2RlIH19IC0gPC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW4+e3sgc3RhZ2UuZ3JvdXBOYW1lIH19PC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1iLTJcIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBzdGFnZS5pdGVtc1wiPlxyXG4gICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWwgc21hbGwgbWItMVwiPlxyXG4gICAgICAgICAge3sgaXRlbS5jb3N0SXRlbU5hbWUgfX1cclxuICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cFwiPlxyXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJudW1iZXJcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwiaXRlbS52YWx1ZVwiIChuZ01vZGVsQ2hhbmdlKT1cInJlY2FsYy5lbWl0KClcIiAvPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJpbnB1dC1ncm91cC10ZXh0XCIgKm5nSWY9XCJpdGVtLmNhbGN1bGF0aW9uVHlwZSA9PT0gUmF0ZVR5cGVcIj4lPC9zcGFuPlxyXG4gICAgICAgICAgPHNlbGVjdFxyXG4gICAgICAgICAgICAqbmdJZj1cIml0ZW0uY2FsY3VsYXRpb25UeXBlICE9PSBSYXRlVHlwZVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1zZWxlY3QgZmxleC1ncm93LTAgdy1hdXRvXCJcclxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJpdGVtLmN1cnJlbmN5XCJcclxuICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwicmVjYWxjLmVtaXQoKVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IGMgb2YgY3VycmVuY3lPcHRpb25zXCIgW25nVmFsdWVdPVwiYy52YWx1ZVwiPnt7IGMubGFiZWwgfX08L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1iLTIgdGV4dC1tdXRlZCBzbWFsbCBmc3QtaXRhbGljXCIgKm5nSWY9XCJzdGFnZS5pdGVtcy5sZW5ndGggPT09IDBcIj5cclxuICAgICAgICDigJQge3sgJ0tlb3BzOjpDb3N0Q2FsY3VsYXRpb25zOk5vSXRlbXMnIHwgYWJwTG9jYWxpemF0aW9uIH19IOKAlFxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29zdC1jYWxjdWxhdGlvbi1pbnB1dHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Fkb29nbHUta2VvcHMvc3JjL2xpYi9mZWF0dXJlcy9jb3N0LWNhbGN1bGF0aW9uL2NvbXBvbmVudHMvY29zdC1jYWxjdWxhdGlvbi1pbnB1dHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Fkb29nbHUta2VvcHMvc3JjL2xpYi9mZWF0dXJlcy9jb3N0LWNhbGN1bGF0aW9uL2NvbXBvbmVudHMvY29zdC1jYWxjdWxhdGlvbi1pbnB1dHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RSxPQUFPLEVBQTZCLFFBQVEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRXBGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7Ozs7QUFNaEYsTUFBTSxPQUFPLDhCQUE4QjtJQUozQztRQUtXLFdBQU0sR0FBRyxjQUFjLENBQUM7UUFDeEIsb0JBQWUsR0FBRyxnQkFBZ0IsQ0FBQztRQUVuQyxvQkFBZSxHQUFzQixJQUFJLENBQUM7UUFHMUMsZUFBVSxHQUF1QixFQUFFLENBQUM7UUFHcEMsV0FBTSxHQUEyQixFQUFFLENBQUM7UUFFcEMscUJBQWdCLEdBQWtCLElBQUksQ0FBQztRQUN0QywyQkFBc0IsR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztRQUU1RCwwQkFBcUIsR0FBa0IsSUFBSSxDQUFDO1FBQzNDLGdDQUEyQixHQUFHLElBQUksWUFBWSxFQUFpQixDQUFDO1FBRWpFLGdCQUFXLEdBQUcsQ0FB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cG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IERhdGFTb3VyY2UgZnJvbSAnZGV2ZXh0cmVtZS9kYXRhL2RhdGFfc291cmNlJztcclxuaW1wb3J0IHsgQ29zdFBhcmFtZXRlckR0bywgSXRlbUR0bywgQ3VycmVuY3kgfSBmcm9tICdAaGl0c29mdC9rYWRvb2dsdS1rZW9wcy9wcm94eSc7XHJcbmltcG9ydCB7IENvc3RDYWxjdWxhdGlvblN0YWdlIH0gZnJvbSAnLi4vY29zdC1jYWxjdWxhdGlvbi5tb2RlbHMnO1xyXG5pbXBvcnQgeyBDVVJSRU5DWV9PUFRJT05TIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvY3VycmVuY3kudXRpbHMnO1xyXG5pbXBvcnQgeyBpc1JhdGVDb3N0SXRlbSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9jb3N0LWl0ZW0tY2xhc3NpZmljYXRpb24udXRpbHMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItY29zdC1jYWxjdWxhdGlvbi1pbnB1dHMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb3N0LWNhbGN1bGF0aW9uLWlucHV0cy5jb21wb25lbnQuaHRtbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3N0Q2FsY3VsYXRpb25JbnB1dHNDb21wb25lbnQge1xyXG4gIHJlYWRvbmx5IGlzUmF0ZSA9IGlzUmF0ZUNvc3RJdGVtO1xyXG4gIHJlYWRvbmx5IGN1cnJlbmN5T3B0aW9ucyA9IENVUlJFTkNZX09QVElPTlM7XHJcblxyXG4gIEBJbnB1dCgpIGl0ZW1zRGF0YVNvdXJjZTogRGF0YVNvdXJjZSB8IG51bGwgPSBudWxsO1xyXG4gIEBJbnB1dCgpIGl0ZW1EaXNwbGF5RXhwciE6IChpdGVtOiBJdGVtRHRvKSA9PiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpIHBhcmFtZXRlcnM6IENvc3RQYXJhbWV0ZXJEdG9bXSA9IFtdO1xyXG4gIEBJbnB1dCgpIHBhcmFtZXRlckRpc3BsYXlFeHByITogKHA6IENvc3RQYXJhbWV0ZXJEdG8pID0+IHN0cmluZztcclxuXHJcbiAgQElucHV0KCkgc3RhZ2VzOiBDb3N0Q2FsY3VsYXRpb25TdGFnZVtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpIHNlbGVjdGVkSXRlbUNvZGU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG4gIEBPdXRwdXQoKSBzZWxlY3RlZEl0ZW1Db2RlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmcgfCBudWxsPigpO1xyXG5cclxuICBASW5wdXQoKSBzZWxlY3RlZFBhcmFtZXRlckNvZGU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG4gIEBPdXRwdXQoKSBzZWxlY3RlZFBhcmFtZXRlckNvZGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZyB8IG51bGw+KCk7XHJcblxyXG4gIEBJbnB1dCgpIHJhd09pbFByaWNlID0gMDtcclxuICBAT3V0cHV0KCkgcmF3T2lsUHJpY2VDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuXHJcbiAgQElucHV0KCkgcmF3T2lsQ3VycmVuY3k6IEN1cnJlbmN5ID0gQ3VycmVuY3kuVVNEO1xyXG4gIEBPdXRwdXQoKSByYXdPaWxDdXJyZW5jeUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Q3VycmVuY3k+KCk7XHJcblxyXG4gIEBJbnB1dCgpIHN5c3RlbVJhdGVVc2QgPSAwO1xyXG4gIEBJbnB1dCgpIHN5c3RlbVJhdGVFdXIgPSAwO1xyXG5cclxuICBASW5wdXQoKSByYXRlVXNkID0gMDtcclxuICBAT3V0cHV0KCkgcmF0ZVVzZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG5cclxuICBASW5wdXQoKSByYXRlRXVyID0gMDtcclxuICBAT3V0cHV0KCkgcmF0ZUV1ckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG5cclxuICBAT3V0cHV0KCkgaXRlbUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgcGFyYW1ldGVyQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSByZWNhbGMgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIG9uSXRlbVNlbGVjdGVkKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1Db2RlQ2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZEl0ZW1Db2RlKTtcclxuICAgIHRoaXMuaXRlbUNoYW5nZS5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvblBhcmFtZXRlclNlbGVjdGVkKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZFBhcmFtZXRlckNvZGVDaGFuZ2UuZW1pdCh0aGlzLnNlbGVjdGVkUGFyYW1ldGVyQ29kZSk7XHJcbiAgICB0aGlzLnBhcmFtZXRlckNoYW5nZS5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBvblJhd09pbFByaWNlQ2hhbmdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5lbWl0QW5kUmVjYWxjKHRoaXMucmF3T2lsUHJpY2VDaGFuZ2UsIHRoaXMucmF3T2lsUHJpY2UpO1xyXG4gIH1cclxuICBvblJhd09pbEN1cnJlbmN5Q2hhbmdlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5lbWl0QW5kUmVjYWxjKHRoaXMucmF3T2lsQ3VycmVuY3lDaGFuZ2UsIHRoaXMucmF3T2lsQ3VycmVuY3kpO1xyXG4gIH1cclxuICBvblJhdGVVc2RDaGFuZ2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLmVtaXRBbmRSZWNhbGModGhpcy5yYXRlVXNkQ2hhbmdlLCB0aGlzLnJhdGVVc2QpO1xyXG4gIH1cclxuICBvblJhdGVFdXJDaGFuZ2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLmVtaXRBbmRSZWNhbGModGhpcy5yYXRlRXVyQ2hhbmdlLCB0aGlzLnJhdGVFdXIpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBlbWl0QW5kUmVjYWxjPFQ+KGVtaXR0ZXI6IEV2ZW50RW1pdHRlcjxUPiwgdmFsdWU6IFQpOiB2b2lkIHtcclxuICAgIGVtaXR0ZXIuZW1pdCh2YWx1ZSk7XHJcbiAgICB0aGlzLnJlY2FsYy5lbWl0KCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjYXJkXCI+XHJcbiAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGZ3LWJvbGRcIj57eyAnS2VvcHM6OkNvc3RDYWxjdWxhdGlvbnM6SW5wdXRzJyB8IGFicExvY2FsaXphdGlvbiB9fTwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgcHQtMFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cclxuICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7ICdLZW9wczo6Q29zdENhbGN1bGF0aW9uczpJdGVtJyB8IGFicExvY2FsaXphdGlvbiB9fTwvbGFiZWw+XHJcbiAgICAgIDxkeC1zZWxlY3QtYm94XHJcbiAgICAgICAgW2RhdGFTb3VyY2VdPVwiaXRlbXNEYXRhU291cmNlXCJcclxuICAgICAgICB2YWx1ZUV4cHI9XCJjb2RlXCJcclxuICAgICAgICBbZGlzcGxheUV4cHJdPVwiaXRlbURpc3BsYXlFeHByXCJcclxuICAgICAgICBbc2VhcmNoRW5hYmxlZF09XCJ0cnVlXCJcclxuICAgICAgICBbc2VhcmNoRXhwcl09XCJbJ2NvZGUnLCAnbmFtZSddXCJcclxuICAgICAgICBzZWFyY2hNb2RlPVwiY29udGFpbnNcIlxyXG4gICAgICAgIFtzZWFyY2hUaW1lb3V0XT1cIjIwMFwiXHJcbiAgICAgICAgW21pblNlYXJjaExlbmd0aF09XCIwXCJcclxuICAgICAgICBbc2hvd0RhdGFCZWZvcmVTZWFyY2hdPVwidHJ1ZVwiXHJcbiAgICAgICAgW3Nob3dDbGVhckJ1dHRvbl09XCJ0cnVlXCJcclxuICAgICAgICBbKHZhbHVlKV09XCJzZWxlY3RlZEl0ZW1Db2RlXCJcclxuICAgICAgICAob25WYWx1ZUNoYW5nZWQpPVwib25JdGVtU2VsZWN0ZWQoKVwiXHJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidLZW9wczo6U2VsZWN0QW5PcHRpb24nIHwgYWJwTG9jYWxpemF0aW9uXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxkaXYgKmR4VGVtcGxhdGU9XCJsZXQgaXQgb2YgJ2l0ZW0nXCIgY2xhc3M9XCJ0ZXh0LXRydW5jYXRlXCIgW3RpdGxlXT1cIml0ZW1EaXNwbGF5RXhwcihpdClcIj5cclxuICAgICAgICAgIHt7IGl0ZW1EaXNwbGF5RXhwcihpdCkgfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9keC1zZWxlY3QtYm94PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cclxuICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7ICdLZW9wczo6Q29zdENhbGN1bGF0aW9uczpDb3N0UGFyYW1ldGVyJyB8IGFicExvY2FsaXphdGlvbiB9fTwvbGFiZWw+XHJcbiAgICAgIDxkeC1zZWxlY3QtYm94XHJcbiAgICAgICAgW2RhdGFTb3VyY2VdPVwicGFyYW1ldGVyc1wiXHJcbiAgICAgICAgdmFsdWVFeHByPVwiY29kZVwiXHJcbiAgICAgICAgW2Rpc3BsYXlFeHByXT1cInBhcmFtZXRlckRpc3BsYXlFeHByXCJcclxuICAgICAgICBbc2VhcmNoRW5hYmxlZF09XCJ0cnVlXCJcclxuICAgICAgICBbc2hvd0NsZWFyQnV0dG9uXT1cInRydWVcIlxyXG4gICAgICAgIFsodmFsdWUpXT1cInNlbGVjdGVkUGFyYW1ldGVyQ29kZVwiXHJcbiAgICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cIm9uUGFyYW1ldGVyU2VsZWN0ZWQoKVwiXHJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidLZW9wczo6U2VsZWN0QW5PcHRpb24nIHwgYWJwTG9jYWxpemF0aW9uXCJcclxuICAgICAgPjwvZHgtc2VsZWN0LWJveD5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJib3JkZXIgcm91bmRlZCBwLTIgbWItM1wiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC11cHBlcmNhc2Ugc21hbGwgbWItMlwiPnt7ICdLZW9wczo6Q29zdENhbGN1bGF0aW9uczpSYXRlcycgfCBhYnBMb2NhbGl6YXRpb24gfX08L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3cgZy0yIG1iLTJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTZcIj5cclxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWwgc21hbGwgbWItMVwiPnt7ICdLZW9wczo6Q29zdENhbGN1bGF0aW9uczpTeXN0ZW1Vc2RSYXRlJyB8IGFicExvY2FsaXphdGlvbiB9fTwvbGFiZWw+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1tdXRlZFwiPnt7IHN5c3RlbVJhdGVVc2QgfCBudW1iZXIgfX08L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTZcIj5cclxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWwgc21hbGwgbWItMVwiPnt7ICdLZW9wczo6Q29zdENhbGN1bGF0aW9uczpTeXN0ZW1FdXJSYXRlJyB8IGFicExvY2FsaXphdGlvbiB9fTwvbGFiZWw+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1tdXRlZFwiPnt7IHN5c3RlbVJhdGVFdXIgfCBudW1iZXIgfX08L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwicm93IGctMlwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNlwiPlxyXG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbCBzbWFsbCBtYi0xXCI+e3sgJ0tlb3BzOjpDb3N0Q2FsY3VsYXRpb25zOlVzZFJhdGUnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9sYWJlbD5cclxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwibnVtYmVyXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZm9ybS1jb250cm9sLXNtXCIgWyhuZ01vZGVsKV09XCJyYXRlVXNkXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25SYXRlVXNkQ2hhbmdlKClcIiAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNlwiPlxyXG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbCBzbWFsbCBtYi0xXCI+e3sgJ0tlb3BzOjpDb3N0Q2FsY3VsYXRpb25zOkV1clJhdGUnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9sYWJlbD5cclxuICAgICAgICAgIDxpbnB1dCB0eXBlPVwibnVtYmVyXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZm9ybS1jb250cm9sLXNtXCIgWyhuZ01vZGVsKV09XCJyYXRlRXVyXCIgKG5nTW9kZWxDaGFuZ2UpPVwib25SYXRlRXVyQ2hhbmdlKClcIiAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XHJcbiAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIj57eyAnS2VvcHM6OkNvc3RDYWxjdWxhdGlvbnM6UmF3T2lsUHJpY2UnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9sYWJlbD5cclxuICAgICAgPGxpYi1hbW91bnQtY3VycmVuY3ktaW5wdXRcclxuICAgICAgICBbKG5nTW9kZWwpXT1cInJhd09pbFByaWNlXCJcclxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblJhd09pbFByaWNlQ2hhbmdlKClcIlxyXG4gICAgICAgIFsoY3VycmVuY3kpXT1cInJhd09pbEN1cnJlbmN5XCJcclxuICAgICAgICAoY3VycmVuY3lDaGFuZ2UpPVwib25SYXdPaWxDdXJyZW5jeUNoYW5nZSgpXCJcclxuICAgICAgPjwvbGliLWFtb3VudC1jdXJyZW5jeS1pbnB1dD5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHN0YWdlIG9mIHN0YWdlc1wiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibWItMlwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LW11dGVkIHRleHQtdXBwZXJjYXNlIHNtYWxsIGZ3LWJvbGQgYm9yZGVyLWJvdHRvbSBwYi0xXCI+XHJcbiAgICAgICAgICA8c3Bhbj57eyBzdGFnZS5ncm91cENvZGUgfX0gLSA8L3NwYW4+XHJcbiAgICAgICAgICA8c3Bhbj57eyBzdGFnZS5ncm91cE5hbWUgfX08L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibWItMlwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIHN0YWdlLml0ZW1zXCI+XHJcbiAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbCBzbWFsbCBtYi0xXCI+XHJcbiAgICAgICAgICB7eyBpdGVtLmNvc3RJdGVtTmFtZSB9fVxyXG4gICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwXCI+XHJcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cIm51bWJlclwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJpdGVtLnZhbHVlXCIgKG5nTW9kZWxDaGFuZ2UpPVwicmVjYWxjLmVtaXQoKVwiIC8+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImlucHV0LWdyb3VwLXRleHRcIiAqbmdJZj1cImlzUmF0ZShpdGVtKVwiPiU8L3NwYW4+XHJcbiAgICAgICAgICA8c2VsZWN0XHJcbiAgICAgICAgICAgICpuZ0lmPVwiIWlzUmF0ZShpdGVtKVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1zZWxlY3QgZmxleC1ncm93LTAgdy1hdXRvXCJcclxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJpdGVtLmN1cnJlbmN5XCJcclxuICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwicmVjYWxjLmVtaXQoKVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IGMgb2YgY3VycmVuY3lPcHRpb25zXCIgW25nVmFsdWVdPVwiYy52YWx1ZVwiPnt7IGMubGFiZWwgfX08L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1iLTIgdGV4dC1tdXRlZCBzbWFsbCBmc3QtaXRhbGljXCIgKm5nSWY9XCJzdGFnZS5pdGVtcy5sZW5ndGggPT09IDBcIj5cclxuICAgICAgICDigJQge3sgJ0tlb3BzOjpDb3N0Q2FsY3VsYXRpb25zOk5vSXRlbXMnIHwgYWJwTG9jYWxpemF0aW9uIH19IOKAlFxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
@@ -1,5 +1,5 @@
1
1
  import { Component, Input } from '@angular/core';
2
- import { CostGroupRole } from '@proxy/cost-groups/cost-group-role.enum';
2
+ import { CostGroupRole } from '@hitsoft/kadooglu-keops/proxy';
3
3
  import { costGroupRoleTotalLabels } from '../../cost-groups/cost-group-role-l10n-helper';
4
4
  import { addAmounts } from '../engine';
5
5
  import * as i0 from "@angular/core";
@@ -33,4 +33,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
33
33
  }], propDecorators: { roleGroups: [{
34
34
  type: Input
35
35
  }] } });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29zdC1jYWxjdWxhdGlvbi1yZXN1bHQtc3VtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2thZG9vZ2x1LWtlb3BzL3NyYy9saWIvZmVhdHVyZXMvY29zdC1jYWxjdWxhdGlvbi9jb21wb25lbnRzL2Nvc3QtY2FsY3VsYXRpb24tcmVzdWx0LXN1bS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWRvb2dsdS1rZW9wcy9zcmMvbGliL2ZlYXR1cmVzL2Nvc3QtY2FsY3VsYXRpb24vY29tcG9uZW50cy9jb3N0LWNhbGN1bGF0aW9uLXJlc3VsdC1zdW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSxXQUFXLENBQUM7Ozs7QUFNbEQsTUFBTSxPQUFPLGlDQUFpQztJQUo5QztRQUtXLGVBQVUsR0FBZ0IsRUFBRSxDQUFDO0tBaUJ2QztJQWZDLElBQUksWUFBWTtRQUNkLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxhQUFhLENBQUMsVUFBVSxDQUFDO1lBQy9FLEVBQUUsU0FBUyxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUM1QyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssYUFBYSxDQUFDLFNBQVMsQ0FBQyxFQUFFLFNBQVMsSUFBSTtZQUM1RixHQUFHLEVBQUUsQ0FBQztZQUNOLEdBQUcsRUFBRSxDQUFDO1lBQ04sR0FBRyxFQUFFLENBQUM7U0FDUCxDQUFDO1FBQ0YsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUNuRSxPQUFPO1lBQ0wsRUFBRSxLQUFLLEVBQUUsd0JBQXdCLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUU7WUFDakYsRUFBRSxLQUFLLEVBQUUsd0JBQXdCLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUU7WUFDL0UsRUFBRSxLQUFLLEVBQUUsd0NBQXdDLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFO1NBQ3BGLENBQUM7SUFDSixDQUFDOzs4SEFqQlUsaUNBQWlDO2tIQUFqQyxpQ0FBaUMsNkdDVDlDLG9vQkFjQTsyRkRMYSxpQ0FBaUM7a0JBSjdDLFNBQVM7K0JBQ0UsaUNBQWlDOzhCQUlsQyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb3N0R3JvdXBSb2xlIH0gZnJvbSAnQHByb3h5L2Nvc3QtZ3JvdXBzL2Nvc3QtZ3JvdXAtcm9sZS5lbnVtJztcclxuaW1wb3J0IHsgY29zdEdyb3VwUm9sZVRvdGFsTGFiZWxzIH0gZnJvbSAnLi4vLi4vY29zdC1ncm91cHMvY29zdC1ncm91cC1yb2xlLWwxMG4taGVscGVyJztcclxuaW1wb3J0IHsgYWRkQW1vdW50cywgUm9sZUdyb3VwIH0gZnJvbSAnLi4vZW5naW5lJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWNvc3QtY2FsY3VsYXRpb24tcmVzdWx0LXN1bScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Nvc3QtY2FsY3VsYXRpb24tcmVzdWx0LXN1bS5jb21wb25lbnQuaHRtbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3N0Q2FsY3VsYXRpb25SZXN1bHRTdW1Db21wb25lbnQge1xyXG4gIEBJbnB1dCgpIHJvbGVHcm91cHM6IFJvbGVHcm91cFtdID0gW107XHJcblxyXG4gIGdldCBzdW1tYXJ5Q2FyZHMoKSB7XHJcbiAgICBjb25zdCBwcm9kdWN0aW9uID0gdGhpcy5yb2xlR3JvdXBzLmZpbmQoZyA9PiBnLnJvbGUgPT09IENvc3RHcm91cFJvbGUuUHJvZHVjdGlvbilcclxuICAgICAgPy5yb2xlVG90YWwgPz8geyB0cnk6IDAsIHVzZDogMCwgZXVyOiAwIH07XHJcbiAgICBjb25zdCBvcGVyYXRpbmcgPSB0aGlzLnJvbGVHcm91cHMuZmluZChnID0+IGcucm9sZSA9PT0gQ29zdEdyb3VwUm9sZS5PcGVyYXRpbmcpPy5yb2xlVG90YWwgPz8ge1xyXG4gICAgICB0cnk6IDAsXHJcbiAgICAgIHVzZDogMCxcclxuICAgICAgZXVyOiAwLFxyXG4gICAgfTtcclxuICAgIGNvbnN0IHRvdGFsID0gYWRkQW1vdW50cyguLi50aGlzLnJvbGVHcm91cHMubWFwKGcgPT4gZy5yb2xlVG90YWwpKTtcclxuICAgIHJldHVybiBbXHJcbiAgICAgIHsgbGFiZWw6IGNvc3RHcm91cFJvbGVUb3RhbExhYmVsc1tDb3N0R3JvdXBSb2xlLlByb2R1Y3Rpb25dLCBhbW91bnQ6IHByb2R1Y3Rpb24gfSxcclxuICAgICAgeyBsYWJlbDogY29zdEdyb3VwUm9sZVRvdGFsTGFiZWxzW0Nvc3RHcm91cFJvbGUuT3BlcmF0aW5nXSwgYW1vdW50OiBvcGVyYXRpbmcgfSxcclxuICAgICAgeyBsYWJlbDogJ0tlb3BzOjpDb3N0Q2FsY3VsYXRpb25zOlRvdGFsU2FsZVByaWNlJywgYW1vdW50OiB0b3RhbCwgaGlnaGxpZ2h0OiB0cnVlIH0sXHJcbiAgICBdO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicm93IG1iLTNcIj5cclxuICA8ZGl2IGNsYXNzPVwiY29sLW1kLTRcIiAqbmdGb3I9XCJsZXQgY2FyZCBvZiBzdW1tYXJ5Q2FyZHNcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXJkIGgtMTAwXCIgW2NsYXNzLmJvcmRlci13YXJuaW5nXT1cImNhcmQuaGlnaGxpZ2h0XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1tdXRlZCB0ZXh0LXVwcGVyY2FzZSBzbWFsbCBmdy1ib2xkXCI+XHJcbiAgICAgICAgICB7eyBjYXJkLmxhYmVsIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZzLTQgZnctYm9sZFwiPiQge3sgY2FyZC5hbW91bnQudXNkIHwgbnVtYmVyIH19PC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtbXV0ZWQgc21hbGxcIj7igqwge3sgY2FyZC5hbW91bnQuZXVyIHwgbnVtYmVyIH19PC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtbXV0ZWQgc21hbGxcIj7igroge3sgY2FyZC5hbW91bnQudHJ5IHwgbnVtYmVyIH19PC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29zdC1jYWxjdWxhdGlvbi1yZXN1bHQtc3VtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2thZG9vZ2x1LWtlb3BzL3NyYy9saWIvZmVhdHVyZXMvY29zdC1jYWxjdWxhdGlvbi9jb21wb25lbnRzL2Nvc3QtY2FsY3VsYXRpb24tcmVzdWx0LXN1bS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWRvb2dsdS1rZW9wcy9zcmMvbGliL2ZlYXR1cmVzL2Nvc3QtY2FsY3VsYXRpb24vY29tcG9uZW50cy9jb3N0LWNhbGN1bGF0aW9uLXJlc3VsdC1zdW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzlELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSxXQUFXLENBQUM7Ozs7QUFNbEQsTUFBTSxPQUFPLGlDQUFpQztJQUo5QztRQUtXLGVBQVUsR0FBZ0IsRUFBRSxDQUFDO0tBaUJ2QztJQWZDLElBQUksWUFBWTtRQUNkLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxhQUFhLENBQUMsVUFBVSxDQUFDO1lBQy9FLEVBQUUsU0FBUyxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUM1QyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssYUFBYSxDQUFDLFNBQVMsQ0FBQyxFQUFFLFNBQVMsSUFBSTtZQUM1RixHQUFHLEVBQUUsQ0FBQztZQUNOLEdBQUcsRUFBRSxDQUFDO1lBQ04sR0FBRyxFQUFFLENBQUM7U0FDUCxDQUFDO1FBQ0YsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUNuRSxPQUFPO1lBQ0wsRUFBRSxLQUFLLEVBQUUsd0JBQXdCLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUU7WUFDakYsRUFBRSxLQUFLLEVBQUUsd0JBQXdCLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUU7WUFDL0UsRUFBRSxLQUFLLEVBQUUsd0NBQXdDLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFO1NBQ3BGLENBQUM7SUFDSixDQUFDOzs4SEFqQlUsaUNBQWlDO2tIQUFqQyxpQ0FBaUMsNkdDVDlDLG9vQkFjQTsyRkRMYSxpQ0FBaUM7a0JBSjdDLFNBQVM7K0JBQ0UsaUNBQWlDOzhCQUlsQyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb3N0R3JvdXBSb2xlIH0gZnJvbSAnQGhpdHNvZnQva2Fkb29nbHUta2VvcHMvcHJveHknO1xyXG5pbXBvcnQgeyBjb3N0R3JvdXBSb2xlVG90YWxMYWJlbHMgfSBmcm9tICcuLi8uLi9jb3N0LWdyb3Vwcy9jb3N0LWdyb3VwLXJvbGUtbDEwbi1oZWxwZXInO1xyXG5pbXBvcnQgeyBhZGRBbW91bnRzLCBSb2xlR3JvdXAgfSBmcm9tICcuLi9lbmdpbmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItY29zdC1jYWxjdWxhdGlvbi1yZXN1bHQtc3VtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29zdC1jYWxjdWxhdGlvbi1yZXN1bHQtc3VtLmNvbXBvbmVudC5odG1sJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIENvc3RDYWxjdWxhdGlvblJlc3VsdFN1bUNvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgcm9sZUdyb3VwczogUm9sZUdyb3VwW10gPSBbXTtcclxuXHJcbiAgZ2V0IHN1bW1hcnlDYXJkcygpIHtcclxuICAgIGNvbnN0IHByb2R1Y3Rpb24gPSB0aGlzLnJvbGVHcm91cHMuZmluZChnID0+IGcucm9sZSA9PT0gQ29zdEdyb3VwUm9sZS5Qcm9kdWN0aW9uKVxyXG4gICAgICA/LnJvbGVUb3RhbCA/PyB7IHRyeTogMCwgdXNkOiAwLCBldXI6IDAgfTtcclxuICAgIGNvbnN0IG9wZXJhdGluZyA9IHRoaXMucm9sZUdyb3Vwcy5maW5kKGcgPT4gZy5yb2xlID09PSBDb3N0R3JvdXBSb2xlLk9wZXJhdGluZyk/LnJvbGVUb3RhbCA/PyB7XHJcbiAgICAgIHRyeTogMCxcclxuICAgICAgdXNkOiAwLFxyXG4gICAgICBldXI6IDAsXHJcbiAgICB9O1xyXG4gICAgY29uc3QgdG90YWwgPSBhZGRBbW91bnRzKC4uLnRoaXMucm9sZUdyb3Vwcy5tYXAoZyA9PiBnLnJvbGVUb3RhbCkpO1xyXG4gICAgcmV0dXJuIFtcclxuICAgICAgeyBsYWJlbDogY29zdEdyb3VwUm9sZVRvdGFsTGFiZWxzW0Nvc3RHcm91cFJvbGUuUHJvZHVjdGlvbl0sIGFtb3VudDogcHJvZHVjdGlvbiB9LFxyXG4gICAgICB7IGxhYmVsOiBjb3N0R3JvdXBSb2xlVG90YWxMYWJlbHNbQ29zdEdyb3VwUm9sZS5PcGVyYXRpbmddLCBhbW91bnQ6IG9wZXJhdGluZyB9LFxyXG4gICAgICB7IGxhYmVsOiAnS2VvcHM6OkNvc3RDYWxjdWxhdGlvbnM6VG90YWxTYWxlUHJpY2UnLCBhbW91bnQ6IHRvdGFsLCBoaWdobGlnaHQ6IHRydWUgfSxcclxuICAgIF07XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJyb3cgbWItM1wiPlxyXG4gIDxkaXYgY2xhc3M9XCJjb2wtbWQtNFwiICpuZ0Zvcj1cImxldCBjYXJkIG9mIHN1bW1hcnlDYXJkc1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmQgaC0xMDBcIiBbY2xhc3MuYm9yZGVyLXdhcm5pbmddPVwiY2FyZC5oaWdobGlnaHRcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LW11dGVkIHRleHQtdXBwZXJjYXNlIHNtYWxsIGZ3LWJvbGRcIj5cclxuICAgICAgICAgIHt7IGNhcmQubGFiZWwgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZnMtNCBmdy1ib2xkXCI+JCB7eyBjYXJkLmFtb3VudC51c2QgfCBudW1iZXIgfX08L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1tdXRlZCBzbWFsbFwiPuKCrCB7eyBjYXJkLmFtb3VudC5ldXIgfCBudW1iZXIgfX08L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1tdXRlZCBzbWFsbFwiPuKCuiB7eyBjYXJkLmFtb3VudC50cnkgfCBudW1iZXIgfX08L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -2,21 +2,22 @@ import { Component, ViewEncapsulation } from '@angular/core';
2
2
  import { forkJoin } from 'rxjs';
3
3
  import DataSource from 'devextreme/data/data_source';
4
4
  import ArrayStore from 'devextreme/data/array_store';
5
- import { ExchangeRateSource } from '@proxy/exchange-rates/exchange-rate-source.enum';
6
- import { Currency } from '@proxy/currencies/currency.enum';
7
- import { CostItemCalculationType } from '@proxy/cost-items/cost-item-calculation-type.enum';
5
+ import { Currency, CostParameterCategoryParentCode, } from '@hitsoft/kadooglu-keops/proxy';
8
6
  import { buildRoleGroups, calculateCost } from '../engine';
9
7
  import { parseDecimal } from '../../../utils/number.utils';
8
+ import { resolveSystemRates } from '../../../utils/exchange-rate.utils';
9
+ import { isRateCostItem } from '../../../shared/cost-item-classification.utils';
10
10
  import * as i0 from "@angular/core";
11
- import * as i1 from "@proxy/controllers";
11
+ import * as i1 from "@hitsoft/kadooglu-keops/proxy";
12
12
  import * as i2 from "@abp/ng.components/page";
13
13
  import * as i3 from "./cost-calculation-inputs.component";
14
14
  import * as i4 from "./cost-calculation-results.component";
15
15
  import * as i5 from "./cost-calculation-result-sum.component";
16
16
  import * as i6 from "@abp/ng.core";
17
17
  export class CostCalculationComponent {
18
- constructor(parameterService, costItemService, costGroupService, exchangeRateService, itemService) {
18
+ constructor(parameterService, costParameterCategoryService, costItemService, costGroupService, exchangeRateService, itemService) {
19
19
  this.parameterService = parameterService;
20
+ this.costParameterCategoryService = costParameterCategoryService;
20
21
  this.costItemService = costItemService;
21
22
  this.costGroupService = costGroupService;
22
23
  this.exchangeRateService = exchangeRateService;
@@ -42,7 +43,7 @@ export class CostCalculationComponent {
42
43
  this.productGroupNames = new Map();
43
44
  this.regionNames = new Map();
44
45
  this.itemDisplayExpr = (item) => item ? [item.code, item.name].filter(Boolean).join(' — ') : '';
45
- this.parameterDisplayExpr = (p) => (p ? this.parameterLabel(p) : '');
46
+ this.parameterDisplayExpr = (p) => p ? this.parameterLabel(p) : '';
46
47
  }
47
48
  ngOnInit() {
48
49
  this.calculate();
@@ -51,7 +52,7 @@ export class CostCalculationComponent {
51
52
  costItems: this.costItemService.getList(),
52
53
  groups: this.costGroupService.getList(),
53
54
  rate: this.exchangeRateService.get(),
54
- lookups: this.parameterService.getCodeLookups(),
55
+ lookups: this.costParameterCategoryService.getList(),
55
56
  items: this.itemService.getList(this.itemCodePrefix),
56
57
  }).subscribe(({ parameters, costItems, groups, rate, lookups, items }) => {
57
58
  this.parameters = parameters ?? [];
@@ -61,15 +62,16 @@ export class CostCalculationComponent {
61
62
  paginate: true,
62
63
  pageSize: 50,
63
64
  });
64
- this.productGroupNames = this.toNameMap(lookups?.productGroups);
65
- this.regionNames = this.toNameMap(lookups?.regions);
65
+ const categories = lookups ?? [];
66
+ this.productGroupNames = this.toNameMap(categories.filter(x => x.parentCode === CostParameterCategoryParentCode.Code1));
67
+ this.regionNames = this.toNameMap(categories.filter(x => x.parentCode === CostParameterCategoryParentCode.Code4));
66
68
  this.costItemsByCode = new Map();
67
69
  for (const ci of costItems ?? []) {
68
70
  if (ci.code)
69
71
  this.costItemsByCode.set(ci.code, ci);
70
72
  }
71
73
  this.groups = (groups ?? []).slice().sort((a, b) => a.displayOrder - b.displayOrder);
72
- const [usd, eur] = this.resolveRates(rate);
74
+ const [usd, eur] = resolveSystemRates(rate);
73
75
  this.systemRateUsd = usd;
74
76
  this.systemRateEur = eur;
75
77
  this.rateUsd = usd;
@@ -117,7 +119,7 @@ export class CostCalculationComponent {
117
119
  if (!costItem)
118
120
  continue;
119
121
  const stored = valuesByCode.get(code);
120
- const isRate = costItem.calculationType === CostItemCalculationType.Rate;
122
+ const isRate = isRateCostItem(costItem);
121
123
  items.push({
122
124
  costItemCode: code,
123
125
  costItemName: costItem.name ?? code,
@@ -149,19 +151,11 @@ export class CostCalculationComponent {
149
151
  print() {
150
152
  window.print();
151
153
  }
152
- resolveRates(rate) {
153
- if (!rate)
154
- return [0, 0];
155
- if (rate.source === ExchangeRateSource.Fixed) {
156
- return [rate.fixedUsdRate ?? 0, rate.fixedEurRate ?? 0];
157
- }
158
- return [rate.cbExchangeRate?.usdBuyingRate ?? 0, rate.cbExchangeRate?.eurBuyingRate ?? 0];
159
- }
160
154
  }
161
- CostCalculationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CostCalculationComponent, deps: [{ token: i1.CostParameterService }, { token: i1.CostItemService }, { token: i1.CostGroupService }, { token: i1.ExchangeRateService }, { token: i1.ItemService }], target: i0.ɵɵFactoryTarget.Component });
155
+ CostCalculationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CostCalculationComponent, deps: [{ token: i1.CostParameterService }, { token: i1.CostParameterCategoryService }, { token: i1.CostItemService }, { token: i1.CostGroupService }, { token: i1.ExchangeRateService }, { token: i1.ItemService }], target: i0.ɵɵFactoryTarget.Component });
162
156
  CostCalculationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: CostCalculationComponent, selector: "lib-cost-calculation", ngImport: i0, template: "<abp-page [title]=\"'Keops::CostCalculations:Title' | abpLocalization\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row justify-content-end mx-0\">\r\n <div class=\"col-auto px-1 pt-0 pt-md-2\">\r\n <button class=\"btn btn-outline-primary\" type=\"button\" (click)=\"print()\" [disabled]=\"!result\">\r\n <i class=\"fa fa-print me-1\"></i>\r\n <span>{{ 'Keops::CostCalculations:Print' | abpLocalization }}</span>\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n\r\n <div class=\"row\">\r\n <div class=\"col-lg-4 mb-3\">\r\n <lib-cost-calculation-inputs\r\n [itemsDataSource]=\"itemsDataSource\"\r\n [itemDisplayExpr]=\"itemDisplayExpr\"\r\n [parameters]=\"parameters\"\r\n [parameterDisplayExpr]=\"parameterDisplayExpr\"\r\n [stages]=\"stages\"\r\n [(selectedItemCode)]=\"selectedItemCode\"\r\n [(selectedParameterCode)]=\"selectedParameterCode\"\r\n [(rawOilPrice)]=\"rawOilPrice\"\r\n [(rawOilCurrency)]=\"rawOilCurrency\"\r\n [systemRateUsd]=\"systemRateUsd\"\r\n [systemRateEur]=\"systemRateEur\"\r\n [(rateUsd)]=\"rateUsd\"\r\n [(rateEur)]=\"rateEur\"\r\n (itemChange)=\"onItemChange()\"\r\n (parameterChange)=\"onParameterChange()\"\r\n (recalc)=\"calculate()\"\r\n ></lib-cost-calculation-inputs>\r\n </div>\r\n\r\n <div class=\"col-lg-8 mb-3\">\r\n <div class=\"d-print-none\">\r\n <lib-cost-calculation-result-sum [roleGroups]=\"roleGroups\"></lib-cost-calculation-result-sum>\r\n </div>\r\n <div id=\"cost-calculation-results\">\r\n <lib-cost-calculation-results [result]=\"result\" [roleGroups]=\"roleGroups\" [itemName]=\"selectedItemName\" [rateUsd]=\"rateUsd\" [rateEur]=\"rateEur\"></lib-cost-calculation-results>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", styles: ["@media print{body *{visibility:hidden}#cost-calculation-results,#cost-calculation-results *{visibility:visible}#cost-calculation-results{position:absolute;inset:0;width:100%}}\n"], dependencies: [{ kind: "component", type: i2.PageComponent, selector: "abp-page", inputs: ["title", "toolbar", "breadcrumb"] }, { kind: "component", type: i2.PageToolbarContainerComponent, selector: "abp-page-toolbar-container" }, { kind: "component", type: i3.CostCalculationInputsComponent, selector: "lib-cost-calculation-inputs", inputs: ["itemsDataSource", "itemDisplayExpr", "parameters", "parameterDisplayExpr", "stages", "selectedItemCode", "selectedParameterCode", "rawOilPrice", "rawOilCurrency", "systemRateUsd", "systemRateEur", "rateUsd", "rateEur"], outputs: ["selectedItemCodeChange", "selectedParameterCodeChange", "rawOilPriceChange", "rawOilCurrencyChange", "rateUsdChange", "rateEurChange", "itemChange", "parameterChange", "recalc"] }, { kind: "component", type: i4.CostCalculationResultsComponent, selector: "lib-cost-calculation-results", inputs: ["result", "roleGroups", "itemName", "rateUsd", "rateEur"] }, { kind: "component", type: i5.CostCalculationResultSumComponent, selector: "lib-cost-calculation-result-sum", inputs: ["roleGroups"] }, { kind: "pipe", type: i6.LocalizationPipe, name: "abpLocalization" }], encapsulation: i0.ViewEncapsulation.None });
163
157
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CostCalculationComponent, decorators: [{
164
158
  type: Component,
165
159
  args: [{ selector: 'lib-cost-calculation', encapsulation: ViewEncapsulation.None, template: "<abp-page [title]=\"'Keops::CostCalculations:Title' | abpLocalization\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row justify-content-end mx-0\">\r\n <div class=\"col-auto px-1 pt-0 pt-md-2\">\r\n <button class=\"btn btn-outline-primary\" type=\"button\" (click)=\"print()\" [disabled]=\"!result\">\r\n <i class=\"fa fa-print me-1\"></i>\r\n <span>{{ 'Keops::CostCalculations:Print' | abpLocalization }}</span>\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n\r\n <div class=\"row\">\r\n <div class=\"col-lg-4 mb-3\">\r\n <lib-cost-calculation-inputs\r\n [itemsDataSource]=\"itemsDataSource\"\r\n [itemDisplayExpr]=\"itemDisplayExpr\"\r\n [parameters]=\"parameters\"\r\n [parameterDisplayExpr]=\"parameterDisplayExpr\"\r\n [stages]=\"stages\"\r\n [(selectedItemCode)]=\"selectedItemCode\"\r\n [(selectedParameterCode)]=\"selectedParameterCode\"\r\n [(rawOilPrice)]=\"rawOilPrice\"\r\n [(rawOilCurrency)]=\"rawOilCurrency\"\r\n [systemRateUsd]=\"systemRateUsd\"\r\n [systemRateEur]=\"systemRateEur\"\r\n [(rateUsd)]=\"rateUsd\"\r\n [(rateEur)]=\"rateEur\"\r\n (itemChange)=\"onItemChange()\"\r\n (parameterChange)=\"onParameterChange()\"\r\n (recalc)=\"calculate()\"\r\n ></lib-cost-calculation-inputs>\r\n </div>\r\n\r\n <div class=\"col-lg-8 mb-3\">\r\n <div class=\"d-print-none\">\r\n <lib-cost-calculation-result-sum [roleGroups]=\"roleGroups\"></lib-cost-calculation-result-sum>\r\n </div>\r\n <div id=\"cost-calculation-results\">\r\n <lib-cost-calculation-results [result]=\"result\" [roleGroups]=\"roleGroups\" [itemName]=\"selectedItemName\" [rateUsd]=\"rateUsd\" [rateEur]=\"rateEur\"></lib-cost-calculation-results>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", styles: ["@media print{body *{visibility:hidden}#cost-calculation-results,#cost-calculation-results *{visibility:visible}#cost-calculation-results{position:absolute;inset:0;width:100%}}\n"] }]
166
- }], ctorParameters: function () { return [{ type: i1.CostParameterService }, { type: i1.CostItemService }, { type: i1.CostGroupService }, { type: i1.ExchangeRateService }, { type: i1.ItemService }]; } });
167
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29zdC1jYWxjdWxhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWRvb2dsdS1rZW9wcy9zcmMvbGliL2ZlYXR1cmVzL2Nvc3QtY2FsY3VsYXRpb24vY29tcG9uZW50cy9jb3N0LWNhbGN1bGF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2thZG9vZ2x1LWtlb3BzL3NyYy9saWIvZmVhdHVyZXMvY29zdC1jYWxjdWxhdGlvbi9jb21wb25lbnRzL2Nvc3QtY2FsY3VsYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sVUFBVSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JELE9BQU8sVUFBVSxNQUFNLDZCQUE2QixDQUFDO0FBYXJELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMzRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM1RixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBeUIsTUFBTSxXQUFXLENBQUM7QUFFbEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7Ozs7OztBQVEzRCxNQUFNLE9BQU8sd0JBQXdCO0lBNEJuQyxZQUNtQixnQkFBc0MsRUFDdEMsZUFBZ0MsRUFDaEMsZ0JBQWtDLEVBQ2xDLG1CQUF3QyxFQUN4QyxXQUF3QjtRQUp4QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXNCO1FBQ3RDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNo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SUFBSSxDQUFDLElBQUk7WUFBRSxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUU7WUFDNUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxDQUFDLENBQUM7U0FDekQ7UUFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxhQUFhLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUUsYUFBYSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzVGLENBQUM7O3FIQXBLVSx3QkFBd0I7eUdBQXhCLHdCQUF3Qiw0REM3QnJDLDQ1REE0Q0E7MkZEZmEsd0JBQXdCO2tCQU5wQyxTQUFTOytCQUNFLHNCQUFzQixpQkFHakIsaUJBQWlCLENBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBmb3JrSm9pbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgRGF0YVNvdXJjZSBmcm9tICdkZXZleHRyZW1lL2RhdGEvZGF0YV9zb3VyY2UnO1xyXG5pbXBvcnQgQXJyYXlTdG9yZSBmcm9tICdkZXZleHRyZW1lL2RhdGEvYXJyYXlfc3RvcmUnO1xyXG5pbXBvcnQge1xyXG4gIENvc3RHcm91cFNlcnZpY2UsXHJcbiAgQ29zdEl0ZW1TZXJ2aWNlLFxyXG4gIENvc3RQYXJhbWV0ZXJTZXJ2aWNlLFxyXG4gIEV4Y2hhbmdlUmF0ZVNlcnZpY2UsXHJcbiAgSXRlbVNlcnZpY2UsXHJcbn0gZnJvbSAnQHByb3h5L2NvbnRyb2xsZXJzJztcclxuaW1wb3J0IHsgSXRlbUR0byB9IGZyb20gJ0Bwcm94eS9pdGVtcy9kdG9zJztcclxuaW1wb3J0IHsgQ29zdFBhcmFtZXRlckNhdGVnb3J5TG9va3VwRHRvLCBDb3N0UGFyYW1ldGVyRHRvIH0gZnJvbSAnQHByb3h5L2Nvc3QtcGFyYW1ldGVycy9kdG9zJztcclxuaW1wb3J0IHsgQ29zdEl0ZW1EdG8gfSBmcm9tICdAcHJveHkvY29zdC1pdGVtcy9kdG9zJztcclxuaW1wb3J0IHsgQ29zdEdyb3VwRHRvIH0gZnJvbSAnQHByb3h5L2Nvc3QtZ3JvdXBzL2R0b3MnO1xyXG5pbXBvcnQgeyBFeGNoYW5nZVJhdGVEdG8gfSBmcm9tICdAcHJveHkvZXhjaGFuZ2UtcmF0ZXMvZHRvcyc7XHJcbmltcG9ydCB7IEV4Y2hhbmdlUmF0ZVNvdXJjZSB9IGZyb20gJ0Bwcm94eS9leGNoYW5nZS1yYXRlcy9leGNoYW5nZS1yYXRlLXNvdXJjZS5lbnVtJztcclxuaW1wb3J0IHsgQ3VycmVuY3kgfSBmcm9tICdAcHJveHkvY3VycmVuY2llcy9jdXJyZW5jeS5lbnVtJztcclxuaW1wb3J0IHsgQ29zdEl0ZW1DYWxjdWxhdGlvblR5cGUgfSBmcm9tICdAcHJveHkvY29zdC1pdGVtcy9jb3N0LWl0ZW0tY2FsY3VsYXRpb24tdHlwZS5lbnVtJztcclxuaW1wb3J0IHsgYnVpbGRSb2xlR3JvdXBzLCBjYWxjdWxhdGVDb3N0LCBDb3N0UmVzdWx0LCBSb2xlR3JvdXAgfSBmcm9tICcuLi9lbmdpbmUnO1xyXG5pbXBvcnQgeyBDb3N0Q2FsY3VsYXRpb25JdGVtLCBDb3N0Q2FsY3VsYXRpb25TdGFnZSB9IGZyb20gJy4uL2Nvc3QtY2FsY3VsYXRpb24ubW9kZWxzJztcclxuaW1wb3J0IHsgcGFyc2VEZWNpbWFsIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvbnVtYmVyLnV0aWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWNvc3QtY2FsY3VsYXRpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb3N0LWNhbGN1bGF0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb3N0LWNhbGN1bGF0aW9uLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENvc3RDYWxjdWxhdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcmVhZG9ubHkgaXRlbUNvZGVQcmVmaXggPSAnMDUnO1xyXG4gIHByb2R1Y3RJdGVtczogSXRlbUR0b1tdID0gW107XHJcbiAgaXRlbXNEYXRhU291cmNlOiBEYXRhU291cmNlIHwgbnVsbCA9IG51bGw7XHJcbiAgc2VsZWN0ZWRJdGVtQ29kZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcbiAgc2VsZWN0ZWRJdGVtTmFtZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIHBhcmFtZXRlcnM6IENvc3RQYXJhbWV0ZXJEdG9bXSA9IFtdO1xyXG4gIHNlbGVjdGVkUGFyYW1ldGVyQ29kZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIHJhd09pbFByaWNlID0gMDtcclxuICByYXdPaWxDdXJyZW5jeSA9IEN1cnJlbmN5LlVTRDtcclxuXHJcbiAgc3lzdGVtUmF0ZVVzZCA9IDA7XHJcbiAgc3lzdGVtUmF0ZUV1ciA9IDA7XHJcblxyXG4gIHJhdGVVc2QgPSAwO1xyXG4gIHJhdGVFdXIgPSAwO1xyXG5cclxuICBzdGFnZXM6IENvc3RDYWxjdWxhdGlvblN0YWdlW10gPSBbXTtcclxuICByZXN1bHQ6IENvc3RSZXN1bHQgfCBudWxsID0gbnVsbDtcclxuICByb2xlR3JvdXBzOiBSb2xlR3JvdXBbXSA9IFtdO1xyXG5cclxuICBwcml2YXRlIGNvc3RJdGVtc0J5Q29kZSA9IG5ldyBNYXA8c3RyaW5nLCBDb3N0SXRlbUR0bz4oKTtcclxuICBwcml2YXRlIGdyb3VwczogQ29zdEdyb3VwRHRvW10gPSBbXTtcclxuICBwcml2YXRlIHByb2R1Y3RHcm91cE5hbWVzID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKTtcclxuICBwcml2YXRlIHJlZ2lvbk5hbWVzID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBhcmFtZXRlclNlcnZpY2U6IENvc3RQYXJhbWV0ZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb3N0SXRlbVNlcnZpY2U6IENvc3RJdGVtU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29zdEdyb3VwU2VydmljZTogQ29zdEdyb3VwU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZXhjaGFuZ2VSYXRlU2VydmljZTogRXhjaGFuZ2VSYXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaXRlbVNlcnZpY2U6IEl0ZW1TZXJ2aWNlLFxyXG4gICkge31cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNhbGN1bGF0ZSgpO1xyXG5cclxuICAgIGZvcmtKb2luKHtcclxuICAgICAgcGFyYW1ldGVyczogdGhpcy5wYXJhbWV0ZXJTZXJ2aWNlLmdldExpc3QoKSxcclxuICAgICAgY29zdEl0ZW1zOiB0aGlzLmNvc3RJdGVtU2VydmljZS5nZXRMaXN0KCksXHJcbiAgICAgIGdyb3VwczogdGhpcy5jb3N0R3JvdXBTZXJ2aWNlLmdldExpc3QoKSxcclxuICAgICAgcmF0ZTogdGhpcy5leGNoYW5nZVJhdGVTZXJ2aWNlLmdldCgpLFxyXG4gICAgICBsb29rdXBzOiB0aGlzLnBhcmFtZXRlclNlcnZpY2UuZ2V0Q29kZUxvb2t1cHMoKSxcclxuICAgICAgaXRlbXM6IHRoaXMuaXRlbVNlcnZpY2UuZ2V0TGlzdCh0aGlzLml0ZW1Db2RlUHJlZml4KSxcclxuICAgIH0pLnN1YnNjcmliZSgoeyBwYXJhbWV0ZXJzLCBjb3N0SXRlbXMsIGdyb3VwcywgcmF0ZSwgbG9va3VwcywgaXRlbXMgfSkgPT4ge1xyXG4gICAgICB0aGlzLnBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzID8/IFtdO1xyXG4gICAgICB0aGlzLnByb2R1Y3RJdGVtcyA9IGl0ZW1zID8/IFtdO1xyXG4gICAgICB0aGlzLml0ZW1zRGF0YVNvdXJjZSA9IG5ldyBEYXRhU291cmNlKHtcclxuICAgICAgICBzdG9yZTogbmV3IEFycmF5U3RvcmUoeyBrZXk6ICdjb2RlJywgZGF0YTogdGhpcy5wcm9kdWN0SXRlbXMgfSksXHJcbiAgICAgICAgcGFnaW5hdGU6IHRydWUsXHJcbiAgICAgICAgcGFnZVNpemU6IDUwLFxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIHRoaXMucHJvZHVjdEdyb3VwTmFtZXMgPSB0aGlzLnRvTmFtZU1hcChsb29rdXBzPy5wcm9kdWN0R3JvdXBzKTtcclxuICAgICAgdGhpcy5yZWdpb25OYW1lcyA9IHRoaXMudG9OYW1lTWFwKGxvb2t1cHM/LnJlZ2lvbnMpO1xyXG5cclxuICAgICAgdGhpcy5jb3N0SXRlbXNCeUNvZGUgPSBuZXcgTWFwPHN0cmluZywgQ29zdEl0ZW1EdG8+KCk7XHJcbiAgICAgIGZvciAoY29uc3QgY2kgb2YgY29zdEl0ZW1zID8/IFtdKSB7XHJcbiAgICAgICAgaWYgKGNpLmNvZGUpIHRoaXMuY29zdEl0ZW1zQnlDb2RlLnNldChjaS5jb2RlLCBjaSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuZ3JvdXBzID0gKGdyb3VwcyA/PyBbXSkuc2xpY2UoKS5zb3J0KChhLCBiKSA9PiBhLmRpc3BsYXlPcmRlciAtIGIuZGlzcGxheU9yZGVyKTtcclxuXHJcbiAgICAgIGNvbnN0IFt1c2QsIGV1cl0gPSB0aGlzLnJlc29sdmVSYXRlcyhyYXRlKTtcclxuICAgICAgdGhpcy5zeXN0ZW1SYXRlVXNkID0gdXNkO1xyXG4gICAgICB0aGlzLnN5c3RlbVJhdGVFdXIgPSBldXI7XHJcbiAgICAgIHRoaXMucmF0ZVVzZCA9IHVzZDtcclxuICAgICAgdGhpcy5yYXRlRXVyID0gZXVyO1xyXG5cclxuICAgICAgdGhpcy5jYWxjdWxhdGUoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcGFyYW1ldGVyTGFiZWwocDogQ29zdFBhcmFtZXRlckR0byk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBwcm9kdWN0R3JvdXAgPSB0aGlzLnByb2R1Y3RHcm91cE5hbWVzLmdldChwLnByb2R1Y3RHcm91cCA/PyAnJykgPz8gcC5wcm9kdWN0R3JvdXA7XHJcbiAgICBjb25zdCByZWdpb24gPSB0aGlzLnJlZ2lvbk5hbWVzLmdldChwLnJlZ2lvbiA/PyAnJykgPz8gcC5yZWdpb247XHJcbiAgICByZXR1cm4gW3Byb2R1Y3RHcm91cCwgcmVnaW9uXS5maWx0ZXIoQm9vbGVhbikuam9pbignIOKAlCAnKSB8fCAocC5jb2RlID8/ICcnKTtcclxuICB9XHJcblxyXG4gIG9uSXRlbUNoYW5nZSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGl0ZW0gPSB0aGlzLnByb2R1Y3RJdGVtcy5maW5kKHggPT4geC5jb2RlID09PSB0aGlzLnNlbGVjdGVkSXRlbUNvZGUpO1xyXG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1OYW1lID0gaXRlbT8ubmFtZSA/PyBudWxsO1xyXG4gIH1cclxuXHJcbiAgcmVhZG9ubHkgaXRlbURpc3BsYXlFeHByID0gKGl0ZW06IEl0ZW1EdG8pOiBzdHJpbmcgPT5cclxuICAgIGl0ZW0gPyBbaXRlbS5jb2RlLCBpdGVtLm5hbWVdLmZpbHRlcihCb29sZWFuKS5qb2luKCcg4oCUICcpIDogJyc7XHJcblxyXG4gIHJlYWRvbmx5IHBhcmFtZXRlckRpc3BsYXlFeHByID0gKHA6IENvc3RQYXJhbWV0ZXJEdG8pOiBzdHJpbmcgPT4gKHAgPyB0aGlzLnBhcmFtZXRlckxhYmVsKHApIDogJycpO1xyXG5cclxuICBwcml2YXRlIHRvTmFtZU1hcChvcHRpb25zOiBDb3N0UGFyYW1ldGVyQ2F0ZWdvcnlMb29rdXBEdG9bXSB8IHVuZGVmaW5lZCk6IE1hcDxzdHJpbmcsIHN0cmluZz4ge1xyXG4gICAgY29uc3QgbWFwID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKTtcclxuICAgIGZvciAoY29uc3Qgb3B0aW9uIG9mIG9wdGlvbnMgPz8gW10pIHtcclxuICAgICAgaWYgKG9wdGlvbi5jb2RlKSBtYXAuc2V0KG9wdGlvbi5jb2RlLCBvcHRpb24ubmFtZSA/PyBvcHRpb24uY29kZSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbWFwO1xyXG4gIH1cclxuXHJcbiAgb25QYXJhbWV0ZXJDaGFuZ2UoKTogdm9pZCB7XHJcbiAgICBjb25zdCBwYXJhbWV0ZXIgPSB0aGlzLnBhcmFtZXRlcnMuZmluZChwID0+IHAuY29kZSA9PT0gdGhpcy5zZWxlY3RlZFBhcmFtZXRlckNvZGUpO1xyXG4gICAgdGhpcy5zdGFnZXMgPSBwYXJhbWV0ZXIgPyB0aGlzLmJ1aWxkU3RhZ2VzKHBhcmFtZXRlcikgOiBbXTtcclxuICAgIHRoaXMuY2FsY3VsYXRlKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGJ1aWxkVmFsdWVzQnlDb2RlKHBhcmFtZXRlcjogQ29zdFBhcmFtZXRlckR0byk6IE1hcDxzdHJpbmcsIHsgdmFsdWU6IG51bWJlcjsgY3VycmVuY3k/OiBDdXJyZW5jeSB9PiB7XHJcbiAgICBjb25zdCBtYXAgPSBuZXcgTWFwPHN0cmluZywgeyB2YWx1ZTogbnVtYmVyOyBjdXJyZW5jeT86IEN1cnJlbmN5IH0+KCk7XHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgcGFyYW1ldGVyLml0ZW1zID8/IFtdKSB7XHJcbiAgICAgIGlmIChpdGVtLmNvc3RJdGVtQ29kZSkge1xyXG4gICAgICAgIG1hcC5zZXQoaXRlbS5jb3N0SXRlbUNvZGUsIHsgdmFsdWU6IHBhcnNlRGVjaW1hbChpdGVtLnZhbHVlKSwgY3VycmVuY3k6IGl0ZW0uY3VycmVuY3kgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBtYXA7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGJ1aWxkU3RhZ2VzKHBhcmFtZXRlcjogQ29zdFBhcmFtZXRlckR0byk6IENvc3RDYWxjdWxhdGlvblN0YWdlW10ge1xyXG4gICAgY29uc3QgdmFsdWVzQnlDb2RlID0gdGhpcy5idWlsZFZhbHVlc0J5Q29kZShwYXJhbWV0ZXIpO1xyXG4gICAgcmV0dXJuIHRoaXMuZ3JvdXBzLm1hcChncm91cCA9PiB7XHJcbiAgICAgIGNvbnN0IGl0ZW1zOiBDb3N0Q2FsY3VsYXRpb25JdGVtW10gPSBbXTtcclxuICAgICAgZm9yIChjb25zdCBjb2RlIG9mIGdyb3VwLml0ZW1Db2RlcyA/PyBbXSkge1xyXG4gICAgICAgIGNvbnN0IGNvc3RJdGVtID0gdGhpcy5jb3N0SXRlbXNCeUNvZGUuZ2V0KGNvZGUpO1xyXG4gICAgICAgIGlmICghY29zdEl0ZW0pIGNvbnRpbnVlO1xyXG4gICAgICAgIGNvbnN0IHN0b3JlZCA9IHZhbHVlc0J5Q29kZS5nZXQoY29kZSk7XHJcbiAgICAgICAgY29uc3QgaXNSYXRlID0gY29zdEl0ZW0uY2FsY3VsYXRpb25UeXBlID09PSBDb3N0SXRlbUNhbGN1bGF0aW9uVHlwZS5SYXRlO1xyXG4gICAgICAgIGl0ZW1zLnB1c2goe1xyXG4gICAgICAgICAgY29zdEl0ZW1Db2RlOiBjb2RlLFxyXG4gICAgICAgICAgY29zdEl0ZW1OYW1lOiBjb3N0SXRlbS5uYW1lID8/IGNvZGUsXHJcbiAgICAgICAgICBjYWxjdWxhdGlvblR5cGU6IGNvc3RJdGVtLmNhbGN1bGF0aW9uVHlwZSxcclxuICAgICAgICAgIHN5c3RlbUNvZGU6IGNvc3RJdGVtLnN5c3RlbUNvZGUgPz8gdW5kZWZpbmVkLFxyXG4gICAgICAgICAgY3VycmVuY3k6IHN0b3JlZD8uY3VycmVuY3kgPz8gKGlzUmF0ZSA/IHVuZGVmaW5lZCA6IEN1cnJlbmN5LlRSWSksXHJcbiAgICAgICAgICB2YWx1ZTogc3RvcmVkPy52YWx1ZSA/PyAwLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgZ3JvdXBDb2RlOiBncm91cC5jb2RlID8/ICcnLFxyXG4gICAgICAgIGdyb3VwTmFtZTogZ3JvdXAubmFtZSA/PyAnJyxcclxuICAgICAgICBkaXNwbGF5T3JkZXI6IGdyb3VwLmRpc3BsYXlPcmRlcixcclxuICAgICAgICBncm91cFJvbGU6IGdyb3VwLmdyb3VwUm9sZSxcclxuICAgICAgICBpdGVtcyxcclxuICAgICAgfTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgY2FsY3VsYXRlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5yZXN1bHQgPSBjYWxjdWxhdGVDb3N0KHtcclxuICAgICAgcmF3T2lsUHJpY2U6IHBhcnNlRGVjaW1hbCh0aGlzLnJhd09pbFByaWNlKSxcclxuICAgICAgcmF3T2lsQ3VycmVuY3k6IHRoaXMucmF3T2lsQ3VycmVuY3ksXHJcbiAgICAgIHJhdGVVc2Q6IHBhcnNlRGVjaW1hbCh0aGlzLnJhdGVVc2QpLFxyXG4gICAgICByYXRlRXVyOiBwYXJzZURlY2ltYWwodGhpcy5yYXRlRXVyKSxcclxuICAgICAgc3RhZ2VzOiB0aGlzLnN0YWdlcyxcclxuICAgIH0pO1xyXG4gICAgdGhpcy5yb2xlR3JvdXBzID0gYnVpbGRSb2xlR3JvdXBzKHRoaXMucmVzdWx0LnJhd09pbCwgdGhpcy5yZXN1bHQuc3RhZ2VzKTtcclxuICB9XHJcblxyXG4gIHByaW50KCk6IHZvaWQge1xyXG4gICAgd2luZG93LnByaW50KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlc29sdmVSYXRlcyhyYXRlOiBFeGNoYW5nZVJhdGVEdG8pOiBbbnVtYmVyLCBudW1iZXJdIHtcclxuICAgIGlmICghcmF0ZSkgcmV0dXJuIFswLCAwXTtcclxuICAgIGlmIChyYXRlLnNvdXJjZSA9PT0gRXhjaGFuZ2VSYXRlU291cmNlLkZpeGVkKSB7XHJcbiAgICAgIHJldHVybiBbcmF0ZS5maXhlZFVzZFJhdGUgPz8gMCwgcmF0ZS5maXhlZEV1clJhdGUgPz8gMF07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gW3JhdGUuY2JFeGNoYW5nZVJhdGU/LnVzZEJ1eWluZ1JhdGUgPz8gMCwgcmF0ZS5jYkV4Y2hhbmdlUmF0ZT8uZXVyQnV5aW5nUmF0ZSA/PyAwXTtcclxuICB9XHJcbn1cclxuIiwiPGFicC1wYWdlIFt0aXRsZV09XCInS2VvcHM6OkNvc3RDYWxjdWxhdGlvbnM6VGl0bGUnIHwgYWJwTG9jYWxpemF0aW9uXCI+XHJcbiAgPGFicC1wYWdlLXRvb2xiYXItY29udGFpbmVyIGNsYXNzPVwiY29sXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93IGp1c3RpZnktY29udGVudC1lbmQgbXgtMFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLWF1dG8gcHgtMSBwdC0wIHB0LW1kLTJcIj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lLXByaW1hcnlcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInByaW50KClcIiBbZGlzYWJsZWRdPVwiIXJlc3VsdFwiPlxyXG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1wcmludCBtZS0xXCI+PC9pPlxyXG4gICAgICAgICAgPHNwYW4+e3sgJ0tlb3BzOjpDb3N0Q2FsY3VsYXRpb25zOlByaW50JyB8IGFicExvY2FsaXphdGlvbiB9fTwvc3Bhbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2FicC1wYWdlLXRvb2xiYXItY29udGFpbmVyPlxyXG5cclxuICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTQgbWItM1wiPlxyXG4gICAgICA8bGliLWNvc3QtY2FsY3VsYXRpb24taW5wdXRzXHJcbiAgICAgICAgW2l0ZW1zRGF0YVNvdXJjZV09XCJpdGVtc0RhdGFTb3VyY2VcIlxyXG4gICAgICAgIFtpdGVtRGlzcGxheUV4cHJdPVwiaXRlbURpc3BsYXlFeHByXCJcclxuICAgICAgICBbcGFyYW1ldGVyc109XCJwYXJhbWV0ZXJzXCJcclxuICAgICAgICBbcGFyYW1ldGVyRGlzcGxheUV4cHJdPVwicGFyYW1ldGVyRGlzcGxheUV4cHJcIlxyXG4gICAgICAgIFtzdGFnZXNdPVwic3RhZ2VzXCJcclxuICAgICAgICBbKHNlbGVjdGVkSXRlbUNvZGUpXT1cInNlbGVjdGVkSXRlbUNvZGVcIlxyXG4gICAgICAgIFsoc2VsZWN0ZWRQYXJhbWV0ZXJDb2RlKV09XCJzZWxlY3RlZFBhcmFtZXRlckNvZGVcIlxyXG4gICAgICAgIFsocmF3T2lsUHJpY2UpXT1cInJhd09pbFByaWNlXCJcclxuICAgICAgICBbKHJhd09pbEN1cnJlbmN5KV09XCJyYXdPaWxDdXJyZW5jeVwiXHJcbiAgICAgICAgW3N5c3RlbVJhdGVVc2RdPVwic3lzdGVtUmF0ZVVzZFwiXHJcbiAgICAgICAgW3N5c3RlbVJhdGVFdXJdPVwic3lzdGVtUmF0ZUV1clwiXHJcbiAgICAgICAgWyhyYXRlVXNkKV09XCJyYXRlVXNkXCJcclxuICAgICAgICBbKHJhdGVFdXIpXT1cInJhdGVFdXJcIlxyXG4gICAgICAgIChpdGVtQ2hhbmdlKT1cIm9uSXRlbUNoYW5nZSgpXCJcclxuICAgICAgICAocGFyYW1ldGVyQ2hhbmdlKT1cIm9uUGFyYW1ldGVyQ2hhbmdlKClcIlxyXG4gICAgICAgIChyZWNhbGMpPVwiY2FsY3VsYXRlKClcIlxyXG4gICAgICA+PC9saWItY29zdC1jYWxjdWxhdGlvbi1pbnB1dHM+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTggbWItM1wiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1wcmludC1ub25lXCI+XHJcbiAgICAgICAgPGxpYi1jb3N0LWNhbGN1bGF0aW9uLXJlc3VsdC1zdW0gW3JvbGVHcm91cHNdPVwicm9sZUdyb3Vwc1wiPjwvbGliLWNvc3QtY2FsY3VsYXRpb24tcmVzdWx0LXN1bT5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgaWQ9XCJjb3N0LWNhbGN1bGF0aW9uLXJlc3VsdHNcIj5cclxuICAgICAgICA8bGliLWNvc3QtY2FsY3VsYXRpb24tcmVzdWx0cyBbcmVzdWx0XT1cInJlc3VsdFwiIFtyb2xlR3JvdXBzXT1cInJvbGVHcm91cHNcIiBbaXRlbU5hbWVdPVwic2VsZWN0ZWRJdGVtTmFtZVwiIFtyYXRlVXNkXT1cInJhdGVVc2RcIiBbcmF0ZUV1cl09XCJyYXRlRXVyXCI+PC9saWItY29zdC1jYWxjdWxhdGlvbi1yZXN1bHRzPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2FicC1wYWdlPlxyXG4iXX0=
160
+ }], ctorParameters: function () { return [{ type: i1.CostParameterService }, { type: i1.CostParameterCategoryService }, { type: i1.CostItemService }, { type: i1.CostGroupService }, { type: i1.ExchangeRateService }, { type: i1.ItemService }]; } });
161
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29zdC1jYWxjdWxhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWRvb2dsdS1rZW9wcy9zcmMvbGliL2ZlYXR1cmVzL2Nvc3QtY2FsY3VsYXRpb24vY29tcG9uZW50cy9jb3N0LWNhbGN1bGF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2thZG9vZ2x1LWtlb3BzL3NyYy9saWIvZmVhdHVyZXMvY29zdC1jYWxjdWxhdGlvbi9jb21wb25lbnRzL2Nvc3QtY2FsY3VsYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sVUFBVSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JELE9BQU8sVUFBVSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JELE9BQU8sRUFXTCxRQUFRLEVBQ1IsK0JBQStCLEdBRWhDLE1BQU0sK0JBQStCLENBQUM7QUFDdkMsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQXlCLE1BQU0sV0FBVyxDQUFDO0FBRWxGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0RBQWdELENBQUM7Ozs7Ozs7O0FBUWhGLE1BQU0sT0FBTyx3QkFBd0I7SUE0Qm5DLFlBQ21CLGdCQUFzQyxFQUN0Qyw0QkFBMEQsRUFDMUQsZUFBZ0MsRUFDaEMsZ0JBQWtDLEVBQ2xDLG1CQUF3QyxFQUN4QyxXQUF3QjtRQUx4QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXNCO1FBQ3RDLGlD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LENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxVQUFVLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVELEtBQUs7UUFDSCxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDakIsQ0FBQzs7cUhBcktVLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLDREQy9CckMsNDVEQTRDQTsyRkRiYSx3QkFBd0I7a0JBTnBDLFNBQVM7K0JBQ0Usc0JBQXNCLGlCQUdqQixpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZvcmtKb2luIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCBEYXRhU291cmNlIGZyb20gJ2RldmV4dHJlbWUvZGF0YS9kYXRhX3NvdXJjZSc7XHJcbmltcG9ydCBBcnJheVN0b3JlIGZyb20gJ2RldmV4dHJlbWUvZGF0YS9hcnJheV9zdG9yZSc7XHJcbmltcG9ydCB7XHJcbiAgQ29zdEdyb3VwU2VydmljZSxcclxuICBDb3N0SXRlbVNlcnZpY2UsXHJcbiAgQ29zdFBhcmFtZXRlckNhdGVnb3J5U2VydmljZSxcclxuICBDb3N0UGFyYW1ldGVyU2VydmljZSxcclxuICBFeGNoYW5nZVJhdGVTZXJ2aWNlLFxyXG4gIEl0ZW1TZXJ2aWNlLFxyXG4gIEl0ZW1EdG8sXHJcbiAgQ29zdFBhcmFtZXRlckR0byxcclxuICBDb3N0SXRlbUR0byxcclxuICBDb3N0R3JvdXBEdG8sXHJcbiAgQ3VycmVuY3ksXHJcbiAgQ29zdFBhcmFtZXRlckNhdGVnb3J5UGFyZW50Q29kZSxcclxuICBDb3N0UGFyYW1ldGVyQ2F0ZWdvcnlEdG8sXHJcbn0gZnJvbSAnQGhpdHNvZnQva2Fkb29nbHUta2VvcHMvcHJveHknO1xyXG5pbXBvcnQgeyBidWlsZFJvbGVHcm91cHMsIGNhbGN1bGF0ZUNvc3QsIENvc3RSZXN1bHQsIFJvbGVHcm91cCB9IGZyb20gJy4uL2VuZ2luZSc7XHJcbmltcG9ydCB7IENvc3RDYWxjdWxhdGlvbkl0ZW0sIENvc3RDYWxjdWxhdGlvblN0YWdlIH0gZnJvbSAnLi4vY29zdC1jYWxjdWxhdGlvbi5tb2RlbHMnO1xyXG5pbXBvcnQgeyBwYXJzZURlY2ltYWwgfSBmcm9tICcuLi8uLi8uLi91dGlscy9udW1iZXIudXRpbHMnO1xyXG5pbXBvcnQgeyByZXNvbHZlU3lzdGVtUmF0ZXMgfSBmcm9tICcuLi8uLi8uLi91dGlscy9leGNoYW5nZS1yYXRlLnV0aWxzJztcclxuaW1wb3J0IHsgaXNSYXRlQ29zdEl0ZW0gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29zdC1pdGVtLWNsYXNzaWZpY2F0aW9uLnV0aWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWNvc3QtY2FsY3VsYXRpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb3N0LWNhbGN1bGF0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb3N0LWNhbGN1bGF0aW9uLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENvc3RDYWxjdWxhdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcmVhZG9ubHkgaXRlbUNvZGVQcmVmaXggPSAnMDUnO1xyXG4gIHByb2R1Y3RJdGVtczogSXRlbUR0b1tdID0gW107XHJcbiAgaXRlbXNEYXRhU291cmNlOiBEYXRhU291cmNlIHwgbnVsbCA9IG51bGw7XHJcbiAgc2VsZWN0ZWRJdGVtQ29kZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcbiAgc2VsZWN0ZWRJdGVtTmFtZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIHBhcmFtZXRlcnM6IENvc3RQYXJhbWV0ZXJEdG9bXSA9IFtdO1xyXG4gIHNlbGVjdGVkUGFyYW1ldGVyQ29kZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIHJhd09pbFByaWNlID0gMDtcclxuICByYXdPaWxDdXJyZW5jeSA9IEN1cnJlbmN5LlVTRDtcclxuXHJcbiAgc3lzdGVtUmF0ZVVzZCA9IDA7XHJcbiAgc3lzdGVtUmF0ZUV1ciA9IDA7XHJcblxyXG4gIHJhdGVVc2QgPSAwO1xyXG4gIHJhdGVFdXIgPSAwO1xyXG5cclxuICBzdGFnZXM6IENvc3RDYWxjdWxhdGlvblN0YWdlW10gPSBbXTtcclxuICByZXN1bHQ6IENvc3RSZXN1bHQgfCBudWxsID0gbnVsbDtcclxuICByb2xlR3JvdXBzOiBSb2xlR3JvdXBbXSA9IFtdO1xyXG5cclxuICBwcml2YXRlIGNvc3RJdGVtc0J5Q29kZSA9IG5ldyBNYXA8c3RyaW5nLCBDb3N0SXRlbUR0bz4oKTtcclxuICBwcml2YXRlIGdyb3VwczogQ29zdEdyb3VwRHRvW10gPSBbXTtcclxuICBwcml2YXRlIHByb2R1Y3RHcm91cE5hbWVzID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKTtcclxuICBwcml2YXRlIHJlZ2lvbk5hbWVzID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBhcmFtZXRlclNlcnZpY2U6IENvc3RQYXJhbWV0ZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb3N0UGFyYW1ldGVyQ2F0ZWdvcnlTZXJ2aWNlOiBDb3N0UGFyYW1ldGVyQ2F0ZWdvcnlTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb3N0SXRlbVNlcnZpY2U6IENvc3RJdGVtU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29zdEdyb3VwU2VydmljZTogQ29zdEdyb3VwU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZXhjaGFuZ2VSYXRlU2VydmljZTogRXhjaGFuZ2VSYXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaXRlbVNlcnZpY2U6IEl0ZW1TZXJ2aWNlLFxyXG4gICkge31cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNhbGN1bGF0ZSgpO1xyXG5cclxuICAgIGZvcmtKb2luKHtcclxuICAgICAgcGFyYW1ldGVyczogdGhpcy5wYXJhbWV0ZXJTZXJ2aWNlLmdldExpc3QoKSxcclxuICAgICAgY29zdEl0ZW1zOiB0aGlzLmNvc3RJdGVtU2VydmljZS5nZXRMaXN0KCksXHJcbiAgICAgIGdyb3VwczogdGhpcy5jb3N0R3JvdXBTZXJ2aWNlLmdldExpc3QoKSxcclxuICAgICAgcmF0ZTogdGhpcy5leGNoYW5nZVJhdGVTZXJ2aWNlLmdldCgpLFxyXG4gICAgICBsb29rdXBzOiB0aGlzLmNvc3RQYXJhbWV0ZXJDYXRlZ29yeVNlcnZpY2UuZ2V0TGlzdCgpLFxyXG4gICAgICBpdGVtczogdGhpcy5pdGVtU2VydmljZS5nZXRMaXN0KHRoaXMuaXRlbUNvZGVQcmVmaXgpLFxyXG4gICAgfSkuc3Vic2NyaWJlKCh7IHBhcmFtZXRlcnMsIGNvc3RJdGVtcywgZ3JvdXBzLCByYXRlLCBsb29rdXBzLCBpdGVtcyB9KSA9PiB7XHJcbiAgICAgIHRoaXMucGFyYW1ldGVycyA9IHBhcmFtZXRlcnMgPz8gW107XHJcbiAgICAgIHRoaXMucHJvZHVjdEl0ZW1zID0gaXRlbXMgPz8gW107XHJcbiAgICAgIHRoaXMuaXRlbXNEYXRhU291cmNlID0gbmV3IERhdGFTb3VyY2Uoe1xyXG4gICAgICAgIHN0b3JlOiBuZXcgQXJyYXlTdG9yZSh7IGtleTogJ2NvZGUnLCBkYXRhOiB0aGlzLnByb2R1Y3RJdGVtcyB9KSxcclxuICAgICAgICBwYWdpbmF0ZTogdHJ1ZSxcclxuICAgICAgICBwYWdlU2l6ZTogNTAsXHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgY29uc3QgY2F0ZWdvcmllcyA9IGxvb2t1cHMgPz8gW107XHJcbiAgICAgIHRoaXMucHJvZHVjdEdyb3VwTmFtZXMgPSB0aGlzLnRvTmFtZU1hcChcclxuICAgICAgICBjYXRlZ29yaWVzLmZpbHRlcih4ID0+IHgucGFyZW50Q29kZSA9PT0gQ29zdFBhcmFtZXRlckNhdGVnb3J5UGFyZW50Q29kZS5Db2RlMSksXHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMucmVnaW9uTmFtZXMgPSB0aGlzLnRvTmFtZU1hcChcclxuICAgICAgICBjYXRlZ29yaWVzLmZpbHRlcih4ID0+IHgucGFyZW50Q29kZSA9PT0gQ29zdFBhcmFtZXRlckNhdGVnb3J5UGFyZW50Q29kZS5Db2RlNCksXHJcbiAgICAgICk7XHJcblxyXG4gICAgICB0aGlzLmNvc3RJdGVtc0J5Q29kZSA9IG5ldyBNYXA8c3RyaW5nLCBDb3N0SXRlbUR0bz4oKTtcclxuICAgICAgZm9yIChjb25zdCBjaSBvZiBjb3N0SXRlbXMgPz8gW10pIHtcclxuICAgICAgICBpZiAoY2kuY29kZSkgdGhpcy5jb3N0SXRlbXNCeUNvZGUuc2V0KGNpLmNvZGUsIGNpKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5ncm91cHMgPSAoZ3JvdXBzID8/IFtdKS5zbGljZSgpLnNvcnQoKGEsIGIpID0+IGEuZGlzcGxheU9yZGVyIC0gYi5kaXNwbGF5T3JkZXIpO1xyXG5cclxuICAgICAgY29uc3QgW3VzZCwgZXVyXSA9IHJlc29sdmVTeXN0ZW1SYXRlcyhyYXRlKTtcclxuICAgICAgdGhpcy5zeXN0ZW1SYXRlVXNkID0gdXNkO1xyXG4gICAgICB0aGlzLnN5c3RlbVJhdGVFdXIgPSBldXI7XHJcbiAgICAgIHRoaXMucmF0ZVVzZCA9IHVzZDtcclxuICAgICAgdGhpcy5yYXRlRXVyID0gZXVyO1xyXG5cclxuICAgICAgdGhpcy5jYWxjdWxhdGUoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcGFyYW1ldGVyTGFiZWwocDogQ29zdFBhcmFtZXRlckR0byk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBwcm9kdWN0R3JvdXAgPSB0aGlzLnByb2R1Y3RHcm91cE5hbWVzLmdldChwLnByb2R1Y3RHcm91cCA/PyAnJykgPz8gcC5wcm9kdWN0R3JvdXA7XHJcbiAgICBjb25zdCByZWdpb24gPSB0aGlzLnJlZ2lvbk5hbWVzLmdldChwLnJlZ2lvbiA/PyAnJykgPz8gcC5yZWdpb247XHJcbiAgICByZXR1cm4gW3Byb2R1Y3RHcm91cCwgcmVnaW9uXS5maWx0ZXIoQm9vbGVhbikuam9pbignIOKAlCAnKSB8fCAocC5jb2RlID8/ICcnKTtcclxuICB9XHJcblxyXG4gIG9uSXRlbUNoYW5nZSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGl0ZW0gPSB0aGlzLnByb2R1Y3RJdGVtcy5maW5kKHggPT4geC5jb2RlID09PSB0aGlzLnNlbGVjdGVkSXRlbUNvZGUpO1xyXG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1OYW1lID0gaXRlbT8ubmFtZSA/PyBudWxsO1xyXG4gIH1cclxuXHJcbiAgcmVhZG9ubHkgaXRlbURpc3BsYXlFeHByID0gKGl0ZW06IEl0ZW1EdG8pOiBzdHJpbmcgPT5cclxuICAgIGl0ZW0gPyBbaXRlbS5jb2RlLCBpdGVtLm5hbWVdLmZpbHRlcihCb29sZWFuKS5qb2luKCcg4oCUICcpIDogJyc7XHJcblxyXG4gIHJlYWRvbmx5IHBhcmFtZXRlckRpc3BsYXlFeHByID0gKHA6IENvc3RQYXJhbWV0ZXJEdG8pOiBzdHJpbmcgPT5cclxuICAgIHAgPyB0aGlzLnBhcmFtZXRlckxhYmVsKHApIDogJyc7XHJcblxyXG4gIHByaXZhdGUgdG9OYW1lTWFwKG9wdGlvbnM6IENvc3RQYXJhbWV0ZXJDYXRlZ29yeUR0b1tdIHwgdW5kZWZpbmVkKTogTWFwPHN0cmluZywgc3RyaW5nPiB7XHJcbiAgICBjb25zdCBtYXAgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPigpO1xyXG4gICAgZm9yIChjb25zdCBvcHRpb24gb2Ygb3B0aW9ucyA/PyBbXSkge1xyXG4gICAgICBpZiAob3B0aW9uLmNvZGUpIG1hcC5zZXQob3B0aW9uLmNvZGUsIG9wdGlvbi5uYW1lID8/IG9wdGlvbi5jb2RlKTtcclxuICAgIH1cclxuICAgIHJldHVybiBtYXA7XHJcbiAgfVxyXG5cclxuICBvblBhcmFtZXRlckNoYW5nZSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IHBhcmFtZXRlciA9IHRoaXMucGFyYW1ldGVycy5maW5kKHAgPT4gcC5jb2RlID09PSB0aGlzLnNlbGVjdGVkUGFyYW1ldGVyQ29kZSk7XHJcbiAgICB0aGlzLnN0YWdlcyA9IHBhcmFtZXRlciA/IHRoaXMuYnVpbGRTdGFnZXMocGFyYW1ldGVyKSA6IFtdO1xyXG4gICAgdGhpcy5jYWxjdWxhdGUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYnVpbGRWYWx1ZXNCeUNvZGUoXHJcbiAgICBwYXJhbWV0ZXI6IENvc3RQYXJhbWV0ZXJEdG8sXHJcbiAgKTogTWFwPHN0cmluZywgeyB2YWx1ZTogbnVtYmVyOyBjdXJyZW5jeT86IEN1cnJlbmN5IH0+IHtcclxuICAgIGNvbnN0IG1hcCA9IG5ldyBNYXA8c3RyaW5nLCB7IHZhbHVlOiBudW1iZXI7IGN1cnJlbmN5PzogQ3VycmVuY3kgfT4oKTtcclxuICAgIGZvciAoY29uc3QgaXRlbSBvZiBwYXJhbWV0ZXIuaXRlbXMgPz8gW10pIHtcclxuICAgICAgaWYgKGl0ZW0uY29zdEl0ZW1Db2RlKSB7XHJcbiAgICAgICAgbWFwLnNldChpdGVtLmNvc3RJdGVtQ29kZSwgeyB2YWx1ZTogcGFyc2VEZWNpbWFsKGl0ZW0udmFsdWUpLCBjdXJyZW5jeTogaXRlbS5jdXJyZW5jeSB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG1hcDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYnVpbGRTdGFnZXMocGFyYW1ldGVyOiBDb3N0UGFyYW1ldGVyRHRvKTogQ29zdENhbGN1bGF0aW9uU3RhZ2VbXSB7XHJcbiAgICBjb25zdCB2YWx1ZXNCeUNvZGUgPSB0aGlzLmJ1aWxkVmFsdWVzQnlDb2RlKHBhcmFtZXRlcik7XHJcbiAgICByZXR1cm4gdGhpcy5ncm91cHMubWFwKGdyb3VwID0+IHtcclxuICAgICAgY29uc3QgaXRlbXM6IENvc3RDYWxjdWxhdGlvbkl0ZW1bXSA9IFtdO1xyXG4gICAgICBmb3IgKGNvbnN0IGNvZGUgb2YgZ3JvdXAuaXRlbUNvZGVzID8/IFtdKSB7XHJcbiAgICAgICAgY29uc3QgY29zdEl0ZW0gPSB0aGlzLmNvc3RJdGVtc0J5Q29kZS5nZXQoY29kZSk7XHJcbiAgICAgICAgaWYgKCFjb3N0SXRlbSkgY29udGludWU7XHJcbiAgICAgICAgY29uc3Qgc3RvcmVkID0gdmFsdWVzQnlDb2RlLmdldChjb2RlKTtcclxuICAgICAgICBjb25zdCBpc1JhdGUgPSBpc1JhdGVDb3N0SXRlbShjb3N0SXRlbSk7XHJcbiAgICAgICAgaXRlbXMucHVzaCh7XHJcbiAgICAgICAgICBjb3N0SXRlbUNvZGU6IGNvZGUsXHJcbiAgICAgICAgICBjb3N0SXRlbU5hbWU6IGNvc3RJdGVtLm5hbWUgPz8gY29kZSxcclxuICAgICAgICAgIGNhbGN1bGF0aW9uVHlwZTogY29zdEl0ZW0uY2FsY3VsYXRpb25UeXBlLFxyXG4gICAgICAgICAgc3lzdGVtQ29kZTogY29zdEl0ZW0uc3lzdGVtQ29kZSA/PyB1bmRlZmluZWQsXHJcbiAgICAgICAgICBjdXJyZW5jeTogc3RvcmVkPy5jdXJyZW5jeSA/PyAoaXNSYXRlID8gdW5kZWZpbmVkIDogQ3VycmVuY3kuVFJZKSxcclxuICAgICAgICAgIHZhbHVlOiBzdG9yZWQ/LnZhbHVlID8/IDAsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBncm91cENvZGU6IGdyb3VwLmNvZGUgPz8gJycsXHJcbiAgICAgICAgZ3JvdXBOYW1lOiBncm91cC5uYW1lID8/ICcnLFxyXG4gICAgICAgIGRpc3BsYXlPcmRlcjogZ3JvdXAuZGlzcGxheU9yZGVyLFxyXG4gICAgICAgIGdyb3VwUm9sZTogZ3JvdXAuZ3JvdXBSb2xlLFxyXG4gICAgICAgIGl0ZW1zLFxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBjYWxjdWxhdGUoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlc3VsdCA9IGNhbGN1bGF0ZUNvc3Qoe1xyXG4gICAgICByYXdPaWxQcmljZTogcGFyc2VEZWNpbWFsKHRoaXMucmF3T2lsUHJpY2UpLFxyXG4gICAgICByYXdPaWxDdXJyZW5jeTogdGhpcy5yYXdPaWxDdXJyZW5jeSxcclxuICAgICAgcmF0ZVVzZDogcGFyc2VEZWNpbWFsKHRoaXMucmF0ZVVzZCksXHJcbiAgICAgIHJhdGVFdXI6IHBhcnNlRGVjaW1hbCh0aGlzLnJhdGVFdXIpLFxyXG4gICAgICBzdGFnZXM6IHRoaXMuc3RhZ2VzLFxyXG4gICAgfSk7XHJcbiAgICB0aGlzLnJvbGVHcm91cHMgPSBidWlsZFJvbGVHcm91cHModGhpcy5yZXN1bHQucmF3T2lsLCB0aGlzLnJlc3VsdC5zdGFnZXMpO1xyXG4gIH1cclxuXHJcbiAgcHJpbnQoKTogdm9pZCB7XHJcbiAgICB3aW5kb3cucHJpbnQoKTtcclxuICB9XHJcbn1cclxuIiwiPGFicC1wYWdlIFt0aXRsZV09XCInS2VvcHM6OkNvc3RDYWxjdWxhdGlvbnM6VGl0bGUnIHwgYWJwTG9jYWxpemF0aW9uXCI+XHJcbiAgPGFicC1wYWdlLXRvb2xiYXItY29udGFpbmVyIGNsYXNzPVwiY29sXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93IGp1c3RpZnktY29udGVudC1lbmQgbXgtMFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLWF1dG8gcHgtMSBwdC0wIHB0LW1kLTJcIj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lLXByaW1hcnlcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInByaW50KClcIiBbZGlzYWJsZWRdPVwiIXJlc3VsdFwiPlxyXG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1wcmludCBtZS0xXCI+PC9pPlxyXG4gICAgICAgICAgPHNwYW4+e3sgJ0tlb3BzOjpDb3N0Q2FsY3VsYXRpb25zOlByaW50JyB8IGFicExvY2FsaXphdGlvbiB9fTwvc3Bhbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2FicC1wYWdlLXRvb2xiYXItY29udGFpbmVyPlxyXG5cclxuICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTQgbWItM1wiPlxyXG4gICAgICA8bGliLWNvc3QtY2FsY3VsYXRpb24taW5wdXRzXHJcbiAgICAgICAgW2l0ZW1zRGF0YVNvdXJjZV09XCJpdGVtc0RhdGFTb3VyY2VcIlxyXG4gICAgICAgIFtpdGVtRGlzcGxheUV4cHJdPVwiaXRlbURpc3BsYXlFeHByXCJcclxuICAgICAgICBbcGFyYW1ldGVyc109XCJwYXJhbWV0ZXJzXCJcclxuICAgICAgICBbcGFyYW1ldGVyRGlzcGxheUV4cHJdPVwicGFyYW1ldGVyRGlzcGxheUV4cHJcIlxyXG4gICAgICAgIFtzdGFnZXNdPVwic3RhZ2VzXCJcclxuICAgICAgICBbKHNlbGVjdGVkSXRlbUNvZGUpXT1cInNlbGVjdGVkSXRlbUNvZGVcIlxyXG4gICAgICAgIFsoc2VsZWN0ZWRQYXJhbWV0ZXJDb2RlKV09XCJzZWxlY3RlZFBhcmFtZXRlckNvZGVcIlxyXG4gICAgICAgIFsocmF3T2lsUHJpY2UpXT1cInJhd09pbFByaWNlXCJcclxuICAgICAgICBbKHJhd09pbEN1cnJlbmN5KV09XCJyYXdPaWxDdXJyZW5jeVwiXHJcbiAgICAgICAgW3N5c3RlbVJhdGVVc2RdPVwic3lzdGVtUmF0ZVVzZFwiXHJcbiAgICAgICAgW3N5c3RlbVJhdGVFdXJdPVwic3lzdGVtUmF0ZUV1clwiXHJcbiAgICAgICAgWyhyYXRlVXNkKV09XCJyYXRlVXNkXCJcclxuICAgICAgICBbKHJhdGVFdXIpXT1cInJhdGVFdXJcIlxyXG4gICAgICAgIChpdGVtQ2hhbmdlKT1cIm9uSXRlbUNoYW5nZSgpXCJcclxuICAgICAgICAocGFyYW1ldGVyQ2hhbmdlKT1cIm9uUGFyYW1ldGVyQ2hhbmdlKClcIlxyXG4gICAgICAgIChyZWNhbGMpPVwiY2FsY3VsYXRlKClcIlxyXG4gICAgICA+PC9saWItY29zdC1jYWxjdWxhdGlvbi1pbnB1dHM+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTggbWItM1wiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1wcmludC1ub25lXCI+XHJcbiAgICAgICAgPGxpYi1jb3N0LWNhbGN1bGF0aW9uLXJlc3VsdC1zdW0gW3JvbGVHcm91cHNdPVwicm9sZUdyb3Vwc1wiPjwvbGliLWNvc3QtY2FsY3VsYXRpb24tcmVzdWx0LXN1bT5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgaWQ9XCJjb3N0LWNhbGN1bGF0aW9uLXJlc3VsdHNcIj5cclxuICAgICAgICA8bGliLWNvc3QtY2FsY3VsYXRpb24tcmVzdWx0cyBbcmVzdWx0XT1cInJlc3VsdFwiIFtyb2xlR3JvdXBzXT1cInJvbGVHcm91cHNcIiBbaXRlbU5hbWVdPVwic2VsZWN0ZWRJdGVtTmFtZVwiIFtyYXRlVXNkXT1cInJhdGVVc2RcIiBbcmF0ZUV1cl09XCJyYXRlRXVyXCI+PC9saWItY29zdC1jYWxjdWxhdGlvbi1yZXN1bHRzPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2FicC1wYWdlPlxyXG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29zdC1jYWxjdWxhdGlvbi5tb2RlbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWRvb2dsdS1rZW9wcy9zcmMvbGliL2ZlYXR1cmVzL2Nvc3QtY2FsY3VsYXRpb24vY29zdC1jYWxjdWxhdGlvbi5tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvc3RJdGVtQ2FsY3VsYXRpb25UeXBlIH0gZnJvbSAnQHByb3h5L2Nvc3QtaXRlbXMvY29zdC1pdGVtLWNhbGN1bGF0aW9uLXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IEN1cnJlbmN5IH0gZnJvbSAnQHByb3h5L2N1cnJlbmNpZXMvY3VycmVuY3kuZW51bSc7XHJcbmltcG9ydCB7IENvc3RHcm91cFJvbGUgfSBmcm9tICdAcHJveHkvY29zdC1ncm91cHMvY29zdC1ncm91cC1yb2xlLmVudW0nO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb3N0Q2FsY3VsYXRpb25JdGVtIHtcclxuICBjb3N0SXRlbUNvZGU6IHN0cmluZztcclxuICBjb3N0SXRlbU5hbWU6IHN0cmluZztcclxuICBjYWxjdWxhdGlvblR5cGU6IENvc3RJdGVtQ2FsY3VsYXRpb25UeXBlO1xyXG4gIHN5c3RlbUNvZGU/OiBudW1iZXI7XHJcbiAgY3VycmVuY3k/OiBDdXJyZW5jeTtcclxuICB2YWx1ZTogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvc3RDYWxjdWxhdGlvblN0YWdlIHtcclxuICBncm91cENvZGU6IHN0cmluZztcclxuICBncm91cE5hbWU6IHN0cmluZztcclxuICBkaXNwbGF5T3JkZXI6IG51bWJlcjtcclxuICBncm91cFJvbGU6IENvc3RHcm91cFJvbGU7XHJcbiAgaXRlbXM6IENvc3RDYWxjdWxhdGlvbkl0ZW1bXTtcclxufVxyXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29zdC1jYWxjdWxhdGlvbi5tb2RlbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWRvb2dsdS1rZW9wcy9zcmMvbGliL2ZlYXR1cmVzL2Nvc3QtY2FsY3VsYXRpb24vY29zdC1jYWxjdWxhdGlvbi5tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvc3RJdGVtQ2FsY3VsYXRpb25UeXBlLCBDdXJyZW5jeSwgQ29zdEdyb3VwUm9sZSB9IGZyb20gJ0BoaXRzb2Z0L2thZG9vZ2x1LWtlb3BzL3Byb3h5JztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29zdENhbGN1bGF0aW9uSXRlbSB7XHJcbiAgY29zdEl0ZW1Db2RlOiBzdHJpbmc7XHJcbiAgY29zdEl0ZW1OYW1lOiBzdHJpbmc7XHJcbiAgY2FsY3VsYXRpb25UeXBlOiBDb3N0SXRlbUNhbGN1bGF0aW9uVHlwZTtcclxuICBzeXN0ZW1Db2RlPzogbnVtYmVyO1xyXG4gIGN1cnJlbmN5PzogQ3VycmVuY3k7XHJcbiAgdmFsdWU6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb3N0Q2FsY3VsYXRpb25TdGFnZSB7XHJcbiAgZ3JvdXBDb2RlOiBzdHJpbmc7XHJcbiAgZ3JvdXBOYW1lOiBzdHJpbmc7XHJcbiAgZGlzcGxheU9yZGVyOiBudW1iZXI7XHJcbiAgZ3JvdXBSb2xlOiBDb3N0R3JvdXBSb2xlO1xyXG4gIGl0ZW1zOiBDb3N0Q2FsY3VsYXRpb25JdGVtW107XHJcbn1cclxuIl19
@@ -1,4 +1,4 @@
1
- import { Currency } from '@proxy/currencies/currency.enum';
1
+ import { Currency } from '@hitsoft/kadooglu-keops/proxy';
2
2
  export function toAmount(baseUsd, rateUsd, rateEur) {
3
3
  return {
4
4
  usd: baseUsd,
@@ -18,4 +18,4 @@ export function toBaseUsd(value, currency, rateUsd, rateEur) {
18
18
  return value;
19
19
  }
20
20
  }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3kudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWRvb2dsdS1rZW9wcy9zcmMvbGliL2ZlYXR1cmVzL2Nvc3QtY2FsY3VsYXRpb24vZW5naW5lL2N1cnJlbmN5LnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUczRCxNQUFNLFVBQVUsUUFBUSxDQUFDLE9BQWUsRUFBRSxPQUFlLEVBQUUsT0FBZTtJQUN4RSxPQUFPO1FBQ0wsR0FBRyxFQUFFLE9BQU87UUFDWixHQUFHLEVBQUUsT0FBTyxHQUFHLE9BQU87UUFDdEIsR0FBRyxFQUFFLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNyRCxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxTQUFTLENBQ3ZCLEtBQWEsRUFDYixRQUE4QixFQUM5QixPQUFlLEVBQ2YsT0FBZTtJQUVmLFFBQVEsUUFBUSxFQUFFO1FBQ2hCLEtBQUssUUFBUSxDQUFDLEdBQUc7WUFDZixPQUFPLEtBQUssQ0FBQztRQUNmLEtBQUssUUFBUSxDQUFDLEdBQUc7WUFDZixPQUFPLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQztRQUM1QyxLQUFLLFFBQVEsQ0FBQyxHQUFHO1lBQ2YsT0FBTyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxHQUFHLE9BQU8sQ0FBQztRQUN4RDtZQUNFLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1cnJlbmN5IH0gZnJvbSAnQHByb3h5L2N1cnJlbmNpZXMvY3VycmVuY3kuZW51bSc7XHJcbmltcG9ydCB7IENvc3RBbW91bnQgfSBmcm9tICcuL21vZGVscyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdG9BbW91bnQoYmFzZVVzZDogbnVtYmVyLCByYXRlVXNkOiBudW1iZXIsIHJhdGVFdXI6IG51bWJlcik6IENvc3RBbW91bnQge1xyXG4gIHJldHVybiB7XHJcbiAgICB1c2Q6IGJhc2VVc2QsXHJcbiAgICB0cnk6IGJhc2VVc2QgKiByYXRlVXNkLFxyXG4gICAgZXVyOiByYXRlRXVyID4gMCA/IChiYXNlVXNkICogcmF0ZVVzZCkgLyByYXRlRXVyIDogMCxcclxuICB9O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdG9CYXNlVXNkKFxyXG4gIHZhbHVlOiBudW1iZXIsXHJcbiAgY3VycmVuY3k6IEN1cnJlbmN5IHwgdW5kZWZpbmVkLFxyXG4gIHJhdGVVc2Q6IG51bWJlcixcclxuICByYXRlRXVyOiBudW1iZXIsXHJcbik6IG51bWJlciB7XHJcbiAgc3dpdGNoIChjdXJyZW5jeSkge1xyXG4gICAgY2FzZSBDdXJyZW5jeS5VU0Q6XHJcbiAgICAgIHJldHVybiB2YWx1ZTtcclxuICAgIGNhc2UgQ3VycmVuY3kuVFJZOlxyXG4gICAgICByZXR1cm4gcmF0ZVVzZCA8PSAwID8gMCA6IHZhbHVlIC8gcmF0ZVVzZDtcclxuICAgIGNhc2UgQ3VycmVuY3kuRVVSOlxyXG4gICAgICByZXR1cm4gcmF0ZVVzZCA8PSAwID8gMCA6ICh2YWx1ZSAqIHJhdGVFdXIpIC8gcmF0ZVVzZDtcclxuICAgIGRlZmF1bHQ6XHJcbiAgICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcbn1cclxuIl19
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3kudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWRvb2dsdS1rZW9wcy9zcmMvbGliL2ZlYXR1cmVzL2Nvc3QtY2FsY3VsYXRpb24vZW5naW5lL2N1cnJlbmN5LnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUd6RCxNQUFNLFVBQVUsUUFBUSxDQUFDLE9BQWUsRUFBRSxPQUFlLEVBQUUsT0FBZTtJQUN4RSxPQUFPO1FBQ0wsR0FBRyxFQUFFLE9BQU87UUFDWixHQUFHLEVBQUUsT0FBTyxHQUFHLE9BQU87UUFDdEIsR0FBRyxFQUFFLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNyRCxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxTQUFTLENBQ3ZCLEtBQWEsRUFDYixRQUE4QixFQUM5QixPQUFlLEVBQ2YsT0FBZTtJQUVmLFFBQVEsUUFBUSxFQUFFO1FBQ2hCLEtBQUssUUFBUSxDQUFDLEdBQUc7WUFDZixPQUFPLEtBQUssQ0FBQztRQUNmLEtBQUssUUFBUSxDQUFDLEdBQUc7WUFDZixPQUFPLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQztRQUM1QyxLQUFLLFFBQVEsQ0FBQyxHQUFHO1lBQ2YsT0FBTyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxHQUFHLE9BQU8sQ0FBQztRQUN4RDtZQUNFLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1cnJlbmN5IH0gZnJvbSAnQGhpdHNvZnQva2Fkb29nbHUta2VvcHMvcHJveHknO1xyXG5pbXBvcnQgeyBDb3N0QW1vdW50IH0gZnJvbSAnLi9tb2RlbHMnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRvQW1vdW50KGJhc2VVc2Q6IG51bWJlciwgcmF0ZVVzZDogbnVtYmVyLCByYXRlRXVyOiBudW1iZXIpOiBDb3N0QW1vdW50IHtcclxuICByZXR1cm4ge1xyXG4gICAgdXNkOiBiYXNlVXNkLFxyXG4gICAgdHJ5OiBiYXNlVXNkICogcmF0ZVVzZCxcclxuICAgIGV1cjogcmF0ZUV1ciA+IDAgPyAoYmFzZVVzZCAqIHJhdGVVc2QpIC8gcmF0ZUV1ciA6IDAsXHJcbiAgfTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRvQmFzZVVzZChcclxuICB2YWx1ZTogbnVtYmVyLFxyXG4gIGN1cnJlbmN5OiBDdXJyZW5jeSB8IHVuZGVmaW5lZCxcclxuICByYXRlVXNkOiBudW1iZXIsXHJcbiAgcmF0ZUV1cjogbnVtYmVyLFxyXG4pOiBudW1iZXIge1xyXG4gIHN3aXRjaCAoY3VycmVuY3kpIHtcclxuICAgIGNhc2UgQ3VycmVuY3kuVVNEOlxyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICBjYXNlIEN1cnJlbmN5LlRSWTpcclxuICAgICAgcmV0dXJuIHJhdGVVc2QgPD0gMCA/IDAgOiB2YWx1ZSAvIHJhdGVVc2Q7XHJcbiAgICBjYXNlIEN1cnJlbmN5LkVVUjpcclxuICAgICAgcmV0dXJuIHJhdGVVc2QgPD0gMCA/IDAgOiAodmFsdWUgKiByYXRlRXVyKSAvIHJhdGVVc2Q7XHJcbiAgICBkZWZhdWx0OlxyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,4 +1,4 @@
1
- import { CostItemSystemCode } from '@proxy/cost-items/cost-item-system-code.enum';
1
+ import { CostItemSystemCode } from '@hitsoft/kadooglu-keops/proxy';
2
2
  import { parseDecimal } from '../../../utils/number.utils';
3
3
  import { toBaseUsd } from './currency.utils';
4
4
  export function indexItemsBySystemCode(stages) {
@@ -35,4 +35,4 @@ export function resolveItems(itemsByCode, rateUsd, rateEur) {
35
35
  profitRate: ratePercent(CostItemSystemCode.ProfitRate),
36
36
  };
37
37
  }
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS1yZXNvbHZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2thZG9vZ2x1LWtlb3BzL3NyYy9saWIvZmVhdHVyZXMvY29zdC1jYWxjdWxhdGlvbi9lbmdpbmUvaXRlbS1yZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRzdDLE1BQU0sVUFBVSxzQkFBc0IsQ0FDcEMsTUFBOEI7SUFFOUIsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLEVBQStCLENBQUM7SUFDbkQsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLEVBQUU7UUFDMUIsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFO1lBQzlCLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLEVBQUU7Z0JBQzNCLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQzthQUNoQztTQUNGO0tBQ0Y7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUMxQixXQUE2QyxFQUM3QyxPQUFlLEVBQ2YsT0FBZTtJQUVmLE1BQU0sT0FBTyxHQUFHLENBQUMsSUFBd0IsRUFBVSxFQUFFO1FBQ25ELE1BQU0sSUFBSSxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQyxDQUFDO0lBQ0YsTUFBTSxXQUFXLEdBQUcsQ0FBQyxJQUF3QixFQUFVLEVBQUUsQ0FDdkQsWUFBWSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBRWxELE9BQU87UUFDTCxJQUFJLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQztRQUN0QyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUM7UUFDaEUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUM7UUFDNUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7UUFDOUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDO1FBQzlELG9CQUFvQixFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQztRQUN0RSx3QkFBd0IsRUFBRSxPQUFPLENBQUMsa0JBQWtCLENBQUMsd0JBQXdCLENBQUM7UUFDOUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUM7UUFDaEQsY0FBYyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUM7UUFDMUQsWUFBWSxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUM7UUFDdEQsT0FBTyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUM7UUFDNUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUM7UUFDcEQsb0JBQW9CLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDO1FBQ3RFLFVBQVUsRUFBRSxXQUFXLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDO0tBQ3ZELENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29zdEl0ZW1TeXN0ZW1Db2RlIH0gZnJvbSAnQHByb3h5L2Nvc3QtaXRlbXMvY29zdC1pdGVtLXN5c3RlbS1jb2RlLmVudW0nO1xyXG5pbXBvcnQgeyBwYXJzZURlY2ltYWwgfSBmcm9tICcuLi8uLi8uLi91dGlscy9udW1iZXIudXRpbHMnO1xyXG5pbXBvcnQgeyBDb3N0Q2FsY3VsYXRpb25JdGVtLCBDb3N0Q2FsY3VsYXRpb25TdGFnZSB9IGZyb20gJy4uL2Nvc3QtY2FsY3VsYXRpb24ubW9kZWxzJztcclxuaW1wb3J0IHsgdG9CYXNlVXNkIH0gZnJvbSAnLi9jdXJyZW5jeS51dGlscyc7XHJcbmltcG9ydCB7IFJlc29sdmVkSXRlbXMgfSBmcm9tICcuL21vZGVscyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaW5kZXhJdGVtc0J5U3lzdGVtQ29kZShcclxuICBzdGFnZXM6IENvc3RDYWxjdWxhdGlvblN0YWdlW10sXHJcbik6IE1hcDxudW1iZXIsIENvc3RDYWxjdWxhdGlvbkl0ZW0+IHtcclxuICBjb25zdCBtYXAgPSBuZXcgTWFwPG51bWJlciwgQ29zdENhbGN1bGF0aW9uSXRlbT4oKTtcclxuICBmb3IgKGNvbnN0IHN0YWdlIG9mIHN0YWdlcykge1xyXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIHN0YWdlLml0ZW1zKSB7XHJcbiAgICAgIGlmIChpdGVtLnN5c3RlbUNvZGUgIT0gbnVsbCkge1xyXG4gICAgICAgIG1hcC5zZXQoaXRlbS5zeXN0ZW1Db2RlLCBpdGVtKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gbWFwO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZUl0ZW1zKFxyXG4gIGl0ZW1zQnlDb2RlOiBNYXA8bnVtYmVyLCBDb3N0Q2FsY3VsYXRpb25JdGVtPixcclxuICByYXRlVXNkOiBudW1iZXIsXHJcbiAgcmF0ZUV1cjogbnVtYmVyLFxyXG4pOiBSZXNvbHZlZEl0ZW1zIHtcclxuICBjb25zdCBiYXNlVXNkID0gKGNvZGU6IENvc3RJdGVtU3lzdGVtQ29kZSk6IG51bWJlciA9PiB7XHJcbiAgICBjb25zdCBpdGVtID0gaXRlbXNCeUNvZGUuZ2V0KGNvZGUpO1xyXG4gICAgcmV0dXJuIGl0ZW0gPyB0b0Jhc2VVc2QocGFyc2VEZWNpbWFsKGl0ZW0udmFsdWUpLCBpdGVtLmN1cnJlbmN5LCByYXRlVXNkLCByYXRlRXVyKSA6IDA7XHJcbiAgfTtcclxuICBjb25zdCByYXRlUGVyY2VudCA9IChjb2RlOiBDb3N0SXRlbVN5c3RlbUNvZGUpOiBudW1iZXIgPT5cclxuICAgIHBhcnNlRGVjaW1hbChpdGVtc0J5Q29kZS5nZXQoY29kZSk/LnZhbHVlID8/IDApO1xyXG5cclxuICByZXR1cm4ge1xyXG4gICAgcG9ydDogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuUG9ydCksXHJcbiAgICBpbnNwZWN0aW9uQ3VzdG9tczogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuSW5zcGVjdGlvbkN1c3RvbXMpLFxyXG4gICAgZnJlaWdodDogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuRnJlaWdodCksXHJcbiAgICBsb3NzUmF0ZTogcmF0ZVBlcmNlbnQoQ29zdEl0ZW1TeXN0ZW1Db2RlLkxvc3MpLFxyXG4gICAgcmVmaW5lcnlPdmVyaGVhZDogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuUmVmaW5lcnlPdmVyaGVhZCksXHJcbiAgICByZWZpbmVyeUF1eE1hdGVyaWFsczogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuUmVmaW5lcnlBdXhNYXRlcmlhbHMpLFxyXG4gICAgZmlsbGluZ1BhY2thZ2luZ092ZXJoZWFkOiBiYXNlVXNkKENvc3RJdGVtU3lzdGVtQ29kZS5GaWxsaW5nUGFja2FnaW5nT3ZlcmhlYWQpLFxyXG4gICAgcGFja2FnaW5nOiBiYXNlVXNkKENvc3RJdGVtU3lzdGVtQ29kZS5QYWNrYWdpbmcpLFxyXG4gICAgc2FsZXNNYXJrZXRpbmc6IGJhc2VVc2QoQ29zdEl0ZW1TeXN0ZW1Db2RlLlNhbGVzTWFya2V0aW5nKSxcclxuICAgIGdlbmVyYWxBZG1pbjogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuR2VuZXJhbEFkbWluKSxcclxuICAgIGZpbmFuY2U6IGJhc2VVc2QoQ29zdEl0ZW1TeXN0ZW1Db2RlLkZpbmFuY2UpLFxyXG4gICAgY29udGluZ2VuY3k6IGJhc2VVc2QoQ29zdEl0ZW1TeXN0ZW1Db2RlLkNvbnRpbmdlbmN5KSxcclxuICAgIHZhcmlhYmxlRGVwcmVjaWF0aW9uOiBiYXNlVXNkKENvc3RJdGVtU3lzdGVtQ29kZS5WYXJpYWJsZURlcHJlY2lhdGlvbiksXHJcbiAgICBwcm9maXRSYXRlOiByYXRlUGVyY2VudChDb3N0SXRlbVN5c3RlbUNvZGUuUHJvZml0UmF0ZSksXHJcbiAgfTtcclxufVxyXG4iXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS1yZXNvbHZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2thZG9vZ2x1LWtlb3BzL3NyYy9saWIvZmVhdHVyZXMvY29zdC1jYWxjdWxhdGlvbi9lbmdpbmUvaXRlbS1yZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRzdDLE1BQU0sVUFBVSxzQkFBc0IsQ0FDcEMsTUFBOEI7SUFFOUIsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLEVBQStCLENBQUM7SUFDbkQsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLEVBQUU7UUFDMUIsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFO1lBQzlCLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLEVBQUU7Z0JBQzNCLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQzthQUNoQztTQUNGO0tBQ0Y7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUMxQixXQUE2QyxFQUM3QyxPQUFlLEVBQ2YsT0FBZTtJQUVmLE1BQU0sT0FBTyxHQUFHLENBQUMsSUFBd0IsRUFBVSxFQUFFO1FBQ25ELE1BQU0sSUFBSSxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQyxDQUFDO0lBQ0YsTUFBTSxXQUFXLEdBQUcsQ0FBQyxJQUF3QixFQUFVLEVBQUUsQ0FDdkQsWUFBWSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBRWxELE9BQU87UUFDTCxJQUFJLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQztRQUN0QyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUM7UUFDaEUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUM7UUFDNUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7UUFDOUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDO1FBQzlELG9CQUFvQixFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQztRQUN0RSx3QkFBd0IsRUFBRSxPQUFPLENBQUMsa0JBQWtCLENBQUMsd0JBQXdCLENBQUM7UUFDOUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUM7UUFDaEQsY0FBYyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUM7UUFDMUQsWUFBWSxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUM7UUFDdEQsT0FBTyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUM7UUFDNUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUM7UUFDcEQsb0JBQW9CLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDO1FBQ3RFLFVBQVUsRUFBRSxXQUFXLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDO0tBQ3ZELENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29zdEl0ZW1TeXN0ZW1Db2RlIH0gZnJvbSAnQGhpdHNvZnQva2Fkb29nbHUta2VvcHMvcHJveHknO1xyXG5pbXBvcnQgeyBwYXJzZURlY2ltYWwgfSBmcm9tICcuLi8uLi8uLi91dGlscy9udW1iZXIudXRpbHMnO1xyXG5pbXBvcnQgeyBDb3N0Q2FsY3VsYXRpb25JdGVtLCBDb3N0Q2FsY3VsYXRpb25TdGFnZSB9IGZyb20gJy4uL2Nvc3QtY2FsY3VsYXRpb24ubW9kZWxzJztcclxuaW1wb3J0IHsgdG9CYXNlVXNkIH0gZnJvbSAnLi9jdXJyZW5jeS51dGlscyc7XHJcbmltcG9ydCB7IFJlc29sdmVkSXRlbXMgfSBmcm9tICcuL21vZGVscyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaW5kZXhJdGVtc0J5U3lzdGVtQ29kZShcclxuICBzdGFnZXM6IENvc3RDYWxjdWxhdGlvblN0YWdlW10sXHJcbik6IE1hcDxudW1iZXIsIENvc3RDYWxjdWxhdGlvbkl0ZW0+IHtcclxuICBjb25zdCBtYXAgPSBuZXcgTWFwPG51bWJlciwgQ29zdENhbGN1bGF0aW9uSXRlbT4oKTtcclxuICBmb3IgKGNvbnN0IHN0YWdlIG9mIHN0YWdlcykge1xyXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIHN0YWdlLml0ZW1zKSB7XHJcbiAgICAgIGlmIChpdGVtLnN5c3RlbUNvZGUgIT0gbnVsbCkge1xyXG4gICAgICAgIG1hcC5zZXQoaXRlbS5zeXN0ZW1Db2RlLCBpdGVtKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gbWFwO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZUl0ZW1zKFxyXG4gIGl0ZW1zQnlDb2RlOiBNYXA8bnVtYmVyLCBDb3N0Q2FsY3VsYXRpb25JdGVtPixcclxuICByYXRlVXNkOiBudW1iZXIsXHJcbiAgcmF0ZUV1cjogbnVtYmVyLFxyXG4pOiBSZXNvbHZlZEl0ZW1zIHtcclxuICBjb25zdCBiYXNlVXNkID0gKGNvZGU6IENvc3RJdGVtU3lzdGVtQ29kZSk6IG51bWJlciA9PiB7XHJcbiAgICBjb25zdCBpdGVtID0gaXRlbXNCeUNvZGUuZ2V0KGNvZGUpO1xyXG4gICAgcmV0dXJuIGl0ZW0gPyB0b0Jhc2VVc2QocGFyc2VEZWNpbWFsKGl0ZW0udmFsdWUpLCBpdGVtLmN1cnJlbmN5LCByYXRlVXNkLCByYXRlRXVyKSA6IDA7XHJcbiAgfTtcclxuICBjb25zdCByYXRlUGVyY2VudCA9IChjb2RlOiBDb3N0SXRlbVN5c3RlbUNvZGUpOiBudW1iZXIgPT5cclxuICAgIHBhcnNlRGVjaW1hbChpdGVtc0J5Q29kZS5nZXQoY29kZSk/LnZhbHVlID8/IDApO1xyXG5cclxuICByZXR1cm4ge1xyXG4gICAgcG9ydDogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuUG9ydCksXHJcbiAgICBpbnNwZWN0aW9uQ3VzdG9tczogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuSW5zcGVjdGlvbkN1c3RvbXMpLFxyXG4gICAgZnJlaWdodDogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuRnJlaWdodCksXHJcbiAgICBsb3NzUmF0ZTogcmF0ZVBlcmNlbnQoQ29zdEl0ZW1TeXN0ZW1Db2RlLkxvc3MpLFxyXG4gICAgcmVmaW5lcnlPdmVyaGVhZDogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuUmVmaW5lcnlPdmVyaGVhZCksXHJcbiAgICByZWZpbmVyeUF1eE1hdGVyaWFsczogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuUmVmaW5lcnlBdXhNYXRlcmlhbHMpLFxyXG4gICAgZmlsbGluZ1BhY2thZ2luZ092ZXJoZWFkOiBiYXNlVXNkKENvc3RJdGVtU3lzdGVtQ29kZS5GaWxsaW5nUGFja2FnaW5nT3ZlcmhlYWQpLFxyXG4gICAgcGFja2FnaW5nOiBiYXNlVXNkKENvc3RJdGVtU3lzdGVtQ29kZS5QYWNrYWdpbmcpLFxyXG4gICAgc2FsZXNNYXJrZXRpbmc6IGJhc2VVc2QoQ29zdEl0ZW1TeXN0ZW1Db2RlLlNhbGVzTWFya2V0aW5nKSxcclxuICAgIGdlbmVyYWxBZG1pbjogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuR2VuZXJhbEFkbWluKSxcclxuICAgIGZpbmFuY2U6IGJhc2VVc2QoQ29zdEl0ZW1TeXN0ZW1Db2RlLkZpbmFuY2UpLFxyXG4gICAgY29udGluZ2VuY3k6IGJhc2VVc2QoQ29zdEl0ZW1TeXN0ZW1Db2RlLkNvbnRpbmdlbmN5KSxcclxuICAgIHZhcmlhYmxlRGVwcmVjaWF0aW9uOiBiYXNlVXNkKENvc3RJdGVtU3lzdGVtQ29kZS5WYXJpYWJsZURlcHJlY2lhdGlvbiksXHJcbiAgICBwcm9maXRSYXRlOiByYXRlUGVyY2VudChDb3N0SXRlbVN5c3RlbUNvZGUuUHJvZml0UmF0ZSksXHJcbiAgfTtcclxufVxyXG4iXX0=
@@ -1,4 +1,4 @@
1
- import { CostGroupRole } from '@proxy/cost-groups/cost-group-role.enum';
1
+ import { CostGroupRole } from '@hitsoft/kadooglu-keops/proxy';
2
2
  export function addAmounts(...amounts) {
3
3
  return amounts.reduce((acc, a) => ({ try: acc.try + a.try, usd: acc.usd + a.usd, eur: acc.eur + a.eur }), { try: 0, usd: 0, eur: 0 });
4
4
  }
@@ -17,4 +17,4 @@ export function buildRoleGroups(rawOil, stages) {
17
17
  return { role, stages: roleStages, roleTotal };
18
18
  });
19
19
  }
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Fkb29nbHUta2VvcHMvc3JjL2xpYi9mZWF0dXJlcy9jb3N0LWNhbGN1bGF0aW9uL2VuZ2luZS9tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBbUR4RSxNQUFNLFVBQVUsVUFBVSxDQUFDLEdBQUcsT0FBcUI7SUFDakQsT0FBTyxPQUFPLENBQUMsTUFBTSxDQUNuQixDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQ2xGLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FDM0IsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUFDLE1BQWtCLEVBQUUsTUFBbUI7SUFDckUsTUFBTSxLQUFLLEdBQUcsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxTQUFTLEVBQUUsYUFBYSxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUcsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLEVBQThCLENBQUM7SUFDbEQsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLEVBQUU7UUFDMUIsTUFBTSxJQUFJLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzVDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO0tBQ2hDO0lBQ0QsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNwRCxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBRSxDQUFDO1FBQ2xDLE1BQU0sSUFBSSxHQUFHLElBQUksS0FBSyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUNyRixNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsSUFBSSxFQUFFLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ3pFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsQ0FBQztJQUNqRCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3N0SXRlbUNhbGN1bGF0aW9uVHlwZSB9IGZyb20gJ0Bwcm94eS9jb3N0LWl0ZW1zL2Nvc3QtaXRlbS1jYWxjdWxhdGlvbi10eXBlLmVudW0nO1xyXG5pbXBvcnQgeyBDdXJyZW5jeSB9IGZyb20gJ0Bwcm94eS9jdXJyZW5jaWVzL2N1cnJlbmN5LmVudW0nO1xyXG5pbXBvcnQgeyBDb3N0R3JvdXBSb2xlIH0gZnJvbSAnQHByb3h5L2Nvc3QtZ3JvdXBzL2Nvc3QtZ3JvdXAtcm9sZS5lbnVtJztcclxuaW1wb3J0IHsgQ29zdENhbGN1bGF0aW9uU3RhZ2UgfSBmcm9tICcuLi9jb3N0LWNhbGN1bGF0aW9uLm1vZGVscyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvc3RBbW91bnQge1xyXG4gIHRyeTogbnVtYmVyO1xyXG4gIHVzZDogbnVtYmVyO1xyXG4gIGV1cjogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEVuZ2luZVJlcXVlc3Qge1xyXG4gIHJhd09pbFByaWNlOiBudW1iZXI7XHJcbiAgcmF3T2lsQ3VycmVuY3k6IEN1cnJlbmN5O1xyXG4gIHJhdGVVc2Q6IG51bWJlcjtcclxuICByYXRlRXVyOiBudW1iZXI7XHJcbiAgc3RhZ2VzOiBDb3N0Q2FsY3VsYXRpb25TdGFnZVtdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvc3RMaW5lIHtcclxuICBjb3N0SXRlbUNvZGU6IHN0cmluZztcclxuICBjb3N0SXRlbU5hbWU6IHN0cmluZztcclxuICBjYWxjdWxhdGlvblR5cGU6IENvc3RJdGVtQ2FsY3VsYXRpb25UeXBlO1xyXG4gIHN5c3RlbUNvZGU/OiBudW1iZXI7XHJcbiAgY3VycmVuY3k/OiBDdXJyZW5jeTtcclxuICByYXRlUGVyY2VudD86IG51bWJlcjtcclxuICBhbW91bnQ6IENvc3RBbW91bnQ7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29zdFN0YWdlIHtcclxuICBncm91cENvZGU/OiBzdHJpbmc7XHJcbiAgZ3JvdXBOYW1lPzogc3RyaW5nO1xyXG4gIGRpc3BsYXlPcmRlcjogbnVtYmVyO1xyXG4gIGdyb3VwUm9sZTogQ29zdEdyb3VwUm9sZTtcclxuICBsaW5lczogQ29zdExpbmVbXTtcclxuICBzdWJ0b3RhbDogQ29zdEFtb3VudDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb3N0UmVzdWx0IHtcclxuICByYXdPaWw6IENvc3RBbW91bnQ7XHJcbiAgc3RhZ2VzOiBDb3N0U3RhZ2VbXTtcclxuICBwcm9kdWN0aW9uQ29zdDogQ29zdEFtb3VudDtcclxuICB0b3RhbENvc3Q6IENvc3RBbW91bnQ7XHJcbiAgcHJvZml0OiBDb3N0QW1vdW50O1xyXG4gIHRvdGFsU2FsZVByaWNlOiBDb3N0QW1vdW50O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFJvbGVHcm91cCB7XHJcbiAgcm9sZTogQ29zdEdyb3VwUm9sZTtcclxuICBzdGFnZXM6IENvc3RTdGFnZVtdO1xyXG4gIHJvbGVUb3RhbDogQ29zdEFtb3VudDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGFkZEFtb3VudHMoLi4uYW1vdW50czogQ29zdEFtb3VudFtdKTogQ29zdEFtb3VudCB7XHJcbiAgcmV0dXJuIGFtb3VudHMucmVkdWNlKFxyXG4gICAgKGFjYywgYSkgPT4gKHsgdHJ5OiBhY2MudHJ5ICsgYS50cnksIHVzZDogYWNjLnVzZCArIGEudXNkLCBldXI6IGFjYy5ldXIgKyBhLmV1ciB9KSxcclxuICAgIHsgdHJ5OiAwLCB1c2Q6IDAsIGV1cjogMCB9LFxyXG4gICk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBidWlsZFJvbGVHcm91cHMocmF3T2lsOiBDb3N0QW1vdW50LCBzdGFnZXM6IENvc3RTdGFnZVtdKTogUm9sZUdyb3VwW10ge1xyXG4gIGNvbnN0IE9SREVSID0gW0Nvc3RHcm91cFJvbGUuUHJvZHVjdGlvbiwgQ29zdEdyb3VwUm9sZS5PcGVyYXRpbmcsIENvc3RHcm91cFJvbGUuUHJvZml0LCBDb3N0R3JvdXBSb2xlLk5vbmVdO1xyXG4gIGNvbnN0IG1hcCA9IG5ldyBNYXA8Q29zdEdyb3VwUm9sZSwgQ29zdFN0YWdlW10+KCk7XHJcbiAgZm9yIChjb25zdCBzdGFnZSBvZiBzdGFnZXMpIHtcclxuICAgIGNvbnN0IGxpc3QgPSBtYXAuZ2V0KHN0YWdlLmdyb3VwUm9sZSkgPz8gW107XHJcbiAgICBsaXN0LnB1c2goc3RhZ2UpO1xyXG4gICAgbWFwLnNldChzdGFnZS5ncm91cFJvbGUsIGxpc3QpO1xyXG4gIH1cclxuICByZXR1cm4gT1JERVIuZmlsdGVyKHJvbGUgPT4gbWFwLmhhcyhyb2xlKSkubWFwKHJvbGUgPT4ge1xyXG4gICAgY29uc3Qgcm9sZVN0YWdlcyA9IG1hcC5nZXQocm9sZSkhO1xyXG4gICAgY29uc3QgYmFzZSA9IHJvbGUgPT09IENvc3RHcm91cFJvbGUuUHJvZHVjdGlvbiA/IHJhd09pbCA6IHsgdHJ5OiAwLCB1c2Q6IDAsIGV1cjogMCB9O1xyXG4gICAgY29uc3Qgcm9sZVRvdGFsID0gYWRkQW1vdW50cyhiYXNlLCAuLi5yb2xlU3RhZ2VzLm1hcChzdCA9PiBzdC5zdWJ0b3RhbCkpO1xyXG4gICAgcmV0dXJuIHsgcm9sZSwgc3RhZ2VzOiByb2xlU3RhZ2VzLCByb2xlVG90YWwgfTtcclxuICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBSZXNvbHZlZEl0ZW1zIHtcclxuICBwb3J0OiBudW1iZXI7XHJcbiAgaW5zcGVjdGlvbkN1c3RvbXM6IG51bWJlcjtcclxuICBmcmVpZ2h0OiBudW1iZXI7XHJcbiAgbG9zc1JhdGU6IG51bWJlcjtcclxuICByZWZpbmVyeU92ZXJoZWFkOiBudW1iZXI7XHJcbiAgcmVmaW5lcnlBdXhNYXRlcmlhbHM6IG51bWJlcjtcclxuICBmaWxsaW5nUGFja2FnaW5nT3ZlcmhlYWQ6IG51bWJlcjtcclxuICBwYWNrYWdpbmc6IG51bWJlcjtcclxuICBzYWxlc01hcmtldGluZzogbnVtYmVyO1xyXG4gIGdlbmVyYWxBZG1pbjogbnVtYmVyO1xyXG4gIGZpbmFuY2U6IG51bWJlcjtcclxuICBjb250aW5nZW5jeTogbnVtYmVyO1xyXG4gIHZhcmlhYmxlRGVwcmVjaWF0aW9uOiBudW1iZXI7XHJcbiAgcHJvZml0UmF0ZTogbnVtYmVyO1xyXG59XHJcbiJdfQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Fkb29nbHUta2VvcHMvc3JjL2xpYi9mZWF0dXJlcy9jb3N0LWNhbGN1bGF0aW9uL2VuZ2luZS9tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQyxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQW1EakcsTUFBTSxVQUFVLFVBQVUsQ0FBQyxHQUFHLE9BQXFCO0lBQ2pELE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FDbkIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUNsRixFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQzNCLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxNQUFrQixFQUFFLE1BQW1CO0lBQ3JFLE1BQU0sS0FBSyxHQUFHLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxhQUFhLENBQUMsU0FBUyxFQUFFLGFBQWEsQ0FBQyxNQUFNLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVHLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxFQUE4QixDQUFDO0lBQ2xELEtBQUssTUFBTSxLQUFLLElBQUksTUFBTSxFQUFFO1FBQzFCLE1BQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM1QyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pCLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztLQUNoQztJQUNELE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDcEQsTUFBTSxVQUFVLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUUsQ0FBQztRQUNsQyxNQUFNLElBQUksR0FBRyxJQUFJLEtBQUssYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDckYsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLElBQUksRUFBRSxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUN6RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLENBQUM7SUFDakQsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29zdEl0ZW1DYWxjdWxhdGlvblR5cGUsIEN1cnJlbmN5LCBDb3N0R3JvdXBSb2xlIH0gZnJvbSAnQGhpdHNvZnQva2Fkb29nbHUta2VvcHMvcHJveHknO1xyXG5pbXBvcnQgeyBDb3N0Q2FsY3VsYXRpb25TdGFnZSB9IGZyb20gJy4uL2Nvc3QtY2FsY3VsYXRpb24ubW9kZWxzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29zdEFtb3VudCB7XHJcbiAgdHJ5OiBudW1iZXI7XHJcbiAgdXNkOiBudW1iZXI7XHJcbiAgZXVyOiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRW5naW5lUmVxdWVzdCB7XHJcbiAgcmF3T2lsUHJpY2U6IG51bWJlcjtcclxuICByYXdPaWxDdXJyZW5jeTogQ3VycmVuY3k7XHJcbiAgcmF0ZVVzZDogbnVtYmVyO1xyXG4gIHJhdGVFdXI6IG51bWJlcjtcclxuICBzdGFnZXM6IENvc3RDYWxjdWxhdGlvblN0YWdlW107XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29zdExpbmUge1xyXG4gIGNvc3RJdGVtQ29kZTogc3RyaW5nO1xyXG4gIGNvc3RJdGVtTmFtZTogc3RyaW5nO1xyXG4gIGNhbGN1bGF0aW9uVHlwZTogQ29zdEl0ZW1DYWxjdWxhdGlvblR5cGU7XHJcbiAgc3lzdGVtQ29kZT86IG51bWJlcjtcclxuICBjdXJyZW5jeT86IEN1cnJlbmN5O1xyXG4gIHJhdGVQZXJjZW50PzogbnVtYmVyO1xyXG4gIGFtb3VudDogQ29zdEFtb3VudDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb3N0U3RhZ2Uge1xyXG4gIGdyb3VwQ29kZT86IHN0cmluZztcclxuICBncm91cE5hbWU/OiBzdHJpbmc7XHJcbiAgZGlzcGxheU9yZGVyOiBudW1iZXI7XHJcbiAgZ3JvdXBSb2xlOiBDb3N0R3JvdXBSb2xlO1xyXG4gIGxpbmVzOiBDb3N0TGluZVtdO1xyXG4gIHN1YnRvdGFsOiBDb3N0QW1vdW50O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvc3RSZXN1bHQge1xyXG4gIHJhd09pbDogQ29zdEFtb3VudDtcclxuICBzdGFnZXM6IENvc3RTdGFnZVtdO1xyXG4gIHByb2R1Y3Rpb25Db3N0OiBDb3N0QW1vdW50O1xyXG4gIHRvdGFsQ29zdDogQ29zdEFtb3VudDtcclxuICBwcm9maXQ6IENvc3RBbW91bnQ7XHJcbiAgdG90YWxTYWxlUHJpY2U6IENvc3RBbW91bnQ7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUm9sZUdyb3VwIHtcclxuICByb2xlOiBDb3N0R3JvdXBSb2xlO1xyXG4gIHN0YWdlczogQ29zdFN0YWdlW107XHJcbiAgcm9sZVRvdGFsOiBDb3N0QW1vdW50O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYWRkQW1vdW50cyguLi5hbW91bnRzOiBDb3N0QW1vdW50W10pOiBDb3N0QW1vdW50IHtcclxuICByZXR1cm4gYW1vdW50cy5yZWR1Y2UoXHJcbiAgICAoYWNjLCBhKSA9PiAoeyB0cnk6IGFjYy50cnkgKyBhLnRyeSwgdXNkOiBhY2MudXNkICsgYS51c2QsIGV1cjogYWNjLmV1ciArIGEuZXVyIH0pLFxyXG4gICAgeyB0cnk6IDAsIHVzZDogMCwgZXVyOiAwIH0sXHJcbiAgKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkUm9sZUdyb3VwcyhyYXdPaWw6IENvc3RBbW91bnQsIHN0YWdlczogQ29zdFN0YWdlW10pOiBSb2xlR3JvdXBbXSB7XHJcbiAgY29uc3QgT1JERVIgPSBbQ29zdEdyb3VwUm9sZS5Qcm9kdWN0aW9uLCBDb3N0R3JvdXBSb2xlLk9wZXJhdGluZywgQ29zdEdyb3VwUm9sZS5Qcm9maXQsIENvc3RHcm91cFJvbGUuTm9uZV07XHJcbiAgY29uc3QgbWFwID0gbmV3IE1hcDxDb3N0R3JvdXBSb2xlLCBDb3N0U3RhZ2VbXT4oKTtcclxuICBmb3IgKGNvbnN0IHN0YWdlIG9mIHN0YWdlcykge1xyXG4gICAgY29uc3QgbGlzdCA9IG1hcC5nZXQoc3RhZ2UuZ3JvdXBSb2xlKSA/PyBbXTtcclxuICAgIGxpc3QucHVzaChzdGFnZSk7XHJcbiAgICBtYXAuc2V0KHN0YWdlLmdyb3VwUm9sZSwgbGlzdCk7XHJcbiAgfVxyXG4gIHJldHVybiBPUkRFUi5maWx0ZXIocm9sZSA9PiBtYXAuaGFzKHJvbGUpKS5tYXAocm9sZSA9PiB7XHJcbiAgICBjb25zdCByb2xlU3RhZ2VzID0gbWFwLmdldChyb2xlKSE7XHJcbiAgICBjb25zdCBiYXNlID0gcm9sZSA9PT0gQ29zdEdyb3VwUm9sZS5Qcm9kdWN0aW9uID8gcmF3T2lsIDogeyB0cnk6IDAsIHVzZDogMCwgZXVyOiAwIH07XHJcbiAgICBjb25zdCByb2xlVG90YWwgPSBhZGRBbW91bnRzKGJhc2UsIC4uLnJvbGVTdGFnZXMubWFwKHN0ID0+IHN0LnN1YnRvdGFsKSk7XHJcbiAgICByZXR1cm4geyByb2xlLCBzdGFnZXM6IHJvbGVTdGFnZXMsIHJvbGVUb3RhbCB9O1xyXG4gIH0pO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFJlc29sdmVkSXRlbXMge1xyXG4gIHBvcnQ6IG51bWJlcjtcclxuICBpbnNwZWN0aW9uQ3VzdG9tczogbnVtYmVyO1xyXG4gIGZyZWlnaHQ6IG51bWJlcjtcclxuICBsb3NzUmF0ZTogbnVtYmVyO1xyXG4gIHJlZmluZXJ5T3ZlcmhlYWQ6IG51bWJlcjtcclxuICByZWZpbmVyeUF1eE1hdGVyaWFsczogbnVtYmVyO1xyXG4gIGZpbGxpbmdQYWNrYWdpbmdPdmVyaGVhZDogbnVtYmVyO1xyXG4gIHBhY2thZ2luZzogbnVtYmVyO1xyXG4gIHNhbGVzTWFya2V0aW5nOiBudW1iZXI7XHJcbiAgZ2VuZXJhbEFkbWluOiBudW1iZXI7XHJcbiAgZmluYW5jZTogbnVtYmVyO1xyXG4gIGNvbnRpbmdlbmN5OiBudW1iZXI7XHJcbiAgdmFyaWFibGVEZXByZWNpYXRpb246IG51bWJlcjtcclxuICBwcm9maXRSYXRlOiBudW1iZXI7XHJcbn1cclxuIl19