@globalpayments/vega 2.64.0 → 2.65.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-a190cd2d.js → app-globals-681a0ed4.js} +9 -9
- package/dist/cjs/{brand-switch-state-controller-slimmer-5efa1b24.js → brand-switch-state-controller-slimmer-3d41b2a4.js} +1 -1
- package/dist/cjs/{child-nodes-event-prevent-slimmer-4e96270e.js → child-nodes-event-prevent-slimmer-feb072c4.js} +1 -1
- package/dist/cjs/{child-nodes-notify-observer-slimmer-34ac3bfc.js → child-nodes-notify-observer-slimmer-257fedb3.js} +1 -1
- package/dist/cjs/{code-block-417a131b.js → code-block-961d54e8.js} +4 -4
- package/dist/cjs/{component-value-history-controller-slimmer.abstract-0c4d1453.js → component-value-history-controller-slimmer.abstract-c5b8b47b.js} +6 -6
- package/dist/cjs/{dark-mode-state-controller-slimmer-add5d8a8.js → dark-mode-state-controller-slimmer-8a87ec08.js} +1 -1
- package/dist/cjs/{dark-mode-style-controller-41c94aac.js → dark-mode-style-controller-27809ff8.js} +1 -1
- package/dist/cjs/{design-token-ae0de304.js → design-token-98652b67.js} +1 -1
- package/dist/cjs/{dom-node-subject-observer-factory-58e3c010.js → dom-node-subject-observer-factory-56609e5a.js} +1 -1
- package/dist/cjs/{dto-renderer-manager-6d338e46.js → dto-renderer-manager-4b9d2560.js} +4 -4
- package/dist/cjs/{element-appender-slimmer-5a23e722.js → element-appender-slimmer-1f46981b.js} +6 -6
- package/dist/cjs/{event-emit-slimmer-428d8802.js → event-emit-slimmer-3cefb326.js} +2 -2
- package/dist/cjs/{form-field-controller-slimmer-cceb5c79.js → form-field-controller-slimmer-1e1123ea.js} +16 -8
- package/dist/cjs/{image-annotation-action-9785bc59.js → image-annotation-action-03b36f68.js} +4 -4
- package/dist/cjs/{index-9a92abce.js → index-f2fe26a0.js} +2 -2
- package/dist/cjs/index.cjs.js +16 -16
- package/dist/cjs/{inject-keyboard-manager-ad865c95.js → inject-keyboard-manager-51033b3f.js} +1 -1
- package/dist/cjs/{internal-vega-event-manager-28b957c8.js → internal-vega-event-manager-9b503f1a.js} +1 -1
- package/dist/cjs/{keyboard-manager-7f4e1f43.js → keyboard-manager-144907d7.js} +1 -1
- package/dist/cjs/{keyboard-manager-slimmer-138a90e5.js → keyboard-manager-slimmer-04c48756.js} +1 -1
- package/dist/cjs/{language-extension-abbc251a.js → language-extension-059d62f6.js} +2 -2
- package/dist/cjs/loader.cjs.js +14 -14
- package/dist/cjs/{public-rules-ffc5db13.js → public-rules-58e0218b.js} +8 -8
- package/dist/cjs/{range-37161c00.js → range-42732973.js} +2 -2
- package/dist/cjs/{responsive-format-facade-b20dad44.js → responsive-format-facade-29070d00.js} +5 -5
- package/dist/cjs/{rich-text-editor-required-rule-604ea2b9.js → rich-text-editor-required-rule-ce4dd5fb.js} +1 -1
- package/dist/cjs/{static-subject-title-7e7d791a.js → static-subject-title-5829a298.js} +0 -6
- package/dist/cjs/{string-input-formatter-slimmer-8445abc9.js → string-input-formatter-slimmer-0d69ea76.js} +3 -3
- package/dist/cjs/{style-formatter-56751462.js → style-formatter-f6723cb3.js} +1 -1
- package/dist/cjs/{sub-state-notify-slimmer-52fa23af.js → sub-state-notify-slimmer-066f2aa9.js} +2 -2
- package/dist/cjs/{sub-state-observer-slimmer-90c26113.js → sub-state-observer-slimmer-569e3297.js} +3 -3
- package/dist/cjs/{token-extension-46821c19.js → token-extension-260adb8a.js} +6 -6
- package/dist/cjs/{translation-ecfc704a.js → translation-f5adcb9f.js} +1 -1
- package/dist/cjs/{translation-slimmer-40a3536d.js → translation-slimmer-4b6239d1.js} +1 -1
- package/dist/cjs/{ui-4ce1fa08.js → ui-9e181079.js} +16 -3
- package/dist/cjs/vega-accordion.cjs.entry.js +13 -13
- package/dist/cjs/vega-app-footer.cjs.entry.js +3 -3
- package/dist/cjs/vega-app-header-button.cjs.entry.js +14 -14
- package/dist/cjs/vega-backdrop.cjs.entry.js +1 -1
- package/dist/cjs/vega-banner.cjs.entry.js +4 -4
- package/dist/cjs/vega-box.cjs.entry.js +13 -13
- package/dist/cjs/vega-brand-logo.cjs.entry.js +3 -3
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +5 -5
- package/dist/cjs/vega-button-circle.cjs.entry.js +19 -16
- package/dist/cjs/vega-button-group_2.cjs.entry.js +8 -8
- package/dist/cjs/vega-button-link.cjs.entry.js +5 -5
- package/dist/cjs/vega-button.cjs.entry.js +19 -14
- package/dist/cjs/vega-calendar_4.cjs.entry.js +506 -212
- package/dist/cjs/vega-card.cjs.entry.js +12 -12
- package/dist/cjs/vega-carousel.cjs.entry.js +12 -12
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +11 -11
- package/dist/cjs/vega-chip.cjs.entry.js +14 -14
- package/dist/cjs/vega-code-block.cjs.entry.js +15 -15
- package/dist/cjs/vega-color-picker.cjs.entry.js +9 -9
- package/dist/cjs/vega-combo-box.cjs.entry.js +12 -12
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +62 -25
- package/dist/cjs/vega-dialog_2.cjs.entry.js +15 -15
- package/dist/cjs/vega-divider.cjs.entry.js +12 -12
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +23 -22
- 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 +4 -4
- package/dist/cjs/vega-file-uploader.cjs.entry.js +10 -10
- package/dist/cjs/vega-flag-icon.cjs.entry.js +12 -12
- package/dist/cjs/vega-flex.cjs.entry.js +13 -13
- package/dist/cjs/vega-font.cjs.entry.js +12 -12
- package/dist/cjs/vega-form.cjs.entry.js +593 -354
- package/dist/cjs/vega-grid.cjs.entry.js +12 -12
- package/dist/cjs/vega-icon.cjs.entry.js +12 -12
- package/dist/cjs/vega-image-uploader.cjs.entry.js +17 -17
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +10 -10
- package/dist/cjs/vega-input-numeric.cjs.entry.js +13 -13
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +14 -14
- package/dist/cjs/vega-input-range.cjs.entry.js +11 -11
- package/dist/cjs/vega-input-select.cjs.entry.js +16 -16
- package/dist/cjs/vega-input.cjs.entry.js +11 -11
- package/dist/cjs/{vega-internal-event-id-dfd8b802.js → vega-internal-event-id-6d4a2c53.js} +6 -0
- package/dist/cjs/vega-item-toggle.cjs.entry.js +4 -4
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +44 -20
- package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +11 -11
- package/dist/cjs/vega-page-notification_2.cjs.entry.js +2 -2
- package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +5 -5
- package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +6 -6
- package/dist/cjs/vega-pagination.cjs.entry.js +14 -14
- package/dist/cjs/vega-popover_2.cjs.entry.js +16 -16
- package/dist/cjs/vega-progress-tracker.cjs.entry.js +4 -4
- package/dist/cjs/vega-radio_2.cjs.entry.js +13 -13
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +10 -10
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +23 -23
- package/dist/cjs/vega-segment-control.cjs.entry.js +4 -4
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +16 -16
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +12 -12
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +14 -14
- package/dist/cjs/vega-signature-capture.cjs.entry.js +16 -16
- package/dist/cjs/vega-stepper.cjs.entry.js +10 -10
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-table_8.cjs.entry.js +16 -16
- package/dist/cjs/vega-text.cjs.entry.js +1 -1
- package/dist/cjs/vega-textarea.cjs.entry.js +10 -10
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +19 -19
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +9 -9
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +14 -14
- package/dist/cjs/vega.cjs.js +14 -14
- package/dist/collection/components/vega-button/vega-button.js +9 -2
- package/dist/collection/components/vega-button-circle/vega-button-circle.js +8 -3
- package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-current-period-controller.js +7 -4
- package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-controller.js +21 -1
- package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-preivew-popover-controller.js +18 -1
- package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-post-operation-date-controller.js +14 -1
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-repeat-pattern-factory.js +8 -9
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-weekly-repeat-pattern.js +3 -1
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/test/calendar-event-repeat-pattern-factory.test.js +34 -0
- package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-item-renderer.js +1 -1
- package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-marker-renderer.js +31 -5
- 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/slimmers/month-view/renderers/vega-calendar-month-event-renderer.js +5 -3
- package/dist/collection/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.js +4 -1
- package/dist/collection/components/vega-calendar/vega-calendar.js +47 -1
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +37 -3
- package/dist/collection/components/vega-date-picker/vega-date-picker.js +6 -0
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +1 -1
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.css +4 -8
- package/dist/collection/components/vega-dropdown/vega-dropdown.js +4 -0
- package/dist/collection/components/vega-form/slimmers/controllers/vega-form-field-controller.js +351 -0
- package/dist/collection/components/vega-form/slimmers/controllers/vega-form-reset-controller.js +99 -0
- package/dist/collection/components/vega-form/slimmers/controllers/vega-form-submit-controller.js +122 -0
- package/dist/collection/components/vega-form/vega-form.js +20 -366
- package/dist/collection/components/vega-modal/vega-modal.css +4 -1
- package/dist/collection/components/vega-nav/slimmers/vega-nav-observer-slimmer.js +8 -3
- package/dist/collection/components/vega-nav/vega-left-nav-link/slimmers/controllers/vega-left-nav-link-controller.js +21 -4
- package/dist/collection/helpers/calendar/calendar-date.js +10 -8
- package/dist/collection/helpers/calendar/calendar-event.js +152 -16
- package/dist/collection/helpers/calendar/calendar-period/calendar-period.abstract.js +13 -4
- package/dist/collection/helpers/calendar/calendar-period/day-period.js +4 -4
- package/dist/collection/helpers/calendar/calendar-period/month-period.js +7 -6
- package/dist/collection/helpers/calendar/calendar-period/week-period.js +3 -3
- package/dist/collection/helpers/calendar/calendar-view-generator/week-view-generator.js +1 -1
- package/dist/collection/helpers/calendar/test/calendar-date.test.js +24 -0
- package/dist/collection/helpers/calendar/test/calendar-event.test.js +71 -0
- package/dist/collection/helpers/calendar/test/calendar-period/day-period.test.js +28 -0
- package/dist/collection/helpers/calendar/test/calendar-period/month-period.test.js +35 -0
- package/dist/collection/helpers/calendar/test/calendar-period/week-period.test.js +43 -0
- package/dist/collection/helpers/calendar/test/utils.test.js +29 -1
- package/dist/collection/helpers/calendar/utils.js +46 -0
- package/dist/collection/helpers/change-manager/subject/static-subject/static-subject-title.js +0 -2
- package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +3 -0
- package/dist/collection/helpers/validator/form-field-controller.js +13 -3
- package/dist/collection/utils/test/ui.test.js +55 -0
- package/dist/collection/utils/ui.js +16 -3
- package/dist/esm/{app-globals-b074e012.js → app-globals-1bacb762.js} +9 -9
- package/dist/esm/{brand-switch-state-controller-slimmer-05c85e6d.js → brand-switch-state-controller-slimmer-60249013.js} +1 -1
- package/dist/esm/{child-nodes-event-prevent-slimmer-7fe3dc57.js → child-nodes-event-prevent-slimmer-f32efdee.js} +1 -1
- package/dist/esm/{child-nodes-notify-observer-slimmer-78f77c2c.js → child-nodes-notify-observer-slimmer-b676cd2b.js} +1 -1
- package/dist/esm/{code-block-a6c78bbb.js → code-block-cb657afd.js} +4 -4
- package/dist/esm/{component-value-history-controller-slimmer.abstract-d37d2df7.js → component-value-history-controller-slimmer.abstract-65a83eaf.js} +6 -6
- package/dist/esm/{dark-mode-state-controller-slimmer-f1c2c299.js → dark-mode-state-controller-slimmer-f2b4f8ed.js} +1 -1
- package/dist/esm/{dark-mode-style-controller-5cf1c482.js → dark-mode-style-controller-b7e85b6a.js} +1 -1
- package/dist/esm/{design-token-6f9e70c4.js → design-token-3889675a.js} +1 -1
- package/dist/esm/{dom-node-subject-observer-factory-c7bc3035.js → dom-node-subject-observer-factory-ed4b89f4.js} +1 -1
- package/dist/esm/{dto-renderer-manager-5b036e47.js → dto-renderer-manager-8cac8f0f.js} +4 -4
- package/dist/esm/{element-appender-slimmer-1d6c2960.js → element-appender-slimmer-31b21e1b.js} +6 -6
- package/dist/esm/{event-emit-slimmer-3922d816.js → event-emit-slimmer-000ca6a7.js} +2 -2
- package/dist/esm/{form-field-controller-slimmer-c29b345f.js → form-field-controller-slimmer-24dbc255.js} +16 -8
- package/dist/esm/{image-annotation-action-f6308cf4.js → image-annotation-action-59ea166c.js} +4 -4
- package/dist/esm/{index-4f26bbd0.js → index-50b32f3d.js} +2 -2
- package/dist/esm/index.js +16 -16
- package/dist/esm/{inject-keyboard-manager-109817bf.js → inject-keyboard-manager-f7d92809.js} +1 -1
- package/dist/esm/{internal-vega-event-manager-cb06e987.js → internal-vega-event-manager-13e3ed3d.js} +1 -1
- package/dist/esm/{keyboard-manager-ab521d22.js → keyboard-manager-f4bbc452.js} +1 -1
- package/dist/esm/{keyboard-manager-slimmer-cae3a002.js → keyboard-manager-slimmer-a02cbc5f.js} +1 -1
- package/dist/esm/{language-extension-962c427a.js → language-extension-038014ac.js} +2 -2
- package/dist/esm/loader.js +14 -14
- package/dist/esm/{public-rules-6fa7533f.js → public-rules-a42e6f59.js} +8 -8
- package/dist/esm/{range-4d7aa0fd.js → range-c08d8de1.js} +2 -2
- package/dist/esm/{responsive-format-facade-b594fc72.js → responsive-format-facade-d8ccc742.js} +5 -5
- package/dist/esm/{rich-text-editor-required-rule-a72374cd.js → rich-text-editor-required-rule-3a8f319c.js} +1 -1
- package/dist/esm/{static-subject-title-ca83d6b6.js → static-subject-title-52f93124.js} +1 -4
- package/dist/esm/{string-input-formatter-slimmer-75256a17.js → string-input-formatter-slimmer-c64c7855.js} +3 -3
- package/dist/esm/{style-formatter-56074ede.js → style-formatter-ab6a9248.js} +1 -1
- package/dist/esm/{sub-state-notify-slimmer-85c658b7.js → sub-state-notify-slimmer-8b3b15ee.js} +2 -2
- package/dist/esm/{sub-state-observer-slimmer-e58a2485.js → sub-state-observer-slimmer-2b98e2c9.js} +3 -3
- package/dist/esm/{token-extension-3c198013.js → token-extension-f5bf06a5.js} +6 -6
- package/dist/esm/{translation-3d35961b.js → translation-f10b1e19.js} +1 -1
- package/dist/esm/{translation-slimmer-d5b0d292.js → translation-slimmer-984c9ce6.js} +1 -1
- package/dist/esm/{ui-c20be16d.js → ui-bb99c0c2.js} +16 -3
- package/dist/esm/vega-accordion.entry.js +13 -13
- package/dist/esm/vega-app-footer.entry.js +3 -3
- package/dist/esm/vega-app-header-button.entry.js +14 -14
- package/dist/esm/vega-backdrop.entry.js +1 -1
- package/dist/esm/vega-banner.entry.js +4 -4
- package/dist/esm/vega-box.entry.js +13 -13
- package/dist/esm/vega-brand-logo.entry.js +3 -3
- package/dist/esm/vega-breadcrumb.entry.js +5 -5
- package/dist/esm/vega-button-circle.entry.js +19 -16
- package/dist/esm/vega-button-group_2.entry.js +8 -8
- package/dist/esm/vega-button-link.entry.js +5 -5
- package/dist/esm/vega-button.entry.js +19 -14
- package/dist/esm/vega-calendar_4.entry.js +507 -213
- package/dist/esm/vega-card.entry.js +12 -12
- package/dist/esm/vega-carousel.entry.js +12 -12
- package/dist/esm/vega-checkbox_2.entry.js +11 -11
- package/dist/esm/vega-chip.entry.js +14 -14
- package/dist/esm/vega-code-block.entry.js +15 -15
- package/dist/esm/vega-color-picker.entry.js +9 -9
- package/dist/esm/vega-combo-box.entry.js +12 -12
- package/dist/esm/vega-date-picker_2.entry.js +62 -25
- package/dist/esm/vega-dialog_2.entry.js +15 -15
- package/dist/esm/vega-divider.entry.js +12 -12
- package/dist/esm/vega-dropdown_5.entry.js +23 -22
- 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 +4 -4
- package/dist/esm/vega-file-uploader.entry.js +10 -10
- package/dist/esm/vega-flag-icon.entry.js +12 -12
- package/dist/esm/vega-flex.entry.js +13 -13
- package/dist/esm/vega-font.entry.js +12 -12
- package/dist/esm/vega-form.entry.js +593 -354
- package/dist/esm/vega-grid.entry.js +12 -12
- package/dist/esm/vega-icon.entry.js +12 -12
- package/dist/esm/vega-image-uploader.entry.js +17 -17
- package/dist/esm/vega-input-credit-card.entry.js +10 -10
- package/dist/esm/vega-input-numeric.entry.js +13 -13
- package/dist/esm/vega-input-phone-number.entry.js +14 -14
- package/dist/esm/vega-input-range.entry.js +11 -11
- package/dist/esm/vega-input-select.entry.js +16 -16
- package/dist/esm/vega-input.entry.js +11 -11
- package/dist/esm/{vega-internal-event-id-bee7946b.js → vega-internal-event-id-5c3e5f7f.js} +4 -1
- package/dist/esm/vega-item-toggle.entry.js +4 -4
- package/dist/esm/vega-left-nav_5.entry.js +44 -20
- package/dist/esm/vega-loader-wrapper_2.entry.js +11 -11
- package/dist/esm/vega-page-notification_2.entry.js +2 -2
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +5 -5
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +6 -6
- package/dist/esm/vega-pagination.entry.js +14 -14
- package/dist/esm/vega-popover_2.entry.js +16 -16
- package/dist/esm/vega-progress-tracker.entry.js +4 -4
- package/dist/esm/vega-radio_2.entry.js +13 -13
- package/dist/esm/vega-rich-text-content.entry.js +10 -10
- package/dist/esm/vega-rich-text-editor_4.entry.js +23 -23
- package/dist/esm/vega-segment-control.entry.js +4 -4
- package/dist/esm/vega-selection-chip_2.entry.js +16 -16
- package/dist/esm/vega-selection-tile_2.entry.js +12 -12
- package/dist/esm/vega-sidenav_3.entry.js +14 -14
- package/dist/esm/vega-signature-capture.entry.js +16 -16
- package/dist/esm/vega-stepper.entry.js +10 -10
- package/dist/esm/vega-tab-group_2.entry.js +6 -6
- package/dist/esm/vega-table_8.entry.js +16 -16
- package/dist/esm/vega-text.entry.js +1 -1
- package/dist/esm/vega-textarea.entry.js +10 -10
- package/dist/esm/vega-time-picker_2.entry.js +19 -19
- package/dist/esm/vega-toggle-switch.entry.js +9 -9
- package/dist/esm/vega-tooltip_2.entry.js +14 -14
- package/dist/esm/vega.js +14 -14
- package/dist/sri/vega-sri-loader.js +147 -0
- package/dist/sri/vega-sri-manifest.json +698 -0
- package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-current-period-controller.d.ts +1 -0
- package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-controller.d.ts +6 -0
- package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-preivew-popover-controller.d.ts +5 -0
- package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-post-operation-date-controller.d.ts +6 -0
- package/dist/types/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-repeat-pattern-factory.d.ts +3 -1
- package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-marker-renderer.d.ts +1 -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/slimmers/month-view/renderers/vega-calendar-month-view-renderer.d.ts +1 -0
- package/dist/types/components/vega-calendar/types.d.ts +5 -0
- package/dist/types/components/vega-calendar/vega-calendar.d.ts +17 -0
- package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +13 -0
- package/dist/types/components/vega-date-picker/vega-date-picker.d.ts +1 -0
- package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +1 -0
- package/dist/types/components/vega-form/slimmers/controllers/vega-form-field-controller.d.ts +158 -0
- package/dist/types/components/vega-form/slimmers/controllers/vega-form-reset-controller.d.ts +43 -0
- package/dist/types/components/vega-form/slimmers/controllers/vega-form-submit-controller.d.ts +55 -0
- package/dist/types/components/vega-form/types.d.ts +13 -0
- package/dist/types/components/vega-form/vega-form.d.ts +6 -110
- package/dist/types/components/vega-nav/slimmers/vega-nav-observer-slimmer.d.ts +3 -0
- package/dist/types/components/vega-nav/vega-left-nav-link/slimmers/controllers/vega-left-nav-link-controller.d.ts +8 -0
- package/dist/types/components.d.ts +12 -1
- package/dist/types/helpers/calendar/calendar-date.d.ts +5 -3
- package/dist/types/helpers/calendar/calendar-event.d.ts +50 -1
- package/dist/types/helpers/calendar/calendar-period/calendar-period.abstract.d.ts +8 -1
- package/dist/types/helpers/calendar/calendar-period/day-period.d.ts +1 -1
- package/dist/types/helpers/calendar/calendar-period/month-period.d.ts +4 -3
- package/dist/types/helpers/calendar/calendar-period/week-period.d.ts +1 -1
- package/dist/types/helpers/calendar/utils.d.ts +22 -0
- package/dist/types/helpers/change-manager/subject/static-subject/static-subject-title.d.ts +0 -2
- package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +3 -0
- package/dist/types/types/components.type.d.ts +0 -1
- package/dist/types/utils/ui.d.ts +5 -1
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/{p-4e503e23.entry.js → p-050bb2ad.entry.js} +1 -1
- package/dist/vega/{p-3cdbee7e.js → p-053eb64a.js} +1 -1
- package/dist/vega/{p-56b8ffd5.entry.js → p-0685cba6.entry.js} +1 -1
- package/dist/vega/{p-df31307b.entry.js → p-12d4488b.entry.js} +1 -1
- package/dist/vega/{p-119430db.entry.js → p-13c6a04c.entry.js} +1 -1
- package/dist/vega/{p-6c85c1f3.entry.js → p-185dfdd4.entry.js} +1 -1
- package/dist/vega/{p-a1cf29a9.js → p-199dc74b.js} +1 -1
- package/dist/vega/p-1bd5d806.entry.js +1 -0
- package/dist/vega/p-1eb5b772.entry.js +1 -0
- package/dist/vega/{p-21a480b0.entry.js → p-1f061725.entry.js} +1 -1
- package/dist/vega/{p-f81f2071.entry.js → p-1f43f551.entry.js} +1 -1
- package/dist/vega/{p-1da54ff3.js → p-2033f86e.js} +1 -1
- package/dist/vega/{p-37fd7a80.js → p-228de113.js} +1 -1
- package/dist/vega/{p-f1436035.js → p-24cb0a7e.js} +1 -1
- package/dist/vega/{p-55c26035.entry.js → p-299e14b4.entry.js} +1 -1
- package/dist/vega/{p-b9e8c6bf.entry.js → p-2d91799a.entry.js} +1 -1
- package/dist/vega/{p-ffc2ef90.entry.js → p-2f4f3744.entry.js} +1 -1
- package/dist/vega/{p-7c75ce6c.entry.js → p-303efbfe.entry.js} +1 -1
- package/dist/vega/p-308aa2e3.js +1 -0
- package/dist/vega/{p-e4b0606a.entry.js → p-33837794.entry.js} +1 -1
- package/dist/vega/{p-d20ab09f.entry.js → p-33c6fb3f.entry.js} +1 -1
- package/dist/vega/{p-459efe39.entry.js → p-3494a5f1.entry.js} +1 -1
- package/dist/vega/{p-06b624e6.js → p-378e5881.js} +1 -1
- package/dist/vega/{p-d3bf55e9.js → p-39482a1a.js} +1 -1
- package/dist/vega/{p-6163818f.js → p-39b4c838.js} +1 -1
- package/dist/vega/{p-7aae9252.entry.js → p-3b953a24.entry.js} +1 -1
- package/dist/vega/{p-2ee4def0.js → p-3c21b875.js} +1 -1
- package/dist/vega/p-43257678.js +1 -0
- package/dist/vega/{p-e27802fb.js → p-45ead9fe.js} +1 -1
- package/dist/vega/{p-bb58a7cf.entry.js → p-4897bedd.entry.js} +1 -1
- package/dist/vega/{p-8938b5c4.js → p-4c192985.js} +1 -1
- package/dist/vega/{p-d4564bfd.js → p-521d1d07.js} +1 -1
- package/dist/vega/{p-52b0abb5.entry.js → p-59d70a67.entry.js} +1 -1
- package/dist/vega/{p-92ec4fac.entry.js → p-5cdcd08f.entry.js} +1 -1
- package/dist/vega/{p-bf8d2978.entry.js → p-5d36cc3f.entry.js} +1 -1
- package/dist/vega/{p-61966868.entry.js → p-5e1c913d.entry.js} +1 -1
- package/dist/vega/{p-0b92b15b.entry.js → p-5e2ef0b8.entry.js} +1 -1
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/{p-f4877bee.entry.js → p-5f854901.entry.js} +1 -1
- package/dist/vega/p-5fec05a2.js +1 -0
- package/dist/vega/p-63596567.entry.js +1 -0
- package/dist/vega/{p-b3cd1992.entry.js → p-63a5bbf4.entry.js} +1 -1
- package/dist/vega/{p-3af81271.js → p-64c3d021.js} +1 -1
- package/dist/vega/p-651fe4fc.js +1 -0
- package/dist/vega/{p-db29b9f9.entry.js → p-671afda4.entry.js} +1 -1
- package/dist/vega/{p-32655cfc.entry.js → p-676bee73.entry.js} +1 -1
- package/dist/vega/{p-1d3a7be6.entry.js → p-6a4db686.entry.js} +1 -1
- package/dist/vega/{p-3176804b.entry.js → p-6ce1e9d4.entry.js} +1 -1
- package/dist/vega/{p-ae963cb3.entry.js → p-6d371296.entry.js} +1 -1
- package/dist/vega/{p-9819dda9.entry.js → p-6f96dd01.entry.js} +1 -1
- package/dist/vega/{p-684391a4.entry.js → p-719354e7.entry.js} +1 -1
- package/dist/vega/{p-e41931d4.entry.js → p-74e684fc.entry.js} +1 -1
- package/dist/vega/{p-eb5f99db.entry.js → p-78d607ca.entry.js} +1 -1
- package/dist/vega/{p-3709b0e0.js → p-7c594a9f.js} +1 -1
- package/dist/vega/p-7cd2b93b.js +1 -0
- package/dist/vega/{p-4b57bb12.entry.js → p-833d81d0.entry.js} +1 -1
- package/dist/vega/{p-1be68fba.js → p-840c09c7.js} +1 -1
- package/dist/vega/p-852fa2d2.entry.js +1 -0
- package/dist/vega/{p-fd2d02ea.entry.js → p-85ad1c21.entry.js} +1 -1
- package/dist/vega/{p-956a5899.entry.js → p-8a5c123f.entry.js} +1 -1
- package/dist/vega/{p-2044aa2c.js → p-901ff5d3.js} +1 -1
- package/dist/vega/{p-4faa7bab.entry.js → p-9439077d.entry.js} +1 -1
- package/dist/vega/{p-3354f5a7.js → p-99b1492c.js} +1 -1
- package/dist/vega/{p-4082fa22.entry.js → p-9d492a46.entry.js} +1 -1
- package/dist/vega/p-9e6db93d.entry.js +1 -0
- package/dist/vega/{p-1110b422.entry.js → p-a082d41b.entry.js} +1 -1
- package/dist/vega/{p-27dfa896.js → p-a4912b85.js} +1 -1
- package/dist/vega/p-a528714c.js +1 -0
- package/dist/vega/p-a5713178.js +1 -0
- package/dist/vega/{p-3a9aa6eb.entry.js → p-a6010b93.entry.js} +1 -1
- package/dist/vega/{p-3eaa6cce.entry.js → p-a61e2108.entry.js} +1 -1
- package/dist/vega/{p-e4acac0a.entry.js → p-a69c9e42.entry.js} +1 -1
- package/dist/vega/{p-a9e3058e.entry.js → p-ab3c4b43.entry.js} +1 -1
- package/dist/vega/{p-3a0b9e66.entry.js → p-ae598946.entry.js} +1 -1
- package/dist/vega/{p-743c5baf.js → p-b4c25109.js} +1 -1
- package/dist/vega/{p-2608b9fe.js → p-b510e4d7.js} +1 -1
- package/dist/vega/{p-4669ce11.entry.js → p-b68a13df.entry.js} +1 -1
- package/dist/vega/{p-159fda34.entry.js → p-ba24f7b9.entry.js} +1 -1
- package/dist/vega/p-bc9484a6.js +1 -0
- package/dist/vega/{p-3a455ac3.entry.js → p-c12000ee.entry.js} +1 -1
- package/dist/vega/{p-179693f1.entry.js → p-c1fa6088.entry.js} +2 -2
- package/dist/vega/{p-697acd40.js → p-c241f615.js} +1 -1
- package/dist/vega/{p-5443d614.entry.js → p-c682d53c.entry.js} +1 -1
- package/dist/vega/{p-0f2c83a1.entry.js → p-c8a3fb7f.entry.js} +1 -1
- package/dist/vega/{p-1655b920.entry.js → p-c96d28dc.entry.js} +1 -1
- package/dist/vega/p-cef9f638.js +1 -0
- package/dist/vega/{p-32058dbd.entry.js → p-cf211582.entry.js} +1 -1
- package/dist/vega/p-d3137a6e.entry.js +1 -0
- package/dist/vega/{p-641fbb48.entry.js → p-d418ecc1.entry.js} +1 -1
- package/dist/vega/{p-06e6be0e.js → p-d5d6dae6.js} +1 -1
- package/dist/vega/p-d5ff8b7f.js +1 -0
- package/dist/vega/p-d9671d27.js +1 -0
- package/dist/vega/{p-64e949fa.entry.js → p-dabba918.entry.js} +1 -1
- package/dist/vega/{p-c7f68d74.js → p-dc92fec6.js} +1 -1
- package/dist/vega/p-e853105a.entry.js +1 -0
- package/dist/vega/p-ebfc4323.entry.js +1 -0
- package/dist/vega/{p-04158119.entry.js → p-f83739d0.entry.js} +1 -1
- package/dist/vega/{p-15766433.entry.js → p-fbc85265.entry.js} +1 -1
- package/dist/vega/{p-4ae3eebf.entry.js → p-fbd38139.entry.js} +1 -1
- package/dist/vega/{p-a30ebdf5.js → p-fddca002.js} +1 -1
- package/dist/vega/{p-57c42c30.entry.js → p-fee972e6.entry.js} +1 -1
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +3 -2
- package/dist/vega/p-1aba48bc.js +0 -1
- package/dist/vega/p-1cb87bad.entry.js +0 -1
- package/dist/vega/p-3355ec0f.js +0 -1
- package/dist/vega/p-3674db0f.js +0 -1
- package/dist/vega/p-36f331bf.entry.js +0 -1
- package/dist/vega/p-465a6660.entry.js +0 -1
- package/dist/vega/p-575235c8.js +0 -1
- package/dist/vega/p-5773a9a3.js +0 -1
- package/dist/vega/p-6be16084.js +0 -1
- package/dist/vega/p-6ed663d5.entry.js +0 -1
- package/dist/vega/p-84eabbec.entry.js +0 -1
- package/dist/vega/p-904d1b43.js +0 -1
- package/dist/vega/p-96bda7ca.js +0 -1
- package/dist/vega/p-a3d77013.js +0 -1
- package/dist/vega/p-be539a54.js +0 -1
- package/dist/vega/p-c8789df1.entry.js +0 -1
- package/dist/vega/p-e6158a33.entry.js +0 -1
- package/dist/vega/p-ed0f000b.entry.js +0 -1
- package/dist/vega/p-f37558c1.js +0 -1
|
@@ -1,26 +1,32 @@
|
|
|
1
1
|
import { h, r as registerInstance, c as createEvent, H as Host, g as getElement } from './index-090d31ca.js';
|
|
2
|
-
import { F as FormFieldControllerSlimmer } from './form-field-controller-slimmer-c29b345f.js';
|
|
3
2
|
import { C as ChangeManager } from './change-manager-6a7eb88c.js';
|
|
4
|
-
import {
|
|
5
|
-
import { f as FIELD_ERROR_MESSAGE_CHANGE, g as FORM_ELEMENT_VALIDATE, b as FORM_ELEMENT_VALUE_CHANGE, d as FORM_FIELD_ELEMENT_DISCONNECTED, c as FORM_FIELD_PENDING_VALID_CHANGE, e as FORM_RESET_OPERATION_TRIGGERED, F as FORM_SUBMIT, a as FORM_RESET } from './static-subject-title-ca83d6b6.js';
|
|
6
|
-
import { d as isObjectArrayLike } from './array-7888f339.js';
|
|
3
|
+
import { d as FIELD_ERROR_MESSAGE_CHANGE, e as FORM_ELEMENT_VALIDATE, F as FORM_ELEMENT_VALUE_CHANGE, b as FORM_FIELD_ELEMENT_DISCONNECTED, a as FORM_FIELD_PENDING_VALID_CHANGE, c as FORM_RESET_OPERATION_TRIGGERED } from './static-subject-title-52f93124.js';
|
|
7
4
|
import { s as sanitizeVegaComponent } from './component-7d906393.js';
|
|
8
|
-
import { f as findParent, d as isElementVisible, b as isParent } from './ui-c20be16d.js';
|
|
9
|
-
import { I as ImmutableMap } from './immutable-map-612922a2.js';
|
|
10
5
|
import { c as MapToComponentField, M as MapToComponentMethod, V as VegaSlimmer, I as InjectVegaSlimmer } from './global-slimmer-registry-17c4efd4.js';
|
|
6
|
+
import { m as methodPlaceholder } from './placeholder-bf562081.js';
|
|
11
7
|
import { V as VegaComponentUsageRuntimeMetricsSlimmer, I as InjectVegaGlobalSlimmer } from './component-usage-runtime-metrics-a84cc93e.js';
|
|
12
|
-
import { c as createEventEmitSlimmer } from './event-emit-slimmer-
|
|
13
|
-
import { C as ChildNodesEventPreventSlimmer } from './child-nodes-event-prevent-slimmer-
|
|
14
|
-
import { y as VegaFormSubmit, z as VegaFormReset, A as VegaValidate
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import { S as SubStateObserverSlimmer } from './sub-state-observer-slimmer-e58a2485.js';
|
|
8
|
+
import { c as createEventEmitSlimmer } from './event-emit-slimmer-000ca6a7.js';
|
|
9
|
+
import { C as ChildNodesEventPreventSlimmer } from './child-nodes-event-prevent-slimmer-f32efdee.js';
|
|
10
|
+
import { d as domNodeSubjectFactory, y as VegaFormSubmit, z as VegaFormReset, A as VegaValidate } from './dom-node-subject-observer-factory-ed4b89f4.js';
|
|
11
|
+
import { c as createSubStateNotifySlimmer } from './sub-state-notify-slimmer-8b3b15ee.js';
|
|
12
|
+
import { S as SubStateObserverSlimmer } from './sub-state-observer-slimmer-2b98e2c9.js';
|
|
13
|
+
import { F as FormFieldControllerSlimmer } from './form-field-controller-slimmer-24dbc255.js';
|
|
19
14
|
import { t as tryGetDocument } from './try-get-document-bef0f526.js';
|
|
15
|
+
import { d as VegaInternalFormSubmit, g as VegaInternalValid, e as VegaInternalFormReset } from './vega-internal-event-id-5c3e5f7f.js';
|
|
16
|
+
import { O as Observer } from './observer-3959f9dd.js';
|
|
17
|
+
import { f as findParent, b as isParent, d as isElementVisible } from './ui-bb99c0c2.js';
|
|
18
|
+
import { I as ImmutableMap } from './immutable-map-612922a2.js';
|
|
19
|
+
import { C as ChildNodesNotifyObserverSlimmer } from './child-nodes-notify-observer-slimmer-b676cd2b.js';
|
|
20
|
+
import { d as isObjectArrayLike } from './array-7888f339.js';
|
|
21
|
+
import './dynamic-slimmer-90b8af32.js';
|
|
22
|
+
import './internal-vega-event-manager-13e3ed3d.js';
|
|
23
|
+
import './vega-env-manager-8f8dc473.js';
|
|
24
|
+
import './feature-flag-controller-51659753.js';
|
|
25
|
+
import './index-e9da316f.js';
|
|
26
|
+
import './_commonjsHelpers-9943807e.js';
|
|
20
27
|
import './string-a953eafc.js';
|
|
21
28
|
import './create-public-api-runtime-metrics-slimmer-bedf3a1e.js';
|
|
22
|
-
import './
|
|
23
|
-
import './translation-3d35961b.js';
|
|
29
|
+
import './translation-f10b1e19.js';
|
|
24
30
|
import './page-resize-observer-slimmer-0bf7fbf3.js';
|
|
25
31
|
import './ui-8424715a.js';
|
|
26
32
|
import './breakpoints-d9faf11c.js';
|
|
@@ -28,13 +34,8 @@ import './internal-form-field-validation-rule.abstract-f5b6bdbf.js';
|
|
|
28
34
|
import './mutation-observer-slimmer-58ebc13c.js';
|
|
29
35
|
import './mutation-observer-filters-1a054fb0.js';
|
|
30
36
|
import './number-4398f2e1.js';
|
|
31
|
-
import './internal-vega-event-manager-cb06e987.js';
|
|
32
|
-
import './vega-env-manager-8f8dc473.js';
|
|
33
|
-
import './feature-flag-controller-51659753.js';
|
|
34
|
-
import './index-e9da316f.js';
|
|
35
|
-
import './_commonjsHelpers-9943807e.js';
|
|
36
37
|
|
|
37
|
-
var __decorate$
|
|
38
|
+
var __decorate$6 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
38
39
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
39
40
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
40
41
|
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;
|
|
@@ -57,14 +58,14 @@ class VegaFormNestStateController extends SubStateObserverSlimmer {
|
|
|
57
58
|
});
|
|
58
59
|
}
|
|
59
60
|
}
|
|
60
|
-
__decorate$
|
|
61
|
+
__decorate$6([
|
|
61
62
|
MapToComponentField()
|
|
62
63
|
], VegaFormNestStateController.prototype, "host", void 0);
|
|
63
|
-
__decorate$
|
|
64
|
+
__decorate$6([
|
|
64
65
|
MapToComponentField({ writable: true })
|
|
65
66
|
], VegaFormNestStateController.prototype, "disableBlurValidation", void 0);
|
|
66
67
|
|
|
67
|
-
var __decorate$
|
|
68
|
+
var __decorate$5 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
68
69
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
69
70
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
70
71
|
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;
|
|
@@ -134,14 +135,14 @@ class VegaFormFieldValidationStateController extends VegaSlimmer {
|
|
|
134
135
|
ChangeManager.notify(FORM_ELEMENT_VALIDATE, { host: target, detail: isValid });
|
|
135
136
|
}
|
|
136
137
|
}
|
|
137
|
-
__decorate$
|
|
138
|
+
__decorate$5([
|
|
138
139
|
MapToComponentField()
|
|
139
140
|
], VegaFormFieldValidationStateController.prototype, "host", void 0);
|
|
140
|
-
__decorate$
|
|
141
|
+
__decorate$5([
|
|
141
142
|
MapToComponentMethod('setValidationStates')
|
|
142
143
|
], VegaFormFieldValidationStateController.prototype, "setValidationStates", null);
|
|
143
144
|
|
|
144
|
-
var __decorate$
|
|
145
|
+
var __decorate$4 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
145
146
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
146
147
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
147
148
|
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;
|
|
@@ -163,127 +164,156 @@ class NativeFormRenderer extends VegaSlimmer {
|
|
|
163
164
|
h("slot", null)));
|
|
164
165
|
}
|
|
165
166
|
}
|
|
166
|
-
__decorate$
|
|
167
|
+
__decorate$4([
|
|
167
168
|
MapToComponentField()
|
|
168
169
|
], NativeFormRenderer.prototype, "method", void 0);
|
|
169
|
-
__decorate$
|
|
170
|
+
__decorate$4([
|
|
170
171
|
MapToComponentField()
|
|
171
172
|
], NativeFormRenderer.prototype, "action", void 0);
|
|
172
173
|
|
|
173
|
-
|
|
174
|
+
var __decorate$3 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
175
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
176
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
177
|
+
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;
|
|
178
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
179
|
+
};
|
|
180
|
+
/**
|
|
181
|
+
* Controller responsible for handling form submission in the VegaForm component.
|
|
182
|
+
*/
|
|
183
|
+
class VegaFormSubmitController extends VegaSlimmer {
|
|
184
|
+
/**
|
|
185
|
+
* Component lifecycle - [connectedCallback]
|
|
186
|
+
*/
|
|
187
|
+
connectedCallback() {
|
|
188
|
+
this.registerFormSubmitChangeManager();
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Component lifecycle - [disconnectedCallback]
|
|
192
|
+
*/
|
|
193
|
+
disconnectedCallback() {
|
|
194
|
+
this.unregisterFormSubmitChangeManager();
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Submits the form using native HTML form submission with all current field values.
|
|
198
|
+
*
|
|
199
|
+
* This method collects all form field values, creates hidden input elements for each field,
|
|
200
|
+
* appends them to a container inside the native form, and then triggers the native
|
|
201
|
+
* `requestSubmit()` method to submit the form.
|
|
202
|
+
*
|
|
203
|
+
* The method ensures that the form data is available in the native form for submission,
|
|
204
|
+
* which is useful when `useNativeForm` is enabled.
|
|
205
|
+
*
|
|
206
|
+
* @returns {Promise<void>} Resolves when the form submission process is complete.
|
|
207
|
+
*/
|
|
208
|
+
async submitWithFormData() {
|
|
209
|
+
if (!this.useNativeForm)
|
|
210
|
+
return;
|
|
211
|
+
const data = await this.host.getValue();
|
|
212
|
+
for (const dataKey in data) {
|
|
213
|
+
const hiddenInput = tryGetDocument().createElement('input');
|
|
214
|
+
hiddenInput.type = 'hidden';
|
|
215
|
+
hiddenInput.name = dataKey;
|
|
216
|
+
hiddenInput.value = data[dataKey];
|
|
217
|
+
this.nativeFormRenderer.getNativeFormRef().append(hiddenInput);
|
|
218
|
+
}
|
|
219
|
+
this.nativeFormRenderer.getNativeFormRef().requestSubmit();
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Registers the form submit event observer with the ChangeManager.
|
|
223
|
+
*/
|
|
224
|
+
registerFormSubmitChangeManager() {
|
|
225
|
+
var _a;
|
|
226
|
+
this.formSubmitEventObserver = new Observer(this.canAcceptFormSubmitEvent.bind(this), this.handleSubmitEvents.bind(this));
|
|
227
|
+
const outerForm = (_a = findParent(this.host, 'vega-form', { outerMost: true })) !== null && _a !== void 0 ? _a : this.host;
|
|
228
|
+
ChangeManager.register(domNodeSubjectFactory.getSubject(outerForm, VegaInternalFormSubmit), this.formSubmitEventObserver);
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Unregister the form submit event observer from the ChangeManager.
|
|
232
|
+
*/
|
|
233
|
+
unregisterFormSubmitChangeManager() {
|
|
234
|
+
var _a;
|
|
235
|
+
const outerForm = (_a = findParent(this.host, 'vega-form', { outerMost: true })) !== null && _a !== void 0 ? _a : this.host;
|
|
236
|
+
ChangeManager.unregister(domNodeSubjectFactory.getSubject(outerForm, VegaInternalFormSubmit), this.formSubmitEventObserver);
|
|
237
|
+
}
|
|
238
|
+
/*
|
|
239
|
+
* The below method is e2e-test covered in
|
|
240
|
+
* @see{module:vega-form-field-enter-to-submit-e2e}
|
|
241
|
+
*/
|
|
242
|
+
/* istanbul ignore next */
|
|
243
|
+
/**
|
|
244
|
+
* Can accept handler for FORM_SUBMIT.
|
|
245
|
+
*
|
|
246
|
+
* @param {FormEventsPayload} payload - The payload containing the host element that triggered the submit event.
|
|
247
|
+
* @returns {boolean} True if the host element is part of the current form, false otherwise.
|
|
248
|
+
*/
|
|
249
|
+
canAcceptFormSubmitEvent(payload) {
|
|
250
|
+
return this.vegaFormFieldController.isElementInCurrentForm(payload.host);
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Handles the form submission process.
|
|
254
|
+
*
|
|
255
|
+
* @returns {Promise<void>} Resolves when the submission process is complete.
|
|
256
|
+
*/
|
|
257
|
+
async handleSubmitEvents() {
|
|
258
|
+
const valid = await this.host.valid();
|
|
259
|
+
if (valid.isValid) {
|
|
260
|
+
const formValue = await this.host.getValue();
|
|
261
|
+
const submitEvent = this.submitEventEmitter.emit(formValue);
|
|
262
|
+
if (!submitEvent.defaultPrevented) {
|
|
263
|
+
await this.submitWithFormData();
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
__decorate$3([
|
|
269
|
+
MapToComponentField()
|
|
270
|
+
], VegaFormSubmitController.prototype, "host", void 0);
|
|
271
|
+
__decorate$3([
|
|
272
|
+
MapToComponentField()
|
|
273
|
+
], VegaFormSubmitController.prototype, "useNativeForm", void 0);
|
|
274
|
+
__decorate$3([
|
|
275
|
+
MapToComponentField()
|
|
276
|
+
], VegaFormSubmitController.prototype, "nativeFormRenderer", void 0);
|
|
277
|
+
__decorate$3([
|
|
278
|
+
MapToComponentField()
|
|
279
|
+
], VegaFormSubmitController.prototype, "submitEventEmitter", void 0);
|
|
280
|
+
__decorate$3([
|
|
281
|
+
MapToComponentField()
|
|
282
|
+
], VegaFormSubmitController.prototype, "vegaFormFieldController", void 0);
|
|
283
|
+
__decorate$3([
|
|
284
|
+
MapToComponentMethod('connectedCallback')
|
|
285
|
+
], VegaFormSubmitController.prototype, "connectedCallback", null);
|
|
286
|
+
__decorate$3([
|
|
287
|
+
MapToComponentMethod('disconnectedCallback')
|
|
288
|
+
], VegaFormSubmitController.prototype, "disconnectedCallback", null);
|
|
174
289
|
|
|
175
|
-
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
290
|
+
var __decorate$2 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
176
291
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
177
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
178
|
-
|
|
179
|
-
else
|
|
180
|
-
for (var i = decorators.length - 1; i >= 0; i--)
|
|
181
|
-
if (d = decorators[i])
|
|
182
|
-
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
292
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
293
|
+
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;
|
|
183
294
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
184
295
|
};
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
this.formSubmit = createEvent(this, "formSubmit", 7);
|
|
192
|
-
this.vegaFormReset = createEvent(this, "vegaFormReset", 7);
|
|
193
|
-
this.formReset = createEvent(this, "formReset", 7);
|
|
194
|
-
this.globalSlimmers = {};
|
|
195
|
-
this.submitEventEmitter = createEventEmitSlimmer(VegaForm, VegaFormSubmit);
|
|
196
|
-
this.resetEventEmitter = createEventEmitSlimmer(VegaForm, VegaFormReset);
|
|
197
|
-
this.validateEventEmitter = createEventEmitSlimmer(VegaForm, VegaValidate);
|
|
198
|
-
this.disableBlurValidationNotifySlimmer = createSubStateNotifySlimmer(VegaForm, 'disableBlurValidation', 'watchDisableBlurValidation');
|
|
199
|
-
this.stateController = new VegaFormNestStateController();
|
|
200
|
-
this.childEventPrevent = new ChildNodesEventPreventSlimmer([VegaFormSubmit, VegaFormReset], () => this.host.querySelector('vega-form'), {
|
|
201
|
-
customPreventHandle: (e) => {
|
|
202
|
-
e.stopPropagation();
|
|
203
|
-
},
|
|
204
|
-
});
|
|
205
|
-
this.childFormValidateEventPrevent = new ChildNodesEventPreventSlimmer([VegaValidate], () => this.host, {
|
|
206
|
-
customPreventHandle: (e) => {
|
|
207
|
-
e.stopPropagation();
|
|
208
|
-
},
|
|
209
|
-
});
|
|
296
|
+
/**
|
|
297
|
+
* The form field controller for vega form to manage the form field states.
|
|
298
|
+
*/
|
|
299
|
+
class VegaFormFieldController extends VegaSlimmer {
|
|
300
|
+
constructor() {
|
|
301
|
+
super(...arguments);
|
|
210
302
|
this.childNotifyObserver = new ChildNodesNotifyObserverSlimmer(FORM_ELEMENT_VALIDATE, (input) => this.updateInternalValidStatus(input));
|
|
211
|
-
this.childNodeValueChangeObserver = new ChildNodesNotifyObserverSlimmer(FORM_ELEMENT_VALUE_CHANGE, () =>
|
|
212
|
-
|
|
213
|
-
this.vegaFormFieldValidationStateController = new VegaFormFieldValidationStateController();
|
|
214
|
-
this.nativeFormRenderer = new NativeFormRenderer();
|
|
215
|
-
this.invalidFieldPathMap = new ImmutableMap(new Map(), (newMap) => {
|
|
216
|
-
this.invalidFieldPathMap = newMap;
|
|
217
|
-
this.updateIsValidFlag();
|
|
303
|
+
this.childNodeValueChangeObserver = new ChildNodesNotifyObserverSlimmer(FORM_ELEMENT_VALUE_CHANGE, () => {
|
|
304
|
+
this.isTouched = true;
|
|
218
305
|
});
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
this.pendingValidFieldPathMap = newMap;
|
|
306
|
+
this._invalidFieldPathMap = new ImmutableMap(new Map(), (newMap) => {
|
|
307
|
+
this._invalidFieldPathMap = newMap;
|
|
222
308
|
this.updateIsValidFlag();
|
|
223
309
|
});
|
|
224
|
-
this.controlledFieldPathSet = new Set();
|
|
225
|
-
/**
|
|
226
|
-
* Indicates whether the current form-controlled elements are valid.
|
|
227
|
-
*
|
|
228
|
-
* Form-controlled elements are considered for validation if they
|
|
229
|
-
* have the `data-vega-form` property.
|
|
230
|
-
*
|
|
231
|
-
* Disabled and invisible elements are excluded from validation.
|
|
232
|
-
*
|
|
233
|
-
* If the value is `undefined`, it means there are no
|
|
234
|
-
* form-controlled elements that can be validated.
|
|
235
|
-
*
|
|
236
|
-
* **Additional Notes:**
|
|
237
|
-
* 1. When depending on `isValid` for form validation, it is advised
|
|
238
|
-
* not to modify the following properties of the monitored DOM:
|
|
239
|
-
* - `disabled` property
|
|
240
|
-
* - Element visibility style
|
|
241
|
-
* 2. As this property relies heavily on the `VegaValidate` event emitted,
|
|
242
|
-
* it is highly recommended to enable auto-validation for all
|
|
243
|
-
* form-controlled elements to ensure that the value reflects
|
|
244
|
-
* the most up-to-date form validation status.
|
|
245
|
-
*
|
|
246
|
-
* @vegaVersion 1.3.0
|
|
247
|
-
*/
|
|
248
|
-
/* eslint-disable-next-line @stencil/strict-mutable */
|
|
249
|
-
this.isValid = null;
|
|
250
|
-
/**
|
|
251
|
-
* Indicates whether the value of any current
|
|
252
|
-
* form-controlled elements has been changed.
|
|
253
|
-
*
|
|
254
|
-
* 1. When the value of any form-controlled element is changed,
|
|
255
|
-
* this parameter is set to `true`.
|
|
256
|
-
* 2. When resetting the form, this parameter is set to `false`.
|
|
257
|
-
* 3. When invoking the `setValue` method, this parameter is set to `false`.
|
|
258
|
-
*
|
|
259
|
-
* @vegaVersion 1.3.0
|
|
260
|
-
*/
|
|
261
|
-
this.isTouched = false;
|
|
262
|
-
/**
|
|
263
|
-
* Specifies whether form validation should be disabled on blur events of form elements.
|
|
264
|
-
*
|
|
265
|
-
* - This helps prevent validation on blur when clicking Submit inside an input,
|
|
266
|
-
* avoiding error messages that shift the button and block the click.
|
|
267
|
-
* - For nested forms, the parent form will override this property
|
|
268
|
-
* to ensure consistent validation behavior.
|
|
269
|
-
*
|
|
270
|
-
* @vegaVersion 2.47.0
|
|
271
|
-
*/
|
|
272
|
-
/* eslint-disable-next-line @stencil/strict-mutable */
|
|
273
|
-
this.disableBlurValidation = false;
|
|
274
|
-
/**
|
|
275
|
-
* Determines whether the `vega-form` content is wrapped in a native HTML <form> element.
|
|
276
|
-
*
|
|
277
|
-
* @vegaVersion 2.64.0
|
|
278
|
-
*/
|
|
279
|
-
this.useNativeForm = false;
|
|
280
310
|
/**
|
|
281
|
-
*
|
|
282
|
-
* This property takes effect only when {@link useNativeForm} is set to `true`.
|
|
283
|
-
*
|
|
284
|
-
* @vegaVersion 2.64.0
|
|
311
|
+
* The form field element pending async valid map
|
|
285
312
|
*/
|
|
286
|
-
this.
|
|
313
|
+
this._pendingValidFieldPathMap = new ImmutableMap(new Map(), (newMap) => {
|
|
314
|
+
this._pendingValidFieldPathMap = newMap;
|
|
315
|
+
this.updateIsValidFlag();
|
|
316
|
+
});
|
|
287
317
|
/**
|
|
288
318
|
* If the element is valid, remove it from the set of
|
|
289
319
|
* invalid elements. If the element is invalid,
|
|
@@ -307,99 +337,39 @@ const VegaForm = class {
|
|
|
307
337
|
}
|
|
308
338
|
};
|
|
309
339
|
}
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
340
|
+
/**
|
|
341
|
+
* Component lifecycle - [connectedCallback]
|
|
342
|
+
*/
|
|
343
|
+
connectedCallback() {
|
|
344
|
+
this.initFormFieldDisconnectedObserver();
|
|
345
|
+
this.registerFormFieldPendingValid();
|
|
315
346
|
}
|
|
316
347
|
/**
|
|
317
|
-
* When the vegaForm is deleted, it is necessary to notify
|
|
318
|
-
* the parent's vegaForm to update its isValid status.
|
|
348
|
+
* When the vegaForm is deleted, it is necessary to notify the parent's vegaForm to update its isValid status.
|
|
319
349
|
*/
|
|
320
|
-
|
|
321
|
-
ChangeManager.notify(FORM_FIELD_ELEMENT_DISCONNECTED, {
|
|
322
|
-
host: this.host,
|
|
323
|
-
});
|
|
350
|
+
disconnectedCallback() {
|
|
351
|
+
ChangeManager.notify(FORM_FIELD_ELEMENT_DISCONNECTED, { host: this.host });
|
|
324
352
|
ChangeManager.unregister(FORM_FIELD_ELEMENT_DISCONNECTED, this.formFieldDisconnectedObserver);
|
|
325
353
|
ChangeManager.unregister(FORM_FIELD_PENDING_VALID_CHANGE, this.formFieldPendingValidObserver);
|
|
326
354
|
}
|
|
327
|
-
async componentDidLoad() {
|
|
328
|
-
await this.navigateVegaFormChildren(async (element, isForm) => {
|
|
329
|
-
if (!isForm) {
|
|
330
|
-
this.controlledFieldPathSet.add(this.getFormFieldName(element, true));
|
|
331
|
-
}
|
|
332
|
-
});
|
|
333
|
-
this.initFormFieldDisconnectedObserver();
|
|
334
|
-
this.registerFormSubmitChangeManager();
|
|
335
|
-
this.registerFormResetChangeManager();
|
|
336
|
-
this.registerFormFieldPendingValidChangeManager();
|
|
337
|
-
}
|
|
338
355
|
/**
|
|
339
|
-
*
|
|
340
|
-
* all the vega field elements nested within the `vega-form`.
|
|
341
|
-
*
|
|
342
|
-
* If an element is a `vega-form` itself, it will recursively
|
|
343
|
-
* invoke its `valid()` method.
|
|
344
|
-
*
|
|
345
|
-
* @param {boolean | 'rule'} showError determine whether the validation result should be reflected in UI
|
|
346
|
-
* @return {Promise<FormValidateResult> } validation result
|
|
347
|
-
* @vegaVersion 1.3.0
|
|
356
|
+
* @inheritDoc
|
|
348
357
|
*/
|
|
349
|
-
async
|
|
350
|
-
const result = {
|
|
358
|
+
async getValue(option) {
|
|
359
|
+
const result = {};
|
|
351
360
|
await this.navigateVegaFormChildren(async (element, isForm) => {
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
result.isValid = false;
|
|
356
|
-
result.invalidFields.push(...nestedFormValidationResult.invalidFields);
|
|
357
|
-
result.invalidFieldsErrorMessages = Object.assign(Object.assign({}, result.invalidFieldsErrorMessages), nestedFormValidationResult.invalidFieldsErrorMessages);
|
|
358
|
-
}
|
|
361
|
+
const formFieldName = this.getFormFieldName(element);
|
|
362
|
+
if (isForm) {
|
|
363
|
+
result[formFieldName] = await element.getValue(option);
|
|
359
364
|
}
|
|
360
365
|
else {
|
|
361
|
-
|
|
362
|
-
if (!isValid) {
|
|
363
|
-
result.isValid = false;
|
|
364
|
-
result.invalidFields.push(this.getFormFieldName(element));
|
|
365
|
-
if (!result.invalidFieldsErrorMessages) {
|
|
366
|
-
result.invalidFieldsErrorMessages = {};
|
|
367
|
-
}
|
|
368
|
-
result.invalidFieldsErrorMessages[this.getFormFieldName(element)] = message;
|
|
369
|
-
}
|
|
370
|
-
}
|
|
371
|
-
});
|
|
372
|
-
return result;
|
|
373
|
-
}
|
|
374
|
-
/**
|
|
375
|
-
* Invoke this method asynchronously to retrieve the values for
|
|
376
|
-
* all the available vega field elements nested within the `vega-form`.
|
|
377
|
-
*
|
|
378
|
-
* @param {FormControlOption} [option] form control option to skip disabled/invisible components
|
|
379
|
-
* @return {Promise<T>} object with key and field value as key-value pair
|
|
380
|
-
* @vegaVersion 1.3.0
|
|
381
|
-
*/
|
|
382
|
-
async getValue(option) {
|
|
383
|
-
const result = {};
|
|
384
|
-
await this.navigateVegaFormChildren(async (element, isForm) => {
|
|
385
|
-
const formFieldName = this.getFormFieldName(element);
|
|
386
|
-
if (isForm) {
|
|
387
|
-
result[formFieldName] = await element.getValue(option);
|
|
388
|
-
}
|
|
389
|
-
else {
|
|
390
|
-
result[formFieldName] = VegaForm.getFormFieldValue(element);
|
|
366
|
+
result[formFieldName] = this.getFormFieldValue(element);
|
|
391
367
|
}
|
|
392
368
|
}, option);
|
|
393
369
|
return (isObjectArrayLike(result) ? Object.values(result) : result);
|
|
394
370
|
}
|
|
395
371
|
/**
|
|
396
|
-
*
|
|
397
|
-
*
|
|
398
|
-
* This action will also set the `isTouched` property to `false`.
|
|
399
|
-
*
|
|
400
|
-
* @param value to prefill into the vega-form
|
|
401
|
-
* @param {FormControlOption} [option] form control option to skip disabled/invisible components
|
|
402
|
-
* @vegaVersion 1.3.0
|
|
372
|
+
* @inheritDoc
|
|
403
373
|
*/
|
|
404
374
|
async setValue(value, option) {
|
|
405
375
|
if (value) {
|
|
@@ -422,53 +392,74 @@ const VegaForm = class {
|
|
|
422
392
|
}
|
|
423
393
|
}
|
|
424
394
|
/**
|
|
425
|
-
*
|
|
426
|
-
* the default value provided, or an empty string if
|
|
427
|
-
* no default value is found.
|
|
428
|
-
*
|
|
429
|
-
* @param defaultValueMap map of the vega form field name to default value
|
|
430
|
-
* @param {FormControlOption} [option] form control option to skip disabled/invisible components
|
|
431
|
-
*
|
|
432
|
-
* @vegaVersion 1.3.0
|
|
395
|
+
* @inheritDoc
|
|
433
396
|
*/
|
|
434
|
-
async
|
|
397
|
+
async valid(showError = true) {
|
|
398
|
+
const result = { isValid: true, invalidFields: [] };
|
|
435
399
|
await this.navigateVegaFormChildren(async (element, isForm) => {
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
400
|
+
if (typeof element['valid'] === 'function' && isForm) {
|
|
401
|
+
const nestedFormValidationResult = await element.valid(showError);
|
|
402
|
+
if (!nestedFormValidationResult.isValid) {
|
|
403
|
+
result.isValid = false;
|
|
404
|
+
result.invalidFields.push(...nestedFormValidationResult.invalidFields);
|
|
405
|
+
result.invalidFieldsErrorMessages = Object.assign(Object.assign({}, result.invalidFieldsErrorMessages), nestedFormValidationResult.invalidFieldsErrorMessages);
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
else {
|
|
409
|
+
const { isValid, message } = await this.handleChildFormFieldElementValid(element, showError);
|
|
410
|
+
if (!isValid) {
|
|
411
|
+
result.isValid = false;
|
|
412
|
+
result.invalidFields.push(this.getFormFieldName(element));
|
|
413
|
+
if (!result.invalidFieldsErrorMessages) {
|
|
414
|
+
result.invalidFieldsErrorMessages = {};
|
|
415
|
+
}
|
|
416
|
+
result.invalidFieldsErrorMessages[this.getFormFieldName(element)] = message;
|
|
417
|
+
}
|
|
439
418
|
}
|
|
440
|
-
}, option);
|
|
441
|
-
ChangeManager.notify(FORM_RESET_OPERATION_TRIGGERED, {
|
|
442
|
-
host: this.host,
|
|
443
|
-
defaultValueMap,
|
|
444
|
-
option,
|
|
445
419
|
});
|
|
446
|
-
|
|
420
|
+
return result;
|
|
447
421
|
}
|
|
448
422
|
/**
|
|
449
|
-
*
|
|
423
|
+
* The getter for the {@link _invalidFieldPathMap}
|
|
450
424
|
*
|
|
451
|
-
* @
|
|
425
|
+
* @returns {ImmutableMap<HTMLElement, string>} The map of invalid field elements and their paths
|
|
426
|
+
*/
|
|
427
|
+
get invalidFieldPathMap() {
|
|
428
|
+
return this._invalidFieldPathMap;
|
|
429
|
+
}
|
|
430
|
+
/**
|
|
431
|
+
* The getter for the {@link _pendingValidFieldPathMap}
|
|
452
432
|
*
|
|
453
|
-
* @
|
|
433
|
+
* @returns {ImmutableMap<HTMLElement, string>} The map of pending valid field elements and their paths
|
|
454
434
|
*/
|
|
455
|
-
|
|
435
|
+
get pendingValidFieldPathMap() {
|
|
436
|
+
return this._pendingValidFieldPathMap;
|
|
456
437
|
}
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
438
|
+
/**
|
|
439
|
+
* Set the isTouched property of the form.
|
|
440
|
+
*
|
|
441
|
+
* @param {boolean} isTouched - The new value for isTouched.
|
|
442
|
+
*/
|
|
443
|
+
setIsTouched(isTouched) {
|
|
444
|
+
this.isTouched = isTouched;
|
|
462
445
|
}
|
|
463
|
-
|
|
464
|
-
|
|
446
|
+
/**
|
|
447
|
+
* It returns the value of data-vega-form that the given element is associated with.
|
|
448
|
+
*
|
|
449
|
+
* @param {HTMLElement} element - The element that is being validated.
|
|
450
|
+
* @returns {string} The name of the field.
|
|
451
|
+
*/
|
|
452
|
+
getFormFieldName(element) {
|
|
453
|
+
return element.dataset['vegaForm'];
|
|
465
454
|
}
|
|
466
455
|
/**
|
|
467
|
-
*
|
|
468
|
-
*
|
|
456
|
+
* Check if the given element is part of the current form.
|
|
457
|
+
*
|
|
458
|
+
* @param {HTMLElement} element - The element to check.
|
|
459
|
+
* @returns {boolean} True if the element is part of the current form, false otherwise.
|
|
469
460
|
*/
|
|
470
|
-
|
|
471
|
-
this.
|
|
461
|
+
isElementInCurrentForm(element) {
|
|
462
|
+
return this.invalidFieldPathMap.has(element) || isParent(element, this.host);
|
|
472
463
|
}
|
|
473
464
|
/**
|
|
474
465
|
* Navigate the immediate child node under current vega form element with the following strategy
|
|
@@ -476,10 +467,10 @@ const VegaForm = class {
|
|
|
476
467
|
* - if a non-matched node found, it will call itself recursively and pass the node as the second parameter
|
|
477
468
|
* Once the navigation is finished, it will wait for all the pending visitor/self-invocation promise finished before return
|
|
478
469
|
*
|
|
479
|
-
* @param visitor async callback method that will be invoked if a matched vega field element found
|
|
470
|
+
* @param {(element: HTMLElement, isForm: boolean) => Promise<void>} visitor async callback method that will be invoked if a matched vega field element found
|
|
480
471
|
* @param {FormControlOption} [option] form control option to skip disabled/invisible components
|
|
481
|
-
* @param [startElementNode] element
|
|
482
|
-
* @
|
|
472
|
+
* @param {HTMLElement} [startElementNode=this.host] the element to start the navigation, default to current vega form host
|
|
473
|
+
* @returns {Promise<void>} return void wrapped with promise to notify the navigation is done
|
|
483
474
|
*/
|
|
484
475
|
async navigateVegaFormChildren(visitor, option, startElementNode = this.host) {
|
|
485
476
|
const promiseQueue = [];
|
|
@@ -496,53 +487,43 @@ const VegaForm = class {
|
|
|
496
487
|
await Promise.all(promiseQueue);
|
|
497
488
|
}
|
|
498
489
|
/**
|
|
499
|
-
* Update the {@link isValid} property value based on the size of {@link
|
|
490
|
+
* Update the {@link isValid} property value based on the size of {@link invalidFieldPathMap}
|
|
500
491
|
* If the number of invalid elements is zero, then the form is valid.
|
|
501
492
|
*/
|
|
502
493
|
updateIsValidFlag() {
|
|
503
494
|
this.isValid = this.pendingValidFieldPathMap.size > 0 ? null : this.invalidFieldPathMap.size === 0;
|
|
504
495
|
}
|
|
505
496
|
/**
|
|
506
|
-
*
|
|
507
|
-
|
|
497
|
+
* Registers an observer with the ChangeManager that will be notified when a form field's pending validation state changes.
|
|
498
|
+
*/
|
|
499
|
+
registerFormFieldPendingValid() {
|
|
500
|
+
this.formFieldPendingValidObserver = new Observer(this.canAcceptFormFieldPendingValid.bind(this), this.handleFieldPendingValid.bind(this));
|
|
501
|
+
ChangeManager.register(FORM_FIELD_PENDING_VALID_CHANGE, this.formFieldPendingValidObserver);
|
|
502
|
+
}
|
|
503
|
+
/**
|
|
504
|
+
* Can accept handler for FORM_FIELD_PENDING_VALID_CHANGE.
|
|
508
505
|
*
|
|
509
|
-
* @param {
|
|
510
|
-
* @
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
*/
|
|
515
|
-
getFormFieldName(element, includePath) {
|
|
516
|
-
let fieldName = element.dataset['vegaForm'];
|
|
517
|
-
if (includePath) {
|
|
518
|
-
let currentVegaForm = findParent(element, 'vega-form');
|
|
519
|
-
/**
|
|
520
|
-
* The below method is e2e-test covered in
|
|
521
|
-
* @see {module:nested-vega-form-isValid-should-be-as-expected-when-value-changed}
|
|
522
|
-
*/
|
|
523
|
-
/* istanbul ignore next */
|
|
524
|
-
while (currentVegaForm && currentVegaForm !== this.host) {
|
|
525
|
-
fieldName = currentVegaForm.dataset['vegaForm'] + ' -> ' + fieldName;
|
|
526
|
-
currentVegaForm = findParent(currentVegaForm, 'vega-form');
|
|
527
|
-
}
|
|
528
|
-
}
|
|
529
|
-
return fieldName;
|
|
506
|
+
* @param {PendingValidPayload} payload - The payload containing the host element that triggered the pending valid change event.
|
|
507
|
+
* @returns {boolean} True if the host element is part of the current form, false otherwise.
|
|
508
|
+
*/
|
|
509
|
+
canAcceptFormFieldPendingValid(payload) {
|
|
510
|
+
return this.isElementInCurrentForm(payload.host);
|
|
530
511
|
}
|
|
531
512
|
/**
|
|
532
|
-
*
|
|
513
|
+
* Handles the pending valid state change for a form field.
|
|
533
514
|
*
|
|
534
|
-
* @param {
|
|
535
|
-
* @param {boolean} skipDisabled - If true, then disabled form fields will be skipped.
|
|
536
|
-
* @param {boolean} skipInvisible - If true, only visible elements will be visited.
|
|
537
|
-
* @returns a boolean value.
|
|
515
|
+
* @param {PendingValidPayload} payload - The payload containing the host element and its pending valid state.
|
|
538
516
|
*/
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
(
|
|
542
|
-
|
|
517
|
+
handleFieldPendingValid(payload) {
|
|
518
|
+
if (typeof payload.detail === 'boolean') {
|
|
519
|
+
this.pendingValidFieldPathMap.delete(payload.host);
|
|
520
|
+
}
|
|
521
|
+
else {
|
|
522
|
+
this.pendingValidFieldPathMap.set(payload.host, payload.host.dataset['vegaForm']);
|
|
523
|
+
}
|
|
543
524
|
}
|
|
544
525
|
/**
|
|
545
|
-
* This function registers an observer with the ChangeManager that will be notified when
|
|
526
|
+
* This function registers an observer with the ChangeManager that will be notified when an element
|
|
546
527
|
* delete operation is triggered
|
|
547
528
|
*/
|
|
548
529
|
initFormFieldDisconnectedObserver() {
|
|
@@ -560,87 +541,45 @@ const VegaForm = class {
|
|
|
560
541
|
}
|
|
561
542
|
/**
|
|
562
543
|
* Get the fieldName of the deleted element in the current vegaForm, delete it from the invalidFieldPathSet array, and update isValid at the same time.
|
|
544
|
+
*
|
|
545
|
+
* @param {DisconnectedElementOperationPayload} payload - the delete element and vegaForm array.
|
|
563
546
|
*/
|
|
564
547
|
async updateInvalidFieldPath(payload) {
|
|
565
548
|
this.invalidFieldPathMap.delete(payload.host);
|
|
566
549
|
this.pendingValidFieldPathMap.delete(payload.host);
|
|
567
550
|
}
|
|
568
|
-
registerFormSubmitChangeManager() {
|
|
569
|
-
this.formEventsObserver = new Observer(this.canAcceptFormSubmitEvent.bind(this), this.handleSubmitEvents.bind(this));
|
|
570
|
-
ChangeManager.register(FORM_SUBMIT, this.formEventsObserver);
|
|
571
|
-
}
|
|
572
551
|
/**
|
|
573
|
-
*
|
|
574
|
-
*
|
|
552
|
+
* Return true if the HTMLElement has data-vega-form property, and it's not disabled and not invisible if these two properties have to be checked.
|
|
553
|
+
*
|
|
554
|
+
* @param {HTMLElement} element - The HTMLElement to check.
|
|
555
|
+
* @param {boolean} skipDisabled - If true, then disabled form fields will be skipped.
|
|
556
|
+
* @param {boolean} skipInvisible - If true, only visible elements will be visited.
|
|
557
|
+
* @returns {boolean} a boolean value.
|
|
575
558
|
*/
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
async handleSubmitEvents() {
|
|
581
|
-
const valid = await this.valid();
|
|
582
|
-
if (valid.isValid) {
|
|
583
|
-
const formValue = await this.getValue();
|
|
584
|
-
const submitEvent = this.submitEventEmitter.emit(formValue);
|
|
585
|
-
if (!submitEvent.defaultPrevented) {
|
|
586
|
-
await this.submitWithFormData();
|
|
587
|
-
}
|
|
588
|
-
}
|
|
559
|
+
shouldVisitElement(element, skipDisabled, skipInvisible) {
|
|
560
|
+
return (this.getFormFieldName(element) &&
|
|
561
|
+
(!skipDisabled || !element['disabled']) &&
|
|
562
|
+
(!skipInvisible || isElementVisible(element)));
|
|
589
563
|
}
|
|
590
564
|
/**
|
|
591
|
-
*
|
|
592
|
-
*
|
|
593
|
-
* This method collects all form field values, creates hidden input elements for each field,
|
|
594
|
-
* appends them to a container inside the native form, and then triggers the native
|
|
595
|
-
* `requestSubmit()` method to submit the form.
|
|
596
|
-
*
|
|
597
|
-
* The method ensures that the form data is available in the native form for submission,
|
|
598
|
-
* which is useful when `useNativeForm` is enabled.
|
|
565
|
+
* It retrieves the value of a form field element.
|
|
599
566
|
*
|
|
600
|
-
* @
|
|
567
|
+
* @param {HTMLElement} element - The form field element.
|
|
568
|
+
* @returns {unknown} The value of the form field element.
|
|
601
569
|
*/
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
const hiddenInput = tryGetDocument().createElement('input');
|
|
608
|
-
hiddenInput.type = 'hidden';
|
|
609
|
-
hiddenInput.name = dataKey;
|
|
610
|
-
hiddenInput.value = data[dataKey];
|
|
611
|
-
this.nativeFormRenderer.getNativeFormRef().append(hiddenInput);
|
|
612
|
-
}
|
|
613
|
-
this.nativeFormRenderer.getNativeFormRef().requestSubmit();
|
|
614
|
-
}
|
|
615
|
-
registerFormResetChangeManager() {
|
|
616
|
-
this.formEventsObserver = new Observer(this.canAcceptFormResetEvent.bind(this), this.handleResetEvents.bind(this));
|
|
617
|
-
ChangeManager.register(FORM_RESET, this.formEventsObserver);
|
|
618
|
-
}
|
|
619
|
-
canAcceptFormResetEvent(payload) {
|
|
620
|
-
return this.isElementInCurrentForm(payload.host);
|
|
621
|
-
}
|
|
622
|
-
async handleResetEvents() {
|
|
623
|
-
await this.reset();
|
|
624
|
-
this.resetEventEmitter.emit();
|
|
625
|
-
}
|
|
626
|
-
registerFormFieldPendingValidChangeManager() {
|
|
627
|
-
this.formFieldPendingValidObserver = new Observer(this.canAcceptFormFieldPendingValid.bind(this), this.handleFieldPendingValid.bind(this));
|
|
628
|
-
ChangeManager.register(FORM_FIELD_PENDING_VALID_CHANGE, this.formFieldPendingValidObserver);
|
|
629
|
-
}
|
|
630
|
-
canAcceptFormFieldPendingValid(payload) {
|
|
631
|
-
return this.isElementInCurrentForm(payload.host);
|
|
632
|
-
}
|
|
633
|
-
handleFieldPendingValid(payload) {
|
|
634
|
-
if (typeof payload.detail === 'boolean') {
|
|
635
|
-
this.pendingValidFieldPathMap.delete(payload.host);
|
|
636
|
-
}
|
|
637
|
-
else {
|
|
638
|
-
this.pendingValidFieldPathMap.set(payload.host, payload.host.dataset['vegaForm']);
|
|
639
|
-
}
|
|
640
|
-
}
|
|
641
|
-
isElementInCurrentForm(element) {
|
|
642
|
-
return this.invalidFieldPathMap.has(element) || isParent(element, this.host);
|
|
570
|
+
getFormFieldValue(element) {
|
|
571
|
+
return typeof element['value'] === 'undefined'
|
|
572
|
+
? // use element.getAttribute since the value property is not available in unit testing
|
|
573
|
+
element.getAttribute('value')
|
|
574
|
+
: element['value'];
|
|
643
575
|
}
|
|
576
|
+
/**
|
|
577
|
+
* It handles the validation of a child form field element.
|
|
578
|
+
*
|
|
579
|
+
* @param {HTMLElement} element - The form field element to validate.
|
|
580
|
+
* @param {boolean | 'rule'} showError - Whether to show error messages.
|
|
581
|
+
* @returns {Promise<EvaluateResultBase>} The validation result.
|
|
582
|
+
*/
|
|
644
583
|
async handleChildFormFieldElementValid(element, showError) {
|
|
645
584
|
const subject = domNodeSubjectFactory.getSubject(element, VegaInternalValid);
|
|
646
585
|
const { isValid, message } = await new Promise((resolve) => {
|
|
@@ -657,6 +596,303 @@ const VegaForm = class {
|
|
|
657
596
|
});
|
|
658
597
|
return { isValid, message };
|
|
659
598
|
}
|
|
599
|
+
}
|
|
600
|
+
__decorate$2([
|
|
601
|
+
MapToComponentField()
|
|
602
|
+
], VegaFormFieldController.prototype, "host", void 0);
|
|
603
|
+
__decorate$2([
|
|
604
|
+
MapToComponentField({ writable: true })
|
|
605
|
+
], VegaFormFieldController.prototype, "isValid", void 0);
|
|
606
|
+
__decorate$2([
|
|
607
|
+
MapToComponentField({ writable: true })
|
|
608
|
+
], VegaFormFieldController.prototype, "isTouched", void 0);
|
|
609
|
+
__decorate$2([
|
|
610
|
+
InjectVegaSlimmer()
|
|
611
|
+
], VegaFormFieldController.prototype, "childNotifyObserver", void 0);
|
|
612
|
+
__decorate$2([
|
|
613
|
+
InjectVegaSlimmer()
|
|
614
|
+
], VegaFormFieldController.prototype, "childNodeValueChangeObserver", void 0);
|
|
615
|
+
__decorate$2([
|
|
616
|
+
MapToComponentMethod('connectedCallback')
|
|
617
|
+
], VegaFormFieldController.prototype, "connectedCallback", null);
|
|
618
|
+
__decorate$2([
|
|
619
|
+
MapToComponentMethod('disconnectedCallback')
|
|
620
|
+
], VegaFormFieldController.prototype, "disconnectedCallback", null);
|
|
621
|
+
__decorate$2([
|
|
622
|
+
MapToComponentMethod('getValue')
|
|
623
|
+
], VegaFormFieldController.prototype, "getValue", null);
|
|
624
|
+
__decorate$2([
|
|
625
|
+
MapToComponentMethod('setValue')
|
|
626
|
+
], VegaFormFieldController.prototype, "setValue", null);
|
|
627
|
+
__decorate$2([
|
|
628
|
+
MapToComponentMethod('valid')
|
|
629
|
+
], VegaFormFieldController.prototype, "valid", null);
|
|
630
|
+
|
|
631
|
+
var __decorate$1 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
632
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
633
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
634
|
+
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;
|
|
635
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
636
|
+
};
|
|
637
|
+
/**
|
|
638
|
+
* Reset controller for handling form reset events in the VegaForm component.
|
|
639
|
+
*/
|
|
640
|
+
class VegaFormResetController extends VegaSlimmer {
|
|
641
|
+
/**
|
|
642
|
+
* Component lifecycle - [connectedCallback]
|
|
643
|
+
*/
|
|
644
|
+
connectedCallback() {
|
|
645
|
+
this.registerFormResetChangeManager();
|
|
646
|
+
}
|
|
647
|
+
/**
|
|
648
|
+
* Component lifecycle - [disconnectedCallback]
|
|
649
|
+
*/
|
|
650
|
+
disconnectedCallback() {
|
|
651
|
+
this.unregisterFormResetChangeManager();
|
|
652
|
+
}
|
|
653
|
+
/**
|
|
654
|
+
* @inheritDoc
|
|
655
|
+
*/
|
|
656
|
+
async reset(defaultValueMap = {}, option) {
|
|
657
|
+
await this.vegaFormFieldController.navigateVegaFormChildren(async (element, isForm) => {
|
|
658
|
+
const formFieldName = this.vegaFormFieldController.getFormFieldName(element);
|
|
659
|
+
if (isForm) {
|
|
660
|
+
await element.reset(defaultValueMap[formFieldName] || {}, option);
|
|
661
|
+
}
|
|
662
|
+
}, option);
|
|
663
|
+
ChangeManager.notify(FORM_RESET_OPERATION_TRIGGERED, {
|
|
664
|
+
host: this.host,
|
|
665
|
+
defaultValueMap,
|
|
666
|
+
option,
|
|
667
|
+
});
|
|
668
|
+
this.vegaFormFieldController.setIsTouched(false);
|
|
669
|
+
}
|
|
670
|
+
/**
|
|
671
|
+
* Registers the form reset event observer with the ChangeManager.
|
|
672
|
+
*/
|
|
673
|
+
registerFormResetChangeManager() {
|
|
674
|
+
var _a;
|
|
675
|
+
const outerForm = (_a = findParent(this.host, 'vega-form', { outerMost: true })) !== null && _a !== void 0 ? _a : this.host;
|
|
676
|
+
this.formResetEventObserver = new Observer(this.canAcceptFormResetEvent.bind(this), this.handleResetEvents.bind(this));
|
|
677
|
+
ChangeManager.register(domNodeSubjectFactory.getSubject(outerForm, VegaInternalFormReset), this.formResetEventObserver);
|
|
678
|
+
}
|
|
679
|
+
/**
|
|
680
|
+
* Unregister the form reset event observer from the ChangeManager.
|
|
681
|
+
*/
|
|
682
|
+
unregisterFormResetChangeManager() {
|
|
683
|
+
var _a;
|
|
684
|
+
const outerForm = (_a = findParent(this.host, 'vega-form', { outerMost: true })) !== null && _a !== void 0 ? _a : this.host;
|
|
685
|
+
ChangeManager.unregister(domNodeSubjectFactory.getSubject(outerForm, VegaInternalFormReset), this.formResetEventObserver);
|
|
686
|
+
}
|
|
687
|
+
/**
|
|
688
|
+
* Can accept form reset event.
|
|
689
|
+
*
|
|
690
|
+
* @param {FormEventsPayload} payload - The form events payload.
|
|
691
|
+
* @returns {boolean} True if the event can be accepted, false otherwise.
|
|
692
|
+
*/
|
|
693
|
+
canAcceptFormResetEvent(payload) {
|
|
694
|
+
return this.vegaFormFieldController.isElementInCurrentForm(payload.host);
|
|
695
|
+
}
|
|
696
|
+
/**
|
|
697
|
+
* Handles reset events by resetting the form and emitting a reset event.
|
|
698
|
+
*/
|
|
699
|
+
async handleResetEvents() {
|
|
700
|
+
await this.host.reset();
|
|
701
|
+
this.resetEventEmitter.emit();
|
|
702
|
+
}
|
|
703
|
+
}
|
|
704
|
+
__decorate$1([
|
|
705
|
+
MapToComponentField()
|
|
706
|
+
], VegaFormResetController.prototype, "host", void 0);
|
|
707
|
+
__decorate$1([
|
|
708
|
+
MapToComponentField()
|
|
709
|
+
], VegaFormResetController.prototype, "vegaFormFieldController", void 0);
|
|
710
|
+
__decorate$1([
|
|
711
|
+
MapToComponentField()
|
|
712
|
+
], VegaFormResetController.prototype, "resetEventEmitter", void 0);
|
|
713
|
+
__decorate$1([
|
|
714
|
+
MapToComponentMethod('connectedCallback')
|
|
715
|
+
], VegaFormResetController.prototype, "connectedCallback", null);
|
|
716
|
+
__decorate$1([
|
|
717
|
+
MapToComponentMethod('disconnectedCallback')
|
|
718
|
+
], VegaFormResetController.prototype, "disconnectedCallback", null);
|
|
719
|
+
__decorate$1([
|
|
720
|
+
MapToComponentMethod('reset')
|
|
721
|
+
], VegaFormResetController.prototype, "reset", null);
|
|
722
|
+
|
|
723
|
+
const vegaFormCss = ":host{display:block}";
|
|
724
|
+
|
|
725
|
+
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
726
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
727
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
728
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
729
|
+
else
|
|
730
|
+
for (var i = decorators.length - 1; i >= 0; i--)
|
|
731
|
+
if (d = decorators[i])
|
|
732
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
733
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
734
|
+
};
|
|
735
|
+
const VegaForm = class {
|
|
736
|
+
constructor(hostRef) {
|
|
737
|
+
registerInstance(this, hostRef);
|
|
738
|
+
this.vegaValidate = createEvent(this, "vegaValidate", 7);
|
|
739
|
+
this.validate = createEvent(this, "validate", 7);
|
|
740
|
+
this.vegaFormSubmit = createEvent(this, "vegaFormSubmit", 7);
|
|
741
|
+
this.formSubmit = createEvent(this, "formSubmit", 7);
|
|
742
|
+
this.vegaFormReset = createEvent(this, "vegaFormReset", 7);
|
|
743
|
+
this.formReset = createEvent(this, "formReset", 7);
|
|
744
|
+
this.globalSlimmers = {};
|
|
745
|
+
this.submitEventEmitter = createEventEmitSlimmer(VegaForm, VegaFormSubmit);
|
|
746
|
+
this.resetEventEmitter = createEventEmitSlimmer(VegaForm, VegaFormReset);
|
|
747
|
+
this.validateEventEmitter = createEventEmitSlimmer(VegaForm, VegaValidate);
|
|
748
|
+
this.disableBlurValidationNotifySlimmer = createSubStateNotifySlimmer(VegaForm, 'disableBlurValidation', 'watchDisableBlurValidation');
|
|
749
|
+
this.stateController = new VegaFormNestStateController();
|
|
750
|
+
this.childEventPrevent = new ChildNodesEventPreventSlimmer([VegaFormSubmit, VegaFormReset], () => this.host.querySelector('vega-form'), {
|
|
751
|
+
customPreventHandle: (e) => {
|
|
752
|
+
e.stopPropagation();
|
|
753
|
+
},
|
|
754
|
+
});
|
|
755
|
+
this.childFormValidateEventPrevent = new ChildNodesEventPreventSlimmer([VegaValidate], () => this.host, {
|
|
756
|
+
customPreventHandle: (e) => {
|
|
757
|
+
e.stopPropagation();
|
|
758
|
+
},
|
|
759
|
+
});
|
|
760
|
+
this.vegaComponentUsageRuntimeMetricsSlimmer = new VegaComponentUsageRuntimeMetricsSlimmer();
|
|
761
|
+
this.vegaFormFieldValidationStateController = new VegaFormFieldValidationStateController();
|
|
762
|
+
this.nativeFormRenderer = new NativeFormRenderer();
|
|
763
|
+
this.vegaFormSubmitController = new VegaFormSubmitController();
|
|
764
|
+
this.vegaFormResetController = new VegaFormResetController();
|
|
765
|
+
this.vegaFormFieldController = new VegaFormFieldController();
|
|
766
|
+
/**
|
|
767
|
+
* Indicates whether the current form-controlled elements are valid.
|
|
768
|
+
*
|
|
769
|
+
* Form-controlled elements are considered for validation if they
|
|
770
|
+
* have the `data-vega-form` property.
|
|
771
|
+
*
|
|
772
|
+
* Disabled and invisible elements are excluded from validation.
|
|
773
|
+
*
|
|
774
|
+
* If the value is `undefined`, it means there are no
|
|
775
|
+
* form-controlled elements that can be validated.
|
|
776
|
+
*
|
|
777
|
+
* **Additional Notes:**
|
|
778
|
+
* 1. When depending on `isValid` for form validation, it is advised
|
|
779
|
+
* not to modify the following properties of the monitored DOM:
|
|
780
|
+
* - `disabled` property
|
|
781
|
+
* - Element visibility style
|
|
782
|
+
* 2. As this property relies heavily on the `VegaValidate` event emitted,
|
|
783
|
+
* it is highly recommended to enable auto-validation for all
|
|
784
|
+
* form-controlled elements to ensure that the value reflects
|
|
785
|
+
* the most up-to-date form validation status.
|
|
786
|
+
*
|
|
787
|
+
* @vegaVersion 1.3.0
|
|
788
|
+
*/
|
|
789
|
+
/* eslint-disable-next-line @stencil/strict-mutable */
|
|
790
|
+
this.isValid = null;
|
|
791
|
+
/**
|
|
792
|
+
* Indicates whether the value of any current
|
|
793
|
+
* form-controlled elements has been changed.
|
|
794
|
+
*
|
|
795
|
+
* 1. When the value of any form-controlled element is changed,
|
|
796
|
+
* this parameter is set to `true`.
|
|
797
|
+
* 2. When resetting the form, this parameter is set to `false`.
|
|
798
|
+
* 3. When invoking the `setValue` method, this parameter is set to `false`.
|
|
799
|
+
*
|
|
800
|
+
* @vegaVersion 1.3.0
|
|
801
|
+
*/
|
|
802
|
+
/* eslint-disable-next-line @stencil/strict-mutable */
|
|
803
|
+
this.isTouched = false;
|
|
804
|
+
/**
|
|
805
|
+
* Specifies whether form validation should be disabled on blur events of form elements.
|
|
806
|
+
*
|
|
807
|
+
* - This helps prevent validation on blur when clicking Submit inside an input,
|
|
808
|
+
* avoiding error messages that shift the button and block the click.
|
|
809
|
+
* - For nested forms, the parent form will override this property
|
|
810
|
+
* to ensure consistent validation behavior.
|
|
811
|
+
*
|
|
812
|
+
* @vegaVersion 2.47.0
|
|
813
|
+
*/
|
|
814
|
+
/* eslint-disable-next-line @stencil/strict-mutable */
|
|
815
|
+
this.disableBlurValidation = false;
|
|
816
|
+
/**
|
|
817
|
+
* Determines whether the `vega-form` content is wrapped in a native HTML <form> element.
|
|
818
|
+
*
|
|
819
|
+
* @vegaVersion 2.64.0
|
|
820
|
+
*/
|
|
821
|
+
this.useNativeForm = false;
|
|
822
|
+
/**
|
|
823
|
+
* Specifies the HTTP method used for form submission.
|
|
824
|
+
* This property takes effect only when {@link useNativeForm} is set to `true`.
|
|
825
|
+
*
|
|
826
|
+
* @vegaVersion 2.64.0
|
|
827
|
+
*/
|
|
828
|
+
this.method = 'get';
|
|
829
|
+
}
|
|
830
|
+
watchIsValid() {
|
|
831
|
+
this.validateEventEmitter.emit(this.isValid);
|
|
832
|
+
ChangeManager.notify(FORM_ELEMENT_VALIDATE, { host: this.host, detail: this.isValid });
|
|
833
|
+
}
|
|
834
|
+
watchDisableBlurValidation() {
|
|
835
|
+
}
|
|
836
|
+
/**
|
|
837
|
+
* Invoke this method asynchronously to retrieve the validation result for
|
|
838
|
+
* all the vega field elements nested within the `vega-form`.
|
|
839
|
+
*
|
|
840
|
+
* If an element is a `vega-form` itself, it will recursively
|
|
841
|
+
* invoke its `valid()` method.
|
|
842
|
+
*
|
|
843
|
+
* @param {boolean | 'rule'} showError determine whether the validation result should be reflected in UI
|
|
844
|
+
* @return {Promise<FormValidateResult> } validation result
|
|
845
|
+
* @vegaVersion 1.3.0
|
|
846
|
+
*/
|
|
847
|
+
async valid(showError = true) {
|
|
848
|
+
return methodPlaceholder(showError);
|
|
849
|
+
}
|
|
850
|
+
/**
|
|
851
|
+
* Invoke this method asynchronously to retrieve the values for
|
|
852
|
+
* all the available vega field elements nested within the `vega-form`.
|
|
853
|
+
*
|
|
854
|
+
* @param {FormControlOption} [option] form control option to skip disabled/invisible components
|
|
855
|
+
* @return {Promise<T>} object with key and field value as key-value pair
|
|
856
|
+
* @vegaVersion 1.3.0
|
|
857
|
+
*/
|
|
858
|
+
async getValue(option) {
|
|
859
|
+
return methodPlaceholder(option);
|
|
860
|
+
}
|
|
861
|
+
/**
|
|
862
|
+
* Invoke this method to prefill the `vega-form` with the given value.
|
|
863
|
+
*
|
|
864
|
+
* This action will also set the `isTouched` property to `false`.
|
|
865
|
+
*
|
|
866
|
+
* @param value to prefill into the vega-form
|
|
867
|
+
* @param {FormControlOption} [option] form control option to skip disabled/invisible components
|
|
868
|
+
* @vegaVersion 1.3.0
|
|
869
|
+
*/
|
|
870
|
+
async setValue(value, option) {
|
|
871
|
+
}
|
|
872
|
+
/**
|
|
873
|
+
* Invoke this method to reset the vega field elements in the form to
|
|
874
|
+
* the default value provided, or an empty string if
|
|
875
|
+
* no default value is found.
|
|
876
|
+
*
|
|
877
|
+
* @param defaultValueMap map of the vega form field name to default value
|
|
878
|
+
* @param {FormControlOption} [option] form control option to skip disabled/invisible components
|
|
879
|
+
*
|
|
880
|
+
* @vegaVersion 1.3.0
|
|
881
|
+
*/
|
|
882
|
+
async reset(defaultValueMap = {}, option) {
|
|
883
|
+
}
|
|
884
|
+
/**
|
|
885
|
+
* Invoke this method to set validation states on specific form fields.
|
|
886
|
+
*
|
|
887
|
+
* @param {VegaFormFieldValidationState[]} states - An array of validation error objects.
|
|
888
|
+
*
|
|
889
|
+
* @vegaVersion 2.59.0
|
|
890
|
+
*/
|
|
891
|
+
async setValidationStates(states) {
|
|
892
|
+
}
|
|
893
|
+
render() {
|
|
894
|
+
return sanitizeVegaComponent(h(Host, null, this.useNativeForm ? this.nativeFormRenderer.render() : h("slot", null)), this.host);
|
|
895
|
+
}
|
|
660
896
|
get host() { return getElement(this); }
|
|
661
897
|
static get watchers() { return {
|
|
662
898
|
"isValid": ["watchIsValid"],
|
|
@@ -689,19 +925,22 @@ __decorate([
|
|
|
689
925
|
], VegaForm.prototype, "childFormValidateEventPrevent", void 0);
|
|
690
926
|
__decorate([
|
|
691
927
|
InjectVegaSlimmer()
|
|
692
|
-
], VegaForm.prototype, "
|
|
928
|
+
], VegaForm.prototype, "vegaComponentUsageRuntimeMetricsSlimmer", void 0);
|
|
693
929
|
__decorate([
|
|
694
930
|
InjectVegaSlimmer()
|
|
695
|
-
], VegaForm.prototype, "
|
|
931
|
+
], VegaForm.prototype, "vegaFormFieldValidationStateController", void 0);
|
|
696
932
|
__decorate([
|
|
697
933
|
InjectVegaSlimmer()
|
|
698
|
-
], VegaForm.prototype, "
|
|
934
|
+
], VegaForm.prototype, "nativeFormRenderer", void 0);
|
|
699
935
|
__decorate([
|
|
700
936
|
InjectVegaSlimmer()
|
|
701
|
-
], VegaForm.prototype, "
|
|
937
|
+
], VegaForm.prototype, "vegaFormSubmitController", void 0);
|
|
702
938
|
__decorate([
|
|
703
939
|
InjectVegaSlimmer()
|
|
704
|
-
], VegaForm.prototype, "
|
|
940
|
+
], VegaForm.prototype, "vegaFormResetController", void 0);
|
|
941
|
+
__decorate([
|
|
942
|
+
InjectVegaSlimmer()
|
|
943
|
+
], VegaForm.prototype, "vegaFormFieldController", void 0);
|
|
705
944
|
VegaForm.style = vegaFormCss;
|
|
706
945
|
|
|
707
946
|
export { VegaForm as vega_form };
|