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