@colijnit/transaction 12.1.5 → 12.1.8
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/README.md +10 -13
- package/bundles/colijnit-transaction.umd.js +5427 -7279
- package/bundles/colijnit-transaction.umd.js.map +1 -1
- package/colijnit-transaction.d.ts +45 -57
- package/colijnit-transaction.metadata.json +1 -1
- package/esm2015/colijnit-transaction.js +46 -58
- package/esm2015/lib/assets/dictionary/text.properties.js +346 -0
- package/esm2015/lib/component/checkout/checkout-login/checkout-login.component.js +106 -0
- package/esm2015/lib/component/checkout/checkout-overview-delivery-address/checkout-overview-delivery-address.component.js +47 -0
- package/esm2015/lib/component/checkout/checkout-overview-delivery-edit/checkout-overview-delivery-edit.component.js +443 -0
- package/esm2015/lib/component/checkout/checkout-overview-relation-edit/checkout-overview-relation-edit.component.js +371 -0
- package/esm2015/lib/component/checkout/checkout-relation-suggestions-list/checkout-relation-suggestions-list.component.js +30 -0
- package/esm2015/lib/component/checkout/checkout-relation-suggestions-list-item/checkout-relation-suggestions-list-item.component.js +31 -0
- package/esm2015/lib/component/checkout/checkout.component.js +102 -0
- package/esm2015/lib/component/checkout/checkout.module.js +77 -0
- package/esm2015/lib/component/confirmation-dialog/confirmation-dialog.component.js +38 -0
- package/esm2015/lib/component/confirmation-dialog/confirmation-dialog.module.js +24 -0
- package/esm2015/lib/component/core/base/dialog-base.component.js +6 -0
- package/esm2015/lib/component/core/base/transaction-base.component.js +96 -0
- package/esm2015/lib/component/core/core.module.js +36 -0
- package/esm2015/lib/component/core/enum/app-popup-button-type.enum.js +11 -0
- package/esm2015/lib/component/core/icon/icon.component.js +31 -0
- package/esm2015/lib/component/core/image-display/image-display.component.js +29 -0
- package/esm2015/lib/component/core/relation/customer-groups.component.js +40 -0
- package/esm2015/lib/component/core/stock-status-indicator/stock-status-indicator.component.js +24 -0
- package/esm2015/lib/component/discount/discount.component.js +107 -0
- package/esm2015/lib/component/discount/discount.module.js +29 -0
- package/esm2015/lib/component/relation-address/relation-address.component.js +125 -0
- package/esm2015/lib/component/relation-address/relation-address.module.js +28 -0
- package/esm2015/lib/component/relation-address-select/relation-address-select.component.js +146 -0
- package/esm2015/lib/component/relation-address-select/relation-address-select.module.js +33 -0
- package/esm2015/lib/component/relation-address-tile/relation-address-tile.component.js +73 -0
- package/esm2015/lib/component/relation-address-tile/relation-address-tile.module.js +30 -0
- package/esm2015/lib/component/shared/transaction-article-text/transaction-article-text.component.js +118 -0
- package/esm2015/lib/component/shared/transaction-article-text/transaction-article-text.module.js +31 -0
- package/esm2015/lib/component/shared/transaction-article-text-overview/transaction-article-text-overview.component.js +129 -0
- package/esm2015/lib/component/shared/transaction-article-text-overview/transaction-article-text-overview.module.js +34 -0
- package/esm2015/lib/component/shopping-cart/shopping-cart.component.js +57 -0
- package/esm2015/lib/component/shopping-cart/shopping-cart.module.js +27 -0
- package/esm2015/lib/component/shopping-cart-preview/shopping-cart-preview.component.js +51 -0
- package/esm2015/lib/component/shopping-cart-preview/shopping-cart-preview.module.js +29 -0
- package/esm2015/lib/component/stepper/component/stepper-step.component.js +40 -0
- package/esm2015/lib/component/stepper/stepper.component.js +126 -0
- package/esm2015/lib/component/stepper/stepper.module.js +26 -0
- package/esm2015/lib/component/transaction/transaction.component.js +96 -0
- package/esm2015/lib/component/transaction/transaction.module.js +39 -0
- package/esm2015/lib/component/transaction-header/transaction-header.component.js +36 -0
- package/esm2015/lib/component/transaction-header/transaction-header.module.js +27 -0
- package/esm2015/lib/component/transaction-header-contact/transaction-header-contact.component.js +34 -0
- package/esm2015/lib/component/transaction-header-contact/transaction-header-contact.module.js +19 -0
- package/esm2015/lib/component/transaction-header-delivery/transaction-header-delivery.component.js +57 -0
- package/esm2015/lib/component/transaction-header-delivery/transaction-header-delivery.module.js +21 -0
- package/esm2015/lib/component/transaction-header-relation/transaction-header-relation.component.js +35 -0
- package/esm2015/lib/component/transaction-header-relation/transaction-header-relation.module.js +19 -0
- package/esm2015/lib/component/transaction-line/transaction-line.component.js +250 -0
- package/esm2015/lib/component/transaction-line/transaction-line.module.js +30 -0
- package/esm2015/lib/component/transaction-line-grid/transaction-line-grid.component.js +23 -0
- package/esm2015/lib/component/transaction-line-grid/transaction-line-grid.module.js +21 -0
- package/esm2015/lib/component/transaction-lines/transaction-lines.component.js +117 -0
- package/esm2015/lib/component/transaction-lines/transaction-lines.module.js +31 -0
- package/esm2015/lib/component/transaction-lines-grid/transaction-lines-grid.component.js +58 -0
- package/esm2015/lib/component/transaction-lines-grid/transaction-lines-grid.module.js +26 -0
- package/esm2015/lib/component/transaction-totals/transaction-totals.component.js +44 -0
- package/esm2015/lib/component/transaction-totals/transaction-totals.module.js +23 -0
- package/esm2015/lib/enum/content-view-mode.enum.js +10 -0
- package/esm2015/lib/enum/icon.enum.js +17 -0
- package/esm2015/lib/enum/language-code.enum.js +8 -0
- package/esm2015/lib/enum/order-discount-type.enum.js +7 -0
- package/esm2015/lib/enum/time-size.type.js +10 -0
- package/esm2015/lib/factory/business-object-factory.js +120 -0
- package/esm2015/lib/factory/decorators/boolean.decorator.js +102 -0
- package/esm2015/lib/factory/decorators/complex-array.decorator.js +55 -0
- package/esm2015/lib/factory/decorators/complex-field.decorator.js +57 -0
- package/esm2015/lib/factory/decorators/date-field.decorator.js +36 -0
- package/esm2015/lib/factory/decorators/string-number.decorator.js +43 -0
- package/esm2015/lib/model/business-object.js +81 -0
- package/esm2015/lib/model/icon-svg.js +16 -0
- package/esm2015/lib/model/standard-text.js +3 -0
- package/esm2015/lib/model/text-value-container.js +3 -0
- package/esm2015/lib/pipe/append.pipe.js +17 -0
- package/esm2015/lib/pipe/co-currency.pipe.js +47 -0
- package/esm2015/lib/pipe/date-duration.pipe.js +57 -0
- package/esm2015/lib/pipe/delivery-time.pipe.js +33 -0
- package/esm2015/lib/pipe/localize.pipe.js +28 -0
- package/esm2015/lib/pipe/pipe.module.js +37 -0
- package/esm2015/lib/pipe/safe-html.pipe.js +19 -0
- package/esm2015/lib/pipe/safe-style.pipe.js +19 -0
- package/esm2015/lib/service/dialog.service.js +65 -0
- package/esm2015/lib/service/dictionary.service.js +76 -0
- package/esm2015/lib/service/icon-cache.service.js +51 -0
- package/esm2015/lib/service/ione-connector-adapter.service.js +578 -0
- package/esm2015/lib/service/options.service.js +69 -0
- package/esm2015/lib/service/pending-reason.service.js +171 -0
- package/esm2015/lib/service/transaction.service.js +513 -0
- package/esm2015/lib/utils/array-utils.js +183 -0
- package/esm2015/lib/utils/is-nill.function.js +5 -0
- package/esm2015/lib/utils/string-utils.js +64 -0
- package/esm2015/public_api.js +28 -10
- package/fesm2015/colijnit-transaction.js +5287 -7210
- package/fesm2015/colijnit-transaction.js.map +1 -1
- package/{assets → lib/assets}/dictionary/text.properties.d.ts +0 -0
- package/{app → lib}/component/checkout/checkout-login/checkout-login.component.d.ts +0 -0
- package/lib/component/checkout/checkout-login/checkout-login.component.scss +35 -0
- package/{app → lib}/component/checkout/checkout-overview-delivery-address/checkout-overview-delivery-address.component.d.ts +0 -0
- package/lib/component/checkout/checkout-overview-delivery-address/checkout-overview-delivery-address.component.scss +0 -0
- package/{app → lib}/component/checkout/checkout-overview-delivery-edit/checkout-overview-delivery-edit.component.d.ts +38 -14
- package/lib/component/checkout/checkout-overview-delivery-edit/style/_layout.scss +91 -0
- package/lib/component/checkout/checkout-overview-delivery-edit/style/_material-definition.scss +12 -0
- package/lib/component/checkout/checkout-overview-delivery-edit/style/_theme.scss +17 -0
- package/lib/component/checkout/checkout-overview-delivery-edit/style/material.scss +8 -0
- package/{app → lib}/component/checkout/checkout-overview-relation-edit/checkout-overview-relation-edit.component.d.ts +12 -13
- package/lib/component/checkout/checkout-overview-relation-edit/style/_layout.scss +97 -0
- package/lib/component/checkout/checkout-overview-relation-edit/style/_material-definition.scss +17 -0
- package/lib/component/checkout/checkout-overview-relation-edit/style/_theme.scss +9 -0
- package/lib/component/checkout/checkout-overview-relation-edit/style/material.scss +6 -0
- package/{app → lib}/component/checkout/checkout-relation-suggestions-list/checkout-relation-suggestions-list.component.d.ts +2 -3
- package/lib/component/checkout/checkout-relation-suggestions-list/style/_layout.scss +7 -0
- package/lib/component/checkout/checkout-relation-suggestions-list/style/_material-definition.scss +0 -0
- package/lib/component/checkout/checkout-relation-suggestions-list/style/_theme.scss +6 -0
- package/lib/component/checkout/checkout-relation-suggestions-list/style/material.scss +5 -0
- package/lib/component/checkout/checkout-relation-suggestions-list-item/checkout-relation-suggestions-list-item.component.d.ts +8 -0
- package/lib/component/checkout/checkout-relation-suggestions-list-item/style/_layout.scss +34 -0
- package/lib/component/checkout/checkout-relation-suggestions-list-item/style/_material-definition.scss +8 -0
- package/lib/component/checkout/checkout-relation-suggestions-list-item/style/_theme.scss +6 -0
- package/lib/component/checkout/checkout-relation-suggestions-list-item/style/material.scss +4 -0
- package/lib/component/checkout/checkout.component.d.ts +27 -0
- package/lib/component/checkout/checkout.module.d.ts +2 -0
- package/lib/component/checkout/style/_layout.scss +6 -0
- package/lib/component/checkout/style/_material-definition.scss +0 -0
- package/lib/component/checkout/style/_theme.scss +8 -0
- package/lib/component/checkout/style/material.scss +8 -0
- package/lib/component/confirmation-dialog/confirmation-dialog.component.d.ts +8 -0
- package/lib/component/confirmation-dialog/confirmation-dialog.module.d.ts +2 -0
- package/lib/component/confirmation-dialog/style/_layout.scss +22 -0
- package/lib/component/confirmation-dialog/style/_material-definition.scss +2 -0
- package/lib/component/confirmation-dialog/style/_theme.scss +6 -0
- package/lib/component/confirmation-dialog/style/material.scss +4 -0
- package/lib/component/core/base/dialog-base.component.d.ts +4 -0
- package/lib/component/core/base/style/_layout.scss +7 -0
- package/lib/component/core/base/style/_material-definition.scss +0 -0
- package/lib/component/core/base/style/_theme.scss +6 -0
- package/lib/component/core/base/style/material.scss +4 -0
- package/{app → lib}/component/core/base/transaction-base.component.d.ts +7 -23
- package/lib/component/core/characteristic-answer/characteristic-answer.component.scss +20 -0
- package/{app → lib}/component/core/core.module.d.ts +0 -0
- package/lib/component/core/enum/app-popup-button-type.enum.d.ts +9 -0
- package/{app/component/common → lib/component/core}/icon/icon.component.d.ts +3 -2
- package/lib/component/core/icon/icon.component.scss +87 -0
- package/lib/component/core/image-display/image-display.component.d.ts +5 -0
- package/lib/component/core/image-display/style/_layout.scss +57 -0
- package/lib/component/core/image-display/style/_material-definition.scss +4 -0
- package/lib/component/core/image-display/style/_theme.scss +6 -0
- package/lib/component/core/image-display/style/material.scss +4 -0
- package/lib/component/core/relation/customer-groups.component.d.ts +13 -0
- package/{app → lib}/component/core/stock-status-indicator/stock-status-indicator.component.d.ts +0 -0
- package/lib/component/core/stock-status-indicator/stock-status-indicator.component.scss +47 -0
- package/lib/component/discount/discount.component.d.ts +19 -0
- package/lib/component/discount/discount.module.d.ts +2 -0
- package/lib/component/discount/style/_layout.scss +0 -0
- package/lib/component/discount/style/_material-definition.scss +0 -0
- package/lib/component/discount/style/_theme.scss +0 -0
- package/lib/component/discount/style/material.scss +0 -0
- package/lib/component/relation-address/relation-address.component.d.ts +28 -0
- package/lib/component/relation-address/relation-address.module.d.ts +2 -0
- package/lib/component/relation-address/style/_layout.scss +20 -0
- package/lib/component/relation-address/style/_material-definition.scss +3 -0
- package/lib/component/relation-address/style/_theme.scss +7 -0
- package/lib/component/relation-address/style/material.scss +5 -0
- package/lib/component/relation-address-select/relation-address-select.component.d.ts +33 -0
- package/lib/component/relation-address-select/relation-address-select.module.d.ts +2 -0
- package/lib/component/relation-address-select/style/_layout.scss +85 -0
- package/lib/component/relation-address-select/style/_material-definition.scss +4 -0
- package/lib/component/relation-address-select/style/_theme.scss +6 -0
- package/lib/component/relation-address-select/style/material.scss +5 -0
- package/lib/component/relation-address-tile/relation-address-tile.component.d.ts +13 -0
- package/lib/component/relation-address-tile/relation-address-tile.module.d.ts +2 -0
- package/lib/component/relation-address-tile/style/_layout.scss +63 -0
- package/lib/component/relation-address-tile/style/_material-definition.scss +15 -0
- package/lib/component/relation-address-tile/style/_theme.scss +51 -0
- package/lib/component/relation-address-tile/style/material.scss +4 -0
- package/lib/component/service-order/service-order.component.scss +154 -0
- package/lib/component/service-order/summary/transaction-delivery-summary.component.scss +22 -0
- package/lib/component/service-order/summary/transaction-summary-block.component.scss +109 -0
- package/lib/component/service-order/transaction-edit-article-text/transaction-edit-article-text.component.scss +0 -0
- package/lib/component/service-order/transaction-manager/transaction-manager.component.scss +54 -0
- package/lib/component/service-order/transaction-order-line-view/transaction-order-line-view.component.scss +90 -0
- package/lib/component/service-order/transaction-order-lines/transaction-order-lines.component.scss +85 -0
- package/lib/component/service-order/transaction-order-totals/transaction-order-totals.component.scss +26 -0
- package/lib/component/service-order/transaction-relation/transaction-relation-edit.component.scss +24 -0
- package/lib/component/service-order/transaction-sidebar/transaction-line-accordion.component.scss +0 -0
- package/lib/component/service-order/transaction-sidebar/transaction-sidebar-right.component.scss +17 -0
- package/lib/component/service-order/warehouse/warehouse.component.scss +54 -0
- package/lib/component/shared/transaction-article-text/style/_layout.scss +42 -0
- package/lib/component/shared/transaction-article-text/style/_material-definition.scss +7 -0
- package/lib/component/shared/transaction-article-text/style/_theme.scss +11 -0
- package/lib/component/shared/transaction-article-text/style/material.scss +5 -0
- package/lib/component/shared/transaction-article-text/transaction-article-text.component.d.ts +31 -0
- package/lib/component/shared/transaction-article-text/transaction-article-text.module.d.ts +2 -0
- package/lib/component/shared/transaction-article-text-overview/style/_layout.scss +56 -0
- package/lib/component/shared/transaction-article-text-overview/style/_material-definition.scss +9 -0
- package/lib/component/shared/transaction-article-text-overview/style/_theme.scss +9 -0
- package/lib/component/shared/transaction-article-text-overview/style/material.scss +4 -0
- package/lib/component/shared/transaction-article-text-overview/transaction-article-text-overview.component.d.ts +30 -0
- package/lib/component/shared/transaction-article-text-overview/transaction-article-text-overview.module.d.ts +2 -0
- package/lib/component/shopping-cart/shopping-cart.component.d.ts +15 -0
- package/lib/component/shopping-cart/shopping-cart.module.d.ts +2 -0
- package/lib/component/shopping-cart/style/_layout.scss +33 -0
- package/lib/component/shopping-cart/style/_material-definition.scss +10 -0
- package/lib/component/shopping-cart/style/_theme.scss +14 -0
- package/lib/component/shopping-cart/style/material.scss +4 -0
- package/lib/component/shopping-cart-OLD/shopping-cart-manager/shopping-cart-manager.component.scss +54 -0
- package/lib/component/shopping-cart-preview/shopping-cart-preview.component.d.ts +11 -0
- package/lib/component/shopping-cart-preview/shopping-cart-preview.module.d.ts +2 -0
- package/lib/component/shopping-cart-preview/style/_layout.scss +44 -0
- package/lib/component/shopping-cart-preview/style/_material-definition.scss +20 -0
- package/lib/component/shopping-cart-preview/style/_theme.scss +17 -0
- package/lib/component/shopping-cart-preview/style/material.scss +4 -0
- package/lib/component/stepper/component/stepper-step.component.d.ts +12 -0
- package/lib/component/stepper/stepper.component.d.ts +30 -0
- package/lib/component/stepper/stepper.module.d.ts +2 -0
- package/lib/component/stepper/style/_layout.scss +75 -0
- package/lib/component/stepper/style/_material-definition.scss +11 -0
- package/lib/component/stepper/style/_theme.scss +7 -0
- package/lib/component/stepper/style/material.scss +4 -0
- package/lib/component/transaction/style/_layout.scss +25 -0
- package/lib/component/transaction/style/_material-definition.scss +7 -0
- package/lib/component/transaction/style/_theme.scss +24 -0
- package/lib/component/transaction/style/material.scss +8 -0
- package/lib/component/transaction/transaction.component.d.ts +24 -0
- package/lib/component/transaction/transaction.module.d.ts +2 -0
- package/lib/component/transaction-header/style/_layout.scss +38 -0
- package/lib/component/transaction-header/style/_material-definition.scss +8 -0
- package/lib/component/transaction-header/style/_theme.scss +11 -0
- package/lib/component/transaction-header/style/material.scss +7 -0
- package/lib/component/transaction-header/transaction-header.component.d.ts +9 -0
- package/lib/component/transaction-header/transaction-header.module.d.ts +2 -0
- package/lib/component/transaction-header-contact/style/_layout.scss +25 -0
- package/lib/component/transaction-header-contact/style/_material-definition.scss +7 -0
- package/lib/component/transaction-header-contact/style/_theme.scss +11 -0
- package/lib/component/transaction-header-contact/style/material.scss +4 -0
- package/lib/component/transaction-header-contact/transaction-header-contact.component.d.ts +4 -0
- package/lib/component/transaction-header-contact/transaction-header-contact.module.d.ts +2 -0
- package/lib/component/transaction-header-delivery/style/_layout.scss +54 -0
- package/lib/component/transaction-header-delivery/style/_material-definition.scss +12 -0
- package/lib/component/transaction-header-delivery/style/_theme.scss +24 -0
- package/lib/component/transaction-header-delivery/style/material.scss +4 -0
- package/lib/component/transaction-header-delivery/transaction-header-delivery.component.d.ts +13 -0
- package/lib/component/transaction-header-delivery/transaction-header-delivery.module.d.ts +2 -0
- package/lib/component/transaction-header-relation/style/_layout.scss +25 -0
- package/lib/component/transaction-header-relation/style/_material-definition.scss +7 -0
- package/lib/component/transaction-header-relation/style/_theme.scss +11 -0
- package/lib/component/transaction-header-relation/style/material.scss +4 -0
- package/lib/component/transaction-header-relation/transaction-header-relation.component.d.ts +4 -0
- package/lib/component/transaction-header-relation/transaction-header-relation.module.d.ts +2 -0
- package/lib/component/transaction-line/style/_layout.scss +143 -0
- package/lib/component/transaction-line/style/_material-definition.scss +29 -0
- package/lib/component/transaction-line/style/_theme.scss +36 -0
- package/lib/component/transaction-line/style/material.scss +8 -0
- package/lib/component/transaction-line/transaction-line.component.d.ts +46 -0
- package/lib/component/transaction-line/transaction-line.module.d.ts +2 -0
- package/lib/component/transaction-line-grid/style/_layout.scss +6 -0
- package/lib/component/transaction-line-grid/style/_material-definition.scss +0 -0
- package/lib/component/transaction-line-grid/style/_theme.scss +6 -0
- package/lib/component/transaction-line-grid/style/material.scss +4 -0
- package/lib/component/transaction-line-grid/transaction-line-grid.component.d.ts +5 -0
- package/lib/component/transaction-line-grid/transaction-line-grid.module.d.ts +2 -0
- package/lib/component/transaction-lines/style/_layout.scss +33 -0
- package/lib/component/transaction-lines/style/_material-definition.scss +3 -0
- package/lib/component/transaction-lines/style/_theme.scss +19 -0
- package/lib/component/transaction-lines/style/material.scss +7 -0
- package/lib/component/transaction-lines/transaction-lines.component.d.ts +31 -0
- package/lib/component/transaction-lines/transaction-lines.module.d.ts +2 -0
- package/lib/component/transaction-lines-grid/style/_layout.scss +37 -0
- package/lib/component/transaction-lines-grid/style/_material-definition.scss +19 -0
- package/lib/component/transaction-lines-grid/style/_theme.scss +15 -0
- package/lib/component/transaction-lines-grid/style/material.scss +5 -0
- package/lib/component/transaction-lines-grid/transaction-lines-grid.component.d.ts +17 -0
- package/lib/component/transaction-lines-grid/transaction-lines-grid.module.d.ts +2 -0
- package/lib/component/transaction-totals/style/_layout.scss +35 -0
- package/lib/component/transaction-totals/style/_material-definition.scss +15 -0
- package/lib/component/transaction-totals/style/_theme.scss +10 -0
- package/lib/component/transaction-totals/style/material.scss +4 -0
- package/lib/component/transaction-totals/transaction-totals.component.d.ts +9 -0
- package/lib/component/transaction-totals/transaction-totals.module.d.ts +2 -0
- package/{app → lib}/enum/content-view-mode.enum.d.ts +0 -0
- package/lib/enum/icon.enum.d.ts +15 -0
- package/{app → lib}/enum/language-code.enum.d.ts +0 -0
- package/{app → lib}/enum/order-discount-type.enum.d.ts +0 -0
- package/{app → lib}/enum/time-size.type.d.ts +0 -0
- package/{factory → lib/factory}/business-object-factory.d.ts +1 -1
- package/{factory → lib/factory}/decorators/boolean.decorator.d.ts +0 -0
- package/{factory → lib/factory}/decorators/complex-array.decorator.d.ts +0 -0
- package/{factory → lib/factory}/decorators/complex-field.decorator.d.ts +0 -0
- package/{factory → lib/factory}/decorators/date-field.decorator.d.ts +0 -0
- package/{factory → lib/factory}/decorators/string-number.decorator.d.ts +0 -0
- package/{app → lib}/model/business-object.d.ts +0 -0
- package/lib/model/icon-svg.d.ts +4 -0
- package/{app → lib}/model/standard-text.d.ts +0 -0
- package/{app → lib}/model/text-value-container.d.ts +0 -0
- package/{app → lib}/pipe/append.pipe.d.ts +0 -0
- package/{app → lib}/pipe/co-currency.pipe.d.ts +0 -0
- package/{app → lib}/pipe/date-duration.pipe.d.ts +0 -0
- package/{app → lib}/pipe/delivery-time.pipe.d.ts +0 -0
- package/{app → lib}/pipe/localize.pipe.d.ts +0 -0
- package/lib/pipe/pipe.module.d.ts +2 -0
- package/lib/pipe/safe-html.pipe.d.ts +7 -0
- package/{app/pipe/safe-style-pipe.d.ts → lib/pipe/safe-style.pipe.d.ts} +0 -0
- package/lib/service/dialog.service.d.ts +11 -0
- package/{app → lib}/service/dictionary.service.d.ts +0 -0
- package/lib/service/icon-cache.service.d.ts +18 -0
- package/{app → lib}/service/ione-connector-adapter.service.d.ts +12 -7
- package/lib/service/options.service.d.ts +12 -0
- package/lib/service/pending-reason.service.d.ts +31 -0
- package/{app → lib}/service/transaction.service.d.ts +13 -47
- package/lib/style/_mixin.scss +9 -0
- package/lib/style/_variables.scss +93 -0
- package/{utils → lib/utils}/array-utils.d.ts +0 -0
- package/{utils → lib/utils}/is-nill.function.d.ts +0 -0
- package/{app → lib}/utils/string-utils.d.ts +0 -0
- package/package.json +27 -34
- package/public_api.d.ts +27 -6
- package/app/component/checkout/checkout/checkout.component.d.ts +0 -32
- package/app/component/checkout/checkout-overview/checkout-overview.component.d.ts +0 -42
- package/app/component/checkout/checkout-overview-block/checkout-overview-block.component.d.ts +0 -12
- package/app/component/checkout/checkout-overview-relation-address/checkout-overview-relation-address.component.d.ts +0 -22
- package/app/component/checkout/checkout-relation-suggestions-list-item/checkout-relation-suggestions-list-item.component.d.ts +0 -12
- package/app/component/checkout/ione-checkout.component.d.ts +0 -41
- package/app/component/checkout/ione-checkout.module.d.ts +0 -2
- package/app/component/checkout/retail-transaction-checkout/retail-transaction-checkout.component.d.ts +0 -13
- package/app/component/common/image-display/image-display.component.d.ts +0 -13
- package/app/component/common/no-image-display/no-image-display.component.d.ts +0 -5
- package/app/component/core/base/default-ok-cancel-buttons.component.d.ts +0 -13
- package/app/component/core/characteristic-answer/characteristic-answer.component.d.ts +0 -22
- package/app/component/core/directive/template-wrapper.directive.d.ts +0 -13
- package/app/component/service-order/ione-service-order-module.d.ts +0 -2
- package/app/component/service-order/ione-service-order.component.d.ts +0 -25
- package/app/component/service-order/service-order.component.d.ts +0 -52
- package/app/component/service-order/summary/transaction-article-summary.component.d.ts +0 -17
- package/app/component/service-order/summary/transaction-delivery-summary.component.d.ts +0 -20
- package/app/component/service-order/summary/transaction-order-summary.component.d.ts +0 -16
- package/app/component/service-order/summary/transaction-payment-info.component.d.ts +0 -14
- package/app/component/service-order/summary/transaction-product-contract-summary.component.d.ts +0 -7
- package/app/component/service-order/summary/transaction-product-summary.component.d.ts +0 -15
- package/app/component/service-order/summary/transaction-service-status.component.d.ts +0 -15
- package/app/component/service-order/summary/transaction-service-summary.component.d.ts +0 -15
- package/app/component/service-order/summary/transaction-summary-block.component.d.ts +0 -16
- package/app/component/service-order/transaction-article-text/transaction-article-text.component.d.ts +0 -33
- package/app/component/service-order/transaction-article-text-overview/transaction-article-text-overview.component.d.ts +0 -23
- package/app/component/service-order/transaction-edit-article-text/transaction-edit-article-text.component.d.ts +0 -19
- package/app/component/service-order/transaction-header-block/transaction-header-block.component.d.ts +0 -15
- package/app/component/service-order/transaction-manager/transaction-manager.component.d.ts +0 -64
- package/app/component/service-order/transaction-order-line-view/transaction-order-line-view.component.d.ts +0 -16
- package/app/component/service-order/transaction-order-lines/transaction-order-lines.component.d.ts +0 -25
- package/app/component/service-order/transaction-order-totals/transaction-order-totals.component.d.ts +0 -6
- package/app/component/service-order/transaction-relation/transaction-relation-address.component.d.ts +0 -22
- package/app/component/service-order/transaction-relation/transaction-relation-edit.component.d.ts +0 -29
- package/app/component/service-order/transaction-sidebar/transaction-line-accordion.component.d.ts +0 -11
- package/app/component/service-order/transaction-sidebar/transaction-sidebar-right.component.d.ts +0 -26
- package/app/component/service-order/warehouse/warehouse.component.d.ts +0 -35
- package/app/component/shopping-cart/ione-shopping-cart.component.d.ts +0 -71
- package/app/component/shopping-cart/ione-shopping-cart.module.d.ts +0 -2
- package/app/component/shopping-cart/shopping-cart/shopping-cart.component.d.ts +0 -61
- package/app/component/shopping-cart/shopping-cart-line/shopping-cart-line.component.d.ts +0 -34
- package/app/component/shopping-cart/shopping-cart-manager/shopping-cart-manager.component.d.ts +0 -91
- package/app/enum/checkout-steps.enum.d.ts +0 -7
- package/app/enum/direction.enum.d.ts +0 -6
- package/app/model/transaction-add-text-line-request.d.ts +0 -9
- package/app/service/options.service.d.ts +0 -14
- package/app/service/transaction-event.service.d.ts +0 -53
- package/css/styles.css +0 -38
- package/enum/position-grid-row.enum.d.ts +0 -4
- package/esm2015/app/component/checkout/checkout/checkout.component.js +0 -149
- package/esm2015/app/component/checkout/checkout-login/checkout-login.component.js +0 -106
- package/esm2015/app/component/checkout/checkout-overview/checkout-overview.component.js +0 -185
- package/esm2015/app/component/checkout/checkout-overview-block/checkout-overview-block.component.js +0 -47
- package/esm2015/app/component/checkout/checkout-overview-delivery-address/checkout-overview-delivery-address.component.js +0 -47
- package/esm2015/app/component/checkout/checkout-overview-delivery-edit/checkout-overview-delivery-edit.component.js +0 -420
- package/esm2015/app/component/checkout/checkout-overview-relation-address/checkout-overview-relation-address.component.js +0 -115
- package/esm2015/app/component/checkout/checkout-overview-relation-edit/checkout-overview-relation-edit.component.js +0 -396
- package/esm2015/app/component/checkout/checkout-relation-suggestions-list/checkout-relation-suggestions-list.component.js +0 -33
- package/esm2015/app/component/checkout/checkout-relation-suggestions-list-item/checkout-relation-suggestions-list-item.component.js +0 -53
- package/esm2015/app/component/checkout/ione-checkout.component.js +0 -137
- package/esm2015/app/component/checkout/ione-checkout.module.js +0 -76
- package/esm2015/app/component/checkout/retail-transaction-checkout/retail-transaction-checkout.component.js +0 -53
- package/esm2015/app/component/common/icon/icon.component.js +0 -32
- package/esm2015/app/component/common/image-display/image-display.component.js +0 -41
- package/esm2015/app/component/common/no-image-display/no-image-display.component.js +0 -26
- package/esm2015/app/component/core/base/default-ok-cancel-buttons.component.js +0 -39
- package/esm2015/app/component/core/base/transaction-base.component.js +0 -146
- package/esm2015/app/component/core/characteristic-answer/characteristic-answer.component.js +0 -100
- package/esm2015/app/component/core/core.module.js +0 -43
- package/esm2015/app/component/core/directive/template-wrapper.directive.js +0 -69
- package/esm2015/app/component/core/stock-status-indicator/stock-status-indicator.component.js +0 -24
- package/esm2015/app/component/service-order/ione-service-order-module.js +0 -114
- package/esm2015/app/component/service-order/ione-service-order.component.js +0 -96
- package/esm2015/app/component/service-order/service-order.component.js +0 -199
- package/esm2015/app/component/service-order/summary/transaction-article-summary.component.js +0 -55
- package/esm2015/app/component/service-order/summary/transaction-delivery-summary.component.js +0 -59
- package/esm2015/app/component/service-order/summary/transaction-order-summary.component.js +0 -43
- package/esm2015/app/component/service-order/summary/transaction-payment-info.component.js +0 -35
- package/esm2015/app/component/service-order/summary/transaction-product-contract-summary.component.js +0 -38
- package/esm2015/app/component/service-order/summary/transaction-product-summary.component.js +0 -41
- package/esm2015/app/component/service-order/summary/transaction-service-status.component.js +0 -37
- package/esm2015/app/component/service-order/summary/transaction-service-summary.component.js +0 -38
- package/esm2015/app/component/service-order/summary/transaction-summary-block.component.js +0 -53
- package/esm2015/app/component/service-order/transaction-article-text/transaction-article-text.component.js +0 -140
- package/esm2015/app/component/service-order/transaction-article-text-overview/transaction-article-text-overview.component.js +0 -105
- package/esm2015/app/component/service-order/transaction-edit-article-text/transaction-edit-article-text.component.js +0 -73
- package/esm2015/app/component/service-order/transaction-header-block/transaction-header-block.component.js +0 -83
- package/esm2015/app/component/service-order/transaction-manager/transaction-manager.component.js +0 -314
- package/esm2015/app/component/service-order/transaction-order-line-view/transaction-order-line-view.component.js +0 -76
- package/esm2015/app/component/service-order/transaction-order-lines/transaction-order-lines.component.js +0 -71
- package/esm2015/app/component/service-order/transaction-order-totals/transaction-order-totals.component.js +0 -36
- package/esm2015/app/component/service-order/transaction-relation/transaction-relation-address.component.js +0 -116
- package/esm2015/app/component/service-order/transaction-relation/transaction-relation-edit.component.js +0 -225
- package/esm2015/app/component/service-order/transaction-sidebar/transaction-line-accordion.component.js +0 -172
- package/esm2015/app/component/service-order/transaction-sidebar/transaction-sidebar-right.component.js +0 -120
- package/esm2015/app/component/service-order/warehouse/warehouse.component.js +0 -133
- package/esm2015/app/component/shopping-cart/ione-shopping-cart.component.js +0 -185
- package/esm2015/app/component/shopping-cart/ione-shopping-cart.module.js +0 -62
- package/esm2015/app/component/shopping-cart/shopping-cart/shopping-cart.component.js +0 -294
- package/esm2015/app/component/shopping-cart/shopping-cart-line/shopping-cart-line.component.js +0 -172
- package/esm2015/app/component/shopping-cart/shopping-cart-manager/shopping-cart-manager.component.js +0 -451
- package/esm2015/app/enum/checkout-steps.enum.js +0 -10
- package/esm2015/app/enum/content-view-mode.enum.js +0 -10
- package/esm2015/app/enum/direction.enum.js +0 -9
- package/esm2015/app/enum/language-code.enum.js +0 -8
- package/esm2015/app/enum/order-discount-type.enum.js +0 -7
- package/esm2015/app/enum/time-size.type.js +0 -10
- package/esm2015/app/model/business-object.js +0 -81
- package/esm2015/app/model/standard-text.js +0 -3
- package/esm2015/app/model/text-value-container.js +0 -3
- package/esm2015/app/model/transaction-add-text-line-request.js +0 -11
- package/esm2015/app/pipe/append.pipe.js +0 -17
- package/esm2015/app/pipe/co-currency.pipe.js +0 -47
- package/esm2015/app/pipe/date-duration.pipe.js +0 -57
- package/esm2015/app/pipe/delivery-time.pipe.js +0 -33
- package/esm2015/app/pipe/localize.pipe.js +0 -28
- package/esm2015/app/pipe/safe-style-pipe.js +0 -19
- package/esm2015/app/service/dictionary.service.js +0 -76
- package/esm2015/app/service/ione-connector-adapter.service.js +0 -553
- package/esm2015/app/service/options.service.js +0 -92
- package/esm2015/app/service/transaction-event.service.js +0 -26
- package/esm2015/app/service/transaction.service.js +0 -572
- package/esm2015/app/utils/string-utils.js +0 -64
- package/esm2015/assets/dictionary/text.properties.js +0 -332
- package/esm2015/enum/position-grid-row.enum.js +0 -6
- package/esm2015/factory/business-object-factory.js +0 -120
- package/esm2015/factory/decorators/boolean.decorator.js +0 -102
- package/esm2015/factory/decorators/complex-array.decorator.js +0 -55
- package/esm2015/factory/decorators/complex-field.decorator.js +0 -57
- package/esm2015/factory/decorators/date-field.decorator.js +0 -36
- package/esm2015/factory/decorators/string-number.decorator.js +0 -43
- package/esm2015/utils/array-utils.js +0 -183
- package/esm2015/utils/is-nill.function.js +0 -5
|
@@ -1,294 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectorRef, Component, EventEmitter, HostBinding, Input, Output, ViewChild } from "@angular/core";
|
|
2
|
-
import { DictionaryService } from "../../../service/dictionary.service";
|
|
3
|
-
import { TransactionService } from "../../../service/transaction.service";
|
|
4
|
-
import { OrderDiscountType } from "../../../enum/order-discount-type.enum";
|
|
5
|
-
import { SortDirection } from "@colijnit/transactionapi/build/enum/sort-direction";
|
|
6
|
-
import { SortType } from "@colijnit/transactionapi/build/enum/sort-type.enum";
|
|
7
|
-
import { CoreComponentsIcon, CoSidebarComponent, IconCacheService } from "@colijnit/corecomponents_v12";
|
|
8
|
-
import { TransactionEventService } from "../../../service/transaction-event.service";
|
|
9
|
-
import { ContentViewMode } from "../../../enum/content-view-mode.enum";
|
|
10
|
-
import { PositionGridRow } from "../../../../enum/position-grid-row.enum";
|
|
11
|
-
export class ShoppingCartComponent {
|
|
12
|
-
constructor(iconCacheService, _dictionary, service, _transactionEvents, _changeDetector) {
|
|
13
|
-
this.iconCacheService = iconCacheService;
|
|
14
|
-
this._dictionary = _dictionary;
|
|
15
|
-
this.service = service;
|
|
16
|
-
this._transactionEvents = _transactionEvents;
|
|
17
|
-
this._changeDetector = _changeDetector;
|
|
18
|
-
this.orderDiscountType = OrderDiscountType;
|
|
19
|
-
this.iconThickLines = CoreComponentsIcon.ThickLines;
|
|
20
|
-
this.iconThinLines = CoreComponentsIcon.ThinLines;
|
|
21
|
-
this.viewModes = ContentViewMode;
|
|
22
|
-
this.hideOverviewButton = false;
|
|
23
|
-
this.hideCheckoutButton = false;
|
|
24
|
-
this.hideCloseCartButton = false;
|
|
25
|
-
this.closeCart = new EventEmitter();
|
|
26
|
-
this.checkout = new EventEmitter();
|
|
27
|
-
this.overview = new EventEmitter();
|
|
28
|
-
this.activeViewMode = ContentViewMode.List;
|
|
29
|
-
this.columns = [];
|
|
30
|
-
this.contextMenuItems = [];
|
|
31
|
-
this.showDiscountsSidebar = false;
|
|
32
|
-
this._transactionUpdated = this.service.transactionUpdated.subscribe(() => {
|
|
33
|
-
this.setFilteredCollection(this.service.currentLines);
|
|
34
|
-
});
|
|
35
|
-
this.setFilteredCollection(this.service.currentLines);
|
|
36
|
-
const mediaQuery = "(min-width: 500px)";
|
|
37
|
-
this.columns.push({ field: "lineNr", headerText: this._dictionary.get("NR"), allowFiltering: false, allowSorting: false }, { field: "text", headerText: this._dictionary.get("TEXT") }, { field: "articleNumber", headerText: this._dictionary.get("ARTICLE_NR") }, { field: "goodDescription", headerText: this._dictionary.get("GOOD_DESCRIPTION"), hideAtMedia: mediaQuery }, { field: "amount", headerText: this._dictionary.get("NUMBER"), textAlign: "Right" }, { field: "price", headerText: this._dictionary.get("PRICE"), format: "C2", textAlign: "Right" }, { field: "priceListCode", headerText: this._dictionary.get("PRICE_LIST"), hideAtMedia: mediaQuery }, { field: "lineDiscount", headerText: this._dictionary.get("DISCOUNT_PERCENTAGE"), format: "C2", visible: false, hideAtMedia: mediaQuery, textAlign: "Right" }, { field: "specialDiscount", headerText: this._dictionary.get("SPECIAL_DISCOUNT"), format: "C2", visible: false, hideAtMedia: mediaQuery, textAlign: "Right" }, { field: "discountAmount", headerText: this._dictionary.get("DISCOUNT_AMOUNT"), format: "C2", visible: false, hideAtMedia: mediaQuery, textAlign: "Right" }, { field: "surchargeAmount", headerText: this._dictionary.get("SURCHARGE_AMOUNT"), format: "C2", visible: false, hideAtMedia: mediaQuery, textAlign: "Right" }, { field: "assemblyCost", headerText: this._dictionary.get("ASSEMBLY_COSTS"), format: "C2", visible: false, hideAtMedia: mediaQuery, textAlign: "Right" }, { field: "grossLineTotal", headerText: this._dictionary.get("TOTAL_GROSS"), format: "C2", visible: true, hideAtMedia: mediaQuery, textAlign: "Right" }, { field: "lineTotalDiscountAmount", headerText: this._dictionary.get("DISCOUNT"), format: "C2", visible: false, hideAtMedia: mediaQuery, textAlign: "Right" }, { field: "netLineTotal", headerText: this._dictionary.get("SUBTOTAL"), format: "C2", visible: false, textAlign: "Right" }, { field: "vatId", headerText: this._dictionary.get("VAT"), hideAtMedia: mediaQuery, visible: false, textAlign: "Right" }, { field: "priceDeclaration", headerText: this._dictionary.get("TRANSACTION_PRICE_DECLARATION"), visible: false, hideAtMedia: mediaQuery }, { field: "netto", headerText: this._dictionary.get("NETT"), format: "C2", hideAtMedia: mediaQuery, textAlign: "Right" }, { field: "warehouseNumber", headerText: this._dictionary.get("WAREHOUSE"), hideAtMedia: mediaQuery, textAlign: "Right" });
|
|
38
|
-
this.contextMenuItems.push({ text: this._dictionary.get("ADD_ARTICLE_LINE_UP"), target: ".e-content", id: "articleLineUp" }, { text: this._dictionary.get("ADD_ARTICLE_LINE_DOWN"), target: ".e-content", id: "articleLineDown" }, { text: this._dictionary.get("ADD_ARTICLE_TEXT_LINE_UP"), target: ".e-content", id: "articleTextLineUp" }, { text: this._dictionary.get("ADD_ARTICLE_TEXT_LINE_DOWN"), target: ".e-content", id: "articleTextLineDown" });
|
|
39
|
-
}
|
|
40
|
-
get filteredCollection() {
|
|
41
|
-
return this._filteredCollection;
|
|
42
|
-
}
|
|
43
|
-
setFilteredCollection(value) {
|
|
44
|
-
this._filteredCollection = value;
|
|
45
|
-
const sortByLineNr = {
|
|
46
|
-
active: true,
|
|
47
|
-
direction: SortDirection.Ascending,
|
|
48
|
-
property: "lineNr",
|
|
49
|
-
type: SortType.Number
|
|
50
|
-
};
|
|
51
|
-
// SortUtils.SortObjectArray(this._filteredCollection, [sortByLineNr]);
|
|
52
|
-
}
|
|
53
|
-
ngAfterViewInit() {
|
|
54
|
-
this.hideSidebar();
|
|
55
|
-
}
|
|
56
|
-
ngOnDestroy() {
|
|
57
|
-
this._transactionUpdated.unsubscribe();
|
|
58
|
-
}
|
|
59
|
-
getCartLabel() {
|
|
60
|
-
return this._dictionary.get("SHOPPING_CART_OVERVIEW", true) + "(" + this.service.articleAmount.toString() + ")";
|
|
61
|
-
}
|
|
62
|
-
addDiscount() {
|
|
63
|
-
this.showSidebar();
|
|
64
|
-
// TODO
|
|
65
|
-
// this.transactionDiscountPercentage = this.service.currentTransaction.transactionDiscountPercentage;
|
|
66
|
-
// this.transactionDiscountAmount = this.service.currentTransaction.transactionDiscountAmount;
|
|
67
|
-
// this.transactionTotal = undefined;
|
|
68
|
-
}
|
|
69
|
-
onStartDiscountInput(discountType, header) {
|
|
70
|
-
this.hideSidebar();
|
|
71
|
-
this.discountType = discountType;
|
|
72
|
-
this.discountHeader = header;
|
|
73
|
-
this.inputDiscounts = true;
|
|
74
|
-
}
|
|
75
|
-
openShoppingCartModule() {
|
|
76
|
-
this._transactionEvents.openShoppingCartModule.next();
|
|
77
|
-
this.closeCart.emit();
|
|
78
|
-
}
|
|
79
|
-
setDiscountHeader(discountType) {
|
|
80
|
-
switch (this.discountType) {
|
|
81
|
-
case OrderDiscountType.DiscountPercentage:
|
|
82
|
-
this.discountHeader = this._dictionary.get("DISCOUNT_PERCENTAGE", true);
|
|
83
|
-
break;
|
|
84
|
-
case OrderDiscountType.DiscountAmount:
|
|
85
|
-
this.discountHeader = this._dictionary.get("DISCOUNT_AMOUNT", true);
|
|
86
|
-
break;
|
|
87
|
-
case OrderDiscountType.OrderTotal:
|
|
88
|
-
this.discountHeader = this._dictionary.get("ORDER_TOTAL", true);
|
|
89
|
-
break;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
onInputDiscountsOkClick() {
|
|
93
|
-
let valueToUse;
|
|
94
|
-
switch (this.discountType) {
|
|
95
|
-
case OrderDiscountType.DiscountPercentage:
|
|
96
|
-
valueToUse = this.transactionDiscountPercentage;
|
|
97
|
-
break;
|
|
98
|
-
case OrderDiscountType.DiscountAmount:
|
|
99
|
-
valueToUse = this.transactionDiscountAmount;
|
|
100
|
-
break;
|
|
101
|
-
case OrderDiscountType.OrderTotal:
|
|
102
|
-
valueToUse = this.transactionTotal;
|
|
103
|
-
break;
|
|
104
|
-
}
|
|
105
|
-
//TODO this.service.setTransactionDiscounts(this.service.currentTransaction.uuid, this.discountType, valueToUse);
|
|
106
|
-
this.inputDiscounts = false;
|
|
107
|
-
}
|
|
108
|
-
trackByFn(index, line) {
|
|
109
|
-
return line.lineNr;
|
|
110
|
-
}
|
|
111
|
-
handleRowsSelected(rows) {
|
|
112
|
-
this._selectedRow = rows.find(x => x !== undefined);
|
|
113
|
-
}
|
|
114
|
-
showSidebar() {
|
|
115
|
-
this.showDiscountsSidebar = true;
|
|
116
|
-
this._changeDetector.detectChanges();
|
|
117
|
-
if (this.discountsSidebar) {
|
|
118
|
-
this.discountsSidebar.show();
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
hideSidebar() {
|
|
122
|
-
this.showDiscountsSidebar = false;
|
|
123
|
-
this._changeDetector.detectChanges();
|
|
124
|
-
if (this.discountsSidebar) {
|
|
125
|
-
this.discountsSidebar.hide();
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
menuItemClick(args) {
|
|
129
|
-
const lineNr = this._selectedRow.lineNr;
|
|
130
|
-
switch (args.item.id) {
|
|
131
|
-
case "articleLineUp":
|
|
132
|
-
// this._transactionEvents.addArticleLine.next({lineNr: lineNr, beforeOrAfter: PositionGridRow.Before});
|
|
133
|
-
this._transactionEvents.addArticleLineAt.next({ sku: "iPod", amount: 1, lineNr: lineNr, beforeOrAfter: PositionGridRow.Before });
|
|
134
|
-
break;
|
|
135
|
-
case "articleLineDown":
|
|
136
|
-
// this._transactionEvents.addArticleLine.next({lineNr: lineNr, beforeOrAfter: PositionGridRow.After});
|
|
137
|
-
this._transactionEvents.addArticleLineAt.next({ sku: "iPod", amount: 1, lineNr: lineNr, beforeOrAfter: PositionGridRow.After });
|
|
138
|
-
break;
|
|
139
|
-
case "articleTextLineUp":
|
|
140
|
-
// this._transactionEvents.addTextLine.next({lineNr: lineNr, beforeOrAfter: PositionGridRow.Before});
|
|
141
|
-
this._transactionEvents.addTextLineAt.next({ text: "textregel before", lineNr: lineNr, beforeOrAfter: PositionGridRow.Before });
|
|
142
|
-
break;
|
|
143
|
-
case "articleTextLineDown":
|
|
144
|
-
// this._transactionEvents.addTextLine.next({lineNr: lineNr, beforeOrAfter: PositionGridRow.After});
|
|
145
|
-
this._transactionEvents.addTextLineAt.next({ text: "textregel after", lineNr: lineNr, beforeOrAfter: PositionGridRow.After });
|
|
146
|
-
break;
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
rowDrop(args) {
|
|
150
|
-
this._transactionEvents.changeLineSequence.next({ fromIndex: args.fromIndex, toIndex: args.dropIndex });
|
|
151
|
-
// Transaction lines will be reloaded by previous action on success, not by failure. So, cancel the drop in all cases.
|
|
152
|
-
args.cancel = true;
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
ShoppingCartComponent.decorators = [
|
|
156
|
-
{ type: Component, args: [{
|
|
157
|
-
// eslint-disable-next-line @angular-eslint/component-selector
|
|
158
|
-
selector: "shopping-cart",
|
|
159
|
-
template: `
|
|
160
|
-
<div class="cart-header">
|
|
161
|
-
<span class="cart-header-label" [textContent]="getCartLabel()"></span>
|
|
162
|
-
<div class="view-mode-buttons">
|
|
163
|
-
<co-button [iconData]="iconCacheService.getIcon(iconThickLines)"
|
|
164
|
-
[title]="'LIST_VIEW' | localize"
|
|
165
|
-
(click)="this.activeViewMode = viewModes.List"
|
|
166
|
-
class="triangle white"
|
|
167
|
-
iconClass="medium light"></co-button>
|
|
168
|
-
<co-button [iconData]="iconCacheService.getIcon(iconThinLines)"
|
|
169
|
-
[title]="'GRID_VIEW' | localize"
|
|
170
|
-
(click)="this.activeViewMode = viewModes.Grid"
|
|
171
|
-
class="triangle white"
|
|
172
|
-
iconClass="medium light"></co-button>
|
|
173
|
-
</div>
|
|
174
|
-
</div>
|
|
175
|
-
<div class="cart-lines">
|
|
176
|
-
<div class="cart-list-wrapper" *ngIf="activeViewMode === viewModes.List" fxFlex="column">
|
|
177
|
-
<shopping-cart-line [overlayMode]="overlayMode" [overviewMode]="overviewMode"
|
|
178
|
-
*ngFor="let line of filteredCollection; trackBy:trackByFn;"
|
|
179
|
-
[line]="line"
|
|
180
|
-
></shopping-cart-line>
|
|
181
|
-
</div>
|
|
182
|
-
<div class="cart-list-wrapper" *ngIf="activeViewMode === viewModes.Grid" fxFlex="column">
|
|
183
|
-
<co-grid
|
|
184
|
-
[data]="filteredCollection"
|
|
185
|
-
[rowDragAndDropEnabled]="true"
|
|
186
|
-
[contextMenuItems]="contextMenuItems"
|
|
187
|
-
[sortingEnabled]="false"
|
|
188
|
-
[columns]="columns"
|
|
189
|
-
[pagingEnabled]="'true'"
|
|
190
|
-
[maxNumberOfRows]="'20'"
|
|
191
|
-
(rowsSelected)="handleRowsSelected($event)"
|
|
192
|
-
(contextMenuItemClick)="menuItemClick($event)"
|
|
193
|
-
(rowDropEvent)="rowDrop($event)"
|
|
194
|
-
></co-grid>
|
|
195
|
-
</div>
|
|
196
|
-
</div>
|
|
197
|
-
<div class="shopping-cart-totals" fxLayout="column" fxLayoutGap="10px">
|
|
198
|
-
<div fxLayout="row">
|
|
199
|
-
<span [textContent]="'ORDER_GROSS' | localize"></span>
|
|
200
|
-
<span [textContent]="service.currentTotals?.grossAmount | coCurrency: true"></span>
|
|
201
|
-
</div>
|
|
202
|
-
<div fxLayout="row" *ngIf="service.currentTotals?.discountAmount">
|
|
203
|
-
<span [textContent]="'DISCOUNT_AMOUNT' | localize"></span>
|
|
204
|
-
<span [textContent]="service.currentTotals?.discountAmount | coCurrency: true"></span>
|
|
205
|
-
</div>
|
|
206
|
-
<div fxLayout="row" *ngIf="service.currentTotals?.transactionDiscountAmount">
|
|
207
|
-
<span [textContent]="'TRANSACTION_DISCOUNT' | localize"></span>
|
|
208
|
-
<span [textContent]="service.currentTotals?.transactionDiscountAmount | coCurrency: true"></span>
|
|
209
|
-
</div>
|
|
210
|
-
<div fxLayout="row" *ngIf="service.currentTotals?.transactionDiscountPercentage">
|
|
211
|
-
<span [textContent]="'TRANSACTION_DISCOUNT_PERC' | localize"></span>
|
|
212
|
-
<span [textContent]="service.currentTotals?.transactionDiscountPercentage.toString() | append:' %'"></span>
|
|
213
|
-
</div>
|
|
214
|
-
<div fxLayout="row">
|
|
215
|
-
<span [textContent]="'ORDER_NET'| localize"></span>
|
|
216
|
-
<span [textContent]="service.currentTotals?.netAmount | coCurrency: true"></span>
|
|
217
|
-
</div>
|
|
218
|
-
<a (click)="addDiscount()" [textContent]="'ADD_DISCOUNTS' | localize"></a>
|
|
219
|
-
</div>
|
|
220
|
-
<div class="shopping-cart-row-end">
|
|
221
|
-
<co-button *ngIf="!hideOverviewButton" [label]="'OVERVIEW' | localize"
|
|
222
|
-
(click)="overview.emit()"
|
|
223
|
-
></co-button>
|
|
224
|
-
<co-button *ngIf="!hideCloseCartButton"[label]="'SHOPPING_CART_RESUME' | localize"
|
|
225
|
-
(click)="closeCart.emit()"
|
|
226
|
-
></co-button>
|
|
227
|
-
<co-button *ngIf="!hideCheckoutButton" [label]="'SHOPPING_CART_CHECKOUT' | localize"
|
|
228
|
-
[disabled]="!service.articleAmount"
|
|
229
|
-
(click)="checkout.emit()"></co-button>
|
|
230
|
-
</div>
|
|
231
|
-
|
|
232
|
-
<co-sidebar #discountsSidebar isOpen="false" *ngIf="showDiscountsSidebar">
|
|
233
|
-
<div fxLayout="column" fxLayoutGap="10px">
|
|
234
|
-
<co-button class="rectangular" [label]="'TRANSACTION_DISCOUNT_PERC' | localize"
|
|
235
|
-
(click)="onStartDiscountInput(orderDiscountType.DiscountPercentage, 'TRANSACTION_DISCOUNT_PERC')"></co-button>
|
|
236
|
-
<co-button class="rectangular" [label]="'TRANSACTION_DISCOUNT'| localize"
|
|
237
|
-
(click)="onStartDiscountInput(orderDiscountType.DiscountAmount, 'TRANSACTION_DISCOUNT')"></co-button>
|
|
238
|
-
<co-button class="rectangular" [label]="'TRANSACTION_TOTAL'| localize"
|
|
239
|
-
(click)="onStartDiscountInput(orderDiscountType.OrderTotal, 'TRANSACTION_TOTAL')"></co-button>
|
|
240
|
-
|
|
241
|
-
</div>
|
|
242
|
-
</co-sidebar>
|
|
243
|
-
|
|
244
|
-
<co-dialog [visible]="inputDiscounts">
|
|
245
|
-
<ng-container header>{{ discountHeader | localize }}</ng-container>
|
|
246
|
-
<co-form>
|
|
247
|
-
<co-input-text
|
|
248
|
-
*ngIf="discountType === orderDiscountType.DiscountPercentage"
|
|
249
|
-
[type]="'number'"
|
|
250
|
-
[(model)]="transactionDiscountPercentage"
|
|
251
|
-
[placeholder]="'TRANSACTION_DISCOUNT_PERC' | localize"
|
|
252
|
-
></co-input-text>
|
|
253
|
-
<co-input-text
|
|
254
|
-
*ngIf="discountType === orderDiscountType.DiscountAmount"
|
|
255
|
-
[type]="'number'"
|
|
256
|
-
[(model)]="transactionDiscountAmount"
|
|
257
|
-
[placeholder]="'TRANSACTION_DISCOUNT' | localize"
|
|
258
|
-
></co-input-text>
|
|
259
|
-
<co-input-text
|
|
260
|
-
*ngIf="discountType === orderDiscountType.OrderTotal"
|
|
261
|
-
[type]="'number'"
|
|
262
|
-
[(model)]="transactionTotal"
|
|
263
|
-
[placeholder]="'TRANSACTION_TOTAL' | localize"
|
|
264
|
-
></co-input-text>
|
|
265
|
-
|
|
266
|
-
<div fxLayout="row" fxLayoutGap="10px" fxLayoutAlign="end">
|
|
267
|
-
<co-button [label]="'CANCEL' | localize" (click)="inputDiscounts = false"></co-button>
|
|
268
|
-
<co-button [label]="'OK' | localize" (click)="onInputDiscountsOkClick()"></co-button>
|
|
269
|
-
</div>
|
|
270
|
-
</co-form>
|
|
271
|
-
</co-dialog>
|
|
272
|
-
`,
|
|
273
|
-
styles: ["html,body{height:100%}body{margin:0;font-family:Roboto,\"Helvetica Neue\",sans-serif}.flex-center{display:flex}.flex-center{flex-direction:row}.flex-center{align-items:center!important;justify-content:center!important}.shopping-cart-totals{padding-bottom:20px}.shopping-cart-totals{padding-top:20px}.cart-header{margin-top:20px}.cart-header{margin-bottom:20px}.cart-header .view-mode-buttons{margin-left:11px}.triangle{border-radius:3px}.full-width{width:100%}.flex-center{margin:10px 0}:host{background-color:#fff;opacity:1;display:flex;flex-direction:column;height:100%;color:#22313c}.cart-header{display:flex;justify-content:space-between}.cart-header .cart-header-label{font-weight:bold}.cart-header .view-mode-buttons{display:flex;flex-direction:row}.cart-header .view-mode-buttons co-button{padding:0}.cart-header .view-mode-buttons co-button ::ng-deep co-button{border-radius:0}.cart-header .view-mode-buttons co-button:first-child ::ng-deep co-button{border-radius:3px}.cart-header .view-mode-buttons co-button:nth-child(2) ::ng-deep co-button{border-top-left-radius:3px;border-bottom-left-radius:3px}.cart-header .view-mode-buttons co-button:last-child ::ng-deep co-button{border-top-right-radius:3px;border-bottom-right-radius:3px}.cart-lines{display:flex;height:100%;overflow:auto}.shopping-cart-totals{align-items:flex-end}.shopping-cart-totals>div{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.shopping-cart-totals>div span:last-of-type{min-width:6em;text-align:right}.shopping-cart-totals div:last-of-type{font-weight:bold}\n", ":host .shopping-cart-viewport{max-width:60%;margin-left:20%}:host .shopping-cart-row-end{display:flex;flex-direction:row;grid-column-gap:10px;-moz-column-gap:10px;column-gap:10px;justify-content:flex-end}\n"]
|
|
274
|
-
},] }
|
|
275
|
-
];
|
|
276
|
-
ShoppingCartComponent.ctorParameters = () => [
|
|
277
|
-
{ type: IconCacheService },
|
|
278
|
-
{ type: DictionaryService },
|
|
279
|
-
{ type: TransactionService },
|
|
280
|
-
{ type: TransactionEventService },
|
|
281
|
-
{ type: ChangeDetectorRef }
|
|
282
|
-
];
|
|
283
|
-
ShoppingCartComponent.propDecorators = {
|
|
284
|
-
discountsSidebar: [{ type: ViewChild, args: [CoSidebarComponent, { static: false },] }],
|
|
285
|
-
overlayMode: [{ type: Input }, { type: HostBinding, args: ["class.overlayed",] }],
|
|
286
|
-
overviewMode: [{ type: Input }, { type: HostBinding, args: ["class.overview",] }],
|
|
287
|
-
hideOverviewButton: [{ type: Input }],
|
|
288
|
-
hideCheckoutButton: [{ type: Input }],
|
|
289
|
-
hideCloseCartButton: [{ type: Input }],
|
|
290
|
-
closeCart: [{ type: Output }],
|
|
291
|
-
checkout: [{ type: Output }],
|
|
292
|
-
overview: [{ type: Output }]
|
|
293
|
-
};
|
|
294
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvcHBpbmctY2FydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudC9zaG9wcGluZy1jYXJ0L3Nob3BwaW5nLWNhcnQvc2hvcHBpbmctY2FydC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUN4RSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUd6RSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDakYsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBRTVFLE9BQU8sRUFBQyxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3RHLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQ25GLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUlyRSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUE0SHhFLE1BQU0sT0FBTyxxQkFBcUI7SUFtRWhDLFlBQ1MsZ0JBQWtDLEVBQ2pDLFdBQThCLEVBQy9CLE9BQTJCLEVBQzFCLGtCQUEyQyxFQUMzQyxlQUFrQztRQUpuQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2pDLGdCQUFXLEdBQVgsV0FBVyxDQUFtQjtRQUMvQixZQUFPLEdBQVAsT0FBTyxDQUFvQjtRQUMx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RUFBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBQyxDQUFDLENBQUM7UUFFdEcsc0hBQXNIO1FBQ3RILElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ3JCLENBQUM7OztZQWpXRixTQUFTLFNBQUM7Z0JBQ1QsOERBQThEO2dCQUM5RCxRQUFRLEVBQUUsZUFBZTtnQkFDekIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWlIVDs7YUFLRjs7O1lBakkrQyxnQkFBZ0I7WUFSeEQsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQVFsQix1QkFBdUI7WUFsQjdCLGlCQUFpQjs7OytCQTBKaEIsU0FBUyxTQUFDLGtCQUFrQixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTswQkFHL0MsS0FBSyxZQUNMLFdBQVcsU0FBQyxpQkFBaUI7MkJBRzdCLEtBQUssWUFDTCxXQUFXLFNBQUMsZ0JBQWdCO2lDQUc1QixLQUFLO2lDQUdMLEtBQUs7a0NBR0wsS0FBSzt3QkFHTCxNQUFNO3VCQUdOLE1BQU07dUJBR04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge0RpY3Rpb25hcnlTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS9kaWN0aW9uYXJ5LnNlcnZpY2VcIjtcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlXCI7XG5pbXBvcnQge09yZGVyRGlzY291bnRUeXBlfSBmcm9tIFwiLi4vLi4vLi4vZW51bS9vcmRlci1kaXNjb3VudC10eXBlLmVudW1cIjtcbmltcG9ydCB7QnVzaW5lc3NPYmplY3R9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvYnVzaW5lc3Mtb2JqZWN0XCI7XG5pbXBvcnQge1NvcnRQcm9wZXJ0eX0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9pbnRlcmZhY2Uvc29ydC1wcm9wZXJ0eVwiO1xuaW1wb3J0IHtTb3J0RGlyZWN0aW9ufSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL2VudW0vc29ydC1kaXJlY3Rpb25cIjtcbmltcG9ydCB7U29ydFR5cGV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvZW51bS9zb3J0LXR5cGUuZW51bVwiO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQge0NvcmVDb21wb25lbnRzSWNvbiwgQ29TaWRlYmFyQ29tcG9uZW50LCBJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xuaW1wb3J0IHtUcmFuc2FjdGlvbkV2ZW50U2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZVwiO1xuaW1wb3J0IHtDb250ZW50Vmlld01vZGV9IGZyb20gXCIuLi8uLi8uLi9lbnVtL2NvbnRlbnQtdmlldy1tb2RlLmVudW1cIjtcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lSW5mb30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1saW5lLWluZm8uYm9cIjtcbmltcG9ydCB7Q29udGV4dE1lbnVJdGVtTW9kZWwsIFJvd0RyYWdFdmVudEFyZ3N9IGZyb20gXCJAc3luY2Z1c2lvbi9lajItYW5ndWxhci1ncmlkc1wiO1xuaW1wb3J0IHtNZW51RXZlbnRBcmdzfSBmcm9tIFwiQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItbmF2aWdhdGlvbnNcIjtcbmltcG9ydCB7UG9zaXRpb25HcmlkUm93fSBmcm9tIFwiLi4vLi4vLi4vLi4vZW51bS9wb3NpdGlvbi1ncmlkLXJvdy5lbnVtXCI7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogXCJzaG9wcGluZy1jYXJ0XCIsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImNhcnQtaGVhZGVyXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cImNhcnQtaGVhZGVyLWxhYmVsXCIgW3RleHRDb250ZW50XT1cImdldENhcnRMYWJlbCgpXCI+PC9zcGFuPlxuICAgICAgPGRpdiBjbGFzcz1cInZpZXctbW9kZS1idXR0b25zXCI+XG4gICAgICAgIDxjby1idXR0b24gW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29uVGhpY2tMaW5lcylcIlxuICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCInTElTVF9WSUVXJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwidGhpcy5hY3RpdmVWaWV3TW9kZSA9IHZpZXdNb2Rlcy5MaXN0XCJcbiAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRyaWFuZ2xlIHdoaXRlXCJcbiAgICAgICAgICAgICAgICAgICBpY29uQ2xhc3M9XCJtZWRpdW0gbGlnaHRcIj48L2NvLWJ1dHRvbj5cbiAgICAgICAgPGNvLWJ1dHRvbiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25UaGluTGluZXMpXCJcbiAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ0dSSURfVklFVycgfCBsb2NhbGl6ZVwiXG4gICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRoaXMuYWN0aXZlVmlld01vZGUgPSB2aWV3TW9kZXMuR3JpZFwiXG4gICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0cmlhbmdsZSB3aGl0ZVwiXG4gICAgICAgICAgICAgICAgICAgaWNvbkNsYXNzPVwibWVkaXVtIGxpZ2h0XCI+PC9jby1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY2FydC1saW5lc1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImNhcnQtbGlzdC13cmFwcGVyXCIgKm5nSWY9XCJhY3RpdmVWaWV3TW9kZSA9PT0gdmlld01vZGVzLkxpc3RcIiBmeEZsZXg9XCJjb2x1bW5cIj5cbiAgICAgICAgPHNob3BwaW5nLWNhcnQtbGluZSBbb3ZlcmxheU1vZGVdPVwib3ZlcmxheU1vZGVcIiBbb3ZlcnZpZXdNb2RlXT1cIm92ZXJ2aWV3TW9kZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGxpbmUgb2YgZmlsdGVyZWRDb2xsZWN0aW9uOyB0cmFja0J5OnRyYWNrQnlGbjtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsaW5lXT1cImxpbmVcIlxuICAgICAgICA+PC9zaG9wcGluZy1jYXJ0LWxpbmU+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjYXJ0LWxpc3Qtd3JhcHBlclwiICpuZ0lmPVwiYWN0aXZlVmlld01vZGUgPT09IHZpZXdNb2Rlcy5HcmlkXCIgZnhGbGV4PVwiY29sdW1uXCI+XG4gICAgICAgIDxjby1ncmlkXG4gICAgICAgICAgW2RhdGFdPVwiZmlsdGVyZWRDb2xsZWN0aW9uXCJcbiAgICAgICAgICBbcm93RHJhZ0FuZERyb3BFbmFibGVkXT1cInRydWVcIlxuICAgICAgICAgIFtjb250ZXh0TWVudUl0ZW1zXT1cImNvbnRleHRNZW51SXRlbXNcIlxuICAgICAgICAgIFtzb3J0aW5nRW5hYmxlZF09XCJmYWxzZVwiXG4gICAgICAgICAgW2NvbHVtbnNdPVwiY29sdW1uc1wiXG4gICAgICAgICAgW3BhZ2luZ0VuYWJsZWRdPVwiJ3RydWUnXCJcbiAgICAgICAgICBbbWF4TnVtYmVyT2ZSb3dzXT1cIicyMCdcIlxuICAgICAgICAgIChyb3dzU2VsZWN0ZWQpPVwiaGFuZGxlUm93c1NlbGVjdGVkKCRldmVudClcIlxuICAgICAgICAgIChjb250ZXh0TWVudUl0ZW1DbGljayk9XCJtZW51SXRlbUNsaWNrKCRldmVudClcIlxuICAgICAgICAgIChyb3dEcm9wRXZlbnQpPVwicm93RHJvcCgkZXZlbnQpXCJcbiAgICAgICAgPjwvY28tZ3JpZD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJzaG9wcGluZy1jYXJ0LXRvdGFsc1wiIGZ4TGF5b3V0PVwiY29sdW1uXCIgZnhMYXlvdXRHYXA9XCIxMHB4XCI+XG4gICAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCI+XG4gICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCInT1JERVJfR1JPU1MnIHwgbG9jYWxpemVcIj48L3NwYW4+XG4gICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCJzZXJ2aWNlLmN1cnJlbnRUb3RhbHM/Lmdyb3NzQW1vdW50IHwgY29DdXJyZW5jeTogdHJ1ZVwiPjwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBmeExheW91dD1cInJvd1wiICpuZ0lmPVwic2VydmljZS5jdXJyZW50VG90YWxzPy5kaXNjb3VudEFtb3VudFwiPlxuICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwiJ0RJU0NPVU5UX0FNT1VOVCcgfCBsb2NhbGl6ZVwiPjwvc3Bhbj5cbiAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cInNlcnZpY2UuY3VycmVudFRvdGFscz8uZGlzY291bnRBbW91bnQgfCBjb0N1cnJlbmN5OiB0cnVlXCI+PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgKm5nSWY9XCJzZXJ2aWNlLmN1cnJlbnRUb3RhbHM/LnRyYW5zYWN0aW9uRGlzY291bnRBbW91bnRcIj5cbiAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cIidUUkFOU0FDVElPTl9ESVNDT1VOVCcgfCBsb2NhbGl6ZVwiPjwvc3Bhbj5cbiAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cInNlcnZpY2UuY3VycmVudFRvdGFscz8udHJhbnNhY3Rpb25EaXNjb3VudEFtb3VudCB8IGNvQ3VycmVuY3k6IHRydWVcIj48L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiAqbmdJZj1cInNlcnZpY2UuY3VycmVudFRvdGFscz8udHJhbnNhY3Rpb25EaXNjb3VudFBlcmNlbnRhZ2VcIj5cbiAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cIidUUkFOU0FDVElPTl9ESVNDT1VOVF9QRVJDJyB8IGxvY2FsaXplXCI+PC9zcGFuPlxuICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwic2VydmljZS5jdXJyZW50VG90YWxzPy50cmFuc2FjdGlvbkRpc2NvdW50UGVyY2VudGFnZS50b1N0cmluZygpIHwgYXBwZW5kOicgJSdcIj48L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIj5cbiAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cIidPUkRFUl9ORVQnfCBsb2NhbGl6ZVwiPjwvc3Bhbj5cbiAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cInNlcnZpY2UuY3VycmVudFRvdGFscz8ubmV0QW1vdW50IHwgY29DdXJyZW5jeTogdHJ1ZVwiPjwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGEgKGNsaWNrKT1cImFkZERpc2NvdW50KClcIiBbdGV4dENvbnRlbnRdPVwiJ0FERF9ESVNDT1VOVFMnIHwgbG9jYWxpemVcIj48L2E+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInNob3BwaW5nLWNhcnQtcm93LWVuZFwiPlxuICAgICAgPGNvLWJ1dHRvbiAqbmdJZj1cIiFoaWRlT3ZlcnZpZXdCdXR0b25cIiBbbGFiZWxdPVwiJ09WRVJWSUVXJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm92ZXJ2aWV3LmVtaXQoKVwiXG4gICAgICA+PC9jby1idXR0b24+XG4gICAgICA8Y28tYnV0dG9uICpuZ0lmPVwiIWhpZGVDbG9zZUNhcnRCdXR0b25cIltsYWJlbF09XCInU0hPUFBJTkdfQ0FSVF9SRVNVTUUnIHwgbG9jYWxpemVcIlxuICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2xvc2VDYXJ0LmVtaXQoKVwiXG4gICAgICA+PC9jby1idXR0b24+XG4gICAgICA8Y28tYnV0dG9uICpuZ0lmPVwiIWhpZGVDaGVja291dEJ1dHRvblwiIFtsYWJlbF09XCInU0hPUFBJTkdfQ0FSVF9DSEVDS09VVCcgfCBsb2NhbGl6ZVwiXG4gICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhc2VydmljZS5hcnRpY2xlQW1vdW50XCJcbiAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNoZWNrb3V0LmVtaXQoKVwiPjwvY28tYnV0dG9uPlxuICAgIDwvZGl2PlxuXG4gICAgPGNvLXNpZGViYXIgI2Rpc2NvdW50c1NpZGViYXIgaXNPcGVuPVwiZmFsc2VcIiAqbmdJZj1cInNob3dEaXNjb3VudHNTaWRlYmFyXCI+XG4gICAgICAgIDxkaXYgZnhMYXlvdXQ9XCJjb2x1bW5cIiBmeExheW91dEdhcD1cIjEwcHhcIj5cbiAgICAgICAgICA8Y28tYnV0dG9uICBjbGFzcz1cInJlY3Rhbmd1bGFyXCIgW2xhYmVsXT1cIidUUkFOU0FDVElPTl9ESVNDT1VOVF9QRVJDJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25TdGFydERpc2NvdW50SW5wdXQob3JkZXJEaXNjb3VudFR5cGUuRGlzY291bnRQZXJjZW50YWdlLCAnVFJBTlNBQ1RJT05fRElTQ09VTlRfUEVSQycpXCI+PC9jby1idXR0b24+XG4gICAgICAgICAgPGNvLWJ1dHRvbiBjbGFzcz1cInJlY3Rhbmd1bGFyXCIgW2xhYmVsXT1cIidUUkFOU0FDVElPTl9ESVNDT1VOVCd8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25TdGFydERpc2NvdW50SW5wdXQob3JkZXJEaXNjb3VudFR5cGUuRGlzY291bnRBbW91bnQsICdUUkFOU0FDVElPTl9ESVNDT1VOVCcpXCI+PC9jby1idXR0b24+XG4gICAgICAgICAgPGNvLWJ1dHRvbiBjbGFzcz1cInJlY3Rhbmd1bGFyXCIgW2xhYmVsXT1cIidUUkFOU0FDVElPTl9UT1RBTCd8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25TdGFydERpc2NvdW50SW5wdXQob3JkZXJEaXNjb3VudFR5cGUuT3JkZXJUb3RhbCwgJ1RSQU5TQUNUSU9OX1RPVEFMJylcIj48L2NvLWJ1dHRvbj5cblxuICAgICAgICA8L2Rpdj5cbiAgICA8L2NvLXNpZGViYXI+XG5cbiAgICA8Y28tZGlhbG9nIFt2aXNpYmxlXT1cImlucHV0RGlzY291bnRzXCI+XG4gICAgICA8bmctY29udGFpbmVyIGhlYWRlcj57eyBkaXNjb3VudEhlYWRlciB8IGxvY2FsaXplIH19PC9uZy1jb250YWluZXI+XG4gICAgICAgIDxjby1mb3JtPlxuICAgICAgICAgIDxjby1pbnB1dC10ZXh0XG4gICAgICAgICAgICAqbmdJZj1cImRpc2NvdW50VHlwZSA9PT0gb3JkZXJEaXNjb3VudFR5cGUuRGlzY291bnRQZXJjZW50YWdlXCJcbiAgICAgICAgICAgIFt0eXBlXT1cIidudW1iZXInXCJcbiAgICAgICAgICAgIFsobW9kZWwpXT1cInRyYW5zYWN0aW9uRGlzY291bnRQZXJjZW50YWdlXCJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInVFJBTlNBQ1RJT05fRElTQ09VTlRfUEVSQycgfCBsb2NhbGl6ZVwiXG4gICAgICAgICAgPjwvY28taW5wdXQtdGV4dD5cbiAgICAgICAgICA8Y28taW5wdXQtdGV4dFxuICAgICAgICAgICAgKm5nSWY9XCJkaXNjb3VudFR5cGUgPT09IG9yZGVyRGlzY291bnRUeXBlLkRpc2NvdW50QW1vdW50XCJcbiAgICAgICAgICAgIFt0eXBlXT1cIidudW1iZXInXCJcbiAgICAgICAgICAgIFsobW9kZWwpXT1cInRyYW5zYWN0aW9uRGlzY291bnRBbW91bnRcIlxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidUUkFOU0FDVElPTl9ESVNDT1VOVCcgfCBsb2NhbGl6ZVwiXG4gICAgICAgICAgPjwvY28taW5wdXQtdGV4dD5cbiAgICAgICAgICA8Y28taW5wdXQtdGV4dFxuICAgICAgICAgICAgKm5nSWY9XCJkaXNjb3VudFR5cGUgPT09IG9yZGVyRGlzY291bnRUeXBlLk9yZGVyVG90YWxcIlxuICAgICAgICAgICAgW3R5cGVdPVwiJ251bWJlcidcIlxuICAgICAgICAgICAgWyhtb2RlbCldPVwidHJhbnNhY3Rpb25Ub3RhbFwiXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1RSQU5TQUNUSU9OX1RPVEFMJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICA+PC9jby1pbnB1dC10ZXh0PlxuXG4gICAgICAgICAgPGRpdiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0R2FwPVwiMTBweFwiIGZ4TGF5b3V0QWxpZ249XCJlbmRcIj5cbiAgICAgICAgICAgIDxjby1idXR0b24gW2xhYmVsXT1cIidDQU5DRUwnIHwgbG9jYWxpemVcIiAoY2xpY2spPVwiaW5wdXREaXNjb3VudHMgPSBmYWxzZVwiPjwvY28tYnV0dG9uPlxuICAgICAgICAgICAgPGNvLWJ1dHRvbiBbbGFiZWxdPVwiJ09LJyB8IGxvY2FsaXplXCIgKGNsaWNrKT1cIm9uSW5wdXREaXNjb3VudHNPa0NsaWNrKClcIj48L2NvLWJ1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9jby1mb3JtPlxuICAgIDwvY28tZGlhbG9nPlxuICBgLFxuICBzdHlsZVVybHM6IFtcbiAgICBcIi4vc2hvcHBpbmctY2FydC5jb21wb25lbnQuc2Nzc1wiLFxuICAgIFwiLi4vc2hvcHBpbmctY2FydC1vdmVydmlldy9zaG9wcGluZy1jYXJ0LW92ZXJ2aWV3LmNvbXBvbmVudC5zY3NzXCIsXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgU2hvcHBpbmdDYXJ0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgcHVibGljIHJlYWRvbmx5IG9yZGVyRGlzY291bnRUeXBlOiB0eXBlb2YgT3JkZXJEaXNjb3VudFR5cGUgPSBPcmRlckRpc2NvdW50VHlwZTtcbiAgcHVibGljIHJlYWRvbmx5IGljb25UaGlja0xpbmVzOiBDb3JlQ29tcG9uZW50c0ljb24gPSBDb3JlQ29tcG9uZW50c0ljb24uVGhpY2tMaW5lcztcbiAgcHVibGljIHJlYWRvbmx5IGljb25UaGluTGluZXM6IENvcmVDb21wb25lbnRzSWNvbiA9IENvcmVDb21wb25lbnRzSWNvbi5UaGluTGluZXM7XG4gIHB1YmxpYyByZWFkb25seSB2aWV3TW9kZXM6IHR5cGVvZiBDb250ZW50Vmlld01vZGUgPSBDb250ZW50Vmlld01vZGU7XG5cblxuICBAVmlld0NoaWxkKENvU2lkZWJhckNvbXBvbmVudCwgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIHB1YmxpYyBkaXNjb3VudHNTaWRlYmFyOiBDb1NpZGViYXJDb21wb25lbnQ7XG5cbiAgQElucHV0KClcbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3Mub3ZlcmxheWVkXCIpXG4gIHB1YmxpYyBvdmVybGF5TW9kZTogYm9vbGVhbjtcblxuICBASW5wdXQoKVxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5vdmVydmlld1wiKVxuICBwdWJsaWMgb3ZlcnZpZXdNb2RlOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBoaWRlT3ZlcnZpZXdCdXR0b246IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaGlkZUNoZWNrb3V0QnV0dG9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGhpZGVDbG9zZUNhcnRCdXR0b246IGJvb2xlYW4gPSBmYWxzZTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGNsb3NlQ2FydDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY2hlY2tvdXQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIG92ZXJ2aWV3OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgcHVibGljIGdldCBmaWx0ZXJlZENvbGxlY3Rpb24oKTogVHJhbnNhY3Rpb25MaW5lSW5mb1tdIHtcbiAgICByZXR1cm4gdGhpcy5fZmlsdGVyZWRDb2xsZWN0aW9uO1xuICB9XG5cbiAgcHVibGljIHNldEZpbHRlcmVkQ29sbGVjdGlvbih2YWx1ZTogQnVzaW5lc3NPYmplY3RbXSk6IHZvaWQge1xuICAgIHRoaXMuX2ZpbHRlcmVkQ29sbGVjdGlvbiA9ICh2YWx1ZSBhcyBUcmFuc2FjdGlvbkxpbmVJbmZvW10pO1xuICAgIGNvbnN0IHNvcnRCeUxpbmVOcjogU29ydFByb3BlcnR5ID0ge1xuICAgICAgYWN0aXZlOiB0cnVlLFxuICAgICAgZGlyZWN0aW9uOiBTb3J0RGlyZWN0aW9uLkFzY2VuZGluZyxcbiAgICAgIHByb3BlcnR5OiBcImxpbmVOclwiLFxuICAgICAgdHlwZTogU29ydFR5cGUuTnVtYmVyfTtcbi8vICAgIFNvcnRVdGlscy5Tb3J0T2JqZWN0QXJyYXkodGhpcy5fZmlsdGVyZWRDb2xsZWN0aW9uLCBbc29ydEJ5TGluZU5yXSk7XG4gIH1cblxuICBwdWJsaWMgZGlzY291bnRIZWFkZXI6IHN0cmluZztcbiAgcHVibGljIGlucHV0RGlzY291bnRzOiBib29sZWFuO1xuICBwdWJsaWMgdHJhbnNhY3Rpb25EaXNjb3VudEFtb3VudDogbnVtYmVyO1xuICBwdWJsaWMgdHJhbnNhY3Rpb25EaXNjb3VudFBlcmNlbnRhZ2U6IG51bWJlcjtcbiAgcHVibGljIHRyYW5zYWN0aW9uVG90YWw6IG51bWJlcjtcbiAgcHVibGljIGRpc2NvdW50VHlwZTogT3JkZXJEaXNjb3VudFR5cGU7XG5cbiAgcHVibGljIGFjdGl2ZVZpZXdNb2RlOiBDb250ZW50Vmlld01vZGUgPSBDb250ZW50Vmlld01vZGUuTGlzdDtcbiAgcHVibGljIGNvbHVtbnM6IGFueVtdID0gW107XG5cbiAgcHVibGljIGNvbnRleHRNZW51SXRlbXM6IENvbnRleHRNZW51SXRlbU1vZGVsW10gPSBbXTtcblxuICBwdWJsaWMgc2hvd0Rpc2NvdW50c1NpZGViYXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBfZmlsdGVyZWRDb2xsZWN0aW9uOiBUcmFuc2FjdGlvbkxpbmVJbmZvW107XG4gIHByaXZhdGUgX3RyYW5zYWN0aW9uVXBkYXRlZDogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIF9zZWxlY3RlZFJvdzogVHJhbnNhY3Rpb25MaW5lSW5mbztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcbiAgICBwcml2YXRlIF9kaWN0aW9uYXJ5OiBEaWN0aW9uYXJ5U2VydmljZSxcbiAgICBwdWJsaWMgc2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uRXZlbnRzOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZSxcbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb25VcGRhdGVkID0gdGhpcy5zZXJ2aWNlLnRyYW5zYWN0aW9uVXBkYXRlZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5zZXRGaWx0ZXJlZENvbGxlY3Rpb24odGhpcy5zZXJ2aWNlLmN1cnJlbnRMaW5lcyk7XG4gICAgfSk7XG4gICAgdGhpcy5zZXRGaWx0ZXJlZENvbGxlY3Rpb24odGhpcy5zZXJ2aWNlLmN1cnJlbnRMaW5lcyk7XG5cbiAgICBjb25zdCBtZWRpYVF1ZXJ5OiBzdHJpbmcgPSBcIihtaW4td2lkdGg6IDUwMHB4KVwiO1xuXG4gICAgdGhpcy5jb2x1bW5zLnB1c2goXG4gICAgICB7ZmllbGQ6IFwibGluZU5yXCIsIGhlYWRlclRleHQ6IHRoaXMuX2RpY3Rpb25hcnkuZ2V0KFwiTlJcIiksIGFsbG93RmlsdGVyaW5nOiBmYWxzZSwgYWxsb3dTb3J0aW5nOiBmYWxzZX0sXG4gICAgICB7ZmllbGQ6IFwidGV4dFwiLCBoZWFkZXJUZXh0OiB0aGlzLl9kaWN0aW9uYXJ5LmdldChcIlRFWFRcIil9LFxuICAgICAge2ZpZWxkOiBcImFydGljbGVOdW1iZXJcIiwgaGVhZGVyVGV4dDogdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJBUlRJQ0xFX05SXCIpfSxcbiAgICAgIHtmaWVsZDogXCJnb29kRGVzY3JpcHRpb25cIiwgaGVhZGVyVGV4dDogdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJHT09EX0RFU0NSSVBUSU9OXCIpLCBoaWRlQXRNZWRpYTogbWVkaWFRdWVyeX0sXG4gICAgICB7ZmllbGQ6IFwiYW1vdW50XCIsIGhlYWRlclRleHQ6IHRoaXMuX2RpY3Rpb25hcnkuZ2V0KFwiTlVNQkVSXCIpLCB0ZXh0QWxpZ246IFwiUmlnaHRcIn0sXG4gICAgICB7ZmllbGQ6IFwicHJpY2VcIiwgaGVhZGVyVGV4dDogdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJQUklDRVwiKSwgIGZvcm1hdDogXCJDMlwiLCB0ZXh0QWxpZ246IFwiUmlnaHRcIn0sXG4gICAgICB7ZmllbGQ6IFwicHJpY2VMaXN0Q29kZVwiLCBoZWFkZXJUZXh0OiB0aGlzLl9kaWN0aW9uYXJ5LmdldChcIlBSSUNFX0xJU1RcIiksIGhpZGVBdE1lZGlhOiBtZWRpYVF1ZXJ5fSxcbiAgICAgIHtmaWVsZDogXCJsaW5lRGlzY291bnRcIiwgaGVhZGVyVGV4dDogdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJESVNDT1VOVF9QRVJDRU5UQUdFXCIpLCBmb3JtYXQ6IFwiQzJcIiwgdmlzaWJsZTogZmFsc2UsIGhpZGVBdE1lZGlhOiBtZWRpYVF1ZXJ5LCB0ZXh0QWxpZ246IFwiUmlnaHRcIn0sXG4gICAgICB7ZmllbGQ6IFwic3BlY2lhbERpc2NvdW50XCIsIGhlYWRlclRleHQ6IHRoaXMuX2RpY3Rpb25hcnkuZ2V0KFwiU1BFQ0lBTF9ESVNDT1VOVFwiKSwgZm9ybWF0OiBcIkMyXCIsIHZpc2libGU6IGZhbHNlLCBoaWRlQXRNZWRpYTogbWVkaWFRdWVyeSwgdGV4dEFsaWduOiBcIlJpZ2h0XCJ9LFxuICAgICAge2ZpZWxkOiBcImRpc2NvdW50QW1vdW50XCIsIGhlYWRlclRleHQ6IHRoaXMuX2RpY3Rpb25hcnkuZ2V0KFwiRElTQ09VTlRfQU1PVU5UXCIpLCBmb3JtYXQ6IFwiQzJcIiwgdmlzaWJsZTogZmFsc2UsIGhpZGVBdE1lZGlhOiBtZWRpYVF1ZXJ5LCB0ZXh0QWxpZ246IFwiUmlnaHRcIn0sXG4gICAgICB7ZmllbGQ6IFwic3VyY2hhcmdlQW1vdW50XCIsIGhlYWRlclRleHQ6IHRoaXMuX2RpY3Rpb25hcnkuZ2V0KFwiU1VSQ0hBUkdFX0FNT1VOVFwiKSwgZm9ybWF0OiBcIkMyXCIsIHZpc2libGU6IGZhbHNlLCBoaWRlQXRNZWRpYTogbWVkaWFRdWVyeSwgdGV4dEFsaWduOiBcIlJpZ2h0XCJ9LFxuICAgICAge2ZpZWxkOiBcImFzc2VtYmx5Q29zdFwiLCBoZWFkZXJUZXh0OiB0aGlzLl9kaWN0aW9uYXJ5LmdldChcIkFTU0VNQkxZX0NPU1RTXCIpLCBmb3JtYXQ6IFwiQzJcIiwgdmlzaWJsZTogZmFsc2UsIGhpZGVBdE1lZGlhOiBtZWRpYVF1ZXJ5LCB0ZXh0QWxpZ246IFwiUmlnaHRcIn0sXG4gICAgICB7ZmllbGQ6IFwiZ3Jvc3NMaW5lVG90YWxcIiwgaGVhZGVyVGV4dDogdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJUT1RBTF9HUk9TU1wiKSwgZm9ybWF0OiBcIkMyXCIsIHZpc2libGU6IHRydWUsIGhpZGVBdE1lZGlhOiBtZWRpYVF1ZXJ5LCB0ZXh0QWxpZ246IFwiUmlnaHRcIn0sXG4gICAgICB7ZmllbGQ6IFwibGluZVRvdGFsRGlzY291bnRBbW91bnRcIiwgaGVhZGVyVGV4dDogdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJESVNDT1VOVFwiKSwgZm9ybWF0OiBcIkMyXCIsIHZpc2libGU6IGZhbHNlLCAgaGlkZUF0TWVkaWE6IG1lZGlhUXVlcnksIHRleHRBbGlnbjogXCJSaWdodFwifSxcbiAgICAgIHtmaWVsZDogXCJuZXRMaW5lVG90YWxcIiwgaGVhZGVyVGV4dDogdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJTVUJUT1RBTFwiKSwgZm9ybWF0OiBcIkMyXCIsIHZpc2libGU6IGZhbHNlLCB0ZXh0QWxpZ246IFwiUmlnaHRcIn0sXG4gICAgICB7ZmllbGQ6IFwidmF0SWRcIiwgaGVhZGVyVGV4dDogdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJWQVRcIiksIGhpZGVBdE1lZGlhOiBtZWRpYVF1ZXJ5LCB2aXNpYmxlOiBmYWxzZSwgdGV4dEFsaWduOiBcIlJpZ2h0XCJ9LFxuICAgICAge2ZpZWxkOiBcInByaWNlRGVjbGFyYXRpb25cIiwgaGVhZGVyVGV4dDogdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJUUkFOU0FDVElPTl9QUklDRV9ERUNMQVJBVElPTlwiKSwgdmlzaWJsZTogZmFsc2UsIGhpZGVBdE1lZGlhOiBtZWRpYVF1ZXJ5fSxcbiAgICAgIHtmaWVsZDogXCJuZXR0b1wiLCBoZWFkZXJUZXh0OiB0aGlzLl9kaWN0aW9uYXJ5LmdldChcIk5FVFRcIiksIGZvcm1hdDogXCJDMlwiLCAgaGlkZUF0TWVkaWE6IG1lZGlhUXVlcnksIHRleHRBbGlnbjogXCJSaWdodFwifSxcbiAgICAgIHtmaWVsZDogXCJ3YXJlaG91c2VOdW1iZXJcIiwgaGVhZGVyVGV4dDogdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJXQVJFSE9VU0VcIiksIGhpZGVBdE1lZGlhOiBtZWRpYVF1ZXJ5LCB0ZXh0QWxpZ246IFwiUmlnaHRcIn0sXG4gICAgKTtcblxuICAgIHRoaXMuY29udGV4dE1lbnVJdGVtcy5wdXNoKFxuICAgICAgeyB0ZXh0OiB0aGlzLl9kaWN0aW9uYXJ5LmdldChcIkFERF9BUlRJQ0xFX0xJTkVfVVBcIiksIHRhcmdldDogXCIuZS1jb250ZW50XCIsIGlkOiBcImFydGljbGVMaW5lVXBcIiB9LFxuICAgICAgeyB0ZXh0OiB0aGlzLl9kaWN0aW9uYXJ5LmdldChcIkFERF9BUlRJQ0xFX0xJTkVfRE9XTlwiKSwgdGFyZ2V0OiBcIi5lLWNvbnRlbnRcIiwgaWQ6IFwiYXJ0aWNsZUxpbmVEb3duXCIgfSxcbiAgICAgIHsgdGV4dDogdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJBRERfQVJUSUNMRV9URVhUX0xJTkVfVVBcIiksIHRhcmdldDogXCIuZS1jb250ZW50XCIsIGlkOiBcImFydGljbGVUZXh0TGluZVVwXCIgfSxcbiAgICAgIHsgdGV4dDogdGhpcy5fZGljdGlvbmFyeS5nZXQoXCJBRERfQVJUSUNMRV9URVhUX0xJTkVfRE9XTlwiKSwgdGFyZ2V0OiBcIi5lLWNvbnRlbnRcIiwgaWQ6IFwiYXJ0aWNsZVRleHRMaW5lRG93blwiIH1cbiAgICApO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaGlkZVNpZGViYXIoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uVXBkYXRlZC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIGdldENhcnRMYWJlbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9kaWN0aW9uYXJ5LmdldChcIlNIT1BQSU5HX0NBUlRfT1ZFUlZJRVdcIiwgdHJ1ZSkgKyBcIihcIiArIHRoaXMuc2VydmljZS5hcnRpY2xlQW1vdW50LnRvU3RyaW5nKCkgKyBcIilcIjtcblxuICB9XG5cbiAgcHVibGljIGFkZERpc2NvdW50KCk6IHZvaWQge1xuICAgIHRoaXMuc2hvd1NpZGViYXIoKTtcblxuICAgIC8vIFRPRE9cbiAgICAvLyB0aGlzLnRyYW5zYWN0aW9uRGlzY291bnRQZXJjZW50YWdlID0gdGhpcy5zZXJ2aWNlLmN1cnJlbnRUcmFuc2FjdGlvbi50cmFuc2FjdGlvbkRpc2NvdW50UGVyY2VudGFnZTtcbiAgICAvLyB0aGlzLnRyYW5zYWN0aW9uRGlzY291bnRBbW91bnQgPSB0aGlzLnNlcnZpY2UuY3VycmVudFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uRGlzY291bnRBbW91bnQ7XG4gICAgLy8gdGhpcy50cmFuc2FjdGlvblRvdGFsID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHVibGljIG9uU3RhcnREaXNjb3VudElucHV0KGRpc2NvdW50VHlwZTogT3JkZXJEaXNjb3VudFR5cGUsIGhlYWRlcjogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5oaWRlU2lkZWJhcigpO1xuXG4gICAgdGhpcy5kaXNjb3VudFR5cGUgPSBkaXNjb3VudFR5cGU7XG4gICAgdGhpcy5kaXNjb3VudEhlYWRlciA9IGhlYWRlcjtcbiAgICB0aGlzLmlucHV0RGlzY291bnRzID0gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuU2hvcHBpbmdDYXJ0TW9kdWxlKCk6IHZvaWQge1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uRXZlbnRzLm9wZW5TaG9wcGluZ0NhcnRNb2R1bGUubmV4dCgpO1xuICAgIHRoaXMuY2xvc2VDYXJ0LmVtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXREaXNjb3VudEhlYWRlcihkaXNjb3VudFR5cGU6IE9yZGVyRGlzY291bnRUeXBlKTogdm9pZCB7XG4gICAgc3dpdGNoICh0aGlzLmRpc2NvdW50VHlwZSkge1xuICAgICAgY2FzZSBPcmRlckRpc2NvdW50VHlwZS5EaXNjb3VudFBlcmNlbnRhZ2U6XG4gICAgICAgIHRoaXMuZGlzY291bnRIZWFkZXIgPSB0aGlzLl9kaWN0aW9uYXJ5LmdldChcIkRJU0NPVU5UX1BFUkNFTlRBR0VcIiwgdHJ1ZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBPcmRlckRpc2NvdW50VHlwZS5EaXNjb3VudEFtb3VudDpcbiAgICAgICAgdGhpcy5kaXNjb3VudEhlYWRlciA9IHRoaXMuX2RpY3Rpb25hcnkuZ2V0KFwiRElTQ09VTlRfQU1PVU5UXCIsIHRydWUpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgT3JkZXJEaXNjb3VudFR5cGUuT3JkZXJUb3RhbDpcbiAgICAgICAgdGhpcy5kaXNjb3VudEhlYWRlciA9IHRoaXMuX2RpY3Rpb25hcnkuZ2V0KFwiT1JERVJfVE9UQUxcIiwgdHJ1ZSk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbklucHV0RGlzY291bnRzT2tDbGljaygpOiB2b2lkIHtcbiAgICBsZXQgdmFsdWVUb1VzZTogbnVtYmVyO1xuICAgIHN3aXRjaCAodGhpcy5kaXNjb3VudFR5cGUpIHtcbiAgICAgIGNhc2UgT3JkZXJEaXNjb3VudFR5cGUuRGlzY291bnRQZXJjZW50YWdlOlxuICAgICAgICB2YWx1ZVRvVXNlID0gdGhpcy50cmFuc2FjdGlvbkRpc2NvdW50UGVyY2VudGFnZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIE9yZGVyRGlzY291bnRUeXBlLkRpc2NvdW50QW1vdW50OlxuICAgICAgICB2YWx1ZVRvVXNlID0gdGhpcy50cmFuc2FjdGlvbkRpc2NvdW50QW1vdW50O1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgT3JkZXJEaXNjb3VudFR5cGUuT3JkZXJUb3RhbDpcbiAgICAgICAgdmFsdWVUb1VzZSA9IHRoaXMudHJhbnNhY3Rpb25Ub3RhbDtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIC8vVE9ETyB0aGlzLnNlcnZpY2Uuc2V0VHJhbnNhY3Rpb25EaXNjb3VudHModGhpcy5zZXJ2aWNlLmN1cnJlbnRUcmFuc2FjdGlvbi51dWlkLCB0aGlzLmRpc2NvdW50VHlwZSwgdmFsdWVUb1VzZSk7XG4gICAgdGhpcy5pbnB1dERpc2NvdW50cyA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIHRyYWNrQnlGbihpbmRleDogbnVtYmVyLCBsaW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvKTogYW55IHtcbiAgICByZXR1cm4gbGluZS5saW5lTnI7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlUm93c1NlbGVjdGVkKHJvd3M6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuX3NlbGVjdGVkUm93ID0gcm93cy5maW5kKHggPT4geCAhPT0gdW5kZWZpbmVkKTtcbiAgfVxuXG4gIHB1YmxpYyBzaG93U2lkZWJhcigpOiB2b2lkIHtcbiAgICB0aGlzLnNob3dEaXNjb3VudHNTaWRlYmFyID0gdHJ1ZTtcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG5cbiAgICBpZiAodGhpcy5kaXNjb3VudHNTaWRlYmFyKSB7XG4gICAgICB0aGlzLmRpc2NvdW50c1NpZGViYXIuc2hvdygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBoaWRlU2lkZWJhcigpOiB2b2lkIHtcbiAgICB0aGlzLnNob3dEaXNjb3VudHNTaWRlYmFyID0gZmFsc2U7XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgaWYgKHRoaXMuZGlzY291bnRzU2lkZWJhcikge1xuICAgICAgdGhpcy5kaXNjb3VudHNTaWRlYmFyLmhpZGUoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbWVudUl0ZW1DbGljayhhcmdzOiBNZW51RXZlbnRBcmdzKTogdm9pZCB7XG4gICAgY29uc3QgbGluZU5yOiBudW1iZXIgPSB0aGlzLl9zZWxlY3RlZFJvdy5saW5lTnI7XG4gICAgc3dpdGNoIChhcmdzLml0ZW0uaWQpIHtcbiAgICAgIGNhc2UgXCJhcnRpY2xlTGluZVVwXCI6XG4vLyAgICAgICAgdGhpcy5fdHJhbnNhY3Rpb25FdmVudHMuYWRkQXJ0aWNsZUxpbmUubmV4dCh7bGluZU5yOiBsaW5lTnIsIGJlZm9yZU9yQWZ0ZXI6IFBvc2l0aW9uR3JpZFJvdy5CZWZvcmV9KTtcbiAgICAgICAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50cy5hZGRBcnRpY2xlTGluZUF0Lm5leHQoe3NrdTogXCJpUG9kXCIsIGFtb3VudDogMSwgbGluZU5yOiBsaW5lTnIsIGJlZm9yZU9yQWZ0ZXI6IFBvc2l0aW9uR3JpZFJvdy5CZWZvcmV9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFwiYXJ0aWNsZUxpbmVEb3duXCI6XG4vLyAgICAgICAgdGhpcy5fdHJhbnNhY3Rpb25FdmVudHMuYWRkQXJ0aWNsZUxpbmUubmV4dCh7bGluZU5yOiBsaW5lTnIsIGJlZm9yZU9yQWZ0ZXI6IFBvc2l0aW9uR3JpZFJvdy5BZnRlcn0pO1xuICAgICAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50cy5hZGRBcnRpY2xlTGluZUF0Lm5leHQoe3NrdTogXCJpUG9kXCIsIGFtb3VudDogMSwgbGluZU5yOiBsaW5lTnIsIGJlZm9yZU9yQWZ0ZXI6IFBvc2l0aW9uR3JpZFJvdy5BZnRlcn0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgXCJhcnRpY2xlVGV4dExpbmVVcFwiOlxuLy8gICAgICAgIHRoaXMuX3RyYW5zYWN0aW9uRXZlbnRzLmFkZFRleHRMaW5lLm5leHQoe2xpbmVOcjogbGluZU5yLCBiZWZvcmVPckFmdGVyOiBQb3NpdGlvbkdyaWRSb3cuQmVmb3JlfSk7XG4gICAgICAgIHRoaXMuX3RyYW5zYWN0aW9uRXZlbnRzLmFkZFRleHRMaW5lQXQubmV4dCh7dGV4dDogXCJ0ZXh0cmVnZWwgYmVmb3JlXCIsIGxpbmVOcjogbGluZU5yLCBiZWZvcmVPckFmdGVyOiBQb3NpdGlvbkdyaWRSb3cuQmVmb3JlfSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBcImFydGljbGVUZXh0TGluZURvd25cIjpcbi8vICAgICAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50cy5hZGRUZXh0TGluZS5uZXh0KHtsaW5lTnI6IGxpbmVOciwgYmVmb3JlT3JBZnRlcjogUG9zaXRpb25HcmlkUm93LkFmdGVyfSk7XG4gICAgICAgIHRoaXMuX3RyYW5zYWN0aW9uRXZlbnRzLmFkZFRleHRMaW5lQXQubmV4dCh7dGV4dDogXCJ0ZXh0cmVnZWwgYWZ0ZXJcIiwgbGluZU5yOiBsaW5lTnIsIGJlZm9yZU9yQWZ0ZXI6IFBvc2l0aW9uR3JpZFJvdy5BZnRlcn0pO1xuICAgICAgICBicmVhaztcblxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyByb3dEcm9wKGFyZ3M6IFJvd0RyYWdFdmVudEFyZ3MpOiB2b2lkIHtcbiAgICB0aGlzLl90cmFuc2FjdGlvbkV2ZW50cy5jaGFuZ2VMaW5lU2VxdWVuY2UubmV4dCh7ZnJvbUluZGV4OiBhcmdzLmZyb21JbmRleCwgdG9JbmRleDogYXJncy5kcm9wSW5kZXh9KTtcblxuICAgIC8vIFRyYW5zYWN0aW9uIGxpbmVzIHdpbGwgYmUgcmVsb2FkZWQgYnkgcHJldmlvdXMgYWN0aW9uIG9uIHN1Y2Nlc3MsIG5vdCBieSBmYWlsdXJlLiBTbywgY2FuY2VsIHRoZSBkcm9wIGluIGFsbCBjYXNlcy5cbiAgICBhcmdzLmNhbmNlbCA9IHRydWU7XG4gIH1cbn1cbiJdfQ==
|
package/esm2015/app/component/shopping-cart/shopping-cart-line/shopping-cart-line.component.js
DELETED
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
import { __awaiter } from "tslib";
|
|
2
|
-
import { Component, HostBinding, Input } from "@angular/core";
|
|
3
|
-
import { StockStatus } from "@colijnit/transactionapi/build/enum/refcode/stock-status.enum";
|
|
4
|
-
import { TransactionService } from "../../../service/transaction.service";
|
|
5
|
-
import { CoreComponentsIcon, IconCacheService, PromptService } from "@colijnit/corecomponents_v12";
|
|
6
|
-
import { DictionaryService } from "../../../service/dictionary.service";
|
|
7
|
-
import { ResolvePendingLineReasonRequest } from "@colijnit/transactionapi/build/model/resolve-pending-reason-request.bo";
|
|
8
|
-
import { PendingReasonType } from "@colijnit/transactionapi/build/enum/pending-reason-type.enum";
|
|
9
|
-
export class ShoppingCartLineComponent {
|
|
10
|
-
constructor(iconCacheService, service, _promptService, _dictionaryService) {
|
|
11
|
-
this.iconCacheService = iconCacheService;
|
|
12
|
-
this.service = service;
|
|
13
|
-
this._promptService = _promptService;
|
|
14
|
-
this._dictionaryService = _dictionaryService;
|
|
15
|
-
this.iconTrashBin = CoreComponentsIcon.TrashBin;
|
|
16
|
-
this.stock = StockStatus.Low;
|
|
17
|
-
}
|
|
18
|
-
get line() {
|
|
19
|
-
return this._line;
|
|
20
|
-
}
|
|
21
|
-
set line(value) {
|
|
22
|
-
this._line = value;
|
|
23
|
-
this.localAmount = this._line.amount;
|
|
24
|
-
this.isText = this._line.isText;
|
|
25
|
-
this.isArticle = this._line.isArticle;
|
|
26
|
-
this.isSelected = this._line.isSelected;
|
|
27
|
-
this._loadLineImage();
|
|
28
|
-
}
|
|
29
|
-
ngAfterViewInit() {
|
|
30
|
-
this._loadLineImage();
|
|
31
|
-
}
|
|
32
|
-
changeLineAmount(amount) {
|
|
33
|
-
this.service.changeTransactionLineQuantity(this.line.uuid, amount).then((value) => {
|
|
34
|
-
if (!value || !value.isSuccess) {
|
|
35
|
-
this.localAmount = this._line.amount;
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
this._handleLine(value).then();
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
deleteTransactionLineClick() {
|
|
42
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
43
|
-
const deleteLine = yield this._promptService.showYesNo(this._dictionaryService.get("DELETE_TRANSACTION_LINE"), " ");
|
|
44
|
-
if (deleteLine) {
|
|
45
|
-
this.service.deleteTransactionLine(this.service.currentTransaction.uuid, this.line.uuid).then((value) => {
|
|
46
|
-
this._handleLine(value);
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
_loadLineImage() {
|
|
52
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
-
this.image = this.line ? yield this.service.retrieveLineImage(this.line) : undefined;
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
_confirmAction(lineOperationResponse) {
|
|
57
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
58
|
-
this.currentReason.confirmation = yield this._promptService.showYesNo(lineOperationResponse.pendingReason, " ");
|
|
59
|
-
this.service.resolvePendingLineReason(this.currentReason)
|
|
60
|
-
.then((value) => {
|
|
61
|
-
this._handleLine(value);
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
_showInformation(lineOperationResponse) {
|
|
66
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
-
yield this._promptService.showOkModal(lineOperationResponse.pendingReason, " ");
|
|
68
|
-
this.service.resolvePendingLineReason(this.currentReason)
|
|
69
|
-
.then((value) => {
|
|
70
|
-
this._handleLine(value);
|
|
71
|
-
});
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
_handleLine(lineOperationResponse) {
|
|
75
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
76
|
-
if (lineOperationResponse === undefined) {
|
|
77
|
-
return;
|
|
78
|
-
}
|
|
79
|
-
this.currentReason = new ResolvePendingLineReasonRequest(lineOperationResponse.lineUuid, lineOperationResponse.pendingReason, lineOperationResponse.pendingReasonType);
|
|
80
|
-
switch (lineOperationResponse.pendingReasonType) {
|
|
81
|
-
case PendingReasonType.ABORTED:
|
|
82
|
-
case PendingReasonType.CANCELLED:
|
|
83
|
-
this.localAmount = this._line.amount;
|
|
84
|
-
if (lineOperationResponse.pendingReason !== "USER_DECISION") {
|
|
85
|
-
yield this._promptService.showNotification(this._dictionaryService.get(lineOperationResponse.pendingReason), " ");
|
|
86
|
-
}
|
|
87
|
-
break;
|
|
88
|
-
case PendingReasonType.CONFIRMATION_NEEDED:
|
|
89
|
-
yield this._confirmAction(lineOperationResponse);
|
|
90
|
-
break;
|
|
91
|
-
case PendingReasonType.NON_CRITICAL_DISCONTINUATION:
|
|
92
|
-
yield this._showInformation(lineOperationResponse);
|
|
93
|
-
break;
|
|
94
|
-
case PendingReasonType.INVALID_LOGISTICS:
|
|
95
|
-
this.localAmount = this._line.amount;
|
|
96
|
-
yield this._promptService.showError(this._dictionaryService.get(lineOperationResponse.pendingReason), " ");
|
|
97
|
-
break;
|
|
98
|
-
case PendingReasonType.NONE:
|
|
99
|
-
default:
|
|
100
|
-
break;
|
|
101
|
-
}
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
ShoppingCartLineComponent.decorators = [
|
|
106
|
-
{ type: Component, args: [{
|
|
107
|
-
selector: "shopping-cart-line",
|
|
108
|
-
template: `
|
|
109
|
-
<div *ngIf="line.isArticle" class="cart-line-r" fxFlex>
|
|
110
|
-
<div fxLayout="row" class="full-width">
|
|
111
|
-
<div fxLayout="column" class="cart-line-image" *ngIf="!overviewMode">
|
|
112
|
-
<co-button [iconData]="iconCacheService.getIcon(iconTrashBin)"
|
|
113
|
-
[title]="'DELETE_TRANSACTION_LINE_HINT' | localize"
|
|
114
|
-
(click)="deleteTransactionLineClick()"
|
|
115
|
-
class="triangle white"
|
|
116
|
-
iconClass="medium light"></co-button>
|
|
117
|
-
</div>
|
|
118
|
-
<div fxLayout="column" class="cart-line-image" *ngIf="!overviewMode">
|
|
119
|
-
<image-display [model]="image" hideOnEmptyModel></image-display>
|
|
120
|
-
</div>
|
|
121
|
-
<div fxLayout="column" class="cart-line-description" fxLayoutGap="20px">
|
|
122
|
-
<div fxLayout="row" fxLayoutGap="10px">
|
|
123
|
-
<span [textContent]="line.goodDescription" class="cart-line-description-main"></span>
|
|
124
|
-
<span *ngIf="line.goodDescription && line.articleNumber">|</span>
|
|
125
|
-
<span [textContent]="line.articleNumber" class="cart-line-description-artnr"></span>
|
|
126
|
-
</div>
|
|
127
|
-
<span [innerHTML]="line.configurationReadable"></span>
|
|
128
|
-
</div>
|
|
129
|
-
</div>
|
|
130
|
-
<div fxLayout="row" class="cart-line-right">
|
|
131
|
-
<div fxLayout="column" class="cart-line-stock" *ngIf="!overlayMode && !overviewMode">
|
|
132
|
-
<span [textContent]="'STOCK' | localize" class="small-font"></span>
|
|
133
|
-
<stock-status-indicator [model]="stock"></stock-status-indicator>
|
|
134
|
-
<span [textContent]="'DELIVERY_TIME_PERIOD' | localize" class="small-font"></span>
|
|
135
|
-
<span [textContent]="line.deliveryDate | deliveryTime"></span>
|
|
136
|
-
</div>
|
|
137
|
-
<div class="cart-line-amount">
|
|
138
|
-
<co-input-number-picker
|
|
139
|
-
class="horizontal"
|
|
140
|
-
[(model)]="localAmount" [min]="0" [buttonShowMode]="'always'"
|
|
141
|
-
[readonly]="true"
|
|
142
|
-
(modelChange)="changeLineAmount($event)"></co-input-number-picker>
|
|
143
|
-
</div>
|
|
144
|
-
|
|
145
|
-
<div class="cart-line-totals">
|
|
146
|
-
<span [textContent]="line.displayNetLineTotal | coCurrency: true"></span>
|
|
147
|
-
</div>
|
|
148
|
-
</div>
|
|
149
|
-
</div>
|
|
150
|
-
<div *ngIf="line.isText" class="cart-line-t" fxFlex
|
|
151
|
-
[class.article-text]="line.articleBound"
|
|
152
|
-
[textContent]="line.text">
|
|
153
|
-
</div>
|
|
154
|
-
`,
|
|
155
|
-
styles: ["html,body{height:100%}body{margin:0;font-family:Roboto,\"Helvetica Neue\",sans-serif}.cart-line-r .cart-line-description .cart-line-description-artnr{font-size:10px}.flex-center{display:flex}.flex-center{flex-direction:row}.flex-center{align-items:center!important;justify-content:center!important}:host{padding-bottom:20px}:host{padding-top:20px}.cart-line-r .cart-line-description,.cart-line-r .cart-line-right .cart-line-amount,.cart-line-r .cart-line-image,.cart-line-r .cart-line-right .cart-line-stock,.cart-line-r .cart-line-right .cart-line-totals{margin-top:20px}.cart-line-r .cart-line-description,.cart-line-r .cart-line-right .cart-line-amount,.cart-line-r .cart-line-image,.cart-line-r .cart-line-right .cart-line-stock,.cart-line-r .cart-line-right .cart-line-totals{margin-bottom:20px}.cart-line-r .cart-line-description,.cart-line-r .cart-line-right .cart-line-amount,.cart-line-t,.cart-line-r .cart-line-right .cart-line-totals{margin-left:20px}.cart-line-r .cart-line-description,.cart-line-r .cart-line-right .cart-line-amount,.cart-line-t{margin-right:20px}.triangle{border-radius:3px}.full-width{width:100%}.flex-center{margin:10px 0}:host{display:flex;flex-wrap:wrap;border-bottom:1px solid #DBE3E8;width:100%}:host.overlayed.is-text{display:none!important}:host.overlayed.is-selected{background-color:#add8e6}:host.overview.is-text{display:none!important}:host.overview.is-selected{background-color:#add8e6}.horizontal{display:flex;flex-direction:row}.cart-line-r{display:flex;justify-content:stretch;flex-direction:row}@media (max-width: 800px){.cart-line-r{flex-direction:column}}.cart-line-r co-button{border:0;padding:0}.cart-line-r .cart-line-image{display:flex;flex:1 0 auto!important;flex-direction:column;align-items:center;justify-content:center}.cart-line-r .cart-line-image image-display{width:6em;height:6em}.cart-line-r .cart-line-description{display:flex;flex-direction:column;width:100%}.cart-line-r .cart-line-description .cart-line-description-main{font-weight:bold}.cart-line-r .cart-line-right{justify-content:flex-end}.cart-line-r .cart-line-right .cart-line-stock{width:10em}.cart-line-r .cart-line-right .cart-line-amount{width:15em}.cart-line-r .cart-line-right .cart-line-totals{display:flex;justify-content:flex-end;min-width:100px;font-weight:bold}.cart-line-r .cart-line-right .cart-line-totals span{text-align:right}.cart-line-t.article-text{padding-left:10em}\n"]
|
|
156
|
-
},] }
|
|
157
|
-
];
|
|
158
|
-
ShoppingCartLineComponent.ctorParameters = () => [
|
|
159
|
-
{ type: IconCacheService },
|
|
160
|
-
{ type: TransactionService },
|
|
161
|
-
{ type: PromptService },
|
|
162
|
-
{ type: DictionaryService }
|
|
163
|
-
];
|
|
164
|
-
ShoppingCartLineComponent.propDecorators = {
|
|
165
|
-
overlayMode: [{ type: Input }, { type: HostBinding, args: ["class.overlayed",] }],
|
|
166
|
-
overviewMode: [{ type: Input }, { type: HostBinding, args: ["class.overview",] }],
|
|
167
|
-
isText: [{ type: HostBinding, args: ["class.is-text",] }],
|
|
168
|
-
isArticle: [{ type: HostBinding, args: ["class.is-article",] }],
|
|
169
|
-
isSelected: [{ type: HostBinding, args: ["class.is-selected",] }],
|
|
170
|
-
line: [{ type: Input }]
|
|
171
|
-
};
|
|
172
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvcHBpbmctY2FydC1saW5lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50L3Nob3BwaW5nLWNhcnQvc2hvcHBpbmctY2FydC1saW5lL3Nob3BwaW5nLWNhcnQtbGluZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLFdBQVcsRUFBVSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFbkYsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLCtEQUErRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUMsK0JBQStCLEVBQUMsTUFBTSx3RUFBd0UsQ0FBQztBQUN2SCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSw4REFBOEQsQ0FBQztBQXNEL0YsTUFBTSxPQUFPLHlCQUF5QjtJQXlDcEMsWUFDUyxnQkFBa0MsRUFDbEMsT0FBMkIsRUFDMUIsY0FBNkIsRUFDN0Isa0JBQXFDO1FBSHRDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsWUFBTyxHQUFQLE9BQU8sQ0FBb0I7UUFDMUIsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFDN0IsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQTVDL0IsaUJBQVksR0FBdUIsa0JBQWtCLENBQUMsUUFBUSxDQUFDO1FBbUN4RSxVQUFLLEdBQWdCLFdBQVcsQ0FBQyxHQUFHLENBQUM7SUFVNUMsQ0FBQztJQTFCRCxJQUNXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIs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SUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxhQUFhLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztvQkFDM0csTUFBTTtnQkFDUixLQUFLLGlCQUFpQixDQUFDLElBQUksQ0FBQztnQkFDNUI7b0JBQ0UsTUFBTTthQUNUO1FBQ0gsQ0FBQztLQUFBOzs7WUE1S0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxvQkFBb0I7Z0JBQzlCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQThDVDs7YUFFRjs7O1lBeEQyQixnQkFBZ0I7WUFEcEMsa0JBQWtCO1lBQ29CLGFBQWE7WUFDbkQsaUJBQWlCOzs7MEJBMkR0QixLQUFLLFlBQ0wsV0FBVyxTQUFDLGlCQUFpQjsyQkFHN0IsS0FBSyxZQUNMLFdBQVcsU0FBQyxnQkFBZ0I7cUJBRzVCLFdBQVcsU0FBQyxlQUFlO3dCQUczQixXQUFXLFNBQUMsa0JBQWtCO3lCQUc5QixXQUFXLFNBQUMsbUJBQW1CO21CQUcvQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbmplY3QsIElucHV0fSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtUcmFuc2FjdGlvbkxpbmVJbmZvfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWxpbmUtaW5mby5ib1wiO1xuaW1wb3J0IHtTdG9ja1N0YXR1c30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL3JlZmNvZGUvc3RvY2stc3RhdHVzLmVudW1cIjtcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlXCI7XG5pbXBvcnQge0NvcmVDb21wb25lbnRzSWNvbiwgSWNvbkNhY2hlU2VydmljZSwgUHJvbXB0U2VydmljZX0gZnJvbSBcIkBjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTJcIjtcbmltcG9ydCB7RGljdGlvbmFyeVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlL2RpY3Rpb25hcnkuc2VydmljZVwiO1xuaW1wb3J0IHtSZXNvbHZlUGVuZGluZ0xpbmVSZWFzb25SZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3Jlc29sdmUtcGVuZGluZy1yZWFzb24tcmVxdWVzdC5ib1wiO1xuaW1wb3J0IHtQZW5kaW5nUmVhc29uVHlwZX0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL3BlbmRpbmctcmVhc29uLXR5cGUuZW51bVwiO1xuaW1wb3J0IHtMaW5lT3BlcmF0aW9uUmVzcG9uc2V9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvbGluZS1vcGVyYXRpb24tcmVzcG9uc2UuYm9cIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInNob3BwaW5nLWNhcnQtbGluZVwiLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgKm5nSWY9XCJsaW5lLmlzQXJ0aWNsZVwiIGNsYXNzPVwiY2FydC1saW5lLXJcIiBmeEZsZXg+XG4gICAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgY2xhc3M9XCJmdWxsLXdpZHRoXCI+XG4gICAgICAgIDxkaXYgZnhMYXlvdXQ9XCJjb2x1bW5cIiBjbGFzcz1cImNhcnQtbGluZS1pbWFnZVwiICpuZ0lmPVwiIW92ZXJ2aWV3TW9kZVwiPlxuICAgICAgICA8Y28tYnV0dG9uIFtpY29uRGF0YV09XCJpY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvblRyYXNoQmluKVwiXG4gICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cIidERUxFVEVfVFJBTlNBQ1RJT05fTElORV9ISU5UJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZGVsZXRlVHJhbnNhY3Rpb25MaW5lQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0cmlhbmdsZSB3aGl0ZVwiXG4gICAgICAgICAgICAgICAgICAgaWNvbkNsYXNzPVwibWVkaXVtIGxpZ2h0XCI+PC9jby1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGZ4TGF5b3V0PVwiY29sdW1uXCIgY2xhc3M9XCJjYXJ0LWxpbmUtaW1hZ2VcIiAqbmdJZj1cIiFvdmVydmlld01vZGVcIj5cbiAgICAgICAgICA8aW1hZ2UtZGlzcGxheSBbbW9kZWxdPVwiaW1hZ2VcIiBoaWRlT25FbXB0eU1vZGVsPjwvaW1hZ2UtZGlzcGxheT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgZnhMYXlvdXQ9XCJjb2x1bW5cIiBjbGFzcz1cImNhcnQtbGluZS1kZXNjcmlwdGlvblwiIGZ4TGF5b3V0R2FwPVwiMjBweFwiPlxuICAgICAgICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEdhcD1cIjEwcHhcIj5cbiAgICAgICAgICAgIDxzcGFuIFt0ZXh0Q29udGVudF09XCJsaW5lLmdvb2REZXNjcmlwdGlvblwiIGNsYXNzPVwiY2FydC1saW5lLWRlc2NyaXB0aW9uLW1haW5cIj48L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImxpbmUuZ29vZERlc2NyaXB0aW9uICYmIGxpbmUuYXJ0aWNsZU51bWJlclwiPnw8L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwibGluZS5hcnRpY2xlTnVtYmVyXCIgY2xhc3M9XCJjYXJ0LWxpbmUtZGVzY3JpcHRpb24tYXJ0bnJcIj48L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJsaW5lLmNvbmZpZ3VyYXRpb25SZWFkYWJsZVwiPjwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBjbGFzcz1cImNhcnQtbGluZS1yaWdodFwiPlxuICAgICAgICA8ZGl2IGZ4TGF5b3V0PVwiY29sdW1uXCIgY2xhc3M9XCJjYXJ0LWxpbmUtc3RvY2tcIiAqbmdJZj1cIiFvdmVybGF5TW9kZSAmJiAhb3ZlcnZpZXdNb2RlXCI+XG4gICAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cIidTVE9DSycgfCBsb2NhbGl6ZVwiIGNsYXNzPVwic21hbGwtZm9udFwiPjwvc3Bhbj5cbiAgICAgICAgICA8c3RvY2stc3RhdHVzLWluZGljYXRvciBbbW9kZWxdPVwic3RvY2tcIj48L3N0b2NrLXN0YXR1cy1pbmRpY2F0b3I+XG4gICAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cIidERUxJVkVSWV9USU1FX1BFUklPRCcgfCBsb2NhbGl6ZVwiIGNsYXNzPVwic21hbGwtZm9udFwiPjwvc3Bhbj5cbiAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwibGluZS5kZWxpdmVyeURhdGUgfCBkZWxpdmVyeVRpbWVcIj48L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FydC1saW5lLWFtb3VudFwiPlxuICAgICAgICAgIDxjby1pbnB1dC1udW1iZXItcGlja2VyXG4gICAgICAgICAgICBjbGFzcz1cImhvcml6b250YWxcIlxuICAgICAgICAgICAgWyhtb2RlbCldPVwibG9jYWxBbW91bnRcIiBbbWluXT1cIjBcIiBbYnV0dG9uU2hvd01vZGVdPVwiJ2Fsd2F5cydcIlxuICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRydWVcIlxuICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImNoYW5nZUxpbmVBbW91bnQoJGV2ZW50KVwiPjwvY28taW5wdXQtbnVtYmVyLXBpY2tlcj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcnQtbGluZS10b3RhbHNcIj5cbiAgICAgICAgICA8c3BhbiBbdGV4dENvbnRlbnRdPVwibGluZS5kaXNwbGF5TmV0TGluZVRvdGFsIHwgY29DdXJyZW5jeTogdHJ1ZVwiPjwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwibGluZS5pc1RleHRcIiBjbGFzcz1cImNhcnQtbGluZS10XCIgZnhGbGV4XG4gICAgICAgICBbY2xhc3MuYXJ0aWNsZS10ZXh0XT1cImxpbmUuYXJ0aWNsZUJvdW5kXCJcbiAgICAgICAgIFt0ZXh0Q29udGVudF09XCJsaW5lLnRleHRcIj5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbXCIuL3Nob3BwaW5nLWNhcnQtbGluZS5jb21wb25lbnQuc2Nzc1wiXVxufSlcbmV4cG9ydCBjbGFzcyBTaG9wcGluZ0NhcnRMaW5lQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIHB1YmxpYyByZWFkb25seSBpY29uVHJhc2hCaW46IENvcmVDb21wb25lbnRzSWNvbiA9IENvcmVDb21wb25lbnRzSWNvbi5UcmFzaEJpbjtcblxuICBASW5wdXQoKVxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5vdmVybGF5ZWRcIilcbiAgcHVibGljIG92ZXJsYXlNb2RlOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLm92ZXJ2aWV3XCIpXG4gIHB1YmxpYyBvdmVydmlld01vZGU6IGJvb2xlYW47XG5cbiAgQEhvc3RCaW5kaW5nKFwiY2xhc3MuaXMtdGV4dFwiKVxuICBwdWJsaWMgaXNUZXh0OiBib29sZWFuO1xuXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmlzLWFydGljbGVcIilcbiAgcHVibGljIGlzQXJ0aWNsZTogYm9vbGVhbjtcblxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5pcy1zZWxlY3RlZFwiKVxuICBwdWJsaWMgaXNTZWxlY3RlZDogYm9vbGVhbjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IGxpbmUoKTogVHJhbnNhY3Rpb25MaW5lSW5mbyB7XG4gICAgcmV0dXJuIHRoaXMuX2xpbmU7XG4gIH1cblxuICBwdWJsaWMgc2V0IGxpbmUodmFsdWU6IFRyYW5zYWN0aW9uTGluZUluZm8pIHtcbiAgICB0aGlzLl9saW5lID0gdmFsdWU7XG4gICAgdGhpcy5sb2NhbEFtb3VudCA9IHRoaXMuX2xpbmUuYW1vdW50O1xuICAgIHRoaXMuaXNUZXh0ID0gdGhpcy5fbGluZS5pc1RleHQ7XG4gICAgdGhpcy5pc0FydGljbGUgPSB0aGlzLl9saW5lLmlzQXJ0aWNsZTtcbiAgICB0aGlzLmlzU2VsZWN0ZWQgPSB0aGlzLl9saW5lLmlzU2VsZWN0ZWQ7XG4gICAgdGhpcy5fbG9hZExpbmVJbWFnZSgpO1xuICB9XG5cbiAgcHVibGljIGxvY2FsQW1vdW50OiBudW1iZXI7XG4gIHB1YmxpYyBpbWFnZTogc3RyaW5nO1xuICBwdWJsaWMgc3RvY2s6IFN0b2NrU3RhdHVzID0gU3RvY2tTdGF0dXMuTG93O1xuICBwdWJsaWMgY3VycmVudFJlYXNvbjogUmVzb2x2ZVBlbmRpbmdMaW5lUmVhc29uUmVxdWVzdDtcblxuICBwcml2YXRlIF9saW5lOiBUcmFuc2FjdGlvbkxpbmVJbmZvO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxuICAgIHB1YmxpYyBzZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBfcHJvbXB0U2VydmljZTogUHJvbXB0U2VydmljZSxcbiAgICBwcml2YXRlIF9kaWN0aW9uYXJ5U2VydmljZTogRGljdGlvbmFyeVNlcnZpY2UpIHtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9sb2FkTGluZUltYWdlKCk7XG4gIH1cblxuICBwdWJsaWMgY2hhbmdlTGluZUFtb3VudChhbW91bnQ6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuc2VydmljZS5jaGFuZ2VUcmFuc2FjdGlvbkxpbmVRdWFudGl0eSh0aGlzLmxpbmUudXVpZCwgYW1vdW50KS50aGVuKCh2YWx1ZTogTGluZU9wZXJhdGlvblJlc3BvbnNlKSA9PiB7XG4gICAgICBpZiAoIXZhbHVlIHx8ICF2YWx1ZS5pc1N1Y2Nlc3MpIHtcbiAgICAgICAgdGhpcy5sb2NhbEFtb3VudCA9IHRoaXMuX2xpbmUuYW1vdW50O1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLl9oYW5kbGVMaW5lKHZhbHVlKS50aGVuKCk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZGVsZXRlVHJhbnNhY3Rpb25MaW5lQ2xpY2soKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgZGVsZXRlTGluZTogYm9vbGVhbiAgPSBhd2FpdCB0aGlzLl9wcm9tcHRTZXJ2aWNlLnNob3dZZXNObyh0aGlzLl9kaWN0aW9uYXJ5U2VydmljZS5nZXQoXCJERUxFVEVfVFJBTlNBQ1RJT05fTElORVwiKSwgXCIgXCIpO1xuICAgIGlmIChkZWxldGVMaW5lKSB7XG4gICAgICB0aGlzLnNlcnZpY2UuZGVsZXRlVHJhbnNhY3Rpb25MaW5lKHRoaXMuc2VydmljZS5jdXJyZW50VHJhbnNhY3Rpb24udXVpZCwgdGhpcy5saW5lLnV1aWQpLnRoZW4oKHZhbHVlOiBMaW5lT3BlcmF0aW9uUmVzcG9uc2UpID0+IHtcbiAgICAgICAgdGhpcy5faGFuZGxlTGluZSh2YWx1ZSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF9sb2FkTGluZUltYWdlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMuaW1hZ2UgPSB0aGlzLmxpbmUgPyBhd2FpdCB0aGlzLnNlcnZpY2UucmV0cmlldmVMaW5lSW1hZ2UodGhpcy5saW5lKSA6IHVuZGVmaW5lZDtcbiAgfVxuXG5cbiAgcHJpdmF0ZSBhc3luYyBfY29uZmlybUFjdGlvbihsaW5lT3BlcmF0aW9uUmVzcG9uc2U6IExpbmVPcGVyYXRpb25SZXNwb25zZSk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMuY3VycmVudFJlYXNvbi5jb25maXJtYXRpb24gID0gYXdhaXQgdGhpcy5fcHJvbXB0U2VydmljZS5zaG93WWVzTm8obGluZU9wZXJhdGlvblJlc3BvbnNlLnBlbmRpbmdSZWFzb24sIFwiIFwiKTtcbiAgICB0aGlzLnNlcnZpY2UucmVzb2x2ZVBlbmRpbmdMaW5lUmVhc29uKHRoaXMuY3VycmVudFJlYXNvbilcbiAgICAgIC50aGVuKCh2YWx1ZTogTGluZU9wZXJhdGlvblJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHRoaXMuX2hhbmRsZUxpbmUodmFsdWUpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF9zaG93SW5mb3JtYXRpb24obGluZU9wZXJhdGlvblJlc3BvbnNlOiBMaW5lT3BlcmF0aW9uUmVzcG9uc2UpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLl9wcm9tcHRTZXJ2aWNlLnNob3dPa01vZGFsKGxpbmVPcGVyYXRpb25SZXNwb25zZS5wZW5kaW5nUmVhc29uLCBcIiBcIik7XG4gICAgdGhpcy5zZXJ2aWNlLnJlc29sdmVQZW5kaW5nTGluZVJlYXNvbih0aGlzLmN1cnJlbnRSZWFzb24pXG4gICAgICAudGhlbigodmFsdWU6IExpbmVPcGVyYXRpb25SZXNwb25zZSkgPT4ge1xuICAgICAgICB0aGlzLl9oYW5kbGVMaW5lKHZhbHVlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgIGFzeW5jIF9oYW5kbGVMaW5lKGxpbmVPcGVyYXRpb25SZXNwb25zZTogTGluZU9wZXJhdGlvblJlc3BvbnNlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKGxpbmVPcGVyYXRpb25SZXNwb25zZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuY3VycmVudFJlYXNvbiA9IG5ldyBSZXNvbHZlUGVuZGluZ0xpbmVSZWFzb25SZXF1ZXN0KGxpbmVPcGVyYXRpb25SZXNwb25zZS5saW5lVXVpZCxcbiAgICAgIGxpbmVPcGVyYXRpb25SZXNwb25zZS5wZW5kaW5nUmVhc29uLCBsaW5lT3BlcmF0aW9uUmVzcG9uc2UucGVuZGluZ1JlYXNvblR5cGUpO1xuXG4gICAgc3dpdGNoIChsaW5lT3BlcmF0aW9uUmVzcG9uc2UucGVuZGluZ1JlYXNvblR5cGUpIHtcbiAgICAgIGNhc2UgUGVuZGluZ1JlYXNvblR5cGUuQUJPUlRFRDpcbiAgICAgIGNhc2UgUGVuZGluZ1JlYXNvblR5cGUuQ0FOQ0VMTEVEOlxuICAgICAgICB0aGlzLmxvY2FsQW1vdW50ID0gdGhpcy5fbGluZS5hbW91bnQ7XG4gICAgICAgIGlmIChsaW5lT3BlcmF0aW9uUmVzcG9uc2UucGVuZGluZ1JlYXNvbiAhPT0gXCJVU0VSX0RFQ0lTSU9OXCIpIHtcbiAgICAgICAgICBhd2FpdCB0aGlzLl9wcm9tcHRTZXJ2aWNlLnNob3dOb3RpZmljYXRpb24odGhpcy5fZGljdGlvbmFyeVNlcnZpY2UuZ2V0KGxpbmVPcGVyYXRpb25SZXNwb25zZS5wZW5kaW5nUmVhc29uKSwgXCIgXCIpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBQZW5kaW5nUmVhc29uVHlwZS5DT05GSVJNQVRJT05fTkVFREVEOlxuICAgICAgICBhd2FpdCB0aGlzLl9jb25maXJtQWN0aW9uKGxpbmVPcGVyYXRpb25SZXNwb25zZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBQZW5kaW5nUmVhc29uVHlwZS5OT05fQ1JJVElDQUxfRElTQ09OVElOVUFUSU9OOlxuICAgICAgICBhd2FpdCB0aGlzLl9zaG93SW5mb3JtYXRpb24obGluZU9wZXJhdGlvblJlc3BvbnNlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFBlbmRpbmdSZWFzb25UeXBlLklOVkFMSURfTE9HSVNUSUNTOlxuICAgICAgICB0aGlzLmxvY2FsQW1vdW50ID0gdGhpcy5fbGluZS5hbW91bnQ7XG4gICAgICAgIGF3YWl0IHRoaXMuX3Byb21wdFNlcnZpY2Uuc2hvd0Vycm9yKHRoaXMuX2RpY3Rpb25hcnlTZXJ2aWNlLmdldChsaW5lT3BlcmF0aW9uUmVzcG9uc2UucGVuZGluZ1JlYXNvbiksIFwiIFwiKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFBlbmRpbmdSZWFzb25UeXBlLk5PTkU6XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxufVxuIl19
|