@iamproperty/components 7.1.0--beta7 → 7.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/css/components/actionbar.component.css +1 -0
- package/assets/css/components/actionbar.component.css.map +1 -0
- package/assets/css/components/actionbar.global.css +1 -1
- package/assets/css/components/actionbar.global.css.map +1 -1
- package/assets/css/components/address-lookup.css +1 -1
- package/assets/css/components/address-lookup.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.component.css +1 -0
- package/assets/css/components/bento-grid.component.css.map +1 -0
- package/assets/css/components/card.component.css +1 -1
- package/assets/css/components/card.component.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/charts.css +1 -1
- package/assets/css/components/charts.css.map +1 -1
- package/assets/css/components/charts.module.css +1 -1
- package/assets/css/components/charts.module.css.map +1 -1
- package/assets/css/components/collapsible-side.css +1 -1
- package/assets/css/components/collapsible-side.css.map +1 -1
- package/assets/css/components/doughnutchart.component.css +1 -0
- package/assets/css/components/doughnutchart.component.css.map +1 -0
- package/assets/css/components/fileupload.css.map +1 -1
- package/assets/css/components/header.css.map +1 -1
- package/assets/css/components/inline-edit.preload.css +1 -1
- package/assets/css/components/inline-edit.preload.css.map +1 -1
- package/assets/css/components/marketing.css.map +1 -1
- package/assets/css/components/menu.component.css +1 -0
- package/assets/css/components/menu.component.css.map +1 -0
- package/assets/css/components/menu.css +1 -0
- package/assets/css/components/menu.css.map +1 -0
- package/assets/css/components/multi-step.component.css.map +1 -1
- package/assets/css/components/multiselect.preload.css +1 -1
- package/assets/css/components/multiselect.preload.css.map +1 -1
- package/assets/css/components/nav.component.css +1 -0
- package/assets/css/components/nav.component.css.map +1 -0
- package/assets/css/components/nav.docs.css.map +1 -1
- package/assets/css/components/nav.global.css.map +1 -1
- package/assets/css/components/nav.old.css +1 -1
- package/assets/css/components/nav.old.css.map +1 -1
- package/assets/css/components/nav.preload.css +1 -1
- package/assets/css/components/nav.preload.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/property-searchbar.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/snapshot.css.map +1 -1
- package/assets/css/components/stepper.css.map +1 -1
- package/assets/css/components/{table.css → table.component.css} +1 -1
- package/assets/css/components/table.component.css.map +1 -0
- 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 -0
- package/assets/css/components/tabs.component.css.map +1 -0
- package/assets/css/components/tabs.css.map +1 -1
- package/assets/css/components/testimonial.css.map +1 -1
- package/assets/css/components/timeline.css.map +1 -1
- package/assets/css/core.min.css +1 -1
- package/assets/css/core.min.css.map +1 -1
- package/assets/css/mobile-core.min.css +1 -0
- package/assets/css/mobile-core.min.css.map +1 -0
- package/assets/css/mobile.min.css +1 -0
- package/assets/css/mobile.min.css.map +1 -0
- package/assets/css/style.min.css +1 -1
- package/assets/css/style.min.css.map +1 -1
- package/assets/js/components/_global.js +0 -1
- 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 +86 -8
- package/assets/js/components/actionbar/actionbar.component.min.js +19 -6
- package/assets/js/components/actionbar/actionbar.component.min.js.map +1 -1
- package/assets/js/components/address-lookup/address-lookup.component.js +17 -18
- package/assets/js/components/address-lookup/address-lookup.component.min.js +5 -5
- package/assets/js/components/address-lookup/address-lookup.component.min.js.map +1 -1
- package/assets/js/components/applied-filters/applied-filters.component.js +0 -1
- package/assets/js/components/applied-filters/applied-filters.component.min.js +4 -4
- package/assets/js/components/applied-filters/applied-filters.component.min.js.map +1 -1
- package/assets/js/components/barchart/barchart.component.js +2 -3
- package/assets/js/components/barchart/barchart.component.min.js +8 -4
- package/assets/js/components/barchart/barchart.component.min.js.map +1 -1
- package/assets/js/components/bento-grid/bento-grid.component.js +50 -0
- package/assets/js/components/bento-grid/bento-grid.component.min.js +15 -0
- package/assets/js/components/bento-grid/bento-grid.component.min.js.map +1 -0
- package/assets/js/components/card/card.component.js +10 -13
- package/assets/js/components/card/card.component.min.js +7 -7
- package/assets/js/components/card/card.component.min.js.map +1 -1
- package/assets/js/components/carousel/carousel.component.js +4 -5
- 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 -5
- package/assets/js/components/collapsible-side/collapsible-side.component.js +4 -5
- 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/doughnutchart/doughnutchart.component.js +70 -0
- package/assets/js/components/doughnutchart/doughnutchart.component.min.js +25 -0
- package/assets/js/components/doughnutchart/doughnutchart.component.min.js.map +1 -0
- package/assets/js/components/fileupload/fileupload.component.js +2 -3
- package/assets/js/components/fileupload/fileupload.component.min.js +6 -6
- package/assets/js/components/fileupload/fileupload.component.min.js.map +1 -1
- package/assets/js/components/filter-card/filter-card.component.js +3 -4
- package/assets/js/components/filter-card/filter-card.component.min.js +4 -4
- package/assets/js/components/filter-card/filter-card.component.min.js.map +1 -1
- package/assets/js/components/filterlist/filterlist.component.js +0 -1
- package/assets/js/components/filterlist/filterlist.component.min.js +3 -3
- package/assets/js/components/filterlist/filterlist.component.min.js.map +1 -1
- package/assets/js/components/header/header.component.js +0 -1
- package/assets/js/components/header/header.component.min.js +1 -1
- package/assets/js/components/header/header.component.min.js.map +1 -1
- package/assets/js/components/inline-edit/inline-edit.component.js +7 -8
- package/assets/js/components/inline-edit/inline-edit.component.min.js +4 -4
- package/assets/js/components/inline-edit/inline-edit.component.min.js.map +1 -1
- package/assets/js/components/marketing/marketing.component.js +0 -1
- 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 +200 -0
- package/assets/js/components/menu/menu.component.min.js +77 -0
- package/assets/js/components/menu/menu.component.min.js.map +1 -0
- package/assets/js/components/multi-step/multi-step.component.js +10 -10
- package/assets/js/components/multi-step/multi-step.component.min.js +13 -0
- package/assets/js/components/multi-step/multi-step.component.min.js.map +1 -0
- package/assets/js/components/multiselect/multiselect.component.js +10 -10
- package/assets/js/components/multiselect/multiselect.component.min.js +3 -3
- package/assets/js/components/multiselect/multiselect.component.min.js.map +1 -1
- package/assets/js/components/nav/nav.component.js +7 -7
- package/assets/js/components/nav/nav.component.min.js +7 -7
- package/assets/js/components/nav/nav.component.min.js.map +1 -1
- package/assets/js/components/notification/notification.component.js +3 -3
- package/assets/js/components/notification/notification.component.min.js +4 -4
- package/assets/js/components/notification/notification.component.min.js.map +1 -1
- package/assets/js/components/pagination/pagination.component.js +3 -4
- package/assets/js/components/pagination/pagination.component.min.js +4 -4
- package/assets/js/components/pagination/pagination.component.min.js.map +1 -1
- package/assets/js/components/record-card/record-card.component.js +6 -8
- package/assets/js/components/record-card/record-card.component.min.js +4 -4
- package/assets/js/components/record-card/record-card.component.min.js.map +1 -1
- package/assets/js/components/search/search.component.js +9 -6
- package/assets/js/components/search/search.component.min.js +8 -5
- package/assets/js/components/search/search.component.min.js.map +1 -1
- package/assets/js/components/slider/slider.component.js +8 -8
- package/assets/js/components/slider/slider.component.min.js +5 -5
- package/assets/js/components/slider/slider.component.min.js.map +1 -1
- package/assets/js/components/table/table.component.js +8 -9
- package/assets/js/components/table/table.component.min.js +7 -7
- package/assets/js/components/table/table.component.min.js.map +1 -1
- package/assets/js/components/tabs/tabs.component.js +1 -2
- package/assets/js/components/tabs/tabs.component.min.js +3 -3
- package/assets/js/components/tabs/tabs.component.min.js.map +1 -1
- package/assets/js/components/video-card/video-card.component.js +4 -3
- package/assets/js/components/video-card/video-card.component.min.js +3 -3
- package/assets/js/components/video-card/video-card.component.min.js.map +1 -1
- package/assets/js/modules/applied-filters.js +8 -9
- package/assets/js/modules/carousel.js +9 -10
- package/assets/js/modules/chart.js +5 -3
- package/assets/js/modules/chart.module.js +108 -1
- package/assets/js/modules/dialogs.js +6 -7
- package/assets/js/modules/drawer.js +1 -2
- package/assets/js/modules/dynamicEvents.js +7 -8
- package/assets/js/modules/fileupload.js +7 -7
- package/assets/js/modules/filterlist.js +3 -4
- package/assets/js/modules/form.js +12 -13
- package/assets/js/modules/helpers.js +3 -5
- package/assets/js/modules/inputs.js +6 -9
- package/assets/js/modules/nav.js +3 -4
- package/assets/js/modules/notification.js +2 -3
- package/assets/js/modules/orderablelist.js +0 -1
- package/assets/js/modules/table.js +80 -42
- package/assets/js/modules/tabs.js +3 -6
- package/assets/js/scripts.bundle.js +3 -3
- package/assets/js/scripts.bundle.js.map +1 -1
- package/assets/js/scripts.bundle.min.js +2 -2
- package/assets/js/scripts.bundle.min.js.map +1 -1
- package/assets/js/scripts.js +64 -6
- package/assets/js/tests/card.spec.js +14 -0
- package/assets/js/tests/carousel.spec.js +60 -0
- package/assets/js/tests/chart.spec.js +7 -5
- package/assets/js/tests/fileupload.spec.js +22 -0
- package/assets/js/tests/multistep.spec.js +68 -0
- package/assets/sass/_bs_grid.scss +4 -1
- package/assets/sass/_components.scss +323 -100
- package/assets/sass/_corefiles.scss +42 -18
- package/assets/sass/_elements.scss +98 -18
- package/assets/sass/_example.scss +61 -0
- package/assets/sass/_func.scss +5 -13
- package/assets/sass/_functions/bs_utilities.scss +43 -39
- package/assets/sass/_functions/functions.scss +66 -52
- package/assets/sass/_functions/mixins.scss +84 -100
- package/assets/sass/_functions/utility-mixins.scss +56 -44
- package/assets/sass/_functions/variables.scss +90 -1659
- package/assets/sass/_functions/variables_old.scss +1701 -0
- package/assets/sass/_grid.scss +19 -5
- package/assets/sass/_tests/func.spec.scss +1 -37
- package/assets/sass/_tests/mixins.spec.scss +1 -77
- package/assets/sass/_tests/typography.spec.scss +1 -1
- package/assets/sass/_utilities.scss +15 -5
- package/assets/sass/_utility-mixins.scss +6 -1
- package/assets/sass/components/{actionbar.scss → actionbar.component.scss} +82 -16
- package/assets/sass/components/actionbar.global.scss +28 -14
- package/assets/sass/components/address-lookup.scss +6 -0
- package/assets/sass/components/barchart.component.scss +7 -20
- package/assets/sass/components/bento-grid.component.scss +91 -0
- package/assets/sass/components/carousel.config.scss +64 -58
- package/assets/sass/components/charts.config.scss +73 -67
- package/assets/sass/components/charts.module.scss +128 -97
- package/assets/sass/components/charts.scss +43 -42
- package/assets/sass/components/collapsible-side.scss +29 -27
- package/assets/sass/components/doughnutchart.component.scss +205 -0
- package/assets/sass/components/fileupload.scss +4 -3
- package/assets/sass/components/header.scss +5 -5
- package/assets/sass/components/inline-edit.preload.scss +108 -102
- package/assets/sass/components/menu.component.scss +101 -0
- package/assets/sass/components/menu.scss +21 -0
- package/assets/sass/components/multi-step.component.scss +5 -3
- package/assets/sass/components/multiselect.preload.scss +36 -30
- package/assets/sass/components/{nav.scss → nav.component.scss} +41 -21
- package/assets/sass/components/nav.docs.scss +1 -1
- package/assets/sass/components/nav.global.scss +13 -11
- package/assets/sass/components/nav.old.scss +21 -24
- package/assets/sass/components/nav.preload.scss +40 -34
- package/assets/sass/components/notification.scss +9 -5
- package/assets/sass/components/pagination.scss +6 -0
- package/assets/sass/components/property-searchbar.scss +7 -7
- package/assets/sass/components/slider.scss +2 -0
- package/assets/sass/components/snapshot.scss +2 -2
- package/assets/sass/components/stepper.scss +7 -7
- package/assets/sass/components/table.global.scss +57 -1
- package/assets/sass/components/tabs.component.scss +5 -0
- package/assets/sass/components/tabs.scss +7 -3
- package/assets/sass/components/testimonial.scss +7 -7
- package/assets/sass/components/timeline.scss +1 -1
- package/assets/sass/core.scss +13 -4
- package/assets/sass/elements/admin-panel.scss +199 -185
- package/assets/sass/elements/badge-tag.scss +87 -81
- package/assets/sass/elements/brand.scss +67 -61
- package/assets/sass/elements/buttons--action.scss +55 -0
- package/assets/sass/elements/buttons--compact.scss +135 -0
- package/assets/sass/elements/buttons--global.scss +322 -0
- package/assets/sass/elements/buttons--secondary.scss +24 -0
- package/assets/sass/elements/buttons--tertiary.scss +57 -0
- package/assets/sass/elements/buttons.scss +29 -503
- package/assets/sass/elements/container.scss +157 -151
- package/assets/sass/elements/details.scss +147 -138
- package/assets/sass/elements/dialog.scss +36 -30
- package/assets/sass/elements/forms.scss +1061 -1047
- package/assets/sass/elements/icons.scss +23 -17
- package/assets/sass/elements/links.scss +131 -116
- package/assets/sass/elements/lists.scss +270 -264
- package/assets/sass/elements/media.scss +19 -13
- package/assets/sass/elements/modal.scss +336 -330
- package/assets/sass/elements/popover.scss +163 -152
- package/assets/sass/elements/progress.scss +173 -162
- package/assets/sass/elements/table.element.scss +115 -109
- package/assets/sass/elements/tooltips.scss +87 -80
- package/assets/sass/elements/type.scss +172 -160
- package/assets/sass/email.scss +0 -1
- package/assets/sass/error.scss +15 -13
- package/assets/sass/foundations/reboot.scss +176 -170
- package/assets/sass/foundations/root.scss +136 -125
- package/assets/sass/helpers/max-height.scss +2 -2
- package/assets/sass/main.scss +14 -6
- package/assets/sass/mobile-core.scss +14 -0
- package/assets/sass/mobile.scss +16 -0
- package/assets/sass/templates/auth.scss +88 -83
- package/assets/sass/templates/form.scss +68 -59
- package/assets/ts/components/_global.ts +2 -3
- package/assets/ts/components/actionbar/actionbar.component.ts +94 -2
- package/assets/ts/components/address-lookup/address-lookup.component.ts +21 -22
- package/assets/ts/components/applied-filters/applied-filters.component.ts +1 -2
- package/assets/ts/components/barchart/barchart.component.ts +3 -5
- package/assets/ts/components/bento-grid/README.md +31 -0
- package/assets/ts/components/bento-grid/bento-grid.component.ts +67 -0
- package/assets/ts/components/card/card.component.ts +13 -16
- package/assets/ts/components/carousel/carousel.component.ts +5 -7
- package/assets/ts/components/chart/chart.component.ts +4 -9
- package/assets/ts/components/collapsible-side/collapsible-side.component.ts +5 -6
- package/assets/ts/components/doughnutchart/doughnutchart.component.ts +85 -0
- package/assets/ts/components/fileupload/fileupload.component.ts +5 -6
- package/assets/ts/components/filter-card/filter-card.component.ts +4 -5
- package/assets/ts/components/filterlist/filterlist.component.ts +1 -2
- package/assets/ts/components/header/header.component.ts +1 -3
- package/assets/ts/components/inline-edit/inline-edit.component.ts +8 -11
- package/assets/ts/components/marketing/marketing.component.ts +1 -3
- package/assets/ts/components/menu/menu.component.ts +222 -0
- package/assets/ts/components/multi-step/multi-step.component.ts +19 -23
- package/assets/ts/components/multiselect/multiselect.component.ts +13 -14
- package/assets/ts/components/nav/nav.component.ts +8 -9
- package/assets/ts/components/notification/notification.component.ts +3 -3
- package/assets/ts/components/pagination/pagination.component.ts +7 -8
- package/assets/ts/components/record-card/record-card.component.ts +9 -11
- package/assets/ts/components/search/search.component.ts +12 -9
- package/assets/ts/components/slider/slider.component.ts +9 -10
- package/assets/ts/components/table/table.component.ts +14 -16
- package/assets/ts/components/tabs/tabs.component.ts +2 -3
- package/assets/ts/components/video-card/video-card.component.ts +13 -12
- package/assets/ts/modules/applied-filters.ts +10 -11
- package/assets/ts/modules/card.module.ts +1 -1
- package/assets/ts/modules/carousel.ts +13 -15
- package/assets/ts/modules/chart.module.ts +152 -19
- package/assets/ts/modules/chart.ts +26 -24
- package/assets/ts/modules/dialogs.ts +10 -13
- package/assets/ts/modules/drawer.ts +1 -2
- package/assets/ts/modules/dynamicEvents.ts +12 -14
- package/assets/ts/modules/fileupload.ts +10 -10
- package/assets/ts/modules/filterlist.ts +6 -7
- package/assets/ts/modules/form.ts +16 -17
- package/assets/ts/modules/helpers.ts +18 -21
- package/assets/ts/modules/inputs.ts +15 -18
- package/assets/ts/modules/nav.ts +4 -5
- package/assets/ts/modules/notification.ts +7 -8
- package/assets/ts/modules/orderablelist.ts +3 -4
- package/assets/ts/modules/pagination.ts +1 -1
- package/assets/ts/modules/table.ts +103 -60
- package/assets/ts/modules/tabs.ts +5 -8
- package/assets/ts/scripts.ts +70 -6
- package/assets/ts/tests/card.spec.ts +19 -0
- package/assets/ts/tests/carousel.spec.ts +66 -0
- package/assets/ts/tests/chart.spec.ts +9 -6
- package/assets/ts/tests/fileupload.spec.ts +30 -0
- package/assets/ts/tests/multistep.spec.ts +78 -0
- package/dist/components.es.js +1258 -1063
- package/dist/components.umd.js +473 -195
- package/package.json +44 -49
- package/src/components/BentoGrid/BentoGrid.vue +20 -0
- package/src/components/DoughnutChart/DoughnutChart.vue +23 -0
- package/src/components/FileUpload/FileUpload.vue +4 -1
- package/src/components/Menu/Menu.vue +22 -0
- package/src/components/Tabs/Tabs.vue +0 -4
- package/src/index.js +25 -19
- package/assets/css/components/actionbar.css +0 -1
- package/assets/css/components/actionbar.css.map +0 -1
- package/assets/css/components/nav.css +0 -1
- package/assets/css/components/nav.css.map +0 -1
- package/assets/css/components/table.css.map +0 -1
- package/assets/js/components.bundle.js +0 -5
- package/assets/js/components.bundle.js.map +0 -1
- package/assets/js/components.js +0 -57
- package/assets/js/modules/file-upload.js +0 -32
- package/assets/ts/components.ts +0 -62
- package/assets/ts/modules/file-upload.ts +0 -52
- package/dist/style.css +0 -1
- /package/assets/sass/components/{table.scss → table.component.scss} +0 -0
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
// @ts-nocheck
|
|
2
1
|
import Cookies from 'js-cookie';
|
|
3
2
|
import { safeID, resolvePath, isTraversable } from '../../modules/helpers';
|
|
4
3
|
|
|
@@ -33,6 +32,9 @@ class iamSearch extends HTMLElement {
|
|
|
33
32
|
}
|
|
34
33
|
.optional-text {
|
|
35
34
|
display: none;
|
|
35
|
+
}
|
|
36
|
+
.js-hide {
|
|
37
|
+
display: none !important;
|
|
36
38
|
}
|
|
37
39
|
</style>
|
|
38
40
|
<link rel="stylesheet" href="https://kit.fontawesome.com/26fdbf0179.css" crossorigin="anonymous" />
|
|
@@ -41,7 +43,8 @@ class iamSearch extends HTMLElement {
|
|
|
41
43
|
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
|
42
44
|
}
|
|
43
45
|
|
|
44
|
-
async connectedCallback() {
|
|
46
|
+
async connectedCallback(): void {
|
|
47
|
+
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
45
48
|
const searchWrapper = this;
|
|
46
49
|
const inputField = this.querySelector('input');
|
|
47
50
|
const valueSchema = this.hasAttribute('data-value-schema') ? this.getAttribute('data-value-schema') : 'value';
|
|
@@ -49,6 +52,7 @@ class iamSearch extends HTMLElement {
|
|
|
49
52
|
const loopSchema = this.hasAttribute('data-schema') ? this.getAttribute('data-schema') : '';
|
|
50
53
|
let datalist = this.querySelector('datalist');
|
|
51
54
|
const searched = [];
|
|
55
|
+
let ajaxURL = this.getAttribute('data-url');
|
|
52
56
|
|
|
53
57
|
// Clone original input field, re-name and use for display purposes
|
|
54
58
|
const displayInputField = inputField.cloneNode();
|
|
@@ -73,7 +77,7 @@ class iamSearch extends HTMLElement {
|
|
|
73
77
|
|
|
74
78
|
// Search the endpoint when 3 characters has been added
|
|
75
79
|
if (searchWrapper.hasAttribute('data-url')) {
|
|
76
|
-
displayInputField.addEventListener('input', (
|
|
80
|
+
displayInputField.addEventListener('input', () => {
|
|
77
81
|
if (displayInputField.value.length == 3 && !searched.includes(displayInputField.value)) {
|
|
78
82
|
search(displayInputField.value);
|
|
79
83
|
searched.push(displayInputField.value);
|
|
@@ -81,7 +85,7 @@ class iamSearch extends HTMLElement {
|
|
|
81
85
|
});
|
|
82
86
|
}
|
|
83
87
|
|
|
84
|
-
function checkMatch() {
|
|
88
|
+
function checkMatch(): void {
|
|
85
89
|
const match = datalist.querySelector(`option[value="${displayInputField.value}"]`);
|
|
86
90
|
const subMatch = datalist.querySelector(`option[value*="${displayInputField.value}" i]`);
|
|
87
91
|
|
|
@@ -97,12 +101,11 @@ class iamSearch extends HTMLElement {
|
|
|
97
101
|
}
|
|
98
102
|
|
|
99
103
|
// on change update oringinal field with the actual value and use displayed input for the nice display text
|
|
100
|
-
displayInputField.addEventListener('input', (
|
|
104
|
+
displayInputField.addEventListener('input', () => {
|
|
101
105
|
checkMatch();
|
|
102
106
|
});
|
|
103
107
|
|
|
104
|
-
const search = async (searchterm) => {
|
|
105
|
-
let ajaxURL = searchWrapper.getAttribute('data-url');
|
|
108
|
+
const search = async (searchterm): any => {
|
|
106
109
|
ajaxURL += `${encodeURI(searchterm)}`;
|
|
107
110
|
|
|
108
111
|
// Setup controller vars if not already set
|
|
@@ -134,7 +137,7 @@ class iamSearch extends HTMLElement {
|
|
|
134
137
|
const loopValues = resolvePath(response, loopSchema, '');
|
|
135
138
|
|
|
136
139
|
if (isTraversable(loopValues) && typeof loopValues.forEach == 'function') {
|
|
137
|
-
loopValues.forEach((item
|
|
140
|
+
loopValues.forEach((item) => {
|
|
138
141
|
const actualValue = resolvePath(item, valueSchema, '');
|
|
139
142
|
const displayValue = resolvePath(item, displaySchema, '').replace('\n', ', ');
|
|
140
143
|
|
|
@@ -146,7 +149,7 @@ class iamSearch extends HTMLElement {
|
|
|
146
149
|
} else if (typeof loopValues == 'object') {
|
|
147
150
|
for (const [key, value] of Object.entries(loopValues)) {
|
|
148
151
|
if (isTraversable(value) && typeof value.forEach == 'function') {
|
|
149
|
-
value.forEach((item
|
|
152
|
+
value.forEach((item) => {
|
|
150
153
|
const actualValue = resolvePath(item, valueSchema, '');
|
|
151
154
|
const displayValue = resolvePath(item, displaySchema, '').replace('\n', ', ');
|
|
152
155
|
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
// @ts-nocheck
|
|
2
|
-
|
|
3
1
|
// Data layer Web component created
|
|
4
2
|
window.dataLayer = window.dataLayer || [];
|
|
5
3
|
window.dataLayer.push({
|
|
@@ -38,7 +36,8 @@ class iamSlider extends HTMLElement {
|
|
|
38
36
|
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
|
39
37
|
}
|
|
40
38
|
|
|
41
|
-
connectedCallback() {
|
|
39
|
+
connectedCallback(): void {
|
|
40
|
+
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
42
41
|
const slider = this;
|
|
43
42
|
const minElement = this.shadowRoot.querySelector('.min');
|
|
44
43
|
const maxElement = this.shadowRoot.querySelector('.max');
|
|
@@ -56,7 +55,7 @@ class iamSlider extends HTMLElement {
|
|
|
56
55
|
stepperStart = 'touchstart';
|
|
57
56
|
}
|
|
58
57
|
|
|
59
|
-
const stepperFunction = function (input
|
|
58
|
+
const stepperFunction = function (input): void {
|
|
60
59
|
const value = input.value;
|
|
61
60
|
|
|
62
61
|
const min = slider.shadowRoot.querySelector('.is-first').getAttribute('min');
|
|
@@ -118,16 +117,16 @@ class iamSlider extends HTMLElement {
|
|
|
118
117
|
const sliders = this.shadowRoot.querySelectorAll('input');
|
|
119
118
|
|
|
120
119
|
Array.from(inputs).forEach((input, index) => {
|
|
121
|
-
input.addEventListener('keyup', function (
|
|
120
|
+
input.addEventListener('keyup', function () {
|
|
122
121
|
sliders[index].value = input.value;
|
|
123
122
|
stepperFunction(sliders[index]);
|
|
124
123
|
});
|
|
125
|
-
input.addEventListener('keydown', function (
|
|
124
|
+
input.addEventListener('keydown', function () {
|
|
126
125
|
sliders[index].value = input.value;
|
|
127
126
|
stepperFunction(sliders[index]);
|
|
128
127
|
});
|
|
129
128
|
|
|
130
|
-
input.addEventListener('change', function (
|
|
129
|
+
input.addEventListener('change', function () {
|
|
131
130
|
sliders[index].value = input.value;
|
|
132
131
|
stepperFunction(sliders[index]);
|
|
133
132
|
});
|
|
@@ -136,7 +135,7 @@ class iamSlider extends HTMLElement {
|
|
|
136
135
|
Array.from(sliders).forEach((input, index) => {
|
|
137
136
|
stepperFunction(input, 'start');
|
|
138
137
|
|
|
139
|
-
input.addEventListener(stepperStart, function (
|
|
138
|
+
input.addEventListener(stepperStart, function () {
|
|
140
139
|
clearInterval(stepperInterval);
|
|
141
140
|
stepperInterval = setInterval(function () {
|
|
142
141
|
stepperFunction(input, 'drag');
|
|
@@ -144,11 +143,11 @@ class iamSlider extends HTMLElement {
|
|
|
144
143
|
}, 10);
|
|
145
144
|
});
|
|
146
145
|
|
|
147
|
-
input.addEventListener(stepperEvent, function (
|
|
146
|
+
input.addEventListener(stepperEvent, function () {
|
|
148
147
|
clearInterval(stepperInterval);
|
|
149
148
|
});
|
|
150
149
|
|
|
151
|
-
input.addEventListener('change', function (
|
|
150
|
+
input.addEventListener('change', function () {
|
|
152
151
|
clearInterval(stepperInterval);
|
|
153
152
|
stepperFunction(input, 'click');
|
|
154
153
|
inputs[index].value = input.value;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
// @ts-nocheck
|
|
2
1
|
import * as tableModule from '../../modules/table';
|
|
3
2
|
class iamTable extends HTMLElement {
|
|
4
3
|
constructor() {
|
|
@@ -10,7 +9,7 @@ class iamTable extends HTMLElement {
|
|
|
10
9
|
const coreCSS = document.body.hasAttribute('data-core-css')
|
|
11
10
|
? document.body.getAttribute('data-core-css')
|
|
12
11
|
: `${assetLocation}/css/core.min.css`;
|
|
13
|
-
const loadCSS = `@import "${assetLocation}/css/components/table.css";`;
|
|
12
|
+
const loadCSS = `@import "${assetLocation}/css/components/table.component.css";`;
|
|
14
13
|
const loadExtraCSS = `@import "${assetLocation}/css/components/table.global.css";`;
|
|
15
14
|
|
|
16
15
|
const template = document.createElement('template');
|
|
@@ -47,7 +46,7 @@ class iamTable extends HTMLElement {
|
|
|
47
46
|
}
|
|
48
47
|
}
|
|
49
48
|
|
|
50
|
-
connectedCallback() {
|
|
49
|
+
connectedCallback(): void {
|
|
51
50
|
const params = new URLSearchParams(window.location.search);
|
|
52
51
|
|
|
53
52
|
// Set default attributes
|
|
@@ -139,7 +138,7 @@ class iamTable extends HTMLElement {
|
|
|
139
138
|
}
|
|
140
139
|
|
|
141
140
|
// Event listeners
|
|
142
|
-
tableModule.addTableEventListeners(this.table);
|
|
141
|
+
tableModule.addTableEventListeners(this.table, this);
|
|
143
142
|
tableModule.addFilterEventListeners(this.table, this.form, this.pagination, this, this.savedTableBody);
|
|
144
143
|
tableModule.addPaginationEventListeners(this.table, this.form, this.pagination, this);
|
|
145
144
|
tableModule.addExportEventListeners(this.shadowRoot.querySelector('[data-export]'), this.table);
|
|
@@ -147,7 +146,7 @@ class iamTable extends HTMLElement {
|
|
|
147
146
|
if (this.form.getAttribute('data-ajax')) {
|
|
148
147
|
tableModule.loadAjaxTable(this.table, this.form, this.pagination, this);
|
|
149
148
|
} else {
|
|
150
|
-
function uniqueID(index = 1) {
|
|
149
|
+
function uniqueID(index = 1): number {
|
|
151
150
|
const ID = Math.floor(Math.random() * Date.now() * (index + 1));
|
|
152
151
|
|
|
153
152
|
return ID;
|
|
@@ -163,18 +162,17 @@ class iamTable extends HTMLElement {
|
|
|
163
162
|
? this.querySelector('iam-actionbar[data-selectall]')
|
|
164
163
|
: document.querySelector(`iam-actionbar[data-for='${this.getAttribute('id')}']`);
|
|
165
164
|
|
|
166
|
-
Array.from(this.table.querySelectorAll('thead tr')).forEach((row
|
|
165
|
+
Array.from(this.table.querySelectorAll('thead tr')).forEach((row) => {
|
|
167
166
|
row.insertAdjacentHTML('afterbegin', `<th class="th--fixed"></th>`);
|
|
168
167
|
});
|
|
169
168
|
|
|
170
169
|
Array.from(this.table.querySelectorAll('tbody tr')).forEach((row, index) => {
|
|
171
|
-
|
|
172
|
-
if(!row.querySelector('.selectrow')){
|
|
170
|
+
if (!row.querySelector('.selectrow')) {
|
|
173
171
|
const rowID = `row${uniqueID(index)}`;
|
|
174
172
|
row.insertAdjacentHTML(
|
|
175
173
|
'afterbegin',
|
|
176
174
|
`<td class="td--fixed selectrow selected"><input type="checkbox" name="row" id="${rowID}" ${row.hasAttribute('data-selected') ? `checked="true"` : ''}/><label for="${rowID}"><span class="visually-hidden">Select row</span></label></td>`
|
|
177
|
-
);
|
|
175
|
+
);
|
|
178
176
|
}
|
|
179
177
|
});
|
|
180
178
|
|
|
@@ -189,11 +187,11 @@ class iamTable extends HTMLElement {
|
|
|
189
187
|
|
|
190
188
|
actionbar.addEventListener('selected', (event) => {
|
|
191
189
|
if (event.detail.selected == '0') {
|
|
192
|
-
Array.from(this.table.querySelectorAll('.selectrow input[type="checkbox"]')).forEach((input
|
|
190
|
+
Array.from(this.table.querySelectorAll('.selectrow input[type="checkbox"]')).forEach((input) => {
|
|
193
191
|
input.checked = false;
|
|
194
192
|
});
|
|
195
193
|
} else if (event.detail.selected == 'all') {
|
|
196
|
-
Array.from(this.table.querySelectorAll('.selectrow input[type="checkbox"]')).forEach((input
|
|
194
|
+
Array.from(this.table.querySelectorAll('.selectrow input[type="checkbox"]')).forEach((input) => {
|
|
197
195
|
input.checked = true;
|
|
198
196
|
});
|
|
199
197
|
}
|
|
@@ -202,7 +200,7 @@ class iamTable extends HTMLElement {
|
|
|
202
200
|
|
|
203
201
|
// Make the dialog menus columns fixed
|
|
204
202
|
let colIndex = -1;
|
|
205
|
-
Array.from(this.table.querySelectorAll('tbody tr')).forEach((row
|
|
203
|
+
Array.from(this.table.querySelectorAll('tbody tr')).forEach((row) => {
|
|
206
204
|
if (row.querySelector(':scope > td > .dialog__wrapper')) {
|
|
207
205
|
const columnn = row.querySelector(':scope > td > .dialog__wrapper').parentNode;
|
|
208
206
|
|
|
@@ -215,7 +213,7 @@ class iamTable extends HTMLElement {
|
|
|
215
213
|
if (colIndex != -1) {
|
|
216
214
|
this.table.querySelector(`thead tr th:nth-child(${colIndex + 1})`).classList.add('th--fixed');
|
|
217
215
|
|
|
218
|
-
Array.from(this.table.querySelectorAll(`tbody tr td:nth-child(${colIndex + 1})`)).forEach((col
|
|
216
|
+
Array.from(this.table.querySelectorAll(`tbody tr td:nth-child(${colIndex + 1})`)).forEach((col) => {
|
|
219
217
|
col.classList.add('td--fixed');
|
|
220
218
|
});
|
|
221
219
|
}
|
|
@@ -227,7 +225,7 @@ class iamTable extends HTMLElement {
|
|
|
227
225
|
tableModule.populateDataQueries(this.table, this.form);
|
|
228
226
|
}
|
|
229
227
|
|
|
230
|
-
this.shadowRoot.querySelector('.table__wrapper').addEventListener('scroll', (
|
|
228
|
+
this.shadowRoot.querySelector('.table__wrapper').addEventListener('scroll', () => {
|
|
231
229
|
if (this.table.querySelector('dialog[open]')) {
|
|
232
230
|
this.table.querySelector('dialog[open]').close();
|
|
233
231
|
this.table.querySelector('.dialog__wrapper > button.active').classList.remove('active');
|
|
@@ -250,11 +248,11 @@ class iamTable extends HTMLElement {
|
|
|
250
248
|
});
|
|
251
249
|
}
|
|
252
250
|
|
|
253
|
-
static get observedAttributes() {
|
|
251
|
+
static get observedAttributes(): any {
|
|
254
252
|
return ['data-total', 'data-page', 'data-show'];
|
|
255
253
|
}
|
|
256
254
|
|
|
257
|
-
attributeChangedCallback(attrName, oldVal, newVal) {
|
|
255
|
+
attributeChangedCallback(attrName, oldVal, newVal): void {
|
|
258
256
|
this.pagination = this.shadowRoot.querySelector('iam-pagination');
|
|
259
257
|
|
|
260
258
|
switch (attrName) {
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
// @ts-nocheck
|
|
2
1
|
import tabs from '../../modules/tabs';
|
|
3
2
|
|
|
4
3
|
// Data layer Web component created
|
|
@@ -19,7 +18,7 @@ class iamTabs extends HTMLElement {
|
|
|
19
18
|
const coreCSS = document.body.hasAttribute('data-core-css')
|
|
20
19
|
? document.body.getAttribute('data-core-css')
|
|
21
20
|
: `${assetLocation}/css/core.min.css`;
|
|
22
|
-
const loadCSS = `@import "${assetLocation}/css/components/tabs.css";`;
|
|
21
|
+
const loadCSS = `@import "${assetLocation}/css/components/tabs.component.css";`;
|
|
23
22
|
|
|
24
23
|
const template = document.createElement('template');
|
|
25
24
|
template.innerHTML = `
|
|
@@ -45,7 +44,7 @@ class iamTabs extends HTMLElement {
|
|
|
45
44
|
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
|
46
45
|
}
|
|
47
46
|
|
|
48
|
-
connectedCallback() {
|
|
47
|
+
connectedCallback(): void {
|
|
49
48
|
const classList = this.classList.toString().replace('container', '');
|
|
50
49
|
this.shadowRoot.querySelector('.tabs').setAttribute('class', `tabs ${classList}`);
|
|
51
50
|
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
// @ts-nocheck
|
|
2
1
|
import { trackComponent, trackComponentRegistered } from '../_global';
|
|
3
2
|
import { cardHTML, setupCard } from '../../modules/card.module';
|
|
4
3
|
|
|
@@ -30,7 +29,8 @@ class iamVideoCard extends HTMLElement {
|
|
|
30
29
|
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
|
31
30
|
}
|
|
32
31
|
|
|
33
|
-
async connectedCallback() {
|
|
32
|
+
async connectedCallback(): void {
|
|
33
|
+
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
34
34
|
const cardComponent = this;
|
|
35
35
|
const cardHead = cardComponent.shadowRoot.querySelector('.card__head');
|
|
36
36
|
|
|
@@ -72,6 +72,7 @@ class iamVideoCard extends HTMLElement {
|
|
|
72
72
|
if (cardComponent.hasAttribute('data-youtube')) {
|
|
73
73
|
// Load the scripts only once
|
|
74
74
|
if (!document.body.classList.contains('youtubeLoaded')) {
|
|
75
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
75
76
|
const loaded = await this.loadYouTubeScripts();
|
|
76
77
|
}
|
|
77
78
|
cardHead.addEventListener('click', function () {
|
|
@@ -84,7 +85,7 @@ class iamVideoCard extends HTMLElement {
|
|
|
84
85
|
dialog.showModal();
|
|
85
86
|
});
|
|
86
87
|
|
|
87
|
-
dialog.addEventListener('close', (
|
|
88
|
+
dialog.addEventListener('close', () => {
|
|
88
89
|
if (
|
|
89
90
|
window.player[embed.getAttribute('id')] &&
|
|
90
91
|
typeof window.player[embed.getAttribute('id')].pauseVideo == 'function'
|
|
@@ -114,7 +115,7 @@ class iamVideoCard extends HTMLElement {
|
|
|
114
115
|
dialog.showModal();
|
|
115
116
|
});
|
|
116
117
|
|
|
117
|
-
dialog.addEventListener('close', (
|
|
118
|
+
dialog.addEventListener('close', () => {
|
|
118
119
|
embed.innerHTML = ``; // Remove the video since we cant pause it
|
|
119
120
|
|
|
120
121
|
const customEvent = new CustomEvent('close-video', {
|
|
@@ -127,10 +128,10 @@ class iamVideoCard extends HTMLElement {
|
|
|
127
128
|
trackComponent(cardComponent, 'iam-video-card', ['play-video', 'close-video']);
|
|
128
129
|
}
|
|
129
130
|
|
|
130
|
-
loadYouTubeScripts() {
|
|
131
|
+
loadYouTubeScripts(): any {
|
|
131
132
|
return new Promise((resolve, reject) => {
|
|
132
133
|
const image = new Image();
|
|
133
|
-
image.onload = function () {
|
|
134
|
+
image.onload = function (): any {
|
|
134
135
|
// This code loads the IFrame Player API code asynchronously.
|
|
135
136
|
const tag = document.createElement('script');
|
|
136
137
|
tag.src = 'https://www.youtube.com/iframe_api';
|
|
@@ -139,14 +140,14 @@ class iamVideoCard extends HTMLElement {
|
|
|
139
140
|
document.body.classList.add('youtubeLoaded');
|
|
140
141
|
resolve(true);
|
|
141
142
|
};
|
|
142
|
-
image.onerror = function () {
|
|
143
|
+
image.onerror = function (): any {
|
|
143
144
|
reject(false);
|
|
144
145
|
};
|
|
145
146
|
image.src = 'https://youtube.com/favicon.ico';
|
|
146
147
|
});
|
|
147
148
|
}
|
|
148
149
|
|
|
149
|
-
createYoutTubeVideo(target) {
|
|
150
|
+
createYoutTubeVideo(target): void | boolean {
|
|
150
151
|
if (typeof window.player == 'undefined') {
|
|
151
152
|
window.player = [];
|
|
152
153
|
}
|
|
@@ -184,7 +185,7 @@ class iamVideoCard extends HTMLElement {
|
|
|
184
185
|
//onYouTubeIframeAPIReady();
|
|
185
186
|
|
|
186
187
|
// The API will call this function when the video player is ready.
|
|
187
|
-
function onPlayerReady(event) {
|
|
188
|
+
function onPlayerReady(event): void {
|
|
188
189
|
// Play the video straight away
|
|
189
190
|
event.target.playVideo();
|
|
190
191
|
}
|
|
@@ -192,7 +193,7 @@ class iamVideoCard extends HTMLElement {
|
|
|
192
193
|
// The API calls this function when the player's state changes.
|
|
193
194
|
// The function indicates that when playing a video (state=1)
|
|
194
195
|
let done = false;
|
|
195
|
-
function onPlayerStateChange(event) {
|
|
196
|
+
function onPlayerStateChange(event): void {
|
|
196
197
|
if (event.data == YT.PlayerState.PLAYING && !done) {
|
|
197
198
|
const link = document.getElementById(link_id);
|
|
198
199
|
link.classList.add('player-ready');
|
|
@@ -202,11 +203,11 @@ class iamVideoCard extends HTMLElement {
|
|
|
202
203
|
}
|
|
203
204
|
}
|
|
204
205
|
|
|
205
|
-
static get observedAttributes() {
|
|
206
|
+
static get observedAttributes(): any {
|
|
206
207
|
return ['data-image'];
|
|
207
208
|
}
|
|
208
209
|
|
|
209
|
-
attributeChangedCallback(attrName, oldVal, newVal) {
|
|
210
|
+
attributeChangedCallback(attrName, oldVal, newVal): void {
|
|
210
211
|
switch (attrName) {
|
|
211
212
|
case 'data-image': {
|
|
212
213
|
if (oldVal != newVal) {
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
function
|
|
3
|
-
function addFilterButton(filters, input, notSet = true) {
|
|
1
|
+
function createAppliedFilters(container, filters): void {
|
|
2
|
+
function addFilterButton(filters, input, notSet = true): void | boolean {
|
|
4
3
|
let shouldRemoveFilter = false;
|
|
5
4
|
let inputName = input.getAttribute('name');
|
|
6
5
|
|
|
@@ -95,7 +94,7 @@ function createAppliedFilters(container, filters) {
|
|
|
95
94
|
// check for inputs on load
|
|
96
95
|
Array.from(
|
|
97
96
|
container.querySelectorAll('input[type="checkbox"]:checked, input:not([type="checkbox"]):not([type="radio"])')
|
|
98
|
-
).forEach((input
|
|
97
|
+
).forEach((input) => {
|
|
99
98
|
addFilterButton(filters, input, false);
|
|
100
99
|
});
|
|
101
100
|
|
|
@@ -106,7 +105,7 @@ function createAppliedFilters(container, filters) {
|
|
|
106
105
|
if (event[0].attributeName == 'open') {
|
|
107
106
|
Array.from(
|
|
108
107
|
container.querySelectorAll('input[type="checkbox"]:checked, input:not([type="checkbox"]):not([type="radio"])')
|
|
109
|
-
).forEach((input
|
|
108
|
+
).forEach((input) => {
|
|
110
109
|
addFilterButton(filters, input, false);
|
|
111
110
|
});
|
|
112
111
|
}
|
|
@@ -115,11 +114,11 @@ function createAppliedFilters(container, filters) {
|
|
|
115
114
|
observer.observe(dialog, { attributes: true });
|
|
116
115
|
}
|
|
117
116
|
|
|
118
|
-
container.addEventListener('tags-set', function (
|
|
117
|
+
container.addEventListener('tags-set', function () {
|
|
119
118
|
filters.innerHTML = '';
|
|
120
119
|
Array.from(
|
|
121
120
|
container.querySelectorAll('input[type="checkbox"]:checked, input:not([type="checkbox"]):not([type="radio"])')
|
|
122
|
-
).forEach((input
|
|
121
|
+
).forEach((input) => {
|
|
123
122
|
addFilterButton(filters, input, false);
|
|
124
123
|
});
|
|
125
124
|
});
|
|
@@ -127,7 +126,7 @@ function createAppliedFilters(container, filters) {
|
|
|
127
126
|
// check for change in displayed inputs
|
|
128
127
|
Array.from(
|
|
129
128
|
container.querySelectorAll('input[type="checkbox"]:checked, input:not([type="checkbox"]):not([type="radio"])')
|
|
130
|
-
).forEach((input
|
|
129
|
+
).forEach((input) => {
|
|
131
130
|
input.addEventListener('change', function (event) {
|
|
132
131
|
if (!container.hasAttribute('data-keep-same')) addFilterButton(filters, input);
|
|
133
132
|
|
|
@@ -155,7 +154,7 @@ function createAppliedFilters(container, filters) {
|
|
|
155
154
|
let selector = `[name="${name}"]`;
|
|
156
155
|
|
|
157
156
|
if (name.match(/\[(.*)\]/)) {
|
|
158
|
-
const newName = name.replace(/\[(.*)\]/, `[]`);
|
|
157
|
+
//const newName = name.replace(/\[(.*)\]/, `[]`);
|
|
159
158
|
const value = name.replace(/.*\[(.*)\]/, `$1`);
|
|
160
159
|
selector = `[value="${value}"]`;
|
|
161
160
|
}
|
|
@@ -168,12 +167,12 @@ function createAppliedFilters(container, filters) {
|
|
|
168
167
|
if (input.getAttribute('type') != 'radio' && input.getAttribute('type') != 'checkbox') {
|
|
169
168
|
input.value = '';
|
|
170
169
|
|
|
171
|
-
|
|
170
|
+
const event = new Event('force');
|
|
172
171
|
if (!container.hasAttribute('data-nosubmit')) input.closest('form').dispatchEvent(event);
|
|
173
172
|
} else {
|
|
174
173
|
input.checked = false;
|
|
175
174
|
|
|
176
|
-
|
|
175
|
+
const event = new Event('force');
|
|
177
176
|
if (!container.hasAttribute('data-nosubmit')) input.closest('form').dispatchEvent(event);
|
|
178
177
|
}
|
|
179
178
|
}
|
|
@@ -14,7 +14,7 @@ export const cardHTML = `<div class="card__head" part="head">
|
|
|
14
14
|
<slot name="footer"></slot>
|
|
15
15
|
</div>`;
|
|
16
16
|
|
|
17
|
-
export const setupCard = (cardComponent: any) => {
|
|
17
|
+
export const setupCard = (cardComponent: any): void => {
|
|
18
18
|
cardComponent.classList.add('card');
|
|
19
19
|
const cardHead = cardComponent.shadowRoot.querySelector('.card__head');
|
|
20
20
|
const cardBody = cardComponent.shadowRoot.querySelector('.card__body');
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
export const generateThumbnailList = function (carouselComponent) {
|
|
1
|
+
export const generateThumbnailList = function (carouselComponent): any {
|
|
4
2
|
const thumbnailImages = [];
|
|
5
3
|
|
|
6
4
|
Array.from(carouselComponent.querySelectorAll(':scope > div')).forEach((slide, index) => {
|
|
@@ -12,7 +10,7 @@ export const generateThumbnailList = function (carouselComponent) {
|
|
|
12
10
|
return thumbnailImages;
|
|
13
11
|
};
|
|
14
12
|
|
|
15
|
-
export const generatePipsHTML = function (carouselComponent, thumbnailImages) {
|
|
13
|
+
export const generatePipsHTML = function (carouselComponent, thumbnailImages): string {
|
|
16
14
|
const itemCount = carouselComponent.querySelectorAll(':scope > div').length;
|
|
17
15
|
|
|
18
16
|
let pips = '';
|
|
@@ -33,7 +31,7 @@ export const generatePipsHTML = function (carouselComponent, thumbnailImages) {
|
|
|
33
31
|
return pips;
|
|
34
32
|
};
|
|
35
33
|
|
|
36
|
-
const getProgressMax = function (itemCount, visibleItems) {
|
|
34
|
+
export const getProgressMax = function (itemCount, visibleItems): number {
|
|
37
35
|
if (visibleItems == 1) {
|
|
38
36
|
return itemCount;
|
|
39
37
|
}
|
|
@@ -43,11 +41,11 @@ const getProgressMax = function (itemCount, visibleItems) {
|
|
|
43
41
|
return max + 1;
|
|
44
42
|
};
|
|
45
43
|
|
|
46
|
-
const getProgressPercent = function (value, max) {
|
|
44
|
+
const getProgressPercent = function (value, max): number {
|
|
47
45
|
return ((value - 1) / (max - 1)) * 100;
|
|
48
46
|
};
|
|
49
47
|
|
|
50
|
-
export const carousel = function (carouselComponent) {
|
|
48
|
+
export const carousel = function (carouselComponent): void {
|
|
51
49
|
let scrollTimeout;
|
|
52
50
|
|
|
53
51
|
const carouselElement = carouselComponent.shadowRoot.querySelector('.carousel');
|
|
@@ -84,7 +82,7 @@ export const carousel = function (carouselComponent) {
|
|
|
84
82
|
// On scroll we need to make sure the buttons get corrected and the next testimonial is shown
|
|
85
83
|
carouselInner.addEventListener(
|
|
86
84
|
'scroll',
|
|
87
|
-
function (
|
|
85
|
+
function () {
|
|
88
86
|
clearTimeout(scrollTimeout);
|
|
89
87
|
scrollTimeout = setTimeout(function () {
|
|
90
88
|
const scrollArea = carouselInner.clientWidth;
|
|
@@ -109,7 +107,7 @@ export const carousel = function (carouselComponent) {
|
|
|
109
107
|
targetSlide = Math.floor(itemCount / visibleItems) * visibleItems + 1;
|
|
110
108
|
}
|
|
111
109
|
|
|
112
|
-
Array.from(carouselElement.querySelectorAll('.carousel__controls button')).forEach((button
|
|
110
|
+
Array.from(carouselElement.querySelectorAll('.carousel__controls button')).forEach((button) => {
|
|
113
111
|
button.removeAttribute('aria-current');
|
|
114
112
|
});
|
|
115
113
|
|
|
@@ -145,7 +143,7 @@ export const carousel = function (carouselComponent) {
|
|
|
145
143
|
if (typeof target.matches == 'function' && target.matches('button')) {
|
|
146
144
|
e.preventDefault();
|
|
147
145
|
|
|
148
|
-
Array.from(carouselControls.querySelectorAll('button')).forEach((button
|
|
146
|
+
Array.from(carouselControls.querySelectorAll('button')).forEach((button) => {
|
|
149
147
|
button.removeAttribute('aria-current');
|
|
150
148
|
});
|
|
151
149
|
target.setAttribute('aria-current', true);
|
|
@@ -177,7 +175,7 @@ export const carousel = function (carouselComponent) {
|
|
|
177
175
|
'click',
|
|
178
176
|
function (e) {
|
|
179
177
|
const scrollArea = carouselInner.clientWidth;
|
|
180
|
-
const scrollWidth = carouselInner.scrollWidth;
|
|
178
|
+
//const scrollWidth = carouselInner.scrollWidth;
|
|
181
179
|
const itemWidth = carouselComponent.querySelector(':scope > div').scrollWidth;
|
|
182
180
|
|
|
183
181
|
const visibleItems = Math.round(scrollArea / itemWidth);
|
|
@@ -227,7 +225,7 @@ export const carousel = function (carouselComponent) {
|
|
|
227
225
|
false
|
|
228
226
|
);
|
|
229
227
|
|
|
230
|
-
carouselProgress.addEventListener(stepperStart, function (
|
|
228
|
+
carouselProgress.addEventListener(stepperStart, function () {
|
|
231
229
|
clearInterval(stepperInterval);
|
|
232
230
|
stepperInterval = setInterval(function () {
|
|
233
231
|
scrollArea = carouselInner.clientWidth;
|
|
@@ -242,13 +240,13 @@ export const carousel = function (carouselComponent) {
|
|
|
242
240
|
}, 10);
|
|
243
241
|
});
|
|
244
242
|
|
|
245
|
-
carouselProgress.addEventListener(stepperEvent, function (
|
|
243
|
+
carouselProgress.addEventListener(stepperEvent, function () {
|
|
246
244
|
clearInterval(stepperInterval);
|
|
247
245
|
});
|
|
248
246
|
|
|
249
247
|
carouselProgress.addEventListener(
|
|
250
248
|
'change',
|
|
251
|
-
function (
|
|
249
|
+
function () {
|
|
252
250
|
clearInterval(stepperInterval);
|
|
253
251
|
const target = carouselComponent.querySelector(`:scope > *:nth-child(${carouselProgress.value})`);
|
|
254
252
|
|
|
@@ -258,7 +256,7 @@ export const carousel = function (carouselComponent) {
|
|
|
258
256
|
behavior: 'smooth',
|
|
259
257
|
});
|
|
260
258
|
|
|
261
|
-
const direction = target.matches('.btn-next') ? 'next' : 'prev';
|
|
259
|
+
//const direction = target.matches('.btn-next') ? 'next' : 'prev';
|
|
262
260
|
|
|
263
261
|
const customEvent = new CustomEvent(`slider-changed`, {
|
|
264
262
|
detail: {
|