@iamproperty/components 7.7.1--beta4 → 7.7.1--beta6

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 (712) hide show
  1. package/README.md +4 -4
  2. package/assets/bootstrap/README.md +247 -247
  3. package/assets/bootstrap/dist/css/bootstrap-grid.css +4124 -0
  4. package/assets/bootstrap/dist/css/bootstrap-grid.css.map +1 -0
  5. package/assets/bootstrap/dist/css/bootstrap-grid.min.css +7 -0
  6. package/assets/bootstrap/dist/css/bootstrap-grid.min.css.map +1 -0
  7. package/assets/bootstrap/dist/css/bootstrap-grid.rtl.css +4123 -0
  8. package/assets/bootstrap/dist/css/bootstrap-grid.rtl.css.map +1 -0
  9. package/assets/bootstrap/dist/css/bootstrap-grid.rtl.min.css +7 -0
  10. package/assets/bootstrap/dist/css/bootstrap-grid.rtl.min.css.map +1 -0
  11. package/assets/bootstrap/dist/css/bootstrap-reboot.css +488 -0
  12. package/assets/bootstrap/dist/css/bootstrap-reboot.css.map +1 -0
  13. package/assets/bootstrap/dist/css/bootstrap-reboot.min.css +7 -0
  14. package/assets/bootstrap/dist/css/bootstrap-reboot.min.css.map +1 -0
  15. package/assets/bootstrap/dist/css/bootstrap-reboot.rtl.css +485 -0
  16. package/assets/bootstrap/dist/css/bootstrap-reboot.rtl.css.map +1 -0
  17. package/assets/bootstrap/dist/css/bootstrap-reboot.rtl.min.css +7 -0
  18. package/assets/bootstrap/dist/css/bootstrap-reboot.rtl.min.css.map +1 -0
  19. package/assets/bootstrap/dist/css/bootstrap-utilities.css +4197 -0
  20. package/assets/bootstrap/dist/css/bootstrap-utilities.css.map +1 -0
  21. package/assets/bootstrap/dist/css/bootstrap-utilities.min.css +7 -0
  22. package/assets/bootstrap/dist/css/bootstrap-utilities.min.css.map +1 -0
  23. package/assets/bootstrap/dist/css/bootstrap-utilities.rtl.css +4188 -0
  24. package/assets/bootstrap/dist/css/bootstrap-utilities.rtl.css.map +1 -0
  25. package/assets/bootstrap/dist/css/bootstrap-utilities.rtl.min.css +7 -0
  26. package/assets/bootstrap/dist/css/bootstrap-utilities.rtl.min.css.map +1 -0
  27. package/assets/bootstrap/dist/css/bootstrap.css +10907 -0
  28. package/assets/bootstrap/dist/css/bootstrap.css.map +1 -0
  29. package/assets/bootstrap/dist/css/bootstrap.min.css +7 -0
  30. package/assets/bootstrap/dist/css/bootstrap.min.css.map +1 -0
  31. package/assets/bootstrap/dist/css/bootstrap.rtl.css +10867 -0
  32. package/assets/bootstrap/dist/css/bootstrap.rtl.css.map +1 -0
  33. package/assets/bootstrap/dist/css/bootstrap.rtl.min.css +7 -0
  34. package/assets/bootstrap/dist/css/bootstrap.rtl.min.css.map +1 -0
  35. package/assets/bootstrap/dist/js/bootstrap.bundle.js +7066 -0
  36. package/assets/bootstrap/dist/js/bootstrap.bundle.js.map +1 -0
  37. package/assets/bootstrap/dist/js/bootstrap.bundle.min.js +7 -0
  38. package/assets/bootstrap/dist/js/bootstrap.bundle.min.js.map +1 -0
  39. package/assets/bootstrap/dist/js/bootstrap.esm.js +5204 -0
  40. package/assets/bootstrap/dist/js/bootstrap.esm.js.map +1 -0
  41. package/assets/bootstrap/dist/js/bootstrap.esm.min.js +7 -0
  42. package/assets/bootstrap/dist/js/bootstrap.esm.min.js.map +1 -0
  43. package/assets/bootstrap/dist/js/bootstrap.js +5251 -0
  44. package/assets/bootstrap/dist/js/bootstrap.js.map +1 -0
  45. package/assets/bootstrap/dist/js/bootstrap.min.js +7 -0
  46. package/assets/bootstrap/dist/js/bootstrap.min.js.map +1 -0
  47. package/assets/bootstrap/js/dist/alert.js +100 -0
  48. package/assets/bootstrap/js/dist/alert.js.map +1 -0
  49. package/assets/bootstrap/js/dist/base-component.js +100 -0
  50. package/assets/bootstrap/js/dist/base-component.js.map +1 -0
  51. package/assets/bootstrap/js/dist/button.js +82 -0
  52. package/assets/bootstrap/js/dist/button.js.map +1 -0
  53. package/assets/bootstrap/js/dist/carousel.js +471 -0
  54. package/assets/bootstrap/js/dist/carousel.js.map +1 -0
  55. package/assets/bootstrap/js/dist/collapse.js +311 -0
  56. package/assets/bootstrap/js/dist/collapse.js.map +1 -0
  57. package/assets/bootstrap/js/dist/dom/data.js +67 -0
  58. package/assets/bootstrap/js/dist/dom/data.js.map +1 -0
  59. package/assets/bootstrap/js/dist/dom/event-handler.js +284 -0
  60. package/assets/bootstrap/js/dist/dom/event-handler.js.map +1 -0
  61. package/assets/bootstrap/js/dist/dom/manipulator.js +85 -0
  62. package/assets/bootstrap/js/dist/dom/manipulator.js.map +1 -0
  63. package/assets/bootstrap/js/dist/dom/selector-engine.js +86 -0
  64. package/assets/bootstrap/js/dist/dom/selector-engine.js.map +1 -0
  65. package/assets/bootstrap/js/dist/dropdown.js +471 -0
  66. package/assets/bootstrap/js/dist/dropdown.js.map +1 -0
  67. package/assets/bootstrap/js/dist/modal.js +397 -0
  68. package/assets/bootstrap/js/dist/modal.js.map +1 -0
  69. package/assets/bootstrap/js/dist/offcanvas.js +298 -0
  70. package/assets/bootstrap/js/dist/offcanvas.js.map +1 -0
  71. package/assets/bootstrap/js/dist/popover.js +102 -0
  72. package/assets/bootstrap/js/dist/popover.js.map +1 -0
  73. package/assets/bootstrap/js/dist/scrollspy.js +308 -0
  74. package/assets/bootstrap/js/dist/scrollspy.js.map +1 -0
  75. package/assets/bootstrap/js/dist/tab.js +334 -0
  76. package/assets/bootstrap/js/dist/tab.js.map +1 -0
  77. package/assets/bootstrap/js/dist/toast.js +237 -0
  78. package/assets/bootstrap/js/dist/toast.js.map +1 -0
  79. package/assets/bootstrap/js/dist/tooltip.js +663 -0
  80. package/assets/bootstrap/js/dist/tooltip.js.map +1 -0
  81. package/assets/bootstrap/js/dist/util/backdrop.js +166 -0
  82. package/assets/bootstrap/js/dist/util/backdrop.js.map +1 -0
  83. package/assets/bootstrap/js/dist/util/component-functions.js +47 -0
  84. package/assets/bootstrap/js/dist/util/component-functions.js.map +1 -0
  85. package/assets/bootstrap/js/dist/util/config.js +80 -0
  86. package/assets/bootstrap/js/dist/util/config.js.map +1 -0
  87. package/assets/bootstrap/js/dist/util/focustrap.js +130 -0
  88. package/assets/bootstrap/js/dist/util/focustrap.js.map +1 -0
  89. package/assets/bootstrap/js/dist/util/index.js +351 -0
  90. package/assets/bootstrap/js/dist/util/index.js.map +1 -0
  91. package/assets/bootstrap/js/dist/util/sanitizer.js +123 -0
  92. package/assets/bootstrap/js/dist/util/sanitizer.js.map +1 -0
  93. package/assets/bootstrap/js/dist/util/scrollbar.js +139 -0
  94. package/assets/bootstrap/js/dist/util/scrollbar.js.map +1 -0
  95. package/assets/bootstrap/js/dist/util/swipe.js +156 -0
  96. package/assets/bootstrap/js/dist/util/swipe.js.map +1 -0
  97. package/assets/bootstrap/js/dist/util/template-factory.js +178 -0
  98. package/assets/bootstrap/js/dist/util/template-factory.js.map +1 -0
  99. package/assets/bootstrap/js/index.esm.js +19 -19
  100. package/assets/bootstrap/js/index.umd.js +34 -34
  101. package/assets/bootstrap/js/src/alert.js +87 -87
  102. package/assets/bootstrap/js/src/base-component.js +85 -85
  103. package/assets/bootstrap/js/src/button.js +72 -72
  104. package/assets/bootstrap/js/src/carousel.js +475 -475
  105. package/assets/bootstrap/js/src/collapse.js +302 -302
  106. package/assets/bootstrap/js/src/dom/data.js +55 -55
  107. package/assets/bootstrap/js/src/dom/event-handler.js +320 -320
  108. package/assets/bootstrap/js/src/dom/manipulator.js +71 -71
  109. package/assets/bootstrap/js/src/dom/selector-engine.js +83 -83
  110. package/assets/bootstrap/js/src/dropdown.js +445 -445
  111. package/assets/bootstrap/js/src/modal.js +373 -373
  112. package/assets/bootstrap/js/src/offcanvas.js +283 -283
  113. package/assets/bootstrap/js/src/popover.js +97 -97
  114. package/assets/bootstrap/js/src/scrollspy.js +290 -290
  115. package/assets/bootstrap/js/src/tab.js +307 -307
  116. package/assets/bootstrap/js/src/toast.js +220 -220
  117. package/assets/bootstrap/js/src/tooltip.js +651 -651
  118. package/assets/bootstrap/js/src/util/backdrop.js +149 -149
  119. package/assets/bootstrap/js/src/util/component-functions.js +34 -34
  120. package/assets/bootstrap/js/src/util/config.js +66 -66
  121. package/assets/bootstrap/js/src/util/focustrap.js +115 -115
  122. package/assets/bootstrap/js/src/util/index.js +336 -336
  123. package/assets/bootstrap/js/src/util/sanitizer.js +118 -118
  124. package/assets/bootstrap/js/src/util/scrollbar.js +114 -114
  125. package/assets/bootstrap/js/src/util/swipe.js +146 -146
  126. package/assets/bootstrap/js/src/util/template-factory.js +160 -160
  127. package/assets/bootstrap/package.json +180 -180
  128. package/assets/bootstrap/scss/_accordion.scss +146 -146
  129. package/assets/bootstrap/scss/_button-group.scss +142 -142
  130. package/assets/bootstrap/scss/_buttons.scss +186 -186
  131. package/assets/bootstrap/scss/_carousel.scss +229 -229
  132. package/assets/bootstrap/scss/_dropdown.scss +248 -248
  133. package/assets/bootstrap/scss/_functions.scss +302 -302
  134. package/assets/bootstrap/scss/_list-group.scss +191 -191
  135. package/assets/bootstrap/scss/_modal.scss +237 -237
  136. package/assets/bootstrap/scss/_nav.scss +172 -172
  137. package/assets/bootstrap/scss/_navbar.scss +276 -276
  138. package/assets/bootstrap/scss/_offcanvas.scss +143 -143
  139. package/assets/bootstrap/scss/_pagination.scss +109 -109
  140. package/assets/bootstrap/scss/_popover.scss +196 -196
  141. package/assets/bootstrap/scss/_toasts.scss +70 -70
  142. package/assets/bootstrap/scss/_variables-dark.scss +87 -87
  143. package/assets/bootstrap/scss/_variables.scss +1633 -1633
  144. package/assets/bootstrap/scss/bootstrap-utilities.scss +15 -15
  145. package/assets/bootstrap/scss/forms/_floating-labels.scss +74 -74
  146. package/assets/bootstrap/scss/forms/_input-group.scss +129 -129
  147. package/assets/bootstrap/scss/helpers/_focus-ring.scss +5 -5
  148. package/assets/bootstrap/scss/helpers/_icon-link.scss +25 -25
  149. package/assets/bootstrap/scss/mixins/_banner.scss +9 -9
  150. package/assets/bootstrap/scss/mixins/_color-mode.scss +21 -21
  151. package/assets/bootstrap/scss/mixins/_forms.scss +152 -152
  152. package/assets/bootstrap/scss/mixins/_table-variants.scss +24 -24
  153. package/assets/bootstrap/scss/mixins/_utilities.scss +97 -97
  154. package/assets/css/components/actionbar.component.css +1 -1
  155. package/assets/css/components/actionbar.component.css.map +1 -1
  156. package/assets/css/components/address-lookup.component.css +1 -1
  157. package/assets/css/components/address-lookup.component.css.map +1 -1
  158. package/assets/css/components/applied-filters.css +1 -1
  159. package/assets/css/components/applied-filters.css.map +1 -1
  160. package/assets/css/components/barchart.component.css +1 -1
  161. package/assets/css/components/barchart.component.css.map +1 -1
  162. package/assets/css/components/calendar.component.css +1 -1
  163. package/assets/css/components/calendar.component.css.map +1 -1
  164. package/assets/css/components/card.component.css +1 -1
  165. package/assets/css/components/card.component.css.map +1 -1
  166. package/assets/css/components/card.module.css +1 -1
  167. package/assets/css/components/card.module.css.map +1 -1
  168. package/assets/css/components/carousel.component.css +1 -1
  169. package/assets/css/components/carousel.component.css.map +1 -1
  170. package/assets/css/components/charts.css +1 -1
  171. package/assets/css/components/charts.css.map +1 -1
  172. package/assets/css/components/collapsible-side.css +1 -1
  173. package/assets/css/components/collapsible-side.css.map +1 -1
  174. package/assets/css/components/config.component.css +1 -1
  175. package/assets/css/components/config.component.css.map +1 -1
  176. package/assets/css/components/content.component.css +1 -1
  177. package/assets/css/components/content.component.css.map +1 -1
  178. package/assets/css/components/doughnutchart.component.css +1 -1
  179. package/assets/css/components/doughnutchart.component.css.map +1 -1
  180. package/assets/css/components/fileupload.css +1 -1
  181. package/assets/css/components/fileupload.css.map +1 -1
  182. package/assets/css/components/filter-card.component.css +1 -1
  183. package/assets/css/components/filter-card.component.css.map +1 -1
  184. package/assets/css/components/header.css +1 -1
  185. package/assets/css/components/header.css.map +1 -1
  186. package/assets/css/components/inline-edit.css +1 -1
  187. package/assets/css/components/inline-edit.css.map +1 -1
  188. package/assets/css/components/input.component.css.map +1 -1
  189. package/assets/css/components/modal.component.css +1 -1
  190. package/assets/css/components/modal.component.css.map +1 -1
  191. package/assets/css/components/multi-step-modal.component.css +1 -1
  192. package/assets/css/components/multi-step-modal.component.css.map +1 -1
  193. package/assets/css/components/multiselect.css +1 -1
  194. package/assets/css/components/multiselect.css.map +1 -1
  195. package/assets/css/components/nav.component.css +1 -1
  196. package/assets/css/components/nav.component.css.map +1 -1
  197. package/assets/css/components/pagination.css +1 -1
  198. package/assets/css/components/pagination.css.map +1 -1
  199. package/assets/css/components/record-card.component.css +1 -1
  200. package/assets/css/components/record-card.component.css.map +1 -1
  201. package/assets/css/components/slider.css +1 -1
  202. package/assets/css/components/slider.css.map +1 -1
  203. package/assets/css/components/split-button.component.css +1 -1
  204. package/assets/css/components/split-button.component.css.map +1 -1
  205. package/assets/css/components/tabs.component.css +1 -1
  206. package/assets/css/components/tabs.component.css.map +1 -1
  207. package/assets/css/components/tabs.config.css +1 -1
  208. package/assets/css/components/tabs.config.css.map +1 -1
  209. package/assets/css/components/tag.component.css +1 -1
  210. package/assets/css/components/tag.component.css.map +1 -1
  211. package/assets/css/components/video-card.component.css +1 -1
  212. package/assets/css/components/video-card.component.css.map +1 -1
  213. package/assets/css/components/video-modal.component.css +1 -1
  214. package/assets/css/components/video-modal.component.css.map +1 -1
  215. package/assets/css/components/video.component.css +1 -0
  216. package/assets/css/components/video.component.css.map +1 -0
  217. package/assets/css/core.min.css +1 -1
  218. package/assets/css/core.min.css.map +1 -1
  219. package/assets/css/elements/badge-tag.css +1 -1
  220. package/assets/css/elements/badge-tag.css.map +1 -1
  221. package/assets/css/elements/buttons--action.css +1 -1
  222. package/assets/css/elements/buttons--action.css.map +1 -1
  223. package/assets/css/elements/buttons--global.css +1 -1
  224. package/assets/css/elements/buttons--global.css.map +1 -1
  225. package/assets/css/elements/buttons--secondary.css +1 -1
  226. package/assets/css/elements/buttons--secondary.css.map +1 -1
  227. package/assets/css/elements/buttons--special.css +1 -1
  228. package/assets/css/elements/buttons--special.css.map +1 -1
  229. package/assets/css/elements/buttons--tertiary.css +1 -1
  230. package/assets/css/elements/buttons--tertiary.css.map +1 -1
  231. package/assets/css/elements/buttons.css +1 -1
  232. package/assets/css/elements/buttons.css.map +1 -1
  233. package/assets/css/elements/container.css +1 -1
  234. package/assets/css/elements/container.css.map +1 -1
  235. package/assets/css/elements/details.css +1 -1
  236. package/assets/css/elements/details.css.map +1 -1
  237. package/assets/css/elements/dialog.css.map +1 -1
  238. package/assets/css/elements/dropdown.css +1 -1
  239. package/assets/css/elements/dropdown.css.map +1 -1
  240. package/assets/css/elements/feature.css +1 -1
  241. package/assets/css/elements/feature.css.map +1 -1
  242. package/assets/css/elements/forms.css +1 -1
  243. package/assets/css/elements/forms.css.map +1 -1
  244. package/assets/css/elements/label.css +1 -1
  245. package/assets/css/elements/label.css.map +1 -1
  246. package/assets/css/elements/links--collapsible-side.css +1 -0
  247. package/assets/css/elements/links--collapsible-side.css.map +1 -0
  248. package/assets/css/elements/links--global.css +1 -0
  249. package/assets/css/elements/links--global.css.map +1 -0
  250. package/assets/css/elements/links--video.css +1 -0
  251. package/assets/css/elements/links--video.css.map +1 -0
  252. package/assets/css/elements/links.css +1 -1
  253. package/assets/css/elements/links.css.map +1 -1
  254. package/assets/css/elements/modal.css.map +1 -1
  255. package/assets/css/elements/progress.css.map +1 -1
  256. package/assets/css/elements/textarea.css +1 -1
  257. package/assets/css/elements/textarea.css.map +1 -1
  258. package/assets/css/elements/toggle-button.css +1 -1
  259. package/assets/css/elements/toggle-button.css.map +1 -1
  260. package/assets/css/elements/tooltips.css +1 -1
  261. package/assets/css/elements/tooltips.css.map +1 -1
  262. package/assets/css/style.min.css +1 -1
  263. package/assets/css/style.min.css.map +1 -1
  264. package/assets/favicons/README.md +20 -20
  265. package/assets/favicons/browserconfig.xml +9 -9
  266. package/assets/favicons/manifest.json +31 -31
  267. package/assets/favicons/safari-pinned-tab.svg +35 -35
  268. package/assets/favicons/site.webmanifest +20 -20
  269. package/assets/js/components/accordion/accordion.component.js +15 -15
  270. package/assets/js/components/accordion/accordion.component.min.js +1 -1
  271. package/assets/js/components/accordion/accordion.component.min.js.map +1 -1
  272. package/assets/js/components/actionbar/actionbar.component.js +68 -68
  273. package/assets/js/components/actionbar/actionbar.component.min.js +2 -2
  274. package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
  275. package/assets/js/components/address-lookup/address-lookup.component.js +60 -60
  276. package/assets/js/components/address-lookup/address-lookup.component.min.js +4 -4
  277. package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
  278. package/assets/js/components/advanced-select/advanced-select.component.js +20 -20
  279. package/assets/js/components/advanced-select/advanced-select.component.min.js +1 -1
  280. package/assets/js/components/advanced-select/advanced-select.component.min.js.map +1 -1
  281. package/assets/js/components/applied-filters/applied-filters.component.js +7 -7
  282. package/assets/js/components/applied-filters/applied-filters.component.min.js +2 -2
  283. package/assets/js/components/applied-filters/applied-filters.component.min.js.map +1 -1
  284. package/assets/js/components/barchart/barchart.component.js +2 -2
  285. package/assets/js/components/barchart/barchart.component.min.js +3 -3
  286. package/assets/js/components/barchart/barchart.component.min.js.map +1 -1
  287. package/assets/js/components/bento-grid/bento-grid.component.js +9 -9
  288. package/assets/js/components/bento-grid/bento-grid.component.min.js +1 -1
  289. package/assets/js/components/bento-grid/bento-grid.component.min.js.map +1 -1
  290. package/assets/js/components/calendar/calendar.component.js +2 -2
  291. package/assets/js/components/calendar/calendar.component.min.js +2 -2
  292. package/assets/js/components/calendar/calendar.component.min.js.map +1 -1
  293. package/assets/js/components/card/card.component.js +3 -3
  294. package/assets/js/components/card/card.component.min.js +2 -2
  295. package/assets/js/components/card/card.component.min.js.map +1 -1
  296. package/assets/js/components/carousel/carousel.component.js +2 -2
  297. package/assets/js/components/carousel/carousel.component.min.js +4 -4
  298. package/assets/js/components/carousel/carousel.component.min.js.map +1 -1
  299. package/assets/js/components/chart/chart.component.js +1 -1
  300. package/assets/js/components/collapsible-side/collapsible-side.component.js +20 -20
  301. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +4 -4
  302. package/assets/js/components/collapsible-side/collapsible-side.component.min.js.map +1 -1
  303. package/assets/js/components/config/config.component.js +54 -54
  304. package/assets/js/components/config/config.component.min.js +2 -2
  305. package/assets/js/components/config/config.component.min.js.map +1 -1
  306. package/assets/js/components/content/content.component.js +9 -9
  307. package/assets/js/components/content/content.component.min.js +4 -4
  308. package/assets/js/components/content/content.component.min.js.map +1 -1
  309. package/assets/js/components/darkmode/darkmode.component.js +4 -4
  310. package/assets/js/components/darkmode/darkmode.component.min.js +1 -1
  311. package/assets/js/components/darkmode/darkmode.component.min.js.map +1 -1
  312. package/assets/js/components/doughnutchart/doughnutchart.component.js +2 -2
  313. package/assets/js/components/doughnutchart/doughnutchart.component.min.js +2 -2
  314. package/assets/js/components/doughnutchart/doughnutchart.component.min.js.map +1 -1
  315. package/assets/js/components/fileupload/fileupload.component.js +17 -17
  316. package/assets/js/components/fileupload/fileupload.component.min.js +2 -2
  317. package/assets/js/components/fileupload/fileupload.component.min.js.map +1 -1
  318. package/assets/js/components/filter-card/filter-card.component.js +9 -9
  319. package/assets/js/components/filter-card/filter-card.component.min.js +5 -5
  320. package/assets/js/components/filter-card/filter-card.component.min.js.map +1 -1
  321. package/assets/js/components/filterlist/filterlist.component.js +1 -1
  322. package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
  323. package/assets/js/components/filterlist/filterlist.component.min.js.map +1 -1
  324. package/assets/js/components/form/form.component.js +5 -5
  325. package/assets/js/components/form/form.component.min.js +1 -1
  326. package/assets/js/components/form/form.component.min.js.map +1 -1
  327. package/assets/js/components/header/header.component.js +53 -53
  328. package/assets/js/components/header/header.component.min.js +2 -2
  329. package/assets/js/components/header/header.component.min.js.map +1 -1
  330. package/assets/js/components/inline-edit/inline-edit.component.js +16 -16
  331. package/assets/js/components/inline-edit/inline-edit.component.min.js +4 -4
  332. package/assets/js/components/inline-edit/inline-edit.component.min.js.map +1 -1
  333. package/assets/js/components/input/input.component.js +11 -11
  334. package/assets/js/components/input/input.component.min.js +1 -1
  335. package/assets/js/components/input/input.component.min.js.map +1 -1
  336. package/assets/js/components/input-range/input-range.component.js +9 -9
  337. package/assets/js/components/input-range/input-range.component.min.js +1 -1
  338. package/assets/js/components/input-range/input-range.component.min.js.map +1 -1
  339. package/assets/js/components/marketing/marketing.component.js +10 -10
  340. package/assets/js/components/marketing/marketing.component.min.js +1 -1
  341. package/assets/js/components/marketing/marketing.component.min.js.map +1 -1
  342. package/assets/js/components/menu/menu.component.js +6 -6
  343. package/assets/js/components/menu/menu.component.min.js +1 -1
  344. package/assets/js/components/menu/menu.component.min.js.map +1 -1
  345. package/assets/js/components/milestone/milestone.component.js +2 -2
  346. package/assets/js/components/milestone/milestone.component.min.js +1 -1
  347. package/assets/js/components/milestone/milestone.component.min.js.map +1 -1
  348. package/assets/js/components/milestone-group/milestone-group.component.js +2 -2
  349. package/assets/js/components/milestone-group/milestone-group.component.min.js +1 -1
  350. package/assets/js/components/milestone-group/milestone-group.component.min.js.map +1 -1
  351. package/assets/js/components/modal/modal.component.js +25 -25
  352. package/assets/js/components/modal/modal.component.min.js +4 -4
  353. package/assets/js/components/modal/modal.component.min.js.map +1 -1
  354. package/assets/js/components/multi-step/multi-step.component.js +1 -1
  355. package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
  356. package/assets/js/components/multi-step/multi-step.component.min.js.map +1 -1
  357. package/assets/js/components/multi-step-modal/multi-step-modal.component.js +12 -12
  358. package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +4 -4
  359. package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js.map +1 -1
  360. package/assets/js/components/multiselect/multiselect.component.js +21 -21
  361. package/assets/js/components/multiselect/multiselect.component.min.js +4 -4
  362. package/assets/js/components/multiselect/multiselect.component.min.js.map +1 -1
  363. package/assets/js/components/nav/nav.component.js +45 -45
  364. package/assets/js/components/nav/nav.component.min.js +2 -2
  365. package/assets/js/components/nav/nav.component.min.js.map +1 -1
  366. package/assets/js/components/notification/notification.component.js +14 -14
  367. package/assets/js/components/notification/notification.component.min.js +1 -1
  368. package/assets/js/components/notification/notification.component.min.js.map +1 -1
  369. package/assets/js/components/pagination/pagination.component.js +39 -39
  370. package/assets/js/components/pagination/pagination.component.min.js +3 -3
  371. package/assets/js/components/pagination/pagination.component.min.js.map +1 -1
  372. package/assets/js/components/password/password.component.js +11 -11
  373. package/assets/js/components/password/password.component.min.js +1 -1
  374. package/assets/js/components/password/password.component.min.js.map +1 -1
  375. package/assets/js/components/popover/popover.component.js +8 -8
  376. package/assets/js/components/popover/popover.component.min.js +1 -1
  377. package/assets/js/components/popover/popover.component.min.js.map +1 -1
  378. package/assets/js/components/rank/rank.component.js +360 -360
  379. package/assets/js/components/rank/rank.component.min.js +1 -1
  380. package/assets/js/components/rank/rank.component.min.js.map +1 -1
  381. package/assets/js/components/rankings/rankings.component.js +18 -18
  382. package/assets/js/components/rankings/rankings.component.min.js +1 -1
  383. package/assets/js/components/rankings/rankings.component.min.js.map +1 -1
  384. package/assets/js/components/rating/rating.component.js +10 -10
  385. package/assets/js/components/rating/rating.component.min.js +1 -1
  386. package/assets/js/components/rating/rating.component.min.js.map +1 -1
  387. package/assets/js/components/record-card/record-card.component.js +2 -2
  388. package/assets/js/components/record-card/record-card.component.min.js +2 -2
  389. package/assets/js/components/record-card/record-card.component.min.js.map +1 -1
  390. package/assets/js/components/search/search.component.js +19 -19
  391. package/assets/js/components/search/search.component.min.js +1 -1
  392. package/assets/js/components/search/search.component.min.js.map +1 -1
  393. package/assets/js/components/slider/slider.component.js +12 -12
  394. package/assets/js/components/slider/slider.component.min.js +2 -2
  395. package/assets/js/components/slider/slider.component.min.js.map +1 -1
  396. package/assets/js/components/split-button/split-button.component.js +19 -19
  397. package/assets/js/components/split-button/split-button.component.min.js +3 -3
  398. package/assets/js/components/split-button/split-button.component.min.js.map +1 -1
  399. package/assets/js/components/std-address-lookup/std-address-lookup.component.js +114 -114
  400. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +4 -4
  401. package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js.map +1 -1
  402. package/assets/js/components/table/table.component.js +17 -17
  403. package/assets/js/components/table/table.component.min.js +1 -1
  404. package/assets/js/components/table/table.component.min.js.map +1 -1
  405. package/assets/js/components/table-ajax/table-ajax.component.js +17 -17
  406. package/assets/js/components/table-ajax/table-ajax.component.min.js +1 -1
  407. package/assets/js/components/table-ajax/table-ajax.component.min.js.map +1 -1
  408. package/assets/js/components/table-basic/table-basic.component.js +16 -16
  409. package/assets/js/components/table-basic/table-basic.component.min.js +1 -1
  410. package/assets/js/components/table-basic/table-basic.component.min.js.map +1 -1
  411. package/assets/js/components/table-no-submit/table-no-submit.component.js +17 -17
  412. package/assets/js/components/table-no-submit/table-no-submit.component.min.js +1 -1
  413. package/assets/js/components/table-no-submit/table-no-submit.component.min.js.map +1 -1
  414. package/assets/js/components/table-submit/table-submit.component.js +17 -17
  415. package/assets/js/components/table-submit/table-submit.component.min.js +1 -1
  416. package/assets/js/components/table-submit/table-submit.component.min.js.map +1 -1
  417. package/assets/js/components/tabs/tabs.component.js +31 -18
  418. package/assets/js/components/tabs/tabs.component.min.js +4 -4
  419. package/assets/js/components/tabs/tabs.component.min.js.map +1 -1
  420. package/assets/js/components/tag/tag.component.js +14 -14
  421. package/assets/js/components/tag/tag.component.min.js +4 -4
  422. package/assets/js/components/tag/tag.component.min.js.map +1 -1
  423. package/assets/js/components/tooltip/tooltip.component.js +9 -9
  424. package/assets/js/components/tooltip/tooltip.component.min.js +1 -1
  425. package/assets/js/components/tooltip/tooltip.component.min.js.map +1 -1
  426. package/assets/js/components/video/video.component.js +67 -0
  427. package/assets/js/components/video/video.component.min.js +21 -0
  428. package/assets/js/components/video/video.component.min.js.map +1 -0
  429. package/assets/js/components/video-card/video-card.component.js +53 -70
  430. package/assets/js/components/video-card/video-card.component.min.js +15 -7
  431. package/assets/js/components/video-card/video-card.component.min.js.map +1 -1
  432. package/assets/js/components/video-modal/video-modal.component.js +24 -58
  433. package/assets/js/components/video-modal/video-modal.component.min.js +12 -6
  434. package/assets/js/components/video-modal/video-modal.component.min.js.map +1 -1
  435. package/assets/js/components/word-count/word-count.component.js +1 -1
  436. package/assets/js/components/word-count/word-count.component.min.js +1 -1
  437. package/assets/js/components/word-count/word-count.component.min.js.map +1 -1
  438. package/assets/js/modules/card.module.js +14 -14
  439. package/assets/js/modules/chart.js +1 -1
  440. package/assets/js/modules/chart.module.js +5 -5
  441. package/assets/js/modules/helper.test.js +2 -2
  442. package/assets/js/modules/integration-tests.js +3 -3
  443. package/assets/js/modules/modal.js +4 -2
  444. package/assets/js/modules/table.js +3 -3
  445. package/assets/js/modules/tabs.js +1 -1
  446. package/assets/js/modules/videos.js +42 -0
  447. package/assets/js/scripts.bundle.js +1 -1
  448. package/assets/js/scripts.bundle.js.map +1 -1
  449. package/assets/js/scripts.bundle.min.js +1 -1
  450. package/assets/js/scripts.bundle.min.js.map +1 -1
  451. package/assets/js/scripts.js +4 -4
  452. package/assets/sass/_bs_grid.scss +41 -41
  453. package/assets/sass/_bs_utilities.scss +51 -51
  454. package/assets/sass/_components.scss +162 -162
  455. package/assets/sass/_corefiles.scss +31 -31
  456. package/assets/sass/_elements.scss +30 -30
  457. package/assets/sass/_fonts.scss +28 -28
  458. package/assets/sass/_func.scss +2 -2
  459. package/assets/sass/_functions/bs_functions.scss +487 -487
  460. package/assets/sass/_functions/bs_mixins.scss +2103 -2103
  461. package/assets/sass/_functions/bs_utilities.scss +922 -922
  462. package/assets/sass/_functions/bs_variables.scss +1701 -1703
  463. package/assets/sass/_functions/functions.scss +48 -48
  464. package/assets/sass/_functions/mixins.scss +1 -1
  465. package/assets/sass/_grid.scss +320 -320
  466. package/assets/sass/_print.scss +64 -64
  467. package/assets/sass/_utilities.scss +35 -35
  468. package/assets/sass/components/actionbar.component.scss +421 -421
  469. package/assets/sass/components/actionbar.global.scss +115 -115
  470. package/assets/sass/components/address-lookup.component.scss +161 -161
  471. package/assets/sass/components/address-lookup.preload.scss +90 -90
  472. package/assets/sass/components/applied-filters.scss +19 -19
  473. package/assets/sass/components/barchart.component.scss +347 -347
  474. package/assets/sass/components/bento-grid.component.scss +109 -109
  475. package/assets/sass/components/bento-grid.global.scss +248 -248
  476. package/assets/sass/components/calendar.component.scss +1272 -1272
  477. package/assets/sass/components/calendar.config.scss +423 -423
  478. package/assets/sass/components/card.component.scss +187 -182
  479. package/assets/sass/components/card.module.scss +154 -151
  480. package/assets/sass/components/carousel.component.scss +631 -631
  481. package/assets/sass/components/carousel.config.scss +84 -84
  482. package/assets/sass/components/charts.config.scss +86 -86
  483. package/assets/sass/components/charts.module.scss +588 -588
  484. package/assets/sass/components/charts.scss +1298 -1298
  485. package/assets/sass/components/collapsible-side.scss +307 -307
  486. package/assets/sass/components/config.component.scss +235 -235
  487. package/assets/sass/components/content.component.scss +18 -18
  488. package/assets/sass/components/darkmode.component.scss +20 -20
  489. package/assets/sass/components/doughnutchart.component.scss +206 -206
  490. package/assets/sass/components/fileupload.scss +162 -162
  491. package/assets/sass/components/filter-card.component.scss +99 -99
  492. package/assets/sass/components/header.scss +251 -256
  493. package/assets/sass/components/inline-edit.preload.scss +203 -203
  494. package/assets/sass/components/inline-edit.scss +40 -40
  495. package/assets/sass/components/input-range.component.scss +46 -46
  496. package/assets/sass/components/input.component.scss +101 -101
  497. package/assets/sass/components/marketing.component.scss +65 -65
  498. package/assets/sass/components/menu.component.scss +161 -190
  499. package/assets/sass/components/menu.global.scss +82 -82
  500. package/assets/sass/components/milestone.scss +216 -216
  501. package/assets/sass/components/modal.component.scss +252 -252
  502. package/assets/sass/components/multi-step-modal.component.scss +255 -255
  503. package/assets/sass/components/multi-step-modal.global.scss +92 -92
  504. package/assets/sass/components/multi-step.component.scss +144 -144
  505. package/assets/sass/components/multiselect.preload.scss +8 -8
  506. package/assets/sass/components/multiselect.scss +238 -238
  507. package/assets/sass/components/nav.component.scss +718 -718
  508. package/assets/sass/components/nav.docs.scss +55 -55
  509. package/assets/sass/components/nav.global.scss +870 -870
  510. package/assets/sass/components/nav.preload.scss +54 -54
  511. package/assets/sass/components/notification.scss +218 -218
  512. package/assets/sass/components/pagination.scss +237 -237
  513. package/assets/sass/components/password.component.scss +56 -56
  514. package/assets/sass/components/popover.component.scss +28 -28
  515. package/assets/sass/components/property-searchbar.scss +139 -139
  516. package/assets/sass/components/rank.component.scss +275 -275
  517. package/assets/sass/components/rankings.component.scss +70 -70
  518. package/assets/sass/components/rankings.global.scss +140 -140
  519. package/assets/sass/components/rating.component.css +211 -211
  520. package/assets/sass/components/record-card.component.scss +191 -191
  521. package/assets/sass/components/slider.scss +127 -127
  522. package/assets/sass/components/snapshot.scss +65 -65
  523. package/assets/sass/components/split-button.component.scss +83 -83
  524. package/assets/sass/components/stepper.scss +157 -157
  525. package/assets/sass/components/table-basic.component.scss +136 -136
  526. package/assets/sass/components/table-basic.global.scss +676 -676
  527. package/assets/sass/components/table.component.scss +51 -51
  528. package/assets/sass/components/table.global.scss +398 -398
  529. package/assets/sass/components/tabs.component.scss +34 -9
  530. package/assets/sass/components/tabs.config.scss +258 -254
  531. package/assets/sass/components/tag.component.scss +59 -59
  532. package/assets/sass/components/tag.preload.scss +20 -20
  533. package/assets/sass/components/testimonial.scss +125 -125
  534. package/assets/sass/components/timeline.scss +92 -92
  535. package/assets/sass/components/tooltip.component.scss +148 -148
  536. package/assets/sass/components/video-card.component.scss +49 -75
  537. package/assets/sass/components/video-modal.component.scss +26 -24
  538. package/assets/sass/components/video.component.scss +75 -0
  539. package/assets/sass/components/word-count.component.scss +26 -26
  540. package/assets/sass/core.scss +4 -4
  541. package/assets/sass/elements/admin-panel.css +310 -310
  542. package/assets/sass/elements/badge-tag.css +101 -101
  543. package/assets/sass/elements/brand.css +80 -80
  544. package/assets/sass/elements/button__group.css +135 -135
  545. package/assets/sass/elements/buttons--action.css +71 -54
  546. package/assets/sass/elements/buttons--compact.css +168 -168
  547. package/assets/sass/elements/{buttons--global.scss → buttons--global.css} +239 -246
  548. package/assets/sass/elements/{buttons--secondary.scss → buttons--secondary.css} +18 -24
  549. package/assets/sass/elements/{buttons--special.scss → buttons--special.css} +164 -171
  550. package/assets/sass/elements/{buttons--tertiary.scss → buttons--tertiary.css} +51 -57
  551. package/assets/sass/elements/buttons.scss +9 -14
  552. package/assets/sass/elements/code.css +45 -45
  553. package/assets/sass/elements/container.scss +118 -155
  554. package/assets/sass/elements/{details.scss → details.css} +224 -227
  555. package/assets/sass/elements/dialog.scss +75 -86
  556. package/assets/sass/elements/{dropdown.scss → dropdown.css} +85 -87
  557. package/assets/sass/elements/{feature.scss → feature.css} +174 -180
  558. package/assets/sass/elements/forms.scss +1337 -1338
  559. package/assets/sass/elements/highlight.css +76 -76
  560. package/assets/sass/elements/hr.css +41 -41
  561. package/assets/sass/elements/icons.css +48 -48
  562. package/assets/sass/elements/input.scss +212 -212
  563. package/assets/sass/elements/{label.scss → label.css} +20 -20
  564. package/assets/sass/elements/links--collapsible-side.scss +130 -0
  565. package/assets/sass/elements/links--global.scss +155 -0
  566. package/assets/sass/elements/links--video.scss +73 -0
  567. package/assets/sass/elements/links.scss +5 -348
  568. package/assets/sass/elements/lists--breadcrumbs.scss +26 -26
  569. package/assets/sass/elements/lists--steps.css +171 -171
  570. package/assets/sass/elements/lists--tick-list.scss +112 -112
  571. package/assets/sass/elements/lists.scss +99 -99
  572. package/assets/sass/elements/media.css +20 -20
  573. package/assets/sass/elements/modal.scss +411 -415
  574. package/assets/sass/elements/popover.scss +259 -259
  575. package/assets/sass/elements/prefix.scss +139 -139
  576. package/assets/sass/elements/progress.scss +208 -214
  577. package/assets/sass/elements/table.element.scss +144 -144
  578. package/assets/sass/elements/{textarea.scss → textarea.css} +84 -96
  579. package/assets/sass/elements/{toggle-button.scss → toggle-button.css} +49 -55
  580. package/assets/sass/elements/tooltips.scss +152 -151
  581. package/assets/sass/elements/type.css +166 -166
  582. package/assets/sass/email.scss +68 -68
  583. package/assets/sass/error.scss +31 -33
  584. package/assets/sass/foundations/animations.scss +2 -2
  585. package/assets/sass/foundations/colours.scss +104 -104
  586. package/assets/sass/foundations/reboot.scss +166 -166
  587. package/assets/sass/foundations/root.scss +269 -269
  588. package/assets/sass/main.scss +7 -7
  589. package/assets/sass/templates/auth.scss +106 -106
  590. package/assets/sass/templates/form.scss +95 -95
  591. package/assets/sass/utilities/{align.scss → align.css} +24 -24
  592. package/assets/sass/utilities/{border.scss → border.css} +65 -68
  593. package/assets/sass/utilities/{clearfix.scss → clearfix.css} +8 -8
  594. package/assets/sass/utilities/colours.scss +43 -43
  595. package/assets/sass/utilities/{columns.scss → columns.css} +61 -61
  596. package/assets/sass/utilities/display.scss +89 -89
  597. package/assets/sass/utilities/{fixed.scss → fixed.css} +16 -16
  598. package/assets/sass/utilities/flex.scss +291 -291
  599. package/assets/sass/utilities/{font-awesome-iso-fallbacks.scss → font-awesome-iso-fallbacks.css} +43 -43
  600. package/assets/sass/utilities/gap.css +26 -0
  601. package/assets/sass/utilities/{gradients.scss → gradients.css} +39 -39
  602. package/assets/sass/utilities/{js-display.scss → js-display.css} +12 -12
  603. package/assets/sass/utilities/{line-clamp.scss → line-clamp.css} +24 -24
  604. package/assets/sass/utilities/margins.scss +74 -74
  605. package/assets/sass/utilities/max-height.scss +93 -93
  606. package/assets/sass/utilities/{opacity.scss → opacity.css} +20 -20
  607. package/assets/sass/utilities/order.css +104 -0
  608. package/assets/sass/utilities/{overflow.scss → overflow.css} +16 -16
  609. package/assets/sass/utilities/paddings.scss +33 -33
  610. package/assets/sass/utilities/{pointer-events.scss → pointer-events.css} +8 -8
  611. package/assets/sass/utilities/position.css +68 -0
  612. package/assets/sass/utilities/{ratio.scss → ratio.css} +33 -33
  613. package/assets/sass/utilities/{rounded.scss → rounded.css} +56 -56
  614. package/assets/sass/utilities/{shadow.scss → shadow.css} +7 -7
  615. package/assets/sass/utilities/{sizes.scss → sizes.css} +92 -92
  616. package/assets/sass/utilities/{sticky.scss → sticky.css} +38 -38
  617. package/assets/sass/utilities/{text-truncate.scss → text-truncate.css} +6 -6
  618. package/assets/sass/utilities/{text.scss → text.css} +190 -190
  619. package/assets/sass/utilities/{visible.scss → visible.css} +8 -8
  620. package/assets/sass/utilities/{visually-hidden.scss → visually-hidden.css} +13 -13
  621. package/assets/sass/utilities/wider-colours.scss +8 -8
  622. package/assets/svg/illustrations/table.svg +165 -165
  623. package/assets/svg/logo.svg +56 -56
  624. package/assets/ts/components/accordion/accordion.component.ts +77 -77
  625. package/assets/ts/components/actionbar/actionbar.component.ts +567 -567
  626. package/assets/ts/components/address-lookup/address-lookup.component.ts +672 -672
  627. package/assets/ts/components/advanced-select/advanced-select.component.ts +116 -116
  628. package/assets/ts/components/applied-filters/applied-filters.component.ts +37 -37
  629. package/assets/ts/components/bento-grid/bento-grid.component.ts +88 -88
  630. package/assets/ts/components/collapsible-side/collapsible-side.component.ts +165 -165
  631. package/assets/ts/components/config/config.component.ts +699 -699
  632. package/assets/ts/components/content/content.component.ts +78 -78
  633. package/assets/ts/components/darkmode/darkmode.component.ts +108 -108
  634. package/assets/ts/components/fileupload/fileupload.component.ts +74 -74
  635. package/assets/ts/components/filter-card/filter-card.component.ts +106 -106
  636. package/assets/ts/components/form/form.component.ts +102 -102
  637. package/assets/ts/components/header/header.component.ts +97 -97
  638. package/assets/ts/components/inline-edit/inline-edit.component.ts +212 -212
  639. package/assets/ts/components/input/input.component.ts +278 -278
  640. package/assets/ts/components/input-range/input-range.component.ts +78 -78
  641. package/assets/ts/components/marketing/marketing.component.ts +44 -44
  642. package/assets/ts/components/menu/menu.component.ts +212 -212
  643. package/assets/ts/components/modal/modal.component.ts +184 -184
  644. package/assets/ts/components/multi-step-modal/multi-step-modal.component.ts +304 -304
  645. package/assets/ts/components/multiselect/multiselect.component.ts +349 -349
  646. package/assets/ts/components/nav/nav.component.ts +369 -369
  647. package/assets/ts/components/notification/notification.component.ts +172 -172
  648. package/assets/ts/components/pagination/pagination.component.ts +213 -213
  649. package/assets/ts/components/password/password.component.ts +118 -118
  650. package/assets/ts/components/popover/popover.component.ts +50 -50
  651. package/assets/ts/components/rank/rank.component.ts +394 -394
  652. package/assets/ts/components/rankings/rankings.component.ts +79 -79
  653. package/assets/ts/components/rating/rating.component.ts +86 -86
  654. package/assets/ts/components/search/search.component.ts +244 -244
  655. package/assets/ts/components/slider/slider.component.ts +170 -170
  656. package/assets/ts/components/split-button/split-button.component.ts +63 -63
  657. package/assets/ts/components/std-address-lookup/std-address-lookup.component.ts +1919 -1919
  658. package/assets/ts/components/table/table.component.ts +94 -94
  659. package/assets/ts/components/table-ajax/table-ajax.component.ts +70 -70
  660. package/assets/ts/components/table-basic/table-basic.component.ts +56 -56
  661. package/assets/ts/components/table-no-submit/table-no-submit.component.ts +130 -130
  662. package/assets/ts/components/table-submit/table-submit.component.ts +71 -71
  663. package/assets/ts/components/tabs/tabs.component.ts +70 -51
  664. package/assets/ts/components/tag/tag.component.ts +104 -104
  665. package/assets/ts/components/tooltip/tooltip.component.ts +98 -98
  666. package/assets/ts/components/video/video.component.ts +74 -0
  667. package/assets/ts/components/video-card/video-card.component.ts +129 -150
  668. package/assets/ts/components/video-modal/video-modal.component.ts +88 -137
  669. package/assets/ts/modules/advanced-select.ts +186 -186
  670. package/assets/ts/modules/applied-filters.ts +238 -238
  671. package/assets/ts/modules/card.module.ts +46 -46
  672. package/assets/ts/modules/chart.module.ts +594 -594
  673. package/assets/ts/modules/data-layer.md +71 -71
  674. package/assets/ts/modules/dialogs.ts +259 -259
  675. package/assets/ts/modules/dropdown.ts +216 -216
  676. package/assets/ts/modules/helper.test.ts +143 -143
  677. package/assets/ts/modules/helpers.ts +212 -212
  678. package/assets/ts/modules/integration-tests.ts +525 -525
  679. package/assets/ts/modules/modal.ts +45 -43
  680. package/assets/ts/modules/password.ts +82 -82
  681. package/assets/ts/modules/table.ts +1500 -1500
  682. package/assets/ts/modules/test.ts +22 -22
  683. package/assets/ts/modules/videos.ts +233 -176
  684. package/assets/ts/scripts.ts +111 -111
  685. package/dist/components.es.js +25 -25
  686. package/dist/components.umd.js +143 -113
  687. package/package.json +115 -116
  688. package/src/components/AdvancedSelect/AdvancedSelect.vue +28 -28
  689. package/src/components/Config/Config.vue +23 -23
  690. package/src/components/DarkMode/DarkMode.vue +19 -19
  691. package/src/components/Filterlist/Filterlist.vue +23 -23
  692. package/src/components/Form/Form.vue +22 -22
  693. package/src/components/Header/Header.vue +36 -36
  694. package/src/components/Input/Input.vue +22 -22
  695. package/src/components/InputRange/InputRange.vue +22 -22
  696. package/src/components/Modal/Modal.vue +22 -22
  697. package/src/components/MultiStepModal/MultiStepModal.vue +23 -23
  698. package/src/components/NoteFeed/NoteFeed.vue +82 -82
  699. package/src/components/Password/Password.vue +23 -23
  700. package/src/components/Popover/Popover.vue +22 -22
  701. package/src/components/PropertySearchbar/PropertySearchbar.vue +235 -235
  702. package/src/components/PropertySearchbar/README.md +25 -25
  703. package/src/components/Rating/Rating.vue +22 -22
  704. package/src/components/STDAddressLookup/STDAddressLookup.vue +22 -22
  705. package/src/components/Snapshot/Snapshot.vue +30 -30
  706. package/src/components/Tag/Tag.vue +22 -22
  707. package/src/components/Tooltip/Tooltip.vue +22 -22
  708. package/src/components/Video/Video.vue +22 -0
  709. package/src/components/VideoModal/VideoModal.vue +22 -22
  710. package/assets/sass/utilities/gap.scss +0 -8
  711. package/assets/sass/utilities/order.scss +0 -43
  712. package/assets/sass/utilities/position.scss +0 -52
@@ -1 +1 @@
1
- {"version":3,"file":"nav.component.min.js","sources":["nav.component.js"],"sourcesContent":["// Data layer Web component created\nwindow.dataLayer = window.dataLayer || [];\nwindow.dataLayer.push({\n event: 'customElementRegistered',\n element: 'nav',\n});\nclass iamNav extends HTMLElement {\n constructor() {\n super();\n const shadowRoot = this.attachShadow({ mode: 'open' });\n const assetLocation = document.body.hasAttribute('data-assets-location')\n ? document.body.getAttribute('data-assets-location')\n : '/assets';\n const loadCSS = `@import \"${assetLocation}/css/components/nav.component.css\";`;\n const loadExtraCSS = `@import \"${assetLocation}/css/components/nav.global.css\";`;\n const template = document.createElement('template');\n template.innerHTML = `\n <style class=\"styles\">\n\n \n ${loadCSS}\n </style>\n <style class=\"doc-styles\">\n </style>\n <link rel=\"stylesheet\" href=\"https://kit.fontawesome.com/8bd0fca975.css\" crossorigin=\"anonymous\">\n <div class=\"container\">\n <slot name=\"logo\"></slot>\n <div class=\"buttons-holder\"></div>\n <button class=\"btn-menu\" part=\"btn-menu\">Menu<i class=\"fa-regular fa-bars\"></i><i class=\"fa-regular fa-xmark-large\"></i></button>\n\n <div class=\"menu__outer\">\n <div class=\"menu closed\">\n \n <div class=\"menu__primary\">\n <slot></slot>\n <slot name=\"dual\"></slot>\n </div>\n <div class=\"dialog__wrapper d-none\" id=\"search-wrapper\"></div>\n <slot name=\"actions\"></slot>\n <div class=\"menu__secondary bg-light\">\n <div class=\"container\">\n <slot name=\"secondary\"></slot>\n </div>\n </div>\n </div>\n <slot name=\"menus\"></slot>\n </div> \n </div>\n <div class=\"backdrop\" part=\"backdrop\"></div>\n `;\n shadowRoot.appendChild(template.content.cloneNode(true));\n // insert extra CSS\n if (!document.getElementById('navGlobal'))\n document.head.insertAdjacentHTML('beforeend', `<style id=\"navGlobal\">${loadExtraCSS}</style>`);\n }\n connectedCallback() {\n // Load external CSS if needed\n if (this.hasAttribute('data-css'))\n this.shadowRoot\n .querySelector('.doc-styles')\n .insertAdjacentHTML('beforeend', `@import \"${this.getAttribute('data-css')}\";`);\n const menuButton = this.shadowRoot.querySelector('.btn-menu');\n const menu = this.shadowRoot.querySelector('.menu');\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const iamNav = this;\n const backdrop = this.shadowRoot.querySelector('.backdrop');\n const buttonsHolder = this.shadowRoot.querySelector('.buttons-holder');\n // Check the content\n this.querySelectorAll(':scope > *').forEach(function (element) {\n const tagname = element.tagName;\n switch (tagname) {\n case 'BUTTON':\n if (!element.hasAttribute('slot')) {\n element.setAttribute('slot', 'actions');\n menu.classList.add('has-actions');\n }\n break;\n }\n // Create menu button\n if (element.classList.contains('nav--menu') &&\n element.hasAttribute('data-title') &&\n element.hasAttribute('data-icon')) {\n const title = element.getAttribute('data-title');\n const iconClass = element.getAttribute('data-icon');\n // Create the menu button that sits seperately to the menu\n const button = document.createElement('button');\n button.setAttribute('slot', title);\n button.classList.add('btn-menu');\n button.setAttribute('part', 'btn-menu');\n button.innerHTML = `<span class=\"btn btn-primary\"><span>${title}</span><i class=\"${iconClass}\"></i><i class=\"fa-regular fa-xmark-large\"></i></span>`;\n buttonsHolder.insertAdjacentElement('beforeend', button);\n const mdButton = button.querySelector('.btn-primary');\n // Make sure the menu is added to the right part of the component\n element.setAttribute('slot', 'menus');\n // If open we need to make sure the main mobile menu is closed, the new button has the right state and the backdrop is shown\n if (element.classList.contains('open')) {\n button.setAttribute('aria-expanded', true);\n mdButton.classList.toggle('active');\n iamNav.classList.add('open');\n backdrop.classList.add('show');\n }\n else {\n element.classList.add('closed'); // closed class is added to prevent the elements being tabbed into, this causes visual issues\n }\n // Click event\n button.addEventListener('click', function (e) {\n e.preventDefault();\n button.toggleAttribute('aria-expanded');\n element.classList.toggle('open');\n mdButton.classList.toggle('active');\n // Close desktop menus\n const openMenu = iamNav.querySelector(':scope > details[open]');\n if (openMenu)\n openMenu.removeAttribute('open');\n // Close the main menu and fix states on the button, iamNav component and backdrop\n if (element.classList.contains('open')) {\n menu.classList.remove('open');\n menuButton.removeAttribute('aria-expanded');\n setTimeout(function () {\n menu.classList.add('closed');\n }, 1000); // Delay until its close so the animation is broken\n iamNav.classList.add('open');\n backdrop.classList.add('show');\n element.classList.remove('closed');\n }\n else {\n iamNav.classList.remove('open');\n backdrop.classList.remove('show');\n setTimeout(function () {\n element.classList.add('closed');\n }, 1000);\n }\n // Close any open menus\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (openmenu) {\n if (openmenu != element) {\n openmenu.classList.remove('open');\n }\n });\n iamNav.shadowRoot\n .querySelectorAll('.buttons-holder .btn-menu[aria-expanded]')\n .forEach(function (selectedButton) {\n if (selectedButton != button) {\n selectedButton.removeAttribute('aria-expanded');\n const innerBtn = selectedButton.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n }\n });\n }, false);\n }\n });\n this.querySelectorAll('details').forEach(function (element) {\n element.classList.add('details--revert');\n });\n // Has secondary link\n if (this.querySelector('a[slot=\"secondary\"]')) {\n menu.classList.add('has-secondary');\n }\n // Create a scroll width variable to help with the sizing of the menu with in the CSS\n document.documentElement.style.setProperty('--scrollbar-width', window.innerWidth - document.documentElement.offsetWidth + 'px');\n // Open and close the menu\n menuButton.addEventListener('click', function (e) {\n e.preventDefault();\n menuButton.toggleAttribute('aria-expanded');\n menu.classList.toggle('open');\n // Close any other menus\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (element) {\n element.classList.remove('open');\n setTimeout(function () {\n element.classList.add('closed');\n }, 1000);\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n const innerBtn = element.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n });\n if (menu.classList.contains('open')) {\n iamNav.classList.add('open');\n menu.classList.remove('closed');\n }\n else {\n iamNav.classList.remove('open');\n setTimeout(function () {\n menu.classList.add('closed');\n }, 1000);\n }\n }, false);\n // Allow outside JS to close the menu\n this.addEventListener('request-close', () => {\n menuButton.removeAttribute('aria-expanded');\n menu.classList.remove('open');\n iamNav.classList.remove('open');\n });\n // Close the menu on the click of the backdrop on desktop\n backdrop.addEventListener('click', () => {\n const openMenu = this.querySelector('details[open] summary');\n if (openMenu)\n openMenu.click();\n iamNav.classList.toggle('open');\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (element) {\n element.classList.remove('open');\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n const innerBtn = element.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n });\n backdrop.classList.remove('show');\n });\n // On desktop close other menu's (details) when one is clicked\n this.addEventListener('click', (event) => {\n if (event && event.target instanceof HTMLElement && event.target.closest('summary')) {\n if (window.innerWidth > 992 && !event.target.closest('.nav--menu')) {\n const summary = event.target.closest('summary');\n const details = summary.closest('details');\n const wrapper = details.parentNode;\n if (details.hasAttribute('open'))\n details.removeAttribute('open');\n else\n details.setAttribute('open', 'true');\n // Close any bespoke menus\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (element) {\n element.classList.remove('open');\n setTimeout(function () {\n menu.classList.add('closed');\n }, 1000);\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n const innerBtn = element.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n });\n // Close any other dropdowns on the same level\n Array.from(wrapper.querySelectorAll(':scope > details')).forEach((detailsArrayElement) => {\n if (detailsArrayElement != details)\n detailsArrayElement.removeAttribute('open');\n });\n if (this.querySelectorAll(':scope > details[open]').length) {\n backdrop.classList.add('show');\n iamNav.classList.add('open');\n }\n else {\n backdrop.classList.remove('show');\n iamNav.classList.remove('open');\n }\n event.preventDefault();\n }\n }\n });\n // Mega menu title\n this.querySelectorAll('details').forEach((detailsElement) => {\n const summary = detailsElement.querySelector('summary');\n const containerDiv = detailsElement.querySelector(':Scope > div');\n containerDiv.setAttribute('data-title', summary.textContent);\n });\n // Search\n if (this.querySelector('[slot=\"search\"]')) {\n menu.classList.add('has-search');\n const searchWrapper = this.shadowRoot.querySelector('#search-wrapper');\n searchWrapper.classList.remove('d-none');\n searchWrapper.insertAdjacentHTML('afterbegin', `<button class=\"btn btn-secondary btn-compact fa-search me-0 mb-0\" id=\"search-button\" aria-controls=\"search-dialog\">Open Search field</button>\n <dialog id=\"search-dialog\">\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col mb-0 ms-auto col-md-7\">\n <slot name=\"search\"></slot>\n </div>\n <div class=\"col d-none d-md-block mw-fit-content ms-3\">\n <button class=\"btn btn-compact btn-secondary fa-xmark-large m-0 mb-0\" type=\"button\" id=\"search-close\">Close search field</button>\n </div>\n </div>\n </div>\n </dialog>`);\n const searchButton = this.shadowRoot.querySelector('#search-button');\n const searchClose = this.shadowRoot.querySelector('#search-close');\n const searchDialog = this.shadowRoot.querySelector('#search-dialog');\n if (this.hasAttribute('data-search-open')) {\n searchDialog.setAttribute('open', 'open');\n this.classList.add('search-open');\n searchButton.setAttribute('aria-expanded', true);\n }\n searchButton.addEventListener('click', () => {\n searchDialog.setAttribute('open', 'open');\n this.classList.add('search-open');\n searchButton.setAttribute('aria-expanded', true);\n });\n searchClose.addEventListener('click', () => {\n searchDialog.removeAttribute('open');\n this.classList.remove('search-open');\n searchButton.removeAttribute('aria-expanded');\n });\n }\n if (this.classList.contains('nav--sticky')) {\n let oldScrollY = window.scrollY;\n window.onscroll = function (e) {\n if (oldScrollY < window.scrollY) {\n document.body.setAttribute('data-direction', 'down');\n }\n else {\n document.body.setAttribute('data-direction', 'up');\n }\n if (window.scrollY > 100) {\n document.body.classList.add('past100');\n }\n else {\n document.body.classList.remove('past100');\n }\n oldScrollY = window.scrollY;\n };\n }\n }\n}\nexport default iamNav;\n"],"names":["iamNav","shadowRoot","template","menuButton","menu","backdrop","buttonsHolder","element","title","iconClass","button","mdButton","e","openMenu","openmenu","selectedButton","event","details","wrapper","detailsArrayElement","detailsElement","summary","searchWrapper","searchButton","searchClose","searchDialog","oldScrollY"],"mappings":"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"}
1
+ {"version":3,"file":"nav.component.min.js","sources":["nav.component.js"],"sourcesContent":["// Data layer Web component created\nwindow.dataLayer = window.dataLayer || [];\nwindow.dataLayer.push({\n event: 'customElementRegistered',\n element: 'nav',\n});\nclass iamNav extends HTMLElement {\n constructor() {\n super();\n const shadowRoot = this.attachShadow({ mode: 'open' });\n const assetLocation = document.body.hasAttribute('data-assets-location')\n ? document.body.getAttribute('data-assets-location')\n : '/assets';\n const loadCSS = `@import \"${assetLocation}/css/components/nav.component.css\";`;\n const loadExtraCSS = `@import \"${assetLocation}/css/components/nav.global.css\";`;\n const template = document.createElement('template');\n template.innerHTML = `\r\n <style class=\"styles\">\r\n\r\n \r\n ${loadCSS}\r\n </style>\r\n <style class=\"doc-styles\">\r\n </style>\r\n <link rel=\"stylesheet\" href=\"https://kit.fontawesome.com/8bd0fca975.css\" crossorigin=\"anonymous\">\r\n <div class=\"container\">\r\n <slot name=\"logo\"></slot>\r\n <div class=\"buttons-holder\"></div>\r\n <button class=\"btn-menu\" part=\"btn-menu\">Menu<i class=\"fa-regular fa-bars\"></i><i class=\"fa-regular fa-xmark-large\"></i></button>\r\n\r\n <div class=\"menu__outer\">\r\n <div class=\"menu closed\">\r\n \r\n <div class=\"menu__primary\">\r\n <slot></slot>\r\n <slot name=\"dual\"></slot>\r\n </div>\r\n <div class=\"dialog__wrapper d-none\" id=\"search-wrapper\"></div>\r\n <slot name=\"actions\"></slot>\r\n <div class=\"menu__secondary bg-light\">\r\n <div class=\"container\">\r\n <slot name=\"secondary\"></slot>\r\n </div>\r\n </div>\r\n </div>\r\n <slot name=\"menus\"></slot>\r\n </div> \r\n </div>\r\n <div class=\"backdrop\" part=\"backdrop\"></div>\r\n `;\n shadowRoot.appendChild(template.content.cloneNode(true));\n // insert extra CSS\n if (!document.getElementById('navGlobal'))\n document.head.insertAdjacentHTML('beforeend', `<style id=\"navGlobal\">${loadExtraCSS}</style>`);\n }\n connectedCallback() {\n // Load external CSS if needed\n if (this.hasAttribute('data-css'))\n this.shadowRoot\n .querySelector('.doc-styles')\n .insertAdjacentHTML('beforeend', `@import \"${this.getAttribute('data-css')}\";`);\n const menuButton = this.shadowRoot.querySelector('.btn-menu');\n const menu = this.shadowRoot.querySelector('.menu');\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const iamNav = this;\n const backdrop = this.shadowRoot.querySelector('.backdrop');\n const buttonsHolder = this.shadowRoot.querySelector('.buttons-holder');\n // Check the content\n this.querySelectorAll(':scope > *').forEach(function (element) {\n const tagname = element.tagName;\n switch (tagname) {\n case 'BUTTON':\n if (!element.hasAttribute('slot')) {\n element.setAttribute('slot', 'actions');\n menu.classList.add('has-actions');\n }\n break;\n }\n // Create menu button\n if (element.classList.contains('nav--menu') &&\n element.hasAttribute('data-title') &&\n element.hasAttribute('data-icon')) {\n const title = element.getAttribute('data-title');\n const iconClass = element.getAttribute('data-icon');\n // Create the menu button that sits seperately to the menu\n const button = document.createElement('button');\n button.setAttribute('slot', title);\n button.classList.add('btn-menu');\n button.setAttribute('part', 'btn-menu');\n button.innerHTML = `<span class=\"btn btn-primary\"><span>${title}</span><i class=\"${iconClass}\"></i><i class=\"fa-regular fa-xmark-large\"></i></span>`;\n buttonsHolder.insertAdjacentElement('beforeend', button);\n const mdButton = button.querySelector('.btn-primary');\n // Make sure the menu is added to the right part of the component\n element.setAttribute('slot', 'menus');\n // If open we need to make sure the main mobile menu is closed, the new button has the right state and the backdrop is shown\n if (element.classList.contains('open')) {\n button.setAttribute('aria-expanded', true);\n mdButton.classList.toggle('active');\n iamNav.classList.add('open');\n backdrop.classList.add('show');\n }\n else {\n element.classList.add('closed'); // closed class is added to prevent the elements being tabbed into, this causes visual issues\n }\n // Click event\n button.addEventListener('click', function (e) {\n e.preventDefault();\n button.toggleAttribute('aria-expanded');\n element.classList.toggle('open');\n mdButton.classList.toggle('active');\n // Close desktop menus\n const openMenu = iamNav.querySelector(':scope > details[open]');\n if (openMenu)\n openMenu.removeAttribute('open');\n // Close the main menu and fix states on the button, iamNav component and backdrop\n if (element.classList.contains('open')) {\n menu.classList.remove('open');\n menuButton.removeAttribute('aria-expanded');\n setTimeout(function () {\n menu.classList.add('closed');\n }, 1000); // Delay until its close so the animation is broken\n iamNav.classList.add('open');\n backdrop.classList.add('show');\n element.classList.remove('closed');\n }\n else {\n iamNav.classList.remove('open');\n backdrop.classList.remove('show');\n setTimeout(function () {\n element.classList.add('closed');\n }, 1000);\n }\n // Close any open menus\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (openmenu) {\n if (openmenu != element) {\n openmenu.classList.remove('open');\n }\n });\n iamNav.shadowRoot\n .querySelectorAll('.buttons-holder .btn-menu[aria-expanded]')\n .forEach(function (selectedButton) {\n if (selectedButton != button) {\n selectedButton.removeAttribute('aria-expanded');\n const innerBtn = selectedButton.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n }\n });\n }, false);\n }\n });\n this.querySelectorAll('details').forEach(function (element) {\n element.classList.add('details--revert');\n });\n // Has secondary link\n if (this.querySelector('a[slot=\"secondary\"]')) {\n menu.classList.add('has-secondary');\n }\n // Create a scroll width variable to help with the sizing of the menu with in the CSS\n document.documentElement.style.setProperty('--scrollbar-width', window.innerWidth - document.documentElement.offsetWidth + 'px');\n // Open and close the menu\n menuButton.addEventListener('click', function (e) {\n e.preventDefault();\n menuButton.toggleAttribute('aria-expanded');\n menu.classList.toggle('open');\n // Close any other menus\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (element) {\n element.classList.remove('open');\n setTimeout(function () {\n element.classList.add('closed');\n }, 1000);\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n const innerBtn = element.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n });\n if (menu.classList.contains('open')) {\n iamNav.classList.add('open');\n menu.classList.remove('closed');\n }\n else {\n iamNav.classList.remove('open');\n setTimeout(function () {\n menu.classList.add('closed');\n }, 1000);\n }\n }, false);\n // Allow outside JS to close the menu\n this.addEventListener('request-close', () => {\n menuButton.removeAttribute('aria-expanded');\n menu.classList.remove('open');\n iamNav.classList.remove('open');\n });\n // Close the menu on the click of the backdrop on desktop\n backdrop.addEventListener('click', () => {\n const openMenu = this.querySelector('details[open] summary');\n if (openMenu)\n openMenu.click();\n iamNav.classList.toggle('open');\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (element) {\n element.classList.remove('open');\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n const innerBtn = element.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n });\n backdrop.classList.remove('show');\n });\n // On desktop close other menu's (details) when one is clicked\n this.addEventListener('click', (event) => {\n if (event && event.target instanceof HTMLElement && event.target.closest('summary')) {\n if (window.innerWidth > 992 && !event.target.closest('.nav--menu')) {\n const summary = event.target.closest('summary');\n const details = summary.closest('details');\n const wrapper = details.parentNode;\n if (details.hasAttribute('open'))\n details.removeAttribute('open');\n else\n details.setAttribute('open', 'true');\n // Close any bespoke menus\n iamNav.querySelectorAll('.nav--menu.open').forEach(function (element) {\n element.classList.remove('open');\n setTimeout(function () {\n menu.classList.add('closed');\n }, 1000);\n });\n iamNav.shadowRoot.querySelectorAll('.buttons-holder .btn-menu[aria-expanded]').forEach(function (element) {\n element.removeAttribute('aria-expanded');\n const innerBtn = element.querySelector('.btn-primary');\n innerBtn.classList.remove('active');\n });\n // Close any other dropdowns on the same level\n Array.from(wrapper.querySelectorAll(':scope > details')).forEach((detailsArrayElement) => {\n if (detailsArrayElement != details)\n detailsArrayElement.removeAttribute('open');\n });\n if (this.querySelectorAll(':scope > details[open]').length) {\n backdrop.classList.add('show');\n iamNav.classList.add('open');\n }\n else {\n backdrop.classList.remove('show');\n iamNav.classList.remove('open');\n }\n event.preventDefault();\n }\n }\n });\n // Mega menu title\n this.querySelectorAll('details').forEach((detailsElement) => {\n const summary = detailsElement.querySelector('summary');\n const containerDiv = detailsElement.querySelector(':Scope > div');\n containerDiv.setAttribute('data-title', summary.textContent);\n });\n // Search\n if (this.querySelector('[slot=\"search\"]')) {\n menu.classList.add('has-search');\n const searchWrapper = this.shadowRoot.querySelector('#search-wrapper');\n searchWrapper.classList.remove('d-none');\n searchWrapper.insertAdjacentHTML('afterbegin', `<button class=\"btn btn-secondary btn-compact fa-search me-0 mb-0\" id=\"search-button\" aria-controls=\"search-dialog\">Open Search field</button>\r\n <dialog id=\"search-dialog\">\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col mb-0 ms-auto col-md-7\">\r\n <slot name=\"search\"></slot>\r\n </div>\r\n <div class=\"col d-none d-md-block mw-fit-content ms-3\">\r\n <button class=\"btn btn-compact btn-secondary fa-xmark-large m-0 mb-0\" type=\"button\" id=\"search-close\">Close search field</button>\r\n </div>\r\n </div>\r\n </div>\r\n </dialog>`);\n const searchButton = this.shadowRoot.querySelector('#search-button');\n const searchClose = this.shadowRoot.querySelector('#search-close');\n const searchDialog = this.shadowRoot.querySelector('#search-dialog');\n if (this.hasAttribute('data-search-open')) {\n searchDialog.setAttribute('open', 'open');\n this.classList.add('search-open');\n searchButton.setAttribute('aria-expanded', true);\n }\n searchButton.addEventListener('click', () => {\n searchDialog.setAttribute('open', 'open');\n this.classList.add('search-open');\n searchButton.setAttribute('aria-expanded', true);\n });\n searchClose.addEventListener('click', () => {\n searchDialog.removeAttribute('open');\n this.classList.remove('search-open');\n searchButton.removeAttribute('aria-expanded');\n });\n }\n if (this.classList.contains('nav--sticky')) {\n let oldScrollY = window.scrollY;\n window.onscroll = function (e) {\n if (oldScrollY < window.scrollY) {\n document.body.setAttribute('data-direction', 'down');\n }\n else {\n document.body.setAttribute('data-direction', 'up');\n }\n if (window.scrollY > 100) {\n document.body.classList.add('past100');\n }\n else {\n document.body.classList.remove('past100');\n }\n oldScrollY = window.scrollY;\n };\n }\n }\n}\nexport default iamNav;\n"],"names":["iamNav","shadowRoot","template","menuButton","menu","backdrop","buttonsHolder","element","title","iconClass","button","mdButton","e","openMenu","openmenu","selectedButton","event","details","wrapper","detailsArrayElement","detailsElement","summary","searchWrapper","searchButton","searchClose","searchDialog","oldScrollY"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import setupNotification, { closeNotification } from '../../modules/notification.js';
2
- import { trackComponent, trackComponentRegistered } from '../_global.js';
1
+ import setupNotification, { closeNotification } from '../../modules/notification';
2
+ import { trackComponent, trackComponentRegistered } from '../_global';
3
3
  trackComponentRegistered('iam-notification');
4
4
  class iamNotification extends HTMLElement {
5
5
  constructor() {
@@ -45,18 +45,18 @@ class iamNotification extends HTMLElement {
45
45
  const loadCSS = `@import "${assetLocation}/css/components/notification.css";`;
46
46
  const loadExtraCSS = `@import "${assetLocation}/css/components/notification.global.css";`;
47
47
  const template = document.createElement('template');
48
- template.innerHTML = `
49
- <style>
50
- ${loadCSS}
51
- ${this.hasAttribute('data-css') ? `${this.getAttribute('data-css')}` : ``}
52
- </style>
53
-
54
- <div class="notification">
55
- <div class="notification__icon"><slot name="icon"></slot></div>
56
- <div class="notification__inner"><div class="notification__text"><slot></slot></div><div class="notification__btns"><slot name="btns"></slot></div></div>
57
- <div class="notification__dismiss"></div>
58
- </div>
59
-
48
+ template.innerHTML = `
49
+ <style>
50
+ ${loadCSS}
51
+ ${this.hasAttribute('data-css') ? `${this.getAttribute('data-css')}` : ``}
52
+ </style>
53
+
54
+ <div class="notification">
55
+ <div class="notification__icon"><slot name="icon"></slot></div>
56
+ <div class="notification__inner"><div class="notification__text"><slot></slot></div><div class="notification__btns"><slot name="btns"></slot></div></div>
57
+ <div class="notification__dismiss"></div>
58
+ </div>
59
+
60
60
  `;
61
61
  this.shadowRoot.appendChild(template.content.cloneNode(true));
62
62
  // insert extra CSS
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * iamKey v7.7.1--beta4
2
+ * iamKey v7.7.1--beta6
3
3
  * Copyright 2022-2026 iamproperty
4
4
  */function l(e){if(e.hasAttribute("data-type")&&e.getAttribute("data-type")=="toast"){let i=document.querySelector(".notification__holder");i||(i=document.createElement("div"),i.classList.add("notification__holder"),i.classList.add("container"),document.querySelector("body").appendChild(i)),e.closest(".notification__holder")||i.appendChild(e)}if(e.setAttribute("role","alert"),e.addEventListener("click",function(i){event&&event.target instanceof HTMLElement&&(event.target.closest("[data-dismiss-button]")||event.target.matches("[data-dismiss-button]"))&&(i.preventDefault(),d(e))},!1),e.hasAttribute("data-timeout")){const i=e.getAttribute("data-timeout"),t=new f(function(){d(e)},i);e.addEventListener("mouseenter",()=>{t.pause()}),e.addEventListener("mouseleave",()=>{t.resume()})}}function f(e,i){let t,o,a=i;this.pause=function(){window.clearTimeout(t),a-=new Date-o},this.resume=function(){o=new Date,window.clearTimeout(t),t=window.setTimeout(e,a)},this.resume()}const d=function(e){e.classList.add("d-none")},m=e=>{window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:e})},u=(e,i,t)=>(window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementAdded",element:i}),t.forEach(o=>{e.addEventListener(o,function(a){const n={event:o,element:i,target:a.target};Object.keys(a.detail).forEach(s=>{const r=a.detail[s];n[s]=r}),window.dataLayer.push(n)})}),!0);m("iam-notification");class h extends HTMLElement{constructor(){super(),this.addColour=(t,o)=>{t.hasAttribute("data-type")?t.classList.add(`bg-${o}`):t.classList.add(`colour-${o}`)},this.addIcon=(t,o)=>{switch(o){case"danger":t.insertAdjacentHTML("beforeend",'<i class="fa-solid fa-circle-exclamation" aria-hidden="true" slot="icon"></i>');break;case"warning":t.insertAdjacentHTML("beforeend",'<i class="fa-solid fa-triangle-exclamation" aria-hidden="true" slot="icon"></i>');break;case"success":t.insertAdjacentHTML("beforeend",'<i class="fa-solid fa-check-circle" aria-hidden="true" slot="icon"></i>');break;default:t.insertAdjacentHTML("beforeend",'<i class="fa-solid fa-circle-info" aria-hidden="true" slot="icon"></i>')}},this.addDismissBtn=t=>{var o;(o=t.shadowRoot.querySelector(".notification__dismiss"))===null||o===void 0||(o.innerHTML='<button data-dismiss-button part="dismiss-btn">Dismiss</button>'),t.shadowRoot.querySelector(".notification__dismiss [data-dismiss-button]").addEventListener("click",function(){d(t);const a=new CustomEvent("dismiss",{detail:{class:t.classList}});t.dispatchEvent(a)},!1)},this.attachShadow({mode:"open"}),document.body.hasAttribute("data-assets-location")&&document.body.getAttribute("data-assets-location");const i=document.createElement("template");i.innerHTML=`
5
5
  <style>
@@ -1 +1 @@
1
- {"version":3,"file":"notification.component.min.js","sources":["../../modules/notification.js","../_global.js","notification.component.js"],"sourcesContent":["function setupNotification(element) {\n // Add toast to notification holder\n if (element.hasAttribute('data-type') && element.getAttribute('data-type') == 'toast') {\n let holder = document.querySelector('.notification__holder');\n if (!holder) {\n holder = document.createElement('div');\n holder.classList.add('notification__holder');\n holder.classList.add('container');\n document.querySelector('body').appendChild(holder);\n }\n if (!element.closest('.notification__holder'))\n holder.appendChild(element);\n }\n element.setAttribute('role', 'alert');\n // Create a dissmissable button\n element.addEventListener('click', function (e) {\n if (event &&\n event.target instanceof HTMLElement &&\n (event.target.closest('[data-dismiss-button]') || event.target.matches('[data-dismiss-button]'))) {\n e.preventDefault();\n closeNotification(element);\n }\n }, false);\n // Self disappearing alert\n if (element.hasAttribute('data-timeout')) {\n const timeOut = element.getAttribute('data-timeout');\n const timer = new Timer(function () {\n closeNotification(element);\n }, timeOut);\n element.addEventListener('mouseenter', () => {\n timer.pause();\n });\n element.addEventListener('mouseleave', () => {\n timer.resume();\n });\n }\n}\nfunction Timer(callback, delay) {\n let timerId, start, remaining = delay;\n this.pause = function () {\n window.clearTimeout(timerId);\n remaining -= new Date() - start;\n };\n this.resume = function () {\n start = new Date();\n window.clearTimeout(timerId);\n timerId = window.setTimeout(callback, remaining);\n };\n this.resume();\n}\nexport const closeNotification = function (element) {\n element.classList.add('d-none');\n};\nexport default setupNotification;\n","export const trackComponentRegistered = (componentName) => {\n // Data layer Web component created\n window.dataLayer = window.dataLayer || [];\n window.dataLayer.push({\n event: 'customElementRegistered',\n element: componentName,\n });\n};\nexport const trackComponent = (component, componentName, trackEvents) => {\n // Data layer Web component created\n window.dataLayer = window.dataLayer || [];\n window.dataLayer.push({\n event: 'customElementAdded',\n element: componentName,\n });\n trackEvents.forEach((eventName) => {\n component.addEventListener(eventName, function (event) {\n const eventDetails = {\n event: eventName,\n element: componentName,\n target: event.target,\n };\n Object.keys(event.detail).forEach((eventKey) => {\n const eventDetail = event.detail[eventKey];\n eventDetails[eventKey] = eventDetail;\n });\n window.dataLayer.push(eventDetails);\n });\n });\n return true;\n};\n","import setupNotification, { closeNotification } from '../../modules/notification.js';\nimport { trackComponent, trackComponentRegistered } from '../_global.js';\ntrackComponentRegistered('iam-notification');\nclass iamNotification extends HTMLElement {\n constructor() {\n super();\n this.addColour = (component, status) => {\n if (component.hasAttribute('data-type'))\n component.classList.add(`bg-${status}`);\n else\n component.classList.add(`colour-${status}`);\n };\n this.addIcon = (component, status) => {\n switch (status) {\n case 'danger':\n component.insertAdjacentHTML('beforeend', '<i class=\"fa-solid fa-circle-exclamation\" aria-hidden=\"true\" slot=\"icon\"></i>');\n break;\n case 'warning':\n component.insertAdjacentHTML('beforeend', '<i class=\"fa-solid fa-triangle-exclamation\" aria-hidden=\"true\" slot=\"icon\"></i>');\n break;\n case 'success':\n component.insertAdjacentHTML('beforeend', '<i class=\"fa-solid fa-check-circle\" aria-hidden=\"true\" slot=\"icon\"></i>');\n break;\n default:\n component.insertAdjacentHTML('beforeend', '<i class=\"fa-solid fa-circle-info\" aria-hidden=\"true\" slot=\"icon\"></i>');\n }\n };\n this.addDismissBtn = (component) => {\n var _a;\n (_a = component.shadowRoot.querySelector('.notification__dismiss')) === null || _a === void 0 ? void 0 : _a.innerHTML = `<button data-dismiss-button part=\"dismiss-btn\">Dismiss</button>`;\n component.shadowRoot.querySelector('.notification__dismiss [data-dismiss-button]').addEventListener('click', function () {\n closeNotification(component);\n const customEvent = new CustomEvent('dismiss', {\n detail: {\n class: component.classList,\n },\n });\n component.dispatchEvent(customEvent);\n }, false);\n };\n this.attachShadow({ mode: 'open' });\n const assetLocation = document.body.hasAttribute('data-assets-location')\n ? document.body.getAttribute('data-assets-location')\n : '/assets';\n const loadCSS = `@import \"${assetLocation}/css/components/notification.css\";`;\n const loadExtraCSS = `@import \"${assetLocation}/css/components/notification.global.css\";`;\n const template = document.createElement('template');\n template.innerHTML = `\n <style>\n ${loadCSS}\n ${this.hasAttribute('data-css') ? `${this.getAttribute('data-css')}` : ``}\n </style>\n\n <div class=\"notification\">\n <div class=\"notification__icon\"><slot name=\"icon\"></slot></div>\n <div class=\"notification__inner\"><div class=\"notification__text\"><slot></slot></div><div class=\"notification__btns\"><slot name=\"btns\"></slot></div></div>\n <div class=\"notification__dismiss\"></div>\n </div>\n \n `;\n this.shadowRoot.appendChild(template.content.cloneNode(true));\n // insert extra CSS\n if (!document.getElementById('notificationHolder'))\n document.head.insertAdjacentHTML('beforeend', `<style id=\"notificationHolder\">${loadExtraCSS}</style>`);\n }\n connectedCallback() {\n var _a, _b, _c, _d;\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const wrapper = this;\n const defaultStatusBG = this.hasAttribute('data-type') ? 'white' : 'info';\n const statusBG = this.hasAttribute('data-status') ? this.getAttribute('data-status') : defaultStatusBG;\n this.addColour(this, statusBG);\n if (!this.querySelector('i')) {\n this.addIcon(this, statusBG);\n }\n const buttons = this.querySelectorAll('a,button');\n Array.from(buttons).forEach((button) => {\n button.setAttribute('slot', 'btns');\n button.classList.add('link');\n });\n if (buttons.length || this.hasAttribute('data-dismiss')) {\n this.classList.add('notification--dismissable');\n }\n if (!buttons.length) {\n (_b = (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.notification__btns')) === null || _b === void 0 ? void 0 : _b.classList.add('empty');\n }\n else {\n (_d = (_c = this.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.notification__btns')) === null || _d === void 0 ? void 0 : _d.classList.remove('empty');\n }\n if (this.hasAttribute('data-dismiss')) {\n this.addDismissBtn(this);\n }\n setupNotification(this);\n trackComponent(this, 'iam-notification', ['dismiss']);\n }\n static get observedAttributes() {\n return ['data-status', 'data-dismiss'];\n }\n attributeChangedCallback(attrName, oldVal, newVal) {\n var _a, _b;\n switch (attrName) {\n case 'data-status': {\n if (oldVal != newVal) {\n this.classList.remove('bg-danger');\n this.classList.remove('bg-warning');\n this.classList.remove('bg-success');\n this.classList.remove('bg-white');\n (_a = this.querySelector('i')) === null || _a === void 0 ? void 0 : _a.remove();\n this.addColour(this, newVal);\n this.addIcon(this, newVal);\n }\n break;\n }\n case 'data-dismiss': {\n if (oldVal != newVal) {\n if (this.hasAttribute('data-dismiss')) {\n this.addDismissBtn(this);\n }\n else {\n (_b = this.shadowRoot.querySelector('.notification__dismiss')) === null || _b === void 0 ? void 0 : _b.innerHTML = '';\n }\n }\n break;\n }\n }\n }\n}\nexport default iamNotification;\n"],"names":["setupNotification","element","holder","e","closeNotification","timeOut","timer","Timer","callback","delay","timerId","start","remaining","trackComponentRegistered","componentName","trackComponent","component","trackEvents","eventName","event","eventDetails","eventKey","eventDetail","iamNotification","status","_a","customEvent","template","_b","_c","_d","defaultStatusBG","statusBG","buttons","button","attrName","oldVal","newVal"],"mappings":"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"}
1
+ {"version":3,"file":"notification.component.min.js","sources":["../../modules/notification.js","../_global.js","notification.component.js"],"sourcesContent":["function setupNotification(element) {\n // Add toast to notification holder\n if (element.hasAttribute('data-type') && element.getAttribute('data-type') == 'toast') {\n let holder = document.querySelector('.notification__holder');\n if (!holder) {\n holder = document.createElement('div');\n holder.classList.add('notification__holder');\n holder.classList.add('container');\n document.querySelector('body').appendChild(holder);\n }\n if (!element.closest('.notification__holder'))\n holder.appendChild(element);\n }\n element.setAttribute('role', 'alert');\n // Create a dissmissable button\n element.addEventListener('click', function (e) {\n if (event &&\n event.target instanceof HTMLElement &&\n (event.target.closest('[data-dismiss-button]') || event.target.matches('[data-dismiss-button]'))) {\n e.preventDefault();\n closeNotification(element);\n }\n }, false);\n // Self disappearing alert\n if (element.hasAttribute('data-timeout')) {\n const timeOut = element.getAttribute('data-timeout');\n const timer = new Timer(function () {\n closeNotification(element);\n }, timeOut);\n element.addEventListener('mouseenter', () => {\n timer.pause();\n });\n element.addEventListener('mouseleave', () => {\n timer.resume();\n });\n }\n}\nfunction Timer(callback, delay) {\n let timerId, start, remaining = delay;\n this.pause = function () {\n window.clearTimeout(timerId);\n remaining -= new Date() - start;\n };\n this.resume = function () {\n start = new Date();\n window.clearTimeout(timerId);\n timerId = window.setTimeout(callback, remaining);\n };\n this.resume();\n}\nexport const closeNotification = function (element) {\n element.classList.add('d-none');\n};\nexport default setupNotification;\n","export const trackComponentRegistered = (componentName) => {\n // Data layer Web component created\n window.dataLayer = window.dataLayer || [];\n window.dataLayer.push({\n event: 'customElementRegistered',\n element: componentName,\n });\n};\nexport const trackComponent = (component, componentName, trackEvents) => {\n // Data layer Web component created\n window.dataLayer = window.dataLayer || [];\n window.dataLayer.push({\n event: 'customElementAdded',\n element: componentName,\n });\n trackEvents.forEach((eventName) => {\n component.addEventListener(eventName, function (event) {\n const eventDetails = {\n event: eventName,\n element: componentName,\n target: event.target,\n };\n Object.keys(event.detail).forEach((eventKey) => {\n const eventDetail = event.detail[eventKey];\n eventDetails[eventKey] = eventDetail;\n });\n window.dataLayer.push(eventDetails);\n });\n });\n return true;\n};\n","import setupNotification, { closeNotification } from '../../modules/notification';\nimport { trackComponent, trackComponentRegistered } from '../_global';\ntrackComponentRegistered('iam-notification');\nclass iamNotification extends HTMLElement {\n constructor() {\n super();\n this.addColour = (component, status) => {\n if (component.hasAttribute('data-type'))\n component.classList.add(`bg-${status}`);\n else\n component.classList.add(`colour-${status}`);\n };\n this.addIcon = (component, status) => {\n switch (status) {\n case 'danger':\n component.insertAdjacentHTML('beforeend', '<i class=\"fa-solid fa-circle-exclamation\" aria-hidden=\"true\" slot=\"icon\"></i>');\n break;\n case 'warning':\n component.insertAdjacentHTML('beforeend', '<i class=\"fa-solid fa-triangle-exclamation\" aria-hidden=\"true\" slot=\"icon\"></i>');\n break;\n case 'success':\n component.insertAdjacentHTML('beforeend', '<i class=\"fa-solid fa-check-circle\" aria-hidden=\"true\" slot=\"icon\"></i>');\n break;\n default:\n component.insertAdjacentHTML('beforeend', '<i class=\"fa-solid fa-circle-info\" aria-hidden=\"true\" slot=\"icon\"></i>');\n }\n };\n this.addDismissBtn = (component) => {\n var _a;\n (_a = component.shadowRoot.querySelector('.notification__dismiss')) === null || _a === void 0 ? void 0 : _a.innerHTML = `<button data-dismiss-button part=\"dismiss-btn\">Dismiss</button>`;\n component.shadowRoot.querySelector('.notification__dismiss [data-dismiss-button]').addEventListener('click', function () {\n closeNotification(component);\n const customEvent = new CustomEvent('dismiss', {\n detail: {\n class: component.classList,\n },\n });\n component.dispatchEvent(customEvent);\n }, false);\n };\n this.attachShadow({ mode: 'open' });\n const assetLocation = document.body.hasAttribute('data-assets-location')\n ? document.body.getAttribute('data-assets-location')\n : '/assets';\n const loadCSS = `@import \"${assetLocation}/css/components/notification.css\";`;\n const loadExtraCSS = `@import \"${assetLocation}/css/components/notification.global.css\";`;\n const template = document.createElement('template');\n template.innerHTML = `\r\n <style>\r\n ${loadCSS}\r\n ${this.hasAttribute('data-css') ? `${this.getAttribute('data-css')}` : ``}\r\n </style>\r\n\r\n <div class=\"notification\">\r\n <div class=\"notification__icon\"><slot name=\"icon\"></slot></div>\r\n <div class=\"notification__inner\"><div class=\"notification__text\"><slot></slot></div><div class=\"notification__btns\"><slot name=\"btns\"></slot></div></div>\r\n <div class=\"notification__dismiss\"></div>\r\n </div>\r\n \r\n `;\n this.shadowRoot.appendChild(template.content.cloneNode(true));\n // insert extra CSS\n if (!document.getElementById('notificationHolder'))\n document.head.insertAdjacentHTML('beforeend', `<style id=\"notificationHolder\">${loadExtraCSS}</style>`);\n }\n connectedCallback() {\n var _a, _b, _c, _d;\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const wrapper = this;\n const defaultStatusBG = this.hasAttribute('data-type') ? 'white' : 'info';\n const statusBG = this.hasAttribute('data-status') ? this.getAttribute('data-status') : defaultStatusBG;\n this.addColour(this, statusBG);\n if (!this.querySelector('i')) {\n this.addIcon(this, statusBG);\n }\n const buttons = this.querySelectorAll('a,button');\n Array.from(buttons).forEach((button) => {\n button.setAttribute('slot', 'btns');\n button.classList.add('link');\n });\n if (buttons.length || this.hasAttribute('data-dismiss')) {\n this.classList.add('notification--dismissable');\n }\n if (!buttons.length) {\n (_b = (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.notification__btns')) === null || _b === void 0 ? void 0 : _b.classList.add('empty');\n }\n else {\n (_d = (_c = this.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.notification__btns')) === null || _d === void 0 ? void 0 : _d.classList.remove('empty');\n }\n if (this.hasAttribute('data-dismiss')) {\n this.addDismissBtn(this);\n }\n setupNotification(this);\n trackComponent(this, 'iam-notification', ['dismiss']);\n }\n static get observedAttributes() {\n return ['data-status', 'data-dismiss'];\n }\n attributeChangedCallback(attrName, oldVal, newVal) {\n var _a, _b;\n switch (attrName) {\n case 'data-status': {\n if (oldVal != newVal) {\n this.classList.remove('bg-danger');\n this.classList.remove('bg-warning');\n this.classList.remove('bg-success');\n this.classList.remove('bg-white');\n (_a = this.querySelector('i')) === null || _a === void 0 ? void 0 : _a.remove();\n this.addColour(this, newVal);\n this.addIcon(this, newVal);\n }\n break;\n }\n case 'data-dismiss': {\n if (oldVal != newVal) {\n if (this.hasAttribute('data-dismiss')) {\n this.addDismissBtn(this);\n }\n else {\n (_b = this.shadowRoot.querySelector('.notification__dismiss')) === null || _b === void 0 ? void 0 : _b.innerHTML = '';\n }\n }\n break;\n }\n }\n }\n}\nexport default iamNotification;\n"],"names":["setupNotification","element","holder","e","closeNotification","timeOut","timer","Timer","callback","delay","timerId","start","remaining","trackComponentRegistered","componentName","trackComponent","component","trackEvents","eventName","event","eventDetails","eventKey","eventDetail","iamNotification","status","_a","customEvent","template","_b","_c","_d","defaultStatusBG","statusBG","buttons","button","attrName","oldVal","newVal"],"mappings":"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"}
@@ -7,42 +7,42 @@ class iamPagination extends HTMLElement {
7
7
  : '/assets';
8
8
  const loadCSS = `@import "${assetLocation}/css/components/pagination.css";`;
9
9
  const template = document.createElement('template');
10
- template.innerHTML = `
11
- <style>
12
- ${loadCSS}
13
-
14
- ${this.hasAttribute('css') ? `@import "${this.getAttribute('css')}";` : ``}
15
- </style>
16
- <link rel="stylesheet" href="https://kit.fontawesome.com/8bd0fca975.css" crossorigin="anonymous">
17
- <div class="pagination d-none">
18
-
19
- <div class="minimal" part="minimal">
20
- <div class="page-jump">
21
- <div><select class="select--minimal"></select></div>
22
- <span class="total-pages"></span>
23
- </div>
24
-
25
- <button class="prev" disabled>Prev</button>
26
- <button class="next" disabled>Next</button>
27
- </div>
28
-
29
- <div class="item-count" part="item-count"></div>
30
- <div class="per-page" part="per-page">
31
- <div>
32
- <select class="select--minimal">
33
- <option value="15">15</option>
34
- <option value="25">25</option>
35
- <option value="40">40</option>
36
- <option value="50">50</option>
37
- </select>
38
- </div>
39
- <span> / page</span>
40
- </div>
41
- <div class="mobile-controls m-auto text-center">
42
- <i class="fa-solid fa-spinner fa-spin"></i>
43
- <button class="load-more btn btn-primary m-auto">Load more</a>
44
- </div>
45
- </div>
10
+ template.innerHTML = `
11
+ <style>
12
+ ${loadCSS}
13
+
14
+ ${this.hasAttribute('css') ? `@import "${this.getAttribute('css')}";` : ``}
15
+ </style>
16
+ <link rel="stylesheet" href="https://kit.fontawesome.com/8bd0fca975.css" crossorigin="anonymous">
17
+ <div class="pagination d-none">
18
+
19
+ <div class="minimal" part="minimal">
20
+ <div class="page-jump">
21
+ <div><select class="select--minimal"></select></div>
22
+ <span class="total-pages"></span>
23
+ </div>
24
+
25
+ <button class="prev" disabled>Prev</button>
26
+ <button class="next" disabled>Next</button>
27
+ </div>
28
+
29
+ <div class="item-count" part="item-count"></div>
30
+ <div class="per-page" part="per-page">
31
+ <div>
32
+ <select class="select--minimal">
33
+ <option value="15">15</option>
34
+ <option value="25">25</option>
35
+ <option value="40">40</option>
36
+ <option value="50">50</option>
37
+ </select>
38
+ </div>
39
+ <span> / page</span>
40
+ </div>
41
+ <div class="mobile-controls m-auto text-center">
42
+ <i class="fa-solid fa-spinner fa-spin"></i>
43
+ <button class="load-more btn btn-primary m-auto">Load more</a>
44
+ </div>
45
+ </div>
46
46
  `;
47
47
  this.shadowRoot.appendChild(template.content.cloneNode(true));
48
48
  }
@@ -136,9 +136,9 @@ class iamPagination extends HTMLElement {
136
136
  const defaultValues = [15, 25, 40, 50];
137
137
  // Update the per page options if needed
138
138
  if (increment && perPage.value != increment && !defaultValues.includes(increment)) {
139
- perPage.innerHTML = `<option value="${increment}">${increment}</option>
140
- <option value="${increment * 2}">${increment * 2}</option>
141
- <option value="${increment * 3}">${increment * 3}</option>
139
+ perPage.innerHTML = `<option value="${increment}">${increment}</option>
140
+ <option value="${increment * 2}">${increment * 2}</option>
141
+ <option value="${increment * 3}">${increment * 3}</option>
142
142
  <option value="${increment * 4}">${increment * 4}</option>`;
143
143
  }
144
144
  perPage.value = increment;