@iamproperty/components 7.7.1--beta15 → 7.7.1--beta17

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 (501) hide show
  1. package/README.md +25 -2
  2. package/assets/css/components/actionbar.component.css +1 -1
  3. package/assets/css/components/actionbar.component.css.map +1 -1
  4. package/assets/css/components/address-lookup.component.css +1 -1
  5. package/assets/css/components/address-lookup.component.css.map +1 -1
  6. package/assets/css/components/advanced-select.component.css +1 -0
  7. package/assets/css/components/advanced-select.component.css.map +1 -0
  8. package/assets/css/components/applied-filters.css +1 -1
  9. package/assets/css/components/applied-filters.css.map +1 -1
  10. package/assets/css/components/barchart.component.css +1 -1
  11. package/assets/css/components/barchart.component.css.map +1 -1
  12. package/assets/css/components/bento-grid.global.css +1 -1
  13. package/assets/css/components/bento-grid.global.css.map +1 -1
  14. package/assets/css/components/calendar.component.css +1 -1
  15. package/assets/css/components/calendar.component.css.map +1 -1
  16. package/assets/css/components/calendar.config.css +1 -1
  17. package/assets/css/components/calendar.config.css.map +1 -1
  18. package/assets/css/components/card.component.css +1 -1
  19. package/assets/css/components/card.component.css.map +1 -1
  20. package/assets/css/components/card.module.css +1 -1
  21. package/assets/css/components/card.module.css.map +1 -1
  22. package/assets/css/components/carousel.component.css +1 -1
  23. package/assets/css/components/carousel.component.css.map +1 -1
  24. package/assets/css/components/carousel.config.css +1 -1
  25. package/assets/css/components/carousel.config.css.map +1 -1
  26. package/assets/css/components/charts.config.css +1 -1
  27. package/assets/css/components/charts.config.css.map +1 -1
  28. package/assets/css/components/collapsible-side.css +1 -1
  29. package/assets/css/components/collapsible-side.css.map +1 -1
  30. package/assets/css/components/config.component.css +1 -1
  31. package/assets/css/components/config.component.css.map +1 -1
  32. package/assets/css/components/content.component.css +1 -1
  33. package/assets/css/components/content.component.css.map +1 -1
  34. package/assets/css/components/doughnutchart.component.css +1 -1
  35. package/assets/css/components/doughnutchart.component.css.map +1 -1
  36. package/assets/css/components/fileupload.css +1 -1
  37. package/assets/css/components/fileupload.css.map +1 -1
  38. package/assets/css/components/filter-card.component.css +1 -1
  39. package/assets/css/components/filter-card.component.css.map +1 -1
  40. package/assets/css/components/header.component.css +1 -1
  41. package/assets/css/components/header.component.css.map +1 -1
  42. package/assets/css/components/input.component.css +1 -1
  43. package/assets/css/components/input.component.css.map +1 -1
  44. package/assets/css/components/menu.component.css +1 -1
  45. package/assets/css/components/menu.component.css.map +1 -1
  46. package/assets/css/components/menu.global.css +1 -1
  47. package/assets/css/components/menu.global.css.map +1 -1
  48. package/assets/css/components/milestone.css +1 -1
  49. package/assets/css/components/milestone.css.map +1 -1
  50. package/assets/css/components/modal.component.css +1 -1
  51. package/assets/css/components/modal.component.css.map +1 -1
  52. package/assets/css/components/multi-step-modal.component.css +1 -1
  53. package/assets/css/components/multi-step-modal.component.css.map +1 -1
  54. package/assets/css/components/multiselect.css +1 -1
  55. package/assets/css/components/multiselect.css.map +1 -1
  56. package/assets/css/components/nav.component.css +1 -1
  57. package/assets/css/components/nav.component.css.map +1 -1
  58. package/assets/css/components/nav.docs.css +1 -1
  59. package/assets/css/components/nav.docs.css.map +1 -1
  60. package/assets/css/components/nav.global.css +1 -1
  61. package/assets/css/components/nav.global.css.map +1 -1
  62. package/assets/css/components/notification.css +1 -1
  63. package/assets/css/components/notification.css.map +1 -1
  64. package/assets/css/components/pagination.css +1 -1
  65. package/assets/css/components/pagination.css.map +1 -1
  66. package/assets/css/components/password.component.css +1 -1
  67. package/assets/css/components/password.component.css.map +1 -1
  68. package/assets/css/components/popover.component.css +1 -1
  69. package/assets/css/components/popover.component.css.map +1 -1
  70. package/assets/css/components/rank.component.css +1 -1
  71. package/assets/css/components/rank.component.css.map +1 -1
  72. package/assets/css/components/rankings.component.css +1 -1
  73. package/assets/css/components/rankings.component.css.map +1 -1
  74. package/assets/css/components/rankings.global.css +1 -1
  75. package/assets/css/components/rankings.global.css.map +1 -1
  76. package/assets/css/components/record-card.component.css +1 -1
  77. package/assets/css/components/record-card.component.css.map +1 -1
  78. package/assets/css/components/search.component.css +1 -0
  79. package/assets/css/components/search.component.css.map +1 -0
  80. package/assets/css/components/slider.css +1 -1
  81. package/assets/css/components/slider.css.map +1 -1
  82. package/assets/css/components/split-button.component.css +1 -1
  83. package/assets/css/components/split-button.component.css.map +1 -1
  84. package/assets/css/components/std-nav-standalone.component.css +1 -0
  85. package/assets/css/components/std-nav-standalone.component.css.map +1 -0
  86. package/assets/css/components/table-basic.global.css +1 -1
  87. package/assets/css/components/table-basic.global.css.map +1 -1
  88. package/assets/css/components/table.global.css +1 -1
  89. package/assets/css/components/table.global.css.map +1 -1
  90. package/assets/css/components/tabs.component.css +1 -1
  91. package/assets/css/components/tabs.component.css.map +1 -1
  92. package/assets/css/components/tag.component.css +1 -1
  93. package/assets/css/components/tag.component.css.map +1 -1
  94. package/assets/css/components/video-card.component.css +1 -1
  95. package/assets/css/components/video-card.component.css.map +1 -1
  96. package/assets/css/components/video-modal.component.css +1 -1
  97. package/assets/css/components/video-modal.component.css.map +1 -1
  98. package/assets/css/components/video.component.css +1 -1
  99. package/assets/css/components/video.component.css.map +1 -1
  100. package/assets/css/core.min.css +1 -1
  101. package/assets/css/core.min.css.map +1 -1
  102. package/assets/css/elements/badge-tag.css +1 -1
  103. package/assets/css/elements/badge-tag.css.map +1 -1
  104. package/assets/css/elements/buttons--global.css +1 -1
  105. package/assets/css/elements/buttons--global.css.map +1 -1
  106. package/assets/css/elements/buttons--special.css +1 -1
  107. package/assets/css/elements/buttons--special.css.map +1 -1
  108. package/assets/css/elements/buttons.css +1 -1
  109. package/assets/css/elements/buttons.css.map +1 -1
  110. package/assets/css/elements/container.css +1 -1
  111. package/assets/css/elements/container.css.map +1 -1
  112. package/assets/css/elements/details.css +1 -1
  113. package/assets/css/elements/details.css.map +1 -1
  114. package/assets/css/elements/dialog.css +1 -1
  115. package/assets/css/elements/dialog.css.map +1 -1
  116. package/assets/css/elements/dropdown.css +1 -1
  117. package/assets/css/elements/dropdown.css.map +1 -1
  118. package/assets/css/elements/forms.css +1 -1
  119. package/assets/css/elements/forms.css.map +1 -1
  120. package/assets/css/elements/input.css +1 -1
  121. package/assets/css/elements/input.css.map +1 -1
  122. package/assets/css/elements/links--collapsible-side.css +1 -1
  123. package/assets/css/elements/links--collapsible-side.css.map +1 -1
  124. package/assets/css/elements/links--global.css +1 -1
  125. package/assets/css/elements/links--global.css.map +1 -1
  126. package/assets/css/elements/links.css +1 -1
  127. package/assets/css/elements/links.css.map +1 -1
  128. package/assets/css/elements/lists--tick-list.css +1 -1
  129. package/assets/css/elements/lists--tick-list.css.map +1 -1
  130. package/assets/css/elements/modal.css +1 -1
  131. package/assets/css/elements/modal.css.map +1 -1
  132. package/assets/css/elements/popover.css +1 -1
  133. package/assets/css/elements/popover.css.map +1 -1
  134. package/assets/css/elements/prefix.css +1 -1
  135. package/assets/css/elements/prefix.css.map +1 -1
  136. package/assets/css/elements/select.css +1 -0
  137. package/assets/css/elements/select.css.map +1 -0
  138. package/assets/css/elements/tooltips.css +1 -1
  139. package/assets/css/elements/tooltips.css.map +1 -1
  140. package/assets/css/elements/type.css +1 -1
  141. package/assets/css/elements/type.css.map +1 -1
  142. package/assets/css/style.min.css +1 -1
  143. package/assets/css/style.min.css.map +1 -1
  144. package/assets/js/components/accordion/accordion.component.min.js +1 -1
  145. package/assets/js/components/actionbar/actionbar.component.js +5 -3
  146. package/assets/js/components/actionbar/actionbar.component.min.js +10 -8
  147. package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
  148. package/assets/js/components/address-lookup/address-lookup.component.js +12 -6
  149. package/assets/js/components/address-lookup/address-lookup.component.min.js +9 -7
  150. package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
  151. package/assets/js/components/advanced-select/advanced-select.component.js +8 -17
  152. package/assets/js/components/advanced-select/advanced-select.component.min.js +7 -17
  153. package/assets/js/components/advanced-select/advanced-select.component.min.js.map +1 -1
  154. package/assets/js/components/applied-filters/applied-filters.component.min.js +2 -2
  155. package/assets/js/components/barchart/barchart.component.min.js +5 -5
  156. package/assets/js/components/bento-grid/bento-grid.component.min.js +2 -2
  157. package/assets/js/components/button/button.component.min.js +1 -1
  158. package/assets/js/components/calendar/calendar.component.min.js +5 -5
  159. package/assets/js/components/card/card.component.js +1 -0
  160. package/assets/js/components/card/card.component.min.js +21 -18
  161. package/assets/js/components/card/card.component.min.js.map +1 -1
  162. package/assets/js/components/carousel/carousel.component.js +144 -52
  163. package/assets/js/components/carousel/carousel.component.min.js +15 -21
  164. package/assets/js/components/carousel/carousel.component.min.js.map +1 -1
  165. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +3 -3
  166. package/assets/js/components/config/config.component.min.js +8 -8
  167. package/assets/js/components/content/content.component.js +40 -3
  168. package/assets/js/components/content/content.component.min.js +4 -4
  169. package/assets/js/components/content/content.component.min.js.map +1 -1
  170. package/assets/js/components/darkmode/darkmode.component.min.js +1 -1
  171. package/assets/js/components/doughnutchart/doughnutchart.component.min.js +7 -7
  172. package/assets/js/components/doughnutchart/doughnutchart.component.min.js.map +1 -1
  173. package/assets/js/components/fileupload/fileupload.component.min.js +4 -4
  174. package/assets/js/components/filter-card/filter-card.component.min.js +20 -18
  175. package/assets/js/components/filter-card/filter-card.component.min.js.map +1 -1
  176. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  177. package/assets/js/components/form/form.component.min.js +1 -1
  178. package/assets/js/components/header/header.component.min.js +2 -2
  179. package/assets/js/components/inline-edit/inline-edit.component.min.js +1 -1
  180. package/assets/js/components/input/input.component.min.js +2 -2
  181. package/assets/js/components/input-range/input-range.component.min.js +1 -1
  182. package/assets/js/components/marketing/marketing.component.min.js +1 -1
  183. package/assets/js/components/menu/menu.component.js +1 -0
  184. package/assets/js/components/menu/menu.component.min.js +4 -4
  185. package/assets/js/components/menu/menu.component.min.js.map +1 -1
  186. package/assets/js/components/milestone/milestone.component.min.js +1 -1
  187. package/assets/js/components/milestone-group/milestone-group.component.min.js +1 -1
  188. package/assets/js/components/modal/modal.component.js +3 -3
  189. package/assets/js/components/modal/modal.component.min.js +4 -4
  190. package/assets/js/components/modal/modal.component.min.js.map +1 -1
  191. package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
  192. package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +4 -4
  193. package/assets/js/components/multiselect/multiselect.component.min.js +4 -4
  194. package/assets/js/components/multiselect/multiselect.component.min.js.map +1 -1
  195. package/assets/js/components/nav/nav.component.js +3 -3
  196. package/assets/js/components/nav/nav.component.min.js +6 -7
  197. package/assets/js/components/nav/nav.component.min.js.map +1 -1
  198. package/assets/js/components/notification/notification.component.min.js +2 -2
  199. package/assets/js/components/pagination/pagination.component.min.js +4 -4
  200. package/assets/js/components/password/password.component.min.js +5 -5
  201. package/assets/js/components/popover/popover.component.min.js +4 -4
  202. package/assets/js/components/rank/rank.component.min.js +1 -1
  203. package/assets/js/components/rankings/rankings.component.min.js +6 -6
  204. package/assets/js/components/rating/rating.component.min.js +1 -1
  205. package/assets/js/components/record-card/record-card.component.min.js +18 -16
  206. package/assets/js/components/record-card/record-card.component.min.js.map +1 -1
  207. package/assets/js/components/search/search.component.js +8 -13
  208. package/assets/js/components/search/search.component.min.js +9 -18
  209. package/assets/js/components/search/search.component.min.js.map +1 -1
  210. package/assets/js/components/slider/slider.component.min.js +3 -3
  211. package/assets/js/components/split-button/split-button.component.js +1 -1
  212. package/assets/js/components/split-button/split-button.component.min.js +6 -6
  213. package/assets/js/components/split-button/split-button.component.min.js.map +1 -1
  214. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +11 -9
  215. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js.map +1 -1
  216. package/assets/js/components/std-nav/std-nav.component.js +36 -88
  217. package/assets/js/components/std-nav/std-nav.component.min.js +15 -18
  218. package/assets/js/components/std-nav/std-nav.component.min.js.map +1 -1
  219. package/assets/js/components/std-nav-standalone/std-nav-standalone.component.js +65 -0
  220. package/assets/js/components/std-nav-standalone/std-nav-standalone.component.min.js +20 -0
  221. package/assets/js/components/std-nav-standalone/std-nav-standalone.component.min.js.map +1 -0
  222. package/assets/js/components/table/table.component.min.js +6 -6
  223. package/assets/js/components/table/table.component.min.js.map +1 -1
  224. package/assets/js/components/table-ajax/table-ajax.component.min.js +7 -7
  225. package/assets/js/components/table-ajax/table-ajax.component.min.js.map +1 -1
  226. package/assets/js/components/table-basic/table-basic.component.min.js +2 -2
  227. package/assets/js/components/table-no-submit/table-no-submit.component.min.js +4 -4
  228. package/assets/js/components/table-no-submit/table-no-submit.component.min.js.map +1 -1
  229. package/assets/js/components/table-submit/table-submit.component.min.js +6 -6
  230. package/assets/js/components/table-submit/table-submit.component.min.js.map +1 -1
  231. package/assets/js/components/tabs/tabs.component.min.js +4 -4
  232. package/assets/js/components/tabs/tabs.component.min.js.map +1 -1
  233. package/assets/js/components/tag/tag.component.min.js +3 -3
  234. package/assets/js/components/tooltip/tooltip.component.min.js +1 -1
  235. package/assets/js/components/video/video.component.min.js +5 -5
  236. package/assets/js/components/video-card/video-card.component.min.js +18 -16
  237. package/assets/js/components/video-card/video-card.component.min.js.map +1 -1
  238. package/assets/js/components/video-modal/video-modal.component.min.js +5 -5
  239. package/assets/js/components/word-count/word-count.component.min.js +1 -1
  240. package/assets/js/modules/advanced-select.js +30 -4
  241. package/assets/js/modules/card.module.js +16 -14
  242. package/assets/js/modules/carousel.js +11 -11
  243. package/assets/js/modules/nav.js +113 -0
  244. package/assets/js/modules/tabs.js +2 -1
  245. package/assets/js/scripts.bundle.js +1 -1
  246. package/assets/js/scripts.bundle.min.js +1 -1
  247. package/assets/sass/_corefiles.scss +1 -0
  248. package/assets/sass/_utilities.scss +1 -0
  249. package/assets/sass/components/actionbar.component.scss +15 -1
  250. package/assets/sass/components/address-lookup.component.scss +134 -2
  251. package/assets/sass/components/advanced-select.component.scss +59 -0
  252. package/assets/sass/components/bento-grid.global.scss +2 -2
  253. package/assets/sass/components/calendar.component.scss +1 -1
  254. package/assets/sass/components/calendar.config.scss +1 -1
  255. package/assets/sass/components/card.component.scss +29 -2
  256. package/assets/sass/components/card.module.scss +11 -5
  257. package/assets/sass/components/carousel.component.scss +535 -518
  258. package/assets/sass/components/carousel.config.scss +5 -45
  259. package/assets/sass/components/charts.config.scss +1 -1
  260. package/assets/sass/components/config.component.scss +1 -1
  261. package/assets/sass/components/filter-card.component.scss +5 -5
  262. package/assets/sass/components/header.component.scss +1 -1
  263. package/assets/sass/components/menu.component.scss +16 -11
  264. package/assets/sass/components/menu.global.scss +0 -11
  265. package/assets/sass/components/milestone.scss +2 -2
  266. package/assets/sass/components/modal.component.scss +1 -0
  267. package/assets/sass/components/multiselect.scss +8 -0
  268. package/assets/sass/components/nav.component.scss +22 -11
  269. package/assets/sass/components/nav.docs.scss +1 -2
  270. package/assets/sass/components/nav.global.scss +223 -47
  271. package/assets/sass/components/pagination.scss +2 -2
  272. package/assets/sass/components/popover.component.scss +37 -2
  273. package/assets/sass/components/search.component.scss +2 -0
  274. package/assets/sass/components/split-button.component.scss +3 -1
  275. package/assets/sass/components/std-nav-standalone.component.scss +228 -0
  276. package/assets/sass/components/table-basic.global.scss +3 -3
  277. package/assets/sass/components/table.global.scss +1 -1
  278. package/assets/sass/components/video.component.scss +1 -1
  279. package/assets/sass/elements/badge-tag.css +2 -2
  280. package/assets/sass/elements/buttons--global.css +4 -4
  281. package/assets/sass/elements/buttons--special.css +1 -52
  282. package/assets/sass/elements/container.scss +1 -1
  283. package/assets/sass/elements/details.css +3 -3
  284. package/assets/sass/elements/dialog.scss +9 -5
  285. package/assets/sass/elements/dropdown.css +188 -44
  286. package/assets/sass/elements/forms.scss +36 -522
  287. package/assets/sass/elements/input.scss +0 -7
  288. package/assets/sass/elements/links--collapsible-side.scss +1 -1
  289. package/assets/sass/elements/links--global.scss +5 -1
  290. package/assets/sass/elements/lists--tick-list.scss +2 -2
  291. package/assets/sass/elements/modal.scss +1 -1
  292. package/assets/sass/elements/popover.scss +1 -1
  293. package/assets/sass/elements/prefix.scss +1 -1
  294. package/assets/sass/elements/select.scss +238 -0
  295. package/assets/sass/elements/tooltips.scss +1 -1
  296. package/assets/sass/elements/type.css +31 -1
  297. package/assets/sass/email.scss +1 -1
  298. package/assets/sass/error.scss +0 -1
  299. package/assets/sass/foundations/debug.scss +6 -0
  300. package/assets/sass/foundations/reboot.scss +81 -1
  301. package/assets/sass/foundations/root.scss +19 -1
  302. package/assets/sass/main.scss +0 -1
  303. package/assets/sass/utilities/colours.scss +4 -1
  304. package/assets/sass/{_grid.scss → utilities/grid.scss} +120 -80
  305. package/assets/ts/components/actionbar/actionbar.component.ts +5 -3
  306. package/assets/ts/components/address-lookup/address-lookup.component.ts +18 -6
  307. package/assets/ts/components/advanced-select/advanced-select.component.ts +12 -17
  308. package/assets/ts/components/card/card.component.ts +1 -0
  309. package/assets/ts/components/carousel/carousel.component.ts +189 -58
  310. package/assets/ts/components/content/content.component.ts +62 -5
  311. package/assets/ts/components/menu/menu.component.ts +4 -0
  312. package/assets/ts/components/modal/modal.component.ts +3 -3
  313. package/assets/ts/components/nav/nav.component.ts +4 -7
  314. package/assets/ts/components/search/search.component.ts +13 -13
  315. package/assets/ts/components/split-button/split-button.component.ts +1 -1
  316. package/assets/ts/components/std-address-lookup/std-address-lookup.component.ts +0 -1
  317. package/assets/ts/components/std-nav/std-nav.component.ts +44 -104
  318. package/assets/ts/components/std-nav-standalone/std-nav-standalone.component.ts +85 -0
  319. package/assets/ts/modules/advanced-select.ts +47 -7
  320. package/assets/ts/modules/card.module.ts +16 -14
  321. package/assets/ts/modules/carousel.ts +11 -11
  322. package/assets/ts/modules/nav.ts +135 -0
  323. package/assets/ts/modules/tabs.ts +1 -1
  324. package/dist/components.es.js +27 -27
  325. package/dist/components.umd.js +291 -290
  326. package/package.json +11 -10
  327. package/src/components/STDNavStandalone/STDNavStandalone.vue +22 -0
  328. package/assets/bootstrap/LICENSE +0 -22
  329. package/assets/bootstrap/README.md +0 -247
  330. package/assets/bootstrap/js/index.esm.js +0 -19
  331. package/assets/bootstrap/js/index.umd.js +0 -34
  332. package/assets/bootstrap/js/src/alert.js +0 -87
  333. package/assets/bootstrap/js/src/base-component.js +0 -85
  334. package/assets/bootstrap/js/src/button.js +0 -72
  335. package/assets/bootstrap/js/src/carousel.js +0 -475
  336. package/assets/bootstrap/js/src/collapse.js +0 -302
  337. package/assets/bootstrap/js/src/dom/data.js +0 -55
  338. package/assets/bootstrap/js/src/dom/event-handler.js +0 -320
  339. package/assets/bootstrap/js/src/dom/manipulator.js +0 -71
  340. package/assets/bootstrap/js/src/dom/selector-engine.js +0 -83
  341. package/assets/bootstrap/js/src/dropdown.js +0 -445
  342. package/assets/bootstrap/js/src/modal.js +0 -373
  343. package/assets/bootstrap/js/src/offcanvas.js +0 -283
  344. package/assets/bootstrap/js/src/popover.js +0 -97
  345. package/assets/bootstrap/js/src/scrollspy.js +0 -290
  346. package/assets/bootstrap/js/src/tab.js +0 -307
  347. package/assets/bootstrap/js/src/toast.js +0 -220
  348. package/assets/bootstrap/js/src/tooltip.js +0 -651
  349. package/assets/bootstrap/js/src/util/backdrop.js +0 -149
  350. package/assets/bootstrap/js/src/util/component-functions.js +0 -34
  351. package/assets/bootstrap/js/src/util/config.js +0 -66
  352. package/assets/bootstrap/js/src/util/focustrap.js +0 -115
  353. package/assets/bootstrap/js/src/util/index.js +0 -336
  354. package/assets/bootstrap/js/src/util/sanitizer.js +0 -118
  355. package/assets/bootstrap/js/src/util/scrollbar.js +0 -114
  356. package/assets/bootstrap/js/src/util/swipe.js +0 -146
  357. package/assets/bootstrap/js/src/util/template-factory.js +0 -160
  358. package/assets/bootstrap/package.json +0 -180
  359. package/assets/bootstrap/scss/_accordion.scss +0 -146
  360. package/assets/bootstrap/scss/_alert.scss +0 -71
  361. package/assets/bootstrap/scss/_badge.scss +0 -38
  362. package/assets/bootstrap/scss/_breadcrumb.scss +0 -40
  363. package/assets/bootstrap/scss/_button-group.scss +0 -142
  364. package/assets/bootstrap/scss/_buttons.scss +0 -186
  365. package/assets/bootstrap/scss/_card.scss +0 -234
  366. package/assets/bootstrap/scss/_carousel.scss +0 -229
  367. package/assets/bootstrap/scss/_close.scss +0 -40
  368. package/assets/bootstrap/scss/_containers.scss +0 -41
  369. package/assets/bootstrap/scss/_dropdown.scss +0 -248
  370. package/assets/bootstrap/scss/_forms.scss +0 -9
  371. package/assets/bootstrap/scss/_functions.scss +0 -302
  372. package/assets/bootstrap/scss/_grid.scss +0 -33
  373. package/assets/bootstrap/scss/_helpers.scss +0 -10
  374. package/assets/bootstrap/scss/_images.scss +0 -42
  375. package/assets/bootstrap/scss/_list-group.scss +0 -191
  376. package/assets/bootstrap/scss/_maps.scss +0 -54
  377. package/assets/bootstrap/scss/_mixins.scss +0 -43
  378. package/assets/bootstrap/scss/_modal.scss +0 -237
  379. package/assets/bootstrap/scss/_nav.scss +0 -172
  380. package/assets/bootstrap/scss/_navbar.scss +0 -276
  381. package/assets/bootstrap/scss/_offcanvas.scss +0 -143
  382. package/assets/bootstrap/scss/_pagination.scss +0 -109
  383. package/assets/bootstrap/scss/_placeholders.scss +0 -51
  384. package/assets/bootstrap/scss/_popover.scss +0 -196
  385. package/assets/bootstrap/scss/_progress.scss +0 -59
  386. package/assets/bootstrap/scss/_reboot.scss +0 -610
  387. package/assets/bootstrap/scss/_root.scss +0 -73
  388. package/assets/bootstrap/scss/_spinners.scss +0 -85
  389. package/assets/bootstrap/scss/_tables.scss +0 -164
  390. package/assets/bootstrap/scss/_toasts.scss +0 -70
  391. package/assets/bootstrap/scss/_tooltip.scss +0 -120
  392. package/assets/bootstrap/scss/_transitions.scss +0 -27
  393. package/assets/bootstrap/scss/_type.scss +0 -106
  394. package/assets/bootstrap/scss/_utilities.scss +0 -647
  395. package/assets/bootstrap/scss/_variables-dark.scss +0 -87
  396. package/assets/bootstrap/scss/_variables.scss +0 -1633
  397. package/assets/bootstrap/scss/bootstrap-grid.scss +0 -64
  398. package/assets/bootstrap/scss/bootstrap-reboot.scss +0 -9
  399. package/assets/bootstrap/scss/bootstrap-utilities.scss +0 -15
  400. package/assets/bootstrap/scss/bootstrap.scss +0 -51
  401. package/assets/bootstrap/scss/forms/_floating-labels.scss +0 -74
  402. package/assets/bootstrap/scss/forms/_form-check.scss +0 -175
  403. package/assets/bootstrap/scss/forms/_form-control.scss +0 -194
  404. package/assets/bootstrap/scss/forms/_form-range.scss +0 -91
  405. package/assets/bootstrap/scss/forms/_form-select.scss +0 -71
  406. package/assets/bootstrap/scss/forms/_form-text.scss +0 -11
  407. package/assets/bootstrap/scss/forms/_input-group.scss +0 -129
  408. package/assets/bootstrap/scss/forms/_labels.scss +0 -36
  409. package/assets/bootstrap/scss/forms/_validation.scss +0 -12
  410. package/assets/bootstrap/scss/helpers/_clearfix.scss +0 -3
  411. package/assets/bootstrap/scss/helpers/_color-bg.scss +0 -10
  412. package/assets/bootstrap/scss/helpers/_colored-links.scss +0 -12
  413. package/assets/bootstrap/scss/helpers/_focus-ring.scss +0 -5
  414. package/assets/bootstrap/scss/helpers/_icon-link.scss +0 -25
  415. package/assets/bootstrap/scss/helpers/_position.scss +0 -36
  416. package/assets/bootstrap/scss/helpers/_ratio.scss +0 -26
  417. package/assets/bootstrap/scss/helpers/_stacks.scss +0 -15
  418. package/assets/bootstrap/scss/helpers/_stretched-link.scss +0 -15
  419. package/assets/bootstrap/scss/helpers/_text-truncation.scss +0 -7
  420. package/assets/bootstrap/scss/helpers/_visually-hidden.scss +0 -8
  421. package/assets/bootstrap/scss/helpers/_vr.scss +0 -8
  422. package/assets/bootstrap/scss/mixins/_alert.scss +0 -15
  423. package/assets/bootstrap/scss/mixins/_backdrop.scss +0 -14
  424. package/assets/bootstrap/scss/mixins/_banner.scss +0 -9
  425. package/assets/bootstrap/scss/mixins/_border-radius.scss +0 -78
  426. package/assets/bootstrap/scss/mixins/_box-shadow.scss +0 -18
  427. package/assets/bootstrap/scss/mixins/_breakpoints.scss +0 -127
  428. package/assets/bootstrap/scss/mixins/_buttons.scss +0 -70
  429. package/assets/bootstrap/scss/mixins/_caret.scss +0 -64
  430. package/assets/bootstrap/scss/mixins/_clearfix.scss +0 -9
  431. package/assets/bootstrap/scss/mixins/_color-mode.scss +0 -21
  432. package/assets/bootstrap/scss/mixins/_color-scheme.scss +0 -7
  433. package/assets/bootstrap/scss/mixins/_container.scss +0 -11
  434. package/assets/bootstrap/scss/mixins/_deprecate.scss +0 -10
  435. package/assets/bootstrap/scss/mixins/_forms.scss +0 -152
  436. package/assets/bootstrap/scss/mixins/_gradients.scss +0 -47
  437. package/assets/bootstrap/scss/mixins/_grid.scss +0 -151
  438. package/assets/bootstrap/scss/mixins/_image.scss +0 -16
  439. package/assets/bootstrap/scss/mixins/_list-group.scss +0 -24
  440. package/assets/bootstrap/scss/mixins/_lists.scss +0 -7
  441. package/assets/bootstrap/scss/mixins/_pagination.scss +0 -10
  442. package/assets/bootstrap/scss/mixins/_reset-text.scss +0 -17
  443. package/assets/bootstrap/scss/mixins/_resize.scss +0 -6
  444. package/assets/bootstrap/scss/mixins/_table-variants.scss +0 -24
  445. package/assets/bootstrap/scss/mixins/_text-truncate.scss +0 -8
  446. package/assets/bootstrap/scss/mixins/_transition.scss +0 -26
  447. package/assets/bootstrap/scss/mixins/_utilities.scss +0 -97
  448. package/assets/bootstrap/scss/mixins/_visually-hidden.scss +0 -29
  449. package/assets/bootstrap/scss/utilities/_api.scss +0 -47
  450. package/assets/bootstrap/scss/vendor/_rfs.scss +0 -354
  451. package/assets/favicons/README.md +0 -21
  452. package/assets/ts/README.md +0 -12
  453. package/assets/ts/components/actionbar/README.md +0 -56
  454. package/assets/ts/components/applied-filters/README.md +0 -20
  455. package/assets/ts/components/bento-grid/README.md +0 -31
  456. package/assets/ts/components/carousel/README.md +0 -38
  457. package/assets/ts/components/chart/README.md +0 -35
  458. package/assets/ts/components/collapsible-side/README.md +0 -38
  459. package/assets/ts/components/filterlist/README.md +0 -32
  460. package/assets/ts/components/header/README.md +0 -38
  461. package/assets/ts/components/inline-edit/README.md +0 -31
  462. package/assets/ts/components/multiselect/README.md +0 -35
  463. package/assets/ts/components/nav/README.md +0 -57
  464. package/assets/ts/components/notification/README.md +0 -47
  465. package/assets/ts/components/pagination/README.md +0 -37
  466. package/assets/ts/components/search/README.md +0 -35
  467. package/assets/ts/components/slider/README.md +0 -26
  468. package/assets/ts/components/table/README.md +0 -40
  469. package/assets/ts/components/table-basic/README.md +0 -40
  470. package/assets/ts/components/tabs/README.md +0 -34
  471. package/src/components/Accordion/README.md +0 -31
  472. package/src/components/Actionbar/README.md +0 -41
  473. package/src/components/AppliedFilters/README.md +0 -5
  474. package/src/components/Banner/README.md +0 -22
  475. package/src/components/Card/README.md +0 -24
  476. package/src/components/Carousel/README.md +0 -20
  477. package/src/components/Chart/README.md +0 -17
  478. package/src/components/CollapsibleSideMenu/README.md +0 -23
  479. package/src/components/FileUpload/README.md +0 -13
  480. package/src/components/Filterlist/README.md +0 -17
  481. package/src/components/Header/README.md +0 -27
  482. package/src/components/InlineEdit/README.md +0 -7
  483. package/src/components/Input/README.md +0 -17
  484. package/src/components/Marketing/README.md +0 -20
  485. package/src/components/Multiselect/README.md +0 -12
  486. package/src/components/Nav/README.md +0 -42
  487. package/src/components/Nav-old/README.md +0 -22
  488. package/src/components/NoteFeed/README.md +0 -16
  489. package/src/components/Notification/README.md +0 -32
  490. package/src/components/Pagination/README.md +0 -22
  491. package/src/components/PropertySearchbar/README.md +0 -25
  492. package/src/components/Search/README.md +0 -11
  493. package/src/components/Slider/README.md +0 -11
  494. package/src/components/Snapshot/README.md +0 -20
  495. package/src/components/SplitButton/README.md +0 -19
  496. package/src/components/Stepper/README.md +0 -32
  497. package/src/components/Table/README.md +0 -49
  498. package/src/components/Tabs/README.md +0 -29
  499. package/src/components/Testimonial/README.md +0 -25
  500. package/src/components/Timeline/README.md +0 -18
  501. package/src/foundations/Logo/README.md +0 -21
@@ -1,5 +1,5 @@
1
1
  @use '../_func' as *;
2
- @use '../elements/buttons' as *;
2
+ @use '../elements/buttons';
3
3
 
4
4
  *,
5
5
  *::before,
@@ -7,625 +7,642 @@
7
7
  box-sizing: border-box;
8
8
  }
9
9
 
10
- /* #region default carousel */
11
10
 
12
- :host {
13
- display: block;
14
- overflow: visible;
15
- container-type: inline-size;
16
- }
11
+ @layer components {
17
12
 
18
- .carousel {
19
- margin-inline: calc(var(--carousel-spacing, 1.5rem) * -1);
20
- margin-bottom: 2rem;
21
- display: block;
22
- overflow: visible;
13
+ :host {
14
+ width: 100%;
15
+ }
16
+ .carousel-wrapper {
23
17
 
24
- .carousel__wrapper {
25
- position: relative;
26
- overflow-x: clip;
18
+ padding-inline: 1.5rem;
19
+ margin-inline: -1.5rem;
20
+ overflow: hidden;
21
+ container-type: inline-size;
22
+ display: block;
23
+ margin-bottom: var(--carousel-mb, 1.5rem);
27
24
  }
28
25
 
29
- .carousel__inner {
30
- --gutter-x: 1rem;
26
+ .carousel {
27
+ --button-height: 3rem;
28
+ --marker-height: 1.25rem;
29
+ --marker-mb: 1rem;
30
+ padding-inline: 0.5rem;
31
+ margin-inline: -0.5rem;
32
+ padding-bottom: calc(1rem + var(--button-height) + var(--marker-height) + var(--marker-mb));
33
+
34
+ scroll-padding: 0.5rem;
35
+ display: grid;
36
+ grid-auto-flow: column;
37
+ gap: var(--gap);
38
+ anchor-scope: all;
39
+ anchor-name: --carousel;
31
40
  overflow-x: auto;
32
- padding-bottom: 1rem;
41
+ overscroll-behavior-x: contain;
33
42
  scroll-snap-type: x mandatory;
43
+ scrollbar-width: none;
44
+ scroll-marker-group: before;
45
+ scroll-behavior: smooth;
46
+ grid-auto-flow: column;
47
+ grid-auto-columns: calc((100% / var(--count,1)) - ((var(--gap) * (var(--count,1) - 1)) / var(--count,1)));
34
48
  }
35
49
 
36
- .carousel__content {
37
- display: flex;
38
- flex-wrap: nowrap !important;
39
- margin-inline-end: 0;
40
- padding-inline-start: var(--carousel-spacing, 1.5rem);
41
- padding-inline-end: var(--carousel-spacing, 1.5rem);
50
+ /* #region items */
42
51
 
43
- margin-right: calc(-0.5 * var(--gutter-x));
44
- margin-left: calc(-0.5 * var(--gutter-x));
45
- }
52
+ .carousel > * {
46
53
 
47
- .col > *:last-child {
48
- margin-bottom: 0;
49
- padding-bottom: 0;
54
+ container-type: scroll-state;
55
+ grid-column: auto;
56
+ min-height: 100%;
57
+ margin: 0;
58
+ scroll-snap-align: start;
50
59
  }
51
- }
52
-
53
- ::slotted(div) {
54
- scroll-snap-align: start;
55
- scroll-margin-left: calc(var(--carousel-spacing, 1.5rem) - 0.5rem);
60
+ /* #endregion */
56
61
 
57
- flex-shrink: 0;
58
- width: calc(100% + var(--last-item-extra, 0px));
59
-
60
- padding-right: 0.5rem;
61
- padding-left: 0.5rem;
62
- margin-top: var(--gutter-y);
63
- }
64
-
65
- ::slotted(div:last-child) {
66
- padding-inline-end: 1.5rem;
67
- --last-item-extra: 1rem;
68
- }
69
-
70
- @container (min-width: 36em) {
62
+ /* #region left and right buttons */
71
63
  .carousel {
72
- margin-inline: calc(var(--carousel-spacing, 2.5rem) * -1);
64
+
65
+ &::scroll-button(*) {
66
+
67
+ cursor: pointer;
68
+ position-anchor: --carousel;
69
+ background: none;
70
+ border: none;
71
+
72
+ font-size: 1rem !important;
73
+ padding: 0 !important;
74
+ margin-bottom: .5rem;
75
+ text-align: center;
76
+ width: var(--button-height);
77
+ height: var(--button-height);
78
+ align-content: center;
79
+ line-height: 1 !important;
80
+ overflow: hidden;
81
+ font-size: 1rem;
82
+ font-family: "Font Awesome 7 Pro" !important;
83
+ display: none;
84
+ position: absolute;
85
+ position-area: block-end center;
86
+ border-radius: 50%;
87
+ margin-top: calc((var(--button-height) + var(--marker-height) + var(--marker-mb)) * -1);
73
88
 
74
- .carousel__content {
75
- padding-inline-start: var(--carousel-spacing, 2.5rem);
76
- padding-inline-end: var(--carousel-spacing, 2.5rem);
77
89
  }
78
- }
79
-
80
- :host([data-smcols]) ::slotted(div) {
81
- scroll-snap-align: unset;
82
- flex: 0 0 auto;
83
- }
84
90
 
85
- :host([data-smcols='2']) ::slotted(div) {
86
- width: calc(50% + var(--last-item-extra, 0px));
87
- }
91
+ &::scroll-button(left) {
88
92
 
89
- :host([data-smcols='3']) ::slotted(div) {
90
- width: calc(33.3333333333% + var(--last-item-extra, 0px));
91
- }
92
- :host([data-smcols='4']) ::slotted(div) {
93
- width: calc(25% + var(--last-item-extra, 0px));
94
- }
93
+ display: inline-block;
94
+ //left: anchor(left);
95
+ content: "\f053" / "Scroll left"!important;
96
+ margin-left: calc(var(--button-height) * -1) !important;
97
+ }
95
98
 
96
- :host([data-smcols='2']) ::slotted(div:nth-child(odd)),
97
- :host([data-smcols='3']) ::slotted(div:nth-child(3n + 1)),
98
- :host([data-smcols='4']) ::slotted(div:nth-child(4n + 1)) {
99
- scroll-snap-align: start;
100
- }
99
+ &::scroll-button(right) {
101
100
 
102
- ::slotted(div) {
103
- scroll-margin-left: calc(var(--carousel-spacing, 2.5rem) - 0.5rem);
104
- }
101
+ display: inline-block;
102
+ //right: anchor(right);
103
+ content: "\f054" / "Scroll right"!important;
104
+ margin-right: calc(var(--button-height) * -1) !important;
105
+ }
106
+
107
+ &::scroll-button(*):disabled {
108
+ pointer-events: none;
109
+ }
105
110
 
106
- ::slotted(div:last-child) {
107
- padding-inline-end: 2.5rem;
108
- --last-item-extra: 2rem;
111
+ &::scroll-button(*):is(:hover,:focus-visible) {
112
+ outline-offset: 5px;
113
+ background-color: var(--colour-light);
114
+ border-color: var(--colour);
115
+ }
109
116
  }
110
- }
111
-
112
- @container (min-width: 62em) {
113
- .carousel {
114
- margin-inline: 0;
115
- position: relative;
117
+ /* #endregion */
118
+
119
+ /* #region left and right buttons on desktop */
120
+ .carousel-wrapper .carousel {
121
+
122
+ @container (min-width: 62em) {
123
+
124
+ --button-height: 0rem;
125
+
126
+ &::scroll-button(*) {
127
+ --button-height: 3rem;
128
+ margin-top: -1rem;
129
+ }
130
+ &::scroll-button(left) {
131
+ position-area: center inline-start;
132
+ }
133
+
134
+ &::scroll-button(right) {
135
+ position-area: center inline-end;
136
+ }
137
+ }
116
138
  }
117
- .carousel__wrapper {
118
- overflow: hidden;
139
+ /* #endregion */
119
140
 
120
- margin-inline: calc(-0.5 * 1rem);
121
- }
122
- .carousel__inner {
123
- }
124
- .carousel__content {
125
- padding-inline: 0 !important;
126
- margin-inline: 0 !important;
141
+ @container style(--hide-carousel-btns) {
142
+ .carousel {
143
+
144
+ --button-height: 0rem;
145
+ }
146
+ .carousel::scroll-button(*) {
147
+
148
+ display: none!important;
149
+ }
127
150
  }
128
151
 
129
- ::slotted(div) {
130
- margin-left: 0;
131
- scroll-margin-left: 0;
132
- }
152
+ /* #region markers */
153
+ .carousel {
154
+ &::scroll-marker-group {
133
155
 
134
- ::slotted(div:last-child) {
135
- padding-inline-end: calc(0.5 * 1rem);
136
- --last-item-extra: 0px;
137
- }
156
+ position: absolute;
157
+ position-anchor: --carousel;
158
+ container: marker-group / inline-size;
159
+ display: grid;
160
+ place-content: safe center;
161
+ box-sizing: border-box;
162
+ border-radius: var(--radius-round);
163
+ scrollbar-width: none;
164
+ scroll-behavior: smooth;
165
+ inline-size: 100%;
166
+ max-inline-size: 100cqi;
167
+ overflow-x: auto;
168
+ scroll-snap-type: x mandatory;
169
+ overscroll-behavior-x: contain;
170
+ grid-auto-columns: var(--marker-height); /* Magic number */
171
+ grid-auto-rows: var(--marker-height); /* Magic number */
172
+
173
+ overflow-x: auto;
174
+ top: auto;
175
+ bottom: anchor(bottom);
176
+ grid-auto-flow: column;
177
+ justify-items: center;
178
+ align-items: center;
179
+ padding-block: 0;
180
+ margin-bottom: var(--marker-mb);
181
+ }
138
182
 
139
- :host([data-mdcols]) ::slotted(div) {
140
- scroll-snap-align: unset;
141
- flex: 0 0 auto;
142
- }
183
+
184
+ > *::scroll-marker {
185
+ content: "";
186
+ scroll-snap-align: start;
187
+ cursor: pointer;
188
+ text-decoration: none;
189
+ interactivity: auto;
190
+ //display: none;
191
+ width: .5rem;
192
+ aspect-ratio: 1;
193
+ border-radius: 50%;
194
+ overflow: hidden;
195
+ background: #a5ecfd; /* Magic colour */
196
+ cursor: pointer;
197
+ border: none;
198
+ }
143
199
 
144
- :host([data-mdcols='2']) ::slotted(div) {
145
- width: calc(50% + var(--last-item-extra, 0px));
146
- }
200
+ > *::scroll-marker:target-current {
147
201
 
148
- :host([data-mdcols='3']) ::slotted(div) {
149
- width: calc(33.3333333333% + var(--last-item-extra, 0px));
150
- }
151
- :host([data-mdcols='4']) ::slotted(div) {
152
- width: calc(25% + var(--last-item-extra, 0px));
153
- }
154
- :host([data-mdcols='5']) ::slotted(div) {
155
- width: calc(20% + var(--last-item-extra, 0px));
156
- }
157
- :host([data-mdcols='6']) ::slotted(div) {
158
- width: calc(16.6666666667% + var(--last-item-extra, 0px));
202
+ border-color: var(--colour-info);
203
+ background: var(--colour-info);
204
+ width: 1rem;
205
+ height: 1rem;
206
+ min-height: 1rem;
207
+ margin-inline: .125rem; /* Magic number */
208
+ }
209
+
159
210
  }
211
+ /* #endregion */
160
212
 
161
- :host([data-mdcols='2']) ::slotted(div:nth-child(odd)),
162
- :host([data-mdcols='3']) ::slotted(div:nth-child(3n + 1)),
163
- :host([data-mdcols='4']) ::slotted(div:nth-child(4n + 1)),
164
- :host([data-mdcols='5']) ::slotted(div:nth-child(5n + 1)),
165
- :host([data-mdcols='6']) ::slotted(div:nth-child(6n + 1)) {
166
- scroll-snap-align: start;
213
+ /* #region count the number of items and set variables to hide the controls/markers */
214
+ .carousel-wrapper:has(.carousel > *:first-child:last-child) {
215
+
216
+ --hide-buttons: 1;
217
+ --hide-markers: 1;
167
218
  }
168
- }
169
-
170
- /* #endregion */
171
-
172
- /* #region Remove the scrollbar */
173
- .carousel__inner {
174
- /* FireFox */
175
- scrollbar-width: none;
176
- /* IE10+ */
177
- -ms-overflow-style: none;
178
- }
179
-
180
- .carousel__inner::-webkit-scrollbar {
181
- /* Chrome, Safari, Edge */
182
- display: none;
183
- }
184
- /* #endregion */
219
+
220
+ .carousel {
221
+
222
+ @container (min-width: 36em) {
223
+ &[data-smcols='2']:not(:has(> *:nth-child(3))) {
224
+
225
+ --hide-buttons: 1;
226
+ --hide-markers: 1;
227
+
228
+ --button-height: 0rem;
229
+ --marker-height: 0rem;
230
+ --marker-mb: 0rem;
231
+ }
232
+ &[data-smcols='3']:not(:has(> *:nth-child(4))) {
233
+
234
+ --hide-buttons: 1;
235
+ --hide-markers: 1;
236
+
237
+ --button-height: 0rem;
238
+ --marker-height: 0rem;
239
+ --marker-mb: 0rem;
240
+ }
241
+ }
185
242
 
186
- /* #region Direction button */
243
+ @container (min-width: 62em) {
244
+ &[data-mdcols='2']:not(:has(> *:nth-child(3))) {
187
245
 
188
- .carousel__btns {
189
- text-align: center;
190
- padding-bottom: 0.5rem;
191
- }
246
+ --hide-buttons: 1;
247
+ --hide-markers: 1;
192
248
 
193
- .btn-next,
194
- .btn-prev {
195
- margin: 0 !important;
249
+ --button-height: 0rem;
250
+ --marker-height: 0rem;
251
+ --marker-mb: 0rem;
252
+ }
253
+ &[data-mdcols='3']:not(:has(> *:nth-child(4))) {
196
254
 
197
- &:after {
198
- content: '';
199
- position: absolute;
200
- right: 0;
201
- top: 0;
202
- height: 100%;
203
- width: 100%;
204
- background: currentColor;
205
- mask-image: var(--icon-arrow);
206
- mask-size: 50%;
207
- mask-repeat: no-repeat;
208
- mask-position: 50% 60%;
209
- -webkit-mask-image: var(--icon-arrow);
210
- -webkit-mask-size: 50%;
211
- -webkit-mask-repeat: no-repeat;
212
- -webkit-mask-position: 55% 50%;
213
- transform: rotate(0deg);
214
- }
215
- }
255
+ --hide-buttons: 1;
256
+ --hide-markers: 1;
216
257
 
217
- .btn-prev {
218
- &:after {
219
- transform: rotate(180deg);
220
- }
221
- }
222
-
223
- @container (min-width: 62em) {
224
- .carousel__btns {
225
- padding-bottom: 0;
226
- }
227
- .btn-prev {
228
- position: absolute;
229
- top: 50%;
230
- left: 0;
231
- margin: -2rem 0 0 -3rem !important;
232
- }
233
- .btn-next {
234
- position: absolute;
235
- top: 50%;
236
- right: 0;
237
- margin: -2rem -3rem 0 0 !important;
258
+ --button-height: 0rem;
259
+ --marker-height: 0rem;
260
+ --marker-mb: 0rem;
261
+ }
262
+ }
238
263
  }
239
- }
264
+ /* #endregion */
240
265
 
241
- /* #endregion */
242
-
243
- /* #region carousel controls/pips */
244
- .carousel .carousel__controls {
245
- overflow: hidden;
246
- margin-inline: auto;
247
- margin-bottom: 1rem;
248
- text-align: center;
249
- max-width: 30rem;
266
+ /* #region change the item count via queries */
267
+ .carousel {
268
+
269
+ @container (min-width: 36em) {
270
+ &[data-smcols='2'] {
250
271
 
251
- @container (min-width: 36em) {
252
- width: 100%;
253
- }
272
+ --count: 2;
273
+ }
274
+ &[data-smcols='3'] {
254
275
 
255
- button {
256
- padding: 0;
257
- margin: 0 0.2rem 0.2rem;
258
- border: none;
259
- }
276
+ --count: 3;
277
+ }
278
+ }
260
279
 
261
- button {
262
- width: 0.5rem;
263
- height: 0.5rem;
264
- min-height: 0.5rem;
265
- border-radius: 50%;
266
- text-indent: -50rem;
267
- overflow: hidden;
268
- background: #a5ecfd;
269
- margin-inline: 0.375rem; /* 6 */
270
- cursor: pointer;
271
- border: none;
280
+ @container (min-width: 64em) {
281
+ &[data-mdcols='2'] {
272
282
 
273
- &:hover {
274
- background-color: var(--colour-info);
275
- }
283
+ --count: 2;
284
+ }
285
+ &[data-mdcols='3'] {
276
286
 
277
- &:before {
278
- display: none;
287
+ --count: 3;
288
+ }
279
289
  }
280
290
  }
291
+ /* #endregion */
281
292
 
282
- button:first-child:last-child {
283
- display: none;
284
- }
285
- }
293
+ /* #region carousel responsive to the count number variable */
294
+ .carousel {
286
295
 
287
- .carousel__controls > button[aria-current] {
288
- --colour-active-thumbnail: var(--colour-info);
289
- border-color: var(--colour-active-thumbnail);
290
- background: var(--colour-info);
296
+ > * {
291
297
 
292
- width: 1rem;
293
- height: 1rem;
294
- min-height: 1rem;
295
- margin-inline: 0.125rem; /* 2 */
298
+ @container style(--count) {
296
299
 
297
- &:hover {
298
- background: var(--colour-info);
299
- }
300
- }
301
- /* #endregion */
300
+ scroll-snap-align: unset;
301
+
302
+ &::scroll-marker{
302
303
 
303
- /* #region progress bar */
304
- .carousel__progress {
305
- text-align: center;
306
- margin-bottom: 1rem;
307
- display: none;
308
- }
304
+ display: none;
305
+ }
306
+ }
309
307
 
310
- input[type='range'] {
311
- --track-size: 0.5rem;
312
- --track-colour: #a5ecfd;
313
- --thumb-colour: var(--colour-info);
314
- --thumb-size: 1rem;
315
- --thumb-size-outline: 0;
316
- width: 90%;
317
- max-width: 10.75rem; /* 172 */
318
-
319
- background: transparent;
320
- cursor: pointer;
321
- margin: 0;
322
- height: 1rem;
323
- border-radius: 50%;
324
- accent-color: var(--thumb-colour);
325
- -webkit-appearance: none;
326
- appearance: none;
327
- }
308
+ @container not scroll-state(snapped: x) {
309
+
310
+ --opacity: 0;
311
+ }
312
+
313
+ @container style(--count: 2) {
328
314
 
329
- /* Track Styles */
330
- input[type='range']::-webkit-slider-runnable-track {
331
- background: var(--track-colour);
332
- height: var(--track-size);
333
- border-radius: 0.5625rem; /* 9 */
334
- }
315
+ &:nth-child(2n - 1) {
316
+ scroll-snap-align: start;
317
+ scroll-snap-stop: always;
318
+ }
335
319
 
336
- input[type='range']::-moz-range-track {
337
- background: var(--track-colour);
338
- height: var(--track-size);
339
- border-radius: 0.5625rem; /* 9 */
340
- }
320
+ &:nth-child(2n - 1)::scroll-marker{
341
321
 
342
- /* Extended track functionality */
343
- input[type='range']::-webkit-slider-runnable-track {
344
- background: linear-gradient(
345
- to right,
346
- var(--track-colour),
347
- var(--track-colour) var(--start-percent, 0%),
348
- var(--thumb-colour) var(--start-percent, 0%),
349
- var(--thumb-colour) calc(var(--percent, 0%)),
350
- var(--track-colour) calc(var(--percent, 0%))
351
- );
352
- }
322
+ display: block;
323
+ }
324
+ }
353
325
 
354
- input[type='range']::-moz-range-track {
355
- background: linear-gradient(
356
- to right,
357
- var(--track-colour),
358
- var(--track-colour) var(--start-percent, 0%),
359
- var(--thumb-colour) var(--start-percent, 0%),
360
- var(--thumb-colour) calc(var(--percent, 0%)),
361
- var(--track-colour) calc(var(--percent, 0%))
362
- );
363
- }
326
+ @container style(--count: 3) {
364
327
 
365
- /* Thumb Styles */
366
- input[type='range']::-webkit-slider-thumb {
367
- -webkit-appearance: none; /* Override default look */
368
- appearance: none;
369
- margin-top: -0.25rem; /* Centers thumb on the track */
370
- background-color: var(--thumb-colour);
371
- height: var(--thumb-size);
372
- width: var(--thumb-size);
373
- border-radius: 50%;
374
- position: relative;
375
- z-index: 99;
376
- pointer-events: all;
377
- }
328
+ &:nth-child(3n - 2) {
329
+ scroll-snap-align: start;
330
+ scroll-snap-stop: always;
331
+ }
378
332
 
379
- input[type='range']::-moz-range-thumb {
380
- border: none; /*Removes extra border that FF applies*/
381
- background-color: var(--thumb-colour); /*Removes default border-radius that FF applies*/
382
- height: var(--thumb-size);
383
- width: var(--thumb-size);
384
- border-radius: 50%;
385
- position: relative;
386
- z-index: 99;
387
- pointer-events: all;
388
- }
333
+ &:nth-child(3n - 2)::scroll-marker{
389
334
 
390
- /* Focus Styles */
391
- input[type='range']:focus {
392
- outline: none;
393
- }
335
+ display: block;
336
+ }
337
+ }
338
+ }
339
+ }
394
340
 
395
- input[type='range']:hover::-webkit-slider-thumb,
396
- input[type='range']:focus::-webkit-slider-thumb {
397
- outline: var(--thumb-size-outline) solid var(--thumb-colour);
398
- }
341
+ /* #endregion */
399
342
 
400
- input[type='range']:active::-webkit-slider-thumb {
401
- outline: var(--thumb-size-outline) solid var(--thumb-colour);
402
- }
343
+ /* #region hide controls/markers */
344
+ .carousel-wrapper {
345
+
403
346
 
404
- input[type='range']:hover::-moz-range-thumb,
405
- input[type='range']:focus::-moz-range-thumb {
406
- outline: var(--thumb-size-outline) solid var(--thumb-colour);
407
- }
408
- input[type='range']:focus::-moz-range-thumb {
409
- outline: var(--thumb-size-outline) solid var(--thumb-colour);
410
- }
347
+ @container style(--hide-buttons) {
411
348
 
412
- /* #endregion */
349
+ --button-height: 0rem;
350
+
351
+ .carousel::scroll-button(*) {
352
+ display: none;
353
+ }
354
+ }
413
355
 
414
- /* #region Hide buttons and pips */
415
- .carousel__btns:has(~ .carousel__controls button:first-child:nth-child(1):last-child) {
416
- display: none;
417
- }
356
+ @container style(--hide-markers) {
418
357
 
419
- .carousel__controls:has(button:nth-child(5)) {
420
- display: none;
421
- }
422
- .carousel__controls:has(button:nth-child(5)) ~ .carousel__progress {
423
- display: block;
424
- }
358
+ --marker-height: 0rem;
359
+ --marker-mb: 0rem;
425
360
 
426
- @container (min-width: 36em) {
427
- :host([data-smcols='2']) .carousel__controls > button:not(:nth-child(odd)),
428
- :host([data-smcols='3']) .carousel__controls > button:not(:nth-child(3n + 1)),
429
- :host([data-smcols='4']) .carousel__controls > button:not(:nth-child(4n + 1)) {
430
- display: none;
361
+ .carousel::scroll-marker-group {
362
+ display: none;
363
+ }
364
+ }
431
365
  }
366
+ /* #endregion */
432
367
 
433
- /* Make sure that we dont just have one pip showing */
434
- :host([data-smcols='2']) .carousel__controls:has(button:first-child:nth-last-child(2)),
435
- :host([data-smcols='3'])
436
- .carousel__controls:has(:is(button:first-child:nth-last-child(2), button:first-child:nth-last-child(3))),
437
- :host([data-smcols='4'])
438
- .carousel__controls:has(
439
- :is(
440
- button:first-child:nth-last-child(2),
441
- button:first-child:nth-last-child(3),
442
- button:first-child:nth-last-child(4)
443
- )
444
- ),
445
- :host([data-smcols='2']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(2)),
446
- :host([data-smcols='3']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(2)),
447
- :host([data-smcols='3']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(3)),
448
- :host([data-smcols='4']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(2)),
449
- :host([data-smcols='4']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(3)),
450
- :host([data-smcols='4']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(4)) {
451
- display: none;
452
- }
368
+ /* #region carousel inside of admin panel */
369
+ .admin-panel {
370
+
371
+ --hide-buttons: 1;
453
372
 
454
- /* Show slider */
455
- :host([data-smcols]) .carousel__controls {
456
- display: block;
457
- }
458
- :host([data-smcols]) .carousel__controls ~ .carousel__progress {
459
- display: none;
373
+ .carousel {
374
+
375
+ --button-height: 0rem;
376
+ --marker-mb: 0rem;
377
+ margin-bottom: 0;
378
+ }
460
379
  }
380
+ /* #endregion */
461
381
 
462
- :host([data-smcols='2']) .carousel__controls:has(button:nth-child(10)),
463
- :host([data-smcols='3']) .carousel__controls:has(button:nth-child(15)),
464
- :host([data-smcols='4']) .carousel__controls:has(button:nth-child(20)) {
382
+
383
+ /* #region progress bar */
384
+ .carousel__progress {
385
+ text-align: center;
465
386
  display: none;
466
387
  }
467
388
 
468
- :host([data-smcols='2']) .carousel__controls:has(button:nth-child(10)) ~ .carousel__progress,
469
- :host([data-smcols='3']) .carousel__controls:has(button:nth-child(15)) ~ .carousel__progress,
470
- :host([data-smcols='4']) .carousel__controls:has(button:nth-child(20)) ~ .carousel__progress {
471
- display: block;
389
+ input[type='range'] {
390
+ --track-size: 0.5rem;
391
+ --track-colour: #a5ecfd;
392
+ --thumb-colour: var(--colour-info);
393
+ --thumb-size: 1rem;
394
+ --thumb-size-outline: 0;
395
+ width: 90%;
396
+ max-width: 10.75rem; /* 172 */
397
+
398
+ background: transparent;
399
+ cursor: pointer;
400
+ margin: 0;
401
+ height: 1rem;
402
+ border-radius: 50%;
403
+ accent-color: var(--thumb-colour);
404
+ -webkit-appearance: none;
405
+ appearance: none;
406
+ }
407
+
408
+ /* Track Styles */
409
+ input[type='range']::-webkit-slider-runnable-track {
410
+ background: var(--track-colour);
411
+ height: var(--track-size);
412
+ border-radius: 0.5625rem; /* 9 */
413
+ }
414
+
415
+ input[type='range']::-moz-range-track {
416
+ background: var(--track-colour);
417
+ height: var(--track-size);
418
+ border-radius: 0.5625rem; /* 9 */
419
+ }
420
+
421
+ /* Extended track functionality */
422
+ input[type='range']::-webkit-slider-runnable-track {
423
+ background: linear-gradient(
424
+ to right,
425
+ var(--track-colour),
426
+ var(--track-colour) var(--start-percent, 0%),
427
+ var(--thumb-colour) var(--start-percent, 0%),
428
+ var(--thumb-colour) calc(var(--percent, 0%)),
429
+ var(--track-colour) calc(var(--percent, 0%))
430
+ );
431
+ }
432
+
433
+ input[type='range']::-moz-range-track {
434
+ background: linear-gradient(
435
+ to right,
436
+ var(--track-colour),
437
+ var(--track-colour) var(--start-percent, 0%),
438
+ var(--thumb-colour) var(--start-percent, 0%),
439
+ var(--thumb-colour) calc(var(--percent, 0%)),
440
+ var(--track-colour) calc(var(--percent, 0%))
441
+ );
442
+ }
443
+
444
+ /* Thumb Styles */
445
+ input[type='range']::-webkit-slider-thumb {
446
+ -webkit-appearance: none; /* Override default look */
447
+ appearance: none;
448
+ margin-top: -0.25rem; /* Centers thumb on the track */
449
+ background-color: var(--thumb-colour);
450
+ height: var(--thumb-size);
451
+ width: var(--thumb-size);
452
+ border-radius: 50%;
453
+ position: relative;
454
+ z-index: 99;
455
+ pointer-events: all;
472
456
  }
473
- }
474
457
 
475
- @container (min-width: 62em) {
476
- :host([data-mdcols]) .carousel__controls > button {
477
- display: inline-block !important;
458
+ input[type='range']::-moz-range-thumb {
459
+ border: none; /*Removes extra border that FF applies*/
460
+ background-color: var(--thumb-colour); /*Removes default border-radius that FF applies*/
461
+ height: var(--thumb-size);
462
+ width: var(--thumb-size);
463
+ border-radius: 50%;
464
+ position: relative;
465
+ z-index: 99;
466
+ pointer-events: all;
478
467
  }
479
468
 
480
- :host([data-mdcols]) .carousel__controls {
481
- display: block !important;
469
+ /* Focus Styles */
470
+ input[type='range']:focus {
471
+ outline: none;
482
472
  }
483
473
 
484
- :host([data-mdcols='2']) .carousel__controls > button:not(:nth-child(odd)),
485
- :host([data-mdcols='3']) .carousel__controls > button:not(:nth-child(3n + 1)),
486
- :host([data-mdcols='4']) .carousel__controls > button:not(:nth-child(4n + 1)),
487
- :host([data-mdcols='5']) .carousel__controls > button:not(:nth-child(5n + 1)),
488
- :host([data-mdcols='6']) .carousel__controls > button:not(:nth-child(6n + 1)) {
489
- display: none !important;
474
+ input[type='range']:hover::-webkit-slider-thumb,
475
+ input[type='range']:focus::-webkit-slider-thumb {
476
+ outline: var(--thumb-size-outline) solid var(--thumb-colour);
490
477
  }
491
478
 
492
- /* Make sure that we dont just have one pip showing */
493
- :host([data-mdcols='2']) .carousel__controls:has(button:first-child:nth-last-child(2)),
494
- :host([data-mdcols='3'])
495
- .carousel__controls:has(:is(button:first-child:nth-last-child(2), button:first-child:nth-last-child(3))),
496
- :host([data-mdcols='4'])
497
- .carousel__controls:has(
498
- :is(
499
- button:first-child:nth-last-child(2),
500
- button:first-child:nth-last-child(3),
501
- button:first-child:nth-last-child(4)
502
- )
503
- ),
504
- :host([data-mdcols='5'])
505
- .carousel__controls:has(
506
- :is(
507
- button:first-child:nth-last-child(2),
508
- button:first-child:nth-last-child(3),
509
- button:first-child:nth-last-child(4),
510
- button:first-child:nth-last-child(5)
511
- )
512
- ),
513
- :host([data-mdcols='6'])
514
- .carousel__controls:has(
515
- :is(
516
- button:first-child:nth-last-child(2),
517
- button:first-child:nth-last-child(3),
518
- button:first-child:nth-last-child(4),
519
- button:first-child:nth-last-child(5),
520
- button:first-child:nth-last-child(6)
521
- )
522
- ),
523
- :host([data-mdcols='2']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(2)),
524
- :host([data-mdcols='3']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(2)),
525
- :host([data-mdcols='3']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(3)),
526
- :host([data-mdcols='4']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(2)),
527
- :host([data-mdcols='4']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(3)),
528
- :host([data-mdcols='4'])
529
- .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(4))
530
- :host([data-mdcols='5'])
531
- .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(2)),
532
- :host([data-mdcols='5']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(3)),
533
- :host([data-mdcols='5']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(4)),
534
- :host([data-mdcols='5']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(5)),
535
- :host([data-mdcols='6']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(2)),
536
- :host([data-mdcols='6']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(3)),
537
- :host([data-mdcols='6']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(4)),
538
- :host([data-mdcols='6']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(5)),
539
- :host([data-mdcols='6']) .carousel__btns:has(~ .carousel__controls button:first-child:nth-last-child(6)) {
540
- display: none !important;
479
+ input[type='range']:active::-webkit-slider-thumb {
480
+ outline: var(--thumb-size-outline) solid var(--thumb-colour);
541
481
  }
542
482
 
543
- /* Show slider */
544
- :host([data-mdcols]) .carousel__controls {
545
- display: block !important;
483
+ input[type='range']:hover::-moz-range-thumb,
484
+ input[type='range']:focus::-moz-range-thumb {
485
+ outline: var(--thumb-size-outline) solid var(--thumb-colour);
546
486
  }
547
- :host([data-mdcols]) .carousel__controls ~ .carousel__progress {
548
- display: none !important;
487
+ input[type='range']:focus::-moz-range-thumb {
488
+ outline: var(--thumb-size-outline) solid var(--thumb-colour);
549
489
  }
550
490
 
551
- :host([data-mdcols='2']) .carousel__controls:has(button:nth-child(10)),
552
- :host([data-mdcols='3']) .carousel__controls:has(button:nth-child(15)),
553
- :host([data-mdcols='4']) .carousel__controls:has(button:nth-child(20)),
554
- :host([data-mdcols='5']) .carousel__controls:has(button:nth-child(25)),
555
- :host([data-mdcols='6']) .carousel__controls:has(button:nth-child(30)) {
556
- display: none !important;
557
- }
491
+ /* #endregion */
558
492
 
559
- :host([data-mdcols='2']) .carousel__controls:has(button:nth-child(10)) ~ .carousel__progress,
560
- :host([data-mdcols='3']) .carousel__controls:has(button:nth-child(15)) ~ .carousel__progress,
561
- :host([data-mdcols='4']) .carousel__controls:has(button:nth-child(20)) ~ .carousel__progress,
562
- :host([data-mdcols='5']) .carousel__controls:has(button:nth-child(25)) ~ .carousel__progress,
563
- :host([data-mdcols='6']) .carousel__controls:has(button:nth-child(30)) ~ .carousel__progress {
564
- display: block !important;
565
- }
566
- }
493
+ @supports not selector(::scroll-marker-group) {
494
+
495
+ .carousel {
496
+ --button-height: 0rem;
497
+ --marker-height: 0rem;
498
+ --marker-mb: 0rem;
499
+ }
567
500
 
568
- :host(.hide-btns) .carousel__btns,
569
- :host(.hide-controls) .carousel__controls {
570
- display: none;
571
- }
572
- /* #endregion */
501
+ #carousel__progress {
502
+ display: block;
503
+ }
573
504
 
574
- /* #region thumbnails */
575
- :host(.thumbnails) .carousel__controls {
576
- display: flex !important;
577
- flex-wrap: wrap;
578
- max-width: 100%;
579
- overflow: visible;
505
+ @container (min-width: 36em) {
580
506
 
581
- button {
582
- padding: 0;
583
- margin: 0 0.2rem 0.4rem;
507
+ #carousel__progress {
508
+ display: none;
509
+ }
510
+ #carousel__progress-sm {
511
+ display: block;
512
+ }
513
+ }
584
514
 
585
- width: 6rem;
586
- height: auto;
587
- aspect-ratio: var(--carousel-image-aspect-ratio, 3 / 2);
515
+ @container (min-width: 62em) {
588
516
 
589
- border-radius: 0;
590
- position: relative;
591
- border-radius: 0.25rem;
517
+ #carousel__progress-sm {
518
+ display: none;
519
+ }
520
+ #carousel__progress-md {
521
+ display: block;
522
+ }
523
+ }
592
524
 
593
- img {
594
- position: absolute;
595
- inset: 0;
596
- height: 100%;
597
- width: 100%;
598
- object-fit: cover;
599
- margin: 0;
525
+ }
526
+
527
+ @supports selector(::scroll-marker-group) {
528
+
529
+
530
+ @container (max-width: 36em) {
531
+ .carousel:has(> *:nth-child(5)){
532
+
533
+ --button-height: 0rem;
534
+ --marker-height: 0rem;
535
+ --marker-mb: 0rem;
536
+ --hide-buttons: 1;
537
+ --hide-markers: 1;
538
+ }
539
+ .carousel:has(> *:nth-child(5)) + #carousel__progress {
540
+ display: block;
541
+ }
600
542
  }
601
543
 
602
- &[aria-current] {
603
- outline: 2px solid var(--colour-info);
544
+ @container (min-width: 36em) {
545
+
546
+ #carousel__progress {
547
+ display: none;
548
+ }
549
+
550
+ .carousel[data-smcols="2"]:has(> *:nth-child(10)){
551
+
552
+ --button-height: 0rem;
553
+ --marker-height: 0rem;
554
+ --marker-mb: 0rem;
555
+ --hide-buttons: 1;
556
+ --hide-markers: 1;
557
+ }
558
+ .carousel[data-smcols="2"]:has(> *:nth-child(10)) + #carousel__progress-sm {
559
+ display: block;
560
+ }
561
+
562
+ .carousel[data-smcols="3"]:has(> *:nth-child(15)){
563
+
564
+ --button-height: 0rem;
565
+ --marker-height: 0rem;
566
+ --marker-mb: 0rem;
567
+ --hide-buttons: 1;
568
+ --hide-markers: 1;
569
+ }
570
+
571
+ .carousel[data-smcols="3"]:has(> *:nth-child(15)) + #carousel__progress-sm {
572
+ display: block;
573
+ }
604
574
  }
605
- }
606
- }
607
575
 
608
- :host(.thumbnails) .carousel {
609
- .carousel__btns {
610
- padding-bottom: 0.5rem;
611
- }
576
+ @container (min-width: 62em) {
577
+
578
+ #carousel__progress-sm {
579
+ display: none;
580
+ }
581
+
582
+ .carousel[data-mdcols="2"]:has(> *:nth-child(10)){
583
+
584
+ --button-height: 0rem;
585
+ --marker-height: 0rem;
586
+ --marker-mb: 0rem;
587
+ --hide-buttons: 1;
588
+ --hide-markers: 1;
589
+ }
590
+
591
+ .carousel[data-mdcols="2"]:has(> *:nth-child(10)) + #carousel__progress-md {
592
+ display: block;
593
+ }
594
+
595
+ .carousel[data-mdcols="3"]:has(> *:nth-child(15)){
596
+
597
+ --button-height: 0rem;
598
+ --marker-height: 0rem;
599
+ --marker-mb: 0rem;
600
+ --hide-buttons: 1;
601
+ --hide-markers: 1;
602
+ }
603
+
604
+ .carousel[data-mdcols="3"]:has(> *:nth-child(15)) + #carousel__progress-md {
605
+ display: block;
606
+ }
607
+ }
612
608
 
613
- .btn-next,
614
- .btn-prev {
615
- position: relative;
616
- margin: 0 !important;
617
609
  }
618
610
 
619
- .carousel__progress {
620
- display: none !important;
611
+
612
+ /* #region thumbnails */
613
+
614
+ .carousel__controls {
615
+ display: flex !important;
616
+ flex-wrap: wrap;
617
+ max-width: 100%;
618
+ overflow: visible;
619
+
620
+ button {
621
+ padding: 0;
622
+ margin: 0 0.2rem 0.4rem;
623
+
624
+ width: 6rem;
625
+ height: auto;
626
+ aspect-ratio: var(--carousel-image-aspect-ratio, 3 / 2);
627
+
628
+ border-radius: 0;
629
+ position: relative;
630
+ border-radius: 0.25rem;
631
+
632
+ img {
633
+ position: absolute;
634
+ inset: 0;
635
+ height: 100%;
636
+ width: 100%;
637
+ object-fit: cover;
638
+ margin: 0;
639
+ }
640
+
641
+ &[aria-current] {
642
+ outline: 2px solid var(--colour-info);
643
+ }
644
+ }
621
645
  }
622
- }
623
- /* #endregion */
624
646
 
625
- /* #region Turn carousel slide into image holder */
626
- ::slotted(div.image__wrapper) {
627
- width: 100%;
628
- aspect-ratio: var(--carousel-image-aspect-ratio, 3 / 2);
629
- position: relative;
647
+ /* #endregion */
630
648
  }
631
- /* #endregion */