@globalpayments/vega 2.35.0 → 2.37.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/dist/cjs/{app-globals-fb3693cc.js → app-globals-7980768c.js} +10 -10
- package/dist/cjs/{child-nodes-event-prevent-slimmer-96c3c4ae.js → child-nodes-event-prevent-slimmer-af2addec.js} +1 -1
- package/dist/cjs/{child-nodes-notify-observer-slimmer-be92f366.js → child-nodes-notify-observer-slimmer-4e60a929.js} +2 -2
- package/dist/cjs/{list-block-91116257.js → content-state-9a9a4bd8.js} +132 -40
- package/dist/cjs/{design-token-30c069c1.js → design-token-36eb5def.js} +1 -1
- package/dist/cjs/{dom-node-subject-factory-3ec114b8.js → dom-node-subject-factory-ce1777a9.js} +0 -30
- package/dist/cjs/{dom-node-subject-observer-factory-5f0eae19.js → dom-node-subject-observer-factory-80b3ac6c.js} +3 -2
- package/dist/cjs/{element-appender-slimmer-700b7004.js → element-appender-slimmer-c6e0f4ca.js} +39 -4
- package/dist/cjs/{event-emit-slimmer-9c223f73.js → event-emit-slimmer-208a19e4.js} +3 -3
- package/dist/cjs/{form-field-controller-slimmer-dbb321ad.js → form-field-controller-slimmer-0303f4a7.js} +21 -12
- package/dist/cjs/{image-annotation-action-d3e1699c.js → image-annotation-action-8e622f61.js} +14 -14
- package/dist/cjs/index-7c81de06.js +99 -0
- package/dist/cjs/index.cjs.js +29 -14
- package/dist/cjs/{internal-vega-event-manager-e5e4bcf4.js → internal-vega-event-manager-981dfd1c.js} +1 -1
- package/dist/cjs/loader.cjs.js +12 -11
- package/dist/cjs/{node-annotation.abstract-e5d3a859.js → node-annotation.abstract-2c8373c1.js} +7 -62
- package/dist/cjs/observer-f49483e8.js +32 -0
- package/dist/cjs/{remote-invocation-registry-ff9af278.js → remote-invocation-registry-32aaf6c2.js} +3 -3
- package/dist/cjs/{responsive-format-facade-4363a00d.js → responsive-format-facade-a1983026.js} +2 -0
- package/dist/cjs/{static-subject-title-d66b88fb.js → static-subject-title-c589a1bd.js} +2 -0
- package/dist/cjs/{string-input-formatter-slimmer-6155c9f5.js → string-input-formatter-slimmer-396b1cee.js} +28 -35
- package/dist/cjs/{style-formatter-63218b76.js → style-formatter-d446562b.js} +1 -1
- package/dist/cjs/{sub-state-notify-slimmer-c2e08e06.js → sub-state-notify-slimmer-ae490543.js} +4 -3
- package/dist/cjs/{sub-state-observer-slimmer-b97e46b5.js → sub-state-observer-slimmer-080731bc.js} +4 -3
- package/dist/cjs/{translation-b9be41e0.js → translation-6848c389.js} +1 -1
- package/dist/cjs/{translation-slimmer-ec76c5a2.js → translation-slimmer-510906bc.js} +1 -1
- package/dist/cjs/vega-accordion.cjs.entry.js +9 -8
- package/dist/cjs/vega-app-header-button.cjs.entry.js +140 -37
- package/dist/cjs/vega-banner.cjs.entry.js +5 -4
- package/dist/cjs/vega-box.cjs.entry.js +3 -3
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +6 -5
- package/dist/cjs/vega-button-circle.cjs.entry.js +9 -8
- package/dist/cjs/vega-button-group_2.cjs.entry.js +9 -8
- package/dist/cjs/vega-button-link.cjs.entry.js +6 -5
- package/dist/cjs/vega-button.cjs.entry.js +8 -7
- package/dist/cjs/vega-calendar_3.cjs.entry.js +288 -218
- package/dist/cjs/vega-card.cjs.entry.js +2 -2
- package/dist/cjs/vega-carousel.cjs.entry.js +6 -5
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +14 -13
- package/dist/cjs/vega-chip.cjs.entry.js +8 -7
- package/dist/cjs/vega-color-picker.cjs.entry.js +9 -8
- package/dist/cjs/vega-combo-box.cjs.entry.js +10 -9
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +510 -127
- package/dist/cjs/vega-dialog_2.cjs.entry.js +829 -378
- package/dist/cjs/vega-divider.cjs.entry.js +2 -2
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +100 -30
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/vega-field-error.cjs.entry.js +1 -1
- package/dist/cjs/vega-field-label.cjs.entry.js +5 -4
- package/dist/cjs/vega-file-uploader.cjs.entry.js +128 -47
- package/dist/cjs/vega-flex.cjs.entry.js +3 -3
- package/dist/cjs/vega-font.cjs.entry.js +10 -3
- package/dist/cjs/vega-form.cjs.entry.js +15 -14
- package/dist/cjs/vega-grid.cjs.entry.js +2 -2
- package/dist/cjs/vega-icon.cjs.entry.js +2 -2
- package/dist/cjs/vega-image-uploader.cjs.entry.js +12 -11
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +10 -9
- package/dist/cjs/vega-input-numeric.cjs.entry.js +11 -10
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +11 -10
- package/dist/cjs/vega-input-range.cjs.entry.js +11 -10
- package/dist/cjs/vega-input-select.cjs.entry.js +13 -12
- package/dist/cjs/vega-input.cjs.entry.js +17 -12
- package/dist/cjs/{vega-internal-event-id-85b68849.js → vega-internal-event-id-b12071ea.js} +2 -0
- package/dist/cjs/vega-item-toggle.cjs.entry.js +5 -4
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +23 -13
- package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +1 -1
- package/dist/cjs/vega-page-notification_2.cjs.entry.js +3 -2
- package/dist/cjs/vega-pagination.cjs.entry.js +12 -11
- package/dist/cjs/vega-popover_2.cjs.entry.js +10 -8
- package/dist/cjs/vega-progress-tracker.cjs.entry.js +5 -4
- package/dist/cjs/vega-radio_2.cjs.entry.js +14 -13
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +40 -16
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +150 -132
- package/dist/cjs/vega-segment-control.cjs.entry.js +5 -4
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +14 -13
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +14 -13
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +12 -11
- package/dist/cjs/vega-signature-capture.cjs.entry.js +12 -11
- package/dist/cjs/{vega-skeleton-loader-controller-7dac484f.js → vega-skeleton-loader-controller-ef43cfc1.js} +1 -1
- package/dist/cjs/vega-stepper.cjs.entry.js +10 -9
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +15 -12
- package/dist/cjs/vega-table_8.cjs.entry.js +42 -26
- package/dist/cjs/vega-textarea.cjs.entry.js +10 -9
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +13 -12
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +9 -8
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +5 -2
- package/dist/cjs/vega.cjs.js +12 -11
- package/dist/collection/components/vega-app-header-button/slimmers/renderers/vega-app-header-button-dropdown-renderer.js +124 -0
- package/dist/collection/components/vega-app-header-button/vega-app-header-button.js +12 -31
- package/dist/collection/components/vega-box/vega-box.js +33 -3
- package/dist/collection/components/vega-button-circle/vega-button-circle.js +1 -1
- package/dist/collection/components/vega-button-group/vega-button-group-item/vega-button-group-item.js +1 -1
- package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-view-renderer.js +9 -1
- package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-line-renderer.js +2 -111
- package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-marker-renderer.js +164 -0
- package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.js +4 -1
- package/dist/collection/components/vega-calendar/vega-calendar.js +7 -2
- package/dist/collection/components/vega-checkbox/vega-checkbox-group/vega-checkbox-group.js +1 -1
- package/dist/collection/components/vega-checkbox/vega-checkbox.css +5 -1
- package/dist/collection/components/vega-combo-box/vega-combo-box.js +1 -1
- package/dist/collection/components/vega-date-picker/assets/icons.js +3 -0
- package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-controller.js +23 -1
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-month-year-dropdown-renderer.js +316 -0
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +23 -2
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-renderer.js +16 -4
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.css +24 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker.js +39 -0
- package/dist/collection/components/vega-dialog/vega-dialog.js +3 -3
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.js +56 -14
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-scrollable-controller.js +19 -0
- package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js +4 -1
- package/dist/collection/components/vega-dropdown/vega-dropdown.js +37 -0
- package/dist/collection/components/vega-field-label/vega-field-label.js +1 -1
- package/dist/collection/components/vega-file-uploader/slimmers/controllers/vega-file-uploader-file-limit-controller.js +35 -0
- package/dist/collection/components/vega-file-uploader/slimmers/renderers/vega-file-uploader-container-renderer.js +36 -7
- package/dist/collection/components/vega-file-uploader/vega-file-uploader.js +41 -0
- package/dist/collection/components/vega-flex/vega-flex.js +12 -0
- package/dist/collection/components/vega-font/slimmers/renderers/vega-font-renderer.js +8 -1
- package/dist/collection/components/vega-input/vega-input.js +6 -2
- package/dist/collection/components/vega-input-credit-card/test/share.js +1 -1
- package/dist/collection/components/vega-input-select/vega-input-select.js +3 -3
- package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-backdrop-controller.js +64 -0
- package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-layout-controller.js +136 -0
- package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-mobile-controller.js +60 -0
- package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.js +190 -0
- package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-opened-modal-stack-controller.js +51 -0
- package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-scroll-controller.js +76 -0
- package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-z-index-controller.js +43 -0
- package/dist/collection/components/vega-modal/slimmers/renderers/vega-modal-renderer.js +122 -0
- package/dist/collection/components/vega-modal/vega-modal.js +47 -340
- package/dist/collection/components/vega-nav/vega-left-nav-link/slimmers/renderers/vega-left-nav-link-renderer.js +4 -1
- package/dist/collection/components/vega-nav/vega-left-nav-link/vega-left-nav-link.js +27 -0
- package/dist/collection/components/vega-pagination/internal/vega-pagination-page-size-selector.js +2 -2
- package/dist/collection/components/vega-pagination/vega-pagination.js +24 -1
- package/dist/collection/components/vega-radio/vega-radio-group/vega-radio-group.js +1 -1
- package/dist/collection/components/vega-radio/vega-radio.css +3 -0
- package/dist/collection/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.js +19 -1
- package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.js +11 -4
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js +15 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +4 -2
- package/dist/collection/components/vega-selection-chip/vega-selection-chip.js +2 -2
- package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-close-button-renderer.js +2 -2
- package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-direction-button-renderer.js +1 -0
- package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-tab-list-renderer.js +3 -2
- package/dist/collection/components/vega-tab-group/vega-tab-group.css +9 -0
- package/dist/collection/components/vega-table/internal/vega-table-scrollable-container.js +2 -1
- package/dist/collection/components/vega-table/slimmers/renderers/vega-table-scroll-container-renderer.js +17 -1
- package/dist/collection/components/vega-table/vega-table.js +1 -1
- package/dist/collection/helpers/change-manager/subject/static-subject/static-subject-title.js +1 -0
- package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +1 -0
- package/dist/collection/helpers/slimmers/element-appender-slimmer.js +27 -0
- package/dist/collection/helpers/slimmers/field-error-controller-silmmer.js +8 -2
- package/dist/collection/helpers/slimmers/position-calculation/position-calculation-controller.js +1 -1
- package/dist/collection/helpers/slimmers/string-input-formatter-slimmer.js +29 -36
- package/dist/collection/helpers/slimmers/test/element-appender-slimmer.test.js +26 -0
- package/dist/collection/helpers/slimmers/test/string-input-formatter-slimmer.test.js +2 -1
- package/dist/collection/helpers/ui/element-appender.js +10 -2
- package/dist/collection/helpers/validator/form-field-controller.js +2 -0
- package/dist/collection/helpers/validator/rules/rich-text-editor-required-rule.js +4 -3
- package/dist/collection/helpers/validator/test/rules/rich-text-editor-required-rule.test.js +43 -0
- package/dist/collection/helpers/validator/test/rules/valid-credit-card-number-rule.test.js +56 -0
- package/dist/collection/types/public-api.js +17 -0
- package/dist/esm/{app-globals-5b154b6d.js → app-globals-6912a75d.js} +7 -7
- package/dist/esm/{child-nodes-event-prevent-slimmer-97aae8a8.js → child-nodes-event-prevent-slimmer-3220fa5b.js} +1 -1
- package/dist/esm/{child-nodes-notify-observer-slimmer-289caacc.js → child-nodes-notify-observer-slimmer-36024b11.js} +1 -1
- package/dist/esm/{list-block-ba82c846.js → content-state-c2d29b35.js} +131 -37
- package/dist/esm/{design-token-d06bc718.js → design-token-e14b622b.js} +1 -1
- package/dist/esm/{dom-node-subject-factory-5831cdd4.js → dom-node-subject-factory-97deb349.js} +1 -30
- package/dist/esm/{dom-node-subject-observer-factory-dc486a8b.js → dom-node-subject-observer-factory-857c65fa.js} +2 -1
- package/dist/esm/{element-appender-slimmer-d71e3109.js → element-appender-slimmer-f5e703f3.js} +39 -4
- package/dist/esm/{event-emit-slimmer-f285e3ac.js → event-emit-slimmer-36cf4e39.js} +3 -3
- package/dist/esm/{form-field-controller-slimmer-add614f1.js → form-field-controller-slimmer-7136b7fa.js} +16 -7
- package/dist/esm/{image-annotation-action-a8e00f28.js → image-annotation-action-84422458.js} +4 -4
- package/dist/esm/index-b2045ad0.js +96 -0
- package/dist/esm/index.js +15 -14
- package/dist/esm/{internal-vega-event-manager-07e1b3d9.js → internal-vega-event-manager-0a01ba12.js} +1 -1
- package/dist/esm/loader.js +12 -11
- package/dist/esm/{node-annotation.abstract-d7d52bce.js → node-annotation.abstract-a58b5a49.js} +7 -61
- package/dist/esm/observer-3959f9dd.js +30 -0
- package/dist/esm/{remote-invocation-registry-d97fa3bc.js → remote-invocation-registry-1682b34e.js} +1 -1
- package/dist/esm/{responsive-format-facade-c2ab9c87.js → responsive-format-facade-661193d7.js} +1 -1
- package/dist/esm/{static-subject-title-e06a3840.js → static-subject-title-8268945e.js} +2 -1
- package/dist/esm/{string-input-formatter-slimmer-73fa06e6.js → string-input-formatter-slimmer-0ecbf367.js} +29 -36
- package/dist/esm/{style-formatter-f91471e8.js → style-formatter-4b857992.js} +1 -1
- package/dist/esm/{sub-state-notify-slimmer-48bad548.js → sub-state-notify-slimmer-4a201088.js} +3 -2
- package/dist/esm/{sub-state-observer-slimmer-403cc4e7.js → sub-state-observer-slimmer-0d6da563.js} +3 -2
- package/dist/esm/{translation-a98970d8.js → translation-c08f2274.js} +1 -1
- package/dist/esm/{translation-slimmer-5ee9912b.js → translation-slimmer-7974f30b.js} +1 -1
- package/dist/esm/vega-accordion.entry.js +8 -7
- package/dist/esm/vega-app-header-button.entry.js +141 -38
- package/dist/esm/vega-banner.entry.js +5 -4
- package/dist/esm/vega-box.entry.js +3 -3
- package/dist/esm/vega-breadcrumb.entry.js +6 -5
- package/dist/esm/vega-button-circle.entry.js +9 -8
- package/dist/esm/vega-button-group_2.entry.js +9 -8
- package/dist/esm/vega-button-link.entry.js +6 -5
- package/dist/esm/vega-button.entry.js +8 -7
- package/dist/esm/vega-calendar_3.entry.js +288 -218
- package/dist/esm/vega-card.entry.js +2 -2
- package/dist/esm/vega-carousel.entry.js +6 -5
- package/dist/esm/vega-checkbox_2.entry.js +12 -11
- package/dist/esm/vega-chip.entry.js +8 -7
- package/dist/esm/vega-color-picker.entry.js +9 -8
- package/dist/esm/vega-combo-box.entry.js +10 -9
- package/dist/esm/vega-date-picker_2.entry.js +510 -127
- package/dist/esm/vega-dialog_2.entry.js +828 -377
- package/dist/esm/vega-divider.entry.js +2 -2
- package/dist/esm/vega-dropdown_5.entry.js +100 -30
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/vega-field-error.entry.js +1 -1
- package/dist/esm/vega-field-label.entry.js +5 -4
- package/dist/esm/vega-file-uploader.entry.js +128 -47
- package/dist/esm/vega-flex.entry.js +3 -3
- package/dist/esm/vega-font.entry.js +10 -3
- package/dist/esm/vega-form.entry.js +11 -10
- package/dist/esm/vega-grid.entry.js +2 -2
- package/dist/esm/vega-icon.entry.js +2 -2
- package/dist/esm/vega-image-uploader.entry.js +12 -11
- package/dist/esm/vega-input-credit-card.entry.js +10 -9
- package/dist/esm/vega-input-numeric.entry.js +11 -10
- package/dist/esm/vega-input-phone-number.entry.js +11 -10
- package/dist/esm/vega-input-range.entry.js +11 -10
- package/dist/esm/vega-input-select.entry.js +13 -12
- package/dist/esm/vega-input.entry.js +17 -12
- package/dist/esm/{vega-internal-event-id-4af5c6e9.js → vega-internal-event-id-458939b6.js} +2 -1
- package/dist/esm/vega-item-toggle.entry.js +5 -4
- package/dist/esm/vega-left-nav_5.entry.js +21 -11
- package/dist/esm/vega-loader-wrapper_2.entry.js +1 -1
- package/dist/esm/vega-page-notification_2.entry.js +3 -2
- package/dist/esm/vega-pagination.entry.js +12 -11
- package/dist/esm/vega-popover_2.entry.js +10 -8
- package/dist/esm/vega-progress-tracker.entry.js +5 -4
- package/dist/esm/vega-radio_2.entry.js +12 -11
- package/dist/esm/vega-rich-text-content.entry.js +33 -9
- package/dist/esm/vega-rich-text-editor_4.entry.js +39 -21
- package/dist/esm/vega-segment-control.entry.js +5 -4
- package/dist/esm/vega-selection-chip_2.entry.js +13 -12
- package/dist/esm/vega-selection-tile_2.entry.js +13 -12
- package/dist/esm/vega-sidenav_3.entry.js +10 -9
- package/dist/esm/vega-signature-capture.entry.js +12 -11
- package/dist/esm/{vega-skeleton-loader-controller-0aaaf1fa.js → vega-skeleton-loader-controller-0044d77f.js} +1 -1
- package/dist/esm/vega-stepper.entry.js +10 -9
- package/dist/esm/vega-tab-group_2.entry.js +14 -11
- package/dist/esm/vega-table_8.entry.js +31 -15
- package/dist/esm/vega-textarea.entry.js +10 -9
- package/dist/esm/vega-time-picker_2.entry.js +13 -12
- package/dist/esm/vega-toggle-switch.entry.js +9 -8
- package/dist/esm/vega-tooltip_2.entry.js +5 -2
- package/dist/esm/vega.js +12 -11
- package/dist/types/components/vega-app-header-button/slimmers/renderers/vega-app-header-button-dropdown-renderer.d.ts +61 -0
- package/dist/types/components/vega-app-header-button/types.d.ts +1 -2
- package/dist/types/components/vega-app-header-button/vega-app-header-button.d.ts +2 -9
- package/dist/types/components/vega-box/vega-box.d.ts +10 -0
- package/dist/types/components/vega-button-circle/types.d.ts +1 -5
- package/dist/types/components/vega-button-circle/vega-button-circle.d.ts +1 -1
- package/dist/types/components/vega-calendar/slimmers/common/renderers/vega-calendar-view-renderer.d.ts +8 -0
- package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-line-renderer.d.ts +0 -49
- package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-marker-renderer.d.ts +69 -0
- package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.d.ts +1 -0
- package/dist/types/components/vega-calendar/types.d.ts +3 -0
- package/dist/types/components/vega-calendar/vega-calendar.d.ts +2 -0
- package/dist/types/components/vega-combo-box/types.d.ts +1 -3
- package/dist/types/components/vega-date-picker/assets/icons.d.ts +1 -1
- package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-controller.d.ts +4 -18
- package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-month-year-dropdown-renderer.d.ts +85 -0
- package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +6 -0
- package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-renderer.d.ts +2 -0
- package/dist/types/components/vega-date-picker/vega-date-picker.d.ts +12 -2
- package/dist/types/components/vega-dialog/types.d.ts +1 -6
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.d.ts +20 -0
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-scrollable-controller.d.ts +4 -0
- package/dist/types/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.d.ts +1 -0
- package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +10 -0
- package/dist/types/components/vega-file-uploader/slimmers/controllers/vega-file-uploader-file-limit-controller.d.ts +18 -0
- package/dist/types/components/vega-file-uploader/slimmers/renderers/vega-file-uploader-container-renderer.d.ts +15 -0
- package/dist/types/components/vega-file-uploader/vega-file-uploader.d.ts +12 -0
- package/dist/types/components/vega-flex/vega-flex.d.ts +4 -0
- package/dist/types/components/vega-input/vega-input.d.ts +1 -1
- package/dist/types/components/vega-input-select/types.d.ts +2 -3
- package/dist/types/components/vega-input-select/vega-input-select.d.ts +1 -1
- package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-backdrop-controller.d.ts +26 -0
- package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-layout-controller.d.ts +38 -0
- package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-mobile-controller.d.ts +27 -0
- package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.d.ts +65 -0
- package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-opened-modal-stack-controller.d.ts +30 -0
- package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-scroll-controller.d.ts +28 -0
- package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-z-index-controller.d.ts +15 -0
- package/dist/types/components/vega-modal/slimmers/renderers/vega-modal-renderer.d.ts +33 -0
- package/dist/types/components/vega-modal/vega-modal.d.ts +16 -112
- package/dist/types/components/vega-nav/vega-left-nav-link/slimmers/renderers/vega-left-nav-link-renderer.d.ts +1 -0
- package/dist/types/components/vega-nav/vega-left-nav-link/vega-left-nav-link.d.ts +6 -0
- package/dist/types/components/vega-pagination/internal/vega-pagination-page-size-selector.d.ts +2 -0
- package/dist/types/components/vega-pagination/types.d.ts +2 -0
- package/dist/types/components/vega-pagination/vega-pagination.d.ts +9 -1
- package/dist/types/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.d.ts +3 -0
- package/dist/types/components/vega-rich-text-content/vega-rich-text-content.d.ts +4 -1
- package/dist/types/components/vega-rich-text-editor/interface.d.ts +1 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/value-controller.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +3 -1
- package/dist/types/components/vega-selection-chip/vega-selection-chip.d.ts +1 -1
- package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-close-button-renderer.d.ts +2 -1
- package/dist/types/components/vega-tab-group/types.d.ts +2 -5
- package/dist/types/components/vega-table/interface.d.ts +5 -2
- package/dist/types/components/vega-table/internal/vega-table-scrollable-container.d.ts +1 -0
- package/dist/types/components/vega-table/slimmers/renderers/vega-table-scroll-container-renderer.d.ts +3 -0
- package/dist/types/components/vega-text/types.d.ts +1 -3
- package/dist/types/components.d.ts +93 -11
- package/dist/types/helpers/change-manager/subject/static-subject/static-subject-title.d.ts +2 -1
- package/dist/types/helpers/chart/bar-chart.d.ts +1 -2
- package/dist/types/helpers/dialog/vega-dialog-controller.d.ts +1 -2
- package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +1 -0
- package/dist/types/helpers/skeleton-loader/interface.d.ts +1 -3
- package/dist/types/helpers/slimmers/element-appender-slimmer.d.ts +16 -0
- package/dist/types/helpers/slimmers/field-error-controller-silmmer.d.ts +7 -2
- package/dist/types/helpers/slimmers/string-input-formatter-slimmer.d.ts +6 -13
- package/dist/types/helpers/ui/element-appender.d.ts +4 -0
- package/dist/types/helpers/validator/rules/rich-text-editor-required-rule.d.ts +1 -1
- package/dist/types/types/components.type.d.ts +1 -1
- package/dist/types/types/public-api.d.ts +24 -1
- package/dist/types/types/ui.type.d.ts +1 -1
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/p-00de36e4.js +1 -0
- package/dist/vega/p-00f4cf6a.entry.js +1 -0
- package/dist/vega/p-08bbc8e6.entry.js +1 -0
- package/dist/vega/p-0b9480a9.entry.js +1 -0
- package/dist/vega/p-13c22d72.entry.js +1 -0
- package/dist/vega/{p-0af4bda9.js → p-1b860f90.js} +1 -1
- package/dist/vega/p-1d53d434.entry.js +1 -0
- package/dist/vega/p-1d5fbccc.entry.js +1 -0
- package/dist/vega/p-1f67c930.entry.js +1 -0
- package/dist/vega/p-233e6715.entry.js +1 -0
- package/dist/vega/p-29dd376c.entry.js +1 -0
- package/dist/vega/p-2d36dbfe.js +1 -0
- package/dist/vega/p-2f39ea18.entry.js +1 -0
- package/dist/vega/p-331a62d5.js +1 -0
- package/dist/vega/p-34caa637.entry.js +1 -0
- package/dist/vega/p-3aec260c.entry.js +1 -0
- package/dist/vega/{p-97453cd8.entry.js → p-4019a3ec.entry.js} +1 -1
- package/dist/vega/p-46359293.entry.js +1 -0
- package/dist/vega/{p-de664bdd.js → p-483c483a.js} +1 -1
- package/dist/vega/p-497db801.entry.js +1 -0
- package/dist/vega/p-4ab0d645.js +1 -0
- package/dist/vega/{p-84f2f342.js → p-4c18ff36.js} +1 -1
- package/dist/vega/p-503ff1ef.js +1 -0
- package/dist/vega/p-53360bc2.entry.js +1 -0
- package/dist/vega/p-570bdeb5.entry.js +1 -0
- package/dist/vega/{p-e8f540d8.js → p-57669fd6.js} +1 -1
- package/dist/vega/p-59b0f3c5.entry.js +1 -0
- package/dist/vega/p-5a19bcb5.entry.js +1 -0
- package/dist/vega/p-5d7d0085.entry.js +1 -0
- package/dist/vega/p-5dce8dfe.js +1 -0
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/{p-42df8a42.js → p-5f82eb88.js} +1 -1
- package/dist/vega/{p-72eee5e2.js → p-60fb1db7.js} +1 -1
- package/dist/vega/{p-cda26bdf.entry.js → p-644d7300.entry.js} +1 -1
- package/dist/vega/{p-81dbada7.js → p-666cd80f.js} +1 -1
- package/dist/vega/p-66b9e86d.entry.js +1 -0
- package/dist/vega/p-6705ce8f.entry.js +1 -0
- package/dist/vega/p-766a0cdd.entry.js +1 -0
- package/dist/vega/p-775fa5dd.entry.js +1 -0
- package/dist/vega/p-7c37e5bb.js +1 -0
- package/dist/vega/p-7da8b05f.js +1 -0
- package/dist/vega/{p-6705c68a.js → p-7f2441d6.js} +1 -1
- package/dist/vega/{p-b9a09a76.js → p-7fedfba5.js} +1 -1
- package/dist/vega/p-8f8ab0d3.js +1 -0
- package/dist/vega/p-95e50f3a.entry.js +13 -0
- package/dist/vega/p-9625162b.entry.js +1 -0
- package/dist/vega/p-98043367.entry.js +1 -0
- package/dist/vega/p-9ab547b0.js +1 -0
- package/dist/vega/p-9b7f9c27.entry.js +1 -0
- package/dist/vega/{p-c51a3e3c.entry.js → p-9ce30868.entry.js} +1 -1
- package/dist/vega/{p-618b35e4.entry.js → p-9cfae00d.entry.js} +1 -1
- package/dist/vega/{p-0c2eb135.entry.js → p-9d19c126.entry.js} +1 -1
- package/dist/vega/{p-4b500240.js → p-a190c86a.js} +1 -1
- package/dist/vega/p-a247e23c.entry.js +1 -0
- package/dist/vega/p-a8a809e1.entry.js +1 -0
- package/dist/vega/{p-0945a58d.entry.js → p-a98475a2.entry.js} +1 -1
- package/dist/vega/{p-be12fa36.js → p-ac608edc.js} +1 -1
- package/dist/vega/p-af7e6dfb.entry.js +1 -0
- package/dist/vega/p-b1096431.entry.js +1 -0
- package/dist/vega/p-b2b41aa4.entry.js +1 -0
- package/dist/vega/p-b6b4e40f.entry.js +1 -0
- package/dist/vega/p-b7e52da9.entry.js +1 -0
- package/dist/vega/{p-d09d153f.entry.js → p-b7ebb9fa.entry.js} +1 -1
- package/dist/vega/p-bbea0599.entry.js +1 -0
- package/dist/vega/{p-c2b276f7.entry.js → p-c1f7f37c.entry.js} +1 -1
- package/dist/vega/p-c2ded423.js +1 -0
- package/dist/vega/p-ca239f51.js +1 -0
- package/dist/vega/p-cc8ec82c.entry.js +1 -0
- package/dist/vega/p-cfd486ab.entry.js +1 -0
- package/dist/vega/p-d57920df.entry.js +1 -0
- package/dist/vega/p-d638f007.entry.js +1 -0
- package/dist/vega/p-d7219734.js +1 -0
- package/dist/vega/p-ddac683a.entry.js +1 -0
- package/dist/vega/p-e4ca75a7.entry.js +1 -0
- package/dist/vega/p-e6fdc69f.entry.js +1 -0
- package/dist/vega/p-e95668f3.entry.js +1 -0
- package/dist/vega/p-eb798062.entry.js +1 -0
- package/dist/vega/p-ebc062f6.entry.js +1 -0
- package/dist/vega/p-ec4de3ec.js +1 -0
- package/dist/vega/p-fb5c2cc6.entry.js +1 -0
- package/dist/vega/p-fbb91e25.entry.js +1 -0
- package/dist/vega/p-fcab2244.entry.js +1 -0
- package/dist/vega/p-fe9644a0.js +1 -0
- package/dist/vega/p-fea15767.entry.js +1 -0
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +1 -1
- package/dist/cjs/content-state-3e4467a3.js +0 -134
- package/dist/esm/content-state-f39c4bbf.js +0 -132
- package/dist/vega/p-01d0dbe6.entry.js +0 -1
- package/dist/vega/p-0634f06b.entry.js +0 -1
- package/dist/vega/p-09c5de7f.entry.js +0 -1
- package/dist/vega/p-0be711b6.entry.js +0 -1
- package/dist/vega/p-0ee10fd7.js +0 -1
- package/dist/vega/p-12ad8ada.entry.js +0 -1
- package/dist/vega/p-14f85e30.entry.js +0 -1
- package/dist/vega/p-193d2c51.entry.js +0 -1
- package/dist/vega/p-1a64716b.entry.js +0 -1
- package/dist/vega/p-1d805cc0.entry.js +0 -1
- package/dist/vega/p-211df22a.entry.js +0 -1
- package/dist/vega/p-21d59593.entry.js +0 -1
- package/dist/vega/p-29b09aad.js +0 -1
- package/dist/vega/p-2bbcb1ca.entry.js +0 -1
- package/dist/vega/p-2fbda931.js +0 -1
- package/dist/vega/p-3126edd6.entry.js +0 -1
- package/dist/vega/p-45dd4698.entry.js +0 -1
- package/dist/vega/p-4873be94.entry.js +0 -1
- package/dist/vega/p-4f0b56fc.js +0 -1
- package/dist/vega/p-5760619c.entry.js +0 -1
- package/dist/vega/p-5dd923e0.entry.js +0 -1
- package/dist/vega/p-61116634.entry.js +0 -1
- package/dist/vega/p-625771d7.entry.js +0 -1
- package/dist/vega/p-68f0aa72.entry.js +0 -1
- package/dist/vega/p-6a3989dd.js +0 -1
- package/dist/vega/p-6c09b79a.entry.js +0 -1
- package/dist/vega/p-6d23c08b.entry.js +0 -1
- package/dist/vega/p-71eeb279.entry.js +0 -1
- package/dist/vega/p-7258cb9c.entry.js +0 -1
- package/dist/vega/p-7ecbf764.entry.js +0 -1
- package/dist/vega/p-85365f8b.js +0 -1
- package/dist/vega/p-8ab356e8.entry.js +0 -1
- package/dist/vega/p-8fc170d9.entry.js +0 -1
- package/dist/vega/p-91aa058f.entry.js +0 -1
- package/dist/vega/p-926596cc.js +0 -1
- package/dist/vega/p-92707b74.entry.js +0 -1
- package/dist/vega/p-b0e824df.entry.js +0 -13
- package/dist/vega/p-b57792b7.js +0 -1
- package/dist/vega/p-b6815874.js +0 -1
- package/dist/vega/p-b688a71b.js +0 -1
- package/dist/vega/p-b6f09c98.entry.js +0 -1
- package/dist/vega/p-c016c3b2.entry.js +0 -1
- package/dist/vega/p-c02f650e.entry.js +0 -1
- package/dist/vega/p-c56965fc.entry.js +0 -1
- package/dist/vega/p-c6f544fe.entry.js +0 -1
- package/dist/vega/p-c88acd87.entry.js +0 -1
- package/dist/vega/p-cb8f8458.entry.js +0 -1
- package/dist/vega/p-d057999f.js +0 -1
- package/dist/vega/p-d994874a.entry.js +0 -1
- package/dist/vega/p-dcdac4d0.entry.js +0 -1
- package/dist/vega/p-e04d4ba3.entry.js +0 -1
- package/dist/vega/p-e093b2c5.entry.js +0 -1
- package/dist/vega/p-e480babd.entry.js +0 -1
- package/dist/vega/p-eaf6c3d8.entry.js +0 -1
- package/dist/vega/p-efbea85a.entry.js +0 -1
- package/dist/vega/p-f2cc36ae.entry.js +0 -1
- package/dist/vega/p-f31bb1fd.js +0 -1
- package/dist/vega/p-f357cf46.js +0 -1
- package/dist/vega/p-f48711fa.entry.js +0 -1
- package/dist/vega/p-f6b89936.entry.js +0 -1
- package/dist/vega/p-f84fd31c.js +0 -1
- package/dist/vega/p-fc6ea557.entry.js +0 -1
- package/dist/vega/p-ff50c204.entry.js +0 -1
package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-layout-controller.js
ADDED
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { InjectVegaSlimmer, MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
|
|
8
|
+
import ResponsiveFormatFacade from '../../../../helpers/formatter/responsive-map-formatter/responsive-format-facade';
|
|
9
|
+
import { DefaultModalSize } from '../../../../constants/ui';
|
|
10
|
+
import { getCurrentBreakpoint } from '../../../../utils/breakpoints';
|
|
11
|
+
import { PageResizeObserverSlimmer } from '../../../../helpers/slimmers/page-resize-observer-slimmer';
|
|
12
|
+
/**
|
|
13
|
+
* Modal layout controller
|
|
14
|
+
*/
|
|
15
|
+
export class VegaModalLayoutController extends VegaSlimmer {
|
|
16
|
+
constructor() {
|
|
17
|
+
super(...arguments);
|
|
18
|
+
/*
|
|
19
|
+
* The below method is e2e-test covered in
|
|
20
|
+
* @see{module:vega-modal-resize-e2e}
|
|
21
|
+
*/
|
|
22
|
+
this.pageResizeObserverSlimmer = new PageResizeObserverSlimmer({
|
|
23
|
+
callback:
|
|
24
|
+
/* istanbul ignore next */
|
|
25
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
26
|
+
() => {
|
|
27
|
+
this.setModalWidth('update');
|
|
28
|
+
this.setContentMaxHeight();
|
|
29
|
+
},
|
|
30
|
+
isDeferred: true,
|
|
31
|
+
});
|
|
32
|
+
this.isModalWidthSet = false;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Component lifecycle - [connectedCallback]
|
|
36
|
+
*/
|
|
37
|
+
componentDidLoad() {
|
|
38
|
+
this.setContentMaxHeight();
|
|
39
|
+
}
|
|
40
|
+
/*
|
|
41
|
+
* The below method is e2e-test covered in
|
|
42
|
+
* @see{module:vega-modal-resize-e2e}
|
|
43
|
+
*/
|
|
44
|
+
/* istanbul ignore next */
|
|
45
|
+
/**
|
|
46
|
+
* Listen watch size method to be called
|
|
47
|
+
*/
|
|
48
|
+
watchSize() {
|
|
49
|
+
this.setModalWidth('update');
|
|
50
|
+
}
|
|
51
|
+
/*
|
|
52
|
+
* The below method is e2e-test covered in
|
|
53
|
+
* @see{module:vega-modal-default-e2e}
|
|
54
|
+
* @see{module:vega-modal-size-number-e2e}
|
|
55
|
+
* @see{module:vega-modal-size-responsive-e2e}
|
|
56
|
+
* @see{module:vega-modal-resize-e2e}
|
|
57
|
+
* While call toggle method for modal show or hide, it will call this method.
|
|
58
|
+
* but we should really update the modal width while first initialize modal, window resize and size changed.
|
|
59
|
+
* So to avoid repeated calls by toggle, we add a flag as parameter,
|
|
60
|
+
*/
|
|
61
|
+
/* istanbul ignore next */
|
|
62
|
+
/**
|
|
63
|
+
* Set width of modal.
|
|
64
|
+
*
|
|
65
|
+
* @param {'initialize' | 'update'} flag - Is trigger by
|
|
66
|
+
*/
|
|
67
|
+
setModalWidth(flag = 'initialize') {
|
|
68
|
+
if (this.isModalWidthSet && flag === 'initialize')
|
|
69
|
+
return;
|
|
70
|
+
const size = this.getModalSize();
|
|
71
|
+
const dialog = this.host.shadowRoot.querySelector('.modal-dialog');
|
|
72
|
+
typeof size === 'number'
|
|
73
|
+
? (dialog.style['width'] = `${size}px`)
|
|
74
|
+
: (dialog.style['width'] = `${size}`);
|
|
75
|
+
this.isModalWidthSet = true;
|
|
76
|
+
}
|
|
77
|
+
/*
|
|
78
|
+
* The below method is e2e-test covered in
|
|
79
|
+
* @see{module:vega-modal-content-max-height-responsive-e2e}
|
|
80
|
+
*/
|
|
81
|
+
/* istanbul ignore next */
|
|
82
|
+
/**
|
|
83
|
+
* Set max height of modal content.
|
|
84
|
+
*/
|
|
85
|
+
setContentMaxHeight() {
|
|
86
|
+
const maxHeight = ResponsiveFormatFacade.formatCustom(this.contentMaxHeight);
|
|
87
|
+
if (maxHeight) {
|
|
88
|
+
this.renderer.getModalContentRef().style.maxHeight = `${maxHeight}px`;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
/*
|
|
92
|
+
* The below method is e2e-test covered in
|
|
93
|
+
* @see{module:vega-modal-default-e2e}
|
|
94
|
+
* @see{module:vega-modal-size-number-e2e}
|
|
95
|
+
* @see{module:vega-modal-size-responsive-e2e}
|
|
96
|
+
* @see{module:vega-modal-resize-e2e}
|
|
97
|
+
* @see{module:vega-modal-default-width-S-320-e2e}
|
|
98
|
+
* @see{module:vega-modal-default-width-S-600-e2e}
|
|
99
|
+
*/
|
|
100
|
+
/* istanbul ignore next */
|
|
101
|
+
/**
|
|
102
|
+
* Get size of modal.
|
|
103
|
+
*
|
|
104
|
+
* @returns {number | string} - Modal size.
|
|
105
|
+
*/
|
|
106
|
+
getModalSize() {
|
|
107
|
+
const size = ResponsiveFormatFacade.format(this.size, 'size');
|
|
108
|
+
if (size) {
|
|
109
|
+
return size;
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
return DefaultModalSize[getCurrentBreakpoint()];
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
__decorate([
|
|
117
|
+
MapToComponentField()
|
|
118
|
+
], VegaModalLayoutController.prototype, "host", void 0);
|
|
119
|
+
__decorate([
|
|
120
|
+
MapToComponentField()
|
|
121
|
+
], VegaModalLayoutController.prototype, "contentMaxHeight", void 0);
|
|
122
|
+
__decorate([
|
|
123
|
+
MapToComponentField()
|
|
124
|
+
], VegaModalLayoutController.prototype, "size", void 0);
|
|
125
|
+
__decorate([
|
|
126
|
+
MapToComponentField()
|
|
127
|
+
], VegaModalLayoutController.prototype, "renderer", void 0);
|
|
128
|
+
__decorate([
|
|
129
|
+
InjectVegaSlimmer()
|
|
130
|
+
], VegaModalLayoutController.prototype, "pageResizeObserverSlimmer", void 0);
|
|
131
|
+
__decorate([
|
|
132
|
+
MapToComponentMethod('componentDidLoad')
|
|
133
|
+
], VegaModalLayoutController.prototype, "componentDidLoad", null);
|
|
134
|
+
__decorate([
|
|
135
|
+
MapToComponentMethod('watchSize')
|
|
136
|
+
], VegaModalLayoutController.prototype, "watchSize", null);
|
package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-mobile-controller.js
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
|
|
8
|
+
import { getDeviceType } from '../../../../utils/ui';
|
|
9
|
+
import { DeviceType } from '../../../../types/ui.type';
|
|
10
|
+
/**
|
|
11
|
+
* Modal mobile controller
|
|
12
|
+
*/
|
|
13
|
+
export class VegaModalMobileController extends VegaSlimmer {
|
|
14
|
+
/* istanbul ignore next */
|
|
15
|
+
/**
|
|
16
|
+
* Component lifecycle - [connectedCallback]
|
|
17
|
+
*/
|
|
18
|
+
componentDidLoad() {
|
|
19
|
+
if (getDeviceType() !== DeviceType.DESKTOP && this.backdrop !== 'none') {
|
|
20
|
+
this.disableBackdropTouchMove();
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
/* istanbul ignore next */
|
|
24
|
+
/**
|
|
25
|
+
* There are two situations in modal scrolling:
|
|
26
|
+
* 1. Scrolls the non-modal content part in vega-modal (e.g. backdrop, modal dialog).
|
|
27
|
+
* 2. Scrolls the modal content (if scrollable) in vega-modal.
|
|
28
|
+
* On the mobile side, we need to prevent scrolling in the area outside the modal content.
|
|
29
|
+
*
|
|
30
|
+
* TODO: If the modal content is too long, a scroll bar will appear and the body cannot be scrolled,
|
|
31
|
+
* but on the IOS side, the body content of the scrolling modal will occasionally appear scrolling.
|
|
32
|
+
* This problem is reproduced on the following websites, and there is no solution yet.
|
|
33
|
+
* https://v5.bootcss.com/docs/components/modal/
|
|
34
|
+
* https://mui.com/material-ui/react-dialog/
|
|
35
|
+
*/
|
|
36
|
+
disableBackdropTouchMove() {
|
|
37
|
+
this.host.addEventListener('touchstart', (e) => {
|
|
38
|
+
this.touchStartY = e.targetTouches[0].pageY;
|
|
39
|
+
}, { capture: true });
|
|
40
|
+
this.host.addEventListener('touchmove', (e) => {
|
|
41
|
+
const isScrolledTop = this.host.scrollTop <= 0;
|
|
42
|
+
const isScrolledBottom = this.host.scrollHeight - this.host.scrollTop <= this.host.clientHeight;
|
|
43
|
+
const isToBottomMove = this.touchStartY < e.targetTouches[0].pageY;
|
|
44
|
+
const isToTopMove = this.touchStartY > e.targetTouches[0].pageY;
|
|
45
|
+
if (e.target === this.host &&
|
|
46
|
+
((isScrolledTop && isToBottomMove) || (isScrolledBottom && isToTopMove))) {
|
|
47
|
+
e.preventDefault();
|
|
48
|
+
}
|
|
49
|
+
}, { capture: true });
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
__decorate([
|
|
53
|
+
MapToComponentField()
|
|
54
|
+
], VegaModalMobileController.prototype, "host", void 0);
|
|
55
|
+
__decorate([
|
|
56
|
+
MapToComponentField()
|
|
57
|
+
], VegaModalMobileController.prototype, "backdrop", void 0);
|
|
58
|
+
__decorate([
|
|
59
|
+
MapToComponentMethod('componentDidLoad')
|
|
60
|
+
], VegaModalMobileController.prototype, "componentDidLoad", null);
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
|
|
8
|
+
import { findParent } from '../../../../utils/ui';
|
|
9
|
+
/**
|
|
10
|
+
* Modal open state controller
|
|
11
|
+
*/
|
|
12
|
+
export class VegaModalOpenStateController extends VegaSlimmer {
|
|
13
|
+
constructor() {
|
|
14
|
+
super(...arguments);
|
|
15
|
+
/*
|
|
16
|
+
* The below method is e2e-test covered in
|
|
17
|
+
* @see{module:vega-modal-toggle-interactive-e2e}
|
|
18
|
+
*/
|
|
19
|
+
/* istanbul ignore next */
|
|
20
|
+
/**
|
|
21
|
+
* Listen modal close event and close modal.
|
|
22
|
+
*
|
|
23
|
+
* @param {MouseEvent} e - Close modal event.
|
|
24
|
+
*/
|
|
25
|
+
this.onModalClose = (e) => {
|
|
26
|
+
e.preventDefault();
|
|
27
|
+
e.stopPropagation();
|
|
28
|
+
if (!this.handleClose || this.handleClose()) {
|
|
29
|
+
this.open = false;
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Component lifecycle - [componentDidLoad]
|
|
35
|
+
*/
|
|
36
|
+
componentDidLoad() {
|
|
37
|
+
if (this.open) {
|
|
38
|
+
this.toggle();
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Toggle modal while open property changed.
|
|
43
|
+
*/
|
|
44
|
+
watchOpen() {
|
|
45
|
+
this.toggle();
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Listen the target element clicked has a `data-target='modal'` attribute and open the modal if it does.
|
|
49
|
+
*
|
|
50
|
+
* @param {MouseEvent} e - Open modal event.
|
|
51
|
+
*/
|
|
52
|
+
listenDataTarget(e) {
|
|
53
|
+
/*
|
|
54
|
+
* vega-backdrop cannot be clicked and is completely covered by vega-modal. Click events cannot be added to the backdrop.
|
|
55
|
+
*/
|
|
56
|
+
const target = e.composedPath()[0];
|
|
57
|
+
if (target.tagName === 'VEGA-MODAL' && this.backdrop === 'default' && target === this.host) {
|
|
58
|
+
this.open = false;
|
|
59
|
+
}
|
|
60
|
+
if (this.host.id &&
|
|
61
|
+
(target.getAttribute('data-target') === this.host.id ||
|
|
62
|
+
findParent(target, `[data-target=${this.host.id}]`))) {
|
|
63
|
+
e.preventDefault();
|
|
64
|
+
this.open = true;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/*
|
|
68
|
+
* The below method is e2e-test covered in
|
|
69
|
+
* @see{module:vega-modal-toggle-interactive-e2e}
|
|
70
|
+
*/
|
|
71
|
+
/* istanbul ignore next */
|
|
72
|
+
/**
|
|
73
|
+
* Listen the target element clicked has a `data-dismiss='modal'` attribute and closes the modal if it does.
|
|
74
|
+
*
|
|
75
|
+
* @param {MouseEvent} e - Close modal event.
|
|
76
|
+
*/
|
|
77
|
+
listenDataDismiss(e) {
|
|
78
|
+
const target = e.target.closest(`[data-dismiss='modal']`);
|
|
79
|
+
if (target) {
|
|
80
|
+
e.preventDefault();
|
|
81
|
+
this.open = false;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
/*
|
|
85
|
+
* The below method is e2e-test covered in
|
|
86
|
+
* @see{module:vega-modal-toggle-interactive-e2e}
|
|
87
|
+
*/
|
|
88
|
+
/* istanbul ignore next */
|
|
89
|
+
/**
|
|
90
|
+
* Manages the visibility and behavior of a modal by updating various properties
|
|
91
|
+
* and emitting an event.
|
|
92
|
+
*/
|
|
93
|
+
toggle() {
|
|
94
|
+
this.open ? this.openedModalStackController.push() : this.openedModalStackController.remove();
|
|
95
|
+
this.updateDocumentRootOverflow();
|
|
96
|
+
this.backdropController.setBackdrop();
|
|
97
|
+
this.zIndexController.setModalZIndex();
|
|
98
|
+
this.removeBackdropWhileNoModalShow();
|
|
99
|
+
this.layoutController.setModalWidth();
|
|
100
|
+
this.emitEvent();
|
|
101
|
+
this.setModalVisibility();
|
|
102
|
+
}
|
|
103
|
+
/*
|
|
104
|
+
* The below method is e2e-test covered in
|
|
105
|
+
* @see{module:vega-modal-toggle-interactive-e2e}
|
|
106
|
+
*/
|
|
107
|
+
/* istanbul ignore next */
|
|
108
|
+
/**
|
|
109
|
+
* Toggles the display property of a modal element between 'flex' and
|
|
110
|
+
* 'none' based on the value of the `open` property.
|
|
111
|
+
*/
|
|
112
|
+
setModalVisibility() {
|
|
113
|
+
this.host.style['display'] = this.open ? 'flex' : 'none';
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Emits either an open or close event based on the value of the `open` property.
|
|
117
|
+
*/
|
|
118
|
+
emitEvent() {
|
|
119
|
+
this.open ? this.openEventEmitter.emit() : this.closeEventEmitter.emit();
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* In desktop, we should add 'overflow: hidden' to the body to prevent the body scroll.
|
|
123
|
+
*/
|
|
124
|
+
updateDocumentRootOverflow() {
|
|
125
|
+
if (this.backdrop === 'none')
|
|
126
|
+
return;
|
|
127
|
+
const openedModalStackLength = this.openedModalStackController.length();
|
|
128
|
+
if (this.open && openedModalStackLength === 1) {
|
|
129
|
+
document.body.classList.add('disable-scroll-in-desktop');
|
|
130
|
+
}
|
|
131
|
+
else if (!this.open && openedModalStackLength === 0) {
|
|
132
|
+
document.body.classList.remove('disable-scroll-in-desktop');
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
/*
|
|
136
|
+
* The below method is e2e-test covered in
|
|
137
|
+
* @see{module:vega-modal-disconnected-callback-e2e }
|
|
138
|
+
*/
|
|
139
|
+
/* istanbul ignore next */
|
|
140
|
+
/**
|
|
141
|
+
* Removes the backdrop element if no modals are currently visible.
|
|
142
|
+
*/
|
|
143
|
+
removeBackdropWhileNoModalShow() {
|
|
144
|
+
if (!this.open && this.openedModalStackController.length() === 0) {
|
|
145
|
+
this.backdropController.removeBackdrop();
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
__decorate([
|
|
150
|
+
MapToComponentField()
|
|
151
|
+
], VegaModalOpenStateController.prototype, "host", void 0);
|
|
152
|
+
__decorate([
|
|
153
|
+
MapToComponentField({ writable: true })
|
|
154
|
+
], VegaModalOpenStateController.prototype, "open", void 0);
|
|
155
|
+
__decorate([
|
|
156
|
+
MapToComponentField()
|
|
157
|
+
], VegaModalOpenStateController.prototype, "backdrop", void 0);
|
|
158
|
+
__decorate([
|
|
159
|
+
MapToComponentField()
|
|
160
|
+
], VegaModalOpenStateController.prototype, "handleClose", void 0);
|
|
161
|
+
__decorate([
|
|
162
|
+
MapToComponentField()
|
|
163
|
+
], VegaModalOpenStateController.prototype, "closeEventEmitter", void 0);
|
|
164
|
+
__decorate([
|
|
165
|
+
MapToComponentField()
|
|
166
|
+
], VegaModalOpenStateController.prototype, "openEventEmitter", void 0);
|
|
167
|
+
__decorate([
|
|
168
|
+
MapToComponentField()
|
|
169
|
+
], VegaModalOpenStateController.prototype, "layoutController", void 0);
|
|
170
|
+
__decorate([
|
|
171
|
+
MapToComponentField()
|
|
172
|
+
], VegaModalOpenStateController.prototype, "backdropController", void 0);
|
|
173
|
+
__decorate([
|
|
174
|
+
MapToComponentField()
|
|
175
|
+
], VegaModalOpenStateController.prototype, "openedModalStackController", void 0);
|
|
176
|
+
__decorate([
|
|
177
|
+
MapToComponentField()
|
|
178
|
+
], VegaModalOpenStateController.prototype, "zIndexController", void 0);
|
|
179
|
+
__decorate([
|
|
180
|
+
MapToComponentMethod('componentDidLoad')
|
|
181
|
+
], VegaModalOpenStateController.prototype, "componentDidLoad", null);
|
|
182
|
+
__decorate([
|
|
183
|
+
MapToComponentMethod('watchOpen')
|
|
184
|
+
], VegaModalOpenStateController.prototype, "watchOpen", null);
|
|
185
|
+
__decorate([
|
|
186
|
+
MapToComponentMethod('listenDataTarget')
|
|
187
|
+
], VegaModalOpenStateController.prototype, "listenDataTarget", null);
|
|
188
|
+
__decorate([
|
|
189
|
+
MapToComponentMethod('listenDataDismiss')
|
|
190
|
+
], VegaModalOpenStateController.prototype, "listenDataDismiss", null);
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
|
|
8
|
+
/**
|
|
9
|
+
* Opened modal stack controller
|
|
10
|
+
*/
|
|
11
|
+
export class VegaModalOpenedModalStackController extends VegaSlimmer {
|
|
12
|
+
/**
|
|
13
|
+
* Adds the current host element to an array in a modal toggle controller.
|
|
14
|
+
*/
|
|
15
|
+
push() {
|
|
16
|
+
VegaModalOpenedModalStackController.openedModalStack.push(this.host);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Removes the current modal from the opened modal stack.
|
|
20
|
+
*/
|
|
21
|
+
remove() {
|
|
22
|
+
VegaModalOpenedModalStackController.openedModalStack =
|
|
23
|
+
VegaModalOpenedModalStackController.openedModalStack.filter((modal) => modal !== this.host);
|
|
24
|
+
}
|
|
25
|
+
//TODO: Record the nest modal by an array.
|
|
26
|
+
/**
|
|
27
|
+
* Get visible modal length.
|
|
28
|
+
*
|
|
29
|
+
* @returns {number} - Visible modal length.
|
|
30
|
+
*/
|
|
31
|
+
length() {
|
|
32
|
+
return VegaModalOpenedModalStackController.openedModalStack.length;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Returns the previous HTMLVegaModalElement from the openedModalStack if it exists.
|
|
36
|
+
*
|
|
37
|
+
* @returns {Nullable<HTMLElement>} - The previous HTMLVegaModalElement.
|
|
38
|
+
*/
|
|
39
|
+
peek() {
|
|
40
|
+
const length = this.length();
|
|
41
|
+
if (length > 0) {
|
|
42
|
+
return VegaModalOpenedModalStackController.openedModalStack[length - 1];
|
|
43
|
+
}
|
|
44
|
+
/* istanbul ignore next */
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
VegaModalOpenedModalStackController.openedModalStack = [];
|
|
49
|
+
__decorate([
|
|
50
|
+
MapToComponentField()
|
|
51
|
+
], VegaModalOpenedModalStackController.prototype, "host", void 0);
|
package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-scroll-controller.js
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
|
|
8
|
+
import ChangeManager from '../../../../helpers/change-manager/change-manager';
|
|
9
|
+
import { SHADOW_ROOT_ELEMENT_SCROLLING } from '../../../../helpers/change-manager/subject/static-subject/static-subject-title';
|
|
10
|
+
/**
|
|
11
|
+
* Modal scroll controller
|
|
12
|
+
*/
|
|
13
|
+
export class VegaModalScrollController extends VegaSlimmer {
|
|
14
|
+
/**
|
|
15
|
+
* Component lifecycle - [connectedCallback]
|
|
16
|
+
*/
|
|
17
|
+
componentDidLoad() {
|
|
18
|
+
if (this.isContentScrollable()) {
|
|
19
|
+
this.listenContentScroll();
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Is modal content scrollable.
|
|
24
|
+
*
|
|
25
|
+
* @returns {boolean} - Is scrollable.
|
|
26
|
+
*/
|
|
27
|
+
isContentScrollable() {
|
|
28
|
+
return Boolean(this.contentMaxHeight);
|
|
29
|
+
}
|
|
30
|
+
/*
|
|
31
|
+
* The below method is e2e-test covered in
|
|
32
|
+
* @see{module:vega-modal-content-scroll-to-bottom}
|
|
33
|
+
*/
|
|
34
|
+
/* istanbul ignore next */
|
|
35
|
+
/**
|
|
36
|
+
* Listen content scroll
|
|
37
|
+
*/
|
|
38
|
+
listenContentScroll() {
|
|
39
|
+
const modalContent = this.renderer.getModalContentRef();
|
|
40
|
+
const modalFooter = this.renderer.getModalFooterRef();
|
|
41
|
+
modalContent.addEventListener('scroll', () => {
|
|
42
|
+
if (modalContent.scrollHeight - modalContent.scrollTop <= modalContent.clientHeight) {
|
|
43
|
+
modalFooter.classList.add('vega-modal-footer-with-content-scroll-to-bottom');
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
modalFooter.classList.remove('vega-modal-footer-with-content-scroll-to-bottom');
|
|
47
|
+
}
|
|
48
|
+
this.notifyContentScrolling();
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
/*
|
|
52
|
+
* The below method is e2e-test covered in
|
|
53
|
+
* @see{module:vega-modal-shadow-root-scrolling-e2e}
|
|
54
|
+
*/
|
|
55
|
+
/* istanbul ignore next */
|
|
56
|
+
/**
|
|
57
|
+
* Notifies the `ChangeManager` about scrolling in a specific element within a shadow root.
|
|
58
|
+
*/
|
|
59
|
+
notifyContentScrolling() {
|
|
60
|
+
ChangeManager.notify(SHADOW_ROOT_ELEMENT_SCROLLING, {
|
|
61
|
+
host: this.host,
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
__decorate([
|
|
66
|
+
MapToComponentField()
|
|
67
|
+
], VegaModalScrollController.prototype, "host", void 0);
|
|
68
|
+
__decorate([
|
|
69
|
+
MapToComponentField()
|
|
70
|
+
], VegaModalScrollController.prototype, "contentMaxHeight", void 0);
|
|
71
|
+
__decorate([
|
|
72
|
+
MapToComponentField()
|
|
73
|
+
], VegaModalScrollController.prototype, "renderer", void 0);
|
|
74
|
+
__decorate([
|
|
75
|
+
MapToComponentMethod('componentDidLoad')
|
|
76
|
+
], VegaModalScrollController.prototype, "componentDidLoad", null);
|
package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-z-index-controller.js
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
|
|
8
|
+
import InternalVegaZIndexManager from '../../../../helpers/zindex/internal-vega-z-index-manager';
|
|
9
|
+
/**
|
|
10
|
+
* Modal z-index controller
|
|
11
|
+
*/
|
|
12
|
+
export class VegaModalZIndexController extends VegaSlimmer {
|
|
13
|
+
/**
|
|
14
|
+
* Manages the z-index of modal elements based on their visibility status.
|
|
15
|
+
*/
|
|
16
|
+
setModalZIndex() {
|
|
17
|
+
const backdropRef = this.backdropController.getBackdropRef();
|
|
18
|
+
if (this.open) {
|
|
19
|
+
InternalVegaZIndexManager.setZIndex(backdropRef, 'base');
|
|
20
|
+
InternalVegaZIndexManager.setZIndex(this.host, 'base');
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
InternalVegaZIndexManager.removeZIndex(backdropRef, 'base');
|
|
24
|
+
InternalVegaZIndexManager.removeZIndex(this.host, 'base');
|
|
25
|
+
if (this.openedModalStackController.length() > 0) {
|
|
26
|
+
InternalVegaZIndexManager.setZIndex(backdropRef, 'base');
|
|
27
|
+
InternalVegaZIndexManager.setZIndex(this.openedModalStackController.peek(), 'base');
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
__decorate([
|
|
33
|
+
MapToComponentField()
|
|
34
|
+
], VegaModalZIndexController.prototype, "host", void 0);
|
|
35
|
+
__decorate([
|
|
36
|
+
MapToComponentField()
|
|
37
|
+
], VegaModalZIndexController.prototype, "open", void 0);
|
|
38
|
+
__decorate([
|
|
39
|
+
MapToComponentField()
|
|
40
|
+
], VegaModalZIndexController.prototype, "backdropController", void 0);
|
|
41
|
+
__decorate([
|
|
42
|
+
MapToComponentField()
|
|
43
|
+
], VegaModalZIndexController.prototype, "openedModalStackController", void 0);
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
|
|
8
|
+
import { Fragment, h, Host } from '@stencil/core';
|
|
9
|
+
import { createEnterKeyHandlerToTriggerClick } from '../../../../utils/accessibility';
|
|
10
|
+
import { formatAndValidResponsiveToken } from '../../../../utils/design-token';
|
|
11
|
+
/**
|
|
12
|
+
* Modal renderer
|
|
13
|
+
*/
|
|
14
|
+
export class VegaModalRenderer extends VegaSlimmer {
|
|
15
|
+
getModalContentRef() {
|
|
16
|
+
return this.modalContent;
|
|
17
|
+
}
|
|
18
|
+
getModalFooterRef() {
|
|
19
|
+
return this.modalFooter;
|
|
20
|
+
}
|
|
21
|
+
getModalContainerRef() {
|
|
22
|
+
return this.modalContainer;
|
|
23
|
+
}
|
|
24
|
+
render() {
|
|
25
|
+
return (h(Host, { class: {
|
|
26
|
+
'align-center': this.deprecatedPropertySlimmer.getValue() && this.open,
|
|
27
|
+
'animation': this.animation,
|
|
28
|
+
} },
|
|
29
|
+
h("div", { class: "modal-dialog" }, this.renderContainer())));
|
|
30
|
+
}
|
|
31
|
+
renderContainer() {
|
|
32
|
+
const padding = formatAndValidResponsiveToken(this.padding, 'padding');
|
|
33
|
+
return (h("div", { class: "modal-container", ref: (node) => (this.modalContainer = node) },
|
|
34
|
+
this.renderHeader(padding),
|
|
35
|
+
this.renderContent(padding),
|
|
36
|
+
this.renderFooter(padding)));
|
|
37
|
+
}
|
|
38
|
+
renderHeader(padding) {
|
|
39
|
+
return (h("div", { class: {
|
|
40
|
+
'vega-modal-header': true,
|
|
41
|
+
'vega-modal-header-with-title': this.hasModalTitle(),
|
|
42
|
+
'vega-modal-header-with-icon': this.showCloseButton,
|
|
43
|
+
'vega-modal-header-with-content-scroll': this.isContentScrollable(),
|
|
44
|
+
[padding]: true,
|
|
45
|
+
} },
|
|
46
|
+
this.renderTitle(),
|
|
47
|
+
this.showCloseButton && this.renderCloseBtn()));
|
|
48
|
+
}
|
|
49
|
+
renderContent(padding) {
|
|
50
|
+
return (h("div", { class: {
|
|
51
|
+
'vega-modal-content': true,
|
|
52
|
+
'vega-modal-content-with-scroll': this.isContentScrollable(),
|
|
53
|
+
[padding]: true,
|
|
54
|
+
}, ref: (e) => (this.modalContent = e) },
|
|
55
|
+
h(Fragment, null,
|
|
56
|
+
h("slot", null),
|
|
57
|
+
h("slot", { name: "content" }),
|
|
58
|
+
h("slot", { name: "modal-content" }))));
|
|
59
|
+
}
|
|
60
|
+
renderFooter(padding) {
|
|
61
|
+
return (h("div", { class: {
|
|
62
|
+
'vega-modal-footer': true,
|
|
63
|
+
'vega-modal-footer-with-slot': this.hasModalFooter(),
|
|
64
|
+
'vega-modal-footer-with-content-scroll': this.isContentScrollable(),
|
|
65
|
+
[padding]: true,
|
|
66
|
+
}, ref: (e) => (this.modalFooter = e) },
|
|
67
|
+
h(Fragment, null,
|
|
68
|
+
h("slot", { name: "footer" }),
|
|
69
|
+
h("slot", { name: "modal-footer" }))));
|
|
70
|
+
}
|
|
71
|
+
renderTitle() {
|
|
72
|
+
return (h("div", { class: "vega-modal-title" }, this.modalTitle ? (h("div", { innerHTML: this.modalTitle })) : (h(Fragment, null,
|
|
73
|
+
h("slot", { name: "title" }),
|
|
74
|
+
h("slot", { name: "modal-title" })))));
|
|
75
|
+
}
|
|
76
|
+
renderCloseBtn() {
|
|
77
|
+
return (h("div", { "aria-label": "Close Button", class: "vega-modal-close-btn", "data-dismiss": "modal", onClick: this.openStateController.onModalClose, role: 'button', tabIndex: 0, onKeyDown: createEnterKeyHandlerToTriggerClick() },
|
|
78
|
+
h("vega-icon", { icon: "close", size: "size-16" })));
|
|
79
|
+
}
|
|
80
|
+
hasModalFooter() {
|
|
81
|
+
return (this.host.querySelector(`[slot='modal-footer']`) !== null ||
|
|
82
|
+
this.host.querySelector(`[slot='footer']`) !== null);
|
|
83
|
+
}
|
|
84
|
+
isContentScrollable() {
|
|
85
|
+
return Boolean(this.contentMaxHeight);
|
|
86
|
+
}
|
|
87
|
+
hasModalTitle() {
|
|
88
|
+
return (Boolean(this.modalTitle) ||
|
|
89
|
+
this.host.querySelector(`[slot='modal-title']`) !== null ||
|
|
90
|
+
this.host.querySelector(`[slot='title']`) !== null);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
__decorate([
|
|
94
|
+
MapToComponentField()
|
|
95
|
+
], VegaModalRenderer.prototype, "host", void 0);
|
|
96
|
+
__decorate([
|
|
97
|
+
MapToComponentField()
|
|
98
|
+
], VegaModalRenderer.prototype, "animation", void 0);
|
|
99
|
+
__decorate([
|
|
100
|
+
MapToComponentField()
|
|
101
|
+
], VegaModalRenderer.prototype, "open", void 0);
|
|
102
|
+
__decorate([
|
|
103
|
+
MapToComponentField()
|
|
104
|
+
], VegaModalRenderer.prototype, "padding", void 0);
|
|
105
|
+
__decorate([
|
|
106
|
+
MapToComponentField()
|
|
107
|
+
], VegaModalRenderer.prototype, "showCloseButton", void 0);
|
|
108
|
+
__decorate([
|
|
109
|
+
MapToComponentField()
|
|
110
|
+
], VegaModalRenderer.prototype, "modalTitle", void 0);
|
|
111
|
+
__decorate([
|
|
112
|
+
MapToComponentField()
|
|
113
|
+
], VegaModalRenderer.prototype, "contentMaxHeight", void 0);
|
|
114
|
+
__decorate([
|
|
115
|
+
MapToComponentField()
|
|
116
|
+
], VegaModalRenderer.prototype, "handleClose", void 0);
|
|
117
|
+
__decorate([
|
|
118
|
+
MapToComponentField()
|
|
119
|
+
], VegaModalRenderer.prototype, "deprecatedPropertySlimmer", void 0);
|
|
120
|
+
__decorate([
|
|
121
|
+
MapToComponentField()
|
|
122
|
+
], VegaModalRenderer.prototype, "openStateController", void 0);
|