@heartlandone/vega 2.74.0 → 2.75.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 (389) hide show
  1. package/dist/cjs/{app-globals-e9f2edcf.js → app-globals-bf183914.js} +8 -8
  2. package/dist/cjs/{child-nodes-event-prevent-slimmer-536d29fc.js → child-nodes-event-prevent-slimmer-aca87dac.js} +1 -1
  3. package/dist/cjs/click-outside-only-to-dismiss-strategy-407f6d1e.js +32 -0
  4. package/dist/cjs/{code-block-c8ae7e0a.js → code-block-c1d2e6a8.js} +2 -2
  5. package/dist/cjs/{component-value-history-controller-slimmer.abstract-13968181.js → component-value-history-controller-slimmer.abstract-787c67dc.js} +4 -4
  6. package/dist/cjs/{date-required-rule-99cca681.js → date-required-rule-30ee62d0.js} +1 -1
  7. package/dist/cjs/{design-token-4e23c50a.js → design-token-cbc01283.js} +2 -2
  8. package/dist/cjs/{dom-node-subject-observer-factory-1c8f7880.js → dom-node-subject-observer-factory-b5e71bf6.js} +4 -0
  9. package/dist/cjs/{dto-renderer-manager-ca753971.js → dto-renderer-manager-2fc24151.js} +3 -3
  10. package/dist/cjs/{element-appender-slimmer-dc769946.js → element-appender-slimmer-318d29c7.js} +160 -36
  11. package/dist/cjs/{event-emit-slimmer-6a591353.js → event-emit-slimmer-2dacabbd.js} +2 -2
  12. package/dist/cjs/{form-field-controller-slimmer-6e3e14fd.js → form-field-controller-slimmer-aef2fb1e.js} +2 -2
  13. package/dist/cjs/{function-extension-5972c73c.js → function-extension-ca9aa115.js} +5 -5
  14. package/dist/cjs/{image-annotation-action-92df8979.js → image-annotation-action-e4a35325.js} +3 -3
  15. package/dist/cjs/{index-638a0f0d.js → index-95fca64f.js} +1 -1
  16. package/dist/cjs/index.cjs.js +15 -15
  17. package/dist/cjs/{inject-keyboard-manager-a6101379.js → inject-keyboard-manager-d21b4387.js} +1 -1
  18. package/dist/cjs/{internal-vega-event-manager-d587a33c.js → internal-vega-event-manager-6befeb34.js} +13 -2
  19. package/dist/cjs/{keyboard-manager-d8adb0ed.js → keyboard-manager-3dea6b28.js} +1 -1
  20. package/dist/cjs/{keyboard-manager-slimmer-15e65357.js → keyboard-manager-slimmer-0d45f944.js} +1 -1
  21. package/dist/cjs/{language-extension-d78389f9.js → language-extension-38e4905e.js} +2 -2
  22. package/dist/cjs/loader.cjs.js +11 -11
  23. package/dist/cjs/{month-view-generator-706c5477.js → month-view-generator-49cc5fc2.js} +1 -1
  24. package/dist/cjs/{public-rules-23a86d33.js → public-rules-661823fa.js} +7 -7
  25. package/dist/cjs/{range-80f19554.js → range-79b668e7.js} +1 -1
  26. package/dist/cjs/{responsive-format-facade-8d195366.js → responsive-format-facade-f71d399c.js} +4 -4
  27. package/dist/cjs/{rich-text-editor-required-rule-80304585.js → rich-text-editor-required-rule-d5feeffd.js} +1 -1
  28. package/dist/cjs/sanitize-fb222510.js +131 -0
  29. package/dist/cjs/{string-format-strategy.abstract-a8264fca.js → string-format-strategy.abstract-63514c60.js} +1 -1
  30. package/dist/cjs/{string-input-formatter-slimmer-338bbd73.js → string-input-formatter-slimmer-f3e0bbc7.js} +3 -3
  31. package/dist/cjs/{string-mask-strategy-4e7d3780.js → string-mask-strategy-d23ac21a.js} +2 -2
  32. package/dist/cjs/{style-formatter-dbda894b.js → style-formatter-566df206.js} +2 -2
  33. package/dist/cjs/{sub-state-notify-slimmer-1efa69c4.js → sub-state-notify-slimmer-468e19aa.js} +1 -1
  34. package/dist/cjs/{sub-state-observer-slimmer-6afa62f5.js → sub-state-observer-slimmer-5d0b8ac3.js} +1 -1
  35. package/dist/cjs/{time-required-rule-9d39a620.js → time-required-rule-c96ecdc9.js} +1 -1
  36. package/dist/cjs/{type-guard-69d2cf01.js → type-guard-a0f026d8.js} +12 -0
  37. package/dist/cjs/{valid-credit-card-number-rule-9f40d1d9.js → valid-credit-card-number-rule-c854bed9.js} +1 -1
  38. package/dist/cjs/vega-accordion.cjs.entry.js +9 -9
  39. package/dist/cjs/vega-app-header-button.cjs.entry.js +10 -10
  40. package/dist/cjs/vega-banner.cjs.entry.js +3 -3
  41. package/dist/cjs/vega-box.cjs.entry.js +9 -9
  42. package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
  43. package/dist/cjs/vega-button-circle.cjs.entry.js +10 -10
  44. package/dist/cjs/vega-button-group_2.cjs.entry.js +6 -6
  45. package/dist/cjs/vega-button-link.cjs.entry.js +4 -4
  46. package/dist/cjs/vega-button.cjs.entry.js +9 -9
  47. package/dist/cjs/vega-calendar_4.cjs.entry.js +8 -8
  48. package/dist/cjs/vega-card.cjs.entry.js +8 -8
  49. package/dist/cjs/vega-carousel.cjs.entry.js +8 -8
  50. package/dist/cjs/vega-checkbox_2.cjs.entry.js +6 -6
  51. package/dist/cjs/vega-chip.cjs.entry.js +10 -10
  52. package/dist/cjs/vega-code-block.cjs.entry.js +10 -10
  53. package/dist/cjs/vega-color-picker.cjs.entry.js +5 -5
  54. package/dist/cjs/vega-combo-box.cjs.entry.js +11 -10
  55. package/dist/cjs/vega-date-picker_2.cjs.entry.js +389 -342
  56. package/dist/cjs/vega-dialog_2.cjs.entry.js +10 -10
  57. package/dist/cjs/vega-divider.cjs.entry.js +8 -8
  58. package/dist/cjs/vega-dropdown_5.cjs.entry.js +36 -18
  59. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  60. package/dist/cjs/vega-field-label.cjs.entry.js +3 -3
  61. package/dist/cjs/vega-file-uploader.cjs.entry.js +5 -5
  62. package/dist/cjs/vega-flag-icon.cjs.entry.js +8 -8
  63. package/dist/cjs/vega-flex.cjs.entry.js +9 -9
  64. package/dist/cjs/vega-font.cjs.entry.js +8 -8
  65. package/dist/cjs/vega-form.cjs.entry.js +8 -8
  66. package/dist/cjs/vega-grid.cjs.entry.js +8 -8
  67. package/dist/cjs/vega-icon.cjs.entry.js +8 -8
  68. package/dist/cjs/vega-image-uploader.cjs.entry.js +11 -11
  69. package/dist/cjs/vega-input-credit-card.cjs.entry.js +10 -10
  70. package/dist/cjs/vega-input-numeric.cjs.entry.js +10 -10
  71. package/dist/cjs/vega-input-passcode.cjs.entry.js +9 -9
  72. package/dist/cjs/vega-input-phone-number.cjs.entry.js +11 -11
  73. package/dist/cjs/vega-input-range.cjs.entry.js +6 -6
  74. package/dist/cjs/vega-input-select.cjs.entry.js +19 -14
  75. package/dist/cjs/vega-input.cjs.entry.js +339 -98
  76. package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
  77. package/dist/cjs/vega-left-nav_5.cjs.entry.js +11 -11
  78. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +7 -7
  79. package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
  80. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +3 -3
  81. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +1 -1
  82. package/dist/cjs/vega-pagination.cjs.entry.js +9 -9
  83. package/dist/cjs/vega-popover_2.cjs.entry.js +12 -12
  84. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +10 -10
  85. package/dist/cjs/vega-radio_2.cjs.entry.js +9 -9
  86. package/dist/cjs/vega-rich-text-content.cjs.entry.js +7 -7
  87. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +17 -17
  88. package/dist/cjs/vega-segment-control.cjs.entry.js +3 -3
  89. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +12 -12
  90. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +7 -7
  91. package/dist/cjs/vega-sidenav_3.cjs.entry.js +10 -10
  92. package/dist/cjs/vega-signature-capture.cjs.entry.js +11 -11
  93. package/dist/cjs/vega-stepper.cjs.entry.js +6 -6
  94. package/dist/cjs/vega-tab-group_2.cjs.entry.js +4 -4
  95. package/dist/cjs/vega-table_11.cjs.entry.js +11 -11
  96. package/dist/cjs/vega-textarea.cjs.entry.js +6 -6
  97. package/dist/cjs/vega-time-picker_2.cjs.entry.js +18 -17
  98. package/dist/cjs/vega-toggle-switch.cjs.entry.js +5 -5
  99. package/dist/cjs/vega-tooltip_2.cjs.entry.js +10 -10
  100. package/dist/cjs/vega.cjs.js +11 -11
  101. package/dist/collection/components/vega-app-header-button/vega-app-header-button.js +1 -1
  102. package/dist/collection/components/vega-button-group/vega-button-group-item/vega-button-group-item.js +1 -1
  103. package/dist/collection/components/vega-calendar/vega-calendar.js +1 -1
  104. package/dist/collection/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.js +2 -1
  105. package/dist/collection/components/vega-date-picker/assets/icons.js +4 -1
  106. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-open-state-controller.js +2 -1
  107. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +2 -2
  108. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-header-render.js +109 -0
  109. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.js +4 -0
  110. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.js +42 -70
  111. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.js +12 -56
  112. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.css +435 -108
  113. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.js +5 -0
  114. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-search-controller.js +5 -1
  115. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.js +7 -0
  116. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +3 -2
  117. package/dist/collection/components/vega-dropdown/vega-dropdown.js +19 -4
  118. package/dist/collection/components/vega-field-label/vega-field-label.js +1 -1
  119. package/dist/collection/components/vega-input/slimmers/controllers/vega-input-render-mode-controller.js +51 -0
  120. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-renderer.js +6 -0
  121. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-suggestions-renderer.js +142 -0
  122. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-renderer.js +12 -1
  123. package/dist/collection/components/vega-input/vega-input.js +200 -3
  124. package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +8 -3
  125. package/dist/collection/components/vega-selection-chip/vega-selection-chip.js +1 -1
  126. package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-range-dropdown-controller.js +2 -1
  127. package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-single-dropdown-controller.js +2 -1
  128. package/dist/collection/constants/ui.js +2 -0
  129. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +13 -2
  130. package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +2 -0
  131. package/dist/collection/helpers/event-manager/test/component-event-id-map.test.js +3 -1
  132. package/dist/collection/helpers/event-manager/test/vega-event-manager.test.js +3 -1
  133. package/dist/collection/helpers/slimmers/element-appender/element-appender-slimmer.js +60 -32
  134. package/dist/collection/helpers/slimmers/element-appender/test/element-appender-slimmer.test.js +3 -2
  135. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/click-outside-only-to-dismiss-strategy.js +28 -0
  136. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/click-trigger-strategy.js +33 -0
  137. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/hover-trigger-strategy.js +42 -0
  138. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/none-trigger-strategy.js +22 -0
  139. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/trigger-strategy.interface.js +1 -0
  140. package/dist/collection/types/test/type-guard.test.js +8 -1
  141. package/dist/collection/types/type-guard.js +11 -0
  142. package/dist/collection/utils/sanitize.js +126 -0
  143. package/dist/collection/utils/test/sanitize.test.js +65 -0
  144. package/dist/esm/{app-globals-9203a3e5.js → app-globals-f3414aca.js} +8 -8
  145. package/dist/esm/{child-nodes-event-prevent-slimmer-e6f98de5.js → child-nodes-event-prevent-slimmer-e662bee2.js} +1 -1
  146. package/dist/esm/click-outside-only-to-dismiss-strategy-3d286c1b.js +30 -0
  147. package/dist/esm/{code-block-4e0d321d.js → code-block-8ee34ab6.js} +2 -2
  148. package/dist/esm/{component-value-history-controller-slimmer.abstract-0ab0d9f0.js → component-value-history-controller-slimmer.abstract-a61bf821.js} +4 -4
  149. package/dist/esm/{date-required-rule-a9980386.js → date-required-rule-47ecc28f.js} +1 -1
  150. package/dist/esm/{design-token-175c4c0c.js → design-token-9b299589.js} +2 -2
  151. package/dist/esm/{dom-node-subject-observer-factory-1aaa1159.js → dom-node-subject-observer-factory-064ee2b2.js} +3 -1
  152. package/dist/esm/{dto-renderer-manager-402e89d0.js → dto-renderer-manager-f07cf2d9.js} +3 -3
  153. package/dist/esm/{element-appender-slimmer-7e7aa230.js → element-appender-slimmer-7cb08343.js} +160 -36
  154. package/dist/esm/{event-emit-slimmer-2d791d0e.js → event-emit-slimmer-09827cec.js} +2 -2
  155. package/dist/esm/{form-field-controller-slimmer-257928c1.js → form-field-controller-slimmer-5d9dc384.js} +2 -2
  156. package/dist/esm/{function-extension-45e413ff.js → function-extension-63028f20.js} +5 -5
  157. package/dist/esm/{image-annotation-action-2cdbbd57.js → image-annotation-action-53529cd9.js} +3 -3
  158. package/dist/esm/{index-0d487fae.js → index-51a7da7f.js} +1 -1
  159. package/dist/esm/index.js +15 -15
  160. package/dist/esm/{inject-keyboard-manager-9241968c.js → inject-keyboard-manager-83d76ff5.js} +1 -1
  161. package/dist/esm/{internal-vega-event-manager-fdee2a0a.js → internal-vega-event-manager-efb6786e.js} +13 -2
  162. package/dist/esm/{keyboard-manager-89acac79.js → keyboard-manager-c92808d8.js} +1 -1
  163. package/dist/esm/{keyboard-manager-slimmer-e303cb7d.js → keyboard-manager-slimmer-79c78ce8.js} +1 -1
  164. package/dist/esm/{language-extension-4bed2436.js → language-extension-c4ff21dd.js} +2 -2
  165. package/dist/esm/loader.js +11 -11
  166. package/dist/esm/{month-view-generator-4bec99fd.js → month-view-generator-16192182.js} +1 -1
  167. package/dist/esm/{public-rules-05e83e40.js → public-rules-6ebdfcf5.js} +7 -7
  168. package/dist/esm/{range-5086f250.js → range-5257c062.js} +1 -1
  169. package/dist/esm/{responsive-format-facade-f995d6de.js → responsive-format-facade-05e53016.js} +4 -4
  170. package/dist/esm/{rich-text-editor-required-rule-0d1147a8.js → rich-text-editor-required-rule-f63a37d1.js} +1 -1
  171. package/dist/esm/sanitize-fd0cb40d.js +129 -0
  172. package/dist/esm/{string-format-strategy.abstract-75540c16.js → string-format-strategy.abstract-fc60db79.js} +1 -1
  173. package/dist/esm/{string-input-formatter-slimmer-3a42d9b8.js → string-input-formatter-slimmer-ee32b1fd.js} +3 -3
  174. package/dist/esm/{string-mask-strategy-4a18ed1a.js → string-mask-strategy-0b0accaa.js} +2 -2
  175. package/dist/esm/{style-formatter-f4067407.js → style-formatter-5f5bd714.js} +2 -2
  176. package/dist/esm/{sub-state-notify-slimmer-71b9bbd5.js → sub-state-notify-slimmer-4453047a.js} +1 -1
  177. package/dist/esm/{sub-state-observer-slimmer-41a1b380.js → sub-state-observer-slimmer-202ec7dc.js} +1 -1
  178. package/dist/esm/{time-required-rule-8ec1faf5.js → time-required-rule-5fa43804.js} +1 -1
  179. package/dist/esm/{type-guard-b48aec98.js → type-guard-c65a227d.js} +12 -1
  180. package/dist/esm/{valid-credit-card-number-rule-96eaf9b1.js → valid-credit-card-number-rule-666c415d.js} +1 -1
  181. package/dist/esm/vega-accordion.entry.js +9 -9
  182. package/dist/esm/vega-app-header-button.entry.js +10 -10
  183. package/dist/esm/vega-banner.entry.js +3 -3
  184. package/dist/esm/vega-box.entry.js +9 -9
  185. package/dist/esm/vega-breadcrumb.entry.js +4 -4
  186. package/dist/esm/vega-button-circle.entry.js +10 -10
  187. package/dist/esm/vega-button-group_2.entry.js +6 -6
  188. package/dist/esm/vega-button-link.entry.js +4 -4
  189. package/dist/esm/vega-button.entry.js +9 -9
  190. package/dist/esm/vega-calendar_4.entry.js +8 -8
  191. package/dist/esm/vega-card.entry.js +8 -8
  192. package/dist/esm/vega-carousel.entry.js +8 -8
  193. package/dist/esm/vega-checkbox_2.entry.js +6 -6
  194. package/dist/esm/vega-chip.entry.js +10 -10
  195. package/dist/esm/vega-code-block.entry.js +10 -10
  196. package/dist/esm/vega-color-picker.entry.js +5 -5
  197. package/dist/esm/vega-combo-box.entry.js +11 -10
  198. package/dist/esm/vega-date-picker_2.entry.js +389 -342
  199. package/dist/esm/vega-dialog_2.entry.js +10 -10
  200. package/dist/esm/vega-divider.entry.js +8 -8
  201. package/dist/esm/vega-dropdown_5.entry.js +36 -18
  202. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  203. package/dist/esm/vega-field-label.entry.js +3 -3
  204. package/dist/esm/vega-file-uploader.entry.js +5 -5
  205. package/dist/esm/vega-flag-icon.entry.js +8 -8
  206. package/dist/esm/vega-flex.entry.js +9 -9
  207. package/dist/esm/vega-font.entry.js +8 -8
  208. package/dist/esm/vega-form.entry.js +8 -8
  209. package/dist/esm/vega-grid.entry.js +8 -8
  210. package/dist/esm/vega-icon.entry.js +8 -8
  211. package/dist/esm/vega-image-uploader.entry.js +11 -11
  212. package/dist/esm/vega-input-credit-card.entry.js +10 -10
  213. package/dist/esm/vega-input-numeric.entry.js +10 -10
  214. package/dist/esm/vega-input-passcode.entry.js +9 -9
  215. package/dist/esm/vega-input-phone-number.entry.js +11 -11
  216. package/dist/esm/vega-input-range.entry.js +6 -6
  217. package/dist/esm/vega-input-select.entry.js +19 -14
  218. package/dist/esm/vega-input.entry.js +340 -99
  219. package/dist/esm/vega-item-toggle.entry.js +3 -3
  220. package/dist/esm/vega-left-nav_5.entry.js +11 -11
  221. package/dist/esm/vega-loader-wrapper_2.entry.js +7 -7
  222. package/dist/esm/vega-page-notification_2.entry.js +1 -1
  223. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +3 -3
  224. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +1 -1
  225. package/dist/esm/vega-pagination.entry.js +9 -9
  226. package/dist/esm/vega-popover_2.entry.js +12 -12
  227. package/dist/esm/vega-progress-tracker_2.entry.js +10 -10
  228. package/dist/esm/vega-radio_2.entry.js +9 -9
  229. package/dist/esm/vega-rich-text-content.entry.js +7 -7
  230. package/dist/esm/vega-rich-text-editor_4.entry.js +17 -17
  231. package/dist/esm/vega-segment-control.entry.js +3 -3
  232. package/dist/esm/vega-selection-chip_2.entry.js +12 -12
  233. package/dist/esm/vega-selection-tile_2.entry.js +7 -7
  234. package/dist/esm/vega-sidenav_3.entry.js +10 -10
  235. package/dist/esm/vega-signature-capture.entry.js +11 -11
  236. package/dist/esm/vega-stepper.entry.js +6 -6
  237. package/dist/esm/vega-tab-group_2.entry.js +4 -4
  238. package/dist/esm/vega-table_11.entry.js +11 -11
  239. package/dist/esm/vega-textarea.entry.js +6 -6
  240. package/dist/esm/vega-time-picker_2.entry.js +18 -17
  241. package/dist/esm/vega-toggle-switch.entry.js +5 -5
  242. package/dist/esm/vega-tooltip_2.entry.js +10 -10
  243. package/dist/esm/vega.js +11 -11
  244. package/dist/sri/vega-sri-manifest.json +328 -320
  245. package/dist/types/components/vega-date-picker/assets/icons.d.ts +1 -1
  246. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-header-render.d.ts +20 -0
  247. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +1 -0
  248. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.d.ts +4 -11
  249. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.d.ts +4 -9
  250. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.d.ts +2 -0
  251. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.d.ts +2 -0
  252. package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +7 -2
  253. package/dist/types/components/vega-input/slimmers/controllers/vega-input-render-mode-controller.d.ts +27 -0
  254. package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-renderer.d.ts +1 -0
  255. package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-suggestions-renderer.d.ts +40 -0
  256. package/dist/types/components/vega-input/slimmers/renderers/vega-input-renderer.d.ts +3 -0
  257. package/dist/types/components/vega-input/types.d.ts +4 -0
  258. package/dist/types/components/vega-input/vega-input.d.ts +55 -1
  259. package/dist/types/components.d.ts +48 -6
  260. package/dist/types/constants/ui.d.ts +1 -1
  261. package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +2 -0
  262. package/dist/types/helpers/slimmers/element-appender/element-appender-slimmer.d.ts +4 -9
  263. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/click-outside-only-to-dismiss-strategy.d.ts +21 -0
  264. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/click-trigger-strategy.d.ts +21 -0
  265. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/hover-trigger-strategy.d.ts +22 -0
  266. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/none-trigger-strategy.d.ts +18 -0
  267. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/trigger-strategy.interface.d.ts +37 -0
  268. package/dist/types/types/components.type.d.ts +2 -0
  269. package/dist/types/types/type-guard.d.ts +8 -0
  270. package/dist/types/types/ui.type.d.ts +9 -0
  271. package/dist/types/utils/sanitize.d.ts +71 -0
  272. package/dist/types/utils/test/sanitize.test.d.ts +1 -0
  273. package/dist/vega/index.esm.js +1 -1
  274. package/dist/vega/{p-44bc9ea9.entry.js → p-011b94b1.entry.js} +1 -1
  275. package/dist/vega/{p-42b7b5df.js → p-06aaced4.js} +1 -1
  276. package/dist/vega/{p-05feab84.entry.js → p-07d3df01.entry.js} +1 -1
  277. package/dist/vega/{p-5a0c92db.entry.js → p-08f18b22.entry.js} +1 -1
  278. package/dist/vega/{p-3226c208.js → p-1298b126.js} +1 -1
  279. package/dist/vega/{p-9b673fd4.entry.js → p-17c55205.entry.js} +1 -1
  280. package/dist/vega/{p-161b9c5b.js → p-1f83cebf.js} +1 -1
  281. package/dist/vega/{p-f0bde406.js → p-20ad42be.js} +1 -1
  282. package/dist/vega/p-22b2841f.entry.js +1 -0
  283. package/dist/vega/{p-674fe99e.js → p-22c5d83b.js} +1 -1
  284. package/dist/vega/{p-f92752d2.entry.js → p-34246870.entry.js} +1 -1
  285. package/dist/vega/p-35bf5789.entry.js +1 -0
  286. package/dist/vega/{p-9b7daab0.entry.js → p-3bbc0c7d.entry.js} +1 -1
  287. package/dist/vega/{p-59fa3f68.js → p-3bf66be2.js} +1 -1
  288. package/dist/vega/{p-6e84e451.entry.js → p-3c5a28e4.entry.js} +1 -1
  289. package/dist/vega/p-3cfd8616.entry.js +1 -0
  290. package/dist/vega/p-3e5f362f.js +1 -0
  291. package/dist/vega/p-43f585f7.entry.js +1 -0
  292. package/dist/vega/p-476a173a.js +1 -0
  293. package/dist/vega/p-4a537391.entry.js +1 -0
  294. package/dist/vega/{p-82dbff54.entry.js → p-509eb52e.entry.js} +1 -1
  295. package/dist/vega/{p-95b11cdd.entry.js → p-50ab977c.entry.js} +1 -1
  296. package/dist/vega/{p-ca9b4af9.entry.js → p-53a694d1.entry.js} +1 -1
  297. package/dist/vega/p-56e97df8.js +1 -0
  298. package/dist/vega/{p-b19d4e26.entry.js → p-5a27084e.entry.js} +1 -1
  299. package/dist/vega/{p-3398f553.entry.js → p-5df9a856.entry.js} +1 -1
  300. package/dist/vega/{p-94cf46ca.entry.js → p-5ea2e43c.entry.js} +1 -1
  301. package/dist/vega/p-5f377954.js +1 -1
  302. package/dist/vega/p-60274fb1.js +1 -0
  303. package/dist/vega/{p-de70aac1.js → p-60851f9d.js} +1 -1
  304. package/dist/vega/{p-5c492358.entry.js → p-60da99c6.entry.js} +1 -1
  305. package/dist/vega/{p-f2c8c363.js → p-66fa700b.js} +1 -1
  306. package/dist/vega/{p-edbecf19.entry.js → p-67f18b9e.entry.js} +1 -1
  307. package/dist/vega/{p-3b32e75d.entry.js → p-67fcf6f2.entry.js} +1 -1
  308. package/dist/vega/{p-676eaf3f.entry.js → p-6a2205a1.entry.js} +1 -1
  309. package/dist/vega/{p-b007d0d5.entry.js → p-6a4277df.entry.js} +1 -1
  310. package/dist/vega/{p-30e7544c.js → p-6e136980.js} +1 -1
  311. package/dist/vega/p-6f239144.entry.js +1 -0
  312. package/dist/vega/{p-e3fa091a.js → p-6f8be8ea.js} +1 -1
  313. package/dist/vega/p-7045e84c.entry.js +1 -0
  314. package/dist/vega/{p-3566ad76.js → p-7288f8c4.js} +1 -1
  315. package/dist/vega/{p-ba223773.entry.js → p-747d6afc.entry.js} +1 -1
  316. package/dist/vega/{p-1a7e97d2.entry.js → p-75651f32.entry.js} +1 -1
  317. package/dist/vega/{p-5be29f14.js → p-77edf50c.js} +1 -1
  318. package/dist/vega/p-7ae55fd5.js +1 -0
  319. package/dist/vega/{p-9fb71d8c.entry.js → p-81134e9e.entry.js} +1 -1
  320. package/dist/vega/p-8187878e.js +1 -0
  321. package/dist/vega/p-87238c4c.entry.js +1 -0
  322. package/dist/vega/{p-3f56d184.entry.js → p-8a887843.entry.js} +1 -1
  323. package/dist/vega/{p-2ae5ad30.entry.js → p-8c0eb12f.entry.js} +1 -1
  324. package/dist/vega/p-8d0ca805.js +1 -0
  325. package/dist/vega/{p-f6cd7a08.entry.js → p-8e42a14c.entry.js} +1 -1
  326. package/dist/vega/{p-748eb5a2.js → p-91ec2e30.js} +1 -1
  327. package/dist/vega/{p-a8dad05d.js → p-920719ad.js} +1 -1
  328. package/dist/vega/{p-a58bdbad.entry.js → p-94394df7.entry.js} +1 -1
  329. package/dist/vega/p-991008a8.entry.js +1 -0
  330. package/dist/vega/p-a20854d6.entry.js +1 -0
  331. package/dist/vega/{p-a4ec6575.js → p-a2aeb646.js} +1 -1
  332. package/dist/vega/{p-2409a475.entry.js → p-a530797f.entry.js} +1 -1
  333. package/dist/vega/{p-0f601e59.entry.js → p-a5bd3c15.entry.js} +1 -1
  334. package/dist/vega/{p-38b8efe5.entry.js → p-a65941d0.entry.js} +1 -1
  335. package/dist/vega/{p-be0b67b8.entry.js → p-a85ad369.entry.js} +1 -1
  336. package/dist/vega/{p-370ee9e3.entry.js → p-a86010f7.entry.js} +1 -1
  337. package/dist/vega/{p-a7f151fe.entry.js → p-aa10eeb3.entry.js} +1 -1
  338. package/dist/vega/{p-99676172.entry.js → p-ab2f35af.entry.js} +1 -1
  339. package/dist/vega/{p-301096ee.js → p-ac4563d7.js} +1 -1
  340. package/dist/vega/{p-ce2ffff7.js → p-aedf7146.js} +1 -1
  341. package/dist/vega/p-b4ea3fad.js +1 -0
  342. package/dist/vega/{p-d991fb11.js → p-badad9ed.js} +1 -1
  343. package/dist/vega/{p-c7194674.entry.js → p-bb4a558d.entry.js} +1 -1
  344. package/dist/vega/{p-4957f07a.entry.js → p-bb8339ed.entry.js} +1 -1
  345. package/dist/vega/{p-6b9d2996.entry.js → p-be930e85.entry.js} +1 -1
  346. package/dist/vega/{p-398220f5.entry.js → p-bf2bd6d0.entry.js} +1 -1
  347. package/dist/vega/{p-ead1da57.entry.js → p-c379a5a5.entry.js} +1 -1
  348. package/dist/vega/{p-a2d1c2f3.js → p-c8f1b9d5.js} +1 -1
  349. package/dist/vega/{p-184d8443.js → p-c9b6b5a9.js} +1 -1
  350. package/dist/vega/{p-9d8e2939.entry.js → p-ca3472c1.entry.js} +1 -1
  351. package/dist/vega/{p-3a279b71.js → p-cc43bffb.js} +1 -1
  352. package/dist/vega/{p-9ea8eb49.js → p-ce1a2982.js} +1 -1
  353. package/dist/vega/{p-d1d0f08a.js → p-d0e31633.js} +1 -1
  354. package/dist/vega/{p-b18c12cb.entry.js → p-d6ed3d76.entry.js} +1 -1
  355. package/dist/vega/{p-6c1ef2ed.js → p-dd11f735.js} +1 -1
  356. package/dist/vega/{p-071f9d00.entry.js → p-e1610196.entry.js} +1 -1
  357. package/dist/vega/{p-3d85411d.js → p-e16b3adf.js} +1 -1
  358. package/dist/vega/{p-950bf9a9.entry.js → p-e87b0b4a.entry.js} +1 -1
  359. package/dist/vega/{p-a5d4d168.entry.js → p-e9c4fd24.entry.js} +1 -1
  360. package/dist/vega/{p-7a8c4cf8.entry.js → p-eb60cfe1.entry.js} +1 -1
  361. package/dist/vega/{p-f844f3f1.entry.js → p-ef001c70.entry.js} +1 -1
  362. package/dist/vega/{p-73383099.js → p-f383c856.js} +1 -1
  363. package/dist/vega/{p-c7f292dd.entry.js → p-f3c3ff26.entry.js} +1 -1
  364. package/dist/vega/{p-7f9acdf7.entry.js → p-f52a0155.entry.js} +1 -1
  365. package/dist/vega/{p-96797fee.entry.js → p-f8f7cf48.entry.js} +1 -1
  366. package/dist/vega/{p-cadd84ec.entry.js → p-fba14ad2.entry.js} +1 -1
  367. package/dist/vega/{p-c796307d.entry.js → p-fbd64f9c.entry.js} +1 -1
  368. package/dist/vega/{p-bb9db84a.entry.js → p-fdc270b8.entry.js} +1 -1
  369. package/dist/vega/p-fe12eff6.js +1 -0
  370. package/dist/vega/{p-3ebc8b5b.entry.js → p-ffbff9b5.entry.js} +1 -1
  371. package/dist/vega/vega.esm.js +1 -1
  372. package/package.json +1 -1
  373. package/dist/vega/p-207cfa6a.js +0 -1
  374. package/dist/vega/p-29618be2.js +0 -1
  375. package/dist/vega/p-310a6294.entry.js +0 -1
  376. package/dist/vega/p-3162a7fd.entry.js +0 -1
  377. package/dist/vega/p-451ddd84.js +0 -1
  378. package/dist/vega/p-697eb0e1.js +0 -1
  379. package/dist/vega/p-779cd090.entry.js +0 -1
  380. package/dist/vega/p-7c238c19.entry.js +0 -1
  381. package/dist/vega/p-8bd496b4.js +0 -1
  382. package/dist/vega/p-9a83a6b0.js +0 -1
  383. package/dist/vega/p-a6dfef41.entry.js +0 -1
  384. package/dist/vega/p-b0ed81e2.js +0 -1
  385. package/dist/vega/p-b4be03bb.entry.js +0 -1
  386. package/dist/vega/p-c34feecd.entry.js +0 -1
  387. package/dist/vega/p-c4700277.entry.js +0 -1
  388. package/dist/vega/p-f38a4be2.entry.js +0 -1
  389. package/dist/vega/p-fbda4a20.entry.js +0 -1
@@ -75,6 +75,10 @@ export class VegaDropdown {
75
75
  this.isDropdownShow = false;
76
76
  /**
77
77
  * Specifies the trigger mode for the dropdown.
78
+ * hover: The dropdown is shown/hidden on hover, and listens for global area clicks.
79
+ * click: The dropdown is shown/hidden on click, and listens for global area clicks.
80
+ * none: The dropdown does not listen for any events; you must control its visibility within the component.
81
+ * custom: Custom trigger strategy, more information can refer to https://gethired.atlassian.net/wiki/spaces/VKB/pages/657031171/Trigger+strategy.
78
82
  *
79
83
  * @vegaVersion 1.3.0
80
84
  */
@@ -278,6 +282,9 @@ export class VegaDropdown {
278
282
  watchItemDisplayRule() {
279
283
  methodPlaceholder();
280
284
  }
285
+ watchCaseSensitive() {
286
+ methodPlaceholder();
287
+ }
281
288
  /**
282
289
  * Invoke this method to programmatically display the dropdown menu.
283
290
  *
@@ -381,9 +388,14 @@ export class VegaDropdown {
381
388
  "type": "string",
382
389
  "mutable": false,
383
390
  "complexType": {
384
- "original": "'hover' | 'click' | 'none'",
385
- "resolved": "\"click\" | \"hover\" | \"none\"",
386
- "references": {}
391
+ "original": "VegaEATriggerType",
392
+ "resolved": "\"click\" | \"hover\" | \"none\" | VegaEATriggerStrategy",
393
+ "references": {
394
+ "VegaEATriggerType": {
395
+ "location": "import",
396
+ "path": "../../types/ui.type"
397
+ }
398
+ }
387
399
  },
388
400
  "required": false,
389
401
  "optional": false,
@@ -392,7 +404,7 @@ export class VegaDropdown {
392
404
  "name": "vegaVersion",
393
405
  "text": "1.3.0"
394
406
  }],
395
- "text": "Specifies the trigger mode for the dropdown."
407
+ "text": "Specifies the trigger mode for the dropdown.\n hover: The dropdown is shown/hidden on hover, and listens for global area clicks.\n click: The dropdown is shown/hidden on click, and listens for global area clicks.\n none: The dropdown does not listen for any events; you must control its visibility within the component.\n custom: Custom trigger strategy, more information can refer to https://gethired.atlassian.net/wiki/spaces/VKB/pages/657031171/Trigger+strategy."
396
408
  },
397
409
  "attribute": "trigger",
398
410
  "reflect": false,
@@ -1432,6 +1444,9 @@ export class VegaDropdown {
1432
1444
  }, {
1433
1445
  "propName": "itemDisplayRule",
1434
1446
  "methodName": "watchItemDisplayRule"
1447
+ }, {
1448
+ "propName": "caseSensitive",
1449
+ "methodName": "watchCaseSensitive"
1435
1450
  }]; }
1436
1451
  }
1437
1452
  __decorate([
@@ -111,7 +111,7 @@ export class VegaFieldLabel {
111
111
  "mutable": false,
112
112
  "complexType": {
113
113
  "original": "LabelSuffixButtonProps",
114
- "resolved": "{ icon: string; tooltipText?: string; trigger?: \"hover\" | \"click\"; }",
114
+ "resolved": "{ icon: string; tooltipText?: string; trigger?: \"click\" | \"hover\"; }",
115
115
  "references": {
116
116
  "LabelSuffixButtonProps": {
117
117
  "location": "import",
@@ -0,0 +1,51 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
8
+ /** Controller class for managing the render mode of the VegaInput component. */
9
+ export class VegaInputRenderModeController extends VegaSlimmer {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.hasItemsSlot = false;
13
+ this.hasDropdownSource = false;
14
+ }
15
+ /** Sets the render mode based on the presence of the items slot. */
16
+ connectedCallback() {
17
+ this.setRenderMode();
18
+ }
19
+ /**
20
+ * Checks if the render mode is source mode.
21
+ *
22
+ * @returns {boolean} True if in source render mode, false otherwise.
23
+ */
24
+ isSource() {
25
+ return this.hasDropdownSource;
26
+ }
27
+ /**
28
+ * Checks if the render mode is template mode.
29
+ *
30
+ * @returns {boolean} True if in template render mode, false otherwise.
31
+ */
32
+ isTemplate() {
33
+ return this.hasItemsSlot;
34
+ }
35
+ /**
36
+ * Sets the render mode based on the presence of the items slot.
37
+ */
38
+ setRenderMode() {
39
+ this.hasItemsSlot = !!this.host.querySelector('[slot=items]');
40
+ this.hasDropdownSource = Array.isArray(this.suggestionsDropdownSource);
41
+ }
42
+ }
43
+ __decorate([
44
+ MapToComponentField()
45
+ ], VegaInputRenderModeController.prototype, "host", void 0);
46
+ __decorate([
47
+ MapToComponentField()
48
+ ], VegaInputRenderModeController.prototype, "suggestionsDropdownSource", void 0);
49
+ __decorate([
50
+ MapToComponentMethod('connectedCallback')
51
+ ], VegaInputRenderModeController.prototype, "connectedCallback", null);
@@ -92,6 +92,9 @@ export class VegaInputInputRenderer extends VegaSlimmer {
92
92
  }
93
93
  /** Notify to update current period */
94
94
  notifyInputValueChange() {
95
+ if (this.inputRef.value !== this.value) {
96
+ this.nativeInputChangeEventEmitter.emit(this.inputRef.value);
97
+ }
95
98
  changeManager.notify(domNodeSubjectFactory.getSubject(this.host, VegaInternalUpdateVegaInputValue), this.inputRef.value);
96
99
  }
97
100
  notifySetupMaskConfig() {
@@ -164,6 +167,9 @@ __decorate([
164
167
  __decorate([
165
168
  MapToComponentField()
166
169
  ], VegaInputInputRenderer.prototype, "copyPasteController", void 0);
170
+ __decorate([
171
+ MapToComponentField()
172
+ ], VegaInputInputRenderer.prototype, "nativeInputChangeEventEmitter", void 0);
167
173
  __decorate([
168
174
  MapToComponentMethod('connectedCallback')
169
175
  ], VegaInputInputRenderer.prototype, "connectedCallback", null);
@@ -0,0 +1,142 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { h } from '@stencil/core';
8
+ import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
9
+ import { DomNodeSubjectObserverFactory } from '../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-observer-factory';
10
+ import changeManager from '../../../../helpers/change-manager/change-manager';
11
+ import domNodeSubjectFactory from '../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
12
+ import { VegaInternalDropdownTemplateItemsChange, VegaInternalUpdateVegaInputValue, } from '../../../../helpers/event-manager/event-id/vega-internal-event-id';
13
+ import { VegaDropdownClick } from '../../../../helpers/event-manager/event-id/vega-event-id';
14
+ import { ClickOutsideOnlyToDismissStrategy } from '../../../../helpers/slimmers/element-appender/trigger-strategies/click-outside-only-to-dismiss-strategy';
15
+ /**
16
+ * Renderer class for the Vega App Header Button Dropdown.
17
+ * This class extends the VegaSlimmer and is responsible for rendering the dropdown component and managing its state and events.
18
+ */
19
+ export class VegaInputInputSuggestionsRenderer extends VegaSlimmer {
20
+ constructor() {
21
+ super(...arguments);
22
+ this.templateItems = [];
23
+ /**
24
+ * emit dropdown click event when component get dropdown item click
25
+ *
26
+ * @param {NotifyObserverPayload<string>} input the click detail
27
+ */
28
+ this.onDropdownItemClick = async (input) => {
29
+ const items = this.renderModeController.isTemplate()
30
+ ? this.templateItems
31
+ : this.suggestionsDropdownSource;
32
+ const item = this.findItem(items, input.detail);
33
+ if (item) {
34
+ const event = this.suggestionItemClickEventEmitter.emit(item);
35
+ changeManager.notify(domNodeSubjectFactory.getSubject(this.host, VegaInternalUpdateVegaInputValue), event.defaultPrevented ? this.value : item.label);
36
+ }
37
+ };
38
+ }
39
+ appendHostItemsToDropdown() {
40
+ if (this.renderModeController.isTemplate() && this.itemsSlotRef && this.dropdownRef) {
41
+ this.itemsSlotRef.remove();
42
+ this.dropdownRef.append(this.host.querySelector('[slot=items]'));
43
+ }
44
+ }
45
+ async showSuggestionsDropdown(dropdownConfig = {}) {
46
+ this.suggestionsDropdownConfig = dropdownConfig;
47
+ await this.showSuggestions();
48
+ }
49
+ async hideSuggestionsDropdown() {
50
+ await this.dropdownRef.hide();
51
+ }
52
+ async watchValue() {
53
+ await this.searchSuggestions();
54
+ }
55
+ async watchSuggestionsDropdownSource() {
56
+ await this.searchSuggestions();
57
+ }
58
+ /**
59
+ * Renders the dropdown component with the provided children.
60
+ *
61
+ * @param {HTMLElement} children HTML element children to be rendered inside the dropdown.
62
+ * @returns {HTMLElement} The rendered dropdown component.
63
+ */
64
+ render(children) {
65
+ return (h("vega-dropdown", Object.assign({}, this.suggestionsDropdownConfig, { source: this.suggestionsDropdownSource, trigger: new ClickOutsideOnlyToDismissStrategy(), matchTargetWidth: true, searchable: false, placement: ['top', 'bottom'], translocation: { X: 0, Y: 6 }, ref: (ref) => {
66
+ this.dropdownRef = ref;
67
+ this.addDropdownObserver(ref);
68
+ }, style: { display: 'block' } }),
69
+ children,
70
+ this.renderItemsSlot()));
71
+ }
72
+ renderItemsSlot() {
73
+ return (this.renderModeController.isTemplate() && (h("div", { slot: "items", ref: (ref) => {
74
+ this.itemsSlotRef = ref;
75
+ } })));
76
+ }
77
+ addDropdownObserver(ref) {
78
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaDropdownClick, this.onDropdownItemClick.bind(this));
79
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaInternalDropdownTemplateItemsChange, (payload) => {
80
+ this.templateItems = Array.from(payload).map((item) => ({
81
+ key: item.itemKey,
82
+ label: item.label,
83
+ }));
84
+ });
85
+ }
86
+ findItem(source, key) {
87
+ for (const item of source) {
88
+ if (item['children'] && item['children'].length > 0) {
89
+ const found = this.findItem(item['children'], key);
90
+ if (found)
91
+ return found;
92
+ }
93
+ if (item.key.toString() === key)
94
+ return item;
95
+ }
96
+ /* istanbul ignore next */
97
+ return null;
98
+ }
99
+ async showSuggestions() {
100
+ if (this.renderModeController.isSource() || this.renderModeController.isTemplate()) {
101
+ await this.dropdownRef.show();
102
+ }
103
+ }
104
+ async searchSuggestions() {
105
+ if (this.renderModeController.isSource() && this.suggestionsDropdownSource.length > 0) {
106
+ await this.dropdownRef.search(this.value);
107
+ }
108
+ }
109
+ }
110
+ __decorate([
111
+ MapToComponentField()
112
+ ], VegaInputInputSuggestionsRenderer.prototype, "host", void 0);
113
+ __decorate([
114
+ MapToComponentField()
115
+ ], VegaInputInputSuggestionsRenderer.prototype, "value", void 0);
116
+ __decorate([
117
+ MapToComponentField({ writable: true })
118
+ ], VegaInputInputSuggestionsRenderer.prototype, "suggestionsDropdownConfig", void 0);
119
+ __decorate([
120
+ MapToComponentField()
121
+ ], VegaInputInputSuggestionsRenderer.prototype, "suggestionsDropdownSource", void 0);
122
+ __decorate([
123
+ MapToComponentField()
124
+ ], VegaInputInputSuggestionsRenderer.prototype, "renderModeController", void 0);
125
+ __decorate([
126
+ MapToComponentField()
127
+ ], VegaInputInputSuggestionsRenderer.prototype, "suggestionItemClickEventEmitter", void 0);
128
+ __decorate([
129
+ MapToComponentMethod('componentDidLoad')
130
+ ], VegaInputInputSuggestionsRenderer.prototype, "appendHostItemsToDropdown", null);
131
+ __decorate([
132
+ MapToComponentMethod('showSuggestionsDropdown')
133
+ ], VegaInputInputSuggestionsRenderer.prototype, "showSuggestionsDropdown", null);
134
+ __decorate([
135
+ MapToComponentMethod('hideSuggestionsDropdown')
136
+ ], VegaInputInputSuggestionsRenderer.prototype, "hideSuggestionsDropdown", null);
137
+ __decorate([
138
+ MapToComponentMethod('watchValue')
139
+ ], VegaInputInputSuggestionsRenderer.prototype, "watchValue", null);
140
+ __decorate([
141
+ MapToComponentMethod('watchSuggestionsDropdownSource')
142
+ ], VegaInputInputSuggestionsRenderer.prototype, "watchSuggestionsDropdownSource", null);
@@ -29,9 +29,14 @@ export class VegaInputRenderer extends VegaSlimmer {
29
29
  render() {
30
30
  return (h("div", { class: "vega-input", part: "container-wrapper" },
31
31
  this.renderLabelDom(),
32
- this.inputContainerRenderer.render(),
32
+ this.renderInputContainer(),
33
33
  this.renderHintDom()));
34
34
  }
35
+ renderInputContainer() {
36
+ return this.renderModeController.isSource() || this.renderModeController.isTemplate()
37
+ ? this.inputSuggestionsRenderer.render(this.inputContainerRenderer.render())
38
+ : this.inputContainerRenderer.render();
39
+ }
35
40
  renderLabelDom() {
36
41
  return (h("vega-field-label", { "is-field-required": this.required, disabled: this.disabled, label: this.label, suffixButtonProps: this.labelSuffixButtonProps, suffixButtonConfig: this.labelSuffixButtonConfig, ref: (node) => {
37
42
  DomNodeSubjectObserverFactory.addUniqueObserverToNode(node, VegaLabelButtonClick, this.handleLabelButtonClick);
@@ -70,3 +75,9 @@ __decorate([
70
75
  __decorate([
71
76
  MapToComponentField()
72
77
  ], VegaInputRenderer.prototype, "inputContainerRenderer", void 0);
78
+ __decorate([
79
+ MapToComponentField()
80
+ ], VegaInputRenderer.prototype, "inputSuggestionsRenderer", void 0);
81
+ __decorate([
82
+ MapToComponentField()
83
+ ], VegaInputRenderer.prototype, "renderModeController", void 0);
@@ -16,7 +16,7 @@ import { ComponentLoadRequired } from '../../decorators/method-decorators/compon
16
16
  import { InjectVegaGlobalSlimmer, InjectVegaSlimmer, methodPlaceholder, slotPlaceholder, } from 'vega-slimmer/core';
17
17
  import { FormFieldControllerSlimmer } from '../../helpers/slimmers/form-field-controller-slimmer';
18
18
  import { createEventEmitSlimmer, } from '../../helpers/event-manager/slimmers/event-emit-slimmer';
19
- import { VegaBlur, VegaChange, VegaFocus, VegaLabelButtonClick, VegaPaste, } from '../../helpers/event-manager/event-id/vega-event-id';
19
+ import { VegaBlur, VegaChange, VegaFocus, VegaLabelButtonClick, VegaNativeInputChange, VegaPaste, VegaSuggestionItemClick, } from '../../helpers/event-manager/event-id/vega-event-id';
20
20
  import { VegaInputCopyPasteController } from './slimmers/controllers/vega-input-copy-paste-controller';
21
21
  import { VegaInputPrefixSlotRenderer } from './slimmers/renderers/vega-input-prefix-slot-renderer';
22
22
  import { VegaInputMaskConfigController } from './slimmers/controllers/vega-input-mask-config-controller';
@@ -30,6 +30,8 @@ import { VegaInputInputContainerRenderer } from './slimmers/renderers/vega-input
30
30
  import { VegaInputInputRenderer } from './slimmers/renderers/vega-input-input-renderer';
31
31
  import { VegaInputRenderer } from './slimmers/renderers/vega-input-renderer';
32
32
  import { VegaInputValueController } from './slimmers/controllers/vega-input-value-controller';
33
+ import { VegaInputInputSuggestionsRenderer } from './slimmers/renderers/vega-input-input-suggestions-renderer';
34
+ import { VegaInputRenderModeController } from './slimmers/controllers/vega-input-render-mode-controller';
33
35
  /**
34
36
  * @vegaVersion 1.0.5
35
37
  */
@@ -80,6 +82,7 @@ export class VegaInput {
80
82
  */
81
83
  callback: /* istanbul ignore next */ () => this.compactWidthController.setInputAutoWidth(),
82
84
  });
85
+ this.renderModeController = new VegaInputRenderModeController();
83
86
  this.copyPasteController = new VegaInputCopyPasteController();
84
87
  this.compactWidthController = new VegaInputCompactWidthController();
85
88
  this.stateController = new VegaInputStateController();
@@ -89,10 +92,13 @@ export class VegaInput {
89
92
  this.renderer = new VegaInputRenderer();
90
93
  this.inputContainerRenderer = new VegaInputInputContainerRenderer();
91
94
  this.inputRenderer = new VegaInputInputRenderer();
95
+ this.inputSuggestionsRenderer = new VegaInputInputSuggestionsRenderer();
92
96
  this.changeEventEmitter = createEventEmitSlimmer(VegaInput, VegaChange);
97
+ this.nativeInputChangeEventEmitter = createEventEmitSlimmer(VegaInput, VegaNativeInputChange);
93
98
  this.focusEventEmitter = createEventEmitSlimmer(VegaInput, VegaFocus);
94
99
  this.blurEventEmitter = createEventEmitSlimmer(VegaInput, VegaBlur);
95
100
  this.labelButtonClickEventEmitter = createEventEmitSlimmer(VegaInput, VegaLabelButtonClick);
101
+ this.suggestionItemClickEventEmitter = createEventEmitSlimmer(VegaInput, VegaSuggestionItemClick);
96
102
  this.pasteEventEmitter = createEventEmitSlimmer(VegaInput, VegaPaste);
97
103
  this.vegaComponentUsageRuntimeMetricsSlimmer = new VegaComponentUsageRuntimeMetricsSlimmer(VegaInputRuntimeMetricsPayloadDefinition);
98
104
  this.passwordEyeRenderer = new VegaInputPasswordEyeRenderer();
@@ -304,6 +310,9 @@ export class VegaInput {
304
310
  watchMaskChange(newValue, oldValue) {
305
311
  methodPlaceholder(newValue, oldValue);
306
312
  }
313
+ watchSuggestionsDropdownSource() {
314
+ methodPlaceholder();
315
+ }
307
316
  /**
308
317
  * Invoke this method to focus the current input.
309
318
  *
@@ -320,6 +329,22 @@ export class VegaInput {
320
329
  async doBlur() {
321
330
  methodPlaceholder();
322
331
  }
332
+ /**
333
+ * Invoke this method to show the suggestions dropdown.
334
+ *
335
+ * @vegaVersion 2.75.0
336
+ */
337
+ async showSuggestionsDropdown(dropdownConfig) {
338
+ methodPlaceholder(dropdownConfig);
339
+ }
340
+ /**
341
+ * Invoke this method to hide the suggestions dropdown.
342
+ *
343
+ * @vegaVersion 2.75.0
344
+ */
345
+ async hideSuggestionsDropdown() {
346
+ methodPlaceholder();
347
+ }
323
348
  render() {
324
349
  slotPlaceholder(h("slot", null));
325
350
  return sanitizeVegaComponent(h(Host, { class: this.type === 'hidden' ? 'vega-input-hidden' : 'vega-input-inline-block' }, this.renderer.render()), this.host);
@@ -359,7 +384,7 @@ export class VegaInput {
359
384
  "mutable": false,
360
385
  "complexType": {
361
386
  "original": "Nullable<LabelSuffixButtonProps>",
362
- "resolved": "{ icon: string; tooltipText?: string; trigger?: \"hover\" | \"click\"; }",
387
+ "resolved": "{ icon: string; tooltipText?: string; trigger?: \"click\" | \"hover\"; }",
363
388
  "references": {
364
389
  "Nullable": {
365
390
  "location": "import",
@@ -915,13 +940,37 @@ export class VegaInput {
915
940
  "attribute": "disable-copy-paste",
916
941
  "reflect": false,
917
942
  "defaultValue": "false"
943
+ },
944
+ "suggestionsDropdownSource": {
945
+ "type": "unknown",
946
+ "mutable": false,
947
+ "complexType": {
948
+ "original": "VegaDropdownSourceItem[]",
949
+ "resolved": "VegaDropdownSourceItem[]",
950
+ "references": {
951
+ "VegaDropdownSourceItem": {
952
+ "location": "import",
953
+ "path": "../vega-dropdown/types"
954
+ }
955
+ }
956
+ },
957
+ "required": false,
958
+ "optional": false,
959
+ "docs": {
960
+ "tags": [{
961
+ "name": "vegaVersion",
962
+ "text": "2.75.0"
963
+ }],
964
+ "text": "Sets the source array of items for the suggestion dropdown.\n You should set this property at least a empty array if you want enable the source mode suggestion dropdown feature."
965
+ }
918
966
  }
919
967
  }; }
920
968
  static get states() { return {
921
969
  "prefixText": {},
922
970
  "suffixText": {},
923
971
  "isCompactInputWidth": {},
924
- "isPasswordDisplay": {}
972
+ "isPasswordDisplay": {},
973
+ "suggestionsDropdownConfig": {}
925
974
  }; }
926
975
  static get events() { return [{
927
976
  "method": "vegaChange",
@@ -962,6 +1011,45 @@ export class VegaInput {
962
1011
  "resolved": "string",
963
1012
  "references": {}
964
1013
  }
1014
+ }, {
1015
+ "method": "vegaNativeInputChange",
1016
+ "name": "vegaNativeInputChange",
1017
+ "bubbles": true,
1018
+ "cancelable": true,
1019
+ "composed": true,
1020
+ "docs": {
1021
+ "tags": [{
1022
+ "name": "vegaVersion",
1023
+ "text": "2.75.0"
1024
+ }],
1025
+ "text": "An event emitter notifying a value change by input action of native input dom."
1026
+ },
1027
+ "complexType": {
1028
+ "original": "string",
1029
+ "resolved": "string",
1030
+ "references": {}
1031
+ }
1032
+ }, {
1033
+ "method": "nativeInputChange",
1034
+ "name": "nativeInputChange",
1035
+ "bubbles": true,
1036
+ "cancelable": true,
1037
+ "composed": true,
1038
+ "docs": {
1039
+ "tags": [{
1040
+ "name": "eventSemantics",
1041
+ "text": "namespace:native"
1042
+ }, {
1043
+ "name": "vegaVersion",
1044
+ "text": "2.75.0"
1045
+ }],
1046
+ "text": "An event emitter notifying a value change by input action of native input dom."
1047
+ },
1048
+ "complexType": {
1049
+ "original": "string",
1050
+ "resolved": "string",
1051
+ "references": {}
1052
+ }
965
1053
  }, {
966
1054
  "method": "vegaBlur",
967
1055
  "name": "vegaBlur",
@@ -1128,6 +1216,55 @@ export class VegaInput {
1128
1216
  }
1129
1217
  }
1130
1218
  }
1219
+ }, {
1220
+ "method": "vegaSuggestionItemClick",
1221
+ "name": "vegaSuggestionItemClick",
1222
+ "bubbles": true,
1223
+ "cancelable": true,
1224
+ "composed": true,
1225
+ "docs": {
1226
+ "tags": [{
1227
+ "name": "vegaVersion",
1228
+ "text": "2.75.0"
1229
+ }],
1230
+ "text": "An event emitter notifying the click of a suggestion item."
1231
+ },
1232
+ "complexType": {
1233
+ "original": "VegaDropdownSourceItem",
1234
+ "resolved": "{ label: string; key: string; children: DropdownSourceItem[]; } | { label: string; key: string; count?: number; prefixIcon?: string; disabled?: boolean; danger?: boolean; }",
1235
+ "references": {
1236
+ "VegaDropdownSourceItem": {
1237
+ "location": "import",
1238
+ "path": "../vega-dropdown/types"
1239
+ }
1240
+ }
1241
+ }
1242
+ }, {
1243
+ "method": "suggestionItemClick",
1244
+ "name": "suggestionItemClick",
1245
+ "bubbles": true,
1246
+ "cancelable": true,
1247
+ "composed": true,
1248
+ "docs": {
1249
+ "tags": [{
1250
+ "name": "eventSemantics",
1251
+ "text": "namespace:native"
1252
+ }, {
1253
+ "name": "vegaVersion",
1254
+ "text": "2.75.0"
1255
+ }],
1256
+ "text": "An event emitter notifying the click of a suggestion item."
1257
+ },
1258
+ "complexType": {
1259
+ "original": "VegaDropdownSourceItem",
1260
+ "resolved": "{ label: string; key: string; children: DropdownSourceItem[]; } | { label: string; key: string; count?: number; prefixIcon?: string; disabled?: boolean; danger?: boolean; }",
1261
+ "references": {
1262
+ "VegaDropdownSourceItem": {
1263
+ "location": "import",
1264
+ "path": "../vega-dropdown/types"
1265
+ }
1266
+ }
1267
+ }
1131
1268
  }]; }
1132
1269
  static get methods() { return {
1133
1270
  "doFocus": {
@@ -1167,6 +1304,51 @@ export class VegaInput {
1167
1304
  "text": "1.12.0"
1168
1305
  }]
1169
1306
  }
1307
+ },
1308
+ "showSuggestionsDropdown": {
1309
+ "complexType": {
1310
+ "signature": "(dropdownConfig?: VegaInputSuggestionsDropdownConfig) => Promise<void>",
1311
+ "parameters": [{
1312
+ "tags": [],
1313
+ "text": ""
1314
+ }],
1315
+ "references": {
1316
+ "Promise": {
1317
+ "location": "global"
1318
+ },
1319
+ "VegaInputSuggestionsDropdownConfig": {
1320
+ "location": "import",
1321
+ "path": "./types"
1322
+ }
1323
+ },
1324
+ "return": "Promise<void>"
1325
+ },
1326
+ "docs": {
1327
+ "text": "Invoke this method to show the suggestions dropdown.",
1328
+ "tags": [{
1329
+ "name": "vegaVersion",
1330
+ "text": "2.75.0"
1331
+ }]
1332
+ }
1333
+ },
1334
+ "hideSuggestionsDropdown": {
1335
+ "complexType": {
1336
+ "signature": "() => Promise<void>",
1337
+ "parameters": [],
1338
+ "references": {
1339
+ "Promise": {
1340
+ "location": "global"
1341
+ }
1342
+ },
1343
+ "return": "Promise<void>"
1344
+ },
1345
+ "docs": {
1346
+ "text": "Invoke this method to hide the suggestions dropdown.",
1347
+ "tags": [{
1348
+ "name": "vegaVersion",
1349
+ "text": "2.75.0"
1350
+ }]
1351
+ }
1170
1352
  }
1171
1353
  }; }
1172
1354
  static get elementRef() { return "host"; }
@@ -1185,6 +1367,9 @@ export class VegaInput {
1185
1367
  }, {
1186
1368
  "propName": "maskConfig",
1187
1369
  "methodName": "watchMaskChange"
1370
+ }, {
1371
+ "propName": "suggestionsDropdownSource",
1372
+ "methodName": "watchSuggestionsDropdownSource"
1188
1373
  }]; }
1189
1374
  }
1190
1375
  __decorate([
@@ -1196,6 +1381,9 @@ __decorate([
1196
1381
  __decorate([
1197
1382
  InjectVegaSlimmer()
1198
1383
  ], VegaInput.prototype, "pageResizeObserverSlimmer", void 0);
1384
+ __decorate([
1385
+ InjectVegaSlimmer()
1386
+ ], VegaInput.prototype, "renderModeController", void 0);
1199
1387
  __decorate([
1200
1388
  InjectVegaSlimmer()
1201
1389
  ], VegaInput.prototype, "copyPasteController", void 0);
@@ -1223,9 +1411,15 @@ __decorate([
1223
1411
  __decorate([
1224
1412
  InjectVegaSlimmer()
1225
1413
  ], VegaInput.prototype, "inputRenderer", void 0);
1414
+ __decorate([
1415
+ InjectVegaSlimmer()
1416
+ ], VegaInput.prototype, "inputSuggestionsRenderer", void 0);
1226
1417
  __decorate([
1227
1418
  InjectVegaSlimmer()
1228
1419
  ], VegaInput.prototype, "changeEventEmitter", void 0);
1420
+ __decorate([
1421
+ InjectVegaSlimmer()
1422
+ ], VegaInput.prototype, "nativeInputChangeEventEmitter", void 0);
1229
1423
  __decorate([
1230
1424
  InjectVegaSlimmer()
1231
1425
  ], VegaInput.prototype, "focusEventEmitter", void 0);
@@ -1235,6 +1429,9 @@ __decorate([
1235
1429
  __decorate([
1236
1430
  InjectVegaSlimmer()
1237
1431
  ], VegaInput.prototype, "labelButtonClickEventEmitter", void 0);
1432
+ __decorate([
1433
+ InjectVegaSlimmer()
1434
+ ], VegaInput.prototype, "suggestionItemClickEventEmitter", void 0);
1238
1435
  __decorate([
1239
1436
  InjectVegaSlimmer()
1240
1437
  ], VegaInput.prototype, "pasteEventEmitter", void 0);
@@ -10,6 +10,7 @@ import { createEnterKeyHandlerToTriggerClick } from '../../../../utils/accessibi
10
10
  import chevronUp from '../../../../global/icons/chevron-up';
11
11
  import chevronDown from '../../../../global/icons/chevron-down';
12
12
  import { VegaInternalIconManager } from '../../../../helpers/icon/internal-icon-manager';
13
+ import { sanitizeHtmlLabel } from '../../../../utils/sanitize';
13
14
  /** The `VegaInputSelectDropdownRenderer` class is a TypeScript React component that renders a dropdown select input with various customization options. */
14
15
  export class VegaInputSelectDropdownRenderer extends VegaSlimmer {
15
16
  constructor() {
@@ -58,16 +59,20 @@ export class VegaInputSelectDropdownRenderer extends VegaSlimmer {
58
59
  };
59
60
  this.renderSingleSelected = () => {
60
61
  var _a, _b;
61
- const selectedLabelStr = (_b = (_a = this.selectedLabel).single) === null || _b === void 0 ? void 0 : _b.call(_a, this.value, this.selectedItem);
62
+ const selectedSourceItemItem = this.selectedItem;
63
+ if (selectedSourceItemItem === null || selectedSourceItemItem === void 0 ? void 0 : selectedSourceItemItem.displayName) {
64
+ selectedSourceItemItem.displayName = sanitizeHtmlLabel(selectedSourceItemItem.displayName);
65
+ }
66
+ const selectedLabelStr = (_b = (_a = this.selectedLabel).single) === null || _b === void 0 ? void 0 : _b.call(_a, this.value, selectedSourceItemItem);
62
67
  if ((typeof this.selectedLabel == 'function' && this.selectedItem) ||
63
68
  (typeof this.selectedLabel != 'function' && selectedLabelStr)) {
64
69
  if (typeof this.selectedLabel == 'function') {
65
70
  return (h("span", { class: "vega-input-select-selected", part: "selected-box" },
66
71
  h("vega-text", { overflow: "ellipsis", tooltip: { placement: 'bottom' }, key:
67
72
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
68
- this.selectedItem.displayName },
73
+ selectedSourceItemItem.displayName },
69
74
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
70
- this.selectedItem.displayName)));
75
+ selectedSourceItemItem.displayName)));
71
76
  }
72
77
  else {
73
78
  return (h("span", { class: "vega-input-select-selected", part: "selected-box" },
@@ -241,7 +241,7 @@ export class VegaSelectionChip {
241
241
  "mutable": false,
242
242
  "complexType": {
243
243
  "original": "VegaSelectionChipTooltipProps",
244
- "resolved": "{ size?: ResponsiveType<SizeType>; trigger?: \"hover\" | \"click\" | \"none\"; positionRelativeTo?: string; minWidth?: ResponsiveType<SizeType>; maxWidth?: ResponsiveType<SizeType>; content?: string; disableInteractive?: boolean; text?: string; placement?: ElementAppenderPlacementType; alignment?: ElementAppenderAlignmentType; }",
244
+ "resolved": "{ size?: ResponsiveType<SizeType>; trigger?: \"click\" | \"hover\" | \"none\"; positionRelativeTo?: string; minWidth?: ResponsiveType<SizeType>; maxWidth?: ResponsiveType<SizeType>; content?: string; disableInteractive?: boolean; text?: string; placement?: ElementAppenderPlacementType; alignment?: ElementAppenderAlignmentType; }",
245
245
  "references": {
246
246
  "VegaSelectionChipTooltipProps": {
247
247
  "location": "import",