@iamproperty/components 7.6.4--beta7 → 7.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/css/components/actionbar.component.css +1 -1
- package/assets/css/components/actionbar.component.css.map +1 -1
- package/assets/css/components/actionbar.global.css +1 -1
- package/assets/css/components/actionbar.global.css.map +1 -1
- package/assets/css/components/address-lookup.component.css +1 -1
- package/assets/css/components/address-lookup.component.css.map +1 -1
- package/assets/css/components/applied-filters.css +1 -1
- package/assets/css/components/applied-filters.css.map +1 -1
- package/assets/css/components/barchart.component.css +1 -1
- package/assets/css/components/barchart.component.css.map +1 -1
- package/assets/css/components/bento-grid.global.css +1 -1
- package/assets/css/components/calendar.component.css +1 -1
- package/assets/css/components/calendar.component.css.map +1 -1
- package/assets/css/components/calendar.config.css +1 -1
- package/assets/css/components/card.component.css +1 -1
- package/assets/css/components/card.component.css.map +1 -1
- package/assets/css/components/card.module.css +1 -1
- package/assets/css/components/carousel.component.css +1 -1
- package/assets/css/components/carousel.component.css.map +1 -1
- package/assets/css/components/charts.config.css +1 -1
- package/assets/css/components/charts.css +1 -1
- package/assets/css/components/charts.css.map +1 -1
- package/assets/css/components/charts.module.css +1 -1
- package/assets/css/components/charts.module.css.map +1 -1
- package/assets/css/components/collapsible-side.css +1 -1
- package/assets/css/components/collapsible-side.css.map +1 -1
- package/assets/css/components/config.component.css +1 -0
- package/assets/css/components/config.component.css.map +1 -0
- package/assets/css/components/content.component.css +1 -1
- package/assets/css/components/content.component.css.map +1 -1
- package/assets/css/components/doughnutchart.component.css +1 -1
- package/assets/css/components/doughnutchart.component.css.map +1 -1
- package/assets/css/components/fileupload.css +1 -1
- package/assets/css/components/fileupload.css.map +1 -1
- package/assets/css/components/filter-card.component.css +1 -1
- package/assets/css/components/header.css +1 -1
- package/assets/css/components/header.css.map +1 -1
- package/assets/css/components/inline-edit.css +1 -1
- package/assets/css/components/inline-edit.css.map +1 -1
- package/assets/css/components/input.component.css +1 -1
- package/assets/css/components/input.component.css.map +1 -1
- package/assets/css/components/menu.component.css +1 -1
- package/assets/css/components/menu.component.css.map +1 -1
- package/assets/css/components/milestone.css +1 -1
- package/assets/css/components/modal.component.css +1 -1
- package/assets/css/components/modal.component.css.map +1 -1
- package/assets/css/components/multi-step-modal.component.css +1 -1
- package/assets/css/components/multi-step-modal.component.css.map +1 -1
- package/assets/css/components/multiselect.css +1 -1
- package/assets/css/components/multiselect.css.map +1 -1
- package/assets/css/components/nav.component.css +1 -1
- package/assets/css/components/nav.component.css.map +1 -1
- package/assets/css/components/nav.global.css +1 -1
- package/assets/css/components/nav.global.css.map +1 -1
- package/assets/css/components/notification.css +1 -1
- package/assets/css/components/notification.css.map +1 -1
- package/assets/css/components/pagination.css +1 -1
- package/assets/css/components/pagination.css.map +1 -1
- package/assets/css/components/password.component.css +1 -1
- package/assets/css/components/password.component.css.map +1 -1
- package/assets/css/components/property-searchbar.css +1 -1
- package/assets/css/components/property-searchbar.css.map +1 -1
- package/assets/css/components/rank.component.css +1 -1
- package/assets/css/components/rank.component.css.map +1 -1
- package/assets/css/components/record-card.component.css +1 -1
- package/assets/css/components/record-card.component.css.map +1 -1
- package/assets/css/components/slider.css +1 -1
- package/assets/css/components/slider.css.map +1 -1
- package/assets/css/components/split-button.component.css +1 -1
- package/assets/css/components/split-button.component.css.map +1 -1
- package/assets/css/components/table-basic.component.css +1 -1
- package/assets/css/components/table-basic.component.css.map +1 -1
- package/assets/css/components/table-basic.global.css +1 -1
- package/assets/css/components/table-basic.global.css.map +1 -1
- package/assets/css/components/table.component.css +1 -1
- package/assets/css/components/table.component.css.map +1 -1
- package/assets/css/components/table.global.css +1 -1
- package/assets/css/components/table.global.css.map +1 -1
- package/assets/css/components/tabs.component.css +1 -1
- package/assets/css/components/tabs.component.css.map +1 -1
- package/assets/css/components/tag.component.css +1 -1
- package/assets/css/components/tag.component.css.map +1 -1
- package/assets/css/components/tooltip.component.css +1 -1
- package/assets/css/components/tooltip.component.css.map +1 -1
- package/assets/css/components/video-card.component.css +1 -1
- package/assets/css/components/video-modal.component.css +1 -1
- package/assets/css/components/video-modal.component.css.map +1 -1
- package/assets/css/core.min.css +1 -1
- package/assets/css/core.min.css.map +1 -1
- package/assets/css/style.min.css +1 -1
- package/assets/css/style.min.css.map +1 -1
- package/assets/js/components/accordion/accordion.component.min.js +1 -1
- package/assets/js/components/actionbar/actionbar.component.js +8 -7
- package/assets/js/components/actionbar/actionbar.component.min.js +7 -7
- package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
- package/assets/js/components/address-lookup/address-lookup.component.js +12 -2
- package/assets/js/components/address-lookup/address-lookup.component.min.js +5 -5
- package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
- package/assets/js/components/advanced-select/advanced-select.component.js +1 -1
- package/assets/js/components/advanced-select/advanced-select.component.min.js +2 -2
- package/assets/js/components/advanced-select/advanced-select.component.min.js.map +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.min.js +4 -4
- package/assets/js/components/barchart/barchart.component.min.js +6 -6
- package/assets/js/components/barchart/barchart.component.min.js.map +1 -1
- package/assets/js/components/bento-grid/bento-grid.component.min.js +2 -2
- package/assets/js/components/calendar/calendar.component.min.js +2 -2
- package/assets/js/components/card/card.component.min.js +7 -7
- package/assets/js/components/carousel/carousel.component.min.js +4 -4
- package/assets/js/components/collapsible-side/collapsible-side.component.js +1 -1
- package/assets/js/components/collapsible-side/collapsible-side.component.min.js +5 -5
- package/assets/js/components/collapsible-side/collapsible-side.component.min.js.map +1 -1
- package/assets/js/components/config/config.component.js +532 -0
- package/assets/js/components/config/config.component.min.js +59 -0
- package/assets/js/components/config/config.component.min.js.map +1 -0
- package/assets/js/components/content/content.component.min.js +4 -4
- package/assets/js/components/darkmode/darkmode.component.min.js +1 -1
- package/assets/js/components/doughnutchart/doughnutchart.component.min.js +7 -7
- package/assets/js/components/fileupload/fileupload.component.min.js +4 -4
- package/assets/js/components/filter-card/filter-card.component.min.js +2 -2
- package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
- package/assets/js/components/form/form.component.min.js +1 -1
- package/assets/js/components/header/header.component.js +39 -1
- package/assets/js/components/header/header.component.min.js +40 -4
- package/assets/js/components/header/header.component.min.js.map +1 -1
- package/assets/js/components/inline-edit/inline-edit.component.js +1 -1
- package/assets/js/components/inline-edit/inline-edit.component.min.js +4 -4
- package/assets/js/components/inline-edit/inline-edit.component.min.js.map +1 -1
- package/assets/js/components/input/input.component.js +1 -1
- package/assets/js/components/input/input.component.min.js +3 -3
- package/assets/js/components/input/input.component.min.js.map +1 -1
- package/assets/js/components/input-range/input-range.component.js +1 -1
- package/assets/js/components/input-range/input-range.component.min.js +2 -2
- package/assets/js/components/input-range/input-range.component.min.js.map +1 -1
- package/assets/js/components/marketing/marketing.component.js +1 -1
- package/assets/js/components/marketing/marketing.component.min.js +2 -2
- package/assets/js/components/marketing/marketing.component.min.js.map +1 -1
- package/assets/js/components/menu/menu.component.min.js +2 -2
- package/assets/js/components/milestone/milestone.component.min.js +1 -1
- package/assets/js/components/milestone-group/milestone-group.component.min.js +1 -1
- package/assets/js/components/modal/modal.component.js +1 -1
- package/assets/js/components/modal/modal.component.min.js +5 -5
- package/assets/js/components/modal/modal.component.min.js.map +1 -1
- package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
- package/assets/js/components/multi-step-modal/multi-step-modal.component.js +1 -1
- package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +5 -5
- package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js.map +1 -1
- package/assets/js/components/multiselect/multiselect.component.min.js +2 -2
- package/assets/js/components/nav/nav.component.js +1 -1
- package/assets/js/components/nav/nav.component.min.js +6 -6
- package/assets/js/components/nav/nav.component.min.js.map +1 -1
- package/assets/js/components/notification/notification.component.js +69 -30
- package/assets/js/components/notification/notification.component.min.js +5 -5
- package/assets/js/components/notification/notification.component.min.js.map +1 -1
- package/assets/js/components/pagination/pagination.component.js +1 -1
- package/assets/js/components/pagination/pagination.component.min.js +4 -4
- package/assets/js/components/pagination/pagination.component.min.js.map +1 -1
- package/assets/js/components/password/password.component.js +1 -1
- package/assets/js/components/password/password.component.min.js +5 -5
- package/assets/js/components/password/password.component.min.js.map +1 -1
- package/assets/js/components/popover/popover.component.min.js +1 -1
- package/assets/js/components/rank/rank.component.min.js +1 -1
- package/assets/js/components/rankings/rankings.component.min.js +1 -1
- package/assets/js/components/rating/rating.component.min.js +1 -1
- package/assets/js/components/record-card/record-card.component.min.js +2 -2
- package/assets/js/components/search/search.component.js +1 -1
- package/assets/js/components/search/search.component.min.js +2 -2
- package/assets/js/components/search/search.component.min.js.map +1 -1
- package/assets/js/components/slider/slider.component.min.js +2 -2
- package/assets/js/components/split-button/split-button.component.js +0 -4
- package/assets/js/components/split-button/split-button.component.min.js +6 -7
- package/assets/js/components/split-button/split-button.component.min.js.map +1 -1
- package/assets/js/components/std-address-lookup/std-address-lookup.component.js +41 -11
- package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +9 -17
- package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js.map +1 -1
- package/assets/js/components/table/table.component.min.js +4 -4
- package/assets/js/components/table-ajax/table-ajax.component.min.js +7 -7
- package/assets/js/components/table-basic/table-basic.component.min.js +5 -5
- package/assets/js/components/table-no-submit/table-no-submit.component.min.js +4 -4
- package/assets/js/components/table-submit/table-submit.component.min.js +7 -7
- package/assets/js/components/tabs/tabs.component.js +1 -1
- package/assets/js/components/tabs/tabs.component.min.js +5 -5
- package/assets/js/components/tabs/tabs.component.min.js.map +1 -1
- package/assets/js/components/tag/tag.component.min.js +4 -4
- package/assets/js/components/tag/tag.component.min.js.map +1 -1
- package/assets/js/components/tooltip/tooltip.component.min.js +2 -2
- package/assets/js/components/video-card/video-card.component.min.js +2 -2
- package/assets/js/components/video-modal/video-modal.component.js +1 -1
- package/assets/js/components/video-modal/video-modal.component.min.js +4 -4
- package/assets/js/components/video-modal/video-modal.component.min.js.map +1 -1
- package/assets/js/components/word-count/word-count.component.min.js +1 -1
- package/assets/js/modules/helper.test.js +84 -0
- package/assets/js/modules/test.js +19 -0
- package/assets/js/scripts.bundle.js +1 -1
- package/assets/js/scripts.bundle.min.js +1 -1
- package/assets/sass/_components.scss +7 -7
- package/assets/sass/_corefiles.scss +8 -7
- package/assets/sass/_elements.scss +16 -16
- package/assets/sass/_functions/bs_mixins.scss +3 -3
- package/assets/sass/_utilities.scss +4 -3
- package/assets/sass/components/actionbar.component.scss +37 -28
- package/assets/sass/components/actionbar.global.scss +12 -4
- package/assets/sass/components/address-lookup.component.scss +7 -7
- package/assets/sass/components/applied-filters.scss +2 -2
- package/assets/sass/components/barchart.component.scss +6 -6
- package/assets/sass/components/bento-grid.component.scss +2 -2
- package/assets/sass/components/bento-grid.global.scss +3 -3
- package/assets/sass/components/calendar.component.scss +14 -14
- package/assets/sass/components/calendar.config.scss +4 -4
- package/assets/sass/components/card.component.scss +10 -10
- package/assets/sass/components/card.module.scss +2 -2
- package/assets/sass/components/carousel.component.scss +8 -8
- package/assets/sass/components/carousel.config.scss +2 -2
- package/assets/sass/components/charts.config.scss +3 -3
- package/assets/sass/components/charts.module.scss +4 -18
- package/assets/sass/components/charts.scss +3 -3
- package/assets/sass/components/collapsible-side.scss +16 -16
- package/assets/sass/components/config.component.scss +235 -0
- package/assets/sass/components/content.component.scss +1 -1
- package/assets/sass/components/darkmode.component.scss +1 -1
- package/assets/sass/components/doughnutchart.component.scss +11 -10
- package/assets/sass/components/fileupload.scss +9 -9
- package/assets/sass/components/filter-card.component.scss +3 -3
- package/assets/sass/components/header.scss +121 -23
- package/assets/sass/components/inline-edit.preload.scss +1 -1
- package/assets/sass/components/inline-edit.scss +1 -1
- package/assets/sass/components/input.component.scss +2 -1
- package/assets/sass/components/marketing.component.scss +1 -1
- package/assets/sass/components/menu.component.scss +10 -10
- package/assets/sass/components/milestone.scss +2 -2
- package/assets/sass/components/modal.component.scss +22 -22
- package/assets/sass/components/multi-step-modal.component.scss +15 -15
- package/assets/sass/components/multi-step-modal.global.scss +1 -1
- package/assets/sass/components/multi-step.component.scss +3 -3
- package/assets/sass/components/multiselect.scss +9 -9
- package/assets/sass/components/nav.component.scss +24 -24
- package/assets/sass/components/nav.docs.scss +1 -1
- package/assets/sass/components/nav.global.scss +120 -119
- package/assets/sass/components/nav.preload.scss +1 -1
- package/assets/sass/components/notification.scss +36 -19
- package/assets/sass/components/pagination.scss +7 -7
- package/assets/sass/components/password.component.scss +1 -1
- package/assets/sass/components/popover.component.scss +3 -3
- package/assets/sass/components/property-searchbar.scss +1 -1
- package/assets/sass/components/rank.component.scss +19 -19
- package/assets/sass/components/rankings.component.scss +1 -1
- package/assets/sass/components/rankings.global.scss +2 -2
- package/assets/sass/components/record-card.component.scss +15 -15
- package/assets/sass/components/slider.scss +4 -4
- package/assets/sass/components/snapshot.scss +1 -1
- package/assets/sass/components/split-button.component.scss +2 -2
- package/assets/sass/components/table-basic.component.scss +3 -3
- package/assets/sass/components/table-basic.global.scss +34 -14
- package/assets/sass/components/table.component.scss +27 -16
- package/assets/sass/components/table.global.scss +51 -49
- package/assets/sass/components/tabs.component.scss +3 -3
- package/assets/sass/components/tabs.config.scss +1 -1
- package/assets/sass/components/tag.component.scss +2 -2
- package/assets/sass/components/testimonial.scss +2 -2
- package/assets/sass/components/timeline.scss +3 -3
- package/assets/sass/components/tooltip.component.scss +13 -8
- package/assets/sass/components/video-card.component.scss +2 -2
- package/assets/sass/components/video-modal.component.scss +1 -1
- package/assets/sass/components/word-count.component.scss +1 -1
- package/assets/sass/core.scss +1 -1
- package/assets/sass/elements/{admin-panel.scss → admin-panel.css} +17 -24
- package/assets/sass/elements/{badge-tag.scss → badge-tag.css} +11 -19
- package/assets/sass/elements/button__group.css +3 -2
- package/assets/sass/elements/{buttons--action.scss → buttons--action.css} +11 -19
- package/assets/sass/elements/{buttons--compact.scss → buttons--compact.css} +8 -36
- package/assets/sass/elements/buttons--global.scss +12 -18
- package/assets/sass/elements/buttons--special.scss +1 -1
- package/assets/sass/elements/buttons.scss +6 -6
- package/assets/sass/elements/container.scss +6 -6
- package/assets/sass/elements/details.scss +13 -13
- package/assets/sass/elements/dialog.scss +7 -7
- package/assets/sass/elements/dropdown.scss +1 -1
- package/assets/sass/elements/feature.scss +114 -6
- package/assets/sass/elements/forms.scss +24 -25
- package/assets/sass/elements/icons.css +1 -1
- package/assets/sass/elements/links.scss +5 -5
- package/assets/sass/elements/lists--tick-list.scss +18 -6
- package/assets/sass/elements/modal.scss +24 -24
- package/assets/sass/elements/popover.scss +14 -14
- package/assets/sass/elements/prefix.scss +18 -4
- package/assets/sass/elements/progress.scss +14 -14
- package/assets/sass/elements/table.element.scss +9 -5
- package/assets/sass/elements/tooltips.scss +4 -4
- package/assets/sass/email.scss +1 -1
- package/assets/sass/foundations/animations.scss +2 -0
- package/assets/sass/foundations/colours.scss +1 -1
- package/assets/sass/foundations/reboot.scss +1 -1
- package/assets/sass/foundations/root.scss +29 -96
- package/assets/sass/templates/auth.scss +7 -7
- package/assets/sass/templates/form.scss +8 -8
- package/assets/sass/utilities/border.scss +6 -18
- package/assets/sass/utilities/font-awesome-iso-fallbacks.scss +6 -0
- package/assets/sass/utilities/shadow.scss +7 -0
- package/assets/sass/utilities/wider-colours.scss +0 -2
- package/assets/ts/components/actionbar/actionbar.component.ts +8 -7
- package/assets/ts/components/address-lookup/address-lookup.component.ts +17 -2
- package/assets/ts/components/advanced-select/advanced-select.component.ts +1 -1
- package/assets/ts/components/collapsible-side/collapsible-side.component.ts +1 -1
- package/assets/ts/components/config/config.component.ts +699 -0
- package/assets/ts/components/header/header.component.ts +40 -1
- package/assets/ts/components/inline-edit/inline-edit.component.ts +1 -1
- package/assets/ts/components/input/input.component.ts +1 -1
- package/assets/ts/components/input-range/input-range.component.ts +1 -1
- package/assets/ts/components/marketing/marketing.component.ts +1 -1
- package/assets/ts/components/modal/modal.component.ts +1 -1
- package/assets/ts/components/multi-step-modal/multi-step-modal.component.ts +1 -1
- package/assets/ts/components/nav/nav.component.ts +1 -1
- package/assets/ts/components/notification/notification.component.ts +98 -47
- package/assets/ts/components/pagination/pagination.component.ts +1 -1
- package/assets/ts/components/password/password.component.ts +1 -1
- package/assets/ts/components/search/search.component.ts +1 -1
- package/assets/ts/components/split-button/split-button.component.ts +0 -4
- package/assets/ts/components/std-address-lookup/std-address-lookup.component.ts +47 -12
- package/assets/ts/components/tabs/tabs.component.ts +1 -1
- package/assets/ts/components/video-modal/video-modal.component.ts +1 -1
- package/assets/ts/modules/helper.test.ts +143 -0
- package/assets/ts/modules/test.ts +22 -0
- package/dist/components.es.js +29 -29
- package/dist/components.umd.js +372 -288
- package/package.json +9 -21
- package/src/components/Config/Config.vue +23 -0
- package/assets/js/tests/helpers.spec.js +0 -79
- package/assets/js/ui-tests/card.spec.js +0 -14
- package/assets/js/ui-tests/carousel.spec.js +0 -60
- package/assets/js/ui-tests/chart.spec.js +0 -59
- package/assets/js/ui-tests/fileupload.spec.js +0 -22
- package/assets/js/ui-tests/filterlist.spec.js +0 -22
- package/assets/js/ui-tests/multistep.spec.js +0 -68
- package/assets/js/ui-tests/slider.spec.js +0 -20
- package/assets/js/ui-tests/table.spec.js +0 -81
- package/assets/ts/tests/helpers.spec.ts +0 -137
- package/assets/ts/ui-tests/card.spec.ts +0 -19
- package/assets/ts/ui-tests/carousel.spec.ts +0 -66
- package/assets/ts/ui-tests/chart.spec.ts +0 -71
- package/assets/ts/ui-tests/data-layer.spec.js +0 -68
- package/assets/ts/ui-tests/fileupload.spec.ts +0 -30
- package/assets/ts/ui-tests/filterlist.spec.ts +0 -26
- package/assets/ts/ui-tests/multistep.spec.ts +0 -78
- package/assets/ts/ui-tests/slider.spec.ts +0 -27
- package/assets/ts/ui-tests/table.spec.ts +0 -91
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* iamKey v7.7.0
|
|
3
|
+
* Copyright 2022-2026 iamproperty
|
|
4
|
+
*//*! js-cookie v3.0.5 | MIT */function k(m){for(var s=1;s<arguments.length;s++){var c=arguments[s];for(var l in c)m[l]=c[l]}return m}var B={read:function(m){return m[0]==='"'&&(m=m.slice(1,-1)),m.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(m){return encodeURIComponent(m).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function C(m,s){function c(t,a,o){if(!(typeof document>"u")){o=k({},s,o),typeof o.expires=="number"&&(o.expires=new Date(Date.now()+o.expires*864e5)),o.expires&&(o.expires=o.expires.toUTCString()),t=encodeURIComponent(t).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var r="";for(var e in o)o[e]&&(r+="; "+e,o[e]!==!0&&(r+="="+o[e].split(";")[0]));return document.cookie=t+"="+m.write(a,t)+r}}function l(t){if(!(typeof document>"u"||arguments.length&&!t)){for(var a=document.cookie?document.cookie.split("; "):[],o={},r=0;r<a.length;r++){var e=a[r].split("="),i=e.slice(1).join("=");try{var n=decodeURIComponent(e[0]);if(o[n]=m.read(i,n),t===n)break}catch{}}return t?o[t]:o}}return Object.create({set:c,get:l,remove:function(t,a){c(t,"",k({},a,{expires:-1}))},withAttributes:function(t){return C(this.converter,k({},this.attributes,t))},withConverter:function(t){return C(k({},this.converter,t),this.attributes)}},{attributes:{value:Object.freeze(s)},converter:{value:Object.freeze(m)}})}var D=C(B,{path:"/"});const j=m=>{window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:m})};var x=function(m,s,c,l){function t(a){return a instanceof c?a:new c(function(o){o(a)})}return new(c||(c=Promise))(function(a,o){function r(n){try{i(l.next(n))}catch(b){o(b)}}function e(n){try{i(l.throw(n))}catch(b){o(b)}}function i(n){n.done?a(n.value):t(n.value).then(r,e)}i((l=l.apply(m,s||[])).next())})};j("iam-config");class L extends HTMLElement{constructor(){var s,c;super(),this.getBucketsData=t=>{if(!t)return[];const a=[];return t.forEach(o=>{var r,e;typeof((r=o.attributes)===null||r===void 0?void 0:r.criteria)=="object"&&Array.isArray((e=o.attributes)===null||e===void 0?void 0:e.criteria)&&a.push(o)}),a},this.createBuckets=t=>(console.log(t),this.shadowRoot.querySelector("#buckets"),t?(t.forEach(a=>{this.createBucket(a)}),!0):!1),this.createBucket=t=>{const a=this.shadowRoot.querySelector("#buckets"),o=document.createElement("div");o.innerHTML=this.addBucketHTML(t),o.classList.add("bucket__wrapper"),a?.insertAdjacentElement("beforeend",o),this.createEditBucketsEvents(o);const r=o.querySelector(".criteria--container");return t.attributes&&(t.attributes.criteria.forEach(e=>{var i,n,b;const g=document.createElement("form");g.classList.add("criteria"),g.innerHTML=this.addCriteriaHTML(e.attributes),(i=g.querySelector('[name="attribute"]'))===null||i===void 0||(i.value=e.attributes.attribute),(n=g.querySelector('[name="rule"]'))===null||n===void 0||(n.value=e.attributes.rule),(b=g.querySelector('[name="match"]'))===null||b===void 0||(b.value=e.attributes.match),r?.appendChild(g)}),this.createForms(t.attributes.items,t.id)),o},this.addCriteriaHTML=t=>`<label>
|
|
5
|
+
<span class="visually-hidden">Attribute</span>
|
|
6
|
+
${this.createCriteriaDropdown(t.attribute)}
|
|
7
|
+
</label>
|
|
8
|
+
<label>
|
|
9
|
+
<span class="visually-hidden">Rule</span>
|
|
10
|
+
<select name="rule" class="mt-0 select--sm">
|
|
11
|
+
<option value="set">is not empty</option>
|
|
12
|
+
<option value="empty">is empty</option>
|
|
13
|
+
<option value="equals">equals</option>
|
|
14
|
+
<option value="not">is not</option>
|
|
15
|
+
<option value="greater">greater than</option>
|
|
16
|
+
<option value="less">less than</option>
|
|
17
|
+
</select>
|
|
18
|
+
</label>
|
|
19
|
+
<label>
|
|
20
|
+
<span class="visually-hidden">Match</span>
|
|
21
|
+
<input type="text" name="match" class="mt-0 input--sm" /> <!-- TODO Add datalist or transform into select -->
|
|
22
|
+
</label>
|
|
23
|
+
<div class="btn__group">
|
|
24
|
+
<button class="btn btn-compact btn-sm mt-0 btn-secondary fa-plus" type="button" data-direction="add" title="Delete">Add</button>
|
|
25
|
+
<button class="btn btn-compact btn-sm mt-0 btn-secondary fa-trash" type="button" data-direction="delete" title="Delete">Delete</button>
|
|
26
|
+
</div>`,this.addBucketHTML=t=>{var a,o,r;return`<label>
|
|
27
|
+
<span class="visually-hidden">Name</span>
|
|
28
|
+
<input type="text" name="bucket" value="${(o=(a=t.attributes)===null||a===void 0?void 0:a.name)!==null&&o!==void 0?o:""}"/>
|
|
29
|
+
</label>
|
|
30
|
+
<div class="btn__group text-end"><button class="btn btn-compact btn-sm mt-0 btn-secondary fa-pen-to-square" data-expand title="Expand to see more options">Edit</button>${this.buttonHTML}</div>
|
|
31
|
+
<div class="criteria--container">
|
|
32
|
+
</div>
|
|
33
|
+
<div data-bucket="${(r=t.id)!==null&&r!==void 0?r:""}" class="bucket">
|
|
34
|
+
</div>`},this.createCriteriaDropdown=t=>{const a=this.querySelector("form"),o=new FormData(a),r=Object.fromEntries(o.entries());let e="";return Object.keys(r).forEach(function(i){e+=`<option value="${i}" ${i==t?' selected="selected"':""}>${i}</option>`}),`<select name="attributes[criteria]" class="mt-0 select--sm">
|
|
35
|
+
<option value=""></option>
|
|
36
|
+
${e}
|
|
37
|
+
</select>`},this.createEditBucketsEvents=t=>{this.addButtonEvents(t,!0);const a=t?.querySelector("[data-expand]");a?.addEventListener("click",()=>{t.classList.toggle("bucket--expanded")})},this.createForms=(t,a="any")=>{t.forEach(o=>{var r;if(typeof((r=o.attributes)===null||r===void 0?void 0:r.criteria)>"u"){const e=this.createForm(o,a);Object.keys(o.attributes).forEach(function(i){if(e.querySelector(`[name="${i}"]`)){const n=e.querySelector(`[name="${i}"]`);if(n.matches("select[data-import]")&&!n.querySelector(`option[value="${o.attributes[i]}"]`)){const b=document.createElement("option");b.value=o.attributes[i],b.innerHTML=o.attributes[i],n.appendChild(b)}n.value=o.attributes[i]}})}})},this.checkCriteria=(t,a)=>!!t[a],this.checkBuckets=t=>{let o=this.shadowRoot.querySelector("#any");if(!this.hasAttribute("data-buckets"))return o;let r=[],e=!1;return r=this.getAttribute("data-buckets").split(","),r.forEach(i=>{(e?!1:this.checkCriteria(t,i))&&(e=!0,o=this.shadowRoot.querySelector(`[data-bucket="${i}"]`))}),o},this.createForm=(t,a="any")=>{var o;const e=this.shadowRoot.querySelector(`#items [data-bucket="${a}"]`),i=(o=this.querySelector("form"))===null||o===void 0?void 0:o.cloneNode(!0);return e?.insertAdjacentElement("beforeend",i),i?.addEventListener("submit",n=>{n.preventDefault()}),this.addButtons(i),i},this.getCurrentIds=()=>{var t;const a=[];return Array.from((t=this.shadowRoot)===null||t===void 0?void 0:t.querySelectorAll("#items form")).forEach(o=>{a.push(parseInt(o.getAttribute("id")))}),a},this.generateId=()=>Math.max(...this.getCurrentIds())+1,this.addButtonEvents=(t,a=!0)=>{const o=t?.querySelector('[data-direction="up"]'),r=t?.querySelector('[data-direction="down"]'),e=t?.querySelector('[data-direction="delete"]');o?.addEventListener("click",()=>{t?.previousElementSibling&&(t?.parentNode.insertBefore(t,t.previousElementSibling),a&&t?.scrollIntoView({behavior:"instant",block:"center"}))}),r?.addEventListener("click",()=>{t.nextElementSibling?t?.parentNode.insertBefore(t,t.nextElementSibling.nextElementSibling):t?.parentNode.insertAdjacentElement("beforeend",t),a&&t?.scrollIntoView({behavior:"instant",block:"center"})}),e?.addEventListener("click",()=>{t.remove()})},this.addButtons=t=>{t?.insertAdjacentHTML("beforeend",`<div class="btn__group">${this.buttonHTML}</div>`),this.addButtonEvents(t)},this.attachShadow({mode:"open"}),document.body.hasAttribute("data-assets-location")&&document.body.getAttribute("data-assets-location");const l=document.createElement("template");l.innerHTML=`
|
|
38
|
+
<style>
|
|
39
|
+
@layer reset{body{--excess-space: calc((100% - var(--max-width)) / 2);--col-size: calc( ( 100% - max(0%, var(--excess-space)) - max(0%, var(--excess-space)) - var(--gutter) - var(--gutter) - (var(--gap) * (11)) ) / 12 );column-gap:var(--gap);display:grid;margin-inline:0;width:100%;grid-template-rows:auto;align-content:start;justify-content:center;grid-template-columns:[full-width-start container-start] calc(var(--gutter) - var(--gap)) [content-start col-1-start] var(--col-size) [col-1-end col-2-start] var(--col-size) [col-2-end col-3-start] var(--col-size) [col-3-end col-4-start] var(--col-size) [col-4-end col-5-start] var(--col-size) [col-5-end col-6-start] var(--col-size) [col-6-end col-7-start] var(--col-size) [col-7-end col-8-start] var(--col-size) [col-8-end col-9-start] var(--col-size) [col-9-end col-10-start] var(--col-size) [col-10-end col-11-start] var(--col-size) [col-11-end col-12-start] var(--col-size) [col-12-end content-end] calc(var(--gutter) - var(--gap)) [container-end full-width-end]}@media screen and (min-width: 90em){body{grid-template-columns:[full-width-start] calc(var(--excess-space) - var(--gap)) [container-start] calc(var(--gutter) - var(--gap)) [content-start col-1-start] var(--col-size) [col-1-end col-2-start] var(--col-size) [col-2-end col-3-start] var(--col-size) [col-3-end col-4-start] var(--col-size) [col-4-end col-5-start] var(--col-size) [col-5-end col-6-start] var(--col-size) [col-6-end col-7-start] var(--col-size) [col-7-end col-8-start] var(--col-size) [col-8-end col-9-start] var(--col-size) [col-9-end col-10-start] var(--col-size) [col-10-end col-11-start] var(--col-size) [col-11-end col-12-start] var(--col-size) [col-12-end content-end] calc(var(--gutter) - var(--gap)) [container-end] calc(var(--excess-space) - var(--gap)) [full-width-end]}}body *{grid-column:content}body *:where(button):not(:has(.card)){max-width:fit-content;place-self:start}body *:is(div){align-content:start}div:has(main){display:contents !important}:is(nav,main,footer){display:grid;grid-column:full-width !important;grid-template-columns:subgrid}*:not(.row)>main:not(:has(.container:last-child)):not(:has(iam-collapsible-side:last-child)){padding-bottom:1rem}main>:is(.full-width,[class*=bg-]:has(.container),iam-header,iam-collapsible-side,iam-notification){grid-column:full-width}[class*=bg-]:not([class*=col-]):has(.container){display:grid;grid-column:full-width;grid-template-columns:subgrid}.grid:not(.admin-panel){display:grid !important;grid-template-columns:subgrid !important}.grid:not(.admin-panel)>*{grid-column:var(--col-start, col-1-start)/var(--col-end, col-12-end)}*:has([class*=order-]:not([class*=border-]))>*:not([class*=order-]){order:99}.inline-start{justify-self:start}.block-start{align-self:start}.inline-center{justify-self:center}.block-center{align-self:center}.inline-end{justify-self:end}.block-end{align-self:end}.display-contents{display:contents}.display-none{display:none}.display-block{display:block}.display-grid{display:grid}.flow-dense{grid-auto-flow:dense}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}@media screen and (min-width: 36em){.sm-inline-start{justify-self:start}.sm-block-start{align-self:start}.sm-inline-center{justify-self:center}.sm-block-center{align-self:center}.sm-inline-end{justify-self:end}.sm-block-end{align-self:end}.sm-display-contents{display:contents}.sm-display-none{display:none}.sm-display-block{display:block}.sm-display-grid{display:grid}.sm-flow-dense{grid-auto-flow:dense}.sm-order-1{order:1}.sm-order-2{order:2}.sm-order-3{order:3}.sm-order-4{order:4}.sm-order-5{order:5}.sm-order-6{order:6}.sm-order-7{order:7}.sm-order-8{order:8}.sm-order-9{order:9}.sm-order-10{order:10}}@media screen and (min-width: 62em){.md-inline-start{justify-self:start}.md-block-start{align-self:start}.md-inline-center{justify-self:center}.md-block-center{align-self:center}.md-inline-end{justify-self:end}.md-block-end{align-self:end}.md-display-contents{display:contents}.md-display-none{display:none}.md-display-block{display:block}.md-display-grid{display:grid}.md-flow-dense{grid-auto-flow:dense}.md-order-1{order:1}.md-order-2{order:2}.md-order-3{order:3}.md-order-4{order:4}.md-order-5{order:5}.md-order-6{order:6}.md-order-7{order:7}.md-order-8{order:8}.md-order-9{order:9}.md-order-10{order:10}}:is([class*=col-start-],[class*=col-end-],[class*=col-span-]){grid-column:var(--col-start, col-1-start)/var(--col-end, col-12-end)}*:not(:where(html,body)):has(:is([class*=cols-],[class*=col-start-],[class*=col-end-],[class*=col-span-])){display:grid;grid-template-columns:subgrid}*:not(:where(html,body)):has(:is([class*=cols-],[class*=col-start-],[class*=col-end-],[class*=col-span-])) [class*=col-]:not([class*=col-start-auto]){--col-start: col-1}*:not(:where(html,body)):has(:is([class*=cols-],[class*=col-start-],[class*=col-end-],[class*=col-span-])) [class*=col-] [class*=col-]{--col-start: auto}*:not(:where(html,body)):has(:is([class*=cols-],[class*=col-start-],[class*=col-end-],[class*=col-span-])) *{grid-column:var(--col-start, col-1-start)/var(--col-end, col-12-end)}*:not(:where(main)):has(>[class*=col-]){display:grid;grid-template-columns:subgrid}.col-start-auto{--col-start: auto}.col-start-auto:first-child{--col-start: col-1}hr+.col-start-auto{--col-start: col-1}.col-start-1{--col-start: col-1-start !important}.col-end-1{--col-end: col-1-end}.col-end-1+.col-start-auto:not([class*=col-span-]){--col-start: col-2-start}.col-span-1{--col-end: span 1}.col-span-1+.col-start-auto:not([class*=col-span-]){--col-start: col-2-start}.col-start-2{--col-start: col-2-start !important}.col-end-2{--col-end: col-2-end}.col-end-2+.col-start-auto:not([class*=col-span-]){--col-start: col-3-start}.col-span-2{--col-end: span 2}.col-span-2+.col-start-auto:not([class*=col-span-]){--col-start: col-3-start}.col-start-3{--col-start: col-3-start !important}.col-end-3{--col-end: col-3-end}.col-end-3+.col-start-auto:not([class*=col-span-]){--col-start: col-4-start}.col-span-3{--col-end: span 3}.col-span-3+.col-start-auto:not([class*=col-span-]){--col-start: col-4-start}.col-start-4{--col-start: col-4-start !important}.col-end-4{--col-end: col-4-end}.col-end-4+.col-start-auto:not([class*=col-span-]){--col-start: col-5-start}.col-span-4{--col-end: span 4}.col-span-4+.col-start-auto:not([class*=col-span-]){--col-start: col-5-start}.col-start-5{--col-start: col-5-start !important}.col-end-5{--col-end: col-5-end}.col-end-5+.col-start-auto:not([class*=col-span-]){--col-start: col-6-start}.col-span-5{--col-end: span 5}.col-span-5+.col-start-auto:not([class*=col-span-]){--col-start: col-6-start}.col-start-6{--col-start: col-6-start !important}.col-end-6{--col-end: col-6-end}.col-end-6+.col-start-auto:not([class*=col-span-]){--col-start: col-7-start}.col-span-6{--col-end: span 6}.col-span-6+.col-start-auto:not([class*=col-span-]){--col-start: col-7-start}.col-start-7{--col-start: col-7-start !important}.col-end-7{--col-end: col-7-end}.col-end-7+.col-start-auto:not([class*=col-span-]){--col-start: col-8-start}.col-span-7{--col-end: span 7}.col-span-7+.col-start-auto:not([class*=col-span-]){--col-start: col-8-start}.col-start-8{--col-start: col-8-start !important}.col-end-8{--col-end: col-8-end}.col-end-8+.col-start-auto:not([class*=col-span-]){--col-start: col-9-start}.col-span-8{--col-end: span 8}.col-span-8+.col-start-auto:not([class*=col-span-]){--col-start: col-9-start}.col-start-9{--col-start: col-9-start !important}.col-end-9{--col-end: col-9-end}.col-end-9+.col-start-auto:not([class*=col-span-]){--col-start: col-10-start}.col-span-9{--col-end: span 9}.col-span-9+.col-start-auto:not([class*=col-span-]){--col-start: col-10-start}.col-start-10{--col-start: col-10-start !important}.col-end-10{--col-end: col-10-end}.col-end-10+.col-start-auto:not([class*=col-span-]){--col-start: col-11-start}.col-span-10{--col-end: span 10}.col-span-10+.col-start-auto:not([class*=col-span-]){--col-start: col-11-start}.col-start-11{--col-start: col-11-start !important}.col-end-11{--col-end: col-11-end}.col-end-11+.col-start-auto:not([class*=col-span-]){--col-start: col-12-start}.col-span-11{--col-end: span 11}.col-span-11+.col-start-auto:not([class*=col-span-]){--col-start: col-12-start}.col-start-12{--col-start: col-12-start !important}.col-end-12{--col-end: col-12-end}.col-end-12+.col-start-auto:not([class*=col-span-]){--col-start: col-13-start}.col-span-12{--col-end: span 12}.col-span-12+.col-start-auto:not([class*=col-span-]){--col-start: col-13-start}@media screen and (min-width: 36em){*:not(:where(main)):has(>[class*=sm-col-]){display:grid;grid-template-columns:subgrid}.sm-col-start-auto{--col-start: auto}.sm-col-start-auto:first-child{--col-start: col-1}hr+.sm-col-start-auto{--col-start: col-1}.sm-col-start-1{--col-start: col-1-start !important}.sm-col-end-1{--col-end: col-1-end}.sm-col-end-1+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-2-start}.sm-col-span-1{--col-end: span 1}.sm-col-span-1+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-2-start}.sm-col-start-2{--col-start: col-2-start !important}.sm-col-end-2{--col-end: col-2-end}.sm-col-end-2+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-3-start}.sm-col-span-2{--col-end: span 2}.sm-col-span-2+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-3-start}.sm-col-start-3{--col-start: col-3-start !important}.sm-col-end-3{--col-end: col-3-end}.sm-col-end-3+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-4-start}.sm-col-span-3{--col-end: span 3}.sm-col-span-3+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-4-start}.sm-col-start-4{--col-start: col-4-start !important}.sm-col-end-4{--col-end: col-4-end}.sm-col-end-4+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-5-start}.sm-col-span-4{--col-end: span 4}.sm-col-span-4+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-5-start}.sm-col-start-5{--col-start: col-5-start !important}.sm-col-end-5{--col-end: col-5-end}.sm-col-end-5+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-6-start}.sm-col-span-5{--col-end: span 5}.sm-col-span-5+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-6-start}.sm-col-start-6{--col-start: col-6-start !important}.sm-col-end-6{--col-end: col-6-end}.sm-col-end-6+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-7-start}.sm-col-span-6{--col-end: span 6}.sm-col-span-6+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-7-start}.sm-col-start-7{--col-start: col-7-start !important}.sm-col-end-7{--col-end: col-7-end}.sm-col-end-7+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-8-start}.sm-col-span-7{--col-end: span 7}.sm-col-span-7+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-8-start}.sm-col-start-8{--col-start: col-8-start !important}.sm-col-end-8{--col-end: col-8-end}.sm-col-end-8+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-9-start}.sm-col-span-8{--col-end: span 8}.sm-col-span-8+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-9-start}.sm-col-start-9{--col-start: col-9-start !important}.sm-col-end-9{--col-end: col-9-end}.sm-col-end-9+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-10-start}.sm-col-span-9{--col-end: span 9}.sm-col-span-9+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-10-start}.sm-col-start-10{--col-start: col-10-start !important}.sm-col-end-10{--col-end: col-10-end}.sm-col-end-10+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-11-start}.sm-col-span-10{--col-end: span 10}.sm-col-span-10+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-11-start}.sm-col-start-11{--col-start: col-11-start !important}.sm-col-end-11{--col-end: col-11-end}.sm-col-end-11+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-12-start}.sm-col-span-11{--col-end: span 11}.sm-col-span-11+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-12-start}.sm-col-start-12{--col-start: col-12-start !important}.sm-col-end-12{--col-end: col-12-end}.sm-col-end-12+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-13-start}.sm-col-span-12{--col-end: span 12}.sm-col-span-12+.sm-col-start-auto:not([class*=col-span-]){--col-start: col-13-start}}@media screen and (min-width: 62em){*:not(:where(main)):has(>[class*=md-col-]){display:grid;grid-template-columns:subgrid}.md-col-start-auto{--col-start: auto}.md-col-start-auto:first-child{--col-start: col-1}hr+.md-col-start-auto{--col-start: col-1}.md-col-start-1{--col-start: col-1-start !important}.md-col-end-1{--col-end: col-1-end}.md-col-end-1+.md-col-start-auto:not([class*=col-span-]){--col-start: col-2-start}.md-col-span-1{--col-end: span 1}.md-col-span-1+.md-col-start-auto:not([class*=col-span-]){--col-start: col-2-start}.md-col-start-2{--col-start: col-2-start !important}.md-col-end-2{--col-end: col-2-end}.md-col-end-2+.md-col-start-auto:not([class*=col-span-]){--col-start: col-3-start}.md-col-span-2{--col-end: span 2}.md-col-span-2+.md-col-start-auto:not([class*=col-span-]){--col-start: col-3-start}.md-col-start-3{--col-start: col-3-start !important}.md-col-end-3{--col-end: col-3-end}.md-col-end-3+.md-col-start-auto:not([class*=col-span-]){--col-start: col-4-start}.md-col-span-3{--col-end: span 3}.md-col-span-3+.md-col-start-auto:not([class*=col-span-]){--col-start: col-4-start}.md-col-start-4{--col-start: col-4-start !important}.md-col-end-4{--col-end: col-4-end}.md-col-end-4+.md-col-start-auto:not([class*=col-span-]){--col-start: col-5-start}.md-col-span-4{--col-end: span 4}.md-col-span-4+.md-col-start-auto:not([class*=col-span-]){--col-start: col-5-start}.md-col-start-5{--col-start: col-5-start !important}.md-col-end-5{--col-end: col-5-end}.md-col-end-5+.md-col-start-auto:not([class*=col-span-]){--col-start: col-6-start}.md-col-span-5{--col-end: span 5}.md-col-span-5+.md-col-start-auto:not([class*=col-span-]){--col-start: col-6-start}.md-col-start-6{--col-start: col-6-start !important}.md-col-end-6{--col-end: col-6-end}.md-col-end-6+.md-col-start-auto:not([class*=col-span-]){--col-start: col-7-start}.md-col-span-6{--col-end: span 6}.md-col-span-6+.md-col-start-auto:not([class*=col-span-]){--col-start: col-7-start}.md-col-start-7{--col-start: col-7-start !important}.md-col-end-7{--col-end: col-7-end}.md-col-end-7+.md-col-start-auto:not([class*=col-span-]){--col-start: col-8-start}.md-col-span-7{--col-end: span 7}.md-col-span-7+.md-col-start-auto:not([class*=col-span-]){--col-start: col-8-start}.md-col-start-8{--col-start: col-8-start !important}.md-col-end-8{--col-end: col-8-end}.md-col-end-8+.md-col-start-auto:not([class*=col-span-]){--col-start: col-9-start}.md-col-span-8{--col-end: span 8}.md-col-span-8+.md-col-start-auto:not([class*=col-span-]){--col-start: col-9-start}.md-col-start-9{--col-start: col-9-start !important}.md-col-end-9{--col-end: col-9-end}.md-col-end-9+.md-col-start-auto:not([class*=col-span-]){--col-start: col-10-start}.md-col-span-9{--col-end: span 9}.md-col-span-9+.md-col-start-auto:not([class*=col-span-]){--col-start: col-10-start}.md-col-start-10{--col-start: col-10-start !important}.md-col-end-10{--col-end: col-10-end}.md-col-end-10+.md-col-start-auto:not([class*=col-span-]){--col-start: col-11-start}.md-col-span-10{--col-end: span 10}.md-col-span-10+.md-col-start-auto:not([class*=col-span-]){--col-start: col-11-start}.md-col-start-11{--col-start: col-11-start !important}.md-col-end-11{--col-end: col-11-end}.md-col-end-11+.md-col-start-auto:not([class*=col-span-]){--col-start: col-12-start}.md-col-span-11{--col-end: span 11}.md-col-span-11+.md-col-start-auto:not([class*=col-span-]){--col-start: col-12-start}.md-col-start-12{--col-start: col-12-start !important}.md-col-end-12{--col-end: col-12-end}.md-col-end-12+.md-col-start-auto:not([class*=col-span-]){--col-start: col-13-start}.md-col-span-12{--col-end: span 12}.md-col-span-12+.md-col-start-auto:not([class*=col-span-]){--col-start: col-13-start}}:where([class*=row-],[class*=rows-]){grid-row:var(--row-start, auto)/span var(--row-span, 1)}.row-span-1{--row-span: 1}.row-span-2{--row-span: 2}.row-span-3{--row-span: 3}.row-span-4{--row-span: 4}.row-span-5{--row-span: 5}.row-span-6{--row-span: 6}.row-span-7{--row-span: 7}.row-span-8{--row-span: 8}.row-span-9{--row-span: 9}.row-span-10{--row-span: 10}.row-start-1{--row-start: 1}.row-start-2{--row-start: 2}.row-start-3{--row-start: 3}.row-start-4{--row-start: 4}.row-start-5{--row-start: 5}.row-start-6{--row-start: 6}.row-start-7{--row-start: 7}.row-start-8{--row-start: 8}.row-start-9{--row-start: 9}.row-start-10{--row-start: 10}.row-start-11{--row-start: 11}.row-start-12{--row-start: 12}.row-start-13{--row-start: 13}.row-start-14{--row-start: 14}.row-start-15{--row-start: 15}.row-start-16{--row-start: 16}.row-start-17{--row-start: 17}.row-start-18{--row-start: 18}.row-start-19{--row-start: 19}.row-start-20{--row-start: 20}@media screen and (min-width: 36em){.sm-row-span-1{--row-span: 1}.sm-row-span-2{--row-span: 2}.sm-row-span-3{--row-span: 3}.sm-row-span-4{--row-span: 4}.sm-row-span-5{--row-span: 5}.sm-row-span-6{--row-span: 6}.sm-row-span-7{--row-span: 7}.sm-row-span-8{--row-span: 8}.sm-row-span-9{--row-span: 9}.sm-row-span-10{--row-span: 10}.sm-row-start-1{--row-start: 1}.sm-row-start-2{--row-start: 2}.sm-row-start-3{--row-start: 3}.sm-row-start-4{--row-start: 4}.sm-row-start-5{--row-start: 5}.sm-row-start-6{--row-start: 6}.sm-row-start-7{--row-start: 7}.sm-row-start-8{--row-start: 8}.sm-row-start-9{--row-start: 9}.sm-row-start-10{--row-start: 10}.sm-row-start-11{--row-start: 11}.sm-row-start-12{--row-start: 12}.sm-row-start-13{--row-start: 13}.sm-row-start-14{--row-start: 14}.sm-row-start-15{--row-start: 15}.sm-row-start-16{--row-start: 16}.sm-row-start-17{--row-start: 17}.sm-row-start-18{--row-start: 18}.sm-row-start-19{--row-start: 19}.sm-row-start-20{--row-start: 20}}@media screen and (min-width: 62em){.md-row-span-1{--row-span: 1}.md-row-span-2{--row-span: 2}.md-row-span-3{--row-span: 3}.md-row-span-4{--row-span: 4}.md-row-span-5{--row-span: 5}.md-row-span-6{--row-span: 6}.md-row-span-7{--row-span: 7}.md-row-span-8{--row-span: 8}.md-row-span-9{--row-span: 9}.md-row-span-10{--row-span: 10}.md-row-start-1{--row-start: 1}.md-row-start-2{--row-start: 2}.md-row-start-3{--row-start: 3}.md-row-start-4{--row-start: 4}.md-row-start-5{--row-start: 5}.md-row-start-6{--row-start: 6}.md-row-start-7{--row-start: 7}.md-row-start-8{--row-start: 8}.md-row-start-9{--row-start: 9}.md-row-start-10{--row-start: 10}.md-row-start-11{--row-start: 11}.md-row-start-12{--row-start: 12}.md-row-start-13{--row-start: 13}.md-row-start-14{--row-start: 14}.md-row-start-15{--row-start: 15}.md-row-start-16{--row-start: 16}.md-row-start-17{--row-start: 17}.md-row-start-18{--row-start: 18}.md-row-start-19{--row-start: 19}.md-row-start-20{--row-start: 20}}[class*=cols-]:not(.row){display:grid;grid-template-columns:subgrid}.cols-1>*{grid-column:auto/span 12}.cols-2>*{grid-column:auto/span 6}.cols-3>*{grid-column:auto/span 4}.cols-4>*{grid-column:auto/span 3}.cols-5>*{grid-column:auto/span 2}.cols-6>*{grid-column:auto/span 2}@media screen and (min-width: 36em){.sm-cols-1>*{grid-column:auto/span 12}.sm-cols-2>*{grid-column:auto/span 6}.sm-cols-3>*{grid-column:auto/span 4}.sm-cols-4>*{grid-column:auto/span 3}.sm-cols-5>*{grid-column:auto/span 2}.sm-cols-6>*{grid-column:auto/span 2}}@media screen and (min-width: 62em){.md-cols-1>*{grid-column:auto/span 12}.md-cols-2>*{grid-column:auto/span 6}.md-cols-3>*{grid-column:auto/span 4}.md-cols-4>*{grid-column:auto/span 3}.md-cols-5>*{grid-column:auto/span 2}.md-cols-6>*{grid-column:auto/span 2}}}@layer elements{:is(label:not(.tag),.label){font-size:1.125rem;line-height:1.3125rem;margin-bottom:.5rem;font-weight:normal;color:var(--colour-heading);display:block}:is(label:not(.tag),.label)>iam-rating{margin-top:.25rem !important}:is(label:not(.tag),.label).label--sm{--input-max-width: 15rem}}@layer elements{input{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none !important}::-moz-focus-inner{padding:0;border-style:none}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;font-weight:normal;line-height:inherit}legend+*{clear:left}::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-text,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-moz-color-swatch{border-radius:0;border:none}::-webkit-color-swatch{border-radius:0;border:none}::file-selector-button{font:inherit;-webkit-appearance:button}:is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),output){display:block;width:100%;display:block;width:100%;padding:var(--input-padding-block, 0.75rem) var(--input-padding-inline, 1rem);font-size:var(--input-fs, 1rem);line-height:var(--input-lh, 1.25rem);color:var(--colour-heading);background-color:var(--colour-canvas-2);background-clip:padding-box;border:2px solid var(--colour-primary);appearance:none;border-radius:.5rem;margin-bottom:1.5rem;min-height:calc(var(--input-padding-block, 0.75rem) + var(--input-padding-block, 0.75rem) + var(--input-lh, 1.25rem) + 4px);max-height:calc(var(--input-padding-block, 0.75rem) + var(--input-padding-block, 0.75rem) + var(--input-lh, 1.25rem) + 4px)}:is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),output):is(:focus,.focus):not(:disabled){border-color:var(--colour-info);outline:0}:is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),output):is(:focus,.focus):not(:disabled):not(:invalid){box-shadow:0 0 0 .1rem rgba(30,190,230,.25)}:is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),output)::-webkit-date-and-time-value{height:1.5em}:is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),output):disabled{background-color:#ccd6d8;opacity:.4;cursor:not-allowed}input[type=color]{padding:0 !important;max-width:3rem !important}[disabled] :is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),output,select:not(.select--minimal,.btn)){background-color:#ccd6d8;opacity:.4;cursor:not-allowed;pointer-events:none}[disabled] label{cursor:not-allowed;pointer-events:none}:is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range])){max-width:var(--input-max-width)}}@layer elements{textarea{--textarea-height-scale: 3;margin:0;font-family:inherit;resize:vertical;display:block;width:100%;display:block;width:100%;padding:var(--input-padding-block, 0.75rem) var(--input-padding-inline, 1rem);font-size:var(--input-fs, 1rem);line-height:var(--input-lh, 1.25rem);color:var(--colour-heading);background-color:var(--colour-canvas-2);background-clip:padding-box;border:2px solid var(--colour-primary);appearance:none;border-radius:.5rem;margin-bottom:1.5rem;max-height:100%}textarea:not([rows]){min-height:calc(var(--input-padding-block, 0.75rem) + var(--input-padding-block, 0.75rem) + var(--input-lh, 1.25rem)*var(--textarea-height-scale) + 4px) !important}textarea[rows="1"]{--textarea-height-scale: 1}textarea[rows="2"]{--textarea-height-scale: 2}textarea:is([rows="2"],[rows="2"]){min-height:calc(var(--input-padding-block, 0.75rem) + var(--input-padding-block, 0.75rem) + var(--input-lh, 1.25rem)*var(--textarea-height-scale) + 4px) !important}textarea:is(:focus,.focus):not(:disabled){border-color:var(--colour-info);outline:0}textarea:is(:focus,.focus):not(:disabled):not(:invalid){box-shadow:0 0 0 .1rem rgba(30,190,230,.25)}textarea:disabled{background-color:#ccd6d8;opacity:.4;cursor:not-allowed}[disabled] textarea{background-color:#ccd6d8;opacity:.4;cursor:not-allowed;pointer-events:none}label:not(.tag):has(textarea){display:block;margin-bottom:1.5rem;max-width:var(--input-max-width)}label:not(.tag):has(textarea) textarea{margin-top:.5rem;margin-bottom:0 !important}}@layer elements{select,optgroup{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}select{text-transform:none}select{word-wrap:normal}select:disabled{opacity:1}fieldset{min-width:0;padding:0;margin:0;border:0}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}:is(select:not(.select--minimal,.btn)){display:block;width:100%;display:block;width:100%;padding:var(--input-padding-block, 0.75rem) var(--input-padding-inline, 1rem);font-size:var(--input-fs, 1rem);line-height:var(--input-lh, 1.25rem);color:var(--colour-heading);background-color:var(--colour-canvas-2);background-clip:padding-box;border:2px solid var(--colour-primary);appearance:none;border-radius:.5rem;margin-bottom:1.5rem;min-height:calc(var(--input-padding-block, 0.75rem) + var(--input-padding-block, 0.75rem) + var(--input-lh, 1.25rem) + 4px);max-height:calc(var(--input-padding-block, 0.75rem) + var(--input-padding-block, 0.75rem) + var(--input-lh, 1.25rem) + 4px)}:is(select:not(.select--minimal,.btn)):is(:focus,.focus):not(:disabled){border-color:var(--colour-info);outline:0}:is(select:not(.select--minimal,.btn)):is(:focus,.focus):not(:disabled):not(:invalid){box-shadow:0 0 0 .1rem rgba(30,190,230,.25)}:is(select:not(.select--minimal,.btn)):disabled{background-color:#ccd6d8;opacity:.4;cursor:not-allowed}[disabled] :is(select:not(.select--minimal,.btn)){background-color:#ccd6d8;opacity:.4;cursor:not-allowed;pointer-events:none}[disabled] label{cursor:not-allowed;pointer-events:none}fieldset{width:100%;position:relative}legend{font-family:var(--font-heading);font-style:normal;font-weight:var(--heading-weight);line-height:2rem;color:var(--colour-heading);margin:0;clear:both;display:block;float:none;font-size:var(--h4-fs);line-height:var(--heading-lh);padding-bottom:.5rem;max-width:var(--content-max-width);min-width:100%}div:has(>label:first-child):has(>input){position:relative;max-width:var(--input-max-width);margin-bottom:1.5rem}div:has(>label:first-child):has(>input) input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),div:has(>label:first-child):has(>input) output,div:has(>label:first-child):has(>input) .prefix,div:has(>label:first-child):has(>input) .suffix{margin-bottom:0 !important}div:has(>label:first-child):has(>input){display:flex;flex-wrap:wrap;align-items:center}div:has(>label:first-child):has(>input)>*:not(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range])):not(output):not(.prefix):not(.suffix){flex-shrink:0;width:100%}div:has(>label:first-child):has(>input) :is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),output){flex-shrink:1;flex-grow:1;width:0}div:has(>label:first-child):has(>input) input~*:not(output){order:5;margin-top:.5rem}*:has(>:is(.form-control-sm,.input--sm)){--input-fs: 0.875rem;--input-lh: 1rem;--input-padding-block: 0.625rem;--input-padding-inline: 0.875rem}*:has(>:is(.form-control-lg,.input--lg)){--input-fs: 1.5rem;--input-lh: 1.8125rem;--input-padding-block: 1.25rem;--input-padding-inline: 1.375rem}*:has(>label:first-child):has(>input):has(>:is(.form-control-inline,.input--inline)) label{flex-shrink:0;white-space:nowrap;width:fit-content !important;margin:0;margin-inline-end:1rem}*:has(>input[readonly]){position:relative;max-width:var(--input-max-width)}*:has(>input[readonly]):after{font-family:"Font Awesome 7 Pro";font-weight:300;content:"\uF023";position:absolute;font-size:var(--input-lh, 1.25rem);height:var(--input-lh, 1.25rem);width:var(--input-lh, 1.25rem);bottom:calc(var(--input-padding-block, 0.75rem) + 2px);right:calc(var(--input-padding-block, 1rem) + 2px);text-align:center}@supports selector(:has(*)){.suffix~:is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=date]):not([type=time]),output),:is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=date]):not([type=time]),output):has(~.suffix){order:1;border-start-end-radius:0 !important;border-end-end-radius:0 !important}:is(input):has(~iam-password-indicator){border-start-end-radius:0 !important;border-end-end-radius:0 !important}}.was-validated *:not(button):is(:invalid,.is-invalid,[aria-invalid]):not(.is-valid)+label,.was-validated label:has(*:not(button):is(:invalid,.is-invalid,[aria-invalid]):not(.is-valid)){--colour-check-border: var(--colour-danger);--colour-check-bg: #fcebec;border-color:var(--colour-danger)}.was-validated *:not(button):is(:invalid,.is-invalid,[aria-invalid],:-internal-autofill-selected){border-color:var(--colour-danger) !important}.was-validated select:not(.btn):is(:invalid,.is-invalid,[aria-invalid],:-internal-autofill-selected){background:var(--icon-select) right var(--input-padding-block, 0.75rem) top var(--input-padding-block, 0.75rem)/var(--input-lh, 1.25rem) var(--input-lh, 1.25rem) no-repeat,linear-gradient(to left, var(--colour-primary-theme), var(--colour-primary-theme) 100%) right top/calc(var(--input-padding-block, 0.75rem) + var(--input-padding-block, 0.75rem) + var(--input-lh, 1.25rem)) calc(var(--input-padding-block, 0.75rem) + var(--input-padding-block, 0.8rem) + var(--input-lh, 1.25rem)) no-repeat,var(--icon-error) right var(--input-padding-block, 3.5rem) top var(--input-padding-block, 0.75rem)/var(--input-lh, 1.25rem) var(--input-lh, 1.25rem) no-repeat;padding-right:6rem !important}.was-validated input:is(:invalid,.is-invalid,[aria-invalid],:-internal-autofill-selected){background-image:var(--icon-error);background-repeat:no-repeat;background-position:right var(--input-padding-inline, 1rem) center;background-size:var(--input-lh, 1.25rem) var(--input-lh, 1.25rem);padding-right:calc(var(--input-lh, 1.25rem) + var(--input-padding-inline, 1rem) + var(--input-padding-inline, 1rem)) !important}.was-validated *:not(button):is(:valid,.is-valid):not(.is-invalid){border-color:var(--colour-complete)}.was-validated input:is(:valid,.is-valid):not(:is(:invalid,.is-invalid)){background-image:var(--icon-tick);background-repeat:no-repeat;background-position:right var(--input-padding-inline, 1rem) center;background-size:var(--input-lh, 1.25rem) var(--input-lh, 1.25rem);padding-right:calc(var(--input-lh, 1.25rem) + var(--input-padding-inline, 1rem) + var(--input-padding-inline, 1rem)) !important}.invalid-feedback{color:var(--colour-danger);margin-top:.5rem;background-image:var(--icon-error);background-repeat:no-repeat;background-position:left top 1px;background-size:var(--input-fs, 1rem) var(--input-fs, 1rem);padding-left:calc(var(--input-fs, 1rem) + .5rem);display:none}iam-address-lookup:has([required]){--req-display: none}.was-validated :is(:invalid,.is-invalid)~.invalid-feedback{display:block}.was-validated iam-address-lookup:has([required]:invalid){--error-border: var(--colour-danger);--error-bg: var(--icon-error);--error-display: block;--error-hide: none}@supports selector(:has(*)){input:is([type=radio],[type=checkbox]){position:absolute;top:0;left:0;opacity:0;height:0;width:0;margin:0;pointer-events:none}:is(div,fieldset,label:not(.tag)):has(>input:is([type=radio],[type=checkbox])):not(:has(label input)){position:relative;margin-bottom:1.5rem}:is(div,fieldset,label:not(.tag)):has(>input[type=radio]){--border-radius: 50%;--outline-width: 0.5rem}:is(div,fieldset,label:not(.tag)):has(>input[type=checkbox]){--border-radius: 0.25rem;--outline-width: 0.25rem}input:is([type=radio],[type=checkbox])+label:not(:has(>iam-card)),label:not(.tag):has(input:is([type=radio],[type=checkbox])):not(:has(>iam-card)){--tick-colour: transparent;color:var(--colour-heading);position:relative;font-size:1rem;line-height:1.25rem;padding-left:2.5rem;padding-top:.625rem;padding-bottom:.625rem;margin-bottom:1.5rem;margin-right:1.5rem;cursor:pointer}input:is([type=radio],[type=checkbox])+label:not(:has(>iam-card)):has(+span),label:not(.tag):has(input:is([type=radio],[type=checkbox])):not(:has(>iam-card)):has(+span){margin-bottom:0}input:is([type=radio],[type=checkbox])+label:not(:has(>iam-card)):has(+input),label:not(.tag):has(input:is([type=radio],[type=checkbox])):not(:has(>iam-card)):has(+input){margin-bottom:0}input:is([type=radio],[type=checkbox])+label:not(:has(>iam-card)):last-child,label:not(.tag):has(input:is([type=radio],[type=checkbox])):not(:has(>iam-card)):last-child{margin-bottom:0}input:is([type=radio],[type=checkbox])+label:not(:has(>iam-card)):before,label:not(.tag):has(input:is([type=radio],[type=checkbox])):not(:has(>iam-card)):before{content:"";border:2px solid var(--colour-check-border, var(--colour-primary));background:var(--colour-check-bg, transparent);border-radius:var(--border-radius);height:var(--radio-size, 1.5rem);width:var(--radio-size, 1.5rem);display:inline-block;position:absolute;top:.5rem;left:var(--outline-width)}input:is([type=radio],[type=checkbox])+label:not(:has(>iam-card)).btn:before,label:not(.tag):has(input:is([type=radio],[type=checkbox])):not(:has(>iam-card)).btn:before{opacity:0}input[type=radio]+label:not(:has(>iam-card)):after,label:not(.tag):has(input[type=radio]):not(:has(>iam-card)):after{content:"" !important;background:var(--colour-info);border-radius:var(--border-radius);height:.875rem;width:.875rem;height:var(--radio-inner-size, 0.875rem);width:var(--radio-inner-size, 0.875rem);display:none;position:absolute;top:var(--radio-inner-top, 0.8125rem);left:var(--radio-inner-left, calc(0.3125rem + var(--outline-width)))}input[type=radio]+label:not(:has(>iam-card)).radio--tick:before,label:not(.tag):has(input[type=radio]):not(:has(>iam-card)).radio--tick:before{content:"\uF00C";position:absolute;font-size:1.5em;line-height:1;color:var(--tick-colour);font-family:"Font Awesome 7 Pro";background:none !important;border:none !important;outline:none !important;left:.25rem}input[type=radio]+label:not(:has(>iam-card)).radio--tick:after,label:not(.tag):has(input[type=radio]):not(:has(>iam-card)).radio--tick:after{display:none}@media(forced-colors: active){input:is([type=radio],[type=checkbox]):not(:checked)+label.radio--tick:not(:has(>iam-card)):before,label:has(input:is([type=radio],[type=checkbox]):not(:checked)).radio--tick:not(:has(>iam-card)):before{display:none}}:is(div,fieldset):has(>:is(input[type=radio],input[type=checkbox]):nth-of-type(2)) label:not(.tag):not(:has(>iam-card)){margin-bottom:0rem}fieldset:has(label>input:is([type=radio],[type=checkbox])) label{margin-bottom:0 !important}fieldset:has(label>input:is([type=radio],[type=checkbox])){margin-bottom:1.5rem}input:is([type=radio],[type=checkbox]):checked+label,label:not(.tag):has(input:is([type=radio],[type=checkbox]):checked){--tick-colour: var(--colour-info)}input:is([type=radio],[type=checkbox]):checked+label:before,label:not(.tag):has(input:is([type=radio],[type=checkbox]):checked):before{border-color:var(--colour-info)}input:is([type=radio],[type=checkbox]):checked+label:after,label:not(.tag):has(input:is([type=radio],[type=checkbox]):checked):after{display:inline-block}input:is([type=radio],[type=checkbox]):checked+label iam-card,label:not(.tag):has(input:is([type=radio],[type=checkbox]):checked) iam-card{--colour: var(--colour, var(--colour-info))}input[type=checkbox]:not([disabled]):checked+label:before,label:not(.tag):has(input[type=checkbox]:not([disabled]):checked):before{background:var(--colour-info) !important}input[type=checkbox]:checked+label:not(:has(>iam-card)):after,label:not(.tag):has(input[type=checkbox]:checked):after{content:"\uF00C";position:absolute;font-size:var(--checkbox-tick-size, 1em);line-height:1;color:var(--colour-primary-theme);font-family:"Font Awesome 7 Pro";font-weight:bold;height:var(--checkbox-inner-size, 1.5rem);width:var(--checkbox-inner-size, 1.5rem);line-height:1.625rem;background:none !important;border:none !important;outline:none !important;top:var(--checkbox-inner-top, 0.5rem);left:var(--checkbox-inner-left, var(--outline-width));text-align:center}input[type=checkbox]:indeterminate+label:before,label:not(.tag):has(input[type=checkbox]:indeterminate):before{background:var(--colour-info) !important;border-color:var(--colour-info) !important}input[type=checkbox]:indeterminate+label:after,label:not(.tag):has(input[type=checkbox]:indeterminate):after{content:"\uF068";position:absolute;font-size:var(--checkbox-tick-size, 1em);line-height:1;color:var(--colour-primary-theme);font-family:"Font Awesome 7 Pro";font-weight:bold;height:var(--checkbox-inner-size, 1.5rem);width:var(--checkbox-inner-size, 1.5rem);line-height:1.625rem;background:none !important;border:none !important;outline:none !important;top:var(--checkbox-inner-top, 0.5rem);left:var(--checkbox-inner-left, var(--outline-width));text-align:center}input:is([type=radio],[type=checkbox]):checked:is(:focus,:hover,.focus)+label,label:not(.tag):has(input:is([type=radio],[type=checkbox]):checked:is(:focus,:hover,.focus)){--tick-colour: var(--colour-info)}input:is([type=radio],[type=checkbox]):is(:focus,:hover,.focus)+label,input:is([type=radio],[type=checkbox])+label.hover,label:not(.tag):has(input:is([type=radio],[type=checkbox]):is(:focus,:hover,.focus)){--tick-colour: var(--colour-muted)}input:is([type=radio],[type=checkbox]):is(:focus,:hover,.focus)+label:before,input:is([type=radio],[type=checkbox])+label.hover:before,label:not(.tag):has(input:is([type=radio],[type=checkbox]):is(:focus,:hover,.focus)):before{background:var(--colour-check-bg, light-dark(var(--colour-light), #444444));outline:var(--outline-width) solid light-dark(var(--colour-light), #444444)}input:is([type=radio],[type=checkbox]):is(:active,.active)+label,input:is([type=radio],[type=checkbox])+label.active,label:not(.tag):has(input:is([type=radio],[type=checkbox]):is(:active,.active)){--tick-colour: var(--colour-light)}input:is([type=radio],[type=checkbox]):is(:active,.active)+label:before,input:is([type=radio],[type=checkbox])+label.active:before,label:not(.tag):has(input:is([type=radio],[type=checkbox]):is(:active,.active)):before{background:var(--colour-check-bg, #e0e0e0);outline:var(--outline-width) solid #e0e0e0}input:is([type=radio],[type=checkbox]):disabled+label,label:not(.tag):has(input:is([type=radio],[type=checkbox]):disabled){opacity:.4;cursor:not-allowed}input:is([type=radio],[type=checkbox]):disabled+label>iam-card,label:not(.tag):has(input:is([type=radio],[type=checkbox]):disabled)>iam-card{pointer-events:none}input:is([type=radio],[type=checkbox]):disabled+label:before,label:not(.tag):has(input:is([type=radio],[type=checkbox]):disabled):before{background-color:none !important;outline:none !important;border-color:var(--colour-primary) !important}input[type=radio][disabled]:checked+label:after,label:not(.tag):has(input[type=radio][disabled]:checked):after{background-color:var(--colour-primary) !important}input[type=checkbox][disabled]:checked+label:before,label:not(.tag):has(input[type=checkbox][disabled]:checked):before{background:#e0e0e0 !important;border-color:#e0e0e0 !important}}.conditional{display:none}input:checked+.conditional,input:checked+label+.conditional,label:has(:checked)+.conditional,.was-validated .conditional:has(input[required]:invalid),.was-validated .conditional:focus-within{display:block;clear:both}input:not([class*=conditional-input-]):nth-of-type(1):checked~.conditional-1,input:not([class*=conditional-input-]):nth-of-type(2):checked~.conditional-2,input:not([class*=conditional-input-]):nth-of-type(3):checked~.conditional-3,input:not([class*=conditional-input-]):nth-of-type(4):checked~.conditional-4,input:not([class*=conditional-input-]):nth-of-type(5):checked~.conditional-5,input.conditional-input-1:checked~.conditional-1,input.conditional-input-2:checked~.conditional-2,input.conditional-input-3:checked~.conditional-3,input.conditional-input-4:checked~.conditional-4,input.conditional-input-5:checked~.conditional-5,label:has(input.conditional-input-1:checked)~.conditional-1,label:has(input.conditional-input-2:checked)~.conditional-2,label:has(input.conditional-input-3:checked)~.conditional-3,label:has(input.conditional-input-4:checked)~.conditional-4,label:has(input.conditional-input-5:checked)~.conditional-5{display:block;clear:both}select[multiple]{border-radius:.35rem}select[multiple]::-webkit-scrollbar{width:.7rem}select[multiple]::-webkit-scrollbar *{background-color:rgba(0,0,0,0)}select[multiple]::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2);border-radius:.35rem}select:not(.select--minimal,.btn){background:var(--icon-select) right var(--input-padding-block, 0.75rem) top var(--input-padding-block, 0.75rem)/var(--input-lh, 1.25rem) var(--input-lh, 1.25rem) no-repeat,linear-gradient(to left, var(--colour-primary-theme), var(--colour-primary-theme) 100%) right top/calc(var(--input-padding-block, 0.75rem) + var(--input-padding-block, 0.75rem) + var(--input-lh, 1.25rem)) calc(var(--input-padding-block, 0.75rem) + var(--input-padding-block, 0.8rem) + var(--input-lh, 1.25rem)) no-repeat,linear-gradient(to right, var(--colour-canvas-2), var(--colour-canvas-2));padding-right:calc(var(--input-padding-inline, 1rem) + var(--input-padding-inline, 1rem) + var(--input-lh, 1.25rem)) !important}select:not(.select--minimal,.btn) option{font-size:1.2em}select:not(.select--minimal,.btn){box-shadow:inset -2px 0px 0px var(--colour-primary-theme);max-width:var(--select-max-width)}select:not(.select--minimal,.btn)[multiple],select:not(.select--minimal,.btn)[size]:not([size="1"]){background:none;max-height:none !important}select:not(.select--minimal,.btn):disabled{background-color:gray;border-color:#000}select:not(.select--minimal,.btn):-moz-focusring{color:rgba(0,0,0,0);text-shadow:0 0 0 inherit}div:has(>select){margin-bottom:1.5rem}div:has(>select) select{margin-bottom:0 !important}.select--minimal{all:unset;font-size:inherit;line-height:inherit;background:none;border:2px solid rgba(0,0,0,0);display:inline-block;padding:.4em calc(1em + .8ch) .4rem var(--select-padding-left, 0.4em) !important;font-weight:normal !important;margin:-0.4em 0 !important;border-radius:.25em;color:var(--colour-body);height:auto;cursor:pointer;font-family:var(--font-body) !important}.select--minimal option{background-color:var(--colour-canvas);padding-left:1em;font-size:inherit;line-height:inherit}.select--minimal:hover{background:var(--colour-light)}.select--minimal:is(:focus,.focus):not(:disabled){border-color:var(--colour-info);outline:0;box-shadow:0 0 0 .1rem rgba(30,190,230,.25)}*:has(>.select--minimal){position:relative;display:inline-block !important;width:auto !important;font-size:inherit !important;line-height:1 !important;padding:0 !important;margin:0 !important;font-family:var(--font-body) !important}*:has(>.select--minimal):after{font-size:.8em;line-height:1em;content:"\uF078";font-family:"Font Awesome 7 Pro";position:absolute;top:40%;transform:translate(0, -50%);right:.8ch;pointer-events:none;color:var(--colour-body)}iam-fileupload input{display:none}:is(label:not(.tag),.label):has(:is(input,select,textarea)){display:block;margin-bottom:1.5rem;max-width:var(--input-max-width)}:is(label:not(.tag),.label):has(:is(input,select,textarea)) :is(input:not([type=range]),select){margin-top:.5rem;margin-bottom:0 !important}:is(label:not(.tag),.label):has(:is(input,select,textarea)) :is(input,select)~span:not(:is(.suffix,.prefix,.invalid-feedback)),:is(label:not(.tag),.label):has(:is(input,select,textarea)) span:has(>:is(input,select))~span:not(:is(.suffix,.prefix,.invalid-feedback)),:is(label:not(.tag),.label):has(:is(input,select,textarea)) .hint-text{all:initial;font-family:var(--font-body);color:var(--colour-body);margin-top:.5rem;display:block;line-height:1.2}:is(label:not(.tag),.label):has(:is(input,select,textarea)) .invalid-feedback{font-size:1rem;font-weight:normal;line-height:1.2}:is(label:not(.tag),.label):has(:is(input,select,textarea)) span:has(:is(input,select)){display:flex;width:100%}:is(label:not(.tag),.label):has(:is(input,select,textarea)) :is(.suffix,.prefix):not(.mt-0){margin:.5rem 0 0 0 !important}.was-validated label:has(:is(input:not([type=radio]):not([type=checkbox]),select)),.was-validated fieldset:has(label input:is([type=radio],[type=checkbox]):invalid){margin-bottom:1.5rem}.was-validated label:has(:is(input:not([type=radio]):not([type=checkbox]),select)):has(:is(:invalid,.is-invalid)):after,.was-validated fieldset:has(label input:is([type=radio],[type=checkbox]):invalid):has(:is(:invalid,.is-invalid)):after{content:"This field is required";color:var(--colour-danger);margin-top:.5rem;background-image:var(--icon-error);background-repeat:no-repeat;background-position:left top 1px;background-size:var(--input-fs, 1rem) var(--input-fs, 1rem);padding-left:calc(var(--input-fs, 1rem) + .5rem);display:block;width:100%;font-size:1rem;line-height:1.2}.was-validated label:has(:is(input:not([type=radio]):not([type=checkbox]),select))[data-error]:has(:is(:invalid,.is-invalid)):after,.was-validated fieldset:has(label input:is([type=radio],[type=checkbox]):invalid)[data-error]:has(:is(:invalid,.is-invalid)):after{content:attr(data-error) !important}.was-validated label:has(:is(input:not([type=radio]):not([type=checkbox]),select)).error-nowrap:after,.was-validated fieldset:has(label input:is([type=radio],[type=checkbox]):invalid).error-nowrap:after{white-space:nowrap}input[type=range]{--track-size: 0.5rem;--track-colour: var(--colour-light);--thumb-colour: var(--colour-info);--thumb-size: 1.5rem;width:100%;background:rgba(0,0,0,0);cursor:pointer;margin-top:2rem;margin-bottom:2rem;height:2rem;border-radius:50%;accent-color:var(--thumb-colour);-webkit-appearance:none;appearance:none}*:has(>input[type=range]){position:relative;padding-bottom:6rem;max-width:var(--input-max-width)}label input[type=range]{position:absolute;top:1.5rem;left:0}input[type=range]::-webkit-slider-runnable-track{background:var(--track-colour);height:var(--track-size);border-radius:.5rem}input[type=range]::-moz-range-track{background:var(--track-colour);height:var(--track-size);border-radius:.5rem}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;margin-top:-0.5rem;background-color:var(--thumb-colour);height:var(--thumb-size);width:var(--thumb-size);border-radius:50%;position:relative;z-index:99;pointer-events:all}input[type=range]::-moz-range-thumb{border:none;background-color:var(--thumb-colour);height:var(--thumb-size);width:var(--thumb-size);border-radius:50%;position:relative;z-index:99;pointer-events:all}input[type=range]:focus{outline:none}input[type=range]:hover::-webkit-slider-thumb,input[type=range]:focus::-webkit-slider-thumb{outline:.5rem solid rgba(30,190,231,.2)}input[type=range]:active::-webkit-slider-thumb{outline:.5rem solid rgba(30,190,231,.4)}input[type=range]:hover::-moz-range-thumb,input[type=range]:focus::-moz-range-thumb{outline:.5rem solid rgba(30,190,231,.2)}input[type=range]:focus::-moz-range-thumb{outline:.5rem solid rgba(30,190,231,.4)}iam-slider input::-webkit-outer-spin-button,iam-slider input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}:is(input[type=date],input[type=datetime-local],input[type=year],input[type=month],input[type=week],input[type=time]){position:relative;margin-right:-3rem;padding-right:3rem !important;background-position:right 4rem center;border-radius:.5rem !important}::-webkit-calendar-picker-indicator{background:rgba(0,0,0,0);bottom:0;color:rgba(0,0,0,0);cursor:pointer;height:auto;left:0;position:absolute;right:0;top:0;width:auto;order:3;z-index:98}::-webkit-datetime-edit{position:relative;z-index:99;max-width:fit-content}}:is(iam-advanced-select,iam-search,.postcode-lookup){position:relative;display:block}:is(iam-advanced-select,iam-search,.postcode-lookup) label{position:relative}:is(iam-advanced-select,iam-search,.postcode-lookup) input{padding-right:3rem}:is(iam-advanced-select,iam-search,.postcode-lookup) .empty{position:absolute;bottom:.5rem;right:3.5rem;margin:0;aspect-ratio:1/1;width:2rem;height:2rem;text-align:center;line-height:1}:is(iam-advanced-select,iam-search,.postcode-lookup) .empty:not(:hover,:focus){border-color:rgba(0,0,0,0);background-color:rgba(0,0,0,0)}:is(iam-advanced-select,iam-search,.postcode-lookup) .empty i{font-size:1.2rem}:is(iam-advanced-select,iam-search,.postcode-lookup):has([name=postcode][disabled]) .empty{display:none}:is(iam-advanced-select,iam-search,.postcode-lookup):has(input:is([name$=Alt]):not([data-value],[data-placeholder])) .empty{display:none}:is(iam-advanced-select,iam-search,.postcode-lookup) label:after,:is(iam-advanced-select,iam-search,.postcode-lookup) .hint-text{position:absolute;top:100%}:is(iam-advanced-select,iam-search,.postcode-lookup) label[for=use]:after{top:var(--checkbox-inner-top, 0.5rem)}.was-validated :is(iam-advanced-select,iam-search,postcode-lookup) label:has(:is(input:not([type=radio]):not([type=checkbox]),select)),:is(iam-advanced-select,iam-search,postcode-lookup).was-validated label:has(:is(input:not([type=radio]):not([type=checkbox]),select)){margin-bottom:2.5rem}.was-validated :is(iam-advanced-select,iam-search,postcode-lookup) label:has(:is(input:not([type=radio]):not([type=checkbox]),select)) input,:is(iam-advanced-select,iam-search,postcode-lookup).was-validated label:has(:is(input:not([type=radio]):not([type=checkbox]),select)) input{background:none !important}.was-validated :is(iam-advanced-select,iam-search,postcode-lookup) label:has(:is(input:not([type=radio]):not([type=checkbox]),select)):has(:invalid,.is-invalid) .hint-text,:is(iam-advanced-select,iam-search,postcode-lookup).was-validated label:has(:is(input:not([type=radio]):not([type=checkbox]),select)):has(:invalid,.is-invalid) .hint-text{display:none}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup) datalist:empty{display:none !important}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup) datalist{z-index:100;top:100%;position:absolute;background-color:var(--colour-canvas);border-top:none}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup) datalist:not(:empty):has(option:not(.hide)){padding:.5rem}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup) datalist{max-height:25rem;overflow-y:auto;width:100%;max-width:var(--input-max-width, 50rem);border:none !important;border-radius:.5rem;box-shadow:0px 2px 9px rgba(0,0,0,.1);display:none}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup) datalist option{background-color:var(--colour-canvas);padding:.5rem;cursor:pointer;background:unset !important;border:unset !important;color:var(--colour-primary) !important;font-weight:inherit !important;font-family:inherit !important;font-size:1rem !important;line-height:1.5rem !important;margin:var(--menu-item-margin, 0 0 0.25rem 0) !important;padding-block:var(--menu-item-padding, 0.25rem) !important;width:100% !important;max-width:100% !important;text-align:var(--menu-item-text-align, left) !important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;text-overflow:ellipsis;overflow:clip}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup) datalist option:is(:hover,:focus){background:var(--colour-light) !important;color:#595959 !important;border-radius:.25rem !important}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup) datalist option:active{background:#e0e0e0 !important;border-radius:.25rem !important}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup) datalist option.active{border-left:4px solid var(--colour-info) !important;border-radius:.25rem !important;background:hsl(from var(--colour-info) h s l/10%) !important}.dark-theme :is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup) datalist{color-scheme:dark}@media(prefers-color-scheme: dark){html:not(.light-theme) :is(.bg-primary,.bg-danger,.bg-dark):not(iam-header){--colour-heading: var(--colour-primary-theme);--colour-body: var(--colour-primary-theme);color:var(--colour-primary-theme)}html:not(.light-theme) :is(.bg-primary,.bg-danger,.bg-dark):not(iam-header)>*{color-scheme:light}html:not(.light-theme) .bg-light{color-scheme:light}}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup>div):is(:focus-within,:has(*:active),:active) datalist{display:block}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup>div):is(:focus-within,:has(*:active),:active) datalist:empty{display:block !important}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup>div) .datalist__wrapper{top:100%;position:absolute;border-radius:.5rem;box-shadow:0px 2px 9px rgba(0,0,0,.1);width:100% !important;z-index:100;display:none;max-height:25rem;overflow-y:auto;max-width:var(--input-max-width) !important}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup>div) .datalist__wrapper>datalist{border:none !important;box-shadow:none !important;position:relative;display:block !important;border-radius:0 !important;max-height:100% !important}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup>div) .datalist__wrapper:focus{outline:none !important}iam-address-lookup [slot=preloadedList]{border:none !important;box-shadow:none !important;position:relative;display:block !important;border-radius:0 !important;max-height:100% !important}iam-address-lookup [slot=preloadedList].noresults{display:block !important}iam-address-lookup [slot=preloadedList].noresults:before{content:"No addresses found";background-color:#fff;padding:1rem .5rem;color:var(--colour-primary) !important;font-weight:inherit !important;font-family:inherit !important;font-size:1rem !important;line-height:1.1875rem !important;padding-block:var(--menu-item-padding, 1rem) !important;display:block}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup>div):is(:focus-within,:has(*:active)) .datalist__wrapper:has(datalist:not(:empty)),:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup>div):is(:focus-within,:has(*:active)) .datalist__wrapper:has(datalist.loading),:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup>div):is(:focus-within,:has(*:active)) .datalist__wrapper:has(datalist.noresults),:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup>div) .datalist__wrapper:hover{display:block}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup>div) .datalist__wrapper:has(datalist.noresults) datalist{display:block}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup>div) .datalist__wrapper:has(datalist.noresults) datalist:before{content:"No addresses found";background-color:#fff;padding:.5rem;color:var(--colour-primary) !important;font-weight:inherit !important;font-family:inherit !important;font-size:1rem !important;line-height:1.1875rem !important;padding-block:var(--menu-item-padding, 0.5rem) !important;display:block}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup>div):is(:focus-within,:has(option:active)) .datalist__wrapper:has(datalist.loading) datalist{height:5rem}:is(iam-advanced-select,iam-search,iam-address-lookup,.postcode-lookup>div):is(:focus-within,:has(option:active)) .datalist__wrapper:has(datalist.loading) datalist:before{content:"\uF021";font-family:"Font Awesome 7 Pro";font-size:1.75rem;font-weight:300;display:block;position:absolute;top:calc(50% - 1rem);left:calc(50% - 1rem);animation-name:spin;animation-duration:4000ms;animation-iteration-count:infinite;animation-timing-function:linear}@-ms-keyframes spin{from{-ms-transform:rotate(0deg)}to{-ms-transform:rotate(360deg)}}@-moz-keyframes spin{from{-moz-transform:rotate(0deg)}to{-moz-transform:rotate(360deg)}}@-webkit-keyframes spin{from{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(360deg)}}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}:is(iam-advanced-select,iam-search,.postcode-lookup) [name=beforeList]{display:none}:is(iam-advanced-select,iam-search,.postcode-lookup) [name=beforeList]:has(+.show-welsh-banner){display:block}:is(iam-advanced-select,iam-search,.postcode-lookup) .datalist__wrapper.show-welsh-banner [name=beforeList]{display:block}@layer elements{.admin-panel{--padding-x: 1.5rem;--padding-top: 1rem;--padding-bottom: 1rem;--mh-modifier: 4.5rem;--mh-padding-inline: var(--padding-x);display:block;padding:var(--padding-top) var(--padding-x) var(--padding-bottom) var(--padding-x);box-shadow:0px 6px 12px rgba(0, 0, 0, 0.11);background-color:var(--colour-canvas-2);border-radius:.5rem;margin-bottom:1.5rem;outline:var(--contrast-outline-width, 0px) solid var(--colour-primary);overflow:hidden;&:has(:is([class*=cols-],[class*=col-start-],[class*=col-end-],[class*=col-span-])){display:grid;>*{grid-column:var(--col-start, col-1-start)/var(--col-end, col-12-end)}}&:empty{display:none}>:is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6,.admin-panel__heading):not(.lead):first-child{--gradient-direction: -90deg !important;background-color:var(--colour-success);&:not([class*=bg-]){color:var(--colour-primary-theme);background-image:linear-gradient(var(--gradient-direction), var(--colour-info) 0, transparent 100%)}margin:calc(var(--padding-top)*-1) calc(var(--padding-x)*-1) var(--padding-top) calc(var(--padding-x)*-1);display:block;border-top-left-radius:.5rem;border-top-right-radius:.5rem}>:is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6):not(.lead):first-child,.admin-panel__heading>:is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6):not(.lead){font-size:1.125rem;line-height:1.5rem;font-weight:bold;padding:1rem 1.5rem;max-width:unset}>:is(.admin-panel__heading):first-child{display:flex !important;flex-wrap:wrap;gap:1rem;align-items:center;padding:1rem 1.5rem;>:is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6){padding:0;margin-inline-end:auto}.btn{--btn-margin: 0;margin-bottom:0}.dialog__wrapper+.btn{--btn-margin: 0.25rem;margin-inline-end:0}}:is(iam-table,iam-table-basic,iam-table-no-submit,iam-table-submit,iam-table-ajax,.iam-table){margin:0 0 2rem 0;padding:0;box-shadow:none;background:none}&>*:not([class*=mb-]):not(.btn__group):last-child{margin-bottom:0 !important}&>*:is(p):last-child{padding-bottom:0 !important}& p{max-width:100%;padding-bottom:1.5rem}&>:is(.mh-sm,.mh-md,.mh-lg,.mh-sm-sm,.mh-sm-md,.mh-sm-lg,.mh-md-sm,.mh-md-md,.mh-md-lg,.mh-fluid){overflow:auto;&:before{top:100% !important}}&>:is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6):not(.lead):first-child+:is(.mh-sm,.mh-md,.mh-lg,.mh-sm-sm,.mh-sm-md,.mh-sm-lg,.mh-md-sm,.mh-md-md,.mh-md-lg,.mh-fluid){padding-top:var(--padding-top);margin-top:calc(var(--padding-top)*-1)}&>:is(.mh-sm,.mh-md,.mh-lg,.mh-sm-sm,.mh-sm-md,.mh-sm-lg,.mh-md-sm,.mh-md-md,.mh-md-lg,.mh-fluid):last-child{padding-bottom:var(--padding-bottom);margin-bottom:calc(var(--padding-bottom)*-1) !important;&>*:not([class*=mb-]):last-child{margin-bottom:0 !important}&>*:is(p):last-child{padding-bottom:0 !important}}&>iam-pagination{margin-top:-1rem}&:has(.mh-fluid){max-height:100%;display:flex;flex-direction:column}&.grid{display:grid !important;grid-template-columns:subgrid !important;>*:not(:first-child){grid-column:var(--col-start, col-1-start)/var(--col-end, col-12-end)}}}@container style(--theme: dark){.admin-panel{background-color:var(--colour-canvas-2);color:var(--colour-body);.bg-white{background-color:transparent !important;color:var(--white) !important}}}@media(prefers-color-scheme: light){>:is(.admin-panel__heading):first-child{.btn-action,.dialog__wrapper{--colour-canvas-2: #ffffff;--colour-heading: var(--colour-primary);--colour-btn-action-hover-bg: var(--colour-light);--colour-btn-hover: var(--colour-primary);--colour-border: #d8d8d8}}}[class*=col].admin-panel:first-child:last-child:not(:has(.mh-sm,.mh-md,.mh-lg,.mh-sm-sm,.mh-sm-md,.mh-sm-lg,.mh-md-sm,.mh-md-md,.mh-md-lg,.mh-fluid)){min-height:calc(100% - 1.5rem)}.admin-panel:has(iam-actionbar){&>:is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6):not(.lead):first-child{margin-bottom:0}iam-actionbar{background:var(--colour-canvas);margin-inline:calc(var(--padding-x)*-1);margin-bottom:var(--padding-top);&:first-child{margin-top:calc(var(--padding-top)*-1)}&:not(:first-child){border-radius:0}}&>:is(iam-table,iam-table-basic,iam-table-no-submit,iam-table-submit,iam-table-ajax){overflow:visible;&:first-child{margin-top:calc(var(--padding-top)*-1)}iam-actionbar{margin-top:0 !important;border-radius:0;box-shadow:none}}}details.admin-panel{summary:after{content:"\uF077";font-weight:bold;margin-left:0;height:2rem;width:2rem;text-align:center;line-height:2rem;margin-right:-0.5rem}summary:not(:has(.btn:hover)):hover:after{background:var(--colour-light);border-radius:50%}summary:not(:has(.btn:hover)):active:after{background:var(--colour-light);filter:brightness(85%);border-radius:50%}}details.admin-panel:not([open]){padding-bottom:0;summary:first-child{margin-bottom:0}summary:after{content:"\uF078"}}.admin-panel__footer:last-child{background-color:var(--wider-colour);padding-top:var(--padding-top);margin-inline:calc(var(--padding-x)*-1);padding-inline:var(--padding-x);padding-bottom:0;&>*:last-child{margin-bottom:0;padding-bottom:var(--padding-bottom);align-self:center}}.admin-panel__footer:not([class*=mb-]):last-child{margin-bottom:calc(var(--padding-bottom)*-1) !important}}@layer elements{:is(h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6,.display-1,.display-2,.display-3,.display-4){margin-top:0;margin-bottom:0;font-family:var(--font-heading);font-style:normal;font-weight:bold;color:var(--colour-heading);clear:both;display:block;& [class*=fa-]{margin-right:.5rem}}:is(.h1,h1){font-size:var(--h1-fs);line-height:var(--h1-lh);padding-bottom:var(--h1-pb);font-weight:900}:is(h2,.h2){font-size:var(--h2-fs);line-height:var(--h2-lh);padding-bottom:var(--h2-pb);font-weight:900}:is(h3,.h3){font-size:var(--h3-fs);line-height:var(--h3-lh);padding-bottom:var(--h3-pb);max-width:var(--content-max-width)}:is(.h4,h4,.h5,h5,.h6,h6){font-size:var(--h4-fs);line-height:var(--h4-lh);padding-bottom:var(--h4-pb);max-width:var(--content-max-width)}p{margin-top:0;font-size:var(--body-fs);line-height:1.5rem;padding-bottom:3rem;max-width:var(--content-max-width);margin-bottom:0}p:has(+p){padding-bottom:1.5rem}:is(.lead,.strapline){font-size:1.125rem;line-height:1.75rem;padding-bottom:3rem;max-width:var(--content-max-width);font-weight:700}small,.small{font-size:.875rem;line-height:1.5rem;padding-bottom:2rem;max-width:var(--content-max-width);font-weight:normal}.x-small{font-size:.625rem;line-height:1.5rem;padding-bottom:1rem;max-width:var(--content-max-width);font-weight:normal}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}abbr[title]{text-decoration:underline dotted;cursor:help;text-decoration-skip-ink:none}strong{font-weight:bolder;font-family:var(--font-heading);color:var(--colour-heading)}address{margin-bottom:1rem;font-style:normal;line-height:inherit}blockquote{margin:0;quotes:"\u201C" "\u201D" "\u2018" "\u2019";padding-bottom:3rem;overflow:hidden;& p{font-size:1.5rem;line-height:2rem;padding-bottom:0}& p:first-child:before{content:open-quote}& p:last-of-type:after{content:close-quote}& cite{font-size:1.125rem;line-height:2rem;padding-bottom:0;font-weight:bold;font-style:normal}}mark{padding:.1875em;background-color:yellow}.stat{font-size:4rem;line-height:4.5rem;font-weight:bold;color:var(--colour-heading);display:block;text-decoration:underline;text-underline-offset:.75rem;text-decoration-color:var(--colour-secondary);text-decoration-thickness:.25rem;margin-bottom:4rem}}@layer elements{*,*::before,*::after{box-sizing:border-box}button{border-radius:0;text-transform:none;margin:0;font-family:inherit;font-size:inherit;line-height:inherit}[role=button]{cursor:pointer}button:focus:not(:focus-visible){outline:0}:is(button,[type=button],[type=reset],[type=submit]){-webkit-appearance:button}:is(button,[type=button],[type=reset],[type=submit]):not(:disabled){cursor:pointer}.btn{--btn-margin: 1rem;--btn-padding-block: 0.75rem;--btn-padding-inline: 2.5rem;--btn-border-width: 2px;--btn-font-size: 1.125rem;--btn-line-height: 1.25rem;display:inline-block;font-weight:bold;text-align:left;text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;color:var(--colour-btn);font-size:var(--btn-font-size);line-height:var(--btn-line-height);padding:var(--btn-padding-block) var(--btn-padding-inline);border-radius:1.5rem;margin-bottom:var(--btn-margin);background:none;transition:border .5s,background .5s,color .5s;height:auto;max-width:fit-content;appearance:none;white-space:nowrap}@media screen and (min-width: 36em){.btn{--btn-margin: 1.5rem}}.btn:not(.btn-secondary)[class*=colour-]{--colour-btn-bg: var(--colour);--colour-btn-border: var(--colour)}.btn:is(.colour-primary,.colour-dark,.colour-danger,.colour-black){--colour-btn: #fcfcfc}.btn:not(.border-0){background:var(--colour-btn-bg);border:var(--btn-border-width) solid var(--colour-btn-border)}.btn:not(:last-child){margin-right:var(--btn-margin)}a:is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active) .btn,.btn:is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active){outline:0;text-decoration:none;background:var(--colour-btn-bg-hover);color:var(--colour-btn-hover);border-radius:1.5rem}a:is(:active,.active):not([disabled]) .btn,.btn:is(:active,.active):not([disabled]){filter:brightness(85%);transition:background .1s,color .1s;color:var(--colour-btn);border-radius:1.5rem}a:disabled .btn,.btn:disabled,[disabled] .btn,.btn[disabled]{opacity:.4;cursor:not-allowed}.btn.colour-success{--colour-btn-bg-hover: var(--colour);--colour-btn-border-hover: var(--colour);--colour-btn-hover: var(--colour-primary-theme);position:relative;padding-left:3.5rem;padding-right:3.5rem}a:is(:hover,:focus,.hover):not([disabled],:active,.active) .btn.colour-success,.btn.colour-success:is(:hover,:focus,.hover):not([disabled],:active,.active){padding-left:2.5rem;padding-right:2.5rem}a:is(:hover,:focus,.hover):not([disabled],:active,.active) .btn.colour-success:before,.btn.colour-success:is(:hover,:focus,.hover):not([disabled],:active,.active):before{content:"\uF00C";font-family:"Font Awesome 7 Pro";margin-right:1rem;font-style:inherit;width:1rem;display:inline-block;height:var(--btn-line-height);vertical-align:bottom}.btn.btn-sm{--btn-padding-block: 0.5rem;--btn-padding-inline: 2rem;--btn-margin: 0.5rem;--btn-font-size: 1rem}.btn[class*=fa-]:before{content:var(--fa);font-family:"Font Awesome 7 Pro";line-height:1em}.btn.btn[class*=fa-after]{padding-right:4rem}.btn.btn[class*=fa-after]:before{margin-right:0;margin-right:.375rem;position:absolute;right:1.5rem;top:50%;transform:translate(0, -50%)}.btn:not(.btn-compact):before{margin-right:1rem}.btn i[class*=fa-]{--fa-width: 1em;font-family:"Font Awesome 7 Pro";margin-right:1rem;line-height:1em;font-style:inherit}.btn i[class*=fa-]:not(:first-child){margin-left:1rem;margin-right:0}.btn.btn--prompt:after{content:"";height:var(--btn-line-height);width:1rem;display:inline-block;background:currentColor;mask-image:var(--icon-arrow);mask-size:100%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:100%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;vertical-align:bottom;margin-left:1rem}a:is(:hover,:focus,.hover):not([disabled],:active,.active) .btn.btn--prompt:after,.btn.btn--prompt:is(:hover,:focus,.hover):not([disabled],:active,.active):after{margin-left:1.5rem;margin-right:-0.5rem}.btn-filter:after{content:"\uF1DE";display:inline-block;margin-left:1em;margin-bottom:-0.15em;height:1em;width:1em;z-index:var(--index-focus);color:currentColor;font-weight:300;font-family:"Font Awesome 7 Pro"}}@layer elements{.btn-secondary{color:var(--colour-btn-secondary)}.btn-secondary:not(.border-0){background:var(--colour-btn-secondary-bg);border:2px solid var(--colour-btn-secondary-border)}a:is(:hover,:focus,.hover,:active,.active):not([disabled]) .btn-secondary,.btn-secondary:is(:hover,:focus,.hover,:focus-within,:active,.active):not([disabled]){background:var(--colour-btn-secondary-bg-hover);color:var(--colour-btn-secondary-hover)}}@layer elements{.btn.btn-tertiary{background-color:rgba(0,0,0,0);border:none;color:var(--colour-link);margin:0 var(--btn-margin) var(--btn-margin) 0;padding:0;font-size:1.125rem;font-weight:normal;line-height:1.5rem;min-height:1.5rem;position:relative}.btn.btn-tertiary:after{position:absolute;content:"";top:100%;left:50%;height:2px;width:100%;transform:translate(-50%, 0);background:var(--colour-underline);transition:width .5s}.btn.btn-tertiary.text-decoration-none:after{width:0%}.btn.btn-tertiary [class*=fa-]{margin-left:0;margin-right:.5rem}.btn.btn-tertiary [class*=fa-]:not(:first-child){margin-left:.5rem;margin-right:0}.btn.btn-tertiary:is(:hover,:focus,.hover,:focus-within):not([disabled],:disabled,:active,.active):after{width:60% !important}.btn.btn-tertiary:is(:active,.active):not([disabled],:disabled){color:var(--colour-active)}}@layer elements{.btn-action{--btn-border-width: 1px;--btn-padding-block: 0.3125rem /* 5px */;--btn-padding-inline: 0.3125rem /* 5px */;--btn-margin: 0.5rem;border-radius:.25rem !important;font-weight:400 !important;font-size:1rem;line-height:1.25rem;&:not(.btn-primary){color:var(--colour-heading)}&:not(.btn-primary):not(.border-0){background-color:var(--colour-canvas-2);border:var(--btn-border-width) solid var(--colour-muted)}&.btn[class*=fa-]:before{content:var(--fa);margin-right:.375rem}a:not(.btn-primary):is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active) &,&:not(.btn-primary):is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active){background:var(--colour-btn-action-hover-bg)}.btn-primary:is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active) &,&.btn-primary:is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active){filter:brightness(90%);background:var(--colour-btn-bg);border:var(--btn-border-width) solid var(--colour-btn-border);color:var(--colour-btn)}a:is(:active,.active):not([disabled]):not(.btn-primary) &,&:is(:active,.active):not([disabled]):not(.btn-primary){filter:brightness(85%);transition:all .1s;color:var(--colour-heading)}}.btn-action:not(.btn-compact).fa-compact-only:before{display:none !important}}@layer elements{.btn-compact{--compact-size: 3rem;padding:0 !important;margin-bottom:.5rem;text-align:center;width:var(--compact-size);min-width:var(--compact-size);max-width:var(--compact-size);height:var(--compact-size) !important;min-height:var(--compact-size) !important;max-height:var(--compact-size) !important;align-content:center;line-height:1 !important;text-indent:-500px;overflow:hidden;position:relative;font-size:1rem;&:not(:last-child){margin-right:.5rem}&:before{content:var(--fa);position:absolute;display:block;top:0;left:0;width:100%;height:100%;text-indent:0;line-height:calc(var(--compact-size) - .25rem);font-weight:900}&[class*=fa-]:before{line-height:calc(var(--compact-size) - .25rem)}&.btn-sm{--compact-size: 2.5rem;font-size:1rem;padding:0 !important}&.btn-action{--compact-size: 2rem;font-size:1rem;&:before{font-size:1em;font-weight:400}}&.btn-secondary{--colour-btn-bg: transparent;--colour-btn-border: transparent;border-color:transparent;&:not([class*=colour-]){--colour: var(--colour-light)}}&.btn-secondary:is(:hover,:focus,.hover,:active,.active,[aria-expanded],:focus-within):not([disabled]):not(.btn-collapse){background-color:var(--colour);color:var(--colour-primary-theme);border-color:var(--colour);&:is(.colour-primary,.colour-dark,.colour-danger,.colour-black){color:var(--colour-inverted)}}&[data-number]{position:relative}&[data-number]:after{content:attr(data-number);position:absolute;top:.5em;z-index:99;background:var(--colour-danger);height:1.5em;width:1.5em;border-radius:50%;text-indent:0;left:50%;font-size:.5em;line-height:1.5em;text-align:center;color:white;letter-spacing:-0.1em;font-family:arial,sans-serif}}@container style(--theme: dark){&[class*=fa-]:before{color:white}}.btn-compact{&:is(.fa-left,.fa-chevron-left,.fa-right,.fa-chevron-right,.fa-up,.fa-chevron-up,.fa-down,.fa-chevron-down,.fa-plus,.fa-bars,.fa-edit,.fa-envelope,.fa-calendar){--iso-display: block;--iso-font-size: 1.5rem;--iso-border-radius: 50%;--iso-text-indent: -500px}}@container style(--font-body){.btn-compact{font-size:var(--iso-font-size, 0.6rem) !important;text-indent:var(--iso-text-indent, 0px);white-space:initial;&:not(.btn-action){border-radius:var(--iso-border-radius, 0.25rem) !important}&:before{display:var(--iso-display, none);font-family:monospace !important;content:var(--iso) !important}}}@container style(--fa-font-regular){.btn-compact{text-indent:-500px;font-size:1rem !important;&:not(.btn-action){border-radius:50% !important}&:before{font-family:"Font Awesome 7 Pro" !important;content:var(--fa) !important;display:block}}}}@layer elements{.btn[popovertarget]{position:relative;anchor-name:--button2}.btn[popovertarget]>.fa-chevron-down{display:none}.btn[popovertarget]:not(:has(i)):after{content:"";display:inline-block;margin-right:.25em;margin-left:1em;height:.8em;width:.8em;z-index:var(--index-focus);background:currentColor;mask-image:var(--icon-arrow);mask-size:100%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:100%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;transform:rotate(90deg)}.btn[popovertarget][aria-pressed]:after{transform:rotate(270deg)}.btn:has(select){position:relative;padding:0;max-width:fit-content;min-width:fit-content;width:fit-content}.btn:has(select) select{all:unset !important;padding:var(--btn-padding-block) var(--btn-padding-inline) !important;padding-right:calc(var(--btn-padding-inline) + 2rem) !important;border-radius:1.5rem !important;appearance:none !important;background:none !important;border:none !important;color:currentColor !important;display:block;outline:none;font-weight:inherit !important;font-size:var(--btn-font-size) !important;line-height:var(--btn-line-height) !important;field-sizing:content !important;appearance:base-select !important}.btn:has(select) select option{font-size:1rem;text-align:left;color:var(--colour-primary);padding-inline:var(--menu-item-padding, 0.5rem);padding-block:var(--menu-item-padding, 0.5rem) !important;border-radius:.25rem !important}.btn:has(select) select option:not(:last-child){margin:var(--menu-item-margin, 0 0 0.25rem 0) !important}.btn:has(select) select option:hover{background:var(--colour-light) !important}.btn:has(select) select option:after{content:attr(data-email)}.btn:has(select) select::picker-icon{display:none}.btn:has(select) select::picker(select){appearance:base-select;background:var(--menu-bg, canvas);margin-block:var(--menu-margin, 0.25rem);padding:var(--menu-padding, 0.5rem) !important;border:none !important;border-radius:.5rem;box-shadow:0px 2px 9px rgba(0,0,0,.1);font-size:1rem}.btn:has(select) hr{height:1px !important;background-color:var(--menu-hr-border-color, var(--border-color, grey)) !important;width:100%;margin:var(--menu-item-margin, 0 0 0.25rem 0) !important;padding:0 !important}.btn:has(select) select option::checkmark{display:none}.btn:has(select) select selectedcontent span{display:none}.btn:has(select):after{position:absolute;top:.625rem;right:1.5rem;content:"";height:1.5rem;width:1rem;display:inline-block;background:currentColor;mask-image:var(--icon-arrow);mask-size:100%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:100%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;vertical-align:bottom;margin-left:1rem;transform:rotate(90deg);pointer-events:none}.btn-action:has(select){padding-block:0;padding-right:2rem;font-size:1em}.btn-action:has(select) select{margin:0rem 0rem !important;padding-right:2rem !important;margin-right:-2rem !important;font-size:1rem !important}.btn-action:has(select):after{top:.2rem;right:.5rem}}@layer elements{.btn__group{display:flex;flex-direction:column;row-gap:var(--gap);reading-flow:source-order;margin-bottom:1.5rem;.btn-compact{max-width:fit-content;margin-inline:auto}}:where(.btn__group,iam-modal){reading-flow:source-order;.btn{margin-inline-end:0;width:100%;max-width:100%;text-align:center;white-space:normal;margin:0;&:not(:last-child){margin-right:0}}.btn-tertiary{max-width:fit-content;margin-block:0 !important;margin-inline:auto !important;order:3;reading-order:3}.btn-secondary{order:2;reading-order:2}.btn-primary{order:1;reading-order:1;margin:0;&:not(:last-child){margin:0}}}:is(iam-form,form) .btn__group{padding-top:1rem}@container (min-width: 36em){.btn__group{flex-direction:row;row-gap:0;gap:var(--gap);flex-wrap:wrap;.btn-tertiary{max-width:fit-content;margin-inline:0 !important;margin-block:auto;order:1}.btn-secondary{order:2}.btn-primary{order:3}.btn-compact{margin-inline:0;margin-block:auto}}:where(iam-modal,.btn__group){.btn{max-width:fit-content;white-space:nowrap;margin-block:auto}}.btn__group{.btn-tertiary{reading-order:1}.btn-secondary{reading-order:2}.btn-primary{reading-order:3}}iam-modal{.btn-tertiary{reading-order:3;order:1}.btn-secondary{order:2;reading-order:2}.btn-primary{order:3;reading-order:1}}.btn__group.text-end{justify-content:flex-end}:is(iam-form,form) .btn__group{justify-content:flex-end;padding-top:3rem}iam-modal .btn__group:last-child .btn,dialog .btn__group:last-child .btn{margin-bottom:0}}}@layer utilities{.m-0{margin:var(--spacer-0) !important}.mx-0{margin-left:var(--spacer-0) !important;margin-right:var(--spacer-0) !important}.mx-minus-0{margin-left:-var(--spacer-0) !important;margin-right:-var(--spacer-0) !important}.my-minus-0{margin-top:-var(--spacer-0) !important;margin-bottom:-var(--spacer-0) !important}.my-0{margin-top:var(--spacer-0) !important;margin-bottom:var(--spacer-0) !important}.mt-0{margin-top:var(--spacer-0) !important}.me-0{margin-right:var(--spacer-0) !important}.mb-0{margin-bottom:var(--spacer-0) !important}.ms-0{margin-left:var(--spacer-0) !important}.m-1{margin:var(--spacer-1) !important}.mx-1{margin-left:var(--spacer-1) !important;margin-right:var(--spacer-1) !important}.mx-minus-1{margin-left:-var(--spacer-1) !important;margin-right:-var(--spacer-1) !important}.my-minus-1{margin-top:-var(--spacer-1) !important;margin-bottom:-var(--spacer-1) !important}.my-1{margin-top:var(--spacer-1) !important;margin-bottom:var(--spacer-1) !important}.mt-1{margin-top:var(--spacer-1) !important}.me-1{margin-right:var(--spacer-1) !important}.mb-1{margin-bottom:var(--spacer-1) !important}.ms-1{margin-left:var(--spacer-1) !important}.m-2{margin:var(--spacer-2) !important}.mx-2{margin-left:var(--spacer-2) !important;margin-right:var(--spacer-2) !important}.mx-minus-2{margin-left:-var(--spacer-2) !important;margin-right:-var(--spacer-2) !important}.my-minus-2{margin-top:-var(--spacer-2) !important;margin-bottom:-var(--spacer-2) !important}.my-2{margin-top:var(--spacer-2) !important;margin-bottom:var(--spacer-2) !important}.mt-2{margin-top:var(--spacer-2) !important}.me-2{margin-right:var(--spacer-2) !important}.mb-2{margin-bottom:var(--spacer-2) !important}.ms-2{margin-left:var(--spacer-2) !important}.m-3{margin:var(--spacer-3) !important}.mx-3{margin-left:var(--spacer-3) !important;margin-right:var(--spacer-3) !important}.mx-minus-3{margin-left:-var(--spacer-3) !important;margin-right:-var(--spacer-3) !important}.my-minus-3{margin-top:-var(--spacer-3) !important;margin-bottom:-var(--spacer-3) !important}.my-3{margin-top:var(--spacer-3) !important;margin-bottom:var(--spacer-3) !important}.mt-3{margin-top:var(--spacer-3) !important}.me-3{margin-right:var(--spacer-3) !important}.mb-3{margin-bottom:var(--spacer-3) !important}.ms-3{margin-left:var(--spacer-3) !important}.m-4{margin:var(--spacer-4) !important}.mx-4{margin-left:var(--spacer-4) !important;margin-right:var(--spacer-4) !important}.mx-minus-4{margin-left:-var(--spacer-4) !important;margin-right:-var(--spacer-4) !important}.my-minus-4{margin-top:-var(--spacer-4) !important;margin-bottom:-var(--spacer-4) !important}.my-4{margin-top:var(--spacer-4) !important;margin-bottom:var(--spacer-4) !important}.mt-4{margin-top:var(--spacer-4) !important}.me-4{margin-right:var(--spacer-4) !important}.mb-4{margin-bottom:var(--spacer-4) !important}.ms-4{margin-left:var(--spacer-4) !important}.m-5{margin:var(--spacer-5) !important}.mx-5{margin-left:var(--spacer-5) !important;margin-right:var(--spacer-5) !important}.mx-minus-5{margin-left:-var(--spacer-5) !important;margin-right:-var(--spacer-5) !important}.my-minus-5{margin-top:-var(--spacer-5) !important;margin-bottom:-var(--spacer-5) !important}.my-5{margin-top:var(--spacer-5) !important;margin-bottom:var(--spacer-5) !important}.mt-5{margin-top:var(--spacer-5) !important}.me-5{margin-right:var(--spacer-5) !important}.mb-5{margin-bottom:var(--spacer-5) !important}.ms-5{margin-left:var(--spacer-5) !important}.m-auto{margin:auto !important}.mx-auto{margin-right:auto !important;margin-left:auto !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-auto{margin-top:auto !important}.me-auto{margin-right:auto !important}.mb-auto{margin-bottom:auto !important}.ms-auto{margin-left:auto !important}}@layer utilities{.p-0{padding:var(--spacer-0) !important}.px-0{padding-left:var(--spacer-0) !important;padding-right:var(--spacer-0) !important}.py-0{padding-top:var(--spacer-0) !important;padding-bottom:var(--spacer-0) !important}.pt-0{padding-top:var(--spacer-0) !important}.pe-0{padding-right:var(--spacer-0) !important}.pb-0{padding-bottom:var(--spacer-0) !important}.ps-0{padding-left:var(--spacer-0) !important}.p-1{padding:var(--spacer-1) !important}.px-1{padding-left:var(--spacer-1) !important;padding-right:var(--spacer-1) !important}.py-1{padding-top:var(--spacer-1) !important;padding-bottom:var(--spacer-1) !important}.pt-1{padding-top:var(--spacer-1) !important}.pe-1{padding-right:var(--spacer-1) !important}.pb-1{padding-bottom:var(--spacer-1) !important}.ps-1{padding-left:var(--spacer-1) !important}.p-2{padding:var(--spacer-2) !important}.px-2{padding-left:var(--spacer-2) !important;padding-right:var(--spacer-2) !important}.py-2{padding-top:var(--spacer-2) !important;padding-bottom:var(--spacer-2) !important}.pt-2{padding-top:var(--spacer-2) !important}.pe-2{padding-right:var(--spacer-2) !important}.pb-2{padding-bottom:var(--spacer-2) !important}.ps-2{padding-left:var(--spacer-2) !important}.p-3{padding:var(--spacer-3) !important}.px-3{padding-left:var(--spacer-3) !important;padding-right:var(--spacer-3) !important}.py-3{padding-top:var(--spacer-3) !important;padding-bottom:var(--spacer-3) !important}.pt-3{padding-top:var(--spacer-3) !important}.pe-3{padding-right:var(--spacer-3) !important}.pb-3{padding-bottom:var(--spacer-3) !important}.ps-3{padding-left:var(--spacer-3) !important}.p-4{padding:var(--spacer-4) !important}.px-4{padding-left:var(--spacer-4) !important;padding-right:var(--spacer-4) !important}.py-4{padding-top:var(--spacer-4) !important;padding-bottom:var(--spacer-4) !important}.pt-4{padding-top:var(--spacer-4) !important}.pe-4{padding-right:var(--spacer-4) !important}.pb-4{padding-bottom:var(--spacer-4) !important}.ps-4{padding-left:var(--spacer-4) !important}.p-5{padding:var(--spacer-5) !important}.px-5{padding-left:var(--spacer-5) !important;padding-right:var(--spacer-5) !important}.py-5{padding-top:var(--spacer-5) !important;padding-bottom:var(--spacer-5) !important}.pt-5{padding-top:var(--spacer-5) !important}.pe-5{padding-right:var(--spacer-5) !important}.pb-5{padding-bottom:var(--spacer-5) !important}.ps-5{padding-left:var(--spacer-5) !important}}@layer utilities{.text-heading{color:var(--colour-heading) !important}.text-primary{color:var(--colour-primary) !important}.bg-primary{--bg-colour: var(--colour-primary) !important;background-color:var(--colour-primary) !important}.hover-primary:is(:hover,:focus,:focus-within){--bg-colour: var(--colour-primary) !important;background-color:var(--colour-primary) !important}.colour-primary{--colour: var(--colour-primary) !important}.text-secondary{color:var(--colour-secondary) !important}.bg-secondary{--bg-colour: var(--colour-secondary) !important;background-color:var(--colour-secondary) !important}.hover-secondary:is(:hover,:focus,:focus-within){--bg-colour: var(--colour-secondary) !important;background-color:var(--colour-secondary) !important}.colour-secondary{--colour: var(--colour-secondary) !important}.text-info{color:var(--colour-info) !important}.bg-info{--bg-colour: var(--colour-info) !important;background-color:var(--colour-info) !important}.hover-info:is(:hover,:focus,:focus-within){--bg-colour: var(--colour-info) !important;background-color:var(--colour-info) !important}.colour-info{--colour: var(--colour-info) !important}.text-warning{color:var(--colour-warning) !important}.bg-warning{--bg-colour: var(--colour-warning) !important;background-color:var(--colour-warning) !important}.hover-warning:is(:hover,:focus,:focus-within){--bg-colour: var(--colour-warning) !important;background-color:var(--colour-warning) !important}.colour-warning{--colour: var(--colour-warning) !important}.text-success{color:var(--colour-success) !important}.bg-success{--bg-colour: var(--colour-success) !important;background-color:var(--colour-success) !important}.hover-success:is(:hover,:focus,:focus-within){--bg-colour: var(--colour-success) !important;background-color:var(--colour-success) !important}.colour-success{--colour: var(--colour-success) !important}.text-complete{color:var(--colour-complete) !important}.bg-complete{--bg-colour: var(--colour-complete) !important;background-color:var(--colour-complete) !important}.hover-complete:is(:hover,:focus,:focus-within){--bg-colour: var(--colour-complete) !important;background-color:var(--colour-complete) !important}.colour-complete{--colour: var(--colour-complete) !important}.text-danger{color:var(--colour-danger) !important}.bg-danger{--bg-colour: var(--colour-danger) !important;background-color:var(--colour-danger) !important}.hover-danger:is(:hover,:focus,:focus-within){--bg-colour: var(--colour-danger) !important;background-color:var(--colour-danger) !important}.colour-danger{--colour: var(--colour-danger) !important}.text-dark{color:var(--colour-dark) !important}.bg-dark{--bg-colour: var(--colour-dark) !important;background-color:var(--colour-dark) !important}.hover-dark:is(:hover,:focus,:focus-within){--bg-colour: var(--colour-dark) !important;background-color:var(--colour-dark) !important}.colour-dark{--colour: var(--colour-dark) !important}.text-light{color:var(--colour-light) !important}.bg-light{--bg-colour: var(--colour-light) !important;background-color:var(--colour-light) !important}.hover-light:is(:hover,:focus,:focus-within){--bg-colour: var(--colour-light) !important;background-color:var(--colour-light) !important}.colour-light{--colour: var(--colour-light) !important}.text-canvas{color:var(--colour-canvas) !important}.bg-canvas{--bg-colour: var(--colour-canvas) !important;background-color:var(--colour-canvas) !important}.hover-canvas:is(:hover,:focus,:focus-within){--bg-colour: var(--colour-canvas) !important;background-color:var(--colour-canvas) !important}.colour-canvas{--colour: var(--colour-canvas) !important}.text-white{color:var(--colour-white) !important}.bg-white{--bg-colour: var(--colour-white) !important;background-color:var(--colour-white) !important}.hover-white:is(:hover,:focus,:focus-within){--bg-colour: var(--colour-white) !important;background-color:var(--colour-white) !important}.colour-white{--colour: var(--colour-white) !important}.text-body{color:var(--colour-body)}}@layer utilities{.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}}@layer utilities{.fa-right{--iso: "\u2192"}.fa-chevron-right{--iso: ">"}.fa-left{--iso: "\u2190"}.fa-chevron-left{--iso: "<"}.fa-up{--iso: "\u2191"}.fa-chevron-up{--iso: "\u2227"}.fa-down{--iso: "\u2193"}.fa-chevron-down{--iso: "\u2228"}.fa-plus{--iso: "+"}.fa-bars{--iso: "\u039E"}.fa-bars{--iso: "\u039E"}.fa-edit{--iso: "\u270E"}.fa-envelope{--iso: "\u2709"}.fa-calendar{--iso: "\u2636"}}*,*::before,*::after{box-sizing:border-box}:host{display:block !important}.fa-chevron-up{--fa: "\uF077"}.fa-chevron-down{--fa: "\uF078"}.fa-trash{--fa: "\uF1F8"}.fa-plus{--fa: "+"}.fa-pen-to-square{--fa: "\uF044"}.fa-floppy-disk{--fa: "\uF0C7"}[class*=fa-]:before{content:var(--fa);font-weight:600;font-family:"Font Awesome 7 Pro"}#wrapper{container-type:inline-size;display:flex;flex-direction:column}#wrapper .admin-panel{order:1;justify-content:flex-end;display:flex;max-width:fit-content;gap:.75rem;padding:1rem}#wrapper .admin-panel>*{margin:0}#wrapper #items{order:2;display:block !important}#buckets{display:block !important}.bucket{display:block;min-height:10rem;background-color:blue;margin-bottom:2rem;padding:1rem}.bucket:empty{display:block;min-height:10rem;background-color:red;margin-bottom:2rem;padding:1rem}.bucket__wrapper{padding-right:10.25rem;position:relative;border-bottom:1px solid var(--colour-border);margin-bottom:2rem;padding-bottom:1rem}.bucket__wrapper>.btn__group{position:absolute;top:.25rem;right:0;gap:0;padding:0}#items [data-bucket]{display:block}#items [data-bucket] form{--btns-width: 2.5rem;--col-size: calc((100% - (var(--gap) * 11)) / 12);column-gap:var(--gap);grid-column:var(--col-start, col-1-start)/var(--col-end, col-12-end);grid-template-columns:[content-start col-1-start] var(--col-size) [col-1-end col-2-start] var(--col-size) [col-2-end col-3-start] var(--col-size) [col-3-end col-4-start] var(--col-size) [col-4-end col-5-start] var(--col-size) [col-5-end col-6-start] var(--col-size) [col-6-end col-7-start] var(--col-size) [col-7-end col-8-start] var(--col-size) [col-8-end col-9-start] var(--col-size) [col-9-end col-10-start] var(--col-size) [col-10-end col-11-start] var(--col-size) [col-11-end col-12-start] var(--col-size) [col-12-end content-end];padding-right:calc(var(--btns-width) + .5rem);position:relative}#items [data-bucket] form .btn__group{position:absolute;top:.25rem;right:0;gap:0;width:var(--btns-width);padding-top:1.75rem;margin:0}#items [data-bucket] form .btn__group .btn:not(.fa-trash){display:none}#items [data-bucket] form:not(:where(main)):has(>[class*=col-]) .btn__group{left:100%;margin-left:.5rem;right:auto}:host([data-order]) #items [data-bucket] form{--btns-width: 10rem}:host([data-order]) #items [data-bucket] form .btn:not(.fa-trash){display:inline-block}.criteria{display:flex;gap:1rem;padding-right:5.25rem;position:relative}.criteria .btn__group{position:absolute;top:.25rem;right:0;gap:0;padding:0}.criteria label{flex-grow:1}.criteria label:nth-child(2){flex-grow:0}.bucket__wrapper:not(.bucket--expanded)>label>span{display:none}.bucket__wrapper:not(.bucket--expanded) .criteria{display:none}.bucket__wrapper:not(.bucket--expanded) .criteria label:nth-child(3):has(:disabled){display:none}.bucket__wrapper.bucket--expanded .btn__group .fa-pen-to-square{--fa: "\uE0A6"}#buckets .bucket__wrapper:first-child .btn__group [data-direction=up],#buckets .bucket__wrapper:last-child .btn__group [data-direction=down],[data-bucket] form:first-child .btn__group [data-direction=up],[data-bucket] form:last-child .btn__group [data-direction=down]{opacity:.6;pointer-events:none}/*# sourceMappingURL=assets/css/components/config.component.css.map */
|
|
40
|
+
|
|
41
|
+
</style>
|
|
42
|
+
<div id="wrapper">
|
|
43
|
+
<div id="items">
|
|
44
|
+
<div id="buckets"></div>
|
|
45
|
+
<div id="any" data-bucket="any"></div>
|
|
46
|
+
</div>
|
|
47
|
+
<div class="admin-panel">
|
|
48
|
+
<button class="btn btn-action fa-plus" command="add-bucket">Add bucket</button>
|
|
49
|
+
<button class="btn btn-action fa-plus" command="add-item">Add ${(s=this.getAttribute("data-item-name"))!==null&&s!==void 0?s:"item"}</button> <!-- Changes to open a model if we want to validate the add form first -->
|
|
50
|
+
|
|
51
|
+
</div>
|
|
52
|
+
<button id="save" class="btn btn-sm btn-primary fa-floppy-disk" >Save items</button>
|
|
53
|
+
</div>
|
|
54
|
+
`,(c=this.shadowRoot)===null||c===void 0||c.appendChild(l.content.cloneNode(!0))}importData(s){return x(this,void 0,void 0,function*(){window.controller||(window.controller=[]),window.controller[s]&&window.controller[s].abort(),window.controller[s]=new AbortController;const{signal:c}=window.controller[s];try{return yield fetch(s,{signal:c,method:"get",credentials:"same-origin",headers:new Headers({"Content-Type":"application/json",Accept:"application/json","X-Requested-With":"XMLHttpRequest","X-XSRF-TOKEN":D.get("XSRF-TOKEN")})}).then(l=>l.json()).then(l=>l.data?l.data:l)}catch{return"There has been a problem. Please try again in a few moments."}})}importAttributeData(s){return x(this,void 0,void 0,function*(){})}connectedCallback(){return x(this,void 0,void 0,function*(){var s,c,l,t,a;this.buttonHTML=`
|
|
55
|
+
<button class="btn btn-compact btn-sm mt-0 btn-secondary fa-trash" type="button" data-direction="delete" title="Delete">Delete</button>
|
|
56
|
+
<button class="btn btn-compact btn-sm mt-0 btn-secondary fa-chevron-down" type="button" data-direction="down" title="Move down">Down</button>
|
|
57
|
+
<button class="btn btn-compact btn-sm mt-0 btn-secondary fa-chevron-up" type="button" data-direction="up" title="Move up">Up</button>
|
|
58
|
+
`;const o=this.getAttribute("data-import"),r=this.getBucketsData,e=this.createBuckets,i=this.createForms;this.createForm;const n=this.shadowRoot.querySelector("#items");this.shadowRoot.querySelector("#any"),this.shadowRoot.querySelector("#buckets"),this.shadowRoot.querySelector("#editBuckets");const b=this.shadowRoot.querySelector("#save");(s=this.shadowRoot)===null||s===void 0||s.querySelector("[data-add-item]"),(c=this.shadowRoot)===null||c===void 0||c.querySelector("#addForm"),(l=this.shadowRoot)===null||l===void 0||l.querySelector("#editBucketsDialog"),(t=this.shadowRoot)===null||t===void 0||t.querySelector("#editBucketsForm"),(a=this.shadowRoot)===null||a===void 0||a.querySelector("#editBucketsForm .btn-primary");const g=this===null||this===void 0?void 0:this.shadowRoot.querySelector('[command="add-bucket"]'),z=this===null||this===void 0?void 0:this.shadowRoot.querySelector('[command="add-item"]'),_=this===null||this===void 0?void 0:this.querySelector("form");_?.addEventListener("submit",u=>{u.preventDefault()}),Array.from(this.querySelectorAll("select[data-import]")).forEach(u=>x(this,void 0,void 0,function*(){const d=u.getAttribute("data-import");this.importData(d).then(h=>typeof h=="string"?h:(h.forEach(w=>{const p=document.createElement("option");p.value=w.id,p.innerHTML=w.attributes.name,u.appendChild(p)}),!0))})),localStorage.getItem(`config-${this.getAttribute("data-name")}`)||o&&(yield this.importData(o).then(u=>{if(typeof u=="string")return u;const d=r(u);return d&&e(d),i(u),!0})),z?.addEventListener("click",u=>{const d=this.createForm({});d?.scrollIntoView({behavior:"instant",block:"center"})}),g?.addEventListener("click",u=>{const d=this.createBucket({});d?.scrollIntoView({behavior:"instant",block:"center"})}),this.shadowRoot.addEventListener("change",u=>{const d=u.target.closest("[data-bucket]");if(!d)return!1;const h=u.target.name,w=u.target.value,p={};p[h]=w;const v=this.checkBuckets(p);if(v!=d){const f=u.target.closest("form");v?.insertAdjacentElement("beforeend",f),f?.scrollIntoView({behavior:"instant",block:"center"})}}),b?.addEventListener("click",u=>{u.preventDefault();const d=[];Array.from(n?.querySelectorAll(".bucket__wrapper")).forEach((h,w)=>{const p={};p.attributes={},p.id=h?.querySelector('[name="bucket"]').value,p.type="bucket",p.attributes.index=w;const v=[];Array.from(h?.querySelectorAll(".criteria--container form")).forEach((q,E)=>{const y={};y.type="criteria",y.index=E;const A=new FormData(q),S=Object.fromEntries(A.entries());y.attributes=S,v.push(y)}),p.attributes.criteria=v;const f=[];Array.from(h?.querySelectorAll("[data-bucket] form")).forEach((q,E)=>{const y={};y.type="item",y.index=E;const A=new FormData(q),S=Object.fromEntries(A.entries());y.attributes=S,f.push(y)}),p.attributes.items=f,d.push(p)}),Array.from(n?.querySelectorAll('[data-bucket="any"] form')).forEach((h,w)=>{const p={};p.type="item",p.index=w;const v=new FormData(h),f=Object.fromEntries(v.entries());p.attributes=f,d.push(p)}),JSON.stringify(d),console.log(d)})})}}export{L as default};
|
|
59
|
+
//# sourceMappingURL=config.component.min.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.component.min.js","sources":["../../../../node_modules/js-cookie/dist/js.cookie.mjs","../_global.js","config.component.js"],"sourcesContent":["/*! js-cookie v3.0.5 | MIT */\n/* eslint-disable no-var */\nfunction assign (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n target[key] = source[key];\n }\n }\n return target\n}\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\nvar defaultConverter = {\n read: function (value) {\n if (value[0] === '\"') {\n value = value.slice(1, -1);\n }\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent)\n },\n write: function (value) {\n return encodeURIComponent(value).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n )\n }\n};\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\n\nfunction init (converter, defaultAttributes) {\n function set (name, value, attributes) {\n if (typeof document === 'undefined') {\n return\n }\n\n attributes = assign({}, defaultAttributes, attributes);\n\n if (typeof attributes.expires === 'number') {\n attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n }\n if (attributes.expires) {\n attributes.expires = attributes.expires.toUTCString();\n }\n\n name = encodeURIComponent(name)\n .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)\n .replace(/[()]/g, escape);\n\n var stringifiedAttributes = '';\n for (var attributeName in attributes) {\n if (!attributes[attributeName]) {\n continue\n }\n\n stringifiedAttributes += '; ' + attributeName;\n\n if (attributes[attributeName] === true) {\n continue\n }\n\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n }\n\n return (document.cookie =\n name + '=' + converter.write(value, name) + stringifiedAttributes)\n }\n\n function get (name) {\n if (typeof document === 'undefined' || (arguments.length && !name)) {\n return\n }\n\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split('; ') : [];\n var jar = {};\n for (var i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split('=');\n var value = parts.slice(1).join('=');\n\n try {\n var found = decodeURIComponent(parts[0]);\n jar[found] = converter.read(value, found);\n\n if (name === found) {\n break\n }\n } catch (e) {}\n }\n\n return name ? jar[name] : jar\n }\n\n return Object.create(\n {\n set,\n get,\n remove: function (name, attributes) {\n set(\n name,\n '',\n assign({}, attributes, {\n expires: -1\n })\n );\n },\n withAttributes: function (attributes) {\n return init(this.converter, assign({}, this.attributes, attributes))\n },\n withConverter: function (converter) {\n return init(assign({}, this.converter, converter), this.attributes)\n }\n },\n {\n attributes: { value: Object.freeze(defaultAttributes) },\n converter: { value: Object.freeze(converter) }\n }\n )\n}\n\nvar api = init(defaultConverter, { path: '/' });\n/* eslint-enable no-var */\n\nexport { api as default };\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","var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport Cookies from '../../../../node_modules/js-cookie/dist/js.cookie.mjs';\nimport { trackComponentRegistered } from '../_global.js';\ntrackComponentRegistered('iam-config');\nclass iamConfig extends HTMLElement {\n constructor() {\n var _a, _b;\n super();\n this.getBucketsData = (data) => {\n if (!data)\n return [];\n const buckets = [];\n // TODO: check local storage first\n data.forEach(bucket => {\n var _a, _b;\n if (typeof ((_a = bucket.attributes) === null || _a === void 0 ? void 0 : _a.criteria) == \"object\" && Array.isArray((_b = bucket.attributes) === null || _b === void 0 ? void 0 : _b.criteria)) {\n buckets.push(bucket);\n }\n });\n return buckets;\n };\n this.createBuckets = (buckets) => {\n console.log(buckets);\n const bucketsContainer = this.shadowRoot.querySelector('#buckets'); // TODO: rename\n if (!buckets)\n return false;\n buckets.forEach((bucket) => {\n this.createBucket(bucket);\n });\n return true;\n };\n this.createBucket = (bucket) => {\n const bucketsContainer = this.shadowRoot.querySelector('#buckets'); // TODO: rename\n const bucketElement = document.createElement('div');\n bucketElement.innerHTML = this.addBucketHTML(bucket);\n //bucketElement.setAttribute('data-bucket',bucket.id);\n bucketElement.classList.add('bucket__wrapper');\n bucketsContainer === null || bucketsContainer === void 0 ? void 0 : bucketsContainer.insertAdjacentElement('beforeend', bucketElement);\n //this.addButtonEvents(bucketElement,true);\n this.createEditBucketsEvents(bucketElement);\n const criteriaContainer = bucketElement.querySelector('.criteria--container');\n if (bucket.attributes) {\n bucket.attributes.criteria.forEach((criteria) => {\n var _a, _b, _c;\n const criteriaForm = document.createElement('form');\n criteriaForm.classList.add('criteria');\n criteriaForm.innerHTML = this.addCriteriaHTML(criteria.attributes);\n // TODO add to HTML\n (_a = criteriaForm.querySelector('[name=\"attribute\"]')) === null || _a === void 0 ? void 0 : _a.value = criteria.attributes.attribute;\n (_b = criteriaForm.querySelector('[name=\"rule\"]')) === null || _b === void 0 ? void 0 : _b.value = criteria.attributes.rule;\n (_c = criteriaForm.querySelector('[name=\"match\"]')) === null || _c === void 0 ? void 0 : _c.value = criteria.attributes.match;\n criteriaContainer === null || criteriaContainer === void 0 ? void 0 : criteriaContainer.appendChild(criteriaForm);\n // TODO add buttons\n // TODO add events\n });\n this.createForms(bucket.attributes.items, bucket.id);\n }\n return bucketElement;\n };\n this.addCriteriaHTML = (attributes) => {\n return /*HTML*/ `<label>\n <span class=\"visually-hidden\">Attribute</span>\n ${this.createCriteriaDropdown(attributes.attribute)}\n </label>\n <label>\n <span class=\"visually-hidden\">Rule</span>\n <select name=\"rule\" class=\"mt-0 select--sm\">\n <option value=\"set\">is not empty</option>\n <option value=\"empty\">is empty</option>\n <option value=\"equals\">equals</option>\n <option value=\"not\">is not</option>\n <option value=\"greater\">greater than</option>\n <option value=\"less\">less than</option>\n </select>\n </label>\n <label>\n <span class=\"visually-hidden\">Match</span>\n <input type=\"text\" name=\"match\" class=\"mt-0 input--sm\" /> <!-- TODO Add datalist or transform into select -->\n </label>\n <div class=\"btn__group\">\n <button class=\"btn btn-compact btn-sm mt-0 btn-secondary fa-plus\" type=\"button\" data-direction=\"add\" title=\"Delete\">Add</button>\n <button class=\"btn btn-compact btn-sm mt-0 btn-secondary fa-trash\" type=\"button\" data-direction=\"delete\" title=\"Delete\">Delete</button>\n </div>`;\n };\n this.addBucketHTML = (bucket) => {\n var _a, _b, _c;\n return /*HTML*/ `<label>\n <span class=\"visually-hidden\">Name</span>\n <input type=\"text\" name=\"bucket\" value=\"${(_b = (_a = bucket.attributes) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : ''}\"/>\n </label>\n <div class=\"btn__group text-end\"><button class=\"btn btn-compact btn-sm mt-0 btn-secondary fa-pen-to-square\" data-expand title=\"Expand to see more options\">Edit</button>${this.buttonHTML}</div>\n <div class=\"criteria--container\">\n </div>\n <div data-bucket=\"${(_c = bucket.id) !== null && _c !== void 0 ? _c : ''}\" class=\"bucket\">\n </div>`;\n };\n this.createCriteriaDropdown = (attribute) => {\n const form = this.querySelector('form');\n const formData = new FormData(form);\n const formDataObj = Object.fromEntries(formData.entries());\n let optionsHtml = '';\n Object.keys(formDataObj).forEach(function (key) {\n optionsHtml += `<option value=\"${key}\" ${key == attribute ? ' selected=\"selected\"' : ''}>${key}</option>`;\n });\n return `<select name=\"attributes[criteria]\" class=\"mt-0 select--sm\">\n <option value=\"\"></option>\n ${optionsHtml}\n </select>`;\n };\n this.createEditBucketsEvents = (bucket) => {\n this.addButtonEvents(bucket, true);\n const expandButton = bucket === null || bucket === void 0 ? void 0 : bucket.querySelector('[data-expand]');\n expandButton === null || expandButton === void 0 ? void 0 : expandButton.addEventListener('click', () => {\n bucket.classList.toggle('bucket--expanded');\n });\n };\n this.createForms = (data, bucketId = \"any\") => {\n data.forEach(item => {\n var _a;\n if (typeof ((_a = item.attributes) === null || _a === void 0 ? void 0 : _a.criteria) == \"undefined\") {\n const formElement = this.createForm(item, bucketId);\n Object.keys(item.attributes).forEach(function (key) {\n if (formElement.querySelector(`[name=\"${key}\"]`)) {\n const element = formElement.querySelector(`[name=\"${key}\"]`);\n if (element.matches('select[data-import]') && !element.querySelector(`option[value=\"${item.attributes[key]}\"]`)) {\n const optionElement = document.createElement('option');\n optionElement.value = item.attributes[key];\n optionElement.innerHTML = item.attributes[key];\n element.appendChild(optionElement);\n }\n element.value = item.attributes[key];\n }\n });\n }\n });\n };\n this.checkCriteria = (attributes, bucket) => {\n if (attributes[bucket])\n return true;\n return false;\n };\n this.checkBuckets = (attributes) => {\n const anyContainer = this.shadowRoot.querySelector('#any'); // TODO: rename\n let container = anyContainer;\n if (!this.hasAttribute('data-buckets'))\n return container;\n let buckets = [];\n let addedToBucket = false;\n // If data attribute set\n buckets = this.getAttribute('data-buckets').split(',');\n // TODO: If importing the config from a json file\n buckets.forEach((bucket) => {\n const addToBucket = !addedToBucket ? this.checkCriteria(attributes, bucket) : false;\n if (addToBucket) {\n addedToBucket = true;\n container = this.shadowRoot.querySelector(`[data-bucket=\"${bucket}\"]`);\n }\n });\n return container;\n };\n this.createForm = (item, bucketId = \"any\") => {\n var _a;\n const anyContainer = this.shadowRoot.querySelector(`#items [data-bucket=\"${bucketId}\"]`); // TODO: rename\n //const bucketsContainer = this.shadowRoot.querySelector('#buckets'); // TODO: rename\n //const container = this.checkBuckets(item.attributes); TODO: re-enable\n const container = anyContainer;\n const formElement = (_a = this.querySelector(`form`)) === null || _a === void 0 ? void 0 : _a.cloneNode(true);\n //formTemplate.setAttribute('id', item.id);\n // TODO check if it matches a bucket\n container === null || container === void 0 ? void 0 : container.insertAdjacentElement('beforeend', formElement);\n //const formElement = container?.querySelector(`[id=\"${item.id}\"]`);\n formElement === null || formElement === void 0 ? void 0 : formElement.addEventListener('submit', (event) => {\n event.preventDefault();\n });\n this.addButtons(formElement);\n return formElement;\n };\n this.getCurrentIds = () => {\n var _a;\n const idsArr = [];\n Array.from((_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('#items form')).forEach((form) => {\n idsArr.push(parseInt(form.getAttribute('id')));\n });\n return idsArr;\n };\n this.generateId = () => {\n return Math.max(...this.getCurrentIds()) + 1;\n };\n this.addButtonEvents = (element, scrollIntoView = true) => {\n const upButton = element === null || element === void 0 ? void 0 : element.querySelector('[data-direction=\"up\"]');\n const downButton = element === null || element === void 0 ? void 0 : element.querySelector('[data-direction=\"down\"]');\n const deleteButton = element === null || element === void 0 ? void 0 : element.querySelector('[data-direction=\"delete\"]');\n upButton === null || upButton === void 0 ? void 0 : upButton.addEventListener('click', () => {\n if (element === null || element === void 0 ? void 0 : element.previousElementSibling) {\n element === null || element === void 0 ? void 0 : element.parentNode.insertBefore(element, element.previousElementSibling);\n if (scrollIntoView)\n element === null || element === void 0 ? void 0 : element.scrollIntoView({ behavior: \"instant\", block: \"center\" });\n }\n });\n downButton === null || downButton === void 0 ? void 0 : downButton.addEventListener('click', () => {\n if (element.nextElementSibling) {\n element === null || element === void 0 ? void 0 : element.parentNode.insertBefore(element, element.nextElementSibling.nextElementSibling);\n }\n else {\n element === null || element === void 0 ? void 0 : element.parentNode.insertAdjacentElement('beforeend', element);\n }\n if (scrollIntoView)\n element === null || element === void 0 ? void 0 : element.scrollIntoView({ behavior: \"instant\", block: \"center\" });\n });\n deleteButton === null || deleteButton === void 0 ? void 0 : deleteButton.addEventListener('click', () => {\n element.remove();\n });\n };\n this.addButtons = (form) => {\n form === null || form === void 0 ? void 0 : form.insertAdjacentHTML('beforeend', `<div class=\"btn__group\">${this.buttonHTML}</div>`);\n this.addButtonEvents(form);\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/config.component.css\";`;\n const template = document.createElement('template');\n template.innerHTML = /* HTML */ `\n <style>\n ${loadCSS}\n </style>\n <div id=\"wrapper\">\n <div id=\"items\">\n <div id=\"buckets\"></div> \n <div id=\"any\" data-bucket=\"any\"></div>\n </div>\n <div class=\"admin-panel\">\n <button class=\"btn btn-action fa-plus\" command=\"add-bucket\">Add bucket</button>\n <button class=\"btn btn-action fa-plus\" command=\"add-item\">Add ${(_a = this.getAttribute('data-item-name')) !== null && _a !== void 0 ? _a : 'item'}</button> <!-- Changes to open a model if we want to validate the add form first -->\n\n </div>\n <button id=\"save\" class=\"btn btn-sm btn-primary fa-floppy-disk\" >Save items</button>\n </div>\n `;\n (_b = this.shadowRoot) === null || _b === void 0 ? void 0 : _b.appendChild(template.content.cloneNode(true));\n }\n importData(ajaxURL) {\n return __awaiter(this, void 0, void 0, function* () {\n // Setup controller vars if not already set\n if (!window.controller)\n window.controller = [];\n // Abort if controller already present for this url\n if (window.controller[ajaxURL])\n window.controller[ajaxURL].abort();\n // Create a new controller so it can be aborted if new fetch made\n window.controller[ajaxURL] = new AbortController();\n const { signal } = window.controller[ajaxURL];\n try {\n return yield fetch(ajaxURL, {\n signal: signal,\n method: 'get',\n credentials: 'same-origin',\n headers: new Headers({\n 'Content-Type': 'application/json',\n Accept: 'application/json',\n 'X-Requested-With': 'XMLHttpRequest',\n 'X-XSRF-TOKEN': Cookies.get('XSRF-TOKEN'),\n }),\n })\n .then((response) => response.json())\n .then((response) => {\n const returnData = response['data'] ? response['data'] : response;\n return returnData;\n });\n }\n catch (error) {\n //console.log(error);\n return 'There has been a problem. Please try again in a few moments.';\n }\n });\n }\n importAttributeData(comonponent) {\n return __awaiter(this, void 0, void 0, function* () {\n });\n }\n connectedCallback() {\n return __awaiter(this, void 0, void 0, function* () {\n var _a, _b, _c, _d, _e;\n this.buttonHTML = /* HTML */ `\n <button class=\"btn btn-compact btn-sm mt-0 btn-secondary fa-trash\" type=\"button\" data-direction=\"delete\" title=\"Delete\">Delete</button>\n <button class=\"btn btn-compact btn-sm mt-0 btn-secondary fa-chevron-down\" type=\"button\" data-direction=\"down\" title=\"Move down\">Down</button>\n <button class=\"btn btn-compact btn-sm mt-0 btn-secondary fa-chevron-up\" type=\"button\" data-direction=\"up\" title=\"Move up\">Up</button>\n `;\n const dataImportUrl = this.getAttribute('data-import');\n const getBucketsData = this.getBucketsData;\n const createBuckets = this.createBuckets;\n const createForms = this.createForms;\n const createForm = this.createForm;\n const itemsContainer = this.shadowRoot.querySelector('#items'); // TODO: rename\n const anyContainer = this.shadowRoot.querySelector('#any'); // TODO: rename\n const bucketsContainer = this.shadowRoot.querySelector('#buckets'); // TODO: rename\n const editBuckets = this.shadowRoot.querySelector('#editBuckets'); // TODO: rename\n const saveButton = this.shadowRoot.querySelector('#save');\n const addButton = (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('[data-add-item]');\n const addForm = (_b = this.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#addForm');\n const editBucketsDialog = (_c = this.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('#editBucketsDialog');\n const editBucketsForm = (_d = this.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('#editBucketsForm');\n const editBucketsFormSubmit = (_e = this.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('#editBucketsForm .btn-primary');\n const addBucketButton = this === null || this === void 0 ? void 0 : this.shadowRoot.querySelector('[command=\"add-bucket\"]');\n const addItemButton = this === null || this === void 0 ? void 0 : this.shadowRoot.querySelector('[command=\"add-item\"]');\n const templateForm = this === null || this === void 0 ? void 0 : this.querySelector('form');\n let editBucketsOriginalState = '';\n let buckets = [];\n // Prevent the template form from submitting anything\n templateForm === null || templateForm === void 0 ? void 0 : templateForm.addEventListener('submit', (event) => {\n event.preventDefault();\n });\n // TODO: add this to an on change event on the select\n Array.from(this.querySelectorAll('select[data-import]')).forEach((select) => __awaiter(this, void 0, void 0, function* () {\n const ajaxURL = select.getAttribute('data-import');\n this.importData(ajaxURL).then((data) => {\n if (typeof data == 'string')\n return data;\n data.forEach(item => {\n const optionElement = document.createElement('option');\n optionElement.value = item.id;\n optionElement.innerHTML = item.attributes.name;\n select.appendChild(optionElement);\n });\n return true;\n });\n }));\n // #region import data\n // TODO load from web storage if its newer\n const storedData = localStorage.getItem(`config-${this.getAttribute('data-name')}`);\n //const buckets = this.getBucketsData(); // TODO: load from local storage\n if (storedData) {\n //createForms(JSON.parse(storedData), buckets);\n }\n else if (dataImportUrl) {\n const dataImport = yield this.importData(dataImportUrl).then((data) => {\n if (typeof data == 'string')\n return data;\n const buckets = getBucketsData(data);\n if (buckets) {\n createBuckets(buckets);\n }\n createForms(data); // any bucket\n return true;\n });\n }\n // #endregion\n // #region Add buckets to edit modal\n /*\n editBucketsForm?.addEventListener('submit', (event) => {\n \n event.stopPropagation();\n event.preventDefault();\n \n if(event.submitter == editBucketsFormSubmit){\n \n // Clear what is there already\n //anyContainer?.innerHTML = '';\n \n Array.from(itemsContainer?.querySelectorAll('form')).forEach((formElement:HTMLElement, index):void => {\n \n anyContainer?.insertAdjacentElement('beforeend',formElement);\n });\n \n // Empty the buckets\n bucketsContainer?.innerHTML = '';\n \n // Load the new bucket data then recreate them\n const buckets = [];\n Array.from(editBuckets?.querySelectorAll('[data-bucket]')).forEach((editBucketElement:HTMLElement, index):void => {\n \n bucketsContainer?.insertAdjacentHTML('beforeend',`<div class=\"bucket\" data-bucket=\"${editBucketElement.getAttribute('data-bucket')}\"></div>`);\n \n const bucket = {}\n \n bucket.id = editBucketElement.getAttribute('data-bucket');\n bucket.attributes = {};\n \n bucket.attributes.name = editBucketElement.querySelector('[name=\"bucket\"]')?.value;\n \n //const formData = new FormData(editBucketElement);\n //const formDataObj = Object.fromEntries(formData.entries());\n // TODO cycle through the criteria forms\n \n buckets.push(bucket);\n });\n \n \n console.log(buckets);\n // this.createBuckets(buckets); TODO: re-enable\n \n /*\n // Move items back into buckets\n Array.from(itemsContainer?.querySelectorAll('form')).forEach((formElement:HTMLElement, index):void => {\n \n const formData = new FormData(formElement);\n const formDataObj = Object.fromEntries(formData.entries());\n const newContainer = this.checkBuckets(formDataObj);\n \n if(newContainer != anyContainer){\n newContainer?.insertAdjacentElement('beforeend',formElement);\n }\n });\n \n \n editBucketsOriginalState = editBuckets.innerHTML;\n }\n \n editBucketsDialog?.close();\n });\n */\n /*\n \n addBucketButton?.addEventListener('click', (event) => {\n \n const editBucket = document.createElement('div');\n editBucket.classList.add('bucket--edit');\n editBucket.innerHTML = this.addBucketHTML();\n \n editBuckets?.insertAdjacentElement('beforeend', editBucket)\n \n this.addButtonEvents(editBucket,false);\n const expandButton = editBucket?.querySelector('[data-expand]');\n \n expandButton?.addEventListener('click',() => {\n \n editBucket.classList.toggle('bucket--expanded');\n });\n });\n \n */\n // #endregion\n // #region add data\n addItemButton === null || addItemButton === void 0 ? void 0 : addItemButton.addEventListener(\"click\", (event) => {\n const form = this.createForm({});\n form === null || form === void 0 ? void 0 : form.scrollIntoView({ behavior: \"instant\", block: \"center\" });\n // TODO scroll into view\n });\n addBucketButton === null || addBucketButton === void 0 ? void 0 : addBucketButton.addEventListener(\"click\", (event) => {\n const bucket = this.createBucket({});\n bucket === null || bucket === void 0 ? void 0 : bucket.scrollIntoView({ behavior: \"instant\", block: \"center\" });\n });\n // #endregion\n // #region update values\n this.shadowRoot.addEventListener('change', (event) => {\n const container = event.target.closest('[data-bucket]');\n if (!container)\n return false;\n const attribute = event.target.name;\n const value = event.target.value;\n const attributes = {};\n attributes[attribute] = value;\n const newContainer = this.checkBuckets(attributes);\n if (newContainer != container) {\n const form = event.target.closest(`form`);\n // TODO a confirmation modal\n newContainer === null || newContainer === void 0 ? void 0 : newContainer.insertAdjacentElement('beforeend', form);\n form === null || form === void 0 ? void 0 : form.scrollIntoView({ behavior: \"instant\", block: \"center\" });\n }\n });\n // #endregion\n // #region save data\n saveButton === null || saveButton === void 0 ? void 0 : saveButton.addEventListener('click', (event) => {\n event.preventDefault();\n // TODO validation\n const entries = [];\n // Save buckets data\n Array.from(itemsContainer === null || itemsContainer === void 0 ? void 0 : itemsContainer.querySelectorAll('.bucket__wrapper')).forEach((bucketElement, index) => {\n const bucket = {};\n bucket.attributes = {};\n bucket.id = bucketElement === null || bucketElement === void 0 ? void 0 : bucketElement.querySelector('[name=\"bucket\"]').value;\n bucket.type = 'bucket';\n bucket.attributes.index = index;\n const criteria = [];\n // TODO populate criteria\n Array.from(bucketElement === null || bucketElement === void 0 ? void 0 : bucketElement.querySelectorAll('.criteria--container form')).forEach((formElement, criteriaIndex) => {\n const item = {};\n //item.id = formElement.getAttribute('id');\n item.type = 'criteria';\n item.index = criteriaIndex;\n const formData = new FormData(formElement);\n const formDataObj = Object.fromEntries(formData.entries());\n item.attributes = formDataObj;\n criteria.push(item);\n });\n bucket.attributes.criteria = criteria;\n const items = [];\n Array.from(bucketElement === null || bucketElement === void 0 ? void 0 : bucketElement.querySelectorAll('[data-bucket] form')).forEach((formElement, itemIndex) => {\n const item = {};\n //item.id = formElement.getAttribute('id');\n item.type = 'item';\n item.index = itemIndex;\n const formData = new FormData(formElement);\n const formDataObj = Object.fromEntries(formData.entries());\n item.attributes = formDataObj;\n items.push(item);\n });\n bucket.attributes.items = items;\n entries.push(bucket);\n });\n Array.from(itemsContainer === null || itemsContainer === void 0 ? void 0 : itemsContainer.querySelectorAll('[data-bucket=\"any\"] form')).forEach((formElement, index) => {\n const entry = {};\n //entry.id = formElement.getAttribute('id');\n entry.type = 'item';\n entry.index = index;\n const formData = new FormData(formElement);\n const formDataObj = Object.fromEntries(formData.entries());\n entry.attributes = formDataObj;\n entries.push(entry);\n });\n const entriesJson = JSON.stringify(entries);\n console.log(entries);\n // TODO add toast message\n // TODO save locally for now but when pushing to endpoint the web storage file should get deleted\n //localStorage.setItem(`config-${this.getAttribute('data-name')}`, entriesJson);\n //const bucketsJson = JSON.stringify(buckets);\n //localStorage.setItem(`config-buckets-${this.getAttribute('data-name')}`, bucketsJson);\n });\n // #endregion\n });\n }\n}\nexport default iamConfig;\n"],"names":["assign","target","i","source","key","defaultConverter","value","init","converter","defaultAttributes","set","name","attributes","stringifiedAttributes","attributeName","get","cookies","jar","parts","found","api","trackComponentRegistered","componentName","__awaiter","thisArg","_arguments","P","generator","adopt","resolve","reject","fulfilled","step","e","rejected","result","iamConfig","_a","_b","data","buckets","bucket","bucketsContainer","bucketElement","criteriaContainer","criteria","_c","criteriaForm","attribute","form","formData","formDataObj","optionsHtml","expandButton","bucketId","item","formElement","element","optionElement","container","addedToBucket","event","idsArr","scrollIntoView","upButton","downButton","deleteButton","template","ajaxURL","signal","Cookies","response","comonponent","_d","_e","dataImportUrl","getBucketsData","createBuckets","createForms","itemsContainer","saveButton","addBucketButton","addItemButton","templateForm","select","newContainer","entries","index","criteriaIndex","items","itemIndex","entry"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v7.
|
|
2
|
+
* iamKey v7.7.0
|
|
3
3
|
* Copyright 2022-2026 iamproperty
|
|
4
|
-
*/class
|
|
4
|
+
*/class c extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"}),document.body.hasAttribute("data-assets-location")&&document.body.getAttribute("data-assets-location");const r=document.createElement("template");r.innerHTML=`
|
|
5
5
|
<style>
|
|
6
|
-
@layer elements{*,*::before,*::after{box-sizing:border-box}button{border-radius:0;text-transform:none;margin:0;font-family:inherit;font-size:inherit;line-height:inherit}[role=button]{cursor:pointer}button:focus:not(:focus-visible){outline:0}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button:not(:disabled),[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled){cursor:pointer}.btn{--btn-margin: 1rem;--btn-padding-block: 0.75rem;--btn-padding-inline: 2.5rem;--btn-border-width: 0.125rem;--btn-font-size: 1.125rem;--btn-line-height: 1.25rem;display:inline-block;font-weight:bold;text-align:left;text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;color:var(--colour-btn);font-size:var(--btn-font-size);line-height:var(--btn-line-height);padding:var(--btn-padding-block) var(--btn-padding-inline);border-radius:1.5rem;margin-bottom:var(--btn-margin);background:none;transition:border .5s,background .5s,color .5s;height:auto;max-width:fit-content;appearance:none;white-space:nowrap}@media screen and (min-width: 36em){.btn{--btn-margin: 1.5rem}}.btn:not(.btn-secondary)[class*=colour-]{--colour-btn-bg: var(--colour);--colour-btn-border: var(--colour)}.btn:is(.colour-primary,.colour-dark,.colour-danger,.colour-black){--colour-btn: #fcfcfc}.btn:not(.border-0){background:var(--colour-btn-bg);border:var(--btn-border-width) solid var(--colour-btn-border)}.btn:not(:last-child){margin-right:var(--btn-margin)}a:is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active) .btn,.btn:is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active){outline:0;text-decoration:none;background:var(--colour-btn-bg-hover);color:var(--colour-btn-hover);border-radius:1.5rem}a:is(:active,.active):not([disabled]) .btn,.btn:is(:active,.active):not([disabled]){filter:brightness(85%);transition:background .1s,color .1s;color:var(--colour-btn);border-radius:1.5rem}a:disabled .btn,.btn:disabled,[disabled] .btn,.btn[disabled]{opacity:.4;cursor:not-allowed}.btn.colour-success{--colour-btn-bg-hover: var(--colour);--colour-btn-border-hover: var(--colour);--colour-btn-hover: var(--colour-primary-theme);position:relative;padding-left:3.5rem;padding-right:3.5rem}a:is(:hover,:focus,.hover):not([disabled],:active,.active) .btn.colour-success,.btn.colour-success:is(:hover,:focus,.hover):not([disabled],:active,.active){padding-left:2.5rem;padding-right:2.5rem}a:is(:hover,:focus,.hover):not([disabled],:active,.active) .btn.colour-success:before,.btn.colour-success:is(:hover,:focus,.hover):not([disabled],:active,.active):before{content:"\uF00C";font-family:"Font Awesome 6 Pro";margin-right:1rem;font-style:inherit;width:1rem;display:inline-block;height:var(--btn-line-height);vertical-align:bottom}.btn.btn-sm{--btn-padding-block: 0.5rem;--btn-padding-inline: 2rem;--btn-margin: 0.5rem;--btn-font-size: 1rem}.btn[class*=fa-]:before{content:var(--fa);font-family:"Font Awesome 6 Pro";line-height:1em}.btn.btn[class*=fa-after]{padding-right:4rem}.btn.btn[class*=fa-after]:before{margin-right:0;margin-right:0.375rem;position:absolute;right:1.5rem;top:50%;transform:translate(0, -50%)}.btn:not(.btn-compact):before{margin-right:1rem}.btn i[class*=fa-]{font-family:"Font Awesome 6 Pro";margin-right:1rem;line-height:1em;font-style:inherit}.btn i[class*=fa-]:not(:first-child){margin-left:1rem;margin-right:0}.btn.btn--prompt:after{content:"";height:var(--btn-line-height);width:1rem;display:inline-block;background:currentColor;mask-image:var(--icon-arrow);mask-size:100%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:100%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;vertical-align:bottom;margin-left:1rem}a:is(:hover,:focus,.hover):not([disabled],:active,.active) .btn.btn--prompt:after,.btn.btn--prompt:is(:hover,:focus,.hover):not([disabled],:active,.active):after{margin-left:1.5rem;margin-right:-0.5rem}.btn-filter:after{content:"\uF1DE";display:inline-block;margin-left:1em;margin-bottom:-0.15em;height:1em;width:1em;z-index:var(--index-focus);color:currentColor;font-weight:300;font-family:"Font Awesome 6 Pro"}}@layer elements{.btn-secondary{color:var(--colour-btn-secondary)}.btn-secondary:not(.border-0){background:var(--colour-btn-secondary-bg);border:2px solid var(--colour-btn-secondary-border)}a:is(:hover,:focus,.hover,:active,.active):not([disabled]) .btn-secondary,.btn-secondary:is(:hover,:focus,.hover,:focus-within,:active,.active):not([disabled]){background:var(--colour-btn-secondary-bg-hover);color:var(--colour-btn-secondary-hover)}}@layer elements{.btn.btn-tertiary{background-color:rgba(0,0,0,0);border:none;color:var(--colour-link);margin:0 var(--btn-margin) var(--btn-margin) 0;padding:0;font-size:1.125rem;font-weight:normal;line-height:1.5rem;min-height:1.5rem;position:relative}.btn.btn-tertiary:after{position:absolute;content:"";top:100%;left:50%;height:2px;width:100%;transform:translate(-50%, 0);background:var(--colour-underline);transition:width .5s}.btn.btn-tertiary.text-decoration-none:after{width:0%}.btn.btn-tertiary [class*=fa-]{margin-left:0;margin-right:.5rem}.btn.btn-tertiary [class*=fa-]:not(:first-child){margin-left:.5rem;margin-right:0}.btn.btn-tertiary:is(:hover,:focus,.hover,:focus-within):not([disabled],:disabled,:active,.active):after{width:60% !important}.btn.btn-tertiary:is(:active,.active):not([disabled],:disabled){color:var(--colour-active)}}@layer elements{.btn-action{--btn-border-width: 0.0625rem;--btn-padding-block: 0.3125rem;--btn-padding-inline: 0.3125rem;--btn-margin: 0.5rem}.btn-action:not(.btn-primary){color:var(--colour-heading)}.btn-action:not(.btn-primary):not(.border-0){background-color:var(--colour-canvas-2);border:var(--btn-border-width) solid var(--colour-muted)}.btn-action{border-radius:.25rem !important;font-weight:400 !important;font-size:1rem;line-height:1.25rem}.btn-action.btn[class*=fa-]:before{content:var(--fa);margin-right:0.375rem}a:not(.btn-primary):is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active) .btn-action,.btn-action:not(.btn-primary):is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active){background:var(--colour-btn-action-hover-bg)}.btn-primary:is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active) .btn-action,.btn-action.btn-primary:is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active){filter:brightness(90%);background:var(--colour-btn-bg);border:var(--btn-border-width) solid var(--colour-btn-border);color:var(--colour-btn)}a:is(:active,.active):not([disabled]):not(.btn-primary) .btn-action,.btn-action:is(:active,.active):not([disabled]):not(.btn-primary){filter:brightness(85%);transition:all .1s;color:var(--colour-heading)}.btn-action:not(.btn-compact).fa-compact-only:before{display:none !important}}@layer elements{.btn-compact{--compact-size: 3rem;padding:0 !important;margin-bottom:.5rem}.btn-compact:not(:last-child){margin-right:.5rem}.btn-compact{text-align:center;width:var(--compact-size);min-width:var(--compact-size);max-width:var(--compact-size);height:var(--compact-size) !important;min-height:var(--compact-size) !important;max-height:var(--compact-size) !important;align-content:center;line-height:1 !important;text-indent:-500px;overflow:hidden;position:relative;font-size:1rem}.btn-compact:before{content:var(--fa);position:absolute;display:block;top:0;left:0;width:100%;height:100%;text-indent:0;line-height:calc(var(--compact-size) - .25rem);font-weight:900}.btn-compact[class*=fa-]:before{line-height:calc(var(--compact-size) - .25rem)}@container style(--theme: dark){.btn-compact[class*=fa-]:before{color:#fff}}.btn-compact.btn-sm{--compact-size: 2.5rem;font-size:1rem;padding:0 !important}.btn-compact.btn-action{--compact-size: 2rem;font-size:1rem}.btn-compact.btn-action:before{font-size:1em;font-weight:400}.btn-compact.btn-secondary{--colour-btn-bg: transparent;--colour-btn-border: transparent;border-color:rgba(0,0,0,0)}.btn-compact.btn-secondary:not([class*=colour-]){--colour: var(--colour-light)}.btn-compact.btn-secondary:is(:hover,:focus,.hover,:active,.active,[aria-expanded],:focus-within):not([disabled]):not(.btn-collapse){background-color:var(--colour);color:var(--colour-primary-theme);border-color:var(--colour)}.btn-compact.btn-secondary:is(:hover,:focus,.hover,:active,.active,[aria-expanded],:focus-within):not([disabled]):not(.btn-collapse):is(.colour-primary,.colour-dark,.colour-danger,.colour-black){color:var(--colour-inverted)}.btn-compact[data-number]{position:relative}.btn-compact[data-number]:after{content:attr(data-number);position:absolute;top:.5em;z-index:99;background:var(--colour-danger);height:1.5em;width:1.5em;border-radius:50%;text-indent:0;left:50%;font-size:.5em;line-height:1.5em;text-align:center;color:#fff;letter-spacing:-0.1em;font-family:arial,sans-serif}[class*=bg-]:not(.bg-info):not(.bg-success):not(.bg-light):not(.bg-warning):not(.bg-white):not(.bg-admin):not(.bg-canvas):not(.bg-canvas-2):not(.prevent-invert) .btn-compact.btn-secondary:not(:hover,:focus,.hover,:focus-within):not(.btn-collapse),.invert-colours .btn-compact.btn-secondary:not(:hover,:focus,.hover,:focus-within):not(.btn-collapse){background-color:var(--colour-white) !important;border-color:var(--colour-white) !important;color:var(--colour-heading)}[class*=bg-]:not(.bg-info):not(.bg-success):not(.bg-light):not(.bg-warning):not(.bg-white):not(.bg-admin):not(.bg-canvas):not(.bg-canvas-2):not(.prevent-invert) .btn-compact.btn-secondary:is(:hover,:focus,.hover,:focus-within):not([disabled]):not(.btn-collapse),.invert-colours .btn-compact.btn-secondary:is(:hover,:focus,.hover,:focus-within):not([disabled]):not(.btn-collapse){background-color:rgba(0,0,0,0);border-color:var(--colour-white) !important;color:var(--colour-white)}[class*=bg-]:not(.bg-info):not(.bg-success):not(.bg-light):not(.bg-warning):not(.bg-white):not(.bg-admin):not(.bg-canvas):not(.bg-canvas-2):not(.prevent-invert) .btn-compact.btn-secondary[disabled],.invert-colours .btn-compact.btn-secondary[disabled]{background-color:var(--colour-white) !important;border-color:var(--colour-white) !important;color:var(--colour-heading) !important}.btn-compact:is(.fa-left,.fa-chevron-left,.fa-right,.fa-chevron-right,.fa-up,.fa-chevron-up,.fa-down,.fa-chevron-down,.fa-plus,.fa-bars,.fa-edit){--iso-display: block;--iso-font-size: 1.5rem;--iso-border-radius: 50%;--iso-text-indent: -500px}@container style(--font-body){.btn-compact{font-size:var(--iso-font-size, 0.6rem) !important;text-indent:var(--iso-text-indent, 0px);white-space:initial}.btn-compact:not(.btn-action){border-radius:var(--iso-border-radius, 0.25rem) !important}.btn-compact:before{display:var(--iso-display, none);font-family:monospace !important;content:var(--iso) !important}}@container style(--fa-font-regular){.btn-compact{text-indent:-500px;font-size:1rem !important}.btn-compact:not(.btn-action){border-radius:50% !important}.btn-compact:before{font-family:"Font Awesome 6 Pro" !important;content:var(--fa) !important;display:block}}}@layer elements{.btn[popovertarget]{position:relative;anchor-name:--button2}.btn[popovertarget]>.fa-chevron-down{display:none}.btn[popovertarget]:not(:has(i)):after{content:"";display:inline-block;margin-right:.25em;margin-left:1em;height:.8em;width:.8em;z-index:var(--index-focus);background:currentColor;mask-image:var(--icon-arrow);mask-size:100%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:100%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;transform:rotate(90deg)}.btn[popovertarget][aria-pressed]:after{transform:rotate(270deg)}.btn:has(select){position:relative;padding:0;max-width:fit-content;min-width:fit-content;width:fit-content}.btn:has(select) select{all:unset !important;padding:var(--btn-padding-block) var(--btn-padding-inline) !important;padding-right:calc(var(--btn-padding-inline) + 2rem) !important;border-radius:1.5rem !important;appearance:none !important;background:none !important;border:none !important;color:currentColor !important;display:block;outline:none;font-weight:inherit !important;font-size:var(--btn-font-size) !important;line-height:var(--btn-line-height) !important;field-sizing:content !important;appearance:base-select !important}.btn:has(select) select option{font-size:1rem;text-align:left;color:var(--colour-primary);padding-inline:var(--menu-item-padding, 0.5rem);padding-block:var(--menu-item-padding, 0.5rem) !important;border-radius:.25rem !important}.btn:has(select) select option:not(:last-child){margin:var(--menu-item-margin, 0 0 0.25rem 0) !important}.btn:has(select) select option:hover{background:var(--colour-light) !important}.btn:has(select) select option:after{content:attr(data-email)}.btn:has(select) select::picker-icon{display:none}.btn:has(select) select::picker(select){appearance:base-select;background:var(--menu-bg, canvas);margin-block:var(--menu-margin, 0.25rem);padding:var(--menu-padding, 0.5rem) !important;border:none !important;border-radius:.5rem;box-shadow:0px 2px 9px rgba(0,0,0,.1);font-size:1rem}.btn:has(select) hr{height:1px !important;background-color:var(--menu-hr-border-color, var(--border-color, grey)) !important;width:100%;margin:var(--menu-item-margin, 0 0 0.25rem 0) !important;padding:0 !important}.btn:has(select) select option::checkmark{display:none}.btn:has(select) select selectedcontent span{display:none}.btn:has(select):after{position:absolute;top:0.625rem;right:1.5rem;content:"";height:1.5rem;width:1rem;display:inline-block;background:currentColor;mask-image:var(--icon-arrow);mask-size:100%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:100%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;vertical-align:bottom;margin-left:1rem;transform:rotate(90deg);pointer-events:none}.btn-action:has(select){padding-block:0;padding-right:2rem;font-size:1em}.btn-action:has(select) select{margin:0rem 0rem !important;padding-right:2rem !important;margin-right:-2rem !important;font-size:1rem !important}.btn-action:has(select):after{top:.2rem;right:.5rem}}@layer elements{.btn__group{display:flex;flex-direction:column;row-gap:var(--gap);reading-flow:source-order;margin-bottom:1.5rem;.btn-compact{max-width:fit-content;margin-inline:auto}}:where(.btn__group,iam-modal){reading-flow:source-order;.btn{margin-inline-end:0;width:100%;max-width:100%;text-align:center;white-space:normal;margin:0;&:not(:last-child){margin-right:0}}.btn-tertiary{max-width:fit-content;margin-inline:auto;order:3;reading-order:3}.btn-secondary{order:2;reading-order:2}.btn-primary{order:1;reading-order:1;margin:0;&:not(:last-child){margin:0}}}:is(iam-form,form) .btn__group{padding-top:1rem}@container (min-width: 36em){.btn__group{flex-direction:row;row-gap:0;gap:var(--gap);flex-wrap:wrap;.btn-tertiary{max-width:fit-content;margin-inline:0;margin-block:auto;order:1}.btn-secondary{order:2}.btn-primary{order:3}.btn-compact{margin-inline:0;margin-block:auto}}:where(iam-modal,.btn__group){.btn{max-width:fit-content;white-space:nowrap;margin-block:auto}}.btn__group{.btn-tertiary{reading-order:1}.btn-secondary{reading-order:2}.btn-primary{reading-order:3}}iam-modal{.btn-tertiary{reading-order:3;order:1}.btn-secondary{order:2;reading-order:2}.btn-primary{order:3;reading-order:1}}.btn__group.text-end{justify-content:flex-end}:is(iam-form,form) .btn__group{justify-content:flex-end;padding-top:3rem}iam-modal .btn__group:last-child .btn,dialog .btn__group:last-child .btn{margin-bottom:0}}}*,*::before,*::after{box-sizing:border-box}:host{display:contents}::slotted(iam-marketing:first-child:last-child){margin-bottom:0;min-height:100%;min-width:100%}/*# sourceMappingURL=assets/css/components/content.component.css.map */
|
|
6
|
+
@layer elements{*,*::before,*::after{box-sizing:border-box}button{border-radius:0;text-transform:none;margin:0;font-family:inherit;font-size:inherit;line-height:inherit}[role=button]{cursor:pointer}button:focus:not(:focus-visible){outline:0}:is(button,[type=button],[type=reset],[type=submit]){-webkit-appearance:button}:is(button,[type=button],[type=reset],[type=submit]):not(:disabled){cursor:pointer}.btn{--btn-margin: 1rem;--btn-padding-block: 0.75rem;--btn-padding-inline: 2.5rem;--btn-border-width: 2px;--btn-font-size: 1.125rem;--btn-line-height: 1.25rem;display:inline-block;font-weight:bold;text-align:left;text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;color:var(--colour-btn);font-size:var(--btn-font-size);line-height:var(--btn-line-height);padding:var(--btn-padding-block) var(--btn-padding-inline);border-radius:1.5rem;margin-bottom:var(--btn-margin);background:none;transition:border .5s,background .5s,color .5s;height:auto;max-width:fit-content;appearance:none;white-space:nowrap}@media screen and (min-width: 36em){.btn{--btn-margin: 1.5rem}}.btn:not(.btn-secondary)[class*=colour-]{--colour-btn-bg: var(--colour);--colour-btn-border: var(--colour)}.btn:is(.colour-primary,.colour-dark,.colour-danger,.colour-black){--colour-btn: #fcfcfc}.btn:not(.border-0){background:var(--colour-btn-bg);border:var(--btn-border-width) solid var(--colour-btn-border)}.btn:not(:last-child){margin-right:var(--btn-margin)}a:is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active) .btn,.btn:is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active){outline:0;text-decoration:none;background:var(--colour-btn-bg-hover);color:var(--colour-btn-hover);border-radius:1.5rem}a:is(:active,.active):not([disabled]) .btn,.btn:is(:active,.active):not([disabled]){filter:brightness(85%);transition:background .1s,color .1s;color:var(--colour-btn);border-radius:1.5rem}a:disabled .btn,.btn:disabled,[disabled] .btn,.btn[disabled]{opacity:.4;cursor:not-allowed}.btn.colour-success{--colour-btn-bg-hover: var(--colour);--colour-btn-border-hover: var(--colour);--colour-btn-hover: var(--colour-primary-theme);position:relative;padding-left:3.5rem;padding-right:3.5rem}a:is(:hover,:focus,.hover):not([disabled],:active,.active) .btn.colour-success,.btn.colour-success:is(:hover,:focus,.hover):not([disabled],:active,.active){padding-left:2.5rem;padding-right:2.5rem}a:is(:hover,:focus,.hover):not([disabled],:active,.active) .btn.colour-success:before,.btn.colour-success:is(:hover,:focus,.hover):not([disabled],:active,.active):before{content:"\uF00C";font-family:"Font Awesome 7 Pro";margin-right:1rem;font-style:inherit;width:1rem;display:inline-block;height:var(--btn-line-height);vertical-align:bottom}.btn.btn-sm{--btn-padding-block: 0.5rem;--btn-padding-inline: 2rem;--btn-margin: 0.5rem;--btn-font-size: 1rem}.btn[class*=fa-]:before{content:var(--fa);font-family:"Font Awesome 7 Pro";line-height:1em}.btn.btn[class*=fa-after]{padding-right:4rem}.btn.btn[class*=fa-after]:before{margin-right:0;margin-right:.375rem;position:absolute;right:1.5rem;top:50%;transform:translate(0, -50%)}.btn:not(.btn-compact):before{margin-right:1rem}.btn i[class*=fa-]{--fa-width: 1em;font-family:"Font Awesome 7 Pro";margin-right:1rem;line-height:1em;font-style:inherit}.btn i[class*=fa-]:not(:first-child){margin-left:1rem;margin-right:0}.btn.btn--prompt:after{content:"";height:var(--btn-line-height);width:1rem;display:inline-block;background:currentColor;mask-image:var(--icon-arrow);mask-size:100%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:100%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;vertical-align:bottom;margin-left:1rem}a:is(:hover,:focus,.hover):not([disabled],:active,.active) .btn.btn--prompt:after,.btn.btn--prompt:is(:hover,:focus,.hover):not([disabled],:active,.active):after{margin-left:1.5rem;margin-right:-0.5rem}.btn-filter:after{content:"\uF1DE";display:inline-block;margin-left:1em;margin-bottom:-0.15em;height:1em;width:1em;z-index:var(--index-focus);color:currentColor;font-weight:300;font-family:"Font Awesome 7 Pro"}}@layer elements{.btn-secondary{color:var(--colour-btn-secondary)}.btn-secondary:not(.border-0){background:var(--colour-btn-secondary-bg);border:2px solid var(--colour-btn-secondary-border)}a:is(:hover,:focus,.hover,:active,.active):not([disabled]) .btn-secondary,.btn-secondary:is(:hover,:focus,.hover,:focus-within,:active,.active):not([disabled]){background:var(--colour-btn-secondary-bg-hover);color:var(--colour-btn-secondary-hover)}}@layer elements{.btn.btn-tertiary{background-color:rgba(0,0,0,0);border:none;color:var(--colour-link);margin:0 var(--btn-margin) var(--btn-margin) 0;padding:0;font-size:1.125rem;font-weight:normal;line-height:1.5rem;min-height:1.5rem;position:relative}.btn.btn-tertiary:after{position:absolute;content:"";top:100%;left:50%;height:2px;width:100%;transform:translate(-50%, 0);background:var(--colour-underline);transition:width .5s}.btn.btn-tertiary.text-decoration-none:after{width:0%}.btn.btn-tertiary [class*=fa-]{margin-left:0;margin-right:.5rem}.btn.btn-tertiary [class*=fa-]:not(:first-child){margin-left:.5rem;margin-right:0}.btn.btn-tertiary:is(:hover,:focus,.hover,:focus-within):not([disabled],:disabled,:active,.active):after{width:60% !important}.btn.btn-tertiary:is(:active,.active):not([disabled],:disabled){color:var(--colour-active)}}@layer elements{.btn-action{--btn-border-width: 1px;--btn-padding-block: 0.3125rem /* 5px */;--btn-padding-inline: 0.3125rem /* 5px */;--btn-margin: 0.5rem;border-radius:.25rem !important;font-weight:400 !important;font-size:1rem;line-height:1.25rem;&:not(.btn-primary){color:var(--colour-heading)}&:not(.btn-primary):not(.border-0){background-color:var(--colour-canvas-2);border:var(--btn-border-width) solid var(--colour-muted)}&.btn[class*=fa-]:before{content:var(--fa);margin-right:.375rem}a:not(.btn-primary):is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active) &,&:not(.btn-primary):is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active){background:var(--colour-btn-action-hover-bg)}.btn-primary:is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active) &,&.btn-primary:is(:hover,:focus,.hover,:focus-within):not([disabled],:active,.active){filter:brightness(90%);background:var(--colour-btn-bg);border:var(--btn-border-width) solid var(--colour-btn-border);color:var(--colour-btn)}a:is(:active,.active):not([disabled]):not(.btn-primary) &,&:is(:active,.active):not([disabled]):not(.btn-primary){filter:brightness(85%);transition:all .1s;color:var(--colour-heading)}}.btn-action:not(.btn-compact).fa-compact-only:before{display:none !important}}@layer elements{.btn-compact{--compact-size: 3rem;padding:0 !important;margin-bottom:.5rem;text-align:center;width:var(--compact-size);min-width:var(--compact-size);max-width:var(--compact-size);height:var(--compact-size) !important;min-height:var(--compact-size) !important;max-height:var(--compact-size) !important;align-content:center;line-height:1 !important;text-indent:-500px;overflow:hidden;position:relative;font-size:1rem;&:not(:last-child){margin-right:.5rem}&:before{content:var(--fa);position:absolute;display:block;top:0;left:0;width:100%;height:100%;text-indent:0;line-height:calc(var(--compact-size) - .25rem);font-weight:900}&[class*=fa-]:before{line-height:calc(var(--compact-size) - .25rem)}&.btn-sm{--compact-size: 2.5rem;font-size:1rem;padding:0 !important}&.btn-action{--compact-size: 2rem;font-size:1rem;&:before{font-size:1em;font-weight:400}}&.btn-secondary{--colour-btn-bg: transparent;--colour-btn-border: transparent;border-color:transparent;&:not([class*=colour-]){--colour: var(--colour-light)}}&.btn-secondary:is(:hover,:focus,.hover,:active,.active,[aria-expanded],:focus-within):not([disabled]):not(.btn-collapse){background-color:var(--colour);color:var(--colour-primary-theme);border-color:var(--colour);&:is(.colour-primary,.colour-dark,.colour-danger,.colour-black){color:var(--colour-inverted)}}&[data-number]{position:relative}&[data-number]:after{content:attr(data-number);position:absolute;top:.5em;z-index:99;background:var(--colour-danger);height:1.5em;width:1.5em;border-radius:50%;text-indent:0;left:50%;font-size:.5em;line-height:1.5em;text-align:center;color:white;letter-spacing:-0.1em;font-family:arial,sans-serif}}@container style(--theme: dark){&[class*=fa-]:before{color:white}}.btn-compact{&:is(.fa-left,.fa-chevron-left,.fa-right,.fa-chevron-right,.fa-up,.fa-chevron-up,.fa-down,.fa-chevron-down,.fa-plus,.fa-bars,.fa-edit,.fa-envelope,.fa-calendar){--iso-display: block;--iso-font-size: 1.5rem;--iso-border-radius: 50%;--iso-text-indent: -500px}}@container style(--font-body){.btn-compact{font-size:var(--iso-font-size, 0.6rem) !important;text-indent:var(--iso-text-indent, 0px);white-space:initial;&:not(.btn-action){border-radius:var(--iso-border-radius, 0.25rem) !important}&:before{display:var(--iso-display, none);font-family:monospace !important;content:var(--iso) !important}}}@container style(--fa-font-regular){.btn-compact{text-indent:-500px;font-size:1rem !important;&:not(.btn-action){border-radius:50% !important}&:before{font-family:"Font Awesome 7 Pro" !important;content:var(--fa) !important;display:block}}}}@layer elements{.btn[popovertarget]{position:relative;anchor-name:--button2}.btn[popovertarget]>.fa-chevron-down{display:none}.btn[popovertarget]:not(:has(i)):after{content:"";display:inline-block;margin-right:.25em;margin-left:1em;height:.8em;width:.8em;z-index:var(--index-focus);background:currentColor;mask-image:var(--icon-arrow);mask-size:100%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:100%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;transform:rotate(90deg)}.btn[popovertarget][aria-pressed]:after{transform:rotate(270deg)}.btn:has(select){position:relative;padding:0;max-width:fit-content;min-width:fit-content;width:fit-content}.btn:has(select) select{all:unset !important;padding:var(--btn-padding-block) var(--btn-padding-inline) !important;padding-right:calc(var(--btn-padding-inline) + 2rem) !important;border-radius:1.5rem !important;appearance:none !important;background:none !important;border:none !important;color:currentColor !important;display:block;outline:none;font-weight:inherit !important;font-size:var(--btn-font-size) !important;line-height:var(--btn-line-height) !important;field-sizing:content !important;appearance:base-select !important}.btn:has(select) select option{font-size:1rem;text-align:left;color:var(--colour-primary);padding-inline:var(--menu-item-padding, 0.5rem);padding-block:var(--menu-item-padding, 0.5rem) !important;border-radius:.25rem !important}.btn:has(select) select option:not(:last-child){margin:var(--menu-item-margin, 0 0 0.25rem 0) !important}.btn:has(select) select option:hover{background:var(--colour-light) !important}.btn:has(select) select option:after{content:attr(data-email)}.btn:has(select) select::picker-icon{display:none}.btn:has(select) select::picker(select){appearance:base-select;background:var(--menu-bg, canvas);margin-block:var(--menu-margin, 0.25rem);padding:var(--menu-padding, 0.5rem) !important;border:none !important;border-radius:.5rem;box-shadow:0px 2px 9px rgba(0,0,0,.1);font-size:1rem}.btn:has(select) hr{height:1px !important;background-color:var(--menu-hr-border-color, var(--border-color, grey)) !important;width:100%;margin:var(--menu-item-margin, 0 0 0.25rem 0) !important;padding:0 !important}.btn:has(select) select option::checkmark{display:none}.btn:has(select) select selectedcontent span{display:none}.btn:has(select):after{position:absolute;top:.625rem;right:1.5rem;content:"";height:1.5rem;width:1rem;display:inline-block;background:currentColor;mask-image:var(--icon-arrow);mask-size:100%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon-arrow);-webkit-mask-size:100%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;vertical-align:bottom;margin-left:1rem;transform:rotate(90deg);pointer-events:none}.btn-action:has(select){padding-block:0;padding-right:2rem;font-size:1em}.btn-action:has(select) select{margin:0rem 0rem !important;padding-right:2rem !important;margin-right:-2rem !important;font-size:1rem !important}.btn-action:has(select):after{top:.2rem;right:.5rem}}@layer elements{.btn__group{display:flex;flex-direction:column;row-gap:var(--gap);reading-flow:source-order;margin-bottom:1.5rem;.btn-compact{max-width:fit-content;margin-inline:auto}}:where(.btn__group,iam-modal){reading-flow:source-order;.btn{margin-inline-end:0;width:100%;max-width:100%;text-align:center;white-space:normal;margin:0;&:not(:last-child){margin-right:0}}.btn-tertiary{max-width:fit-content;margin-block:0 !important;margin-inline:auto !important;order:3;reading-order:3}.btn-secondary{order:2;reading-order:2}.btn-primary{order:1;reading-order:1;margin:0;&:not(:last-child){margin:0}}}:is(iam-form,form) .btn__group{padding-top:1rem}@container (min-width: 36em){.btn__group{flex-direction:row;row-gap:0;gap:var(--gap);flex-wrap:wrap;.btn-tertiary{max-width:fit-content;margin-inline:0 !important;margin-block:auto;order:1}.btn-secondary{order:2}.btn-primary{order:3}.btn-compact{margin-inline:0;margin-block:auto}}:where(iam-modal,.btn__group){.btn{max-width:fit-content;white-space:nowrap;margin-block:auto}}.btn__group{.btn-tertiary{reading-order:1}.btn-secondary{reading-order:2}.btn-primary{reading-order:3}}iam-modal{.btn-tertiary{reading-order:3;order:1}.btn-secondary{order:2;reading-order:2}.btn-primary{order:3;reading-order:1}}.btn__group.text-end{justify-content:flex-end}:is(iam-form,form) .btn__group{justify-content:flex-end;padding-top:3rem}iam-modal .btn__group:last-child .btn,dialog .btn__group:last-child .btn{margin-bottom:0}}}*,*::before,*::after{box-sizing:border-box}:host{display:contents}::slotted(iam-marketing:first-child:last-child){margin-bottom:0;min-height:100%;min-width:100%}/*# sourceMappingURL=assets/css/components/content.component.css.map */
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
${this.hasAttribute("css")?`@import "${this.getAttribute("css")}";`:""}
|
|
@@ -11,5 +11,5 @@
|
|
|
11
11
|
<div class="content__container">
|
|
12
12
|
<slot></slot>
|
|
13
13
|
</div>
|
|
14
|
-
`,this.shadowRoot.appendChild(
|
|
14
|
+
`,this.shadowRoot.appendChild(r.content.cloneNode(!0))}connectedCallback(){const r=this,i=this.getAttribute("data-url"),a=o=>{const n=["card","marketing","notification"],s=document.body.hasAttribute("data-assets-location")?document.body.getAttribute("data-assets-location"):"/assets";n.forEach(t=>{t=="notification"&&document.querySelectorAll("[data-notification]").forEach(e=>{e.outerHTML=e.outerHTML.replace(/<div/g,"<iam-notification").replace(/<\/div>/g,"</iam-notification>")}),o.getElementsByTagName(`iam-${t}`).length!==0&&import(`${s}/js/components/${t}/${t}.component.js`).then(e=>{window.customElements.get(`iam-${t}`)||window.customElements.define(`iam-${t}`,e.default)}).catch(e=>{console.log(e.message)})})};if(i){const o=new XMLHttpRequest;o.open("GET",i,!0),o.onload=function(){if(this.status===200){const n=JSON.parse(this.responseText);r.innerHTML=`${n.content.rendered}`,a(r)}},o.send()}}}export{c as default};
|
|
15
15
|
//# sourceMappingURL=content.component.min.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* iamKey v7.
|
|
2
|
+
* iamKey v7.7.0
|
|
3
3
|
* Copyright 2022-2026 iamproperty
|
|
4
4
|
*/window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"customElementRegistered",element:"Dark mode button"});class i extends HTMLElement{constructor(){var e;super(),this.attachShadow({mode:"open"}),document.body.hasAttribute("data-assets-location")&&document.body.getAttribute("data-assets-location");const o=document.createElement("template");o.innerHTML=`
|
|
5
5
|
<style>::slotted(.toggle):after{--icon: var(--icon-light);background:red;mask-image:var(--icon);mask-size:100%;mask-repeat:no-repeat;mask-position:50% 50%;-webkit-mask-image:var(--icon);-webkit-mask-size:100%;-webkit-mask-repeat:no-repeat;-webkit-mask-position:50% 50%;z-index:2}::slotted(.toggle.dark-theme):after{--icon: var(--icon-dark)}/*# sourceMappingURL=assets/css/components/darkmode.component.css.map */
|