@heartlandone/vega 2.35.0-RTE-preview → 2.36.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 (256) hide show
  1. package/dist/cjs/{app-globals-fb3693cc.js → app-globals-13d4a0be.js} +3 -4
  2. package/dist/cjs/{list-block-91116257.js → content-state-2336e368.js} +130 -4
  3. package/dist/cjs/{element-appender-slimmer-700b7004.js → element-appender-slimmer-77f9c4a0.js} +11 -3
  4. package/dist/cjs/{form-field-controller-slimmer-7ef32059.js → form-field-controller-slimmer-8d4d2723.js} +56 -25
  5. package/dist/cjs/{image-annotation-action-d3e1699c.js → image-annotation-action-4135ca69.js} +12 -12
  6. package/dist/cjs/index.cjs.js +5 -6
  7. package/dist/cjs/loader.cjs.js +5 -6
  8. package/dist/cjs/{node-annotation.abstract-e5d3a859.js → node-annotation.abstract-c3c07af5.js} +1 -1
  9. package/dist/cjs/{sub-state-notify-slimmer-c2e08e06.js → sub-state-notify-slimmer-994eb848.js} +1 -1
  10. package/dist/cjs/{sub-state-observer-slimmer-b97e46b5.js → sub-state-observer-slimmer-080a4bea.js} +1 -1
  11. package/dist/cjs/vega-button-group_2.cjs.entry.js +3 -3
  12. package/dist/cjs/vega-calendar_3.cjs.entry.js +3 -3
  13. package/dist/cjs/vega-checkbox_2.cjs.entry.js +2 -2
  14. package/dist/cjs/vega-color-picker.cjs.entry.js +2 -2
  15. package/dist/cjs/vega-combo-box.cjs.entry.js +2 -2
  16. package/dist/cjs/vega-date-picker_2.cjs.entry.js +532 -115
  17. package/dist/cjs/vega-dropdown_5.cjs.entry.js +68 -19
  18. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  19. package/dist/cjs/vega-file-uploader.cjs.entry.js +120 -40
  20. package/dist/cjs/vega-font.cjs.entry.js +8 -1
  21. package/dist/cjs/vega-form.cjs.entry.js +11 -6
  22. package/dist/cjs/vega-image-uploader.cjs.entry.js +2 -2
  23. package/dist/cjs/vega-input-credit-card.cjs.entry.js +2 -2
  24. package/dist/cjs/vega-input-numeric.cjs.entry.js +3 -3
  25. package/dist/cjs/vega-input-phone-number.cjs.entry.js +51 -5
  26. package/dist/cjs/vega-input-range.cjs.entry.js +2 -2
  27. package/dist/cjs/vega-input-select.cjs.entry.js +2 -2
  28. package/dist/cjs/vega-input.cjs.entry.js +3 -3
  29. package/dist/cjs/{vega-internal-event-id-85b68849.js → vega-internal-event-id-b12071ea.js} +2 -0
  30. package/dist/cjs/vega-left-nav_5.cjs.entry.js +3 -3
  31. package/dist/cjs/vega-pagination.cjs.entry.js +3 -3
  32. package/dist/cjs/vega-popover_2.cjs.entry.js +2 -2
  33. package/dist/cjs/vega-radio_2.cjs.entry.js +2 -2
  34. package/dist/cjs/vega-rich-text-content.cjs.entry.js +134 -110
  35. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +182 -118
  36. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +4 -4
  37. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +4 -4
  38. package/dist/cjs/vega-sidenav_3.cjs.entry.js +3 -3
  39. package/dist/cjs/vega-signature-capture.cjs.entry.js +2 -2
  40. package/dist/cjs/vega-stepper.cjs.entry.js +2 -2
  41. package/dist/cjs/vega-tab-group_2.cjs.entry.js +35 -24
  42. package/dist/cjs/vega-table_8.cjs.entry.js +3 -3
  43. package/dist/cjs/vega-textarea.cjs.entry.js +2 -2
  44. package/dist/cjs/vega-time-picker_2.cjs.entry.js +3 -3
  45. package/dist/cjs/vega-toggle-switch.cjs.entry.js +2 -2
  46. package/dist/cjs/vega-tooltip_2.cjs.entry.js +1 -1
  47. package/dist/cjs/vega.cjs.js +5 -6
  48. package/dist/collection/components/vega-date-picker/assets/icons.js +3 -0
  49. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-controller.js +23 -1
  50. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-month-year-dropdown-renderer.js +316 -0
  51. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +60 -2
  52. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-renderer.js +16 -4
  53. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.css +24 -0
  54. package/dist/collection/components/vega-date-picker/vega-date-picker.js +59 -0
  55. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.js +56 -14
  56. package/dist/collection/components/vega-dropdown/vega-dropdown.js +37 -0
  57. package/dist/collection/components/vega-file-uploader/slimmers/controllers/vega-file-uploader-file-limit-controller.js +35 -0
  58. package/dist/collection/components/vega-file-uploader/slimmers/renderers/vega-file-uploader-container-renderer.js +36 -7
  59. package/dist/collection/components/vega-file-uploader/vega-file-uploader.js +41 -0
  60. package/dist/collection/components/vega-font/slimmers/renderers/vega-font-renderer.js +8 -1
  61. package/dist/collection/components/vega-form/vega-form.js +13 -4
  62. package/dist/collection/components/vega-input-phone-number/slimmers/controllers/vega-input-phone-number-value-controller.js +38 -3
  63. package/dist/collection/components/vega-input-phone-number/vega-input-phone-number.js +35 -0
  64. package/dist/collection/components/vega-input-select/vega-input-select.js +1 -1
  65. package/dist/collection/components/vega-pagination/internal/vega-pagination-page-size-selector.js +2 -2
  66. package/dist/collection/components/vega-pagination/vega-pagination.js +24 -1
  67. package/dist/collection/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.js +33 -19
  68. package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.js +11 -4
  69. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/block-renderer.abstract.js +8 -10
  70. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/block-text-nodes-renderer.abstract.js +104 -0
  71. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/image-block-renderer.js +9 -7
  72. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/list-block-renderer.js +9 -7
  73. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/list-item-block-renderer.js +10 -12
  74. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/text-block-renderer.js +9 -104
  75. package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/image-node-renderer.js +14 -13
  76. package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/node-renderer.abstract.js +8 -10
  77. package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.js +9 -11
  78. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy-processor.js +2 -0
  79. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/ul-not-li-child-to-rte-list-item-block.js +49 -0
  80. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js +15 -1
  81. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +4 -2
  82. package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/controllers/vega-tab-group-page-index-controller.js +22 -22
  83. package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/controllers/vega-tab-group-selected-target-controller.js +9 -1
  84. package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-direction-button-renderer.js +4 -1
  85. package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +1 -0
  86. package/dist/collection/helpers/slimmers/field-error-controller-silmmer.js +8 -2
  87. package/dist/collection/helpers/slimmers/field-error-ui-controller-slimmer.js +10 -16
  88. package/dist/collection/helpers/slimmers/form-field-message-translator.js +17 -0
  89. package/dist/collection/helpers/slimmers/form-field-valid-invoke-slimmer.js +6 -3
  90. package/dist/collection/helpers/slimmers/position-calculation/position-calculation-controller.js +1 -1
  91. package/dist/collection/helpers/ui/element-appender.js +10 -2
  92. package/dist/collection/helpers/validator/form-field-controller.js +11 -3
  93. package/dist/collection/helpers/validator/rules/rich-text-editor-required-rule.js +4 -3
  94. package/dist/collection/helpers/validator/test/rules/rich-text-editor-required-rule.test.js +43 -0
  95. package/dist/collection/helpers/validator/validation-rule-handler/form-field-validation-rule-handler-chain.js +7 -2
  96. package/dist/esm/{app-globals-5b154b6d.js → app-globals-9ded4406.js} +2 -3
  97. package/dist/esm/{list-block-ba82c846.js → content-state-42a06d75.js} +130 -3
  98. package/dist/esm/{element-appender-slimmer-d71e3109.js → element-appender-slimmer-f3eceb79.js} +11 -3
  99. package/dist/esm/{form-field-controller-slimmer-af969d03.js → form-field-controller-slimmer-6ef5641b.js} +57 -26
  100. package/dist/esm/{image-annotation-action-a8e00f28.js → image-annotation-action-8a12e0bd.js} +2 -2
  101. package/dist/esm/index.js +3 -4
  102. package/dist/esm/loader.js +5 -6
  103. package/dist/esm/{node-annotation.abstract-d7d52bce.js → node-annotation.abstract-af11b11b.js} +1 -1
  104. package/dist/esm/polyfills/core-js.js +0 -0
  105. package/dist/esm/polyfills/dom.js +0 -0
  106. package/dist/esm/polyfills/es5-html-element.js +0 -0
  107. package/dist/esm/polyfills/index.js +0 -0
  108. package/dist/esm/polyfills/system.js +0 -0
  109. package/dist/esm/{sub-state-notify-slimmer-48bad548.js → sub-state-notify-slimmer-7d5a295a.js} +1 -1
  110. package/dist/esm/{sub-state-observer-slimmer-403cc4e7.js → sub-state-observer-slimmer-901c7953.js} +1 -1
  111. package/dist/esm/vega-button-group_2.entry.js +3 -3
  112. package/dist/esm/vega-calendar_3.entry.js +3 -3
  113. package/dist/esm/vega-checkbox_2.entry.js +2 -2
  114. package/dist/esm/vega-color-picker.entry.js +2 -2
  115. package/dist/esm/vega-combo-box.entry.js +2 -2
  116. package/dist/esm/vega-date-picker_2.entry.js +533 -116
  117. package/dist/esm/vega-dropdown_5.entry.js +68 -19
  118. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  119. package/dist/esm/vega-file-uploader.entry.js +120 -40
  120. package/dist/esm/vega-font.entry.js +8 -1
  121. package/dist/esm/vega-form.entry.js +11 -6
  122. package/dist/esm/vega-image-uploader.entry.js +2 -2
  123. package/dist/esm/vega-input-credit-card.entry.js +2 -2
  124. package/dist/esm/vega-input-numeric.entry.js +3 -3
  125. package/dist/esm/vega-input-phone-number.entry.js +51 -5
  126. package/dist/esm/vega-input-range.entry.js +2 -2
  127. package/dist/esm/vega-input-select.entry.js +2 -2
  128. package/dist/esm/vega-input.entry.js +3 -3
  129. package/dist/esm/{vega-internal-event-id-4af5c6e9.js → vega-internal-event-id-458939b6.js} +2 -1
  130. package/dist/esm/vega-left-nav_5.entry.js +3 -3
  131. package/dist/esm/vega-pagination.entry.js +3 -3
  132. package/dist/esm/vega-popover_2.entry.js +2 -2
  133. package/dist/esm/vega-radio_2.entry.js +2 -2
  134. package/dist/esm/vega-rich-text-content.entry.js +132 -108
  135. package/dist/esm/vega-rich-text-editor_4.entry.js +76 -12
  136. package/dist/esm/vega-selection-chip_2.entry.js +4 -4
  137. package/dist/esm/vega-selection-tile_2.entry.js +4 -4
  138. package/dist/esm/vega-sidenav_3.entry.js +3 -3
  139. package/dist/esm/vega-signature-capture.entry.js +2 -2
  140. package/dist/esm/vega-stepper.entry.js +2 -2
  141. package/dist/esm/vega-tab-group_2.entry.js +35 -24
  142. package/dist/esm/vega-table_8.entry.js +3 -3
  143. package/dist/esm/vega-textarea.entry.js +2 -2
  144. package/dist/esm/vega-time-picker_2.entry.js +3 -3
  145. package/dist/esm/vega-toggle-switch.entry.js +2 -2
  146. package/dist/esm/vega-tooltip_2.entry.js +1 -1
  147. package/dist/esm/vega.js +5 -6
  148. package/dist/types/components/vega-date-picker/assets/icons.d.ts +1 -1
  149. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-controller.d.ts +4 -18
  150. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-month-year-dropdown-renderer.d.ts +85 -0
  151. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +9 -0
  152. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-renderer.d.ts +2 -0
  153. package/dist/types/components/vega-date-picker/vega-date-picker.d.ts +21 -2
  154. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.d.ts +20 -0
  155. package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +10 -0
  156. package/dist/types/components/vega-file-uploader/slimmers/controllers/vega-file-uploader-file-limit-controller.d.ts +18 -0
  157. package/dist/types/components/vega-file-uploader/slimmers/renderers/vega-file-uploader-container-renderer.d.ts +15 -0
  158. package/dist/types/components/vega-file-uploader/vega-file-uploader.d.ts +12 -0
  159. package/dist/types/components/vega-form/types.d.ts +1 -0
  160. package/dist/types/components/vega-input-phone-number/slimmers/controllers/vega-input-phone-number-value-controller.d.ts +19 -0
  161. package/dist/types/components/vega-input-phone-number/vega-input-phone-number.d.ts +9 -0
  162. package/dist/types/components/vega-input-select/types.d.ts +1 -0
  163. package/dist/types/components/vega-pagination/internal/vega-pagination-page-size-selector.d.ts +2 -0
  164. package/dist/types/components/vega-pagination/types.d.ts +6 -0
  165. package/dist/types/components/vega-pagination/vega-pagination.d.ts +9 -1
  166. package/dist/types/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.d.ts +4 -0
  167. package/dist/types/components/vega-rich-text-content/vega-rich-text-content.d.ts +4 -1
  168. package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/block-renderer.abstract.d.ts +13 -7
  169. package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/block-text-nodes-renderer.abstract.d.ts +14 -0
  170. package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/image-block-renderer.d.ts +6 -4
  171. package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/list-block-renderer.d.ts +6 -4
  172. package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/list-item-block-renderer.d.ts +5 -5
  173. package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/text-block-renderer.d.ts +7 -11
  174. package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/image-node-renderer.d.ts +4 -4
  175. package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/node-renderer.abstract.d.ts +6 -7
  176. package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.d.ts +5 -6
  177. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/ul-not-li-child-to-rte-list-item-block.d.ts +31 -0
  178. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/value-controller.d.ts +4 -0
  179. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +3 -1
  180. package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/controllers/vega-tab-group-page-index-controller.d.ts +6 -6
  181. package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/controllers/vega-tab-group-selected-target-controller.d.ts +1 -0
  182. package/dist/types/components.d.ts +70 -5
  183. package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +1 -0
  184. package/dist/types/helpers/slimmers/field-error-controller-silmmer.d.ts +7 -2
  185. package/dist/types/helpers/slimmers/field-error-ui-controller-slimmer.d.ts +2 -7
  186. package/dist/types/helpers/slimmers/form-field-message-translator.d.ts +12 -0
  187. package/dist/types/helpers/ui/element-appender.d.ts +4 -0
  188. package/dist/types/helpers/validator/form-field-controller.d.ts +5 -2
  189. package/dist/types/helpers/validator/rules/rich-text-editor-required-rule.d.ts +1 -1
  190. package/dist/types/helpers/validator/validation-rule-handler/form-field-validation-rule-handler-chain.d.ts +2 -2
  191. package/dist/types/helpers/validator/validator.d.ts +1 -1
  192. package/dist/types/types/components.type.d.ts +2 -1
  193. package/dist/vega/index.esm.js +1 -1
  194. package/dist/vega/p-032ed643.entry.js +13 -0
  195. package/dist/vega/{p-a0e90d5d.entry.js → p-13ce8d87.entry.js} +1 -1
  196. package/dist/vega/{p-f84fd31c.js → p-26af2a8b.js} +1 -1
  197. package/dist/vega/{p-dcdac4d0.entry.js → p-2ff936da.entry.js} +1 -1
  198. package/dist/vega/p-3126edd6.entry.js +1 -0
  199. package/dist/vega/{p-45c88f7f.entry.js → p-317c72e4.entry.js} +1 -1
  200. package/dist/vega/{p-4f0b56fc.js → p-349dd552.js} +1 -1
  201. package/dist/vega/p-36ad5ee1.entry.js +1 -0
  202. package/dist/vega/p-42465abc.entry.js +1 -0
  203. package/dist/vega/{p-6d43b123.entry.js → p-43b6aced.entry.js} +1 -1
  204. package/dist/vega/{p-fe388812.entry.js → p-441c9c90.entry.js} +1 -1
  205. package/dist/vega/{p-926596cc.js → p-446c691b.js} +1 -1
  206. package/dist/vega/{p-465fa96d.entry.js → p-4d307520.entry.js} +1 -1
  207. package/dist/vega/p-524ff1a3.entry.js +1 -0
  208. package/dist/vega/p-558450ba.entry.js +1 -0
  209. package/dist/vega/{p-c02f650e.entry.js → p-589530e4.entry.js} +1 -1
  210. package/dist/vega/{p-71eeb279.entry.js → p-5ae1a322.entry.js} +1 -1
  211. package/dist/vega/p-5f377954.js +1 -1
  212. package/dist/vega/p-61cffe6a.entry.js +1 -0
  213. package/dist/vega/{p-84113217.entry.js → p-6bf28253.entry.js} +1 -1
  214. package/dist/vega/{p-0bd9b1d9.entry.js → p-6df81ec2.entry.js} +1 -1
  215. package/dist/vega/p-75bca1c6.js +1 -0
  216. package/dist/vega/{p-b64981de.entry.js → p-7b72dc7a.entry.js} +1 -1
  217. package/dist/vega/{p-b9a09a76.js → p-83d87df5.js} +1 -1
  218. package/dist/vega/{p-b450bf46.entry.js → p-8a77ff64.entry.js} +1 -1
  219. package/dist/vega/{p-6661a462.entry.js → p-906991ec.entry.js} +1 -1
  220. package/dist/vega/{p-f6b89936.entry.js → p-96389073.entry.js} +1 -1
  221. package/dist/vega/{p-f31bb1fd.js → p-983c7d9b.js} +1 -1
  222. package/dist/vega/{p-91aa058f.entry.js → p-9ec7d6c4.entry.js} +1 -1
  223. package/dist/vega/{p-8067bd31.entry.js → p-a213b305.entry.js} +1 -1
  224. package/dist/vega/{p-e923637d.entry.js → p-a956561e.entry.js} +1 -1
  225. package/dist/vega/{p-625771d7.entry.js → p-b0c6cc78.entry.js} +1 -1
  226. package/dist/vega/p-b1524c6c.js +1 -0
  227. package/dist/vega/{p-1dd9f841.entry.js → p-bd2cdf10.entry.js} +1 -1
  228. package/dist/vega/p-c06e55d6.js +1 -0
  229. package/dist/vega/{p-19556584.entry.js → p-cea7506a.entry.js} +1 -1
  230. package/dist/vega/{p-0da2de05.entry.js → p-cff45d92.entry.js} +1 -1
  231. package/dist/vega/p-d3d4bf51.entry.js +1 -0
  232. package/dist/vega/{p-3a6c9b9d.entry.js → p-df4142dd.entry.js} +1 -1
  233. package/dist/vega/p-df9dbe2d.entry.js +1 -0
  234. package/dist/vega/p-ebb30774.entry.js +1 -0
  235. package/dist/vega/{p-e04d4ba3.entry.js → p-eed64b78.entry.js} +1 -1
  236. package/dist/vega/{p-1b3e0a9f.entry.js → p-f7fdf737.entry.js} +1 -1
  237. package/dist/vega/p-fe9644a0.js +1 -0
  238. package/dist/vega/vega.esm.js +1 -1
  239. package/package.json +1 -1
  240. package/dist/cjs/content-state-3e4467a3.js +0 -134
  241. package/dist/esm/content-state-f39c4bbf.js +0 -132
  242. package/dist/vega/p-0283712e.entry.js +0 -13
  243. package/dist/vega/p-0ee10fd7.js +0 -1
  244. package/dist/vega/p-2f32a9ba.js +0 -1
  245. package/dist/vega/p-36db2554.entry.js +0 -1
  246. package/dist/vega/p-42df8a42.js +0 -1
  247. package/dist/vega/p-6d23c08b.entry.js +0 -1
  248. package/dist/vega/p-843b13e6.entry.js +0 -1
  249. package/dist/vega/p-85365f8b.js +0 -1
  250. package/dist/vega/p-8be7b62c.entry.js +0 -1
  251. package/dist/vega/p-96f0ef53.entry.js +0 -1
  252. package/dist/vega/p-c88acd87.entry.js +0 -1
  253. package/dist/vega/p-dbec03ed.entry.js +0 -1
  254. package/dist/vega/p-de13b747.entry.js +0 -1
  255. package/dist/vega/p-f357cf46.js +0 -1
  256. package/dist/vega/p-ff50c204.entry.js +0 -1
@@ -0,0 +1,316 @@
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, VegaSlimmer } from 'vega-slimmer/core';
9
+ import { DomNodeSubjectObserverFactory } from '../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-observer-factory';
10
+ import { VegaDropdownClick } from '../../../../helpers/event-manager/event-id/vega-event-id';
11
+ import remoteInvocationRegistry from '../../../../helpers/remote-invocation/remote-invocation-registry';
12
+ import domNodeSubjectFactory from '../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
13
+ import { VegaInternalDropdownUpdateTarget } from '../../../../helpers/event-manager/event-id/vega-internal-event-id';
14
+ import { VegaInternalIconManager } from '../../../../helpers/icon/internal-icon-manager';
15
+ import { Icons } from '../../assets/icons';
16
+ export class VegaDatePickerMonthYearDropdownRenderer extends VegaSlimmer {
17
+ constructor() {
18
+ super(...arguments);
19
+ this.startDropdownRef = {
20
+ month: null,
21
+ year: null,
22
+ };
23
+ this.endDropdownRef = {
24
+ month: null,
25
+ year: null,
26
+ };
27
+ /**
28
+ * When interacting with open vega-dropdown, prevent it from collapsing since is treated as outside element by litepicker
29
+ *
30
+ * @param {MouseEvent} event - Click event
31
+ */
32
+ this.onVegaDropdownContentBoxClick = (event) => {
33
+ const elementOnClick = event.target;
34
+ if (elementOnClick.tagName === 'VEGA-DROPDOWN-CONTENT-BOX') {
35
+ this.datePickerCalendar.classList.remove('vega-force-hidden');
36
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
37
+ this.datePickerCalendar.shadowRoot.querySelector('.litepicker').style.display =
38
+ 'block';
39
+ }
40
+ };
41
+ /**
42
+ * Prevent collapsing of dropdown when selecting option. VD-5544
43
+ *
44
+ * @param {Event} event - Focus event
45
+ */
46
+ this.onVegaDropdownContentBoxActivate = (event) => {
47
+ const element = event.target;
48
+ if (element.tagName === 'VEGA-DROPDOWN-CONTENT-BOX') {
49
+ this.isMonthsOrYearsDropdownContentBoxOnFocus = true;
50
+ element.classList.remove('vega-force-hidden');
51
+ }
52
+ else {
53
+ this.isMonthsOrYearsDropdownContentBoxOnFocus = false;
54
+ }
55
+ };
56
+ }
57
+ /**
58
+ * This method creates months and years dropdowns and replaces the current default select elements of litepicker
59
+ *
60
+ * @param {Litepicker} datePicker - Litepicker instance
61
+ */
62
+ renderMonthYearDropdowns(datePicker) {
63
+ this.datePicker = datePicker;
64
+ this.datePickerCalendar = this.vegaDatePickerCalendarRenderer.getCalendarContainerRef();
65
+ this.renderMonthButton(this.datePicker.ui);
66
+ this.renderYearButton(this.datePicker.ui);
67
+ this.initSetup();
68
+ }
69
+ render() {
70
+ return (h("div", { class: "month-year-dropdown-container", style: { display: 'none' } },
71
+ h("div", { class: "start-date-month-year" },
72
+ this.renderDropdown('month', 'start'),
73
+ this.renderDropdown('year', 'start')),
74
+ h("div", { class: "end-date-month-year" },
75
+ this.renderDropdown('month', 'end'),
76
+ this.renderDropdown('year', 'end'))));
77
+ }
78
+ /**
79
+ * From default months select dropdowns, get passed options and create vega-dropdown component with months as options
80
+ *
81
+ * @param {HTMLElement} ui - Litepicker ui
82
+ */
83
+ renderMonthButton(ui) {
84
+ ui.querySelectorAll('select.month-item-name').forEach((item, index) => {
85
+ this.syncDropdownOptions('month', item, index);
86
+ const selectedOptionValue = this.getSelectedOptionFromSelect(item);
87
+ const value = VegaDatePickerMonthYearDropdownRenderer.monthName[parseInt(selectedOptionValue)];
88
+ const monthButton = document.createElement('span');
89
+ monthButton.classList.add('dropdown-current-value');
90
+ monthButton.innerText = `${this.translationSlimmer.t(value)}`;
91
+ this.appendDropdownIconToButton(monthButton);
92
+ if (item.parentNode) {
93
+ item.parentNode.replaceChild(monthButton, item);
94
+ }
95
+ const dropdown = index === 0 ? this.startDropdownRef.month : this.endDropdownRef.month;
96
+ if (dropdown) {
97
+ this.updateDropdownValueAndTarget(monthButton, dropdown, item.value);
98
+ }
99
+ monthButton.addEventListener('click', () => {
100
+ this.setDropdownAsActive(monthButton);
101
+ });
102
+ });
103
+ }
104
+ /**
105
+ * From default years select dropdowns, get passed options and create vega-dropdown component with years as options
106
+ *
107
+ * @param {HTMLElement} ui - Litepicker ui
108
+ */
109
+ renderYearButton(ui) {
110
+ ui.querySelectorAll('select.month-item-year').forEach((item, index) => {
111
+ this.syncDropdownOptions('year', item, index);
112
+ const value = this.getSelectedOptionFromSelect(item);
113
+ const yearButton = document.createElement('span');
114
+ yearButton.classList.add('dropdown-current-value');
115
+ yearButton.innerText = `${this.translationSlimmer.t(value)}`;
116
+ this.appendDropdownIconToButton(yearButton);
117
+ if (item.parentNode) {
118
+ item.parentNode.replaceChild(yearButton, item);
119
+ }
120
+ const dropdown = index === 0 ? this.startDropdownRef.year : this.endDropdownRef.year;
121
+ if (dropdown) {
122
+ this.updateDropdownValueAndTarget(yearButton, dropdown, item.value);
123
+ }
124
+ yearButton.addEventListener('click', () => {
125
+ this.setDropdownAsActive(yearButton);
126
+ });
127
+ });
128
+ }
129
+ getSelectedOptionFromSelect(select) {
130
+ const options = Array.from(select.querySelectorAll('option'));
131
+ const selectedOption = options.find((option) => option.selected);
132
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
133
+ return selectedOption.value;
134
+ }
135
+ /**
136
+ * Render vega-dropdown component
137
+ *
138
+ * @param {MonthOrYearType} type - Month or year dropdown
139
+ * @param {DateIndexType} dateIndex - start date index for both single or range and end date index for range date picker mode
140
+ */
141
+ renderDropdown(type, dateIndex) {
142
+ return (h("vega-dropdown", { trigger: "click", selectType: "single", class: "vega-force-hidden", "match-target-width": "false", "max-height": "300", ref: (node) => {
143
+ this.onDropdownShowOrHide(node);
144
+ if (dateIndex === 'start') {
145
+ this.startDropdownRef[type] = node;
146
+ }
147
+ else {
148
+ this.endDropdownRef[type] = node;
149
+ }
150
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(node, VegaDropdownClick, (input) => {
151
+ this.setDefaultViewValues(type, node);
152
+ this.monthYearDropdownClick(type, dateIndex, input.detail);
153
+ });
154
+ } },
155
+ h("span", null, type)));
156
+ }
157
+ /**
158
+ * When calendar opens, update sources for the vega-dropdown components for both months and years dropdown
159
+ *
160
+ * @param {MonthOrYearType} type - Month or year dropdown
161
+ * @param {HTMLSelectElement} select - Native select from litepicker ui
162
+ * @param {number} index - dropdown count
163
+ */
164
+ syncDropdownOptions(type, select, index) {
165
+ const options = select.querySelectorAll('option');
166
+ const dropdownOptions = Array.from(options).map((option) => ({
167
+ key: option.value,
168
+ label: this.translationSlimmer.t(option.text),
169
+ disabled: option.disabled ? true : false,
170
+ }));
171
+ if (type === 'month') {
172
+ const dropdown = index === 0 ? this.startDropdownRef.month : this.endDropdownRef.month;
173
+ if (dropdown) {
174
+ dropdown.source = dropdownOptions;
175
+ }
176
+ }
177
+ if (type === 'year') {
178
+ dropdownOptions.sort((a, b) => Number(a.key) - Number(b.key));
179
+ const dropdown = index === 0 ? this.startDropdownRef.year : this.endDropdownRef.year;
180
+ if (dropdown) {
181
+ dropdown.source = dropdownOptions;
182
+ }
183
+ }
184
+ }
185
+ /**
186
+ * Litepicker treats vega-dropdown-content-box as an external element that when dropdowns open and you click, it closes automaticall. This method is to initialize event listeners the moment months or years dropdown is opened to prevent litepicker from collpasing
187
+ *
188
+ * @param {HTMLVegaDropdownElement} dropdown - Month or year dropdown
189
+ */
190
+ onDropdownShowOrHide(dropdown) {
191
+ dropdown === null || dropdown === void 0 ? void 0 : dropdown.addEventListener('vegaShow', () => {
192
+ this.onDropdownShow();
193
+ });
194
+ dropdown === null || dropdown === void 0 ? void 0 : dropdown.addEventListener('vegaHide', () => {
195
+ this.onDropdownHide();
196
+ });
197
+ }
198
+ setDefaultViewValues(type, node) {
199
+ if (type === 'month') {
200
+ const yearDropdown = node.nextElementSibling;
201
+ this.currentStartYearInView = parseInt(yearDropdown.selectedSourceKey);
202
+ }
203
+ else {
204
+ const monthDropdown = node.previousElementSibling;
205
+ this.currentStartMonthInView = parseInt(monthDropdown.selectedSourceKey);
206
+ }
207
+ }
208
+ appendDropdownIconToButton(parentElement) {
209
+ parentElement.innerHTML += `<vega-icon icon='${VegaInternalIconManager.getIconKey('caret-down')}'></vega-icon>`;
210
+ parentElement.tabIndex = 0;
211
+ }
212
+ monthYearDropdownClick(type, dateIndex, detail) {
213
+ const value = parseInt(detail);
214
+ this.updateDatePickerOnSelect(type, dateIndex, value);
215
+ }
216
+ updateDropdownValueAndTarget(target, dropdownRef, dropdownSelectedKey) {
217
+ const parentDiv = target.closest('div');
218
+ if (parentDiv) {
219
+ parentDiv.classList.add('dropdown-section');
220
+ }
221
+ dropdownRef.selectedSourceKey = dropdownSelectedKey;
222
+ remoteInvocationRegistry.call(domNodeSubjectFactory.getSubject(dropdownRef, VegaInternalDropdownUpdateTarget), target);
223
+ }
224
+ updateDatePickerOnSelect(type, dateIndex, value) {
225
+ if (type === 'month') {
226
+ if (this.currentStartYearInView !== null) {
227
+ if (dateIndex === 'start') {
228
+ this.datePicker.gotoDate(new Date(this.currentStartYearInView, value, 1));
229
+ }
230
+ if (dateIndex === 'end') {
231
+ this.datePicker.gotoDate(new Date(this.currentStartYearInView, value - 1, 1));
232
+ }
233
+ }
234
+ }
235
+ else {
236
+ if (this.currentStartMonthInView !== null) {
237
+ if (dateIndex === 'start') {
238
+ this.datePicker.gotoDate(new Date(value, this.currentStartMonthInView, 1));
239
+ }
240
+ if (dateIndex === 'end') {
241
+ this.datePicker.gotoDate(new Date(value, this.currentStartMonthInView - 1, 1));
242
+ }
243
+ }
244
+ }
245
+ }
246
+ setDropdownAsActive(element) {
247
+ Array.from(this.datePicker.ui.querySelectorAll('.dropdown-current-value.active')).forEach((item) => item.classList.remove('active'));
248
+ element.classList.add('active');
249
+ }
250
+ removeActiveDropdownClass() {
251
+ Array.from(this.datePicker.ui.querySelectorAll('.dropdown-current-value.active')).forEach((item) => item.classList.remove('active'));
252
+ }
253
+ onDropdownShow() {
254
+ document.addEventListener('mouseenter', this.onVegaDropdownContentBoxActivate, true);
255
+ document.addEventListener('click', this.onVegaDropdownContentBoxClick);
256
+ }
257
+ onDropdownHide() {
258
+ this.isMonthsOrYearsDropdownContentBoxOnFocus = false;
259
+ this.removeActiveDropdownClass();
260
+ document.removeEventListener('mouseenter', this.onVegaDropdownContentBoxActivate, true);
261
+ document.removeEventListener('click', this.onVegaDropdownContentBoxClick);
262
+ }
263
+ /**
264
+ * When you collapse date picker while vega-dropdown is still open, close vega-dropdown too
265
+ */
266
+ initSetup() {
267
+ const hideLitepicker = this.datePicker.hide.bind(this.datePicker);
268
+ this.datePicker.hide = async () => {
269
+ const activeElement = document.activeElement;
270
+ if (!this.isMonthsOrYearsDropdownContentBoxOnFocus &&
271
+ (activeElement === null || activeElement === void 0 ? void 0 : activeElement.tagName) !== 'VEGA-DROPDOWN-CONTENT-BOX') {
272
+ await this.closeOpenDropdowns();
273
+ hideLitepicker();
274
+ }
275
+ };
276
+ }
277
+ /**
278
+ * Close any open vega-dropdown when litepicker is collapse
279
+ */
280
+ async closeOpenDropdowns() {
281
+ const dropdowns = [this.startDropdownRef, this.endDropdownRef];
282
+ await Promise.all(dropdowns
283
+ .flatMap((ref) => [ref.month, ref.year])
284
+ .filter(Boolean)
285
+ .map((dropdown) => {
286
+ if (dropdown) {
287
+ void dropdown.hide();
288
+ }
289
+ }));
290
+ }
291
+ }
292
+ (() => {
293
+ VegaInternalIconManager.register({
294
+ 'caret-down': Icons['caret-down'],
295
+ });
296
+ })();
297
+ VegaDatePickerMonthYearDropdownRenderer.monthName = [
298
+ 'January',
299
+ 'February',
300
+ 'March',
301
+ 'April',
302
+ 'May',
303
+ 'June',
304
+ 'July',
305
+ 'August',
306
+ 'September',
307
+ 'October',
308
+ 'November',
309
+ 'December',
310
+ ];
311
+ __decorate([
312
+ MapToComponentField()
313
+ ], VegaDatePickerMonthYearDropdownRenderer.prototype, "translationSlimmer", void 0);
314
+ __decorate([
315
+ MapToComponentField()
316
+ ], VegaDatePickerMonthYearDropdownRenderer.prototype, "vegaDatePickerCalendarRenderer", void 0);
@@ -7,11 +7,17 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { MapToComponentField, VegaSlimmer, MapToComponentMethod } from 'vega-slimmer/core';
8
8
  import { Litepicker } from 'litepicker/dist/nocss/litepicker.umd.js';
9
9
  import { Icons } from '../../assets/icons';
10
+ import { LogUtility } from '../../../../utils/log';
10
11
  export class VegaDatePickerCalendarRenderer extends VegaSlimmer {
11
12
  constructor() {
12
13
  super(...arguments);
13
14
  this.alterLitePickerHeader = (ui) => {
14
- this.renderMonthName(ui);
15
+ if (this.showYearMonthDropdowns) {
16
+ this.monthYearDropdownRenderer.renderMonthYearDropdowns(this.datePicker);
17
+ }
18
+ else {
19
+ this.renderMonthName(ui);
20
+ }
15
21
  this.renderWeekdays(ui);
16
22
  this.renderPrevAndNextMonthButtons(ui);
17
23
  };
@@ -69,6 +75,9 @@ export class VegaDatePickerCalendarRenderer extends VegaSlimmer {
69
75
  mainContainer.append(footerContainer);
70
76
  }
71
77
  };
78
+ this.getSystemTimeZone = () => {
79
+ return Intl.DateTimeFormat().resolvedOptions().timeZone;
80
+ };
72
81
  }
73
82
  /*
74
83
  * The below method is e2e-test covered in
@@ -191,6 +200,12 @@ export class VegaDatePickerCalendarRenderer extends VegaSlimmer {
191
200
  watchMode() {
192
201
  this.requireRefreshLitePicker = true;
193
202
  }
203
+ /**
204
+ * Update datePicker settings property if showYearMonthDropdowns is changed
205
+ */
206
+ watchShowYearMonthDropdowns() {
207
+ this.requireRefreshLitePicker = true;
208
+ }
194
209
  /**
195
210
  * get the reference of datePicker
196
211
  *
@@ -225,9 +240,39 @@ export class VegaDatePickerCalendarRenderer extends VegaSlimmer {
225
240
  */
226
241
  renderMonthName(ui) {
227
242
  ui.querySelectorAll('.month-item-name').forEach((item) => {
228
- item.innerText = this.translationSlimmer.t(item.innerText);
243
+ const currentMonthName = item.innerText;
244
+ item.innerText = this.translationSlimmer.t(currentMonthName);
229
245
  });
230
246
  }
247
+ resetTodayByTimezone() {
248
+ if (this.timezone && this.timezone !== this.getSystemTimeZone()) {
249
+ try {
250
+ const formattedDate = new Intl.DateTimeFormat([], {
251
+ timeZone: this.timezone,
252
+ year: 'numeric',
253
+ month: '2-digit',
254
+ day: '2-digit',
255
+ }).format(new Date());
256
+ const dateByTimezone = new Date(formattedDate.split('/').join('-')).getTime();
257
+ const dayItems =
258
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
259
+ this.calendarContainerRef.shadowRoot.querySelectorAll('.day-item');
260
+ for (let i = 0; i < dayItems.length; i++) {
261
+ if (dayItems[i].classList.contains('is-today') &&
262
+ Number(dayItems[i].dataset.time) !== dateByTimezone) {
263
+ dayItems[i].classList.remove('is-today');
264
+ }
265
+ if (!dayItems[i].classList.contains('is-today') &&
266
+ Number(dayItems[i].dataset.time) === dateByTimezone) {
267
+ dayItems[i].classList.add('is-today');
268
+ }
269
+ }
270
+ }
271
+ catch (_a) {
272
+ LogUtility.warn('Invalid timezone: ', this.timezone);
273
+ }
274
+ }
275
+ }
231
276
  /*
232
277
  * The below method is e2e-test covered in
233
278
  * @see{module:vega-date-picker-render-ui-with-single}
@@ -250,6 +295,7 @@ export class VegaDatePickerCalendarRenderer extends VegaSlimmer {
250
295
  if (this.vegaDatePickerMobileController.getIsMobileDevice()) {
251
296
  this.vegaDatePickerMobileController.preventElementTouchMoveInMobile();
252
297
  }
298
+ this.resetTodayByTimezone();
253
299
  })
254
300
  .on('selected', this.vegaDatePickerCalendarController.onDatePickerSelected)
255
301
  .on('before:show', () => {
@@ -292,6 +338,9 @@ __decorate([
292
338
  __decorate([
293
339
  MapToComponentField()
294
340
  ], VegaDatePickerCalendarRenderer.prototype, "format", void 0);
341
+ __decorate([
342
+ MapToComponentField()
343
+ ], VegaDatePickerCalendarRenderer.prototype, "showYearMonthDropdowns", void 0);
295
344
  __decorate([
296
345
  MapToComponentField()
297
346
  ], VegaDatePickerCalendarRenderer.prototype, "vegaDatePickerCalendarController", void 0);
@@ -313,9 +362,15 @@ __decorate([
313
362
  __decorate([
314
363
  MapToComponentField()
315
364
  ], VegaDatePickerCalendarRenderer.prototype, "vegaDatePickerRangeInputRenderer", void 0);
365
+ __decorate([
366
+ MapToComponentField()
367
+ ], VegaDatePickerCalendarRenderer.prototype, "monthYearDropdownRenderer", void 0);
316
368
  __decorate([
317
369
  MapToComponentField()
318
370
  ], VegaDatePickerCalendarRenderer.prototype, "translationSlimmer", void 0);
371
+ __decorate([
372
+ MapToComponentField()
373
+ ], VegaDatePickerCalendarRenderer.prototype, "timezone", void 0);
319
374
  __decorate([
320
375
  MapToComponentMethod('connectedCallback')
321
376
  ], VegaDatePickerCalendarRenderer.prototype, "connectedCallback", null);
@@ -349,3 +404,6 @@ __decorate([
349
404
  __decorate([
350
405
  MapToComponentMethod('watchMode')
351
406
  ], VegaDatePickerCalendarRenderer.prototype, "watchMode", null);
407
+ __decorate([
408
+ MapToComponentMethod('watchShowYearMonthDropdowns')
409
+ ], VegaDatePickerCalendarRenderer.prototype, "watchShowYearMonthDropdowns", null);
@@ -18,7 +18,11 @@ export class VegaDatePickerRenderer extends VegaSlimmer {
18
18
  return (h("div", { class: "vega-input-prefix" },
19
19
  h("vega-icon", { icon: VegaInternalIconManager.getIconKey('calendar'), color: "text-secondary",
20
20
  // eslint-disable-next-line react/jsx-no-bind
21
- onClick: () => this.focusInput() })));
21
+ onClick: () => {
22
+ if (!this.disabled) {
23
+ this.focusInput();
24
+ }
25
+ } })));
22
26
  };
23
27
  /**
24
28
  * return true if input is enabled, otherwise false
@@ -63,9 +67,11 @@ export class VegaDatePickerRenderer extends VegaSlimmer {
63
67
  disabled: this.disabled,
64
68
  } },
65
69
  this.renderLabel(),
66
- h("div", { class: arrayToClassString(classNames), ref: (ref) => (this.datePickerContainer = ref) }, this.mode === 'range'
67
- ? this.vegaDatePickerRangeInputRenderer.render()
68
- : this.vegaDatePickerSingleInputRenderer.render())));
70
+ h("div", { class: arrayToClassString(classNames), ref: (ref) => (this.datePickerContainer = ref) },
71
+ this.mode === 'range'
72
+ ? this.vegaDatePickerRangeInputRenderer.render()
73
+ : this.vegaDatePickerSingleInputRenderer.render(),
74
+ this.showYearMonthDropdowns && this.monthYearDropdownRenderer.render())));
69
75
  }
70
76
  }
71
77
  (() => {
@@ -95,6 +101,9 @@ __decorate([
95
101
  __decorate([
96
102
  MapToComponentField()
97
103
  ], VegaDatePickerRenderer.prototype, "host", void 0);
104
+ __decorate([
105
+ MapToComponentField()
106
+ ], VegaDatePickerRenderer.prototype, "showYearMonthDropdowns", void 0);
98
107
  __decorate([
99
108
  MapToComponentField()
100
109
  ], VegaDatePickerRenderer.prototype, "vegaDatePickerMobileController", void 0);
@@ -107,3 +116,6 @@ __decorate([
107
116
  __decorate([
108
117
  MapToComponentField()
109
118
  ], VegaDatePickerRenderer.prototype, "vegaDatePickerCalendarRenderer", void 0);
119
+ __decorate([
120
+ MapToComponentField()
121
+ ], VegaDatePickerRenderer.prototype, "monthYearDropdownRenderer", void 0);
@@ -637,4 +637,28 @@ html.dark .litepicker .container__days .day-item.is-start-date.is-end-date:after
637
637
  .button-previous-month svg {
638
638
  width: 12px;
639
639
  height: 16px;
640
+ }
641
+
642
+ .litepicker .month-item-header > div.dropdown-section {
643
+ display: flex;
644
+ gap: 12px;
645
+ }
646
+ .litepicker .month-item-header > div.dropdown-section .dropdown-current-value {
647
+ position: relative;
648
+ display: flex;
649
+ gap: 4px;
650
+ align-items: center;
651
+ cursor: pointer;
652
+ }
653
+ .litepicker .month-item-header > div.dropdown-section .dropdown-current-value.active {
654
+ color: rgba(var(--v-text-link-active, 29, 65, 195, 1));
655
+ }
656
+ .litepicker .month-item-header > div.dropdown-section .dropdown-current-value.active:active {
657
+ color: rgba(var(--v-text-link-active, 29, 65, 195, 1));
658
+ }
659
+ .litepicker .month-item-header > div.dropdown-section .dropdown-current-value.active:hover {
660
+ color: rgba(var(--v-text-link-hover, 4, 112, 236, 1));
661
+ }
662
+ .litepicker .month-item-header > div.dropdown-section .dropdown-current-value.active:focus-visible {
663
+ color: rgba(var(--v-text-link-focus, 4, 112, 236, 1));
640
664
  }
@@ -29,6 +29,7 @@ import { ChildNodesEventPreventSlimmer } from '../../helpers/event-manager/slimm
29
29
  import { VegaComponentUsageRuntimeMetricsSlimmer } from '../../helpers/slimmers/component-usage-runtime-metrics';
30
30
  import { VegaDatePickerRuntimeMetricsPayloadDefinition } from '../../constants/runtime-metrics-payload-definition/vega-date-picker/runtime-metrics-payload-definition';
31
31
  import { TranslationSlimmer } from '../../helpers/slimmers/translation';
32
+ import { VegaDatePickerMonthYearDropdownRenderer } from './slimmers/renderers/vega-date-picker-calendar-month-year-dropdown-renderer';
32
33
  /**
33
34
  * @vegaVersion 1.3.0
34
35
  */
@@ -86,6 +87,7 @@ export class VegaDatePicker {
86
87
  this.changeEventEmitter = createEventEmitSlimmer(VegaDatePicker, VegaChange);
87
88
  this.inputEventPrevent = new ChildNodesEventPreventSlimmer([VegaChange], () => this.vegaDatePickerRenderer.getDatePickerContainer());
88
89
  this.vegaComponentUsageRuntimeMetricsSlimmer = new VegaComponentUsageRuntimeMetricsSlimmer(VegaDatePickerRuntimeMetricsPayloadDefinition);
90
+ this.monthYearDropdownRenderer = new VegaDatePickerMonthYearDropdownRenderer();
89
91
  /**
90
92
  * Specifies the selection mode of the date picker.
91
93
  *
@@ -179,6 +181,13 @@ export class VegaDatePicker {
179
181
  * @vegaVersion 2.33.0
180
182
  */
181
183
  this.showClearIcon = true;
184
+ /**
185
+ * Determines whether to show months and years dropdown in date picker
186
+ * If set to true, date picker calendar will have months and years dropdown
187
+ *
188
+ * @vegaVersion 2.36.0
189
+ */
190
+ this.showYearMonthDropdowns = false;
182
191
  /**
183
192
  * Specifies whether the date picker field is disabled.
184
193
  *
@@ -231,6 +240,9 @@ export class VegaDatePicker {
231
240
  watchAllowRepick() {
232
241
  methodPlaceholder();
233
242
  }
243
+ watchShowYearMonthDropdowns() {
244
+ methodPlaceholder();
245
+ }
234
246
  watchDisabled() {
235
247
  methodPlaceholder();
236
248
  }
@@ -641,6 +653,27 @@ export class VegaDatePicker {
641
653
  "reflect": false,
642
654
  "defaultValue": "true"
643
655
  },
656
+ "showYearMonthDropdowns": {
657
+ "type": "boolean",
658
+ "mutable": false,
659
+ "complexType": {
660
+ "original": "boolean",
661
+ "resolved": "boolean",
662
+ "references": {}
663
+ },
664
+ "required": false,
665
+ "optional": false,
666
+ "docs": {
667
+ "tags": [{
668
+ "name": "vegaVersion",
669
+ "text": "2.36.0"
670
+ }],
671
+ "text": "Determines whether to show months and years dropdown in date picker\nIf set to true, date picker calendar will have months and years dropdown"
672
+ },
673
+ "attribute": "show-year-month-dropdowns",
674
+ "reflect": false,
675
+ "defaultValue": "false"
676
+ },
644
677
  "disabled": {
645
678
  "type": "boolean",
646
679
  "mutable": false,
@@ -661,6 +694,26 @@ export class VegaDatePicker {
661
694
  "attribute": "disabled",
662
695
  "reflect": true,
663
696
  "defaultValue": "false"
697
+ },
698
+ "timezone": {
699
+ "type": "string",
700
+ "mutable": false,
701
+ "complexType": {
702
+ "original": "string",
703
+ "resolved": "string",
704
+ "references": {}
705
+ },
706
+ "required": false,
707
+ "optional": false,
708
+ "docs": {
709
+ "tags": [{
710
+ "name": "vegaVersion",
711
+ "text": "2.35.0"
712
+ }],
713
+ "text": "Specifies the IANA time zone or Etc/GMT\u00B1n format.\n It accepts values such as \"America/New_York\" or \"Etc/GMT+12\".\n For a complete list of IANA time zones, refer to Time Zone DB(https://timezonedb.com/time-zones).\n\t If not configured, the time zone will default to the system's time zone."
714
+ },
715
+ "attribute": "timezone",
716
+ "reflect": false
664
717
  }
665
718
  }; }
666
719
  static get events() { return [{
@@ -771,6 +824,9 @@ export class VegaDatePicker {
771
824
  }, {
772
825
  "propName": "allowRepick",
773
826
  "methodName": "watchAllowRepick"
827
+ }, {
828
+ "propName": "showYearMonthDropdowns",
829
+ "methodName": "watchShowYearMonthDropdowns"
774
830
  }, {
775
831
  "propName": "disabled",
776
832
  "methodName": "watchDisabled"
@@ -833,6 +889,9 @@ __decorate([
833
889
  __decorate([
834
890
  InjectVegaSlimmer()
835
891
  ], VegaDatePicker.prototype, "vegaComponentUsageRuntimeMetricsSlimmer", void 0);
892
+ __decorate([
893
+ InjectVegaSlimmer()
894
+ ], VegaDatePicker.prototype, "monthYearDropdownRenderer", void 0);
836
895
  __decorate([
837
896
  ComponentLoadRequired()
838
897
  ], VegaDatePicker.prototype, "watchValue", null);