@vendasta/billing 8.2.0 → 9.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/_generated/host.service.mjs +25 -0
- package/esm2020/lib/_generated/index.mjs +2 -0
- package/esm2020/lib/_internal/bank-reconciliation.api.service.mjs +46 -0
- package/esm2020/lib/_internal/billing.api.service.mjs +216 -0
- package/esm2020/lib/_internal/bundle.api.service.mjs +50 -0
- package/esm2020/lib/_internal/contract-document.api.service.mjs +45 -0
- package/esm2020/lib/_internal/contract.api.service.mjs +55 -0
- package/esm2020/lib/_internal/credit.api.service.mjs +45 -0
- package/esm2020/lib/_internal/discount.api.service.mjs +53 -0
- package/esm2020/lib/_internal/enums/applied-discount.enum.mjs +14 -0
- package/esm2020/lib/_internal/enums/card.enum.mjs +17 -0
- package/esm2020/lib/_internal/enums/contract.enum.mjs +14 -0
- package/esm2020/lib/_internal/enums/currency.enum.mjs +35 -0
- package/esm2020/lib/_internal/enums/frequency.enum.mjs +14 -0
- package/esm2020/lib/_internal/enums/index.mjs +31 -0
- package/esm2020/lib/_internal/enums/invoice.enum.mjs +18 -0
- package/esm2020/lib/_internal/enums/merchant-report.enum.mjs +13 -0
- package/{esm2015/lib/_internal/enums/merchant.enum.js → esm2020/lib/_internal/enums/merchant.enum.mjs} +1 -1
- package/esm2020/lib/_internal/enums/month.enum.mjs +23 -0
- package/esm2020/lib/_internal/enums/payment-card.enum.mjs +24 -0
- package/esm2020/lib/_internal/enums/payment-processor.enum.mjs +13 -0
- package/{esm2015/lib/_internal/enums/payment.enum.js → esm2020/lib/_internal/enums/payment.enum.mjs} +1 -1
- package/esm2020/lib/_internal/enums/payout.enum.mjs +22 -0
- package/esm2020/lib/_internal/enums/pricing-plan.enum.mjs +22 -0
- package/{esm2015/lib/_internal/enums/product-summary.enum.js → esm2020/lib/_internal/enums/product-summary.enum.mjs} +1 -1
- package/esm2020/lib/_internal/enums/product.enum.mjs +17 -0
- package/esm2020/lib/_internal/enums/purchase.enum.mjs +27 -0
- package/esm2020/lib/_internal/enums/recurring-invoice.enum.mjs +29 -0
- package/esm2020/lib/_internal/enums/refund.enum.mjs +25 -0
- package/esm2020/lib/_internal/enums/sales-credit-note.enum.mjs +14 -0
- package/{esm2015/lib/_internal/enums/sales-invoice.enum.js → esm2020/lib/_internal/enums/sales-invoice.enum.mjs} +1 -1
- package/esm2020/lib/_internal/enums/sort-direction.enum.mjs +12 -0
- package/{esm2015/lib/_internal/enums/subscribe-validation.enum.js → esm2020/lib/_internal/enums/subscribe-validation.enum.mjs} +1 -1
- package/esm2020/lib/_internal/enums/subscription.enum.mjs +12 -0
- package/esm2020/lib/_internal/index.mjs +33 -0
- package/esm2020/lib/_internal/interfaces/api.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/applied-bundle.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/applied-discount.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/applied-tax-rate.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/balance.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/billable-item.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/bundle.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/card.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/commitment.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/common.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/contract-document.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/contract.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/credit.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/currency.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/customer-summary.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/date-range.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/discount.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/external-account.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/field-mask.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/frequency.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/index.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/invoice-template.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/invoice.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/merchant-report.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/merchant.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/metered-component.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/month.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/payment-card.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/payment-processor.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/payment.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/payout.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/pricing-plan-product.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/pricing-plan.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/product-pricing.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/product-summary.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/product.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/purchase.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/recurring-invoice.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/refund.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/retail-customer-configuration.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/sales-credit-note.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/sales-invoice.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/sort-direction.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/subscribe-validation.interface.mjs +8 -0
- package/esm2020/lib/_internal/interfaces/subscription.interface.mjs +2 -0
- package/esm2020/lib/_internal/interfaces/tax-rate.interface.mjs +2 -0
- package/esm2020/lib/_internal/invoice-template.api.service.mjs +85 -0
- package/esm2020/lib/_internal/invoice.api.service.mjs +116 -0
- package/esm2020/lib/_internal/merchant.api.service.mjs +159 -0
- package/esm2020/lib/_internal/objects/api.mjs +890 -0
- package/esm2020/lib/_internal/objects/applied-bundle.mjs +77 -0
- package/esm2020/lib/_internal/objects/applied-discount.mjs +46 -0
- package/esm2020/lib/_internal/objects/applied-tax-rate.mjs +39 -0
- package/esm2020/lib/_internal/objects/balance.mjs +45 -0
- package/esm2020/lib/_internal/objects/billable-item.mjs +562 -0
- package/esm2020/lib/_internal/objects/bundle.mjs +390 -0
- package/esm2020/lib/_internal/objects/card.mjs +7 -0
- package/esm2020/lib/_internal/objects/commitment.mjs +36 -0
- package/esm2020/lib/_internal/objects/common.mjs +56 -0
- package/esm2020/lib/_internal/objects/contract-document.mjs +141 -0
- package/esm2020/lib/_internal/objects/contract.mjs +474 -0
- package/esm2020/lib/_internal/objects/credit.mjs +114 -0
- package/esm2020/lib/_internal/objects/currency.mjs +7 -0
- package/esm2020/lib/_internal/objects/customer-summary.mjs +104 -0
- package/esm2020/lib/_internal/objects/date-range.mjs +36 -0
- package/esm2020/lib/_internal/objects/discount.mjs +299 -0
- package/esm2020/lib/_internal/objects/external-account.mjs +160 -0
- package/esm2020/lib/_internal/objects/field-mask.mjs +27 -0
- package/esm2020/lib/_internal/objects/frequency.mjs +7 -0
- package/esm2020/lib/_internal/objects/index.mjs +46 -0
- package/esm2020/lib/_internal/objects/invoice-template.mjs +707 -0
- package/esm2020/lib/_internal/objects/invoice.mjs +1117 -0
- package/esm2020/lib/_internal/objects/merchant-report.mjs +108 -0
- package/esm2020/lib/_internal/objects/merchant.mjs +991 -0
- package/esm2020/lib/_internal/objects/metered-component.mjs +97 -0
- package/esm2020/lib/_internal/objects/month.mjs +7 -0
- package/esm2020/lib/_internal/objects/payment-card.mjs +211 -0
- package/esm2020/lib/_internal/objects/payment-processor.mjs +7 -0
- package/esm2020/lib/_internal/objects/payment.mjs +1219 -0
- package/esm2020/lib/_internal/objects/payout.mjs +258 -0
- package/esm2020/lib/_internal/objects/pricing-plan-product.mjs +565 -0
- package/esm2020/lib/_internal/objects/pricing-plan.mjs +290 -0
- package/esm2020/lib/_internal/objects/product-pricing.mjs +139 -0
- package/esm2020/lib/_internal/objects/product-summary.mjs +538 -0
- package/esm2020/lib/_internal/objects/product.mjs +302 -0
- package/esm2020/lib/_internal/objects/purchase.mjs +524 -0
- package/esm2020/lib/_internal/objects/recurring-invoice.mjs +324 -0
- package/esm2020/lib/_internal/objects/refund.mjs +181 -0
- package/esm2020/lib/_internal/objects/retail-customer-configuration.mjs +159 -0
- package/esm2020/lib/_internal/objects/sales-credit-note.mjs +211 -0
- package/esm2020/lib/_internal/objects/sales-invoice.mjs +300 -0
- package/esm2020/lib/_internal/objects/sort-direction.mjs +7 -0
- package/esm2020/lib/_internal/objects/subscribe-validation.mjs +31 -0
- package/esm2020/lib/_internal/objects/subscription.mjs +555 -0
- package/esm2020/lib/_internal/objects/tax-rate.mjs +342 -0
- package/esm2020/lib/_internal/payment-method.api.service.mjs +49 -0
- package/esm2020/lib/_internal/payment.api.service.mjs +102 -0
- package/esm2020/lib/_internal/pricing.api.service.mjs +81 -0
- package/esm2020/lib/_internal/product-summary.api.service.mjs +46 -0
- package/esm2020/lib/_internal/product.api.service.mjs +47 -0
- package/esm2020/lib/_internal/purchase.api.service.mjs +59 -0
- package/esm2020/lib/_internal/recurring-invoice.api.service.mjs +60 -0
- package/esm2020/lib/_internal/refund.api.service.mjs +45 -0
- package/esm2020/lib/_internal/retail-customer-configuration.api.service.mjs +45 -0
- package/esm2020/lib/_internal/sales-credit-note.api.service.mjs +45 -0
- package/esm2020/lib/_internal/sales-invoice.api.service.mjs +50 -0
- package/esm2020/lib/_internal/tax.api.service.mjs +63 -0
- package/esm2020/lib/_internal/vendor.api.service.mjs +46 -0
- package/esm2020/lib/index.mjs +3 -0
- package/esm2020/public_api.mjs +2 -0
- package/esm2020/vendasta-billing.mjs +5 -0
- package/fesm2015/{vendasta-billing.js → vendasta-billing.mjs} +717 -5236
- package/fesm2015/vendasta-billing.mjs.map +1 -0
- package/fesm2020/vendasta-billing.mjs +14454 -0
- package/fesm2020/vendasta-billing.mjs.map +1 -0
- package/lib/_generated/host.service.d.ts +5 -9
- package/lib/_internal/bank-reconciliation.api.service.d.ts +4 -0
- package/lib/_internal/billing.api.service.d.ts +4 -0
- package/lib/_internal/bundle.api.service.d.ts +4 -0
- package/lib/_internal/contract-document.api.service.d.ts +4 -0
- package/lib/_internal/contract.api.service.d.ts +4 -0
- package/lib/_internal/credit.api.service.d.ts +4 -0
- package/lib/_internal/discount.api.service.d.ts +4 -0
- package/lib/_internal/interfaces/api.interface.d.ts +8 -1
- package/lib/_internal/interfaces/index.d.ts +2 -2
- package/lib/_internal/interfaces/product-pricing.interface.d.ts +5 -0
- package/lib/_internal/interfaces/recurring-invoice.interface.d.ts +2 -1
- package/lib/_internal/invoice-template.api.service.d.ts +4 -0
- package/lib/_internal/invoice.api.service.d.ts +4 -0
- package/lib/_internal/merchant.api.service.d.ts +4 -0
- package/lib/_internal/objects/api.d.ts +14 -1
- package/lib/_internal/objects/index.d.ts +2 -2
- package/lib/_internal/objects/product-pricing.d.ts +8 -0
- package/lib/_internal/objects/recurring-invoice.d.ts +2 -1
- package/lib/_internal/payment-method.api.service.d.ts +4 -0
- package/lib/_internal/payment.api.service.d.ts +4 -0
- package/lib/_internal/pricing.api.service.d.ts +7 -2
- package/lib/_internal/product-summary.api.service.d.ts +4 -0
- package/lib/_internal/product.api.service.d.ts +4 -0
- package/lib/_internal/purchase.api.service.d.ts +4 -0
- package/lib/_internal/recurring-invoice.api.service.d.ts +4 -0
- package/lib/_internal/refund.api.service.d.ts +4 -0
- package/lib/_internal/retail-customer-configuration.api.service.d.ts +4 -0
- package/lib/_internal/sales-credit-note.api.service.d.ts +4 -0
- package/lib/_internal/sales-invoice.api.service.d.ts +4 -0
- package/lib/_internal/tax.api.service.d.ts +4 -0
- package/lib/_internal/vendor.api.service.d.ts +4 -0
- package/lib/index.d.ts +2 -37
- package/package.json +26 -15
- package/src/README.md +1 -0
- package/vendasta-billing.d.ts +1 -0
- package/bundles/vendasta-billing.umd.js +0 -19912
- package/bundles/vendasta-billing.umd.js.map +0 -1
- package/bundles/vendasta-billing.umd.min.js +0 -16
- package/bundles/vendasta-billing.umd.min.js.map +0 -1
- package/esm2015/lib/_generated/host.service.js +0 -65
- package/esm2015/lib/_generated/index.js +0 -2
- package/esm2015/lib/_internal/bank-reconciliation.api.service.js +0 -47
- package/esm2015/lib/_internal/billing.api.service.js +0 -217
- package/esm2015/lib/_internal/bundle.api.service.js +0 -51
- package/esm2015/lib/_internal/contract-document.api.service.js +0 -46
- package/esm2015/lib/_internal/contract.api.service.js +0 -56
- package/esm2015/lib/_internal/credit.api.service.js +0 -46
- package/esm2015/lib/_internal/discount.api.service.js +0 -54
- package/esm2015/lib/_internal/enums/applied-discount.enum.js +0 -14
- package/esm2015/lib/_internal/enums/card.enum.js +0 -17
- package/esm2015/lib/_internal/enums/contract.enum.js +0 -14
- package/esm2015/lib/_internal/enums/currency.enum.js +0 -35
- package/esm2015/lib/_internal/enums/frequency.enum.js +0 -14
- package/esm2015/lib/_internal/enums/index.js +0 -31
- package/esm2015/lib/_internal/enums/invoice.enum.js +0 -18
- package/esm2015/lib/_internal/enums/merchant-report.enum.js +0 -13
- package/esm2015/lib/_internal/enums/month.enum.js +0 -23
- package/esm2015/lib/_internal/enums/payment-card.enum.js +0 -24
- package/esm2015/lib/_internal/enums/payment-processor.enum.js +0 -13
- package/esm2015/lib/_internal/enums/payout.enum.js +0 -22
- package/esm2015/lib/_internal/enums/pricing-plan.enum.js +0 -22
- package/esm2015/lib/_internal/enums/product.enum.js +0 -17
- package/esm2015/lib/_internal/enums/purchase.enum.js +0 -27
- package/esm2015/lib/_internal/enums/recurring-invoice.enum.js +0 -29
- package/esm2015/lib/_internal/enums/refund.enum.js +0 -25
- package/esm2015/lib/_internal/enums/sales-credit-note.enum.js +0 -14
- package/esm2015/lib/_internal/enums/sort-direction.enum.js +0 -12
- package/esm2015/lib/_internal/enums/subscription.enum.js +0 -12
- package/esm2015/lib/_internal/index.js +0 -33
- package/esm2015/lib/_internal/interfaces/api.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/applied-bundle.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/applied-discount.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/applied-tax-rate.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/balance.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/billable-item.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/bundle.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/card.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/commitment.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/common.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/contract-document.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/contract.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/credit.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/currency.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/customer-summary.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/date-range.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/discount.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/external-account.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/field-mask.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/frequency.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/index.js +0 -2
- package/esm2015/lib/_internal/interfaces/invoice-template.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/invoice.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/merchant-report.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/merchant.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/metered-component.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/month.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/payment-card.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/payment-processor.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/payment.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/payout.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/pricing-plan-product.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/pricing-plan.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/product-pricing.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/product-summary.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/product.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/purchase.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/recurring-invoice.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/refund.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/retail-customer-configuration.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/sales-credit-note.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/sales-invoice.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/sort-direction.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/subscribe-validation.interface.js +0 -8
- package/esm2015/lib/_internal/interfaces/subscription.interface.js +0 -2
- package/esm2015/lib/_internal/interfaces/tax-rate.interface.js +0 -2
- package/esm2015/lib/_internal/invoice-template.api.service.js +0 -86
- package/esm2015/lib/_internal/invoice.api.service.js +0 -117
- package/esm2015/lib/_internal/merchant.api.service.js +0 -160
- package/esm2015/lib/_internal/objects/api.js +0 -841
- package/esm2015/lib/_internal/objects/applied-bundle.js +0 -77
- package/esm2015/lib/_internal/objects/applied-discount.js +0 -46
- package/esm2015/lib/_internal/objects/applied-tax-rate.js +0 -39
- package/esm2015/lib/_internal/objects/balance.js +0 -45
- package/esm2015/lib/_internal/objects/billable-item.js +0 -562
- package/esm2015/lib/_internal/objects/bundle.js +0 -390
- package/esm2015/lib/_internal/objects/card.js +0 -7
- package/esm2015/lib/_internal/objects/commitment.js +0 -36
- package/esm2015/lib/_internal/objects/common.js +0 -56
- package/esm2015/lib/_internal/objects/contract-document.js +0 -141
- package/esm2015/lib/_internal/objects/contract.js +0 -474
- package/esm2015/lib/_internal/objects/credit.js +0 -114
- package/esm2015/lib/_internal/objects/currency.js +0 -7
- package/esm2015/lib/_internal/objects/customer-summary.js +0 -104
- package/esm2015/lib/_internal/objects/date-range.js +0 -36
- package/esm2015/lib/_internal/objects/discount.js +0 -299
- package/esm2015/lib/_internal/objects/external-account.js +0 -160
- package/esm2015/lib/_internal/objects/field-mask.js +0 -27
- package/esm2015/lib/_internal/objects/frequency.js +0 -7
- package/esm2015/lib/_internal/objects/index.js +0 -46
- package/esm2015/lib/_internal/objects/invoice-template.js +0 -707
- package/esm2015/lib/_internal/objects/invoice.js +0 -1117
- package/esm2015/lib/_internal/objects/merchant-report.js +0 -108
- package/esm2015/lib/_internal/objects/merchant.js +0 -991
- package/esm2015/lib/_internal/objects/metered-component.js +0 -97
- package/esm2015/lib/_internal/objects/month.js +0 -7
- package/esm2015/lib/_internal/objects/payment-card.js +0 -211
- package/esm2015/lib/_internal/objects/payment-processor.js +0 -7
- package/esm2015/lib/_internal/objects/payment.js +0 -1219
- package/esm2015/lib/_internal/objects/payout.js +0 -258
- package/esm2015/lib/_internal/objects/pricing-plan-product.js +0 -565
- package/esm2015/lib/_internal/objects/pricing-plan.js +0 -290
- package/esm2015/lib/_internal/objects/product-pricing.js +0 -107
- package/esm2015/lib/_internal/objects/product-summary.js +0 -538
- package/esm2015/lib/_internal/objects/product.js +0 -302
- package/esm2015/lib/_internal/objects/purchase.js +0 -524
- package/esm2015/lib/_internal/objects/recurring-invoice.js +0 -324
- package/esm2015/lib/_internal/objects/refund.js +0 -181
- package/esm2015/lib/_internal/objects/retail-customer-configuration.js +0 -159
- package/esm2015/lib/_internal/objects/sales-credit-note.js +0 -211
- package/esm2015/lib/_internal/objects/sales-invoice.js +0 -300
- package/esm2015/lib/_internal/objects/sort-direction.js +0 -7
- package/esm2015/lib/_internal/objects/subscribe-validation.js +0 -31
- package/esm2015/lib/_internal/objects/subscription.js +0 -555
- package/esm2015/lib/_internal/objects/tax-rate.js +0 -342
- package/esm2015/lib/_internal/payment-method.api.service.js +0 -50
- package/esm2015/lib/_internal/payment.api.service.js +0 -103
- package/esm2015/lib/_internal/pricing.api.service.js +0 -77
- package/esm2015/lib/_internal/product-summary.api.service.js +0 -47
- package/esm2015/lib/_internal/product.api.service.js +0 -48
- package/esm2015/lib/_internal/purchase.api.service.js +0 -60
- package/esm2015/lib/_internal/recurring-invoice.api.service.js +0 -61
- package/esm2015/lib/_internal/refund.api.service.js +0 -46
- package/esm2015/lib/_internal/retail-customer-configuration.api.service.js +0 -46
- package/esm2015/lib/_internal/sales-credit-note.api.service.js +0 -46
- package/esm2015/lib/_internal/sales-invoice.api.service.js +0 -51
- package/esm2015/lib/_internal/tax.api.service.js +0 -64
- package/esm2015/lib/_internal/vendor.api.service.js +0 -47
- package/esm2015/lib/applied_bundle/applied_bundle.js +0 -12
- package/esm2015/lib/applied_bundle/index.js +0 -2
- package/esm2015/lib/applied_discount/applied_discount.js +0 -48
- package/esm2015/lib/applied_discount/index.js +0 -2
- package/esm2015/lib/bank_account/bank-account.service.js +0 -38
- package/esm2015/lib/bank_account/bank_account.js +0 -13
- package/esm2015/lib/bank_account/index.js +0 -3
- package/esm2015/lib/bank_reconciliation/bank-reconciliation.service.js +0 -54
- package/esm2015/lib/bank_reconciliation/index.js +0 -3
- package/esm2015/lib/bank_reconciliation/payout.js +0 -53
- package/esm2015/lib/billable-item/billable-item.js +0 -40
- package/esm2015/lib/billable-item/billable-item.service.js +0 -31
- package/esm2015/lib/billable-item/index.js +0 -2
- package/esm2015/lib/billing-host.service.js +0 -41
- package/esm2015/lib/billing.service.js +0 -376
- package/esm2015/lib/bundle/bundle.js +0 -37
- package/esm2015/lib/bundle/bundle.service.js +0 -56
- package/esm2015/lib/bundle/index.js +0 -2
- package/esm2015/lib/contract/contract.js +0 -21
- package/esm2015/lib/contract/contract.service.js +0 -39
- package/esm2015/lib/contract/dimension.js +0 -21
- package/esm2015/lib/contract/index.js +0 -5
- package/esm2015/lib/contract/mutations.js +0 -11
- package/esm2015/lib/contract-document/contract-document.js +0 -9
- package/esm2015/lib/contract-document/contract-document.service.js +0 -68
- package/esm2015/lib/contract-document/index.js +0 -2
- package/esm2015/lib/contract-document/list-contract-document.js +0 -2
- package/esm2015/lib/core/index.js +0 -3
- package/esm2015/lib/core/paged-response.js +0 -8
- package/esm2015/lib/core/sort-direction.js +0 -6
- package/esm2015/lib/credit/credit.js +0 -8
- package/esm2015/lib/credit/credit.service.js +0 -33
- package/esm2015/lib/credit/index.js +0 -2
- package/esm2015/lib/customer_summary/customer-summary.js +0 -15
- package/esm2015/lib/discount/discount.js +0 -18
- package/esm2015/lib/discount/discount.service.js +0 -73
- package/esm2015/lib/discount/discount_type.js +0 -32
- package/esm2015/lib/discount/index.js +0 -3
- package/esm2015/lib/discount/list-discount.js +0 -2
- package/esm2015/lib/http-shared/error-handlers.js +0 -20
- package/esm2015/lib/index.js +0 -38
- package/esm2015/lib/invoice/index.js +0 -3
- package/esm2015/lib/invoice/invoice.js +0 -198
- package/esm2015/lib/invoice/invoice.service.js +0 -254
- package/esm2015/lib/invoice/list-invoice.js +0 -2
- package/esm2015/lib/invoice-template/index.js +0 -2
- package/esm2015/lib/invoice-template/invoice-template.js +0 -38
- package/esm2015/lib/invoice-template/invoice-template.service.js +0 -78
- package/esm2015/lib/merchant/balance.js +0 -2
- package/esm2015/lib/merchant/index.js +0 -5
- package/esm2015/lib/merchant/merchant.interface.js +0 -2
- package/esm2015/lib/merchant/merchant.js +0 -20
- package/esm2015/lib/merchant/merchant.service.js +0 -212
- package/esm2015/lib/merchant/payout-summary.js +0 -32
- package/esm2015/lib/merchant/retail-configuration.js +0 -57
- package/esm2015/lib/merchant-report/index.js +0 -2
- package/esm2015/lib/merchant-report/merchant-report-status.js +0 -2
- package/esm2015/lib/merchant-report/merchant-report.interfaces.js +0 -2
- package/esm2015/lib/merchant-report/merchant-report.js +0 -2
- package/esm2015/lib/merchant-report/merchant-report.service.js +0 -38
- package/esm2015/lib/payment/dispute.js +0 -92
- package/esm2015/lib/payment/index.js +0 -10
- package/esm2015/lib/payment/payment-allocation-type.js +0 -18
- package/esm2015/lib/payment/payment-source.js +0 -18
- package/esm2015/lib/payment/payment-status.js +0 -17
- package/esm2015/lib/payment/payment.js +0 -292
- package/esm2015/lib/payment/payment.service.js +0 -138
- package/esm2015/lib/payment/retail-payment.js +0 -70
- package/esm2015/lib/payment/retail-status.js +0 -50
- package/esm2015/lib/payment-card/index.js +0 -3
- package/esm2015/lib/payment-card/payment-card.js +0 -60
- package/esm2015/lib/payment-card/payment-card.service.js +0 -45
- package/esm2015/lib/payment-method/index.js +0 -2
- package/esm2015/lib/payment-method/payment-method.service.js +0 -43
- package/esm2015/lib/pricing/billing-strategy.js +0 -39
- package/esm2015/lib/pricing/commitment.js +0 -7
- package/esm2015/lib/pricing/currency.js +0 -86
- package/esm2015/lib/pricing/frequency.js +0 -42
- package/esm2015/lib/pricing/index.js +0 -12
- package/esm2015/lib/pricing/list-pricing-plan-product-filter.js +0 -2
- package/esm2015/lib/pricing/pricing-plan-product.js +0 -53
- package/esm2015/lib/pricing/pricing-plan.js +0 -14
- package/esm2015/lib/pricing/pricing-plan.service.js +0 -287
- package/esm2015/lib/pricing/product-pricing-rules.js +0 -10
- package/esm2015/lib/pricing/product-pricing-type.js +0 -31
- package/esm2015/lib/pricing/product-pricing.js +0 -44
- package/esm2015/lib/pricing/wholesale-pricing.service.js +0 -61
- package/esm2015/lib/product/index.js +0 -3
- package/esm2015/lib/product/list-products.js +0 -30
- package/esm2015/lib/product/product.js +0 -10
- package/esm2015/lib/product-summary/index.js +0 -3
- package/esm2015/lib/product-summary/product-summary.service.js +0 -42
- package/esm2015/lib/product-summary/subscription-retention.js +0 -19
- package/esm2015/lib/purchase/index.js +0 -4
- package/esm2015/lib/purchase/list-purchases.js +0 -17
- package/esm2015/lib/purchase/purchase.js +0 -79
- package/esm2015/lib/purchase/purchase.service.js +0 -31
- package/esm2015/lib/purchase/purchase_status.js +0 -26
- package/esm2015/lib/recurring_invoice/collection-method.js +0 -31
- package/esm2015/lib/recurring_invoice/index.js +0 -6
- package/esm2015/lib/recurring_invoice/interval.js +0 -42
- package/esm2015/lib/recurring_invoice/payment-processor.js +0 -32
- package/esm2015/lib/recurring_invoice/recurring-invoice.js +0 -123
- package/esm2015/lib/recurring_invoice/recurring-invoice.service.js +0 -64
- package/esm2015/lib/recurring_invoice/status.js +0 -37
- package/esm2015/lib/refund/index.js +0 -3
- package/esm2015/lib/refund/refund.js +0 -81
- package/esm2015/lib/refund/refund.service.js +0 -53
- package/esm2015/lib/retail-customer-configuration/index.js +0 -3
- package/esm2015/lib/retail-customer-configuration/retail-customer-configuration.js +0 -44
- package/esm2015/lib/retail-customer-configuration/retail-customer-configuration.service.js +0 -39
- package/esm2015/lib/revenue/index.js +0 -2
- package/esm2015/lib/revenue/revenue.interfaces.js +0 -2
- package/esm2015/lib/revenue/revenue.service.js +0 -34
- package/esm2015/lib/sales-credit-note/index.js +0 -3
- package/esm2015/lib/sales-credit-note/sales-credit-note.js +0 -53
- package/esm2015/lib/sales-credit-note/sales-credit-note.service.js +0 -72
- package/esm2015/lib/sales-invoice/index.js +0 -3
- package/esm2015/lib/sales-invoice/sales-invoice.js +0 -87
- package/esm2015/lib/sales-invoice/sales-invoice.service.js +0 -77
- package/esm2015/lib/sku.js +0 -4
- package/esm2015/lib/stripe-file/file.js +0 -2
- package/esm2015/lib/stripe-file/index.js +0 -3
- package/esm2015/lib/stripe-file/purpose.js +0 -13
- package/esm2015/lib/stripe-file/stripe-file.service.js +0 -35
- package/esm2015/lib/subscription/can-create-subscriptions-item.js +0 -2
- package/esm2015/lib/subscription/index.js +0 -2
- package/esm2015/lib/tax-rate/index.js +0 -2
- package/esm2015/lib/tax-rate/tax-rate.js +0 -13
- package/esm2015/lib/tax-rate/tax-rate.service.js +0 -86
- package/esm2015/public_api.js +0 -2
- package/esm2015/vendasta-billing.js +0 -5
- package/fesm2015/vendasta-billing.js.map +0 -1
- package/lib/applied_bundle/applied_bundle.d.ts +0 -15
- package/lib/applied_bundle/index.d.ts +0 -1
- package/lib/applied_discount/applied_discount.d.ts +0 -26
- package/lib/applied_discount/index.d.ts +0 -1
- package/lib/bank_account/bank-account.service.d.ts +0 -11
- package/lib/bank_account/bank_account.d.ts +0 -12
- package/lib/bank_account/index.d.ts +0 -3
- package/lib/bank_reconciliation/bank-reconciliation.service.d.ts +0 -10
- package/lib/bank_reconciliation/index.d.ts +0 -2
- package/lib/bank_reconciliation/payout.d.ts +0 -37
- package/lib/billable-item/billable-item.d.ts +0 -40
- package/lib/billable-item/billable-item.service.d.ts +0 -10
- package/lib/billable-item/index.d.ts +0 -2
- package/lib/billing-host.service.d.ts +0 -11
- package/lib/billing.service.d.ts +0 -88
- package/lib/bundle/bundle.d.ts +0 -26
- package/lib/bundle/bundle.service.d.ts +0 -14
- package/lib/bundle/index.d.ts +0 -2
- package/lib/contract/contract.d.ts +0 -20
- package/lib/contract/contract.service.d.ts +0 -23
- package/lib/contract/dimension.d.ts +0 -11
- package/lib/contract/index.d.ts +0 -5
- package/lib/contract/mutations.d.ts +0 -11
- package/lib/contract-document/contract-document.d.ts +0 -8
- package/lib/contract-document/contract-document.service.d.ts +0 -17
- package/lib/contract-document/index.d.ts +0 -3
- package/lib/contract-document/list-contract-document.d.ts +0 -3
- package/lib/core/index.d.ts +0 -2
- package/lib/core/paged-response.d.ts +0 -6
- package/lib/core/sort-direction.d.ts +0 -4
- package/lib/credit/credit.d.ts +0 -7
- package/lib/credit/credit.service.d.ts +0 -9
- package/lib/credit/index.d.ts +0 -2
- package/lib/customer_summary/customer-summary.d.ts +0 -9
- package/lib/discount/discount.d.ts +0 -17
- package/lib/discount/discount.service.d.ts +0 -15
- package/lib/discount/discount_type.d.ts +0 -9
- package/lib/discount/index.d.ts +0 -4
- package/lib/discount/list-discount.d.ts +0 -5
- package/lib/http-shared/error-handlers.d.ts +0 -4
- package/lib/invoice/index.d.ts +0 -3
- package/lib/invoice/invoice.d.ts +0 -86
- package/lib/invoice/invoice.service.d.ts +0 -40
- package/lib/invoice/list-invoice.d.ts +0 -15
- package/lib/invoice-template/index.d.ts +0 -2
- package/lib/invoice-template/invoice-template.d.ts +0 -35
- package/lib/invoice-template/invoice-template.service.d.ts +0 -14
- package/lib/merchant/balance.d.ts +0 -5
- package/lib/merchant/index.d.ts +0 -7
- package/lib/merchant/merchant.d.ts +0 -19
- package/lib/merchant/merchant.interface.d.ts +0 -3
- package/lib/merchant/merchant.service.d.ts +0 -59
- package/lib/merchant/payout-summary.d.ts +0 -19
- package/lib/merchant/retail-configuration.d.ts +0 -24
- package/lib/merchant-report/index.d.ts +0 -4
- package/lib/merchant-report/merchant-report-status.d.ts +0 -1
- package/lib/merchant-report/merchant-report.d.ts +0 -8
- package/lib/merchant-report/merchant-report.interfaces.d.ts +0 -5
- package/lib/merchant-report/merchant-report.service.d.ts +0 -12
- package/lib/payment/dispute.d.ts +0 -61
- package/lib/payment/index.d.ts +0 -9
- package/lib/payment/payment-allocation-type.d.ts +0 -7
- package/lib/payment/payment-source.d.ts +0 -7
- package/lib/payment/payment-status.d.ts +0 -7
- package/lib/payment/payment.d.ts +0 -42
- package/lib/payment/payment.service.d.ts +0 -24
- package/lib/payment/retail-payment.d.ts +0 -33
- package/lib/payment/retail-status.d.ts +0 -24
- package/lib/payment-card/index.d.ts +0 -2
- package/lib/payment-card/payment-card.d.ts +0 -41
- package/lib/payment-card/payment-card.service.d.ts +0 -13
- package/lib/payment-method/index.d.ts +0 -1
- package/lib/payment-method/payment-method.service.d.ts +0 -10
- package/lib/pricing/billing-strategy.d.ts +0 -11
- package/lib/pricing/commitment.d.ts +0 -6
- package/lib/pricing/currency.d.ts +0 -29
- package/lib/pricing/frequency.d.ts +0 -10
- package/lib/pricing/index.d.ts +0 -11
- package/lib/pricing/list-pricing-plan-product-filter.d.ts +0 -4
- package/lib/pricing/pricing-plan-product.d.ts +0 -34
- package/lib/pricing/pricing-plan.d.ts +0 -13
- package/lib/pricing/pricing-plan.service.d.ts +0 -17
- package/lib/pricing/product-pricing-rules.d.ts +0 -7
- package/lib/pricing/product-pricing-type.d.ts +0 -9
- package/lib/pricing/product-pricing.d.ts +0 -37
- package/lib/pricing/wholesale-pricing.service.d.ts +0 -19
- package/lib/product/index.d.ts +0 -2
- package/lib/product/list-products.d.ts +0 -16
- package/lib/product/product.d.ts +0 -9
- package/lib/product-summary/index.d.ts +0 -2
- package/lib/product-summary/product-summary.service.d.ts +0 -10
- package/lib/product-summary/subscription-retention.d.ts +0 -20
- package/lib/purchase/index.d.ts +0 -4
- package/lib/purchase/list-purchases.d.ts +0 -27
- package/lib/purchase/purchase.d.ts +0 -56
- package/lib/purchase/purchase.service.d.ts +0 -10
- package/lib/purchase/purchase_status.d.ts +0 -10
- package/lib/recurring_invoice/collection-method.d.ts +0 -4
- package/lib/recurring_invoice/index.d.ts +0 -5
- package/lib/recurring_invoice/interval.d.ts +0 -10
- package/lib/recurring_invoice/payment-processor.d.ts +0 -8
- package/lib/recurring_invoice/recurring-invoice.d.ts +0 -62
- package/lib/recurring_invoice/recurring-invoice.service.d.ts +0 -14
- package/lib/recurring_invoice/status.d.ts +0 -9
- package/lib/refund/index.d.ts +0 -2
- package/lib/refund/refund.d.ts +0 -36
- package/lib/refund/refund.service.d.ts +0 -11
- package/lib/retail-customer-configuration/index.d.ts +0 -2
- package/lib/retail-customer-configuration/retail-customer-configuration.d.ts +0 -20
- package/lib/retail-customer-configuration/retail-customer-configuration.service.d.ts +0 -9
- package/lib/revenue/index.d.ts +0 -2
- package/lib/revenue/revenue.interfaces.d.ts +0 -3
- package/lib/revenue/revenue.service.d.ts +0 -11
- package/lib/sales-credit-note/index.d.ts +0 -2
- package/lib/sales-credit-note/sales-credit-note.d.ts +0 -30
- package/lib/sales-credit-note/sales-credit-note.service.d.ts +0 -16
- package/lib/sales-invoice/index.d.ts +0 -2
- package/lib/sales-invoice/sales-invoice.d.ts +0 -42
- package/lib/sales-invoice/sales-invoice.service.d.ts +0 -16
- package/lib/sku.d.ts +0 -3
- package/lib/stripe-file/file.d.ts +0 -6
- package/lib/stripe-file/index.d.ts +0 -3
- package/lib/stripe-file/purpose.d.ts +0 -11
- package/lib/stripe-file/stripe-file.service.d.ts +0 -12
- package/lib/subscription/can-create-subscriptions-item.d.ts +0 -6
- package/lib/subscription/index.d.ts +0 -1
- package/lib/tax-rate/index.d.ts +0 -2
- package/lib/tax-rate/tax-rate.d.ts +0 -20
- package/lib/tax-rate/tax-rate.service.d.ts +0 -15
- package/vendasta-billing.metadata.json +0 -1
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
const environment = (window ? window['environment'] : 'prod') ?? 'prod';
|
|
4
|
+
const hostMap = {
|
|
5
|
+
'local': 'billing-api.vendasta-local.com',
|
|
6
|
+
'test': '',
|
|
7
|
+
'demo': 'billing-demo.apigateway.co',
|
|
8
|
+
'prod': 'billing-prod.apigateway.co',
|
|
9
|
+
'production': 'billing-prod.apigateway.co',
|
|
10
|
+
};
|
|
11
|
+
export class HostService {
|
|
12
|
+
get host() {
|
|
13
|
+
return hostMap[environment.toLowerCase()];
|
|
14
|
+
}
|
|
15
|
+
get hostWithScheme() {
|
|
16
|
+
return 'https://' + this.host;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
HostService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: HostService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
20
|
+
HostService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: HostService, providedIn: 'root' });
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: HostService, decorators: [{
|
|
22
|
+
type: Injectable,
|
|
23
|
+
args: [{ providedIn: 'root' }]
|
|
24
|
+
}] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vYmlsbGluZ19zZGsvc3JjL2xpYi9fZ2VuZXJhdGVkL2hvc3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUczQyxNQUFNLFdBQVcsR0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxNQUFNLENBQUM7QUFDaEYsTUFBTSxPQUFPLEdBQThCO0lBQ3ZDLE9BQU8sRUFBRSxnQ0FBZ0M7SUFDekMsTUFBTSxFQUFFLEVBQUU7SUFDVixNQUFNLEVBQUUsNEJBQTRCO0lBQ3BDLE1BQU0sRUFBRSw0QkFBNEI7SUFDcEMsWUFBWSxFQUFFLDRCQUE0QjtDQUM3QyxDQUFDO0FBR0YsTUFBTSxPQUFPLFdBQVc7SUFDcEIsSUFBSSxJQUFJO1FBQ0osT0FBTyxPQUFPLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELElBQUksY0FBYztRQUNkLE9BQU8sVUFBVSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbEMsQ0FBQzs7d0dBUFEsV0FBVzs0R0FBWCxXQUFXLGNBREMsTUFBTTsyRkFDbEIsV0FBVztrQkFEdkIsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmRlY2xhcmUgY29uc3Qgd2luZG93OiBhbnk7XG5jb25zdCBlbnZpcm9ubWVudDogc3RyaW5nID0gKHdpbmRvdyA/IHdpbmRvd1snZW52aXJvbm1lbnQnXSA6ICdwcm9kJykgPz8gJ3Byb2QnO1xuY29uc3QgaG9zdE1hcDogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHtcbiAgICAnbG9jYWwnOiAnYmlsbGluZy1hcGkudmVuZGFzdGEtbG9jYWwuY29tJyxcbiAgICAndGVzdCc6ICcnLFxuICAgICdkZW1vJzogJ2JpbGxpbmctZGVtby5hcGlnYXRld2F5LmNvJyxcbiAgICAncHJvZCc6ICdiaWxsaW5nLXByb2QuYXBpZ2F0ZXdheS5jbycsXG4gICAgJ3Byb2R1Y3Rpb24nOiAnYmlsbGluZy1wcm9kLmFwaWdhdGV3YXkuY28nLFxufTtcblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgSG9zdFNlcnZpY2Uge1xuICAgIGdldCBob3N0KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBob3N0TWFwW2Vudmlyb25tZW50LnRvTG93ZXJDYXNlKCldO1xuICAgIH1cblxuICAgIGdldCBob3N0V2l0aFNjaGVtZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gJ2h0dHBzOi8vJyArIHRoaXMuaG9zdDtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { HostService } from './host.service';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9iaWxsaW5nX3Nkay9zcmMvbGliL19nZW5lcmF0ZWQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgSG9zdFNlcnZpY2UgfSBmcm9tICcuL2hvc3Quc2VydmljZSc7XG4iXX0=
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
// *********************************
|
|
2
|
+
// Code generated by sdkgen
|
|
3
|
+
// DO NOT EDIT!.
|
|
4
|
+
//
|
|
5
|
+
// API Service.
|
|
6
|
+
// *********************************
|
|
7
|
+
import { Injectable } from '@angular/core';
|
|
8
|
+
import { ListPayoutsRequest, ListPayoutsResponse, ReconcilePayoutRequest, ReconcilePayoutResponse, } from './objects/';
|
|
9
|
+
import { HttpHeaders, HttpClient } from '@angular/common/http';
|
|
10
|
+
import { HostService } from '../_generated/host.service';
|
|
11
|
+
import { map } from 'rxjs/operators';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
import * as i1 from "@angular/common/http";
|
|
14
|
+
import * as i2 from "../_generated/host.service";
|
|
15
|
+
export class BankReconciliationApiService {
|
|
16
|
+
constructor(http, hostService) {
|
|
17
|
+
this.http = http;
|
|
18
|
+
this.hostService = hostService;
|
|
19
|
+
this._host = this.hostService.hostWithScheme;
|
|
20
|
+
}
|
|
21
|
+
apiOptions() {
|
|
22
|
+
return {
|
|
23
|
+
headers: new HttpHeaders({
|
|
24
|
+
'Content-Type': 'application/json'
|
|
25
|
+
}),
|
|
26
|
+
withCredentials: true
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
listPayouts(r) {
|
|
30
|
+
const request = (r.toApiJson) ? r : new ListPayoutsRequest(r);
|
|
31
|
+
return this.http.post(this._host + "/billing.v1.BankReconciliationService/ListPayouts", request.toApiJson(), this.apiOptions())
|
|
32
|
+
.pipe(map(resp => ListPayoutsResponse.fromProto(resp)));
|
|
33
|
+
}
|
|
34
|
+
reconcilePayout(r) {
|
|
35
|
+
const request = (r.toApiJson) ? r : new ReconcilePayoutRequest(r);
|
|
36
|
+
return this.http.post(this._host + "/billing.v1.BankReconciliationService/ReconcilePayout", request.toApiJson(), this.apiOptions())
|
|
37
|
+
.pipe(map(resp => ReconcilePayoutResponse.fromProto(resp)));
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
BankReconciliationApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BankReconciliationApiService, deps: [{ token: i1.HttpClient }, { token: i2.HostService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
41
|
+
BankReconciliationApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BankReconciliationApiService, providedIn: 'root' });
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BankReconciliationApiService, decorators: [{
|
|
43
|
+
type: Injectable,
|
|
44
|
+
args: [{ providedIn: 'root' }]
|
|
45
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.HostService }]; } });
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1yZWNvbmNpbGlhdGlvbi5hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2JpbGxpbmdfc2RrL3NyYy9saWIvX2ludGVybmFsL2JhbmstcmVjb25jaWxpYXRpb24uYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0NBQW9DO0FBQ3BDLDJCQUEyQjtBQUMzQixnQkFBZ0I7QUFDaEIsRUFBRTtBQUNGLGVBQWU7QUFDZixvQ0FBb0M7QUFDcEMsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ0Msa0JBQWtCLEVBQ2xCLG1CQUFtQixFQUNuQixzQkFBc0IsRUFDdEIsdUJBQXVCLEdBQzlCLE1BQU0sWUFBWSxDQUFDO0FBT3BCLE9BQU8sRUFBQyxXQUFXLEVBQUUsVUFBVSxFQUFlLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRXZELE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUduQyxNQUFNLE9BQU8sNEJBQTRCO0lBR3JDLFlBQW9CLElBQWdCLEVBQVUsV0FBd0I7UUFBbEQsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBRjlELFVBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQztJQUdoRCxDQUFDO0lBRU8sVUFBVTtRQUNkLE9BQU87WUFDSCxPQUFPLEVBQUUsSUFBSSxXQUFXLENBQUM7Z0JBQ3JCLGNBQWMsRUFBRSxrQkFBa0I7YUFDckMsQ0FBQztZQUNGLGVBQWUsRUFBRSxJQUFJO1NBQ3hCLENBQUM7SUFDTixDQUFDO0lBRUQsV0FBVyxDQUFDLENBQW1EO1FBQzNELE1BQU0sT0FBTyxHQUFHLENBQXNCLENBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQXNCLENBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxRyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUErQixJQUFJLENBQUMsS0FBSyxHQUFHLG1EQUFtRCxFQUFFLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7YUFDeEosSUFBSSxDQUNELEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLG1CQUFtQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUNuRCxDQUFDO0lBQ1YsQ0FBQztJQUNELGVBQWUsQ0FBQyxDQUEyRDtRQUN2RSxNQUFNLE9BQU8sR0FBRyxDQUEwQixDQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUEwQixDQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksc0JBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEgsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBbUMsSUFBSSxDQUFDLEtBQUssR0FBRyx1REFBdUQsRUFBRSxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2FBQ2hLLElBQUksQ0FDRCxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDdkQsQ0FBQztJQUNWLENBQUM7O3lIQTVCUSw0QkFBNEI7NkhBQTVCLDRCQUE0QixjQURoQixNQUFNOzJGQUNsQiw0QkFBNEI7a0JBRHhDLFVBQVU7bUJBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBBUEkgU2VydmljZS5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgICAgIExpc3RQYXlvdXRzUmVxdWVzdCxcbiAgICAgICAgTGlzdFBheW91dHNSZXNwb25zZSxcbiAgICAgICAgUmVjb25jaWxlUGF5b3V0UmVxdWVzdCxcbiAgICAgICAgUmVjb25jaWxlUGF5b3V0UmVzcG9uc2UsXG59IGZyb20gJy4vb2JqZWN0cy8nO1xuaW1wb3J0IHtcbiAgICAgICAgTGlzdFBheW91dHNSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBMaXN0UGF5b3V0c1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBSZWNvbmNpbGVQYXlvdXRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBSZWNvbmNpbGVQYXlvdXRSZXNwb25zZUludGVyZmFjZSxcbn0gZnJvbSAnLi9pbnRlcmZhY2VzLyc7XG5pbXBvcnQge0h0dHBIZWFkZXJzLCBIdHRwQ2xpZW50LCBIdHRwUmVzcG9uc2V9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7SG9zdFNlcnZpY2V9IGZyb20gJy4uL19nZW5lcmF0ZWQvaG9zdC5zZXJ2aWNlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBCYW5rUmVjb25jaWxpYXRpb25BcGlTZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9ob3N0ID0gdGhpcy5ob3N0U2VydmljZS5ob3N0V2l0aFNjaGVtZTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSBob3N0U2VydmljZTogSG9zdFNlcnZpY2UpIHtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFwaU9wdGlvbnMoKToge2hlYWRlcnM6IEh0dHBIZWFkZXJzLCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW59IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWVcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBsaXN0UGF5b3V0cyhyOiBMaXN0UGF5b3V0c1JlcXVlc3QgfCBMaXN0UGF5b3V0c1JlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPExpc3RQYXlvdXRzUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPExpc3RQYXlvdXRzUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxMaXN0UGF5b3V0c1JlcXVlc3Q+cikgOiBuZXcgTGlzdFBheW91dHNSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8TGlzdFBheW91dHNSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmFua1JlY29uY2lsaWF0aW9uU2VydmljZS9MaXN0UGF5b3V0c1wiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IExpc3RQYXlvdXRzUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgcmVjb25jaWxlUGF5b3V0KHI6IFJlY29uY2lsZVBheW91dFJlcXVlc3QgfCBSZWNvbmNpbGVQYXlvdXRSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxSZWNvbmNpbGVQYXlvdXRSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8UmVjb25jaWxlUGF5b3V0UmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxSZWNvbmNpbGVQYXlvdXRSZXF1ZXN0PnIpIDogbmV3IFJlY29uY2lsZVBheW91dFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxSZWNvbmNpbGVQYXlvdXRSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmFua1JlY29uY2lsaWF0aW9uU2VydmljZS9SZWNvbmNpbGVQYXlvdXRcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBSZWNvbmNpbGVQYXlvdXRSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBcbn1cbiJdfQ==
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
// *********************************
|
|
2
|
+
// Code generated by sdkgen
|
|
3
|
+
// DO NOT EDIT!.
|
|
4
|
+
//
|
|
5
|
+
// API Service.
|
|
6
|
+
// *********************************
|
|
7
|
+
import { Injectable } from '@angular/core';
|
|
8
|
+
import { BillItemRequest, BillMultipleItemsRequest, BillMultipleItemsResponse, CanBillItemRequest, CanCreateSubscriptionsRequest, CanCreateSubscriptionsResponse, ChangeCustomUnitPriceRequest, ChangeFrequencyRequest, ChangeRenewalDateRequest, CreateMeteredComponentRequest, CreatePricingPlanProductRequest, CreatePricingPlanProductResponse, CreatePricingPlanRequest, CreatePricingPlanResponse, CreateSubscriptionRequest, CreateSubscriptionsRequest, CreateSubscriptionsResponse, DeleteBillableItemRequest, DeletePricingPlanProductRequest, ExpireBillableItemRequest, GenerateBillableItemsCSVRequest, GenerateBillableItemsCSVResponse, GetBillableItemRequest, GetBillableItemResponse, GetMultiContractsRequest, GetMultiContractsResponse, GetMultiPricingPlanProductRequest, GetMultiPricingPlanProductResponse, GetMultiPricingPlanRequest, GetMultiPricingPlanResponse, GetMultiProductPricingRequest, GetMultiProductPricingResponse, GetMultiProductRequest, GetMultiProductResponse, GetMultiSubscriptionsRequest, GetMultiSubscriptionsResponse, GetPricingPlanProductRequest, GetPricingPlanProductResponse, GetProductSummariesTotalRequest, GetProductSummariesTotalResponse, GetPurchaseCostRequest, GetPurchaseCostResponse, ListBillableItemsRequest, ListBillableItemsResponse, ListContractsRequest, ListContractsResponse, ListMerchantBillingReportsRequest, ListMerchantBillingReportsResponse, ListPricingPlanProductsRequest, ListPricingPlanProductsResponse, ListProductSummariesRequest, ListProductSummariesResponse, ListProductsRequest, ListProductsResponse, ResetContractPricingRequest, ReverseSubscriptionRequest, SetRenewalStartRequest, StartRevRecTemplateBackfillRequest, TickComponentUsageRequest, UpdatePricingPlanProductRequest, UpdatePricingPlanProductResponse, UpdatePricingPlanRequest, UpdatePricingPlanResponse, } from './objects/';
|
|
9
|
+
import { HttpHeaders, HttpClient } from '@angular/common/http';
|
|
10
|
+
import { HostService } from '../_generated/host.service';
|
|
11
|
+
import { map } from 'rxjs/operators';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
import * as i1 from "@angular/common/http";
|
|
14
|
+
import * as i2 from "../_generated/host.service";
|
|
15
|
+
export class BillingApiService {
|
|
16
|
+
constructor(http, hostService) {
|
|
17
|
+
this.http = http;
|
|
18
|
+
this.hostService = hostService;
|
|
19
|
+
this._host = this.hostService.hostWithScheme;
|
|
20
|
+
}
|
|
21
|
+
apiOptions() {
|
|
22
|
+
return {
|
|
23
|
+
headers: new HttpHeaders({
|
|
24
|
+
'Content-Type': 'application/json'
|
|
25
|
+
}),
|
|
26
|
+
withCredentials: true
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
canBillItem(r) {
|
|
30
|
+
const request = (r.toApiJson) ? r : new CanBillItemRequest(r);
|
|
31
|
+
return this.http.post(this._host + "/billing.v1.Billing/CanBillItem", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
32
|
+
}
|
|
33
|
+
canCreateSubscriptions(r) {
|
|
34
|
+
const request = (r.toApiJson) ? r : new CanCreateSubscriptionsRequest(r);
|
|
35
|
+
return this.http.post(this._host + "/billing.v1.Billing/CanCreateSubscriptions", request.toApiJson(), this.apiOptions())
|
|
36
|
+
.pipe(map(resp => CanCreateSubscriptionsResponse.fromProto(resp)));
|
|
37
|
+
}
|
|
38
|
+
createSubscription(r) {
|
|
39
|
+
const request = (r.toApiJson) ? r : new CreateSubscriptionRequest(r);
|
|
40
|
+
return this.http.post(this._host + "/billing.v1.Billing/CreateSubscription", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
41
|
+
}
|
|
42
|
+
createSubscriptions(r) {
|
|
43
|
+
const request = (r.toApiJson) ? r : new CreateSubscriptionsRequest(r);
|
|
44
|
+
return this.http.post(this._host + "/billing.v1.Billing/CreateSubscriptions", request.toApiJson(), this.apiOptions())
|
|
45
|
+
.pipe(map(resp => CreateSubscriptionsResponse.fromProto(resp)));
|
|
46
|
+
}
|
|
47
|
+
reverseSubscription(r) {
|
|
48
|
+
const request = (r.toApiJson) ? r : new ReverseSubscriptionRequest(r);
|
|
49
|
+
return this.http.post(this._host + "/billing.v1.Billing/ReverseSubscription", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
50
|
+
}
|
|
51
|
+
setRenewalStart(r) {
|
|
52
|
+
const request = (r.toApiJson) ? r : new SetRenewalStartRequest(r);
|
|
53
|
+
return this.http.post(this._host + "/billing.v1.Billing/SetRenewalStart", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
54
|
+
}
|
|
55
|
+
billItem(r) {
|
|
56
|
+
const request = (r.toApiJson) ? r : new BillItemRequest(r);
|
|
57
|
+
return this.http.post(this._host + "/billing.v1.Billing/BillItem", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
58
|
+
}
|
|
59
|
+
billMultipleItems(r) {
|
|
60
|
+
const request = (r.toApiJson) ? r : new BillMultipleItemsRequest(r);
|
|
61
|
+
return this.http.post(this._host + "/billing.v1.Billing/BillMultipleItems", request.toApiJson(), this.apiOptions())
|
|
62
|
+
.pipe(map(resp => BillMultipleItemsResponse.fromProto(resp)));
|
|
63
|
+
}
|
|
64
|
+
getBillableItem(r) {
|
|
65
|
+
const request = (r.toApiJson) ? r : new GetBillableItemRequest(r);
|
|
66
|
+
return this.http.post(this._host + "/billing.v1.Billing/GetBillableItem", request.toApiJson(), this.apiOptions())
|
|
67
|
+
.pipe(map(resp => GetBillableItemResponse.fromProto(resp)));
|
|
68
|
+
}
|
|
69
|
+
getMultiSubscriptions(r) {
|
|
70
|
+
const request = (r.toApiJson) ? r : new GetMultiSubscriptionsRequest(r);
|
|
71
|
+
return this.http.post(this._host + "/billing.v1.Billing/GetMultiSubscriptions", request.toApiJson(), this.apiOptions())
|
|
72
|
+
.pipe(map(resp => GetMultiSubscriptionsResponse.fromProto(resp)));
|
|
73
|
+
}
|
|
74
|
+
listBillableItems(r) {
|
|
75
|
+
const request = (r.toApiJson) ? r : new ListBillableItemsRequest(r);
|
|
76
|
+
return this.http.post(this._host + "/billing.v1.Billing/ListBillableItems", request.toApiJson(), this.apiOptions())
|
|
77
|
+
.pipe(map(resp => ListBillableItemsResponse.fromProto(resp)));
|
|
78
|
+
}
|
|
79
|
+
expireBillableItem(r) {
|
|
80
|
+
const request = (r.toApiJson) ? r : new ExpireBillableItemRequest(r);
|
|
81
|
+
return this.http.post(this._host + "/billing.v1.Billing/ExpireBillableItem", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
82
|
+
}
|
|
83
|
+
deleteBillableItem(r) {
|
|
84
|
+
const request = (r.toApiJson) ? r : new DeleteBillableItemRequest(r);
|
|
85
|
+
return this.http.post(this._host + "/billing.v1.Billing/DeleteBillableItem", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
86
|
+
}
|
|
87
|
+
listMerchantBillingReports(r) {
|
|
88
|
+
const request = (r.toApiJson) ? r : new ListMerchantBillingReportsRequest(r);
|
|
89
|
+
return this.http.post(this._host + "/billing.v1.Billing/ListMerchantBillingReports", request.toApiJson(), this.apiOptions())
|
|
90
|
+
.pipe(map(resp => ListMerchantBillingReportsResponse.fromProto(resp)));
|
|
91
|
+
}
|
|
92
|
+
listProductSummaries(r) {
|
|
93
|
+
const request = (r.toApiJson) ? r : new ListProductSummariesRequest(r);
|
|
94
|
+
return this.http.post(this._host + "/billing.v1.Billing/ListProductSummaries", request.toApiJson(), this.apiOptions())
|
|
95
|
+
.pipe(map(resp => ListProductSummariesResponse.fromProto(resp)));
|
|
96
|
+
}
|
|
97
|
+
getProductSummariesTotal(r) {
|
|
98
|
+
const request = (r.toApiJson) ? r : new GetProductSummariesTotalRequest(r);
|
|
99
|
+
return this.http.post(this._host + "/billing.v1.Billing/GetProductSummariesTotal", request.toApiJson(), this.apiOptions())
|
|
100
|
+
.pipe(map(resp => GetProductSummariesTotalResponse.fromProto(resp)));
|
|
101
|
+
}
|
|
102
|
+
generateBillableItemsCsv(r) {
|
|
103
|
+
const request = (r.toApiJson) ? r : new GenerateBillableItemsCSVRequest(r);
|
|
104
|
+
return this.http.post(this._host + "/billing.v1.Billing/GenerateBillableItemsCSV", request.toApiJson(), this.apiOptions())
|
|
105
|
+
.pipe(map(resp => GenerateBillableItemsCSVResponse.fromProto(resp)));
|
|
106
|
+
}
|
|
107
|
+
createPricingPlan(r) {
|
|
108
|
+
const request = (r.toApiJson) ? r : new CreatePricingPlanRequest(r);
|
|
109
|
+
return this.http.post(this._host + "/billing.v1.Billing/CreatePricingPlan", request.toApiJson(), this.apiOptions())
|
|
110
|
+
.pipe(map(resp => CreatePricingPlanResponse.fromProto(resp)));
|
|
111
|
+
}
|
|
112
|
+
updatePricingPlan(r) {
|
|
113
|
+
const request = (r.toApiJson) ? r : new UpdatePricingPlanRequest(r);
|
|
114
|
+
return this.http.post(this._host + "/billing.v1.Billing/UpdatePricingPlan", request.toApiJson(), this.apiOptions())
|
|
115
|
+
.pipe(map(resp => UpdatePricingPlanResponse.fromProto(resp)));
|
|
116
|
+
}
|
|
117
|
+
getMultiPricingPlan(r) {
|
|
118
|
+
const request = (r.toApiJson) ? r : new GetMultiPricingPlanRequest(r);
|
|
119
|
+
return this.http.post(this._host + "/billing.v1.Billing/GetMultiPricingPlan", request.toApiJson(), this.apiOptions())
|
|
120
|
+
.pipe(map(resp => GetMultiPricingPlanResponse.fromProto(resp)));
|
|
121
|
+
}
|
|
122
|
+
createPricingPlanProduct(r) {
|
|
123
|
+
const request = (r.toApiJson) ? r : new CreatePricingPlanProductRequest(r);
|
|
124
|
+
return this.http.post(this._host + "/billing.v1.Billing/CreatePricingPlanProduct", request.toApiJson(), this.apiOptions())
|
|
125
|
+
.pipe(map(resp => CreatePricingPlanProductResponse.fromProto(resp)));
|
|
126
|
+
}
|
|
127
|
+
updatePricingPlanProduct(r) {
|
|
128
|
+
const request = (r.toApiJson) ? r : new UpdatePricingPlanProductRequest(r);
|
|
129
|
+
return this.http.post(this._host + "/billing.v1.Billing/UpdatePricingPlanProduct", request.toApiJson(), this.apiOptions())
|
|
130
|
+
.pipe(map(resp => UpdatePricingPlanProductResponse.fromProto(resp)));
|
|
131
|
+
}
|
|
132
|
+
deletePricingPlanProduct(r) {
|
|
133
|
+
const request = (r.toApiJson) ? r : new DeletePricingPlanProductRequest(r);
|
|
134
|
+
return this.http.post(this._host + "/billing.v1.Billing/DeletePricingPlanProduct", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
135
|
+
}
|
|
136
|
+
listPricingPlanProducts(r) {
|
|
137
|
+
const request = (r.toApiJson) ? r : new ListPricingPlanProductsRequest(r);
|
|
138
|
+
return this.http.post(this._host + "/billing.v1.Billing/ListPricingPlanProducts", request.toApiJson(), this.apiOptions())
|
|
139
|
+
.pipe(map(resp => ListPricingPlanProductsResponse.fromProto(resp)));
|
|
140
|
+
}
|
|
141
|
+
getPricingPlanProduct(r) {
|
|
142
|
+
const request = (r.toApiJson) ? r : new GetPricingPlanProductRequest(r);
|
|
143
|
+
return this.http.post(this._host + "/billing.v1.Billing/GetPricingPlanProduct", request.toApiJson(), this.apiOptions())
|
|
144
|
+
.pipe(map(resp => GetPricingPlanProductResponse.fromProto(resp)));
|
|
145
|
+
}
|
|
146
|
+
getMultiPricingPlanProduct(r) {
|
|
147
|
+
const request = (r.toApiJson) ? r : new GetMultiPricingPlanProductRequest(r);
|
|
148
|
+
return this.http.post(this._host + "/billing.v1.Billing/GetMultiPricingPlanProduct", request.toApiJson(), this.apiOptions())
|
|
149
|
+
.pipe(map(resp => GetMultiPricingPlanProductResponse.fromProto(resp)));
|
|
150
|
+
}
|
|
151
|
+
getMultiProductPricing(r) {
|
|
152
|
+
const request = (r.toApiJson) ? r : new GetMultiProductPricingRequest(r);
|
|
153
|
+
return this.http.post(this._host + "/billing.v1.Billing/GetMultiProductPricing", request.toApiJson(), this.apiOptions())
|
|
154
|
+
.pipe(map(resp => GetMultiProductPricingResponse.fromProto(resp)));
|
|
155
|
+
}
|
|
156
|
+
tickComponentUsage(r) {
|
|
157
|
+
const request = (r.toApiJson) ? r : new TickComponentUsageRequest(r);
|
|
158
|
+
return this.http.post(this._host + "/billing.v1.Billing/TickComponentUsage", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
159
|
+
}
|
|
160
|
+
createMeteredComponent(r) {
|
|
161
|
+
const request = (r.toApiJson) ? r : new CreateMeteredComponentRequest(r);
|
|
162
|
+
return this.http.post(this._host + "/billing.v1.Billing/CreateMeteredComponent", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
163
|
+
}
|
|
164
|
+
listContracts(r) {
|
|
165
|
+
const request = (r.toApiJson) ? r : new ListContractsRequest(r);
|
|
166
|
+
return this.http.post(this._host + "/billing.v1.Billing/ListContracts", request.toApiJson(), this.apiOptions())
|
|
167
|
+
.pipe(map(resp => ListContractsResponse.fromProto(resp)));
|
|
168
|
+
}
|
|
169
|
+
getMultiContract(r) {
|
|
170
|
+
const request = (r.toApiJson) ? r : new GetMultiContractsRequest(r);
|
|
171
|
+
return this.http.post(this._host + "/billing.v1.Billing/GetMultiContract", request.toApiJson(), this.apiOptions())
|
|
172
|
+
.pipe(map(resp => GetMultiContractsResponse.fromProto(resp)));
|
|
173
|
+
}
|
|
174
|
+
listProducts(r) {
|
|
175
|
+
const request = (r.toApiJson) ? r : new ListProductsRequest(r);
|
|
176
|
+
return this.http.post(this._host + "/billing.v1.Billing/ListProducts", request.toApiJson(), this.apiOptions())
|
|
177
|
+
.pipe(map(resp => ListProductsResponse.fromProto(resp)));
|
|
178
|
+
}
|
|
179
|
+
getMultiProduct(r) {
|
|
180
|
+
const request = (r.toApiJson) ? r : new GetMultiProductRequest(r);
|
|
181
|
+
return this.http.post(this._host + "/billing.v1.Billing/GetMultiProduct", request.toApiJson(), this.apiOptions())
|
|
182
|
+
.pipe(map(resp => GetMultiProductResponse.fromProto(resp)));
|
|
183
|
+
}
|
|
184
|
+
resetContractPricing(r) {
|
|
185
|
+
const request = (r.toApiJson) ? r : new ResetContractPricingRequest(r);
|
|
186
|
+
return this.http.post(this._host + "/billing.v1.Billing/ResetContractPricing", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
187
|
+
}
|
|
188
|
+
getPurchaseCost(r) {
|
|
189
|
+
const request = (r.toApiJson) ? r : new GetPurchaseCostRequest(r);
|
|
190
|
+
return this.http.post(this._host + "/billing.v1.Billing/GetPurchaseCost", request.toApiJson(), this.apiOptions())
|
|
191
|
+
.pipe(map(resp => GetPurchaseCostResponse.fromProto(resp)));
|
|
192
|
+
}
|
|
193
|
+
changeFrequency(r) {
|
|
194
|
+
const request = (r.toApiJson) ? r : new ChangeFrequencyRequest(r);
|
|
195
|
+
return this.http.post(this._host + "/billing.v1.Billing/ChangeFrequency", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
196
|
+
}
|
|
197
|
+
changeRenewalDate(r) {
|
|
198
|
+
const request = (r.toApiJson) ? r : new ChangeRenewalDateRequest(r);
|
|
199
|
+
return this.http.post(this._host + "/billing.v1.Billing/ChangeRenewalDate", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
200
|
+
}
|
|
201
|
+
changeCustomUnitPrice(r) {
|
|
202
|
+
const request = (r.toApiJson) ? r : new ChangeCustomUnitPriceRequest(r);
|
|
203
|
+
return this.http.post(this._host + "/billing.v1.Billing/ChangeCustomUnitPrice", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
204
|
+
}
|
|
205
|
+
startRevRecTemplateBackfill(r) {
|
|
206
|
+
const request = (r.toApiJson) ? r : new StartRevRecTemplateBackfillRequest(r);
|
|
207
|
+
return this.http.post(this._host + "/billing.v1.Billing/StartRevRecTemplateBackfill", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
BillingApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BillingApiService, deps: [{ token: i1.HttpClient }, { token: i2.HostService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
211
|
+
BillingApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BillingApiService, providedIn: 'root' });
|
|
212
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BillingApiService, decorators: [{
|
|
213
|
+
type: Injectable,
|
|
214
|
+
args: [{ providedIn: 'root' }]
|
|
215
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.HostService }]; } });
|
|
216
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlsbGluZy5hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2JpbGxpbmdfc2RrL3NyYy9saWIvX2ludGVybmFsL2JpbGxpbmcuYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0NBQW9DO0FBQ3BDLDJCQUEyQjtBQUMzQixnQkFBZ0I7QUFDaEIsRUFBRTtBQUNGLGVBQWU7QUFDZixvQ0FBb0M7QUFDcEMsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ0MsZUFBZSxFQUNmLHdCQUF3QixFQUN4Qix5QkFBeUIsRUFDekIsa0JBQWtCLEVBQ2xCLDZCQUE2QixFQUM3Qiw4QkFBOEIsRUFDOUIsNEJBQTRCLEVBQzVCLHNCQUFzQixFQUN0Qix3QkFBd0IsRUFDeEIsNkJBQTZCLEVBQzdCLCtCQUErQixFQUMvQixnQ0FBZ0MsRUFDaEMsd0JBQXdCLEVBQ3hCLHlCQUF5QixFQUN6Qix5QkFBeUIsRUFDekIsMEJBQTBCLEVBQzFCLDJCQUEyQixFQUMzQix5QkFBeUIsRUFDekIsK0JBQStCLEVBQy9CLHlCQUF5QixFQUN6QiwrQkFBK0IsRUFDL0IsZ0NBQWdDLEVBQ2hDLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIsd0JBQXdCLEVBQ3hCLHlCQUF5QixFQUN6QixpQ0FBaUMsRUFDakMsa0NBQWtDLEVBQ2xDLDBCQUEwQixFQUMxQiwyQkFBMkIsRUFDM0IsNkJBQTZCLEVBQzdCLDhCQUE4QixFQUM5QixzQkFBc0IsRUFDdEIsdUJBQXVCLEVBQ3ZCLDRCQUE0QixFQUM1Qiw2QkFBNkIsRUFDN0IsNEJBQTRCLEVBQzVCLDZCQUE2QixFQUM3QiwrQkFBK0IsRUFDL0IsZ0NBQWdDLEVBQ2hDLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIsd0JBQXdCLEVBQ3hCLHlCQUF5QixFQUN6QixvQkFBb0IsRUFDcEIscUJBQXFCLEVBQ3JCLGlDQUFpQyxFQUNq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Q3pGLE1BQU0sT0FBTyxHQUFHLENBQWdDLENBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQWdDLENBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSw0QkFBNEIsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4SSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFPLElBQUksQ0FBQyxLQUFLLEdBQUcsMkNBQTJDLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLEVBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBQyxDQUFDLENBQUM7SUFDNUosQ0FBQztJQUNELDJCQUEyQixDQUFDLENBQW1GO1FBQzNHLE1BQU0sT0FBTyxHQUFHLENBQXNDLENBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQXNDLENBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxrQ0FBa0MsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxSixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFPLElBQUksQ0FBQyxLQUFLLEdBQUcsaURBQWlELEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLEVBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBQyxDQUFDLENBQUM7SUFDbEssQ0FBQzs7OEdBbFBRLGlCQUFpQjtrSEFBakIsaUJBQWlCLGNBREwsTUFBTTsyRkFDbEIsaUJBQWlCO2tCQUQ3QixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gQVBJIFNlcnZpY2UuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgICAgICBCaWxsSXRlbVJlcXVlc3QsXG4gICAgICAgIEJpbGxNdWx0aXBsZUl0ZW1zUmVxdWVzdCxcbiAgICAgICAgQmlsbE11bHRpcGxlSXRlbXNSZXNwb25zZSxcbiAgICAgICAgQ2FuQmlsbEl0ZW1SZXF1ZXN0LFxuICAgICAgICBDYW5DcmVhdGVTdWJzY3JpcHRpb25zUmVxdWVzdCxcbiAgICAgICAgQ2FuQ3JlYXRlU3Vic2NyaXB0aW9uc1Jlc3BvbnNlLFxuICAgICAgICBDaGFuZ2VDdXN0b21Vbml0UHJpY2VSZXF1ZXN0LFxuICAgICAgICBDaGFuZ2VGcmVxdWVuY3lSZXF1ZXN0LFxuICAgICAgICBDaGFuZ2VSZW5ld2FsRGF0ZVJlcXVlc3QsXG4gICAgICAgIENyZWF0ZU1ldGVyZWRDb21wb25lbnRSZXF1ZXN0LFxuICAgICAgICBDcmVhdGVQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0LFxuICAgICAgICBDcmVhdGVQcmljaW5nUGxhblByb2R1Y3RSZXNwb25zZSxcbiAgICAgICAgQ3JlYXRlUHJpY2luZ1BsYW5SZXF1ZXN0LFxuICAgICAgICBDcmVhdGVQcmljaW5nUGxhblJlc3BvbnNlLFxuICAgICAgICBDcmVhdGVTdWJzY3JpcHRpb25SZXF1ZXN0LFxuICAgICAgICBDcmVhdGVTdWJzY3JpcHRpb25zUmVxdWVzdCxcbiAgICAgICAgQ3JlYXRlU3Vic2NyaXB0aW9uc1Jlc3BvbnNlLFxuICAgICAgICBEZWxldGVCaWxsYWJsZUl0ZW1SZXF1ZXN0LFxuICAgICAgICBEZWxldGVQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0LFxuICAgICAgICBFeHBpcmVCaWxsYWJsZUl0ZW1SZXF1ZXN0LFxuICAgICAgICBHZW5lcmF0ZUJpbGxhYmxlSXRlbXNDU1ZSZXF1ZXN0LFxuICAgICAgICBHZW5lcmF0ZUJpbGxhYmxlSXRlbXNDU1ZSZXNwb25zZSxcbiAgICAgICAgR2V0QmlsbGFibGVJdGVtUmVxdWVzdCxcbiAgICAgICAgR2V0QmlsbGFibGVJdGVtUmVzcG9uc2UsXG4gICAgICAgIEdldE11bHRpQ29udHJhY3RzUmVxdWVzdCxcbiAgICAgICAgR2V0TXVsdGlDb250cmFjdHNSZXNwb25zZSxcbiAgICAgICAgR2V0TXVsdGlQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0LFxuICAgICAgICBHZXRNdWx0aVByaWNpbmdQbGFuUHJvZHVjdFJlc3BvbnNlLFxuICAgICAgICBHZXRNdWx0aVByaWNpbmdQbGFuUmVxdWVzdCxcbiAgICAgICAgR2V0TXVsdGlQcmljaW5nUGxhblJlc3BvbnNlLFxuICAgICAgICBHZXRNdWx0aVByb2R1Y3RQcmljaW5nUmVxdWVzdCxcbiAgICAgICAgR2V0TXVsdGlQcm9kdWN0UHJpY2luZ1Jlc3BvbnNlLFxuICAgICAgICBHZXRNdWx0aVByb2R1Y3RSZXF1ZXN0LFxuICAgICAgICBHZXRNdWx0aVByb2R1Y3RSZXNwb25zZSxcbiAgICAgICAgR2V0TXVsdGlTdWJzY3JpcHRpb25zUmVxdWVzdCxcbiAgICAgICAgR2V0TXVsdGlTdWJzY3JpcHRpb25zUmVzcG9uc2UsXG4gICAgICAgIEdldFByaWNpbmdQbGFuUHJvZHVjdFJlcXVlc3QsXG4gICAgICAgIEdldFByaWNpbmdQbGFuUHJvZHVjdFJlc3BvbnNlLFxuICAgICAgICBHZXRQcm9kdWN0U3VtbWFyaWVzVG90YWxSZXF1ZXN0LFxuICAgICAgICBHZXRQcm9kdWN0U3VtbWFyaWVzVG90YWxSZXNwb25zZSxcbiAgICAgICAgR2V0UHVyY2hhc2VDb3N0UmVxdWVzdCxcbiAgICAgICAgR2V0UHVyY2hhc2VDb3N0UmVzcG9uc2UsXG4gICAgICAgIExpc3RCaWxsYWJsZUl0ZW1zUmVxdWVzdCxcbiAgICAgICAgTGlzdEJpbGxhYmxlSXRlbXNSZXNwb25zZSxcbiAgICAgICAgTGlzdENvbnRyYWN0c1JlcXVlc3QsXG4gICAgICAgIExpc3RDb250cmFjdHNSZXNwb25zZSxcbiAgICAgICAgTGlzdE1lcmNoYW50QmlsbGluZ1JlcG9ydHNSZXF1ZXN0LFxuICAgICAgICBMaXN0TWVyY2hhbnRCaWxsaW5nUmVwb3J0c1Jlc3BvbnNlLFxuICAgICAgICBMaXN0UHJpY2luZ1BsYW5Qcm9kdWN0c1JlcXVlc3QsXG4gICAgICAgIExpc3RQcmljaW5nUGxhblByb2R1Y3RzUmVzcG9uc2UsXG4gICAgICAgIExpc3RQcm9kdWN0U3VtbWFyaWVzUmVxdWVzdCxcbiAgICAgICAgTGlzdFByb2R1Y3RTdW1tYXJpZXNSZXNwb25zZSxcbiAgICAgICAgTGlzdFByb2R1Y3RzUmVxdWVzdCxcbiAgICAgICAgTGlzdFByb2R1Y3RzUmVzcG9uc2UsXG4gICAgICAgIFJlc2V0Q29udHJhY3RQcmljaW5nUmVxdWVzdCxcbiAgICAgICAgUmV2ZXJzZVN1YnNjcmlwdGlvblJlcXVlc3QsXG4gICAgICAgIFNldFJlbmV3YWxTdGFydFJlcXVlc3QsXG4gICAgICAgIFN0YXJ0UmV2UmVjVGVtcGxhdGVCYWNrZmlsbFJlcXVlc3QsXG4gICAgICAgIFRpY2tDb21wb25lbnRVc2FnZVJlcXVlc3QsXG4gICAgICAgIFVwZGF0ZVByaWNpbmdQbGFuUHJvZHVjdFJlcXVlc3QsXG4gICAgICAgIFVwZGF0ZVByaWNpbmdQbGFuUHJvZHVjdFJlc3BvbnNlLFxuICAgICAgICBVcGRhdGVQcmljaW5nUGxhblJlcXVlc3QsXG4gICAgICAgIFVwZGF0ZVByaWNpbmdQbGFuUmVzcG9uc2UsXG59IGZyb20gJy4vb2JqZWN0cy8nO1xuaW1wb3J0IHtcbiAgICAgICAgQmlsbEl0ZW1SZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBCaWxsTXVsdGlwbGVJdGVtc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEJpbGxNdWx0aXBsZUl0ZW1zUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIENhbkJpbGxJdGVtUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQ2FuQ3JlYXRlU3Vic2NyaXB0aW9uc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIENhbkNyZWF0ZVN1YnNjcmlwdGlvbnNSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgQ2hhbmdlQ3VzdG9tVW5pdFByaWNlUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQ2hhbmdlRnJlcXVlbmN5UmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQ2hhbmdlUmVuZXdhbERhdGVSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBDcmVhdGVNZXRlcmVkQ29tcG9uZW50UmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQ3JlYXRlUHJpY2luZ1BsYW5Qcm9kdWN0UmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQ3JlYXRlUHJpY2luZ1BsYW5Qcm9kdWN0UmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIENyZWF0ZVByaWNpbmdQbGFuUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQ3JlYXRlUHJpY2luZ1BsYW5SZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgQ3JlYXRlU3Vic2NyaXB0aW9uUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQ3JlYXRlU3Vic2NyaXB0aW9uc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIENyZWF0ZVN1YnNjcmlwdGlvbnNSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgRGVsZXRlQmlsbGFibGVJdGVtUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgRGVsZXRlUHJpY2luZ1BsYW5Qcm9kdWN0UmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgRXhwaXJlQmlsbGFibGVJdGVtUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgR2VuZXJhdGVCaWxsYWJsZUl0ZW1zQ1NWUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgR2VuZXJhdGVCaWxsYWJsZUl0ZW1zQ1NWUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIEdldEJpbGxhYmxlSXRlbVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldEJpbGxhYmxlSXRlbVJlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBHZXRNdWx0aUNvbnRyYWN0c1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldE11bHRpQ29udHJhY3RzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIEdldE11bHRpUHJpY2luZ1BsYW5Qcm9kdWN0UmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgR2V0TXVsdGlQcmljaW5nUGxhblByb2R1Y3RSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgR2V0TXVsdGlQcmljaW5nUGxhblJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldE11bHRpUHJpY2luZ1BsYW5SZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgR2V0TXVsdGlQcm9kdWN0UHJpY2luZ1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldE11bHRpUHJvZHVjdFByaWNpbmdSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgR2V0TXVsdGlQcm9kdWN0UmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgR2V0TXVsdGlQcm9kdWN0UmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIEdldE11bHRpU3Vic2NyaXB0aW9uc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldE11bHRpU3Vic2NyaXB0aW9uc1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBHZXRQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBHZXRQcmljaW5nUGxhblByb2R1Y3RSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgR2V0UHJvZHVjdFN1bW1hcmllc1RvdGFsUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgR2V0UHJvZHVjdFN1bW1hcmllc1RvdGFsUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIEdldFB1cmNoYXNlQ29zdFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldFB1cmNoYXNlQ29zdFJlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBMaXN0QmlsbGFibGVJdGVtc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIExpc3RCaWxsYWJsZUl0ZW1zUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIExpc3RDb250cmFjdHNSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBMaXN0Q29udHJhY3RzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIExpc3RNZXJjaGFudEJpbGxpbmdSZXBvcnRzUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgTGlzdE1lcmNoYW50QmlsbGluZ1JlcG9ydHNSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgTGlzdFByaWNpbmdQbGFuUHJvZHVjdHNSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBMaXN0UHJpY2luZ1BsYW5Qcm9kdWN0c1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBMaXN0UHJvZHVjdFN1bW1hcmllc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIExpc3RQcm9kdWN0U3VtbWFyaWVzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIExpc3RQcm9kdWN0c1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIExpc3RQcm9kdWN0c1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBSZXNldENvbnRyYWN0UHJpY2luZ1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIFJldmVyc2VTdWJzY3JpcHRpb25SZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBTZXRSZW5ld2FsU3RhcnRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBTdGFydFJldlJlY1RlbXBsYXRlQmFja2ZpbGxSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBUaWNrQ29tcG9uZW50VXNhZ2VSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBVcGRhdGVQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBVcGRhdGVQcmljaW5nUGxhblByb2R1Y3RSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgVXBkYXRlUHJpY2luZ1BsYW5SZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBVcGRhdGVQcmljaW5nUGxhblJlc3BvbnNlSW50ZXJmYWNlLFxufSBmcm9tICcuL2ludGVyZmFjZXMvJztcbmltcG9ydCB7SHR0cEhlYWRlcnMsIEh0dHBDbGllbnQsIEh0dHBSZXNwb25zZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtIb3N0U2VydmljZX0gZnJvbSAnLi4vX2dlbmVyYXRlZC9ob3N0LnNlcnZpY2UnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIEJpbGxpbmdBcGlTZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9ob3N0ID0gdGhpcy5ob3N0U2VydmljZS5ob3N0V2l0aFNjaGVtZTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSBob3N0U2VydmljZTogSG9zdFNlcnZpY2UpIHtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFwaU9wdGlvbnMoKToge2hlYWRlcnM6IEh0dHBIZWFkZXJzLCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW59IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWVcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBjYW5CaWxsSXRlbShyOiBDYW5CaWxsSXRlbVJlcXVlc3QgfCBDYW5CaWxsSXRlbVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Q2FuQmlsbEl0ZW1SZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPENhbkJpbGxJdGVtUmVxdWVzdD5yKSA6IG5ldyBDYW5CaWxsSXRlbVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5CaWxsaW5nL0NhbkJpbGxJdGVtXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBjYW5DcmVhdGVTdWJzY3JpcHRpb25zKHI6IENhbkNyZWF0ZVN1YnNjcmlwdGlvbnNSZXF1ZXN0IHwgQ2FuQ3JlYXRlU3Vic2NyaXB0aW9uc1JlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPENhbkNyZWF0ZVN1YnNjcmlwdGlvbnNSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Q2FuQ3JlYXRlU3Vic2NyaXB0aW9uc1JlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8Q2FuQ3JlYXRlU3Vic2NyaXB0aW9uc1JlcXVlc3Q+cikgOiBuZXcgQ2FuQ3JlYXRlU3Vic2NyaXB0aW9uc1JlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxDYW5DcmVhdGVTdWJzY3JpcHRpb25zUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvQ2FuQ3JlYXRlU3Vic2NyaXB0aW9uc1wiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IENhbkNyZWF0ZVN1YnNjcmlwdGlvbnNSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBjcmVhdGVTdWJzY3JpcHRpb24ocjogQ3JlYXRlU3Vic2NyaXB0aW9uUmVxdWVzdCB8IENyZWF0ZVN1YnNjcmlwdGlvblJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Q3JlYXRlU3Vic2NyaXB0aW9uUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxDcmVhdGVTdWJzY3JpcHRpb25SZXF1ZXN0PnIpIDogbmV3IENyZWF0ZVN1YnNjcmlwdGlvblJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5CaWxsaW5nL0NyZWF0ZVN1YnNjcmlwdGlvblwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB7Li4udGhpcy5hcGlPcHRpb25zKCksIG9ic2VydmU6ICdyZXNwb25zZSd9KTtcbiAgICB9XG4gICAgY3JlYXRlU3Vic2NyaXB0aW9ucyhyOiBDcmVhdGVTdWJzY3JpcHRpb25zUmVxdWVzdCB8IENyZWF0ZVN1YnNjcmlwdGlvbnNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxDcmVhdGVTdWJzY3JpcHRpb25zUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPENyZWF0ZVN1YnNjcmlwdGlvbnNSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPENyZWF0ZVN1YnNjcmlwdGlvbnNSZXF1ZXN0PnIpIDogbmV3IENyZWF0ZVN1YnNjcmlwdGlvbnNSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8Q3JlYXRlU3Vic2NyaXB0aW9uc1Jlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5CaWxsaW5nL0NyZWF0ZVN1YnNjcmlwdGlvbnNcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBDcmVhdGVTdWJzY3JpcHRpb25zUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgcmV2ZXJzZVN1YnNjcmlwdGlvbihyOiBSZXZlcnNlU3Vic2NyaXB0aW9uUmVxdWVzdCB8IFJldmVyc2VTdWJzY3JpcHRpb25SZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFJldmVyc2VTdWJzY3JpcHRpb25SZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFJldmVyc2VTdWJzY3JpcHRpb25SZXF1ZXN0PnIpIDogbmV3IFJldmVyc2VTdWJzY3JpcHRpb25SZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmlsbGluZy9SZXZlcnNlU3Vic2NyaXB0aW9uXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBzZXRSZW5ld2FsU3RhcnQocjogU2V0UmVuZXdhbFN0YXJ0UmVxdWVzdCB8IFNldFJlbmV3YWxTdGFydFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8U2V0UmVuZXdhbFN0YXJ0UmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxTZXRSZW5ld2FsU3RhcnRSZXF1ZXN0PnIpIDogbmV3IFNldFJlbmV3YWxTdGFydFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5CaWxsaW5nL1NldFJlbmV3YWxTdGFydFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB7Li4udGhpcy5hcGlPcHRpb25zKCksIG9ic2VydmU6ICdyZXNwb25zZSd9KTtcbiAgICB9XG4gICAgYmlsbEl0ZW0ocjogQmlsbEl0ZW1SZXF1ZXN0IHwgQmlsbEl0ZW1SZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEJpbGxJdGVtUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxCaWxsSXRlbVJlcXVlc3Q+cikgOiBuZXcgQmlsbEl0ZW1SZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmlsbGluZy9CaWxsSXRlbVwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB7Li4udGhpcy5hcGlPcHRpb25zKCksIG9ic2VydmU6ICdyZXNwb25zZSd9KTtcbiAgICB9XG4gICAgYmlsbE11bHRpcGxlSXRlbXMocjogQmlsbE11bHRpcGxlSXRlbXNSZXF1ZXN0IHwgQmlsbE11bHRpcGxlSXRlbXNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxCaWxsTXVsdGlwbGVJdGVtc1Jlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxCaWxsTXVsdGlwbGVJdGVtc1JlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8QmlsbE11bHRpcGxlSXRlbXNSZXF1ZXN0PnIpIDogbmV3IEJpbGxNdWx0aXBsZUl0ZW1zUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEJpbGxNdWx0aXBsZUl0ZW1zUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvQmlsbE11bHRpcGxlSXRlbXNcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBCaWxsTXVsdGlwbGVJdGVtc1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGdldEJpbGxhYmxlSXRlbShyOiBHZXRCaWxsYWJsZUl0ZW1SZXF1ZXN0IHwgR2V0QmlsbGFibGVJdGVtUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8R2V0QmlsbGFibGVJdGVtUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldEJpbGxhYmxlSXRlbVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8R2V0QmlsbGFibGVJdGVtUmVxdWVzdD5yKSA6IG5ldyBHZXRCaWxsYWJsZUl0ZW1SZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8R2V0QmlsbGFibGVJdGVtUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvR2V0QmlsbGFibGVJdGVtXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gR2V0QmlsbGFibGVJdGVtUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgZ2V0TXVsdGlTdWJzY3JpcHRpb25zKHI6IEdldE11bHRpU3Vic2NyaXB0aW9uc1JlcXVlc3QgfCBHZXRNdWx0aVN1YnNjcmlwdGlvbnNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRNdWx0aVN1YnNjcmlwdGlvbnNSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8R2V0TXVsdGlTdWJzY3JpcHRpb25zUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxHZXRNdWx0aVN1YnNjcmlwdGlvbnNSZXF1ZXN0PnIpIDogbmV3IEdldE11bHRpU3Vic2NyaXB0aW9uc1JlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxHZXRNdWx0aVN1YnNjcmlwdGlvbnNSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmlsbGluZy9HZXRNdWx0aVN1YnNjcmlwdGlvbnNcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZXRNdWx0aVN1YnNjcmlwdGlvbnNSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBsaXN0QmlsbGFibGVJdGVtcyhyOiBMaXN0QmlsbGFibGVJdGVtc1JlcXVlc3QgfCBMaXN0QmlsbGFibGVJdGVtc1JlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPExpc3RCaWxsYWJsZUl0ZW1zUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPExpc3RCaWxsYWJsZUl0ZW1zUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxMaXN0QmlsbGFibGVJdGVtc1JlcXVlc3Q+cikgOiBuZXcgTGlzdEJpbGxhYmxlSXRlbXNSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8TGlzdEJpbGxhYmxlSXRlbXNSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmlsbGluZy9MaXN0QmlsbGFibGVJdGVtc1wiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IExpc3RCaWxsYWJsZUl0ZW1zUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgZXhwaXJlQmlsbGFibGVJdGVtKHI6IEV4cGlyZUJpbGxhYmxlSXRlbVJlcXVlc3QgfCBFeHBpcmVCaWxsYWJsZUl0ZW1SZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEV4cGlyZUJpbGxhYmxlSXRlbVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8RXhwaXJlQmlsbGFibGVJdGVtUmVxdWVzdD5yKSA6IG5ldyBFeHBpcmVCaWxsYWJsZUl0ZW1SZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmlsbGluZy9FeHBpcmVCaWxsYWJsZUl0ZW1cIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIGRlbGV0ZUJpbGxhYmxlSXRlbShyOiBEZWxldGVCaWxsYWJsZUl0ZW1SZXF1ZXN0IHwgRGVsZXRlQmlsbGFibGVJdGVtUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPG51bGw+PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxEZWxldGVCaWxsYWJsZUl0ZW1SZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPERlbGV0ZUJpbGxhYmxlSXRlbVJlcXVlc3Q+cikgOiBuZXcgRGVsZXRlQmlsbGFibGVJdGVtUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bGw+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvRGVsZXRlQmlsbGFibGVJdGVtXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBsaXN0TWVyY2hhbnRCaWxsaW5nUmVwb3J0cyhyOiBMaXN0TWVyY2hhbnRCaWxsaW5nUmVwb3J0c1JlcXVlc3QgfCBMaXN0TWVyY2hhbnRCaWxsaW5nUmVwb3J0c1JlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPExpc3RNZXJjaGFudEJpbGxpbmdSZXBvcnRzUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPExpc3RNZXJjaGFudEJpbGxpbmdSZXBvcnRzUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxMaXN0TWVyY2hhbnRCaWxsaW5nUmVwb3J0c1JlcXVlc3Q+cikgOiBuZXcgTGlzdE1lcmNoYW50QmlsbGluZ1JlcG9ydHNSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8TGlzdE1lcmNoYW50QmlsbGluZ1JlcG9ydHNSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmlsbGluZy9MaXN0TWVyY2hhbnRCaWxsaW5nUmVwb3J0c1wiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IExpc3RNZXJjaGFudEJpbGxpbmdSZXBvcnRzUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgbGlzdFByb2R1Y3RTdW1tYXJpZXMocjogTGlzdFByb2R1Y3RTdW1tYXJpZXNSZXF1ZXN0IHwgTGlzdFByb2R1Y3RTdW1tYXJpZXNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxMaXN0UHJvZHVjdFN1bW1hcmllc1Jlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxMaXN0UHJvZHVjdFN1bW1hcmllc1JlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8TGlzdFByb2R1Y3RTdW1tYXJpZXNSZXF1ZXN0PnIpIDogbmV3IExpc3RQcm9kdWN0U3VtbWFyaWVzUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PExpc3RQcm9kdWN0U3VtbWFyaWVzUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvTGlzdFByb2R1Y3RTdW1tYXJpZXNcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBMaXN0UHJvZHVjdFN1bW1hcmllc1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGdldFByb2R1Y3RTdW1tYXJpZXNUb3RhbChyOiBHZXRQcm9kdWN0U3VtbWFyaWVzVG90YWxSZXF1ZXN0IHwgR2V0UHJvZHVjdFN1bW1hcmllc1RvdGFsUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8R2V0UHJvZHVjdFN1bW1hcmllc1RvdGFsUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldFByb2R1Y3RTdW1tYXJpZXNUb3RhbFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8R2V0UHJvZHVjdFN1bW1hcmllc1RvdGFsUmVxdWVzdD5yKSA6IG5ldyBHZXRQcm9kdWN0U3VtbWFyaWVzVG90YWxSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8R2V0UHJvZHVjdFN1bW1hcmllc1RvdGFsUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvR2V0UHJvZHVjdFN1bW1hcmllc1RvdGFsXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gR2V0UHJvZHVjdFN1bW1hcmllc1RvdGFsUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgZ2VuZXJhdGVCaWxsYWJsZUl0ZW1zQ3N2KHI6IEdlbmVyYXRlQmlsbGFibGVJdGVtc0NTVlJlcXVlc3QgfCBHZW5lcmF0ZUJpbGxhYmxlSXRlbXNDU1ZSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZW5lcmF0ZUJpbGxhYmxlSXRlbXNDU1ZSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8R2VuZXJhdGVCaWxsYWJsZUl0ZW1zQ1NWUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxHZW5lcmF0ZUJpbGxhYmxlSXRlbXNDU1ZSZXF1ZXN0PnIpIDogbmV3IEdlbmVyYXRlQmlsbGFibGVJdGVtc0NTVlJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxHZW5lcmF0ZUJpbGxhYmxlSXRlbXNDU1ZSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmlsbGluZy9HZW5lcmF0ZUJpbGxhYmxlSXRlbXNDU1ZcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZW5lcmF0ZUJpbGxhYmxlSXRlbXNDU1ZSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBjcmVhdGVQcmljaW5nUGxhbihyOiBDcmVhdGVQcmljaW5nUGxhblJlcXVlc3QgfCBDcmVhdGVQcmljaW5nUGxhblJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPENyZWF0ZVByaWNpbmdQbGFuUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPENyZWF0ZVByaWNpbmdQbGFuUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxDcmVhdGVQcmljaW5nUGxhblJlcXVlc3Q+cikgOiBuZXcgQ3JlYXRlUHJpY2luZ1BsYW5SZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8Q3JlYXRlUHJpY2luZ1BsYW5SZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmlsbGluZy9DcmVhdGVQcmljaW5nUGxhblwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IENyZWF0ZVByaWNpbmdQbGFuUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgdXBkYXRlUHJpY2luZ1BsYW4ocjogVXBkYXRlUHJpY2luZ1BsYW5SZXF1ZXN0IHwgVXBkYXRlUHJpY2luZ1BsYW5SZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxVcGRhdGVQcmljaW5nUGxhblJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxVcGRhdGVQcmljaW5nUGxhblJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8VXBkYXRlUHJpY2luZ1BsYW5SZXF1ZXN0PnIpIDogbmV3IFVwZGF0ZVByaWNpbmdQbGFuUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PFVwZGF0ZVByaWNpbmdQbGFuUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvVXBkYXRlUHJpY2luZ1BsYW5cIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBVcGRhdGVQcmljaW5nUGxhblJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGdldE11bHRpUHJpY2luZ1BsYW4ocjogR2V0TXVsdGlQcmljaW5nUGxhblJlcXVlc3QgfCBHZXRNdWx0aVByaWNpbmdQbGFuUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8R2V0TXVsdGlQcmljaW5nUGxhblJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRNdWx0aVByaWNpbmdQbGFuUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxHZXRNdWx0aVByaWNpbmdQbGFuUmVxdWVzdD5yKSA6IG5ldyBHZXRNdWx0aVByaWNpbmdQbGFuUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldE11bHRpUHJpY2luZ1BsYW5SZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmlsbGluZy9HZXRNdWx0aVByaWNpbmdQbGFuXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gR2V0TXVsdGlQcmljaW5nUGxhblJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGNyZWF0ZVByaWNpbmdQbGFuUHJvZHVjdChyOiBDcmVhdGVQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0IHwgQ3JlYXRlUHJpY2luZ1BsYW5Qcm9kdWN0UmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8Q3JlYXRlUHJpY2luZ1BsYW5Qcm9kdWN0UmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPENyZWF0ZVByaWNpbmdQbGFuUHJvZHVjdFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8Q3JlYXRlUHJpY2luZ1BsYW5Qcm9kdWN0UmVxdWVzdD5yKSA6IG5ldyBDcmVhdGVQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8Q3JlYXRlUHJpY2luZ1BsYW5Qcm9kdWN0UmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvQ3JlYXRlUHJpY2luZ1BsYW5Qcm9kdWN0XCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gQ3JlYXRlUHJpY2luZ1BsYW5Qcm9kdWN0UmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgdXBkYXRlUHJpY2luZ1BsYW5Qcm9kdWN0KHI6IFVwZGF0ZVByaWNpbmdQbGFuUHJvZHVjdFJlcXVlc3QgfCBVcGRhdGVQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxVcGRhdGVQcmljaW5nUGxhblByb2R1Y3RSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8VXBkYXRlUHJpY2luZ1BsYW5Qcm9kdWN0UmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxVcGRhdGVQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0PnIpIDogbmV3IFVwZGF0ZVByaWNpbmdQbGFuUHJvZHVjdFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxVcGRhdGVQcmljaW5nUGxhblByb2R1Y3RSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmlsbGluZy9VcGRhdGVQcmljaW5nUGxhblByb2R1Y3RcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBVcGRhdGVQcmljaW5nUGxhblByb2R1Y3RSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBkZWxldGVQcmljaW5nUGxhblByb2R1Y3QocjogRGVsZXRlUHJpY2luZ1BsYW5Qcm9kdWN0UmVxdWVzdCB8IERlbGV0ZVByaWNpbmdQbGFuUHJvZHVjdFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8RGVsZXRlUHJpY2luZ1BsYW5Qcm9kdWN0UmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxEZWxldGVQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0PnIpIDogbmV3IERlbGV0ZVByaWNpbmdQbGFuUHJvZHVjdFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5CaWxsaW5nL0RlbGV0ZVByaWNpbmdQbGFuUHJvZHVjdFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB7Li4udGhpcy5hcGlPcHRpb25zKCksIG9ic2VydmU6ICdyZXNwb25zZSd9KTtcbiAgICB9XG4gICAgbGlzdFByaWNpbmdQbGFuUHJvZHVjdHMocjogTGlzdFByaWNpbmdQbGFuUHJvZHVjdHNSZXF1ZXN0IHwgTGlzdFByaWNpbmdQbGFuUHJvZHVjdHNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxMaXN0UHJpY2luZ1BsYW5Qcm9kdWN0c1Jlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxMaXN0UHJpY2luZ1BsYW5Qcm9kdWN0c1JlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8TGlzdFByaWNpbmdQbGFuUHJvZHVjdHNSZXF1ZXN0PnIpIDogbmV3IExpc3RQcmljaW5nUGxhblByb2R1Y3RzUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PExpc3RQcmljaW5nUGxhblByb2R1Y3RzUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvTGlzdFByaWNpbmdQbGFuUHJvZHVjdHNcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBMaXN0UHJpY2luZ1BsYW5Qcm9kdWN0c1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGdldFByaWNpbmdQbGFuUHJvZHVjdChyOiBHZXRQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0IHwgR2V0UHJpY2luZ1BsYW5Qcm9kdWN0UmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8R2V0UHJpY2luZ1BsYW5Qcm9kdWN0UmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldFByaWNpbmdQbGFuUHJvZHVjdFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8R2V0UHJpY2luZ1BsYW5Qcm9kdWN0UmVxdWVzdD5yKSA6IG5ldyBHZXRQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8R2V0UHJpY2luZ1BsYW5Qcm9kdWN0UmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvR2V0UHJpY2luZ1BsYW5Qcm9kdWN0XCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gR2V0UHJpY2luZ1BsYW5Qcm9kdWN0UmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgZ2V0TXVsdGlQcmljaW5nUGxhblByb2R1Y3QocjogR2V0TXVsdGlQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0IHwgR2V0TXVsdGlQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRNdWx0aVByaWNpbmdQbGFuUHJvZHVjdFJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRNdWx0aVByaWNpbmdQbGFuUHJvZHVjdFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8R2V0TXVsdGlQcmljaW5nUGxhblByb2R1Y3RSZXF1ZXN0PnIpIDogbmV3IEdldE11bHRpUHJpY2luZ1BsYW5Qcm9kdWN0UmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldE11bHRpUHJpY2luZ1BsYW5Qcm9kdWN0UmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvR2V0TXVsdGlQcmljaW5nUGxhblByb2R1Y3RcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZXRNdWx0aVByaWNpbmdQbGFuUHJvZHVjdFJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGdldE11bHRpUHJvZHVjdFByaWNpbmcocjogR2V0TXVsdGlQcm9kdWN0UHJpY2luZ1JlcXVlc3QgfCBHZXRNdWx0aVByb2R1Y3RQcmljaW5nUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8R2V0TXVsdGlQcm9kdWN0UHJpY2luZ1Jlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRNdWx0aVByb2R1Y3RQcmljaW5nUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxHZXRNdWx0aVByb2R1Y3RQcmljaW5nUmVxdWVzdD5yKSA6IG5ldyBHZXRNdWx0aVByb2R1Y3RQcmljaW5nUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldE11bHRpUHJvZHVjdFByaWNpbmdSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmlsbGluZy9HZXRNdWx0aVByb2R1Y3RQcmljaW5nXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gR2V0TXVsdGlQcm9kdWN0UHJpY2luZ1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIHRpY2tDb21wb25lbnRVc2FnZShyOiBUaWNrQ29tcG9uZW50VXNhZ2VSZXF1ZXN0IHwgVGlja0NvbXBvbmVudFVzYWdlUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPG51bGw+PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxUaWNrQ29tcG9uZW50VXNhZ2VSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFRpY2tDb21wb25lbnRVc2FnZVJlcXVlc3Q+cikgOiBuZXcgVGlja0NvbXBvbmVudFVzYWdlUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bGw+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvVGlja0NvbXBvbmVudFVzYWdlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBjcmVhdGVNZXRlcmVkQ29tcG9uZW50KHI6IENyZWF0ZU1ldGVyZWRDb21wb25lbnRSZXF1ZXN0IHwgQ3JlYXRlTWV0ZXJlZENvbXBvbmVudFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Q3JlYXRlTWV0ZXJlZENvbXBvbmVudFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8Q3JlYXRlTWV0ZXJlZENvbXBvbmVudFJlcXVlc3Q+cikgOiBuZXcgQ3JlYXRlTWV0ZXJlZENvbXBvbmVudFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5CaWxsaW5nL0NyZWF0ZU1ldGVyZWRDb21wb25lbnRcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIGxpc3RDb250cmFjdHMocjogTGlzdENvbnRyYWN0c1JlcXVlc3QgfCBMaXN0Q29udHJhY3RzUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8TGlzdENvbnRyYWN0c1Jlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxMaXN0Q29udHJhY3RzUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxMaXN0Q29udHJhY3RzUmVxdWVzdD5yKSA6IG5ldyBMaXN0Q29udHJhY3RzUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PExpc3RDb250cmFjdHNSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmlsbGluZy9MaXN0Q29udHJhY3RzXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gTGlzdENvbnRyYWN0c1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGdldE11bHRpQ29udHJhY3QocjogR2V0TXVsdGlDb250cmFjdHNSZXF1ZXN0IHwgR2V0TXVsdGlDb250cmFjdHNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRNdWx0aUNvbnRyYWN0c1Jlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRNdWx0aUNvbnRyYWN0c1JlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8R2V0TXVsdGlDb250cmFjdHNSZXF1ZXN0PnIpIDogbmV3IEdldE11bHRpQ29udHJhY3RzUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldE11bHRpQ29udHJhY3RzUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvR2V0TXVsdGlDb250cmFjdFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IEdldE11bHRpQ29udHJhY3RzUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgbGlzdFByb2R1Y3RzKHI6IExpc3RQcm9kdWN0c1JlcXVlc3QgfCBMaXN0UHJvZHVjdHNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxMaXN0UHJvZHVjdHNSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8TGlzdFByb2R1Y3RzUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxMaXN0UHJvZHVjdHNSZXF1ZXN0PnIpIDogbmV3IExpc3RQcm9kdWN0c1JlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxMaXN0UHJvZHVjdHNSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmlsbGluZy9MaXN0UHJvZHVjdHNcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBMaXN0UHJvZHVjdHNSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBnZXRNdWx0aVByb2R1Y3QocjogR2V0TXVsdGlQcm9kdWN0UmVxdWVzdCB8IEdldE11bHRpUHJvZHVjdFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEdldE11bHRpUHJvZHVjdFJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRNdWx0aVByb2R1Y3RSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPEdldE11bHRpUHJvZHVjdFJlcXVlc3Q+cikgOiBuZXcgR2V0TXVsdGlQcm9kdWN0UmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldE11bHRpUHJvZHVjdFJlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5CaWxsaW5nL0dldE11bHRpUHJvZHVjdFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IEdldE11bHRpUHJvZHVjdFJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIHJlc2V0Q29udHJhY3RQcmljaW5nKHI6IFJlc2V0Q29udHJhY3RQcmljaW5nUmVxdWVzdCB8IFJlc2V0Q29udHJhY3RQcmljaW5nUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPG51bGw+PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxSZXNldENvbnRyYWN0UHJpY2luZ1JlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8UmVzZXRDb250cmFjdFByaWNpbmdSZXF1ZXN0PnIpIDogbmV3IFJlc2V0Q29udHJhY3RQcmljaW5nUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bGw+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvUmVzZXRDb250cmFjdFByaWNpbmdcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIGdldFB1cmNoYXNlQ29zdChyOiBHZXRQdXJjaGFzZUNvc3RSZXF1ZXN0IHwgR2V0UHVyY2hhc2VDb3N0UmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8R2V0UHVyY2hhc2VDb3N0UmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldFB1cmNoYXNlQ29zdFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8R2V0UHVyY2hhc2VDb3N0UmVxdWVzdD5yKSA6IG5ldyBHZXRQdXJjaGFzZUNvc3RSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8R2V0UHVyY2hhc2VDb3N0UmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvR2V0UHVyY2hhc2VDb3N0XCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gR2V0UHVyY2hhc2VDb3N0UmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgY2hhbmdlRnJlcXVlbmN5KHI6IENoYW5nZUZyZXF1ZW5jeVJlcXVlc3QgfCBDaGFuZ2VGcmVxdWVuY3lSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPENoYW5nZUZyZXF1ZW5jeVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8Q2hhbmdlRnJlcXVlbmN5UmVxdWVzdD5yKSA6IG5ldyBDaGFuZ2VGcmVxdWVuY3lSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQmlsbGluZy9DaGFuZ2VGcmVxdWVuY3lcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIGNoYW5nZVJlbmV3YWxEYXRlKHI6IENoYW5nZVJlbmV3YWxEYXRlUmVxdWVzdCB8IENoYW5nZVJlbmV3YWxEYXRlUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPG51bGw+PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxDaGFuZ2VSZW5ld2FsRGF0ZVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8Q2hhbmdlUmVuZXdhbERhdGVSZXF1ZXN0PnIpIDogbmV3IENoYW5nZVJlbmV3YWxEYXRlUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bGw+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvQ2hhbmdlUmVuZXdhbERhdGVcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIGNoYW5nZUN1c3RvbVVuaXRQcmljZShyOiBDaGFuZ2VDdXN0b21Vbml0UHJpY2VSZXF1ZXN0IHwgQ2hhbmdlQ3VzdG9tVW5pdFByaWNlUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPG51bGw+PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxDaGFuZ2VDdXN0b21Vbml0UHJpY2VSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPENoYW5nZUN1c3RvbVVuaXRQcmljZVJlcXVlc3Q+cikgOiBuZXcgQ2hhbmdlQ3VzdG9tVW5pdFByaWNlUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bGw+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkJpbGxpbmcvQ2hhbmdlQ3VzdG9tVW5pdFByaWNlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBzdGFydFJldlJlY1RlbXBsYXRlQmFja2ZpbGwocjogU3RhcnRSZXZSZWNUZW1wbGF0ZUJhY2tmaWxsUmVxdWVzdCB8IFN0YXJ0UmV2UmVjVGVtcGxhdGVCYWNrZmlsbFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8U3RhcnRSZXZSZWNUZW1wbGF0ZUJhY2tmaWxsUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxTdGFydFJldlJlY1RlbXBsYXRlQmFja2ZpbGxSZXF1ZXN0PnIpIDogbmV3IFN0YXJ0UmV2UmVjVGVtcGxhdGVCYWNrZmlsbFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5CaWxsaW5nL1N0YXJ0UmV2UmVjVGVtcGxhdGVCYWNrZmlsbFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB7Li4udGhpcy5hcGlPcHRpb25zKCksIG9ic2VydmU6ICdyZXNwb25zZSd9KTtcbiAgICB9XG4gICAgXG59XG4iXX0=
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
// *********************************
|
|
2
|
+
// Code generated by sdkgen
|
|
3
|
+
// DO NOT EDIT!.
|
|
4
|
+
//
|
|
5
|
+
// API Service.
|
|
6
|
+
// *********************************
|
|
7
|
+
import { Injectable } from '@angular/core';
|
|
8
|
+
import { GetMultiBundleRequest, GetMultiBundleResponse, ListBundlesRequest, ListBundlesResponse, UpsertBundleRequest, } from './objects/';
|
|
9
|
+
import { HttpHeaders, HttpClient } from '@angular/common/http';
|
|
10
|
+
import { HostService } from '../_generated/host.service';
|
|
11
|
+
import { map } from 'rxjs/operators';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
import * as i1 from "@angular/common/http";
|
|
14
|
+
import * as i2 from "../_generated/host.service";
|
|
15
|
+
export class BundleApiService {
|
|
16
|
+
constructor(http, hostService) {
|
|
17
|
+
this.http = http;
|
|
18
|
+
this.hostService = hostService;
|
|
19
|
+
this._host = this.hostService.hostWithScheme;
|
|
20
|
+
}
|
|
21
|
+
apiOptions() {
|
|
22
|
+
return {
|
|
23
|
+
headers: new HttpHeaders({
|
|
24
|
+
'Content-Type': 'application/json'
|
|
25
|
+
}),
|
|
26
|
+
withCredentials: true
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
upsert(r) {
|
|
30
|
+
const request = (r.toApiJson) ? r : new UpsertBundleRequest(r);
|
|
31
|
+
return this.http.post(this._host + "/billing.v1.BundleService/Upsert", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
32
|
+
}
|
|
33
|
+
getMulti(r) {
|
|
34
|
+
const request = (r.toApiJson) ? r : new GetMultiBundleRequest(r);
|
|
35
|
+
return this.http.post(this._host + "/billing.v1.BundleService/GetMulti", request.toApiJson(), this.apiOptions())
|
|
36
|
+
.pipe(map(resp => GetMultiBundleResponse.fromProto(resp)));
|
|
37
|
+
}
|
|
38
|
+
list(r) {
|
|
39
|
+
const request = (r.toApiJson) ? r : new ListBundlesRequest(r);
|
|
40
|
+
return this.http.post(this._host + "/billing.v1.BundleService/List", request.toApiJson(), this.apiOptions())
|
|
41
|
+
.pipe(map(resp => ListBundlesResponse.fromProto(resp)));
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
BundleApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BundleApiService, deps: [{ token: i1.HttpClient }, { token: i2.HostService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
45
|
+
BundleApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BundleApiService, providedIn: 'root' });
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: BundleApiService, decorators: [{
|
|
47
|
+
type: Injectable,
|
|
48
|
+
args: [{ providedIn: 'root' }]
|
|
49
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.HostService }]; } });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlLmFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vYmlsbGluZ19zZGsvc3JjL2xpYi9faW50ZXJuYWwvYnVuZGxlLmFwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9DQUFvQztBQUNwQywyQkFBMkI7QUFDM0IsZ0JBQWdCO0FBQ2hCLEVBQUU7QUFDRixlQUFlO0FBQ2Ysb0NBQW9DO0FBQ3BDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNDLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIsa0JBQWtCLEVBQ2xCLG1CQUFtQixFQUNuQixtQkFBbUIsR0FDMUIsTUFBTSxZQUFZLENBQUM7QUFRcEIsT0FBTyxFQUFDLFdBQVcsRUFBRSxVQUFVLEVBQWUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFdkQsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7O0FBR25DLE1BQU0sT0FBTyxnQkFBZ0I7SUFHekIsWUFBb0IsSUFBZ0IsRUFBVSxXQUF3QjtRQUFsRCxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFGOUQsVUFBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDO0lBR2hELENBQUM7SUFFTyxVQUFVO1FBQ2QsT0FBTztZQUNILE9BQU8sRUFBRSxJQUFJLFdBQVcsQ0FBQztnQkFDckIsY0FBYyxFQUFFLGtCQUFrQjthQUNyQyxDQUFDO1lBQ0YsZUFBZSxFQUFFLElBQUk7U0FDeEIsQ0FBQztJQUNOLENBQUM7SUFFRCxNQUFNLENBQUMsQ0FBcUQ7UUFDeEQsTUFBTSxPQUFPLEdBQUcsQ0FBdUIsQ0FBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBdUIsQ0FBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdHLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQU8sSUFBSSxDQUFDLEtBQUssR0FBRyxrQ0FBa0MsRUFBRSxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsRUFBQyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFDLENBQUMsQ0FBQztJQUNuSixDQUFDO0lBQ0QsUUFBUSxDQUFDLENBQXlEO1FBQzlELE1BQU0sT0FBTyxHQUFHLENBQXlCLENBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQXlCLENBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuSCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFrQyxJQUFJLENBQUMsS0FBSyxHQUFHLG9DQUFvQyxFQUFFLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7YUFDNUksSUFBSSxDQUNELEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLHNCQUFzQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUN0RCxDQUFDO0lBQ1YsQ0FBQztJQUNELElBQUksQ0FBQyxDQUFtRDtRQUNwRCxNQUFNLE9BQU8sR0FBRyxDQUFzQixDQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFzQixDQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksa0JBQWtCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUcsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBK0IsSUFBSSxDQUFDLEtBQUssR0FBRyxnQ0FBZ0MsRUFBRSxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2FBQ3JJLElBQUksQ0FDRCxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDbkQsQ0FBQztJQUNWLENBQUM7OzZHQWhDUSxnQkFBZ0I7aUhBQWhCLGdCQUFnQixjQURKLE1BQU07MkZBQ2xCLGdCQUFnQjtrQkFENUIsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIEFQSSBTZXJ2aWNlLlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5pbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICAgICAgR2V0TXVsdGlCdW5kbGVSZXF1ZXN0LFxuICAgICAgICBHZXRNdWx0aUJ1bmRsZVJlc3BvbnNlLFxuICAgICAgICBMaXN0QnVuZGxlc1JlcXVlc3QsXG4gICAgICAgIExpc3RCdW5kbGVzUmVzcG9uc2UsXG4gICAgICAgIFVwc2VydEJ1bmRsZVJlcXVlc3QsXG59IGZyb20gJy4vb2JqZWN0cy8nO1xuaW1wb3J0IHtcbiAgICAgICAgR2V0TXVsdGlCdW5kbGVSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBHZXRNdWx0aUJ1bmRsZVJlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBMaXN0QnVuZGxlc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIExpc3RCdW5kbGVzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIFVwc2VydEJ1bmRsZVJlcXVlc3RJbnRlcmZhY2UsXG59IGZyb20gJy4vaW50ZXJmYWNlcy8nO1xuaW1wb3J0IHtIdHRwSGVhZGVycywgSHR0cENsaWVudCwgSHR0cFJlc3BvbnNlfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge0hvc3RTZXJ2aWNlfSBmcm9tICcuLi9fZ2VuZXJhdGVkL2hvc3Quc2VydmljZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgQnVuZGxlQXBpU2VydmljZSB7XG4gICAgcHJpdmF0ZSBfaG9zdCA9IHRoaXMuaG9zdFNlcnZpY2UuaG9zdFdpdGhTY2hlbWU7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgaG9zdFNlcnZpY2U6IEhvc3RTZXJ2aWNlKSB7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhcGlPcHRpb25zKCk6IHtoZWFkZXJzOiBIdHRwSGVhZGVycywgd2l0aENyZWRlbnRpYWxzOiBib29sZWFufSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbidcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgdXBzZXJ0KHI6IFVwc2VydEJ1bmRsZVJlcXVlc3QgfCBVcHNlcnRCdW5kbGVSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFVwc2VydEJ1bmRsZVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8VXBzZXJ0QnVuZGxlUmVxdWVzdD5yKSA6IG5ldyBVcHNlcnRCdW5kbGVSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuQnVuZGxlU2VydmljZS9VcHNlcnRcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIGdldE11bHRpKHI6IEdldE11bHRpQnVuZGxlUmVxdWVzdCB8IEdldE11bHRpQnVuZGxlUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8R2V0TXVsdGlCdW5kbGVSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8R2V0TXVsdGlCdW5kbGVSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPEdldE11bHRpQnVuZGxlUmVxdWVzdD5yKSA6IG5ldyBHZXRNdWx0aUJ1bmRsZVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxHZXRNdWx0aUJ1bmRsZVJlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5CdW5kbGVTZXJ2aWNlL0dldE11bHRpXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gR2V0TXVsdGlCdW5kbGVSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBsaXN0KHI6IExpc3RCdW5kbGVzUmVxdWVzdCB8IExpc3RCdW5kbGVzUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8TGlzdEJ1bmRsZXNSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8TGlzdEJ1bmRsZXNSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPExpc3RCdW5kbGVzUmVxdWVzdD5yKSA6IG5ldyBMaXN0QnVuZGxlc1JlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxMaXN0QnVuZGxlc1Jlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5CdW5kbGVTZXJ2aWNlL0xpc3RcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBMaXN0QnVuZGxlc1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIFxufVxuIl19
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
// *********************************
|
|
2
|
+
// Code generated by sdkgen
|
|
3
|
+
// DO NOT EDIT!.
|
|
4
|
+
//
|
|
5
|
+
// API Service.
|
|
6
|
+
// *********************************
|
|
7
|
+
import { Injectable } from '@angular/core';
|
|
8
|
+
import { DeleteContractDocumentRequest, ListContractDocumentsRequest, ListContractDocumentsResponse, } from './objects/';
|
|
9
|
+
import { HttpHeaders, HttpClient } from '@angular/common/http';
|
|
10
|
+
import { HostService } from '../_generated/host.service';
|
|
11
|
+
import { map } from 'rxjs/operators';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
import * as i1 from "@angular/common/http";
|
|
14
|
+
import * as i2 from "../_generated/host.service";
|
|
15
|
+
export class ContractDocumentApiService {
|
|
16
|
+
constructor(http, hostService) {
|
|
17
|
+
this.http = http;
|
|
18
|
+
this.hostService = hostService;
|
|
19
|
+
this._host = this.hostService.hostWithScheme;
|
|
20
|
+
}
|
|
21
|
+
apiOptions() {
|
|
22
|
+
return {
|
|
23
|
+
headers: new HttpHeaders({
|
|
24
|
+
'Content-Type': 'application/json'
|
|
25
|
+
}),
|
|
26
|
+
withCredentials: true
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
list(r) {
|
|
30
|
+
const request = (r.toApiJson) ? r : new ListContractDocumentsRequest(r);
|
|
31
|
+
return this.http.post(this._host + "/billing.v1.ContractDocumentService/List", request.toApiJson(), this.apiOptions())
|
|
32
|
+
.pipe(map(resp => ListContractDocumentsResponse.fromProto(resp)));
|
|
33
|
+
}
|
|
34
|
+
delete(r) {
|
|
35
|
+
const request = (r.toApiJson) ? r : new DeleteContractDocumentRequest(r);
|
|
36
|
+
return this.http.post(this._host + "/billing.v1.ContractDocumentService/Delete", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
ContractDocumentApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: ContractDocumentApiService, deps: [{ token: i1.HttpClient }, { token: i2.HostService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
40
|
+
ContractDocumentApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: ContractDocumentApiService, providedIn: 'root' });
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: ContractDocumentApiService, decorators: [{
|
|
42
|
+
type: Injectable,
|
|
43
|
+
args: [{ providedIn: 'root' }]
|
|
44
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.HostService }]; } });
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3QtZG9jdW1lbnQuYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9iaWxsaW5nX3Nkay9zcmMvbGliL19pbnRlcm5hbC9jb250cmFjdC1kb2N1bWVudC5hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsZUFBZTtBQUNmLG9DQUFvQztBQUNwQyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFDQyw2QkFBNkIsRUFDN0IsNEJBQTRCLEVBQzVCLDZCQUE2QixHQUNwQyxNQUFNLFlBQVksQ0FBQztBQU1wQixPQUFPLEVBQUMsV0FBVyxFQUFFLFVBQVUsRUFBZSxNQUFNLHNCQUFzQixDQUFDO0FBQzNFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUV2RCxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFHbkMsTUFBTSxPQUFPLDBCQUEwQjtJQUduQyxZQUFvQixJQUFnQixFQUFVLFdBQXdCO1FBQWxELFNBQUksR0FBSixJQUFJLENBQVk7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUY5RCxVQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUM7SUFHaEQsQ0FBQztJQUVPLFVBQVU7UUFDZCxPQUFPO1lBQ0gsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDO2dCQUNyQixjQUFjLEVBQUUsa0JBQWtCO2FBQ3JDLENBQUM7WUFDRixlQUFlLEVBQUUsSUFBSTtTQUN4QixDQUFDO0lBQ04sQ0FBQztJQUVELElBQUksQ0FBQyxDQUF1RTtRQUN4RSxNQUFNLE9BQU8sR0FBRyxDQUFnQyxDQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFnQyxDQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksNEJBQTRCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDeEksT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBeUMsSUFBSSxDQUFDLEtBQUssR0FBRywwQ0FBMEMsRUFBRSxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2FBQ3pKLElBQUksQ0FDRCxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDN0QsQ0FBQztJQUNWLENBQUM7SUFDRCxNQUFNLENBQUMsQ0FBeUU7UUFDNUUsTUFBTSxPQUFPLEdBQUcsQ0FBaUMsQ0FBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBaUMsQ0FBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLDZCQUE2QixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNJLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQU8sSUFBSSxDQUFDLEtBQUssR0FBRyw0Q0FBNEMsRUFBRSxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsRUFBQyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFDLENBQUMsQ0FBQztJQUM3SixDQUFDOzt1SEF6QlEsMEJBQTBCOzJIQUExQiwwQkFBMEIsY0FEZCxNQUFNOzJGQUNsQiwwQkFBMEI7a0JBRHRDLFVBQVU7bUJBQUMsRUFBQyxVQUFVLEVBQUUsTUFBTSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBBUEkgU2VydmljZS5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgICAgIERlbGV0ZUNvbnRyYWN0RG9jdW1lbnRSZXF1ZXN0LFxuICAgICAgICBMaXN0Q29udHJhY3REb2N1bWVudHNSZXF1ZXN0LFxuICAgICAgICBMaXN0Q29udHJhY3REb2N1bWVudHNSZXNwb25zZSxcbn0gZnJvbSAnLi9vYmplY3RzLyc7XG5pbXBvcnQge1xuICAgICAgICBEZWxldGVDb250cmFjdERvY3VtZW50UmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgTGlzdENvbnRyYWN0RG9jdW1lbnRzUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgTGlzdENvbnRyYWN0RG9jdW1lbnRzUmVzcG9uc2VJbnRlcmZhY2UsXG59IGZyb20gJy4vaW50ZXJmYWNlcy8nO1xuaW1wb3J0IHtIdHRwSGVhZGVycywgSHR0cENsaWVudCwgSHR0cFJlc3BvbnNlfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge0hvc3RTZXJ2aWNlfSBmcm9tICcuLi9fZ2VuZXJhdGVkL2hvc3Quc2VydmljZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgQ29udHJhY3REb2N1bWVudEFwaVNlcnZpY2Uge1xuICAgIHByaXZhdGUgX2hvc3QgPSB0aGlzLmhvc3RTZXJ2aWNlLmhvc3RXaXRoU2NoZW1lO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LCBwcml2YXRlIGhvc3RTZXJ2aWNlOiBIb3N0U2VydmljZSkge1xuICAgIH1cblxuICAgIHByaXZhdGUgYXBpT3B0aW9ucygpOiB7aGVhZGVyczogSHR0cEhlYWRlcnMsIHdpdGhDcmVkZW50aWFsczogYm9vbGVhbn0ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHtcbiAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZVxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGxpc3QocjogTGlzdENvbnRyYWN0RG9jdW1lbnRzUmVxdWVzdCB8IExpc3RDb250cmFjdERvY3VtZW50c1JlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPExpc3RDb250cmFjdERvY3VtZW50c1Jlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxMaXN0Q29udHJhY3REb2N1bWVudHNSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPExpc3RDb250cmFjdERvY3VtZW50c1JlcXVlc3Q+cikgOiBuZXcgTGlzdENvbnRyYWN0RG9jdW1lbnRzUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PExpc3RDb250cmFjdERvY3VtZW50c1Jlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5Db250cmFjdERvY3VtZW50U2VydmljZS9MaXN0XCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gTGlzdENvbnRyYWN0RG9jdW1lbnRzUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgZGVsZXRlKHI6IERlbGV0ZUNvbnRyYWN0RG9jdW1lbnRSZXF1ZXN0IHwgRGVsZXRlQ29udHJhY3REb2N1bWVudFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8RGVsZXRlQ29udHJhY3REb2N1bWVudFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8RGVsZXRlQ29udHJhY3REb2N1bWVudFJlcXVlc3Q+cikgOiBuZXcgRGVsZXRlQ29udHJhY3REb2N1bWVudFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5Db250cmFjdERvY3VtZW50U2VydmljZS9EZWxldGVcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIFxufVxuIl19
|