@colijnit/transaction 12.1.6 → 12.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -13
- package/bundles/colijnit-transaction.umd.js +5786 -7155
- package/bundles/colijnit-transaction.umd.js.map +1 -1
- package/colijnit-transaction.d.ts +57 -57
- package/colijnit-transaction.metadata.json +1 -1
- package/esm2015/colijnit-transaction.js +58 -58
- package/esm2015/lib/assets/dictionary/text.properties.js +418 -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 +275 -0
- package/esm2015/lib/component/checkout/checkout-overview-relation-edit/checkout-overview-relation-edit.component.js +538 -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 +132 -0
- package/esm2015/lib/component/checkout/checkout.module.js +86 -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 +41 -0
- package/esm2015/lib/component/core/stock-status-indicator/stock-status-indicator.component.js +24 -0
- package/esm2015/lib/component/delivery-type-tile/delivery-type-tile.component.js +40 -0
- package/esm2015/lib/component/delivery-type-tile/delivery-type-tile.module.js +26 -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/payment/payment.component.js +73 -0
- package/esm2015/lib/component/payment/payment.module.js +27 -0
- package/esm2015/lib/component/payment-tile/payment-tile.component.js +32 -0
- package/esm2015/lib/component/payment-tile/payment-tile.module.js +25 -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 +61 -0
- package/esm2015/lib/component/relation-address-tile/relation-address-tile.module.js +32 -0
- package/esm2015/lib/component/seller-information/seller-information.component.js +61 -0
- package/esm2015/lib/component/seller-information/seller-information.module.js +21 -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 +55 -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 +124 -0
- package/esm2015/lib/component/stepper/stepper.module.js +29 -0
- package/esm2015/lib/component/tile/tile.component.js +32 -0
- package/esm2015/lib/component/tile/tile.module.js +19 -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 +278 -0
- package/esm2015/lib/component/transaction-line/transaction-line.module.js +32 -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-line-side-panel/transaction-line-side-panel.component.js +163 -0
- package/esm2015/lib/component/transaction-line-side-panel/transaction-line-side-panel.module.js +30 -0
- package/esm2015/lib/component/transaction-lines/transaction-lines.component.js +122 -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 +24 -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/delivery-type.js +3 -0
- package/esm2015/lib/model/icon-svg.js +23 -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 +591 -0
- package/esm2015/lib/service/options.service.js +69 -0
- package/esm2015/lib/service/pending-reason.service.js +172 -0
- package/esm2015/lib/service/transaction.service.js +521 -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 +5913 -7162
- 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 +23 -36
- package/lib/component/checkout/checkout-overview-delivery-edit/style/_layout.scss +98 -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 +7 -0
- package/{app → lib}/component/checkout/checkout-overview-relation-edit/checkout-overview-relation-edit.component.d.ts +41 -14
- package/lib/component/checkout/checkout-overview-relation-edit/style/_layout.scss +125 -0
- package/lib/component/checkout/checkout-overview-relation-edit/style/_material-definition.scss +18 -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 +10 -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 +8 -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 +36 -0
- package/lib/component/checkout/checkout.module.d.ts +2 -0
- package/lib/component/checkout/style/_layout.scss +31 -0
- package/lib/component/checkout/style/_material-definition.scss +5 -0
- package/lib/component/checkout/style/_theme.scss +8 -0
- package/lib/component/checkout/style/material.scss +10 -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 +5 -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 → 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/lib/component/core/relation/relation-customer-groups.component.scss +6 -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/delivery-type-tile/delivery-type-tile.component.d.ts +10 -0
- package/lib/component/delivery-type-tile/delivery-type-tile.module.d.ts +2 -0
- package/lib/component/delivery-type-tile/style/_layout.scss +35 -0
- package/lib/component/delivery-type-tile/style/_material-definition.scss +16 -0
- package/lib/component/delivery-type-tile/style/_theme.scss +6 -0
- package/lib/component/delivery-type-tile/style/material.scss +5 -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/payment/payment.component.d.ts +18 -0
- package/lib/component/payment/payment.module.d.ts +2 -0
- package/lib/component/payment/style/_layout.scss +54 -0
- package/lib/component/payment/style/_material-definition.scss +17 -0
- package/lib/component/payment/style/_theme.scss +16 -0
- package/lib/component/payment/style/material.scss +5 -0
- package/lib/component/payment-tile/payment-tile.component.d.ts +9 -0
- package/lib/component/payment-tile/payment-tile.module.d.ts +2 -0
- package/lib/component/payment-tile/style/_layout.scss +22 -0
- package/lib/component/payment-tile/style/_material-definition.scss +0 -0
- package/lib/component/payment-tile/style/_theme.scss +6 -0
- package/lib/component/payment-tile/style/material.scss +5 -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 +25 -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 +14 -0
- package/lib/component/relation-address-tile/relation-address-tile.module.d.ts +2 -0
- package/lib/component/relation-address-tile/style/_layout.scss +42 -0
- package/lib/component/relation-address-tile/style/_material-definition.scss +16 -0
- package/lib/component/relation-address-tile/style/_theme.scss +21 -0
- package/lib/component/relation-address-tile/style/material.scss +5 -0
- package/lib/component/sell-order/sell-order-side-panel/sell-order-side-panel.component.scss +49 -0
- package/lib/component/sell-order/sell-order.component.scss +15 -0
- package/lib/component/seller-information/seller-information.component.d.ts +13 -0
- package/lib/component/seller-information/seller-information.module.d.ts +2 -0
- package/lib/component/seller-information/style/_layout.scss +21 -0
- package/lib/component/seller-information/style/_material-definition.scss +2 -0
- package/lib/component/seller-information/style/_theme.scss +7 -0
- package/lib/component/seller-information/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 +13 -0
- package/lib/component/shopping-cart-preview/shopping-cart-preview.module.d.ts +2 -0
- package/lib/component/shopping-cart-preview/style/_layout.scss +48 -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 +35 -0
- package/lib/component/stepper/stepper.module.d.ts +2 -0
- package/lib/component/stepper/style/_layout.scss +107 -0
- package/lib/component/stepper/style/_material-definition.scss +18 -0
- package/lib/component/stepper/style/_theme.scss +43 -0
- package/lib/component/stepper/style/material.scss +4 -0
- package/lib/component/tile/style/_layout.scss +36 -0
- package/lib/component/tile/style/_material-definition.scss +16 -0
- package/lib/component/tile/style/_theme.scss +36 -0
- package/lib/component/tile/style/material.scss +4 -0
- package/lib/component/tile/tile.component.d.ts +6 -0
- package/lib/component/tile/tile.module.d.ts +2 -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 +41 -0
- package/lib/component/transaction-line/style/material.scss +9 -0
- package/lib/component/transaction-line/transaction-line.component.d.ts +51 -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-line-side-panel/style/_layout.scss +47 -0
- package/lib/component/transaction-line-side-panel/style/_material-definition.scss +10 -0
- package/lib/component/transaction-line-side-panel/style/_theme.scss +7 -0
- package/lib/component/transaction-line-side-panel/style/material.scss +4 -0
- package/lib/component/transaction-line-side-panel/transaction-line-side-panel.component.d.ts +20 -0
- package/lib/component/transaction-line-side-panel/transaction-line-side-panel.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 +32 -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 +22 -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/delivery-type.d.ts +7 -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 +15 -8
- 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 +16 -47
- package/lib/style/_mixin.scss +9 -0
- package/lib/style/_variables.scss +101 -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/checkout-transaction/checkout-transaction.component.d.ts +0 -13
- package/app/component/checkout/ione-checkout.component.d.ts +0 -39
- package/app/component/checkout/ione-checkout.module.d.ts +0 -2
- 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/core/image-display/image-display.component.d.ts +0 -13
- package/app/component/core/no-image-display/no-image-display.component.d.ts +0 -5
- 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/enum/position-grid-row.enum.d.ts +0 -4
- 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/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/checkout-transaction/checkout-transaction.component.js +0 -53
- package/esm2015/app/component/checkout/ione-checkout.component.js +0 -135
- package/esm2015/app/component/checkout/ione-checkout.module.js +0 -76
- 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/icon/icon.component.js +0 -32
- package/esm2015/app/component/core/image-display/image-display.component.js +0 -41
- package/esm2015/app/component/core/no-image-display/no-image-display.component.js +0 -26
- 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/position-grid-row.enum.js +0 -6
- 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/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
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { Injectable } from "@angular/core";
|
|
3
|
+
import { BehaviorSubject } from "rxjs";
|
|
4
|
+
import { DictionaryService } from "./dictionary.service";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "./dictionary.service";
|
|
7
|
+
export class OptionsService {
|
|
8
|
+
constructor(_dictionary) {
|
|
9
|
+
this._dictionary = _dictionary;
|
|
10
|
+
this.optionsLoaded = new BehaviorSubject(false);
|
|
11
|
+
}
|
|
12
|
+
set options(value) {
|
|
13
|
+
this._options = value;
|
|
14
|
+
}
|
|
15
|
+
get options() {
|
|
16
|
+
return this._options;
|
|
17
|
+
}
|
|
18
|
+
createSettingsFromObject(obj) {
|
|
19
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
this.options = new Object();
|
|
21
|
+
if (obj.hasOwnProperty("url")) {
|
|
22
|
+
this.options.url = obj["url"];
|
|
23
|
+
}
|
|
24
|
+
if (obj.hasOwnProperty("schema")) {
|
|
25
|
+
this.options.schema = obj["schema"];
|
|
26
|
+
}
|
|
27
|
+
if (obj.hasOwnProperty("version")) {
|
|
28
|
+
this.options.version = obj["version"];
|
|
29
|
+
}
|
|
30
|
+
if (obj.hasOwnProperty("languageCode")) {
|
|
31
|
+
this.options.languageCode = obj["languageCode"];
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
this.options.languageCode = "NL";
|
|
35
|
+
}
|
|
36
|
+
if (obj.hasOwnProperty("username")) {
|
|
37
|
+
this.options.username = obj["username"];
|
|
38
|
+
}
|
|
39
|
+
if (obj.hasOwnProperty("password")) {
|
|
40
|
+
this.options.password = obj["password"];
|
|
41
|
+
}
|
|
42
|
+
if (obj.hasOwnProperty("session")) {
|
|
43
|
+
this.options.session = obj["session"];
|
|
44
|
+
}
|
|
45
|
+
if (obj.hasOwnProperty("useLoginEncryption")) {
|
|
46
|
+
this.options.useLoginEncryption = obj["useLoginEncryption"];
|
|
47
|
+
}
|
|
48
|
+
this.optionsLoaded.next(true);
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
initialize(options) {
|
|
52
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
+
if (options) {
|
|
54
|
+
yield this.createSettingsFromObject(options);
|
|
55
|
+
yield this._dictionary.setDictionary(this.options.languageCode);
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
OptionsService.ɵprov = i0.ɵɵdefineInjectable({ factory: function OptionsService_Factory() { return new OptionsService(i0.ɵɵinject(i1.DictionaryService)); }, token: OptionsService, providedIn: "root" });
|
|
61
|
+
OptionsService.decorators = [
|
|
62
|
+
{ type: Injectable, args: [{
|
|
63
|
+
providedIn: "root"
|
|
64
|
+
},] }
|
|
65
|
+
];
|
|
66
|
+
OptionsService.ctorParameters = () => [
|
|
67
|
+
{ type: DictionaryService }
|
|
68
|
+
];
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJhbnNhY3Rpb24vc3JjL2xpYi9zZXJ2aWNlL29wdGlvbnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3JDLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDOzs7QUFLdkQsTUFBTSxPQUFPLGNBQWM7SUFjekIsWUFBb0IsV0FBOEI7UUFBOUIsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO1FBSjNDLGtCQUFhLEdBQTZCLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBSzVFLENBQUM7SUFiRCxJQUFXLE9BQU8sQ0FBQyxLQUFVO1FBQzNCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFTWSx3QkFBd0IsQ0FBQyxHQUFROztZQUM1QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksTUFBTSxFQUFFLENBQUM7WUFDNUIsSUFBSSxHQUFHLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDL0I7WUFDRCxJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEVBQUU7Z0JBQ2hDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUNyQztZQUNELElBQUksR0FBRyxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDakMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQ3ZDO1lBQ0QsSUFBSSxHQUFHLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxFQUFFO2dCQUN0QyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksR0FBRyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7YUFDakQ7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO2FBQ2xDO1lBQ0QsSUFBSSxHQUFHLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxFQUFFO2dCQUNsQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7YUFDekM7WUFDRCxJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLEVBQUU7Z0JBQ2xDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUN6QztZQUNELElBQUksR0FBRyxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDakMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQ3ZDO1lBQ0QsSUFBSSxHQUFHLENBQUMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLEVBQUU7Z0JBQzVDLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLEdBQUcsR0FBRyxDQUFDLG9CQUFvQixDQUFDLENBQUM7YUFDN0Q7WUFFRCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoQyxDQUFDO0tBQUE7SUFFWSxVQUFVLENBQUMsT0FBWTs7WUFDbEMsSUFBSSxPQUFPLEVBQUU7Z0JBQ1gsTUFBTSxJQUFJLENBQUMsd0JBQXdCLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQzdDLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQzthQUNqRTtRQUNILENBQUM7S0FBQTs7OztZQXpERixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQUpPLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtCZWhhdmlvclN1YmplY3R9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7RGljdGlvbmFyeVNlcnZpY2V9IGZyb20gXCIuL2RpY3Rpb25hcnkuc2VydmljZVwiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46IFwicm9vdFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBPcHRpb25zU2VydmljZSB7XHJcblxyXG4gIHB1YmxpYyBzZXQgb3B0aW9ucyh2YWx1ZTogYW55KSB7XHJcbiAgICB0aGlzLl9vcHRpb25zID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IG9wdGlvbnMoKTogYW55IHtcclxuICAgIHJldHVybiB0aGlzLl9vcHRpb25zO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9wdGlvbnNMb2FkZWQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xyXG5cclxuICBwcml2YXRlIF9vcHRpb25zOiBhbnk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2RpY3Rpb25hcnk6IERpY3Rpb25hcnlTZXJ2aWNlKSB7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgY3JlYXRlU2V0dGluZ3NGcm9tT2JqZWN0KG9iajogYW55KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLm9wdGlvbnMgPSBuZXcgT2JqZWN0KCk7XHJcbiAgICBpZiAob2JqLmhhc093blByb3BlcnR5KFwidXJsXCIpKSB7XHJcbiAgICAgIHRoaXMub3B0aW9ucy51cmwgPSBvYmpbXCJ1cmxcIl07XHJcbiAgICB9XHJcbiAgICBpZiAob2JqLmhhc093blByb3BlcnR5KFwic2NoZW1hXCIpKSB7XHJcbiAgICAgIHRoaXMub3B0aW9ucy5zY2hlbWEgPSBvYmpbXCJzY2hlbWFcIl07XHJcbiAgICB9XHJcbiAgICBpZiAob2JqLmhhc093blByb3BlcnR5KFwidmVyc2lvblwiKSkge1xyXG4gICAgICB0aGlzLm9wdGlvbnMudmVyc2lvbiA9IG9ialtcInZlcnNpb25cIl07XHJcbiAgICB9XHJcbiAgICBpZiAob2JqLmhhc093blByb3BlcnR5KFwibGFuZ3VhZ2VDb2RlXCIpKSB7XHJcbiAgICAgIHRoaXMub3B0aW9ucy5sYW5ndWFnZUNvZGUgPSBvYmpbXCJsYW5ndWFnZUNvZGVcIl07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLm9wdGlvbnMubGFuZ3VhZ2VDb2RlID0gXCJOTFwiO1xyXG4gICAgfVxyXG4gICAgaWYgKG9iai5oYXNPd25Qcm9wZXJ0eShcInVzZXJuYW1lXCIpKSB7XHJcbiAgICAgIHRoaXMub3B0aW9ucy51c2VybmFtZSA9IG9ialtcInVzZXJuYW1lXCJdO1xyXG4gICAgfVxyXG4gICAgaWYgKG9iai5oYXNPd25Qcm9wZXJ0eShcInBhc3N3b3JkXCIpKSB7XHJcbiAgICAgIHRoaXMub3B0aW9ucy5wYXNzd29yZCA9IG9ialtcInBhc3N3b3JkXCJdO1xyXG4gICAgfVxyXG4gICAgaWYgKG9iai5oYXNPd25Qcm9wZXJ0eShcInNlc3Npb25cIikpIHtcclxuICAgICAgdGhpcy5vcHRpb25zLnNlc3Npb24gPSBvYmpbXCJzZXNzaW9uXCJdO1xyXG4gICAgfVxyXG4gICAgaWYgKG9iai5oYXNPd25Qcm9wZXJ0eShcInVzZUxvZ2luRW5jcnlwdGlvblwiKSkge1xyXG4gICAgICB0aGlzLm9wdGlvbnMudXNlTG9naW5FbmNyeXB0aW9uID0gb2JqW1widXNlTG9naW5FbmNyeXB0aW9uXCJdO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMub3B0aW9uc0xvYWRlZC5uZXh0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGluaXRpYWxpemUob3B0aW9uczogYW55KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAob3B0aW9ucykge1xyXG4gICAgICBhd2FpdCB0aGlzLmNyZWF0ZVNldHRpbmdzRnJvbU9iamVjdChvcHRpb25zKTtcclxuICAgICAgYXdhaXQgdGhpcy5fZGljdGlvbmFyeS5zZXREaWN0aW9uYXJ5KHRoaXMub3B0aW9ucy5sYW5ndWFnZUNvZGUpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { Injectable } from "@angular/core";
|
|
3
|
+
import { TransactionInfoResponse } from "@colijnit/transactionapi/build/model/transaction-info-response.bo";
|
|
4
|
+
import { PendingReasonType } from "@colijnit/transactionapi/build/enum/pending-reason-type.enum";
|
|
5
|
+
import { ResolvePendingLineReasonRequest } from "@colijnit/transactionapi/build/model/resolve-pending-reason-request.bo";
|
|
6
|
+
import { OptionsService } from "./options.service";
|
|
7
|
+
import { IOneConnectorAdapterService } from "./ione-connector-adapter.service";
|
|
8
|
+
import { BehaviorSubject } from "rxjs";
|
|
9
|
+
import { CustomerFullObject } from "@colijnit/transactionapi/build/model/customer-full-object.bo";
|
|
10
|
+
import { SetTransactionDeliveryOptionsRequest } from "@colijnit/transactionapi/build/model/set-transaction-delivery-options-request.bo";
|
|
11
|
+
import { TransactionLineType } from "@colijnit/transactionapi/build/enum/transaction-line-type.enum";
|
|
12
|
+
import { RelationStatus } from "@colijnit/transactionapi/build/enum/relation-status.enum";
|
|
13
|
+
import { DialogService } from "./dialog.service";
|
|
14
|
+
import * as i0 from "@angular/core";
|
|
15
|
+
import * as i1 from "./dialog.service";
|
|
16
|
+
import * as i2 from "./options.service";
|
|
17
|
+
import * as i3 from "./ione-connector-adapter.service";
|
|
18
|
+
export class PendingReasonService {
|
|
19
|
+
constructor(dialogService, options, connector) {
|
|
20
|
+
this.dialogService = dialogService;
|
|
21
|
+
this.options = options;
|
|
22
|
+
this.connector = connector;
|
|
23
|
+
this.transactionUpdated = new BehaviorSubject(undefined);
|
|
24
|
+
this.applicationUser = false;
|
|
25
|
+
this.currentTransaction = new TransactionInfoResponse();
|
|
26
|
+
this.relation = new CustomerFullObject();
|
|
27
|
+
this.deliveryOptions = new SetTransactionDeliveryOptionsRequest();
|
|
28
|
+
this.articleAmount = 0;
|
|
29
|
+
}
|
|
30
|
+
init(options) {
|
|
31
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
yield this.options.initialize(options);
|
|
33
|
+
this.connector.connect();
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
cancelAddTransactionLine(lineUuid, remember = true) {
|
|
37
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
38
|
+
return new Promise((resolve, reject) => {
|
|
39
|
+
this.connector.cancelAddTransactionLine(lineUuid)
|
|
40
|
+
.then((response) => __awaiter(this, void 0, void 0, function* () {
|
|
41
|
+
if (remember) {
|
|
42
|
+
this._rememberCurrentTransaction(response);
|
|
43
|
+
}
|
|
44
|
+
if (response.isSuccess) {
|
|
45
|
+
resolve(response);
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
reject(response);
|
|
49
|
+
}
|
|
50
|
+
}))
|
|
51
|
+
.catch((reason) => {
|
|
52
|
+
resolve(null);
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
handleLineOperationStatuses(response) {
|
|
58
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
+
if (!response.lineOperationStatuses || response.lineOperationStatuses.length === 0) {
|
|
60
|
+
return true;
|
|
61
|
+
}
|
|
62
|
+
for (let i = 0; i < response.lineOperationStatuses.length; i++) {
|
|
63
|
+
const status = response.lineOperationStatuses[i];
|
|
64
|
+
const transLine = response.transactionLines.find(t => t.lineNr === status.lineNr);
|
|
65
|
+
yield this._handleLineOperationStatus(status, transLine);
|
|
66
|
+
}
|
|
67
|
+
return true;
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
_rememberCurrentTransaction(value) {
|
|
71
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
72
|
+
this.currentTransaction = value;
|
|
73
|
+
this._setTransactionDeliveryOptions();
|
|
74
|
+
this._setAmount();
|
|
75
|
+
this._initializeTransaction();
|
|
76
|
+
this.transactionUpdated.next(this.currentTransaction);
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
_handleLineOperationStatus(operationStatus, transactionLine) {
|
|
80
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
81
|
+
switch (operationStatus.pendingReasonType) {
|
|
82
|
+
case PendingReasonType.ABORTED:
|
|
83
|
+
case PendingReasonType.CANCELLED:
|
|
84
|
+
yield this._cancelArticle(operationStatus.uuid);
|
|
85
|
+
break;
|
|
86
|
+
case PendingReasonType.CONFIRMATION_NEEDED:
|
|
87
|
+
yield this._confirmAction(transactionLine.uuid, operationStatus.pendingReason, operationStatus.pendingReasonType);
|
|
88
|
+
break;
|
|
89
|
+
// case PendingReasonType.INVALID_LOGISTICS:
|
|
90
|
+
// await this.showStockManager(this.currentPendingLine);
|
|
91
|
+
// break;
|
|
92
|
+
// case PendingReasonType.NON_CRITICAL_DISCONTINUATION:
|
|
93
|
+
// await this._showInformation();
|
|
94
|
+
// break;
|
|
95
|
+
// case PendingReasonType.CHARACTERISTICS_ANSWER_NEEDED:
|
|
96
|
+
// this.CharacteristicsAnswerNeeded();
|
|
97
|
+
// break;
|
|
98
|
+
case PendingReasonType.NONE:
|
|
99
|
+
default:
|
|
100
|
+
break;
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
resolvePendingLineReason(pendingLineValues) {
|
|
105
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
106
|
+
const response = yield this.connector.resolvePendingLineReason(pendingLineValues);
|
|
107
|
+
this._rememberCurrentTransaction(response);
|
|
108
|
+
this.handleLineOperationStatuses(response);
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
_confirmAction(uuid, reason, type) {
|
|
112
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
113
|
+
const reasonRequest = new ResolvePendingLineReasonRequest(uuid, reason, type);
|
|
114
|
+
// const pendingReasonText: string = await this._getPendingReasonText(this.currentOperationStatus.pendingReason);
|
|
115
|
+
reasonRequest.confirmation = yield this.dialogService.showYesNo('Action', reason);
|
|
116
|
+
yield this.resolvePendingLineReason(reasonRequest);
|
|
117
|
+
// this._handleLineOperationStatus()
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
_setTransactionDeliveryOptions() {
|
|
121
|
+
if (!this.deliveryOptions) {
|
|
122
|
+
this.deliveryOptions = new SetTransactionDeliveryOptionsRequest();
|
|
123
|
+
}
|
|
124
|
+
this.deliveryOptions.allowPartialDelivery = this.currentTransaction.transactionInfo.allowPartialDelivery;
|
|
125
|
+
this.deliveryOptions.deliveryDate = this.currentTransaction.transactionInfo.deliveryDate;
|
|
126
|
+
this.deliveryOptions.deliveryMethod = this.currentTransaction.transactionInfo.deliveryMethod;
|
|
127
|
+
this.deliveryOptions.deliveryOptions = this.currentTransaction.transactionInfo.deliveryOptions;
|
|
128
|
+
this.deliveryOptions.marketingCode = this.currentTransaction.transactionInfo.marketingCode;
|
|
129
|
+
this.deliveryOptions.ownReference = this.currentTransaction.transactionInfo.ownReference;
|
|
130
|
+
this.deliveryOptions.preferredDeliveryDate = this.currentTransaction.transactionInfo.preferredDeliveryDate;
|
|
131
|
+
this.deliveryOptions.preferredDeliveryDate2 = this.currentTransaction.transactionInfo.preferredDeliveryDate2;
|
|
132
|
+
this.deliveryOptions.relationReference = this.currentTransaction.transactionInfo.relationReference;
|
|
133
|
+
this.deliveryOptions.remark = this.currentTransaction.transactionInfo.remark;
|
|
134
|
+
this.deliveryOptions.transactionUuid = this.currentTransaction.transactionInfo.uuid;
|
|
135
|
+
}
|
|
136
|
+
_setAmount() {
|
|
137
|
+
if (this.currentTransaction && this.currentTransaction.transactionLines) {
|
|
138
|
+
this.articleAmount = this.currentTransaction.transactionLines.filter(t => t.lineType === TransactionLineType.ArticleLine).length;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
_initializeTransaction() {
|
|
142
|
+
if (!this.relation) {
|
|
143
|
+
this.relation = new CustomerFullObject();
|
|
144
|
+
this.relation.relationStatus = RelationStatus.RegularCustomer;
|
|
145
|
+
this.relation.startDate = new Date();
|
|
146
|
+
this.deliveryOptions = new SetTransactionDeliveryOptionsRequest();
|
|
147
|
+
}
|
|
148
|
+
if (this.currentTransaction.transactionInfo.preferredDeliveryDate2 === undefined) {
|
|
149
|
+
this.currentTransaction.transactionInfo.preferredDeliveryDate2 = "=";
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
_cancelArticle(uuid) {
|
|
153
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
154
|
+
yield this.cancelAddTransactionLine(uuid, false)
|
|
155
|
+
.then((response) => {
|
|
156
|
+
this._rememberCurrentTransaction(response);
|
|
157
|
+
});
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
PendingReasonService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PendingReasonService_Factory() { return new PendingReasonService(i0.ɵɵinject(i1.DialogService), i0.ɵɵinject(i2.OptionsService), i0.ɵɵinject(i3.IOneConnectorAdapterService)); }, token: PendingReasonService, providedIn: "root" });
|
|
162
|
+
PendingReasonService.decorators = [
|
|
163
|
+
{ type: Injectable, args: [{
|
|
164
|
+
providedIn: "root"
|
|
165
|
+
},] }
|
|
166
|
+
];
|
|
167
|
+
PendingReasonService.ctorParameters = () => [
|
|
168
|
+
{ type: DialogService },
|
|
169
|
+
{ type: OptionsService },
|
|
170
|
+
{ type: IOneConnectorAdapterService }
|
|
171
|
+
];
|
|
172
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVuZGluZy1yZWFzb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvc2VydmljZS9wZW5kaW5nLXJlYXNvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLG1FQUFtRSxDQUFDO0FBRTFHLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBQy9GLE9BQU8sRUFBQywrQkFBK0IsRUFBQyxNQUFNLHdFQUF3RSxDQUFDO0FBR3ZILE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUM3RSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3JDLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBQ2hHLE9BQU8sRUFBQyxvQ0FBb0MsRUFBQyxNQUFNLGtGQUFrRixDQUFDO0FBQ3RJLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLGdFQUFnRSxDQUFDO0FBQ25HLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwwREFBMEQsQ0FBQztBQUN4RixPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7Ozs7O0FBSy9DLE1BQU0sT0FBTyxvQkFBb0I7SUFVL0IsWUFDWSxhQUE0QixFQUM1QixPQUF1QixFQUN2QixTQUFzQztRQUZ0QyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUN2QixjQUFTLEdBQVQsU0FBUyxDQUE2QjtRQVozQyx1QkFBa0IsR0FBNkMsSUFBSSxlQUFlLENBQTBCLFNBQVMsQ0FBQyxD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QkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25JbmZvUmVzcG9uc2V9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24taW5mby1yZXNwb25zZS5ib1wiO1xyXG5pbXBvcnQge0xpbmVPcGVyYXRpb25TdGF0dXN9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvbGluZS1vcGVyYXRpb24tc3RhdHVzLmJvXCI7XHJcbmltcG9ydCB7UGVuZGluZ1JlYXNvblR5cGV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvZW51bS9wZW5kaW5nLXJlYXNvbi10eXBlLmVudW1cIjtcclxuaW1wb3J0IHtSZXNvbHZlUGVuZGluZ0xpbmVSZWFzb25SZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3Jlc29sdmUtcGVuZGluZy1yZWFzb24tcmVxdWVzdC5ib1wiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uTGluZUluZm99IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tbGluZS1pbmZvLmJvXCI7XHJcbmltcG9ydCB7VmFsaWRhdGlvblJlc3VsdH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC92YWxpZGF0aW9uLXJlc3VsdFwiO1xyXG5pbXBvcnQge09wdGlvbnNTZXJ2aWNlfSBmcm9tIFwiLi9vcHRpb25zLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtJT25lQ29ubmVjdG9yQWRhcHRlclNlcnZpY2V9IGZyb20gXCIuL2lvbmUtY29ubmVjdG9yLWFkYXB0ZXIuc2VydmljZVwiO1xyXG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHtDdXN0b21lckZ1bGxPYmplY3R9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvY3VzdG9tZXItZnVsbC1vYmplY3QuYm9cIjtcclxuaW1wb3J0IHtTZXRUcmFuc2FjdGlvbkRlbGl2ZXJ5T3B0aW9uc1JlcXVlc3R9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvc2V0LXRyYW5zYWN0aW9uLWRlbGl2ZXJ5LW9wdGlvbnMtcmVxdWVzdC5ib1wiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uTGluZVR5cGV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvZW51bS90cmFuc2FjdGlvbi1saW5lLXR5cGUuZW51bVwiO1xyXG5pbXBvcnQge1JlbGF0aW9uU3RhdHVzfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL2VudW0vcmVsYXRpb24tc3RhdHVzLmVudW1cIjtcclxuaW1wb3J0IHtEaWFsb2dTZXJ2aWNlfSBmcm9tIFwiLi9kaWFsb2cuc2VydmljZVwiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46IFwicm9vdFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQZW5kaW5nUmVhc29uU2VydmljZSB7XHJcbiAgcHVibGljIHRyYW5zYWN0aW9uVXBkYXRlZDogQmVoYXZpb3JTdWJqZWN0PFRyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VHJhbnNhY3Rpb25JbmZvUmVzcG9uc2U+KHVuZGVmaW5lZCk7XHJcblxyXG4gIHB1YmxpYyBhcHBsaWNhdGlvblVzZXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgY3VycmVudFRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbkluZm9SZXNwb25zZSA9IG5ldyBUcmFuc2FjdGlvbkluZm9SZXNwb25zZSgpO1xyXG4gIHB1YmxpYyByZWxhdGlvbjogQ3VzdG9tZXJGdWxsT2JqZWN0ID0gbmV3IEN1c3RvbWVyRnVsbE9iamVjdCgpO1xyXG4gIHB1YmxpYyBkZWxpdmVyeU9wdGlvbnM6IFNldFRyYW5zYWN0aW9uRGVsaXZlcnlPcHRpb25zUmVxdWVzdCA9IG5ldyBTZXRUcmFuc2FjdGlvbkRlbGl2ZXJ5T3B0aW9uc1JlcXVlc3QoKTtcclxuXHJcbiAgcHVibGljIGFydGljbGVBbW91bnQ6IG51bWJlciA9IDA7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgb3B0aW9uczogT3B0aW9uc1NlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgY29ubmVjdG9yOiBJT25lQ29ubmVjdG9yQWRhcHRlclNlcnZpY2VcclxuICApIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBpbml0KG9wdGlvbnM6IGFueSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgYXdhaXQgdGhpcy5vcHRpb25zLmluaXRpYWxpemUob3B0aW9ucyk7XHJcbiAgICB0aGlzLmNvbm5lY3Rvci5jb25uZWN0KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgY2FuY2VsQWRkVHJhbnNhY3Rpb25MaW5lKGxpbmVVdWlkOiBzdHJpbmcsIHJlbWVtYmVyOiBib29sZWFuID0gdHJ1ZSk6IFByb21pc2U8VHJhbnNhY3Rpb25JbmZvUmVzcG9uc2U+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZTxUcmFuc2FjdGlvbkluZm9SZXNwb25zZT4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICB0aGlzLmNvbm5lY3Rvci5jYW5jZWxBZGRUcmFuc2FjdGlvbkxpbmUobGluZVV1aWQpXHJcbiAgICAgICAgLnRoZW4oYXN5bmMgKHJlc3BvbnNlOiBUcmFuc2FjdGlvbkluZm9SZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlbWVtYmVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3JlbWVtYmVyQ3VycmVudFRyYW5zYWN0aW9uKHJlc3BvbnNlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmIChyZXNwb25zZS5pc1N1Y2Nlc3MpIHtcclxuICAgICAgICAgICAgcmVzb2x2ZShyZXNwb25zZSk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZWplY3QocmVzcG9uc2UpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLmNhdGNoKChyZWFzb246IFZhbGlkYXRpb25SZXN1bHQpID0+IHtcclxuICAgICAgICAgIHJlc29sdmUobnVsbCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVMaW5lT3BlcmF0aW9uU3RhdHVzZXMocmVzcG9uc2U6IFRyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICBpZiAoIXJlc3BvbnNlLmxpbmVPcGVyYXRpb25TdGF0dXNlcyB8fCByZXNwb25zZS5saW5lT3BlcmF0aW9uU3RhdHVzZXMubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgZm9yIChsZXQgaTogbnVtYmVyID0gMDsgaSA8IHJlc3BvbnNlLmxpbmVPcGVyYXRpb25TdGF0dXNlcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICBjb25zdCBzdGF0dXM6IExpbmVPcGVyYXRpb25TdGF0dXMgPSByZXNwb25zZS5saW5lT3BlcmF0aW9uU3RhdHVzZXNbaV07XHJcbiAgICAgIGNvbnN0IHRyYW5zTGluZTogVHJhbnNhY3Rpb25MaW5lSW5mbyA9IHJlc3BvbnNlLnRyYW5zYWN0aW9uTGluZXMuZmluZCh0ID0+IHQubGluZU5yID09PSBzdGF0dXMubGluZU5yKTtcclxuICAgICAgYXdhaXQgdGhpcy5faGFuZGxlTGluZU9wZXJhdGlvblN0YXR1cyhzdGF0dXMsIHRyYW5zTGluZSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBhc3luYyBfcmVtZW1iZXJDdXJyZW50VHJhbnNhY3Rpb24odmFsdWU6IFRyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0aGlzLmN1cnJlbnRUcmFuc2FjdGlvbiA9IHZhbHVlO1xyXG4gICAgdGhpcy5fc2V0VHJhbnNhY3Rpb25EZWxpdmVyeU9wdGlvbnMoKTtcclxuICAgIHRoaXMuX3NldEFtb3VudCgpO1xyXG4gICAgdGhpcy5faW5pdGlhbGl6ZVRyYW5zYWN0aW9uKCk7XHJcbiAgICB0aGlzLnRyYW5zYWN0aW9uVXBkYXRlZC5uZXh0KHRoaXMuY3VycmVudFRyYW5zYWN0aW9uKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX2hhbmRsZUxpbmVPcGVyYXRpb25TdGF0dXMob3BlcmF0aW9uU3RhdHVzOiBMaW5lT3BlcmF0aW9uU3RhdHVzLCB0cmFuc2FjdGlvbkxpbmU6IFRyYW5zYWN0aW9uTGluZUluZm8pOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHN3aXRjaCAob3BlcmF0aW9uU3RhdHVzLnBlbmRpbmdSZWFzb25UeXBlKSB7XHJcbiAgICAgIGNhc2UgUGVuZGluZ1JlYXNvblR5cGUuQUJPUlRFRDpcclxuICAgICAgY2FzZSBQZW5kaW5nUmVhc29uVHlwZS5DQU5DRUxMRUQ6XHJcbiAgICAgICAgYXdhaXQgdGhpcy5fY2FuY2VsQXJ0aWNsZShvcGVyYXRpb25TdGF0dXMudXVpZCk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgUGVuZGluZ1JlYXNvblR5cGUuQ09ORklSTUFUSU9OX05FRURFRDpcclxuICAgICAgICBhd2FpdCB0aGlzLl9jb25maXJtQWN0aW9uKHRyYW5zYWN0aW9uTGluZS51dWlkLCBvcGVyYXRpb25TdGF0dXMucGVuZGluZ1JlYXNvbiwgb3BlcmF0aW9uU3RhdHVzLnBlbmRpbmdSZWFzb25UeXBlKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgLy8gY2FzZSBQZW5kaW5nUmVhc29uVHlwZS5JTlZBTElEX0xPR0lTVElDUzpcclxuICAgICAgLy8gICBhd2FpdCB0aGlzLnNob3dTdG9ja01hbmFnZXIodGhpcy5jdXJyZW50UGVuZGluZ0xpbmUpO1xyXG4gICAgICAvLyAgIGJyZWFrO1xyXG4gICAgICAvLyBjYXNlIFBlbmRpbmdSZWFzb25UeXBlLk5PTl9DUklUSUNBTF9ESVNDT05USU5VQVRJT046XHJcbiAgICAgIC8vICAgYXdhaXQgdGhpcy5fc2hvd0luZm9ybWF0aW9uKCk7XHJcbiAgICAgIC8vICAgYnJlYWs7XHJcbiAgICAgIC8vIGNhc2UgUGVuZGluZ1JlYXNvblR5cGUuQ0hBUkFDVEVSSVNUSUNTX0FOU1dFUl9ORUVERUQ6XHJcbiAgICAgIC8vICAgdGhpcy5DaGFyYWN0ZXJpc3RpY3NBbnN3ZXJOZWVkZWQoKTtcclxuICAgICAgLy8gICBicmVhaztcclxuICAgICAgY2FzZSBQZW5kaW5nUmVhc29uVHlwZS5OT05FOlxyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHJlc29sdmVQZW5kaW5nTGluZVJlYXNvbihwZW5kaW5nTGluZVZhbHVlczogUmVzb2x2ZVBlbmRpbmdMaW5lUmVhc29uUmVxdWVzdCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3QgcmVzcG9uc2U6IFRyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlID0gYXdhaXQgdGhpcy5jb25uZWN0b3IucmVzb2x2ZVBlbmRpbmdMaW5lUmVhc29uKHBlbmRpbmdMaW5lVmFsdWVzKTtcclxuICAgIHRoaXMuX3JlbWVtYmVyQ3VycmVudFRyYW5zYWN0aW9uKHJlc3BvbnNlKTtcclxuICAgIHRoaXMuaGFuZGxlTGluZU9wZXJhdGlvblN0YXR1c2VzKHJlc3BvbnNlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX2NvbmZpcm1BY3Rpb24odXVpZDogc3RyaW5nLCByZWFzb246IHN0cmluZywgdHlwZTogUGVuZGluZ1JlYXNvblR5cGUpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGNvbnN0IHJlYXNvblJlcXVlc3QgPSBuZXcgUmVzb2x2ZVBlbmRpbmdMaW5lUmVhc29uUmVxdWVzdCh1dWlkLCByZWFzb24sIHR5cGUpO1xyXG4gICAgLy8gY29uc3QgcGVuZGluZ1JlYXNvblRleHQ6IHN0cmluZyA9IGF3YWl0IHRoaXMuX2dldFBlbmRpbmdSZWFzb25UZXh0KHRoaXMuY3VycmVudE9wZXJhdGlvblN0YXR1cy5wZW5kaW5nUmVhc29uKTtcclxuICAgIHJlYXNvblJlcXVlc3QuY29uZmlybWF0aW9uID0gYXdhaXQgdGhpcy5kaWFsb2dTZXJ2aWNlLnNob3dZZXNObygnQWN0aW9uJywgcmVhc29uKTtcclxuICAgIGF3YWl0IHRoaXMucmVzb2x2ZVBlbmRpbmdMaW5lUmVhc29uKHJlYXNvblJlcXVlc3QpO1xyXG4gICAgLy8gdGhpcy5faGFuZGxlTGluZU9wZXJhdGlvblN0YXR1cygpXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zZXRUcmFuc2FjdGlvbkRlbGl2ZXJ5T3B0aW9ucygpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5kZWxpdmVyeU9wdGlvbnMpIHtcclxuICAgICAgdGhpcy5kZWxpdmVyeU9wdGlvbnMgPSBuZXcgU2V0VHJhbnNhY3Rpb25EZWxpdmVyeU9wdGlvbnNSZXF1ZXN0KCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmRlbGl2ZXJ5T3B0aW9ucy5hbGxvd1BhcnRpYWxEZWxpdmVyeSA9IHRoaXMuY3VycmVudFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby5hbGxvd1BhcnRpYWxEZWxpdmVyeTtcclxuICAgIHRoaXMuZGVsaXZlcnlPcHRpb25zLmRlbGl2ZXJ5RGF0ZSA9IHRoaXMuY3VycmVudFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby5kZWxpdmVyeURhdGU7XHJcbiAgICB0aGlzLmRlbGl2ZXJ5T3B0aW9ucy5kZWxpdmVyeU1ldGhvZCA9IHRoaXMuY3VycmVudFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby5kZWxpdmVyeU1ldGhvZDtcclxuICAgIHRoaXMuZGVsaXZlcnlPcHRpb25zLmRlbGl2ZXJ5T3B0aW9ucyA9IHRoaXMuY3VycmVudFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby5kZWxpdmVyeU9wdGlvbnM7XHJcbiAgICB0aGlzLmRlbGl2ZXJ5T3B0aW9ucy5tYXJrZXRpbmdDb2RlID0gdGhpcy5jdXJyZW50VHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLm1hcmtldGluZ0NvZGU7XHJcbiAgICB0aGlzLmRlbGl2ZXJ5T3B0aW9ucy5vd25SZWZlcmVuY2UgPSB0aGlzLmN1cnJlbnRUcmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8ub3duUmVmZXJlbmNlO1xyXG4gICAgdGhpcy5kZWxpdmVyeU9wdGlvbnMucHJlZmVycmVkRGVsaXZlcnlEYXRlID0gdGhpcy5jdXJyZW50VHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLnByZWZlcnJlZERlbGl2ZXJ5RGF0ZTtcclxuICAgIHRoaXMuZGVsaXZlcnlPcHRpb25zLnByZWZlcnJlZERlbGl2ZXJ5RGF0ZTIgPSB0aGlzLmN1cnJlbnRUcmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8ucHJlZmVycmVkRGVsaXZlcnlEYXRlMjtcclxuICAgIHRoaXMuZGVsaXZlcnlPcHRpb25zLnJlbGF0aW9uUmVmZXJlbmNlID0gdGhpcy5jdXJyZW50VHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLnJlbGF0aW9uUmVmZXJlbmNlO1xyXG4gICAgdGhpcy5kZWxpdmVyeU9wdGlvbnMucmVtYXJrID0gdGhpcy5jdXJyZW50VHJhbnNhY3Rpb24udHJhbnNhY3Rpb25JbmZvLnJlbWFyaztcclxuICAgIHRoaXMuZGVsaXZlcnlPcHRpb25zLnRyYW5zYWN0aW9uVXVpZCA9IHRoaXMuY3VycmVudFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby51dWlkO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc2V0QW1vdW50KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuY3VycmVudFRyYW5zYWN0aW9uICYmIHRoaXMuY3VycmVudFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uTGluZXMpIHtcclxuICAgICAgdGhpcy5hcnRpY2xlQW1vdW50ID0gdGhpcy5jdXJyZW50VHJhbnNhY3Rpb24udHJhbnNhY3Rpb25MaW5lcy5maWx0ZXIodCA9PiB0LmxpbmVUeXBlID09PSBUcmFuc2FjdGlvbkxpbmVUeXBlLkFydGljbGVMaW5lKS5sZW5ndGg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9pbml0aWFsaXplVHJhbnNhY3Rpb24oKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMucmVsYXRpb24pIHtcclxuICAgICAgdGhpcy5yZWxhdGlvbiA9IG5ldyBDdXN0b21lckZ1bGxPYmplY3QoKTtcclxuICAgICAgdGhpcy5yZWxhdGlvbi5yZWxhdGlvblN0YXR1cyA9IFJlbGF0aW9uU3RhdHVzLlJlZ3VsYXJDdXN0b21lcjtcclxuICAgICAgdGhpcy5yZWxhdGlvbi5zdGFydERhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICB0aGlzLmRlbGl2ZXJ5T3B0aW9ucyA9IG5ldyBTZXRUcmFuc2FjdGlvbkRlbGl2ZXJ5T3B0aW9uc1JlcXVlc3QoKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmN1cnJlbnRUcmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8ucHJlZmVycmVkRGVsaXZlcnlEYXRlMiA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuY3VycmVudFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mby5wcmVmZXJyZWREZWxpdmVyeURhdGUyID0gXCI9XCI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFzeW5jIF9jYW5jZWxBcnRpY2xlKHV1aWQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgYXdhaXQgdGhpcy5jYW5jZWxBZGRUcmFuc2FjdGlvbkxpbmUodXVpZCwgZmFsc2UpXHJcbiAgICAgIC50aGVuKChyZXNwb25zZTogVHJhbnNhY3Rpb25JbmZvUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIHRoaXMuX3JlbWVtYmVyQ3VycmVudFRyYW5zYWN0aW9uKHJlc3BvbnNlKTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|