@globalpayments/vega 2.64.0 → 2.66.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.
Files changed (490) hide show
  1. package/dist/cjs/{app-globals-a190cd2d.js → app-globals-ab28f910.js} +9 -9
  2. package/dist/cjs/{brand-switch-state-controller-slimmer-5efa1b24.js → brand-switch-state-controller-slimmer-3d41b2a4.js} +1 -1
  3. package/dist/cjs/{child-nodes-event-prevent-slimmer-4e96270e.js → child-nodes-event-prevent-slimmer-eb803b14.js} +1 -1
  4. package/dist/cjs/{child-nodes-notify-observer-slimmer-34ac3bfc.js → child-nodes-notify-observer-slimmer-257fedb3.js} +1 -1
  5. package/dist/cjs/{code-block-417a131b.js → code-block-ab97a0a0.js} +15 -18
  6. package/dist/cjs/{component-value-history-controller-slimmer.abstract-0c4d1453.js → component-value-history-controller-slimmer.abstract-5630341e.js} +6 -6
  7. package/dist/cjs/{dark-mode-state-controller-slimmer-add5d8a8.js → dark-mode-state-controller-slimmer-8a87ec08.js} +1 -1
  8. package/dist/cjs/{dark-mode-style-controller-41c94aac.js → dark-mode-style-controller-27809ff8.js} +1 -1
  9. package/dist/cjs/{design-token-ae0de304.js → design-token-847739f1.js} +1 -1
  10. package/dist/cjs/{dom-node-subject-observer-factory-58e3c010.js → dom-node-subject-observer-factory-f040608b.js} +6 -2
  11. package/dist/cjs/{dto-renderer-manager-6d338e46.js → dto-renderer-manager-d0f0f2c0.js} +20 -35
  12. package/dist/cjs/{element-appender-slimmer-5a23e722.js → element-appender-slimmer-aead9bbb.js} +6 -6
  13. package/dist/cjs/{event-emit-slimmer-428d8802.js → event-emit-slimmer-d21a0935.js} +2 -2
  14. package/dist/cjs/{form-field-controller-slimmer-cceb5c79.js → form-field-controller-slimmer-2a091912.js} +16 -8
  15. package/dist/cjs/{image-annotation-action-9785bc59.js → image-annotation-action-d84de785.js} +4 -4
  16. package/dist/cjs/{index-9a92abce.js → index-4b896e76.js} +2 -2
  17. package/dist/cjs/index-58ea899e.js +4 -0
  18. package/dist/cjs/index.cjs.js +16 -16
  19. package/dist/cjs/{inject-keyboard-manager-ad865c95.js → inject-keyboard-manager-13c66257.js} +1 -1
  20. package/dist/cjs/{internal-vega-event-manager-28b957c8.js → internal-vega-event-manager-4d1ce667.js} +3 -2
  21. package/dist/cjs/{keyboard-manager-7f4e1f43.js → keyboard-manager-af0d08a6.js} +8 -2
  22. package/dist/cjs/{keyboard-manager-slimmer-138a90e5.js → keyboard-manager-slimmer-62f072cd.js} +1 -1
  23. package/dist/cjs/{language-extension-abbc251a.js → language-extension-d257e65d.js} +2 -2
  24. package/dist/cjs/loader.cjs.js +14 -14
  25. package/dist/cjs/{public-rules-ffc5db13.js → public-rules-d2b9b8f0.js} +8 -8
  26. package/dist/cjs/{range-37161c00.js → range-d610028e.js} +2 -2
  27. package/dist/cjs/{responsive-format-facade-b20dad44.js → responsive-format-facade-71e7b74c.js} +5 -5
  28. package/dist/cjs/{rich-text-editor-required-rule-604ea2b9.js → rich-text-editor-required-rule-a8fe5f50.js} +1 -1
  29. package/dist/cjs/{static-subject-title-7e7d791a.js → static-subject-title-5829a298.js} +0 -6
  30. package/dist/cjs/{string-input-formatter-slimmer-8445abc9.js → string-input-formatter-slimmer-8236b5e1.js} +3 -3
  31. package/dist/cjs/{style-formatter-56751462.js → style-formatter-6facb42b.js} +1 -1
  32. package/dist/cjs/{sub-state-notify-slimmer-52fa23af.js → sub-state-notify-slimmer-78682046.js} +2 -2
  33. package/dist/cjs/{sub-state-observer-slimmer-90c26113.js → sub-state-observer-slimmer-73aecfff.js} +3 -3
  34. package/dist/cjs/{token-extension-46821c19.js → token-extension-aa8d5cce.js} +9 -8
  35. package/dist/cjs/{translation-ecfc704a.js → translation-f5adcb9f.js} +1 -1
  36. package/dist/cjs/{translation-slimmer-40a3536d.js → translation-slimmer-4b6239d1.js} +1 -1
  37. package/dist/cjs/{ui-4ce1fa08.js → ui-9e181079.js} +16 -3
  38. package/dist/cjs/vega-accordion.cjs.entry.js +13 -13
  39. package/dist/cjs/vega-app-footer.cjs.entry.js +3 -3
  40. package/dist/cjs/vega-app-header-button.cjs.entry.js +14 -14
  41. package/dist/cjs/vega-backdrop.cjs.entry.js +1 -1
  42. package/dist/cjs/vega-banner.cjs.entry.js +4 -4
  43. package/dist/cjs/vega-box.cjs.entry.js +13 -13
  44. package/dist/cjs/vega-brand-logo.cjs.entry.js +3 -3
  45. package/dist/cjs/vega-breadcrumb.cjs.entry.js +30 -15
  46. package/dist/cjs/vega-button-circle.cjs.entry.js +19 -16
  47. package/dist/cjs/vega-button-group_2.cjs.entry.js +8 -8
  48. package/dist/cjs/vega-button-link.cjs.entry.js +5 -5
  49. package/dist/cjs/vega-button.cjs.entry.js +19 -14
  50. package/dist/cjs/vega-calendar_4.cjs.entry.js +506 -212
  51. package/dist/cjs/vega-card.cjs.entry.js +12 -12
  52. package/dist/cjs/vega-carousel.cjs.entry.js +12 -12
  53. package/dist/cjs/vega-checkbox_2.cjs.entry.js +11 -11
  54. package/dist/cjs/vega-chip.cjs.entry.js +14 -14
  55. package/dist/cjs/vega-code-block.cjs.entry.js +15 -15
  56. package/dist/cjs/vega-color-picker.cjs.entry.js +9 -9
  57. package/dist/cjs/vega-combo-box.cjs.entry.js +12 -12
  58. package/dist/cjs/vega-date-picker_2.cjs.entry.js +62 -25
  59. package/dist/cjs/vega-dialog_2.cjs.entry.js +15 -15
  60. package/dist/cjs/vega-divider.cjs.entry.js +12 -12
  61. package/dist/cjs/vega-dropdown_5.cjs.entry.js +23 -22
  62. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  63. package/dist/cjs/vega-field-error.cjs.entry.js +1 -1
  64. package/dist/cjs/vega-field-label.cjs.entry.js +4 -4
  65. package/dist/cjs/vega-file-uploader.cjs.entry.js +10 -10
  66. package/dist/cjs/vega-flag-icon.cjs.entry.js +12 -12
  67. package/dist/cjs/vega-flex.cjs.entry.js +13 -13
  68. package/dist/cjs/vega-font.cjs.entry.js +12 -12
  69. package/dist/cjs/vega-form.cjs.entry.js +649 -352
  70. package/dist/cjs/vega-grid.cjs.entry.js +12 -12
  71. package/dist/cjs/vega-icon.cjs.entry.js +12 -12
  72. package/dist/cjs/vega-image-uploader.cjs.entry.js +17 -17
  73. package/dist/cjs/vega-input-credit-card.cjs.entry.js +10 -10
  74. package/dist/cjs/vega-input-numeric.cjs.entry.js +13 -13
  75. package/dist/cjs/vega-input-passcode.cjs.entry.js +724 -0
  76. package/dist/cjs/vega-input-phone-number.cjs.entry.js +14 -14
  77. package/dist/cjs/vega-input-range.cjs.entry.js +11 -11
  78. package/dist/cjs/vega-input-select.cjs.entry.js +16 -16
  79. package/dist/cjs/vega-input.cjs.entry.js +27 -12
  80. package/dist/cjs/{vega-internal-event-id-dfd8b802.js → vega-internal-event-id-6d4a2c53.js} +6 -0
  81. package/dist/cjs/vega-item-toggle.cjs.entry.js +4 -4
  82. package/dist/cjs/vega-left-nav_5.cjs.entry.js +44 -20
  83. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +11 -11
  84. package/dist/cjs/vega-page-notification_2.cjs.entry.js +2 -2
  85. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +5 -5
  86. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +6 -6
  87. package/dist/cjs/vega-pagination.cjs.entry.js +14 -14
  88. package/dist/cjs/vega-popover_2.cjs.entry.js +16 -16
  89. package/dist/cjs/vega-progress-tracker.cjs.entry.js +4 -4
  90. package/dist/cjs/vega-radio_2.cjs.entry.js +13 -13
  91. package/dist/cjs/vega-rich-text-content.cjs.entry.js +10 -10
  92. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +23 -23
  93. package/dist/cjs/vega-segment-control.cjs.entry.js +4 -4
  94. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +16 -16
  95. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +12 -12
  96. package/dist/cjs/vega-sidenav_3.cjs.entry.js +14 -14
  97. package/dist/cjs/vega-signature-capture.cjs.entry.js +16 -16
  98. package/dist/cjs/vega-stepper.cjs.entry.js +10 -10
  99. package/dist/cjs/vega-tab-group_2.cjs.entry.js +6 -6
  100. package/dist/cjs/vega-table_8.cjs.entry.js +16 -16
  101. package/dist/cjs/vega-text.cjs.entry.js +1 -1
  102. package/dist/cjs/vega-textarea.cjs.entry.js +10 -10
  103. package/dist/cjs/vega-time-picker_2.cjs.entry.js +19 -19
  104. package/dist/cjs/vega-toggle-switch.cjs.entry.js +9 -9
  105. package/dist/cjs/vega-tooltip_2.cjs.entry.js +14 -14
  106. package/dist/cjs/vega.cjs.js +14 -14
  107. package/dist/collection/collection-manifest.json +6 -0
  108. package/dist/collection/components/vega-breadcrumb/slimmers/renderers/vega-breadcrumb-item-renderer.js +1 -1
  109. package/dist/collection/components/vega-breadcrumb/slimmers/renderers/vega-breadcrumb-renderer.js +12 -8
  110. package/dist/collection/components/vega-breadcrumb/vega-breadcrumb.css +6 -6
  111. package/dist/collection/components/vega-breadcrumb/vega-breadcrumb.js +32 -0
  112. package/dist/collection/components/vega-button/vega-button.js +9 -2
  113. package/dist/collection/components/vega-button-circle/vega-button-circle.js +8 -3
  114. package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-current-period-controller.js +7 -4
  115. package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-controller.js +21 -1
  116. package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-preivew-popover-controller.js +18 -1
  117. package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-post-operation-date-controller.js +14 -1
  118. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-repeat-pattern-factory.js +8 -9
  119. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-weekly-repeat-pattern.js +3 -1
  120. package/dist/collection/components/vega-calendar/slimmers/common/helpers/test/calendar-event-repeat-pattern-factory.test.js +34 -0
  121. package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-item-renderer.js +1 -1
  122. package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-marker-renderer.js +31 -5
  123. package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.js +4 -1
  124. package/dist/collection/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-event-renderer.js +5 -3
  125. package/dist/collection/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.js +4 -1
  126. package/dist/collection/components/vega-calendar/vega-calendar.js +47 -1
  127. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +37 -3
  128. package/dist/collection/components/vega-date-picker/vega-date-picker.js +6 -0
  129. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +1 -1
  130. package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.css +4 -8
  131. package/dist/collection/components/vega-dropdown/vega-dropdown.js +4 -0
  132. package/dist/collection/components/vega-form/slimmers/controllers/vega-form-field-controller.js +351 -0
  133. package/dist/collection/components/vega-form/slimmers/controllers/vega-form-reset-controller.js +99 -0
  134. package/dist/collection/components/vega-form/slimmers/controllers/vega-form-submit-controller.js +179 -0
  135. package/dist/collection/components/vega-form/vega-form.js +20 -366
  136. package/dist/collection/components/vega-input/vega-input.js +72 -5
  137. package/dist/collection/components/vega-input-passcode/slimmers/controllers/vega-input-passcode-keyboard-controller.js +101 -0
  138. package/dist/collection/components/vega-input-passcode/slimmers/controllers/vega-input-passcode-value-controller.js +115 -0
  139. package/dist/collection/components/vega-input-passcode/slimmers/renderers/vega-input-passcode-renderer.js +166 -0
  140. package/dist/collection/components/vega-input-passcode/vega-input-passcode.css +90 -0
  141. package/dist/collection/components/vega-input-passcode/vega-input-passcode.js +513 -0
  142. package/dist/collection/components/vega-modal/vega-modal.css +4 -1
  143. package/dist/collection/components/vega-nav/slimmers/vega-nav-observer-slimmer.js +8 -3
  144. package/dist/collection/components/vega-nav/vega-left-nav-link/slimmers/controllers/vega-left-nav-link-controller.js +21 -4
  145. package/dist/collection/components/vega-rich-text-editor/dto/annotations/link-group-annotation.js +1 -1
  146. package/dist/collection/components/vega-rich-text-editor/dto/blocks/code-block.js +2 -2
  147. package/dist/collection/components/vega-rich-text-editor/dto/blocks/html-block.js +3 -2
  148. package/dist/collection/components/vega-rich-text-editor/dto/blocks/image-block.js +3 -7
  149. package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-block.js +3 -7
  150. package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +4 -12
  151. package/dist/collection/components/vega-rich-text-editor/dto/blocks/text-block.js +3 -7
  152. package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +1 -1
  153. package/dist/collection/components/vega-rich-text-editor/dto/nodes/code-block-node.js +3 -2
  154. package/dist/collection/components/vega-rich-text-editor/dto/nodes/image-node.js +2 -2
  155. package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +2 -2
  156. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node.js +3 -2
  157. package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/code-block.test.js +2 -2
  158. package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/html-block.test.js +4 -0
  159. package/dist/collection/components/vega-rich-text-editor/test/dto/nodes/text-node.test.js +1 -1
  160. package/dist/collection/constants/ui.js +2 -0
  161. package/dist/collection/helpers/calendar/calendar-date.js +10 -8
  162. package/dist/collection/helpers/calendar/calendar-event.js +152 -16
  163. package/dist/collection/helpers/calendar/calendar-period/calendar-period.abstract.js +13 -4
  164. package/dist/collection/helpers/calendar/calendar-period/day-period.js +4 -4
  165. package/dist/collection/helpers/calendar/calendar-period/month-period.js +7 -6
  166. package/dist/collection/helpers/calendar/calendar-period/week-period.js +3 -3
  167. package/dist/collection/helpers/calendar/calendar-view-generator/week-view-generator.js +1 -1
  168. package/dist/collection/helpers/calendar/test/calendar-date.test.js +24 -0
  169. package/dist/collection/helpers/calendar/test/calendar-event.test.js +71 -0
  170. package/dist/collection/helpers/calendar/test/calendar-period/day-period.test.js +28 -0
  171. package/dist/collection/helpers/calendar/test/calendar-period/month-period.test.js +35 -0
  172. package/dist/collection/helpers/calendar/test/calendar-period/week-period.test.js +43 -0
  173. package/dist/collection/helpers/calendar/test/utils.test.js +29 -1
  174. package/dist/collection/helpers/calendar/utils.js +46 -0
  175. package/dist/collection/helpers/change-manager/subject/static-subject/static-subject-title.js +0 -2
  176. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +3 -2
  177. package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +3 -1
  178. package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +3 -0
  179. package/dist/collection/helpers/event-manager/test/component-event-id-map.test.js +2 -1
  180. package/dist/collection/helpers/event-manager/test/vega-event-manager.test.js +2 -1
  181. package/dist/collection/helpers/immutable/immutable-array.js +133 -0
  182. package/dist/collection/helpers/immutable/test/immutable-array.test.js +78 -0
  183. package/dist/collection/helpers/keyboard/keyboard-manager.js +7 -1
  184. package/dist/collection/helpers/keyboard/test/keyboard-manager.test.js +4 -0
  185. package/dist/collection/helpers/validator/form-field-controller.js +13 -3
  186. package/dist/collection/utils/test/ui.test.js +55 -0
  187. package/dist/collection/utils/ui.js +16 -3
  188. package/dist/collection/value-model-adapters/angular-ng-model-accessor-adapter.js +1 -0
  189. package/dist/collection/value-model-adapters/vue-component-v-model-adaptor.js +1 -0
  190. package/dist/esm/{app-globals-b074e012.js → app-globals-37a60cc1.js} +9 -9
  191. package/dist/esm/{brand-switch-state-controller-slimmer-05c85e6d.js → brand-switch-state-controller-slimmer-60249013.js} +1 -1
  192. package/dist/esm/{child-nodes-event-prevent-slimmer-7fe3dc57.js → child-nodes-event-prevent-slimmer-735cb880.js} +1 -1
  193. package/dist/esm/{child-nodes-notify-observer-slimmer-78f77c2c.js → child-nodes-notify-observer-slimmer-b676cd2b.js} +1 -1
  194. package/dist/esm/{code-block-a6c78bbb.js → code-block-11b2bc1c.js} +15 -18
  195. package/dist/esm/{component-value-history-controller-slimmer.abstract-d37d2df7.js → component-value-history-controller-slimmer.abstract-16c5cb96.js} +6 -6
  196. package/dist/esm/{dark-mode-state-controller-slimmer-f1c2c299.js → dark-mode-state-controller-slimmer-f2b4f8ed.js} +1 -1
  197. package/dist/esm/{dark-mode-style-controller-5cf1c482.js → dark-mode-style-controller-b7e85b6a.js} +1 -1
  198. package/dist/esm/{design-token-6f9e70c4.js → design-token-297dc528.js} +1 -1
  199. package/dist/esm/{dom-node-subject-observer-factory-c7bc3035.js → dom-node-subject-observer-factory-dca87b70.js} +5 -3
  200. package/dist/esm/{dto-renderer-manager-5b036e47.js → dto-renderer-manager-a1a3b6d2.js} +20 -35
  201. package/dist/esm/{element-appender-slimmer-1d6c2960.js → element-appender-slimmer-f7233708.js} +6 -6
  202. package/dist/esm/{event-emit-slimmer-3922d816.js → event-emit-slimmer-28fd360c.js} +2 -2
  203. package/dist/esm/{form-field-controller-slimmer-c29b345f.js → form-field-controller-slimmer-b23d9ff3.js} +16 -8
  204. package/dist/esm/{image-annotation-action-f6308cf4.js → image-annotation-action-fc46c920.js} +4 -4
  205. package/dist/esm/index-090d31ca.js +4 -0
  206. package/dist/esm/{index-4f26bbd0.js → index-c943d263.js} +2 -2
  207. package/dist/esm/index.js +16 -16
  208. package/dist/esm/{inject-keyboard-manager-109817bf.js → inject-keyboard-manager-ffd351b9.js} +1 -1
  209. package/dist/esm/{internal-vega-event-manager-cb06e987.js → internal-vega-event-manager-a5a5938d.js} +3 -2
  210. package/dist/esm/{keyboard-manager-ab521d22.js → keyboard-manager-5d8f3582.js} +8 -2
  211. package/dist/esm/{keyboard-manager-slimmer-cae3a002.js → keyboard-manager-slimmer-f39214e4.js} +1 -1
  212. package/dist/esm/{language-extension-962c427a.js → language-extension-314a2b18.js} +2 -2
  213. package/dist/esm/loader.js +14 -14
  214. package/dist/esm/{public-rules-6fa7533f.js → public-rules-c6a6946d.js} +8 -8
  215. package/dist/esm/{range-4d7aa0fd.js → range-b78254de.js} +2 -2
  216. package/dist/esm/{responsive-format-facade-b594fc72.js → responsive-format-facade-a41e1be7.js} +5 -5
  217. package/dist/esm/{rich-text-editor-required-rule-a72374cd.js → rich-text-editor-required-rule-d50c24da.js} +1 -1
  218. package/dist/esm/{static-subject-title-ca83d6b6.js → static-subject-title-52f93124.js} +1 -4
  219. package/dist/esm/{string-input-formatter-slimmer-75256a17.js → string-input-formatter-slimmer-3acd240c.js} +3 -3
  220. package/dist/esm/{style-formatter-56074ede.js → style-formatter-f7effaac.js} +1 -1
  221. package/dist/esm/{sub-state-notify-slimmer-85c658b7.js → sub-state-notify-slimmer-56380f02.js} +2 -2
  222. package/dist/esm/{sub-state-observer-slimmer-e58a2485.js → sub-state-observer-slimmer-3504e2f2.js} +3 -3
  223. package/dist/esm/{token-extension-3c198013.js → token-extension-b690953f.js} +9 -8
  224. package/dist/esm/{translation-3d35961b.js → translation-f10b1e19.js} +1 -1
  225. package/dist/esm/{translation-slimmer-d5b0d292.js → translation-slimmer-984c9ce6.js} +1 -1
  226. package/dist/esm/{ui-c20be16d.js → ui-bb99c0c2.js} +16 -3
  227. package/dist/esm/vega-accordion.entry.js +13 -13
  228. package/dist/esm/vega-app-footer.entry.js +3 -3
  229. package/dist/esm/vega-app-header-button.entry.js +14 -14
  230. package/dist/esm/vega-backdrop.entry.js +1 -1
  231. package/dist/esm/vega-banner.entry.js +4 -4
  232. package/dist/esm/vega-box.entry.js +13 -13
  233. package/dist/esm/vega-brand-logo.entry.js +3 -3
  234. package/dist/esm/vega-breadcrumb.entry.js +30 -15
  235. package/dist/esm/vega-button-circle.entry.js +19 -16
  236. package/dist/esm/vega-button-group_2.entry.js +8 -8
  237. package/dist/esm/vega-button-link.entry.js +5 -5
  238. package/dist/esm/vega-button.entry.js +19 -14
  239. package/dist/esm/vega-calendar_4.entry.js +507 -213
  240. package/dist/esm/vega-card.entry.js +12 -12
  241. package/dist/esm/vega-carousel.entry.js +12 -12
  242. package/dist/esm/vega-checkbox_2.entry.js +11 -11
  243. package/dist/esm/vega-chip.entry.js +14 -14
  244. package/dist/esm/vega-code-block.entry.js +15 -15
  245. package/dist/esm/vega-color-picker.entry.js +9 -9
  246. package/dist/esm/vega-combo-box.entry.js +12 -12
  247. package/dist/esm/vega-date-picker_2.entry.js +62 -25
  248. package/dist/esm/vega-dialog_2.entry.js +15 -15
  249. package/dist/esm/vega-divider.entry.js +12 -12
  250. package/dist/esm/vega-dropdown_5.entry.js +23 -22
  251. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  252. package/dist/esm/vega-field-error.entry.js +1 -1
  253. package/dist/esm/vega-field-label.entry.js +4 -4
  254. package/dist/esm/vega-file-uploader.entry.js +10 -10
  255. package/dist/esm/vega-flag-icon.entry.js +12 -12
  256. package/dist/esm/vega-flex.entry.js +13 -13
  257. package/dist/esm/vega-font.entry.js +12 -12
  258. package/dist/esm/vega-form.entry.js +649 -352
  259. package/dist/esm/vega-grid.entry.js +12 -12
  260. package/dist/esm/vega-icon.entry.js +12 -12
  261. package/dist/esm/vega-image-uploader.entry.js +17 -17
  262. package/dist/esm/vega-input-credit-card.entry.js +10 -10
  263. package/dist/esm/vega-input-numeric.entry.js +13 -13
  264. package/dist/esm/vega-input-passcode.entry.js +720 -0
  265. package/dist/esm/vega-input-phone-number.entry.js +14 -14
  266. package/dist/esm/vega-input-range.entry.js +11 -11
  267. package/dist/esm/vega-input-select.entry.js +16 -16
  268. package/dist/esm/vega-input.entry.js +27 -12
  269. package/dist/esm/{vega-internal-event-id-bee7946b.js → vega-internal-event-id-5c3e5f7f.js} +4 -1
  270. package/dist/esm/vega-item-toggle.entry.js +4 -4
  271. package/dist/esm/vega-left-nav_5.entry.js +44 -20
  272. package/dist/esm/vega-loader-wrapper_2.entry.js +11 -11
  273. package/dist/esm/vega-page-notification_2.entry.js +2 -2
  274. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +5 -5
  275. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +6 -6
  276. package/dist/esm/vega-pagination.entry.js +14 -14
  277. package/dist/esm/vega-popover_2.entry.js +16 -16
  278. package/dist/esm/vega-progress-tracker.entry.js +4 -4
  279. package/dist/esm/vega-radio_2.entry.js +13 -13
  280. package/dist/esm/vega-rich-text-content.entry.js +10 -10
  281. package/dist/esm/vega-rich-text-editor_4.entry.js +23 -23
  282. package/dist/esm/vega-segment-control.entry.js +4 -4
  283. package/dist/esm/vega-selection-chip_2.entry.js +16 -16
  284. package/dist/esm/vega-selection-tile_2.entry.js +12 -12
  285. package/dist/esm/vega-sidenav_3.entry.js +14 -14
  286. package/dist/esm/vega-signature-capture.entry.js +16 -16
  287. package/dist/esm/vega-stepper.entry.js +10 -10
  288. package/dist/esm/vega-tab-group_2.entry.js +6 -6
  289. package/dist/esm/vega-table_8.entry.js +16 -16
  290. package/dist/esm/vega-text.entry.js +1 -1
  291. package/dist/esm/vega-textarea.entry.js +10 -10
  292. package/dist/esm/vega-time-picker_2.entry.js +19 -19
  293. package/dist/esm/vega-toggle-switch.entry.js +9 -9
  294. package/dist/esm/vega-tooltip_2.entry.js +14 -14
  295. package/dist/esm/vega.js +14 -14
  296. package/dist/sri/vega-sri-loader.js +147 -0
  297. package/dist/sri/vega-sri-manifest.json +702 -0
  298. package/dist/types/components/vega-breadcrumb/slimmers/renderers/vega-breadcrumb-renderer.d.ts +2 -1
  299. package/dist/types/components/vega-breadcrumb/types.d.ts +1 -1
  300. package/dist/types/components/vega-breadcrumb/vega-breadcrumb.d.ts +11 -0
  301. package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-current-period-controller.d.ts +1 -0
  302. package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-controller.d.ts +6 -0
  303. package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-preivew-popover-controller.d.ts +5 -0
  304. package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-post-operation-date-controller.d.ts +6 -0
  305. package/dist/types/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-repeat-pattern-factory.d.ts +3 -1
  306. package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-marker-renderer.d.ts +1 -0
  307. package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.d.ts +1 -0
  308. package/dist/types/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.d.ts +1 -0
  309. package/dist/types/components/vega-calendar/types.d.ts +5 -0
  310. package/dist/types/components/vega-calendar/vega-calendar.d.ts +17 -0
  311. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +13 -0
  312. package/dist/types/components/vega-date-picker/vega-date-picker.d.ts +1 -0
  313. package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +1 -0
  314. package/dist/types/components/vega-form/slimmers/controllers/vega-form-field-controller.d.ts +158 -0
  315. package/dist/types/components/vega-form/slimmers/controllers/vega-form-reset-controller.d.ts +43 -0
  316. package/dist/types/components/vega-form/slimmers/controllers/vega-form-submit-controller.d.ts +72 -0
  317. package/dist/types/components/vega-form/types.d.ts +13 -0
  318. package/dist/types/components/vega-form/vega-form.d.ts +6 -110
  319. package/dist/types/components/vega-input/types.d.ts +65 -0
  320. package/dist/types/components/vega-input/vega-input.d.ts +17 -2
  321. package/dist/types/components/vega-input-passcode/slimmers/controllers/vega-input-passcode-keyboard-controller.d.ts +25 -0
  322. package/dist/types/components/vega-input-passcode/slimmers/controllers/vega-input-passcode-value-controller.d.ts +47 -0
  323. package/dist/types/components/vega-input-passcode/slimmers/renderers/vega-input-passcode-renderer.d.ts +29 -0
  324. package/dist/types/components/vega-input-passcode/vega-input-passcode.d.ts +135 -0
  325. package/dist/types/components/vega-nav/slimmers/vega-nav-observer-slimmer.d.ts +3 -0
  326. package/dist/types/components/vega-nav/vega-left-nav-link/slimmers/controllers/vega-left-nav-link-controller.d.ts +8 -0
  327. package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +2 -1
  328. package/dist/types/components/vega-rich-text-editor/dto/blocks/code-block.d.ts +1 -1
  329. package/dist/types/components/vega-rich-text-editor/dto/blocks/html-block.d.ts +1 -1
  330. package/dist/types/components/vega-rich-text-editor/dto/blocks/image-block.d.ts +1 -1
  331. package/dist/types/components/vega-rich-text-editor/dto/blocks/list-block.d.ts +1 -1
  332. package/dist/types/components/vega-rich-text-editor/dto/blocks/list-item-block.d.ts +1 -1
  333. package/dist/types/components/vega-rich-text-editor/dto/blocks/text-block.d.ts +1 -1
  334. package/dist/types/components/vega-rich-text-editor/dto/nodes/code-block-node.d.ts +1 -1
  335. package/dist/types/components/vega-rich-text-editor/dto/nodes/image-node.d.ts +1 -1
  336. package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +2 -1
  337. package/dist/types/components/vega-rich-text-editor/dto/nodes/text-node.d.ts +1 -1
  338. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-node.d.ts +2 -1
  339. package/dist/types/components.d.ts +185 -4
  340. package/dist/types/constants/ui.d.ts +1 -1
  341. package/dist/types/helpers/calendar/calendar-date.d.ts +5 -3
  342. package/dist/types/helpers/calendar/calendar-event.d.ts +50 -1
  343. package/dist/types/helpers/calendar/calendar-period/calendar-period.abstract.d.ts +8 -1
  344. package/dist/types/helpers/calendar/calendar-period/day-period.d.ts +1 -1
  345. package/dist/types/helpers/calendar/calendar-period/month-period.d.ts +4 -3
  346. package/dist/types/helpers/calendar/calendar-period/week-period.d.ts +1 -1
  347. package/dist/types/helpers/calendar/utils.d.ts +22 -0
  348. package/dist/types/helpers/change-manager/subject/static-subject/static-subject-title.d.ts +0 -2
  349. package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +2 -0
  350. package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +3 -0
  351. package/dist/types/helpers/immutable/immutable-array.d.ts +86 -0
  352. package/dist/types/helpers/immutable/immutable-map.d.ts +1 -1
  353. package/dist/types/helpers/immutable/immutable.d.ts +1 -0
  354. package/dist/types/helpers/immutable/test/immutable-array.test.d.ts +1 -0
  355. package/dist/types/types/components.type.d.ts +7 -2
  356. package/dist/types/utils/ui.d.ts +5 -1
  357. package/dist/vega/index.esm.js +1 -1
  358. package/dist/vega/{p-1d3a7be6.entry.js → p-00071542.entry.js} +1 -1
  359. package/dist/vega/p-0113a83c.entry.js +1 -0
  360. package/dist/vega/{p-61966868.entry.js → p-015cdbe7.entry.js} +1 -1
  361. package/dist/vega/{p-f37558c1.js → p-019f7f95.js} +1 -1
  362. package/dist/vega/{p-3a455ac3.entry.js → p-03a1e82e.entry.js} +1 -1
  363. package/dist/vega/p-0d1eca78.entry.js +1 -0
  364. package/dist/vega/{p-e41931d4.entry.js → p-0ed53cce.entry.js} +1 -1
  365. package/dist/vega/p-129c0ce1.js +1 -0
  366. package/dist/vega/p-16370cfb.js +1 -0
  367. package/dist/vega/p-19522949.js +1 -0
  368. package/dist/vega/{p-21a480b0.entry.js → p-1a3cb65e.entry.js} +1 -1
  369. package/dist/vega/{p-fd2d02ea.entry.js → p-2553031f.entry.js} +1 -1
  370. package/dist/vega/{p-179693f1.entry.js → p-276b1163.entry.js} +2 -2
  371. package/dist/vega/p-2d430dc4.entry.js +1 -0
  372. package/dist/vega/p-308aa2e3.js +1 -0
  373. package/dist/vega/{p-55c26035.entry.js → p-3288a65b.entry.js} +1 -1
  374. package/dist/vega/p-34800282.entry.js +1 -0
  375. package/dist/vega/p-358e9800.entry.js +1 -0
  376. package/dist/vega/{p-743c5baf.js → p-3925c16b.js} +1 -1
  377. package/dist/vega/{p-d3bf55e9.js → p-39482a1a.js} +1 -1
  378. package/dist/vega/{p-7aae9252.entry.js → p-39b9c57b.entry.js} +1 -1
  379. package/dist/vega/p-3a7f177a.entry.js +1 -0
  380. package/dist/vega/p-41c3fcb4.js +1 -0
  381. package/dist/vega/p-447c7590.js +1 -0
  382. package/dist/vega/p-46830028.entry.js +1 -0
  383. package/dist/vega/{p-c8789df1.entry.js → p-47cae62d.entry.js} +1 -1
  384. package/dist/vega/{p-37fd7a80.js → p-47fa359b.js} +1 -1
  385. package/dist/vega/{p-bb58a7cf.entry.js → p-4897bedd.entry.js} +1 -1
  386. package/dist/vega/{p-8938b5c4.js → p-4c192985.js} +1 -1
  387. package/dist/vega/{p-0f2c83a1.entry.js → p-4e33fff6.entry.js} +1 -1
  388. package/dist/vega/{p-d4564bfd.js → p-521d1d07.js} +1 -1
  389. package/dist/vega/{p-b3cd1992.entry.js → p-524693d8.entry.js} +1 -1
  390. package/dist/vega/{p-06b624e6.js → p-54b62ecf.js} +1 -1
  391. package/dist/vega/{p-92ec4fac.entry.js → p-59298f5e.entry.js} +1 -1
  392. package/dist/vega/{p-9819dda9.entry.js → p-5a0524ab.entry.js} +1 -1
  393. package/dist/vega/{p-6c85c1f3.entry.js → p-5e32866d.entry.js} +1 -1
  394. package/dist/vega/p-5f377954.js +1 -1
  395. package/dist/vega/{p-ae963cb3.entry.js → p-5f58d1da.entry.js} +1 -1
  396. package/dist/vega/{p-956a5899.entry.js → p-616cd622.entry.js} +1 -1
  397. package/dist/vega/{p-4669ce11.entry.js → p-65693321.entry.js} +1 -1
  398. package/dist/vega/{p-db29b9f9.entry.js → p-671afda4.entry.js} +1 -1
  399. package/dist/vega/p-67f159c3.js +1 -0
  400. package/dist/vega/{p-3176804b.entry.js → p-6ce1e9d4.entry.js} +1 -1
  401. package/dist/vega/{p-ffc2ef90.entry.js → p-6f6ccf67.entry.js} +1 -1
  402. package/dist/vega/{p-3a0b9e66.entry.js → p-6f7d42a0.entry.js} +1 -1
  403. package/dist/vega/{p-684391a4.entry.js → p-719354e7.entry.js} +1 -1
  404. package/dist/vega/{p-1da54ff3.js → p-725f0a2c.js} +1 -1
  405. package/dist/vega/{p-4b57bb12.entry.js → p-74d61782.entry.js} +1 -1
  406. package/dist/vega/{p-3cdbee7e.js → p-7b145620.js} +1 -1
  407. package/dist/vega/{p-bf8d2978.entry.js → p-7c1d08db.entry.js} +1 -1
  408. package/dist/vega/p-7cd2b93b.js +1 -0
  409. package/dist/vega/{p-d20ab09f.entry.js → p-7efb5ebe.entry.js} +1 -1
  410. package/dist/vega/{p-57c42c30.entry.js → p-7f69081b.entry.js} +1 -1
  411. package/dist/vega/{p-df31307b.entry.js → p-7f9ec104.entry.js} +1 -1
  412. package/dist/vega/p-81105691.entry.js +1 -0
  413. package/dist/vega/p-822c6092.js +1 -0
  414. package/dist/vega/{p-3709b0e0.js → p-8350506e.js} +1 -1
  415. package/dist/vega/{p-3354f5a7.js → p-85f9a980.js} +1 -1
  416. package/dist/vega/{p-641fbb48.entry.js → p-892cbe7c.entry.js} +1 -1
  417. package/dist/vega/{p-eb5f99db.entry.js → p-8d096fea.entry.js} +1 -1
  418. package/dist/vega/{p-15766433.entry.js → p-8d574fbd.entry.js} +1 -1
  419. package/dist/vega/p-8d655fd2.entry.js +1 -0
  420. package/dist/vega/p-8edf3513.js +1 -0
  421. package/dist/vega/{p-f4877bee.entry.js → p-92a22562.entry.js} +1 -1
  422. package/dist/vega/p-9fb6fbcc.js +1 -0
  423. package/dist/vega/p-a0467b83.js +1 -0
  424. package/dist/vega/{p-459efe39.entry.js → p-a1b7a179.entry.js} +1 -1
  425. package/dist/vega/p-a528714c.js +1 -0
  426. package/dist/vega/p-a5713178.js +1 -0
  427. package/dist/vega/{p-3a9aa6eb.entry.js → p-a6010b93.entry.js} +1 -1
  428. package/dist/vega/{p-697acd40.js → p-a7631c6b.js} +1 -1
  429. package/dist/vega/{p-56b8ffd5.entry.js → p-ab1001f5.entry.js} +1 -1
  430. package/dist/vega/{p-f81f2071.entry.js → p-ab8f99e9.entry.js} +1 -1
  431. package/dist/vega/{p-4faa7bab.entry.js → p-ad5393f0.entry.js} +1 -1
  432. package/dist/vega/{p-1be68fba.js → p-af5bfe34.js} +1 -1
  433. package/dist/vega/{p-a9e3058e.entry.js → p-b2aaab66.entry.js} +1 -1
  434. package/dist/vega/{p-e4acac0a.entry.js → p-b431f9d5.entry.js} +1 -1
  435. package/dist/vega/{p-32058dbd.entry.js → p-b82d3915.entry.js} +1 -1
  436. package/dist/vega/p-bee1cc34.entry.js +1 -0
  437. package/dist/vega/{p-2044aa2c.js → p-bf7f755b.js} +1 -1
  438. package/dist/vega/p-bf9476cd.entry.js +1 -0
  439. package/dist/vega/{p-32655cfc.entry.js → p-c1da8328.entry.js} +1 -1
  440. package/dist/vega/{p-e27802fb.js → p-c6ce2869.js} +1 -1
  441. package/dist/vega/{p-52b0abb5.entry.js → p-cc519f53.entry.js} +1 -1
  442. package/dist/vega/{p-1655b920.entry.js → p-d006e732.entry.js} +1 -1
  443. package/dist/vega/p-d0e6454e.entry.js +1 -0
  444. package/dist/vega/{p-04158119.entry.js → p-d1dacaeb.entry.js} +1 -1
  445. package/dist/vega/{p-119430db.entry.js → p-d4452dbc.entry.js} +1 -1
  446. package/dist/vega/{p-64e949fa.entry.js → p-d5761532.entry.js} +1 -1
  447. package/dist/vega/p-d5ff8b7f.js +1 -0
  448. package/dist/vega/{p-a1cf29a9.js → p-d88e88a7.js} +1 -1
  449. package/dist/vega/p-d9671d27.js +1 -0
  450. package/dist/vega/{p-7c75ce6c.entry.js → p-de624f7d.entry.js} +1 -1
  451. package/dist/vega/{p-c7f68d74.js → p-e6cccee4.js} +1 -1
  452. package/dist/vega/{p-4082fa22.entry.js → p-ea05a2fc.entry.js} +1 -1
  453. package/dist/vega/p-ed8bc4f0.entry.js +1 -0
  454. package/dist/vega/{p-3af81271.js → p-f360c9ba.js} +1 -1
  455. package/dist/vega/{p-5443d614.entry.js → p-fc8c5869.entry.js} +1 -1
  456. package/dist/vega/{p-a30ebdf5.js → p-fde50319.js} +1 -1
  457. package/dist/vega/{p-159fda34.entry.js → p-fe2e859f.entry.js} +1 -1
  458. package/dist/vega/{p-3eaa6cce.entry.js → p-fef846d5.entry.js} +1 -1
  459. package/dist/vega/p-ff3bb4e2.entry.js +1 -0
  460. package/dist/vega/vega.esm.js +1 -1
  461. package/package.json +3 -2
  462. package/dist/vega/p-06e6be0e.js +0 -1
  463. package/dist/vega/p-0b92b15b.entry.js +0 -1
  464. package/dist/vega/p-1110b422.entry.js +0 -1
  465. package/dist/vega/p-1aba48bc.js +0 -1
  466. package/dist/vega/p-1cb87bad.entry.js +0 -1
  467. package/dist/vega/p-2608b9fe.js +0 -1
  468. package/dist/vega/p-27dfa896.js +0 -1
  469. package/dist/vega/p-2ee4def0.js +0 -1
  470. package/dist/vega/p-3355ec0f.js +0 -1
  471. package/dist/vega/p-3674db0f.js +0 -1
  472. package/dist/vega/p-36f331bf.entry.js +0 -1
  473. package/dist/vega/p-465a6660.entry.js +0 -1
  474. package/dist/vega/p-4ae3eebf.entry.js +0 -1
  475. package/dist/vega/p-4e503e23.entry.js +0 -1
  476. package/dist/vega/p-575235c8.js +0 -1
  477. package/dist/vega/p-5773a9a3.js +0 -1
  478. package/dist/vega/p-6163818f.js +0 -1
  479. package/dist/vega/p-6be16084.js +0 -1
  480. package/dist/vega/p-6ed663d5.entry.js +0 -1
  481. package/dist/vega/p-84eabbec.entry.js +0 -1
  482. package/dist/vega/p-904d1b43.js +0 -1
  483. package/dist/vega/p-96bda7ca.js +0 -1
  484. package/dist/vega/p-a3d77013.js +0 -1
  485. package/dist/vega/p-b9e8c6bf.entry.js +0 -1
  486. package/dist/vega/p-be539a54.js +0 -1
  487. package/dist/vega/p-e4b0606a.entry.js +0 -1
  488. package/dist/vega/p-e6158a33.entry.js +0 -1
  489. package/dist/vega/p-ed0f000b.entry.js +0 -1
  490. package/dist/vega/p-f1436035.js +0 -1
@@ -3,42 +3,45 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-58ea899e.js');
6
- const formFieldControllerSlimmer = require('./form-field-controller-slimmer-cceb5c79.js');
7
6
  const changeManager = require('./change-manager-a297e4d2.js');
8
- const observer = require('./observer-f49483e8.js');
9
- const staticSubjectTitle = require('./static-subject-title-7e7d791a.js');
10
- const array = require('./array-249289f2.js');
7
+ const staticSubjectTitle = require('./static-subject-title-5829a298.js');
11
8
  const component = require('./component-1e352960.js');
12
- const ui = require('./ui-4ce1fa08.js');
13
- const immutableMap = require('./immutable-map-edf24b54.js');
14
9
  const globalSlimmerRegistry = require('./global-slimmer-registry-b3bce7e0.js');
10
+ const placeholder = require('./placeholder-cb6d37ad.js');
15
11
  const componentUsageRuntimeMetrics = require('./component-usage-runtime-metrics-d10ace87.js');
16
- const eventEmitSlimmer = require('./event-emit-slimmer-428d8802.js');
17
- const childNodesEventPreventSlimmer = require('./child-nodes-event-prevent-slimmer-4e96270e.js');
18
- const domNodeSubjectObserverFactory = require('./dom-node-subject-observer-factory-58e3c010.js');
19
- const childNodesNotifyObserverSlimmer = require('./child-nodes-notify-observer-slimmer-34ac3bfc.js');
20
- const vegaInternalEventId = require('./vega-internal-event-id-dfd8b802.js');
21
- const subStateNotifySlimmer = require('./sub-state-notify-slimmer-52fa23af.js');
22
- const subStateObserverSlimmer = require('./sub-state-observer-slimmer-90c26113.js');
12
+ const eventEmitSlimmer = require('./event-emit-slimmer-d21a0935.js');
13
+ const childNodesEventPreventSlimmer = require('./child-nodes-event-prevent-slimmer-eb803b14.js');
14
+ const domNodeSubjectObserverFactory = require('./dom-node-subject-observer-factory-f040608b.js');
15
+ const subStateNotifySlimmer = require('./sub-state-notify-slimmer-78682046.js');
16
+ const subStateObserverSlimmer = require('./sub-state-observer-slimmer-73aecfff.js');
17
+ const formFieldControllerSlimmer = require('./form-field-controller-slimmer-2a091912.js');
23
18
  const tryGetDocument = require('./try-get-document-c0ebd39a.js');
19
+ const vegaInternalEventId = require('./vega-internal-event-id-6d4a2c53.js');
20
+ const observer = require('./observer-f49483e8.js');
21
+ const ui = require('./ui-9e181079.js');
22
+ const typeGuard = require('./type-guard-f12b5bae.js');
23
+ const immutableMap = require('./immutable-map-edf24b54.js');
24
+ const childNodesNotifyObserverSlimmer = require('./child-nodes-notify-observer-slimmer-257fedb3.js');
25
+ const array = require('./array-249289f2.js');
26
+ require('./dynamic-slimmer-f31fdfd7.js');
27
+ require('./internal-vega-event-manager-4d1ce667.js');
28
+ require('./vega-env-manager-23b8b23c.js');
29
+ require('./feature-flag-controller-ce2162c8.js');
30
+ require('./index-4d7bce1a.js');
31
+ require('./_commonjsHelpers-537d719a.js');
24
32
  require('./string-39438062.js');
25
33
  require('./create-public-api-runtime-metrics-slimmer-e2e274e1.js');
26
- require('./dynamic-slimmer-f31fdfd7.js');
27
- require('./translation-ecfc704a.js');
34
+ require('./translation-f5adcb9f.js');
28
35
  require('./page-resize-observer-slimmer-11937d6f.js');
29
36
  require('./ui-32e69595.js');
30
37
  require('./breakpoints-ebde4837.js');
31
38
  require('./internal-form-field-validation-rule.abstract-07cdff46.js');
32
39
  require('./mutation-observer-slimmer-749d5020.js');
33
40
  require('./mutation-observer-filters-38cebc6d.js');
41
+ require('./typography-4560e7f1.js');
34
42
  require('./number-4816603d.js');
35
- require('./internal-vega-event-manager-28b957c8.js');
36
- require('./vega-env-manager-23b8b23c.js');
37
- require('./feature-flag-controller-ce2162c8.js');
38
- require('./index-4d7bce1a.js');
39
- require('./_commonjsHelpers-537d719a.js');
40
43
 
41
- var __decorate$3 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
44
+ var __decorate$6 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
42
45
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
43
46
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
44
47
  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;
@@ -61,14 +64,14 @@ class VegaFormNestStateController extends subStateObserverSlimmer.SubStateObserv
61
64
  });
62
65
  }
63
66
  }
64
- __decorate$3([
67
+ __decorate$6([
65
68
  globalSlimmerRegistry.MapToComponentField()
66
69
  ], VegaFormNestStateController.prototype, "host", void 0);
67
- __decorate$3([
70
+ __decorate$6([
68
71
  globalSlimmerRegistry.MapToComponentField({ writable: true })
69
72
  ], VegaFormNestStateController.prototype, "disableBlurValidation", void 0);
70
73
 
71
- var __decorate$2 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
74
+ var __decorate$5 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
72
75
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
73
76
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
74
77
  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;
@@ -138,14 +141,14 @@ class VegaFormFieldValidationStateController extends globalSlimmerRegistry.VegaS
138
141
  changeManager.ChangeManager.notify(staticSubjectTitle.FORM_ELEMENT_VALIDATE, { host: target, detail: isValid });
139
142
  }
140
143
  }
141
- __decorate$2([
144
+ __decorate$5([
142
145
  globalSlimmerRegistry.MapToComponentField()
143
146
  ], VegaFormFieldValidationStateController.prototype, "host", void 0);
144
- __decorate$2([
147
+ __decorate$5([
145
148
  globalSlimmerRegistry.MapToComponentMethod('setValidationStates')
146
149
  ], VegaFormFieldValidationStateController.prototype, "setValidationStates", null);
147
150
 
148
- var __decorate$1 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
151
+ var __decorate$4 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
149
152
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
150
153
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
151
154
  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;
@@ -167,127 +170,212 @@ class NativeFormRenderer extends globalSlimmerRegistry.VegaSlimmer {
167
170
  index.h("slot", null)));
168
171
  }
169
172
  }
170
- __decorate$1([
173
+ __decorate$4([
171
174
  globalSlimmerRegistry.MapToComponentField()
172
175
  ], NativeFormRenderer.prototype, "method", void 0);
173
- __decorate$1([
176
+ __decorate$4([
174
177
  globalSlimmerRegistry.MapToComponentField()
175
178
  ], NativeFormRenderer.prototype, "action", void 0);
176
179
 
177
- const vegaFormCss = ":host{display:block}";
178
-
179
- var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
180
+ var __decorate$3 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
180
181
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
181
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
182
- r = Reflect.decorate(decorators, target, key, desc);
183
- else
184
- for (var i = decorators.length - 1; i >= 0; i--)
185
- if (d = decorators[i])
186
- r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
182
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
183
+ 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;
187
184
  return c > 3 && r && Object.defineProperty(target, key, r), r;
188
185
  };
189
- const VegaForm = class {
190
- constructor(hostRef) {
191
- index.registerInstance(this, hostRef);
192
- this.vegaValidate = index.createEvent(this, "vegaValidate", 7);
193
- this.validate = index.createEvent(this, "validate", 7);
194
- this.vegaFormSubmit = index.createEvent(this, "vegaFormSubmit", 7);
195
- this.formSubmit = index.createEvent(this, "formSubmit", 7);
196
- this.vegaFormReset = index.createEvent(this, "vegaFormReset", 7);
197
- this.formReset = index.createEvent(this, "formReset", 7);
198
- this.globalSlimmers = {};
199
- this.submitEventEmitter = eventEmitSlimmer.createEventEmitSlimmer(VegaForm, domNodeSubjectObserverFactory.VegaFormSubmit);
200
- this.resetEventEmitter = eventEmitSlimmer.createEventEmitSlimmer(VegaForm, domNodeSubjectObserverFactory.VegaFormReset);
201
- this.validateEventEmitter = eventEmitSlimmer.createEventEmitSlimmer(VegaForm, domNodeSubjectObserverFactory.VegaValidate);
202
- this.disableBlurValidationNotifySlimmer = subStateNotifySlimmer.createSubStateNotifySlimmer(VegaForm, 'disableBlurValidation', 'watchDisableBlurValidation');
203
- this.stateController = new VegaFormNestStateController();
204
- this.childEventPrevent = new childNodesEventPreventSlimmer.ChildNodesEventPreventSlimmer([domNodeSubjectObserverFactory.VegaFormSubmit, domNodeSubjectObserverFactory.VegaFormReset], () => this.host.querySelector('vega-form'), {
205
- customPreventHandle: (e) => {
206
- e.stopPropagation();
207
- },
208
- });
209
- this.childFormValidateEventPrevent = new childNodesEventPreventSlimmer.ChildNodesEventPreventSlimmer([domNodeSubjectObserverFactory.VegaValidate], () => this.host, {
210
- customPreventHandle: (e) => {
211
- e.stopPropagation();
212
- },
186
+ /**
187
+ * Controller responsible for handling form submission in the VegaForm component.
188
+ */
189
+ class VegaFormSubmitController extends globalSlimmerRegistry.VegaSlimmer {
190
+ /**
191
+ * Component lifecycle - [connectedCallback]
192
+ */
193
+ connectedCallback() {
194
+ this.registerFormSubmitChangeManager();
195
+ }
196
+ /**
197
+ * Component lifecycle - [disconnectedCallback]
198
+ */
199
+ disconnectedCallback() {
200
+ this.unregisterFormSubmitChangeManager();
201
+ }
202
+ /**
203
+ * Submits the form using native HTML form submission with all current field values.
204
+ *
205
+ * This method collects all form field values, creates hidden input elements for each field,
206
+ * appends them to a container inside the native form, and then triggers the native
207
+ * `requestSubmit()` method to submit the form.
208
+ *
209
+ * The method ensures that the form data is available in the native form for submission,
210
+ * which is useful when `useNativeForm` is enabled.
211
+ *
212
+ * @returns {Promise<void>} Resolves when the form submission process is complete.
213
+ */
214
+ async submitWithFormData() {
215
+ if (!this.useNativeForm)
216
+ return;
217
+ const data = await this.host.getValue();
218
+ for (const dataKey in data) {
219
+ if (typeof data[dataKey] === 'object') {
220
+ // Use bracket notation for nested form object values
221
+ const bracketKeyMap = this.flattenObjectWithBrackets({
222
+ [dataKey]: data[dataKey],
223
+ });
224
+ for (const bracketKey in bracketKeyMap) {
225
+ const nestedHiddenInput = this.createHiddenInput(bracketKey, bracketKeyMap[bracketKey]);
226
+ this.nativeFormRenderer.getNativeFormRef().append(nestedHiddenInput);
227
+ }
228
+ }
229
+ else {
230
+ const hiddenInput = this.createHiddenInput(dataKey, data[dataKey]);
231
+ this.nativeFormRenderer.getNativeFormRef().append(hiddenInput);
232
+ }
233
+ }
234
+ this.nativeFormRenderer.getNativeFormRef().requestSubmit();
235
+ }
236
+ /**
237
+ * Creates a hidden input element with the specified name and value.
238
+ *
239
+ * @param {string} name - The name attribute for the hidden input.
240
+ * @param {unknown} value - The value attribute for the hidden input.
241
+ * @returns {HTMLInputElement} The created hidden input element.
242
+ */
243
+ createHiddenInput(name, value) {
244
+ const hiddenInput = tryGetDocument.tryGetDocument().createElement('input');
245
+ hiddenInput.type = 'hidden';
246
+ hiddenInput.name = name;
247
+ hiddenInput.value = typeGuard.isNonNullable(value) ? String(value) : '';
248
+ return hiddenInput;
249
+ }
250
+ /**
251
+ * Registers the form submit event observer with the ChangeManager.
252
+ */
253
+ registerFormSubmitChangeManager() {
254
+ var _a;
255
+ this.formSubmitEventObserver = new observer.Observer(this.canAcceptFormSubmitEvent.bind(this), this.handleSubmitEvents.bind(this));
256
+ const outerForm = (_a = ui.findParent(this.host, 'vega-form', { outerMost: true })) !== null && _a !== void 0 ? _a : this.host;
257
+ changeManager.ChangeManager.register(domNodeSubjectObserverFactory.domNodeSubjectFactory.getSubject(outerForm, vegaInternalEventId.VegaInternalFormSubmit), this.formSubmitEventObserver);
258
+ }
259
+ /**
260
+ * Unregister the form submit event observer from the ChangeManager.
261
+ */
262
+ unregisterFormSubmitChangeManager() {
263
+ var _a;
264
+ const outerForm = (_a = ui.findParent(this.host, 'vega-form', { outerMost: true })) !== null && _a !== void 0 ? _a : this.host;
265
+ changeManager.ChangeManager.unregister(domNodeSubjectObserverFactory.domNodeSubjectFactory.getSubject(outerForm, vegaInternalEventId.VegaInternalFormSubmit), this.formSubmitEventObserver);
266
+ }
267
+ /*
268
+ * The below method is e2e-test covered in
269
+ * @see{module:vega-form-field-enter-to-submit-e2e}
270
+ */
271
+ /* istanbul ignore next */
272
+ /**
273
+ * Can accept handler for FORM_SUBMIT.
274
+ *
275
+ * @param {FormEventsPayload} payload - The payload containing the host element that triggered the submit event.
276
+ * @returns {boolean} True if the host element is part of the current form, false otherwise.
277
+ */
278
+ canAcceptFormSubmitEvent(payload) {
279
+ return this.vegaFormFieldController.isElementInCurrentForm(payload.host);
280
+ }
281
+ /**
282
+ * Handles the form submission process.
283
+ *
284
+ * @returns {Promise<void>} Resolves when the submission process is complete.
285
+ */
286
+ async handleSubmitEvents() {
287
+ const valid = await this.host.valid();
288
+ if (valid.isValid) {
289
+ const formValue = await this.host.getValue();
290
+ const submitEvent = this.submitEventEmitter.emit(formValue);
291
+ if (!submitEvent.defaultPrevented) {
292
+ await this.submitWithFormData();
293
+ }
294
+ }
295
+ }
296
+ /**
297
+ * Flattens a nested object into a single-level object with bracket notation for keys.
298
+ *
299
+ * @param {Record<string, unknown>} data - The nested object to be flattened.
300
+ * @param {string} [parentKey=''] - The prefix for the keys in the flattened object.
301
+ * @param {Record<string, unknown>} [out={}] - The output object that accumulates the flattened key-value pairs.
302
+ * @returns {Record<string, unknown>} The flattened object with bracket notation keys.
303
+ */
304
+ flattenObjectWithBrackets(data, parentKey = '', out = {}) {
305
+ Object.entries(data).forEach(([key, value]) => {
306
+ const currentKey = parentKey ? `${parentKey}[${key}]` : key;
307
+ if (Array.isArray(value)) {
308
+ // Recursively handle array items using index as key
309
+ value.forEach((item, index) => {
310
+ const arrayKey = `${currentKey}[${index}]`;
311
+ if (typeof item === 'object' && item !== null) {
312
+ // Recursively flatten objects inside the array
313
+ this.flattenObjectWithBrackets(item, arrayKey, out);
314
+ }
315
+ else {
316
+ out[arrayKey] = item;
317
+ }
318
+ });
319
+ }
320
+ else if (typeGuard.isNonNullable(value) && typeof value === 'object') {
321
+ this.flattenObjectWithBrackets(value, currentKey, out);
322
+ }
323
+ else {
324
+ out[currentKey] = value;
325
+ }
213
326
  });
327
+ return out;
328
+ }
329
+ }
330
+ __decorate$3([
331
+ globalSlimmerRegistry.MapToComponentField()
332
+ ], VegaFormSubmitController.prototype, "host", void 0);
333
+ __decorate$3([
334
+ globalSlimmerRegistry.MapToComponentField()
335
+ ], VegaFormSubmitController.prototype, "useNativeForm", void 0);
336
+ __decorate$3([
337
+ globalSlimmerRegistry.MapToComponentField()
338
+ ], VegaFormSubmitController.prototype, "nativeFormRenderer", void 0);
339
+ __decorate$3([
340
+ globalSlimmerRegistry.MapToComponentField()
341
+ ], VegaFormSubmitController.prototype, "submitEventEmitter", void 0);
342
+ __decorate$3([
343
+ globalSlimmerRegistry.MapToComponentField()
344
+ ], VegaFormSubmitController.prototype, "vegaFormFieldController", void 0);
345
+ __decorate$3([
346
+ globalSlimmerRegistry.MapToComponentMethod('connectedCallback')
347
+ ], VegaFormSubmitController.prototype, "connectedCallback", null);
348
+ __decorate$3([
349
+ globalSlimmerRegistry.MapToComponentMethod('disconnectedCallback')
350
+ ], VegaFormSubmitController.prototype, "disconnectedCallback", null);
351
+
352
+ var __decorate$2 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
353
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
354
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
355
+ 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;
356
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
357
+ };
358
+ /**
359
+ * The form field controller for vega form to manage the form field states.
360
+ */
361
+ class VegaFormFieldController extends globalSlimmerRegistry.VegaSlimmer {
362
+ constructor() {
363
+ super(...arguments);
214
364
  this.childNotifyObserver = new childNodesNotifyObserverSlimmer.ChildNodesNotifyObserverSlimmer(staticSubjectTitle.FORM_ELEMENT_VALIDATE, (input) => this.updateInternalValidStatus(input));
215
- this.childNodeValueChangeObserver = new childNodesNotifyObserverSlimmer.ChildNodesNotifyObserverSlimmer(staticSubjectTitle.FORM_ELEMENT_VALUE_CHANGE, () => this.updateInternalTouchedStatus());
216
- this.vegaComponentUsageRuntimeMetricsSlimmer = new componentUsageRuntimeMetrics.VegaComponentUsageRuntimeMetricsSlimmer();
217
- this.vegaFormFieldValidationStateController = new VegaFormFieldValidationStateController();
218
- this.nativeFormRenderer = new NativeFormRenderer();
219
- this.invalidFieldPathMap = new immutableMap.ImmutableMap(new Map(), (newMap) => {
220
- this.invalidFieldPathMap = newMap;
221
- this.updateIsValidFlag();
365
+ this.childNodeValueChangeObserver = new childNodesNotifyObserverSlimmer.ChildNodesNotifyObserverSlimmer(staticSubjectTitle.FORM_ELEMENT_VALUE_CHANGE, () => {
366
+ this.isTouched = true;
222
367
  });
223
- // The form field element pending async valid map
224
- this.pendingValidFieldPathMap = new immutableMap.ImmutableMap(new Map(), (newMap) => {
225
- this.pendingValidFieldPathMap = newMap;
368
+ this._invalidFieldPathMap = new immutableMap.ImmutableMap(new Map(), (newMap) => {
369
+ this._invalidFieldPathMap = newMap;
226
370
  this.updateIsValidFlag();
227
371
  });
228
- this.controlledFieldPathSet = new Set();
229
- /**
230
- * Indicates whether the current form-controlled elements are valid.
231
- *
232
- * Form-controlled elements are considered for validation if they
233
- * have the `data-vega-form` property.
234
- *
235
- * Disabled and invisible elements are excluded from validation.
236
- *
237
- * If the value is `undefined`, it means there are no
238
- * form-controlled elements that can be validated.
239
- *
240
- * **Additional Notes:**
241
- * 1. When depending on `isValid` for form validation, it is advised
242
- * not to modify the following properties of the monitored DOM:
243
- * - `disabled` property
244
- * - Element visibility style
245
- * 2. As this property relies heavily on the `VegaValidate` event emitted,
246
- * it is highly recommended to enable auto-validation for all
247
- * form-controlled elements to ensure that the value reflects
248
- * the most up-to-date form validation status.
249
- *
250
- * @vegaVersion 1.3.0
251
- */
252
- /* eslint-disable-next-line @stencil/strict-mutable */
253
- this.isValid = null;
254
- /**
255
- * Indicates whether the value of any current
256
- * form-controlled elements has been changed.
257
- *
258
- * 1. When the value of any form-controlled element is changed,
259
- * this parameter is set to `true`.
260
- * 2. When resetting the form, this parameter is set to `false`.
261
- * 3. When invoking the `setValue` method, this parameter is set to `false`.
262
- *
263
- * @vegaVersion 1.3.0
264
- */
265
- this.isTouched = false;
266
- /**
267
- * Specifies whether form validation should be disabled on blur events of form elements.
268
- *
269
- * - This helps prevent validation on blur when clicking Submit inside an input,
270
- * avoiding error messages that shift the button and block the click.
271
- * - For nested forms, the parent form will override this property
272
- * to ensure consistent validation behavior.
273
- *
274
- * @vegaVersion 2.47.0
275
- */
276
- /* eslint-disable-next-line @stencil/strict-mutable */
277
- this.disableBlurValidation = false;
278
- /**
279
- * Determines whether the `vega-form` content is wrapped in a native HTML <form> element.
280
- *
281
- * @vegaVersion 2.64.0
282
- */
283
- this.useNativeForm = false;
284
372
  /**
285
- * Specifies the HTTP method used for form submission.
286
- * This property takes effect only when {@link useNativeForm} is set to `true`.
287
- *
288
- * @vegaVersion 2.64.0
373
+ * The form field element pending async valid map
289
374
  */
290
- this.method = 'get';
375
+ this._pendingValidFieldPathMap = new immutableMap.ImmutableMap(new Map(), (newMap) => {
376
+ this._pendingValidFieldPathMap = newMap;
377
+ this.updateIsValidFlag();
378
+ });
291
379
  /**
292
380
  * If the element is valid, remove it from the set of
293
381
  * invalid elements. If the element is invalid,
@@ -311,44 +399,62 @@ const VegaForm = class {
311
399
  }
312
400
  };
313
401
  }
314
- watchIsValid() {
315
- this.validateEventEmitter.emit(this.isValid);
316
- changeManager.ChangeManager.notify(staticSubjectTitle.FORM_ELEMENT_VALIDATE, { host: this.host, detail: this.isValid });
317
- }
318
- watchDisableBlurValidation() {
402
+ /**
403
+ * Component lifecycle - [connectedCallback]
404
+ */
405
+ connectedCallback() {
406
+ this.initFormFieldDisconnectedObserver();
407
+ this.registerFormFieldPendingValid();
319
408
  }
320
409
  /**
321
- * When the vegaForm is deleted, it is necessary to notify
322
- * the parent's vegaForm to update its isValid status.
410
+ * When the vegaForm is deleted, it is necessary to notify the parent's vegaForm to update its isValid status.
323
411
  */
324
- async disconnectedCallback() {
325
- changeManager.ChangeManager.notify(staticSubjectTitle.FORM_FIELD_ELEMENT_DISCONNECTED, {
326
- host: this.host,
327
- });
412
+ disconnectedCallback() {
413
+ changeManager.ChangeManager.notify(staticSubjectTitle.FORM_FIELD_ELEMENT_DISCONNECTED, { host: this.host });
328
414
  changeManager.ChangeManager.unregister(staticSubjectTitle.FORM_FIELD_ELEMENT_DISCONNECTED, this.formFieldDisconnectedObserver);
329
415
  changeManager.ChangeManager.unregister(staticSubjectTitle.FORM_FIELD_PENDING_VALID_CHANGE, this.formFieldPendingValidObserver);
330
416
  }
331
- async componentDidLoad() {
417
+ /**
418
+ * @inheritDoc
419
+ */
420
+ async getValue(option) {
421
+ const result = {};
332
422
  await this.navigateVegaFormChildren(async (element, isForm) => {
333
- if (!isForm) {
334
- this.controlledFieldPathSet.add(this.getFormFieldName(element, true));
423
+ const formFieldName = this.getFormFieldName(element);
424
+ if (isForm) {
425
+ result[formFieldName] = await element.getValue(option);
335
426
  }
336
- });
337
- this.initFormFieldDisconnectedObserver();
338
- this.registerFormSubmitChangeManager();
339
- this.registerFormResetChangeManager();
340
- this.registerFormFieldPendingValidChangeManager();
427
+ else {
428
+ result[formFieldName] = this.getFormFieldValue(element);
429
+ }
430
+ }, option);
431
+ return (array.isObjectArrayLike(result) ? Object.values(result) : result);
341
432
  }
342
433
  /**
343
- * Invoke this method asynchronously to retrieve the validation result for
344
- * all the vega field elements nested within the `vega-form`.
345
- *
346
- * If an element is a `vega-form` itself, it will recursively
347
- * invoke its `valid()` method.
348
- *
349
- * @param {boolean | 'rule'} showError determine whether the validation result should be reflected in UI
350
- * @return {Promise<FormValidateResult> } validation result
351
- * @vegaVersion 1.3.0
434
+ * @inheritDoc
435
+ */
436
+ async setValue(value, option) {
437
+ if (value) {
438
+ await this.navigateVegaFormChildren(async (element, isForm) => {
439
+ const formFieldName = this.getFormFieldName(element);
440
+ if (isForm) {
441
+ await element.setValue(value[formFieldName], option);
442
+ }
443
+ else {
444
+ await element.componentOnReady(); // Link issue https://gethired.atlassian.net/browse/GHUI-385
445
+ if (value[formFieldName] !== undefined) {
446
+ // If element have setValue method, we will directly call this method, otherwise we set the value to value property.
447
+ typeof element['setValue'] === 'function'
448
+ ? await element['setValue'](value[formFieldName])
449
+ : (element['value'] = value[formFieldName]);
450
+ }
451
+ }
452
+ }, option);
453
+ this.isTouched = false;
454
+ }
455
+ }
456
+ /**
457
+ * @inheritDoc
352
458
  */
353
459
  async valid(showError = true) {
354
460
  const result = { isValid: true, invalidFields: [] };
@@ -376,103 +482,46 @@ const VegaForm = class {
376
482
  return result;
377
483
  }
378
484
  /**
379
- * Invoke this method asynchronously to retrieve the values for
380
- * all the available vega field elements nested within the `vega-form`.
485
+ * The getter for the {@link _invalidFieldPathMap}
381
486
  *
382
- * @param {FormControlOption} [option] form control option to skip disabled/invisible components
383
- * @return {Promise<T>} object with key and field value as key-value pair
384
- * @vegaVersion 1.3.0
487
+ * @returns {ImmutableMap<HTMLElement, string>} The map of invalid field elements and their paths
385
488
  */
386
- async getValue(option) {
387
- const result = {};
388
- await this.navigateVegaFormChildren(async (element, isForm) => {
389
- const formFieldName = this.getFormFieldName(element);
390
- if (isForm) {
391
- result[formFieldName] = await element.getValue(option);
392
- }
393
- else {
394
- result[formFieldName] = VegaForm.getFormFieldValue(element);
395
- }
396
- }, option);
397
- return (array.isObjectArrayLike(result) ? Object.values(result) : result);
489
+ get invalidFieldPathMap() {
490
+ return this._invalidFieldPathMap;
398
491
  }
399
492
  /**
400
- * Invoke this method to prefill the `vega-form` with the given value.
493
+ * The getter for the {@link _pendingValidFieldPathMap}
401
494
  *
402
- * This action will also set the `isTouched` property to `false`.
403
- *
404
- * @param value to prefill into the vega-form
405
- * @param {FormControlOption} [option] form control option to skip disabled/invisible components
406
- * @vegaVersion 1.3.0
495
+ * @returns {ImmutableMap<HTMLElement, string>} The map of pending valid field elements and their paths
407
496
  */
408
- async setValue(value, option) {
409
- if (value) {
410
- await this.navigateVegaFormChildren(async (element, isForm) => {
411
- const formFieldName = this.getFormFieldName(element);
412
- if (isForm) {
413
- await element.setValue(value[formFieldName], option);
414
- }
415
- else {
416
- await element.componentOnReady(); // Link issue https://gethired.atlassian.net/browse/GHUI-385
417
- if (value[formFieldName] !== undefined) {
418
- // If element have setValue method, we will directly call this method, otherwise we set the value to value property.
419
- typeof element['setValue'] === 'function'
420
- ? await element['setValue'](value[formFieldName])
421
- : (element['value'] = value[formFieldName]);
422
- }
423
- }
424
- }, option);
425
- this.isTouched = false;
426
- }
497
+ get pendingValidFieldPathMap() {
498
+ return this._pendingValidFieldPathMap;
427
499
  }
428
500
  /**
429
- * Invoke this method to reset the vega field elements in the form to
430
- * the default value provided, or an empty string if
431
- * no default value is found.
432
- *
433
- * @param defaultValueMap map of the vega form field name to default value
434
- * @param {FormControlOption} [option] form control option to skip disabled/invisible components
501
+ * Set the isTouched property of the form.
435
502
  *
436
- * @vegaVersion 1.3.0
503
+ * @param {boolean} isTouched - The new value for isTouched.
437
504
  */
438
- async reset(defaultValueMap = {}, option) {
439
- await this.navigateVegaFormChildren(async (element, isForm) => {
440
- const formFieldName = this.getFormFieldName(element);
441
- if (isForm) {
442
- await element.reset(defaultValueMap[formFieldName] || {}, option);
443
- }
444
- }, option);
445
- changeManager.ChangeManager.notify(staticSubjectTitle.FORM_RESET_OPERATION_TRIGGERED, {
446
- host: this.host,
447
- defaultValueMap,
448
- option,
449
- });
450
- this.isTouched = false;
505
+ setIsTouched(isTouched) {
506
+ this.isTouched = isTouched;
451
507
  }
452
508
  /**
453
- * Invoke this method to set validation states on specific form fields.
509
+ * It returns the value of data-vega-form that the given element is associated with.
454
510
  *
455
- * @param {VegaFormFieldValidationState[]} states - An array of validation error objects.
456
- *
457
- * @vegaVersion 2.59.0
511
+ * @param {HTMLElement} element - The element that is being validated.
512
+ * @returns {string} The name of the field.
458
513
  */
459
- async setValidationStates(states) {
460
- }
461
- static getFormFieldValue(element) {
462
- return typeof element['value'] === 'undefined'
463
- ? // use element.getAttribute since the value property is not available in unit testing
464
- element.getAttribute('value')
465
- : element['value'];
466
- }
467
- render() {
468
- return component.sanitizeVegaComponent(index.h(index.Host, null, this.useNativeForm ? this.nativeFormRenderer.render() : index.h("slot", null)), this.host);
514
+ getFormFieldName(element) {
515
+ return element.dataset['vegaForm'];
469
516
  }
470
517
  /**
471
- * If the value of any child elements have changed,
472
- * make 'isTouched' prop as false.
518
+ * Check if the given element is part of the current form.
519
+ *
520
+ * @param {HTMLElement} element - The element to check.
521
+ * @returns {boolean} True if the element is part of the current form, false otherwise.
473
522
  */
474
- updateInternalTouchedStatus() {
475
- this.isTouched = true;
523
+ isElementInCurrentForm(element) {
524
+ return this.invalidFieldPathMap.has(element) || ui.isParent(element, this.host);
476
525
  }
477
526
  /**
478
527
  * Navigate the immediate child node under current vega form element with the following strategy
@@ -480,10 +529,10 @@ const VegaForm = class {
480
529
  * - if a non-matched node found, it will call itself recursively and pass the node as the second parameter
481
530
  * Once the navigation is finished, it will wait for all the pending visitor/self-invocation promise finished before return
482
531
  *
483
- * @param visitor async callback method that will be invoked if a matched vega field element found
532
+ * @param {(element: HTMLElement, isForm: boolean) => Promise<void>} visitor async callback method that will be invoked if a matched vega field element found
484
533
  * @param {FormControlOption} [option] form control option to skip disabled/invisible components
485
- * @param [startElementNode] element node that the navigation will be started from, default is the current host element
486
- * @return {Promise<void>} return void wrapped with promise to notify the navigation is done
534
+ * @param {HTMLElement} [startElementNode=this.host] the element to start the navigation, default to current vega form host
535
+ * @returns {Promise<void>} return void wrapped with promise to notify the navigation is done
487
536
  */
488
537
  async navigateVegaFormChildren(visitor, option, startElementNode = this.host) {
489
538
  const promiseQueue = [];
@@ -500,53 +549,43 @@ const VegaForm = class {
500
549
  await Promise.all(promiseQueue);
501
550
  }
502
551
  /**
503
- * Update the {@link isValid} property value based on the size of {@link invalidFieldPathSet}
552
+ * Update the {@link isValid} property value based on the size of {@link invalidFieldPathMap}
504
553
  * If the number of invalid elements is zero, then the form is valid.
505
554
  */
506
555
  updateIsValidFlag() {
507
556
  this.isValid = this.pendingValidFieldPathMap.size > 0 ? null : this.invalidFieldPathMap.size === 0;
508
557
  }
509
558
  /**
510
- * It returns the value of data-vega-form that the given element is associated with, if child HTMLElements share the same data-vega-form property name
511
- * in the same vega-form, then includePath has to be set to be true to get a complete path to avoid the confusion of isValid checking.
559
+ * Registers an observer with the ChangeManager that will be notified when a form field's pending validation state changes.
560
+ */
561
+ registerFormFieldPendingValid() {
562
+ this.formFieldPendingValidObserver = new observer.Observer(this.canAcceptFormFieldPendingValid.bind(this), this.handleFieldPendingValid.bind(this));
563
+ changeManager.ChangeManager.register(staticSubjectTitle.FORM_FIELD_PENDING_VALID_CHANGE, this.formFieldPendingValidObserver);
564
+ }
565
+ /**
566
+ * Can accept handler for FORM_FIELD_PENDING_VALID_CHANGE.
512
567
  *
513
- * @param {HTMLElement} element - The element that is being validated.
514
- * @param {boolean} [includePath] - If true, the field name will include the path to the field. For
515
- * example, if the field is in a vega-form with the name "address", the field name will be "address ->
516
- * street".
517
- * @returns The name of the field.
518
- */
519
- getFormFieldName(element, includePath) {
520
- let fieldName = element.dataset['vegaForm'];
521
- if (includePath) {
522
- let currentVegaForm = ui.findParent(element, 'vega-form');
523
- /**
524
- * The below method is e2e-test covered in
525
- * @see {module:nested-vega-form-isValid-should-be-as-expected-when-value-changed}
526
- */
527
- /* istanbul ignore next */
528
- while (currentVegaForm && currentVegaForm !== this.host) {
529
- fieldName = currentVegaForm.dataset['vegaForm'] + ' -> ' + fieldName;
530
- currentVegaForm = ui.findParent(currentVegaForm, 'vega-form');
531
- }
532
- }
533
- return fieldName;
568
+ * @param {PendingValidPayload} payload - The payload containing the host element that triggered the pending valid change event.
569
+ * @returns {boolean} True if the host element is part of the current form, false otherwise.
570
+ */
571
+ canAcceptFormFieldPendingValid(payload) {
572
+ return this.isElementInCurrentForm(payload.host);
534
573
  }
535
574
  /**
536
- * 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.
575
+ * Handles the pending valid state change for a form field.
537
576
  *
538
- * @param {HTMLElement} element - The HTMLElement to check.
539
- * @param {boolean} skipDisabled - If true, then disabled form fields will be skipped.
540
- * @param {boolean} skipInvisible - If true, only visible elements will be visited.
541
- * @returns a boolean value.
577
+ * @param {PendingValidPayload} payload - The payload containing the host element and its pending valid state.
542
578
  */
543
- shouldVisitElement(element, skipDisabled, skipInvisible) {
544
- return (this.getFormFieldName(element) &&
545
- (!skipDisabled || !element['disabled']) &&
546
- (!skipInvisible || ui.isElementVisible(element)));
579
+ handleFieldPendingValid(payload) {
580
+ if (typeof payload.detail === 'boolean') {
581
+ this.pendingValidFieldPathMap.delete(payload.host);
582
+ }
583
+ else {
584
+ this.pendingValidFieldPathMap.set(payload.host, payload.host.dataset['vegaForm']);
585
+ }
547
586
  }
548
587
  /**
549
- * This function registers an observer with the ChangeManager that will be notified when a element
588
+ * This function registers an observer with the ChangeManager that will be notified when an element
550
589
  * delete operation is triggered
551
590
  */
552
591
  initFormFieldDisconnectedObserver() {
@@ -564,87 +603,45 @@ const VegaForm = class {
564
603
  }
565
604
  /**
566
605
  * Get the fieldName of the deleted element in the current vegaForm, delete it from the invalidFieldPathSet array, and update isValid at the same time.
606
+ *
607
+ * @param {DisconnectedElementOperationPayload} payload - the delete element and vegaForm array.
567
608
  */
568
609
  async updateInvalidFieldPath(payload) {
569
610
  this.invalidFieldPathMap.delete(payload.host);
570
611
  this.pendingValidFieldPathMap.delete(payload.host);
571
612
  }
572
- registerFormSubmitChangeManager() {
573
- this.formEventsObserver = new observer.Observer(this.canAcceptFormSubmitEvent.bind(this), this.handleSubmitEvents.bind(this));
574
- changeManager.ChangeManager.register(staticSubjectTitle.FORM_SUBMIT, this.formEventsObserver);
575
- }
576
613
  /**
577
- * The below method is e2e-test covered in
578
- * @see{module:vega-form-field-enter-to-submit-e2e}
614
+ * 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.
615
+ *
616
+ * @param {HTMLElement} element - The HTMLElement to check.
617
+ * @param {boolean} skipDisabled - If true, then disabled form fields will be skipped.
618
+ * @param {boolean} skipInvisible - If true, only visible elements will be visited.
619
+ * @returns {boolean} a boolean value.
579
620
  */
580
- /* istanbul ignore next */
581
- canAcceptFormSubmitEvent(payload) {
582
- return this.isElementInCurrentForm(payload.host);
583
- }
584
- async handleSubmitEvents() {
585
- const valid = await this.valid();
586
- if (valid.isValid) {
587
- const formValue = await this.getValue();
588
- const submitEvent = this.submitEventEmitter.emit(formValue);
589
- if (!submitEvent.defaultPrevented) {
590
- await this.submitWithFormData();
591
- }
592
- }
621
+ shouldVisitElement(element, skipDisabled, skipInvisible) {
622
+ return (this.getFormFieldName(element) &&
623
+ (!skipDisabled || !element['disabled']) &&
624
+ (!skipInvisible || ui.isElementVisible(element)));
593
625
  }
594
626
  /**
595
- * Submits the form using native HTML form submission with all current field values.
596
- *
597
- * This method collects all form field values, creates hidden input elements for each field,
598
- * appends them to a container inside the native form, and then triggers the native
599
- * `requestSubmit()` method to submit the form.
627
+ * It retrieves the value of a form field element.
600
628
  *
601
- * The method ensures that the form data is available in the native form for submission,
602
- * which is useful when `useNativeForm` is enabled.
603
- *
604
- * @returns {Promise<void>} Resolves when the form submission process is complete.
629
+ * @param {HTMLElement} element - The form field element.
630
+ * @returns {unknown} The value of the form field element.
605
631
  */
606
- async submitWithFormData() {
607
- if (!this.useNativeForm)
608
- return;
609
- const data = await this.getValue();
610
- for (const dataKey in data) {
611
- const hiddenInput = tryGetDocument.tryGetDocument().createElement('input');
612
- hiddenInput.type = 'hidden';
613
- hiddenInput.name = dataKey;
614
- hiddenInput.value = data[dataKey];
615
- this.nativeFormRenderer.getNativeFormRef().append(hiddenInput);
616
- }
617
- this.nativeFormRenderer.getNativeFormRef().requestSubmit();
618
- }
619
- registerFormResetChangeManager() {
620
- this.formEventsObserver = new observer.Observer(this.canAcceptFormResetEvent.bind(this), this.handleResetEvents.bind(this));
621
- changeManager.ChangeManager.register(staticSubjectTitle.FORM_RESET, this.formEventsObserver);
622
- }
623
- canAcceptFormResetEvent(payload) {
624
- return this.isElementInCurrentForm(payload.host);
625
- }
626
- async handleResetEvents() {
627
- await this.reset();
628
- this.resetEventEmitter.emit();
629
- }
630
- registerFormFieldPendingValidChangeManager() {
631
- this.formFieldPendingValidObserver = new observer.Observer(this.canAcceptFormFieldPendingValid.bind(this), this.handleFieldPendingValid.bind(this));
632
- changeManager.ChangeManager.register(staticSubjectTitle.FORM_FIELD_PENDING_VALID_CHANGE, this.formFieldPendingValidObserver);
633
- }
634
- canAcceptFormFieldPendingValid(payload) {
635
- return this.isElementInCurrentForm(payload.host);
636
- }
637
- handleFieldPendingValid(payload) {
638
- if (typeof payload.detail === 'boolean') {
639
- this.pendingValidFieldPathMap.delete(payload.host);
640
- }
641
- else {
642
- this.pendingValidFieldPathMap.set(payload.host, payload.host.dataset['vegaForm']);
643
- }
644
- }
645
- isElementInCurrentForm(element) {
646
- return this.invalidFieldPathMap.has(element) || ui.isParent(element, this.host);
632
+ getFormFieldValue(element) {
633
+ return typeof element['value'] === 'undefined'
634
+ ? // use element.getAttribute since the value property is not available in unit testing
635
+ element.getAttribute('value')
636
+ : element['value'];
647
637
  }
638
+ /**
639
+ * It handles the validation of a child form field element.
640
+ *
641
+ * @param {HTMLElement} element - The form field element to validate.
642
+ * @param {boolean | 'rule'} showError - Whether to show error messages.
643
+ * @returns {Promise<EvaluateResultBase>} The validation result.
644
+ */
648
645
  async handleChildFormFieldElementValid(element, showError) {
649
646
  const subject = domNodeSubjectObserverFactory.domNodeSubjectFactory.getSubject(element, vegaInternalEventId.VegaInternalValid);
650
647
  const { isValid, message } = await new Promise((resolve) => {
@@ -661,6 +658,303 @@ const VegaForm = class {
661
658
  });
662
659
  return { isValid, message };
663
660
  }
661
+ }
662
+ __decorate$2([
663
+ globalSlimmerRegistry.MapToComponentField()
664
+ ], VegaFormFieldController.prototype, "host", void 0);
665
+ __decorate$2([
666
+ globalSlimmerRegistry.MapToComponentField({ writable: true })
667
+ ], VegaFormFieldController.prototype, "isValid", void 0);
668
+ __decorate$2([
669
+ globalSlimmerRegistry.MapToComponentField({ writable: true })
670
+ ], VegaFormFieldController.prototype, "isTouched", void 0);
671
+ __decorate$2([
672
+ globalSlimmerRegistry.InjectVegaSlimmer()
673
+ ], VegaFormFieldController.prototype, "childNotifyObserver", void 0);
674
+ __decorate$2([
675
+ globalSlimmerRegistry.InjectVegaSlimmer()
676
+ ], VegaFormFieldController.prototype, "childNodeValueChangeObserver", void 0);
677
+ __decorate$2([
678
+ globalSlimmerRegistry.MapToComponentMethod('connectedCallback')
679
+ ], VegaFormFieldController.prototype, "connectedCallback", null);
680
+ __decorate$2([
681
+ globalSlimmerRegistry.MapToComponentMethod('disconnectedCallback')
682
+ ], VegaFormFieldController.prototype, "disconnectedCallback", null);
683
+ __decorate$2([
684
+ globalSlimmerRegistry.MapToComponentMethod('getValue')
685
+ ], VegaFormFieldController.prototype, "getValue", null);
686
+ __decorate$2([
687
+ globalSlimmerRegistry.MapToComponentMethod('setValue')
688
+ ], VegaFormFieldController.prototype, "setValue", null);
689
+ __decorate$2([
690
+ globalSlimmerRegistry.MapToComponentMethod('valid')
691
+ ], VegaFormFieldController.prototype, "valid", null);
692
+
693
+ var __decorate$1 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
694
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
695
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
696
+ 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;
697
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
698
+ };
699
+ /**
700
+ * Reset controller for handling form reset events in the VegaForm component.
701
+ */
702
+ class VegaFormResetController extends globalSlimmerRegistry.VegaSlimmer {
703
+ /**
704
+ * Component lifecycle - [connectedCallback]
705
+ */
706
+ connectedCallback() {
707
+ this.registerFormResetChangeManager();
708
+ }
709
+ /**
710
+ * Component lifecycle - [disconnectedCallback]
711
+ */
712
+ disconnectedCallback() {
713
+ this.unregisterFormResetChangeManager();
714
+ }
715
+ /**
716
+ * @inheritDoc
717
+ */
718
+ async reset(defaultValueMap = {}, option) {
719
+ await this.vegaFormFieldController.navigateVegaFormChildren(async (element, isForm) => {
720
+ const formFieldName = this.vegaFormFieldController.getFormFieldName(element);
721
+ if (isForm) {
722
+ await element.reset(defaultValueMap[formFieldName] || {}, option);
723
+ }
724
+ }, option);
725
+ changeManager.ChangeManager.notify(staticSubjectTitle.FORM_RESET_OPERATION_TRIGGERED, {
726
+ host: this.host,
727
+ defaultValueMap,
728
+ option,
729
+ });
730
+ this.vegaFormFieldController.setIsTouched(false);
731
+ }
732
+ /**
733
+ * Registers the form reset event observer with the ChangeManager.
734
+ */
735
+ registerFormResetChangeManager() {
736
+ var _a;
737
+ const outerForm = (_a = ui.findParent(this.host, 'vega-form', { outerMost: true })) !== null && _a !== void 0 ? _a : this.host;
738
+ this.formResetEventObserver = new observer.Observer(this.canAcceptFormResetEvent.bind(this), this.handleResetEvents.bind(this));
739
+ changeManager.ChangeManager.register(domNodeSubjectObserverFactory.domNodeSubjectFactory.getSubject(outerForm, vegaInternalEventId.VegaInternalFormReset), this.formResetEventObserver);
740
+ }
741
+ /**
742
+ * Unregister the form reset event observer from the ChangeManager.
743
+ */
744
+ unregisterFormResetChangeManager() {
745
+ var _a;
746
+ const outerForm = (_a = ui.findParent(this.host, 'vega-form', { outerMost: true })) !== null && _a !== void 0 ? _a : this.host;
747
+ changeManager.ChangeManager.unregister(domNodeSubjectObserverFactory.domNodeSubjectFactory.getSubject(outerForm, vegaInternalEventId.VegaInternalFormReset), this.formResetEventObserver);
748
+ }
749
+ /**
750
+ * Can accept form reset event.
751
+ *
752
+ * @param {FormEventsPayload} payload - The form events payload.
753
+ * @returns {boolean} True if the event can be accepted, false otherwise.
754
+ */
755
+ canAcceptFormResetEvent(payload) {
756
+ return this.vegaFormFieldController.isElementInCurrentForm(payload.host);
757
+ }
758
+ /**
759
+ * Handles reset events by resetting the form and emitting a reset event.
760
+ */
761
+ async handleResetEvents() {
762
+ await this.host.reset();
763
+ this.resetEventEmitter.emit();
764
+ }
765
+ }
766
+ __decorate$1([
767
+ globalSlimmerRegistry.MapToComponentField()
768
+ ], VegaFormResetController.prototype, "host", void 0);
769
+ __decorate$1([
770
+ globalSlimmerRegistry.MapToComponentField()
771
+ ], VegaFormResetController.prototype, "vegaFormFieldController", void 0);
772
+ __decorate$1([
773
+ globalSlimmerRegistry.MapToComponentField()
774
+ ], VegaFormResetController.prototype, "resetEventEmitter", void 0);
775
+ __decorate$1([
776
+ globalSlimmerRegistry.MapToComponentMethod('connectedCallback')
777
+ ], VegaFormResetController.prototype, "connectedCallback", null);
778
+ __decorate$1([
779
+ globalSlimmerRegistry.MapToComponentMethod('disconnectedCallback')
780
+ ], VegaFormResetController.prototype, "disconnectedCallback", null);
781
+ __decorate$1([
782
+ globalSlimmerRegistry.MapToComponentMethod('reset')
783
+ ], VegaFormResetController.prototype, "reset", null);
784
+
785
+ const vegaFormCss = ":host{display:block}";
786
+
787
+ var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
788
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
789
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
790
+ r = Reflect.decorate(decorators, target, key, desc);
791
+ else
792
+ for (var i = decorators.length - 1; i >= 0; i--)
793
+ if (d = decorators[i])
794
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
795
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
796
+ };
797
+ const VegaForm = class {
798
+ constructor(hostRef) {
799
+ index.registerInstance(this, hostRef);
800
+ this.vegaValidate = index.createEvent(this, "vegaValidate", 7);
801
+ this.validate = index.createEvent(this, "validate", 7);
802
+ this.vegaFormSubmit = index.createEvent(this, "vegaFormSubmit", 7);
803
+ this.formSubmit = index.createEvent(this, "formSubmit", 7);
804
+ this.vegaFormReset = index.createEvent(this, "vegaFormReset", 7);
805
+ this.formReset = index.createEvent(this, "formReset", 7);
806
+ this.globalSlimmers = {};
807
+ this.submitEventEmitter = eventEmitSlimmer.createEventEmitSlimmer(VegaForm, domNodeSubjectObserverFactory.VegaFormSubmit);
808
+ this.resetEventEmitter = eventEmitSlimmer.createEventEmitSlimmer(VegaForm, domNodeSubjectObserverFactory.VegaFormReset);
809
+ this.validateEventEmitter = eventEmitSlimmer.createEventEmitSlimmer(VegaForm, domNodeSubjectObserverFactory.VegaValidate);
810
+ this.disableBlurValidationNotifySlimmer = subStateNotifySlimmer.createSubStateNotifySlimmer(VegaForm, 'disableBlurValidation', 'watchDisableBlurValidation');
811
+ this.stateController = new VegaFormNestStateController();
812
+ this.childEventPrevent = new childNodesEventPreventSlimmer.ChildNodesEventPreventSlimmer([domNodeSubjectObserverFactory.VegaFormSubmit, domNodeSubjectObserverFactory.VegaFormReset], () => this.host.querySelector('vega-form'), {
813
+ customPreventHandle: (e) => {
814
+ e.stopPropagation();
815
+ },
816
+ });
817
+ this.childFormValidateEventPrevent = new childNodesEventPreventSlimmer.ChildNodesEventPreventSlimmer([domNodeSubjectObserverFactory.VegaValidate], () => this.host, {
818
+ customPreventHandle: (e) => {
819
+ e.stopPropagation();
820
+ },
821
+ });
822
+ this.vegaComponentUsageRuntimeMetricsSlimmer = new componentUsageRuntimeMetrics.VegaComponentUsageRuntimeMetricsSlimmer();
823
+ this.vegaFormFieldValidationStateController = new VegaFormFieldValidationStateController();
824
+ this.nativeFormRenderer = new NativeFormRenderer();
825
+ this.vegaFormSubmitController = new VegaFormSubmitController();
826
+ this.vegaFormResetController = new VegaFormResetController();
827
+ this.vegaFormFieldController = new VegaFormFieldController();
828
+ /**
829
+ * Indicates whether the current form-controlled elements are valid.
830
+ *
831
+ * Form-controlled elements are considered for validation if they
832
+ * have the `data-vega-form` property.
833
+ *
834
+ * Disabled and invisible elements are excluded from validation.
835
+ *
836
+ * If the value is `undefined`, it means there are no
837
+ * form-controlled elements that can be validated.
838
+ *
839
+ * **Additional Notes:**
840
+ * 1. When depending on `isValid` for form validation, it is advised
841
+ * not to modify the following properties of the monitored DOM:
842
+ * - `disabled` property
843
+ * - Element visibility style
844
+ * 2. As this property relies heavily on the `VegaValidate` event emitted,
845
+ * it is highly recommended to enable auto-validation for all
846
+ * form-controlled elements to ensure that the value reflects
847
+ * the most up-to-date form validation status.
848
+ *
849
+ * @vegaVersion 1.3.0
850
+ */
851
+ /* eslint-disable-next-line @stencil/strict-mutable */
852
+ this.isValid = null;
853
+ /**
854
+ * Indicates whether the value of any current
855
+ * form-controlled elements has been changed.
856
+ *
857
+ * 1. When the value of any form-controlled element is changed,
858
+ * this parameter is set to `true`.
859
+ * 2. When resetting the form, this parameter is set to `false`.
860
+ * 3. When invoking the `setValue` method, this parameter is set to `false`.
861
+ *
862
+ * @vegaVersion 1.3.0
863
+ */
864
+ /* eslint-disable-next-line @stencil/strict-mutable */
865
+ this.isTouched = false;
866
+ /**
867
+ * Specifies whether form validation should be disabled on blur events of form elements.
868
+ *
869
+ * - This helps prevent validation on blur when clicking Submit inside an input,
870
+ * avoiding error messages that shift the button and block the click.
871
+ * - For nested forms, the parent form will override this property
872
+ * to ensure consistent validation behavior.
873
+ *
874
+ * @vegaVersion 2.47.0
875
+ */
876
+ /* eslint-disable-next-line @stencil/strict-mutable */
877
+ this.disableBlurValidation = false;
878
+ /**
879
+ * Determines whether the `vega-form` content is wrapped in a native HTML <form> element.
880
+ *
881
+ * @vegaVersion 2.64.0
882
+ */
883
+ this.useNativeForm = false;
884
+ /**
885
+ * Specifies the HTTP method used for form submission.
886
+ * This property takes effect only when {@link useNativeForm} is set to `true`.
887
+ *
888
+ * @vegaVersion 2.64.0
889
+ */
890
+ this.method = 'get';
891
+ }
892
+ watchIsValid() {
893
+ this.validateEventEmitter.emit(this.isValid);
894
+ changeManager.ChangeManager.notify(staticSubjectTitle.FORM_ELEMENT_VALIDATE, { host: this.host, detail: this.isValid });
895
+ }
896
+ watchDisableBlurValidation() {
897
+ }
898
+ /**
899
+ * Invoke this method asynchronously to retrieve the validation result for
900
+ * all the vega field elements nested within the `vega-form`.
901
+ *
902
+ * If an element is a `vega-form` itself, it will recursively
903
+ * invoke its `valid()` method.
904
+ *
905
+ * @param {boolean | 'rule'} showError determine whether the validation result should be reflected in UI
906
+ * @return {Promise<FormValidateResult> } validation result
907
+ * @vegaVersion 1.3.0
908
+ */
909
+ async valid(showError = true) {
910
+ return placeholder.methodPlaceholder(showError);
911
+ }
912
+ /**
913
+ * Invoke this method asynchronously to retrieve the values for
914
+ * all the available vega field elements nested within the `vega-form`.
915
+ *
916
+ * @param {FormControlOption} [option] form control option to skip disabled/invisible components
917
+ * @return {Promise<T>} object with key and field value as key-value pair
918
+ * @vegaVersion 1.3.0
919
+ */
920
+ async getValue(option) {
921
+ return placeholder.methodPlaceholder(option);
922
+ }
923
+ /**
924
+ * Invoke this method to prefill the `vega-form` with the given value.
925
+ *
926
+ * This action will also set the `isTouched` property to `false`.
927
+ *
928
+ * @param value to prefill into the vega-form
929
+ * @param {FormControlOption} [option] form control option to skip disabled/invisible components
930
+ * @vegaVersion 1.3.0
931
+ */
932
+ async setValue(value, option) {
933
+ }
934
+ /**
935
+ * Invoke this method to reset the vega field elements in the form to
936
+ * the default value provided, or an empty string if
937
+ * no default value is found.
938
+ *
939
+ * @param defaultValueMap map of the vega form field name to default value
940
+ * @param {FormControlOption} [option] form control option to skip disabled/invisible components
941
+ *
942
+ * @vegaVersion 1.3.0
943
+ */
944
+ async reset(defaultValueMap = {}, option) {
945
+ }
946
+ /**
947
+ * Invoke this method to set validation states on specific form fields.
948
+ *
949
+ * @param {VegaFormFieldValidationState[]} states - An array of validation error objects.
950
+ *
951
+ * @vegaVersion 2.59.0
952
+ */
953
+ async setValidationStates(states) {
954
+ }
955
+ render() {
956
+ return component.sanitizeVegaComponent(index.h(index.Host, null, this.useNativeForm ? this.nativeFormRenderer.render() : index.h("slot", null)), this.host);
957
+ }
664
958
  get host() { return index.getElement(this); }
665
959
  static get watchers() { return {
666
960
  "isValid": ["watchIsValid"],
@@ -693,19 +987,22 @@ __decorate([
693
987
  ], VegaForm.prototype, "childFormValidateEventPrevent", void 0);
694
988
  __decorate([
695
989
  globalSlimmerRegistry.InjectVegaSlimmer()
696
- ], VegaForm.prototype, "childNotifyObserver", void 0);
990
+ ], VegaForm.prototype, "vegaComponentUsageRuntimeMetricsSlimmer", void 0);
991
+ __decorate([
992
+ globalSlimmerRegistry.InjectVegaSlimmer()
993
+ ], VegaForm.prototype, "vegaFormFieldValidationStateController", void 0);
697
994
  __decorate([
698
995
  globalSlimmerRegistry.InjectVegaSlimmer()
699
- ], VegaForm.prototype, "childNodeValueChangeObserver", void 0);
996
+ ], VegaForm.prototype, "nativeFormRenderer", void 0);
700
997
  __decorate([
701
998
  globalSlimmerRegistry.InjectVegaSlimmer()
702
- ], VegaForm.prototype, "vegaComponentUsageRuntimeMetricsSlimmer", void 0);
999
+ ], VegaForm.prototype, "vegaFormSubmitController", void 0);
703
1000
  __decorate([
704
1001
  globalSlimmerRegistry.InjectVegaSlimmer()
705
- ], VegaForm.prototype, "vegaFormFieldValidationStateController", void 0);
1002
+ ], VegaForm.prototype, "vegaFormResetController", void 0);
706
1003
  __decorate([
707
1004
  globalSlimmerRegistry.InjectVegaSlimmer()
708
- ], VegaForm.prototype, "nativeFormRenderer", void 0);
1005
+ ], VegaForm.prototype, "vegaFormFieldController", void 0);
709
1006
  VegaForm.style = vegaFormCss;
710
1007
 
711
1008
  exports.vega_form = VegaForm;