@hitsoft/kadooglu-keops 0.0.3 → 0.0.4

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 (101) hide show
  1. package/config/enums/route-names.d.ts +2 -1
  2. package/esm2020/config/enums/route-names.mjs +1 -1
  3. package/esm2020/config/providers/route.provider.mjs +10 -1
  4. package/esm2020/lib/features/cost-calculation/components/cost-calculation-inputs.component.mjs +12 -10
  5. package/esm2020/lib/features/cost-calculation/components/cost-calculation-results.component.mjs +3 -3
  6. package/esm2020/lib/features/cost-calculation/components/cost-calculation.component.mjs +86 -31
  7. package/esm2020/lib/features/cost-calculation/engine/currency.utils.mjs +10 -10
  8. package/esm2020/lib/features/cost-calculation/engine/formulas.mjs +10 -10
  9. package/esm2020/lib/features/cost-calculation/engine/item-resolver.mjs +16 -16
  10. package/esm2020/lib/features/cost-calculation/engine/stage-builder.mjs +8 -8
  11. package/esm2020/lib/features/cost-parameter-categories/components/cost-parameter-categories.component.mjs +3 -7
  12. package/esm2020/lib/features/cost-parameter-categories/components/cost-parameter-category-form.component.mjs +4 -14
  13. package/esm2020/lib/features/cost-parameters/components/cost-parameter-form.component.mjs +5 -6
  14. package/esm2020/lib/features/cost-parameters/components/cost-parameters.component.mjs +7 -10
  15. package/esm2020/lib/features/item-classifications/components/item-classifications.component.mjs +199 -0
  16. package/esm2020/lib/features/item-classifications/hit-item-classifications-routing.module.mjs +29 -0
  17. package/esm2020/lib/features/item-classifications/hit-item-classifications.module.mjs +60 -0
  18. package/esm2020/lib/features/price-parameters/components/price-parameter-form-items.component.mjs +6 -6
  19. package/esm2020/lib/features/price-parameters/components/price-parameter-form-price-lists.component.mjs +6 -6
  20. package/esm2020/lib/features/price-parameters/components/price-parameter-form.component.mjs +114 -46
  21. package/esm2020/lib/features/price-parameters/components/price-parameter-price-update-preview-modal.component.mjs +26 -0
  22. package/esm2020/lib/features/price-parameters/components/price-parameters.component.mjs +24 -17
  23. package/esm2020/lib/features/price-parameters/hit-price-parameters.module.mjs +5 -2
  24. package/esm2020/lib/features/price-parameters/price-parameter-cost-match.service.mjs +3 -3
  25. package/esm2020/lib/features/price-parameters/price-parameter-form-data.service.mjs +1 -2
  26. package/esm2020/lib/features/price-parameters/price-parameter-lookups.service.mjs +5 -10
  27. package/esm2020/lib/features/price-parameters/price-parameter-price-update.service.mjs +119 -0
  28. package/esm2020/lib/features/settings/components/cost-settings.component.mjs +8 -4
  29. package/esm2020/lib/kadooglu-keops-routing.module.mjs +3 -1
  30. package/esm2020/lib/shared/amount-currency-input/amount-currency-input.component.mjs +5 -3
  31. package/esm2020/lib/shared/cost-item-classification.utils.mjs +5 -2
  32. package/esm2020/lib/utils/business-region.utils.mjs +12 -0
  33. package/esm2020/lib/utils/currency.utils.mjs +3 -1
  34. package/esm2020/proxy/business-region.enum.mjs +9 -0
  35. package/esm2020/proxy/controllers/index.mjs +2 -1
  36. package/esm2020/proxy/controllers/item-classification.service.mjs +42 -0
  37. package/esm2020/proxy/controllers/item.service.mjs +7 -3
  38. package/esm2020/proxy/controllers/price-list.service.mjs +5 -5
  39. package/esm2020/proxy/controllers/price-parameter.service.mjs +6 -1
  40. package/esm2020/proxy/cost-parameter-categories/dtos/models.mjs +1 -1
  41. package/esm2020/proxy/cost-parameters/dtos/models.mjs +1 -1
  42. package/esm2020/proxy/item-classifications/dtos/index.mjs +2 -0
  43. package/esm2020/proxy/item-classifications/dtos/models.mjs +2 -0
  44. package/esm2020/proxy/price-parameters/dtos/models.mjs +1 -1
  45. package/esm2020/proxy/public-api.mjs +3 -2
  46. package/esm2020/proxy/settings/models.mjs +1 -1
  47. package/fesm2015/hitsoft-kadooglu-keops-config.mjs +9 -0
  48. package/fesm2015/hitsoft-kadooglu-keops-config.mjs.map +1 -1
  49. package/fesm2015/hitsoft-kadooglu-keops-proxy.mjs +63 -14
  50. package/fesm2015/hitsoft-kadooglu-keops-proxy.mjs.map +1 -1
  51. package/fesm2015/hitsoft-kadooglu-keops.mjs +795 -287
  52. package/fesm2015/hitsoft-kadooglu-keops.mjs.map +1 -1
  53. package/fesm2020/hitsoft-kadooglu-keops-config.mjs +9 -0
  54. package/fesm2020/hitsoft-kadooglu-keops-config.mjs.map +1 -1
  55. package/fesm2020/hitsoft-kadooglu-keops-proxy.mjs +63 -14
  56. package/fesm2020/hitsoft-kadooglu-keops-proxy.mjs.map +1 -1
  57. package/fesm2020/hitsoft-kadooglu-keops.mjs +776 -272
  58. package/fesm2020/hitsoft-kadooglu-keops.mjs.map +1 -1
  59. package/lib/features/cost-calculation/components/cost-calculation-inputs.component.d.ts +9 -7
  60. package/lib/features/cost-calculation/components/cost-calculation.component.d.ts +16 -8
  61. package/lib/features/cost-calculation/engine/currency.utils.d.ts +2 -2
  62. package/lib/features/cost-calculation/engine/formulas.d.ts +2 -2
  63. package/lib/features/cost-parameter-categories/components/cost-parameter-categories.component.d.ts +0 -1
  64. package/lib/features/cost-parameter-categories/components/cost-parameter-category-form.component.d.ts +1 -5
  65. package/lib/features/cost-parameters/components/cost-parameter-form.component.d.ts +2 -2
  66. package/lib/features/cost-parameters/components/cost-parameters.component.d.ts +1 -2
  67. package/lib/features/item-classifications/components/item-classifications.component.d.ts +66 -0
  68. package/lib/features/item-classifications/hit-item-classifications-routing.module.d.ts +7 -0
  69. package/lib/features/item-classifications/hit-item-classifications.module.d.ts +17 -0
  70. package/lib/features/price-parameters/components/price-parameter-form-items.component.d.ts +3 -3
  71. package/lib/features/price-parameters/components/price-parameter-form-price-lists.component.d.ts +3 -3
  72. package/lib/features/price-parameters/components/price-parameter-form.component.d.ts +16 -9
  73. package/lib/features/price-parameters/components/price-parameter-price-update-preview-modal.component.d.ts +11 -0
  74. package/lib/features/price-parameters/components/price-parameters.component.d.ts +5 -2
  75. package/lib/features/price-parameters/hit-price-parameters.module.d.ts +12 -11
  76. package/lib/features/price-parameters/price-parameter-cost-match.service.d.ts +2 -2
  77. package/lib/features/price-parameters/price-parameter-form-data.service.d.ts +0 -1
  78. package/lib/features/price-parameters/price-parameter-lookups.service.d.ts +0 -1
  79. package/lib/features/price-parameters/price-parameter-price-update.service.d.ts +30 -0
  80. package/lib/shared/amount-currency-input/amount-currency-input.component.d.ts +2 -2
  81. package/lib/shared/cost-item-classification.utils.d.ts +5 -1
  82. package/lib/utils/business-region.utils.d.ts +7 -0
  83. package/lib/utils/currency.utils.d.ts +1 -0
  84. package/package.json +1 -1
  85. package/proxy/business-region.enum.d.ts +6 -0
  86. package/proxy/controllers/index.d.ts +1 -0
  87. package/proxy/controllers/item-classification.service.d.ts +17 -0
  88. package/proxy/controllers/item.service.d.ts +3 -1
  89. package/proxy/controllers/price-list.service.d.ts +3 -2
  90. package/proxy/controllers/price-parameter.service.d.ts +2 -1
  91. package/proxy/cost-parameter-categories/dtos/models.d.ts +0 -4
  92. package/proxy/cost-parameters/dtos/models.d.ts +4 -3
  93. package/proxy/item-classifications/dtos/index.d.ts +1 -0
  94. package/proxy/item-classifications/dtos/models.d.ts +34 -0
  95. package/proxy/price-parameters/dtos/models.d.ts +38 -12
  96. package/proxy/public-api.d.ts +2 -1
  97. package/proxy/settings/models.d.ts +1 -0
  98. package/esm2020/lib/features/cost-parameter-categories/cost-parameter-category-l10n-helper.mjs +0 -6
  99. package/esm2020/proxy/cost-parameter-categories/cost-parameter-category-parent-code.enum.mjs +0 -8
  100. package/lib/features/cost-parameter-categories/cost-parameter-category-l10n-helper.d.ts +0 -2
  101. package/proxy/cost-parameter-categories/cost-parameter-category-parent-code.enum.d.ts +0 -5
@@ -2,33 +2,37 @@ 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 { Currency, CostParameterCategoryParentCode, } from '@hitsoft/kadooglu-keops/proxy';
5
+ import { CostItemSystemCode, Currency, } from '@hitsoft/kadooglu-keops/proxy';
6
6
  import { buildRoleGroups, calculateCost } from '../engine';
7
+ import { toAmount } from '../engine/currency.utils';
7
8
  import { parseDecimal } from '../../../utils/number.utils';
8
9
  import { resolveSystemRates } from '../../../utils/exchange-rate.utils';
9
10
  import { isRateCostItem } from '../../../shared/cost-item-classification.utils';
11
+ import { businessRegionLabels } from '../../../utils/business-region.utils';
10
12
  import * as i0 from "@angular/core";
11
13
  import * as i1 from "@hitsoft/kadooglu-keops/proxy";
12
- import * as i2 from "@abp/ng.components/page";
13
- import * as i3 from "./cost-calculation-inputs.component";
14
- import * as i4 from "./cost-calculation-results.component";
15
- import * as i5 from "./cost-calculation-result-sum.component";
16
- import * as i6 from "@abp/ng.core";
14
+ import * as i2 from "../../price-parameters/price-parameter-lookups.service";
15
+ import * as i3 from "@abp/ng.core";
16
+ import * as i4 from "@abp/ng.components/page";
17
+ import * as i5 from "./cost-calculation-inputs.component";
18
+ import * as i6 from "./cost-calculation-results.component";
19
+ import * as i7 from "./cost-calculation-result-sum.component";
17
20
  export class CostCalculationComponent {
18
- constructor(parameterService, costParameterCategoryService, costItemService, costGroupService, exchangeRateService, itemService) {
21
+ constructor(parameterService, priceParameterLookupsService, costItemService, costGroupService, exchangeRateService, itemService, localization) {
19
22
  this.parameterService = parameterService;
20
- this.costParameterCategoryService = costParameterCategoryService;
23
+ this.priceParameterLookupsService = priceParameterLookupsService;
21
24
  this.costItemService = costItemService;
22
25
  this.costGroupService = costGroupService;
23
26
  this.exchangeRateService = exchangeRateService;
24
27
  this.itemService = itemService;
28
+ this.localization = localization;
25
29
  this.itemCodePrefix = '05';
26
30
  this.productItems = [];
27
31
  this.itemsDataSource = null;
28
32
  this.selectedItemCode = null;
29
33
  this.selectedItemName = null;
30
34
  this.parameters = [];
31
- this.selectedParameterCode = null;
35
+ this.selectedParameterDocEntry = null;
32
36
  this.rawOilPrice = 0;
33
37
  this.rawOilCurrency = Currency.USD;
34
38
  this.systemRateUsd = 0;
@@ -38,10 +42,11 @@ export class CostCalculationComponent {
38
42
  this.stages = [];
39
43
  this.result = null;
40
44
  this.roleGroups = [];
45
+ this.packagingBaseTry = 0;
41
46
  this.costItemsByCode = new Map();
42
47
  this.groups = [];
43
48
  this.productGroupNames = new Map();
44
- this.regionNames = new Map();
49
+ this.typeNames = new Map();
45
50
  this.itemDisplayExpr = (item) => item ? [item.code, item.name].filter(Boolean).join(' — ') : '';
46
51
  this.parameterDisplayExpr = (p) => p ? this.parameterLabel(p) : '';
47
52
  }
@@ -52,19 +57,11 @@ export class CostCalculationComponent {
52
57
  costItems: this.costItemService.getList(),
53
58
  groups: this.costGroupService.getList(),
54
59
  rate: this.exchangeRateService.get(),
55
- lookups: this.costParameterCategoryService.getList(),
56
- items: this.itemService.getList(this.itemCodePrefix),
57
- }).subscribe(({ parameters, costItems, groups, rate, lookups, items }) => {
60
+ lookups: this.priceParameterLookupsService.loadTypeAndCategoryLookups(),
61
+ }).subscribe(({ parameters, costItems, groups, rate, lookups }) => {
58
62
  this.parameters = parameters ?? [];
59
- this.productItems = items ?? [];
60
- this.itemsDataSource = new DataSource({
61
- store: new ArrayStore({ key: 'code', data: this.productItems }),
62
- paginate: true,
63
- pageSize: 50,
64
- });
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));
63
+ this.productGroupNames = this.toNameMap(lookups.groupOptions);
64
+ this.typeNames = this.toNameMap(lookups.typeOptions);
68
65
  this.costItemsByCode = new Map();
69
66
  for (const ci of costItems ?? []) {
70
67
  if (ci.code)
@@ -80,13 +77,42 @@ export class CostCalculationComponent {
80
77
  });
81
78
  }
82
79
  parameterLabel(p) {
83
- const productGroup = this.productGroupNames.get(p.productGroup ?? '') ?? p.productGroup;
84
- const region = this.regionNames.get(p.region ?? '') ?? p.region;
85
- return [productGroup, region].filter(Boolean).join(' — ') || (p.code ?? '');
80
+ const groupName = this.productGroupNames.get(p.groupCode ?? '') ?? p.groupCode;
81
+ const typeName = this.typeNames.get(p.typeCode ?? '') ?? p.typeCode;
82
+ const region = this.localization.instant(businessRegionLabels[p.region]);
83
+ return [typeName, groupName, region].filter(Boolean).join(' — ') || String(p.docEntry ?? '');
86
84
  }
87
85
  onItemChange() {
88
86
  const item = this.productItems.find(x => x.code === this.selectedItemCode);
89
87
  this.selectedItemName = item?.name ?? null;
88
+ this.loadPackagingCost();
89
+ }
90
+ loadPackagingCost() {
91
+ if (!this.selectedItemCode) {
92
+ this.packagingBaseTry = 0;
93
+ this.calculate();
94
+ return;
95
+ }
96
+ this.itemService.getPackagingCost(this.selectedItemCode).subscribe(amount => {
97
+ this.packagingBaseTry = amount ?? 0;
98
+ this.calculate();
99
+ });
100
+ }
101
+ findPackagingItem() {
102
+ for (const stage of this.stages) {
103
+ const found = stage.items.find(item => item.systemCode === CostItemSystemCode.Packaging);
104
+ if (found)
105
+ return found;
106
+ }
107
+ return undefined;
108
+ }
109
+ applyPackagingAmount() {
110
+ const item = this.findPackagingItem();
111
+ if (!item)
112
+ return;
113
+ const amounts = toAmount(this.packagingBaseTry, this.rateUsd, this.rateEur);
114
+ item.value =
115
+ item.currency === Currency.TRY ? amounts.try : item.currency === Currency.EUR ? amounts.eur : amounts.usd;
90
116
  }
91
117
  toNameMap(options) {
92
118
  const map = new Map();
@@ -97,10 +123,38 @@ export class CostCalculationComponent {
97
123
  return map;
98
124
  }
99
125
  onParameterChange() {
100
- const parameter = this.parameters.find(p => p.code === this.selectedParameterCode);
126
+ const parameter = this.parameters.find(p => p.docEntry === this.selectedParameterDocEntry);
101
127
  this.stages = parameter ? this.buildStages(parameter) : [];
128
+ this.selectedItemCode = null;
129
+ this.selectedItemName = null;
130
+ this.packagingBaseTry = 0;
131
+ if (parameter) {
132
+ this.rawOilPrice = parameter.rawOilPrice ?? 0;
133
+ this.rawOilCurrency = parameter.rawOilCurrency ?? Currency.USD;
134
+ this.rateUsd = parameter.exchangeRateUsd || this.systemRateUsd;
135
+ this.rateEur = parameter.exchangeRateEur || this.systemRateEur;
136
+ this.loadProductItems(parameter.region, parameter.groupCode);
137
+ }
138
+ else {
139
+ this.productItems = [];
140
+ this.itemsDataSource = new DataSource({
141
+ store: new ArrayStore({ key: 'code', data: [] }),
142
+ paginate: true,
143
+ pageSize: 50,
144
+ });
145
+ }
102
146
  this.calculate();
103
147
  }
148
+ loadProductItems(region, groupCode) {
149
+ this.itemService.getList(this.itemCodePrefix, region, groupCode).subscribe(items => {
150
+ this.productItems = items ?? [];
151
+ this.itemsDataSource = new DataSource({
152
+ store: new ArrayStore({ key: 'code', data: this.productItems }),
153
+ paginate: true,
154
+ pageSize: 50,
155
+ });
156
+ });
157
+ }
104
158
  buildValuesByCode(parameter) {
105
159
  const map = new Map();
106
160
  for (const item of parameter.items ?? []) {
@@ -139,6 +193,7 @@ export class CostCalculationComponent {
139
193
  });
140
194
  }
141
195
  calculate() {
196
+ this.applyPackagingAmount();
142
197
  this.result = calculateCost({
143
198
  rawOilPrice: parseDecimal(this.rawOilPrice),
144
199
  rawOilCurrency: this.rawOilCurrency,
@@ -152,10 +207,10 @@ export class CostCalculationComponent {
152
207
  window.print();
153
208
  }
154
209
  }
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 });
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 });
210
+ CostCalculationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CostCalculationComponent, deps: [{ token: i1.PriceParameterService }, { token: i2.PriceParameterLookupsService }, { token: i1.CostItemService }, { token: i1.CostGroupService }, { token: i1.ExchangeRateService }, { token: i1.ItemService }, { token: i3.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
211
+ 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 [(selectedParameterDocEntry)]=\"selectedParameterDocEntry\"\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: i4.PageComponent, selector: "abp-page", inputs: ["title", "toolbar", "breadcrumb"] }, { kind: "component", type: i4.PageToolbarContainerComponent, selector: "abp-page-toolbar-container" }, { kind: "component", type: i5.CostCalculationInputsComponent, selector: "lib-cost-calculation-inputs", inputs: ["itemsDataSource", "itemDisplayExpr", "parameters", "parameterDisplayExpr", "stages", "selectedItemCode", "selectedParameterDocEntry", "rawOilPrice", "rawOilCurrency", "systemRateUsd", "systemRateEur", "rateUsd", "rateEur"], outputs: ["selectedItemCodeChange", "selectedParameterDocEntryChange", "rawOilPriceChange", "rawOilCurrencyChange", "rateUsdChange", "rateEurChange", "itemChange", "parameterChange", "recalc"] }, { kind: "component", type: i6.CostCalculationResultsComponent, selector: "lib-cost-calculation-results", inputs: ["result", "roleGroups", "itemName", "rateUsd", "rateEur"] }, { kind: "component", type: i7.CostCalculationResultSumComponent, selector: "lib-cost-calculation-result-sum", inputs: ["roleGroups"] }, { kind: "pipe", type: i3.LocalizationPipe, name: "abpLocalization" }], encapsulation: i0.ViewEncapsulation.None });
157
212
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: CostCalculationComponent, decorators: [{
158
213
  type: Component,
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"] }]
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=
214
+ 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 [(selectedParameterDocEntry)]=\"selectedParameterDocEntry\"\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"] }]
215
+ }], ctorParameters: function () { return [{ type: i1.PriceParameterService }, { type: i2.PriceParameterLookupsService }, { type: i1.CostItemService }, { type: i1.CostGroupService }, { type: i1.ExchangeRateService }, { type: i1.ItemService }, { type: i3.LocalizationService }]; } });
216
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29zdC1jYWxjdWxhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWRvb2dsdS1rZW9wcy9zcmMvbGliL2ZlYXR1cmVzL2Nvc3QtY2FsY3VsYXRpb24vY29tcG9uZW50cy9jb3N0LWNhbGN1bGF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2thZG9vZ2x1LWtlb3BzL3NyYy9saWIvZmVhdHVyZXMvY29zdC1jYWxjdWxhdGlvbi9jb21wb25lbnRzL2Nvc3QtY2FsY3VsYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hDLE9BQU8sVUFBVSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JELE9BQU8sVUFBVSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JELE9BQU8sRUFJTCxrQkFBa0IsRUFRbEIsUUFBUSxHQUNULE1BQU0sK0JBQStCLENBQUM7QUFDdkMsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQXlCLE1BQU0sV0FBVyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOzs7Ozs7Ozs7QUFTNUUsTUFBTSxPQUFPLHdCQUF3QjtJQThCbkMsWUFDbUIsZ0JBQXVDLEVBQ3ZDLDRCQUEwRCxF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QUFjO1lBQ25DLE9BQU8sRUFBRSxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUNuQyxPQUFPLEVBQUUsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDbkMsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1NBQ3BCLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxVQUFVLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVELEtBQUs7UUFDSCxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDakIsQ0FBQzs7cUhBL05VLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLDREQ2xDckMsbzZEQTRDQTsyRkRWYSx3QkFBd0I7a0JBTnBDLFNBQVM7K0JBQ0Usc0JBQXNCLGlCQUdqQixpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IExvY2FsaXphdGlvblNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBmb3JrSm9pbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgRGF0YVNvdXJjZSBmcm9tICdkZXZleHRyZW1lL2RhdGEvZGF0YV9zb3VyY2UnO1xyXG5pbXBvcnQgQXJyYXlTdG9yZSBmcm9tICdkZXZleHRyZW1lL2RhdGEvYXJyYXlfc3RvcmUnO1xyXG5pbXBvcnQge1xyXG4gIEJ1c2luZXNzUmVnaW9uLFxyXG4gIENvc3RHcm91cFNlcnZpY2UsXHJcbiAgQ29zdEl0ZW1TZXJ2aWNlLFxyXG4gIENvc3RJdGVtU3lzdGVtQ29kZSxcclxuICBQcmljZVBhcmFtZXRlclNlcnZpY2UsXHJcbiAgRXhjaGFuZ2VSYXRlU2VydmljZSxcclxuICBJdGVtU2VydmljZSxcclxuICBJdGVtRHRvLFxyXG4gIFByaWNlUGFyYW1ldGVyRHRvLFxyXG4gIENvc3RJdGVtRHRvLFxyXG4gIENvc3RHcm91cER0byxcclxuICBDdXJyZW5jeSxcclxufSBmcm9tICdAaGl0c29mdC9rYWRvb2dsdS1rZW9wcy9wcm94eSc7XHJcbmltcG9ydCB7IGJ1aWxkUm9sZUdyb3VwcywgY2FsY3VsYXRlQ29zdCwgQ29zdFJlc3VsdCwgUm9sZUdyb3VwIH0gZnJvbSAnLi4vZW5naW5lJztcclxuaW1wb3J0IHsgdG9BbW91bnQgfSBmcm9tICcuLi9lbmdpbmUvY3VycmVuY3kudXRpbHMnO1xyXG5pbXBvcnQgeyBDb3N0Q2FsY3VsYXRpb25JdGVtLCBDb3N0Q2FsY3VsYXRpb25TdGFnZSB9IGZyb20gJy4uL2Nvc3QtY2FsY3VsYXRpb24ubW9kZWxzJztcclxuaW1wb3J0IHsgcGFyc2VEZWNpbWFsIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvbnVtYmVyLnV0aWxzJztcclxuaW1wb3J0IHsgcmVzb2x2ZVN5c3RlbVJhdGVzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvZXhjaGFuZ2UtcmF0ZS51dGlscyc7XHJcbmltcG9ydCB7IGlzUmF0ZUNvc3RJdGVtIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2Nvc3QtaXRlbS1jbGFzc2lmaWNhdGlvbi51dGlscyc7XHJcbmltcG9ydCB7IGJ1c2luZXNzUmVnaW9uTGFiZWxzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvYnVzaW5lc3MtcmVnaW9uLnV0aWxzJztcclxuaW1wb3J0IHsgUHJpY2VQYXJhbWV0ZXJMb29rdXBzU2VydmljZSB9IGZyb20gJy4uLy4uL3ByaWNlLXBhcmFtZXRlcnMvcHJpY2UtcGFyYW1ldGVyLWxvb2t1cHMuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1jb3N0LWNhbGN1bGF0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29zdC1jYWxjdWxhdGlvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY29zdC1jYWxjdWxhdGlvbi5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3N0Q2FsY3VsYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHJlYWRvbmx5IGl0ZW1Db2RlUHJlZml4ID0gJzA1JztcclxuICBwcm9kdWN0SXRlbXM6IEl0ZW1EdG9bXSA9IFtdO1xyXG4gIGl0ZW1zRGF0YVNvdXJjZTogRGF0YVNvdXJjZSB8IG51bGwgPSBudWxsO1xyXG4gIHNlbGVjdGVkSXRlbUNvZGU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG4gIHNlbGVjdGVkSXRlbU5hbWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG5cclxuICBwYXJhbWV0ZXJzOiBQcmljZVBhcmFtZXRlckR0b1tdID0gW107XHJcbiAgc2VsZWN0ZWRQYXJhbWV0ZXJEb2NFbnRyeTogbnVtYmVyIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIHJhd09pbFByaWNlID0gMDtcclxuICByYXdPaWxDdXJyZW5jeSA9IEN1cnJlbmN5LlVTRDtcclxuXHJcbiAgc3lzdGVtUmF0ZVVzZCA9IDA7XHJcbiAgc3lzdGVtUmF0ZUV1ciA9IDA7XHJcblxyXG4gIHJhdGVVc2QgPSAwO1xyXG4gIHJhdGVFdXIgPSAwO1xyXG5cclxuICBzdGFnZXM6IENvc3RDYWxjdWxhdGlvblN0YWdlW10gPSBbXTtcclxuICByZXN1bHQ6IENvc3RSZXN1bHQgfCBudWxsID0gbnVsbDtcclxuICByb2xlR3JvdXBzOiBSb2xlR3JvdXBbXSA9IFtdO1xyXG5cclxuICBwcml2YXRlIHBhY2thZ2luZ0Jhc2VUcnkgPSAwO1xyXG5cclxuICBwcml2YXRlIGNvc3RJdGVtc0J5Q29kZSA9IG5ldyBNYXA8c3RyaW5nLCBDb3N0SXRlbUR0bz4oKTtcclxuICBwcml2YXRlIGdyb3VwczogQ29zdEdyb3VwRHRvW10gPSBbXTtcclxuICBwcml2YXRlIHByb2R1Y3RHcm91cE5hbWVzID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKTtcclxuICBwcml2YXRlIHR5cGVOYW1lcyA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBwYXJhbWV0ZXJTZXJ2aWNlOiBQcmljZVBhcmFtZXRlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHByaWNlUGFyYW1ldGVyTG9va3Vwc1NlcnZpY2U6IFByaWNlUGFyYW1ldGVyTG9va3Vwc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvc3RJdGVtU2VydmljZTogQ29zdEl0ZW1TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb3N0R3JvdXBTZXJ2aWNlOiBDb3N0R3JvdXBTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBleGNoYW5nZVJhdGVTZXJ2aWNlOiBFeGNoYW5nZVJhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBpdGVtU2VydmljZTogSXRlbVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxvY2FsaXphdGlvbjogTG9jYWxpemF0aW9uU2VydmljZSxcclxuICApIHt9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jYWxjdWxhdGUoKTtcclxuXHJcbiAgICBmb3JrSm9pbih7XHJcbiAgICAgIHBhcmFtZXRlcnM6IHRoaXMucGFyYW1ldGVyU2VydmljZS5nZXRMaXN0KCksXHJcbiAgICAgIGNvc3RJdGVtczogdGhpcy5jb3N0SXRlbVNlcnZpY2UuZ2V0TGlzdCgpLFxyXG4gICAgICBncm91cHM6IHRoaXMuY29zdEdyb3VwU2VydmljZS5nZXRMaXN0KCksXHJcbiAgICAgIHJhdGU6IHRoaXMuZXhjaGFuZ2VSYXRlU2VydmljZS5nZXQoKSxcclxuICAgICAgbG9va3VwczogdGhpcy5wcmljZVBhcmFtZXRlckxvb2t1cHNTZXJ2aWNlLmxvYWRUeXBlQW5kQ2F0ZWdvcnlMb29rdXBzKCksXHJcbiAgICB9KS5zdWJzY3JpYmUoKHsgcGFyYW1ldGVycywgY29zdEl0ZW1zLCBncm91cHMsIHJhdGUsIGxvb2t1cHMgfSkgPT4ge1xyXG4gICAgICB0aGlzLnBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzID8/IFtdO1xyXG5cclxuICAgICAgdGhpcy5wcm9kdWN0R3JvdXBOYW1lcyA9IHRoaXMudG9OYW1lTWFwKGxvb2t1cHMuZ3JvdXBPcHRpb25zKTtcclxuICAgICAgdGhpcy50eXBlTmFtZXMgPSB0aGlzLnRvTmFtZU1hcChsb29rdXBzLnR5cGVPcHRpb25zKTtcclxuXHJcbiAgICAgIHRoaXMuY29zdEl0ZW1zQnlDb2RlID0gbmV3IE1hcDxzdHJpbmcsIENvc3RJdGVtRHRvPigpO1xyXG4gICAgICBmb3IgKGNvbnN0IGNpIG9mIGNvc3RJdGVtcyA/PyBbXSkge1xyXG4gICAgICAgIGlmIChjaS5jb2RlKSB0aGlzLmNvc3RJdGVtc0J5Q29kZS5zZXQoY2kuY29kZSwgY2kpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmdyb3VwcyA9IChncm91cHMgPz8gW10pLnNsaWNlKCkuc29ydCgoYSwgYikgPT4gYS5kaXNwbGF5T3JkZXIgLSBiLmRpc3BsYXlPcmRlcik7XHJcblxyXG4gICAgICBjb25zdCBbdXNkLCBldXJdID0gcmVzb2x2ZVN5c3RlbVJhdGVzKHJhdGUpO1xyXG4gICAgICB0aGlzLnN5c3RlbVJhdGVVc2QgPSB1c2Q7XHJcbiAgICAgIHRoaXMuc3lzdGVtUmF0ZUV1ciA9IGV1cjtcclxuICAgICAgdGhpcy5yYXRlVXNkID0gdXNkO1xyXG4gICAgICB0aGlzLnJhdGVFdXIgPSBldXI7XHJcblxyXG4gICAgICB0aGlzLmNhbGN1bGF0ZSgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwYXJhbWV0ZXJMYWJlbChwOiBQcmljZVBhcmFtZXRlckR0byk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBncm91cE5hbWUgPSB0aGlzLnByb2R1Y3RHcm91cE5hbWVzLmdldChwLmdyb3VwQ29kZSA/PyAnJykgPz8gcC5ncm91cENvZGU7XHJcbiAgICBjb25zdCB0eXBlTmFtZSA9IHRoaXMudHlwZU5hbWVzLmdldChwLnR5cGVDb2RlID8/ICcnKSA/PyBwLnR5cGVDb2RlO1xyXG4gICAgY29uc3QgcmVnaW9uID0gdGhpcy5sb2NhbGl6YXRpb24uaW5zdGFudChidXNpbmVzc1JlZ2lvbkxhYmVsc1twLnJlZ2lvbl0pO1xyXG4gICAgcmV0dXJuIFt0eXBlTmFtZSwgZ3JvdXBOYW1lLCByZWdpb25dLmZpbHRlcihCb29sZWFuKS5qb2luKCcg4oCUICcpIHx8IFN0cmluZyhwLmRvY0VudHJ5ID8/ICcnKTtcclxuICB9XHJcblxyXG4gIG9uSXRlbUNoYW5nZSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGl0ZW0gPSB0aGlzLnByb2R1Y3RJdGVtcy5maW5kKHggPT4geC5jb2RlID09PSB0aGlzLnNlbGVjdGVkSXRlbUNvZGUpO1xyXG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1OYW1lID0gaXRlbT8ubmFtZSA/PyBudWxsO1xyXG4gICAgdGhpcy5sb2FkUGFja2FnaW5nQ29zdCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2FkUGFja2FnaW5nQ29zdCgpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5zZWxlY3RlZEl0ZW1Db2RlKSB7XHJcbiAgICAgIHRoaXMucGFja2FnaW5nQmFzZVRyeSA9IDA7XHJcbiAgICAgIHRoaXMuY2FsY3VsYXRlKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLml0ZW1TZXJ2aWNlLmdldFBhY2thZ2luZ0Nvc3QodGhpcy5zZWxlY3RlZEl0ZW1Db2RlKS5zdWJzY3JpYmUoYW1vdW50ID0+IHtcclxuICAgICAgdGhpcy5wYWNrYWdpbmdCYXNlVHJ5ID0gYW1vdW50ID8/IDA7XHJcbiAgICAgIHRoaXMuY2FsY3VsYXRlKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZmluZFBhY2thZ2luZ0l0ZW0oKTogQ29zdENhbGN1bGF0aW9uSXRlbSB8IHVuZGVmaW5lZCB7XHJcbiAgICBmb3IgKGNvbnN0IHN0YWdlIG9mIHRoaXMuc3RhZ2VzKSB7XHJcbiAgICAgIGNvbnN0IGZvdW5kID0gc3RhZ2UuaXRlbXMuZmluZChpdGVtID0+IGl0ZW0uc3lzdGVtQ29kZSA9PT0gQ29zdEl0ZW1TeXN0ZW1Db2RlLlBhY2thZ2luZyk7XHJcbiAgICAgIGlmIChmb3VuZCkgcmV0dXJuIGZvdW5kO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXBwbHlQYWNrYWdpbmdBbW91bnQoKTogdm9pZCB7XHJcbiAgICBjb25zdCBpdGVtID0gdGhpcy5maW5kUGFja2FnaW5nSXRlbSgpO1xyXG4gICAgaWYgKCFpdGVtKSByZXR1cm47XHJcblxyXG4gICAgY29uc3QgYW1vdW50cyA9IHRvQW1vdW50KHRoaXMucGFja2FnaW5nQmFzZVRyeSwgdGhpcy5yYXRlVXNkLCB0aGlzLnJhdGVFdXIpO1xyXG4gICAgaXRlbS52YWx1ZSA9XHJcbiAgICAgIGl0ZW0uY3VycmVuY3kgPT09IEN1cnJlbmN5LlRSWSA/IGFtb3VudHMudHJ5IDogaXRlbS5jdXJyZW5jeSA9PT0gQ3VycmVuY3kuRVVSID8gYW1vdW50cy5ldXIgOiBhbW91bnRzLnVzZDtcclxuICB9XHJcblxyXG4gIHJlYWRvbmx5IGl0ZW1EaXNwbGF5RXhwciA9IChpdGVtOiBJdGVtRHRvKTogc3RyaW5nID0+XHJcbiAgICBpdGVtID8gW2l0ZW0uY29kZSwgaXRlbS5uYW1lXS5maWx0ZXIoQm9vbGVhbikuam9pbignIOKAlCAnKSA6ICcnO1xyXG5cclxuICByZWFkb25seSBwYXJhbWV0ZXJEaXNwbGF5RXhwciA9IChwOiBQcmljZVBhcmFtZXRlckR0byk6IHN0cmluZyA9PlxyXG4gICAgcCA/IHRoaXMucGFyYW1ldGVyTGFiZWwocCkgOiAnJztcclxuXHJcbiAgcHJpdmF0ZSB0b05hbWVNYXAoXHJcbiAgICBvcHRpb25zOiBSZWFkb25seUFycmF5PHsgY29kZT86IHN0cmluZzsgbmFtZT86IHN0cmluZyB9PiB8IHVuZGVmaW5lZCxcclxuICApOiBNYXA8c3RyaW5nLCBzdHJpbmc+IHtcclxuICAgIGNvbnN0IG1hcCA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XHJcbiAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiBvcHRpb25zID8/IFtdKSB7XHJcbiAgICAgIGlmIChvcHRpb24uY29kZSkgbWFwLnNldChvcHRpb24uY29kZSwgb3B0aW9uLm5hbWUgPz8gb3B0aW9uLmNvZGUpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG1hcDtcclxuICB9XHJcblxyXG4gIG9uUGFyYW1ldGVyQ2hhbmdlKCk6IHZvaWQge1xyXG4gICAgY29uc3QgcGFyYW1ldGVyID0gdGhpcy5wYXJhbWV0ZXJzLmZpbmQocCA9PiBwLmRvY0VudHJ5ID09PSB0aGlzLnNlbGVjdGVkUGFyYW1ldGVyRG9jRW50cnkpO1xyXG4gICAgdGhpcy5zdGFnZXMgPSBwYXJhbWV0ZXIgPyB0aGlzLmJ1aWxkU3RhZ2VzKHBhcmFtZXRlcikgOiBbXTtcclxuXHJcbiAgICB0aGlzLnNlbGVjdGVkSXRlbUNvZGUgPSBudWxsO1xyXG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1OYW1lID0gbnVsbDtcclxuICAgIHRoaXMucGFja2FnaW5nQmFzZVRyeSA9IDA7XHJcblxyXG4gICAgaWYgKHBhcmFtZXRlcikge1xyXG4gICAgICB0aGlzLnJhd09pbFByaWNlID0gcGFyYW1ldGVyLnJhd09pbFByaWNlID8/IDA7XHJcbiAgICAgIHRoaXMucmF3T2lsQ3VycmVuY3kgPSBwYXJhbWV0ZXIucmF3T2lsQ3VycmVuY3kgPz8gQ3VycmVuY3kuVVNEO1xyXG4gICAgICB0aGlzLnJhdGVVc2QgPSBwYXJhbWV0ZXIuZXhjaGFuZ2VSYXRlVXNkIHx8IHRoaXMuc3lzdGVtUmF0ZVVzZDtcclxuICAgICAgdGhpcy5yYXRlRXVyID0gcGFyYW1ldGVyLmV4Y2hhbmdlUmF0ZUV1ciB8fCB0aGlzLnN5c3RlbVJhdGVFdXI7XHJcbiAgICAgIHRoaXMubG9hZFByb2R1Y3RJdGVtcyhwYXJhbWV0ZXIucmVnaW9uLCBwYXJhbWV0ZXIuZ3JvdXBDb2RlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucHJvZHVjdEl0ZW1zID0gW107XHJcbiAgICAgIHRoaXMuaXRlbXNEYXRhU291cmNlID0gbmV3IERhdGFTb3VyY2Uoe1xyXG4gICAgICAgIHN0b3JlOiBuZXcgQXJyYXlTdG9yZSh7IGtleTogJ2NvZGUnLCBkYXRhOiBbXSB9KSxcclxuICAgICAgICBwYWdpbmF0ZTogdHJ1ZSxcclxuICAgICAgICBwYWdlU2l6ZTogNTAsXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuY2FsY3VsYXRlKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGxvYWRQcm9kdWN0SXRlbXMocmVnaW9uOiBCdXNpbmVzc1JlZ2lvbiwgZ3JvdXBDb2RlOiBzdHJpbmcgfCB1bmRlZmluZWQpOiB2b2lkIHtcclxuICAgIHRoaXMuaXRlbVNlcnZpY2UuZ2V0TGlzdCh0aGlzLml0ZW1Db2RlUHJlZml4LCByZWdpb24sIGdyb3VwQ29kZSkuc3Vic2NyaWJlKGl0ZW1zID0+IHtcclxuICAgICAgdGhpcy5wcm9kdWN0SXRlbXMgPSBpdGVtcyA/PyBbXTtcclxuICAgICAgdGhpcy5pdGVtc0RhdGFTb3VyY2UgPSBuZXcgRGF0YVNvdXJjZSh7XHJcbiAgICAgICAgc3RvcmU6IG5ldyBBcnJheVN0b3JlKHsga2V5OiAnY29kZScsIGRhdGE6IHRoaXMucHJvZHVjdEl0ZW1zIH0pLFxyXG4gICAgICAgIHBhZ2luYXRlOiB0cnVlLFxyXG4gICAgICAgIHBhZ2VTaXplOiA1MCxcclxuICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYnVpbGRWYWx1ZXNCeUNvZGUoXHJcbiAgICBwYXJhbWV0ZXI6IFByaWNlUGFyYW1ldGVyRHRvLFxyXG4gICk6IE1hcDxzdHJpbmcsIHsgdmFsdWU6IG51bWJlcjsgY3VycmVuY3k/OiBDdXJyZW5jeSB9PiB7XHJcbiAgICBjb25zdCBtYXAgPSBuZXcgTWFwPHN0cmluZywgeyB2YWx1ZTogbnVtYmVyOyBjdXJyZW5jeT86IEN1cnJlbmN5IH0+KCk7XHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgcGFyYW1ldGVyLml0ZW1zID8/IFtdKSB7XHJcbiAgICAgIGlmIChpdGVtLmNvc3RJdGVtQ29kZSkge1xyXG4gICAgICAgIG1hcC5zZXQoaXRlbS5jb3N0SXRlbUNvZGUsIHsgdmFsdWU6IHBhcnNlRGVjaW1hbChpdGVtLnZhbHVlKSwgY3VycmVuY3k6IGl0ZW0uY3VycmVuY3kgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBtYXA7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGJ1aWxkU3RhZ2VzKHBhcmFtZXRlcjogUHJpY2VQYXJhbWV0ZXJEdG8pOiBDb3N0Q2FsY3VsYXRpb25TdGFnZVtdIHtcclxuICAgIGNvbnN0IHZhbHVlc0J5Q29kZSA9IHRoaXMuYnVpbGRWYWx1ZXNCeUNvZGUocGFyYW1ldGVyKTtcclxuICAgIHJldHVybiB0aGlzLmdyb3Vwcy5tYXAoZ3JvdXAgPT4ge1xyXG4gICAgICBjb25zdCBpdGVtczogQ29zdENhbGN1bGF0aW9uSXRlbVtdID0gW107XHJcbiAgICAgIGZvciAoY29uc3QgY29kZSBvZiBncm91cC5pdGVtQ29kZXMgPz8gW10pIHtcclxuICAgICAgICBjb25zdCBjb3N0SXRlbSA9IHRoaXMuY29zdEl0ZW1zQnlDb2RlLmdldChjb2RlKTtcclxuICAgICAgICBpZiAoIWNvc3RJdGVtKSBjb250aW51ZTtcclxuICAgICAgICBjb25zdCBzdG9yZWQgPSB2YWx1ZXNCeUNvZGUuZ2V0KGNvZGUpO1xyXG4gICAgICAgIGNvbnN0IGlzUmF0ZSA9IGlzUmF0ZUNvc3RJdGVtKGNvc3RJdGVtKTtcclxuICAgICAgICBpdGVtcy5wdXNoKHtcclxuICAgICAgICAgIGNvc3RJdGVtQ29kZTogY29kZSxcclxuICAgICAgICAgIGNvc3RJdGVtTmFtZTogY29zdEl0ZW0ubmFtZSA/PyBjb2RlLFxyXG4gICAgICAgICAgY2FsY3VsYXRpb25UeXBlOiBjb3N0SXRlbS5jYWxjdWxhdGlvblR5cGUsXHJcbiAgICAgICAgICBzeXN0ZW1Db2RlOiBjb3N0SXRlbS5zeXN0ZW1Db2RlID8/IHVuZGVmaW5lZCxcclxuICAgICAgICAgIGN1cnJlbmN5OiBzdG9yZWQ/LmN1cnJlbmN5ID8/IChpc1JhdGUgPyB1bmRlZmluZWQgOiBDdXJyZW5jeS5UUlkpLFxyXG4gICAgICAgICAgdmFsdWU6IHN0b3JlZD8udmFsdWUgPz8gMCxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIGdyb3VwQ29kZTogZ3JvdXAuY29kZSA/PyAnJyxcclxuICAgICAgICBncm91cE5hbWU6IGdyb3VwLm5hbWUgPz8gJycsXHJcbiAgICAgICAgZGlzcGxheU9yZGVyOiBncm91cC5kaXNwbGF5T3JkZXIsXHJcbiAgICAgICAgZ3JvdXBSb2xlOiBncm91cC5ncm91cFJvbGUsXHJcbiAgICAgICAgaXRlbXMsXHJcbiAgICAgIH07XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGNhbGN1bGF0ZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuYXBwbHlQYWNrYWdpbmdBbW91bnQoKTtcclxuXHJcbiAgICB0aGlzLnJlc3VsdCA9IGNhbGN1bGF0ZUNvc3Qoe1xyXG4gICAgICByYXdPaWxQcmljZTogcGFyc2VEZWNpbWFsKHRoaXMucmF3T2lsUHJpY2UpLFxyXG4gICAgICByYXdPaWxDdXJyZW5jeTogdGhpcy5yYXdPaWxDdXJyZW5jeSxcclxuICAgICAgcmF0ZVVzZDogcGFyc2VEZWNpbWFsKHRoaXMucmF0ZVVzZCksXHJcbiAgICAgIHJhdGVFdXI6IHBhcnNlRGVjaW1hbCh0aGlzLnJhdGVFdXIpLFxyXG4gICAgICBzdGFnZXM6IHRoaXMuc3RhZ2VzLFxyXG4gICAgfSk7XHJcbiAgICB0aGlzLnJvbGVHcm91cHMgPSBidWlsZFJvbGVHcm91cHModGhpcy5yZXN1bHQucmF3T2lsLCB0aGlzLnJlc3VsdC5zdGFnZXMpO1xyXG4gIH1cclxuXHJcbiAgcHJpbnQoKTogdm9pZCB7XHJcbiAgICB3aW5kb3cucHJpbnQoKTtcclxuICB9XHJcbn1cclxuIiwiPGFicC1wYWdlIFt0aXRsZV09XCInS2VvcHM6OkNvc3RDYWxjdWxhdGlvbnM6VGl0bGUnIHwgYWJwTG9jYWxpemF0aW9uXCI+XHJcbiAgPGFicC1wYWdlLXRvb2xiYXItY29udGFpbmVyIGNsYXNzPVwiY29sXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93IGp1c3RpZnktY29udGVudC1lbmQgbXgtMFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLWF1dG8gcHgtMSBwdC0wIHB0LW1kLTJcIj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lLXByaW1hcnlcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInByaW50KClcIiBbZGlzYWJsZWRdPVwiIXJlc3VsdFwiPlxyXG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1wcmludCBtZS0xXCI+PC9pPlxyXG4gICAgICAgICAgPHNwYW4+e3sgJ0tlb3BzOjpDb3N0Q2FsY3VsYXRpb25zOlByaW50JyB8IGFicExvY2FsaXphdGlvbiB9fTwvc3Bhbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2FicC1wYWdlLXRvb2xiYXItY29udGFpbmVyPlxyXG5cclxuICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTQgbWItM1wiPlxyXG4gICAgICA8bGliLWNvc3QtY2FsY3VsYXRpb24taW5wdXRzXHJcbiAgICAgICAgW2l0ZW1zRGF0YVNvdXJjZV09XCJpdGVtc0RhdGFTb3VyY2VcIlxyXG4gICAgICAgIFtpdGVtRGlzcGxheUV4cHJdPVwiaXRlbURpc3BsYXlFeHByXCJcclxuICAgICAgICBbcGFyYW1ldGVyc109XCJwYXJhbWV0ZXJzXCJcclxuICAgICAgICBbcGFyYW1ldGVyRGlzcGxheUV4cHJdPVwicGFyYW1ldGVyRGlzcGxheUV4cHJcIlxyXG4gICAgICAgIFtzdGFnZXNdPVwic3RhZ2VzXCJcclxuICAgICAgICBbKHNlbGVjdGVkSXRlbUNvZGUpXT1cInNlbGVjdGVkSXRlbUNvZGVcIlxyXG4gICAgICAgIFsoc2VsZWN0ZWRQYXJhbWV0ZXJEb2NFbnRyeSldPVwic2VsZWN0ZWRQYXJhbWV0ZXJEb2NFbnRyeVwiXHJcbiAgICAgICAgWyhyYXdPaWxQcmljZSldPVwicmF3T2lsUHJpY2VcIlxyXG4gICAgICAgIFsocmF3T2lsQ3VycmVuY3kpXT1cInJhd09pbEN1cnJlbmN5XCJcclxuICAgICAgICBbc3lzdGVtUmF0ZVVzZF09XCJzeXN0ZW1SYXRlVXNkXCJcclxuICAgICAgICBbc3lzdGVtUmF0ZUV1cl09XCJzeXN0ZW1SYXRlRXVyXCJcclxuICAgICAgICBbKHJhdGVVc2QpXT1cInJhdGVVc2RcIlxyXG4gICAgICAgIFsocmF0ZUV1cildPVwicmF0ZUV1clwiXHJcbiAgICAgICAgKGl0ZW1DaGFuZ2UpPVwib25JdGVtQ2hhbmdlKClcIlxyXG4gICAgICAgIChwYXJhbWV0ZXJDaGFuZ2UpPVwib25QYXJhbWV0ZXJDaGFuZ2UoKVwiXHJcbiAgICAgICAgKHJlY2FsYyk9XCJjYWxjdWxhdGUoKVwiXHJcbiAgICAgID48L2xpYi1jb3N0LWNhbGN1bGF0aW9uLWlucHV0cz5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctOCBtYi0zXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkLXByaW50LW5vbmVcIj5cclxuICAgICAgICA8bGliLWNvc3QtY2FsY3VsYXRpb24tcmVzdWx0LXN1bSBbcm9sZUdyb3Vwc109XCJyb2xlR3JvdXBzXCI+PC9saWItY29zdC1jYWxjdWxhdGlvbi1yZXN1bHQtc3VtPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBpZD1cImNvc3QtY2FsY3VsYXRpb24tcmVzdWx0c1wiPlxyXG4gICAgICAgIDxsaWItY29zdC1jYWxjdWxhdGlvbi1yZXN1bHRzIFtyZXN1bHRdPVwicmVzdWx0XCIgW3JvbGVHcm91cHNdPVwicm9sZUdyb3Vwc1wiIFtpdGVtTmFtZV09XCJzZWxlY3RlZEl0ZW1OYW1lXCIgW3JhdGVVc2RdPVwicmF0ZVVzZFwiIFtyYXRlRXVyXT1cInJhdGVFdXJcIj48L2xpYi1jb3N0LWNhbGN1bGF0aW9uLXJlc3VsdHM+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvYWJwLXBhZ2U+XHJcbiJdfQ==
@@ -1,21 +1,21 @@
1
1
  import { Currency } from '@hitsoft/kadooglu-keops/proxy';
2
- export function toAmount(baseUsd, rateUsd, rateEur) {
2
+ export function toAmount(baseTry, rateUsd, rateEur) {
3
3
  return {
4
- usd: baseUsd,
5
- try: baseUsd * rateUsd,
6
- eur: rateEur > 0 ? (baseUsd * rateUsd) / rateEur : 0,
4
+ try: baseTry,
5
+ usd: rateUsd > 0 ? baseTry / rateUsd : 0,
6
+ eur: rateEur > 0 ? baseTry / rateEur : 0,
7
7
  };
8
8
  }
9
- export function toBaseUsd(value, currency, rateUsd, rateEur) {
9
+ export function toBaseTry(value, currency, rateUsd, rateEur) {
10
10
  switch (currency) {
11
- case Currency.USD:
12
- return value;
13
11
  case Currency.TRY:
14
- return rateUsd <= 0 ? 0 : value / rateUsd;
12
+ return value;
13
+ case Currency.USD:
14
+ return value * rateUsd;
15
15
  case Currency.EUR:
16
- return rateUsd <= 0 ? 0 : (value * rateEur) / rateUsd;
16
+ return value * rateEur;
17
17
  default:
18
18
  return value;
19
19
  }
20
20
  }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3kudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWRvb2dsdS1rZW9wcy9zcmMvbGliL2ZlYXR1cmVzL2Nvc3QtY2FsY3VsYXRpb24vZW5naW5lL2N1cnJlbmN5LnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUd6RCxNQUFNLFVBQVUsUUFBUSxDQUFDLE9BQWUsRUFBRSxPQUFlLEVBQUUsT0FBZTtJQUN4RSxPQUFPO1FBQ0wsR0FBRyxFQUFFLE9BQU87UUFDWixHQUFHLEVBQUUsT0FBTyxHQUFHLE9BQU87UUFDdEIsR0FBRyxFQUFFLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNyRCxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxTQUFTLENBQ3ZCLEtBQWEsRUFDYixRQUE4QixFQUM5QixPQUFlLEVBQ2YsT0FBZTtJQUVmLFFBQVEsUUFBUSxFQUFFO1FBQ2hCLEtBQUssUUFBUSxDQUFDLEdBQUc7WUFDZixPQUFPLEtBQUssQ0FBQztRQUNmLEtBQUssUUFBUSxDQUFDLEdBQUc7WUFDZixPQUFPLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQztRQUM1QyxLQUFLLFFBQVEsQ0FBQyxHQUFHO1lBQ2YsT0FBTyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxHQUFHLE9BQU8sQ0FBQztRQUN4RDtZQUNFLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1cnJlbmN5IH0gZnJvbSAnQGhpdHNvZnQva2Fkb29nbHUta2VvcHMvcHJveHknO1xyXG5pbXBvcnQgeyBDb3N0QW1vdW50IH0gZnJvbSAnLi9tb2RlbHMnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRvQW1vdW50KGJhc2VVc2Q6IG51bWJlciwgcmF0ZVVzZDogbnVtYmVyLCByYXRlRXVyOiBudW1iZXIpOiBDb3N0QW1vdW50IHtcclxuICByZXR1cm4ge1xyXG4gICAgdXNkOiBiYXNlVXNkLFxyXG4gICAgdHJ5OiBiYXNlVXNkICogcmF0ZVVzZCxcclxuICAgIGV1cjogcmF0ZUV1ciA+IDAgPyAoYmFzZVVzZCAqIHJhdGVVc2QpIC8gcmF0ZUV1ciA6IDAsXHJcbiAgfTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRvQmFzZVVzZChcclxuICB2YWx1ZTogbnVtYmVyLFxyXG4gIGN1cnJlbmN5OiBDdXJyZW5jeSB8IHVuZGVmaW5lZCxcclxuICByYXRlVXNkOiBudW1iZXIsXHJcbiAgcmF0ZUV1cjogbnVtYmVyLFxyXG4pOiBudW1iZXIge1xyXG4gIHN3aXRjaCAoY3VycmVuY3kpIHtcclxuICAgIGNhc2UgQ3VycmVuY3kuVVNEOlxyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICBjYXNlIEN1cnJlbmN5LlRSWTpcclxuICAgICAgcmV0dXJuIHJhdGVVc2QgPD0gMCA/IDAgOiB2YWx1ZSAvIHJhdGVVc2Q7XHJcbiAgICBjYXNlIEN1cnJlbmN5LkVVUjpcclxuICAgICAgcmV0dXJuIHJhdGVVc2QgPD0gMCA/IDAgOiAodmFsdWUgKiByYXRlRXVyKSAvIHJhdGVVc2Q7XHJcbiAgICBkZWZhdWx0OlxyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgfVxyXG59XHJcbiJdfQ==
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3kudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWRvb2dsdS1rZW9wcy9zcmMvbGliL2ZlYXR1cmVzL2Nvc3QtY2FsY3VsYXRpb24vZW5naW5lL2N1cnJlbmN5LnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUd6RCxNQUFNLFVBQVUsUUFBUSxDQUFDLE9BQWUsRUFBRSxPQUFlLEVBQUUsT0FBZTtJQUN4RSxPQUFPO1FBQ0wsR0FBRyxFQUFFLE9BQU87UUFDWixHQUFHLEVBQUUsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4QyxHQUFHLEVBQUUsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUN6QyxDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSxTQUFTLENBQ3ZCLEtBQWEsRUFDYixRQUE4QixFQUM5QixPQUFlLEVBQ2YsT0FBZTtJQUVmLFFBQVEsUUFBUSxFQUFFO1FBQ2hCLEtBQUssUUFBUSxDQUFDLEdBQUc7WUFDZixPQUFPLEtBQUssQ0FBQztRQUNmLEtBQUssUUFBUSxDQUFDLEdBQUc7WUFDZixPQUFPLEtBQUssR0FBRyxPQUFPLENBQUM7UUFDekIsS0FBSyxRQUFRLENBQUMsR0FBRztZQUNmLE9BQU8sS0FBSyxHQUFHLE9BQU8sQ0FBQztRQUN6QjtZQUNFLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEN1cnJlbmN5IH0gZnJvbSAnQGhpdHNvZnQva2Fkb29nbHUta2VvcHMvcHJveHknO1xyXG5pbXBvcnQgeyBDb3N0QW1vdW50IH0gZnJvbSAnLi9tb2RlbHMnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRvQW1vdW50KGJhc2VUcnk6IG51bWJlciwgcmF0ZVVzZDogbnVtYmVyLCByYXRlRXVyOiBudW1iZXIpOiBDb3N0QW1vdW50IHtcclxuICByZXR1cm4ge1xyXG4gICAgdHJ5OiBiYXNlVHJ5LFxyXG4gICAgdXNkOiByYXRlVXNkID4gMCA/IGJhc2VUcnkgLyByYXRlVXNkIDogMCxcclxuICAgIGV1cjogcmF0ZUV1ciA+IDAgPyBiYXNlVHJ5IC8gcmF0ZUV1ciA6IDAsXHJcbiAgfTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRvQmFzZVRyeShcclxuICB2YWx1ZTogbnVtYmVyLFxyXG4gIGN1cnJlbmN5OiBDdXJyZW5jeSB8IHVuZGVmaW5lZCxcclxuICByYXRlVXNkOiBudW1iZXIsXHJcbiAgcmF0ZUV1cjogbnVtYmVyLFxyXG4pOiBudW1iZXIge1xyXG4gIHN3aXRjaCAoY3VycmVuY3kpIHtcclxuICAgIGNhc2UgQ3VycmVuY3kuVFJZOlxyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICBjYXNlIEN1cnJlbmN5LlVTRDpcclxuICAgICAgcmV0dXJuIHZhbHVlICogcmF0ZVVzZDtcclxuICAgIGNhc2UgQ3VycmVuY3kuRVVSOlxyXG4gICAgICByZXR1cm4gdmFsdWUgKiByYXRlRXVyO1xyXG4gICAgZGVmYXVsdDpcclxuICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,13 +1,13 @@
1
- import { toAmount, toBaseUsd } from './currency.utils';
1
+ import { toAmount, toBaseTry } from './currency.utils';
2
2
  import { indexItemsBySystemCode, resolveItems } from './item-resolver';
3
3
  import { buildComputedBaseByCode, buildCostStages } from './stage-builder';
4
- export function calculateLoss(rawOilUsd, resolvedItems) {
5
- return (((rawOilUsd + resolvedItems.port + resolvedItems.inspectionCustoms + resolvedItems.freight) *
4
+ export function calculateLoss(rawOilTry, resolvedItems) {
5
+ return (((rawOilTry + resolvedItems.port + resolvedItems.inspectionCustoms + resolvedItems.freight) *
6
6
  resolvedItems.lossRate) /
7
7
  100);
8
8
  }
9
- export function calculateProductionCost(rawOilUsd, resolvedItems, loss) {
10
- return (rawOilUsd +
9
+ export function calculateProductionCost(rawOilTry, resolvedItems, loss) {
10
+ return (rawOilTry +
11
11
  resolvedItems.port +
12
12
  resolvedItems.inspectionCustoms +
13
13
  resolvedItems.freight +
@@ -33,18 +33,18 @@ export function calculateTotalSalePrice(totalCost, profit) {
33
33
  }
34
34
  export function calculateCost(request) {
35
35
  const { rateUsd, rateEur } = request;
36
- const rawOilUsd = toBaseUsd(request.rawOilPrice, request.rawOilCurrency, rateUsd, rateEur);
36
+ const rawOilTry = toBaseTry(request.rawOilPrice, request.rawOilCurrency, rateUsd, rateEur);
37
37
  const itemsByCode = indexItemsBySystemCode(request.stages);
38
38
  const resolvedItems = resolveItems(itemsByCode, rateUsd, rateEur);
39
- const loss = calculateLoss(rawOilUsd, resolvedItems);
40
- const productionCost = calculateProductionCost(rawOilUsd, resolvedItems, loss);
39
+ const loss = calculateLoss(rawOilTry, resolvedItems);
40
+ const productionCost = calculateProductionCost(rawOilTry, resolvedItems, loss);
41
41
  const totalCost = calculateTotalCost(productionCost, resolvedItems);
42
42
  const profit = calculateProfit(totalCost, resolvedItems.profitRate);
43
43
  const totalSalePrice = calculateTotalSalePrice(totalCost, profit);
44
44
  const computedBaseByCode = buildComputedBaseByCode(resolvedItems, loss, profit);
45
45
  const stages = buildCostStages(request.stages, computedBaseByCode, itemsByCode, rateUsd, rateEur);
46
46
  return {
47
- rawOil: toAmount(rawOilUsd, rateUsd, rateEur),
47
+ rawOil: toAmount(rawOilTry, rateUsd, rateEur),
48
48
  stages,
49
49
  productionCost: toAmount(productionCost, rateUsd, rateEur),
50
50
  totalCost: toAmount(totalCost, rateUsd, rateEur),
@@ -52,4 +52,4 @@ export function calculateCost(request) {
52
52
  totalSalePrice: toAmount(totalSalePrice, rateUsd, rateEur),
53
53
  };
54
54
  }
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybXVsYXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWRvb2dsdS1rZW9wcy9zcmMvbGliL2ZlYXR1cmVzL2Nvc3QtY2FsY3VsYXRpb24vZW5naW5lL2Zvcm11bGFzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUczRSxNQUFNLFVBQVUsYUFBYSxDQUFDLFNBQWlCLEVBQUUsYUFBNEI7SUFDM0UsT0FBTyxDQUNMLENBQUMsQ0FBQyxTQUFTLEdBQUcsYUFBYSxDQUFDLElBQUksR0FBRyxhQUFhLENBQUMsaUJBQWlCLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQztRQUN6RixhQUFhLENBQUMsUUFBUSxDQUFDO1FBQ3pCLEdBQUcsQ0FDSixDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSx1QkFBdUIsQ0FDckMsU0FBaUIsRUFDakIsYUFBNEIsRUFDNUIsSUFBWTtJQUVaLE9BQU8sQ0FDTCxTQUFTO1FBQ1QsYUFBYSxDQUFDLElBQUk7UUFDbEIsYUFBYSxDQUFDLGlCQUFpQjtRQUMvQixhQUFhLENBQUMsT0FBTztRQUNyQixJQUFJO1FBQ0osYUFBYSxDQUFDLGdCQUFnQjtRQUM5QixhQUFhLENBQUMsb0JBQW9CO1FBQ2xDLGFBQWEsQ0FBQyx3QkFBd0IsQ0FDdkMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsY0FBc0IsRUFBRSxhQUE0QjtJQUNyRixPQUFPLENBQ0wsY0FBYztRQUNkLGFBQWEsQ0FBQyxTQUFTO1FBQ3ZCLGFBQWEsQ0FBQyxjQUFjO1FBQzVCLGFBQWEsQ0FBQyxZQUFZO1FBQzFCLGFBQWEsQ0FBQyxPQUFPO1FBQ3JCLGFBQWEsQ0FBQyxXQUFXO1FBQ3pCLGFBQWEsQ0FBQyxvQkFBb0IsQ0FDbkMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUFDLFNBQWlCLEVBQUUsVUFBa0I7SUFDbkUsT0FBTyxDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUMsR0FBRyxHQUFHLENBQUM7QUFDeEMsQ0FBQztBQUVELE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxTQUFpQixFQUFFLE1BQWM7SUFDdkUsT0FBTyxTQUFTLEdBQUcsTUFBTSxDQUFDO0FBQzVCLENBQUM7QUFFRCxNQUFNLFVBQVUsYUFBYSxDQUFDLE9BQXNCO0lBQ2xELE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsT0FBTyxDQUFDO0lBQ3JDLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxjQUFjLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzNGLE1BQU0sV0FBVyxHQUFHLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMzRCxNQUFNLGFBQWEsR0FBRyxZQUFZLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUVsRSxNQUFNLElBQUksR0FBRyxhQUFhLENBQUMsU0FBUyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ3JELE1BQU0sY0FBYyxHQUFHLHVCQUF1QixDQUFDLFNBQVMsRUFBRSxhQUFhLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0UsTUFBTSxTQUFTLEdBQUcsa0JBQWtCLENBQUMsY0FBYyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ3BFLE1BQU0sTUFBTSxHQUFHLGVBQWUsQ0FBQyxTQUFTLEVBQUUsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3BFLE1BQU0sY0FBYyxHQUFHLHVCQUF1QixDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUVsRSxNQUFNLGtCQUFrQixHQUFHLHVCQUF1QixDQUFDLGFBQWEsRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEYsTUFBTSxNQUFNLEdBQUcsZUFBZSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUVsRyxPQUFPO1FBQ0wsTUFBTSxFQUFFLFFBQVEsQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQztRQUM3QyxNQUFNO1FBQ04sY0FBYyxFQUFFLFFBQVEsQ0FBQyxjQUFjLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQztRQUMxRCxTQUFTLEVBQUUsUUFBUSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDO1FBQ2hELE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUM7UUFDMUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxjQUFjLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQztLQUMzRCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHRvQW1vdW50LCB0b0Jhc2VVc2QgfSBmcm9tICcuL2N1cnJlbmN5LnV0aWxzJztcclxuaW1wb3J0IHsgaW5kZXhJdGVtc0J5U3lzdGVtQ29kZSwgcmVzb2x2ZUl0ZW1zIH0gZnJvbSAnLi9pdGVtLXJlc29sdmVyJztcclxuaW1wb3J0IHsgYnVpbGRDb21wdXRlZEJhc2VCeUNvZGUsIGJ1aWxkQ29zdFN0YWdlcyB9IGZyb20gJy4vc3RhZ2UtYnVpbGRlcic7XHJcbmltcG9ydCB7IENvc3RSZXN1bHQsIEVuZ2luZVJlcXVlc3QsIFJlc29sdmVkSXRlbXMgfSBmcm9tICcuL21vZGVscyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2FsY3VsYXRlTG9zcyhyYXdPaWxVc2Q6IG51bWJlciwgcmVzb2x2ZWRJdGVtczogUmVzb2x2ZWRJdGVtcyk6IG51bWJlciB7XHJcbiAgcmV0dXJuIChcclxuICAgICgocmF3T2lsVXNkICsgcmVzb2x2ZWRJdGVtcy5wb3J0ICsgcmVzb2x2ZWRJdGVtcy5pbnNwZWN0aW9uQ3VzdG9tcyArIHJlc29sdmVkSXRlbXMuZnJlaWdodCkgKlxyXG4gICAgICByZXNvbHZlZEl0ZW1zLmxvc3NSYXRlKSAvXHJcbiAgICAxMDBcclxuICApO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2FsY3VsYXRlUHJvZHVjdGlvbkNvc3QoXHJcbiAgcmF3T2lsVXNkOiBudW1iZXIsXHJcbiAgcmVzb2x2ZWRJdGVtczogUmVzb2x2ZWRJdGVtcyxcclxuICBsb3NzOiBudW1iZXIsXHJcbik6IG51bWJlciB7XHJcbiAgcmV0dXJuIChcclxuICAgIHJhd09pbFVzZCArXHJcbiAgICByZXNvbHZlZEl0ZW1zLnBvcnQgK1xyXG4gICAgcmVzb2x2ZWRJdGVtcy5pbnNwZWN0aW9uQ3VzdG9tcyArXHJcbiAgICByZXNvbHZlZEl0ZW1zLmZyZWlnaHQgK1xyXG4gICAgbG9zcyArXHJcbiAgICByZXNvbHZlZEl0ZW1zLnJlZmluZXJ5T3ZlcmhlYWQgK1xyXG4gICAgcmVzb2x2ZWRJdGVtcy5yZWZpbmVyeUF1eE1hdGVyaWFscyArXHJcbiAgICByZXNvbHZlZEl0ZW1zLmZpbGxpbmdQYWNrYWdpbmdPdmVyaGVhZFxyXG4gICk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVUb3RhbENvc3QocHJvZHVjdGlvbkNvc3Q6IG51bWJlciwgcmVzb2x2ZWRJdGVtczogUmVzb2x2ZWRJdGVtcyk6IG51bWJlciB7XHJcbiAgcmV0dXJuIChcclxuICAgIHByb2R1Y3Rpb25Db3N0ICtcclxuICAgIHJlc29sdmVkSXRlbXMucGFja2FnaW5nICtcclxuICAgIHJlc29sdmVkSXRlbXMuc2FsZXNNYXJrZXRpbmcgK1xyXG4gICAgcmVzb2x2ZWRJdGVtcy5nZW5lcmFsQWRtaW4gK1xyXG4gICAgcmVzb2x2ZWRJdGVtcy5maW5hbmNlICtcclxuICAgIHJlc29sdmVkSXRlbXMuY29udGluZ2VuY3kgK1xyXG4gICAgcmVzb2x2ZWRJdGVtcy52YXJpYWJsZURlcHJlY2lhdGlvblxyXG4gICk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVQcm9maXQodG90YWxDb3N0OiBudW1iZXIsIHByb2ZpdFJhdGU6IG51bWJlcik6IG51bWJlciB7XHJcbiAgcmV0dXJuICh0b3RhbENvc3QgKiBwcm9maXRSYXRlKSAvIDEwMDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZVRvdGFsU2FsZVByaWNlKHRvdGFsQ29zdDogbnVtYmVyLCBwcm9maXQ6IG51bWJlcik6IG51bWJlciB7XHJcbiAgcmV0dXJuIHRvdGFsQ29zdCArIHByb2ZpdDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZUNvc3QocmVxdWVzdDogRW5naW5lUmVxdWVzdCk6IENvc3RSZXN1bHQge1xyXG4gIGNvbnN0IHsgcmF0ZVVzZCwgcmF0ZUV1ciB9ID0gcmVxdWVzdDtcclxuICBjb25zdCByYXdPaWxVc2QgPSB0b0Jhc2VVc2QocmVxdWVzdC5yYXdPaWxQcmljZSwgcmVxdWVzdC5yYXdPaWxDdXJyZW5jeSwgcmF0ZVVzZCwgcmF0ZUV1cik7XHJcbiAgY29uc3QgaXRlbXNCeUNvZGUgPSBpbmRleEl0ZW1zQnlTeXN0ZW1Db2RlKHJlcXVlc3Quc3RhZ2VzKTtcclxuICBjb25zdCByZXNvbHZlZEl0ZW1zID0gcmVzb2x2ZUl0ZW1zKGl0ZW1zQnlDb2RlLCByYXRlVXNkLCByYXRlRXVyKTtcclxuXHJcbiAgY29uc3QgbG9zcyA9IGNhbGN1bGF0ZUxvc3MocmF3T2lsVXNkLCByZXNvbHZlZEl0ZW1zKTtcclxuICBjb25zdCBwcm9kdWN0aW9uQ29zdCA9IGNhbGN1bGF0ZVByb2R1Y3Rpb25Db3N0KHJhd09pbFVzZCwgcmVzb2x2ZWRJdGVtcywgbG9zcyk7XHJcbiAgY29uc3QgdG90YWxDb3N0ID0gY2FsY3VsYXRlVG90YWxDb3N0KHByb2R1Y3Rpb25Db3N0LCByZXNvbHZlZEl0ZW1zKTtcclxuICBjb25zdCBwcm9maXQgPSBjYWxjdWxhdGVQcm9maXQodG90YWxDb3N0LCByZXNvbHZlZEl0ZW1zLnByb2ZpdFJhdGUpO1xyXG4gIGNvbnN0IHRvdGFsU2FsZVByaWNlID0gY2FsY3VsYXRlVG90YWxTYWxlUHJpY2UodG90YWxDb3N0LCBwcm9maXQpO1xyXG5cclxuICBjb25zdCBjb21wdXRlZEJhc2VCeUNvZGUgPSBidWlsZENvbXB1dGVkQmFzZUJ5Q29kZShyZXNvbHZlZEl0ZW1zLCBsb3NzLCBwcm9maXQpO1xyXG4gIGNvbnN0IHN0YWdlcyA9IGJ1aWxkQ29zdFN0YWdlcyhyZXF1ZXN0LnN0YWdlcywgY29tcHV0ZWRCYXNlQnlDb2RlLCBpdGVtc0J5Q29kZSwgcmF0ZVVzZCwgcmF0ZUV1cik7XHJcblxyXG4gIHJldHVybiB7XHJcbiAgICByYXdPaWw6IHRvQW1vdW50KHJhd09pbFVzZCwgcmF0ZVVzZCwgcmF0ZUV1ciksXHJcbiAgICBzdGFnZXMsXHJcbiAgICBwcm9kdWN0aW9uQ29zdDogdG9BbW91bnQocHJvZHVjdGlvbkNvc3QsIHJhdGVVc2QsIHJhdGVFdXIpLFxyXG4gICAgdG90YWxDb3N0OiB0b0Ftb3VudCh0b3RhbENvc3QsIHJhdGVVc2QsIHJhdGVFdXIpLFxyXG4gICAgcHJvZml0OiB0b0Ftb3VudChwcm9maXQsIHJhdGVVc2QsIHJhdGVFdXIpLFxyXG4gICAgdG90YWxTYWxlUHJpY2U6IHRvQW1vdW50KHRvdGFsU2FsZVByaWNlLCByYXRlVXNkLCByYXRlRXVyKSxcclxuICB9O1xyXG59XHJcbiJdfQ==
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybXVsYXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rYWRvb2dsdS1rZW9wcy9zcmMvbGliL2ZlYXR1cmVzL2Nvc3QtY2FsY3VsYXRpb24vZW5naW5lL2Zvcm11bGFzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUczRSxNQUFNLFVBQVUsYUFBYSxDQUFDLFNBQWlCLEVBQUUsYUFBNEI7SUFDM0UsT0FBTyxDQUNMLENBQUMsQ0FBQyxTQUFTLEdBQUcsYUFBYSxDQUFDLElBQUksR0FBRyxhQUFhLENBQUMsaUJBQWlCLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQztRQUN6RixhQUFhLENBQUMsUUFBUSxDQUFDO1FBQ3pCLEdBQUcsQ0FDSixDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSx1QkFBdUIsQ0FDckMsU0FBaUIsRUFDakIsYUFBNEIsRUFDNUIsSUFBWTtJQUVaLE9BQU8sQ0FDTCxTQUFTO1FBQ1QsYUFBYSxDQUFDLElBQUk7UUFDbEIsYUFBYSxDQUFDLGlCQUFpQjtRQUMvQixhQUFhLENBQUMsT0FBTztRQUNyQixJQUFJO1FBQ0osYUFBYSxDQUFDLGdCQUFnQjtRQUM5QixhQUFhLENBQUMsb0JBQW9CO1FBQ2xDLGFBQWEsQ0FBQyx3QkFBd0IsQ0FDdkMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsY0FBc0IsRUFBRSxhQUE0QjtJQUNyRixPQUFPLENBQ0wsY0FBYztRQUNkLGFBQWEsQ0FBQyxTQUFTO1FBQ3ZCLGFBQWEsQ0FBQyxjQUFjO1FBQzVCLGFBQWEsQ0FBQyxZQUFZO1FBQzFCLGFBQWEsQ0FBQyxPQUFPO1FBQ3JCLGFBQWEsQ0FBQyxXQUFXO1FBQ3pCLGFBQWEsQ0FBQyxvQkFBb0IsQ0FDbkMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUFDLFNBQWlCLEVBQUUsVUFBa0I7SUFDbkUsT0FBTyxDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUMsR0FBRyxHQUFHLENBQUM7QUFDeEMsQ0FBQztBQUVELE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxTQUFpQixFQUFFLE1BQWM7SUFDdkUsT0FBTyxTQUFTLEdBQUcsTUFBTSxDQUFDO0FBQzVCLENBQUM7QUFFRCxNQUFNLFVBQVUsYUFBYSxDQUFDLE9BQXNCO0lBQ2xELE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsT0FBTyxDQUFDO0lBQ3JDLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxjQUFjLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzNGLE1BQU0sV0FBVyxHQUFHLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMzRCxNQUFNLGFBQWEsR0FBRyxZQUFZLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUVsRSxNQUFNLElBQUksR0FBRyxhQUFhLENBQUMsU0FBUyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ3JELE1BQU0sY0FBYyxHQUFHLHVCQUF1QixDQUFDLFNBQVMsRUFBRSxhQUFhLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0UsTUFBTSxTQUFTLEdBQUcsa0JBQWtCLENBQUMsY0FBYyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ3BFLE1BQU0sTUFBTSxHQUFHLGVBQWUsQ0FBQyxTQUFTLEVBQUUsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3BFLE1BQU0sY0FBYyxHQUFHLHVCQUF1QixDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUVsRSxNQUFNLGtCQUFrQixHQUFHLHVCQUF1QixDQUFDLGFBQWEsRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEYsTUFBTSxNQUFNLEdBQUcsZUFBZSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUVsRyxPQUFPO1FBQ0wsTUFBTSxFQUFFLFFBQVEsQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQztRQUM3QyxNQUFNO1FBQ04sY0FBYyxFQUFFLFFBQVEsQ0FBQyxjQUFjLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQztRQUMxRCxTQUFTLEVBQUUsUUFBUSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDO1FBQ2hELE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUM7UUFDMUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxjQUFjLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQztLQUMzRCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHRvQW1vdW50LCB0b0Jhc2VUcnkgfSBmcm9tICcuL2N1cnJlbmN5LnV0aWxzJztcclxuaW1wb3J0IHsgaW5kZXhJdGVtc0J5U3lzdGVtQ29kZSwgcmVzb2x2ZUl0ZW1zIH0gZnJvbSAnLi9pdGVtLXJlc29sdmVyJztcclxuaW1wb3J0IHsgYnVpbGRDb21wdXRlZEJhc2VCeUNvZGUsIGJ1aWxkQ29zdFN0YWdlcyB9IGZyb20gJy4vc3RhZ2UtYnVpbGRlcic7XHJcbmltcG9ydCB7IENvc3RSZXN1bHQsIEVuZ2luZVJlcXVlc3QsIFJlc29sdmVkSXRlbXMgfSBmcm9tICcuL21vZGVscyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2FsY3VsYXRlTG9zcyhyYXdPaWxUcnk6IG51bWJlciwgcmVzb2x2ZWRJdGVtczogUmVzb2x2ZWRJdGVtcyk6IG51bWJlciB7XHJcbiAgcmV0dXJuIChcclxuICAgICgocmF3T2lsVHJ5ICsgcmVzb2x2ZWRJdGVtcy5wb3J0ICsgcmVzb2x2ZWRJdGVtcy5pbnNwZWN0aW9uQ3VzdG9tcyArIHJlc29sdmVkSXRlbXMuZnJlaWdodCkgKlxyXG4gICAgICByZXNvbHZlZEl0ZW1zLmxvc3NSYXRlKSAvXHJcbiAgICAxMDBcclxuICApO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2FsY3VsYXRlUHJvZHVjdGlvbkNvc3QoXHJcbiAgcmF3T2lsVHJ5OiBudW1iZXIsXHJcbiAgcmVzb2x2ZWRJdGVtczogUmVzb2x2ZWRJdGVtcyxcclxuICBsb3NzOiBudW1iZXIsXHJcbik6IG51bWJlciB7XHJcbiAgcmV0dXJuIChcclxuICAgIHJhd09pbFRyeSArXHJcbiAgICByZXNvbHZlZEl0ZW1zLnBvcnQgK1xyXG4gICAgcmVzb2x2ZWRJdGVtcy5pbnNwZWN0aW9uQ3VzdG9tcyArXHJcbiAgICByZXNvbHZlZEl0ZW1zLmZyZWlnaHQgK1xyXG4gICAgbG9zcyArXHJcbiAgICByZXNvbHZlZEl0ZW1zLnJlZmluZXJ5T3ZlcmhlYWQgK1xyXG4gICAgcmVzb2x2ZWRJdGVtcy5yZWZpbmVyeUF1eE1hdGVyaWFscyArXHJcbiAgICByZXNvbHZlZEl0ZW1zLmZpbGxpbmdQYWNrYWdpbmdPdmVyaGVhZFxyXG4gICk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVUb3RhbENvc3QocHJvZHVjdGlvbkNvc3Q6IG51bWJlciwgcmVzb2x2ZWRJdGVtczogUmVzb2x2ZWRJdGVtcyk6IG51bWJlciB7XHJcbiAgcmV0dXJuIChcclxuICAgIHByb2R1Y3Rpb25Db3N0ICtcclxuICAgIHJlc29sdmVkSXRlbXMucGFja2FnaW5nICtcclxuICAgIHJlc29sdmVkSXRlbXMuc2FsZXNNYXJrZXRpbmcgK1xyXG4gICAgcmVzb2x2ZWRJdGVtcy5nZW5lcmFsQWRtaW4gK1xyXG4gICAgcmVzb2x2ZWRJdGVtcy5maW5hbmNlICtcclxuICAgIHJlc29sdmVkSXRlbXMuY29udGluZ2VuY3kgK1xyXG4gICAgcmVzb2x2ZWRJdGVtcy52YXJpYWJsZURlcHJlY2lhdGlvblxyXG4gICk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjYWxjdWxhdGVQcm9maXQodG90YWxDb3N0OiBudW1iZXIsIHByb2ZpdFJhdGU6IG51bWJlcik6IG51bWJlciB7XHJcbiAgcmV0dXJuICh0b3RhbENvc3QgKiBwcm9maXRSYXRlKSAvIDEwMDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZVRvdGFsU2FsZVByaWNlKHRvdGFsQ29zdDogbnVtYmVyLCBwcm9maXQ6IG51bWJlcik6IG51bWJlciB7XHJcbiAgcmV0dXJuIHRvdGFsQ29zdCArIHByb2ZpdDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZUNvc3QocmVxdWVzdDogRW5naW5lUmVxdWVzdCk6IENvc3RSZXN1bHQge1xyXG4gIGNvbnN0IHsgcmF0ZVVzZCwgcmF0ZUV1ciB9ID0gcmVxdWVzdDtcclxuICBjb25zdCByYXdPaWxUcnkgPSB0b0Jhc2VUcnkocmVxdWVzdC5yYXdPaWxQcmljZSwgcmVxdWVzdC5yYXdPaWxDdXJyZW5jeSwgcmF0ZVVzZCwgcmF0ZUV1cik7XHJcbiAgY29uc3QgaXRlbXNCeUNvZGUgPSBpbmRleEl0ZW1zQnlTeXN0ZW1Db2RlKHJlcXVlc3Quc3RhZ2VzKTtcclxuICBjb25zdCByZXNvbHZlZEl0ZW1zID0gcmVzb2x2ZUl0ZW1zKGl0ZW1zQnlDb2RlLCByYXRlVXNkLCByYXRlRXVyKTtcclxuXHJcbiAgY29uc3QgbG9zcyA9IGNhbGN1bGF0ZUxvc3MocmF3T2lsVHJ5LCByZXNvbHZlZEl0ZW1zKTtcclxuICBjb25zdCBwcm9kdWN0aW9uQ29zdCA9IGNhbGN1bGF0ZVByb2R1Y3Rpb25Db3N0KHJhd09pbFRyeSwgcmVzb2x2ZWRJdGVtcywgbG9zcyk7XHJcbiAgY29uc3QgdG90YWxDb3N0ID0gY2FsY3VsYXRlVG90YWxDb3N0KHByb2R1Y3Rpb25Db3N0LCByZXNvbHZlZEl0ZW1zKTtcclxuICBjb25zdCBwcm9maXQgPSBjYWxjdWxhdGVQcm9maXQodG90YWxDb3N0LCByZXNvbHZlZEl0ZW1zLnByb2ZpdFJhdGUpO1xyXG4gIGNvbnN0IHRvdGFsU2FsZVByaWNlID0gY2FsY3VsYXRlVG90YWxTYWxlUHJpY2UodG90YWxDb3N0LCBwcm9maXQpO1xyXG5cclxuICBjb25zdCBjb21wdXRlZEJhc2VCeUNvZGUgPSBidWlsZENvbXB1dGVkQmFzZUJ5Q29kZShyZXNvbHZlZEl0ZW1zLCBsb3NzLCBwcm9maXQpO1xyXG4gIGNvbnN0IHN0YWdlcyA9IGJ1aWxkQ29zdFN0YWdlcyhyZXF1ZXN0LnN0YWdlcywgY29tcHV0ZWRCYXNlQnlDb2RlLCBpdGVtc0J5Q29kZSwgcmF0ZVVzZCwgcmF0ZUV1cik7XHJcblxyXG4gIHJldHVybiB7XHJcbiAgICByYXdPaWw6IHRvQW1vdW50KHJhd09pbFRyeSwgcmF0ZVVzZCwgcmF0ZUV1ciksXHJcbiAgICBzdGFnZXMsXHJcbiAgICBwcm9kdWN0aW9uQ29zdDogdG9BbW91bnQocHJvZHVjdGlvbkNvc3QsIHJhdGVVc2QsIHJhdGVFdXIpLFxyXG4gICAgdG90YWxDb3N0OiB0b0Ftb3VudCh0b3RhbENvc3QsIHJhdGVVc2QsIHJhdGVFdXIpLFxyXG4gICAgcHJvZml0OiB0b0Ftb3VudChwcm9maXQsIHJhdGVVc2QsIHJhdGVFdXIpLFxyXG4gICAgdG90YWxTYWxlUHJpY2U6IHRvQW1vdW50KHRvdGFsU2FsZVByaWNlLCByYXRlVXNkLCByYXRlRXVyKSxcclxuICB9O1xyXG59XHJcbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  import { CostItemSystemCode } from '@hitsoft/kadooglu-keops/proxy';
2
2
  import { parseDecimal } from '../../../utils/number.utils';
3
- import { toBaseUsd } from './currency.utils';
3
+ import { toBaseTry } from './currency.utils';
4
4
  export function indexItemsBySystemCode(stages) {
5
5
  const map = new Map();
6
6
  for (const stage of stages) {
@@ -13,26 +13,26 @@ export function indexItemsBySystemCode(stages) {
13
13
  return map;
14
14
  }
15
15
  export function resolveItems(itemsByCode, rateUsd, rateEur) {
16
- const baseUsd = (code) => {
16
+ const baseTry = (code) => {
17
17
  const item = itemsByCode.get(code);
18
- return item ? toBaseUsd(parseDecimal(item.value), item.currency, rateUsd, rateEur) : 0;
18
+ return item ? toBaseTry(parseDecimal(item.value), item.currency, rateUsd, rateEur) : 0;
19
19
  };
20
20
  const ratePercent = (code) => parseDecimal(itemsByCode.get(code)?.value ?? 0);
21
21
  return {
22
- port: baseUsd(CostItemSystemCode.Port),
23
- inspectionCustoms: baseUsd(CostItemSystemCode.InspectionCustoms),
24
- freight: baseUsd(CostItemSystemCode.Freight),
22
+ port: baseTry(CostItemSystemCode.Port),
23
+ inspectionCustoms: baseTry(CostItemSystemCode.InspectionCustoms),
24
+ freight: baseTry(CostItemSystemCode.Freight),
25
25
  lossRate: ratePercent(CostItemSystemCode.Loss),
26
- refineryOverhead: baseUsd(CostItemSystemCode.RefineryOverhead),
27
- refineryAuxMaterials: baseUsd(CostItemSystemCode.RefineryAuxMaterials),
28
- fillingPackagingOverhead: baseUsd(CostItemSystemCode.FillingPackagingOverhead),
29
- packaging: baseUsd(CostItemSystemCode.Packaging),
30
- salesMarketing: baseUsd(CostItemSystemCode.SalesMarketing),
31
- generalAdmin: baseUsd(CostItemSystemCode.GeneralAdmin),
32
- finance: baseUsd(CostItemSystemCode.Finance),
33
- contingency: baseUsd(CostItemSystemCode.Contingency),
34
- variableDepreciation: baseUsd(CostItemSystemCode.VariableDepreciation),
26
+ refineryOverhead: baseTry(CostItemSystemCode.RefineryOverhead),
27
+ refineryAuxMaterials: baseTry(CostItemSystemCode.RefineryAuxMaterials),
28
+ fillingPackagingOverhead: baseTry(CostItemSystemCode.FillingPackagingOverhead),
29
+ packaging: baseTry(CostItemSystemCode.Packaging),
30
+ salesMarketing: baseTry(CostItemSystemCode.SalesMarketing),
31
+ generalAdmin: baseTry(CostItemSystemCode.GeneralAdmin),
32
+ finance: baseTry(CostItemSystemCode.Finance),
33
+ contingency: baseTry(CostItemSystemCode.Contingency),
34
+ variableDepreciation: baseTry(CostItemSystemCode.VariableDepreciation),
35
35
  profitRate: ratePercent(CostItemSystemCode.ProfitRate),
36
36
  };
37
37
  }
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS1yZXNvbHZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2thZG9vZ2x1LWtlb3BzL3NyYy9saWIvZmVhdHVyZXMvY29zdC1jYWxjdWxhdGlvbi9lbmdpbmUvaXRlbS1yZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRzdDLE1BQU0sVUFBVSxzQkFBc0IsQ0FDcEMsTUFBOEI7SUFFOUIsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLEVBQStCLENBQUM7SUFDbkQsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLEVBQUU7UUFDMUIsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFO1lBQzlCLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLEVBQUU7Z0JBQzNCLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQzthQUNoQztTQUNGO0tBQ0Y7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUMxQixXQUE2QyxFQUM3QyxPQUFlLEVBQ2YsT0FBZTtJQUVmLE1BQU0sT0FBTyxHQUFHLENBQUMsSUFBd0IsRUFBVSxFQUFFO1FBQ25ELE1BQU0sSUFBSSxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQyxDQUFDO0lBQ0YsTUFBTSxXQUFXLEdBQUcsQ0FBQyxJQUF3QixFQUFVLEVBQUUsQ0FDdkQsWUFBWSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBRWxELE9BQU87UUFDTCxJQUFJLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQztRQUN0QyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUM7UUFDaEUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUM7UUFDNUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7UUFDOUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDO1FBQzlELG9CQUFvQixFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQztRQUN0RSx3QkFBd0IsRUFBRSxPQUFPLENBQUMsa0JBQWtCLENBQUMsd0JBQXdCLENBQUM7UUFDOUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUM7UUFDaEQsY0FBYyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUM7UUFDMUQsWUFBWSxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUM7UUFDdEQsT0FBTyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUM7UUFDNUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUM7UUFDcEQsb0JBQW9CLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDO1FBQ3RFLFVBQVUsRUFBRSxXQUFXLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDO0tBQ3ZELENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29zdEl0ZW1TeXN0ZW1Db2RlIH0gZnJvbSAnQGhpdHNvZnQva2Fkb29nbHUta2VvcHMvcHJveHknO1xyXG5pbXBvcnQgeyBwYXJzZURlY2ltYWwgfSBmcm9tICcuLi8uLi8uLi91dGlscy9udW1iZXIudXRpbHMnO1xyXG5pbXBvcnQgeyBDb3N0Q2FsY3VsYXRpb25JdGVtLCBDb3N0Q2FsY3VsYXRpb25TdGFnZSB9IGZyb20gJy4uL2Nvc3QtY2FsY3VsYXRpb24ubW9kZWxzJztcclxuaW1wb3J0IHsgdG9CYXNlVXNkIH0gZnJvbSAnLi9jdXJyZW5jeS51dGlscyc7XHJcbmltcG9ydCB7IFJlc29sdmVkSXRlbXMgfSBmcm9tICcuL21vZGVscyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaW5kZXhJdGVtc0J5U3lzdGVtQ29kZShcclxuICBzdGFnZXM6IENvc3RDYWxjdWxhdGlvblN0YWdlW10sXHJcbik6IE1hcDxudW1iZXIsIENvc3RDYWxjdWxhdGlvbkl0ZW0+IHtcclxuICBjb25zdCBtYXAgPSBuZXcgTWFwPG51bWJlciwgQ29zdENhbGN1bGF0aW9uSXRlbT4oKTtcclxuICBmb3IgKGNvbnN0IHN0YWdlIG9mIHN0YWdlcykge1xyXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIHN0YWdlLml0ZW1zKSB7XHJcbiAgICAgIGlmIChpdGVtLnN5c3RlbUNvZGUgIT0gbnVsbCkge1xyXG4gICAgICAgIG1hcC5zZXQoaXRlbS5zeXN0ZW1Db2RlLCBpdGVtKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gbWFwO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZUl0ZW1zKFxyXG4gIGl0ZW1zQnlDb2RlOiBNYXA8bnVtYmVyLCBDb3N0Q2FsY3VsYXRpb25JdGVtPixcclxuICByYXRlVXNkOiBudW1iZXIsXHJcbiAgcmF0ZUV1cjogbnVtYmVyLFxyXG4pOiBSZXNvbHZlZEl0ZW1zIHtcclxuICBjb25zdCBiYXNlVXNkID0gKGNvZGU6IENvc3RJdGVtU3lzdGVtQ29kZSk6IG51bWJlciA9PiB7XHJcbiAgICBjb25zdCBpdGVtID0gaXRlbXNCeUNvZGUuZ2V0KGNvZGUpO1xyXG4gICAgcmV0dXJuIGl0ZW0gPyB0b0Jhc2VVc2QocGFyc2VEZWNpbWFsKGl0ZW0udmFsdWUpLCBpdGVtLmN1cnJlbmN5LCByYXRlVXNkLCByYXRlRXVyKSA6IDA7XHJcbiAgfTtcclxuICBjb25zdCByYXRlUGVyY2VudCA9IChjb2RlOiBDb3N0SXRlbVN5c3RlbUNvZGUpOiBudW1iZXIgPT5cclxuICAgIHBhcnNlRGVjaW1hbChpdGVtc0J5Q29kZS5nZXQoY29kZSk/LnZhbHVlID8/IDApO1xyXG5cclxuICByZXR1cm4ge1xyXG4gICAgcG9ydDogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuUG9ydCksXHJcbiAgICBpbnNwZWN0aW9uQ3VzdG9tczogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuSW5zcGVjdGlvbkN1c3RvbXMpLFxyXG4gICAgZnJlaWdodDogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuRnJlaWdodCksXHJcbiAgICBsb3NzUmF0ZTogcmF0ZVBlcmNlbnQoQ29zdEl0ZW1TeXN0ZW1Db2RlLkxvc3MpLFxyXG4gICAgcmVmaW5lcnlPdmVyaGVhZDogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuUmVmaW5lcnlPdmVyaGVhZCksXHJcbiAgICByZWZpbmVyeUF1eE1hdGVyaWFsczogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuUmVmaW5lcnlBdXhNYXRlcmlhbHMpLFxyXG4gICAgZmlsbGluZ1BhY2thZ2luZ092ZXJoZWFkOiBiYXNlVXNkKENvc3RJdGVtU3lzdGVtQ29kZS5GaWxsaW5nUGFja2FnaW5nT3ZlcmhlYWQpLFxyXG4gICAgcGFja2FnaW5nOiBiYXNlVXNkKENvc3RJdGVtU3lzdGVtQ29kZS5QYWNrYWdpbmcpLFxyXG4gICAgc2FsZXNNYXJrZXRpbmc6IGJhc2VVc2QoQ29zdEl0ZW1TeXN0ZW1Db2RlLlNhbGVzTWFya2V0aW5nKSxcclxuICAgIGdlbmVyYWxBZG1pbjogYmFzZVVzZChDb3N0SXRlbVN5c3RlbUNvZGUuR2VuZXJhbEFkbWluKSxcclxuICAgIGZpbmFuY2U6IGJhc2VVc2QoQ29zdEl0ZW1TeXN0ZW1Db2RlLkZpbmFuY2UpLFxyXG4gICAgY29udGluZ2VuY3k6IGJhc2VVc2QoQ29zdEl0ZW1TeXN0ZW1Db2RlLkNvbnRpbmdlbmN5KSxcclxuICAgIHZhcmlhYmxlRGVwcmVjaWF0aW9uOiBiYXNlVXNkKENvc3RJdGVtU3lzdGVtQ29kZS5WYXJpYWJsZURlcHJlY2lhdGlvbiksXHJcbiAgICBwcm9maXRSYXRlOiByYXRlUGVyY2VudChDb3N0SXRlbVN5c3RlbUNvZGUuUHJvZml0UmF0ZSksXHJcbiAgfTtcclxufVxyXG4iXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS1yZXNvbHZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2thZG9vZ2x1LWtlb3BzL3NyYy9saWIvZmVhdHVyZXMvY29zdC1jYWxjdWxhdGlvbi9lbmdpbmUvaXRlbS1yZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRzdDLE1BQU0sVUFBVSxzQkFBc0IsQ0FDcEMsTUFBOEI7SUFFOUIsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLEVBQStCLENBQUM7SUFDbkQsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLEVBQUU7UUFDMUIsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFO1lBQzlCLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLEVBQUU7Z0JBQzNCLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQzthQUNoQztTQUNGO0tBQ0Y7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUMxQixXQUE2QyxFQUM3QyxPQUFlLEVBQ2YsT0FBZTtJQUVmLE1BQU0sT0FBTyxHQUFHLENBQUMsSUFBd0IsRUFBVSxFQUFFO1FBQ25ELE1BQU0sSUFBSSxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQyxDQUFDO0lBQ0YsTUFBTSxXQUFXLEdBQUcsQ0FBQyxJQUF3QixFQUFVLEVBQUUsQ0FDdkQsWUFBWSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBRWxELE9BQU87UUFDTCxJQUFJLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQztRQUN0QyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUM7UUFDaEUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUM7UUFDNUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7UUFDOUMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDO1FBQzlELG9CQUFvQixFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQztRQUN0RSx3QkFBd0IsRUFBRSxPQUFPLENBQUMsa0JBQWtCLENBQUMsd0JBQXdCLENBQUM7UUFDOUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUM7UUFDaEQsY0FBYyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUM7UUFDMUQsWUFBWSxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUM7UUFDdEQsT0FBTyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUM7UUFDNUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUM7UUFDcEQsb0JBQW9CLEVBQUUsT0FBTyxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDO1FBQ3RFLFVBQVUsRUFBRSxXQUFXLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDO0tBQ3ZELENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29zdEl0ZW1TeXN0ZW1Db2RlIH0gZnJvbSAnQGhpdHNvZnQva2Fkb29nbHUta2VvcHMvcHJveHknO1xyXG5pbXBvcnQgeyBwYXJzZURlY2ltYWwgfSBmcm9tICcuLi8uLi8uLi91dGlscy9udW1iZXIudXRpbHMnO1xyXG5pbXBvcnQgeyBDb3N0Q2FsY3VsYXRpb25JdGVtLCBDb3N0Q2FsY3VsYXRpb25TdGFnZSB9IGZyb20gJy4uL2Nvc3QtY2FsY3VsYXRpb24ubW9kZWxzJztcclxuaW1wb3J0IHsgdG9CYXNlVHJ5IH0gZnJvbSAnLi9jdXJyZW5jeS51dGlscyc7XHJcbmltcG9ydCB7IFJlc29sdmVkSXRlbXMgfSBmcm9tICcuL21vZGVscyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaW5kZXhJdGVtc0J5U3lzdGVtQ29kZShcclxuICBzdGFnZXM6IENvc3RDYWxjdWxhdGlvblN0YWdlW10sXHJcbik6IE1hcDxudW1iZXIsIENvc3RDYWxjdWxhdGlvbkl0ZW0+IHtcclxuICBjb25zdCBtYXAgPSBuZXcgTWFwPG51bWJlciwgQ29zdENhbGN1bGF0aW9uSXRlbT4oKTtcclxuICBmb3IgKGNvbnN0IHN0YWdlIG9mIHN0YWdlcykge1xyXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIHN0YWdlLml0ZW1zKSB7XHJcbiAgICAgIGlmIChpdGVtLnN5c3RlbUNvZGUgIT0gbnVsbCkge1xyXG4gICAgICAgIG1hcC5zZXQoaXRlbS5zeXN0ZW1Db2RlLCBpdGVtKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gbWFwO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZUl0ZW1zKFxyXG4gIGl0ZW1zQnlDb2RlOiBNYXA8bnVtYmVyLCBDb3N0Q2FsY3VsYXRpb25JdGVtPixcclxuICByYXRlVXNkOiBudW1iZXIsXHJcbiAgcmF0ZUV1cjogbnVtYmVyLFxyXG4pOiBSZXNvbHZlZEl0ZW1zIHtcclxuICBjb25zdCBiYXNlVHJ5ID0gKGNvZGU6IENvc3RJdGVtU3lzdGVtQ29kZSk6IG51bWJlciA9PiB7XHJcbiAgICBjb25zdCBpdGVtID0gaXRlbXNCeUNvZGUuZ2V0KGNvZGUpO1xyXG4gICAgcmV0dXJuIGl0ZW0gPyB0b0Jhc2VUcnkocGFyc2VEZWNpbWFsKGl0ZW0udmFsdWUpLCBpdGVtLmN1cnJlbmN5LCByYXRlVXNkLCByYXRlRXVyKSA6IDA7XHJcbiAgfTtcclxuICBjb25zdCByYXRlUGVyY2VudCA9IChjb2RlOiBDb3N0SXRlbVN5c3RlbUNvZGUpOiBudW1iZXIgPT5cclxuICAgIHBhcnNlRGVjaW1hbChpdGVtc0J5Q29kZS5nZXQoY29kZSk/LnZhbHVlID8/IDApO1xyXG5cclxuICByZXR1cm4ge1xyXG4gICAgcG9ydDogYmFzZVRyeShDb3N0SXRlbVN5c3RlbUNvZGUuUG9ydCksXHJcbiAgICBpbnNwZWN0aW9uQ3VzdG9tczogYmFzZVRyeShDb3N0SXRlbVN5c3RlbUNvZGUuSW5zcGVjdGlvbkN1c3RvbXMpLFxyXG4gICAgZnJlaWdodDogYmFzZVRyeShDb3N0SXRlbVN5c3RlbUNvZGUuRnJlaWdodCksXHJcbiAgICBsb3NzUmF0ZTogcmF0ZVBlcmNlbnQoQ29zdEl0ZW1TeXN0ZW1Db2RlLkxvc3MpLFxyXG4gICAgcmVmaW5lcnlPdmVyaGVhZDogYmFzZVRyeShDb3N0SXRlbVN5c3RlbUNvZGUuUmVmaW5lcnlPdmVyaGVhZCksXHJcbiAgICByZWZpbmVyeUF1eE1hdGVyaWFsczogYmFzZVRyeShDb3N0SXRlbVN5c3RlbUNvZGUuUmVmaW5lcnlBdXhNYXRlcmlhbHMpLFxyXG4gICAgZmlsbGluZ1BhY2thZ2luZ092ZXJoZWFkOiBiYXNlVHJ5KENvc3RJdGVtU3lzdGVtQ29kZS5GaWxsaW5nUGFja2FnaW5nT3ZlcmhlYWQpLFxyXG4gICAgcGFja2FnaW5nOiBiYXNlVHJ5KENvc3RJdGVtU3lzdGVtQ29kZS5QYWNrYWdpbmcpLFxyXG4gICAgc2FsZXNNYXJrZXRpbmc6IGJhc2VUcnkoQ29zdEl0ZW1TeXN0ZW1Db2RlLlNhbGVzTWFya2V0aW5nKSxcclxuICAgIGdlbmVyYWxBZG1pbjogYmFzZVRyeShDb3N0SXRlbVN5c3RlbUNvZGUuR2VuZXJhbEFkbWluKSxcclxuICAgIGZpbmFuY2U6IGJhc2VUcnkoQ29zdEl0ZW1TeXN0ZW1Db2RlLkZpbmFuY2UpLFxyXG4gICAgY29udGluZ2VuY3k6IGJhc2VUcnkoQ29zdEl0ZW1TeXN0ZW1Db2RlLkNvbnRpbmdlbmN5KSxcclxuICAgIHZhcmlhYmxlRGVwcmVjaWF0aW9uOiBiYXNlVHJ5KENvc3RJdGVtU3lzdGVtQ29kZS5WYXJpYWJsZURlcHJlY2lhdGlvbiksXHJcbiAgICBwcm9maXRSYXRlOiByYXRlUGVyY2VudChDb3N0SXRlbVN5c3RlbUNvZGUuUHJvZml0UmF0ZSksXHJcbiAgfTtcclxufVxyXG4iXX0=
@@ -1,7 +1,7 @@
1
1
  import { CostItemSystemCode } from '@hitsoft/kadooglu-keops/proxy';
2
2
  import { parseDecimal } from '../../../utils/number.utils';
3
3
  import { isRateCostItem } from '../../../shared/cost-item-classification.utils';
4
- import { toAmount, toBaseUsd } from './currency.utils';
4
+ import { toAmount, toBaseTry } from './currency.utils';
5
5
  export function buildComputedBaseByCode(resolvedItems, loss, profit) {
6
6
  return new Map([
7
7
  [CostItemSystemCode.Port, resolvedItems.port],
@@ -25,12 +25,12 @@ export function buildCostStages(stages, computedBaseByCode, itemsByCode, rateUsd
25
25
  .slice()
26
26
  .sort((a, b) => a.displayOrder - b.displayOrder)
27
27
  .map(stage => {
28
- let stageTotalUsd = 0;
28
+ let stageTotalTry = 0;
29
29
  const lines = stage.items.map(item => {
30
- const itemUsd = item.systemCode != null
30
+ const itemTry = item.systemCode != null
31
31
  ? (computedBaseByCode.get(item.systemCode) ?? 0)
32
- : toBaseUsd(parseDecimal(item.value), item.currency, rateUsd, rateEur);
33
- stageTotalUsd += itemUsd;
32
+ : toBaseTry(parseDecimal(item.value), item.currency, rateUsd, rateEur);
33
+ stageTotalTry += itemTry;
34
34
  return {
35
35
  costItemCode: item.costItemCode,
36
36
  costItemName: item.costItemName,
@@ -40,7 +40,7 @@ export function buildCostStages(stages, computedBaseByCode, itemsByCode, rateUsd
40
40
  ratePercent: isRateCostItem(item)
41
41
  ? parseDecimal(itemsByCode.get(item.systemCode)?.value ?? 0)
42
42
  : undefined,
43
- amount: toAmount(itemUsd, rateUsd, rateEur),
43
+ amount: toAmount(itemTry, rateUsd, rateEur),
44
44
  };
45
45
  });
46
46
  return {
@@ -49,8 +49,8 @@ export function buildCostStages(stages, computedBaseByCode, itemsByCode, rateUsd
49
49
  displayOrder: stage.displayOrder,
50
50
  groupRole: stage.groupRole,
51
51
  lines,
52
- subtotal: toAmount(stageTotalUsd, rateUsd, rateEur),
52
+ subtotal: toAmount(stageTotalTry, rateUsd, rateEur),
53
53
  };
54
54
  });
55
55
  }
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhZ2UtYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2thZG9vZ2x1LWtlb3BzL3NyYy9saWIvZmVhdHVyZXMvY29zdC1jYWxjdWxhdGlvbi9lbmdpbmUvc3RhZ2UtYnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBRWhGLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHdkQsTUFBTSxVQUFVLHVCQUF1QixDQUNyQyxhQUE0QixFQUM1QixJQUFZLEVBQ1osTUFBYztJQUVkLE9BQU8sSUFBSSxHQUFHLENBQUM7UUFDYixDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsSUFBSSxDQUFDO1FBQzdDLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLEVBQUUsYUFBYSxDQUFDLGlCQUFpQixDQUFDO1FBQ3ZFLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUM7UUFDbkQsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDO1FBQy9CLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLEVBQUUsYUFBYSxDQUFDLGdCQUFnQixDQUFDO1FBQ3JFLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CLEVBQUUsYUFBYSxDQUFDLG9CQUFvQixDQUFDO1FBQzdFLENBQUMsa0JBQWtCLENBQUMsd0JBQXdCLEVBQUUsYUFBYSxDQUFDLHdCQUF3QixDQUFDO1FBQ3JGLENBQUMsa0JBQWtCLENBQUMsU0FBUyxFQUFFLGFBQWEsQ0FBQyxTQUFTLENBQUM7UUFDdkQsQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsYUFBYSxDQUFDLGNBQWMsQ0FBQztRQUNqRSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxhQUFhLENBQUMsWUFBWSxDQUFDO1FBQzdELENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUM7UUFDbkQsQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLFdBQVcsQ0FBQztRQUMzRCxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixFQUFFLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQztRQUM3RSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUM7S0FDeEMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxlQUFlLENBQzdCLE1BQThCLEVBQzlCLGtCQUF1QyxFQUN2QyxXQUE2QyxFQUM3QyxPQUFlLEVBQ2YsT0FBZTtJQUVmLE9BQU8sTUFBTTtTQUNWLEtBQUssRUFBRTtTQUNQLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLFlBQVksQ0FBQztTQUMvQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDWCxJQUFJLGFBQWEsR0FBRyxDQUFDLENBQUM7UUFDdEIsTUFBTSxLQUFLLEdBQWUsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDL0MsTUFBTSxPQUFPLEdBQ1gsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJO2dCQUNyQixDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDaEQsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQzNFLGFBQWEsSUFBSSxPQUFPLENBQUM7WUFDekIsT0FBTztnQkFDTCxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7Z0JBQy9CLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtnQkFDL0IsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO2dCQUNyQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQzNCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtnQkFDdkIsV0FBVyxFQUFFLGNBQWMsQ0FBQyxJQUFJLENBQUM7b0JBQy9CLENBQUMsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsQ0FBQztvQkFDN0QsQ0FBQyxDQUFDLFNBQVM7Z0JBQ2IsTUFBTSxFQUFFLFFBQVEsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQzthQUM1QyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPO1lBQ0wsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1lBQzFCLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUztZQUMxQixZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVk7WUFDaEMsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1lBQzFCLEtBQUs7WUFDTCxRQUFRLEVBQUUsUUFBUSxDQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDO1NBQ3BELENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3N0SXRlbVN5c3RlbUNvZGUgfSBmcm9tICdAaGl0c29mdC9rYWRvb2dsdS1rZW9wcy9wcm94eSc7XHJcbmltcG9ydCB7IHBhcnNlRGVjaW1hbCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL251bWJlci51dGlscyc7XHJcbmltcG9ydCB7IGlzUmF0ZUNvc3RJdGVtIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2Nvc3QtaXRlbS1jbGFzc2lmaWNhdGlvbi51dGlscyc7XHJcbmltcG9ydCB7IENvc3RDYWxjdWxhdGlvbkl0ZW0sIENvc3RDYWxjdWxhdGlvblN0YWdlIH0gZnJvbSAnLi4vY29zdC1jYWxjdWxhdGlvbi5tb2RlbHMnO1xyXG5pbXBvcnQgeyB0b0Ftb3VudCwgdG9CYXNlVXNkIH0gZnJvbSAnLi9jdXJyZW5jeS51dGlscyc7XHJcbmltcG9ydCB7IENvc3RMaW5lLCBDb3N0U3RhZ2UsIFJlc29sdmVkSXRlbXMgfSBmcm9tICcuL21vZGVscyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRDb21wdXRlZEJhc2VCeUNvZGUoXHJcbiAgcmVzb2x2ZWRJdGVtczogUmVzb2x2ZWRJdGVtcyxcclxuICBsb3NzOiBudW1iZXIsXHJcbiAgcHJvZml0OiBudW1iZXIsXHJcbik6IE1hcDxudW1iZXIsIG51bWJlcj4ge1xyXG4gIHJldHVybiBuZXcgTWFwKFtcclxuICAgIFtDb3N0SXRlbVN5c3RlbUNvZGUuUG9ydCwgcmVzb2x2ZWRJdGVtcy5wb3J0XSxcclxuICAgIFtDb3N0SXRlbVN5c3RlbUNvZGUuSW5zcGVjdGlvbkN1c3RvbXMsIHJlc29sdmVkSXRlbXMuaW5zcGVjdGlvbkN1c3RvbXNdLFxyXG4gICAgW0Nvc3RJdGVtU3lzdGVtQ29kZS5GcmVpZ2h0LCByZXNvbHZlZEl0ZW1zLmZyZWlnaHRdLFxyXG4gICAgW0Nvc3RJdGVtU3lzdGVtQ29kZS5Mb3NzLCBsb3NzXSxcclxuICAgIFtDb3N0SXRlbVN5c3RlbUNvZGUuUmVmaW5lcnlPdmVyaGVhZCwgcmVzb2x2ZWRJdGVtcy5yZWZpbmVyeU92ZXJoZWFkXSxcclxuICAgIFtDb3N0SXRlbVN5c3RlbUNvZGUuUmVmaW5lcnlBdXhNYXRlcmlhbHMsIHJlc29sdmVkSXRlbXMucmVmaW5lcnlBdXhNYXRlcmlhbHNdLFxyXG4gICAgW0Nvc3RJdGVtU3lzdGVtQ29kZS5GaWxsaW5nUGFja2FnaW5nT3ZlcmhlYWQsIHJlc29sdmVkSXRlbXMuZmlsbGluZ1BhY2thZ2luZ092ZXJoZWFkXSxcclxuICAgIFtDb3N0SXRlbVN5c3RlbUNvZGUuUGFja2FnaW5nLCByZXNvbHZlZEl0ZW1zLnBhY2thZ2luZ10sXHJcbiAgICBbQ29zdEl0ZW1TeXN0ZW1Db2RlLlNhbGVzTWFya2V0aW5nLCByZXNvbHZlZEl0ZW1zLnNhbGVzTWFya2V0aW5nXSxcclxuICAgIFtDb3N0SXRlbVN5c3RlbUNvZGUuR2VuZXJhbEFkbWluLCByZXNvbHZlZEl0ZW1zLmdlbmVyYWxBZG1pbl0sXHJcbiAgICBbQ29zdEl0ZW1TeXN0ZW1Db2RlLkZpbmFuY2UsIHJlc29sdmVkSXRlbXMuZmluYW5jZV0sXHJcbiAgICBbQ29zdEl0ZW1TeXN0ZW1Db2RlLkNvbnRpbmdlbmN5LCByZXNvbHZlZEl0ZW1zLmNvbnRpbmdlbmN5XSxcclxuICAgIFtDb3N0SXRlbVN5c3RlbUNvZGUuVmFyaWFibGVEZXByZWNpYXRpb24sIHJlc29sdmVkSXRlbXMudmFyaWFibGVEZXByZWNpYXRpb25dLFxyXG4gICAgW0Nvc3RJdGVtU3lzdGVtQ29kZS5Qcm9maXRSYXRlLCBwcm9maXRdLFxyXG4gIF0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRDb3N0U3RhZ2VzKFxyXG4gIHN0YWdlczogQ29zdENhbGN1bGF0aW9uU3RhZ2VbXSxcclxuICBjb21wdXRlZEJhc2VCeUNvZGU6IE1hcDxudW1iZXIsIG51bWJlcj4sXHJcbiAgaXRlbXNCeUNvZGU6IE1hcDxudW1iZXIsIENvc3RDYWxjdWxhdGlvbkl0ZW0+LFxyXG4gIHJhdGVVc2Q6IG51bWJlcixcclxuICByYXRlRXVyOiBudW1iZXIsXHJcbik6IENvc3RTdGFnZVtdIHtcclxuICByZXR1cm4gc3RhZ2VzXHJcbiAgICAuc2xpY2UoKVxyXG4gICAgLnNvcnQoKGEsIGIpID0+IGEuZGlzcGxheU9yZGVyIC0gYi5kaXNwbGF5T3JkZXIpXHJcbiAgICAubWFwKHN0YWdlID0+IHtcclxuICAgICAgbGV0IHN0YWdlVG90YWxVc2QgPSAwO1xyXG4gICAgICBjb25zdCBsaW5lczogQ29zdExpbmVbXSA9IHN0YWdlLml0ZW1zLm1hcChpdGVtID0+IHtcclxuICAgICAgICBjb25zdCBpdGVtVXNkID1cclxuICAgICAgICAgIGl0ZW0uc3lzdGVtQ29kZSAhPSBudWxsXHJcbiAgICAgICAgICAgID8gKGNvbXB1dGVkQmFzZUJ5Q29kZS5nZXQoaXRlbS5zeXN0ZW1Db2RlKSA/PyAwKVxyXG4gICAgICAgICAgICA6IHRvQmFzZVVzZChwYXJzZURlY2ltYWwoaXRlbS52YWx1ZSksIGl0ZW0uY3VycmVuY3ksIHJhdGVVc2QsIHJhdGVFdXIpO1xyXG4gICAgICAgIHN0YWdlVG90YWxVc2QgKz0gaXRlbVVzZDtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgY29zdEl0ZW1Db2RlOiBpdGVtLmNvc3RJdGVtQ29kZSxcclxuICAgICAgICAgIGNvc3RJdGVtTmFtZTogaXRlbS5jb3N0SXRlbU5hbWUsXHJcbiAgICAgICAgICBjYWxjdWxhdGlvblR5cGU6IGl0ZW0uY2FsY3VsYXRpb25UeXBlLFxyXG4gICAgICAgICAgc3lzdGVtQ29kZTogaXRlbS5zeXN0ZW1Db2RlLFxyXG4gICAgICAgICAgY3VycmVuY3k6IGl0ZW0uY3VycmVuY3ksXHJcbiAgICAgICAgICByYXRlUGVyY2VudDogaXNSYXRlQ29zdEl0ZW0oaXRlbSlcclxuICAgICAgICAgICAgPyBwYXJzZURlY2ltYWwoaXRlbXNCeUNvZGUuZ2V0KGl0ZW0uc3lzdGVtQ29kZSEpPy52YWx1ZSA/PyAwKVxyXG4gICAgICAgICAgICA6IHVuZGVmaW5lZCxcclxuICAgICAgICAgIGFtb3VudDogdG9BbW91bnQoaXRlbVVzZCwgcmF0ZVVzZCwgcmF0ZUV1ciksXHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgZ3JvdXBDb2RlOiBzdGFnZS5ncm91cENvZGUsXHJcbiAgICAgICAgZ3JvdXBOYW1lOiBzdGFnZS5ncm91cE5hbWUsXHJcbiAgICAgICAgZGlzcGxheU9yZGVyOiBzdGFnZS5kaXNwbGF5T3JkZXIsXHJcbiAgICAgICAgZ3JvdXBSb2xlOiBzdGFnZS5ncm91cFJvbGUsXHJcbiAgICAgICAgbGluZXMsXHJcbiAgICAgICAgc3VidG90YWw6IHRvQW1vdW50KHN0YWdlVG90YWxVc2QsIHJhdGVVc2QsIHJhdGVFdXIpLFxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcbn1cclxuIl19
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhZ2UtYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2thZG9vZ2x1LWtlb3BzL3NyYy9saWIvZmVhdHVyZXMvY29zdC1jYWxjdWxhdGlvbi9lbmdpbmUvc3RhZ2UtYnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBRWhGLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHdkQsTUFBTSxVQUFVLHVCQUF1QixDQUNyQyxhQUE0QixFQUM1QixJQUFZLEVBQ1osTUFBYztJQUVkLE9BQU8sSUFBSSxHQUFHLENBQUM7UUFDYixDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsSUFBSSxDQUFDO1FBQzdDLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLEVBQUUsYUFBYSxDQUFDLGlCQUFpQixDQUFDO1FBQ3ZFLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUM7UUFDbkQsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDO1FBQy9CLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLEVBQUUsYUFBYSxDQUFDLGdCQUFnQixDQUFDO1FBQ3JFLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CLEVBQUUsYUFBYSxDQUFDLG9CQUFvQixDQUFDO1FBQzdFLENBQUMsa0JBQWtCLENBQUMsd0JBQXdCLEVBQUUsYUFBYSxDQUFDLHdCQUF3QixDQUFDO1FBQ3JGLENBQUMsa0JBQWtCLENBQUMsU0FBUyxFQUFFLGFBQWEsQ0FBQyxTQUFTLENBQUM7UUFDdkQsQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsYUFBYSxDQUFDLGNBQWMsQ0FBQztRQUNqRSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxhQUFhLENBQUMsWUFBWSxDQUFDO1FBQzdELENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUM7UUFDbkQsQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLFdBQVcsQ0FBQztRQUMzRCxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixFQUFFLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQztRQUM3RSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUM7S0FDeEMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxlQUFlLENBQzdCLE1BQThCLEVBQzlCLGtCQUF1QyxFQUN2QyxXQUE2QyxFQUM3QyxPQUFlLEVBQ2YsT0FBZTtJQUVmLE9BQU8sTUFBTTtTQUNWLEtBQUssRUFBRTtTQUNQLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLFlBQVksQ0FBQztTQUMvQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDWCxJQUFJLGFBQWEsR0FBRyxDQUFDLENBQUM7UUFDdEIsTUFBTSxLQUFLLEdBQWUsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDL0MsTUFBTSxPQUFPLEdBQ1gsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJO2dCQUNyQixDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDaEQsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQzNFLGFBQWEsSUFBSSxPQUFPLENBQUM7WUFDekIsT0FBTztnQkFDTCxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7Z0JBQy9CLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtnQkFDL0IsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO2dCQUNyQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQzNCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtnQkFDdkIsV0FBVyxFQUFFLGNBQWMsQ0FBQyxJQUFJLENBQUM7b0JBQy9CLENBQUMsQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsQ0FBQztvQkFDN0QsQ0FBQyxDQUFDLFNBQVM7Z0JBQ2IsTUFBTSxFQUFFLFFBQVEsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQzthQUM1QyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPO1lBQ0wsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1lBQzFCLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUztZQUMxQixZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVk7WUFDaEMsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1lBQzFCLEtBQUs7WUFDTCxRQUFRLEVBQUUsUUFBUSxDQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDO1NBQ3BELENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3N0SXRlbVN5c3RlbUNvZGUgfSBmcm9tICdAaGl0c29mdC9rYWRvb2dsdS1rZW9wcy9wcm94eSc7XHJcbmltcG9ydCB7IHBhcnNlRGVjaW1hbCB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL251bWJlci51dGlscyc7XHJcbmltcG9ydCB7IGlzUmF0ZUNvc3RJdGVtIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2Nvc3QtaXRlbS1jbGFzc2lmaWNhdGlvbi51dGlscyc7XHJcbmltcG9ydCB7IENvc3RDYWxjdWxhdGlvbkl0ZW0sIENvc3RDYWxjdWxhdGlvblN0YWdlIH0gZnJvbSAnLi4vY29zdC1jYWxjdWxhdGlvbi5tb2RlbHMnO1xyXG5pbXBvcnQgeyB0b0Ftb3VudCwgdG9CYXNlVHJ5IH0gZnJvbSAnLi9jdXJyZW5jeS51dGlscyc7XHJcbmltcG9ydCB7IENvc3RMaW5lLCBDb3N0U3RhZ2UsIFJlc29sdmVkSXRlbXMgfSBmcm9tICcuL21vZGVscyc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRDb21wdXRlZEJhc2VCeUNvZGUoXHJcbiAgcmVzb2x2ZWRJdGVtczogUmVzb2x2ZWRJdGVtcyxcclxuICBsb3NzOiBudW1iZXIsXHJcbiAgcHJvZml0OiBudW1iZXIsXHJcbik6IE1hcDxudW1iZXIsIG51bWJlcj4ge1xyXG4gIHJldHVybiBuZXcgTWFwKFtcclxuICAgIFtDb3N0SXRlbVN5c3RlbUNvZGUuUG9ydCwgcmVzb2x2ZWRJdGVtcy5wb3J0XSxcclxuICAgIFtDb3N0SXRlbVN5c3RlbUNvZGUuSW5zcGVjdGlvbkN1c3RvbXMsIHJlc29sdmVkSXRlbXMuaW5zcGVjdGlvbkN1c3RvbXNdLFxyXG4gICAgW0Nvc3RJdGVtU3lzdGVtQ29kZS5GcmVpZ2h0LCByZXNvbHZlZEl0ZW1zLmZyZWlnaHRdLFxyXG4gICAgW0Nvc3RJdGVtU3lzdGVtQ29kZS5Mb3NzLCBsb3NzXSxcclxuICAgIFtDb3N0SXRlbVN5c3RlbUNvZGUuUmVmaW5lcnlPdmVyaGVhZCwgcmVzb2x2ZWRJdGVtcy5yZWZpbmVyeU92ZXJoZWFkXSxcclxuICAgIFtDb3N0SXRlbVN5c3RlbUNvZGUuUmVmaW5lcnlBdXhNYXRlcmlhbHMsIHJlc29sdmVkSXRlbXMucmVmaW5lcnlBdXhNYXRlcmlhbHNdLFxyXG4gICAgW0Nvc3RJdGVtU3lzdGVtQ29kZS5GaWxsaW5nUGFja2FnaW5nT3ZlcmhlYWQsIHJlc29sdmVkSXRlbXMuZmlsbGluZ1BhY2thZ2luZ092ZXJoZWFkXSxcclxuICAgIFtDb3N0SXRlbVN5c3RlbUNvZGUuUGFja2FnaW5nLCByZXNvbHZlZEl0ZW1zLnBhY2thZ2luZ10sXHJcbiAgICBbQ29zdEl0ZW1TeXN0ZW1Db2RlLlNhbGVzTWFya2V0aW5nLCByZXNvbHZlZEl0ZW1zLnNhbGVzTWFya2V0aW5nXSxcclxuICAgIFtDb3N0SXRlbVN5c3RlbUNvZGUuR2VuZXJhbEFkbWluLCByZXNvbHZlZEl0ZW1zLmdlbmVyYWxBZG1pbl0sXHJcbiAgICBbQ29zdEl0ZW1TeXN0ZW1Db2RlLkZpbmFuY2UsIHJlc29sdmVkSXRlbXMuZmluYW5jZV0sXHJcbiAgICBbQ29zdEl0ZW1TeXN0ZW1Db2RlLkNvbnRpbmdlbmN5LCByZXNvbHZlZEl0ZW1zLmNvbnRpbmdlbmN5XSxcclxuICAgIFtDb3N0SXRlbVN5c3RlbUNvZGUuVmFyaWFibGVEZXByZWNpYXRpb24sIHJlc29sdmVkSXRlbXMudmFyaWFibGVEZXByZWNpYXRpb25dLFxyXG4gICAgW0Nvc3RJdGVtU3lzdGVtQ29kZS5Qcm9maXRSYXRlLCBwcm9maXRdLFxyXG4gIF0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRDb3N0U3RhZ2VzKFxyXG4gIHN0YWdlczogQ29zdENhbGN1bGF0aW9uU3RhZ2VbXSxcclxuICBjb21wdXRlZEJhc2VCeUNvZGU6IE1hcDxudW1iZXIsIG51bWJlcj4sXHJcbiAgaXRlbXNCeUNvZGU6IE1hcDxudW1iZXIsIENvc3RDYWxjdWxhdGlvbkl0ZW0+LFxyXG4gIHJhdGVVc2Q6IG51bWJlcixcclxuICByYXRlRXVyOiBudW1iZXIsXHJcbik6IENvc3RTdGFnZVtdIHtcclxuICByZXR1cm4gc3RhZ2VzXHJcbiAgICAuc2xpY2UoKVxyXG4gICAgLnNvcnQoKGEsIGIpID0+IGEuZGlzcGxheU9yZGVyIC0gYi5kaXNwbGF5T3JkZXIpXHJcbiAgICAubWFwKHN0YWdlID0+IHtcclxuICAgICAgbGV0IHN0YWdlVG90YWxUcnkgPSAwO1xyXG4gICAgICBjb25zdCBsaW5lczogQ29zdExpbmVbXSA9IHN0YWdlLml0ZW1zLm1hcChpdGVtID0+IHtcclxuICAgICAgICBjb25zdCBpdGVtVHJ5ID1cclxuICAgICAgICAgIGl0ZW0uc3lzdGVtQ29kZSAhPSBudWxsXHJcbiAgICAgICAgICAgID8gKGNvbXB1dGVkQmFzZUJ5Q29kZS5nZXQoaXRlbS5zeXN0ZW1Db2RlKSA/PyAwKVxyXG4gICAgICAgICAgICA6IHRvQmFzZVRyeShwYXJzZURlY2ltYWwoaXRlbS52YWx1ZSksIGl0ZW0uY3VycmVuY3ksIHJhdGVVc2QsIHJhdGVFdXIpO1xyXG4gICAgICAgIHN0YWdlVG90YWxUcnkgKz0gaXRlbVRyeTtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgY29zdEl0ZW1Db2RlOiBpdGVtLmNvc3RJdGVtQ29kZSxcclxuICAgICAgICAgIGNvc3RJdGVtTmFtZTogaXRlbS5jb3N0SXRlbU5hbWUsXHJcbiAgICAgICAgICBjYWxjdWxhdGlvblR5cGU6IGl0ZW0uY2FsY3VsYXRpb25UeXBlLFxyXG4gICAgICAgICAgc3lzdGVtQ29kZTogaXRlbS5zeXN0ZW1Db2RlLFxyXG4gICAgICAgICAgY3VycmVuY3k6IGl0ZW0uY3VycmVuY3ksXHJcbiAgICAgICAgICByYXRlUGVyY2VudDogaXNSYXRlQ29zdEl0ZW0oaXRlbSlcclxuICAgICAgICAgICAgPyBwYXJzZURlY2ltYWwoaXRlbXNCeUNvZGUuZ2V0KGl0ZW0uc3lzdGVtQ29kZSEpPy52YWx1ZSA/PyAwKVxyXG4gICAgICAgICAgICA6IHVuZGVmaW5lZCxcclxuICAgICAgICAgIGFtb3VudDogdG9BbW91bnQoaXRlbVRyeSwgcmF0ZVVzZCwgcmF0ZUV1ciksXHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgZ3JvdXBDb2RlOiBzdGFnZS5ncm91cENvZGUsXHJcbiAgICAgICAgZ3JvdXBOYW1lOiBzdGFnZS5ncm91cE5hbWUsXHJcbiAgICAgICAgZGlzcGxheU9yZGVyOiBzdGFnZS5kaXNwbGF5T3JkZXIsXHJcbiAgICAgICAgZ3JvdXBSb2xlOiBzdGFnZS5ncm91cFJvbGUsXHJcbiAgICAgICAgbGluZXMsXHJcbiAgICAgICAgc3VidG90YWw6IHRvQW1vdW50KHN0YWdlVG90YWxUcnksIHJhdGVVc2QsIHJhdGVFdXIpLFxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcbn1cclxuIl19