@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,199 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Validators } from '@angular/forms';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Helper service for the OepaAddressComponent.
|
|
6
|
+
*/
|
|
7
|
+
export class OepaFormsService {
|
|
8
|
+
constructor() {
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Method used by parents of OepaAddressComponent to create the address form.
|
|
12
|
+
* If an initial address value is available, it should be passed in as an argument,
|
|
13
|
+
* otherwise an empty object can be passed in.
|
|
14
|
+
* @param address
|
|
15
|
+
*/
|
|
16
|
+
buildAddressForm(address) {
|
|
17
|
+
return {
|
|
18
|
+
line1: [(address.line1 || ''), [Validators.required, Validators.maxLength(50)]],
|
|
19
|
+
line2: (address.line2 || ''),
|
|
20
|
+
city: [(address.city || ''), [Validators.required, Validators.maxLength(50)]],
|
|
21
|
+
state: [(address.state || 'OH'), Validators.required],
|
|
22
|
+
postalCode: [(address.postalCode || ''), [Validators.required, Validators.pattern('[0-9]{5}')]],
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
buildAddressFormWithCountry(address) {
|
|
26
|
+
return {
|
|
27
|
+
line1: [(address.line1 || ''), [Validators.required, Validators.maxLength(40)]],
|
|
28
|
+
line2: (address.line2 || ''),
|
|
29
|
+
city: [(address.city || ''), [Validators.required, Validators.maxLength(25)]],
|
|
30
|
+
state: [(address.state || 'OH'), (address.country && address.country === 'USA') ? [Validators.required, Validators.maxLength(2)] : null],
|
|
31
|
+
postalCode: [(address.postalCode || ''), (address.country && address.country === 'USA') ? [Validators.required, Validators.pattern('[0-9]{5}')] : [Validators.required, Validators.maxLength(10)]],
|
|
32
|
+
foreignState: [(address.foreignState), (address.country && address.country !== 'USA') ? [Validators.required, Validators.maxLength(12)] : null],
|
|
33
|
+
foreignZip: [(address.foreignZip), (address.country && address.country !== 'USA') ? [Validators.required, Validators.maxLength(10)] : null],
|
|
34
|
+
country: [(address.country || 'USA'), (address.country && address.country !== 'USA') ? [Validators.required, Validators.maxLength(20)] : [Validators.maxLength(20)]],
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Method used by parents of OepaContactComponent to create the contact form.
|
|
39
|
+
* If an initial contact value is available, it should be passed in as an argument,
|
|
40
|
+
* otherwise an empty object can be passed in.
|
|
41
|
+
* @param contact
|
|
42
|
+
*/
|
|
43
|
+
buildContact(contact, includeTitle) {
|
|
44
|
+
if (includeTitle) {
|
|
45
|
+
return {
|
|
46
|
+
firstName: [(contact.firstName || ''), [Validators.required, Validators.maxLength(50)]],
|
|
47
|
+
middleName: [(contact.middleName || '')],
|
|
48
|
+
lastName: [(contact.lastName || ''), [Validators.required, Validators.maxLength(50)]],
|
|
49
|
+
title: [(contact.title || ''), [Validators.maxLength(50)]],
|
|
50
|
+
phoneNumber: [(contact.phoneNumber || ''), [Validators.required]],
|
|
51
|
+
faxNumber: [(contact.faxNumber || ''), []],
|
|
52
|
+
emailAddress: [(contact.emailAddress || ''), [Validators.required, Validators.email, Validators.maxLength(254)]],
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
return {
|
|
57
|
+
firstName: [(contact.firstName || ''), [Validators.required, Validators.maxLength(50)]],
|
|
58
|
+
middleName: [(contact.middleName || '')],
|
|
59
|
+
lastName: [(contact.lastName || ''), [Validators.required, Validators.maxLength(50)]],
|
|
60
|
+
phoneNumber: [(contact.phoneNumber || ''), [Validators.required]],
|
|
61
|
+
faxNumber: [(contact.faxNumber || ''), []],
|
|
62
|
+
emailAddress: [(contact.emailAddress || ''), [Validators.required, Validators.email, Validators.maxLength(254)]],
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
getCountryCode(countryName) {
|
|
67
|
+
let country = '';
|
|
68
|
+
switch (countryName) {
|
|
69
|
+
case "Finland":
|
|
70
|
+
country = "FIN";
|
|
71
|
+
break;
|
|
72
|
+
case "Mexico":
|
|
73
|
+
country = 'MEXI';
|
|
74
|
+
break;
|
|
75
|
+
case 'Switzerland':
|
|
76
|
+
country = "SWZ";
|
|
77
|
+
break;
|
|
78
|
+
case 'USA':
|
|
79
|
+
country = "USA";
|
|
80
|
+
break;
|
|
81
|
+
case 'Japan':
|
|
82
|
+
country = "JPN";
|
|
83
|
+
break;
|
|
84
|
+
case 'Canada':
|
|
85
|
+
country = "CANA";
|
|
86
|
+
break;
|
|
87
|
+
case 'England':
|
|
88
|
+
country = "ENG";
|
|
89
|
+
break;
|
|
90
|
+
case 'Spain':
|
|
91
|
+
country = "SPN";
|
|
92
|
+
break;
|
|
93
|
+
case 'South Korea':
|
|
94
|
+
country = "SKOR";
|
|
95
|
+
break;
|
|
96
|
+
case 'Germany':
|
|
97
|
+
country = "GRMN";
|
|
98
|
+
break;
|
|
99
|
+
case 'Italy':
|
|
100
|
+
country = "ITLY";
|
|
101
|
+
break;
|
|
102
|
+
case 'China':
|
|
103
|
+
country = "CHN";
|
|
104
|
+
break;
|
|
105
|
+
case 'Jordan':
|
|
106
|
+
country = "JORD";
|
|
107
|
+
break;
|
|
108
|
+
case 'Norway':
|
|
109
|
+
country = "NRWY";
|
|
110
|
+
break;
|
|
111
|
+
case 'Sweden':
|
|
112
|
+
country = "SWD";
|
|
113
|
+
break;
|
|
114
|
+
case 'Australia':
|
|
115
|
+
country = "AUS";
|
|
116
|
+
break;
|
|
117
|
+
case 'Austria':
|
|
118
|
+
country = "AUST";
|
|
119
|
+
break;
|
|
120
|
+
case 'France':
|
|
121
|
+
country = "FRNC";
|
|
122
|
+
break;
|
|
123
|
+
default:
|
|
124
|
+
break;
|
|
125
|
+
}
|
|
126
|
+
return country;
|
|
127
|
+
}
|
|
128
|
+
getCountryName(countryCode) {
|
|
129
|
+
let country = '';
|
|
130
|
+
switch (countryCode) {
|
|
131
|
+
case 'FIN':
|
|
132
|
+
country = 'Finland';
|
|
133
|
+
break;
|
|
134
|
+
case 'MEXI':
|
|
135
|
+
country = "Mexico";
|
|
136
|
+
break;
|
|
137
|
+
case "SWZ":
|
|
138
|
+
country = 'Switzerland';
|
|
139
|
+
break;
|
|
140
|
+
case 'USA':
|
|
141
|
+
country = "USA";
|
|
142
|
+
break;
|
|
143
|
+
case 'JPN':
|
|
144
|
+
country = 'Japan';
|
|
145
|
+
break;
|
|
146
|
+
case "CANA":
|
|
147
|
+
country = 'Canada';
|
|
148
|
+
break;
|
|
149
|
+
case "ENG":
|
|
150
|
+
country = 'England';
|
|
151
|
+
break;
|
|
152
|
+
case "SPN":
|
|
153
|
+
country = 'Spain';
|
|
154
|
+
break;
|
|
155
|
+
case "SKOR":
|
|
156
|
+
country = 'South Korea';
|
|
157
|
+
break;
|
|
158
|
+
case "GRMN":
|
|
159
|
+
country = 'Germany';
|
|
160
|
+
break;
|
|
161
|
+
case "ITLY":
|
|
162
|
+
country = 'Italy';
|
|
163
|
+
break;
|
|
164
|
+
case 'CHN':
|
|
165
|
+
country = "China";
|
|
166
|
+
break;
|
|
167
|
+
case 'JORD':
|
|
168
|
+
country = "Jordan";
|
|
169
|
+
break;
|
|
170
|
+
case 'NRWY':
|
|
171
|
+
country = "Norway";
|
|
172
|
+
break;
|
|
173
|
+
case 'SWD':
|
|
174
|
+
country = "Sweden";
|
|
175
|
+
break;
|
|
176
|
+
case 'AUS':
|
|
177
|
+
country = "Australia";
|
|
178
|
+
break;
|
|
179
|
+
case 'AUST':
|
|
180
|
+
country = "Austria";
|
|
181
|
+
break;
|
|
182
|
+
case 'FRNC':
|
|
183
|
+
country = "France";
|
|
184
|
+
break;
|
|
185
|
+
default:
|
|
186
|
+
break;
|
|
187
|
+
}
|
|
188
|
+
return country;
|
|
189
|
+
}
|
|
190
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OepaFormsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
191
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OepaFormsService, providedIn: 'root' });
|
|
192
|
+
}
|
|
193
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OepaFormsService, decorators: [{
|
|
194
|
+
type: Injectable,
|
|
195
|
+
args: [{
|
|
196
|
+
providedIn: 'root'
|
|
197
|
+
}]
|
|
198
|
+
}], ctorParameters: () => [] });
|
|
199
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2VwYS1mb3Jtcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvb2VwYS11aS1saWIvc3JjL2xpYi9vZXBhLWZvcm1zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBSzVDOztHQUVHO0FBSUgsTUFBTSxPQUFPLGdCQUFnQjtJQUV6QjtJQUNBLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLGdCQUFnQixDQUFDLE9BQXdCO1FBQzVDLE9BQU87WUFDSCxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMvRSxLQUFLLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUM1QixJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM3RSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNyRCxVQUFVLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztTQUNsRyxDQUFDO0lBQ04sQ0FBQztJQUNNLDJCQUEyQixDQUFDLE9BQXdCO1FBQ3ZELE9BQU87WUFDSCxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMvRSxLQUFLLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUM1QixJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM3RSxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEVBQVUsQ0FBQyxPQUFPLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQyxDQUFBLElBQUksQ0FBQztZQUM5SSxVQUFVLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUEsQ0FBQyxDQUFBLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBQyxVQUFVLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDL0wsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLEtBQUssS0FBSyxDQUFD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T0FBTyxHQUFHLFNBQVMsQ0FBRTtnQkFDckIsTUFBTTtZQUNWLEtBQUssS0FBSztnQkFDTixPQUFPLEdBQUcsT0FBTyxDQUFDO2dCQUNsQixNQUFNO1lBQ1YsS0FBSyxNQUFNO2dCQUNQLE9BQU8sR0FBRyxhQUFhLENBQUM7Z0JBQ3hCLE1BQU07WUFDVixLQUFLLE1BQU07Z0JBQ1AsT0FBTyxHQUFHLFNBQVMsQ0FBQztnQkFDcEIsTUFBTTtZQUNWLEtBQUssTUFBTTtnQkFDUCxPQUFPLEdBQUcsT0FBTyxDQUFDO2dCQUNsQixNQUFNO1lBQ1YsS0FBSyxLQUFLO2dCQUNOLE9BQU8sR0FBRyxPQUFPLENBQUM7Z0JBQ2xCLE1BQU07WUFDVixLQUFLLE1BQU07Z0JBQ1AsT0FBTyxHQUFHLFFBQVEsQ0FBQztnQkFDbkIsTUFBTTtZQUNWLEtBQUssTUFBTTtnQkFDUCxPQUFPLEdBQUcsUUFBUSxDQUFDO2dCQUNuQixNQUFNO1lBQ1YsS0FBSyxLQUFLO2dCQUNOLE9BQU8sR0FBRyxRQUFRLENBQUM7Z0JBQ25CLE1BQU07WUFDVixLQUFLLEtBQUs7Z0JBQ04sT0FBTyxHQUFHLFdBQVcsQ0FBQztnQkFDdEIsTUFBTTtZQUNWLEtBQUssTUFBTTtnQkFDUCxPQUFPLEdBQUcsU0FBUyxDQUFDO2dCQUNwQixNQUFNO1lBQ1YsS0FBSyxNQUFNO2dCQUNQLE9BQU8sR0FBRyxRQUFRLENBQUM7Z0JBQ25CLE1BQU07WUFDVjtnQkFDSSxNQUFNO1FBQ2QsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ25CLENBQUM7d0dBekxRLGdCQUFnQjs0R0FBaEIsZ0JBQWdCLGNBRmIsTUFBTTs7NEZBRVQsZ0JBQWdCO2tCQUg1QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IE9lcGFGb3JtQWRkcmVzcyB9IGZyb20gJy4vYWRkcmVzcy9vZXBhLWZvcm0tYWRkcmVzcyc7XG5pbXBvcnQgeyBPZXBhRm9ybUNvbnRhY3QgfSBmcm9tICcuL2NvbnRhY3Qvb2VwYS1mb3JtLWNvbnRhY3QnO1xuXG4vKipcbiAqIEhlbHBlciBzZXJ2aWNlIGZvciB0aGUgT2VwYUFkZHJlc3NDb21wb25lbnQuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbiAgfSlcbmV4cG9ydCBjbGFzcyBPZXBhRm9ybXNTZXJ2aWNlIHtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE1ldGhvZCB1c2VkIGJ5IHBhcmVudHMgb2YgT2VwYUFkZHJlc3NDb21wb25lbnQgdG8gY3JlYXRlIHRoZSBhZGRyZXNzIGZvcm0uXG4gICAgICogSWYgYW4gaW5pdGlhbCBhZGRyZXNzIHZhbHVlIGlzIGF2YWlsYWJsZSwgaXQgc2hvdWxkIGJlIHBhc3NlZCBpbiBhcyBhbiBhcmd1bWVudCxcbiAgICAgKiBvdGhlcndpc2UgYW4gZW1wdHkgb2JqZWN0IGNhbiBiZSBwYXNzZWQgaW4uXG4gICAgICogQHBhcmFtIGFkZHJlc3NcbiAgICAgKi9cbiAgICBwdWJsaWMgYnVpbGRBZGRyZXNzRm9ybShhZGRyZXNzOiBPZXBhRm9ybUFkZHJlc3MpOiBhbnkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbGluZTE6IFsoYWRkcmVzcy5saW5lMSB8fCAnJyksIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCg1MCldXSxcbiAgICAgICAgICAgIGxpbmUyOiAoYWRkcmVzcy5saW5lMiB8fCAnJyksXG4gICAgICAgICAgICBjaXR5OiBbKGFkZHJlc3MuY2l0eSB8fCAnJyksIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCg1MCldXSxcbiAgICAgICAgICAgIHN0YXRlOiBbKGFkZHJlc3Muc3RhdGUgfHwgJ09IJyksIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgICAgICAgcG9zdGFsQ29kZTogWyhhZGRyZXNzLnBvc3RhbENvZGUgfHwgJycpLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5wYXR0ZXJuKCdbMC05XXs1fScpXV0sXG4gICAgICAgIH07XG4gICAgfVxuICAgIHB1YmxpYyBidWlsZEFkZHJlc3NGb3JtV2l0aENvdW50cnkoYWRkcmVzczogT2VwYUZvcm1BZGRyZXNzKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGxpbmUxOiBbKGFkZHJlc3MubGluZTEgfHwgJycpLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoNDApXV0sXG4gICAgICAgICAgICBsaW5lMjogKGFkZHJlc3MubGluZTIgfHwgJycpLFxuICAgICAgICAgICAgY2l0eTogWyhhZGRyZXNzLmNpdHkgfHwgJycpLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMjUpXV0sXG4gICAgICAgICAgICBzdGF0ZTogWyhhZGRyZXNzLnN0YXRlIHx8ICdPSCcpLCAgICAgICAgIChhZGRyZXNzLmNvdW50cnkgJiYgYWRkcmVzcy5jb3VudHJ5ID09PSAnVVNBJykgPyBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMildOm51bGxdLFxuICAgICAgICAgICAgcG9zdGFsQ29kZTogWyhhZGRyZXNzLnBvc3RhbENvZGUgfHwgJycpLCAoYWRkcmVzcy5jb3VudHJ5ICYmIGFkZHJlc3MuY291bnRyeSA9PT0gJ1VTQScpID8gW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybignWzAtOV17NX0nKV06W1ZhbGlkYXRvcnMucmVxdWlyZWQsVmFsaWRhdG9ycy5tYXhMZW5ndGgoMTApXV0sXG4gICAgICAgICAgICBmb3JlaWduU3RhdGU6IFsoYWRkcmVzcy5mb3JlaWduU3RhdGUpLCAgIChhZGRyZXNzLmNvdW50cnkgJiYgYWRkcmVzcy5jb3VudHJ5ICE9PSAnVVNBJykgPyBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMTIpXTpudWxsXSxcbiAgICAgICAgICAgIGZvcmVpZ25aaXA6IFsoYWRkcmVzcy5mb3JlaWduWmlwKSwgICAgICAgKGFkZHJlc3MuY291bnRyeSAmJiBhZGRyZXNzLmNvdW50cnkgIT09ICdVU0EnKSA/IFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCgxMCldOm51bGxdLFxuICAgICAgICAgICAgY291bnRyeTogWyhhZGRyZXNzLmNvdW50cnkgfHwgJ1VTQScpLCAgICAoYWRkcmVzcy5jb3VudHJ5ICYmIGFkZHJlc3MuY291bnRyeSAhPT0gJ1VTQScpID8gW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDIwKV06W1ZhbGlkYXRvcnMubWF4TGVuZ3RoKDIwKV1dLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE1ldGhvZCB1c2VkIGJ5IHBhcmVudHMgb2YgT2VwYUNvbnRhY3RDb21wb25lbnQgdG8gY3JlYXRlIHRoZSBjb250YWN0IGZvcm0uXG4gICAgICogSWYgYW4gaW5pdGlhbCBjb250YWN0IHZhbHVlIGlzIGF2YWlsYWJsZSwgaXQgc2hvdWxkIGJlIHBhc3NlZCBpbiBhcyBhbiBhcmd1bWVudCxcbiAgICAgKiBvdGhlcndpc2UgYW4gZW1wdHkgb2JqZWN0IGNhbiBiZSBwYXNzZWQgaW4uXG4gICAgICogQHBhcmFtIGNvbnRhY3RcbiAgICAgKi9cbiAgICBwdWJsaWMgYnVpbGRDb250YWN0KGNvbnRhY3Q6IE9lcGFGb3JtQ29udGFjdCwgaW5jbHVkZVRpdGxlPzogYm9vbGVhbik6IGFueSB7XG4gICAgICAgIGlmIChpbmNsdWRlVGl0bGUpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgZmlyc3ROYW1lOiBbKGNvbnRhY3QuZmlyc3ROYW1lIHx8ICcnKSwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDUwKV1dLFxuICAgICAgICAgICAgICAgIG1pZGRsZU5hbWU6IFsoY29udGFjdC5taWRkbGVOYW1lIHx8ICcnKV0sXG4gICAgICAgICAgICAgICAgbGFzdE5hbWU6IFsoY29udGFjdC5sYXN0TmFtZSB8fCAnJyksIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCg1MCldXSxcbiAgICAgICAgICAgICAgICB0aXRsZTogWyhjb250YWN0LnRpdGxlIHx8ICcnKSwgW1ZhbGlkYXRvcnMubWF4TGVuZ3RoKDUwKV1dLFxuICAgICAgICAgICAgICAgIHBob25lTnVtYmVyOiBbKGNvbnRhY3QucGhvbmVOdW1iZXIgfHwgJycpLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxuICAgICAgICAgICAgICAgIGZheE51bWJlcjogWyhjb250YWN0LmZheE51bWJlciB8fCAnJyksIFtdXSxcbiAgICAgICAgICAgICAgICBlbWFpbEFkZHJlc3M6IFsoY29udGFjdC5lbWFpbEFkZHJlc3MgfHwgJycpLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5lbWFpbCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMjU0KV1dLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgZmlyc3ROYW1lOiBbKGNvbnRhY3QuZmlyc3ROYW1lIHx8ICcnKSwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDUwKV1dLFxuICAgICAgICAgICAgICAgIG1pZGRsZU5hbWU6IFsoY29udGFjdC5taWRkbGVOYW1lIHx8ICcnKV0sXG4gICAgICAgICAgICAgICAgbGFzdE5hbWU6IFsoY29udGFjdC5sYXN0TmFtZSB8fCAnJyksIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCg1MCldXSxcbiAgICAgICAgICAgICAgICBwaG9uZU51bWJlcjogWyhjb250YWN0LnBob25lTnVtYmVyIHx8ICcnKSwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcbiAgICAgICAgICAgICAgICBmYXhOdW1iZXI6IFsoY29udGFjdC5mYXhOdW1iZXIgfHwgJycpLCBbXV0sXG4gICAgICAgICAgICAgICAgZW1haWxBZGRyZXNzOiBbKGNvbnRhY3QuZW1haWxBZGRyZXNzIHx8ICcnKSwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMuZW1haWwsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDI1NCldXSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG4gICAgcHVibGljIGdldENvdW50cnlDb2RlKGNvdW50cnlOYW1lOnN0cmluZyk6c3RyaW5ne1xuICAgICAgICBsZXQgY291bnRyeTpzdHJpbmc9Jyc7XG4gICAgICAgIHN3aXRjaCAoY291bnRyeU5hbWUpe1xuICAgICAgICAgICAgY2FzZSBcIkZpbmxhbmRcIjpcbiAgICAgICAgICAgICAgICBjb3VudHJ5ID0gXCJGSU5cIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgXCJNZXhpY29cIjpcbiAgICAgICAgICAgICAgICBjb3VudHJ5ID0gJ01FWEknO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnU3dpdHplcmxhbmQnOlxuICAgICAgICAgICAgICAgIGNvdW50cnkgPSBcIlNXWlwiO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnVVNBJyA6XG4gICAgICAgICAgICAgICAgY291bnRyeSA9IFwiVVNBXCI7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdKYXBhbic6XG4gICAgICAgICAgICAgICAgY291bnRyeSA9IFwiSlBOXCI7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdDYW5hZGEnOlxuICAgICAgICAgICAgICAgIGNvdW50cnkgPSBcIkNBTkFcIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ0VuZ2xhbmQnOlxuICAgICAgICAgICAgICAgIGNvdW50cnkgPSBcIkVOR1wiO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnU3BhaW4nOlxuICAgICAgICAgICAgICAgIGNvdW50cnkgPSBcIlNQTlwiO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnU291dGggS29yZWEnOlxuICAgICAgICAgICAgICAgIGNvdW50cnkgPSBcIlNLT1JcIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ0dlcm1hbnknOlxuICAgICAgICAgICAgICAgIGNvdW50cnkgPSBcIkdSTU5cIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ0l0YWx5JzpcbiAgICAgICAgICAgICAgICBjb3VudHJ5ID0gXCJJVExZXCI7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdDaGluYSc6XG4gICAgICAgICAgICAgICAgY291bnRyeSA9IFwiQ0hOXCI7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdKb3JkYW4nOlxuICAgICAgICAgICAgICAgIGNvdW50cnkgPSBcIkpPUkRcIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ05vcndheSc6XG4gICAgICAgICAgICAgICAgY291bnRyeSA9IFwiTlJXWVwiO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnU3dlZGVuJzpcbiAgICAgICAgICAgICAgICBjb3VudHJ5ID0gXCJTV0RcIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ0F1c3RyYWxpYSc6XG4gICAgICAgICAgICAgICAgY291bnRyeSA9IFwiQVVTXCI7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdBdXN0cmlhJzpcbiAgICAgICAgICAgICAgICBjb3VudHJ5ID0gXCJBVVNUXCI7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdGcmFuY2UnOlxuICAgICAgICAgICAgICAgIGNvdW50cnkgPSBcIkZSTkNcIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNvdW50cnk7XG4gICAgfVxuICAgIFxuICAgIHB1YmxpYyBnZXRDb3VudHJ5TmFtZShjb3VudHJ5Q29kZTpzdHJpbmcpOnN0cmluZ3tcbiAgICAgICAgbGV0IGNvdW50cnk6c3RyaW5nPScnO1xuICAgICAgICBzd2l0Y2ggKGNvdW50cnlDb2RlKXtcbiAgICAgICAgICAgIGNhc2UgJ0ZJTic6XG4gICAgICAgICAgICAgICAgY291bnRyeSA9ICdGaW5sYW5kJyA7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdNRVhJJzpcbiAgICAgICAgICAgICAgICBjb3VudHJ5ID0gXCJNZXhpY29cIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgXCJTV1pcIjpcbiAgICAgICAgICAgICAgICBjb3VudHJ5ID0gJ1N3aXR6ZXJsYW5kJztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ1VTQScgOlxuICAgICAgICAgICAgICAgIGNvdW50cnkgPSBcIlVTQVwiO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnSlBOJzpcbiAgICAgICAgICAgICAgICBjb3VudHJ5ID0gJ0phcGFuJztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgXCJDQU5BXCI6XG4gICAgICAgICAgICAgICAgY291bnRyeSA9ICdDYW5hZGEnO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBcIkVOR1wiOlxuICAgICAgICAgICAgICAgIGNvdW50cnkgPSAnRW5nbGFuZCcgO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBcIlNQTlwiOlxuICAgICAgICAgICAgICAgIGNvdW50cnkgPSAnU3BhaW4nO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBcIlNLT1JcIjpcbiAgICAgICAgICAgICAgICBjb3VudHJ5ID0gJ1NvdXRoIEtvcmVhJztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgXCJHUk1OXCI6XG4gICAgICAgICAgICAgICAgY291bnRyeSA9ICdHZXJtYW55JztcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgXCJJVExZXCI6XG4gICAgICAgICAgICAgICAgY291bnRyeSA9ICdJdGFseSc7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdDSE4nOlxuICAgICAgICAgICAgICAgIGNvdW50cnkgPSBcIkNoaW5hXCI7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdKT1JEJzpcbiAgICAgICAgICAgICAgICBjb3VudHJ5ID0gXCJKb3JkYW5cIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ05SV1knOlxuICAgICAgICAgICAgICAgIGNvdW50cnkgPSBcIk5vcndheVwiO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnU1dEJzpcbiAgICAgICAgICAgICAgICBjb3VudHJ5ID0gXCJTd2VkZW5cIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ0FVUyc6XG4gICAgICAgICAgICAgICAgY291bnRyeSA9IFwiQXVzdHJhbGlhXCI7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdBVVNUJzpcbiAgICAgICAgICAgICAgICBjb3VudHJ5ID0gXCJBdXN0cmlhXCI7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdGUk5DJzpcbiAgICAgICAgICAgICAgICBjb3VudHJ5ID0gXCJGcmFuY2VcIjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNvdW50cnk7XG4gICAgfVxufVxuIl19
|