@heartlandone/vega 2.77.0 → 2.78.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 (445) hide show
  1. package/dist/cjs/{app-globals-04e7024b.js → app-globals-55e26945.js} +6 -6
  2. package/dist/cjs/{aria-attributes-value-mapper-f58c73f8.js → aria-attributes-value-mapper-9a41b9cf.js} +10 -3
  3. package/dist/cjs/{breakpoints-751d433a.js → breakpoints-a8ff22f0.js} +1 -1
  4. package/dist/cjs/{child-nodes-event-prevent-slimmer-cc6d2919.js → child-nodes-event-prevent-slimmer-dd0bb8b6.js} +1 -1
  5. package/dist/cjs/{code-block-f1480ec3.js → code-block-1a5fafed.js} +2 -2
  6. package/dist/cjs/{component-value-history-controller-slimmer.abstract-a9264cc8.js → component-value-history-controller-slimmer.abstract-42683f23.js} +4 -4
  7. package/dist/cjs/{date-required-rule-912469e0.js → date-required-rule-ad536cb5.js} +1 -1
  8. package/dist/cjs/{design-token-c49717c8.js → design-token-45ebd5e4.js} +3 -3
  9. package/dist/cjs/{dto-renderer-manager-809c947b.js → dto-renderer-manager-7557d562.js} +3 -3
  10. package/dist/cjs/{element-appender-slimmer-38583ca9.js → element-appender-slimmer-16ec8591.js} +181 -22
  11. package/dist/cjs/{event-emit-slimmer-062cdcb8.js → event-emit-slimmer-c84121c8.js} +1 -1
  12. package/dist/cjs/{form-field-controller-slimmer-102f37c7.js → form-field-controller-slimmer-73f5849e.js} +4 -4
  13. package/dist/cjs/{image-annotation-action-8d9fa20c.js → image-annotation-action-f275863e.js} +3 -3
  14. package/dist/cjs/index.cjs.js +18 -18
  15. package/dist/cjs/{inject-keyboard-manager-0f5bd568.js → inject-keyboard-manager-6667c0f1.js} +1 -1
  16. package/dist/cjs/{internal-translation-controller-053eb0f1.js → internal-translation-controller-24df468f.js} +16 -0
  17. package/dist/cjs/{internal-vega-event-manager-f7ecf3d4.js → internal-vega-event-manager-cc0f511c.js} +2 -2
  18. package/dist/cjs/{keyboard-manager-055e9f67.js → keyboard-manager-7de7ecfd.js} +1 -1
  19. package/dist/cjs/{keyboard-manager-slimmer-0cc0c1c7.js → keyboard-manager-slimmer-b44f0dc9.js} +1 -1
  20. package/dist/cjs/loader.cjs.js +14 -14
  21. package/dist/cjs/{month-view-generator-6a6dd527.js → month-view-generator-36c42772.js} +1 -1
  22. package/dist/cjs/{page-resize-observer-slimmer-7f065ee1.js → page-resize-observer-slimmer-e050cd26.js} +1 -1
  23. package/dist/cjs/{public-rules-922849f3.js → public-rules-6c6cb4ac.js} +9 -9
  24. package/dist/cjs/{range-8aa49b08.js → range-e298d4aa.js} +1 -1
  25. package/dist/cjs/{responsive-format-facade-acc39a40.js → responsive-format-facade-bddac47c.js} +3 -3
  26. package/dist/cjs/{rich-text-editor-required-rule-22225840.js → rich-text-editor-required-rule-6346a888.js} +1 -1
  27. package/dist/cjs/{string-format-strategy.abstract-f2575647.js → string-format-strategy.abstract-814d66c4.js} +1 -1
  28. package/dist/cjs/{string-input-formatter-slimmer-0a334fc6.js → string-input-formatter-slimmer-749e3cfe.js} +3 -3
  29. package/dist/cjs/{string-mask-strategy-dda58395.js → string-mask-strategy-d00871c2.js} +2 -2
  30. package/dist/cjs/{style-formatter-028af284.js → style-formatter-94c1a1ff.js} +2 -2
  31. package/dist/cjs/{sub-state-notify-slimmer-58121111.js → sub-state-notify-slimmer-ac1dae32.js} +1 -1
  32. package/dist/cjs/{sub-state-observer-slimmer-1dfbc4c3.js → sub-state-observer-slimmer-e692d849.js} +1 -1
  33. package/dist/cjs/{time-required-rule-d6fa7aa8.js → time-required-rule-f1f3c8c2.js} +1 -1
  34. package/dist/cjs/{token-extension-ffcaeae0.js → token-extension-1e98ddf3.js} +7 -7
  35. package/dist/cjs/{translation-slimmer-4533bd67.js → translation-slimmer-3fa03d81.js} +1 -1
  36. package/dist/cjs/{type-guard-407ba0b8.js → type-guard-a0d9ff1f.js} +37 -2
  37. package/dist/cjs/{ui-32e69595.js → ui-024696c0.js} +8 -1
  38. package/dist/cjs/{valid-credit-card-number-rule-41a8b51b.js → valid-credit-card-number-rule-cba7d66a.js} +1 -1
  39. package/dist/cjs/vega-accordion.cjs.entry.js +9 -9
  40. package/dist/cjs/vega-app-header-button.cjs.entry.js +31 -13
  41. package/dist/cjs/vega-banner.cjs.entry.js +3 -3
  42. package/dist/cjs/vega-box.cjs.entry.js +8 -8
  43. package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
  44. package/dist/cjs/vega-button-circle.cjs.entry.js +12 -12
  45. package/dist/cjs/vega-button-group_2.cjs.entry.js +7 -7
  46. package/dist/cjs/vega-button-link.cjs.entry.js +20 -4
  47. package/dist/cjs/vega-button.cjs.entry.js +11 -11
  48. package/dist/cjs/vega-calendar_4.cjs.entry.js +15 -15
  49. package/dist/cjs/vega-card.cjs.entry.js +6 -6
  50. package/dist/cjs/vega-carousel.cjs.entry.js +9 -9
  51. package/dist/cjs/vega-checkbox_2.cjs.entry.js +11 -11
  52. package/dist/cjs/vega-chip.cjs.entry.js +11 -11
  53. package/dist/cjs/vega-code-block.cjs.entry.js +16 -15
  54. package/dist/cjs/vega-color-picker.cjs.entry.js +10 -10
  55. package/dist/cjs/vega-combo-box.cjs.entry.js +14 -14
  56. package/dist/cjs/vega-date-picker_2.cjs.entry.js +113 -32
  57. package/dist/cjs/vega-dialog_2.cjs.entry.js +11 -11
  58. package/dist/cjs/vega-divider.cjs.entry.js +7 -7
  59. package/dist/cjs/vega-dropdown_5.cjs.entry.js +41 -17
  60. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  61. package/dist/cjs/{vega-event-id-ee01d8dd.js → vega-event-id-c08ce3d3.js} +2 -0
  62. package/dist/cjs/vega-field-label.cjs.entry.js +3 -3
  63. package/dist/cjs/vega-file-uploader.cjs.entry.js +11 -11
  64. package/dist/cjs/vega-flag-icon.cjs.entry.js +6 -6
  65. package/dist/cjs/vega-flex.cjs.entry.js +9 -9
  66. package/dist/cjs/vega-font.cjs.entry.js +7 -7
  67. package/dist/cjs/vega-form.cjs.entry.js +13 -13
  68. package/dist/cjs/vega-grid.cjs.entry.js +6 -6
  69. package/dist/cjs/vega-icon.cjs.entry.js +6 -6
  70. package/dist/cjs/vega-image-uploader.cjs.entry.js +14 -14
  71. package/dist/cjs/vega-input-credit-card.cjs.entry.js +16 -16
  72. package/dist/cjs/vega-input-numeric.cjs.entry.js +102 -42
  73. package/dist/cjs/vega-input-passcode.cjs.entry.js +109 -36
  74. package/dist/cjs/vega-input-phone-number.cjs.entry.js +91 -41
  75. package/dist/cjs/vega-input-range.cjs.entry.js +27 -12
  76. package/dist/cjs/vega-input-select.cjs.entry.js +17 -17
  77. package/dist/cjs/vega-input.cjs.entry.js +414 -187
  78. package/dist/cjs/{vega-internal-event-id-f2465f1b.js → vega-internal-event-id-e0aeac45.js} +2 -0
  79. package/dist/cjs/vega-item-toggle.cjs.entry.js +4 -4
  80. package/dist/cjs/vega-left-nav_5.cjs.entry.js +15 -16
  81. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +6 -6
  82. package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
  83. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +4 -4
  84. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +4 -4
  85. package/dist/cjs/vega-pagination.cjs.entry.js +12 -12
  86. package/dist/cjs/vega-popover_2.cjs.entry.js +15 -15
  87. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +12 -12
  88. package/dist/cjs/vega-radio_2.cjs.entry.js +14 -14
  89. package/dist/cjs/vega-rich-text-content.cjs.entry.js +17 -11
  90. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +589 -396
  91. package/dist/cjs/vega-segment-control.cjs.entry.js +6 -6
  92. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +14 -14
  93. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +12 -12
  94. package/dist/cjs/vega-sidenav_3.cjs.entry.js +12 -12
  95. package/dist/cjs/vega-signature-capture.cjs.entry.js +14 -14
  96. package/dist/cjs/vega-stepper.cjs.entry.js +12 -12
  97. package/dist/cjs/vega-tab-group_2.cjs.entry.js +7 -7
  98. package/dist/cjs/vega-table_11.cjs.entry.js +14 -14
  99. package/dist/cjs/vega-text.cjs.entry.js +3 -3
  100. package/dist/cjs/vega-textarea.cjs.entry.js +110 -42
  101. package/dist/cjs/vega-time-picker_2.cjs.entry.js +18 -18
  102. package/dist/cjs/vega-toggle-switch.cjs.entry.js +10 -10
  103. package/dist/cjs/vega-tooltip_2.cjs.entry.js +11 -11
  104. package/dist/cjs/vega.cjs.js +14 -14
  105. package/dist/cjs/{wait-for-component-did-render-70a01bf9.js → wait-for-component-did-render-cbebfc33.js} +1 -1
  106. package/dist/collection/components/vega-app-header-button/vega-app-header-button.js +44 -2
  107. package/dist/collection/components/vega-button-link/vega-button-link.js +16 -1
  108. package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-preview-popover-renderer.js +1 -1
  109. package/dist/collection/components/vega-checkbox/vega-checkbox-group/vega-checkbox-group.js +1 -1
  110. package/dist/collection/components/vega-code-block/slimmers/renderers/vega-code-block-content-renderer.js +4 -0
  111. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-open-state-controller.js +64 -0
  112. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-selection-controller.js +3 -0
  113. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-header-render.js +3 -3
  114. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.js +19 -1
  115. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.js +3 -2
  116. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.js +3 -2
  117. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.css +12 -0
  118. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.js +25 -0
  119. package/dist/collection/components/vega-flex/vega-flex.css +32 -0
  120. package/dist/collection/components/vega-flex/vega-flex.js +1 -1
  121. package/dist/collection/components/vega-grid/vega-grid.js +2 -2
  122. package/dist/collection/components/vega-input/slimmers/controllers/vega-input-render-mode-controller.js +1 -3
  123. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-container-renderer.js +1 -5
  124. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-renderer.js +1 -4
  125. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-suggestions-renderer.js +5 -2
  126. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-prefix-slot-renderer.js +1 -1
  127. package/dist/collection/components/vega-input/vega-input.js +382 -101
  128. package/dist/collection/components/vega-input-credit-card/vega-input-credit-card.js +1 -1
  129. package/dist/collection/components/vega-input-numeric/vega-input-numeric.js +175 -49
  130. package/dist/collection/components/vega-input-passcode/slimmers/controllers/vega-input-passcode-keyboard-controller.js +2 -0
  131. package/dist/collection/components/vega-input-passcode/slimmers/renderers/vega-input-passcode-renderer.js +30 -2
  132. package/dist/collection/components/vega-input-passcode/vega-input-passcode.js +123 -35
  133. package/dist/collection/components/vega-input-phone-number/vega-input-phone-number.js +145 -56
  134. package/dist/collection/components/vega-input-range/slimmers/renderers/vega-input-range-input-renderer.js +15 -0
  135. package/dist/collection/components/vega-input-select/vega-input-select.js +6 -5
  136. package/dist/collection/components/vega-nav/vega-left-nav-link/slimmers/renderers/vega-left-nav-link-renderer.js +2 -3
  137. package/dist/collection/components/vega-popover/vega-popover-content-box/vega-popover-content-box.css +5 -0
  138. package/dist/collection/components/vega-radio/vega-radio-group/vega-radio-group.js +1 -1
  139. package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/image-node-renderer.js +7 -1
  140. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/insert-image-controller.js +7 -4
  141. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.js +113 -12
  142. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.js +2 -2
  143. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.js +4 -17
  144. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-source-view-renderer.js +102 -0
  145. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +49 -1
  146. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-image-editor/slimmers/renderers/vega-rich-text-image-editor-renderer.js +1 -1
  147. package/dist/collection/components/vega-stepper/vega-stepper.js +1 -1
  148. package/dist/collection/components/vega-textarea/vega-textarea.js +183 -52
  149. package/dist/collection/components/vega-tooltip/vega-tooltip-content-box/vega-tooltip-content-box.css +5 -0
  150. package/dist/collection/constants/ui.js +9 -1
  151. package/dist/collection/helpers/calendar/test/utils.test.js +54 -1
  152. package/dist/collection/helpers/calendar/utils.js +35 -0
  153. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +2 -2
  154. package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +1 -0
  155. package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +1 -0
  156. package/dist/collection/helpers/slimmers/element-appender/element-appender-slimmer.js +27 -0
  157. package/dist/collection/helpers/slimmers/element-appender/test/element-appender-slimmer.test.js +50 -0
  158. package/dist/collection/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.js +10 -3
  159. package/dist/collection/helpers/slimmers/mutation-observer/data-tab-index-value-mapper.js +80 -0
  160. package/dist/collection/helpers/slimmers/mutation-observer/test/aria-attributes-value-mapper.test.js +55 -3
  161. package/dist/collection/helpers/slimmers/mutation-observer/test/data-tab-index-value-mapper.test.js +120 -0
  162. package/dist/collection/helpers/slimmers/position-calculation/base-position-calculation-strategy.js +123 -9
  163. package/dist/collection/helpers/slimmers/position-calculation/position-calculation-controller.js +14 -4
  164. package/dist/collection/helpers/slimmers/position-calculation/screen-position-calculation-strategy.js +13 -4
  165. package/dist/collection/helpers/slimmers/position-calculation/test/body-position-calculation-strategy.test.js +7 -6
  166. package/dist/collection/helpers/slimmers/position-calculation/test/screen-position-calculation-strategy.test.js +162 -7
  167. package/dist/collection/helpers/translation/locales/en.js +16 -0
  168. package/dist/collection/helpers/translation/tests/internal-translation-controller.test.js +17 -0
  169. package/dist/collection/helpers/translation/tests/translation.test.js +14 -0
  170. package/dist/collection/helpers/ui/test/element-appender.test.js +7 -5
  171. package/dist/collection/utils/e2e-utils.js +6 -0
  172. package/dist/esm/{app-globals-32055795.js → app-globals-3b97bb20.js} +6 -6
  173. package/dist/esm/{aria-attributes-value-mapper-d4fef46a.js → aria-attributes-value-mapper-2c632641.js} +10 -3
  174. package/dist/esm/{breakpoints-56e5407b.js → breakpoints-13353e09.js} +1 -1
  175. package/dist/esm/{child-nodes-event-prevent-slimmer-331312b8.js → child-nodes-event-prevent-slimmer-4feabae0.js} +1 -1
  176. package/dist/esm/{code-block-b6247a45.js → code-block-d65bab61.js} +2 -2
  177. package/dist/esm/{component-value-history-controller-slimmer.abstract-2bb8533d.js → component-value-history-controller-slimmer.abstract-556fcf2a.js} +4 -4
  178. package/dist/esm/{date-required-rule-e771e7d9.js → date-required-rule-4ffd9cae.js} +1 -1
  179. package/dist/esm/{design-token-5bc034e1.js → design-token-b518a2aa.js} +3 -3
  180. package/dist/esm/{dto-renderer-manager-6fd22ab7.js → dto-renderer-manager-73df5cbe.js} +3 -3
  181. package/dist/esm/{element-appender-slimmer-9ea377d0.js → element-appender-slimmer-36b7a572.js} +181 -22
  182. package/dist/esm/{event-emit-slimmer-ffaecb9a.js → event-emit-slimmer-f879fd58.js} +1 -1
  183. package/dist/esm/{form-field-controller-slimmer-5817d14d.js → form-field-controller-slimmer-9a880420.js} +4 -4
  184. package/dist/esm/{image-annotation-action-6701b4c9.js → image-annotation-action-eb3dcad5.js} +3 -3
  185. package/dist/esm/index.js +18 -18
  186. package/dist/esm/{inject-keyboard-manager-78730062.js → inject-keyboard-manager-e5481833.js} +1 -1
  187. package/dist/esm/{internal-translation-controller-911515f9.js → internal-translation-controller-0787a7a7.js} +16 -0
  188. package/dist/esm/{internal-vega-event-manager-32a3d848.js → internal-vega-event-manager-3aebbe55.js} +2 -2
  189. package/dist/esm/{keyboard-manager-38934f94.js → keyboard-manager-4dfc625f.js} +1 -1
  190. package/dist/esm/{keyboard-manager-slimmer-9984d922.js → keyboard-manager-slimmer-87bf68f1.js} +1 -1
  191. package/dist/esm/loader.js +14 -14
  192. package/dist/esm/{month-view-generator-eaf9029c.js → month-view-generator-94134ec5.js} +1 -1
  193. package/dist/esm/{page-resize-observer-slimmer-d6af0d86.js → page-resize-observer-slimmer-e0505250.js} +1 -1
  194. package/dist/esm/{public-rules-25cc3a39.js → public-rules-49912d52.js} +9 -9
  195. package/dist/esm/{range-663f44dc.js → range-0a22b512.js} +1 -1
  196. package/dist/esm/{responsive-format-facade-aa705823.js → responsive-format-facade-b3799ff9.js} +3 -3
  197. package/dist/esm/{rich-text-editor-required-rule-a238b862.js → rich-text-editor-required-rule-d86e3a51.js} +1 -1
  198. package/dist/esm/{string-format-strategy.abstract-713fba36.js → string-format-strategy.abstract-e40a0df7.js} +1 -1
  199. package/dist/esm/{string-input-formatter-slimmer-5b413ff9.js → string-input-formatter-slimmer-076764fc.js} +3 -3
  200. package/dist/esm/{string-mask-strategy-6beaf664.js → string-mask-strategy-df1f5707.js} +2 -2
  201. package/dist/esm/{style-formatter-28138f5c.js → style-formatter-95255392.js} +2 -2
  202. package/dist/esm/{sub-state-notify-slimmer-5133f1a8.js → sub-state-notify-slimmer-f4b3b0b9.js} +1 -1
  203. package/dist/esm/{sub-state-observer-slimmer-478c9f41.js → sub-state-observer-slimmer-058feaf0.js} +1 -1
  204. package/dist/esm/{time-required-rule-e4138a76.js → time-required-rule-b4af75ae.js} +1 -1
  205. package/dist/esm/{token-extension-73e4460a.js → token-extension-ffd98170.js} +7 -7
  206. package/dist/esm/{translation-slimmer-2394b173.js → translation-slimmer-e788cae4.js} +1 -1
  207. package/dist/esm/{type-guard-f50e34d6.js → type-guard-f69d2935.js} +37 -3
  208. package/dist/esm/{ui-28fd4193.js → ui-41f725b7.js} +8 -1
  209. package/dist/esm/{valid-credit-card-number-rule-22ce81db.js → valid-credit-card-number-rule-c023326d.js} +1 -1
  210. package/dist/esm/vega-accordion.entry.js +9 -9
  211. package/dist/esm/vega-app-header-button.entry.js +31 -13
  212. package/dist/esm/vega-banner.entry.js +3 -3
  213. package/dist/esm/vega-box.entry.js +8 -8
  214. package/dist/esm/vega-breadcrumb.entry.js +4 -4
  215. package/dist/esm/vega-button-circle.entry.js +12 -12
  216. package/dist/esm/vega-button-group_2.entry.js +7 -7
  217. package/dist/esm/vega-button-link.entry.js +20 -4
  218. package/dist/esm/vega-button.entry.js +11 -11
  219. package/dist/esm/vega-calendar_4.entry.js +15 -15
  220. package/dist/esm/vega-card.entry.js +6 -6
  221. package/dist/esm/vega-carousel.entry.js +9 -9
  222. package/dist/esm/vega-checkbox_2.entry.js +11 -11
  223. package/dist/esm/vega-chip.entry.js +11 -11
  224. package/dist/esm/vega-code-block.entry.js +16 -15
  225. package/dist/esm/vega-color-picker.entry.js +10 -10
  226. package/dist/esm/vega-combo-box.entry.js +14 -14
  227. package/dist/esm/vega-date-picker_2.entry.js +114 -33
  228. package/dist/esm/vega-dialog_2.entry.js +11 -11
  229. package/dist/esm/vega-divider.entry.js +7 -7
  230. package/dist/esm/vega-dropdown_5.entry.js +42 -18
  231. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  232. package/dist/esm/{vega-event-id-38aa77a0.js → vega-event-id-fdc58a67.js} +2 -1
  233. package/dist/esm/vega-field-label.entry.js +3 -3
  234. package/dist/esm/vega-file-uploader.entry.js +11 -11
  235. package/dist/esm/vega-flag-icon.entry.js +6 -6
  236. package/dist/esm/vega-flex.entry.js +9 -9
  237. package/dist/esm/vega-font.entry.js +7 -7
  238. package/dist/esm/vega-form.entry.js +13 -13
  239. package/dist/esm/vega-grid.entry.js +6 -6
  240. package/dist/esm/vega-icon.entry.js +6 -6
  241. package/dist/esm/vega-image-uploader.entry.js +14 -14
  242. package/dist/esm/vega-input-credit-card.entry.js +16 -16
  243. package/dist/esm/vega-input-numeric.entry.js +102 -42
  244. package/dist/esm/vega-input-passcode.entry.js +109 -36
  245. package/dist/esm/vega-input-phone-number.entry.js +91 -41
  246. package/dist/esm/vega-input-range.entry.js +27 -12
  247. package/dist/esm/vega-input-select.entry.js +17 -17
  248. package/dist/esm/vega-input.entry.js +414 -187
  249. package/dist/esm/{vega-internal-event-id-799d012e.js → vega-internal-event-id-12783594.js} +2 -1
  250. package/dist/esm/vega-item-toggle.entry.js +4 -4
  251. package/dist/esm/vega-left-nav_5.entry.js +15 -16
  252. package/dist/esm/vega-loader-wrapper_2.entry.js +6 -6
  253. package/dist/esm/vega-page-notification_2.entry.js +1 -1
  254. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +4 -4
  255. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +4 -4
  256. package/dist/esm/vega-pagination.entry.js +12 -12
  257. package/dist/esm/vega-popover_2.entry.js +15 -15
  258. package/dist/esm/vega-progress-tracker_2.entry.js +12 -12
  259. package/dist/esm/vega-radio_2.entry.js +14 -14
  260. package/dist/esm/vega-rich-text-content.entry.js +17 -11
  261. package/dist/esm/vega-rich-text-editor_4.entry.js +589 -396
  262. package/dist/esm/vega-segment-control.entry.js +6 -6
  263. package/dist/esm/vega-selection-chip_2.entry.js +14 -14
  264. package/dist/esm/vega-selection-tile_2.entry.js +12 -12
  265. package/dist/esm/vega-sidenav_3.entry.js +12 -12
  266. package/dist/esm/vega-signature-capture.entry.js +14 -14
  267. package/dist/esm/vega-stepper.entry.js +12 -12
  268. package/dist/esm/vega-tab-group_2.entry.js +7 -7
  269. package/dist/esm/vega-table_11.entry.js +14 -14
  270. package/dist/esm/vega-text.entry.js +3 -3
  271. package/dist/esm/vega-textarea.entry.js +110 -42
  272. package/dist/esm/vega-time-picker_2.entry.js +18 -18
  273. package/dist/esm/vega-toggle-switch.entry.js +10 -10
  274. package/dist/esm/vega-tooltip_2.entry.js +11 -11
  275. package/dist/esm/vega.js +14 -14
  276. package/dist/esm/{wait-for-component-did-render-b08ef07b.js → wait-for-component-did-render-4d0a3428.js} +1 -1
  277. package/dist/sri/vega-sri-manifest.json +341 -341
  278. package/dist/types/components/vega-app-header-button/types.d.ts +18 -0
  279. package/dist/types/components/vega-app-header-button/vega-app-header-button.d.ts +8 -1
  280. package/dist/types/components/vega-button-link/vega-button-link.d.ts +2 -0
  281. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-open-state-controller.d.ts +21 -0
  282. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-selection-controller.d.ts +1 -0
  283. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +7 -0
  284. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.d.ts +11 -0
  285. package/dist/types/components/vega-input/slimmers/controllers/vega-input-render-mode-controller.d.ts +0 -1
  286. package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-renderer.d.ts +0 -1
  287. package/dist/types/components/vega-input/vega-input.d.ts +321 -79
  288. package/dist/types/components/vega-input-numeric/vega-input-numeric.d.ts +117 -42
  289. package/dist/types/components/vega-input-passcode/slimmers/renderers/vega-input-passcode-renderer.d.ts +14 -0
  290. package/dist/types/components/vega-input-passcode/vega-input-passcode.d.ts +82 -28
  291. package/dist/types/components/vega-input-phone-number/vega-input-phone-number.d.ts +99 -34
  292. package/dist/types/components/vega-input-range/slimmers/renderers/vega-input-range-input-renderer.d.ts +8 -0
  293. package/dist/types/components/vega-input-select/vega-input-select.d.ts +2 -2
  294. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/insert-image-controller.d.ts +7 -1
  295. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.d.ts +30 -2
  296. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.d.ts +1 -1
  297. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.d.ts +1 -3
  298. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-source-view-renderer.d.ts +37 -0
  299. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +16 -0
  300. package/dist/types/components/vega-textarea/vega-textarea.d.ts +123 -41
  301. package/dist/types/components.d.ts +429 -219
  302. package/dist/types/constants/ui.d.ts +2 -2
  303. package/dist/types/helpers/calendar/utils.d.ts +17 -0
  304. package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +1 -0
  305. package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +1 -0
  306. package/dist/types/helpers/slimmers/element-appender/element-appender-slimmer.d.ts +12 -0
  307. package/dist/types/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.d.ts +2 -1
  308. package/dist/types/helpers/slimmers/mutation-observer/data-tab-index-value-mapper.d.ts +35 -0
  309. package/dist/types/helpers/slimmers/mutation-observer/test/data-tab-index-value-mapper.test.d.ts +1 -0
  310. package/dist/types/helpers/slimmers/position-calculation/base-position-calculation-strategy.d.ts +60 -3
  311. package/dist/types/helpers/slimmers/position-calculation/screen-position-calculation-strategy.d.ts +3 -2
  312. package/dist/types/helpers/slimmers/position-calculation/test/body-position-calculation-strategy.test.d.ts +1 -1
  313. package/dist/types/helpers/translation/interface.d.ts +17 -1
  314. package/dist/types/types/components.type.d.ts +1 -0
  315. package/dist/types/types/type-guard.d.ts +3 -3
  316. package/dist/types/types/ui.type.d.ts +3 -2
  317. package/dist/types/utils/e2e-utils.d.ts +2 -0
  318. package/dist/vega/index.esm.js +1 -1
  319. package/dist/vega/{p-9441f2ba.entry.js → p-0009e0bc.entry.js} +1 -1
  320. package/dist/vega/{p-2d69632d.js → p-02976501.js} +1 -1
  321. package/dist/vega/{p-bf6fc19f.entry.js → p-03280f85.entry.js} +1 -1
  322. package/dist/vega/{p-f3e6483c.js → p-03b1e442.js} +1 -1
  323. package/dist/vega/{p-33f9ad94.entry.js → p-0681ffee.entry.js} +1 -1
  324. package/dist/vega/{p-3ce2b05c.entry.js → p-093aa0cb.entry.js} +1 -1
  325. package/dist/vega/{p-ffd48e37.entry.js → p-1828f9e6.entry.js} +1 -1
  326. package/dist/vega/{p-f428086c.entry.js → p-19883e27.entry.js} +1 -1
  327. package/dist/vega/p-1e015382.js +1 -0
  328. package/dist/vega/{p-7425cedc.entry.js → p-1ff45314.entry.js} +1 -1
  329. package/dist/vega/{p-9339c6c4.js → p-24b4c64f.js} +1 -1
  330. package/dist/vega/{p-5833f33b.entry.js → p-2e7ec8e0.entry.js} +1 -1
  331. package/dist/vega/{p-1a3236e7.entry.js → p-309b5016.entry.js} +1 -1
  332. package/dist/vega/{p-857069a5.entry.js → p-3592a26d.entry.js} +1 -1
  333. package/dist/vega/{p-560d2f48.entry.js → p-383e235a.entry.js} +1 -1
  334. package/dist/vega/p-3992038a.js +1 -0
  335. package/dist/vega/{p-02c9796a.js → p-3a537cd0.js} +1 -1
  336. package/dist/vega/{p-daa60a59.entry.js → p-3b7ad04b.entry.js} +1 -1
  337. package/dist/vega/{p-5485c387.entry.js → p-3d4b8066.entry.js} +1 -1
  338. package/dist/vega/{p-7d7aaff9.entry.js → p-3e484d99.entry.js} +1 -1
  339. package/dist/vega/{p-c165232c.entry.js → p-3fd3861c.entry.js} +1 -1
  340. package/dist/vega/{p-d78f6ede.js → p-4079e932.js} +1 -1
  341. package/dist/vega/{p-5eb7f382.js → p-43df17a1.js} +1 -1
  342. package/dist/vega/{p-db5fa164.entry.js → p-473ceda5.entry.js} +1 -1
  343. package/dist/vega/{p-67745549.entry.js → p-474b97cf.entry.js} +1 -1
  344. package/dist/vega/{p-242fbcad.entry.js → p-47c202eb.entry.js} +1 -1
  345. package/dist/vega/p-4e0344bc.entry.js +1 -0
  346. package/dist/vega/{p-e6cf2ace.entry.js → p-4efe9cd8.entry.js} +1 -1
  347. package/dist/vega/{p-36a09524.entry.js → p-536ad3d7.entry.js} +1 -1
  348. package/dist/vega/{p-22056609.entry.js → p-53e0b2bd.entry.js} +1 -1
  349. package/dist/vega/p-57180993.entry.js +1 -0
  350. package/dist/vega/{p-e827d56d.js → p-5b238c6d.js} +1 -1
  351. package/dist/vega/{p-464559e3.js → p-5ba34330.js} +1 -1
  352. package/dist/vega/p-5e1d0f21.entry.js +1 -0
  353. package/dist/vega/{p-a786259a.js → p-5ed5aa26.js} +1 -1
  354. package/dist/vega/p-5f377954.js +1 -1
  355. package/dist/vega/{p-d64fab3d.js → p-5f81beae.js} +1 -1
  356. package/dist/vega/{p-34bcf4ed.entry.js → p-6a8ac66d.entry.js} +1 -1
  357. package/dist/vega/{p-4bffdb28.js → p-6b3776ec.js} +1 -1
  358. package/dist/vega/{p-2b142818.entry.js → p-6b4021f0.entry.js} +1 -1
  359. package/dist/vega/{p-2a10e2e5.js → p-6cf28c27.js} +1 -1
  360. package/dist/vega/{p-0037068c.entry.js → p-71cd1d9e.entry.js} +1 -1
  361. package/dist/vega/{p-4aa52ed2.entry.js → p-7440325c.entry.js} +1 -1
  362. package/dist/vega/p-764425e4.entry.js +1 -0
  363. package/dist/vega/p-77908e45.entry.js +1 -0
  364. package/dist/vega/{p-a0b66c25.js → p-7ade785e.js} +1 -1
  365. package/dist/vega/{p-f2b0b58a.js → p-7db5e003.js} +1 -1
  366. package/dist/vega/{p-021d4ae4.js → p-7db918f4.js} +1 -1
  367. package/dist/vega/{p-0572c393.entry.js → p-7f398d23.entry.js} +1 -1
  368. package/dist/vega/p-7f665911.entry.js +1 -0
  369. package/dist/vega/p-840f156e.entry.js +1 -0
  370. package/dist/vega/{p-95528b47.js → p-87379d3c.js} +1 -1
  371. package/dist/vega/p-87ed06cd.entry.js +1 -0
  372. package/dist/vega/{p-a8792e3d.js → p-882a220c.js} +1 -1
  373. package/dist/vega/{p-6b6f0fb4.js → p-898bcb24.js} +1 -1
  374. package/dist/vega/{p-d07f5d5a.entry.js → p-8fbb677e.entry.js} +1 -1
  375. package/dist/vega/p-9493d87a.js +1 -0
  376. package/dist/vega/{p-81b044b9.js → p-951c0172.js} +1 -1
  377. package/dist/vega/p-95919581.entry.js +1 -0
  378. package/dist/vega/{p-7c39ce96.js → p-95d1b547.js} +1 -1
  379. package/dist/vega/{p-50d074ed.entry.js → p-99c8f9a4.entry.js} +1 -1
  380. package/dist/vega/{p-e632475e.js → p-9c713bc0.js} +1 -1
  381. package/dist/vega/{p-3afc025e.entry.js → p-9dc77b66.entry.js} +1 -1
  382. package/dist/vega/{p-415ffa35.js → p-9f467a59.js} +1 -1
  383. package/dist/vega/p-a113fd15.entry.js +1 -0
  384. package/dist/vega/{p-4742feef.entry.js → p-a253e791.entry.js} +1 -1
  385. package/dist/vega/{p-0d4cb1c7.entry.js → p-a3272850.entry.js} +1 -1
  386. package/dist/vega/{p-b1773281.entry.js → p-a432708d.entry.js} +1 -1
  387. package/dist/vega/p-a57a7ab8.entry.js +1 -0
  388. package/dist/vega/{p-6d219c44.entry.js → p-a58bd510.entry.js} +1 -1
  389. package/dist/vega/{p-4ea30592.js → p-a957e15f.js} +1 -1
  390. package/dist/vega/{p-bff57aa4.js → p-abb81b7b.js} +1 -1
  391. package/dist/vega/{p-100b44c3.entry.js → p-ae6ed091.entry.js} +1 -1
  392. package/dist/vega/{p-03004a05.entry.js → p-b5e31243.entry.js} +1 -1
  393. package/dist/vega/{p-49845a91.js → p-b88ca09b.js} +1 -1
  394. package/dist/vega/{p-c2d2faa0.js → p-b901d624.js} +1 -1
  395. package/dist/vega/p-ba475520.entry.js +1 -0
  396. package/dist/vega/p-bdb5180c.js +1 -0
  397. package/dist/vega/p-bf04ff19.js +1 -0
  398. package/dist/vega/{p-1a51bf6f.js → p-c208a3b7.js} +1 -1
  399. package/dist/vega/{p-3c05abd9.entry.js → p-c25577ae.entry.js} +1 -1
  400. package/dist/vega/{p-1f3cd061.entry.js → p-c2560608.entry.js} +1 -1
  401. package/dist/vega/{p-0e679d8c.js → p-c2df94f6.js} +1 -1
  402. package/dist/vega/{p-cfecc1cb.entry.js → p-c3eec160.entry.js} +1 -1
  403. package/dist/vega/p-c6031d3f.entry.js +1 -0
  404. package/dist/vega/{p-70df91fb.entry.js → p-c87cf96a.entry.js} +1 -1
  405. package/dist/vega/{p-592296d7.entry.js → p-cc243e62.entry.js} +1 -1
  406. package/dist/vega/{p-cccd7648.entry.js → p-cd3d177b.entry.js} +1 -1
  407. package/dist/vega/{p-be1a210b.js → p-d0687ec0.js} +1 -1
  408. package/dist/vega/{p-b201f379.js → p-d25db724.js} +1 -1
  409. package/dist/vega/{p-aa1174dc.js → p-d42dbe39.js} +1 -1
  410. package/dist/vega/{p-9fb877c1.entry.js → p-d5570331.entry.js} +1 -1
  411. package/dist/vega/p-d5797747.js +1 -0
  412. package/dist/vega/{p-1a011d47.entry.js → p-d7434f44.entry.js} +1 -1
  413. package/dist/vega/p-db92453f.entry.js +1 -0
  414. package/dist/vega/{p-0a3a285b.entry.js → p-e5be807b.entry.js} +1 -1
  415. package/dist/vega/p-e6f0097f.js +1 -0
  416. package/dist/vega/{p-e8775a56.entry.js → p-e7a8b61e.entry.js} +1 -1
  417. package/dist/vega/{p-d2ee5711.entry.js → p-f46f6679.entry.js} +1 -1
  418. package/dist/vega/{p-1fa0c7da.entry.js → p-f49e8cc5.entry.js} +1 -1
  419. package/dist/vega/p-f5b6059d.entry.js +1 -0
  420. package/dist/vega/p-fb40a829.js +1 -0
  421. package/dist/vega/vega.esm.js +1 -1
  422. package/package.json +3 -2
  423. package/dist/vega/p-010ff53d.entry.js +0 -1
  424. package/dist/vega/p-168bb296.entry.js +0 -1
  425. package/dist/vega/p-40f39194.js +0 -1
  426. package/dist/vega/p-43ff48c0.entry.js +0 -1
  427. package/dist/vega/p-4aa94940.entry.js +0 -1
  428. package/dist/vega/p-4bee4202.entry.js +0 -1
  429. package/dist/vega/p-5cfce62d.entry.js +0 -1
  430. package/dist/vega/p-60f77f5f.entry.js +0 -1
  431. package/dist/vega/p-641cdb5c.entry.js +0 -1
  432. package/dist/vega/p-ab834f06.js +0 -1
  433. package/dist/vega/p-ac82b9f9.entry.js +0 -1
  434. package/dist/vega/p-b54dc37c.entry.js +0 -1
  435. package/dist/vega/p-b597393b.entry.js +0 -1
  436. package/dist/vega/p-b5f18f4b.entry.js +0 -1
  437. package/dist/vega/p-b7f3221f.js +0 -1
  438. package/dist/vega/p-c292ade4.entry.js +0 -1
  439. package/dist/vega/p-c3d2f316.js +0 -1
  440. package/dist/vega/p-cc5eaa1b.js +0 -1
  441. package/dist/vega/p-d1cfe972.entry.js +0 -1
  442. package/dist/vega/p-dad3ba5f.js +0 -1
  443. package/dist/vega/p-de64f6e6.js +0 -1
  444. package/dist/vega/p-e7fbef97.js +0 -1
  445. package/dist/vega/p-fc9ac6e9.entry.js +0 -1
@@ -53,113 +53,181 @@ export class VegaTextarea {
53
53
  this.vegaComponentUsageRuntimeMetricsSlimmer = new VegaComponentUsageRuntimeMetricsSlimmer(VegaTextareaRuntimeMetricsPayloadDefinition);
54
54
  this.currentCharCount = 0;
55
55
  /**
56
- * Specifies a placeholder string that displays as a
57
- * temporary hint or example within the text area.
56
+ * Specifies a placeholder string that displays as a temporary hint or
57
+ * example within the text area. The placeholder text is shown when the
58
+ * field is empty and disappears once the user begins typing.
58
59
  *
59
- * It indicates the expected format or pattern of
60
- * the input within the text area.
60
+ * Use this to indicate the expected format or content of the input,
61
+ * for example `'Enter your comments here...'`.
61
62
  *
63
+ * @default ''
62
64
  * @vegaVersion 1.11.0
63
65
  */
64
66
  this.placeholder = '';
65
67
  /**
66
- * Provides a supplementary prompt message that assists users in
67
- * understanding the expected value within the text area.
68
+ * Provides a supplementary helper message displayed below the text area
69
+ * that assists users in understanding the expected value or format.
68
70
  *
71
+ * The hint is visible at all times (not just on focus) and is typically
72
+ * used for guidance such as character requirements or formatting rules.
73
+ *
74
+ * @default ''
69
75
  * @vegaVersion 1.11.0
70
76
  */
71
77
  this.hint = '';
72
78
  /**
73
- * Specifies whether the text area is disabled.
79
+ * Specifies whether the text area is disabled. When `true`, the text area
80
+ * is non-interactive — the user cannot type, focus, or select the field.
81
+ * The disabled state is reflected as an HTML attribute for CSS styling.
74
82
  *
83
+ * @default false
75
84
  * @vegaVersion 1.11.0
76
85
  */
77
86
  this.disabled = false;
78
87
  /**
79
- * Specifies the label or title for the text area.
88
+ * Specifies the visible label text rendered above the text area. The label
89
+ * helps identify the purpose or content expected within the field and also
90
+ * serves as the accessible `aria-label` for screen readers when present.
80
91
  *
81
- * It provides descriptive text that helps identify the
82
- * purpose or content expected within the text area.
92
+ * Clicking the label will focus the text area.
83
93
  *
94
+ * @default ''
84
95
  * @vegaVersion 1.11.0
85
96
  */
86
97
  this.label = '';
87
98
  /**
88
- * Specifies the properties for the suffix button associated with the input.
99
+ * Configuration object for an optional suffix button rendered beside the
100
+ * field label. Use this to provide an inline action (e.g., a help or info
101
+ * button) next to the label text.
89
102
  *
90
- * It provides essential information and functionality
91
- * related to the suffix button's role and behavior.
103
+ * When the button is clicked, the `vegaLabelButtonClick` event is emitted.
104
+ * Set to `null` to hide the suffix button.
92
105
  *
106
+ * @default null
93
107
  * @vegaVersion 2.68.0
94
108
  */
95
109
  this.labelSuffixButtonConfig = null;
96
110
  /**
97
- * Determines whether to display a character counter
98
- * for the textarea.
111
+ * Determines whether to display a live character counter below the text area.
112
+ *
113
+ * When `true`, the counter shows the current character count. If `maxLength`
114
+ * is also set, the counter displays in the format `current/max` and visually
115
+ * highlights when the limit is exceeded.
99
116
  *
117
+ * @default false
100
118
  * @vegaVersion 1.11.0
101
119
  */
102
120
  this.showCounter = false;
103
121
  /**
104
- * Specifies the initial value or content of the
105
- * textarea field.
122
+ * The current value (content) of the text area field.
106
123
  *
124
+ * This property is mutable and will be updated programmatically when the
125
+ * user types into the text area. It can also be set externally to
126
+ * pre-populate or reset the field. Changes to this property trigger the
127
+ * `vegaChange` event and update the character counter if `showCounter`
128
+ * is enabled. Supports two-way binding in framework wrappers.
129
+ *
130
+ * @default ''
107
131
  * @vegaVersion 1.11.0
108
132
  */
109
133
  /* eslint-disable-next-line @stencil/strict-mutable */
110
134
  this.value = '';
111
135
  /**
112
- * Specifies the validation status of the
113
- * text area component.
136
+ * Reflects the current validation status of the text area.
137
+ *
138
+ * - `true` — the field value passes all validation rules.
139
+ * - `false` — one or more validation rules have failed.
140
+ * - `null` — the field has not been validated yet (initial state).
114
141
  *
142
+ * This property is mutable: it is updated automatically when
143
+ * `autoValidation` is enabled, but can also be set manually to override
144
+ * the validation state. The value is reflected as an HTML attribute.
145
+ *
146
+ * @default null
115
147
  * @vegaVersion 1.11.0
116
148
  */
117
149
  /* eslint-disable-next-line @stencil/strict-mutable */
118
150
  this.isValid = null;
119
151
  /**
120
- * Determines whether automatic validation should be
121
- * implemented for the text area.
152
+ * Determines whether the text area should be validated automatically as the
153
+ * user types. When `true`, validation rules (including `required`, `minLength`,
154
+ * `maxLength`, and custom `validationRules`) are evaluated on blur and the
155
+ * `isValid` property is updated accordingly.
156
+ *
157
+ * Set to `false` to handle validation manually.
122
158
  *
159
+ * @default true
123
160
  * @vegaVersion 1.11.0
124
161
  */
125
162
  this.autoValidation = true;
126
163
  /**
127
- * Determines whether the content of the textarea must be
128
- * provided by the user before submitting the form or
129
- * completing the input process.
164
+ * Determines whether the text area must have a non-empty value before the
165
+ * form can be submitted. When `true`, a required-field indicator is shown
166
+ * on the label and the built-in `RequiredFieldRule` is applied during
167
+ * validation.
130
168
  *
169
+ * @default false
131
170
  * @vegaVersion 1.11.0
132
171
  */
133
172
  /* eslint-disable-next-line @stencil/strict-mutable */
134
173
  this.required = false;
135
174
  /**
136
- * Specifies the maximum number of characters (UTF-16 code units)
137
- * that the user can enter in the text area.
175
+ * Specifies the maximum number of characters (UTF-16 code units) that the
176
+ * user can enter in the text area. The native `maxlength` attribute is
177
+ * applied to the inner `<textarea>` element.
178
+ *
179
+ * When `showCounter` is `true`, the maximum value is displayed alongside
180
+ * the current character count (e.g., `42/200`). Exceeding this limit
181
+ * triggers a visual warning on the counter and fails the
182
+ * `MaxStringLengthRule` during validation.
183
+ *
184
+ * Set to `null` to allow unlimited input.
138
185
  *
186
+ * @default null
139
187
  * @vegaVersion 1.11.0
140
188
  */
141
189
  this.maxLength = null;
142
- /** Specifies the minimum number of characters (UTF-16 code units)
143
- * that the user must enter in the text area.
190
+ /**
191
+ * Specifies the minimum number of characters (UTF-16 code units) that the
192
+ * user must enter in the text area for the value to be considered valid.
193
+ * The native `minlength` attribute is applied to the inner `<textarea>`
194
+ * element.
195
+ *
196
+ * When set, the `MinStringLengthRule` is applied during validation. Set to
197
+ * `null` to impose no minimum length.
144
198
  *
199
+ * @default null
145
200
  * @vegaVersion 1.11.0
146
201
  */
147
202
  this.minLength = null;
148
203
  /**
149
- * Determines whether the text area is vertically resizable.
204
+ * Determines whether the user can vertically resize the text area by
205
+ * dragging its bottom-right corner. When `false`, the resize handle is
206
+ * hidden via CSS and the text area height is fixed.
150
207
  *
208
+ * @default true
151
209
  * @vegaVersion 2.19.0
152
210
  */
153
211
  this.resizable = true;
154
212
  /**
155
- * Specifies the number of visible lines in the textarea. The value must be an integer greater than or equal to 2.
213
+ * Specifies the number of visible text lines in the text area, controlling
214
+ * its initial height. Accepts integers ≥ 2. For optimal display, values
215
+ * below 2 are internally adjusted to 4 rows.
156
216
  *
217
+ * @default 5
157
218
  * @vegaVersion 2.63.0
158
219
  */
159
220
  this.rows = 5;
160
221
  /**
161
- * Specifies custom validation rules for the text area.
222
+ * An array of custom validation rules applied to the text area in addition
223
+ * to the built-in rules (`RequiredFieldRule`, `MinStringLengthRule`,
224
+ * `MaxStringLengthRule`). Each rule must implement the
225
+ * `FormFieldValidationRule` interface.
162
226
  *
227
+ * Rules are evaluated in order when `autoValidation` is enabled or when
228
+ * validation is triggered programmatically.
229
+ *
230
+ * @default []
163
231
  * @vegaVersion 1.11.0
164
232
  */
165
233
  this.validationRules = [];
@@ -269,10 +337,13 @@ export class VegaTextarea {
269
337
  "optional": false,
270
338
  "docs": {
271
339
  "tags": [{
340
+ "name": "default",
341
+ "text": "''"
342
+ }, {
272
343
  "name": "vegaVersion",
273
344
  "text": "1.11.0"
274
345
  }],
275
- "text": "Specifies a placeholder string that displays as a\n temporary hint or example within the text area.\n\nIt indicates the expected format or pattern of\n the input within the text area."
346
+ "text": "Specifies a placeholder string that displays as a temporary hint or\nexample within the text area. The placeholder text is shown when the\nfield is empty and disappears once the user begins typing.\n\nUse this to indicate the expected format or content of the input,\nfor example `'Enter your comments here...'`."
276
347
  },
277
348
  "attribute": "placeholder",
278
349
  "reflect": false,
@@ -290,10 +361,13 @@ export class VegaTextarea {
290
361
  "optional": false,
291
362
  "docs": {
292
363
  "tags": [{
364
+ "name": "default",
365
+ "text": "''"
366
+ }, {
293
367
  "name": "vegaVersion",
294
368
  "text": "1.11.0"
295
369
  }],
296
- "text": "Provides a supplementary prompt message that assists users in\n understanding the expected value within the text area."
370
+ "text": "Provides a supplementary helper message displayed below the text area\nthat assists users in understanding the expected value or format.\n\nThe hint is visible at all times (not just on focus) and is typically\nused for guidance such as character requirements or formatting rules."
297
371
  },
298
372
  "attribute": "hint",
299
373
  "reflect": false,
@@ -311,10 +385,13 @@ export class VegaTextarea {
311
385
  "optional": false,
312
386
  "docs": {
313
387
  "tags": [{
388
+ "name": "default",
389
+ "text": "false"
390
+ }, {
314
391
  "name": "vegaVersion",
315
392
  "text": "1.11.0"
316
393
  }],
317
- "text": "Specifies whether the text area is disabled."
394
+ "text": "Specifies whether the text area is disabled. When `true`, the text area\nis non-interactive \u2014 the user cannot type, focus, or select the field.\nThe disabled state is reflected as an HTML attribute for CSS styling."
318
395
  },
319
396
  "attribute": "disabled",
320
397
  "reflect": true,
@@ -332,10 +409,13 @@ export class VegaTextarea {
332
409
  "optional": false,
333
410
  "docs": {
334
411
  "tags": [{
412
+ "name": "default",
413
+ "text": "''"
414
+ }, {
335
415
  "name": "vegaVersion",
336
416
  "text": "1.11.0"
337
417
  }],
338
- "text": "Specifies the label or title for the text area.\n\nIt provides descriptive text that helps identify the\n purpose or content expected within the text area."
418
+ "text": "Specifies the visible label text rendered above the text area. The label\nhelps identify the purpose or content expected within the field and also\nserves as the accessible `aria-label` for screen readers when present.\n\nClicking the label will focus the text area."
339
419
  },
340
420
  "attribute": "label",
341
421
  "reflect": false,
@@ -362,10 +442,13 @@ export class VegaTextarea {
362
442
  "optional": false,
363
443
  "docs": {
364
444
  "tags": [{
445
+ "name": "default",
446
+ "text": "null"
447
+ }, {
365
448
  "name": "vegaVersion",
366
449
  "text": "2.68.0"
367
450
  }],
368
- "text": "Specifies the properties for the suffix button associated with the input.\n\nIt provides essential information and functionality\n related to the suffix button's role and behavior."
451
+ "text": "Configuration object for an optional suffix button rendered beside the\nfield label. Use this to provide an inline action (e.g., a help or info\nbutton) next to the label text.\n\nWhen the button is clicked, the `vegaLabelButtonClick` event is emitted.\nSet to `null` to hide the suffix button."
369
452
  },
370
453
  "defaultValue": "null"
371
454
  },
@@ -381,10 +464,13 @@ export class VegaTextarea {
381
464
  "optional": false,
382
465
  "docs": {
383
466
  "tags": [{
467
+ "name": "default",
468
+ "text": "false"
469
+ }, {
384
470
  "name": "vegaVersion",
385
471
  "text": "1.11.0"
386
472
  }],
387
- "text": "Determines whether to display a character counter\n for the textarea."
473
+ "text": "Determines whether to display a live character counter below the text area.\n\nWhen `true`, the counter shows the current character count. If `maxLength`\nis also set, the counter displays in the format `current/max` and visually\nhighlights when the limit is exceeded."
388
474
  },
389
475
  "attribute": "show-counter",
390
476
  "reflect": false,
@@ -402,10 +488,13 @@ export class VegaTextarea {
402
488
  "optional": false,
403
489
  "docs": {
404
490
  "tags": [{
491
+ "name": "default",
492
+ "text": "''"
493
+ }, {
405
494
  "name": "vegaVersion",
406
495
  "text": "1.11.0"
407
496
  }],
408
- "text": "Specifies the initial value or content of the\n textarea field."
497
+ "text": "The current value (content) of the text area field.\n\nThis property is mutable and will be updated programmatically when the\nuser types into the text area. It can also be set externally to\npre-populate or reset the field. Changes to this property trigger the\n`vegaChange` event and update the character counter if `showCounter`\nis enabled. Supports two-way binding in framework wrappers."
409
498
  },
410
499
  "attribute": "value",
411
500
  "reflect": true,
@@ -423,10 +512,13 @@ export class VegaTextarea {
423
512
  "optional": false,
424
513
  "docs": {
425
514
  "tags": [{
515
+ "name": "default",
516
+ "text": "null"
517
+ }, {
426
518
  "name": "vegaVersion",
427
519
  "text": "1.11.0"
428
520
  }],
429
- "text": "Specifies the validation status of the\n text area component."
521
+ "text": "Reflects the current validation status of the text area.\n\n- `true` \u2014 the field value passes all validation rules.\n- `false` \u2014 one or more validation rules have failed.\n- `null` \u2014 the field has not been validated yet (initial state).\n\nThis property is mutable: it is updated automatically when\n`autoValidation` is enabled, but can also be set manually to override\nthe validation state. The value is reflected as an HTML attribute."
430
522
  },
431
523
  "attribute": "is-valid",
432
524
  "reflect": true,
@@ -444,10 +536,13 @@ export class VegaTextarea {
444
536
  "optional": false,
445
537
  "docs": {
446
538
  "tags": [{
539
+ "name": "default",
540
+ "text": "true"
541
+ }, {
447
542
  "name": "vegaVersion",
448
543
  "text": "1.11.0"
449
544
  }],
450
- "text": "Determines whether automatic validation should be\n implemented for the text area."
545
+ "text": "Determines whether the text area should be validated automatically as the\nuser types. When `true`, validation rules (including `required`, `minLength`,\n`maxLength`, and custom `validationRules`) are evaluated on blur and the\n`isValid` property is updated accordingly.\n\nSet to `false` to handle validation manually."
451
546
  },
452
547
  "attribute": "auto-validation",
453
548
  "reflect": true,
@@ -465,10 +560,13 @@ export class VegaTextarea {
465
560
  "optional": false,
466
561
  "docs": {
467
562
  "tags": [{
563
+ "name": "default",
564
+ "text": "false"
565
+ }, {
468
566
  "name": "vegaVersion",
469
567
  "text": "1.11.0"
470
568
  }],
471
- "text": "Determines whether the content of the textarea must be\n provided by the user before submitting the form or\n completing the input process."
569
+ "text": "Determines whether the text area must have a non-empty value before the\nform can be submitted. When `true`, a required-field indicator is shown\non the label and the built-in `RequiredFieldRule` is applied during\nvalidation."
472
570
  },
473
571
  "attribute": "required",
474
572
  "reflect": true,
@@ -486,10 +584,13 @@ export class VegaTextarea {
486
584
  "optional": false,
487
585
  "docs": {
488
586
  "tags": [{
587
+ "name": "default",
588
+ "text": "null"
589
+ }, {
489
590
  "name": "vegaVersion",
490
591
  "text": "1.11.0"
491
592
  }],
492
- "text": "Specifies the maximum number of characters (UTF-16 code units)\n that the user can enter in the text area."
593
+ "text": "Specifies the maximum number of characters (UTF-16 code units) that the\nuser can enter in the text area. The native `maxlength` attribute is\napplied to the inner `<textarea>` element.\n\nWhen `showCounter` is `true`, the maximum value is displayed alongside\nthe current character count (e.g., `42/200`). Exceeding this limit\ntriggers a visual warning on the counter and fails the\n`MaxStringLengthRule` during validation.\n\nSet to `null` to allow unlimited input."
493
594
  },
494
595
  "attribute": "max-length",
495
596
  "reflect": true,
@@ -507,10 +608,13 @@ export class VegaTextarea {
507
608
  "optional": false,
508
609
  "docs": {
509
610
  "tags": [{
611
+ "name": "default",
612
+ "text": "null"
613
+ }, {
510
614
  "name": "vegaVersion",
511
615
  "text": "1.11.0"
512
616
  }],
513
- "text": "Specifies the minimum number of characters (UTF-16 code units)\n that the user must enter in the text area."
617
+ "text": "Specifies the minimum number of characters (UTF-16 code units) that the\nuser must enter in the text area for the value to be considered valid.\nThe native `minlength` attribute is applied to the inner `<textarea>`\nelement.\n\nWhen set, the `MinStringLengthRule` is applied during validation. Set to\n`null` to impose no minimum length."
514
618
  },
515
619
  "attribute": "min-length",
516
620
  "reflect": true,
@@ -528,10 +632,13 @@ export class VegaTextarea {
528
632
  "optional": false,
529
633
  "docs": {
530
634
  "tags": [{
635
+ "name": "default",
636
+ "text": "true"
637
+ }, {
531
638
  "name": "vegaVersion",
532
639
  "text": "2.19.0"
533
640
  }],
534
- "text": "Determines whether the text area is vertically resizable."
641
+ "text": "Determines whether the user can vertically resize the text area by\ndragging its bottom-right corner. When `false`, the resize handle is\nhidden via CSS and the text area height is fixed."
535
642
  },
536
643
  "attribute": "resizable",
537
644
  "reflect": false,
@@ -549,10 +656,13 @@ export class VegaTextarea {
549
656
  "optional": false,
550
657
  "docs": {
551
658
  "tags": [{
659
+ "name": "default",
660
+ "text": "5"
661
+ }, {
552
662
  "name": "vegaVersion",
553
663
  "text": "2.63.0"
554
664
  }],
555
- "text": "Specifies the number of visible lines in the textarea. The value must be an integer greater than or equal to 2."
665
+ "text": "Specifies the number of visible text lines in the text area, controlling\nits initial height. Accepts integers \u2265 2. For optimal display, values\nbelow 2 are internally adjusted to 4 rows."
556
666
  },
557
667
  "attribute": "rows",
558
668
  "reflect": false,
@@ -575,10 +685,13 @@ export class VegaTextarea {
575
685
  "optional": false,
576
686
  "docs": {
577
687
  "tags": [{
688
+ "name": "default",
689
+ "text": "[]"
690
+ }, {
578
691
  "name": "vegaVersion",
579
692
  "text": "1.11.0"
580
693
  }],
581
- "text": "Specifies custom validation rules for the text area."
694
+ "text": "An array of custom validation rules applied to the text area in addition\nto the built-in rules (`RequiredFieldRule`, `MinStringLengthRule`,\n`MaxStringLengthRule`). Each rule must implement the\n`FormFieldValidationRule` interface.\n\nRules are evaluated in order when `autoValidation` is enabled or when\nvalidation is triggered programmatically."
582
695
  },
583
696
  "defaultValue": "[]"
584
697
  }
@@ -594,10 +707,13 @@ export class VegaTextarea {
594
707
  "composed": true,
595
708
  "docs": {
596
709
  "tags": [{
710
+ "name": "eventDetail",
711
+ "text": "string \u2014 The updated text area value."
712
+ }, {
597
713
  "name": "vegaVersion",
598
714
  "text": "1.11.0"
599
715
  }],
600
- "text": "An event emitter notifying about changes in the value\n of the text area."
716
+ "text": "Fired whenever the text area value changes, whether by user input or\nprogrammatic update of the `value` property. This is the primary event\nfor reacting to content changes and implementing two-way binding."
601
717
  },
602
718
  "complexType": {
603
719
  "original": "string",
@@ -612,13 +728,16 @@ export class VegaTextarea {
612
728
  "composed": true,
613
729
  "docs": {
614
730
  "tags": [{
731
+ "name": "eventDetail",
732
+ "text": "string \u2014 The updated text area value."
733
+ }, {
615
734
  "name": "eventSemantics",
616
735
  "text": "namespace:native"
617
736
  }, {
618
737
  "name": "vegaVersion",
619
738
  "text": "2.0.0"
620
739
  }],
621
- "text": "An event emitter notifying about changes in the value\n of the text area."
740
+ "text": "Native-namespace mirror of `vegaChange`. Fired whenever the text area\nvalue changes. Provided for compatibility with standard DOM event\nlisteners."
622
741
  },
623
742
  "complexType": {
624
743
  "original": "string",
@@ -633,10 +752,13 @@ export class VegaTextarea {
633
752
  "composed": true,
634
753
  "docs": {
635
754
  "tags": [{
755
+ "name": "eventDetail",
756
+ "text": "undefined \u2014 No payload; signals the blur occurrence only."
757
+ }, {
636
758
  "name": "vegaVersion",
637
759
  "text": "1.11.0"
638
760
  }],
639
- "text": "An event emitter notifying the blur event of the inner\n textarea element within the text area."
761
+ "text": "Fired when the inner `<textarea>` element loses focus (blur). Use this\nevent to trigger validation or save actions when the user leaves the\ntext area."
640
762
  },
641
763
  "complexType": {
642
764
  "original": "undefined",
@@ -651,13 +773,16 @@ export class VegaTextarea {
651
773
  "composed": true,
652
774
  "docs": {
653
775
  "tags": [{
776
+ "name": "eventDetail",
777
+ "text": "undefined \u2014 No payload; signals the blur occurrence only."
778
+ }, {
654
779
  "name": "eventSemantics",
655
780
  "text": "namespace:native"
656
781
  }, {
657
782
  "name": "vegaVersion",
658
783
  "text": "2.0.0"
659
784
  }],
660
- "text": "An event emitter notifying the blur event of the inner\n textarea element within the text area."
785
+ "text": "Native-namespace mirror of `vegaBlur`. Fired when the inner `<textarea>`\nelement loses focus. Provided for compatibility with standard DOM event\nlisteners."
661
786
  },
662
787
  "complexType": {
663
788
  "original": "undefined",
@@ -672,10 +797,13 @@ export class VegaTextarea {
672
797
  "composed": true,
673
798
  "docs": {
674
799
  "tags": [{
800
+ "name": "eventDetail",
801
+ "text": "void"
802
+ }, {
675
803
  "name": "vegaVersion",
676
804
  "text": "2.68.0"
677
805
  }],
678
- "text": "An event emitter notifying that the suffix button associated with the field label has been clicked."
806
+ "text": "Fired when the suffix button configured via `labelSuffixButtonConfig` is\nclicked. Listen for this event to handle inline label actions such as\nopening a help dialog or toggling additional information."
679
807
  },
680
808
  "complexType": {
681
809
  "original": "any",
@@ -690,13 +818,16 @@ export class VegaTextarea {
690
818
  "composed": true,
691
819
  "docs": {
692
820
  "tags": [{
821
+ "name": "eventDetail",
822
+ "text": "void"
823
+ }, {
693
824
  "name": "eventSemantics",
694
825
  "text": "namespace:native"
695
826
  }, {
696
827
  "name": "vegaVersion",
697
828
  "text": "2.68.0"
698
829
  }],
699
- "text": "An event emitter notifying that the suffix button associated with the field label has been clicked."
830
+ "text": "Native-namespace mirror of `vegaLabelButtonClick`. Fired when the label\nsuffix button is clicked. Provided for compatibility with standard DOM\nevent listeners."
700
831
  },
701
832
  "complexType": {
702
833
  "original": "any",
@@ -66,6 +66,11 @@
66
66
  }
67
67
  }
68
68
 
69
+ :host(.vega-no-suitable-placement) .vega-tooltip-content::after,
70
+ :host(.vega-no-suitable-alignment) .vega-tooltip-content::after {
71
+ display: none;
72
+ }
73
+
69
74
  .vega-tooltip-content::after {
70
75
  content: "";
71
76
  position: absolute;
@@ -12,7 +12,14 @@ export const Placements = ['top', 'left', 'bottom', 'right'];
12
12
  export const Alignments = ['start', 'center', 'end'];
13
13
  export const ItemToggleTransitionMillisecond = 1500;
14
14
  // eslint-disable-next-line @typescript-eslint/typedef
15
- export const FlexDirections = ['row', 'col', 'row-reverse', 'col-reverse'];
15
+ export const FlexDirections = [
16
+ 'row',
17
+ 'col',
18
+ 'column',
19
+ 'row-reverse',
20
+ 'col-reverse',
21
+ 'column-reverse',
22
+ ];
16
23
  // eslint-disable-next-line @typescript-eslint/typedef
17
24
  export const FlexAlignItem = ['start', 'center', 'end', 'baseline', 'stretch'];
18
25
  // eslint-disable-next-line @typescript-eslint/typedef
@@ -93,6 +100,7 @@ export const VegaNativeEventName = [
93
100
  'selectionChange',
94
101
  'suggestionItemClick',
95
102
  'nativeInputChange',
103
+ 'sourceCodeChange',
96
104
  ];
97
105
  // eslint-disable-next-line @typescript-eslint/typedef
98
106
  export const CssStates = ['default', 'hover', 'active', 'focus-visible'];
@@ -1,4 +1,5 @@
1
- import { getWeekdays } from '../utils';
1
+ import { getWeekdays, buildDatePickerAnnouncement, getSystemTimezone } from '../utils';
2
+ import { CalendarDate } from '../calendar-date';
2
3
  describe('utils', () => {
3
4
  it('should return weekdays as expected by default', () => {
4
5
  expect(getWeekdays()).toEqual([0, 1, 2, 3, 4, 5, 6]);
@@ -6,4 +7,56 @@ describe('utils', () => {
6
7
  it('should return weekdays as expected when change the firstWeekDay', () => {
7
8
  expect(getWeekdays(1)).toEqual([1, 2, 3, 4, 5, 6, 0]);
8
9
  });
10
+ it('should return a non-empty string for getSystemTimezone', () => {
11
+ expect(typeof getSystemTimezone()).toBe('string');
12
+ expect(getSystemTimezone().length).toBeGreaterThan(0);
13
+ });
14
+ describe('buildDatePickerAnnouncement', () => {
15
+ it('should return empty string when both startDate and endDate are null', () => {
16
+ expect(buildDatePickerAnnouncement({ mode: 'single', startDate: null })).toBe('');
17
+ expect(buildDatePickerAnnouncement({ mode: 'range', startDate: null, endDate: null })).toBe('');
18
+ });
19
+ it('should return single mode announcement with startDate', () => {
20
+ const startDate = new CalendarDate(2025, 3, 15);
21
+ const result = buildDatePickerAnnouncement({ mode: 'single', startDate });
22
+ expect(result).toContain('Selected result');
23
+ expect(result).toContain('March');
24
+ expect(result).toContain('15');
25
+ expect(result).toContain('2025');
26
+ });
27
+ it('should return empty string for single mode without startDate', () => {
28
+ expect(buildDatePickerAnnouncement({ mode: 'single', startDate: null })).toBe('');
29
+ });
30
+ it('should return range mode announcement with both startDate and endDate', () => {
31
+ const startDate = new CalendarDate(2025, 3, 10);
32
+ const endDate = new CalendarDate(2025, 3, 20);
33
+ const result = buildDatePickerAnnouncement({ mode: 'range', startDate, endDate });
34
+ expect(result).toContain('Selected result');
35
+ expect(result).toContain('Start Date');
36
+ expect(result).toContain('End Date');
37
+ expect(result).toContain('March');
38
+ expect(result).toContain('10');
39
+ expect(result).toContain('20');
40
+ });
41
+ it('should return range mode announcement with only startDate', () => {
42
+ const startDate = new CalendarDate(2025, 6, 1);
43
+ const result = buildDatePickerAnnouncement({ mode: 'range', startDate, endDate: null });
44
+ expect(result).toContain('Selected result');
45
+ expect(result).toContain('Start Date');
46
+ expect(result).toContain('June');
47
+ expect(result).toContain('1');
48
+ expect(result).not.toContain('End Date');
49
+ });
50
+ it('should return empty string for range mode without any dates', () => {
51
+ expect(buildDatePickerAnnouncement({ mode: 'range', startDate: null, endDate: null })).toBe('');
52
+ });
53
+ it('should return empty string for range mode with only endDate', () => {
54
+ const endDate = new CalendarDate(2025, 3, 20);
55
+ expect(buildDatePickerAnnouncement({ mode: 'range', startDate: null, endDate })).toBe('');
56
+ });
57
+ it('should return empty string for single mode with only endDate', () => {
58
+ const endDate = new CalendarDate(2025, 3, 20);
59
+ expect(buildDatePickerAnnouncement({ mode: 'single', startDate: null, endDate })).toBe('');
60
+ });
61
+ });
9
62
  });