@roadtrip/components 3.44.0 → 3.45.1

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 (297) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/road-badge_14.cjs.entry.js +36 -15
  3. package/dist/cjs/road-badge_14.cjs.entry.js.map +1 -1
  4. package/dist/cjs/road-carousel.cjs.entry.js +27 -21
  5. package/dist/cjs/road-carousel.cjs.entry.js.map +1 -1
  6. package/dist/cjs/road-dropdown.cjs.entry.js +1 -1
  7. package/dist/cjs/road-duration.cjs.entry.js +1 -1
  8. package/dist/cjs/road-flap.cjs.entry.js +1 -1
  9. package/dist/cjs/road-global-navigation-v2.cjs.entry.js +1 -1
  10. package/dist/cjs/road-global-navigation.cjs.entry.js +1 -1
  11. package/dist/cjs/road-img.cjs.entry.js +1 -1
  12. package/dist/cjs/road-modal.cjs.entry.js +1 -1
  13. package/dist/cjs/road-navbar-item-v2.cjs.entry.js +2 -2
  14. package/dist/cjs/road-navbar-item.cjs.entry.js +2 -2
  15. package/dist/cjs/road-navbar-v2.cjs.entry.js +1 -1
  16. package/dist/cjs/road-navbar.cjs.entry.js +1 -1
  17. package/dist/cjs/road-phone-number-input.cjs.entry.js +2 -2
  18. package/dist/cjs/road-plate-number.cjs.entry.js +2 -2
  19. package/dist/cjs/road-profil-dropdown.cjs.entry.js +1 -1
  20. package/dist/cjs/road-progress-indicator-horizontal.cjs.entry.js +1 -1
  21. package/dist/cjs/road-progress-indicator-vertical-item.cjs.entry.js +1 -1
  22. package/dist/cjs/road-progress-indicator-vertical.cjs.entry.js +1 -1
  23. package/dist/cjs/road-progress-tracker-item.cjs.entry.js +1 -1
  24. package/dist/cjs/road-progress-tracker.cjs.entry.js +1 -1
  25. package/dist/cjs/road-progress.cjs.entry.js +1 -1
  26. package/dist/cjs/road-radio-card.cjs.entry.js +1 -1
  27. package/dist/cjs/road-radio-group.cjs.entry.js +1 -1
  28. package/dist/cjs/road-radio.cjs.entry.js +1 -1
  29. package/dist/cjs/road-range.cjs.entry.js +2 -2
  30. package/dist/cjs/road-rating.cjs.entry.js +1 -1
  31. package/dist/cjs/road-segmented-button-bar.cjs.entry.js +1 -1
  32. package/dist/cjs/road-segmented-button.cjs.entry.js +2 -2
  33. package/dist/cjs/road-segmented-buttons.cjs.entry.js +1 -1
  34. package/dist/cjs/road-select-filter.cjs.entry.js +1 -1
  35. package/dist/cjs/road-select.cjs.entry.js +1 -1
  36. package/dist/cjs/road-skeleton.cjs.entry.js +1 -1
  37. package/dist/cjs/road-spinner.cjs.entry.js +1 -1
  38. package/dist/cjs/road-status-chip.cjs.entry.js +1 -1
  39. package/dist/cjs/road-switch.cjs.entry.js +2 -2
  40. package/dist/cjs/road-tab-bar.cjs.entry.js +2 -2
  41. package/dist/cjs/road-tab-button.cjs.entry.js +2 -2
  42. package/dist/cjs/road-tab.cjs.entry.js +2 -2
  43. package/dist/cjs/road-table.cjs.entry.js +1 -1
  44. package/dist/cjs/road-tabs.cjs.entry.js +1 -1
  45. package/dist/cjs/road-tag.cjs.entry.js +1 -1
  46. package/dist/cjs/road-text.cjs.entry.js +1 -1
  47. package/dist/cjs/road-textarea.cjs.entry.js +1 -1
  48. package/dist/cjs/road-time-range-picker.cjs.entry.js +1 -1
  49. package/dist/cjs/road-toast.cjs.entry.js +1 -1
  50. package/dist/cjs/road-toggle.cjs.entry.js +2 -2
  51. package/dist/cjs/road-toolbar-title-page.cjs.entry.js +1 -1
  52. package/dist/cjs/road-toolbar-title.cjs.entry.js +1 -1
  53. package/dist/cjs/road-toolbar-v2.cjs.entry.js +1 -1
  54. package/dist/cjs/road-tooltip.cjs.entry.js +46 -32
  55. package/dist/cjs/road-tooltip.cjs.entry.js.map +1 -1
  56. package/dist/cjs/roadtrip.cjs.js +1 -1
  57. package/dist/collection/components/carousel/carousel.css +32 -15
  58. package/dist/collection/components/carousel/carousel.js +48 -22
  59. package/dist/collection/components/carousel/carousel.js.map +1 -1
  60. package/dist/collection/components/carousel/carousel.stories.js +135 -76
  61. package/dist/collection/components/drawer/drawer.css +10 -5
  62. package/dist/collection/components/drawer/drawer.js +47 -3
  63. package/dist/collection/components/drawer/drawer.js.map +1 -1
  64. package/dist/collection/components/dropdown/dropdown.js +1 -1
  65. package/dist/collection/components/duration/duration.js +1 -1
  66. package/dist/collection/components/flap/flap.js +1 -1
  67. package/dist/collection/components/global-navigation/global-navigation.js +1 -1
  68. package/dist/collection/components/global-navigation-v2/global-navigation-v2.js +1 -1
  69. package/dist/collection/components/grid/grid.js +1 -1
  70. package/dist/collection/components/img/img.js +1 -1
  71. package/dist/collection/components/input/input.js +2 -2
  72. package/dist/collection/components/input-group/input-group.js +1 -1
  73. package/dist/collection/components/item/item.js +3 -3
  74. package/dist/collection/components/label/label.js +1 -1
  75. package/dist/collection/components/list/list.js +2 -2
  76. package/dist/collection/components/modal/modal.js +1 -1
  77. package/dist/collection/components/navbar/navbar.js +1 -1
  78. package/dist/collection/components/navbar-item/navbar-item.js +2 -2
  79. package/dist/collection/components/navbar-item-v2/navbar-item-v2.js +2 -2
  80. package/dist/collection/components/navbar-v2/navbar-v2.js +1 -1
  81. package/dist/collection/components/phone-number-input/phone-number-input.js +2 -2
  82. package/dist/collection/components/plate-number/plate-number.js +2 -2
  83. package/dist/collection/components/profil-dropdown/profil-dropdown.js +1 -1
  84. package/dist/collection/components/progress/progress.js +1 -1
  85. package/dist/collection/components/progress-indicator-horizontal/progress-indicator-horizontal.js +1 -1
  86. package/dist/collection/components/progress-indicator-vertical/progress-indicator-vertical.js +1 -1
  87. package/dist/collection/components/progress-indicator-vertical-item/progress-indicator-vertical-item.js +1 -1
  88. package/dist/collection/components/progress-tracker/progress-tracker.js +1 -1
  89. package/dist/collection/components/progress-tracker-item/progress-tracker-item.js +1 -1
  90. package/dist/collection/components/radio/radio.js +1 -1
  91. package/dist/collection/components/radio-card/radio-card.js +1 -1
  92. package/dist/collection/components/radio-group/radio-group.js +1 -1
  93. package/dist/collection/components/range/range.js +2 -2
  94. package/dist/collection/components/rating/rating.js +1 -1
  95. package/dist/collection/components/row/row.js +1 -1
  96. package/dist/collection/components/segmented-button/segmented-button.js +2 -2
  97. package/dist/collection/components/segmented-button-bar/segmented-button-bar.js +1 -1
  98. package/dist/collection/components/segmented-buttons/segmented-buttons.js +1 -1
  99. package/dist/collection/components/select/select.js +1 -1
  100. package/dist/collection/components/select-filter/select-filter.js +1 -1
  101. package/dist/collection/components/skeleton/skeleton.js +1 -1
  102. package/dist/collection/components/spinner/spinner.js +1 -1
  103. package/dist/collection/components/status-chip/status-chip.js +1 -1
  104. package/dist/collection/components/switch/switch.js +2 -2
  105. package/dist/collection/components/tab/tab.js +2 -2
  106. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  107. package/dist/collection/components/tab-button/tab-button.js +2 -2
  108. package/dist/collection/components/table/table.js +1 -1
  109. package/dist/collection/components/tabs/tabs.js +1 -1
  110. package/dist/collection/components/tag/tag.js +1 -1
  111. package/dist/collection/components/text/text.js +1 -1
  112. package/dist/collection/components/textarea/textarea.js +1 -1
  113. package/dist/collection/components/time-range-picker/time-range-picker.js +1 -1
  114. package/dist/collection/components/toast/toast.js +1 -1
  115. package/dist/collection/components/toggle/toggle.js +2 -2
  116. package/dist/collection/components/toolbar/toolbar.js +1 -1
  117. package/dist/collection/components/toolbar-title/toolbar-title.js +1 -1
  118. package/dist/collection/components/toolbar-title-page/toolbar-title-page.js +1 -1
  119. package/dist/collection/components/toolbar-v2/toolbar-v2.js +1 -1
  120. package/dist/collection/components/tooltip/tooltip.js +52 -38
  121. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  122. package/dist/esm/loader.js +1 -1
  123. package/dist/esm/road-badge_14.entry.js +36 -15
  124. package/dist/esm/road-badge_14.entry.js.map +1 -1
  125. package/dist/esm/road-carousel.entry.js +27 -21
  126. package/dist/esm/road-carousel.entry.js.map +1 -1
  127. package/dist/esm/road-dropdown.entry.js +1 -1
  128. package/dist/esm/road-duration.entry.js +1 -1
  129. package/dist/esm/road-flap.entry.js +1 -1
  130. package/dist/esm/road-global-navigation-v2.entry.js +1 -1
  131. package/dist/esm/road-global-navigation.entry.js +1 -1
  132. package/dist/esm/road-img.entry.js +1 -1
  133. package/dist/esm/road-modal.entry.js +1 -1
  134. package/dist/esm/road-navbar-item-v2.entry.js +2 -2
  135. package/dist/esm/road-navbar-item.entry.js +2 -2
  136. package/dist/esm/road-navbar-v2.entry.js +1 -1
  137. package/dist/esm/road-navbar.entry.js +1 -1
  138. package/dist/esm/road-phone-number-input.entry.js +2 -2
  139. package/dist/esm/road-plate-number.entry.js +2 -2
  140. package/dist/esm/road-profil-dropdown.entry.js +1 -1
  141. package/dist/esm/road-progress-indicator-horizontal.entry.js +1 -1
  142. package/dist/esm/road-progress-indicator-vertical-item.entry.js +1 -1
  143. package/dist/esm/road-progress-indicator-vertical.entry.js +1 -1
  144. package/dist/esm/road-progress-tracker-item.entry.js +1 -1
  145. package/dist/esm/road-progress-tracker.entry.js +1 -1
  146. package/dist/esm/road-progress.entry.js +1 -1
  147. package/dist/esm/road-radio-card.entry.js +1 -1
  148. package/dist/esm/road-radio-group.entry.js +1 -1
  149. package/dist/esm/road-radio.entry.js +1 -1
  150. package/dist/esm/road-range.entry.js +2 -2
  151. package/dist/esm/road-rating.entry.js +1 -1
  152. package/dist/esm/road-segmented-button-bar.entry.js +1 -1
  153. package/dist/esm/road-segmented-button.entry.js +2 -2
  154. package/dist/esm/road-segmented-buttons.entry.js +1 -1
  155. package/dist/esm/road-select-filter.entry.js +1 -1
  156. package/dist/esm/road-select.entry.js +1 -1
  157. package/dist/esm/road-skeleton.entry.js +1 -1
  158. package/dist/esm/road-spinner.entry.js +1 -1
  159. package/dist/esm/road-status-chip.entry.js +1 -1
  160. package/dist/esm/road-switch.entry.js +2 -2
  161. package/dist/esm/road-tab-bar.entry.js +2 -2
  162. package/dist/esm/road-tab-button.entry.js +2 -2
  163. package/dist/esm/road-tab.entry.js +2 -2
  164. package/dist/esm/road-table.entry.js +1 -1
  165. package/dist/esm/road-tabs.entry.js +1 -1
  166. package/dist/esm/road-tag.entry.js +1 -1
  167. package/dist/esm/road-text.entry.js +1 -1
  168. package/dist/esm/road-textarea.entry.js +1 -1
  169. package/dist/esm/road-time-range-picker.entry.js +1 -1
  170. package/dist/esm/road-toast.entry.js +1 -1
  171. package/dist/esm/road-toggle.entry.js +2 -2
  172. package/dist/esm/road-toolbar-title-page.entry.js +1 -1
  173. package/dist/esm/road-toolbar-title.entry.js +1 -1
  174. package/dist/esm/road-toolbar-v2.entry.js +1 -1
  175. package/dist/esm/road-tooltip.entry.js +46 -32
  176. package/dist/esm/road-tooltip.entry.js.map +1 -1
  177. package/dist/esm/roadtrip.js +1 -1
  178. package/dist/html.html-data.json +16 -0
  179. package/dist/roadtrip/{p-b5b2e36c.entry.js → p-0a9d4cd3.entry.js} +2 -2
  180. package/dist/roadtrip/{p-fdcebcc3.entry.js → p-110386d3.entry.js} +2 -2
  181. package/dist/roadtrip/{p-7955499d.entry.js → p-17dc5381.entry.js} +2 -2
  182. package/dist/roadtrip/{p-29ac611e.entry.js → p-1a75a359.entry.js} +2 -2
  183. package/dist/roadtrip/{p-a264377a.entry.js → p-1ee55ec2.entry.js} +2 -2
  184. package/dist/roadtrip/{p-1449b7c8.entry.js → p-261177f6.entry.js} +2 -2
  185. package/dist/roadtrip/{p-3a310d3d.entry.js → p-351b3b04.entry.js} +2 -2
  186. package/dist/roadtrip/p-382828d4.entry.js +2 -0
  187. package/dist/roadtrip/{p-e56c84ec.entry.js.map → p-382828d4.entry.js.map} +1 -1
  188. package/dist/roadtrip/{p-e7b4f257.entry.js → p-395b9785.entry.js} +2 -2
  189. package/dist/roadtrip/{p-4bb49a92.entry.js → p-43bb4e97.entry.js} +2 -2
  190. package/dist/roadtrip/p-43bb4e97.entry.js.map +1 -0
  191. package/dist/roadtrip/{p-24196fd2.entry.js → p-47433b76.entry.js} +2 -2
  192. package/dist/roadtrip/{p-45b9521f.entry.js → p-4798ebaa.entry.js} +2 -2
  193. package/dist/roadtrip/{p-d6a7644e.entry.js → p-47cef871.entry.js} +2 -2
  194. package/dist/roadtrip/{p-2797e2f2.entry.js → p-48ceee77.entry.js} +2 -2
  195. package/dist/roadtrip/{p-b61abebd.entry.js → p-4a69d010.entry.js} +2 -2
  196. package/dist/roadtrip/{p-39173ac2.entry.js → p-5d1d532a.entry.js} +2 -2
  197. package/dist/roadtrip/{p-b292d3fc.entry.js → p-61c4b6f1.entry.js} +2 -2
  198. package/dist/roadtrip/{p-9cbd5ae9.entry.js → p-68ae654b.entry.js} +2 -2
  199. package/dist/roadtrip/{p-c9527301.entry.js → p-6b0a37ba.entry.js} +2 -2
  200. package/dist/roadtrip/{p-f89e588a.entry.js → p-77e7dc8a.entry.js} +2 -2
  201. package/dist/roadtrip/{p-65dfd1e8.entry.js → p-790d848a.entry.js} +2 -2
  202. package/dist/roadtrip/{p-927cf307.entry.js → p-7bef34c4.entry.js} +2 -2
  203. package/dist/roadtrip/p-7ed5616c.entry.js +2 -0
  204. package/dist/roadtrip/{p-d881a66c.entry.js → p-7f96eb76.entry.js} +2 -2
  205. package/dist/roadtrip/{p-52d56ed2.entry.js → p-8a806d96.entry.js} +2 -2
  206. package/dist/roadtrip/{p-875b5999.entry.js → p-8eb19a44.entry.js} +2 -2
  207. package/dist/roadtrip/{p-6e9fac54.entry.js → p-8fad6cc9.entry.js} +2 -2
  208. package/dist/roadtrip/{p-302f51c6.entry.js → p-93c1be55.entry.js} +2 -2
  209. package/dist/roadtrip/{p-70f4387a.entry.js → p-943e31a7.entry.js} +2 -2
  210. package/dist/roadtrip/{p-d1517c27.entry.js → p-944ce861.entry.js} +2 -2
  211. package/dist/roadtrip/{p-79c3152e.entry.js → p-9af318e9.entry.js} +2 -2
  212. package/dist/roadtrip/{p-377d6b5b.entry.js → p-9c156562.entry.js} +2 -2
  213. package/dist/roadtrip/{p-c28fbcc0.entry.js → p-9d01727d.entry.js} +2 -2
  214. package/dist/roadtrip/{p-26b852e2.entry.js → p-9e8ae5c3.entry.js} +2 -2
  215. package/dist/roadtrip/{p-36288d23.entry.js → p-9f7d111d.entry.js} +2 -2
  216. package/dist/roadtrip/{p-b8132587.entry.js → p-a597e606.entry.js} +2 -2
  217. package/dist/roadtrip/{p-3dc22d00.entry.js → p-b889f575.entry.js} +2 -2
  218. package/dist/roadtrip/p-b889f575.entry.js.map +1 -0
  219. package/dist/roadtrip/{p-0bfff77d.entry.js → p-bb1aeca6.entry.js} +4 -4
  220. package/dist/roadtrip/p-bb1aeca6.entry.js.map +1 -0
  221. package/dist/roadtrip/p-bfe3d3eb.entry.js +2 -0
  222. package/dist/roadtrip/{p-61191773.entry.js.map → p-bfe3d3eb.entry.js.map} +1 -1
  223. package/dist/roadtrip/p-c1cd98dc.entry.js +2 -0
  224. package/dist/roadtrip/{p-11d896b1.entry.js → p-c2e07db9.entry.js} +2 -2
  225. package/dist/roadtrip/{p-8cd69117.entry.js → p-c96c0597.entry.js} +2 -2
  226. package/dist/roadtrip/{p-4e3cc7e9.entry.js → p-cbbfe0ce.entry.js} +2 -2
  227. package/dist/roadtrip/{p-5b738d24.entry.js → p-da60c3a9.entry.js} +2 -2
  228. package/dist/roadtrip/{p-de35fded.entry.js → p-e5f94b35.entry.js} +2 -2
  229. package/dist/roadtrip/{p-7e0bdcf9.entry.js → p-f07047c1.entry.js} +2 -2
  230. package/dist/roadtrip/p-f157fec0.entry.js +2 -0
  231. package/dist/roadtrip/{p-c4550384.entry.js → p-f3e5e983.entry.js} +2 -2
  232. package/dist/roadtrip/{p-75ebf102.entry.js → p-f41d2a41.entry.js} +2 -2
  233. package/dist/roadtrip/{p-8753beba.entry.js → p-f4da1ccf.entry.js} +2 -2
  234. package/dist/roadtrip/{p-c7dd579d.entry.js → p-fcb7a3e5.entry.js} +2 -2
  235. package/dist/roadtrip/roadtrip.esm.js +1 -1
  236. package/dist/roadtrip/roadtrip.esm.js.map +1 -1
  237. package/dist/types/components/carousel/carousel.d.ts +3 -1
  238. package/dist/types/components/drawer/drawer.d.ts +12 -0
  239. package/dist/types/components/tooltip/tooltip.d.ts +4 -8
  240. package/dist/types/components.d.ts +46 -32
  241. package/hydrate/index.js +171 -127
  242. package/hydrate/index.mjs +171 -127
  243. package/package.json +1 -1
  244. package/dist/roadtrip/p-0bfff77d.entry.js.map +0 -1
  245. package/dist/roadtrip/p-2ae82371.entry.js +0 -2
  246. package/dist/roadtrip/p-3dc22d00.entry.js.map +0 -1
  247. package/dist/roadtrip/p-4334d85b.entry.js +0 -2
  248. package/dist/roadtrip/p-4bb49a92.entry.js.map +0 -1
  249. package/dist/roadtrip/p-61191773.entry.js +0 -2
  250. package/dist/roadtrip/p-e56c84ec.entry.js +0 -2
  251. package/dist/roadtrip/p-ff189f73.entry.js +0 -2
  252. /package/dist/roadtrip/{p-b5b2e36c.entry.js.map → p-0a9d4cd3.entry.js.map} +0 -0
  253. /package/dist/roadtrip/{p-fdcebcc3.entry.js.map → p-110386d3.entry.js.map} +0 -0
  254. /package/dist/roadtrip/{p-7955499d.entry.js.map → p-17dc5381.entry.js.map} +0 -0
  255. /package/dist/roadtrip/{p-29ac611e.entry.js.map → p-1a75a359.entry.js.map} +0 -0
  256. /package/dist/roadtrip/{p-a264377a.entry.js.map → p-1ee55ec2.entry.js.map} +0 -0
  257. /package/dist/roadtrip/{p-1449b7c8.entry.js.map → p-261177f6.entry.js.map} +0 -0
  258. /package/dist/roadtrip/{p-3a310d3d.entry.js.map → p-351b3b04.entry.js.map} +0 -0
  259. /package/dist/roadtrip/{p-e7b4f257.entry.js.map → p-395b9785.entry.js.map} +0 -0
  260. /package/dist/roadtrip/{p-24196fd2.entry.js.map → p-47433b76.entry.js.map} +0 -0
  261. /package/dist/roadtrip/{p-45b9521f.entry.js.map → p-4798ebaa.entry.js.map} +0 -0
  262. /package/dist/roadtrip/{p-d6a7644e.entry.js.map → p-47cef871.entry.js.map} +0 -0
  263. /package/dist/roadtrip/{p-2797e2f2.entry.js.map → p-48ceee77.entry.js.map} +0 -0
  264. /package/dist/roadtrip/{p-b61abebd.entry.js.map → p-4a69d010.entry.js.map} +0 -0
  265. /package/dist/roadtrip/{p-39173ac2.entry.js.map → p-5d1d532a.entry.js.map} +0 -0
  266. /package/dist/roadtrip/{p-b292d3fc.entry.js.map → p-61c4b6f1.entry.js.map} +0 -0
  267. /package/dist/roadtrip/{p-9cbd5ae9.entry.js.map → p-68ae654b.entry.js.map} +0 -0
  268. /package/dist/roadtrip/{p-c9527301.entry.js.map → p-6b0a37ba.entry.js.map} +0 -0
  269. /package/dist/roadtrip/{p-f89e588a.entry.js.map → p-77e7dc8a.entry.js.map} +0 -0
  270. /package/dist/roadtrip/{p-65dfd1e8.entry.js.map → p-790d848a.entry.js.map} +0 -0
  271. /package/dist/roadtrip/{p-927cf307.entry.js.map → p-7bef34c4.entry.js.map} +0 -0
  272. /package/dist/roadtrip/{p-4334d85b.entry.js.map → p-7ed5616c.entry.js.map} +0 -0
  273. /package/dist/roadtrip/{p-d881a66c.entry.js.map → p-7f96eb76.entry.js.map} +0 -0
  274. /package/dist/roadtrip/{p-52d56ed2.entry.js.map → p-8a806d96.entry.js.map} +0 -0
  275. /package/dist/roadtrip/{p-875b5999.entry.js.map → p-8eb19a44.entry.js.map} +0 -0
  276. /package/dist/roadtrip/{p-6e9fac54.entry.js.map → p-8fad6cc9.entry.js.map} +0 -0
  277. /package/dist/roadtrip/{p-302f51c6.entry.js.map → p-93c1be55.entry.js.map} +0 -0
  278. /package/dist/roadtrip/{p-70f4387a.entry.js.map → p-943e31a7.entry.js.map} +0 -0
  279. /package/dist/roadtrip/{p-d1517c27.entry.js.map → p-944ce861.entry.js.map} +0 -0
  280. /package/dist/roadtrip/{p-79c3152e.entry.js.map → p-9af318e9.entry.js.map} +0 -0
  281. /package/dist/roadtrip/{p-377d6b5b.entry.js.map → p-9c156562.entry.js.map} +0 -0
  282. /package/dist/roadtrip/{p-c28fbcc0.entry.js.map → p-9d01727d.entry.js.map} +0 -0
  283. /package/dist/roadtrip/{p-26b852e2.entry.js.map → p-9e8ae5c3.entry.js.map} +0 -0
  284. /package/dist/roadtrip/{p-36288d23.entry.js.map → p-9f7d111d.entry.js.map} +0 -0
  285. /package/dist/roadtrip/{p-b8132587.entry.js.map → p-a597e606.entry.js.map} +0 -0
  286. /package/dist/roadtrip/{p-2ae82371.entry.js.map → p-c1cd98dc.entry.js.map} +0 -0
  287. /package/dist/roadtrip/{p-11d896b1.entry.js.map → p-c2e07db9.entry.js.map} +0 -0
  288. /package/dist/roadtrip/{p-8cd69117.entry.js.map → p-c96c0597.entry.js.map} +0 -0
  289. /package/dist/roadtrip/{p-4e3cc7e9.entry.js.map → p-cbbfe0ce.entry.js.map} +0 -0
  290. /package/dist/roadtrip/{p-5b738d24.entry.js.map → p-da60c3a9.entry.js.map} +0 -0
  291. /package/dist/roadtrip/{p-de35fded.entry.js.map → p-e5f94b35.entry.js.map} +0 -0
  292. /package/dist/roadtrip/{p-7e0bdcf9.entry.js.map → p-f07047c1.entry.js.map} +0 -0
  293. /package/dist/roadtrip/{p-ff189f73.entry.js.map → p-f157fec0.entry.js.map} +0 -0
  294. /package/dist/roadtrip/{p-c4550384.entry.js.map → p-f3e5e983.entry.js.map} +0 -0
  295. /package/dist/roadtrip/{p-75ebf102.entry.js.map → p-f41d2a41.entry.js.map} +0 -0
  296. /package/dist/roadtrip/{p-8753beba.entry.js.map → p-f4da1ccf.entry.js.map} +0 -0
  297. /package/dist/roadtrip/{p-c7dd579d.entry.js.map → p-fcb7a3e5.entry.js.map} +0 -0
@@ -1,16 +1,17 @@
1
- import { Host, h } from "@stencil/core";
1
+ import { Host, h, } from "@stencil/core";
2
2
  import { navigationChevron } from "../../../icons";
3
- import Swiper, { Autoplay, Pagination, Scrollbar, Keyboard, Zoom } from "swiper";
3
+ import Swiper, { Autoplay, Pagination, Scrollbar, Keyboard, Zoom, } from "swiper";
4
4
  Swiper.use([Pagination, Scrollbar, Autoplay, Keyboard, Zoom]);
5
5
  export class Carousel {
6
6
  constructor() {
7
7
  this.swiperReady = false;
8
- this.swiper = new Promise(resolve => {
8
+ this.swiper = new Promise((resolve) => {
9
9
  this.readySwiper = resolve;
10
10
  });
11
11
  this.didInit = false;
12
12
  this.options = {};
13
13
  this.pager = true;
14
+ this.pagertype = "bullets";
14
15
  this.arrows = false;
15
16
  }
16
17
  async optionsChanged() {
@@ -21,12 +22,12 @@ export class Carousel {
21
22
  }
22
23
  }
23
24
  connectedCallback() {
24
- if (typeof MutationObserver !== 'undefined') {
25
- const mut = this.mutationO = new MutationObserver(() => {
25
+ if (typeof MutationObserver !== "undefined") {
26
+ const mut = (this.mutationO = new MutationObserver(() => {
26
27
  if (this.swiperReady) {
27
28
  this.update();
28
29
  }
29
- });
30
+ }));
30
31
  mut.observe(this.el, {
31
32
  childList: true,
32
33
  subtree: true,
@@ -40,6 +41,9 @@ export class Carousel {
40
41
  }
41
42
  this.setupKeyboardNavigation();
42
43
  }
44
+ componentDidUpdate() {
45
+ this.initSwiper();
46
+ }
43
47
  disconnectedCallback() {
44
48
  if (this.mutationO) {
45
49
  this.mutationO.disconnect();
@@ -48,7 +52,7 @@ export class Carousel {
48
52
  const swiper = this.syncSwiper;
49
53
  if (swiper !== undefined) {
50
54
  swiper.destroy(true, true);
51
- this.swiper = new Promise(resolve => {
55
+ this.swiper = new Promise((resolve) => {
52
56
  this.readySwiper = resolve;
53
57
  });
54
58
  this.swiperReady = false;
@@ -59,7 +63,7 @@ export class Carousel {
59
63
  async update() {
60
64
  const [swiper] = await Promise.all([
61
65
  this.getSwiper(),
62
- waitForSlides(this.el)
66
+ waitForSlides(this.el),
63
67
  ]);
64
68
  swiper.update();
65
69
  }
@@ -129,6 +133,8 @@ export class Carousel {
129
133
  return this.swiper;
130
134
  }
131
135
  async initSwiper() {
136
+ var _a;
137
+ (_a = this.syncSwiper) === null || _a === void 0 ? void 0 : _a.destroy();
132
138
  const finalOptions = this.normalizeOptions();
133
139
  await waitForSlides(this.el);
134
140
  const swiper = new Swiper(this.el, finalOptions);
@@ -139,7 +145,7 @@ export class Carousel {
139
145
  normalizeOptions() {
140
146
  const swiperOptions = {
141
147
  effect: undefined,
142
- direction: 'horizontal',
148
+ direction: "horizontal",
143
149
  initialSlide: 0,
144
150
  loop: false,
145
151
  parallax: false,
@@ -148,13 +154,13 @@ export class Carousel {
148
154
  speed: 300,
149
155
  grid: {
150
156
  rows: 1,
151
- fill: 'column',
157
+ fill: "column",
152
158
  },
153
159
  slidesPerGroup: 1,
154
160
  centeredSlides: false,
155
161
  slidesOffsetBefore: 0,
156
162
  slidesOffsetAfter: 0,
157
- touchEventsTarget: 'container',
163
+ touchEventsTarget: "container",
158
164
  autoplay: false,
159
165
  freeMode: {
160
166
  enabled: false,
@@ -215,16 +221,16 @@ export class Carousel {
215
221
  crossFade: false,
216
222
  },
217
223
  a11y: {
218
- prevSlideMessage: 'Previous slide',
219
- nextSlideMessage: 'Next slide',
220
- firstSlideMessage: 'This is the first slide',
221
- lastSlideMessage: 'This is the last slide',
224
+ prevSlideMessage: "Previous slide",
225
+ nextSlideMessage: "Next slide",
226
+ firstSlideMessage: "This is the first slide",
227
+ lastSlideMessage: "This is the last slide",
222
228
  },
223
229
  };
224
230
  if (this.pager) {
225
231
  swiperOptions.pagination = {
226
232
  el: this.paginationEl,
227
- type: 'bullets',
233
+ type: this.pagertype,
228
234
  clickable: true,
229
235
  hideOnClick: false,
230
236
  };
@@ -253,24 +259,24 @@ export class Carousel {
253
259
  doubleTap: () => this.roadslidedoubletap.emit(),
254
260
  },
255
261
  };
256
- const customEvents = (!!this.options && !!this.options.on) ? this.options.on : {};
262
+ const customEvents = !!this.options && !!this.options.on ? this.options.on : {};
257
263
  const mergedEventOptions = { on: Object.assign(Object.assign({}, customEvents), eventOptions.on) };
258
264
  return Object.assign(Object.assign(Object.assign({}, swiperOptions), this.options), mergedEventOptions);
259
265
  }
260
266
  setupKeyboardNavigation() {
261
- this.el.addEventListener('keydown', (event) => {
267
+ this.el.addEventListener("keydown", (event) => {
262
268
  switch (event.key) {
263
- case 'ArrowLeft':
269
+ case "ArrowLeft":
264
270
  this.slidePrev();
265
271
  break;
266
- case 'ArrowRight':
272
+ case "ArrowRight":
267
273
  this.slideNext();
268
274
  break;
269
275
  }
270
276
  });
271
277
  }
272
278
  render() {
273
- return (h(Host, { key: 'ade421fc79d745727fe78ca3e95fe16e3415137e', class: "swiper-container", tabindex: "0" }, h("div", { key: 'd52f527ab0a2a4bd64e2098cc588f3ae6b874bcb', class: "swiper-wrapper" }, h("slot", { key: '0f9426dca0b1ba1341793bd04e847f261f2c1046' })), this.pager && h("div", { key: '3479c07552381ba5a162e012b52fc7da06f41172', class: "swiper-pagination", ref: el => this.paginationEl = el }), this.arrows && (h("div", { key: '9a9b215a9e21380b57b75e4ba371c2c0e2176d56', role: "button", class: "swiper-button-prev", tabindex: "0", "aria-label": "Previous slide", onClick: () => this.slidePrev() }, h("road-icon", { key: '1f78835d575dcad28f3bd6cf55a9f0d34d90f809', icon: navigationChevron, rotate: "180" }))), this.arrows && (h("div", { key: '287a27ab8483e6833bd27aeceeb62d51313ee606', role: "button", class: "swiper-button-next", tabindex: "0", "aria-label": "Next slide", onClick: () => this.slideNext() }, h("road-icon", { key: 'de2b38ddb9afd1e8140f1233a9da42ae12b4793e', icon: navigationChevron })))));
279
+ return (h(Host, { key: 'fc3ffdd804e5891f91fdc8686f556e595e772e1c', class: "swiper-container", tabindex: "0" }, h("div", { key: '847514ac112594e8fcfc9eac30ffba016104672a', class: "swiper-wrapper" }, h("slot", { key: '0d0bdec966329e10668feeb889002144921fa838' })), this.pager && (h("div", { key: 'a301eb072380dc9a9a05564f269e7ffd2fb35dda', class: "swiper-pagination", ref: (el) => (this.paginationEl = el) })), this.arrows && (h("div", { key: '84b80a05177fa4301a32968ab168a5d87f18a609', role: "button", class: "swiper-button-prev", tabindex: "0", "aria-label": "Previous slide", onClick: () => this.slidePrev() }, h("road-icon", { key: 'f5d6134e5e58ee0ab5cc189582ed4e46e8e1313b', icon: navigationChevron, rotate: "180" }))), this.arrows && (h("div", { key: 'bbc274b30ef7a90efc0938a077299e15b3653d14', role: "button", class: "swiper-button-next", tabindex: "0", "aria-label": "Next slide", onClick: () => this.slideNext() }, h("road-icon", { key: '3b0a8040718466b1ecca612e42cb3b013cc583b8', icon: navigationChevron })))));
274
280
  }
275
281
  static get is() { return "road-carousel"; }
276
282
  static get encapsulation() { return "shadow"; }
@@ -326,6 +332,26 @@ export class Carousel {
326
332
  "reflect": false,
327
333
  "defaultValue": "true"
328
334
  },
335
+ "pagertype": {
336
+ "type": "string",
337
+ "mutable": false,
338
+ "complexType": {
339
+ "original": "\"bullets\" | \"fraction\"",
340
+ "resolved": "\"bullets\" | \"fraction\"",
341
+ "references": {}
342
+ },
343
+ "required": false,
344
+ "optional": false,
345
+ "docs": {
346
+ "tags": [],
347
+ "text": ""
348
+ },
349
+ "getter": false,
350
+ "setter": false,
351
+ "attribute": "pagertype",
352
+ "reflect": false,
353
+ "defaultValue": "\"bullets\""
354
+ },
329
355
  "arrows": {
330
356
  "type": "boolean",
331
357
  "mutable": false,
@@ -920,6 +946,6 @@ export class Carousel {
920
946
  }
921
947
  }
922
948
  const waitForSlides = (el) => {
923
- return Promise.all(Array.from(el.querySelectorAll('road-carousel-item')).map(s => s.componentOnReady()));
949
+ return Promise.all(Array.from(el.querySelectorAll("road-carousel-item")).map((s) => s.componentOnReady()));
924
950
  };
925
951
  //# sourceMappingURL=carousel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"carousel.js","sourceRoot":"","sources":["../../../src/components/carousel/carousel.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, Host, Method, Prop, Watch, h } from '@stencil/core';\nimport { navigationChevron } from '../../../icons';\nimport Swiper, { SwiperOptions, Autoplay, Pagination, Scrollbar, Keyboard, Zoom } from \"swiper\"\n\nSwiper.use([Pagination, Scrollbar, Autoplay, Keyboard, Zoom]);\n\n@Component({\n tag: 'road-carousel',\n styleUrl: 'carousel.css',\n shadow: true,\n})\nexport class Carousel {\n private paginationEl?: HTMLElement;\n private swiperReady = false;\n private mutationO?: MutationObserver;\n private readySwiper!: (swiper: Swiper) => void;\n private swiper: Promise<Swiper> = new Promise(resolve => {\n this.readySwiper = resolve;\n });\n private syncSwiper?: Swiper;\n private didInit = false;\n\n @Element() el!: HTMLRoadCarouselElement;\n\n @Prop() options: any = {};\n\n @Watch('options')\n async optionsChanged() {\n if (this.swiperReady) {\n const swiper = await this.getSwiper();\n Object.assign(swiper.params, this.options);\n await this.update();\n }\n }\n\n @Prop() pager = true;\n @Prop() arrows = false;\n\n @Event() roadslidesdidload!: EventEmitter<void>;\n @Event() roadslidetap!: EventEmitter<void>;\n @Event() roadslidedoubletap!: EventEmitter<void>;\n @Event() roadslidewillchange!: EventEmitter<void>;\n @Event() roadslidedidchange!: EventEmitter<void>;\n @Event() roadslidenextstart!: EventEmitter<void>;\n @Event() roadslideprevstart!: EventEmitter<void>;\n @Event() roadslidenextend!: EventEmitter<void>;\n @Event() roadslideprevend!: EventEmitter<void>;\n @Event() roadslidetransitionstart!: EventEmitter<void>;\n @Event() roadslidetransitionend!: EventEmitter<void>;\n @Event() roadslidedrag!: EventEmitter<void>;\n @Event() roadslidereachstart!: EventEmitter<void>;\n @Event() roadslidereachend!: EventEmitter<void>;\n @Event() roadslidetouchstart!: EventEmitter<void>;\n @Event() roadslidetouchend!: EventEmitter<void>;\n\n connectedCallback() {\n if (typeof MutationObserver !== 'undefined') {\n const mut = this.mutationO = new MutationObserver(() => {\n if (this.swiperReady) {\n this.update();\n }\n });\n mut.observe(this.el, {\n childList: true,\n subtree: true,\n });\n }\n }\n\n componentDidLoad() {\n if (!this.didInit) {\n this.didInit = true;\n this.initSwiper();\n }\n this.setupKeyboardNavigation();\n }\n\n disconnectedCallback() {\n if (this.mutationO) {\n this.mutationO.disconnect();\n this.mutationO = undefined;\n }\n\n const swiper = this.syncSwiper;\n if (swiper !== undefined) {\n swiper.destroy(true, true);\n this.swiper = new Promise(resolve => {\n this.readySwiper = resolve;\n });\n this.swiperReady = false;\n this.syncSwiper = undefined;\n }\n\n this.didInit = false;\n }\n\n @Method()\n async update() {\n const [swiper] = await Promise.all([\n this.getSwiper(),\n waitForSlides(this.el)\n ]);\n swiper.update();\n }\n\n @Method()\n async updateAutoHeight(speed?: number) {\n const swiper = await this.getSwiper();\n swiper.updateAutoHeight(speed);\n }\n\n @Method()\n async slideTo(index: number, speed?: number, runCallbacks?: boolean) {\n const swiper = await this.getSwiper();\n swiper.slideTo(index, speed, runCallbacks);\n }\n\n @Method()\n async slideNext(speed?: number, runCallbacks?: boolean) {\n const swiper = await this.getSwiper();\n swiper.slideNext(speed!, runCallbacks!);\n }\n\n @Method()\n async slidePrev(speed?: number, runCallbacks?: boolean) {\n const swiper = await this.getSwiper();\n swiper.slidePrev(speed, runCallbacks);\n }\n\n @Method()\n async getActiveIndex(): Promise<number> {\n const swiper = await this.getSwiper();\n return swiper.activeIndex;\n }\n\n @Method()\n async getPreviousIndex(): Promise<number> {\n const swiper = await this.getSwiper();\n return swiper.previousIndex;\n }\n\n @Method()\n async length(): Promise<number> {\n const swiper = await this.getSwiper();\n return swiper.slides.length;\n }\n\n @Method()\n async isEnd(): Promise<boolean> {\n const swiper = await this.getSwiper();\n return swiper.isEnd;\n }\n\n @Method()\n async isBeginning(): Promise<boolean> {\n const swiper = await this.getSwiper();\n return swiper.isBeginning;\n }\n\n @Method()\n async startAutoplay() {\n const swiper = await this.getSwiper();\n if (swiper.autoplay) {\n swiper.autoplay.start();\n }\n }\n\n @Method()\n async stopAutoplay() {\n const swiper = await this.getSwiper();\n if (swiper.autoplay) {\n swiper.autoplay.stop();\n }\n }\n\n @Method()\n async lockSwipeToNext(lock: boolean) {\n const swiper = await this.getSwiper();\n swiper.allowSlideNext = !lock;\n }\n\n @Method()\n async lockSwipeToPrev(lock: boolean) {\n const swiper = await this.getSwiper();\n swiper.allowSlidePrev = !lock;\n }\n\n @Method()\n async lockSwipes(lock: boolean) {\n const swiper = await this.getSwiper();\n swiper.allowSlideNext = !lock;\n swiper.allowSlidePrev = !lock;\n swiper.allowTouchMove = !lock;\n }\n\n @Method()\n async getSwiper(): Promise<any> {\n return this.swiper;\n }\n\n private async initSwiper() {\n const finalOptions = this.normalizeOptions();\n\n await waitForSlides(this.el);\n const swiper = new Swiper(this.el, finalOptions);\n this.swiperReady = true;\n this.syncSwiper = swiper;\n this.readySwiper(swiper);\n }\n\n private normalizeOptions(): SwiperOptions {\n const swiperOptions: SwiperOptions = {\n effect: undefined,\n direction: 'horizontal',\n initialSlide: 0,\n loop: false,\n parallax: false,\n slidesPerView: 1,\n spaceBetween: 0,\n speed: 300,\n grid: {\n rows: 1,\n fill: 'column',\n },\n slidesPerGroup: 1,\n centeredSlides: false,\n slidesOffsetBefore: 0,\n slidesOffsetAfter: 0,\n touchEventsTarget: 'container',\n autoplay: false,\n freeMode: {\n enabled: false,\n momentum: true,\n momentumRatio: 1,\n momentumBounce: true,\n momentumBounceRatio: 1,\n momentumVelocityRatio: 1,\n sticky: false,\n minimumVelocity: 0.02,\n },\n autoHeight: false,\n setWrapperSize: false,\n zoom: {\n maxRatio: 3,\n minRatio: 1,\n toggle: false,\n },\n touchRatio: 1,\n touchAngle: 45,\n simulateTouch: true,\n touchStartPreventDefault: false,\n shortSwipes: true,\n longSwipes: true,\n longSwipesRatio: 0.5,\n longSwipesMs: 300,\n followFinger: true,\n threshold: 0,\n touchMoveStopPropagation: true,\n touchReleaseOnEdges: false,\n resistance: true,\n resistanceRatio: 0.85,\n watchSlidesProgress: false,\n preventClicks: true,\n preventClicksPropagation: true,\n slideToClickedSlide: false,\n loopAdditionalSlides: 0,\n noSwiping: true,\n runCallbacksOnInit: true,\n coverflowEffect: {\n rotate: 50,\n stretch: 0,\n depth: 100,\n modifier: 1,\n slideShadows: true,\n },\n flipEffect: {\n slideShadows: true,\n limitRotation: true,\n },\n cubeEffect: {\n slideShadows: true,\n shadow: true,\n shadowOffset: 20,\n shadowScale: 0.94,\n },\n fadeEffect: {\n crossFade: false,\n },\n a11y: {\n prevSlideMessage: 'Previous slide',\n nextSlideMessage: 'Next slide',\n firstSlideMessage: 'This is the first slide',\n lastSlideMessage: 'This is the last slide',\n },\n };\n\n if (this.pager) {\n swiperOptions.pagination = {\n el: this.paginationEl!,\n type: 'bullets',\n clickable: true,\n hideOnClick: false,\n };\n }\n\n const eventOptions: SwiperOptions = {\n on: {\n init: () => {\n setTimeout(() => {\n this.roadslidesdidload.emit();\n }, 20);\n },\n slideChangeTransitionStart: () => this.roadslidewillchange.emit(),\n slideChangeTransitionEnd: () => this.roadslidedidchange.emit(),\n slideNextTransitionStart: () => this.roadslidenextstart.emit(),\n slidePrevTransitionStart: () => this.roadslideprevstart.emit(),\n slideNextTransitionEnd: () => this.roadslidenextend.emit(),\n slidePrevTransitionEnd: () => this.roadslideprevend.emit(),\n transitionStart: () => this.roadslidetransitionstart.emit(),\n transitionEnd: () => this.roadslidetransitionend.emit(),\n sliderMove: () => this.roadslidedrag.emit(),\n reachBeginning: () => this.roadslidereachstart.emit(),\n reachEnd: () => this.roadslidereachend.emit(),\n touchStart: () => this.roadslidetouchstart.emit(),\n touchEnd: () => this.roadslidetouchend.emit(),\n tap: () => this.roadslidetap.emit(),\n doubleTap: () => this.roadslidedoubletap.emit(),\n },\n };\n\n const customEvents = (!!this.options && !!this.options.on) ? this.options.on : {};\n const mergedEventOptions = { on: { ...customEvents, ...eventOptions.on } };\n\n return { ...swiperOptions, ...this.options, ...mergedEventOptions };\n }\n\n private setupKeyboardNavigation() {\n this.el.addEventListener('keydown', (event: KeyboardEvent) => {\n switch (event.key) {\n case 'ArrowLeft':\n this.slidePrev();\n break;\n case 'ArrowRight':\n this.slideNext();\n break;\n }\n });\n }\n\n render() {\n return (\n <Host class=\"swiper-container\" tabindex=\"0\">\n <div class=\"swiper-wrapper\">\n <slot />\n </div>\n {this.pager && <div class=\"swiper-pagination\" ref={el => this.paginationEl = el}></div>}\n {this.arrows && (\n <div role=\"button\" class=\"swiper-button-prev\" tabindex=\"0\" aria-label=\"Previous slide\" onClick={() => this.slidePrev()}>\n <road-icon icon={navigationChevron} rotate=\"180\"></road-icon>\n </div>\n )}\n {this.arrows && (\n <div role=\"button\" class=\"swiper-button-next\" tabindex=\"0\" aria-label=\"Next slide\" onClick={() => this.slideNext()}>\n <road-icon icon={navigationChevron}></road-icon>\n </div>\n )}\n </Host>\n );\n }\n}\n\nconst waitForSlides = (el: HTMLElement) => {\n return Promise.all(\n Array.from(el.querySelectorAll('road-carousel-item')).map(s => s.componentOnReady())\n );\n};\n"]}
1
+ {"version":3,"file":"carousel.js","sourceRoot":"","sources":["../../../src/components/carousel/carousel.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,OAAO,EACP,KAAK,EAEL,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,CAAC,GACF,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,MAAM,EAAE,EAEb,QAAQ,EACR,UAAU,EACV,SAAS,EACT,QAAQ,EACR,IAAI,GACL,MAAM,QAAQ,CAAC;AAEhB,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;AAO9D,MAAM,OAAO,QAAQ;IALrB;QAOU,gBAAW,GAAG,KAAK,CAAC;QAGpB,WAAM,GAAoB,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACxD,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEK,YAAO,GAAG,KAAK,CAAC;QAIhB,YAAO,GAAQ,EAAE,CAAC;QAWlB,UAAK,GAAG,IAAI,CAAC;QACb,cAAS,GAA2B,SAAS,CAAC;QAC9C,WAAM,GAAG,KAAK,CAAC;KAoWxB;IA9WC,KAAK,CAAC,cAAc;QAClB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACtB,CAAC;IACH,CAAC;IAuBD,iBAAiB;QACf,IAAI,OAAO,gBAAgB,KAAK,WAAW,EAAE,CAAC;YAC5C,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,gBAAgB,CAAC,GAAG,EAAE;gBACtD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrB,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,CAAC;YACH,CAAC,CAAC,CAAC,CAAC;YACJ,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;gBACnB,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC;QACD,IAAI,CAAC,uBAAuB,EAAE,CAAC;IACjC,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED,oBAAoB;QAClB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;YAC5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;QAC/B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC3B,IAAI,CAAC,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACpC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;YAC7B,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YACzB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC9B,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAGD,KAAK,CAAC,MAAM;QACV,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACjC,IAAI,CAAC,SAAS,EAAE;YAChB,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;SACvB,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAGD,KAAK,CAAC,gBAAgB,CAAC,KAAc;QACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAGD,KAAK,CAAC,OAAO,CAAC,KAAa,EAAE,KAAc,EAAE,YAAsB;QACjE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;IAC7C,CAAC;IAGD,KAAK,CAAC,SAAS,CAAC,KAAc,EAAE,YAAsB;QACpD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,CAAC,SAAS,CAAC,KAAM,EAAE,YAAa,CAAC,CAAC;IAC1C,CAAC;IAGD,KAAK,CAAC,SAAS,CAAC,KAAc,EAAE,YAAsB;QACpD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IACxC,CAAC;IAGD,KAAK,CAAC,cAAc;QAClB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,WAAW,CAAC;IAC5B,CAAC;IAGD,KAAK,CAAC,gBAAgB;QACpB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,aAAa,CAAC;IAC9B,CAAC;IAGD,KAAK,CAAC,MAAM;QACV,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;IAC9B,CAAC;IAGD,KAAK,CAAC,KAAK;QACT,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,KAAK,CAAC;IACtB,CAAC;IAGD,KAAK,CAAC,WAAW;QACf,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,WAAW,CAAC;IAC5B,CAAC;IAGD,KAAK,CAAC,aAAa;QACjB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,YAAY;QAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACzB,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,eAAe,CAAC,IAAa;QACjC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC;IAChC,CAAC;IAGD,KAAK,CAAC,eAAe,CAAC,IAAa;QACjC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC;IAChC,CAAC;IAGD,KAAK,CAAC,UAAU,CAAC,IAAa;QAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC;QAC9B,MAAM,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC;QAC9B,MAAM,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC;IAChC,CAAC;IAGD,KAAK,CAAC,SAAS;QACb,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,UAAU;;QACtB,MAAA,IAAI,CAAC,UAAU,0CAAE,OAAO,EAAE,CAAC;QAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAE7C,MAAM,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7B,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QACjD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;IAEO,gBAAgB;QACtB,MAAM,aAAa,GAAkB;YACnC,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,YAAY;YACvB,YAAY,EAAE,CAAC;YACf,IAAI,EAAE,KAAK;YACX,QAAQ,EAAE,KAAK;YACf,aAAa,EAAE,CAAC;YAChB,YAAY,EAAE,CAAC;YACf,KAAK,EAAE,GAAG;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,CAAC;gBACP,IAAI,EAAE,QAAQ;aACf;YACD,cAAc,EAAE,CAAC;YACjB,cAAc,EAAE,KAAK;YACrB,kBAAkB,EAAE,CAAC;YACrB,iBAAiB,EAAE,CAAC;YACpB,iBAAiB,EAAE,WAAW;YAC9B,QAAQ,EAAE,KAAK;YACf,QAAQ,EAAE;gBACR,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,IAAI;gBACd,aAAa,EAAE,CAAC;gBAChB,cAAc,EAAE,IAAI;gBACpB,mBAAmB,EAAE,CAAC;gBACtB,qBAAqB,EAAE,CAAC;gBACxB,MAAM,EAAE,KAAK;gBACb,eAAe,EAAE,IAAI;aACtB;YACD,UAAU,EAAE,KAAK;YACjB,cAAc,EAAE,KAAK;YACrB,IAAI,EAAE;gBACJ,QAAQ,EAAE,CAAC;gBACX,QAAQ,EAAE,CAAC;gBACX,MAAM,EAAE,KAAK;aACd;YACD,UAAU,EAAE,CAAC;YACb,UAAU,EAAE,EAAE;YACd,aAAa,EAAE,IAAI;YACnB,wBAAwB,EAAE,KAAK;YAC/B,WAAW,EAAE,IAAI;YACjB,UAAU,EAAE,IAAI;YAChB,eAAe,EAAE,GAAG;YACpB,YAAY,EAAE,GAAG;YACjB,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,CAAC;YACZ,wBAAwB,EAAE,IAAI;YAC9B,mBAAmB,EAAE,KAAK;YAC1B,UAAU,EAAE,IAAI;YAChB,eAAe,EAAE,IAAI;YACrB,mBAAmB,EAAE,KAAK;YAC1B,aAAa,EAAE,IAAI;YACnB,wBAAwB,EAAE,IAAI;YAC9B,mBAAmB,EAAE,KAAK;YAC1B,oBAAoB,EAAE,CAAC;YACvB,SAAS,EAAE,IAAI;YACf,kBAAkB,EAAE,IAAI;YACxB,eAAe,EAAE;gBACf,MAAM,EAAE,EAAE;gBACV,OAAO,EAAE,CAAC;gBACV,KAAK,EAAE,GAAG;gBACV,QAAQ,EAAE,CAAC;gBACX,YAAY,EAAE,IAAI;aACnB;YACD,UAAU,EAAE;gBACV,YAAY,EAAE,IAAI;gBAClB,aAAa,EAAE,IAAI;aACpB;YACD,UAAU,EAAE;gBACV,YAAY,EAAE,IAAI;gBAClB,MAAM,EAAE,IAAI;gBACZ,YAAY,EAAE,EAAE;gBAChB,WAAW,EAAE,IAAI;aAClB;YACD,UAAU,EAAE;gBACV,SAAS,EAAE,KAAK;aACjB;YACD,IAAI,EAAE;gBACJ,gBAAgB,EAAE,gBAAgB;gBAClC,gBAAgB,EAAE,YAAY;gBAC9B,iBAAiB,EAAE,yBAAyB;gBAC5C,gBAAgB,EAAE,wBAAwB;aAC3C;SACF,CAAC;QAEF,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,aAAa,CAAC,UAAU,GAAG;gBACzB,EAAE,EAAE,IAAI,CAAC,YAAa;gBACtB,IAAI,EAAE,IAAI,CAAC,SAAS;gBACpB,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,KAAK;aACnB,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAkB;YAClC,EAAE,EAAE;gBACF,IAAI,EAAE,GAAG,EAAE;oBACT,UAAU,CAAC,GAAG,EAAE;wBACd,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;oBAChC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACT,CAAC;gBACD,0BAA0B,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE;gBACjE,wBAAwB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE;gBAC9D,wBAAwB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE;gBAC9D,wBAAwB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE;gBAC9D,sBAAsB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE;gBAC1D,sBAAsB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE;gBAC1D,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE;gBAC3D,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE;gBACvD,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;gBAC3C,cAAc,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE;gBACrD,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE;gBAC7C,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE;gBACjD,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE;gBAC7C,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;gBACnC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE;aAChD;SACF,CAAC;QAEF,MAAM,YAAY,GAChB,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,MAAM,kBAAkB,GAAG,EAAE,EAAE,kCAAO,YAAY,GAAK,YAAY,CAAC,EAAE,CAAE,EAAE,CAAC;QAE3E,qDAAY,aAAa,GAAK,IAAI,CAAC,OAAO,GAAK,kBAAkB,EAAG;IACtE,CAAC;IAEO,uBAAuB;QAC7B,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAoB,EAAE,EAAE;YAC3D,QAAQ,KAAK,CAAC,GAAG,EAAE,CAAC;gBAClB,KAAK,WAAW;oBACd,IAAI,CAAC,SAAS,EAAE,CAAC;oBACjB,MAAM;gBACR,KAAK,YAAY;oBACf,IAAI,CAAC,SAAS,EAAE,CAAC;oBACjB,MAAM;YACV,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,qDAAC,KAAK,EAAC,kBAAkB,EAAC,QAAQ,EAAC,GAAG;YACzC,4DAAK,KAAK,EAAC,gBAAgB;gBACzB,8DAAQ,CACJ;YACL,IAAI,CAAC,KAAK,IAAI,CACb,4DACE,KAAK,EAAC,mBAAmB,EACzB,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC,GAChC,CACR;YACA,IAAI,CAAC,MAAM,IAAI,CACd,4DACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAC,oBAAoB,EAC1B,QAAQ,EAAC,GAAG,gBACD,gBAAgB,EAC3B,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE;gBAE/B,kEAAW,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAC,KAAK,GAAa,CACzD,CACP;YACA,IAAI,CAAC,MAAM,IAAI,CACd,4DACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAC,oBAAoB,EAC1B,QAAQ,EAAC,GAAG,gBACD,YAAY,EACvB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE;gBAE/B,kEAAW,IAAI,EAAE,iBAAiB,GAAc,CAC5C,CACP,CACI,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF;AAED,MAAM,aAAa,GAAG,CAAC,EAAe,EAAE,EAAE;IACxC,OAAO,OAAO,CAAC,GAAG,CAChB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9D,CAAC,CAAC,gBAAgB,EAAE,CACrB,CACF,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Method,\n Prop,\n Watch,\n h,\n} from \"@stencil/core\";\nimport { navigationChevron } from \"../../../icons\";\nimport Swiper, {\n SwiperOptions,\n Autoplay,\n Pagination,\n Scrollbar,\n Keyboard,\n Zoom,\n} from \"swiper\";\n\nSwiper.use([Pagination, Scrollbar, Autoplay, Keyboard, Zoom]);\n\n@Component({\n tag: \"road-carousel\",\n styleUrl: \"carousel.css\",\n shadow: true,\n})\nexport class Carousel {\n private paginationEl?: HTMLElement;\n private swiperReady = false;\n private mutationO?: MutationObserver;\n private readySwiper!: (swiper: Swiper) => void;\n private swiper: Promise<Swiper> = new Promise((resolve) => {\n this.readySwiper = resolve;\n });\n private syncSwiper?: Swiper;\n private didInit = false;\n\n @Element() el!: HTMLRoadCarouselElement;\n\n @Prop() options: any = {};\n\n @Watch(\"options\")\n async optionsChanged() {\n if (this.swiperReady) {\n const swiper = await this.getSwiper();\n Object.assign(swiper.params, this.options);\n await this.update();\n }\n }\n\n @Prop() pager = true;\n @Prop() pagertype: \"bullets\" | \"fraction\" = \"bullets\";\n @Prop() arrows = false;\n\n @Event() roadslidesdidload!: EventEmitter<void>;\n @Event() roadslidetap!: EventEmitter<void>;\n @Event() roadslidedoubletap!: EventEmitter<void>;\n @Event() roadslidewillchange!: EventEmitter<void>;\n @Event() roadslidedidchange!: EventEmitter<void>;\n @Event() roadslidenextstart!: EventEmitter<void>;\n @Event() roadslideprevstart!: EventEmitter<void>;\n @Event() roadslidenextend!: EventEmitter<void>;\n @Event() roadslideprevend!: EventEmitter<void>;\n @Event() roadslidetransitionstart!: EventEmitter<void>;\n @Event() roadslidetransitionend!: EventEmitter<void>;\n @Event() roadslidedrag!: EventEmitter<void>;\n @Event() roadslidereachstart!: EventEmitter<void>;\n @Event() roadslidereachend!: EventEmitter<void>;\n @Event() roadslidetouchstart!: EventEmitter<void>;\n @Event() roadslidetouchend!: EventEmitter<void>;\n\n connectedCallback() {\n if (typeof MutationObserver !== \"undefined\") {\n const mut = (this.mutationO = new MutationObserver(() => {\n if (this.swiperReady) {\n this.update();\n }\n }));\n mut.observe(this.el, {\n childList: true,\n subtree: true,\n });\n }\n }\n\n componentDidLoad() {\n if (!this.didInit) {\n this.didInit = true;\n this.initSwiper();\n }\n this.setupKeyboardNavigation();\n }\n\n componentDidUpdate() {\n this.initSwiper();\n }\n\n disconnectedCallback() {\n if (this.mutationO) {\n this.mutationO.disconnect();\n this.mutationO = undefined;\n }\n\n const swiper = this.syncSwiper;\n if (swiper !== undefined) {\n swiper.destroy(true, true);\n this.swiper = new Promise((resolve) => {\n this.readySwiper = resolve;\n });\n this.swiperReady = false;\n this.syncSwiper = undefined;\n }\n\n this.didInit = false;\n }\n\n @Method()\n async update() {\n const [swiper] = await Promise.all([\n this.getSwiper(),\n waitForSlides(this.el),\n ]);\n swiper.update();\n }\n\n @Method()\n async updateAutoHeight(speed?: number) {\n const swiper = await this.getSwiper();\n swiper.updateAutoHeight(speed);\n }\n\n @Method()\n async slideTo(index: number, speed?: number, runCallbacks?: boolean) {\n const swiper = await this.getSwiper();\n swiper.slideTo(index, speed, runCallbacks);\n }\n\n @Method()\n async slideNext(speed?: number, runCallbacks?: boolean) {\n const swiper = await this.getSwiper();\n swiper.slideNext(speed!, runCallbacks!);\n }\n\n @Method()\n async slidePrev(speed?: number, runCallbacks?: boolean) {\n const swiper = await this.getSwiper();\n swiper.slidePrev(speed, runCallbacks);\n }\n\n @Method()\n async getActiveIndex(): Promise<number> {\n const swiper = await this.getSwiper();\n return swiper.activeIndex;\n }\n\n @Method()\n async getPreviousIndex(): Promise<number> {\n const swiper = await this.getSwiper();\n return swiper.previousIndex;\n }\n\n @Method()\n async length(): Promise<number> {\n const swiper = await this.getSwiper();\n return swiper.slides.length;\n }\n\n @Method()\n async isEnd(): Promise<boolean> {\n const swiper = await this.getSwiper();\n return swiper.isEnd;\n }\n\n @Method()\n async isBeginning(): Promise<boolean> {\n const swiper = await this.getSwiper();\n return swiper.isBeginning;\n }\n\n @Method()\n async startAutoplay() {\n const swiper = await this.getSwiper();\n if (swiper.autoplay) {\n swiper.autoplay.start();\n }\n }\n\n @Method()\n async stopAutoplay() {\n const swiper = await this.getSwiper();\n if (swiper.autoplay) {\n swiper.autoplay.stop();\n }\n }\n\n @Method()\n async lockSwipeToNext(lock: boolean) {\n const swiper = await this.getSwiper();\n swiper.allowSlideNext = !lock;\n }\n\n @Method()\n async lockSwipeToPrev(lock: boolean) {\n const swiper = await this.getSwiper();\n swiper.allowSlidePrev = !lock;\n }\n\n @Method()\n async lockSwipes(lock: boolean) {\n const swiper = await this.getSwiper();\n swiper.allowSlideNext = !lock;\n swiper.allowSlidePrev = !lock;\n swiper.allowTouchMove = !lock;\n }\n\n @Method()\n async getSwiper(): Promise<any> {\n return this.swiper;\n }\n\n private async initSwiper() {\n this.syncSwiper?.destroy();\n const finalOptions = this.normalizeOptions();\n\n await waitForSlides(this.el);\n const swiper = new Swiper(this.el, finalOptions);\n this.swiperReady = true;\n this.syncSwiper = swiper;\n this.readySwiper(swiper);\n }\n\n private normalizeOptions(): SwiperOptions {\n const swiperOptions: SwiperOptions = {\n effect: undefined,\n direction: \"horizontal\",\n initialSlide: 0,\n loop: false,\n parallax: false,\n slidesPerView: 1,\n spaceBetween: 0,\n speed: 300,\n grid: {\n rows: 1,\n fill: \"column\",\n },\n slidesPerGroup: 1,\n centeredSlides: false,\n slidesOffsetBefore: 0,\n slidesOffsetAfter: 0,\n touchEventsTarget: \"container\",\n autoplay: false,\n freeMode: {\n enabled: false,\n momentum: true,\n momentumRatio: 1,\n momentumBounce: true,\n momentumBounceRatio: 1,\n momentumVelocityRatio: 1,\n sticky: false,\n minimumVelocity: 0.02,\n },\n autoHeight: false,\n setWrapperSize: false,\n zoom: {\n maxRatio: 3,\n minRatio: 1,\n toggle: false,\n },\n touchRatio: 1,\n touchAngle: 45,\n simulateTouch: true,\n touchStartPreventDefault: false,\n shortSwipes: true,\n longSwipes: true,\n longSwipesRatio: 0.5,\n longSwipesMs: 300,\n followFinger: true,\n threshold: 0,\n touchMoveStopPropagation: true,\n touchReleaseOnEdges: false,\n resistance: true,\n resistanceRatio: 0.85,\n watchSlidesProgress: false,\n preventClicks: true,\n preventClicksPropagation: true,\n slideToClickedSlide: false,\n loopAdditionalSlides: 0,\n noSwiping: true,\n runCallbacksOnInit: true,\n coverflowEffect: {\n rotate: 50,\n stretch: 0,\n depth: 100,\n modifier: 1,\n slideShadows: true,\n },\n flipEffect: {\n slideShadows: true,\n limitRotation: true,\n },\n cubeEffect: {\n slideShadows: true,\n shadow: true,\n shadowOffset: 20,\n shadowScale: 0.94,\n },\n fadeEffect: {\n crossFade: false,\n },\n a11y: {\n prevSlideMessage: \"Previous slide\",\n nextSlideMessage: \"Next slide\",\n firstSlideMessage: \"This is the first slide\",\n lastSlideMessage: \"This is the last slide\",\n },\n };\n\n if (this.pager) {\n swiperOptions.pagination = {\n el: this.paginationEl!,\n type: this.pagertype,\n clickable: true,\n hideOnClick: false,\n };\n }\n\n const eventOptions: SwiperOptions = {\n on: {\n init: () => {\n setTimeout(() => {\n this.roadslidesdidload.emit();\n }, 20);\n },\n slideChangeTransitionStart: () => this.roadslidewillchange.emit(),\n slideChangeTransitionEnd: () => this.roadslidedidchange.emit(),\n slideNextTransitionStart: () => this.roadslidenextstart.emit(),\n slidePrevTransitionStart: () => this.roadslideprevstart.emit(),\n slideNextTransitionEnd: () => this.roadslidenextend.emit(),\n slidePrevTransitionEnd: () => this.roadslideprevend.emit(),\n transitionStart: () => this.roadslidetransitionstart.emit(),\n transitionEnd: () => this.roadslidetransitionend.emit(),\n sliderMove: () => this.roadslidedrag.emit(),\n reachBeginning: () => this.roadslidereachstart.emit(),\n reachEnd: () => this.roadslidereachend.emit(),\n touchStart: () => this.roadslidetouchstart.emit(),\n touchEnd: () => this.roadslidetouchend.emit(),\n tap: () => this.roadslidetap.emit(),\n doubleTap: () => this.roadslidedoubletap.emit(),\n },\n };\n\n const customEvents =\n !!this.options && !!this.options.on ? this.options.on : {};\n const mergedEventOptions = { on: { ...customEvents, ...eventOptions.on } };\n\n return { ...swiperOptions, ...this.options, ...mergedEventOptions };\n }\n\n private setupKeyboardNavigation() {\n this.el.addEventListener(\"keydown\", (event: KeyboardEvent) => {\n switch (event.key) {\n case \"ArrowLeft\":\n this.slidePrev();\n break;\n case \"ArrowRight\":\n this.slideNext();\n break;\n }\n });\n }\n\n render() {\n return (\n <Host class=\"swiper-container\" tabindex=\"0\">\n <div class=\"swiper-wrapper\">\n <slot />\n </div>\n {this.pager && (\n <div\n class=\"swiper-pagination\"\n ref={(el) => (this.paginationEl = el)}\n ></div>\n )}\n {this.arrows && (\n <div\n role=\"button\"\n class=\"swiper-button-prev\"\n tabindex=\"0\"\n aria-label=\"Previous slide\"\n onClick={() => this.slidePrev()}\n >\n <road-icon icon={navigationChevron} rotate=\"180\"></road-icon>\n </div>\n )}\n {this.arrows && (\n <div\n role=\"button\"\n class=\"swiper-button-next\"\n tabindex=\"0\"\n aria-label=\"Next slide\"\n onClick={() => this.slideNext()}\n >\n <road-icon icon={navigationChevron}></road-icon>\n </div>\n )}\n </Host>\n );\n }\n}\n\nconst waitForSlides = (el: HTMLElement) => {\n return Promise.all(\n Array.from(el.querySelectorAll(\"road-carousel-item\")).map((s) =>\n s.componentOnReady()\n )\n );\n};\n"]}
@@ -1,32 +1,31 @@
1
- import { html } from 'lit';
2
- import { ifDefined } from 'lit/directives/if-defined.js';
3
- import { unsafeHTML } from 'lit-html/directives/unsafe-html.js';
1
+ import { html } from "lit";
2
+ import { unsafeHTML } from "lit-html/directives/unsafe-html.js";
4
3
 
5
4
  export default {
6
- title: 'Listing/Carousel',
7
- component: 'road-carousel',
5
+ title: "Listing/Carousel",
6
+ component: "road-carousel",
8
7
  subcomponents: {
9
- 'road-carousel-item': 'road-carousel-item',
8
+ "road-carousel-item": "road-carousel-item",
10
9
  },
11
10
  parameters: {
12
11
  actions: {
13
12
  handles: [
14
- 'roadslidesdidload',
15
- 'roadslidetap',
16
- 'roadslidedoubletap',
17
- 'roadslidewillchange',
18
- 'roadslidedidchange',
19
- 'roadslidenextstart',
20
- 'roadslideprevstart',
21
- 'roadslidenextend',
22
- 'roadslideprevend',
23
- 'roadslidetransitionstart',
24
- 'roadslidetransitionend',
25
- 'roadslidedrag',
26
- 'roadslidereachstart',
27
- 'roadslidereachend',
28
- 'roadslidetouchstart',
29
- 'roadslidetouchend',
13
+ "roadslidesdidload",
14
+ "roadslidetap",
15
+ "roadslidedoubletap",
16
+ "roadslidewillchange",
17
+ "roadslidedidchange",
18
+ "roadslidenextstart",
19
+ "roadslideprevstart",
20
+ "roadslidenextend",
21
+ "roadslideprevend",
22
+ "roadslidetransitionstart",
23
+ "roadslidetransitionend",
24
+ "roadslidedrag",
25
+ "roadslidereachstart",
26
+ "roadslidereachend",
27
+ "roadslidetouchstart",
28
+ "roadslidetouchend",
30
29
  ],
31
30
  },
32
31
  docs: {
@@ -37,112 +36,172 @@ export default {
37
36
  },
38
37
  argTypes: {
39
38
  pager: {
40
- control: 'boolean',
41
- description: 'Shows pagination bullets below the carousel.',
39
+ control: "boolean",
40
+ description: "Shows pagination bullets below the carousel.",
41
+ },
42
+ pagertype: {
43
+ description: "Progress calculation base for step display.\n",
44
+ options: ["bullets", "fraction"],
45
+ control: {
46
+ type: "select",
47
+ },
48
+ table: {
49
+ defaultValue: { summary: "bullets" },
50
+ },
42
51
  },
43
52
  arrows: {
44
- control: 'boolean',
45
- description: 'Displays navigation arrows for manual slide transitions.',
53
+ control: "boolean",
54
+ description: "Displays navigation arrows for manual slide transitions.",
46
55
  },
47
56
  options: {
48
- control: 'object',
49
- description: 'Configuration object for the Swiper instance.',
57
+ control: "object",
58
+ description: "Configuration object for the Swiper instance.",
50
59
  },
51
- ' ': {
52
- control: 'text',
53
- description: 'Content inside the carousel, usually multiple `<road-carousel-item>` elements.',
60
+ " ": {
61
+ control: "text",
62
+ description:
63
+ "Content inside the carousel, usually multiple `<road-carousel-item>` elements.",
54
64
  },
55
65
  // 🔹 Méthodes accessibles depuis Storybook
56
66
  getActiveIndex: {
57
- description: 'Returns the index of the active slide.',
58
- table: { category: 'Methods', type: { summary: '() => Promise<number>' } },
67
+ description: "Returns the index of the active slide.",
68
+ table: {
69
+ category: "Methods",
70
+ type: { summary: "() => Promise<number>" },
71
+ },
59
72
  },
60
73
  getPreviousIndex: {
61
- description: 'Returns the index of the previous slide.',
62
- table: { category: 'Methods', type: { summary: '() => Promise<number>' } },
74
+ description: "Returns the index of the previous slide.",
75
+ table: {
76
+ category: "Methods",
77
+ type: { summary: "() => Promise<number>" },
78
+ },
63
79
  },
64
80
  getSwiper: {
65
- description: 'Returns the Swiper instance. See Swiper API for more details.',
66
- table: { category: 'Methods', type: { summary: '() => Promise<any>' } },
81
+ description:
82
+ "Returns the Swiper instance. See Swiper API for more details.",
83
+ table: { category: "Methods", type: { summary: "() => Promise<any>" } },
67
84
  },
68
85
  isBeginning: {
69
- description: 'Checks if the current slide is the first slide.',
70
- table: { category: 'Methods', type: { summary: '() => Promise<boolean>' } },
86
+ description: "Checks if the current slide is the first slide.",
87
+ table: {
88
+ category: "Methods",
89
+ type: { summary: "() => Promise<boolean>" },
90
+ },
71
91
  },
72
92
  isEnd: {
73
- description: 'Checks if the current slide is the last slide.',
74
- table: { category: 'Methods', type: { summary: '() => Promise<boolean>' } },
93
+ description: "Checks if the current slide is the last slide.",
94
+ table: {
95
+ category: "Methods",
96
+ type: { summary: "() => Promise<boolean>" },
97
+ },
75
98
  },
76
99
  length: {
77
- description: 'Returns the total number of slides.',
78
- table: { category: 'Methods', type: { summary: '() => Promise<number>' } },
100
+ description: "Returns the total number of slides.",
101
+ table: {
102
+ category: "Methods",
103
+ type: { summary: "() => Promise<number>" },
104
+ },
79
105
  },
80
106
  lockSwipeToNext: {
81
- description: 'Locks the ability to slide to the next slide.',
82
- table: { category: 'Methods', type: { summary: '(lock: boolean) => Promise<void>' } },
107
+ description: "Locks the ability to slide to the next slide.",
108
+ table: {
109
+ category: "Methods",
110
+ type: { summary: "(lock: boolean) => Promise<void>" },
111
+ },
83
112
  },
84
113
  lockSwipeToPrev: {
85
- description: 'Locks the ability to slide to the previous slide.',
86
- table: { category: 'Methods', type: { summary: '(lock: boolean) => Promise<void>' } },
114
+ description: "Locks the ability to slide to the previous slide.",
115
+ table: {
116
+ category: "Methods",
117
+ type: { summary: "(lock: boolean) => Promise<void>" },
118
+ },
87
119
  },
88
120
  lockSwipes: {
89
- description: 'Locks the ability to swipe in either direction.',
90
- table: { category: 'Methods', type: { summary: '(lock: boolean) => Promise<void>' } },
121
+ description: "Locks the ability to swipe in either direction.",
122
+ table: {
123
+ category: "Methods",
124
+ type: { summary: "(lock: boolean) => Promise<void>" },
125
+ },
91
126
  },
92
127
  slideNext: {
93
- description: 'Transitions to the next slide.',
94
- table: { category: 'Methods', type: { summary: '(speed?: number, runCallbacks?: boolean) => Promise<void>' } },
128
+ description: "Transitions to the next slide.",
129
+ table: {
130
+ category: "Methods",
131
+ type: {
132
+ summary: "(speed?: number, runCallbacks?: boolean) => Promise<void>",
133
+ },
134
+ },
95
135
  },
96
136
  slidePrev: {
97
- description: 'Transitions to the previous slide.',
98
- table: { category: 'Methods', type: { summary: '(speed?: number, runCallbacks?: boolean) => Promise<void>' } },
137
+ description: "Transitions to the previous slide.",
138
+ table: {
139
+ category: "Methods",
140
+ type: {
141
+ summary: "(speed?: number, runCallbacks?: boolean) => Promise<void>",
142
+ },
143
+ },
99
144
  },
100
145
  slideTo: {
101
- description: 'Transitions to a specified slide index.',
102
- table: { category: 'Methods', type: { summary: '(index: number, speed?: number, runCallbacks?: boolean) => Promise<void>' } },
146
+ description: "Transitions to a specified slide index.",
147
+ table: {
148
+ category: "Methods",
149
+ type: {
150
+ summary:
151
+ "(index: number, speed?: number, runCallbacks?: boolean) => Promise<void>",
152
+ },
153
+ },
103
154
  },
104
155
  startAutoplay: {
105
- description: 'Starts automatic slide transition.',
106
- table: { category: 'Methods', type: { summary: '() => Promise<void>' } },
156
+ description: "Starts automatic slide transition.",
157
+ table: { category: "Methods", type: { summary: "() => Promise<void>" } },
107
158
  },
108
159
  stopAutoplay: {
109
- description: 'Stops automatic slide transition.',
110
- table: { category: 'Methods', type: { summary: '() => Promise<void>' } },
160
+ description: "Stops automatic slide transition.",
161
+ table: { category: "Methods", type: { summary: "() => Promise<void>" } },
111
162
  },
112
163
  update: {
113
- description: 'Updates the carousel when slides are added or removed.',
114
- table: { category: 'Methods', type: { summary: '() => Promise<void>' } },
164
+ description: "Updates the carousel when slides are added or removed.",
165
+ table: { category: "Methods", type: { summary: "() => Promise<void>" } },
115
166
  },
116
167
  updateAutoHeight: {
117
- description: 'Updates carousel height when `autoHeight` is enabled.',
118
- table: { category: 'Methods', type: { summary: '(speed?: number) => Promise<void>' } },
168
+ description: "Updates carousel height when `autoHeight` is enabled.",
169
+ table: {
170
+ category: "Methods",
171
+ type: { summary: "(speed?: number) => Promise<void>" },
172
+ },
119
173
  },
120
174
  },
121
175
  args: {
122
- pager: false,
176
+ pager: true,
177
+ pagertype: "fraction",
123
178
  arrows: false,
124
- ' ': `
179
+ " ": `
125
180
  <road-carousel-item>
126
- <road-img src="https://via.placeholder.com/800x400?text=Slide+1" alt="Slide 1"></road-img>
181
+ <road-img src="https://placehold.co/800x400?text=Slide+1" alt="Slide 1"></road-img>
127
182
  </road-carousel-item>
128
183
  <road-carousel-item>
129
- <road-img src="https://via.placeholder.com/800x400?text=Slide+2" alt="Slide 2"></road-img>
184
+ <road-img src="https://placehold.co/800x400?text=Slide+2" alt="Slide 2"></road-img>
130
185
  </road-carousel-item>
131
186
  <road-carousel-item>
132
- <road-img src="https://via.placeholder.com/800x400?text=Slide+3" alt="Slide 3"></road-img>
187
+ <road-img src="https://placehold.co/800x400?text=Slide+3" alt="Slide 3"></road-img>
133
188
  </road-carousel-item>
134
189
  `,
135
190
  },
136
191
  };
137
192
 
138
- const Template = (args) => html`
139
- <road-carousel
140
- ?pager="${args.pager}"
141
- ?arrows="${args.arrows}"
142
- .options="${args.options}">
143
- ${unsafeHTML(args[' '])}
144
- </road-carousel>
145
- `;
193
+ const Template = (args) => {
194
+ return html`
195
+ <road-carousel
196
+ pager="${args.pager}"
197
+ pagertype="${args.pagertype}"
198
+ arrows="${args.arrows}"
199
+ options="${args.options}"
200
+ >
201
+ ${unsafeHTML(args[" "])}
202
+ </road-carousel>
203
+ `;
204
+ };
146
205
 
147
206
  export const Playground = Template.bind({});
148
207
 
@@ -74,8 +74,13 @@
74
74
  /* DRAWER
75
75
  -------------------- */
76
76
 
77
- .drawer-dialog {
78
- position: relative;
77
+ .road-drawer-wrapper {
78
+ width: 100%;
79
+ }
80
+
81
+ .road-drawer-wrapper .drawer-dialog {
82
+ position: absolute;
83
+ right: 0;
79
84
  width: 100%;
80
85
  pointer-events: none;
81
86
  transition: transform 0.3s ease-out;
@@ -89,7 +94,7 @@
89
94
  justify-content: flex-end;
90
95
  }
91
96
 
92
- :host(.drawer-right) .drawer-dialog {
97
+ :host(.drawer-right) .road-drawer-wrapper .drawer-dialog {
93
98
  transform: translateX(100%);
94
99
  }
95
100
 
@@ -101,7 +106,7 @@
101
106
  align-items: flex-end;
102
107
  }
103
108
 
104
- :host(.drawer-bottom) .drawer-dialog {
109
+ :host(.drawer-bottom) .road-drawer-wrapper .drawer-dialog {
105
110
  width: 100%;
106
111
  max-height: var(--max-height);
107
112
  transform: translateY(100%);
@@ -266,6 +271,6 @@
266
271
  opacity: 1;
267
272
  }
268
273
 
269
- :host(.drawer-open) .drawer-dialog {
274
+ :host(.drawer-open) .road-drawer-wrapper .drawer-dialog {
270
275
  transform: none;
271
276
  }