ca-components 1.0.73 → 1.0.75

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.
Files changed (106) hide show
  1. package/assets/scss/custompickers.scss +0 -111
  2. package/assets/scss/details_page_ske.scss +1 -1921
  3. package/assets/scss/tooltip.scss +7 -0
  4. package/esm2022/lib/components/ca-activity-log-list/ca-activity-log-list.component.mjs +6 -6
  5. package/esm2022/lib/components/ca-collapsible-filter/ca-collapsible-filter.component.mjs +2 -2
  6. package/esm2022/lib/components/ca-comment/ca-comment.component.mjs +17 -6
  7. package/esm2022/lib/components/ca-comment/modals/comment-modal/comment-modal.component.mjs +3 -3
  8. package/esm2022/lib/components/ca-custom-scrollbar/ca-custom-scrollbar.component.mjs +123 -120
  9. package/esm2022/lib/components/ca-custom-scrollbar/enums/event-type.enum.mjs +8 -0
  10. package/esm2022/lib/components/ca-custom-scrollbar/enums/index.mjs +3 -0
  11. package/esm2022/lib/components/ca-custom-scrollbar/enums/scroll-event-action.enum.mjs +6 -0
  12. package/esm2022/lib/components/ca-custom-scrollbar/models/index.mjs +3 -0
  13. package/esm2022/lib/components/ca-custom-scrollbar/models/scroll-bar-options.model.mjs +2 -0
  14. package/esm2022/lib/components/ca-custom-scrollbar/models/scroll-event.model.mjs +2 -0
  15. package/esm2022/lib/components/ca-details-dropdown/ca-details-dropdown.component.mjs +2 -2
  16. package/esm2022/lib/components/ca-dropdown-menu/ca-dropdown-menu.component.mjs +2 -2
  17. package/esm2022/lib/components/ca-filters/ca-filter.component.mjs +2 -2
  18. package/esm2022/lib/components/ca-filters/components/ca-dispatcher-filter/ca-dispatcher-filter.component.mjs +4 -8
  19. package/esm2022/lib/components/ca-filters/components/ca-location-filter/ca-location-filter.component.mjs +4 -8
  20. package/esm2022/lib/components/ca-filters/components/ca-money-filter/ca-money-filter.component.mjs +2 -2
  21. package/esm2022/lib/components/ca-filters/components/ca-pm-filter/ca-pm-filter.component.mjs +2 -2
  22. package/esm2022/lib/components/ca-filters/components/ca-state-filter/ca-state-filter.component.mjs +2 -2
  23. package/esm2022/lib/components/ca-filters/components/ca-status-filter/ca-status-filter.component.mjs +2 -2
  24. package/esm2022/lib/components/ca-filters/components/ca-time-filter/ca-time-filter.component.mjs +3 -3
  25. package/esm2022/lib/components/ca-filters/components/ca-trailer-type-filter/ca-trailer-type-filter.component.mjs +2 -2
  26. package/esm2022/lib/components/ca-filters/components/ca-truck-type-filter/ca-truck-type-filter.component.mjs +2 -2
  27. package/esm2022/lib/components/ca-filters/components/ca-user-filter/ca-user-filter.component.mjs +9 -11
  28. package/esm2022/lib/components/ca-filters/components/ca-violation-filter/ca-violation-filter.component.mjs +7 -7
  29. package/esm2022/lib/components/ca-input/ca-input.component.mjs +5 -6
  30. package/esm2022/lib/components/ca-input/pipes/input-class.pipe.mjs +2 -2
  31. package/esm2022/lib/components/ca-input/pipes/label-class.pipe.mjs +2 -1
  32. package/esm2022/lib/components/ca-input/pipes/show-placeholder-text.pipe.mjs +3 -3
  33. package/esm2022/lib/components/ca-input/pipes/show-valid-check.pipe.mjs +2 -2
  34. package/esm2022/lib/components/ca-input-address-dropdown/ca-input-address-dropdown.component.mjs +91 -82
  35. package/esm2022/lib/components/ca-input-address-dropdown/enums/input-address-type-string.enum.mjs +2 -1
  36. package/esm2022/lib/components/ca-input-dropdown/ca-input-dropdown.component.mjs +8 -23
  37. package/esm2022/lib/components/ca-input-dropdown/components/ca-input-dropdown-dispatch/ca-input-dropdown-dispatch.component.mjs +2 -6
  38. package/esm2022/lib/components/ca-input-dropdown/components/ca-input-dropdown-labels/ca-input-dropdown-labels.component.mjs +2 -6
  39. package/esm2022/lib/components/ca-input-dropdown/components/ca-input-dropdown-text-counter/ca-input-dropdown-text-counter.component.mjs +2 -6
  40. package/esm2022/lib/components/ca-input-note/ca-input-note.component.mjs +2 -2
  41. package/esm2022/lib/components/ca-logo-change/ca-logo-change.component.mjs +4 -7
  42. package/esm2022/lib/components/ca-main-table/ca-main-table.component.mjs +4 -5
  43. package/esm2022/lib/components/ca-map-dropdown/ca-map-dropdown.component.mjs +8 -8
  44. package/esm2022/lib/components/ca-modal-button/ca-modal-button.component.mjs +4 -6
  45. package/esm2022/lib/components/ca-modal-button/enums/index.mjs +2 -2
  46. package/esm2022/lib/components/ca-modal-button/enums/modal-button-class-type.enum.mjs +10 -0
  47. package/esm2022/lib/components/ca-modal-button/enums/modal-button-size.enum.mjs +3 -3
  48. package/esm2022/lib/components/ca-modal-button/pipes/modal-button-class.pipe.mjs +4 -12
  49. package/esm2022/lib/components/ca-ngx-slider/ca-ngx-slider.component.mjs +2 -2
  50. package/esm2022/lib/components/ca-note/ca-note.component.mjs +2 -2
  51. package/esm2022/lib/components/ca-note-container/ca-note-container.component.mjs +2 -2
  52. package/esm2022/lib/components/ca-payroll-list-summary-overview/ca-payroll-list-summary-overview.component.mjs +2 -2
  53. package/esm2022/lib/components/ca-period-content/ca-period-content.component.mjs +2 -2
  54. package/esm2022/lib/components/ca-period-content/components/ca-period-content-extra-info/ca-period-content-extra-info.component.mjs +3 -3
  55. package/esm2022/lib/components/ca-period-content/components/ca-period-content-payment/ca-period-content-payment.component.mjs +2 -2
  56. package/esm2022/lib/components/ca-period-content/components/ca-period-content-user-info/ca-period-content-user-info.component.mjs +3 -3
  57. package/esm2022/lib/components/ca-pickup-delivery-block/ca-pickup-delivery-block.component.mjs +3 -3
  58. package/esm2022/lib/components/ca-pickup-delivery-block/components/ca-load/ca-load.component.mjs +3 -3
  59. package/esm2022/lib/components/ca-pickup-delivery-block/components/ca-load/components/ca-load-list/ca-load-list.component.mjs +3 -3
  60. package/esm2022/lib/components/ca-pickup-delivery-block/components/ca-load/components/ca-load-single/ca-load-single.component.mjs +3 -3
  61. package/esm2022/lib/components/ca-profile-image/ca-profile-image.component.mjs +3 -3
  62. package/esm2022/lib/components/ca-progress-bar/ca-progress-bar.component.mjs +2 -2
  63. package/esm2022/lib/components/ca-progress-expiration/ca-progress-expiration.component.mjs +10 -7
  64. package/esm2022/lib/components/ca-rating-review/ca-rating-review.component.mjs +2 -2
  65. package/esm2022/lib/components/ca-rating-review/components/ca-rating-review-user/ca-rating-review-user.component.mjs +2 -2
  66. package/esm2022/lib/components/ca-rating-review/components/ca-ratings-reviews-popup/ca-ratings-reviews-popup.component.mjs +10 -12
  67. package/esm2022/lib/components/ca-right-side-panel/components/ca-right-side-panel-company/ca-right-side-panel-company.component.mjs +3 -3
  68. package/esm2022/lib/components/ca-right-side-panel/components/ca-right-side-panel-menu/ca-right-side-panel-menu.component.mjs +3 -3
  69. 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
  70. package/esm2022/lib/components/ca-search-multiple-states/ca-search-multiple-states.component.mjs +10 -15
  71. package/esm2022/lib/components/ca-sort-dropdown/ca-sort-dropdown.component.mjs +2 -2
  72. package/esm2022/lib/components/ca-spinner/ca-spinner.component.mjs +2 -2
  73. package/esm2022/lib/components/ca-tab-switch/ca-tab-switch.component.mjs +3 -3
  74. package/esm2022/lib/components/ca-todo/ca-todo.component.mjs +3 -3
  75. package/esm2022/lib/components/ca-todo/components/ca-todo-card.component.mjs +3 -3
  76. package/esm2022/lib/components/ca-tooltip-list/ca-tooltip-list.component.mjs +3 -3
  77. package/esm2022/lib/components/ca-truck-trailer-progress-bar/ca-truck-trailer-progress-bar.component.mjs +2 -2
  78. package/esm2022/lib/components/ca-upload-files/ca-upload-files.component.mjs +10 -16
  79. package/esm2022/lib/components/ca-upload-files/components/ca-upload-dropzone/ca-upload-dropzone.component.mjs +3 -3
  80. package/esm2022/lib/components/ca-upload-files/components/ca-upload-file/ca-upload-file.component.mjs +9 -13
  81. package/esm2022/lib/components/ca-upload-files/components/ca-upload-files-carousel/ca-upload-files-carousel.component.mjs +3 -3
  82. package/fesm2022/ca-components.mjs +583 -591
  83. package/fesm2022/ca-components.mjs.map +1 -1
  84. package/lib/components/ca-custom-scrollbar/ca-custom-scrollbar.component.d.ts +38 -29
  85. package/lib/components/ca-custom-scrollbar/enums/event-type.enum.d.ts +6 -0
  86. package/lib/components/ca-custom-scrollbar/enums/index.d.ts +2 -0
  87. package/lib/components/ca-custom-scrollbar/enums/scroll-event-action.enum.d.ts +4 -0
  88. package/lib/components/ca-custom-scrollbar/models/index.d.ts +2 -0
  89. package/lib/components/ca-custom-scrollbar/models/scroll-bar-options.model.d.ts +6 -0
  90. package/lib/components/ca-custom-scrollbar/models/scroll-event.model.d.ts +6 -0
  91. package/lib/components/ca-filters/ca-filter.component.d.ts +2 -2
  92. package/lib/components/ca-input/pipes/input-class.pipe.d.ts +1 -1
  93. package/lib/components/ca-input/pipes/label-class.pipe.d.ts +1 -1
  94. package/lib/components/ca-input-address-dropdown/ca-input-address-dropdown.component.d.ts +9 -7
  95. package/lib/components/ca-input-address-dropdown/enums/input-address-type-string.enum.d.ts +2 -1
  96. package/lib/components/ca-modal-button/ca-modal-button.component.d.ts +2 -4
  97. package/lib/components/ca-modal-button/enums/index.d.ts +1 -1
  98. package/lib/components/ca-modal-button/enums/modal-button-class-type.enum.d.ts +8 -0
  99. package/lib/components/ca-modal-button/enums/modal-button-size.enum.d.ts +2 -2
  100. package/lib/components/ca-modal-button/pipes/modal-button-class.pipe.d.ts +2 -2
  101. package/package.json +1 -1
  102. package/src/assets/ca-components/svg/input/ic_coordinates.svg +6 -0
  103. package/esm2022/lib/components/ca-logo-change/pipes/logo-slider.pipe.mjs +0 -17
  104. package/esm2022/lib/components/ca-modal-button/enums/modal-button-type.enum.mjs +0 -10
  105. package/lib/components/ca-logo-change/pipes/logo-slider.pipe.d.ts +0 -7
  106. package/lib/components/ca-modal-button/enums/modal-button-type.enum.d.ts +0 -8
@@ -14,8 +14,6 @@ import { ToolbarFilterStringEnum } from '../../../ca-map/enums/toolbar-filter-st
14
14
  // components
15
15
  import { CaInputComponent } from '../../../ca-input/ca-input.component';
16
16
  import { CaProfileImageComponent } from '../../../ca-profile-image/ca-profile-image.component';
17
- // pipes
18
- import { DropdownLoadStatusColorPipe } from '../../../../pipes/dropdown-load-status-color.pipe';
19
17
  // utils
20
18
  import { CaFiltersSvgRoutes } from '../../utils/svg-routes/ca-filters-svg-routes';
21
19
  // helpers
@@ -185,7 +183,7 @@ export class CaDispatcherFilterComponent {
185
183
  this.destroy$.complete();
186
184
  }
187
185
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CaDispatcherFilterComponent, deps: [{ token: i1.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
188
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CaDispatcherFilterComponent, isStandalone: true, selector: "app-ca-dispatcher-filter", inputs: { type: "type", isFilterActive: "isFilterActive", filterTitle: "filterTitle", hasLeftSideIcon: "hasLeftSideIcon", toDoSubType: "toDoSubType", unselectedUser: "unselectedUser", isSearchExpanded: "isSearchExpanded" }, ngImport: i0, template: "<ng-container\n *ngIf=\"\n type === 'dispatcherFilter' ||\n type === 'driverFilter' ||\n type === 'fuelStopFilter' ||\n type === 'brokerFilter'\n \"\n>\n <div\n class=\"search-input-header\"\n [class.activeSearch]=\"isSearchExpanded\"\n [class.inactiveSearch]=\"!isSearchExpanded\"\n [formGroup]=\"searchForm\"\n >\n <app-ca-input\n class=\"input-form-holder\"\n formControlName=\"search\"\n [inputConfig]=\"dispatcherSearch\"\n ></app-ca-input>\n </div>\n <div\n class=\"selected-dispatcher-holder d-flex justify-content-start align-items-start flex-column\"\n >\n <ng-container\n *ngFor=\"\n let item of selectedUser;\n let indx = index;\n trackBy: trackByIdentity\n \"\n >\n <div\n class=\"dispatcher-main-holder d-flex align-items-center justify-content-center\"\n [@inOutAnimation]=\"'in'\"\n [@showAnimation]=\"!!isFilterActive\"\n (click)=\"removeFromSelectedUser(item, indx)\"\n >\n <ng-container\n *ngIf=\"type === 'dispatcherFilter' || type === 'driverFilter'\"\n >\n <div class=\"dispatcher-profile-img d-flex align-items-center\">\n <ng-container *ngIf=\"!item.avatar; else avatarTemplate\">\n <app-ca-profile-image\n [indx]=\"indx\"\n [textShortName]=\"item.name\"\n [size]=\"'small'\"\n ></app-ca-profile-image>\n </ng-container>\n\n <ng-template #avatarTemplate>\n <div\n class=\"dispatcher_avatar\"\n style.background-image=\"url('{{ item.avatar }}')\"\n ></div>\n </ng-template>\n </div>\n </ng-container>\n <div\n class=\"selected-dispatcher-frame d-flex align-items-center justify-content-between\"\n [class.dispatcher-frame-no-icon]=\"\n type !== 'dispatcherFilter' && type !== 'driverFilter'\n \"\n >\n <div class=\"selected-name-text d-flex align-items-center\">\n <span> {{ item.name }}</span>\n </div>\n <ng-container *ngIf=\"item?.count; else noCount\">\n <span\n class=\"count-holder d-inline-flex justify-content-center align-items-center activeCount\"\n >\n {{ item.count }}\n </span>\n </ng-container>\n\n <ng-template #noCount>\n <ng-container *ngIf=\"!item.count; else noCounter\">\n <div\n class=\"selected-icon d-flex justify-content-center align-items-center\"\n >\n <svg-icon [src]=\"getSvgPath('iconConfirm')\"></svg-icon>\n </div>\n </ng-container>\n <ng-template #noCounter>\n <div class=\"counter-holder activeCounter\">2</div>\n </ng-template>\n </ng-template>\n <div\n (click)=\"removeFromSelectedUser(item, indx)\"\n class=\"icon-delete d-flex justify-content-center align-items-center\"\n [class.counterMargin]=\"item.count\"\n >\n <div class=\"icon-delete-hold\"></div>\n <svg-icon [src]=\"getSvgPath('removeSelectedValue')\"></svg-icon>\n </div>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"selectedUser.length > 0\">\n <div class=\"border-filter border-thrird-margin\"></div>\n </ng-container>\n </div>\n <div\n class=\"filter-dispatcher-holder d-flex justify-content-start align-items-start flex-column\"\n >\n <ng-container\n *ngFor=\"\n let item of unselectedUser;\n let indx = index;\n trackBy: trackByIdentity\n \"\n >\n <div class=\"dispatcher-frame-holder d-flex align-items-center\">\n <ng-container *ngIf=\"!item.hidden && !item.isSelected\">\n <div\n [@inOutAnimation]=\"'in'\"\n [@showAnimation]=\"!!isFilterActive\"\n (click)=\"addToSelectedUser(item, indx)\"\n class=\"dispatcher-main-holder d-flex align-items-center justify-content-center\"\n >\n <ng-container\n *ngIf=\"type === 'dispatcherFilter' || type === 'driverFilter'\"\n >\n <div class=\"dispatcher-profile-img d-flex align-items-center\">\n <ng-container *ngIf=\"!item.avatar; else avatarTemplate\">\n <app-ca-profile-image\n [indx]=\"indx\"\n [textShortName]=\"item.name\"\n [size]=\"'small'\"\n >\n </app-ca-profile-image>\n </ng-container>\n\n <ng-template #avatarTemplate>\n <div\n class=\"dispatcher_avatar\"\n style.background-image=\"url('{{ item.avatar }}')\"\n ></div>\n </ng-template>\n </div>\n </ng-container>\n <div\n class=\"dispatcher-frame d-flex align-items-center\"\n [class.dispatcher-frame-no-icon]=\"\n type !== 'dispatcherFilter' && type !== 'driverFilter'\n \"\n >\n <div class=\"selected-name-text d-flex align-items-center\">\n <span> {{ item.name }} </span>\n </div>\n\n <ng-container *ngIf=\"item?.count\">\n <span\n class=\"count-holder d-inline-flex justify-content-center align-items-center\"\n >\n {{ item.count }}\n </span>\n </ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n <ng-container *ngIf=\"unselectedUser?.length !== selectedUser?.length\">\n <div class=\"border-filter\"></div>\n </ng-container>\n</ng-container>\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}.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;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}.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-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}.border-filter{width:100%;height:1px;border-radius:1px;margin:4px 0;background-color:#424242}.border-thrird-margin{margin:6px 0}.search-input-header{width:100%!important;background:#424242!important;color:#aaa!important;margin:4px 0;border-radius:2px;transition:transform .3s}.search-input-header .input-form-holder .input-custom-group .input-control{height:22px!important;background-color:#424242!important;color:#dadada}.search-input-header .input-form-holder .input-custom-group .input-control.has-placeholderIcon{padding-left:29px}.search-input-header .input-form-holder .input-custom-group .input-icon svg-icon svg{width:14px;height:14px}.search-input-header .input-form-holder .input-custom-group .input-icon:after{left:18px}.search-input-header .input-form-holder .input-custom-group .input-label{top:2px!important}.search-input-header .input-form-holder .input-custom-group .input-label.input-placeholderIcon-on{left:29px}.search-input-header .input-form-holder .input-custom-group .input-clear{top:10px!important}.filter-dispatcher-holder{position:relative;width:100%;max-height:224px;background-color:#2f2f2f;padding:0;box-sizing:border-box;overflow-y:auto;-webkit-user-select:none;user-select:none;transition:transform .2s linear}.filter-dispatcher-holder .dispatcher-frame-no-icon{padding-left:6px!important}.filter-dispatcher-holder .search-container{width:100%;margin-bottom:10px;background:#424242}.filter-dispatcher-holder .search-container input{width:100%;background:#424242;color:#aaa}.filter-dispatcher-holder::-webkit-scrollbar{width:4px}.filter-dispatcher-holder::-webkit-scrollbar-thumb{border:4px solid #dadada!important;border-radius:1px}.filter-dispatcher-holder::-webkit-scrollbar-track{width:4px;background-color:#dadada33}.filter-dispatcher-holder .dispatcher-frame-holder{position:relative;width:100%;opacity:1;transition:transform .2s linear}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-main-holder{width:100%;padding-right:4px;transition:transform .2s linear;border-radius:2px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-main-holder:hover{cursor:pointer;background-color:#424242}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-main-holder.state-main-holder{height:26px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-frame{position:relative;width:100%;min-height:26px;border-radius:2px;padding-left:30px;box-sizing:border-box;font-size:14px;font-weight:400;color:#dadada;line-height:18px;margin-bottom:2px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-frame::-moz-selection{background:#6c6c6c20;color:#6c6c6c}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-frame::selection{background:#6c6c6c20;color:#6c6c6c}.filter-dispatcher-holder .dispatcher-frame-holder .count-holder{position:absolute;right:0;padding:0 6px;height:18px;min-width:18px;font-weight:600;font-size:11px;line-height:14px;color:#ffffffb2;background-color:#424242;border-radius:9px;white-space:nowrap}.filter-dispatcher-holder .dispatcher-frame-holder .count-holder.activeCount{background-color:#3b73ed;color:#dadada}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-profile-img{position:absolute;left:4px;top:0;height:26px;width:18px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-profile-img .dispatcher_avatar{width:18px;height:18px;background-repeat:no-repeat;background-position:center;background-size:cover;border-radius:100%}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-profile-img .dispatcher_avatar.driver_avatar{height:18px;width:15px;border-radius:2px}.filter-dispatcher-holder .dispatcher-frame-holder.hidenItem{scale:.7;height:0px;background-color:#424242;opacity:0;pointer-events:none}.selected-dispatcher-holder{width:100%;box-sizing:border-box;transition:height .2s linear}.selected-dispatcher-holder .dispatcher-frame-no-icon{padding-left:6px!important}.selected-dispatcher-holder .dispatcher-main-holder{position:relative;width:100%;height:28px;transition:height .2s linear;cursor:pointer;border-radius:2px}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame{position:relative;width:100%;height:26px;padding-right:4px;padding-left:30px;box-sizing:border-box;font-size:14px;font-weight:700;color:#dadada;line-height:26px;margin-bottom:2px;-webkit-user-select:none;user-select:none}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame:hover .icon-delete{visibility:visible;opacity:1}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .selected-icon{width:18px;height:18px;top:4px;right:4px}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .selected-icon svg-icon svg{width:12.74px!important;height:9.85px!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .selected-icon svg-icon svg path{fill:#6f9ee0!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete{width:21px;height:23px;visibility:hidden;opacity:0;top:2.5px;right:4px;border-radius:1px;transition:transform .2s ease-in-out}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete svg-icon svg{visibility:visible;width:10.63px!important;height:10.63px!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete svg-icon svg path{fill:#e57373!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete:hover svg-icon svg path{fill:#e57373!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame::-moz-selection{background:#536bc220;color:#536bc2}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame::selection{background:#536bc220;color:#536bc2}.selected-dispatcher-holder .dispatcher-main-holder .selected-name-text{width:100%!important;line-height:26px}.selected-dispatcher-holder .dispatcher-main-holder .selected-name-text span{width:99%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.selected-dispatcher-holder .dispatcher-main-holder .count-holder{position:absolute;right:5px;padding:0 6px;height:18px;min-width:18px;font-weight:600;font-size:11px;line-height:14px;color:#ffffffb2;background-color:#424242;border-radius:9px;white-space:nowrap}.selected-dispatcher-holder .dispatcher-main-holder .count-holder.activeCount{background-color:#3b73ed;color:#dadada}.selected-dispatcher-holder .dispatcher-main-holder:hover{cursor:pointer;background-color:#424242}.selected-dispatcher-holder .dispatcher-main-holder:hover .count-holder{visibility:hidden}.selected-dispatcher-holder .dispatcher-main-holder:hover .dispatcher-profile-img svg-icon svg path{fill:#dadada}.selected-dispatcher-holder .dispatcher-main-holder:hover .selected-icon{visibility:hidden}.selected-dispatcher-holder .dispatcher-main-holder.removeClass{scale:.7;height:0px;background-color:#424242;opacity:0;pointer-events:none}.selected-dispatcher-holder .dispatcher-main-holder .dispatcher-profile-img{position:absolute;left:4px;top:0;height:26px;width:18px}.selected-dispatcher-holder .dispatcher-main-holder .dispatcher-profile-img .dispatcher_avatar{width:18px;height:18px;background-repeat:no-repeat;background-position:center;background-size:cover;border-radius:100%}.selected-dispatcher-holder .dispatcher-main-holder .dispatcher-profile-img .dispatcher_avatar.driver_avatar{height:18px;width:15px;border-radius:2px}\n"], dependencies: [{ kind: "ngmodule", type:
186
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CaDispatcherFilterComponent, isStandalone: true, selector: "app-ca-dispatcher-filter", inputs: { type: "type", isFilterActive: "isFilterActive", filterTitle: "filterTitle", hasLeftSideIcon: "hasLeftSideIcon", toDoSubType: "toDoSubType", unselectedUser: "unselectedUser", isSearchExpanded: "isSearchExpanded" }, ngImport: i0, template: "<ng-container\n *ngIf=\"\n type === 'dispatcherFilter' ||\n type === 'driverFilter' ||\n type === 'fuelStopFilter' ||\n type === 'brokerFilter'\n \"\n>\n <div\n class=\"search-input-header\"\n [class.activeSearch]=\"isSearchExpanded\"\n [class.inactiveSearch]=\"!isSearchExpanded\"\n [formGroup]=\"searchForm\"\n >\n <app-ca-input\n class=\"input-form-holder\"\n formControlName=\"search\"\n [inputConfig]=\"dispatcherSearch\"\n ></app-ca-input>\n </div>\n <div\n class=\"selected-dispatcher-holder d-flex justify-content-start align-items-start flex-column\"\n >\n <ng-container\n *ngFor=\"\n let item of selectedUser;\n let indx = index;\n trackBy: trackByIdentity\n \"\n >\n <div\n class=\"dispatcher-main-holder d-flex align-items-center justify-content-center\"\n [@inOutAnimation]=\"'in'\"\n [@showAnimation]=\"!!isFilterActive\"\n (click)=\"removeFromSelectedUser(item, indx)\"\n >\n <ng-container\n *ngIf=\"type === 'dispatcherFilter' || type === 'driverFilter'\"\n >\n <div class=\"dispatcher-profile-img d-flex align-items-center\">\n <ng-container *ngIf=\"!item.avatar; else avatarTemplate\">\n <app-ca-profile-image\n [indx]=\"indx\"\n [textShortName]=\"item.name\"\n [size]=\"'small'\"\n ></app-ca-profile-image>\n </ng-container>\n\n <ng-template #avatarTemplate>\n <div\n class=\"dispatcher_avatar\"\n style.background-image=\"url('{{ item.avatar }}')\"\n ></div>\n </ng-template>\n </div>\n </ng-container>\n <div\n class=\"selected-dispatcher-frame d-flex align-items-center justify-content-between\"\n [class.dispatcher-frame-no-icon]=\"\n type !== 'dispatcherFilter' && type !== 'driverFilter'\n \"\n >\n <div class=\"selected-name-text d-flex align-items-center\">\n <span> {{ item.name }}</span>\n </div>\n <ng-container *ngIf=\"item?.count; else noCount\">\n <span\n class=\"count-holder d-inline-flex justify-content-center align-items-center activeCount\"\n >\n {{ item.count }}\n </span>\n </ng-container>\n\n <ng-template #noCount>\n <ng-container *ngIf=\"!item.count; else noCounter\">\n <div\n class=\"selected-icon d-flex justify-content-center align-items-center\"\n >\n <svg-icon [src]=\"getSvgPath('iconConfirm')\"></svg-icon>\n </div>\n </ng-container>\n <ng-template #noCounter>\n <div class=\"counter-holder activeCounter\">2</div>\n </ng-template>\n </ng-template>\n <div\n (click)=\"removeFromSelectedUser(item, indx)\"\n class=\"icon-delete d-flex justify-content-center align-items-center\"\n [class.counterMargin]=\"item.count\"\n >\n <div class=\"icon-delete-hold\"></div>\n <svg-icon [src]=\"getSvgPath('removeSelectedValue')\"></svg-icon>\n </div>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"selectedUser.length > 0\">\n <div class=\"border-filter border-thrird-margin\"></div>\n </ng-container>\n </div>\n <div\n class=\"filter-dispatcher-holder d-flex justify-content-start align-items-start flex-column\"\n >\n <ng-container\n *ngFor=\"\n let item of unselectedUser;\n let indx = index;\n trackBy: trackByIdentity\n \"\n >\n <div class=\"dispatcher-frame-holder d-flex align-items-center\">\n <ng-container *ngIf=\"!item.hidden && !item.isSelected\">\n <div\n [@inOutAnimation]=\"'in'\"\n [@showAnimation]=\"!!isFilterActive\"\n (click)=\"addToSelectedUser(item, indx)\"\n class=\"dispatcher-main-holder d-flex align-items-center justify-content-center\"\n >\n <ng-container\n *ngIf=\"type === 'dispatcherFilter' || type === 'driverFilter'\"\n >\n <div class=\"dispatcher-profile-img d-flex align-items-center\">\n <ng-container *ngIf=\"!item.avatar; else avatarTemplate\">\n <app-ca-profile-image\n [indx]=\"indx\"\n [textShortName]=\"item.name\"\n [size]=\"'small'\"\n >\n </app-ca-profile-image>\n </ng-container>\n\n <ng-template #avatarTemplate>\n <div\n class=\"dispatcher_avatar\"\n style.background-image=\"url('{{ item.avatar }}')\"\n ></div>\n </ng-template>\n </div>\n </ng-container>\n <div\n class=\"dispatcher-frame d-flex align-items-center\"\n [class.dispatcher-frame-no-icon]=\"\n type !== 'dispatcherFilter' && type !== 'driverFilter'\n \"\n >\n <div class=\"selected-name-text d-flex align-items-center\">\n <span> {{ item.name }} </span>\n </div>\n\n <ng-container *ngIf=\"item?.count\">\n <span\n class=\"count-holder d-inline-flex justify-content-center align-items-center\"\n >\n {{ item.count }}\n </span>\n </ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n <ng-container *ngIf=\"unselectedUser?.length !== selectedUser?.length\">\n <div class=\"border-filter\"></div>\n </ng-container>\n</ng-container>\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-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}.border-filter{width:100%;height:1px;border-radius:1px;margin:4px 0;background-color:#424242}.border-thrird-margin{margin:6px 0}.search-input-header{width:100%!important;background:#424242!important;color:#aaa!important;margin:4px 0;border-radius:2px;transition:transform .3s}.search-input-header .input-form-holder .input-custom-group .input-control{height:22px!important;background-color:#424242!important;color:#dadada}.search-input-header .input-form-holder .input-custom-group .input-control.has-placeholderIcon{padding-left:29px}.search-input-header .input-form-holder .input-custom-group .input-icon svg-icon svg{width:14px;height:14px}.search-input-header .input-form-holder .input-custom-group .input-icon:after{left:18px}.search-input-header .input-form-holder .input-custom-group .input-label{top:2px!important}.search-input-header .input-form-holder .input-custom-group .input-label.input-placeholderIcon-on{left:29px}.search-input-header .input-form-holder .input-custom-group .input-clear{top:10px!important}.filter-dispatcher-holder{position:relative;width:100%;max-height:224px;background-color:#2f2f2f;padding:0;box-sizing:border-box;overflow-y:auto;-webkit-user-select:none;user-select:none;transition:transform .2s linear}.filter-dispatcher-holder .dispatcher-frame-no-icon{padding-left:6px!important}.filter-dispatcher-holder .search-container{width:100%;margin-bottom:10px;background:#424242}.filter-dispatcher-holder .search-container input{width:100%;background:#424242;color:#aaa}.filter-dispatcher-holder::-webkit-scrollbar{width:4px}.filter-dispatcher-holder::-webkit-scrollbar-thumb{border:4px solid #dadada!important;border-radius:1px}.filter-dispatcher-holder::-webkit-scrollbar-track{width:4px;background-color:#dadada33}.filter-dispatcher-holder .dispatcher-frame-holder{position:relative;width:100%;opacity:1;transition:transform .2s linear}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-main-holder{width:100%;padding-right:4px;transition:transform .2s linear;border-radius:2px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-main-holder:hover{cursor:pointer;background-color:#424242}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-main-holder.state-main-holder{height:26px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-frame{position:relative;width:100%;min-height:26px;border-radius:2px;padding-left:30px;box-sizing:border-box;font-size:14px;font-weight:400;color:#dadada;line-height:18px;margin-bottom:2px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-frame::-moz-selection{background:#6c6c6c20;color:#6c6c6c}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-frame::selection{background:#6c6c6c20;color:#6c6c6c}.filter-dispatcher-holder .dispatcher-frame-holder .count-holder{position:absolute;right:0;padding:0 6px;height:18px;min-width:18px;font-weight:600;font-size:11px;line-height:14px;color:#ffffffb2;background-color:#424242;border-radius:9px;white-space:nowrap}.filter-dispatcher-holder .dispatcher-frame-holder .count-holder.activeCount{background-color:#3b73ed;color:#dadada}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-profile-img{position:absolute;left:4px;top:0;height:26px;width:18px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-profile-img .dispatcher_avatar{width:18px;height:18px;background-repeat:no-repeat;background-position:center;background-size:cover;border-radius:100%}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-profile-img .dispatcher_avatar.driver_avatar{height:18px;width:15px;border-radius:2px}.filter-dispatcher-holder .dispatcher-frame-holder.hidenItem{scale:.7;height:0px;background-color:#424242;opacity:0;pointer-events:none}.selected-dispatcher-holder{width:100%;box-sizing:border-box;transition:height .2s linear}.selected-dispatcher-holder .dispatcher-frame-no-icon{padding-left:6px!important}.selected-dispatcher-holder .dispatcher-main-holder{position:relative;width:100%;height:28px;transition:height .2s linear;cursor:pointer;border-radius:2px}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame{position:relative;width:100%;height:26px;padding-right:4px;padding-left:30px;box-sizing:border-box;font-size:14px;font-weight:700;color:#dadada;line-height:26px;margin-bottom:2px;-webkit-user-select:none;user-select:none}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame:hover .icon-delete{visibility:visible;opacity:1}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .selected-icon{width:18px;height:18px;top:4px;right:4px}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .selected-icon svg-icon svg{width:12.74px!important;height:9.85px!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .selected-icon svg-icon svg path{fill:#6f9ee0!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete{width:21px;height:23px;visibility:hidden;opacity:0;top:2.5px;right:4px;border-radius:1px;transition:transform .2s ease-in-out}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete svg-icon svg{visibility:visible;width:10.63px!important;height:10.63px!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete svg-icon svg path{fill:#e57373!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete:hover svg-icon svg path{fill:#e57373!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame::-moz-selection{background:#536bc220;color:#536bc2}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame::selection{background:#536bc220;color:#536bc2}.selected-dispatcher-holder .dispatcher-main-holder .selected-name-text{width:100%!important;line-height:26px}.selected-dispatcher-holder .dispatcher-main-holder .selected-name-text span{width:99%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.selected-dispatcher-holder .dispatcher-main-holder .count-holder{position:absolute;right:5px;padding:0 6px;height:18px;min-width:18px;font-weight:600;font-size:11px;line-height:14px;color:#ffffffb2;background-color:#424242;border-radius:9px;white-space:nowrap}.selected-dispatcher-holder .dispatcher-main-holder .count-holder.activeCount{background-color:#3b73ed;color:#dadada}.selected-dispatcher-holder .dispatcher-main-holder:hover{cursor:pointer;background-color:#424242}.selected-dispatcher-holder .dispatcher-main-holder:hover .count-holder{visibility:hidden}.selected-dispatcher-holder .dispatcher-main-holder:hover .dispatcher-profile-img svg-icon svg path{fill:#dadada}.selected-dispatcher-holder .dispatcher-main-holder:hover .selected-icon{visibility:hidden}.selected-dispatcher-holder .dispatcher-main-holder.removeClass{scale:.7;height:0px;background-color:#424242;opacity:0;pointer-events:none}.selected-dispatcher-holder .dispatcher-main-holder .dispatcher-profile-img{position:absolute;left:4px;top:0;height:26px;width:18px}.selected-dispatcher-holder .dispatcher-main-holder .dispatcher-profile-img .dispatcher_avatar{width:18px;height:18px;background-repeat:no-repeat;background-position:center;background-size:cover;border-radius:100%}.selected-dispatcher-holder .dispatcher-main-holder .dispatcher-profile-img .dispatcher_avatar.driver_avatar{height:18px;width:15px;border-radius:2px}\n"], dependencies: [{ kind: "ngmodule", type:
189
187
  // modules
190
188
  CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: HttpClientModule }, { kind: "ngmodule", type: AngularSvgIconModule }, { kind: "component", type: i3.SvgIconComponent, selector: "svg-icon", inputs: ["src", "name", "stretch", "applyClass", "applyCss", "svgClass", "class", "viewBox", "svgAriaLabel", "svgStyle"] }, { kind: "component", type:
191
189
  // components
@@ -204,13 +202,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
204
202
  AngularSvgIconModule,
205
203
  // components
206
204
  CaInputComponent,
207
- CaProfileImageComponent,
208
- // pipes
209
- DropdownLoadStatusColorPipe,
205
+ CaProfileImageComponent
210
206
  ], animations: [
211
207
  inOutAnimation('inOutAnimation'),
212
208
  showAnimation('showAnimation'),
213
- ], template: "<ng-container\n *ngIf=\"\n type === 'dispatcherFilter' ||\n type === 'driverFilter' ||\n type === 'fuelStopFilter' ||\n type === 'brokerFilter'\n \"\n>\n <div\n class=\"search-input-header\"\n [class.activeSearch]=\"isSearchExpanded\"\n [class.inactiveSearch]=\"!isSearchExpanded\"\n [formGroup]=\"searchForm\"\n >\n <app-ca-input\n class=\"input-form-holder\"\n formControlName=\"search\"\n [inputConfig]=\"dispatcherSearch\"\n ></app-ca-input>\n </div>\n <div\n class=\"selected-dispatcher-holder d-flex justify-content-start align-items-start flex-column\"\n >\n <ng-container\n *ngFor=\"\n let item of selectedUser;\n let indx = index;\n trackBy: trackByIdentity\n \"\n >\n <div\n class=\"dispatcher-main-holder d-flex align-items-center justify-content-center\"\n [@inOutAnimation]=\"'in'\"\n [@showAnimation]=\"!!isFilterActive\"\n (click)=\"removeFromSelectedUser(item, indx)\"\n >\n <ng-container\n *ngIf=\"type === 'dispatcherFilter' || type === 'driverFilter'\"\n >\n <div class=\"dispatcher-profile-img d-flex align-items-center\">\n <ng-container *ngIf=\"!item.avatar; else avatarTemplate\">\n <app-ca-profile-image\n [indx]=\"indx\"\n [textShortName]=\"item.name\"\n [size]=\"'small'\"\n ></app-ca-profile-image>\n </ng-container>\n\n <ng-template #avatarTemplate>\n <div\n class=\"dispatcher_avatar\"\n style.background-image=\"url('{{ item.avatar }}')\"\n ></div>\n </ng-template>\n </div>\n </ng-container>\n <div\n class=\"selected-dispatcher-frame d-flex align-items-center justify-content-between\"\n [class.dispatcher-frame-no-icon]=\"\n type !== 'dispatcherFilter' && type !== 'driverFilter'\n \"\n >\n <div class=\"selected-name-text d-flex align-items-center\">\n <span> {{ item.name }}</span>\n </div>\n <ng-container *ngIf=\"item?.count; else noCount\">\n <span\n class=\"count-holder d-inline-flex justify-content-center align-items-center activeCount\"\n >\n {{ item.count }}\n </span>\n </ng-container>\n\n <ng-template #noCount>\n <ng-container *ngIf=\"!item.count; else noCounter\">\n <div\n class=\"selected-icon d-flex justify-content-center align-items-center\"\n >\n <svg-icon [src]=\"getSvgPath('iconConfirm')\"></svg-icon>\n </div>\n </ng-container>\n <ng-template #noCounter>\n <div class=\"counter-holder activeCounter\">2</div>\n </ng-template>\n </ng-template>\n <div\n (click)=\"removeFromSelectedUser(item, indx)\"\n class=\"icon-delete d-flex justify-content-center align-items-center\"\n [class.counterMargin]=\"item.count\"\n >\n <div class=\"icon-delete-hold\"></div>\n <svg-icon [src]=\"getSvgPath('removeSelectedValue')\"></svg-icon>\n </div>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"selectedUser.length > 0\">\n <div class=\"border-filter border-thrird-margin\"></div>\n </ng-container>\n </div>\n <div\n class=\"filter-dispatcher-holder d-flex justify-content-start align-items-start flex-column\"\n >\n <ng-container\n *ngFor=\"\n let item of unselectedUser;\n let indx = index;\n trackBy: trackByIdentity\n \"\n >\n <div class=\"dispatcher-frame-holder d-flex align-items-center\">\n <ng-container *ngIf=\"!item.hidden && !item.isSelected\">\n <div\n [@inOutAnimation]=\"'in'\"\n [@showAnimation]=\"!!isFilterActive\"\n (click)=\"addToSelectedUser(item, indx)\"\n class=\"dispatcher-main-holder d-flex align-items-center justify-content-center\"\n >\n <ng-container\n *ngIf=\"type === 'dispatcherFilter' || type === 'driverFilter'\"\n >\n <div class=\"dispatcher-profile-img d-flex align-items-center\">\n <ng-container *ngIf=\"!item.avatar; else avatarTemplate\">\n <app-ca-profile-image\n [indx]=\"indx\"\n [textShortName]=\"item.name\"\n [size]=\"'small'\"\n >\n </app-ca-profile-image>\n </ng-container>\n\n <ng-template #avatarTemplate>\n <div\n class=\"dispatcher_avatar\"\n style.background-image=\"url('{{ item.avatar }}')\"\n ></div>\n </ng-template>\n </div>\n </ng-container>\n <div\n class=\"dispatcher-frame d-flex align-items-center\"\n [class.dispatcher-frame-no-icon]=\"\n type !== 'dispatcherFilter' && type !== 'driverFilter'\n \"\n >\n <div class=\"selected-name-text d-flex align-items-center\">\n <span> {{ item.name }} </span>\n </div>\n\n <ng-container *ngIf=\"item?.count\">\n <span\n class=\"count-holder d-inline-flex justify-content-center align-items-center\"\n >\n {{ item.count }}\n </span>\n </ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n <ng-container *ngIf=\"unselectedUser?.length !== selectedUser?.length\">\n <div class=\"border-filter\"></div>\n </ng-container>\n</ng-container>\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}.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;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}.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-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}.border-filter{width:100%;height:1px;border-radius:1px;margin:4px 0;background-color:#424242}.border-thrird-margin{margin:6px 0}.search-input-header{width:100%!important;background:#424242!important;color:#aaa!important;margin:4px 0;border-radius:2px;transition:transform .3s}.search-input-header .input-form-holder .input-custom-group .input-control{height:22px!important;background-color:#424242!important;color:#dadada}.search-input-header .input-form-holder .input-custom-group .input-control.has-placeholderIcon{padding-left:29px}.search-input-header .input-form-holder .input-custom-group .input-icon svg-icon svg{width:14px;height:14px}.search-input-header .input-form-holder .input-custom-group .input-icon:after{left:18px}.search-input-header .input-form-holder .input-custom-group .input-label{top:2px!important}.search-input-header .input-form-holder .input-custom-group .input-label.input-placeholderIcon-on{left:29px}.search-input-header .input-form-holder .input-custom-group .input-clear{top:10px!important}.filter-dispatcher-holder{position:relative;width:100%;max-height:224px;background-color:#2f2f2f;padding:0;box-sizing:border-box;overflow-y:auto;-webkit-user-select:none;user-select:none;transition:transform .2s linear}.filter-dispatcher-holder .dispatcher-frame-no-icon{padding-left:6px!important}.filter-dispatcher-holder .search-container{width:100%;margin-bottom:10px;background:#424242}.filter-dispatcher-holder .search-container input{width:100%;background:#424242;color:#aaa}.filter-dispatcher-holder::-webkit-scrollbar{width:4px}.filter-dispatcher-holder::-webkit-scrollbar-thumb{border:4px solid #dadada!important;border-radius:1px}.filter-dispatcher-holder::-webkit-scrollbar-track{width:4px;background-color:#dadada33}.filter-dispatcher-holder .dispatcher-frame-holder{position:relative;width:100%;opacity:1;transition:transform .2s linear}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-main-holder{width:100%;padding-right:4px;transition:transform .2s linear;border-radius:2px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-main-holder:hover{cursor:pointer;background-color:#424242}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-main-holder.state-main-holder{height:26px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-frame{position:relative;width:100%;min-height:26px;border-radius:2px;padding-left:30px;box-sizing:border-box;font-size:14px;font-weight:400;color:#dadada;line-height:18px;margin-bottom:2px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-frame::-moz-selection{background:#6c6c6c20;color:#6c6c6c}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-frame::selection{background:#6c6c6c20;color:#6c6c6c}.filter-dispatcher-holder .dispatcher-frame-holder .count-holder{position:absolute;right:0;padding:0 6px;height:18px;min-width:18px;font-weight:600;font-size:11px;line-height:14px;color:#ffffffb2;background-color:#424242;border-radius:9px;white-space:nowrap}.filter-dispatcher-holder .dispatcher-frame-holder .count-holder.activeCount{background-color:#3b73ed;color:#dadada}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-profile-img{position:absolute;left:4px;top:0;height:26px;width:18px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-profile-img .dispatcher_avatar{width:18px;height:18px;background-repeat:no-repeat;background-position:center;background-size:cover;border-radius:100%}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-profile-img .dispatcher_avatar.driver_avatar{height:18px;width:15px;border-radius:2px}.filter-dispatcher-holder .dispatcher-frame-holder.hidenItem{scale:.7;height:0px;background-color:#424242;opacity:0;pointer-events:none}.selected-dispatcher-holder{width:100%;box-sizing:border-box;transition:height .2s linear}.selected-dispatcher-holder .dispatcher-frame-no-icon{padding-left:6px!important}.selected-dispatcher-holder .dispatcher-main-holder{position:relative;width:100%;height:28px;transition:height .2s linear;cursor:pointer;border-radius:2px}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame{position:relative;width:100%;height:26px;padding-right:4px;padding-left:30px;box-sizing:border-box;font-size:14px;font-weight:700;color:#dadada;line-height:26px;margin-bottom:2px;-webkit-user-select:none;user-select:none}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame:hover .icon-delete{visibility:visible;opacity:1}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .selected-icon{width:18px;height:18px;top:4px;right:4px}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .selected-icon svg-icon svg{width:12.74px!important;height:9.85px!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .selected-icon svg-icon svg path{fill:#6f9ee0!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete{width:21px;height:23px;visibility:hidden;opacity:0;top:2.5px;right:4px;border-radius:1px;transition:transform .2s ease-in-out}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete svg-icon svg{visibility:visible;width:10.63px!important;height:10.63px!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete svg-icon svg path{fill:#e57373!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete:hover svg-icon svg path{fill:#e57373!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame::-moz-selection{background:#536bc220;color:#536bc2}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame::selection{background:#536bc220;color:#536bc2}.selected-dispatcher-holder .dispatcher-main-holder .selected-name-text{width:100%!important;line-height:26px}.selected-dispatcher-holder .dispatcher-main-holder .selected-name-text span{width:99%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.selected-dispatcher-holder .dispatcher-main-holder .count-holder{position:absolute;right:5px;padding:0 6px;height:18px;min-width:18px;font-weight:600;font-size:11px;line-height:14px;color:#ffffffb2;background-color:#424242;border-radius:9px;white-space:nowrap}.selected-dispatcher-holder .dispatcher-main-holder .count-holder.activeCount{background-color:#3b73ed;color:#dadada}.selected-dispatcher-holder .dispatcher-main-holder:hover{cursor:pointer;background-color:#424242}.selected-dispatcher-holder .dispatcher-main-holder:hover .count-holder{visibility:hidden}.selected-dispatcher-holder .dispatcher-main-holder:hover .dispatcher-profile-img svg-icon svg path{fill:#dadada}.selected-dispatcher-holder .dispatcher-main-holder:hover .selected-icon{visibility:hidden}.selected-dispatcher-holder .dispatcher-main-holder.removeClass{scale:.7;height:0px;background-color:#424242;opacity:0;pointer-events:none}.selected-dispatcher-holder .dispatcher-main-holder .dispatcher-profile-img{position:absolute;left:4px;top:0;height:26px;width:18px}.selected-dispatcher-holder .dispatcher-main-holder .dispatcher-profile-img .dispatcher_avatar{width:18px;height:18px;background-repeat:no-repeat;background-position:center;background-size:cover;border-radius:100%}.selected-dispatcher-holder .dispatcher-main-holder .dispatcher-profile-img .dispatcher_avatar.driver_avatar{height:18px;width:15px;border-radius:2px}\n"] }]
209
+ ], template: "<ng-container\n *ngIf=\"\n type === 'dispatcherFilter' ||\n type === 'driverFilter' ||\n type === 'fuelStopFilter' ||\n type === 'brokerFilter'\n \"\n>\n <div\n class=\"search-input-header\"\n [class.activeSearch]=\"isSearchExpanded\"\n [class.inactiveSearch]=\"!isSearchExpanded\"\n [formGroup]=\"searchForm\"\n >\n <app-ca-input\n class=\"input-form-holder\"\n formControlName=\"search\"\n [inputConfig]=\"dispatcherSearch\"\n ></app-ca-input>\n </div>\n <div\n class=\"selected-dispatcher-holder d-flex justify-content-start align-items-start flex-column\"\n >\n <ng-container\n *ngFor=\"\n let item of selectedUser;\n let indx = index;\n trackBy: trackByIdentity\n \"\n >\n <div\n class=\"dispatcher-main-holder d-flex align-items-center justify-content-center\"\n [@inOutAnimation]=\"'in'\"\n [@showAnimation]=\"!!isFilterActive\"\n (click)=\"removeFromSelectedUser(item, indx)\"\n >\n <ng-container\n *ngIf=\"type === 'dispatcherFilter' || type === 'driverFilter'\"\n >\n <div class=\"dispatcher-profile-img d-flex align-items-center\">\n <ng-container *ngIf=\"!item.avatar; else avatarTemplate\">\n <app-ca-profile-image\n [indx]=\"indx\"\n [textShortName]=\"item.name\"\n [size]=\"'small'\"\n ></app-ca-profile-image>\n </ng-container>\n\n <ng-template #avatarTemplate>\n <div\n class=\"dispatcher_avatar\"\n style.background-image=\"url('{{ item.avatar }}')\"\n ></div>\n </ng-template>\n </div>\n </ng-container>\n <div\n class=\"selected-dispatcher-frame d-flex align-items-center justify-content-between\"\n [class.dispatcher-frame-no-icon]=\"\n type !== 'dispatcherFilter' && type !== 'driverFilter'\n \"\n >\n <div class=\"selected-name-text d-flex align-items-center\">\n <span> {{ item.name }}</span>\n </div>\n <ng-container *ngIf=\"item?.count; else noCount\">\n <span\n class=\"count-holder d-inline-flex justify-content-center align-items-center activeCount\"\n >\n {{ item.count }}\n </span>\n </ng-container>\n\n <ng-template #noCount>\n <ng-container *ngIf=\"!item.count; else noCounter\">\n <div\n class=\"selected-icon d-flex justify-content-center align-items-center\"\n >\n <svg-icon [src]=\"getSvgPath('iconConfirm')\"></svg-icon>\n </div>\n </ng-container>\n <ng-template #noCounter>\n <div class=\"counter-holder activeCounter\">2</div>\n </ng-template>\n </ng-template>\n <div\n (click)=\"removeFromSelectedUser(item, indx)\"\n class=\"icon-delete d-flex justify-content-center align-items-center\"\n [class.counterMargin]=\"item.count\"\n >\n <div class=\"icon-delete-hold\"></div>\n <svg-icon [src]=\"getSvgPath('removeSelectedValue')\"></svg-icon>\n </div>\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"selectedUser.length > 0\">\n <div class=\"border-filter border-thrird-margin\"></div>\n </ng-container>\n </div>\n <div\n class=\"filter-dispatcher-holder d-flex justify-content-start align-items-start flex-column\"\n >\n <ng-container\n *ngFor=\"\n let item of unselectedUser;\n let indx = index;\n trackBy: trackByIdentity\n \"\n >\n <div class=\"dispatcher-frame-holder d-flex align-items-center\">\n <ng-container *ngIf=\"!item.hidden && !item.isSelected\">\n <div\n [@inOutAnimation]=\"'in'\"\n [@showAnimation]=\"!!isFilterActive\"\n (click)=\"addToSelectedUser(item, indx)\"\n class=\"dispatcher-main-holder d-flex align-items-center justify-content-center\"\n >\n <ng-container\n *ngIf=\"type === 'dispatcherFilter' || type === 'driverFilter'\"\n >\n <div class=\"dispatcher-profile-img d-flex align-items-center\">\n <ng-container *ngIf=\"!item.avatar; else avatarTemplate\">\n <app-ca-profile-image\n [indx]=\"indx\"\n [textShortName]=\"item.name\"\n [size]=\"'small'\"\n >\n </app-ca-profile-image>\n </ng-container>\n\n <ng-template #avatarTemplate>\n <div\n class=\"dispatcher_avatar\"\n style.background-image=\"url('{{ item.avatar }}')\"\n ></div>\n </ng-template>\n </div>\n </ng-container>\n <div\n class=\"dispatcher-frame d-flex align-items-center\"\n [class.dispatcher-frame-no-icon]=\"\n type !== 'dispatcherFilter' && type !== 'driverFilter'\n \"\n >\n <div class=\"selected-name-text d-flex align-items-center\">\n <span> {{ item.name }} </span>\n </div>\n\n <ng-container *ngIf=\"item?.count\">\n <span\n class=\"count-holder d-inline-flex justify-content-center align-items-center\"\n >\n {{ item.count }}\n </span>\n </ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n <ng-container *ngIf=\"unselectedUser?.length !== selectedUser?.length\">\n <div class=\"border-filter\"></div>\n </ng-container>\n</ng-container>\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-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}.border-filter{width:100%;height:1px;border-radius:1px;margin:4px 0;background-color:#424242}.border-thrird-margin{margin:6px 0}.search-input-header{width:100%!important;background:#424242!important;color:#aaa!important;margin:4px 0;border-radius:2px;transition:transform .3s}.search-input-header .input-form-holder .input-custom-group .input-control{height:22px!important;background-color:#424242!important;color:#dadada}.search-input-header .input-form-holder .input-custom-group .input-control.has-placeholderIcon{padding-left:29px}.search-input-header .input-form-holder .input-custom-group .input-icon svg-icon svg{width:14px;height:14px}.search-input-header .input-form-holder .input-custom-group .input-icon:after{left:18px}.search-input-header .input-form-holder .input-custom-group .input-label{top:2px!important}.search-input-header .input-form-holder .input-custom-group .input-label.input-placeholderIcon-on{left:29px}.search-input-header .input-form-holder .input-custom-group .input-clear{top:10px!important}.filter-dispatcher-holder{position:relative;width:100%;max-height:224px;background-color:#2f2f2f;padding:0;box-sizing:border-box;overflow-y:auto;-webkit-user-select:none;user-select:none;transition:transform .2s linear}.filter-dispatcher-holder .dispatcher-frame-no-icon{padding-left:6px!important}.filter-dispatcher-holder .search-container{width:100%;margin-bottom:10px;background:#424242}.filter-dispatcher-holder .search-container input{width:100%;background:#424242;color:#aaa}.filter-dispatcher-holder::-webkit-scrollbar{width:4px}.filter-dispatcher-holder::-webkit-scrollbar-thumb{border:4px solid #dadada!important;border-radius:1px}.filter-dispatcher-holder::-webkit-scrollbar-track{width:4px;background-color:#dadada33}.filter-dispatcher-holder .dispatcher-frame-holder{position:relative;width:100%;opacity:1;transition:transform .2s linear}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-main-holder{width:100%;padding-right:4px;transition:transform .2s linear;border-radius:2px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-main-holder:hover{cursor:pointer;background-color:#424242}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-main-holder.state-main-holder{height:26px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-frame{position:relative;width:100%;min-height:26px;border-radius:2px;padding-left:30px;box-sizing:border-box;font-size:14px;font-weight:400;color:#dadada;line-height:18px;margin-bottom:2px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-frame::-moz-selection{background:#6c6c6c20;color:#6c6c6c}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-frame::selection{background:#6c6c6c20;color:#6c6c6c}.filter-dispatcher-holder .dispatcher-frame-holder .count-holder{position:absolute;right:0;padding:0 6px;height:18px;min-width:18px;font-weight:600;font-size:11px;line-height:14px;color:#ffffffb2;background-color:#424242;border-radius:9px;white-space:nowrap}.filter-dispatcher-holder .dispatcher-frame-holder .count-holder.activeCount{background-color:#3b73ed;color:#dadada}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-profile-img{position:absolute;left:4px;top:0;height:26px;width:18px}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-profile-img .dispatcher_avatar{width:18px;height:18px;background-repeat:no-repeat;background-position:center;background-size:cover;border-radius:100%}.filter-dispatcher-holder .dispatcher-frame-holder .dispatcher-profile-img .dispatcher_avatar.driver_avatar{height:18px;width:15px;border-radius:2px}.filter-dispatcher-holder .dispatcher-frame-holder.hidenItem{scale:.7;height:0px;background-color:#424242;opacity:0;pointer-events:none}.selected-dispatcher-holder{width:100%;box-sizing:border-box;transition:height .2s linear}.selected-dispatcher-holder .dispatcher-frame-no-icon{padding-left:6px!important}.selected-dispatcher-holder .dispatcher-main-holder{position:relative;width:100%;height:28px;transition:height .2s linear;cursor:pointer;border-radius:2px}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame{position:relative;width:100%;height:26px;padding-right:4px;padding-left:30px;box-sizing:border-box;font-size:14px;font-weight:700;color:#dadada;line-height:26px;margin-bottom:2px;-webkit-user-select:none;user-select:none}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame:hover .icon-delete{visibility:visible;opacity:1}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .selected-icon{width:18px;height:18px;top:4px;right:4px}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .selected-icon svg-icon svg{width:12.74px!important;height:9.85px!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .selected-icon svg-icon svg path{fill:#6f9ee0!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete{width:21px;height:23px;visibility:hidden;opacity:0;top:2.5px;right:4px;border-radius:1px;transition:transform .2s ease-in-out}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete svg-icon svg{visibility:visible;width:10.63px!important;height:10.63px!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete svg-icon svg path{fill:#e57373!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame .icon-delete:hover svg-icon svg path{fill:#e57373!important}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame::-moz-selection{background:#536bc220;color:#536bc2}.selected-dispatcher-holder .dispatcher-main-holder .selected-dispatcher-frame::selection{background:#536bc220;color:#536bc2}.selected-dispatcher-holder .dispatcher-main-holder .selected-name-text{width:100%!important;line-height:26px}.selected-dispatcher-holder .dispatcher-main-holder .selected-name-text span{width:99%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.selected-dispatcher-holder .dispatcher-main-holder .count-holder{position:absolute;right:5px;padding:0 6px;height:18px;min-width:18px;font-weight:600;font-size:11px;line-height:14px;color:#ffffffb2;background-color:#424242;border-radius:9px;white-space:nowrap}.selected-dispatcher-holder .dispatcher-main-holder .count-holder.activeCount{background-color:#3b73ed;color:#dadada}.selected-dispatcher-holder .dispatcher-main-holder:hover{cursor:pointer;background-color:#424242}.selected-dispatcher-holder .dispatcher-main-holder:hover .count-holder{visibility:hidden}.selected-dispatcher-holder .dispatcher-main-holder:hover .dispatcher-profile-img svg-icon svg path{fill:#dadada}.selected-dispatcher-holder .dispatcher-main-holder:hover .selected-icon{visibility:hidden}.selected-dispatcher-holder .dispatcher-main-holder.removeClass{scale:.7;height:0px;background-color:#424242;opacity:0;pointer-events:none}.selected-dispatcher-holder .dispatcher-main-holder .dispatcher-profile-img{position:absolute;left:4px;top:0;height:26px;width:18px}.selected-dispatcher-holder .dispatcher-main-holder .dispatcher-profile-img .dispatcher_avatar{width:18px;height:18px;background-repeat:no-repeat;background-position:center;background-size:cover;border-radius:100%}.selected-dispatcher-holder .dispatcher-main-holder .dispatcher-profile-img .dispatcher_avatar.driver_avatar{height:18px;width:15px;border-radius:2px}\n"] }]
214
210
  }], ctorParameters: () => [{ type: i1.UntypedFormBuilder }], propDecorators: { type: [{
215
211
  type: Input
216
212
  }], isFilterActive: [{
@@ -226,4 +222,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
226
222
  }], isSearchExpanded: [{
227
223
  type: Input
228
224
  }] } });
229
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtZGlzcGF0Y2hlci1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtZmlsdGVycy9jb21wb25lbnRzL2NhLWRpc3BhdGNoZXItZmlsdGVyL2NhLWRpc3BhdGNoZXItZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLWZpbHRlcnMvY29tcG9uZW50cy9jYS1kaXNwYXRjaGVyLWZpbHRlci9jYS1kaXNwYXRjaGVyLWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFHTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxtQkFBbUIsR0FHcEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUxQyxVQUFVO0FBQ1YsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFeEQsYUFBYTtBQUNiLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFdEUsUUFBUTtBQUNSLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQU8z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QTdOVSwyQkFBMkI7bUdBQTNCLDJCQUEyQixvVEM1RXhDLGcyTEFzS0E7Z0JEMUdJLFVBQVU7Z0JBQ1YsWUFBWSwrUEFDWixtQkFBbUIsbWxCQUNuQixnQkFBZ0IsOEJBQ2hCLG9CQUFvQjtnQkFDcEIsYUFBYTtnQkFDYixnQkFBZ0Isc1JBQ2hCLHVCQUF1QixvTEFJYjtZQUNWLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQztZQUNoQyxhQUFhLENBQUMsZUFBZSxDQUFDO1NBQy9COzs0RkFFVSwyQkFBMkI7a0JBdkJ2QyxTQUFTOytCQUNFLDBCQUEwQixjQUN4QixJQUFJLGlCQUdELGlCQUFpQixDQUFDLElBQUksV0FDNUI7d0JBQ1AsVUFBVTt3QkFDVixZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsZ0JBQWdCO3dCQUNoQixvQkFBb0I7d0JBQ3BCLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQix1QkFBdUI7d0JBQ3ZCLFFBQVE7d0JBQ1IsMkJBQTJCO3FCQUM1QixjQUNXO3dCQUNWLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQzt3QkFDaEMsYUFBYSxDQUFDLGVBQWUsQ0FBQztxQkFDL0I7dUZBR1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE9uRGVzdHJveSxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gIFVudHlwZWRGb3JtQnVpbGRlcixcbiAgVW50eXBlZEZvcm1Hcm91cCxcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5cbi8vIG1vZHVsZXNcbmltcG9ydCB7IEh0dHBDbGllbnRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBBbmd1bGFyU3ZnSWNvbk1vZHVsZSB9IGZyb20gJ2FuZ3VsYXItc3ZnLWljb24nO1xuXG4vLyBhbmltYXRpb25zXG5pbXBvcnQgeyBpbk91dEFuaW1hdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2FuaW1hdGlvbnMvaW4tb3V0LmFuaW1hdGlvbic7XG5pbXBvcnQgeyBzaG93QW5pbWF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vYW5pbWF0aW9ucy9zaG93LmFuaW1hdGlvbic7XG5cbi8vIGVudW1zXG5pbXBvcnQgeyBMb2FkU3RhdHVzRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL2VudW1zL2xvYWQtc3RhdHVzLmVudW0nO1xuaW1wb3J0IHsgVG9vbGJhckZpbHRlclN0cmluZ0VudW0gfSBmcm9tICcuLi8uLi8uLi9jYS1tYXAvZW51bXMvdG9vbGJhci1maWx0ZXItc3RyaW5nLmVudW0nO1xuXG4vLyBtb2RlbHNcbmltcG9ydCB7IEFycmF5U3RhdHVzIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2FycmF5LXN0YXR1cy5tb2RlbCc7XG5pbXBvcnQgeyBmaWx0ZXJPdXRwdXQgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZmlsdGVyLW91dHB1dC5tb2RlbCc7XG5pbXBvcnQgeyBmaWx0ZXJPdXRwdXRXaXRoUGFyYW1zIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2ZpbHRlci1vdXRwdXQtcGFyYW1zLm1vZGVsJztcblxuLy8gY29tcG9uZW50c1xuaW1wb3J0IHsgQ2FJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NhLWlucHV0L2NhLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYVByb2ZpbGVJbWFnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NhLXByb2ZpbGUtaW1hZ2UvY2EtcHJvZmlsZS1pbWFnZS5jb21wb25lbnQnO1xuXG4vLyBwaXBlc1xuaW1wb3J0IHsgRHJvcGRvd25Mb2FkU3RhdHVzQ29sb3JQaXBlIH0gZnJvbSAnLi4vLi4vLi4vLi4vcGlwZXMvZHJvcGRvd24tbG9hZC1zdGF0dXMtY29sb3IucGlwZSc7XG5cbi8vIHV0aWxzXG5pbXBvcnQgeyBDYUZpbHRlcnNTdmdSb3V0ZXMgfSBmcm9tICcuLi8uLi91dGlscy9zdmctcm91dGVzL2NhLWZpbHRlcnMtc3ZnLXJvdXRlcyc7XG5cbi8vIGhlbHBlcnNcbmltcG9ydCB7IEZpbHRlckhlbHBlciB9IGZyb20gJy4uLy4uL3V0aWxzL2hlbHBlcnMvZmlsdGVyLmhlbHBlcic7XG5cbi8vIGNvbmZpZ3NcbmltcG9ydCB7IElDYUlucHV0IH0gZnJvbSAnLi4vLi4vLi4vY2EtaW5wdXQvY29uZmlnL2NhLWlucHV0LmNvbmZpZyc7XG5pbXBvcnQgeyBDYURpc3BhdGNoZXJGaWx0ZXJDb25maWcgfSBmcm9tICcuL2NvbmZpZy9jYS1kaXNwYXRjaGVyLWZpbHRlci5jb25maWcnO1xuaW1wb3J0IHsgdXNlclNlbGVjdGVkIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL3VzZXItc2VsZWN0ZWQubW9kZWwnO1xuaW1wb3J0IHsgQ2FEcml2ZXJGaWx0ZXJDb25maWcgfSBmcm9tICcuL2NvbmZpZy9jYS1kcml2ZXItZmlsdGVyLmNvbmZpZyc7XG5pbXBvcnQgeyBDYUZ1ZWxTdG9wRmlsdGVyQ29uZmlnIH0gZnJvbSAnLi9jb25maWcvY2EtZnVlbC1zdG9wLWZpbHRlci5jb25maWcnO1xuaW1wb3J0IHsgQ2FCcm9rZXJGaWx0ZXJDb25maWcgfSBmcm9tICcuL2NvbmZpZy9jYS1icm9rZXItZmlsdGVyLmNvbmZpZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1jYS1kaXNwYXRjaGVyLWZpbHRlcicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYS1kaXNwYXRjaGVyLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhLWRpc3BhdGNoZXItZmlsdGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGltcG9ydHM6IFtcbiAgICAvLyBtb2R1bGVzXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgSHR0cENsaWVudE1vZHVsZSxcbiAgICBBbmd1bGFyU3ZnSWNvbk1vZHVsZSxcbiAgICAvLyBjb21wb25lbnRzXG4gICAgQ2FJbnB1dENvbXBvbmVudCxcbiAgICBDYVByb2ZpbGVJbWFnZUNvbXBvbmVudCxcbiAgICAvLyBwaXBlc1xuICAgIERyb3Bkb3duTG9hZFN0YXR1c0NvbG9yUGlwZSxcbiAgXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIGluT3V0QW5pbWF0aW9uKCdpbk91dEFuaW1hdGlvbicpLFxuICAgIHNob3dBbmltYXRpb24oJ3Nob3dBbmltYXRpb24nKSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FEaXNwYXRjaGVyRmlsdGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSB0eXBlITogc3RyaW5nO1xuICBASW5wdXQoKSBpc0ZpbHRlckFjdGl2ZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBmaWx0ZXJUaXRsZSE6IHN0cmluZztcbiAgQElucHV0KCkgaGFzTGVmdFNpZGVJY29uOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHRvRG9TdWJUeXBlITogc3RyaW5nO1xuICBASW5wdXQoKSB1bnNlbGVjdGVkVXNlciE6IEFycmF5U3RhdHVzW107XG4gIEBJbnB1dCgpIGlzU2VhcmNoRXhwYW5kZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwdWJsaWMgbG9hZFN0YXR1c0VudW0gPSBMb2FkU3RhdHVzRW51bTtcbiAgcHVibGljIHNlYXJjaEZvcm0hOiBVbnR5cGVkRm9ybUdyb3VwO1xuICBwdWJsaWMgc2VhcmNoSW5wdXRWYWx1ZSE6IHN0cmluZztcblxuICBwdWJsaWMgdW5zZWxlY3RlZFZpc2libGVDb3VudDogbnVtYmVyID0gMDtcbiAgcHVibGljIGNhRmlsdGVyc1N2Z1JvdXRlczogQ2FGaWx0ZXJzU3ZnUm91dGVzID0gQ2FGaWx0ZXJzU3ZnUm91dGVzO1xuXG4gIHB1YmxpYyBzZWxlY3RlZFVzZXI6IHVzZXJTZWxlY3RlZFtdID0gW107XG4gIHB1YmxpYyBmaWx0ZXJBY3RpdmVBcnJheTogQXJyYXlTdGF0dXNbXSA9IFtdO1xuICBwdWJsaWMgaXNBc2NlbmRpbmdTb3J0T3JkZXI6IGJvb2xlYW4gPSB0cnVlO1xuICBwdWJsaWMgaXNCdXR0b25BdmFpbGFibGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIHRvdGFsRmlsdGVyc051bTogbnVtYmVyID0gMDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXIpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jcmVhdGVGb3JtKCk7XG5cbiAgICB0aGlzLndhdGNoU2VhcmNoRm9ybVZhbHVlQ2hhbmdlcygpO1xuICB9XG5cbiAgZ2V0IGRpc3BhdGNoZXJTZWFyY2goKTogSUNhSW5wdXQge1xuICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICBjYXNlIFRvb2xiYXJGaWx0ZXJTdHJpbmdFbnVtLkRJU1BBVENIRVJfRklMVEVSOlxuICAgICAgICByZXR1cm4gQ2FEaXNwYXRjaGVyRmlsdGVyQ29uZmlnLmdldERpc3BhdGNoZXJTZWFyY2goKTtcblxuICAgICAgY2FzZSBUb29sYmFyRmlsdGVyU3RyaW5nRW51bS5EUklWRVJfRklMVEVSOlxuICAgICAgICByZXR1cm4gQ2FEcml2ZXJGaWx0ZXJDb25maWcuZ2V0RHJpdmVyU2VhcmNoKCk7XG5cbiAgICAgIGNhc2UgVG9vbGJhckZpbHRlclN0cmluZ0VudW0uRlVFTF9TVE9QX0ZJTFRFUjpcbiAgICAgICAgcmV0dXJuIENhRnVlbFN0b3BGaWx0ZXJDb25maWcuZ2V0RnVlbFN0b3BTZWFyY2goKTtcblxuICAgICAgY2FzZSBUb29sYmFyRmlsdGVyU3RyaW5nRW51bS5CUk9LRVJfRklMVEVSOlxuICAgICAgICByZXR1cm4gQ2FCcm9rZXJGaWx0ZXJDb25maWcuZ2V0QnJva2VyU2VhcmNoKCk7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVW5rbm93biBmaWx0ZXIgdHlwZScpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRJbml0aWFscyhuYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBzdHJpbmcge1xuICAgIHJldHVybiBGaWx0ZXJIZWxwZXIuZ2V0SW5pdGlhbHMobmFtZSk7XG4gIH1cblxuICBwdWJsaWMgb25GaWx0ZXJDbG9zZSgpOiB2b2lkIHtcbiAgICBGaWx0ZXJIZWxwZXIuaGFuZGxlRmlsdGVyQ2xvc2UoXG4gICAgICB0aGlzLnVuc2VsZWN0ZWRVc2VyLFxuICAgICAgdGhpcy5zZWxlY3RlZFVzZXIsXG4gICAgICB0aGlzLnJlbW92ZUZyb21TZWxlY3RlZFVzZXIuYmluZCh0aGlzKSxcbiAgICAgIHRoaXMuYWRkVG9TZWxlY3RlZFVzZXIuYmluZCh0aGlzKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgc2V0RmlsdGVyVmFsdWUoXG4gICAgJGV2ZW50OiBFdmVudFxuICApOiBmaWx0ZXJPdXRwdXQgfCBmaWx0ZXJPdXRwdXRXaXRoUGFyYW1zIHwgdW5kZWZpbmVkIHtcbiAgICB0aGlzLmZpbHRlckFjdGl2ZUFycmF5ID0gWy4uLnRoaXMuc2VsZWN0ZWRVc2VyXTtcbiAgICBjb25zdCBzZWxlY3RlZFVzZXJzSWRBcnJheTogbnVtYmVyW10gPSBbXTtcbiAgICB0aGlzLnRvdGFsRmlsdGVyc051bSA9IHRoaXMuZmlsdGVyQWN0aXZlQXJyYXkubGVuZ3RoO1xuXG4gICAgbGV0IG1haW5BcnJheTogQXJyYXlTdGF0dXNbXSA9IFtdO1xuICAgIGxldCBxdWVyeVBhcmFtcyA9IHt9O1xuICAgIGxldCBzdWJUeXBlID0gVG9vbGJhckZpbHRlclN0cmluZ0VudW0uRU1QVFlfU1RSSU5HX1BMQUNFSE9MREVSLnRvU3RyaW5nKCk7XG5cbiAgICBtYWluQXJyYXkgPSB0aGlzLnVuc2VsZWN0ZWRVc2VyO1xuXG4gICAgbWFpbkFycmF5LmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIGlmIChpdGVtLmlzU2VsZWN0ZWQpIHtcbiAgICAgICAgaXRlbVsnY3VycmVudFNldCddID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGl0ZW1bJ2N1cnJlbnRTZXQnXSA9IGZhbHNlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5maWx0ZXJBY3RpdmVBcnJheS5mb3JFYWNoKChkYXRhKSA9PiB7XG4gICAgICBzZWxlY3RlZFVzZXJzSWRBcnJheS5wdXNoKGRhdGEuaWQhKTtcbiAgICB9KTtcblxuICAgIGlmICghc2VsZWN0ZWRVc2Vyc0lkQXJyYXkubGVuZ3RoKSB7XG4gICAgICB0aGlzLmNsZWFyQWxsKCRldmVudCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcXVlcnlQYXJhbXMgPSBzZWxlY3RlZFVzZXJzSWRBcnJheTtcbiAgICBzdWJUeXBlID1cbiAgICAgIHRoaXMudG9Eb1N1YlR5cGUgPz9cbiAgICAgIFRvb2xiYXJGaWx0ZXJTdHJpbmdFbnVtLkVNUFRZX1NUUklOR19QTEFDRUhPTERFUi50b1N0cmluZygpO1xuXG4gICAgY29uc3QgYWN0aW9uID0gJ1NldCc7XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGZpbHRlclR5cGU6IHRoaXMudHlwZSxcbiAgICAgIGFjdGlvbixcbiAgICAgIHF1ZXJ5UGFyYW1zLFxuICAgICAgc3ViVHlwZSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJBbGwoZXZlbnQ/OiBFdmVudCk6IGZpbHRlck91dHB1dCB8IGZpbHRlck91dHB1dFdpdGhQYXJhbXMge1xuICAgIGlmIChldmVudCkgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICB0aGlzLnNlbGVjdGVkVXNlciA9IFtdO1xuICAgIHRoaXMuZmlsdGVyQWN0aXZlQXJyYXkgPSBbXTtcbiAgICB0aGlzLnRvdGFsRmlsdGVyc051bSA9IDA7XG5cbiAgICB0aGlzLnVuc2VsZWN0ZWRVc2VyLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIGl0ZW0uaXNTZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgaXRlbS5jdXJyZW50U2V0ID0gZmFsc2U7XG4gICAgfSk7XG5cbiAgICBjb25zdCBhY3Rpb24gPSAnQ2xlYXInO1xuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICBhY3Rpb24sXG4gICAgICB0eXBlOiB0aGlzLnR5cGUsXG4gICAgICBmaWx0ZXJUeXBlOiB0aGlzLnR5cGUsXG4gICAgfTtcbiAgICByZXR1cm4gZGF0YTtcbiAgfVxuXG4gIHB1YmxpYyB0cmFja0J5SWRlbnRpdHkoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIGluZGV4O1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVGb3JtKCk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgc2VhcmNoOiBudWxsLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGFkZFRvU2VsZWN0ZWRVc2VyKGl0ZW06IHVzZXJTZWxlY3RlZCwgaW5keDogbnVtYmVyKSB7XG4gICAgY29uc3QgbWFpbkFycmF5ID0gdGhpcy51bnNlbGVjdGVkVXNlcjtcblxuICAgIG1haW5BcnJheVtpbmR4XS5pc1NlbGVjdGVkID0gdHJ1ZTtcblxuICAgIHRoaXMudW5zZWxlY3RlZFZpc2libGVDb3VudCA9IG1haW5BcnJheS5maWx0ZXIoXG4gICAgICAoZGlzcGF0Y2hlcikgPT4gIWRpc3BhdGNoZXIuaXNTZWxlY3RlZFxuICAgICk/Lmxlbmd0aDtcblxuICAgIHRoaXMuc2VsZWN0ZWRVc2VyLnB1c2goaXRlbSk7XG5cbiAgICB0aGlzLmNoZWNrRmlsdGVyQWN0aXZlVmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVGcm9tU2VsZWN0ZWRVc2VyKGl0ZW06IHVzZXJTZWxlY3RlZCwgaW5keDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZFVzZXIuc3BsaWNlKGluZHgsIDEpO1xuICAgIGNvbnN0IGlkID0gaXRlbS5pZDtcbiAgICBjb25zdCBtYWluQXJyYXkgPSB0aGlzLnVuc2VsZWN0ZWRVc2VyO1xuXG4gICAgbWFpbkFycmF5LmZvckVhY2goKGRpc3BhdGNoZXIpID0+IHtcbiAgICAgIGlmIChkaXNwYXRjaGVyLmlkID09PSBpZCkge1xuICAgICAgICBkaXNwYXRjaGVyLmlzU2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMudW5zZWxlY3RlZFZpc2libGVDb3VudCA9IG1haW5BcnJheS5maWx0ZXIoXG4gICAgICAoZGlzcGF0Y2hlcikgPT4gIWRpc3BhdGNoZXIuaXNTZWxlY3RlZFxuICAgICk/Lmxlbmd0aDtcblxuICAgIHRoaXMuY2hlY2tGaWx0ZXJBY3RpdmVWYWx1ZSgpO1xuICB9XG5cbiAgcHVibGljIGNoZWNrRmlsdGVyQWN0aXZlVmFsdWUoKTogdm9pZCB7XG4gICAgY29uc3QgZmlsdGVyQ2hlY2sgPSBGaWx0ZXJIZWxwZXIuY2hlY2tGaWx0ZXJBY3RpdmVWYWx1ZShcbiAgICAgIHRoaXMuc2VsZWN0ZWRVc2VyLFxuICAgICAgdGhpcy5maWx0ZXJBY3RpdmVBcnJheSxcbiAgICAgIHRoaXMuaXNCdXR0b25BdmFpbGFibGVcbiAgICApO1xuXG4gICAgdGhpcy5pc0J1dHRvbkF2YWlsYWJsZSA9IGZpbHRlckNoZWNrLmlzQnV0dG9uQXZhaWxhYmxlO1xuICB9XG5cbiAgcHJpdmF0ZSB3YXRjaFNlYXJjaEZvcm1WYWx1ZUNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2hGb3JtLnZhbHVlQ2hhbmdlc1xuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgoY2hhbmdlcykgPT4ge1xuICAgICAgICBpZiAoY2hhbmdlcy5zZWFyY2gpIHtcbiAgICAgICAgICBjb25zdCBpbnB1dFZhbHVlID0gY2hhbmdlcy5zZWFyY2gudG9Mb3dlckNhc2UoKTtcbiAgICAgICAgICB0aGlzLnNlYXJjaElucHV0VmFsdWUgPSBpbnB1dFZhbHVlO1xuXG4gICAgICAgICAgdGhpcy51bnNlbGVjdGVkVXNlci5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBpdGVtLmhpZGRlbiA9ICFpdGVtLm5hbWUhLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoaW5wdXRWYWx1ZSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy51bnNlbGVjdGVkVXNlci5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBpdGVtLmhpZGRlbiA9IGZhbHNlO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzb3J0SXRlbXMoKTogdm9pZCB7XG4gICAgY29uc3Qgc29ydFJlc3VsdCA9IEZpbHRlckhlbHBlci5zb3J0SXRlbXNDb3VudChcbiAgICAgIHRoaXMudW5zZWxlY3RlZFVzZXIsXG4gICAgICB0aGlzLnNlbGVjdGVkVXNlcixcbiAgICAgIHRoaXMuaXNBc2NlbmRpbmdTb3J0T3JkZXJcbiAgICApO1xuXG4gICAgdGhpcy51bnNlbGVjdGVkVXNlciA9IHNvcnRSZXN1bHQuc29ydGVkRmlsdGVyQXJyYXk7XG4gICAgdGhpcy5zZWxlY3RlZFVzZXIgPSBzb3J0UmVzdWx0LnNvcnRlZFNlbGVjdGVkRmlsdGVyQXJyYXk7XG4gICAgdGhpcy5pc0FzY2VuZGluZ1NvcnRPcmRlciA9IHNvcnRSZXN1bHQuaXNBc2NlbmRpbmdTb3J0T3JkZXI7XG4gIH1cblxuICBwdWJsaWMgZ2V0U3ZnUGF0aChwcm9wZXJ0eU5hbWU6IGtleW9mIHR5cGVvZiBDYUZpbHRlcnNTdmdSb3V0ZXMpOiBzdHJpbmcge1xuICAgIHJldHVybiBGaWx0ZXJIZWxwZXIuZ2V0U3ZnUGF0aChwcm9wZXJ0eU5hbWUpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyXG4gICpuZ0lmPVwiXG4gICAgdHlwZSA9PT0gJ2Rpc3BhdGNoZXJGaWx0ZXInIHx8XG4gICAgdHlwZSA9PT0gJ2RyaXZlckZpbHRlcicgfHxcbiAgICB0eXBlID09PSAnZnVlbFN0b3BGaWx0ZXInIHx8XG4gICAgdHlwZSA9PT0gJ2Jyb2tlckZpbHRlcidcbiAgXCJcbj5cbiAgPGRpdlxuICAgIGNsYXNzPVwic2VhcmNoLWlucHV0LWhlYWRlclwiXG4gICAgW2NsYXNzLmFjdGl2ZVNlYXJjaF09XCJpc1NlYXJjaEV4cGFuZGVkXCJcbiAgICBbY2xhc3MuaW5hY3RpdmVTZWFyY2hdPVwiIWlzU2VhcmNoRXhwYW5kZWRcIlxuICAgIFtmb3JtR3JvdXBdPVwic2VhcmNoRm9ybVwiXG4gID5cbiAgICA8YXBwLWNhLWlucHV0XG4gICAgICBjbGFzcz1cImlucHV0LWZvcm0taG9sZGVyXCJcbiAgICAgIGZvcm1Db250cm9sTmFtZT1cInNlYXJjaFwiXG4gICAgICBbaW5wdXRDb25maWddPVwiZGlzcGF0Y2hlclNlYXJjaFwiXG4gICAgPjwvYXBwLWNhLWlucHV0PlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIGNsYXNzPVwic2VsZWN0ZWQtZGlzcGF0Y2hlci1ob2xkZXIgZC1mbGV4IGp1c3RpZnktY29udGVudC1zdGFydCBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiXG4gID5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdGb3I9XCJcbiAgICAgICAgbGV0IGl0ZW0gb2Ygc2VsZWN0ZWRVc2VyO1xuICAgICAgICBsZXQgaW5keCA9IGluZGV4O1xuICAgICAgICB0cmFja0J5OiB0cmFja0J5SWRlbnRpdHlcbiAgICAgIFwiXG4gICAgPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cImRpc3BhdGNoZXItbWFpbi1ob2xkZXIgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCJcbiAgICAgICAgW0Bpbk91dEFuaW1hdGlvbl09XCInaW4nXCJcbiAgICAgICAgW0BzaG93QW5pbWF0aW9uXT1cIiEhaXNGaWx0ZXJBY3RpdmVcIlxuICAgICAgICAoY2xpY2spPVwicmVtb3ZlRnJvbVNlbGVjdGVkVXNlcihpdGVtLCBpbmR4KVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdJZj1cInR5cGUgPT09ICdkaXNwYXRjaGVyRmlsdGVyJyB8fCB0eXBlID09PSAnZHJpdmVyRmlsdGVyJ1wiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGlzcGF0Y2hlci1wcm9maWxlLWltZyBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uYXZhdGFyOyBlbHNlIGF2YXRhclRlbXBsYXRlXCI+XG4gICAgICAgICAgICAgIDxhcHAtY2EtcHJvZmlsZS1pbWFnZVxuICAgICAgICAgICAgICAgIFtpbmR4XT1cImluZHhcIlxuICAgICAgICAgICAgICAgIFt0ZXh0U2hvcnROYW1lXT1cIml0ZW0ubmFtZVwiXG4gICAgICAgICAgICAgICAgW3NpemVdPVwiJ3NtYWxsJ1wiXG4gICAgICAgICAgICAgID48L2FwcC1jYS1wcm9maWxlLWltYWdlPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjYXZhdGFyVGVtcGxhdGU+XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cImRpc3BhdGNoZXJfYXZhdGFyXCJcbiAgICAgICAgICAgICAgICBzdHlsZS5iYWNrZ3JvdW5kLWltYWdlPVwidXJsKCd7eyBpdGVtLmF2YXRhciB9fScpXCJcbiAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInNlbGVjdGVkLWRpc3BhdGNoZXItZnJhbWUgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiXG4gICAgICAgICAgW2NsYXNzLmRpc3BhdGNoZXItZnJhbWUtbm8taWNvbl09XCJcbiAgICAgICAgICAgIHR5cGUgIT09ICdkaXNwYXRjaGVyRmlsdGVyJyAmJiB0eXBlICE9PSAnZHJpdmVyRmlsdGVyJ1xuICAgICAgICAgIFwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZWN0ZWQtbmFtZS10ZXh0IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxzcGFuPiB7eyBpdGVtLm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0/LmNvdW50OyBlbHNlIG5vQ291bnRcIj5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgIGNsYXNzPVwiY291bnQtaG9sZGVyIGQtaW5saW5lLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgYWN0aXZlQ291bnRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7eyBpdGVtLmNvdW50IH19XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI25vQ291bnQ+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uY291bnQ7IGVsc2Ugbm9Db3VudGVyXCI+XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNlbGVjdGVkLWljb24gZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzdmctaWNvbiBbc3JjXT1cImdldFN2Z1BhdGgoJ2ljb25Db25maXJtJylcIj48L3N2Zy1pY29uPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNub0NvdW50ZXI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb3VudGVyLWhvbGRlciBhY3RpdmVDb3VudGVyXCI+MjwvZGl2PlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIChjbGljayk9XCJyZW1vdmVGcm9tU2VsZWN0ZWRVc2VyKGl0ZW0sIGluZHgpXCJcbiAgICAgICAgICAgIGNsYXNzPVwiaWNvbi1kZWxldGUgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgICAgIFtjbGFzcy5jb3VudGVyTWFyZ2luXT1cIml0ZW0uY291bnRcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpY29uLWRlbGV0ZS1ob2xkXCI+PC9kaXY+XG4gICAgICAgICAgICA8c3ZnLWljb24gW3NyY109XCJnZXRTdmdQYXRoKCdyZW1vdmVTZWxlY3RlZFZhbHVlJylcIj48L3N2Zy1pY29uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZWxlY3RlZFVzZXIubGVuZ3RoID4gMFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1maWx0ZXIgYm9yZGVyLXRocmlyZC1tYXJnaW5cIj48L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICBjbGFzcz1cImZpbHRlci1kaXNwYXRjaGVyLWhvbGRlciBkLWZsZXgganVzdGlmeS1jb250ZW50LXN0YXJ0IGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCJcbiAgPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICpuZ0Zvcj1cIlxuICAgICAgICBsZXQgaXRlbSBvZiB1bnNlbGVjdGVkVXNlcjtcbiAgICAgICAgbGV0IGluZHggPSBpbmRleDtcbiAgICAgICAgdHJhY2tCeTogdHJhY2tCeUlkZW50aXR5XG4gICAgICBcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJkaXNwYXRjaGVyLWZyYW1lLWhvbGRlciBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5oaWRkZW4gJiYgIWl0ZW0uaXNTZWxlY3RlZFwiPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIFtAaW5PdXRBbmltYXRpb25dPVwiJ2luJ1wiXG4gICAgICAgICAgICBbQHNob3dBbmltYXRpb25dPVwiISFpc0ZpbHRlckFjdGl2ZVwiXG4gICAgICAgICAgICAoY2xpY2spPVwiYWRkVG9TZWxlY3RlZFVzZXIoaXRlbSwgaW5keClcIlxuICAgICAgICAgICAgY2xhc3M9XCJkaXNwYXRjaGVyLW1haW4taG9sZGVyIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlclwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAqbmdJZj1cInR5cGUgPT09ICdkaXNwYXRjaGVyRmlsdGVyJyB8fCB0eXBlID09PSAnZHJpdmVyRmlsdGVyJ1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkaXNwYXRjaGVyLXByb2ZpbGUtaW1nIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWl0ZW0uYXZhdGFyOyBlbHNlIGF2YXRhclRlbXBsYXRlXCI+XG4gICAgICAgICAgICAgICAgICA8YXBwLWNhLXByb2ZpbGUtaW1hZ2VcbiAgICAgICAgICAgICAgICAgICAgW2luZHhdPVwiaW5keFwiXG4gICAgICAgICAgICAgICAgICAgIFt0ZXh0U2hvcnROYW1lXT1cIml0ZW0ubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIFtzaXplXT1cIidzbWFsbCdcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPC9hcHAtY2EtcHJvZmlsZS1pbWFnZT5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjYXZhdGFyVGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZGlzcGF0Y2hlcl9hdmF0YXJcIlxuICAgICAgICAgICAgICAgICAgICBzdHlsZS5iYWNrZ3JvdW5kLWltYWdlPVwidXJsKCd7eyBpdGVtLmF2YXRhciB9fScpXCJcbiAgICAgICAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cImRpc3BhdGNoZXItZnJhbWUgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiXG4gICAgICAgICAgICAgIFtjbGFzcy5kaXNwYXRjaGVyLWZyYW1lLW5vLWljb25dPVwiXG4gICAgICAgICAgICAgICAgdHlwZSAhPT0gJ2Rpc3BhdGNoZXJGaWx0ZXInICYmIHR5cGUgIT09ICdkcml2ZXJGaWx0ZXInXG4gICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3RlZC1uYW1lLXRleHQgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxzcGFuPiB7eyBpdGVtLm5hbWUgfX0gPC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbT8uY291bnRcIj5cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjb3VudC1ob2xkZXIgZC1pbmxpbmUtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3sgaXRlbS5jb3VudCB9fVxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJ1bnNlbGVjdGVkVXNlcj8ubGVuZ3RoICE9PSBzZWxlY3RlZFVzZXI/Lmxlbmd0aFwiPlxuICAgIDxkaXYgY2xhc3M9XCJib3JkZXItZmlsdGVyXCI+PC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
225
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtZGlzcGF0Y2hlci1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtZmlsdGVycy9jb21wb25lbnRzL2NhLWRpc3BhdGNoZXItZmlsdGVyL2NhLWRpc3BhdGNoZXItZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLWZpbHRlcnMvY29tcG9uZW50cy9jYS1kaXNwYXRjaGVyLWZpbHRlci9jYS1kaXNwYXRjaGVyLWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFHTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxtQkFBbUIsR0FHcEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUxQyxVQUFVO0FBQ1YsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFeEQsYUFBYTtBQUNiLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFdEUsUUFBUTtBQUNSLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQU8z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QkFDVixZQUFZLCtQQUNaLG1CQUFtQixtbEJBQ25CLGdCQUFnQiw4QkFDaEIsb0JBQW9CO2dCQUNwQixhQUFhO2dCQUNiLGdCQUFnQixzUkFDaEIsdUJBQXVCLG9MQUViO1lBQ1YsY0FBYyxDQUFDLGdCQUFnQixDQUFDO1lBQ2hDLGFBQWEsQ0FBQyxlQUFlLENBQUM7U0FDL0I7OzRGQUVVLDJCQUEyQjtrQkFyQnZDLFNBQVM7K0JBQ0UsMEJBQTBCLGNBQ3hCLElBQUksaUJBR0QsaUJBQWlCLENBQUMsSUFBSSxXQUM1Qjt3QkFDUCxVQUFVO3dCQUNWLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixnQkFBZ0I7d0JBQ2hCLG9CQUFvQjt3QkFDcEIsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLHVCQUF1QjtxQkFDMUIsY0FDYTt3QkFDVixjQUFjLENBQUMsZ0JBQWdCLENBQUM7d0JBQ2hDLGFBQWEsQ0FBQyxlQUFlLENBQUM7cUJBQy9CO3VGQUdRLElBQUk7c0JBQVosS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPbkRlc3Ryb3ksXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gIFVudHlwZWRGb3JtR3JvdXAsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuXG4vLyBtb2R1bGVzXG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQW5ndWxhclN2Z0ljb25Nb2R1bGUgfSBmcm9tICdhbmd1bGFyLXN2Zy1pY29uJztcblxuLy8gYW5pbWF0aW9uc1xuaW1wb3J0IHsgaW5PdXRBbmltYXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9hbmltYXRpb25zL2luLW91dC5hbmltYXRpb24nO1xuaW1wb3J0IHsgc2hvd0FuaW1hdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2FuaW1hdGlvbnMvc2hvdy5hbmltYXRpb24nO1xuXG4vLyBlbnVtc1xuaW1wb3J0IHsgTG9hZFN0YXR1c0VudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9lbnVtcy9sb2FkLXN0YXR1cy5lbnVtJztcbmltcG9ydCB7IFRvb2xiYXJGaWx0ZXJTdHJpbmdFbnVtIH0gZnJvbSAnLi4vLi4vLi4vY2EtbWFwL2VudW1zL3Rvb2xiYXItZmlsdGVyLXN0cmluZy5lbnVtJztcblxuLy8gbW9kZWxzXG5pbXBvcnQgeyBBcnJheVN0YXR1cyB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9hcnJheS1zdGF0dXMubW9kZWwnO1xuaW1wb3J0IHsgZmlsdGVyT3V0cHV0IH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2ZpbHRlci1vdXRwdXQubW9kZWwnO1xuaW1wb3J0IHsgZmlsdGVyT3V0cHV0V2l0aFBhcmFtcyB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9maWx0ZXItb3V0cHV0LXBhcmFtcy5tb2RlbCc7XG5cbi8vIGNvbXBvbmVudHNcbmltcG9ydCB7IENhSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jYS1pbnB1dC9jYS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FQcm9maWxlSW1hZ2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jYS1wcm9maWxlLWltYWdlL2NhLXByb2ZpbGUtaW1hZ2UuY29tcG9uZW50JztcblxuLy8gdXRpbHNcbmltcG9ydCB7IENhRmlsdGVyc1N2Z1JvdXRlcyB9IGZyb20gJy4uLy4uL3V0aWxzL3N2Zy1yb3V0ZXMvY2EtZmlsdGVycy1zdmctcm91dGVzJztcblxuLy8gaGVscGVyc1xuaW1wb3J0IHsgRmlsdGVySGVscGVyIH0gZnJvbSAnLi4vLi4vdXRpbHMvaGVscGVycy9maWx0ZXIuaGVscGVyJztcblxuLy8gY29uZmlnc1xuaW1wb3J0IHsgSUNhSW5wdXQgfSBmcm9tICcuLi8uLi8uLi9jYS1pbnB1dC9jb25maWcvY2EtaW5wdXQuY29uZmlnJztcbmltcG9ydCB7IENhRGlzcGF0Y2hlckZpbHRlckNvbmZpZyB9IGZyb20gJy4vY29uZmlnL2NhLWRpc3BhdGNoZXItZmlsdGVyLmNvbmZpZyc7XG5pbXBvcnQgeyB1c2VyU2VsZWN0ZWQgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvdXNlci1zZWxlY3RlZC5tb2RlbCc7XG5pbXBvcnQgeyBDYURyaXZlckZpbHRlckNvbmZpZyB9IGZyb20gJy4vY29uZmlnL2NhLWRyaXZlci1maWx0ZXIuY29uZmlnJztcbmltcG9ydCB7IENhRnVlbFN0b3BGaWx0ZXJDb25maWcgfSBmcm9tICcuL2NvbmZpZy9jYS1mdWVsLXN0b3AtZmlsdGVyLmNvbmZpZyc7XG5pbXBvcnQgeyBDYUJyb2tlckZpbHRlckNvbmZpZyB9IGZyb20gJy4vY29uZmlnL2NhLWJyb2tlci1maWx0ZXIuY29uZmlnJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWNhLWRpc3BhdGNoZXItZmlsdGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhLWRpc3BhdGNoZXItZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2EtZGlzcGF0Y2hlci1maWx0ZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaW1wb3J0czogW1xuICAgIC8vIG1vZHVsZXNcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBIdHRwQ2xpZW50TW9kdWxlLFxuICAgIEFuZ3VsYXJTdmdJY29uTW9kdWxlLFxuICAgIC8vIGNvbXBvbmVudHNcbiAgICBDYUlucHV0Q29tcG9uZW50LFxuICAgIENhUHJvZmlsZUltYWdlQ29tcG9uZW50XG5dLFxuICBhbmltYXRpb25zOiBbXG4gICAgaW5PdXRBbmltYXRpb24oJ2luT3V0QW5pbWF0aW9uJyksXG4gICAgc2hvd0FuaW1hdGlvbignc2hvd0FuaW1hdGlvbicpLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDYURpc3BhdGNoZXJGaWx0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHR5cGUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGlzRmlsdGVyQWN0aXZlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGZpbHRlclRpdGxlITogc3RyaW5nO1xuICBASW5wdXQoKSBoYXNMZWZ0U2lkZUljb246IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgdG9Eb1N1YlR5cGUhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHVuc2VsZWN0ZWRVc2VyITogQXJyYXlTdGF0dXNbXTtcbiAgQElucHV0KCkgaXNTZWFyY2hFeHBhbmRlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHB1YmxpYyBsb2FkU3RhdHVzRW51bSA9IExvYWRTdGF0dXNFbnVtO1xuICBwdWJsaWMgc2VhcmNoRm9ybSE6IFVudHlwZWRGb3JtR3JvdXA7XG4gIHB1YmxpYyBzZWFyY2hJbnB1dFZhbHVlITogc3RyaW5nO1xuXG4gIHB1YmxpYyB1bnNlbGVjdGVkVmlzaWJsZUNvdW50OiBudW1iZXIgPSAwO1xuICBwdWJsaWMgY2FGaWx0ZXJzU3ZnUm91dGVzOiBDYUZpbHRlcnNTdmdSb3V0ZXMgPSBDYUZpbHRlcnNTdmdSb3V0ZXM7XG5cbiAgcHVibGljIHNlbGVjdGVkVXNlcjogdXNlclNlbGVjdGVkW10gPSBbXTtcbiAgcHVibGljIGZpbHRlckFjdGl2ZUFycmF5OiBBcnJheVN0YXR1c1tdID0gW107XG4gIHB1YmxpYyBpc0FzY2VuZGluZ1NvcnRPcmRlcjogYm9vbGVhbiA9IHRydWU7XG4gIHB1YmxpYyBpc0J1dHRvbkF2YWlsYWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgdG90YWxGaWx0ZXJzTnVtOiBudW1iZXIgPSAwO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZm9ybUJ1aWxkZXI6IFVudHlwZWRGb3JtQnVpbGRlcikge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNyZWF0ZUZvcm0oKTtcblxuICAgIHRoaXMud2F0Y2hTZWFyY2hGb3JtVmFsdWVDaGFuZ2VzKCk7XG4gIH1cblxuICBnZXQgZGlzcGF0Y2hlclNlYXJjaCgpOiBJQ2FJbnB1dCB7XG4gICAgc3dpdGNoICh0aGlzLnR5cGUpIHtcbiAgICAgIGNhc2UgVG9vbGJhckZpbHRlclN0cmluZ0VudW0uRElTUEFUQ0hFUl9GSUxURVI6XG4gICAgICAgIHJldHVybiBDYURpc3BhdGNoZXJGaWx0ZXJDb25maWcuZ2V0RGlzcGF0Y2hlclNlYXJjaCgpO1xuXG4gICAgICBjYXNlIFRvb2xiYXJGaWx0ZXJTdHJpbmdFbnVtLkRSSVZFUl9GSUxURVI6XG4gICAgICAgIHJldHVybiBDYURyaXZlckZpbHRlckNvbmZpZy5nZXREcml2ZXJTZWFyY2goKTtcblxuICAgICAgY2FzZSBUb29sYmFyRmlsdGVyU3RyaW5nRW51bS5GVUVMX1NUT1BfRklMVEVSOlxuICAgICAgICByZXR1cm4gQ2FGdWVsU3RvcEZpbHRlckNvbmZpZy5nZXRGdWVsU3RvcFNlYXJjaCgpO1xuXG4gICAgICBjYXNlIFRvb2xiYXJGaWx0ZXJTdHJpbmdFbnVtLkJST0tFUl9GSUxURVI6XG4gICAgICAgIHJldHVybiBDYUJyb2tlckZpbHRlckNvbmZpZy5nZXRCcm9rZXJTZWFyY2goKTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmtub3duIGZpbHRlciB0eXBlJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldEluaXRpYWxzKG5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIEZpbHRlckhlbHBlci5nZXRJbml0aWFscyhuYW1lKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkZpbHRlckNsb3NlKCk6IHZvaWQge1xuICAgIEZpbHRlckhlbHBlci5oYW5kbGVGaWx0ZXJDbG9zZShcbiAgICAgIHRoaXMudW5zZWxlY3RlZFVzZXIsXG4gICAgICB0aGlzLnNlbGVjdGVkVXNlcixcbiAgICAgIHRoaXMucmVtb3ZlRnJvbVNlbGVjdGVkVXNlci5iaW5kKHRoaXMpLFxuICAgICAgdGhpcy5hZGRUb1NlbGVjdGVkVXNlci5iaW5kKHRoaXMpXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRGaWx0ZXJWYWx1ZShcbiAgICAkZXZlbnQ6IEV2ZW50XG4gICk6IGZpbHRlck91dHB1dCB8IGZpbHRlck91dHB1dFdpdGhQYXJhbXMgfCB1bmRlZmluZWQge1xuICAgIHRoaXMuZmlsdGVyQWN0aXZlQXJyYXkgPSBbLi4udGhpcy5zZWxlY3RlZFVzZXJdO1xuICAgIGNvbnN0IHNlbGVjdGVkVXNlcnNJZEFycmF5OiBudW1iZXJbXSA9IFtdO1xuICAgIHRoaXMudG90YWxGaWx0ZXJzTnVtID0gdGhpcy5maWx0ZXJBY3RpdmVBcnJheS5sZW5ndGg7XG5cbiAgICBsZXQgbWFpbkFycmF5OiBBcnJheVN0YXR1c1tdID0gW107XG4gICAgbGV0IHF1ZXJ5UGFyYW1zID0ge307XG4gICAgbGV0IHN1YlR5cGUgPSBUb29sYmFyRmlsdGVyU3RyaW5nRW51bS5FTVBUWV9TVFJJTkdfUExBQ0VIT0xERVIudG9TdHJpbmcoKTtcblxuICAgIG1haW5BcnJheSA9IHRoaXMudW5zZWxlY3RlZFVzZXI7XG5cbiAgICBtYWluQXJyYXkuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgaWYgKGl0ZW0uaXNTZWxlY3RlZCkge1xuICAgICAgICBpdGVtWydjdXJyZW50U2V0J10gPSB0cnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaXRlbVsnY3VycmVudFNldCddID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLmZpbHRlckFjdGl2ZUFycmF5LmZvckVhY2goKGRhdGEpID0+IHtcbiAgICAgIHNlbGVjdGVkVXNlcnNJZEFycmF5LnB1c2goZGF0YS5pZCEpO1xuICAgIH0pO1xuXG4gICAgaWYgKCFzZWxlY3RlZFVzZXJzSWRBcnJheS5sZW5ndGgpIHtcbiAgICAgIHRoaXMuY2xlYXJBbGwoJGV2ZW50KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBxdWVyeVBhcmFtcyA9IHNlbGVjdGVkVXNlcnNJZEFycmF5O1xuICAgIHN1YlR5cGUgPVxuICAgICAgdGhpcy50b0RvU3ViVHlwZSA/P1xuICAgICAgVG9vbGJhckZpbHRlclN0cmluZ0VudW0uRU1QVFlfU1RSSU5HX1BMQUNFSE9MREVSLnRvU3RyaW5nKCk7XG5cbiAgICBjb25zdCBhY3Rpb24gPSAnU2V0JztcbiAgICBjb25zdCBkYXRhID0ge1xuICAgICAgZmlsdGVyVHlwZTogdGhpcy50eXBlLFxuICAgICAgYWN0aW9uLFxuICAgICAgcXVlcnlQYXJhbXMsXG4gICAgICBzdWJUeXBlLFxuICAgIH07XG5cbiAgICByZXR1cm4gZGF0YTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhckFsbChldmVudD86IEV2ZW50KTogZmlsdGVyT3V0cHV0IHwgZmlsdGVyT3V0cHV0V2l0aFBhcmFtcyB7XG4gICAgaWYgKGV2ZW50KSBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgIHRoaXMuc2VsZWN0ZWRVc2VyID0gW107XG4gICAgdGhpcy5maWx0ZXJBY3RpdmVBcnJheSA9IFtdO1xuICAgIHRoaXMudG90YWxGaWx0ZXJzTnVtID0gMDtcblxuICAgIHRoaXMudW5zZWxlY3RlZFVzZXIuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgaXRlbS5pc1NlbGVjdGVkID0gZmFsc2U7XG4gICAgICBpdGVtLmN1cnJlbnRTZXQgPSBmYWxzZTtcbiAgICB9KTtcblxuICAgIGNvbnN0IGFjdGlvbiA9ICdDbGVhcic7XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGFjdGlvbixcbiAgICAgIHR5cGU6IHRoaXMudHlwZSxcbiAgICAgIGZpbHRlclR5cGU6IHRoaXMudHlwZSxcbiAgICB9O1xuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgcHVibGljIHRyYWNrQnlJZGVudGl0eShpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gaW5kZXg7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZvcm0oKTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2hGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICBzZWFyY2g6IG51bGwsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgYWRkVG9TZWxlY3RlZFVzZXIoaXRlbTogdXNlclNlbGVjdGVkLCBpbmR4OiBudW1iZXIpIHtcbiAgICBjb25zdCBtYWluQXJyYXkgPSB0aGlzLnVuc2VsZWN0ZWRVc2VyO1xuXG4gICAgbWFpbkFycmF5W2luZHhdLmlzU2VsZWN0ZWQgPSB0cnVlO1xuXG4gICAgdGhpcy51bnNlbGVjdGVkVmlzaWJsZUNvdW50ID0gbWFpbkFycmF5LmZpbHRlcihcbiAgICAgIChkaXNwYXRjaGVyKSA9PiAhZGlzcGF0Y2hlci5pc1NlbGVjdGVkXG4gICAgKT8ubGVuZ3RoO1xuXG4gICAgdGhpcy5zZWxlY3RlZFVzZXIucHVzaChpdGVtKTtcblxuICAgIHRoaXMuY2hlY2tGaWx0ZXJBY3RpdmVWYWx1ZSgpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUZyb21TZWxlY3RlZFVzZXIoaXRlbTogdXNlclNlbGVjdGVkLCBpbmR4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkVXNlci5zcGxpY2UoaW5keCwgMSk7XG4gICAgY29uc3QgaWQgPSBpdGVtLmlkO1xuICAgIGNvbnN0IG1haW5BcnJheSA9IHRoaXMudW5zZWxlY3RlZFVzZXI7XG5cbiAgICBtYWluQXJyYXkuZm9yRWFjaCgoZGlzcGF0Y2hlcikgPT4ge1xuICAgICAgaWYgKGRpc3BhdGNoZXIuaWQgPT09IGlkKSB7XG4gICAgICAgIGRpc3BhdGNoZXIuaXNTZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy51bnNlbGVjdGVkVmlzaWJsZUNvdW50ID0gbWFpbkFycmF5LmZpbHRlcihcbiAgICAgIChkaXNwYXRjaGVyKSA9PiAhZGlzcGF0Y2hlci5pc1NlbGVjdGVkXG4gICAgKT8ubGVuZ3RoO1xuXG4gICAgdGhpcy5jaGVja0ZpbHRlckFjdGl2ZVZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgY2hlY2tGaWx0ZXJBY3RpdmVWYWx1ZSgpOiB2b2lkIHtcbiAgICBjb25zdCBmaWx0ZXJDaGVjayA9IEZpbHRlckhlbHBlci5jaGVja0ZpbHRlckFjdGl2ZVZhbHVlKFxuICAgICAgdGhpcy5zZWxlY3RlZFVzZXIsXG4gICAgICB0aGlzLmZpbHRlckFjdGl2ZUFycmF5LFxuICAgICAgdGhpcy5pc0J1dHRvbkF2YWlsYWJsZVxuICAgICk7XG5cbiAgICB0aGlzLmlzQnV0dG9uQXZhaWxhYmxlID0gZmlsdGVyQ2hlY2suaXNCdXR0b25BdmFpbGFibGU7XG4gIH1cblxuICBwcml2YXRlIHdhdGNoU2VhcmNoRm9ybVZhbHVlQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLnNlYXJjaEZvcm0udmFsdWVDaGFuZ2VzXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKChjaGFuZ2VzKSA9PiB7XG4gICAgICAgIGlmIChjaGFuZ2VzLnNlYXJjaCkge1xuICAgICAgICAgIGNvbnN0IGlucHV0VmFsdWUgPSBjaGFuZ2VzLnNlYXJjaC50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgIHRoaXMuc2VhcmNoSW5wdXRWYWx1ZSA9IGlucHV0VmFsdWU7XG5cbiAgICAgICAgICB0aGlzLnVuc2VsZWN0ZWRVc2VyLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgIGl0ZW0uaGlkZGVuID0gIWl0ZW0ubmFtZSEudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhpbnB1dFZhbHVlKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnVuc2VsZWN0ZWRVc2VyLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgIGl0ZW0uaGlkZGVuID0gZmFsc2U7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNvcnRJdGVtcygpOiB2b2lkIHtcbiAgICBjb25zdCBzb3J0UmVzdWx0ID0gRmlsdGVySGVscGVyLnNvcnRJdGVtc0NvdW50KFxuICAgICAgdGhpcy51bnNlbGVjdGVkVXNlcixcbiAgICAgIHRoaXMuc2VsZWN0ZWRVc2VyLFxuICAgICAgdGhpcy5pc0FzY2VuZGluZ1NvcnRPcmRlclxuICAgICk7XG5cbiAgICB0aGlzLnVuc2VsZWN0ZWRVc2VyID0gc29ydFJlc3VsdC5zb3J0ZWRGaWx0ZXJBcnJheTtcbiAgICB0aGlzLnNlbGVjdGVkVXNlciA9IHNvcnRSZXN1bHQuc29ydGVkU2VsZWN0ZWRGaWx0ZXJBcnJheTtcbiAgICB0aGlzLmlzQXNjZW5kaW5nU29ydE9yZGVyID0gc29ydFJlc3VsdC5pc0FzY2VuZGluZ1NvcnRPcmRlcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXRTdmdQYXRoKHByb3BlcnR5TmFtZToga2V5b2YgdHlwZW9mIENhRmlsdGVyc1N2Z1JvdXRlcyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIEZpbHRlckhlbHBlci5nZXRTdmdQYXRoKHByb3BlcnR5TmFtZSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXJcbiAgKm5nSWY9XCJcbiAgICB0eXBlID09PSAnZGlzcGF0Y2hlckZpbHRlcicgfHxcbiAgICB0eXBlID09PSAnZHJpdmVyRmlsdGVyJyB8fFxuICAgIHR5cGUgPT09ICdmdWVsU3RvcEZpbHRlcicgfHxcbiAgICB0eXBlID09PSAnYnJva2VyRmlsdGVyJ1xuICBcIlxuPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJzZWFyY2gtaW5wdXQtaGVhZGVyXCJcbiAgICBbY2xhc3MuYWN0aXZlU2VhcmNoXT1cImlzU2VhcmNoRXhwYW5kZWRcIlxuICAgIFtjbGFzcy5pbmFjdGl2ZVNlYXJjaF09XCIhaXNTZWFyY2hFeHBhbmRlZFwiXG4gICAgW2Zvcm1Hcm91cF09XCJzZWFyY2hGb3JtXCJcbiAgPlxuICAgIDxhcHAtY2EtaW5wdXRcbiAgICAgIGNsYXNzPVwiaW5wdXQtZm9ybS1ob2xkZXJcIlxuICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic2VhcmNoXCJcbiAgICAgIFtpbnB1dENvbmZpZ109XCJkaXNwYXRjaGVyU2VhcmNoXCJcbiAgICA+PC9hcHAtY2EtaW5wdXQ+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJzZWxlY3RlZC1kaXNwYXRjaGVyLWhvbGRlciBkLWZsZXgganVzdGlmeS1jb250ZW50LXN0YXJ0IGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCJcbiAgPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICpuZ0Zvcj1cIlxuICAgICAgICBsZXQgaXRlbSBvZiBzZWxlY3RlZFVzZXI7XG4gICAgICAgIGxldCBpbmR4ID0gaW5kZXg7XG4gICAgICAgIHRyYWNrQnk6IHRyYWNrQnlJZGVudGl0eVxuICAgICAgXCJcbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiZGlzcGF0Y2hlci1tYWluLWhvbGRlciBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIlxuICAgICAgICBbQGluT3V0QW5pbWF0aW9uXT1cIidpbidcIlxuICAgICAgICBbQHNob3dBbmltYXRpb25dPVwiISFpc0ZpbHRlckFjdGl2ZVwiXG4gICAgICAgIChjbGljayk9XCJyZW1vdmVGcm9tU2VsZWN0ZWRVc2VyKGl0ZW0sIGluZHgpXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ0lmPVwidHlwZSA9PT0gJ2Rpc3BhdGNoZXJGaWx0ZXInIHx8IHR5cGUgPT09ICdkcml2ZXJGaWx0ZXInXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkaXNwYXRjaGVyLXByb2ZpbGUtaW1nIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5hdmF0YXI7IGVsc2UgYXZhdGFyVGVtcGxhdGVcIj5cbiAgICAgICAgICAgICAgPGFwcC1jYS1wcm9maWxlLWltYWdlXG4gICAgICAgICAgICAgICAgW2luZHhdPVwiaW5keFwiXG4gICAgICAgICAgICAgICAgW3RleHRTaG9ydE5hbWVdPVwiaXRlbS5uYW1lXCJcbiAgICAgICAgICAgICAgICBbc2l6ZV09XCInc21hbGwnXCJcbiAgICAgICAgICAgICAgPjwvYXBwLWNhLXByb2ZpbGUtaW1hZ2U+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNhdmF0YXJUZW1wbGF0ZT5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZGlzcGF0Y2hlcl9hdmF0YXJcIlxuICAgICAgICAgICAgICAgIHN0eWxlLmJhY2tncm91bmQtaW1hZ2U9XCJ1cmwoJ3t7IGl0ZW0uYXZhdGFyIH19JylcIlxuICAgICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwic2VsZWN0ZWQtZGlzcGF0Y2hlci1mcmFtZSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCJcbiAgICAgICAgICBbY2xhc3MuZGlzcGF0Y2hlci1mcmFtZS1uby1pY29uXT1cIlxuICAgICAgICAgICAgdHlwZSAhPT0gJ2Rpc3BhdGNoZXJGaWx0ZXInICYmIHR5cGUgIT09ICdkcml2ZXJGaWx0ZXInXG4gICAgICAgICAgXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3RlZC1uYW1lLXRleHQgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgPHNwYW4+IHt7IGl0ZW0ubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbT8uY291bnQ7IGVsc2Ugbm9Db3VudFwiPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgY2xhc3M9XCJjb3VudC1ob2xkZXIgZC1pbmxpbmUtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBhY3RpdmVDb3VudFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHt7IGl0ZW0uY291bnQgfX1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9Db3VudD5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5jb3VudDsgZWxzZSBub0NvdW50ZXJcIj5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwic2VsZWN0ZWQtaWNvbiBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHN2Zy1pY29uIFtzcmNdPVwiZ2V0U3ZnUGF0aCgnaWNvbkNvbmZpcm0nKVwiPjwvc3ZnLWljb24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI25vQ291bnRlcj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvdW50ZXItaG9sZGVyIGFjdGl2ZUNvdW50ZXJcIj4yPC9kaXY+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZUZyb21TZWxlY3RlZFVzZXIoaXRlbSwgaW5keClcIlxuICAgICAgICAgICAgY2xhc3M9XCJpY29uLWRlbGV0ZSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIlxuICAgICAgICAgICAgW2NsYXNzLmNvdW50ZXJNYXJnaW5dPVwiaXRlbS5jb3VudFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImljb24tZGVsZXRlLWhvbGRcIj48L2Rpdj5cbiAgICAgICAgICAgIDxzdmctaWNvbiBbc3JjXT1cImdldFN2Z1BhdGgoJ3JlbW92ZVNlbGVjdGVkVmFsdWUnKVwiPjwvc3ZnLWljb24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkVXNlci5sZW5ndGggPiAwXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyLWZpbHRlciBib3JkZXItdGhyaXJkLW1hcmdpblwiPjwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIGNsYXNzPVwiZmlsdGVyLWRpc3BhdGNoZXItaG9sZGVyIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtc3RhcnQgYWxpZ24taXRlbXMtc3RhcnQgZmxleC1jb2x1bW5cIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nRm9yPVwiXG4gICAgICAgIGxldCBpdGVtIG9mIHVuc2VsZWN0ZWRVc2VyO1xuICAgICAgICBsZXQgaW5keCA9IGluZGV4O1xuICAgICAgICB0cmFja0J5OiB0cmFja0J5SWRlbnRpdHlcbiAgICAgIFwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cImRpc3BhdGNoZXItZnJhbWUtaG9sZGVyIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmhpZGRlbiAmJiAhaXRlbS5pc1NlbGVjdGVkXCI+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgW0Bpbk91dEFuaW1hdGlvbl09XCInaW4nXCJcbiAgICAgICAgICAgIFtAc2hvd0FuaW1hdGlvbl09XCIhIWlzRmlsdGVyQWN0aXZlXCJcbiAgICAgICAgICAgIChjbGljayk9XCJhZGRUb1NlbGVjdGVkVXNlcihpdGVtLCBpbmR4KVwiXG4gICAgICAgICAgICBjbGFzcz1cImRpc3BhdGNoZXItbWFpbi1ob2xkZXIgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICpuZ0lmPVwidHlwZSA9PT0gJ2Rpc3BhdGNoZXJGaWx0ZXInIHx8IHR5cGUgPT09ICdkcml2ZXJGaWx0ZXInXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRpc3BhdGNoZXItcHJvZmlsZS1pbWcgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5hdmF0YXI7IGVsc2UgYXZhdGFyVGVtcGxhdGVcIj5cbiAgICAgICAgICAgICAgICAgIDxhcHAtY2EtcHJvZmlsZS1pbWFnZVxuICAgICAgICAgICAgICAgICAgICBbaW5keF09XCJpbmR4XCJcbiAgICAgICAgICAgICAgICAgICAgW3RleHRTaG9ydE5hbWVdPVwiaXRlbS5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgW3NpemVdPVwiJ3NtYWxsJ1wiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8L2FwcC1jYS1wcm9maWxlLWltYWdlPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNhdmF0YXJUZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkaXNwYXRjaGVyX2F2YXRhclwiXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlLmJhY2tncm91bmQtaW1hZ2U9XCJ1cmwoJ3t7IGl0ZW0uYXZhdGFyIH19JylcIlxuICAgICAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIGNsYXNzPVwiZGlzcGF0Y2hlci1mcmFtZSBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmRpc3BhdGNoZXItZnJhbWUtbm8taWNvbl09XCJcbiAgICAgICAgICAgICAgICB0eXBlICE9PSAnZGlzcGF0Y2hlckZpbHRlcicgJiYgdHlwZSAhPT0gJ2RyaXZlckZpbHRlcidcbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdGVkLW5hbWUtdGV4dCBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4+IHt7IGl0ZW0ubmFtZSB9fSA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtPy5jb3VudFwiPlxuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImNvdW50LWhvbGRlciBkLWlubGluZS1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7eyBpdGVtLmNvdW50IH19XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInVuc2VsZWN0ZWRVc2VyPy5sZW5ndGggIT09IHNlbGVjdGVkVXNlcj8ubGVuZ3RoXCI+XG4gICAgPGRpdiBjbGFzcz1cImJvcmRlci1maWx0ZXJcIj48L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==