@roadtrip/components 3.17.0 → 3.18.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 (325) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/road-accordion.cjs.entry.js +1 -1
  3. package/dist/cjs/road-accordion.cjs.entry.js.map +1 -1
  4. package/dist/cjs/road-autocomplete.cjs.entry.js +1 -1
  5. package/dist/cjs/road-autocomplete.cjs.entry.js.map +1 -1
  6. package/dist/cjs/road-badge_14.cjs.entry.js +40 -8
  7. package/dist/cjs/road-badge_14.cjs.entry.js.map +1 -1
  8. package/dist/cjs/road-banner.cjs.entry.js +1 -1
  9. package/dist/cjs/road-banner.cjs.entry.js.map +1 -1
  10. package/dist/cjs/road-button-floating.cjs.entry.js +1 -1
  11. package/dist/cjs/road-button-floating.cjs.entry.js.map +1 -1
  12. package/dist/cjs/road-card.cjs.entry.js +1 -1
  13. package/dist/cjs/road-card.cjs.entry.js.map +1 -1
  14. package/dist/cjs/road-carousel.cjs.entry.js +30 -118
  15. package/dist/cjs/road-carousel.cjs.entry.js.map +1 -1
  16. package/dist/cjs/road-chip.cjs.entry.js +2 -2
  17. package/dist/cjs/road-chip.cjs.entry.js.map +1 -1
  18. package/dist/cjs/road-collapse.cjs.entry.js +1 -1
  19. package/dist/cjs/road-collapse.cjs.entry.js.map +1 -1
  20. package/dist/cjs/road-dialog.cjs.entry.js +2 -2
  21. package/dist/cjs/road-dialog.cjs.entry.js.map +1 -1
  22. package/dist/cjs/road-dropdown.cjs.entry.js +4 -4
  23. package/dist/cjs/road-dropdown.cjs.entry.js.map +1 -1
  24. package/dist/cjs/road-global-navigation.cjs.entry.js +1 -1
  25. package/dist/cjs/road-global-navigation.cjs.entry.js.map +1 -1
  26. package/dist/cjs/road-illustration.cjs.entry.js +1 -1
  27. package/dist/cjs/road-illustration.cjs.entry.js.map +1 -1
  28. package/dist/cjs/road-modal.cjs.entry.js +1 -1
  29. package/dist/cjs/road-modal.cjs.entry.js.map +1 -1
  30. package/dist/cjs/road-navbar-item.cjs.entry.js +1 -1
  31. package/dist/cjs/road-navbar-item.cjs.entry.js.map +1 -1
  32. package/dist/cjs/road-navbar.cjs.entry.js +1 -1
  33. package/dist/cjs/road-navbar.cjs.entry.js.map +1 -1
  34. package/dist/cjs/road-phone-number-input.cjs.entry.js +41 -5
  35. package/dist/cjs/road-phone-number-input.cjs.entry.js.map +1 -1
  36. package/dist/cjs/road-plate-number.cjs.entry.js +2 -2
  37. package/dist/cjs/road-plate-number.cjs.entry.js.map +1 -1
  38. package/dist/cjs/road-profil-dropdown.cjs.entry.js +10 -1
  39. package/dist/cjs/road-profil-dropdown.cjs.entry.js.map +1 -1
  40. package/dist/cjs/road-progress-indicator-vertical.cjs.entry.js +2 -2
  41. package/dist/cjs/road-progress-indicator-vertical.cjs.entry.js.map +1 -1
  42. package/dist/cjs/road-progress-tracker.cjs.entry.js +2 -2
  43. package/dist/cjs/road-progress-tracker.cjs.entry.js.map +1 -1
  44. package/dist/cjs/road-progress.cjs.entry.js +1 -1
  45. package/dist/cjs/road-progress.cjs.entry.js.map +1 -1
  46. package/dist/cjs/road-range.cjs.entry.js +26 -2
  47. package/dist/cjs/road-range.cjs.entry.js.map +1 -1
  48. package/dist/cjs/road-segmented-button.cjs.entry.js +1 -1
  49. package/dist/cjs/road-segmented-button.cjs.entry.js.map +1 -1
  50. package/dist/cjs/road-select-filter.cjs.entry.js +34 -4
  51. package/dist/cjs/road-select-filter.cjs.entry.js.map +1 -1
  52. package/dist/cjs/road-select.cjs.entry.js +1 -1
  53. package/dist/cjs/road-select.cjs.entry.js.map +1 -1
  54. package/dist/cjs/road-textarea.cjs.entry.js +1 -1
  55. package/dist/cjs/road-textarea.cjs.entry.js.map +1 -1
  56. package/dist/cjs/road-tooltip.cjs.entry.js +1 -1
  57. package/dist/cjs/road-tooltip.cjs.entry.js.map +1 -1
  58. package/dist/cjs/roadtrip.cjs.js +1 -1
  59. package/dist/collection/components/accordion/accordion.css +4 -0
  60. package/dist/collection/components/accordion/accordion.stories.js +1 -1
  61. package/dist/collection/components/alert/alert.stories.js +1 -1
  62. package/dist/collection/components/autocomplete/autocomplete.js +1 -1
  63. package/dist/collection/components/autocomplete/autocomplete.js.map +1 -1
  64. package/dist/collection/components/autocomplete/autocomplete.stories.js +2 -2
  65. package/dist/collection/components/avatar/avatar.stories.js +1 -1
  66. package/dist/collection/components/badge/badge.stories.js +2 -2
  67. package/dist/collection/components/banner/banner.js +1 -1
  68. package/dist/collection/components/banner/banner.js.map +1 -1
  69. package/dist/collection/components/button/button.stories.js +6 -6
  70. package/dist/collection/components/button-floating/button-floating.css +0 -4
  71. package/dist/collection/components/button-floating/button-floating.stories.js +2 -2
  72. package/dist/collection/components/card/card.css +4 -0
  73. package/dist/collection/components/card/card.stories.js +4 -4
  74. package/dist/collection/components/carousel/carousel.css +4 -1
  75. package/dist/collection/components/carousel/carousel.js +93 -250
  76. package/dist/collection/components/carousel/carousel.js.map +1 -1
  77. package/dist/collection/components/chip/chip.css +2 -2
  78. package/dist/collection/components/chip/chip.js +1 -1
  79. package/dist/collection/components/chip/chip.js.map +1 -1
  80. package/dist/collection/components/chip/chip.stories.js +26 -1
  81. package/dist/collection/components/collapse/collapse.css +4 -0
  82. package/dist/collection/components/collapse/collapse.stories.js +8 -8
  83. package/dist/collection/components/counter/counter.css +5 -0
  84. package/dist/collection/components/counter/counter.js +19 -1
  85. package/dist/collection/components/counter/counter.js.map +1 -1
  86. package/dist/collection/components/dialog/dialog.js +2 -2
  87. package/dist/collection/components/dialog/dialog.js.map +1 -1
  88. package/dist/collection/components/drawer/drawer.js +1 -1
  89. package/dist/collection/components/drawer/drawer.js.map +1 -1
  90. package/dist/collection/components/drawer/drawer.stories.js +2 -2
  91. package/dist/collection/components/dropdown/dropdown.css +9 -4
  92. package/dist/collection/components/dropdown/dropdown.js +3 -3
  93. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  94. package/dist/collection/components/dropdown/dropdown.stories.js +4 -4
  95. package/dist/collection/components/global-navigation/global-navigation.js +1 -1
  96. package/dist/collection/components/global-navigation/global-navigation.js.map +1 -1
  97. package/dist/collection/components/global-navigation/global-navigation.stories.js +39 -39
  98. package/dist/collection/components/icon/icon.stories.js +44 -43
  99. package/dist/collection/components/illustration/illustration.js +1 -1
  100. package/dist/collection/components/illustration/illustration.js.map +1 -1
  101. package/dist/collection/components/input/input.css +8 -2
  102. package/dist/collection/components/input/input.js +16 -2
  103. package/dist/collection/components/input/input.js.map +1 -1
  104. package/dist/collection/components/input-group/input-group.js +1 -1
  105. package/dist/collection/components/input-group/input-group.js.map +1 -1
  106. package/dist/collection/components/input-group/input-group.stories.js +4 -4
  107. package/dist/collection/components/item/item.stories.js +9 -9
  108. package/dist/collection/components/list/list.stories.js +8 -8
  109. package/dist/collection/components/modal/modal.js +1 -1
  110. package/dist/collection/components/modal/modal.js.map +1 -1
  111. package/dist/collection/components/navbar/navbar.js +1 -1
  112. package/dist/collection/components/navbar/navbar.js.map +1 -1
  113. package/dist/collection/components/navbar/navbar.stories.js +84 -63
  114. package/dist/collection/components/navbar-item/navbar-item.js +1 -1
  115. package/dist/collection/components/navbar-item/navbar-item.js.map +1 -1
  116. package/dist/collection/components/patterns/link.stories.js +2 -2
  117. package/dist/collection/components/phone-number-input/phone-number-input.css +0 -1
  118. package/dist/collection/components/phone-number-input/phone-number-input.js +40 -4
  119. package/dist/collection/components/phone-number-input/phone-number-input.js.map +1 -1
  120. package/dist/collection/components/plate-number/plate-number.css +1 -1
  121. package/dist/collection/components/plate-number/plate-number.js +1 -1
  122. package/dist/collection/components/plate-number/plate-number.js.map +1 -1
  123. package/dist/collection/components/profil-dropdown/profil-dropdown.css +8 -0
  124. package/dist/collection/components/profil-dropdown/profil-dropdown.js +18 -0
  125. package/dist/collection/components/profil-dropdown/profil-dropdown.js.map +1 -1
  126. package/dist/collection/components/profil-dropdown/profil-dropdown.stories.js +4 -4
  127. package/dist/collection/components/progress/progress.js +1 -1
  128. package/dist/collection/components/progress/progress.js.map +1 -1
  129. package/dist/collection/components/progress-indicator-vertical/progress-indicator-vertical.css +5 -0
  130. package/dist/collection/components/progress-indicator-vertical/progress-indicator-vertical.js +1 -1
  131. package/dist/collection/components/progress-indicator-vertical/progress-indicator-vertical.js.map +1 -1
  132. package/dist/collection/components/progress-indicator-vertical/progress-indicator-vertical.stories.js +20 -20
  133. package/dist/collection/components/progress-tracker/progress-tracker.css +4 -0
  134. package/dist/collection/components/progress-tracker/progress-tracker.js +1 -1
  135. package/dist/collection/components/progress-tracker/progress-tracker.js.map +1 -1
  136. package/dist/collection/components/range/range.css +17 -2
  137. package/dist/collection/components/range/range.js +41 -2
  138. package/dist/collection/components/range/range.js.map +1 -1
  139. package/dist/collection/components/segmented-button/segmented-button.js +1 -1
  140. package/dist/collection/components/segmented-button/segmented-button.js.map +1 -1
  141. package/dist/collection/components/select/select.css +1 -1
  142. package/dist/collection/components/select-filter/select-filter.css +5 -0
  143. package/dist/collection/components/select-filter/select-filter.js +43 -9
  144. package/dist/collection/components/select-filter/select-filter.js.map +1 -1
  145. package/dist/collection/components/select-filter/select-filter.stories.js +8 -8
  146. package/dist/collection/components/tabs/tabs.stories.js +5 -5
  147. package/dist/collection/components/textarea/textarea.css +2 -2
  148. package/dist/collection/components/toolbar/toolbar.css +0 -2
  149. package/dist/collection/components/toolbar/toolbar.stories.js +8 -8
  150. package/dist/collection/components/tooltip/tooltip.js +1 -1
  151. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  152. package/dist/collection/components/tooltip/tooltip.stories.js +3 -3
  153. package/dist/esm/{index-891decf5.js → index-7a0158a4.js} +2 -2
  154. package/dist/esm/{index-891decf5.js.map → index-7a0158a4.js.map} +1 -1
  155. package/dist/esm/loader.js +1 -1
  156. package/dist/esm/road-accordion.entry.js +2 -2
  157. package/dist/esm/road-accordion.entry.js.map +1 -1
  158. package/dist/esm/road-autocomplete.entry.js +1 -1
  159. package/dist/esm/road-autocomplete.entry.js.map +1 -1
  160. package/dist/esm/road-badge_14.entry.js +41 -9
  161. package/dist/esm/road-badge_14.entry.js.map +1 -1
  162. package/dist/esm/road-banner.entry.js +2 -2
  163. package/dist/esm/road-banner.entry.js.map +1 -1
  164. package/dist/esm/road-button-floating.entry.js +1 -1
  165. package/dist/esm/road-button-floating.entry.js.map +1 -1
  166. package/dist/esm/road-card.entry.js +1 -1
  167. package/dist/esm/road-card.entry.js.map +1 -1
  168. package/dist/esm/road-carousel.entry.js +31 -119
  169. package/dist/esm/road-carousel.entry.js.map +1 -1
  170. package/dist/esm/road-checkbox.entry.js +1 -1
  171. package/dist/esm/road-chip.entry.js +3 -3
  172. package/dist/esm/road-chip.entry.js.map +1 -1
  173. package/dist/esm/road-collapse.entry.js +1 -1
  174. package/dist/esm/road-collapse.entry.js.map +1 -1
  175. package/dist/esm/road-dialog.entry.js +3 -3
  176. package/dist/esm/road-dialog.entry.js.map +1 -1
  177. package/dist/esm/road-dropdown.entry.js +4 -4
  178. package/dist/esm/road-dropdown.entry.js.map +1 -1
  179. package/dist/esm/road-global-navigation.entry.js +1 -1
  180. package/dist/esm/road-global-navigation.entry.js.map +1 -1
  181. package/dist/esm/road-illustration.entry.js +1 -1
  182. package/dist/esm/road-illustration.entry.js.map +1 -1
  183. package/dist/esm/road-modal.entry.js +2 -2
  184. package/dist/esm/road-modal.entry.js.map +1 -1
  185. package/dist/esm/road-navbar-item.entry.js +1 -1
  186. package/dist/esm/road-navbar-item.entry.js.map +1 -1
  187. package/dist/esm/road-navbar.entry.js +1 -1
  188. package/dist/esm/road-navbar.entry.js.map +1 -1
  189. package/dist/esm/road-phone-number-input.entry.js +41 -5
  190. package/dist/esm/road-phone-number-input.entry.js.map +1 -1
  191. package/dist/esm/road-plate-number.entry.js +3 -3
  192. package/dist/esm/road-plate-number.entry.js.map +1 -1
  193. package/dist/esm/road-profil-dropdown.entry.js +11 -2
  194. package/dist/esm/road-profil-dropdown.entry.js.map +1 -1
  195. package/dist/esm/road-progress-indicator-vertical.entry.js +2 -2
  196. package/dist/esm/road-progress-indicator-vertical.entry.js.map +1 -1
  197. package/dist/esm/road-progress-tracker.entry.js +2 -2
  198. package/dist/esm/road-progress-tracker.entry.js.map +1 -1
  199. package/dist/esm/road-progress.entry.js +1 -1
  200. package/dist/esm/road-progress.entry.js.map +1 -1
  201. package/dist/esm/road-range.entry.js +28 -4
  202. package/dist/esm/road-range.entry.js.map +1 -1
  203. package/dist/esm/road-rating.entry.js +1 -1
  204. package/dist/esm/road-segmented-button.entry.js +1 -1
  205. package/dist/esm/road-segmented-button.entry.js.map +1 -1
  206. package/dist/esm/road-select-filter.entry.js +34 -4
  207. package/dist/esm/road-select-filter.entry.js.map +1 -1
  208. package/dist/esm/road-select.entry.js +1 -1
  209. package/dist/esm/road-select.entry.js.map +1 -1
  210. package/dist/esm/road-textarea.entry.js +1 -1
  211. package/dist/esm/road-textarea.entry.js.map +1 -1
  212. package/dist/esm/road-toast.entry.js +1 -1
  213. package/dist/esm/road-tooltip.entry.js +1 -1
  214. package/dist/esm/road-tooltip.entry.js.map +1 -1
  215. package/dist/esm/roadtrip.js +1 -1
  216. package/dist/html.html-data.json +3 -3
  217. package/dist/roadtrip/p-054acf61.entry.js +2 -0
  218. package/dist/roadtrip/p-054acf61.entry.js.map +1 -0
  219. package/dist/roadtrip/{p-ea28a425.entry.js → p-08b0be1b.entry.js} +2 -2
  220. package/dist/roadtrip/p-08b0be1b.entry.js.map +1 -0
  221. package/dist/roadtrip/{p-1a761fc0.entry.js → p-0fd454dc.entry.js} +2 -2
  222. package/dist/roadtrip/p-0fd454dc.entry.js.map +1 -0
  223. package/dist/roadtrip/{p-60e25858.entry.js → p-14ecc91e.entry.js} +2 -2
  224. package/dist/roadtrip/{p-60e25858.entry.js.map → p-14ecc91e.entry.js.map} +1 -1
  225. package/dist/roadtrip/{p-82919e58.entry.js → p-16c934bc.entry.js} +2 -2
  226. package/dist/roadtrip/p-17ae87b0.entry.js +2 -0
  227. package/dist/roadtrip/p-17ae87b0.entry.js.map +1 -0
  228. package/dist/roadtrip/{p-6e3e0b40.entry.js → p-18967429.entry.js} +2 -2
  229. package/dist/roadtrip/{p-6e3e0b40.entry.js.map → p-18967429.entry.js.map} +1 -1
  230. package/dist/roadtrip/p-27d2770a.entry.js +2 -0
  231. package/dist/roadtrip/p-27d2770a.entry.js.map +1 -0
  232. package/dist/roadtrip/{p-4f47f4f7.entry.js → p-31cf9b61.entry.js} +2 -2
  233. package/dist/roadtrip/p-31cf9b61.entry.js.map +1 -0
  234. package/dist/roadtrip/{p-dcb280e3.entry.js → p-3bce3bdc.entry.js} +2 -2
  235. package/dist/roadtrip/p-3bce3bdc.entry.js.map +1 -0
  236. package/dist/roadtrip/p-4a2f2612.entry.js +2 -0
  237. package/dist/roadtrip/p-4a2f2612.entry.js.map +1 -0
  238. package/dist/roadtrip/p-5203acea.entry.js +2 -0
  239. package/dist/roadtrip/p-5203acea.entry.js.map +1 -0
  240. package/dist/roadtrip/{p-a73ef7de.entry.js → p-61d87e64.entry.js} +2 -2
  241. package/dist/roadtrip/{p-a73ef7de.entry.js.map → p-61d87e64.entry.js.map} +1 -1
  242. package/dist/roadtrip/p-6ad5091d.entry.js +2 -0
  243. package/dist/roadtrip/p-6ad5091d.entry.js.map +1 -0
  244. package/dist/roadtrip/{p-2c132382.entry.js → p-72b3b34a.entry.js} +2 -2
  245. package/dist/roadtrip/p-72b3b34a.entry.js.map +1 -0
  246. package/dist/roadtrip/p-7a14e5b7.entry.js +2 -0
  247. package/dist/roadtrip/p-7a14e5b7.entry.js.map +1 -0
  248. package/dist/roadtrip/{p-c3c92152.entry.js → p-7f1d9286.entry.js} +2 -2
  249. package/dist/roadtrip/p-7f1d9286.entry.js.map +1 -0
  250. package/dist/roadtrip/p-9a929988.entry.js +2 -0
  251. package/dist/roadtrip/p-9a929988.entry.js.map +1 -0
  252. package/dist/roadtrip/{p-336aa5f6.entry.js → p-9ff79904.entry.js} +2 -2
  253. package/dist/roadtrip/{p-336aa5f6.entry.js.map → p-9ff79904.entry.js.map} +1 -1
  254. package/dist/roadtrip/p-a5eee655.entry.js +2 -0
  255. package/dist/roadtrip/{p-40daa53b.entry.js.map → p-a5eee655.entry.js.map} +1 -1
  256. package/dist/roadtrip/{p-73fe2357.js → p-ac7a8bca.js} +2 -2
  257. package/dist/roadtrip/{p-6177bb46.entry.js → p-b510e552.entry.js} +2 -2
  258. package/dist/roadtrip/{p-6177bb46.entry.js.map → p-b510e552.entry.js.map} +1 -1
  259. package/dist/roadtrip/{p-46cccafc.entry.js → p-c096723c.entry.js} +2 -2
  260. package/dist/roadtrip/{p-46cccafc.entry.js.map → p-c096723c.entry.js.map} +1 -1
  261. package/dist/roadtrip/p-c7866ae4.entry.js +2 -0
  262. package/dist/roadtrip/p-c7866ae4.entry.js.map +1 -0
  263. package/dist/roadtrip/p-cdefa79c.entry.js +2 -0
  264. package/dist/roadtrip/p-cdefa79c.entry.js.map +1 -0
  265. package/dist/roadtrip/{p-cbc00bfb.entry.js → p-cfc0a3a7.entry.js} +2 -2
  266. package/dist/roadtrip/p-dcbaee2f.entry.js +2 -0
  267. package/dist/roadtrip/p-dcbaee2f.entry.js.map +1 -0
  268. package/dist/roadtrip/{p-7048f786.entry.js → p-dcbb0d20.entry.js} +2 -2
  269. package/dist/roadtrip/p-dcbb0d20.entry.js.map +1 -0
  270. package/dist/roadtrip/{p-414a2791.entry.js → p-e8c9c816.entry.js} +2 -2
  271. package/dist/roadtrip/{p-f5cce766.entry.js → p-ebd19369.entry.js} +2 -2
  272. package/dist/roadtrip/{p-f5cce766.entry.js.map → p-ebd19369.entry.js.map} +1 -1
  273. package/dist/roadtrip/p-f7b4f1fa.entry.js +2 -0
  274. package/dist/roadtrip/p-f7b4f1fa.entry.js.map +1 -0
  275. package/dist/roadtrip/p-f90af0e1.entry.js +2 -0
  276. package/dist/roadtrip/p-f90af0e1.entry.js.map +1 -0
  277. package/dist/roadtrip/roadtrip.esm.js +1 -1
  278. package/dist/roadtrip/roadtrip.esm.js.map +1 -1
  279. package/dist/types/components/carousel/carousel.d.ts +1 -131
  280. package/dist/types/components/counter/counter.d.ts +1 -0
  281. package/dist/types/components/phone-number-input/phone-number-input.d.ts +1 -0
  282. package/dist/types/components/profil-dropdown/profil-dropdown.d.ts +2 -0
  283. package/dist/types/components/range/range.d.ts +3 -0
  284. package/dist/types/components/select-filter/select-filter.d.ts +16 -4
  285. package/dist/types/components.d.ts +4 -128
  286. package/hydrate/index.js +216 -175
  287. package/package.json +1 -1
  288. package/dist/roadtrip/p-1a761fc0.entry.js.map +0 -1
  289. package/dist/roadtrip/p-2b5974fc.entry.js +0 -2
  290. package/dist/roadtrip/p-2b5974fc.entry.js.map +0 -1
  291. package/dist/roadtrip/p-2c132382.entry.js.map +0 -1
  292. package/dist/roadtrip/p-2c8a6854.entry.js +0 -2
  293. package/dist/roadtrip/p-2c8a6854.entry.js.map +0 -1
  294. package/dist/roadtrip/p-2e25c08d.entry.js +0 -2
  295. package/dist/roadtrip/p-2e25c08d.entry.js.map +0 -1
  296. package/dist/roadtrip/p-33002e9d.entry.js +0 -2
  297. package/dist/roadtrip/p-33002e9d.entry.js.map +0 -1
  298. package/dist/roadtrip/p-372fcb4d.entry.js +0 -2
  299. package/dist/roadtrip/p-372fcb4d.entry.js.map +0 -1
  300. package/dist/roadtrip/p-40daa53b.entry.js +0 -2
  301. package/dist/roadtrip/p-4f47f4f7.entry.js.map +0 -1
  302. package/dist/roadtrip/p-5053b01a.entry.js +0 -2
  303. package/dist/roadtrip/p-5053b01a.entry.js.map +0 -1
  304. package/dist/roadtrip/p-7048f786.entry.js.map +0 -1
  305. package/dist/roadtrip/p-9bef58e1.entry.js +0 -2
  306. package/dist/roadtrip/p-9bef58e1.entry.js.map +0 -1
  307. package/dist/roadtrip/p-a44a569a.entry.js +0 -2
  308. package/dist/roadtrip/p-a44a569a.entry.js.map +0 -1
  309. package/dist/roadtrip/p-acbc0a14.entry.js +0 -2
  310. package/dist/roadtrip/p-acbc0a14.entry.js.map +0 -1
  311. package/dist/roadtrip/p-b2e7bfcb.entry.js +0 -2
  312. package/dist/roadtrip/p-b2e7bfcb.entry.js.map +0 -1
  313. package/dist/roadtrip/p-c3c92152.entry.js.map +0 -1
  314. package/dist/roadtrip/p-dcb280e3.entry.js.map +0 -1
  315. package/dist/roadtrip/p-e2149bdf.entry.js +0 -2
  316. package/dist/roadtrip/p-e2149bdf.entry.js.map +0 -1
  317. package/dist/roadtrip/p-ea28a425.entry.js.map +0 -1
  318. package/dist/roadtrip/p-ee7aaee5.entry.js +0 -2
  319. package/dist/roadtrip/p-ee7aaee5.entry.js.map +0 -1
  320. package/dist/roadtrip/p-faba450c.entry.js +0 -2
  321. package/dist/roadtrip/p-faba450c.entry.js.map +0 -1
  322. /package/dist/roadtrip/{p-82919e58.entry.js.map → p-16c934bc.entry.js.map} +0 -0
  323. /package/dist/roadtrip/{p-73fe2357.js.map → p-ac7a8bca.js.map} +0 -0
  324. /package/dist/roadtrip/{p-cbc00bfb.entry.js.map → p-cfc0a3a7.entry.js.map} +0 -0
  325. /package/dist/roadtrip/{p-414a2791.entry.js.map → p-e8c9c816.entry.js.map} +0 -0
@@ -54,25 +54,25 @@ export default {
54
54
  'is-medium': null,
55
55
  list: `<road-list slot="list">
56
56
  <road-item button class="border-0">
57
- <road-icon slot="start" name="picture" size="md"></road-icon>
57
+ <road-icon slot="start" name="picture" size="md" aria-hidden="true"></road-icon>
58
58
  <road-label>
59
59
  Label
60
60
  </road-label>
61
61
  </road-item>
62
62
  <road-item button class="border-0">
63
- <road-icon slot="start" name="picture" size="md"></road-icon>
63
+ <road-icon slot="start" name="picture" size="md" aria-hidden="true"></road-icon>
64
64
  <road-label>
65
65
  Label
66
66
  </road-label>
67
67
  </road-item>
68
68
  <road-item button class="border-0">
69
- <road-icon slot="start" name="picture" size="md"></road-icon>
69
+ <road-icon slot="start" name="picture" size="md" aria-hidden="true"></road-icon>
70
70
  <road-label>
71
71
  Label
72
72
  </road-label>
73
73
  </road-item>
74
74
  <road-item button class="border-0">
75
- <road-icon slot="start" name="picture" size="md"></road-icon>
75
+ <road-icon slot="start" name="picture" size="md" aria-hidden="true"></road-icon>
76
76
  <road-label>
77
77
  Label
78
78
  </road-label>
@@ -24,7 +24,7 @@ export class GlobalNavigation {
24
24
  this.selectedTabChanged();
25
25
  }
26
26
  render() {
27
- return (h(Host, { role: "tablist" }, h("slot", null)));
27
+ return (h(Host, { role: "application" }, h("slot", null)));
28
28
  }
29
29
  static get is() { return "road-global-navigation"; }
30
30
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"global-navigation.js","sourceRoot":"","sources":["../../../src/components/global-navigation/global-navigation.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAgB,MAAM,EAAE,MAAM,eAAe,CAAC;AAC7F,OAAO,wBAAwB,CAAC;AAEhC;;GAEG;AAOH,MAAM,OAAO,gBAAgB;;;;EAO3B,kBAAkB;IAChB,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE;MAClC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;QAC1B,GAAG,EAAE,IAAI,CAAC,WAAW;OACtB,CAAC,CAAC;MACH,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;QAC1B,GAAG,EAAE,IAAI,CAAC,WAAW;OACtB,CAAC,CAAC;KACJ;EACH,CAAC;EASD,eAAe,CAAC,EAAe;IAC7B,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;EACnC,CAAC;EAED,iBAAiB;IACf,IAAI,CAAC,kBAAkB,EAAE,CAAC;EAC5B,CAAC;EAED,MAAM;IACJ,OAAO,CACL,EAAC,IAAI,IACH,IAAI,EAAC,SAAS;MAEd,eAAO,CACF,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAEF","sourcesContent":["import { Component, Host, h, Prop, Watch, Event, EventEmitter, Listen } from '@stencil/core';\nimport './../../utils/polyfill';\n\n/**\n * @slot navbar - it should be road-navbar-item elements. Max 5 items on Mobile or add them to the drawer\n */\n\n@Component({\n tag: 'road-global-navigation',\n styleUrl: 'global-navigation.css',\n shadow: true,\n})\nexport class GlobalNavigation {\n\n /**\n * The selected tab component\n */\n @Prop() selectedTab?: string;\n @Watch('selectedTab')\n selectedTabChanged() {\n if (this.selectedTab !== undefined) {\n this.roadnavbarchanged.emit({\n tab: this.selectedTab,\n });\n this.roadNavbarChanged.emit({\n tab: this.selectedTab,\n });\n }\n }\n\n /** @internal */\n @Event() roadnavbarchanged!: EventEmitter;\n /** @internal */\n @Event() roadNavbarChanged!: EventEmitter;\n\n @Listen('roadNavbarItemClick')\n @Listen('roadnavbaritemclick')\n onNavbarChanged(ev: CustomEvent) {\n this.selectedTab = ev.detail.tab;\n }\n\n componentWillLoad() {\n this.selectedTabChanged();\n }\n\n render() {\n return (\n <Host\n role=\"tablist\"\n >\n <slot/>\n </Host>\n );\n }\n\n}\n"]}
1
+ {"version":3,"file":"global-navigation.js","sourceRoot":"","sources":["../../../src/components/global-navigation/global-navigation.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAgB,MAAM,EAAE,MAAM,eAAe,CAAC;AAC7F,OAAO,wBAAwB,CAAC;AAEhC;;GAEG;AAOH,MAAM,OAAO,gBAAgB;;;;EAO3B,kBAAkB;IAChB,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE;MAClC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;QAC1B,GAAG,EAAE,IAAI,CAAC,WAAW;OACtB,CAAC,CAAC;MACH,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;QAC1B,GAAG,EAAE,IAAI,CAAC,WAAW;OACtB,CAAC,CAAC;KACJ;EACH,CAAC;EASD,eAAe,CAAC,EAAe;IAC7B,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;EACnC,CAAC;EAED,iBAAiB;IACf,IAAI,CAAC,kBAAkB,EAAE,CAAC;EAC5B,CAAC;EAED,MAAM;IACJ,OAAO,CACL,EAAC,IAAI,IACH,IAAI,EAAC,aAAa;MAElB,eAAO,CACF,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAEF","sourcesContent":["import { Component, Host, h, Prop, Watch, Event, EventEmitter, Listen } from '@stencil/core';\nimport './../../utils/polyfill';\n\n/**\n * @slot navbar - it should be road-navbar-item elements. Max 5 items on Mobile or add them to the drawer\n */\n\n@Component({\n tag: 'road-global-navigation',\n styleUrl: 'global-navigation.css',\n shadow: true,\n})\nexport class GlobalNavigation {\n\n /**\n * The selected tab component\n */\n @Prop() selectedTab?: string;\n @Watch('selectedTab')\n selectedTabChanged() {\n if (this.selectedTab !== undefined) {\n this.roadnavbarchanged.emit({\n tab: this.selectedTab,\n });\n this.roadNavbarChanged.emit({\n tab: this.selectedTab,\n });\n }\n }\n\n /** @internal */\n @Event() roadnavbarchanged!: EventEmitter;\n /** @internal */\n @Event() roadNavbarChanged!: EventEmitter;\n\n @Listen('roadNavbarItemClick')\n @Listen('roadnavbaritemclick')\n onNavbarChanged(ev: CustomEvent) {\n this.selectedTab = ev.detail.tab;\n }\n\n componentWillLoad() {\n this.selectedTabChanged();\n }\n\n render() {\n return (\n <Host\n role=\"application\"\n >\n <slot/>\n </Host>\n );\n }\n\n}\n"]}
@@ -40,32 +40,32 @@ export default {
40
40
  },
41
41
  args: {
42
42
  toolbar: `
43
- <road-toolbar>
44
- <road-button slot="start" class="border-0 align-self-auto">
45
- <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>
43
+ <road-toolbar role="tabpanel">
44
+ <road-button slot="start" class="border-0 align-self-auto" color="ghost">
45
+ <road-icon name="pass-maintain-logo-solid-color" role="img"></road-icon> <road-label class="font-weight-bold h6 mb-0 ml-8">App Name</road-label>
46
46
  </road-button>
47
47
 
48
48
 
49
- <road-button class="border-0 align-items-center" slot="secondary">
50
- <road-icon name="alert-question-outline"></road-icon><road-label class="d-none d-xl-block mx-8">Help</road-label>
49
+ <road-button class="border-0 align-items-center" slot="secondary" color="ghost">
50
+ <road-icon name="alert-question-outline" role="img"></road-icon><road-label class="d-none d-xl-block mx-8">Help</road-label>
51
51
  </road-button>
52
- <road-button class="d-none d-xl-flex align-items-center" slot="end">
53
- <road-icon name="speak-advice-outline"></road-icon><road-label class="d-none d-xl-block mx-8">Feedback</road-label>
52
+ <road-button class="d-none d-xl-flex align-items-center" slot="end" color="ghost">
53
+ <road-icon name="speak-advice-outline" role="img"></road-icon><road-label class="d-none d-xl-block mx-8">Feedback</road-label>
54
54
  </road-button>
55
55
 
56
56
  </road-toolbar>
57
57
  `,
58
58
  navbar: `
59
- <road-navbar>
59
+ <road-navbar role="tabpanel">
60
60
  <road-profil-dropdown is-open="false" class="m-24 d-none d-xl-block">
61
61
  <road-list slot="list">
62
- <road-item button="" style="--border-radius: 0; --min-height: 2.5rem; --inner-padding: 0;" class="edit-profil">
62
+ <road-item button="" style="--border-radius: 0; --min-height: 2.5rem; --inner-padding: 0;" class="edit-profil border-0">
63
63
  <road-icon slot="start" name="edit-outline" size="md"></road-icon>
64
64
  <road-label style="font-size: 0.75rem">
65
65
  Edit profile
66
66
  </road-label>
67
67
  </road-item>
68
- <road-item button="" style="--border-radius: 0; --min-height: 2.5rem; --inner-padding: 0;">
68
+ <road-item button="" style="--border-radius: 0; --min-height: 2.5rem; --inner-padding: 0;" class="border-0">
69
69
  <road-icon slot="start" name="log-out-outline" size="md"></road-icon>
70
70
  <road-label style="font-size: 0.75rem">
71
71
  Log out
@@ -98,63 +98,63 @@ export default {
98
98
  });
99
99
  </script>
100
100
 
101
- <road-navbar-item tab="tab-home">
101
+ <road-navbar-item tab="tab-home" role="tabpanel">
102
102
  <road-tooltip content="Home" position="right" trigger="hover" contentalign="center">
103
- <road-icon name="navigation-home-outline"></road-icon>
103
+ <road-icon name="navigation-home-outline" role="img"></road-icon>
104
104
  <road-label class="font-weight-bold">Home</road-label>
105
105
  </road-tooltip>
106
106
  </road-navbar-item>
107
107
 
108
- <road-navbar-item tab="tab-search">
108
+ <road-navbar-item tab="tab-search" role="tabpanel">
109
109
  <road-tooltip content="Search" position="right" trigger="hover" contentalign="center">
110
- <road-icon name="search"></road-icon>
110
+ <road-icon name="search" role="img"></road-icon>
111
111
  <road-label class="font-weight-bold">Search</road-label>
112
112
  </road-tooltip>
113
113
  </road-navbar-item>
114
114
 
115
- <road-navbar-item tab="tab-catalog">
115
+ <road-navbar-item tab="tab-catalog" role="tabpanel">
116
116
  <road-tooltip content="Print" position="right" trigger="hover" contentalign="center">
117
- <road-icon name="print-outline"></road-icon>
117
+ <road-icon name="print-outline" role="img"></road-icon>
118
118
  <road-label class="font-weight-bold">Print</road-label>
119
119
  </road-tooltip>
120
120
  </road-navbar-item>
121
121
 
122
- <road-navbar-item tab="tab-notification" class="d-none d-xl-flex">
122
+ <road-navbar-item tab="tab-notification" class="d-none d-xl-flex" role="tabpanel">
123
123
  <road-tooltip content="Notifications" position="right" trigger="hover" contentalign="center">
124
- <road-icon name="alert-notification-outline"></road-icon>
124
+ <road-icon name="alert-notification-outline" role="img"></road-icon>
125
125
  <road-label class="font-weight-bold">Notifications</road-label>
126
126
  </road-tooltip>
127
127
  </road-navbar-item>
128
128
 
129
- <road-navbar-item tab="tab-scan" class="d-none d-xl-flex">
129
+ <road-navbar-item tab="tab-scan" class="d-none d-xl-flex" role="tabpanel">
130
130
  <road-tooltip content="Scan" position="right" trigger="hover" contentalign="center">
131
- <road-icon name="scan"></road-icon>
131
+ <road-icon name="scan" role="img"></road-icon>
132
132
  <road-label class="font-weight-bold">Scan</road-label>
133
133
  </road-tooltip>
134
134
  </road-navbar-item>
135
135
 
136
- <road-navbar-item tab="tab-catalogue" class="d-none d-xl-flex">
136
+ <road-navbar-item tab="tab-catalogue" class="d-none d-xl-flex" role="tabpanel">
137
137
  <road-tooltip content="Catalogue" position="right" trigger="hover" contentalign="center">
138
- <road-icon name="file-catalog"></road-icon>
138
+ <road-icon name="file-catalog" role="img"></road-icon>
139
139
  <road-label class="font-weight-bold">Catalogue</road-label>
140
140
  </road-tooltip>
141
141
  </road-navbar-item>
142
142
 
143
- <road-navbar-item tab="tab-diag" class="d-none d-xl-flex">
143
+ <road-navbar-item tab="tab-diag" class="d-none d-xl-flex" role="tabpanel">
144
144
  <road-tooltip content="Diagnostic" position="right" trigger="hover" contentalign="center">
145
- <road-icon name="Diagnostic"></road-icon>
145
+ <road-icon name="Diagnostic" role="img"></road-icon>
146
146
  <road-label class="font-weight-bold">Diagnostic</road-label>
147
147
  </road-toolip>
148
148
  </road-navbar-item>
149
149
 
150
150
  <road-navbar-item tab="tab-menu" class="d-block d-xl-none tab-menu">
151
- <road-icon name="navigation-menu"></road-icon>
151
+ <road-icon name="navigation-menu" role="img"></road-icon>
152
152
  <road-label>Menu</road-label>
153
153
  </road-navbar-item>
154
154
 
155
155
  <road-drawer is-open="false" position="right" drawer-width="480" drawer-title="Menu" class="d-xl-none drawer-menu">
156
156
  <div class="p-16">
157
- <road-item class="mb-16 text-left bg-light profil">
157
+ <road-item class="mb-16 text-left bg-light profil" tabindex="0">
158
158
  <road-avatar slot="start" class="mr-16">
159
159
  <road-img src="https://images.unsplash.com/photo-1527980965255-d3b416303d12?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=800&q=80" alt="avatar"></road-img>
160
160
  </road-avatar>
@@ -166,22 +166,22 @@ export default {
166
166
  <road-icon slot="end" name="edit-outline" size="sm" class="mr-8"></road-icon>
167
167
  </road-item>
168
168
 
169
- <road-item class="bg-white">
169
+ <road-item class="bg-white" button="true">
170
170
  <road-icon name="scan"></road-icon>
171
171
  Scan
172
172
  </road-item>
173
173
 
174
- <road-item class="bg-white">
174
+ <road-item class="bg-white" button="true">
175
175
  <road-icon name="file-catalog"></road-icon>
176
176
  Catalogue
177
177
  </road-item>
178
178
 
179
- <road-item class="bg-white">
179
+ <road-item class="bg-white" button="true">
180
180
  <road-icon name="Diagnostic"></road-icon>
181
181
  Diagnostic
182
182
  </road-item>
183
183
 
184
- <road-item class="bg-white border-top ">
184
+ <road-item class="bg-white border-top" button="true">
185
185
  <road-icon name="log-out"></road-icon>
186
186
  Log out
187
187
  </road-item>
@@ -270,48 +270,48 @@ Page.args = {
270
270
  <road-label slot="email">email</road-label>
271
271
  </road-profil-dropdown>
272
272
 
273
- <road-navbar-item tab="tab-home">
273
+ <road-navbar-item tab="tab-home" role="menu">
274
274
  <road-icon name="navigation-home-outline"></road-icon>
275
275
  <road-label style="font-size:0.75rem;">Home</road-label>
276
276
  </road-navbar-item>
277
277
 
278
- <road-navbar-item tab="tab-search">
278
+ <road-navbar-item tab="tab-search" role="menu">
279
279
  <road-icon name="search"></road-icon>
280
280
  <road-label style="font-size:0.75rem;">Search</road-label>
281
281
  </road-navbar-item>
282
282
 
283
- <road-navbar-item tab="tab-catalog">
283
+ <road-navbar-item tab="tab-catalog" role="menu">
284
284
  <road-icon name="print-outline"></road-icon>
285
285
  <road-label style="font-size:0.75rem;">Print</road-label>
286
286
  </road-navbar-item>
287
287
 
288
- <road-navbar-item tab="tab-notification" class="d-none d-xl-flex">
288
+ <road-navbar-item tab="tab-notification" class="d-none d-xl-flex" role="menu">
289
289
  <road-icon name="alert-notification-outline"></road-icon>
290
290
  <road-label style="font-size:0.75rem;">Notifications</road-label>
291
291
  </road-navbar-item>
292
292
 
293
- <road-navbar-item tab="tab-scan" class="d-none d-xl-flex">
293
+ <road-navbar-item tab="tab-scan" class="d-none d-xl-flex" role="menu">
294
294
  <road-icon name="scan"></road-icon>
295
295
  <road-label>Scan</road-label>
296
296
  </road-navbar-item>
297
297
 
298
- <road-navbar-item tab="tab-catalogue" class="d-none d-xl-flex">
298
+ <road-navbar-item tab="tab-catalogue" class="d-none d-xl-flex" role="menu">
299
299
  <road-icon name="file-catalog"></road-icon>
300
300
  <road-label style="font-size:0.75rem;">Catalogue</road-label>
301
301
  </road-navbar-item>
302
302
 
303
- <road-navbar-item tab="tab-diag" class="d-none d-xl-flex">
303
+ <road-navbar-item tab="tab-diag" class="d-none d-xl-flex" role="menu">
304
304
  <road-icon name="Diagnostic"></road-icon>
305
305
  <road-label style="font-size:0.75rem;">Diagnostic</road-label>
306
306
  </road-navbar-item>
307
307
 
308
- <road-navbar-item tab="tab-menu" class="d-block d-xl-none tab-menu">
308
+ <road-navbar-item tab="tab-menu" class="d-block d-xl-none tab-menu" role="menu">
309
309
  <road-icon name="navigation-menu"></road-icon>
310
310
  <road-label style="font-size:0.75rem;">Menu</road-label>
311
311
  </road-navbar-item>
312
312
 
313
313
  <road-drawer is-open="false" position="right" drawer-width="480" drawer-title="Menu" class="d-xl-none drawer-menu">
314
- <road-item class="mb-16 text-left bg-light profil">
314
+ <road-item class="mb-16 text-left bg-light profil" tabindex="0">
315
315
  <road-avatar slot="start" class="mr-16">
316
316
  <road-img src="https://images.unsplash.com/photo-1527980965255-d3b416303d12?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=800&q=80" alt="avatar"></road-img>
317
317
  </road-avatar>
@@ -14,6 +14,7 @@ export const Playground = ({ color, name, size, rotate, lazy }) => html`
14
14
  size="${ifDefined(size)}"
15
15
  rotate="${ifDefined(rotate)}"
16
16
  lazy="${ifDefined(lazy)}"
17
+ role="img"
17
18
  ></road-icon>
18
19
  `;
19
20
  Playground.args = {
@@ -68,88 +69,88 @@ Playground.argTypes = {
68
69
  };
69
70
 
70
71
  export const Sizes = () => html`
71
- <road-icon name="alert-success" size="sm"></road-icon>
72
- <road-icon name="alert-success" size="md"></road-icon>
73
- <road-icon name="alert-success" size="lg"></road-icon>
74
- <road-icon name="alert-success" size="3x"></road-icon>
75
- <road-icon name="alert-success" size="4x"></road-icon>
72
+ <road-icon name="alert-success" size="sm" role="img"></road-icon>
73
+ <road-icon name="alert-success" size="md" role="img"></road-icon>
74
+ <road-icon name="alert-success" size="lg" role="img"></road-icon>
75
+ <road-icon name="alert-success" size="3x" role="img"></road-icon>
76
+ <road-icon name="alert-success" size="4x" role="img"></road-icon>
76
77
  `;
77
78
 
78
79
  export const Rotate = () => html`
79
- <road-icon name="navigation-chevron"></road-icon>
80
- <road-icon name="navigation-chevron" rotate="90"></road-icon>
81
- <road-icon name="navigation-chevron" rotate="180"></road-icon>
82
- <road-icon name="navigation-chevron" rotate="270"></road-icon>
80
+ <road-icon name="navigation-chevron" role="img"></road-icon>
81
+ <road-icon name="navigation-chevron" rotate="90" role="img"></road-icon>
82
+ <road-icon name="navigation-chevron" rotate="180" role="img"></road-icon>
83
+ <road-icon name="navigation-chevron" rotate="270" role="img"></road-icon>
83
84
  `;
84
85
 
85
86
  export const Colors = () => html`
86
- <road-icon name="location-pin-garage-norauto" color="primary"></road-icon>
87
- <road-icon name="location-pin-garage" color="secondary"></road-icon>
88
- <road-icon name="location-pin-all" color="accent"></road-icon>
87
+ <road-icon name="location-pin-garage-norauto" color="primary" role="img"></road-icon>
88
+ <road-icon name="location-pin-garage" color="secondary" role="img"></road-icon>
89
+ <road-icon name="location-pin-all" color="accent" role="img"></road-icon>
89
90
 
90
91
  <br/>
91
92
 
92
- <road-icon name="alert-info" color="info"></road-icon>
93
- <road-icon name="alert-success" color="success"></road-icon>
94
- <road-icon name="alert-warning" color="warning"></road-icon>
95
- <road-icon name="alert-danger" color="danger"></road-icon>
93
+ <road-icon name="alert-info" color="info" role="img"></road-icon>
94
+ <road-icon name="alert-success" color="success" role="img"></road-icon>
95
+ <road-icon name="alert-warning" color="warning" role="img"></road-icon>
96
+ <road-icon name="alert-danger" color="danger" role="img"></road-icon>
96
97
 
97
98
  <br/>
98
99
 
99
- <road-icon name="navigation-back"></road-icon>
100
- <road-icon name="navigation-back" color="white" class="bg-primary"></road-icon>
100
+ <road-icon name="navigation-back" role="img"></road-icon>
101
+ <road-icon name="navigation-back" color="white" class="bg-primary" role="img"></road-icon>
101
102
  `;
102
103
 
103
104
  export const MultipleColors = () => html`
104
- <road-icon name="vehicle-3-doors-color" size="4x"></road-icon>
105
- <road-icon name="vehicle-3-doors-hatchback-color" size="4x"></road-icon>
105
+ <road-icon name="vehicle-3-doors-color" size="4x" role="img"></road-icon>
106
+ <road-icon name="vehicle-3-doors-hatchback-color" size="4x" role="img"></road-icon>
106
107
 
107
108
  <br/>
108
109
 
109
- <road-icon name="vehicle-5-doors-color" size="4x"></road-icon>
110
- <road-icon name="vehicle-5-doors-hatchback-color" size="4x"></road-icon>
110
+ <road-icon name="vehicle-5-doors-color" size="4x" role="img"></road-icon>
111
+ <road-icon name="vehicle-5-doors-hatchback-color" size="4x" role="img"></road-icon>
111
112
 
112
113
  <br/>
113
114
 
114
- <road-icon name="vehicle-tires-front-color" size="4x"></road-icon>
115
- <road-icon name="vehicle-tires-back-color" size="4x"></road-icon>
116
- <road-icon name="vehicle-tires-all-color" size="4x"></road-icon>
115
+ <road-icon name="vehicle-tires-front-color" size="4x" role="img"></road-icon>
116
+ <road-icon name="vehicle-tires-back-color" size="4x" role="img"></road-icon>
117
+ <road-icon name="vehicle-tires-all-color" size="4x" role="img"></road-icon>
117
118
 
118
119
  <br/>
119
120
 
120
- <road-icon name="car-wiper-front-color" size="4x"></road-icon>
121
- <road-icon name="car-wiper-back-color" size="4x"></road-icon>
121
+ <road-icon name="car-wiper-front-color" size="4x" role="img"></road-icon>
122
+ <road-icon name="car-wiper-back-color" size="4x" role="img"></road-icon>
122
123
 
123
124
  <br/>
124
125
 
125
- <road-icon name="vehicle-car-light-front-color" size="4x"></road-icon>
126
- <road-icon name="vehicle-car-light-back-color" size="4x"></road-icon>
127
- <road-icon name="vehicle-car-light-inside-color" size="4x"></road-icon>
126
+ <road-icon name="vehicle-car-light-front-color" size="4x" role="img"></road-icon>
127
+ <road-icon name="vehicle-car-light-back-color" size="4x" role="img"></road-icon>
128
+ <road-icon name="vehicle-car-light-inside-color" size="4x" role="img"></road-icon>
128
129
 
129
130
  <br/>
130
131
 
131
- <road-icon name="brake-color" size="4x"></road-icon>
132
- <road-icon name="brake" color="secondary" size="4x"></road-icon>
132
+ <road-icon name="brake-color" size="4x" role="img"></road-icon>
133
+ <road-icon name="brake" color="secondary" size="4x" role="img"></road-icon>
133
134
 
134
135
  <br/>
135
136
 
136
137
  <div class="bg-primary">
137
- <road-icon name="location-pin-outline-color" color="white" size="4x"></road-icon>
138
- <road-icon name="vehicle-car-add-outline-color" color="white" size="4x"></road-icon>
139
- <road-icon name="vehicle-car-checked-outline-color" color="white" size="4x"></road-icon>
138
+ <road-icon name="location-pin-outline-color" color="white" size="4x" role="img"></road-icon>
139
+ <road-icon name="vehicle-car-add-outline-color" color="white" size="4x" role="img"></road-icon>
140
+ <road-icon name="vehicle-car-checked-outline-color" color="white" size="4x" role="img"></road-icon>
140
141
  </div>
141
142
 
142
143
  <br/>
143
144
 
144
- <road-icon name="weather-sun-snow-color" size="4x"></road-icon>
145
- <road-icon name="weather-sun-color" size="4x"></road-icon>
146
- <road-icon name="weather-snow-color" size="4x"></road-icon>
145
+ <road-icon name="weather-sun-snow-color" size="4x" role="img"></road-icon>
146
+ <road-icon name="weather-sun-color" size="4x" role="img"></road-icon>
147
+ <road-icon name="weather-snow-color" size="4x" role="img"></road-icon>
147
148
 
148
149
  <br/>
149
150
 
150
- <road-icon name="people-outline" color="primary" size="4x"></road-icon>
151
- <road-icon name="people-vip-outline-color" size="4x"></road-icon>
152
- <road-icon name="people-card-color" size="4x"></road-icon>
153
- <road-icon name="people-car-fleet-color" size="4x"></road-icon>
154
- <road-icon name="people-coworker-norauto-color" size="4x"></road-icon>
151
+ <road-icon name="people-outline" color="primary" size="4x" role="img"></road-icon>
152
+ <road-icon name="people-vip-outline-color" size="4x" role="img"></road-icon>
153
+ <road-icon name="people-card-color" size="4x" role="img"></road-icon>
154
+ <road-icon name="people-car-fleet-color" size="4x" role="img"></road-icon>
155
+ <road-icon name="people-coworker-norauto-color" size="4x" role="img"></road-icon>
155
156
  `;
@@ -70,7 +70,7 @@ export class Illustration {
70
70
  render() {
71
71
  const sizeClass = this.size !== undefined ? `illustration-${this.size}` : '';
72
72
  const rotateClass = this.rotate !== undefined ? `illustration-rotate-${this.rotate}` : '';
73
- return (h(Host, { class: `${sizeClass} ${rotateClass}`, "aria-hidden": "true" }, ((this.illustrationSvgContent !== '')
73
+ return (h(Host, { class: `${sizeClass} ${rotateClass}`, "aria-hidden": "true", role: "img" }, ((this.illustrationSvgContent !== '')
74
74
  ? h("div", { class: "icon-inner", innerHTML: this.illustrationSvgContent })
75
75
  : h("div", { class: "icon-inner" }))));
76
76
  }
@@ -1 +1 @@
1
- {"version":3,"file":"illustration.js","sourceRoot":"","sources":["../../../src/components/illustration/illustration.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Build, Component, Element, Host, Prop, State, Watch, h } from '@stencil/core';\nimport { getIllustrationSvgContent, roadillustrationContent } from './request';\nimport { getName, getUrl } from './utils';\n\n@Component({\n tag: 'road-illustration',\n assetsDirs: ['svg'],\n styleUrl: 'illustration.css',\n shadow: true,\n})\nexport class Illustration {\n private io?: IntersectionObserver;\n\n @Element() el!: HTMLRoadIllustrationElement;\n\n @State() private illustrationSvgContent?: string;\n\n @State() private isVisible = false;\n\n\n\n /**\n * Specifies the label to use for accessibility. Defaults to the illustration name.\n */\n @Prop({ mutable: true, reflect: true }) ariaLabel?: string;\n\n /**\n * Set the illustration to hidden, respectively `true`, to remove it from the accessibility tree.\n */\n @Prop({ reflect: true }) ariaHidden?: string;\n\n /**\n * Specifies which illustration to use from the built-in set of illustrations.\n */\n @Prop() name?: string;\n\n /**\n * Specifies the exact `src` of an SVG file to use.\n */\n @Prop() src?: string;\n\n /**\n * A combination of both `name` and `src`. If a `src` url is detected\n * it will set the `src` property. Otherwise it assumes it's a built-in named\n * SVG and set the `name` property.\n */\n @Prop() illustration?: any;\n\n /**\n * The size of the illustration.\n * Available options are: `\"sm\"`, `\"md\"`, `\"lg\"`, `\"2x\"`.\n */\n @Prop() size?: 'sm' | 'md' | 'lg' | '2x' = \"2x\";\n\n /**\n * The rotation of the illustration.\n * Available options are: `\"90\"`, `\"180\"`, `\"270\"`.\n */\n @Prop() rotate?: '90' | '180' | '270';\n\n /**\n * If enabled, road-illustration will be loaded lazily when it's visible in the viewport.\n * Default, `false`.\n */\n @Prop() lazy: boolean = false;\n\n /**\n * When set to `false`, SVG content that is HTTP fetched will not be checked\n * if the response SVG content has any `<script>` elements, or any attributes\n * that start with `on`, such as `onclick`.\n */\n @Prop() sanitize = true;\n\n componentWillLoad() {\n\n this.waitUntilVisible(this.el, '50px', () => {\n this.isVisible = true;\n this.loadIllustration();\n });\n }\n\n disconnectedCallback() {\n if (this.io) {\n this.io.disconnect();\n this.io = undefined;\n }\n }\n\n private waitUntilVisible(el: HTMLRoadIllustrationElement, rootMargin: string, cb: () => void) {\n if (this.lazy && (window as any).IntersectionObserver) {\n const io = this.io = new (window as any).IntersectionObserver((data: IntersectionObserverEntry[]) => {\n if (data[0].isIntersecting) {\n io.disconnect();\n this.io = undefined;\n cb();\n }\n }, { rootMargin });\n\n io.observe(el);\n\n } else {\n // browser doesn't support IntersectionObserver\n // so just fallback to always show it\n cb();\n }\n }\n\n @Watch('name')\n @Watch('src')\n @Watch('illustration')\n loadIllustration() {\n if (Build.isBrowser && this.isVisible) {\n const url = getUrl(this);\n if (url) {\n if (roadillustrationContent.has(url)) {\n // sync if it's already loaded\n this.illustrationSvgContent = roadillustrationContent.get(url);\n } else {\n // async if it hasn't been loaded\n getIllustrationSvgContent(url, this.sanitize).then(() => (this.illustrationSvgContent = roadillustrationContent.get(url)));\n }\n }\n }\n\n if (!this.ariaLabel && this.ariaHidden !== 'true') {\n const label = getName(this.name, this.illustration);\n // user did not provide a label\n // come up with the label based on the icon name\n if (label) {\n this.ariaLabel = label.replace(/-/g, ' ');\n }\n }\n }\n\n render() {\n const sizeClass = this.size !== undefined ? `illustration-${this.size}` : '';\n const rotateClass = this.rotate !== undefined ? `illustration-rotate-${this.rotate}` : '';\n\n return (\n <Host class={`${sizeClass} ${rotateClass}`} aria-hidden=\"true\">\n {(\n (this.illustrationSvgContent !== '')\n ? <div class=\"icon-inner\" innerHTML={this.illustrationSvgContent}></div>\n : <div class=\"icon-inner\"></div>\n )}\n </Host>\n );\n }\n}"]}
1
+ {"version":3,"file":"illustration.js","sourceRoot":"","sources":["../../../src/components/illustration/illustration.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Build, Component, Element, Host, Prop, State, Watch, h } from '@stencil/core';\nimport { getIllustrationSvgContent, roadillustrationContent } from './request';\nimport { getName, getUrl } from './utils';\n\n@Component({\n tag: 'road-illustration',\n assetsDirs: ['svg'],\n styleUrl: 'illustration.css',\n shadow: true,\n})\nexport class Illustration {\n private io?: IntersectionObserver;\n\n @Element() el!: HTMLRoadIllustrationElement;\n\n @State() private illustrationSvgContent?: string;\n\n @State() private isVisible = false;\n\n\n\n /**\n * Specifies the label to use for accessibility. Defaults to the illustration name.\n */\n @Prop({ mutable: true, reflect: true }) ariaLabel?: string;\n\n /**\n * Set the illustration to hidden, respectively `true`, to remove it from the accessibility tree.\n */\n @Prop({ reflect: true }) ariaHidden?: string;\n\n /**\n * Specifies which illustration to use from the built-in set of illustrations.\n */\n @Prop() name?: string;\n\n /**\n * Specifies the exact `src` of an SVG file to use.\n */\n @Prop() src?: string;\n\n /**\n * A combination of both `name` and `src`. If a `src` url is detected\n * it will set the `src` property. Otherwise it assumes it's a built-in named\n * SVG and set the `name` property.\n */\n @Prop() illustration?: any;\n\n /**\n * The size of the illustration.\n * Available options are: `\"sm\"`, `\"md\"`, `\"lg\"`, `\"2x\"`.\n */\n @Prop() size?: 'sm' | 'md' | 'lg' | '2x' = \"2x\";\n\n /**\n * The rotation of the illustration.\n * Available options are: `\"90\"`, `\"180\"`, `\"270\"`.\n */\n @Prop() rotate?: '90' | '180' | '270';\n\n /**\n * If enabled, road-illustration will be loaded lazily when it's visible in the viewport.\n * Default, `false`.\n */\n @Prop() lazy: boolean = false;\n\n /**\n * When set to `false`, SVG content that is HTTP fetched will not be checked\n * if the response SVG content has any `<script>` elements, or any attributes\n * that start with `on`, such as `onclick`.\n */\n @Prop() sanitize = true;\n\n componentWillLoad() {\n\n this.waitUntilVisible(this.el, '50px', () => {\n this.isVisible = true;\n this.loadIllustration();\n });\n }\n\n disconnectedCallback() {\n if (this.io) {\n this.io.disconnect();\n this.io = undefined;\n }\n }\n\n private waitUntilVisible(el: HTMLRoadIllustrationElement, rootMargin: string, cb: () => void) {\n if (this.lazy && (window as any).IntersectionObserver) {\n const io = this.io = new (window as any).IntersectionObserver((data: IntersectionObserverEntry[]) => {\n if (data[0].isIntersecting) {\n io.disconnect();\n this.io = undefined;\n cb();\n }\n }, { rootMargin });\n\n io.observe(el);\n\n } else {\n // browser doesn't support IntersectionObserver\n // so just fallback to always show it\n cb();\n }\n }\n\n @Watch('name')\n @Watch('src')\n @Watch('illustration')\n loadIllustration() {\n if (Build.isBrowser && this.isVisible) {\n const url = getUrl(this);\n if (url) {\n if (roadillustrationContent.has(url)) {\n // sync if it's already loaded\n this.illustrationSvgContent = roadillustrationContent.get(url);\n } else {\n // async if it hasn't been loaded\n getIllustrationSvgContent(url, this.sanitize).then(() => (this.illustrationSvgContent = roadillustrationContent.get(url)));\n }\n }\n }\n\n if (!this.ariaLabel && this.ariaHidden !== 'true') {\n const label = getName(this.name, this.illustration);\n // user did not provide a label\n // come up with the label based on the icon name\n if (label) {\n this.ariaLabel = label.replace(/-/g, ' ');\n }\n }\n }\n\n render() {\n const sizeClass = this.size !== undefined ? `illustration-${this.size}` : '';\n const rotateClass = this.rotate !== undefined ? `illustration-rotate-${this.rotate}` : '';\n\n return (\n <Host class={`${sizeClass} ${rotateClass}`} aria-hidden=\"true\" role=\"img\">\n {(\n (this.illustrationSvgContent !== '')\n ? <div class=\"icon-inner\" innerHTML={this.illustrationSvgContent}></div>\n : <div class=\"icon-inner\"></div>\n )}\n </Host>\n );\n }\n}"]}
@@ -149,7 +149,7 @@
149
149
  display: block;
150
150
  font-size: var(--road-body-medium);
151
151
  line-height: 1.5;
152
- color: var(--road-on-surface-extra-weak);
152
+ color: var(--road-on-surface-weak);
153
153
  pointer-events: none;
154
154
  transition: transform 200ms cubic-bezier(0, 0, 0.2, 1) 0ms;
155
155
  transform-origin: 0 0;
@@ -216,6 +216,12 @@
216
216
  color: var(--road-on-danger-surface);
217
217
  }
218
218
 
219
+ .invalid-feedback road-icon{
220
+ color: var(--road-danger-icon);
221
+ margin-right: var(--road-spacing-02);
222
+ }
223
+
224
+
219
225
  .form-control.is-invalid,
220
226
  .was-validated .form-control:invalid {
221
227
  border-color: var(--road-danger-outline);
@@ -223,7 +229,7 @@
223
229
 
224
230
  .form-control.is-invalid ~ .invalid-feedback,
225
231
  .was-validated .form-control:invalid ~ .invalid-feedback {
226
- display: block;
232
+ display: flex;
227
233
  }
228
234
 
229
235
  /* HELPER
@@ -28,10 +28,24 @@ const debounce = (func, wait = 0) => {
28
28
  */
29
29
  export class Input {
30
30
  constructor() {
31
+ // private onInput = (ev: Event) => {
32
+ // const input = ev.target as HTMLInputElement | null;
33
+ // if (input) {
34
+ // this.value = input.value || "";
35
+ // }
36
+ // this.roadinput.emit(ev as KeyboardEvent);
37
+ // this.roadInput.emit(ev as KeyboardEvent);
38
+ // };
31
39
  this.onInput = (ev) => {
32
40
  const input = ev.target;
33
41
  if (input) {
34
- this.value = input.value || "";
42
+ let value = input.value || "";
43
+ // Si le type est "tel", on vérifie si la valeur contient uniquement des chiffres ou le symbole "+"
44
+ if (this.type === 'tel' && !/^\+?[0-9]*$/.test(value)) {
45
+ // Si la valeur n'est pas conforme, on ne la met pas à jour et on arrête la fonction
46
+ return;
47
+ }
48
+ this.value = value;
35
49
  }
36
50
  this.roadinput.emit(ev);
37
51
  this.roadInput.emit(ev);
@@ -117,7 +131,7 @@ export class Input {
117
131
  const hasValueClass = this.value !== '' ? 'has-value' : '';
118
132
  const lessLabelClass = this.label !== '' ? '' : 'less-label';
119
133
  const isInvalidClass = this.error !== undefined && this.error !== '' ? 'is-invalid' : '';
120
- return (h(Host, { "aria-disabled": this.disabled ? 'true' : null, class: this.sizes && `input-${this.sizes}`, value: value }, h("input", { class: `form-control ${hasValueClass} ${isInvalidClass} ${lessLabelClass}`, id: this.inputId, "aria-disabled": this.disabled ? 'true' : null, "aria-labelledby": labelId, disabled: this.disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, enterKeyHint: this.enterkeyhint, autoFocus: this.autofocus, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, name: this.name, pattern: this.pattern, placeholder: this.placeholder, readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, size: this.size, type: this.type, value: value, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, onKeyUp: (event) => this.enforceMinMax(event.target), "data-cy": 'road-input' }), h("label", { class: "form-label", id: labelId, htmlFor: this.inputId }, this.label), this.error && this.error !== '' && h("p", { class: "invalid-feedback" }, this.error), this.helper && this.helper !== '' && h("p", { class: "helper" }, this.helper), this.type && this.type == 'password' &&
134
+ return (h(Host, { "aria-disabled": this.disabled ? 'true' : null, class: this.sizes && `input-${this.sizes}`, value: value }, h("input", { class: `form-control ${hasValueClass} ${isInvalidClass} ${lessLabelClass}`, id: this.inputId, "aria-disabled": this.disabled ? 'true' : null, "aria-labelledby": labelId, disabled: this.disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, enterKeyHint: this.enterkeyhint, autoFocus: this.autofocus, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, name: this.name, pattern: this.pattern, placeholder: this.placeholder, readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, size: this.size, type: this.type, value: value, onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, onKeyUp: (event) => this.enforceMinMax(event.target), "data-cy": 'road-input' }), h("label", { class: "form-label", id: labelId, htmlFor: this.inputId }, this.label), this.error && this.error !== '' && h("p", { class: "invalid-feedback" }, h("road-icon", { slot: "start", name: "alert-error-solid", "aria-hidden": "true", size: "sm" }), this.error), this.helper && this.helper !== '' && h("p", { class: "helper" }, this.helper), this.type && this.type == 'password' &&
121
135
  h("slot", { name: "checklistPassword" })));
122
136
  }
123
137
  static get is() { return "road-input"; }