@iamproperty/components 7.7.1--beta14 → 7.7.1--beta16
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/README.md +25 -2
- package/assets/css/components/actionbar.component.css +1 -1
- package/assets/css/components/actionbar.component.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/advanced-select.component.css +1 -0
- package/assets/css/components/advanced-select.component.css.map +1 -0
- 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/bento-grid.global.css.map +1 -1
- package/assets/css/components/button.component.css +1 -0
- package/assets/css/components/button.component.css.map +1 -0
- 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/calendar.config.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 +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 +1 -1
- package/assets/css/components/carousel.config.css.map +1 -1
- package/assets/css/components/charts.config.css +1 -1
- package/assets/css/components/charts.config.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 -1
- package/assets/css/components/config.component.css.map +1 -1
- 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/filter-card.component.css.map +1 -1
- package/assets/css/components/header.component.css +1 -1
- package/assets/css/components/header.component.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/menu.global.css +1 -1
- package/assets/css/components/menu.global.css.map +1 -1
- package/assets/css/components/milestone.css +1 -1
- package/assets/css/components/milestone.css.map +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.docs.css +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/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/popover.component.css +1 -1
- package/assets/css/components/popover.component.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/rankings.component.css +1 -1
- package/assets/css/components/rankings.component.css.map +1 -1
- package/assets/css/components/rankings.global.css +1 -1
- package/assets/css/components/rankings.global.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/search.component.css +1 -0
- package/assets/css/components/search.component.css.map +1 -0
- 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/std-nav-standalone.component.css +1 -0
- package/assets/css/components/std-nav-standalone.component.css.map +1 -0
- 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.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/tabs.config.css +1 -1
- package/assets/css/components/tabs.config.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/video-card.component.css +1 -1
- package/assets/css/components/video-card.component.css.map +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/components/video.component.css +1 -1
- package/assets/css/components/video.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/elements/badge-tag.css +1 -1
- package/assets/css/elements/badge-tag.css.map +1 -1
- package/assets/css/elements/buttons--global.css +1 -1
- package/assets/css/elements/buttons--global.css.map +1 -1
- package/assets/css/elements/buttons--special.css +1 -1
- package/assets/css/elements/buttons--special.css.map +1 -1
- package/assets/css/elements/buttons.css +1 -1
- package/assets/css/elements/buttons.css.map +1 -1
- package/assets/css/elements/container.css +1 -1
- package/assets/css/elements/container.css.map +1 -1
- package/assets/css/elements/details.css +1 -1
- package/assets/css/elements/details.css.map +1 -1
- package/assets/css/elements/dialog.css +1 -1
- package/assets/css/elements/dialog.css.map +1 -1
- package/assets/css/elements/dropdown.css +1 -1
- package/assets/css/elements/dropdown.css.map +1 -1
- package/assets/css/elements/forms.css +1 -1
- package/assets/css/elements/forms.css.map +1 -1
- package/assets/css/elements/input.css +1 -1
- package/assets/css/elements/input.css.map +1 -1
- package/assets/css/elements/links--collapsible-side.css +1 -1
- package/assets/css/elements/links--collapsible-side.css.map +1 -1
- package/assets/css/elements/links--global.css +1 -1
- package/assets/css/elements/links--global.css.map +1 -1
- package/assets/css/elements/links.css +1 -1
- package/assets/css/elements/links.css.map +1 -1
- package/assets/css/elements/lists--tick-list.css +1 -1
- package/assets/css/elements/lists--tick-list.css.map +1 -1
- package/assets/css/elements/modal.css +1 -1
- package/assets/css/elements/modal.css.map +1 -1
- package/assets/css/elements/popover.css +1 -1
- package/assets/css/elements/popover.css.map +1 -1
- package/assets/css/elements/prefix.css +1 -1
- package/assets/css/elements/prefix.css.map +1 -1
- package/assets/css/elements/select.css +1 -0
- package/assets/css/elements/select.css.map +1 -0
- package/assets/css/elements/tooltips.css +1 -1
- package/assets/css/elements/tooltips.css.map +1 -1
- package/assets/css/elements/type.css +1 -1
- package/assets/css/elements/type.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 +5 -3
- package/assets/js/components/actionbar/actionbar.component.min.js +10 -8
- package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
- package/assets/js/components/address-lookup/address-lookup.component.js +12 -6
- package/assets/js/components/address-lookup/address-lookup.component.min.js +9 -7
- package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
- package/assets/js/components/advanced-select/advanced-select.component.js +8 -17
- package/assets/js/components/advanced-select/advanced-select.component.min.js +7 -17
- 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 +3 -3
- package/assets/js/components/barchart/barchart.component.min.js +5 -5
- package/assets/js/components/bento-grid/bento-grid.component.min.js +2 -2
- package/assets/js/components/button/button.component.js +49 -0
- package/assets/js/components/button/button.component.min.js +13 -0
- package/assets/js/components/button/button.component.min.js.map +1 -0
- package/assets/js/components/calendar/calendar.component.min.js +5 -5
- package/assets/js/components/card/card.component.min.js +21 -19
- package/assets/js/components/card/card.component.min.js.map +1 -1
- package/assets/js/components/carousel/carousel.component.js +144 -52
- package/assets/js/components/carousel/carousel.component.min.js +15 -21
- package/assets/js/components/carousel/carousel.component.min.js.map +1 -1
- package/assets/js/components/collapsible-side/collapsible-side.component.min.js +3 -3
- package/assets/js/components/config/config.component.min.js +8 -8
- package/assets/js/components/content/content.component.js +21 -5
- package/assets/js/components/content/content.component.min.js +5 -7
- package/assets/js/components/content/content.component.min.js.map +1 -1
- 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/doughnutchart/doughnutchart.component.min.js.map +1 -1
- package/assets/js/components/fileupload/fileupload.component.min.js +4 -4
- package/assets/js/components/filter-card/filter-card.component.min.js +20 -18
- package/assets/js/components/filter-card/filter-card.component.min.js.map +1 -1
- 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.min.js +2 -2
- package/assets/js/components/inline-edit/inline-edit.component.min.js +1 -1
- package/assets/js/components/input/input.component.min.js +2 -2
- package/assets/js/components/input-range/input-range.component.min.js +1 -1
- package/assets/js/components/marketing/marketing.component.min.js +1 -1
- package/assets/js/components/menu/menu.component.js +1 -0
- package/assets/js/components/menu/menu.component.min.js +3 -3
- package/assets/js/components/menu/menu.component.min.js.map +1 -1
- 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.min.js +4 -4
- package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
- package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +4 -4
- package/assets/js/components/multiselect/multiselect.component.min.js +4 -4
- package/assets/js/components/multiselect/multiselect.component.min.js.map +1 -1
- package/assets/js/components/nav/nav.component.js +4 -3
- 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.min.js +2 -2
- package/assets/js/components/pagination/pagination.component.min.js +4 -4
- package/assets/js/components/password/password.component.min.js +5 -5
- package/assets/js/components/popover/popover.component.min.js +4 -4
- package/assets/js/components/rank/rank.component.min.js +1 -1
- package/assets/js/components/rankings/rankings.component.min.js +3 -3
- package/assets/js/components/rating/rating.component.min.js +1 -1
- package/assets/js/components/record-card/record-card.component.min.js +18 -16
- package/assets/js/components/record-card/record-card.component.min.js.map +1 -1
- package/assets/js/components/search/search.component.js +9 -13
- package/assets/js/components/search/search.component.min.js +9 -18
- package/assets/js/components/search/search.component.min.js.map +1 -1
- package/assets/js/components/slider/slider.component.min.js +3 -3
- package/assets/js/components/split-button/split-button.component.js +1 -1
- package/assets/js/components/split-button/split-button.component.min.js +6 -6
- 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.min.js +11 -9
- package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js.map +1 -1
- package/assets/js/components/std-nav/std-nav.component.js +179 -0
- package/assets/js/components/std-nav/std-nav.component.min.js +66 -0
- package/assets/js/components/std-nav/std-nav.component.min.js.map +1 -0
- package/assets/js/components/std-nav-standalone/std-nav-standalone.component.js +60 -0
- package/assets/js/components/std-nav-standalone/std-nav-standalone.component.min.js +20 -0
- package/assets/js/components/std-nav-standalone/std-nav-standalone.component.min.js.map +1 -0
- package/assets/js/components/table/table.component.min.js +6 -6
- package/assets/js/components/table/table.component.min.js.map +1 -1
- package/assets/js/components/table-ajax/table-ajax.component.min.js +7 -7
- package/assets/js/components/table-ajax/table-ajax.component.min.js.map +1 -1
- package/assets/js/components/table-basic/table-basic.component.min.js +2 -2
- package/assets/js/components/table-no-submit/table-no-submit.component.min.js +4 -4
- package/assets/js/components/table-no-submit/table-no-submit.component.min.js.map +1 -1
- package/assets/js/components/table-submit/table-submit.component.min.js +6 -6
- package/assets/js/components/table-submit/table-submit.component.min.js.map +1 -1
- package/assets/js/components/tabs/tabs.component.min.js +4 -4
- package/assets/js/components/tabs/tabs.component.min.js.map +1 -1
- package/assets/js/components/tag/tag.component.min.js +3 -3
- package/assets/js/components/tooltip/tooltip.component.min.js +1 -1
- package/assets/js/components/video/video.component.min.js +5 -5
- package/assets/js/components/video-card/video-card.component.min.js +18 -16
- package/assets/js/components/video-card/video-card.component.min.js.map +1 -1
- package/assets/js/components/video-modal/video-modal.component.min.js +2 -2
- package/assets/js/components/word-count/word-count.component.min.js +1 -1
- package/assets/js/modules/advanced-select.js +30 -4
- package/assets/js/modules/card.module.js +16 -14
- package/assets/js/modules/carousel.js +11 -11
- package/assets/js/modules/nav.js +78 -0
- package/assets/js/modules/tabs.js +9 -1
- package/assets/js/scripts.bundle.js +1 -1
- package/assets/js/scripts.bundle.min.js +1 -1
- package/assets/sass/_corefiles.scss +1 -0
- package/assets/sass/_utilities.scss +1 -0
- package/assets/sass/components/actionbar.component.scss +15 -1
- package/assets/sass/components/address-lookup.component.scss +134 -2
- package/assets/sass/components/advanced-select.component.scss +59 -0
- package/assets/sass/components/bento-grid.global.scss +2 -2
- package/assets/sass/components/button.component.scss +5 -0
- package/assets/sass/components/calendar.component.scss +1 -1
- package/assets/sass/components/calendar.config.scss +1 -1
- package/assets/sass/components/card.component.scss +2 -2
- package/assets/sass/components/card.module.scss +8 -3
- package/assets/sass/components/carousel.component.scss +522 -519
- package/assets/sass/components/carousel.config.scss +4 -44
- package/assets/sass/components/charts.config.scss +1 -1
- package/assets/sass/components/config.component.scss +1 -1
- package/assets/sass/components/filter-card.component.scss +5 -5
- package/assets/sass/components/header.component.scss +1 -1
- package/assets/sass/components/menu.component.scss +21 -16
- package/assets/sass/components/menu.global.scss +7 -11
- package/assets/sass/components/milestone.scss +2 -2
- package/assets/sass/components/modal.component.scss +1 -0
- package/assets/sass/components/multiselect.scss +8 -0
- package/assets/sass/components/nav.component.scss +21 -10
- package/assets/sass/components/nav.docs.scss +1 -2
- package/assets/sass/components/nav.global.scss +174 -45
- package/assets/sass/components/pagination.scss +2 -2
- package/assets/sass/components/popover.component.scss +37 -2
- package/assets/sass/components/search.component.scss +2 -0
- package/assets/sass/components/split-button.component.scss +3 -1
- package/assets/sass/components/std-nav-standalone.component.scss +228 -0
- package/assets/sass/components/table-basic.global.scss +3 -3
- package/assets/sass/components/table.global.scss +1 -1
- package/assets/sass/components/tabs.config.scss +2 -2
- package/assets/sass/components/video.component.scss +1 -1
- package/assets/sass/elements/badge-tag.css +6 -2
- package/assets/sass/elements/buttons--global.css +4 -4
- package/assets/sass/elements/buttons--special.css +2 -53
- package/assets/sass/elements/container.scss +1 -1
- package/assets/sass/elements/details.css +3 -3
- package/assets/sass/elements/dialog.scss +9 -5
- package/assets/sass/elements/dropdown.css +188 -44
- package/assets/sass/elements/forms.scss +36 -522
- package/assets/sass/elements/input.scss +0 -7
- package/assets/sass/elements/links--collapsible-side.scss +1 -1
- package/assets/sass/elements/links--global.scss +5 -1
- package/assets/sass/elements/lists--tick-list.scss +2 -2
- package/assets/sass/elements/modal.scss +1 -1
- package/assets/sass/elements/popover.scss +1 -1
- package/assets/sass/elements/prefix.scss +1 -1
- package/assets/sass/elements/select.scss +238 -0
- package/assets/sass/elements/tooltips.scss +1 -1
- package/assets/sass/elements/type.css +10 -0
- package/assets/sass/email.scss +1 -1
- package/assets/sass/error.scss +0 -1
- package/assets/sass/foundations/colours.scss +0 -1
- package/assets/sass/foundations/debug.scss +6 -0
- package/assets/sass/foundations/reboot.scss +81 -1
- package/assets/sass/foundations/root.scss +20 -2
- package/assets/sass/main.scss +0 -1
- package/assets/sass/{_grid.scss → utilities/grid.scss} +120 -80
- package/assets/ts/components/actionbar/actionbar.component.ts +5 -3
- package/assets/ts/components/address-lookup/address-lookup.component.ts +18 -6
- package/assets/ts/components/advanced-select/advanced-select.component.ts +12 -17
- package/assets/ts/components/button/button.component.ts +66 -0
- package/assets/ts/components/carousel/carousel.component.ts +189 -58
- package/assets/ts/components/content/content.component.ts +33 -5
- package/assets/ts/components/menu/menu.component.ts +4 -0
- package/assets/ts/components/nav/nav.component.ts +5 -7
- package/assets/ts/components/search/search.component.ts +14 -13
- package/assets/ts/components/split-button/split-button.component.ts +1 -1
- package/assets/ts/components/std-address-lookup/std-address-lookup.component.ts +0 -1
- package/assets/ts/components/std-nav/std-nav.component.ts +235 -0
- package/assets/ts/components/std-nav-standalone/std-nav-standalone.component.ts +76 -0
- package/assets/ts/modules/advanced-select.ts +47 -7
- package/assets/ts/modules/card.module.ts +16 -14
- package/assets/ts/modules/carousel.ts +11 -11
- package/assets/ts/modules/nav.ts +91 -0
- package/assets/ts/modules/tabs.ts +10 -1
- package/dist/components.es.js +27 -27
- package/dist/components.umd.js +343 -272
- package/package.json +11 -10
- package/src/components/Button/Button.vue +20 -0
- package/src/components/STDNav/STDNav.vue +22 -0
- package/src/components/STDNavStandalone/STDNavStandalone.vue +22 -0
- package/assets/bootstrap/LICENSE +0 -22
- package/assets/bootstrap/README.md +0 -247
- package/assets/bootstrap/js/index.esm.js +0 -19
- package/assets/bootstrap/js/index.umd.js +0 -34
- package/assets/bootstrap/js/src/alert.js +0 -87
- package/assets/bootstrap/js/src/base-component.js +0 -85
- package/assets/bootstrap/js/src/button.js +0 -72
- package/assets/bootstrap/js/src/carousel.js +0 -475
- package/assets/bootstrap/js/src/collapse.js +0 -302
- package/assets/bootstrap/js/src/dom/data.js +0 -55
- package/assets/bootstrap/js/src/dom/event-handler.js +0 -320
- package/assets/bootstrap/js/src/dom/manipulator.js +0 -71
- package/assets/bootstrap/js/src/dom/selector-engine.js +0 -83
- package/assets/bootstrap/js/src/dropdown.js +0 -445
- package/assets/bootstrap/js/src/modal.js +0 -373
- package/assets/bootstrap/js/src/offcanvas.js +0 -283
- package/assets/bootstrap/js/src/popover.js +0 -97
- package/assets/bootstrap/js/src/scrollspy.js +0 -290
- package/assets/bootstrap/js/src/tab.js +0 -307
- package/assets/bootstrap/js/src/toast.js +0 -220
- package/assets/bootstrap/js/src/tooltip.js +0 -651
- package/assets/bootstrap/js/src/util/backdrop.js +0 -149
- package/assets/bootstrap/js/src/util/component-functions.js +0 -34
- package/assets/bootstrap/js/src/util/config.js +0 -66
- package/assets/bootstrap/js/src/util/focustrap.js +0 -115
- package/assets/bootstrap/js/src/util/index.js +0 -336
- package/assets/bootstrap/js/src/util/sanitizer.js +0 -118
- package/assets/bootstrap/js/src/util/scrollbar.js +0 -114
- package/assets/bootstrap/js/src/util/swipe.js +0 -146
- package/assets/bootstrap/js/src/util/template-factory.js +0 -160
- package/assets/bootstrap/package.json +0 -180
- package/assets/bootstrap/scss/_accordion.scss +0 -146
- package/assets/bootstrap/scss/_alert.scss +0 -71
- package/assets/bootstrap/scss/_badge.scss +0 -38
- package/assets/bootstrap/scss/_breadcrumb.scss +0 -40
- package/assets/bootstrap/scss/_button-group.scss +0 -142
- package/assets/bootstrap/scss/_buttons.scss +0 -186
- package/assets/bootstrap/scss/_card.scss +0 -234
- package/assets/bootstrap/scss/_carousel.scss +0 -229
- package/assets/bootstrap/scss/_close.scss +0 -40
- package/assets/bootstrap/scss/_containers.scss +0 -41
- package/assets/bootstrap/scss/_dropdown.scss +0 -248
- package/assets/bootstrap/scss/_forms.scss +0 -9
- package/assets/bootstrap/scss/_functions.scss +0 -302
- package/assets/bootstrap/scss/_grid.scss +0 -33
- package/assets/bootstrap/scss/_helpers.scss +0 -10
- package/assets/bootstrap/scss/_images.scss +0 -42
- package/assets/bootstrap/scss/_list-group.scss +0 -191
- package/assets/bootstrap/scss/_maps.scss +0 -54
- package/assets/bootstrap/scss/_mixins.scss +0 -43
- package/assets/bootstrap/scss/_modal.scss +0 -237
- package/assets/bootstrap/scss/_nav.scss +0 -172
- package/assets/bootstrap/scss/_navbar.scss +0 -276
- package/assets/bootstrap/scss/_offcanvas.scss +0 -143
- package/assets/bootstrap/scss/_pagination.scss +0 -109
- package/assets/bootstrap/scss/_placeholders.scss +0 -51
- package/assets/bootstrap/scss/_popover.scss +0 -196
- package/assets/bootstrap/scss/_progress.scss +0 -59
- package/assets/bootstrap/scss/_reboot.scss +0 -610
- package/assets/bootstrap/scss/_root.scss +0 -73
- package/assets/bootstrap/scss/_spinners.scss +0 -85
- package/assets/bootstrap/scss/_tables.scss +0 -164
- package/assets/bootstrap/scss/_toasts.scss +0 -70
- package/assets/bootstrap/scss/_tooltip.scss +0 -120
- package/assets/bootstrap/scss/_transitions.scss +0 -27
- package/assets/bootstrap/scss/_type.scss +0 -106
- package/assets/bootstrap/scss/_utilities.scss +0 -647
- package/assets/bootstrap/scss/_variables-dark.scss +0 -87
- package/assets/bootstrap/scss/_variables.scss +0 -1633
- package/assets/bootstrap/scss/bootstrap-grid.scss +0 -64
- package/assets/bootstrap/scss/bootstrap-reboot.scss +0 -9
- package/assets/bootstrap/scss/bootstrap-utilities.scss +0 -15
- package/assets/bootstrap/scss/bootstrap.scss +0 -51
- package/assets/bootstrap/scss/forms/_floating-labels.scss +0 -74
- package/assets/bootstrap/scss/forms/_form-check.scss +0 -175
- package/assets/bootstrap/scss/forms/_form-control.scss +0 -194
- package/assets/bootstrap/scss/forms/_form-range.scss +0 -91
- package/assets/bootstrap/scss/forms/_form-select.scss +0 -71
- package/assets/bootstrap/scss/forms/_form-text.scss +0 -11
- package/assets/bootstrap/scss/forms/_input-group.scss +0 -129
- package/assets/bootstrap/scss/forms/_labels.scss +0 -36
- package/assets/bootstrap/scss/forms/_validation.scss +0 -12
- package/assets/bootstrap/scss/helpers/_clearfix.scss +0 -3
- package/assets/bootstrap/scss/helpers/_color-bg.scss +0 -10
- package/assets/bootstrap/scss/helpers/_colored-links.scss +0 -12
- package/assets/bootstrap/scss/helpers/_focus-ring.scss +0 -5
- package/assets/bootstrap/scss/helpers/_icon-link.scss +0 -25
- package/assets/bootstrap/scss/helpers/_position.scss +0 -36
- package/assets/bootstrap/scss/helpers/_ratio.scss +0 -26
- package/assets/bootstrap/scss/helpers/_stacks.scss +0 -15
- package/assets/bootstrap/scss/helpers/_stretched-link.scss +0 -15
- package/assets/bootstrap/scss/helpers/_text-truncation.scss +0 -7
- package/assets/bootstrap/scss/helpers/_visually-hidden.scss +0 -8
- package/assets/bootstrap/scss/helpers/_vr.scss +0 -8
- package/assets/bootstrap/scss/mixins/_alert.scss +0 -15
- package/assets/bootstrap/scss/mixins/_backdrop.scss +0 -14
- package/assets/bootstrap/scss/mixins/_banner.scss +0 -9
- package/assets/bootstrap/scss/mixins/_border-radius.scss +0 -78
- package/assets/bootstrap/scss/mixins/_box-shadow.scss +0 -18
- package/assets/bootstrap/scss/mixins/_breakpoints.scss +0 -127
- package/assets/bootstrap/scss/mixins/_buttons.scss +0 -70
- package/assets/bootstrap/scss/mixins/_caret.scss +0 -64
- package/assets/bootstrap/scss/mixins/_clearfix.scss +0 -9
- package/assets/bootstrap/scss/mixins/_color-mode.scss +0 -21
- package/assets/bootstrap/scss/mixins/_color-scheme.scss +0 -7
- package/assets/bootstrap/scss/mixins/_container.scss +0 -11
- package/assets/bootstrap/scss/mixins/_deprecate.scss +0 -10
- package/assets/bootstrap/scss/mixins/_forms.scss +0 -152
- package/assets/bootstrap/scss/mixins/_gradients.scss +0 -47
- package/assets/bootstrap/scss/mixins/_grid.scss +0 -151
- package/assets/bootstrap/scss/mixins/_image.scss +0 -16
- package/assets/bootstrap/scss/mixins/_list-group.scss +0 -24
- package/assets/bootstrap/scss/mixins/_lists.scss +0 -7
- package/assets/bootstrap/scss/mixins/_pagination.scss +0 -10
- package/assets/bootstrap/scss/mixins/_reset-text.scss +0 -17
- package/assets/bootstrap/scss/mixins/_resize.scss +0 -6
- package/assets/bootstrap/scss/mixins/_table-variants.scss +0 -24
- package/assets/bootstrap/scss/mixins/_text-truncate.scss +0 -8
- package/assets/bootstrap/scss/mixins/_transition.scss +0 -26
- package/assets/bootstrap/scss/mixins/_utilities.scss +0 -97
- package/assets/bootstrap/scss/mixins/_visually-hidden.scss +0 -29
- package/assets/bootstrap/scss/utilities/_api.scss +0 -47
- package/assets/bootstrap/scss/vendor/_rfs.scss +0 -354
- package/assets/favicons/README.md +0 -21
- package/assets/ts/README.md +0 -12
- package/assets/ts/components/actionbar/README.md +0 -56
- package/assets/ts/components/applied-filters/README.md +0 -20
- package/assets/ts/components/bento-grid/README.md +0 -31
- package/assets/ts/components/carousel/README.md +0 -38
- package/assets/ts/components/chart/README.md +0 -35
- package/assets/ts/components/collapsible-side/README.md +0 -38
- package/assets/ts/components/filterlist/README.md +0 -32
- package/assets/ts/components/header/README.md +0 -38
- package/assets/ts/components/inline-edit/README.md +0 -31
- package/assets/ts/components/multiselect/README.md +0 -35
- package/assets/ts/components/nav/README.md +0 -57
- package/assets/ts/components/notification/README.md +0 -47
- package/assets/ts/components/pagination/README.md +0 -37
- package/assets/ts/components/search/README.md +0 -35
- package/assets/ts/components/slider/README.md +0 -26
- package/assets/ts/components/table/README.md +0 -40
- package/assets/ts/components/table-basic/README.md +0 -40
- package/assets/ts/components/tabs/README.md +0 -34
- package/src/components/Accordion/README.md +0 -31
- package/src/components/Actionbar/README.md +0 -41
- package/src/components/AppliedFilters/README.md +0 -5
- package/src/components/Banner/README.md +0 -22
- package/src/components/Card/README.md +0 -24
- package/src/components/Carousel/README.md +0 -20
- package/src/components/Chart/README.md +0 -17
- package/src/components/CollapsibleSideMenu/README.md +0 -23
- package/src/components/FileUpload/README.md +0 -13
- package/src/components/Filterlist/README.md +0 -17
- package/src/components/Header/README.md +0 -27
- package/src/components/InlineEdit/README.md +0 -7
- package/src/components/Input/README.md +0 -17
- package/src/components/Marketing/README.md +0 -20
- package/src/components/Multiselect/README.md +0 -12
- package/src/components/Nav/README.md +0 -42
- package/src/components/Nav-old/README.md +0 -22
- package/src/components/NoteFeed/README.md +0 -16
- package/src/components/Notification/README.md +0 -32
- package/src/components/Pagination/README.md +0 -22
- package/src/components/PropertySearchbar/README.md +0 -25
- package/src/components/Search/README.md +0 -11
- package/src/components/Slider/README.md +0 -11
- package/src/components/Snapshot/README.md +0 -20
- package/src/components/SplitButton/README.md +0 -19
- package/src/components/Stepper/README.md +0 -32
- package/src/components/Table/README.md +0 -49
- package/src/components/Tabs/README.md +0 -29
- package/src/components/Testimonial/README.md +0 -25
- package/src/components/Timeline/README.md +0 -18
- package/src/foundations/Logo/README.md +0 -21
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
import Cookies from '../../../../node_modules/js-cookie/dist/js.cookie.mjs';
|
|
2
|
+
import iamNav from '../nav/nav.component';
|
|
3
|
+
|
|
4
|
+
// Data layer Web component created
|
|
5
|
+
declare global {
|
|
6
|
+
interface Window {
|
|
7
|
+
dataLayer: Array<object>;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class iamSTDNav extends HTMLElement {
|
|
13
|
+
constructor() {
|
|
14
|
+
super();
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
loadNavData = async(): any => {
|
|
18
|
+
|
|
19
|
+
const ajaxURL = '/nav.json';
|
|
20
|
+
|
|
21
|
+
// Setup controller vars if not already set
|
|
22
|
+
if (!window.controller) window.controller = [];
|
|
23
|
+
|
|
24
|
+
// Abort if controller already present for this url
|
|
25
|
+
if (window.controller[ajaxURL]) window.controller[ajaxURL].abort();
|
|
26
|
+
|
|
27
|
+
// Create a new controller so it can be aborted if new fetch made
|
|
28
|
+
window.controller[ajaxURL] = new AbortController();
|
|
29
|
+
const { signal } = window.controller[ajaxURL];
|
|
30
|
+
|
|
31
|
+
try {
|
|
32
|
+
return await fetch(ajaxURL, {
|
|
33
|
+
signal: signal,
|
|
34
|
+
method: 'get',
|
|
35
|
+
credentials: 'same-origin',
|
|
36
|
+
headers: new Headers({
|
|
37
|
+
'Content-Type': 'application/json',
|
|
38
|
+
Accept: 'application/json',
|
|
39
|
+
'X-Requested-With': 'XMLHttpRequest',
|
|
40
|
+
'X-XSRF-TOKEN': Cookies.get('XSRF-TOKEN'),
|
|
41
|
+
}),
|
|
42
|
+
})
|
|
43
|
+
.then((response) => response.json())
|
|
44
|
+
.then((response) => {
|
|
45
|
+
// populate datalist
|
|
46
|
+
let listString = '';
|
|
47
|
+
|
|
48
|
+
const data = response['data'] ? response['data'] : response;
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
return data;
|
|
52
|
+
});
|
|
53
|
+
} catch (error) {
|
|
54
|
+
if (error?.name === 'AbortError') {
|
|
55
|
+
return true;
|
|
56
|
+
}
|
|
57
|
+
console.log(error);
|
|
58
|
+
return 'There has been a problem. Please try again in a few moments.';
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
defaultToSecondary = (): void => {
|
|
63
|
+
|
|
64
|
+
// Set links and details to secondary slot
|
|
65
|
+
Array.from(this.querySelectorAll(':scope > a, :scope > details')).forEach((element) => {
|
|
66
|
+
|
|
67
|
+
element.setAttribute('slot','secondary');
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
const defaultContent = this.innerHTML;
|
|
71
|
+
this.outerHTML = `${defaultContent}`;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
defaultToNav = ():void => {
|
|
75
|
+
|
|
76
|
+
const defaultContent = this.innerHTML;
|
|
77
|
+
this.innerHTML = `<iam-nav>
|
|
78
|
+
${defaultContent}
|
|
79
|
+
</iam-nav>`;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
defaultToStandalone = ():void => {
|
|
83
|
+
const defaultContent = this.innerHTML;
|
|
84
|
+
this.wrapper.innerHTML = `<div class="container">${defaultContent}</div>`;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
populateLinks = (data):void => {
|
|
88
|
+
|
|
89
|
+
let html = ``;
|
|
90
|
+
|
|
91
|
+
data.forEach((link) => {
|
|
92
|
+
|
|
93
|
+
html += `
|
|
94
|
+
<a href="${link.url}">${link.title}</a>`;
|
|
95
|
+
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
return html;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
populateSections = (data):void => {
|
|
102
|
+
|
|
103
|
+
let html = ``;
|
|
104
|
+
|
|
105
|
+
data.forEach((section) => {
|
|
106
|
+
|
|
107
|
+
html += `<span class="section ${section.class}">
|
|
108
|
+
<span class="lead text-heading d-block">${section.enabled == "false" && section.marketing ? section.marketing : section.title}</span>
|
|
109
|
+
${this.populateLinks(section.links)}
|
|
110
|
+
</span>`;
|
|
111
|
+
});
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
return html;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
populateNav = (data):void => {
|
|
120
|
+
|
|
121
|
+
let html = ``;
|
|
122
|
+
|
|
123
|
+
data.forEach((feature) => {
|
|
124
|
+
|
|
125
|
+
if(feature.attributes.sections)
|
|
126
|
+
html += `<details name="megamenu"><summary>${feature.attributes.title}</summary><div data-title="${feature.attributes.title}">${this.populateSections(feature.attributes.sections)}</div></details>`;
|
|
127
|
+
else if(feature.attributes.links)
|
|
128
|
+
html += `<details name="megamenu"><summary>${feature.attributes.title}</summary><div data-title="${feature.attributes.title}">${this.populateLinks(feature.attributes.links)}</div></details>`;
|
|
129
|
+
else
|
|
130
|
+
html += `<a href="/">${feature.attributes.title}</a>`;
|
|
131
|
+
});
|
|
132
|
+
|
|
133
|
+
return html;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
transformToSecondary = (data):void => {
|
|
137
|
+
|
|
138
|
+
this.innerHTML = this.populateNav(data);
|
|
139
|
+
|
|
140
|
+
// Set links and details to secondary slot
|
|
141
|
+
Array.from(this.querySelectorAll(':scope > a, :scope > details')).forEach((element) => {
|
|
142
|
+
|
|
143
|
+
element.setAttribute('slot','secondary');
|
|
144
|
+
});
|
|
145
|
+
|
|
146
|
+
const defaultContent = this.innerHTML;
|
|
147
|
+
this.outerHTML = `${defaultContent}`;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
transformToStandalone = (data):void => {
|
|
151
|
+
|
|
152
|
+
this.wrapper.innerHTML = `<div class="container"><details><summary>Products</summary><div class="iam-nav">${this.populateNav(data)}</div></details></div>`;
|
|
153
|
+
|
|
154
|
+
// Set links and details to secondary slot
|
|
155
|
+
Array.from(this.wrapper.querySelectorAll('.iam-nav > a, .iam-nav > details')).forEach((element) => {
|
|
156
|
+
|
|
157
|
+
element.setAttribute('slot','secondary');
|
|
158
|
+
});
|
|
159
|
+
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
transformToNav = (data):void => {
|
|
163
|
+
this.innerHTML = `<iam-nav>
|
|
164
|
+
<a href="/" class="brand brand--property" slot="logo">
|
|
165
|
+
<svg>
|
|
166
|
+
<title>iam key</title>
|
|
167
|
+
<use xlink:href="/svg/logo.svg#logo-property"></use>
|
|
168
|
+
</svg>
|
|
169
|
+
</a>
|
|
170
|
+
${this.populateNav(data)}
|
|
171
|
+
</iam-nav>`;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
async connectedCallback(): void {
|
|
175
|
+
|
|
176
|
+
this.wrapper = this.shadowRoot?.querySelector('.wrapper');
|
|
177
|
+
|
|
178
|
+
if (!window.customElements.get(`iam-nav`))
|
|
179
|
+
window.customElements.define(`iam-nav`, iamNav);
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
if(this.hasAttribute('data-hub')){
|
|
183
|
+
this.defaultToNav();
|
|
184
|
+
}
|
|
185
|
+
else if (!this.closest('iam-nav')){
|
|
186
|
+
this.defaultToStandalone();
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
//this.defaultToSecondary(); TODO: change this to show default content but still be able to update
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
const data = await this.loadNavData().then(
|
|
193
|
+
(data) => {
|
|
194
|
+
if(typeof data == 'string'){
|
|
195
|
+
|
|
196
|
+
return data;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
//console.log(data);
|
|
200
|
+
if(this.hasAttribute('data-hub')){
|
|
201
|
+
this.transformToNav(data);
|
|
202
|
+
}
|
|
203
|
+
else if(!this.closest('iam-nav')){
|
|
204
|
+
this.transformToStandalone(data);
|
|
205
|
+
}
|
|
206
|
+
else {
|
|
207
|
+
this.transformToSecondary(data);
|
|
208
|
+
//this.transformToNav(data);
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
return true;
|
|
212
|
+
}
|
|
213
|
+
);
|
|
214
|
+
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
static get observedAttributes(): any {
|
|
218
|
+
return [];
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
attributeChangedCallback(attrName, oldVal, newVal): void {
|
|
222
|
+
const addressComponent = this.querySelector('iam-address-lookup');
|
|
223
|
+
|
|
224
|
+
switch (attrName) {
|
|
225
|
+
case 'data-url': {
|
|
226
|
+
if (oldVal != newVal && addressComponent) {
|
|
227
|
+
addressComponent.setAttribute('data-url', newVal + '?search_string=');
|
|
228
|
+
}
|
|
229
|
+
break;
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
export default iamSTDNav;
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import {populateNav,loadNavData} from '../../modules/nav';
|
|
2
|
+
import Cookies from '../../../../node_modules/js-cookie/dist/js.cookie.mjs';
|
|
3
|
+
|
|
4
|
+
// Data layer Web component created
|
|
5
|
+
declare global {
|
|
6
|
+
interface Window {
|
|
7
|
+
dataLayer: Array<object>;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
class iamSTDNavStandalone extends HTMLElement {
|
|
12
|
+
constructor() {
|
|
13
|
+
super();
|
|
14
|
+
|
|
15
|
+
this.attachShadow({ mode: 'open' });
|
|
16
|
+
|
|
17
|
+
const assetLocation = document.body.hasAttribute('data-assets-location')
|
|
18
|
+
? document.body.getAttribute('data-assets-location')
|
|
19
|
+
: '/assets';
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
const loadCSS = `@import "${assetLocation}/css/components/std-nav-standalone.component.css";`;
|
|
23
|
+
|
|
24
|
+
const template = document.createElement('template');
|
|
25
|
+
template.innerHTML = `
|
|
26
|
+
<style id="styles">
|
|
27
|
+
${loadCSS}
|
|
28
|
+
|
|
29
|
+
${this.hasAttribute('css') ? `@import "${this.getAttribute('css')}";` : ``}
|
|
30
|
+
</style>
|
|
31
|
+
<div class="wrapper">
|
|
32
|
+
<slot></slot>
|
|
33
|
+
</div>
|
|
34
|
+
<div class="backdrop" part="backdrop"></div>
|
|
35
|
+
`;
|
|
36
|
+
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
defaultToStandalone = ():void => {
|
|
40
|
+
const defaultContent = this.innerHTML;
|
|
41
|
+
this.wrapper.innerHTML = `<div class="container">${defaultContent}</div>`;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
transformToStandalone = (data):void => {
|
|
45
|
+
|
|
46
|
+
this.wrapper.innerHTML = `<div class="container"><details><summary>Products</summary><div class="iam-nav">${populateNav(data)}</div></details></div>`;
|
|
47
|
+
|
|
48
|
+
// Set links and details to secondary slot
|
|
49
|
+
Array.from(this.wrapper.querySelectorAll('.iam-nav > a, .iam-nav > details')).forEach((element) => {
|
|
50
|
+
|
|
51
|
+
element.setAttribute('slot','secondary');
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
async connectedCallback(): void {
|
|
57
|
+
|
|
58
|
+
this.wrapper = this.shadowRoot?.querySelector('.wrapper');
|
|
59
|
+
this.defaultToStandalone();
|
|
60
|
+
|
|
61
|
+
const data = await loadNavData(Cookies).then(
|
|
62
|
+
(data) => {
|
|
63
|
+
if(typeof data == 'string'){
|
|
64
|
+
|
|
65
|
+
return data;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
this.transformToStandalone(data);
|
|
69
|
+
|
|
70
|
+
return true;
|
|
71
|
+
}
|
|
72
|
+
);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export default iamSTDNavStandalone;
|
|
@@ -3,6 +3,15 @@ function advancedSelect(advancedSelect, displayInputField, datalist, isSearch =
|
|
|
3
3
|
|
|
4
4
|
const datalistWrapper = datalist.closest('.datalist__wrapper') ? datalist.closest('.datalist__wrapper') : datalist;
|
|
5
5
|
|
|
6
|
+
datalistWrapper.setAttribute('slot','datalist');
|
|
7
|
+
|
|
8
|
+
if(advancedSelect.querySelector('.suffix')){
|
|
9
|
+
advancedSelect.querySelector('.suffix')?.setAttribute('slot','suffix');
|
|
10
|
+
advancedSelect.shadowRoot.querySelector('.suffix')?.innerHTML = '<slot name="suffix"></slot>';
|
|
11
|
+
advancedSelect.shadowRoot.querySelector('.suffix')?.classList = "";
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
|
|
6
15
|
// Hide the default datalist
|
|
7
16
|
displayInputField.setAttribute('data-list', displayInputField.getAttribute('list'));
|
|
8
17
|
displayInputField.setAttribute('list', '');
|
|
@@ -13,6 +22,23 @@ function advancedSelect(advancedSelect, displayInputField, datalist, isSearch =
|
|
|
13
22
|
if(displayInputField.hasAttribute('placeholder'))
|
|
14
23
|
displayInputField.setAttribute('data-original-placeholder', displayInputField.getAttribute('placeholder'));
|
|
15
24
|
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
const checkIfEmpty = (): void => {
|
|
28
|
+
|
|
29
|
+
if(displayInputField.value == ""){
|
|
30
|
+
advancedSelect.classList.add('has-empty-input');
|
|
31
|
+
displayInputField.classList.add('empty');
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
advancedSelect.classList.remove('has-empty-input');
|
|
35
|
+
displayInputField.classList.remove('empty');
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
checkIfEmpty();
|
|
41
|
+
|
|
16
42
|
displayInputField.addEventListener('focus', function () {
|
|
17
43
|
|
|
18
44
|
if(displayInputField.value != ""){
|
|
@@ -61,7 +87,8 @@ function advancedSelect(advancedSelect, displayInputField, datalist, isSearch =
|
|
|
61
87
|
}
|
|
62
88
|
|
|
63
89
|
option.classList.add('active');
|
|
64
|
-
|
|
90
|
+
|
|
91
|
+
checkIfEmpty();
|
|
65
92
|
setTimeout(() => {
|
|
66
93
|
advancedSelect.dispatchEvent(new CustomEvent('update-value', {
|
|
67
94
|
detail: {
|
|
@@ -73,9 +100,12 @@ function advancedSelect(advancedSelect, displayInputField, datalist, isSearch =
|
|
|
73
100
|
}
|
|
74
101
|
});
|
|
75
102
|
|
|
103
|
+
|
|
76
104
|
displayInputField.addEventListener('input', function () {
|
|
77
105
|
displayInputField.removeAttribute('data-value');
|
|
78
106
|
currentFocus = -1;
|
|
107
|
+
|
|
108
|
+
checkIfEmpty();
|
|
79
109
|
|
|
80
110
|
if (advancedSelect.tagName != "IAM-ADDRESS-LOOKUP") {
|
|
81
111
|
const text = displayInputField.value.toUpperCase();
|
|
@@ -127,13 +157,19 @@ function advancedSelect(advancedSelect, displayInputField, datalist, isSearch =
|
|
|
127
157
|
}
|
|
128
158
|
|
|
129
159
|
// Add the empty button
|
|
130
|
-
displayInputField
|
|
131
|
-
.closest('
|
|
132
|
-
.insertAdjacentHTML(
|
|
160
|
+
if(displayInputField.closest('.input__wrapper')){
|
|
161
|
+
displayInputField.closest('.input__wrapper').insertAdjacentHTML(
|
|
133
162
|
'beforeend',
|
|
134
|
-
'<button class="
|
|
163
|
+
'<button class="clear-search btn btn-action" type="button"><i class="fa-light fa-times me-0"></i></button>'
|
|
135
164
|
);
|
|
136
|
-
|
|
165
|
+
}
|
|
166
|
+
else if(advancedSelect.shadowRoot.querySelector('.input__wrapper')){
|
|
167
|
+
console.log(advancedSelect.shadowRoot.querySelector('.input__wrapper'));
|
|
168
|
+
advancedSelect.shadowRoot.querySelector('.input__wrapper').insertAdjacentHTML(
|
|
169
|
+
'beforeend',
|
|
170
|
+
'<button class="clear-search btn btn-action" type="button"><i class="fa-light fa-times me-0"></i></button>'
|
|
171
|
+
);
|
|
172
|
+
}
|
|
137
173
|
|
|
138
174
|
const emptyField = (): void => {
|
|
139
175
|
const originalInput = advancedSelect.querySelector('input[type="hidden"]') as HTMLInputElement | null;
|
|
@@ -151,6 +187,7 @@ function advancedSelect(advancedSelect, displayInputField, datalist, isSearch =
|
|
|
151
187
|
|
|
152
188
|
displayInputField.removeAttribute('data-value');
|
|
153
189
|
displayInputField.value = '';
|
|
190
|
+
displayInputField.classList.add('empty');
|
|
154
191
|
|
|
155
192
|
for (const optionInner of datalist.options) {
|
|
156
193
|
optionInner.classList.remove('active');
|
|
@@ -168,9 +205,12 @@ function advancedSelect(advancedSelect, displayInputField, datalist, isSearch =
|
|
|
168
205
|
text: '',
|
|
169
206
|
},
|
|
170
207
|
}));
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
checkIfEmpty();
|
|
171
211
|
}
|
|
172
212
|
|
|
173
|
-
const closeBtn = advancedSelect.querySelector('.
|
|
213
|
+
const closeBtn = advancedSelect.querySelector('.clear-search') ? advancedSelect.querySelector('.clear-search') : advancedSelect.shadowRoot.querySelector('.clear-search');
|
|
174
214
|
|
|
175
215
|
closeBtn.addEventListener('click', function (e) {
|
|
176
216
|
|
|
@@ -1,17 +1,19 @@
|
|
|
1
|
-
export const cardHTML = `<div class="
|
|
2
|
-
<
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
<
|
|
6
|
-
<
|
|
7
|
-
<
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
<
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
<
|
|
1
|
+
export const cardHTML = `<div class="wrapper">
|
|
2
|
+
<div class="card__head" part="head">
|
|
3
|
+
<slot name="head"></slot>
|
|
4
|
+
</div>
|
|
5
|
+
<div class="card__badges"><slot name="badges"></slot></div>
|
|
6
|
+
<slot name="checkbox" class="activate-prevent-hover"></slot>
|
|
7
|
+
<div class="card__body" part="body">
|
|
8
|
+
<slot></slot>
|
|
9
|
+
<slot name="secondary" part="secondary"></slot>
|
|
10
|
+
</div>
|
|
11
|
+
<div class="card__details" part="details">
|
|
12
|
+
<slot name="details"></slot>
|
|
13
|
+
</div>
|
|
14
|
+
<div class="card__footer" part="footer">
|
|
15
|
+
<slot name="footer"></slot>
|
|
16
|
+
</div>
|
|
15
17
|
</div>`;
|
|
16
18
|
|
|
17
19
|
export const setupCard = (cardComponent: any): void => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export const generateThumbnailList = function (carouselComponent): any {
|
|
2
2
|
const thumbnailImages = [];
|
|
3
3
|
|
|
4
|
-
Array.from(carouselComponent.querySelectorAll(':scope > div')).forEach((slide, index) => {
|
|
4
|
+
Array.from(carouselComponent.querySelectorAll(':scope > :is(div,iam-card)')).forEach((slide, index) => {
|
|
5
5
|
if (slide.hasAttribute('data-thumbnail')) {
|
|
6
6
|
thumbnailImages[index] = slide.getAttribute('data-thumbnail');
|
|
7
7
|
}
|
|
@@ -11,7 +11,7 @@ export const generateThumbnailList = function (carouselComponent): any {
|
|
|
11
11
|
};
|
|
12
12
|
|
|
13
13
|
export const generatePipsHTML = function (carouselComponent, thumbnailImages): string {
|
|
14
|
-
const itemCount = carouselComponent.querySelectorAll(':scope > div').length;
|
|
14
|
+
const itemCount = carouselComponent.querySelectorAll(':scope > :is(div,iam-card)').length;
|
|
15
15
|
|
|
16
16
|
let pips = '';
|
|
17
17
|
for (let i = 1; i <= itemCount; i++) {
|
|
@@ -53,9 +53,9 @@ export const carousel = function (carouselComponent): void {
|
|
|
53
53
|
const carouselInner = carouselElement.querySelector('.carousel__inner');
|
|
54
54
|
const carouselControls = carouselElement.querySelector('.carousel__controls');
|
|
55
55
|
const carouselProgress = carouselElement.querySelector('.carousel__progress [type="range"]');
|
|
56
|
-
const itemCount = carouselComponent.querySelectorAll(':scope > div').length;
|
|
56
|
+
const itemCount = carouselComponent.querySelectorAll(':scope > :is(div,iam-card)').length;
|
|
57
57
|
let scrollArea = carouselInner.clientWidth;
|
|
58
|
-
let itemWidth = carouselComponent.querySelector(':scope > div').scrollWidth;
|
|
58
|
+
let itemWidth = carouselComponent.querySelector(':scope > :is(div,iam-card)').scrollWidth;
|
|
59
59
|
let visibleItems = Math.round(scrollArea / itemWidth);
|
|
60
60
|
|
|
61
61
|
carouselProgress.setAttribute('min', 1);
|
|
@@ -90,8 +90,8 @@ export const carousel = function (carouselComponent): void {
|
|
|
90
90
|
const scrollLeft = carouselInner.scrollLeft;
|
|
91
91
|
let targetSlide = Math.round((scrollLeft / scrollWidth) * itemCount) + 1;
|
|
92
92
|
|
|
93
|
-
const itemWidth = carouselComponent.querySelector(':scope > div').scrollWidth;
|
|
94
|
-
const lastItemOffset = carouselComponent.querySelector(':scope > div:last-child').offsetLeft;
|
|
93
|
+
const itemWidth = carouselComponent.querySelector(':scope > :is(div,iam-card)').scrollWidth;
|
|
94
|
+
const lastItemOffset = carouselComponent.querySelector(':scope > :is(div,iam-card):last-child').offsetLeft;
|
|
95
95
|
//+60px here is to account for when the next offscreen slide is visible beneath the next arrow
|
|
96
96
|
const lastItemInView =
|
|
97
97
|
carouselInner.scrollLeft + scrollArea + carouselInner.getBoundingClientRect().left >= lastItemOffset + 60;
|
|
@@ -176,11 +176,11 @@ export const carousel = function (carouselComponent): void {
|
|
|
176
176
|
function (e) {
|
|
177
177
|
const scrollArea = carouselInner.clientWidth;
|
|
178
178
|
//const scrollWidth = carouselInner.scrollWidth;
|
|
179
|
-
const itemWidth = carouselComponent.querySelector(':scope > div').scrollWidth;
|
|
179
|
+
const itemWidth = carouselComponent.querySelector(':scope > :is(div,iam-card)').scrollWidth;
|
|
180
180
|
|
|
181
181
|
const visibleItems = Math.round(scrollArea / itemWidth);
|
|
182
182
|
|
|
183
|
-
const lastItemOffset = carouselComponent.querySelector(':scope > div:last-child').offsetLeft;
|
|
183
|
+
const lastItemOffset = carouselComponent.querySelector(':scope > :is(div,iam-card):last-child').offsetLeft;
|
|
184
184
|
const lastItemInView =
|
|
185
185
|
carouselInner.scrollLeft + scrollArea + carouselInner.getBoundingClientRect().left >= lastItemOffset + 60;
|
|
186
186
|
|
|
@@ -229,7 +229,7 @@ export const carousel = function (carouselComponent): void {
|
|
|
229
229
|
clearInterval(stepperInterval);
|
|
230
230
|
stepperInterval = setInterval(function () {
|
|
231
231
|
scrollArea = carouselInner.clientWidth;
|
|
232
|
-
itemWidth = carouselComponent.querySelector(':scope > div').scrollWidth;
|
|
232
|
+
itemWidth = carouselComponent.querySelector(':scope > :is(div,iam-card)').scrollWidth;
|
|
233
233
|
visibleItems = Math.round(scrollArea / itemWidth);
|
|
234
234
|
carouselProgress.setAttribute('step', visibleItems);
|
|
235
235
|
progressMax = getProgressMax(itemCount, visibleItems);
|
|
@@ -276,10 +276,10 @@ export const updateCarousel = function (carouselComponent): void {
|
|
|
276
276
|
const carouselInner = carouselElement.querySelector('.carousel__inner');
|
|
277
277
|
const carouselControls = carouselElement.querySelector('.carousel__controls');
|
|
278
278
|
const carouselProgress = carouselElement.querySelector('.carousel__progress [type="range"]');
|
|
279
|
-
const itemCount = carouselComponent.querySelectorAll(':scope > div').length;
|
|
279
|
+
const itemCount = carouselComponent.querySelectorAll(':scope > :is(div,iam-card)').length;
|
|
280
280
|
|
|
281
281
|
let scrollArea = carouselInner.clientWidth;
|
|
282
|
-
let itemWidth = carouselComponent.querySelector(':scope > div').scrollWidth;
|
|
282
|
+
let itemWidth = carouselComponent.querySelector(':scope > :is(div,iam-card)').scrollWidth;
|
|
283
283
|
let visibleItems = Math.round(scrollArea / itemWidth);
|
|
284
284
|
|
|
285
285
|
carouselProgress.setAttribute('min', 1);
|
package/assets/ts/modules/nav.ts
CHANGED
|
@@ -26,4 +26,95 @@ const navbar = (element): void => {
|
|
|
26
26
|
}
|
|
27
27
|
};
|
|
28
28
|
|
|
29
|
+
export const populateNav = (data):void => {
|
|
30
|
+
|
|
31
|
+
let html = ``;
|
|
32
|
+
|
|
33
|
+
data.forEach((feature) => {
|
|
34
|
+
|
|
35
|
+
if(feature.attributes.sections)
|
|
36
|
+
html += `<details name="megamenu"><summary>${feature.attributes.title}</summary><div data-title="${feature.attributes.title}">${populateSections(feature.attributes.sections)}</div></details>`;
|
|
37
|
+
else if(feature.attributes.links)
|
|
38
|
+
html += `<details name="megamenu"><summary>${feature.attributes.title}</summary><div data-title="${feature.attributes.title}">${populateLinks(feature.attributes.links)}</div></details>`;
|
|
39
|
+
else
|
|
40
|
+
html += `<a href="/">${feature.attributes.title}</a>`;
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
return html;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export const populateSections = (data):void => {
|
|
47
|
+
|
|
48
|
+
let html = ``;
|
|
49
|
+
|
|
50
|
+
data.forEach((section) => {
|
|
51
|
+
|
|
52
|
+
html += `<span class="section ${section.class}">
|
|
53
|
+
<span class="lead text-heading d-block">${section.enabled == "false" && section.marketing ? section.marketing : section.title}</span>
|
|
54
|
+
${populateLinks(section.links)}
|
|
55
|
+
</span>`;
|
|
56
|
+
});
|
|
57
|
+
return html;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export const populateLinks = (data):void => {
|
|
61
|
+
|
|
62
|
+
let html = ``;
|
|
63
|
+
|
|
64
|
+
data.forEach((link) => {
|
|
65
|
+
|
|
66
|
+
html += `
|
|
67
|
+
<a href="${link.url}">${link.title}</a>`;
|
|
68
|
+
|
|
69
|
+
});
|
|
70
|
+
|
|
71
|
+
return html;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export const loadNavData = async(Cookies): any => {
|
|
75
|
+
|
|
76
|
+
const ajaxURL = '/nav.json';
|
|
77
|
+
|
|
78
|
+
// Setup controller vars if not already set
|
|
79
|
+
if (!window.controller) window.controller = [];
|
|
80
|
+
|
|
81
|
+
// Abort if controller already present for this url
|
|
82
|
+
if (window.controller[ajaxURL]) window.controller[ajaxURL].abort();
|
|
83
|
+
|
|
84
|
+
// Create a new controller so it can be aborted if new fetch made
|
|
85
|
+
window.controller[ajaxURL] = new AbortController();
|
|
86
|
+
const { signal } = window.controller[ajaxURL];
|
|
87
|
+
|
|
88
|
+
try {
|
|
89
|
+
return await fetch(ajaxURL, {
|
|
90
|
+
signal: signal,
|
|
91
|
+
method: 'get',
|
|
92
|
+
credentials: 'same-origin',
|
|
93
|
+
headers: new Headers({
|
|
94
|
+
'Content-Type': 'application/json',
|
|
95
|
+
Accept: 'application/json',
|
|
96
|
+
'X-Requested-With': 'XMLHttpRequest',
|
|
97
|
+
'X-XSRF-TOKEN': Cookies.get('XSRF-TOKEN'),
|
|
98
|
+
}),
|
|
99
|
+
})
|
|
100
|
+
.then((response) => response.json())
|
|
101
|
+
.then((response) => {
|
|
102
|
+
// populate datalist
|
|
103
|
+
let listString = '';
|
|
104
|
+
|
|
105
|
+
const data = response['data'] ? response['data'] : response;
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
return data;
|
|
109
|
+
});
|
|
110
|
+
} catch (error) {
|
|
111
|
+
if (error?.name === 'AbortError') {
|
|
112
|
+
return true;
|
|
113
|
+
}
|
|
114
|
+
console.log(error);
|
|
115
|
+
return 'There has been a problem. Please try again in a few moments.';
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
|
|
29
120
|
export default navbar;
|
|
@@ -162,6 +162,13 @@ export const setTabsEventHandlers = function (tabsElement: Element): void {
|
|
|
162
162
|
});
|
|
163
163
|
});
|
|
164
164
|
|
|
165
|
+
details.forEach((detailsElement, index) => {
|
|
166
|
+
detailsElement.addEventListener("toggle", function() {
|
|
167
|
+
if(detailsElement.open)
|
|
168
|
+
detailsElement.querySelector('button,input')?.focus();
|
|
169
|
+
});
|
|
170
|
+
});
|
|
171
|
+
|
|
165
172
|
nextButton?.addEventListener('click', (e) => {
|
|
166
173
|
e.preventDefault();
|
|
167
174
|
|
|
@@ -213,7 +220,9 @@ export const toggleTab = function (details: Array, button: Element): boolean | v
|
|
|
213
220
|
details.forEach((detail, detailsIndex) => {
|
|
214
221
|
const detailsOpen = button.getAttribute('data-index') == detailsIndex ? true : false;
|
|
215
222
|
|
|
216
|
-
if (detailsOpen)
|
|
223
|
+
if (detailsOpen) {
|
|
224
|
+
detail.setAttribute('open', detailsOpen);
|
|
225
|
+
}
|
|
217
226
|
else detail.removeAttribute('open');
|
|
218
227
|
});
|
|
219
228
|
};
|