carriera-intern 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (597) hide show
  1. package/.cursor/rules/icons.mdc +7 -0
  2. package/.editorconfig +17 -0
  3. package/.vscode/extensions.json +4 -0
  4. package/.vscode/launch.json +20 -0
  5. package/.vscode/tasks.json +42 -0
  6. package/README.md +59 -0
  7. package/angular.json +94 -0
  8. package/carriera-intern@0.0.0 +0 -0
  9. package/package.json +61 -0
  10. package/projects/carriera-intern-components/.storybook/main.ts +12 -0
  11. package/projects/carriera-intern-components/.storybook/preview-head.html +13 -0
  12. package/projects/carriera-intern-components/.storybook/preview.ts +54 -0
  13. package/projects/carriera-intern-components/.storybook/tsconfig.doc.json +10 -0
  14. package/projects/carriera-intern-components/.storybook/tsconfig.json +11 -0
  15. package/projects/carriera-intern-components/.storybook/typings.d.ts +4 -0
  16. package/projects/carriera-intern-components/README.md +63 -0
  17. package/projects/carriera-intern-components/ng-package.json +14 -0
  18. package/projects/carriera-intern-components/package.json +14 -0
  19. package/projects/carriera-intern-components/public/assets/animations/animation-document-update.json +1 -0
  20. package/projects/carriera-intern-components/public/assets/animations/animation-image.json +1 -0
  21. package/projects/carriera-intern-components/public/assets/animations/animation-logo.json +1 -0
  22. package/projects/carriera-intern-components/public/assets/animations/animation-media.json +1 -0
  23. package/projects/carriera-intern-components/public/assets/cdl.png +0 -0
  24. package/projects/carriera-intern-components/public/assets/exampledoc.png +0 -0
  25. package/projects/carriera-intern-components/public/assets/examplelargeview.png +0 -0
  26. package/projects/carriera-intern-components/public/assets/icons/Thumb-active.svg +3 -0
  27. package/projects/carriera-intern-components/public/assets/icons/Thumb.svg +3 -0
  28. package/projects/carriera-intern-components/public/assets/icons/arrows/cai-arrow-primary-up.svg +3 -0
  29. package/projects/carriera-intern-components/public/assets/icons/arrows/cai-arrow-secondary-down.svg +3 -0
  30. package/projects/carriera-intern-components/public/assets/icons/arrows/cai-arrow-secondary-left.svg +3 -0
  31. package/projects/carriera-intern-components/public/assets/icons/arrows/cai-arrow-secondary-right.svg +3 -0
  32. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_bbt.svg +5 -0
  33. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_bmo_harris.svg +13 -0
  34. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_capital_one.svg +11 -0
  35. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_chase.svg +11 -0
  36. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_chime.svg +10 -0
  37. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_citi.svg +8 -0
  38. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_fifth_third.svg +14 -0
  39. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_green_dot.svg +17 -0
  40. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_mb_financial.svg +5 -0
  41. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_meta.svg +11 -0
  42. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_navi_federal.svg +14 -0
  43. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_of_america.svg +5 -0
  44. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_pnc.svg +10 -0
  45. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_regions.svg +14 -0
  46. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_renasant.svg +14 -0
  47. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_tcf.svg +11 -0
  48. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_truist.svg +3 -0
  49. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_us.svg +4 -0
  50. package/projects/carriera-intern-components/public/assets/icons/banks/ic_bank_wells_fargo.svg +3 -0
  51. package/projects/carriera-intern-components/public/assets/icons/cai-color.svg +3 -0
  52. package/projects/carriera-intern-components/public/assets/icons/cai-drop-zone-focus.svg +48 -0
  53. package/projects/carriera-intern-components/public/assets/icons/cai-edit.svg +4 -0
  54. package/projects/carriera-intern-components/public/assets/icons/cai-edit2.svg +3 -0
  55. package/projects/carriera-intern-components/public/assets/icons/cai-expand.svg +3 -0
  56. package/projects/carriera-intern-components/public/assets/icons/cai-gps.svg +3 -0
  57. package/projects/carriera-intern-components/public/assets/icons/cai-illustration-dark.svg +4 -0
  58. package/projects/carriera-intern-components/public/assets/icons/cai-illustration-drop-zone-cover.svg +34 -0
  59. package/projects/carriera-intern-components/public/assets/icons/cai-illustration-drop-zone-profile.svg +58 -0
  60. package/projects/carriera-intern-components/public/assets/icons/cai-illustration-drop-zone-video.svg +41 -0
  61. package/projects/carriera-intern-components/public/assets/icons/cai-illustration-drop-zone.svg +43 -0
  62. package/projects/carriera-intern-components/public/assets/icons/cai-illustration.svg +18 -0
  63. package/projects/carriera-intern-components/public/assets/icons/cai-loader.svg +3 -0
  64. package/projects/carriera-intern-components/public/assets/icons/cai-search.svg +3 -0
  65. package/projects/carriera-intern-components/public/assets/icons/cai-violation-hazmat.svg +3 -0
  66. package/projects/carriera-intern-components/public/assets/icons/fuel-contact/cai-contact.svg +3 -0
  67. package/projects/carriera-intern-components/public/assets/icons/fuel-contact/cai-count.svg +3 -0
  68. package/projects/carriera-intern-components/public/assets/icons/fuel-contact/cai-fuel-card.svg +3 -0
  69. package/projects/carriera-intern-components/public/assets/icons/fuel-contact/cai-people.svg +3 -0
  70. package/projects/carriera-intern-components/public/assets/icons/fuel-contact/cai-share.svg +3 -0
  71. package/projects/carriera-intern-components/public/assets/icons/fuel-contact/cai-user-2.svg +3 -0
  72. package/projects/carriera-intern-components/public/assets/icons/general/cai-address.svg +3 -0
  73. package/projects/carriera-intern-components/public/assets/icons/general/cai-checkmark.svg +3 -0
  74. package/projects/carriera-intern-components/public/assets/icons/general/cai-date.svg +3 -0
  75. package/projects/carriera-intern-components/public/assets/icons/general/cai-email.svg +3 -0
  76. package/projects/carriera-intern-components/public/assets/icons/general/cai-fax.svg +5 -0
  77. package/projects/carriera-intern-components/public/assets/icons/general/cai-label.svg +3 -0
  78. package/projects/carriera-intern-components/public/assets/icons/general/cai-money-additional.svg +3 -0
  79. package/projects/carriera-intern-components/public/assets/icons/general/cai-money.svg +3 -0
  80. package/projects/carriera-intern-components/public/assets/icons/general/cai-phone-extension.svg +3 -0
  81. package/projects/carriera-intern-components/public/assets/icons/general/cai-phone.svg +3 -0
  82. package/projects/carriera-intern-components/public/assets/icons/general/cai-sort-by.svg +3 -0
  83. package/projects/carriera-intern-components/public/assets/icons/general/cai-sort-descending.svg +4 -0
  84. package/projects/carriera-intern-components/public/assets/icons/general/cai-website.svg +3 -0
  85. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_corrosive_8.svg +6 -0
  86. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_dangerous_when_wet_4.svg +4 -0
  87. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_explosives_1_1.svg +6 -0
  88. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_explosives_1_2.svg +6 -0
  89. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_explosives_1_3.svg +6 -0
  90. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_explosives_1_4.svg +6 -0
  91. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_explosives_1_5.svg +6 -0
  92. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_explosives_1_6.svg +6 -0
  93. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_flammable_3.svg +4 -0
  94. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_flammable_gas_2.svg +4 -0
  95. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_flammable_solid_4.svg +5 -0
  96. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_inhalation_hazzard_2.svg +5 -0
  97. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_inhalation_hazzard_6.svg +5 -0
  98. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_organic_peroxide_5_2.svg +7 -0
  99. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_oxidizer_5_1.svg +6 -0
  100. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_oxygen_non_flam_gas_2.svg +6 -0
  101. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_radioactive_7.svg +5 -0
  102. package/projects/carriera-intern-components/public/assets/icons/hazardous/ic_spontaneously_combustible_4.svg +5 -0
  103. package/projects/carriera-intern-components/public/assets/icons/integration/cai-efs.svg +4 -0
  104. package/projects/carriera-intern-components/public/assets/icons/interaction/cai-cancel.svg +3 -0
  105. package/projects/carriera-intern-components/public/assets/icons/interaction/cai-copy.svg +3 -0
  106. package/projects/carriera-intern-components/public/assets/icons/interaction/cai-dislike.svg +3 -0
  107. package/projects/carriera-intern-components/public/assets/icons/interaction/cai-drag.svg +3 -0
  108. package/projects/carriera-intern-components/public/assets/icons/interaction/cai-favorite.svg +3 -0
  109. package/projects/carriera-intern-components/public/assets/icons/interaction/cai-like.svg +3 -0
  110. package/projects/carriera-intern-components/public/assets/icons/interaction/cai-minus.svg +3 -0
  111. package/projects/carriera-intern-components/public/assets/icons/interaction/cai-password-hidden.svg +3 -0
  112. package/projects/carriera-intern-components/public/assets/icons/interaction/cai-password-key.svg +3 -0
  113. package/projects/carriera-intern-components/public/assets/icons/interaction/cai-password-shown.svg +3 -0
  114. package/projects/carriera-intern-components/public/assets/icons/interaction/cai-plus.svg +3 -0
  115. package/projects/carriera-intern-components/public/assets/icons/interaction/cai_time.svg +3 -0
  116. package/projects/carriera-intern-components/public/assets/icons/interaction/cai_x.svg +4 -0
  117. package/projects/carriera-intern-components/public/assets/icons/load/cai-driver.svg +3 -0
  118. package/projects/carriera-intern-components/public/assets/icons/load/cai-load.svg +5 -0
  119. package/projects/carriera-intern-components/public/assets/icons/load/cai-ltl-single.svg +3 -0
  120. package/projects/carriera-intern-components/public/assets/icons/load/cai-parking.svg +3 -0
  121. package/projects/carriera-intern-components/public/assets/icons/load/cai-weight.svg +3 -0
  122. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_atro.svg +6 -0
  123. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_beall.svg +7 -0
  124. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_bedard.svg +8 -0
  125. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_butler.svg +7 -0
  126. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_de_lucio.svg +17 -0
  127. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_dorsey.svg +3 -0
  128. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_east.svg +3 -0
  129. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_fontaine.svg +3 -0
  130. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_fruehauf.svg +3 -0
  131. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_gallegos.svg +3 -0
  132. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_great_dane.svg +3 -0
  133. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_heil.svg +6 -0
  134. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_hudson.svg +3 -0
  135. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_hyndai.svg +3 -0
  136. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_kaufman.svg +3 -0
  137. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_mac.svg +3 -0
  138. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_manac.svg +3 -0
  139. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_polar.svg +3 -0
  140. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_ravens.svg +3 -0
  141. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_reitnouer.svg +12 -0
  142. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_strick.svg +3 -0
  143. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_timpte.svg +8 -0
  144. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_trail_king.svg +7 -0
  145. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_transcraft.svg +12 -0
  146. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_tremcar.svg +10 -0
  147. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_tytal.svg +3 -0
  148. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_utility.svg +3 -0
  149. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_vanguard.svg +3 -0
  150. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_vantage.svg +3 -0
  151. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_wabash.svg +3 -0
  152. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_walinga.svg +8 -0
  153. package/projects/carriera-intern-components/public/assets/icons/makes/trailers/ic_trailer_wilson.svg +3 -0
  154. package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_chevrolet.svg +3 -0
  155. package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_ford.svg +3 -0
  156. package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_freightliner.svg +3 -0
  157. package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_gmc.svg +3 -0
  158. package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_hino.svg +3 -0
  159. package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_international.svg +3 -0
  160. package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_isuzu.svg +3 -0
  161. package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_kenworth.svg +3 -0
  162. package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_mack.svg +3 -0
  163. package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_peterbilt.svg +3 -0
  164. package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_volvo.svg +3 -0
  165. package/projects/carriera-intern-components/public/assets/icons/makes/trucks/ic_truck_western_star.svg +3 -0
  166. package/projects/carriera-intern-components/public/assets/icons/menu/cai-delete.svg +4 -0
  167. package/projects/carriera-intern-components/public/assets/icons/menu/cai-download.svg +3 -0
  168. package/projects/carriera-intern-components/public/assets/icons/menu/cai-reset.svg +3 -0
  169. package/projects/carriera-intern-components/public/assets/icons/pm/cai-pm-base.svg +3 -0
  170. package/projects/carriera-intern-components/public/assets/icons/pm/trailer/cai-pm-general.svg +3 -0
  171. package/projects/carriera-intern-components/public/assets/icons/pm/trailer/cai-pm-pto-pump.svg +5 -0
  172. package/projects/carriera-intern-components/public/assets/icons/pm/trailer/cai-repair-reefer.svg +3 -0
  173. package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-air-filter.svg +5 -0
  174. package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-alignment.svg +5 -0
  175. package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-battery.svg +3 -0
  176. package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-belts.svg +5 -0
  177. package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-brake-chamber.svg +3 -0
  178. package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-engine-oil-filter.svg +4 -0
  179. package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-engine-tune-up.svg +3 -0
  180. package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-radiator.svg +3 -0
  181. package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-transmission-fluid.svg +4 -0
  182. package/projects/carriera-intern-components/public/assets/icons/pm/truck/cai-pm-turbo.svg +3 -0
  183. package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-ab.svg +3 -0
  184. package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-bc.svg +35 -0
  185. package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-mb.svg +3 -0
  186. package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-nb.svg +7 -0
  187. package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-nl.svg +4 -0
  188. package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-ns.svg +6 -0
  189. package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-on.svg +7 -0
  190. package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-pe.svg +3 -0
  191. package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-qc.svg +4 -0
  192. package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-sk.svg +3 -0
  193. package/projects/carriera-intern-components/public/assets/icons/states/ca/cai-ca-yt.svg +3 -0
  194. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ak.svg +14 -0
  195. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-al.svg +3 -0
  196. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ar.svg +3 -0
  197. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-az.svg +3 -0
  198. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ca.svg +3 -0
  199. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-co.svg +3 -0
  200. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ct.svg +3 -0
  201. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-de.svg +3 -0
  202. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-fl.svg +3 -0
  203. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ga.svg +3 -0
  204. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-hi.svg +10 -0
  205. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ia.svg +3 -0
  206. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-id.svg +3 -0
  207. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-il.svg +3 -0
  208. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-in.svg +3 -0
  209. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ks.svg +3 -0
  210. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ky.svg +3 -0
  211. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-la.svg +4 -0
  212. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ma.svg +7 -0
  213. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-md.svg +7 -0
  214. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-me.svg +9 -0
  215. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-mi.svg +11 -0
  216. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-mn.svg +4 -0
  217. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-mo.svg +3 -0
  218. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ms.svg +3 -0
  219. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-mt.svg +3 -0
  220. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-nc.svg +3 -0
  221. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-nd.svg +3 -0
  222. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ne.svg +3 -0
  223. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-nh.svg +3 -0
  224. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-nj.svg +5 -0
  225. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-nm.svg +3 -0
  226. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-nv.svg +3 -0
  227. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ny.svg +4 -0
  228. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-oh.svg +4 -0
  229. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ok.svg +3 -0
  230. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-or.svg +3 -0
  231. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-pa.svg +3 -0
  232. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ri.svg +8 -0
  233. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-sc.svg +3 -0
  234. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-sd.svg +3 -0
  235. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-tn.svg +3 -0
  236. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-tx.svg +3 -0
  237. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-ut.svg +3 -0
  238. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-va.svg +4 -0
  239. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-vt.svg +7 -0
  240. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-wa.svg +15 -0
  241. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-wi.svg +4 -0
  242. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-wv.svg +3 -0
  243. package/projects/carriera-intern-components/public/assets/icons/states/us/cai-us-wy.svg +3 -0
  244. package/projects/carriera-intern-components/public/assets/icons/status/cai-status-warning-lite.svg +3 -0
  245. package/projects/carriera-intern-components/public/assets/icons/status/cai-status-warning.svg +3 -0
  246. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_bottom-dump.svg +5 -0
  247. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_carhauler-stinger.svg +5 -0
  248. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_carhauler.svg +5 -0
  249. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_chassis.svg +5 -0
  250. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_conestoga.svg +13 -0
  251. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_container.svg +6 -0
  252. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_dryvan.svg +5 -0
  253. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_end-dump.svg +5 -0
  254. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_flatbed.svg +5 -0
  255. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_hopper.svg +6 -0
  256. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_low-boy.svg +6 -0
  257. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_reefer.svg +5 -0
  258. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_side-kit.svg +6 -0
  259. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_step-deck.svg +7 -0
  260. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_tanker-pneumatic.svg +5 -0
  261. package/projects/carriera-intern-components/public/assets/icons/trailers/ic_trailer_tanker.svg +5 -0
  262. package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_box-truck.svg +7 -0
  263. package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_car-hauler.svg +7 -0
  264. package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_cargo-van.svg +5 -0
  265. package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_cement.svg +8 -0
  266. package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_dump.svg +8 -0
  267. package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_garbage.svg +10 -0
  268. package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_reefer.svg +6 -0
  269. package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_semi-truck.svg +8 -0
  270. package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_semi-wSleeper.svg +8 -0
  271. package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_spotter.svg +6 -0
  272. package/projects/carriera-intern-components/public/assets/icons/trucks/ic_truck_tow-truck.svg +8 -0
  273. package/projects/carriera-intern-components/public/assets/invexample.png +0 -0
  274. package/projects/carriera-intern-components/public/assets/invoice.png +0 -0
  275. package/projects/carriera-intern-components/public/assets/json/icons.json +985 -0
  276. package/projects/carriera-intern-components/public/assets/truck.png +0 -0
  277. package/projects/carriera-intern-components/public/favicon.ico +0 -0
  278. package/projects/carriera-intern-components/src/Changelog.mdx +285 -0
  279. package/projects/carriera-intern-components/src/Icons.mdx +279 -0
  280. package/projects/carriera-intern-components/src/app/app.config.ts +26 -0
  281. package/projects/carriera-intern-components/src/app/components/avatar/avatar.component.html +28 -0
  282. package/projects/carriera-intern-components/src/app/components/avatar/avatar.component.scss +414 -0
  283. package/projects/carriera-intern-components/src/app/components/avatar/avatar.component.spec.ts +23 -0
  284. package/projects/carriera-intern-components/src/app/components/avatar/avatar.component.ts +66 -0
  285. package/projects/carriera-intern-components/src/app/components/avatar/avatar.stories.ts +787 -0
  286. package/projects/carriera-intern-components/src/app/components/avatar/models/avatar.model.ts +52 -0
  287. package/projects/carriera-intern-components/src/app/components/avatar/models/index.ts +1 -0
  288. package/projects/carriera-intern-components/src/app/components/avatar/pipes/avatar-classes.pipe.ts +98 -0
  289. package/projects/carriera-intern-components/src/app/components/avatar/pipes/index.ts +2 -0
  290. package/projects/carriera-intern-components/src/app/components/avatar/pipes/initials.pipe.ts +31 -0
  291. package/projects/carriera-intern-components/src/app/components/content-driven-co/content-driven-co.component.css +0 -0
  292. package/projects/carriera-intern-components/src/app/components/content-driven-co/content-driven-co.component.html +10 -0
  293. package/projects/carriera-intern-components/src/app/components/content-driven-co/content-driven-co.component.spec.ts +23 -0
  294. package/projects/carriera-intern-components/src/app/components/content-driven-co/content-driven-co.component.ts +25 -0
  295. package/projects/carriera-intern-components/src/app/components/content-driven-co/content-driven-co.stories.ts +65 -0
  296. package/projects/carriera-intern-components/src/app/components/copy/copy.component.html +66 -0
  297. package/projects/carriera-intern-components/src/app/components/copy/copy.component.scss +103 -0
  298. package/projects/carriera-intern-components/src/app/components/copy/copy.component.spec.ts +22 -0
  299. package/projects/carriera-intern-components/src/app/components/copy/copy.component.ts +57 -0
  300. package/projects/carriera-intern-components/src/app/components/copy/stories/copy.stories.ts +170 -0
  301. package/projects/carriera-intern-components/src/app/components/counter/counter.component.html +33 -0
  302. package/projects/carriera-intern-components/src/app/components/counter/counter.component.scss +197 -0
  303. package/projects/carriera-intern-components/src/app/components/counter/counter.component.spec.ts +22 -0
  304. package/projects/carriera-intern-components/src/app/components/counter/counter.component.ts +219 -0
  305. package/projects/carriera-intern-components/src/app/components/counter/counter.stories.ts +65 -0
  306. package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/dispatch-dropdown.component.html +223 -0
  307. package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/dispatch-dropdown.component.scss +792 -0
  308. package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/dispatch-dropdown.component.spec.ts +23 -0
  309. package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/dispatch-dropdown.component.ts +323 -0
  310. package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/dispatch-dropdown.stories.ts +409 -0
  311. package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/helpers/dispatch-dropdown.helper.ts +248 -0
  312. package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/interfaces/dispatch-dropdown-config.interface.ts +10 -0
  313. package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/interfaces/dispatch-dropdown-option.interface.ts +4 -0
  314. package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/interfaces/index.ts +2 -0
  315. package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/mock/parking-data.json +1550 -0
  316. package/projects/carriera-intern-components/src/app/components/dispatch-dropdown/pipes/dispatch-search-filter.pipe.ts +26 -0
  317. package/projects/carriera-intern-components/src/app/components/dispatch-location/dispatch-location.component.html +76 -0
  318. package/projects/carriera-intern-components/src/app/components/dispatch-location/dispatch-location.component.scss +141 -0
  319. package/projects/carriera-intern-components/src/app/components/dispatch-location/dispatch-location.component.spec.ts +22 -0
  320. package/projects/carriera-intern-components/src/app/components/dispatch-location/dispatch-location.component.ts +268 -0
  321. package/projects/carriera-intern-components/src/app/components/dispatch-location/dispatch-location.stories.ts +184 -0
  322. package/projects/carriera-intern-components/src/app/components/dispatch-location/interfaces/index.ts +1 -0
  323. package/projects/carriera-intern-components/src/app/components/dispatch-location/interfaces/last-status-data.interface.ts +6 -0
  324. package/projects/carriera-intern-components/src/app/components/dispatch-location/pipes/last-status-format.pipe.ts +35 -0
  325. package/projects/carriera-intern-components/src/app/components/document-preview/document-preview.component.html +229 -0
  326. package/projects/carriera-intern-components/src/app/components/document-preview/document-preview.component.scss +1115 -0
  327. package/projects/carriera-intern-components/src/app/components/document-preview/document-preview.component.spec.ts +23 -0
  328. package/projects/carriera-intern-components/src/app/components/document-preview/document-preview.component.ts +277 -0
  329. package/projects/carriera-intern-components/src/app/components/document-preview/document-preview.stories.ts +256 -0
  330. package/projects/carriera-intern-components/src/app/components/document-preview/interfaces/document-tag.interface.ts +4 -0
  331. package/projects/carriera-intern-components/src/app/components/document-preview/interfaces/index.ts +1 -0
  332. package/projects/carriera-intern-components/src/app/components/document-preview/utils/config/button-actions.config.ts +30 -0
  333. package/projects/carriera-intern-components/src/app/components/document-preview/utils/config/index.ts +1 -0
  334. package/projects/carriera-intern-components/src/app/components/drop-zone/drop-zone.component.html +376 -0
  335. package/projects/carriera-intern-components/src/app/components/drop-zone/drop-zone.component.scss +9 -0
  336. package/projects/carriera-intern-components/src/app/components/drop-zone/drop-zone.component.spec.ts +22 -0
  337. package/projects/carriera-intern-components/src/app/components/drop-zone/drop-zone.component.ts +1272 -0
  338. package/projects/carriera-intern-components/src/app/components/drop-zone/drop-zone.stories.ts +1253 -0
  339. package/projects/carriera-intern-components/src/app/components/drop-zone/enums/drop-zone-labels.enum.ts +0 -0
  340. package/projects/carriera-intern-components/src/app/components/drop-zone/enums/drop-zone-variant.enum.ts +7 -0
  341. package/projects/carriera-intern-components/src/app/components/drop-zone/enums/index.ts +1 -0
  342. package/projects/carriera-intern-components/src/app/components/drop-zone/models/app-file.model.ts +28 -0
  343. package/projects/carriera-intern-components/src/app/components/drop-zone/models/file.response.ts +10 -0
  344. package/projects/carriera-intern-components/src/app/components/drop-zone/models/index.ts +2 -0
  345. package/projects/carriera-intern-components/src/app/components/drop-zone/pipes/drag-mode-animation.pipe.ts +40 -0
  346. package/projects/carriera-intern-components/src/app/components/drop-zone/utils/helpers/drop-zone-documents.helper.ts +67 -0
  347. package/projects/carriera-intern-components/src/app/components/drop-zone/utils/helpers/index.ts +1 -0
  348. package/projects/carriera-intern-components/src/app/components/drop-zone/utils/styles/drop-zone-cropper.scss +202 -0
  349. package/projects/carriera-intern-components/src/app/components/drop-zone/utils/styles/drop-zone-documents.scss +166 -0
  350. package/projects/carriera-intern-components/src/app/components/drop-zone/utils/styles/drop-zone-drag-mode.scss +107 -0
  351. package/projects/carriera-intern-components/src/app/components/drop-zone/utils/styles/drop-zone-images.scss +106 -0
  352. package/projects/carriera-intern-components/src/app/components/drop-zone/utils/styles/drop-zone-layout.scss +208 -0
  353. package/projects/carriera-intern-components/src/app/components/drop-zone/utils/styles/drop-zone-states.scss +183 -0
  354. package/projects/carriera-intern-components/src/app/components/drop-zone/utils/styles/drop-zone-variations.scss +189 -0
  355. package/projects/carriera-intern-components/src/app/components/input/directives/helpers/index.ts +1 -0
  356. package/projects/carriera-intern-components/src/app/components/input/directives/helpers/mask.helper.ts +52 -0
  357. package/projects/carriera-intern-components/src/app/components/input/directives/mask.directive.spec.ts +13 -0
  358. package/projects/carriera-intern-components/src/app/components/input/directives/mask.directive.ts +274 -0
  359. package/projects/carriera-intern-components/src/app/components/input/directives/number-format.directive.spec.ts +13 -0
  360. package/projects/carriera-intern-components/src/app/components/input/directives/number-format.directive.ts +442 -0
  361. package/projects/carriera-intern-components/src/app/components/input/directives/password.directive.spec.ts +13 -0
  362. package/projects/carriera-intern-components/src/app/components/input/directives/password.directive.ts +282 -0
  363. package/projects/carriera-intern-components/src/app/components/input/input.component.html +2669 -0
  364. package/projects/carriera-intern-components/src/app/components/input/input.component.scss +3000 -0
  365. package/projects/carriera-intern-components/src/app/components/input/input.component.spec.ts +23 -0
  366. package/projects/carriera-intern-components/src/app/components/input/input.component.ts +1486 -0
  367. package/projects/carriera-intern-components/src/app/components/input/mock/banks.json +249 -0
  368. package/projects/carriera-intern-components/src/app/components/input/mock/basic.json +42 -0
  369. package/projects/carriera-intern-components/src/app/components/input/mock/brokers.json +544 -0
  370. package/projects/carriera-intern-components/src/app/components/input/mock/colors.json +95 -0
  371. package/projects/carriera-intern-components/src/app/components/input/mock/commodities.json +12 -0
  372. package/projects/carriera-intern-components/src/app/components/input/mock/contacts.json +117 -0
  373. package/projects/carriera-intern-components/src/app/components/input/mock/dispatchers.json +83 -0
  374. package/projects/carriera-intern-components/src/app/components/input/mock/dispatches.json +4188 -0
  375. package/projects/carriera-intern-components/src/app/components/input/mock/fuel-list-dropdown.json +968 -0
  376. package/projects/carriera-intern-components/src/app/components/input/mock/fuel-transaction.json +78 -0
  377. package/projects/carriera-intern-components/src/app/components/input/mock/fuelcard.json +472 -0
  378. package/projects/carriera-intern-components/src/app/components/input/mock/hazardous.json +166 -0
  379. package/projects/carriera-intern-components/src/app/components/input/mock/labelColors.json +81 -0
  380. package/projects/carriera-intern-components/src/app/components/input/mock/labels.json +169 -0
  381. package/projects/carriera-intern-components/src/app/components/input/mock/new-load-modal-res.json +1148 -0
  382. package/projects/carriera-intern-components/src/app/components/input/mock/noboard.json +1665 -0
  383. package/projects/carriera-intern-components/src/app/components/input/mock/owner.json +209 -0
  384. package/projects/carriera-intern-components/src/app/components/input/mock/pm.json +112 -0
  385. package/projects/carriera-intern-components/src/app/components/input/mock/shipper.json +1192 -0
  386. package/projects/carriera-intern-components/src/app/components/input/mock/split-driver.json +99 -0
  387. package/projects/carriera-intern-components/src/app/components/input/mock/split-trailer.json +79 -0
  388. package/projects/carriera-intern-components/src/app/components/input/mock/split-truck.json +49 -0
  389. package/projects/carriera-intern-components/src/app/components/input/mock/states.json +605 -0
  390. package/projects/carriera-intern-components/src/app/components/input/mock/toll.json +106 -0
  391. package/projects/carriera-intern-components/src/app/components/input/mock/trailermakes.json +196 -0
  392. package/projects/carriera-intern-components/src/app/components/input/mock/truck_trailer.json +184 -0
  393. package/projects/carriera-intern-components/src/app/components/input/mock/truckmakes.json +76 -0
  394. package/projects/carriera-intern-components/src/app/components/input/models/dropdown.model.ts +376 -0
  395. package/projects/carriera-intern-components/src/app/components/input/models/index.ts +2 -0
  396. package/projects/carriera-intern-components/src/app/components/input/models/input.model.ts +227 -0
  397. package/projects/carriera-intern-components/src/app/components/input/pipes/broker-progress.pipe.ts +36 -0
  398. package/projects/carriera-intern-components/src/app/components/input/pipes/clear-tooltip.pipe.ts +38 -0
  399. package/projects/carriera-intern-components/src/app/components/input/pipes/error-message.pipe.ts +54 -0
  400. package/projects/carriera-intern-components/src/app/components/input/pipes/highlight-search.pipe.ts +42 -0
  401. package/projects/carriera-intern-components/src/app/components/input/pipes/index.ts +6 -0
  402. package/projects/carriera-intern-components/src/app/components/input/pipes/input-class.pipe.ts +109 -0
  403. package/projects/carriera-intern-components/src/app/components/input/pipes/remap-pm-icons.pipe.ts +49 -0
  404. package/projects/carriera-intern-components/src/app/components/input/stories/Documentation.mdx +190 -0
  405. package/projects/carriera-intern-components/src/app/components/input/stories/dropdown-options.ts +80 -0
  406. package/projects/carriera-intern-components/src/app/components/input/stories/dropdown.stories.ts +376 -0
  407. package/projects/carriera-intern-components/src/app/components/input/stories/input-dropdown.stories.ts +405 -0
  408. package/projects/carriera-intern-components/src/app/components/input/stories/input-inverse.stories.ts +232 -0
  409. package/projects/carriera-intern-components/src/app/components/input/stories/input-load.stories.ts +150 -0
  410. package/projects/carriera-intern-components/src/app/components/input/stories/input-placeholder.stories.ts +225 -0
  411. package/projects/carriera-intern-components/src/app/components/input/stories/input-subcontent.stories.ts +264 -0
  412. package/projects/carriera-intern-components/src/app/components/input/stories/input-table.stories.ts +211 -0
  413. package/projects/carriera-intern-components/src/app/components/input/stories/input.stories.ts +1159 -0
  414. package/projects/carriera-intern-components/src/app/components/input/stories/modal.stories.ts +162 -0
  415. package/projects/carriera-intern-components/src/app/components/input/utilities/constants/cast.constants.ts +91 -0
  416. package/projects/carriera-intern-components/src/app/components/input/utilities/constants/index.ts +1 -0
  417. package/projects/carriera-intern-components/src/app/components/input/utilities/helpers/index.ts +2 -0
  418. package/projects/carriera-intern-components/src/app/components/input/utilities/helpers/input.helper.ts +985 -0
  419. package/projects/carriera-intern-components/src/app/components/input/utilities/helpers/keyboard-navigation.helper.ts +402 -0
  420. package/projects/carriera-intern-components/src/app/components/input/utilities/index.ts +2 -0
  421. package/projects/carriera-intern-components/src/app/components/input-address/enums/input-address-layers-string.enum.ts +4 -0
  422. package/projects/carriera-intern-components/src/app/components/input-address/enums/input-address-type-string.enum.ts +7 -0
  423. package/projects/carriera-intern-components/src/app/components/input-address/input-address.component.html +13 -0
  424. package/projects/carriera-intern-components/src/app/components/input-address/input-address.component.scss +0 -0
  425. package/projects/carriera-intern-components/src/app/components/input-address/input-address.component.spec.ts +22 -0
  426. package/projects/carriera-intern-components/src/app/components/input-address/input-address.component.ts +509 -0
  427. package/projects/carriera-intern-components/src/app/components/input-address/models/address-data.model.ts +22 -0
  428. package/projects/carriera-intern-components/src/app/components/input-address/models/address-list.model.ts +6 -0
  429. package/projects/carriera-intern-components/src/app/components/input-address/models/long-lat.model.ts +4 -0
  430. package/projects/carriera-intern-components/src/app/components/input-address/models/sent-address-data.model.ts +25 -0
  431. package/projects/carriera-intern-components/src/app/components/input-address/stories/address.stories.ts +181 -0
  432. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/cai-input-datetime-picker.component.html +180 -0
  433. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/cai-input-datetime-picker.component.scss +862 -0
  434. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/cai-input-datetime-picker.component.ts +1559 -0
  435. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/cai-input-datetime-picker.stories.ts +507 -0
  436. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/cai-custom-datetime-pickers.component.html +134 -0
  437. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/cai-custom-datetime-pickers.component.scss +0 -0
  438. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/cai-custom-datetime-pickers.component.spec.ts +24 -0
  439. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/cai-custom-datetime-pickers.component.ts +331 -0
  440. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-dates-main/cai-custom-datetime-pickers-calendar-dates-main.component.html +190 -0
  441. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-dates-main/cai-custom-datetime-pickers-calendar-dates-main.component.scss +0 -0
  442. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-dates-main/cai-custom-datetime-pickers-calendar-dates-main.component.spec.ts +26 -0
  443. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-dates-main/cai-custom-datetime-pickers-calendar-dates-main.component.ts +234 -0
  444. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-days/cai-custom-datetime-pickers-calendar-days.component.html +23 -0
  445. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-days/cai-custom-datetime-pickers-calendar-days.component.scss +0 -0
  446. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-days/cai-custom-datetime-pickers-calendar-days.component.spec.ts +26 -0
  447. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-days/cai-custom-datetime-pickers-calendar-days.component.ts +60 -0
  448. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-left/cai-custom-datetime-pickers-calendar-left.component.html +27 -0
  449. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-left/cai-custom-datetime-pickers-calendar-left.component.scss +0 -0
  450. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-left/cai-custom-datetime-pickers-calendar-left.component.spec.ts +26 -0
  451. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-calendar-left/cai-custom-datetime-pickers-calendar-left.component.ts +187 -0
  452. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-date-calendars/cai-custom-datetime-pickers-date-calendars.component.html +68 -0
  453. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-date-calendars/cai-custom-datetime-pickers-date-calendars.component.scss +0 -0
  454. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-date-calendars/cai-custom-datetime-pickers-date-calendars.component.spec.ts +26 -0
  455. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/components/cai-custom-datetime-pickers-date-calendars/cai-custom-datetime-pickers-date-calendars.component.ts +163 -0
  456. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/config/cai-input.config.ts +193 -0
  457. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/config/index.ts +1 -0
  458. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/enums/calendar-left-string.enum.ts +5 -0
  459. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/enums/calendar-list-preview-string.enum.ts +4 -0
  460. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/enums/calendar-main-string.enum.ts +5 -0
  461. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/enums/calendar-scroll-type-string.enum.ts +4 -0
  462. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/enums/calendar-string.enum.ts +6 -0
  463. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/enums/calendar-type-string.enum.ts +3 -0
  464. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/enums/config.enum.ts +7 -0
  465. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/models/scroll-change.model.ts +6 -0
  466. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/models/scroll-type.model.ts +8 -0
  467. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/pipes/calendar-months.pipe.ts +23 -0
  468. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/services/calendar-datetime-picker.service.ts +35 -0
  469. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/strategy/calendar-strategy.ts +120 -0
  470. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/components/cai-custom-datetime-pickers/utils/constants/custom-datetime-pickers.constants.ts +48 -0
  471. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/enums/input-config-name-string.enum.ts +7 -0
  472. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/interfaces/index.ts +1 -0
  473. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/interfaces/input-datetime.interface.ts +11 -0
  474. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/models/index.ts +5 -0
  475. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/models/label-color.model.ts +11 -0
  476. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/pipes/input-clear-class.pipe.ts +105 -0
  477. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/pipes/input-date-time-container-class.pipe.ts +66 -0
  478. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/pipes/input-dropdown-arrow-class.pipe.ts +68 -0
  479. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/pipes/input-placeholder-icon.class.pipe.ts +68 -0
  480. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/pipes/show-clear.pipe.ts +20 -0
  481. package/projects/carriera-intern-components/src/app/components/input-datetime-picker/scss/ca-input.colors.scss +287 -0
  482. package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/list-contact-dropdown.component.html +194 -0
  483. package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/list-contact-dropdown.component.scss +613 -0
  484. package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/list-contact-dropdown.component.spec.ts +22 -0
  485. package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/list-contact-dropdown.component.ts +208 -0
  486. package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/list-contact-dropdown.stories.ts +52 -0
  487. package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/mock/brokerContacts.json +74 -0
  488. package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/models/contact.interface.ts +23 -0
  489. package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/pipes/contact-count.pipe.ts +14 -0
  490. package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/pipes/contacts-height.pipe.ts +34 -0
  491. package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/pipes/departments-height.pipe.ts +57 -0
  492. package/projects/carriera-intern-components/src/app/components/list-contact-dropdown/pipes/map-contacts.pipe.ts +51 -0
  493. package/projects/carriera-intern-components/src/app/components/pm/mock/repair-pm.json +2743 -0
  494. package/projects/carriera-intern-components/src/app/components/pm/pm.component.html +82 -0
  495. package/projects/carriera-intern-components/src/app/components/pm/pm.component.scss +260 -0
  496. package/projects/carriera-intern-components/src/app/components/pm/pm.component.spec.ts +23 -0
  497. package/projects/carriera-intern-components/src/app/components/pm/pm.component.ts +207 -0
  498. package/projects/carriera-intern-components/src/app/components/pm/pm.stories.ts +104 -0
  499. package/projects/carriera-intern-components/src/app/components/rating_review/enums/filter-type.enum.ts +7 -0
  500. package/projects/carriera-intern-components/src/app/components/rating_review/enums/review-type.enum.ts +5 -0
  501. package/projects/carriera-intern-components/src/app/components/rating_review/pipes/date-formating.pipe.spec.ts +8 -0
  502. package/projects/carriera-intern-components/src/app/components/rating_review/pipes/date-formating.pipe.ts +42 -0
  503. package/projects/carriera-intern-components/src/app/components/rating_review/rating-review/rating-review/rating-review.component.html +57 -0
  504. package/projects/carriera-intern-components/src/app/components/rating_review/rating-review/rating-review/rating-review.component.scss +94 -0
  505. package/projects/carriera-intern-components/src/app/components/rating_review/rating-review/rating-review/rating-review.component.spec.ts +23 -0
  506. package/projects/carriera-intern-components/src/app/components/rating_review/rating-review/rating-review/rating-review.component.ts +105 -0
  507. package/projects/carriera-intern-components/src/app/components/rating_review/rating-review/rating-review/rating-review.stories.ts +451 -0
  508. package/projects/carriera-intern-components/src/app/components/rating_review/review-modal/review-modal.component.html +236 -0
  509. package/projects/carriera-intern-components/src/app/components/rating_review/review-modal/review-modal.component.scss +564 -0
  510. package/projects/carriera-intern-components/src/app/components/rating_review/review-modal/review-modal.component.ts +360 -0
  511. package/projects/carriera-intern-components/src/app/components/rating_review/single-review/single-review.component.html +321 -0
  512. package/projects/carriera-intern-components/src/app/components/rating_review/single-review/single-review.component.scss +887 -0
  513. package/projects/carriera-intern-components/src/app/components/rating_review/single-review/single-review.component.ts +159 -0
  514. package/projects/carriera-intern-components/src/app/components/selected-location-field/interfaces/index.ts +1 -0
  515. package/projects/carriera-intern-components/src/app/components/selected-location-field/interfaces/selected-business-field.interface.ts +11 -0
  516. package/projects/carriera-intern-components/src/app/components/selected-location-field/selected-business-field.component.html +100 -0
  517. package/projects/carriera-intern-components/src/app/components/selected-location-field/selected-business-field.component.scss +239 -0
  518. package/projects/carriera-intern-components/src/app/components/selected-location-field/selected-business-field.component.spec.ts +22 -0
  519. package/projects/carriera-intern-components/src/app/components/selected-location-field/selected-business-field.component.ts +28 -0
  520. package/projects/carriera-intern-components/src/app/components/selected-location-field/selected-business-field.stories.ts +132 -0
  521. package/projects/carriera-intern-components/src/app/components/signature/signature.component.html +63 -0
  522. package/projects/carriera-intern-components/src/app/components/signature/signature.component.scss +229 -0
  523. package/projects/carriera-intern-components/src/app/components/signature/signature.component.spec.ts +23 -0
  524. package/projects/carriera-intern-components/src/app/components/signature/signature.component.ts +102 -0
  525. package/projects/carriera-intern-components/src/app/components/signature/signature.stories.ts +32 -0
  526. package/projects/carriera-intern-components/src/app/components/sticky-scrollbar/enums/index.ts +1 -0
  527. package/projects/carriera-intern-components/src/app/components/sticky-scrollbar/enums/scroll-state.enum.ts +6 -0
  528. package/projects/carriera-intern-components/src/app/components/sticky-scrollbar/sticky-scrollbar.component.html +29 -0
  529. package/projects/carriera-intern-components/src/app/components/sticky-scrollbar/sticky-scrollbar.component.scss +106 -0
  530. package/projects/carriera-intern-components/src/app/components/sticky-scrollbar/sticky-scrollbar.component.spec.ts +23 -0
  531. package/projects/carriera-intern-components/src/app/components/sticky-scrollbar/sticky-scrollbar.component.ts +458 -0
  532. package/projects/carriera-intern-components/src/app/components/sticky-scrollbar/sticky-scrollbar.stories.ts +343 -0
  533. package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/interfaces/index.ts +2 -0
  534. package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/interfaces/tab-option-config.interface.ts +4 -0
  535. package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/interfaces/tab-option.interface.ts +4 -0
  536. package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/pipes/index.ts +1 -0
  537. package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/pipes/tab-search-filter.pipe.ts +20 -0
  538. package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/tab-option-dropdown.component.html +66 -0
  539. package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/tab-option-dropdown.component.scss +441 -0
  540. package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/tab-option-dropdown.component.spec.ts +22 -0
  541. package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/tab-option-dropdown.component.ts +105 -0
  542. package/projects/carriera-intern-components/src/app/components/tab-option-dropdown/tab-option.stories.ts +93 -0
  543. package/projects/carriera-intern-components/src/app/components/text-area/interfaces/index.ts +1 -0
  544. package/projects/carriera-intern-components/src/app/components/text-area/interfaces/text-area.interface.ts +4 -0
  545. package/projects/carriera-intern-components/src/app/components/text-area/text-area.component.html +29 -0
  546. package/projects/carriera-intern-components/src/app/components/text-area/text-area.component.scss +294 -0
  547. package/projects/carriera-intern-components/src/app/components/text-area/text-area.component.spec.ts +23 -0
  548. package/projects/carriera-intern-components/src/app/components/text-area/text-area.component.ts +213 -0
  549. package/projects/carriera-intern-components/src/app/components/text-area/text-area.stories.ts +90 -0
  550. package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/interfaces/index.ts +1 -0
  551. package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/interfaces/interval-dropdown-option.interface.ts +10 -0
  552. package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/interval-dropdown.component.html +98 -0
  553. package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/interval-dropdown.component.scss +437 -0
  554. package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/interval-dropdown.component.spec.ts +22 -0
  555. package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/interval-dropdown.component.ts +160 -0
  556. package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/interval-dropdown.stories.ts +77 -0
  557. package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/pipes/dropdown-filter-input-config.pipe.ts +52 -0
  558. package/projects/carriera-intern-components/src/app/components/toolbar-dropdown/utils/helpers/interval-dropdown.helper.ts +193 -0
  559. package/projects/carriera-intern-components/src/app/directives/hover-svg-directives.ts +49 -0
  560. package/projects/carriera-intern-components/src/app/directives/index.ts +3 -0
  561. package/projects/carriera-intern-components/src/app/directives/infinite-scroll.directive.ts +64 -0
  562. package/projects/carriera-intern-components/src/app/directives/intersection-observer.directive.ts +50 -0
  563. package/projects/carriera-intern-components/src/app/enums/alignment.enum.ts +4 -0
  564. package/projects/carriera-intern-components/src/app/enums/general-actions.enum.ts +71 -0
  565. package/projects/carriera-intern-components/src/app/enums/index.ts +3 -0
  566. package/projects/carriera-intern-components/src/app/enums/string-placeholder.enum.ts +3 -0
  567. package/projects/carriera-intern-components/src/app/models/pm.model.ts +11 -0
  568. package/projects/carriera-intern-components/src/app/models/review.model.ts +29 -0
  569. package/projects/carriera-intern-components/src/app/models/truck.model.ts +5 -0
  570. package/projects/carriera-intern-components/src/app/pipes/bytes-to-human-readable.pipe.spec.ts +8 -0
  571. package/projects/carriera-intern-components/src/app/pipes/bytes-to-human-readable.pipe.ts +29 -0
  572. package/projects/carriera-intern-components/src/app/pipes/currency.pipe.spec.ts +8 -0
  573. package/projects/carriera-intern-components/src/app/pipes/currency.pipe.ts +61 -0
  574. package/projects/carriera-intern-components/src/app/pipes/number-format.pipe.spec.ts +8 -0
  575. package/projects/carriera-intern-components/src/app/pipes/number-format.pipe.ts +30 -0
  576. package/projects/carriera-intern-components/src/app/services/document.service.spec.ts +16 -0
  577. package/projects/carriera-intern-components/src/app/services/document.service.ts +168 -0
  578. package/projects/carriera-intern-components/src/app/utils/autofill-validators.ts +32 -0
  579. package/projects/carriera-intern-components/src/app/utils/constants/index.ts +1 -0
  580. package/projects/carriera-intern-components/src/app/utils/constants/input-character-sets.constants.ts +142 -0
  581. package/projects/carriera-intern-components/src/app/utils/index.ts +2 -0
  582. package/projects/carriera-intern-components/src/app/validators/custom-validators.ts +45 -0
  583. package/projects/carriera-intern-components/src/public-api.ts +31 -0
  584. package/projects/carriera-intern-components/src/styles/README.md +59 -0
  585. package/projects/carriera-intern-components/src/styles/_variables.scss +301 -0
  586. package/projects/carriera-intern-components/src/styles/cropper.scss +39 -0
  587. package/projects/carriera-intern-components/src/styles/custompickers.scss +827 -0
  588. package/projects/carriera-intern-components/src/styles/popover.scss +224 -0
  589. package/projects/carriera-intern-components/src/styles/review_variables.scss +45 -0
  590. package/projects/carriera-intern-components/src/styles/tooltip.scss +119 -0
  591. package/projects/carriera-intern-components/src/styles/utility/colors.scss +265 -0
  592. package/projects/carriera-intern-components/src/styles/utility/utilities.scss +17 -0
  593. package/projects/carriera-intern-components/src/styles.scss +43 -0
  594. package/projects/carriera-intern-components/tsconfig.lib.json +15 -0
  595. package/projects/carriera-intern-components/tsconfig.lib.prod.json +11 -0
  596. package/projects/carriera-intern-components/tsconfig.spec.json +15 -0
  597. package/tsconfig.json +33 -0
@@ -0,0 +1,409 @@
1
+ import { Meta, StoryObj } from '@storybook/angular';
2
+
3
+ // Components
4
+ import { DispatchDropdownComponent } from './dispatch-dropdown.component';
5
+
6
+ // Mock Data
7
+ import parkingLots from './mock/parking-data.json';
8
+
9
+ const meta: Meta<DispatchDropdownComponent> = {
10
+ title: 'Components/DispatchDropdown',
11
+ component: DispatchDropdownComponent,
12
+ argTypes: {
13
+ hasNoRemoveButton: {
14
+ control: 'boolean',
15
+ defaultValue: false,
16
+ },
17
+ isLocked: {
18
+ control: 'boolean',
19
+ defaultValue: false,
20
+ },
21
+ isDisabled: {
22
+ control: 'boolean',
23
+ defaultValue: false,
24
+ },
25
+ disabledTooltip: {
26
+ control: 'text',
27
+ defaultValue: '',
28
+ },
29
+ config: {
30
+ control: 'object',
31
+ defaultValue: {
32
+ summary: {},
33
+ },
34
+ },
35
+ },
36
+ args: {
37
+ hasNoRemoveButton: false,
38
+ isLocked: false,
39
+ config: {
40
+ placeholder: 'Unit No.',
41
+ },
42
+ },
43
+ globals: {
44
+ backgrounds: { value: 'table' },
45
+ },
46
+ };
47
+
48
+ export default meta;
49
+ type Story = StoryObj<DispatchDropdownComponent>;
50
+
51
+ // --- Stories ---
52
+
53
+ export const Default: Story = {
54
+ args: {
55
+ hasNoRemoveButton: false,
56
+ isLocked: false,
57
+ data: null,
58
+
59
+ config: {
60
+ placeholder: 'Unit No.',
61
+ optionLabel: 'unitNumber',
62
+ },
63
+ options: [
64
+ { id: 1, unitNumber: 'TR-1234' },
65
+ { id: 2, unitNumber: 'TR-5678' },
66
+ { id: 3, unitNumber: 'TR-9012' },
67
+ { id: 4, unitNumber: 'TR-3456' },
68
+ { id: 5, unitNumber: 'TR-7890' },
69
+ { id: 6, unitNumber: 'TR-1111' },
70
+ { id: 7, unitNumber: 'TR-2222' },
71
+ { id: 8, unitNumber: 'TR-3333' },
72
+ { id: 9, unitNumber: 'TR-4444' },
73
+ { id: 10, unitNumber: 'TR-5555' },
74
+ { id: 11, unitNumber: 'TR-6666' },
75
+ { id: 12, unitNumber: 'TR-7777' },
76
+ { id: 13, unitNumber: 'TR-8888' },
77
+ { id: 14, unitNumber: 'TR-9999' },
78
+ { id: 15, unitNumber: 'TR-0000' },
79
+ ],
80
+ },
81
+
82
+ render: (args) => ({
83
+ props: {
84
+ ...args,
85
+ },
86
+ template: `
87
+ <div style="display: flex; gap: 2px; flex-direction: column;">
88
+ <div style="display: flex; gap: 2px;">
89
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
90
+ <div style="width: 120px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
91
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
92
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
93
+
94
+ </div>
95
+ <div style="display: flex; gap: 2px;">
96
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
97
+ <div style="width: 120px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
98
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
99
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
100
+
101
+ </div>
102
+ <div style="display: flex; gap: 2px;">
103
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
104
+ <div style="width: 120px; position: relative;">
105
+ <div style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;">
106
+ <cai-dispatch-dropdown [hasNoRemoveButton]="hasNoRemoveButton" [isLocked]="isLocked" [data]="data" [options]="options" [config]="config">
107
+ </cai-dispatch-dropdown>
108
+ </div>
109
+ <div style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #F7F7F7; border-radius: 3px;"></div>
110
+ </div>
111
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
112
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
113
+
114
+ </div>
115
+ <div style="display: flex; gap: 2px;">
116
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
117
+ <div style="width: 120px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
118
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
119
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
120
+
121
+ </div>
122
+ </div>
123
+ `,
124
+ }),
125
+ };
126
+
127
+ export const AutoPlacementTest: Story = {
128
+ args: {
129
+ hasNoRemoveButton: false,
130
+ isLocked: false,
131
+ data: null,
132
+ config: {
133
+ placeholder: 'Unit No.',
134
+ optionLabel: 'unitNumber',
135
+ },
136
+ options: [
137
+ { id: 1, unitNumber: 'TR-1234' },
138
+ { id: 2, unitNumber: 'TR-5678' },
139
+ { id: 3, unitNumber: 'TR-9012' },
140
+ { id: 4, unitNumber: 'TR-3456' },
141
+ { id: 5, unitNumber: 'TR-7890' },
142
+ { id: 6, unitNumber: 'TR-1111' },
143
+ { id: 7, unitNumber: 'TR-2222' },
144
+ { id: 8, unitNumber: 'TR-3333' },
145
+ { id: 9, unitNumber: 'TR-4444' },
146
+ { id: 10, unitNumber: 'TR-5555' },
147
+ ],
148
+ },
149
+
150
+ render: (args) => ({
151
+ props: {
152
+ ...args,
153
+ },
154
+ template: `
155
+ <div style="height: 100vh; display: flex; flex-direction: column; overflow: hidden; background: #e0e0e0; padding: 48px; box-sizing: border-box;">
156
+ <!-- Top section -->
157
+ <div style="flex: 1; display: flex; flex-direction: column; justify-content: flex-start; gap: 8px;">
158
+ <div style="padding: 12px; background: #fff; border-radius: 6px;">
159
+ <p style="margin: 0 0 8px 0; font-weight: 600; color: #333;">Drop down</p>
160
+ <div style="display: flex; gap: 2px;">
161
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
162
+ <div style="width: 120px; position: relative;">
163
+ <div style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1;">
164
+ <cai-dispatch-dropdown [hasNoRemoveButton]="hasNoRemoveButton" [isLocked]="isLocked" [data]="data" [options]="options" [config]="config">
165
+ </cai-dispatch-dropdown>
166
+ </div>
167
+ <div style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #F7F7F7; border-radius: 3px;"></div>
168
+ </div>
169
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
170
+ </div>
171
+ </div>
172
+ </div>
173
+
174
+ <!-- Bottom section -->
175
+ <div style="flex: 1; display: flex; flex-direction: column; justify-content: flex-end; gap: 8px;">
176
+ <div style="padding: 12px; background: #fff; border-radius: 6px;">
177
+ <p style="margin: 0 0 8px 0; font-weight: 600; color: #333;">Drop up</p>
178
+ <div style="display: flex; gap: 2px;">
179
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
180
+ <div style="width: 120px; position: relative;">
181
+ <div style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1;">
182
+ <cai-dispatch-dropdown [hasNoRemoveButton]="hasNoRemoveButton" [isLocked]="isLocked" [data]="data" [options]="options" [config]="config">
183
+ </cai-dispatch-dropdown>
184
+ </div>
185
+ <div style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #F7F7F7; border-radius: 3px;"></div>
186
+ </div>
187
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
188
+ </div>
189
+ </div>
190
+ </div>
191
+ </div>
192
+ `,
193
+ }),
194
+ parameters: {
195
+ layout: 'fullscreen',
196
+ },
197
+ };
198
+
199
+ export const WithTemplate: Story = {
200
+ args: {
201
+ hasNoRemoveButton: false,
202
+ isLocked: false,
203
+ isDisabled: true,
204
+ disabledTooltip: 'Active Load',
205
+ data: {
206
+ unitNumber: 'TR-1234',
207
+ driver: 'John Doe',
208
+ status: 'Active',
209
+ },
210
+ options: [
211
+ { id: 1, name: 'TR-1234' },
212
+ { id: 2, name: 'TR-5678' },
213
+ { id: 3, name: 'TR-9012' },
214
+ { id: 4, name: 'TR-3456' },
215
+ { id: 5, name: 'TR-7890' },
216
+ ],
217
+ config: {
218
+ placeholder: 'Unit No.',
219
+ optionLabel: 'unitNumber',
220
+ },
221
+ },
222
+
223
+ render: (args) => ({
224
+ props: {
225
+ ...args,
226
+ },
227
+ template: `
228
+ <ng-template #contentTpl let-data>
229
+ <div style="display: flex; align-items: center; gap: 8px; padding: 4px 8px; height: 100%; width: 100%; background-color: red;">
230
+ <div style="font-weight: 600; color: #333;">{{data.unitNumber}}</div>
231
+ </div>
232
+ </ng-template>
233
+
234
+ <div style="display: flex; gap: 2px; flex-direction: column;">
235
+ <div style="display: flex; gap: 2px;">
236
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
237
+ <div style="width: 120px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
238
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
239
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
240
+ </div>
241
+ <div style="display: flex; gap: 2px;">
242
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
243
+ <div style="width: 120px; position: relative;">
244
+ <div style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1;">
245
+ <cai-dispatch-dropdown
246
+ [hasNoRemoveButton]="hasNoRemoveButton"
247
+ [isLocked]="isLocked"
248
+ [isDisabled]="isDisabled"
249
+ [disabledTooltip]="disabledTooltip"
250
+ [data]="data"
251
+ [options]="options"
252
+ [config]="config"
253
+ [contentTemplate]="contentTpl"
254
+ >
255
+ </cai-dispatch-dropdown>
256
+ </div>
257
+ <div style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #F7F7F7; border-radius: 3px;"></div>
258
+ </div>
259
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
260
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
261
+ </div>
262
+ <div style="display: flex; gap: 2px;">
263
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
264
+ <div style="width: 120px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
265
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
266
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
267
+ </div>
268
+ </div>
269
+ `,
270
+ }),
271
+ };
272
+
273
+ export const WithNoContentTemplate: Story = {
274
+ args: {
275
+ hasNoRemoveButton: false,
276
+ isLocked: false,
277
+ data: null,
278
+ config: {
279
+ placeholder: 'Unit No.',
280
+ optionLabel: 'unitNumber',
281
+ },
282
+ options: [
283
+ { id: 1, unitNumber: 'TR-1234' },
284
+ { id: 2, unitNumber: 'TR-5678' },
285
+ { id: 3, unitNumber: 'TR-9012' },
286
+ { id: 4, unitNumber: 'TR-3456' },
287
+ { id: 5, unitNumber: 'TR-7890' },
288
+ { id: 6, unitNumber: 'TR-1111' },
289
+ { id: 7, unitNumber: 'TR-2222' },
290
+ { id: 8, unitNumber: 'TR-3333' },
291
+ { id: 9, unitNumber: 'TR-4444' },
292
+ { id: 10, unitNumber: 'TR-5555' },
293
+ { id: 11, unitNumber: 'TR-6666' },
294
+ { id: 12, unitNumber: 'TR-7777' },
295
+ { id: 13, unitNumber: 'TR-8888' },
296
+ { id: 14, unitNumber: 'TR-9999' },
297
+ { id: 15, unitNumber: 'TR-0000' },
298
+ ],
299
+ },
300
+
301
+ render: (args) => ({
302
+ props: {
303
+ ...args,
304
+ },
305
+ template: `
306
+ <div style="display: flex; gap: 2px; flex-direction: column;">
307
+ <ng-template #noContentTpl>
308
+ <div>Hi</div>
309
+ </ng-template>
310
+
311
+ <div style="display: flex; gap: 2px;">
312
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
313
+ <div style="width: 120px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
314
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
315
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
316
+
317
+ </div>
318
+ <div style="display: flex; gap: 2px;">
319
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
320
+ <div style="width: 120px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
321
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
322
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
323
+
324
+ </div>
325
+ <div style="display: flex; gap: 2px;">
326
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
327
+ <div style="width: 120px; position: relative;">
328
+ <div style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;">
329
+ <cai-dispatch-dropdown [hasNoRemoveButton]="hasNoRemoveButton" [isLocked]="isLocked" [data]="data" [options]="options" [config]="config" [noContentTemplate]="noContentTpl">
330
+ </cai-dispatch-dropdown>
331
+ </div>
332
+ <div style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #F7F7F7; border-radius: 3px;"></div>
333
+ </div>
334
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
335
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
336
+
337
+ </div>
338
+ <div style="display: flex; gap: 2px;">
339
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
340
+ <div style="width: 120px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
341
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
342
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
343
+
344
+ </div>
345
+ </div>
346
+ `,
347
+ }),
348
+ };
349
+
350
+ export const WithGroupedOptions: Story = {
351
+ args: {
352
+ hasNoRemoveButton: false,
353
+ isLocked: false,
354
+ data: null,
355
+
356
+ config: {
357
+ placeholder: 'Slot',
358
+ optionLabel: 'slotNumber',
359
+ groupLabel: 'name',
360
+ groupOptions: 'parkingSlots',
361
+ isGrouped: true,
362
+ },
363
+ options: parkingLots.parkingLots,
364
+ },
365
+
366
+ render: (args) => ({
367
+ props: {
368
+ ...args,
369
+ },
370
+ template: `
371
+ <div style="display: flex; gap: 2px; flex-direction: column;">
372
+ <div style="display: flex; gap: 2px;">
373
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
374
+ <div style="width: 120px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
375
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
376
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
377
+
378
+ </div>
379
+ <div style="display: flex; gap: 2px;">
380
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
381
+ <div style="width: 120px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
382
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
383
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
384
+
385
+ </div>
386
+ <div style="display: flex; gap: 2px;">
387
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
388
+ <div style="width: 120px; position: relative;">
389
+ <div style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;">
390
+ <cai-dispatch-dropdown [hasNoRemoveButton]="hasNoRemoveButton" [isLocked]="isLocked" [data]="data" [options]="options" [config]="config">
391
+ </cai-dispatch-dropdown>
392
+ </div>
393
+ <div style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #F7F7F7; border-radius: 3px;"></div>
394
+ </div>
395
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
396
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
397
+
398
+ </div>
399
+ <div style="display: flex; gap: 2px;">
400
+ <div style="width: 80px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
401
+ <div style="width: 120px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
402
+ <div style="width: 240px; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
403
+ <div style="width: auto; min-width: 0; flex: 1; height: 34px; border-radius: 3px; background-color: #F7F7F7;"></div>
404
+
405
+ </div>
406
+ </div>
407
+ `,
408
+ }),
409
+ };
@@ -0,0 +1,248 @@
1
+ // Interfaces
2
+ import {
3
+ IDispatchDropdownConfig,
4
+ IDispatchDropdownOption,
5
+ } from '../interfaces';
6
+
7
+ export class DispatchDropdownHelper {
8
+ /**
9
+ * Calculate the max height for grouped options dropdown menu
10
+ */
11
+ static calculateGroupMaxHeight(
12
+ groups: Array<{
13
+ highlightedOptions?: unknown[];
14
+ isCollapsed?: boolean;
15
+ }>,
16
+ hasNoAddNew?: boolean,
17
+ ): string {
18
+ const hasNoAddNewFlag = hasNoAddNew ?? false;
19
+
20
+ // Calculate total count for grouped options
21
+ const groupedCount = groups.length
22
+ ? groups
23
+ .filter((group) => !group.isCollapsed)
24
+ .reduce((total, group) => {
25
+ const count = group.highlightedOptions?.length
26
+ ? group.highlightedOptions.length
27
+ : hasNoAddNewFlag
28
+ ? 1
29
+ : 2;
30
+ return total + count;
31
+ }, 0)
32
+ : 0;
33
+
34
+ const height =
35
+ 6 +
36
+ (groups.length ? groups.length * 34 - 4 : hasNoAddNewFlag ? 30 : 60) +
37
+ groupedCount * 30;
38
+
39
+ return height > 244 ? '244px' : `${height}px`;
40
+ }
41
+
42
+ /**
43
+ * Calculate the max height for regular options dropdown menu
44
+ */
45
+ static calculateMaxHeight(
46
+ optionsLength: number,
47
+ hasNoAddNew?: boolean,
48
+ ): string {
49
+ const hasNoAddNewFlag = hasNoAddNew ?? false;
50
+ const height = 6 + (optionsLength || (hasNoAddNewFlag ? 1 : 2)) * 30;
51
+ return height > 244 ? '244px' : `${height}px`;
52
+ }
53
+
54
+ /**
55
+ * Filter grouped options based on search value
56
+ * Searches both group labels and option labels
57
+ * Never removes groups - instead sorts by relevancy
58
+ */
59
+ static filterGroupedOptions(
60
+ options: IDispatchDropdownOption[],
61
+ searchValue: string,
62
+ config: IDispatchDropdownConfig,
63
+ ): IDispatchDropdownOption[] {
64
+ const groupLabel = config.groupLabel ?? 'name';
65
+ const groupOptionsKey = config.groupOptions ?? 'options';
66
+ const optionLabel = config.optionLabel ?? 'name';
67
+
68
+ if (!searchValue) return options;
69
+
70
+ const lowerSearch = searchValue.toLowerCase();
71
+
72
+ // Separate groups into relevant and irrelevant
73
+ const relevantGroups: IDispatchDropdownOption[] = [];
74
+ const irrelevantGroups: IDispatchDropdownOption[] = [];
75
+
76
+ options.forEach((group) => {
77
+ const groupName = group[groupLabel] ?? '';
78
+ const groupOptions = group[groupOptionsKey] ?? [];
79
+
80
+ // Check if group name matches
81
+ const groupMatches = groupName.toLowerCase().includes(lowerSearch);
82
+
83
+ // If group matches, include all options and mark as relevant
84
+ if (groupMatches) {
85
+ relevantGroups.push({
86
+ ...group,
87
+ _isRelevant: true,
88
+ });
89
+ return;
90
+ }
91
+
92
+ // Filter options within the group
93
+ const filteredGroupOptions = groupOptions.filter(
94
+ (option: IDispatchDropdownOption) => {
95
+ const optionText = String(option[optionLabel] ?? '');
96
+ return optionText.toLowerCase().includes(lowerSearch);
97
+ },
98
+ );
99
+
100
+ // Group is relevant if it has matching options
101
+ if (filteredGroupOptions.length > 0) {
102
+ relevantGroups.push({
103
+ ...group,
104
+ [groupOptionsKey]: filteredGroupOptions,
105
+ _isRelevant: true,
106
+ });
107
+ } else {
108
+ // Keep the group but mark as irrelevant
109
+ irrelevantGroups.push({
110
+ ...group,
111
+ _isRelevant: false,
112
+ });
113
+ }
114
+ });
115
+
116
+ // Return relevant groups first, then irrelevant groups
117
+ return [...relevantGroups, ...irrelevantGroups];
118
+ }
119
+
120
+ /**
121
+ * Process filtered options and add highlighting for grouped display
122
+ */
123
+ static processGroupedOptionsWithHighlighting(
124
+ options: IDispatchDropdownOption[],
125
+ searchValue: string,
126
+ collapsedGroups: string[],
127
+ config: IDispatchDropdownConfig,
128
+ ) {
129
+ const groupLabel = config.groupLabel ?? 'name';
130
+ const groupOptionsKey = config.groupOptions ?? 'options';
131
+ const optionLabel = config.optionLabel ?? 'name';
132
+
133
+ const escapedSearchValue = searchValue
134
+ ? searchValue.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')
135
+ : '';
136
+ const regex = escapedSearchValue
137
+ ? new RegExp(escapedSearchValue, 'gi')
138
+ : null;
139
+
140
+ return options.map((group) => {
141
+ const groupName = group[groupLabel] ?? '';
142
+ const groupOptions = group[groupOptionsKey] ?? [];
143
+ const isRelevant = group['_isRelevant'] ?? true;
144
+
145
+ // Highlight group name if it matches
146
+ const highlightedGroupName =
147
+ regex && groupName.toLowerCase().includes(searchValue.toLowerCase())
148
+ ? groupName.replace(regex, '<span class="cai-highlight">$&</span>')
149
+ : groupName;
150
+
151
+ // Highlight options
152
+ const highlightedOptions = groupOptions.map(
153
+ (option: IDispatchDropdownOption) => {
154
+ const text = String(option[optionLabel] ?? '');
155
+ const highlighted =
156
+ regex && text.toLowerCase().includes(searchValue.toLowerCase())
157
+ ? text.replace(regex, '<span class="cai-highlight">$&</span>')
158
+ : text;
159
+
160
+ return {
161
+ ...option,
162
+ highlighted,
163
+ _group: group, // Reference to parent group
164
+ };
165
+ },
166
+ );
167
+
168
+ // Use the collapsedGroups parameter for collapse state
169
+ const isCollapsed = groupName
170
+ ? collapsedGroups.includes(groupName)
171
+ : false;
172
+
173
+ return {
174
+ ...group,
175
+ groupName,
176
+ highlightedGroupName,
177
+ highlightedOptions,
178
+ isCollapsed,
179
+ isRelevant, // Pass through for potential UI use
180
+ };
181
+ });
182
+ }
183
+
184
+ /**
185
+ * Calculate which groups should be collapsed based on search relevancy
186
+ * Returns the updated collapsedGroups array
187
+ */
188
+ static calculateCollapsedGroupsForSearch(
189
+ options: IDispatchDropdownOption[],
190
+ searchValue: string,
191
+ config: IDispatchDropdownConfig,
192
+ ): string[] {
193
+ const groupLabel = config.groupLabel ?? 'name';
194
+ const isSearching = searchValue.trim().length > 0;
195
+
196
+ if (!isSearching) {
197
+ return [];
198
+ }
199
+
200
+ const collapsedGroups: string[] = [];
201
+
202
+ options.forEach((group) => {
203
+ const groupName = group[groupLabel] ?? '';
204
+ const isRelevant = group['_isRelevant'] ?? true;
205
+
206
+ // Collapse irrelevant groups
207
+ if (!isRelevant && groupName) {
208
+ collapsedGroups.push(groupName);
209
+ }
210
+ });
211
+
212
+ return collapsedGroups;
213
+ }
214
+
215
+ /**
216
+ * Add highlighting to options based on search value
217
+ */
218
+ static highlightOptions(
219
+ options: IDispatchDropdownOption[],
220
+ searchValue: string,
221
+ optionLabel: string,
222
+ ) {
223
+ if (!searchValue || searchValue.trim() === '') {
224
+ return options.map((option) => ({
225
+ ...option,
226
+ highlighted: option[optionLabel],
227
+ }));
228
+ }
229
+
230
+ const escapedSearchValue = searchValue.replace(
231
+ /[.*+?^${}()|[\]\\]/g,
232
+ '\\$&',
233
+ );
234
+ const regex = new RegExp(escapedSearchValue, 'gi');
235
+
236
+ return options.map((option) => {
237
+ const text = option[optionLabel];
238
+ const highlighted = text.toLowerCase().includes(searchValue.toLowerCase())
239
+ ? text.replace(regex, '<span class="cai-highlight">$&</span>')
240
+ : text;
241
+
242
+ return {
243
+ ...option,
244
+ highlighted,
245
+ };
246
+ });
247
+ }
248
+ }
@@ -0,0 +1,10 @@
1
+ export interface IDispatchDropdownConfig {
2
+ hasPagination?: boolean;
3
+ placeholder?: string;
4
+ hasNoAdd?: boolean;
5
+ hasNoAddNew?: boolean;
6
+ optionLabel?: string; // option label (key)
7
+ isGrouped?: boolean;
8
+ groupLabel?: string; // group label (key)
9
+ groupOptions?: string; // key for the options array within each group (e.g., "parkingSlots")
10
+ }
@@ -0,0 +1,4 @@
1
+ export interface IDispatchDropdownOption {
2
+ id?: number;
3
+ [key: string]: any;
4
+ }
@@ -0,0 +1,2 @@
1
+ export * from './dispatch-dropdown-option.interface';
2
+ export * from './dispatch-dropdown-config.interface';