@iamproperty/components 7.0.0 → 7.1.0--beta2

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 (411) hide show
  1. package/assets/css/components/actionbar.css.map +1 -1
  2. package/assets/css/components/actionbar.global.css.map +1 -1
  3. package/assets/css/components/address-lookup.css.map +1 -1
  4. package/assets/css/components/applied-filters.css.map +1 -1
  5. package/assets/css/components/barchart.component.css +1 -1
  6. package/assets/css/components/barchart.component.css.map +1 -1
  7. package/assets/css/components/card.component.css +1 -1
  8. package/assets/css/components/card.component.css.map +1 -1
  9. package/assets/css/components/card.module.css.map +1 -1
  10. package/assets/css/components/carousel.component.css +1 -1
  11. package/assets/css/components/carousel.component.css.map +1 -1
  12. package/assets/css/components/carousel.config.css.map +1 -1
  13. package/assets/css/components/charts.config.css.map +1 -1
  14. package/assets/css/components/charts.css +1 -1
  15. package/assets/css/components/charts.css.map +1 -1
  16. package/assets/css/components/charts.module.css +1 -1
  17. package/assets/css/components/charts.module.css.map +1 -1
  18. package/assets/css/components/collapsible-side.css.map +1 -1
  19. package/assets/css/components/fileupload.css.map +1 -1
  20. package/assets/css/components/filter-card.component.css.map +1 -1
  21. package/assets/css/components/header.css.map +1 -1
  22. package/assets/css/components/inline-edit.css.map +1 -1
  23. package/assets/css/components/inline-edit.preload.css.map +1 -1
  24. package/assets/css/components/marketing.css.map +1 -1
  25. package/assets/css/components/multi-step.component.css.map +1 -1
  26. package/assets/css/components/multiselect.css +1 -1
  27. package/assets/css/components/multiselect.css.map +1 -1
  28. package/assets/css/components/multiselect.preload.css.map +1 -1
  29. package/assets/css/components/nav.css +1 -1
  30. package/assets/css/components/nav.css.map +1 -1
  31. package/assets/css/components/nav.docs.css.map +1 -1
  32. package/assets/css/components/nav.global.css +1 -1
  33. package/assets/css/components/nav.global.css.map +1 -1
  34. package/assets/css/components/nav.old.css +1 -1
  35. package/assets/css/components/nav.old.css.map +1 -1
  36. package/assets/css/components/nav.preload.css.map +1 -1
  37. package/assets/css/components/notification.css.map +1 -1
  38. package/assets/css/components/notification.global.css.map +1 -1
  39. package/assets/css/components/pagination.css.map +1 -1
  40. package/assets/css/components/property-searchbar.css +1 -1
  41. package/assets/css/components/property-searchbar.css.map +1 -1
  42. package/assets/css/components/record-card.component.css.map +1 -1
  43. package/assets/css/components/slider.css.map +1 -1
  44. package/assets/css/components/snapshot.css.map +1 -1
  45. package/assets/css/components/stepper.css.map +1 -1
  46. package/assets/css/components/table.css +1 -1
  47. package/assets/css/components/table.css.map +1 -1
  48. package/assets/css/components/table.global.css +1 -1
  49. package/assets/css/components/table.global.css.map +1 -1
  50. package/assets/css/components/tabs.css.map +1 -1
  51. package/assets/css/components/testimonial.css.map +1 -1
  52. package/assets/css/components/timeline.css +1 -1
  53. package/assets/css/components/timeline.css.map +1 -1
  54. package/assets/css/components/video-card.component.css.map +1 -1
  55. package/assets/css/core.min.css +1 -1
  56. package/assets/css/core.min.css.map +1 -1
  57. package/assets/css/style.min.css +1 -1
  58. package/assets/css/style.min.css.map +1 -1
  59. package/assets/js/components/_global.js +8 -8
  60. package/assets/js/components/accordion/accordion.component.js +13 -10
  61. package/assets/js/components/accordion/accordion.component.min.js +4 -4
  62. package/assets/js/components/accordion/accordion.component.min.js.map +1 -1
  63. package/assets/js/components/actionbar/actionbar.component.js +97 -83
  64. package/assets/js/components/actionbar/actionbar.component.min.js +5 -5
  65. package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
  66. package/assets/js/components/address-lookup/address-lookup.component.js +30 -26
  67. package/assets/js/components/address-lookup/address-lookup.component.min.js +4 -4
  68. package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
  69. package/assets/js/components/applied-filters/applied-filters.component.js +10 -6
  70. package/assets/js/components/applied-filters/applied-filters.component.min.js +3 -3
  71. package/assets/js/components/applied-filters/applied-filters.component.min.js.map +1 -1
  72. package/assets/js/components/barchart/barchart.component.js +8 -7
  73. package/assets/js/components/barchart/barchart.component.min.js +4 -4
  74. package/assets/js/components/barchart/barchart.component.min.js.map +1 -1
  75. package/assets/js/components/card/card.component.js +27 -12
  76. package/assets/js/components/card/card.component.min.js +3 -3
  77. package/assets/js/components/card/card.component.min.js.map +1 -1
  78. package/assets/js/components/carousel/carousel.component.js +18 -12
  79. package/assets/js/components/carousel/carousel.component.min.js +4 -4
  80. package/assets/js/components/carousel/carousel.component.min.js.map +1 -1
  81. package/assets/js/components/chart/chart.component.js +9 -8
  82. package/assets/js/components/collapsible-side/collapsible-side.component.js +20 -8
  83. package/assets/js/components/collapsible-side/collapsible-side.component.min.js +1 -1
  84. package/assets/js/components/collapsible-side/collapsible-side.component.min.js.map +1 -1
  85. package/assets/js/components/fileupload/fileupload.component.js +11 -7
  86. package/assets/js/components/fileupload/fileupload.component.min.js +2 -2
  87. package/assets/js/components/fileupload/fileupload.component.min.js.map +1 -1
  88. package/assets/js/components/filter-card/filter-card.component.js +19 -9
  89. package/assets/js/components/filter-card/filter-card.component.min.js +2 -2
  90. package/assets/js/components/filter-card/filter-card.component.min.js.map +1 -1
  91. package/assets/js/components/filterlist/filterlist.component.js +10 -6
  92. package/assets/js/components/filterlist/filterlist.component.min.js +3 -3
  93. package/assets/js/components/filterlist/filterlist.component.min.js.map +1 -1
  94. package/assets/js/components/header/header.component.js +8 -4
  95. package/assets/js/components/header/header.component.min.js +1 -1
  96. package/assets/js/components/header/header.component.min.js.map +1 -1
  97. package/assets/js/components/inline-edit/inline-edit.component.js +43 -23
  98. package/assets/js/components/inline-edit/inline-edit.component.min.js +4 -4
  99. package/assets/js/components/inline-edit/inline-edit.component.min.js.map +1 -1
  100. package/assets/js/components/marketing/marketing.component.js +11 -5
  101. package/assets/js/components/marketing/marketing.component.min.js +1 -1
  102. package/assets/js/components/marketing/marketing.component.min.js.map +1 -1
  103. package/assets/js/components/multi-step/multi-step.component.js +22 -19
  104. package/assets/js/components/multiselect/multiselect.component.js +62 -45
  105. package/assets/js/components/multiselect/multiselect.component.min.js +5 -5
  106. package/assets/js/components/multiselect/multiselect.component.min.js.map +1 -1
  107. package/assets/js/components/nav/nav.component.js +57 -38
  108. package/assets/js/components/nav/nav.component.min.js +5 -5
  109. package/assets/js/components/nav/nav.component.min.js.map +1 -1
  110. package/assets/js/components/notification/notification.component.js +9 -5
  111. package/assets/js/components/notification/notification.component.min.js +5 -5
  112. package/assets/js/components/notification/notification.component.min.js.map +1 -1
  113. package/assets/js/components/pagination/pagination.component.js +18 -14
  114. package/assets/js/components/pagination/pagination.component.min.js +2 -2
  115. package/assets/js/components/pagination/pagination.component.min.js.map +1 -1
  116. package/assets/js/components/record-card/record-card.component.js +10 -8
  117. package/assets/js/components/record-card/record-card.component.min.js +2 -2
  118. package/assets/js/components/record-card/record-card.component.min.js.map +1 -1
  119. package/assets/js/components/search/search.component.js +22 -17
  120. package/assets/js/components/search/search.component.min.js +4 -4
  121. package/assets/js/components/search/search.component.min.js.map +1 -1
  122. package/assets/js/components/slider/slider.component.js +25 -21
  123. package/assets/js/components/slider/slider.component.min.js +3 -3
  124. package/assets/js/components/slider/slider.component.min.js.map +1 -1
  125. package/assets/js/components/table/table.component.js +30 -24
  126. package/assets/js/components/table/table.component.min.js +7 -7
  127. package/assets/js/components/table/table.component.min.js.map +1 -1
  128. package/assets/js/components/tabs/tabs.component.js +10 -6
  129. package/assets/js/components/tabs/tabs.component.min.js +3 -3
  130. package/assets/js/components/tabs/tabs.component.min.js.map +1 -1
  131. package/assets/js/components/video-card/video-card.component.js +45 -33
  132. package/assets/js/components/video-card/video-card.component.min.js +3 -3
  133. package/assets/js/components/video-card/video-card.component.min.js.map +1 -1
  134. package/assets/js/components.bundle.js +1 -1
  135. package/assets/js/components.bundle.js.map +1 -1
  136. package/assets/js/components.js +35 -8
  137. package/assets/js/modules/applied-filters.js +20 -20
  138. package/assets/js/modules/carousel.js +65 -60
  139. package/assets/js/modules/chart.js +184 -134
  140. package/assets/js/modules/chart.module.js +74 -63
  141. package/assets/js/modules/data-layer.js +17 -17
  142. package/assets/js/modules/dialogs.js +47 -38
  143. package/assets/js/modules/drawer.js +1 -1
  144. package/assets/js/modules/dynamicEvents.js +24 -24
  145. package/assets/js/modules/file-upload.js +8 -9
  146. package/assets/js/modules/fileupload.js +5 -5
  147. package/assets/js/modules/filterlist.js +4 -4
  148. package/assets/js/modules/form.js +22 -18
  149. package/assets/js/modules/helpers.js +54 -44
  150. package/assets/js/modules/inputs.js +25 -21
  151. package/assets/js/modules/nav.js +3 -1
  152. package/assets/js/modules/notification.js +6 -6
  153. package/assets/js/modules/orderablelist.js +12 -12
  154. package/assets/js/modules/pagination.js +5 -5
  155. package/assets/js/modules/table.js +242 -181
  156. package/assets/js/modules/tabs.js +71 -60
  157. package/assets/js/modules/testimonial.js +11 -12
  158. package/assets/js/scripts.bundle.js +1 -1
  159. package/assets/js/scripts.bundle.js.map +1 -1
  160. package/assets/js/scripts.bundle.min.js +1 -1
  161. package/assets/js/scripts.bundle.min.js.map +1 -1
  162. package/assets/js/scripts.js +1 -1
  163. package/assets/js/tests/chart.spec.js +5 -5
  164. package/assets/js/tests/filterlist.spec.js +2 -2
  165. package/assets/js/tests/slider.spec.js +2 -2
  166. package/assets/js/tests/table.spec.js +2 -2
  167. package/assets/js/vendor/hibp.js +4 -4
  168. package/assets/sass/_components.scss +28 -40
  169. package/assets/sass/_corefiles.scss +22 -29
  170. package/assets/sass/_elements.scss +19 -19
  171. package/assets/sass/_fonts.scss +10 -7
  172. package/assets/sass/_func.scss +14 -14
  173. package/assets/sass/_functions/functions.scss +115 -90
  174. package/assets/sass/_functions/mixins.scss +72 -112
  175. package/assets/sass/_functions/utilities.scss +447 -393
  176. package/assets/sass/_functions/variables.scss +1357 -1371
  177. package/assets/sass/_print.scss +18 -16
  178. package/assets/sass/_tests/colours.spec.scss +15 -14
  179. package/assets/sass/_tests/func.spec.scss +1 -2
  180. package/assets/sass/_tests/mixins.spec.scss +9 -14
  181. package/assets/sass/_tests/typography.spec.scss +1 -2
  182. package/assets/sass/_utilities.scss +8 -12
  183. package/assets/sass/components/actionbar.global.scss +45 -64
  184. package/assets/sass/components/actionbar.scss +58 -84
  185. package/assets/sass/components/address-lookup.scss +9 -11
  186. package/assets/sass/components/applied-filters.scss +3 -7
  187. package/assets/sass/components/barchart.component.scss +68 -99
  188. package/assets/sass/components/card.component.scss +35 -50
  189. package/assets/sass/components/card.module.scss +34 -37
  190. package/assets/sass/components/carousel.component.scss +198 -177
  191. package/assets/sass/components/carousel.config.scss +13 -19
  192. package/assets/sass/components/charts.config.scss +16 -23
  193. package/assets/sass/components/charts.module.scss +139 -178
  194. package/assets/sass/components/charts.scss +173 -232
  195. package/assets/sass/components/collapsible-side.scss +65 -98
  196. package/assets/sass/components/fileupload.scss +17 -23
  197. package/assets/sass/components/filter-card.component.scss +21 -28
  198. package/assets/sass/components/header.scss +24 -37
  199. package/assets/sass/components/inline-edit.preload.scss +24 -45
  200. package/assets/sass/components/inline-edit.scss +4 -5
  201. package/assets/sass/components/marketing.scss +19 -14
  202. package/assets/sass/components/multi-step.component.scss +36 -42
  203. package/assets/sass/components/multiselect.preload.scss +9 -12
  204. package/assets/sass/components/multiselect.scss +20 -24
  205. package/assets/sass/components/nav.docs.scss +7 -15
  206. package/assets/sass/components/nav.global.scss +123 -177
  207. package/assets/sass/components/nav.old.scss +64 -135
  208. package/assets/sass/components/nav.preload.scss +11 -12
  209. package/assets/sass/components/nav.scss +126 -173
  210. package/assets/sass/components/notification.global.scss +2 -3
  211. package/assets/sass/components/notification.scss +17 -32
  212. package/assets/sass/components/pagination.scss +32 -44
  213. package/assets/sass/components/property-searchbar.scss +2 -6
  214. package/assets/sass/components/record-card.component.scss +42 -55
  215. package/assets/sass/components/slider.scss +38 -35
  216. package/assets/sass/components/snapshot.scss +4 -10
  217. package/assets/sass/components/stepper.scss +14 -22
  218. package/assets/sass/components/table.global.scss +130 -171
  219. package/assets/sass/components/table.scss +17 -27
  220. package/assets/sass/components/tabs.scss +23 -32
  221. package/assets/sass/components/testimonial.scss +6 -14
  222. package/assets/sass/components/timeline.scss +8 -12
  223. package/assets/sass/components/video-card.component.scss +9 -14
  224. package/assets/sass/components.reset.scss +5 -5
  225. package/assets/sass/core.scss +3 -3
  226. package/assets/sass/elements/admin-panel.scss +41 -45
  227. package/assets/sass/elements/badge-tag.scss +16 -26
  228. package/assets/sass/elements/brand.scss +13 -16
  229. package/assets/sass/elements/buttons.scss +80 -106
  230. package/assets/sass/elements/container.scss +24 -133
  231. package/assets/sass/elements/details.scss +30 -50
  232. package/assets/sass/elements/dialog.scss +4 -6
  233. package/assets/sass/elements/forms.scss +421 -437
  234. package/assets/sass/elements/icons.scss +3 -4
  235. package/assets/sass/elements/links.scss +17 -25
  236. package/assets/sass/elements/lists.scss +30 -47
  237. package/assets/sass/elements/media.scss +1 -4
  238. package/assets/sass/elements/modal.scss +54 -80
  239. package/assets/sass/elements/popover.scss +28 -45
  240. package/assets/sass/elements/progress.scss +30 -40
  241. package/assets/sass/elements/table.element.scss +10 -15
  242. package/assets/sass/elements/tooltips.scss +27 -49
  243. package/assets/sass/elements/type.scss +47 -53
  244. package/assets/sass/email.scss +7 -9
  245. package/assets/sass/error.scss +23 -20
  246. package/assets/sass/foundations/bs_grid.scss +0 -1
  247. package/assets/sass/foundations/grid.scss +120 -122
  248. package/assets/sass/foundations/reboot.scss +27 -35
  249. package/assets/sass/foundations/root.scss +21 -31
  250. package/assets/sass/helpers/dynamic.scss +5 -5
  251. package/assets/sass/helpers/line-clamp.scss +1 -2
  252. package/assets/sass/helpers/max-height.scss +28 -36
  253. package/assets/sass/helpers/wider-colours.scss +2 -5
  254. package/assets/sass/main.scss +4 -4
  255. package/assets/sass/templates/auth.scss +11 -18
  256. package/assets/sass/templates/form.scss +16 -29
  257. package/assets/ts/components/_global.ts +14 -17
  258. package/assets/ts/components/accordion/accordion.component.ts +23 -19
  259. package/assets/ts/components/actionbar/README.md +8 -7
  260. package/assets/ts/components/actionbar/actionbar.component.ts +170 -220
  261. package/assets/ts/components/address-lookup/address-lookup.component.ts +94 -130
  262. package/assets/ts/components/applied-filters/README.md +1 -1
  263. package/assets/ts/components/applied-filters/applied-filters.component.ts +16 -15
  264. package/assets/ts/components/barchart/barchart.component.ts +29 -26
  265. package/assets/ts/components/card/card.component.ts +56 -57
  266. package/assets/ts/components/carousel/README.md +8 -9
  267. package/assets/ts/components/carousel/carousel.component.ts +30 -33
  268. package/assets/ts/components/chart/README.md +1 -3
  269. package/assets/ts/components/chart/chart.component.ts +24 -36
  270. package/assets/ts/components/collapsible-side/README.md +1 -1
  271. package/assets/ts/components/collapsible-side/collapsible-side.component.ts +44 -57
  272. package/assets/ts/components/fileupload/README.md +3 -3
  273. package/assets/ts/components/fileupload/fileupload.component.ts +23 -28
  274. package/assets/ts/components/filter-card/filter-card.component.ts +32 -33
  275. package/assets/ts/components/filterlist/README.md +3 -3
  276. package/assets/ts/components/filterlist/filterlist.component.ts +18 -16
  277. package/assets/ts/components/header/README.md +8 -9
  278. package/assets/ts/components/header/header.component.ts +15 -16
  279. package/assets/ts/components/inline-edit/README.md +1 -0
  280. package/assets/ts/components/inline-edit/inline-edit.component.ts +71 -71
  281. package/assets/ts/components/marketing/marketing.component.ts +17 -16
  282. package/assets/ts/components/multi-step/multi-step.component.ts +114 -156
  283. package/assets/ts/components/multiselect/README.md +5 -5
  284. package/assets/ts/components/multiselect/multiselect.component.ts +116 -133
  285. package/assets/ts/components/nav/README.md +13 -13
  286. package/assets/ts/components/nav/nav.component.ts +171 -167
  287. package/assets/ts/components/notification/README.md +9 -9
  288. package/assets/ts/components/notification/notification.component.ts +33 -32
  289. package/assets/ts/components/pagination/README.md +12 -12
  290. package/assets/ts/components/pagination/pagination.component.ts +51 -69
  291. package/assets/ts/components/record-card/record-card.component.ts +24 -34
  292. package/assets/ts/components/search/README.md +6 -7
  293. package/assets/ts/components/search/search.component.ts +75 -91
  294. package/assets/ts/components/slider/slider.component.ts +62 -77
  295. package/assets/ts/components/table/README.md +8 -8
  296. package/assets/ts/components/table/table.component.ts +97 -134
  297. package/assets/ts/components/tabs/README.md +4 -4
  298. package/assets/ts/components/tabs/tabs.component.ts +16 -14
  299. package/assets/ts/components/video-card/video-card.component.ts +89 -93
  300. package/assets/ts/components.ts +44 -20
  301. package/assets/ts/html.d.ts +1 -7
  302. package/assets/ts/modules/applied-filters.ts +104 -135
  303. package/assets/ts/modules/card.module.ts +13 -18
  304. package/assets/ts/modules/carousel.ts +194 -195
  305. package/assets/ts/modules/chart.module.ts +201 -246
  306. package/assets/ts/modules/chart.ts +454 -472
  307. package/assets/ts/modules/data-layer.md +35 -31
  308. package/assets/ts/modules/data-layer.ts +18 -18
  309. package/assets/ts/modules/dialogs.ts +113 -117
  310. package/assets/ts/modules/drawer.ts +7 -9
  311. package/assets/ts/modules/dynamicEvents.ts +67 -100
  312. package/assets/ts/modules/file-upload.ts +43 -40
  313. package/assets/ts/modules/fileupload.ts +38 -60
  314. package/assets/ts/modules/filterlist.ts +14 -20
  315. package/assets/ts/modules/form.ts +126 -128
  316. package/assets/ts/modules/helpers.ts +114 -120
  317. package/assets/ts/modules/inputs.ts +88 -120
  318. package/assets/ts/modules/nav.ts +19 -18
  319. package/assets/ts/modules/notification.ts +28 -32
  320. package/assets/ts/modules/orderablelist.ts +90 -82
  321. package/assets/ts/modules/pagination.ts +14 -19
  322. package/assets/ts/modules/table.ts +516 -599
  323. package/assets/ts/modules/tabs.ts +120 -145
  324. package/assets/ts/modules/testimonial.ts +59 -64
  325. package/assets/ts/scripts.ts +7 -9
  326. package/assets/ts/tests/chart.spec.ts +11 -20
  327. package/assets/ts/tests/data-layer.spec.js +3 -4
  328. package/assets/ts/tests/filterlist.spec.ts +3 -6
  329. package/assets/ts/tests/slider.spec.ts +9 -15
  330. package/assets/ts/tests/table.spec.ts +7 -24
  331. package/assets/ts/vendor/hibp.ts +43 -43
  332. package/dist/components.es.js +280 -270
  333. package/dist/components.umd.js +67 -67
  334. package/dist/style.css +1 -1
  335. package/package.json +14 -4
  336. package/src/components/Accordion/Accordion.spec.js +25 -31
  337. package/src/components/Accordion/Accordion.vue +16 -19
  338. package/src/components/Accordion/AccordionItem.vue +39 -37
  339. package/src/components/Accordion/README.md +10 -12
  340. package/src/components/Actionbar/Actionbar.vue +15 -18
  341. package/src/components/Actionbar/README.md +8 -7
  342. package/src/components/AddressLookup/AddressLookup.vue +14 -16
  343. package/src/components/AppliedFilters/AppliedFilters.vue +14 -16
  344. package/src/components/Banner/Banner.spec.js +13 -15
  345. package/src/components/Banner/Banner.vue +19 -19
  346. package/src/components/Banner/README.md +8 -10
  347. package/src/components/BarChart/BarChart.vue +14 -16
  348. package/src/components/Card/Card.vue +13 -16
  349. package/src/components/Card/README.md +8 -8
  350. package/src/components/Carousel/Carousel.vue +15 -18
  351. package/src/components/Carousel/README.md +7 -7
  352. package/src/components/Chart/Chart.spec.js +64 -87
  353. package/src/components/Chart/Chart.vue +41 -40
  354. package/src/components/Chart/README.md +8 -9
  355. package/src/components/CollapsibleSideMenu/CollapsibleSideMenu.vue +8 -10
  356. package/src/components/CollapsibleSideMenu/README.md +1 -1
  357. package/src/components/FileUpload/FileUpload.vue +35 -40
  358. package/src/components/FileUpload/README.md +3 -3
  359. package/src/components/FilterCard/FilterCard.vue +14 -16
  360. package/src/components/Filterlist/Filterlist.vue +7 -9
  361. package/src/components/Filterlist/README.md +3 -3
  362. package/src/components/Header/Header.vue +23 -26
  363. package/src/components/Header/README.md +8 -9
  364. package/src/components/InlineEdit/InlineEdit.vue +26 -32
  365. package/src/components/Input/Input.vue +323 -233
  366. package/src/components/Input/README.md +11 -11
  367. package/src/components/Marketing/Marketing.vue +24 -27
  368. package/src/components/Marketing/README.md +7 -7
  369. package/src/components/MultiStep/MultiStep.vue +13 -15
  370. package/src/components/Multiselect/Multiselect.vue +14 -17
  371. package/src/components/Nav/Nav.vue +15 -29
  372. package/src/components/Nav/README.md +12 -12
  373. package/src/components/Nav-old/Nav.vue +88 -93
  374. package/src/components/Nav-old/README.md +11 -12
  375. package/src/components/NoteFeed/NoteFeed.vue +59 -56
  376. package/src/components/NoteFeed/README.md +6 -6
  377. package/src/components/Notification/Notification.vue +11 -15
  378. package/src/components/Notification/README.md +9 -9
  379. package/src/components/Pagination/Pagination.vue +14 -24
  380. package/src/components/Pagination/README.md +12 -12
  381. package/src/components/PropertySearchbar/PropertySearchbar.vue +191 -160
  382. package/src/components/PropertySearchbar/README.md +14 -15
  383. package/src/components/RecordCard/RecordCard.vue +14 -16
  384. package/src/components/Search/README.md +1 -1
  385. package/src/components/Search/Search.vue +13 -16
  386. package/src/components/Slider/Slider.vue +13 -16
  387. package/src/components/Snapshot/README.md +9 -10
  388. package/src/components/Snapshot/Snapshot.vue +15 -17
  389. package/src/components/Stepper/README.md +12 -13
  390. package/src/components/Stepper/Step.vue +22 -18
  391. package/src/components/Stepper/Stepper.spec.js +41 -46
  392. package/src/components/Stepper/Stepper.vue +17 -18
  393. package/src/components/Table/README.md +12 -11
  394. package/src/components/Table/Table.spec.js +17 -28
  395. package/src/components/Table/Table.vue +49 -48
  396. package/src/components/Tabs/README.md +8 -8
  397. package/src/components/Tabs/Tab.vue +21 -21
  398. package/src/components/Tabs/Tabs.vue +14 -17
  399. package/src/components/Testimonial/README.md +11 -12
  400. package/src/components/Testimonial/Testimonial.spec.js +22 -26
  401. package/src/components/Testimonial/Testimonial.vue +31 -25
  402. package/src/components/Timeline/README.md +3 -3
  403. package/src/components/Timeline/Timeline.spec.js +9 -11
  404. package/src/components/Timeline/Timeline.vue +10 -10
  405. package/src/components/VideoCard/VideoCard.vue +14 -16
  406. package/src/foundations/Logo/Logo.spec.js +30 -30
  407. package/src/foundations/Logo/Logo.vue +28 -28
  408. package/src/foundations/Logo/README.md +5 -4
  409. package/src/helpers/strings.js +11 -8
  410. package/src/index.js +27 -28
  411. package/src/vue-shim.d.ts +4 -4
@@ -1,13 +1,11 @@
1
- // @ts-nocheck
2
- import extendDialogs from "../../modules/dialogs.js";
3
- // Data layer Web component created
1
+ import extendDialogs from '../../modules/dialogs.js';
4
2
  window.dataLayer = window.dataLayer || [];
5
3
  window.dataLayer.push({
6
- "event": "customElementRegistered",
7
- "element": "action bar"
4
+ event: 'customElementRegistered',
5
+ element: 'action bar',
8
6
  });
9
7
  function setSelectAllInput(element, value) {
10
- if (element && value == "all") {
8
+ if (element && value == 'all') {
11
9
  element.querySelector('input').indeterminate = false;
12
10
  element.querySelector('input').checked = true;
13
11
  element.querySelector('label').textContent = `Select all`;
@@ -32,8 +30,12 @@ class iamActionbar extends HTMLElement {
32
30
  constructor() {
33
31
  super();
34
32
  this.attachShadow({ mode: 'open' });
35
- const assetLocation = document.body.hasAttribute('data-assets-location') ? document.body.getAttribute('data-assets-location') : '/assets';
36
- const coreCSS = document.body.hasAttribute('data-core-css') ? document.body.getAttribute('data-core-css') : `${assetLocation}/css/core.min.css`;
33
+ const assetLocation = document.body.hasAttribute('data-assets-location')
34
+ ? document.body.getAttribute('data-assets-location')
35
+ : '/assets';
36
+ const coreCSS = document.body.hasAttribute('data-core-css')
37
+ ? document.body.getAttribute('data-core-css')
38
+ : `${assetLocation}/css/core.min.css`;
37
39
  const loadCSS = `@import "${assetLocation}/css/components/actionbar.css";`;
38
40
  const loadExtraCSS = `@import "${assetLocation}/css/components/actionbar.global.css";`;
39
41
  const template = document.createElement('template');
@@ -93,91 +95,93 @@ class iamActionbar extends HTMLElement {
93
95
  document.head.insertAdjacentHTML('beforeend', `<style id="actionbarGlobal">${loadExtraCSS}</style>`);
94
96
  }
95
97
  connectedCallback() {
96
- let that = this;
97
- const actionbarWrapper = this.shadowRoot.querySelector('.actionbar__wrapper');
98
+ var _a, _b, _c, _d, _e, _f;
99
+ const actionbarWrapper = (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.actionbar__wrapper');
98
100
  // #region select all
99
101
  if (this.hasAttribute('data-selectall')) {
100
- actionbarWrapper.insertAdjacentHTML('afterbegin', `<div class="selectall pb-0"><input type="checkbox" name="selectall" id="selectall"><label for="selectall" class="m-0">Select all</label></div>`);
101
- let selectAll = this.shadowRoot.querySelector('.selectall');
102
+ actionbarWrapper === null || actionbarWrapper === void 0 ? void 0 : actionbarWrapper.insertAdjacentHTML('afterbegin', `<div class="selectall pb-0"><input type="checkbox" name="selectall" id="selectall"><label for="selectall" class="m-0">Select all</label></div>`);
103
+ const selectAll = (_b = this.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.selectall');
102
104
  if (this.hasAttribute('data-selected')) {
103
105
  setSelectAllInput(selectAll, this.getAttribute('data-selected'));
104
106
  }
105
- selectAll.addEventListener('change', (event) => {
107
+ selectAll === null || selectAll === void 0 ? void 0 : selectAll.addEventListener('change', (event) => {
108
+ var _a;
106
109
  if (event && event.target instanceof HTMLElement && event.target.closest('input')) {
107
- if (event.target.closest('input').checked)
110
+ if ((_a = event.target.closest('input')) === null || _a === void 0 ? void 0 : _a.checked)
108
111
  this.setAttribute('data-selected', 'all');
109
112
  else
110
- this.setAttribute('data-selected', 0);
113
+ this.setAttribute('data-selected', '0');
111
114
  }
112
115
  });
113
- let cancelButton = this.querySelector('button[data-cancel]');
116
+ const cancelButton = this.querySelector('button[data-cancel]');
114
117
  if (cancelButton) {
115
- cancelButton.addEventListener('click', (event) => {
116
- this.setAttribute('data-selected', 0);
118
+ cancelButton.addEventListener('click', () => {
119
+ this.setAttribute('data-selected', '0');
117
120
  });
118
121
  }
119
122
  }
120
123
  // Wtach div for the select inputs
121
124
  if (this.hasAttribute('data-select-watch')) {
122
125
  const element = document.getElementById(this.getAttribute('data-select-watch'));
123
- element.setAttribute('data-select-container', 'true');
124
- Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input, index) => {
125
- input.parentElement.setAttribute('slot', 'checkbox');
126
+ element === null || element === void 0 ? void 0 : element.setAttribute('data-select-container', 'true');
127
+ Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input) => {
128
+ var _a;
129
+ (_a = input.parentElement) === null || _a === void 0 ? void 0 : _a.setAttribute('slot', 'checkbox');
126
130
  });
127
- element.addEventListener('change', (event) => {
131
+ element === null || element === void 0 ? void 0 : element.addEventListener('change', (event) => {
128
132
  if (event && event.target instanceof HTMLElement && event.target.closest('[type="checkbox"]')) {
129
- let count = element.querySelectorAll('input[type="checkbox"]').length;
130
- let countChecked = element.querySelectorAll('input[type="checkbox"]:checked').length;
131
- that.setAttribute('data-selected', count == countChecked ? "all" : countChecked);
132
- let input = event.target.closest('[type="checkbox"]');
133
+ const count = element.querySelectorAll('input[type="checkbox"]').length;
134
+ const countChecked = element.querySelectorAll('input[type="checkbox"]:checked').length;
135
+ this.setAttribute('data-selected', count == countChecked ? 'all' : String(countChecked));
133
136
  if (countChecked) {
134
- Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input, index) => {
137
+ Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input) => {
138
+ var _a;
135
139
  if (input.closest('iam-card'))
136
- input.closest('iam-card').setAttribute('data-selected', 'true');
140
+ (_a = input.closest('iam-card')) === null || _a === void 0 ? void 0 : _a.setAttribute('data-selected', 'true');
137
141
  });
138
142
  }
139
143
  else {
140
- Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input, index) => {
144
+ Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input) => {
145
+ var _a;
141
146
  if (input.closest('iam-card'))
142
- input.closest('iam-card').removeAttribute('data-selected');
147
+ (_a = input.closest('iam-card')) === null || _a === void 0 ? void 0 : _a.removeAttribute('data-selected');
143
148
  });
144
149
  }
145
150
  }
146
- ;
147
151
  });
148
152
  }
149
153
  // #endregion
150
154
  // #region switchviews
151
155
  if (this.hasAttribute('data-switchviews')) {
152
156
  let btns = '';
153
- let viewList = this.getAttribute('data-switchviews').split(',');
154
- viewList.forEach((view, index) => {
157
+ const viewList = (_c = this.getAttribute('data-switchviews')) === null || _c === void 0 ? void 0 : _c.split(',');
158
+ viewList === null || viewList === void 0 ? void 0 : viewList.forEach((view) => {
155
159
  let icon = 'fa-grid-2';
156
- if (view == "list")
160
+ if (view == 'list')
157
161
  icon = 'fa-grip-lines';
158
- else if (view == "small")
162
+ else if (view == 'small')
159
163
  icon = 'fa-bars';
160
164
  btns += `<button class="btn btn-action btn-compact mb-0 fa-regular ${icon}">${view}</button>`;
161
165
  });
162
- actionbarWrapper.insertAdjacentHTML('afterbegin', `<div class="views m-0">${btns}</div>`);
163
- let views = this.shadowRoot.querySelector('.views');
164
- views.addEventListener('click', (event) => {
166
+ actionbarWrapper === null || actionbarWrapper === void 0 ? void 0 : actionbarWrapper.insertAdjacentHTML('afterbegin', `<div class="views m-0">${btns}</div>`);
167
+ const views = (_d = this.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('.views');
168
+ views === null || views === void 0 ? void 0 : views.addEventListener('click', (event) => {
165
169
  if (event && event.target instanceof HTMLElement && event.target.closest('.btn-action')) {
166
- let btn = event.target.closest('.btn-action');
170
+ const btn = event.target.closest('.btn-action');
167
171
  this.setAttribute('data-view', btn.textContent);
168
- const switchEvent = new CustomEvent("switch-view", { detail: { view: btn.textContent } });
172
+ const switchEvent = new CustomEvent('switch-view', { detail: { view: btn.textContent } });
169
173
  this.dispatchEvent(switchEvent);
170
174
  }
171
175
  });
172
176
  }
173
177
  // #endregion
174
178
  // #region search
175
- const searchBar = this.shadowRoot.querySelector('.actionbar--search');
179
+ const searchBar = (_e = this.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.actionbar--search');
176
180
  if (this.hasAttribute('data-search-value')) {
177
- this.shadowRoot.querySelector('#search').value = this.getAttribute('data-search-value');
181
+ ((_f = this.shadowRoot) === null || _f === void 0 ? void 0 : _f.querySelector('#search')).value = String(this.getAttribute('data-search-value'));
178
182
  }
179
183
  if (this.hasAttribute('data-search') && this.getAttribute('data-search') == 'show')
180
- searchBar.classList.add('show');
184
+ searchBar === null || searchBar === void 0 ? void 0 : searchBar.classList.add('show');
181
185
  const searchBtn = this.shadowRoot.querySelector('button[data-search]');
182
186
  this.shadowRoot.addEventListener('click', (event) => {
183
187
  if (event && event.target instanceof HTMLElement && event.target.closest('button[data-search]')) {
@@ -185,17 +189,23 @@ class iamActionbar extends HTMLElement {
185
189
  searchBtn.toggleAttribute('aria-expanded');
186
190
  }
187
191
  });
188
- searchBar.addEventListener('keyup', (event) => {
189
- const keyupEvent = new CustomEvent("search-keyup", { detail: { search: searchBar.querySelector('input').value } });
192
+ searchBar.addEventListener('keyup', () => {
193
+ const keyupEvent = new CustomEvent('search-keyup', {
194
+ detail: { search: searchBar.querySelector('input').value },
195
+ });
190
196
  this.dispatchEvent(keyupEvent);
191
197
  });
192
- searchBar.addEventListener('change', (event) => {
193
- const changeEvent = new CustomEvent("search-change", { detail: { search: searchBar.querySelector('input').value } });
198
+ searchBar.addEventListener('change', () => {
199
+ const changeEvent = new CustomEvent('search-change', {
200
+ detail: { search: searchBar.querySelector('input').value },
201
+ });
194
202
  this.dispatchEvent(changeEvent);
195
203
  });
196
204
  searchBar.addEventListener('click', (event) => {
197
205
  if (event && event.target instanceof HTMLElement && event.target.closest('button.suffix')) {
198
- const submitEvent = new CustomEvent("search-submit", { detail: { search: searchBar.querySelector('input').value } });
206
+ const submitEvent = new CustomEvent('search-submit', {
207
+ detail: { search: searchBar.querySelector('input').value },
208
+ });
199
209
  this.dispatchEvent(submitEvent);
200
210
  }
201
211
  });
@@ -205,14 +215,14 @@ class iamActionbar extends HTMLElement {
205
215
  extendDialogs(element);
206
216
  });
207
217
  // #region Reponsive safe area
208
- function hideButtons() {
218
+ const hideButtons = () => {
209
219
  const wrapperWidth = actionbarWrapper.scrollWidth;
210
220
  const screenWidth = document.documentElement.scrollWidth;
211
221
  let safeAreaWidth = 750;
212
222
  let elementMargin = 16;
213
223
  let tabletSafeWidth = 450;
214
- let mobileSafeWidth = that.hasAttribute('data-switchviews') ? 144 : 210;
215
- if (that.hasAttribute('data-large-safe-area')) {
224
+ let mobileSafeWidth = (this === null || this === void 0 ? void 0 : this.hasAttribute('data-switchviews')) ? 144 : 210;
225
+ if (this.hasAttribute('data-large-safe-area')) {
216
226
  safeAreaWidth = 1048;
217
227
  tabletSafeWidth = 620;
218
228
  mobileSafeWidth = 260;
@@ -242,42 +252,44 @@ class iamActionbar extends HTMLElement {
242
252
  elementMargin = elementMargin * modifier;
243
253
  // If the wrapper width is small we want to reduce the btn sizes by adding or removing btn-compact classes
244
254
  if (wrapperWidth < 576) {
245
- Array.from(that.querySelectorAll(':scope > .btn:not(.js-updated), :scope > .dialog__wrapper > .btn[class*="fa-"]:first-child:not(.js-updated)')).forEach((element, index) => {
255
+ Array.from(this.querySelectorAll(':scope > .btn:not(.js-updated), :scope > .dialog__wrapper > .btn[class*="fa-"]:first-child:not(.js-updated)')).forEach((element) => {
246
256
  element.className = element.className.replace(' btn-compact', ' _btn-compact');
247
257
  element.classList.add('btn-compact');
248
258
  element.classList.add('js-updated');
249
259
  });
250
260
  }
251
261
  else {
252
- Array.from(that.querySelectorAll(':scope > .btn.js-updated, :scope > .dialog__wrapper > .btn.js-updated:first-child')).forEach((element, index) => {
262
+ Array.from(this.querySelectorAll(':scope > .btn.js-updated, :scope > .dialog__wrapper > .btn.js-updated:first-child')).forEach((element) => {
253
263
  element.classList.remove('btn-compact');
254
264
  element.classList.remove('js-updated');
255
265
  element.className = element.className.replace(' _btn-compact', ' btn-compact');
256
266
  });
257
267
  }
258
268
  // Reset the elements before we decide what elements become slotted into the overflow
259
- Array.from(that.querySelectorAll('[slot]')).forEach((element, index) => {
260
- if (element.getAttribute("slot") == "overflow")
269
+ Array.from(this.querySelectorAll('[slot]')).forEach((element) => {
270
+ if (element.getAttribute('slot') == 'overflow')
261
271
  element.removeAttribute('slot');
262
- if (element.getAttribute("slot") == "selected-overflow")
272
+ if (element.getAttribute('slot') == 'selected-overflow')
263
273
  element.setAttribute('slot', 'selected');
264
274
  });
265
- Array.from(that.querySelectorAll('.show')).forEach((element, index) => {
275
+ Array.from(this.querySelectorAll('.show')).forEach((element) => {
266
276
  element.classList.remove('show');
267
277
  });
268
278
  // Foreach safe area lets check what elements are slotted in them and if they need an overflow
269
- Array.from(that.shadowRoot.querySelectorAll('.safe-area')).forEach((element, index) => {
279
+ Array.from(this.shadowRoot.querySelectorAll('.safe-area')).forEach((element) => {
280
+ var _a, _b, _c;
270
281
  // Decide on which overflow slot to use
271
- let overflowSlot = "overflow";
272
- if (element.querySelector('slot').hasAttribute('name') && element.querySelector('slot').getAttribute('name') == "selected")
273
- overflowSlot = "selected-overflow";
282
+ let overflowSlot = 'overflow';
283
+ if (((_a = element.querySelector('slot')) === null || _a === void 0 ? void 0 : _a.hasAttribute('name')) &&
284
+ ((_b = element.querySelector('slot')) === null || _b === void 0 ? void 0 : _b.getAttribute('name')) == 'selected')
285
+ overflowSlot = 'selected-overflow';
274
286
  // Get the slotted elements, remember they aren't children of the safe area
275
- let elements = element.querySelector('slot').assignedElements();
287
+ const elements = (_c = element.querySelector('slot')) === null || _c === void 0 ? void 0 : _c.assignedElements();
276
288
  let tempWidth = 44 * modifier; // Allow space for the overflow button
277
289
  // If search then allow for the search button width
278
- if (that.hasAttribute('data-search'))
290
+ if (this.hasAttribute('data-search'))
279
291
  tempWidth += 44 * modifier;
280
- // Foreach element that isn't an action button or dialog wrapper add to the width, these will not be moved into the overflow slot
292
+ // Foreach element this isn't an action button or dialog wrapper add to the width, these will not be moved into the overflow slot
281
293
  for (let i = 0; i < elements.length; i++) {
282
294
  if (!elements[i].classList.contains('btn-action') && !elements[i].classList.contains('dialog__wrapper')) {
283
295
  tempWidth += elements[i].offsetWidth;
@@ -289,28 +301,28 @@ class iamActionbar extends HTMLElement {
289
301
  if (elements[i].classList.contains('dialog__wrapper')) {
290
302
  elements[i].classList.add('show');
291
303
  tempWidth += elements[i].offsetWidth;
292
- tempWidth += (elementMargin / 2);
304
+ tempWidth += elementMargin / 2;
293
305
  // If we have exceeded the safe area then lets break the loop
294
- if (tempWidth - (elementMargin / 2) > safeAreaWidth) {
306
+ if (tempWidth - elementMargin / 2 > safeAreaWidth) {
295
307
  elements[i].classList.remove('show');
296
308
  break;
297
309
  }
298
310
  }
299
311
  }
300
- // Foreach action button
312
+ // Foreach action button
301
313
  for (let i = 0; i < elements.length; i++) {
302
314
  if (elements[i].classList.contains('btn-action')) {
303
315
  elements[i].classList.add('show');
304
316
  tempWidth += elements[i].offsetWidth;
305
- tempWidth += (elementMargin / 2);
317
+ tempWidth += elementMargin / 2;
306
318
  // If we have exceeded the safe area then lets break the loop
307
- if (tempWidth - (elementMargin / 2) > safeAreaWidth) {
319
+ if (tempWidth - elementMargin / 2 > safeAreaWidth) {
308
320
  elements[i].classList.remove('show');
309
321
  break;
310
322
  }
311
323
  }
312
324
  }
313
- let overflowDialog = element.querySelector('.dialog-overflow');
325
+ const overflowDialog = element.querySelector('.dialog-overflow');
314
326
  if (overflowDialog)
315
327
  overflowDialog.classList.add('d-none');
316
328
  // Decide which elements go into the overflow slot
@@ -326,37 +338,39 @@ class iamActionbar extends HTMLElement {
326
338
  }
327
339
  }
328
340
  });
329
- }
341
+ };
330
342
  // Check buttons on load and when the wrapper element gets resized.
331
343
  hideButtons();
332
344
  new ResizeObserver(hideButtons).observe(actionbarWrapper);
333
345
  // #endregion
334
346
  }
335
347
  static get observedAttributes() {
336
- return ["data-selected"];
348
+ return ['data-selected'];
337
349
  }
338
350
  attributeChangedCallback(attrName, oldVal, newVal) {
339
351
  switch (attrName) {
340
- case "data-selected": {
341
- let selectAll = this.shadowRoot.querySelector('.selectall');
352
+ case 'data-selected': {
353
+ const selectAll = this.shadowRoot.querySelector('.selectall');
342
354
  if (selectAll)
343
355
  setSelectAllInput(selectAll, newVal);
344
- const event = new CustomEvent("selected", { detail: { selected: newVal } });
356
+ const event = new CustomEvent('selected', { detail: { selected: newVal } });
345
357
  this.dispatchEvent(event);
346
- if (newVal == "all" && this.hasAttribute('data-select-watch')) {
347
- const element = document.getElementById(this.getAttribute('data-select-watch'));
348
- Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input, index) => {
358
+ if (newVal == 'all' && this.hasAttribute('data-select-watch')) {
359
+ const element = document.getElementById(String(this.getAttribute('data-select-watch')));
360
+ Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input) => {
361
+ var _a;
349
362
  input.checked = true;
350
363
  if (input.closest('iam-card'))
351
- input.closest('iam-card').setAttribute('data-selected', 'true');
364
+ (_a = input.closest('iam-card')) === null || _a === void 0 ? void 0 : _a.setAttribute('data-selected', 'true');
352
365
  });
353
366
  }
354
- if (newVal == "0" && this.hasAttribute('data-select-watch')) {
355
- const element = document.getElementById(this.getAttribute('data-select-watch'));
356
- Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input, index) => {
367
+ if (newVal == '0' && this.hasAttribute('data-select-watch')) {
368
+ const element = document.getElementById(String(this.getAttribute('data-select-watch')));
369
+ Array.from(element.querySelectorAll('input[type="checkbox"]')).forEach((input) => {
370
+ var _a;
357
371
  input.checked = false;
358
372
  if (input.closest('iam-card'))
359
- input.closest('iam-card').removeAttribute('data-selected', 'true');
373
+ (_a = input.closest('iam-card')) === null || _a === void 0 ? void 0 : _a.removeAttribute('data-selected');
360
374
  });
361
375
  }
362
376
  break;
@@ -1,9 +1,9 @@
1
1
  /*!
2
- * iamKey v7.0.0
2
+ * iamKey v7.1.0--beta2
3
3
  * Copyright 2022-2025 iamproperty
4
- */const _=i=>(Array.from(i.querySelectorAll("dialog[open]")).forEach((t,h)=>{t.closest(".dialog__wrapper")||(t.removeAttribute("open"),t.showModal(),t.focus(),v(t))}),i.addEventListener("click",t=>{if(t.target.tagName=="IAM-ACTIONBAR")return!1;if(t&&t.target instanceof HTMLElement&&t.target.closest("[data-modal]")){const o=t.target.closest("[data-modal]"),d=o.hasAttribute("data-modal")?o.getAttribute("data-modal"):o.getAttribute("data-filter"),a=document.querySelector(`dialog#${d}`);if(v(a),a.showModal(),a.focus(),!a.querySelector("iam-multi-step")){let e=a.offsetWidth;a.setAttribute("style",`max-width: ${e}px;`)}Array.from(a.querySelectorAll("[data-duplicate]")).forEach((e,s)=>{const l=e.getAttribute("data-duplicate"),b=document.getElementById(l);if(e.checked!=b.checked){e.checked=b.checked;let p=new Event("change");e.dispatchEvent(p)}}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"openModal",id:d})}if(t&&t.target instanceof HTMLElement&&t.target.closest("button.dialog__close")){const o=t.target.closest("dialog[open]");t.preventDefault(),o.close(),Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach((a,e)=>{a.classList.remove("active")});let d=new CustomEvent("dialog-closed",{bubbles:!0,cancelable:!0,detail:{modalId:o.id}});t.target.dispatchEvent(d),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:o.getAttribute("id")})}if(t&&t.target instanceof HTMLElement&&t.target.closest('button[formmethod="dialog"]')){const o=t.target.closest("dialog[open]");Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach((d,a)=>{d.classList.remove("active")}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:o.getAttribute("id")})}if(t&&t.target instanceof HTMLElement&&t.target.closest("dialog[open]")){let o=t.target.closest("dialog[open]");var h=window.getComputedStyle(o);if(h.display==="contents"&&(o=o.parentNode.closest("dialog[open]")),!o.classList.contains("dialog--transactional")&&!o.classList.contains("dialog--acknowledgement")){const d=o.getBoundingClientRect();(t.clientX<d.left||t.clientX>d.right||t.clientY<d.top||t.clientY>d.bottom)&&(t.target.closest("dialog *")||o.close(),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:o.getAttribute("id")}))}}if(t&&t.target instanceof HTMLElement&&t.target.closest(".dialog__wrapper > button")){t.stopPropagation();let o=t.target.closest(".dialog__wrapper > button"),d=o.parentNode,a="openPopover",e=d.querySelector(":scope > dialog");if(document.querySelector("*:not([data-keep-open]) > dialog[open]")&&document.querySelector("*:not([data-keep-open]) > dialog[open]")!=e&&o.closest("dialog[open]")!=document.querySelector("*:not([data-keep-open]) > dialog[open]")&&document.querySelector("*:not([data-keep-open]) > dialog[open]").close(),Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach((p,u)=>{p.removeAttribute("aria-expanded")}),e.hasAttribute("open"))e.close(),a="closePopover",e.removeAttribute("style"),o.removeAttribute("aria-expanded");else{e.show(),o.setAttribute("aria-expanded",!0);var n=o.getBoundingClientRect();let p=n.top,u=n.left;if(o.closest("iam-table")){let c=o.closest("iam-table").parentNode.getBoundingClientRect();p-=c.top,u-=c.left}e.classList.contains("dialog--fix")&&e.setAttribute("style",`position:fixed;top: ${p}px; left: ${u}px; margin: 3rem 0 0 0;`)}let s=e.getBoundingClientRect(),l=s.bottom-window.scrollY,b=window.innerHeight-window.scrollY;if(l>b){let p=e.hasAttribute("style")?e.getAttribute("style")+" ":"";e.setAttribute("style",p+"transform: translate(0, calc(-100% - 4rem))"),s=e.getBoundingClientRect(),s.top-window.scrollY<100&&e.removeAttribute("style")}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:a,id:o.textContent})}t&&t.target instanceof HTMLElement&&!t.target.closest("dialog[open]")&&!t.target.closest(".dialog__wrapper > button")&&(document.querySelector(".dialog__wrapper:not([data-keep-open]) > dialog[open]")&&document.querySelector(".dialog__wrapper:not([data-keep-open]) > dialog[open]").close(),Array.from(document.querySelectorAll(".dialog__wrapper:not([data-keep-open]) > button")).forEach((o,d)=>{o.removeAttribute("aria-expanded")}))}),null),v=i=>{if(!i.querySelector(":scope .mh-lg")&&!i.querySelector("iam-multi-step")){i.innerHTML=`<div class="mh-lg">${i.innerHTML}</div>`;let t=i.querySelector(".mh-lg"),h=i.querySelector(".mh-lg :is(.h1,.h2,.h3,.h4,.h5,.h6)");if(h){let n=h.previousSibling;t.before(h),n&&h.before(n)}}i.querySelector(":scope > button:first-child")||i.insertAdjacentHTML("afterbegin",'<button class="dialog__close">Close</button>')};window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"action bar"});function A(i,t){i&&t=="all"?(i.querySelector("input").indeterminate=!1,i.querySelector("input").checked=!0,i.querySelector("label").textContent="Select all"):i&&t==0?(i.querySelector("input").indeterminate=!1,i.querySelector("input").checked=!1,i.querySelector("label").textContent="Select all"):i&&t?(i.querySelector("input").indeterminate=!0,i.querySelector("input").checked=!1,i.querySelector("label").textContent=`${t} item${t>1?"s":""} selected`):i&&(i.querySelector("input").checked=!1,i.querySelector("input").indeterminate=!1,i.querySelector("label").textContent="Select all")}class k extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",h=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${t}/css/core.min.css`,n=document.createElement("template");n.innerHTML=`
4
+ */const M=o=>(Array.from(o.querySelectorAll("dialog[open]")).forEach((t,a)=>{t.closest(".dialog__wrapper")||(t.removeAttribute("open"),t.showModal(),t.focus(),E(t))}),o.addEventListener("click",t=>{if(t.target.tagName=="IAM-ACTIONBAR")return!1;if(t&&t.target instanceof HTMLElement&&t.target.closest("[data-modal]")){const a=t.target.closest("[data-modal]"),s=a.hasAttribute("data-modal")?a.getAttribute("data-modal"):a.getAttribute("data-filter"),n=document.querySelector(`dialog#${s}`);if(E(n),n.showModal(),n.focus(),!n.querySelector("iam-multi-step")){const i=n.offsetWidth;n.setAttribute("style",`max-width: ${i}px;`)}Array.from(n.querySelectorAll("[data-duplicate]")).forEach((i,f)=>{const h=i.getAttribute("data-duplicate"),d=document.getElementById(h);if(i.checked!=d.checked){i.checked=d.checked;const w=new Event("change");i.dispatchEvent(w)}}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"openModal",id:s})}if(t&&t.target instanceof HTMLElement&&t.target.closest("button.dialog__close")){const a=t.target.closest("dialog[open]");t.preventDefault(),a.close(),Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach((n,i)=>{n.classList.remove("active")});const s=new CustomEvent("dialog-closed",{bubbles:!0,cancelable:!0,detail:{modalId:a.id}});t.target.dispatchEvent(s),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:a.getAttribute("id")})}if(t&&t.target instanceof HTMLElement&&t.target.closest('button[formmethod="dialog"]')){const a=t.target.closest("dialog[open]");Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach((s,n)=>{s.classList.remove("active")}),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:a.getAttribute("id")})}if(t&&t.target instanceof HTMLElement&&t.target.closest("dialog[open]")){let a=t.target.closest("dialog[open]");if(window.getComputedStyle(a).display==="contents"&&(a=a.parentNode.closest("dialog[open]")),!a.classList.contains("dialog--transactional")&&!a.classList.contains("dialog--acknowledgement")){const n=a.getBoundingClientRect();(t.clientX<n.left||t.clientX>n.right||t.clientY<n.top||t.clientY>n.bottom)&&(t.target.closest("dialog *")||a.close(),window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"closeModal",id:a.getAttribute("id")}))}}if(t&&t.target instanceof HTMLElement&&t.target.closest(".dialog__wrapper > button")){t.stopPropagation();const a=t.target.closest(".dialog__wrapper > button"),s=a.parentNode;let n="openPopover";const i=s.querySelector(":scope > dialog");if(document.querySelector("*:not([data-keep-open]) > dialog[open]")&&document.querySelector("*:not([data-keep-open]) > dialog[open]")!=i&&a.closest("dialog[open]")!=document.querySelector("*:not([data-keep-open]) > dialog[open]")&&document.querySelector("*:not([data-keep-open]) > dialog[open]").close(),Array.from(document.querySelectorAll(".dialog__wrapper > button")).forEach((w,_)=>{w.removeAttribute("aria-expanded")}),i.hasAttribute("open"))i.close(),n="closePopover",i.removeAttribute("style"),a.removeAttribute("aria-expanded");else{i.show(),a.setAttribute("aria-expanded",!0);const w=a.getBoundingClientRect();let _=w.top,e=w.left;if(a.closest("iam-table")){const r=a.closest("iam-table").parentNode.getBoundingClientRect();_-=r.top,e-=r.left}i.classList.contains("dialog--fix")&&i.setAttribute("style",`position:fixed;top: ${_}px; left: ${e}px; margin: 3rem 0 0 0;`)}let f=i.getBoundingClientRect();const h=f.bottom-window.scrollY,d=window.innerHeight-window.scrollY;if(h>d){const w=i.hasAttribute("style")?i.getAttribute("style")+" ":"";i.setAttribute("style",w+"transform: translate(0, calc(-100% - 4rem))"),f=i.getBoundingClientRect(),f.top-window.scrollY<100&&i.removeAttribute("style")}window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:n,id:a.textContent})}t&&t.target instanceof HTMLElement&&!t.target.closest("dialog[open]")&&!t.target.closest(".dialog__wrapper > button")&&(document.querySelector(".dialog__wrapper:not([data-keep-open]) > dialog[open]")&&document.querySelector(".dialog__wrapper:not([data-keep-open]) > dialog[open]").close(),Array.from(document.querySelectorAll(".dialog__wrapper:not([data-keep-open]) > button")).forEach((a,s)=>{a.removeAttribute("aria-expanded")}))}),null),E=o=>{if(!o.querySelector(":scope .mh-lg")&&!o.querySelector("iam-multi-step")){o.innerHTML=`<div class="mh-lg">${o.innerHTML}</div>`;const t=o.querySelector(".mh-lg"),a=o.querySelector(".mh-lg :is(.h1,.h2,.h3,.h4,.h5,.h6)");if(a){const s=a.previousSibling;t.before(a),s&&a.before(s)}}o.querySelector(":scope > button:first-child")||o.insertAdjacentHTML("afterbegin",'<button class="dialog__close">Close</button>')};window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"action bar"});function q(o,t){o&&t=="all"?(o.querySelector("input").indeterminate=!1,o.querySelector("input").checked=!0,o.querySelector("label").textContent="Select all"):o&&t==0?(o.querySelector("input").indeterminate=!1,o.querySelector("input").checked=!1,o.querySelector("label").textContent="Select all"):o&&t?(o.querySelector("input").indeterminate=!0,o.querySelector("input").checked=!1,o.querySelector("label").textContent=`${t} item${t>1?"s":""} selected`):o&&(o.querySelector("input").checked=!1,o.querySelector("input").indeterminate=!1,o.querySelector("label").textContent="Select all")}class C extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});const t=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets",a=document.body.hasAttribute("data-core-css")?document.body.getAttribute("data-core-css"):`${t}/css/core.min.css`,s=document.createElement("template");s.innerHTML=`
5
5
  <style>
6
- @import "${h}";
6
+ @import "${a}";
7
7
  :host{background-color:#fcfcfc}.actionbar__wrapper{position:relative;z-index:10;height:4.25rem;container-type:inline-size}.views,.selectall,slot[name=selectall]{display:block;position:absolute !important;top:50%;left:1.5rem;margin-left:0;transform:translate(0, -50%);z-index:10}@media screen and (min-width: 36em){.views,.selectall,slot[name=selectall]{left:2rem}}.views .btn-action:not(:last-child),.selectall .btn-action:not(:last-child),slot[name=selectall] .btn-action:not(:last-child){margin-right:0.25rem !important}.selectall,slot[name=selectall]{width:2.5rem;overflow:hidden}.selectall label,slot[name=selectall] label{height:2.5rem}@media screen and (min-width: 36em){.selectall,slot[name=selectall]{width:auto;overflow:visible}}.actionbar [data-search]{display:none}:host([data-search]) .actionbar [data-search]{display:block;margin:0 0 0 1rem}:is(.actionbar,.actionbar--selected,.actionbar--search){border-top-left-radius:var(--actionbar-radius, 0.625rem);border-top-right-radius:var(--actionbar-radius, 0.625rem);padding:0 1.5rem;flex-wrap:nowrap;justify-content:flex-end;align-items:center;height:4.25rem;inset:0}@supports selector(:has(*)){:is(.actionbar,.actionbar--selected,.actionbar--search){position:absolute}}@container (width > 23.4375em){:is(.actionbar,.actionbar--selected,.actionbar--search){padding:0 2rem}}.actionbar{display:flex}.actionbar--selected{background-color:var(--colour-canvas);display:flex;pointer-events:none}@media screen and (prefers-color-scheme: light){.actionbar--selected{background-color:#e6eaec}}@supports selector(:has(*)){.actionbar--selected{opacity:0}}.actionbar--search{background-color:var(--colour-canvas);display:flex;z-index:2;position:relative;opacity:0;pointer-events:none}@media screen and (prefers-color-scheme: light){.actionbar--search{background-color:#e6eaec}}.actionbar{opacity:var(--selectall-actionbar-opacity, 1);pointer-events:var(--selectall-actionbar-pe, all)}.actionbar--selected{opacity:var(--selectall-opacity, 0);pointer-events:var(--selectall-pe, none)}.selectall:has(input:checked)~.actionbar,.selectall:has(input:indeterminate)~.actionbar{opacity:0;pointer-events:none}.selectall:has(input:checked)~.actionbar--selected,.selectall:has(input:indeterminate)~.actionbar--selected{opacity:1;pointer-events:all}.actionbar--search.show{opacity:1;pointer-events:all}.actionbar__wrapper:has(.actionbar--search.show)>*:not(.actionbar--search.show){opacity:0;pointer-events:none}::slotted(.btn){margin-top:0 !important;margin-bottom:0 !important;margin-left:1rem !important;margin-right:0 !important}::slotted(.btn:not(.btn-action)){order:2}::slotted([data-single]){pointer-events:none;opacity:.5}:host([data-selected="1"]) ::slotted([data-single]){pointer-events:all;opacity:1}::slotted(hr){height:2rem;color:#9d9d9d !important;width:1px;display:none;margin-left:1rem !important}@container (width > 48em){::slotted(hr){display:block}}.safe-area{display:flex;flex-wrap:nowrap;justify-content:flex-end;align-items:center;width:13.125rem;overflow:visible;position:relative}@container (width > 23.4375em){.safe-area{width:28.125rem}}@container (width > 48em){.safe-area{width:46.875rem}}.safe-area .body{display:contents}:host([data-large-safe-area]) .safe-area{width:16.25rem}@container (width > 23.4375em){:host([data-large-safe-area]) .safe-area{width:38.75rem}}@container (width > 48em){:host([data-large-safe-area]) .safe-area{width:65.5rem}}:host([data-switchviews]) .safe-area{width:9rem}::slotted(.btn-compact[slot=selected-overflow]),::slotted(.btn-compact[slot=overflow]){max-width:none !important;text-indent:0 !important;width:auto !important;text-align:left !important;padding-left:0 !important;background:none !important;border:none !important}::slotted(.btn-compact[slot=selected-overflow]):before,::slotted(.btn-compact[slot=overflow]):before{position:static !important;line-height:inherit !important}.dialog__wrapper.dialog-overflow{margin-left:.5rem;margin-right:-0.5rem}.actionbar--search .btn{margin:0;margin-left:-0.75rem !important;margin-right:auto !important}.search-wrapper{width:calc(100% - 3.25rem);max-width:21.875rem !important;margin:0 !important}@container (width > 48em){.search-wrapper{max-width:28.125rem !important}}.search-wrapper input{padding-top:0.5rem;padding-bottom:0.5rem;min-height:2.5rem !important;max-height:2.5rem !important}.search-wrapper :is(.prefix,.suffix){padding:0.5rem !important;min-height:2.5rem !important;max-height:2.5rem !important;min-width:2.5rem !important;max-width:2.5rem !important;line-height:1.5rem !important}/*# sourceMappingURL=assets/css/components/actionbar.css.map */
8
8
 
9
9
  ${this.hasAttribute("css")?`@import "${this.getAttribute("css")}";`:""}
@@ -51,6 +51,6 @@
51
51
 
52
52
  </div>
53
53
  </div>
54
- `,this.shadowRoot.appendChild(n.content.cloneNode(!0)),document.getElementById("actionbarGlobal")||document.head.insertAdjacentHTML("beforeend",`<style id="actionbarGlobal">iam-actionbar{background-color:#fcfcfc;display:block;border-top-left-radius:0.625rem;border-top-right-radius:0.625rem;--actionbar-radius: 0}@media screen and (prefers-color-scheme: dark){iam-actionbar{background-color:var(--colour-canvas)}}main>.actionbar__sticky-wrapper>.actionbar__sticky>iam-actionbar{border-radius:0.5rem;margin:var(--container-padding);margin-bottom:2rem;box-shadow:2px 6px 12px rgba(0,0,0,.2)}@media screen and (prefers-color-scheme: light){main>.actionbar__sticky-wrapper>.actionbar__sticky>iam-actionbar{background-color:#e6eaec}}main>.actionbar__sticky-wrapper>.actionbar__sticky>iam-actionbar:first-child{padding-top:0}@media screen and (min-width: 36em){main>.actionbar__sticky-wrapper>.actionbar__sticky>iam-actionbar{box-shadow:none;margin-inline:0;border-radius:0}}@media screen and (min-width: 62em){main>.actionbar__sticky-wrapper>.actionbar__sticky>iam-actionbar{padding-inline:calc(50% - 34.75rem - 2rem)}}iam-table iam-actionbar{margin-left:1.5rem;margin-right:1.5rem}.actionbar__sticky-wrapper{container-type:inline-size}@media screen and (min-width: 36em){.actionbar__sticky-wrapper{padding:0 !important}}@container (width < 23.4375em){:is(iam-table,.actionbar__sticky-wrapper)>.actionbar__sticky{display:block;position:sticky;left:0;top:calc(var(--sticky-padding) + 1rem);z-index:var(--index-menu);pointer-events:none}:is(iam-table,.actionbar__sticky-wrapper)>.actionbar__sticky:after{content:"";display:block;width:100%;height:calc(100vh - 6.75rem);pointer-events:none}:is(iam-table,.actionbar__sticky-wrapper)>.actionbar__sticky+*{margin-top:calc(-100vh + 6.75rem)}:is(iam-table,.actionbar__sticky)>iam-actionbar{pointer-events:all !important;display:block;border:none;background:var(--colour-canvas-2);box-shadow:0px 6px 12px rgba(0,0,0,.11);border-radius:.5rem;margin-bottom:1.5rem}}@container (width > 23.4375em){iam-table iam-actionbar{margin-left:-2rem;margin-right:-2rem;margin-top:-2rem;margin-bottom:1rem}}iam-actionbar~:is([data-view=square],[data-view=list],[data-view=small]){display:none}iam-actionbar[data-view=square]~[data-view=square]{display:block}iam-actionbar[data-view=list]~[data-view=list]{display:block}iam-actionbar[data-view=small]~[data-view=small]{display:block}iam-actionbar .actionbar__text{font-size:1.125rem;line-height:2.5rem;color:var(--colour-heading);display:inline-block}iam-actionbar .dialog__wrapper[slot=selected-overflow]>button,iam-actionbar .dialog__wrapper[slot=overflow]>button{background:none;border:none;text-indent:0;width:100%;display:block;max-width:100%;text-align:left;padding:0}iam-actionbar .dialog__wrapper[slot=selected-overflow]>button:before,iam-actionbar .dialog__wrapper[slot=overflow]>button:before{position:static}iam-actionbar button[slot=overflow],iam-actionbar button[slot=selected-overflow]{background:none;border:none;margin:0 !important}iam-actionbar .dialog__wrapper[slot=selected-overflow] dialog[open],iam-actionbar .dialog__wrapper[slot=overflow] dialog[open]{display:contents}iam-actionbar:has(.selectall input:checked){--selectall-opacity: 1;--selectall-pe: all;--selectall-actionbar-opactiy: 0;--selectall-action-pe: none}/*# sourceMappingURL=assets/css/components/actionbar.global.css.map */
55
- </style>`)}connectedCallback(){let t=this;const h=this.shadowRoot.querySelector(".actionbar__wrapper");if(this.hasAttribute("data-selectall")){h.insertAdjacentHTML("afterbegin",'<div class="selectall pb-0"><input type="checkbox" name="selectall" id="selectall"><label for="selectall" class="m-0">Select all</label></div>');let a=this.shadowRoot.querySelector(".selectall");this.hasAttribute("data-selected")&&A(a,this.getAttribute("data-selected")),a.addEventListener("change",s=>{s&&s.target instanceof HTMLElement&&s.target.closest("input")&&(s.target.closest("input").checked?this.setAttribute("data-selected","all"):this.setAttribute("data-selected",0))});let e=this.querySelector("button[data-cancel]");e&&e.addEventListener("click",s=>{this.setAttribute("data-selected",0)})}if(this.hasAttribute("data-select-watch")){const a=document.getElementById(this.getAttribute("data-select-watch"));a.setAttribute("data-select-container","true"),Array.from(a.querySelectorAll('input[type="checkbox"]')).forEach((e,s)=>{e.parentElement.setAttribute("slot","checkbox")}),a.addEventListener("change",e=>{if(e&&e.target instanceof HTMLElement&&e.target.closest('[type="checkbox"]')){let s=a.querySelectorAll('input[type="checkbox"]').length,l=a.querySelectorAll('input[type="checkbox"]:checked').length;t.setAttribute("data-selected",s==l?"all":l),e.target.closest('[type="checkbox"]'),l?Array.from(a.querySelectorAll('input[type="checkbox"]')).forEach((b,p)=>{b.closest("iam-card")&&b.closest("iam-card").setAttribute("data-selected","true")}):Array.from(a.querySelectorAll('input[type="checkbox"]')).forEach((b,p)=>{b.closest("iam-card")&&b.closest("iam-card").removeAttribute("data-selected")})}})}if(this.hasAttribute("data-switchviews")){let a="";this.getAttribute("data-switchviews").split(",").forEach((l,b)=>{let p="fa-grid-2";l=="list"?p="fa-grip-lines":l=="small"&&(p="fa-bars"),a+=`<button class="btn btn-action btn-compact mb-0 fa-regular ${p}">${l}</button>`}),h.insertAdjacentHTML("afterbegin",`<div class="views m-0">${a}</div>`),this.shadowRoot.querySelector(".views").addEventListener("click",l=>{if(l&&l.target instanceof HTMLElement&&l.target.closest(".btn-action")){let b=l.target.closest(".btn-action");this.setAttribute("data-view",b.textContent);const p=new CustomEvent("switch-view",{detail:{view:b.textContent}});this.dispatchEvent(p)}})}const n=this.shadowRoot.querySelector(".actionbar--search");this.hasAttribute("data-search-value")&&(this.shadowRoot.querySelector("#search").value=this.getAttribute("data-search-value")),this.hasAttribute("data-search")&&this.getAttribute("data-search")=="show"&&n.classList.add("show");const o=this.shadowRoot.querySelector("button[data-search]");this.shadowRoot.addEventListener("click",a=>{a&&a.target instanceof HTMLElement&&a.target.closest("button[data-search]")&&(n.classList.toggle("show"),o.toggleAttribute("aria-expanded"))}),n.addEventListener("keyup",a=>{const e=new CustomEvent("search-keyup",{detail:{search:n.querySelector("input").value}});this.dispatchEvent(e)}),n.addEventListener("change",a=>{const e=new CustomEvent("search-change",{detail:{search:n.querySelector("input").value}});this.dispatchEvent(e)}),n.addEventListener("click",a=>{if(a&&a.target instanceof HTMLElement&&a.target.closest("button.suffix")){const e=new CustomEvent("search-submit",{detail:{search:n.querySelector("input").value}});this.dispatchEvent(e)}}),Array.from(this.shadowRoot.querySelectorAll(".body")).forEach((a,e)=>{_(a)});function d(){const a=h.scrollWidth,e=document.documentElement.scrollWidth;let s=750,l=16,b=450,p=t.hasAttribute("data-switchviews")?144:210;t.hasAttribute("data-large-safe-area")&&(s=1048,b=620,p=260);let u=1;e>=992&&e<=1280?u=e/1280:e>=576&&e<992?u=e/768:e<576&&(u=e/375),a>=992&&a<=1280?s=s*u:a>=576&&a<992?s=b*u:a<576&&(s=p*u),l=l*u,a<576?Array.from(t.querySelectorAll(':scope > .btn:not(.js-updated), :scope > .dialog__wrapper > .btn[class*="fa-"]:first-child:not(.js-updated)')).forEach((c,g)=>{c.className=c.className.replace(" btn-compact"," _btn-compact"),c.classList.add("btn-compact"),c.classList.add("js-updated")}):Array.from(t.querySelectorAll(":scope > .btn.js-updated, :scope > .dialog__wrapper > .btn.js-updated:first-child")).forEach((c,g)=>{c.classList.remove("btn-compact"),c.classList.remove("js-updated"),c.className=c.className.replace(" _btn-compact"," btn-compact")}),Array.from(t.querySelectorAll("[slot]")).forEach((c,g)=>{c.getAttribute("slot")=="overflow"&&c.removeAttribute("slot"),c.getAttribute("slot")=="selected-overflow"&&c.setAttribute("slot","selected")}),Array.from(t.querySelectorAll(".show")).forEach((c,g)=>{c.classList.remove("show")}),Array.from(t.shadowRoot.querySelectorAll(".safe-area")).forEach((c,g)=>{let y="overflow";c.querySelector("slot").hasAttribute("name")&&c.querySelector("slot").getAttribute("name")=="selected"&&(y="selected-overflow");let m=c.querySelector("slot").assignedElements(),f=44*u;t.hasAttribute("data-search")&&(f+=44*u);for(let r=0;r<m.length;r++)!m[r].classList.contains("btn-action")&&!m[r].classList.contains("dialog__wrapper")&&(f+=m[r].offsetWidth,f+=l);for(let r=0;r<m.length;r++)if(m[r].classList.contains("dialog__wrapper")&&(m[r].classList.add("show"),f+=m[r].offsetWidth,f+=l/2,f-l/2>s)){m[r].classList.remove("show");break}for(let r=0;r<m.length;r++)if(m[r].classList.contains("btn-action")&&(m[r].classList.add("show"),f+=m[r].offsetWidth,f+=l/2,f-l/2>s)){m[r].classList.remove("show");break}let w=c.querySelector(".dialog-overflow");w&&w.classList.add("d-none");for(let r=0;r<m.length;r++)(m[r].classList.contains("btn-action")||m[r].classList.contains("dialog__wrapper"))&&(m[r].classList.contains("show")||(m[r].setAttribute("slot",y),w&&w.classList.remove("d-none")))})}d(),new ResizeObserver(d).observe(h)}static get observedAttributes(){return["data-selected"]}attributeChangedCallback(t,h,n){switch(t){case"data-selected":{let o=this.shadowRoot.querySelector(".selectall");o&&A(o,n);const d=new CustomEvent("selected",{detail:{selected:n}});if(this.dispatchEvent(d),n=="all"&&this.hasAttribute("data-select-watch")){const a=document.getElementById(this.getAttribute("data-select-watch"));Array.from(a.querySelectorAll('input[type="checkbox"]')).forEach((e,s)=>{e.checked=!0,e.closest("iam-card")&&e.closest("iam-card").setAttribute("data-selected","true")})}if(n=="0"&&this.hasAttribute("data-select-watch")){const a=document.getElementById(this.getAttribute("data-select-watch"));Array.from(a.querySelectorAll('input[type="checkbox"]')).forEach((e,s)=>{e.checked=!1,e.closest("iam-card")&&e.closest("iam-card").removeAttribute("data-selected","true")})}break}}}}export{k as default};
54
+ `,this.shadowRoot.appendChild(s.content.cloneNode(!0)),document.getElementById("actionbarGlobal")||document.head.insertAdjacentHTML("beforeend",`<style id="actionbarGlobal">iam-actionbar{background-color:#fcfcfc;display:block;border-top-left-radius:0.625rem;border-top-right-radius:0.625rem;--actionbar-radius: 0}@media screen and (prefers-color-scheme: dark){iam-actionbar{background-color:var(--colour-canvas)}}main>.actionbar__sticky-wrapper>.actionbar__sticky>iam-actionbar{border-radius:0.5rem;margin:var(--container-padding);margin-bottom:2rem;box-shadow:2px 6px 12px rgba(0,0,0,.2)}@media screen and (prefers-color-scheme: light){main>.actionbar__sticky-wrapper>.actionbar__sticky>iam-actionbar{background-color:#e6eaec}}main>.actionbar__sticky-wrapper>.actionbar__sticky>iam-actionbar:first-child{padding-top:0}@media screen and (min-width: 36em){main>.actionbar__sticky-wrapper>.actionbar__sticky>iam-actionbar{box-shadow:none;margin-inline:0;border-radius:0}}@media screen and (min-width: 62em){main>.actionbar__sticky-wrapper>.actionbar__sticky>iam-actionbar{padding-inline:calc(50% - 34.75rem - 2rem)}}iam-table iam-actionbar{margin-left:1.5rem;margin-right:1.5rem}.actionbar__sticky-wrapper{container-type:inline-size}@media screen and (min-width: 36em){.actionbar__sticky-wrapper{padding:0 !important}}@container (width < 23.4375em){:is(iam-table,.actionbar__sticky-wrapper)>.actionbar__sticky{display:block;position:sticky;left:0;top:calc(var(--sticky-padding) + 1rem);z-index:var(--index-menu);pointer-events:none}:is(iam-table,.actionbar__sticky-wrapper)>.actionbar__sticky:after{content:"";display:block;width:100%;height:calc(100vh - 6.75rem);pointer-events:none}:is(iam-table,.actionbar__sticky-wrapper)>.actionbar__sticky+*{margin-top:calc(-100vh + 6.75rem)}:is(iam-table,.actionbar__sticky)>iam-actionbar{pointer-events:all !important;display:block;border:none;background:var(--colour-canvas-2);box-shadow:0px 6px 12px rgba(0,0,0,.11);border-radius:.5rem;margin-bottom:1.5rem}}@container (width > 23.4375em){iam-table iam-actionbar{margin-left:-2rem;margin-right:-2rem;margin-top:-2rem;margin-bottom:1rem}}iam-actionbar~:is([data-view=square],[data-view=list],[data-view=small]){display:none}iam-actionbar[data-view=square]~[data-view=square]{display:block}iam-actionbar[data-view=list]~[data-view=list]{display:block}iam-actionbar[data-view=small]~[data-view=small]{display:block}iam-actionbar .actionbar__text{font-size:1.125rem;line-height:2.5rem;color:var(--colour-heading);display:inline-block}iam-actionbar .dialog__wrapper[slot=selected-overflow]>button,iam-actionbar .dialog__wrapper[slot=overflow]>button{background:none;border:none;text-indent:0;width:100%;display:block;max-width:100%;text-align:left;padding:0}iam-actionbar .dialog__wrapper[slot=selected-overflow]>button:before,iam-actionbar .dialog__wrapper[slot=overflow]>button:before{position:static}iam-actionbar button[slot=overflow],iam-actionbar button[slot=selected-overflow]{background:none;border:none;margin:0 !important}iam-actionbar .dialog__wrapper[slot=selected-overflow] dialog[open],iam-actionbar .dialog__wrapper[slot=overflow] dialog[open]{display:contents}iam-actionbar:has(.selectall input:checked){--selectall-opacity: 1;--selectall-pe: all;--selectall-actionbar-opactiy: 0;--selectall-action-pe: none}/*# sourceMappingURL=assets/css/components/actionbar.global.css.map */
55
+ </style>`)}connectedCallback(){var t,a,s,n,i,f;const h=(t=this.shadowRoot)===null||t===void 0?void 0:t.querySelector(".actionbar__wrapper");if(this.hasAttribute("data-selectall")){h?.insertAdjacentHTML("afterbegin",'<div class="selectall pb-0"><input type="checkbox" name="selectall" id="selectall"><label for="selectall" class="m-0">Select all</label></div>');const e=(a=this.shadowRoot)===null||a===void 0?void 0:a.querySelector(".selectall");this.hasAttribute("data-selected")&&q(e,this.getAttribute("data-selected")),e?.addEventListener("change",p=>{var c;p&&p.target instanceof HTMLElement&&p.target.closest("input")&&(!((c=p.target.closest("input"))===null||c===void 0)&&c.checked?this.setAttribute("data-selected","all"):this.setAttribute("data-selected","0"))});const r=this.querySelector("button[data-cancel]");r&&r.addEventListener("click",()=>{this.setAttribute("data-selected","0")})}if(this.hasAttribute("data-select-watch")){const e=document.getElementById(this.getAttribute("data-select-watch"));e?.setAttribute("data-select-container","true"),Array.from(e.querySelectorAll('input[type="checkbox"]')).forEach(r=>{var p;(p=r.parentElement)===null||p===void 0||p.setAttribute("slot","checkbox")}),e?.addEventListener("change",r=>{if(r&&r.target instanceof HTMLElement&&r.target.closest('[type="checkbox"]')){const p=e.querySelectorAll('input[type="checkbox"]').length,c=e.querySelectorAll('input[type="checkbox"]:checked').length;this.setAttribute("data-selected",p==c?"all":String(c)),c?Array.from(e.querySelectorAll('input[type="checkbox"]')).forEach(u=>{var g;u.closest("iam-card")&&((g=u.closest("iam-card"))===null||g===void 0||g.setAttribute("data-selected","true"))}):Array.from(e.querySelectorAll('input[type="checkbox"]')).forEach(u=>{var g;u.closest("iam-card")&&((g=u.closest("iam-card"))===null||g===void 0||g.removeAttribute("data-selected"))})}})}if(this.hasAttribute("data-switchviews")){let e="";const r=(s=this.getAttribute("data-switchviews"))===null||s===void 0?void 0:s.split(",");r?.forEach(c=>{let u="fa-grid-2";c=="list"?u="fa-grip-lines":c=="small"&&(u="fa-bars"),e+=`<button class="btn btn-action btn-compact mb-0 fa-regular ${u}">${c}</button>`}),h?.insertAdjacentHTML("afterbegin",`<div class="views m-0">${e}</div>`);const p=(n=this.shadowRoot)===null||n===void 0?void 0:n.querySelector(".views");p?.addEventListener("click",c=>{if(c&&c.target instanceof HTMLElement&&c.target.closest(".btn-action")){const u=c.target.closest(".btn-action");this.setAttribute("data-view",u.textContent);const g=new CustomEvent("switch-view",{detail:{view:u.textContent}});this.dispatchEvent(g)}})}const d=(i=this.shadowRoot)===null||i===void 0?void 0:i.querySelector(".actionbar--search");this.hasAttribute("data-search-value")&&(((f=this.shadowRoot)===null||f===void 0?void 0:f.querySelector("#search")).value=String(this.getAttribute("data-search-value"))),this.hasAttribute("data-search")&&this.getAttribute("data-search")=="show"&&d?.classList.add("show");const w=this.shadowRoot.querySelector("button[data-search]");this.shadowRoot.addEventListener("click",e=>{e&&e.target instanceof HTMLElement&&e.target.closest("button[data-search]")&&(d.classList.toggle("show"),w.toggleAttribute("aria-expanded"))}),d.addEventListener("keyup",()=>{const e=new CustomEvent("search-keyup",{detail:{search:d.querySelector("input").value}});this.dispatchEvent(e)}),d.addEventListener("change",()=>{const e=new CustomEvent("search-change",{detail:{search:d.querySelector("input").value}});this.dispatchEvent(e)}),d.addEventListener("click",e=>{if(e&&e.target instanceof HTMLElement&&e.target.closest("button.suffix")){const r=new CustomEvent("search-submit",{detail:{search:d.querySelector("input").value}});this.dispatchEvent(r)}}),Array.from(this.shadowRoot.querySelectorAll(".body")).forEach((e,r)=>{M(e)});const _=()=>{const e=h.scrollWidth,r=document.documentElement.scrollWidth;let p=750,c=16,u=450,g=!(this===null||this===void 0)&&this.hasAttribute("data-switchviews")?144:210;this.hasAttribute("data-large-safe-area")&&(p=1048,u=620,g=260);let y=1;r>=992&&r<=1280?y=r/1280:r>=576&&r<992?y=r/768:r<576&&(y=r/375),e>=992&&e<=1280?p=p*y:e>=576&&e<992?p=u*y:e<576&&(p=g*y),c=c*y,e<576?Array.from(this.querySelectorAll(':scope > .btn:not(.js-updated), :scope > .dialog__wrapper > .btn[class*="fa-"]:first-child:not(.js-updated)')).forEach(m=>{m.className=m.className.replace(" btn-compact"," _btn-compact"),m.classList.add("btn-compact"),m.classList.add("js-updated")}):Array.from(this.querySelectorAll(":scope > .btn.js-updated, :scope > .dialog__wrapper > .btn.js-updated:first-child")).forEach(m=>{m.classList.remove("btn-compact"),m.classList.remove("js-updated"),m.className=m.className.replace(" _btn-compact"," btn-compact")}),Array.from(this.querySelectorAll("[slot]")).forEach(m=>{m.getAttribute("slot")=="overflow"&&m.removeAttribute("slot"),m.getAttribute("slot")=="selected-overflow"&&m.setAttribute("slot","selected")}),Array.from(this.querySelectorAll(".show")).forEach(m=>{m.classList.remove("show")}),Array.from(this.shadowRoot.querySelectorAll(".safe-area")).forEach(m=>{var k,x,S;let L="overflow";!((k=m.querySelector("slot"))===null||k===void 0)&&k.hasAttribute("name")&&((x=m.querySelector("slot"))===null||x===void 0?void 0:x.getAttribute("name"))=="selected"&&(L="selected-overflow");const b=(S=m.querySelector("slot"))===null||S===void 0?void 0:S.assignedElements();let v=44*y;this.hasAttribute("data-search")&&(v+=44*y);for(let l=0;l<b.length;l++)!b[l].classList.contains("btn-action")&&!b[l].classList.contains("dialog__wrapper")&&(v+=b[l].offsetWidth,v+=c);for(let l=0;l<b.length;l++)if(b[l].classList.contains("dialog__wrapper")&&(b[l].classList.add("show"),v+=b[l].offsetWidth,v+=c/2,v-c/2>p)){b[l].classList.remove("show");break}for(let l=0;l<b.length;l++)if(b[l].classList.contains("btn-action")&&(b[l].classList.add("show"),v+=b[l].offsetWidth,v+=c/2,v-c/2>p)){b[l].classList.remove("show");break}const A=m.querySelector(".dialog-overflow");A&&A.classList.add("d-none");for(let l=0;l<b.length;l++)(b[l].classList.contains("btn-action")||b[l].classList.contains("dialog__wrapper"))&&(b[l].classList.contains("show")||(b[l].setAttribute("slot",L),A&&A.classList.remove("d-none")))})};_(),new ResizeObserver(_).observe(h)}static get observedAttributes(){return["data-selected"]}attributeChangedCallback(t,a,s){switch(t){case"data-selected":{const n=this.shadowRoot.querySelector(".selectall");n&&q(n,s);const i=new CustomEvent("selected",{detail:{selected:s}});if(this.dispatchEvent(i),s=="all"&&this.hasAttribute("data-select-watch")){const f=document.getElementById(String(this.getAttribute("data-select-watch")));Array.from(f.querySelectorAll('input[type="checkbox"]')).forEach(h=>{var d;h.checked=!0,h.closest("iam-card")&&((d=h.closest("iam-card"))===null||d===void 0||d.setAttribute("data-selected","true"))})}if(s=="0"&&this.hasAttribute("data-select-watch")){const f=document.getElementById(String(this.getAttribute("data-select-watch")));Array.from(f.querySelectorAll('input[type="checkbox"]')).forEach(h=>{var d;h.checked=!1,h.closest("iam-card")&&((d=h.closest("iam-card"))===null||d===void 0||d.removeAttribute("data-selected"))})}break}}}}export{C as default};
56
56
  //# sourceMappingURL=actionbar.component.min.js.map