@iamproperty/components 7.7.1--beta4 → 7.7.1--beta6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -4
- package/assets/bootstrap/README.md +247 -247
- package/assets/bootstrap/dist/css/bootstrap-grid.css +4124 -0
- package/assets/bootstrap/dist/css/bootstrap-grid.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap-grid.min.css +7 -0
- package/assets/bootstrap/dist/css/bootstrap-grid.min.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap-grid.rtl.css +4123 -0
- package/assets/bootstrap/dist/css/bootstrap-grid.rtl.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap-grid.rtl.min.css +7 -0
- package/assets/bootstrap/dist/css/bootstrap-grid.rtl.min.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap-reboot.css +488 -0
- package/assets/bootstrap/dist/css/bootstrap-reboot.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap-reboot.min.css +7 -0
- package/assets/bootstrap/dist/css/bootstrap-reboot.min.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap-reboot.rtl.css +485 -0
- package/assets/bootstrap/dist/css/bootstrap-reboot.rtl.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap-reboot.rtl.min.css +7 -0
- package/assets/bootstrap/dist/css/bootstrap-reboot.rtl.min.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap-utilities.css +4197 -0
- package/assets/bootstrap/dist/css/bootstrap-utilities.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap-utilities.min.css +7 -0
- package/assets/bootstrap/dist/css/bootstrap-utilities.min.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap-utilities.rtl.css +4188 -0
- package/assets/bootstrap/dist/css/bootstrap-utilities.rtl.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap-utilities.rtl.min.css +7 -0
- package/assets/bootstrap/dist/css/bootstrap-utilities.rtl.min.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap.css +10907 -0
- package/assets/bootstrap/dist/css/bootstrap.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap.min.css +7 -0
- package/assets/bootstrap/dist/css/bootstrap.min.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap.rtl.css +10867 -0
- package/assets/bootstrap/dist/css/bootstrap.rtl.css.map +1 -0
- package/assets/bootstrap/dist/css/bootstrap.rtl.min.css +7 -0
- package/assets/bootstrap/dist/css/bootstrap.rtl.min.css.map +1 -0
- package/assets/bootstrap/dist/js/bootstrap.bundle.js +7066 -0
- package/assets/bootstrap/dist/js/bootstrap.bundle.js.map +1 -0
- package/assets/bootstrap/dist/js/bootstrap.bundle.min.js +7 -0
- package/assets/bootstrap/dist/js/bootstrap.bundle.min.js.map +1 -0
- package/assets/bootstrap/dist/js/bootstrap.esm.js +5204 -0
- package/assets/bootstrap/dist/js/bootstrap.esm.js.map +1 -0
- package/assets/bootstrap/dist/js/bootstrap.esm.min.js +7 -0
- package/assets/bootstrap/dist/js/bootstrap.esm.min.js.map +1 -0
- package/assets/bootstrap/dist/js/bootstrap.js +5251 -0
- package/assets/bootstrap/dist/js/bootstrap.js.map +1 -0
- package/assets/bootstrap/dist/js/bootstrap.min.js +7 -0
- package/assets/bootstrap/dist/js/bootstrap.min.js.map +1 -0
- package/assets/bootstrap/js/dist/alert.js +100 -0
- package/assets/bootstrap/js/dist/alert.js.map +1 -0
- package/assets/bootstrap/js/dist/base-component.js +100 -0
- package/assets/bootstrap/js/dist/base-component.js.map +1 -0
- package/assets/bootstrap/js/dist/button.js +82 -0
- package/assets/bootstrap/js/dist/button.js.map +1 -0
- package/assets/bootstrap/js/dist/carousel.js +471 -0
- package/assets/bootstrap/js/dist/carousel.js.map +1 -0
- package/assets/bootstrap/js/dist/collapse.js +311 -0
- package/assets/bootstrap/js/dist/collapse.js.map +1 -0
- package/assets/bootstrap/js/dist/dom/data.js +67 -0
- package/assets/bootstrap/js/dist/dom/data.js.map +1 -0
- package/assets/bootstrap/js/dist/dom/event-handler.js +284 -0
- package/assets/bootstrap/js/dist/dom/event-handler.js.map +1 -0
- package/assets/bootstrap/js/dist/dom/manipulator.js +85 -0
- package/assets/bootstrap/js/dist/dom/manipulator.js.map +1 -0
- package/assets/bootstrap/js/dist/dom/selector-engine.js +86 -0
- package/assets/bootstrap/js/dist/dom/selector-engine.js.map +1 -0
- package/assets/bootstrap/js/dist/dropdown.js +471 -0
- package/assets/bootstrap/js/dist/dropdown.js.map +1 -0
- package/assets/bootstrap/js/dist/modal.js +397 -0
- package/assets/bootstrap/js/dist/modal.js.map +1 -0
- package/assets/bootstrap/js/dist/offcanvas.js +298 -0
- package/assets/bootstrap/js/dist/offcanvas.js.map +1 -0
- package/assets/bootstrap/js/dist/popover.js +102 -0
- package/assets/bootstrap/js/dist/popover.js.map +1 -0
- package/assets/bootstrap/js/dist/scrollspy.js +308 -0
- package/assets/bootstrap/js/dist/scrollspy.js.map +1 -0
- package/assets/bootstrap/js/dist/tab.js +334 -0
- package/assets/bootstrap/js/dist/tab.js.map +1 -0
- package/assets/bootstrap/js/dist/toast.js +237 -0
- package/assets/bootstrap/js/dist/toast.js.map +1 -0
- package/assets/bootstrap/js/dist/tooltip.js +663 -0
- package/assets/bootstrap/js/dist/tooltip.js.map +1 -0
- package/assets/bootstrap/js/dist/util/backdrop.js +166 -0
- package/assets/bootstrap/js/dist/util/backdrop.js.map +1 -0
- package/assets/bootstrap/js/dist/util/component-functions.js +47 -0
- package/assets/bootstrap/js/dist/util/component-functions.js.map +1 -0
- package/assets/bootstrap/js/dist/util/config.js +80 -0
- package/assets/bootstrap/js/dist/util/config.js.map +1 -0
- package/assets/bootstrap/js/dist/util/focustrap.js +130 -0
- package/assets/bootstrap/js/dist/util/focustrap.js.map +1 -0
- package/assets/bootstrap/js/dist/util/index.js +351 -0
- package/assets/bootstrap/js/dist/util/index.js.map +1 -0
- package/assets/bootstrap/js/dist/util/sanitizer.js +123 -0
- package/assets/bootstrap/js/dist/util/sanitizer.js.map +1 -0
- package/assets/bootstrap/js/dist/util/scrollbar.js +139 -0
- package/assets/bootstrap/js/dist/util/scrollbar.js.map +1 -0
- package/assets/bootstrap/js/dist/util/swipe.js +156 -0
- package/assets/bootstrap/js/dist/util/swipe.js.map +1 -0
- package/assets/bootstrap/js/dist/util/template-factory.js +178 -0
- package/assets/bootstrap/js/dist/util/template-factory.js.map +1 -0
- package/assets/bootstrap/js/index.esm.js +19 -19
- package/assets/bootstrap/js/index.umd.js +34 -34
- package/assets/bootstrap/js/src/alert.js +87 -87
- package/assets/bootstrap/js/src/base-component.js +85 -85
- package/assets/bootstrap/js/src/button.js +72 -72
- package/assets/bootstrap/js/src/carousel.js +475 -475
- package/assets/bootstrap/js/src/collapse.js +302 -302
- package/assets/bootstrap/js/src/dom/data.js +55 -55
- package/assets/bootstrap/js/src/dom/event-handler.js +320 -320
- package/assets/bootstrap/js/src/dom/manipulator.js +71 -71
- package/assets/bootstrap/js/src/dom/selector-engine.js +83 -83
- package/assets/bootstrap/js/src/dropdown.js +445 -445
- package/assets/bootstrap/js/src/modal.js +373 -373
- package/assets/bootstrap/js/src/offcanvas.js +283 -283
- package/assets/bootstrap/js/src/popover.js +97 -97
- package/assets/bootstrap/js/src/scrollspy.js +290 -290
- package/assets/bootstrap/js/src/tab.js +307 -307
- package/assets/bootstrap/js/src/toast.js +220 -220
- package/assets/bootstrap/js/src/tooltip.js +651 -651
- package/assets/bootstrap/js/src/util/backdrop.js +149 -149
- package/assets/bootstrap/js/src/util/component-functions.js +34 -34
- package/assets/bootstrap/js/src/util/config.js +66 -66
- package/assets/bootstrap/js/src/util/focustrap.js +115 -115
- package/assets/bootstrap/js/src/util/index.js +336 -336
- package/assets/bootstrap/js/src/util/sanitizer.js +118 -118
- package/assets/bootstrap/js/src/util/scrollbar.js +114 -114
- package/assets/bootstrap/js/src/util/swipe.js +146 -146
- package/assets/bootstrap/js/src/util/template-factory.js +160 -160
- package/assets/bootstrap/package.json +180 -180
- package/assets/bootstrap/scss/_accordion.scss +146 -146
- package/assets/bootstrap/scss/_button-group.scss +142 -142
- package/assets/bootstrap/scss/_buttons.scss +186 -186
- package/assets/bootstrap/scss/_carousel.scss +229 -229
- package/assets/bootstrap/scss/_dropdown.scss +248 -248
- package/assets/bootstrap/scss/_functions.scss +302 -302
- package/assets/bootstrap/scss/_list-group.scss +191 -191
- package/assets/bootstrap/scss/_modal.scss +237 -237
- package/assets/bootstrap/scss/_nav.scss +172 -172
- package/assets/bootstrap/scss/_navbar.scss +276 -276
- package/assets/bootstrap/scss/_offcanvas.scss +143 -143
- package/assets/bootstrap/scss/_pagination.scss +109 -109
- package/assets/bootstrap/scss/_popover.scss +196 -196
- package/assets/bootstrap/scss/_toasts.scss +70 -70
- package/assets/bootstrap/scss/_variables-dark.scss +87 -87
- package/assets/bootstrap/scss/_variables.scss +1633 -1633
- package/assets/bootstrap/scss/bootstrap-utilities.scss +15 -15
- package/assets/bootstrap/scss/forms/_floating-labels.scss +74 -74
- package/assets/bootstrap/scss/forms/_input-group.scss +129 -129
- package/assets/bootstrap/scss/helpers/_focus-ring.scss +5 -5
- package/assets/bootstrap/scss/helpers/_icon-link.scss +25 -25
- package/assets/bootstrap/scss/mixins/_banner.scss +9 -9
- package/assets/bootstrap/scss/mixins/_color-mode.scss +21 -21
- package/assets/bootstrap/scss/mixins/_forms.scss +152 -152
- package/assets/bootstrap/scss/mixins/_table-variants.scss +24 -24
- package/assets/bootstrap/scss/mixins/_utilities.scss +97 -97
- 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/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/calendar.component.css +1 -1
- package/assets/css/components/calendar.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 +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/charts.css +1 -1
- package/assets/css/components/charts.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.css +1 -1
- package/assets/css/components/header.css.map +1 -1
- package/assets/css/components/inline-edit.css +1 -1
- package/assets/css/components/inline-edit.css.map +1 -1
- package/assets/css/components/input.component.css.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/pagination.css +1 -1
- package/assets/css/components/pagination.css.map +1 -1
- package/assets/css/components/record-card.component.css +1 -1
- package/assets/css/components/record-card.component.css.map +1 -1
- package/assets/css/components/slider.css +1 -1
- package/assets/css/components/slider.css.map +1 -1
- package/assets/css/components/split-button.component.css +1 -1
- package/assets/css/components/split-button.component.css.map +1 -1
- package/assets/css/components/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 -0
- package/assets/css/components/video.component.css.map +1 -0
- 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--action.css +1 -1
- package/assets/css/elements/buttons--action.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--secondary.css +1 -1
- package/assets/css/elements/buttons--secondary.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--tertiary.css +1 -1
- package/assets/css/elements/buttons--tertiary.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.map +1 -1
- package/assets/css/elements/dropdown.css +1 -1
- package/assets/css/elements/dropdown.css.map +1 -1
- package/assets/css/elements/feature.css +1 -1
- package/assets/css/elements/feature.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/label.css +1 -1
- package/assets/css/elements/label.css.map +1 -1
- package/assets/css/elements/links--collapsible-side.css +1 -0
- package/assets/css/elements/links--collapsible-side.css.map +1 -0
- package/assets/css/elements/links--global.css +1 -0
- package/assets/css/elements/links--global.css.map +1 -0
- package/assets/css/elements/links--video.css +1 -0
- package/assets/css/elements/links--video.css.map +1 -0
- package/assets/css/elements/links.css +1 -1
- package/assets/css/elements/links.css.map +1 -1
- package/assets/css/elements/modal.css.map +1 -1
- package/assets/css/elements/progress.css.map +1 -1
- package/assets/css/elements/textarea.css +1 -1
- package/assets/css/elements/textarea.css.map +1 -1
- package/assets/css/elements/toggle-button.css +1 -1
- package/assets/css/elements/toggle-button.css.map +1 -1
- package/assets/css/elements/tooltips.css +1 -1
- package/assets/css/elements/tooltips.css.map +1 -1
- package/assets/css/style.min.css +1 -1
- package/assets/css/style.min.css.map +1 -1
- package/assets/favicons/README.md +20 -20
- package/assets/favicons/browserconfig.xml +9 -9
- package/assets/favicons/manifest.json +31 -31
- package/assets/favicons/safari-pinned-tab.svg +35 -35
- package/assets/favicons/site.webmanifest +20 -20
- package/assets/js/components/accordion/accordion.component.js +15 -15
- package/assets/js/components/accordion/accordion.component.min.js +1 -1
- package/assets/js/components/accordion/accordion.component.min.js.map +1 -1
- package/assets/js/components/actionbar/actionbar.component.js +68 -68
- package/assets/js/components/actionbar/actionbar.component.min.js +2 -2
- package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
- package/assets/js/components/address-lookup/address-lookup.component.js +60 -60
- 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/advanced-select/advanced-select.component.js +20 -20
- package/assets/js/components/advanced-select/advanced-select.component.min.js +1 -1
- package/assets/js/components/advanced-select/advanced-select.component.min.js.map +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.js +7 -7
- package/assets/js/components/applied-filters/applied-filters.component.min.js +2 -2
- package/assets/js/components/applied-filters/applied-filters.component.min.js.map +1 -1
- package/assets/js/components/barchart/barchart.component.js +2 -2
- package/assets/js/components/barchart/barchart.component.min.js +3 -3
- package/assets/js/components/barchart/barchart.component.min.js.map +1 -1
- package/assets/js/components/bento-grid/bento-grid.component.js +9 -9
- package/assets/js/components/bento-grid/bento-grid.component.min.js +1 -1
- package/assets/js/components/bento-grid/bento-grid.component.min.js.map +1 -1
- package/assets/js/components/calendar/calendar.component.js +2 -2
- package/assets/js/components/calendar/calendar.component.min.js +2 -2
- package/assets/js/components/calendar/calendar.component.min.js.map +1 -1
- package/assets/js/components/card/card.component.js +3 -3
- package/assets/js/components/card/card.component.min.js +2 -2
- package/assets/js/components/card/card.component.min.js.map +1 -1
- package/assets/js/components/carousel/carousel.component.js +2 -2
- 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 +1 -1
- package/assets/js/components/collapsible-side/collapsible-side.component.js +20 -20
- package/assets/js/components/collapsible-side/collapsible-side.component.min.js +4 -4
- package/assets/js/components/collapsible-side/collapsible-side.component.min.js.map +1 -1
- package/assets/js/components/config/config.component.js +54 -54
- package/assets/js/components/config/config.component.min.js +2 -2
- package/assets/js/components/config/config.component.min.js.map +1 -1
- package/assets/js/components/content/content.component.js +9 -9
- package/assets/js/components/content/content.component.min.js +4 -4
- package/assets/js/components/content/content.component.min.js.map +1 -1
- package/assets/js/components/darkmode/darkmode.component.js +4 -4
- package/assets/js/components/darkmode/darkmode.component.min.js +1 -1
- package/assets/js/components/darkmode/darkmode.component.min.js.map +1 -1
- package/assets/js/components/doughnutchart/doughnutchart.component.js +2 -2
- package/assets/js/components/doughnutchart/doughnutchart.component.min.js +2 -2
- package/assets/js/components/doughnutchart/doughnutchart.component.min.js.map +1 -1
- package/assets/js/components/fileupload/fileupload.component.js +17 -17
- 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 +9 -9
- package/assets/js/components/filter-card/filter-card.component.min.js +5 -5
- package/assets/js/components/filter-card/filter-card.component.min.js.map +1 -1
- package/assets/js/components/filterlist/filterlist.component.js +1 -1
- package/assets/js/components/filterlist/filterlist.component.min.js +1 -1
- package/assets/js/components/filterlist/filterlist.component.min.js.map +1 -1
- package/assets/js/components/form/form.component.js +5 -5
- package/assets/js/components/form/form.component.min.js +1 -1
- package/assets/js/components/form/form.component.min.js.map +1 -1
- package/assets/js/components/header/header.component.js +53 -53
- package/assets/js/components/header/header.component.min.js +2 -2
- package/assets/js/components/header/header.component.min.js.map +1 -1
- package/assets/js/components/inline-edit/inline-edit.component.js +16 -16
- package/assets/js/components/inline-edit/inline-edit.component.min.js +4 -4
- package/assets/js/components/inline-edit/inline-edit.component.min.js.map +1 -1
- package/assets/js/components/input/input.component.js +11 -11
- package/assets/js/components/input/input.component.min.js +1 -1
- package/assets/js/components/input/input.component.min.js.map +1 -1
- package/assets/js/components/input-range/input-range.component.js +9 -9
- package/assets/js/components/input-range/input-range.component.min.js +1 -1
- package/assets/js/components/input-range/input-range.component.min.js.map +1 -1
- package/assets/js/components/marketing/marketing.component.js +10 -10
- 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/menu/menu.component.js +6 -6
- package/assets/js/components/menu/menu.component.min.js +1 -1
- package/assets/js/components/menu/menu.component.min.js.map +1 -1
- package/assets/js/components/milestone/milestone.component.js +2 -2
- package/assets/js/components/milestone/milestone.component.min.js +1 -1
- package/assets/js/components/milestone/milestone.component.min.js.map +1 -1
- package/assets/js/components/milestone-group/milestone-group.component.js +2 -2
- package/assets/js/components/milestone-group/milestone-group.component.min.js +1 -1
- package/assets/js/components/milestone-group/milestone-group.component.min.js.map +1 -1
- package/assets/js/components/modal/modal.component.js +25 -25
- package/assets/js/components/modal/modal.component.min.js +4 -4
- package/assets/js/components/modal/modal.component.min.js.map +1 -1
- package/assets/js/components/multi-step/multi-step.component.js +1 -1
- package/assets/js/components/multi-step/multi-step.component.min.js +1 -1
- package/assets/js/components/multi-step/multi-step.component.min.js.map +1 -1
- package/assets/js/components/multi-step-modal/multi-step-modal.component.js +12 -12
- package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js +4 -4
- package/assets/js/components/multi-step-modal/multi-step-modal.component.min.js.map +1 -1
- package/assets/js/components/multiselect/multiselect.component.js +21 -21
- 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 +45 -45
- package/assets/js/components/nav/nav.component.min.js +2 -2
- package/assets/js/components/nav/nav.component.min.js.map +1 -1
- package/assets/js/components/notification/notification.component.js +14 -14
- package/assets/js/components/notification/notification.component.min.js +1 -1
- package/assets/js/components/notification/notification.component.min.js.map +1 -1
- package/assets/js/components/pagination/pagination.component.js +39 -39
- package/assets/js/components/pagination/pagination.component.min.js +3 -3
- package/assets/js/components/pagination/pagination.component.min.js.map +1 -1
- package/assets/js/components/password/password.component.js +11 -11
- package/assets/js/components/password/password.component.min.js +1 -1
- package/assets/js/components/password/password.component.min.js.map +1 -1
- package/assets/js/components/popover/popover.component.js +8 -8
- package/assets/js/components/popover/popover.component.min.js +1 -1
- package/assets/js/components/popover/popover.component.min.js.map +1 -1
- package/assets/js/components/rank/rank.component.js +360 -360
- package/assets/js/components/rank/rank.component.min.js +1 -1
- package/assets/js/components/rank/rank.component.min.js.map +1 -1
- package/assets/js/components/rankings/rankings.component.js +18 -18
- package/assets/js/components/rankings/rankings.component.min.js +1 -1
- package/assets/js/components/rankings/rankings.component.min.js.map +1 -1
- package/assets/js/components/rating/rating.component.js +10 -10
- package/assets/js/components/rating/rating.component.min.js +1 -1
- package/assets/js/components/rating/rating.component.min.js.map +1 -1
- package/assets/js/components/record-card/record-card.component.js +2 -2
- 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 +19 -19
- package/assets/js/components/search/search.component.min.js +1 -1
- package/assets/js/components/search/search.component.min.js.map +1 -1
- package/assets/js/components/slider/slider.component.js +12 -12
- package/assets/js/components/slider/slider.component.min.js +2 -2
- package/assets/js/components/slider/slider.component.min.js.map +1 -1
- package/assets/js/components/split-button/split-button.component.js +19 -19
- package/assets/js/components/split-button/split-button.component.min.js +3 -3
- package/assets/js/components/split-button/split-button.component.min.js.map +1 -1
- package/assets/js/components/std-address-lookup/std-address-lookup.component.js +114 -114
- package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js +4 -4
- package/assets/js/components/std-address-lookup/std-address-lookup.component.min.js.map +1 -1
- package/assets/js/components/table/table.component.js +17 -17
- package/assets/js/components/table/table.component.min.js +1 -1
- package/assets/js/components/table/table.component.min.js.map +1 -1
- package/assets/js/components/table-ajax/table-ajax.component.js +17 -17
- package/assets/js/components/table-ajax/table-ajax.component.min.js +1 -1
- package/assets/js/components/table-ajax/table-ajax.component.min.js.map +1 -1
- package/assets/js/components/table-basic/table-basic.component.js +16 -16
- package/assets/js/components/table-basic/table-basic.component.min.js +1 -1
- package/assets/js/components/table-basic/table-basic.component.min.js.map +1 -1
- package/assets/js/components/table-no-submit/table-no-submit.component.js +17 -17
- package/assets/js/components/table-no-submit/table-no-submit.component.min.js +1 -1
- 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.js +17 -17
- package/assets/js/components/table-submit/table-submit.component.min.js +1 -1
- package/assets/js/components/table-submit/table-submit.component.min.js.map +1 -1
- package/assets/js/components/tabs/tabs.component.js +31 -18
- 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.js +14 -14
- package/assets/js/components/tag/tag.component.min.js +4 -4
- package/assets/js/components/tag/tag.component.min.js.map +1 -1
- package/assets/js/components/tooltip/tooltip.component.js +9 -9
- package/assets/js/components/tooltip/tooltip.component.min.js +1 -1
- package/assets/js/components/tooltip/tooltip.component.min.js.map +1 -1
- package/assets/js/components/video/video.component.js +67 -0
- package/assets/js/components/video/video.component.min.js +21 -0
- package/assets/js/components/video/video.component.min.js.map +1 -0
- package/assets/js/components/video-card/video-card.component.js +53 -70
- package/assets/js/components/video-card/video-card.component.min.js +15 -7
- package/assets/js/components/video-card/video-card.component.min.js.map +1 -1
- package/assets/js/components/video-modal/video-modal.component.js +24 -58
- package/assets/js/components/video-modal/video-modal.component.min.js +12 -6
- package/assets/js/components/video-modal/video-modal.component.min.js.map +1 -1
- package/assets/js/components/word-count/word-count.component.js +1 -1
- package/assets/js/components/word-count/word-count.component.min.js +1 -1
- package/assets/js/components/word-count/word-count.component.min.js.map +1 -1
- package/assets/js/modules/card.module.js +14 -14
- package/assets/js/modules/chart.js +1 -1
- package/assets/js/modules/chart.module.js +5 -5
- package/assets/js/modules/helper.test.js +2 -2
- package/assets/js/modules/integration-tests.js +3 -3
- package/assets/js/modules/modal.js +4 -2
- package/assets/js/modules/table.js +3 -3
- package/assets/js/modules/tabs.js +1 -1
- package/assets/js/modules/videos.js +42 -0
- 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 +4 -4
- package/assets/sass/_bs_grid.scss +41 -41
- package/assets/sass/_bs_utilities.scss +51 -51
- package/assets/sass/_components.scss +162 -162
- package/assets/sass/_corefiles.scss +31 -31
- package/assets/sass/_elements.scss +30 -30
- package/assets/sass/_fonts.scss +28 -28
- package/assets/sass/_func.scss +2 -2
- package/assets/sass/_functions/bs_functions.scss +487 -487
- package/assets/sass/_functions/bs_mixins.scss +2103 -2103
- package/assets/sass/_functions/bs_utilities.scss +922 -922
- package/assets/sass/_functions/bs_variables.scss +1701 -1703
- package/assets/sass/_functions/functions.scss +48 -48
- package/assets/sass/_functions/mixins.scss +1 -1
- package/assets/sass/_grid.scss +320 -320
- package/assets/sass/_print.scss +64 -64
- package/assets/sass/_utilities.scss +35 -35
- package/assets/sass/components/actionbar.component.scss +421 -421
- package/assets/sass/components/actionbar.global.scss +115 -115
- package/assets/sass/components/address-lookup.component.scss +161 -161
- package/assets/sass/components/address-lookup.preload.scss +90 -90
- package/assets/sass/components/applied-filters.scss +19 -19
- package/assets/sass/components/barchart.component.scss +347 -347
- package/assets/sass/components/bento-grid.component.scss +109 -109
- package/assets/sass/components/bento-grid.global.scss +248 -248
- package/assets/sass/components/calendar.component.scss +1272 -1272
- package/assets/sass/components/calendar.config.scss +423 -423
- package/assets/sass/components/card.component.scss +187 -182
- package/assets/sass/components/card.module.scss +154 -151
- package/assets/sass/components/carousel.component.scss +631 -631
- package/assets/sass/components/carousel.config.scss +84 -84
- package/assets/sass/components/charts.config.scss +86 -86
- package/assets/sass/components/charts.module.scss +588 -588
- package/assets/sass/components/charts.scss +1298 -1298
- package/assets/sass/components/collapsible-side.scss +307 -307
- package/assets/sass/components/config.component.scss +235 -235
- package/assets/sass/components/content.component.scss +18 -18
- package/assets/sass/components/darkmode.component.scss +20 -20
- package/assets/sass/components/doughnutchart.component.scss +206 -206
- package/assets/sass/components/fileupload.scss +162 -162
- package/assets/sass/components/filter-card.component.scss +99 -99
- package/assets/sass/components/header.scss +251 -256
- package/assets/sass/components/inline-edit.preload.scss +203 -203
- package/assets/sass/components/inline-edit.scss +40 -40
- package/assets/sass/components/input-range.component.scss +46 -46
- package/assets/sass/components/input.component.scss +101 -101
- package/assets/sass/components/marketing.component.scss +65 -65
- package/assets/sass/components/menu.component.scss +161 -190
- package/assets/sass/components/menu.global.scss +82 -82
- package/assets/sass/components/milestone.scss +216 -216
- package/assets/sass/components/modal.component.scss +252 -252
- package/assets/sass/components/multi-step-modal.component.scss +255 -255
- package/assets/sass/components/multi-step-modal.global.scss +92 -92
- package/assets/sass/components/multi-step.component.scss +144 -144
- package/assets/sass/components/multiselect.preload.scss +8 -8
- package/assets/sass/components/multiselect.scss +238 -238
- package/assets/sass/components/nav.component.scss +718 -718
- package/assets/sass/components/nav.docs.scss +55 -55
- package/assets/sass/components/nav.global.scss +870 -870
- package/assets/sass/components/nav.preload.scss +54 -54
- package/assets/sass/components/notification.scss +218 -218
- package/assets/sass/components/pagination.scss +237 -237
- package/assets/sass/components/password.component.scss +56 -56
- package/assets/sass/components/popover.component.scss +28 -28
- package/assets/sass/components/property-searchbar.scss +139 -139
- package/assets/sass/components/rank.component.scss +275 -275
- package/assets/sass/components/rankings.component.scss +70 -70
- package/assets/sass/components/rankings.global.scss +140 -140
- package/assets/sass/components/rating.component.css +211 -211
- package/assets/sass/components/record-card.component.scss +191 -191
- package/assets/sass/components/slider.scss +127 -127
- package/assets/sass/components/snapshot.scss +65 -65
- package/assets/sass/components/split-button.component.scss +83 -83
- package/assets/sass/components/stepper.scss +157 -157
- package/assets/sass/components/table-basic.component.scss +136 -136
- package/assets/sass/components/table-basic.global.scss +676 -676
- package/assets/sass/components/table.component.scss +51 -51
- package/assets/sass/components/table.global.scss +398 -398
- package/assets/sass/components/tabs.component.scss +34 -9
- package/assets/sass/components/tabs.config.scss +258 -254
- package/assets/sass/components/tag.component.scss +59 -59
- package/assets/sass/components/tag.preload.scss +20 -20
- package/assets/sass/components/testimonial.scss +125 -125
- package/assets/sass/components/timeline.scss +92 -92
- package/assets/sass/components/tooltip.component.scss +148 -148
- package/assets/sass/components/video-card.component.scss +49 -75
- package/assets/sass/components/video-modal.component.scss +26 -24
- package/assets/sass/components/video.component.scss +75 -0
- package/assets/sass/components/word-count.component.scss +26 -26
- package/assets/sass/core.scss +4 -4
- package/assets/sass/elements/admin-panel.css +310 -310
- package/assets/sass/elements/badge-tag.css +101 -101
- package/assets/sass/elements/brand.css +80 -80
- package/assets/sass/elements/button__group.css +135 -135
- package/assets/sass/elements/buttons--action.css +71 -54
- package/assets/sass/elements/buttons--compact.css +168 -168
- package/assets/sass/elements/{buttons--global.scss → buttons--global.css} +239 -246
- package/assets/sass/elements/{buttons--secondary.scss → buttons--secondary.css} +18 -24
- package/assets/sass/elements/{buttons--special.scss → buttons--special.css} +164 -171
- package/assets/sass/elements/{buttons--tertiary.scss → buttons--tertiary.css} +51 -57
- package/assets/sass/elements/buttons.scss +9 -14
- package/assets/sass/elements/code.css +45 -45
- package/assets/sass/elements/container.scss +118 -155
- package/assets/sass/elements/{details.scss → details.css} +224 -227
- package/assets/sass/elements/dialog.scss +75 -86
- package/assets/sass/elements/{dropdown.scss → dropdown.css} +85 -87
- package/assets/sass/elements/{feature.scss → feature.css} +174 -180
- package/assets/sass/elements/forms.scss +1337 -1338
- package/assets/sass/elements/highlight.css +76 -76
- package/assets/sass/elements/hr.css +41 -41
- package/assets/sass/elements/icons.css +48 -48
- package/assets/sass/elements/input.scss +212 -212
- package/assets/sass/elements/{label.scss → label.css} +20 -20
- package/assets/sass/elements/links--collapsible-side.scss +130 -0
- package/assets/sass/elements/links--global.scss +155 -0
- package/assets/sass/elements/links--video.scss +73 -0
- package/assets/sass/elements/links.scss +5 -348
- package/assets/sass/elements/lists--breadcrumbs.scss +26 -26
- package/assets/sass/elements/lists--steps.css +171 -171
- package/assets/sass/elements/lists--tick-list.scss +112 -112
- package/assets/sass/elements/lists.scss +99 -99
- package/assets/sass/elements/media.css +20 -20
- package/assets/sass/elements/modal.scss +411 -415
- package/assets/sass/elements/popover.scss +259 -259
- package/assets/sass/elements/prefix.scss +139 -139
- package/assets/sass/elements/progress.scss +208 -214
- package/assets/sass/elements/table.element.scss +144 -144
- package/assets/sass/elements/{textarea.scss → textarea.css} +84 -96
- package/assets/sass/elements/{toggle-button.scss → toggle-button.css} +49 -55
- package/assets/sass/elements/tooltips.scss +152 -151
- package/assets/sass/elements/type.css +166 -166
- package/assets/sass/email.scss +68 -68
- package/assets/sass/error.scss +31 -33
- package/assets/sass/foundations/animations.scss +2 -2
- package/assets/sass/foundations/colours.scss +104 -104
- package/assets/sass/foundations/reboot.scss +166 -166
- package/assets/sass/foundations/root.scss +269 -269
- package/assets/sass/main.scss +7 -7
- package/assets/sass/templates/auth.scss +106 -106
- package/assets/sass/templates/form.scss +95 -95
- package/assets/sass/utilities/{align.scss → align.css} +24 -24
- package/assets/sass/utilities/{border.scss → border.css} +65 -68
- package/assets/sass/utilities/{clearfix.scss → clearfix.css} +8 -8
- package/assets/sass/utilities/colours.scss +43 -43
- package/assets/sass/utilities/{columns.scss → columns.css} +61 -61
- package/assets/sass/utilities/display.scss +89 -89
- package/assets/sass/utilities/{fixed.scss → fixed.css} +16 -16
- package/assets/sass/utilities/flex.scss +291 -291
- package/assets/sass/utilities/{font-awesome-iso-fallbacks.scss → font-awesome-iso-fallbacks.css} +43 -43
- package/assets/sass/utilities/gap.css +26 -0
- package/assets/sass/utilities/{gradients.scss → gradients.css} +39 -39
- package/assets/sass/utilities/{js-display.scss → js-display.css} +12 -12
- package/assets/sass/utilities/{line-clamp.scss → line-clamp.css} +24 -24
- package/assets/sass/utilities/margins.scss +74 -74
- package/assets/sass/utilities/max-height.scss +93 -93
- package/assets/sass/utilities/{opacity.scss → opacity.css} +20 -20
- package/assets/sass/utilities/order.css +104 -0
- package/assets/sass/utilities/{overflow.scss → overflow.css} +16 -16
- package/assets/sass/utilities/paddings.scss +33 -33
- package/assets/sass/utilities/{pointer-events.scss → pointer-events.css} +8 -8
- package/assets/sass/utilities/position.css +68 -0
- package/assets/sass/utilities/{ratio.scss → ratio.css} +33 -33
- package/assets/sass/utilities/{rounded.scss → rounded.css} +56 -56
- package/assets/sass/utilities/{shadow.scss → shadow.css} +7 -7
- package/assets/sass/utilities/{sizes.scss → sizes.css} +92 -92
- package/assets/sass/utilities/{sticky.scss → sticky.css} +38 -38
- package/assets/sass/utilities/{text-truncate.scss → text-truncate.css} +6 -6
- package/assets/sass/utilities/{text.scss → text.css} +190 -190
- package/assets/sass/utilities/{visible.scss → visible.css} +8 -8
- package/assets/sass/utilities/{visually-hidden.scss → visually-hidden.css} +13 -13
- package/assets/sass/utilities/wider-colours.scss +8 -8
- package/assets/svg/illustrations/table.svg +165 -165
- package/assets/svg/logo.svg +56 -56
- package/assets/ts/components/accordion/accordion.component.ts +77 -77
- package/assets/ts/components/actionbar/actionbar.component.ts +567 -567
- package/assets/ts/components/address-lookup/address-lookup.component.ts +672 -672
- package/assets/ts/components/advanced-select/advanced-select.component.ts +116 -116
- package/assets/ts/components/applied-filters/applied-filters.component.ts +37 -37
- package/assets/ts/components/bento-grid/bento-grid.component.ts +88 -88
- package/assets/ts/components/collapsible-side/collapsible-side.component.ts +165 -165
- package/assets/ts/components/config/config.component.ts +699 -699
- package/assets/ts/components/content/content.component.ts +78 -78
- package/assets/ts/components/darkmode/darkmode.component.ts +108 -108
- package/assets/ts/components/fileupload/fileupload.component.ts +74 -74
- package/assets/ts/components/filter-card/filter-card.component.ts +106 -106
- package/assets/ts/components/form/form.component.ts +102 -102
- package/assets/ts/components/header/header.component.ts +97 -97
- package/assets/ts/components/inline-edit/inline-edit.component.ts +212 -212
- package/assets/ts/components/input/input.component.ts +278 -278
- package/assets/ts/components/input-range/input-range.component.ts +78 -78
- package/assets/ts/components/marketing/marketing.component.ts +44 -44
- package/assets/ts/components/menu/menu.component.ts +212 -212
- package/assets/ts/components/modal/modal.component.ts +184 -184
- package/assets/ts/components/multi-step-modal/multi-step-modal.component.ts +304 -304
- package/assets/ts/components/multiselect/multiselect.component.ts +349 -349
- package/assets/ts/components/nav/nav.component.ts +369 -369
- package/assets/ts/components/notification/notification.component.ts +172 -172
- package/assets/ts/components/pagination/pagination.component.ts +213 -213
- package/assets/ts/components/password/password.component.ts +118 -118
- package/assets/ts/components/popover/popover.component.ts +50 -50
- package/assets/ts/components/rank/rank.component.ts +394 -394
- package/assets/ts/components/rankings/rankings.component.ts +79 -79
- package/assets/ts/components/rating/rating.component.ts +86 -86
- package/assets/ts/components/search/search.component.ts +244 -244
- package/assets/ts/components/slider/slider.component.ts +170 -170
- package/assets/ts/components/split-button/split-button.component.ts +63 -63
- package/assets/ts/components/std-address-lookup/std-address-lookup.component.ts +1919 -1919
- package/assets/ts/components/table/table.component.ts +94 -94
- package/assets/ts/components/table-ajax/table-ajax.component.ts +70 -70
- package/assets/ts/components/table-basic/table-basic.component.ts +56 -56
- package/assets/ts/components/table-no-submit/table-no-submit.component.ts +130 -130
- package/assets/ts/components/table-submit/table-submit.component.ts +71 -71
- package/assets/ts/components/tabs/tabs.component.ts +70 -51
- package/assets/ts/components/tag/tag.component.ts +104 -104
- package/assets/ts/components/tooltip/tooltip.component.ts +98 -98
- package/assets/ts/components/video/video.component.ts +74 -0
- package/assets/ts/components/video-card/video-card.component.ts +129 -150
- package/assets/ts/components/video-modal/video-modal.component.ts +88 -137
- package/assets/ts/modules/advanced-select.ts +186 -186
- package/assets/ts/modules/applied-filters.ts +238 -238
- package/assets/ts/modules/card.module.ts +46 -46
- package/assets/ts/modules/chart.module.ts +594 -594
- package/assets/ts/modules/data-layer.md +71 -71
- package/assets/ts/modules/dialogs.ts +259 -259
- package/assets/ts/modules/dropdown.ts +216 -216
- package/assets/ts/modules/helper.test.ts +143 -143
- package/assets/ts/modules/helpers.ts +212 -212
- package/assets/ts/modules/integration-tests.ts +525 -525
- package/assets/ts/modules/modal.ts +45 -43
- package/assets/ts/modules/password.ts +82 -82
- package/assets/ts/modules/table.ts +1500 -1500
- package/assets/ts/modules/test.ts +22 -22
- package/assets/ts/modules/videos.ts +233 -176
- package/assets/ts/scripts.ts +111 -111
- package/dist/components.es.js +25 -25
- package/dist/components.umd.js +143 -113
- package/package.json +115 -116
- package/src/components/AdvancedSelect/AdvancedSelect.vue +28 -28
- package/src/components/Config/Config.vue +23 -23
- package/src/components/DarkMode/DarkMode.vue +19 -19
- package/src/components/Filterlist/Filterlist.vue +23 -23
- package/src/components/Form/Form.vue +22 -22
- package/src/components/Header/Header.vue +36 -36
- package/src/components/Input/Input.vue +22 -22
- package/src/components/InputRange/InputRange.vue +22 -22
- package/src/components/Modal/Modal.vue +22 -22
- package/src/components/MultiStepModal/MultiStepModal.vue +23 -23
- package/src/components/NoteFeed/NoteFeed.vue +82 -82
- package/src/components/Password/Password.vue +23 -23
- package/src/components/Popover/Popover.vue +22 -22
- package/src/components/PropertySearchbar/PropertySearchbar.vue +235 -235
- package/src/components/PropertySearchbar/README.md +25 -25
- package/src/components/Rating/Rating.vue +22 -22
- package/src/components/STDAddressLookup/STDAddressLookup.vue +22 -22
- package/src/components/Snapshot/Snapshot.vue +30 -30
- package/src/components/Tag/Tag.vue +22 -22
- package/src/components/Tooltip/Tooltip.vue +22 -22
- package/src/components/Video/Video.vue +22 -0
- package/src/components/VideoModal/VideoModal.vue +22 -22
- package/assets/sass/utilities/gap.scss +0 -8
- package/assets/sass/utilities/order.scss +0 -43
- package/assets/sass/utilities/position.scss +0 -52
|
@@ -0,0 +1,308 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Bootstrap scrollspy.js v5.2.0 (https://getbootstrap.com/)
|
|
3
|
+
* Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
|
4
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
5
|
+
*/
|
|
6
|
+
(function (global, factory) {
|
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./util/index'), require('./dom/event-handler'), require('./dom/selector-engine'), require('./base-component')) :
|
|
8
|
+
typeof define === 'function' && define.amd ? define(['./util/index', './dom/event-handler', './dom/selector-engine', './base-component'], factory) :
|
|
9
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Scrollspy = factory(global.Index, global.EventHandler, global.SelectorEngine, global.BaseComponent));
|
|
10
|
+
})(this, (function (index, EventHandler, SelectorEngine, BaseComponent) { 'use strict';
|
|
11
|
+
|
|
12
|
+
const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
|
|
13
|
+
|
|
14
|
+
const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
|
|
15
|
+
const SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine);
|
|
16
|
+
const BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* --------------------------------------------------------------------------
|
|
20
|
+
* Bootstrap (v5.2.0): scrollspy.js
|
|
21
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
22
|
+
* --------------------------------------------------------------------------
|
|
23
|
+
*/
|
|
24
|
+
/**
|
|
25
|
+
* Constants
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
const NAME = 'scrollspy';
|
|
29
|
+
const DATA_KEY = 'bs.scrollspy';
|
|
30
|
+
const EVENT_KEY = `.${DATA_KEY}`;
|
|
31
|
+
const DATA_API_KEY = '.data-api';
|
|
32
|
+
const EVENT_ACTIVATE = `activate${EVENT_KEY}`;
|
|
33
|
+
const EVENT_CLICK = `click${EVENT_KEY}`;
|
|
34
|
+
const EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`;
|
|
35
|
+
const CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item';
|
|
36
|
+
const CLASS_NAME_ACTIVE = 'active';
|
|
37
|
+
const SELECTOR_DATA_SPY = '[data-bs-spy="scroll"]';
|
|
38
|
+
const SELECTOR_TARGET_LINKS = '[href]';
|
|
39
|
+
const SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';
|
|
40
|
+
const SELECTOR_NAV_LINKS = '.nav-link';
|
|
41
|
+
const SELECTOR_NAV_ITEMS = '.nav-item';
|
|
42
|
+
const SELECTOR_LIST_ITEMS = '.list-group-item';
|
|
43
|
+
const SELECTOR_LINK_ITEMS = `${SELECTOR_NAV_LINKS}, ${SELECTOR_NAV_ITEMS} > ${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`;
|
|
44
|
+
const SELECTOR_DROPDOWN = '.dropdown';
|
|
45
|
+
const SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
|
|
46
|
+
const Default = {
|
|
47
|
+
offset: null,
|
|
48
|
+
// TODO: v6 @deprecated, keep it for backwards compatibility reasons
|
|
49
|
+
rootMargin: '0px 0px -25%',
|
|
50
|
+
smoothScroll: false,
|
|
51
|
+
target: null
|
|
52
|
+
};
|
|
53
|
+
const DefaultType = {
|
|
54
|
+
offset: '(number|null)',
|
|
55
|
+
// TODO v6 @deprecated, keep it for backwards compatibility reasons
|
|
56
|
+
rootMargin: 'string',
|
|
57
|
+
smoothScroll: 'boolean',
|
|
58
|
+
target: 'element'
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* Class definition
|
|
62
|
+
*/
|
|
63
|
+
|
|
64
|
+
class ScrollSpy extends BaseComponent__default.default {
|
|
65
|
+
constructor(element, config) {
|
|
66
|
+
super(element, config); // this._element is the observablesContainer and config.target the menu links wrapper
|
|
67
|
+
|
|
68
|
+
this._targetLinks = new Map();
|
|
69
|
+
this._observableSections = new Map();
|
|
70
|
+
this._rootElement = getComputedStyle(this._element).overflowY === 'visible' ? null : this._element;
|
|
71
|
+
this._activeTarget = null;
|
|
72
|
+
this._observer = null;
|
|
73
|
+
this._previousScrollData = {
|
|
74
|
+
visibleEntryTop: 0,
|
|
75
|
+
parentScrollTop: 0
|
|
76
|
+
};
|
|
77
|
+
this.refresh(); // initialize
|
|
78
|
+
} // Getters
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
static get Default() {
|
|
82
|
+
return Default;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
static get DefaultType() {
|
|
86
|
+
return DefaultType;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
static get NAME() {
|
|
90
|
+
return NAME;
|
|
91
|
+
} // Public
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
refresh() {
|
|
95
|
+
this._initializeTargetsAndObservables();
|
|
96
|
+
|
|
97
|
+
this._maybeEnableSmoothScroll();
|
|
98
|
+
|
|
99
|
+
if (this._observer) {
|
|
100
|
+
this._observer.disconnect();
|
|
101
|
+
} else {
|
|
102
|
+
this._observer = this._getNewObserver();
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
for (const section of this._observableSections.values()) {
|
|
106
|
+
this._observer.observe(section);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
dispose() {
|
|
111
|
+
this._observer.disconnect();
|
|
112
|
+
|
|
113
|
+
super.dispose();
|
|
114
|
+
} // Private
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
_configAfterMerge(config) {
|
|
118
|
+
// TODO: on v6 target should be given explicitly & remove the {target: 'ss-target'} case
|
|
119
|
+
config.target = index.getElement(config.target) || document.body;
|
|
120
|
+
return config;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
_maybeEnableSmoothScroll() {
|
|
124
|
+
if (!this._config.smoothScroll) {
|
|
125
|
+
return;
|
|
126
|
+
} // unregister any previous listeners
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
EventHandler__default.default.off(this._config.target, EVENT_CLICK);
|
|
130
|
+
EventHandler__default.default.on(this._config.target, EVENT_CLICK, SELECTOR_TARGET_LINKS, event => {
|
|
131
|
+
const observableSection = this._observableSections.get(event.target.hash);
|
|
132
|
+
|
|
133
|
+
if (observableSection) {
|
|
134
|
+
event.preventDefault();
|
|
135
|
+
const root = this._rootElement || window;
|
|
136
|
+
const height = observableSection.offsetTop - this._element.offsetTop;
|
|
137
|
+
|
|
138
|
+
if (root.scrollTo) {
|
|
139
|
+
root.scrollTo({
|
|
140
|
+
top: height,
|
|
141
|
+
behavior: 'smooth'
|
|
142
|
+
});
|
|
143
|
+
return;
|
|
144
|
+
} // Chrome 60 doesn't support `scrollTo`
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
root.scrollTop = height;
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
_getNewObserver() {
|
|
153
|
+
const options = {
|
|
154
|
+
root: this._rootElement,
|
|
155
|
+
threshold: [0.1, 0.5, 1],
|
|
156
|
+
rootMargin: this._getRootMargin()
|
|
157
|
+
};
|
|
158
|
+
return new IntersectionObserver(entries => this._observerCallback(entries), options);
|
|
159
|
+
} // The logic of selection
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
_observerCallback(entries) {
|
|
163
|
+
const targetElement = entry => this._targetLinks.get(`#${entry.target.id}`);
|
|
164
|
+
|
|
165
|
+
const activate = entry => {
|
|
166
|
+
this._previousScrollData.visibleEntryTop = entry.target.offsetTop;
|
|
167
|
+
|
|
168
|
+
this._process(targetElement(entry));
|
|
169
|
+
};
|
|
170
|
+
|
|
171
|
+
const parentScrollTop = (this._rootElement || document.documentElement).scrollTop;
|
|
172
|
+
const userScrollsDown = parentScrollTop >= this._previousScrollData.parentScrollTop;
|
|
173
|
+
this._previousScrollData.parentScrollTop = parentScrollTop;
|
|
174
|
+
|
|
175
|
+
for (const entry of entries) {
|
|
176
|
+
if (!entry.isIntersecting) {
|
|
177
|
+
this._activeTarget = null;
|
|
178
|
+
|
|
179
|
+
this._clearActiveClass(targetElement(entry));
|
|
180
|
+
|
|
181
|
+
continue;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
const entryIsLowerThanPrevious = entry.target.offsetTop >= this._previousScrollData.visibleEntryTop; // if we are scrolling down, pick the bigger offsetTop
|
|
185
|
+
|
|
186
|
+
if (userScrollsDown && entryIsLowerThanPrevious) {
|
|
187
|
+
activate(entry); // if parent isn't scrolled, let's keep the first visible item, breaking the iteration
|
|
188
|
+
|
|
189
|
+
if (!parentScrollTop) {
|
|
190
|
+
return;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
continue;
|
|
194
|
+
} // if we are scrolling up, pick the smallest offsetTop
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
if (!userScrollsDown && !entryIsLowerThanPrevious) {
|
|
198
|
+
activate(entry);
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
} // TODO: v6 Only for backwards compatibility reasons. Use rootMargin only
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
_getRootMargin() {
|
|
205
|
+
return this._config.offset ? `${this._config.offset}px 0px -30%` : this._config.rootMargin;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
_initializeTargetsAndObservables() {
|
|
209
|
+
this._targetLinks = new Map();
|
|
210
|
+
this._observableSections = new Map();
|
|
211
|
+
const targetLinks = SelectorEngine__default.default.find(SELECTOR_TARGET_LINKS, this._config.target);
|
|
212
|
+
|
|
213
|
+
for (const anchor of targetLinks) {
|
|
214
|
+
// ensure that the anchor has an id and is not disabled
|
|
215
|
+
if (!anchor.hash || index.isDisabled(anchor)) {
|
|
216
|
+
continue;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
const observableSection = SelectorEngine__default.default.findOne(anchor.hash, this._element); // ensure that the observableSection exists & is visible
|
|
220
|
+
|
|
221
|
+
if (index.isVisible(observableSection)) {
|
|
222
|
+
this._targetLinks.set(anchor.hash, anchor);
|
|
223
|
+
|
|
224
|
+
this._observableSections.set(anchor.hash, observableSection);
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
_process(target) {
|
|
230
|
+
if (this._activeTarget === target) {
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
this._clearActiveClass(this._config.target);
|
|
235
|
+
|
|
236
|
+
this._activeTarget = target;
|
|
237
|
+
target.classList.add(CLASS_NAME_ACTIVE);
|
|
238
|
+
|
|
239
|
+
this._activateParents(target);
|
|
240
|
+
|
|
241
|
+
EventHandler__default.default.trigger(this._element, EVENT_ACTIVATE, {
|
|
242
|
+
relatedTarget: target
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
_activateParents(target) {
|
|
247
|
+
// Activate dropdown parents
|
|
248
|
+
if (target.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {
|
|
249
|
+
SelectorEngine__default.default.findOne(SELECTOR_DROPDOWN_TOGGLE, target.closest(SELECTOR_DROPDOWN)).classList.add(CLASS_NAME_ACTIVE);
|
|
250
|
+
return;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
for (const listGroup of SelectorEngine__default.default.parents(target, SELECTOR_NAV_LIST_GROUP)) {
|
|
254
|
+
// Set triggered links parents as active
|
|
255
|
+
// With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor
|
|
256
|
+
for (const item of SelectorEngine__default.default.prev(listGroup, SELECTOR_LINK_ITEMS)) {
|
|
257
|
+
item.classList.add(CLASS_NAME_ACTIVE);
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
_clearActiveClass(parent) {
|
|
263
|
+
parent.classList.remove(CLASS_NAME_ACTIVE);
|
|
264
|
+
const activeNodes = SelectorEngine__default.default.find(`${SELECTOR_TARGET_LINKS}.${CLASS_NAME_ACTIVE}`, parent);
|
|
265
|
+
|
|
266
|
+
for (const node of activeNodes) {
|
|
267
|
+
node.classList.remove(CLASS_NAME_ACTIVE);
|
|
268
|
+
}
|
|
269
|
+
} // Static
|
|
270
|
+
|
|
271
|
+
|
|
272
|
+
static jQueryInterface(config) {
|
|
273
|
+
return this.each(function () {
|
|
274
|
+
const data = ScrollSpy.getOrCreateInstance(this, config);
|
|
275
|
+
|
|
276
|
+
if (typeof config !== 'string') {
|
|
277
|
+
return;
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {
|
|
281
|
+
throw new TypeError(`No method named "${config}"`);
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
data[config]();
|
|
285
|
+
});
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* Data API implementation
|
|
291
|
+
*/
|
|
292
|
+
|
|
293
|
+
|
|
294
|
+
EventHandler__default.default.on(window, EVENT_LOAD_DATA_API, () => {
|
|
295
|
+
for (const spy of SelectorEngine__default.default.find(SELECTOR_DATA_SPY)) {
|
|
296
|
+
ScrollSpy.getOrCreateInstance(spy);
|
|
297
|
+
}
|
|
298
|
+
});
|
|
299
|
+
/**
|
|
300
|
+
* jQuery
|
|
301
|
+
*/
|
|
302
|
+
|
|
303
|
+
index.defineJQueryPlugin(ScrollSpy);
|
|
304
|
+
|
|
305
|
+
return ScrollSpy;
|
|
306
|
+
|
|
307
|
+
}));
|
|
308
|
+
//# sourceMappingURL=scrollspy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scrollspy.js","sources":["../src/scrollspy.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.2.0): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin, getElement, isDisabled, isVisible } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * Constants\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_TARGET_LINKS = '[href]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_LINK_ITEMS = `${SELECTOR_NAV_LINKS}, ${SELECTOR_NAV_ITEMS} > ${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst Default = {\n offset: null, // TODO: v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: '0px 0px -25%',\n smoothScroll: false,\n target: null\n}\n\nconst DefaultType = {\n offset: '(number|null)', // TODO v6 @deprecated, keep it for backwards compatibility reasons\n rootMargin: 'string',\n smoothScroll: 'boolean',\n target: 'element'\n}\n\n/**\n * Class definition\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n // this._element is the observablesContainer and config.target the menu links wrapper\n this._targetLinks = new Map()\n this._observableSections = new Map()\n this._rootElement = getComputedStyle(this._element).overflowY === 'visible' ? null : this._element\n this._activeTarget = null\n this._observer = null\n this._previousScrollData = {\n visibleEntryTop: 0,\n parentScrollTop: 0\n }\n this.refresh() // initialize\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n refresh() {\n this._initializeTargetsAndObservables()\n this._maybeEnableSmoothScroll()\n\n if (this._observer) {\n this._observer.disconnect()\n } else {\n this._observer = this._getNewObserver()\n }\n\n for (const section of this._observableSections.values()) {\n this._observer.observe(section)\n }\n }\n\n dispose() {\n this._observer.disconnect()\n super.dispose()\n }\n\n // Private\n _configAfterMerge(config) {\n // TODO: on v6 target should be given explicitly & remove the {target: 'ss-target'} case\n config.target = getElement(config.target) || document.body\n\n return config\n }\n\n _maybeEnableSmoothScroll() {\n if (!this._config.smoothScroll) {\n return\n }\n\n // unregister any previous listeners\n EventHandler.off(this._config.target, EVENT_CLICK)\n\n EventHandler.on(this._config.target, EVENT_CLICK, SELECTOR_TARGET_LINKS, event => {\n const observableSection = this._observableSections.get(event.target.hash)\n if (observableSection) {\n event.preventDefault()\n const root = this._rootElement || window\n const height = observableSection.offsetTop - this._element.offsetTop\n if (root.scrollTo) {\n root.scrollTo({ top: height, behavior: 'smooth' })\n return\n }\n\n // Chrome 60 doesn't support `scrollTo`\n root.scrollTop = height\n }\n })\n }\n\n _getNewObserver() {\n const options = {\n root: this._rootElement,\n threshold: [0.1, 0.5, 1],\n rootMargin: this._getRootMargin()\n }\n\n return new IntersectionObserver(entries => this._observerCallback(entries), options)\n }\n\n // The logic of selection\n _observerCallback(entries) {\n const targetElement = entry => this._targetLinks.get(`#${entry.target.id}`)\n const activate = entry => {\n this._previousScrollData.visibleEntryTop = entry.target.offsetTop\n this._process(targetElement(entry))\n }\n\n const parentScrollTop = (this._rootElement || document.documentElement).scrollTop\n const userScrollsDown = parentScrollTop >= this._previousScrollData.parentScrollTop\n this._previousScrollData.parentScrollTop = parentScrollTop\n\n for (const entry of entries) {\n if (!entry.isIntersecting) {\n this._activeTarget = null\n this._clearActiveClass(targetElement(entry))\n\n continue\n }\n\n const entryIsLowerThanPrevious = entry.target.offsetTop >= this._previousScrollData.visibleEntryTop\n // if we are scrolling down, pick the bigger offsetTop\n if (userScrollsDown && entryIsLowerThanPrevious) {\n activate(entry)\n // if parent isn't scrolled, let's keep the first visible item, breaking the iteration\n if (!parentScrollTop) {\n return\n }\n\n continue\n }\n\n // if we are scrolling up, pick the smallest offsetTop\n if (!userScrollsDown && !entryIsLowerThanPrevious) {\n activate(entry)\n }\n }\n }\n\n // TODO: v6 Only for backwards compatibility reasons. Use rootMargin only\n _getRootMargin() {\n return this._config.offset ? `${this._config.offset}px 0px -30%` : this._config.rootMargin\n }\n\n _initializeTargetsAndObservables() {\n this._targetLinks = new Map()\n this._observableSections = new Map()\n\n const targetLinks = SelectorEngine.find(SELECTOR_TARGET_LINKS, this._config.target)\n\n for (const anchor of targetLinks) {\n // ensure that the anchor has an id and is not disabled\n if (!anchor.hash || isDisabled(anchor)) {\n continue\n }\n\n const observableSection = SelectorEngine.findOne(anchor.hash, this._element)\n\n // ensure that the observableSection exists & is visible\n if (isVisible(observableSection)) {\n this._targetLinks.set(anchor.hash, anchor)\n this._observableSections.set(anchor.hash, observableSection)\n }\n }\n }\n\n _process(target) {\n if (this._activeTarget === target) {\n return\n }\n\n this._clearActiveClass(this._config.target)\n this._activeTarget = target\n target.classList.add(CLASS_NAME_ACTIVE)\n this._activateParents(target)\n\n EventHandler.trigger(this._element, EVENT_ACTIVATE, { relatedTarget: target })\n }\n\n _activateParents(target) {\n // Activate dropdown parents\n if (target.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, target.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n return\n }\n\n for (const listGroup of SelectorEngine.parents(target, SELECTOR_NAV_LIST_GROUP)) {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n for (const item of SelectorEngine.prev(listGroup, SELECTOR_LINK_ITEMS)) {\n item.classList.add(CLASS_NAME_ACTIVE)\n }\n }\n }\n\n _clearActiveClass(parent) {\n parent.classList.remove(CLASS_NAME_ACTIVE)\n\n const activeNodes = SelectorEngine.find(`${SELECTOR_TARGET_LINKS}.${CLASS_NAME_ACTIVE}`, parent)\n for (const node of activeNodes) {\n node.classList.remove(CLASS_NAME_ACTIVE)\n }\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const spy of SelectorEngine.find(SELECTOR_DATA_SPY)) {\n ScrollSpy.getOrCreateInstance(spy)\n }\n})\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","EVENT_ACTIVATE","EVENT_CLICK","EVENT_LOAD_DATA_API","CLASS_NAME_DROPDOWN_ITEM","CLASS_NAME_ACTIVE","SELECTOR_DATA_SPY","SELECTOR_TARGET_LINKS","SELECTOR_NAV_LIST_GROUP","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_LINK_ITEMS","SELECTOR_DROPDOWN","SELECTOR_DROPDOWN_TOGGLE","Default","offset","rootMargin","smoothScroll","target","DefaultType","ScrollSpy","BaseComponent","constructor","element","config","_targetLinks","Map","_observableSections","_rootElement","getComputedStyle","_element","overflowY","_activeTarget","_observer","_previousScrollData","visibleEntryTop","parentScrollTop","refresh","_initializeTargetsAndObservables","_maybeEnableSmoothScroll","disconnect","_getNewObserver","section","values","observe","dispose","_configAfterMerge","getElement","document","body","_config","EventHandler","off","on","event","observableSection","get","hash","preventDefault","root","window","height","offsetTop","scrollTo","top","behavior","scrollTop","options","threshold","_getRootMargin","IntersectionObserver","entries","_observerCallback","targetElement","entry","id","activate","_process","documentElement","userScrollsDown","isIntersecting","_clearActiveClass","entryIsLowerThanPrevious","targetLinks","SelectorEngine","find","anchor","isDisabled","findOne","isVisible","set","classList","add","_activateParents","trigger","relatedTarget","contains","closest","listGroup","parents","item","prev","parent","remove","activeNodes","node","jQueryInterface","each","data","getOrCreateInstance","undefined","startsWith","TypeError","spy","defineJQueryPlugin"],"mappings":"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"}
|
|
@@ -0,0 +1,334 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Bootstrap tab.js v5.2.0 (https://getbootstrap.com/)
|
|
3
|
+
* Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
|
4
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
5
|
+
*/
|
|
6
|
+
(function (global, factory) {
|
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('./util/index'), require('./dom/event-handler'), require('./dom/selector-engine'), require('./base-component')) :
|
|
8
|
+
typeof define === 'function' && define.amd ? define(['./util/index', './dom/event-handler', './dom/selector-engine', './base-component'], factory) :
|
|
9
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Tab = factory(global.Index, global.EventHandler, global.SelectorEngine, global.BaseComponent));
|
|
10
|
+
})(this, (function (index, EventHandler, SelectorEngine, BaseComponent) { 'use strict';
|
|
11
|
+
|
|
12
|
+
const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
|
|
13
|
+
|
|
14
|
+
const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
|
|
15
|
+
const SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine);
|
|
16
|
+
const BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* --------------------------------------------------------------------------
|
|
20
|
+
* Bootstrap (v5.2.0): tab.js
|
|
21
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
22
|
+
* --------------------------------------------------------------------------
|
|
23
|
+
*/
|
|
24
|
+
/**
|
|
25
|
+
* Constants
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
const NAME = 'tab';
|
|
29
|
+
const DATA_KEY = 'bs.tab';
|
|
30
|
+
const EVENT_KEY = `.${DATA_KEY}`;
|
|
31
|
+
const EVENT_HIDE = `hide${EVENT_KEY}`;
|
|
32
|
+
const EVENT_HIDDEN = `hidden${EVENT_KEY}`;
|
|
33
|
+
const EVENT_SHOW = `show${EVENT_KEY}`;
|
|
34
|
+
const EVENT_SHOWN = `shown${EVENT_KEY}`;
|
|
35
|
+
const EVENT_CLICK_DATA_API = `click${EVENT_KEY}`;
|
|
36
|
+
const EVENT_KEYDOWN = `keydown${EVENT_KEY}`;
|
|
37
|
+
const EVENT_LOAD_DATA_API = `load${EVENT_KEY}`;
|
|
38
|
+
const ARROW_LEFT_KEY = 'ArrowLeft';
|
|
39
|
+
const ARROW_RIGHT_KEY = 'ArrowRight';
|
|
40
|
+
const ARROW_UP_KEY = 'ArrowUp';
|
|
41
|
+
const ARROW_DOWN_KEY = 'ArrowDown';
|
|
42
|
+
const CLASS_NAME_ACTIVE = 'active';
|
|
43
|
+
const CLASS_NAME_FADE = 'fade';
|
|
44
|
+
const CLASS_NAME_SHOW = 'show';
|
|
45
|
+
const CLASS_DROPDOWN = 'dropdown';
|
|
46
|
+
const SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
|
|
47
|
+
const SELECTOR_DROPDOWN_MENU = '.dropdown-menu';
|
|
48
|
+
const SELECTOR_DROPDOWN_ITEM = '.dropdown-item';
|
|
49
|
+
const NOT_SELECTOR_DROPDOWN_TOGGLE = ':not(.dropdown-toggle)';
|
|
50
|
+
const SELECTOR_TAB_PANEL = '.list-group, .nav, [role="tablist"]';
|
|
51
|
+
const SELECTOR_OUTER = '.nav-item, .list-group-item';
|
|
52
|
+
const SELECTOR_INNER = `.nav-link${NOT_SELECTOR_DROPDOWN_TOGGLE}, .list-group-item${NOT_SELECTOR_DROPDOWN_TOGGLE}, [role="tab"]${NOT_SELECTOR_DROPDOWN_TOGGLE}`;
|
|
53
|
+
const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]'; // todo:v6: could be only `tab`
|
|
54
|
+
|
|
55
|
+
const SELECTOR_INNER_ELEM = `${SELECTOR_INNER}, ${SELECTOR_DATA_TOGGLE}`;
|
|
56
|
+
const SELECTOR_DATA_TOGGLE_ACTIVE = `.${CLASS_NAME_ACTIVE}[data-bs-toggle="tab"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="pill"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="list"]`;
|
|
57
|
+
/**
|
|
58
|
+
* Class definition
|
|
59
|
+
*/
|
|
60
|
+
|
|
61
|
+
class Tab extends BaseComponent__default.default {
|
|
62
|
+
constructor(element) {
|
|
63
|
+
super(element);
|
|
64
|
+
this._parent = this._element.closest(SELECTOR_TAB_PANEL);
|
|
65
|
+
|
|
66
|
+
if (!this._parent) {
|
|
67
|
+
return; // todo: should Throw exception on v6
|
|
68
|
+
// throw new TypeError(`${element.outerHTML} has not a valid parent ${SELECTOR_INNER_ELEM}`)
|
|
69
|
+
} // Set up initial aria attributes
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
this._setInitialAttributes(this._parent, this._getChildren());
|
|
73
|
+
|
|
74
|
+
EventHandler__default.default.on(this._element, EVENT_KEYDOWN, event => this._keydown(event));
|
|
75
|
+
} // Getters
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
static get NAME() {
|
|
79
|
+
return NAME;
|
|
80
|
+
} // Public
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
show() {
|
|
84
|
+
// Shows this elem and deactivate the active sibling if exists
|
|
85
|
+
const innerElem = this._element;
|
|
86
|
+
|
|
87
|
+
if (this._elemIsActive(innerElem)) {
|
|
88
|
+
return;
|
|
89
|
+
} // Search for active tab on same parent to deactivate it
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
const active = this._getActiveElem();
|
|
93
|
+
|
|
94
|
+
const hideEvent = active ? EventHandler__default.default.trigger(active, EVENT_HIDE, {
|
|
95
|
+
relatedTarget: innerElem
|
|
96
|
+
}) : null;
|
|
97
|
+
const showEvent = EventHandler__default.default.trigger(innerElem, EVENT_SHOW, {
|
|
98
|
+
relatedTarget: active
|
|
99
|
+
});
|
|
100
|
+
|
|
101
|
+
if (showEvent.defaultPrevented || hideEvent && hideEvent.defaultPrevented) {
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
this._deactivate(active, innerElem);
|
|
106
|
+
|
|
107
|
+
this._activate(innerElem, active);
|
|
108
|
+
} // Private
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
_activate(element, relatedElem) {
|
|
112
|
+
if (!element) {
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
element.classList.add(CLASS_NAME_ACTIVE);
|
|
117
|
+
|
|
118
|
+
this._activate(index.getElementFromSelector(element)); // Search and activate/show the proper section
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
const complete = () => {
|
|
122
|
+
if (element.getAttribute('role') !== 'tab') {
|
|
123
|
+
element.classList.add(CLASS_NAME_SHOW);
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
element.focus();
|
|
128
|
+
element.removeAttribute('tabindex');
|
|
129
|
+
element.setAttribute('aria-selected', true);
|
|
130
|
+
|
|
131
|
+
this._toggleDropDown(element, true);
|
|
132
|
+
|
|
133
|
+
EventHandler__default.default.trigger(element, EVENT_SHOWN, {
|
|
134
|
+
relatedTarget: relatedElem
|
|
135
|
+
});
|
|
136
|
+
};
|
|
137
|
+
|
|
138
|
+
this._queueCallback(complete, element, element.classList.contains(CLASS_NAME_FADE));
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
_deactivate(element, relatedElem) {
|
|
142
|
+
if (!element) {
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
element.classList.remove(CLASS_NAME_ACTIVE);
|
|
147
|
+
element.blur();
|
|
148
|
+
|
|
149
|
+
this._deactivate(index.getElementFromSelector(element)); // Search and deactivate the shown section too
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
const complete = () => {
|
|
153
|
+
if (element.getAttribute('role') !== 'tab') {
|
|
154
|
+
element.classList.remove(CLASS_NAME_SHOW);
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
element.setAttribute('aria-selected', false);
|
|
159
|
+
element.setAttribute('tabindex', '-1');
|
|
160
|
+
|
|
161
|
+
this._toggleDropDown(element, false);
|
|
162
|
+
|
|
163
|
+
EventHandler__default.default.trigger(element, EVENT_HIDDEN, {
|
|
164
|
+
relatedTarget: relatedElem
|
|
165
|
+
});
|
|
166
|
+
};
|
|
167
|
+
|
|
168
|
+
this._queueCallback(complete, element, element.classList.contains(CLASS_NAME_FADE));
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
_keydown(event) {
|
|
172
|
+
if (![ARROW_LEFT_KEY, ARROW_RIGHT_KEY, ARROW_UP_KEY, ARROW_DOWN_KEY].includes(event.key)) {
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
event.stopPropagation(); // stopPropagation/preventDefault both added to support up/down keys without scrolling the page
|
|
177
|
+
|
|
178
|
+
event.preventDefault();
|
|
179
|
+
const isNext = [ARROW_RIGHT_KEY, ARROW_DOWN_KEY].includes(event.key);
|
|
180
|
+
const nextActiveElement = index.getNextActiveElement(this._getChildren().filter(element => !index.isDisabled(element)), event.target, isNext, true);
|
|
181
|
+
|
|
182
|
+
if (nextActiveElement) {
|
|
183
|
+
Tab.getOrCreateInstance(nextActiveElement).show();
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
_getChildren() {
|
|
188
|
+
// collection of inner elements
|
|
189
|
+
return SelectorEngine__default.default.find(SELECTOR_INNER_ELEM, this._parent);
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
_getActiveElem() {
|
|
193
|
+
return this._getChildren().find(child => this._elemIsActive(child)) || null;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
_setInitialAttributes(parent, children) {
|
|
197
|
+
this._setAttributeIfNotExists(parent, 'role', 'tablist');
|
|
198
|
+
|
|
199
|
+
for (const child of children) {
|
|
200
|
+
this._setInitialAttributesOnChild(child);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
_setInitialAttributesOnChild(child) {
|
|
205
|
+
child = this._getInnerElement(child);
|
|
206
|
+
|
|
207
|
+
const isActive = this._elemIsActive(child);
|
|
208
|
+
|
|
209
|
+
const outerElem = this._getOuterElement(child);
|
|
210
|
+
|
|
211
|
+
child.setAttribute('aria-selected', isActive);
|
|
212
|
+
|
|
213
|
+
if (outerElem !== child) {
|
|
214
|
+
this._setAttributeIfNotExists(outerElem, 'role', 'presentation');
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
if (!isActive) {
|
|
218
|
+
child.setAttribute('tabindex', '-1');
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
this._setAttributeIfNotExists(child, 'role', 'tab'); // set attributes to the related panel too
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
this._setInitialAttributesOnTargetPanel(child);
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
_setInitialAttributesOnTargetPanel(child) {
|
|
228
|
+
const target = index.getElementFromSelector(child);
|
|
229
|
+
|
|
230
|
+
if (!target) {
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
this._setAttributeIfNotExists(target, 'role', 'tabpanel');
|
|
235
|
+
|
|
236
|
+
if (child.id) {
|
|
237
|
+
this._setAttributeIfNotExists(target, 'aria-labelledby', `#${child.id}`);
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
_toggleDropDown(element, open) {
|
|
242
|
+
const outerElem = this._getOuterElement(element);
|
|
243
|
+
|
|
244
|
+
if (!outerElem.classList.contains(CLASS_DROPDOWN)) {
|
|
245
|
+
return;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
const toggle = (selector, className) => {
|
|
249
|
+
const element = SelectorEngine__default.default.findOne(selector, outerElem);
|
|
250
|
+
|
|
251
|
+
if (element) {
|
|
252
|
+
element.classList.toggle(className, open);
|
|
253
|
+
}
|
|
254
|
+
};
|
|
255
|
+
|
|
256
|
+
toggle(SELECTOR_DROPDOWN_TOGGLE, CLASS_NAME_ACTIVE);
|
|
257
|
+
toggle(SELECTOR_DROPDOWN_MENU, CLASS_NAME_SHOW);
|
|
258
|
+
toggle(SELECTOR_DROPDOWN_ITEM, CLASS_NAME_ACTIVE);
|
|
259
|
+
outerElem.setAttribute('aria-expanded', open);
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
_setAttributeIfNotExists(element, attribute, value) {
|
|
263
|
+
if (!element.hasAttribute(attribute)) {
|
|
264
|
+
element.setAttribute(attribute, value);
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
_elemIsActive(elem) {
|
|
269
|
+
return elem.classList.contains(CLASS_NAME_ACTIVE);
|
|
270
|
+
} // Try to get the inner element (usually the .nav-link)
|
|
271
|
+
|
|
272
|
+
|
|
273
|
+
_getInnerElement(elem) {
|
|
274
|
+
return elem.matches(SELECTOR_INNER_ELEM) ? elem : SelectorEngine__default.default.findOne(SELECTOR_INNER_ELEM, elem);
|
|
275
|
+
} // Try to get the outer element (usually the .nav-item)
|
|
276
|
+
|
|
277
|
+
|
|
278
|
+
_getOuterElement(elem) {
|
|
279
|
+
return elem.closest(SELECTOR_OUTER) || elem;
|
|
280
|
+
} // Static
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
static jQueryInterface(config) {
|
|
284
|
+
return this.each(function () {
|
|
285
|
+
const data = Tab.getOrCreateInstance(this);
|
|
286
|
+
|
|
287
|
+
if (typeof config !== 'string') {
|
|
288
|
+
return;
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {
|
|
292
|
+
throw new TypeError(`No method named "${config}"`);
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
data[config]();
|
|
296
|
+
});
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
}
|
|
300
|
+
/**
|
|
301
|
+
* Data API implementation
|
|
302
|
+
*/
|
|
303
|
+
|
|
304
|
+
|
|
305
|
+
EventHandler__default.default.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
|
|
306
|
+
if (['A', 'AREA'].includes(this.tagName)) {
|
|
307
|
+
event.preventDefault();
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
if (index.isDisabled(this)) {
|
|
311
|
+
return;
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
Tab.getOrCreateInstance(this).show();
|
|
315
|
+
});
|
|
316
|
+
/**
|
|
317
|
+
* Initialize on focus
|
|
318
|
+
*/
|
|
319
|
+
|
|
320
|
+
EventHandler__default.default.on(window, EVENT_LOAD_DATA_API, () => {
|
|
321
|
+
for (const element of SelectorEngine__default.default.find(SELECTOR_DATA_TOGGLE_ACTIVE)) {
|
|
322
|
+
Tab.getOrCreateInstance(element);
|
|
323
|
+
}
|
|
324
|
+
});
|
|
325
|
+
/**
|
|
326
|
+
* jQuery
|
|
327
|
+
*/
|
|
328
|
+
|
|
329
|
+
index.defineJQueryPlugin(Tab);
|
|
330
|
+
|
|
331
|
+
return Tab;
|
|
332
|
+
|
|
333
|
+
}));
|
|
334
|
+
//# sourceMappingURL=tab.js.map
|