ca-components 0.0.1 → 0.0.3

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 (383) hide show
  1. package/esm2022/assets/json/ca-table.json +59 -0
  2. package/esm2022/assets/json/ta-detail-dropdown.json +80 -0
  3. package/esm2022/lib/animation/in-out.animation.mjs +73 -0
  4. package/esm2022/lib/animations/accordion-animation.mjs +25 -0
  5. package/esm2022/lib/animations/animation.mjs +30 -0
  6. package/esm2022/lib/animations/close-form.animation.mjs +18 -0
  7. package/esm2022/lib/animations/expand-search-button.animation.mjs +17 -0
  8. package/esm2022/lib/animations/show.animation.mjs +20 -0
  9. package/esm2022/lib/animations/tabs-modal.animation.mjs +78 -0
  10. package/esm2022/lib/ca-components.module.mjs +127 -0
  11. package/esm2022/lib/components/ca-app-tooltip-v2/ca-app-tooltip-v2.component.mjs +53 -0
  12. package/esm2022/lib/components/ca-details-dropdown/ca-details-dropdown.component.mjs +116 -0
  13. package/esm2022/lib/components/ca-details-dropdown/models/detail-dropdown.model.mjs +2 -0
  14. package/esm2022/lib/components/ca-details-dropdown/utils/svg-routes/detail-dropdown-svg-routes.mjs +4 -0
  15. package/esm2022/lib/components/ca-dropdown/ca-dropdown.component.mjs +37 -0
  16. package/esm2022/lib/components/ca-filters/ca-filter.component.mjs +165 -0
  17. package/esm2022/lib/components/ca-filters/components/ca-money-filter/ca-money-filter.component.mjs +541 -0
  18. package/esm2022/lib/components/ca-filters/components/ca-money-filter/config/ca-money-filter.config.mjs +75 -0
  19. package/esm2022/lib/components/ca-filters/components/ca-status-filter/ca-status-filter.component.mjs +191 -0
  20. package/esm2022/lib/components/ca-filters/components/ca-time-filter/ca-time-filter.component.mjs +131 -0
  21. package/esm2022/lib/components/ca-filters/utils/constants/status-filter.constants.mjs +19 -0
  22. package/esm2022/lib/components/ca-filters/utils/constants/time-filter.constants.mjs +45 -0
  23. package/esm2022/lib/components/ca-filters/utils/svg-routes/ca-filters-svg-routes.mjs +7 -0
  24. package/esm2022/lib/components/ca-filters/utils/svg-routes/ca-money-filter-svg-routes.mjs +4 -0
  25. package/esm2022/lib/components/ca-input/ca-input.component.mjs +179 -0
  26. package/esm2022/lib/components/ca-input/components/ca-input-clear/ca-input-clear.component.mjs +55 -0
  27. package/esm2022/lib/components/ca-input/components/ca-input-password/ca-input-password.component.mjs +63 -0
  28. package/esm2022/lib/components/ca-input/components/ca-input-placeholder-icon/ca-input-placeholder-icon.component.mjs +52 -0
  29. package/esm2022/lib/components/ca-input/config/ca-input.config.mjs +2 -0
  30. package/esm2022/lib/components/ca-input/models/label-color.model.mjs +2 -0
  31. package/esm2022/lib/components/ca-input/pipes/input-class.pipe.mjs +89 -0
  32. package/esm2022/lib/components/ca-input/pipes/input-clear-class.pipe.mjs +76 -0
  33. package/esm2022/lib/components/ca-input/pipes/input-container-class.pipe.mjs +57 -0
  34. package/esm2022/lib/components/ca-input/pipes/input-error.pipe.mjs +85 -0
  35. package/esm2022/lib/components/ca-input/pipes/input-password-eye-class.pipe.mjs +37 -0
  36. package/esm2022/lib/components/ca-input/pipes/input-placeholder-icon.class.pipe.mjs +57 -0
  37. package/esm2022/lib/components/ca-input/pipes/input-type.pipe.mjs +25 -0
  38. package/esm2022/lib/components/ca-input/pipes/label-class.pipe.mjs +32 -0
  39. package/esm2022/lib/components/ca-input/pipes/show-clear.pipe.mjs +22 -0
  40. package/esm2022/lib/components/ca-input/pipes/show-invalid-danger-mark.pipe.mjs +27 -0
  41. package/esm2022/lib/components/ca-input/pipes/show-valid-check.pipe.mjs +27 -0
  42. package/esm2022/lib/components/ca-input/services/ca-input-state.service.mjs +92 -0
  43. package/esm2022/lib/components/ca-input/utils/input-svg-routes.mjs +9 -0
  44. package/esm2022/lib/components/ca-input-radiobuttons/ca-input-radiobuttons.component.mjs +43 -0
  45. package/esm2022/lib/components/ca-map/ca-map.component.mjs +329 -0
  46. package/esm2022/lib/components/ca-map/enums/google-map.enum.mjs +6 -0
  47. package/esm2022/lib/components/ca-map/enums/toolbar-filter-string.enum.mjs +40 -0
  48. package/esm2022/lib/components/ca-map/models/map.model.mjs +2 -0
  49. package/esm2022/lib/components/ca-map/utils/helpers/map.helper.mjs +87 -0
  50. package/esm2022/lib/components/ca-map/utils/map-svg-routes/map-svg-routes.mjs +5 -0
  51. package/esm2022/lib/components/ca-map-dropdown/ca-map-dropdown.component.mjs +57 -0
  52. package/esm2022/lib/components/ca-map-dropdown/utils/svg-routes/map-dropdown-svg-routes.mjs +19 -0
  53. package/esm2022/lib/components/ca-note/ca-note.component.mjs +238 -0
  54. package/esm2022/lib/components/ca-note/utils/helper/copy-paste.helper.mjs +8 -0
  55. package/esm2022/lib/components/ca-note/utils/svg-routes/note-svg-routes.mjs +6 -0
  56. package/esm2022/lib/components/ca-note-container/ca-note-container.component.mjs +153 -0
  57. package/esm2022/lib/components/ca-note-container/enums/note-default-string.enum.mjs +11 -0
  58. package/esm2022/lib/components/ca-note-container/enums/note-selected-color.enum.mjs +6 -0
  59. package/esm2022/lib/components/ca-note-container/models/note-colors.model.mjs +2 -0
  60. package/esm2022/lib/components/ca-note-container/utils/constants/note-config.constant.mjs +61 -0
  61. package/esm2022/lib/components/ca-note-container/utils/svg-routes/note-container-svg-routes.mjs +9 -0
  62. package/esm2022/lib/components/ca-payroll-list-summary-overview/ca-payroll-list-summary-overview.component.mjs +53 -0
  63. package/esm2022/lib/components/ca-payroll-list-summary-overview/utils/svg-routes/payroll-list-summary-svg-routes.mjs +5 -0
  64. package/esm2022/lib/components/ca-payroll-list-summary-overview-table/ca-payroll-list-summary-overview-table.component.mjs +26 -0
  65. package/esm2022/lib/components/ca-pickup-delivery-block/ca-pickup-delivery-block.component.mjs +44 -0
  66. package/esm2022/lib/components/ca-pickup-delivery-block/components/ca-load/ca-load.component.mjs +93 -0
  67. package/esm2022/lib/components/ca-pickup-delivery-block/components/ca-load/components/ca-load-list/ca-load-list.component.mjs +103 -0
  68. package/esm2022/lib/components/ca-pickup-delivery-block/components/ca-load/components/ca-load-single/ca-load-single.component.mjs +81 -0
  69. package/esm2022/lib/components/ca-pickup-delivery-block/models/adress-model.mjs +2 -0
  70. package/esm2022/lib/components/ca-pickup-delivery-block/models/animation-model.mjs +2 -0
  71. package/esm2022/lib/components/ca-pickup-delivery-block/models/broker-short-response.mjs +2 -0
  72. package/esm2022/lib/components/ca-pickup-delivery-block/models/dispatch-assigned-load-list-response.mjs +2 -0
  73. package/esm2022/lib/components/ca-pickup-delivery-block/models/enum-value.mjs +2 -0
  74. package/esm2022/lib/components/ca-pickup-delivery-block/models/load-short-response.mjs +2 -0
  75. package/esm2022/lib/components/ca-pickup-delivery-block/models/load-stop-short-response.mjs +2 -0
  76. package/esm2022/lib/components/ca-pickup-delivery-block/models/shipper-short-response.mjs +2 -0
  77. package/esm2022/lib/components/ca-pickup-delivery-block/models/status-types.enum.mjs +7 -0
  78. package/esm2022/lib/components/ca-pickup-delivery-block/utils/constants/animation-object-default.constants.mjs +8 -0
  79. package/esm2022/lib/components/ca-pickup-delivery-block/utils/constants/pickup-delivery-block.constants.mjs +25 -0
  80. package/esm2022/lib/components/ca-pickup-delivery-block/utils/helpers/pickup-delivery.helper.mjs +21 -0
  81. package/esm2022/lib/components/ca-pickup-delivery-block/utils/svg-routes/options-icon.routes.mjs +5 -0
  82. package/esm2022/lib/components/ca-pickup-delivery-block/utils/svg-routes/pickup-delivery-svg.routes.mjs +16 -0
  83. package/esm2022/lib/components/ca-pickup-delivery-block/utils/svg-routes/return-arrow.routes.mjs +5 -0
  84. package/esm2022/lib/components/ca-profile-image/ca-profile-image.component.mjs +5 -5
  85. package/esm2022/lib/components/ca-progress-bar/ca-progress-bar.component.mjs +209 -0
  86. package/esm2022/lib/components/ca-progress-bar/models/gps-progress.model.mjs +2 -0
  87. package/esm2022/lib/components/ca-progress-bar/utils/constants/progress-bar.constants.mjs +8 -0
  88. package/esm2022/lib/components/ca-progress-bar/utils/svg-routes/progress-bar-svg-routes.mjs +4 -0
  89. package/esm2022/lib/components/ca-search-multiple-states/ca-search-multiple-states.component.mjs +91 -0
  90. package/esm2022/lib/components/ca-search-multiple-states/utils/config/input-config.mjs +9 -0
  91. package/esm2022/lib/components/ca-search-multiple-states/utils/svg-routes/search-multiple-states.routes.mjs +7 -0
  92. package/esm2022/lib/components/ca-spinner/ca-spinner.component.mjs +40 -0
  93. package/esm2022/lib/components/ca-truck-trailer-progress-bar/ca-truck-trailer-progress-bar.component.mjs +97 -0
  94. package/esm2022/lib/components/ca-truck-trailer-progress-bar/models/progress-dropdown-data.model.mjs +2 -0
  95. package/esm2022/lib/constants/map.constant.mjs +436 -0
  96. package/esm2022/lib/directives/placeholder-directive.mjs +59 -0
  97. package/esm2022/lib/enums/load-filter-string.enum.mjs +23 -0
  98. package/esm2022/lib/enums/load-status.enum.mjs +58 -0
  99. package/esm2022/lib/models/array-status.model.mjs +2 -0
  100. package/esm2022/lib/models/card-models/card-table-data.model.mjs +2 -0
  101. package/esm2022/lib/models/color-response.mjs +2 -0
  102. package/esm2022/lib/models/dropdown.model.mjs +2 -0
  103. package/esm2022/lib/models/filter-output-params.model.mjs +2 -0
  104. package/esm2022/lib/models/filter-output.model.mjs +2 -0
  105. package/esm2022/lib/models/note-active-options.model.mjs +2 -0
  106. package/esm2022/lib/models/payroll-list-summary.model.mjs +2 -0
  107. package/esm2022/lib/models/table-models/table-body-color-label.model.mjs +2 -0
  108. package/esm2022/lib/models/time-filter.model.mjs +2 -0
  109. package/esm2022/lib/models/trailer-minimal-response.mjs +2 -0
  110. package/esm2022/lib/models/trailer-type-response.mjs +2 -0
  111. package/esm2022/lib/models/truck-minimal-response.mjs +2 -0
  112. package/esm2022/lib/models/truck-type-response.mjs +2 -0
  113. package/esm2022/lib/pipes/dropdown-load-status-color.pipe.mjs +164 -0
  114. package/esm2022/lib/pipes/format-currency.pipe.mjs +22 -0
  115. package/esm2022/lib/pipes/safe-html.pipe.mjs +18 -0
  116. package/esm2022/lib/pipes/ta-svg.pipe.mjs +30 -0
  117. package/esm2022/lib/pipes/thousand-separator.pipe.mjs +19 -0
  118. package/esm2022/lib/pipes/thousand-to-short-format-pipe.mjs +19 -0
  119. package/esm2022/lib/services/truckassist-table.service.mjs +20 -0
  120. package/esm2022/lib/utils/helpers/methods-calculations.helper.mjs +153 -0
  121. package/esm2022/public-api.mjs +21 -4
  122. package/fesm2022/ca-components.mjs +1876 -7
  123. package/fesm2022/ca-components.mjs.map +1 -1
  124. package/lib/animation/in-out.animation.d.ts +1 -0
  125. package/lib/animations/accordion-animation.d.ts +1 -0
  126. package/lib/animations/animation.d.ts +4 -0
  127. package/lib/animations/close-form.animation.d.ts +1 -0
  128. package/lib/animations/expand-search-button.animation.d.ts +1 -0
  129. package/lib/animations/show.animation.d.ts +1 -0
  130. package/lib/animations/tabs-modal.animation.d.ts +1 -0
  131. package/lib/ca-components.module.d.ts +25 -0
  132. package/lib/components/ca-app-tooltip-v2/ca-app-tooltip-v2.component.d.ts +19 -0
  133. package/lib/components/ca-details-dropdown/ca-details-dropdown.component.d.ts +35 -0
  134. package/lib/components/ca-details-dropdown/models/detail-dropdown.model.d.ts +19 -0
  135. package/lib/components/ca-details-dropdown/utils/svg-routes/detail-dropdown-svg-routes.d.ts +3 -0
  136. package/lib/components/ca-dropdown/ca-dropdown.component.d.ts +14 -0
  137. package/lib/components/ca-filters/ca-filter.component.d.ts +46 -0
  138. package/lib/components/ca-filters/components/ca-money-filter/ca-money-filter.component.d.ts +78 -0
  139. package/lib/components/ca-filters/components/ca-money-filter/config/ca-money-filter.config.d.ts +11 -0
  140. package/lib/components/ca-filters/components/ca-status-filter/ca-status-filter.component.d.ts +62 -0
  141. package/lib/components/ca-filters/components/ca-time-filter/ca-time-filter.component.d.ts +33 -0
  142. package/lib/components/ca-filters/utils/constants/status-filter.constants.d.ts +9 -0
  143. package/lib/components/ca-filters/utils/constants/time-filter.constants.d.ts +8 -0
  144. package/lib/components/ca-filters/utils/svg-routes/ca-filters-svg-routes.d.ts +6 -0
  145. package/lib/components/ca-filters/utils/svg-routes/ca-money-filter-svg-routes.d.ts +3 -0
  146. package/lib/components/ca-input/ca-input.component.d.ts +46 -0
  147. package/lib/components/ca-input/components/ca-input-clear/ca-input-clear.component.d.ts +19 -0
  148. package/lib/components/ca-input/components/ca-input-password/ca-input-password.component.d.ts +20 -0
  149. package/lib/components/ca-input/components/ca-input-placeholder-icon/ca-input-placeholder-icon.component.d.ts +16 -0
  150. package/lib/components/ca-input/config/ca-input.config.d.ts +136 -0
  151. package/lib/components/ca-input/models/label-color.model.d.ts +11 -0
  152. package/lib/components/ca-input/pipes/input-class.pipe.d.ts +13 -0
  153. package/lib/components/ca-input/pipes/input-clear-class.pipe.d.ts +11 -0
  154. package/lib/components/ca-input/pipes/input-container-class.pipe.d.ts +11 -0
  155. package/lib/components/ca-input/pipes/input-error.pipe.d.ts +7 -0
  156. package/lib/components/ca-input/pipes/input-password-eye-class.pipe.d.ts +11 -0
  157. package/lib/components/ca-input/pipes/input-placeholder-icon.class.pipe.d.ts +12 -0
  158. package/lib/components/ca-input/pipes/input-type.pipe.d.ts +7 -0
  159. package/lib/components/ca-input/pipes/label-class.pipe.d.ts +10 -0
  160. package/lib/components/ca-input/pipes/show-clear.pipe.d.ts +8 -0
  161. package/lib/components/ca-input/pipes/show-invalid-danger-mark.pipe.d.ts +9 -0
  162. package/lib/components/ca-input/pipes/show-valid-check.pipe.d.ts +9 -0
  163. package/lib/components/ca-input/services/ca-input-state.service.d.ts +24 -0
  164. package/lib/components/ca-input/utils/input-svg-routes.d.ts +8 -0
  165. package/lib/components/ca-input-radiobuttons/ca-input-radiobuttons.component.d.ts +21 -0
  166. package/lib/components/ca-map/ca-map.component.d.ts +56 -0
  167. package/lib/components/ca-map/enums/google-map.enum.d.ts +4 -0
  168. package/lib/components/ca-map/enums/toolbar-filter-string.enum.d.ts +33 -0
  169. package/lib/components/ca-map/models/map.model.d.ts +74 -0
  170. package/lib/components/ca-map/utils/helpers/map.helper.d.ts +9 -0
  171. package/lib/components/ca-map/utils/map-svg-routes/map-svg-routes.d.ts +4 -0
  172. package/lib/components/ca-map-dropdown/ca-map-dropdown.component.d.ts +43 -0
  173. package/lib/components/ca-map-dropdown/utils/svg-routes/map-dropdown-svg-routes.d.ts +18 -0
  174. package/lib/components/ca-note/ca-note.component.d.ts +56 -0
  175. package/lib/components/ca-note/utils/helper/copy-paste.helper.d.ts +3 -0
  176. package/lib/components/ca-note/utils/svg-routes/note-svg-routes.d.ts +5 -0
  177. package/lib/components/ca-note-container/ca-note-container.component.d.ts +38 -0
  178. package/lib/components/ca-note-container/enums/note-default-string.enum.d.ts +9 -0
  179. package/lib/components/ca-note-container/enums/note-selected-color.enum.d.ts +4 -0
  180. package/lib/components/ca-note-container/models/note-colors.model.d.ts +4 -0
  181. package/lib/components/ca-note-container/utils/constants/note-config.constant.d.ts +7 -0
  182. package/lib/components/ca-note-container/utils/svg-routes/note-container-svg-routes.d.ts +8 -0
  183. package/lib/components/ca-payroll-list-summary-overview/ca-payroll-list-summary-overview.component.d.ts +20 -0
  184. package/lib/components/ca-payroll-list-summary-overview/utils/svg-routes/payroll-list-summary-svg-routes.d.ts +4 -0
  185. package/lib/components/ca-payroll-list-summary-overview-table/ca-payroll-list-summary-overview-table.component.d.ts +20 -0
  186. package/lib/components/ca-pickup-delivery-block/ca-pickup-delivery-block.component.d.ts +19 -0
  187. package/lib/components/ca-pickup-delivery-block/components/ca-load/ca-load.component.d.ts +30 -0
  188. package/lib/components/ca-pickup-delivery-block/components/ca-load/components/ca-load-list/ca-load-list.component.d.ts +30 -0
  189. package/lib/components/ca-pickup-delivery-block/components/ca-load/components/ca-load-single/ca-load-single.component.d.ts +23 -0
  190. package/lib/components/ca-pickup-delivery-block/models/adress-model.d.ts +12 -0
  191. package/lib/components/ca-pickup-delivery-block/models/animation-model.d.ts +7 -0
  192. package/lib/components/ca-pickup-delivery-block/models/broker-short-response.d.ts +13 -0
  193. package/lib/components/ca-pickup-delivery-block/models/dispatch-assigned-load-list-response.d.ts +6 -0
  194. package/lib/components/ca-pickup-delivery-block/models/enum-value.d.ts +4 -0
  195. package/lib/components/ca-pickup-delivery-block/models/load-short-response.d.ts +18 -0
  196. package/lib/components/ca-pickup-delivery-block/models/load-stop-short-response.d.ts +9 -0
  197. package/lib/components/ca-pickup-delivery-block/models/shipper-short-response.d.ts +8 -0
  198. package/lib/components/ca-pickup-delivery-block/models/status-types.enum.d.ts +5 -0
  199. package/lib/components/ca-pickup-delivery-block/utils/constants/animation-object-default.constants.d.ts +4 -0
  200. package/lib/components/ca-pickup-delivery-block/utils/constants/pickup-delivery-block.constants.d.ts +14 -0
  201. package/lib/components/ca-pickup-delivery-block/utils/helpers/pickup-delivery.helper.d.ts +9 -0
  202. package/lib/components/ca-pickup-delivery-block/utils/svg-routes/options-icon.routes.d.ts +4 -0
  203. package/lib/components/ca-pickup-delivery-block/utils/svg-routes/pickup-delivery-svg.routes.d.ts +15 -0
  204. package/lib/components/ca-pickup-delivery-block/utils/svg-routes/return-arrow.routes.d.ts +4 -0
  205. package/lib/components/ca-profile-image/ca-profile-image.component.d.ts +1 -1
  206. package/lib/components/ca-progress-bar/ca-progress-bar.component.d.ts +115 -0
  207. package/lib/components/ca-progress-bar/models/gps-progress.model.d.ts +8 -0
  208. package/lib/components/ca-progress-bar/utils/constants/progress-bar.constants.d.ts +7 -0
  209. package/lib/components/ca-progress-bar/utils/svg-routes/progress-bar-svg-routes.d.ts +3 -0
  210. package/lib/components/ca-search-multiple-states/ca-search-multiple-states.component.d.ts +24 -0
  211. package/lib/components/ca-search-multiple-states/utils/config/input-config.d.ts +2 -0
  212. package/lib/components/ca-search-multiple-states/utils/svg-routes/search-multiple-states.routes.d.ts +6 -0
  213. package/lib/components/ca-spinner/ca-spinner.component.d.ts +15 -0
  214. package/lib/components/ca-truck-trailer-progress-bar/ca-truck-trailer-progress-bar.component.d.ts +23 -0
  215. package/lib/components/ca-truck-trailer-progress-bar/models/progress-dropdown-data.model.d.ts +5 -0
  216. package/lib/constants/map.constant.d.ts +39 -0
  217. package/lib/directives/placeholder-directive.d.ts +15 -0
  218. package/lib/enums/load-filter-string.enum.d.ts +16 -0
  219. package/lib/enums/load-status.enum.d.ts +56 -0
  220. package/lib/models/array-status.model.d.ts +24 -0
  221. package/lib/models/card-models/card-table-data.model.d.ts +837 -0
  222. package/lib/models/color-response.d.ts +6 -0
  223. package/lib/models/dropdown.model.d.ts +4 -0
  224. package/lib/models/filter-output-params.model.d.ts +5 -0
  225. package/lib/models/filter-output.model.d.ts +6 -0
  226. package/lib/models/note-active-options.model.d.ts +6 -0
  227. package/lib/models/payroll-list-summary.model.d.ts +12 -0
  228. package/lib/models/table-models/table-body-color-label.model.d.ts +11 -0
  229. package/lib/models/time-filter.model.d.ts +7 -0
  230. package/lib/models/trailer-minimal-response.d.ts +11 -0
  231. package/lib/models/trailer-type-response.d.ts +7 -0
  232. package/lib/models/truck-minimal-response.d.ts +13 -0
  233. package/lib/models/truck-type-response.d.ts +6 -0
  234. package/lib/pipes/dropdown-load-status-color.pipe.d.ts +10 -0
  235. package/lib/pipes/format-currency.pipe.d.ts +7 -0
  236. package/lib/pipes/safe-html.pipe.d.ts +10 -0
  237. package/lib/pipes/ta-svg.pipe.d.ts +7 -0
  238. package/lib/pipes/thousand-separator.pipe.d.ts +7 -0
  239. package/lib/pipes/thousand-to-short-format-pipe.d.ts +7 -0
  240. package/lib/services/truckassist-table.service.d.ts +7 -0
  241. package/lib/utils/helpers/methods-calculations.helper.d.ts +15 -0
  242. package/package.json +1 -1
  243. package/public-api.d.ts +20 -1
  244. package/src/assets/global_style/styles.scss +45 -0
  245. package/src/assets/json/ca-dropdown.json +12 -0
  246. package/src/assets/json/ca-payroll-list-summary.json +71 -0
  247. package/src/assets/json/ca-table.json +59 -0
  248. package/src/assets/json/ta-detail-dropdown.json +80 -0
  249. package/src/assets/json/truck-trailer-progress-bar.json +1453 -0
  250. package/src/assets/json/usa-states.json +54 -0
  251. package/src/assets/kml/timezones.kml +1608 -0
  252. package/src/assets/kml/toll-roads/California.kml +55 -0
  253. package/src/assets/kml/toll-roads/Texas.kml +5079 -0
  254. package/src/assets/kml/toll-roads/florida.kml +2092 -0
  255. package/src/assets/lottie/ta-lottie-spinner/18px/black.json +1 -0
  256. package/src/assets/lottie/ta-lottie-spinner/18px/blueDark.json +1 -0
  257. package/src/assets/lottie/ta-lottie-spinner/18px/blueLight.json +1 -0
  258. package/src/assets/lottie/ta-lottie-spinner/18px/gray.json +1 -0
  259. package/src/assets/lottie/ta-lottie-spinner/18px/white.json +1 -0
  260. package/src/assets/lottie/ta-lottie-spinner/32px/black.json +1 -0
  261. package/src/assets/lottie/ta-lottie-spinner/32px/blueLight.json +1 -0
  262. package/src/assets/lottie/ta-lottie-spinner/32px/dark.json +1 -0
  263. package/src/assets/lottie/ta-lottie-spinner/32px/gray.json +1 -0
  264. package/src/assets/lottie/ta-lottie-spinner/32px/white.json +1 -0
  265. package/src/assets/scss/font-family.scss +2 -0
  266. package/src/assets/scss/font-weight.scss +36 -0
  267. package/src/assets/scss/popover.scss +112 -0
  268. package/src/assets/svg/common/calendar/arrow-left.svg +3 -0
  269. package/src/assets/svg/common/ic_confirm.svg +3 -0
  270. package/src/assets/svg/common/ic_search.svg +3 -0
  271. package/src/assets/svg/common/payroll-down-arrow.svg +3 -0
  272. package/src/assets/svg/common/payroll-up-arrow.svg +3 -0
  273. package/src/assets/svg/common/sortArrow_filter.svg +3 -0
  274. package/src/assets/svg/input/ic_confirm.svg +3 -0
  275. package/src/assets/svg/input/ic_danger.svg +3 -0
  276. package/src/assets/svg/input/ic_eye-hidden.svg +6 -0
  277. package/src/assets/svg/input/ic_eye-visible.svg +6 -0
  278. package/src/assets/svg/input/ic_password.svg +6 -0
  279. package/src/assets/svg/input/ic_remove_input.svg +7 -0
  280. package/src/assets/svg/input/ic_x.svg +4 -0
  281. package/src/assets/svg/map/18px_tooltip.svg +3 -0
  282. package/src/assets/svg/map/accident_calender.svg +3 -0
  283. package/src/assets/svg/map/accident_hazmat.svg +3 -0
  284. package/src/assets/svg/map/accident_injury.svg +3 -0
  285. package/src/assets/svg/map/accident_towing.svg +3 -0
  286. package/src/assets/svg/map/accident_vechile.svg +3 -0
  287. package/src/assets/svg/map/address.svg +3 -0
  288. package/src/assets/svg/map/arrow_corner_top.svg +3 -0
  289. package/src/assets/svg/map/calender_last_used.svg +3 -0
  290. package/src/assets/svg/map/check.svg +3 -0
  291. package/src/assets/svg/map/cluster_marker_4.svg +32 -0
  292. package/src/assets/svg/map/cluster_marker_6.svg +32 -0
  293. package/src/assets/svg/map/details_options.svg +10 -0
  294. package/src/assets/svg/map/details_options_2.svg +3 -0
  295. package/src/assets/svg/map/dislike.svg +3 -0
  296. package/src/assets/svg/map/email.svg +3 -0
  297. package/src/assets/svg/map/extended_stop_ignition.svg +11 -0
  298. package/src/assets/svg/map/gps-location.svg +4 -0
  299. package/src/assets/svg/map/gps_extended_status.svg +4 -0
  300. package/src/assets/svg/map/gps_full.svg +7 -0
  301. package/src/assets/svg/map/gps_parking_status.svg +4 -0
  302. package/src/assets/svg/map/gps_short_status.svg +4 -0
  303. package/src/assets/svg/map/gps_trailer_extended.svg +11 -0
  304. package/src/assets/svg/map/gps_trailer_moving.svg +16 -0
  305. package/src/assets/svg/map/gps_trailer_parking.svg +11 -0
  306. package/src/assets/svg/map/gps_trailer_short_stop.svg +11 -0
  307. package/src/assets/svg/map/ic_marker_office.svg +18 -0
  308. package/src/assets/svg/map/ic_pulse_circle.svg +1 -0
  309. package/src/assets/svg/map/like.svg +3 -0
  310. package/src/assets/svg/map/marker.svg +27 -0
  311. package/src/assets/svg/map/marker_2.svg +27 -0
  312. package/src/assets/svg/map/marker_3.svg +27 -0
  313. package/src/assets/svg/map/marker_4.svg +27 -0
  314. package/src/assets/svg/map/marker_5.svg +27 -0
  315. package/src/assets/svg/map/marker_cluster.svg +32 -0
  316. package/src/assets/svg/map/marker_cluster_2.svg +32 -0
  317. package/src/assets/svg/map/marker_dot.svg +18 -0
  318. package/src/assets/svg/map/marker_dot_2.svg +18 -0
  319. package/src/assets/svg/map/mask_group.svg +546 -0
  320. package/src/assets/svg/map/no_gps_status.svg +8 -0
  321. package/src/assets/svg/map/oss.svg +3 -0
  322. package/src/assets/svg/map/parking_ignition.svg +11 -0
  323. package/src/assets/svg/map/parking_trailer_ignition.svg +11 -0
  324. package/src/assets/svg/map/phone.svg +3 -0
  325. package/src/assets/svg/map/progress-marker-checked.svg +20 -0
  326. package/src/assets/svg/map/progress-marker-pickup-checked.svg +20 -0
  327. package/src/assets/svg/map/progress-marker-pickup.svg +20 -0
  328. package/src/assets/svg/map/progress_marker-pin-dark.svg +20 -0
  329. package/src/assets/svg/map/progress_marker.svg +20 -0
  330. package/src/assets/svg/map/progress_marker_reached.svg +20 -0
  331. package/src/assets/svg/map/review.svg +3 -0
  332. package/src/assets/svg/map/routing_marker.svg +19 -0
  333. package/src/assets/svg/map/short_stop_ignition.svg +11 -0
  334. package/src/assets/svg/map/short_stop_trailer_ignition.svg +16 -0
  335. package/src/assets/svg/map/telematic_marker.svg +19 -0
  336. package/src/assets/svg/map/telematic_marker_1.svg +19 -0
  337. package/src/assets/svg/map/telematic_marker_2.svg +18 -0
  338. package/src/assets/svg/map/unitView_marker.svg +20 -0
  339. package/src/assets/svg/note/Itallic.svg +3 -0
  340. package/src/assets/svg/note/Note.svg +3 -0
  341. package/src/assets/svg/note/Underline.svg +3 -0
  342. package/src/assets/svg/note/arrow.svg +3 -0
  343. package/src/assets/svg/note/bold.svg +3 -0
  344. package/src/assets/svg/note/color-picker-inverse.svg +10 -0
  345. package/src/assets/svg/note/note-empty-dark.svg +3 -0
  346. package/src/assets/svg/note/note-empty.svg +3 -0
  347. package/src/assets/svg/note/note-filled.svg +3 -0
  348. package/src/assets/svg/note/tick.svg +3 -0
  349. package/src/assets/svg/pickup-delivery/Miles.svg +3 -0
  350. package/src/assets/svg/pickup-delivery/Options.svg +3 -0
  351. package/src/assets/svg/pickup-delivery/arrowLeft.svg +10 -0
  352. package/src/assets/svg/pickup-delivery/arrowLeftHover.svg +10 -0
  353. package/src/assets/svg/pickup-delivery/arrowRight.svg +3 -0
  354. package/src/assets/svg/pickup-delivery/detailsOptions.svg +3 -0
  355. package/src/assets/svg/pickup-delivery/leftArrow.svg +3 -0
  356. package/src/assets/svg/pickup-delivery/mailIcon.svg +3 -0
  357. package/src/assets/svg/pickup-delivery/mapOptionsDark.svg +11 -0
  358. package/src/assets/svg/pickup-delivery/optionsVertical.svg +10 -0
  359. package/src/assets/svg/pickup-delivery/phoneIcon.svg +3 -0
  360. package/src/assets/svg/pickup-delivery/userIcon.svg +3 -0
  361. package/src/assets/svg/pickup-delivery/vector.svg +3 -0
  362. package/src/assets/svg/popup/Delete.svg +4 -0
  363. package/src/assets/svg/popup/Information.svg +3 -0
  364. package/src/assets/svg/popup/Minus.svg +3 -0
  365. package/src/assets/svg/popup/Print.svg +3 -0
  366. package/src/assets/svg/popup/Share.svg +3 -0
  367. package/src/assets/svg/popup/close-business-icon.svg +6 -0
  368. package/src/assets/svg/popup/delete-hover-new.svg +9 -0
  369. package/src/assets/svg/popup/edit-hover.svg +10 -0
  370. package/src/assets/svg/popup/ic_broker-user.svg +1 -0
  371. package/src/assets/svg/popup/ic_info.svg +6 -0
  372. package/src/assets/svg/popup/ic_print.svg +1 -0
  373. package/src/assets/svg/popup/resize-arrow.svg +1 -0
  374. package/src/assets/svg/popup/review-pen.svg +6 -0
  375. package/src/assets/svg/popup/share-icon.svg +6 -0
  376. package/src/assets/svg/popup/trash.svg +4 -0
  377. package/src/assets/svg/search-multiple-states/add.svg +4 -0
  378. package/src/assets/svg/search-multiple-states/clear-search.svg +4 -0
  379. package/src/assets/svg/search-multiple-states/focused-search-button.svg +3 -0
  380. package/src/assets/svg/search-multiple-states/search-button.svg +3 -0
  381. package/src/assets/svg/truckassist-table/x.svg +1 -0
  382. package/src/assets/theme/main.scss +193 -0
  383. package/src/assets/theme/variables.scss +361 -0
@@ -0,0 +1,329 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, EventEmitter, Input, Output, ViewChild, ViewChildren, } from '@angular/core';
3
+ //Modules
4
+ import { GoogleMap, GoogleMapsModule, MapInfoWindow, } from '@angular/google-maps';
5
+ //icon
6
+ import { AngularSvgIconModule } from 'angular-svg-icon';
7
+ //Components
8
+ import { CaMapDropdownComponent } from '@shared/components/ca-map-dropdown/ca-map-dropdown.component';
9
+ //Enums
10
+ import { GoogleMapEnum } from '@shared/components/ca-map/enums/google-map.enum';
11
+ //HelperFuntion
12
+ import { MapHelper } from '@shared/components/ca-map/utils/helpers/map.helper';
13
+ import { MapSvgRoutes } from '@shared/components/ca-map/utils/map-svg-routes/map-svg-routes';
14
+ import * as i0 from "@angular/core";
15
+ import * as i1 from "@angular/google-maps";
16
+ import * as i2 from "@angular/common";
17
+ export class CaMapComponent {
18
+ constructor(cd) {
19
+ this.cd = cd;
20
+ this.markerClick = new EventEmitter();
21
+ this.currentlyOpenWindowIndex = null;
22
+ this.currentlyOpenWindowIndexRouting = null;
23
+ this.showLabel = true;
24
+ this.directionService = new google.maps.DirectionsService();
25
+ this.directionsRenderers = [];
26
+ this.initialIcons = [];
27
+ this.initialMarkerIcons = [];
28
+ }
29
+ ngOnInit() {
30
+ this.storeInitialIconForMarker();
31
+ this.storeInitialIconForRoutingMarker();
32
+ // Reset all icons to their initial state on page load
33
+ this.resetMarkersIcons();
34
+ this.resetRoutingMarkers();
35
+ //Display routes for routingMarkers
36
+ this.calculateAndDisplayRoute();
37
+ }
38
+ ngOnChanges(changes) {
39
+ if (changes['routingMarkers']) {
40
+ this.data.routingMarkers = changes['routingMarkers'].currentValue;
41
+ }
42
+ }
43
+ storeInitialIconForMarker() {
44
+ this.data.markers?.forEach((marker, index) => {
45
+ this.initialMarkerIcons[index] = {
46
+ url: marker.icon.url,
47
+ labelOrigin: marker.icon.labelOrigin || null,
48
+ };
49
+ });
50
+ }
51
+ storeInitialIconForRoutingMarker() {
52
+ this.data.routingMarkers?.forEach((marker, index) => {
53
+ this.initialIcons[index] = {
54
+ url: marker.icon.url,
55
+ labelOrigin: marker.icon.labelOrigin || null,
56
+ };
57
+ });
58
+ }
59
+ onMarkerClick(i, event, markeritem) {
60
+ if (markeritem?.infoWindowContent) {
61
+ if (this.currentlyOpenWindowIndex === i &&
62
+ this.currentlyOpenWindow) {
63
+ const infoWindow = this.infoWindowsView.toArray()[i];
64
+ // Close the currently open info window and reset the index
65
+ this.data.markers.map((item, index) => {
66
+ if (index === i) {
67
+ item.icon = {
68
+ url: this.initialMarkerIcons[index].url,
69
+ labelOrigin: this.initialMarkerIcons[index].labelOrigin,
70
+ };
71
+ }
72
+ });
73
+ infoWindow.close();
74
+ this.currentlyOpenWindowIndex = null;
75
+ }
76
+ else {
77
+ const markerIndex = this.marker.toArray()[i];
78
+ const infoWindow = this.infoWindowsView.toArray()[i];
79
+ if (this.currentlyOpenWindow) {
80
+ this.currentlyOpenWindow.close();
81
+ }
82
+ if (infoWindow) {
83
+ this.data.markers.map((item, index) => {
84
+ if (index === i) {
85
+ this.focusedIcon = i;
86
+ this.showLabel = false;
87
+ item.icon = {
88
+ url: this.initialMarkerIcons[index].url,
89
+ scaledSize: new google.maps.Size(70, 70),
90
+ };
91
+ }
92
+ else {
93
+ this.showLabel = true;
94
+ item.icon = {
95
+ url: this.initialMarkerIcons[index].url,
96
+ labelOrigin: this.initialMarkerIcons[index]
97
+ .labelOrigin,
98
+ };
99
+ }
100
+ });
101
+ infoWindow.open(markerIndex);
102
+ this.currentlyOpenWindow = infoWindow;
103
+ this.currentlyOpenWindowIndex = i;
104
+ this.markerClick.emit(event);
105
+ }
106
+ }
107
+ }
108
+ else {
109
+ return;
110
+ }
111
+ }
112
+ setDirectionsOnMap() {
113
+ if (this.maps?.googleMap) {
114
+ this.directionsRenderers.forEach((renderer) => renderer.setMap(this.maps?.googleMap));
115
+ }
116
+ }
117
+ calculateAndDisplayRoute() {
118
+ if (this.data.routePaths) {
119
+ // Clear any previous directions renderers
120
+ this.directionsRenderers.forEach((renderer) => renderer.setMap(null));
121
+ this.directionsRenderers = [];
122
+ this.data.routePaths.forEach((route) => {
123
+ const request = {
124
+ origin: route.path[0],
125
+ destination: route.path[route.path.length - 1],
126
+ waypoints: route.path
127
+ .slice(1, route.path.length - 1)
128
+ .map((position) => ({ location: position })),
129
+ travelMode: google.maps.TravelMode.BICYCLING,
130
+ };
131
+ this.directionService.route(request, (result, status) => {
132
+ if (status === google.maps.DirectionsStatus.OK &&
133
+ result?.routes[0]) {
134
+ const directionsRenderer = new google.maps.DirectionsRenderer({
135
+ suppressInfoWindows: true,
136
+ suppressMarkers: true,
137
+ preserveViewport: true,
138
+ polylineOptions: {
139
+ strokeColor: route.strokeColor ||
140
+ GoogleMapEnum.STROKE_COLOR,
141
+ strokeOpacity: route.strokeOpacity ||
142
+ GoogleMapEnum.STROKE_OPACITY,
143
+ },
144
+ });
145
+ directionsRenderer.setDirections(result);
146
+ this.directionsRenderers.push(directionsRenderer);
147
+ this.setDirectionsOnMap();
148
+ }
149
+ });
150
+ });
151
+ }
152
+ else {
153
+ return;
154
+ }
155
+ }
156
+ onRoutingMarkerClick(i, event, markeritem) {
157
+ if (markeritem?.infoWindowContent) {
158
+ if (this.currentlyOpenWindowIndexRouting === i &&
159
+ this.currentlyOpenWindowRouting) {
160
+ const infoWindow = this.infoWindowsViewRouting.toArray()[i];
161
+ // Close the currently open info window and reset the index
162
+ this.data.routingMarkers.map((item, index) => {
163
+ if (index === i) {
164
+ item.icon = {
165
+ url: this.initialIcons[index].url,
166
+ labelOrigin: this.initialIcons[index].labelOrigin,
167
+ };
168
+ }
169
+ });
170
+ infoWindow.close();
171
+ this.currentlyOpenWindowIndexRouting = null;
172
+ }
173
+ else {
174
+ const markerIndex = this.markerRouting.toArray()[i];
175
+ const infoWindow = this.infoWindowsViewRouting.toArray()[i];
176
+ if (this.currentlyOpenWindowRouting) {
177
+ this.currentlyOpenWindowRouting.close();
178
+ }
179
+ if (infoWindow) {
180
+ // Restore the previous icon for the previously focused routing marker
181
+ if (this.focusedIconRouting !== undefined &&
182
+ this.focusedIconRouting !== i) {
183
+ const previousFocusedItem = this.data.routingMarkers[this.focusedIconRouting];
184
+ if (previousFocusedItem) {
185
+ previousFocusedItem.icon = {
186
+ url: this.initialIcons[this.focusedIconRouting]
187
+ .url,
188
+ labelOrigin: this.initialIcons[this.focusedIconRouting]
189
+ .labelOrigin,
190
+ };
191
+ }
192
+ }
193
+ // Update the current marker
194
+ this.data.routingMarkers.map((item, index) => {
195
+ if (index === i) {
196
+ this.previousIconUrlRouting = item.icon
197
+ ? item.icon.url
198
+ : '';
199
+ this.focusedIconRouting = i;
200
+ this.showLabel = false;
201
+ item.icon = {
202
+ url: this.data.isUnitViewStops ||
203
+ this.data.isDriverMiles
204
+ ? item.icon.url
205
+ : MapSvgRoutes.markerSvgRoute,
206
+ };
207
+ }
208
+ else {
209
+ this.showLabel = true;
210
+ }
211
+ });
212
+ infoWindow.open(markerIndex);
213
+ this.currentlyOpenWindowRouting = infoWindow;
214
+ this.currentlyOpenWindowIndexRouting = i;
215
+ this.markerClick.emit(event);
216
+ }
217
+ }
218
+ }
219
+ else {
220
+ return;
221
+ }
222
+ }
223
+ ngAfterViewInit() {
224
+ this.maps.googleMap?.addListener('click', () => {
225
+ this.infoWindowsView.forEach((window) => {
226
+ window.close();
227
+ this.currentlyOpenWindow = null;
228
+ });
229
+ this.infoWindowsViewRouting.forEach((window) => {
230
+ window.close();
231
+ this.currentlyOpenWindowRouting = null;
232
+ });
233
+ this.data.markers?.map((item, i) => {
234
+ if (i === this.focusedIcon) {
235
+ item.icon = { url: item.icon ? item.icon.url : '' };
236
+ this.cd.detectChanges();
237
+ }
238
+ });
239
+ this.data.routingMarkers?.map((item, i) => {
240
+ if (i === this.focusedIconRouting) {
241
+ item.icon = {
242
+ url: this.initialIcons[i].url,
243
+ };
244
+ this.cd.detectChanges();
245
+ }
246
+ });
247
+ });
248
+ }
249
+ resetMarkersIcons() {
250
+ this.data.markers?.forEach((marker, index) => {
251
+ marker.icon = {
252
+ url: this.initialMarkerIcons[index].url,
253
+ labelOrigin: this.initialMarkerIcons[index].labelOrigin,
254
+ };
255
+ });
256
+ this.cd.detectChanges();
257
+ }
258
+ resetRoutingMarkers() {
259
+ this.data.routingMarkers?.forEach((marker, index) => {
260
+ marker.icon = {
261
+ url: marker.icon.url,
262
+ labelOrigin: marker.icon.labelOrigin,
263
+ };
264
+ });
265
+ }
266
+ onMapReady() {
267
+ if (this.data.stateBoundariesUrl) {
268
+ const stateBoundariesUrl = this.data.stateBoundariesUrl.url;
269
+ this.maps.googleMap?.data.loadGeoJson(stateBoundariesUrl);
270
+ this.maps.googleMap?.data.setStyle((feature) => {
271
+ //leave this as any for now
272
+ const stateDensity = feature.getProperty('density');
273
+ const { fillColor, fillOpacity } = MapHelper.getFillColorForState(stateDensity, this.data.view);
274
+ return {
275
+ fillColor: fillColor,
276
+ strokeColor: '#EEEEEE',
277
+ strokeWeight: 0.6,
278
+ fillOpacity: fillOpacity,
279
+ };
280
+ });
281
+ }
282
+ else {
283
+ return;
284
+ }
285
+ }
286
+ identity(index) {
287
+ return index;
288
+ }
289
+ ngOnDestroy() {
290
+ this.directionsRenderers.forEach((renderer) => renderer.setMap(null));
291
+ }
292
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CaMapComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
293
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CaMapComponent, isStandalone: true, selector: "app-ca-map", inputs: { data: "data" }, outputs: { markerClick: "markerClick" }, viewQueries: [{ propertyName: "maps", first: true, predicate: GoogleMap, descendants: true }, { propertyName: "marker", predicate: ["marker"], descendants: true }, { propertyName: "infoWindowsView", predicate: MapInfoWindow, descendants: true }, { propertyName: "markerRouting", predicate: ["markerRouting"], descendants: true }, { propertyName: "infoWindowsViewRouting", predicate: MapInfoWindow, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<google-map\n height=\"500px\"\n width=\"100%\"\n [zoom]=\"data.mapZoom\"\n [center]=\"data.center\"\n [options]=\"data.mapOptions\"\n (idle)=\"onMapReady()\"\n>\n <map-marker\n #marker=\"mapMarker\"\n *ngFor=\"let markeritem of data.markers; let i = index; trackBy: identity\"\n [position]=\"markeritem.position\"\n [icon]=\"markeritem.icon!\"\n [label]=\"focusedIcon !== i ? markeritem.label! : ''\"\n [title]=\"markeritem.title!\"\n [options]=\"markeritem.options!\"\n (mapClick)=\"onMarkerClick(i, $event, markeritem)\"\n >\n <map-info-window #infoWindowsView=\"mapInfoWindow\">\n <app-ca-map-dropdown\n [isAccidentMap]=\"data.isAccidentMap ?? false\"\n ></app-ca-map-dropdown>\n </map-info-window>\n </map-marker>\n <map-marker\n *ngFor=\"let marker of data.clustermarkers; let i = index; trackBy: identity\"\n [position]=\"marker.position\"\n [icon]=\"marker.icon\"\n [label]=\"marker.label!\"\n [title]=\"marker.title!\"\n >\n </map-marker>\n\n <map-marker\n #markerRouting=\"mapMarker\"\n *ngFor=\"\n let markeritem of data.routingMarkers;\n let i = index;\n trackBy: identity\n \"\n [position]=\"markeritem.position\"\n [icon]=\"markeritem.icon!\"\n [label]=\"focusedIconRouting !== i ? markeritem.label! : ''\"\n [title]=\"markeritem.title!\"\n [options]=\"markeritem.options!\"\n (mapClick)=\"onRoutingMarkerClick(i, $event, markeritem)\"\n >\n <map-info-window #infoWindowsViewRouting=\"mapInfoWindow\">\n <app-ca-map-dropdown [isAccidentMap]=\"false\"></app-ca-map-dropdown>\n </map-info-window>\n </map-marker>\n</google-map>\n", styles: [""], dependencies: [{ kind: "ngmodule", type:
294
+ //Modules
295
+ GoogleMapsModule }, { kind: "component", type: i1.GoogleMap, selector: "google-map", inputs: ["height", "width", "mapTypeId", "center", "zoom", "options"], outputs: ["mapInitialized", "authFailure", "boundsChanged", "centerChanged", "mapClick", "mapDblclick", "mapDrag", "mapDragend", "mapDragstart", "headingChanged", "idle", "maptypeidChanged", "mapMousemove", "mapMouseout", "mapMouseover", "projectionChanged", "mapRightclick", "tilesloaded", "tiltChanged", "zoomChanged"], exportAs: ["googleMap"] }, { kind: "directive", type: i1.MapInfoWindow, selector: "map-info-window", inputs: ["options", "position"], outputs: ["closeclick", "contentChanged", "domready", "positionChanged", "zindexChanged"], exportAs: ["mapInfoWindow"] }, { kind: "directive", type: i1.MapMarker, selector: "map-marker", inputs: ["title", "position", "label", "clickable", "options", "icon", "visible"], outputs: ["animationChanged", "mapClick", "clickableChanged", "cursorChanged", "mapDblclick", "mapDrag", "mapDragend", "draggableChanged", "mapDragstart", "flatChanged", "iconChanged", "mapMousedown", "mapMouseout", "mapMouseover", "mapMouseup", "positionChanged", "mapRightclick", "shapeChanged", "titleChanged", "visibleChanged", "zindexChanged"], exportAs: ["mapMarker"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: AngularSvgIconModule }, { kind: "component", type:
296
+ //Components
297
+ CaMapDropdownComponent, selector: "app-ca-map-dropdown", inputs: ["isAccidentMap"], outputs: ["bodyActions"] }] }); }
298
+ }
299
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CaMapComponent, decorators: [{
300
+ type: Component,
301
+ args: [{ selector: 'app-ca-map', standalone: true, imports: [
302
+ //Modules
303
+ GoogleMapsModule,
304
+ CommonModule,
305
+ AngularSvgIconModule,
306
+ //Components
307
+ CaMapDropdownComponent,
308
+ ], template: "<google-map\n height=\"500px\"\n width=\"100%\"\n [zoom]=\"data.mapZoom\"\n [center]=\"data.center\"\n [options]=\"data.mapOptions\"\n (idle)=\"onMapReady()\"\n>\n <map-marker\n #marker=\"mapMarker\"\n *ngFor=\"let markeritem of data.markers; let i = index; trackBy: identity\"\n [position]=\"markeritem.position\"\n [icon]=\"markeritem.icon!\"\n [label]=\"focusedIcon !== i ? markeritem.label! : ''\"\n [title]=\"markeritem.title!\"\n [options]=\"markeritem.options!\"\n (mapClick)=\"onMarkerClick(i, $event, markeritem)\"\n >\n <map-info-window #infoWindowsView=\"mapInfoWindow\">\n <app-ca-map-dropdown\n [isAccidentMap]=\"data.isAccidentMap ?? false\"\n ></app-ca-map-dropdown>\n </map-info-window>\n </map-marker>\n <map-marker\n *ngFor=\"let marker of data.clustermarkers; let i = index; trackBy: identity\"\n [position]=\"marker.position\"\n [icon]=\"marker.icon\"\n [label]=\"marker.label!\"\n [title]=\"marker.title!\"\n >\n </map-marker>\n\n <map-marker\n #markerRouting=\"mapMarker\"\n *ngFor=\"\n let markeritem of data.routingMarkers;\n let i = index;\n trackBy: identity\n \"\n [position]=\"markeritem.position\"\n [icon]=\"markeritem.icon!\"\n [label]=\"focusedIconRouting !== i ? markeritem.label! : ''\"\n [title]=\"markeritem.title!\"\n [options]=\"markeritem.options!\"\n (mapClick)=\"onRoutingMarkerClick(i, $event, markeritem)\"\n >\n <map-info-window #infoWindowsViewRouting=\"mapInfoWindow\">\n <app-ca-map-dropdown [isAccidentMap]=\"false\"></app-ca-map-dropdown>\n </map-info-window>\n </map-marker>\n</google-map>\n" }]
309
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { data: [{
310
+ type: Input
311
+ }], markerClick: [{
312
+ type: Output
313
+ }], maps: [{
314
+ type: ViewChild,
315
+ args: [GoogleMap, { static: false }]
316
+ }], marker: [{
317
+ type: ViewChildren,
318
+ args: ['marker']
319
+ }], infoWindowsView: [{
320
+ type: ViewChildren,
321
+ args: [MapInfoWindow]
322
+ }], markerRouting: [{
323
+ type: ViewChildren,
324
+ args: ['markerRouting']
325
+ }], infoWindowsViewRouting: [{
326
+ type: ViewChildren,
327
+ args: [MapInfoWindow]
328
+ }] } });
329
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLW1hcC9jYS1tYXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtbWFwL2NhLW1hcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUVILFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFHTixTQUFTLEVBQ1QsWUFBWSxHQUNmLE1BQU0sZUFBZSxDQUFDO0FBRXZCLFNBQVM7QUFDVCxPQUFPLEVBQ0gsU0FBUyxFQUNULGdCQUFnQixFQUNoQixhQUFhLEdBRWhCLE1BQU0sc0JBQXNCLENBQUM7QUFFOUIsTUFBTTtBQUNOLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXhELFlBQVk7QUFDWixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUV0RyxPQUFPO0FBQ1AsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBTWhGLGVBQWU7QUFDZixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLCtEQUErRCxDQUFDOzs7O0FBZ0I3RixNQUFNLE9BQU8sY0FBYztJQUN2QixZQUFtQixFQUFxQjtRQUFyQixPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQUU5QixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUE2QixDQUFDO1FBUS9ELDZCQUF3QixHQUFrQixJQUFJLENBQUM7UUFFL0Msb0NBQStCLEdBQWtCLElB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QVMsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ2YsTUFBTTtzQkFBN0IsWUFBWTt1QkFBQyxRQUFRO2dCQUNPLGVBQWU7c0JBQTNDLFlBQVk7dUJBQUMsYUFBYTtnQkFDSSxhQUFhO3NCQUEzQyxZQUFZO3VCQUFDLGVBQWU7Z0JBRXRCLHNCQUFzQjtzQkFENUIsWUFBWTt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8vTW9kdWxlc1xuaW1wb3J0IHtcbiAgICBHb29nbGVNYXAsXG4gICAgR29vZ2xlTWFwc01vZHVsZSxcbiAgICBNYXBJbmZvV2luZG93LFxuICAgIE1hcE1hcmtlcixcbn0gZnJvbSAnQGFuZ3VsYXIvZ29vZ2xlLW1hcHMnO1xuXG4vL2ljb25cbmltcG9ydCB7IEFuZ3VsYXJTdmdJY29uTW9kdWxlIH0gZnJvbSAnYW5ndWxhci1zdmctaWNvbic7XG5cbi8vQ29tcG9uZW50c1xuaW1wb3J0IHsgQ2FNYXBEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJ0BzaGFyZWQvY29tcG9uZW50cy9jYS1tYXAtZHJvcGRvd24vY2EtbWFwLWRyb3Bkb3duLmNvbXBvbmVudCc7XG5cbi8vRW51bXNcbmltcG9ydCB7IEdvb2dsZU1hcEVudW0gfSBmcm9tICdAc2hhcmVkL2NvbXBvbmVudHMvY2EtbWFwL2VudW1zL2dvb2dsZS1tYXAuZW51bSc7XG4vL21vZGVsc1xuaW1wb3J0IHtcbiAgICBJTWFwTWFya2VycyxcbiAgICBJUm91dGVQYXRoLFxufSBmcm9tICdAc2hhcmVkL2NvbXBvbmVudHMvY2EtbWFwL21vZGVscy9tYXAubW9kZWwnO1xuLy9IZWxwZXJGdW50aW9uXG5pbXBvcnQgeyBNYXBIZWxwZXIgfSBmcm9tICdAc2hhcmVkL2NvbXBvbmVudHMvY2EtbWFwL3V0aWxzL2hlbHBlcnMvbWFwLmhlbHBlcic7XG5pbXBvcnQgeyBNYXBTdmdSb3V0ZXMgfSBmcm9tICdAc2hhcmVkL2NvbXBvbmVudHMvY2EtbWFwL3V0aWxzL21hcC1zdmctcm91dGVzL21hcC1zdmctcm91dGVzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcHAtY2EtbWFwJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2EtbWFwLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jYS1tYXAuY29tcG9uZW50LnNjc3MnXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgLy9Nb2R1bGVzXG4gICAgICAgIEdvb2dsZU1hcHNNb2R1bGUsXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgQW5ndWxhclN2Z0ljb25Nb2R1bGUsXG4gICAgICAgIC8vQ29tcG9uZW50c1xuICAgICAgICBDYU1hcERyb3Bkb3duQ29tcG9uZW50LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIENhTWFwQ29tcG9uZW50IHtcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuICAgIEBJbnB1dCgpIGRhdGE6IGFueTsgLy9sZWF2ZSB0aGlzIGFzIGFueSBmb3Igbm93XG4gICAgQE91dHB1dCgpIG1hcmtlckNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxnb29nbGUubWFwcy5NYXBNb3VzZUV2ZW50PigpO1xuICAgIEBWaWV3Q2hpbGQoR29vZ2xlTWFwLCB7IHN0YXRpYzogZmFsc2UgfSkgbWFwcyE6IEdvb2dsZU1hcDtcbiAgICBAVmlld0NoaWxkcmVuKCdtYXJrZXInKSBtYXJrZXIhOiBRdWVyeUxpc3Q8TWFwTWFya2VyPjtcbiAgICBAVmlld0NoaWxkcmVuKE1hcEluZm9XaW5kb3cpIGluZm9XaW5kb3dzVmlldyE6IFF1ZXJ5TGlzdDxNYXBJbmZvV2luZG93PjtcbiAgICBAVmlld0NoaWxkcmVuKCdtYXJrZXJSb3V0aW5nJykgbWFya2VyUm91dGluZyE6IFF1ZXJ5TGlzdDxNYXBNYXJrZXI+O1xuICAgIEBWaWV3Q2hpbGRyZW4oTWFwSW5mb1dpbmRvdylcbiAgICBwdWJsaWMgaW5mb1dpbmRvd3NWaWV3Um91dGluZyE6IFF1ZXJ5TGlzdDxNYXBJbmZvV2luZG93PjtcbiAgICBwdWJsaWMgY3VycmVudGx5T3BlbldpbmRvdyE6IE1hcEluZm9XaW5kb3cgfCBudWxsO1xuICAgIHB1YmxpYyBjdXJyZW50bHlPcGVuV2luZG93SW5kZXg6IG51bWJlciB8IG51bGwgPSBudWxsO1xuICAgIHB1YmxpYyBjdXJyZW50bHlPcGVuV2luZG93Um91dGluZyE6IE1hcEluZm9XaW5kb3cgfCBudWxsO1xuICAgIHB1YmxpYyBjdXJyZW50bHlPcGVuV2luZG93SW5kZXhSb3V0aW5nOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgICBwdWJsaWMgc2hvd0xhYmVsOiBib29sZWFuID0gdHJ1ZTtcbiAgICBwdWJsaWMgcHJldmlvdXNJY29uVXJsITogc3RyaW5nO1xuICAgIHB1YmxpYyBmb2N1c2VkSWNvbiE6IG51bWJlcjtcbiAgICBwdWJsaWMgcHJldmlvdXNJY29uVXJsUm91dGluZyE6IHN0cmluZztcbiAgICBwdWJsaWMgZm9jdXNlZEljb25Sb3V0aW5nITogbnVtYmVyO1xuICAgIHByaXZhdGUgZGlyZWN0aW9uU2VydmljZSA9IG5ldyBnb29nbGUubWFwcy5EaXJlY3Rpb25zU2VydmljZSgpO1xuICAgIHB1YmxpYyBkaXJlY3Rpb25zUmVuZGVyZXJzOiBnb29nbGUubWFwcy5EaXJlY3Rpb25zUmVuZGVyZXJbXSA9IFtdO1xuICAgIHB1YmxpYyBpbml0aWFsSWNvbnM6IHtcbiAgICAgICAgdXJsOiBzdHJpbmc7XG4gICAgICAgIGxhYmVsT3JpZ2luOiBnb29nbGUubWFwcy5Qb2ludCB8IG51bGw7XG4gICAgfVtdID0gW107XG4gICAgcHVibGljIGluaXRpYWxNYXJrZXJJY29uczoge1xuICAgICAgICB1cmw6IHN0cmluZztcbiAgICAgICAgbGFiZWxPcmlnaW46IGdvb2dsZS5tYXBzLlBvaW50IHwgbnVsbDtcbiAgICB9W10gPSBbXTtcblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLnN0b3JlSW5pdGlhbEljb25Gb3JNYXJrZXIoKTtcbiAgICAgICAgdGhpcy5zdG9yZUluaXRpYWxJY29uRm9yUm91dGluZ01hcmtlcigpO1xuICAgICAgICAvLyBSZXNldCBhbGwgaWNvbnMgdG8gdGhlaXIgaW5pdGlhbCBzdGF0ZSBvbiBwYWdlIGxvYWRcbiAgICAgICAgdGhpcy5yZXNldE1hcmtlcnNJY29ucygpO1xuICAgICAgICB0aGlzLnJlc2V0Um91dGluZ01hcmtlcnMoKTtcbiAgICAgICAgLy9EaXNwbGF5IHJvdXRlcyBmb3Igcm91dGluZ01hcmtlcnNcbiAgICAgICAgdGhpcy5jYWxjdWxhdGVBbmREaXNwbGF5Um91dGUoKTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIGlmIChjaGFuZ2VzWydyb3V0aW5nTWFya2VycyddKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGEucm91dGluZ01hcmtlcnMgPSBjaGFuZ2VzWydyb3V0aW5nTWFya2VycyddLmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdG9yZUluaXRpYWxJY29uRm9yTWFya2VyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGEhLm1hcmtlcnM/LmZvckVhY2goXG4gICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgbWFya2VyOiB7XG4gICAgICAgICAgICAgICAgICAgIGljb246IHsgdXJsOiBzdHJpbmc7IGxhYmVsT3JpZ2luOiBnb29nbGUubWFwcy5Qb2ludCB9O1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgaW5kZXg6IG51bWJlclxuICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pbml0aWFsTWFya2VySWNvbnNbaW5kZXhdID0ge1xuICAgICAgICAgICAgICAgICAgICB1cmw6IG1hcmtlci5pY29uIS51cmwsXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luOiBtYXJrZXIuaWNvbiEubGFiZWxPcmlnaW4gfHwgbnVsbCxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdG9yZUluaXRpYWxJY29uRm9yUm91dGluZ01hcmtlcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRhLnJvdXRpbmdNYXJrZXJzPy5mb3JFYWNoKFxuICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgIG1hcmtlcjoge1xuICAgICAgICAgICAgICAgICAgICBpY29uOiB7IHVybDogc3RyaW5nOyBsYWJlbE9yaWdpbj86IGdvb2dsZS5tYXBzLlBvaW50IH07XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBpbmRleDogbnVtYmVyXG4gICAgICAgICAgICApID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmluaXRpYWxJY29uc1tpbmRleF0gPSB7XG4gICAgICAgICAgICAgICAgICAgIHVybDogbWFya2VyLmljb24hLnVybCxcbiAgICAgICAgICAgICAgICAgICAgbGFiZWxPcmlnaW46IG1hcmtlci5pY29uIS5sYWJlbE9yaWdpbiB8fCBudWxsLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uTWFya2VyQ2xpY2soXG4gICAgICAgIGk6IG51bWJlcixcbiAgICAgICAgZXZlbnQ6IGdvb2dsZS5tYXBzLk1hcE1vdXNlRXZlbnQsXG4gICAgICAgIG1hcmtlcml0ZW06IElNYXBNYXJrZXJzXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGlmIChtYXJrZXJpdGVtPy5pbmZvV2luZG93Q29udGVudCkge1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvd0luZGV4ID09PSBpICYmXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93XG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbmZvV2luZG93ID0gdGhpcy5pbmZvV2luZG93c1ZpZXcudG9BcnJheSgpW2ldO1xuICAgICAgICAgICAgICAgIC8vIENsb3NlIHRoZSBjdXJyZW50bHkgb3BlbiBpbmZvIHdpbmRvdyBhbmQgcmVzZXQgdGhlIGluZGV4XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhLm1hcmtlcnMubWFwKFxuICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxPcmlnaW46IGdvb2dsZS5tYXBzLlBvaW50IHwgbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiBudW1iZXJcbiAgICAgICAgICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaW5kZXggPT09IGkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmljb24gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogdGhpcy5pbml0aWFsTWFya2VySWNvbnNbaW5kZXhdIS51cmwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5pbml0aWFsTWFya2VySWNvbnNbaW5kZXhdIS5sYWJlbE9yaWdpbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgIGluZm9XaW5kb3cuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRseU9wZW5XaW5kb3dJbmRleCA9IG51bGw7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hcmtlckluZGV4ID0gdGhpcy5tYXJrZXIudG9BcnJheSgpW2ldO1xuICAgICAgICAgICAgICAgIGNvbnN0IGluZm9XaW5kb3cgPSB0aGlzLmluZm9XaW5kb3dzVmlldy50b0FycmF5KClbaV07XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudGx5T3BlbldpbmRvdykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRseU9wZW5XaW5kb3cuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGluZm9XaW5kb3cpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhLm1hcmtlcnMubWFwKFxuICAgICAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW06IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBzdHJpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2FsZWRTaXplPzogZ29vZ2xlLm1hcHMuU2l6ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luPzogZ29vZ2xlLm1hcHMuUG9pbnQgfCBudWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXg6IG51bWJlclxuICAgICAgICAgICAgICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGluZGV4ID09PSBpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9jdXNlZEljb24gPSBpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dMYWJlbCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmljb24gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHRoaXMuaW5pdGlhbE1hcmtlckljb25zW2luZGV4XSEudXJsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NhbGVkU2l6ZTogbmV3IGdvb2dsZS5tYXBzLlNpemUoNzAsIDcwKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dMYWJlbCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uaWNvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogdGhpcy5pbml0aWFsTWFya2VySWNvbnNbaW5kZXhdIS51cmwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbE9yaWdpbjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmluaXRpYWxNYXJrZXJJY29uc1tpbmRleF0hXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sYWJlbE9yaWdpbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICAgICAgaW5mb1dpbmRvdy5vcGVuKG1hcmtlckluZGV4KTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93ID0gaW5mb1dpbmRvdztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93SW5kZXggPSBpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1hcmtlckNsaWNrLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzZXREaXJlY3Rpb25zT25NYXAoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm1hcHM/Lmdvb2dsZU1hcCkge1xuICAgICAgICAgICAgdGhpcy5kaXJlY3Rpb25zUmVuZGVyZXJzLmZvckVhY2goKHJlbmRlcmVyKSA9PlxuICAgICAgICAgICAgICAgIHJlbmRlcmVyLnNldE1hcCh0aGlzLm1hcHM/Lmdvb2dsZU1hcCEpXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGNhbGN1bGF0ZUFuZERpc3BsYXlSb3V0ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGF0YS5yb3V0ZVBhdGhzKSB7XG4gICAgICAgICAgICAvLyBDbGVhciBhbnkgcHJldmlvdXMgZGlyZWN0aW9ucyByZW5kZXJlcnNcbiAgICAgICAgICAgIHRoaXMuZGlyZWN0aW9uc1JlbmRlcmVycy5mb3JFYWNoKChyZW5kZXJlcikgPT5cbiAgICAgICAgICAgICAgICByZW5kZXJlci5zZXRNYXAobnVsbClcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLmRpcmVjdGlvbnNSZW5kZXJlcnMgPSBbXTtcblxuICAgICAgICAgICAgdGhpcy5kYXRhLnJvdXRlUGF0aHMhLmZvckVhY2goXG4gICAgICAgICAgICAgICAgKHJvdXRlOiB7XG4gICAgICAgICAgICAgICAgICAgIHBhdGg6IElSb3V0ZVBhdGhbXTtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlQ29sb3I6IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlT3BhY2l0eTogbnVtYmVyO1xuICAgICAgICAgICAgICAgIH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVxdWVzdDogZ29vZ2xlLm1hcHMuRGlyZWN0aW9uc1JlcXVlc3QgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcmlnaW46IHJvdXRlLnBhdGhbMF0sXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXN0aW5hdGlvbjogcm91dGUucGF0aFtyb3V0ZS5wYXRoLmxlbmd0aCAtIDFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgd2F5cG9pbnRzOiByb3V0ZS5wYXRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNsaWNlKDEsIHJvdXRlLnBhdGgubGVuZ3RoIC0gMSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWFwKChwb3NpdGlvbikgPT4gKHsgbG9jYXRpb246IHBvc2l0aW9uIH0pKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYXZlbE1vZGU6IGdvb2dsZS5tYXBzLlRyYXZlbE1vZGUuQklDWUNMSU5HLFxuICAgICAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGlyZWN0aW9uU2VydmljZS5yb3V0ZShyZXF1ZXN0LCAocmVzdWx0LCBzdGF0dXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0dXMgPT09IGdvb2dsZS5tYXBzLkRpcmVjdGlvbnNTdGF0dXMuT0sgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ/LnJvdXRlc1swXVxuICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGlyZWN0aW9uc1JlbmRlcmVyID1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IGdvb2dsZS5tYXBzLkRpcmVjdGlvbnNSZW5kZXJlcih7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwcmVzc0luZm9XaW5kb3dzOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcHJlc3NNYXJrZXJzOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlc2VydmVWaWV3cG9ydDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvbHlsaW5lT3B0aW9uczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZUNvbG9yOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZS5zdHJva2VDb2xvciB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHb29nbGVNYXBFbnVtLlNUUk9LRV9DT0xPUixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2VPcGFjaXR5OlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZS5zdHJva2VPcGFjaXR5IHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdvb2dsZU1hcEVudW0uU1RST0tFX09QQUNJVFksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3Rpb25zUmVuZGVyZXIuc2V0RGlyZWN0aW9ucyhyZXN1bHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGlyZWN0aW9uc1JlbmRlcmVycy5wdXNoKGRpcmVjdGlvbnNSZW5kZXJlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXREaXJlY3Rpb25zT25NYXAoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvblJvdXRpbmdNYXJrZXJDbGljayhcbiAgICAgICAgaTogbnVtYmVyLFxuICAgICAgICBldmVudDogZ29vZ2xlLm1hcHMuTWFwTW91c2VFdmVudCxcbiAgICAgICAgbWFya2VyaXRlbTogSU1hcE1hcmtlcnNcbiAgICApOiB2b2lkIHtcbiAgICAgICAgaWYgKG1hcmtlcml0ZW0/LmluZm9XaW5kb3dDb250ZW50KSB7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93SW5kZXhSb3V0aW5nID09PSBpICYmXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93Um91dGluZ1xuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaW5mb1dpbmRvdyA9IHRoaXMuaW5mb1dpbmRvd3NWaWV3Um91dGluZy50b0FycmF5KClbaV07XG4gICAgICAgICAgICAgICAgLy8gQ2xvc2UgdGhlIGN1cnJlbnRseSBvcGVuIGluZm8gd2luZG93IGFuZCByZXNldCB0aGUgaW5kZXhcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGEucm91dGluZ01hcmtlcnMubWFwKFxuICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbjoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHN0cmluZztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxPcmlnaW4/OiBnb29nbGUubWFwcy5Qb2ludCB8IG51bGw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBpbmRleDogbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGluZGV4ID09PSBpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5pY29uID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHRoaXMuaW5pdGlhbEljb25zW2luZGV4XSEudXJsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbE9yaWdpbjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaW5pdGlhbEljb25zW2luZGV4XSEubGFiZWxPcmlnaW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBpbmZvV2luZG93LmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93SW5kZXhSb3V0aW5nID0gbnVsbDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWFya2VySW5kZXggPSB0aGlzLm1hcmtlclJvdXRpbmcudG9BcnJheSgpW2ldO1xuICAgICAgICAgICAgICAgIGNvbnN0IGluZm9XaW5kb3cgPSB0aGlzLmluZm9XaW5kb3dzVmlld1JvdXRpbmcudG9BcnJheSgpW2ldO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnRseU9wZW5XaW5kb3dSb3V0aW5nKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvd1JvdXRpbmcuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGluZm9XaW5kb3cpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gUmVzdG9yZSB0aGUgcHJldmlvdXMgaWNvbiBmb3IgdGhlIHByZXZpb3VzbHkgZm9jdXNlZCByb3V0aW5nIG1hcmtlclxuICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvY3VzZWRJY29uUm91dGluZyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvY3VzZWRJY29uUm91dGluZyAhPT0gaVxuICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHByZXZpb3VzRm9jdXNlZEl0ZW0gPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5yb3V0aW5nTWFya2Vyc1t0aGlzLmZvY3VzZWRJY29uUm91dGluZ107XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocHJldmlvdXNGb2N1c2VkSXRlbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXZpb3VzRm9jdXNlZEl0ZW0uaWNvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiB0aGlzLmluaXRpYWxJY29uc1t0aGlzLmZvY3VzZWRJY29uUm91dGluZ11cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC51cmwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5pbml0aWFsSWNvbnNbdGhpcy5mb2N1c2VkSWNvblJvdXRpbmddXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhYmVsT3JpZ2luLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAvLyBVcGRhdGUgdGhlIGN1cnJlbnQgbWFya2VyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5yb3V0aW5nTWFya2Vycy5tYXAoXG4gICAgICAgICAgICAgICAgICAgICAgICAoaXRlbTogeyBpY29uOiB7IHVybDogc3RyaW5nIH0gfSwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpbmRleCA9PT0gaSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnByZXZpb3VzSWNvblVybFJvdXRpbmcgPSBpdGVtLmljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gaXRlbS5pY29uLnVybFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mb2N1c2VkSWNvblJvdXRpbmcgPSBpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dMYWJlbCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmljb24gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kYXRhLmlzVW5pdFZpZXdTdG9wcyB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5pc0RyaXZlck1pbGVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gaXRlbS5pY29uLnVybFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IE1hcFN2Z1JvdXRlcy5tYXJrZXJTdmdSb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNob3dMYWJlbCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgICAgIGluZm9XaW5kb3cub3BlbihtYXJrZXJJbmRleCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvd1JvdXRpbmcgPSBpbmZvV2luZG93O1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRseU9wZW5XaW5kb3dJbmRleFJvdXRpbmcgPSBpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1hcmtlckNsaWNrLmVtaXQoZXZlbnQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgdGhpcy5tYXBzLmdvb2dsZU1hcD8uYWRkTGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pbmZvV2luZG93c1ZpZXcuZm9yRWFjaCgod2luZG93OiBNYXBJbmZvV2luZG93KSA9PiB7XG4gICAgICAgICAgICAgICAgd2luZG93LmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50bHlPcGVuV2luZG93ID0gbnVsbDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5pbmZvV2luZG93c1ZpZXdSb3V0aW5nLmZvckVhY2goKHdpbmRvdzogTWFwSW5mb1dpbmRvdykgPT4ge1xuICAgICAgICAgICAgICAgIHdpbmRvdy5jbG9zZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudGx5T3BlbldpbmRvd1JvdXRpbmcgPSBudWxsO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLmRhdGEubWFya2Vycz8ubWFwKFxuICAgICAgICAgICAgICAgIChpdGVtOiB7IGljb246IHsgdXJsOiBzdHJpbmcgfSB9LCBpOiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGkgPT09IHRoaXMuZm9jdXNlZEljb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uaWNvbiA9IHsgdXJsOiBpdGVtLmljb24gPyBpdGVtLmljb24udXJsIDogJycgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgdGhpcy5kYXRhLnJvdXRpbmdNYXJrZXJzPy5tYXAoXG4gICAgICAgICAgICAgICAgKGl0ZW06IHsgaWNvbjogeyB1cmw6IHN0cmluZyB9IH0sIGk6IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaSA9PT0gdGhpcy5mb2N1c2VkSWNvblJvdXRpbmcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uaWNvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHRoaXMuaW5pdGlhbEljb25zW2ldLnVybCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyByZXNldE1hcmtlcnNJY29ucygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRhLm1hcmtlcnM/LmZvckVhY2goXG4gICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgbWFya2VyOiB7XG4gICAgICAgICAgICAgICAgICAgIGljb246IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHVybDogc3RyaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxPcmlnaW46IGdvb2dsZS5tYXBzLlBvaW50IHwgbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGluZGV4OiBudW1iZXJcbiAgICAgICAgICAgICkgPT4ge1xuICAgICAgICAgICAgICAgIG1hcmtlci5pY29uID0ge1xuICAgICAgICAgICAgICAgICAgICB1cmw6IHRoaXMuaW5pdGlhbE1hcmtlckljb25zW2luZGV4XS51cmwsXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsT3JpZ2luOiB0aGlzLmluaXRpYWxNYXJrZXJJY29uc1tpbmRleF0ubGFiZWxPcmlnaW4sXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlc2V0Um91dGluZ01hcmtlcnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0YS5yb3V0aW5nTWFya2Vycz8uZm9yRWFjaChcbiAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICBtYXJrZXI6IHtcbiAgICAgICAgICAgICAgICAgICAgaWNvbjogeyB1cmw6IHN0cmluZzsgbGFiZWxPcmlnaW4/OiBnb29nbGUubWFwcy5Qb2ludCB9O1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgaW5kZXg6IG51bWJlclxuICAgICAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICAgICAgbWFya2VyLmljb24gPSB7XG4gICAgICAgICAgICAgICAgICAgIHVybDogbWFya2VyLmljb24hLnVybCxcbiAgICAgICAgICAgICAgICAgICAgbGFiZWxPcmlnaW46IG1hcmtlci5pY29uIS5sYWJlbE9yaWdpbixcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbk1hcFJlYWR5KCk6IHtcbiAgICAgICAgZmlsbENvbG9yPzogc3RyaW5nO1xuICAgICAgICBzdHJva2VDb2xvcj86IHN0cmluZztcbiAgICAgICAgc3Ryb2tlV2VpZ2h0PzogbnVtYmVyO1xuICAgICAgICBmaWxsT3BhY2l0eT86IG51bWJlcjtcbiAgICB9IHwgdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRhdGEuc3RhdGVCb3VuZGFyaWVzVXJsKSB7XG4gICAgICAgICAgICBjb25zdCBzdGF0ZUJvdW5kYXJpZXNVcmwgPSB0aGlzLmRhdGEuc3RhdGVCb3VuZGFyaWVzVXJsLnVybDtcbiAgICAgICAgICAgIHRoaXMubWFwcy5nb29nbGVNYXA/LmRhdGEubG9hZEdlb0pzb24oc3RhdGVCb3VuZGFyaWVzVXJsKTtcblxuICAgICAgICAgICAgdGhpcy5tYXBzLmdvb2dsZU1hcD8uZGF0YS5zZXRTdHlsZSgoZmVhdHVyZSkgPT4ge1xuICAgICAgICAgICAgICAgIC8vbGVhdmUgdGhpcyBhcyBhbnkgZm9yIG5vd1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YXRlRGVuc2l0eSA9IGZlYXR1cmUuZ2V0UHJvcGVydHkoJ2RlbnNpdHknKTtcbiAgICAgICAgICAgICAgICBjb25zdCB7IGZpbGxDb2xvciwgZmlsbE9wYWNpdHkgfSA9XG4gICAgICAgICAgICAgICAgICAgIE1hcEhlbHBlci5nZXRGaWxsQ29sb3JGb3JTdGF0ZShcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlRGVuc2l0eSBhcyBudW1iZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRhdGEudmlld1xuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGxDb2xvcjogZmlsbENvbG9yLFxuICAgICAgICAgICAgICAgICAgICBzdHJva2VDb2xvcjogJyNFRUVFRUUnLFxuICAgICAgICAgICAgICAgICAgICBzdHJva2VXZWlnaHQ6IDAuNixcbiAgICAgICAgICAgICAgICAgICAgZmlsbE9wYWNpdHk6IGZpbGxPcGFjaXR5LFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBpZGVudGl0eShpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIGluZGV4O1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmRpcmVjdGlvbnNSZW5kZXJlcnMuZm9yRWFjaCgocmVuZGVyZXIpID0+IHJlbmRlcmVyLnNldE1hcChudWxsKSk7XG4gICAgfVxufVxuIiwiPGdvb2dsZS1tYXBcbiAgaGVpZ2h0PVwiNTAwcHhcIlxuICB3aWR0aD1cIjEwMCVcIlxuICBbem9vbV09XCJkYXRhLm1hcFpvb21cIlxuICBbY2VudGVyXT1cImRhdGEuY2VudGVyXCJcbiAgW29wdGlvbnNdPVwiZGF0YS5tYXBPcHRpb25zXCJcbiAgKGlkbGUpPVwib25NYXBSZWFkeSgpXCJcbj5cbiAgPG1hcC1tYXJrZXJcbiAgICAjbWFya2VyPVwibWFwTWFya2VyXCJcbiAgICAqbmdGb3I9XCJsZXQgbWFya2VyaXRlbSBvZiBkYXRhLm1hcmtlcnM7IGxldCBpID0gaW5kZXg7IHRyYWNrQnk6IGlkZW50aXR5XCJcbiAgICBbcG9zaXRpb25dPVwibWFya2VyaXRlbS5wb3NpdGlvblwiXG4gICAgW2ljb25dPVwibWFya2VyaXRlbS5pY29uIVwiXG4gICAgW2xhYmVsXT1cImZvY3VzZWRJY29uICE9PSBpID8gbWFya2VyaXRlbS5sYWJlbCEgOiAnJ1wiXG4gICAgW3RpdGxlXT1cIm1hcmtlcml0ZW0udGl0bGUhXCJcbiAgICBbb3B0aW9uc109XCJtYXJrZXJpdGVtLm9wdGlvbnMhXCJcbiAgICAobWFwQ2xpY2spPVwib25NYXJrZXJDbGljayhpLCAkZXZlbnQsIG1hcmtlcml0ZW0pXCJcbiAgPlxuICAgIDxtYXAtaW5mby13aW5kb3cgI2luZm9XaW5kb3dzVmlldz1cIm1hcEluZm9XaW5kb3dcIj5cbiAgICAgIDxhcHAtY2EtbWFwLWRyb3Bkb3duXG4gICAgICAgIFtpc0FjY2lkZW50TWFwXT1cImRhdGEuaXNBY2NpZGVudE1hcCA/PyBmYWxzZVwiXG4gICAgICA+PC9hcHAtY2EtbWFwLWRyb3Bkb3duPlxuICAgIDwvbWFwLWluZm8td2luZG93PlxuICA8L21hcC1tYXJrZXI+XG4gIDxtYXAtbWFya2VyXG4gICAgKm5nRm9yPVwibGV0IG1hcmtlciBvZiBkYXRhLmNsdXN0ZXJtYXJrZXJzOyBsZXQgaSA9IGluZGV4OyB0cmFja0J5OiBpZGVudGl0eVwiXG4gICAgW3Bvc2l0aW9uXT1cIm1hcmtlci5wb3NpdGlvblwiXG4gICAgW2ljb25dPVwibWFya2VyLmljb25cIlxuICAgIFtsYWJlbF09XCJtYXJrZXIubGFiZWwhXCJcbiAgICBbdGl0bGVdPVwibWFya2VyLnRpdGxlIVwiXG4gID5cbiAgPC9tYXAtbWFya2VyPlxuXG4gIDxtYXAtbWFya2VyXG4gICAgI21hcmtlclJvdXRpbmc9XCJtYXBNYXJrZXJcIlxuICAgICpuZ0Zvcj1cIlxuICAgICAgbGV0IG1hcmtlcml0ZW0gb2YgZGF0YS5yb3V0aW5nTWFya2VycztcbiAgICAgIGxldCBpID0gaW5kZXg7XG4gICAgICB0cmFja0J5OiBpZGVudGl0eVxuICAgIFwiXG4gICAgW3Bvc2l0aW9uXT1cIm1hcmtlcml0ZW0ucG9zaXRpb25cIlxuICAgIFtpY29uXT1cIm1hcmtlcml0ZW0uaWNvbiFcIlxuICAgIFtsYWJlbF09XCJmb2N1c2VkSWNvblJvdXRpbmcgIT09IGkgPyBtYXJrZXJpdGVtLmxhYmVsISA6ICcnXCJcbiAgICBbdGl0bGVdPVwibWFya2VyaXRlbS50aXRsZSFcIlxuICAgIFtvcHRpb25zXT1cIm1hcmtlcml0ZW0ub3B0aW9ucyFcIlxuICAgIChtYXBDbGljayk9XCJvblJvdXRpbmdNYXJrZXJDbGljayhpLCAkZXZlbnQsIG1hcmtlcml0ZW0pXCJcbiAgPlxuICAgIDxtYXAtaW5mby13aW5kb3cgI2luZm9XaW5kb3dzVmlld1JvdXRpbmc9XCJtYXBJbmZvV2luZG93XCI+XG4gICAgICA8YXBwLWNhLW1hcC1kcm9wZG93biBbaXNBY2NpZGVudE1hcF09XCJmYWxzZVwiPjwvYXBwLWNhLW1hcC1kcm9wZG93bj5cbiAgICA8L21hcC1pbmZvLXdpbmRvdz5cbiAgPC9tYXAtbWFya2VyPlxuPC9nb29nbGUtbWFwPlxuIl19
@@ -0,0 +1,6 @@
1
+ export var GoogleMapEnum;
2
+ (function (GoogleMapEnum) {
3
+ GoogleMapEnum[GoogleMapEnum["STROKE_OPACITY"] = 0.4] = "STROKE_OPACITY";
4
+ GoogleMapEnum["STROKE_COLOR"] = "blue";
5
+ })(GoogleMapEnum || (GoogleMapEnum = {}));
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLW1hcC5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtbWFwL2VudW1zL2dvb2dsZS1tYXAuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxhQUdYO0FBSEQsV0FBWSxhQUFhO0lBQ3ZCLHVFQUFvQixDQUFBO0lBQ3BCLHNDQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFIVyxhQUFhLEtBQWIsYUFBYSxRQUd4QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEdvb2dsZU1hcEVudW0ge1xuICBTVFJPS0VfT1BBQ0lUWSA9IDAuNCxcbiAgU1RST0tFX0NPTE9SID0gXCJibHVlXCIsXG59XG4iXX0=
@@ -0,0 +1,40 @@
1
+ export var ToolbarFilterStringEnum;
2
+ (function (ToolbarFilterStringEnum) {
3
+ // Filter types
4
+ ToolbarFilterStringEnum["DEPARTMENT_FILTER"] = "departmentFilter";
5
+ ToolbarFilterStringEnum["STATUS_FILTER"] = "statusFilter";
6
+ ToolbarFilterStringEnum["PM_FILTER"] = "pmFilter";
7
+ ToolbarFilterStringEnum["CATEGORY_FUEL_FILTER"] = "categoryFuelFilter";
8
+ ToolbarFilterStringEnum["CATEGORY_REPAIR_FILTER"] = "categoryRepairFilter";
9
+ ToolbarFilterStringEnum["TRUCK_FILTER"] = "truckFilter";
10
+ ToolbarFilterStringEnum["TRAILER_FILTER"] = "trailerFilter";
11
+ ToolbarFilterStringEnum["FUEL_STOP_FILTER"] = "fuelStopFilter";
12
+ ToolbarFilterStringEnum["BROKER_FILTER"] = "brokerFilter";
13
+ ToolbarFilterStringEnum["DRIVER_FILTER"] = "driverFilter";
14
+ ToolbarFilterStringEnum["TRUCK_TYPE_FILTER"] = "truckTypeFilter";
15
+ ToolbarFilterStringEnum["TRAILER_TYPE_FILTER"] = "trailerTypeFilter";
16
+ ToolbarFilterStringEnum["USER_FILTER"] = "userFilter";
17
+ ToolbarFilterStringEnum["STATE_FILTER"] = "stateFilter";
18
+ ToolbarFilterStringEnum["LABEL_FILTER"] = "labelFilter";
19
+ ToolbarFilterStringEnum["TIME_FILTER"] = "timeFilter";
20
+ ToolbarFilterStringEnum["INJURY_FILTER"] = "injuryFilter";
21
+ ToolbarFilterStringEnum["FATALITY_FILTER"] = "fatalityFilter";
22
+ ToolbarFilterStringEnum["VIOLATION_FILTER"] = "violationFilter";
23
+ ToolbarFilterStringEnum["LOCATION_FILTER"] = "locationFilter";
24
+ ToolbarFilterStringEnum["MONEY_FILTER"] = "moneyFilter";
25
+ ToolbarFilterStringEnum["MILES_FILTER"] = "milesFilter";
26
+ ToolbarFilterStringEnum["PAY_FILTER"] = "payFilter";
27
+ // State Filter
28
+ ToolbarFilterStringEnum["CANADA"] = "canada";
29
+ ToolbarFilterStringEnum["CANADA_2"] = "Canada";
30
+ // Empty string
31
+ ToolbarFilterStringEnum["EMPTY_STRING_PLACEHOLDER"] = "";
32
+ // Classes
33
+ ToolbarFilterStringEnum["ACTIVE"] = "active";
34
+ // Money filter
35
+ ToolbarFilterStringEnum["PENDING_STATUS"] = "pendingStatus";
36
+ ToolbarFilterStringEnum["ALL"] = "all";
37
+ ToolbarFilterStringEnum["MIN_VALUE"] = "0";
38
+ ToolbarFilterStringEnum["MAX_VALUE"] = "5,000";
39
+ })(ToolbarFilterStringEnum || (ToolbarFilterStringEnum = {}));
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1maWx0ZXItc3RyaW5nLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1tYXAvZW51bXMvdG9vbGJhci1maWx0ZXItc3RyaW5nLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksdUJBMENYO0FBMUNELFdBQVksdUJBQXVCO0lBQy9CLGVBQWU7SUFFZixpRUFBc0MsQ0FBQTtJQUN0Qyx5REFBOEIsQ0FBQTtJQUM5QixpREFBc0IsQ0FBQTtJQUN0QixzRUFBMkMsQ0FBQTtJQUMzQywwRUFBK0MsQ0FBQTtJQUMvQyx1REFBNEIsQ0FBQTtJQUM1QiwyREFBZ0MsQ0FBQTtJQUNoQyw4REFBbUMsQ0FBQTtJQUNuQyx5REFBOEIsQ0FBQTtJQUM5Qix5REFBOEIsQ0FBQTtJQUM5QixnRUFBcUMsQ0FBQTtJQUNyQyxvRUFBeUMsQ0FBQTtJQUN6QyxxREFBMEIsQ0FBQTtJQUMxQix1REFBNEIsQ0FBQTtJQUM1Qix1REFBNEIsQ0FBQTtJQUM1QixxREFBMEIsQ0FBQTtJQUMxQix5REFBOEIsQ0FBQTtJQUM5Qiw2REFBa0MsQ0FBQTtJQUNsQywrREFBb0MsQ0FBQTtJQUNwQyw2REFBa0MsQ0FBQTtJQUNsQyx1REFBNEIsQ0FBQTtJQUM1Qix1REFBNEIsQ0FBQTtJQUM1QixtREFBd0IsQ0FBQTtJQUV4QixlQUFlO0lBQ2YsNENBQWlCLENBQUE7SUFDakIsOENBQW1CLENBQUE7SUFFbkIsZUFBZTtJQUNmLHdEQUE2QixDQUFBO0lBRTdCLFVBQVU7SUFDViw0Q0FBaUIsQ0FBQTtJQUVqQixlQUFlO0lBQ2YsMkRBQWdDLENBQUE7SUFDaEMsc0NBQVcsQ0FBQTtJQUNYLDBDQUFlLENBQUE7SUFDZiw4Q0FBbUIsQ0FBQTtBQUN2QixDQUFDLEVBMUNXLHVCQUF1QixLQUF2Qix1QkFBdUIsUUEwQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gVG9vbGJhckZpbHRlclN0cmluZ0VudW0ge1xuICAgIC8vIEZpbHRlciB0eXBlc1xuXG4gICAgREVQQVJUTUVOVF9GSUxURVIgPSAnZGVwYXJ0bWVudEZpbHRlcicsXG4gICAgU1RBVFVTX0ZJTFRFUiA9ICdzdGF0dXNGaWx0ZXInLFxuICAgIFBNX0ZJTFRFUiA9ICdwbUZpbHRlcicsXG4gICAgQ0FURUdPUllfRlVFTF9GSUxURVIgPSAnY2F0ZWdvcnlGdWVsRmlsdGVyJyxcbiAgICBDQVRFR09SWV9SRVBBSVJfRklMVEVSID0gJ2NhdGVnb3J5UmVwYWlyRmlsdGVyJyxcbiAgICBUUlVDS19GSUxURVIgPSAndHJ1Y2tGaWx0ZXInLFxuICAgIFRSQUlMRVJfRklMVEVSID0gJ3RyYWlsZXJGaWx0ZXInLFxuICAgIEZVRUxfU1RPUF9GSUxURVIgPSAnZnVlbFN0b3BGaWx0ZXInLFxuICAgIEJST0tFUl9GSUxURVIgPSAnYnJva2VyRmlsdGVyJyxcbiAgICBEUklWRVJfRklMVEVSID0gJ2RyaXZlckZpbHRlcicsXG4gICAgVFJVQ0tfVFlQRV9GSUxURVIgPSAndHJ1Y2tUeXBlRmlsdGVyJyxcbiAgICBUUkFJTEVSX1RZUEVfRklMVEVSID0gJ3RyYWlsZXJUeXBlRmlsdGVyJyxcbiAgICBVU0VSX0ZJTFRFUiA9ICd1c2VyRmlsdGVyJyxcbiAgICBTVEFURV9GSUxURVIgPSAnc3RhdGVGaWx0ZXInLFxuICAgIExBQkVMX0ZJTFRFUiA9ICdsYWJlbEZpbHRlcicsXG4gICAgVElNRV9GSUxURVIgPSAndGltZUZpbHRlcicsXG4gICAgSU5KVVJZX0ZJTFRFUiA9ICdpbmp1cnlGaWx0ZXInLFxuICAgIEZBVEFMSVRZX0ZJTFRFUiA9ICdmYXRhbGl0eUZpbHRlcicsXG4gICAgVklPTEFUSU9OX0ZJTFRFUiA9ICd2aW9sYXRpb25GaWx0ZXInLFxuICAgIExPQ0FUSU9OX0ZJTFRFUiA9ICdsb2NhdGlvbkZpbHRlcicsXG4gICAgTU9ORVlfRklMVEVSID0gJ21vbmV5RmlsdGVyJyxcbiAgICBNSUxFU19GSUxURVIgPSAnbWlsZXNGaWx0ZXInLFxuICAgIFBBWV9GSUxURVIgPSAncGF5RmlsdGVyJyxcblxuICAgIC8vIFN0YXRlIEZpbHRlclxuICAgIENBTkFEQSA9ICdjYW5hZGEnLFxuICAgIENBTkFEQV8yID0gJ0NhbmFkYScsXG5cbiAgICAvLyBFbXB0eSBzdHJpbmdcbiAgICBFTVBUWV9TVFJJTkdfUExBQ0VIT0xERVIgPSAnJyxcblxuICAgIC8vIENsYXNzZXNcbiAgICBBQ1RJVkUgPSAnYWN0aXZlJyxcblxuICAgIC8vIE1vbmV5IGZpbHRlclxuICAgIFBFTkRJTkdfU1RBVFVTID0gJ3BlbmRpbmdTdGF0dXMnLFxuICAgIEFMTCA9ICdhbGwnLFxuICAgIE1JTl9WQUxVRSA9ICcwJyxcbiAgICBNQVhfVkFMVUUgPSAnNSwwMDAnLFxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtbWFwL21vZGVscy9tYXAubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgSVJvdXRlUGF0aCB7XG4gIGxhdDogbnVtYmVyO1xuICBsbmc6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTWFwU3RvcmllcyB7XG4gIGRhdGE6IHtcbiAgICBjZW50ZXI6IElSb3V0ZVBhdGg7XG4gICAgbWFwWm9vbTogbnVtYmVyO1xuICAgIG1hcmtlcnM/OiBJTWFwTWFya2Vyc1tdO1xuICAgIGNsdXN0ZXJtYXJrZXJzPzogSU1hcE1hcmtlcnNbXTtcbiAgICByb3V0aW5nTWFya2Vycz86IElNYXBNYXJrZXJzW107XG4gICAgbWFwT3B0aW9uczogSU1hcE9wdGlvbnM7XG4gICAgcm91dGVQYXRoPzogSU1hcFJvdXRlUGF0aFtdO1xuICAgIGlzQWNjaWRlbnRNYXA/OiBib29sZWFuO1xuICAgIHN0YXRlQm91bmRhcmllc1VybD86IHsgdXJsOiBzdHJpbmcgfTtcbiAgICB2aWV3Pzogc3RyaW5nO1xuICAgIGlzVW5pdFZpZXdTdG9wcz86IGJvb2xlYW47XG4gICAgaXNEcml2ZXJNaWxlcz86IGJvb2xlYW47XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU1hcE9wdGlvbnMge1xuICBtYXBPcHRpb25zOiB7XG4gICAgcmVzdHJpY3Rpb246IHtcbiAgICAgIGxhdExuZ0JvdW5kczoge1xuICAgICAgICBub3J0aDogbnVtYmVyO1xuICAgICAgICBzb3V0aDogbnVtYmVyO1xuICAgICAgICBlYXN0OiBudW1iZXI7XG4gICAgICAgIHdlc3Q6IG51bWJlcjtcbiAgICAgIH07XG4gICAgICBzdHJpY3RCb3VuZHM6IGJvb2xlYW47XG4gICAgfTtcbiAgICBzdHJlZXRWaWV3Q29udHJvbDogYm9vbGVhbjtcbiAgICBzdHlsZXM6IElNYXBTdHlsZXNbXTtcbiAgICBrZXlib2FyZFNob3J0Y3V0czogYm9vbGVhbjtcbiAgICBwYW5Db250cm9sOiBib29sZWFuO1xuICAgIGdlc3R1cmVIYW5kbGluZzogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElNYXBTdHlsZXMge1xuICBlbGVtZW50VHlwZTogc3RyaW5nO1xuICBzdHlsZXJzOiBJTWFwQ29sb3JbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTWFwQ29sb3Ige1xuICBjb2xvcjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElNYXBNYXJrZXJzIHtcbiAgcG9zaXRpb246IElSb3V0ZVBhdGg7XG4gIGljb24/OiBJTWFwTWFya2Vyc0ljb247XG4gIGluZm9XaW5kb3dDb250ZW50Pzogc3RyaW5nO1xuICBsYWJlbD86IElNYXJrZXJMYWJlbDtcbiAgbGFiZWxPcmlnaW4/OiB7IHg6IG51bWJlcjsgeTogbnVtYmVyIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSU1hcE1hcmtlcnNJY29uIHtcbiAgdXJsOiBzdHJpbmc7XG4gIGxhYmVsT3JpZ2luPzogeyB4OiBudW1iZXI7IHk6IG51bWJlciB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElNYXJrZXJMYWJlbCB7XG4gIHRleHQ6IHN0cmluZztcbiAgZm9udFNpemU/OiBzdHJpbmc7XG4gIGNvbG9yPzogc3RyaW5nO1xuICBmb250V2VpZ2h0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElNYXBSb3V0ZVBhdGgge1xuICBwYXRoOiBJUm91dGVQYXRoW107XG4gIHN0cm9rZUNvbG9yOiBzdHJpbmc7XG59XG4iXX0=
@@ -0,0 +1,87 @@
1
+ export class MapHelper {
2
+ static { this.getIconForUnitViewStops = (color, id) => {
3
+ const svgTemplate = `<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="31" height="34" viewBox="0 0 44 48.364">
4
+ <defs>
5
+ <filter id="Path_41824" x="0" y="0" width="44" height="48.364" filterUnits="userSpaceOnUse">
6
+ <feOffset input="SourceAlpha" />
7
+ <feGaussianBlur stdDeviation="2" result="blur"/>
8
+ <feFlood flood-opacity="0.149" />
9
+ <feComposite operator="in" in2="blur"/>
10
+ <feComposite in="SourceGraphic" />
11
+ </filter>
12
+ </defs>
13
+ <g id="Group_103737" data-name="Group 103737" transform="translate(-1095 -945)">
14
+ <circle id="Ellipse_9165" data-name="Ellipse 9165" cx="4" cy="4" r="6" transform="translate(1113 983)" fill="${color}"/>
15
+ <circle id="Ellipse_9166" data-name="Ellipse 9166" cx="2" cy="2" r="2"
16
+ transform="translate(1115 985.5)" fill="#fff" />
17
+ </g>
18
+ <g transform="matrix(1, 0, 0, 1, 0, 0)" filter="url(#Path_41824)">
19
+ <path id="Path_41824-2" data-name="Path 41824" d="M32,15.962A15.956,15.956,0,0,1,24.942,29.2c-.035.026-.551.345-.755.479-4.9,3.113-6.863,5.215-7.654,6.394a.641.641,0,0,1-.886.18.665.665,0,0,1-.18-.18c-.791-1.18-2.762-3.281-7.654-6.394-.223-.138-.719-.452-.755-.479A15.975,15.975,0,1,1,32,15.962"
20
+ transform="translate(6 6)" fill="#fff"/>
21
+ </g>
22
+ <circle id="Ellipse_9255" data-name="Ellipse 9255" cx="13" cy="13" r="13" transform="translate(9 9.001)" fill= "${color}"/>
23
+ <text dominant-baseline="middle" text-anchor="middle" id="_1" data-name="1" transform="translate(22 27.001)" fill="#fff" font-size="14"
24
+ font-family="Montserrat-Bold, Montserrat" font-weight="700"><tspan y="-3">${id}</tspan>
25
+ </text>
26
+ </svg>`;
27
+ const url = "data:image/svg+xml;charset=UTF-8," + encodeURIComponent(svgTemplate);
28
+ return url;
29
+ }; }
30
+ static { this.getIconForDriveMiles = (color, id) => {
31
+ const svgTemplate = `<svg width="18" height="25" viewBox="0 0 18 25" fill="none" xmlns="http://www.w3.org/2000/svg">
32
+ <circle cx="9" cy="22" r="3" fill="${color}"/>
33
+ <circle cx="9" cy="22" r="1.5" fill="white"/>
34
+ <path d="M18 9.09915C18 11.3366 17.166 13.4937 15.66 15.1491L9.39649 21.8286C9.18153 22.0572 8.81849 22.0572 8.60352 21.8286L2.33997 15.1491C-1.85302 10.5362 -0.359978 2.75614 6.409 0.414645C7.55604 0.0176113 8.79346 -0.0978672 9.99354 0.0836513C14.9535 0.833651 18.0015 4.81961 18 9.09915Z" fill="${color}"/>
35
+ <circle cx="9" cy="9" r="7" fill="white"/>
36
+ <text x="9" y="9" text-anchor="middle" fill="${color}" font-size="8" font-family="Montserrat-Bold, Montserrat" font-weight="600" dy=".3em">${id}</text>
37
+ </svg>`;
38
+ const url = "data:image/svg+xml;charset=UTF-8," + encodeURIComponent(svgTemplate);
39
+ return url;
40
+ }; }
41
+ static getLocationIcon(color) {
42
+ let svgTemplate = `<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13"><g transform="translate(-181 -295)"><rect width="13" height="13" rx="6.5" transform="translate(181 295)" fill="${color}"/><rect width="5" height="5" rx="2.5" transform="translate(185 299)" fill="#fff"/></g></svg>`;
43
+ const url = "data:image/svg+xml;charset=UTF-8," + encodeURIComponent(svgTemplate);
44
+ return url;
45
+ }
46
+ static getFillColorForState(stateDensity, View) {
47
+ let fillColor = "#EEEEEE";
48
+ let fillOpacity = 1;
49
+ const getFleetViewColor = (density) => {
50
+ if (density < 50)
51
+ return { fillColor: "#EF5350", fillOpacity: 0.8 };
52
+ else if (density < 100)
53
+ return { fillColor: "#EF5350", fillOpacity: 1 };
54
+ else if (density < 500)
55
+ return { fillColor: "#00967E", fillOpacity: 0.8 };
56
+ else if (density < 1000)
57
+ return { fillColor: "#00967E", fillOpacity: 1 };
58
+ return { fillColor: "#EEEEEE", fillOpacity: 1 };
59
+ };
60
+ const getUnitViewColor = (density) => {
61
+ if (density < 50)
62
+ return { fillColor: "#FFA726", fillOpacity: 0.3 };
63
+ else if (density < 100)
64
+ return { fillColor: "#FFA726", fillOpacity: 0.6 };
65
+ else if (density < 500)
66
+ return { fillColor: "#FFA726", fillOpacity: 0.9 };
67
+ else if (density < 1000)
68
+ return { fillColor: "#FFA726", fillOpacity: 1 };
69
+ return { fillColor: "#EEEEEE", fillOpacity: 1 };
70
+ };
71
+ switch (View) {
72
+ case "fleetView":
73
+ ({ fillColor, fillOpacity } = getFleetViewColor(stateDensity));
74
+ break;
75
+ case "unitView":
76
+ ({ fillColor, fillOpacity } = getUnitViewColor(stateDensity));
77
+ break;
78
+ default:
79
+ break;
80
+ }
81
+ return {
82
+ fillColor: fillColor,
83
+ fillOpacity: fillOpacity,
84
+ };
85
+ }
86
+ }
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLmhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLW1hcC91dGlscy9oZWxwZXJzL21hcC5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFNBQVM7YUFDYiw0QkFBdUIsR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFtQixFQUFFLEVBQUU7UUFDdEUsTUFBTSxXQUFXLEdBQUc7Ozs7Ozs7Ozs7O3NKQVc4SCxLQUFLOzs7Ozs7OztnSkFRWCxLQUFLOztnSEFFckMsRUFBRTs7bUNBRS9FLENBQUM7UUFDaEMsTUFBTSxHQUFHLEdBQ1AsbUNBQW1DLEdBQUcsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDeEUsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDLENBQUM7YUFFSyx5QkFBb0IsR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFtQixFQUFFLEVBQUU7UUFDbkUsTUFBTSxXQUFXLEdBQUc7NkNBQ3FCLEtBQUs7O29UQUVrUSxLQUFLOzt3REFFalEsS0FBSyx5RkFBeUYsRUFBRTthQUMzSSxDQUFDO1FBQ1YsTUFBTSxHQUFHLEdBQ1AsbUNBQW1DLEdBQUcsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDeEUsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDLENBQUM7SUFFRixNQUFNLENBQUMsZUFBZSxDQUFDLEtBQWE7UUFDbEMsSUFBSSxXQUFXLEdBQUcscU1BQXFNLEtBQUssK0ZBQStGLENBQUM7UUFDNVQsTUFBTSxHQUFHLEdBQ1AsbUNBQW1DLEdBQUcsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDeEUsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsTUFBTSxDQUFDLG9CQUFvQixDQUN6QixZQUFvQixFQUNwQixJQUFZO1FBRVosSUFBSSxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzFCLElBQUksV0FBVyxHQUFHLENBQUMsQ0FBQztRQUVwQixNQUFNLGlCQUFpQixHQUFHLENBQUMsT0FBZSxFQUFFLEVBQUU7WUFDNUMsSUFBSSxPQUFPLEdBQUcsRUFBRTtnQkFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsR0FBRyxFQUFFLENBQUM7aUJBQy9ELElBQUksT0FBTyxHQUFHLEdBQUc7Z0JBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLENBQUMsRUFBRSxDQUFDO2lCQUNuRSxJQUFJLE9BQU8sR0FBRyxHQUFHO2dCQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQUUsQ0FBQztpQkFDckUsSUFBSSxPQUFPLEdBQUcsSUFBSTtnQkFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDekUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQ2xELENBQUMsQ0FBQztRQUVGLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxPQUFlLEVBQUUsRUFBRTtZQUMzQyxJQUFJLE9BQU8sR0FBRyxFQUFFO2dCQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQUUsQ0FBQztpQkFDL0QsSUFBSSxPQUFPLEdBQUcsR0FBRztnQkFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsR0FBRyxFQUFFLENBQUM7aUJBQ3JFLElBQUksT0FBTyxHQUFHLEdBQUc7Z0JBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBRSxDQUFDO2lCQUNyRSxJQUFJLE9BQU8sR0FBRyxJQUFJO2dCQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUN6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDbEQsQ0FBQyxDQUFDO1FBRUYsUUFBUSxJQUFJLEVBQUU7WUFDWixLQUFLLFdBQVc7Z0JBQ2QsQ0FBQyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsR0FBRyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO2dCQUMvRCxNQUFNO1lBQ1IsS0FBSyxVQUFVO2dCQUNiLENBQUMsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztnQkFDOUQsTUFBTTtZQUNSO2dCQUNFLE1BQU07U0FDVDtRQUNELE9BQU87WUFDTCxTQUFTLEVBQUUsU0FBUztZQUNwQixXQUFXLEVBQUUsV0FBVztTQUN6QixDQUFDO0lBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBNYXBIZWxwZXIge1xuICBzdGF0aWMgZ2V0SWNvbkZvclVuaXRWaWV3U3RvcHMgPSAoY29sb3I6IHN0cmluZywgaWQ6IG51bWJlciB8IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IHN2Z1RlbXBsYXRlID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiIHdpZHRoPVwiMzFcIiBoZWlnaHQ9XCIzNFwiIHZpZXdCb3g9XCIwIDAgNDQgNDguMzY0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlsdGVyICBpZD1cIlBhdGhfNDE4MjRcIiAgeD1cIjBcIiAgeT1cIjBcIiAgd2lkdGg9XCI0NFwiICBoZWlnaHQ9XCI0OC4zNjRcIiBmaWx0ZXJVbml0cz1cInVzZXJTcGFjZU9uVXNlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZU9mZnNldCBpbnB1dD1cIlNvdXJjZUFscGhhXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlR2F1c3NpYW5CbHVyICBzdGREZXZpYXRpb249XCIyXCIgIHJlc3VsdD1cImJsdXJcIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUZsb29kIGZsb29kLW9wYWNpdHk9XCIwLjE0OVwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUNvbXBvc2l0ZSAgb3BlcmF0b3I9XCJpblwiICBpbjI9XCJibHVyXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb21wb3NpdGUgaW49XCJTb3VyY2VHcmFwaGljXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZpbHRlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnICBpZD1cIkdyb3VwXzEwMzczN1wiICBkYXRhLW5hbWU9XCJHcm91cCAxMDM3MzdcIiB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoLTEwOTUgLTk0NSlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2lyY2xlIGlkPVwiRWxsaXBzZV85MTY1XCIgIGRhdGEtbmFtZT1cIkVsbGlwc2UgOTE2NVwiICBjeD1cIjRcIiAgY3k9XCI0XCIgIHI9XCI2XCIgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgxMTEzIDk4MylcIiBmaWxsPVwiJHtjb2xvcn1cIi8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNpcmNsZSAgaWQ9XCJFbGxpcHNlXzkxNjZcIiAgZGF0YS1uYW1lPVwiRWxsaXBzZSA5MTY2XCIgY3g9XCIyXCIgIGN5PVwiMlwiICByPVwiMlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgxMTE1IDk4NS41KVwiICBmaWxsPVwiI2ZmZlwiIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyAgdHJhbnNmb3JtPVwibWF0cml4KDEsIDAsIDAsIDEsIDAsIDApXCIgZmlsdGVyPVwidXJsKCNQYXRoXzQxODI0KVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGlkPVwiUGF0aF80MTgyNC0yXCIgZGF0YS1uYW1lPVwiUGF0aCA0MTgyNFwiIGQ9XCJNMzIsMTUuOTYyQTE1Ljk1NiwxNS45NTYsMCwwLDEsMjQuOTQyLDI5LjJjLS4wMzUuMDI2LS41NTEuMzQ1LS43NTUuNDc5LTQuOSwzLjExMy02Ljg2Myw1LjIxNS03LjY1NCw2LjM5NGEuNjQxLjY0MSwwLDAsMS0uODg2LjE4LjY2NS42NjUsMCwwLDEtLjE4LS4xOGMtLjc5MS0xLjE4LTIuNzYyLTMuMjgxLTcuNjU0LTYuMzk0LS4yMjMtLjEzOC0uNzE5LS40NTItLjc1NS0uNDc5QTE1Ljk3NSwxNS45NzUsMCwxLDEsMzIsMTUuOTYyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNiA2KVwiIGZpbGw9XCIjZmZmXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNpcmNsZSBpZD1cIkVsbGlwc2VfOTI1NVwiIGRhdGEtbmFtZT1cIkVsbGlwc2UgOTI1NVwiIGN4PVwiMTNcIiBjeT1cIjEzXCIgcj1cIjEzXCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDkgOS4wMDEpXCIgZmlsbD0gXCIke2NvbG9yfVwiLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGV4dCBkb21pbmFudC1iYXNlbGluZT1cIm1pZGRsZVwiIHRleHQtYW5jaG9yPVwibWlkZGxlXCIgaWQ9XCJfMVwiIGRhdGEtbmFtZT1cIjFcIiB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoMjIgMjcuMDAxKVwiIGZpbGw9XCIjZmZmXCIgZm9udC1zaXplPVwiMTRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk9XCJNb250c2VycmF0LUJvbGQsIE1vbnRzZXJyYXRcIiBmb250LXdlaWdodD1cIjcwMFwiPjx0c3BhbiB5PVwiLTNcIj4ke2lkfTwvdHNwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RleHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+YDtcbiAgICBjb25zdCB1cmwgPVxuICAgICAgXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCxcIiArIGVuY29kZVVSSUNvbXBvbmVudChzdmdUZW1wbGF0ZSk7XG4gICAgcmV0dXJuIHVybDtcbiAgfTtcblxuICBzdGF0aWMgZ2V0SWNvbkZvckRyaXZlTWlsZXMgPSAoY29sb3I6IHN0cmluZywgaWQ6IG51bWJlciB8IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IHN2Z1RlbXBsYXRlID0gYDxzdmcgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjI1XCIgdmlld0JveD1cIjAgMCAxOCAyNVwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICA8Y2lyY2xlIGN4PVwiOVwiIGN5PVwiMjJcIiByPVwiM1wiIGZpbGw9XCIke2NvbG9yfVwiLz5cbiAgICAgICAgPGNpcmNsZSBjeD1cIjlcIiBjeT1cIjIyXCIgcj1cIjEuNVwiIGZpbGw9XCJ3aGl0ZVwiLz5cbiAgICAgICAgPHBhdGggZD1cIk0xOCA5LjA5OTE1QzE4IDExLjMzNjYgMTcuMTY2IDEzLjQ5MzcgMTUuNjYgMTUuMTQ5MUw5LjM5NjQ5IDIxLjgyODZDOS4xODE1MyAyMi4wNTcyIDguODE4NDkgMjIuMDU3MiA4LjYwMzUyIDIxLjgyODZMMi4zMzk5NyAxNS4xNDkxQy0xLjg1MzAyIDEwLjUzNjIgLTAuMzU5OTc4IDIuNzU2MTQgNi40MDkgMC40MTQ2NDVDNy41NTYwNCAwLjAxNzYxMTMgOC43OTM0NiAtMC4wOTc4NjcyIDkuOTkzNTQgMC4wODM2NTEzQzE0Ljk1MzUgMC44MzM2NTEgMTguMDAxNSA0LjgxOTYxIDE4IDkuMDk5MTVaXCIgZmlsbD1cIiR7Y29sb3J9XCIvPlxuICAgICAgICA8Y2lyY2xlIGN4PVwiOVwiIGN5PVwiOVwiIHI9XCI3XCIgZmlsbD1cIndoaXRlXCIvPlxuICAgICAgICA8dGV4dCB4PVwiOVwiIHk9XCI5XCIgIHRleHQtYW5jaG9yPVwibWlkZGxlXCIgZmlsbD1cIiR7Y29sb3J9XCIgZm9udC1zaXplPVwiOFwiIGZvbnQtZmFtaWx5PVwiTW9udHNlcnJhdC1Cb2xkLCBNb250c2VycmF0XCIgZm9udC13ZWlnaHQ9XCI2MDBcIiBkeT1cIi4zZW1cIj4ke2lkfTwvdGV4dD5cbiAgICAgIDwvc3ZnPmA7XG4gICAgY29uc3QgdXJsID1cbiAgICAgIFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsXCIgKyBlbmNvZGVVUklDb21wb25lbnQoc3ZnVGVtcGxhdGUpO1xuICAgIHJldHVybiB1cmw7XG4gIH07XG5cbiAgc3RhdGljIGdldExvY2F0aW9uSWNvbihjb2xvcjogc3RyaW5nKSB7XG4gICAgbGV0IHN2Z1RlbXBsYXRlID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTNcIiBoZWlnaHQ9XCIxM1wiIHZpZXdCb3g9XCIwIDAgMTMgMTNcIj48ZyB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoLTE4MSAtMjk1KVwiPjxyZWN0IHdpZHRoPVwiMTNcIiBoZWlnaHQ9XCIxM1wiIHJ4PVwiNi41XCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDE4MSAyOTUpXCIgZmlsbD1cIiR7Y29sb3J9XCIvPjxyZWN0IHdpZHRoPVwiNVwiIGhlaWdodD1cIjVcIiByeD1cIjIuNVwiIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgxODUgMjk5KVwiIGZpbGw9XCIjZmZmXCIvPjwvZz48L3N2Zz5gO1xuICAgIGNvbnN0IHVybCA9XG4gICAgICBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PVVURi04LFwiICsgZW5jb2RlVVJJQ29tcG9uZW50KHN2Z1RlbXBsYXRlKTtcbiAgICByZXR1cm4gdXJsO1xuICB9XG5cbiAgc3RhdGljIGdldEZpbGxDb2xvckZvclN0YXRlKFxuICAgIHN0YXRlRGVuc2l0eTogbnVtYmVyLFxuICAgIFZpZXc6IHN0cmluZ1xuICApOiB7IGZpbGxDb2xvcjogc3RyaW5nOyBmaWxsT3BhY2l0eTogbnVtYmVyIH0ge1xuICAgIGxldCBmaWxsQ29sb3IgPSBcIiNFRUVFRUVcIjtcbiAgICBsZXQgZmlsbE9wYWNpdHkgPSAxO1xuXG4gICAgY29uc3QgZ2V0RmxlZXRWaWV3Q29sb3IgPSAoZGVuc2l0eTogbnVtYmVyKSA9PiB7XG4gICAgICBpZiAoZGVuc2l0eSA8IDUwKSByZXR1cm4geyBmaWxsQ29sb3I6IFwiI0VGNTM1MFwiLCBmaWxsT3BhY2l0eTogMC44IH07XG4gICAgICBlbHNlIGlmIChkZW5zaXR5IDwgMTAwKSByZXR1cm4geyBmaWxsQ29sb3I6IFwiI0VGNTM1MFwiLCBmaWxsT3BhY2l0eTogMSB9O1xuICAgICAgZWxzZSBpZiAoZGVuc2l0eSA8IDUwMCkgcmV0dXJuIHsgZmlsbENvbG9yOiBcIiMwMDk2N0VcIiwgZmlsbE9wYWNpdHk6IDAuOCB9O1xuICAgICAgZWxzZSBpZiAoZGVuc2l0eSA8IDEwMDApIHJldHVybiB7IGZpbGxDb2xvcjogXCIjMDA5NjdFXCIsIGZpbGxPcGFjaXR5OiAxIH07XG4gICAgICByZXR1cm4geyBmaWxsQ29sb3I6IFwiI0VFRUVFRVwiLCBmaWxsT3BhY2l0eTogMSB9O1xuICAgIH07XG5cbiAgICBjb25zdCBnZXRVbml0Vmlld0NvbG9yID0gKGRlbnNpdHk6IG51bWJlcikgPT4ge1xuICAgICAgaWYgKGRlbnNpdHkgPCA1MCkgcmV0dXJuIHsgZmlsbENvbG9yOiBcIiNGRkE3MjZcIiwgZmlsbE9wYWNpdHk6IDAuMyB9O1xuICAgICAgZWxzZSBpZiAoZGVuc2l0eSA8IDEwMCkgcmV0dXJuIHsgZmlsbENvbG9yOiBcIiNGRkE3MjZcIiwgZmlsbE9wYWNpdHk6IDAuNiB9O1xuICAgICAgZWxzZSBpZiAoZGVuc2l0eSA8IDUwMCkgcmV0dXJuIHsgZmlsbENvbG9yOiBcIiNGRkE3MjZcIiwgZmlsbE9wYWNpdHk6IDAuOSB9O1xuICAgICAgZWxzZSBpZiAoZGVuc2l0eSA8IDEwMDApIHJldHVybiB7IGZpbGxDb2xvcjogXCIjRkZBNzI2XCIsIGZpbGxPcGFjaXR5OiAxIH07XG4gICAgICByZXR1cm4geyBmaWxsQ29sb3I6IFwiI0VFRUVFRVwiLCBmaWxsT3BhY2l0eTogMSB9O1xuICAgIH07XG5cbiAgICBzd2l0Y2ggKFZpZXcpIHtcbiAgICAgIGNhc2UgXCJmbGVldFZpZXdcIjpcbiAgICAgICAgKHsgZmlsbENvbG9yLCBmaWxsT3BhY2l0eSB9ID0gZ2V0RmxlZXRWaWV3Q29sb3Ioc3RhdGVEZW5zaXR5KSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBcInVuaXRWaWV3XCI6XG4gICAgICAgICh7IGZpbGxDb2xvciwgZmlsbE9wYWNpdHkgfSA9IGdldFVuaXRWaWV3Q29sb3Ioc3RhdGVEZW5zaXR5KSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBmaWxsQ29sb3I6IGZpbGxDb2xvcixcbiAgICAgIGZpbGxPcGFjaXR5OiBmaWxsT3BhY2l0eSxcbiAgICB9O1xuICB9XG59XG4iXX0=
@@ -0,0 +1,5 @@
1
+ export class MapSvgRoutes {
2
+ static { this.markerSvgRoute = "svg/map/routing_marker.svg"; }
3
+ static { this.phone = "svg/map/phone.svg"; }
4
+ }
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXN2Zy1yb3V0ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1tYXAvdXRpbHMvbWFwLXN2Zy1yb3V0ZXMvbWFwLXN2Zy1yb3V0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFlBQVk7YUFDaEIsbUJBQWMsR0FBVyw0QkFBNEIsQ0FBQzthQUN0RCxVQUFLLEdBQVcsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgTWFwU3ZnUm91dGVzIHtcbiAgc3RhdGljIG1hcmtlclN2Z1JvdXRlOiBzdHJpbmcgPSBcInN2Zy9tYXAvcm91dGluZ19tYXJrZXIuc3ZnXCI7XG4gIHN0YXRpYyBwaG9uZTogc3RyaW5nID0gXCJzdmcvbWFwL3Bob25lLnN2Z1wiO1xufVxuIl19