@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
@@ -27,10 +27,18 @@
27
27
 
28
28
  .dropdown summary {
29
29
  display: block;
30
+ width: 3.5rem;
30
31
  cursor: pointer;
32
+ border-radius: 3rem;
31
33
  outline: none;
32
34
  }
33
35
 
36
+ .dropdown summary:focus,
37
+ .dropdown summary.focus-visible,
38
+ .dropdown summary:focus-within{
39
+ box-shadow: 0 0 0 4px var(--road-primary-80);
40
+ }
41
+
34
42
  .dropdown summary::-webkit-details-marker { /* remove native arrow */
35
43
  display: none;
36
44
  }
@@ -19,6 +19,14 @@ export class Dropdown {
19
19
  };
20
20
  this.isOpen = false;
21
21
  }
22
+ handleDocumentClick(ev) {
23
+ // Check if the clicked element is the dropdown button
24
+ if (ev.target.closest('road-profil-dropdown') === this.el) {
25
+ return; // Do nothing if clicked element is the dropdown button
26
+ }
27
+ // Close dropdown if click is outside the dropdown
28
+ this.isOpen = false;
29
+ }
22
30
  render() {
23
31
  return (h("details", { class: "dropdown", open: this.isOpen }, h("summary", { "aria-expanded": `${this.isOpen}`, tabindex: "0", role: "button", onClick: this.onClick }, h("div", { class: `d-flex` }, h("div", null, h("road-avatar", null, h("slot", { name: "avatar" }))))), h("div", { class: `dropdown-menu` }, h("div", { class: "profil-item" }, h("road-avatar", { size: "sm" }, h("slot", { name: "avatarItem" })), h("div", { class: "profil-item-info" }, h("span", { class: "profil-item-info-name" }, h("slot", { name: "name" })), h("road-label", null, h("slot", { name: "email" })))), h("slot", { name: "list" }))));
24
32
  }
@@ -56,5 +64,15 @@ export class Dropdown {
56
64
  }
57
65
  };
58
66
  }
67
+ static get elementRef() { return "el"; }
68
+ static get listeners() {
69
+ return [{
70
+ "name": "click",
71
+ "method": "handleDocumentClick",
72
+ "target": "document",
73
+ "capture": false,
74
+ "passive": false
75
+ }];
76
+ }
59
77
  }
60
78
  //# sourceMappingURL=profil-dropdown.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"profil-dropdown.js","sourceRoot":"","sources":["../../../src/components/profil-dropdown/profil-dropdown.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAEnD;;;;;;;;;GASG;AAOH,MAAM,OAAO,QAAQ;;IAOnB;;OAEG;IACK,YAAO,GAAG,GAAG,EAAE;MACrB,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;IAC7B,CAAC,CAAC;kBAP0C,KAAK;;EASjD,MAAM;IAEJ,OAAO,CACL,eAAS,KAAK,EAAC,UAAU,EAAC,IAAI,EAAE,IAAI,CAAC,MAAM;MACzC,gCAAwB,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAC,GAAG,EAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAE,IAAI,CAAC,OAAO;QACxF,WAAK,KAAK,EAAE,QAAQ;UAClB;YACE;cACE,YAAM,IAAI,EAAC,QAAQ,GAAE,CACT,CACV,CACF,CACE;MACV,WAAK,KAAK,EAAE,eAAe;QACzB,WAAK,KAAK,EAAC,aAAa;UACtB,mBAAa,IAAI,EAAC,IAAI;YACpB,YAAM,IAAI,EAAC,YAAY,GAAE,CACb;UACd,WAAK,KAAK,EAAC,kBAAkB;YAC3B,YAAM,KAAK,EAAC,uBAAuB;cACjC,YAAM,IAAI,EAAC,MAAM,GAAE,CACd;YACP;cACE,YAAM,IAAI,EAAC,OAAO,GAAE,CACT,CACT,CACF;QACN,YAAM,IAAI,EAAC,MAAM,GAAE,CACf,CACE,CACX,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAEF","sourcesContent":["import { Component, h, Prop } from '@stencil/core';\n\n/**\n * @slot - Element how will open the dropdown when clicked\n * @slot list - List of item values (you can add border with lines=`full` but not on the last item)\n * @slot avatar - Content of the avatar (img or First letter) <road-img> or <road-label>.\n * @slot avatarItem - Content of the avatar item (img or First letter) <road-img> or <road-label>.\n * @slot name - Content First and Last Name.\n * @slot email - Content email.\n\n\n */\n\n@Component({\n tag: 'road-profil-dropdown',\n styleUrl: 'profil-dropdown.css',\n shadow: true,\n})\nexport class Dropdown {\n\n /**\n * Set to `true` to open the dropdown menu and to `false` to close it.\n */\n @Prop({ mutable: true }) isOpen : boolean = false;\n\n /**\n * Toggle the display when clicking element in slot\n */\n private onClick = () => {\n this.isOpen = !this.isOpen;\n };\n\n render() {\n\n return (\n <details class=\"dropdown\" open={this.isOpen}>\n <summary aria-expanded={`${this.isOpen}`} tabindex=\"0\" role=\"button\" onClick={this.onClick}>\n <div class={`d-flex`}>\n <div>\n <road-avatar>\n <slot name=\"avatar\"/>\n </road-avatar>\n </div>\n </div>\n </summary>\n <div class={`dropdown-menu`}>\n <div class=\"profil-item\">\n <road-avatar size=\"sm\">\n <slot name=\"avatarItem\"/>\n </road-avatar>\n <div class=\"profil-item-info\">\n <span class=\"profil-item-info-name\">\n <slot name=\"name\"/>\n </span>\n <road-label>\n <slot name=\"email\"/>\n </road-label>\n </div>\n </div>\n <slot name=\"list\"/>\n </div>\n </details>\n );\n }\n\n}\n"]}
1
+ {"version":3,"file":"profil-dropdown.js","sourceRoot":"","sources":["../../../src/components/profil-dropdown/profil-dropdown.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEpE;;;;;;;;;GASG;AAOH,MAAM,OAAO,QAAQ;;IASnB;;OAEG;IACK,YAAO,GAAG,GAAG,EAAE;MACrB,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;IAC7B,CAAC,CAAC;kBAP0C,KAAK;;EAUjD,mBAAmB,CAAC,EAAc;IAChC,sDAAsD;IACtD,IAAK,EAAE,CAAC,MAAsB,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,IAAI,CAAC,EAAE,EAAE;MAC1E,OAAO,CAAC,uDAAuD;KAChE;IACD,kDAAkD;IAClD,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;EACtB,CAAC;EAED,MAAM;IAEJ,OAAO,CACL,eAAS,KAAK,EAAC,UAAU,EAAC,IAAI,EAAE,IAAI,CAAC,MAAM;MACzC,gCAAwB,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAC,GAAG,EAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAE,IAAI,CAAC,OAAO;QACxF,WAAK,KAAK,EAAE,QAAQ;UAClB;YACE;cACE,YAAM,IAAI,EAAC,QAAQ,GAAE,CACT,CACV,CACF,CACE;MACV,WAAK,KAAK,EAAE,eAAe;QACzB,WAAK,KAAK,EAAC,aAAa;UACtB,mBAAa,IAAI,EAAC,IAAI;YACpB,YAAM,IAAI,EAAC,YAAY,GAAE,CACb;UACd,WAAK,KAAK,EAAC,kBAAkB;YAC3B,YAAM,KAAK,EAAC,uBAAuB;cACjC,YAAM,IAAI,EAAC,MAAM,GAAE,CACd;YACP;cACE,YAAM,IAAI,EAAC,OAAO,GAAE,CACT,CACT,CACF;QACN,YAAM,IAAI,EAAC,MAAM,GAAE,CACf,CACE,CACX,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAEF","sourcesContent":["import { Component, h, Prop, Element, Listen } from '@stencil/core';\n\n/**\n * @slot - Element how will open the dropdown when clicked\n * @slot list - List of item values (you can add border with lines=`full` but not on the last item)\n * @slot avatar - Content of the avatar (img or First letter) <road-img> or <road-label>.\n * @slot avatarItem - Content of the avatar item (img or First letter) <road-img> or <road-label>.\n * @slot name - Content First and Last Name.\n * @slot email - Content email.\n\n\n */\n\n@Component({\n tag: 'road-profil-dropdown',\n styleUrl: 'profil-dropdown.css',\n shadow: true,\n})\nexport class Dropdown {\n\n @Element() el!: HTMLRoadProfilDropdownElement;\n\n /**\n * Set to `true` to open the dropdown menu and to `false` to close it.\n */\n @Prop({ mutable: true }) isOpen : boolean = false;\n\n /**\n * Toggle the display when clicking element in slot\n */\n private onClick = () => {\n this.isOpen = !this.isOpen;\n };\n\n @Listen('click', { target: 'document' })\n handleDocumentClick(ev: MouseEvent) {\n // Check if the clicked element is the dropdown button\n if ((ev.target as HTMLElement).closest('road-profil-dropdown') === this.el) {\n return; // Do nothing if clicked element is the dropdown button\n }\n // Close dropdown if click is outside the dropdown\n this.isOpen = false;\n }\n\n render() {\n\n return (\n <details class=\"dropdown\" open={this.isOpen}>\n <summary aria-expanded={`${this.isOpen}`} tabindex=\"0\" role=\"button\" onClick={this.onClick}>\n <div class={`d-flex`}>\n <div>\n <road-avatar>\n <slot name=\"avatar\"/>\n </road-avatar>\n </div>\n </div>\n </summary>\n <div class={`dropdown-menu`}>\n <div class=\"profil-item\">\n <road-avatar size=\"sm\">\n <slot name=\"avatarItem\"/>\n </road-avatar>\n <div class=\"profil-item-info\">\n <span class=\"profil-item-info-name\">\n <slot name=\"name\"/>\n </span>\n <road-label>\n <slot name=\"email\"/>\n </road-label>\n </div>\n </div>\n <slot name=\"list\"/>\n </div>\n </details>\n );\n }\n\n}\n"]}
@@ -55,14 +55,14 @@ export default {
55
55
  name: `<road-label slot="name">First and Last name</road-label>`,
56
56
  email: `<road-label slot="email">Email</road-label>`,
57
57
  list: `<road-list slot="list">
58
- <road-item button style="--border-radius: 0; --min-height: 2.5rem; --inner-padding: 0;" class="edit-profil">
59
- <road-icon slot="start" name="edit-outline" size="md"></road-icon>
58
+ <road-item button style="--border-radius: 0; --min-height: 2.5rem; --inner-padding: 0;" class="edit-profil border-0">
59
+ <road-icon slot="start" name="edit-outline" size="md" aria-hidden="true"></road-icon>
60
60
  <road-label style="font-size: 1rem">
61
61
  Edit profile
62
62
  </road-label>
63
63
  </road-item>
64
- <road-item button style="--border-radius: 0; --min-height: 2.5rem; --inner-padding: 0;">
65
- <road-icon slot="start" name="log-out-outline" size="md"></road-icon>
64
+ <road-item button style="--border-radius: 0; --min-height: 2.5rem; --inner-padding: 0;" class="border-0">
65
+ <road-icon slot="start" name="log-out-outline" size="md" aria-hidden="true"></road-icon>
66
66
  <road-label style="font-size: 1rem">
67
67
  Log out
68
68
  </road-label>
@@ -15,7 +15,7 @@ export class ProgressBar {
15
15
  const fullwidth = this.fullwidth ? 'progress-element-info-full-width' : 'progress-element-info';
16
16
  const light = this.light ? 'progress progress-light' : 'progress';
17
17
  const animation = this.animation ? 'animation' : '';
18
- return (h(Host, { class: "progress-element" }, h("div", { class: `${light} progress-${this.color} ${animation}` }, h("div", { class: "progress-bar", role: "progressbar", style: { width: `${this.value}%` }, "aria-valuenow": this.value, "aria-valuemin": "0", "aria-valuemax": "100" })), h("div", { class: `${fullwidth}` }, h("span", { class: "progress-element-label" }, this.label), this.showstep && h("span", { class: "progress-element-step" }, valueRound, "/", this.numbersteps))));
18
+ return (h(Host, { class: "progress-element" }, h("div", { class: `${light} progress-${this.color} ${animation}` }, h("div", { class: "progress-bar", role: "progressbar", style: { width: `${this.value}%` }, "aria-valuenow": this.value, "aria-valuemin": "0", "aria-valuemax": "100", "aria-label": "progress bar" })), h("div", { class: `${fullwidth}` }, h("span", { class: "progress-element-label" }, this.label), this.showstep && h("span", { class: "progress-element-step" }, valueRound, "/", this.numbersteps))));
19
19
  }
20
20
  static get is() { return "road-progress"; }
21
21
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"progress.js","sourceRoot":"","sources":["../../../src/components/progress/progress.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAOzD,MAAM,OAAO,WAAW;;iBAME,CAAC;uBAKsB,GAAG;iBAKvB,EAAE;oBAKD,KAAK;qBAKF,KAAK;iBAKX,KAAK;qBAKA,KAAK;iBAK6D,SAAS;;EAEzG,MAAM;IAEJ,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAC,CAAC,GAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,uBAAuB,CAAC;IAChG,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,UAAU,CAAC;IAClE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAEpD,OAAO,CACL,EAAC,IAAI,IAAC,KAAK,EAAC,kBAAkB;MAC5B,WAAK,KAAK,EAAE,GAAG,KAAK,aAAa,IAAI,CAAC,KAAK,IAAI,SAAS,EAAE;QACxD,WAAK,KAAK,EAAC,cAAc,EAAC,IAAI,EAAC,aAAa,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,GAAG,EAAE,mBAAiB,IAAI,CAAC,KAAK,mBAAgB,GAAG,mBAAe,KAAK,GAAO,CACpJ;MACN,WAAK,KAAK,EAAE,GAAG,SAAS,EAAE;QACxB,YAAM,KAAK,EAAC,wBAAwB,IAAE,IAAI,CAAC,KAAK,CAAQ;QACvD,IAAI,CAAC,QAAQ,IAAI,YAAM,KAAK,EAAC,uBAAuB;UAAE,UAAU;;UAAG,IAAI,CAAC,WAAW,CAAQ,CACxF,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAEF","sourcesContent":["import { Component, Host, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'road-progress',\n styleUrl: 'progress.css',\n shadow: true,\n})\nexport class ProgressBar {\n\n /**\n * The value determines how much of the active bar should display.\n * The value should be between [0, 100].\n */\n @Prop() value: number = 0;\n\n /**\n * The number of steps should be 4 or 5.\n */\n @Prop() numbersteps?: '4' | '5' | 'default' = '4';\n\n /**\n * Label display in progress bar\n */\n @Prop() label: string = '';\n\n /**\n * Show step\n */\n @Prop() showstep: boolean = false;\n\n /**\n * Animation progress bar\n */\n @Prop() animation: boolean = false;\n\n /**\n * Light progress background\n */\n @Prop() light: boolean = false;\n\n /**\n * Add padding if the progress is full width\n */\n @Prop() fullwidth: boolean = false;\n\n /**\n * The color to use from your application's color palette.\n */\n @Prop() color: 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'danger' | 'rating' = 'primary';\n\n render() {\n\n const valueRound = Math.round(this.value/5/5);\n const fullwidth = this.fullwidth ? 'progress-element-info-full-width' : 'progress-element-info';\n const light = this.light ? 'progress progress-light' : 'progress';\n const animation = this.animation ? 'animation' : '';\n\n return (\n <Host class=\"progress-element\">\n <div class={`${light} progress-${this.color} ${animation}`}>\n <div class=\"progress-bar\" role=\"progressbar\" style={{ width: `${this.value}%` }} aria-valuenow={this.value} aria-valuemin=\"0\" aria-valuemax=\"100\"></div>\n </div>\n <div class={`${fullwidth}`}>\n <span class=\"progress-element-label\">{this.label}</span>\n {this.showstep && <span class=\"progress-element-step\">{valueRound}/{this.numbersteps}</span>}\n </div>\n </Host>\n );\n }\n\n}\n"]}
1
+ {"version":3,"file":"progress.js","sourceRoot":"","sources":["../../../src/components/progress/progress.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAOzD,MAAM,OAAO,WAAW;;iBAME,CAAC;uBAKsB,GAAG;iBAKvB,EAAE;oBAKD,KAAK;qBAKF,KAAK;iBAKX,KAAK;qBAKA,KAAK;iBAK6D,SAAS;;EAEzG,MAAM;IAEJ,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAC,CAAC,GAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,uBAAuB,CAAC;IAChG,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,UAAU,CAAC;IAClE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAEpD,OAAO,CACL,EAAC,IAAI,IAAC,KAAK,EAAC,kBAAkB;MAC5B,WAAK,KAAK,EAAE,GAAG,KAAK,aAAa,IAAI,CAAC,KAAK,IAAI,SAAS,EAAE;QACxD,WAAK,KAAK,EAAC,cAAc,EAAC,IAAI,EAAC,aAAa,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,GAAG,EAAE,mBAAiB,IAAI,CAAC,KAAK,mBAAgB,GAAG,mBAAe,KAAK,gBAAY,cAAc,GAAO,CAC9K;MACN,WAAK,KAAK,EAAE,GAAG,SAAS,EAAE;QACxB,YAAM,KAAK,EAAC,wBAAwB,IAAE,IAAI,CAAC,KAAK,CAAQ;QACvD,IAAI,CAAC,QAAQ,IAAI,YAAM,KAAK,EAAC,uBAAuB;UAAE,UAAU;;UAAG,IAAI,CAAC,WAAW,CAAQ,CACxF,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAEF","sourcesContent":["import { Component, Host, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'road-progress',\n styleUrl: 'progress.css',\n shadow: true,\n})\nexport class ProgressBar {\n\n /**\n * The value determines how much of the active bar should display.\n * The value should be between [0, 100].\n */\n @Prop() value: number = 0;\n\n /**\n * The number of steps should be 4 or 5.\n */\n @Prop() numbersteps?: '4' | '5' | 'default' = '4';\n\n /**\n * Label display in progress bar\n */\n @Prop() label: string = '';\n\n /**\n * Show step\n */\n @Prop() showstep: boolean = false;\n\n /**\n * Animation progress bar\n */\n @Prop() animation: boolean = false;\n\n /**\n * Light progress background\n */\n @Prop() light: boolean = false;\n\n /**\n * Add padding if the progress is full width\n */\n @Prop() fullwidth: boolean = false;\n\n /**\n * The color to use from your application's color palette.\n */\n @Prop() color: 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'danger' | 'rating' = 'primary';\n\n render() {\n\n const valueRound = Math.round(this.value/5/5);\n const fullwidth = this.fullwidth ? 'progress-element-info-full-width' : 'progress-element-info';\n const light = this.light ? 'progress progress-light' : 'progress';\n const animation = this.animation ? 'animation' : '';\n\n return (\n <Host class=\"progress-element\">\n <div class={`${light} progress-${this.color} ${animation}`}>\n <div class=\"progress-bar\" role=\"progressbar\" style={{ width: `${this.value}%` }} aria-valuenow={this.value} aria-valuemin=\"0\" aria-valuemax=\"100\" aria-label=\"progress bar\"></div>\n </div>\n <div class={`${fullwidth}`}>\n <span class=\"progress-element-label\">{this.label}</span>\n {this.showstep && <span class=\"progress-element-step\">{valueRound}/{this.numbersteps}</span>}\n </div>\n </Host>\n );\n }\n\n}\n"]}
@@ -13,6 +13,11 @@
13
13
  display: block;
14
14
  }
15
15
 
16
+ :host ul li{
17
+ list-style: none;
18
+ }
19
+
20
+
16
21
  /* VERTICAL STEPPER
17
22
  -------------------- */
18
23
 
@@ -12,7 +12,7 @@ import { Host, h } from "@stencil/core";
12
12
  */
13
13
  export class ProgressIndicatorVertical {
14
14
  render() {
15
- return (h(Host, null, h("nav", null, h("ul", null, h("slot", null)))));
15
+ return (h(Host, null, h("nav", null, h("ul", null, h("li", null, h("slot", null))))));
16
16
  }
17
17
  static get is() { return "road-progress-indicator-vertical"; }
18
18
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"progress-indicator-vertical.js","sourceRoot":"","sources":["../../../src/components/progress-indicator-vertical/progress-indicator-vertical.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAEnD;;;;;;;;;;GAUG;AAOH,MAAM,OAAO,yBAAyB;EAEjC,MAAM;IAEJ,OAAO,CACL,EAAC,IAAI;MACH;QACE;UACE,eAAO,CACJ,CACD,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;CAEL","sourcesContent":["import { Component, Host, h } from '@stencil/core';\n\n/**\n * @slot - content of the stepper item, it should be road-vertical-stepper-item elements.\n * \n * if the state of the step is completed add the class `completed` on the road-vertical-stepper-item\n * \n * if the state of the step is in-progress add the class `in-progress` on the road-vertical-stepper-item\n * \n * if the state of the step is current add the class `current` on the road-vertical-stepper-item\n * \n * `<road-icon name=\"check-small\" class=\"d-block\" style=\"color: currentColor;\"></road-icon>`\n */\n\n@Component({\n tag: 'road-progress-indicator-vertical',\n styleUrl: 'progress-indicator-vertical.css',\n shadow: true,\n})\nexport class ProgressIndicatorVertical {\n\n render() {\n\n return (\n <Host>\n <nav>\n <ul>\n <slot/>\n </ul>\n </nav>\n </Host>\n );\n }\n\n}\n"]}
1
+ {"version":3,"file":"progress-indicator-vertical.js","sourceRoot":"","sources":["../../../src/components/progress-indicator-vertical/progress-indicator-vertical.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAEnD;;;;;;;;;;GAUG;AAOH,MAAM,OAAO,yBAAyB;EAEjC,MAAM;IAEJ,OAAO,CACL,EAAC,IAAI;MACH;QACE;UACC;YACE,eAAO,CACH,CACF,CACD,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;CAEL","sourcesContent":["import { Component, Host, h } from '@stencil/core';\n\n/**\n * @slot - content of the stepper item, it should be road-vertical-stepper-item elements.\n * \n * if the state of the step is completed add the class `completed` on the road-vertical-stepper-item\n * \n * if the state of the step is in-progress add the class `in-progress` on the road-vertical-stepper-item\n * \n * if the state of the step is current add the class `current` on the road-vertical-stepper-item\n * \n * `<road-icon name=\"check-small\" class=\"d-block\" style=\"color: currentColor;\"></road-icon>`\n */\n\n@Component({\n tag: 'road-progress-indicator-vertical',\n styleUrl: 'progress-indicator-vertical.css',\n shadow: true,\n})\nexport class ProgressIndicatorVertical {\n\n render() {\n\n return (\n <Host>\n <nav>\n <ul>\n <li>\n <slot/>\n </li>\n </ul>\n </nav>\n </Host>\n );\n }\n\n}\n"]}
@@ -14,10 +14,10 @@ export default {
14
14
  },
15
15
  },
16
16
  args: {
17
- ' ': `<road-progress-indicator-vertical-item class="completed">
17
+ ' ': `<road-progress-indicator-vertical-item class="completed" tabindex="0">
18
18
  <a class="progress-indicator-vertical-link">
19
19
  <span class="progress-indicator-vertical-icon">
20
- <road-icon name="check-small" class="d-block" style="color: currentColor;"></road-icon>
20
+ <road-icon name="check-small" class="d-block" style="color: currentColor;" aria-hidden="true"></road-icon>
21
21
  </span>
22
22
  <span class="progress-indicator-vertical-line"></span>
23
23
  </a>
@@ -28,7 +28,7 @@ export default {
28
28
  <div class="progress-indicator-vertical-description">Description</div>
29
29
  </div>
30
30
  </road-progress-indicator-vertical-item>
31
- <road-progress-indicator-vertical-item class="current">
31
+ <road-progress-indicator-vertical-item class="current" tabindex="0">
32
32
  <a class="progress-indicator-vertical-link">
33
33
  <span class="progress-indicator-vertical-icon">
34
34
  2
@@ -42,7 +42,7 @@ export default {
42
42
  <div class="progress-indicator-vertical-description">Description</div>
43
43
  </div>
44
44
  </road-progress-indicator-vertical-item>
45
- <road-progress-indicator-vertical-item>
45
+ <road-progress-indicator-vertical-item tabindex="0">
46
46
  <a class="progress-indicator-vertical-link">
47
47
  <span class="progress-indicator-vertical-icon">
48
48
  3
@@ -56,7 +56,7 @@ export default {
56
56
  <div class="progress-indicator-vertical-description">Description</div>
57
57
  </div>
58
58
  </road-progress-indicator-vertical-item>
59
- <road-progress-indicator-vertical-item>
59
+ <road-progress-indicator-vertical-item tabindex="0">
60
60
  <a class="progress-indicator-vertical-link">
61
61
  <span class="progress-indicator-vertical-icon">
62
62
  4
@@ -70,7 +70,7 @@ export default {
70
70
  <div class="progress-indicator-vertical-description">Description</div>
71
71
  </div>
72
72
  </road-progress-indicator-vertical-item>
73
- <road-progress-indicator-vertical-item>
73
+ <road-progress-indicator-vertical-item tabindex="0">
74
74
  <a class="progress-indicator-vertical-link">
75
75
  <span class="progress-indicator-vertical-icon">
76
76
  5
@@ -97,10 +97,10 @@ export const Template = (args) => html`
97
97
 
98
98
  export const OneStepCompleted = Template.bind({});
99
99
  OneStepCompleted.args = {
100
- ' ': `<road-progress-indicator-vertical-item class="completed">
100
+ ' ': `<road-progress-indicator-vertical-item class="completed" tabindex="0">
101
101
  <a class="progress-indicator-vertical-link">
102
102
  <span class="progress-indicator-vertical-icon">
103
- <road-icon name="check-small" class="d-block" style="color: currentColor;"></road-icon>
103
+ <road-icon name="check-small" class="d-block" style="color: currentColor;" aria-hidden="true"></road-icon>
104
104
  </span>
105
105
  <span class="progress-indicator-vertical-line"></span>
106
106
  </a>
@@ -111,7 +111,7 @@ OneStepCompleted.args = {
111
111
  <div class="progress-indicator-vertical-description">Description</div>
112
112
  </div>
113
113
  </road-progress-indicator-vertical-item>
114
- <road-progress-indicator-vertical-item class="current">
114
+ <road-progress-indicator-vertical-item class="current" tabindex="0">
115
115
  <a class="progress-indicator-vertical-link">
116
116
  <span class="progress-indicator-vertical-icon">
117
117
  2
@@ -125,7 +125,7 @@ OneStepCompleted.args = {
125
125
  <div class="progress-indicator-vertical-description">Description</div>
126
126
  </div>
127
127
  </road-progress-indicator-vertical-item>
128
- <road-progress-indicator-vertical-item>
128
+ <road-progress-indicator-vertical-item tabindex="0">
129
129
  <a class="progress-indicator-vertical-link">
130
130
  <span class="progress-indicator-vertical-icon">
131
131
  3
@@ -139,7 +139,7 @@ OneStepCompleted.args = {
139
139
  <div class="progress-indicator-vertical-description">Description</div>
140
140
  </div>
141
141
  </road-progress-indicator-vertical-item>
142
- <road-progress-indicator-vertical-item>
142
+ <road-progress-indicator-vertical-item tabindex="0">
143
143
  <a class="progress-indicator-vertical-link">
144
144
  <span class="progress-indicator-vertical-icon">
145
145
  4
@@ -153,7 +153,7 @@ OneStepCompleted.args = {
153
153
  <div class="progress-indicator-vertical-description">Description</div>
154
154
  </div>
155
155
  </road-progress-indicator-vertical-item>
156
- <road-progress-indicator-vertical-item>
156
+ <road-progress-indicator-vertical-item tabindex="0">
157
157
  <a class="progress-indicator-vertical-link">
158
158
  <span class="progress-indicator-vertical-icon">
159
159
  5
@@ -171,10 +171,10 @@ OneStepCompleted.args = {
171
171
 
172
172
  export const SubSteps = Template.bind({});
173
173
  SubSteps.args = {
174
- ' ': `<road-progress-indicator-vertical-item class="completed">
174
+ ' ': `<road-progress-indicator-vertical-item class="completed" tabindex="0">
175
175
  <a class="progress-indicator-vertical-link">
176
176
  <span class="progress-indicator-vertical-icon">
177
- <road-icon name="check-small" class="d-block" style="color: currentColor;"></road-icon>
177
+ <road-icon name="check-small" class="d-block" style="color: currentColor;" aria-hidden="true"></road-icon>
178
178
  </span>
179
179
  <span class="progress-indicator-vertical-line"></span>
180
180
  </a>
@@ -185,10 +185,10 @@ SubSteps.args = {
185
185
  <div class="progress-indicator-vertical-description">Description</div>
186
186
  </div>
187
187
  </road-progress-indicator-vertical-item>
188
- <road-progress-indicator-vertical-item class="completed">
188
+ <road-progress-indicator-vertical-item class="completed" tabindex="0">
189
189
  <a class="progress-indicator-vertical-link">
190
190
  <span class="progress-indicator-vertical-icon">
191
- <road-icon name="check-small" class="d-block" style="color: currentColor;"></road-icon>
191
+ <road-icon name="check-small" class="d-block" style="color: currentColor;" aria-hidden="true"></road-icon>
192
192
  </span>
193
193
  <span class="progress-indicator-vertical-line"></span>
194
194
  </a>
@@ -199,7 +199,7 @@ SubSteps.args = {
199
199
  <div class="progress-indicator-vertical-description">Description</div>
200
200
  </div>
201
201
  </road-progress-indicator-vertical-item>
202
- <road-progress-indicator-vertical-item class="completed">
202
+ <road-progress-indicator-vertical-item class="completed" tabindex="0">
203
203
  <a class="progress-indicator-vertical-substep-link">
204
204
  <span class="progress-indicator-vertical-substep-beforeline"></span>
205
205
  <span class="progress-indicator-vertical-substep-icon"></span>
@@ -212,7 +212,7 @@ SubSteps.args = {
212
212
  <div class="progress-indicator-vertical-description">Description</div>
213
213
  </div>
214
214
  </road-progress-indicator-vertical-item>
215
- <road-progress-indicator-vertical-item class="current">
215
+ <road-progress-indicator-vertical-item class="current" tabindex="0">
216
216
  <a class="progress-indicator-vertical-substep-link">
217
217
  <span class="progress-indicator-vertical-substep-beforeline"></span>
218
218
  <span class="progress-indicator-vertical-substep-icon"></span>
@@ -225,7 +225,7 @@ SubSteps.args = {
225
225
  <div class="progress-indicator-vertical-description">Description</div>
226
226
  </div>
227
227
  </road-progress-indicator-vertical-item>
228
- <road-progress-indicator-vertical-item>
228
+ <road-progress-indicator-vertical-item tabindex="0">
229
229
  <a class="progress-indicator-vertical-link">
230
230
  <span class="progress-indicator-vertical-icon">
231
231
  3
@@ -239,7 +239,7 @@ SubSteps.args = {
239
239
  <div class="progress-indicator-vertical-description">Description</div>
240
240
  </div>
241
241
  </road-progress-indicator-vertical-item>
242
- <road-progress-indicator-vertical-item>
242
+ <road-progress-indicator-vertical-item tabindex="0">
243
243
  <a class="progress-indicator-vertical-link">
244
244
  <span class="progress-indicator-vertical-icon">
245
245
  4
@@ -17,6 +17,10 @@
17
17
  padding-left: 0;
18
18
  }
19
19
 
20
+ :host ul li{
21
+ list-style: none;
22
+ }
23
+
20
24
  /* PROGRESS TRACKER
21
25
  -------------------- */
22
26
 
@@ -9,7 +9,7 @@ import { Host, h } from "@stencil/core";
9
9
  */
10
10
  export class ProgressTracker {
11
11
  render() {
12
- return (h(Host, null, h("nav", null, h("ul", null, h("slot", null)))));
12
+ return (h(Host, null, h("nav", null, h("ul", null, h("li", null, h("slot", null))))));
13
13
  }
14
14
  static get is() { return "road-progress-tracker"; }
15
15
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"progress-tracker.js","sourceRoot":"","sources":["../../../src/components/progress-tracker/progress-tracker.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAEnD;;;;;;;GAOG;AAOH,MAAM,OAAO,eAAe;EAEvB,MAAM;IAEJ,OAAO,CACL,EAAC,IAAI;MACH;QACE;UACE,eAAO,CACJ,CACD,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;CAEL","sourcesContent":["import { Component, Host, h } from '@stencil/core';\n\n/**\n * @slot - content of the progress stepper tracker item, it should be road-progress-tracker-item elements.\n * \n * if the state of the step is completed add the class `completed` on the road-progress-tracker-item\n * if the state of the step is in progress add the class `in-progress` on the road-progress-tracker-item\n * if the state of the step is current add the class `current` on the road-progress-tracker-item\n\n */\n\n@Component({\n tag: 'road-progress-tracker',\n styleUrl: 'progress-tracker.css',\n shadow: true,\n})\nexport class ProgressTracker {\n\n render() {\n\n return (\n <Host>\n <nav>\n <ul>\n <slot/>\n </ul>\n </nav>\n </Host>\n );\n }\n\n}\n"]}
1
+ {"version":3,"file":"progress-tracker.js","sourceRoot":"","sources":["../../../src/components/progress-tracker/progress-tracker.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAEnD;;;;;;;GAOG;AAOH,MAAM,OAAO,eAAe;EAEvB,MAAM;IAEJ,OAAO,CACL,EAAC,IAAI;MACH;QACE;UACG;YACE,eAAO,CACJ,CACH,CACD,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;CAEL","sourcesContent":["import { Component, Host, h } from '@stencil/core';\n\n/**\n * @slot - content of the progress stepper tracker item, it should be road-progress-tracker-item elements.\n * \n * if the state of the step is completed add the class `completed` on the road-progress-tracker-item\n * if the state of the step is in progress add the class `in-progress` on the road-progress-tracker-item\n * if the state of the step is current add the class `current` on the road-progress-tracker-item\n\n */\n\n@Component({\n tag: 'road-progress-tracker',\n styleUrl: 'progress-tracker.css',\n shadow: true,\n})\nexport class ProgressTracker {\n\n render() {\n\n return (\n <Host>\n <nav>\n <ul>\n <li>\n <slot/>\n </li>\n </ul>\n </nav>\n </Host>\n );\n }\n\n}\n"]}
@@ -53,6 +53,19 @@
53
53
  /* SLIDER
54
54
  -------------------- */
55
55
 
56
+ .form-range-label {
57
+ position: absolute;
58
+ top: 0;
59
+ left: 0;
60
+ width: 1px;
61
+ height: 1px;
62
+ padding: 0;
63
+ margin: -1px;
64
+ overflow: hidden;
65
+ clip: rect(0 0 0 0);
66
+ border: 0;
67
+ }
68
+
56
69
  .form-range-progress {
57
70
  position: relative;
58
71
  z-index: 0;
@@ -135,13 +148,15 @@
135
148
  */
136
149
 
137
150
  :host(.focus-visible) .form-range-input::-webkit-slider-thumb,
138
- :host(:active) .form-range-input::-webkit-slider-thumb {
151
+ :host(:active) .form-range-input::-webkit-slider-thumb,
152
+ :host(:focus) .form-range-input::-webkit-slider-thumb {
139
153
  background: var(--road-input-surface-variant);
140
154
  border: 0.5rem solid var(--road-grey-100-new);
141
155
  }
142
156
 
143
157
  :host(.focus-visible) .form-range-input::-moz-range-thumb,
144
- :host(:active) .form-range-input::-moz-range-thumb {
158
+ :host(:active) .form-range-input::-moz-range-thumb,
159
+ :host(:focus) .form-range-input::-moz-range-thumb {
145
160
  background: var(--road-input-surface-variant);
146
161
  border: 0.5rem solid var(--road-grey-100-new);
147
162
  }
@@ -1,4 +1,4 @@
1
- import { h } from "@stencil/core";
1
+ import { h, Host } from "@stencil/core";
2
2
  import { navigationAddLessSolid, navigationAddMoreSolid } from "../../../icons";
3
3
  /**
4
4
  * @slot datalist - list of labels. also put show-labels="true" and max="10" for this exemple
@@ -48,10 +48,34 @@ export class Range {
48
48
  ? this.value.toString()
49
49
  : (this.value || '').toString();
50
50
  }
51
+ handleFocus() {
52
+ this.el.classList.add('focus-visible');
53
+ }
54
+ handleBlur() {
55
+ this.el.classList.remove('focus-visible');
56
+ }
57
+ componentDidLoad() {
58
+ // Cacher le label pour accessibilité
59
+ const label = this.el.querySelector('.form-label');
60
+ const input = this.el.querySelector('.form-control.sc-road-input');
61
+ if (label) {
62
+ label.style.clip = 'rect(0 0 0 0)';
63
+ label.style.border = '0';
64
+ label.style.height = '1px';
65
+ label.style.left = '0';
66
+ label.style.margin = '-1px';
67
+ label.style.overflow = 'hidden';
68
+ label.style.padding = '0';
69
+ label.style.position = 'absolute';
70
+ label.style.top = '0';
71
+ label.style.width = '1px';
72
+ input.style.padding = '0 1rem 0';
73
+ }
74
+ }
51
75
  render() {
52
76
  const value = this.getValue();
53
77
  const datalist = this.showLabels !== undefined ? `tickmarks` : '';
54
- return (h("div", { class: "form-group d-flex align-items-end" }, this.showTick && h("road-icon", { icon: navigationAddLessSolid, class: "mr-8", size: 'sm' }), h("div", { class: "form-range", style: { '--min:': this.min, '--max': this.max, '--value': value } }, this.showValue && h("output", null), this.showLabels && h("slot", { name: "datalist" }), h("input", { type: "range", class: "form-range-input", id: this.rangeId, min: this.min, max: this.max, value: value, onInput: this.onInput, list: datalist }), h("div", { class: "form-range-progress" })), this.showTick && h("road-icon", { icon: navigationAddMoreSolid, class: "ml-8", size: 'sm' })));
78
+ return (h(Host, { tabindex: "0" }, h("div", { class: "form-group d-flex align-items-end" }, this.showTick && h("road-icon", { icon: navigationAddLessSolid, class: "mr-8", size: 'sm' }), h("div", { class: "form-range", style: { '--min:': this.min, '--max': this.max, '--value': value } }, this.showValue && h("output", null), this.showLabels && h("slot", { name: "datalist" }), h("input", { type: "range", class: "form-range-input", id: this.rangeId, min: this.min, max: this.max, value: value, onInput: this.onInput, list: datalist, "aria-label": "Valeur", tabindex: "0" }), h("label", { class: "form-range-label" }, "Valeur"), h("div", { class: "form-range-progress" })), this.showTick && h("road-icon", { icon: navigationAddMoreSolid, class: "ml-8", size: 'sm' }))));
55
79
  }
56
80
  static get is() { return "road-range"; }
57
81
  static get encapsulation() { return "scoped"; }
@@ -253,6 +277,21 @@ export class Range {
253
277
  "methodName": "valueChanged"
254
278
  }];
255
279
  }
280
+ static get listeners() {
281
+ return [{
282
+ "name": "focus",
283
+ "method": "handleFocus",
284
+ "target": undefined,
285
+ "capture": true,
286
+ "passive": false
287
+ }, {
288
+ "name": "blur",
289
+ "method": "handleBlur",
290
+ "target": undefined,
291
+ "capture": true,
292
+ "passive": false
293
+ }];
294
+ }
256
295
  }
257
296
  let rangeIds = 0;
258
297
  //# sourceMappingURL=range.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"range.js","sourceRoot":"","sources":["../../../src/components/range/range.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Element, Prop, Event, EventEmitter, Watch } from '@stencil/core';\nimport { navigationAddLessSolid, navigationAddMoreSolid } from '../../../icons';\n\n/**\n * @slot datalist - list of labels. also put show-labels=\"true\" and max=\"10\" for this exemple\n * `<datalist id=\"tickmarks\" slot=\"datalist\" class=\"tickmarks\">`\n `<option value=\"0\" label=\"0%\"></option>`\n `<option value=\"10\" label=\"10%\"></option>`\n `<option value=\"20\" label=\"20%\"></option>`\n `<option value=\"30\" label=\"30%\"></option>`\n `<option value=\"40\" label=\"40%\"></option>`\n `<option value=\"50\" label=\"50%\"></option>`\n `<option value=\"60\" label=\"60%\"></option>`\n `<option value=\"70\" label=\"70%\"></option>`\n `<option value=\"80\" label=\"80%\"></option>`\n `<option value=\"90\" label=\"90%\"></option>`\n `<option value=\"100\" label=\"100%\"></option>`\n `</datalist>`\n */\n\n@Component({\n tag: 'road-range',\n styleUrl: 'range.css',\n scoped: true,\n})\nexport class Range {\n\n @Element() el!: HTMLRoadRangeElement;\n\n /**\n * The id of range\n */\n @Prop() rangeId: string = `road-range-${rangeIds++}`;\n\n /**\n * The value of the range.\n */\n @Prop({ mutable: true }) value?: string | number | null = '';\n\n /**\n * The minimum value, which must not be greater than its maximum (max attribute) value.\n */\n @Prop() min!: string;\n\n /**\n * The maximum value, which must not be less than its minimum (min attribute) value.\n */\n @Prop() max!: string;\n\n /**\n * Works with the min and max attributes to limit the increments at which a value can be set.\n * Possible values are: `\"any\"` or a positive floating point number.\n */\n @Prop() step?: string;\n\n /**\n * Display the current value of the range\n */\n @Prop() showValue: boolean = false;\n\n /**\n * Display Tick of the range\n */\n @Prop() showTick: boolean = false;\n\n /**\n * Display labels of the range\n */\n @Prop() showLabels: boolean = false;\n\n /**\n * Update the native input element when the value changes\n */\n @Watch('value')\n protected valueChanged() {\n this.roadchange.emit({ value: this.value == null ? this.value : this.value.toString() });\n this.roadChange.emit({ value: this.value == null ? this.value : this.value.toString() });\n }\n\n /**\n * Emitted when the value has changed.\n */\n @Event() roadchange!: EventEmitter<{\n value: string | undefined | null;\n }>;\n /** @internal */\n @Event() roadChange!: EventEmitter<{\n value: string | undefined | null;\n }>;\n\n private getValue(): string {\n return typeof this.value === 'number'\n ? this.value.toString()\n : (this.value || '').toString();\n }\n\n private onInput = (ev: Event) => {\n const input = ev.target as HTMLInputElement | null;\n if (input) {\n this.value = input.value || '';\n }\n if(this.value !== null && this.value !== undefined) {\n this.el.style.setProperty('--value', `${this.value}`);\n }\n };\n\n render() {\n const value = this.getValue();\n const datalist = this.showLabels !== undefined ? `tickmarks` : '';\n\n return (\n <div class=\"form-group d-flex align-items-end\">\n {this.showTick && <road-icon icon={navigationAddLessSolid} class=\"mr-8\" size='sm'></road-icon>}\n <div class=\"form-range\" style={{'--min:': this.min, '--max': this.max, '--value': value}}>\n {this.showValue && <output></output>}\n {this.showLabels && <slot name=\"datalist\"/>}\n <input\n type=\"range\"\n class=\"form-range-input\"\n id={this.rangeId}\n min={this.min}\n max={this.max}\n value={value}\n onInput={this.onInput}\n list={datalist}\n \n />\n <div class=\"form-range-progress\"></div>\n </div>\n {this.showTick && <road-icon icon={navigationAddMoreSolid} class=\"ml-8\" size='sm'></road-icon>}\n </div>\n );\n }\n\n}\n\nlet rangeIds = 0;\n"]}
1
+ {"version":3,"file":"range.js","sourceRoot":"","sources":["../../../src/components/range/range.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Element, Prop, Event, Host, EventEmitter, Watch, Listen } from '@stencil/core';\nimport { navigationAddLessSolid, navigationAddMoreSolid } from '../../../icons';\n\n/**\n * @slot datalist - list of labels. also put show-labels=\"true\" and max=\"10\" for this exemple\n * `<datalist id=\"tickmarks\" slot=\"datalist\" class=\"tickmarks\">`\n `<option value=\"0\" label=\"0%\"></option>`\n `<option value=\"10\" label=\"10%\"></option>`\n `<option value=\"20\" label=\"20%\"></option>`\n `<option value=\"30\" label=\"30%\"></option>`\n `<option value=\"40\" label=\"40%\"></option>`\n `<option value=\"50\" label=\"50%\"></option>`\n `<option value=\"60\" label=\"60%\"></option>`\n `<option value=\"70\" label=\"70%\"></option>`\n `<option value=\"80\" label=\"80%\"></option>`\n `<option value=\"90\" label=\"90%\"></option>`\n `<option value=\"100\" label=\"100%\"></option>`\n `</datalist>`\n */\n\n@Component({\n tag: 'road-range',\n styleUrl: 'range.css',\n scoped: true,\n})\nexport class Range {\n\n @Element() el!: HTMLRoadRangeElement;\n\n /**\n * The id of range\n */\n @Prop() rangeId: string = `road-range-${rangeIds++}`;\n\n /**\n * The value of the range.\n */\n @Prop({ mutable: true }) value?: string | number | null = '';\n\n /**\n * The minimum value, which must not be greater than its maximum (max attribute) value.\n */\n @Prop() min!: string;\n\n /**\n * The maximum value, which must not be less than its minimum (min attribute) value.\n */\n @Prop() max!: string;\n\n /**\n * Works with the min and max attributes to limit the increments at which a value can be set.\n * Possible values are: `\"any\"` or a positive floating point number.\n */\n @Prop() step?: string;\n\n /**\n * Display the current value of the range\n */\n @Prop() showValue: boolean = false;\n\n /**\n * Display Tick of the range\n */\n @Prop() showTick: boolean = false;\n\n /**\n * Display labels of the range\n */\n @Prop() showLabels: boolean = false;\n\n /**\n * Update the native input element when the value changes\n */\n @Watch('value')\n protected valueChanged() {\n this.roadchange.emit({ value: this.value == null ? this.value : this.value.toString() });\n this.roadChange.emit({ value: this.value == null ? this.value : this.value.toString() });\n }\n\n /**\n * Emitted when the value has changed.\n */\n @Event() roadchange!: EventEmitter<{\n value: string | undefined | null;\n }>;\n /** @internal */\n @Event() roadChange!: EventEmitter<{\n value: string | undefined | null;\n }>;\n\n private getValue(): string {\n return typeof this.value === 'number'\n ? this.value.toString()\n : (this.value || '').toString();\n }\n\n private onInput = (ev: Event) => {\n const input = ev.target as HTMLInputElement | null;\n if (input) {\n this.value = input.value || '';\n }\n if(this.value !== null && this.value !== undefined) {\n this.el.style.setProperty('--value', `${this.value}`);\n }\n };\n\n @Listen('focus', { capture: true })\n handleFocus() {\n this.el.classList.add('focus-visible');\n }\n\n @Listen('blur', { capture: true })\n handleBlur() {\n this.el.classList.remove('focus-visible');\n }\n\n componentDidLoad() {\n // Cacher le label pour accessibilité\n\n const label = this.el.querySelector('.form-label') as HTMLElement;\n const input = this.el.querySelector('.form-control.sc-road-input') as HTMLElement;\n if (label) {\n label.style.clip = 'rect(0 0 0 0)';\n label.style.border = '0';\n label.style.height = '1px';\n label.style.left = '0';\n label.style.margin = '-1px';\n label.style.overflow = 'hidden';\n label.style.padding = '0';\n label.style.position = 'absolute';\n label.style.top = '0';\n label.style.width = '1px';\n\n input.style.padding = '0 1rem 0';\n \n }\n}\n\n render() {\n const value = this.getValue();\n const datalist = this.showLabels !== undefined ? `tickmarks` : '';\n\n return (\n <Host tabindex=\"0\">\n <div class=\"form-group d-flex align-items-end\">\n {this.showTick && <road-icon icon={navigationAddLessSolid} class=\"mr-8\" size='sm'></road-icon>}\n <div class=\"form-range\" style={{'--min:': this.min, '--max': this.max, '--value': value}}>\n {this.showValue && <output></output>}\n {this.showLabels && <slot name=\"datalist\"/>}\n <input\n type=\"range\"\n class=\"form-range-input\"\n id={this.rangeId}\n min={this.min}\n max={this.max}\n value={value}\n onInput={this.onInput}\n list={datalist}\n aria-label=\"Valeur\"\n tabindex=\"0\"\n />\n <label class=\"form-range-label\">Valeur</label>\n <div class=\"form-range-progress\"></div>\n </div>\n {this.showTick && <road-icon icon={navigationAddMoreSolid} class=\"ml-8\" size='sm'></road-icon>}\n </div>\n </Host>\n );\n }\n\n}\n\nlet rangeIds = 0;\n"]}
@@ -50,7 +50,7 @@ export class SegmentedButton {
50
50
  return (h(Host, { onClick: this.onClick, onKeyup: this.onKeyUp, role: "tab", tabindex: tabIndex, "aria-selected": selected ? 'true' : null, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
51
51
  'tab-selected': selected,
52
52
  [`${sizeClass}`]: true,
53
- } }, h("button", { type: "button", tabIndex: -1, class: "button-native", part: "native" }, h("slot", null))));
53
+ } }, h("span", { tabIndex: -1, class: "button-native", part: "native", "aria-hidden": "true" }, h("slot", null))));
54
54
  }
55
55
  static get is() { return "road-segmented-button"; }
56
56
  static get encapsulation() { return "shadow"; }
@@ -1 +1 @@
1
- {"version":3,"file":"segmented-button.js","sourceRoot":"","sources":["../../../src/components/segmented-button/segmented-button.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, Host, Listen, Prop, h } from '@stencil/core';\n\n/**\n *\n * @part native - The native HTML anchor element that wraps all child elements.\n */\n\n@Component({\n tag: 'road-segmented-button',\n styleUrl: 'segmented-button.css',\n shadow: true,\n})\nexport class SegmentedButton {\n\n @Element() el!: HTMLRoadSegmentedButtonElement;\n\n /**\n * The Segmented buttons size.\n */\n @Prop() size?: 'sm' | 'md' = 'md';\n\n /**\n * The selected tab component\n */\n @Prop({ mutable: true }) selected = false;\n\n /**\n * A tab id must be provided for each `road-tab`. It's used internally to reference\n */\n @Prop() tab?: string;\n\n /**\n * Emitted when the tab bar is clicked\n * @internal\n */\n @Event() roadsegmentedbuttonclick!: EventEmitter;\n /** @internal */\n @Event() roadSegmentedButtonClick!: EventEmitter;\n\n @Listen('roadSegmentedButtonBarChanged', { target: 'window' })\n @Listen('roadSegmentedButtonbarchanged', { target: 'window' })\n onButtonBarChanged(ev: CustomEvent) {\n const dispatchedFrom = ev.target as HTMLElement;\n const parent = this.el.parentElement as EventTarget;\n\n if ((ev.composedPath && ev.composedPath().includes(parent)) || (dispatchedFrom && dispatchedFrom.contains(this.el))) {\n this.selected = this.tab === ev.detail.tab;\n }\n }\n\n private selectTab(ev: Event | KeyboardEvent) {\n if (this.tab !== undefined) {\n this.roadsegmentedbuttonclick.emit({\n tab: this.tab,\n selected: this.selected,\n });\n this.roadSegmentedButtonClick.emit({\n tab: this.tab,\n selected: this.selected,\n });\n\n ev.preventDefault();\n }\n }\n\n private get tabIndex() {\n const hasTabIndex = this.el.hasAttribute('tabindex');\n\n if (hasTabIndex) {\n return this.el.getAttribute('tabindex');\n }\n\n return 0;\n }\n\n private onKeyUp = (ev: KeyboardEvent) => {\n if (ev.key === 'Enter' || ev.key === ' ') {\n this.selectTab(ev);\n }\n };\n\n private onClick = (ev: Event) => {\n this.selectTab(ev);\n };\n\n render() {\n const { tabIndex, selected, tab } = this;\n\n const sizeClass = this.size !== undefined ? `btn-${this.size}` : '';\n\n\n return (\n <Host\n onClick={this.onClick}\n onKeyup={this.onKeyUp}\n role=\"tab\"\n tabindex={tabIndex}\n aria-selected={selected ? 'true' : null}\n id={tab !== undefined ? `tab-button-${tab}` : null}\n class={{\n 'tab-selected': selected,\n [`${sizeClass}`]: true,\n }}\n >\n <button type=\"button\" tabIndex={-1} class=\"button-native\" part=\"native\">\n <slot/>\n </button>\n </Host>\n );\n }\n}"]}
1
+ {"version":3,"file":"segmented-button.js","sourceRoot":"","sources":["../../../src/components/segmented-button/segmented-button.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, Host, Listen, Prop, h } from '@stencil/core';\n\n/**\n *\n * @part native - The native HTML anchor element that wraps all child elements.\n */\n\n@Component({\n tag: 'road-segmented-button',\n styleUrl: 'segmented-button.css',\n shadow: true,\n})\nexport class SegmentedButton {\n\n @Element() el!: HTMLRoadSegmentedButtonElement;\n\n /**\n * The Segmented buttons size.\n */\n @Prop() size?: 'sm' | 'md' = 'md';\n\n /**\n * The selected tab component\n */\n @Prop({ mutable: true }) selected = false;\n\n /**\n * A tab id must be provided for each `road-tab`. It's used internally to reference\n */\n @Prop() tab?: string;\n\n /**\n * Emitted when the tab bar is clicked\n * @internal\n */\n @Event() roadsegmentedbuttonclick!: EventEmitter;\n /** @internal */\n @Event() roadSegmentedButtonClick!: EventEmitter;\n\n @Listen('roadSegmentedButtonBarChanged', { target: 'window' })\n @Listen('roadSegmentedButtonbarchanged', { target: 'window' })\n onButtonBarChanged(ev: CustomEvent) {\n const dispatchedFrom = ev.target as HTMLElement;\n const parent = this.el.parentElement as EventTarget;\n\n if ((ev.composedPath && ev.composedPath().includes(parent)) || (dispatchedFrom && dispatchedFrom.contains(this.el))) {\n this.selected = this.tab === ev.detail.tab;\n }\n }\n\n private selectTab(ev: Event | KeyboardEvent) {\n if (this.tab !== undefined) {\n this.roadsegmentedbuttonclick.emit({\n tab: this.tab,\n selected: this.selected,\n });\n this.roadSegmentedButtonClick.emit({\n tab: this.tab,\n selected: this.selected,\n });\n\n ev.preventDefault();\n }\n }\n\n private get tabIndex() {\n const hasTabIndex = this.el.hasAttribute('tabindex');\n\n if (hasTabIndex) {\n return this.el.getAttribute('tabindex');\n }\n\n return 0;\n }\n\n private onKeyUp = (ev: KeyboardEvent) => {\n if (ev.key === 'Enter' || ev.key === ' ') {\n this.selectTab(ev);\n }\n };\n\n private onClick = (ev: Event) => {\n this.selectTab(ev);\n };\n\n render() {\n const { tabIndex, selected, tab } = this;\n\n const sizeClass = this.size !== undefined ? `btn-${this.size}` : '';\n\n\n return (\n <Host\n onClick={this.onClick}\n onKeyup={this.onKeyUp}\n role=\"tab\"\n tabindex={tabIndex}\n aria-selected={selected ? 'true' : null}\n id={tab !== undefined ? `tab-button-${tab}` : null}\n class={{\n 'tab-selected': selected,\n [`${sizeClass}`]: true,\n }}\n >\n <span tabIndex={-1} class=\"button-native\" part=\"native\" aria-hidden=\"true\">\n <slot/>\n </span>\n </Host>\n );\n }\n}"]}
@@ -104,7 +104,7 @@
104
104
  display: block;
105
105
  font-size: var(--road-label-medium);
106
106
  line-height: 1.5;
107
- color: var(--road-on-surface-extra-weak);
107
+ color: var(--road-on-surface-weak);
108
108
  pointer-events: none;
109
109
  transition: transform 200ms cubic-bezier(0, 0, 0.2, 1) 0ms;
110
110
  transform-origin: 0 0;
@@ -54,11 +54,16 @@
54
54
  cursor: pointer;
55
55
  }
56
56
 
57
+ .select-filter-item.active {
58
+ outline: 1px solid var(--road-input-outline-variant);
59
+ }
60
+
57
61
  /**
58
62
  * Hover state
59
63
  */
60
64
 
61
65
  .select-filter-item:hover,
66
+ .select-filter-item:focus,
62
67
  .select-filter-item.highlight {
63
68
  color: var(--road-on-primary);
64
69
  background: var(--road-primary);