ca-components 1.1.7 → 1.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/scss/icons.scss +12 -0
- package/assets/scss/styles.scss +4 -0
- package/assets/scss/text-selection.scss +42 -0
- package/esm2022/lib/components/ca-activity-log-list/ca-activity-log-list.component.mjs +3 -3
- 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 +2 -2
- 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/input-test/input-test.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 +3 -4
- package/esm2022/lib/components/ca-input-note/ca-input-note.component.mjs +2 -2
- package/esm2022/lib/components/ca-logo-change/ca-logo-change.component.mjs +3 -3
- package/esm2022/lib/components/ca-map/ca-map.component.mjs +47 -60
- package/esm2022/lib/components/ca-map/models/index.mjs +2 -0
- package/esm2022/lib/components/ca-map/models/map.model.mjs +1 -1
- package/esm2022/lib/components/ca-map/utils/constants/index.mjs +2 -1
- package/esm2022/lib/components/ca-map/utils/constants/map-options.constants.mjs +2 -2
- package/esm2022/lib/components/ca-map/utils/constants/map.constants.mjs +436 -0
- package/esm2022/lib/components/ca-map/utils/helpers/map.helper.mjs +1 -1
- package/esm2022/lib/components/ca-map/utils/services/map-marker-icon.service.mjs +1 -1
- package/esm2022/lib/components/ca-map-dropdown/ca-map-dropdown.component.mjs +5 -5
- package/esm2022/lib/components/ca-map-dropdown/enums/map-dropdown-string.enum.mjs +17 -17
- package/esm2022/lib/components/ca-modal-button/ca-modal-button.component.mjs +5 -5
- package/esm2022/lib/components/ca-modal-button/enums/modal-button-class-type.enum.mjs +12 -10
- package/esm2022/lib/components/ca-modal-button/enums/modal-button-size.enum.mjs +6 -6
- package/esm2022/lib/components/ca-modal-button/pipes/modal-button-class.pipe.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 +2 -2
- 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 +2 -2
- 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 +40 -75
- package/esm2022/lib/components/ca-progress-bar/models/gps-progress.model.mjs +1 -1
- 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/models/index.mjs +2 -2
- package/esm2022/lib/models/long-lat.model.mjs +2 -0
- package/esm2022/public-api.mjs +3 -2
- package/fesm2022/ca-components.mjs +239 -285
- package/fesm2022/ca-components.mjs.map +1 -1
- package/lib/components/ca-filters/ca-filter.component.d.ts +2 -2
- package/lib/components/ca-map/ca-map.component.d.ts +9 -9
- package/lib/components/ca-map/models/index.d.ts +1 -0
- package/lib/components/ca-map/models/map.model.d.ts +5 -0
- package/lib/components/ca-map/utils/constants/index.d.ts +1 -0
- package/lib/components/ca-map/utils/constants/map-options.constants.d.ts +1 -1
- package/lib/components/ca-map/utils/helpers/map.helper.d.ts +1 -1
- package/lib/components/ca-map/utils/services/map-marker-icon.service.d.ts +1 -1
- package/lib/components/ca-map-dropdown/ca-map-dropdown.component.d.ts +2 -2
- package/lib/components/ca-map-dropdown/enums/map-dropdown-string.enum.d.ts +1 -1
- package/lib/components/ca-modal-button/ca-modal-button.component.d.ts +3 -3
- package/lib/components/ca-modal-button/enums/modal-button-class-type.enum.d.ts +4 -2
- package/lib/components/ca-modal-button/enums/modal-button-size.enum.d.ts +1 -1
- package/lib/components/ca-modal-button/pipes/modal-button-class.pipe.d.ts +2 -2
- package/lib/components/ca-progress-bar/ca-progress-bar.component.d.ts +18 -24
- package/lib/components/ca-progress-bar/models/gps-progress.model.d.ts +2 -0
- package/lib/models/index.d.ts +1 -0
- package/lib/models/long-lat.model.d.ts +4 -0
- package/package.json +1 -1
- package/public-api.d.ts +2 -1
- package/esm2022/lib/constants/map.constant.mjs +0 -436
- /package/lib/{constants/map.constant.d.ts → components/ca-map/utils/constants/map.constants.d.ts} +0 -0
|
@@ -276,7 +276,7 @@ export class CaUploadFilesComponent {
|
|
|
276
276
|
provideLottieOptions({
|
|
277
277
|
player: () => import('lottie-web'),
|
|
278
278
|
}),
|
|
279
|
-
], viewQueries: [{ propertyName: "modalCarousel", first: true, predicate: CaUploadFilesCarouselComponent, descendants: true }, { propertyName: "uploadedFiles", predicate: CaUploadFileComponent, descendants: true }], ngImport: i0, template: "<div\n class=\"ta-upload d-flex align-items-center {{\n config.fileOptionsConfig.customClassName\n }}\"\n [ngClass]=\"\n config.files?.length\n | uploadClass\n : config.carouselConfig.size\n : config.review.isReview\n : config.slider.dontUseSlider\n \"\n>\n <!-- Carousel Files -->\n @if (\n config.files?.length && !config.slider.dontUseSlider && !config.hasCrop\n ) {\n <app-ca-upload-files-carousel\n [config]=\"carouselFileConfig\"\n (activeSlide)=\"currentSlide = $event\"\n [slideWidth]=\"config.slideWidth\"\n (hoverArrowEmit)=\"hoverArrow($event)\"\n >\n @for (file of config.files; track $index) {\n <div class=\"ta-upload-carousel-container\">\n <div>\n <app-ca-upload-file\n #uploadedFiles\n [config]=\"config.fileOptionsConfig | mapFile: file\"\n [reviewFileConfig]=\"reviewFileConfig\"\n (fileHover)=\"fileHover($event)\"\n (fileAction)=\"onFileAction($event)\"\n (landscapeCheck)=\"onLandscapeCheck($event)\"\n (documentReviewInputEvent)=\"\n documentReviewInputEventMethod($event)\n \"\n ></app-ca-upload-file>\n </div>\n </div>\n }\n </app-ca-upload-files-carousel>\n }\n\n @if (config.slider.dontUseSlider && !config.hasCrop) {\n <div class=\"documents_holder\">\n <app-ca-upload-dropzone\n [config]=\"config.dropzoneConf\"\n (onFileEvent)=\"onUploadFiles($event)\"\n (closeDropzone)=\"dropZoneClose()\"\n ></app-ca-upload-dropzone>\n @for (file of config.files; track $index) {\n <div class=\"ta-upload-carousel-container\">\n <div>\n <app-ca-upload-file\n [config]=\"config.fileOptionsConfig | mapFile: file\"\n [reviewFileConfig]=\"reviewFileConfig\"\n (fileAction)=\"onFileAction($event)\"\n (landscapeCheck)=\"onLandscapeCheck($event)\"\n (documentReviewInputEvent)=\"\n documentReviewInputEventMethod($event)\n \"\n ></app-ca-upload-file>\n </div>\n </div>\n }\n </div>\n }\n\n <!-- Image Crop Template -->\n\n <div\n class=\"split-crop-holder\"\n [class.split]=\"isDropzoneShown\"\n [ngClass]=\"{ 'hidden-drop': !config.isVisibleCropAndDrop }\"\n >\n @if (config.hasCrop && config.files.length) {\n @for (file of config.files; track $index) {\n <app-ca-logo-change\n [hasBlobUrl]=\"config.hasBlobUrl\"\n [imageToCrop]=\"file?.url\"\n [isRoundCropper]=\"config.isRoundCrop\"\n [isDropzoneShown]=\"isDropzoneShown\"\n [initialCropperPosition]=\"config.initialCropperPosition\"\n [containWithinAspectRatio]=\"config.containWithinAspectRatio\"\n [aspectRatio]=\"config.aspectRatio\"\n [customWidth]=\"config.dropzoneCustomWidth\"\n (sendImageData)=\"onUploadFiles($event)\"\n ></app-ca-logo-change>\n }\n }\n </div>\n\n <div\n class=\"split-crop-holder\"\n [class.split]=\"config.hasCrop && config.files.length && isDropzoneShown\"\n [ngClass]=\"{ 'hidden-drop': !config.isVisibleCropAndDrop }\"\n >\n @if (isDropzoneShown) {\n <app-ca-upload-dropzone\n [config]=\"config.dropzoneConf\"\n [customWidth]=\"config.dropzoneCustomWidth\"\n [isDropzoneShownInCrop]=\"\n config.hasCrop && !!config.files.length && isDropzoneShown\n \"\n (onFileEvent)=\"onUploadFiles($event)\"\n ></app-ca-upload-dropzone>\n }\n </div>\n</div>\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{font-weight:600!important}.ca-font-bold{font-weight:700!important}.ca-font-extra-bold{font-weight:800!important}.ca-font-black{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:#dadada}.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:#dadada}.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:#dadada}.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:#42424233!important;color:#424242!important}.text-color-black::selection{background:#42424233!important;color:#424242!important}.text-color-black-2{color:#2f2f2f!important}.text-color-black-2::-moz-selection{background:#2f2f2f33!important;color:#2f2f2f!important}.text-color-black-2::selection{background:#2f2f2f33!important;color:#2f2f2f!important}.text-color-muted{color:#919191!important}.text-color-muted::-moz-selection{background:#91919133!important;color:#919191!important}.text-color-muted::selection{background:#91919133!important;color:#919191!important}.text-color-green{color:#56b4ac!important}.text-color-green::-moz-selection{background:#56b4ac33!important;color:#56b4ac!important}.text-color-green::selection{background:#56b4ac33!important;color:#56b4ac!important}.text-color-blue-13{color:#6692f1!important}.text-color-blue-13::-moz-selection{background:#66921833!important;color:#6692f1!important}.text-color-blue-13::selection{background:#66921833!important;color:#6692f1!important}.text-color-blue-18{color:#3b73ed!important}.text-color-blue-18::-moz-selection{background:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-18::selection{background:#3b73ed33!important;color:#3b73ed!important}.text-color-red-10{color:#e66767!important}.text-color-red-10::-moz-selection{background:#e6676733!important;color:#e66767!important}.text-color-red-10::selection{background:#e6676733!important;color:#e66767!important}.text-color-light-grey{color:#e5e5e5!important}.text-color-light-grey::-moz-selection{background:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey::selection{background:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey-2{color:#aaa!important}.text-color-light-grey-2::-moz-selection{background:#aaa3!important;color:#aaa!important}.text-color-light-grey-2::selection{background:#aaa3!important;color:#aaa!important}.text-color-light-grey-6{color:#ccc!important}.text-color-light-grey-6::-moz-selection{color:#ccc!important;background:#aaa3!important}.text-color-light-grey-6::selection{color:#ccc!important;background:#aaa3!important}.text-color-white{color:#dadada!important}.text-color-white::-moz-selection{color:#dadada!important;background:#fff3!important}.text-color-white::selection{color:#dadada!important;background:#fff3!important}.text-color-white-2{color:#fff!important}.text-color-white-2::-moz-selection{color:#dadada!important;background:#fff3!important}.text-color-white-2::selection{color:#dadada!important;background:#fff3!important}.text-color-white-4{color:#ffffffb2!important}.text-color-white-4::-moz-selection{color:#ffffffb2!important;background:#fff3!important}.text-color-white-4::selection{color:#ffffffb2!important;background:#fff3!important}.text-color-dark-grey{color:#6c6c6c!important}.text-color-dark-grey::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-dark-grey::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw6-2{color:#6c6c6c!important}.text-color-bw6-2::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw6-2::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw-9{color:#dadada!important}.text-color-bw-9::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw-9::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-grey{color:#919191!important}.text-color-grey::-moz-selection{color:#919191!important;background:#91919133!important}.text-color-grey::selection{color:#919191!important;background:#91919133!important}.text-color-grey .address-text::-moz-selection,.text-color-grey .marker-bold-text::-moz-selection{color:#919191!important;background:#91919133!important}.text-color-grey .address-text::selection,.text-color-grey .marker-bold-text::selection{color:#919191!important;background:#91919133!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}@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}}.svg-fill-black svg path{fill:#424242!important}.svg-fill-muted svg path{fill:#919191!important}.svg-fill-bw-9 svg path{fill:#dadada!important}.svg-fill-light-grey-2 svg path{fill:#aaa!important}.svg-fill-light-grey-6 svg path{fill:#ccc!important}.svg-fill-blue-13 svg path{fill:#6692f1!important}.svg-fill-blue-19 svg path{fill:#92b1f5!important}.svg-fill-blue-26 svg path{fill:#4dc5eb!important}.svg-hover-muted svg path{transition:all .3s ease-in-out}.svg-hover-muted:hover svg path{fill:#919191!important}.svg-hover-black svg path{transition:all .3s ease-in-out}.svg-hover-black:hover svg path{fill:#424242!important}.svg-hover-blue-15 svg path{transition:all .3s ease-in-out}.svg-hover-blue-15:hover svg path{fill:#0b49d1!important}.svg-hover-bw6-2 svg path{transition:all .3s ease-in-out}.svg-hover-bw6-2:hover svg path{fill:#6c6c6c!important}.svg-hover-trash-red svg path{transition:all .3s ease-in-out}.svg-hover-trash-red:hover svg path{fill:#ff5050!important}.svg-hover-red-14 svg path{transition:all .3s ease-in-out}.svg-hover-red-14:hover svg path{fill:#c20c0c!important}.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-44-16 svg{width:44px;height:16px}*{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}.ta-card-body{overflow:visible!important}.split-crop-holder.split{width:50%}.split-crop-holder.hidden-drop{display:none}.ta-upload{gap:8px}.ta-upload .ta-upload-dropzone{height:186px;width:calc(100% - 10px);margin:0 6px}.ta-upload .documents_holder{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;transition:all .3s ease-in-out}.ta-upload .documents_holder .ta-upload-carousel-container{transition:all .3s ease-in-out}.ta-upload.documents{display:block!important}.ta-upload.documents .ta-upload-dropzone{height:332px;width:100%;margin:0}.ta-upload-small{grid-template-columns:164px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:8px;transition:all .3s ease-in-out}.ta-upload-medium-file{grid-template-columns:164px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-medium-files{grid-template-columns:344px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-large-file{grid-template-columns:164px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-large-twofiles{grid-template-columns:344px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-large-threefiles{grid-template-columns:524px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-review-mode{padding:8px 6px 6px 0;grid-template-columns:1fr;align-items:center;justify-content:center}.ta-upload.driver-details-pdf{grid-template-columns:1fr;grid-template-rows:312px}.ta-upload.company-documents{grid-template-columns:1fr;grid-template-rows:332px}.ta-upload.driver-card-pdf{grid-template-columns:1fr;grid-template-rows:416px}.ta-upload.company-details-pdf{grid-template-columns:1fr;grid-template-rows:378px}.ta-upload.landscape-details-view{grid-template-columns:1fr;grid-template-rows:200px}.ta-upload.todo-details,.ta-upload.table-details{grid-template-columns:100% 1fr;grid-template-rows:200px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: AngularSvgIconModule }, { kind: "ngmodule", type: NgbPopoverModule }, { kind: "component", type:
|
|
279
|
+
], viewQueries: [{ propertyName: "modalCarousel", first: true, predicate: CaUploadFilesCarouselComponent, descendants: true }, { propertyName: "uploadedFiles", predicate: CaUploadFileComponent, descendants: true }], ngImport: i0, template: "<div\n class=\"ta-upload d-flex align-items-center {{\n config.fileOptionsConfig.customClassName\n }}\"\n [ngClass]=\"\n config.files?.length\n | uploadClass\n : config.carouselConfig.size\n : config.review.isReview\n : config.slider.dontUseSlider\n \"\n>\n <!-- Carousel Files -->\n @if (\n config.files?.length && !config.slider.dontUseSlider && !config.hasCrop\n ) {\n <app-ca-upload-files-carousel\n [config]=\"carouselFileConfig\"\n (activeSlide)=\"currentSlide = $event\"\n [slideWidth]=\"config.slideWidth\"\n (hoverArrowEmit)=\"hoverArrow($event)\"\n >\n @for (file of config.files; track $index) {\n <div class=\"ta-upload-carousel-container\">\n <div>\n <app-ca-upload-file\n #uploadedFiles\n [config]=\"config.fileOptionsConfig | mapFile: file\"\n [reviewFileConfig]=\"reviewFileConfig\"\n (fileHover)=\"fileHover($event)\"\n (fileAction)=\"onFileAction($event)\"\n (landscapeCheck)=\"onLandscapeCheck($event)\"\n (documentReviewInputEvent)=\"\n documentReviewInputEventMethod($event)\n \"\n ></app-ca-upload-file>\n </div>\n </div>\n }\n </app-ca-upload-files-carousel>\n }\n\n @if (config.slider.dontUseSlider && !config.hasCrop) {\n <div class=\"documents_holder\">\n <app-ca-upload-dropzone\n [config]=\"config.dropzoneConf\"\n (onFileEvent)=\"onUploadFiles($event)\"\n (closeDropzone)=\"dropZoneClose()\"\n ></app-ca-upload-dropzone>\n @for (file of config.files; track $index) {\n <div class=\"ta-upload-carousel-container\">\n <div>\n <app-ca-upload-file\n [config]=\"config.fileOptionsConfig | mapFile: file\"\n [reviewFileConfig]=\"reviewFileConfig\"\n (fileAction)=\"onFileAction($event)\"\n (landscapeCheck)=\"onLandscapeCheck($event)\"\n (documentReviewInputEvent)=\"\n documentReviewInputEventMethod($event)\n \"\n ></app-ca-upload-file>\n </div>\n </div>\n }\n </div>\n }\n\n <!-- Image Crop Template -->\n\n <div\n class=\"split-crop-holder\"\n [class.split]=\"isDropzoneShown\"\n [ngClass]=\"{ 'hidden-drop': !config.isVisibleCropAndDrop }\"\n >\n @if (config.hasCrop && config.files.length) {\n @for (file of config.files; track $index) {\n <app-ca-logo-change\n [hasBlobUrl]=\"config.hasBlobUrl\"\n [imageToCrop]=\"file?.url\"\n [isRoundCropper]=\"config.isRoundCrop\"\n [isDropzoneShown]=\"isDropzoneShown\"\n [initialCropperPosition]=\"config.initialCropperPosition\"\n [containWithinAspectRatio]=\"config.containWithinAspectRatio\"\n [aspectRatio]=\"config.aspectRatio\"\n [customWidth]=\"config.dropzoneCustomWidth\"\n (sendImageData)=\"onUploadFiles($event)\"\n ></app-ca-logo-change>\n }\n }\n </div>\n\n <div\n class=\"split-crop-holder\"\n [class.split]=\"config.hasCrop && config.files.length && isDropzoneShown\"\n [ngClass]=\"{ 'hidden-drop': !config.isVisibleCropAndDrop }\"\n >\n @if (isDropzoneShown) {\n <app-ca-upload-dropzone\n [config]=\"config.dropzoneConf\"\n [customWidth]=\"config.dropzoneCustomWidth\"\n [isDropzoneShownInCrop]=\"\n config.hasCrop && !!config.files.length && isDropzoneShown\n \"\n (onFileEvent)=\"onUploadFiles($event)\"\n ></app-ca-upload-dropzone>\n }\n </div>\n</div>\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{font-weight:600!important}.ca-font-bold{font-weight:700!important}.ca-font-extra-bold{font-weight:800!important}.ca-font-black{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:#dadada}.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:#dadada}.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:#dadada}.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:#42424233!important;color:#424242!important}.text-color-black::selection{background:#42424233!important;color:#424242!important}.text-color-black-2{color:#2f2f2f!important}.text-color-black-2::-moz-selection{background:#2f2f2f33!important;color:#2f2f2f!important}.text-color-black-2::selection{background:#2f2f2f33!important;color:#2f2f2f!important}.text-color-muted{color:#919191!important}.text-color-muted::-moz-selection{background:#91919133!important;color:#919191!important}.text-color-muted::selection{background:#91919133!important;color:#919191!important}.text-color-green{color:#56b4ac!important}.text-color-green::-moz-selection{background:#56b4ac33!important;color:#56b4ac!important}.text-color-green::selection{background:#56b4ac33!important;color:#56b4ac!important}.text-color-green-4{color:#86c9c3!important}.text-color-green-4::-moz-selection{background:#86c9c333!important;color:#86c9c3!important}.text-color-green-4::selection{background:#86c9c333!important;color:#86c9c3!important}.text-color-blue-13{color:#6692f1!important}.text-color-blue-13::-moz-selection{background:#66921833!important;color:#6692f1!important}.text-color-blue-13::selection{background:#66921833!important;color:#6692f1!important}.text-color-blue-18{color:#3b73ed!important}.text-color-blue-18::-moz-selection{background:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-18::selection{background:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-19{color:#92b1f5!important}.text-color-blue-19::-moz-selection{background:#92b1f533!important;color:#92b1f5!important}.text-color-blue-19::selection{background:#92b1f533!important;color:#92b1f5!important}.text-color-red-10{color:#e66767!important}.text-color-red-10::-moz-selection{background:#e6676733!important;color:#e66767!important}.text-color-red-10::selection{background:#e6676733!important;color:#e66767!important}.text-color-red-13{color:#ed9292!important}.text-color-red-13::-moz-selection{background:#ed929233!important;color:#ed9292!important}.text-color-red-13::selection{background:#ed929233!important;color:#ed9292!important}.text-color-light-grey{color:#e5e5e5!important}.text-color-light-grey::-moz-selection{background:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey::selection{background:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey-2{color:#aaa!important}.text-color-light-grey-2::-moz-selection{background:#aaa3!important;color:#aaa!important}.text-color-light-grey-2::selection{background:#aaa3!important;color:#aaa!important}.text-color-light-grey-6{color:#ccc!important}.text-color-light-grey-6::-moz-selection{color:#ccc!important;background:#aaa3!important}.text-color-light-grey-6::selection{color:#ccc!important;background:#aaa3!important}.text-color-white{color:#dadada!important}.text-color-white::-moz-selection{color:#dadada!important;background:#fff3!important}.text-color-white::selection{color:#dadada!important;background:#fff3!important}.text-color-white-2{color:#fff!important}.text-color-white-2::-moz-selection{color:#dadada!important;background:#fff3!important}.text-color-white-2::selection{color:#dadada!important;background:#fff3!important}.text-color-white-4{color:#ffffffb2!important}.text-color-white-4::-moz-selection{color:#ffffffb2!important;background:#fff3!important}.text-color-white-4::selection{color:#ffffffb2!important;background:#fff3!important}.text-color-dark-grey{color:#6c6c6c!important}.text-color-dark-grey::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-dark-grey::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw6-2{color:#6c6c6c!important}.text-color-bw6-2::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw6-2::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw-9{color:#dadada!important}.text-color-bw-9::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw-9::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-grey{color:#919191!important}.text-color-grey::-moz-selection{color:#919191!important;background:#91919133!important}.text-color-grey::selection{color:#919191!important;background:#91919133!important}.text-color-grey .address-text::-moz-selection,.text-color-grey .marker-bold-text::-moz-selection{color:#919191!important;background:#91919133!important}.text-color-grey .address-text::selection,.text-color-grey .marker-bold-text::selection{color:#919191!important;background:#91919133!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}@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}}.svg-fill-black svg path{fill:#424242!important}.svg-fill-muted svg path{fill:#919191!important}.svg-fill-bw-9 svg path{fill:#dadada!important}.svg-fill-light-grey-2 svg path{fill:#aaa!important}.svg-fill-light-grey-6 svg path{fill:#ccc!important}.svg-fill-blue-13 svg path{fill:#6692f1!important}.svg-fill-blue-19 svg path{fill:#92b1f5!important}.svg-fill-blue-26 svg path{fill:#4dc5eb!important}.svg-fill-grey svg path{fill:#919191!important}.svg-fill-red-10 svg path{fill:#e66767!important}.svg-fill-green svg path{fill:#56b4ac!important}.svg-hover-muted svg path{transition:all .3s ease-in-out}.svg-hover-muted:hover svg path{fill:#919191!important}.svg-hover-black svg path{transition:all .3s ease-in-out}.svg-hover-black:hover svg path{fill:#424242!important}.svg-hover-blue-15 svg path{transition:all .3s ease-in-out}.svg-hover-blue-15:hover svg path{fill:#0b49d1!important}.svg-hover-bw6-2 svg path{transition:all .3s ease-in-out}.svg-hover-bw6-2:hover svg path{fill:#6c6c6c!important}.svg-hover-trash-red svg path{transition:all .3s ease-in-out}.svg-hover-trash-red:hover svg path{fill:#ff5050!important}.svg-hover-red-14 svg path{transition:all .3s ease-in-out}.svg-hover-red-14:hover svg path{fill:#c20c0c!important}.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-44-16 svg{width:44px;height:16px}*{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}.cursor-pointer{cursor:pointer}.ta-card-body{overflow:visible!important}.split-crop-holder.split{width:50%}.split-crop-holder.hidden-drop{display:none}.ta-upload{gap:8px}.ta-upload .ta-upload-dropzone{height:186px;width:calc(100% - 10px);margin:0 6px}.ta-upload .documents_holder{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;transition:all .3s ease-in-out}.ta-upload .documents_holder .ta-upload-carousel-container{transition:all .3s ease-in-out}.ta-upload.documents{display:block!important}.ta-upload.documents .ta-upload-dropzone{height:332px;width:100%;margin:0}.ta-upload-small{grid-template-columns:164px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:8px;transition:all .3s ease-in-out}.ta-upload-medium-file{grid-template-columns:164px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-medium-files{grid-template-columns:344px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-large-file{grid-template-columns:164px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-large-twofiles{grid-template-columns:344px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-large-threefiles{grid-template-columns:524px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-review-mode{padding:8px 6px 6px 0;grid-template-columns:1fr;align-items:center;justify-content:center}.ta-upload.driver-details-pdf{grid-template-columns:1fr;grid-template-rows:312px}.ta-upload.company-documents{grid-template-columns:1fr;grid-template-rows:332px}.ta-upload.driver-card-pdf{grid-template-columns:1fr;grid-template-rows:416px}.ta-upload.company-details-pdf{grid-template-columns:1fr;grid-template-rows:378px}.ta-upload.landscape-details-view{grid-template-columns:1fr;grid-template-rows:200px}.ta-upload.todo-details,.ta-upload.table-details{grid-template-columns:100% 1fr;grid-template-rows:200px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: AngularSvgIconModule }, { kind: "ngmodule", type: NgbPopoverModule }, { kind: "component", type:
|
|
280
280
|
//Component
|
|
281
281
|
CaUploadDropzoneComponent, selector: "app-ca-upload-dropzone", inputs: ["config", "isDropzoneShownInCrop", "customWidth"], outputs: ["onFileEvent", "onDropBackground", "closeDropzone"] }, { kind: "component", type: CaUploadFileComponent, selector: "app-ca-upload-file", inputs: ["config", "reviewFileConfig"], outputs: ["fileAction", "deleteAction", "documentReviewInputEvent", "landscapeCheck", "fileHover"] }, { kind: "component", type: CaUploadFilesCarouselComponent, selector: "app-ca-upload-files-carousel", inputs: ["slideWidth", "config"], outputs: ["activeSlide", "hoverArrowEmit"] }, { kind: "component", type: CaLogoChangeComponent, selector: "app-ca-logo-change", inputs: ["customClass", "imageToCrop", "isRoundCropper", "imageChangedEvent", "isDropzoneShown", "hasBlobUrl", "initialCropperPosition", "containWithinAspectRatio", "aspectRatio", "customWidth"], outputs: ["sendImageData"] }, { kind: "pipe", type:
|
|
282
282
|
//Pipe
|
|
@@ -300,7 +300,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
300
300
|
provideLottieOptions({
|
|
301
301
|
player: () => import('lottie-web'),
|
|
302
302
|
}),
|
|
303
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"ta-upload d-flex align-items-center {{\n config.fileOptionsConfig.customClassName\n }}\"\n [ngClass]=\"\n config.files?.length\n | uploadClass\n : config.carouselConfig.size\n : config.review.isReview\n : config.slider.dontUseSlider\n \"\n>\n <!-- Carousel Files -->\n @if (\n config.files?.length && !config.slider.dontUseSlider && !config.hasCrop\n ) {\n <app-ca-upload-files-carousel\n [config]=\"carouselFileConfig\"\n (activeSlide)=\"currentSlide = $event\"\n [slideWidth]=\"config.slideWidth\"\n (hoverArrowEmit)=\"hoverArrow($event)\"\n >\n @for (file of config.files; track $index) {\n <div class=\"ta-upload-carousel-container\">\n <div>\n <app-ca-upload-file\n #uploadedFiles\n [config]=\"config.fileOptionsConfig | mapFile: file\"\n [reviewFileConfig]=\"reviewFileConfig\"\n (fileHover)=\"fileHover($event)\"\n (fileAction)=\"onFileAction($event)\"\n (landscapeCheck)=\"onLandscapeCheck($event)\"\n (documentReviewInputEvent)=\"\n documentReviewInputEventMethod($event)\n \"\n ></app-ca-upload-file>\n </div>\n </div>\n }\n </app-ca-upload-files-carousel>\n }\n\n @if (config.slider.dontUseSlider && !config.hasCrop) {\n <div class=\"documents_holder\">\n <app-ca-upload-dropzone\n [config]=\"config.dropzoneConf\"\n (onFileEvent)=\"onUploadFiles($event)\"\n (closeDropzone)=\"dropZoneClose()\"\n ></app-ca-upload-dropzone>\n @for (file of config.files; track $index) {\n <div class=\"ta-upload-carousel-container\">\n <div>\n <app-ca-upload-file\n [config]=\"config.fileOptionsConfig | mapFile: file\"\n [reviewFileConfig]=\"reviewFileConfig\"\n (fileAction)=\"onFileAction($event)\"\n (landscapeCheck)=\"onLandscapeCheck($event)\"\n (documentReviewInputEvent)=\"\n documentReviewInputEventMethod($event)\n \"\n ></app-ca-upload-file>\n </div>\n </div>\n }\n </div>\n }\n\n <!-- Image Crop Template -->\n\n <div\n class=\"split-crop-holder\"\n [class.split]=\"isDropzoneShown\"\n [ngClass]=\"{ 'hidden-drop': !config.isVisibleCropAndDrop }\"\n >\n @if (config.hasCrop && config.files.length) {\n @for (file of config.files; track $index) {\n <app-ca-logo-change\n [hasBlobUrl]=\"config.hasBlobUrl\"\n [imageToCrop]=\"file?.url\"\n [isRoundCropper]=\"config.isRoundCrop\"\n [isDropzoneShown]=\"isDropzoneShown\"\n [initialCropperPosition]=\"config.initialCropperPosition\"\n [containWithinAspectRatio]=\"config.containWithinAspectRatio\"\n [aspectRatio]=\"config.aspectRatio\"\n [customWidth]=\"config.dropzoneCustomWidth\"\n (sendImageData)=\"onUploadFiles($event)\"\n ></app-ca-logo-change>\n }\n }\n </div>\n\n <div\n class=\"split-crop-holder\"\n [class.split]=\"config.hasCrop && config.files.length && isDropzoneShown\"\n [ngClass]=\"{ 'hidden-drop': !config.isVisibleCropAndDrop }\"\n >\n @if (isDropzoneShown) {\n <app-ca-upload-dropzone\n [config]=\"config.dropzoneConf\"\n [customWidth]=\"config.dropzoneCustomWidth\"\n [isDropzoneShownInCrop]=\"\n config.hasCrop && !!config.files.length && isDropzoneShown\n \"\n (onFileEvent)=\"onUploadFiles($event)\"\n ></app-ca-upload-dropzone>\n }\n </div>\n</div>\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{font-weight:600!important}.ca-font-bold{font-weight:700!important}.ca-font-extra-bold{font-weight:800!important}.ca-font-black{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:#dadada}.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:#dadada}.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:#dadada}.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:#42424233!important;color:#424242!important}.text-color-black::selection{background:#42424233!important;color:#424242!important}.text-color-black-2{color:#2f2f2f!important}.text-color-black-2::-moz-selection{background:#2f2f2f33!important;color:#2f2f2f!important}.text-color-black-2::selection{background:#2f2f2f33!important;color:#2f2f2f!important}.text-color-muted{color:#919191!important}.text-color-muted::-moz-selection{background:#91919133!important;color:#919191!important}.text-color-muted::selection{background:#91919133!important;color:#919191!important}.text-color-green{color:#56b4ac!important}.text-color-green::-moz-selection{background:#56b4ac33!important;color:#56b4ac!important}.text-color-green::selection{background:#56b4ac33!important;color:#56b4ac!important}.text-color-blue-13{color:#6692f1!important}.text-color-blue-13::-moz-selection{background:#66921833!important;color:#6692f1!important}.text-color-blue-13::selection{background:#66921833!important;color:#6692f1!important}.text-color-blue-18{color:#3b73ed!important}.text-color-blue-18::-moz-selection{background:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-18::selection{background:#3b73ed33!important;color:#3b73ed!important}.text-color-red-10{color:#e66767!important}.text-color-red-10::-moz-selection{background:#e6676733!important;color:#e66767!important}.text-color-red-10::selection{background:#e6676733!important;color:#e66767!important}.text-color-light-grey{color:#e5e5e5!important}.text-color-light-grey::-moz-selection{background:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey::selection{background:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey-2{color:#aaa!important}.text-color-light-grey-2::-moz-selection{background:#aaa3!important;color:#aaa!important}.text-color-light-grey-2::selection{background:#aaa3!important;color:#aaa!important}.text-color-light-grey-6{color:#ccc!important}.text-color-light-grey-6::-moz-selection{color:#ccc!important;background:#aaa3!important}.text-color-light-grey-6::selection{color:#ccc!important;background:#aaa3!important}.text-color-white{color:#dadada!important}.text-color-white::-moz-selection{color:#dadada!important;background:#fff3!important}.text-color-white::selection{color:#dadada!important;background:#fff3!important}.text-color-white-2{color:#fff!important}.text-color-white-2::-moz-selection{color:#dadada!important;background:#fff3!important}.text-color-white-2::selection{color:#dadada!important;background:#fff3!important}.text-color-white-4{color:#ffffffb2!important}.text-color-white-4::-moz-selection{color:#ffffffb2!important;background:#fff3!important}.text-color-white-4::selection{color:#ffffffb2!important;background:#fff3!important}.text-color-dark-grey{color:#6c6c6c!important}.text-color-dark-grey::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-dark-grey::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw6-2{color:#6c6c6c!important}.text-color-bw6-2::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw6-2::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw-9{color:#dadada!important}.text-color-bw-9::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw-9::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-grey{color:#919191!important}.text-color-grey::-moz-selection{color:#919191!important;background:#91919133!important}.text-color-grey::selection{color:#919191!important;background:#91919133!important}.text-color-grey .address-text::-moz-selection,.text-color-grey .marker-bold-text::-moz-selection{color:#919191!important;background:#91919133!important}.text-color-grey .address-text::selection,.text-color-grey .marker-bold-text::selection{color:#919191!important;background:#91919133!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}@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}}.svg-fill-black svg path{fill:#424242!important}.svg-fill-muted svg path{fill:#919191!important}.svg-fill-bw-9 svg path{fill:#dadada!important}.svg-fill-light-grey-2 svg path{fill:#aaa!important}.svg-fill-light-grey-6 svg path{fill:#ccc!important}.svg-fill-blue-13 svg path{fill:#6692f1!important}.svg-fill-blue-19 svg path{fill:#92b1f5!important}.svg-fill-blue-26 svg path{fill:#4dc5eb!important}.svg-hover-muted svg path{transition:all .3s ease-in-out}.svg-hover-muted:hover svg path{fill:#919191!important}.svg-hover-black svg path{transition:all .3s ease-in-out}.svg-hover-black:hover svg path{fill:#424242!important}.svg-hover-blue-15 svg path{transition:all .3s ease-in-out}.svg-hover-blue-15:hover svg path{fill:#0b49d1!important}.svg-hover-bw6-2 svg path{transition:all .3s ease-in-out}.svg-hover-bw6-2:hover svg path{fill:#6c6c6c!important}.svg-hover-trash-red svg path{transition:all .3s ease-in-out}.svg-hover-trash-red:hover svg path{fill:#ff5050!important}.svg-hover-red-14 svg path{transition:all .3s ease-in-out}.svg-hover-red-14:hover svg path{fill:#c20c0c!important}.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-44-16 svg{width:44px;height:16px}*{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}.ta-card-body{overflow:visible!important}.split-crop-holder.split{width:50%}.split-crop-holder.hidden-drop{display:none}.ta-upload{gap:8px}.ta-upload .ta-upload-dropzone{height:186px;width:calc(100% - 10px);margin:0 6px}.ta-upload .documents_holder{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;transition:all .3s ease-in-out}.ta-upload .documents_holder .ta-upload-carousel-container{transition:all .3s ease-in-out}.ta-upload.documents{display:block!important}.ta-upload.documents .ta-upload-dropzone{height:332px;width:100%;margin:0}.ta-upload-small{grid-template-columns:164px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:8px;transition:all .3s ease-in-out}.ta-upload-medium-file{grid-template-columns:164px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-medium-files{grid-template-columns:344px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-large-file{grid-template-columns:164px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-large-twofiles{grid-template-columns:344px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-large-threefiles{grid-template-columns:524px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-review-mode{padding:8px 6px 6px 0;grid-template-columns:1fr;align-items:center;justify-content:center}.ta-upload.driver-details-pdf{grid-template-columns:1fr;grid-template-rows:312px}.ta-upload.company-documents{grid-template-columns:1fr;grid-template-rows:332px}.ta-upload.driver-card-pdf{grid-template-columns:1fr;grid-template-rows:416px}.ta-upload.company-details-pdf{grid-template-columns:1fr;grid-template-rows:378px}.ta-upload.landscape-details-view{grid-template-columns:1fr;grid-template-rows:200px}.ta-upload.todo-details,.ta-upload.table-details{grid-template-columns:100% 1fr;grid-template-rows:200px}\n"] }]
|
|
303
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"ta-upload d-flex align-items-center {{\n config.fileOptionsConfig.customClassName\n }}\"\n [ngClass]=\"\n config.files?.length\n | uploadClass\n : config.carouselConfig.size\n : config.review.isReview\n : config.slider.dontUseSlider\n \"\n>\n <!-- Carousel Files -->\n @if (\n config.files?.length && !config.slider.dontUseSlider && !config.hasCrop\n ) {\n <app-ca-upload-files-carousel\n [config]=\"carouselFileConfig\"\n (activeSlide)=\"currentSlide = $event\"\n [slideWidth]=\"config.slideWidth\"\n (hoverArrowEmit)=\"hoverArrow($event)\"\n >\n @for (file of config.files; track $index) {\n <div class=\"ta-upload-carousel-container\">\n <div>\n <app-ca-upload-file\n #uploadedFiles\n [config]=\"config.fileOptionsConfig | mapFile: file\"\n [reviewFileConfig]=\"reviewFileConfig\"\n (fileHover)=\"fileHover($event)\"\n (fileAction)=\"onFileAction($event)\"\n (landscapeCheck)=\"onLandscapeCheck($event)\"\n (documentReviewInputEvent)=\"\n documentReviewInputEventMethod($event)\n \"\n ></app-ca-upload-file>\n </div>\n </div>\n }\n </app-ca-upload-files-carousel>\n }\n\n @if (config.slider.dontUseSlider && !config.hasCrop) {\n <div class=\"documents_holder\">\n <app-ca-upload-dropzone\n [config]=\"config.dropzoneConf\"\n (onFileEvent)=\"onUploadFiles($event)\"\n (closeDropzone)=\"dropZoneClose()\"\n ></app-ca-upload-dropzone>\n @for (file of config.files; track $index) {\n <div class=\"ta-upload-carousel-container\">\n <div>\n <app-ca-upload-file\n [config]=\"config.fileOptionsConfig | mapFile: file\"\n [reviewFileConfig]=\"reviewFileConfig\"\n (fileAction)=\"onFileAction($event)\"\n (landscapeCheck)=\"onLandscapeCheck($event)\"\n (documentReviewInputEvent)=\"\n documentReviewInputEventMethod($event)\n \"\n ></app-ca-upload-file>\n </div>\n </div>\n }\n </div>\n }\n\n <!-- Image Crop Template -->\n\n <div\n class=\"split-crop-holder\"\n [class.split]=\"isDropzoneShown\"\n [ngClass]=\"{ 'hidden-drop': !config.isVisibleCropAndDrop }\"\n >\n @if (config.hasCrop && config.files.length) {\n @for (file of config.files; track $index) {\n <app-ca-logo-change\n [hasBlobUrl]=\"config.hasBlobUrl\"\n [imageToCrop]=\"file?.url\"\n [isRoundCropper]=\"config.isRoundCrop\"\n [isDropzoneShown]=\"isDropzoneShown\"\n [initialCropperPosition]=\"config.initialCropperPosition\"\n [containWithinAspectRatio]=\"config.containWithinAspectRatio\"\n [aspectRatio]=\"config.aspectRatio\"\n [customWidth]=\"config.dropzoneCustomWidth\"\n (sendImageData)=\"onUploadFiles($event)\"\n ></app-ca-logo-change>\n }\n }\n </div>\n\n <div\n class=\"split-crop-holder\"\n [class.split]=\"config.hasCrop && config.files.length && isDropzoneShown\"\n [ngClass]=\"{ 'hidden-drop': !config.isVisibleCropAndDrop }\"\n >\n @if (isDropzoneShown) {\n <app-ca-upload-dropzone\n [config]=\"config.dropzoneConf\"\n [customWidth]=\"config.dropzoneCustomWidth\"\n [isDropzoneShownInCrop]=\"\n config.hasCrop && !!config.files.length && isDropzoneShown\n \"\n (onFileEvent)=\"onUploadFiles($event)\"\n ></app-ca-upload-dropzone>\n }\n </div>\n</div>\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{font-weight:600!important}.ca-font-bold{font-weight:700!important}.ca-font-extra-bold{font-weight:800!important}.ca-font-black{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:#dadada}.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:#dadada}.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:#dadada}.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:#42424233!important;color:#424242!important}.text-color-black::selection{background:#42424233!important;color:#424242!important}.text-color-black-2{color:#2f2f2f!important}.text-color-black-2::-moz-selection{background:#2f2f2f33!important;color:#2f2f2f!important}.text-color-black-2::selection{background:#2f2f2f33!important;color:#2f2f2f!important}.text-color-muted{color:#919191!important}.text-color-muted::-moz-selection{background:#91919133!important;color:#919191!important}.text-color-muted::selection{background:#91919133!important;color:#919191!important}.text-color-green{color:#56b4ac!important}.text-color-green::-moz-selection{background:#56b4ac33!important;color:#56b4ac!important}.text-color-green::selection{background:#56b4ac33!important;color:#56b4ac!important}.text-color-green-4{color:#86c9c3!important}.text-color-green-4::-moz-selection{background:#86c9c333!important;color:#86c9c3!important}.text-color-green-4::selection{background:#86c9c333!important;color:#86c9c3!important}.text-color-blue-13{color:#6692f1!important}.text-color-blue-13::-moz-selection{background:#66921833!important;color:#6692f1!important}.text-color-blue-13::selection{background:#66921833!important;color:#6692f1!important}.text-color-blue-18{color:#3b73ed!important}.text-color-blue-18::-moz-selection{background:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-18::selection{background:#3b73ed33!important;color:#3b73ed!important}.text-color-blue-19{color:#92b1f5!important}.text-color-blue-19::-moz-selection{background:#92b1f533!important;color:#92b1f5!important}.text-color-blue-19::selection{background:#92b1f533!important;color:#92b1f5!important}.text-color-red-10{color:#e66767!important}.text-color-red-10::-moz-selection{background:#e6676733!important;color:#e66767!important}.text-color-red-10::selection{background:#e6676733!important;color:#e66767!important}.text-color-red-13{color:#ed9292!important}.text-color-red-13::-moz-selection{background:#ed929233!important;color:#ed9292!important}.text-color-red-13::selection{background:#ed929233!important;color:#ed9292!important}.text-color-light-grey{color:#e5e5e5!important}.text-color-light-grey::-moz-selection{background:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey::selection{background:#e5e5e533!important;color:#e5e5e5!important}.text-color-light-grey-2{color:#aaa!important}.text-color-light-grey-2::-moz-selection{background:#aaa3!important;color:#aaa!important}.text-color-light-grey-2::selection{background:#aaa3!important;color:#aaa!important}.text-color-light-grey-6{color:#ccc!important}.text-color-light-grey-6::-moz-selection{color:#ccc!important;background:#aaa3!important}.text-color-light-grey-6::selection{color:#ccc!important;background:#aaa3!important}.text-color-white{color:#dadada!important}.text-color-white::-moz-selection{color:#dadada!important;background:#fff3!important}.text-color-white::selection{color:#dadada!important;background:#fff3!important}.text-color-white-2{color:#fff!important}.text-color-white-2::-moz-selection{color:#dadada!important;background:#fff3!important}.text-color-white-2::selection{color:#dadada!important;background:#fff3!important}.text-color-white-4{color:#ffffffb2!important}.text-color-white-4::-moz-selection{color:#ffffffb2!important;background:#fff3!important}.text-color-white-4::selection{color:#ffffffb2!important;background:#fff3!important}.text-color-dark-grey{color:#6c6c6c!important}.text-color-dark-grey::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-dark-grey::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw6-2{color:#6c6c6c!important}.text-color-bw6-2::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw6-2::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw-9{color:#dadada!important}.text-color-bw-9::-moz-selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-bw-9::selection{color:#6c6c6c!important;background:#6c6c6c33!important}.text-color-grey{color:#919191!important}.text-color-grey::-moz-selection{color:#919191!important;background:#91919133!important}.text-color-grey::selection{color:#919191!important;background:#91919133!important}.text-color-grey .address-text::-moz-selection,.text-color-grey .marker-bold-text::-moz-selection{color:#919191!important;background:#91919133!important}.text-color-grey .address-text::selection,.text-color-grey .marker-bold-text::selection{color:#919191!important;background:#91919133!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}@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}}.svg-fill-black svg path{fill:#424242!important}.svg-fill-muted svg path{fill:#919191!important}.svg-fill-bw-9 svg path{fill:#dadada!important}.svg-fill-light-grey-2 svg path{fill:#aaa!important}.svg-fill-light-grey-6 svg path{fill:#ccc!important}.svg-fill-blue-13 svg path{fill:#6692f1!important}.svg-fill-blue-19 svg path{fill:#92b1f5!important}.svg-fill-blue-26 svg path{fill:#4dc5eb!important}.svg-fill-grey svg path{fill:#919191!important}.svg-fill-red-10 svg path{fill:#e66767!important}.svg-fill-green svg path{fill:#56b4ac!important}.svg-hover-muted svg path{transition:all .3s ease-in-out}.svg-hover-muted:hover svg path{fill:#919191!important}.svg-hover-black svg path{transition:all .3s ease-in-out}.svg-hover-black:hover svg path{fill:#424242!important}.svg-hover-blue-15 svg path{transition:all .3s ease-in-out}.svg-hover-blue-15:hover svg path{fill:#0b49d1!important}.svg-hover-bw6-2 svg path{transition:all .3s ease-in-out}.svg-hover-bw6-2:hover svg path{fill:#6c6c6c!important}.svg-hover-trash-red svg path{transition:all .3s ease-in-out}.svg-hover-trash-red:hover svg path{fill:#ff5050!important}.svg-hover-red-14 svg path{transition:all .3s ease-in-out}.svg-hover-red-14:hover svg path{fill:#c20c0c!important}.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-44-16 svg{width:44px;height:16px}*{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}.cursor-pointer{cursor:pointer}.ta-card-body{overflow:visible!important}.split-crop-holder.split{width:50%}.split-crop-holder.hidden-drop{display:none}.ta-upload{gap:8px}.ta-upload .ta-upload-dropzone{height:186px;width:calc(100% - 10px);margin:0 6px}.ta-upload .documents_holder{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;transition:all .3s ease-in-out}.ta-upload .documents_holder .ta-upload-carousel-container{transition:all .3s ease-in-out}.ta-upload.documents{display:block!important}.ta-upload.documents .ta-upload-dropzone{height:332px;width:100%;margin:0}.ta-upload-small{grid-template-columns:164px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:8px;transition:all .3s ease-in-out}.ta-upload-medium-file{grid-template-columns:164px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-medium-files{grid-template-columns:344px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-large-file{grid-template-columns:164px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-large-twofiles{grid-template-columns:344px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-large-threefiles{grid-template-columns:524px 1fr;grid-template-rows:194px;-moz-column-gap:6px;column-gap:6px;transition:all .3s ease-in-out}.ta-upload-review-mode{padding:8px 6px 6px 0;grid-template-columns:1fr;align-items:center;justify-content:center}.ta-upload.driver-details-pdf{grid-template-columns:1fr;grid-template-rows:312px}.ta-upload.company-documents{grid-template-columns:1fr;grid-template-rows:332px}.ta-upload.driver-card-pdf{grid-template-columns:1fr;grid-template-rows:416px}.ta-upload.company-details-pdf{grid-template-columns:1fr;grid-template-rows:378px}.ta-upload.landscape-details-view{grid-template-columns:1fr;grid-template-rows:200px}.ta-upload.todo-details,.ta-upload.table-details{grid-template-columns:100% 1fr;grid-template-rows:200px}\n"] }]
|
|
304
304
|
}], ctorParameters: () => [{ type: i1.CaUploadFileService }, { type: i2.HttpClient }], propDecorators: { modalCarousel: [{
|
|
305
305
|
type: ViewChild,
|
|
306
306
|
args: [CaUploadFilesCarouselComponent]
|
|
@@ -318,4 +318,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
318
318
|
}], fileAdded: [{
|
|
319
319
|
type: Output
|
|
320
320
|
}] } });
|
|
321
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtdXBsb2FkLWZpbGVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLXVwbG9hZC1maWxlcy9jYS11cGxvYWQtZmlsZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtdXBsb2FkLWZpbGVzL2NhLXVwbG9hZC1maWxlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEVBQ1QsWUFBWSxHQUNmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFOUQsWUFBWTtBQUNaLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDBFQUEwRSxDQUFDO0FBVzFILE9BQU87QUFDUCxPQUFPLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFL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S0FBSztnQkFNSSx3QkFBd0I7c0JBQWpDLE1BQU07Z0JBRUcsV0FBVztzQkFBcEIsTUFBTTtnQkFFRyxhQUFhO3NCQUF0QixNQUFNO2dCQUVHLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFuZ3VsYXJTdmdJY29uTW9kdWxlIH0gZnJvbSAnYW5ndWxhci1zdmctaWNvbic7XG5pbXBvcnQgeyBwcm92aWRlTG90dGllT3B0aW9ucyB9IGZyb20gJ25neC1sb3R0aWUnO1xuaW1wb3J0IHsgTmdiUG9wb3Zlck1vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcblxuLy9Db21wb25lbnRzXG5pbXBvcnQgeyBDYVVwbG9hZERyb3B6b25lQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NhLXVwbG9hZC1kcm9wem9uZS9jYS11cGxvYWQtZHJvcHpvbmUuY29tcG9uZW50JztcbmltcG9ydCB7IENhVXBsb2FkRmlsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jYS11cGxvYWQtZmlsZS9jYS11cGxvYWQtZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FVcGxvYWRGaWxlc0Nhcm91c2VsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NhLXVwbG9hZC1maWxlcy1jYXJvdXNlbC9jYS11cGxvYWQtZmlsZXMtY2Fyb3VzZWwuY29tcG9uZW50JztcblxuLy9Nb2RlbHNcbmltcG9ydCB7XG4gICAgRG9jdW1lbnRSZXZpZXdJbnB1dEV2ZW50LFxuICAgIElVcGxvYWRGaWxlc0NvbmZpZyxcbiAgICBSZXZpZXdGaWxlQ29uZmlnLFxufSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBGaWxlQ29uZmlnLCBGaWxlRXZlbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2EtdXBsb2FkLWRyb3B6b25lL21vZGVscyc7XG5pbXBvcnQgeyBGaWxlc0Nhcm91c2VsQ29uZmlnIH0gZnJvbSAnLi9jb21wb25lbnRzL2NhLXVwbG9hZC1maWxlcy1jYXJvdXNlbC9tb2RlbHMnO1xuXG4vL0VudW1zXG5pbXBvcnQgeyBGaWxlc1NpemVFbnVtLCBGaWxlVHlwZXNFbnVtIH0gZnJvbSAnLi9lbnVtcyc7XG5pbXBvcnQgeyBEb2N1bWVudEFjdGlvbiB9IGZyb20gJy4vY29tcG9uZW50cy9jYS11cGxvYWQtZmlsZS9lbnVtcyc7XG5cbi8vU2VydmljZXNcbmltcG9ydCB7IENhVXBsb2FkRmlsZVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzJztcblxuLy9QaXBlXG5pbXBvcnQgeyBNYXBGaWxlUGlwZSwgVXBsb2FkQ2xhc3NQaXBlIH0gZnJvbSAnLi9waXBlcyc7XG5cbi8vQ29tcG9uZW50XG5pbXBvcnQgeyBDYUxvZ29DaGFuZ2VDb21wb25lbnQgfSBmcm9tICcuLi9jYS1sb2dvLWNoYW5nZS9jYS1sb2dvLWNoYW5nZS5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnYXBwLWNhLXVwbG9hZC1maWxlcycsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEFuZ3VsYXJTdmdJY29uTW9kdWxlLFxuICAgICAgICBOZ2JQb3BvdmVyTW9kdWxlLFxuICAgICAgICAvL0NvbXBvbmVudFxuICAgICAgICBDYVVwbG9hZERyb3B6b25lQ29tcG9uZW50LFxuICAgICAgICBDYVVwbG9hZEZpbGVDb21wb25lbnQsXG4gICAgICAgIENhVXBsb2FkRmlsZXNDYXJvdXNlbENvbXBvbmVudCxcbiAgICAgICAgQ2FMb2dvQ2hhbmdlQ29tcG9uZW50LFxuICAgICAgICAvL1BpcGVcbiAgICAgICAgVXBsb2FkQ2xhc3NQaXBlLFxuICAgICAgICBNYXBGaWxlUGlwZSxcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBwcm92aWRlTG90dGllT3B0aW9ucyh7XG4gICAgICAgICAgICBwbGF5ZXI6ICgpID0+IGltcG9ydCgnbG90dGllLXdlYicpLFxuICAgICAgICB9KSxcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jYS11cGxvYWQtZmlsZXMuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NhLXVwbG9hZC1maWxlcy5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDYVVwbG9hZEZpbGVzQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgQFZpZXdDaGlsZChDYVVwbG9hZEZpbGVzQ2Fyb3VzZWxDb21wb25lbnQpXG4gICAgcHVibGljIG1vZGFsQ2Fyb3VzZWwhOiBDYVVwbG9hZEZpbGVzQ2Fyb3VzZWxDb21wb25lbnQ7XG5cbiAgICBAVmlld0NoaWxkcmVuKENhVXBsb2FkRmlsZUNvbXBvbmVudClcbiAgICB1cGxvYWRlZEZpbGVzITogUXVlcnlMaXN0PENhVXBsb2FkRmlsZUNvbXBvbmVudD47XG5cbiAgICBASW5wdXQoKSBzZXQgdXBsb2FkRmlsZXNDb25maWcodmFsdWU6IElVcGxvYWRGaWxlc0NvbmZpZykge1xuICAgICAgICB0aGlzLl9jb25maWcgPSB7IC4uLnZhbHVlIH07XG5cbiAgICAgICAgaWYgKHRoaXMuX2NvbmZpZy5maWxlT3B0aW9uc0NvbmZpZz8udHlwZSA9PT0gRmlsZVR5cGVzRW51bS5ERVRBSUxTKVxuICAgICAgICAgICAgdGhpcy5tb2RhbENhcm91c2VsPy5zbGlkZVRvRmlsZSgwKTtcbiAgICB9XG4gICAgQE91dHB1dCgpIGRvY3VtZW50UmV2aWV3SW5wdXRFdmVudCA9XG4gICAgICAgIG5ldyBFdmVudEVtaXR0ZXI8RG9jdW1lbnRSZXZpZXdJbnB1dEV2ZW50PigpO1xuICAgIEBPdXRwdXQoKSBvbkZpbGVFdmVudDogRXZlbnRFbWl0dGVyPEZpbGVFdmVudD4gPVxuICAgICAgICBuZXcgRXZlbnRFbWl0dGVyPEZpbGVFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgY2xvc2VEcm9wem9uZSA9IG5ldyBFdmVudEVtaXR0ZXI8e30+KCk7XG5cbiAgICBAT3V0cHV0KCkgZmlsZUFkZGVkID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlPigpO1xuXG4gICAgcHVibGljIGN1cnJlbnRTbGlkZTogbnVtYmVyID0gMDtcbiAgICBwdWJsaWMgaXNEcm9wem9uZVNob3duOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIHByaXZhdGUgX2NvbmZpZyE6IElVcGxvYWRGaWxlc0NvbmZpZztcbiAgICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHB1YmxpYyBnZXQgY29uZmlnKCk6IElVcGxvYWRGaWxlc0NvbmZpZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb25maWc7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjYXJvdXNlbEZpbGVDb25maWcoKTogRmlsZXNDYXJvdXNlbENvbmZpZyB7XG4gICAgICAgIHJldHVybiB7IC4uLnRoaXMuX2NvbmZpZy5jYXJvdXNlbENvbmZpZyB9O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgcmV2aWV3RmlsZUNvbmZpZygpOiBSZXZpZXdGaWxlQ29uZmlnIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbmZpZy5yZXZpZXc7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgdXBsb2FkRmlsZVNlcnZpY2U6IENhVXBsb2FkRmlsZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudFxuICAgICkge31cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpYmVUb1VwbG9hZGVkRmlsZXMoKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKlxuICAgICAqIEBwYXJhbSBkYXRhIC0gcmV0dXJuZWQgZGF0YSBmcm9tIGZpbGUgYWN0aW9uIChvbmUgb3IgbXVsdGlwbGUpXG4gICAgICovXG5cbiAgICBwdWJsaWMgb25GaWxlQWN0aW9uKGRhdGE6IHsgZmlsZTogRmlsZUNvbmZpZzsgYWN0aW9uOiBzdHJpbmcgfSk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IGZpbGVzLCBvbmx5T25lVGFnRmlsZSwgc2l6ZSB9ID0gdGhpcy5fY29uZmlnO1xuICAgICAgICBzd2l0Y2ggKGRhdGEuYWN0aW9uKSB7XG4gICAgICAgICAgICBjYXNlIERvY3VtZW50QWN0aW9uLlRBRzpcbiAgICAgICAgICAgICAgICB0aGlzLm9uRmlsZUV2ZW50LmVtaXQoe1xuICAgICAgICAgICAgICAgICAgICBmaWxlczogIW9ubHlPbmVUYWdGaWxlID8gZmlsZXMgOiBkYXRhLmZpbGUsXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbjogZGF0YS5hY3Rpb24sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRBY3Rpb24uREVMRVRFOlxuICAgICAgICAgICAgICAgIGxldCBpc0xhc3REZWxldGVkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgZmlsZXMuZm9yRWFjaCgoaXRlbSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5maWxlTmFtZSA9PT0gZGF0YS5maWxlLmZpbGVOYW1lICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAoaW5kZXggPT09IGZpbGVzLmxlbmd0aCAtIDEgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleCA9PT0gZmlsZXMubGVuZ3RoIC0gMilcbiAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpc0xhc3REZWxldGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5fY29uZmlnLmZpbGVzID0gZmlsZXMuZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAoaXRlbSkgPT4gaXRlbS5maWxlTmFtZSAhPT0gZGF0YS5maWxlLmZpbGVOYW1lXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIHRoaXMub25GaWxlRXZlbnQuZW1pdCh7XG4gICAgICAgICAgICAgICAgICAgIGZpbGVzOiBmaWxlcyxcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9uOiBkYXRhLmFjdGlvbixcbiAgICAgICAgICAgICAgICAgICAgZGVsZXRlSWQ6IGRhdGEuZmlsZVsnZmlsZUlkJ10gfHwgdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50U2xpZGUgPSBmaWxlcy5sZW5ndGggLSAxO1xuXG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAoc2l6ZSA9PT0gRmlsZXNTaXplRW51bS5NT0RBTF9MQVJHRSAmJiBmaWxlcy5sZW5ndGggPCA0KSB8fFxuICAgICAgICAgICAgICAgICAgICAoc2l6ZSA9PT0gRmlsZXNTaXplRW51bS5NT0RBTF9NRURJVU0gJiYgZmlsZXMubGVuZ3RoIDwgMylcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tb2RhbENhcm91c2VsLmN1cnJlbnRTbGlkZSA9IDA7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW9kYWxDYXJvdXNlbC50cmFuc2xhdGVYTXVsdGlwbGVTbGlkZXMgPSAwO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vZGFsQ2Fyb3VzZWwubXVsdGlwbGVDdXJyZW50U2xpZGUgPSAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmICghZmlsZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudFNsaWRlID0gMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoaXNMYXN0RGVsZXRlZCAmJiB0aGlzLm1vZGFsQ2Fyb3VzZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2Fyb3VzZWxTaXplID0gdGhpcy5tb2RhbENhcm91c2VsLmNhcm91c2VsQ29uZmlnXG4gICAgICAgICAgICAgICAgICAgICAgICAuY3VzdG9tQ2xhc3MgYXMgRmlsZXNTaXplRW51bTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2xpZGVUbyA9XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXJvdXNlbFNpemUgPT09IEZpbGVzU2l6ZUVudW0uTEFSR0VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IDNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGNhcm91c2VsU2l6ZSA9PT0gRmlsZXNTaXplRW51bS5NRURJVU1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gMlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAxO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGFsbG93U2xpZGUgPVxuICAgICAgICAgICAgICAgICAgICAgICAgKGNhcm91c2VsU2l6ZSA9PT0gRmlsZXNTaXplRW51bS5MQVJHRSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVzLmxlbmd0aCA+IDIpIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAoY2Fyb3VzZWxTaXplID09PSBGaWxlc1NpemVFbnVtLk1FRElVTSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVzLmxlbmd0aCA+IDEpIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAoY2Fyb3VzZWxTaXplID09PSBGaWxlc1NpemVFbnVtLlNNQUxMICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZXMubGVuZ3RoID4gMCk7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGFsbG93U2xpZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW9kYWxDYXJvdXNlbC5zbGlkZVRvRmlsZShmaWxlcy5sZW5ndGggLSBzbGlkZVRvKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBEb2N1bWVudEFjdGlvbi5NQVJLX0lOQ09SUkVDVDpcbiAgICAgICAgICAgICAgICBsZXQgaW5jb3JyZWN0SW5keDogbnVtYmVyID0gMDtcbiAgICAgICAgICAgICAgICBmaWxlcy5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbS5maWxlTmFtZSA9PT0gZGF0YS5maWxlLmZpbGVOYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbmNvcnJlY3RJbmR4ID0gaW5kZXg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIHRoaXMub25GaWxlRXZlbnQuZW1pdCh7XG4gICAgICAgICAgICAgICAgICAgIGZpbGVzOiBmaWxlcyxcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9uOiBkYXRhLmFjdGlvbixcbiAgICAgICAgICAgICAgICAgICAgaW5kZXg6IGluY29ycmVjdEluZHgsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRBY3Rpb24uTUFSS19DT1JSRUNUOlxuICAgICAgICAgICAgICAgIGxldCBjb3JyZWN0SW5keDogbnVtYmVyID0gMDtcbiAgICAgICAgICAgICAgICBmaWxlcy5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbS5maWxlTmFtZSA9PT0gZGF0YS5maWxlLmZpbGVOYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb3JyZWN0SW5keCA9IGluZGV4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLm9uRmlsZUV2ZW50LmVtaXQoe1xuICAgICAgICAgICAgICAgICAgICBmaWxlczogZmlsZXMsXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbjogZGF0YS5hY3Rpb24sXG4gICAgICAgICAgICAgICAgICAgIGluZGV4OiBjb3JyZWN0SW5keCxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvblVwbG9hZEZpbGVzKGRhdGE6IHsgZmlsZXM6IEZpbGVDb25maWdbXTsgYWN0aW9uOiBzdHJpbmcgfSk6IHZvaWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICBkYXRhLmFjdGlvbiA9PT0gJ2FkZCcgJiZcbiAgICAgICAgICAgIHRoaXMuX2NvbmZpZy5oYXNDcm9wICYmXG4gICAgICAgICAgICB0aGlzLl9jb25maWcuZmlsZXMubGVuZ3RoXG4gICAgICAgICkge1xuICAgICAgICAgICAgY29uc3QgdXBsb2FkZWRGaWxlcyA9IFsuLi5kYXRhLmZpbGVzXTtcbiAgICAgICAgICAgIGlmICh0aGlzLl9jb25maWcuaGFzQ3JvcCkgdGhpcy5pc0Ryb3B6b25lU2hvd24gPSB0cnVlO1xuXG4gICAgICAgICAgICB1cGxvYWRlZEZpbGVzLmZvckVhY2goKG5ld0ZpbGUpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBleGlzdGluZ0ZpbGVJbmRleCA9IHRoaXMuX2NvbmZpZy5maWxlcy5maW5kSW5kZXgoXG4gICAgICAgICAgICAgICAgICAgIChleGlzdGluZ0ZpbGUpID0+IGV4aXN0aW5nRmlsZS51cmxcbiAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgaWYgKGV4aXN0aW5nRmlsZUluZGV4ICE9PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jb25maWcuZmlsZXNbZXhpc3RpbmdGaWxlSW5kZXhdID0gbmV3RmlsZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maWxlQWRkZWQuZW1pdChuZXdGaWxlLnVybCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICAgICAgICAgICAgICAgYEZpbGUgJHtuZXdGaWxlLmZpbGVOYW1lfSB0byByZXBsYWNlIG5vdCBmb3VuZGBcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgdGhpcy5vbkZpbGVFdmVudC5lbWl0KHsgZmlsZXM6IFtdLCBhY3Rpb246ICdhZGQnIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGRhdGEuYWN0aW9uID09PSAnYWRkJykge1xuICAgICAgICAgICAgY29uc3QgdXBsb2FkZWRGaWxlcyA9IFsuLi5kYXRhLmZpbGVzXTtcblxuICAgICAgICAgICAgY29uc3QgdW5pcXVlRmlsZXMgPSB1cGxvYWRlZEZpbGVzLmZpbHRlcihcbiAgICAgICAgICAgICAgICAoZmlsZSkgPT5cbiAgICAgICAgICAgICAgICAgICAgIXRoaXMuX2NvbmZpZy5maWxlcy5zb21lKFxuICAgICAgICAgICAgICAgICAgICAgICAgKGV4aXN0aW5nRmlsZSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGlzdGluZ0ZpbGUuZmlsZU5hbWUgPT09IGZpbGUuZmlsZU5hbWVcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGxldCB7IGZpbGVzIH0gPSB0aGlzLl9jb25maWc7XG4gICAgICAgICAgICBmaWxlcyA9IFsuLi5uZXcgU2V0KFsuLi50aGlzLl9jb25maWcuZmlsZXMsIC4uLnVuaXF1ZUZpbGVzXSldO1xuXG4gICAgICAgICAgICB1bmlxdWVGaWxlcy5mb3JFYWNoKChmaWxlKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5maWxlQWRkZWQuZW1pdChmaWxlLnJlYWxGaWxlKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5fY29uZmlnLmhhc0Nyb3ApIHRoaXMuaXNEcm9wem9uZVNob3duID0gZmFsc2U7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgdGhpcy5vbkZpbGVFdmVudC5lbWl0KHtcbiAgICAgICAgICAgICAgICAgICAgZmlsZXM6IHRoaXMuX2NvbmZpZy5maWxlcyxcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9uOiAnYWRkJyxcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgLy8gIGNhcm91c2VsXG4gICAgICAgICAgICBpZiAodGhpcy5tb2RhbENhcm91c2VsKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2Fyb3VzZWxTaXplID0gdGhpcy5tb2RhbENhcm91c2VsLmNhcm91c2VsQ29uZmlnXG4gICAgICAgICAgICAgICAgICAgIC5jdXN0b21DbGFzcyBhcyBGaWxlc1NpemVFbnVtO1xuXG4gICAgICAgICAgICAgICAgY29uc3Qgc2xpZGVUbyA9XG4gICAgICAgICAgICAgICAgICAgIGNhcm91c2VsU2l6ZSA9PT0gRmlsZXNTaXplRW51bS5MQVJHRVxuICAgICAgICAgICAgICAgICAgICAgICAgPyAzXG4gICAgICAgICAgICAgICAgICAgICAgICA6IGNhcm91c2VsU2l6ZSA9PT0gRmlsZXNTaXplRW51bS5NRURJVU1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPyAyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDogMTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IGFsbG93U2xpZGUgPVxuICAgICAgICAgICAgICAgICAgICAoY2Fyb3VzZWxTaXplID09PSBGaWxlc1NpemVFbnVtLkxBUkdFICYmXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9jb25maWcuZmlsZXMubGVuZ3RoID4gMikgfHxcbiAgICAgICAgICAgICAgICAgICAgKGNhcm91c2VsU2l6ZSA9PT0gRmlsZXNTaXplRW51bS5NRURJVU0gJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2NvbmZpZy5maWxlcy5sZW5ndGggPiAxKSB8fFxuICAgICAgICAgICAgICAgICAgICAoY2Fyb3VzZWxTaXplID09PSBGaWxlc1NpemVFbnVtLlNNQUxMICYmXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9jb25maWcuZmlsZXMubGVuZ3RoID4gMCk7XG5cbiAgICAgICAgICAgICAgICBpZiAoYWxsb3dTbGlkZSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vZGFsQ2Fyb3VzZWwuc2xpZGVUb0ZpbGUoXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9jb25maWcuZmlsZXMubGVuZ3RoIC0gc2xpZGVUb1xuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChkYXRhLmFjdGlvbiA9PT0gJ3JlcGxhY2UnKSB7XG4gICAgICAgICAgICBjb25zdCB1cGxvYWRlZEZpbGVzID0gWy4uLmRhdGEuZmlsZXNdO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5fY29uZmlnLmhhc0Nyb3ApIHRoaXMuaXNEcm9wem9uZVNob3duID0gdHJ1ZTtcblxuICAgICAgICAgICAgdXBsb2FkZWRGaWxlcy5mb3JFYWNoKChuZXdGaWxlKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZXhpc3RpbmdGaWxlSW5kZXggPSB0aGlzLl9jb25maWcuZmlsZXMuZmluZEluZGV4KFxuICAgICAgICAgICAgICAgICAgICAoZXhpc3RpbmdGaWxlKSA9PiBleGlzdGluZ0ZpbGUudXJsXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIGlmIChleGlzdGluZ0ZpbGVJbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gUmVwbGFjZSB0aGUgZXhpc3RpbmcgZmlsZSBhdCB0aGUgZm91bmQgaW5kZXhcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY29uZmlnLmZpbGVzW2V4aXN0aW5nRmlsZUluZGV4XSA9IG5ld0ZpbGU7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gRW1pdCB0aGUgbmV3IGZpbGUgdGhhdCByZXBsYWNlZCB0aGUgb2xkIG9uZVxuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbGVBZGRlZC5lbWl0KG5ld0ZpbGUudXJsKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICAgICAgICAgICAgICBgRmlsZSAke25ld0ZpbGUuZmlsZU5hbWV9IHRvIHJlcGxhY2Ugbm90IGZvdW5kYFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICB0aGlzLm9uRmlsZUV2ZW50LmVtaXQoeyBmaWxlczogdGhpcy5fY29uZmlnLmZpbGVzLCBhY3Rpb246ICdhZGQnIH0pO1xuICAgICAgICB9IGVsc2UgaWYgKGRhdGEuYWN0aW9uID09PSAnZGVsZXRlJykge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2NvbmZpZy5oYXNDcm9wKSB0aGlzLmlzRHJvcHpvbmVTaG93biA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLl9jb25maWcuZmlsZXMuc3BsaWNlKDAsIHRoaXMuX2NvbmZpZy5maWxlcy5sZW5ndGgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHB1YmxpYyBkb2N1bWVudFJldmlld0lucHV0RXZlbnRNZXRob2QoZGF0YToge1xuICAgICAgICBmaWxlOiBGaWxlQ29uZmlnO1xuICAgICAgICBtZXNzYWdlOiBzdHJpbmc7XG4gICAgfSk6IHZvaWQge1xuICAgICAgICB0aGlzLmRvY3VtZW50UmV2aWV3SW5wdXRFdmVudC5lbWl0KHtcbiAgICAgICAgICAgIGZpbGU6IGRhdGEuZmlsZSxcbiAgICAgICAgICAgIG1lc3NhZ2U6IGRhdGEubWVzc2FnZSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGRvd25sb2FkRmlsZShmaWxlVXJsOiBzdHJpbmcsIGZpbGVOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5odHRwLmdldChmaWxlVXJsLCB7IHJlc3BvbnNlVHlwZTogJ2Jsb2InIH0pLnN1YnNjcmliZShcbiAgICAgICAgICAgIChmaWxlQmxvYjogQmxvYikgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGFuY2hvckVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgICAgICAgICAgICAgY29uc3Qgb2JqZWN0VXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChmaWxlQmxvYik7XG4gICAgICAgICAgICAgICAgYW5jaG9yRWxlbWVudC5ocmVmID0gb2JqZWN0VXJsO1xuICAgICAgICAgICAgICAgIGFuY2hvckVsZW1lbnQuZG93bmxvYWQgPSBmaWxlTmFtZTtcbiAgICAgICAgICAgICAgICBhbmNob3JFbGVtZW50LmNsaWNrKCk7XG5cbiAgICAgICAgICAgICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKG9iamVjdFVybCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgKGRvd25sb2FkRXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBkb3dubG9hZGluZyBmaWxlOicsIGRvd25sb2FkRXJyb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkxhbmRzY2FwZUNoZWNrKGxhbmRzY2FwZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAobGFuZHNjYXBlKVxuICAgICAgICAgICAgdGhpcy5fY29uZmlnLmZpbGVPcHRpb25zQ29uZmlnLmN1c3RvbUNsYXNzTmFtZSA9XG4gICAgICAgICAgICAgICAgJ2xhbmRzY2FwZS1kZXRhaWxzLXZpZXcnO1xuICAgIH1cblxuICAgIHB1YmxpYyBkcm9wWm9uZUNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsb3NlRHJvcHpvbmUuZW1pdCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBmaWxlSG92ZXIoZmlsZTogRmlsZUNvbmZpZyk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fY29uZmlnLmZpbGVPcHRpb25zQ29uZmlnLmN1c3RvbUNsYXNzTmFtZSA9PT0gJ21vZGFscycpIHtcbiAgICAgICAgICAgIGxldCBjaGVja0J5SWQgPSBmaWxlPy5yZWFsRmlsZSA/IGZhbHNlIDogdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuX2NvbmZpZy5maWxlcy5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgKGNoZWNrQnlJZCAmJiBmaWxlPy5maWxlSWQgPT09IGl0ZW0uZmlsZUlkKSB8fFxuICAgICAgICAgICAgICAgICAgICAoIWNoZWNrQnlJZCAmJiBmaWxlLnJlYWxGaWxlPy5uYW1lID09PSBpdGVtLnJlYWxGaWxlPy5uYW1lKVxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnVwbG9hZGVkRmlsZXNbJ19yZXN1bHRzJ11baW5kZXhdLnVwZGF0ZUhvdmVyKHRydWUpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBsb2FkZWRGaWxlc1snX3Jlc3VsdHMnXVtpbmRleF0udXBkYXRlSG92ZXIoZmFsc2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGhvdmVyQXJyb3cobW9kOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NvbmZpZy5maWxlcy5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgdGhpcy51cGxvYWRlZEZpbGVzWydfcmVzdWx0cyddW2luZGV4XS5ob3ZlckFycm93KG1vZCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3Vic2NyaWJlVG9VcGxvYWRlZEZpbGVzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwbG9hZEZpbGVTZXJ2aWNlLnVwbG9hZGVkRmlsZXMkXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChkYXRhOiB7IGZpbGVzOiBGaWxlQ29uZmlnW107IGFjdGlvbjogc3RyaW5nIH0pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZGF0YSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm9uVXBsb2FkRmlsZXMoZGF0YSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgIGNsYXNzPVwidGEtdXBsb2FkIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIge3tcbiAgICAgICAgY29uZmlnLmZpbGVPcHRpb25zQ29uZmlnLmN1c3RvbUNsYXNzTmFtZVxuICAgIH19XCJcbiAgICBbbmdDbGFzc109XCJcbiAgICAgICAgY29uZmlnLmZpbGVzPy5sZW5ndGhcbiAgICAgICAgICAgIHwgdXBsb2FkQ2xhc3NcbiAgICAgICAgICAgICAgICA6IGNvbmZpZy5jYXJvdXNlbENvbmZpZy5zaXplXG4gICAgICAgICAgICAgICAgOiBjb25maWcucmV2aWV3LmlzUmV2aWV3XG4gICAgICAgICAgICAgICAgOiBjb25maWcuc2xpZGVyLmRvbnRVc2VTbGlkZXJcbiAgICBcIlxuPlxuICAgIDwhLS0gQ2Fyb3VzZWwgRmlsZXMgLS0+XG4gICAgQGlmIChcbiAgICAgICAgY29uZmlnLmZpbGVzPy5sZW5ndGggJiYgIWNvbmZpZy5zbGlkZXIuZG9udFVzZVNsaWRlciAmJiAhY29uZmlnLmhhc0Nyb3BcbiAgICApIHtcbiAgICAgICAgPGFwcC1jYS11cGxvYWQtZmlsZXMtY2Fyb3VzZWxcbiAgICAgICAgICAgIFtjb25maWddPVwiY2Fyb3VzZWxGaWxlQ29uZmlnXCJcbiAgICAgICAgICAgIChhY3RpdmVTbGlkZSk9XCJjdXJyZW50U2xpZGUgPSAkZXZlbnRcIlxuICAgICAgICAgICAgW3NsaWRlV2lkdGhdPVwiY29uZmlnLnNsaWRlV2lkdGhcIlxuICAgICAgICAgICAgKGhvdmVyQXJyb3dFbWl0KT1cImhvdmVyQXJyb3coJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIEBmb3IgKGZpbGUgb2YgY29uZmlnLmZpbGVzOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGEtdXBsb2FkLWNhcm91c2VsLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1jYS11cGxvYWQtZmlsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICN1cGxvYWRlZEZpbGVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbmZpZ109XCJjb25maWcuZmlsZU9wdGlvbnNDb25maWcgfCBtYXBGaWxlOiBmaWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmV2aWV3RmlsZUNvbmZpZ109XCJyZXZpZXdGaWxlQ29uZmlnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZmlsZUhvdmVyKT1cImZpbGVIb3ZlcigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZmlsZUFjdGlvbik9XCJvbkZpbGVBY3Rpb24oJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxhbmRzY2FwZUNoZWNrKT1cIm9uTGFuZHNjYXBlQ2hlY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRvY3VtZW50UmV2aWV3SW5wdXRFdmVudCk9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnRSZXZpZXdJbnB1dEV2ZW50TWV0aG9kKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvYXBwLWNhLXVwbG9hZC1maWxlPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9hcHAtY2EtdXBsb2FkLWZpbGVzLWNhcm91c2VsPlxuICAgIH1cblxuICAgIEBpZiAoY29uZmlnLnNsaWRlci5kb250VXNlU2xpZGVyICYmICFjb25maWcuaGFzQ3JvcCkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZG9jdW1lbnRzX2hvbGRlclwiPlxuICAgICAgICAgICAgPGFwcC1jYS11cGxvYWQtZHJvcHpvbmVcbiAgICAgICAgICAgICAgICBbY29uZmlnXT1cImNvbmZpZy5kcm9wem9uZUNvbmZcIlxuICAgICAgICAgICAgICAgIChvbkZpbGVFdmVudCk9XCJvblVwbG9hZEZpbGVzKCRldmVudClcIlxuICAgICAgICAgICAgICAgIChjbG9zZURyb3B6b25lKT1cImRyb3Bab25lQ2xvc2UoKVwiXG4gICAgICAgICAgICA+PC9hcHAtY2EtdXBsb2FkLWRyb3B6b25lPlxuICAgICAgICAgICAgQGZvciAoZmlsZSBvZiBjb25maWcuZmlsZXM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YS11cGxvYWQtY2Fyb3VzZWwtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YXBwLWNhLXVwbG9hZC1maWxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbmZpZ109XCJjb25maWcuZmlsZU9wdGlvbnNDb25maWcgfCBtYXBGaWxlOiBmaWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmV2aWV3RmlsZUNvbmZpZ109XCJyZXZpZXdGaWxlQ29uZmlnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZmlsZUFjdGlvbik9XCJvbkZpbGVBY3Rpb24oJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxhbmRzY2FwZUNoZWNrKT1cIm9uTGFuZHNjYXBlQ2hlY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRvY3VtZW50UmV2aWV3SW5wdXRFdmVudCk9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnRSZXZpZXdJbnB1dEV2ZW50TWV0aG9kKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvYXBwLWNhLXVwbG9hZC1maWxlPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuXG4gICAgPCEtLSBJbWFnZSBDcm9wIFRlbXBsYXRlIC0tPlxuXG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cInNwbGl0LWNyb3AtaG9sZGVyXCJcbiAgICAgICAgW2NsYXNzLnNwbGl0XT1cImlzRHJvcHpvbmVTaG93blwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2hpZGRlbi1kcm9wJzogIWNvbmZpZy5pc1Zpc2libGVDcm9wQW5kRHJvcCB9XCJcbiAgICA+XG4gICAgICAgIEBpZiAoY29uZmlnLmhhc0Nyb3AgJiYgY29uZmlnLmZpbGVzLmxlbmd0aCkge1xuICAgICAgICAgICAgQGZvciAoZmlsZSBvZiBjb25maWcuZmlsZXM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgIDxhcHAtY2EtbG9nby1jaGFuZ2VcbiAgICAgICAgICAgICAgICAgICAgW2hhc0Jsb2JVcmxdPVwiY29uZmlnLmhhc0Jsb2JVcmxcIlxuICAgICAgICAgICAgICAgICAgICBbaW1hZ2VUb0Nyb3BdPVwiZmlsZT8udXJsXCJcbiAgICAgICAgICAgICAgICAgICAgW2lzUm91bmRDcm9wcGVyXT1cImNvbmZpZy5pc1JvdW5kQ3JvcFwiXG4gICAgICAgICAgICAgICAgICAgIFtpc0Ryb3B6b25lU2hvd25dPVwiaXNEcm9wem9uZVNob3duXCJcbiAgICAgICAgICAgICAgICAgICAgW2luaXRpYWxDcm9wcGVyUG9zaXRpb25dPVwiY29uZmlnLmluaXRpYWxDcm9wcGVyUG9zaXRpb25cIlxuICAgICAgICAgICAgICAgICAgICBbY29udGFpbldpdGhpbkFzcGVjdFJhdGlvXT1cImNvbmZpZy5jb250YWluV2l0aGluQXNwZWN0UmF0aW9cIlxuICAgICAgICAgICAgICAgICAgICBbYXNwZWN0UmF0aW9dPVwiY29uZmlnLmFzcGVjdFJhdGlvXCJcbiAgICAgICAgICAgICAgICAgICAgW2N1c3RvbVdpZHRoXT1cImNvbmZpZy5kcm9wem9uZUN1c3RvbVdpZHRoXCJcbiAgICAgICAgICAgICAgICAgICAgKHNlbmRJbWFnZURhdGEpPVwib25VcGxvYWRGaWxlcygkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICA+PC9hcHAtY2EtbG9nby1jaGFuZ2U+XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cblxuICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJzcGxpdC1jcm9wLWhvbGRlclwiXG4gICAgICAgIFtjbGFzcy5zcGxpdF09XCJjb25maWcuaGFzQ3JvcCAmJiBjb25maWcuZmlsZXMubGVuZ3RoICYmIGlzRHJvcHpvbmVTaG93blwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2hpZGRlbi1kcm9wJzogIWNvbmZpZy5pc1Zpc2libGVDcm9wQW5kRHJvcCB9XCJcbiAgICA+XG4gICAgICAgIEBpZiAoaXNEcm9wem9uZVNob3duKSB7XG4gICAgICAgICAgICA8YXBwLWNhLXVwbG9hZC1kcm9wem9uZVxuICAgICAgICAgICAgICAgIFtjb25maWddPVwiY29uZmlnLmRyb3B6b25lQ29uZlwiXG4gICAgICAgICAgICAgICAgW2N1c3RvbVdpZHRoXT1cImNvbmZpZy5kcm9wem9uZUN1c3RvbVdpZHRoXCJcbiAgICAgICAgICAgICAgICBbaXNEcm9wem9uZVNob3duSW5Dcm9wXT1cIlxuICAgICAgICAgICAgICAgICAgICBjb25maWcuaGFzQ3JvcCAmJiAhIWNvbmZpZy5maWxlcy5sZW5ndGggJiYgaXNEcm9wem9uZVNob3duXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAob25GaWxlRXZlbnQpPVwib25VcGxvYWRGaWxlcygkZXZlbnQpXCJcbiAgICAgICAgICAgID48L2FwcC1jYS11cGxvYWQtZHJvcHpvbmU+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
321
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtdXBsb2FkLWZpbGVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLXVwbG9hZC1maWxlcy9jYS11cGxvYWQtZmlsZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtdXBsb2FkLWZpbGVzL2NhLXVwbG9hZC1maWxlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEVBQ1QsWUFBWSxHQUNmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFOUQsWUFBWTtBQUNaLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDBFQUEwRSxDQUFDO0FBVzFILE9BQU87QUFDUCxPQUFPLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFL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S0FBSztnQkFNSSx3QkFBd0I7c0JBQWpDLE1BQU07Z0JBRUcsV0FBVztzQkFBcEIsTUFBTTtnQkFFRyxhQUFhO3NCQUF0QixNQUFNO2dCQUVHLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFuZ3VsYXJTdmdJY29uTW9kdWxlIH0gZnJvbSAnYW5ndWxhci1zdmctaWNvbic7XG5pbXBvcnQgeyBwcm92aWRlTG90dGllT3B0aW9ucyB9IGZyb20gJ25neC1sb3R0aWUnO1xuaW1wb3J0IHsgTmdiUG9wb3Zlck1vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcblxuLy9Db21wb25lbnRzXG5pbXBvcnQgeyBDYVVwbG9hZERyb3B6b25lQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NhLXVwbG9hZC1kcm9wem9uZS9jYS11cGxvYWQtZHJvcHpvbmUuY29tcG9uZW50JztcbmltcG9ydCB7IENhVXBsb2FkRmlsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jYS11cGxvYWQtZmlsZS9jYS11cGxvYWQtZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FVcGxvYWRGaWxlc0Nhcm91c2VsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NhLXVwbG9hZC1maWxlcy1jYXJvdXNlbC9jYS11cGxvYWQtZmlsZXMtY2Fyb3VzZWwuY29tcG9uZW50JztcblxuLy9Nb2RlbHNcbmltcG9ydCB7XG4gICAgRG9jdW1lbnRSZXZpZXdJbnB1dEV2ZW50LFxuICAgIElVcGxvYWRGaWxlc0NvbmZpZyxcbiAgICBSZXZpZXdGaWxlQ29uZmlnLFxufSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBGaWxlQ29uZmlnLCBGaWxlRXZlbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2EtdXBsb2FkLWRyb3B6b25lL21vZGVscyc7XG5pbXBvcnQgeyBGaWxlc0Nhcm91c2VsQ29uZmlnIH0gZnJvbSAnLi9jb21wb25lbnRzL2NhLXVwbG9hZC1maWxlcy1jYXJvdXNlbC9tb2RlbHMnO1xuXG4vL0VudW1zXG5pbXBvcnQgeyBGaWxlc1NpemVFbnVtLCBGaWxlVHlwZXNFbnVtIH0gZnJvbSAnLi9lbnVtcyc7XG5pbXBvcnQgeyBEb2N1bWVudEFjdGlvbiB9IGZyb20gJy4vY29tcG9uZW50cy9jYS11cGxvYWQtZmlsZS9lbnVtcyc7XG5cbi8vU2VydmljZXNcbmltcG9ydCB7IENhVXBsb2FkRmlsZVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzJztcblxuLy9QaXBlXG5pbXBvcnQgeyBNYXBGaWxlUGlwZSwgVXBsb2FkQ2xhc3NQaXBlIH0gZnJvbSAnLi9waXBlcyc7XG5cbi8vQ29tcG9uZW50XG5pbXBvcnQgeyBDYUxvZ29DaGFuZ2VDb21wb25lbnQgfSBmcm9tICcuLi9jYS1sb2dvLWNoYW5nZS9jYS1sb2dvLWNoYW5nZS5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnYXBwLWNhLXVwbG9hZC1maWxlcycsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEFuZ3VsYXJTdmdJY29uTW9kdWxlLFxuICAgICAgICBOZ2JQb3BvdmVyTW9kdWxlLFxuICAgICAgICAvL0NvbXBvbmVudFxuICAgICAgICBDYVVwbG9hZERyb3B6b25lQ29tcG9uZW50LFxuICAgICAgICBDYVVwbG9hZEZpbGVDb21wb25lbnQsXG4gICAgICAgIENhVXBsb2FkRmlsZXNDYXJvdXNlbENvbXBvbmVudCxcbiAgICAgICAgQ2FMb2dvQ2hhbmdlQ29tcG9uZW50LFxuICAgICAgICAvL1BpcGVcbiAgICAgICAgVXBsb2FkQ2xhc3NQaXBlLFxuICAgICAgICBNYXBGaWxlUGlwZSxcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBwcm92aWRlTG90dGllT3B0aW9ucyh7XG4gICAgICAgICAgICBwbGF5ZXI6ICgpID0+IGltcG9ydCgnbG90dGllLXdlYicpLFxuICAgICAgICB9KSxcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jYS11cGxvYWQtZmlsZXMuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NhLXVwbG9hZC1maWxlcy5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDYVVwbG9hZEZpbGVzQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgQFZpZXdDaGlsZChDYVVwbG9hZEZpbGVzQ2Fyb3VzZWxDb21wb25lbnQpXG4gICAgcHVibGljIG1vZGFsQ2Fyb3VzZWwhOiBDYVVwbG9hZEZpbGVzQ2Fyb3VzZWxDb21wb25lbnQ7XG5cbiAgICBAVmlld0NoaWxkcmVuKENhVXBsb2FkRmlsZUNvbXBvbmVudClcbiAgICB1cGxvYWRlZEZpbGVzITogUXVlcnlMaXN0PENhVXBsb2FkRmlsZUNvbXBvbmVudD47XG5cbiAgICBASW5wdXQoKSBzZXQgdXBsb2FkRmlsZXNDb25maWcodmFsdWU6IElVcGxvYWRGaWxlc0NvbmZpZykge1xuICAgICAgICB0aGlzLl9jb25maWcgPSB7IC4uLnZhbHVlIH07XG5cbiAgICAgICAgaWYgKHRoaXMuX2NvbmZpZy5maWxlT3B0aW9uc0NvbmZpZz8udHlwZSA9PT0gRmlsZVR5cGVzRW51bS5ERVRBSUxTKVxuICAgICAgICAgICAgdGhpcy5tb2RhbENhcm91c2VsPy5zbGlkZVRvRmlsZSgwKTtcbiAgICB9XG4gICAgQE91dHB1dCgpIGRvY3VtZW50UmV2aWV3SW5wdXRFdmVudCA9XG4gICAgICAgIG5ldyBFdmVudEVtaXR0ZXI8RG9jdW1lbnRSZXZpZXdJbnB1dEV2ZW50PigpO1xuICAgIEBPdXRwdXQoKSBvbkZpbGVFdmVudDogRXZlbnRFbWl0dGVyPEZpbGVFdmVudD4gPVxuICAgICAgICBuZXcgRXZlbnRFbWl0dGVyPEZpbGVFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgY2xvc2VEcm9wem9uZSA9IG5ldyBFdmVudEVtaXR0ZXI8e30+KCk7XG5cbiAgICBAT3V0cHV0KCkgZmlsZUFkZGVkID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlPigpO1xuXG4gICAgcHVibGljIGN1cnJlbnRTbGlkZTogbnVtYmVyID0gMDtcbiAgICBwdWJsaWMgaXNEcm9wem9uZVNob3duOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIHByaXZhdGUgX2NvbmZpZyE6IElVcGxvYWRGaWxlc0NvbmZpZztcbiAgICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHB1YmxpYyBnZXQgY29uZmlnKCk6IElVcGxvYWRGaWxlc0NvbmZpZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb25maWc7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjYXJvdXNlbEZpbGVDb25maWcoKTogRmlsZXNDYXJvdXNlbENvbmZpZyB7XG4gICAgICAgIHJldHVybiB7IC4uLnRoaXMuX2NvbmZpZy5jYXJvdXNlbENvbmZpZyB9O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgcmV2aWV3RmlsZUNvbmZpZygpOiBSZXZpZXdGaWxlQ29uZmlnIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbmZpZy5yZXZpZXc7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgdXBsb2FkRmlsZVNlcnZpY2U6IENhVXBsb2FkRmlsZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudFxuICAgICkge31cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpYmVUb1VwbG9hZGVkRmlsZXMoKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKlxuICAgICAqIEBwYXJhbSBkYXRhIC0gcmV0dXJuZWQgZGF0YSBmcm9tIGZpbGUgYWN0aW9uIChvbmUgb3IgbXVsdGlwbGUpXG4gICAgICovXG5cbiAgICBwdWJsaWMgb25GaWxlQWN0aW9uKGRhdGE6IHsgZmlsZTogRmlsZUNvbmZpZzsgYWN0aW9uOiBzdHJpbmcgfSk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IGZpbGVzLCBvbmx5T25lVGFnRmlsZSwgc2l6ZSB9ID0gdGhpcy5fY29uZmlnO1xuICAgICAgICBzd2l0Y2ggKGRhdGEuYWN0aW9uKSB7XG4gICAgICAgICAgICBjYXNlIERvY3VtZW50QWN0aW9uLlRBRzpcbiAgICAgICAgICAgICAgICB0aGlzLm9uRmlsZUV2ZW50LmVtaXQoe1xuICAgICAgICAgICAgICAgICAgICBmaWxlczogIW9ubHlPbmVUYWdGaWxlID8gZmlsZXMgOiBkYXRhLmZpbGUsXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbjogZGF0YS5hY3Rpb24sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRBY3Rpb24uREVMRVRFOlxuICAgICAgICAgICAgICAgIGxldCBpc0xhc3REZWxldGVkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgZmlsZXMuZm9yRWFjaCgoaXRlbSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5maWxlTmFtZSA9PT0gZGF0YS5maWxlLmZpbGVOYW1lICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAoaW5kZXggPT09IGZpbGVzLmxlbmd0aCAtIDEgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleCA9PT0gZmlsZXMubGVuZ3RoIC0gMilcbiAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpc0xhc3REZWxldGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5fY29uZmlnLmZpbGVzID0gZmlsZXMuZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAoaXRlbSkgPT4gaXRlbS5maWxlTmFtZSAhPT0gZGF0YS5maWxlLmZpbGVOYW1lXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIHRoaXMub25GaWxlRXZlbnQuZW1pdCh7XG4gICAgICAgICAgICAgICAgICAgIGZpbGVzOiBmaWxlcyxcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9uOiBkYXRhLmFjdGlvbixcbiAgICAgICAgICAgICAgICAgICAgZGVsZXRlSWQ6IGRhdGEuZmlsZVsnZmlsZUlkJ10gfHwgdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50U2xpZGUgPSBmaWxlcy5sZW5ndGggLSAxO1xuXG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAoc2l6ZSA9PT0gRmlsZXNTaXplRW51bS5NT0RBTF9MQVJHRSAmJiBmaWxlcy5sZW5ndGggPCA0KSB8fFxuICAgICAgICAgICAgICAgICAgICAoc2l6ZSA9PT0gRmlsZXNTaXplRW51bS5NT0RBTF9NRURJVU0gJiYgZmlsZXMubGVuZ3RoIDwgMylcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tb2RhbENhcm91c2VsLmN1cnJlbnRTbGlkZSA9IDA7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubW9kYWxDYXJvdXNlbC50cmFuc2xhdGVYTXVsdGlwbGVTbGlkZXMgPSAwO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vZGFsQ2Fyb3VzZWwubXVsdGlwbGVDdXJyZW50U2xpZGUgPSAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmICghZmlsZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudFNsaWRlID0gMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoaXNMYXN0RGVsZXRlZCAmJiB0aGlzLm1vZGFsQ2Fyb3VzZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2Fyb3VzZWxTaXplID0gdGhpcy5tb2RhbENhcm91c2VsLmNhcm91c2VsQ29uZmlnXG4gICAgICAgICAgICAgICAgICAgICAgICAuY3VzdG9tQ2xhc3MgYXMgRmlsZXNTaXplRW51bTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2xpZGVUbyA9XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXJvdXNlbFNpemUgPT09IEZpbGVzU2l6ZUVudW0uTEFSR0VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IDNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGNhcm91c2VsU2l6ZSA9PT0gRmlsZXNTaXplRW51bS5NRURJVU1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gMlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAxO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGFsbG93U2xpZGUgPVxuICAgICAgICAgICAgICAgICAgICAgICAgKGNhcm91c2VsU2l6ZSA9PT0gRmlsZXNTaXplRW51bS5MQVJHRSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVzLmxlbmd0aCA+IDIpIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAoY2Fyb3VzZWxTaXplID09PSBGaWxlc1NpemVFbnVtLk1FRElVTSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVzLmxlbmd0aCA+IDEpIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAoY2Fyb3VzZWxTaXplID09PSBGaWxlc1NpemVFbnVtLlNNQUxMICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZXMubGVuZ3RoID4gMCk7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGFsbG93U2xpZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW9kYWxDYXJvdXNlbC5zbGlkZVRvRmlsZShmaWxlcy5sZW5ndGggLSBzbGlkZVRvKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBEb2N1bWVudEFjdGlvbi5NQVJLX0lOQ09SUkVDVDpcbiAgICAgICAgICAgICAgICBsZXQgaW5jb3JyZWN0SW5keDogbnVtYmVyID0gMDtcbiAgICAgICAgICAgICAgICBmaWxlcy5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbS5maWxlTmFtZSA9PT0gZGF0YS5maWxlLmZpbGVOYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbmNvcnJlY3RJbmR4ID0gaW5kZXg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIHRoaXMub25GaWxlRXZlbnQuZW1pdCh7XG4gICAgICAgICAgICAgICAgICAgIGZpbGVzOiBmaWxlcyxcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9uOiBkYXRhLmFjdGlvbixcbiAgICAgICAgICAgICAgICAgICAgaW5kZXg6IGluY29ycmVjdEluZHgsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgRG9jdW1lbnRBY3Rpb24uTUFSS19DT1JSRUNUOlxuICAgICAgICAgICAgICAgIGxldCBjb3JyZWN0SW5keDogbnVtYmVyID0gMDtcbiAgICAgICAgICAgICAgICBmaWxlcy5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbS5maWxlTmFtZSA9PT0gZGF0YS5maWxlLmZpbGVOYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb3JyZWN0SW5keCA9IGluZGV4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLm9uRmlsZUV2ZW50LmVtaXQoe1xuICAgICAgICAgICAgICAgICAgICBmaWxlczogZmlsZXMsXG4gICAgICAgICAgICAgICAgICAgIGFjdGlvbjogZGF0YS5hY3Rpb24sXG4gICAgICAgICAgICAgICAgICAgIGluZGV4OiBjb3JyZWN0SW5keCxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvblVwbG9hZEZpbGVzKGRhdGE6IHsgZmlsZXM6IEZpbGVDb25maWdbXTsgYWN0aW9uOiBzdHJpbmcgfSk6IHZvaWQge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICBkYXRhLmFjdGlvbiA9PT0gJ2FkZCcgJiZcbiAgICAgICAgICAgIHRoaXMuX2NvbmZpZy5oYXNDcm9wICYmXG4gICAgICAgICAgICB0aGlzLl9jb25maWcuZmlsZXMubGVuZ3RoXG4gICAgICAgICkge1xuICAgICAgICAgICAgY29uc3QgdXBsb2FkZWRGaWxlcyA9IFsuLi5kYXRhLmZpbGVzXTtcbiAgICAgICAgICAgIGlmICh0aGlzLl9jb25maWcuaGFzQ3JvcCkgdGhpcy5pc0Ryb3B6b25lU2hvd24gPSB0cnVlO1xuXG4gICAgICAgICAgICB1cGxvYWRlZEZpbGVzLmZvckVhY2goKG5ld0ZpbGUpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBleGlzdGluZ0ZpbGVJbmRleCA9IHRoaXMuX2NvbmZpZy5maWxlcy5maW5kSW5kZXgoXG4gICAgICAgICAgICAgICAgICAgIChleGlzdGluZ0ZpbGUpID0+IGV4aXN0aW5nRmlsZS51cmxcbiAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgaWYgKGV4aXN0aW5nRmlsZUluZGV4ICE9PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jb25maWcuZmlsZXNbZXhpc3RpbmdGaWxlSW5kZXhdID0gbmV3RmlsZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maWxlQWRkZWQuZW1pdChuZXdGaWxlLnVybCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICAgICAgICAgICAgICAgYEZpbGUgJHtuZXdGaWxlLmZpbGVOYW1lfSB0byByZXBsYWNlIG5vdCBmb3VuZGBcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgdGhpcy5vbkZpbGVFdmVudC5lbWl0KHsgZmlsZXM6IFtdLCBhY3Rpb246ICdhZGQnIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGRhdGEuYWN0aW9uID09PSAnYWRkJykge1xuICAgICAgICAgICAgY29uc3QgdXBsb2FkZWRGaWxlcyA9IFsuLi5kYXRhLmZpbGVzXTtcblxuICAgICAgICAgICAgY29uc3QgdW5pcXVlRmlsZXMgPSB1cGxvYWRlZEZpbGVzLmZpbHRlcihcbiAgICAgICAgICAgICAgICAoZmlsZSkgPT5cbiAgICAgICAgICAgICAgICAgICAgIXRoaXMuX2NvbmZpZy5maWxlcy5zb21lKFxuICAgICAgICAgICAgICAgICAgICAgICAgKGV4aXN0aW5nRmlsZSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGlzdGluZ0ZpbGUuZmlsZU5hbWUgPT09IGZpbGUuZmlsZU5hbWVcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGxldCB7IGZpbGVzIH0gPSB0aGlzLl9jb25maWc7XG4gICAgICAgICAgICBmaWxlcyA9IFsuLi5uZXcgU2V0KFsuLi50aGlzLl9jb25maWcuZmlsZXMsIC4uLnVuaXF1ZUZpbGVzXSldO1xuXG4gICAgICAgICAgICB1bmlxdWVGaWxlcy5mb3JFYWNoKChmaWxlKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5maWxlQWRkZWQuZW1pdChmaWxlLnJlYWxGaWxlKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5fY29uZmlnLmhhc0Nyb3ApIHRoaXMuaXNEcm9wem9uZVNob3duID0gZmFsc2U7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgdGhpcy5vbkZpbGVFdmVudC5lbWl0KHtcbiAgICAgICAgICAgICAgICAgICAgZmlsZXM6IHRoaXMuX2NvbmZpZy5maWxlcyxcbiAgICAgICAgICAgICAgICAgICAgYWN0aW9uOiAnYWRkJyxcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgLy8gIGNhcm91c2VsXG4gICAgICAgICAgICBpZiAodGhpcy5tb2RhbENhcm91c2VsKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2Fyb3VzZWxTaXplID0gdGhpcy5tb2RhbENhcm91c2VsLmNhcm91c2VsQ29uZmlnXG4gICAgICAgICAgICAgICAgICAgIC5jdXN0b21DbGFzcyBhcyBGaWxlc1NpemVFbnVtO1xuXG4gICAgICAgICAgICAgICAgY29uc3Qgc2xpZGVUbyA9XG4gICAgICAgICAgICAgICAgICAgIGNhcm91c2VsU2l6ZSA9PT0gRmlsZXNTaXplRW51bS5MQVJHRVxuICAgICAgICAgICAgICAgICAgICAgICAgPyAzXG4gICAgICAgICAgICAgICAgICAgICAgICA6IGNhcm91c2VsU2l6ZSA9PT0gRmlsZXNTaXplRW51bS5NRURJVU1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPyAyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDogMTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IGFsbG93U2xpZGUgPVxuICAgICAgICAgICAgICAgICAgICAoY2Fyb3VzZWxTaXplID09PSBGaWxlc1NpemVFbnVtLkxBUkdFICYmXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9jb25maWcuZmlsZXMubGVuZ3RoID4gMikgfHxcbiAgICAgICAgICAgICAgICAgICAgKGNhcm91c2VsU2l6ZSA9PT0gRmlsZXNTaXplRW51bS5NRURJVU0gJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2NvbmZpZy5maWxlcy5sZW5ndGggPiAxKSB8fFxuICAgICAgICAgICAgICAgICAgICAoY2Fyb3VzZWxTaXplID09PSBGaWxlc1NpemVFbnVtLlNNQUxMICYmXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9jb25maWcuZmlsZXMubGVuZ3RoID4gMCk7XG5cbiAgICAgICAgICAgICAgICBpZiAoYWxsb3dTbGlkZSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1vZGFsQ2Fyb3VzZWwuc2xpZGVUb0ZpbGUoXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9jb25maWcuZmlsZXMubGVuZ3RoIC0gc2xpZGVUb1xuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChkYXRhLmFjdGlvbiA9PT0gJ3JlcGxhY2UnKSB7XG4gICAgICAgICAgICBjb25zdCB1cGxvYWRlZEZpbGVzID0gWy4uLmRhdGEuZmlsZXNdO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5fY29uZmlnLmhhc0Nyb3ApIHRoaXMuaXNEcm9wem9uZVNob3duID0gdHJ1ZTtcblxuICAgICAgICAgICAgdXBsb2FkZWRGaWxlcy5mb3JFYWNoKChuZXdGaWxlKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZXhpc3RpbmdGaWxlSW5kZXggPSB0aGlzLl9jb25maWcuZmlsZXMuZmluZEluZGV4KFxuICAgICAgICAgICAgICAgICAgICAoZXhpc3RpbmdGaWxlKSA9PiBleGlzdGluZ0ZpbGUudXJsXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIGlmIChleGlzdGluZ0ZpbGVJbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gUmVwbGFjZSB0aGUgZXhpc3RpbmcgZmlsZSBhdCB0aGUgZm91bmQgaW5kZXhcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY29uZmlnLmZpbGVzW2V4aXN0aW5nRmlsZUluZGV4XSA9IG5ld0ZpbGU7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gRW1pdCB0aGUgbmV3IGZpbGUgdGhhdCByZXBsYWNlZCB0aGUgb2xkIG9uZVxuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbGVBZGRlZC5lbWl0KG5ld0ZpbGUudXJsKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICAgICAgICAgICAgICBgRmlsZSAke25ld0ZpbGUuZmlsZU5hbWV9IHRvIHJlcGxhY2Ugbm90IGZvdW5kYFxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICB0aGlzLm9uRmlsZUV2ZW50LmVtaXQoeyBmaWxlczogdGhpcy5fY29uZmlnLmZpbGVzLCBhY3Rpb246ICdhZGQnIH0pO1xuICAgICAgICB9IGVsc2UgaWYgKGRhdGEuYWN0aW9uID09PSAnZGVsZXRlJykge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2NvbmZpZy5oYXNDcm9wKSB0aGlzLmlzRHJvcHpvbmVTaG93biA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLl9jb25maWcuZmlsZXMuc3BsaWNlKDAsIHRoaXMuX2NvbmZpZy5maWxlcy5sZW5ndGgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHB1YmxpYyBkb2N1bWVudFJldmlld0lucHV0RXZlbnRNZXRob2QoZGF0YToge1xuICAgICAgICBmaWxlOiBGaWxlQ29uZmlnO1xuICAgICAgICBtZXNzYWdlOiBzdHJpbmc7XG4gICAgfSk6IHZvaWQge1xuICAgICAgICB0aGlzLmRvY3VtZW50UmV2aWV3SW5wdXRFdmVudC5lbWl0KHtcbiAgICAgICAgICAgIGZpbGU6IGRhdGEuZmlsZSxcbiAgICAgICAgICAgIG1lc3NhZ2U6IGRhdGEubWVzc2FnZSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGRvd25sb2FkRmlsZShmaWxlVXJsOiBzdHJpbmcsIGZpbGVOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5odHRwLmdldChmaWxlVXJsLCB7IHJlc3BvbnNlVHlwZTogJ2Jsb2InIH0pLnN1YnNjcmliZShcbiAgICAgICAgICAgIChmaWxlQmxvYjogQmxvYikgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGFuY2hvckVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgICAgICAgICAgICAgY29uc3Qgb2JqZWN0VXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChmaWxlQmxvYik7XG4gICAgICAgICAgICAgICAgYW5jaG9yRWxlbWVudC5ocmVmID0gb2JqZWN0VXJsO1xuICAgICAgICAgICAgICAgIGFuY2hvckVsZW1lbnQuZG93bmxvYWQgPSBmaWxlTmFtZTtcbiAgICAgICAgICAgICAgICBhbmNob3JFbGVtZW50LmNsaWNrKCk7XG5cbiAgICAgICAgICAgICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKG9iamVjdFVybCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgKGRvd25sb2FkRXJyb3IpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBkb3dubG9hZGluZyBmaWxlOicsIGRvd25sb2FkRXJyb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkxhbmRzY2FwZUNoZWNrKGxhbmRzY2FwZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAobGFuZHNjYXBlKVxuICAgICAgICAgICAgdGhpcy5fY29uZmlnLmZpbGVPcHRpb25zQ29uZmlnLmN1c3RvbUNsYXNzTmFtZSA9XG4gICAgICAgICAgICAgICAgJ2xhbmRzY2FwZS1kZXRhaWxzLXZpZXcnO1xuICAgIH1cblxuICAgIHB1YmxpYyBkcm9wWm9uZUNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsb3NlRHJvcHpvbmUuZW1pdCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBmaWxlSG92ZXIoZmlsZTogRmlsZUNvbmZpZyk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fY29uZmlnLmZpbGVPcHRpb25zQ29uZmlnLmN1c3RvbUNsYXNzTmFtZSA9PT0gJ21vZGFscycpIHtcbiAgICAgICAgICAgIGxldCBjaGVja0J5SWQgPSBmaWxlPy5yZWFsRmlsZSA/IGZhbHNlIDogdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuX2NvbmZpZy5maWxlcy5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgKGNoZWNrQnlJZCAmJiBmaWxlPy5maWxlSWQgPT09IGl0ZW0uZmlsZUlkKSB8fFxuICAgICAgICAgICAgICAgICAgICAoIWNoZWNrQnlJZCAmJiBmaWxlLnJlYWxGaWxlPy5uYW1lID09PSBpdGVtLnJlYWxGaWxlPy5uYW1lKVxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnVwbG9hZGVkRmlsZXNbJ19yZXN1bHRzJ11baW5kZXhdLnVwZGF0ZUhvdmVyKHRydWUpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBsb2FkZWRGaWxlc1snX3Jlc3VsdHMnXVtpbmRleF0udXBkYXRlSG92ZXIoZmFsc2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGhvdmVyQXJyb3cobW9kOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NvbmZpZy5maWxlcy5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgdGhpcy51cGxvYWRlZEZpbGVzWydfcmVzdWx0cyddW2luZGV4XS5ob3ZlckFycm93KG1vZCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3Vic2NyaWJlVG9VcGxvYWRlZEZpbGVzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwbG9hZEZpbGVTZXJ2aWNlLnVwbG9hZGVkRmlsZXMkXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChkYXRhOiB7IGZpbGVzOiBGaWxlQ29uZmlnW107IGFjdGlvbjogc3RyaW5nIH0pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZGF0YSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm9uVXBsb2FkRmlsZXMoZGF0YSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgIGNsYXNzPVwidGEtdXBsb2FkIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIge3tcbiAgICAgICAgY29uZmlnLmZpbGVPcHRpb25zQ29uZmlnLmN1c3RvbUNsYXNzTmFtZVxuICAgIH19XCJcbiAgICBbbmdDbGFzc109XCJcbiAgICAgICAgY29uZmlnLmZpbGVzPy5sZW5ndGhcbiAgICAgICAgICAgIHwgdXBsb2FkQ2xhc3NcbiAgICAgICAgICAgICAgICA6IGNvbmZpZy5jYXJvdXNlbENvbmZpZy5zaXplXG4gICAgICAgICAgICAgICAgOiBjb25maWcucmV2aWV3LmlzUmV2aWV3XG4gICAgICAgICAgICAgICAgOiBjb25maWcuc2xpZGVyLmRvbnRVc2VTbGlkZXJcbiAgICBcIlxuPlxuICAgIDwhLS0gQ2Fyb3VzZWwgRmlsZXMgLS0+XG4gICAgQGlmIChcbiAgICAgICAgY29uZmlnLmZpbGVzPy5sZW5ndGggJiYgIWNvbmZpZy5zbGlkZXIuZG9udFVzZVNsaWRlciAmJiAhY29uZmlnLmhhc0Nyb3BcbiAgICApIHtcbiAgICAgICAgPGFwcC1jYS11cGxvYWQtZmlsZXMtY2Fyb3VzZWxcbiAgICAgICAgICAgIFtjb25maWddPVwiY2Fyb3VzZWxGaWxlQ29uZmlnXCJcbiAgICAgICAgICAgIChhY3RpdmVTbGlkZSk9XCJjdXJyZW50U2xpZGUgPSAkZXZlbnRcIlxuICAgICAgICAgICAgW3NsaWRlV2lkdGhdPVwiY29uZmlnLnNsaWRlV2lkdGhcIlxuICAgICAgICAgICAgKGhvdmVyQXJyb3dFbWl0KT1cImhvdmVyQXJyb3coJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIEBmb3IgKGZpbGUgb2YgY29uZmlnLmZpbGVzOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGEtdXBsb2FkLWNhcm91c2VsLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1jYS11cGxvYWQtZmlsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICN1cGxvYWRlZEZpbGVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbmZpZ109XCJjb25maWcuZmlsZU9wdGlvbnNDb25maWcgfCBtYXBGaWxlOiBmaWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmV2aWV3RmlsZUNvbmZpZ109XCJyZXZpZXdGaWxlQ29uZmlnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZmlsZUhvdmVyKT1cImZpbGVIb3ZlcigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZmlsZUFjdGlvbik9XCJvbkZpbGVBY3Rpb24oJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxhbmRzY2FwZUNoZWNrKT1cIm9uTGFuZHNjYXBlQ2hlY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRvY3VtZW50UmV2aWV3SW5wdXRFdmVudCk9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnRSZXZpZXdJbnB1dEV2ZW50TWV0aG9kKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvYXBwLWNhLXVwbG9hZC1maWxlPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9hcHAtY2EtdXBsb2FkLWZpbGVzLWNhcm91c2VsPlxuICAgIH1cblxuICAgIEBpZiAoY29uZmlnLnNsaWRlci5kb250VXNlU2xpZGVyICYmICFjb25maWcuaGFzQ3JvcCkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZG9jdW1lbnRzX2hvbGRlclwiPlxuICAgICAgICAgICAgPGFwcC1jYS11cGxvYWQtZHJvcHpvbmVcbiAgICAgICAgICAgICAgICBbY29uZmlnXT1cImNvbmZpZy5kcm9wem9uZUNvbmZcIlxuICAgICAgICAgICAgICAgIChvbkZpbGVFdmVudCk9XCJvblVwbG9hZEZpbGVzKCRldmVudClcIlxuICAgICAgICAgICAgICAgIChjbG9zZURyb3B6b25lKT1cImRyb3Bab25lQ2xvc2UoKVwiXG4gICAgICAgICAgICA+PC9hcHAtY2EtdXBsb2FkLWRyb3B6b25lPlxuICAgICAgICAgICAgQGZvciAoZmlsZSBvZiBjb25maWcuZmlsZXM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YS11cGxvYWQtY2Fyb3VzZWwtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YXBwLWNhLXVwbG9hZC1maWxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbmZpZ109XCJjb25maWcuZmlsZU9wdGlvbnNDb25maWcgfCBtYXBGaWxlOiBmaWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcmV2aWV3RmlsZUNvbmZpZ109XCJyZXZpZXdGaWxlQ29uZmlnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZmlsZUFjdGlvbik9XCJvbkZpbGVBY3Rpb24oJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxhbmRzY2FwZUNoZWNrKT1cIm9uTGFuZHNjYXBlQ2hlY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRvY3VtZW50UmV2aWV3SW5wdXRFdmVudCk9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnRSZXZpZXdJbnB1dEV2ZW50TWV0aG9kKCRldmVudClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvYXBwLWNhLXVwbG9hZC1maWxlPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuXG4gICAgPCEtLSBJbWFnZSBDcm9wIFRlbXBsYXRlIC0tPlxuXG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cInNwbGl0LWNyb3AtaG9sZGVyXCJcbiAgICAgICAgW2NsYXNzLnNwbGl0XT1cImlzRHJvcHpvbmVTaG93blwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2hpZGRlbi1kcm9wJzogIWNvbmZpZy5pc1Zpc2libGVDcm9wQW5kRHJvcCB9XCJcbiAgICA+XG4gICAgICAgIEBpZiAoY29uZmlnLmhhc0Nyb3AgJiYgY29uZmlnLmZpbGVzLmxlbmd0aCkge1xuICAgICAgICAgICAgQGZvciAoZmlsZSBvZiBjb25maWcuZmlsZXM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgIDxhcHAtY2EtbG9nby1jaGFuZ2VcbiAgICAgICAgICAgICAgICAgICAgW2hhc0Jsb2JVcmxdPVwiY29uZmlnLmhhc0Jsb2JVcmxcIlxuICAgICAgICAgICAgICAgICAgICBbaW1hZ2VUb0Nyb3BdPVwiZmlsZT8udXJsXCJcbiAgICAgICAgICAgICAgICAgICAgW2lzUm91bmRDcm9wcGVyXT1cImNvbmZpZy5pc1JvdW5kQ3JvcFwiXG4gICAgICAgICAgICAgICAgICAgIFtpc0Ryb3B6b25lU2hvd25dPVwiaXNEcm9wem9uZVNob3duXCJcbiAgICAgICAgICAgICAgICAgICAgW2luaXRpYWxDcm9wcGVyUG9zaXRpb25dPVwiY29uZmlnLmluaXRpYWxDcm9wcGVyUG9zaXRpb25cIlxuICAgICAgICAgICAgICAgICAgICBbY29udGFpbldpdGhpbkFzcGVjdFJhdGlvXT1cImNvbmZpZy5jb250YWluV2l0aGluQXNwZWN0UmF0aW9cIlxuICAgICAgICAgICAgICAgICAgICBbYXNwZWN0UmF0aW9dPVwiY29uZmlnLmFzcGVjdFJhdGlvXCJcbiAgICAgICAgICAgICAgICAgICAgW2N1c3RvbVdpZHRoXT1cImNvbmZpZy5kcm9wem9uZUN1c3RvbVdpZHRoXCJcbiAgICAgICAgICAgICAgICAgICAgKHNlbmRJbWFnZURhdGEpPVwib25VcGxvYWRGaWxlcygkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICA+PC9hcHAtY2EtbG9nby1jaGFuZ2U+XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cblxuICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJzcGxpdC1jcm9wLWhvbGRlclwiXG4gICAgICAgIFtjbGFzcy5zcGxpdF09XCJjb25maWcuaGFzQ3JvcCAmJiBjb25maWcuZmlsZXMubGVuZ3RoICYmIGlzRHJvcHpvbmVTaG93blwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2hpZGRlbi1kcm9wJzogIWNvbmZpZy5pc1Zpc2libGVDcm9wQW5kRHJvcCB9XCJcbiAgICA+XG4gICAgICAgIEBpZiAoaXNEcm9wem9uZVNob3duKSB7XG4gICAgICAgICAgICA8YXBwLWNhLXVwbG9hZC1kcm9wem9uZVxuICAgICAgICAgICAgICAgIFtjb25maWddPVwiY29uZmlnLmRyb3B6b25lQ29uZlwiXG4gICAgICAgICAgICAgICAgW2N1c3RvbVdpZHRoXT1cImNvbmZpZy5kcm9wem9uZUN1c3RvbVdpZHRoXCJcbiAgICAgICAgICAgICAgICBbaXNEcm9wem9uZVNob3duSW5Dcm9wXT1cIlxuICAgICAgICAgICAgICAgICAgICBjb25maWcuaGFzQ3JvcCAmJiAhIWNvbmZpZy5maWxlcy5sZW5ndGggJiYgaXNEcm9wem9uZVNob3duXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAob25GaWxlRXZlbnQpPVwib25VcGxvYWRGaWxlcygkZXZlbnQpXCJcbiAgICAgICAgICAgID48L2FwcC1jYS11cGxvYWQtZHJvcHpvbmU+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|