@xsolla/payment-client-core 0.1.7 → 0.1.9

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 (61) hide show
  1. package/esm2020/lib/core/country/country-iso-code.enum.mjs +6 -0
  2. package/esm2020/lib/core/payment/finance-details/cart-summary.interface.mjs +1 -1
  3. package/esm2020/lib/core/payment/finance-details/finance-details.interface.mjs +2 -0
  4. package/esm2020/lib/core/payment/finance-details/finance-details.service.mjs +25 -12
  5. package/esm2020/lib/core/payment/finance-details/price.helpers.mjs +2 -2
  6. package/esm2020/lib/core/payment/finance-details/status/field-with-amount-and-currency.interface.mjs +2 -0
  7. package/esm2020/lib/core/payment/finance-details/status/fields-with-currency.mjs +16 -0
  8. package/esm2020/lib/core/payment/finance-details/status/finance-info.interface.mjs +2 -0
  9. package/esm2020/lib/core/payment/finance-details/status/status-finance-details-adapter.service.mjs +290 -0
  10. package/esm2020/lib/core/payment/finance-details/summary/default-image-patterns.const.mjs +10 -0
  11. package/esm2020/lib/core/payment/finance-details/summary/sales-tax-details-key.enum.mjs +7 -0
  12. package/esm2020/lib/core/payment/finance-details/summary/summary-finance-details-adapter.service.mjs +264 -0
  13. package/esm2020/lib/core/payment/finance-details/vat-details-key.enum.mjs +14 -0
  14. package/esm2020/lib/core/payment/payment.interface.mjs +1 -1
  15. package/esm2020/lib/core/payment/payment.service.mjs +2 -2
  16. package/esm2020/lib/core/payment/status/status-finance-info.interface.mjs +2 -0
  17. package/esm2020/lib/core/payment/status/status-order.interface.mjs +2 -0
  18. package/esm2020/lib/core/payment/status/status.interface.mjs +1 -1
  19. package/esm2020/lib/core/payment/status/status.service.mjs +10 -6
  20. package/esm2020/lib/core/payment/xps-summary.interface.mjs +1 -1
  21. package/esm2020/lib/core/session/session.service.mjs +57 -0
  22. package/esm2020/lib/core/type-guards/is-null.function.mjs +4 -0
  23. package/esm2020/lib/core/type-guards/is-undefined.function.mjs +4 -0
  24. package/esm2020/lib/core-library.module.mjs +1 -4
  25. package/esm2020/lib/core-library.service.mjs +4 -1
  26. package/fesm2015/xsolla-payment-client-core.mjs +729 -304
  27. package/fesm2015/xsolla-payment-client-core.mjs.map +1 -1
  28. package/fesm2020/xsolla-payment-client-core.mjs +709 -293
  29. package/fesm2020/xsolla-payment-client-core.mjs.map +1 -1
  30. package/lib/core/country/country-iso-code.enum.d.ts +4 -0
  31. package/lib/core/payment/finance-details/cart-summary.interface.d.ts +2 -2
  32. package/lib/core/payment/finance-details/finance-details.interface.d.ts +11 -0
  33. package/lib/core/payment/finance-details/finance-details.service.d.ts +12 -5
  34. package/lib/core/payment/finance-details/price.helpers.d.ts +3 -3
  35. package/lib/core/payment/finance-details/status/field-with-amount-and-currency.interface.d.ts +7 -0
  36. package/lib/core/payment/finance-details/status/fields-with-currency.d.ts +1 -0
  37. package/lib/core/payment/finance-details/status/finance-info.interface.d.ts +4 -0
  38. package/lib/core/payment/finance-details/status/status-finance-details-adapter.service.d.ts +31 -0
  39. package/lib/core/payment/finance-details/summary/sales-tax-details-key.enum.d.ts +5 -0
  40. package/lib/core/payment/finance-details/summary/summary-finance-details-adapter.service.d.ts +24 -0
  41. package/lib/core/payment/finance-details/vat-details-key.enum.d.ts +12 -0
  42. package/lib/core/payment/payment.interface.d.ts +1 -1
  43. package/lib/core/payment/payment.service.d.ts +1 -1
  44. package/lib/core/payment/status/status-finance-info.interface.d.ts +4 -0
  45. package/lib/core/payment/status/status-order.interface.d.ts +12 -0
  46. package/lib/core/payment/status/status.interface.d.ts +4 -16
  47. package/lib/core/payment/status/status.service.d.ts +3 -1
  48. package/lib/core/payment/xps-summary.interface.d.ts +1 -1
  49. package/lib/core/session/session.service.d.ts +18 -0
  50. package/lib/core/type-guards/is-null.function.d.ts +1 -0
  51. package/lib/core/type-guards/is-undefined.function.d.ts +1 -0
  52. package/lib/core-library.service.d.ts +2 -0
  53. package/package.json +1 -1
  54. package/xsolla-payment-client-core-0.1.9.tgz +0 -0
  55. package/esm2020/lib/core/payment/finance-details/default-image-patterns.const.mjs +0 -10
  56. package/esm2020/lib/core/payment/finance-details/finance-details-response.token.mjs +0 -8
  57. package/esm2020/lib/core/payment/finance-details/finance-details.class.mjs +0 -237
  58. package/lib/core/payment/finance-details/finance-details-response.token.d.ts +0 -7
  59. package/lib/core/payment/finance-details/finance-details.class.d.ts +0 -29
  60. package/xsolla-payment-client-core-0.1.7.tgz +0 -0
  61. /package/lib/core/payment/finance-details/{default-image-patterns.const.d.ts → summary/default-image-patterns.const.d.ts} +0 -0
@@ -0,0 +1,264 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { createPriceOrUndefined, extractMoneyCurrency } from '../price.helpers';
3
+ import { defaultImagePatterns } from './default-image-patterns.const';
4
+ import { VatDetailsKey } from '../vat-details-key.enum';
5
+ import { SalesTaxDetailsKey } from './sales-tax-details-key.enum';
6
+ import * as i0 from "@angular/core";
7
+ export class SummaryFinanceDetailsAdapterService {
8
+ getFinanceDetails(summary) {
9
+ const { purchase, finance } = summary;
10
+ return {
11
+ purchase: purchase,
12
+ finance: finance,
13
+ cartItems: this.getCartItems(purchase, finance),
14
+ cartSummary: this.getCartSummary(finance),
15
+ paymentCountry: this.getPaymentCountry(finance),
16
+ };
17
+ }
18
+ shouldShowZeroIndirectTaxRate(finance) {
19
+ return !!(finance?.vat?.visible ?? finance?.vat_user?.visible);
20
+ }
21
+ isSalesTaxes(finance) {
22
+ return !!(finance?.sales_tax?.amount ?? finance?.sales_tax_user?.amount);
23
+ }
24
+ getCartItems(purchase, finance) {
25
+ const checkouts = purchase.checkout_items?.map((item) => {
26
+ return {
27
+ imgSrc: item.image_url,
28
+ hasDefaultImg: this.isDefaultImage(item.image_url),
29
+ title: item.name,
30
+ price: extractMoneyCurrency(item, false),
31
+ priceBeforeDiscount: createPriceOrUndefined(item.amount_before_discount, item.currency),
32
+ quantity: item.quantity,
33
+ description: item.description,
34
+ tax: this.getTaxForItem(finance, item.indirect_tax_rate),
35
+ isBonus: item.is_bonus,
36
+ };
37
+ });
38
+ const virtualCurrencies = purchase.virtual_currency?.map((item) => {
39
+ return {
40
+ imgSrc: item.image_url,
41
+ hasDefaultImg: this.isDefaultImage(item.image_url),
42
+ title: `${item.quantity} ${item.name}`,
43
+ price: extractMoneyCurrency(item),
44
+ description: item.description,
45
+ isBonus: item.is_bonus,
46
+ };
47
+ });
48
+ const virtualItems = purchase.virtual_items?.map((item) => {
49
+ return {
50
+ imgSrc: item.image_url,
51
+ hasDefaultImg: this.isDefaultImage(item.image_url),
52
+ title: item.name,
53
+ price: extractMoneyCurrency(item),
54
+ description: item.description,
55
+ quantity: item.quantity,
56
+ isBonus: item.is_bonus,
57
+ };
58
+ });
59
+ let checkoutArray = undefined;
60
+ if (purchase.checkout) {
61
+ checkoutArray = [
62
+ {
63
+ key: 'checkout',
64
+ title: purchase.checkout.description,
65
+ price: extractMoneyCurrency(purchase.checkout),
66
+ isBonus: purchase.checkout.is_bonus ?? false,
67
+ },
68
+ ];
69
+ }
70
+ return [
71
+ ...(checkouts ?? []),
72
+ ...(virtualCurrencies ?? []),
73
+ ...(virtualItems ?? []),
74
+ ...(checkoutArray ?? []),
75
+ ];
76
+ }
77
+ getCartSummary(finance) {
78
+ return {
79
+ subtotal: {
80
+ title: 'Subtotal',
81
+ money: createPriceOrUndefined(finance?.sub_total?.amount, finance?.sub_total?.currency),
82
+ },
83
+ subtotalPayment: {
84
+ title: '',
85
+ money: createPriceOrUndefined(finance?.sub_total?.payment_amount, finance?.sub_total?.payment_currency),
86
+ },
87
+ total: {
88
+ title: 'Total',
89
+ money: extractMoneyCurrency(finance?.total),
90
+ },
91
+ totalDetails: this.getTaxesForTotalDetails(finance),
92
+ subtotalDetails: [
93
+ ...this.getSubtotalDetails(finance),
94
+ ...this.getTaxesForSubtotalDetails(finance),
95
+ ],
96
+ };
97
+ }
98
+ getPaymentCountry(finance) {
99
+ return finance?.payment_country?.iso ?? '';
100
+ }
101
+ getTaxForItem(finance, indirectTaxRate) {
102
+ if (indirectTaxRate ||
103
+ (this.shouldShowZeroIndirectTaxRate(finance) && indirectTaxRate === 0)) {
104
+ if (this.isSalesTaxes(finance)) {
105
+ return {
106
+ key: SalesTaxDetailsKey.salesTaxPercent,
107
+ content: `Sales tax ${indirectTaxRate}%`,
108
+ rate: indirectTaxRate,
109
+ };
110
+ }
111
+ if (this.isIndia(finance)) {
112
+ return {
113
+ key: VatDetailsKey.vatIndiaPercent,
114
+ content: `GST ${indirectTaxRate}%`,
115
+ rate: indirectTaxRate,
116
+ };
117
+ }
118
+ if (this.isGhana(finance)) {
119
+ return {
120
+ key: VatDetailsKey.vatGhana,
121
+ content: 'VAT, NHIL, GETFund Levy, and Covid-19 Levy',
122
+ rate: indirectTaxRate,
123
+ };
124
+ }
125
+ return {
126
+ key: VatDetailsKey.vatPercent,
127
+ content: `VAT ${indirectTaxRate}%`,
128
+ rate: indirectTaxRate,
129
+ };
130
+ }
131
+ return null;
132
+ }
133
+ getSubtotalDetails(finance) {
134
+ if (!finance) {
135
+ return [];
136
+ }
137
+ // subtotal details fields
138
+ const subtotalDetailsSorting = [
139
+ {
140
+ key: 'discount',
141
+ responseKey: 'discount',
142
+ title: 'Discount',
143
+ },
144
+ {
145
+ key: 'fee',
146
+ responseKey: 'fee',
147
+ title: 'Payment system fee',
148
+ },
149
+ {
150
+ key: 'user-balance',
151
+ responseKey: 'user_balance',
152
+ title: 'Balance',
153
+ },
154
+ ];
155
+ return subtotalDetailsSorting.map((sorting) => {
156
+ const field = finance[sorting.responseKey];
157
+ if (field) {
158
+ return {
159
+ key: sorting.key,
160
+ title: sorting.title,
161
+ money: {
162
+ amount: sorting.key === 'discount' && field.amount
163
+ ? -field.amount
164
+ : field.amount,
165
+ currency: field.currency,
166
+ },
167
+ };
168
+ }
169
+ return sorting;
170
+ });
171
+ }
172
+ getTaxesForSubtotalDetails(finance) {
173
+ const ret = [];
174
+ // subtotal. VAT %p
175
+ if (finance?.vat_user &&
176
+ (finance?.vat_user?.amount ?? finance?.vat_user?.visible)) {
177
+ ret.push({
178
+ key: this.getVatNotIncludingKeyForDetails(finance),
179
+ title: this.getVatLabelForSubtotalDetails(finance),
180
+ money: extractMoneyCurrency(finance?.vat_user),
181
+ });
182
+ }
183
+ if (finance?.sales_tax_user?.amount) {
184
+ ret.push({
185
+ key: SalesTaxDetailsKey.salesTax,
186
+ title: 'Sales tax',
187
+ money: extractMoneyCurrency(finance?.sales_tax_user),
188
+ });
189
+ }
190
+ return ret;
191
+ }
192
+ getVatLabelForSubtotalDetails(finance) {
193
+ if (this.isIndia(finance)) {
194
+ return `GST ${finance?.vat_user?.percent ?? ''}%`;
195
+ }
196
+ if (this.isGhana(finance)) {
197
+ return `VAT, NHIL, GETFund Levy, and Covid-19 Levy`;
198
+ }
199
+ return `VAT ${finance?.vat_user?.percent ?? ''}%`;
200
+ }
201
+ getTaxesForTotalDetails(finance) {
202
+ const ret = [];
203
+ // for totalDetails. VAT
204
+ if ((finance?.vat?.amount || finance?.vat?.visible) &&
205
+ !finance?.vat_user?.amount) {
206
+ ret.push({
207
+ key: this.getVatIncludingKeyForDetails(finance),
208
+ title: this.getVatLabelForTotalDetails(finance),
209
+ money: extractMoneyCurrency(finance?.vat),
210
+ });
211
+ }
212
+ if (finance?.sales_tax?.amount && !finance?.sales_tax_user?.amount) {
213
+ ret.push({
214
+ key: SalesTaxDetailsKey.salesTaxIncluding,
215
+ title: 'Sales tax included',
216
+ money: extractMoneyCurrency(finance?.sales_tax),
217
+ });
218
+ }
219
+ return ret;
220
+ }
221
+ getVatNotIncludingKeyForDetails(finance) {
222
+ if (this.isIndia(finance)) {
223
+ return VatDetailsKey.vatIndiaPercent;
224
+ }
225
+ if (this.isGhana(finance)) {
226
+ return VatDetailsKey.vatGhana;
227
+ }
228
+ return VatDetailsKey.vatPercent;
229
+ }
230
+ getVatIncludingKeyForDetails(finance) {
231
+ if (this.isIndia(finance)) {
232
+ return VatDetailsKey.vatIndiaPercentIncluding;
233
+ }
234
+ if (this.isGhana(finance)) {
235
+ return VatDetailsKey.vatGhanaIncluding;
236
+ }
237
+ return VatDetailsKey.vatPercentIncluding;
238
+ }
239
+ getVatLabelForTotalDetails(finance) {
240
+ if (this.isIndia(finance)) {
241
+ return `Including ${finance?.vat.percent ?? ''}% GST`;
242
+ }
243
+ if (this.isGhana(finance)) {
244
+ return 'Including VAT, NHIL, GETFund Levy, and Covid-19 Levy';
245
+ }
246
+ return `Including ${finance?.vat.percent ?? ''}% VAT`;
247
+ }
248
+ isIndia(finance) {
249
+ return finance?.payment_country.iso === 'IN';
250
+ }
251
+ isGhana(finance) {
252
+ return finance?.payment_country.iso === 'GH';
253
+ }
254
+ isDefaultImage(url) {
255
+ return defaultImagePatterns.some((regex) => regex.test(url));
256
+ }
257
+ }
258
+ SummaryFinanceDetailsAdapterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SummaryFinanceDetailsAdapterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
259
+ SummaryFinanceDetailsAdapterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SummaryFinanceDetailsAdapterService, providedIn: 'root' });
260
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SummaryFinanceDetailsAdapterService, decorators: [{
261
+ type: Injectable,
262
+ args: [{ providedIn: 'root' }]
263
+ }] });
264
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VtbWFyeS1maW5hbmNlLWRldGFpbHMtYWRhcHRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9maW5hbmNlLWRldGFpbHMvc3VtbWFyeS9zdW1tYXJ5LWZpbmFuY2UtZGV0YWlscy1hZGFwdGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU0zQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUl0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBR2xFLE1BQU0sT0FBTyxtQ0FBbUM7SUFDdkMsaUJBQWlCLENBQUMsT0FBbUI7UUFDMUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDdEMsT0FBTztZQUNMLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLFNBQVMsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUM7WUFDL0MsV0FBVyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDO1lBQ3pDLGNBQWMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDO1NBQ2hELENBQUM7SUFDSixDQUFDO0lBRU8sNkJBQTZCLENBQUMsT0FBMEI7UUFDOUQsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE9BQU8sSUFBSSxPQUFPLEVBQUUs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SUFBSSxFQUFFLE9BQU8sQ0FBQztJQUN4RCxDQUFDO0lBRU8sT0FBTyxDQUFDLE9BQTBCO1FBQ3hDLE9BQU8sT0FBTyxFQUFFLGVBQWUsQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDO0lBQy9DLENBQUM7SUFFTyxPQUFPLENBQUMsT0FBMEI7UUFDeEMsT0FBTyxPQUFPLEVBQUUsZUFBZSxDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUM7SUFDL0MsQ0FBQztJQUVPLGNBQWMsQ0FBQyxHQUFXO1FBQ2hDLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQzs7Z0lBOVRVLG1DQUFtQztvSUFBbkMsbUNBQW1DLGNBRHRCLE1BQU07MkZBQ25CLG1DQUFtQztrQkFEL0MsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBYcHNTdW1tYXJ5IH0gZnJvbSAnLi4vLi4veHBzLXN1bW1hcnkuaW50ZXJmYWNlJztcbmltcG9ydCB7IFhwc0ZpbmFuY2UgfSBmcm9tICcuLi8uLi94cHMtZmluYW5jZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgWHBzUHVyY2hhc2UgfSBmcm9tICcuLi8uLi94cHMtcHVyY2hhc2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IENhcnRJdGVtIH0gZnJvbSAnLi4vY2FydC1pdGVtLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDYXJ0U3VtbWFyeSB9IGZyb20gJy4uL2NhcnQtc3VtbWFyeS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgY3JlYXRlUHJpY2VPclVuZGVmaW5lZCwgZXh0cmFjdE1vbmV5Q3VycmVuY3kgfSBmcm9tICcuLi9wcmljZS5oZWxwZXJzJztcbmltcG9ydCB7IGRlZmF1bHRJbWFnZVBhdHRlcm5zIH0gZnJvbSAnLi9kZWZhdWx0LWltYWdlLXBhdHRlcm5zLmNvbnN0JztcbmltcG9ydCB7IFByaWNlIH0gZnJvbSAnLi4vcHJpY2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IENhcnRMaW5lIH0gZnJvbSAnLi4vY2FydC1saW5lLmludGVyZmFjZSc7XG5pbXBvcnQgeyBGaW5hbmNlRGV0YWlscyB9IGZyb20gJy4uL2ZpbmFuY2UtZGV0YWlscy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgVmF0RGV0YWlsc0tleSB9IGZyb20gJy4uL3ZhdC1kZXRhaWxzLWtleS5lbnVtJztcbmltcG9ydCB7IFNhbGVzVGF4RGV0YWlsc0tleSB9IGZyb20gJy4vc2FsZXMtdGF4LWRldGFpbHMta2V5LmVudW0nO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFN1bW1hcnlGaW5hbmNlRGV0YWlsc0FkYXB0ZXJTZXJ2aWNlIHtcbiAgcHVibGljIGdldEZpbmFuY2VEZXRhaWxzKHN1bW1hcnk6IFhwc1N1bW1hcnkpOiBGaW5hbmNlRGV0YWlscyB7XG4gICAgY29uc3QgeyBwdXJjaGFzZSwgZmluYW5jZSB9ID0gc3VtbWFyeTtcbiAgICByZXR1cm4ge1xuICAgICAgcHVyY2hhc2U6IHB1cmNoYXNlLFxuICAgICAgZmluYW5jZTogZmluYW5jZSxcbiAgICAgIGNhcnRJdGVtczogdGhpcy5nZXRDYXJ0SXRlbXMocHVyY2hhc2UsIGZpbmFuY2UpLFxuICAgICAgY2FydFN1bW1hcnk6IHRoaXMuZ2V0Q2FydFN1bW1hcnkoZmluYW5jZSksXG4gICAgICBwYXltZW50Q291bnRyeTogdGhpcy5nZXRQYXltZW50Q291bnRyeShmaW5hbmNlKSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBzaG91bGRTaG93WmVyb0luZGlyZWN0VGF4UmF0ZShmaW5hbmNlOiBYcHNGaW5hbmNlIHwgbnVsbCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIShmaW5hbmNlPy52YXQ/LnZpc2libGUgPz8gZmluYW5jZT8udmF0X3VzZXI/LnZpc2libGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1NhbGVzVGF4ZXMoZmluYW5jZTogWHBzRmluYW5jZSB8IG51bGwpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISEoZmluYW5jZT8uc2FsZXNfdGF4Py5hbW91bnQgPz8gZmluYW5jZT8uc2FsZXNfdGF4X3VzZXI/LmFtb3VudCk7XG4gIH1cblxuICBwcml2YXRlIGdldENhcnRJdGVtcyhcbiAgICBwdXJjaGFzZTogWHBzUHVyY2hhc2UsXG4gICAgZmluYW5jZTogWHBzRmluYW5jZSB8IG51bGxcbiAgKTogQ2FydEl0ZW1bXSB7XG4gICAgY29uc3QgY2hlY2tvdXRzOiBDYXJ0SXRlbVtdIHwgdW5kZWZpbmVkID0gcHVyY2hhc2UuY2hlY2tvdXRfaXRlbXM/Lm1hcChcbiAgICAgIChpdGVtKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgaW1nU3JjOiBpdGVtLmltYWdlX3VybCxcbiAgICAgICAgICBoYXNEZWZhdWx0SW1nOiB0aGlzLmlzRGVmYXVsdEltYWdlKGl0ZW0uaW1hZ2VfdXJsKSxcbiAgICAgICAgICB0aXRsZTogaXRlbS5uYW1lLFxuICAgICAgICAgIHByaWNlOiBleHRyYWN0TW9uZXlDdXJyZW5jeShpdGVtLCBmYWxzZSksXG4gICAgICAgICAgcHJpY2VCZWZvcmVEaXNjb3VudDogY3JlYXRlUHJpY2VPclVuZGVmaW5lZChcbiAgICAgICAgICAgIGl0ZW0uYW1vdW50X2JlZm9yZV9kaXNjb3VudCxcbiAgICAgICAgICAgIGl0ZW0uY3VycmVuY3lcbiAgICAgICAgICApLFxuICAgICAgICAgIHF1YW50aXR5OiBpdGVtLnF1YW50aXR5LFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBpdGVtLmRlc2NyaXB0aW9uLFxuICAgICAgICAgIHRheDogdGhpcy5nZXRUYXhGb3JJdGVtKGZpbmFuY2UsIGl0ZW0uaW5kaXJlY3RfdGF4X3JhdGUpLFxuICAgICAgICAgIGlzQm9udXM6IGl0ZW0uaXNfYm9udXMsXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgKTtcblxuICAgIGNvbnN0IHZpcnR1YWxDdXJyZW5jaWVzOiBDYXJ0SXRlbVtdIHwgdW5kZWZpbmVkID1cbiAgICAgIHB1cmNoYXNlLnZpcnR1YWxfY3VycmVuY3k/Lm1hcCgoaXRlbSkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGltZ1NyYzogaXRlbS5pbWFnZV91cmwsXG4gICAgICAgICAgaGFzRGVmYXVsdEltZzogdGhpcy5pc0RlZmF1bHRJbWFnZShpdGVtLmltYWdlX3VybCksXG4gICAgICAgICAgdGl0bGU6IGAke2l0ZW0ucXVhbnRpdHl9ICR7aXRlbS5uYW1lfWAsXG4gICAgICAgICAgcHJpY2U6IGV4dHJhY3RNb25leUN1cnJlbmN5KGl0ZW0pLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBpdGVtLmRlc2NyaXB0aW9uLFxuICAgICAgICAgIGlzQm9udXM6IGl0ZW0uaXNfYm9udXMsXG4gICAgICAgIH07XG4gICAgICB9KTtcblxuICAgIGNvbnN0IHZpcnR1YWxJdGVtczogQ2FydEl0ZW1bXSB8IHVuZGVmaW5lZCA9IHB1cmNoYXNlLnZpcnR1YWxfaXRlbXM/Lm1hcChcbiAgICAgIChpdGVtKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgaW1nU3JjOiBpdGVtLmltYWdlX3VybCxcbiAgICAgICAgICBoYXNEZWZhdWx0SW1nOiB0aGlzLmlzRGVmYXVsdEltYWdlKGl0ZW0uaW1hZ2VfdXJsKSxcbiAgICAgICAgICB0aXRsZTogaXRlbS5uYW1lLFxuICAgICAgICAgIHByaWNlOiBleHRyYWN0TW9uZXlDdXJyZW5jeShpdGVtKSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogaXRlbS5kZXNjcmlwdGlvbixcbiAgICAgICAgICBxdWFudGl0eTogaXRlbS5xdWFudGl0eSxcbiAgICAgICAgICBpc0JvbnVzOiBpdGVtLmlzX2JvbnVzLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICk7XG5cbiAgICBsZXQgY2hlY2tvdXRBcnJheTogQ2FydEl0ZW1bXSB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBpZiAocHVyY2hhc2UuY2hlY2tvdXQpIHtcbiAgICAgIGNoZWNrb3V0QXJyYXkgPSBbXG4gICAgICAgIHtcbiAgICAgICAgICBrZXk6ICdjaGVja291dCcsXG4gICAgICAgICAgdGl0bGU6IHB1cmNoYXNlLmNoZWNrb3V0LmRlc2NyaXB0aW9uLFxuICAgICAgICAgIHByaWNlOiBleHRyYWN0TW9uZXlDdXJyZW5jeShwdXJjaGFzZS5jaGVja291dCksXG4gICAgICAgICAgaXNCb251czogcHVyY2hhc2UuY2hlY2tvdXQuaXNfYm9udXMgPz8gZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICBdO1xuICAgIH1cblxuICAgIHJldHVybiBbXG4gICAgICAuLi4oY2hlY2tvdXRzID8/IFtdKSxcbiAgICAgIC4uLih2aXJ0dWFsQ3VycmVuY2llcyA/PyBbXSksXG4gICAgICAuLi4odmlydHVhbEl0ZW1zID8/IFtdKSxcbiAgICAgIC4uLihjaGVja291dEFycmF5ID8/IFtdKSxcbiAgICBdO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDYXJ0U3VtbWFyeShmaW5hbmNlOiBYcHNGaW5hbmNlIHwgbnVsbCk6IENhcnRTdW1tYXJ5IHtcbiAgICByZXR1cm4ge1xuICAgICAgc3VidG90YWw6IHtcbiAgICAgICAgdGl0bGU6ICdTdWJ0b3RhbCcsXG4gICAgICAgIG1vbmV5OiBjcmVhdGVQcmljZU9yVW5kZWZpbmVkKFxuICAgICAgICAgIGZpbmFuY2U/LnN1Yl90b3RhbD8uYW1vdW50LFxuICAgICAgICAgIGZpbmFuY2U/LnN1Yl90b3RhbD8uY3VycmVuY3lcbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgICBzdWJ0b3RhbFBheW1lbnQ6IHtcbiAgICAgICAgdGl0bGU6ICcnLFxuICAgICAgICBtb25leTogY3JlYXRlUHJpY2VPclVuZGVmaW5lZChcbiAgICAgICAgICBmaW5hbmNlPy5zdWJfdG90YWw/LnBheW1lbnRfYW1vdW50LFxuICAgICAgICAgIGZpbmFuY2U/LnN1Yl90b3RhbD8ucGF5bWVudF9jdXJyZW5jeVxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHRvdGFsOiB7XG4gICAgICAgIHRpdGxlOiAnVG90YWwnLFxuICAgICAgICBtb25leTogZXh0cmFjdE1vbmV5Q3VycmVuY3koZmluYW5jZT8udG90YWwpLFxuICAgICAgfSxcbiAgICAgIHRvdGFsRGV0YWlsczogdGhpcy5nZXRUYXhlc0ZvclRvdGFsRGV0YWlscyhmaW5hbmNlKSxcbiAgICAgIHN1YnRvdGFsRGV0YWlsczogW1xuICAgICAgICAuLi50aGlzLmdldFN1YnRvdGFsRGV0YWlscyhmaW5hbmNlKSxcbiAgICAgICAgLi4udGhpcy5nZXRUYXhlc0ZvclN1YnRvdGFsRGV0YWlscyhmaW5hbmNlKSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UGF5bWVudENvdW50cnkoZmluYW5jZTogWHBzRmluYW5jZSB8IG51bGwpOiBzdHJpbmcge1xuICAgIHJldHVybiBmaW5hbmNlPy5wYXltZW50X2NvdW50cnk/LmlzbyA/PyAnJztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VGF4Rm9ySXRlbShcbiAgICBmaW5hbmNlOiBYcHNGaW5hbmNlIHwgbnVsbCxcbiAgICBpbmRpcmVjdFRheFJhdGU/OiBudW1iZXJcbiAgKTogQ2FydExpbmUgfCBudWxsIHtcbiAgICBpZiAoXG4gICAgICBpbmRpcmVjdFRheFJhdGUgfHxcbiAgICAgICh0aGlzLnNob3VsZFNob3daZXJvSW5kaXJlY3RUYXhSYXRlKGZpbmFuY2UpICYmIGluZGlyZWN0VGF4UmF0ZSA9PT0gMClcbiAgICApIHtcbiAgICAgIGlmICh0aGlzLmlzU2FsZXNUYXhlcyhmaW5hbmNlKSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGtleTogU2FsZXNUYXhEZXRhaWxzS2V5LnNhbGVzVGF4UGVyY2VudCxcbiAgICAgICAgICBjb250ZW50OiBgU2FsZXMgdGF4ICR7aW5kaXJlY3RUYXhSYXRlfSVgLFxuICAgICAgICAgIHJhdGU6IGluZGlyZWN0VGF4UmF0ZSxcbiAgICAgICAgfTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuaXNJbmRpYShmaW5hbmNlKSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGtleTogVmF0RGV0YWlsc0tleS52YXRJbmRpYVBlcmNlbnQsXG4gICAgICAgICAgY29udGVudDogYEdTVCAke2luZGlyZWN0VGF4UmF0ZX0lYCxcbiAgICAgICAgICByYXRlOiBpbmRpcmVjdFRheFJhdGUsXG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmlzR2hhbmEoZmluYW5jZSkpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBrZXk6IFZhdERldGFpbHNLZXkudmF0R2hhbmEsXG4gICAgICAgICAgY29udGVudDogJ1ZBVCwgTkhJTCwgR0VURnVuZCBMZXZ5LCBhbmQgQ292aWQtMTkgTGV2eScsXG4gICAgICAgICAgcmF0ZTogaW5kaXJlY3RUYXhSYXRlLFxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBrZXk6IFZhdERldGFpbHNLZXkudmF0UGVyY2VudCxcbiAgICAgICAgY29udGVudDogYFZBVCAke2luZGlyZWN0VGF4UmF0ZX0lYCxcbiAgICAgICAgcmF0ZTogaW5kaXJlY3RUYXhSYXRlLFxuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBwcml2YXRlIGdldFN1YnRvdGFsRGV0YWlscyhmaW5hbmNlOiBYcHNGaW5hbmNlIHwgbnVsbCk6IENhcnRMaW5lW10ge1xuICAgIGlmICghZmluYW5jZSkge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIC8vIHN1YnRvdGFsIGRldGFpbHMgZmllbGRzXG4gICAgY29uc3Qgc3VidG90YWxEZXRhaWxzU29ydGluZyA9IFtcbiAgICAgIHtcbiAgICAgICAga2V5OiAnZGlzY291bnQnLFxuICAgICAgICByZXNwb25zZUtleTogJ2Rpc2NvdW50JyxcbiAgICAgICAgdGl0bGU6ICdEaXNjb3VudCcsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBrZXk6ICdmZWUnLFxuICAgICAgICByZXNwb25zZUtleTogJ2ZlZScsXG4gICAgICAgIHRpdGxlOiAnUGF5bWVudCBzeXN0ZW0gZmVlJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGtleTogJ3VzZXItYmFsYW5jZScsXG4gICAgICAgIHJlc3BvbnNlS2V5OiAndXNlcl9iYWxhbmNlJyxcbiAgICAgICAgdGl0bGU6ICdCYWxhbmNlJyxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIHJldHVybiBzdWJ0b3RhbERldGFpbHNTb3J0aW5nLm1hcCgoc29ydGluZykgPT4ge1xuICAgICAgY29uc3QgZmllbGQgPSAoZmluYW5jZSBhcyB1bmtub3duIGFzIHsgW2tleTogc3RyaW5nXTogdW5rbm93biB9KVtcbiAgICAgICAgc29ydGluZy5yZXNwb25zZUtleVxuICAgICAgXSBhcyBQcmljZTtcblxuICAgICAgaWYgKGZpZWxkKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAga2V5OiBzb3J0aW5nLmtleSxcbiAgICAgICAgICB0aXRsZTogc29ydGluZy50aXRsZSxcbiAgICAgICAgICBtb25leToge1xuICAgICAgICAgICAgYW1vdW50OlxuICAgICAgICAgICAgICBzb3J0aW5nLmtleSA9PT0gJ2Rpc2NvdW50JyAmJiBmaWVsZC5hbW91bnRcbiAgICAgICAgICAgICAgICA/IC1maWVsZC5hbW91bnRcbiAgICAgICAgICAgICAgICA6IGZpZWxkLmFtb3VudCxcbiAgICAgICAgICAgIGN1cnJlbmN5OiBmaWVsZC5jdXJyZW5jeSxcbiAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIHNvcnRpbmc7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldFRheGVzRm9yU3VidG90YWxEZXRhaWxzKGZpbmFuY2U6IFhwc0ZpbmFuY2UgfCBudWxsKTogQ2FydExpbmVbXSB7XG4gICAgY29uc3QgcmV0ID0gW107XG5cbiAgICAvLyBzdWJ0b3RhbC4gVkFUICVwXG4gICAgaWYgKFxuICAgICAgZmluYW5jZT8udmF0X3VzZXIgJiZcbiAgICAgIChmaW5hbmNlPy52YXRfdXNlcj8uYW1vdW50ID8/IGZpbmFuY2U/LnZhdF91c2VyPy52aXNpYmxlKVxuICAgICkge1xuICAgICAgcmV0LnB1c2goe1xuICAgICAgICBrZXk6IHRoaXMuZ2V0VmF0Tm90SW5jbHVkaW5nS2V5Rm9yRGV0YWlscyhmaW5hbmNlKSxcbiAgICAgICAgdGl0bGU6IHRoaXMuZ2V0VmF0TGFiZWxGb3JTdWJ0b3RhbERldGFpbHMoZmluYW5jZSksXG4gICAgICAgIG1vbmV5OiBleHRyYWN0TW9uZXlDdXJyZW5jeShmaW5hbmNlPy52YXRfdXNlciksXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoZmluYW5jZT8uc2FsZXNfdGF4X3VzZXI/LmFtb3VudCkge1xuICAgICAgcmV0LnB1c2goe1xuICAgICAgICBrZXk6IFNhbGVzVGF4RGV0YWlsc0tleS5zYWxlc1RheCxcbiAgICAgICAgdGl0bGU6ICdTYWxlcyB0YXgnLFxuICAgICAgICBtb25leTogZXh0cmFjdE1vbmV5Q3VycmVuY3koZmluYW5jZT8uc2FsZXNfdGF4X3VzZXIpLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJldDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VmF0TGFiZWxGb3JTdWJ0b3RhbERldGFpbHMoZmluYW5jZTogWHBzRmluYW5jZSB8IG51bGwpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmlzSW5kaWEoZmluYW5jZSkpIHtcbiAgICAgIHJldHVybiBgR1NUICR7ZmluYW5jZT8udmF0X3VzZXI/LnBlcmNlbnQgPz8gJyd9JWA7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaXNHaGFuYShmaW5hbmNlKSkge1xuICAgICAgcmV0dXJuIGBWQVQsIE5ISUwsIEdFVEZ1bmQgTGV2eSwgYW5kIENvdmlkLTE5IExldnlgO1xuICAgIH1cblxuICAgIHJldHVybiBgVkFUICR7ZmluYW5jZT8udmF0X3VzZXI/LnBlcmNlbnQgPz8gJyd9JWA7XG4gIH1cblxuICBwcml2YXRlIGdldFRheGVzRm9yVG90YWxEZXRhaWxzKGZpbmFuY2U6IFhwc0ZpbmFuY2UgfCBudWxsKTogQ2FydExpbmVbXSB7XG4gICAgY29uc3QgcmV0ID0gW107XG5cbiAgICAvLyBmb3IgdG90YWxEZXRhaWxzLiBWQVRcbiAgICBpZiAoXG4gICAgICAoZmluYW5jZT8udmF0Py5hbW91bnQgfHwgZmluYW5jZT8udmF0Py52aXNpYmxlKSAmJlxuICAgICAgIWZpbmFuY2U/LnZhdF91c2VyPy5hbW91bnRcbiAgICApIHtcbiAgICAgIHJldC5wdXNoKHtcbiAgICAgICAga2V5OiB0aGlzLmdldFZhdEluY2x1ZGluZ0tleUZvckRldGFpbHMoZmluYW5jZSksXG4gICAgICAgIHRpdGxlOiB0aGlzLmdldFZhdExhYmVsRm9yVG90YWxEZXRhaWxzKGZpbmFuY2UpLFxuICAgICAgICBtb25leTogZXh0cmFjdE1vbmV5Q3VycmVuY3koZmluYW5jZT8udmF0KSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChmaW5hbmNlPy5zYWxlc190YXg/LmFtb3VudCAmJiAhZmluYW5jZT8uc2FsZXNfdGF4X3VzZXI/LmFtb3VudCkge1xuICAgICAgcmV0LnB1c2goe1xuICAgICAgICBrZXk6IFNhbGVzVGF4RGV0YWlsc0tleS5zYWxlc1RheEluY2x1ZGluZyxcbiAgICAgICAgdGl0bGU6ICdTYWxlcyB0YXggaW5jbHVkZWQnLFxuICAgICAgICBtb25leTogZXh0cmFjdE1vbmV5Q3VycmVuY3koZmluYW5jZT8uc2FsZXNfdGF4KSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiByZXQ7XG4gIH1cblxuICBwcml2YXRlIGdldFZhdE5vdEluY2x1ZGluZ0tleUZvckRldGFpbHMoZmluYW5jZTogWHBzRmluYW5jZSB8IG51bGwpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmlzSW5kaWEoZmluYW5jZSkpIHtcbiAgICAgIHJldHVybiBWYXREZXRhaWxzS2V5LnZhdEluZGlhUGVyY2VudDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc0doYW5hKGZpbmFuY2UpKSB7XG4gICAgICByZXR1cm4gVmF0RGV0YWlsc0tleS52YXRHaGFuYTtcbiAgICB9XG5cbiAgICByZXR1cm4gVmF0RGV0YWlsc0tleS52YXRQZXJjZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRWYXRJbmNsdWRpbmdLZXlGb3JEZXRhaWxzKGZpbmFuY2U6IFhwc0ZpbmFuY2UgfCBudWxsKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5pc0luZGlhKGZpbmFuY2UpKSB7XG4gICAgICByZXR1cm4gVmF0RGV0YWlsc0tleS52YXRJbmRpYVBlcmNlbnRJbmNsdWRpbmc7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaXNHaGFuYShmaW5hbmNlKSkge1xuICAgICAgcmV0dXJuIFZhdERldGFpbHNLZXkudmF0R2hhbmFJbmNsdWRpbmc7XG4gICAgfVxuXG4gICAgcmV0dXJuIFZhdERldGFpbHNLZXkudmF0UGVyY2VudEluY2x1ZGluZztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VmF0TGFiZWxGb3JUb3RhbERldGFpbHMoZmluYW5jZTogWHBzRmluYW5jZSB8IG51bGwpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmlzSW5kaWEoZmluYW5jZSkpIHtcbiAgICAgIHJldHVybiBgSW5jbHVkaW5nICR7ZmluYW5jZT8udmF0LnBlcmNlbnQgPz8gJyd9JSBHU1RgO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlzR2hhbmEoZmluYW5jZSkpIHtcbiAgICAgIHJldHVybiAnSW5jbHVkaW5nIFZBVCwgTkhJTCwgR0VURnVuZCBMZXZ5LCBhbmQgQ292aWQtMTkgTGV2eSc7XG4gICAgfVxuXG4gICAgcmV0dXJuIGBJbmNsdWRpbmcgJHtmaW5hbmNlPy52YXQucGVyY2VudCA/PyAnJ30lIFZBVGA7XG4gIH1cblxuICBwcml2YXRlIGlzSW5kaWEoZmluYW5jZTogWHBzRmluYW5jZSB8IG51bGwpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmluYW5jZT8ucGF5bWVudF9jb3VudHJ5LmlzbyA9PT0gJ0lOJztcbiAgfVxuXG4gIHByaXZhdGUgaXNHaGFuYShmaW5hbmNlOiBYcHNGaW5hbmNlIHwgbnVsbCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmaW5hbmNlPy5wYXltZW50X2NvdW50cnkuaXNvID09PSAnR0gnO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0RlZmF1bHRJbWFnZSh1cmw6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBkZWZhdWx0SW1hZ2VQYXR0ZXJucy5zb21lKChyZWdleCkgPT4gcmVnZXgudGVzdCh1cmwpKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,14 @@
1
+ export var VatDetailsKey;
2
+ (function (VatDetailsKey) {
3
+ VatDetailsKey["vat"] = "vat";
4
+ VatDetailsKey["vatPercent"] = "vat-percent";
5
+ VatDetailsKey["vatIncluding"] = "vat-including";
6
+ VatDetailsKey["vatPercentIncluding"] = "vat-percent-including";
7
+ VatDetailsKey["vatIndia"] = "vat-india";
8
+ VatDetailsKey["vatIndiaPercent"] = "vat-india-percent";
9
+ VatDetailsKey["vatIndiaIncluding"] = "vat-india-including";
10
+ VatDetailsKey["vatIndiaPercentIncluding"] = "vat-india-percent-including";
11
+ VatDetailsKey["vatGhana"] = "vat-ghana";
12
+ VatDetailsKey["vatGhanaIncluding"] = "vat-ghana-including";
13
+ })(VatDetailsKey || (VatDetailsKey = {}));
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmF0LWRldGFpbHMta2V5LmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L2ZpbmFuY2UtZGV0YWlscy92YXQtZGV0YWlscy1rZXkuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxhQWFYO0FBYkQsV0FBWSxhQUFhO0lBQ3ZCLDRCQUFXLENBQUE7SUFDWCwyQ0FBMEIsQ0FBQTtJQUMxQiwrQ0FBOEIsQ0FBQTtJQUM5Qiw4REFBNkMsQ0FBQTtJQUU3Qyx1Q0FBc0IsQ0FBQTtJQUN0QixzREFBcUMsQ0FBQTtJQUNyQywwREFBeUMsQ0FBQTtJQUN6Qyx5RUFBd0QsQ0FBQTtJQUV4RCx1Q0FBc0IsQ0FBQTtJQUN0QiwwREFBeUMsQ0FBQTtBQUMzQyxDQUFDLEVBYlcsYUFBYSxLQUFiLGFBQWEsUUFheEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBWYXREZXRhaWxzS2V5IHtcbiAgdmF0ID0gJ3ZhdCcsXG4gIHZhdFBlcmNlbnQgPSAndmF0LXBlcmNlbnQnLFxuICB2YXRJbmNsdWRpbmcgPSAndmF0LWluY2x1ZGluZycsXG4gIHZhdFBlcmNlbnRJbmNsdWRpbmcgPSAndmF0LXBlcmNlbnQtaW5jbHVkaW5nJyxcblxuICB2YXRJbmRpYSA9ICd2YXQtaW5kaWEnLFxuICB2YXRJbmRpYVBlcmNlbnQgPSAndmF0LWluZGlhLXBlcmNlbnQnLFxuICB2YXRJbmRpYUluY2x1ZGluZyA9ICd2YXQtaW5kaWEtaW5jbHVkaW5nJyxcbiAgdmF0SW5kaWFQZXJjZW50SW5jbHVkaW5nID0gJ3ZhdC1pbmRpYS1wZXJjZW50LWluY2x1ZGluZycsXG5cbiAgdmF0R2hhbmEgPSAndmF0LWdoYW5hJyxcbiAgdmF0R2hhbmFJbmNsdWRpbmcgPSAndmF0LWdoYW5hLWluY2x1ZGluZycsXG59XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3BheW1lbnQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTmV4dEFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucy9uZXh0LWFjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi9zdGF0dXMvc3RhdHVzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4vZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbnRyb2xDb25maWcgfSBmcm9tICcuL2Zvcm0vY29udHJvbHMvY29udHJvbC1jb25maWcnO1xuaW1wb3J0IHsgRmluYW5jZURldGFpbHMgfSBmcm9tICcuL2ZpbmFuY2UtZGV0YWlscy9maW5hbmNlLWRldGFpbHMuY2xhc3MnO1xuaW1wb3J0IHsgSW5wdXRFdmVudE5hbWUgfSBmcm9tICcuL2Zvcm0vaW5wdXQtZXZlbnQuZW51bSc7XG5pbXBvcnQgeyBGb3JtRmllbGRzU3RhdHVzIH0gZnJvbSAnLi9mb3JtL2Zvcm0tZmllbGRzLXN0YXR1cy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRm9ybVN0YXRlIH0gZnJvbSAnLi9mb3JtL2Zvcm0tc3RhdGUuaW50ZXJmYWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBQYXltZW50IHtcbiAgaW5pdGlhbGl6ZSgpOiBQcm9taXNlPEZpZWxkW10+O1xuICBzdWJtaXQoKTogUHJvbWlzZTxOZXh0QWN0aW9uIHwgbnVsbCB8IHZvaWQ+O1xuICBnZXRGaWVsZHMoKTogRmllbGRbXTtcbiAgdmFsaWRhdGUoZmllbGQ6IEZpZWxkKTogUHJvbWlzZTxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD47XG4gIGdldEZpbmFuY2VEZXRhaWxzKCk6IEZpbmFuY2VEZXRhaWxzIHwgbnVsbDtcbiAgcnVuVGhyZWVEcygpOiB2b2lkO1xuICBnZXRTdGF0dXMoKTogUHJvbWlzZTxTdGF0dXM+O1xuICBmb3JtOiB7XG4gICAgZmllbGRzU3RhdHVzJDogT2JzZXJ2YWJsZTxGb3JtRmllbGRzU3RhdHVzPjtcbiAgICBjaGFuZ2VGaWVsZFZhbHVlKG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHZvaWQ7XG4gICAgZ2V0Q29udHJvbENvbmZpZyhmaWVsZDogRmllbGQpOiBDb250cm9sQ29uZmlnIHwgbnVsbDtcbiAgICBjaGFuZ2VGaWVsZFN0YXRlKG5hbWU6IHN0cmluZywgc3RhdGU6IElucHV0RXZlbnROYW1lKTogdm9pZDtcbiAgICB1cGRhdGVGaWVsZEZvcm1TdGF0ZShmaWVsZE5hbWU6IHN0cmluZywgZm9ybVN0YXRlOiBGb3JtU3RhdGUpOiB2b2lkO1xuICB9O1xuICBmbG93VXBkYXRlcyQ6IE9ic2VydmFibGU8TmV4dEFjdGlvbj47XG4gIGZpbmFuY2VEZXRhaWxzVXBkYXRlcyQ6IE9ic2VydmFibGU8RmluYW5jZURldGFpbHM+O1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3BheW1lbnQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTmV4dEFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucy9uZXh0LWFjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi9zdGF0dXMvc3RhdHVzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4vZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbnRyb2xDb25maWcgfSBmcm9tICcuL2Zvcm0vY29udHJvbHMvY29udHJvbC1jb25maWcnO1xuaW1wb3J0IHsgRmluYW5jZURldGFpbHMgfSBmcm9tICcuL2ZpbmFuY2UtZGV0YWlscy9maW5hbmNlLWRldGFpbHMuaW50ZXJmYWNlJztcbmltcG9ydCB7IElucHV0RXZlbnROYW1lIH0gZnJvbSAnLi9mb3JtL2lucHV0LWV2ZW50LmVudW0nO1xuaW1wb3J0IHsgRm9ybUZpZWxkc1N0YXR1cyB9IGZyb20gJy4vZm9ybS9mb3JtLWZpZWxkcy1zdGF0dXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZvcm1TdGF0ZSB9IGZyb20gJy4vZm9ybS9mb3JtLXN0YXRlLmludGVyZmFjZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGF5bWVudCB7XG4gIGluaXRpYWxpemUoKTogUHJvbWlzZTxGaWVsZFtdPjtcbiAgc3VibWl0KCk6IFByb21pc2U8TmV4dEFjdGlvbiB8IG51bGwgfCB2b2lkPjtcbiAgZ2V0RmllbGRzKCk6IEZpZWxkW107XG4gIHZhbGlkYXRlKGZpZWxkOiBGaWVsZCk6IFByb21pc2U8VmFsaWRhdGlvbkVycm9ycyB8IG51bGw+O1xuICBnZXRGaW5hbmNlRGV0YWlscygpOiBGaW5hbmNlRGV0YWlscyB8IG51bGw7XG4gIHJ1blRocmVlRHMoKTogdm9pZDtcbiAgZ2V0U3RhdHVzKCk6IFByb21pc2U8U3RhdHVzPjtcbiAgZm9ybToge1xuICAgIGZpZWxkc1N0YXR1cyQ6IE9ic2VydmFibGU8Rm9ybUZpZWxkc1N0YXR1cz47XG4gICAgY2hhbmdlRmllbGRWYWx1ZShuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkO1xuICAgIGdldENvbnRyb2xDb25maWcoZmllbGQ6IEZpZWxkKTogQ29udHJvbENvbmZpZyB8IG51bGw7XG4gICAgY2hhbmdlRmllbGRTdGF0ZShuYW1lOiBzdHJpbmcsIHN0YXRlOiBJbnB1dEV2ZW50TmFtZSk6IHZvaWQ7XG4gICAgdXBkYXRlRmllbGRGb3JtU3RhdGUoZmllbGROYW1lOiBzdHJpbmcsIGZvcm1TdGF0ZTogRm9ybVN0YXRlKTogdm9pZDtcbiAgfTtcbiAgZmxvd1VwZGF0ZXMkOiBPYnNlcnZhYmxlPE5leHRBY3Rpb24+O1xuICBmaW5hbmNlRGV0YWlsc1VwZGF0ZXMkOiBPYnNlcnZhYmxlPEZpbmFuY2VEZXRhaWxzPjtcbn1cbiJdfQ==
@@ -151,7 +151,7 @@ export class PaymentService {
151
151
  this.threeDsService.stopChecking();
152
152
  }
153
153
  emitFinanceDetails(summary) {
154
- this.financeDetailsService.emit(summary);
154
+ this.financeDetailsService.emitWithSummary(summary);
155
155
  }
156
156
  emitCreditCardState(idCardType) {
157
157
  this.creditCardStateService.emit({ idCardType });
@@ -204,4 +204,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
204
204
  providedIn: 'root',
205
205
  }]
206
206
  }], ctorParameters: function () { return [{ type: i1.InitializeService }, { type: i2.SubmitService }, { type: i3.SyncService }, { type: i4.FormService }, { type: i5.StatusService }, { type: i6.FinanceDetailsService }, { type: i7.CreditCardStateService }, { type: i8.NextActionService }, { type: i9.ControlConfigService }, { type: i10.ThreeDsService }]; } });
207
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9wYXltZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBYyxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQWlCekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFJakYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBR3pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7Ozs7Ozs7OztBQU1oRCxNQUFNLE9BQU8sY0FBYztJQUd6QixJQUFXLGlCQUFpQjtRQUMxQixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQWFELFlBQ21CLGlCQUFvQyxFQUNwQyxhQUE0QixFQUM1QixXQUF3QixFQUN4QixXQUF3QixFQUN4QixhQUE0QixFQUM1QixxQkFBNEMsRUFDNUMsc0JBQThDLEVBQzlDLGlCQUFvQyxFQUNwQyxvQkFBMEMsRUFDMUMsY0FBOEI7UUFUOUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixnQkFBVyxHQUFYLFdBQVcsQ0FB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b0JBQW9CLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRTtnQkFDdkMsS0FBSyxVQUFVLENBQUMsVUFBVTtvQkFDeEIsSUFBSSxDQUFDLG1CQUFtQixDQUN0QixvQkFBb0IsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FDcEQsQ0FBQzthQUNMO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLO2FBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQzlCLFNBQVMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVPLHVCQUF1QixDQUFDLElBQXNCO1FBQ3BELElBQUksQ0FBQyxhQUFhO2FBQ2YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7YUFDbEMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7OzJHQWpQVSxjQUFjOytHQUFkLGNBQWMsY0FGYixNQUFNOzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0LCBmaWx0ZXIsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN1Ym1pdFJlc3BvbnNlIH0gZnJvbSAnLi9zdWJtaXQvcmVzcG9uc2Uvc3VibWl0LXJlc3BvbnNlLmNsYXNzJztcbmltcG9ydCB7IEZvcm1TZXJ2aWNlIH0gZnJvbSAnLi9mb3JtL2Zvcm0uc2VydmljZSc7XG5pbXBvcnQgeyBJbml0aWFsaXplUmVzcG9uc2UgfSBmcm9tICcuL2luaXRpYWxpemUvcmVzcG9uc2UvaW5pdGlhbGl6ZS1yZXNwb25zZS5jbGFzcyc7XG5pbXBvcnQgeyBJbml0aWFsaXplU2VydmljZSB9IGZyb20gJy4vaW5pdGlhbGl6ZS9pbml0aWFsaXplLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi9zdGF0dXMvc3RhdHVzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTdWJtaXRTZXJ2aWNlIH0gZnJvbSAnLi9zdWJtaXQvc3VibWl0LnNlcnZpY2UnO1xuaW1wb3J0IHsgU3luY1NlcnZpY2UgfSBmcm9tICcuL3N5bmMvc3luYy5zZXJ2aWNlJztcbmltcG9ydCB7IFN0YXR1c1NlcnZpY2UgfSBmcm9tICcuL3N0YXR1cy9zdGF0dXMuc2VydmljZSc7XG5pbXBvcnQgeyBOZXh0QWN0aW9uU2VydmljZSB9IGZyb20gJy4vYWN0aW9ucy9uZXh0LWFjdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IENvbnRyb2xDb25maWcgfSBmcm9tICcuL2Zvcm0vY29udHJvbHMvY29udHJvbC1jb25maWcnO1xuaW1wb3J0IHsgQ29udHJvbENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL2Zvcm0vY29udHJvbHMvY29udHJvbC1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBGaW5hbmNlRGV0YWlscyB9IGZyb20gJy4vZmluYW5jZS1kZXRhaWxzL2ZpbmFuY2UtZGV0YWlscy5jbGFzcyc7XG5pbXBvcnQgeyBGaW5hbmNlRGV0YWlsc1NlcnZpY2UgfSBmcm9tICcuL2ZpbmFuY2UtZGV0YWlscy9maW5hbmNlLWRldGFpbHMuc2VydmljZSc7XG5pbXBvcnQgeyBOZXh0QWN0aW9uIH0gZnJvbSAnLi9hY3Rpb25zL25leHQtYWN0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBYcHNTdW1tYXJ5IH0gZnJvbSAnLi94cHMtc3VtbWFyeS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuL2ZpZWxkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQYXltZW50Q29uZmlnIH0gZnJvbSAnLi9wYXltZW50LWNvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgaXNTdWJtaXRSZXNwb25zZSB9IGZyb20gJy4vc3VibWl0L3Jlc3BvbnNlL2lzLXN1Ym1pdC1yZXNwb25zZS5mdW5jdGlvbic7XG5pbXBvcnQgeyBYcHNCb29sZWFuIH0gZnJvbSAnLi4veHBzLWJvb2xlYW4uZW51bSc7XG5pbXBvcnQgeyBTdGF0dXNSZXF1ZXN0UGFyYW1zIH0gZnJvbSAnLi9zdGF0dXMvc3RhdHVzLXJlcXVlc3Qvc3RhdHVzLXJlcXVlc3QtcGFyYW1zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnLi9mb3JtL3ZhbGlkYXRvcnMvdmFsaWRhdGlvbi1lcnJvcnMuaW50ZXJmYWNlJztcbmltcG9ydCB7IElucHV0RXZlbnROYW1lIH0gZnJvbSAnLi9mb3JtL2lucHV0LWV2ZW50LmVudW0nO1xuaW1wb3J0IHsgRm9ybUZpZWxkc1N0YXR1cyB9IGZyb20gJy4vZm9ybS9mb3JtLWZpZWxkcy1zdGF0dXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IFRocmVlRHNTZXJ2aWNlIH0gZnJvbSAnLi90aHJlZS1kcy90aHJlZS1kcy5zZXJ2aWNlJztcbmltcG9ydCB7IFhwc0NvbW1hbmQgfSBmcm9tICcuL3hwcy1jb21hbmQuZW51bSc7XG5pbXBvcnQgeyBDcmVkaXRDYXJkU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi9jcmVkaXQtY2FyZC1zdGF0ZS9jcmVkaXQtY2FyZC1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IEZpZWxkTmFtZXMgfSBmcm9tICcuL2ZpZWxkLW5hbWVzLmVudW0nO1xuaW1wb3J0IHsgRm9ybVN0YXRlIH0gZnJvbSAnLi9mb3JtL2Zvcm0tc3RhdGUuaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFBheW1lbnRTZXJ2aWNlIHtcbiAgcHVibGljIGZvcm06IFVudHlwZWRGb3JtR3JvdXAgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgZ2V0IGZvcm1GaWVsZHNTdGF0dXMkKCk6IE9ic2VydmFibGU8Rm9ybUZpZWxkc1N0YXR1cz4ge1xuICAgIHJldHVybiB0aGlzLmZvcm1GaWVsZHNTdGF0dXNTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpLnBpcGUoZmlsdGVyKEJvb2xlYW4pKTtcbiAgfVxuXG4gIHByaXZhdGUgZGF0YTogSW5pdGlhbGl6ZVJlc3BvbnNlIHwgU3VibWl0UmVzcG9uc2UgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBmaW5hbmNlRGV0YWlsczogRmluYW5jZURldGFpbHMgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBmb2N1c0ZpZWxkTmFtZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgZmllbGRzOiBGaWVsZFtdID0gW107XG4gIHByaXZhdGUgY29uZmlnITogUGF5bWVudENvbmZpZztcblxuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSBmb3JtRGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IGZvcm1GaWVsZHNTdGF0dXNTdWJqZWN0ID1cbiAgICBuZXcgQmVoYXZpb3JTdWJqZWN0PEZvcm1GaWVsZHNTdGF0dXMgfCBudWxsPihudWxsKTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBpbml0aWFsaXplU2VydmljZTogSW5pdGlhbGl6ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzdWJtaXRTZXJ2aWNlOiBTdWJtaXRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc3luY1NlcnZpY2U6IFN5bmNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZm9ybVNlcnZpY2U6IEZvcm1TZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc3RhdHVzU2VydmljZTogU3RhdHVzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZpbmFuY2VEZXRhaWxzU2VydmljZTogRmluYW5jZURldGFpbHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY3JlZGl0Q2FyZFN0YXRlU2VydmljZTogQ3JlZGl0Q2FyZFN0YXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5leHRBY3Rpb25TZXJ2aWNlOiBOZXh0QWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbnRyb2xDb25maWdTZXJ2aWNlOiBDb250cm9sQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRocmVlRHNTZXJ2aWNlOiBUaHJlZURzU2VydmljZVxuICApIHt9XG5cbiAgcHVibGljIGFzeW5jIGluaXRpYWxpemUoY29uZmlnOiBQYXltZW50Q29uZmlnKTogUHJvbWlzZTxGaWVsZFtdPiB7XG4gICAgdGhpcy5kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgdGhpcy5mb3JtRGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgdGhpcy5saXN0ZW5GaW5hbmNlRGV0YWlscygpO1xuXG4gICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgdGhpcy5kYXRhID0gYXdhaXQgdGhpcy5pbml0aWFsaXplU2VydmljZS5yZXF1ZXN0KGNvbmZpZyk7XG5cbiAgICB0aGlzLmZpZWxkcyA9IHRoaXMuZ2V0RmllbGRzKCk7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mb3JtU2VydmljZS5jcmVhdGVGb3JtKHRoaXMuZmllbGRzKTtcblxuICAgIHRoaXMuc2V0dXBTeW5jU2VydmljZSh0aGlzLmZvcm0sIHRoaXMuZmllbGRzKTtcbiAgICB0aGlzLmxpc3RlbkZvcm1TdGF0dXNDaGFuZ2VzKHRoaXMuZm9ybSk7XG5cbiAgICB0aGlzLmVtaXRGaW5hbmNlRGV0YWlscyh0aGlzLmRhdGEucGF5bWVudEZvcm0/LnN1bW1hcnkpO1xuICAgIHRoaXMuZW1pdEZvcm1GaWVsZHNTdGF0dXModGhpcy5mb3JtKTtcblxuICAgIHJldHVybiB0aGlzLmZpZWxkcy5maWx0ZXIoXG4gICAgICAoZmllbGQ6IEZpZWxkKSA9PiBmaWVsZD8uaXNWaXNpYmxlID09PSBYcHNCb29sZWFuLnRydWVcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHN1Ym1pdCgpOiBQcm9taXNlPE5leHRBY3Rpb24gfCBudWxsIHwgdm9pZD4ge1xuICAgIGlmICghdGhpcy5mb3JtKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2Zvcm0gaXMgZW1wdHkhJyk7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmZvcm0udmFsaWQpIHtcbiAgICAgIHRoaXMuZm9ybS5tYXJrQWxsQXNUb3VjaGVkKCk7XG4gICAgICB0aGlzLmVtaXRGb3JtRmllbGRzU3RhdHVzKHRoaXMuZm9ybSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgc3VibWl0UmVzcG9uc2UgPSBhd2FpdCB0aGlzLnN1Ym1pdFNlcnZpY2UucmVxdWVzdChcbiAgICAgIHRoaXMuZmllbGRzLFxuICAgICAgdGhpcy5mb3JtXG4gICAgKTtcblxuICAgIHRoaXMuZGF0YSA9IHN1Ym1pdFJlc3BvbnNlO1xuXG4gICAgdGhpcy5lbWl0RmluYW5jZURldGFpbHMoc3VibWl0UmVzcG9uc2Uuc3VtbWFyeSk7XG5cbiAgICAvLyBIYW5kbGUgM2RzIGZsb3dcbiAgICBpZiAoc3VibWl0UmVzcG9uc2UuY3VycmVudENvbW1hbmQgPT09IFhwc0NvbW1hbmQuY3JlYXRlKSB7XG4gICAgICB0aGlzLnJ1blRocmVlRHMoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmZpZWxkcyA9IHRoaXMuZ2V0RmllbGRzKCk7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mb3JtU2VydmljZS5jcmVhdGVGb3JtKHRoaXMuZmllbGRzKTtcblxuICAgIHJldHVybiB0aGlzLm5leHRBY3Rpb25TZXJ2aWNlLmdldE5leHRBY3Rpb24oc3VibWl0UmVzcG9uc2UpO1xuICB9XG5cbiAgcHVibGljIGdldEZpZWxkcygpOiBGaWVsZFtdIHtcbiAgICBpZiAodGhpcy5kYXRhIGluc3RhbmNlb2YgU3VibWl0UmVzcG9uc2UpIHtcbiAgICAgIHJldHVybiB0aGlzLmRhdGEuZmllbGRzID8/IFtdO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmRhdGE/LnBheW1lbnRGb3JtPy5maWVsZHMgPz8gW107XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgdmFsaWRhdGUoZmllbGQ6IEZpZWxkKTogUHJvbWlzZTxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD4ge1xuICAgIGNvbnN0IHN5bmNFcnJvcnMgPSB0aGlzLnN5bmNTZXJ2aWNlLmdldFN5bmNWYWxpZGF0aW9uRXJyb3JzKGZpZWxkKTtcblxuICAgIGlmIChzeW5jRXJyb3JzKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHN5bmNFcnJvcnMpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnN5bmNTZXJ2aWNlLnZhbGlkYXRlKGZpZWxkKTtcbiAgfVxuXG4gIHB1YmxpYyBydW5UaHJlZURzKCk6IHZvaWQge1xuICAgIGlmICghaXNTdWJtaXRSZXNwb25zZSh0aGlzLmRhdGEpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Nob3VsZCBzdWJtaXQgZm9ybSBmaXJzdCcpO1xuICAgIH1cblxuICAgIHRoaXMudGhyZWVEc1NlcnZpY2UuY2hlY2tUaHJlZURzKHRoaXMuZGF0YSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0RmluYW5jZURldGFpbHMoKTogRmluYW5jZURldGFpbHMgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5maW5hbmNlRGV0YWlscztcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVGaWVsZEZvcm1TdGF0ZShmaWVsZE5hbWU6IHN0cmluZywgZm9ybVN0YXRlOiBGb3JtU3RhdGUpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mb3JtKSB7XG4gICAgICB0aGlzLmZvcm1TZXJ2aWNlLnVwZGF0ZUZpZWxkRm9ybVN0YXRlKFxuICAgICAgICB0aGlzLmZvcm0sXG4gICAgICAgIHRoaXMuZmllbGRzLFxuICAgICAgICBmaWVsZE5hbWUsXG4gICAgICAgIGZvcm1TdGF0ZVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0U3RhdHVzKCk6IFByb21pc2U8U3RhdHVzPiB7XG4gICAgaWYgKCFpc1N1Ym1pdFJlc3BvbnNlKHRoaXMuZGF0YSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignU2hvdWxkIHN1Ym1pdCBmb3JtIGZpcnN0Jyk7XG4gICAgfVxuXG4gICAgY29uc3QgcGFyYW1zOiBTdGF0dXNSZXF1ZXN0UGFyYW1zID0ge1xuICAgICAgcGlkOiB0aGlzLmNvbmZpZy5wYXltZW50TWV0aG9kSWQsXG4gICAgICBpbnZvaWNlOiBwYXJzZUludCh0aGlzLmRhdGEuZml4SW52b2ljZSA/PyAnJyksXG4gICAgICBzaWduYXR1cmU6IHRoaXMuZGF0YS5zaWduYXR1cmUgPz8gJycsXG4gICAgICBsb2NhbGU6XG4gICAgICAgIHRoaXMuZGF0YS5maWVsZHMuZmluZCgoZmllbGQpID0+IGZpZWxkLm5hbWUgPT09ICdsb2NhbGUnKT8udmFsdWUgPz9cbiAgICAgICAgJ2VuJyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzU2VydmljZS5nZXRTdGF0dXMocGFyYW1zKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRGaWVsZENvbmZpZyhmaWVsZDogRmllbGQpOiBDb250cm9sQ29uZmlnIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbENvbmZpZ1NlcnZpY2UuZ2V0Q29uZmlnKGZpZWxkKTtcbiAgfVxuXG4gIHB1YmxpYyBjaGFuZ2VGaWVsZFZhbHVlKG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IGZvcm1Db250cm9sID0gdGhpcy5mb3JtPy5nZXQobmFtZSk7XG4gICAgZm9ybUNvbnRyb2w/LnNldFZhbHVlKHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBjaGFuZ2VGaWVsZFN0YXRlKG5hbWU6IHN0cmluZywgc3RhdGU6IElucHV0RXZlbnROYW1lKTogdm9pZCB7XG4gICAgY29uc3QgZm9ybUNvbnRyb2wgPSB0aGlzLmZvcm0/LmdldChuYW1lKTtcblxuICAgIGlmICghdGhpcy5mb3JtIHx8ICFmb3JtQ29udHJvbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHN3aXRjaCAoc3RhdGUpIHtcbiAgICAgIGNhc2UgSW5wdXRFdmVudE5hbWUuYmx1cjoge1xuICAgICAgICBmb3JtQ29udHJvbC5tYXJrQXNUb3VjaGVkKCk7XG4gICAgICAgIHRoaXMuZm9jdXNGaWVsZE5hbWUgPSBudWxsO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgSW5wdXRFdmVudE5hbWUuZm9jdXM6IHtcbiAgICAgICAgZm9ybUNvbnRyb2wubWFya0FzVW50b3VjaGVkKCk7XG4gICAgICAgIHRoaXMuZm9jdXNGaWVsZE5hbWUgPSBuYW1lO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmVtaXRGb3JtRmllbGRzU3RhdHVzKHRoaXMuZm9ybSk7XG4gIH1cblxuICBwdWJsaWMgZGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGEgPSBudWxsO1xuICAgIHRoaXMuZmluYW5jZURldGFpbHMgPSBudWxsO1xuICAgIHRoaXMuZm9ybSA9IG51bGw7XG4gICAgdGhpcy5maWVsZHMgPSBbXTtcbiAgICB0aGlzLmZvcm1EZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG5cbiAgICB0aGlzLnRocmVlRHNTZXJ2aWNlLnN0b3BDaGVja2luZygpO1xuICB9XG5cbiAgcHJpdmF0ZSBlbWl0RmluYW5jZURldGFpbHMoc3VtbWFyeT86IFhwc1N1bW1hcnkpOiB2b2lkIHtcbiAgICB0aGlzLmZpbmFuY2VEZXRhaWxzU2VydmljZS5lbWl0KHN1bW1hcnkpO1xuICB9XG5cbiAgcHJpdmF0ZSBlbWl0Q3JlZGl0Q2FyZFN0YXRlKGlkQ2FyZFR5cGU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuY3JlZGl0Q2FyZFN0YXRlU2VydmljZS5lbWl0KHsgaWRDYXJkVHlwZSB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZW1pdEZvcm1GaWVsZHNTdGF0dXMoZm9ybTogVW50eXBlZEZvcm1Hcm91cCk6IHZvaWQge1xuICAgIGNvbnN0IGZvcm1GaWVsZHNTdGF0dXM6IEZvcm1GaWVsZHNTdGF0dXMgPSB7fTtcblxuICAgIE9iamVjdC5rZXlzKGZvcm0uY29udHJvbHMpLmZvckVhY2goKG5hbWUpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRyb2wgPSBmb3JtLmNvbnRyb2xzW25hbWVdO1xuICAgICAgZm9ybUZpZWxkc1N0YXR1c1tuYW1lXSA9IHtcbiAgICAgICAgbmFtZTogbmFtZSxcbiAgICAgICAgdmFsaWRhdGlvblN0YXR1czogY29udHJvbC5zdGF0dXMsXG4gICAgICAgIGVycm9yczogY29udHJvbC5lcnJvcnMsXG4gICAgICAgIGlzRm9jdXNlZDogdGhpcy5mb2N1c0ZpZWxkTmFtZSA9PT0gbmFtZSxcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICB0aGlzLmZvcm1GaWVsZHNTdGF0dXNTdWJqZWN0Lm5leHQoZm9ybUZpZWxkc1N0YXR1cyk7XG4gIH1cblxuICBwcml2YXRlIHNldHVwU3luY1NlcnZpY2UoZm9ybTogVW50eXBlZEZvcm1Hcm91cCwgZmllbGRzOiBGaWVsZFtdKTogdm9pZCB7XG4gICAgdGhpcy5zeW5jU2VydmljZS5zZXR1cChmb3JtLCBmaWVsZHMpO1xuICAgIHRoaXMuc3luY1NlcnZpY2UuZGF0YSRcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHRoaXMuZW1pdEZpbmFuY2VEZXRhaWxzKHJlc3BvbnNlLnN1bW1hcnkpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLnN5bmNTZXJ2aWNlLmZpZWxkQXN5bmNWYWxpZGF0aW9uJFxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgoZmllbGRBc3luY1ZhbGlkYXRpb24pID0+IHtcbiAgICAgICAgc3dpdGNoIChmaWVsZEFzeW5jVmFsaWRhdGlvbi5maWVsZC5uYW1lKSB7XG4gICAgICAgICAgY2FzZSBGaWVsZE5hbWVzLmNhcmROdW1iZXI6XG4gICAgICAgICAgICB0aGlzLmVtaXRDcmVkaXRDYXJkU3RhdGUoXG4gICAgICAgICAgICAgIGZpZWxkQXN5bmNWYWxpZGF0aW9uLnJlc3BvbnNlLnBhcmFtZXRlcnMuaWRDYXJkVHlwZVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlbkZpbmFuY2VEZXRhaWxzKCk6IHZvaWQge1xuICAgIHRoaXMuZmluYW5jZURldGFpbHNTZXJ2aWNlLmRhdGEkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKChmaW5hbmNlRGV0YWlscykgPT4gKHRoaXMuZmluYW5jZURldGFpbHMgPSBmaW5hbmNlRGV0YWlscykpO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Gb3JtU3RhdHVzQ2hhbmdlcyhmb3JtOiBVbnR5cGVkRm9ybUdyb3VwKTogdm9pZCB7XG4gICAgZm9ybS5zdGF0dXNDaGFuZ2VzXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5mb3JtRGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmVtaXRGb3JtRmllbGRzU3RhdHVzKGZvcm0pKTtcbiAgfVxufVxuIl19
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9wYXltZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBYyxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQWlCekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFJakYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBR3pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7Ozs7Ozs7OztBQU1oRCxNQUFNLE9BQU8sY0FBYztJQUd6QixJQUFXLGlCQUFpQjtRQUMxQixPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQWFELFlBQ21CLGlCQUFvQyxFQUNwQyxhQUE0QixFQUM1QixXQUF3QixFQUN4QixXQUF3QixFQUN4QixhQUE0QixFQUM1QixxQkFBNEMsRUFDNUMsc0JBQThDLEVBQzlDLGlCQUFvQyxFQUNwQyxvQkFBMEMsRUFDMUMsY0FBOEI7UUFUOUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDOUMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQTNCMUMsU0FBSSxHQUE0QixJQUFJLENBQUM7UUFNcEMsU0FBSSxHQUErQyxJQUFJLENBQUM7UUFDeEQsbUJBQWMsR0FBMEIsSUFBSSxDQUFDO1FBQzdDLG1CQUFjLEdBQWtCLElBQUksQ0FBQztRQUNyQyxXQUFNLEdBQVksRUFBRSxDQUFDO1FBR3JCLGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBQy9CLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUMxQiw0QkFBdUIsR0FDdEMsSUFBSSxlQUFlLENBQTBCLElBQUksQ0FBQyxDQUFDO0lBYWxELENBQUM7SUFFRyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQXFCO1FBQzNDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUNwQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFeEMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFFNUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFekQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDL0IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFckQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFeEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFckMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FDdkIsQ0FBQyxLQUFZLEVBQUUsRUFBRSxDQUFDLEtBQUssRUFBRSxTQUFTLDhCQUFvQixDQUN2RCxDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUssQ0FBQyxNQUFNO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1NBQ25DO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3JDLE9BQU87U0FDUjtRQUVELE1BQU0sY0FBYyxHQUFHLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQ3JELElBQUksQ0FBQyxNQUFNLEVBQ1gsSUFBSSxDQUFDLElBQUksQ0FDVixDQUFDO1FBRUYsSUFBSSxDQUFDLElBQUksR0FBRyxjQUFjLENBQUM7UUFFM0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVoRCxrQkFBa0I7UUFDbEIsSUFBSSxjQUFjLENBQUMsY0FBYyxLQUFLLFVBQVUsQ0FBQyxNQUFNLEVBQUU7WUFDdkQsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2xCLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRXJELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRU0sU0FBUztRQUNkLElBQUksSUFBSSxDQUFDLElBQUksWUFBWSxjQUFjLEVBQUU7WUFDdkMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUM7U0FDL0I7UUFFRCxPQUFPLElBQUksQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLE1BQU0sSUFBSSxFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBWTtRQUNoQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRW5FLElBQUksVUFBVSxFQUFFO1lBQ2QsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3BDO1FBRUQsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU0sVUFBVTtRQUNmLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1NBQzdDO1FBRUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTSxpQkFBaUI7UUFDdEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFFTSxvQkFBb0IsQ0FBQyxTQUFpQixFQUFFLFNBQW9CO1FBQ2pFLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsb0JBQW9CLENBQ25DLElBQUksQ0FBQyxJQUFJLEVBQ1QsSUFBSSxDQUFDLE1BQU0sRUFDWCxTQUFTLEVBQ1QsU0FBUyxDQUNWLENBQUM7U0FDSDtJQUNILENBQUM7SUFFTSxLQUFLLENBQUMsU0FBUztRQUNwQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2hDLE1BQU0sSUFBSSxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQztTQUM3QztRQUVELE1BQU0sTUFBTSxHQUF3QjtZQUNsQyxHQUFHLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlO1lBQ2hDLE9BQU8sRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDO1lBQzdDLFNBQVMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxFQUFFO1lBQ3BDLE1BQU0sRUFDSixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDLEVBQUUsS0FBSztnQkFDaEUsSUFBSTtTQUNQLENBQUM7UUFFRixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTSxjQUFjLENBQUMsS0FBWTtRQUNoQyxPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVNLGdCQUFnQixDQUFDLElBQVksRUFBRSxLQUFhO1FBQ2pELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pDLFdBQVcsRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVNLGdCQUFnQixDQUFDLElBQVksRUFBRSxLQUFxQjtRQUN6RCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV6QyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUM5QixPQUFPO1NBQ1I7UUFFRCxRQUFRLEtBQUssRUFBRTtZQUNiLEtBQUssY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUN4QixXQUFXLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO2dCQUMzQixNQUFNO2FBQ1A7WUFDRCxLQUFLLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDekIsV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFDO2dCQUM5QixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztnQkFDM0IsTUFBTTthQUNQO1NBQ0Y7UUFFRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxPQUFPO1FBQ1osSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFDM0IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRXJCLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVPLGtCQUFrQixDQUFDLE9BQW9CO1FBQzdDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVPLG1CQUFtQixDQUFDLFVBQWtCO1FBQzVDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFTyxvQkFBb0IsQ0FBQyxJQUFzQjtRQUNqRCxNQUFNLGdCQUFnQixHQUFxQixFQUFFLENBQUM7UUFFOUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDMUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNwQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsR0FBRztnQkFDdkIsSUFBSSxFQUFFLElBQUk7Z0JBQ1YsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLE1BQU07Z0JBQ2hDLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtnQkFDdEIsU0FBUyxFQUFFLElBQUksQ0FBQyxjQUFjLEtBQUssSUFBSTthQUN4QyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVPLGdCQUFnQixDQUFDLElBQXNCLEVBQUUsTUFBZTtRQUM5RCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLO2FBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQzlCLFNBQVMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUMsQ0FBQyxDQUFDLENBQUM7UUFFTCxJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQjthQUNuQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM5QixTQUFTLENBQUMsQ0FBQyxvQkFBb0IsRUFBRSxFQUFFO1lBQ2xDLFFBQVEsb0JBQW9CLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRTtnQkFDdkMsS0FBSyxVQUFVLENBQUMsVUFBVTtvQkFDeEIsSUFBSSxDQUFDLG1CQUFtQixDQUN0QixvQkFBb0IsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FDcEQsQ0FBQzthQUNMO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLO2FBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQzlCLFNBQVMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVPLHVCQUF1QixDQUFDLElBQXNCO1FBQ3BELElBQUksQ0FBQyxhQUFhO2FBQ2YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7YUFDbEMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7OzJHQWpQVSxjQUFjOytHQUFkLGNBQWMsY0FGYixNQUFNOzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0LCBmaWx0ZXIsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN1Ym1pdFJlc3BvbnNlIH0gZnJvbSAnLi9zdWJtaXQvcmVzcG9uc2Uvc3VibWl0LXJlc3BvbnNlLmNsYXNzJztcbmltcG9ydCB7IEZvcm1TZXJ2aWNlIH0gZnJvbSAnLi9mb3JtL2Zvcm0uc2VydmljZSc7XG5pbXBvcnQgeyBJbml0aWFsaXplUmVzcG9uc2UgfSBmcm9tICcuL2luaXRpYWxpemUvcmVzcG9uc2UvaW5pdGlhbGl6ZS1yZXNwb25zZS5jbGFzcyc7XG5pbXBvcnQgeyBJbml0aWFsaXplU2VydmljZSB9IGZyb20gJy4vaW5pdGlhbGl6ZS9pbml0aWFsaXplLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi9zdGF0dXMvc3RhdHVzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTdWJtaXRTZXJ2aWNlIH0gZnJvbSAnLi9zdWJtaXQvc3VibWl0LnNlcnZpY2UnO1xuaW1wb3J0IHsgU3luY1NlcnZpY2UgfSBmcm9tICcuL3N5bmMvc3luYy5zZXJ2aWNlJztcbmltcG9ydCB7IFN0YXR1c1NlcnZpY2UgfSBmcm9tICcuL3N0YXR1cy9zdGF0dXMuc2VydmljZSc7XG5pbXBvcnQgeyBOZXh0QWN0aW9uU2VydmljZSB9IGZyb20gJy4vYWN0aW9ucy9uZXh0LWFjdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IENvbnRyb2xDb25maWcgfSBmcm9tICcuL2Zvcm0vY29udHJvbHMvY29udHJvbC1jb25maWcnO1xuaW1wb3J0IHsgQ29udHJvbENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL2Zvcm0vY29udHJvbHMvY29udHJvbC1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBGaW5hbmNlRGV0YWlscyB9IGZyb20gJy4vZmluYW5jZS1kZXRhaWxzL2ZpbmFuY2UtZGV0YWlscy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRmluYW5jZURldGFpbHNTZXJ2aWNlIH0gZnJvbSAnLi9maW5hbmNlLWRldGFpbHMvZmluYW5jZS1kZXRhaWxzLnNlcnZpY2UnO1xuaW1wb3J0IHsgTmV4dEFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucy9uZXh0LWFjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgWHBzU3VtbWFyeSB9IGZyb20gJy4veHBzLXN1bW1hcnkuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi9maWVsZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUGF5bWVudENvbmZpZyB9IGZyb20gJy4vcGF5bWVudC1jb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7IGlzU3VibWl0UmVzcG9uc2UgfSBmcm9tICcuL3N1Ym1pdC9yZXNwb25zZS9pcy1zdWJtaXQtcmVzcG9uc2UuZnVuY3Rpb24nO1xuaW1wb3J0IHsgWHBzQm9vbGVhbiB9IGZyb20gJy4uL3hwcy1ib29sZWFuLmVudW0nO1xuaW1wb3J0IHsgU3RhdHVzUmVxdWVzdFBhcmFtcyB9IGZyb20gJy4vc3RhdHVzL3N0YXR1cy1yZXF1ZXN0L3N0YXR1cy1yZXF1ZXN0LXBhcmFtcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJy4vZm9ybS92YWxpZGF0b3JzL3ZhbGlkYXRpb24tZXJyb3JzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBJbnB1dEV2ZW50TmFtZSB9IGZyb20gJy4vZm9ybS9pbnB1dC1ldmVudC5lbnVtJztcbmltcG9ydCB7IEZvcm1GaWVsZHNTdGF0dXMgfSBmcm9tICcuL2Zvcm0vZm9ybS1maWVsZHMtc3RhdHVzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBUaHJlZURzU2VydmljZSB9IGZyb20gJy4vdGhyZWUtZHMvdGhyZWUtZHMuc2VydmljZSc7XG5pbXBvcnQgeyBYcHNDb21tYW5kIH0gZnJvbSAnLi94cHMtY29tYW5kLmVudW0nO1xuaW1wb3J0IHsgQ3JlZGl0Q2FyZFN0YXRlU2VydmljZSB9IGZyb20gJy4vY3JlZGl0LWNhcmQtc3RhdGUvY3JlZGl0LWNhcmQtc3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBGaWVsZE5hbWVzIH0gZnJvbSAnLi9maWVsZC1uYW1lcy5lbnVtJztcbmltcG9ydCB7IEZvcm1TdGF0ZSB9IGZyb20gJy4vZm9ybS9mb3JtLXN0YXRlLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBQYXltZW50U2VydmljZSB7XG4gIHB1YmxpYyBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwIHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIGdldCBmb3JtRmllbGRzU3RhdHVzJCgpOiBPYnNlcnZhYmxlPEZvcm1GaWVsZHNTdGF0dXM+IHtcbiAgICByZXR1cm4gdGhpcy5mb3JtRmllbGRzU3RhdHVzU3ViamVjdC5hc09ic2VydmFibGUoKS5waXBlKGZpbHRlcihCb29sZWFuKSk7XG4gIH1cblxuICBwcml2YXRlIGRhdGE6IEluaXRpYWxpemVSZXNwb25zZSB8IFN1Ym1pdFJlc3BvbnNlIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgZmluYW5jZURldGFpbHM6IEZpbmFuY2VEZXRhaWxzIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgZm9jdXNGaWVsZE5hbWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGZpZWxkczogRmllbGRbXSA9IFtdO1xuICBwcml2YXRlIGNvbmZpZyE6IFBheW1lbnRDb25maWc7XG5cbiAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgZm9ybURlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBmb3JtRmllbGRzU3RhdHVzU3ViamVjdCA9XG4gICAgbmV3IEJlaGF2aW9yU3ViamVjdDxGb3JtRmllbGRzU3RhdHVzIHwgbnVsbD4obnVsbCk7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5pdGlhbGl6ZVNlcnZpY2U6IEluaXRpYWxpemVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc3VibWl0U2VydmljZTogU3VibWl0U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN5bmNTZXJ2aWNlOiBTeW5jU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZvcm1TZXJ2aWNlOiBGb3JtU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0YXR1c1NlcnZpY2U6IFN0YXR1c1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBmaW5hbmNlRGV0YWlsc1NlcnZpY2U6IEZpbmFuY2VEZXRhaWxzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNyZWRpdENhcmRTdGF0ZVNlcnZpY2U6IENyZWRpdENhcmRTdGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZXh0QWN0aW9uU2VydmljZTogTmV4dEFjdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb250cm9sQ29uZmlnU2VydmljZTogQ29udHJvbENvbmZpZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB0aHJlZURzU2VydmljZTogVGhyZWVEc1NlcnZpY2VcbiAgKSB7fVxuXG4gIHB1YmxpYyBhc3luYyBpbml0aWFsaXplKGNvbmZpZzogUGF5bWVudENvbmZpZyk6IFByb21pc2U8RmllbGRbXT4ge1xuICAgIHRoaXMuZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgIHRoaXMuZm9ybURlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHRoaXMubGlzdGVuRmluYW5jZURldGFpbHMoKTtcblxuICAgIHRoaXMuY29uZmlnID0gY29uZmlnO1xuICAgIHRoaXMuZGF0YSA9IGF3YWl0IHRoaXMuaW5pdGlhbGl6ZVNlcnZpY2UucmVxdWVzdChjb25maWcpO1xuXG4gICAgdGhpcy5maWVsZHMgPSB0aGlzLmdldEZpZWxkcygpO1xuICAgIHRoaXMuZm9ybSA9IHRoaXMuZm9ybVNlcnZpY2UuY3JlYXRlRm9ybSh0aGlzLmZpZWxkcyk7XG5cbiAgICB0aGlzLnNldHVwU3luY1NlcnZpY2UodGhpcy5mb3JtLCB0aGlzLmZpZWxkcyk7XG4gICAgdGhpcy5saXN0ZW5Gb3JtU3RhdHVzQ2hhbmdlcyh0aGlzLmZvcm0pO1xuXG4gICAgdGhpcy5lbWl0RmluYW5jZURldGFpbHModGhpcy5kYXRhLnBheW1lbnRGb3JtPy5zdW1tYXJ5KTtcbiAgICB0aGlzLmVtaXRGb3JtRmllbGRzU3RhdHVzKHRoaXMuZm9ybSk7XG5cbiAgICByZXR1cm4gdGhpcy5maWVsZHMuZmlsdGVyKFxuICAgICAgKGZpZWxkOiBGaWVsZCkgPT4gZmllbGQ/LmlzVmlzaWJsZSA9PT0gWHBzQm9vbGVhbi50cnVlXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBzdWJtaXQoKTogUHJvbWlzZTxOZXh0QWN0aW9uIHwgbnVsbCB8IHZvaWQ+IHtcbiAgICBpZiAoIXRoaXMuZm9ybSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdmb3JtIGlzIGVtcHR5IScpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5mb3JtLnZhbGlkKSB7XG4gICAgICB0aGlzLmZvcm0ubWFya0FsbEFzVG91Y2hlZCgpO1xuICAgICAgdGhpcy5lbWl0Rm9ybUZpZWxkc1N0YXR1cyh0aGlzLmZvcm0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHN1Ym1pdFJlc3BvbnNlID0gYXdhaXQgdGhpcy5zdWJtaXRTZXJ2aWNlLnJlcXVlc3QoXG4gICAgICB0aGlzLmZpZWxkcyxcbiAgICAgIHRoaXMuZm9ybVxuICAgICk7XG5cbiAgICB0aGlzLmRhdGEgPSBzdWJtaXRSZXNwb25zZTtcblxuICAgIHRoaXMuZW1pdEZpbmFuY2VEZXRhaWxzKHN1Ym1pdFJlc3BvbnNlLnN1bW1hcnkpO1xuXG4gICAgLy8gSGFuZGxlIDNkcyBmbG93XG4gICAgaWYgKHN1Ym1pdFJlc3BvbnNlLmN1cnJlbnRDb21tYW5kID09PSBYcHNDb21tYW5kLmNyZWF0ZSkge1xuICAgICAgdGhpcy5ydW5UaHJlZURzKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5maWVsZHMgPSB0aGlzLmdldEZpZWxkcygpO1xuICAgIHRoaXMuZm9ybSA9IHRoaXMuZm9ybVNlcnZpY2UuY3JlYXRlRm9ybSh0aGlzLmZpZWxkcyk7XG5cbiAgICByZXR1cm4gdGhpcy5uZXh0QWN0aW9uU2VydmljZS5nZXROZXh0QWN0aW9uKHN1Ym1pdFJlc3BvbnNlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRGaWVsZHMoKTogRmllbGRbXSB7XG4gICAgaWYgKHRoaXMuZGF0YSBpbnN0YW5jZW9mIFN1Ym1pdFJlc3BvbnNlKSB7XG4gICAgICByZXR1cm4gdGhpcy5kYXRhLmZpZWxkcyA/PyBbXTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5kYXRhPy5wYXltZW50Rm9ybT8uZmllbGRzID8/IFtdO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHZhbGlkYXRlKGZpZWxkOiBGaWVsZCk6IFByb21pc2U8VmFsaWRhdGlvbkVycm9ycyB8IG51bGw+IHtcbiAgICBjb25zdCBzeW5jRXJyb3JzID0gdGhpcy5zeW5jU2VydmljZS5nZXRTeW5jVmFsaWRhdGlvbkVycm9ycyhmaWVsZCk7XG5cbiAgICBpZiAoc3luY0Vycm9ycykge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShzeW5jRXJyb3JzKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5zeW5jU2VydmljZS52YWxpZGF0ZShmaWVsZCk7XG4gIH1cblxuICBwdWJsaWMgcnVuVGhyZWVEcygpOiB2b2lkIHtcbiAgICBpZiAoIWlzU3VibWl0UmVzcG9uc2UodGhpcy5kYXRhKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdTaG91bGQgc3VibWl0IGZvcm0gZmlyc3QnKTtcbiAgICB9XG5cbiAgICB0aGlzLnRocmVlRHNTZXJ2aWNlLmNoZWNrVGhyZWVEcyh0aGlzLmRhdGEpO1xuICB9XG5cbiAgcHVibGljIGdldEZpbmFuY2VEZXRhaWxzKCk6IEZpbmFuY2VEZXRhaWxzIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuZmluYW5jZURldGFpbHM7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlRmllbGRGb3JtU3RhdGUoZmllbGROYW1lOiBzdHJpbmcsIGZvcm1TdGF0ZTogRm9ybVN0YXRlKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZm9ybSkge1xuICAgICAgdGhpcy5mb3JtU2VydmljZS51cGRhdGVGaWVsZEZvcm1TdGF0ZShcbiAgICAgICAgdGhpcy5mb3JtLFxuICAgICAgICB0aGlzLmZpZWxkcyxcbiAgICAgICAgZmllbGROYW1lLFxuICAgICAgICBmb3JtU3RhdGVcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldFN0YXR1cygpOiBQcm9taXNlPFN0YXR1cz4ge1xuICAgIGlmICghaXNTdWJtaXRSZXNwb25zZSh0aGlzLmRhdGEpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Nob3VsZCBzdWJtaXQgZm9ybSBmaXJzdCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHBhcmFtczogU3RhdHVzUmVxdWVzdFBhcmFtcyA9IHtcbiAgICAgIHBpZDogdGhpcy5jb25maWcucGF5bWVudE1ldGhvZElkLFxuICAgICAgaW52b2ljZTogcGFyc2VJbnQodGhpcy5kYXRhLmZpeEludm9pY2UgPz8gJycpLFxuICAgICAgc2lnbmF0dXJlOiB0aGlzLmRhdGEuc2lnbmF0dXJlID8/ICcnLFxuICAgICAgbG9jYWxlOlxuICAgICAgICB0aGlzLmRhdGEuZmllbGRzLmZpbmQoKGZpZWxkKSA9PiBmaWVsZC5uYW1lID09PSAnbG9jYWxlJyk/LnZhbHVlID8/XG4gICAgICAgICdlbicsXG4gICAgfTtcblxuICAgIHJldHVybiB0aGlzLnN0YXR1c1NlcnZpY2UuZ2V0U3RhdHVzKHBhcmFtcyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0RmllbGRDb25maWcoZmllbGQ6IEZpZWxkKTogQ29udHJvbENvbmZpZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2xDb25maWdTZXJ2aWNlLmdldENvbmZpZyhmaWVsZCk7XG4gIH1cblxuICBwdWJsaWMgY2hhbmdlRmllbGRWYWx1ZShuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBmb3JtQ29udHJvbCA9IHRoaXMuZm9ybT8uZ2V0KG5hbWUpO1xuICAgIGZvcm1Db250cm9sPy5zZXRWYWx1ZSh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgY2hhbmdlRmllbGRTdGF0ZShuYW1lOiBzdHJpbmcsIHN0YXRlOiBJbnB1dEV2ZW50TmFtZSk6IHZvaWQge1xuICAgIGNvbnN0IGZvcm1Db250cm9sID0gdGhpcy5mb3JtPy5nZXQobmFtZSk7XG5cbiAgICBpZiAoIXRoaXMuZm9ybSB8fCAhZm9ybUNvbnRyb2wpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKHN0YXRlKSB7XG4gICAgICBjYXNlIElucHV0RXZlbnROYW1lLmJsdXI6IHtcbiAgICAgICAgZm9ybUNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xuICAgICAgICB0aGlzLmZvY3VzRmllbGROYW1lID0gbnVsbDtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIElucHV0RXZlbnROYW1lLmZvY3VzOiB7XG4gICAgICAgIGZvcm1Db250cm9sLm1hcmtBc1VudG91Y2hlZCgpO1xuICAgICAgICB0aGlzLmZvY3VzRmllbGROYW1lID0gbmFtZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5lbWl0Rm9ybUZpZWxkc1N0YXR1cyh0aGlzLmZvcm0pO1xuICB9XG5cbiAgcHVibGljIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhID0gbnVsbDtcbiAgICB0aGlzLmZpbmFuY2VEZXRhaWxzID0gbnVsbDtcbiAgICB0aGlzLmZvcm0gPSBudWxsO1xuICAgIHRoaXMuZmllbGRzID0gW107XG4gICAgdGhpcy5mb3JtRGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuXG4gICAgdGhpcy50aHJlZURzU2VydmljZS5zdG9wQ2hlY2tpbmcoKTtcbiAgfVxuXG4gIHByaXZhdGUgZW1pdEZpbmFuY2VEZXRhaWxzKHN1bW1hcnk/OiBYcHNTdW1tYXJ5KTogdm9pZCB7XG4gICAgdGhpcy5maW5hbmNlRGV0YWlsc1NlcnZpY2UuZW1pdFdpdGhTdW1tYXJ5KHN1bW1hcnkpO1xuICB9XG5cbiAgcHJpdmF0ZSBlbWl0Q3JlZGl0Q2FyZFN0YXRlKGlkQ2FyZFR5cGU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuY3JlZGl0Q2FyZFN0YXRlU2VydmljZS5lbWl0KHsgaWRDYXJkVHlwZSB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZW1pdEZvcm1GaWVsZHNTdGF0dXMoZm9ybTogVW50eXBlZEZvcm1Hcm91cCk6IHZvaWQge1xuICAgIGNvbnN0IGZvcm1GaWVsZHNTdGF0dXM6IEZvcm1GaWVsZHNTdGF0dXMgPSB7fTtcblxuICAgIE9iamVjdC5rZXlzKGZvcm0uY29udHJvbHMpLmZvckVhY2goKG5hbWUpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRyb2wgPSBmb3JtLmNvbnRyb2xzW25hbWVdO1xuICAgICAgZm9ybUZpZWxkc1N0YXR1c1tuYW1lXSA9IHtcbiAgICAgICAgbmFtZTogbmFtZSxcbiAgICAgICAgdmFsaWRhdGlvblN0YXR1czogY29udHJvbC5zdGF0dXMsXG4gICAgICAgIGVycm9yczogY29udHJvbC5lcnJvcnMsXG4gICAgICAgIGlzRm9jdXNlZDogdGhpcy5mb2N1c0ZpZWxkTmFtZSA9PT0gbmFtZSxcbiAgICAgIH07XG4gICAgfSk7XG5cbiAgICB0aGlzLmZvcm1GaWVsZHNTdGF0dXNTdWJqZWN0Lm5leHQoZm9ybUZpZWxkc1N0YXR1cyk7XG4gIH1cblxuICBwcml2YXRlIHNldHVwU3luY1NlcnZpY2UoZm9ybTogVW50eXBlZEZvcm1Hcm91cCwgZmllbGRzOiBGaWVsZFtdKTogdm9pZCB7XG4gICAgdGhpcy5zeW5jU2VydmljZS5zZXR1cChmb3JtLCBmaWVsZHMpO1xuICAgIHRoaXMuc3luY1NlcnZpY2UuZGF0YSRcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHRoaXMuZW1pdEZpbmFuY2VEZXRhaWxzKHJlc3BvbnNlLnN1bW1hcnkpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLnN5bmNTZXJ2aWNlLmZpZWxkQXN5bmNWYWxpZGF0aW9uJFxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgoZmllbGRBc3luY1ZhbGlkYXRpb24pID0+IHtcbiAgICAgICAgc3dpdGNoIChmaWVsZEFzeW5jVmFsaWRhdGlvbi5maWVsZC5uYW1lKSB7XG4gICAgICAgICAgY2FzZSBGaWVsZE5hbWVzLmNhcmROdW1iZXI6XG4gICAgICAgICAgICB0aGlzLmVtaXRDcmVkaXRDYXJkU3RhdGUoXG4gICAgICAgICAgICAgIGZpZWxkQXN5bmNWYWxpZGF0aW9uLnJlc3BvbnNlLnBhcmFtZXRlcnMuaWRDYXJkVHlwZVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlbkZpbmFuY2VEZXRhaWxzKCk6IHZvaWQge1xuICAgIHRoaXMuZmluYW5jZURldGFpbHNTZXJ2aWNlLmRhdGEkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKChmaW5hbmNlRGV0YWlscykgPT4gKHRoaXMuZmluYW5jZURldGFpbHMgPSBmaW5hbmNlRGV0YWlscykpO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Gb3JtU3RhdHVzQ2hhbmdlcyhmb3JtOiBVbnR5cGVkRm9ybUdyb3VwKTogdm9pZCB7XG4gICAgZm9ybS5zdGF0dXNDaGFuZ2VzXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5mb3JtRGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmVtaXRGb3JtRmllbGRzU3RhdHVzKGZvcm0pKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLWZpbmFuY2UtaW5mby5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3N0YXR1cy9zdGF0dXMtZmluYW5jZS1pbmZvLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmluYW5jZUluZm9GaWVsZCB9IGZyb20gJy4vZmluYW5jZS1pbmZvLWZpZWxkLmludGVyZmFjZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhdHVzRmluYW5jZUluZm8ge1xuICBba2V5OiBzdHJpbmddOiBGaW5hbmNlSW5mb0ZpZWxkO1xufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLW9yZGVyLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvc3RhdHVzL3N0YXR1cy1vcmRlci5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExpbmVJdGVtIH0gZnJvbSAnLi9saW5lLWl0ZW0uaW50ZXJmYWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBTdGF0dXNPcmRlciB7XG4gIGxpbmVpdGVtcz86IExpbmVJdGVtW107XG4gIHNoaXBwaW5nPzoge1xuICAgIGN1cnJlbmN5OiBzdHJpbmc7XG4gICAgYW1vdW50OiBudW1iZXI7XG4gIH07XG4gIGNvbnRhaW5lZF90YXhlcz86IHtcbiAgICBzYWxlc190YXg/OiBib29sZWFuO1xuICAgIHVzZXJfdmF0PzogYm9vbGVhbjtcbiAgfTtcbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvc3RhdHVzL3N0YXR1cy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpbmFuY2VJbmZvRmllbGQgfSBmcm9tICcuL2ZpbmFuY2UtaW5mby1maWVsZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTGluZUl0ZW0gfSBmcm9tICcuL2xpbmUtaXRlbS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3RhdHVzRW51bSB9IGZyb20gJy4vc3RhdHVzLmVudW0nO1xuaW1wb3J0IHsgVGl0bGVDbGFzcyB9IGZyb20gJy4vdGl0bGUtY2xhc3MuZW51bSc7XG5pbXBvcnQgeyBXZWJTb2NrZXRDbGllbnRUeXBlIH0gZnJvbSAnLi93ZWItc29ja2V0LWNsaWVudC10eXBlLmVudW0nO1xuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXR1cyB7XG4gIHBvc3RNZXNzYWdlU3RhdHVzOiBzdHJpbmc7XG4gIHZpcnR1YWxDdXJyZW5jeUFtb3VudDogbnVtYmVyO1xuICBzdGF0dXNTdGF0ZTogU3RhdHVzRW51bTtcbiAgZW1haWw6IHN0cmluZztcbiAgd2ViU29ja2V0VXJsOiBzdHJpbmc7XG4gIHdlYlNvY2tldENoYW5uZWxOYW1lOiBzdHJpbmc7XG4gIHdlYlNvY2tldENsaWVudFR5cGU6IFdlYlNvY2tldENsaWVudFR5cGU7XG4gIGZpbmFuY2VJbmZvOiB7XG4gICAgW2tleTogc3RyaW5nXTogRmluYW5jZUluZm9GaWVsZDtcbiAgfTtcbiAgaXNDYW5jZWxVc2VyOiBib29sZWFuO1xuICBiYWNrVXJsU2V0dGluZ3M6IHtcbiAgICBiYWNrVXJsOiBzdHJpbmc7XG4gICAgYmFja1VybEFjdGlvbj86IHN0cmluZztcbiAgICBiYWNrVXJsQ2FwdGlvbjogc3RyaW5nO1xuICAgIHJldHVyblJlZ2lvbjogc3RyaW5nO1xuICAgIHNob3dCYWNrQnV0dG9uPzogYm9vbGVhbjtcbiAgfTtcbiAgYWRkaXRpb25hbEJhY2tCdXR0b246IHtcbiAgICBsaW5rOiBzdHJpbmc7XG4gICAgYWN0aW9uOiBzdHJpbmc7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICByZWdpb246IHN0cmluZztcbiAgICBpc0VuYWJsZWQ6IGJvb2xlYW47XG4gIH07XG4gIGdyb3VwOiBzdHJpbmc7XG4gIG5lZWRUb0NoZWNrOiBib29sZWFuO1xuICBhdXRvUmVkaXJlY3Q/OiB7IHRpbWU6IG51bWJlciB9O1xuICB1c2VyUmV0dXJuU3RhdHVzPzogc3RyaW5nO1xuICBzdGF0dXNNZXNzYWdlOiBzdHJpbmc7XG4gIGRpc2NvdW50OiBudW1iZXIgfCBudWxsO1xuICB1c2VySWQ/OiBzdHJpbmc7XG4gIGludm9pY2U/OiBudW1iZXI7XG4gIHBpZD86IG51bWJlcjtcbiAgcHJvamVjdEFtb3VudD86IHtcbiAgICBhbW91bnQ6IHN0cmluZztcbiAgICBjdXJyZW5jeTogc3RyaW5nO1xuICB9O1xuICB0aXRsZUNsYXNzOiBUaXRsZUNsYXNzO1xuICBpc1N1Y2Nlc3M/OiBib29sZWFuO1xuICBpc0NhbmNlbGVkPzogYm9vbGVhbjtcbiAgcGF5bWVudENvdW50cnlJc286IHN0cmluZztcbiAgb3JkZXI/OiB7XG4gICAgbGluZWl0ZW1zPzogTGluZUl0ZW1bXTtcbiAgICBzaGlwcGluZz86IHtcbiAgICAgIGN1cnJlbmN5OiBzdHJpbmc7XG4gICAgICBhbW91bnQ6IG51bWJlcjtcbiAgICB9O1xuICAgIGNvbnRhaW5lZF90YXhlcz86IHtcbiAgICAgIHNhbGVzX3RheD86IGJvb2xlYW47XG4gICAgICB1c2VyX3ZhdD86IGJvb2xlYW47XG4gICAgfTtcbiAgfTtcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvc3RhdHVzL3N0YXR1cy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0YXR1c0ZpbmFuY2VJbmZvIH0gZnJvbSAnLi9zdGF0dXMtZmluYW5jZS1pbmZvLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTdGF0dXNPcmRlciB9IGZyb20gJy4vc3RhdHVzLW9yZGVyLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTdGF0dXNFbnVtIH0gZnJvbSAnLi9zdGF0dXMuZW51bSc7XG5pbXBvcnQgeyBUaXRsZUNsYXNzIH0gZnJvbSAnLi90aXRsZS1jbGFzcy5lbnVtJztcbmltcG9ydCB7IFdlYlNvY2tldENsaWVudFR5cGUgfSBmcm9tICcuL3dlYi1zb2NrZXQtY2xpZW50LXR5cGUuZW51bSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhdHVzIHtcbiAgcG9zdE1lc3NhZ2VTdGF0dXM6IHN0cmluZztcbiAgdmlydHVhbEN1cnJlbmN5QW1vdW50OiBudW1iZXI7XG4gIHN0YXR1c1N0YXRlOiBTdGF0dXNFbnVtO1xuICBlbWFpbDogc3RyaW5nO1xuICB3ZWJTb2NrZXRVcmw6IHN0cmluZztcbiAgd2ViU29ja2V0Q2hhbm5lbE5hbWU6IHN0cmluZztcbiAgd2ViU29ja2V0Q2xpZW50VHlwZTogV2ViU29ja2V0Q2xpZW50VHlwZTtcbiAgZmluYW5jZUluZm86IFN0YXR1c0ZpbmFuY2VJbmZvO1xuICBpc0NhbmNlbFVzZXI6IGJvb2xlYW47XG4gIGJhY2tVcmxTZXR0aW5nczoge1xuICAgIGJhY2tVcmw6IHN0cmluZztcbiAgICBiYWNrVXJsQWN0aW9uPzogc3RyaW5nO1xuICAgIGJhY2tVcmxDYXB0aW9uOiBzdHJpbmc7XG4gICAgcmV0dXJuUmVnaW9uOiBzdHJpbmc7XG4gICAgc2hvd0JhY2tCdXR0b24/OiBib29sZWFuO1xuICB9O1xuICBhZGRpdGlvbmFsQmFja0J1dHRvbjoge1xuICAgIGxpbms6IHN0cmluZztcbiAgICBhY3Rpb246IHN0cmluZztcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIHJlZ2lvbjogc3RyaW5nO1xuICAgIGlzRW5hYmxlZDogYm9vbGVhbjtcbiAgfTtcbiAgZ3JvdXA6IHN0cmluZztcbiAgbmVlZFRvQ2hlY2s6IGJvb2xlYW47XG4gIGF1dG9SZWRpcmVjdD86IHsgdGltZTogbnVtYmVyIH07XG4gIHVzZXJSZXR1cm5TdGF0dXM/OiBzdHJpbmc7XG4gIHN0YXR1c01lc3NhZ2U6IHN0cmluZztcbiAgZGlzY291bnQ6IG51bWJlciB8IG51bGw7XG4gIHVzZXJJZD86IHN0cmluZztcbiAgaW52b2ljZT86IG51bWJlcjtcbiAgcGlkPzogbnVtYmVyO1xuICBwcm9qZWN0QW1vdW50Pzoge1xuICAgIGFtb3VudDogc3RyaW5nO1xuICAgIGN1cnJlbmN5OiBzdHJpbmc7XG4gIH07XG4gIHRpdGxlQ2xhc3M6IFRpdGxlQ2xhc3M7XG4gIGlzU3VjY2Vzcz86IGJvb2xlYW47XG4gIGlzQ2FuY2VsZWQ/OiBib29sZWFuO1xuICBwYXltZW50Q291bnRyeUlzbzogc3RyaW5nO1xuICBvcmRlcj86IFN0YXR1c09yZGVyO1xufVxuIl19
@@ -6,12 +6,14 @@ import { statusSearchParamsMap } from './status-request/status-search-params.map
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "../../url/url.service";
8
8
  import * as i2 from "./status-request/status-request.service";
9
- import * as i3 from "./listen-status/listen-status.service";
10
- import * as i4 from "../actions/next-action.service";
9
+ import * as i3 from "../finance-details/finance-details.service";
10
+ import * as i4 from "./listen-status/listen-status.service";
11
+ import * as i5 from "../actions/next-action.service";
11
12
  export class StatusService {
12
- constructor(urlService, statusRequestService, listenStatusService, nextActionService) {
13
+ constructor(urlService, statusRequestService, financeDetailsService, listenStatusService, nextActionService) {
13
14
  this.urlService = urlService;
14
15
  this.statusRequestService = statusRequestService;
16
+ this.financeDetailsService = financeDetailsService;
15
17
  this.listenStatusService = listenStatusService;
16
18
  this.nextActionService = nextActionService;
17
19
  }
@@ -20,6 +22,7 @@ export class StatusService {
20
22
  this.startWaitingStatusUpdates(params.invoice);
21
23
  this.statusRequestService.request();
22
24
  const statusResponse = await firstValueFrom(this.statusRequestService.response$);
25
+ this.financeDetailsService.emitWithStatus(statusResponse.status);
23
26
  return statusResponse.status;
24
27
  }
25
28
  async getStatusWithUrlSearchParams(url) {
@@ -46,16 +49,17 @@ export class StatusService {
46
49
  this.listenStatusService.statusUpdated$
47
50
  .pipe(skip(1))
48
51
  .subscribe(({ statusResponse }) => {
52
+ this.financeDetailsService.emitWithStatus(statusResponse.status);
49
53
  this.nextActionService.emitFlowUpdates(new StatusUpdatedAction(statusResponse));
50
54
  });
51
55
  }
52
56
  }
53
- StatusService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StatusService, deps: [{ token: i1.UrlService }, { token: i2.StatusRequestService }, { token: i3.ListenStatusService }, { token: i4.NextActionService }], target: i0.ɵɵFactoryTarget.Injectable });
57
+ StatusService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StatusService, deps: [{ token: i1.UrlService }, { token: i2.StatusRequestService }, { token: i3.FinanceDetailsService }, { token: i4.ListenStatusService }, { token: i5.NextActionService }], target: i0.ɵɵFactoryTarget.Injectable });
54
58
  StatusService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StatusService, providedIn: 'root' });
55
59
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StatusService, decorators: [{
56
60
  type: Injectable,
57
61
  args: [{
58
62
  providedIn: 'root',
59
63
  }]
60
- }], ctorParameters: function () { return [{ type: i1.UrlService }, { type: i2.StatusRequestService }, { type: i3.ListenStatusService }, { type: i4.NextActionService }]; } });
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3N0YXR1cy9zdGF0dXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBTTVDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBRTVGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDOzs7Ozs7QUFLbEYsTUFBTSxPQUFPLGFBQWE7SUFDeEIsWUFDbUIsVUFBc0IsRUFDdEIsb0JBQTBDLEVBQzFDLG1CQUF3QyxFQUN4QyxpQkFBb0M7UUFIcEMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0Qix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtJQUNwRCxDQUFDO0lBRUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUEyQjtRQUNoRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFbkQsSUFBSSxDQUFDLHlCQUF5QixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUvQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLENBQUM7UUFFcEMsTUFBTSxjQUFjLEdBQUcsTUFBTSxjQUFjLENBQ3pDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQ3BDLENBQUM7UUFFRixPQUFPLGNBQWMsQ0FBQyxNQUFNLENBQUM7SUFDL0IsQ0FBQztJQUVNLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxHQUFZO1FBQ3BELE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV2RCxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMseUNBQXlDLENBQUMsQ0FBQztTQUM1RDtRQUVELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU8sdUJBQXVCLENBQUMsR0FBWTtRQUMxQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLENBQUM7UUFDaEUsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBRWhELElBQ0UsMEJBQTBCLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUMsRUFDeEU7WUFDQSxPQUFPLElBQUksQ0FBQztTQUNiO1FBRUQsTUFBTSxNQUFNLEdBQXVDLEVBQUUsQ0FBQztRQUN0RCxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDOUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQy9ELENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxNQUF3QyxDQUFDO0lBQ2xELENBQUM7SUFFTyx5QkFBeUIsQ0FBQyxPQUFlO1FBQy9DLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFekMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGNBQWM7YUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNiLFNBQVMsQ0FBQyxDQUFDLEVBQUUsY0FBYyxFQUFFLEVBQUUsRUFBRTtZQUNoQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsZUFBZSxDQUNwQyxJQUFJLG1CQUFtQixDQUFDLGNBQWMsQ0FBQyxDQUN4QyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzswR0E1RFUsYUFBYTs4R0FBYixhQUFhLGNBRlosTUFBTTsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tLCBza2lwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTdGF0dXNSZXF1ZXN0U2VydmljZSB9IGZyb20gJy4vc3RhdHVzLXJlcXVlc3Qvc3RhdHVzLXJlcXVlc3Quc2VydmljZSc7XG5pbXBvcnQgeyBTdGF0dXNSZXF1ZXN0UGFyYW1zIH0gZnJvbSAnLi9zdGF0dXMtcmVxdWVzdC9zdGF0dXMtcmVxdWVzdC1wYXJhbXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IExpc3RlblN0YXR1c1NlcnZpY2UgfSBmcm9tICcuL2xpc3Rlbi1zdGF0dXMvbGlzdGVuLXN0YXR1cy5zZXJ2aWNlJztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4vc3RhdHVzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBOZXh0QWN0aW9uU2VydmljZSB9IGZyb20gJy4uL2FjdGlvbnMvbmV4dC1hY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBTdGF0dXNVcGRhdGVkQWN0aW9uIH0gZnJvbSAnLi4vYWN0aW9ucy9zdGF0dXMtdXBkYXRlZC9zdGF0dXMtdXBkYXRlZC5hY3Rpb24uY2xhc3MnO1xuaW1wb3J0IHsgVXJsU2VydmljZSB9IGZyb20gJy4uLy4uL3VybC91cmwuc2VydmljZSc7XG5pbXBvcnQgeyByZXF1aXJlZFN0YXR1c1NlYXJjaFBhcmFtcyB9IGZyb20gJy4vc3RhdHVzLXJlcXVlc3QvcmVxdWlyZWQtc3RhdHVzLXNlYXJjaC1wYXJhbXMuY29uc3QnO1xuaW1wb3J0IHsgc3RhdHVzU2VhcmNoUGFyYW1zTWFwIH0gZnJvbSAnLi9zdGF0dXMtcmVxdWVzdC9zdGF0dXMtc2VhcmNoLXBhcmFtcy5tYXAnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU3RhdHVzU2VydmljZSB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHVybFNlcnZpY2U6IFVybFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzdGF0dXNSZXF1ZXN0U2VydmljZTogU3RhdHVzUmVxdWVzdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBsaXN0ZW5TdGF0dXNTZXJ2aWNlOiBMaXN0ZW5TdGF0dXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmV4dEFjdGlvblNlcnZpY2U6IE5leHRBY3Rpb25TZXJ2aWNlXG4gICkge31cblxuICBwdWJsaWMgYXN5bmMgZ2V0U3RhdHVzKHBhcmFtczogU3RhdHVzUmVxdWVzdFBhcmFtcyk6IFByb21pc2U8U3RhdHVzPiB7XG4gICAgdGhpcy5zdGF0dXNSZXF1ZXN0U2VydmljZS5zZXRSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG5cbiAgICB0aGlzLnN0YXJ0V2FpdGluZ1N0YXR1c1VwZGF0ZXMocGFyYW1zLmludm9pY2UpO1xuXG4gICAgdGhpcy5zdGF0dXNSZXF1ZXN0U2VydmljZS5yZXF1ZXN0KCk7XG5cbiAgICBjb25zdCBzdGF0dXNSZXNwb25zZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy5zdGF0dXNSZXF1ZXN0U2VydmljZS5yZXNwb25zZSRcbiAgICApO1xuXG4gICAgcmV0dXJuIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cztcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRTdGF0dXNXaXRoVXJsU2VhcmNoUGFyYW1zKHVybD86IHN0cmluZyk6IFByb21pc2U8U3RhdHVzPiB7XG4gICAgY29uc3Qgc2VhcmNoUGFyYW1zID0gdGhpcy5nZXRSZXF1ZXN0UGFyYW1zRnJvbVVybCh1cmwpO1xuXG4gICAgaWYgKCFzZWFyY2hQYXJhbXMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gcmVxdWlyZWQgc2VhcmNoIHBhcmFtcyB0byBnZXQgc3RhdHVzJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZ2V0U3RhdHVzKHNlYXJjaFBhcmFtcyk7XG4gIH1cblxuICBwcml2YXRlIGdldFJlcXVlc3RQYXJhbXNGcm9tVXJsKHVybD86IHN0cmluZyk6IFN0YXR1c1JlcXVlc3RQYXJhbXMgfCBudWxsIHtcbiAgICBjb25zdCBzZWFyY2hQYXJhbXMgPSB0aGlzLnVybFNlcnZpY2UuZ2V0U2VhcmNoUGFyYW1zKHVybCA/PyAnJyk7XG4gICAgY29uc3Qga2V5cyA9IG5ldyBTZXQoT2JqZWN0LmtleXMoc2VhcmNoUGFyYW1zKSk7XG5cbiAgICBpZiAoXG4gICAgICByZXF1aXJlZFN0YXR1c1NlYXJjaFBhcmFtcy5zb21lKChyZXF1aXJlZEtleSkgPT4gIWtleXMuaGFzKHJlcXVpcmVkS2V5KSlcbiAgICApIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IHBhcmFtczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfCBudW1iZXIgfSA9IHt9O1xuICAgIHN0YXR1c1NlYXJjaFBhcmFtc01hcC5mb3JFYWNoKChzZXR0aW5ncywga2V5KSA9PiB7XG4gICAgICBwYXJhbXNbc2V0dGluZ3Mua2V5XSA9IHNldHRpbmdzLmNvbnZlcnRlcihzZWFyY2hQYXJhbXNba2V5XSk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcGFyYW1zIGFzIHVua25vd24gYXMgU3RhdHVzUmVxdWVzdFBhcmFtcztcbiAgfVxuXG4gIHByaXZhdGUgc3RhcnRXYWl0aW5nU3RhdHVzVXBkYXRlcyhpbnZvaWNlOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlblN0YXR1c1NlcnZpY2UubGlzdGVuKGludm9pY2UpO1xuXG4gICAgdGhpcy5saXN0ZW5TdGF0dXNTZXJ2aWNlLnN0YXR1c1VwZGF0ZWQkXG4gICAgICAucGlwZShza2lwKDEpKVxuICAgICAgLnN1YnNjcmliZSgoeyBzdGF0dXNSZXNwb25zZSB9KSA9PiB7XG4gICAgICAgIHRoaXMubmV4dEFjdGlvblNlcnZpY2UuZW1pdEZsb3dVcGRhdGVzKFxuICAgICAgICAgIG5ldyBTdGF0dXNVcGRhdGVkQWN0aW9uKHN0YXR1c1Jlc3BvbnNlKVxuICAgICAgICApO1xuICAgICAgfSk7XG4gIH1cbn1cbiJdfQ==
64
+ }], ctorParameters: function () { return [{ type: i1.UrlService }, { type: i2.StatusRequestService }, { type: i3.FinanceDetailsService }, { type: i4.ListenStatusService }, { type: i5.NextActionService }]; } });
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3N0YXR1cy9zdGF0dXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBTTVDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBRTVGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDOzs7Ozs7O0FBTWxGLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQ21CLFVBQXNCLEVBQ3RCLG9CQUEwQyxFQUMxQyxxQkFBNEMsRUFDNUMsbUJBQXdDLEVBQ3hDLGlCQUFvQztRQUpwQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFDcEQsQ0FBQztJQUVHLEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBMkI7UUFDaEQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRW5ELElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFL0MsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxDQUFDO1FBRXBDLE1BQU0sY0FBYyxHQUFHLE1BQU0sY0FBYyxDQUN6QyxJQUFJLENBQUMsb0JBQW9CLENBQUMsU0FBUyxDQUNwQyxDQUFDO1FBRUYsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFakUsT0FBTyxjQUFjLENBQUMsTUFBTSxDQUFDO0lBQy9CLENBQUM7SUFFTSxLQUFLLENBQUMsNEJBQTRCLENBQUMsR0FBWTtRQUNwRCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFdkQsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNqQixNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxDQUFDLENBQUM7U0FDNUQ7UUFFRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVPLHVCQUF1QixDQUFDLEdBQVk7UUFDMUMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2hFLE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUVoRCxJQUNFLDBCQUEwQixDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQ3hFO1lBQ0EsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE1BQU0sTUFBTSxHQUF1QyxFQUFFLENBQUM7UUFDdEQscUJBQXFCLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxFQUFFO1lBQzlDLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMvRCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sTUFBd0MsQ0FBQztJQUNsRCxDQUFDO0lBRU8seUJBQXlCLENBQUMsT0FBZTtRQUMvQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXpDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjO2FBQ3BDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDYixTQUFTLENBQUMsQ0FBQyxFQUFFLGNBQWMsRUFBRSxFQUFFLEVBQUU7WUFDaEMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDakUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FDcEMsSUFBSSxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsQ0FDeEMsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7MEdBaEVVLGFBQWE7OEdBQWIsYUFBYSxjQUZaLE1BQU07MkZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSwgc2tpcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU3RhdHVzUmVxdWVzdFNlcnZpY2UgfSBmcm9tICcuL3N0YXR1cy1yZXF1ZXN0L3N0YXR1cy1yZXF1ZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RhdHVzUmVxdWVzdFBhcmFtcyB9IGZyb20gJy4vc3RhdHVzLXJlcXVlc3Qvc3RhdHVzLXJlcXVlc3QtcGFyYW1zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBMaXN0ZW5TdGF0dXNTZXJ2aWNlIH0gZnJvbSAnLi9saXN0ZW4tc3RhdHVzL2xpc3Rlbi1zdGF0dXMuc2VydmljZSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuL3N0YXR1cy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTmV4dEFjdGlvblNlcnZpY2UgfSBmcm9tICcuLi9hY3Rpb25zL25leHQtYWN0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RhdHVzVXBkYXRlZEFjdGlvbiB9IGZyb20gJy4uL2FjdGlvbnMvc3RhdHVzLXVwZGF0ZWQvc3RhdHVzLXVwZGF0ZWQuYWN0aW9uLmNsYXNzJztcbmltcG9ydCB7IFVybFNlcnZpY2UgfSBmcm9tICcuLi8uLi91cmwvdXJsLnNlcnZpY2UnO1xuaW1wb3J0IHsgcmVxdWlyZWRTdGF0dXNTZWFyY2hQYXJhbXMgfSBmcm9tICcuL3N0YXR1cy1yZXF1ZXN0L3JlcXVpcmVkLXN0YXR1cy1zZWFyY2gtcGFyYW1zLmNvbnN0JztcbmltcG9ydCB7IHN0YXR1c1NlYXJjaFBhcmFtc01hcCB9IGZyb20gJy4vc3RhdHVzLXJlcXVlc3Qvc3RhdHVzLXNlYXJjaC1wYXJhbXMubWFwJztcbmltcG9ydCB7IEZpbmFuY2VEZXRhaWxzU2VydmljZSB9IGZyb20gJy4uL2ZpbmFuY2UtZGV0YWlscy9maW5hbmNlLWRldGFpbHMuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTdGF0dXNTZXJ2aWNlIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdXJsU2VydmljZTogVXJsU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0YXR1c1JlcXVlc3RTZXJ2aWNlOiBTdGF0dXNSZXF1ZXN0U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZpbmFuY2VEZXRhaWxzU2VydmljZTogRmluYW5jZURldGFpbHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbGlzdGVuU3RhdHVzU2VydmljZTogTGlzdGVuU3RhdHVzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5leHRBY3Rpb25TZXJ2aWNlOiBOZXh0QWN0aW9uU2VydmljZVxuICApIHt9XG5cbiAgcHVibGljIGFzeW5jIGdldFN0YXR1cyhwYXJhbXM6IFN0YXR1c1JlcXVlc3RQYXJhbXMpOiBQcm9taXNlPFN0YXR1cz4ge1xuICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2Uuc2V0UmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuXG4gICAgdGhpcy5zdGFydFdhaXRpbmdTdGF0dXNVcGRhdGVzKHBhcmFtcy5pbnZvaWNlKTtcblxuICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVxdWVzdCgpO1xuXG4gICAgY29uc3Qgc3RhdHVzUmVzcG9uc2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVzcG9uc2UkXG4gICAgKTtcblxuICAgIHRoaXMuZmluYW5jZURldGFpbHNTZXJ2aWNlLmVtaXRXaXRoU3RhdHVzKHN0YXR1c1Jlc3BvbnNlLnN0YXR1cyk7XG5cbiAgICByZXR1cm4gc3RhdHVzUmVzcG9uc2Uuc3RhdHVzO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldFN0YXR1c1dpdGhVcmxTZWFyY2hQYXJhbXModXJsPzogc3RyaW5nKTogUHJvbWlzZTxTdGF0dXM+IHtcbiAgICBjb25zdCBzZWFyY2hQYXJhbXMgPSB0aGlzLmdldFJlcXVlc3RQYXJhbXNGcm9tVXJsKHVybCk7XG5cbiAgICBpZiAoIXNlYXJjaFBhcmFtcykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyByZXF1aXJlZCBzZWFyY2ggcGFyYW1zIHRvIGdldCBzdGF0dXMnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5nZXRTdGF0dXMoc2VhcmNoUGFyYW1zKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UmVxdWVzdFBhcmFtc0Zyb21VcmwodXJsPzogc3RyaW5nKTogU3RhdHVzUmVxdWVzdFBhcmFtcyB8IG51bGwge1xuICAgIGNvbnN0IHNlYXJjaFBhcmFtcyA9IHRoaXMudXJsU2VydmljZS5nZXRTZWFyY2hQYXJhbXModXJsID8/ICcnKTtcbiAgICBjb25zdCBrZXlzID0gbmV3IFNldChPYmplY3Qua2V5cyhzZWFyY2hQYXJhbXMpKTtcblxuICAgIGlmIChcbiAgICAgIHJlcXVpcmVkU3RhdHVzU2VhcmNoUGFyYW1zLnNvbWUoKHJlcXVpcmVkS2V5KSA9PiAha2V5cy5oYXMocmVxdWlyZWRLZXkpKVxuICAgICkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3QgcGFyYW1zOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB9ID0ge307XG4gICAgc3RhdHVzU2VhcmNoUGFyYW1zTWFwLmZvckVhY2goKHNldHRpbmdzLCBrZXkpID0+IHtcbiAgICAgIHBhcmFtc1tzZXR0aW5ncy5rZXldID0gc2V0dGluZ3MuY29udmVydGVyKHNlYXJjaFBhcmFtc1trZXldKTtcbiAgICB9KTtcblxuICAgIHJldHVybiBwYXJhbXMgYXMgdW5rbm93biBhcyBTdGF0dXNSZXF1ZXN0UGFyYW1zO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGFydFdhaXRpbmdTdGF0dXNVcGRhdGVzKGludm9pY2U6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuU3RhdHVzU2VydmljZS5saXN0ZW4oaW52b2ljZSk7XG5cbiAgICB0aGlzLmxpc3RlblN0YXR1c1NlcnZpY2Uuc3RhdHVzVXBkYXRlZCRcbiAgICAgIC5waXBlKHNraXAoMSkpXG4gICAgICAuc3Vic2NyaWJlKCh7IHN0YXR1c1Jlc3BvbnNlIH0pID0+IHtcbiAgICAgICAgdGhpcy5maW5hbmNlRGV0YWlsc1NlcnZpY2UuZW1pdFdpdGhTdGF0dXMoc3RhdHVzUmVzcG9uc2Uuc3RhdHVzKTtcbiAgICAgICAgdGhpcy5uZXh0QWN0aW9uU2VydmljZS5lbWl0Rmxvd1VwZGF0ZXMoXG4gICAgICAgICAgbmV3IFN0YXR1c1VwZGF0ZWRBY3Rpb24oc3RhdHVzUmVzcG9uc2UpXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgfVxufVxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHBzLXN1bW1hcnkuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC94cHMtc3VtbWFyeS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFhwc0ZpbmFuY2UgfSBmcm9tICcuL3hwcy1maW5hbmNlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBYcHNQdXJjaGFzZSB9IGZyb20gJy4veHBzLXB1cmNoYXNlLmludGVyZmFjZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgWHBzU3VtbWFyeSB7XG4gIHB1cmNoYXNlOiBYcHNQdXJjaGFzZTtcbiAgZmluYW5jZTogWHBzRmluYW5jZTtcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHBzLXN1bW1hcnkuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC94cHMtc3VtbWFyeS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFhwc0ZpbmFuY2UgfSBmcm9tICcuL3hwcy1maW5hbmNlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBYcHNQdXJjaGFzZSB9IGZyb20gJy4veHBzLXB1cmNoYXNlLmludGVyZmFjZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgWHBzU3VtbWFyeSB7XG4gIHB1cmNoYXNlOiBYcHNQdXJjaGFzZTtcbiAgZmluYW5jZTogWHBzRmluYW5jZSB8IG51bGw7XG59XG4iXX0=
@@ -0,0 +1,57 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { isNull } from '../type-guards/is-null.function';
3
+ import { isUndefined } from '../type-guards/is-undefined.function';
4
+ import { windowToken } from '../window.token';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../settings/settings.service";
7
+ export class SessionService {
8
+ constructor(window, settingsService) {
9
+ this.window = window;
10
+ this.settingsService = settingsService;
11
+ this.cache = {};
12
+ }
13
+ /**
14
+ * @param {string} key must be uniq entire all app
15
+ * @param {unknown} value can be anything
16
+ */
17
+ set(key, value) {
18
+ this.cache[key] = value;
19
+ try {
20
+ this.window.sessionStorage.setItem(this.getStorageKey(key), JSON.stringify(value));
21
+ }
22
+ catch (error) {
23
+ console.warn('Session storage not available.');
24
+ }
25
+ }
26
+ get(key) {
27
+ const cacheValue = this.cache[key];
28
+ if (!isUndefined(cacheValue)) {
29
+ return cacheValue;
30
+ }
31
+ try {
32
+ const storageValue = this.window.sessionStorage.getItem(this.getStorageKey(key));
33
+ if (isNull(storageValue)) {
34
+ return null;
35
+ }
36
+ return JSON.parse(storageValue);
37
+ }
38
+ catch (error) {
39
+ return null;
40
+ }
41
+ }
42
+ getStorageKey(key) {
43
+ return `${key}${this.settingsService.token}`;
44
+ }
45
+ }
46
+ SessionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SessionService, deps: [{ token: windowToken }, { token: i1.SettingsService }], target: i0.ɵɵFactoryTarget.Injectable });
47
+ SessionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SessionService, providedIn: 'root' });
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SessionService, decorators: [{
49
+ type: Injectable,
50
+ args: [{
51
+ providedIn: 'root',
52
+ }]
53
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
54
+ type: Inject,
55
+ args: [windowToken]
56
+ }] }, { type: i1.SettingsService }]; } });
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvc2Vzc2lvbi9zZXNzaW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQUs5QyxNQUFNLE9BQU8sY0FBYztJQUd6QixZQUN3QyxNQUFzQixFQUMzQyxlQUFnQztRQURYLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBQzNDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUozQyxVQUFLLEdBQStCLEVBQUUsQ0FBQztJQUs1QyxDQUFDO0lBRUo7OztPQUdHO0lBQ0ksR0FBRyxDQUFDLEdBQVcsRUFBRSxLQUFjO1FBQ3BDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBRXhCLElBQUk7WUFDRixJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQ2hDLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLEVBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQ3RCLENBQUM7U0FDSDtRQUFDLE9BQU8sS0FBYyxFQUFFO1lBQ3ZCLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztTQUNoRDtJQUNILENBQUM7SUFFTSxHQUFHLENBQUksR0FBVztRQUN2QixNQUFNLFVBQVUsR0FBWSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRTVDLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDNUIsT0FBTyxVQUFlLENBQUM7U0FDeEI7UUFFRCxJQUFJO1lBQ0YsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUNyRCxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUN4QixDQUFDO1lBRUYsSUFBSSxNQUFNLENBQUMsWUFBWSxDQUFDLEVBQUU7Z0JBQ3hCLE9BQU8sSUFBSSxDQUFDO2FBQ2I7WUFFRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFNLENBQUM7U0FDdEM7UUFBQyxPQUFPLEtBQWMsRUFBRTtZQUN2QixPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQUVPLGFBQWEsQ0FBQyxHQUFXO1FBQy9CLE9BQU8sR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMvQyxDQUFDOzsyR0FqRFUsY0FBYyxrQkFJZixXQUFXOytHQUpWLGNBQWMsY0FGYixNQUFNOzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFLSSxNQUFNOzJCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV4dGVuZGVkV2luZG93IH0gZnJvbSAnLi4vZXh0ZW5kZWQtd2luZG93LmludGVyZmFjZSc7XG5pbXBvcnQgeyBTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICcuLi9zZXR0aW5ncy9zZXR0aW5ncy5zZXJ2aWNlJztcbmltcG9ydCB7IGlzTnVsbCB9IGZyb20gJy4uL3R5cGUtZ3VhcmRzL2lzLW51bGwuZnVuY3Rpb24nO1xuaW1wb3J0IHsgaXNVbmRlZmluZWQgfSBmcm9tICcuLi90eXBlLWd1YXJkcy9pcy11bmRlZmluZWQuZnVuY3Rpb24nO1xuaW1wb3J0IHsgd2luZG93VG9rZW4gfSBmcm9tICcuLi93aW5kb3cudG9rZW4nO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2Vzc2lvblNlcnZpY2Uge1xuICBwcml2YXRlIGNhY2hlOiB7IFtrZXk6IHN0cmluZ106IHVua25vd24gfSA9IHt9O1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KHdpbmRvd1Rva2VuKSBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdzogRXh0ZW5kZWRXaW5kb3csXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZXR0aW5nc1NlcnZpY2U6IFNldHRpbmdzU2VydmljZVxuICApIHt9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgbXVzdCBiZSB1bmlxIGVudGlyZSBhbGwgYXBwXG4gICAqIEBwYXJhbSB7dW5rbm93bn0gdmFsdWUgY2FuIGJlIGFueXRoaW5nXG4gICAqL1xuICBwdWJsaWMgc2V0KGtleTogc3RyaW5nLCB2YWx1ZTogdW5rbm93bik6IHZvaWQge1xuICAgIHRoaXMuY2FjaGVba2V5XSA9IHZhbHVlO1xuXG4gICAgdHJ5IHtcbiAgICAgIHRoaXMud2luZG93LnNlc3Npb25TdG9yYWdlLnNldEl0ZW0oXG4gICAgICAgIHRoaXMuZ2V0U3RvcmFnZUtleShrZXkpLFxuICAgICAgICBKU09OLnN0cmluZ2lmeSh2YWx1ZSlcbiAgICAgICk7XG4gICAgfSBjYXRjaCAoZXJyb3I6IHVua25vd24pIHtcbiAgICAgIGNvbnNvbGUud2FybignU2Vzc2lvbiBzdG9yYWdlIG5vdCBhdmFpbGFibGUuJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldDxUPihrZXk6IHN0cmluZyk6IFQgfCBudWxsIHtcbiAgICBjb25zdCBjYWNoZVZhbHVlOiB1bmtub3duID0gdGhpcy5jYWNoZVtrZXldO1xuXG4gICAgaWYgKCFpc1VuZGVmaW5lZChjYWNoZVZhbHVlKSkge1xuICAgICAgcmV0dXJuIGNhY2hlVmFsdWUgYXMgVDtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgY29uc3Qgc3RvcmFnZVZhbHVlID0gdGhpcy53aW5kb3cuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShcbiAgICAgICAgdGhpcy5nZXRTdG9yYWdlS2V5KGtleSlcbiAgICAgICk7XG5cbiAgICAgIGlmIChpc051bGwoc3RvcmFnZVZhbHVlKSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIEpTT04ucGFyc2Uoc3RvcmFnZVZhbHVlKSBhcyBUO1xuICAgIH0gY2F0Y2ggKGVycm9yOiB1bmtub3duKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFN0b3JhZ2VLZXkoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHtrZXl9JHt0aGlzLnNldHRpbmdzU2VydmljZS50b2tlbn1gO1xuICB9XG59XG4iXX0=