@colijnit/transaction 12.1.100 → 12.1.102
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/bundles/colijnit-transaction.umd.js +2968 -2949
- package/bundles/colijnit-transaction.umd.js.map +1 -1
- package/colijnit-transaction.d.ts +409 -400
- package/colijnit-transaction.metadata.json +1 -1
- package/esm2015/colijnit-transaction.js +410 -401
- package/esm2015/lib/cache/service/business-object-cache-manager.service.js +1 -1
- package/esm2015/lib/cache/service/select-single-parameterized-cache.service.js +47 -0
- package/esm2015/lib/component/checkout/checkout-overview-payment/checkout-overview-payment.component.js +7 -5
- package/esm2015/lib/component/core/base/transaction-base.component.js +37 -5
- package/esm2015/lib/component/core/base/transaction-filter-popup-base.component.js +8 -13
- package/esm2015/lib/component/core/base/transaction-grid-base.component.js +7 -18
- package/esm2015/lib/component/core/base/transaction-input-field-base.component.js +3 -11
- package/esm2015/lib/component/core/directive/overlay.directive.js +1 -2
- package/esm2015/lib/component/deposit-payment/deposit-payment.component.js +6 -5
- package/esm2015/lib/component/dialog/transaction-header/dialog-transaction-header-discount/dialog-transaction-header-discount.component.js +4 -12
- package/esm2015/lib/component/dialog/transaction-line/dialog-transaction-line-discount/dialog-transaction-line-discount.component.js +4 -15
- package/esm2015/lib/component/dialog/transaction-line/dialog-transaction-line-warehouse-cc/dialog-transaction-line-warehouse-cc.component.js +2 -2
- package/esm2015/lib/component/editable-label/editable-label.component.js +1 -1
- package/esm2015/lib/component/payment/payment.component.js +62 -14
- package/esm2015/lib/component/relation/relation-contact-details/relation-contact-details.component.js +1 -3
- package/esm2015/lib/component/relation/relation-general/relation-general.component.js +3 -1
- package/esm2015/lib/component/relation/relation-general/relation-general.module.js +4 -2
- package/esm2015/lib/component/search/search-filter-panel/search-filter-panel.component.js +2 -2
- package/esm2015/lib/component/search/search.component.js +2 -2
- package/esm2015/lib/component/transaction-card/transaction-card/transaction-card.component.js +18 -7
- package/esm2015/lib/component/transaction-card/transaction-card/transaction-card.module.js +9 -11
- package/esm2015/lib/component/transaction-card/transaction-card-footer/transaction-card-footer.component.js +3 -14
- package/esm2015/lib/component/transaction-card/transaction-card-header/transaction-card-header.component.js +4 -18
- package/esm2015/lib/component/transaction-card/transaction-card-invoice/transaction-card-invoice.component.js +2 -2
- package/esm2015/lib/component/transaction-card/transaction-card-order-delivery/transaction-card-order-delivery.component.js +2 -2
- package/esm2015/lib/component/transaction-card/transaction-card-purchase-overview/transaction-card-purchase-overview.component.js +11 -23
- package/esm2015/lib/component/transaction-card/transaction-card-receive-goods/transaction-card-receive-goods.component.js +2 -2
- package/esm2015/lib/component/transaction-card/transaction-card-sales-overview/transaction-card-sales-overview.component.js +8 -27
- package/esm2015/lib/component/transaction-confirmation-details/transaction-confirmation-details.component.js +3 -14
- package/esm2015/lib/component/transaction-grid/transaction-grid/transaction-grid.component.js +23 -6
- package/esm2015/lib/component/transaction-grid/transaction-history-grid/transaction-history-grid.component.js +4 -2
- package/esm2015/lib/component/transaction-grid/transaction-lines-grid/transaction-lines-grid.component.js +3 -17
- package/esm2015/lib/component/transaction-header/transaction-header-delivery/transaction-header-delivery.component.js +10 -23
- package/esm2015/lib/component/transaction-header/transaction-header-order/transaction-header-order.component.js +7 -18
- package/esm2015/lib/component/transaction-header/transaction-header-payment/transaction-header-payment.component.js +26 -16
- package/esm2015/lib/component/transaction-header/transaction-header-relation/transaction-header-relation.component.js +28 -24
- package/esm2015/lib/component/transaction-header-fields/transaction-header-administrative-relation.component.js +17 -6
- package/esm2015/lib/component/transaction-header-fields/transaction-header-branch.component.js +19 -8
- package/esm2015/lib/component/transaction-header-fields/transaction-header-currency.component.js +24 -12
- package/esm2015/lib/component/transaction-header-fields/transaction-header-definitive.component.js +3 -11
- package/esm2015/lib/component/transaction-header-fields/transaction-header-delivery-method.component.js +10 -13
- package/esm2015/lib/component/transaction-header-fields/transaction-header-delivery-options/transaction-header-delivery-options.component.js +4 -12
- package/esm2015/lib/component/transaction-header-fields/transaction-header-deposit-amount.component.js +1 -12
- package/esm2015/lib/component/transaction-header-fields/transaction-header-deposit-percentage.component.js +1 -12
- package/esm2015/lib/component/transaction-header-fields/transaction-header-discount-amount.component.js +1 -12
- package/esm2015/lib/component/transaction-header-fields/transaction-header-discount-percentage.component.js +1 -12
- package/esm2015/lib/component/transaction-header-fields/transaction-header-discount-transaction-total.component.js +1 -12
- package/esm2015/lib/component/transaction-header-fields/transaction-header-hold-codes.component.js +5 -11
- package/esm2015/lib/component/transaction-header-fields/transaction-header-marketing.component.js +5 -11
- package/esm2015/lib/component/transaction-header-fields/transaction-header-partial-delivery.component.js +4 -15
- package/esm2015/lib/component/transaction-header-fields/transaction-header-payment-condition.component.js +4 -15
- package/esm2015/lib/component/transaction-header-fields/transaction-header-preferred-delivery-date.component.js +1 -12
- package/esm2015/lib/component/transaction-header-fields/transaction-header-price-kind.component.js +9 -19
- package/esm2015/lib/component/transaction-header-fields/transaction-header-reference.component.js +1 -12
- package/esm2015/lib/component/transaction-header-fields/transaction-header-relation-reference.component.js +1 -12
- package/esm2015/lib/component/transaction-header-fields/transaction-header-remarks.component.js +1 -12
- package/esm2015/lib/component/transaction-header-fields/transaction-header-sales-person.component.js +3 -14
- package/esm2015/lib/component/transaction-line/transaction-base-line/transaction-base-line.component.js +10 -22
- package/esm2015/lib/component/transaction-line/transaction-goods-allocation-line/transaction-goods-allocation-line.component.js +11 -25
- package/esm2015/lib/component/transaction-line/transaction-goods-allocation-line/transaction-goods-allocation-line.module.js +12 -12
- package/esm2015/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line-base.component.js +19 -17
- package/esm2015/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line.component.js +10 -7
- package/esm2015/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line.module.js +12 -12
- package/esm2015/lib/component/transaction-line/transaction-line/transaction-line.component.js +20 -8
- package/esm2015/lib/component/transaction-line/transaction-line/transaction-line.module.js +5 -7
- package/esm2015/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line-base.component.js +15 -19
- package/esm2015/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line.component.js +10 -7
- package/esm2015/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line.module.js +2 -2
- package/esm2015/lib/component/transaction-line/transaction-overview-line/transaction-overview-line.component.js +59 -62
- package/esm2015/lib/component/transaction-line/transaction-overview-line/transaction-overview-line.module.js +4 -3
- package/esm2015/lib/component/transaction-line/transaction-purchase-line/transaction-purchase-line-base.component.js +24 -25
- package/esm2015/lib/component/transaction-line/transaction-purchase-line/transaction-purchase-line.component.js +42 -42
- package/esm2015/lib/component/transaction-line/transaction-purchase-line/transaction-purchase-line.module.js +4 -3
- package/esm2015/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line-base.component.js +10 -22
- package/esm2015/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line.component.js +7 -5
- package/esm2015/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line.module.js +4 -3
- package/esm2015/lib/component/transaction-line/transaction-purchase-overview-line/transaction-purchase-overview-line.component.js +55 -67
- package/esm2015/lib/component/transaction-line/transaction-purchase-overview-line/transaction-purchase-overview-line.module.js +4 -2
- package/esm2015/lib/component/transaction-line/transaction-receive-goods-line/transaction-receive-goods-line-base.component.js +5 -20
- package/esm2015/lib/component/transaction-line/transaction-receive-goods-line/transaction-receive-goods-line.component.js +7 -5
- package/esm2015/lib/component/transaction-line/transaction-receive-goods-line/transaction-receive-goods-line.module.js +14 -14
- package/esm2015/lib/component/transaction-line/transaction-text-line/transaction-text-line.component.js +1 -15
- package/esm2015/lib/component/transaction-line-checkbox-list/transaction-line-checkbox-list.component.js +28 -14
- package/esm2015/lib/component/transaction-line-checkbox-list/transaction-line-checkbox-list.module.js +4 -2
- package/esm2015/lib/component/transaction-line-delivery-history/transaction-line-delivery-history.component.js +34 -0
- package/esm2015/lib/component/transaction-line-delivery-history/transaction-line-delivery-history.module.js +25 -0
- package/esm2015/lib/component/transaction-line-fields/transaction-line-amount.component.js +3 -13
- package/esm2015/lib/component/transaction-line-fields/transaction-line-commission-button.component.js +24 -24
- package/esm2015/lib/component/transaction-line-fields/transaction-line-commission-code.component.js +5 -11
- package/esm2015/lib/component/transaction-line-fields/transaction-line-delivery-button.component.js +19 -23
- package/esm2015/lib/component/transaction-line-fields/transaction-line-delivery-date.component.js +1 -12
- package/esm2015/lib/component/transaction-line-fields/transaction-line-delivery-method.component.js +7 -13
- package/esm2015/lib/component/transaction-line-fields/transaction-line-description.component.js +7 -18
- package/esm2015/lib/component/transaction-line-fields/transaction-line-discount-amount.component.js +1 -12
- package/esm2015/lib/component/transaction-line-fields/transaction-line-discount-button.component.js +3 -13
- package/esm2015/lib/component/transaction-line-fields/transaction-line-drop-shipment-button.component.js +38 -32
- package/esm2015/lib/component/transaction-line-fields/transaction-line-line-discount.component.js +1 -12
- package/esm2015/lib/component/transaction-line-fields/transaction-line-price/transaction-line-price.component.js +3 -11
- package/esm2015/lib/component/transaction-line-fields/transaction-line-price-list.component.js +5 -11
- package/esm2015/lib/component/transaction-line-fields/transaction-line-quantity.component.js +1 -12
- package/esm2015/lib/component/transaction-line-fields/transaction-line-quantum-discount.component.js +1 -12
- package/esm2015/lib/component/transaction-line-fields/transaction-line-reference.component.js +1 -12
- package/esm2015/lib/component/transaction-line-fields/transaction-line-special-discount.component.js +1 -12
- package/esm2015/lib/component/transaction-line-fields/transaction-line-supplier-button.component.js +33 -18
- package/esm2015/lib/component/transaction-line-fields/transaction-line-supplier.component.js +19 -6
- package/esm2015/lib/component/transaction-line-fields/transaction-line-vat-button.component.js +12 -18
- package/esm2015/lib/component/transaction-line-fields/transaction-line-vat.component.js +5 -11
- package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse-button.component.js +20 -24
- package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse-location-button.component.js +21 -4
- package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse-location.component.js +19 -6
- package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse.component.js +5 -11
- package/esm2015/lib/component/transaction-line-image-and-description/transaction-line-image-and-description.component.js +32 -45
- package/esm2015/lib/component/transaction-line-invoice-history/transaction-line-invoice-history.component.js +34 -0
- package/esm2015/lib/component/transaction-line-invoice-history/transaction-line-invoice-history.module.js +25 -0
- package/esm2015/lib/component/transaction-line-purchase-confirmation/transaction-line-purchase-confirmation.component.js +22 -37
- package/esm2015/lib/component/transaction-line-purchase-receive-goods/transaction-line-purchase-receive-goods.component.js +43 -36
- package/esm2015/lib/component/transaction-line-sales-allocation/transaction-line-sales-allocation.component.js +25 -17
- package/esm2015/lib/component/transaction-line-sales-delivery/transaction-line-sales-delivery.component.js +49 -0
- package/esm2015/lib/component/transaction-line-sales-delivery/transaction-line-sales-delivery.module.js +21 -0
- package/esm2015/lib/component/transaction-line-sales-invoice/transaction-line-sales-invoice.component.js +49 -0
- package/esm2015/lib/component/transaction-line-sales-invoice/transaction-line-sales-invoice.module.js +21 -0
- package/esm2015/lib/component/transaction-line-side-panel-sales/transaction-line-side-panel-sales.component.js +13 -1
- package/esm2015/lib/component/transaction-line-side-panel-sales/transaction-line-side-panel-sales.module.js +6 -2
- package/esm2015/lib/component/transaction-line-statusbar/transaction-line-statusbar.component.js +33 -42
- package/esm2015/lib/component/transaction-lines/transaction-lines.component.js +10 -22
- package/esm2015/lib/component/transaction-lines/transaction-lines.module.js +4 -3
- package/esm2015/lib/component/transaction-print-package-sticker/transaction-print-package-sticker.component.js +4 -15
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-goods-allocation/transaction-quick-access-goods-allocation.component.js +5 -19
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-invoice/transaction-quick-access-invoice.component.js +22 -28
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-order-confirmation/transaction-quick-access-order-confirmation.component.js +4 -18
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-order-delivery/transaction-quick-access-order-delivery.component.js +15 -29
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-order-purchase/transaction-quick-access-order-purchase.component.js +12 -20
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-overview/transaction-quick-access-overview.component.js +10 -18
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-purchase-order-overview/transaction-quick-access-purchase-order-overview.component.js +10 -18
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-received-goods/transaction-quick-access-received-goods.component.js +6 -20
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-send-method-base.component.js +4 -12
- package/esm2015/lib/component/transaction-search/transaction-filter/transaction-sales-order-filter/transaction-sales-order-filter.component.js +7 -6
- package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-article/transaction-sales-order-filter-content-article.component.js +12 -12
- package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-logistics/transaction-sales-order-filter-content-logistics.component.js +32 -44
- package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-order/transaction-sales-order-filter-content-order.component.js +26 -30
- package/esm2015/lib/component/transaction-send-documents/transaction-send-documents.component.js +12 -23
- package/esm2015/lib/component/transaction-tile/transaction-tile.component.js +4 -18
- package/esm2015/lib/res/dictionary/dictionaries.js +2 -2
- package/esm2015/lib/service/payment.service.js +25 -11
- package/esm2015/lib/service/pending-reason.service.js +4 -12
- package/esm2015/lib/service/relation.service.js +10 -1
- package/esm2015/lib/service/transaction-base.service.js +3 -38
- package/esm2015/lib/service/transaction-connector-adapter.service.js +30 -4
- package/esm2015/lib/service/transaction-connector.service.js +16 -14
- package/esm2015/lib/service/transaction-event.service.js +2 -1
- package/esm2015/lib/service/transaction.service.js +28 -30
- package/esm2015/lib/transaction-version.js +3 -3
- package/fesm2015/colijnit-transaction.js +2928 -2946
- package/fesm2015/colijnit-transaction.js.map +1 -1
- package/lib/cache/service/business-object-cache-manager.service.d.ts +2 -2
- package/lib/cache/service/select-single-parameterized-cache.service.d.ts +19 -0
- package/lib/component/checkout/checkout-overview-payment/checkout-overview-payment.component.d.ts +6 -6
- package/lib/component/core/base/transaction-base.component.d.ts +18 -3
- package/lib/component/core/base/transaction-filter-popup-base.component.d.ts +3 -8
- package/lib/component/core/base/transaction-grid-base.component.d.ts +5 -12
- package/lib/component/core/base/transaction-input-field-base.component.d.ts +0 -5
- package/lib/component/deposit-payment/deposit-payment.component.d.ts +5 -4
- package/lib/component/dialog/transaction-header/dialog-transaction-header-discount/dialog-transaction-header-discount.component.d.ts +0 -5
- package/lib/component/dialog/transaction-line/dialog-transaction-line-commission-code/style/_layout.scss +2 -5
- package/lib/component/dialog/transaction-line/dialog-transaction-line-discount/dialog-transaction-line-discount.component.d.ts +0 -7
- package/lib/component/dialog/transaction-line/dialog-transaction-line-vat/style/_layout.scss +1 -1
- package/lib/component/dialog/transaction-line/dialog-transaction-line-warehouse-cc/style/_layout.scss +3 -3
- package/lib/component/editable-label/editable-label.component.d.ts +1 -1
- package/lib/component/payment/payment.component.d.ts +4 -0
- package/lib/component/payment/style/_layout.scss +6 -0
- package/lib/component/payment/style/_material-definition.scss +5 -0
- package/lib/component/payment/style/_theme.scss +3 -0
- package/lib/component/relation/relation-general/relation-general.component.d.ts +2 -0
- package/lib/component/relation/relation-general/style/_material-definition.scss +1 -1
- package/lib/component/transaction-card/transaction-card/transaction-card.component.d.ts +10 -3
- package/lib/component/transaction-card/transaction-card-footer/transaction-card-footer.component.d.ts +0 -7
- package/lib/component/transaction-card/transaction-card-header/transaction-card-header.component.d.ts +0 -9
- package/lib/component/transaction-card/transaction-card-purchase-overview/transaction-card-purchase-overview.component.d.ts +0 -9
- package/lib/component/transaction-card/transaction-card-sales-overview/transaction-card-sales-overview.component.d.ts +1 -13
- package/lib/component/transaction-confirmation-details/transaction-confirmation-details.component.d.ts +0 -7
- package/lib/component/transaction-grid/transaction-grid/transaction-grid.component.d.ts +15 -3
- package/lib/component/transaction-grid/transaction-history-grid/transaction-history-grid.component.d.ts +1 -0
- package/lib/component/transaction-grid/transaction-lines-grid/transaction-lines-grid.component.d.ts +0 -9
- package/lib/component/transaction-header/transaction-header-delivery/transaction-header-delivery.component.d.ts +0 -9
- package/lib/component/transaction-header/transaction-header-order/style/_layout.scss +1 -0
- package/lib/component/transaction-header/transaction-header-order/transaction-header-order.component.d.ts +0 -7
- package/lib/component/transaction-header/transaction-header-payment/transaction-header-payment.component.d.ts +16 -10
- package/lib/component/transaction-header/transaction-header-relation/style/_layout.scss +3 -0
- package/lib/component/transaction-header/transaction-header-relation/style/_material-definition.scss +2 -1
- package/lib/component/transaction-header/transaction-header-relation/transaction-header-relation.component.d.ts +11 -5
- package/lib/component/transaction-header-fields/transaction-header-administrative-relation.component.d.ts +10 -3
- package/lib/component/transaction-header-fields/transaction-header-branch.component.d.ts +11 -5
- package/lib/component/transaction-header-fields/transaction-header-currency.component.d.ts +14 -7
- package/lib/component/transaction-header-fields/transaction-header-definitive.component.d.ts +0 -5
- package/lib/component/transaction-header-fields/transaction-header-delivery-method.component.d.ts +6 -8
- package/lib/component/transaction-header-fields/transaction-header-delivery-options/transaction-header-delivery-options.component.d.ts +0 -5
- package/lib/component/transaction-header-fields/transaction-header-deposit-amount.component.d.ts +0 -5
- package/lib/component/transaction-header-fields/transaction-header-deposit-percentage.component.d.ts +0 -5
- package/lib/component/transaction-header-fields/transaction-header-discount-amount.component.d.ts +0 -5
- package/lib/component/transaction-header-fields/transaction-header-discount-percentage.component.d.ts +0 -5
- package/lib/component/transaction-header-fields/transaction-header-discount-transaction-total.component.d.ts +0 -5
- package/lib/component/transaction-header-fields/transaction-header-hold-codes.component.d.ts +0 -5
- package/lib/component/transaction-header-fields/transaction-header-marketing.component.d.ts +0 -5
- package/lib/component/transaction-header-fields/transaction-header-partial-delivery.component.d.ts +0 -7
- package/lib/component/transaction-header-fields/transaction-header-payment-condition.component.d.ts +1 -8
- package/lib/component/transaction-header-fields/transaction-header-preferred-delivery-date.component.d.ts +0 -5
- package/lib/component/transaction-header-fields/transaction-header-price-kind.component.d.ts +3 -10
- package/lib/component/transaction-header-fields/transaction-header-reference.component.d.ts +0 -5
- package/lib/component/transaction-header-fields/transaction-header-relation-reference.component.d.ts +0 -5
- package/lib/component/transaction-header-fields/transaction-header-remarks.component.d.ts +0 -5
- package/lib/component/transaction-header-fields/transaction-header-sales-person.component.d.ts +0 -7
- package/lib/component/transaction-line/transaction-base-line/style/_layout.scss +1 -0
- package/lib/component/transaction-line/transaction-base-line/style/_material-definition.scss +1 -0
- package/lib/component/transaction-line/transaction-base-line/transaction-base-line.component.d.ts +0 -9
- package/lib/component/transaction-line/transaction-goods-allocation-line/transaction-goods-allocation-line.component.d.ts +1 -11
- package/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line-base.component.d.ts +3 -9
- package/lib/component/transaction-line/transaction-line/transaction-line.component.d.ts +10 -3
- package/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line-base.component.d.ts +3 -11
- package/lib/component/transaction-line/transaction-overview-line/transaction-overview-line.component.d.ts +6 -14
- package/lib/component/transaction-line/transaction-purchase-line/transaction-purchase-line-base.component.d.ts +4 -11
- package/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line-base.component.d.ts +3 -12
- package/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line.component.d.ts +1 -1
- package/lib/component/transaction-line/transaction-purchase-overview-line/transaction-purchase-overview-line.component.d.ts +3 -12
- package/lib/component/transaction-line/transaction-receive-goods-line/transaction-receive-goods-line-base.component.d.ts +0 -11
- package/lib/component/transaction-line/transaction-receive-goods-line/transaction-receive-goods-line.component.d.ts +2 -2
- package/lib/component/transaction-line/transaction-text-line/transaction-text-line.component.d.ts +0 -7
- package/lib/component/transaction-line-checkbox-list/style/_layout.scss +18 -2
- package/lib/component/transaction-line-checkbox-list/transaction-line-checkbox-list.component.d.ts +6 -5
- package/lib/component/transaction-line-delivery-history/style/_layout.scss +4 -0
- package/lib/component/transaction-line-delivery-history/style/_material-definition.scss +0 -0
- package/lib/component/transaction-line-delivery-history/style/_theme.scss +4 -0
- package/lib/component/transaction-line-delivery-history/style/material.scss +4 -0
- package/lib/component/transaction-line-delivery-history/transaction-line-delivery-history.component.d.ts +5 -0
- package/lib/component/transaction-line-delivery-history/transaction-line-delivery-history.module.d.ts +2 -0
- package/lib/component/transaction-line-fields/transaction-line-amount.component.d.ts +0 -5
- package/lib/component/transaction-line-fields/transaction-line-commission-button.component.d.ts +4 -7
- package/lib/component/transaction-line-fields/transaction-line-commission-code.component.d.ts +0 -5
- package/lib/component/transaction-line-fields/transaction-line-delivery-button.component.d.ts +3 -8
- package/lib/component/transaction-line-fields/transaction-line-delivery-date.component.d.ts +0 -5
- package/lib/component/transaction-line-fields/transaction-line-delivery-method.component.d.ts +0 -5
- package/lib/component/transaction-line-fields/transaction-line-description.component.d.ts +3 -10
- package/lib/component/transaction-line-fields/transaction-line-discount-amount.component.d.ts +0 -5
- package/lib/component/transaction-line-fields/transaction-line-discount-button.component.d.ts +0 -6
- package/lib/component/transaction-line-fields/transaction-line-drop-shipment-button.component.d.ts +12 -6
- package/lib/component/transaction-line-fields/transaction-line-line-discount.component.d.ts +0 -5
- package/lib/component/transaction-line-fields/transaction-line-price/transaction-line-price.component.d.ts +0 -5
- package/lib/component/transaction-line-fields/transaction-line-price-list.component.d.ts +0 -5
- package/lib/component/transaction-line-fields/transaction-line-quantity.component.d.ts +0 -5
- package/lib/component/transaction-line-fields/transaction-line-quantum-discount.component.d.ts +0 -5
- package/lib/component/transaction-line-fields/transaction-line-reference.component.d.ts +0 -5
- package/lib/component/transaction-line-fields/transaction-line-special-discount.component.d.ts +0 -5
- package/lib/component/transaction-line-fields/transaction-line-supplier-button.component.d.ts +13 -3
- package/lib/component/transaction-line-fields/transaction-line-supplier.component.d.ts +10 -3
- package/lib/component/transaction-line-fields/transaction-line-vat-button.component.d.ts +2 -7
- package/lib/component/transaction-line-fields/transaction-line-vat.component.d.ts +0 -5
- package/lib/component/transaction-line-fields/transaction-line-warehouse-button.component.d.ts +3 -8
- package/lib/component/transaction-line-fields/transaction-line-warehouse-location-button.component.d.ts +13 -3
- package/lib/component/transaction-line-fields/transaction-line-warehouse-location.component.d.ts +10 -3
- package/lib/component/transaction-line-fields/transaction-line-warehouse.component.d.ts +0 -5
- package/lib/component/transaction-line-image-and-description/transaction-line-image-and-description.component.d.ts +5 -19
- package/lib/component/transaction-line-invoice-history/style/_layout.scss +4 -0
- package/lib/component/transaction-line-invoice-history/style/_material-definition.scss +0 -0
- package/lib/component/transaction-line-invoice-history/style/_theme.scss +4 -0
- package/lib/component/transaction-line-invoice-history/style/material.scss +4 -0
- package/lib/component/transaction-line-invoice-history/transaction-line-invoice-history.component.d.ts +5 -0
- package/lib/component/transaction-line-invoice-history/transaction-line-invoice-history.module.d.ts +2 -0
- package/lib/component/transaction-line-purchase-confirmation/transaction-line-purchase-confirmation.component.d.ts +5 -17
- package/lib/component/transaction-line-purchase-receive-goods/transaction-line-purchase-receive-goods.component.d.ts +20 -17
- package/lib/component/transaction-line-sales-allocation/transaction-line-sales-allocation.component.d.ts +11 -7
- package/lib/component/transaction-line-sales-delivery/style/_layout.scss +4 -0
- package/lib/component/transaction-line-sales-delivery/style/_material-definition.scss +0 -0
- package/lib/component/transaction-line-sales-delivery/style/_theme.scss +4 -0
- package/lib/component/transaction-line-sales-delivery/style/material.scss +4 -0
- package/lib/component/transaction-line-sales-delivery/transaction-line-sales-delivery.component.d.ts +9 -0
- package/lib/component/transaction-line-sales-delivery/transaction-line-sales-delivery.module.d.ts +2 -0
- package/lib/component/transaction-line-sales-invoice/style/_layout.scss +4 -0
- package/lib/component/transaction-line-sales-invoice/style/_material-definition.scss +0 -0
- package/lib/component/transaction-line-sales-invoice/style/_theme.scss +4 -0
- package/lib/component/transaction-line-sales-invoice/style/material.scss +4 -0
- package/lib/component/transaction-line-sales-invoice/transaction-line-sales-invoice.component.d.ts +9 -0
- package/lib/component/transaction-line-sales-invoice/transaction-line-sales-invoice.module.d.ts +2 -0
- package/lib/component/transaction-line-statusbar/transaction-line-statusbar.component.d.ts +9 -17
- package/lib/component/transaction-lines/style/_material-definition.scss +1 -0
- package/lib/component/transaction-lines/transaction-lines.component.d.ts +1 -10
- package/lib/component/transaction-print-package-sticker/transaction-print-package-sticker.component.d.ts +0 -7
- package/lib/component/transaction-quick-access/transaction-quick-access-goods-allocation/transaction-quick-access-goods-allocation.component.d.ts +0 -9
- package/lib/component/transaction-quick-access/transaction-quick-access-invoice/transaction-quick-access-invoice.component.d.ts +5 -11
- package/lib/component/transaction-quick-access/transaction-quick-access-order-confirmation/transaction-quick-access-order-confirmation.component.d.ts +0 -9
- package/lib/component/transaction-quick-access/transaction-quick-access-order-delivery/transaction-quick-access-order-delivery.component.d.ts +2 -10
- package/lib/component/transaction-quick-access/transaction-quick-access-order-purchase/transaction-quick-access-order-purchase.component.d.ts +3 -9
- package/lib/component/transaction-quick-access/transaction-quick-access-overview/transaction-quick-access-overview.component.d.ts +0 -5
- package/lib/component/transaction-quick-access/transaction-quick-access-purchase-order-overview/transaction-quick-access-purchase-order-overview.component.d.ts +0 -5
- package/lib/component/transaction-quick-access/transaction-quick-access-received-goods/transaction-quick-access-received-goods.component.d.ts +0 -9
- package/lib/component/transaction-quick-access/transaction-quick-access-send-method-base.component.d.ts +0 -5
- package/lib/component/transaction-search/transaction-filter/transaction-filter/style/_layout.scss +8 -2
- package/lib/component/transaction-search/transaction-filter/transaction-filter/style/_material-definition.scss +3 -3
- package/lib/component/transaction-search/transaction-filter/transaction-sales-order-filter/transaction-sales-order-filter.component.d.ts +3 -3
- package/lib/component/transaction-send-documents/transaction-send-documents.component.d.ts +0 -9
- package/lib/component/transaction-tile/transaction-tile.component.d.ts +0 -9
- package/lib/res/dictionary/dictionaries.d.ts +1 -0
- package/lib/service/payment.service.d.ts +8 -3
- package/lib/service/pending-reason.service.d.ts +1 -1
- package/lib/service/relation.service.d.ts +1 -0
- package/lib/service/transaction-base.service.d.ts +0 -1
- package/lib/service/transaction-connector-adapter.service.d.ts +6 -2
- package/lib/service/transaction-connector.service.d.ts +4 -4
- package/lib/service/transaction-event.service.d.ts +4 -0
- package/lib/service/transaction.service.d.ts +6 -1
- package/lib/style/_variables.scss +1 -1
- package/package.json +4 -4
|
@@ -1,26 +1,27 @@
|
|
|
1
1
|
import { __awaiter } from "tslib";
|
|
2
|
-
import { Component, HostBinding, ViewEncapsulation } from
|
|
3
|
-
import { TransactionBaseComponent } from
|
|
4
|
-
import { TransactionTypeCategory } from
|
|
5
|
-
import { PurchaseOrderLineReceiptDetails } from
|
|
6
|
-
import { ReceiveGoodsForPurchaseOrderRequest } from
|
|
7
|
-
import { FormMasterService } from
|
|
8
|
-
import { IconCacheService } from
|
|
9
|
-
import { TransactionService } from
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import { PurchaseOrderLineReceiptCorrectionDetails } from "@colijnit/transactionapi/build/model/purchase-order-line-receipt-correction-details.bo";
|
|
2
|
+
import { ChangeDetectorRef, Component, HostBinding, ViewEncapsulation } from '@angular/core';
|
|
3
|
+
import { TransactionBaseComponent } from '../core/base/transaction-base.component';
|
|
4
|
+
import { TransactionTypeCategory } from '../../enum/transaction-type-category.enum';
|
|
5
|
+
import { PurchaseOrderLineReceiptDetails } from '@colijnit/transactionapi/build/model/purchase-order-line-receipt-details.bo';
|
|
6
|
+
import { ReceiveGoodsForPurchaseOrderRequest } from '@colijnit/transactionapi/build/model/receive-goods-for-purchase-order-request.bo';
|
|
7
|
+
import { FormMasterService } from '@colijnit/corecomponents_v12';
|
|
8
|
+
import { IconCacheService } from '../../service/icon-cache.service';
|
|
9
|
+
import { TransactionService } from '../../service/transaction.service';
|
|
10
|
+
import { TransactionEventService } from '../../service/transaction-event.service';
|
|
11
|
+
import { ReceiveGoodsForPurchaseOrderCorrectionRequest } from '@colijnit/transactionapi/build/model/receive-goods-for-purchase-order-correction-request.bo';
|
|
12
|
+
import { PurchaseOrderLineReceiptCorrectionDetails } from '@colijnit/transactionapi/build/model/purchase-order-line-receipt-correction-details.bo';
|
|
14
13
|
import { DictionaryService } from '../../service/dictionary.service';
|
|
14
|
+
import { TransactionImageService } from '../../service/transaction-image.service';
|
|
15
15
|
export class TransactionLinePurchaseReceiveGoodsComponent extends TransactionBaseComponent {
|
|
16
|
-
constructor(
|
|
17
|
-
super(dictionaryService,
|
|
18
|
-
this.
|
|
16
|
+
constructor(transactionEventService, service, iconCacheService, dictionaryService, imageService, changeDetector, _formMaster) {
|
|
17
|
+
super(transactionEventService, iconCacheService, imageService, dictionaryService, service, changeDetector);
|
|
18
|
+
this.transactionEventService = transactionEventService;
|
|
19
|
+
this.service = service;
|
|
19
20
|
this.iconCacheService = iconCacheService;
|
|
20
|
-
this.
|
|
21
|
+
this.dictionaryService = dictionaryService;
|
|
22
|
+
this.imageService = imageService;
|
|
23
|
+
this.changeDetector = changeDetector;
|
|
21
24
|
this._formMaster = _formMaster;
|
|
22
|
-
this._dialogService = _dialogService;
|
|
23
|
-
this._transactionEventService = _transactionEventService;
|
|
24
25
|
this.transactionTypeCategory = TransactionTypeCategory;
|
|
25
26
|
this.request = new ReceiveGoodsForPurchaseOrderRequest();
|
|
26
27
|
this.receiptDetails = new PurchaseOrderLineReceiptDetails();
|
|
@@ -28,16 +29,19 @@ export class TransactionLinePurchaseReceiveGoodsComponent extends TransactionBas
|
|
|
28
29
|
this.returnStockMode = false;
|
|
29
30
|
this.availableStockCollection = [];
|
|
30
31
|
this._subs = [];
|
|
31
|
-
|
|
32
|
+
}
|
|
33
|
+
showClass() {
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
ngOnInit() {
|
|
37
|
+
this._subs.push(this.transactionEventService.transactionLineChanged.subscribe((transLine) => {
|
|
32
38
|
if (transLine.lineNr === this.transactionLine.lineNr) {
|
|
33
39
|
this._handleTransactionLineSet(transLine);
|
|
34
40
|
}
|
|
35
41
|
}));
|
|
36
42
|
}
|
|
37
|
-
showClass() {
|
|
38
|
-
return true;
|
|
39
|
-
}
|
|
40
43
|
ngOnDestroy() {
|
|
44
|
+
super.ngOnDestroy();
|
|
41
45
|
this._subs.forEach(s => s.unsubscribe());
|
|
42
46
|
}
|
|
43
47
|
submit() {
|
|
@@ -126,11 +130,12 @@ export class TransactionLinePurchaseReceiveGoodsComponent extends TransactionBas
|
|
|
126
130
|
}
|
|
127
131
|
TransactionLinePurchaseReceiveGoodsComponent.decorators = [
|
|
128
132
|
{ type: Component, args: [{
|
|
129
|
-
selector:
|
|
133
|
+
selector: 'co-transaction-line-purchase-receive-goods',
|
|
130
134
|
template: `
|
|
131
135
|
<co-form>
|
|
132
136
|
<div class="header-wrapper">
|
|
133
|
-
<div class="details-header"
|
|
137
|
+
<div class="details-header"
|
|
138
|
+
[textContent]="returnStockMode ? ('RETURN_DETAILS' | localize | uppercase) : ('RECEIPT_DETAILS' | localize | uppercase)"></div>
|
|
134
139
|
<co-transaction-line-statusbar class="status-bar-wrapper"
|
|
135
140
|
[transactionLine]="transactionLine"
|
|
136
141
|
[transactionInfo]="transactionInfo"
|
|
@@ -196,17 +201,18 @@ TransactionLinePurchaseReceiveGoodsComponent.decorators = [
|
|
|
196
201
|
</div>
|
|
197
202
|
</co-form>
|
|
198
203
|
<div class="commit-button-wrapper">
|
|
199
|
-
<div class="commit-button clickable" *ngIf="!readonly" (click)="handleSaveDetailsEdit()"
|
|
204
|
+
<div class="commit-button clickable" *ngIf="!readonly" (click)="handleSaveDetailsEdit()"
|
|
205
|
+
[class.disabled]="receiptDetails.quantityToReceive === 0">
|
|
200
206
|
<span class="commit-text" [textContent]="returnStockMode ? ('RETURN_STOCK' | localize) : ('RECEIVE' | localize)"></span>
|
|
201
207
|
</div>
|
|
202
208
|
</div>
|
|
203
209
|
<co-transaction-receiving-goods-history *ngIf="transactionLine.amount >= 0"
|
|
204
|
-
|
|
205
|
-
|
|
210
|
+
[goodsReceiptHistory]="goodsReceiptHistory"
|
|
211
|
+
(deleteRow)="handleDeleteSelectedRow($event)"
|
|
206
212
|
></co-transaction-receiving-goods-history>
|
|
207
213
|
<co-transaction-available-stock-grid *ngIf="transactionLine.amount < 0"
|
|
208
|
-
|
|
209
|
-
|
|
214
|
+
[collection]="availableStockCollection"
|
|
215
|
+
(selectStock)="handleSelectStock($event)"
|
|
210
216
|
></co-transaction-available-stock-grid>
|
|
211
217
|
`,
|
|
212
218
|
providers: [
|
|
@@ -216,14 +222,15 @@ TransactionLinePurchaseReceiveGoodsComponent.decorators = [
|
|
|
216
222
|
},] }
|
|
217
223
|
];
|
|
218
224
|
TransactionLinePurchaseReceiveGoodsComponent.ctorParameters = () => [
|
|
219
|
-
{ type:
|
|
220
|
-
{ type: IconCacheService },
|
|
225
|
+
{ type: TransactionEventService },
|
|
221
226
|
{ type: TransactionService },
|
|
222
|
-
{ type:
|
|
223
|
-
{ type:
|
|
224
|
-
{ type:
|
|
227
|
+
{ type: IconCacheService },
|
|
228
|
+
{ type: DictionaryService },
|
|
229
|
+
{ type: TransactionImageService },
|
|
230
|
+
{ type: ChangeDetectorRef },
|
|
231
|
+
{ type: FormMasterService }
|
|
225
232
|
];
|
|
226
233
|
TransactionLinePurchaseReceiveGoodsComponent.propDecorators = {
|
|
227
|
-
showClass: [{ type: HostBinding, args: [
|
|
234
|
+
showClass: [{ type: HostBinding, args: ['class.co-transaction-line-purchase-receive-goods',] }]
|
|
228
235
|
};
|
|
229
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1wdXJjaGFzZS1yZWNlaXZlLWdvb2RzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWxpbmUtcHVyY2hhc2UtcmVjZWl2ZS1nb29kcy90cmFuc2FjdGlvbi1saW5lLXB1cmNoYXNlLXJlY2VpdmUtZ29vZHMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNqRixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUNsRixPQUFPLEVBQUMsK0JBQStCLEVBQUMsTUFBTSw2RUFBNkUsQ0FBQztBQUM1SCxPQUFPLEVBQUMsbUNBQW1DLEVBQUMsTUFBTSxrRkFBa0YsQ0FBQztBQUVySSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFHaEYsT0FBTyxFQUFDLDZDQUE2QyxFQUFDLE1BQU0sNkZBQTZGLENBQUM7QUFDMUosT0FBTyxFQUFDLHlDQUF5QyxFQUFDLE1BQU0sd0ZBQXdGLENBQUM7QUFHakosT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUEyRm5FLE1BQU0sT0FBTyw0Q0FB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LGtCQUFrQixDQUFDLDZDQUE2QyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDcEssQ0FBQztLQUFBOzs7WUFyTkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw0Q0FBNEM7Z0JBQ3RELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUZUO2dCQUNELFNBQVMsRUFBRTtvQkFDVCxpQkFBaUI7aUJBQ2xCO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUExRk8saUJBQWlCO1lBVmpCLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFGbEIsaUJBQWlCO1lBR2pCLGFBQWE7WUFDYix1QkFBdUI7Ozt3QkFxRzVCLFdBQVcsU0FBQyxrREFBa0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmcsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQmFzZUNvbXBvbmVudH0gZnJvbSBcIi4uL2NvcmUvYmFzZS90cmFuc2FjdGlvbi1iYXNlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uVHlwZUNhdGVnb3J5fSBmcm9tIFwiLi4vLi4vZW51bS90cmFuc2FjdGlvbi10eXBlLWNhdGVnb3J5LmVudW1cIjtcclxuaW1wb3J0IHtQdXJjaGFzZU9yZGVyTGluZVJlY2VpcHREZXRhaWxzfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3B1cmNoYXNlLW9yZGVyLWxpbmUtcmVjZWlwdC1kZXRhaWxzLmJvXCI7XHJcbmltcG9ydCB7UmVjZWl2ZUdvb2RzRm9yUHVyY2hhc2VPcmRlclJlcXVlc3R9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcmVjZWl2ZS1nb29kcy1mb3ItcHVyY2hhc2Utb3JkZXItcmVxdWVzdC5ib1wiO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHtGb3JtTWFzdGVyU2VydmljZX0gZnJvbSBcIkBjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTJcIjtcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtEaWFsb2dTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9kaWFsb2cuc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1ldmVudC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lSW5mb30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1saW5lLWluZm8uYm9cIjtcclxuaW1wb3J0IHtMb2dpc3RpY2FsU3RhdGVEZXRhaWx9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvbG9naXN0aWNhbC1zdGF0ZS1kZXRhaWwuYm9cIjtcclxuaW1wb3J0IHtSZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyQ29ycmVjdGlvblJlcXVlc3R9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcmVjZWl2ZS1nb29kcy1mb3ItcHVyY2hhc2Utb3JkZXItY29ycmVjdGlvbi1yZXF1ZXN0LmJvXCI7XHJcbmltcG9ydCB7UHVyY2hhc2VPcmRlckxpbmVSZWNlaXB0Q29ycmVjdGlvbkRldGFpbHN9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcHVyY2hhc2Utb3JkZXItbGluZS1yZWNlaXB0LWNvcnJlY3Rpb24tZGV0YWlscy5ib1wiO1xyXG5pbXBvcnQge0F2YWlsYWJsZVN0b2NrfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2F2YWlsYWJsZS1zdG9jay5ib1wiO1xyXG5pbXBvcnQge0dvb2RzUmVjZWlwdEhpc3Rvcnl9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvZ29vZHMtcmVjZWlwdC1oaXN0b3J5LmJvXCI7XHJcbmltcG9ydCB7RGljdGlvbmFyeVNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvZGljdGlvbmFyeS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXRyYW5zYWN0aW9uLWxpbmUtcHVyY2hhc2UtcmVjZWl2ZS1nb29kc1wiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8Y28tZm9ybT5cclxuICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci13cmFwcGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbHMtaGVhZGVyXCIgW3RleHRDb250ZW50XT1cInJldHVyblN0b2NrTW9kZSA/ICgnUkVUVVJOX0RFVEFJTFMnIHwgbG9jYWxpemUgfCB1cHBlcmNhc2UpIDogKCdSRUNFSVBUX0RFVEFJTFMnIHwgbG9jYWxpemUgfCB1cHBlcmNhc2UpXCI+PC9kaXY+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWxpbmUtc3RhdHVzYmFyIGNsYXNzPVwic3RhdHVzLWJhci13cmFwcGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RyYW5zYWN0aW9uTGluZV09XCJ0cmFuc2FjdGlvbkxpbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25JbmZvXT1cInRyYW5zYWN0aW9uSW5mb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthY3RpdmVDYXRlZ29yeV09XCJ0cmFuc2FjdGlvblR5cGVDYXRlZ29yeS5QdXJjaGFzZU9yZGVyUmVjZWl2ZWRHb29kc1wiPjwvY28tdHJhbnNhY3Rpb24tbGluZS1zdGF0dXNiYXI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sdW1ucy13cmFwcGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbHMtY29sdW1uXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS10b3RhbHMtYW1vdW50XCI+XHJcbiAgICAgICAgICAgIDxjby1pbnB1dC1udW1iZXItcGlja2VyIGNsYXNzPVwiYW1vdW50LW51bWJlci1waWNrZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF4XT1cInJldHVyblN0b2NrTW9kZSA/IHJldHVybk1heFRvUmVjZWl2ZSA6IHRyYW5zYWN0aW9uTGluZS5hcnRpY2xlTGluZVN0YXR1cy5xdWFudGl0eVRvUmVjZWl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInJlY2VpcHREZXRhaWxzLnNlcmlhbE5yID8gMSA6IHJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21pbl09XCIxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cIiEhcmVjZWlwdERldGFpbHMuc2VyaWFsTnIgfHwgcmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPT09IDAgfHwgIXJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlIHx8IHJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiEhcmVjZWlwdERldGFpbHMuc2VyaWFsTnIgfHwgcmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPT09IDAgfHwgIXJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICA+PC9jby1pbnB1dC1udW1iZXItcGlja2VyPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8Y28taW5wdXQtdGV4dCBjbGFzcz1cImRldGFpbHMtaW5wdXRcIiBbKG1vZGVsKV09XCJyZWNlaXB0RGV0YWlscy53YXJlaG91c2VOclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaGlkZUFycm93QnV0dG9uc109XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJ0cmFuc2FjdGlvbkxpbmUud2FyZWhvdXNlTnVtYmVyICE9PSB1bmRlZmluZWQgfHwgcmVhZG9ubHkgfHwgcmV0dXJuU3RvY2tNb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0cmFuc2FjdGlvbkxpbmUud2FyZWhvdXNlTnVtYmVyICE9PSB1bmRlZmluZWQgfHwgcmV0dXJuU3RvY2tNb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cmFuc2FjdGlvbkxpbmUuaXNXYXJlaG91c2VSZXF1aXJlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1dBUkVIT1VTRScgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJsb2NhdGlvbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDwhLS0gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFyZWNlaXB0RGV0YWlscy5sb2NhdGlvbk5yICYmIHRyYW5zYWN0aW9uTGluZS5pc0xvY2F0aW9uUmVxdWlyZWRcIiBjbGFzcz1cInJlcXVpcmVkXCIgW3RleHRDb250ZW50XT1cIicqJ1wiPjwvc3Bhbj4tLT5cclxuICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWxpbmUtd2FyZWhvdXNlLWxvY2F0aW9uLWJ1dHRvblxyXG4gICAgICAgICAgICAgIFtsb2NhdGlvbk5yXT1cInJlY2VpcHREZXRhaWxzLmxvY2F0aW9uTnJcIlxyXG4gICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZXR1cm5TdG9ja01vZGUgfHwgcmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPT09IDBcIlxyXG4gICAgICAgICAgICAgIChsb2NhdGlvbk5yQ2hhbmdlKT1cInJlY2VpcHREZXRhaWxzLmxvY2F0aW9uTnIgPSAkZXZlbnRcIj48L2NvLXRyYW5zYWN0aW9uLWxpbmUtd2FyZWhvdXNlLWxvY2F0aW9uLWJ1dHRvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgY2xhc3M9XCJkZXRhaWxzLWlucHV0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIXJldHVyblN0b2NrTW9kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJyZXF1ZXN0LnBhY2tpbmdTbGlwTnJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidQQUNLSU5HX1NMSVAnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgID48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRpdmlkZXItd3JhcHBlclwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRpdmlkZXJcIj48L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlscy1jb2x1bW5cIj5cclxuICAgICAgICAgIDxjby1pbnB1dC1kYXRlIGNsYXNzPVwiZGV0YWlscy1pbnB1dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJyZXF1ZXN0LnJlY2VpdmVkRGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAgICAgPjwvY28taW5wdXQtZGF0ZT5cclxuICAgICAgICAgIDxjby1pbnB1dC10ZXh0ICpuZ0lmPVwidHJhbnNhY3Rpb25MaW5lLmlzQmF0Y2hOclJlcXVpcmVkXCIgY2xhc3M9XCJkZXRhaWxzLWlucHV0XCIgWyhtb2RlbCldPVwicmVjZWlwdERldGFpbHMuYmF0Y2hOclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaGlkZUFycm93QnV0dG9uc109XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seSB8fCByZXR1cm5TdG9ja01vZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInJldHVyblN0b2NrTW9kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJhbnNhY3Rpb25MaW5lLmlzQmF0Y2hOclJlcXVpcmVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQkFUQ0hfTlVNQkVSJyB8IGxvY2FsaXplXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgKm5nSWY9XCJ0cmFuc2FjdGlvbkxpbmUuaXNTZXJpYWxOclJlcXVpcmVkXCIgY2xhc3M9XCJkZXRhaWxzLWlucHV0XCIgWyhtb2RlbCldPVwicmVjZWlwdERldGFpbHMuc2VyaWFsTnJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiJ251bWJlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2hpZGVBcnJvd0J1dHRvbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHkgfHwgcmV0dXJuU3RvY2tNb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJyZXR1cm5TdG9ja01vZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRyYW5zYWN0aW9uTGluZS5pc1NlcmlhbE5yUmVxdWlyZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidTRVJJQUxfTlVNQkVSJyB8IGxvY2FsaXplXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvY28tZm9ybT5cclxuICAgIDxkaXYgY2xhc3M9XCJjb21taXQtYnV0dG9uLXdyYXBwZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbW1pdC1idXR0b24gY2xpY2thYmxlXCIgKm5nSWY9XCIhcmVhZG9ubHlcIiAoY2xpY2spPVwiaGFuZGxlU2F2ZURldGFpbHNFZGl0KClcIiBbY2xhc3MuZGlzYWJsZWRdPVwicmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPT09IDBcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImNvbW1pdC10ZXh0XCIgW3RleHRDb250ZW50XT1cInJldHVyblN0b2NrTW9kZSA/ICgnUkVUVVJOX1NUT0NLJyB8IGxvY2FsaXplKSA6ICgnUkVDRUlWRScgfCBsb2NhbGl6ZSlcIj48L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8Y28tdHJhbnNhY3Rpb24tcmVjZWl2aW5nLWdvb2RzLWhpc3RvcnkgKm5nSWY9XCJ0cmFuc2FjdGlvbkxpbmUuYW1vdW50ID49IDBcIlxyXG4gICAgICBbZ29vZHNSZWNlaXB0SGlzdG9yeV09XCJnb29kc1JlY2VpcHRIaXN0b3J5XCJcclxuICAgICAgKGRlbGV0ZVJvdyk9XCJoYW5kbGVEZWxldGVTZWxlY3RlZFJvdygkZXZlbnQpXCJcclxuICAgID48L2NvLXRyYW5zYWN0aW9uLXJlY2VpdmluZy1nb29kcy1oaXN0b3J5PlxyXG4gICAgPGNvLXRyYW5zYWN0aW9uLWF2YWlsYWJsZS1zdG9jay1ncmlkICpuZ0lmPVwidHJhbnNhY3Rpb25MaW5lLmFtb3VudCA8IDBcIlxyXG4gICAgICBbY29sbGVjdGlvbl09XCJhdmFpbGFibGVTdG9ja0NvbGxlY3Rpb25cIlxyXG4gICAgIChzZWxlY3RTdG9jayk9XCJoYW5kbGVTZWxlY3RTdG9jaygkZXZlbnQpXCJcclxuICAgID48L2NvLXRyYW5zYWN0aW9uLWF2YWlsYWJsZS1zdG9jay1ncmlkPlxyXG4gIGAsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBGb3JtTWFzdGVyU2VydmljZVxyXG4gIF0sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25MaW5lUHVyY2hhc2VSZWNlaXZlR29vZHNDb21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2VDb21wb25lbnQge1xyXG4gIHB1YmxpYyByZWFkb25seSB0cmFuc2FjdGlvblR5cGVDYXRlZ29yeTogdHlwZW9mIFRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5ID0gVHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnk7XHJcblxyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLXRyYW5zYWN0aW9uLWxpbmUtcHVyY2hhc2UtcmVjZWl2ZS1nb29kc1wiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZXF1ZXN0OiBSZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyUmVxdWVzdCA9IG5ldyBSZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyUmVxdWVzdCgpO1xyXG4gIHB1YmxpYyByZWNlaXB0RGV0YWlsczogUHVyY2hhc2VPcmRlckxpbmVSZWNlaXB0RGV0YWlscyA9IG5ldyBQdXJjaGFzZU9yZGVyTGluZVJlY2VpcHREZXRhaWxzKCk7XHJcbiAgcHVibGljIGdvb2RzUmVjZWlwdEhpc3Rvcnk6IExvZ2lzdGljYWxTdGF0ZURldGFpbFtdID0gW107XHJcbiAgcHVibGljIHJldHVybk1heFRvUmVjZWl2ZTogbnVtYmVyO1xyXG4gIHB1YmxpYyBzZWxlY3RlZExvY2F0aW9uOiBzdHJpbmc7XHJcbiAgcHVibGljIHJldHVyblN0b2NrTW9kZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBhdmFpbGFibGVTdG9ja0NvbGxlY3Rpb246IEF2YWlsYWJsZVN0b2NrW10gPSBbXTtcclxuXHJcbiAgcHJpdmF0ZSBfc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcm90ZWN0ZWQgZGljdGlvbmFyeVNlcnZpY2U6IERpY3Rpb25hcnlTZXJ2aWNlLFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9mb3JtTWFzdGVyOiBGb3JtTWFzdGVyU2VydmljZSxcclxuICAgIHByaXZhdGUgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKGRpY3Rpb25hcnlTZXJ2aWNlLCB0cmFuc2FjdGlvblNlcnZpY2UpO1xyXG4gICAgdGhpcy5fc3Vicy5wdXNoKFxyXG4gICAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50U2VydmljZS50cmFuc2FjdGlvbkxpbmVDaGFuZ2VkLnN1YnNjcmliZSgodHJhbnNMaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvKSA9PiB7XHJcbiAgICAgICAgaWYgKHRyYW5zTGluZS5saW5lTnIgPT09IHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOcikge1xyXG4gICAgICAgICAgdGhpcy5faGFuZGxlVHJhbnNhY3Rpb25MaW5lU2V0KHRyYW5zTGluZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5fc3Vicy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdWJtaXQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZm9ybU1hc3Rlci5zdWJtaXRTbGF2ZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBsb2NhdGlvblJlcXVpcmVkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb25MaW5lLmlzTG9jYXRpb25SZXF1aXJlZCB8fFxyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uTGluZS5pc0JhdGNoTnJSZXF1aXJlZCB8fFxyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uTGluZS5pc1NlcmlhbE5yUmVxdWlyZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0R29vZHNSZWNlaXB0SGlzdG9yeSgpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEdvb2RzUmVjZWlwdEhpc3RvcnkodGhpcy50cmFuc2FjdGlvbkluZm8uaWQsIHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOcilcclxuICAgICAgLnRoZW4oKHJlc3VsdDogR29vZHNSZWNlaXB0SGlzdG9yeSkgPT4ge1xyXG4gICAgICAgIHRoaXMuZ29vZHNSZWNlaXB0SGlzdG9yeSA9IHJlc3VsdC5nb29kc1JlY2VpcHRIaXN0b3J5O1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTYXZlRGV0YWlsc0VkaXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbkxpbmUuYXJ0aWNsZUxpbmVTdGF0dXMucXVhbnRpdHlUb1JlY2VpdmUgPT09IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgdmFsaWQgPSB0aGlzLnN1Ym1pdCgpO1xyXG4gICAgaWYgKHZhbGlkKSB7XHJcbiAgICAgIGNvbnN0IHJlcXVlc3Q6IFJlY2VpdmVHb29kc0ZvclB1cmNoYXNlT3JkZXJSZXF1ZXN0ID0gdGhpcy5yZXF1ZXN0O1xyXG4gICAgICB0aGlzLnJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlID0gdGhpcy5yZXR1cm5TdG9ja01vZGUgP1xyXG4gICAgICAgIC10aGlzLnJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlIDogdGhpcy5yZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZTtcclxuICAgICAgcmVxdWVzdC50cmFuc0lkID0gdGhpcy50cmFuc2FjdGlvbkluZm8uaWQ7XHJcbiAgICAgIHJlcXVlc3QucHVyY2hhc2VPcmRlckxpbmVSZWNlaXB0RGV0YWlsc0RUT1MgPSBbdGhpcy5yZWNlaXB0RGV0YWlsc107XHJcbiAgICAgIHJlcXVlc3QucHJpbnRlck5hbWUgPSB0aGlzLnRyYW5zYWN0aW9uTGluZS5wcmludGVyTmFtZSA/IHRoaXMudHJhbnNhY3Rpb25MaW5lLnByaW50ZXJOYW1lIDogdGhpcy50cmFuc2FjdGlvbkluZm8ucHJpbnRlck5hbWU7XHJcbiAgICAgIHJlcXVlc3QucmVwb3J0SWQgPSB0aGlzLnRyYW5zYWN0aW9uTGluZS5yZXBvcnRJZCA/IHRoaXMudHJhbnNhY3Rpb25MaW5lLnJlcG9ydElkIDogdGhpcy50cmFuc2FjdGlvbkluZm8ucmVwb3J0SWQ7XHJcbiAgICAgIHJlcXVlc3QuY29waWVzID0gdGhpcy50cmFuc2FjdGlvbkxpbmUuc3RpY2tlckFtb3VudDtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UucmVjZWl2ZUdvb2RzRm9yUHVyY2hhc2VPcmRlcih0aGlzLnRyYW5zYWN0aW9uSW5mby5pZCwgdGhpcy50cmFuc2FjdGlvbkluZm8udmVyc2lvbiwgcmVxdWVzdCkudGhlbigoKSA9PiB7XHJcbiAgICAgICAgaWYgKHRoaXMucmV0dXJuU3RvY2tNb2RlKSB7XHJcbiAgICAgICAgICB0aGlzLl9nZXRBdmFpbGFibGVTdG9jaygpO1xyXG4gICAgICAgICAgdGhpcy5yZWNlaXB0RGV0YWlscy5sb2NhdGlvbk5yID0gdW5kZWZpbmVkO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgaGFuZGxlRGVsZXRlU2VsZWN0ZWRSb3cocm93OiBMb2dpc3RpY2FsU3RhdGVEZXRhaWwpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmIChyb3cgJiYgcm93LnR5cGUgIT09ICdjb3JyZWN0aW9uJykge1xyXG4gICAgICBjb25zdCByZXF1ZXN0OiBSZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyQ29ycmVjdGlvblJlcXVlc3QgPSBuZXcgUmVjZWl2ZUdvb2RzRm9yUHVyY2hhc2VPcmRlckNvcnJlY3Rpb25SZXF1ZXN0KCk7XHJcbiAgICAgIGNvbnN0IGNvcnJlY3Rpb25EZXRhaWxzOiBQdXJjaGFzZU9yZGVyTGluZVJlY2VpcHRDb3JyZWN0aW9uRGV0YWlscyA9IG5ldyBQdXJjaGFzZU9yZGVyTGluZVJlY2VpcHRDb3JyZWN0aW9uRGV0YWlscygpO1xyXG4gICAgICByZXF1ZXN0LmFsbG93ZWRUb1JlbW92ZVBpY2tlZEFsbG9jYXRpb25zID0gZmFsc2U7XHJcbiAgICAgIHJlcXVlc3QudHJhbnNJZCA9IHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkO1xyXG4gICAgICByZXF1ZXN0LnB1cmNoYXNlT3JkZXJMaW5lUmVjZWlwdENvcnJlY3Rpb25EZXRhaWxzRFRPUyA9IFtjb3JyZWN0aW9uRGV0YWlsc107XHJcbiAgICAgIGNvcnJlY3Rpb25EZXRhaWxzLmxpbmVOciA9IHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOcjtcclxuICAgICAgY29ycmVjdGlvbkRldGFpbHMucXVhbnRpdHlUb0NvcnJlY3QgPSByb3cucXVhbnRpdHk7XHJcbiAgICAgIGNvcnJlY3Rpb25EZXRhaWxzLmRvY3VtZW50SWQgPSByb3cuZG9jdW1lbnRJZDtcclxuICAgICAgY29ycmVjdGlvbkRldGFpbHMuZG9jdW1lbnRMaW5lTnIgPSByb3cubGluZU51bWJlcjtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UucmVjZWl2ZUdvb2RzRm9yUHVyY2hhc2VPcmRlckNvcnJlY3Rpb24odGhpcy50cmFuc2FjdGlvbkluZm8uaWQsIHRoaXMudHJhbnNhY3Rpb25JbmZvLnZlcnNpb24sIHJlcXVlc3QpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuZ2V0R29vZHNSZWNlaXB0SGlzdG9yeSgpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTZWxlY3RTdG9jayhhdmFpbGFibGVTdG9jazogQXZhaWxhYmxlU3RvY2spOiB2b2lkIHtcclxuICAgIGNvbnN0IG1heFRvUmV0dXJuID0gdGhpcy50cmFuc2FjdGlvbkxpbmUuYXJ0aWNsZUxpbmVTdGF0dXMucXVhbnRpdHlUb1JlY2VpdmUgPCAwID8gTWF0aC5hYnModGhpcy50cmFuc2FjdGlvbkxpbmUuYXJ0aWNsZUxpbmVTdGF0dXMucXVhbnRpdHlUb1JlY2VpdmUpIDogdGhpcy50cmFuc2FjdGlvbkxpbmUuYXJ0aWNsZUxpbmVTdGF0dXMucXVhbnRpdHlUb1JlY2VpdmU7XHJcbiAgICB0aGlzLnJldHVybk1heFRvUmVjZWl2ZSA9IG1heFRvUmV0dXJuID4gYXZhaWxhYmxlU3RvY2suYXZhaWxhYmxlUXVhbnRpdHkgPyBhdmFpbGFibGVTdG9jay5hdmFpbGFibGVRdWFudGl0eSA6IG1heFRvUmV0dXJuO1xyXG4gICAgdGhpcy5yZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZSA9IHRoaXMucmV0dXJuTWF4VG9SZWNlaXZlO1xyXG4gICAgdGhpcy5yZWNlaXB0RGV0YWlscy53YXJlaG91c2VOciA9IGF2YWlsYWJsZVN0b2NrLndhcmVob3VzZU51bWJlcjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMubG9jYXRpb25OciA9IGF2YWlsYWJsZVN0b2NrLmxvY2F0aW9uTnVtYmVyO1xyXG4gICAgdGhpcy5zZWxlY3RlZExvY2F0aW9uID0gdGhpcy5yZWNlaXB0RGV0YWlscy5sb2NhdGlvbk5yO1xyXG4gICAgdGhpcy5yZWNlaXB0RGV0YWlscy5zZXJpYWxOciA9IGF2YWlsYWJsZVN0b2NrLnNlcmlhbE51bWJlcjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMuYmF0Y2hOciA9IGF2YWlsYWJsZVN0b2NrLmJhdGNoTnVtYmVyO1xyXG4gICAgdGhpcy5yZWNlaXB0RGV0YWlscy5saW5lTnIgPSB0aGlzLnRyYW5zYWN0aW9uTGluZS5saW5lTnI7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25MaW5lU2V0KCkge1xyXG4gICAgdGhpcy5faGFuZGxlVHJhbnNhY3Rpb25MaW5lU2V0KHRoaXMudHJhbnNhY3Rpb25MaW5lKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2hhbmRsZVRyYW5zYWN0aW9uTGluZVNldCh0cmFuc0xpbmU6IFRyYW5zYWN0aW9uTGluZUluZm8pOiB2b2lkIHtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMud2FyZWhvdXNlTnIgPSB0aGlzLnRyYW5zYWN0aW9uTGluZS53YXJlaG91c2VOdW1iZXI7XHJcbiAgICB0aGlzLnJlY2VpcHREZXRhaWxzLmxpbmVOciA9IHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOcjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPSB0aGlzLnRyYW5zYWN0aW9uTGluZS5hcnRpY2xlTGluZVN0YXR1cy5xdWFudGl0eVRvUmVjZWl2ZTtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMubG9jYXRpb25OciA9IHRoaXMudHJhbnNhY3Rpb25MaW5lLmxvY2F0aW9uTnI7XHJcbiAgICB0aGlzLnJldHVyblN0b2NrTW9kZSA9PT0gdGhpcy50cmFuc2FjdGlvbkxpbmUuYW1vdW50IDwgMDtcclxuICAgIHRoaXMuZ2V0R29vZHNSZWNlaXB0SGlzdG9yeSgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBfZ2V0QXZhaWxhYmxlU3RvY2soKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLmF2YWlsYWJsZVN0b2NrQ29sbGVjdGlvbiA9IGF3YWl0IHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEF2YWlsYWJsZVN0b2NrR3JvdXBlZEJ5V0xCU0J5VHJhbnNJZExpbmVOcih0aGlzLnRyYW5zYWN0aW9uSW5mby5pZCwgdGhpcy50cmFuc2FjdGlvbkxpbmUubGluZU5yKTtcclxuICB9XHJcbn1cclxuIl19
|
|
236
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1wdXJjaGFzZS1yZWNlaXZlLWdvb2RzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWxpbmUtcHVyY2hhc2UtcmVjZWl2ZS1nb29kcy90cmFuc2FjdGlvbi1saW5lLXB1cmNoYXNlLXJlY2VpdmUtZ29vZHMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBVSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuRyxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNqRixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUNsRixPQUFPLEVBQUMsK0JBQStCLEVBQUMsTUFBTSw2RUFBNkUsQ0FBQztBQUM1SCxPQUFPLEVBQUMsbUNBQW1DLEVBQUMsTUFBTSxrRkFBa0YsQ0FBQztBQUVySSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUVyRSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUdoRixPQUFPLEVBQ0wsNkNBQTZDLEVBQzlDLE1BQU0sNkZBQTZGLENBQUM7QUFDckcsT0FBTyxFQUNMLHlDQUF5QyxFQUMxQyxNQUFNLHdGQUF3RixDQUFDO0FBR2hHLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBNkZoRixNQUFNLE9BQU8sNENBQTZDLFNBQVEsd0JBQXdCO0lBa0J4RixZQUNTLHVCQUFnRCxFQUNoRCxPQUEyQixFQUMzQixnQkFBa0MsRUFDL0IsaUJBQW9DLEVBQ3BDLFlBQXFDLEVBQ3JDLGNBQWlDLEVBQ25DLFdBQThCO1FBRXRDLEtBQUssQ0FBQyx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBUnBHLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7UUFDaEQsWUFBTyxHQUFQLE9BQU8sQ0FBb0I7UUFDM0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUMvQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLGlCQUFZLEdBQVosWUFBWSxDQUF5QjtRQUNyQyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDbkMsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO1FBeEJ4Qiw0QkFBdUIsR0FBbUMsdUJBQXVCLENBQUM7UUFPM0YsWUFBTyxHQUF3QyxJQUFJLG1DQUFtQyxFQUFFLENBQUM7UUFDekYsbUJBQWMsR0FBb0MsSUFBSSwrQkFBK0IsRUFBRSxDQUFDO1FBQ3hGLHdCQUFtQixHQUE0QixFQUFFLENBQUM7UUFHbEQsb0JBQWUsR0FBWSxLQUFLLENBQUM7UUFDakMsNkJBQXdCLEdBQXFCLEVBQUUsQ0FBQztRQUUvQyxVQUFLLEdBQW1CLEVBQUUsQ0FBQztJQVluQyxDQUFDO0lBeEJNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUF3QkQsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNiLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUE4QixFQUFFLEVBQUU7WUFDL0YsSUFBSSxTQUFTLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFO2dCQUNwRCxJQUFJLENBQUMseUJBQXlCLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDM0M7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU0sTUFBTTtRQUNYLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxrQkFBa0I7WUFDNUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxpQkFBaUI7WUFDdEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxrQkFBa0IsQ0FBQztJQUM1QyxDQUFDO0lBRVksc0JBQXNCOztZQUNqQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUM7aUJBQ2pHLElBQUksQ0FBQyxDQUFDLE1BQTJCLEVBQUUsRUFBRTtnQkFDcEMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQztZQUN4RCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUM7S0FBQTtJQUVNLHFCQUFxQjtRQUMxQixJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLEtBQUssQ0FBQyxFQUFFO1lBQ2xFLE9BQU87U0FDUjtRQUNELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM1QixJQUFJLEtBQUssRUFBRTtZQUNULE1BQU0sT0FBTyxHQUF3QyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQ2xFLElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUM1RCxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUM7WUFDakYsT0FBTyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQztZQUMxQyxPQUFPLENBQUMsbUNBQW1DLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDcEUsT0FBTyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDO1lBQzdILE9BQU8sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQztZQUNqSCxPQUFPLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDO1lBQ3BELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUM3SCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUU7b0JBQ3hCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO29CQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUM7aUJBQzVDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFWSx1QkFBdUIsQ0FBQyxHQUEwQjs7WUFDN0QsSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksS0FBSyxZQUFZLEVBQUU7Z0JBQ3BDLE1BQU0sT0FBTyxHQUFrRCxJQUFJLDZDQUE2QyxFQUFFLENBQUM7Z0JBQ25ILE1BQU0saUJBQWlCLEdBQThDLElBQUkseUNBQXlDLEVBQUUsQ0FBQztnQkFDckgsT0FBTyxDQUFDLGdDQUFnQyxHQUFHLEtBQUssQ0FBQztnQkFDakQsT0FBTyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQztnQkFDMUMsT0FBTyxDQUFDLDZDQUE2QyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztnQkFDNUUsaUJBQWlCLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDO2dCQUN2RCxpQkFBaUIsQ0FBQyxpQkFBaUIsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDO2dCQUNuRCxpQkFBaUIsQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLFVBQVUsQ0FBQztnQkFDOUMsaUJBQWlCLENBQUMsY0FBYyxHQUFHLEdBQUcsQ0FBQyxVQUFVLENBQUM7Z0JBQ2xELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxzQ0FBc0MsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO29CQUN2SSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztnQkFDaEMsQ0FBQyxDQUFDLENBQUM7YUFDSjtRQUNILENBQUM7S0FBQTtJQUVNLGlCQUFpQixDQUFDLGNBQThCO1FBQ3JELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQztRQUNqTixJQUFJLENBQUMsa0JBQWtCLEdBQUcsV0FBVyxHQUFHLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDMUgsSUFBSSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUM7UUFDaEUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEdBQUcsY0FBYyxDQUFDLGVBQWUsQ0FBQztRQUNqRSxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsR0FBRyxjQUFjLENBQUMsY0FBYyxDQUFDO1FBQy9ELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQztRQUN2RCxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsR0FBRyxjQUFjLENBQUMsWUFBWSxDQUFDO1FBQzNELElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxHQUFHLGNBQWMsQ0FBQyxXQUFXLENBQUM7UUFDekQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUM7SUFDM0QsQ0FBQztJQUVTLGtCQUFrQjtRQUMxQixJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFTyx5QkFBeUIsQ0FBQyxTQUE4QjtRQUM5RCxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGVBQWUsQ0FBQztRQUN2RSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQztRQUN6RCxJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLENBQUM7UUFDakcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUM7UUFDakUsSUFBSSxDQUFDLGVBQWUsS0FBSyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVhLGtCQUFrQjs7WUFDOUIsSUFBSSxDQUFDLHdCQUF3QixHQUFHLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLDZDQUE2QyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDcEssQ0FBQztLQUFBOzs7WUE1TkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw0Q0FBNEM7Z0JBQ3RELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtRlQ7Z0JBQ0QsU0FBUyxFQUFFO29CQUNULGlCQUFpQjtpQkFDbEI7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQXhHTyx1QkFBdUI7WUFGdkIsa0JBQWtCO1lBRGxCLGdCQUFnQjtZQWNoQixpQkFBaUI7WUFDakIsdUJBQXVCO1lBdEJ2QixpQkFBaUI7WUFNakIsaUJBQWlCOzs7d0JBZ0h0QixXQUFXLFNBQUMsa0RBQWtEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBIb3N0QmluZGluZywgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50fSBmcm9tICcuLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uVHlwZUNhdGVnb3J5fSBmcm9tICcuLi8uLi9lbnVtL3RyYW5zYWN0aW9uLXR5cGUtY2F0ZWdvcnkuZW51bSc7XHJcbmltcG9ydCB7UHVyY2hhc2VPcmRlckxpbmVSZWNlaXB0RGV0YWlsc30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3B1cmNoYXNlLW9yZGVyLWxpbmUtcmVjZWlwdC1kZXRhaWxzLmJvJztcclxuaW1wb3J0IHtSZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3JlY2VpdmUtZ29vZHMtZm9yLXB1cmNoYXNlLW9yZGVyLXJlcXVlc3QuYm8nO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7Rm9ybU1hc3RlclNlcnZpY2V9IGZyb20gJ0Bjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTInO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZSc7XHJcbmltcG9ydCB7RGlhbG9nU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9kaWFsb2cuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lSW5mb30gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWxpbmUtaW5mby5ibyc7XHJcbmltcG9ydCB7TG9naXN0aWNhbFN0YXRlRGV0YWlsfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvbG9naXN0aWNhbC1zdGF0ZS1kZXRhaWwuYm8nO1xyXG5pbXBvcnQge1xyXG4gIFJlY2VpdmVHb29kc0ZvclB1cmNoYXNlT3JkZXJDb3JyZWN0aW9uUmVxdWVzdFxyXG59IGZyb20gJ0Bjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9yZWNlaXZlLWdvb2RzLWZvci1wdXJjaGFzZS1vcmRlci1jb3JyZWN0aW9uLXJlcXVlc3QuYm8nO1xyXG5pbXBvcnQge1xyXG4gIFB1cmNoYXNlT3JkZXJMaW5lUmVjZWlwdENvcnJlY3Rpb25EZXRhaWxzXHJcbn0gZnJvbSAnQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3B1cmNoYXNlLW9yZGVyLWxpbmUtcmVjZWlwdC1jb3JyZWN0aW9uLWRldGFpbHMuYm8nO1xyXG5pbXBvcnQge0F2YWlsYWJsZVN0b2NrfSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvYXZhaWxhYmxlLXN0b2NrLmJvJztcclxuaW1wb3J0IHtHb29kc1JlY2VpcHRIaXN0b3J5fSBmcm9tICdAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvZ29vZHMtcmVjZWlwdC1oaXN0b3J5LmJvJztcclxuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9kaWN0aW9uYXJ5LnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSW1hZ2VTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWltYWdlLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjby10cmFuc2FjdGlvbi1saW5lLXB1cmNoYXNlLXJlY2VpdmUtZ29vZHMnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8Y28tZm9ybT5cclxuICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci13cmFwcGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbHMtaGVhZGVyXCJcclxuICAgICAgICAgICAgIFt0ZXh0Q29udGVudF09XCJyZXR1cm5TdG9ja01vZGUgPyAoJ1JFVFVSTl9ERVRBSUxTJyB8IGxvY2FsaXplIHwgdXBwZXJjYXNlKSA6ICgnUkVDRUlQVF9ERVRBSUxTJyB8IGxvY2FsaXplIHwgdXBwZXJjYXNlKVwiPjwvZGl2PlxyXG4gICAgICAgIDxjby10cmFuc2FjdGlvbi1saW5lLXN0YXR1c2JhciBjbGFzcz1cInN0YXR1cy1iYXItd3JhcHBlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2FjdGlvbkxpbmVdPVwidHJhbnNhY3Rpb25MaW5lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RyYW5zYWN0aW9uSW5mb109XCJ0cmFuc2FjdGlvbkluZm9cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWN0aXZlQ2F0ZWdvcnldPVwidHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnkuUHVyY2hhc2VPcmRlclJlY2VpdmVkR29vZHNcIj48L2NvLXRyYW5zYWN0aW9uLWxpbmUtc3RhdHVzYmFyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbnMtd3JhcHBlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWxzLWNvbHVtblwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRyYW5zYWN0aW9uLWxpbmUtdG90YWxzLWFtb3VudFwiPlxyXG4gICAgICAgICAgICA8Y28taW5wdXQtbnVtYmVyLXBpY2tlciBjbGFzcz1cImFtb3VudC1udW1iZXItcGlja2VyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21heF09XCJyZXR1cm5TdG9ja01vZGUgPyByZXR1cm5NYXhUb1JlY2VpdmUgOiB0cmFuc2FjdGlvbkxpbmUuYXJ0aWNsZUxpbmVTdGF0dXMucXVhbnRpdHlUb1JlY2VpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJyZWNlaXB0RGV0YWlscy5zZXJpYWxOciA/IDEgOiByZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttaW5dPVwiMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCIhIXJlY2VpcHREZXRhaWxzLnNlcmlhbE5yIHx8IHJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlID09PSAwIHx8ICFyZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZSB8fCByZWFkb25seVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhIXJlY2VpcHREZXRhaWxzLnNlcmlhbE5yIHx8IHJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlID09PSAwIHx8ICFyZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgPjwvY28taW5wdXQtbnVtYmVyLXBpY2tlcj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgY2xhc3M9XCJkZXRhaWxzLWlucHV0XCIgWyhtb2RlbCldPVwicmVjZWlwdERldGFpbHMud2FyZWhvdXNlTnJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiJ251bWJlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2hpZGVBcnJvd0J1dHRvbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwidHJhbnNhY3Rpb25MaW5lLndhcmVob3VzZU51bWJlciAhPT0gdW5kZWZpbmVkIHx8IHJlYWRvbmx5IHx8IHJldHVyblN0b2NrTW9kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwidHJhbnNhY3Rpb25MaW5lLndhcmVob3VzZU51bWJlciAhPT0gdW5kZWZpbmVkIHx8IHJldHVyblN0b2NrTW9kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJhbnNhY3Rpb25MaW5lLmlzV2FyZWhvdXNlUmVxdWlyZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidXQVJFSE9VU0UnIHwgbG9jYWxpemVcIj48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibG9jYXRpb24td3JhcHBlclwiPlxyXG4gICAgICAgICAgICA8IS0tICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIhcmVjZWlwdERldGFpbHMubG9jYXRpb25OciAmJiB0cmFuc2FjdGlvbkxpbmUuaXNMb2NhdGlvblJlcXVpcmVkXCIgY2xhc3M9XCJyZXF1aXJlZFwiIFt0ZXh0Q29udGVudF09XCInKidcIj48L3NwYW4+LS0+XHJcbiAgICAgICAgICAgIDxjby10cmFuc2FjdGlvbi1saW5lLXdhcmVob3VzZS1sb2NhdGlvbi1idXR0b25cclxuICAgICAgICAgICAgICBbbG9jYXRpb25Ocl09XCJyZWNlaXB0RGV0YWlscy5sb2NhdGlvbk5yXCJcclxuICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmV0dXJuU3RvY2tNb2RlIHx8IHJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlID09PSAwXCJcclxuICAgICAgICAgICAgICAobG9jYXRpb25OckNoYW5nZSk9XCJyZWNlaXB0RGV0YWlscy5sb2NhdGlvbk5yID0gJGV2ZW50XCI+PC9jby10cmFuc2FjdGlvbi1saW5lLXdhcmVob3VzZS1sb2NhdGlvbi1idXR0b24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxjby1pbnB1dC10ZXh0IGNsYXNzPVwiZGV0YWlscy1pbnB1dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFyZXR1cm5TdG9ja01vZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwicmVxdWVzdC5wYWNraW5nU2xpcE5yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInUEFDS0lOR19TTElQJyB8IGxvY2FsaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXHJcbiAgICAgICAgICA+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkaXZpZGVyLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkaXZpZGVyXCI+PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbHMtY29sdW1uXCI+XHJcbiAgICAgICAgICA8Y28taW5wdXQtZGF0ZSBjbGFzcz1cImRldGFpbHMtaW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwicmVxdWVzdC5yZWNlaXZlZERhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgID48L2NvLWlucHV0LWRhdGU+XHJcbiAgICAgICAgICA8Y28taW5wdXQtdGV4dCAqbmdJZj1cInRyYW5zYWN0aW9uTGluZS5pc0JhdGNoTnJSZXF1aXJlZFwiIGNsYXNzPVwiZGV0YWlscy1pbnB1dFwiIFsobW9kZWwpXT1cInJlY2VpcHREZXRhaWxzLmJhdGNoTnJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiJ251bWJlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2hpZGVBcnJvd0J1dHRvbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHkgfHwgcmV0dXJuU3RvY2tNb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJyZXR1cm5TdG9ja01vZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRyYW5zYWN0aW9uTGluZS5pc0JhdGNoTnJSZXF1aXJlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0JBVENIX05VTUJFUicgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgIDxjby1pbnB1dC10ZXh0ICpuZ0lmPVwidHJhbnNhY3Rpb25MaW5lLmlzU2VyaWFsTnJSZXF1aXJlZFwiIGNsYXNzPVwiZGV0YWlscy1pbnB1dFwiIFsobW9kZWwpXT1cInJlY2VpcHREZXRhaWxzLnNlcmlhbE5yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cIidudW1iZXInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtoaWRlQXJyb3dCdXR0b25zXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5IHx8IHJldHVyblN0b2NrTW9kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwicmV0dXJuU3RvY2tNb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cmFuc2FjdGlvbkxpbmUuaXNTZXJpYWxOclJlcXVpcmVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInU0VSSUFMX05VTUJFUicgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2NvLWZvcm0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29tbWl0LWJ1dHRvbi13cmFwcGVyXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb21taXQtYnV0dG9uIGNsaWNrYWJsZVwiICpuZ0lmPVwiIXJlYWRvbmx5XCIgKGNsaWNrKT1cImhhbmRsZVNhdmVEZXRhaWxzRWRpdCgpXCJcclxuICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwicmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPT09IDBcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImNvbW1pdC10ZXh0XCIgW3RleHRDb250ZW50XT1cInJldHVyblN0b2NrTW9kZSA/ICgnUkVUVVJOX1NUT0NLJyB8IGxvY2FsaXplKSA6ICgnUkVDRUlWRScgfCBsb2NhbGl6ZSlcIj48L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8Y28tdHJhbnNhY3Rpb24tcmVjZWl2aW5nLWdvb2RzLWhpc3RvcnkgKm5nSWY9XCJ0cmFuc2FjdGlvbkxpbmUuYW1vdW50ID49IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtnb29kc1JlY2VpcHRIaXN0b3J5XT1cImdvb2RzUmVjZWlwdEhpc3RvcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkZWxldGVSb3cpPVwiaGFuZGxlRGVsZXRlU2VsZWN0ZWRSb3coJGV2ZW50KVwiXHJcbiAgICA+PC9jby10cmFuc2FjdGlvbi1yZWNlaXZpbmctZ29vZHMtaGlzdG9yeT5cclxuICAgIDxjby10cmFuc2FjdGlvbi1hdmFpbGFibGUtc3RvY2stZ3JpZCAqbmdJZj1cInRyYW5zYWN0aW9uTGluZS5hbW91bnQgPCAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sbGVjdGlvbl09XCJhdmFpbGFibGVTdG9ja0NvbGxlY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZWxlY3RTdG9jayk9XCJoYW5kbGVTZWxlY3RTdG9jaygkZXZlbnQpXCJcclxuICAgID48L2NvLXRyYW5zYWN0aW9uLWF2YWlsYWJsZS1zdG9jay1ncmlkPlxyXG4gIGAsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBGb3JtTWFzdGVyU2VydmljZVxyXG4gIF0sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25MaW5lUHVyY2hhc2VSZWNlaXZlR29vZHNDb21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHB1YmxpYyByZWFkb25seSB0cmFuc2FjdGlvblR5cGVDYXRlZ29yeTogdHlwZW9mIFRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5ID0gVHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnk7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuY28tdHJhbnNhY3Rpb24tbGluZS1wdXJjaGFzZS1yZWNlaXZlLWdvb2RzJylcclxuICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVxdWVzdDogUmVjZWl2ZUdvb2RzRm9yUHVyY2hhc2VPcmRlclJlcXVlc3QgPSBuZXcgUmVjZWl2ZUdvb2RzRm9yUHVyY2hhc2VPcmRlclJlcXVlc3QoKTtcclxuICBwdWJsaWMgcmVjZWlwdERldGFpbHM6IFB1cmNoYXNlT3JkZXJMaW5lUmVjZWlwdERldGFpbHMgPSBuZXcgUHVyY2hhc2VPcmRlckxpbmVSZWNlaXB0RGV0YWlscygpO1xyXG4gIHB1YmxpYyBnb29kc1JlY2VpcHRIaXN0b3J5OiBMb2dpc3RpY2FsU3RhdGVEZXRhaWxbXSA9IFtdO1xyXG4gIHB1YmxpYyByZXR1cm5NYXhUb1JlY2VpdmU6IG51bWJlcjtcclxuICBwdWJsaWMgc2VsZWN0ZWRMb2NhdGlvbjogc3RyaW5nO1xyXG4gIHB1YmxpYyByZXR1cm5TdG9ja01vZGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgYXZhaWxhYmxlU3RvY2tDb2xsZWN0aW9uOiBBdmFpbGFibGVTdG9ja1tdID0gW107XHJcblxyXG4gIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcclxuICAgIHB1YmxpYyBzZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBkaWN0aW9uYXJ5U2VydmljZTogRGljdGlvbmFyeVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgaW1hZ2VTZXJ2aWNlOiBUcmFuc2FjdGlvbkltYWdlU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIF9mb3JtTWFzdGVyOiBGb3JtTWFzdGVyU2VydmljZSxcclxuICApIHtcclxuICAgIHN1cGVyKHRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLCBpY29uQ2FjaGVTZXJ2aWNlLCBpbWFnZVNlcnZpY2UsIGRpY3Rpb25hcnlTZXJ2aWNlLCBzZXJ2aWNlLCBjaGFuZ2VEZXRlY3Rvcik7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N1YnMucHVzaChcclxuICAgICAgdGhpcy50cmFuc2FjdGlvbkV2ZW50U2VydmljZS50cmFuc2FjdGlvbkxpbmVDaGFuZ2VkLnN1YnNjcmliZSgodHJhbnNMaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvKSA9PiB7XHJcbiAgICAgICAgaWYgKHRyYW5zTGluZS5saW5lTnIgPT09IHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOcikge1xyXG4gICAgICAgICAgdGhpcy5faGFuZGxlVHJhbnNhY3Rpb25MaW5lU2V0KHRyYW5zTGluZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcclxuICAgIHRoaXMuX3N1YnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3VibWl0KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Zvcm1NYXN0ZXIuc3VibWl0U2xhdmVzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9jYXRpb25SZXF1aXJlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uTGluZS5pc0xvY2F0aW9uUmVxdWlyZWQgfHxcclxuICAgICAgdGhpcy50cmFuc2FjdGlvbkxpbmUuaXNCYXRjaE5yUmVxdWlyZWQgfHxcclxuICAgICAgdGhpcy50cmFuc2FjdGlvbkxpbmUuaXNTZXJpYWxOclJlcXVpcmVkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldEdvb2RzUmVjZWlwdEhpc3RvcnkoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRHb29kc1JlY2VpcHRIaXN0b3J5KHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkLCB0aGlzLnRyYW5zYWN0aW9uTGluZS5saW5lTnIpXHJcbiAgICAgIC50aGVuKChyZXN1bHQ6IEdvb2RzUmVjZWlwdEhpc3RvcnkpID0+IHtcclxuICAgICAgICB0aGlzLmdvb2RzUmVjZWlwdEhpc3RvcnkgPSByZXN1bHQuZ29vZHNSZWNlaXB0SGlzdG9yeTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2F2ZURldGFpbHNFZGl0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb25MaW5lLmFydGljbGVMaW5lU3RhdHVzLnF1YW50aXR5VG9SZWNlaXZlID09PSAwKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IHZhbGlkID0gdGhpcy5zdWJtaXQoKTtcclxuICAgIGlmICh2YWxpZCkge1xyXG4gICAgICBjb25zdCByZXF1ZXN0OiBSZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyUmVxdWVzdCA9IHRoaXMucmVxdWVzdDtcclxuICAgICAgdGhpcy5yZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZSA9IHRoaXMucmV0dXJuU3RvY2tNb2RlID9cclxuICAgICAgICAtdGhpcy5yZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZSA6IHRoaXMucmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmU7XHJcbiAgICAgIHJlcXVlc3QudHJhbnNJZCA9IHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkO1xyXG4gICAgICByZXF1ZXN0LnB1cmNoYXNlT3JkZXJMaW5lUmVjZWlwdERldGFpbHNEVE9TID0gW3RoaXMucmVjZWlwdERldGFpbHNdO1xyXG4gICAgICByZXF1ZXN0LnByaW50ZXJOYW1lID0gdGhpcy50cmFuc2FjdGlvbkxpbmUucHJpbnRlck5hbWUgPyB0aGlzLnRyYW5zYWN0aW9uTGluZS5wcmludGVyTmFtZSA6IHRoaXMudHJhbnNhY3Rpb25JbmZvLnByaW50ZXJOYW1lO1xyXG4gICAgICByZXF1ZXN0LnJlcG9ydElkID0gdGhpcy50cmFuc2FjdGlvbkxpbmUucmVwb3J0SWQgPyB0aGlzLnRyYW5zYWN0aW9uTGluZS5yZXBvcnRJZCA6IHRoaXMudHJhbnNhY3Rpb25JbmZvLnJlcG9ydElkO1xyXG4gICAgICByZXF1ZXN0LmNvcGllcyA9IHRoaXMudHJhbnNhY3Rpb25MaW5lLnN0aWNrZXJBbW91bnQ7XHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLnJlY2VpdmVHb29kc0ZvclB1cmNoYXNlT3JkZXIodGhpcy50cmFuc2FjdGlvbkluZm8uaWQsIHRoaXMudHJhbnNhY3Rpb25JbmZvLnZlcnNpb24sIHJlcXVlc3QpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLnJldHVyblN0b2NrTW9kZSkge1xyXG4gICAgICAgICAgdGhpcy5fZ2V0QXZhaWxhYmxlU3RvY2soKTtcclxuICAgICAgICAgIHRoaXMucmVjZWlwdERldGFpbHMubG9jYXRpb25OciA9IHVuZGVmaW5lZDtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGhhbmRsZURlbGV0ZVNlbGVjdGVkUm93KHJvdzogTG9naXN0aWNhbFN0YXRlRGV0YWlsKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAocm93ICYmIHJvdy50eXBlICE9PSAnY29ycmVjdGlvbicpIHtcclxuICAgICAgY29uc3QgcmVxdWVzdDogUmVjZWl2ZUdvb2RzRm9yUHVyY2hhc2VPcmRlckNvcnJlY3Rpb25SZXF1ZXN0ID0gbmV3IFJlY2VpdmVHb29kc0ZvclB1cmNoYXNlT3JkZXJDb3JyZWN0aW9uUmVxdWVzdCgpO1xyXG4gICAgICBjb25zdCBjb3JyZWN0aW9uRGV0YWlsczogUHVyY2hhc2VPcmRlckxpbmVSZWNlaXB0Q29ycmVjdGlvbkRldGFpbHMgPSBuZXcgUHVyY2hhc2VPcmRlckxpbmVSZWNlaXB0Q29ycmVjdGlvbkRldGFpbHMoKTtcclxuICAgICAgcmVxdWVzdC5hbGxvd2VkVG9SZW1vdmVQaWNrZWRBbGxvY2F0aW9ucyA9IGZhbHNlO1xyXG4gICAgICByZXF1ZXN0LnRyYW5zSWQgPSB0aGlzLnRyYW5zYWN0aW9uSW5mby5pZDtcclxuICAgICAgcmVxdWVzdC5wdXJjaGFzZU9yZGVyTGluZVJlY2VpcHRDb3JyZWN0aW9uRGV0YWlsc0RUT1MgPSBbY29ycmVjdGlvbkRldGFpbHNdO1xyXG4gICAgICBjb3JyZWN0aW9uRGV0YWlscy5saW5lTnIgPSB0aGlzLnRyYW5zYWN0aW9uTGluZS5saW5lTnI7XHJcbiAgICAgIGNvcnJlY3Rpb25EZXRhaWxzLnF1YW50aXR5VG9Db3JyZWN0ID0gcm93LnF1YW50aXR5O1xyXG4gICAgICBjb3JyZWN0aW9uRGV0YWlscy5kb2N1bWVudElkID0gcm93LmRvY3VtZW50SWQ7XHJcbiAgICAgIGNvcnJlY3Rpb25EZXRhaWxzLmRvY3VtZW50TGluZU5yID0gcm93LmxpbmVOdW1iZXI7XHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLnJlY2VpdmVHb29kc0ZvclB1cmNoYXNlT3JkZXJDb3JyZWN0aW9uKHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkLCB0aGlzLnRyYW5zYWN0aW9uSW5mby52ZXJzaW9uLCByZXF1ZXN0KS50aGVuKCgpID0+IHtcclxuICAgICAgICB0aGlzLmdldEdvb2RzUmVjZWlwdEhpc3RvcnkoKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2VsZWN0U3RvY2soYXZhaWxhYmxlU3RvY2s6IEF2YWlsYWJsZVN0b2NrKTogdm9pZCB7XHJcbiAgICBjb25zdCBtYXhUb1JldHVybiA9IHRoaXMudHJhbnNhY3Rpb25MaW5lLmFydGljbGVMaW5lU3RhdHVzLnF1YW50aXR5VG9SZWNlaXZlIDwgMCA/IE1hdGguYWJzKHRoaXMudHJhbnNhY3Rpb25MaW5lLmFydGljbGVMaW5lU3RhdHVzLnF1YW50aXR5VG9SZWNlaXZlKSA6IHRoaXMudHJhbnNhY3Rpb25MaW5lLmFydGljbGVMaW5lU3RhdHVzLnF1YW50aXR5VG9SZWNlaXZlO1xyXG4gICAgdGhpcy5yZXR1cm5NYXhUb1JlY2VpdmUgPSBtYXhUb1JldHVybiA+IGF2YWlsYWJsZVN0b2NrLmF2YWlsYWJsZVF1YW50aXR5ID8gYXZhaWxhYmxlU3RvY2suYXZhaWxhYmxlUXVhbnRpdHkgOiBtYXhUb1JldHVybjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPSB0aGlzLnJldHVybk1heFRvUmVjZWl2ZTtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMud2FyZWhvdXNlTnIgPSBhdmFpbGFibGVTdG9jay53YXJlaG91c2VOdW1iZXI7XHJcbiAgICB0aGlzLnJlY2VpcHREZXRhaWxzLmxvY2F0aW9uTnIgPSBhdmFpbGFibGVTdG9jay5sb2NhdGlvbk51bWJlcjtcclxuICAgIHRoaXMuc2VsZWN0ZWRMb2NhdGlvbiA9IHRoaXMucmVjZWlwdERldGFpbHMubG9jYXRpb25OcjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMuc2VyaWFsTnIgPSBhdmFpbGFibGVTdG9jay5zZXJpYWxOdW1iZXI7XHJcbiAgICB0aGlzLnJlY2VpcHREZXRhaWxzLmJhdGNoTnIgPSBhdmFpbGFibGVTdG9jay5iYXRjaE51bWJlcjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMubGluZU5yID0gdGhpcy50cmFuc2FjdGlvbkxpbmUubGluZU5yO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIHRyYW5zYWN0aW9uTGluZVNldCgpIHtcclxuICAgIHRoaXMuX2hhbmRsZVRyYW5zYWN0aW9uTGluZVNldCh0aGlzLnRyYW5zYWN0aW9uTGluZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9oYW5kbGVUcmFuc2FjdGlvbkxpbmVTZXQodHJhbnNMaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlY2VpcHREZXRhaWxzLndhcmVob3VzZU5yID0gdGhpcy50cmFuc2FjdGlvbkxpbmUud2FyZWhvdXNlTnVtYmVyO1xyXG4gICAgdGhpcy5yZWNlaXB0RGV0YWlscy5saW5lTnIgPSB0aGlzLnRyYW5zYWN0aW9uTGluZS5saW5lTnI7XHJcbiAgICB0aGlzLnJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlID0gdGhpcy50cmFuc2FjdGlvbkxpbmUuYXJ0aWNsZUxpbmVTdGF0dXMucXVhbnRpdHlUb1JlY2VpdmU7XHJcbiAgICB0aGlzLnJlY2VpcHREZXRhaWxzLmxvY2F0aW9uTnIgPSB0aGlzLnRyYW5zYWN0aW9uTGluZS5sb2NhdGlvbk5yO1xyXG4gICAgdGhpcy5yZXR1cm5TdG9ja01vZGUgPT09IHRoaXMudHJhbnNhY3Rpb25MaW5lLmFtb3VudCA8IDA7XHJcbiAgICB0aGlzLmdldEdvb2RzUmVjZWlwdEhpc3RvcnkoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX2dldEF2YWlsYWJsZVN0b2NrKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5hdmFpbGFibGVTdG9ja0NvbGxlY3Rpb24gPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRBdmFpbGFibGVTdG9ja0dyb3VwZWRCeVdMQlNCeVRyYW5zSWRMaW5lTnIodGhpcy50cmFuc2FjdGlvbkluZm8uaWQsIHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOcik7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __awaiter } from "tslib";
|
|
2
|
-
import { Component, HostBinding, ViewEncapsulation } from
|
|
2
|
+
import { ChangeDetectorRef, Component, HostBinding, ViewEncapsulation } from '@angular/core';
|
|
3
3
|
import { FormMasterService } from "@colijnit/corecomponents_v12";
|
|
4
4
|
import { TransactionBaseComponent } from "../core/base/transaction-base.component";
|
|
5
5
|
import { AllocateGoodsForSalesOrderRequest } from "@colijnit/transactionapi/build/model/allocate-goods-for-sales-order-request";
|
|
@@ -11,29 +11,35 @@ import { AllocateGoodsForSalesOrderCorrectionRequest } from "@colijnit/transacti
|
|
|
11
11
|
import { SalesOrderLineAllocationCorrectionDetails } from "@colijnit/transactionapi/build/model/sales-order-line-allocation-correction-details";
|
|
12
12
|
import { TransactionEventService } from "../../service/transaction-event.service";
|
|
13
13
|
import { DictionaryService } from '../../service/dictionary.service';
|
|
14
|
+
import { TransactionImageService } from '../../service/transaction-image.service';
|
|
14
15
|
export class TransactionLineSalesAllocationComponent extends TransactionBaseComponent {
|
|
15
|
-
constructor(
|
|
16
|
-
super(dictionaryService,
|
|
17
|
-
this.
|
|
16
|
+
constructor(transactionEventService, service, iconCacheService, dialogService, dictionaryService, imageService, changeDetector, _formMaster) {
|
|
17
|
+
super(transactionEventService, iconCacheService, imageService, dictionaryService, service, changeDetector);
|
|
18
|
+
this.transactionEventService = transactionEventService;
|
|
19
|
+
this.service = service;
|
|
18
20
|
this.iconCacheService = iconCacheService;
|
|
19
|
-
this.
|
|
21
|
+
this.dialogService = dialogService;
|
|
22
|
+
this.dictionaryService = dictionaryService;
|
|
23
|
+
this.imageService = imageService;
|
|
24
|
+
this.changeDetector = changeDetector;
|
|
20
25
|
this._formMaster = _formMaster;
|
|
21
|
-
this._dialogService = _dialogService;
|
|
22
|
-
this._transactionEventService = _transactionEventService;
|
|
23
26
|
this.allocationRequest = new AllocateGoodsForSalesOrderRequest();
|
|
24
27
|
this.allocationDetails = new SalesOrderLineAllocationDetails();
|
|
25
28
|
this.goodsAllocationHistory = [];
|
|
26
29
|
this._subs = [];
|
|
27
|
-
|
|
30
|
+
}
|
|
31
|
+
showClass() {
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
ngOnInit() {
|
|
35
|
+
this._subs.push(this.transactionEventService.transactionLineChanged.subscribe((transLine) => {
|
|
28
36
|
if (transLine.lineNr === this.transactionLine.lineNr) {
|
|
29
37
|
this._handleTransactionLineSet(transLine);
|
|
30
38
|
}
|
|
31
39
|
}));
|
|
32
40
|
}
|
|
33
|
-
showClass() {
|
|
34
|
-
return true;
|
|
35
|
-
}
|
|
36
41
|
ngOnDestroy() {
|
|
42
|
+
super.ngOnDestroy();
|
|
37
43
|
this._subs.forEach(s => s.unsubscribe());
|
|
38
44
|
}
|
|
39
45
|
submit() {
|
|
@@ -82,7 +88,7 @@ export class TransactionLineSalesAllocationComponent extends TransactionBaseComp
|
|
|
82
88
|
}
|
|
83
89
|
openWarehouseLocationDialog() {
|
|
84
90
|
if (this.transactionLine.articleLineStatus.quantityToAllocate > 0) {
|
|
85
|
-
this.
|
|
91
|
+
this.dialogService.showWarehouseLocation(this.allocationDetails.warehouseNr, true, true, true, this.transactionLine)
|
|
86
92
|
.then(() => this.allocationDetails.locationNr = this.transactionLine.locationNr);
|
|
87
93
|
}
|
|
88
94
|
}
|
|
@@ -165,14 +171,16 @@ TransactionLineSalesAllocationComponent.decorators = [
|
|
|
165
171
|
},] }
|
|
166
172
|
];
|
|
167
173
|
TransactionLineSalesAllocationComponent.ctorParameters = () => [
|
|
168
|
-
{ type:
|
|
169
|
-
{ type: IconCacheService },
|
|
174
|
+
{ type: TransactionEventService },
|
|
170
175
|
{ type: TransactionService },
|
|
171
|
-
{ type:
|
|
176
|
+
{ type: IconCacheService },
|
|
172
177
|
{ type: DialogService },
|
|
173
|
-
{ type:
|
|
178
|
+
{ type: DictionaryService },
|
|
179
|
+
{ type: TransactionImageService },
|
|
180
|
+
{ type: ChangeDetectorRef },
|
|
181
|
+
{ type: FormMasterService }
|
|
174
182
|
];
|
|
175
183
|
TransactionLineSalesAllocationComponent.propDecorators = {
|
|
176
184
|
showClass: [{ type: HostBinding, args: ["class.co-transaction-line-sales-allocation",] }]
|
|
177
185
|
};
|
|
178
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1zYWxlcy1hbGxvY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWxpbmUtc2FsZXMtYWxsb2NhdGlvbi90cmFuc2FjdGlvbi1saW5lLXNhbGVzLWFsbG9jYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBYSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuRixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNqRixPQUFPLEVBQUMsaUNBQWlDLEVBQUMsTUFBTSw2RUFBNkUsQ0FBQztBQUM5SCxPQUFPLEVBQUMsK0JBQStCLEVBQUMsTUFBTSwwRUFBMEUsQ0FBQztBQUV6SCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUFDLDJDQUEyQyxFQUFDLE1BQU0sd0ZBQXdGLENBQUM7QUFDbkosT0FBTyxFQUFDLHlDQUF5QyxFQUFDLE1BQU0scUZBQXFGLENBQUM7QUFFOUksT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFHaEYsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFvRW5FLE1BQU0sT0FBTyx1Q0FBd0MsU0FBUSx3QkFBd0I7SUFjbkYsWUFDWSxpQkFBb0MsRUFDdkMsZ0JBQWtDLEVBQy9CLGtCQUFzQyxFQUN4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QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQzNGO0lBQ0gsQ0FBQztJQUVTLGtCQUFrQjtRQUMxQixJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFTyx5QkFBeUIsQ0FBQyxTQUE4QjtRQUM5RCxJQUFJLENBQUMsaUJBQWlCLENBQUMsa0JBQWtCLEdBQUcsU0FBUyxDQUFDLGtCQUFrQixDQUFDO1FBQ3pFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFDLGVBQWUsQ0FBQztRQUMvRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUM7UUFDakQsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7SUFDbkMsQ0FBQzs7O1lBcEtGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsc0NBQXNDO2dCQUNoRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwRFQ7Z0JBQ0QsU0FBUyxFQUFFO29CQUNULGlCQUFpQjtpQkFDbEI7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQW5FTyxpQkFBaUI7WUFUakIsZ0JBQWdCO1lBQ2hCLGtCQUFrQjtZQU5sQixpQkFBaUI7WUFPakIsYUFBYTtZQUliLHVCQUF1Qjs7O3dCQThFNUIsV0FBVyxTQUFDLDRDQUE0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBIb3N0QmluZGluZywgT25EZXN0cm95LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtGb3JtTWFzdGVyU2VydmljZX0gZnJvbSBcIkBjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTJcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkJhc2VDb21wb25lbnR9IGZyb20gXCIuLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtBbGxvY2F0ZUdvb2RzRm9yU2FsZXNPcmRlclJlcXVlc3R9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvYWxsb2NhdGUtZ29vZHMtZm9yLXNhbGVzLW9yZGVyLXJlcXVlc3RcIjtcclxuaW1wb3J0IHtTYWxlc09yZGVyTGluZUFsbG9jYXRpb25EZXRhaWxzfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3NhbGVzLW9yZGVyLWxpbmUtYWxsb2NhdGlvbi1kZXRhaWxzXCI7XHJcbmltcG9ydCB7TG9naXN0aWNhbFN0YXRlRGV0YWlsfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2xvZ2lzdGljYWwtc3RhdGUtZGV0YWlsLmJvXCI7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7RGlhbG9nU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvZGlhbG9nLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtBbGxvY2F0ZUdvb2RzRm9yU2FsZXNPcmRlckNvcnJlY3Rpb25SZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2FsbG9jYXRlLWdvb2RzLWZvci1zYWxlcy1vcmRlci1jb3JyZWN0aW9uLXJlcXVlc3RcIjtcclxuaW1wb3J0IHtTYWxlc09yZGVyTGluZUFsbG9jYXRpb25Db3JyZWN0aW9uRGV0YWlsc30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9zYWxlcy1vcmRlci1saW5lLWFsbG9jYXRpb24tY29ycmVjdGlvbi1kZXRhaWxzXCI7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi1ldmVudC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lSW5mb30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1saW5lLWluZm8uYm9cIjtcclxuaW1wb3J0IHtHb29kc0FsbG9jYXRpb25IaXN0b3J5fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2dvb2RzLWFsbG9jYXRpb24taGlzdG9yeS5ib1wiO1xyXG5pbXBvcnQge0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2RpY3Rpb25hcnkuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby10cmFuc2FjdGlvbi1saW5lLXNhbGVzLWFsbG9jYXRpb25cIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGNvLWZvcm0+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWxzLWhlYWRlclwiIFt0ZXh0Q29udGVudF09XCInQUxMT0NBVEVfREVUQUlMUycgfCBsb2NhbGl6ZSB8IHVwcGVyY2FzZVwiPjwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sdW1ucy13cmFwcGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbHMtY29sdW1uXCI+XHJcbiAgICAgICAgICA8Y28taW5wdXQtdGV4dCBjbGFzcz1cImRldGFpbHMtaW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW21heF09XCJhbGxvY2F0aW9uRGV0YWlscy5xdWFudGl0eVRvQWxsb2NhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgWyhtb2RlbCldPVwiYWxsb2NhdGlvbkRldGFpbHMuc2VyaWFsTnIgPyAxIDogYWxsb2NhdGlvbkRldGFpbHMucXVhbnRpdHlUb0FsbG9jYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhIWFsbG9jYXRpb25EZXRhaWxzLnNlcmlhbE5yIHx8IGFsbG9jYXRpb25EZXRhaWxzLnF1YW50aXR5VG9BbGxvY2F0ZSA9PT0gMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwiISFhbGxvY2F0aW9uRGV0YWlscy5zZXJpYWxOciB8fCBhbGxvY2F0aW9uRGV0YWlscy5xdWFudGl0eVRvQWxsb2NhdGUgPT09IDAgfHwgcmVhZG9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiJ251bWJlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW21pbl09XCIxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQU1PVU5UJyB8IGxvY2FsaXplXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgY2xhc3M9XCJkZXRhaWxzLWlucHV0XCIgWyhtb2RlbCldPVwiYWxsb2NhdGlvbkRldGFpbHMud2FyZWhvdXNlTnJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiJ251bWJlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2hpZGVBcnJvd0J1dHRvbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwidHJhbnNhY3Rpb25MaW5lLndhcmVob3VzZU51bWJlciAhPT0gdW5kZWZpbmVkIHx8IHJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0cmFuc2FjdGlvbkxpbmUud2FyZWhvdXNlTnVtYmVyICE9PSB1bmRlZmluZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRyYW5zYWN0aW9uTGluZS5pc1dhcmVob3VzZVJlcXVpcmVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInV0FSRUhPVVNFJyB8IGxvY2FsaXplXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImxvY2F0aW9uLXdyYXBwZXJcIiBbY2xhc3MuY2xpY2thYmxlXT1cInRyYW5zYWN0aW9uTGluZS5hcnRpY2xlTGluZVN0YXR1cy5xdWFudGl0eVRvQWxsb2NhdGUgPiAwXCIgKGNsaWNrKT1cIm9wZW5XYXJlaG91c2VMb2NhdGlvbkRpYWxvZygpXCI+XHJcbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWFsbG9jYXRpb25EZXRhaWxzLmxvY2F0aW9uTnIgJiYgdHJhbnNhY3Rpb25MaW5lLmlzTG9jYXRpb25SZXF1aXJlZFwiIGNsYXNzPVwicmVxdWlyZWRcIiBbdGV4dENvbnRlbnRdPVwiJyonXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICA8Y28taWNvbiAqbmdJZj1cImFsbG9jYXRpb25EZXRhaWxzLmxvY2F0aW9uTnJcIiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLlNoZWx2ZXNMaWdodClcIj48L2NvLWljb24+XHJcbiAgICAgICAgICAgIDxkaXYgW3RleHRDb250ZW50XT1cImFsbG9jYXRpb25EZXRhaWxzLmxvY2F0aW9uTnIgPyBhbGxvY2F0aW9uRGV0YWlscy5sb2NhdGlvbk5yIDogKCdMT0NBVElPTicgfCBsb2NhbGl6ZSlcIj48L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkaXZpZGVyLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkaXZpZGVyXCI+PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbHMtY29sdW1uXCI+XHJcbiAgICAgICAgICA8Y28taW5wdXQtdGV4dCAqbmdJZj1cInRyYW5zYWN0aW9uTGluZS5pc0JhdGNoTnJSZXF1aXJlZFwiIGNsYXNzPVwiZGV0YWlscy1pbnB1dFwiIFsobW9kZWwpXT1cImFsbG9jYXRpb25EZXRhaWxzLmJhdGNoTnJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiJ251bWJlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2hpZGVBcnJvd0J1dHRvbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRyYW5zYWN0aW9uTGluZS5pc0JhdGNoTnJSZXF1aXJlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0JBVENIX05VTUJFUicgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgIDxjby1pbnB1dC10ZXh0ICpuZ0lmPVwidHJhbnNhY3Rpb25MaW5lLmlzU2VyaWFsTnJSZXF1aXJlZFwiIGNsYXNzPVwiZGV0YWlscy1pbnB1dFwiIFsobW9kZWwpXT1cImFsbG9jYXRpb25EZXRhaWxzLnNlcmlhbE5yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cIidudW1iZXInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtoaWRlQXJyb3dCdXR0b25zXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cmFuc2FjdGlvbkxpbmUuaXNTZXJpYWxOclJlcXVpcmVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInU0VSSUFMX05VTUJFUicgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2NvLWZvcm0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29tbWl0LWJ1dHRvbi13cmFwcGVyXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb21taXQtYnV0dG9uXCIgKm5nSWY9XCIhcmVhZG9ubHlcIlxyXG4gICAgICAgICAgIFtjbGFzcy5jbGlja2FibGVdPVwiYWxsb2NhdGlvbkRldGFpbHMucXVhbnRpdHlUb0FsbG9jYXRlID4gMFwiXHJcbiAgICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImFsbG9jYXRpb25EZXRhaWxzLnF1YW50aXR5VG9BbGxvY2F0ZSA9PT0gMFwiXHJcbiAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZVNhdmVEZXRhaWxzRWRpdCgpXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJjb21taXQtdGV4dFwiIFt0ZXh0Q29udGVudF09XCInQUxMT0NBVEUnIHwgbG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8Y28tdHJhbnNhY3Rpb24tYWxsb2NhdGUtZ29vZHMtaGlzdG9yeVxyXG4gICAgICBbZ29vZHNBbGxvY2F0aW9uSGlzdG9yeV09XCJnb29kc0FsbG9jYXRpb25IaXN0b3J5XCJcclxuICAgICAgKGRlbGV0ZVJvdyk9XCJoYW5kbGVEZWxldGVTZWxlY3RlZFJvdygkZXZlbnQpXCJcclxuICAgID48L2NvLXRyYW5zYWN0aW9uLWFsbG9jYXRlLWdvb2RzLWhpc3Rvcnk+XHJcbiAgYCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIEZvcm1NYXN0ZXJTZXJ2aWNlXHJcbiAgXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkxpbmVTYWxlc0FsbG9jYXRpb25Db21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG5cclxuICBwdWJsaWMgYWxsb2NhdGlvblJlcXVlc3Q6IEFsbG9jYXRlR29vZHNGb3JTYWxlc09yZGVyUmVxdWVzdCA9IG5ldyBBbGxvY2F0ZUdvb2RzRm9yU2FsZXNPcmRlclJlcXVlc3QoKTtcclxuICBwdWJsaWMgYWxsb2NhdGlvbkRldGFpbHM6IFNhbGVzT3JkZXJMaW5lQWxsb2NhdGlvbkRldGFpbHMgPSBuZXcgU2FsZXNPcmRlckxpbmVBbGxvY2F0aW9uRGV0YWlscygpO1xyXG5cclxuICBwdWJsaWMgZ29vZHNBbGxvY2F0aW9uSGlzdG9yeTogTG9naXN0aWNhbFN0YXRlRGV0YWlsW10gPSBbXTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdHJhbnNhY3Rpb24tbGluZS1zYWxlcy1hbGxvY2F0aW9uXCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcm90ZWN0ZWQgZGljdGlvbmFyeVNlcnZpY2U6IERpY3Rpb25hcnlTZXJ2aWNlLFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9mb3JtTWFzdGVyOiBGb3JtTWFzdGVyU2VydmljZSxcclxuICAgIHByaXZhdGUgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKGRpY3Rpb25hcnlTZXJ2aWNlLCB0cmFuc2FjdGlvblNlcnZpY2UpO1xyXG4gICAgdGhpcy5fc3Vicy5wdXNoKFxyXG4gICAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50U2VydmljZS50cmFuc2FjdGlvbkxpbmVDaGFuZ2VkLnN1YnNjcmliZSgodHJhbnNMaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvKSA9PiB7XHJcbiAgICAgICAgaWYgKHRyYW5zTGluZS5saW5lTnIgPT09IHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOcikge1xyXG4gICAgICAgICAgdGhpcy5faGFuZGxlVHJhbnNhY3Rpb25MaW5lU2V0KHRyYW5zTGluZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5fc3Vicy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdWJtaXQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZm9ybU1hc3Rlci5zdWJtaXRTbGF2ZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRHb29kc0FsbG9jYXRpb25IaXN0b3J5KCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0R29vZHNBbGxvY2F0aW9uSGlzdG9yeSh0aGlzLnRyYW5zYWN0aW9uSW5mby5pZCwgdGhpcy50cmFuc2FjdGlvbkxpbmUubGluZU5yKVxyXG4gICAgICAudGhlbigocmVzdWx0OiBHb29kc0FsbG9jYXRpb25IaXN0b3J5KSA9PiB7XHJcbiAgICAgICAgdGhpcy5nb29kc0FsbG9jYXRpb25IaXN0b3J5ID0gcmVzdWx0Lmdvb2RzQWxsb2NhdGlvbkhpc3Rvcnk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVNhdmVEZXRhaWxzRWRpdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uTGluZS5hcnRpY2xlTGluZVN0YXR1cy5xdWFudGl0eVRvQWxsb2NhdGUgPT09IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgdmFsaWQgPSB0aGlzLnN1Ym1pdCgpO1xyXG4gICAgaWYgKHZhbGlkKSB7XHJcbiAgICAgIGNvbnN0IHJlcXVlc3Q6IEFsbG9jYXRlR29vZHNGb3JTYWxlc09yZGVyUmVxdWVzdCA9IHRoaXMuYWxsb2NhdGlvblJlcXVlc3Q7XHJcbiAgICAgIHJlcXVlc3QudHJhbnNJZCA9IHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkO1xyXG4gICAgICByZXF1ZXN0LnNhbGVzT3JkZXJMaW5lQWxsb2NhdGlvbkRldGFpbHNEVE9TID0gW3RoaXMuYWxsb2NhdGlvbkRldGFpbHNdO1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5hbGxvY2F0ZUdvb2RzRm9yU2FsZXNPcmRlcih0aGlzLnRyYW5zYWN0aW9uSW5mby5pZCwgdGhpcy50cmFuc2FjdGlvbkluZm8udmVyc2lvbiwgcmVxdWVzdCkudGhlbigoc3VjY2VzcykgPT4ge1xyXG4gICAgICAgIGlmIChzdWNjZXNzKSB7XHJcbiAgICAgICAgICB0aGlzLmFsbG9jYXRpb25EZXRhaWxzLmxvY2F0aW9uTnIgPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgICB0aGlzLmdldEdvb2RzQWxsb2NhdGlvbkhpc3RvcnkoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZURlbGV0ZVNlbGVjdGVkUm93KHJvdzogTG9naXN0aWNhbFN0YXRlRGV0YWlsKTogdm9pZCB7XHJcbiAgICBpZiAocm93ICYmIHJvdy50eXBlICE9PSAnY29ycmVjdGlvbicpIHtcclxuICAgICAgY29uc3QgcmVxdWVzdDogQWxsb2NhdGVHb29kc0ZvclNhbGVzT3JkZXJDb3JyZWN0aW9uUmVxdWVzdCA9IG5ldyBBbGxvY2F0ZUdvb2RzRm9yU2FsZXNPcmRlckNvcnJlY3Rpb25SZXF1ZXN0KCk7XHJcbiAgICAgIGNvbnN0IGNvcnJlY3Rpb25EZXRhaWxzOiBTYWxlc09yZGVyTGluZUFsbG9jYXRpb25Db3JyZWN0aW9uRGV0YWlscyA9IG5ldyBTYWxlc09yZGVyTGluZUFsbG9jYXRpb25Db3JyZWN0aW9uRGV0YWlscygpO1xyXG4gICAgICByZXF1ZXN0LmFsbG93ZWRUb1JlbW92ZVBpY2tlZEFsbG9jYXRpb25zID0gZmFsc2U7XHJcbiAgICAgIHJlcXVlc3QudHJhbnNJZCA9IHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkO1xyXG4gICAgICByZXF1ZXN0LnNhbGVzT3JkZXJMaW5lQWxsb2NhdGlvbkNvcnJlY3Rpb25EZXRhaWxzRFRPUyA9IFtjb3JyZWN0aW9uRGV0YWlsc107XHJcbiAgICAgIGNvcnJlY3Rpb25EZXRhaWxzLmxpbmVOciA9IHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOcjtcclxuICAgICAgY29ycmVjdGlvbkRldGFpbHMucXVhbnRpdHlUb0NvcnJlY3QgPSByb3cucXVhbnRpdHk7XHJcbiAgICAgIGNvcnJlY3Rpb25EZXRhaWxzLmRvY3VtZW50SWQgPSByb3cuZG9jdW1lbnRJZDtcclxuICAgICAgY29ycmVjdGlvbkRldGFpbHMuZG9jdW1lbnRMaW5lTnIgPSByb3cubGluZU51bWJlcjtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuYWxsb2NhdGVHb29kc0ZvclNhbGVzT3JkZXJDb3JyZWN0aW9uKHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkLCB0aGlzLnRyYW5zYWN0aW9uSW5mby52ZXJzaW9uLCByZXF1ZXN0KS50aGVuKCgpID0+IHtcclxuICAgICAgICB0aGlzLmdldEdvb2RzQWxsb2NhdGlvbkhpc3RvcnkoKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb3BlbldhcmVob3VzZUxvY2F0aW9uRGlhbG9nKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb25MaW5lLmFydGljbGVMaW5lU3RhdHVzLnF1YW50aXR5VG9BbGxvY2F0ZSA+IDApIHtcclxuICAgICAgdGhpcy5fZGlhbG9nU2VydmljZS5zaG93V2FyZWhvdXNlTG9jYXRpb24odGhpcy5hbGxvY2F0aW9uRGV0YWlscy53YXJlaG91c2VOciwgdHJ1ZSwgdHJ1ZSwgdHJ1ZSwgdGhpcy50cmFuc2FjdGlvbkxpbmUpXHJcbiAgICAgICAgLnRoZW4oKCkgPT4gdGhpcy5hbGxvY2F0aW9uRGV0YWlscy5sb2NhdGlvbk5yID0gKDxhbnk+dGhpcy50cmFuc2FjdGlvbkxpbmUpLmxvY2F0aW9uTnIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIHRyYW5zYWN0aW9uTGluZVNldCgpIHtcclxuICAgIHRoaXMuX2hhbmRsZVRyYW5zYWN0aW9uTGluZVNldCh0aGlzLnRyYW5zYWN0aW9uTGluZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9oYW5kbGVUcmFuc2FjdGlvbkxpbmVTZXQodHJhbnNMaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvKTogdm9pZCB7XHJcbiAgICB0aGlzLmFsbG9jYXRpb25EZXRhaWxzLnF1YW50aXR5VG9BbGxvY2F0ZSA9IHRyYW5zTGluZS5xdWFudGl0eVRvQWxsb2NhdGU7XHJcbiAgICB0aGlzLmFsbG9jYXRpb25EZXRhaWxzLndhcmVob3VzZU5yID0gdHJhbnNMaW5lLndhcmVob3VzZU51bWJlcjtcclxuICAgIHRoaXMuYWxsb2NhdGlvbkRldGFpbHMubGluZU5yID0gdHJhbnNMaW5lLmxpbmVOcjtcclxuICAgIHRoaXMuZ2V0R29vZHNBbGxvY2F0aW9uSGlzdG9yeSgpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
186
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1zYWxlcy1hbGxvY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWxpbmUtc2FsZXMtYWxsb2NhdGlvbi90cmFuc2FjdGlvbi1saW5lLXNhbGVzLWFsbG9jYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBcUIsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDOUcsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDakYsT0FBTyxFQUFDLGlDQUFpQyxFQUFDLE1BQU0sNkVBQTZFLENBQUM7QUFDOUgsT0FBTyxFQUFDLCtCQUErQixFQUFDLE1BQU0sMEVBQTBFLENBQUM7QUFFekgsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzNELE9BQU8sRUFBQywyQ0FBMkMsRUFBQyxNQUFNLHdGQUF3RixDQUFDO0FBQ25KLE9BQU8sRUFBQyx5Q0FBeUMsRUFBQyxNQUFNLHFGQUFxRixDQUFDO0FBRTlJLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBR2hGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBb0VoRixNQUFNLE9BQU8sdUNBQXdDLFNB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QUFDLDRDQUE0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7Rm9ybU1hc3RlclNlcnZpY2V9IGZyb20gXCJAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50fSBmcm9tIFwiLi4vY29yZS9iYXNlL3RyYW5zYWN0aW9uLWJhc2UuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7QWxsb2NhdGVHb29kc0ZvclNhbGVzT3JkZXJSZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2FsbG9jYXRlLWdvb2RzLWZvci1zYWxlcy1vcmRlci1yZXF1ZXN0XCI7XHJcbmltcG9ydCB7U2FsZXNPcmRlckxpbmVBbGxvY2F0aW9uRGV0YWlsc30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9zYWxlcy1vcmRlci1saW5lLWFsbG9jYXRpb24tZGV0YWlsc1wiO1xyXG5pbXBvcnQge0xvZ2lzdGljYWxTdGF0ZURldGFpbH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9sb2dpc3RpY2FsLXN0YXRlLWRldGFpbC5ib1wiO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQge0RpYWxvZ1NlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2RpYWxvZy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7QWxsb2NhdGVHb29kc0ZvclNhbGVzT3JkZXJDb3JyZWN0aW9uUmVxdWVzdH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9hbGxvY2F0ZS1nb29kcy1mb3Itc2FsZXMtb3JkZXItY29ycmVjdGlvbi1yZXF1ZXN0XCI7XHJcbmltcG9ydCB7U2FsZXNPcmRlckxpbmVBbGxvY2F0aW9uQ29ycmVjdGlvbkRldGFpbHN9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvc2FsZXMtb3JkZXItbGluZS1hbGxvY2F0aW9uLWNvcnJlY3Rpb24tZGV0YWlsc1wiO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkV2ZW50U2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uTGluZUluZm99IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tbGluZS1pbmZvLmJvXCI7XHJcbmltcG9ydCB7R29vZHNBbGxvY2F0aW9uSGlzdG9yeX0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9nb29kcy1hbGxvY2F0aW9uLWhpc3RvcnkuYm9cIjtcclxuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9kaWN0aW9uYXJ5LnNlcnZpY2UnO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSW1hZ2VTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWltYWdlLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tdHJhbnNhY3Rpb24tbGluZS1zYWxlcy1hbGxvY2F0aW9uXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxjby1mb3JtPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlscy1oZWFkZXJcIiBbdGV4dENvbnRlbnRdPVwiJ0FMTE9DQVRFX0RFVEFJTFMnIHwgbG9jYWxpemUgfCB1cHBlcmNhc2VcIj48L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbnMtd3JhcHBlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWxzLWNvbHVtblwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgY2xhc3M9XCJkZXRhaWxzLWlucHV0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFttYXhdPVwiYWxsb2NhdGlvbkRldGFpbHMucXVhbnRpdHlUb0FsbG9jYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cImFsbG9jYXRpb25EZXRhaWxzLnNlcmlhbE5yID8gMSA6IGFsbG9jYXRpb25EZXRhaWxzLnF1YW50aXR5VG9BbGxvY2F0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiISFhbGxvY2F0aW9uRGV0YWlscy5zZXJpYWxOciB8fCBhbGxvY2F0aW9uRGV0YWlscy5xdWFudGl0eVRvQWxsb2NhdGUgPT09IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cIiEhYWxsb2NhdGlvbkRldGFpbHMuc2VyaWFsTnIgfHwgYWxsb2NhdGlvbkRldGFpbHMucXVhbnRpdHlUb0FsbG9jYXRlID09PSAwIHx8IHJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cIidudW1iZXInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFttaW5dPVwiMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0FNT1VOVCcgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgIDxjby1pbnB1dC10ZXh0IGNsYXNzPVwiZGV0YWlscy1pbnB1dFwiIFsobW9kZWwpXT1cImFsbG9jYXRpb25EZXRhaWxzLndhcmVob3VzZU5yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cIidudW1iZXInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtoaWRlQXJyb3dCdXR0b25zXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRyYW5zYWN0aW9uTGluZS53YXJlaG91c2VOdW1iZXIgIT09IHVuZGVmaW5lZCB8fCByZWFkb25seVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwidHJhbnNhY3Rpb25MaW5lLndhcmVob3VzZU51bWJlciAhPT0gdW5kZWZpbmVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cmFuc2FjdGlvbkxpbmUuaXNXYXJlaG91c2VSZXF1aXJlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1dBUkVIT1VTRScgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJsb2NhdGlvbi13cmFwcGVyXCIgW2NsYXNzLmNsaWNrYWJsZV09XCJ0cmFuc2FjdGlvbkxpbmUuYXJ0aWNsZUxpbmVTdGF0dXMucXVhbnRpdHlUb0FsbG9jYXRlID4gMFwiIChjbGljayk9XCJvcGVuV2FyZWhvdXNlTG9jYXRpb25EaWFsb2coKVwiPlxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFhbGxvY2F0aW9uRGV0YWlscy5sb2NhdGlvbk5yICYmIHRyYW5zYWN0aW9uTGluZS5pc0xvY2F0aW9uUmVxdWlyZWRcIiBjbGFzcz1cInJlcXVpcmVkXCIgW3RleHRDb250ZW50XT1cIicqJ1wiPjwvc3Bhbj5cclxuICAgICAgICAgICAgPGNvLWljb24gKm5nSWY9XCJhbGxvY2F0aW9uRGV0YWlscy5sb2NhdGlvbk5yXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5TaGVsdmVzTGlnaHQpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgICA8ZGl2IFt0ZXh0Q29udGVudF09XCJhbGxvY2F0aW9uRGV0YWlscy5sb2NhdGlvbk5yID8gYWxsb2NhdGlvbkRldGFpbHMubG9jYXRpb25OciA6ICgnTE9DQVRJT04nIHwgbG9jYWxpemUpXCI+PC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlci13cmFwcGVyXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlclwiPjwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWxzLWNvbHVtblwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgKm5nSWY9XCJ0cmFuc2FjdGlvbkxpbmUuaXNCYXRjaE5yUmVxdWlyZWRcIiBjbGFzcz1cImRldGFpbHMtaW5wdXRcIiBbKG1vZGVsKV09XCJhbGxvY2F0aW9uRGV0YWlscy5iYXRjaE5yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cIidudW1iZXInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtoaWRlQXJyb3dCdXR0b25zXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cmFuc2FjdGlvbkxpbmUuaXNCYXRjaE5yUmVxdWlyZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidCQVRDSF9OVU1CRVInIHwgbG9jYWxpemVcIj48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICA8Y28taW5wdXQtdGV4dCAqbmdJZj1cInRyYW5zYWN0aW9uTGluZS5pc1NlcmlhbE5yUmVxdWlyZWRcIiBjbGFzcz1cImRldGFpbHMtaW5wdXRcIiBbKG1vZGVsKV09XCJhbGxvY2F0aW9uRGV0YWlscy5zZXJpYWxOclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaGlkZUFycm93QnV0dG9uc109XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJhbnNhY3Rpb25MaW5lLmlzU2VyaWFsTnJSZXF1aXJlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1NFUklBTF9OVU1CRVInIHwgbG9jYWxpemVcIj48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9jby1mb3JtPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbW1pdC1idXR0b24td3JhcHBlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29tbWl0LWJ1dHRvblwiICpuZ0lmPVwiIXJlYWRvbmx5XCJcclxuICAgICAgICAgICBbY2xhc3MuY2xpY2thYmxlXT1cImFsbG9jYXRpb25EZXRhaWxzLnF1YW50aXR5VG9BbGxvY2F0ZSA+IDBcIlxyXG4gICAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJhbGxvY2F0aW9uRGV0YWlscy5xdWFudGl0eVRvQWxsb2NhdGUgPT09IDBcIlxyXG4gICAgICAgICAgIChjbGljayk9XCJoYW5kbGVTYXZlRGV0YWlsc0VkaXQoKVwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiY29tbWl0LXRleHRcIiBbdGV4dENvbnRlbnRdPVwiJ0FMTE9DQVRFJyB8IGxvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGNvLXRyYW5zYWN0aW9uLWFsbG9jYXRlLWdvb2RzLWhpc3RvcnlcclxuICAgICAgW2dvb2RzQWxsb2NhdGlvbkhpc3RvcnldPVwiZ29vZHNBbGxvY2F0aW9uSGlzdG9yeVwiXHJcbiAgICAgIChkZWxldGVSb3cpPVwiaGFuZGxlRGVsZXRlU2VsZWN0ZWRSb3coJGV2ZW50KVwiXHJcbiAgICA+PC9jby10cmFuc2FjdGlvbi1hbGxvY2F0ZS1nb29kcy1oaXN0b3J5PlxyXG4gIGAsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBGb3JtTWFzdGVyU2VydmljZVxyXG4gIF0sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25MaW5lU2FsZXNBbGxvY2F0aW9uQ29tcG9uZW50IGV4dGVuZHMgVHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICBwdWJsaWMgYWxsb2NhdGlvblJlcXVlc3Q6IEFsbG9jYXRlR29vZHNGb3JTYWxlc09yZGVyUmVxdWVzdCA9IG5ldyBBbGxvY2F0ZUdvb2RzRm9yU2FsZXNPcmRlclJlcXVlc3QoKTtcclxuICBwdWJsaWMgYWxsb2NhdGlvbkRldGFpbHM6IFNhbGVzT3JkZXJMaW5lQWxsb2NhdGlvbkRldGFpbHMgPSBuZXcgU2FsZXNPcmRlckxpbmVBbGxvY2F0aW9uRGV0YWlscygpO1xyXG5cclxuICBwdWJsaWMgZ29vZHNBbGxvY2F0aW9uSGlzdG9yeTogTG9naXN0aWNhbFN0YXRlRGV0YWlsW10gPSBbXTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdHJhbnNhY3Rpb24tbGluZS1zYWxlcy1hbGxvY2F0aW9uXCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgdHJhbnNhY3Rpb25FdmVudFNlcnZpY2U6IFRyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLFxyXG4gICAgcHVibGljIHNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgZGljdGlvbmFyeVNlcnZpY2U6IERpY3Rpb25hcnlTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGltYWdlU2VydmljZTogVHJhbnNhY3Rpb25JbWFnZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBfZm9ybU1hc3RlcjogRm9ybU1hc3RlclNlcnZpY2UsXHJcbiAgKSB7XHJcbiAgICBzdXBlcih0cmFuc2FjdGlvbkV2ZW50U2VydmljZSwgaWNvbkNhY2hlU2VydmljZSwgaW1hZ2VTZXJ2aWNlLCBkaWN0aW9uYXJ5U2VydmljZSwgc2VydmljZSwgY2hhbmdlRGV0ZWN0b3IpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9zdWJzLnB1c2goXHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25FdmVudFNlcnZpY2UudHJhbnNhY3Rpb25MaW5lQ2hhbmdlZC5zdWJzY3JpYmUoKHRyYW5zTGluZTogVHJhbnNhY3Rpb25MaW5lSW5mbykgPT4ge1xyXG4gICAgICAgIGlmICh0cmFuc0xpbmUubGluZU5yID09PSB0aGlzLnRyYW5zYWN0aW9uTGluZS5saW5lTnIpIHtcclxuICAgICAgICAgIHRoaXMuX2hhbmRsZVRyYW5zYWN0aW9uTGluZVNldCh0cmFuc0xpbmUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgICB0aGlzLl9zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN1Ym1pdCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9mb3JtTWFzdGVyLnN1Ym1pdFNsYXZlcygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldEdvb2RzQWxsb2NhdGlvbkhpc3RvcnkoKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRHb29kc0FsbG9jYXRpb25IaXN0b3J5KHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkLCB0aGlzLnRyYW5zYWN0aW9uTGluZS5saW5lTnIpXHJcbiAgICAgIC50aGVuKChyZXN1bHQ6IEdvb2RzQWxsb2NhdGlvbkhpc3RvcnkpID0+IHtcclxuICAgICAgICB0aGlzLmdvb2RzQWxsb2NhdGlvbkhpc3RvcnkgPSByZXN1bHQuZ29vZHNBbGxvY2F0aW9uSGlzdG9yeTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2F2ZURldGFpbHNFZGl0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb25MaW5lLmFydGljbGVMaW5lU3RhdHVzLnF1YW50aXR5VG9BbGxvY2F0ZSA9PT0gMCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCB2YWxpZCA9IHRoaXMuc3VibWl0KCk7XHJcbiAgICBpZiAodmFsaWQpIHtcclxuICAgICAgY29uc3QgcmVxdWVzdDogQWxsb2NhdGVHb29kc0ZvclNhbGVzT3JkZXJSZXF1ZXN0ID0gdGhpcy5hbGxvY2F0aW9uUmVxdWVzdDtcclxuICAgICAgcmVxdWVzdC50cmFuc0lkID0gdGhpcy50cmFuc2FjdGlvbkluZm8uaWQ7XHJcbiAgICAgIHJlcXVlc3Quc2FsZXNPcmRlckxpbmVBbGxvY2F0aW9uRGV0YWlsc0RUT1MgPSBbdGhpcy5hbGxvY2F0aW9uRGV0YWlsc107XHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmFsbG9jYXRlR29vZHNGb3JTYWxlc09yZGVyKHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkLCB0aGlzLnRyYW5zYWN0aW9uSW5mby52ZXJzaW9uLCByZXF1ZXN0KS50aGVuKChzdWNjZXNzKSA9PiB7XHJcbiAgICAgICAgaWYgKHN1Y2Nlc3MpIHtcclxuICAgICAgICAgIHRoaXMuYWxsb2NhdGlvbkRldGFpbHMubG9jYXRpb25OciA9IHVuZGVmaW5lZDtcclxuICAgICAgICAgIHRoaXMuZ2V0R29vZHNBbGxvY2F0aW9uSGlzdG9yeSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlRGVsZXRlU2VsZWN0ZWRSb3cocm93OiBMb2dpc3RpY2FsU3RhdGVEZXRhaWwpOiB2b2lkIHtcclxuICAgIGlmIChyb3cgJiYgcm93LnR5cGUgIT09ICdjb3JyZWN0aW9uJykge1xyXG4gICAgICBjb25zdCByZXF1ZXN0OiBBbGxvY2F0ZUdvb2RzRm9yU2FsZXNPcmRlckNvcnJlY3Rpb25SZXF1ZXN0ID0gbmV3IEFsbG9jYXRlR29vZHNGb3JTYWxlc09yZGVyQ29ycmVjdGlvblJlcXVlc3QoKTtcclxuICAgICAgY29uc3QgY29ycmVjdGlvbkRldGFpbHM6IFNhbGVzT3JkZXJMaW5lQWxsb2NhdGlvbkNvcnJlY3Rpb25EZXRhaWxzID0gbmV3IFNhbGVzT3JkZXJMaW5lQWxsb2NhdGlvbkNvcnJlY3Rpb25EZXRhaWxzKCk7XHJcbiAgICAgIHJlcXVlc3QuYWxsb3dlZFRvUmVtb3ZlUGlja2VkQWxsb2NhdGlvbnMgPSBmYWxzZTtcclxuICAgICAgcmVxdWVzdC50cmFuc0lkID0gdGhpcy50cmFuc2FjdGlvbkluZm8uaWQ7XHJcbiAgICAgIHJlcXVlc3Quc2FsZXNPcmRlckxpbmVBbGxvY2F0aW9uQ29ycmVjdGlvbkRldGFpbHNEVE9TID0gW2NvcnJlY3Rpb25EZXRhaWxzXTtcclxuICAgICAgY29ycmVjdGlvbkRldGFpbHMubGluZU5yID0gdGhpcy50cmFuc2FjdGlvbkxpbmUubGluZU5yO1xyXG4gICAgICBjb3JyZWN0aW9uRGV0YWlscy5xdWFudGl0eVRvQ29ycmVjdCA9IHJvdy5xdWFudGl0eTtcclxuICAgICAgY29ycmVjdGlvbkRldGFpbHMuZG9jdW1lbnRJZCA9IHJvdy5kb2N1bWVudElkO1xyXG4gICAgICBjb3JyZWN0aW9uRGV0YWlscy5kb2N1bWVudExpbmVOciA9IHJvdy5saW5lTnVtYmVyO1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5hbGxvY2F0ZUdvb2RzRm9yU2FsZXNPcmRlckNvcnJlY3Rpb24odGhpcy50cmFuc2FjdGlvbkluZm8uaWQsIHRoaXMudHJhbnNhY3Rpb25JbmZvLnZlcnNpb24sIHJlcXVlc3QpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuZ2V0R29vZHNBbGxvY2F0aW9uSGlzdG9yeSgpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvcGVuV2FyZWhvdXNlTG9jYXRpb25EaWFsb2coKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbkxpbmUuYXJ0aWNsZUxpbmVTdGF0dXMucXVhbnRpdHlUb0FsbG9jYXRlID4gMCkge1xyXG4gICAgICB0aGlzLmRpYWxvZ1NlcnZpY2Uuc2hvd1dhcmVob3VzZUxvY2F0aW9uKHRoaXMuYWxsb2NhdGlvbkRldGFpbHMud2FyZWhvdXNlTnIsIHRydWUsIHRydWUsIHRydWUsIHRoaXMudHJhbnNhY3Rpb25MaW5lKVxyXG4gICAgICAgIC50aGVuKCgpID0+IHRoaXMuYWxsb2NhdGlvbkRldGFpbHMubG9jYXRpb25OciA9ICg8YW55PnRoaXMudHJhbnNhY3Rpb25MaW5lKS5sb2NhdGlvbk5yKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCB0cmFuc2FjdGlvbkxpbmVTZXQoKSB7XHJcbiAgICB0aGlzLl9oYW5kbGVUcmFuc2FjdGlvbkxpbmVTZXQodGhpcy50cmFuc2FjdGlvbkxpbmUpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaGFuZGxlVHJhbnNhY3Rpb25MaW5lU2V0KHRyYW5zTGluZTogVHJhbnNhY3Rpb25MaW5lSW5mbyk6IHZvaWQge1xyXG4gICAgdGhpcy5hbGxvY2F0aW9uRGV0YWlscy5xdWFudGl0eVRvQWxsb2NhdGUgPSB0cmFuc0xpbmUucXVhbnRpdHlUb0FsbG9jYXRlO1xyXG4gICAgdGhpcy5hbGxvY2F0aW9uRGV0YWlscy53YXJlaG91c2VOciA9IHRyYW5zTGluZS53YXJlaG91c2VOdW1iZXI7XHJcbiAgICB0aGlzLmFsbG9jYXRpb25EZXRhaWxzLmxpbmVOciA9IHRyYW5zTGluZS5saW5lTnI7XHJcbiAgICB0aGlzLmdldEdvb2RzQWxsb2NhdGlvbkhpc3RvcnkoKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Component, HostBinding, ViewEncapsulation } from "@angular/core";
|
|
2
|
+
import { TransactionBaseComponent } from "../core/base/transaction-base.component";
|
|
3
|
+
import { LayoutCode } from "@colijnit/transactionapi/build/enum/layout-code.enum";
|
|
4
|
+
import { LogisticalStateDetail } from "@colijnit/transactionapi/build/model/logistical-state-detail.bo";
|
|
5
|
+
export class TransactionLineSalesDeliveryComponent extends TransactionBaseComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
super(...arguments);
|
|
8
|
+
this.goodsDeliveryHistory = [];
|
|
9
|
+
}
|
|
10
|
+
showClass() {
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
13
|
+
ngOnInit() {
|
|
14
|
+
this.transactionService.getHistoricDocuments(this.transactionInfo.id, LayoutCode.DeliveryNote)
|
|
15
|
+
.then((result) => {
|
|
16
|
+
this._parseReports(result);
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
_parseReports(reports) {
|
|
20
|
+
reports.forEach((report) => {
|
|
21
|
+
for (let line of report.reportTransactionLines) {
|
|
22
|
+
if (line.lineNr === this.transactionLine.lineNr) {
|
|
23
|
+
const detail = new LogisticalStateDetail();
|
|
24
|
+
detail.warehouseNumber = line.wareHouseNr;
|
|
25
|
+
detail.date = line.deliveryDate;
|
|
26
|
+
detail.quantity = line.amount;
|
|
27
|
+
detail.reference = line.reference;
|
|
28
|
+
detail.username = line.user;
|
|
29
|
+
this.goodsDeliveryHistory.push(detail);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
TransactionLineSalesDeliveryComponent.decorators = [
|
|
36
|
+
{ type: Component, args: [{
|
|
37
|
+
selector: "co-transaction-line-sales-delivery",
|
|
38
|
+
template: `
|
|
39
|
+
<co-transaction-line-delivery-history
|
|
40
|
+
[goodsDeliveryHistory]="goodsDeliveryHistory"
|
|
41
|
+
></co-transaction-line-delivery-history>
|
|
42
|
+
`,
|
|
43
|
+
encapsulation: ViewEncapsulation.None
|
|
44
|
+
},] }
|
|
45
|
+
];
|
|
46
|
+
TransactionLineSalesDeliveryComponent.propDecorators = {
|
|
47
|
+
showClass: [{ type: HostBinding, args: ["class.co-transaction-line-sales-delivery",] }]
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1zYWxlcy1kZWxpdmVyeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1saW5lLXNhbGVzLWRlbGl2ZXJ5L3RyYW5zYWN0aW9uLWxpbmUtc2FsZXMtZGVsaXZlcnkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsV0FBVyxFQUFVLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUVoRixPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQVd0RyxNQUFNLE9BQU8scUNBQXNDLFNBQVEsd0JBQXdCO0lBVG5GOztRQVdTLHlCQUFvQixHQUE0QixFQUFFLENBQUM7SUE2QjVELENBQUM7SUExQlEsU0FBUztRQUNkLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFlBQVksQ0FBQzthQUMzRixJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNmLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sYUFBYSxDQUFDLE9BQXlCO1FBQzdDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFzQixFQUFFLEVBQUU7WUFDekMsS0FBSyxJQUFJLElBQUksSUFBSSxNQUFNLENBQUMsc0JBQXNCLEVBQUU7Z0JBQzlDLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRTtvQkFDL0MsTUFBTSxNQUFNLEdBQTBCLElBQUkscUJBQXFCLEVBQUUsQ0FBQztvQkFDbEUsTUFBTSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO29CQUMxQyxNQUFNLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7b0JBQ2hDLE1BQU0sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztvQkFDOUIsTUFBTSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO29CQUNsQyxNQUFNLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7b0JBQzVCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7aUJBQ3hDO2FBQ0Y7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OztZQXZDRixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLG9DQUFvQztnQkFDOUMsUUFBUSxFQUFFOzs7O0tBSVQ7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDeEM7Ozt3QkFLRSxXQUFXLFNBQUMsMENBQTBDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQmFzZUNvbXBvbmVudH0gZnJvbSBcIi4uL2NvcmUvYmFzZS90cmFuc2FjdGlvbi1iYXNlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0xheW91dENvZGV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvZW51bS9sYXlvdXQtY29kZS5lbnVtXCI7XHJcbmltcG9ydCB7SGlzdG9yaWNSZXBvcnR9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvaGlzdG9yaWMtcmVwb3J0LmJvXCI7XHJcbmltcG9ydCB7TG9naXN0aWNhbFN0YXRlRGV0YWlsfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2xvZ2lzdGljYWwtc3RhdGUtZGV0YWlsLmJvXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcImNvLXRyYW5zYWN0aW9uLWxpbmUtc2FsZXMtZGVsaXZlcnlcIixcclxuICAgIHRlbXBsYXRlOiBgXHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWxpbmUtZGVsaXZlcnktaGlzdG9yeVxyXG4gICAgICAgICAgW2dvb2RzRGVsaXZlcnlIaXN0b3J5XT1cImdvb2RzRGVsaXZlcnlIaXN0b3J5XCJcclxuICAgICAgICA+PC9jby10cmFuc2FjdGlvbi1saW5lLWRlbGl2ZXJ5LWhpc3Rvcnk+XHJcbiAgICBgLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25MaW5lU2FsZXNEZWxpdmVyeUNvbXBvbmVudCBleHRlbmRzIFRyYW5zYWN0aW9uQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIHB1YmxpYyBnb29kc0RlbGl2ZXJ5SGlzdG9yeTogTG9naXN0aWNhbFN0YXRlRGV0YWlsW10gPSBbXTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuY28tdHJhbnNhY3Rpb24tbGluZS1zYWxlcy1kZWxpdmVyeVwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmdldEhpc3RvcmljRG9jdW1lbnRzKHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkLCBMYXlvdXRDb2RlLkRlbGl2ZXJ5Tm90ZSlcclxuICAgICAgLnRoZW4oKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgIHRoaXMuX3BhcnNlUmVwb3J0cyhyZXN1bHQpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3BhcnNlUmVwb3J0cyhyZXBvcnRzOiBIaXN0b3JpY1JlcG9ydFtdKTogdm9pZCB7XHJcbiAgICByZXBvcnRzLmZvckVhY2goKHJlcG9ydDogSGlzdG9yaWNSZXBvcnQpID0+IHtcclxuICAgICAgZm9yIChsZXQgbGluZSBvZiByZXBvcnQucmVwb3J0VHJhbnNhY3Rpb25MaW5lcykge1xyXG4gICAgICAgIGlmIChsaW5lLmxpbmVOciA9PT0gdGhpcy50cmFuc2FjdGlvbkxpbmUubGluZU5yKSB7XHJcbiAgICAgICAgICBjb25zdCBkZXRhaWw6IExvZ2lzdGljYWxTdGF0ZURldGFpbCA9IG5ldyBMb2dpc3RpY2FsU3RhdGVEZXRhaWwoKTtcclxuICAgICAgICAgIGRldGFpbC53YXJlaG91c2VOdW1iZXIgPSBsaW5lLndhcmVIb3VzZU5yO1xyXG4gICAgICAgICAgZGV0YWlsLmRhdGUgPSBsaW5lLmRlbGl2ZXJ5RGF0ZTtcclxuICAgICAgICAgIGRldGFpbC5xdWFudGl0eSA9IGxpbmUuYW1vdW50O1xyXG4gICAgICAgICAgZGV0YWlsLnJlZmVyZW5jZSA9IGxpbmUucmVmZXJlbmNlO1xyXG4gICAgICAgICAgZGV0YWlsLnVzZXJuYW1lID0gbGluZS51c2VyO1xyXG4gICAgICAgICAgdGhpcy5nb29kc0RlbGl2ZXJ5SGlzdG9yeS5wdXNoKGRldGFpbCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { CommonModule } from "@angular/common";
|
|
3
|
+
import { TransactionLineSalesDeliveryComponent } from "./transaction-line-sales-delivery.component";
|
|
4
|
+
import { TransactionLineDeliveryHistoryModule } from "../transaction-line-delivery-history/transaction-line-delivery-history.module";
|
|
5
|
+
export class TransactionLineSalesDeliveryModule {
|
|
6
|
+
}
|
|
7
|
+
TransactionLineSalesDeliveryModule.decorators = [
|
|
8
|
+
{ type: NgModule, args: [{
|
|
9
|
+
imports: [
|
|
10
|
+
CommonModule,
|
|
11
|
+
TransactionLineDeliveryHistoryModule
|
|
12
|
+
],
|
|
13
|
+
declarations: [
|
|
14
|
+
TransactionLineSalesDeliveryComponent
|
|
15
|
+
],
|
|
16
|
+
exports: [
|
|
17
|
+
TransactionLineSalesDeliveryComponent
|
|
18
|
+
]
|
|
19
|
+
},] }
|
|
20
|
+
];
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1zYWxlcy1kZWxpdmVyeS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2NvbXBvbmVudC90cmFuc2FjdGlvbi1saW5lLXNhbGVzLWRlbGl2ZXJ5L3RyYW5zYWN0aW9uLWxpbmUtc2FsZXMtZGVsaXZlcnkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxxQ0FBcUMsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQ2xHLE9BQU8sRUFDSCxvQ0FBb0MsRUFDdkMsTUFBTSwrRUFBK0UsQ0FBQztBQWN2RixNQUFNLE9BQU8sa0NBQWtDOzs7WUFaOUMsUUFBUSxTQUFDO2dCQUNOLE9BQU8sRUFBRTtvQkFDTCxZQUFZO29CQUNaLG9DQUFvQztpQkFDdkM7Z0JBQ0QsWUFBWSxFQUFFO29CQUNWLHFDQUFxQztpQkFDeEM7Z0JBQ0QsT0FBTyxFQUFFO29CQUNMLHFDQUFxQztpQkFDeEM7YUFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lU2FsZXNEZWxpdmVyeUNvbXBvbmVudH0gZnJvbSBcIi4vdHJhbnNhY3Rpb24tbGluZS1zYWxlcy1kZWxpdmVyeS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtcclxuICAgIFRyYW5zYWN0aW9uTGluZURlbGl2ZXJ5SGlzdG9yeU1vZHVsZVxyXG59IGZyb20gXCIuLi90cmFuc2FjdGlvbi1saW5lLWRlbGl2ZXJ5LWhpc3RvcnkvdHJhbnNhY3Rpb24tbGluZS1kZWxpdmVyeS1oaXN0b3J5Lm1vZHVsZVwiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDb21tb25Nb2R1bGUsXHJcbiAgICAgICAgVHJhbnNhY3Rpb25MaW5lRGVsaXZlcnlIaXN0b3J5TW9kdWxlXHJcbiAgICBdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICAgICAgVHJhbnNhY3Rpb25MaW5lU2FsZXNEZWxpdmVyeUNvbXBvbmVudFxyXG4gICAgXSxcclxuICAgIGV4cG9ydHM6IFtcclxuICAgICAgICBUcmFuc2FjdGlvbkxpbmVTYWxlc0RlbGl2ZXJ5Q29tcG9uZW50XHJcbiAgICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkxpbmVTYWxlc0RlbGl2ZXJ5TW9kdWxlIHtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Component, HostBinding, ViewEncapsulation } from "@angular/core";
|
|
2
|
+
import { TransactionBaseComponent } from "../core/base/transaction-base.component";
|
|
3
|
+
import { LogisticalStateDetail } from "@colijnit/transactionapi/build/model/logistical-state-detail.bo";
|
|
4
|
+
import { LayoutCode } from "@colijnit/transactionapi/build/enum/layout-code.enum";
|
|
5
|
+
export class TransactionLineSalesInvoiceComponent extends TransactionBaseComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
super(...arguments);
|
|
8
|
+
this.goodsInvoiceHistory = [];
|
|
9
|
+
}
|
|
10
|
+
showClass() {
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
13
|
+
ngOnInit() {
|
|
14
|
+
this.transactionService.getHistoricDocuments(this.transactionInfo.id, LayoutCode.Invoice)
|
|
15
|
+
.then((result) => {
|
|
16
|
+
this._parseReports(result);
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
_parseReports(reports) {
|
|
20
|
+
reports.forEach((report) => {
|
|
21
|
+
for (let line of report.reportTransactionLines) {
|
|
22
|
+
if (line.lineNr === this.transactionLine.lineNr) {
|
|
23
|
+
const detail = new LogisticalStateDetail();
|
|
24
|
+
detail.warehouseNumber = line.wareHouseNr;
|
|
25
|
+
detail.date = line.deliveryDate;
|
|
26
|
+
detail.quantity = line.amount;
|
|
27
|
+
detail.reference = line.reference;
|
|
28
|
+
detail.username = line.user;
|
|
29
|
+
this.goodsInvoiceHistory.push(detail);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
TransactionLineSalesInvoiceComponent.decorators = [
|
|
36
|
+
{ type: Component, args: [{
|
|
37
|
+
selector: "co-transaction-line-sales-invoice",
|
|
38
|
+
template: `
|
|
39
|
+
<co-transaction-line-invoice-history
|
|
40
|
+
[goodsInvoiceHistory]="goodsInvoiceHistory"
|
|
41
|
+
></co-transaction-line-invoice-history>
|
|
42
|
+
`,
|
|
43
|
+
encapsulation: ViewEncapsulation.None
|
|
44
|
+
},] }
|
|
45
|
+
];
|
|
46
|
+
TransactionLineSalesInvoiceComponent.propDecorators = {
|
|
47
|
+
showClass: [{ type: HostBinding, args: ["class.co-transaction-line-sales-invoice",] }]
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1zYWxlcy1pbnZvaWNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWxpbmUtc2FsZXMtaW52b2ljZS90cmFuc2FjdGlvbi1saW5lLXNhbGVzLWludm9pY2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsV0FBVyxFQUFVLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGlFQUFpRSxDQUFDO0FBQ3RHLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQVloRixNQUFNLE9BQU8sb0NBQXFDLFNBQVEsd0JBQXdCO0lBVGxGOztRQVdTLHdCQUFtQixHQUE0QixFQUFFLENBQUM7SUE4QjNELENBQUM7SUEzQlEsU0FBUztRQUNkLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsa0JBQWtCLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLE9BQU8sQ0FBQzthQUN0RixJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNmLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sYUFBYSxDQUFDLE9BQXlCO1FBQzdDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFzQixFQUFFLEVBQUU7WUFDekMsS0FBSyxJQUFJLElBQUksSUFBSSxNQUFNLENBQUMsc0JBQXNCLEVBQUU7Z0JBQzlDLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRTtvQkFDL0MsTUFBTSxNQUFNLEdBQTBCLElBQUkscUJBQXFCLEVBQUUsQ0FBQztvQkFDbEUsTUFBTSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO29CQUMxQyxNQUFNLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7b0JBQ2hDLE1BQU0sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztvQkFDOUIsTUFBTSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO29CQUNsQyxNQUFNLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7b0JBQzVCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7aUJBQ3ZDO2FBQ0Y7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OztZQXZDRixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLG1DQUFtQztnQkFDN0MsUUFBUSxFQUFFOzs7O0tBSVQ7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDeEM7Ozt3QkFLRSxXQUFXLFNBQUMseUNBQXlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQmFzZUNvbXBvbmVudH0gZnJvbSBcIi4uL2NvcmUvYmFzZS90cmFuc2FjdGlvbi1iYXNlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0xvZ2lzdGljYWxTdGF0ZURldGFpbH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9sb2dpc3RpY2FsLXN0YXRlLWRldGFpbC5ib1wiO1xyXG5pbXBvcnQge0xheW91dENvZGV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvZW51bS9sYXlvdXQtY29kZS5lbnVtXCI7XHJcbmltcG9ydCB7SGlzdG9yaWNSZXBvcnR9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvaGlzdG9yaWMtcmVwb3J0LmJvXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcImNvLXRyYW5zYWN0aW9uLWxpbmUtc2FsZXMtaW52b2ljZVwiLFxyXG4gICAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8Y28tdHJhbnNhY3Rpb24tbGluZS1pbnZvaWNlLWhpc3RvcnlcclxuICAgICAgICAgIFtnb29kc0ludm9pY2VIaXN0b3J5XT1cImdvb2RzSW52b2ljZUhpc3RvcnlcIlxyXG4gICAgICAgID48L2NvLXRyYW5zYWN0aW9uLWxpbmUtaW52b2ljZS1oaXN0b3J5PlxyXG4gICAgYCxcclxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uTGluZVNhbGVzSW52b2ljZUNvbXBvbmVudCBleHRlbmRzIFRyYW5zYWN0aW9uQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIHB1YmxpYyBnb29kc0ludm9pY2VIaXN0b3J5OiBMb2dpc3RpY2FsU3RhdGVEZXRhaWxbXSA9IFtdO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby10cmFuc2FjdGlvbi1saW5lLXNhbGVzLWludm9pY2VcIilcclxuICBwdWJsaWMgc2hvd0NsYXNzKCkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRIaXN0b3JpY0RvY3VtZW50cyh0aGlzLnRyYW5zYWN0aW9uSW5mby5pZCwgTGF5b3V0Q29kZS5JbnZvaWNlKVxyXG4gICAgICAudGhlbigocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgdGhpcy5fcGFyc2VSZXBvcnRzKHJlc3VsdCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcGFyc2VSZXBvcnRzKHJlcG9ydHM6IEhpc3RvcmljUmVwb3J0W10pOiB2b2lkIHtcclxuICAgIHJlcG9ydHMuZm9yRWFjaCgocmVwb3J0OiBIaXN0b3JpY1JlcG9ydCkgPT4ge1xyXG4gICAgICBmb3IgKGxldCBsaW5lIG9mIHJlcG9ydC5yZXBvcnRUcmFuc2FjdGlvbkxpbmVzKSB7XHJcbiAgICAgICAgaWYgKGxpbmUubGluZU5yID09PSB0aGlzLnRyYW5zYWN0aW9uTGluZS5saW5lTnIpIHtcclxuICAgICAgICAgIGNvbnN0IGRldGFpbDogTG9naXN0aWNhbFN0YXRlRGV0YWlsID0gbmV3IExvZ2lzdGljYWxTdGF0ZURldGFpbCgpO1xyXG4gICAgICAgICAgZGV0YWlsLndhcmVob3VzZU51bWJlciA9IGxpbmUud2FyZUhvdXNlTnI7XHJcbiAgICAgICAgICBkZXRhaWwuZGF0ZSA9IGxpbmUuZGVsaXZlcnlEYXRlO1xyXG4gICAgICAgICAgZGV0YWlsLnF1YW50aXR5ID0gbGluZS5hbW91bnQ7XHJcbiAgICAgICAgICBkZXRhaWwucmVmZXJlbmNlID0gbGluZS5yZWZlcmVuY2U7XHJcbiAgICAgICAgICBkZXRhaWwudXNlcm5hbWUgPSBsaW5lLnVzZXI7XHJcbiAgICAgICAgICB0aGlzLmdvb2RzSW52b2ljZUhpc3RvcnkucHVzaChkZXRhaWwpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { CommonModule } from "@angular/common";
|
|
3
|
+
import { TransactionLineSalesInvoiceComponent } from "./transaction-line-sales-invoice.component";
|
|
4
|
+
import { TransactionLineInvoiceHistoryModule } from "../transaction-line-invoice-history/transaction-line-invoice-history.module";
|
|
5
|
+
export class TransactionLineSalesInvoiceModule {
|
|
6
|
+
}
|
|
7
|
+
TransactionLineSalesInvoiceModule.decorators = [
|
|
8
|
+
{ type: NgModule, args: [{
|
|
9
|
+
imports: [
|
|
10
|
+
CommonModule,
|
|
11
|
+
TransactionLineInvoiceHistoryModule
|
|
12
|
+
],
|
|
13
|
+
declarations: [
|
|
14
|
+
TransactionLineSalesInvoiceComponent
|
|
15
|
+
],
|
|
16
|
+
exports: [
|
|
17
|
+
TransactionLineSalesInvoiceComponent
|
|
18
|
+
]
|
|
19
|
+
},] }
|
|
20
|
+
];
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1zYWxlcy1pbnZvaWNlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWxpbmUtc2FsZXMtaW52b2ljZS90cmFuc2FjdGlvbi1saW5lLXNhbGVzLWludm9pY2UubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxvQ0FBb0MsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQ2hHLE9BQU8sRUFDSCxtQ0FBbUMsRUFDdEMsTUFBTSw2RUFBNkUsQ0FBQztBQWNyRixNQUFNLE9BQU8saUNBQWlDOzs7WUFaN0MsUUFBUSxTQUFDO2dCQUNOLE9BQU8sRUFBRTtvQkFDTCxZQUFZO29CQUNaLG1DQUFtQztpQkFDdEM7Z0JBQ0QsWUFBWSxFQUFFO29CQUNWLG9DQUFvQztpQkFDdkM7Z0JBQ0QsT0FBTyxFQUFFO29CQUNMLG9DQUFvQztpQkFDdkM7YUFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lU2FsZXNJbnZvaWNlQ29tcG9uZW50fSBmcm9tIFwiLi90cmFuc2FjdGlvbi1saW5lLXNhbGVzLWludm9pY2UuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7XHJcbiAgICBUcmFuc2FjdGlvbkxpbmVJbnZvaWNlSGlzdG9yeU1vZHVsZVxyXG59IGZyb20gXCIuLi90cmFuc2FjdGlvbi1saW5lLWludm9pY2UtaGlzdG9yeS90cmFuc2FjdGlvbi1saW5lLWludm9pY2UtaGlzdG9yeS5tb2R1bGVcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgICAgIFRyYW5zYWN0aW9uTGluZUludm9pY2VIaXN0b3J5TW9kdWxlXHJcbiAgICBdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICAgICAgVHJhbnNhY3Rpb25MaW5lU2FsZXNJbnZvaWNlQ29tcG9uZW50XHJcbiAgICBdLFxyXG4gICAgZXhwb3J0czogW1xyXG4gICAgICAgIFRyYW5zYWN0aW9uTGluZVNhbGVzSW52b2ljZUNvbXBvbmVudFxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25MaW5lU2FsZXNJbnZvaWNlTW9kdWxlIHtcclxufVxyXG4iXX0=
|