@globalpayments/vega 2.96.0 → 2.97.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 (426) hide show
  1. package/dist/cjs/{app-globals-38afea36.js → app-globals-3f57f7b9.js} +10 -10
  2. package/dist/cjs/{code-block-4126dc3b.js → code-block-28a7732e.js} +7 -1
  3. package/dist/cjs/{component-value-history-controller-slimmer.abstract-38ba956e.js → component-value-history-controller-slimmer.abstract-50cdba6e.js} +3 -3
  4. package/dist/cjs/{content-state-50e8a03c.js → content-state-e2ab0f06.js} +2 -2
  5. package/dist/cjs/{date-required-rule-4ab06a82.js → date-required-rule-5250f26d.js} +1 -1
  6. package/dist/cjs/{design-token-d3d12fa0.js → design-token-74674ee7.js} +3 -3
  7. package/dist/cjs/{element-appender-slimmer-7773fdab.js → element-appender-slimmer-ccb2e3c2.js} +2 -2
  8. package/dist/cjs/{form-field-controller-slimmer-d638ba12.js → form-field-controller-slimmer-58621b5e.js} +5 -14
  9. package/dist/cjs/form-field-key-8d5edf75.js +25 -0
  10. package/dist/cjs/{image-annotation-action-89363de8.js → image-annotation-action-b54dc669.js} +2 -2
  11. package/dist/cjs/{image-extension-c881c454.js → image-extension-1e3eeaa3.js} +2 -2
  12. package/dist/cjs/index.cjs.js +17 -17
  13. package/dist/cjs/{inject-keyboard-manager-5a105612.js → inject-keyboard-manager-6a6f5c9f.js} +1 -1
  14. package/dist/cjs/{internal-calendar-period-factory-b76006f7.js → internal-calendar-period-factory-dfcdd3f6.js} +1 -1
  15. package/dist/cjs/{internal-translation-controller-eb02c3b1.js → internal-translation-controller-1dac2df8.js} +7 -0
  16. package/dist/cjs/{keyboard-manager-ca76d4dc.js → keyboard-manager-c56033b1.js} +1 -1
  17. package/dist/cjs/{keyboard-manager-slimmer-a1223714.js → keyboard-manager-slimmer-7043a106.js} +1 -1
  18. package/dist/cjs/{link-extension-b7f99a52.js → link-extension-71c27ff3.js} +3 -3
  19. package/dist/cjs/loader.cjs.js +12 -12
  20. package/dist/cjs/{month-view-generator-876c50d4.js → month-view-generator-7b704a80.js} +1 -1
  21. package/dist/cjs/{public-rules-72894208.js → public-rules-55e34d2e.js} +7 -7
  22. package/dist/cjs/{range-95d41dea.js → range-eebe0e3c.js} +1 -1
  23. package/dist/cjs/{responsive-format-facade-25e9f30d.js → responsive-format-facade-493d1763.js} +1 -1
  24. package/dist/cjs/{rich-text-editor-required-rule-4d6d2493.js → rich-text-editor-required-rule-4fdee376.js} +1 -1
  25. package/dist/cjs/{split-cell-operation-70be116d.js → split-cell-operation-51097409.js} +3 -3
  26. package/dist/cjs/{state-border-formatter-f1ce0f3b.js → state-border-formatter-711c7aaa.js} +1 -1
  27. package/dist/cjs/{string-format-strategy.abstract-b22f7754.js → string-format-strategy.abstract-b61bdcbd.js} +1 -1
  28. package/dist/cjs/{string-input-formatter-slimmer-d2c248f7.js → string-input-formatter-slimmer-18d45942.js} +1 -1
  29. package/dist/cjs/{string-mask-strategy-fc01a500.js → string-mask-strategy-ad3fa0ac.js} +2 -2
  30. package/dist/cjs/{style-formatter-73205450.js → style-formatter-8f711cb0.js} +2 -2
  31. package/dist/cjs/{time-required-rule-12d2f394.js → time-required-rule-87417359.js} +1 -1
  32. package/dist/cjs/{token-extension-eb828948.js → token-extension-608bbf7b.js} +8 -8
  33. package/dist/cjs/{translation-slimmer-9099f56c.js → translation-slimmer-77c7f37d.js} +1 -1
  34. package/dist/cjs/{type-guard-f354af8b.js → type-guard-a57ef3ac.js} +1 -1
  35. package/dist/cjs/{valid-credit-card-number-rule-8d370163.js → valid-credit-card-number-rule-4c0a3040.js} +1 -1
  36. package/dist/cjs/vega-accordion.cjs.entry.js +6 -6
  37. package/dist/cjs/vega-app-header-button.cjs.entry.js +5 -5
  38. package/dist/cjs/vega-backdrop.cjs.entry.js +63 -8
  39. package/dist/cjs/vega-box.cjs.entry.js +6 -6
  40. package/dist/cjs/vega-button-circle.cjs.entry.js +5 -5
  41. package/dist/cjs/vega-button.cjs.entry.js +3 -3
  42. package/dist/cjs/vega-calendar_5.cjs.entry.js +7 -7
  43. package/dist/cjs/vega-card.cjs.entry.js +5 -5
  44. package/dist/cjs/vega-carousel.cjs.entry.js +3 -3
  45. package/dist/cjs/vega-checkbox_2.cjs.entry.js +20 -3
  46. package/dist/cjs/vega-chip.cjs.entry.js +5 -5
  47. package/dist/cjs/vega-code-block.cjs.entry.js +8 -8
  48. package/dist/cjs/vega-color-picker.cjs.entry.js +11 -2
  49. package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +12 -3
  50. package/dist/cjs/vega-color-swatch.cjs.entry.js +2 -2
  51. package/dist/cjs/vega-combo-box.cjs.entry.js +17 -8
  52. package/dist/cjs/vega-date-picker_2.cjs.entry.js +22 -13
  53. package/dist/cjs/vega-dialog_2.cjs.entry.js +3 -3
  54. package/dist/cjs/vega-divider.cjs.entry.js +5 -5
  55. package/dist/cjs/vega-dropdown_5.cjs.entry.js +7 -7
  56. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  57. package/dist/cjs/vega-field-label.cjs.entry.js +2 -2
  58. package/dist/cjs/vega-file-uploader.cjs.entry.js +12 -3
  59. package/dist/cjs/vega-flag-icon.cjs.entry.js +5 -5
  60. package/dist/cjs/vega-flex.cjs.entry.js +6 -6
  61. package/dist/cjs/vega-font.cjs.entry.js +5 -5
  62. package/dist/cjs/vega-form.cjs.entry.js +28 -25
  63. package/dist/cjs/vega-grid.cjs.entry.js +5 -5
  64. package/dist/cjs/vega-icon.cjs.entry.js +5 -5
  65. package/dist/cjs/vega-image-uploader.cjs.entry.js +14 -5
  66. package/dist/cjs/vega-input-credit-card.cjs.entry.js +16 -7
  67. package/dist/cjs/vega-input-numeric.cjs.entry.js +14 -5
  68. package/dist/cjs/vega-input-passcode.cjs.entry.js +14 -5
  69. package/dist/cjs/vega-input-phone-number.cjs.entry.js +13 -4
  70. package/dist/cjs/vega-input-range.cjs.entry.js +12 -3
  71. package/dist/cjs/vega-input-select.cjs.entry.js +14 -5
  72. package/dist/cjs/vega-input.cjs.entry.js +9 -7
  73. package/dist/cjs/vega-left-nav_5.cjs.entry.js +71 -11
  74. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +3 -3
  75. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +2 -2
  76. package/dist/cjs/vega-pagination.cjs.entry.js +4 -4
  77. package/dist/cjs/vega-popover_2.cjs.entry.js +8 -8
  78. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +3 -3
  79. package/dist/cjs/vega-radio_2.cjs.entry.js +17 -5
  80. package/dist/cjs/vega-rich-text-content.cjs.entry.js +32 -9
  81. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +1581 -428
  82. package/dist/cjs/vega-rich-text-find-replace-panel.cjs.entry.js +1 -1
  83. package/dist/cjs/vega-rich-text-special-characters-panel.cjs.entry.js +5 -5
  84. package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +8 -8
  85. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +13 -4
  86. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +11 -2
  87. package/dist/cjs/vega-sidenav_3.cjs.entry.js +3 -3
  88. package/dist/cjs/vega-signature-capture.cjs.entry.js +16 -7
  89. package/dist/cjs/vega-stepper.cjs.entry.js +12 -3
  90. package/dist/cjs/vega-table_11.cjs.entry.js +4 -4
  91. package/dist/cjs/vega-textarea.cjs.entry.js +12 -3
  92. package/dist/cjs/vega-time-picker_2.cjs.entry.js +18 -9
  93. package/dist/cjs/vega-toggle-switch.cjs.entry.js +12 -3
  94. package/dist/cjs/vega-tooltip_2.cjs.entry.js +6 -6
  95. package/dist/cjs/vega.cjs.js +12 -12
  96. package/dist/collection/components/vega-backdrop/slimmers/controller/vega-backdrop-visible-controller.js +63 -8
  97. package/dist/collection/components/vega-checkbox/vega-checkbox-group/vega-checkbox-group.js +33 -1
  98. package/dist/collection/components/vega-checkbox/vega-checkbox.js +34 -2
  99. package/dist/collection/components/vega-color-picker/vega-color-picker.js +33 -1
  100. package/dist/collection/components/vega-color-swatch/vega-color-swatch-picker/vega-color-swatch-picker.js +33 -1
  101. package/dist/collection/components/vega-combo-box/vega-combo-box.js +33 -1
  102. package/dist/collection/components/vega-date-picker/vega-date-picker.js +33 -1
  103. package/dist/collection/components/vega-file-uploader/vega-file-uploader.js +33 -1
  104. package/dist/collection/components/vega-form/slimmers/controllers/vega-form-field-controller.js +9 -9
  105. package/dist/collection/components/vega-form/slimmers/controllers/vega-form-field-validation-state-controller.js +5 -5
  106. package/dist/collection/components/vega-form/slimmers/renderers/native-form-renderer.js +4 -1
  107. package/dist/collection/components/vega-form/vega-form.js +32 -0
  108. package/dist/collection/components/vega-image-uploader/vega-image-uploader.js +33 -1
  109. package/dist/collection/components/vega-input/vega-input.js +5 -4
  110. package/dist/collection/components/vega-input-credit-card/vega-input-credit-card.js +34 -2
  111. package/dist/collection/components/vega-input-numeric/vega-input-numeric.js +33 -1
  112. package/dist/collection/components/vega-input-passcode/vega-input-passcode.js +33 -1
  113. package/dist/collection/components/vega-input-phone-number/vega-input-phone-number.js +33 -1
  114. package/dist/collection/components/vega-input-range/vega-input-range.js +33 -1
  115. package/dist/collection/components/vega-input-select/vega-input-select.js +33 -1
  116. package/dist/collection/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-backdrop-manager.js +17 -1
  117. package/dist/collection/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-open-state-controller.js +48 -5
  118. package/dist/collection/components/vega-radio/vega-radio-group/vega-radio-group.js +18 -3
  119. package/dist/collection/components/vega-rich-text-editor/constants/constant.js +3 -0
  120. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/link-wrapper-renderer.js +26 -3
  121. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/base-handler.js +1 -1
  122. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/keyboard-link-handler.js +297 -0
  123. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/user-input-controller.js +13 -0
  124. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +8 -2
  125. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +33 -1
  126. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/controllers/link-editor-controller.js +398 -0
  127. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/controllers/link-editor-state-manager.js +111 -0
  128. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/controllers/link-type-config-controller.js +173 -0
  129. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/renderers/link-type-handler.js +49 -0
  130. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/renderers/vega-rich-text-link-editor-renderer.js +114 -106
  131. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/utils/link-url-normalizer.js +80 -0
  132. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/vega-rich-text-link-editor.js +44 -1
  133. package/dist/collection/components/vega-selection-chip/vega-selection-chip-group/vega-selection-chip-group.js +33 -1
  134. package/dist/collection/components/vega-selection-tile/vega-selection-tile-group/vega-selection-tile-group.js +33 -1
  135. package/dist/collection/components/vega-signature-capture/vega-signature-capture.js +33 -1
  136. package/dist/collection/components/vega-stepper/vega-stepper.js +34 -2
  137. package/dist/collection/components/vega-textarea/vega-textarea.js +34 -2
  138. package/dist/collection/components/vega-time-picker/vega-time-picker.js +33 -1
  139. package/dist/collection/components/vega-toggle-switch/vega-toggle-switch.js +34 -2
  140. package/dist/collection/helpers/slimmers/{field-error-controller-silmmer.js → form/field-error-controller-silmmer.js} +3 -3
  141. package/dist/collection/helpers/slimmers/{field-error-ui-controller-slimmer.js → form/field-error-ui-controller-slimmer.js} +9 -9
  142. package/dist/collection/helpers/slimmers/{form-field-controller-slimmer.js → form/form-field-controller-slimmer.js} +9 -18
  143. package/dist/collection/helpers/slimmers/{form-field-message-translator.js → form/form-field-message-translator.js} +1 -1
  144. package/dist/collection/helpers/slimmers/{form-field-state-controller-slimmer.js → form/form-field-state-controller-slimmer.js} +1 -1
  145. package/dist/collection/helpers/slimmers/{form-field-valid-invoke-slimmer.js → form/form-field-valid-invoke-slimmer.js} +2 -2
  146. package/dist/collection/helpers/slimmers/form/utils/form-field-key.js +20 -0
  147. package/dist/collection/helpers/translation/locales/en.js +7 -0
  148. package/dist/collection/helpers/validator/form-field-controller.js +5 -4
  149. package/dist/esm/{app-globals-d7b651c1.js → app-globals-d3991e53.js} +10 -10
  150. package/dist/esm/{code-block-0a88b481.js → code-block-8df86434.js} +5 -2
  151. package/dist/esm/{component-value-history-controller-slimmer.abstract-6846edfa.js → component-value-history-controller-slimmer.abstract-e4b95997.js} +3 -3
  152. package/dist/esm/{content-state-79ca99e5.js → content-state-c63fbeda.js} +2 -2
  153. package/dist/esm/{date-required-rule-b88e1650.js → date-required-rule-85334d0c.js} +1 -1
  154. package/dist/esm/{design-token-76bd217c.js → design-token-10ff79b5.js} +3 -3
  155. package/dist/esm/{element-appender-slimmer-73ad10ae.js → element-appender-slimmer-24be8e94.js} +2 -2
  156. package/dist/esm/{form-field-controller-slimmer-395c23e3.js → form-field-controller-slimmer-d8628837.js} +5 -14
  157. package/dist/esm/form-field-key-44ab39d0.js +22 -0
  158. package/dist/esm/{image-annotation-action-bb299ef1.js → image-annotation-action-fcceff95.js} +2 -2
  159. package/dist/esm/{image-extension-48a96f98.js → image-extension-3280bdb0.js} +2 -2
  160. package/dist/esm/index.js +17 -17
  161. package/dist/esm/{inject-keyboard-manager-86126b5b.js → inject-keyboard-manager-ea1aad5b.js} +1 -1
  162. package/dist/esm/{internal-calendar-period-factory-3a07dba0.js → internal-calendar-period-factory-7b294fb6.js} +1 -1
  163. package/dist/esm/{internal-translation-controller-16709132.js → internal-translation-controller-fac22598.js} +7 -0
  164. package/dist/esm/{keyboard-manager-a0c3e1cf.js → keyboard-manager-50da85d7.js} +1 -1
  165. package/dist/esm/{keyboard-manager-slimmer-f3f66c15.js → keyboard-manager-slimmer-1f7c8bfb.js} +1 -1
  166. package/dist/esm/{link-extension-09534514.js → link-extension-f92c06ef.js} +3 -3
  167. package/dist/esm/loader.js +12 -12
  168. package/dist/esm/{month-view-generator-fd0e1856.js → month-view-generator-a1a9a4ec.js} +1 -1
  169. package/dist/esm/{public-rules-5eb03ef0.js → public-rules-3695aaf7.js} +7 -7
  170. package/dist/esm/{range-d4deb7df.js → range-717d552d.js} +1 -1
  171. package/dist/esm/{responsive-format-facade-ced96b0b.js → responsive-format-facade-f19b601c.js} +1 -1
  172. package/dist/esm/{rich-text-editor-required-rule-5bbbce23.js → rich-text-editor-required-rule-2e39264a.js} +1 -1
  173. package/dist/esm/{split-cell-operation-7f3058ad.js → split-cell-operation-6c26af91.js} +3 -3
  174. package/dist/esm/{state-border-formatter-b680e922.js → state-border-formatter-bfda33aa.js} +1 -1
  175. package/dist/esm/{string-format-strategy.abstract-23faab71.js → string-format-strategy.abstract-1f4ff1b3.js} +1 -1
  176. package/dist/esm/{string-input-formatter-slimmer-4b4866a6.js → string-input-formatter-slimmer-68b2af39.js} +1 -1
  177. package/dist/esm/{string-mask-strategy-66586cd8.js → string-mask-strategy-bbbcdbef.js} +2 -2
  178. package/dist/esm/{style-formatter-f4e16af5.js → style-formatter-e9adc8f4.js} +2 -2
  179. package/dist/esm/{time-required-rule-6e80a9ab.js → time-required-rule-1ce2d0a0.js} +1 -1
  180. package/dist/esm/{token-extension-40c32bcc.js → token-extension-5082a4d2.js} +8 -8
  181. package/dist/esm/{translation-slimmer-21748a0e.js → translation-slimmer-ee0f0e76.js} +1 -1
  182. package/dist/esm/{type-guard-ec5e8628.js → type-guard-f2624334.js} +1 -1
  183. package/dist/esm/{valid-credit-card-number-rule-ca5a47d6.js → valid-credit-card-number-rule-60212b1d.js} +1 -1
  184. package/dist/esm/vega-accordion.entry.js +6 -6
  185. package/dist/esm/vega-app-header-button.entry.js +5 -5
  186. package/dist/esm/vega-backdrop.entry.js +63 -8
  187. package/dist/esm/vega-box.entry.js +6 -6
  188. package/dist/esm/vega-button-circle.entry.js +5 -5
  189. package/dist/esm/vega-button.entry.js +3 -3
  190. package/dist/esm/vega-calendar_5.entry.js +7 -7
  191. package/dist/esm/vega-card.entry.js +5 -5
  192. package/dist/esm/vega-carousel.entry.js +3 -3
  193. package/dist/esm/vega-checkbox_2.entry.js +20 -3
  194. package/dist/esm/vega-chip.entry.js +5 -5
  195. package/dist/esm/vega-code-block.entry.js +8 -8
  196. package/dist/esm/vega-color-picker.entry.js +11 -2
  197. package/dist/esm/vega-color-swatch-picker.entry.js +12 -3
  198. package/dist/esm/vega-color-swatch.entry.js +2 -2
  199. package/dist/esm/vega-combo-box.entry.js +17 -8
  200. package/dist/esm/vega-date-picker_2.entry.js +22 -13
  201. package/dist/esm/vega-dialog_2.entry.js +3 -3
  202. package/dist/esm/vega-divider.entry.js +5 -5
  203. package/dist/esm/vega-dropdown_5.entry.js +7 -7
  204. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  205. package/dist/esm/vega-field-label.entry.js +2 -2
  206. package/dist/esm/vega-file-uploader.entry.js +12 -3
  207. package/dist/esm/vega-flag-icon.entry.js +5 -5
  208. package/dist/esm/vega-flex.entry.js +6 -6
  209. package/dist/esm/vega-font.entry.js +5 -5
  210. package/dist/esm/vega-form.entry.js +28 -25
  211. package/dist/esm/vega-grid.entry.js +5 -5
  212. package/dist/esm/vega-icon.entry.js +5 -5
  213. package/dist/esm/vega-image-uploader.entry.js +14 -5
  214. package/dist/esm/vega-input-credit-card.entry.js +16 -7
  215. package/dist/esm/vega-input-numeric.entry.js +14 -5
  216. package/dist/esm/vega-input-passcode.entry.js +14 -5
  217. package/dist/esm/vega-input-phone-number.entry.js +13 -4
  218. package/dist/esm/vega-input-range.entry.js +12 -3
  219. package/dist/esm/vega-input-select.entry.js +14 -5
  220. package/dist/esm/vega-input.entry.js +9 -7
  221. package/dist/esm/vega-left-nav_5.entry.js +71 -11
  222. package/dist/esm/vega-loader-wrapper_2.entry.js +3 -3
  223. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +2 -2
  224. package/dist/esm/vega-pagination.entry.js +4 -4
  225. package/dist/esm/vega-popover_2.entry.js +8 -8
  226. package/dist/esm/vega-progress-tracker_2.entry.js +3 -3
  227. package/dist/esm/vega-radio_2.entry.js +17 -5
  228. package/dist/esm/vega-rich-text-content.entry.js +32 -9
  229. package/dist/esm/vega-rich-text-editor_4.entry.js +1581 -428
  230. package/dist/esm/vega-rich-text-find-replace-panel.entry.js +1 -1
  231. package/dist/esm/vega-rich-text-special-characters-panel.entry.js +5 -5
  232. package/dist/esm/vega-rich-text-table-properties_3.entry.js +8 -8
  233. package/dist/esm/vega-selection-chip_2.entry.js +13 -4
  234. package/dist/esm/vega-selection-tile_2.entry.js +11 -2
  235. package/dist/esm/vega-sidenav_3.entry.js +3 -3
  236. package/dist/esm/vega-signature-capture.entry.js +16 -7
  237. package/dist/esm/vega-stepper.entry.js +12 -3
  238. package/dist/esm/vega-table_11.entry.js +4 -4
  239. package/dist/esm/vega-textarea.entry.js +12 -3
  240. package/dist/esm/vega-time-picker_2.entry.js +18 -9
  241. package/dist/esm/vega-toggle-switch.entry.js +12 -3
  242. package/dist/esm/vega-tooltip_2.entry.js +6 -6
  243. package/dist/esm/vega.js +12 -12
  244. package/dist/sri/vega-sri-manifest.json +314 -310
  245. package/dist/types/components/vega-backdrop/slimmers/controller/vega-backdrop-visible-controller.d.ts +21 -0
  246. package/dist/types/components/vega-checkbox/vega-checkbox-group/vega-checkbox-group.d.ts +9 -1
  247. package/dist/types/components/vega-checkbox/vega-checkbox.d.ts +9 -1
  248. package/dist/types/components/vega-color-picker/vega-color-picker.d.ts +9 -1
  249. package/dist/types/components/vega-color-swatch/vega-color-swatch-picker/vega-color-swatch-picker.d.ts +9 -1
  250. package/dist/types/components/vega-combo-box/vega-combo-box.d.ts +9 -1
  251. package/dist/types/components/vega-date-picker/vega-date-picker.d.ts +9 -1
  252. package/dist/types/components/vega-file-uploader/vega-file-uploader.d.ts +9 -1
  253. package/dist/types/components/vega-form/slimmers/controllers/vega-form-field-controller.d.ts +3 -2
  254. package/dist/types/components/vega-form/slimmers/renderers/native-form-renderer.d.ts +1 -0
  255. package/dist/types/components/vega-form/vega-form.d.ts +8 -0
  256. package/dist/types/components/vega-image-uploader/vega-image-uploader.d.ts +9 -1
  257. package/dist/types/components/vega-input/vega-input.d.ts +3 -2
  258. package/dist/types/components/vega-input-credit-card/vega-input-credit-card.d.ts +9 -1
  259. package/dist/types/components/vega-input-numeric/vega-input-numeric.d.ts +9 -1
  260. package/dist/types/components/vega-input-passcode/vega-input-passcode.d.ts +9 -1
  261. package/dist/types/components/vega-input-phone-number/vega-input-phone-number.d.ts +9 -1
  262. package/dist/types/components/vega-input-range/vega-input-range.d.ts +9 -1
  263. package/dist/types/components/vega-input-select/vega-input-select.d.ts +9 -1
  264. package/dist/types/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-backdrop-manager.d.ts +7 -0
  265. package/dist/types/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-open-state-controller.d.ts +17 -0
  266. package/dist/types/components/vega-radio/vega-radio-group/vega-radio-group.d.ts +5 -1
  267. package/dist/types/components/vega-rich-text-editor/constants/constant.d.ts +3 -0
  268. package/dist/types/components/vega-rich-text-editor/extensions/link/type.d.ts +34 -0
  269. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/base-handler.d.ts +4 -4
  270. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/keyboard-link-handler.d.ts +111 -0
  271. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/user-input-controller.d.ts +7 -0
  272. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +9 -1
  273. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/controllers/link-editor-controller.d.ts +149 -0
  274. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/controllers/link-editor-state-manager.d.ts +84 -0
  275. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/controllers/link-type-config-controller.d.ts +82 -0
  276. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/renderers/link-type-handler.d.ts +33 -0
  277. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/renderers/vega-rich-text-link-editor-renderer.d.ts +24 -17
  278. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/utils/link-url-normalizer.d.ts +37 -0
  279. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/types.d.ts +4 -0
  280. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/vega-rich-text-link-editor.d.ts +12 -0
  281. package/dist/types/components/vega-selection-chip/vega-selection-chip-group/vega-selection-chip-group.d.ts +9 -1
  282. package/dist/types/components/vega-selection-tile/vega-selection-tile-group/vega-selection-tile-group.d.ts +9 -1
  283. package/dist/types/components/vega-signature-capture/vega-signature-capture.d.ts +9 -1
  284. package/dist/types/components/vega-stepper/vega-stepper.d.ts +9 -1
  285. package/dist/types/components/vega-textarea/vega-textarea.d.ts +9 -1
  286. package/dist/types/components/vega-time-picker/vega-time-picker.d.ts +9 -1
  287. package/dist/types/components/vega-toggle-switch/vega-toggle-switch.d.ts +9 -1
  288. package/dist/types/components.d.ts +287 -4
  289. package/dist/types/helpers/slimmers/{field-error-controller-silmmer.d.ts → form/field-error-controller-silmmer.d.ts} +1 -1
  290. package/dist/types/helpers/slimmers/{field-error-ui-controller-slimmer.d.ts → form/field-error-ui-controller-slimmer.d.ts} +2 -2
  291. package/dist/types/helpers/slimmers/{form-field-controller-slimmer.d.ts → form/form-field-controller-slimmer.d.ts} +6 -14
  292. package/dist/types/helpers/slimmers/{form-field-message-translator.d.ts → form/form-field-message-translator.d.ts} +2 -2
  293. package/dist/types/helpers/slimmers/{form-field-state-controller-slimmer.d.ts → form/form-field-state-controller-slimmer.d.ts} +2 -2
  294. package/dist/types/helpers/slimmers/{form-field-valid-invoke-slimmer.d.ts → form/form-field-valid-invoke-slimmer.d.ts} +3 -3
  295. package/dist/types/helpers/slimmers/form/utils/form-field-key.d.ts +17 -0
  296. package/dist/types/helpers/translation/interface.d.ts +7 -0
  297. package/dist/types/helpers/validator/form-field-controller.d.ts +3 -3
  298. package/dist/vega/index.esm.js +1 -1
  299. package/dist/vega/p-040ea356.entry.js +1 -0
  300. package/dist/vega/p-046203cb.entry.js +1 -0
  301. package/dist/vega/p-0499e65a.entry.js +1 -0
  302. package/dist/vega/p-0809c651.js +1 -0
  303. package/dist/vega/{p-3c23ec90.js → p-09524fec.js} +1 -1
  304. package/dist/vega/{p-74f86ff9.entry.js → p-0cf3b5c1.entry.js} +1 -1
  305. package/dist/vega/p-10d43a80.entry.js +1 -0
  306. package/dist/vega/{p-3d6f761a.entry.js → p-1132a74e.entry.js} +1 -1
  307. package/dist/vega/{p-ba662fe5.js → p-12e8a1b2.js} +1 -1
  308. package/dist/vega/{p-55e0014a.js → p-1d5e05d9.js} +1 -1
  309. package/dist/vega/{p-3dee1e55.js → p-1e0a8fd3.js} +1 -1
  310. package/dist/vega/{p-919cddc3.js → p-1ea9ad9a.js} +1 -1
  311. package/dist/vega/p-21626b93.entry.js +1 -0
  312. package/dist/vega/p-21f608e8.entry.js +1 -0
  313. package/dist/vega/p-2540fd1c.entry.js +1 -0
  314. package/dist/vega/{p-9f201152.entry.js → p-26760c66.entry.js} +1 -1
  315. package/dist/vega/{p-892edf88.entry.js → p-2acf9b42.entry.js} +1 -1
  316. package/dist/vega/p-2bb60f89.js +1 -0
  317. package/dist/vega/{p-b1eb9ff0.js → p-2c2e8615.js} +1 -1
  318. package/dist/vega/p-2d158cbd.js +1 -0
  319. package/dist/vega/p-2d7388c9.entry.js +1 -0
  320. package/dist/vega/{p-b3a2ce06.entry.js → p-2eb8e167.entry.js} +1 -1
  321. package/dist/vega/{p-6a51d720.js → p-2ff4ae1c.js} +1 -1
  322. package/dist/vega/p-3488a3f1.entry.js +1 -0
  323. package/dist/vega/p-363ee8a5.entry.js +1 -0
  324. package/dist/vega/p-36c89520.entry.js +1 -0
  325. package/dist/vega/{p-e1737c8e.entry.js → p-3980dfa8.entry.js} +1 -1
  326. package/dist/vega/{p-14baa886.js → p-39c5054b.js} +1 -1
  327. package/dist/vega/p-3af5e87b.entry.js +1 -0
  328. package/dist/vega/{p-8db904dc.js → p-456f678b.js} +1 -1
  329. package/dist/vega/{p-6c9c2f8c.entry.js → p-461100b8.entry.js} +1 -1
  330. package/dist/vega/p-4c3a08be.entry.js +1 -0
  331. package/dist/vega/p-53fd3c41.entry.js +1 -0
  332. package/dist/vega/{p-6fcec7c7.entry.js → p-56417ec5.entry.js} +1 -1
  333. package/dist/vega/{p-9f11b579.js → p-5e37b041.js} +1 -1
  334. package/dist/vega/p-5f377954.js +1 -1
  335. package/dist/vega/{p-a0a58295.entry.js → p-5f96e741.entry.js} +1 -1
  336. package/dist/vega/p-6b76b572.entry.js +1 -0
  337. package/dist/vega/{p-75e33859.js → p-6c95a6a3.js} +1 -1
  338. package/dist/vega/p-703ac992.entry.js +1 -0
  339. package/dist/vega/p-71909102.js +1 -0
  340. package/dist/vega/{p-e1b57e8f.entry.js → p-72ab5cd5.entry.js} +1 -1
  341. package/dist/vega/{p-8720816e.js → p-781b7a54.js} +1 -1
  342. package/dist/vega/{p-7950f3e2.entry.js → p-81d4dfcb.entry.js} +1 -1
  343. package/dist/vega/p-8611465f.entry.js +1 -0
  344. package/dist/vega/{p-0d18368b.js → p-874e5624.js} +1 -1
  345. package/dist/vega/{p-c4564904.js → p-8e7932bc.js} +1 -1
  346. package/dist/vega/p-8ed3b2b6.entry.js +1 -0
  347. package/dist/vega/{p-1dfbc542.entry.js → p-8ff92914.entry.js} +1 -1
  348. package/dist/vega/{p-9bdc6e11.entry.js → p-92528dc9.entry.js} +1 -1
  349. package/dist/vega/p-9664e914.entry.js +1 -0
  350. package/dist/vega/p-98fc5821.entry.js +1 -0
  351. package/dist/vega/{p-6c7b6d45.js → p-9be02fa5.js} +1 -1
  352. package/dist/vega/p-9c4c474e.entry.js +1 -0
  353. package/dist/vega/{p-8354cff0.entry.js → p-a034dfc0.entry.js} +1 -1
  354. package/dist/vega/{p-e48a870f.entry.js → p-a484e32d.entry.js} +1 -1
  355. package/dist/vega/{p-b9e72de2.entry.js → p-a8174ad8.entry.js} +1 -1
  356. package/dist/vega/{p-49e1cf4d.entry.js → p-a91927eb.entry.js} +1 -1
  357. package/dist/vega/{p-2df5d59b.entry.js → p-abbceebf.entry.js} +1 -1
  358. package/dist/vega/{p-e4266b45.entry.js → p-ac94ba1b.entry.js} +1 -1
  359. package/dist/vega/{p-b775e51f.js → p-ae2abdfa.js} +1 -1
  360. package/dist/vega/{p-bb60e381.entry.js → p-aeb50cad.entry.js} +1 -1
  361. package/dist/vega/{p-a890d60b.entry.js → p-b00ec194.entry.js} +1 -1
  362. package/dist/vega/{p-f78944d7.entry.js → p-b3733762.entry.js} +1 -1
  363. package/dist/vega/p-b594a11c.entry.js +1 -0
  364. package/dist/vega/{p-b4e7c967.js → p-b622c455.js} +1 -1
  365. package/dist/vega/{p-1232b553.entry.js → p-b98ead05.entry.js} +1 -1
  366. package/dist/vega/{p-e5ff77f7.entry.js → p-c2277448.entry.js} +1 -1
  367. package/dist/vega/{p-ec5dee32.js → p-c29934ef.js} +1 -1
  368. package/dist/vega/p-c3646101.entry.js +1 -0
  369. package/dist/vega/p-ca270da3.entry.js +1 -0
  370. package/dist/vega/{p-b4c26035.entry.js → p-ccbe3f1b.entry.js} +1 -1
  371. package/dist/vega/{p-6cde45fc.js → p-cd69aeae.js} +1 -1
  372. package/dist/vega/{p-84b7a775.js → p-d25c1a48.js} +1 -1
  373. package/dist/vega/{p-5924adae.entry.js → p-d2cbcf5e.entry.js} +1 -1
  374. package/dist/vega/{p-96da7d30.entry.js → p-d3413a78.entry.js} +1 -1
  375. package/dist/vega/{p-f1974321.js → p-d609c3fd.js} +1 -1
  376. package/dist/vega/{p-3345d903.js → p-dad7d2ac.js} +1 -1
  377. package/dist/vega/{p-61ce8029.js → p-dbb4b1d1.js} +1 -1
  378. package/dist/vega/p-dcd3e3a7.js +1 -0
  379. package/dist/vega/p-de8f0d98.js +1 -0
  380. package/dist/vega/{p-22cc174e.entry.js → p-deaf037a.entry.js} +1 -1
  381. package/dist/vega/p-e1029acc.js +1 -0
  382. package/dist/vega/p-e18c0656.entry.js +1 -0
  383. package/dist/vega/p-e3fdb65c.entry.js +1 -0
  384. package/dist/vega/p-e7e963ba.entry.js +1 -0
  385. package/dist/vega/{p-312d8205.js → p-e9b005df.js} +1 -1
  386. package/dist/vega/{p-9d3f69cb.js → p-e9d09211.js} +1 -1
  387. package/dist/vega/{p-3c309a38.js → p-f1078e63.js} +1 -1
  388. package/dist/vega/{p-595998d9.entry.js → p-f29ea345.entry.js} +1 -1
  389. package/dist/vega/p-f5095035.entry.js +1 -0
  390. package/dist/vega/{p-f29d9707.entry.js → p-f95d8d10.entry.js} +1 -1
  391. package/dist/vega/vega.esm.js +1 -1
  392. package/package.json +1 -1
  393. package/dist/vega/p-0512308f.entry.js +0 -1
  394. package/dist/vega/p-1d8312d3.entry.js +0 -1
  395. package/dist/vega/p-2d77ae73.entry.js +0 -1
  396. package/dist/vega/p-2d8d4d5b.entry.js +0 -1
  397. package/dist/vega/p-320091b7.js +0 -1
  398. package/dist/vega/p-36949349.js +0 -1
  399. package/dist/vega/p-4151f53a.entry.js +0 -1
  400. package/dist/vega/p-4ff48b84.js +0 -1
  401. package/dist/vega/p-5e4517eb.entry.js +0 -1
  402. package/dist/vega/p-6680ba17.entry.js +0 -1
  403. package/dist/vega/p-80b7945a.entry.js +0 -1
  404. package/dist/vega/p-841b3281.entry.js +0 -1
  405. package/dist/vega/p-87e5cb56.entry.js +0 -1
  406. package/dist/vega/p-91303402.entry.js +0 -1
  407. package/dist/vega/p-97215133.js +0 -1
  408. package/dist/vega/p-9d96d83f.entry.js +0 -1
  409. package/dist/vega/p-a05a2f1e.entry.js +0 -1
  410. package/dist/vega/p-a775825e.entry.js +0 -1
  411. package/dist/vega/p-acaff62d.entry.js +0 -1
  412. package/dist/vega/p-ae146458.entry.js +0 -1
  413. package/dist/vega/p-b63319e9.entry.js +0 -1
  414. package/dist/vega/p-b660f38c.entry.js +0 -1
  415. package/dist/vega/p-b8c13ac9.entry.js +0 -1
  416. package/dist/vega/p-b8ffa42f.entry.js +0 -1
  417. package/dist/vega/p-bbad318e.entry.js +0 -1
  418. package/dist/vega/p-c0e42c03.entry.js +0 -1
  419. package/dist/vega/p-c41f5684.entry.js +0 -1
  420. package/dist/vega/p-c54b5a8f.entry.js +0 -1
  421. package/dist/vega/p-cd1e976c.entry.js +0 -1
  422. package/dist/vega/p-d9158512.js +0 -1
  423. package/dist/vega/p-e62d41ee.js +0 -1
  424. package/dist/vega/p-ebe32b25.entry.js +0 -1
  425. package/dist/vega/p-ec162599.entry.js +0 -1
  426. package/dist/vega/p-fc7e4c8a.entry.js +0 -1
@@ -0,0 +1,49 @@
1
+ export const urlLinkTypeHandler = {
2
+ key: 'url',
3
+ defaultFallbackProtocol: undefined,
4
+ /** @inheritDoc */
5
+ getRequiredValue: (record) => { var _a; return (_a = record === null || record === void 0 ? void 0 : record.url) !== null && _a !== void 0 ? _a : ''; },
6
+ /** @inheritDoc */
7
+ getTextValue: (formValues) => formValues.text || '',
8
+ /** @inheritDoc */
9
+ getFallbackText: () => '',
10
+ /** @inheritDoc */
11
+ buildFinalUrl: (formValues, { normalizeUrl }) => normalizeUrl(formValues.url || ''),
12
+ /** @inheritDoc */
13
+ getInitialFormValues: (record, { normalizeUrl }) => {
14
+ var _a, _b;
15
+ return ({
16
+ text: (_a = record === null || record === void 0 ? void 0 : record.text) !== null && _a !== void 0 ? _a : '',
17
+ url: normalizeUrl((_b = record === null || record === void 0 ? void 0 : record.url) !== null && _b !== void 0 ? _b : ''),
18
+ });
19
+ },
20
+ };
21
+ export const emailLinkTypeHandler = {
22
+ key: 'email',
23
+ defaultFallbackProtocol: 'mailto:',
24
+ /** @inheritDoc */
25
+ getRequiredValue: (record, { parseMailtoUrl }) => {
26
+ var _a;
27
+ const { emailAddress } = parseMailtoUrl((_a = record === null || record === void 0 ? void 0 : record.url) !== null && _a !== void 0 ? _a : '');
28
+ return emailAddress;
29
+ },
30
+ /** @inheritDoc */
31
+ getTextValue: (formValues) => formValues.text || '',
32
+ /** @inheritDoc */
33
+ getFallbackText: (formValues) => formValues.emailAddress || '',
34
+ /** @inheritDoc */
35
+ buildFinalUrl: (formValues, { buildEmailUrl }) => buildEmailUrl(formValues.emailAddress || '', formValues.messageSubject || '', formValues.messageBody || ''),
36
+ /** @inheritDoc */
37
+ getInitialFormValues: (record, { parseMailtoUrl }) => {
38
+ var _a, _b;
39
+ const { emailAddress, subject, body } = parseMailtoUrl((_a = record === null || record === void 0 ? void 0 : record.url) !== null && _a !== void 0 ? _a : '');
40
+ return {
41
+ text: (_b = record === null || record === void 0 ? void 0 : record.text) !== null && _b !== void 0 ? _b : '',
42
+ emailAddress,
43
+ messageSubject: subject,
44
+ messageBody: body,
45
+ };
46
+ },
47
+ };
48
+ export const LINK_TYPE_HANDLERS = [urlLinkTypeHandler, emailLinkTypeHandler];
49
+ export const LINK_TYPE_HANDLER_MAP = new Map(LINK_TYPE_HANDLERS.map((handler) => [handler.key, handler]));
@@ -5,79 +5,80 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { h } from '@stencil/core';
8
- import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
8
+ import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
9
9
  import { DomNodeSubjectObserverFactory } from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-observer-factory';
10
- import { VegaClick, VegaPopoverHide, VegaPopoverShow, } from '../../../../../helpers/event-manager/event-id/vega-event-id';
11
- import { VegaInternalComponentDidRender, VegaInternalPopoverUpdateTarget, } from '../../../../../helpers/event-manager/event-id/vega-internal-event-id';
12
- import domNodeSubjectFactory from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
13
- import ChangeManager from '../../../../../helpers/change-manager/change-manager';
14
- import remoteInvocationRegistry from '../../../../../helpers/remote-invocation/remote-invocation-registry';
15
- import { findParent } from '../../../../../utils/ui';
16
- import { VegaRTELinkExtension } from '../../../extensions/link/link-extension';
17
- import { normalizeUrlByDefaultProtocol } from '../../../extensions/link/utils';
10
+ import { VegaClick, VegaChange, VegaPopoverHide, VegaPopoverShow, } from '../../../../../helpers/event-manager/event-id/vega-event-id';
11
+ import { RTE_EMAIL_LINK_TYPE_KEY } from '../../../constants/constant';
18
12
  export class VegaRichTextLinkEditorRenderer extends VegaSlimmer {
19
13
  constructor() {
20
14
  super(...arguments);
21
- this.handleKeyDown = (e) => {
22
- if (e.key === 'Enter') {
23
- void this.formRef.getValue().then(({ text, url }) => {
24
- const normalizedUrl = this.normalizeUrlByDefaultProtocol(url);
25
- if (normalizedUrl.length > 0) {
26
- this.changeEventEmitter.emit({
27
- action: 'link',
28
- payload: { text: text || normalizedUrl, url: normalizedUrl },
29
- });
30
- void this.popoverRef.hide();
15
+ this.handlePopoverRef = (ref) => {
16
+ this.popoverRef = ref;
17
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaPopoverShow, () => this.linkEditorController.handlePopoverShow());
18
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaPopoverHide, () => {
19
+ this.linkEditorController.handlePopoverHide();
20
+ });
21
+ };
22
+ this.handleButtonGroupRef = (node) => {
23
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(node, VegaClick, ({ detail }) => {
24
+ switch (detail) {
25
+ case 'edit': {
26
+ this.linkEditorController.handleEditAction();
27
+ return;
28
+ }
29
+ case 'unlink': {
30
+ void this.linkEditorController.handleUnlinkAction();
31
31
  }
32
- });
32
+ }
33
+ });
34
+ };
35
+ this.handleFormRef = (ref) => {
36
+ this.formRef = ref;
37
+ };
38
+ this.handleUrlInputRef = (ref) => {
39
+ if (ref) {
40
+ this.urlInputRef = ref;
33
41
  }
34
42
  };
35
- }
36
- /**
37
- * Component lifecycle - [componentDidLoad]{@link VegaRichTextLinkEditor.componentDidLoad}
38
- */
39
- componentDidLoad() {
40
- this.updatePopoverTarget();
41
- }
42
- /**
43
- * Component lifecycle - [componentDidRender]{@link VegaRichTextLinkEditor.componentDidRender}
44
- */
45
- componentDidRender() {
46
- ChangeManager.notify(domNodeSubjectFactory.getSubject(this.host, VegaInternalComponentDidRender), {});
47
- }
48
- watchStatusChange() {
49
- if (this.status === 'linkEdit') {
50
- setTimeout(() => {
51
- void this.urlInputRef.doFocus();
43
+ this.handleTextInputRef = (ref) => {
44
+ this.textInputRef = ref;
45
+ };
46
+ this.handleLinkFieldKeyDown = (e) => {
47
+ this.linkEditorController.handleKeyDown(e);
48
+ };
49
+ this.handleUrlVegaChange = (e) => {
50
+ this.linkEditorController.handleUrlVegaChange(e);
51
+ };
52
+ this.handleLinkTypeSelectRef = (ref) => {
53
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaChange, (payload) => {
54
+ void this.linkEditorController.handleLinkTypeChange(payload);
52
55
  });
53
- }
54
- }
55
- watchTargetChange() {
56
- this.updatePopoverTarget();
56
+ };
57
+ this.handleCancelButtonRef = (ref) => {
58
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaClick, () => {
59
+ void this.getPopoverRef().hide();
60
+ });
61
+ };
62
+ this.handleSubmitButtonRef = (ref) => {
63
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaClick, () => {
64
+ void this.linkEditorController.submitLink();
65
+ });
66
+ };
57
67
  }
58
68
  getPopoverRef() {
59
69
  return this.popoverRef;
60
70
  }
71
+ getFormRef() {
72
+ return this.formRef;
73
+ }
74
+ getUrlInputRef() {
75
+ return this.urlInputRef;
76
+ }
77
+ getTextInputRef() {
78
+ return this.textInputRef;
79
+ }
61
80
  render() {
62
- return (h("vega-popover", { trigger: "click", alignment: "start", placement: "bottom", showArrow: false, isScreenPosition: true, ref: (ref) => {
63
- this.popoverRef = ref;
64
- DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaPopoverShow, () => {
65
- var _a, _b, _c;
66
- if (this.status === 'linkEdit') {
67
- void this.urlInputRef.doFocus();
68
- }
69
- void this.formRef.setValue({
70
- text: (_a = this.record) === null || _a === void 0 ? void 0 : _a.text,
71
- url: this.normalizeUrlByDefaultProtocol((_c = (_b = this.record) === null || _b === void 0 ? void 0 : _b.url) !== null && _c !== void 0 ? _c : ''),
72
- });
73
- });
74
- DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaPopoverHide, () => {
75
- void this.formRef.reset();
76
- if (this.resetStatusAfterHide) {
77
- this.status = 'editOrUnlinkSelection';
78
- }
79
- });
80
- } },
81
+ return (h("vega-popover", { trigger: "click", alignment: "start", placement: "bottom", showArrow: false, isScreenPosition: true, ref: this.handlePopoverRef },
81
82
  h("span", { slot: "popover-content" },
82
83
  h("slot", null)),
83
84
  h("div", { slot: "popover" },
@@ -86,71 +87,78 @@ export class VegaRichTextLinkEditorRenderer extends VegaSlimmer {
86
87
  }
87
88
  renderLinkUnlinkContent() {
88
89
  return (h("vega-box", { display: this.status === 'editOrUnlinkSelection' ? 'block' : 'none' },
89
- h("vega-button-group", { size: "small", variant: "tertiary", ref: (node) => {
90
- DomNodeSubjectObserverFactory.addUniqueObserverToNode(node, VegaClick, ({ detail }) => {
91
- switch (detail) {
92
- case 'edit': {
93
- this.status = 'linkEdit';
94
- return;
95
- }
96
- case 'unlink': {
97
- this.changeEventEmitter.emit({ action: 'unlink' });
98
- void this.popoverRef.hide();
99
- }
100
- }
101
- });
102
- } },
90
+ h("vega-button-group", { size: "small", variant: "tertiary", ref: this.handleButtonGroupRef, onKeyDown: this.handleLinkFieldKeyDown },
103
91
  h("vega-button-group-item", { label: this.translationSlimmer.t('Edit'), itemKey: "edit" }),
104
92
  h("vega-button-group-item", { label: this.translationSlimmer.t('Unlink'), itemKey: "unlink" }))));
105
93
  }
106
94
  renderLinkEditContent() {
107
95
  return (h("vega-box", { display: this.status === 'linkEdit' ? 'block' : 'none' },
108
- h("vega-form", { ref: (ref) => (this.formRef = ref) },
109
- h("vega-flex", { style: { width: '419px' }, direction: "col", gap: "size-16" },
110
- h("vega-input", { "data-vega-form": "url", ref: (ref) => {
111
- this.urlInputRef = ref;
112
- }, size: "small", label: this.translationSlimmer.t('URL'), onKeyDown: this.handleKeyDown }),
113
- h("vega-input", { size: "small", label: this.translationSlimmer.t('Text'), "data-vega-form": "text", onKeyDown: this.handleKeyDown })))));
96
+ h("vega-flex", { style: { width: '419px' }, direction: "col", gap: "size-16" },
97
+ this.renderLinkTypeSelector(),
98
+ h("vega-form", { ref: this.handleFormRef },
99
+ h("vega-flex", { direction: "col", gap: "size-16" },
100
+ this.renderTextInput(),
101
+ this.renderCurrentLinkTypeEditFields())),
102
+ this.renderActionButtons())));
103
+ }
104
+ renderCurrentLinkTypeEditFields() {
105
+ switch (this.linkEditorStateManager.getSelectedLinkTypeKey()) {
106
+ case RTE_EMAIL_LINK_TYPE_KEY:
107
+ return this.renderEmailLinkEditFields();
108
+ default:
109
+ return this.renderUrlLinkEditFields();
110
+ }
111
+ }
112
+ renderTextInput() {
113
+ return (h("vega-input", { size: "small", label: this.translationSlimmer.t('Text'), "data-vega-form": "text", ref: this.handleTextInputRef, onKeyDown: this.handleLinkFieldKeyDown }));
114
114
  }
115
- updatePopoverTarget() {
116
- remoteInvocationRegistry.call(domNodeSubjectFactory.getSubject(this.popoverRef, VegaInternalPopoverUpdateTarget), this.target);
115
+ renderEmailLinkEditFields() {
116
+ return [
117
+ h("vega-input", { key: "emailAddress", "data-vega-form": "emailAddress", required: true, ref: this.handleUrlInputRef, size: "small", label: this.translationSlimmer.t('E-Mail Address'), onVegaChange: this.handleUrlVegaChange, onKeyDown: this.handleLinkFieldKeyDown }),
118
+ h("vega-input", { key: "messageSubject", size: "small", label: this.translationSlimmer.t('Message Subject'), "data-vega-form": "messageSubject", onKeyDown: this.handleLinkFieldKeyDown }),
119
+ h("vega-textarea", { key: "messageBody", label: this.translationSlimmer.t('Message Body'), "data-vega-form": "messageBody", rows: 4, resizable: false }),
120
+ ];
117
121
  }
118
- normalizeUrlByDefaultProtocol(url) {
119
- const rteHost = findParent(this.host, 'vega-rich-text-editor');
120
- const linkConfig = VegaRTELinkExtension.configStore.get(rteHost) || {};
121
- return normalizeUrlByDefaultProtocol(url, linkConfig.defaultProtocol);
122
+ renderUrlLinkEditFields() {
123
+ return [
124
+ h("vega-input", { key: "url", "data-vega-form": "url", ref: this.handleUrlInputRef, size: "small", label: this.translationSlimmer.t('URL'), required: this.linkTypeConfigController.hasConfiguredLinkTypes(), onVegaChange: this.handleUrlVegaChange, onKeyDown: this.handleLinkFieldKeyDown }),
125
+ ];
126
+ }
127
+ renderLinkTypeSelector() {
128
+ if (!this.linkTypeConfigController.hasConfiguredLinkTypes()) {
129
+ return null;
130
+ }
131
+ return (h("vega-input-select", { label: this.translationSlimmer.t('Link Type'), size: "small", source: this.linkTypeConfigController
132
+ .getConfiguredLinkTypes()
133
+ .map((item) => ({
134
+ id: item.key,
135
+ displayName: this.translationSlimmer.t(item.label),
136
+ })), vegaDropdownProps: { searchable: false }, value: this.linkEditorStateManager.getSelectedLinkTypeKey(), ref: this.handleLinkTypeSelectRef }));
137
+ }
138
+ renderActionButtons() {
139
+ if (!this.linkTypeConfigController.hasConfiguredLinkTypes()) {
140
+ return null;
141
+ }
142
+ return (h("vega-flex", { style: { width: '100%' }, gap: "size-8", alignItems: "center", justifyContent: "end" },
143
+ h("vega-button", { variant: "secondary", label: this.translationSlimmer.t('Cancel'), ref: this.handleCancelButtonRef }),
144
+ h("vega-button", { label: this.translationSlimmer.t('Submit'), disabled: this.linkEditorStateManager.getIsSubmitDisabled(), ref: this.handleSubmitButtonRef })));
122
145
  }
123
146
  }
124
147
  __decorate([
125
148
  MapToComponentField()
126
149
  ], VegaRichTextLinkEditorRenderer.prototype, "host", void 0);
127
150
  __decorate([
128
- MapToComponentField({ writable: true })
151
+ MapToComponentField()
129
152
  ], VegaRichTextLinkEditorRenderer.prototype, "status", void 0);
130
- __decorate([
131
- MapToComponentField({ writable: true })
132
- ], VegaRichTextLinkEditorRenderer.prototype, "record", void 0);
133
153
  __decorate([
134
154
  MapToComponentField()
135
- ], VegaRichTextLinkEditorRenderer.prototype, "changeEventEmitter", void 0);
155
+ ], VegaRichTextLinkEditorRenderer.prototype, "translationSlimmer", void 0);
136
156
  __decorate([
137
157
  MapToComponentField()
138
- ], VegaRichTextLinkEditorRenderer.prototype, "resetStatusAfterHide", void 0);
158
+ ], VegaRichTextLinkEditorRenderer.prototype, "linkEditorController", void 0);
139
159
  __decorate([
140
160
  MapToComponentField()
141
- ], VegaRichTextLinkEditorRenderer.prototype, "translationSlimmer", void 0);
161
+ ], VegaRichTextLinkEditorRenderer.prototype, "linkTypeConfigController", void 0);
142
162
  __decorate([
143
163
  MapToComponentField()
144
- ], VegaRichTextLinkEditorRenderer.prototype, "target", void 0);
145
- __decorate([
146
- MapToComponentMethod('componentDidLoad')
147
- ], VegaRichTextLinkEditorRenderer.prototype, "componentDidLoad", null);
148
- __decorate([
149
- MapToComponentMethod('componentDidRender')
150
- ], VegaRichTextLinkEditorRenderer.prototype, "componentDidRender", null);
151
- __decorate([
152
- MapToComponentMethod('watchStatusChange')
153
- ], VegaRichTextLinkEditorRenderer.prototype, "watchStatusChange", null);
154
- __decorate([
155
- MapToComponentMethod('watchTargetChange')
156
- ], VegaRichTextLinkEditorRenderer.prototype, "watchTargetChange", null);
164
+ ], VegaRichTextLinkEditorRenderer.prototype, "linkEditorStateManager", void 0);
@@ -0,0 +1,80 @@
1
+ import { normalizeUrlByDefaultProtocol as normalizeUrlByProtocol } from '../../../extensions/link/utils';
2
+ /**
3
+ * Normalizes link URLs and mailto values for the link editor.
4
+ */
5
+ export class LinkUrlNormalizer {
6
+ /**
7
+ * Normalizes a URL with the provided default protocol.
8
+ *
9
+ * @param {string} url - URL to normalize.
10
+ * @param {string} defaultProtocol - Default protocol to apply.
11
+ * @returns {string} The normalized URL.
12
+ */
13
+ normalizeUrlByDefaultProtocol(url, defaultProtocol) {
14
+ return normalizeUrlByProtocol(url, defaultProtocol);
15
+ }
16
+ /**
17
+ * Parses a mailto URL into its structured parts.
18
+ *
19
+ * @param {string} url - Mailto URL to parse.
20
+ * @returns {MailtoUrlParts} The parsed mailto parts.
21
+ */
22
+ parseMailtoUrl(url) {
23
+ var _a, _b;
24
+ if (!url) {
25
+ return { emailAddress: '', subject: '', body: '' };
26
+ }
27
+ const withoutProtocol = url.startsWith('mailto:') ? url.slice('mailto:'.length) : url;
28
+ const questionIndex = withoutProtocol.indexOf('?');
29
+ if (questionIndex === -1) {
30
+ return {
31
+ emailAddress: this.decodeURIComponentSafely(withoutProtocol),
32
+ subject: '',
33
+ body: '',
34
+ };
35
+ }
36
+ const emailAddress = this.decodeURIComponentSafely(withoutProtocol.slice(0, questionIndex));
37
+ const params = new URLSearchParams(withoutProtocol.slice(questionIndex + 1));
38
+ return {
39
+ emailAddress,
40
+ subject: (_a = params.get('subject')) !== null && _a !== void 0 ? _a : '',
41
+ body: (_b = params.get('body')) !== null && _b !== void 0 ? _b : '',
42
+ };
43
+ }
44
+ /**
45
+ * Builds a mailto URL from the provided fields.
46
+ *
47
+ * @param {string} emailAddress - Email address value.
48
+ * @param {string} subject - Subject value.
49
+ * @param {string} body - Body value.
50
+ * @returns {string} The generated mailto URL.
51
+ */
52
+ buildEmailLinkUrl(emailAddress, subject, body) {
53
+ const normalizedEmailAddress = (emailAddress || '').trim().replace(/^(mailto:)+/i, '');
54
+ if (normalizedEmailAddress.length === 0) {
55
+ return '';
56
+ }
57
+ const queryParams = [];
58
+ if ((subject || '').trim().length > 0) {
59
+ queryParams.push(`subject=${encodeURIComponent(subject.trim())}`);
60
+ }
61
+ if ((body || '').trim().length > 0) {
62
+ queryParams.push(`body=${encodeURIComponent(body.trim())}`);
63
+ }
64
+ return `mailto:${normalizedEmailAddress}${queryParams.length > 0 ? `?${queryParams.join('&')}` : ''}`;
65
+ }
66
+ /**
67
+ * Decodes a URI component without throwing on malformed input.
68
+ *
69
+ * @param {string} value - Encoded value.
70
+ * @returns {string} The decoded value.
71
+ */
72
+ decodeURIComponentSafely(value) {
73
+ try {
74
+ return decodeURIComponent(value);
75
+ }
76
+ catch (_a) {
77
+ return value;
78
+ }
79
+ }
80
+ }
@@ -9,6 +9,9 @@ import { InjectVegaGlobalSlimmer, InjectVegaSlimmer, methodPlaceholder, } from '
9
9
  import { VegaComponentUsageRuntimeMetricsSlimmer } from '../../../helpers/slimmers/component-usage-runtime-metrics';
10
10
  import { sanitizeVegaComponent } from '../../../utils/component';
11
11
  import { VegaRichTextLinkEditorRenderer } from './slimmers/renderers/vega-rich-text-link-editor-renderer';
12
+ import { LinkEditorController } from './slimmers/controllers/link-editor-controller';
13
+ import { LinkTypeConfigController } from './slimmers/controllers/link-type-config-controller';
14
+ import { LinkEditorStateManager } from './slimmers/controllers/link-editor-state-manager';
12
15
  import { createEventEmitSlimmer, } from '../../../helpers/event-manager/slimmers/event-emit-slimmer';
13
16
  import { VegaChange } from '../../../helpers/event-manager/event-id/vega-event-id';
14
17
  import { TranslationSlimmer } from '../../../helpers/slimmers/translation';
@@ -24,6 +27,9 @@ export class VegaRichTextLinkEditor {
24
27
  this.translationSlimmer = new TranslationSlimmer();
25
28
  this.vegaComponentUsageRuntimeMetricsSlimmer = new VegaComponentUsageRuntimeMetricsSlimmer();
26
29
  this.renderer = new VegaRichTextLinkEditorRenderer();
30
+ this.linkEditorController = new LinkEditorController();
31
+ this.linkTypeConfigController = new LinkTypeConfigController();
32
+ this.linkEditorStateManager = new LinkEditorStateManager();
27
33
  this.changeEventEmitter = createEventEmitSlimmer(VegaRichTextLinkEditor, VegaChange);
28
34
  /**
29
35
  * Specifies the status of the link editor
@@ -53,6 +59,15 @@ export class VegaRichTextLinkEditor {
53
59
  async show() {
54
60
  await this.renderer.getPopoverRef().show();
55
61
  }
62
+ /**
63
+ * Provide a method to hide the link editor popover
64
+ *
65
+ * @vegaVersion 2.97.0
66
+ */
67
+ async hide() {
68
+ var _a;
69
+ await ((_a = this.renderer.getPopoverRef()) === null || _a === void 0 ? void 0 : _a.hide());
70
+ }
56
71
  render() {
57
72
  return sanitizeVegaComponent(h(Host, null, this.renderer.render()), this.host);
58
73
  }
@@ -96,7 +111,7 @@ export class VegaRichTextLinkEditor {
96
111
  "mutable": false,
97
112
  "complexType": {
98
113
  "original": "VegaRTELinkEditorRecord",
99
- "resolved": "{ text: string; url: string; }",
114
+ "resolved": "{ linkType?: string; text: string; url: string; }",
100
115
  "references": {
101
116
  "VegaRTELinkEditorRecord": {
102
117
  "location": "import",
@@ -224,6 +239,25 @@ export class VegaRichTextLinkEditor {
224
239
  "text": "2.34.0"
225
240
  }]
226
241
  }
242
+ },
243
+ "hide": {
244
+ "complexType": {
245
+ "signature": "() => Promise<void>",
246
+ "parameters": [],
247
+ "references": {
248
+ "Promise": {
249
+ "location": "global"
250
+ }
251
+ },
252
+ "return": "Promise<void>"
253
+ },
254
+ "docs": {
255
+ "text": "Provide a method to hide the link editor popover",
256
+ "tags": [{
257
+ "name": "vegaVersion",
258
+ "text": "2.97.0"
259
+ }]
260
+ }
227
261
  }
228
262
  }; }
229
263
  static get elementRef() { return "host"; }
@@ -247,6 +281,15 @@ __decorate([
247
281
  __decorate([
248
282
  InjectVegaSlimmer()
249
283
  ], VegaRichTextLinkEditor.prototype, "renderer", void 0);
284
+ __decorate([
285
+ InjectVegaSlimmer()
286
+ ], VegaRichTextLinkEditor.prototype, "linkEditorController", void 0);
287
+ __decorate([
288
+ InjectVegaSlimmer()
289
+ ], VegaRichTextLinkEditor.prototype, "linkTypeConfigController", void 0);
290
+ __decorate([
291
+ InjectVegaSlimmer()
292
+ ], VegaRichTextLinkEditor.prototype, "linkEditorStateManager", void 0);
250
293
  __decorate([
251
294
  InjectVegaSlimmer()
252
295
  ], VegaRichTextLinkEditor.prototype, "changeEventEmitter", void 0);
@@ -14,7 +14,7 @@ import { VegaComponentUsageRuntimeMetricsSlimmer } from '../../../helpers/slimme
14
14
  import { createSubStateNotifySlimmer } from '../../../helpers/slimmers/sub-state/sub-state-notify-slimmer';
15
15
  import { VegaChange } from '../../../helpers/event-manager/event-id/vega-event-id';
16
16
  import { ChildNodesEventPreventSlimmer } from '../../../helpers/event-manager/slimmers/child-nodes-event-prevent-slimmer';
17
- import { FormFieldControllerSlimmer } from '../../../helpers/slimmers/form-field-controller-slimmer';
17
+ import { FormFieldControllerSlimmer } from '../../../helpers/slimmers/form/form-field-controller-slimmer';
18
18
  import { RequiredFieldRule } from '../../../helpers/validator/rules/required-field-rule';
19
19
  import { createEventEmitSlimmer, } from '../../../helpers/event-manager/slimmers/event-emit-slimmer';
20
20
  /**
@@ -77,6 +77,14 @@ export class VegaSelectionChipGroup {
77
77
  * @vegaVersion 2.90.0
78
78
  */
79
79
  this.optional = false;
80
+ /**
81
+ * Specifies the name attribute used to identify the form field during data submission.
82
+ * It functions identically to the `data-vega-form` attribute but operates at a lower priority.
83
+ *
84
+ * @default ''
85
+ * @vegaVersion 2.97.0
86
+ */
87
+ this.name = '';
80
88
  /**
81
89
  * Defines custom validation rules for the selection chip group field.
82
90
  *
@@ -247,6 +255,30 @@ export class VegaSelectionChipGroup {
247
255
  "reflect": true,
248
256
  "defaultValue": "false"
249
257
  },
258
+ "name": {
259
+ "type": "string",
260
+ "mutable": false,
261
+ "complexType": {
262
+ "original": "string",
263
+ "resolved": "string",
264
+ "references": {}
265
+ },
266
+ "required": false,
267
+ "optional": false,
268
+ "docs": {
269
+ "tags": [{
270
+ "name": "default",
271
+ "text": "''"
272
+ }, {
273
+ "name": "vegaVersion",
274
+ "text": "2.97.0"
275
+ }],
276
+ "text": "Specifies the name attribute used to identify the form field during data submission.\n It functions identically to the `data-vega-form` attribute but operates at a lower priority."
277
+ },
278
+ "attribute": "name",
279
+ "reflect": true,
280
+ "defaultValue": "''"
281
+ },
250
282
  "disabled": {
251
283
  "type": "boolean",
252
284
  "mutable": false,
@@ -14,7 +14,7 @@ import { ChildNodesNotifyObserverSlimmer, } from '../../../helpers/event-manager
14
14
  import { SELECTION_TILE_VALUE_CHANGE } from '../../../helpers/change-manager/subject/static-subject/static-subject-title';
15
15
  import { VegaSelectionTileGroupValueController } from './slimmers/controllers/vega-selection-tile-group-value-controller';
16
16
  import { createSubStateNotifySlimmer } from '../../../helpers/slimmers/sub-state/sub-state-notify-slimmer';
17
- import { FormFieldControllerSlimmer } from '../../../helpers/slimmers/form-field-controller-slimmer';
17
+ import { FormFieldControllerSlimmer } from '../../../helpers/slimmers/form/form-field-controller-slimmer';
18
18
  import { RequiredFieldRule } from '../../../helpers/validator/rules/required-field-rule';
19
19
  import { ChildNodesEventPreventSlimmer } from '../../../helpers/event-manager/slimmers/child-nodes-event-prevent-slimmer';
20
20
  import { VegaSelectionTileGroupItemsController } from './slimmers/controllers/vega-selection-tile-group-items-controller';
@@ -99,6 +99,14 @@ export class VegaSelectionTileGroup {
99
99
  * @vegaVersion 2.89.0
100
100
  */
101
101
  this.optional = false;
102
+ /**
103
+ * Specifies the name attribute used to identify the form field during data submission.
104
+ * It functions identically to the `data-vega-form` attribute but operates at a lower priority.
105
+ *
106
+ * @default ''
107
+ * @vegaVersion 2.97.0
108
+ */
109
+ this.name = '';
102
110
  /**
103
111
  * Defines custom validation rules for the selection tile group field.
104
112
  *
@@ -309,6 +317,30 @@ export class VegaSelectionTileGroup {
309
317
  "reflect": true,
310
318
  "defaultValue": "false"
311
319
  },
320
+ "name": {
321
+ "type": "string",
322
+ "mutable": false,
323
+ "complexType": {
324
+ "original": "string",
325
+ "resolved": "string",
326
+ "references": {}
327
+ },
328
+ "required": false,
329
+ "optional": false,
330
+ "docs": {
331
+ "tags": [{
332
+ "name": "default",
333
+ "text": "''"
334
+ }, {
335
+ "name": "vegaVersion",
336
+ "text": "2.97.0"
337
+ }],
338
+ "text": "Specifies the name attribute used to identify the form field during data submission.\n It functions identically to the `data-vega-form` attribute but operates at a lower priority."
339
+ },
340
+ "attribute": "name",
341
+ "reflect": true,
342
+ "defaultValue": "''"
343
+ },
312
344
  "disabled": {
313
345
  "type": "boolean",
314
346
  "mutable": false,
@@ -14,7 +14,7 @@ import { WrittenModeRenderer } from './slimmers/written-mode/renderers/written-m
14
14
  import { WrittenModeSvgController } from './slimmers/written-mode/controllers/written-mode-svg-controller';
15
15
  import { createEventEmitSlimmer, } from '../../helpers/event-manager/slimmers/event-emit-slimmer';
16
16
  import { VegaChange } from '../../helpers/event-manager/event-id/vega-event-id';
17
- import { FormFieldControllerSlimmer } from '../../helpers/slimmers/form-field-controller-slimmer';
17
+ import { FormFieldControllerSlimmer } from '../../helpers/slimmers/form/form-field-controller-slimmer';
18
18
  import { RequiredFieldRule } from '../../helpers/validator/rules/required-field-rule';
19
19
  import { PageResizeObserverSlimmer } from '../../helpers/slimmers/page-resize-observer-slimmer';
20
20
  import { getCurrentBreakpoint } from '../../utils/breakpoints';
@@ -81,6 +81,14 @@ export class VegaSignatureCapture {
81
81
  * @vegaVersion 2.89.0
82
82
  */
83
83
  this.optional = false;
84
+ /**
85
+ * Specifies the name attribute used to identify the form field during data submission.
86
+ * It functions identically to the `data-vega-form` attribute but operates at a lower priority.
87
+ *
88
+ * @default ''
89
+ * @vegaVersion 2.97.0
90
+ */
91
+ this.name = '';
84
92
  /**
85
93
  * Determines whether the clear button is displayed.
86
94
  *
@@ -264,6 +272,30 @@ export class VegaSignatureCapture {
264
272
  "reflect": true,
265
273
  "defaultValue": "false"
266
274
  },
275
+ "name": {
276
+ "type": "string",
277
+ "mutable": false,
278
+ "complexType": {
279
+ "original": "string",
280
+ "resolved": "string",
281
+ "references": {}
282
+ },
283
+ "required": false,
284
+ "optional": false,
285
+ "docs": {
286
+ "tags": [{
287
+ "name": "default",
288
+ "text": "''"
289
+ }, {
290
+ "name": "vegaVersion",
291
+ "text": "2.97.0"
292
+ }],
293
+ "text": "Specifies the name attribute used to identify the form field during data submission.\n It functions identically to the `data-vega-form` attribute but operates at a lower priority."
294
+ },
295
+ "attribute": "name",
296
+ "reflect": true,
297
+ "defaultValue": "''"
298
+ },
267
299
  "showClearBtn": {
268
300
  "type": "boolean",
269
301
  "mutable": false,