ca-components 1.3.41 → 1.3.91
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/assets/scss/filters.scss +3 -0
- package/assets/scss/text-selection.scss +5 -0
- package/esm2022/lib/ca-components.module.mjs +8 -2
- package/esm2022/lib/components/ca-activity-log-list/ca-activity-log-list.component.mjs +3 -3
- package/esm2022/lib/components/ca-checkbox/ca-checkbox.component.mjs +2 -2
- package/esm2022/lib/components/ca-collapsible-filter/ca-collapsible-filter.component.mjs +2 -2
- package/esm2022/lib/components/ca-comment/ca-comment.component.mjs +2 -2
- package/esm2022/lib/components/ca-comment/modals/comment-modal/comment-modal.component.mjs +3 -3
- package/esm2022/lib/components/ca-custom-scrollbar/ca-custom-scrollbar.component.mjs +3 -3
- package/esm2022/lib/components/ca-details-dropdown/ca-details-dropdown.component.mjs +2 -2
- package/esm2022/lib/components/ca-dropdown-menu/ca-dropdown-menu.component.mjs +3 -3
- package/esm2022/lib/components/ca-filters/ca-filter.component.mjs +2 -2
- package/esm2022/lib/components/ca-filters/components/ca-dispatcher-filter/ca-dispatcher-filter.component.mjs +2 -2
- package/esm2022/lib/components/ca-filters/components/ca-location-filter/ca-location-filter.component.mjs +2 -2
- package/esm2022/lib/components/ca-filters/components/ca-money-filter/ca-money-filter.component.mjs +2 -2
- package/esm2022/lib/components/ca-filters/components/ca-pm-filter/ca-pm-filter.component.mjs +2 -2
- package/esm2022/lib/components/ca-filters/components/ca-state-filter/ca-state-filter.component.mjs +2 -2
- package/esm2022/lib/components/ca-filters/components/ca-status-filter/ca-status-filter.component.mjs +2 -2
- package/esm2022/lib/components/ca-filters/components/ca-time-filter/ca-time-filter.component.mjs +3 -3
- package/esm2022/lib/components/ca-filters/components/ca-trailer-type-filter/ca-trailer-type-filter.component.mjs +2 -2
- package/esm2022/lib/components/ca-filters/components/ca-truck-type-filter/ca-truck-type-filter.component.mjs +2 -2
- package/esm2022/lib/components/ca-filters/components/ca-user-filter/ca-user-filter.component.mjs +2 -2
- package/esm2022/lib/components/ca-filters/components/ca-violation-filter/ca-violation-filter.component.mjs +2 -2
- package/esm2022/lib/components/ca-input/ca-input.component.mjs +2 -2
- package/esm2022/lib/components/ca-input-address-dropdown/ca-input-address-dropdown.component.mjs +2 -2
- package/esm2022/lib/components/ca-input-datetime-picker/ca-input-datetime-picker.component.mjs +2 -2
- package/esm2022/lib/components/ca-input-dropdown/ca-input-dropdown.component.mjs +2 -2
- package/esm2022/lib/components/ca-input-dropdown-test/animations/index.mjs +2 -0
- package/esm2022/lib/components/ca-input-dropdown-test/animations/input-dropdown.animation.mjs +11 -0
- package/esm2022/lib/components/ca-input-dropdown-test/ca-input-dropdown-test.component.mjs +692 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-default-template/ca-input-dropdown-default-template.component.mjs +62 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-details-template/ca-input-dropdown-details-template.component.mjs +72 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-dispatch/ca-input-dropdown-dispatch.component.mjs +60 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-double-text-template/ca-input-dropdown-double-text-template.component.mjs +62 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-fuel-franchise/ca-input-dropdown-fuel-franchise.component.mjs +76 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-groups/ca-input-dropdown-groups.component.mjs +58 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-labels/ca-input-dropdown-labels.component.mjs +76 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-broker/ca-input-dropdown-load-broker-item/ca-input-dropdown-load-broker-item.component.mjs +41 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-broker/ca-input-dropdown-load-broker.component.mjs +64 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-broker-contact/ca-input-dropdown-load-broker-contact-item/ca-input-dropdown-load-broker-contact-item.component.mjs +38 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-broker-contact/ca-input-dropdown-load-broker-contact.component.mjs +62 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-broker-shipper/ca-input-dropdown-load-broker-shipper-item/ca-input-dropdown-load-broker-shipper-item.component.mjs +37 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-broker-shipper/ca-input-dropdown-load-broker-shipper.component.mjs +61 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-dispatcher/ca-input-dropdown-load-dispatcher-item/ca-input-dropdown-load-dispatcher-item.component.mjs +49 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-dispatcher/ca-input-dropdown-load-dispatcher.component.mjs +60 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-dispatches-ttd/ca-input-dropdown-load-dispatches-ttd-item/ca-input-dropdown-load-dispatches-ttd-item.mjs +49 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-dispatches-ttd/ca-input-dropdown-load-dispatches-ttd.component.mjs +65 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-multiselect/ca-input-dropdown-multiselect.component.mjs +58 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-payroll-trucks/ca-input-dropdown-payroll-trucks.component.mjs +62 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-svg-template/ca-input-dropdown-svg-template.component.mjs +63 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-svgtext-dispatch-template/ca-input-dropdown-svgtext-dispatch-template.component.mjs +72 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-svgtext-template/ca-input-dropdown-svgtext-template-item/ca-input-dropdown-svgtext-template-item.component.mjs +56 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-svgtext-template/ca-input-dropdown-svgtext-template.component.mjs +77 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-text-counter/ca-input-dropdown-text-counter.component.mjs +58 -0
- package/esm2022/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-triple-text-template/ca-input-dropdown-triple-text-template.component.mjs +62 -0
- package/esm2022/lib/components/ca-input-dropdown-test/enums/dropdown-string.enum.mjs +6 -0
- package/esm2022/lib/components/ca-input-dropdown-test/enums/dropdown-template-type.enum.mjs +23 -0
- package/esm2022/lib/components/ca-input-dropdown-test/enums/index.mjs +3 -0
- package/esm2022/lib/components/ca-input-dropdown-test/models/index.mjs +4 -0
- package/esm2022/lib/components/ca-input-dropdown-test/models/input-dropdown-option.model.mjs +2 -0
- package/esm2022/lib/components/ca-input-dropdown-test/models/load-modal-status.model.mjs +2 -0
- package/esm2022/lib/components/ca-input-dropdown-test/models/status-order.model.mjs +2 -0
- package/esm2022/lib/components/ca-input-dropdown-test/pipes/dropdown-count.pipe.mjs +29 -0
- package/esm2022/lib/components/ca-input-dropdown-test/pipes/dropdown-options.pipe.mjs +73 -0
- package/esm2022/lib/components/ca-input-dropdown-test/pipes/index.mjs +10 -0
- package/esm2022/lib/components/ca-input-dropdown-test/pipes/input-dropdown-default-template-class.pipe.mjs +27 -0
- package/esm2022/lib/components/ca-input-dropdown-test/pipes/input-dropdown-fuel-franchise-class.pipe.mjs +22 -0
- package/esm2022/lib/components/ca-input-dropdown-test/pipes/input-dropdown-get-icon.pipe.mjs +18 -0
- package/esm2022/lib/components/ca-input-dropdown-test/pipes/input-dropdown-label-class.pipe.mjs +27 -0
- package/esm2022/lib/components/ca-input-dropdown-test/pipes/input-dropdown-load-broker-container.pipe.mjs +25 -0
- package/esm2022/lib/components/ca-input-dropdown-test/pipes/input-dropdown-multiselect-class.pipe.mjs +23 -0
- package/esm2022/lib/components/ca-input-dropdown-test/pipes/input-dropdown-svgtext-template-container.pipe.mjs +25 -0
- package/esm2022/lib/components/ca-input-dropdown-test/pipes/input-dropdown-svgtext-template-icon.pipe.mjs +23 -0
- package/esm2022/lib/components/ca-input-dropdown-test/utils/svg-routes/index.mjs +2 -0
- package/esm2022/lib/components/ca-input-dropdown-test/utils/svg-routes/input-dropdown-svg-routes.mjs +13 -0
- package/esm2022/lib/components/ca-input-note/ca-input-note.component.mjs +2 -2
- package/esm2022/lib/components/ca-input-test/input-test.component.mjs +2 -2
- package/esm2022/lib/components/ca-last-fuel-price-progress/ca-last-fuel-price-progress.component.mjs +75 -0
- package/esm2022/lib/components/ca-last-fuel-price-progress/enums/index.mjs +2 -0
- package/esm2022/lib/components/ca-last-fuel-price-progress/enums/last-fuel-price-progress.enum.mjs +6 -0
- package/esm2022/lib/components/ca-last-fuel-price-progress/interfaces/index.mjs +3 -0
- package/esm2022/lib/components/ca-last-fuel-price-progress/interfaces/last-fuel-price-progress-config.interface.mjs +2 -0
- package/esm2022/lib/components/ca-last-fuel-price-progress/interfaces/last-fuel-price-progress-data.interface.mjs +2 -0
- package/esm2022/lib/components/ca-last-fuel-price-progress/utils/constants/index.mjs +2 -0
- package/esm2022/lib/components/ca-last-fuel-price-progress/utils/constants/last-fuel-price-progress.constants.mjs +10 -0
- package/esm2022/lib/components/ca-last-fuel-price-progress/utils/helpers/index.mjs +2 -0
- package/esm2022/lib/components/ca-last-fuel-price-progress/utils/helpers/last-fuel-price-progress.helper.mjs +25 -0
- package/esm2022/lib/components/ca-last-fuel-price-progress/utils/svg-routes/index.mjs +2 -0
- package/esm2022/lib/components/ca-last-fuel-price-progress/utils/svg-routes/last-fuel-price-progress-svg-routes.mjs +4 -0
- package/esm2022/lib/components/ca-logo-change/ca-logo-change.component.mjs +3 -3
- package/esm2022/lib/components/ca-main-table/ca-main-table.component.mjs +3 -3
- package/esm2022/lib/components/ca-map-dropdown/ca-map-dropdown.component.mjs +2 -2
- package/esm2022/lib/components/ca-modal-button/ca-modal-button.component.mjs +3 -3
- package/esm2022/lib/components/ca-new-filter/ca-filter-dropdown.component.mjs +24 -5
- package/esm2022/lib/components/ca-new-filter/components/ca-filter-list-dropdown/ca-filter-list-dropdown.component.mjs +14 -3
- package/esm2022/lib/components/ca-new-filter/components/ca-filter-state-dropdown/ca-filter-state-dropdown.component.mjs +3 -3
- package/esm2022/lib/components/ca-new-filter/components/ca-filter-time-dropdown/ca-filter-time-dropdown.component.mjs +3 -3
- package/esm2022/lib/components/ca-new-filter/constant/filter-dropdown-icons.constant.mjs +29 -4
- package/esm2022/lib/components/ca-new-filter/enums/filter-dropdown-types.enum.mjs +3 -1
- package/esm2022/lib/components/ca-new-filter/interface/filter-dropdown-configuration.interface.mjs +1 -1
- package/esm2022/lib/components/ca-ngx-slider/ca-ngx-slider.component.mjs +2 -2
- package/esm2022/lib/components/ca-note/ca-note.component.mjs +2 -2
- package/esm2022/lib/components/ca-note-container/ca-note-container.component.mjs +2 -2
- package/esm2022/lib/components/ca-payroll-list-summary-overview/ca-payroll-list-summary-overview.component.mjs +2 -2
- package/esm2022/lib/components/ca-period-content/ca-period-content.component.mjs +3 -3
- package/esm2022/lib/components/ca-period-content/components/ca-period-content-extra-info/ca-period-content-extra-info.component.mjs +3 -3
- package/esm2022/lib/components/ca-period-content/components/ca-period-content-payment/ca-period-content-payment.component.mjs +3 -3
- package/esm2022/lib/components/ca-period-content/components/ca-period-content-user-info/ca-period-content-user-info.component.mjs +3 -3
- package/esm2022/lib/components/ca-pickup-delivery-block/ca-pickup-delivery-block.component.mjs +3 -3
- package/esm2022/lib/components/ca-pickup-delivery-block/components/ca-load/ca-load.component.mjs +3 -3
- package/esm2022/lib/components/ca-pickup-delivery-block/components/ca-load/components/ca-load-list/ca-load-list.component.mjs +3 -3
- package/esm2022/lib/components/ca-pickup-delivery-block/components/ca-load/components/ca-load-single/ca-load-single.component.mjs +3 -3
- package/esm2022/lib/components/ca-profile-image/ca-profile-image.component.mjs +3 -3
- package/esm2022/lib/components/ca-progress-bar/ca-progress-bar.component.mjs +2 -2
- package/esm2022/lib/components/ca-progress-expiration/ca-progress-expiration.component.mjs +2 -2
- package/esm2022/lib/components/ca-rating-review/ca-rating-review.component.mjs +2 -2
- package/esm2022/lib/components/ca-rating-review/components/ca-rating-review-user/ca-rating-review-user.component.mjs +2 -2
- package/esm2022/lib/components/ca-rating-review/components/ca-ratings-reviews-popup/ca-ratings-reviews-popup.component.mjs +2 -2
- package/esm2022/lib/components/ca-right-side-panel/components/ca-right-side-panel-company/ca-right-side-panel-company.component.mjs +3 -3
- package/esm2022/lib/components/ca-right-side-panel/components/ca-right-side-panel-menu/ca-right-side-panel-menu.component.mjs +3 -3
- package/esm2022/lib/components/ca-right-side-panel/components/ca-right-side-panel-top-bar/ca-right-side-panel-top-bar.component.mjs +3 -3
- package/esm2022/lib/components/ca-search-multiple-states/ca-search-multiple-states.component.mjs +2 -2
- package/esm2022/lib/components/ca-sort-dropdown/ca-sort-dropdown.component.mjs +2 -2
- package/esm2022/lib/components/ca-spinner/ca-spinner.component.mjs +2 -2
- package/esm2022/lib/components/ca-tab-switch/ca-tab-switch.component.mjs +3 -3
- package/esm2022/lib/components/ca-todo/ca-todo.component.mjs +3 -3
- package/esm2022/lib/components/ca-todo/components/ca-todo-card.component.mjs +3 -3
- package/esm2022/lib/components/ca-tooltip-list/ca-tooltip-list.component.mjs +3 -3
- package/esm2022/lib/components/ca-truck-trailer-progress-bar/ca-truck-trailer-progress-bar.component.mjs +2 -2
- package/esm2022/lib/components/ca-upload-files/ca-upload-files.component.mjs +3 -3
- package/esm2022/lib/components/ca-upload-files/components/ca-upload-dropzone/ca-upload-dropzone.component.mjs +3 -3
- package/esm2022/lib/components/ca-upload-files/components/ca-upload-file/ca-upload-file.component.mjs +2 -2
- package/esm2022/lib/components/ca-upload-files/components/ca-upload-files-carousel/ca-upload-files-carousel.component.mjs +3 -3
- package/esm2022/lib/components/ca-vehicle-list/ca-vehicle-list.component.mjs +5 -3
- package/esm2022/lib/components/ca-vehicle-list/utils/constants/vehicle-list.constants.mjs +34 -1
- package/esm2022/lib/enums/index.mjs +2 -0
- package/esm2022/lib/enums/string-placeholder.enum.mjs +14 -0
- package/esm2022/public-api.mjs +8 -6
- package/fesm2022/ca-components.mjs +2699 -299
- package/fesm2022/ca-components.mjs.map +1 -1
- package/lib/ca-components.module.d.ts +3 -2
- package/lib/components/ca-input-dropdown-test/animations/index.d.ts +1 -0
- package/lib/components/ca-input-dropdown-test/animations/input-dropdown.animation.d.ts +1 -0
- package/lib/components/ca-input-dropdown-test/ca-input-dropdown-test.component.d.ts +125 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-default-template/ca-input-dropdown-default-template.component.d.ts +20 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-details-template/ca-input-dropdown-details-template.component.d.ts +22 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-dispatch/ca-input-dropdown-dispatch.component.d.ts +19 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-double-text-template/ca-input-dropdown-double-text-template.component.d.ts +20 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-fuel-franchise/ca-input-dropdown-fuel-franchise.component.d.ts +27 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-groups/ca-input-dropdown-groups.component.d.ts +18 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-labels/ca-input-dropdown-labels.component.d.ts +24 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-broker/ca-input-dropdown-load-broker-item/ca-input-dropdown-load-broker-item.component.d.ts +10 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-broker/ca-input-dropdown-load-broker.component.d.ts +18 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-broker-contact/ca-input-dropdown-load-broker-contact-item/ca-input-dropdown-load-broker-contact-item.component.d.ts +11 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-broker-contact/ca-input-dropdown-load-broker-contact.component.d.ts +18 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-broker-shipper/ca-input-dropdown-load-broker-shipper-item/ca-input-dropdown-load-broker-shipper-item.component.d.ts +11 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-broker-shipper/ca-input-dropdown-load-broker-shipper.component.d.ts +18 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-dispatcher/ca-input-dropdown-load-dispatcher-item/ca-input-dropdown-load-dispatcher-item.component.d.ts +14 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-dispatcher/ca-input-dropdown-load-dispatcher.component.d.ts +20 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-dispatches-ttd/ca-input-dropdown-load-dispatches-ttd-item/ca-input-dropdown-load-dispatches-ttd-item.d.ts +14 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-load-dispatches-ttd/ca-input-dropdown-load-dispatches-ttd.component.d.ts +20 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-multiselect/ca-input-dropdown-multiselect.component.d.ts +18 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-payroll-trucks/ca-input-dropdown-payroll-trucks.component.d.ts +20 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-svg-template/ca-input-dropdown-svg-template.component.d.ts +20 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-svgtext-dispatch-template/ca-input-dropdown-svgtext-dispatch-template.component.d.ts +22 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-svgtext-template/ca-input-dropdown-svgtext-template-item/ca-input-dropdown-svgtext-template-item.component.d.ts +15 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-svgtext-template/ca-input-dropdown-svgtext-template.component.d.ts +22 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-text-counter/ca-input-dropdown-text-counter.component.d.ts +18 -0
- package/lib/components/ca-input-dropdown-test/components/ca-input-dropdown-triple-text-template/ca-input-dropdown-triple-text-template.component.d.ts +20 -0
- package/lib/components/ca-input-dropdown-test/enums/dropdown-string.enum.d.ts +4 -0
- package/lib/components/ca-input-dropdown-test/enums/dropdown-template-type.enum.d.ts +21 -0
- package/lib/components/ca-input-dropdown-test/enums/index.d.ts +2 -0
- package/lib/components/ca-input-dropdown-test/models/index.d.ts +3 -0
- package/lib/components/ca-input-dropdown-test/models/input-dropdown-option.model.d.ts +95 -0
- package/lib/components/ca-input-dropdown-test/models/load-modal-status.model.d.ts +5 -0
- package/lib/components/ca-input-dropdown-test/models/status-order.model.d.ts +4 -0
- package/lib/components/ca-input-dropdown-test/pipes/dropdown-count.pipe.d.ts +7 -0
- package/lib/components/ca-input-dropdown-test/pipes/dropdown-options.pipe.d.ts +10 -0
- package/lib/components/ca-input-dropdown-test/pipes/index.d.ts +9 -0
- package/lib/components/ca-input-dropdown-test/pipes/input-dropdown-default-template-class.pipe.d.ts +11 -0
- package/lib/components/ca-input-dropdown-test/pipes/input-dropdown-fuel-franchise-class.pipe.d.ts +10 -0
- package/lib/components/ca-input-dropdown-test/pipes/input-dropdown-get-icon.pipe.d.ts +9 -0
- package/lib/components/ca-input-dropdown-test/pipes/input-dropdown-label-class.pipe.d.ts +11 -0
- package/lib/components/ca-input-dropdown-test/pipes/input-dropdown-load-broker-container.pipe.d.ts +10 -0
- package/lib/components/ca-input-dropdown-test/pipes/input-dropdown-multiselect-class.pipe.d.ts +11 -0
- package/lib/components/ca-input-dropdown-test/pipes/input-dropdown-svgtext-template-container.pipe.d.ts +10 -0
- package/lib/components/ca-input-dropdown-test/pipes/input-dropdown-svgtext-template-icon.pipe.d.ts +11 -0
- package/lib/components/ca-input-dropdown-test/utils/svg-routes/index.d.ts +1 -0
- package/lib/components/ca-input-dropdown-test/utils/svg-routes/input-dropdown-svg-routes.d.ts +12 -0
- package/lib/components/ca-input-test/mixins/input-command.mixin.d.ts +1 -1
- package/lib/components/ca-input-test/mixins/input-helper.mixin.d.ts +1 -1
- package/lib/components/ca-last-fuel-price-progress/ca-last-fuel-price-progress.component.d.ts +18 -0
- package/lib/components/ca-last-fuel-price-progress/enums/index.d.ts +1 -0
- package/lib/components/ca-last-fuel-price-progress/enums/last-fuel-price-progress.enum.d.ts +4 -0
- package/lib/components/ca-last-fuel-price-progress/interfaces/index.d.ts +2 -0
- package/lib/components/ca-last-fuel-price-progress/interfaces/last-fuel-price-progress-config.interface.d.ts +9 -0
- package/lib/components/ca-last-fuel-price-progress/interfaces/last-fuel-price-progress-data.interface.d.ts +10 -0
- package/lib/components/ca-last-fuel-price-progress/utils/constants/index.d.ts +1 -0
- package/lib/components/ca-last-fuel-price-progress/utils/constants/last-fuel-price-progress.constants.d.ts +3 -0
- package/lib/components/ca-last-fuel-price-progress/utils/helpers/index.d.ts +1 -0
- package/lib/components/ca-last-fuel-price-progress/utils/helpers/last-fuel-price-progress.helper.d.ts +7 -0
- package/lib/components/ca-last-fuel-price-progress/utils/svg-routes/index.d.ts +1 -0
- package/lib/components/ca-last-fuel-price-progress/utils/svg-routes/last-fuel-price-progress-svg-routes.d.ts +3 -0
- package/lib/components/ca-new-filter/ca-filter-dropdown.component.d.ts +5 -1
- package/lib/components/ca-new-filter/components/ca-filter-list-dropdown/ca-filter-list-dropdown.component.d.ts +3 -0
- package/lib/components/ca-new-filter/enums/filter-dropdown-types.enum.d.ts +2 -0
- package/lib/components/ca-new-filter/interface/filter-dropdown-configuration.interface.d.ts +2 -1
- package/lib/components/ca-vehicle-list/ca-vehicle-list.component.d.ts +2 -0
- package/lib/components/ca-vehicle-list/utils/constants/vehicle-list.constants.d.ts +2 -0
- package/lib/enums/index.d.ts +1 -0
- package/lib/enums/string-placeholder.enum.d.ts +12 -0
- package/package.json +1 -1
- package/public-api.d.ts +7 -5
- package/src/assets/ca-components/svg/common/ic_owner-status.svg +7 -0
|
@@ -273,7 +273,7 @@ export class CaUploadDropzoneComponent {
|
|
|
273
273
|
provideLottieOptions({
|
|
274
274
|
player: () => import('lottie-web'),
|
|
275
275
|
}),
|
|
276
|
-
], viewQueries: [{ propertyName: "dropZone", first: true, predicate: ["dropZone"], descendants: true }, { propertyName: "templateRef", predicate: TemplateContainerDirective, descendants: true }], ngImport: i0, template: "<div\n class=\"dropzone-container d-flex align-items-center justify-content-center\"\n [ngClass]=\"{\n 'split-dropzone': isDropzoneShownInCrop,\n unSupported: isSupportedType,\n expanded: isDropzoneExpanded && !isSupportedType,\n 'disabled-dropzone': files.length >= this.limit && this.limit > 0,\n }\"\n [ngStyle]=\"{\n width:\n files.length === 0\n ? customWidth || '448px'\n : files.length === 1\n ? '296px'\n : files.length === 2\n ? '148px'\n : files.length === 3\n ? '148px'\n : '148px',\n }\"\n>\n <!-- @for (item of _dropZoneConfigArray; track $index) { -->\n @if (_dropZoneConfig) {\n <div\n class=\"dropzone-content d-flex align-items-center justify-content-center\"\n [ngClass]=\"{\n 'upload-dropzone-unsupported': isSupportedType,\n expandedContent: isDropzoneExpanded,\n 'column-layout': files.length >= 2,\n }\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate(_dropZoneConfig.template);\n context: { $implicit: _dropZoneConfig?.config }\n \"\n ></ng-container>\n </div>\n }\n <!-- } -->\n</div>\n\n<!-------------Document template-------------->\n<ng-template templateContainer id=\"documentsTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Media template-------------->\n<ng-template templateContainer id=\"mediaTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Image template-------------->\n<ng-template templateContainer id=\"imageTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Image Crop template-------------->\n<ng-template templateContainer id=\"imageCropTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Logo template-------------->\n<ng-template templateContainer id=\"logoTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!--------------COMMON-TEMPLATE-------------->\n\n<!------INPUT------->\n<ng-template #fileInputTemplate let-config>\n <input\n #dropZone\n [id]=\"'dropZone' + (config.dropzoneOption?.dropzoneIndex || 0)\"\n type=\"file\"\n [accept]=\"config.dropzone?.dropZoneAvailableFiles\"\n [multiple]=\"config.dropzone?.multiple\"\n (change)=\"handleFileChange($event)\"\n style=\"display: none\"\n />\n</ng-template>\n\n<!--DROPZONE_TEXT-->\n<ng-template #dropzoneTextTemplate>\n <div\n class=\"dropzone-text d-flex flex-column align-items-center justify-content-center\"\n >\n <p\n class=\"upload-dropzone-text\"\n [ngClass]=\"{\n 'unsupported-text-big': isSupportedType,\n 'max-count': isMaxCountReached(),\n }\"\n >\n @if (isMaxCountReached()) {\n MAX COUNT REACHED\n } @else {\n <ng-container *ngTemplateOutlet=\"normalText\"> </ng-container>\n }\n <ng-template #normalText>\n {{\n isSupportedType\n ? 'INVALID FILE TYPE'\n : 'DRAG ' + dropZoneText\n }}\n {{\n !(isSupportedType || (files && files.length)) ? ' HERE' : ''\n }}\n </ng-template>\n @if (_dropZoneConfig?.template === 'mediaTemplate') {\n <p class=\"media-sizes\">max file size 50mb</p>\n }\n </p>\n @if (!isDropzoneExpanded) {\n <span class=\"upload-dropzone-text-small\">\n @if (isMaxCountReached()) {\n {{ files.length }} FILES IMPORTED\n } @else {\n <ng-container *ngTemplateOutlet=\"formatText\">\n </ng-container>\n }\n <ng-template #formatText>\n {{\n isSupportedType\n ? 'SUPPORTED FORMATS'\n : 'OR CLICK TO ADD'\n }}\n </ng-template>\n </span>\n }\n </div>\n</ng-template>\n\n<!------ICON-------->\n<ng-template #dropzoneIconTemplate>\n @if (!isSupportedType && !isFileDrop) {\n <svg-icon\n [src]=\"iconSrc\"\n [ngClass]=\"files.length < 2 ? 'svgIcon-document' : 'svg-small'\"\n >\n </svg-icon>\n } @else {\n <svg-icon\n [src]=\"dropzoneSvgRoute\"\n class=\"cancel-unsupported-zone\"\n (click)=\"resetDropzoneView($event)\"\n >\n </svg-icon>\n }\n</ng-template>\n<!-- LOTTIE_ANIMATION -->\n<ng-template #lottieAnimationTemplate>\n <div\n class=\"animation-container d-flex flex-column align-items-center justify-content-center\"\n [ngClass]=\"{ expanded: isDropzoneExpanded }\"\n >\n <ng-lottie\n class=\"static-lottie-animation\"\n [options]=\"lottieOptions\"\n ></ng-lottie>\n </div>\n</ng-template>\n\n<!-- SUPPORTED_EXTENSIONS -->\n<ng-template #supportedExtensionsTemplate>\n <div class=\"supported-extensions d-flex justify-content-center\">\n @for (extension of dropZoneAvailableFiles; track $index) {\n <span\n class=\"extension extension-{{\n extension | mimeTypeToExtension\n }} \n d-flex justify-content-center align-items-center\"\n >\n {{ extension | mimeTypeToExtension }}\n </span>\n }\n </div>\n</ng-template>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap\";@import\"https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css\";.ca-font-thin{font-weight:100!important}.ca-font-extra-light{font-weight:200!important}.ca-font-light{font-weight:300!important}.ca-font-regular{font-weight:400!important}.ca-font-medium{font-weight:500!important}.ca-font-semi-bold,.dropzone-container .dropzone-text .upload-dropzone-text-small{font-weight:600!important}.ca-font-bold,.dropzone-container .dropzone-text .upload-dropzone-text{font-weight:700!important}.ca-font-extra-bold{font-weight:800!important}.ca-font-black,.dropzone-container .supported-extensions .extension{font-weight:900!important}.pickup-delivery-popover{top:-38px!important;max-width:340px!important}.pickup-delivery-popover.bs-popover-top{top:auto!important;bottom:-38px!important}.pickup-delivery-popover.bs-popover-top .load-component .assigned-load-holder{order:3;margin-top:4px;margin-bottom:0!important}.pickup-delivery-popover.bs-popover-top .load-component .statusBar{order:2;margin-top:4px}.pickup-delivery-popover.bs-popover-top .load-component .animation-three-tabs{order:1}.gps_dropdown_popover{top:-38px;max-width:494px}.gps_dropdown_popover .popover-body{padding:0}.table-progress-popover{background-color:unset!important;margin-left:-10px}.table-progress-popover .progress-dropdown{margin-top:-6px;width:260px;height:200px;background:#2f2f2f;border-radius:3px;padding:8px;box-shadow:0 0 4px #00000026;overflow:hidden;-webkit-animation:progressAnimation .25s ease-in-out;animation:progressAnimation .25s ease-in-out}.table-progress-popover .progress-dropdown .progress-header .progress-title{font-size:18px;font-weight:600;color:#fff}.table-progress-popover .progress-dropdown .progress-header .progress-title span{font-weight:400}.table-progress-popover .progress-dropdown .progress-header .progress-total{font-size:14px;line-height:17px;color:#fff}.table-progress-popover .progress-dropdown .table-progress-bar-container{width:100%;height:8px;margin-top:6px;border-radius:2px;overflow:hidden}.table-progress-popover .progress-dropdown .table-progress-bar-container .table-progress-bar{height:100%}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-dual-info-container .progress-info-container{width:50%}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container{margin-top:10px}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container .progress-info-title{margin-bottom:2px;font-size:11px;font-weight:700;line-height:14px;color:#ffffffb2}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container .progress-info-text{font-size:14px;line-height:18px;color:#fff}.table-progress-popover .progress-dropdown.credit-dropdown{height:100px}@-webkit-keyframes progressAnimation{0%{height:0px}to{height:220px}}@keyframes progressAnimation{0%{height:0px}to{height:220px}}ngb-popover-window{padding:unset!important;border:unset!important}ngb-popover-window .popover-arrow{display:none!important}ngb-popover-window .popover-body{padding:unset!important}.dispatch-note .popover-body{position:relative;top:-4px;left:-4px}.tooltip{font-size:12px;position:relative}.tooltip.show{opacity:.83}.tooltip.fade:after,.tooltip.fade:before{transform:translateY(-10px);transition:all .15s ease-in-out}.tooltip.fade:hover:after,.tooltip.fade:hover:before{opacity:1;transform:translate(0)}.tooltip-inner{padding:4px 10px;white-space:nowrap;max-width:none;border-radius:3px}.tooltip-inner:empty{padding:0}.placeholder-delete .tooltip-inner{background-color:#f66}.placeholder-delete .arrow:before{border-top-color:#f66}.custom-popup-owners-for-flag .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(126%) translate(-50%)!important;width:130px;border-radius:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-for-flag .arrow{bottom:-18%;transform:rotate(180deg);left:calc(50% + 2.7rem)}.custom-popup-owners-for-flag .tooltip{opacity:.93!important;width:0}.custom-popup-owners{z-index:999}.custom-popup-owners .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(132%);z-index:999;box-shadow:0 0 3px #0003}.custom-popup-owners .arrow{bottom:-20%;transform:rotate(180deg)}.custom-popup-owners .tooltip{transform:translateY(-61px)!important}.custom-popup-owners-year{z-index:999}.custom-popup-owners-year .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(132%);z-index:999;box-shadow:0 0 3px #0003}.custom-popup-owners-year .arrow{bottom:-20%;transform:rotate(180deg)}.custom-popup-owners-year .tooltip{transform:translate(70px,-61px)!important}.custom-popup-owners-info .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(-100%) translate(-10%);width:200px;height:36px;display:flex;justify-content:center;align-items:center;border-radius:3px;margin-top:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-info .tooltip{opacity:.93;width:0}.custom-popup-owners-info .arrow{display:none}.custom-popup-owners-info #phone-inside{position:relative;right:26px;bottom:0}.custom-popup-owners-info-at .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(-108%) translate(-7%);width:270px;height:36px;display:flex;justify-content:center;align-items:center;border-radius:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-info-at .tooltip{opacity:1;width:0}.custom-popup-owners-info-at .arrow{display:none}.custom-popup-owners-for-tag .tooltip-inner{color:#3b3b3b;background-color:#fff;width:100px;border-radius:3px;box-shadow:0 0 3px #0003!important}.custom-popup-owners-for-tag .tooltip{top:5px!important}.custom-popup-owners-for-tag .arrow{bottom:-24%}.align-items-flex-start{justify-content:center;align-items:center}.align-items-flex-end{display:flex;justify-content:center;flex-direction:column;align-self:flex-end;align-items:flex-start}.label-add{align-self:flex-start}.fadeInLoad{animation:fadeInLoad .25s}@keyframes fadeInLoad{0%{opacity:0}to{opacity:1}}.fadeIn{opacity:1;-webkit-transition:.25s;-moz-transition:.25s;-o-transition:.25s;transition:.25s}.thisText:hover .fadeIn{opacity:0}.fadeInLoad{animation-name:example;animation-duration:.25s}@keyframes example{0%{transform:scale(.5)}to{transform:scale(1)}}.tooltip.tooltip-table-icons{left:12px!important;opacity:1}.tooltip.tooltip-table-icons .arrow{display:none!important}.tooltip.tooltip-table-icons .tooltip-inner{border-radius:0 50px 50px;background:#28529f}.tooltip.show{opacity:1;animation:fadeIn ease .5s!important;-webkit-animation:fadeIn ease .5s!important;-moz-animation:fadeIn ease .5s!important;-o-animation:fadeIn ease .5s!important;-ms-animation:fadeIn ease .5s!important}.ta-tooltip{position:absolute;font-size:12px;text-align:center;color:#fff;line-height:22px;z-index:999999!important;opacity:0;white-space:nowrap;transform:scale(.7)}.ta-tooltip.ta-tooltip-show{opacity:.85;transform:scale(1);padding:0 12px}.ta-tooltip.ta-tooltip-bottom-right,.ta-tooltip.ta-tooltip-bottom-right-corner{transform-origin:top left;border-radius:0 15px 15px}.ta-tooltip.ta-tooltip-bottom-left{transform-origin:top right;border-radius:15px 0 15px 15px}@keyframes scaleItem{0%{transform:scale(.4)}to{transform:scale(1)}}.app-ca-main-tooltip{pointer-events:none}.app-ca-main-tooltip .tooltip-inner{padding:0;background-color:transparent;pointer-events:none}.app-ca-main-tooltip .tooltip-inner .tooltip-holder{display:flex;font-size:11px;font-weight:700;border-radius:2px;padding:2px 8px;animation:scaleItem .3s;white-space:normal}.app-ca-main-tooltip .tooltip-inner .tooltip-holder:empty{padding:0}.tooltip-arrow{display:none!important}.trucks.semitruck svg path,.trucks.semisleeper svg path,.trucks.flatbed svg path,.trucks.stepdeck svg path,.trucks.lowboyrgn svg path,.trucks.chassis svg path,.trucks.conestoga svg path,.trucks.sidekit svg path,.trucks.container svg path,.trailers.semitruck svg path,.trailers.semisleeper svg path,.trailers.flatbed svg path,.trailers.stepdeck svg path,.trailers.lowboyrgn svg path,.trailers.chassis svg path,.trailers.conestoga svg path,.trailers.sidekit svg path,.trailers.container svg path{fill:#92b1f5}.trucks.boxtruck svg path,.trucks.reefertruck svg path,.trucks.cargovan svg path,.trucks.dryvan svg path,.trucks.reefer svg path,.trailers.boxtruck svg path,.trailers.reefertruck svg path,.trailers.cargovan svg path,.trailers.dryvan svg path,.trailers.reefer svg path{fill:#fbc88b}.trucks.dumptruck svg path,.trucks.cementtruck svg path,.trucks.garbagetruck svg path,.trucks.enddump svg path,.trucks.bottomdump svg path,.trucks.hopper svg path,.trucks.tanker svg path,.trucks.pneumatictanker svg path,.trailers.dumptruck svg path,.trailers.cementtruck svg path,.trailers.garbagetruck svg path,.trailers.enddump svg path,.trailers.bottomdump svg path,.trailers.hopper svg path,.trailers.tanker svg path,.trailers.pneumatictanker svg path{fill:#ed9292}.trucks.towtruck svg path,.trucks.carhauler svg path,.trucks.spotter svg path,.trucks.carhaulerstigner svg path,.trailers.towtruck svg path,.trailers.carhauler svg path,.trailers.spotter svg path,.trailers.carhaulerstigner svg path{fill:#86c9c3}.trucks .svgtext-template-text,.trailers .svgtext-template-text{color:#fff;transition:color .3s ease-in-out}.colors .black svg #droplet{fill:#6c6c6c}.colors .brown svg #droplet{fill:#a1887f}.colors .darkgreen svg #droplet{fill:#4db6a2}.colors .lightgreen svg #droplet{fill:#81c784}.colors .darkblue svg #droplet{fill:#546fd2}.colors .lightblue svg #droplet{fill:#64b5f6}.colors .gray svg #droplet{fill:#aaa}.colors .purple svg #droplet{fill:#ba68c8}.colors .gold svg #droplet{fill:#bcad79}.colors .silver svg #droplet{fill:#dadada}.colors .red svg #droplet{fill:#f96b69}.colors .pink svg #droplet{fill:#f26ec2}.colors .white svg #droplet{fill:#f1f1f1}.colors .orange svg #droplet{fill:#ff8a65}.colors .yellow svg #droplet{fill:#ffd54f}.colors:hover{transition:all .3s ease-in-out}.colors:hover .black svg #droplet{fill:#3c3c3c}.colors:hover .brown svg #droplet{fill:#8d6e63}.colors:hover .darkgreen svg #droplet{fill:#26a690}.colors:hover .lightgreen svg #droplet{fill:#66bb6a}.colors:hover .darkblue svg #droplet{fill:#304fc1}.colors:hover .lightblue svg #droplet{fill:#42a5f5}.colors:hover .gray svg #droplet{fill:#919191}.colors:hover .purple svg #droplet{fill:#ab47bc}.colors:hover .gold svg #droplet{fill:#aa9c6e}.colors:hover .silver svg #droplet{fill:#b7b7b7}.colors:hover .red svg #droplet{fill:#ef5350}.colors:hover .pink svg #droplet{fill:#fa4daa}.colors:hover .white svg #droplet{fill:#fff}.colors:hover .orange svg #droplet{fill:#ff7043}.colors:hover .yellow svg #droplet{fill:#ffca28}.text-color-black{color:#424242!important}.text-color-black::-moz-selection{background-color:#42424233!important;color:#424242!important}.text-color-black::selection{background-color:#42424233!important;color:#424242!important}.text-color-black-2{color:#2f2f2f!important}.text-color-black-2::-moz-selection{background-color:#2f2f2f33!important;color:#2f2f2f!important}.text-color-black-2::selection{background-color:#2f2f2f33!important;color:#2f2f2f!important}.text-color-muted{color:#919191!important}.text-color-muted::-moz-selection{background-color:#91919133!important;color:#919191!important}.text-color-muted::selection{background-color:#91919133!important;color:#919191!important}.text-color-green{color:#56b4ac!important}.text-color-green::-moz-selection{background-color:#56b4ac33!important;color:#56b4ac!important}.text-color-green::selection{background-color:#56b4ac33!important;color:#56b4ac!important}.text-color-green-2{color:#259f94!important}.text-color-green-2::-moz-selection{background-color:#259f9433!important;color:#259f94!important}.text-color-green-2::selection{background-color:#259f9433!important;color:#259f94!important}.text-color-green-4{color:#86c9c3!important}.text-color-green-4::-moz-selection{background-color:#86c9c333!important;color:#86c9c3!important}.text-color-green-4::selection{background-color:#86c9c333!important;color:#86c9c3!important}.text-color-blue-13{color:#6692f1!important}.text-color-blue-13::-moz-selection{background-color:#6692f133!important;color:#6692f1!important}.text-color-blue-13::selection{background-color:#6692f133!important;color:#6692f1!important}.text-color-blue-16{color:#e9effd!important}.text-color-blue-16::-moz-selection{background-color:#e9effd33!important;color:#e9effd!important}.text-color-blue-16::selection{background-color:#e9effd33!important;color:#e9effd!important}.text-color-blue-18{color:#3b73ed!important}.text-color-blue-18::-moz-selection{background-color:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-18::selection{background-color:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-19{color:#92b1f5!important}.text-color-blue-19::-moz-selection{background-color:#92b1f533!important;color:#92b1f5!important}.text-color-blue-19::selection{background-color:#92b1f533!important;color:#92b1f5!important}.text-color-red-10{color:#e66767!important}.text-color-red-10::-moz-selection{background-color:#e6676733!important;color:#e66767!important}.text-color-red-10::selection{background-color:#e6676733!important;color:#e66767!important}.text-color-red-11{color:#df3c3c!important}.text-color-red-11::-moz-selection{background-color:#df3c3c33!important;color:#df3c3c!important}.text-color-red-11::selection{background-color:#df3c3c33!important;color:#df3c3c!important}.text-color-red-13{color:#ed9292!important}.text-color-red-13::-moz-selection{background-color:#ed929233!important;color:#ed9292!important}.text-color-red-13::selection{background-color:#ed929233!important;color:#ed9292!important}.text-color-yellow{color:#fab15c!important}.text-color-yellow::-moz-selection{background-color:#fab15c33!important;color:#fab15c!important}.text-color-yellow::selection{background-color:#fab15c33!important;color:#fab15c!important}.text-color-purple{color:#b370f0!important}.text-color-purple::-moz-selection{background-color:#b370f033!important;color:#b370f0!important}.text-color-purple::selection{background-color:#b370f033!important;color:#b370f0!important}.text-color-light-grey{color:#e5e5e5!important}.text-color-light-grey::-moz-selection{background-color:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey::selection{background-color:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey-2{color:#aaa!important}.text-color-light-grey-2::-moz-selection{background-color:#aaa3!important;color:#aaa!important}.text-color-light-grey-2::selection{background-color:#aaa3!important;color:#aaa!important}.text-color-light-grey-6{color:#ccc!important}.text-color-light-grey-6::-moz-selection{background-color:#ccc3!important;color:#ccc!important}.text-color-light-grey-6::selection{background-color:#ccc3!important;color:#ccc!important}.text-color-white{color:#fff!important}.text-color-white::-moz-selection{background-color:#fff3!important;color:#fff!important}.text-color-white::selection{background-color:#fff3!important;color:#fff!important}.text-color-white-2{color:#fff!important}.text-color-white-2::-moz-selection{background-color:#fff3!important;color:#fff!important}.text-color-white-2::selection{background-color:#fff3!important;color:#fff!important}.text-color-white-4{color:#ffffffb2!important}.text-color-white-4::-moz-selection{background-color:#fff3!important;color:#ffffffb2!important}.text-color-white-4::selection{background-color:#fff3!important;color:#ffffffb2!important}.text-color-bw6-2{color:#6c6c6c!important}.text-color-bw6-2::-moz-selection{background-color:#6c6c6c33!important;color:#6c6c6c!important}.text-color-bw6-2::selection{background-color:#6c6c6c33!important;color:#6c6c6c!important}.text-color-bw-9{color:#dadada!important}.text-color-bw-9::-moz-selection{background-color:#dadada33!important;color:#dadada!important}.text-color-bw-9::selection{background-color:#dadada33!important;color:#dadada!important}.text-color-grey{color:#919191!important}.text-color-grey::-moz-selection{background-color:#91919133!important;color:#919191!important}.text-color-grey::selection{background-color:#91919133!important;color:#919191!important}.text-color-grey .address-text::-moz-selection,.text-color-grey .marker-bold-text::-moz-selection{background-color:#91919133!important;color:#919191!important}.text-color-grey .address-text::selection,.text-color-grey .marker-bold-text::selection{background-color:#91919133!important;color:#919191!important}.text-size-11{font-size:11px!important;line-height:14px!important}.text-size-14{font-size:14px!important;line-height:18px!important}.text-size-16{font-size:16px!important;line-height:19px!important}.text-size-18{font-size:18px!important;line-height:22px!important}.text-size-26{font-size:26px!important;line-height:32px!important}.text-size-28{font-size:28px!important;line-height:34px!important}.svg-fill-black svg path,.svg-fill-black svg circle{fill:#424242!important}.svg-fill-white svg path,.svg-fill-white svg circle{fill:#fff!important}.svg-fill-white-2 svg path,.svg-fill-white-2 svg circle{fill:#fff!important}.svg-fill-muted svg path,.svg-fill-muted svg circle{fill:#919191!important}.svg-fill-bw-9 svg path,.svg-fill-bw-9 svg circle{fill:#dadada!important}.svg-fill-light-grey-2 svg path,.svg-fill-light-grey-2 svg circle{fill:#aaa!important}.svg-fill-light-grey-6 svg path,.svg-fill-light-grey-6 svg circle{fill:#ccc!important}.svg-fill-blue-8 svg path,.svg-fill-blue-8 svg circle{fill:#6692f1!important}.svg-fill-blue-13 svg path,.svg-fill-blue-13 svg circle{fill:#6692f1!important}.svg-fill-blue-14 svg path,.svg-fill-blue-14 svg circle{fill:#3b73ed!important}.svg-fill-blue-17 svg path,.svg-fill-blue-17 svg circle{fill:#bed0f9!important}.svg-fill-blue-19 svg path,.svg-fill-blue-19 svg circle{fill:#92b1f5!important}.svg-fill-blue-26 svg path,.svg-fill-blue-26 svg circle{fill:#4dc5eb!important}.svg-fill-green svg path,.svg-fill-green svg circle{fill:#56b4ac!important}.svg-fill-green-2 svg path,.svg-fill-green-2 svg circle{fill:#259f94!important}.svg-fill-green-4 svg path,.svg-fill-green-4 svg circle{fill:#86c9c3!important}.svg-fill-yellow-1 svg path,.svg-fill-yellow-1 svg circle{fill:#fab15c!important}.svg-fill-yellow-4 svg path,.svg-fill-yellow-4 svg circle{fill:#fbc88b!important}.svg-fill-yellow-5 svg path,.svg-fill-yellow-5 svg circle{fill:#f89b2e!important}.svg-fill-white-4 svg path,.svg-fill-white-4 svg circle{fill:#ffffffb2!important}.svg-fill-grey svg path,.svg-fill-grey svg circle{fill:#919191!important}.svg-fill-red-10 svg path,.svg-fill-red-10 svg circle{fill:#e66767!important}.svg-fill-red-11 svg path,.svg-fill-red-11 svg circle{fill:#df3c3c!important}.svg-hover-white svg path{transition:fill .3s ease-in-out}.svg-hover-white:hover svg path{fill:#fff!important}.svg-hover-white-2 svg path{transition:fill .3s ease-in-out}.svg-hover-white-2:hover svg path{fill:#fff!important}.svg-hover-muted svg path{transition:fill .3s ease-in-out}.svg-hover-muted:hover svg path{fill:#919191!important}.svg-hover-grey-4 svg path{transition:fill .3s ease-in-out}.svg-hover-grey-4:hover svg path{fill:#ccc!important}.svg-hover-black svg path{transition:fill .3s ease-in-out}.svg-hover-black:hover svg path{fill:#424242!important}.svg-hover-blue-10 svg path{transition:fill .3s ease-in-out}.svg-hover-blue-10:hover svg path{fill:#bed0f9!important}.svg-hover-blue-15 svg path{transition:fill .3s ease-in-out}.svg-hover-blue-15:hover svg path{fill:#0b49d1!important}.svg-hover-blue-19 svg path{transition:fill .3s ease-in-out}.svg-hover-blue-19:hover svg path{fill:#92b1f5!important}.svg-hover-bw6-2 svg path{transition:fill .3s ease-in-out}.svg-hover-bw6-2:hover svg path{fill:#6c6c6c!important}.svg-hover-trash-red svg path{transition:fill .3s ease-in-out}.svg-hover-trash-red:hover svg path{fill:#ff5050!important}.svg-hover-red-14 svg path{transition:fill .3s ease-in-out}.svg-hover-red-14:hover svg path{fill:#c20c0c!important}.svg-size-10 svg{width:10px;height:10px}.svg-size-12 svg{width:12px;height:12px}.svg-size-14 svg{width:14px;height:14px}.svg-size-16 svg{width:16px;height:16px}.svg-size-18 svg{width:18px;height:18px}.svg-size-22 svg{width:22px;height:22px}.svg-size-26 svg{width:26px;height:26px}.svg-size-44-16 svg{width:44px;height:16px}.background-black{background-color:#424242}.background-black-2{background-color:#2f2f2f}.background-blue-13{background-color:#6692f1}.background-blue-14{background-color:#3b73ed}.background-dark-2{background-color:#91919133}.background-hover-bw2{transition:background-color .3s ease-in-out}.background-hover-bw2:hover{background-color:#eee!important}.background-hover-blue-15{transition:background-color .3s ease-in-out}.background-hover-blue-15:hover{background-color:#0b49d1!important}.br-1{border-radius:1px}.br-2{border-radius:2px}.br-3{border-radius:3px}.br-10{border-radius:10px}.br-circle{border-radius:50%}.padding-2{padding:2px}.padding-4{padding:4px}.padding-y-2{padding-top:2px;padding-bottom:2px}.padding-y-4{padding-top:4px;padding-bottom:4px}.padding-x-4{padding-left:4px;padding-right:4px}.padding-x-5{padding-left:5px;padding-right:5px}.margin-t-4{margin-top:4px}.margin-r-4{margin-right:4px}.margin-b-4{margin-bottom:4px}.margin-t-6{margin-top:6px}.margin-r-6{margin-right:6px}.margin-b-6{margin-bottom:6px}.margin-t-24{margin-top:24px}.margin-r-24{margin-right:24px}.margin-b-24{margin-bottom:24px}.gap-xs{gap:2px}.height-1{height:1px}@keyframes dropdown{0%{margin-top:20px;visibility:hidden;opacity:0}to{opacity:1;margin-top:10px;visibility:visible!important}}@keyframes dropup{0%{margin-top:-19px;visibility:hidden;opacity:0}to{margin-top:inherit;visibility:visible!important}}.filter-dropdown-popover{width:260px}.filter-dropdown-popover-max-height{max-height:360px}.filter-dropdown-list{max-height:260px;overflow-y:auto}.filter-dropdown-list-icon{height:26px;transition:background-color .3s ease-in-out}.filter-dropdown-list-icon-value{height:14px;width:14px}.filter-dropdown-list-icon-remove{display:none}.filter-dropdown-list-icon:hover{background-color:#424242}.filter-dropdown-list-icon:hover .filter-dropdown-icon-count{display:none}.filter-dropdown-list-icon-selected:hover{background-color:#0b49d1}.filter-dropdown-list-item-icons{transition:opacity .3s ease-in-out;opacity:0}.filter-dropdown-list-item-status-circle{height:10px;width:10px}.filter-dropdown-list-item-remove{display:none}.filter-dropdown-list-item:hover{background-color:#424242}.filter-dropdown-list-item:hover .filter-dropdown-list-item-icons{opacity:1}.filter-dropdown-list-item:hover .filter-dropdown-list-item-icons svg path{fill:var(--svg-fill-color, #e66767)}.filter-dropdown-list-item-hover:hover .filter-dropdown-list-item-remove{display:flex}.filter-dropdown-list-item-hover:hover .filter-dropdown-list-item-remove svg path{fill:#e66767!important}.filter-dropdown-list-item-hover:hover .filter-dropdown-list-item-count{display:none!important}.filter-dropdown-icon{height:26px;width:26px}.filter-dropdown-count{height:14px;width:14px}.filter-dropdown-count-remove,.filter-dropdown-count-hover:hover .filter-dropdown-count-value{display:none}.filter-dropdown-count-hover:hover .filter-dropdown-count-remove{display:flex}.filter-dropdown-button{height:26px}.filter-dropdown-footer-button{color:#dadada;transition:color .3s ease-in-out,background-color .3s ease-in-out;height:18px;width:50%}.filter-dropdown-footer-button-set{color:#fff;background-color:#3b73ed}.filter-dropdown-footer-button-set:hover{background-color:#e9effd;color:#0b49d1}.filter-dropdown-footer-button-clear{color:#dadada}.filter-dropdown-footer-button-clear:hover{background-color:#eee;color:#424242}.filter-dropdown-list-badge{min-width:18px}*{margin:0;font-family:Montserrat,sans-serif}html{scroll-behavior:auto!important}.gm-style-iw-chr,.gm-style-iw-tc{display:none}.gm-style .gm-style-iw-c{border-radius:0}.gm-style-iw{overflow-y:auto!important;overflow-x:hidden!important}.gm-style-iw>div{overflow:visible!important}.infoWindow{overflow:hidden!important}.gm-style-iw-d,.gm-style-iw.gm-style-iw-c{max-height:350px!important}::ng-deep .popover{--bs-popover-border-width: 0;--bs-popover-body-padding-y: 0;--bs-popover-body-padding-x: 0}::ng-deep .popover .popover-arrow{display:none}.c-pointer{cursor:pointer}.ca-scroll-bar{overflow-y:scroll}.ca-scroll-bar::-webkit-scrollbar{width:2px}.ca-scroll-bar::-webkit-scrollbar-thumb{background:#ccc;border-radius:1px}.ca-scroll-bar::-webkit-scrollbar-track{background:#2f2f2f}.dropzone-container{width:100%;height:178px;outline:4px dashed #eeeeee;border-radius:2px;position:relative;cursor:pointer;overflow:hidden}.dropzone-container.split-dropzone{width:auto!important}.dropzone-container.disabled-dropzone{pointer-events:none;opacity:.6;cursor:not-allowed}.dropzone-container:hover{background-color:#eee}.dropzone-container.dropzone-small{width:302px!important}.dropzone-container.expanded{height:458px}.dropzone-container.unSupported{outline-color:#ed9292;outline-offset:-4px;background-color:#fff}.dropzone-container .animation-container{height:auto;width:auto;overflow:hidden;position:relative;transition:transform .5s ease-in-out}.dropzone-container .animation-container .static-lottie-animation{width:100%;height:100%}.dropzone-container .animation-container.expanded{transition:height .5s ease-in-out}.dropzone-container .dropzone-content{gap:10px;position:relative;transition:transform .5s ease-in-out,opacity .5s ease-in-out}.dropzone-container .dropzone-content.column-layout{flex-direction:column;align-items:center;justify-content:center}.dropzone-container .dropzone-content .cancel-unsupported-zone{position:absolute}.dropzone-container .dropzone-content.dropzone-small{width:302px;height:100%}.dropzone-container .dropzone-content.expandedContent{flex-direction:column;transform:scale(1);opacity:1;top:-30px}.dropzone-container .upload-dropzone-unsupported{flex-direction:column;gap:12px;position:relative;width:100%;height:100%}.dropzone-container .svgIcon-document{width:100px;height:100px}.dropzone-container .svgIcon-document.svg-small svg-icon{width:80px!important;height:80px!important}.dropzone-container .svgIcon-document.big{width:200px;height:200px}.dropzone-container .dropzone-text{color:#424242;-webkit-user-select:none;user-select:none;pointer-events:none}.dropzone-container .dropzone-text .upload-dropzone-text{font-size:14px;line-height:18px;align-items:center;font-family:Montserrat,sans-serif;margin-bottom:0}.dropzone-container .dropzone-text .upload-dropzone-text.unsupported-text-big{color:#df3c3c}.dropzone-container .dropzone-text .upload-dropzone-text.max-count{text-align:center}.dropzone-container .dropzone-text .upload-dropzone-text-small{font-family:Montserrat,sans-serif;margin-top:4px;font-size:11px;line-height:14px;align-items:center}.dropzone-container .dropzone-text .upload-dropzone-text-small .media-sizes{font-size:11px;line-height:14px;color:#919191;margin-top:4px}.dropzone-container .cancel-unsupported-zone{position:absolute;top:6px;right:14px;cursor:pointer;width:12.6px;height:12.6px}.dropzone-container .supported-extensions{gap:4px}.dropzone-container .supported-extensions .extension{font-family:Montserrat,sans-serif;width:35px;height:18px;border-radius:1px;font-size:11px;color:#fff;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-transform:uppercase}.dropzone-container .supported-extensions .extension-jpg,.dropzone-container .supported-extensions .extension-jpeg,.dropzone-container .supported-extensions .extension-png{background:#fab15c}.dropzone-container .supported-extensions .extension-pdf{background-color:#e66767}.dropzone-container .supported-extensions .extension-mov,.dropzone-container .supported-extensions .extension-mp4,.dropzone-container .supported-extensions .extension-avi{background-color:#b370f0}.dropzone-container .supported-extensions .extension:hover{transition:height .3s ease-in-out;opacity:1;cursor:auto!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: AngularSvgIconModule }, { kind: "component", type: i2.SvgIconComponent, selector: "svg-icon", inputs: ["src", "name", "stretch", "applyClass", "applyCss", "svgClass", "class", "viewBox", "svgAriaLabel", "svgStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: TemplateContainerDirective, selector: "[templateContainer]", inputs: ["id"] }, { kind: "component", type: LottieComponent, selector: "ng-lottie", inputs: ["width", "height"] }, { kind: "pipe", type: MimeTypeToExtensionPipe, name: "mimeTypeToExtension" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
276
|
+
], viewQueries: [{ propertyName: "dropZone", first: true, predicate: ["dropZone"], descendants: true }, { propertyName: "templateRef", predicate: TemplateContainerDirective, descendants: true }], ngImport: i0, template: "<div\n class=\"dropzone-container d-flex align-items-center justify-content-center\"\n [ngClass]=\"{\n 'split-dropzone': isDropzoneShownInCrop,\n unSupported: isSupportedType,\n expanded: isDropzoneExpanded && !isSupportedType,\n 'disabled-dropzone': files.length >= this.limit && this.limit > 0,\n }\"\n [ngStyle]=\"{\n width:\n files.length === 0\n ? customWidth || '448px'\n : files.length === 1\n ? '296px'\n : files.length === 2\n ? '148px'\n : files.length === 3\n ? '148px'\n : '148px',\n }\"\n>\n <!-- @for (item of _dropZoneConfigArray; track $index) { -->\n @if (_dropZoneConfig) {\n <div\n class=\"dropzone-content d-flex align-items-center justify-content-center\"\n [ngClass]=\"{\n 'upload-dropzone-unsupported': isSupportedType,\n expandedContent: isDropzoneExpanded,\n 'column-layout': files.length >= 2,\n }\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate(_dropZoneConfig.template);\n context: { $implicit: _dropZoneConfig?.config }\n \"\n ></ng-container>\n </div>\n }\n <!-- } -->\n</div>\n\n<!-------------Document template-------------->\n<ng-template templateContainer id=\"documentsTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Media template-------------->\n<ng-template templateContainer id=\"mediaTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Image template-------------->\n<ng-template templateContainer id=\"imageTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Image Crop template-------------->\n<ng-template templateContainer id=\"imageCropTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Logo template-------------->\n<ng-template templateContainer id=\"logoTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!--------------COMMON-TEMPLATE-------------->\n\n<!------INPUT------->\n<ng-template #fileInputTemplate let-config>\n <input\n #dropZone\n [id]=\"'dropZone' + (config.dropzoneOption?.dropzoneIndex || 0)\"\n type=\"file\"\n [accept]=\"config.dropzone?.dropZoneAvailableFiles\"\n [multiple]=\"config.dropzone?.multiple\"\n (change)=\"handleFileChange($event)\"\n style=\"display: none\"\n />\n</ng-template>\n\n<!--DROPZONE_TEXT-->\n<ng-template #dropzoneTextTemplate>\n <div\n class=\"dropzone-text d-flex flex-column align-items-center justify-content-center\"\n >\n <p\n class=\"upload-dropzone-text\"\n [ngClass]=\"{\n 'unsupported-text-big': isSupportedType,\n 'max-count': isMaxCountReached(),\n }\"\n >\n @if (isMaxCountReached()) {\n MAX COUNT REACHED\n } @else {\n <ng-container *ngTemplateOutlet=\"normalText\"> </ng-container>\n }\n <ng-template #normalText>\n {{\n isSupportedType\n ? 'INVALID FILE TYPE'\n : 'DRAG ' + dropZoneText\n }}\n {{\n !(isSupportedType || (files && files.length)) ? ' HERE' : ''\n }}\n </ng-template>\n @if (_dropZoneConfig?.template === 'mediaTemplate') {\n <p class=\"media-sizes\">max file size 50mb</p>\n }\n </p>\n @if (!isDropzoneExpanded) {\n <span class=\"upload-dropzone-text-small\">\n @if (isMaxCountReached()) {\n {{ files.length }} FILES IMPORTED\n } @else {\n <ng-container *ngTemplateOutlet=\"formatText\">\n </ng-container>\n }\n <ng-template #formatText>\n {{\n isSupportedType\n ? 'SUPPORTED FORMATS'\n : 'OR CLICK TO ADD'\n }}\n </ng-template>\n </span>\n }\n </div>\n</ng-template>\n\n<!------ICON-------->\n<ng-template #dropzoneIconTemplate>\n @if (!isSupportedType && !isFileDrop) {\n <svg-icon\n [src]=\"iconSrc\"\n [ngClass]=\"files.length < 2 ? 'svgIcon-document' : 'svg-small'\"\n >\n </svg-icon>\n } @else {\n <svg-icon\n [src]=\"dropzoneSvgRoute\"\n class=\"cancel-unsupported-zone\"\n (click)=\"resetDropzoneView($event)\"\n >\n </svg-icon>\n }\n</ng-template>\n<!-- LOTTIE_ANIMATION -->\n<ng-template #lottieAnimationTemplate>\n <div\n class=\"animation-container d-flex flex-column align-items-center justify-content-center\"\n [ngClass]=\"{ expanded: isDropzoneExpanded }\"\n >\n <ng-lottie\n class=\"static-lottie-animation\"\n [options]=\"lottieOptions\"\n ></ng-lottie>\n </div>\n</ng-template>\n\n<!-- SUPPORTED_EXTENSIONS -->\n<ng-template #supportedExtensionsTemplate>\n <div class=\"supported-extensions d-flex justify-content-center\">\n @for (extension of dropZoneAvailableFiles; track $index) {\n <span\n class=\"extension extension-{{\n extension | mimeTypeToExtension\n }} \n d-flex justify-content-center align-items-center\"\n >\n {{ extension | mimeTypeToExtension }}\n </span>\n }\n </div>\n</ng-template>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap\";@import\"https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css\";.ca-font-thin{font-weight:100!important}.ca-font-extra-light{font-weight:200!important}.ca-font-light{font-weight:300!important}.ca-font-regular{font-weight:400!important}.ca-font-medium{font-weight:500!important}.ca-font-semi-bold,.dropzone-container .dropzone-text .upload-dropzone-text-small{font-weight:600!important}.ca-font-bold,.dropzone-container .dropzone-text .upload-dropzone-text{font-weight:700!important}.ca-font-extra-bold{font-weight:800!important}.ca-font-black,.dropzone-container .supported-extensions .extension{font-weight:900!important}.pickup-delivery-popover{top:-38px!important;max-width:340px!important}.pickup-delivery-popover.bs-popover-top{top:auto!important;bottom:-38px!important}.pickup-delivery-popover.bs-popover-top .load-component .assigned-load-holder{order:3;margin-top:4px;margin-bottom:0!important}.pickup-delivery-popover.bs-popover-top .load-component .statusBar{order:2;margin-top:4px}.pickup-delivery-popover.bs-popover-top .load-component .animation-three-tabs{order:1}.gps_dropdown_popover{top:-38px;max-width:494px}.gps_dropdown_popover .popover-body{padding:0}.table-progress-popover{background-color:unset!important;margin-left:-10px}.table-progress-popover .progress-dropdown{margin-top:-6px;width:260px;height:200px;background:#2f2f2f;border-radius:3px;padding:8px;box-shadow:0 0 4px #00000026;overflow:hidden;-webkit-animation:progressAnimation .25s ease-in-out;animation:progressAnimation .25s ease-in-out}.table-progress-popover .progress-dropdown .progress-header .progress-title{font-size:18px;font-weight:600;color:#fff}.table-progress-popover .progress-dropdown .progress-header .progress-title span{font-weight:400}.table-progress-popover .progress-dropdown .progress-header .progress-total{font-size:14px;line-height:17px;color:#fff}.table-progress-popover .progress-dropdown .table-progress-bar-container{width:100%;height:8px;margin-top:6px;border-radius:2px;overflow:hidden}.table-progress-popover .progress-dropdown .table-progress-bar-container .table-progress-bar{height:100%}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-dual-info-container .progress-info-container{width:50%}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container{margin-top:10px}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container .progress-info-title{margin-bottom:2px;font-size:11px;font-weight:700;line-height:14px;color:#ffffffb2}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container .progress-info-text{font-size:14px;line-height:18px;color:#fff}.table-progress-popover .progress-dropdown.credit-dropdown{height:100px}@-webkit-keyframes progressAnimation{0%{height:0px}to{height:220px}}@keyframes progressAnimation{0%{height:0px}to{height:220px}}ngb-popover-window{padding:unset!important;border:unset!important}ngb-popover-window .popover-arrow{display:none!important}ngb-popover-window .popover-body{padding:unset!important}.dispatch-note .popover-body{position:relative;top:-4px;left:-4px}.tooltip{font-size:12px;position:relative}.tooltip.show{opacity:.83}.tooltip.fade:after,.tooltip.fade:before{transform:translateY(-10px);transition:all .15s ease-in-out}.tooltip.fade:hover:after,.tooltip.fade:hover:before{opacity:1;transform:translate(0)}.tooltip-inner{padding:4px 10px;white-space:nowrap;max-width:none;border-radius:3px}.tooltip-inner:empty{padding:0}.placeholder-delete .tooltip-inner{background-color:#f66}.placeholder-delete .arrow:before{border-top-color:#f66}.custom-popup-owners-for-flag .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(126%) translate(-50%)!important;width:130px;border-radius:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-for-flag .arrow{bottom:-18%;transform:rotate(180deg);left:calc(50% + 2.7rem)}.custom-popup-owners-for-flag .tooltip{opacity:.93!important;width:0}.custom-popup-owners{z-index:999}.custom-popup-owners .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(132%);z-index:999;box-shadow:0 0 3px #0003}.custom-popup-owners .arrow{bottom:-20%;transform:rotate(180deg)}.custom-popup-owners .tooltip{transform:translateY(-61px)!important}.custom-popup-owners-year{z-index:999}.custom-popup-owners-year .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(132%);z-index:999;box-shadow:0 0 3px #0003}.custom-popup-owners-year .arrow{bottom:-20%;transform:rotate(180deg)}.custom-popup-owners-year .tooltip{transform:translate(70px,-61px)!important}.custom-popup-owners-info .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(-100%) translate(-10%);width:200px;height:36px;display:flex;justify-content:center;align-items:center;border-radius:3px;margin-top:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-info .tooltip{opacity:.93;width:0}.custom-popup-owners-info .arrow{display:none}.custom-popup-owners-info #phone-inside{position:relative;right:26px;bottom:0}.custom-popup-owners-info-at .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(-108%) translate(-7%);width:270px;height:36px;display:flex;justify-content:center;align-items:center;border-radius:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-info-at .tooltip{opacity:1;width:0}.custom-popup-owners-info-at .arrow{display:none}.custom-popup-owners-for-tag .tooltip-inner{color:#3b3b3b;background-color:#fff;width:100px;border-radius:3px;box-shadow:0 0 3px #0003!important}.custom-popup-owners-for-tag .tooltip{top:5px!important}.custom-popup-owners-for-tag .arrow{bottom:-24%}.align-items-flex-start{justify-content:center;align-items:center}.align-items-flex-end{display:flex;justify-content:center;flex-direction:column;align-self:flex-end;align-items:flex-start}.label-add{align-self:flex-start}.fadeInLoad{animation:fadeInLoad .25s}@keyframes fadeInLoad{0%{opacity:0}to{opacity:1}}.fadeIn{opacity:1;-webkit-transition:.25s;-moz-transition:.25s;-o-transition:.25s;transition:.25s}.thisText:hover .fadeIn{opacity:0}.fadeInLoad{animation-name:example;animation-duration:.25s}@keyframes example{0%{transform:scale(.5)}to{transform:scale(1)}}.tooltip.tooltip-table-icons{left:12px!important;opacity:1}.tooltip.tooltip-table-icons .arrow{display:none!important}.tooltip.tooltip-table-icons .tooltip-inner{border-radius:0 50px 50px;background:#28529f}.tooltip.show{opacity:1;animation:fadeIn ease .5s!important;-webkit-animation:fadeIn ease .5s!important;-moz-animation:fadeIn ease .5s!important;-o-animation:fadeIn ease .5s!important;-ms-animation:fadeIn ease .5s!important}.ta-tooltip{position:absolute;font-size:12px;text-align:center;color:#fff;line-height:22px;z-index:999999!important;opacity:0;white-space:nowrap;transform:scale(.7)}.ta-tooltip.ta-tooltip-show{opacity:.85;transform:scale(1);padding:0 12px}.ta-tooltip.ta-tooltip-bottom-right,.ta-tooltip.ta-tooltip-bottom-right-corner{transform-origin:top left;border-radius:0 15px 15px}.ta-tooltip.ta-tooltip-bottom-left{transform-origin:top right;border-radius:15px 0 15px 15px}@keyframes scaleItem{0%{transform:scale(.4)}to{transform:scale(1)}}.app-ca-main-tooltip{pointer-events:none}.app-ca-main-tooltip .tooltip-inner{padding:0;background-color:transparent;pointer-events:none}.app-ca-main-tooltip .tooltip-inner .tooltip-holder{display:flex;font-size:11px;font-weight:700;border-radius:2px;padding:2px 8px;animation:scaleItem .3s;white-space:normal}.app-ca-main-tooltip .tooltip-inner .tooltip-holder:empty{padding:0}.tooltip-arrow{display:none!important}.trucks.semitruck svg path,.trucks.semisleeper svg path,.trucks.flatbed svg path,.trucks.stepdeck svg path,.trucks.lowboyrgn svg path,.trucks.chassis svg path,.trucks.conestoga svg path,.trucks.sidekit svg path,.trucks.container svg path,.trailers.semitruck svg path,.trailers.semisleeper svg path,.trailers.flatbed svg path,.trailers.stepdeck svg path,.trailers.lowboyrgn svg path,.trailers.chassis svg path,.trailers.conestoga svg path,.trailers.sidekit svg path,.trailers.container svg path{fill:#92b1f5}.trucks.boxtruck svg path,.trucks.reefertruck svg path,.trucks.cargovan svg path,.trucks.dryvan svg path,.trucks.reefer svg path,.trailers.boxtruck svg path,.trailers.reefertruck svg path,.trailers.cargovan svg path,.trailers.dryvan svg path,.trailers.reefer svg path{fill:#fbc88b}.trucks.dumptruck svg path,.trucks.cementtruck svg path,.trucks.garbagetruck svg path,.trucks.enddump svg path,.trucks.bottomdump svg path,.trucks.hopper svg path,.trucks.tanker svg path,.trucks.pneumatictanker svg path,.trailers.dumptruck svg path,.trailers.cementtruck svg path,.trailers.garbagetruck svg path,.trailers.enddump svg path,.trailers.bottomdump svg path,.trailers.hopper svg path,.trailers.tanker svg path,.trailers.pneumatictanker svg path{fill:#ed9292}.trucks.towtruck svg path,.trucks.carhauler svg path,.trucks.spotter svg path,.trucks.carhaulerstigner svg path,.trailers.towtruck svg path,.trailers.carhauler svg path,.trailers.spotter svg path,.trailers.carhaulerstigner svg path{fill:#86c9c3}.trucks .svgtext-template-text,.trailers .svgtext-template-text{color:#fff;transition:color .3s ease-in-out}.colors .black svg #droplet{fill:#6c6c6c}.colors .brown svg #droplet{fill:#a1887f}.colors .darkgreen svg #droplet{fill:#4db6a2}.colors .lightgreen svg #droplet{fill:#81c784}.colors .darkblue svg #droplet{fill:#546fd2}.colors .lightblue svg #droplet{fill:#64b5f6}.colors .gray svg #droplet{fill:#aaa}.colors .purple svg #droplet{fill:#ba68c8}.colors .gold svg #droplet{fill:#bcad79}.colors .silver svg #droplet{fill:#dadada}.colors .red svg #droplet{fill:#f96b69}.colors .pink svg #droplet{fill:#f26ec2}.colors .white svg #droplet{fill:#f1f1f1}.colors .orange svg #droplet{fill:#ff8a65}.colors .yellow svg #droplet{fill:#ffd54f}.colors:hover{transition:all .3s ease-in-out}.colors:hover .black svg #droplet{fill:#3c3c3c}.colors:hover .brown svg #droplet{fill:#8d6e63}.colors:hover .darkgreen svg #droplet{fill:#26a690}.colors:hover .lightgreen svg #droplet{fill:#66bb6a}.colors:hover .darkblue svg #droplet{fill:#304fc1}.colors:hover .lightblue svg #droplet{fill:#42a5f5}.colors:hover .gray svg #droplet{fill:#919191}.colors:hover .purple svg #droplet{fill:#ab47bc}.colors:hover .gold svg #droplet{fill:#aa9c6e}.colors:hover .silver svg #droplet{fill:#b7b7b7}.colors:hover .red svg #droplet{fill:#ef5350}.colors:hover .pink svg #droplet{fill:#fa4daa}.colors:hover .white svg #droplet{fill:#fff}.colors:hover .orange svg #droplet{fill:#ff7043}.colors:hover .yellow svg #droplet{fill:#ffca28}.text-color-black{color:#424242!important}.text-color-black::-moz-selection{background-color:#42424233!important;color:#424242!important}.text-color-black::selection{background-color:#42424233!important;color:#424242!important}.text-color-black-2{color:#2f2f2f!important}.text-color-black-2::-moz-selection{background-color:#2f2f2f33!important;color:#2f2f2f!important}.text-color-black-2::selection{background-color:#2f2f2f33!important;color:#2f2f2f!important}.text-color-muted{color:#919191!important}.text-color-muted::-moz-selection{background-color:#91919133!important;color:#919191!important}.text-color-muted::selection{background-color:#91919133!important;color:#919191!important}.text-color-green{color:#56b4ac!important}.text-color-green::-moz-selection{background-color:#56b4ac33!important;color:#56b4ac!important}.text-color-green::selection{background-color:#56b4ac33!important;color:#56b4ac!important}.text-color-green-2{color:#259f94!important}.text-color-green-2::-moz-selection{background-color:#259f9433!important;color:#259f94!important}.text-color-green-2::selection{background-color:#259f9433!important;color:#259f94!important}.text-color-green-4{color:#86c9c3!important}.text-color-green-4::-moz-selection{background-color:#86c9c333!important;color:#86c9c3!important}.text-color-green-4::selection{background-color:#86c9c333!important;color:#86c9c3!important}.text-color-blue-13{color:#6692f1!important}.text-color-blue-13::-moz-selection{background-color:#6692f133!important;color:#6692f1!important}.text-color-blue-13::selection{background-color:#6692f133!important;color:#6692f1!important}.text-color-blue-16{color:#e9effd!important}.text-color-blue-16::-moz-selection{background-color:#e9effd33!important;color:#e9effd!important}.text-color-blue-16::selection{background-color:#e9effd33!important;color:#e9effd!important}.text-color-blue-18{color:#3b73ed!important}.text-color-blue-18::-moz-selection{background-color:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-18::selection{background-color:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-19{color:#92b1f5!important}.text-color-blue-19::-moz-selection{background-color:#92b1f533!important;color:#92b1f5!important}.text-color-blue-19::selection{background-color:#92b1f533!important;color:#92b1f5!important}.text-color-red-10{color:#e66767!important}.text-color-red-10::-moz-selection{background-color:#e6676733!important;color:#e66767!important}.text-color-red-10::selection{background-color:#e6676733!important;color:#e66767!important}.text-color-red-11{color:#df3c3c!important}.text-color-red-11::-moz-selection{background-color:#df3c3c33!important;color:#df3c3c!important}.text-color-red-11::selection{background-color:#df3c3c33!important;color:#df3c3c!important}.text-color-red-13{color:#ed9292!important}.text-color-red-13::-moz-selection{background-color:#ed929233!important;color:#ed9292!important}.text-color-red-13::selection{background-color:#ed929233!important;color:#ed9292!important}.text-color-yellow{color:#fab15c!important}.text-color-yellow::-moz-selection{background-color:#fab15c33!important;color:#fab15c!important}.text-color-yellow::selection{background-color:#fab15c33!important;color:#fab15c!important}.text-color-purple{color:#b370f0!important}.text-color-purple::-moz-selection{background-color:#b370f033!important;color:#b370f0!important}.text-color-purple::selection{background-color:#b370f033!important;color:#b370f0!important}.text-color-special-filter-purple{color:#9e47ec!important}.text-color-special-filter-purple::-moz-selection{background-color:#9e47ec33!important;color:#9e47ec!important}.text-color-special-filter-purple::selection{background-color:#9e47ec33!important;color:#9e47ec!important}.text-color-light-grey{color:#e5e5e5!important}.text-color-light-grey::-moz-selection{background-color:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey::selection{background-color:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey-2{color:#aaa!important}.text-color-light-grey-2::-moz-selection{background-color:#aaa3!important;color:#aaa!important}.text-color-light-grey-2::selection{background-color:#aaa3!important;color:#aaa!important}.text-color-light-grey-6{color:#ccc!important}.text-color-light-grey-6::-moz-selection{background-color:#ccc3!important;color:#ccc!important}.text-color-light-grey-6::selection{background-color:#ccc3!important;color:#ccc!important}.text-color-white{color:#fff!important}.text-color-white::-moz-selection{background-color:#fff3!important;color:#fff!important}.text-color-white::selection{background-color:#fff3!important;color:#fff!important}.text-color-white-2{color:#fff!important}.text-color-white-2::-moz-selection{background-color:#fff3!important;color:#fff!important}.text-color-white-2::selection{background-color:#fff3!important;color:#fff!important}.text-color-white-4{color:#ffffffb2!important}.text-color-white-4::-moz-selection{background-color:#fff3!important;color:#ffffffb2!important}.text-color-white-4::selection{background-color:#fff3!important;color:#ffffffb2!important}.text-color-bw6-2{color:#6c6c6c!important}.text-color-bw6-2::-moz-selection{background-color:#6c6c6c33!important;color:#6c6c6c!important}.text-color-bw6-2::selection{background-color:#6c6c6c33!important;color:#6c6c6c!important}.text-color-bw-9{color:#dadada!important}.text-color-bw-9::-moz-selection{background-color:#dadada33!important;color:#dadada!important}.text-color-bw-9::selection{background-color:#dadada33!important;color:#dadada!important}.text-color-grey{color:#919191!important}.text-color-grey::-moz-selection{background-color:#91919133!important;color:#919191!important}.text-color-grey::selection{background-color:#91919133!important;color:#919191!important}.text-color-grey .address-text::-moz-selection,.text-color-grey .marker-bold-text::-moz-selection{background-color:#91919133!important;color:#919191!important}.text-color-grey .address-text::selection,.text-color-grey .marker-bold-text::selection{background-color:#91919133!important;color:#919191!important}.text-size-11{font-size:11px!important;line-height:14px!important}.text-size-14{font-size:14px!important;line-height:18px!important}.text-size-16{font-size:16px!important;line-height:19px!important}.text-size-18{font-size:18px!important;line-height:22px!important}.text-size-26{font-size:26px!important;line-height:32px!important}.text-size-28{font-size:28px!important;line-height:34px!important}.svg-fill-black svg path,.svg-fill-black svg circle{fill:#424242!important}.svg-fill-white svg path,.svg-fill-white svg circle{fill:#fff!important}.svg-fill-white-2 svg path,.svg-fill-white-2 svg circle{fill:#fff!important}.svg-fill-muted svg path,.svg-fill-muted svg circle{fill:#919191!important}.svg-fill-bw-9 svg path,.svg-fill-bw-9 svg circle{fill:#dadada!important}.svg-fill-light-grey-2 svg path,.svg-fill-light-grey-2 svg circle{fill:#aaa!important}.svg-fill-light-grey-6 svg path,.svg-fill-light-grey-6 svg circle{fill:#ccc!important}.svg-fill-blue-8 svg path,.svg-fill-blue-8 svg circle{fill:#6692f1!important}.svg-fill-blue-13 svg path,.svg-fill-blue-13 svg circle{fill:#6692f1!important}.svg-fill-blue-14 svg path,.svg-fill-blue-14 svg circle{fill:#3b73ed!important}.svg-fill-blue-17 svg path,.svg-fill-blue-17 svg circle{fill:#bed0f9!important}.svg-fill-blue-19 svg path,.svg-fill-blue-19 svg circle{fill:#92b1f5!important}.svg-fill-blue-26 svg path,.svg-fill-blue-26 svg circle{fill:#4dc5eb!important}.svg-fill-green svg path,.svg-fill-green svg circle{fill:#56b4ac!important}.svg-fill-green-2 svg path,.svg-fill-green-2 svg circle{fill:#259f94!important}.svg-fill-green-4 svg path,.svg-fill-green-4 svg circle{fill:#86c9c3!important}.svg-fill-yellow-1 svg path,.svg-fill-yellow-1 svg circle{fill:#fab15c!important}.svg-fill-yellow-4 svg path,.svg-fill-yellow-4 svg circle{fill:#fbc88b!important}.svg-fill-yellow-5 svg path,.svg-fill-yellow-5 svg circle{fill:#f89b2e!important}.svg-fill-white-4 svg path,.svg-fill-white-4 svg circle{fill:#ffffffb2!important}.svg-fill-grey svg path,.svg-fill-grey svg circle{fill:#919191!important}.svg-fill-red-10 svg path,.svg-fill-red-10 svg circle{fill:#e66767!important}.svg-fill-red-11 svg path,.svg-fill-red-11 svg circle{fill:#df3c3c!important}.svg-hover-white svg path{transition:fill .3s ease-in-out}.svg-hover-white:hover svg path{fill:#fff!important}.svg-hover-white-2 svg path{transition:fill .3s ease-in-out}.svg-hover-white-2:hover svg path{fill:#fff!important}.svg-hover-muted svg path{transition:fill .3s ease-in-out}.svg-hover-muted:hover svg path{fill:#919191!important}.svg-hover-grey-4 svg path{transition:fill .3s ease-in-out}.svg-hover-grey-4:hover svg path{fill:#ccc!important}.svg-hover-black svg path{transition:fill .3s ease-in-out}.svg-hover-black:hover svg path{fill:#424242!important}.svg-hover-blue-10 svg path{transition:fill .3s ease-in-out}.svg-hover-blue-10:hover svg path{fill:#bed0f9!important}.svg-hover-blue-15 svg path{transition:fill .3s ease-in-out}.svg-hover-blue-15:hover svg path{fill:#0b49d1!important}.svg-hover-blue-19 svg path{transition:fill .3s ease-in-out}.svg-hover-blue-19:hover svg path{fill:#92b1f5!important}.svg-hover-bw6-2 svg path{transition:fill .3s ease-in-out}.svg-hover-bw6-2:hover svg path{fill:#6c6c6c!important}.svg-hover-trash-red svg path{transition:fill .3s ease-in-out}.svg-hover-trash-red:hover svg path{fill:#ff5050!important}.svg-hover-red-14 svg path{transition:fill .3s ease-in-out}.svg-hover-red-14:hover svg path{fill:#c20c0c!important}.svg-size-10 svg{width:10px;height:10px}.svg-size-12 svg{width:12px;height:12px}.svg-size-14 svg{width:14px;height:14px}.svg-size-16 svg{width:16px;height:16px}.svg-size-18 svg{width:18px;height:18px}.svg-size-22 svg{width:22px;height:22px}.svg-size-26 svg{width:26px;height:26px}.svg-size-44-16 svg{width:44px;height:16px}.background-black{background-color:#424242}.background-black-2{background-color:#2f2f2f}.background-blue-13{background-color:#6692f1}.background-blue-14{background-color:#3b73ed}.background-dark-2{background-color:#91919133}.background-hover-bw2{transition:background-color .3s ease-in-out}.background-hover-bw2:hover{background-color:#eee!important}.background-hover-blue-15{transition:background-color .3s ease-in-out}.background-hover-blue-15:hover{background-color:#0b49d1!important}.br-1{border-radius:1px}.br-2{border-radius:2px}.br-3{border-radius:3px}.br-10{border-radius:10px}.br-circle{border-radius:50%}.padding-2{padding:2px}.padding-4{padding:4px}.padding-y-2{padding-top:2px;padding-bottom:2px}.padding-y-4{padding-top:4px;padding-bottom:4px}.padding-x-4{padding-left:4px;padding-right:4px}.padding-x-5{padding-left:5px;padding-right:5px}.margin-t-4{margin-top:4px}.margin-r-4{margin-right:4px}.margin-b-4{margin-bottom:4px}.margin-t-6{margin-top:6px}.margin-r-6{margin-right:6px}.margin-b-6{margin-bottom:6px}.margin-t-24{margin-top:24px}.margin-r-24{margin-right:24px}.margin-b-24{margin-bottom:24px}.gap-xs{gap:2px}.height-1{height:1px}@keyframes dropdown{0%{margin-top:20px;visibility:hidden;opacity:0}to{opacity:1;margin-top:10px;visibility:visible!important}}@keyframes dropup{0%{margin-top:-19px;visibility:hidden;opacity:0}to{margin-top:inherit;visibility:visible!important}}.filter-dropdown-popover{width:260px;position:relative;top:-4px;left:-4px}.filter-dropdown-popover-max-height{max-height:360px}.filter-dropdown-list{max-height:260px;overflow-y:auto}.filter-dropdown-list-icon{height:26px;transition:background-color .3s ease-in-out}.filter-dropdown-list-icon-value{height:14px;width:14px}.filter-dropdown-list-icon-remove{display:none}.filter-dropdown-list-icon:hover{background-color:#424242}.filter-dropdown-list-icon:hover .filter-dropdown-icon-count{display:none}.filter-dropdown-list-icon-selected:hover{background-color:#0b49d1}.filter-dropdown-list-item-icons{transition:opacity .3s ease-in-out;opacity:0}.filter-dropdown-list-item-status-circle{height:10px;width:10px}.filter-dropdown-list-item-remove{display:none}.filter-dropdown-list-item:hover{background-color:#424242}.filter-dropdown-list-item:hover .filter-dropdown-list-item-icons{opacity:1}.filter-dropdown-list-item:hover .filter-dropdown-list-item-icons svg path{fill:var(--svg-fill-color, #e66767)}.filter-dropdown-list-item-hover:hover .filter-dropdown-list-item-remove{display:flex}.filter-dropdown-list-item-hover:hover .filter-dropdown-list-item-remove svg path{fill:#e66767!important}.filter-dropdown-list-item-hover:hover .filter-dropdown-list-item-count{display:none!important}.filter-dropdown-icon{height:26px;width:26px}.filter-dropdown-count{height:14px;width:14px}.filter-dropdown-count-remove,.filter-dropdown-count-hover:hover .filter-dropdown-count-value{display:none}.filter-dropdown-count-hover:hover .filter-dropdown-count-remove{display:flex}.filter-dropdown-button{height:26px}.filter-dropdown-footer-button{color:#dadada;transition:color .3s ease-in-out,background-color .3s ease-in-out;height:18px;width:50%}.filter-dropdown-footer-button-set{color:#fff;background-color:#3b73ed}.filter-dropdown-footer-button-set:hover{background-color:#e9effd;color:#0b49d1}.filter-dropdown-footer-button-clear{color:#dadada}.filter-dropdown-footer-button-clear:hover{background-color:#eee;color:#424242}.filter-dropdown-list-badge{min-width:18px}*{margin:0;font-family:Montserrat,sans-serif}html{scroll-behavior:auto!important}.gm-style-iw-chr,.gm-style-iw-tc{display:none}.gm-style .gm-style-iw-c{border-radius:0}.gm-style-iw{overflow-y:auto!important;overflow-x:hidden!important}.gm-style-iw>div{overflow:visible!important}.infoWindow{overflow:hidden!important}.gm-style-iw-d,.gm-style-iw.gm-style-iw-c{max-height:350px!important}::ng-deep .popover{--bs-popover-border-width: 0;--bs-popover-body-padding-y: 0;--bs-popover-body-padding-x: 0}::ng-deep .popover .popover-arrow{display:none}.c-pointer{cursor:pointer}.ca-scroll-bar{overflow-y:scroll}.ca-scroll-bar::-webkit-scrollbar{width:2px}.ca-scroll-bar::-webkit-scrollbar-thumb{background:#ccc;border-radius:1px}.ca-scroll-bar::-webkit-scrollbar-track{background:#2f2f2f}.dropzone-container{width:100%;height:178px;outline:4px dashed #eeeeee;border-radius:2px;position:relative;cursor:pointer;overflow:hidden}.dropzone-container.split-dropzone{width:auto!important}.dropzone-container.disabled-dropzone{pointer-events:none;opacity:.6;cursor:not-allowed}.dropzone-container:hover{background-color:#eee}.dropzone-container.dropzone-small{width:302px!important}.dropzone-container.expanded{height:458px}.dropzone-container.unSupported{outline-color:#ed9292;outline-offset:-4px;background-color:#fff}.dropzone-container .animation-container{height:auto;width:auto;overflow:hidden;position:relative;transition:transform .5s ease-in-out}.dropzone-container .animation-container .static-lottie-animation{width:100%;height:100%}.dropzone-container .animation-container.expanded{transition:height .5s ease-in-out}.dropzone-container .dropzone-content{gap:10px;position:relative;transition:transform .5s ease-in-out,opacity .5s ease-in-out}.dropzone-container .dropzone-content.column-layout{flex-direction:column;align-items:center;justify-content:center}.dropzone-container .dropzone-content .cancel-unsupported-zone{position:absolute}.dropzone-container .dropzone-content.dropzone-small{width:302px;height:100%}.dropzone-container .dropzone-content.expandedContent{flex-direction:column;transform:scale(1);opacity:1;top:-30px}.dropzone-container .upload-dropzone-unsupported{flex-direction:column;gap:12px;position:relative;width:100%;height:100%}.dropzone-container .svgIcon-document{width:100px;height:100px}.dropzone-container .svgIcon-document.svg-small svg-icon{width:80px!important;height:80px!important}.dropzone-container .svgIcon-document.big{width:200px;height:200px}.dropzone-container .dropzone-text{color:#424242;-webkit-user-select:none;user-select:none;pointer-events:none}.dropzone-container .dropzone-text .upload-dropzone-text{font-size:14px;line-height:18px;align-items:center;font-family:Montserrat,sans-serif;margin-bottom:0}.dropzone-container .dropzone-text .upload-dropzone-text.unsupported-text-big{color:#df3c3c}.dropzone-container .dropzone-text .upload-dropzone-text.max-count{text-align:center}.dropzone-container .dropzone-text .upload-dropzone-text-small{font-family:Montserrat,sans-serif;margin-top:4px;font-size:11px;line-height:14px;align-items:center}.dropzone-container .dropzone-text .upload-dropzone-text-small .media-sizes{font-size:11px;line-height:14px;color:#919191;margin-top:4px}.dropzone-container .cancel-unsupported-zone{position:absolute;top:6px;right:14px;cursor:pointer;width:12.6px;height:12.6px}.dropzone-container .supported-extensions{gap:4px}.dropzone-container .supported-extensions .extension{font-family:Montserrat,sans-serif;width:35px;height:18px;border-radius:1px;font-size:11px;color:#fff;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-transform:uppercase}.dropzone-container .supported-extensions .extension-jpg,.dropzone-container .supported-extensions .extension-jpeg,.dropzone-container .supported-extensions .extension-png{background:#fab15c}.dropzone-container .supported-extensions .extension-pdf{background-color:#e66767}.dropzone-container .supported-extensions .extension-mov,.dropzone-container .supported-extensions .extension-mp4,.dropzone-container .supported-extensions .extension-avi{background-color:#b370f0}.dropzone-container .supported-extensions .extension:hover{transition:height .3s ease-in-out;opacity:1;cursor:auto!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: AngularSvgIconModule }, { kind: "component", type: i2.SvgIconComponent, selector: "svg-icon", inputs: ["src", "name", "stretch", "applyClass", "applyCss", "svgClass", "class", "viewBox", "svgAriaLabel", "svgStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: TemplateContainerDirective, selector: "[templateContainer]", inputs: ["id"] }, { kind: "component", type: LottieComponent, selector: "ng-lottie", inputs: ["width", "height"] }, { kind: "pipe", type: MimeTypeToExtensionPipe, name: "mimeTypeToExtension" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
277
277
|
}
|
|
278
278
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CaUploadDropzoneComponent, decorators: [{
|
|
279
279
|
type: Component,
|
|
@@ -291,7 +291,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
291
291
|
}),
|
|
292
292
|
], encapsulation: ViewEncapsulation.None, host: {
|
|
293
293
|
'(window:paste)': 'handlePaste($event)',
|
|
294
|
-
}, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"dropzone-container d-flex align-items-center justify-content-center\"\n [ngClass]=\"{\n 'split-dropzone': isDropzoneShownInCrop,\n unSupported: isSupportedType,\n expanded: isDropzoneExpanded && !isSupportedType,\n 'disabled-dropzone': files.length >= this.limit && this.limit > 0,\n }\"\n [ngStyle]=\"{\n width:\n files.length === 0\n ? customWidth || '448px'\n : files.length === 1\n ? '296px'\n : files.length === 2\n ? '148px'\n : files.length === 3\n ? '148px'\n : '148px',\n }\"\n>\n <!-- @for (item of _dropZoneConfigArray; track $index) { -->\n @if (_dropZoneConfig) {\n <div\n class=\"dropzone-content d-flex align-items-center justify-content-center\"\n [ngClass]=\"{\n 'upload-dropzone-unsupported': isSupportedType,\n expandedContent: isDropzoneExpanded,\n 'column-layout': files.length >= 2,\n }\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate(_dropZoneConfig.template);\n context: { $implicit: _dropZoneConfig?.config }\n \"\n ></ng-container>\n </div>\n }\n <!-- } -->\n</div>\n\n<!-------------Document template-------------->\n<ng-template templateContainer id=\"documentsTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Media template-------------->\n<ng-template templateContainer id=\"mediaTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Image template-------------->\n<ng-template templateContainer id=\"imageTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Image Crop template-------------->\n<ng-template templateContainer id=\"imageCropTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Logo template-------------->\n<ng-template templateContainer id=\"logoTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!--------------COMMON-TEMPLATE-------------->\n\n<!------INPUT------->\n<ng-template #fileInputTemplate let-config>\n <input\n #dropZone\n [id]=\"'dropZone' + (config.dropzoneOption?.dropzoneIndex || 0)\"\n type=\"file\"\n [accept]=\"config.dropzone?.dropZoneAvailableFiles\"\n [multiple]=\"config.dropzone?.multiple\"\n (change)=\"handleFileChange($event)\"\n style=\"display: none\"\n />\n</ng-template>\n\n<!--DROPZONE_TEXT-->\n<ng-template #dropzoneTextTemplate>\n <div\n class=\"dropzone-text d-flex flex-column align-items-center justify-content-center\"\n >\n <p\n class=\"upload-dropzone-text\"\n [ngClass]=\"{\n 'unsupported-text-big': isSupportedType,\n 'max-count': isMaxCountReached(),\n }\"\n >\n @if (isMaxCountReached()) {\n MAX COUNT REACHED\n } @else {\n <ng-container *ngTemplateOutlet=\"normalText\"> </ng-container>\n }\n <ng-template #normalText>\n {{\n isSupportedType\n ? 'INVALID FILE TYPE'\n : 'DRAG ' + dropZoneText\n }}\n {{\n !(isSupportedType || (files && files.length)) ? ' HERE' : ''\n }}\n </ng-template>\n @if (_dropZoneConfig?.template === 'mediaTemplate') {\n <p class=\"media-sizes\">max file size 50mb</p>\n }\n </p>\n @if (!isDropzoneExpanded) {\n <span class=\"upload-dropzone-text-small\">\n @if (isMaxCountReached()) {\n {{ files.length }} FILES IMPORTED\n } @else {\n <ng-container *ngTemplateOutlet=\"formatText\">\n </ng-container>\n }\n <ng-template #formatText>\n {{\n isSupportedType\n ? 'SUPPORTED FORMATS'\n : 'OR CLICK TO ADD'\n }}\n </ng-template>\n </span>\n }\n </div>\n</ng-template>\n\n<!------ICON-------->\n<ng-template #dropzoneIconTemplate>\n @if (!isSupportedType && !isFileDrop) {\n <svg-icon\n [src]=\"iconSrc\"\n [ngClass]=\"files.length < 2 ? 'svgIcon-document' : 'svg-small'\"\n >\n </svg-icon>\n } @else {\n <svg-icon\n [src]=\"dropzoneSvgRoute\"\n class=\"cancel-unsupported-zone\"\n (click)=\"resetDropzoneView($event)\"\n >\n </svg-icon>\n }\n</ng-template>\n<!-- LOTTIE_ANIMATION -->\n<ng-template #lottieAnimationTemplate>\n <div\n class=\"animation-container d-flex flex-column align-items-center justify-content-center\"\n [ngClass]=\"{ expanded: isDropzoneExpanded }\"\n >\n <ng-lottie\n class=\"static-lottie-animation\"\n [options]=\"lottieOptions\"\n ></ng-lottie>\n </div>\n</ng-template>\n\n<!-- SUPPORTED_EXTENSIONS -->\n<ng-template #supportedExtensionsTemplate>\n <div class=\"supported-extensions d-flex justify-content-center\">\n @for (extension of dropZoneAvailableFiles; track $index) {\n <span\n class=\"extension extension-{{\n extension | mimeTypeToExtension\n }} \n d-flex justify-content-center align-items-center\"\n >\n {{ extension | mimeTypeToExtension }}\n </span>\n }\n </div>\n</ng-template>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap\";@import\"https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css\";.ca-font-thin{font-weight:100!important}.ca-font-extra-light{font-weight:200!important}.ca-font-light{font-weight:300!important}.ca-font-regular{font-weight:400!important}.ca-font-medium{font-weight:500!important}.ca-font-semi-bold,.dropzone-container .dropzone-text .upload-dropzone-text-small{font-weight:600!important}.ca-font-bold,.dropzone-container .dropzone-text .upload-dropzone-text{font-weight:700!important}.ca-font-extra-bold{font-weight:800!important}.ca-font-black,.dropzone-container .supported-extensions .extension{font-weight:900!important}.pickup-delivery-popover{top:-38px!important;max-width:340px!important}.pickup-delivery-popover.bs-popover-top{top:auto!important;bottom:-38px!important}.pickup-delivery-popover.bs-popover-top .load-component .assigned-load-holder{order:3;margin-top:4px;margin-bottom:0!important}.pickup-delivery-popover.bs-popover-top .load-component .statusBar{order:2;margin-top:4px}.pickup-delivery-popover.bs-popover-top .load-component .animation-three-tabs{order:1}.gps_dropdown_popover{top:-38px;max-width:494px}.gps_dropdown_popover .popover-body{padding:0}.table-progress-popover{background-color:unset!important;margin-left:-10px}.table-progress-popover .progress-dropdown{margin-top:-6px;width:260px;height:200px;background:#2f2f2f;border-radius:3px;padding:8px;box-shadow:0 0 4px #00000026;overflow:hidden;-webkit-animation:progressAnimation .25s ease-in-out;animation:progressAnimation .25s ease-in-out}.table-progress-popover .progress-dropdown .progress-header .progress-title{font-size:18px;font-weight:600;color:#fff}.table-progress-popover .progress-dropdown .progress-header .progress-title span{font-weight:400}.table-progress-popover .progress-dropdown .progress-header .progress-total{font-size:14px;line-height:17px;color:#fff}.table-progress-popover .progress-dropdown .table-progress-bar-container{width:100%;height:8px;margin-top:6px;border-radius:2px;overflow:hidden}.table-progress-popover .progress-dropdown .table-progress-bar-container .table-progress-bar{height:100%}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-dual-info-container .progress-info-container{width:50%}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container{margin-top:10px}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container .progress-info-title{margin-bottom:2px;font-size:11px;font-weight:700;line-height:14px;color:#ffffffb2}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container .progress-info-text{font-size:14px;line-height:18px;color:#fff}.table-progress-popover .progress-dropdown.credit-dropdown{height:100px}@-webkit-keyframes progressAnimation{0%{height:0px}to{height:220px}}@keyframes progressAnimation{0%{height:0px}to{height:220px}}ngb-popover-window{padding:unset!important;border:unset!important}ngb-popover-window .popover-arrow{display:none!important}ngb-popover-window .popover-body{padding:unset!important}.dispatch-note .popover-body{position:relative;top:-4px;left:-4px}.tooltip{font-size:12px;position:relative}.tooltip.show{opacity:.83}.tooltip.fade:after,.tooltip.fade:before{transform:translateY(-10px);transition:all .15s ease-in-out}.tooltip.fade:hover:after,.tooltip.fade:hover:before{opacity:1;transform:translate(0)}.tooltip-inner{padding:4px 10px;white-space:nowrap;max-width:none;border-radius:3px}.tooltip-inner:empty{padding:0}.placeholder-delete .tooltip-inner{background-color:#f66}.placeholder-delete .arrow:before{border-top-color:#f66}.custom-popup-owners-for-flag .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(126%) translate(-50%)!important;width:130px;border-radius:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-for-flag .arrow{bottom:-18%;transform:rotate(180deg);left:calc(50% + 2.7rem)}.custom-popup-owners-for-flag .tooltip{opacity:.93!important;width:0}.custom-popup-owners{z-index:999}.custom-popup-owners .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(132%);z-index:999;box-shadow:0 0 3px #0003}.custom-popup-owners .arrow{bottom:-20%;transform:rotate(180deg)}.custom-popup-owners .tooltip{transform:translateY(-61px)!important}.custom-popup-owners-year{z-index:999}.custom-popup-owners-year .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(132%);z-index:999;box-shadow:0 0 3px #0003}.custom-popup-owners-year .arrow{bottom:-20%;transform:rotate(180deg)}.custom-popup-owners-year .tooltip{transform:translate(70px,-61px)!important}.custom-popup-owners-info .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(-100%) translate(-10%);width:200px;height:36px;display:flex;justify-content:center;align-items:center;border-radius:3px;margin-top:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-info .tooltip{opacity:.93;width:0}.custom-popup-owners-info .arrow{display:none}.custom-popup-owners-info #phone-inside{position:relative;right:26px;bottom:0}.custom-popup-owners-info-at .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(-108%) translate(-7%);width:270px;height:36px;display:flex;justify-content:center;align-items:center;border-radius:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-info-at .tooltip{opacity:1;width:0}.custom-popup-owners-info-at .arrow{display:none}.custom-popup-owners-for-tag .tooltip-inner{color:#3b3b3b;background-color:#fff;width:100px;border-radius:3px;box-shadow:0 0 3px #0003!important}.custom-popup-owners-for-tag .tooltip{top:5px!important}.custom-popup-owners-for-tag .arrow{bottom:-24%}.align-items-flex-start{justify-content:center;align-items:center}.align-items-flex-end{display:flex;justify-content:center;flex-direction:column;align-self:flex-end;align-items:flex-start}.label-add{align-self:flex-start}.fadeInLoad{animation:fadeInLoad .25s}@keyframes fadeInLoad{0%{opacity:0}to{opacity:1}}.fadeIn{opacity:1;-webkit-transition:.25s;-moz-transition:.25s;-o-transition:.25s;transition:.25s}.thisText:hover .fadeIn{opacity:0}.fadeInLoad{animation-name:example;animation-duration:.25s}@keyframes example{0%{transform:scale(.5)}to{transform:scale(1)}}.tooltip.tooltip-table-icons{left:12px!important;opacity:1}.tooltip.tooltip-table-icons .arrow{display:none!important}.tooltip.tooltip-table-icons .tooltip-inner{border-radius:0 50px 50px;background:#28529f}.tooltip.show{opacity:1;animation:fadeIn ease .5s!important;-webkit-animation:fadeIn ease .5s!important;-moz-animation:fadeIn ease .5s!important;-o-animation:fadeIn ease .5s!important;-ms-animation:fadeIn ease .5s!important}.ta-tooltip{position:absolute;font-size:12px;text-align:center;color:#fff;line-height:22px;z-index:999999!important;opacity:0;white-space:nowrap;transform:scale(.7)}.ta-tooltip.ta-tooltip-show{opacity:.85;transform:scale(1);padding:0 12px}.ta-tooltip.ta-tooltip-bottom-right,.ta-tooltip.ta-tooltip-bottom-right-corner{transform-origin:top left;border-radius:0 15px 15px}.ta-tooltip.ta-tooltip-bottom-left{transform-origin:top right;border-radius:15px 0 15px 15px}@keyframes scaleItem{0%{transform:scale(.4)}to{transform:scale(1)}}.app-ca-main-tooltip{pointer-events:none}.app-ca-main-tooltip .tooltip-inner{padding:0;background-color:transparent;pointer-events:none}.app-ca-main-tooltip .tooltip-inner .tooltip-holder{display:flex;font-size:11px;font-weight:700;border-radius:2px;padding:2px 8px;animation:scaleItem .3s;white-space:normal}.app-ca-main-tooltip .tooltip-inner .tooltip-holder:empty{padding:0}.tooltip-arrow{display:none!important}.trucks.semitruck svg path,.trucks.semisleeper svg path,.trucks.flatbed svg path,.trucks.stepdeck svg path,.trucks.lowboyrgn svg path,.trucks.chassis svg path,.trucks.conestoga svg path,.trucks.sidekit svg path,.trucks.container svg path,.trailers.semitruck svg path,.trailers.semisleeper svg path,.trailers.flatbed svg path,.trailers.stepdeck svg path,.trailers.lowboyrgn svg path,.trailers.chassis svg path,.trailers.conestoga svg path,.trailers.sidekit svg path,.trailers.container svg path{fill:#92b1f5}.trucks.boxtruck svg path,.trucks.reefertruck svg path,.trucks.cargovan svg path,.trucks.dryvan svg path,.trucks.reefer svg path,.trailers.boxtruck svg path,.trailers.reefertruck svg path,.trailers.cargovan svg path,.trailers.dryvan svg path,.trailers.reefer svg path{fill:#fbc88b}.trucks.dumptruck svg path,.trucks.cementtruck svg path,.trucks.garbagetruck svg path,.trucks.enddump svg path,.trucks.bottomdump svg path,.trucks.hopper svg path,.trucks.tanker svg path,.trucks.pneumatictanker svg path,.trailers.dumptruck svg path,.trailers.cementtruck svg path,.trailers.garbagetruck svg path,.trailers.enddump svg path,.trailers.bottomdump svg path,.trailers.hopper svg path,.trailers.tanker svg path,.trailers.pneumatictanker svg path{fill:#ed9292}.trucks.towtruck svg path,.trucks.carhauler svg path,.trucks.spotter svg path,.trucks.carhaulerstigner svg path,.trailers.towtruck svg path,.trailers.carhauler svg path,.trailers.spotter svg path,.trailers.carhaulerstigner svg path{fill:#86c9c3}.trucks .svgtext-template-text,.trailers .svgtext-template-text{color:#fff;transition:color .3s ease-in-out}.colors .black svg #droplet{fill:#6c6c6c}.colors .brown svg #droplet{fill:#a1887f}.colors .darkgreen svg #droplet{fill:#4db6a2}.colors .lightgreen svg #droplet{fill:#81c784}.colors .darkblue svg #droplet{fill:#546fd2}.colors .lightblue svg #droplet{fill:#64b5f6}.colors .gray svg #droplet{fill:#aaa}.colors .purple svg #droplet{fill:#ba68c8}.colors .gold svg #droplet{fill:#bcad79}.colors .silver svg #droplet{fill:#dadada}.colors .red svg #droplet{fill:#f96b69}.colors .pink svg #droplet{fill:#f26ec2}.colors .white svg #droplet{fill:#f1f1f1}.colors .orange svg #droplet{fill:#ff8a65}.colors .yellow svg #droplet{fill:#ffd54f}.colors:hover{transition:all .3s ease-in-out}.colors:hover .black svg #droplet{fill:#3c3c3c}.colors:hover .brown svg #droplet{fill:#8d6e63}.colors:hover .darkgreen svg #droplet{fill:#26a690}.colors:hover .lightgreen svg #droplet{fill:#66bb6a}.colors:hover .darkblue svg #droplet{fill:#304fc1}.colors:hover .lightblue svg #droplet{fill:#42a5f5}.colors:hover .gray svg #droplet{fill:#919191}.colors:hover .purple svg #droplet{fill:#ab47bc}.colors:hover .gold svg #droplet{fill:#aa9c6e}.colors:hover .silver svg #droplet{fill:#b7b7b7}.colors:hover .red svg #droplet{fill:#ef5350}.colors:hover .pink svg #droplet{fill:#fa4daa}.colors:hover .white svg #droplet{fill:#fff}.colors:hover .orange svg #droplet{fill:#ff7043}.colors:hover .yellow svg #droplet{fill:#ffca28}.text-color-black{color:#424242!important}.text-color-black::-moz-selection{background-color:#42424233!important;color:#424242!important}.text-color-black::selection{background-color:#42424233!important;color:#424242!important}.text-color-black-2{color:#2f2f2f!important}.text-color-black-2::-moz-selection{background-color:#2f2f2f33!important;color:#2f2f2f!important}.text-color-black-2::selection{background-color:#2f2f2f33!important;color:#2f2f2f!important}.text-color-muted{color:#919191!important}.text-color-muted::-moz-selection{background-color:#91919133!important;color:#919191!important}.text-color-muted::selection{background-color:#91919133!important;color:#919191!important}.text-color-green{color:#56b4ac!important}.text-color-green::-moz-selection{background-color:#56b4ac33!important;color:#56b4ac!important}.text-color-green::selection{background-color:#56b4ac33!important;color:#56b4ac!important}.text-color-green-2{color:#259f94!important}.text-color-green-2::-moz-selection{background-color:#259f9433!important;color:#259f94!important}.text-color-green-2::selection{background-color:#259f9433!important;color:#259f94!important}.text-color-green-4{color:#86c9c3!important}.text-color-green-4::-moz-selection{background-color:#86c9c333!important;color:#86c9c3!important}.text-color-green-4::selection{background-color:#86c9c333!important;color:#86c9c3!important}.text-color-blue-13{color:#6692f1!important}.text-color-blue-13::-moz-selection{background-color:#6692f133!important;color:#6692f1!important}.text-color-blue-13::selection{background-color:#6692f133!important;color:#6692f1!important}.text-color-blue-16{color:#e9effd!important}.text-color-blue-16::-moz-selection{background-color:#e9effd33!important;color:#e9effd!important}.text-color-blue-16::selection{background-color:#e9effd33!important;color:#e9effd!important}.text-color-blue-18{color:#3b73ed!important}.text-color-blue-18::-moz-selection{background-color:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-18::selection{background-color:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-19{color:#92b1f5!important}.text-color-blue-19::-moz-selection{background-color:#92b1f533!important;color:#92b1f5!important}.text-color-blue-19::selection{background-color:#92b1f533!important;color:#92b1f5!important}.text-color-red-10{color:#e66767!important}.text-color-red-10::-moz-selection{background-color:#e6676733!important;color:#e66767!important}.text-color-red-10::selection{background-color:#e6676733!important;color:#e66767!important}.text-color-red-11{color:#df3c3c!important}.text-color-red-11::-moz-selection{background-color:#df3c3c33!important;color:#df3c3c!important}.text-color-red-11::selection{background-color:#df3c3c33!important;color:#df3c3c!important}.text-color-red-13{color:#ed9292!important}.text-color-red-13::-moz-selection{background-color:#ed929233!important;color:#ed9292!important}.text-color-red-13::selection{background-color:#ed929233!important;color:#ed9292!important}.text-color-yellow{color:#fab15c!important}.text-color-yellow::-moz-selection{background-color:#fab15c33!important;color:#fab15c!important}.text-color-yellow::selection{background-color:#fab15c33!important;color:#fab15c!important}.text-color-purple{color:#b370f0!important}.text-color-purple::-moz-selection{background-color:#b370f033!important;color:#b370f0!important}.text-color-purple::selection{background-color:#b370f033!important;color:#b370f0!important}.text-color-light-grey{color:#e5e5e5!important}.text-color-light-grey::-moz-selection{background-color:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey::selection{background-color:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey-2{color:#aaa!important}.text-color-light-grey-2::-moz-selection{background-color:#aaa3!important;color:#aaa!important}.text-color-light-grey-2::selection{background-color:#aaa3!important;color:#aaa!important}.text-color-light-grey-6{color:#ccc!important}.text-color-light-grey-6::-moz-selection{background-color:#ccc3!important;color:#ccc!important}.text-color-light-grey-6::selection{background-color:#ccc3!important;color:#ccc!important}.text-color-white{color:#fff!important}.text-color-white::-moz-selection{background-color:#fff3!important;color:#fff!important}.text-color-white::selection{background-color:#fff3!important;color:#fff!important}.text-color-white-2{color:#fff!important}.text-color-white-2::-moz-selection{background-color:#fff3!important;color:#fff!important}.text-color-white-2::selection{background-color:#fff3!important;color:#fff!important}.text-color-white-4{color:#ffffffb2!important}.text-color-white-4::-moz-selection{background-color:#fff3!important;color:#ffffffb2!important}.text-color-white-4::selection{background-color:#fff3!important;color:#ffffffb2!important}.text-color-bw6-2{color:#6c6c6c!important}.text-color-bw6-2::-moz-selection{background-color:#6c6c6c33!important;color:#6c6c6c!important}.text-color-bw6-2::selection{background-color:#6c6c6c33!important;color:#6c6c6c!important}.text-color-bw-9{color:#dadada!important}.text-color-bw-9::-moz-selection{background-color:#dadada33!important;color:#dadada!important}.text-color-bw-9::selection{background-color:#dadada33!important;color:#dadada!important}.text-color-grey{color:#919191!important}.text-color-grey::-moz-selection{background-color:#91919133!important;color:#919191!important}.text-color-grey::selection{background-color:#91919133!important;color:#919191!important}.text-color-grey .address-text::-moz-selection,.text-color-grey .marker-bold-text::-moz-selection{background-color:#91919133!important;color:#919191!important}.text-color-grey .address-text::selection,.text-color-grey .marker-bold-text::selection{background-color:#91919133!important;color:#919191!important}.text-size-11{font-size:11px!important;line-height:14px!important}.text-size-14{font-size:14px!important;line-height:18px!important}.text-size-16{font-size:16px!important;line-height:19px!important}.text-size-18{font-size:18px!important;line-height:22px!important}.text-size-26{font-size:26px!important;line-height:32px!important}.text-size-28{font-size:28px!important;line-height:34px!important}.svg-fill-black svg path,.svg-fill-black svg circle{fill:#424242!important}.svg-fill-white svg path,.svg-fill-white svg circle{fill:#fff!important}.svg-fill-white-2 svg path,.svg-fill-white-2 svg circle{fill:#fff!important}.svg-fill-muted svg path,.svg-fill-muted svg circle{fill:#919191!important}.svg-fill-bw-9 svg path,.svg-fill-bw-9 svg circle{fill:#dadada!important}.svg-fill-light-grey-2 svg path,.svg-fill-light-grey-2 svg circle{fill:#aaa!important}.svg-fill-light-grey-6 svg path,.svg-fill-light-grey-6 svg circle{fill:#ccc!important}.svg-fill-blue-8 svg path,.svg-fill-blue-8 svg circle{fill:#6692f1!important}.svg-fill-blue-13 svg path,.svg-fill-blue-13 svg circle{fill:#6692f1!important}.svg-fill-blue-14 svg path,.svg-fill-blue-14 svg circle{fill:#3b73ed!important}.svg-fill-blue-17 svg path,.svg-fill-blue-17 svg circle{fill:#bed0f9!important}.svg-fill-blue-19 svg path,.svg-fill-blue-19 svg circle{fill:#92b1f5!important}.svg-fill-blue-26 svg path,.svg-fill-blue-26 svg circle{fill:#4dc5eb!important}.svg-fill-green svg path,.svg-fill-green svg circle{fill:#56b4ac!important}.svg-fill-green-2 svg path,.svg-fill-green-2 svg circle{fill:#259f94!important}.svg-fill-green-4 svg path,.svg-fill-green-4 svg circle{fill:#86c9c3!important}.svg-fill-yellow-1 svg path,.svg-fill-yellow-1 svg circle{fill:#fab15c!important}.svg-fill-yellow-4 svg path,.svg-fill-yellow-4 svg circle{fill:#fbc88b!important}.svg-fill-yellow-5 svg path,.svg-fill-yellow-5 svg circle{fill:#f89b2e!important}.svg-fill-white-4 svg path,.svg-fill-white-4 svg circle{fill:#ffffffb2!important}.svg-fill-grey svg path,.svg-fill-grey svg circle{fill:#919191!important}.svg-fill-red-10 svg path,.svg-fill-red-10 svg circle{fill:#e66767!important}.svg-fill-red-11 svg path,.svg-fill-red-11 svg circle{fill:#df3c3c!important}.svg-hover-white svg path{transition:fill .3s ease-in-out}.svg-hover-white:hover svg path{fill:#fff!important}.svg-hover-white-2 svg path{transition:fill .3s ease-in-out}.svg-hover-white-2:hover svg path{fill:#fff!important}.svg-hover-muted svg path{transition:fill .3s ease-in-out}.svg-hover-muted:hover svg path{fill:#919191!important}.svg-hover-grey-4 svg path{transition:fill .3s ease-in-out}.svg-hover-grey-4:hover svg path{fill:#ccc!important}.svg-hover-black svg path{transition:fill .3s ease-in-out}.svg-hover-black:hover svg path{fill:#424242!important}.svg-hover-blue-10 svg path{transition:fill .3s ease-in-out}.svg-hover-blue-10:hover svg path{fill:#bed0f9!important}.svg-hover-blue-15 svg path{transition:fill .3s ease-in-out}.svg-hover-blue-15:hover svg path{fill:#0b49d1!important}.svg-hover-blue-19 svg path{transition:fill .3s ease-in-out}.svg-hover-blue-19:hover svg path{fill:#92b1f5!important}.svg-hover-bw6-2 svg path{transition:fill .3s ease-in-out}.svg-hover-bw6-2:hover svg path{fill:#6c6c6c!important}.svg-hover-trash-red svg path{transition:fill .3s ease-in-out}.svg-hover-trash-red:hover svg path{fill:#ff5050!important}.svg-hover-red-14 svg path{transition:fill .3s ease-in-out}.svg-hover-red-14:hover svg path{fill:#c20c0c!important}.svg-size-10 svg{width:10px;height:10px}.svg-size-12 svg{width:12px;height:12px}.svg-size-14 svg{width:14px;height:14px}.svg-size-16 svg{width:16px;height:16px}.svg-size-18 svg{width:18px;height:18px}.svg-size-22 svg{width:22px;height:22px}.svg-size-26 svg{width:26px;height:26px}.svg-size-44-16 svg{width:44px;height:16px}.background-black{background-color:#424242}.background-black-2{background-color:#2f2f2f}.background-blue-13{background-color:#6692f1}.background-blue-14{background-color:#3b73ed}.background-dark-2{background-color:#91919133}.background-hover-bw2{transition:background-color .3s ease-in-out}.background-hover-bw2:hover{background-color:#eee!important}.background-hover-blue-15{transition:background-color .3s ease-in-out}.background-hover-blue-15:hover{background-color:#0b49d1!important}.br-1{border-radius:1px}.br-2{border-radius:2px}.br-3{border-radius:3px}.br-10{border-radius:10px}.br-circle{border-radius:50%}.padding-2{padding:2px}.padding-4{padding:4px}.padding-y-2{padding-top:2px;padding-bottom:2px}.padding-y-4{padding-top:4px;padding-bottom:4px}.padding-x-4{padding-left:4px;padding-right:4px}.padding-x-5{padding-left:5px;padding-right:5px}.margin-t-4{margin-top:4px}.margin-r-4{margin-right:4px}.margin-b-4{margin-bottom:4px}.margin-t-6{margin-top:6px}.margin-r-6{margin-right:6px}.margin-b-6{margin-bottom:6px}.margin-t-24{margin-top:24px}.margin-r-24{margin-right:24px}.margin-b-24{margin-bottom:24px}.gap-xs{gap:2px}.height-1{height:1px}@keyframes dropdown{0%{margin-top:20px;visibility:hidden;opacity:0}to{opacity:1;margin-top:10px;visibility:visible!important}}@keyframes dropup{0%{margin-top:-19px;visibility:hidden;opacity:0}to{margin-top:inherit;visibility:visible!important}}.filter-dropdown-popover{width:260px}.filter-dropdown-popover-max-height{max-height:360px}.filter-dropdown-list{max-height:260px;overflow-y:auto}.filter-dropdown-list-icon{height:26px;transition:background-color .3s ease-in-out}.filter-dropdown-list-icon-value{height:14px;width:14px}.filter-dropdown-list-icon-remove{display:none}.filter-dropdown-list-icon:hover{background-color:#424242}.filter-dropdown-list-icon:hover .filter-dropdown-icon-count{display:none}.filter-dropdown-list-icon-selected:hover{background-color:#0b49d1}.filter-dropdown-list-item-icons{transition:opacity .3s ease-in-out;opacity:0}.filter-dropdown-list-item-status-circle{height:10px;width:10px}.filter-dropdown-list-item-remove{display:none}.filter-dropdown-list-item:hover{background-color:#424242}.filter-dropdown-list-item:hover .filter-dropdown-list-item-icons{opacity:1}.filter-dropdown-list-item:hover .filter-dropdown-list-item-icons svg path{fill:var(--svg-fill-color, #e66767)}.filter-dropdown-list-item-hover:hover .filter-dropdown-list-item-remove{display:flex}.filter-dropdown-list-item-hover:hover .filter-dropdown-list-item-remove svg path{fill:#e66767!important}.filter-dropdown-list-item-hover:hover .filter-dropdown-list-item-count{display:none!important}.filter-dropdown-icon{height:26px;width:26px}.filter-dropdown-count{height:14px;width:14px}.filter-dropdown-count-remove,.filter-dropdown-count-hover:hover .filter-dropdown-count-value{display:none}.filter-dropdown-count-hover:hover .filter-dropdown-count-remove{display:flex}.filter-dropdown-button{height:26px}.filter-dropdown-footer-button{color:#dadada;transition:color .3s ease-in-out,background-color .3s ease-in-out;height:18px;width:50%}.filter-dropdown-footer-button-set{color:#fff;background-color:#3b73ed}.filter-dropdown-footer-button-set:hover{background-color:#e9effd;color:#0b49d1}.filter-dropdown-footer-button-clear{color:#dadada}.filter-dropdown-footer-button-clear:hover{background-color:#eee;color:#424242}.filter-dropdown-list-badge{min-width:18px}*{margin:0;font-family:Montserrat,sans-serif}html{scroll-behavior:auto!important}.gm-style-iw-chr,.gm-style-iw-tc{display:none}.gm-style .gm-style-iw-c{border-radius:0}.gm-style-iw{overflow-y:auto!important;overflow-x:hidden!important}.gm-style-iw>div{overflow:visible!important}.infoWindow{overflow:hidden!important}.gm-style-iw-d,.gm-style-iw.gm-style-iw-c{max-height:350px!important}::ng-deep .popover{--bs-popover-border-width: 0;--bs-popover-body-padding-y: 0;--bs-popover-body-padding-x: 0}::ng-deep .popover .popover-arrow{display:none}.c-pointer{cursor:pointer}.ca-scroll-bar{overflow-y:scroll}.ca-scroll-bar::-webkit-scrollbar{width:2px}.ca-scroll-bar::-webkit-scrollbar-thumb{background:#ccc;border-radius:1px}.ca-scroll-bar::-webkit-scrollbar-track{background:#2f2f2f}.dropzone-container{width:100%;height:178px;outline:4px dashed #eeeeee;border-radius:2px;position:relative;cursor:pointer;overflow:hidden}.dropzone-container.split-dropzone{width:auto!important}.dropzone-container.disabled-dropzone{pointer-events:none;opacity:.6;cursor:not-allowed}.dropzone-container:hover{background-color:#eee}.dropzone-container.dropzone-small{width:302px!important}.dropzone-container.expanded{height:458px}.dropzone-container.unSupported{outline-color:#ed9292;outline-offset:-4px;background-color:#fff}.dropzone-container .animation-container{height:auto;width:auto;overflow:hidden;position:relative;transition:transform .5s ease-in-out}.dropzone-container .animation-container .static-lottie-animation{width:100%;height:100%}.dropzone-container .animation-container.expanded{transition:height .5s ease-in-out}.dropzone-container .dropzone-content{gap:10px;position:relative;transition:transform .5s ease-in-out,opacity .5s ease-in-out}.dropzone-container .dropzone-content.column-layout{flex-direction:column;align-items:center;justify-content:center}.dropzone-container .dropzone-content .cancel-unsupported-zone{position:absolute}.dropzone-container .dropzone-content.dropzone-small{width:302px;height:100%}.dropzone-container .dropzone-content.expandedContent{flex-direction:column;transform:scale(1);opacity:1;top:-30px}.dropzone-container .upload-dropzone-unsupported{flex-direction:column;gap:12px;position:relative;width:100%;height:100%}.dropzone-container .svgIcon-document{width:100px;height:100px}.dropzone-container .svgIcon-document.svg-small svg-icon{width:80px!important;height:80px!important}.dropzone-container .svgIcon-document.big{width:200px;height:200px}.dropzone-container .dropzone-text{color:#424242;-webkit-user-select:none;user-select:none;pointer-events:none}.dropzone-container .dropzone-text .upload-dropzone-text{font-size:14px;line-height:18px;align-items:center;font-family:Montserrat,sans-serif;margin-bottom:0}.dropzone-container .dropzone-text .upload-dropzone-text.unsupported-text-big{color:#df3c3c}.dropzone-container .dropzone-text .upload-dropzone-text.max-count{text-align:center}.dropzone-container .dropzone-text .upload-dropzone-text-small{font-family:Montserrat,sans-serif;margin-top:4px;font-size:11px;line-height:14px;align-items:center}.dropzone-container .dropzone-text .upload-dropzone-text-small .media-sizes{font-size:11px;line-height:14px;color:#919191;margin-top:4px}.dropzone-container .cancel-unsupported-zone{position:absolute;top:6px;right:14px;cursor:pointer;width:12.6px;height:12.6px}.dropzone-container .supported-extensions{gap:4px}.dropzone-container .supported-extensions .extension{font-family:Montserrat,sans-serif;width:35px;height:18px;border-radius:1px;font-size:11px;color:#fff;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-transform:uppercase}.dropzone-container .supported-extensions .extension-jpg,.dropzone-container .supported-extensions .extension-jpeg,.dropzone-container .supported-extensions .extension-png{background:#fab15c}.dropzone-container .supported-extensions .extension-pdf{background-color:#e66767}.dropzone-container .supported-extensions .extension-mov,.dropzone-container .supported-extensions .extension-mp4,.dropzone-container .supported-extensions .extension-avi{background-color:#b370f0}.dropzone-container .supported-extensions .extension:hover{transition:height .3s ease-in-out;opacity:1;cursor:auto!important}\n"] }]
|
|
294
|
+
}, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"dropzone-container d-flex align-items-center justify-content-center\"\n [ngClass]=\"{\n 'split-dropzone': isDropzoneShownInCrop,\n unSupported: isSupportedType,\n expanded: isDropzoneExpanded && !isSupportedType,\n 'disabled-dropzone': files.length >= this.limit && this.limit > 0,\n }\"\n [ngStyle]=\"{\n width:\n files.length === 0\n ? customWidth || '448px'\n : files.length === 1\n ? '296px'\n : files.length === 2\n ? '148px'\n : files.length === 3\n ? '148px'\n : '148px',\n }\"\n>\n <!-- @for (item of _dropZoneConfigArray; track $index) { -->\n @if (_dropZoneConfig) {\n <div\n class=\"dropzone-content d-flex align-items-center justify-content-center\"\n [ngClass]=\"{\n 'upload-dropzone-unsupported': isSupportedType,\n expandedContent: isDropzoneExpanded,\n 'column-layout': files.length >= 2,\n }\"\n >\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate(_dropZoneConfig.template);\n context: { $implicit: _dropZoneConfig?.config }\n \"\n ></ng-container>\n </div>\n }\n <!-- } -->\n</div>\n\n<!-------------Document template-------------->\n<ng-template templateContainer id=\"documentsTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Media template-------------->\n<ng-template templateContainer id=\"mediaTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Image template-------------->\n<ng-template templateContainer id=\"imageTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Image Crop template-------------->\n<ng-template templateContainer id=\"imageCropTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!-------------Logo template-------------->\n<ng-template templateContainer id=\"logoTemplate\" let-config>\n <!--SVG ICON-->\n @if (!isShownDropzoneFocus && !isDropzoneExpanded) {\n <ng-container *ngTemplateOutlet=\"dropzoneIconTemplate\"></ng-container>\n }\n\n <!--Lottie animation-->\n @if ((isDropzoneExpanded || isShownDropzoneFocus) && !isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"lottieAnimationTemplate\"\n ></ng-container>\n }\n\n <!--Content for supported and unsupported types-->\n <ng-container *ngTemplateOutlet=\"dropzoneTextTemplate\"> </ng-container>\n\n <!--Supported extensions for unsupported type-->\n @if (isSupportedType) {\n <ng-container\n *ngTemplateOutlet=\"supportedExtensionsTemplate\"\n ></ng-container>\n }\n\n <!--FILE INPUT-->\n <ng-container\n *ngTemplateOutlet=\"fileInputTemplate; context: { $implicit: config }\"\n ></ng-container>\n</ng-template>\n\n<!--------------COMMON-TEMPLATE-------------->\n\n<!------INPUT------->\n<ng-template #fileInputTemplate let-config>\n <input\n #dropZone\n [id]=\"'dropZone' + (config.dropzoneOption?.dropzoneIndex || 0)\"\n type=\"file\"\n [accept]=\"config.dropzone?.dropZoneAvailableFiles\"\n [multiple]=\"config.dropzone?.multiple\"\n (change)=\"handleFileChange($event)\"\n style=\"display: none\"\n />\n</ng-template>\n\n<!--DROPZONE_TEXT-->\n<ng-template #dropzoneTextTemplate>\n <div\n class=\"dropzone-text d-flex flex-column align-items-center justify-content-center\"\n >\n <p\n class=\"upload-dropzone-text\"\n [ngClass]=\"{\n 'unsupported-text-big': isSupportedType,\n 'max-count': isMaxCountReached(),\n }\"\n >\n @if (isMaxCountReached()) {\n MAX COUNT REACHED\n } @else {\n <ng-container *ngTemplateOutlet=\"normalText\"> </ng-container>\n }\n <ng-template #normalText>\n {{\n isSupportedType\n ? 'INVALID FILE TYPE'\n : 'DRAG ' + dropZoneText\n }}\n {{\n !(isSupportedType || (files && files.length)) ? ' HERE' : ''\n }}\n </ng-template>\n @if (_dropZoneConfig?.template === 'mediaTemplate') {\n <p class=\"media-sizes\">max file size 50mb</p>\n }\n </p>\n @if (!isDropzoneExpanded) {\n <span class=\"upload-dropzone-text-small\">\n @if (isMaxCountReached()) {\n {{ files.length }} FILES IMPORTED\n } @else {\n <ng-container *ngTemplateOutlet=\"formatText\">\n </ng-container>\n }\n <ng-template #formatText>\n {{\n isSupportedType\n ? 'SUPPORTED FORMATS'\n : 'OR CLICK TO ADD'\n }}\n </ng-template>\n </span>\n }\n </div>\n</ng-template>\n\n<!------ICON-------->\n<ng-template #dropzoneIconTemplate>\n @if (!isSupportedType && !isFileDrop) {\n <svg-icon\n [src]=\"iconSrc\"\n [ngClass]=\"files.length < 2 ? 'svgIcon-document' : 'svg-small'\"\n >\n </svg-icon>\n } @else {\n <svg-icon\n [src]=\"dropzoneSvgRoute\"\n class=\"cancel-unsupported-zone\"\n (click)=\"resetDropzoneView($event)\"\n >\n </svg-icon>\n }\n</ng-template>\n<!-- LOTTIE_ANIMATION -->\n<ng-template #lottieAnimationTemplate>\n <div\n class=\"animation-container d-flex flex-column align-items-center justify-content-center\"\n [ngClass]=\"{ expanded: isDropzoneExpanded }\"\n >\n <ng-lottie\n class=\"static-lottie-animation\"\n [options]=\"lottieOptions\"\n ></ng-lottie>\n </div>\n</ng-template>\n\n<!-- SUPPORTED_EXTENSIONS -->\n<ng-template #supportedExtensionsTemplate>\n <div class=\"supported-extensions d-flex justify-content-center\">\n @for (extension of dropZoneAvailableFiles; track $index) {\n <span\n class=\"extension extension-{{\n extension | mimeTypeToExtension\n }} \n d-flex justify-content-center align-items-center\"\n >\n {{ extension | mimeTypeToExtension }}\n </span>\n }\n </div>\n</ng-template>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap\";@import\"https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css\";.ca-font-thin{font-weight:100!important}.ca-font-extra-light{font-weight:200!important}.ca-font-light{font-weight:300!important}.ca-font-regular{font-weight:400!important}.ca-font-medium{font-weight:500!important}.ca-font-semi-bold,.dropzone-container .dropzone-text .upload-dropzone-text-small{font-weight:600!important}.ca-font-bold,.dropzone-container .dropzone-text .upload-dropzone-text{font-weight:700!important}.ca-font-extra-bold{font-weight:800!important}.ca-font-black,.dropzone-container .supported-extensions .extension{font-weight:900!important}.pickup-delivery-popover{top:-38px!important;max-width:340px!important}.pickup-delivery-popover.bs-popover-top{top:auto!important;bottom:-38px!important}.pickup-delivery-popover.bs-popover-top .load-component .assigned-load-holder{order:3;margin-top:4px;margin-bottom:0!important}.pickup-delivery-popover.bs-popover-top .load-component .statusBar{order:2;margin-top:4px}.pickup-delivery-popover.bs-popover-top .load-component .animation-three-tabs{order:1}.gps_dropdown_popover{top:-38px;max-width:494px}.gps_dropdown_popover .popover-body{padding:0}.table-progress-popover{background-color:unset!important;margin-left:-10px}.table-progress-popover .progress-dropdown{margin-top:-6px;width:260px;height:200px;background:#2f2f2f;border-radius:3px;padding:8px;box-shadow:0 0 4px #00000026;overflow:hidden;-webkit-animation:progressAnimation .25s ease-in-out;animation:progressAnimation .25s ease-in-out}.table-progress-popover .progress-dropdown .progress-header .progress-title{font-size:18px;font-weight:600;color:#fff}.table-progress-popover .progress-dropdown .progress-header .progress-title span{font-weight:400}.table-progress-popover .progress-dropdown .progress-header .progress-total{font-size:14px;line-height:17px;color:#fff}.table-progress-popover .progress-dropdown .table-progress-bar-container{width:100%;height:8px;margin-top:6px;border-radius:2px;overflow:hidden}.table-progress-popover .progress-dropdown .table-progress-bar-container .table-progress-bar{height:100%}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-dual-info-container .progress-info-container{width:50%}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container{margin-top:10px}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container .progress-info-title{margin-bottom:2px;font-size:11px;font-weight:700;line-height:14px;color:#ffffffb2}.table-progress-popover .progress-dropdown .progress-dropdown-body .progress-info-container .progress-info-text{font-size:14px;line-height:18px;color:#fff}.table-progress-popover .progress-dropdown.credit-dropdown{height:100px}@-webkit-keyframes progressAnimation{0%{height:0px}to{height:220px}}@keyframes progressAnimation{0%{height:0px}to{height:220px}}ngb-popover-window{padding:unset!important;border:unset!important}ngb-popover-window .popover-arrow{display:none!important}ngb-popover-window .popover-body{padding:unset!important}.dispatch-note .popover-body{position:relative;top:-4px;left:-4px}.tooltip{font-size:12px;position:relative}.tooltip.show{opacity:.83}.tooltip.fade:after,.tooltip.fade:before{transform:translateY(-10px);transition:all .15s ease-in-out}.tooltip.fade:hover:after,.tooltip.fade:hover:before{opacity:1;transform:translate(0)}.tooltip-inner{padding:4px 10px;white-space:nowrap;max-width:none;border-radius:3px}.tooltip-inner:empty{padding:0}.placeholder-delete .tooltip-inner{background-color:#f66}.placeholder-delete .arrow:before{border-top-color:#f66}.custom-popup-owners-for-flag .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(126%) translate(-50%)!important;width:130px;border-radius:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-for-flag .arrow{bottom:-18%;transform:rotate(180deg);left:calc(50% + 2.7rem)}.custom-popup-owners-for-flag .tooltip{opacity:.93!important;width:0}.custom-popup-owners{z-index:999}.custom-popup-owners .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(132%);z-index:999;box-shadow:0 0 3px #0003}.custom-popup-owners .arrow{bottom:-20%;transform:rotate(180deg)}.custom-popup-owners .tooltip{transform:translateY(-61px)!important}.custom-popup-owners-year{z-index:999}.custom-popup-owners-year .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(132%);z-index:999;box-shadow:0 0 3px #0003}.custom-popup-owners-year .arrow{bottom:-20%;transform:rotate(180deg)}.custom-popup-owners-year .tooltip{transform:translate(70px,-61px)!important}.custom-popup-owners-info .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(-100%) translate(-10%);width:200px;height:36px;display:flex;justify-content:center;align-items:center;border-radius:3px;margin-top:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-info .tooltip{opacity:.93;width:0}.custom-popup-owners-info .arrow{display:none}.custom-popup-owners-info #phone-inside{position:relative;right:26px;bottom:0}.custom-popup-owners-info-at .tooltip-inner{color:#3b3b3b;background-color:#fff;transform:translateY(-108%) translate(-7%);width:270px;height:36px;display:flex;justify-content:center;align-items:center;border-radius:3px;box-shadow:0 0 3px #0003}.custom-popup-owners-info-at .tooltip{opacity:1;width:0}.custom-popup-owners-info-at .arrow{display:none}.custom-popup-owners-for-tag .tooltip-inner{color:#3b3b3b;background-color:#fff;width:100px;border-radius:3px;box-shadow:0 0 3px #0003!important}.custom-popup-owners-for-tag .tooltip{top:5px!important}.custom-popup-owners-for-tag .arrow{bottom:-24%}.align-items-flex-start{justify-content:center;align-items:center}.align-items-flex-end{display:flex;justify-content:center;flex-direction:column;align-self:flex-end;align-items:flex-start}.label-add{align-self:flex-start}.fadeInLoad{animation:fadeInLoad .25s}@keyframes fadeInLoad{0%{opacity:0}to{opacity:1}}.fadeIn{opacity:1;-webkit-transition:.25s;-moz-transition:.25s;-o-transition:.25s;transition:.25s}.thisText:hover .fadeIn{opacity:0}.fadeInLoad{animation-name:example;animation-duration:.25s}@keyframes example{0%{transform:scale(.5)}to{transform:scale(1)}}.tooltip.tooltip-table-icons{left:12px!important;opacity:1}.tooltip.tooltip-table-icons .arrow{display:none!important}.tooltip.tooltip-table-icons .tooltip-inner{border-radius:0 50px 50px;background:#28529f}.tooltip.show{opacity:1;animation:fadeIn ease .5s!important;-webkit-animation:fadeIn ease .5s!important;-moz-animation:fadeIn ease .5s!important;-o-animation:fadeIn ease .5s!important;-ms-animation:fadeIn ease .5s!important}.ta-tooltip{position:absolute;font-size:12px;text-align:center;color:#fff;line-height:22px;z-index:999999!important;opacity:0;white-space:nowrap;transform:scale(.7)}.ta-tooltip.ta-tooltip-show{opacity:.85;transform:scale(1);padding:0 12px}.ta-tooltip.ta-tooltip-bottom-right,.ta-tooltip.ta-tooltip-bottom-right-corner{transform-origin:top left;border-radius:0 15px 15px}.ta-tooltip.ta-tooltip-bottom-left{transform-origin:top right;border-radius:15px 0 15px 15px}@keyframes scaleItem{0%{transform:scale(.4)}to{transform:scale(1)}}.app-ca-main-tooltip{pointer-events:none}.app-ca-main-tooltip .tooltip-inner{padding:0;background-color:transparent;pointer-events:none}.app-ca-main-tooltip .tooltip-inner .tooltip-holder{display:flex;font-size:11px;font-weight:700;border-radius:2px;padding:2px 8px;animation:scaleItem .3s;white-space:normal}.app-ca-main-tooltip .tooltip-inner .tooltip-holder:empty{padding:0}.tooltip-arrow{display:none!important}.trucks.semitruck svg path,.trucks.semisleeper svg path,.trucks.flatbed svg path,.trucks.stepdeck svg path,.trucks.lowboyrgn svg path,.trucks.chassis svg path,.trucks.conestoga svg path,.trucks.sidekit svg path,.trucks.container svg path,.trailers.semitruck svg path,.trailers.semisleeper svg path,.trailers.flatbed svg path,.trailers.stepdeck svg path,.trailers.lowboyrgn svg path,.trailers.chassis svg path,.trailers.conestoga svg path,.trailers.sidekit svg path,.trailers.container svg path{fill:#92b1f5}.trucks.boxtruck svg path,.trucks.reefertruck svg path,.trucks.cargovan svg path,.trucks.dryvan svg path,.trucks.reefer svg path,.trailers.boxtruck svg path,.trailers.reefertruck svg path,.trailers.cargovan svg path,.trailers.dryvan svg path,.trailers.reefer svg path{fill:#fbc88b}.trucks.dumptruck svg path,.trucks.cementtruck svg path,.trucks.garbagetruck svg path,.trucks.enddump svg path,.trucks.bottomdump svg path,.trucks.hopper svg path,.trucks.tanker svg path,.trucks.pneumatictanker svg path,.trailers.dumptruck svg path,.trailers.cementtruck svg path,.trailers.garbagetruck svg path,.trailers.enddump svg path,.trailers.bottomdump svg path,.trailers.hopper svg path,.trailers.tanker svg path,.trailers.pneumatictanker svg path{fill:#ed9292}.trucks.towtruck svg path,.trucks.carhauler svg path,.trucks.spotter svg path,.trucks.carhaulerstigner svg path,.trailers.towtruck svg path,.trailers.carhauler svg path,.trailers.spotter svg path,.trailers.carhaulerstigner svg path{fill:#86c9c3}.trucks .svgtext-template-text,.trailers .svgtext-template-text{color:#fff;transition:color .3s ease-in-out}.colors .black svg #droplet{fill:#6c6c6c}.colors .brown svg #droplet{fill:#a1887f}.colors .darkgreen svg #droplet{fill:#4db6a2}.colors .lightgreen svg #droplet{fill:#81c784}.colors .darkblue svg #droplet{fill:#546fd2}.colors .lightblue svg #droplet{fill:#64b5f6}.colors .gray svg #droplet{fill:#aaa}.colors .purple svg #droplet{fill:#ba68c8}.colors .gold svg #droplet{fill:#bcad79}.colors .silver svg #droplet{fill:#dadada}.colors .red svg #droplet{fill:#f96b69}.colors .pink svg #droplet{fill:#f26ec2}.colors .white svg #droplet{fill:#f1f1f1}.colors .orange svg #droplet{fill:#ff8a65}.colors .yellow svg #droplet{fill:#ffd54f}.colors:hover{transition:all .3s ease-in-out}.colors:hover .black svg #droplet{fill:#3c3c3c}.colors:hover .brown svg #droplet{fill:#8d6e63}.colors:hover .darkgreen svg #droplet{fill:#26a690}.colors:hover .lightgreen svg #droplet{fill:#66bb6a}.colors:hover .darkblue svg #droplet{fill:#304fc1}.colors:hover .lightblue svg #droplet{fill:#42a5f5}.colors:hover .gray svg #droplet{fill:#919191}.colors:hover .purple svg #droplet{fill:#ab47bc}.colors:hover .gold svg #droplet{fill:#aa9c6e}.colors:hover .silver svg #droplet{fill:#b7b7b7}.colors:hover .red svg #droplet{fill:#ef5350}.colors:hover .pink svg #droplet{fill:#fa4daa}.colors:hover .white svg #droplet{fill:#fff}.colors:hover .orange svg #droplet{fill:#ff7043}.colors:hover .yellow svg #droplet{fill:#ffca28}.text-color-black{color:#424242!important}.text-color-black::-moz-selection{background-color:#42424233!important;color:#424242!important}.text-color-black::selection{background-color:#42424233!important;color:#424242!important}.text-color-black-2{color:#2f2f2f!important}.text-color-black-2::-moz-selection{background-color:#2f2f2f33!important;color:#2f2f2f!important}.text-color-black-2::selection{background-color:#2f2f2f33!important;color:#2f2f2f!important}.text-color-muted{color:#919191!important}.text-color-muted::-moz-selection{background-color:#91919133!important;color:#919191!important}.text-color-muted::selection{background-color:#91919133!important;color:#919191!important}.text-color-green{color:#56b4ac!important}.text-color-green::-moz-selection{background-color:#56b4ac33!important;color:#56b4ac!important}.text-color-green::selection{background-color:#56b4ac33!important;color:#56b4ac!important}.text-color-green-2{color:#259f94!important}.text-color-green-2::-moz-selection{background-color:#259f9433!important;color:#259f94!important}.text-color-green-2::selection{background-color:#259f9433!important;color:#259f94!important}.text-color-green-4{color:#86c9c3!important}.text-color-green-4::-moz-selection{background-color:#86c9c333!important;color:#86c9c3!important}.text-color-green-4::selection{background-color:#86c9c333!important;color:#86c9c3!important}.text-color-blue-13{color:#6692f1!important}.text-color-blue-13::-moz-selection{background-color:#6692f133!important;color:#6692f1!important}.text-color-blue-13::selection{background-color:#6692f133!important;color:#6692f1!important}.text-color-blue-16{color:#e9effd!important}.text-color-blue-16::-moz-selection{background-color:#e9effd33!important;color:#e9effd!important}.text-color-blue-16::selection{background-color:#e9effd33!important;color:#e9effd!important}.text-color-blue-18{color:#3b73ed!important}.text-color-blue-18::-moz-selection{background-color:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-18::selection{background-color:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-19{color:#92b1f5!important}.text-color-blue-19::-moz-selection{background-color:#92b1f533!important;color:#92b1f5!important}.text-color-blue-19::selection{background-color:#92b1f533!important;color:#92b1f5!important}.text-color-red-10{color:#e66767!important}.text-color-red-10::-moz-selection{background-color:#e6676733!important;color:#e66767!important}.text-color-red-10::selection{background-color:#e6676733!important;color:#e66767!important}.text-color-red-11{color:#df3c3c!important}.text-color-red-11::-moz-selection{background-color:#df3c3c33!important;color:#df3c3c!important}.text-color-red-11::selection{background-color:#df3c3c33!important;color:#df3c3c!important}.text-color-red-13{color:#ed9292!important}.text-color-red-13::-moz-selection{background-color:#ed929233!important;color:#ed9292!important}.text-color-red-13::selection{background-color:#ed929233!important;color:#ed9292!important}.text-color-yellow{color:#fab15c!important}.text-color-yellow::-moz-selection{background-color:#fab15c33!important;color:#fab15c!important}.text-color-yellow::selection{background-color:#fab15c33!important;color:#fab15c!important}.text-color-purple{color:#b370f0!important}.text-color-purple::-moz-selection{background-color:#b370f033!important;color:#b370f0!important}.text-color-purple::selection{background-color:#b370f033!important;color:#b370f0!important}.text-color-special-filter-purple{color:#9e47ec!important}.text-color-special-filter-purple::-moz-selection{background-color:#9e47ec33!important;color:#9e47ec!important}.text-color-special-filter-purple::selection{background-color:#9e47ec33!important;color:#9e47ec!important}.text-color-light-grey{color:#e5e5e5!important}.text-color-light-grey::-moz-selection{background-color:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey::selection{background-color:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey-2{color:#aaa!important}.text-color-light-grey-2::-moz-selection{background-color:#aaa3!important;color:#aaa!important}.text-color-light-grey-2::selection{background-color:#aaa3!important;color:#aaa!important}.text-color-light-grey-6{color:#ccc!important}.text-color-light-grey-6::-moz-selection{background-color:#ccc3!important;color:#ccc!important}.text-color-light-grey-6::selection{background-color:#ccc3!important;color:#ccc!important}.text-color-white{color:#fff!important}.text-color-white::-moz-selection{background-color:#fff3!important;color:#fff!important}.text-color-white::selection{background-color:#fff3!important;color:#fff!important}.text-color-white-2{color:#fff!important}.text-color-white-2::-moz-selection{background-color:#fff3!important;color:#fff!important}.text-color-white-2::selection{background-color:#fff3!important;color:#fff!important}.text-color-white-4{color:#ffffffb2!important}.text-color-white-4::-moz-selection{background-color:#fff3!important;color:#ffffffb2!important}.text-color-white-4::selection{background-color:#fff3!important;color:#ffffffb2!important}.text-color-bw6-2{color:#6c6c6c!important}.text-color-bw6-2::-moz-selection{background-color:#6c6c6c33!important;color:#6c6c6c!important}.text-color-bw6-2::selection{background-color:#6c6c6c33!important;color:#6c6c6c!important}.text-color-bw-9{color:#dadada!important}.text-color-bw-9::-moz-selection{background-color:#dadada33!important;color:#dadada!important}.text-color-bw-9::selection{background-color:#dadada33!important;color:#dadada!important}.text-color-grey{color:#919191!important}.text-color-grey::-moz-selection{background-color:#91919133!important;color:#919191!important}.text-color-grey::selection{background-color:#91919133!important;color:#919191!important}.text-color-grey .address-text::-moz-selection,.text-color-grey .marker-bold-text::-moz-selection{background-color:#91919133!important;color:#919191!important}.text-color-grey .address-text::selection,.text-color-grey .marker-bold-text::selection{background-color:#91919133!important;color:#919191!important}.text-size-11{font-size:11px!important;line-height:14px!important}.text-size-14{font-size:14px!important;line-height:18px!important}.text-size-16{font-size:16px!important;line-height:19px!important}.text-size-18{font-size:18px!important;line-height:22px!important}.text-size-26{font-size:26px!important;line-height:32px!important}.text-size-28{font-size:28px!important;line-height:34px!important}.svg-fill-black svg path,.svg-fill-black svg circle{fill:#424242!important}.svg-fill-white svg path,.svg-fill-white svg circle{fill:#fff!important}.svg-fill-white-2 svg path,.svg-fill-white-2 svg circle{fill:#fff!important}.svg-fill-muted svg path,.svg-fill-muted svg circle{fill:#919191!important}.svg-fill-bw-9 svg path,.svg-fill-bw-9 svg circle{fill:#dadada!important}.svg-fill-light-grey-2 svg path,.svg-fill-light-grey-2 svg circle{fill:#aaa!important}.svg-fill-light-grey-6 svg path,.svg-fill-light-grey-6 svg circle{fill:#ccc!important}.svg-fill-blue-8 svg path,.svg-fill-blue-8 svg circle{fill:#6692f1!important}.svg-fill-blue-13 svg path,.svg-fill-blue-13 svg circle{fill:#6692f1!important}.svg-fill-blue-14 svg path,.svg-fill-blue-14 svg circle{fill:#3b73ed!important}.svg-fill-blue-17 svg path,.svg-fill-blue-17 svg circle{fill:#bed0f9!important}.svg-fill-blue-19 svg path,.svg-fill-blue-19 svg circle{fill:#92b1f5!important}.svg-fill-blue-26 svg path,.svg-fill-blue-26 svg circle{fill:#4dc5eb!important}.svg-fill-green svg path,.svg-fill-green svg circle{fill:#56b4ac!important}.svg-fill-green-2 svg path,.svg-fill-green-2 svg circle{fill:#259f94!important}.svg-fill-green-4 svg path,.svg-fill-green-4 svg circle{fill:#86c9c3!important}.svg-fill-yellow-1 svg path,.svg-fill-yellow-1 svg circle{fill:#fab15c!important}.svg-fill-yellow-4 svg path,.svg-fill-yellow-4 svg circle{fill:#fbc88b!important}.svg-fill-yellow-5 svg path,.svg-fill-yellow-5 svg circle{fill:#f89b2e!important}.svg-fill-white-4 svg path,.svg-fill-white-4 svg circle{fill:#ffffffb2!important}.svg-fill-grey svg path,.svg-fill-grey svg circle{fill:#919191!important}.svg-fill-red-10 svg path,.svg-fill-red-10 svg circle{fill:#e66767!important}.svg-fill-red-11 svg path,.svg-fill-red-11 svg circle{fill:#df3c3c!important}.svg-hover-white svg path{transition:fill .3s ease-in-out}.svg-hover-white:hover svg path{fill:#fff!important}.svg-hover-white-2 svg path{transition:fill .3s ease-in-out}.svg-hover-white-2:hover svg path{fill:#fff!important}.svg-hover-muted svg path{transition:fill .3s ease-in-out}.svg-hover-muted:hover svg path{fill:#919191!important}.svg-hover-grey-4 svg path{transition:fill .3s ease-in-out}.svg-hover-grey-4:hover svg path{fill:#ccc!important}.svg-hover-black svg path{transition:fill .3s ease-in-out}.svg-hover-black:hover svg path{fill:#424242!important}.svg-hover-blue-10 svg path{transition:fill .3s ease-in-out}.svg-hover-blue-10:hover svg path{fill:#bed0f9!important}.svg-hover-blue-15 svg path{transition:fill .3s ease-in-out}.svg-hover-blue-15:hover svg path{fill:#0b49d1!important}.svg-hover-blue-19 svg path{transition:fill .3s ease-in-out}.svg-hover-blue-19:hover svg path{fill:#92b1f5!important}.svg-hover-bw6-2 svg path{transition:fill .3s ease-in-out}.svg-hover-bw6-2:hover svg path{fill:#6c6c6c!important}.svg-hover-trash-red svg path{transition:fill .3s ease-in-out}.svg-hover-trash-red:hover svg path{fill:#ff5050!important}.svg-hover-red-14 svg path{transition:fill .3s ease-in-out}.svg-hover-red-14:hover svg path{fill:#c20c0c!important}.svg-size-10 svg{width:10px;height:10px}.svg-size-12 svg{width:12px;height:12px}.svg-size-14 svg{width:14px;height:14px}.svg-size-16 svg{width:16px;height:16px}.svg-size-18 svg{width:18px;height:18px}.svg-size-22 svg{width:22px;height:22px}.svg-size-26 svg{width:26px;height:26px}.svg-size-44-16 svg{width:44px;height:16px}.background-black{background-color:#424242}.background-black-2{background-color:#2f2f2f}.background-blue-13{background-color:#6692f1}.background-blue-14{background-color:#3b73ed}.background-dark-2{background-color:#91919133}.background-hover-bw2{transition:background-color .3s ease-in-out}.background-hover-bw2:hover{background-color:#eee!important}.background-hover-blue-15{transition:background-color .3s ease-in-out}.background-hover-blue-15:hover{background-color:#0b49d1!important}.br-1{border-radius:1px}.br-2{border-radius:2px}.br-3{border-radius:3px}.br-10{border-radius:10px}.br-circle{border-radius:50%}.padding-2{padding:2px}.padding-4{padding:4px}.padding-y-2{padding-top:2px;padding-bottom:2px}.padding-y-4{padding-top:4px;padding-bottom:4px}.padding-x-4{padding-left:4px;padding-right:4px}.padding-x-5{padding-left:5px;padding-right:5px}.margin-t-4{margin-top:4px}.margin-r-4{margin-right:4px}.margin-b-4{margin-bottom:4px}.margin-t-6{margin-top:6px}.margin-r-6{margin-right:6px}.margin-b-6{margin-bottom:6px}.margin-t-24{margin-top:24px}.margin-r-24{margin-right:24px}.margin-b-24{margin-bottom:24px}.gap-xs{gap:2px}.height-1{height:1px}@keyframes dropdown{0%{margin-top:20px;visibility:hidden;opacity:0}to{opacity:1;margin-top:10px;visibility:visible!important}}@keyframes dropup{0%{margin-top:-19px;visibility:hidden;opacity:0}to{margin-top:inherit;visibility:visible!important}}.filter-dropdown-popover{width:260px;position:relative;top:-4px;left:-4px}.filter-dropdown-popover-max-height{max-height:360px}.filter-dropdown-list{max-height:260px;overflow-y:auto}.filter-dropdown-list-icon{height:26px;transition:background-color .3s ease-in-out}.filter-dropdown-list-icon-value{height:14px;width:14px}.filter-dropdown-list-icon-remove{display:none}.filter-dropdown-list-icon:hover{background-color:#424242}.filter-dropdown-list-icon:hover .filter-dropdown-icon-count{display:none}.filter-dropdown-list-icon-selected:hover{background-color:#0b49d1}.filter-dropdown-list-item-icons{transition:opacity .3s ease-in-out;opacity:0}.filter-dropdown-list-item-status-circle{height:10px;width:10px}.filter-dropdown-list-item-remove{display:none}.filter-dropdown-list-item:hover{background-color:#424242}.filter-dropdown-list-item:hover .filter-dropdown-list-item-icons{opacity:1}.filter-dropdown-list-item:hover .filter-dropdown-list-item-icons svg path{fill:var(--svg-fill-color, #e66767)}.filter-dropdown-list-item-hover:hover .filter-dropdown-list-item-remove{display:flex}.filter-dropdown-list-item-hover:hover .filter-dropdown-list-item-remove svg path{fill:#e66767!important}.filter-dropdown-list-item-hover:hover .filter-dropdown-list-item-count{display:none!important}.filter-dropdown-icon{height:26px;width:26px}.filter-dropdown-count{height:14px;width:14px}.filter-dropdown-count-remove,.filter-dropdown-count-hover:hover .filter-dropdown-count-value{display:none}.filter-dropdown-count-hover:hover .filter-dropdown-count-remove{display:flex}.filter-dropdown-button{height:26px}.filter-dropdown-footer-button{color:#dadada;transition:color .3s ease-in-out,background-color .3s ease-in-out;height:18px;width:50%}.filter-dropdown-footer-button-set{color:#fff;background-color:#3b73ed}.filter-dropdown-footer-button-set:hover{background-color:#e9effd;color:#0b49d1}.filter-dropdown-footer-button-clear{color:#dadada}.filter-dropdown-footer-button-clear:hover{background-color:#eee;color:#424242}.filter-dropdown-list-badge{min-width:18px}*{margin:0;font-family:Montserrat,sans-serif}html{scroll-behavior:auto!important}.gm-style-iw-chr,.gm-style-iw-tc{display:none}.gm-style .gm-style-iw-c{border-radius:0}.gm-style-iw{overflow-y:auto!important;overflow-x:hidden!important}.gm-style-iw>div{overflow:visible!important}.infoWindow{overflow:hidden!important}.gm-style-iw-d,.gm-style-iw.gm-style-iw-c{max-height:350px!important}::ng-deep .popover{--bs-popover-border-width: 0;--bs-popover-body-padding-y: 0;--bs-popover-body-padding-x: 0}::ng-deep .popover .popover-arrow{display:none}.c-pointer{cursor:pointer}.ca-scroll-bar{overflow-y:scroll}.ca-scroll-bar::-webkit-scrollbar{width:2px}.ca-scroll-bar::-webkit-scrollbar-thumb{background:#ccc;border-radius:1px}.ca-scroll-bar::-webkit-scrollbar-track{background:#2f2f2f}.dropzone-container{width:100%;height:178px;outline:4px dashed #eeeeee;border-radius:2px;position:relative;cursor:pointer;overflow:hidden}.dropzone-container.split-dropzone{width:auto!important}.dropzone-container.disabled-dropzone{pointer-events:none;opacity:.6;cursor:not-allowed}.dropzone-container:hover{background-color:#eee}.dropzone-container.dropzone-small{width:302px!important}.dropzone-container.expanded{height:458px}.dropzone-container.unSupported{outline-color:#ed9292;outline-offset:-4px;background-color:#fff}.dropzone-container .animation-container{height:auto;width:auto;overflow:hidden;position:relative;transition:transform .5s ease-in-out}.dropzone-container .animation-container .static-lottie-animation{width:100%;height:100%}.dropzone-container .animation-container.expanded{transition:height .5s ease-in-out}.dropzone-container .dropzone-content{gap:10px;position:relative;transition:transform .5s ease-in-out,opacity .5s ease-in-out}.dropzone-container .dropzone-content.column-layout{flex-direction:column;align-items:center;justify-content:center}.dropzone-container .dropzone-content .cancel-unsupported-zone{position:absolute}.dropzone-container .dropzone-content.dropzone-small{width:302px;height:100%}.dropzone-container .dropzone-content.expandedContent{flex-direction:column;transform:scale(1);opacity:1;top:-30px}.dropzone-container .upload-dropzone-unsupported{flex-direction:column;gap:12px;position:relative;width:100%;height:100%}.dropzone-container .svgIcon-document{width:100px;height:100px}.dropzone-container .svgIcon-document.svg-small svg-icon{width:80px!important;height:80px!important}.dropzone-container .svgIcon-document.big{width:200px;height:200px}.dropzone-container .dropzone-text{color:#424242;-webkit-user-select:none;user-select:none;pointer-events:none}.dropzone-container .dropzone-text .upload-dropzone-text{font-size:14px;line-height:18px;align-items:center;font-family:Montserrat,sans-serif;margin-bottom:0}.dropzone-container .dropzone-text .upload-dropzone-text.unsupported-text-big{color:#df3c3c}.dropzone-container .dropzone-text .upload-dropzone-text.max-count{text-align:center}.dropzone-container .dropzone-text .upload-dropzone-text-small{font-family:Montserrat,sans-serif;margin-top:4px;font-size:11px;line-height:14px;align-items:center}.dropzone-container .dropzone-text .upload-dropzone-text-small .media-sizes{font-size:11px;line-height:14px;color:#919191;margin-top:4px}.dropzone-container .cancel-unsupported-zone{position:absolute;top:6px;right:14px;cursor:pointer;width:12.6px;height:12.6px}.dropzone-container .supported-extensions{gap:4px}.dropzone-container .supported-extensions .extension{font-family:Montserrat,sans-serif;width:35px;height:18px;border-radius:1px;font-size:11px;color:#fff;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-transform:uppercase}.dropzone-container .supported-extensions .extension-jpg,.dropzone-container .supported-extensions .extension-jpeg,.dropzone-container .supported-extensions .extension-png{background:#fab15c}.dropzone-container .supported-extensions .extension-pdf{background-color:#e66767}.dropzone-container .supported-extensions .extension-mov,.dropzone-container .supported-extensions .extension-mp4,.dropzone-container .supported-extensions .extension-avi{background-color:#b370f0}.dropzone-container .supported-extensions .extension:hover{transition:height .3s ease-in-out;opacity:1;cursor:auto!important}\n"] }]
|
|
295
295
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { templateRef: [{
|
|
296
296
|
type: ViewChildren,
|
|
297
297
|
args: [TemplateContainerDirective]
|
|
@@ -334,4 +334,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
334
334
|
type: HostListener,
|
|
335
335
|
args: ['click', ['$event']]
|
|
336
336
|
}] } });
|
|
337
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtdXBsb2FkLWRyb3B6b25lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLXVwbG9hZC1maWxlcy9jb21wb25lbnRzL2NhLXVwbG9hZC1kcm9wem9uZS9jYS11cGxvYWQtZHJvcHpvbmUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtdXBsb2FkLWZpbGVzL2NvbXBvbmVudHMvY2EtdXBsb2FkLWRyb3B6b25lL2NhLXVwbG9hZC1kcm9wem9uZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBR04sU0FBUyxFQUNULFlBQVksRUFDWixpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQVNuRSxXQUFXO0FBQ1gsT0FBTyxFQUNILHNCQUFzQixFQUN0QixrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQix3QkFBd0IsR0FDM0IsTUFBTSxtQkFBbUIsQ0FBQztBQUUzQixNQUFN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QkFBbkIsS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUs7Z0JBR04sV0FBVztzQkFEVixNQUFNO2dCQUdHLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFFRyxhQUFhO3NCQUF0QixNQUFNO2dCQWtCQSxrQkFBa0I7c0JBRHhCLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBY25DLE1BQU07c0JBRFosWUFBWTt1QkFBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBb0J6QixVQUFVO3NCQURoQixZQUFZO3VCQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFvQjdCLFdBQVc7c0JBRGpCLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQW9COUIsaUJBQWlCO3NCQUR2QixZQUFZO3VCQUFDLGtCQUFrQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQXVCckMsWUFBWTtzQkFEbEIsWUFBWTt1QkFBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBWWhDLGdCQUFnQjtzQkFEdEIsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBbmd1bGFyU3ZnSWNvbk1vZHVsZSB9IGZyb20gJ2FuZ3VsYXItc3ZnLWljb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmcm9tLCBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExvdHRpZUNvbXBvbmVudCwgcHJvdmlkZUxvdHRpZU9wdGlvbnMgfSBmcm9tICduZ3gtbG90dGllJztcblxuLy9JbnRlcmZhY2VzXG5pbXBvcnQge1xuICAgIElEcm9wQmFja2dyb3VuZEV2ZW50LFxuICAgIElEcm9wWm9uZUNvbmZpZyxcbiAgICBJRmlsZUNvbmZpZyxcbn0gZnJvbSAnLi9pbnRlcmZhY2VzJztcblxuLy9Db25zdGFudHNcbmltcG9ydCB7XG4gICAgRmlsZUFuaW1hdGlvbkNvbnN0YW50cyxcbiAgICBGaWxlSWNvbnNDb25zdGFudHMsXG4gICAgRmlsZUxpbWl0Q29uc3RhbnRzLFxuICAgIEZpbGVNaW1lVHlwZUNvbnN0YW50cyxcbiAgICBMb3R0aWVBbmltYXRpb25Db25zdGFudHMsXG59IGZyb20gJy4vdXRpbHMvY29uc3RhbnRzJztcblxuLy9FbnVtXG5pbXBvcnQge1xuICAgIGVGaWxlRHJvcFpvbmVBY3Rpb24sXG4gICAgZURyb3Bab25lRmlsZVR5cGUsXG4gICAgZUZpbGVVcGxvYWRQYWdlLFxuICAgIGVUZW1wbGF0ZVR5cGUsXG59IGZyb20gJy4vZW51bXMnO1xuXG4vL0RpcmVjdGl2ZVxuaW1wb3J0IHsgVGVtcGxhdGVDb250YWluZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvdGVtcGxhdGUuZGlyZWN0aXZlJztcblxuLy9IZWxwZXJcbmltcG9ydCB7IEZpbGVIZWxwZXIgfSBmcm9tICcuL2hlbHBlcnMnO1xuXG4vL1JvdXRlclxuaW1wb3J0IHsgRHJvcHpvbmVTdmdSb3V0ZSB9IGZyb20gJy4vdXRpbHMvc3ZnLXJvdXRlcy9kcm9wem9uZS1zdmcucm91dGVzJztcblxuLy9QaXBlc1xuaW1wb3J0IHsgTWltZVR5cGVUb0V4dGVuc2lvblBpcGUgfSBmcm9tICcuLi9jYS11cGxvYWQtZmlsZS9waXBlcyc7XG5cbi8vSW50ZXJmYWNlc1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnYXBwLWNhLXVwbG9hZC1kcm9wem9uZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NhLXVwbG9hZC1kcm9wem9uZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2EtdXBsb2FkLWRyb3B6b25lLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEFuZ3VsYXJTdmdJY29uTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICAgICAgVGVtcGxhdGVDb250YWluZXJEaXJlY3RpdmUsXG4gICAgICAgIExvdHRpZUNvbXBvbmVudCxcbiAgICAgICAgTWltZVR5cGVUb0V4dGVuc2lvblBpcGUsXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgcHJvdmlkZUxvdHRpZU9wdGlvbnMoe1xuICAgICAgICAgICAgcGxheWVyOiAoKSA9PiBpbXBvcnQoJ2xvdHRpZS13ZWInKSxcbiAgICAgICAgfSksXG4gICAgXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyh3aW5kb3c6cGFzdGUpJzogJ2hhbmRsZVBhc3RlKCRldmVudCknLFxuICAgIH0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENhVXBsb2FkRHJvcHpvbmVDb21wb25lbnQge1xuICAgIEBWaWV3Q2hpbGRyZW4oVGVtcGxhdGVDb250YWluZXJEaXJlY3RpdmUpXG4gICAgdGVtcGxhdGVSZWYhOiBRdWVyeUxpc3Q8VGVtcGxhdGVDb250YWluZXJEaXJlY3RpdmU+O1xuICAgIEBWaWV3Q2hpbGQoJ2Ryb3Bab25lJykgZHJvcFpvbmUhOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgQElucHV0KCkgc2V0IGRyb3Bab25lQ29uZmlnKGRhdGE6IElEcm9wWm9uZUNvbmZpZykge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2Ryb3Bab25lQ29uZmlnID0gZGF0YTtcblxuICAgICAgICAgICAgLy9JY29uc1xuICAgICAgICAgICAgdGhpcy5nZXRJY29ucygpO1xuXG4gICAgICAgICAgICAvL1N1cHBvcnRlZCBmaWxlc1xuICAgICAgICAgICAgdGhpcy5zdXBwb3J0ZWRGaWxlcygpO1xuXG4gICAgICAgICAgICAvL0Ryb3B6b25lIHRleHRcbiAgICAgICAgICAgIHRoaXMudXBkYXRlRHJvcFpvbmVUZXh0KCk7XG5cbiAgICAgICAgICAgIC8vTG90dGllXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUxvdHRpZU9wdGlvbnMoKTtcblxuICAgICAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH0sIDApO1xuICAgIH1cbiAgICBASW5wdXQoKSBpc0Ryb3B6b25lU2hvd25JbkNyb3A6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoKSBjdXN0b21XaWR0aCE6IHN0cmluZztcblxuICAgIEBJbnB1dCgpIGZpbGVzOiBJRmlsZUNvbmZpZ1tdID0gW107XG5cbiAgICBAT3V0cHV0KClcbiAgICBvbkZpbGVFdmVudDogRXZlbnRFbWl0dGVyPHsgZmlsZXM6IElGaWxlQ29uZmlnW107IGFjdGlvbjogc3RyaW5nIH0+ID1cbiAgICAgICAgbmV3IEV2ZW50RW1pdHRlcjx7IGZpbGVzOiBJRmlsZUNvbmZpZ1tdOyBhY3Rpb246IHN0cmluZyB9PigpO1xuICAgIEBPdXRwdXQoKSBvbkRyb3BCYWNrZ3JvdW5kOiBFdmVudEVtaXR0ZXI8SURyb3BCYWNrZ3JvdW5kRXZlbnQ+ID1cbiAgICAgICAgbmV3IEV2ZW50RW1pdHRlcjxJRHJvcEJhY2tncm91bmRFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgY2xvc2VEcm9wem9uZSA9IG5ldyBFdmVudEVtaXR0ZXI8e30+KCk7XG5cbiAgICBwdWJsaWMgX2Ryb3Bab25lQ29uZmlnITogSURyb3Bab25lQ29uZmlnO1xuICAgIHB1YmxpYyBpc1Nob3duRHJvcHpvbmVGb2N1czogYm9vbGVhbiA9IGZhbHNlO1xuICAgIHB1YmxpYyBpc0ZpbGVEcm9wOiBib29sZWFuID0gZmFsc2U7XG4gICAgcHVibGljIGlzU3VwcG9ydGVkVHlwZTogYm9vbGVhbiA9IGZhbHNlO1xuICAgIHB1YmxpYyBkcm9wWm9uZVRleHQ6IHN0cmluZyA9ICcnO1xuICAgIHB1YmxpYyBpc0Ryb3B6b25lRXhwYW5kZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBwdWJsaWMgaWNvblNyYzogc3RyaW5nID0gJyc7XG4gICAgcHVibGljIGRyb3Bab25lQXZhaWxhYmxlRmlsZXM6IHN0cmluZ1tdID0gW107XG4gICAgcHVibGljIGxpbWl0OiBudW1iZXIgPSAwO1xuXG4gICAgcHVibGljIGxvdHRpZU9wdGlvbnMgPSBMb3R0aWVBbmltYXRpb25Db25zdGFudHMuREVGQVVMVF9MT1RUSUU7XG4gICAgcHVibGljIGRyb3B6b25lU3ZnUm91dGUgPSBEcm9wem9uZVN2Z1JvdXRlLmNsb3NlO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gICAgQEhvc3RMaXN0ZW5lcignYm9keTpkcmFnbGVhdmUnLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvbkRyYWdMZWF2ZVdpbmRvd3MoZXZlbnQ6IERyYWdFdmVudCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgdGhpcy5pc1Nob3duRHJvcHpvbmVGb2N1cyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmlzRHJvcHpvbmVFeHBhbmRlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmlzRmlsZURyb3AgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5vbkRyb3BCYWNrZ3JvdW5kLmVtaXQoe1xuICAgICAgICAgICAgYWN0aW9uOiBlRmlsZURyb3Bab25lQWN0aW9uLkRSQUdMRUFWRSxcbiAgICAgICAgICAgIHZhbHVlOiBmYWxzZSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZHJvcCcsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uRHJvcChldmVudDogRHJhZ0V2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLmlzRHJvcHpvbmVFeHBhbmRlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmlzU2hvd25Ecm9wem9uZUZvY3VzID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaXNGaWxlRHJvcCA9IHRydWU7XG5cbiAgICAgICAgdGhpcy5vbkRyb3BCYWNrZ3JvdW5kLmVtaXQoe1xuICAgICAgICAgICAgYWN0aW9uOiBlRmlsZURyb3Bab25lQWN0aW9uLkRST1AsXG4gICAgICAgICAgICB2YWx1ZTogZmFsc2UsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmIChldmVudC5kYXRhVHJhbnNmZXI/LmZpbGVzKSB7XG4gICAgICAgICAgICB0aGlzLm9uRmlsZVVwbG9hZChldmVudC5kYXRhVHJhbnNmZXIuZmlsZXMpO1xuICAgICAgICAgICAgdGhpcy5pc0ZpbGVEcm9wID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkcmFnb3ZlcicsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uRHJhZ092ZXIoZXZlbnQ6IERyYWdFdmVudCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLmlzU2hvd25Ecm9wem9uZUZvY3VzID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5pc0Ryb3B6b25lRXhwYW5kZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLmlzRmlsZURyb3AgPSB0cnVlO1xuICAgICAgICB0aGlzLm9uRHJvcEJhY2tncm91bmQuZW1pdCh7XG4gICAgICAgICAgICBhY3Rpb246IGVGaWxlRHJvcFpvbmVBY3Rpb24uRFJBR09WRVIsXG4gICAgICAgICAgICB2YWx1ZTogdHJ1ZSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMubG90dGllT3B0aW9ucyAmJiAhdGhpcy5sb3R0aWVPcHRpb25zLmF1dG9wbGF5KSB7XG4gICAgICAgICAgICB0aGlzLmxvdHRpZU9wdGlvbnMgPSB7XG4gICAgICAgICAgICAgICAgLi4udGhpcy5sb3R0aWVPcHRpb25zLFxuICAgICAgICAgICAgICAgIGF1dG9wbGF5OiB0cnVlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2RyYWdsZWF2ZScsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uRHJhZ0xlYXZlKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMuaXNTaG93bkRyb3B6b25lRm9jdXMgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pc0ZpbGVEcm9wID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaXNEcm9wem9uZUV4cGFuZGVkID0gdHJ1ZTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuaXNTaG93bkRyb3B6b25lRm9jdXMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmlzRmlsZURyb3AgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLmlzRHJvcHpvbmVFeHBhbmRlZCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sIDEwMCk7XG4gICAgICAgIHRoaXMub25Ecm9wQmFja2dyb3VuZC5lbWl0KHtcbiAgICAgICAgICAgIGFjdGlvbjogZUZpbGVEcm9wWm9uZUFjdGlvbi5EUkFHTEVBVkUsXG4gICAgICAgICAgICB2YWx1ZTogZmFsc2UsXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpkcmFnZW50ZXInLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvbldpbmRvd0RyYWdFbnRlcihldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLmlzRmlsZURyb3AgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pc1Nob3duRHJvcHpvbmVGb2N1cyA9IHRydWU7XG4gICAgICAgIHRoaXMuaXNEcm9wem9uZUV4cGFuZGVkID0gdHJ1ZTtcblxuICAgICAgICBjb25zdCBlRmlsZVR5cGUgPSB0aGlzLl9kcm9wWm9uZUNvbmZpZz8uY29uZmlnPy5kcm9wem9uZVxuICAgICAgICAgICAgPy5kcm9wWm9uZVR5cGUgYXMgZURyb3Bab25lRmlsZVR5cGU7XG4gICAgICAgIGNvbnN0IGFuaW1hdGlvblBhdGggPSBGaWxlQW5pbWF0aW9uQ29uc3RhbnRzLkFOSU1BVElPTlNbZUZpbGVUeXBlXTtcblxuICAgICAgICBpZiAoYW5pbWF0aW9uUGF0aCkge1xuICAgICAgICAgICAgdGhpcy5sb3R0aWVPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgIHJlbmRlcmVyOiAnc3ZnJyxcbiAgICAgICAgICAgICAgICBhdXRvcGxheTogIXRoaXMuaXNTaG93bkRyb3B6b25lRm9jdXMsXG4gICAgICAgICAgICAgICAgbG9vcDogZmFsc2UsXG4gICAgICAgICAgICAgICAgcGF0aDogYW5pbWF0aW9uUGF0aCxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCd3aW5kb3c6ZHJvcCcsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uV2luZG93RHJvcChldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNEcm9wem9uZUV4cGFuZGVkID0gZmFsc2U7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLm9uRHJvcEJhY2tncm91bmQuZW1pdCh7XG4gICAgICAgICAgICBhY3Rpb246IGVGaWxlRHJvcFpvbmVBY3Rpb24uRFJPUCxcbiAgICAgICAgICAgIHZhbHVlOiBmYWxzZSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyB0cmlnZ2VyRmlsZUlucHV0KGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGlmICh0aGlzLmlzTWF4Q291bnRSZWFjaGVkKCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmRyb3Bab25lLm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SWNvbnMoKSB7XG4gICAgICAgIHRoaXMuaWNvblNyYyA9XG4gICAgICAgICAgICBGaWxlSWNvbnNDb25zdGFudHMuSUNPTlNbXG4gICAgICAgICAgICAgICAgdGhpcy5fZHJvcFpvbmVDb25maWc/LmNvbmZpZz8uZHJvcHpvbmVcbiAgICAgICAgICAgICAgICAgICAgPy5kcm9wWm9uZVR5cGUgYXMgZURyb3Bab25lRmlsZVR5cGVcbiAgICAgICAgICAgIF07XG4gICAgfVxuXG4gICAgcHVibGljIHN1cHBvcnRlZEZpbGVzKCkge1xuICAgICAgICB0aGlzLmRyb3Bab25lQXZhaWxhYmxlRmlsZXMgPVxuICAgICAgICAgICAgRmlsZU1pbWVUeXBlQ29uc3RhbnRzLlNVUE9SVEVEX01JTUVfVFlQRV9NQVBbXG4gICAgICAgICAgICAgICAgdGhpcy5fZHJvcFpvbmVDb25maWc/LmNvbmZpZz8uZHJvcHpvbmVcbiAgICAgICAgICAgICAgICAgICAgPy5kcm9wWm9uZVR5cGUgYXMgZURyb3Bab25lRmlsZVR5cGVcbiAgICAgICAgICAgIF07XG4gICAgfVxuXG4gICAgLy9saW1pdCBmaWxlc1xuICAgIHB1YmxpYyBtYXhGaWxlc0FsbG93ZWQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIEZpbGVMaW1pdENvbnN0YW50cy5MSU1JVFtcbiAgICAgICAgICAgIHRoaXMuX2Ryb3Bab25lQ29uZmlnPy5jb25maWc/LmRyb3B6b25lXG4gICAgICAgICAgICAgICAgPy5kcm9wWm9uZVBhZ2VzIGFzIGVGaWxlVXBsb2FkUGFnZVxuICAgICAgICBdO1xuICAgIH1cblxuICAgIC8vIFRPRE86IEJvZ2RhbiAtIG1vdmUgdG8gZ2V0dGVyIHRvIHVzZSBwcm9wZXJ0eSBpbnN0ZWFkIG9mIG1ldGhvZCB0byBhdm9pZCB1bm5lY2Vzc2FyeSBjaGFuZ2UgZGV0ZWN0aW9uIHRyaWdnZXJzXG4gICAgcHVibGljIGlzTWF4Q291bnRSZWFjaGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICB0aGlzLmxpbWl0ID1cbiAgICAgICAgICAgIEZpbGVMaW1pdENvbnN0YW50cy5MSU1JVFtcbiAgICAgICAgICAgICAgICB0aGlzLl9kcm9wWm9uZUNvbmZpZz8uY29uZmlnPy5kcm9wem9uZVxuICAgICAgICAgICAgICAgICAgICA/LmRyb3Bab25lUGFnZXMgYXMgZUZpbGVVcGxvYWRQYWdlXG4gICAgICAgICAgICBdIHx8IDA7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbGVzLmxlbmd0aCA+PSB0aGlzLmxpbWl0O1xuICAgIH1cblxuICAgIC8vRmlsZXNcbiAgICBwdWJsaWMgaGFuZGxlRmlsZUNoYW5nZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaW5wdXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICAgICAgaWYgKGlucHV0LmZpbGVzKSB7XG4gICAgICAgICAgICB0aGlzLm9uRmlsZVVwbG9hZChpbnB1dC5maWxlcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25GaWxlVXBsb2FkKGZpbGVzOiBGaWxlTGlzdCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgICAgICBjb25zdCBmaWxlQXJyYXkgPSBBcnJheS5mcm9tKGZpbGVzKTtcblxuICAgICAgICBjb25zdCB1cGxvYWRPYnNlcnZhYmxlcyA9IGZpbGVBcnJheS5tYXAoKGZpbGUsIGluZGV4KSA9PlxuICAgICAgICAgICAgdGhpcy5hZGRGaWxlKGZpbGUsIGluZGV4ID09PSBmaWxlQXJyYXkubGVuZ3RoIC0gMSlcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4gZnJvbSh1cGxvYWRPYnNlcnZhYmxlcykucGlwZShcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgdXBsb2FkaW5nIGZpbGVzOicsIGVycm9yKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG1hcCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ0FsbCBmaWxlcyB1cGxvYWRlZCBzdWNjZXNzZnVsbHknKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlc2V0RHJvcHpvbmVWaWV3KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzU3VwcG9ydGVkVHlwZSA9IGZhbHNlO1xuXG4gICAgICAgIGV2ZW50Py5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG5cbiAgICAvL1RlbXBsYXRlXG4gICAgcHVibGljIGdldFRlbXBsYXRlKHRlbXBsYXRlOiBlVGVtcGxhdGVUeXBlKTogVGVtcGxhdGVSZWY8YW55PiB7XG4gICAgICAgIGNvbnN0IHRlbXBsYXRlUmVmOiBUZW1wbGF0ZUNvbnRhaW5lckRpcmVjdGl2ZSB8IHVuZGVmaW5lZCA9XG4gICAgICAgICAgICB0aGlzLnRlbXBsYXRlUmVmPy5maW5kKCh0ZW1wKSA9PiB0ZW1wLmlkID09PSB0ZW1wbGF0ZSk7XG5cbiAgICAgICAgaWYgKCF0ZW1wbGF0ZVJlZikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmF2YWlsYWJsZSB0ZW1wbGF0ZSEnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0ZW1wbGF0ZVJlZj8udGVtcGxhdGU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhZGRGaWxlKGZpbGU6IEZpbGUsIGVtaXRFdmVudD86IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgaWYgKCFmaWxlKSByZXR1cm47XG5cbiAgICAgICAgY29uc3QgeyB0eXBlIH0gPSBmaWxlO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgLy9UT0RPOiBCb2dkYW4gLSBnZXQgZmlsZSBleHRlbnNpb24gZnJvbSBtZXRhZGF0YSwgbm90IGZpbGUgbmFtZSBleHRlbnNpb25cbiAgICAgICAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSBGaWxlSGVscGVyLmdldEZpbGVFeHRlbnNpb24odHlwZSk7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgIUZpbGVIZWxwZXIuaXNTdXBwb3J0ZWRFeHRlbnNpb24oXG4gICAgICAgICAgICAgICAgICAgIGZpbGUudHlwZSxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kcm9wWm9uZUF2YWlsYWJsZUZpbGVzXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAhdGhpcy5fZHJvcFpvbmVDb25maWc/LmNvbmZpZz8uZHJvcHpvbmVPcHRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgID8uZGlzYWJsZVVuc3VwcG9ydGVkUHJldmlld1xuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmlzU3VwcG9ydGVkVHlwZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLmlzU3VwcG9ydGVkVHlwZSA9IGZhbHNlO1xuXG4gICAgICAgICAgICBGaWxlSGVscGVyLmdldEJsb2IoZmlsZSkuc3Vic2NyaWJlKHtcbiAgICAgICAgICAgICAgICBuZXh0OiAoYmxvYkNvbnRlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYmxvYlVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYkNvbnRlbnQpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbGVzID0gW1xuICAgICAgICAgICAgICAgICAgICAgICAgLi4udGhpcy5maWxlcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlTmFtZTogZmlsZS5uYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogYmxvYlVybCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRlbnNpb246IGZpbGVFeHRlbnNpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3VpZDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplOiBmaWxlLnNpemUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhbEZpbGU6IGJsb2JDb250ZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgXTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoZW1pdEV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uRmlsZUV2ZW50LmVtaXQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVzOiB0aGlzLmZpbGVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbjogZUZpbGVEcm9wWm9uZUFjdGlvbi5BREQsXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZXJyb3I6IChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciByZWFkaW5nIGZpbGU6JywgZXJyb3IpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NhbnQgdXBsb2FkIGZpbGUnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vTG90dGllXG4gICAgcHJpdmF0ZSB1cGRhdGVMb3R0aWVPcHRpb25zKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBlRmlsZVR5cGUgPSB0aGlzLl9kcm9wWm9uZUNvbmZpZz8uY29uZmlnPy5kcm9wem9uZVxuICAgICAgICAgICAgPy5kcm9wWm9uZVR5cGUgYXMgZURyb3Bab25lRmlsZVR5cGU7XG4gICAgICAgIGNvbnN0IGFuaW1hdGlvblBhdGggPSBGaWxlQW5pbWF0aW9uQ29uc3RhbnRzLkFOSU1BVElPTlNbZUZpbGVUeXBlXTtcblxuICAgICAgICBpZiAoYW5pbWF0aW9uUGF0aCkge1xuICAgICAgICAgICAgdGhpcy5sb3R0aWVPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgIHJlbmRlcmVyOiAnc3ZnJyxcbiAgICAgICAgICAgICAgICBhdXRvcGxheTogIXRoaXMuaXNTaG93bkRyb3B6b25lRm9jdXMsXG4gICAgICAgICAgICAgICAgbG9vcDogZmFsc2UsXG4gICAgICAgICAgICAgICAgcGF0aDogYW5pbWF0aW9uUGF0aCxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL0Ryb3B6b25lIHRleHRcbiAgICBwcml2YXRlIHVwZGF0ZURyb3Bab25lVGV4dCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZHJvcFpvbmVUZXh0TWFwOiB7IFtrZXkgaW4gZURyb3Bab25lRmlsZVR5cGVdPzogc3RyaW5nIH0gPSB7XG4gICAgICAgICAgICBbZURyb3Bab25lRmlsZVR5cGUuRklMRVNdOiAnRklMRVMnLFxuICAgICAgICAgICAgW2VEcm9wWm9uZUZpbGVUeXBlLk1FRElBXTogJ01FRElBJyxcbiAgICAgICAgICAgIFtlRHJvcFpvbmVGaWxlVHlwZS5JTUFHRV06ICdJTUFHRScsXG4gICAgICAgICAgICBbZURyb3Bab25lRmlsZVR5cGUuTE9HT106ICdJTUFHRScsXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5kcm9wWm9uZVRleHQgPVxuICAgICAgICAgICAgZHJvcFpvbmVUZXh0TWFwW1xuICAgICAgICAgICAgICAgIHRoaXMuX2Ryb3Bab25lQ29uZmlnPy5jb25maWc/LmRyb3B6b25lXG4gICAgICAgICAgICAgICAgICAgID8uZHJvcFpvbmVUeXBlIGFzIGVEcm9wWm9uZUZpbGVUeXBlXG4gICAgICAgICAgICBdIHx8ICdGSUxFIElNUE9SVCBGQUlMRUQnO1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICBjbGFzcz1cImRyb3B6b25lLWNvbnRhaW5lciBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIlxuICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgJ3NwbGl0LWRyb3B6b25lJzogaXNEcm9wem9uZVNob3duSW5Dcm9wLFxuICAgICAgICB1blN1cHBvcnRlZDogaXNTdXBwb3J0ZWRUeXBlLFxuICAgICAgICBleHBhbmRlZDogaXNEcm9wem9uZUV4cGFuZGVkICYmICFpc1N1cHBvcnRlZFR5cGUsXG4gICAgICAgICdkaXNhYmxlZC1kcm9wem9uZSc6IGZpbGVzLmxlbmd0aCA+PSB0aGlzLmxpbWl0ICYmIHRoaXMubGltaXQgPiAwLFxuICAgIH1cIlxuICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgd2lkdGg6XG4gICAgICAgICAgICBmaWxlcy5sZW5ndGggPT09IDBcbiAgICAgICAgICAgICAgICA/IGN1c3RvbVdpZHRoIHx8ICc0NDhweCdcbiAgICAgICAgICAgICAgICA6IGZpbGVzLmxlbmd0aCA9PT0gMVxuICAgICAgICAgICAgICAgICAgPyAnMjk2cHgnXG4gICAgICAgICAgICAgICAgICA6IGZpbGVzLmxlbmd0aCA9PT0gMlxuICAgICAgICAgICAgICAgICAgICA/ICcxNDhweCdcbiAgICAgICAgICAgICAgICAgICAgOiBmaWxlcy5sZW5ndGggPT09IDNcbiAgICAgICAgICAgICAgICAgICAgICA/ICcxNDhweCdcbiAgICAgICAgICAgICAgICAgICAgICA6ICcxNDhweCcsXG4gICAgfVwiXG4+XG4gICAgPCEtLSBAZm9yIChpdGVtIG9mIF9kcm9wWm9uZUNvbmZpZ0FycmF5OyB0cmFjayAkaW5kZXgpIHsgLS0+XG4gICAgQGlmIChfZHJvcFpvbmVDb25maWcpIHtcbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJkcm9wem9uZS1jb250ZW50IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlclwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgJ3VwbG9hZC1kcm9wem9uZS11bnN1cHBvcnRlZCc6IGlzU3VwcG9ydGVkVHlwZSxcbiAgICAgICAgICAgICAgICBleHBhbmRlZENvbnRlbnQ6IGlzRHJvcHpvbmVFeHBhbmRlZCxcbiAgICAgICAgICAgICAgICAnY29sdW1uLWxheW91dCc6IGZpbGVzLmxlbmd0aCA+PSAyLFxuICAgICAgICAgICAgfVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICAgICAgICBnZXRUZW1wbGF0ZShfZHJvcFpvbmVDb25maWcudGVtcGxhdGUpO1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7ICRpbXBsaWNpdDogX2Ryb3Bab25lQ29uZmlnPy5jb25maWcgfVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbiAgICA8IS0tIH0gLS0+XG48L2Rpdj5cblxuPCEtLS0tLS0tLS0tLS0tRG9jdW1lbnQgdGVtcGxhdGUtLS0tLS0tLS0tLS0tLT5cbjxuZy10ZW1wbGF0ZSB0ZW1wbGF0ZUNvbnRhaW5lciBpZD1cImRvY3VtZW50c1RlbXBsYXRlXCIgbGV0LWNvbmZpZz5cbiAgICA8IS0tU1ZHIElDT04tLT5cbiAgICBAaWYgKCFpc1Nob3duRHJvcHpvbmVGb2N1cyAmJiAhaXNEcm9wem9uZUV4cGFuZGVkKSB7XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkcm9wem9uZUljb25UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgIH1cblxuICAgIDwhLS1Mb3R0aWUgYW5pbWF0aW9uLS0+XG4gICAgQGlmICgoaXNEcm9wem9uZUV4cGFuZGVkIHx8IGlzU2hvd25Ecm9wem9uZUZvY3VzKSAmJiAhaXNTdXBwb3J0ZWRUeXBlKSB7XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwibG90dGllQW5pbWF0aW9uVGVtcGxhdGVcIlxuICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgfVxuXG4gICAgPCEtLUNvbnRlbnQgZm9yIHN1cHBvcnRlZCBhbmQgdW5zdXBwb3J0ZWQgdHlwZXMtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZHJvcHpvbmVUZXh0VGVtcGxhdGVcIj4gPC9uZy1jb250YWluZXI+XG5cbiAgICA8IS0tU3VwcG9ydGVkIGV4dGVuc2lvbnMgZm9yIHVuc3VwcG9ydGVkIHR5cGUtLT5cbiAgICBAaWYgKGlzU3VwcG9ydGVkVHlwZSkge1xuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cInN1cHBvcnRlZEV4dGVuc2lvbnNUZW1wbGF0ZVwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICB9XG5cbiAgICA8IS0tRklMRSBJTlBVVC0tPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmaWxlSW5wdXRUZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGNvbmZpZyB9XCJcbiAgICA+PC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48IS0tLS0tLS0tLS0tLS1NZWRpYSB0ZW1wbGF0ZS0tLS0tLS0tLS0tLS0tPlxuPG5nLXRlbXBsYXRlIHRlbXBsYXRlQ29udGFpbmVyIGlkPVwibWVkaWFUZW1wbGF0ZVwiIGxldC1jb25maWc+XG4gICAgPCEtLVNWRyBJQ09OLS0+XG4gICAgQGlmICghaXNTaG93bkRyb3B6b25lRm9jdXMgJiYgIWlzRHJvcHpvbmVFeHBhbmRlZCkge1xuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZHJvcHpvbmVJY29uVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICB9XG5cbiAgICA8IS0tTG90dGllIGFuaW1hdGlvbi0tPlxuICAgIEBpZiAoKGlzRHJvcHpvbmVFeHBhbmRlZCB8fCBpc1Nob3duRHJvcHpvbmVGb2N1cykgJiYgIWlzU3VwcG9ydGVkVHlwZSkge1xuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImxvdHRpZUFuaW1hdGlvblRlbXBsYXRlXCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIH1cblxuICAgIDwhLS1Db250ZW50IGZvciBzdXBwb3J0ZWQgYW5kIHVuc3VwcG9ydGVkIHR5cGVzLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRyb3B6b25lVGV4dFRlbXBsYXRlXCI+IDwvbmctY29udGFpbmVyPlxuXG4gICAgPCEtLVN1cHBvcnRlZCBleHRlbnNpb25zIGZvciB1bnN1cHBvcnRlZCB0eXBlLS0+XG4gICAgQGlmIChpc1N1cHBvcnRlZFR5cGUpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzdXBwb3J0ZWRFeHRlbnNpb25zVGVtcGxhdGVcIlxuICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgfVxuXG4gICAgPCEtLUZJTEUgSU5QVVQtLT5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiZmlsZUlucHV0VGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBjb25maWcgfVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPCEtLS0tLS0tLS0tLS0tSW1hZ2UgdGVtcGxhdGUtLS0tLS0tLS0tLS0tLT5cbjxuZy10ZW1wbGF0ZSB0ZW1wbGF0ZUNvbnRhaW5lciBpZD1cImltYWdlVGVtcGxhdGVcIiBsZXQtY29uZmlnPlxuICAgIDwhLS1TVkcgSUNPTi0tPlxuICAgIEBpZiAoIWlzU2hvd25Ecm9wem9uZUZvY3VzICYmICFpc0Ryb3B6b25lRXhwYW5kZWQpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRyb3B6b25lSWNvblRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgfVxuXG4gICAgPCEtLUxvdHRpZSBhbmltYXRpb24tLT5cbiAgICBAaWYgKChpc0Ryb3B6b25lRXhwYW5kZWQgfHwgaXNTaG93bkRyb3B6b25lRm9jdXMpICYmICFpc1N1cHBvcnRlZFR5cGUpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsb3R0aWVBbmltYXRpb25UZW1wbGF0ZVwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICB9XG5cbiAgICA8IS0tQ29udGVudCBmb3Igc3VwcG9ydGVkIGFuZCB1bnN1cHBvcnRlZCB0eXBlcy0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkcm9wem9uZVRleHRUZW1wbGF0ZVwiPiA8L25nLWNvbnRhaW5lcj5cblxuICAgIDwhLS1TdXBwb3J0ZWQgZXh0ZW5zaW9ucyBmb3IgdW5zdXBwb3J0ZWQgdHlwZS0tPlxuICAgIEBpZiAoaXNTdXBwb3J0ZWRUeXBlKSB7XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwic3VwcG9ydGVkRXh0ZW5zaW9uc1RlbXBsYXRlXCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIH1cblxuICAgIDwhLS1GSUxFIElOUFVULS0+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImZpbGVJbnB1dFRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29uZmlnIH1cIlxuICAgID48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjwhLS0tLS0tLS0tLS0tLUltYWdlIENyb3AgdGVtcGxhdGUtLS0tLS0tLS0tLS0tLT5cbjxuZy10ZW1wbGF0ZSB0ZW1wbGF0ZUNvbnRhaW5lciBpZD1cImltYWdlQ3JvcFRlbXBsYXRlXCIgbGV0LWNvbmZpZz5cbiAgICA8IS0tU1ZHIElDT04tLT5cbiAgICBAaWYgKCFpc1Nob3duRHJvcHpvbmVGb2N1cyAmJiAhaXNEcm9wem9uZUV4cGFuZGVkKSB7XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkcm9wem9uZUljb25UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgIH1cblxuICAgIDwhLS1Mb3R0aWUgYW5pbWF0aW9uLS0+XG4gICAgQGlmICgoaXNEcm9wem9uZUV4cGFuZGVkIHx8IGlzU2hvd25Ecm9wem9uZUZvY3VzKSAmJiAhaXNTdXBwb3J0ZWRUeXBlKSB7XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwibG90dGllQW5pbWF0aW9uVGVtcGxhdGVcIlxuICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgfVxuXG4gICAgPCEtLUNvbnRlbnQgZm9yIHN1cHBvcnRlZCBhbmQgdW5zdXBwb3J0ZWQgdHlwZXMtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZHJvcHpvbmVUZXh0VGVtcGxhdGVcIj4gPC9uZy1jb250YWluZXI+XG5cbiAgICA8IS0tU3VwcG9ydGVkIGV4dGVuc2lvbnMgZm9yIHVuc3VwcG9ydGVkIHR5cGUtLT5cbiAgICBAaWYgKGlzU3VwcG9ydGVkVHlwZSkge1xuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cInN1cHBvcnRlZEV4dGVuc2lvbnNUZW1wbGF0ZVwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICB9XG5cbiAgICA8IS0tRklMRSBJTlBVVC0tPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmaWxlSW5wdXRUZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGNvbmZpZyB9XCJcbiAgICA+PC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48IS0tLS0tLS0tLS0tLS1Mb2dvIHRlbXBsYXRlLS0tLS0tLS0tLS0tLS0+XG48bmctdGVtcGxhdGUgdGVtcGxhdGVDb250YWluZXIgaWQ9XCJsb2dvVGVtcGxhdGVcIiBsZXQtY29uZmlnPlxuICAgIDwhLS1TVkcgSUNPTi0tPlxuICAgIEBpZiAoIWlzU2hvd25Ecm9wem9uZUZvY3VzICYmICFpc0Ryb3B6b25lRXhwYW5kZWQpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRyb3B6b25lSWNvblRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgfVxuXG4gICAgPCEtLUxvdHRpZSBhbmltYXRpb24tLT5cbiAgICBAaWYgKChpc0Ryb3B6b25lRXhwYW5kZWQgfHwgaXNTaG93bkRyb3B6b25lRm9jdXMpICYmICFpc1N1cHBvcnRlZFR5cGUpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsb3R0aWVBbmltYXRpb25UZW1wbGF0ZVwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICB9XG5cbiAgICA8IS0tQ29udGVudCBmb3Igc3VwcG9ydGVkIGFuZCB1bnN1cHBvcnRlZCB0eXBlcy0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkcm9wem9uZVRleHRUZW1wbGF0ZVwiPiA8L25nLWNvbnRhaW5lcj5cblxuICAgIDwhLS1TdXBwb3J0ZWQgZXh0ZW5zaW9ucyBmb3IgdW5zdXBwb3J0ZWQgdHlwZS0tPlxuICAgIEBpZiAoaXNTdXBwb3J0ZWRUeXBlKSB7XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwic3VwcG9ydGVkRXh0ZW5zaW9uc1RlbXBsYXRlXCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIH1cblxuICAgIDwhLS1GSUxFIElOUFVULS0+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImZpbGVJbnB1dFRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29uZmlnIH1cIlxuICAgID48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjwhLS0tLS0tLS0tLS0tLS1DT01NT04tVEVNUExBVEUtLS0tLS0tLS0tLS0tLT5cblxuPCEtLS0tLS1JTlBVVC0tLS0tLS0+XG48bmctdGVtcGxhdGUgI2ZpbGVJbnB1dFRlbXBsYXRlIGxldC1jb25maWc+XG4gICAgPGlucHV0XG4gICAgICAgICNkcm9wWm9uZVxuICAgICAgICBbaWRdPVwiJ2Ryb3Bab25lJyArIChjb25maWcuZHJvcHpvbmVPcHRpb24/LmRyb3B6b25lSW5kZXggfHwgMClcIlxuICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgIFthY2NlcHRdPVwiY29uZmlnLmRyb3B6b25lPy5kcm9wWm9uZUF2YWlsYWJsZUZpbGVzXCJcbiAgICAgICAgW211bHRpcGxlXT1cImNvbmZpZy5kcm9wem9uZT8ubXVsdGlwbGVcIlxuICAgICAgICAoY2hhbmdlKT1cImhhbmRsZUZpbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIHN0eWxlPVwiZGlzcGxheTogbm9uZVwiXG4gICAgLz5cbjwvbmctdGVtcGxhdGU+XG5cbjwhLS1EUk9QWk9ORV9URVhULS0+XG48bmctdGVtcGxhdGUgI2Ryb3B6b25lVGV4dFRlbXBsYXRlPlxuICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJkcm9wem9uZS10ZXh0IGQtZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlclwiXG4gICAgPlxuICAgICAgICA8cFxuICAgICAgICAgICAgY2xhc3M9XCJ1cGxvYWQtZHJvcHpvbmUtdGV4dFwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgJ3Vuc3VwcG9ydGVkLXRleHQtYmlnJzogaXNTdXBwb3J0ZWRUeXBlLFxuICAgICAgICAgICAgICAgICdtYXgtY291bnQnOiBpc01heENvdW50UmVhY2hlZCgpLFxuICAgICAgICAgICAgfVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIEBpZiAoaXNNYXhDb3VudFJlYWNoZWQoKSkge1xuICAgICAgICAgICAgICAgIE1BWCBDT1VOVCBSRUFDSEVEXG4gICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibm9ybWFsVGV4dFwiPiA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9ybWFsVGV4dD5cbiAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICBpc1N1cHBvcnRlZFR5cGVcbiAgICAgICAgICAgICAgICAgICAgICAgID8gJ0lOVkFMSUQgRklMRSBUWVBFJ1xuICAgICAgICAgICAgICAgICAgICAgICAgOiAnRFJBRyAnICsgZHJvcFpvbmVUZXh0XG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAhKGlzU3VwcG9ydGVkVHlwZSB8fCAoZmlsZXMgJiYgZmlsZXMubGVuZ3RoKSkgPyAnIEhFUkUnIDogJydcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIEBpZiAoX2Ryb3Bab25lQ29uZmlnPy50ZW1wbGF0ZSA9PT0gJ21lZGlhVGVtcGxhdGUnKSB7XG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJtZWRpYS1zaXplc1wiPm1heCBmaWxlIHNpemUgNTBtYjwvcD5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9wPlxuICAgICAgICBAaWYgKCFpc0Ryb3B6b25lRXhwYW5kZWQpIHtcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidXBsb2FkLWRyb3B6b25lLXRleHQtc21hbGxcIj5cbiAgICAgICAgICAgICAgICBAaWYgKGlzTWF4Q291bnRSZWFjaGVkKCkpIHtcbiAgICAgICAgICAgICAgICAgICAge3sgZmlsZXMubGVuZ3RoIH19IEZJTEVTIElNUE9SVEVEXG4gICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmb3JtYXRUZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2Zvcm1hdFRleHQ+XG4gICAgICAgICAgICAgICAgICAgIHt7XG4gICAgICAgICAgICAgICAgICAgICAgICBpc1N1cHBvcnRlZFR5cGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICdTVVBQT1JURUQgRk9STUFUUydcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICdPUiBDTElDSyBUTyBBREQnXG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPCEtLS0tLS1JQ09OLS0tLS0tLS0+XG48bmctdGVtcGxhdGUgI2Ryb3B6b25lSWNvblRlbXBsYXRlPlxuICAgIEBpZiAoIWlzU3VwcG9ydGVkVHlwZSAmJiAhaXNGaWxlRHJvcCkge1xuICAgICAgICA8c3ZnLWljb25cbiAgICAgICAgICAgIFtzcmNdPVwiaWNvblNyY1wiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJmaWxlcy5sZW5ndGggPCAyID8gJ3N2Z0ljb24tZG9jdW1lbnQnIDogJ3N2Zy1zbWFsbCdcIlxuICAgICAgICA+XG4gICAgICAgIDwvc3ZnLWljb24+XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIDxzdmctaWNvblxuICAgICAgICAgICAgW3NyY109XCJkcm9wem9uZVN2Z1JvdXRlXCJcbiAgICAgICAgICAgIGNsYXNzPVwiY2FuY2VsLXVuc3VwcG9ydGVkLXpvbmVcIlxuICAgICAgICAgICAgKGNsaWNrKT1cInJlc2V0RHJvcHpvbmVWaWV3KCRldmVudClcIlxuICAgICAgICA+XG4gICAgICAgIDwvc3ZnLWljb24+XG4gICAgfVxuPC9uZy10ZW1wbGF0ZT5cbjwhLS0gTE9UVElFX0FOSU1BVElPTiAtLT5cbjxuZy10ZW1wbGF0ZSAjbG90dGllQW5pbWF0aW9uVGVtcGxhdGU+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImFuaW1hdGlvbi1jb250YWluZXIgZC1mbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCJcbiAgICAgICAgW25nQ2xhc3NdPVwieyBleHBhbmRlZDogaXNEcm9wem9uZUV4cGFuZGVkIH1cIlxuICAgID5cbiAgICAgICAgPG5nLWxvdHRpZVxuICAgICAgICAgICAgY2xhc3M9XCJzdGF0aWMtbG90dGllLWFuaW1hdGlvblwiXG4gICAgICAgICAgICBbb3B0aW9uc109XCJsb3R0aWVPcHRpb25zXCJcbiAgICAgICAgPjwvbmctbG90dGllPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPCEtLSBTVVBQT1JURURfRVhURU5TSU9OUyAtLT5cbjxuZy10ZW1wbGF0ZSAjc3VwcG9ydGVkRXh0ZW5zaW9uc1RlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJzdXBwb3J0ZWQtZXh0ZW5zaW9ucyBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxuICAgICAgICBAZm9yIChleHRlbnNpb24gb2YgZHJvcFpvbmVBdmFpbGFibGVGaWxlczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZXh0ZW5zaW9uIGV4dGVuc2lvbi17e1xuICAgICAgICAgICAgICAgICAgICBleHRlbnNpb24gfCBtaW1lVHlwZVRvRXh0ZW5zaW9uXG4gICAgICAgICAgICAgICAgfX0gXG4gICAgICAgICAgICAgICAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBleHRlbnNpb24gfCBtaW1lVHlwZVRvRXh0ZW5zaW9uIH19XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
337
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtdXBsb2FkLWRyb3B6b25lLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLXVwbG9hZC1maWxlcy9jb21wb25lbnRzL2NhLXVwbG9hZC1kcm9wem9uZS9jYS11cGxvYWQtZHJvcHpvbmUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtdXBsb2FkLWZpbGVzL2NvbXBvbmVudHMvY2EtdXBsb2FkLWRyb3B6b25lL2NhLXVwbG9hZC1kcm9wem9uZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBR04sU0FBUyxFQUNULFlBQVksRUFDWixpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQVNuRSxXQUFXO0FBQ1gsT0FBTyxFQUNILHNCQUFzQixFQUN0QixrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQix3QkFBd0IsR0FDM0IsTUFBTSxtQkFBbUIsQ0FBQztBQUUzQixNQUFN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QkFBbkIsS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUs7Z0JBR04sV0FBVztzQkFEVixNQUFNO2dCQUdHLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFFRyxhQUFhO3NCQUF0QixNQUFNO2dCQWtCQSxrQkFBa0I7c0JBRHhCLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBY25DLE1BQU07c0JBRFosWUFBWTt1QkFBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBb0J6QixVQUFVO3NCQURoQixZQUFZO3VCQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFvQjdCLFdBQVc7c0JBRGpCLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQW9COUIsaUJBQWlCO3NCQUR2QixZQUFZO3VCQUFDLGtCQUFrQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQXVCckMsWUFBWTtzQkFEbEIsWUFBWTt1QkFBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBWWhDLGdCQUFnQjtzQkFEdEIsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBbmd1bGFyU3ZnSWNvbk1vZHVsZSB9IGZyb20gJ2FuZ3VsYXItc3ZnLWljb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmcm9tLCBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExvdHRpZUNvbXBvbmVudCwgcHJvdmlkZUxvdHRpZU9wdGlvbnMgfSBmcm9tICduZ3gtbG90dGllJztcblxuLy9JbnRlcmZhY2VzXG5pbXBvcnQge1xuICAgIElEcm9wQmFja2dyb3VuZEV2ZW50LFxuICAgIElEcm9wWm9uZUNvbmZpZyxcbiAgICBJRmlsZUNvbmZpZyxcbn0gZnJvbSAnLi9pbnRlcmZhY2VzJztcblxuLy9Db25zdGFudHNcbmltcG9ydCB7XG4gICAgRmlsZUFuaW1hdGlvbkNvbnN0YW50cyxcbiAgICBGaWxlSWNvbnNDb25zdGFudHMsXG4gICAgRmlsZUxpbWl0Q29uc3RhbnRzLFxuICAgIEZpbGVNaW1lVHlwZUNvbnN0YW50cyxcbiAgICBMb3R0aWVBbmltYXRpb25Db25zdGFudHMsXG59IGZyb20gJy4vdXRpbHMvY29uc3RhbnRzJztcblxuLy9FbnVtXG5pbXBvcnQge1xuICAgIGVGaWxlRHJvcFpvbmVBY3Rpb24sXG4gICAgZURyb3Bab25lRmlsZVR5cGUsXG4gICAgZUZpbGVVcGxvYWRQYWdlLFxuICAgIGVUZW1wbGF0ZVR5cGUsXG59IGZyb20gJy4vZW51bXMnO1xuXG4vL0RpcmVjdGl2ZVxuaW1wb3J0IHsgVGVtcGxhdGVDb250YWluZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvdGVtcGxhdGUuZGlyZWN0aXZlJztcblxuLy9IZWxwZXJcbmltcG9ydCB7IEZpbGVIZWxwZXIgfSBmcm9tICcuL2hlbHBlcnMnO1xuXG4vL1JvdXRlclxuaW1wb3J0IHsgRHJvcHpvbmVTdmdSb3V0ZSB9IGZyb20gJy4vdXRpbHMvc3ZnLXJvdXRlcy9kcm9wem9uZS1zdmcucm91dGVzJztcblxuLy9QaXBlc1xuaW1wb3J0IHsgTWltZVR5cGVUb0V4dGVuc2lvblBpcGUgfSBmcm9tICcuLi9jYS11cGxvYWQtZmlsZS9waXBlcyc7XG5cbi8vSW50ZXJmYWNlc1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnYXBwLWNhLXVwbG9hZC1kcm9wem9uZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NhLXVwbG9hZC1kcm9wem9uZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2EtdXBsb2FkLWRyb3B6b25lLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEFuZ3VsYXJTdmdJY29uTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICAgICAgVGVtcGxhdGVDb250YWluZXJEaXJlY3RpdmUsXG4gICAgICAgIExvdHRpZUNvbXBvbmVudCxcbiAgICAgICAgTWltZVR5cGVUb0V4dGVuc2lvblBpcGUsXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgcHJvdmlkZUxvdHRpZU9wdGlvbnMoe1xuICAgICAgICAgICAgcGxheWVyOiAoKSA9PiBpbXBvcnQoJ2xvdHRpZS13ZWInKSxcbiAgICAgICAgfSksXG4gICAgXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyh3aW5kb3c6cGFzdGUpJzogJ2hhbmRsZVBhc3RlKCRldmVudCknLFxuICAgIH0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENhVXBsb2FkRHJvcHpvbmVDb21wb25lbnQge1xuICAgIEBWaWV3Q2hpbGRyZW4oVGVtcGxhdGVDb250YWluZXJEaXJlY3RpdmUpXG4gICAgdGVtcGxhdGVSZWYhOiBRdWVyeUxpc3Q8VGVtcGxhdGVDb250YWluZXJEaXJlY3RpdmU+O1xuICAgIEBWaWV3Q2hpbGQoJ2Ryb3Bab25lJykgZHJvcFpvbmUhOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgQElucHV0KCkgc2V0IGRyb3Bab25lQ29uZmlnKGRhdGE6IElEcm9wWm9uZUNvbmZpZykge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2Ryb3Bab25lQ29uZmlnID0gZGF0YTtcblxuICAgICAgICAgICAgLy9JY29uc1xuICAgICAgICAgICAgdGhpcy5nZXRJY29ucygpO1xuXG4gICAgICAgICAgICAvL1N1cHBvcnRlZCBmaWxlc1xuICAgICAgICAgICAgdGhpcy5zdXBwb3J0ZWRGaWxlcygpO1xuXG4gICAgICAgICAgICAvL0Ryb3B6b25lIHRleHRcbiAgICAgICAgICAgIHRoaXMudXBkYXRlRHJvcFpvbmVUZXh0KCk7XG5cbiAgICAgICAgICAgIC8vTG90dGllXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUxvdHRpZU9wdGlvbnMoKTtcblxuICAgICAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH0sIDApO1xuICAgIH1cbiAgICBASW5wdXQoKSBpc0Ryb3B6b25lU2hvd25JbkNyb3A6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoKSBjdXN0b21XaWR0aCE6IHN0cmluZztcblxuICAgIEBJbnB1dCgpIGZpbGVzOiBJRmlsZUNvbmZpZ1tdID0gW107XG5cbiAgICBAT3V0cHV0KClcbiAgICBvbkZpbGVFdmVudDogRXZlbnRFbWl0dGVyPHsgZmlsZXM6IElGaWxlQ29uZmlnW107IGFjdGlvbjogc3RyaW5nIH0+ID1cbiAgICAgICAgbmV3IEV2ZW50RW1pdHRlcjx7IGZpbGVzOiBJRmlsZUNvbmZpZ1tdOyBhY3Rpb246IHN0cmluZyB9PigpO1xuICAgIEBPdXRwdXQoKSBvbkRyb3BCYWNrZ3JvdW5kOiBFdmVudEVtaXR0ZXI8SURyb3BCYWNrZ3JvdW5kRXZlbnQ+ID1cbiAgICAgICAgbmV3IEV2ZW50RW1pdHRlcjxJRHJvcEJhY2tncm91bmRFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgY2xvc2VEcm9wem9uZSA9IG5ldyBFdmVudEVtaXR0ZXI8e30+KCk7XG5cbiAgICBwdWJsaWMgX2Ryb3Bab25lQ29uZmlnITogSURyb3Bab25lQ29uZmlnO1xuICAgIHB1YmxpYyBpc1Nob3duRHJvcHpvbmVGb2N1czogYm9vbGVhbiA9IGZhbHNlO1xuICAgIHB1YmxpYyBpc0ZpbGVEcm9wOiBib29sZWFuID0gZmFsc2U7XG4gICAgcHVibGljIGlzU3VwcG9ydGVkVHlwZTogYm9vbGVhbiA9IGZhbHNlO1xuICAgIHB1YmxpYyBkcm9wWm9uZVRleHQ6IHN0cmluZyA9ICcnO1xuICAgIHB1YmxpYyBpc0Ryb3B6b25lRXhwYW5kZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBwdWJsaWMgaWNvblNyYzogc3RyaW5nID0gJyc7XG4gICAgcHVibGljIGRyb3Bab25lQXZhaWxhYmxlRmlsZXM6IHN0cmluZ1tdID0gW107XG4gICAgcHVibGljIGxpbWl0OiBudW1iZXIgPSAwO1xuXG4gICAgcHVibGljIGxvdHRpZU9wdGlvbnMgPSBMb3R0aWVBbmltYXRpb25Db25zdGFudHMuREVGQVVMVF9MT1RUSUU7XG4gICAgcHVibGljIGRyb3B6b25lU3ZnUm91dGUgPSBEcm9wem9uZVN2Z1JvdXRlLmNsb3NlO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gICAgQEhvc3RMaXN0ZW5lcignYm9keTpkcmFnbGVhdmUnLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvbkRyYWdMZWF2ZVdpbmRvd3MoZXZlbnQ6IERyYWdFdmVudCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgdGhpcy5pc1Nob3duRHJvcHpvbmVGb2N1cyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmlzRHJvcHpvbmVFeHBhbmRlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmlzRmlsZURyb3AgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5vbkRyb3BCYWNrZ3JvdW5kLmVtaXQoe1xuICAgICAgICAgICAgYWN0aW9uOiBlRmlsZURyb3Bab25lQWN0aW9uLkRSQUdMRUFWRSxcbiAgICAgICAgICAgIHZhbHVlOiBmYWxzZSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignZHJvcCcsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uRHJvcChldmVudDogRHJhZ0V2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLmlzRHJvcHpvbmVFeHBhbmRlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmlzU2hvd25Ecm9wem9uZUZvY3VzID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaXNGaWxlRHJvcCA9IHRydWU7XG5cbiAgICAgICAgdGhpcy5vbkRyb3BCYWNrZ3JvdW5kLmVtaXQoe1xuICAgICAgICAgICAgYWN0aW9uOiBlRmlsZURyb3Bab25lQWN0aW9uLkRST1AsXG4gICAgICAgICAgICB2YWx1ZTogZmFsc2UsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmIChldmVudC5kYXRhVHJhbnNmZXI/LmZpbGVzKSB7XG4gICAgICAgICAgICB0aGlzLm9uRmlsZVVwbG9hZChldmVudC5kYXRhVHJhbnNmZXIuZmlsZXMpO1xuICAgICAgICAgICAgdGhpcy5pc0ZpbGVEcm9wID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkcmFnb3ZlcicsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uRHJhZ092ZXIoZXZlbnQ6IERyYWdFdmVudCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLmlzU2hvd25Ecm9wem9uZUZvY3VzID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5pc0Ryb3B6b25lRXhwYW5kZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLmlzRmlsZURyb3AgPSB0cnVlO1xuICAgICAgICB0aGlzLm9uRHJvcEJhY2tncm91bmQuZW1pdCh7XG4gICAgICAgICAgICBhY3Rpb246IGVGaWxlRHJvcFpvbmVBY3Rpb24uRFJBR09WRVIsXG4gICAgICAgICAgICB2YWx1ZTogdHJ1ZSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMubG90dGllT3B0aW9ucyAmJiAhdGhpcy5sb3R0aWVPcHRpb25zLmF1dG9wbGF5KSB7XG4gICAgICAgICAgICB0aGlzLmxvdHRpZU9wdGlvbnMgPSB7XG4gICAgICAgICAgICAgICAgLi4udGhpcy5sb3R0aWVPcHRpb25zLFxuICAgICAgICAgICAgICAgIGF1dG9wbGF5OiB0cnVlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2RyYWdsZWF2ZScsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uRHJhZ0xlYXZlKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMuaXNTaG93bkRyb3B6b25lRm9jdXMgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pc0ZpbGVEcm9wID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaXNEcm9wem9uZUV4cGFuZGVkID0gdHJ1ZTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuaXNTaG93bkRyb3B6b25lRm9jdXMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmlzRmlsZURyb3AgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLmlzRHJvcHpvbmVFeHBhbmRlZCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sIDEwMCk7XG4gICAgICAgIHRoaXMub25Ecm9wQmFja2dyb3VuZC5lbWl0KHtcbiAgICAgICAgICAgIGFjdGlvbjogZUZpbGVEcm9wWm9uZUFjdGlvbi5EUkFHTEVBVkUsXG4gICAgICAgICAgICB2YWx1ZTogZmFsc2UsXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpkcmFnZW50ZXInLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBvbldpbmRvd0RyYWdFbnRlcihldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLmlzRmlsZURyb3AgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pc1Nob3duRHJvcHpvbmVGb2N1cyA9IHRydWU7XG4gICAgICAgIHRoaXMuaXNEcm9wem9uZUV4cGFuZGVkID0gdHJ1ZTtcblxuICAgICAgICBjb25zdCBlRmlsZVR5cGUgPSB0aGlzLl9kcm9wWm9uZUNvbmZpZz8uY29uZmlnPy5kcm9wem9uZVxuICAgICAgICAgICAgPy5kcm9wWm9uZVR5cGUgYXMgZURyb3Bab25lRmlsZVR5cGU7XG4gICAgICAgIGNvbnN0IGFuaW1hdGlvblBhdGggPSBGaWxlQW5pbWF0aW9uQ29uc3RhbnRzLkFOSU1BVElPTlNbZUZpbGVUeXBlXTtcblxuICAgICAgICBpZiAoYW5pbWF0aW9uUGF0aCkge1xuICAgICAgICAgICAgdGhpcy5sb3R0aWVPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgIHJlbmRlcmVyOiAnc3ZnJyxcbiAgICAgICAgICAgICAgICBhdXRvcGxheTogIXRoaXMuaXNTaG93bkRyb3B6b25lRm9jdXMsXG4gICAgICAgICAgICAgICAgbG9vcDogZmFsc2UsXG4gICAgICAgICAgICAgICAgcGF0aDogYW5pbWF0aW9uUGF0aCxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCd3aW5kb3c6ZHJvcCcsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uV2luZG93RHJvcChldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNEcm9wem9uZUV4cGFuZGVkID0gZmFsc2U7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLm9uRHJvcEJhY2tncm91bmQuZW1pdCh7XG4gICAgICAgICAgICBhY3Rpb246IGVGaWxlRHJvcFpvbmVBY3Rpb24uRFJPUCxcbiAgICAgICAgICAgIHZhbHVlOiBmYWxzZSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyB0cmlnZ2VyRmlsZUlucHV0KGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGlmICh0aGlzLmlzTWF4Q291bnRSZWFjaGVkKCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmRyb3Bab25lLm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SWNvbnMoKSB7XG4gICAgICAgIHRoaXMuaWNvblNyYyA9XG4gICAgICAgICAgICBGaWxlSWNvbnNDb25zdGFudHMuSUNPTlNbXG4gICAgICAgICAgICAgICAgdGhpcy5fZHJvcFpvbmVDb25maWc/LmNvbmZpZz8uZHJvcHpvbmVcbiAgICAgICAgICAgICAgICAgICAgPy5kcm9wWm9uZVR5cGUgYXMgZURyb3Bab25lRmlsZVR5cGVcbiAgICAgICAgICAgIF07XG4gICAgfVxuXG4gICAgcHVibGljIHN1cHBvcnRlZEZpbGVzKCkge1xuICAgICAgICB0aGlzLmRyb3Bab25lQXZhaWxhYmxlRmlsZXMgPVxuICAgICAgICAgICAgRmlsZU1pbWVUeXBlQ29uc3RhbnRzLlNVUE9SVEVEX01JTUVfVFlQRV9NQVBbXG4gICAgICAgICAgICAgICAgdGhpcy5fZHJvcFpvbmVDb25maWc/LmNvbmZpZz8uZHJvcHpvbmVcbiAgICAgICAgICAgICAgICAgICAgPy5kcm9wWm9uZVR5cGUgYXMgZURyb3Bab25lRmlsZVR5cGVcbiAgICAgICAgICAgIF07XG4gICAgfVxuXG4gICAgLy9saW1pdCBmaWxlc1xuICAgIHB1YmxpYyBtYXhGaWxlc0FsbG93ZWQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIEZpbGVMaW1pdENvbnN0YW50cy5MSU1JVFtcbiAgICAgICAgICAgIHRoaXMuX2Ryb3Bab25lQ29uZmlnPy5jb25maWc/LmRyb3B6b25lXG4gICAgICAgICAgICAgICAgPy5kcm9wWm9uZVBhZ2VzIGFzIGVGaWxlVXBsb2FkUGFnZVxuICAgICAgICBdO1xuICAgIH1cblxuICAgIC8vIFRPRE86IEJvZ2RhbiAtIG1vdmUgdG8gZ2V0dGVyIHRvIHVzZSBwcm9wZXJ0eSBpbnN0ZWFkIG9mIG1ldGhvZCB0byBhdm9pZCB1bm5lY2Vzc2FyeSBjaGFuZ2UgZGV0ZWN0aW9uIHRyaWdnZXJzXG4gICAgcHVibGljIGlzTWF4Q291bnRSZWFjaGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICB0aGlzLmxpbWl0ID1cbiAgICAgICAgICAgIEZpbGVMaW1pdENvbnN0YW50cy5MSU1JVFtcbiAgICAgICAgICAgICAgICB0aGlzLl9kcm9wWm9uZUNvbmZpZz8uY29uZmlnPy5kcm9wem9uZVxuICAgICAgICAgICAgICAgICAgICA/LmRyb3Bab25lUGFnZXMgYXMgZUZpbGVVcGxvYWRQYWdlXG4gICAgICAgICAgICBdIHx8IDA7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbGVzLmxlbmd0aCA+PSB0aGlzLmxpbWl0O1xuICAgIH1cblxuICAgIC8vRmlsZXNcbiAgICBwdWJsaWMgaGFuZGxlRmlsZUNoYW5nZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaW5wdXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICAgICAgaWYgKGlucHV0LmZpbGVzKSB7XG4gICAgICAgICAgICB0aGlzLm9uRmlsZVVwbG9hZChpbnB1dC5maWxlcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25GaWxlVXBsb2FkKGZpbGVzOiBGaWxlTGlzdCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgICAgICBjb25zdCBmaWxlQXJyYXkgPSBBcnJheS5mcm9tKGZpbGVzKTtcblxuICAgICAgICBjb25zdCB1cGxvYWRPYnNlcnZhYmxlcyA9IGZpbGVBcnJheS5tYXAoKGZpbGUsIGluZGV4KSA9PlxuICAgICAgICAgICAgdGhpcy5hZGRGaWxlKGZpbGUsIGluZGV4ID09PSBmaWxlQXJyYXkubGVuZ3RoIC0gMSlcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4gZnJvbSh1cGxvYWRPYnNlcnZhYmxlcykucGlwZShcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgdXBsb2FkaW5nIGZpbGVzOicsIGVycm9yKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIG1hcCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ0FsbCBmaWxlcyB1cGxvYWRlZCBzdWNjZXNzZnVsbHknKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlc2V0RHJvcHpvbmVWaWV3KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzU3VwcG9ydGVkVHlwZSA9IGZhbHNlO1xuXG4gICAgICAgIGV2ZW50Py5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG5cbiAgICAvL1RlbXBsYXRlXG4gICAgcHVibGljIGdldFRlbXBsYXRlKHRlbXBsYXRlOiBlVGVtcGxhdGVUeXBlKTogVGVtcGxhdGVSZWY8YW55PiB7XG4gICAgICAgIGNvbnN0IHRlbXBsYXRlUmVmOiBUZW1wbGF0ZUNvbnRhaW5lckRpcmVjdGl2ZSB8IHVuZGVmaW5lZCA9XG4gICAgICAgICAgICB0aGlzLnRlbXBsYXRlUmVmPy5maW5kKCh0ZW1wKSA9PiB0ZW1wLmlkID09PSB0ZW1wbGF0ZSk7XG5cbiAgICAgICAgaWYgKCF0ZW1wbGF0ZVJlZikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmF2YWlsYWJsZSB0ZW1wbGF0ZSEnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0ZW1wbGF0ZVJlZj8udGVtcGxhdGU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhZGRGaWxlKGZpbGU6IEZpbGUsIGVtaXRFdmVudD86IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgaWYgKCFmaWxlKSByZXR1cm47XG5cbiAgICAgICAgY29uc3QgeyB0eXBlIH0gPSBmaWxlO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgLy9UT0RPOiBCb2dkYW4gLSBnZXQgZmlsZSBleHRlbnNpb24gZnJvbSBtZXRhZGF0YSwgbm90IGZpbGUgbmFtZSBleHRlbnNpb25cbiAgICAgICAgICAgIGNvbnN0IGZpbGVFeHRlbnNpb24gPSBGaWxlSGVscGVyLmdldEZpbGVFeHRlbnNpb24odHlwZSk7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgIUZpbGVIZWxwZXIuaXNTdXBwb3J0ZWRFeHRlbnNpb24oXG4gICAgICAgICAgICAgICAgICAgIGZpbGUudHlwZSxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kcm9wWm9uZUF2YWlsYWJsZUZpbGVzXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAhdGhpcy5fZHJvcFpvbmVDb25maWc/LmNvbmZpZz8uZHJvcHpvbmVPcHRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgID8uZGlzYWJsZVVuc3VwcG9ydGVkUHJldmlld1xuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmlzU3VwcG9ydGVkVHlwZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLmlzU3VwcG9ydGVkVHlwZSA9IGZhbHNlO1xuXG4gICAgICAgICAgICBGaWxlSGVscGVyLmdldEJsb2IoZmlsZSkuc3Vic2NyaWJlKHtcbiAgICAgICAgICAgICAgICBuZXh0OiAoYmxvYkNvbnRlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYmxvYlVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYkNvbnRlbnQpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbGVzID0gW1xuICAgICAgICAgICAgICAgICAgICAgICAgLi4udGhpcy5maWxlcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlTmFtZTogZmlsZS5uYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogYmxvYlVybCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRlbnNpb246IGZpbGVFeHRlbnNpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3VpZDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplOiBmaWxlLnNpemUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhbEZpbGU6IGJsb2JDb250ZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgXTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoZW1pdEV2ZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uRmlsZUV2ZW50LmVtaXQoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVzOiB0aGlzLmZpbGVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbjogZUZpbGVEcm9wWm9uZUFjdGlvbi5BREQsXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZXJyb3I6IChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciByZWFkaW5nIGZpbGU6JywgZXJyb3IpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NhbnQgdXBsb2FkIGZpbGUnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vTG90dGllXG4gICAgcHJpdmF0ZSB1cGRhdGVMb3R0aWVPcHRpb25zKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBlRmlsZVR5cGUgPSB0aGlzLl9kcm9wWm9uZUNvbmZpZz8uY29uZmlnPy5kcm9wem9uZVxuICAgICAgICAgICAgPy5kcm9wWm9uZVR5cGUgYXMgZURyb3Bab25lRmlsZVR5cGU7XG4gICAgICAgIGNvbnN0IGFuaW1hdGlvblBhdGggPSBGaWxlQW5pbWF0aW9uQ29uc3RhbnRzLkFOSU1BVElPTlNbZUZpbGVUeXBlXTtcblxuICAgICAgICBpZiAoYW5pbWF0aW9uUGF0aCkge1xuICAgICAgICAgICAgdGhpcy5sb3R0aWVPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgIHJlbmRlcmVyOiAnc3ZnJyxcbiAgICAgICAgICAgICAgICBhdXRvcGxheTogIXRoaXMuaXNTaG93bkRyb3B6b25lRm9jdXMsXG4gICAgICAgICAgICAgICAgbG9vcDogZmFsc2UsXG4gICAgICAgICAgICAgICAgcGF0aDogYW5pbWF0aW9uUGF0aCxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvL0Ryb3B6b25lIHRleHRcbiAgICBwcml2YXRlIHVwZGF0ZURyb3Bab25lVGV4dCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZHJvcFpvbmVUZXh0TWFwOiB7IFtrZXkgaW4gZURyb3Bab25lRmlsZVR5cGVdPzogc3RyaW5nIH0gPSB7XG4gICAgICAgICAgICBbZURyb3Bab25lRmlsZVR5cGUuRklMRVNdOiAnRklMRVMnLFxuICAgICAgICAgICAgW2VEcm9wWm9uZUZpbGVUeXBlLk1FRElBXTogJ01FRElBJyxcbiAgICAgICAgICAgIFtlRHJvcFpvbmVGaWxlVHlwZS5JTUFHRV06ICdJTUFHRScsXG4gICAgICAgICAgICBbZURyb3Bab25lRmlsZVR5cGUuTE9HT106ICdJTUFHRScsXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5kcm9wWm9uZVRleHQgPVxuICAgICAgICAgICAgZHJvcFpvbmVUZXh0TWFwW1xuICAgICAgICAgICAgICAgIHRoaXMuX2Ryb3Bab25lQ29uZmlnPy5jb25maWc/LmRyb3B6b25lXG4gICAgICAgICAgICAgICAgICAgID8uZHJvcFpvbmVUeXBlIGFzIGVEcm9wWm9uZUZpbGVUeXBlXG4gICAgICAgICAgICBdIHx8ICdGSUxFIElNUE9SVCBGQUlMRUQnO1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICBjbGFzcz1cImRyb3B6b25lLWNvbnRhaW5lciBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIlxuICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgJ3NwbGl0LWRyb3B6b25lJzogaXNEcm9wem9uZVNob3duSW5Dcm9wLFxuICAgICAgICB1blN1cHBvcnRlZDogaXNTdXBwb3J0ZWRUeXBlLFxuICAgICAgICBleHBhbmRlZDogaXNEcm9wem9uZUV4cGFuZGVkICYmICFpc1N1cHBvcnRlZFR5cGUsXG4gICAgICAgICdkaXNhYmxlZC1kcm9wem9uZSc6IGZpbGVzLmxlbmd0aCA+PSB0aGlzLmxpbWl0ICYmIHRoaXMubGltaXQgPiAwLFxuICAgIH1cIlxuICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgd2lkdGg6XG4gICAgICAgICAgICBmaWxlcy5sZW5ndGggPT09IDBcbiAgICAgICAgICAgICAgICA/IGN1c3RvbVdpZHRoIHx8ICc0NDhweCdcbiAgICAgICAgICAgICAgICA6IGZpbGVzLmxlbmd0aCA9PT0gMVxuICAgICAgICAgICAgICAgICAgPyAnMjk2cHgnXG4gICAgICAgICAgICAgICAgICA6IGZpbGVzLmxlbmd0aCA9PT0gMlxuICAgICAgICAgICAgICAgICAgICA/ICcxNDhweCdcbiAgICAgICAgICAgICAgICAgICAgOiBmaWxlcy5sZW5ndGggPT09IDNcbiAgICAgICAgICAgICAgICAgICAgICA/ICcxNDhweCdcbiAgICAgICAgICAgICAgICAgICAgICA6ICcxNDhweCcsXG4gICAgfVwiXG4+XG4gICAgPCEtLSBAZm9yIChpdGVtIG9mIF9kcm9wWm9uZUNvbmZpZ0FycmF5OyB0cmFjayAkaW5kZXgpIHsgLS0+XG4gICAgQGlmIChfZHJvcFpvbmVDb25maWcpIHtcbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJkcm9wem9uZS1jb250ZW50IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlclwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgJ3VwbG9hZC1kcm9wem9uZS11bnN1cHBvcnRlZCc6IGlzU3VwcG9ydGVkVHlwZSxcbiAgICAgICAgICAgICAgICBleHBhbmRlZENvbnRlbnQ6IGlzRHJvcHpvbmVFeHBhbmRlZCxcbiAgICAgICAgICAgICAgICAnY29sdW1uLWxheW91dCc6IGZpbGVzLmxlbmd0aCA+PSAyLFxuICAgICAgICAgICAgfVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICAgICAgICBnZXRUZW1wbGF0ZShfZHJvcFpvbmVDb25maWcudGVtcGxhdGUpO1xuICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7ICRpbXBsaWNpdDogX2Ryb3Bab25lQ29uZmlnPy5jb25maWcgfVxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbiAgICA8IS0tIH0gLS0+XG48L2Rpdj5cblxuPCEtLS0tLS0tLS0tLS0tRG9jdW1lbnQgdGVtcGxhdGUtLS0tLS0tLS0tLS0tLT5cbjxuZy10ZW1wbGF0ZSB0ZW1wbGF0ZUNvbnRhaW5lciBpZD1cImRvY3VtZW50c1RlbXBsYXRlXCIgbGV0LWNvbmZpZz5cbiAgICA8IS0tU1ZHIElDT04tLT5cbiAgICBAaWYgKCFpc1Nob3duRHJvcHpvbmVGb2N1cyAmJiAhaXNEcm9wem9uZUV4cGFuZGVkKSB7XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkcm9wem9uZUljb25UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgIH1cblxuICAgIDwhLS1Mb3R0aWUgYW5pbWF0aW9uLS0+XG4gICAgQGlmICgoaXNEcm9wem9uZUV4cGFuZGVkIHx8IGlzU2hvd25Ecm9wem9uZUZvY3VzKSAmJiAhaXNTdXBwb3J0ZWRUeXBlKSB7XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwibG90dGllQW5pbWF0aW9uVGVtcGxhdGVcIlxuICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgfVxuXG4gICAgPCEtLUNvbnRlbnQgZm9yIHN1cHBvcnRlZCBhbmQgdW5zdXBwb3J0ZWQgdHlwZXMtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZHJvcHpvbmVUZXh0VGVtcGxhdGVcIj4gPC9uZy1jb250YWluZXI+XG5cbiAgICA8IS0tU3VwcG9ydGVkIGV4dGVuc2lvbnMgZm9yIHVuc3VwcG9ydGVkIHR5cGUtLT5cbiAgICBAaWYgKGlzU3VwcG9ydGVkVHlwZSkge1xuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cInN1cHBvcnRlZEV4dGVuc2lvbnNUZW1wbGF0ZVwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICB9XG5cbiAgICA8IS0tRklMRSBJTlBVVC0tPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmaWxlSW5wdXRUZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGNvbmZpZyB9XCJcbiAgICA+PC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48IS0tLS0tLS0tLS0tLS1NZWRpYSB0ZW1wbGF0ZS0tLS0tLS0tLS0tLS0tPlxuPG5nLXRlbXBsYXRlIHRlbXBsYXRlQ29udGFpbmVyIGlkPVwibWVkaWFUZW1wbGF0ZVwiIGxldC1jb25maWc+XG4gICAgPCEtLVNWRyBJQ09OLS0+XG4gICAgQGlmICghaXNTaG93bkRyb3B6b25lRm9jdXMgJiYgIWlzRHJvcHpvbmVFeHBhbmRlZCkge1xuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZHJvcHpvbmVJY29uVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICB9XG5cbiAgICA8IS0tTG90dGllIGFuaW1hdGlvbi0tPlxuICAgIEBpZiAoKGlzRHJvcHpvbmVFeHBhbmRlZCB8fCBpc1Nob3duRHJvcHpvbmVGb2N1cykgJiYgIWlzU3VwcG9ydGVkVHlwZSkge1xuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImxvdHRpZUFuaW1hdGlvblRlbXBsYXRlXCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIH1cblxuICAgIDwhLS1Db250ZW50IGZvciBzdXBwb3J0ZWQgYW5kIHVuc3VwcG9ydGVkIHR5cGVzLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRyb3B6b25lVGV4dFRlbXBsYXRlXCI+IDwvbmctY29udGFpbmVyPlxuXG4gICAgPCEtLVN1cHBvcnRlZCBleHRlbnNpb25zIGZvciB1bnN1cHBvcnRlZCB0eXBlLS0+XG4gICAgQGlmIChpc1N1cHBvcnRlZFR5cGUpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzdXBwb3J0ZWRFeHRlbnNpb25zVGVtcGxhdGVcIlxuICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgfVxuXG4gICAgPCEtLUZJTEUgSU5QVVQtLT5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiZmlsZUlucHV0VGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBjb25maWcgfVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPCEtLS0tLS0tLS0tLS0tSW1hZ2UgdGVtcGxhdGUtLS0tLS0tLS0tLS0tLT5cbjxuZy10ZW1wbGF0ZSB0ZW1wbGF0ZUNvbnRhaW5lciBpZD1cImltYWdlVGVtcGxhdGVcIiBsZXQtY29uZmlnPlxuICAgIDwhLS1TVkcgSUNPTi0tPlxuICAgIEBpZiAoIWlzU2hvd25Ecm9wem9uZUZvY3VzICYmICFpc0Ryb3B6b25lRXhwYW5kZWQpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRyb3B6b25lSWNvblRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgfVxuXG4gICAgPCEtLUxvdHRpZSBhbmltYXRpb24tLT5cbiAgICBAaWYgKChpc0Ryb3B6b25lRXhwYW5kZWQgfHwgaXNTaG93bkRyb3B6b25lRm9jdXMpICYmICFpc1N1cHBvcnRlZFR5cGUpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsb3R0aWVBbmltYXRpb25UZW1wbGF0ZVwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICB9XG5cbiAgICA8IS0tQ29udGVudCBmb3Igc3VwcG9ydGVkIGFuZCB1bnN1cHBvcnRlZCB0eXBlcy0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkcm9wem9uZVRleHRUZW1wbGF0ZVwiPiA8L25nLWNvbnRhaW5lcj5cblxuICAgIDwhLS1TdXBwb3J0ZWQgZXh0ZW5zaW9ucyBmb3IgdW5zdXBwb3J0ZWQgdHlwZS0tPlxuICAgIEBpZiAoaXNTdXBwb3J0ZWRUeXBlKSB7XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwic3VwcG9ydGVkRXh0ZW5zaW9uc1RlbXBsYXRlXCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIH1cblxuICAgIDwhLS1GSUxFIElOUFVULS0+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImZpbGVJbnB1dFRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29uZmlnIH1cIlxuICAgID48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjwhLS0tLS0tLS0tLS0tLUltYWdlIENyb3AgdGVtcGxhdGUtLS0tLS0tLS0tLS0tLT5cbjxuZy10ZW1wbGF0ZSB0ZW1wbGF0ZUNvbnRhaW5lciBpZD1cImltYWdlQ3JvcFRlbXBsYXRlXCIgbGV0LWNvbmZpZz5cbiAgICA8IS0tU1ZHIElDT04tLT5cbiAgICBAaWYgKCFpc1Nob3duRHJvcHpvbmVGb2N1cyAmJiAhaXNEcm9wem9uZUV4cGFuZGVkKSB7XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkcm9wem9uZUljb25UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgIH1cblxuICAgIDwhLS1Mb3R0aWUgYW5pbWF0aW9uLS0+XG4gICAgQGlmICgoaXNEcm9wem9uZUV4cGFuZGVkIHx8IGlzU2hvd25Ecm9wem9uZUZvY3VzKSAmJiAhaXNTdXBwb3J0ZWRUeXBlKSB7XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwibG90dGllQW5pbWF0aW9uVGVtcGxhdGVcIlxuICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgfVxuXG4gICAgPCEtLUNvbnRlbnQgZm9yIHN1cHBvcnRlZCBhbmQgdW5zdXBwb3J0ZWQgdHlwZXMtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZHJvcHpvbmVUZXh0VGVtcGxhdGVcIj4gPC9uZy1jb250YWluZXI+XG5cbiAgICA8IS0tU3VwcG9ydGVkIGV4dGVuc2lvbnMgZm9yIHVuc3VwcG9ydGVkIHR5cGUtLT5cbiAgICBAaWYgKGlzU3VwcG9ydGVkVHlwZSkge1xuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cInN1cHBvcnRlZEV4dGVuc2lvbnNUZW1wbGF0ZVwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICB9XG5cbiAgICA8IS0tRklMRSBJTlBVVC0tPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmaWxlSW5wdXRUZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGNvbmZpZyB9XCJcbiAgICA+PC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48IS0tLS0tLS0tLS0tLS1Mb2dvIHRlbXBsYXRlLS0tLS0tLS0tLS0tLS0+XG48bmctdGVtcGxhdGUgdGVtcGxhdGVDb250YWluZXIgaWQ9XCJsb2dvVGVtcGxhdGVcIiBsZXQtY29uZmlnPlxuICAgIDwhLS1TVkcgSUNPTi0tPlxuICAgIEBpZiAoIWlzU2hvd25Ecm9wem9uZUZvY3VzICYmICFpc0Ryb3B6b25lRXhwYW5kZWQpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImRyb3B6b25lSWNvblRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgfVxuXG4gICAgPCEtLUxvdHRpZSBhbmltYXRpb24tLT5cbiAgICBAaWYgKChpc0Ryb3B6b25lRXhwYW5kZWQgfHwgaXNTaG93bkRyb3B6b25lRm9jdXMpICYmICFpc1N1cHBvcnRlZFR5cGUpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsb3R0aWVBbmltYXRpb25UZW1wbGF0ZVwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICB9XG5cbiAgICA8IS0tQ29udGVudCBmb3Igc3VwcG9ydGVkIGFuZCB1bnN1cHBvcnRlZCB0eXBlcy0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkcm9wem9uZVRleHRUZW1wbGF0ZVwiPiA8L25nLWNvbnRhaW5lcj5cblxuICAgIDwhLS1TdXBwb3J0ZWQgZXh0ZW5zaW9ucyBmb3IgdW5zdXBwb3J0ZWQgdHlwZS0tPlxuICAgIEBpZiAoaXNTdXBwb3J0ZWRUeXBlKSB7XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwic3VwcG9ydGVkRXh0ZW5zaW9uc1RlbXBsYXRlXCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIH1cblxuICAgIDwhLS1GSUxFIElOUFVULS0+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImZpbGVJbnB1dFRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogY29uZmlnIH1cIlxuICAgID48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjwhLS0tLS0tLS0tLS0tLS1DT01NT04tVEVNUExBVEUtLS0tLS0tLS0tLS0tLT5cblxuPCEtLS0tLS1JTlBVVC0tLS0tLS0+XG48bmctdGVtcGxhdGUgI2ZpbGVJbnB1dFRlbXBsYXRlIGxldC1jb25maWc+XG4gICAgPGlucHV0XG4gICAgICAgICNkcm9wWm9uZVxuICAgICAgICBbaWRdPVwiJ2Ryb3Bab25lJyArIChjb25maWcuZHJvcHpvbmVPcHRpb24/LmRyb3B6b25lSW5kZXggfHwgMClcIlxuICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgIFthY2NlcHRdPVwiY29uZmlnLmRyb3B6b25lPy5kcm9wWm9uZUF2YWlsYWJsZUZpbGVzXCJcbiAgICAgICAgW211bHRpcGxlXT1cImNvbmZpZy5kcm9wem9uZT8ubXVsdGlwbGVcIlxuICAgICAgICAoY2hhbmdlKT1cImhhbmRsZUZpbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIHN0eWxlPVwiZGlzcGxheTogbm9uZVwiXG4gICAgLz5cbjwvbmctdGVtcGxhdGU+XG5cbjwhLS1EUk9QWk9ORV9URVhULS0+XG48bmctdGVtcGxhdGUgI2Ryb3B6b25lVGV4dFRlbXBsYXRlPlxuICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJkcm9wem9uZS10ZXh0IGQtZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlclwiXG4gICAgPlxuICAgICAgICA8cFxuICAgICAgICAgICAgY2xhc3M9XCJ1cGxvYWQtZHJvcHpvbmUtdGV4dFwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgJ3Vuc3VwcG9ydGVkLXRleHQtYmlnJzogaXNTdXBwb3J0ZWRUeXBlLFxuICAgICAgICAgICAgICAgICdtYXgtY291bnQnOiBpc01heENvdW50UmVhY2hlZCgpLFxuICAgICAgICAgICAgfVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIEBpZiAoaXNNYXhDb3VudFJlYWNoZWQoKSkge1xuICAgICAgICAgICAgICAgIE1BWCBDT1VOVCBSRUFDSEVEXG4gICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibm9ybWFsVGV4dFwiPiA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9ybWFsVGV4dD5cbiAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICBpc1N1cHBvcnRlZFR5cGVcbiAgICAgICAgICAgICAgICAgICAgICAgID8gJ0lOVkFMSUQgRklMRSBUWVBFJ1xuICAgICAgICAgICAgICAgICAgICAgICAgOiAnRFJBRyAnICsgZHJvcFpvbmVUZXh0XG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAhKGlzU3VwcG9ydGVkVHlwZSB8fCAoZmlsZXMgJiYgZmlsZXMubGVuZ3RoKSkgPyAnIEhFUkUnIDogJydcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIEBpZiAoX2Ryb3Bab25lQ29uZmlnPy50ZW1wbGF0ZSA9PT0gJ21lZGlhVGVtcGxhdGUnKSB7XG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJtZWRpYS1zaXplc1wiPm1heCBmaWxlIHNpemUgNTBtYjwvcD5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9wPlxuICAgICAgICBAaWYgKCFpc0Ryb3B6b25lRXhwYW5kZWQpIHtcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidXBsb2FkLWRyb3B6b25lLXRleHQtc21hbGxcIj5cbiAgICAgICAgICAgICAgICBAaWYgKGlzTWF4Q291bnRSZWFjaGVkKCkpIHtcbiAgICAgICAgICAgICAgICAgICAge3sgZmlsZXMubGVuZ3RoIH19IEZJTEVTIElNUE9SVEVEXG4gICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmb3JtYXRUZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2Zvcm1hdFRleHQ+XG4gICAgICAgICAgICAgICAgICAgIHt7XG4gICAgICAgICAgICAgICAgICAgICAgICBpc1N1cHBvcnRlZFR5cGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICdTVVBQT1JURUQgRk9STUFUUydcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICdPUiBDTElDSyBUTyBBREQnXG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPCEtLS0tLS1JQ09OLS0tLS0tLS0+XG48bmctdGVtcGxhdGUgI2Ryb3B6b25lSWNvblRlbXBsYXRlPlxuICAgIEBpZiAoIWlzU3VwcG9ydGVkVHlwZSAmJiAhaXNGaWxlRHJvcCkge1xuICAgICAgICA8c3ZnLWljb25cbiAgICAgICAgICAgIFtzcmNdPVwiaWNvblNyY1wiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJmaWxlcy5sZW5ndGggPCAyID8gJ3N2Z0ljb24tZG9jdW1lbnQnIDogJ3N2Zy1zbWFsbCdcIlxuICAgICAgICA+XG4gICAgICAgIDwvc3ZnLWljb24+XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIDxzdmctaWNvblxuICAgICAgICAgICAgW3NyY109XCJkcm9wem9uZVN2Z1JvdXRlXCJcbiAgICAgICAgICAgIGNsYXNzPVwiY2FuY2VsLXVuc3VwcG9ydGVkLXpvbmVcIlxuICAgICAgICAgICAgKGNsaWNrKT1cInJlc2V0RHJvcHpvbmVWaWV3KCRldmVudClcIlxuICAgICAgICA+XG4gICAgICAgIDwvc3ZnLWljb24+XG4gICAgfVxuPC9uZy10ZW1wbGF0ZT5cbjwhLS0gTE9UVElFX0FOSU1BVElPTiAtLT5cbjxuZy10ZW1wbGF0ZSAjbG90dGllQW5pbWF0aW9uVGVtcGxhdGU+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImFuaW1hdGlvbi1jb250YWluZXIgZC1mbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCJcbiAgICAgICAgW25nQ2xhc3NdPVwieyBleHBhbmRlZDogaXNEcm9wem9uZUV4cGFuZGVkIH1cIlxuICAgID5cbiAgICAgICAgPG5nLWxvdHRpZVxuICAgICAgICAgICAgY2xhc3M9XCJzdGF0aWMtbG90dGllLWFuaW1hdGlvblwiXG4gICAgICAgICAgICBbb3B0aW9uc109XCJsb3R0aWVPcHRpb25zXCJcbiAgICAgICAgPjwvbmctbG90dGllPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPCEtLSBTVVBQT1JURURfRVhURU5TSU9OUyAtLT5cbjxuZy10ZW1wbGF0ZSAjc3VwcG9ydGVkRXh0ZW5zaW9uc1RlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJzdXBwb3J0ZWQtZXh0ZW5zaW9ucyBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxuICAgICAgICBAZm9yIChleHRlbnNpb24gb2YgZHJvcFpvbmVBdmFpbGFibGVGaWxlczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZXh0ZW5zaW9uIGV4dGVuc2lvbi17e1xuICAgICAgICAgICAgICAgICAgICBleHRlbnNpb24gfCBtaW1lVHlwZVRvRXh0ZW5zaW9uXG4gICAgICAgICAgICAgICAgfX0gXG4gICAgICAgICAgICAgICAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBleHRlbnNpb24gfCBtaW1lVHlwZVRvRXh0ZW5zaW9uIH19XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|