@ohioepa/oepa-ui-lib 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/esm2022/lib/account-search-input/account-search-input.component.mjs +147 -0
- package/esm2022/lib/account-search-modal/account-search-modal.component.mjs +151 -0
- package/esm2022/lib/action-btn/action-btn.component.mjs +70 -0
- package/esm2022/lib/action-btn/oepa-action-event.mjs +2 -0
- package/esm2022/lib/action-btn/oepa-action.mjs +2 -0
- package/esm2022/lib/action-btn-modal/action-btn-modal.component.mjs +21 -0
- package/esm2022/lib/address/address.component.mjs +174 -0
- package/esm2022/lib/address/oepa-address.service.mjs +64 -0
- package/esm2022/lib/address/oepa-form-address.mjs +2 -0
- package/esm2022/lib/blank/blank.component.mjs +14 -0
- package/esm2022/lib/checkbox/checkbox.component.mjs +33 -0
- package/esm2022/lib/checkbox-input/checkbox-input.component.mjs +41 -0
- package/esm2022/lib/comment-modal/comment-modal.component.mjs +56 -0
- package/esm2022/lib/common-forms.module.mjs +291 -0
- package/esm2022/lib/confirmation-modal/confirmation-modal.component.mjs +120 -0
- package/esm2022/lib/contact/contact.component.mjs +102 -0
- package/esm2022/lib/contact/oepa-form-contact.mjs +2 -0
- package/esm2022/lib/date-input/date-input.component.mjs +52 -0
- package/esm2022/lib/date-input-modal/date-input-modal.component.mjs +68 -0
- package/esm2022/lib/datepicker/datepicker.component.mjs +131 -0
- package/esm2022/lib/daterangepicker/daterangepicker.component.mjs +70 -0
- package/esm2022/lib/document/document-editor/document-editor.component.mjs +225 -0
- package/esm2022/lib/document/document-event-entity-type.mjs +7 -0
- package/esm2022/lib/document/document-event-type.mjs +7 -0
- package/esm2022/lib/document/document-event.mjs +2 -0
- package/esm2022/lib/document/document-group/document-group.component.mjs +210 -0
- package/esm2022/lib/document/document-part/document-part.component.mjs +19 -0
- package/esm2022/lib/document/document-part-editor/document-part-editor.component.mjs +296 -0
- package/esm2022/lib/document/document-placeholder-modal/document-placeholder-modal.component.mjs +49 -0
- package/esm2022/lib/document/document-section/document-section.component.mjs +226 -0
- package/esm2022/lib/document/document.service.mjs +325 -0
- package/esm2022/lib/document/group-modal/group-modal.component.mjs +46 -0
- package/esm2022/lib/document/part-modal/part-modal.component.mjs +48 -0
- package/esm2022/lib/document/portal-document-class.mjs +2 -0
- package/esm2022/lib/document/portal-document-group.mjs +2 -0
- package/esm2022/lib/document/portal-document-part.mjs +2 -0
- package/esm2022/lib/document/portal-document-placeholder.mjs +2 -0
- package/esm2022/lib/document/portal-document-section.mjs +2 -0
- package/esm2022/lib/document/portal-document-text.mjs +2 -0
- package/esm2022/lib/document/portal-document-type.mjs +2 -0
- package/esm2022/lib/document/portal-document.mjs +2 -0
- package/esm2022/lib/document/portal-email-attachment-type.mjs +2 -0
- package/esm2022/lib/document/portal-email-attachment.mjs +2 -0
- package/esm2022/lib/document/portal-email-filter.mjs +2 -0
- package/esm2022/lib/document/portal-email.mjs +2 -0
- package/esm2022/lib/document/section-modal/section-modal.component.mjs +46 -0
- package/esm2022/lib/dual-list-box/array.pipes.mjs +71 -0
- package/esm2022/lib/dual-list-box/dual-list-box.component.mjs +339 -0
- package/esm2022/lib/dual-list-box/items-moved-event.mjs +2 -0
- package/esm2022/lib/dual-list-box/list-box-item.mjs +2 -0
- package/esm2022/lib/ebiz-address/ebiz-address.component.mjs +62 -0
- package/esm2022/lib/edoc-attachment/edoc-attachment.component.mjs +216 -0
- package/esm2022/lib/edoc-attachment/edoc-attachment.service.mjs +38 -0
- package/esm2022/lib/edoc-attachment/edocument-attachment-metadata.mjs +2 -0
- package/esm2022/lib/edoc-attachment/edocument-attachment.mjs +2 -0
- package/esm2022/lib/edoc-attachment/edocument-reference.mjs +2 -0
- package/esm2022/lib/entity/entity.service.mjs +104 -0
- package/esm2022/lib/entity/organization-create-modal/organization-create-modal.component.mjs +307 -0
- package/esm2022/lib/entity/organization-search-input/organization-search-input.component.mjs +127 -0
- package/esm2022/lib/entity/organization-search-modal/organization-search-modal.component.mjs +304 -0
- package/esm2022/lib/entity/person-create-modal/person-create-modal.component.mjs +316 -0
- package/esm2022/lib/entity/person-search-input/person-search-input.component.mjs +129 -0
- package/esm2022/lib/entity/person-search-modal/person-search-modal.component.mjs +311 -0
- package/esm2022/lib/entity/place-create-modal/place-create-modal.component.mjs +14 -0
- package/esm2022/lib/entity/place-search-input/place-search-input.component.mjs +126 -0
- package/esm2022/lib/entity/place-search-modal/place-search-modal.component.mjs +216 -0
- package/esm2022/lib/esri-map/esri-map.component.mjs +416 -0
- package/esm2022/lib/file-upload/file-upload.component.mjs +148 -0
- package/esm2022/lib/lynx-image-upload/lynx-image-upload.component.mjs +143 -0
- package/esm2022/lib/lynx-image-upload/lynx.service.mjs +47 -0
- package/esm2022/lib/masks/oepa-create-integer-mask.mjs +39 -0
- package/esm2022/lib/masks/oepa-integer-mask-args.mjs +2 -0
- package/esm2022/lib/message/message.component.mjs +19 -0
- package/esm2022/lib/message/oepa-message-type.mjs +7 -0
- package/esm2022/lib/message/oepa-message.mjs +31 -0
- package/esm2022/lib/message-list/message-list.component.mjs +24 -0
- package/esm2022/lib/multi-file-upload/multi-file-upload.component.mjs +137 -0
- package/esm2022/lib/notes-modal/notes-modal.component.mjs +177 -0
- package/esm2022/lib/notes-modal/oepa-note-result.mjs +2 -0
- package/esm2022/lib/notes-modal/oepa-note.mjs +2 -0
- package/esm2022/lib/numeric-input/numeric-input.component.mjs +50 -0
- package/esm2022/lib/numeric-input.directive.mjs +76 -0
- package/esm2022/lib/oepa-error-message/oepa-error-message.component.mjs +39 -0
- package/esm2022/lib/oepa-forms.service.mjs +199 -0
- package/esm2022/lib/oepa-images.mjs +59 -0
- package/esm2022/lib/oepa-wait-message/oepa-wait-message.component.mjs +29 -0
- package/esm2022/lib/ohio-lat-long/ohio-lat-long.component.mjs +176 -0
- package/esm2022/lib/parameter/parameter.mjs +2 -0
- package/esm2022/lib/parameter/parameter.service.mjs +47 -0
- package/esm2022/lib/params-help-button/params-help-button.component.mjs +42 -0
- package/esm2022/lib/phone-number/phone-number.component.mjs +44 -0
- package/esm2022/lib/pin-modal/oepa-attestation.mjs +2 -0
- package/esm2022/lib/pin-modal/oepa-pin.mjs +2 -0
- package/esm2022/lib/pin-modal/oepa-pin.service.mjs +54 -0
- package/esm2022/lib/pin-modal/oepa-security-question.mjs +2 -0
- package/esm2022/lib/pin-modal/pin-modal.component.mjs +186 -0
- package/esm2022/lib/progress-indicator/progress-info.mjs +2 -0
- package/esm2022/lib/select-input/select-input.component.mjs +96 -0
- package/esm2022/lib/server-timeout-modal/server-timeout-modal.component.mjs +63 -0
- package/esm2022/lib/shopping-cart/shopping-cart-summary/shopping-cart-summary.component.mjs +54 -0
- package/esm2022/lib/shopping-cart/shopping-cart-view/shopping-cart-view-parameters.mjs +2 -0
- package/esm2022/lib/shopping-cart/shopping-cart-view/shopping-cart-view.component.mjs +190 -0
- package/esm2022/lib/shopping-cart/shopping-cart.service.mjs +89 -0
- package/esm2022/lib/start-end-timepicker/start-end-timepicker.component.mjs +126 -0
- package/esm2022/lib/table/oepa-p-column.mjs +2 -0
- package/esm2022/lib/table/oepa-table-cell-classname.pipe.mjs +22 -0
- package/esm2022/lib/table/oepa-table-cell-click-event.mjs +2 -0
- package/esm2022/lib/table/oepa-table-cell-colspan.pipe.mjs +22 -0
- package/esm2022/lib/table/oepa-table-cell-hidden.pipe.mjs +22 -0
- package/esm2022/lib/table/oepa-table-cell-icon-classname.pipe.mjs +22 -0
- package/esm2022/lib/table/oepa-table-cell-img-src.pipe.mjs +22 -0
- package/esm2022/lib/table/oepa-table-cell-inner-html.pipe.mjs +22 -0
- package/esm2022/lib/table/oepa-table-cell-input-component.pipe.mjs +22 -0
- package/esm2022/lib/table/oepa-table-cell-not-selectable.pipe.mjs +22 -0
- package/esm2022/lib/table/oepa-table-cell-value.pipe.mjs +22 -0
- package/esm2022/lib/table/oepa-table-cell.mjs +2 -0
- package/esm2022/lib/table/oepa-table-column.mjs +2 -0
- package/esm2022/lib/table/oepa-table-config.mjs +2 -0
- package/esm2022/lib/table/oepa-table-filter.mjs +2 -0
- package/esm2022/lib/table/oepa-table-filtering.directive.mjs +57 -0
- package/esm2022/lib/table/oepa-table-header.mjs +2 -0
- package/esm2022/lib/table/oepa-table-page-info.mjs +2 -0
- package/esm2022/lib/table/oepa-table-popover.mjs +2 -0
- package/esm2022/lib/table/oepa-table-row.mjs +2 -0
- package/esm2022/lib/table/oepa-table-sort-criterion.mjs +2 -0
- package/esm2022/lib/table/oepa-table-sorting.directive.mjs +57 -0
- package/esm2022/lib/table/oepa-table.mjs +2 -0
- package/esm2022/lib/table/p-table/p-table.component.mjs +826 -0
- package/esm2022/lib/table/table-data-cell/table-data-cell-click-event.mjs +2 -0
- package/esm2022/lib/table/table-data-cell/table-data-cell.component.mjs +60 -0
- package/esm2022/lib/table/table-export.service.mjs +57 -0
- package/esm2022/lib/table/table-header-cell/table-header-cell.component.mjs +61 -0
- package/esm2022/lib/table/table.component.mjs +793 -0
- package/esm2022/lib/table/table.service.mjs +112 -0
- package/esm2022/lib/template-confirmation-modal/template-confirmation-modal.component.mjs +46 -0
- package/esm2022/lib/text-area-input/text-area-input.component.mjs +48 -0
- package/esm2022/lib/text-input/text-input.component.mjs +48 -0
- package/esm2022/lib/timeout-modal/timeout-modal.component.mjs +31 -0
- package/esm2022/lib/timepicker/timepicker.component.mjs +48 -0
- package/esm2022/lib/validation/form-validator.mjs +2 -0
- package/esm2022/lib/validation/validation.service.mjs +134 -0
- package/esm2022/lib/yes-no/yes-no.component.mjs +44 -0
- package/esm2022/lib/yes-no-boolean/yes-no.component.mjs +44 -0
- package/esm2022/lib/yes-no-other-input/yes-no-other-input.component.mjs +41 -0
- package/esm2022/lib/zip-code/zip-code.component.mjs +42 -0
- package/esm2022/ohioepa-oepa-ui-lib.mjs +5 -0
- package/esm2022/public-api.mjs +142 -0
- package/fesm2022/ohioepa-oepa-ui-lib.mjs +10720 -0
- package/fesm2022/ohioepa-oepa-ui-lib.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/account-search-input/account-search-input.component.d.ts +36 -0
- package/lib/account-search-modal/account-search-modal.component.d.ts +40 -0
- package/lib/action-btn/action-btn.component.d.ts +34 -0
- package/lib/action-btn/oepa-action-event.d.ts +19 -0
- package/lib/action-btn/oepa-action.d.ts +13 -0
- package/lib/action-btn-modal/action-btn-modal.component.d.ts +12 -0
- package/lib/address/address.component.d.ts +43 -0
- package/lib/address/oepa-address.service.d.ts +28 -0
- package/lib/address/oepa-form-address.d.ts +19 -0
- package/lib/blank/blank.component.d.ts +8 -0
- package/lib/checkbox/checkbox.component.d.ts +15 -0
- package/lib/checkbox-input/checkbox-input.component.d.ts +17 -0
- package/lib/comment-modal/comment-modal.component.d.ts +22 -0
- package/lib/common-forms.module.d.ts +104 -0
- package/lib/confirmation-modal/confirmation-modal.component.d.ts +49 -0
- package/lib/contact/contact.component.d.ts +33 -0
- package/lib/contact/oepa-form-contact.d.ts +58 -0
- package/lib/date-input/date-input.component.d.ts +18 -0
- package/lib/date-input-modal/date-input-modal.component.d.ts +25 -0
- package/lib/datepicker/datepicker.component.d.ts +28 -0
- package/lib/daterangepicker/daterangepicker.component.d.ts +22 -0
- package/lib/document/document-editor/document-editor.component.d.ts +34 -0
- package/lib/document/document-event-entity-type.d.ts +5 -0
- package/lib/document/document-event-type.d.ts +5 -0
- package/lib/document/document-event.d.ts +9 -0
- package/lib/document/document-group/document-group.component.d.ts +38 -0
- package/lib/document/document-part/document-part.component.d.ts +10 -0
- package/lib/document/document-part-editor/document-part-editor.component.d.ts +46 -0
- package/lib/document/document-placeholder-modal/document-placeholder-modal.component.d.ts +19 -0
- package/lib/document/document-section/document-section.component.d.ts +37 -0
- package/lib/document/document.service.d.ts +90 -0
- package/lib/document/group-modal/group-modal.component.d.ts +20 -0
- package/lib/document/part-modal/part-modal.component.d.ts +20 -0
- package/lib/document/portal-document-class.d.ts +10 -0
- package/lib/document/portal-document-group.d.ts +15 -0
- package/lib/document/portal-document-part.d.ts +22 -0
- package/lib/document/portal-document-placeholder.d.ts +12 -0
- package/lib/document/portal-document-section.d.ts +13 -0
- package/lib/document/portal-document-text.d.ts +7 -0
- package/lib/document/portal-document-type.d.ts +15 -0
- package/lib/document/portal-document.d.ts +27 -0
- package/lib/document/portal-email-attachment-type.d.ts +6 -0
- package/lib/document/portal-email-attachment.d.ts +12 -0
- package/lib/document/portal-email-filter.d.ts +12 -0
- package/lib/document/portal-email.d.ts +18 -0
- package/lib/document/section-modal/section-modal.component.d.ts +20 -0
- package/lib/dual-list-box/array.pipes.d.ts +36 -0
- package/lib/dual-list-box/dual-list-box.component.d.ts +91 -0
- package/lib/dual-list-box/items-moved-event.d.ts +11 -0
- package/lib/dual-list-box/list-box-item.d.ts +7 -0
- package/lib/ebiz-address/ebiz-address.component.d.ts +23 -0
- package/lib/edoc-attachment/edoc-attachment.component.d.ts +44 -0
- package/lib/edoc-attachment/edoc-attachment.service.d.ts +16 -0
- package/lib/edoc-attachment/edocument-attachment-metadata.d.ts +16 -0
- package/lib/edoc-attachment/edocument-attachment.d.ts +12 -0
- package/lib/edoc-attachment/edocument-reference.d.ts +5 -0
- package/lib/entity/entity.service.d.ts +31 -0
- package/lib/entity/organization-create-modal/organization-create-modal.component.d.ts +53 -0
- package/lib/entity/organization-search-input/organization-search-input.component.d.ts +34 -0
- package/lib/entity/organization-search-modal/organization-search-modal.component.d.ts +56 -0
- package/lib/entity/person-create-modal/person-create-modal.component.d.ts +53 -0
- package/lib/entity/person-search-input/person-search-input.component.d.ts +34 -0
- package/lib/entity/person-search-modal/person-search-modal.component.d.ts +56 -0
- package/lib/entity/place-create-modal/place-create-modal.component.d.ts +8 -0
- package/lib/entity/place-search-input/place-search-input.component.d.ts +34 -0
- package/lib/entity/place-search-modal/place-search-modal.component.d.ts +41 -0
- package/lib/esri-map/esri-map.component.d.ts +41 -0
- package/lib/file-upload/file-upload.component.d.ts +37 -0
- package/lib/lynx-image-upload/lynx-image-upload.component.d.ts +36 -0
- package/lib/lynx-image-upload/lynx.service.d.ts +16 -0
- package/lib/masks/oepa-create-integer-mask.d.ts +8 -0
- package/lib/masks/oepa-integer-mask-args.d.ts +5 -0
- package/lib/message/message.component.d.ts +10 -0
- package/lib/message/oepa-message-type.d.ts +5 -0
- package/lib/message/oepa-message.d.ts +7 -0
- package/lib/message-list/message-list.component.d.ts +11 -0
- package/lib/multi-file-upload/multi-file-upload.component.d.ts +36 -0
- package/lib/notes-modal/notes-modal.component.d.ts +50 -0
- package/lib/notes-modal/oepa-note-result.d.ts +10 -0
- package/lib/notes-modal/oepa-note.d.ts +13 -0
- package/lib/numeric-input/numeric-input.component.d.ts +20 -0
- package/lib/numeric-input.directive.d.ts +19 -0
- package/lib/oepa-error-message/oepa-error-message.component.d.ts +9 -0
- package/lib/oepa-forms.service.d.ts +28 -0
- package/lib/oepa-images.d.ts +53 -0
- package/lib/oepa-wait-message/oepa-wait-message.component.d.ts +9 -0
- package/lib/ohio-lat-long/ohio-lat-long.component.d.ts +63 -0
- package/lib/parameter/parameter.d.ts +7 -0
- package/lib/parameter/parameter.service.d.ts +18 -0
- package/lib/params-help-button/params-help-button.component.d.ts +15 -0
- package/lib/phone-number/phone-number.component.d.ts +19 -0
- package/lib/pin-modal/oepa-attestation.d.ts +10 -0
- package/lib/pin-modal/oepa-pin.d.ts +26 -0
- package/lib/pin-modal/oepa-pin.service.d.ts +38 -0
- package/lib/pin-modal/oepa-security-question.d.ts +8 -0
- package/lib/pin-modal/pin-modal.component.d.ts +46 -0
- package/lib/progress-indicator/progress-info.d.ts +4 -0
- package/lib/select-input/select-input.component.d.ts +27 -0
- package/lib/server-timeout-modal/server-timeout-modal.component.d.ts +23 -0
- package/lib/shopping-cart/shopping-cart-summary/shopping-cart-summary.component.d.ts +18 -0
- package/lib/shopping-cart/shopping-cart-view/shopping-cart-view-parameters.d.ts +10 -0
- package/lib/shopping-cart/shopping-cart-view/shopping-cart-view.component.d.ts +51 -0
- package/lib/shopping-cart/shopping-cart.service.d.ts +44 -0
- package/lib/start-end-timepicker/start-end-timepicker.component.d.ts +29 -0
- package/lib/table/oepa-p-column.d.ts +4 -0
- package/lib/table/oepa-table-cell-classname.pipe.d.ts +9 -0
- package/lib/table/oepa-table-cell-click-event.d.ts +15 -0
- package/lib/table/oepa-table-cell-colspan.pipe.d.ts +9 -0
- package/lib/table/oepa-table-cell-hidden.pipe.d.ts +9 -0
- package/lib/table/oepa-table-cell-icon-classname.pipe.d.ts +9 -0
- package/lib/table/oepa-table-cell-img-src.pipe.d.ts +9 -0
- package/lib/table/oepa-table-cell-inner-html.pipe.d.ts +9 -0
- package/lib/table/oepa-table-cell-input-component.pipe.d.ts +9 -0
- package/lib/table/oepa-table-cell-not-selectable.pipe.d.ts +9 -0
- package/lib/table/oepa-table-cell-value.pipe.d.ts +9 -0
- package/lib/table/oepa-table-cell.d.ts +66 -0
- package/lib/table/oepa-table-column.d.ts +71 -0
- package/lib/table/oepa-table-config.d.ts +72 -0
- package/lib/table/oepa-table-filter.d.ts +10 -0
- package/lib/table/oepa-table-filtering.directive.d.ts +17 -0
- package/lib/table/oepa-table-header.d.ts +9 -0
- package/lib/table/oepa-table-page-info.d.ts +22 -0
- package/lib/table/oepa-table-popover.d.ts +28 -0
- package/lib/table/oepa-table-row.d.ts +84 -0
- package/lib/table/oepa-table-sort-criterion.d.ts +4 -0
- package/lib/table/oepa-table-sorting.directive.d.ts +16 -0
- package/lib/table/oepa-table.d.ts +42 -0
- package/lib/table/p-table/p-table.component.d.ts +155 -0
- package/lib/table/table-data-cell/table-data-cell-click-event.d.ts +5 -0
- package/lib/table/table-data-cell/table-data-cell.component.d.ts +23 -0
- package/lib/table/table-export.service.d.ts +33 -0
- package/lib/table/table-header-cell/table-header-cell.component.d.ts +24 -0
- package/lib/table/table.component.d.ts +144 -0
- package/lib/table/table.service.d.ts +28 -0
- package/lib/template-confirmation-modal/template-confirmation-modal.component.d.ts +19 -0
- package/lib/text-area-input/text-area-input.component.d.ts +19 -0
- package/lib/text-input/text-input.component.d.ts +19 -0
- package/lib/timeout-modal/timeout-modal.component.d.ts +13 -0
- package/lib/timepicker/timepicker.component.d.ts +17 -0
- package/lib/validation/form-validator.d.ts +10 -0
- package/lib/validation/validation.service.d.ts +16 -0
- package/lib/yes-no/yes-no.component.d.ts +19 -0
- package/lib/yes-no-boolean/yes-no.component.d.ts +19 -0
- package/lib/yes-no-other-input/yes-no-other-input.component.d.ts +18 -0
- package/lib/zip-code/zip-code.component.d.ts +19 -0
- package/ohioepa-oepa-ui-lib-1.1.0.tgz +0 -0
- package/package.json +25 -0
- package/public-api.d.ts +138 -0
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { ConfirmationModalComponent } from '../../confirmation-modal/confirmation-modal.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/router";
|
|
5
|
+
import * as i2 from "ngx-bootstrap/modal";
|
|
6
|
+
import * as i3 from "../shopping-cart.service";
|
|
7
|
+
import * as i4 from "@angular/common";
|
|
8
|
+
import * as i5 from "../../table/table.component";
|
|
9
|
+
export class ShoppingCartViewComponent {
|
|
10
|
+
router;
|
|
11
|
+
route;
|
|
12
|
+
modalService;
|
|
13
|
+
shoppingCartService;
|
|
14
|
+
serviceName;
|
|
15
|
+
title;
|
|
16
|
+
returnLabel;
|
|
17
|
+
returnUrl;
|
|
18
|
+
shoppingCart;
|
|
19
|
+
empty = true;
|
|
20
|
+
loading = true;
|
|
21
|
+
errorMessage = '';
|
|
22
|
+
imageRoot = '/AngularWebApp/assets/images';
|
|
23
|
+
checkOutInProgress = false;
|
|
24
|
+
totalColumn = 'itemDescription';
|
|
25
|
+
itemNumberLabel;
|
|
26
|
+
itemClassificationLabel;
|
|
27
|
+
itemNameLabel;
|
|
28
|
+
itemDescriptionLabel = '';
|
|
29
|
+
tblHeader = {
|
|
30
|
+
columns: [
|
|
31
|
+
{ title: 'Remove Item', id: 'deleteItem', sort: 'none', hyperlink: true, className: 'oepa-table-header-center' },
|
|
32
|
+
{ title: 'Fee', id: 'fee', sort: 'none' },
|
|
33
|
+
]
|
|
34
|
+
};
|
|
35
|
+
tblConfig = {
|
|
36
|
+
classNames: ['table-bordered'],
|
|
37
|
+
hideFooter: true
|
|
38
|
+
};
|
|
39
|
+
tblData = [];
|
|
40
|
+
constructor(router, route, modalService, shoppingCartService) {
|
|
41
|
+
this.router = router;
|
|
42
|
+
this.route = route;
|
|
43
|
+
this.modalService = modalService;
|
|
44
|
+
this.shoppingCartService = shoppingCartService;
|
|
45
|
+
const params = route.snapshot.data[0];
|
|
46
|
+
this.serviceName = params.serviceName;
|
|
47
|
+
this.title = params.title;
|
|
48
|
+
this.returnLabel = params.returnLabel;
|
|
49
|
+
this.returnUrl = params.returnUrl;
|
|
50
|
+
this.itemNumberLabel = params.itemNumberLabel;
|
|
51
|
+
this.itemClassificationLabel = params.itemClassificationLabel;
|
|
52
|
+
this.itemNameLabel = params.itemNameLabel;
|
|
53
|
+
}
|
|
54
|
+
ngOnInit() {
|
|
55
|
+
this.updateHeaders();
|
|
56
|
+
this.refresh();
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Set headers based on the labels defined for this shopping cart
|
|
60
|
+
*/
|
|
61
|
+
updateHeaders() {
|
|
62
|
+
// process labels in reverse order since unshift places item at the beginning of the array
|
|
63
|
+
if (this.itemDescriptionLabel) {
|
|
64
|
+
this.tblHeader.columns.unshift({ title: this.itemDescriptionLabel, id: 'itemDescription', sort: 'none' });
|
|
65
|
+
this.totalColumn = 'itemDescription';
|
|
66
|
+
}
|
|
67
|
+
if (this.itemNameLabel) {
|
|
68
|
+
this.tblHeader.columns.unshift({ title: this.itemNameLabel, id: 'itemName', sort: 'none' });
|
|
69
|
+
this.totalColumn = 'itemName';
|
|
70
|
+
}
|
|
71
|
+
if (this.itemClassificationLabel) {
|
|
72
|
+
this.tblHeader.columns.unshift({ title: this.itemClassificationLabel, id: 'itemClassification', sort: 'none' });
|
|
73
|
+
this.totalColumn = 'itemClassification';
|
|
74
|
+
}
|
|
75
|
+
if (this.itemNumberLabel) {
|
|
76
|
+
this.tblHeader.columns.unshift({ title: this.itemNumberLabel, id: 'itemNumber', sort: 'none' });
|
|
77
|
+
this.totalColumn = 'itemNumber';
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
refresh() {
|
|
81
|
+
this.loading = true;
|
|
82
|
+
this.errorMessage = '';
|
|
83
|
+
this.shoppingCartService.retrieveShoppingCart(this.serviceName).subscribe({
|
|
84
|
+
next: shoppingCart => {
|
|
85
|
+
this.shoppingCart = shoppingCart;
|
|
86
|
+
this.loadTable();
|
|
87
|
+
this.loading = false;
|
|
88
|
+
}, error: err => {
|
|
89
|
+
this.errorMessage = 'Failed retrieving shopping cart data: ' + err;
|
|
90
|
+
this.loading = false;
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
loadTable() {
|
|
95
|
+
this.tblData = [];
|
|
96
|
+
this.empty = true;
|
|
97
|
+
if (this.shoppingCart && this.shoppingCart.cartItems) {
|
|
98
|
+
this.shoppingCart.cartItems.forEach(cartItem => {
|
|
99
|
+
this.empty = false;
|
|
100
|
+
let row = this.convertCartItemToTableRow(cartItem);
|
|
101
|
+
this.tblData.push(row);
|
|
102
|
+
});
|
|
103
|
+
this.tblData.push({ cells: [
|
|
104
|
+
{ id: 'itemNumber', value: (this.totalColumn === 'itemNumber' ? 'Total Amount Due:' : ''), className: 'oepa-table-gray oepa-table-bold' },
|
|
105
|
+
{ id: 'itemClassification', value: (this.totalColumn === 'itemClassification' ? 'Total Amount Due:' : ''), className: 'oepa-table-gray oepa-table-bold' },
|
|
106
|
+
{ id: 'itemName', value: (this.totalColumn === 'itemName' ? 'Total Amount Due:' : ''), className: 'oepa-table-gray oepa-table-bold' },
|
|
107
|
+
{ id: 'itemDescription', value: (this.totalColumn === 'itemDescription' ? 'Total Amount Due:' : ''), className: 'oepa-table-gray oepa-table-bold' },
|
|
108
|
+
{ id: 'deleteItem', value: '', className: 'oepa-table-gray' },
|
|
109
|
+
{ id: 'fee', value: this.shoppingCart?.totalAmount?.formattedString, sortValue: this.shoppingCart?.totalAmount?.cents, iconClassName: 'oepa-undeline-cell', className: 'oepa-table-gray oepa-table-bold' }
|
|
110
|
+
] });
|
|
111
|
+
this.tblData = this.tblData.slice();
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
convertCartItemToTableRow(cartItem) {
|
|
115
|
+
let row = {
|
|
116
|
+
cells: [
|
|
117
|
+
{ id: 'itemNumber', value: cartItem.itemNumber },
|
|
118
|
+
{ id: 'itemClassification', value: cartItem.itemClassification },
|
|
119
|
+
{ id: 'itemName', value: cartItem.itemName },
|
|
120
|
+
{ id: 'itemDescription', value: cartItem.description },
|
|
121
|
+
{ id: 'deleteItem', value: '', iconClassName: 'fa fa-minus-circle', className: 'text-center' },
|
|
122
|
+
{ id: 'fee', value: cartItem.unitPrice?.formattedString, sortValue: cartItem.unitPrice?.cents },
|
|
123
|
+
],
|
|
124
|
+
dataSource: cartItem
|
|
125
|
+
};
|
|
126
|
+
return row;
|
|
127
|
+
}
|
|
128
|
+
onCellClick(event) {
|
|
129
|
+
if (event.columnId === 'deleteItem') {
|
|
130
|
+
this.deleteFromCart(event.row.dataSource.typeID, event.row.dataSource.description, this.shoppingCart);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
deleteFromCart(id, description, cart) {
|
|
134
|
+
const modal = this.modalService.show(ConfirmationModalComponent, { ignoreBackdropClick: true });
|
|
135
|
+
modal.content.headerText = 'Remove item from cart?';
|
|
136
|
+
modal.content.bodyText = 'Are you sure you want to remove ' + description + ' from the shopping cart?';
|
|
137
|
+
modal.content.confirmBtnLabel = 'Yes';
|
|
138
|
+
modal.content.cancelBtnLabel = 'No';
|
|
139
|
+
modal.content.confirmClicked.subscribe(() => {
|
|
140
|
+
this.deleteItemFromCart(id, cart);
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
deleteItemFromCart(id, cart) {
|
|
144
|
+
if (cart) {
|
|
145
|
+
this.shoppingCartService.removeShoppingCartItem(id, cart).subscribe({
|
|
146
|
+
next: updatedCart => {
|
|
147
|
+
this.shoppingCart = updatedCart;
|
|
148
|
+
this.loadTable();
|
|
149
|
+
}, error: err => {
|
|
150
|
+
this.errorMessage = 'Failed removing item from cart: ' + err;
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
goBack() {
|
|
156
|
+
this.router.navigate([this.returnUrl], { relativeTo: this.route.parent });
|
|
157
|
+
}
|
|
158
|
+
onCheckout() {
|
|
159
|
+
const modal = this.modalService.show(ConfirmationModalComponent, { ignoreBackdropClick: true });
|
|
160
|
+
modal.content.headerText = 'Checkout';
|
|
161
|
+
modal.content.bodyText = 'Do you want to submit all of the applications in the shopping cart?';
|
|
162
|
+
modal.content.confirmBtnLabel = 'Yes';
|
|
163
|
+
modal.content.cancelBtnLabel = 'No';
|
|
164
|
+
modal.content.confirmClicked.subscribe(() => {
|
|
165
|
+
this.checkout();
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
checkout() {
|
|
169
|
+
if (this.shoppingCart) {
|
|
170
|
+
this.errorMessage = '';
|
|
171
|
+
this.checkOutInProgress = true;
|
|
172
|
+
this.shoppingCartService.checkOut(this.shoppingCart).subscribe({
|
|
173
|
+
next: transactionID => {
|
|
174
|
+
// navigate to CBOSS payment screen
|
|
175
|
+
window.location.href = '/portal/paymentSubmissionAction.po?transactionID=' + transactionID;
|
|
176
|
+
}, error: err => {
|
|
177
|
+
this.checkOutInProgress = false;
|
|
178
|
+
this.errorMessage = 'Checkout failed: ' + err;
|
|
179
|
+
}
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ShoppingCartViewComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }, { token: i2.BsModalService }, { token: i3.ShoppingCartService }], target: i0.ɵɵFactoryTarget.Component });
|
|
184
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ShoppingCartViewComponent, selector: "oepa-shopping-cart-view", ngImport: i0, template: "<div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\" col-sm-12\">\n <h2><b>{{title}}</b></h2>\n </div>\n <div *ngIf=\"loading || empty\" class=\"col-sm-12 text-center\">\n <div class=\" alert alert-info \">\n <h3><em>{{ loading ? 'Loading...' : 'Cart is empty' }}</em></h3>\n <img *ngIf=\"loading\" class=\"oepa-icon\" src=\"{{imageRoot}}/blue-load.gif\" />\n </div>\n </div>\n <div *ngIf=\"!loading && !empty\" class=\"col-sm-12\">\n <oepa-table [config]=\"tblConfig\" [data]=\"tblData\" [header]=\"tblHeader\" tableId=\"ShoppingCartTable\" (cellClicked)=\"onCellClick($event)\"></oepa-table>\n </div>\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">{{errorMessage}}</div>\n </div>\n <div *ngIf=\"!checkOutInProgress\" class=\"col-12 text-center\">\n <button class=\"btn btn-primary mr-2\" id=\"returnToPageButton\" (click)=\"goBack()\">\n {{returnLabel}}</button>\n <button *ngIf=\"!empty\" class=\"btn btn-primary mr-2\" id=\"checkoutBtn\" (click)=\"onCheckout()\">\n Checkout</button>\n </div>\n <div *ngIf=\"checkOutInProgress\" class=\"col-12 text-center\">\n <div class=\"alert alert-info\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Checking out...\n </div>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.TableComponent, selector: "oepa-table", inputs: ["tableId", "config", "complexHeader", "header", "customBtnLabel", "customBtnVisible", "customBtnEnabled", "data", "totalRow"], outputs: ["cellClicked", "actionClicked", "rowSelected", "customBtnClicked"] }] });
|
|
185
|
+
}
|
|
186
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ShoppingCartViewComponent, decorators: [{
|
|
187
|
+
type: Component,
|
|
188
|
+
args: [{ selector: 'oepa-shopping-cart-view', template: "<div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\" col-sm-12\">\n <h2><b>{{title}}</b></h2>\n </div>\n <div *ngIf=\"loading || empty\" class=\"col-sm-12 text-center\">\n <div class=\" alert alert-info \">\n <h3><em>{{ loading ? 'Loading...' : 'Cart is empty' }}</em></h3>\n <img *ngIf=\"loading\" class=\"oepa-icon\" src=\"{{imageRoot}}/blue-load.gif\" />\n </div>\n </div>\n <div *ngIf=\"!loading && !empty\" class=\"col-sm-12\">\n <oepa-table [config]=\"tblConfig\" [data]=\"tblData\" [header]=\"tblHeader\" tableId=\"ShoppingCartTable\" (cellClicked)=\"onCellClick($event)\"></oepa-table>\n </div>\n <div *ngIf=\"errorMessage\" class=\"col-sm-12\">\n <div class=\"alert alert-danger\">{{errorMessage}}</div>\n </div>\n <div *ngIf=\"!checkOutInProgress\" class=\"col-12 text-center\">\n <button class=\"btn btn-primary mr-2\" id=\"returnToPageButton\" (click)=\"goBack()\">\n {{returnLabel}}</button>\n <button *ngIf=\"!empty\" class=\"btn btn-primary mr-2\" id=\"checkoutBtn\" (click)=\"onCheckout()\">\n Checkout</button>\n </div>\n <div *ngIf=\"checkOutInProgress\" class=\"col-12 text-center\">\n <div class=\"alert alert-info\">\n <span class=\"spinner-border text-primary\" role=\"status\"></span>\n Checking out...\n </div>\n </div>\n </div>\n</div>" }]
|
|
189
|
+
}], ctorParameters: () => [{ type: i1.Router }, { type: i1.ActivatedRoute }, { type: i2.BsModalService }, { type: i3.ShoppingCartService }] });
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvcHBpbmctY2FydC12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29lcGEtdWktbGliL3NyYy9saWIvc2hvcHBpbmctY2FydC9zaG9wcGluZy1jYXJ0LXZpZXcvc2hvcHBpbmctY2FydC12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29lcGEtdWktbGliL3NyYy9saWIvc2hvcHBpbmctY2FydC9zaG9wcGluZy1jYXJ0LXZpZXcvc2hvcHBpbmctY2FydC12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFLbEQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdURBQXVELENBQUM7Ozs7Ozs7QUFZbkcsTUFBTSxPQUFPLHlCQUF5QjtJQStCaEI7SUFDVjtJQUNBO0lBQ0E7SUFqQ1YsV0FBVyxDQUFTO0lBQ3BCLEtBQUssQ0FBUztJQUNkLFdBQVcsQ0FBUztJQUNwQixTQUFTLENBQVM7SUFDbEIsWUFBWSxDQUEyQjtJQUN2QyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ2IsT0FBTyxHQUFHLElBQUksQ0FBQztJQUNmLFlBQVksR0FBVyxFQUFFLENBQUM7SUFDMUIsU0FBUyxHQUFHLDhCQUE4QixDQUFDO0lBQzNDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztJQUMzQixXQUFXLEdBQVcsaUJBQWlCLENBQUM7SUFDeEMsZUFBZSxDQUFTO0lBQ3hCLHVCQUF1QixDQUFTO0lBQ2hDLGFBQWEsQ0FBUztJQUN0QixvQkFBb0IsR0FBVyxFQUFFLENBQUM7SUFFbEMsU0FBUyxHQUFvQjtRQUMzQixPQUFPLEVBQUU7WUFDUCxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFB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TixDQUFDO0lBQ0gsQ0FBQzt3R0FwTFUseUJBQXlCOzRGQUF6Qix5QkFBeUIsK0RDakJ0Qyw0NUNBOEJNOzs0RkRiTyx5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0UseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciwgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU2hvcHBpbmdDYXJ0U2VydmljZSB9IGZyb20gJy4uL3Nob3BwaW5nLWNhcnQuc2VydmljZSc7XG5pbXBvcnQgeyBTaG9wcGluZ0NhcnRJdGVtLCBTaG9wcGluZ0NhcnQgfSBmcm9tICdAb2hpb2VwYS9vZXBhLWViaXotbGliJztcbmltcG9ydCB7IEJzTW9kYWxSZWYsIEJzTW9kYWxTZXJ2aWNlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9tb2RhbCc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbmZpcm1hdGlvbi1tb2RhbC9jb25maXJtYXRpb24tbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IFNob3BwaW5nQ2FydFZpZXdQYXJhbWV0ZXJzIH0gZnJvbSAnLi9zaG9wcGluZy1jYXJ0LXZpZXctcGFyYW1ldGVycyc7XG5pbXBvcnQgeyBPZXBhVGFibGVIZWFkZXIgfSBmcm9tICcuLi8uLi90YWJsZS9vZXBhLXRhYmxlLWhlYWRlcic7XG5pbXBvcnQgeyBPZXBhVGFibGVDZWxsQ2xpY2tFdmVudCB9IGZyb20gJy4uLy4uL3RhYmxlL29lcGEtdGFibGUtY2VsbC1jbGljay1ldmVudCc7XG5pbXBvcnQgeyBPZXBhVGFibGVDb25maWcgfSBmcm9tICcuLi8uLi90YWJsZS9vZXBhLXRhYmxlLWNvbmZpZyc7XG5pbXBvcnQgeyBPZXBhVGFibGVSb3cgfSBmcm9tICcuLi8uLi90YWJsZS9vZXBhLXRhYmxlLXJvdyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ29lcGEtc2hvcHBpbmctY2FydC12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Nob3BwaW5nLWNhcnQtdmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Nob3BwaW5nLWNhcnQtdmlldy5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU2hvcHBpbmdDYXJ0Vmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHNlcnZpY2VOYW1lOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHJldHVybkxhYmVsOiBzdHJpbmc7XG4gIHJldHVyblVybDogc3RyaW5nO1xuICBzaG9wcGluZ0NhcnQ6IFNob3BwaW5nQ2FydCB8IHVuZGVmaW5lZDtcbiAgZW1wdHkgPSB0cnVlO1xuICBsb2FkaW5nID0gdHJ1ZTtcbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmcgPSAnJztcbiAgaW1hZ2VSb290ID0gJy9Bbmd1bGFyV2ViQXBwL2Fzc2V0cy9pbWFnZXMnO1xuICBjaGVja091dEluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgdG90YWxDb2x1bW46IHN0cmluZyA9ICdpdGVtRGVzY3JpcHRpb24nO1xuICBpdGVtTnVtYmVyTGFiZWw6IHN0cmluZztcbiAgaXRlbUNsYXNzaWZpY2F0aW9uTGFiZWw6IHN0cmluZztcbiAgaXRlbU5hbWVMYWJlbDogc3RyaW5nO1xuICBpdGVtRGVzY3JpcHRpb25MYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgdGJsSGVhZGVyOiBPZXBhVGFibGVIZWFkZXIgPSB7XG4gICAgY29sdW1uczogW1xuICAgICAgeyB0aXRsZTogJ1JlbW92ZSBJdGVtJywgaWQ6ICdkZWxldGVJdGVtJywgc29ydDogJ25vbmUnLCBoeXBlcmxpbms6IHRydWUsIGNsYXNzTmFtZTogJ29lcGEtdGFibGUtaGVhZGVyLWNlbnRlcicgfSxcbiAgICAgIHsgdGl0bGU6ICdGZWUnLCBpZDogJ2ZlZScsIHNvcnQ6ICdub25lJyB9LFxuICAgIF1cbiAgfTtcblxuICB0YmxDb25maWc6IE9lcGFUYWJsZUNvbmZpZyA9IHtcbiAgICBjbGFzc05hbWVzOiBbJ3RhYmxlLWJvcmRlcmVkJ10sXG4gICAgaGlkZUZvb3RlcjogdHJ1ZVxuICB9O1xuXG4gIHRibERhdGE6IEFycmF5PE9lcGFUYWJsZVJvdz4gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBCc01vZGFsU2VydmljZSwgXG4gICAgcHJpdmF0ZSBzaG9wcGluZ0NhcnRTZXJ2aWNlOiBTaG9wcGluZ0NhcnRTZXJ2aWNlKSB7XG4gICAgICBjb25zdCBwYXJhbXM6IFNob3BwaW5nQ2FydFZpZXdQYXJhbWV0ZXJzID0gPFNob3BwaW5nQ2FydFZpZXdQYXJhbWV0ZXJzPnJvdXRlLnNuYXBzaG90LmRhdGFbMF07XG4gICAgICB0aGlzLnNlcnZpY2VOYW1lID0gcGFyYW1zLnNlcnZpY2VOYW1lO1xuICAgICAgdGhpcy50aXRsZSA9IHBhcmFtcy50aXRsZTtcbiAgICAgIHRoaXMucmV0dXJuTGFiZWwgPSBwYXJhbXMucmV0dXJuTGFiZWw7XG4gICAgICB0aGlzLnJldHVyblVybCA9IHBhcmFtcy5yZXR1cm5Vcmw7XG4gICAgICB0aGlzLml0ZW1OdW1iZXJMYWJlbCA9IHBhcmFtcy5pdGVtTnVtYmVyTGFiZWw7XG4gICAgICB0aGlzLml0ZW1DbGFzc2lmaWNhdGlvbkxhYmVsID0gcGFyYW1zLml0ZW1DbGFzc2lmaWNhdGlvbkxhYmVsO1xuICAgICAgdGhpcy5pdGVtTmFtZUxhYmVsID0gcGFyYW1zLml0ZW1OYW1lTGFiZWw7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnVwZGF0ZUhlYWRlcnMoKTtcbiAgICB0aGlzLnJlZnJlc2goKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgaGVhZGVycyBiYXNlZCBvbiB0aGUgbGFiZWxzIGRlZmluZWQgZm9yIHRoaXMgc2hvcHBpbmcgY2FydFxuICAgKi9cbiAgcHJpdmF0ZSB1cGRhdGVIZWFkZXJzKCkge1xuICAgIC8vIHByb2Nlc3MgbGFiZWxzIGluIHJldmVyc2Ugb3JkZXIgc2luY2UgdW5zaGlmdCBwbGFjZXMgaXRlbSBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBhcnJheVxuICAgIGlmICh0aGlzLml0ZW1EZXNjcmlwdGlvbkxhYmVsKSB7XG4gICAgICB0aGlzLnRibEhlYWRlci5jb2x1bW5zLnVuc2hpZnQoeyB0aXRsZTogdGhpcy5pdGVtRGVzY3JpcHRpb25MYWJlbCwgaWQ6ICdpdGVtRGVzY3JpcHRpb24nLCBzb3J0OiAnbm9uZScgfSk7XG4gICAgICB0aGlzLnRvdGFsQ29sdW1uID0gJ2l0ZW1EZXNjcmlwdGlvbic7XG4gICAgfVxuICAgIGlmICh0aGlzLml0ZW1OYW1lTGFiZWwpIHtcbiAgICAgIHRoaXMudGJsSGVhZGVyLmNvbHVtbnMudW5zaGlmdCh7IHRpdGxlOiB0aGlzLml0ZW1OYW1lTGFiZWwsIGlkOiAnaXRlbU5hbWUnLCBzb3J0OiAnbm9uZScgfSk7XG4gICAgICB0aGlzLnRvdGFsQ29sdW1uID0gJ2l0ZW1OYW1lJztcbiAgICB9XG4gICAgaWYgKHRoaXMuaXRlbUNsYXNzaWZpY2F0aW9uTGFiZWwpIHtcbiAgICAgIHRoaXMudGJsSGVhZGVyLmNvbHVtbnMudW5zaGlmdCh7IHRpdGxlOiB0aGlzLml0ZW1DbGFzc2lmaWNhdGlvbkxhYmVsLCBpZDogJ2l0ZW1DbGFzc2lmaWNhdGlvbicsIHNvcnQ6ICdub25lJyB9KTtcbiAgICAgIHRoaXMudG90YWxDb2x1bW4gPSAnaXRlbUNsYXNzaWZpY2F0aW9uJztcbiAgICB9XG4gICAgaWYgKHRoaXMuaXRlbU51bWJlckxhYmVsKSB7XG4gICAgICB0aGlzLnRibEhlYWRlci5jb2x1bW5zLnVuc2hpZnQoeyB0aXRsZTogdGhpcy5pdGVtTnVtYmVyTGFiZWwsIGlkOiAnaXRlbU51bWJlcicsIHNvcnQ6ICdub25lJyB9KTtcbiAgICAgIHRoaXMudG90YWxDb2x1bW4gPSAnaXRlbU51bWJlcic7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZWZyZXNoKCkge1xuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnJztcbiAgICB0aGlzLnNob3BwaW5nQ2FydFNlcnZpY2UucmV0cmlldmVTaG9wcGluZ0NhcnQodGhpcy5zZXJ2aWNlTmFtZSkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IHNob3BwaW5nQ2FydCA9PiB7XG4gICAgICB0aGlzLnNob3BwaW5nQ2FydCA9IHNob3BwaW5nQ2FydDtcbiAgICAgIHRoaXMubG9hZFRhYmxlKCk7XG4gICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICB9LCBlcnJvcjogZXJyID0+IHtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0ZhaWxlZCByZXRyaWV2aW5nIHNob3BwaW5nIGNhcnQgZGF0YTogJyArIGVycjtcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgIH19KTtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZFRhYmxlKCkge1xuICAgIHRoaXMudGJsRGF0YSA9IFtdO1xuICAgIHRoaXMuZW1wdHkgPSB0cnVlO1xuICAgIGlmICh0aGlzLnNob3BwaW5nQ2FydCAmJiB0aGlzLnNob3BwaW5nQ2FydC5jYXJ0SXRlbXMpIHtcbiAgICAgIHRoaXMuc2hvcHBpbmdDYXJ0LmNhcnRJdGVtcy5mb3JFYWNoKGNhcnRJdGVtID0+IHtcbiAgICAgICAgdGhpcy5lbXB0eSA9IGZhbHNlO1xuICAgICAgICBsZXQgcm93ID0gdGhpcy5jb252ZXJ0Q2FydEl0ZW1Ub1RhYmxlUm93KGNhcnRJdGVtKTtcbiAgICAgICAgdGhpcy50YmxEYXRhLnB1c2gocm93KTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy50YmxEYXRhLnB1c2goeyBjZWxscyA6IFsgXG4gICAgICAgIHtpZDogJ2l0ZW1OdW1iZXInLCB2YWx1ZTogKHRoaXMudG90YWxDb2x1bW4gPT09ICdpdGVtTnVtYmVyJyA/ICdUb3RhbCBBbW91bnQgRHVlOicgOiAnJyksIGNsYXNzTmFtZTonb2VwYS10YWJsZS1ncmF5IG9lcGEtdGFibGUtYm9sZCcgfSxcbiAgICAgICAge2lkOiAnaXRlbUNsYXNzaWZpY2F0aW9uJywgdmFsdWU6ICh0aGlzLnRvdGFsQ29sdW1uID09PSAnaXRlbUNsYXNzaWZpY2F0aW9uJyA/ICdUb3RhbCBBbW91bnQgRHVlOicgOiAnJyksIGNsYXNzTmFtZTonb2VwYS10YWJsZS1ncmF5IG9lcGEtdGFibGUtYm9sZCcgfSxcbiAgICAgICAge2lkOiAnaXRlbU5hbWUnLCB2YWx1ZTogKHRoaXMudG90YWxDb2x1bW4gPT09ICdpdGVtTmFtZScgPyAnVG90YWwgQW1vdW50IER1ZTonIDogJycpLCBjbGFzc05hbWU6J29lcGEtdGFibGUtZ3JheSBvZXBhLXRhYmxlLWJvbGQnIH0sXG4gICAgICAgIHtpZDogJ2l0ZW1EZXNjcmlwdGlvbicsIHZhbHVlOiAodGhpcy50b3RhbENvbHVtbiA9PT0gJ2l0ZW1EZXNjcmlwdGlvbicgPyAnVG90YWwgQW1vdW50IER1ZTonIDogJycpLCBjbGFzc05hbWU6J29lcGEtdGFibGUtZ3JheSBvZXBhLXRhYmxlLWJvbGQnIH0sXG4gICAgICAgIHtpZDonZGVsZXRlSXRlbScsIHZhbHVlOicnLGNsYXNzTmFtZTonb2VwYS10YWJsZS1ncmF5JyB9LFxuICAgICAgICB7aWQ6ICdmZWUnLCAgdmFsdWU6IHRoaXMuc2hvcHBpbmdDYXJ0Py50b3RhbEFtb3VudD8uZm9ybWF0dGVkU3RyaW5nLCBzb3J0VmFsdWU6IHRoaXMuc2hvcHBpbmdDYXJ0Py50b3RhbEFtb3VudD8uY2VudHMsIGljb25DbGFzc05hbWU6J29lcGEtdW5kZWxpbmUtY2VsbCcsIGNsYXNzTmFtZTonb2VwYS10YWJsZS1ncmF5IG9lcGEtdGFibGUtYm9sZCd9XG4gICAgICBdfSk7XG4gICAgICB0aGlzLnRibERhdGEgPSB0aGlzLnRibERhdGEuc2xpY2UoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNvbnZlcnRDYXJ0SXRlbVRvVGFibGVSb3coY2FydEl0ZW06IFNob3BwaW5nQ2FydEl0ZW0pOiBPZXBhVGFibGVSb3cge1xuICAgIGxldCByb3c6IE9lcGFUYWJsZVJvdyA9IHtcbiAgICAgIGNlbGxzOiBbXG4gICAgICAgIHsgaWQ6ICdpdGVtTnVtYmVyJywgdmFsdWU6IGNhcnRJdGVtLml0ZW1OdW1iZXIgfSxcbiAgICAgICAgeyBpZDogJ2l0ZW1DbGFzc2lmaWNhdGlvbicsIHZhbHVlOiBjYXJ0SXRlbS5pdGVtQ2xhc3NpZmljYXRpb24gfSxcbiAgICAgICAgeyBpZDogJ2l0ZW1OYW1lJywgdmFsdWU6IGNhcnRJdGVtLml0ZW1OYW1lIH0sXG4gICAgICAgIHsgaWQ6ICdpdGVtRGVzY3JpcHRpb24nLCB2YWx1ZTogY2FydEl0ZW0uZGVzY3JpcHRpb24gfSxcbiAgICAgICAgeyBpZDogJ2RlbGV0ZUl0ZW0nLCB2YWx1ZTogJycsIGljb25DbGFzc05hbWU6ICdmYSBmYS1taW51cy1jaXJjbGUnLCBjbGFzc05hbWU6ICd0ZXh0LWNlbnRlcicgfSxcbiAgICAgICAgeyBpZDogJ2ZlZScsIHZhbHVlOiBjYXJ0SXRlbS51bml0UHJpY2U/LmZvcm1hdHRlZFN0cmluZywgc29ydFZhbHVlOiBjYXJ0SXRlbS51bml0UHJpY2U/LmNlbnRzIH0sXG4gICAgICBdLFxuICAgICAgZGF0YVNvdXJjZTogY2FydEl0ZW1cbiAgICB9XG4gICAgcmV0dXJuIHJvdztcbiAgfVxuXG4gIG9uQ2VsbENsaWNrKGV2ZW50OiBPZXBhVGFibGVDZWxsQ2xpY2tFdmVudCkge1xuICAgIGlmIChldmVudC5jb2x1bW5JZCA9PT0gJ2RlbGV0ZUl0ZW0nKSB7XG4gICAgICB0aGlzLmRlbGV0ZUZyb21DYXJ0KGV2ZW50LnJvdy5kYXRhU291cmNlLnR5cGVJRCwgZXZlbnQucm93LmRhdGFTb3VyY2UuZGVzY3JpcHRpb24sIHRoaXMuc2hvcHBpbmdDYXJ0KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGRlbGV0ZUZyb21DYXJ0KGlkOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcsIGNhcnQ6IFNob3BwaW5nQ2FydCB8IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IG1vZGFsOiBCc01vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uuc2hvdyhDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudCwgeyBpZ25vcmVCYWNrZHJvcENsaWNrOiB0cnVlIH0pO1xuICAgICg8Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQ+bW9kYWwuY29udGVudCkuaGVhZGVyVGV4dCA9ICdSZW1vdmUgaXRlbSBmcm9tIGNhcnQ/JztcbiAgICAoPENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50Pm1vZGFsLmNvbnRlbnQpLmJvZHlUZXh0ID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byByZW1vdmUgJyArIGRlc2NyaXB0aW9uICsgICcgZnJvbSB0aGUgc2hvcHBpbmcgY2FydD8nO1xuICAgICg8Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQ+bW9kYWwuY29udGVudCkuY29uZmlybUJ0bkxhYmVsID0gJ1llcyc7XG4gICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5jYW5jZWxCdG5MYWJlbCA9ICdObyc7XG4gICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5jb25maXJtQ2xpY2tlZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5kZWxldGVJdGVtRnJvbUNhcnQoaWQsIGNhcnQpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBkZWxldGVJdGVtRnJvbUNhcnQoaWQ6IHN0cmluZywgY2FydDogU2hvcHBpbmdDYXJ0IHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKGNhcnQpIHtcbiAgICAgIHRoaXMuc2hvcHBpbmdDYXJ0U2VydmljZS5yZW1vdmVTaG9wcGluZ0NhcnRJdGVtKGlkLCBjYXJ0KS5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiB1cGRhdGVkQ2FydCA9PiB7XG4gICAgICAgIHRoaXMuc2hvcHBpbmdDYXJ0ID0gdXBkYXRlZENhcnQ7XG4gICAgICAgIHRoaXMubG9hZFRhYmxlKCk7XG4gICAgICB9LCBlcnJvcjogZXJyID0+IHtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnRmFpbGVkIHJlbW92aW5nIGl0ZW0gZnJvbSBjYXJ0OiAnICsgZXJyO1xuICAgICAgfX0pO1xuICAgIH1cbiAgfVxuXG4gIGdvQmFjaygpIHtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy5yZXR1cm5VcmxdLCB7IHJlbGF0aXZlVG86IHRoaXMucm91dGUucGFyZW50IH0pO1xuICB9XG5cbiAgcHVibGljIG9uQ2hlY2tvdXQoKSB7XG4gICAgY29uc3QgbW9kYWw6IEJzTW9kYWxSZWYgPSB0aGlzLm1vZGFsU2VydmljZS5zaG93KENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50LCB7IGlnbm9yZUJhY2tkcm9wQ2xpY2s6IHRydWUgfSk7XG4gICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5oZWFkZXJUZXh0ID0gJ0NoZWNrb3V0JztcbiAgICAoPENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50Pm1vZGFsLmNvbnRlbnQpLmJvZHlUZXh0ID0gJ0RvIHlvdSB3YW50IHRvIHN1Ym1pdCBhbGwgb2YgdGhlIGFwcGxpY2F0aW9ucyBpbiB0aGUgc2hvcHBpbmcgY2FydD8nO1xuICAgICg8Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQ+bW9kYWwuY29udGVudCkuY29uZmlybUJ0bkxhYmVsID0gJ1llcyc7XG4gICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5jYW5jZWxCdG5MYWJlbCA9ICdObyc7XG4gICAgKDxDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudD5tb2RhbC5jb250ZW50KS5jb25maXJtQ2xpY2tlZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5jaGVja291dCgpO1xuICAgIH0pO1xuICB9XG5cbiAgY2hlY2tvdXQoKSB7XG4gICAgaWYgKHRoaXMuc2hvcHBpbmdDYXJ0KSB7XG4gICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgdGhpcy5jaGVja091dEluUHJvZ3Jlc3MgPSB0cnVlO1xuICAgICAgdGhpcy5zaG9wcGluZ0NhcnRTZXJ2aWNlLmNoZWNrT3V0KHRoaXMuc2hvcHBpbmdDYXJ0KS5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiB0cmFuc2FjdGlvbklEID0+IHtcbiAgICAgICAgLy8gbmF2aWdhdGUgdG8gQ0JPU1MgcGF5bWVudCBzY3JlZW5cbiAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAnL3BvcnRhbC9wYXltZW50U3VibWlzc2lvbkFjdGlvbi5wbz90cmFuc2FjdGlvbklEPScgKyB0cmFuc2FjdGlvbklEO1xuICAgICAgfSwgZXJyb3I6IGVyciA9PiB7XG4gICAgICAgIHRoaXMuY2hlY2tPdXRJblByb2dyZXNzID0gZmFsc2U7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0NoZWNrb3V0IGZhaWxlZDogJyArIGVycjtcbiAgICAgIH19KTtcbiAgICB9XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cImNvbnRhaW5lci1mbHVpZFwiPlxuICA8ZGl2IGNsYXNzPVwicm93XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiIGNvbC1zbS0xMlwiPlxuICAgICAgICAgIDxoMj48Yj57e3RpdGxlfX08L2I+PC9oMj5cbiAgICAgICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cImxvYWRpbmcgfHwgZW1wdHlcIiBjbGFzcz1cImNvbC1zbS0xMiB0ZXh0LWNlbnRlclwiPlxuICAgICAgPGRpdiBjbGFzcz1cIiBhbGVydCBhbGVydC1pbmZvIFwiPlxuICAgICAgICA8aDM+PGVtPnt7IGxvYWRpbmcgPyAnTG9hZGluZy4uLicgOiAnQ2FydCBpcyBlbXB0eScgfX08L2VtPjwvaDM+XG4gICAgICAgIDxpbWcgKm5nSWY9XCJsb2FkaW5nXCIgY2xhc3M9XCJvZXBhLWljb25cIiBzcmM9XCJ7e2ltYWdlUm9vdH19L2JsdWUtbG9hZC5naWZcIiAvPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cIiFsb2FkaW5nICYmICFlbXB0eVwiIGNsYXNzPVwiY29sLXNtLTEyXCI+XG4gICAgICA8b2VwYS10YWJsZSBbY29uZmlnXT1cInRibENvbmZpZ1wiIFtkYXRhXT1cInRibERhdGFcIiBbaGVhZGVyXT1cInRibEhlYWRlclwiIHRhYmxlSWQ9XCJTaG9wcGluZ0NhcnRUYWJsZVwiIChjZWxsQ2xpY2tlZCk9XCJvbkNlbGxDbGljaygkZXZlbnQpXCI+PC9vZXBhLXRhYmxlPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCJlcnJvck1lc3NhZ2VcIiBjbGFzcz1cImNvbC1zbS0xMlwiPlxuICAgICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWRhbmdlclwiPnt7ZXJyb3JNZXNzYWdlfX08L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwiIWNoZWNrT3V0SW5Qcm9ncmVzc1wiIGNsYXNzPVwiY29sLTEyIHRleHQtY2VudGVyXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgbXItMlwiIGlkPVwicmV0dXJuVG9QYWdlQnV0dG9uXCIgKGNsaWNrKT1cImdvQmFjaygpXCI+XG4gICAgICAgICAge3tyZXR1cm5MYWJlbH19PC9idXR0b24+XG4gICAgICAgIDxidXR0b24gKm5nSWY9XCIhZW1wdHlcIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBtci0yXCIgaWQ9XCJjaGVja291dEJ0blwiIChjbGljayk9XCJvbkNoZWNrb3V0KClcIj5cbiAgICAgICAgICBDaGVja291dDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiY2hlY2tPdXRJblByb2dyZXNzXCIgY2xhc3M9XCJjb2wtMTIgdGV4dC1jZW50ZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWluZm9cIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNwaW5uZXItYm9yZGVyIHRleHQtcHJpbWFyeVwiIHJvbGU9XCJzdGF0dXNcIj48L3NwYW4+XG4gICAgICAgICAgQ2hlY2tpbmcgb3V0Li4uXG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { HttpHeaders } from '@angular/common/http';
|
|
3
|
+
import { of } from 'rxjs';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common/http";
|
|
6
|
+
export class ShoppingCartService {
|
|
7
|
+
http;
|
|
8
|
+
paymentUrl = '/ebiz/api/v1/payment/';
|
|
9
|
+
constructor(http) {
|
|
10
|
+
this.http = http;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Retrieve a shopping cart for the current user for the provided serviceName.
|
|
14
|
+
* @param serviceName
|
|
15
|
+
* @returns Observable<ShoppingCart>
|
|
16
|
+
*/
|
|
17
|
+
retrieveShoppingCart(serviceName) {
|
|
18
|
+
const headers = new HttpHeaders();
|
|
19
|
+
headers.append('Content-Type', 'application/json');
|
|
20
|
+
const url = this.paymentUrl + '/shoppingCart/' + serviceName;
|
|
21
|
+
return this.http.get(url, { headers: headers, responseType: 'json' });
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Store cart in the database
|
|
25
|
+
* @param cart
|
|
26
|
+
* @returns Observable<ShoppingCart>
|
|
27
|
+
*/
|
|
28
|
+
updateShoppingCart(cart) {
|
|
29
|
+
const headers = new HttpHeaders();
|
|
30
|
+
headers.append('Content-Type', 'application/json');
|
|
31
|
+
const url = this.paymentUrl + '/shoppingCart';
|
|
32
|
+
return this.http.post(url, cart, { headers: headers, responseType: 'json' });
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Remove the item with the type id, id, from cart and store it in the database
|
|
36
|
+
* @param id
|
|
37
|
+
* @param cart
|
|
38
|
+
* @returns Observable<ShoppingCart>
|
|
39
|
+
*/
|
|
40
|
+
removeShoppingCartItem(id, cart) {
|
|
41
|
+
if (id && cart && cart.cartItems) {
|
|
42
|
+
cart.cartItems = cart.cartItems.filter(item => {
|
|
43
|
+
return item.typeID !== id;
|
|
44
|
+
});
|
|
45
|
+
return this.updateShoppingCart(cart);
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
return of(cart);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Add item to cart and store it in the database
|
|
53
|
+
* @param item
|
|
54
|
+
* @param cart
|
|
55
|
+
* @returns Observable<ShoppingCart>
|
|
56
|
+
*/
|
|
57
|
+
addShoppingCartItem(item, cart) {
|
|
58
|
+
if (item && cart) {
|
|
59
|
+
if (!cart.cartItems) {
|
|
60
|
+
cart.cartItems = [];
|
|
61
|
+
}
|
|
62
|
+
cart.cartItems.push(item);
|
|
63
|
+
return this.updateShoppingCart(cart);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
return of(cart);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Perform checkout for cart. This will create revenues for all items in the cart and return
|
|
71
|
+
* a transaction id for the shopping cart as a whole.
|
|
72
|
+
* @param cart
|
|
73
|
+
* @returns Observable<string>
|
|
74
|
+
*/
|
|
75
|
+
checkOut(cart) {
|
|
76
|
+
const headers = new HttpHeaders({ 'Content-Type': 'application/json; odata=verbose' });
|
|
77
|
+
const url = this.paymentUrl + '/shoppingCart/' + cart.serviceName + '/checkout';
|
|
78
|
+
return this.http.post(url, cart, { headers: headers, responseType: 'json' });
|
|
79
|
+
}
|
|
80
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ShoppingCartService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
81
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ShoppingCartService, providedIn: 'root' });
|
|
82
|
+
}
|
|
83
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ShoppingCartService, decorators: [{
|
|
84
|
+
type: Injectable,
|
|
85
|
+
args: [{
|
|
86
|
+
providedIn: 'root'
|
|
87
|
+
}]
|
|
88
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }] });
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvcHBpbmctY2FydC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2VwYS11aS1saWIvc3JjL2xpYi9zaG9wcGluZy1jYXJ0L3Nob3BwaW5nLWNhcnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFNdEMsTUFBTSxPQUFPLG1CQUFtQjtJQUdWO0lBRlosVUFBVSxHQUFXLHVCQUF1QixDQUFDO0lBRXJELFlBQW9CLElBQWdCO1FBQWhCLFNBQUksR0FBSixJQUFJLENBQVk7SUFBSSxDQUFDO0lBRXpDOzs7O09BSUc7SUFDSSxvQkFBb0IsQ0FBQyxXQUFtQjtRQUM3QyxNQUFNLE9BQU8sR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ2xDLE9BQU8sQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFDbkQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFVBQVUsR0FBRyxnQkFBZ0IsR0FBRyxXQUFXLENBQUM7UUFDN0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBZSxHQUFHLEVBQUUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3RGLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksa0JBQWtCLENBQUMsSUFBa0I7UUFDMUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNsQyxPQUFPLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1FBQ25ELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxVQUFVLEdBQUcsZUFBZSxDQUFDO1FBQzlDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQWUsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksc0JBQXNCLENBQUMsRUFBVSxFQUFFLElBQWtCO1FBQzFELElBQUksRUFBRSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDNUMsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLEVBQUUsQ0FBQztZQUM1QixDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEIsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLG1CQUFtQixDQUFDLElBQXNCLEVBQUUsSUFBa0I7UUFDbkUsSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7WUFDdEIsQ0FBQztZQUNELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzFCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEIsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLFFBQVEsQ0FBQyxJQUFrQjtRQUNoQyxNQUFNLE9BQU8sR0FBRyxJQUFJLFdBQVcsQ0FBQyxFQUFFLGNBQWMsRUFBRSxpQ0FBaUMsRUFBRSxDQUFDLENBQUM7UUFDdkYsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFVBQVUsR0FBRyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUNoRixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFTLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7d0dBMUVVLG1CQUFtQjs0R0FBbkIsbUJBQW1CLGNBRmxCLE1BQU07OzRGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTaG9wcGluZ0NhcnQsIFNob3BwaW5nQ2FydEl0ZW0gfSBmcm9tICdAb2hpb2VwYS9vZXBhLWViaXotbGliJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU2hvcHBpbmdDYXJ0U2VydmljZSB7XG4gIHByaXZhdGUgcGF5bWVudFVybDogc3RyaW5nID0gJy9lYml6L2FwaS92MS9wYXltZW50Lyc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50KSB7IH1cblxuICAvKipcbiAgICogUmV0cmlldmUgYSBzaG9wcGluZyBjYXJ0IGZvciB0aGUgY3VycmVudCB1c2VyIGZvciB0aGUgcHJvdmlkZWQgc2VydmljZU5hbWUuXG4gICAqIEBwYXJhbSBzZXJ2aWNlTmFtZVxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlPFNob3BwaW5nQ2FydD5cbiAgICovXG4gIHB1YmxpYyByZXRyaWV2ZVNob3BwaW5nQ2FydChzZXJ2aWNlTmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxTaG9wcGluZ0NhcnQ+IHtcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCk7XG4gICAgaGVhZGVycy5hcHBlbmQoJ0NvbnRlbnQtVHlwZScsICdhcHBsaWNhdGlvbi9qc29uJyk7XG4gICAgY29uc3QgdXJsID0gdGhpcy5wYXltZW50VXJsICsgJy9zaG9wcGluZ0NhcnQvJyArIHNlcnZpY2VOYW1lO1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFNob3BwaW5nQ2FydD4odXJsLCB7IGhlYWRlcnM6IGhlYWRlcnMsIHJlc3BvbnNlVHlwZTogJ2pzb24nIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFN0b3JlIGNhcnQgaW4gdGhlIGRhdGFiYXNlXG4gICAqIEBwYXJhbSBjYXJ0XG4gICAqIEByZXR1cm5zIE9ic2VydmFibGU8U2hvcHBpbmdDYXJ0PlxuICAgKi9cbiAgcHVibGljIHVwZGF0ZVNob3BwaW5nQ2FydChjYXJ0OiBTaG9wcGluZ0NhcnQpOiBPYnNlcnZhYmxlPFNob3BwaW5nQ2FydD4ge1xuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKTtcbiAgICBoZWFkZXJzLmFwcGVuZCgnQ29udGVudC1UeXBlJywgJ2FwcGxpY2F0aW9uL2pzb24nKTtcbiAgICBjb25zdCB1cmwgPSB0aGlzLnBheW1lbnRVcmwgKyAnL3Nob3BwaW5nQ2FydCc7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PFNob3BwaW5nQ2FydD4odXJsLCBjYXJ0LCB7IGhlYWRlcnM6IGhlYWRlcnMsIHJlc3BvbnNlVHlwZTogJ2pzb24nIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgaXRlbSB3aXRoIHRoZSB0eXBlIGlkLCBpZCwgZnJvbSBjYXJ0IGFuZCBzdG9yZSBpdCBpbiB0aGUgZGF0YWJhc2VcbiAgICogQHBhcmFtIGlkXG4gICAqIEBwYXJhbSBjYXJ0IFxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlPFNob3BwaW5nQ2FydD5cbiAgICovXG4gIHB1YmxpYyByZW1vdmVTaG9wcGluZ0NhcnRJdGVtKGlkOiBzdHJpbmcsIGNhcnQ6IFNob3BwaW5nQ2FydCk6IE9ic2VydmFibGU8U2hvcHBpbmdDYXJ0PiB7XG4gICAgaWYgKGlkICYmIGNhcnQgJiYgY2FydC5jYXJ0SXRlbXMpIHtcbiAgICAgIGNhcnQuY2FydEl0ZW1zID0gY2FydC5jYXJ0SXRlbXMuZmlsdGVyKGl0ZW0gPT4ge1xuICAgICAgICByZXR1cm4gaXRlbS50eXBlSUQgIT09IGlkO1xuICAgICAgfSk7XG4gICAgICByZXR1cm4gdGhpcy51cGRhdGVTaG9wcGluZ0NhcnQoY2FydCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBvZihjYXJ0KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWRkIGl0ZW0gdG8gY2FydCBhbmQgc3RvcmUgaXQgaW4gdGhlIGRhdGFiYXNlXG4gICAqIEBwYXJhbSBpdGVtIFxuICAgKiBAcGFyYW0gY2FydCBcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxTaG9wcGluZ0NhcnQ+XG4gICAqL1xuICBwdWJsaWMgYWRkU2hvcHBpbmdDYXJ0SXRlbShpdGVtOiBTaG9wcGluZ0NhcnRJdGVtLCBjYXJ0OiBTaG9wcGluZ0NhcnQpOiBPYnNlcnZhYmxlPFNob3BwaW5nQ2FydD4ge1xuICAgIGlmIChpdGVtICYmIGNhcnQpIHtcbiAgICAgIGlmICghY2FydC5jYXJ0SXRlbXMpIHtcbiAgICAgICAgY2FydC5jYXJ0SXRlbXMgPSBbXTtcbiAgICAgIH1cbiAgICAgIGNhcnQuY2FydEl0ZW1zLnB1c2goaXRlbSk7XG4gICAgICByZXR1cm4gdGhpcy51cGRhdGVTaG9wcGluZ0NhcnQoY2FydCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBvZihjYXJ0KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUGVyZm9ybSBjaGVja291dCBmb3IgY2FydC4gVGhpcyB3aWxsIGNyZWF0ZSByZXZlbnVlcyBmb3IgYWxsIGl0ZW1zIGluIHRoZSBjYXJ0IGFuZCByZXR1cm4gXG4gICAqIGEgdHJhbnNhY3Rpb24gaWQgZm9yIHRoZSBzaG9wcGluZyBjYXJ0IGFzIGEgd2hvbGUuXG4gICAqIEBwYXJhbSBjYXJ0XG4gICAqIEByZXR1cm5zIE9ic2VydmFibGU8c3RyaW5nPlxuICAgKi9cbiAgcHVibGljIGNoZWNrT3V0KGNhcnQ6IFNob3BwaW5nQ2FydCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycyh7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbjsgb2RhdGE9dmVyYm9zZScgfSk7XG4gICAgY29uc3QgdXJsID0gdGhpcy5wYXltZW50VXJsICsgJy9zaG9wcGluZ0NhcnQvJyArIGNhcnQuc2VydmljZU5hbWUgKyAnL2NoZWNrb3V0JztcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8c3RyaW5nPih1cmwsIGNhcnQsIHsgaGVhZGVyczogaGVhZGVycywgcmVzcG9uc2VUeXBlOiAnanNvbicgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { Component, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/forms";
|
|
4
|
+
import * as i2 from "@ohioepa/oepa-common-lib";
|
|
5
|
+
import * as i3 from "@angular/common";
|
|
6
|
+
import * as i4 from "ngx-bootstrap/timepicker";
|
|
7
|
+
export class StartEndTimepickerComponent {
|
|
8
|
+
fb;
|
|
9
|
+
idService;
|
|
10
|
+
startComponentId = 'OepaTimepickerComponent';
|
|
11
|
+
endComponentId = 'OepaTimepickerComponent';
|
|
12
|
+
timeRangeInfo = {};
|
|
13
|
+
timeRangeInfoChange = new EventEmitter();
|
|
14
|
+
showValidation = false;
|
|
15
|
+
isRequired = false;
|
|
16
|
+
isReadOnly = false;
|
|
17
|
+
isDisabled = false;
|
|
18
|
+
defaultTimeRange = {};
|
|
19
|
+
offsetHours = 0;
|
|
20
|
+
form;
|
|
21
|
+
validStart = true;
|
|
22
|
+
validEnd = true;
|
|
23
|
+
constructor(fb, idService) {
|
|
24
|
+
this.fb = fb;
|
|
25
|
+
this.idService = idService;
|
|
26
|
+
this.form = this.fb.group({
|
|
27
|
+
start: null,
|
|
28
|
+
end: null
|
|
29
|
+
});
|
|
30
|
+
this.form.get("start")?.valueChanges.subscribe(time => {
|
|
31
|
+
if (this.validStart) {
|
|
32
|
+
let tmpTime = new Date(time);
|
|
33
|
+
tmpTime.setHours(time.getHours() - this.offsetHours);
|
|
34
|
+
this.timeRangeInfo.startHour = tmpTime.getHours();
|
|
35
|
+
this.timeRangeInfo.startMinute = tmpTime.getMinutes();
|
|
36
|
+
this.timeRangeInfo.startSecond = 0;
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
this.timeRangeInfo.startHour = undefined;
|
|
40
|
+
this.timeRangeInfo.startMinute = undefined;
|
|
41
|
+
this.timeRangeInfo.startSecond = undefined;
|
|
42
|
+
}
|
|
43
|
+
this.timeRangeInfoChange.emit(this.timeRangeInfo);
|
|
44
|
+
});
|
|
45
|
+
this.form.get("end")?.valueChanges.subscribe(time => {
|
|
46
|
+
if (this.validEnd) {
|
|
47
|
+
let tmpTime = new Date(time);
|
|
48
|
+
tmpTime.setHours(time.getHours() - this.offsetHours);
|
|
49
|
+
this.timeRangeInfo.endHour = tmpTime.getHours();
|
|
50
|
+
this.timeRangeInfo.endMinute = tmpTime.getMinutes();
|
|
51
|
+
this.timeRangeInfo.endSecond = 0;
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
this.timeRangeInfo.endHour = undefined;
|
|
55
|
+
this.timeRangeInfo.endMinute = undefined;
|
|
56
|
+
this.timeRangeInfo.endSecond = undefined;
|
|
57
|
+
}
|
|
58
|
+
this.timeRangeInfoChange.emit(this.timeRangeInfo);
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
isValidStart(event) {
|
|
62
|
+
this.validStart = event;
|
|
63
|
+
}
|
|
64
|
+
isValidEnd(event) {
|
|
65
|
+
this.validEnd = event;
|
|
66
|
+
}
|
|
67
|
+
ngOnInit() {
|
|
68
|
+
if (this.form) {
|
|
69
|
+
this.startComponentId = this.idService.getComponentId(this.form);
|
|
70
|
+
this.startComponentId += (this.startComponentId.length > 0 ? '_' : '') + ('StartTime');
|
|
71
|
+
this.endComponentId = this.idService.getComponentId(this.form);
|
|
72
|
+
this.endComponentId += (this.endComponentId.length > 0 ? '_' : '') + ('EndTime');
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
console.log('OOPS No datepickerForm yet');
|
|
76
|
+
}
|
|
77
|
+
if (!this.timeRangeInfo.startHour && this.defaultTimeRange && this.defaultTimeRange.startHour) {
|
|
78
|
+
this.timeRangeInfo.startHour = this.defaultTimeRange.startHour;
|
|
79
|
+
this.timeRangeInfo.startMinute = this.defaultTimeRange.startMinute;
|
|
80
|
+
this.timeRangeInfo.startSecond = this.defaultTimeRange.startSecond;
|
|
81
|
+
}
|
|
82
|
+
if (!this.timeRangeInfo.endHour && this.defaultTimeRange && this.defaultTimeRange.endHour) {
|
|
83
|
+
this.timeRangeInfo.endHour = this.defaultTimeRange.endHour;
|
|
84
|
+
this.timeRangeInfo.endMinute = this.defaultTimeRange.endMinute;
|
|
85
|
+
this.timeRangeInfo.endSecond = this.defaultTimeRange.endSecond;
|
|
86
|
+
}
|
|
87
|
+
if (this.timeRangeInfo.startHour) {
|
|
88
|
+
this.form.patchValue({
|
|
89
|
+
start: this.setTime(this.timeRangeInfo.startHour, this.timeRangeInfo.startMinute || 0),
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
if (this.timeRangeInfo.endHour) {
|
|
93
|
+
this.form.patchValue({
|
|
94
|
+
end: this.setTime(this.timeRangeInfo.endHour, this.timeRangeInfo.endMinute || 0),
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
setTime(hour, minute) {
|
|
99
|
+
let date = new Date();
|
|
100
|
+
date.setHours(hour);
|
|
101
|
+
date.setMinutes(minute);
|
|
102
|
+
date.setSeconds(0);
|
|
103
|
+
return date;
|
|
104
|
+
}
|
|
105
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StartEndTimepickerComponent, deps: [{ token: i1.FormBuilder }, { token: i2.OepaComponentIdService }], target: i0.ɵɵFactoryTarget.Component });
|
|
106
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: StartEndTimepickerComponent, selector: "oepa-start-end-timepicker", inputs: { timeRangeInfo: "timeRangeInfo", showValidation: "showValidation", isRequired: "isRequired", isReadOnly: "isReadOnly", isDisabled: "isDisabled", defaultTimeRange: "defaultTimeRange" }, outputs: { timeRangeInfoChange: "timeRangeInfoChange" }, ngImport: i0, template: "<div [formGroup]=\"form\">\n <div class=\"form-group row\">\n <div class=\"col-sm-6\">\n <div class=\"col-md-12 form-group\" [ngClass]=\"{'is-invalid':showValidation && isRequired && !validStart}\">\n <div class=\"input-group\">\n <timepicker formControlName=\"start\" [readonlyInput]=\"isReadOnly\" [id]=\"startComponentId+'_StartTime'\" [disabled]=\"isDisabled\" (isValid)=\"isValidStart($event)\"></timepicker>\n </div>\n <small class=\"help-block\" *ngIf=\"showValidation && isRequired && !validStart\">Time is invalid</small>\n </div>\n </div>\n <div class=\"col-sm-6\">\n <div class=\"col-md-12 form-group\" [ngClass]=\"{'is-invalid':showValidation && isRequired && !validEnd}\">\n <div class=\"input-group\">\n <timepicker formControlName=\"end\" [readonlyInput]=\"isReadOnly\" [id]=\"endComponentId+'_EndTime'\" [disabled]=\"isDisabled\" (isValid)=\"isValidEnd($event)\"></timepicker>\n </div>\n <small class=\"help-block\" *ngIf=\"showValidation && isRequired && !validEnd\">Time is invalid</small>\n </div>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i4.TimepickerComponent, selector: "timepicker", inputs: ["hourStep", "minuteStep", "secondsStep", "readonlyInput", "disabled", "mousewheel", "arrowkeys", "showSpinners", "showMeridian", "showMinutes", "showSeconds", "meridians", "min", "max", "hoursPlaceholder", "minutesPlaceholder", "secondsPlaceholder"], outputs: ["isValid", "meridianChange"] }] });
|
|
107
|
+
}
|
|
108
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: StartEndTimepickerComponent, decorators: [{
|
|
109
|
+
type: Component,
|
|
110
|
+
args: [{ selector: 'oepa-start-end-timepicker', template: "<div [formGroup]=\"form\">\n <div class=\"form-group row\">\n <div class=\"col-sm-6\">\n <div class=\"col-md-12 form-group\" [ngClass]=\"{'is-invalid':showValidation && isRequired && !validStart}\">\n <div class=\"input-group\">\n <timepicker formControlName=\"start\" [readonlyInput]=\"isReadOnly\" [id]=\"startComponentId+'_StartTime'\" [disabled]=\"isDisabled\" (isValid)=\"isValidStart($event)\"></timepicker>\n </div>\n <small class=\"help-block\" *ngIf=\"showValidation && isRequired && !validStart\">Time is invalid</small>\n </div>\n </div>\n <div class=\"col-sm-6\">\n <div class=\"col-md-12 form-group\" [ngClass]=\"{'is-invalid':showValidation && isRequired && !validEnd}\">\n <div class=\"input-group\">\n <timepicker formControlName=\"end\" [readonlyInput]=\"isReadOnly\" [id]=\"endComponentId+'_EndTime'\" [disabled]=\"isDisabled\" (isValid)=\"isValidEnd($event)\"></timepicker>\n </div>\n <small class=\"help-block\" *ngIf=\"showValidation && isRequired && !validEnd\">Time is invalid</small>\n </div>\n </div>\n </div>\n</div>\n" }]
|
|
111
|
+
}], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.OepaComponentIdService }], propDecorators: { timeRangeInfo: [{
|
|
112
|
+
type: Input
|
|
113
|
+
}], timeRangeInfoChange: [{
|
|
114
|
+
type: Output
|
|
115
|
+
}], showValidation: [{
|
|
116
|
+
type: Input
|
|
117
|
+
}], isRequired: [{
|
|
118
|
+
type: Input
|
|
119
|
+
}], isReadOnly: [{
|
|
120
|
+
type: Input
|
|
121
|
+
}], isDisabled: [{
|
|
122
|
+
type: Input
|
|
123
|
+
}], defaultTimeRange: [{
|
|
124
|
+
type: Input
|
|
125
|
+
}] } });
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhcnQtZW5kLXRpbWVwaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2VwYS11aS1saWIvc3JjL2xpYi9zdGFydC1lbmQtdGltZXBpY2tlci9zdGFydC1lbmQtdGltZXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vZXBhLXVpLWxpYi9zcmMvbGliL3N0YXJ0LWVuZC10aW1lcGlja2VyL3N0YXJ0LWVuZC10aW1lcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVUvRSxNQUFNLE9BQU8sMkJBQTJCO0lBbUI1QjtJQUNBO0lBbkJILGdCQUFnQixHQUFHLHlCQUF5QixDQUFDO0lBQzdDLGNBQWMsR0FBRyx5QkFBeUIsQ0FBQztJQUV6QyxhQUFhLEdBQWMsRUFBRSxDQUFDO0lBQzdCLG1CQUFtQixHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7SUFFckQsY0FBYyxHQUFHLEtBQUssQ0FBQztJQUN2QixVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQ25CLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDbkIsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUNuQixnQkFBZ0IsR0FBYyxFQUFFLENBQUM7SUFFbEMsV0FBVyxHQUFHLENBQUMsQ0FBQztJQUNqQixJQUFJLENBQVk7SUFDdkIsVUFBVSxHQUFHLElBQUksQ0FBQztJQUNsQixRQUFRLEdBQUcsSUFBSSxDQUFDO0lBRWhCLFlBQ1UsRUFBZSxFQUNmLFNBQWlDO1FBRGpDLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDZixjQUFTLEdBQVQsU0FBUyxDQUF3QjtRQUV6QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxD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VUFBVTtzQkFBbEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9lcGFDb21wb25lbnRJZFNlcnZpY2UgfSBmcm9tICdAb2hpb2VwYS9vZXBhLWNvbW1vbi1saWInO1xuaW1wb3J0IHsgVGltZVJhbmdlIH0gZnJvbSAnQG9oaW9lcGEvb2VwYS1lYml6LWxpYic7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvZXBhLXN0YXJ0LWVuZC10aW1lcGlja2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0YXJ0LWVuZC10aW1lcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3RhcnQtZW5kLXRpbWVwaWNrZXIuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIFN0YXJ0RW5kVGltZXBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyBzdGFydENvbXBvbmVudElkID0gJ09lcGFUaW1lcGlja2VyQ29tcG9uZW50JztcbiAgcHVibGljIGVuZENvbXBvbmVudElkID0gJ09lcGFUaW1lcGlja2VyQ29tcG9uZW50JztcblxuICBASW5wdXQoKSB0aW1lUmFuZ2VJbmZvOiBUaW1lUmFuZ2UgPSB7fTtcbiAgQE91dHB1dCgpIHRpbWVSYW5nZUluZm9DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFRpbWVSYW5nZT4oKTtcblxuICBASW5wdXQoKSBzaG93VmFsaWRhdGlvbiA9IGZhbHNlO1xuICBASW5wdXQoKSBpc1JlcXVpcmVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIGlzUmVhZE9ubHkgPSBmYWxzZTtcbiAgQElucHV0KCkgaXNEaXNhYmxlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBkZWZhdWx0VGltZVJhbmdlOiBUaW1lUmFuZ2UgPSB7fTtcblxuICBwcml2YXRlIG9mZnNldEhvdXJzID0gMDtcbiAgcHVibGljIGZvcm06IEZvcm1Hcm91cDtcbiAgdmFsaWRTdGFydCA9IHRydWU7XG4gIHZhbGlkRW5kID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIGlkU2VydmljZTogT2VwYUNvbXBvbmVudElkU2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBzdGFydDogbnVsbCxcbiAgICAgIGVuZDogbnVsbFxuICAgIH0pO1xuICAgIFxuICAgIHRoaXMuZm9ybS5nZXQoXCJzdGFydFwiKT8udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSh0aW1lID0+IHtcbiAgICAgIGlmKHRoaXMudmFsaWRTdGFydCkge1xuICAgICAgICBsZXQgdG1wVGltZTogRGF0ZSA9IG5ldyBEYXRlKHRpbWUpO1xuICAgICAgICB0bXBUaW1lLnNldEhvdXJzKHRpbWUuZ2V0SG91cnMoKSAtIHRoaXMub2Zmc2V0SG91cnMpO1xuICAgICAgICB0aGlzLnRpbWVSYW5nZUluZm8uc3RhcnRIb3VyID0gdG1wVGltZS5nZXRIb3VycygpO1xuICAgICAgICB0aGlzLnRpbWVSYW5nZUluZm8uc3RhcnRNaW51dGUgPSB0bXBUaW1lLmdldE1pbnV0ZXMoKTtcbiAgICAgICAgdGhpcy50aW1lUmFuZ2VJbmZvLnN0YXJ0U2Vjb25kID0gMDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudGltZVJhbmdlSW5mby5zdGFydEhvdXIgPSB1bmRlZmluZWQ7XG4gICAgICAgIHRoaXMudGltZVJhbmdlSW5mby5zdGFydE1pbnV0ZSA9IHVuZGVmaW5lZDtcbiAgICAgICAgdGhpcy50aW1lUmFuZ2VJbmZvLnN0YXJ0U2Vjb25kID0gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgICAgdGhpcy50aW1lUmFuZ2VJbmZvQ2hhbmdlLmVtaXQodGhpcy50aW1lUmFuZ2VJbmZvKTtcbiAgICB9KTtcbiAgICB0aGlzLmZvcm0uZ2V0KFwiZW5kXCIpPy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHRpbWUgPT4ge1xuICAgICAgaWYodGhpcy52YWxpZEVuZCkge1xuICAgICAgICBsZXQgdG1wVGltZTogRGF0ZSA9IG5ldyBEYXRlKHRpbWUpO1xuICAgICAgICB0bXBUaW1lLnNldEhvdXJzKHRpbWUuZ2V0SG91cnMoKSAtIHRoaXMub2Zmc2V0SG91cnMpO1xuICAgICAgICB0aGlzLnRpbWVSYW5nZUluZm8uZW5kSG91ciA9IHRtcFRpbWUuZ2V0SG91cnMoKTtcbiAgICAgICAgdGhpcy50aW1lUmFuZ2VJbmZvLmVuZE1pbnV0ZSA9IHRtcFRpbWUuZ2V0TWludXRlcygpO1xuICAgICAgICB0aGlzLnRpbWVSYW5nZUluZm8uZW5kU2Vjb25kID0gMDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudGltZVJhbmdlSW5mby5lbmRIb3VyID0gdW5kZWZpbmVkO1xuICAgICAgICB0aGlzLnRpbWVSYW5nZUluZm8uZW5kTWludXRlID0gdW5kZWZpbmVkO1xuICAgICAgICB0aGlzLnRpbWVSYW5nZUluZm8uZW5kU2Vjb25kID0gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgICAgdGhpcy50aW1lUmFuZ2VJbmZvQ2hhbmdlLmVtaXQodGhpcy50aW1lUmFuZ2VJbmZvKTtcbiAgICB9KTtcbiAgfVxuXG4gIGlzVmFsaWRTdGFydChldmVudDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMudmFsaWRTdGFydCA9IGV2ZW50O1xuICB9XG4gIGlzVmFsaWRFbmQoZXZlbnQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLnZhbGlkRW5kID0gZXZlbnQ7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5mb3JtKSB7XG4gICAgICB0aGlzLnN0YXJ0Q29tcG9uZW50SWQgPSB0aGlzLmlkU2VydmljZS5nZXRDb21wb25lbnRJZCh0aGlzLmZvcm0pO1xuICAgICAgdGhpcy5zdGFydENvbXBvbmVudElkICs9ICh0aGlzLnN0YXJ0Q29tcG9uZW50SWQubGVuZ3RoID4gMCA/ICdfJyA6ICcnKSArICgnU3RhcnRUaW1lJyk7XG4gICAgICB0aGlzLmVuZENvbXBvbmVudElkID0gdGhpcy5pZFNlcnZpY2UuZ2V0Q29tcG9uZW50SWQodGhpcy5mb3JtKTtcbiAgICAgIHRoaXMuZW5kQ29tcG9uZW50SWQgKz0gKHRoaXMuZW5kQ29tcG9uZW50SWQubGVuZ3RoID4gMCA/ICdfJyA6ICcnKSArICgnRW5kVGltZScpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLmxvZygnT09QUyBObyBkYXRlcGlja2VyRm9ybSB5ZXQnKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMudGltZVJhbmdlSW5mby5zdGFydEhvdXIgJiYgdGhpcy5kZWZhdWx0VGltZVJhbmdlICYmIHRoaXMuZGVmYXVsdFRpbWVSYW5nZS5zdGFydEhvdXIpIHtcbiAgICAgIHRoaXMudGltZVJhbmdlSW5mby5zdGFydEhvdXIgPSB0aGlzLmRlZmF1bHRUaW1lUmFuZ2Uuc3RhcnRIb3VyO1xuICAgICAgdGhpcy50aW1lUmFuZ2VJbmZvLnN0YXJ0TWludXRlID0gdGhpcy5kZWZhdWx0VGltZVJhbmdlLnN0YXJ0TWludXRlO1xuICAgICAgdGhpcy50aW1lUmFuZ2VJbmZvLnN0YXJ0U2Vjb25kID0gdGhpcy5kZWZhdWx0VGltZVJhbmdlLnN0YXJ0U2Vjb25kO1xuICAgIH1cbiAgICBpZiAoIXRoaXMudGltZVJhbmdlSW5mby5lbmRIb3VyICYmIHRoaXMuZGVmYXVsdFRpbWVSYW5nZSAmJiB0aGlzLmRlZmF1bHRUaW1lUmFuZ2UuZW5kSG91cikge1xuICAgICAgdGhpcy50aW1lUmFuZ2VJbmZvLmVuZEhvdXIgPSB0aGlzLmRlZmF1bHRUaW1lUmFuZ2UuZW5kSG91cjtcbiAgICAgIHRoaXMudGltZVJhbmdlSW5mby5lbmRNaW51dGUgPSB0aGlzLmRlZmF1bHRUaW1lUmFuZ2UuZW5kTWludXRlO1xuICAgICAgdGhpcy50aW1lUmFuZ2VJbmZvLmVuZFNlY29uZCA9IHRoaXMuZGVmYXVsdFRpbWVSYW5nZS5lbmRTZWNvbmQ7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudGltZVJhbmdlSW5mby5zdGFydEhvdXIpIHtcbiAgICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgICAgc3RhcnQ6IHRoaXMuc2V0VGltZSh0aGlzLnRpbWVSYW5nZUluZm8uc3RhcnRIb3VyLCB0aGlzLnRpbWVSYW5nZUluZm8uc3RhcnRNaW51dGUgfHwgMCksXG4gICAgICB9KTtcbiAgICB9XG4gICAgaWYgKHRoaXMudGltZVJhbmdlSW5mby5lbmRIb3VyKSB7XG4gICAgICB0aGlzLmZvcm0ucGF0Y2hWYWx1ZSh7XG4gICAgICAgIGVuZDogdGhpcy5zZXRUaW1lKHRoaXMudGltZVJhbmdlSW5mby5lbmRIb3VyLCB0aGlzLnRpbWVSYW5nZUluZm8uZW5kTWludXRlIHx8IDApLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgc2V0VGltZShob3VyOiBudW1iZXIsIG1pbnV0ZTogbnVtYmVyKTogRGF0ZSB7XG4gICAgbGV0IGRhdGUgPSBuZXcgRGF0ZSgpO1xuICAgIGRhdGUuc2V0SG91cnMoaG91cik7XG4gICAgZGF0ZS5zZXRNaW51dGVzKG1pbnV0ZSk7XG4gICAgZGF0ZS5zZXRTZWNvbmRzKDApO1xuICAgIHJldHVybiBkYXRlO1xuICB9XG5cbn1cbiIsIjxkaXYgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XG4gIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIHJvd1wiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tNlwiPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMiBmb3JtLWdyb3VwXCIgW25nQ2xhc3NdPVwieydpcy1pbnZhbGlkJzpzaG93VmFsaWRhdGlvbiAmJiBpc1JlcXVpcmVkICYmICF2YWxpZFN0YXJ0fVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXBcIj5cbiAgICAgICAgICA8dGltZXBpY2tlciBmb3JtQ29udHJvbE5hbWU9XCJzdGFydFwiIFtyZWFkb25seUlucHV0XT1cImlzUmVhZE9ubHlcIiBbaWRdPVwic3RhcnRDb21wb25lbnRJZCsnX1N0YXJ0VGltZSdcIiBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiIChpc1ZhbGlkKT1cImlzVmFsaWRTdGFydCgkZXZlbnQpXCI+PC90aW1lcGlja2VyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNtYWxsIGNsYXNzPVwiaGVscC1ibG9ja1wiICpuZ0lmPVwic2hvd1ZhbGlkYXRpb24gJiYgaXNSZXF1aXJlZCAmJiAhdmFsaWRTdGFydFwiPlRpbWUgaXMgaW52YWxpZDwvc21hbGw+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTZcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgZm9ybS1ncm91cFwiIFtuZ0NsYXNzXT1cInsnaXMtaW52YWxpZCc6c2hvd1ZhbGlkYXRpb24gJiYgaXNSZXF1aXJlZCAmJiAhdmFsaWRFbmR9XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cFwiPlxuICAgICAgICAgIDx0aW1lcGlja2VyIGZvcm1Db250cm9sTmFtZT1cImVuZFwiIFtyZWFkb25seUlucHV0XT1cImlzUmVhZE9ubHlcIiBbaWRdPVwiZW5kQ29tcG9uZW50SWQrJ19FbmRUaW1lJ1wiIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkXCIgKGlzVmFsaWQpPVwiaXNWYWxpZEVuZCgkZXZlbnQpXCI+PC90aW1lcGlja2VyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNtYWxsIGNsYXNzPVwiaGVscC1ibG9ja1wiICpuZ0lmPVwic2hvd1ZhbGlkYXRpb24gJiYgaXNSZXF1aXJlZCAmJiAhdmFsaWRFbmRcIj5UaW1lIGlzIGludmFsaWQ8L3NtYWxsPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2VwYS1wLWNvbHVtbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29lcGEtdWktbGliL3NyYy9saWIvdGFibGUvb2VwYS1wLWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBPZXBhUENvbHVtbiB7XG4gICAgZmllbGQ6IHN0cmluZztcbiAgICBoZWFkZXI6IHN0cmluZztcbn0iXX0=
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class OepaTableCellClassnamePipe {
|
|
4
|
+
transform(row, column) {
|
|
5
|
+
let result = '';
|
|
6
|
+
row.cells.forEach((cell) => {
|
|
7
|
+
if (cell.id === column.id) {
|
|
8
|
+
result = cell.className;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
return result;
|
|
12
|
+
}
|
|
13
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OepaTableCellClassnamePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
14
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: OepaTableCellClassnamePipe, name: "cellClassname" });
|
|
15
|
+
}
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OepaTableCellClassnamePipe, decorators: [{
|
|
17
|
+
type: Pipe,
|
|
18
|
+
args: [{
|
|
19
|
+
name: 'cellClassname'
|
|
20
|
+
}]
|
|
21
|
+
}] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2VwYS10YWJsZS1jZWxsLWNsYXNzbmFtZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2VwYS11aS1saWIvc3JjL2xpYi90YWJsZS9vZXBhLXRhYmxlLWNlbGwtY2xhc3NuYW1lLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBUXBELE1BQU0sT0FBTywwQkFBMEI7SUFDckMsU0FBUyxDQUFDLEdBQWlCLEVBQUUsTUFBdUI7UUFDbEQsSUFBSSxNQUFNLEdBQXVCLEVBQUUsQ0FBQztRQUNwQyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQW1CLEVBQUUsRUFBRTtZQUN4QyxJQUFJLElBQUksQ0FBQyxFQUFFLEtBQUssTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUMxQixNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUMxQixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO3dHQVRVLDBCQUEwQjtzR0FBMUIsMEJBQTBCOzs0RkFBMUIsMEJBQTBCO2tCQUh0QyxJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxlQUFlO2lCQUN0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgT2VwYVRhYmxlUm93IH0gZnJvbSBcIi4vb2VwYS10YWJsZS1yb3dcIjtcbmltcG9ydCB7IE9lcGFUYWJsZUNlbGwgfSBmcm9tIFwiLi9vZXBhLXRhYmxlLWNlbGxcIjtcbmltcG9ydCB7IE9lcGFUYWJsZUNvbHVtbiB9IGZyb20gXCIuL29lcGEtdGFibGUtY29sdW1uXCI7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ2NlbGxDbGFzc25hbWUnXG59KVxuZXhwb3J0IGNsYXNzIE9lcGFUYWJsZUNlbGxDbGFzc25hbWVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybShyb3c6IE9lcGFUYWJsZVJvdywgY29sdW1uOiBPZXBhVGFibGVDb2x1bW4pOiBzdHJpbmcge1xuICAgIGxldCByZXN1bHQ6IHN0cmluZyB8IHVuZGVmaW5lZCA9ICcnO1xuICAgIHJvdy5jZWxscy5mb3JFYWNoKChjZWxsOiBPZXBhVGFibGVDZWxsKSA9PiB7XG4gICAgICBpZiAoY2VsbC5pZCA9PT0gY29sdW1uLmlkKSB7XG4gICAgICAgIHJlc3VsdCA9IGNlbGwuY2xhc3NOYW1lO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn0iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2VwYS10YWJsZS1jZWxsLWNsaWNrLWV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2VwYS11aS1saWIvc3JjL2xpYi90YWJsZS9vZXBhLXRhYmxlLWNlbGwtY2xpY2stZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9lcGFUYWJsZVJvdyB9IGZyb20gJy4vb2VwYS10YWJsZS1yb3cnO1xuZXhwb3J0IGludGVyZmFjZSBPZXBhVGFibGVDZWxsQ2xpY2tFdmVudCB7XG4gICAgLyoqXG4gICAgICogVGhlIGVudGlyZSByb3cgb2YgZGF0YSBmb3IgdGhlIGNlbGwgdGhhdCB3YXMgY2xpY2tlZC5cbiAgICAgKi9cbiAgICByb3c6IE9lcGFUYWJsZVJvdztcbiAgICAvKipcbiAgICAgKiBUaGUgY29sdW1uIGlkIGZvciB0aGUgY2VsbCB0aGF0IHdhcyBjbGlja2VkLlxuICAgICAqL1xuICAgIGNvbHVtbklkOiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogVGhlIHZhbHVlIG9mIHRoZSBjZWxsIHRoYXQgd2FzIGNsaWNrZWQuXG4gICAgICovXG4gICAgdmFsdWU6IGFueTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class OepaTableCellColSpanPipe {
|
|
4
|
+
transform(row, column) {
|
|
5
|
+
let result = 1;
|
|
6
|
+
row.cells.forEach((cell) => {
|
|
7
|
+
if (cell.id === column.id) {
|
|
8
|
+
result = cell.colSpan || 1;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
return result;
|
|
12
|
+
}
|
|
13
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OepaTableCellColSpanPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
14
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: OepaTableCellColSpanPipe, name: "cellColspan" });
|
|
15
|
+
}
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OepaTableCellColSpanPipe, decorators: [{
|
|
17
|
+
type: Pipe,
|
|
18
|
+
args: [{
|
|
19
|
+
name: 'cellColspan'
|
|
20
|
+
}]
|
|
21
|
+
}] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2VwYS10YWJsZS1jZWxsLWNvbHNwYW4ucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29lcGEtdWktbGliL3NyYy9saWIvdGFibGUvb2VwYS10YWJsZS1jZWxsLWNvbHNwYW4ucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFRcEQsTUFBTSxPQUFPLHdCQUF3QjtJQUNqQyxTQUFTLENBQUMsR0FBaUIsRUFBRSxNQUF1QjtRQUNoRCxJQUFJLE1BQU0sR0FBVyxDQUFDLENBQUM7UUFDdkIsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFtQixFQUFFLEVBQUU7WUFDeEMsSUFBSSxJQUFJLENBQUMsRUFBRSxLQUFLLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDMUIsTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDO1lBQzdCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7d0dBVE0sd0JBQXdCO3NHQUF4Qix3QkFBd0I7OzRGQUF4Qix3QkFBd0I7a0JBSHBDLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFHLGFBQWE7aUJBQ3ZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBPZXBhVGFibGVSb3cgfSBmcm9tIFwiLi9vZXBhLXRhYmxlLXJvd1wiO1xuaW1wb3J0IHsgT2VwYVRhYmxlQ2VsbCB9IGZyb20gXCIuL29lcGEtdGFibGUtY2VsbFwiO1xuaW1wb3J0IHsgT2VwYVRhYmxlQ29sdW1uIH0gZnJvbSBcIi4vb2VwYS10YWJsZS1jb2x1bW5cIjtcblxuQFBpcGUoeyBcbiAgICBuYW1lIDogJ2NlbGxDb2xzcGFuJ1xufSlcbmV4cG9ydCBjbGFzcyBPZXBhVGFibGVDZWxsQ29sU3BhblBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICB0cmFuc2Zvcm0ocm93OiBPZXBhVGFibGVSb3csIGNvbHVtbjogT2VwYVRhYmxlQ29sdW1uKTogbnVtYmVyIHtcbiAgICAgICAgbGV0IHJlc3VsdDogbnVtYmVyID0gMTtcbiAgICAgICAgcm93LmNlbGxzLmZvckVhY2goKGNlbGw6IE9lcGFUYWJsZUNlbGwpID0+IHtcbiAgICAgICAgICBpZiAoY2VsbC5pZCA9PT0gY29sdW1uLmlkKSB7XG4gICAgICAgICAgICByZXN1bHQgPSBjZWxsLmNvbFNwYW4gfHwgMTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfVxufSJdfQ==
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class OepaTableCellHiddenPipe {
|
|
4
|
+
transform(row, column) {
|
|
5
|
+
let hidden = false;
|
|
6
|
+
row.cells.forEach((cell) => {
|
|
7
|
+
if (cell.id === column.id) {
|
|
8
|
+
hidden = cell.hideValue || false;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
return hidden;
|
|
12
|
+
}
|
|
13
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OepaTableCellHiddenPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
14
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: OepaTableCellHiddenPipe, name: "cellHidden" });
|
|
15
|
+
}
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OepaTableCellHiddenPipe, decorators: [{
|
|
17
|
+
type: Pipe,
|
|
18
|
+
args: [{
|
|
19
|
+
name: 'cellHidden'
|
|
20
|
+
}]
|
|
21
|
+
}] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2VwYS10YWJsZS1jZWxsLWhpZGRlbi5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb2VwYS11aS1saWIvc3JjL2xpYi90YWJsZS9vZXBhLXRhYmxlLWNlbGwtaGlkZGVuLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBUXBELE1BQU0sT0FBTyx1QkFBdUI7SUFDbEMsU0FBUyxDQUFDLEdBQWlCLEVBQUUsTUFBdUI7UUFDbEQsSUFBSSxNQUFNLEdBQVksS0FBSyxDQUFDO1FBQzVCLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBbUIsRUFBRSxFQUFFO1lBQ3hDLElBQUksSUFBSSxDQUFDLEVBQUUsS0FBSyxNQUFNLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQzFCLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLEtBQUssQ0FBQztZQUNuQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO3dHQVRVLHVCQUF1QjtzR0FBdkIsdUJBQXVCOzs0RkFBdkIsdUJBQXVCO2tCQUhuQyxJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxZQUFZO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgT2VwYVRhYmxlUm93IH0gZnJvbSBcIi4vb2VwYS10YWJsZS1yb3dcIjtcbmltcG9ydCB7IE9lcGFUYWJsZUNlbGwgfSBmcm9tIFwiLi9vZXBhLXRhYmxlLWNlbGxcIjtcbmltcG9ydCB7IE9lcGFUYWJsZUNvbHVtbiB9IGZyb20gXCIuL29lcGEtdGFibGUtY29sdW1uXCI7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ2NlbGxIaWRkZW4nXG59KVxuZXhwb3J0IGNsYXNzIE9lcGFUYWJsZUNlbGxIaWRkZW5QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHRyYW5zZm9ybShyb3c6IE9lcGFUYWJsZVJvdywgY29sdW1uOiBPZXBhVGFibGVDb2x1bW4pOiBib29sZWFuIHtcbiAgICBsZXQgaGlkZGVuOiBib29sZWFuID0gZmFsc2U7XG4gICAgcm93LmNlbGxzLmZvckVhY2goKGNlbGw6IE9lcGFUYWJsZUNlbGwpID0+IHtcbiAgICAgIGlmIChjZWxsLmlkID09PSBjb2x1bW4uaWQpIHtcbiAgICAgICAgaGlkZGVuID0gY2VsbC5oaWRlVmFsdWUgfHwgZmFsc2U7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIGhpZGRlbjtcbiAgfVxufSJdfQ==
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class OepaTableCellIconClassnamePipe {
|
|
4
|
+
transform(row, column) {
|
|
5
|
+
let result = '';
|
|
6
|
+
row.cells.forEach((cell) => {
|
|
7
|
+
if (cell.id === column.id) {
|
|
8
|
+
result = cell.iconClassName;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
return result;
|
|
12
|
+
}
|
|
13
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OepaTableCellIconClassnamePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
14
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: OepaTableCellIconClassnamePipe, name: "cellIconClassname" });
|
|
15
|
+
}
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OepaTableCellIconClassnamePipe, decorators: [{
|
|
17
|
+
type: Pipe,
|
|
18
|
+
args: [{
|
|
19
|
+
name: 'cellIconClassname'
|
|
20
|
+
}]
|
|
21
|
+
}] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2VwYS10YWJsZS1jZWxsLWljb24tY2xhc3NuYW1lLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vZXBhLXVpLWxpYi9zcmMvbGliL3RhYmxlL29lcGEtdGFibGUtY2VsbC1pY29uLWNsYXNzbmFtZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQVFwRCxNQUFNLE9BQU8sOEJBQThCO0lBQ3pDLFNBQVMsQ0FBQyxHQUFpQixFQUFFLE1BQXVCO1FBQ2xELElBQUksTUFBTSxHQUF1QixFQUFFLENBQUM7UUFDcEMsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFtQixFQUFFLEVBQUU7WUFDeEMsSUFBSSxJQUFJLENBQUMsRUFBRSxLQUFLLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDMUIsTUFBTSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7WUFDOUIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzt3R0FUVSw4QkFBOEI7c0dBQTlCLDhCQUE4Qjs7NEZBQTlCLDhCQUE4QjtrQkFIMUMsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsbUJBQW1CO2lCQUMxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgT2VwYVRhYmxlUm93IH0gZnJvbSBcIi4vb2VwYS10YWJsZS1yb3dcIjtcbmltcG9ydCB7IE9lcGFUYWJsZUNlbGwgfSBmcm9tIFwiLi9vZXBhLXRhYmxlLWNlbGxcIjtcbmltcG9ydCB7IE9lcGFUYWJsZUNvbHVtbiB9IGZyb20gXCIuL29lcGEtdGFibGUtY29sdW1uXCI7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ2NlbGxJY29uQ2xhc3NuYW1lJ1xufSlcbmV4cG9ydCBjbGFzcyBPZXBhVGFibGVDZWxsSWNvbkNsYXNzbmFtZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKHJvdzogT2VwYVRhYmxlUm93LCBjb2x1bW46IE9lcGFUYWJsZUNvbHVtbik6IHN0cmluZyB7XG4gICAgbGV0IHJlc3VsdDogc3RyaW5nIHwgdW5kZWZpbmVkID0gJyc7XG4gICAgcm93LmNlbGxzLmZvckVhY2goKGNlbGw6IE9lcGFUYWJsZUNlbGwpID0+IHtcbiAgICAgIGlmIChjZWxsLmlkID09PSBjb2x1bW4uaWQpIHtcbiAgICAgICAgcmVzdWx0ID0gY2VsbC5pY29uQ2xhc3NOYW1lO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn0iXX0=
|