@roadtrip/components 3.17.0 → 3.19.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 (393) hide show
  1. package/dist/cjs/index-fb57f684.js.map +1 -1
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/road-accordion.cjs.entry.js +1 -1
  4. package/dist/cjs/road-accordion.cjs.entry.js.map +1 -1
  5. package/dist/cjs/road-autocomplete.cjs.entry.js +1 -1
  6. package/dist/cjs/road-autocomplete.cjs.entry.js.map +1 -1
  7. package/dist/cjs/road-badge_14.cjs.entry.js +40 -8
  8. package/dist/cjs/road-badge_14.cjs.entry.js.map +1 -1
  9. package/dist/cjs/road-banner.cjs.entry.js +1 -1
  10. package/dist/cjs/road-banner.cjs.entry.js.map +1 -1
  11. package/dist/cjs/road-button-floating.cjs.entry.js +1 -1
  12. package/dist/cjs/road-button-floating.cjs.entry.js.map +1 -1
  13. package/dist/cjs/road-card.cjs.entry.js +1 -1
  14. package/dist/cjs/road-card.cjs.entry.js.map +1 -1
  15. package/dist/cjs/road-carousel.cjs.entry.js +30 -118
  16. package/dist/cjs/road-carousel.cjs.entry.js.map +1 -1
  17. package/dist/cjs/road-chip.cjs.entry.js +2 -2
  18. package/dist/cjs/road-chip.cjs.entry.js.map +1 -1
  19. package/dist/cjs/road-collapse.cjs.entry.js +1 -1
  20. package/dist/cjs/road-collapse.cjs.entry.js.map +1 -1
  21. package/dist/cjs/road-dialog.cjs.entry.js +2 -2
  22. package/dist/cjs/road-dialog.cjs.entry.js.map +1 -1
  23. package/dist/cjs/road-dropdown.cjs.entry.js +4 -4
  24. package/dist/cjs/road-dropdown.cjs.entry.js.map +1 -1
  25. package/dist/cjs/road-global-navigation.cjs.entry.js +1 -1
  26. package/dist/cjs/road-global-navigation.cjs.entry.js.map +1 -1
  27. package/dist/cjs/road-illustration.cjs.entry.js +1 -1
  28. package/dist/cjs/road-illustration.cjs.entry.js.map +1 -1
  29. package/dist/cjs/road-modal.cjs.entry.js +2 -2
  30. package/dist/cjs/road-modal.cjs.entry.js.map +1 -1
  31. package/dist/cjs/road-navbar-item.cjs.entry.js +1 -1
  32. package/dist/cjs/road-navbar-item.cjs.entry.js.map +1 -1
  33. package/dist/cjs/road-navbar.cjs.entry.js +1 -1
  34. package/dist/cjs/road-navbar.cjs.entry.js.map +1 -1
  35. package/dist/cjs/road-phone-number-input.cjs.entry.js +41 -5
  36. package/dist/cjs/road-phone-number-input.cjs.entry.js.map +1 -1
  37. package/dist/cjs/road-plate-number.cjs.entry.js +2 -2
  38. package/dist/cjs/road-plate-number.cjs.entry.js.map +1 -1
  39. package/dist/cjs/road-profil-dropdown.cjs.entry.js +10 -1
  40. package/dist/cjs/road-profil-dropdown.cjs.entry.js.map +1 -1
  41. package/dist/cjs/road-progress-indicator-vertical.cjs.entry.js +2 -2
  42. package/dist/cjs/road-progress-indicator-vertical.cjs.entry.js.map +1 -1
  43. package/dist/cjs/road-progress-tracker.cjs.entry.js +2 -2
  44. package/dist/cjs/road-progress-tracker.cjs.entry.js.map +1 -1
  45. package/dist/cjs/road-progress.cjs.entry.js +1 -1
  46. package/dist/cjs/road-progress.cjs.entry.js.map +1 -1
  47. package/dist/cjs/road-range.cjs.entry.js +26 -2
  48. package/dist/cjs/road-range.cjs.entry.js.map +1 -1
  49. package/dist/cjs/road-segmented-button.cjs.entry.js +1 -1
  50. package/dist/cjs/road-segmented-button.cjs.entry.js.map +1 -1
  51. package/dist/cjs/road-select-filter.cjs.entry.js +34 -4
  52. package/dist/cjs/road-select-filter.cjs.entry.js.map +1 -1
  53. package/dist/cjs/road-select.cjs.entry.js +1 -1
  54. package/dist/cjs/road-select.cjs.entry.js.map +1 -1
  55. package/dist/cjs/road-textarea.cjs.entry.js +1 -1
  56. package/dist/cjs/road-textarea.cjs.entry.js.map +1 -1
  57. package/dist/cjs/road-tooltip.cjs.entry.js +1 -1
  58. package/dist/cjs/road-tooltip.cjs.entry.js.map +1 -1
  59. package/dist/cjs/roadtrip.cjs.js +1 -1
  60. package/dist/collection/components/accordion/accordion.css +4 -0
  61. package/dist/collection/components/accordion/accordion.stories.js +1 -1
  62. package/dist/collection/components/alert/alert.stories.js +1 -1
  63. package/dist/collection/components/autocomplete/autocomplete.js +1 -1
  64. package/dist/collection/components/autocomplete/autocomplete.js.map +1 -1
  65. package/dist/collection/components/autocomplete/autocomplete.stories.js +2 -2
  66. package/dist/collection/components/avatar/avatar.stories.js +1 -1
  67. package/dist/collection/components/badge/badge.stories.js +2 -2
  68. package/dist/collection/components/banner/banner.js +1 -1
  69. package/dist/collection/components/banner/banner.js.map +1 -1
  70. package/dist/collection/components/button/button.stories.js +6 -6
  71. package/dist/collection/components/button-floating/button-floating.css +0 -4
  72. package/dist/collection/components/button-floating/button-floating.stories.js +2 -2
  73. package/dist/collection/components/card/card.css +4 -0
  74. package/dist/collection/components/card/card.stories.js +4 -4
  75. package/dist/collection/components/carousel/carousel.css +4 -1
  76. package/dist/collection/components/carousel/carousel.js +93 -250
  77. package/dist/collection/components/carousel/carousel.js.map +1 -1
  78. package/dist/collection/components/chip/chip.css +2 -2
  79. package/dist/collection/components/chip/chip.js +1 -1
  80. package/dist/collection/components/chip/chip.js.map +1 -1
  81. package/dist/collection/components/chip/chip.stories.js +26 -1
  82. package/dist/collection/components/collapse/collapse.css +4 -0
  83. package/dist/collection/components/collapse/collapse.stories.js +8 -8
  84. package/dist/collection/components/counter/counter.css +5 -0
  85. package/dist/collection/components/counter/counter.js +19 -1
  86. package/dist/collection/components/counter/counter.js.map +1 -1
  87. package/dist/collection/components/dialog/dialog.js +2 -2
  88. package/dist/collection/components/dialog/dialog.js.map +1 -1
  89. package/dist/collection/components/drawer/drawer.js +1 -1
  90. package/dist/collection/components/drawer/drawer.js.map +1 -1
  91. package/dist/collection/components/drawer/drawer.stories.js +2 -2
  92. package/dist/collection/components/dropdown/dropdown.css +9 -4
  93. package/dist/collection/components/dropdown/dropdown.js +3 -3
  94. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  95. package/dist/collection/components/dropdown/dropdown.stories.js +4 -4
  96. package/dist/collection/components/global-navigation/global-navigation.js +1 -1
  97. package/dist/collection/components/global-navigation/global-navigation.js.map +1 -1
  98. package/dist/collection/components/global-navigation/global-navigation.stories.js +39 -39
  99. package/dist/collection/components/icon/icon.stories.js +44 -43
  100. package/dist/collection/components/icon/svg/fuel-air-supply-color.svg +1 -1
  101. package/dist/collection/components/icon/svg/fuel-air-supply-outline.svg +1 -1
  102. package/dist/collection/components/icon/svg/funding-best-price-color.svg +1 -1
  103. package/dist/collection/components/icon/svg/funding-best-price-outline.svg +1 -1
  104. package/dist/collection/components/icon/svg/helmet-cross-color.svg +1 -1
  105. package/dist/collection/components/icon/svg/helmet-cross-outline.svg +1 -1
  106. package/dist/collection/components/icon/svg/ice-color.svg +1 -1
  107. package/dist/collection/components/icon/svg/ice-outline.svg +1 -1
  108. package/dist/collection/components/icon/svg/ice-solid-color.svg +1 -1
  109. package/dist/collection/components/icon/svg/ice-solid.svg +1 -1
  110. package/dist/collection/components/icon/svg/light-beam-signal-color.svg +1 -1
  111. package/dist/collection/components/icon/svg/light-beam-signal-outline.svg +1 -1
  112. package/dist/collection/components/icon/svg/social-facebook-badge.svg +1 -1
  113. package/dist/collection/components/icon/svg/social-google-badge.svg +1 -1
  114. package/dist/collection/components/icon/svg/social-instagram-badge.svg +1 -1
  115. package/dist/collection/components/icon/svg/social-instagramWithinCircle.svg +1 -1
  116. package/dist/collection/components/icon/svg/social-linkedin-badge.svg +1 -1
  117. package/dist/collection/components/icon/svg/social-paypal-badge.svg +1 -1
  118. package/dist/collection/components/icon/svg/social-tiktok-badge.svg +1 -1
  119. package/dist/collection/components/icon/svg/social-twitter-badge.svg +1 -1
  120. package/dist/collection/components/icon/svg/social-whatsapp-badge.svg +1 -1
  121. package/dist/collection/components/icon/svg/social-youtube-badge.svg +1 -1
  122. package/dist/collection/components/icon/svg/tire-ice-color.svg +1 -1
  123. package/dist/collection/components/icon/svg/tire-ice-outline.svg +1 -1
  124. package/dist/collection/components/icon/svg/tire-ice-solid.svg +1 -1
  125. package/dist/collection/components/icon/svg/vehicle-car-unselected-color.svg +1 -1
  126. package/dist/collection/components/icon/svg/vehicle-car-unselected-outline.svg +1 -1
  127. package/dist/collection/components/icon/svg/wrench-twin-color.svg +1 -1
  128. package/dist/collection/components/icon/svg/wrench-twin-outline.svg +1 -1
  129. package/dist/collection/components/icon/svg/wrench-twin-solid.svg +1 -1
  130. package/dist/collection/components/illustration/illustration.js +1 -1
  131. package/dist/collection/components/illustration/illustration.js.map +1 -1
  132. package/dist/collection/components/input/input.css +8 -2
  133. package/dist/collection/components/input/input.js +16 -2
  134. package/dist/collection/components/input/input.js.map +1 -1
  135. package/dist/collection/components/input-group/input-group.js +1 -1
  136. package/dist/collection/components/input-group/input-group.js.map +1 -1
  137. package/dist/collection/components/input-group/input-group.stories.js +4 -4
  138. package/dist/collection/components/item/item.stories.js +9 -9
  139. package/dist/collection/components/list/list.stories.js +8 -8
  140. package/dist/collection/components/modal/modal.css +2 -2
  141. package/dist/collection/components/modal/modal.js +1 -1
  142. package/dist/collection/components/modal/modal.js.map +1 -1
  143. package/dist/collection/components/navbar/navbar.js +1 -1
  144. package/dist/collection/components/navbar/navbar.js.map +1 -1
  145. package/dist/collection/components/navbar/navbar.stories.js +84 -63
  146. package/dist/collection/components/navbar-item/navbar-item.js +1 -1
  147. package/dist/collection/components/navbar-item/navbar-item.js.map +1 -1
  148. package/dist/collection/components/patterns/link.stories.js +2 -2
  149. package/dist/collection/components/phone-number-input/phone-number-input.css +0 -1
  150. package/dist/collection/components/phone-number-input/phone-number-input.js +40 -4
  151. package/dist/collection/components/phone-number-input/phone-number-input.js.map +1 -1
  152. package/dist/collection/components/plate-number/plate-number.css +1 -1
  153. package/dist/collection/components/plate-number/plate-number.js +1 -1
  154. package/dist/collection/components/plate-number/plate-number.js.map +1 -1
  155. package/dist/collection/components/profil-dropdown/profil-dropdown.css +8 -0
  156. package/dist/collection/components/profil-dropdown/profil-dropdown.js +18 -0
  157. package/dist/collection/components/profil-dropdown/profil-dropdown.js.map +1 -1
  158. package/dist/collection/components/profil-dropdown/profil-dropdown.stories.js +4 -4
  159. package/dist/collection/components/progress/progress.js +1 -1
  160. package/dist/collection/components/progress/progress.js.map +1 -1
  161. package/dist/collection/components/progress-indicator-vertical/progress-indicator-vertical.css +5 -0
  162. package/dist/collection/components/progress-indicator-vertical/progress-indicator-vertical.js +1 -1
  163. package/dist/collection/components/progress-indicator-vertical/progress-indicator-vertical.js.map +1 -1
  164. package/dist/collection/components/progress-indicator-vertical/progress-indicator-vertical.stories.js +20 -20
  165. package/dist/collection/components/progress-tracker/progress-tracker.css +4 -0
  166. package/dist/collection/components/progress-tracker/progress-tracker.js +1 -1
  167. package/dist/collection/components/progress-tracker/progress-tracker.js.map +1 -1
  168. package/dist/collection/components/range/range.css +17 -2
  169. package/dist/collection/components/range/range.js +41 -2
  170. package/dist/collection/components/range/range.js.map +1 -1
  171. package/dist/collection/components/segmented-button/segmented-button.js +1 -1
  172. package/dist/collection/components/segmented-button/segmented-button.js.map +1 -1
  173. package/dist/collection/components/select/select.css +1 -1
  174. package/dist/collection/components/select-filter/select-filter.css +5 -0
  175. package/dist/collection/components/select-filter/select-filter.js +43 -9
  176. package/dist/collection/components/select-filter/select-filter.js.map +1 -1
  177. package/dist/collection/components/select-filter/select-filter.stories.js +8 -8
  178. package/dist/collection/components/tabs/tabs.stories.js +5 -5
  179. package/dist/collection/components/textarea/textarea.css +2 -2
  180. package/dist/collection/components/toolbar/toolbar.css +0 -2
  181. package/dist/collection/components/toolbar/toolbar.stories.js +8 -8
  182. package/dist/collection/components/tooltip/tooltip.js +1 -1
  183. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  184. package/dist/collection/components/tooltip/tooltip.stories.js +3 -3
  185. package/dist/esm/{index-891decf5.js → index-7a0158a4.js} +2 -2
  186. package/dist/esm/index-7a0158a4.js.map +1 -0
  187. package/dist/esm/loader.js +1 -1
  188. package/dist/esm/road-accordion.entry.js +2 -2
  189. package/dist/esm/road-accordion.entry.js.map +1 -1
  190. package/dist/esm/road-autocomplete.entry.js +1 -1
  191. package/dist/esm/road-autocomplete.entry.js.map +1 -1
  192. package/dist/esm/road-badge_14.entry.js +41 -9
  193. package/dist/esm/road-badge_14.entry.js.map +1 -1
  194. package/dist/esm/road-banner.entry.js +2 -2
  195. package/dist/esm/road-banner.entry.js.map +1 -1
  196. package/dist/esm/road-button-floating.entry.js +1 -1
  197. package/dist/esm/road-button-floating.entry.js.map +1 -1
  198. package/dist/esm/road-card.entry.js +1 -1
  199. package/dist/esm/road-card.entry.js.map +1 -1
  200. package/dist/esm/road-carousel.entry.js +31 -119
  201. package/dist/esm/road-carousel.entry.js.map +1 -1
  202. package/dist/esm/road-checkbox.entry.js +1 -1
  203. package/dist/esm/road-chip.entry.js +3 -3
  204. package/dist/esm/road-chip.entry.js.map +1 -1
  205. package/dist/esm/road-collapse.entry.js +1 -1
  206. package/dist/esm/road-collapse.entry.js.map +1 -1
  207. package/dist/esm/road-dialog.entry.js +3 -3
  208. package/dist/esm/road-dialog.entry.js.map +1 -1
  209. package/dist/esm/road-dropdown.entry.js +4 -4
  210. package/dist/esm/road-dropdown.entry.js.map +1 -1
  211. package/dist/esm/road-global-navigation.entry.js +1 -1
  212. package/dist/esm/road-global-navigation.entry.js.map +1 -1
  213. package/dist/esm/road-illustration.entry.js +1 -1
  214. package/dist/esm/road-illustration.entry.js.map +1 -1
  215. package/dist/esm/road-modal.entry.js +3 -3
  216. package/dist/esm/road-modal.entry.js.map +1 -1
  217. package/dist/esm/road-navbar-item.entry.js +1 -1
  218. package/dist/esm/road-navbar-item.entry.js.map +1 -1
  219. package/dist/esm/road-navbar.entry.js +1 -1
  220. package/dist/esm/road-navbar.entry.js.map +1 -1
  221. package/dist/esm/road-phone-number-input.entry.js +41 -5
  222. package/dist/esm/road-phone-number-input.entry.js.map +1 -1
  223. package/dist/esm/road-plate-number.entry.js +3 -3
  224. package/dist/esm/road-plate-number.entry.js.map +1 -1
  225. package/dist/esm/road-profil-dropdown.entry.js +11 -2
  226. package/dist/esm/road-profil-dropdown.entry.js.map +1 -1
  227. package/dist/esm/road-progress-indicator-vertical.entry.js +2 -2
  228. package/dist/esm/road-progress-indicator-vertical.entry.js.map +1 -1
  229. package/dist/esm/road-progress-tracker.entry.js +2 -2
  230. package/dist/esm/road-progress-tracker.entry.js.map +1 -1
  231. package/dist/esm/road-progress.entry.js +1 -1
  232. package/dist/esm/road-progress.entry.js.map +1 -1
  233. package/dist/esm/road-range.entry.js +28 -4
  234. package/dist/esm/road-range.entry.js.map +1 -1
  235. package/dist/esm/road-rating.entry.js +1 -1
  236. package/dist/esm/road-segmented-button.entry.js +1 -1
  237. package/dist/esm/road-segmented-button.entry.js.map +1 -1
  238. package/dist/esm/road-select-filter.entry.js +34 -4
  239. package/dist/esm/road-select-filter.entry.js.map +1 -1
  240. package/dist/esm/road-select.entry.js +1 -1
  241. package/dist/esm/road-select.entry.js.map +1 -1
  242. package/dist/esm/road-textarea.entry.js +1 -1
  243. package/dist/esm/road-textarea.entry.js.map +1 -1
  244. package/dist/esm/road-toast.entry.js +1 -1
  245. package/dist/esm/road-tooltip.entry.js +1 -1
  246. package/dist/esm/road-tooltip.entry.js.map +1 -1
  247. package/dist/esm/roadtrip.js +1 -1
  248. package/dist/html.html-data.json +3 -3
  249. package/dist/icons/index.js +30 -30
  250. package/dist/roadtrip/p-054acf61.entry.js +2 -0
  251. package/dist/roadtrip/p-054acf61.entry.js.map +1 -0
  252. package/dist/roadtrip/{p-ea28a425.entry.js → p-08b0be1b.entry.js} +2 -2
  253. package/dist/roadtrip/p-08b0be1b.entry.js.map +1 -0
  254. package/dist/roadtrip/{p-1a761fc0.entry.js → p-0fd454dc.entry.js} +2 -2
  255. package/dist/roadtrip/p-0fd454dc.entry.js.map +1 -0
  256. package/dist/roadtrip/{p-60e25858.entry.js → p-14ecc91e.entry.js} +2 -2
  257. package/dist/roadtrip/{p-60e25858.entry.js.map → p-14ecc91e.entry.js.map} +1 -1
  258. package/dist/roadtrip/{p-82919e58.entry.js → p-16c934bc.entry.js} +2 -2
  259. package/dist/roadtrip/p-17ae87b0.entry.js +2 -0
  260. package/dist/roadtrip/p-17ae87b0.entry.js.map +1 -0
  261. package/dist/roadtrip/{p-6e3e0b40.entry.js → p-18967429.entry.js} +2 -2
  262. package/dist/roadtrip/{p-6e3e0b40.entry.js.map → p-18967429.entry.js.map} +1 -1
  263. package/dist/roadtrip/{p-a73ef7de.entry.js → p-233eb25c.entry.js} +2 -2
  264. package/dist/roadtrip/p-233eb25c.entry.js.map +1 -0
  265. package/dist/roadtrip/p-27d2770a.entry.js +2 -0
  266. package/dist/roadtrip/p-27d2770a.entry.js.map +1 -0
  267. package/dist/roadtrip/{p-4f47f4f7.entry.js → p-31cf9b61.entry.js} +2 -2
  268. package/dist/roadtrip/p-31cf9b61.entry.js.map +1 -0
  269. package/dist/roadtrip/{p-dcb280e3.entry.js → p-3bce3bdc.entry.js} +2 -2
  270. package/dist/roadtrip/p-3bce3bdc.entry.js.map +1 -0
  271. package/dist/roadtrip/p-4a2f2612.entry.js +2 -0
  272. package/dist/roadtrip/p-4a2f2612.entry.js.map +1 -0
  273. package/dist/roadtrip/p-5203acea.entry.js +2 -0
  274. package/dist/roadtrip/p-5203acea.entry.js.map +1 -0
  275. package/dist/roadtrip/p-6ad5091d.entry.js +2 -0
  276. package/dist/roadtrip/p-6ad5091d.entry.js.map +1 -0
  277. package/dist/roadtrip/{p-2c132382.entry.js → p-72b3b34a.entry.js} +2 -2
  278. package/dist/roadtrip/p-72b3b34a.entry.js.map +1 -0
  279. package/dist/roadtrip/p-7a14e5b7.entry.js +2 -0
  280. package/dist/roadtrip/p-7a14e5b7.entry.js.map +1 -0
  281. package/dist/roadtrip/{p-c3c92152.entry.js → p-7f1d9286.entry.js} +2 -2
  282. package/dist/roadtrip/p-7f1d9286.entry.js.map +1 -0
  283. package/dist/roadtrip/p-9a929988.entry.js +2 -0
  284. package/dist/roadtrip/p-9a929988.entry.js.map +1 -0
  285. package/dist/roadtrip/{p-336aa5f6.entry.js → p-9ff79904.entry.js} +2 -2
  286. package/dist/roadtrip/{p-336aa5f6.entry.js.map → p-9ff79904.entry.js.map} +1 -1
  287. package/dist/roadtrip/p-a5eee655.entry.js +2 -0
  288. package/dist/roadtrip/{p-40daa53b.entry.js.map → p-a5eee655.entry.js.map} +1 -1
  289. package/dist/roadtrip/{p-73fe2357.js → p-ac7a8bca.js} +2 -2
  290. package/dist/roadtrip/p-ac7a8bca.js.map +1 -0
  291. package/dist/roadtrip/{p-6177bb46.entry.js → p-b510e552.entry.js} +2 -2
  292. package/dist/roadtrip/{p-6177bb46.entry.js.map → p-b510e552.entry.js.map} +1 -1
  293. package/dist/roadtrip/{p-46cccafc.entry.js → p-c096723c.entry.js} +2 -2
  294. package/dist/roadtrip/{p-46cccafc.entry.js.map → p-c096723c.entry.js.map} +1 -1
  295. package/dist/roadtrip/p-c7866ae4.entry.js +2 -0
  296. package/dist/roadtrip/p-c7866ae4.entry.js.map +1 -0
  297. package/dist/roadtrip/p-cdefa79c.entry.js +2 -0
  298. package/dist/roadtrip/p-cdefa79c.entry.js.map +1 -0
  299. package/dist/roadtrip/{p-cbc00bfb.entry.js → p-cfc0a3a7.entry.js} +2 -2
  300. package/dist/roadtrip/p-dcbaee2f.entry.js +2 -0
  301. package/dist/roadtrip/p-dcbaee2f.entry.js.map +1 -0
  302. package/dist/roadtrip/{p-7048f786.entry.js → p-dcbb0d20.entry.js} +2 -2
  303. package/dist/roadtrip/p-dcbb0d20.entry.js.map +1 -0
  304. package/dist/roadtrip/{p-414a2791.entry.js → p-e8c9c816.entry.js} +2 -2
  305. package/dist/roadtrip/{p-f5cce766.entry.js → p-ebd19369.entry.js} +2 -2
  306. package/dist/roadtrip/{p-f5cce766.entry.js.map → p-ebd19369.entry.js.map} +1 -1
  307. package/dist/roadtrip/p-f7b4f1fa.entry.js +2 -0
  308. package/dist/roadtrip/p-f7b4f1fa.entry.js.map +1 -0
  309. package/dist/roadtrip/p-f90af0e1.entry.js +2 -0
  310. package/dist/roadtrip/p-f90af0e1.entry.js.map +1 -0
  311. package/dist/roadtrip/roadtrip.css +1 -1
  312. package/dist/roadtrip/roadtrip.esm.js +1 -1
  313. package/dist/roadtrip/roadtrip.esm.js.map +1 -1
  314. package/dist/roadtrip/svg/fuel-air-supply-color.svg +1 -1
  315. package/dist/roadtrip/svg/fuel-air-supply-outline.svg +1 -1
  316. package/dist/roadtrip/svg/funding-best-price-color.svg +1 -1
  317. package/dist/roadtrip/svg/funding-best-price-outline.svg +1 -1
  318. package/dist/roadtrip/svg/helmet-cross-color.svg +1 -1
  319. package/dist/roadtrip/svg/helmet-cross-outline.svg +1 -1
  320. package/dist/roadtrip/svg/ice-color.svg +1 -1
  321. package/dist/roadtrip/svg/ice-outline.svg +1 -1
  322. package/dist/roadtrip/svg/ice-solid-color.svg +1 -1
  323. package/dist/roadtrip/svg/ice-solid.svg +1 -1
  324. package/dist/roadtrip/svg/light-beam-signal-color.svg +1 -1
  325. package/dist/roadtrip/svg/light-beam-signal-outline.svg +1 -1
  326. package/dist/roadtrip/svg/social-facebook-badge.svg +1 -1
  327. package/dist/roadtrip/svg/social-google-badge.svg +1 -1
  328. package/dist/roadtrip/svg/social-instagram-badge.svg +1 -1
  329. package/dist/roadtrip/svg/social-instagramWithinCircle.svg +1 -1
  330. package/dist/roadtrip/svg/social-linkedin-badge.svg +1 -1
  331. package/dist/roadtrip/svg/social-paypal-badge.svg +1 -1
  332. package/dist/roadtrip/svg/social-tiktok-badge.svg +1 -1
  333. package/dist/roadtrip/svg/social-twitter-badge.svg +1 -1
  334. package/dist/roadtrip/svg/social-whatsapp-badge.svg +1 -1
  335. package/dist/roadtrip/svg/social-youtube-badge.svg +1 -1
  336. package/dist/roadtrip/svg/tire-ice-color.svg +1 -1
  337. package/dist/roadtrip/svg/tire-ice-outline.svg +1 -1
  338. package/dist/roadtrip/svg/tire-ice-solid.svg +1 -1
  339. package/dist/roadtrip/svg/vehicle-car-unselected-color.svg +1 -1
  340. package/dist/roadtrip/svg/vehicle-car-unselected-outline.svg +1 -1
  341. package/dist/roadtrip/svg/wrench-twin-color.svg +1 -1
  342. package/dist/roadtrip/svg/wrench-twin-outline.svg +1 -1
  343. package/dist/roadtrip/svg/wrench-twin-solid.svg +1 -1
  344. package/dist/types/components/carousel/carousel.d.ts +1 -131
  345. package/dist/types/components/counter/counter.d.ts +1 -0
  346. package/dist/types/components/phone-number-input/phone-number-input.d.ts +1 -0
  347. package/dist/types/components/profil-dropdown/profil-dropdown.d.ts +2 -0
  348. package/dist/types/components/range/range.d.ts +3 -0
  349. package/dist/types/components/select-filter/select-filter.d.ts +16 -4
  350. package/dist/types/components.d.ts +4 -128
  351. package/hydrate/index.js +217 -176
  352. package/icons/index.js +30 -30
  353. package/package.json +1 -1
  354. package/dist/esm/index-891decf5.js.map +0 -1
  355. package/dist/roadtrip/p-1a761fc0.entry.js.map +0 -1
  356. package/dist/roadtrip/p-2b5974fc.entry.js +0 -2
  357. package/dist/roadtrip/p-2b5974fc.entry.js.map +0 -1
  358. package/dist/roadtrip/p-2c132382.entry.js.map +0 -1
  359. package/dist/roadtrip/p-2c8a6854.entry.js +0 -2
  360. package/dist/roadtrip/p-2c8a6854.entry.js.map +0 -1
  361. package/dist/roadtrip/p-2e25c08d.entry.js +0 -2
  362. package/dist/roadtrip/p-2e25c08d.entry.js.map +0 -1
  363. package/dist/roadtrip/p-33002e9d.entry.js +0 -2
  364. package/dist/roadtrip/p-33002e9d.entry.js.map +0 -1
  365. package/dist/roadtrip/p-372fcb4d.entry.js +0 -2
  366. package/dist/roadtrip/p-372fcb4d.entry.js.map +0 -1
  367. package/dist/roadtrip/p-40daa53b.entry.js +0 -2
  368. package/dist/roadtrip/p-4f47f4f7.entry.js.map +0 -1
  369. package/dist/roadtrip/p-5053b01a.entry.js +0 -2
  370. package/dist/roadtrip/p-5053b01a.entry.js.map +0 -1
  371. package/dist/roadtrip/p-7048f786.entry.js.map +0 -1
  372. package/dist/roadtrip/p-73fe2357.js.map +0 -1
  373. package/dist/roadtrip/p-9bef58e1.entry.js +0 -2
  374. package/dist/roadtrip/p-9bef58e1.entry.js.map +0 -1
  375. package/dist/roadtrip/p-a44a569a.entry.js +0 -2
  376. package/dist/roadtrip/p-a44a569a.entry.js.map +0 -1
  377. package/dist/roadtrip/p-a73ef7de.entry.js.map +0 -1
  378. package/dist/roadtrip/p-acbc0a14.entry.js +0 -2
  379. package/dist/roadtrip/p-acbc0a14.entry.js.map +0 -1
  380. package/dist/roadtrip/p-b2e7bfcb.entry.js +0 -2
  381. package/dist/roadtrip/p-b2e7bfcb.entry.js.map +0 -1
  382. package/dist/roadtrip/p-c3c92152.entry.js.map +0 -1
  383. package/dist/roadtrip/p-dcb280e3.entry.js.map +0 -1
  384. package/dist/roadtrip/p-e2149bdf.entry.js +0 -2
  385. package/dist/roadtrip/p-e2149bdf.entry.js.map +0 -1
  386. package/dist/roadtrip/p-ea28a425.entry.js.map +0 -1
  387. package/dist/roadtrip/p-ee7aaee5.entry.js +0 -2
  388. package/dist/roadtrip/p-ee7aaee5.entry.js.map +0 -1
  389. package/dist/roadtrip/p-faba450c.entry.js +0 -2
  390. package/dist/roadtrip/p-faba450c.entry.js.map +0 -1
  391. /package/dist/roadtrip/{p-82919e58.entry.js.map → p-16c934bc.entry.js.map} +0 -0
  392. /package/dist/roadtrip/{p-cbc00bfb.entry.js.map → p-cfc0a3a7.entry.js.map} +0 -0
  393. /package/dist/roadtrip/{p-414a2791.entry.js.map → p-e8c9c816.entry.js.map} +0 -0
@@ -19,9 +19,17 @@ export class SelectFilter {
19
19
  value: value.toString(),
20
20
  label: label,
21
21
  });
22
+ this.activeIndex = -1;
23
+ };
24
+ this.handleOptionMouseOver = (index) => {
25
+ this.activeIndex = index;
26
+ };
27
+ this.handleOptionClick = (value, label) => {
28
+ this.onClick(value, label);
22
29
  };
23
30
  this.isOpen = false;
24
31
  this.currentValue = '';
32
+ this.activeIndex = -1;
25
33
  this.options = [];
26
34
  this.parameters = {
27
35
  keys: ["value", "label"],
@@ -51,13 +59,35 @@ export class SelectFilter {
51
59
  }
52
60
  }
53
61
  }
54
- render() {
62
+ handleKeydown(event) {
63
+ if (this.isOpen) {
64
+ if (event.key === 'ArrowDown') {
65
+ event.preventDefault();
66
+ this.activeIndex = (this.activeIndex + 1) % this.filteredOptions.length;
67
+ }
68
+ else if (event.key === 'ArrowUp') {
69
+ event.preventDefault();
70
+ this.activeIndex = (this.activeIndex - 1 + this.filteredOptions.length) % this.filteredOptions.length;
71
+ }
72
+ else if (event.key === 'Enter') {
73
+ event.preventDefault();
74
+ const activeOption = this.filteredOptions[this.activeIndex];
75
+ if (activeOption) {
76
+ this.onClick(activeOption.item.value, activeOption.item.label);
77
+ }
78
+ }
79
+ }
80
+ }
81
+ get filteredOptions() {
55
82
  const fuseSearch = new Fuse(this.options, this.parameters);
56
- const options = this.currentValue === '' ? this.options.map((doc, idx) => ({ item: doc, score: 1, refIndex: idx })) : fuseSearch.search(this.currentValue);
83
+ return this.currentValue === '' ? this.options.map((doc, idx) => ({ item: doc, score: 1, refIndex: idx })) : fuseSearch.search(this.currentValue);
84
+ }
85
+ render() {
86
+ const options = this.filteredOptions;
57
87
  const isActive = this.isActive ? 'true' : 'false';
58
88
  const notActive = this.isActive ? '' : 'not-active';
59
89
  return (h(Host, { "is-active": isActive }, h("slot", null), this.isOpen &&
60
- h("ul", { class: `${notActive} select-filter-list`, role: "listbox" }, options.map(option => (h("li", { class: "select-filter-item", role: "option", onClick: () => this.onClick(option.item.value, option.item.label.replace(/(<([^>]+)>)/gi, "")), innerHTML: option.item.label }))))));
90
+ h("ul", { class: `${notActive} select-filter-list`, role: "listbox" }, options.map((option, idx) => (h("li", { class: `select-filter-item ${this.activeIndex === idx ? 'active' : ''}`, role: "option", "aria-selected": this.activeIndex === idx ? 'true' : 'false', onClick: () => this.handleOptionClick(option.item.value, option.item.label.replace(/(<([^>]+)>)/gi, "")), onMouseOver: () => this.handleOptionMouseOver(idx), innerHTML: option.item.label, tabindex: this.activeIndex === idx ? 0 : -1 }))))));
61
91
  }
62
92
  static get is() { return "road-select-filter"; }
63
93
  static get encapsulation() { return "scoped"; }
@@ -153,7 +183,8 @@ export class SelectFilter {
153
183
  static get states() {
154
184
  return {
155
185
  "isOpen": {},
156
- "currentValue": {}
186
+ "currentValue": {},
187
+ "activeIndex": {}
157
188
  };
158
189
  }
159
190
  static get events() {
@@ -165,7 +196,7 @@ export class SelectFilter {
165
196
  "composed": true,
166
197
  "docs": {
167
198
  "tags": [],
168
- "text": "Emitted the value and label of the option selected."
199
+ "text": ""
169
200
  },
170
201
  "complexType": {
171
202
  "original": "{\n value: string | undefined | null,\n label: string\n }",
@@ -179,10 +210,7 @@ export class SelectFilter {
179
210
  "cancelable": true,
180
211
  "composed": true,
181
212
  "docs": {
182
- "tags": [{
183
- "name": "internal",
184
- "text": undefined
185
- }],
213
+ "tags": [],
186
214
  "text": ""
187
215
  },
188
216
  "complexType": {
@@ -236,6 +264,12 @@ export class SelectFilter {
236
264
  "target": "document",
237
265
  "capture": false,
238
266
  "passive": false
267
+ }, {
268
+ "name": "keydown",
269
+ "method": "handleKeydown",
270
+ "target": "window",
271
+ "capture": false,
272
+ "passive": false
239
273
  }];
240
274
  }
241
275
  }
@@ -1 +1 @@
1
- {"version":3,"file":"select-filter.js","sourceRoot":"","sources":["../../../src/components/select-filter/select-filter.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Host, Listen, Prop, State, h, Event, EventEmitter } from '@stencil/core';\nimport Fuse from 'fuse.js';\n\n/**\n * @slot - Input element for the widget, it should be a road-input element.\n */\n\n@Component({\n tag: 'road-select-filter',\n styleUrl: 'select-filter.css',\n scoped: true,\n})\nexport class SelectFilter {\n\n @Element() el!: HTMLRoadSelectFilterElement;\n\n @State() isOpen: boolean = false;\n\n @State() currentValue: string = '';\n\n /**\n * List of options of the select\n */\n @Prop() options: Array<{\n value: string | number;\n label: string;\n }> = [];\n\n /**\n * Options to pass to the fuse.js instance.\n * See https://fusejs.io/api/options.html for valid options\n */\n @Prop() parameters: any = {\n keys: [\"value\", \"label\"],\n threshold: 0.3,\n ignoreLocation: true,\n };\n\n /**\n * If `true`, add class Active\n */\n @Prop() isActive: boolean = false;\n\n /**\n * If `false`, the user can submit custom value\n */\n @Prop() onlySelect: boolean = true;\n\n @Listen('roadFocus')\n @Listen('roadfocus')\n handleFocus() {\n this.isOpen = true;\n this.isActive = true;\n }\n\n @Listen('roadBlur')\n @Listen('roadblur')\n handleBlur() {\n this.isActive = false;\n }\n\n @Listen('roadChange')\n @Listen('roadchange')\n handleChange(event: CustomEvent) {\n this.currentValue = event.detail.value.toLowerCase();\n }\n\n @Listen('click', { target: 'document' })\n onClickOutside(event: MouseEvent) {\n if (this.isOpen && !this.el.contains(event.target as Node)) {\n this.isOpen = false;\n this.isActive = false;\n const value = (this.el.querySelector('road-input') as HTMLRoadInputElement).value;\n if (this.onlySelect && !this.options.some(option => option['label'] === value)) {\n (this.el.querySelector('road-input') as HTMLRoadInputElement).value = '';\n }\n }\n }\n\n /**\n * Emitted the value and label of the option selected.\n */\n @Event() roadselected!: EventEmitter<{\n value: string | undefined | null,\n label: string\n }>;\n /** @internal */\n @Event() roadSelected!: EventEmitter<{\n value: string | undefined | null,\n label: string\n }>;\n\n private onClick = (value: string | number, label: string) => {\n (this.el.querySelector('road-input') as HTMLRoadInputElement).value = label;\n if (document.getElementsByClassName('phone-number-label-icon').length > 0) {\n (this.el.querySelector('road-icon') as HTMLRoadIconElement).name = 'flag-'+ label;\n }\n this.isOpen = false;\n this.roadselected.emit({\n value: value.toString(),\n label: label,\n });\n this.roadSelected.emit({\n value: value.toString(),\n label: label,\n });\n };\n\n render() {\n const fuseSearch = new Fuse(this.options, this.parameters);\n const options = this.currentValue === '' ? this.options.map((doc, idx) => ({ item: doc, score: 1, refIndex: idx })) : fuseSearch.search(this.currentValue);\n const isActive = this.isActive ? 'true' : 'false';\n const notActive = this.isActive ? '' : 'not-active';\n\n return (\n <Host is-active={isActive}>\n <slot/>\n {this.isOpen &&\n <ul class={`${notActive} select-filter-list`} role=\"listbox\">\n {options.map(option => (\n <li\n class=\"select-filter-item\"\n role=\"option\"\n onClick={() => this.onClick(option.item.value, option.item.label.replace(/(<([^>]+)>)/gi, \"\"))}\n innerHTML={option.item.label}\n >\n </li>\n ))}\n </ul>}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"select-filter.js","sourceRoot":"","sources":["../../../src/components/select-filter/select-filter.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Host, Listen, Prop, State, h, Event, EventEmitter } from '@stencil/core';\nimport Fuse from 'fuse.js';\n\n/**\n * @slot - Input element for the widget, it should be a road-input element.\n */\n\n@Component({\n tag: 'road-select-filter',\n styleUrl: 'select-filter.css',\n scoped: true,\n})\nexport class SelectFilter {\n\n @Element() el!: HTMLRoadSelectFilterElement;\n\n @State() isOpen: boolean = false;\n\n @State() currentValue: string = '';\n\n @State() activeIndex: number = -1;\n\n /**\n * List of options of the select\n */\n @Prop() options: Array<{\n value: string | number;\n label: string;\n }> = [];\n\n /**\n * Options to pass to the fuse.js instance.\n * See https://fusejs.io/api/options.html for valid options\n */\n @Prop() parameters: any = {\n keys: [\"value\", \"label\"],\n threshold: 0.3,\n ignoreLocation: true,\n };\n\n /**\n * If `true`, add class Active\n */\n @Prop() isActive: boolean = false;\n\n /**\n * If `false`, the user can submit custom value\n */\n @Prop() onlySelect: boolean = true;\n\n @Listen('roadFocus')\n @Listen('roadfocus')\n handleFocus() {\n this.isOpen = true;\n this.isActive = true;\n }\n\n @Listen('roadBlur')\n @Listen('roadblur')\n handleBlur() {\n this.isActive = false;\n }\n\n @Listen('roadChange')\n @Listen('roadchange')\n handleChange(event: CustomEvent) {\n this.currentValue = event.detail.value.toLowerCase();\n }\n\n @Listen('click', { target: 'document' })\n onClickOutside(event: MouseEvent) {\n if (this.isOpen && !this.el.contains(event.target as Node)) {\n this.isOpen = false;\n this.isActive = false;\n const value = (this.el.querySelector('road-input') as HTMLRoadInputElement).value;\n if (this.onlySelect && !this.options.some(option => option['label'] === value)) {\n (this.el.querySelector('road-input') as HTMLRoadInputElement).value = '';\n }\n }\n }\n\n @Listen('keydown', { target: 'window' })\n handleKeydown(event: KeyboardEvent) {\n if (this.isOpen) {\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n this.activeIndex = (this.activeIndex + 1) % this.filteredOptions.length;\n } else if (event.key === 'ArrowUp') {\n event.preventDefault();\n this.activeIndex = (this.activeIndex - 1 + this.filteredOptions.length) % this.filteredOptions.length;\n } else if (event.key === 'Enter') {\n event.preventDefault();\n const activeOption = this.filteredOptions[this.activeIndex];\n if (activeOption) {\n this.onClick(activeOption.item.value, activeOption.item.label);\n }\n }\n }\n }\n\n get filteredOptions() {\n const fuseSearch = new Fuse(this.options, this.parameters);\n return this.currentValue === '' ? this.options.map((doc, idx) => ({ item: doc, score: 1, refIndex: idx })) : fuseSearch.search(this.currentValue);\n }\n\n @Event() roadselected!: EventEmitter<{\n value: string | undefined | null,\n label: string\n }>;\n\n @Event() roadSelected!: EventEmitter<{\n value: string | undefined | null,\n label: string\n }>;\n\n private onClick = (value: string | number, label: string) => {\n (this.el.querySelector('road-input') as HTMLRoadInputElement).value = label;\n if (document.getElementsByClassName('phone-number-label-icon').length > 0) {\n (this.el.querySelector('road-icon') as HTMLRoadIconElement).name = 'flag-' + label;\n }\n this.isOpen = false;\n this.roadselected.emit({\n value: value.toString(),\n label: label,\n });\n this.roadSelected.emit({\n value: value.toString(),\n label: label,\n });\n this.activeIndex = -1;\n };\n\n private handleOptionMouseOver = (index: number) => {\n this.activeIndex = index;\n };\n\n private handleOptionClick = (value: string | number, label: string) => {\n this.onClick(value, label);\n };\n\n render() {\n const options = this.filteredOptions;\n const isActive = this.isActive ? 'true' : 'false';\n const notActive = this.isActive ? '' : 'not-active';\n\n return (\n <Host is-active={isActive}>\n <slot />\n {this.isOpen &&\n <ul class={`${notActive} select-filter-list`} role=\"listbox\">\n {options.map((option, idx) => (\n <li\n class={`select-filter-item ${this.activeIndex === idx ? 'active' : ''}`}\n role=\"option\"\n aria-selected={this.activeIndex === idx ? 'true' : 'false'}\n onClick={() => this.handleOptionClick(option.item.value, option.item.label.replace(/(<([^>]+)>)/gi, \"\"))}\n onMouseOver={() => this.handleOptionMouseOver(idx)}\n innerHTML={option.item.label}\n tabindex={this.activeIndex === idx ? 0 : -1}\n >\n </li>\n ))}\n </ul>}\n </Host>\n );\n }\n}\n"]}
@@ -54,9 +54,9 @@ export default {
54
54
  ignoreLocation: true,
55
55
  },
56
56
  ' ': `<road-input-group>
57
- <road-input input-id="brand" sizes="xl" label="Brand"></road-input>
58
- <label slot="append" for="brand">
59
- <road-icon name="arrow-drop" focusable="false"></road-icon>
57
+ <road-input input-id="brand-input" sizes="xl" label="Brand"></road-input>
58
+ <label slot="append" for="brand-label" aria-label="select">
59
+ <road-icon name="arrow-drop" focusable="false" aria-hidden="true" role="button"></road-icon>
60
60
  </label>
61
61
  </road-input-group>`,
62
62
  },
@@ -75,7 +75,7 @@ WithValue.args = {
75
75
  ' ': `<road-input-group>
76
76
  <road-input input-id="brand2" sizes="xl" label="Brand" value="Audi"></road-input>
77
77
  <label slot="append" for="brand2">
78
- <road-icon name="arrow-drop" focusable="false"></road-icon>
78
+ <road-icon name="arrow-drop" focusable="false" role="button"></road-icon>
79
79
  </label>
80
80
  </road-input-group>`,
81
81
  };
@@ -85,7 +85,7 @@ Disabled.args = {
85
85
  ' ': `<road-input-group>
86
86
  <road-input input-id="brand3" sizes="xl" label="Brand" disabled></road-input>
87
87
  <label slot="append" for="brand3">
88
- <road-icon name="arrow-drop" focusable="false"></road-icon>
88
+ <road-icon name="arrow-drop" focusable="false" role="button"></road-icon>
89
89
  </label>
90
90
  </road-input-group>`,
91
91
  };
@@ -95,7 +95,7 @@ Error.args = {
95
95
  ' ': `<road-input-group>
96
96
  <road-input input-id="brand4" sizes="xl" label="Brand" error="Select a Brand"></road-input>
97
97
  <label slot="append" for="brand4">
98
- <road-icon name="arrow-drop" focusable="false"></road-icon>
98
+ <road-icon name="arrow-drop" focusable="false" role="button"></road-icon>
99
99
  </label>
100
100
  </road-input-group>`,
101
101
  };
@@ -119,7 +119,7 @@ withHTML.args = {
119
119
  ' ': `<road-input-group>
120
120
  <road-input input-id="controls" sizes="xl" label="Controls" class="mb-0"></road-input>
121
121
  <label slot="append" for="brand">
122
- <road-icon name="arrow-drop" focusable="false"></road-icon>
122
+ <road-icon name="arrow-drop" focusable="false" role="button"></road-icon>
123
123
  </label>
124
124
  </road-input-group>`,
125
125
  };
@@ -144,7 +144,7 @@ PhoneNumber.args = {
144
144
  <road-input input-id="brand5" sizes="xl" label="Label" value="" class="phone-number" type="tel"></road-input>
145
145
  <label slot="prepend" for="brand5" class="pl-16 phone-number-label">
146
146
  <road-icon name="flag-france" size="md" class="phone-number-label-icon"></road-icon>
147
- <road-icon name="arrow-drop" focusable="false"></road-icon>
147
+ <road-icon name="arrow-drop" focusable="false" role="button"></road-icon>
148
148
  </label>
149
149
  </road-input-group>`,
150
150
  };
@@ -200,12 +200,12 @@ export const LeadingIcon = Template.bind({});
200
200
  LeadingIcon.args = {
201
201
  top: `<road-tab-bar slot="top" expand="true">
202
202
  <road-tab-button tab="tab-list">
203
- <road-icon name="garage"></road-icon>
203
+ <road-icon name="garage" aria-hidden="true"></road-icon>
204
204
  <road-label>List</road-label>
205
205
  </road-tab-button>
206
206
 
207
207
  <road-tab-button tab="tab-map">
208
- <road-icon name="location-pin-all"></road-icon>
208
+ <road-icon name="location-pin-all" aria-hidden="true"></road-icon>
209
209
  <road-label>Map</road-label>
210
210
  </road-tab-button>
211
211
  </road-tab-bar>`,
@@ -222,17 +222,17 @@ export const TopIcon = Template.bind({});
222
222
  TopIcon.args = {
223
223
  top: `<road-tab-bar slot="top" expand="true">
224
224
  <road-tab-button tab="tab-shops" layout="icon-top">
225
- <road-icon name="shop"></road-icon>
225
+ <road-icon name="shop" aria-hidden="true"></road-icon>
226
226
  <road-label>Shops</road-label>
227
227
  </road-tab-button>
228
228
 
229
229
  <road-tab-button tab="tab-warehouses" layout="icon-top">
230
- <road-icon name="warehouse"></road-icon>
230
+ <road-icon name="warehouse" aria-hidden="true"></road-icon>
231
231
  <road-label>Warehouses</road-label>
232
232
  </road-tab-button>
233
233
 
234
234
  <road-tab-button tab="tab-factories" layout="icon-top">
235
- <road-icon name="factory"></road-icon>
235
+ <road-icon name="factory" aria-hidden="true"></road-icon>
236
236
  <road-label>Factories</road-label>
237
237
  </road-tab-button>
238
238
  </road-tab-bar>`,
@@ -122,7 +122,7 @@
122
122
  display: block;
123
123
  font-size: var(--road-body-medium);
124
124
  line-height: 1.5;
125
- color: var(--road-on-surface-extra-weak);
125
+ color: var(--road-on-surface-weak);
126
126
  pointer-events: none;
127
127
  transition: transform 200ms cubic-bezier(0, 0, 0.2, 1) 0ms;
128
128
  transform-origin: 0 0;
@@ -183,5 +183,5 @@
183
183
  .helper {
184
184
  margin-top: 0.5rem;
185
185
  font-size: var(--road-helper-medium);
186
- color: var(--road-grey-500);
186
+ color: var(--road-on-surface-weak);
187
187
  }
@@ -110,7 +110,6 @@
110
110
  align-self: auto;
111
111
  font-size: var(--road-font-size-14);
112
112
  font-weight: 400;
113
- background: var(--road-surface);
114
113
  border-right: 1px solid var(--road-outline);
115
114
  border-radius: 0;
116
115
  }
@@ -123,7 +122,6 @@
123
122
 
124
123
  font-size: var(--road-font-size-14);
125
124
  font-weight: 400;
126
- background: var(--road-surface);
127
125
  border-left: 1px solid var(--road-outline);
128
126
  border-radius: 0;
129
127
  }
@@ -61,10 +61,10 @@ export const Playground = Template.bind({});
61
61
 
62
62
  export const withButtons = Template.bind({});
63
63
  withButtons.args = {
64
- start: `<road-button slot="start" class="border-left-0">
64
+ start: `<road-button slot="start" class="border-left-0" tabindex="0" color="ghost">
65
65
  <road-icon name="navigation-chevron" rotate="180"></road-icon>
66
66
  </road-button>`,
67
- end: `<road-button slot="end">
67
+ end: `<road-button slot="end" tabindex="0" color="ghost">
68
68
  <road-icon name="more-horizontal"></road-icon>
69
69
  </road-button>`,
70
70
  };
@@ -73,13 +73,13 @@ withButtons.args = {
73
73
  export const headerHomeApp = Template.bind({});
74
74
  headerHomeApp.args = {
75
75
  ' ': ``,
76
- start: `<road-button slot="start" class="border-0 align-self-auto">
76
+ start: `<road-button slot="start" class="border-0 align-self-auto" color="ghost">
77
77
  <road-icon name="pass-maintain-logo-solid-color"></road-icon> <road-label class="font-weight-bold h6 mb-0 ml-8">App Name</road-label>
78
78
  </road-button>`,
79
- secondary: `<road-button class="border-0 align-items-center" slot="secondary">
79
+ secondary: `<road-button class="border-0 align-items-center" slot="secondary" color="ghost">
80
80
  <road-icon name="alert-question-outline"></road-icon><road-label class="d-none d-xl-block mx-8">Help</road-label>
81
81
  </road-button>`,
82
- end: `<road-button class="d-none d-xl-flex align-items-center" slot="end">
82
+ end: `<road-button class="d-none d-xl-flex align-items-center" slot="end" color="ghost">
83
83
  <road-icon name="speak-advice-outline"></road-icon><road-label class="d-none d-xl-block mx-8">Feedback</road-label>
84
84
  </road-button>
85
85
  </div>`,
@@ -89,13 +89,13 @@ headerHomeApp.args = {
89
89
  export const headerApp = Template.bind({});
90
90
  headerApp.args = {
91
91
  ' ': `<road-toolbar-title>Title</road-toolbar-title>`,
92
- start: `<road-button slot="start" class="border-left-0">
92
+ start: `<road-button slot="start" class="border-left-0" color="ghost">
93
93
  <road-icon name="navigation-chevron" rotate="180"></road-icon>
94
94
  </road-button>`,
95
- secondary: `<road-button class="border-0 align-items-center" slot="secondary">
95
+ secondary: `<road-button class="border-0 align-items-center" slot="secondary" color="ghost">
96
96
  <road-icon name="alert-question-outline"></road-icon><road-label class="d-none d-xl-block mx-8">Help</road-label>
97
97
  </road-button>`,
98
- end: `<road-button class="d-none d-xl-flex align-items-center" slot="end">
98
+ end: `<road-button class="d-none d-xl-flex align-items-center" slot="end" color="ghost">
99
99
  <road-icon name="speak-advice-outline"></road-icon><road-label class="d-none d-xl-block mx-8">Feedback</road-label>
100
100
  </road-button>
101
101
  </div>`,
@@ -48,7 +48,7 @@ export class Tooltip {
48
48
  return (h(Host, { onMouseOver: this.onMouseOver, onMouseOut: this.onMouseOut, onClick: this.onClick, "data-tooltip-position": this.position }, h("slot", { "aria-describedby": this.tooltipId }), h("div", { part: "tooltip", id: this.tooltipId, class: {
49
49
  tooltip: true,
50
50
  'tooltip-open': this.isOpen,
51
- }, role: "tooltip", "aria-hidden": !this.isOpen }, this.content, h("slot", { name: "tooltip-content" }))));
51
+ }, role: "tooltip", "aria-hidden": !this.isOpen ? 'true' : 'false' }, this.content, h("slot", { name: "tooltip-content" }))));
52
52
  }
53
53
  static get is() { return "road-tooltip"; }
54
54
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.js","sourceRoot":"","sources":["../../../src/components/tooltip/tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE1E;;;;GAIG;AAOH,MAAM,OAAO,OAAO;;IA0DV,YAAO,GAAG,GAAG,EAAE;MACrB,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;OAC1C;IACH,CAAC,CAAC;IAEM,gBAAW,GAAG,GAAG,EAAE;MACzB,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,CAAC,IAAI,EAAE,CAAC;OACb;IACH,CAAC,CAAC;IAEM,eAAU,GAAG,GAAG,EAAE;MACxB,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;OACd;IACH,CAAC,CAAC;qBAnE0B,gBAAgB,EAAE,UAAU,EAAE;mBAKxC,EAAE;oBASP,KAAK;wBAOL,QAAQ;kBAKa,KAAK;mBAOb,OAAO;;EAEjC;;KAEG;EAEH,KAAK,CAAC,IAAI;IACR,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;EACrB,CAAC;EAED;;KAEG;EAEH,KAAK,CAAC,KAAK;IACT,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;EACtB,CAAC;EAoBO,UAAU,CAAC,WAAmB;IACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzC,OAAO,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;EACxC,CAAC;EAED,MAAM;IACJ,OAAO,CACL,EAAC,IAAI,IACH,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,2BACE,IAAI,CAAC,QAAQ;MAEpC,gCAAwB,IAAI,CAAC,SAAS,GAAI;MAE1C,WACE,IAAI,EAAC,SAAS,EACd,EAAE,EAAE,IAAI,CAAC,SAAS,EAClB,KAAK,EAAE;UACL,OAAO,EAAE,IAAI;UACb,cAAc,EAAE,IAAI,CAAC,MAAM;SAC5B,EACD,IAAI,EAAC,SAAS,iBACD,CAAC,IAAI,CAAC,MAAM;QAExB,IAAI,CAAC,OAAO;QACb,YAAM,IAAI,EAAC,iBAAiB,GAAG,CAC3B,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF;AAED,IAAI,UAAU,GAAG,CAAC,CAAC","sourcesContent":["import { Component, Host, h, Prop, Method, Element } from '@stencil/core';\n\n/**\n * @slot tooltip-content - content of the tooltip, if you need to add html content, use this slot, otherwise use directly the content prop.\n *\n * @part tooltip - tooltip container\n */\n\n@Component({\n tag: 'road-tooltip',\n styleUrl: 'tooltip.css',\n shadow: true,\n})\nexport class Tooltip {\n\n @Element() el!: HTMLRoadTooltipElement;\n\n /**\n * The id of tooltip\n */\n @Prop() tooltipId: string = `road-tooltip-${++tooltipIds}`;\n\n /**\n * The tooltip's content.\n */\n @Prop() content = '';\n\n /**\n * The position of the tooltip.\n */\n @Prop() position:\n | 'top'\n | 'right'\n | 'bottom'\n | 'left' = 'top';\n\n /**\n * The content align of the tooltip.\n */\n @Prop() contentAlign:\n | 'center'\n | 'left' = 'center';\n\n /**\n * Indicates whether or not the tooltip is open. You can use this or the open/close methods.\n */\n @Prop({ mutable: true }) isOpen = false;\n\n /**\n * Controls how the tooltip is activated. Possible options include `click`, `hover`. Multiple\n * options can be passed by separating them with a space. When manual is used, the tooltip must be activated\n * programmatically.\n */\n @Prop() trigger: string = 'hover';\n\n /**\n * Open the tooltip.\n */\n @Method()\n async open() {\n this.isOpen = true;\n }\n\n /**\n * Close the tooltip.\n */\n @Method()\n async close() {\n this.isOpen = false;\n }\n\n private onClick = () => {\n if (this.hasTrigger('click')) {\n this.isOpen ? this.close() : this.open();\n }\n };\n\n private onMouseOver = () => {\n if (this.hasTrigger('hover')) {\n this.open();\n }\n };\n\n private onMouseOut = () => {\n if (this.hasTrigger('hover')) {\n this.close();\n }\n };\n\n private hasTrigger(triggerType: string) {\n const triggers = this.trigger.split(' ');\n return triggers.includes(triggerType);\n }\n\n render() {\n return (\n <Host\n onMouseOver={this.onMouseOver}\n onMouseOut={this.onMouseOut}\n onClick={this.onClick}\n data-tooltip-position={this.position}\n >\n <slot aria-describedby={this.tooltipId} />\n\n <div\n part=\"tooltip\"\n id={this.tooltipId}\n class={{\n tooltip: true,\n 'tooltip-open': this.isOpen,\n }}\n role=\"tooltip\"\n aria-hidden={!this.isOpen}\n >\n {this.content}\n <slot name=\"tooltip-content\" />\n </div>\n </Host>\n );\n }\n}\n\nlet tooltipIds = 0;\n"]}
1
+ {"version":3,"file":"tooltip.js","sourceRoot":"","sources":["../../../src/components/tooltip/tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE1E;;;;GAIG;AAOH,MAAM,OAAO,OAAO;;IA0DV,YAAO,GAAG,GAAG,EAAE;MACrB,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;OAC1C;IACH,CAAC,CAAC;IAEM,gBAAW,GAAG,GAAG,EAAE;MACzB,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,CAAC,IAAI,EAAE,CAAC;OACb;IACH,CAAC,CAAC;IAEM,eAAU,GAAG,GAAG,EAAE;MACxB,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;OACd;IACH,CAAC,CAAC;qBAnE0B,gBAAgB,EAAE,UAAU,EAAE;mBAKxC,EAAE;oBASP,KAAK;wBAOL,QAAQ;kBAKa,KAAK;mBAOb,OAAO;;EAEjC;;KAEG;EAEH,KAAK,CAAC,IAAI;IACR,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;EACrB,CAAC;EAED;;KAEG;EAEH,KAAK,CAAC,KAAK;IACT,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;EACtB,CAAC;EAoBO,UAAU,CAAC,WAAmB;IACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzC,OAAO,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;EACxC,CAAC;EAED,MAAM;IACJ,OAAO,CACL,EAAC,IAAI,IACH,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,2BACE,IAAI,CAAC,QAAQ;MAEpC,gCAAwB,IAAI,CAAC,SAAS,GAAI;MAE1C,WACE,IAAI,EAAC,SAAS,EACd,EAAE,EAAE,IAAI,CAAC,SAAS,EAClB,KAAK,EAAE;UACL,OAAO,EAAE,IAAI;UACb,cAAc,EAAE,IAAI,CAAC,MAAM;SAC5B,EACD,IAAI,EAAC,SAAS,iBACD,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;QAE3C,IAAI,CAAC,OAAO;QACb,YAAM,IAAI,EAAC,iBAAiB,GAAG,CAC3B,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF;AAED,IAAI,UAAU,GAAG,CAAC,CAAC","sourcesContent":["import { Component, Host, h, Prop, Method, Element } from '@stencil/core';\n\n/**\n * @slot tooltip-content - content of the tooltip, if you need to add html content, use this slot, otherwise use directly the content prop.\n *\n * @part tooltip - tooltip container\n */\n\n@Component({\n tag: 'road-tooltip',\n styleUrl: 'tooltip.css',\n shadow: true,\n})\nexport class Tooltip {\n\n @Element() el!: HTMLRoadTooltipElement;\n\n /**\n * The id of tooltip\n */\n @Prop() tooltipId: string = `road-tooltip-${++tooltipIds}`;\n\n /**\n * The tooltip's content.\n */\n @Prop() content = '';\n\n /**\n * The position of the tooltip.\n */\n @Prop() position:\n | 'top'\n | 'right'\n | 'bottom'\n | 'left' = 'top';\n\n /**\n * The content align of the tooltip.\n */\n @Prop() contentAlign:\n | 'center'\n | 'left' = 'center';\n\n /**\n * Indicates whether or not the tooltip is open. You can use this or the open/close methods.\n */\n @Prop({ mutable: true }) isOpen = false;\n\n /**\n * Controls how the tooltip is activated. Possible options include `click`, `hover`. Multiple\n * options can be passed by separating them with a space. When manual is used, the tooltip must be activated\n * programmatically.\n */\n @Prop() trigger: string = 'hover';\n\n /**\n * Open the tooltip.\n */\n @Method()\n async open() {\n this.isOpen = true;\n }\n\n /**\n * Close the tooltip.\n */\n @Method()\n async close() {\n this.isOpen = false;\n }\n\n private onClick = () => {\n if (this.hasTrigger('click')) {\n this.isOpen ? this.close() : this.open();\n }\n };\n\n private onMouseOver = () => {\n if (this.hasTrigger('hover')) {\n this.open();\n }\n };\n\n private onMouseOut = () => {\n if (this.hasTrigger('hover')) {\n this.close();\n }\n };\n\n private hasTrigger(triggerType: string) {\n const triggers = this.trigger.split(' ');\n return triggers.includes(triggerType);\n }\n\n render() {\n return (\n <Host\n onMouseOver={this.onMouseOver}\n onMouseOut={this.onMouseOut}\n onClick={this.onClick}\n data-tooltip-position={this.position}\n >\n <slot aria-describedby={this.tooltipId} />\n\n <div\n part=\"tooltip\"\n id={this.tooltipId}\n class={{\n tooltip: true,\n 'tooltip-open': this.isOpen,\n }}\n role=\"tooltip\"\n aria-hidden={!this.isOpen ? 'true' : 'false'}\n >\n {this.content}\n <slot name=\"tooltip-content\" />\n </div>\n </Host>\n );\n }\n}\n\nlet tooltipIds = 0;\n"]}
@@ -15,7 +15,7 @@ export const Playground = (args) => html`
15
15
  position="${ifDefined(args.position)}"
16
16
  trigger="${ifDefined(args.trigger)}"
17
17
  contentalign="${ifDefined(args.contentAlign)}">
18
- <road-icon name="alert-info" color="secondary"></road-icon>
18
+ <road-icon name="alert-info" color="secondary" role="button"></road-icon>
19
19
  ${unsafeHTML(args['tooltip-content'])}
20
20
  </road-tooltip>
21
21
  `;
@@ -116,7 +116,7 @@ export const MouseOver = () => html`
116
116
  <road-tooltip position="bottom" style="width: 100%;--width: 95%;--max-width: 100%;">
117
117
  <road-item class="bg-light mb-16">
118
118
  <road-avatar class="flex-shrink-0 mr-16">
119
- <road-icon lazy size="3x" name="brake"></road-icon>
119
+ <road-icon lazy size="3x" name="brake" role="button"></road-icon>
120
120
  </road-avatar>
121
121
  <road-label>
122
122
  <p class="h9 mb-8">Braking</p>
@@ -134,7 +134,7 @@ export const MouseOver = () => html`
134
134
  export const Click = () => html`
135
135
  <road-tooltip content="Fit & small tooltip" position="right" trigger="click">
136
136
  <road-button class="mb-0">
137
- <road-icon name="alert-info" color="secondary"></road-icon>
137
+ <road-icon name="alert-info" color="secondary" role="button"></road-icon>
138
138
  </road-button>
139
139
  </road-tooltip>
140
140
  `;
@@ -12,6 +12,6 @@ const navigationClose = 'data:image/svg+xml;utf8,<svg viewBox="0 0 64 64" aria-h
12
12
  const starHalfColor = 'data:image/svg+xml;utf8,<svg viewBox="0 0 64 64" aria-hidden="true" ><path d="M32 47.425V6.5l7.514 17.755 19.17 1.637L44.152 38.61l4.384 18.89Z"/><path d="M32 47.425 15.461 57.5l4.387-18.89L5.316 25.892l19.165-1.637L32 6.5Z" fill="var(--warning, rgb(252, 183, 49))"/></svg>';
13
13
  const star = 'data:image/svg+xml;utf8,<svg viewBox="0 0 64 64" aria-hidden="true" ><path d="M32 47.425V6.5l7.514 17.755 19.17 1.637L44.152 38.61l4.384 18.89Zm0 0L15.461 57.5l4.387-18.89L5.316 25.892l19.165-1.637L32 6.5Z"/></svg>';
14
14
 
15
- export { navigationClose as a, navigationAddLess as b, checkWide as c, alertInfoOutline as d, alertDangerOutline as e, alertWarningOutline as f, alertSuccessOutline as g, navigationAddMoreSolid as h, navigationAddLessSolid as i, starHalfColor as j, licensePlateStarEu as l, navigationChevron as n, star as s };
15
+ export { navigationClose as a, navigationAddLess as b, checkWide as c, alertInfoOutline as d, alertDangerOutline as e, alertWarningOutline as f, alertSuccessOutline as g, navigationAddLessSolid as h, navigationAddMoreSolid as i, starHalfColor as j, licensePlateStarEu as l, navigationChevron as n, star as s };
16
16
 
17
- //# sourceMappingURL=index-891decf5.js.map
17
+ //# sourceMappingURL=index-7a0158a4.js.map