@globalpayments/vega 2.70.0 → 2.75.1

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 (624) hide show
  1. package/dist/cjs/{app-globals-837be7a6.js → app-globals-35614ce8.js} +8 -7
  2. package/dist/cjs/{child-nodes-event-prevent-slimmer-f8840f1b.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-bb4cbafa.js → code-block-c1d2e6a8.js} +15 -67
  5. package/dist/cjs/{component-value-history-controller-slimmer.abstract-cf7b4bda.js → component-value-history-controller-slimmer.abstract-787c67dc.js} +5 -5
  6. package/dist/cjs/{date-required-rule-4e1f84fd.js → date-required-rule-30ee62d0.js} +3 -3
  7. package/dist/cjs/{design-token-00fe8d2f.js → design-token-bb39e07e.js} +6 -7
  8. package/dist/cjs/{dom-node-subject-observer-factory-f040608b.js → dom-node-subject-observer-factory-b5e71bf6.js} +9 -1
  9. package/dist/cjs/{dto-renderer-manager-c917dade.js → dto-renderer-manager-03e1a038.js} +219 -28
  10. package/dist/cjs/{element-appender-slimmer-f8e89f37.js → element-appender-slimmer-daa8b9f5.js} +205 -43
  11. package/dist/cjs/{event-emit-slimmer-7afe8d78.js → event-emit-slimmer-2dacabbd.js} +2 -2
  12. package/dist/cjs/{form-field-controller-slimmer-f865d397.js → form-field-controller-slimmer-aef2fb1e.js} +3 -3
  13. package/dist/cjs/{function-extension-28a4d781.js → function-extension-cfbbc57e.js} +40 -19
  14. package/dist/cjs/{image-annotation-action-8843adbf.js → image-annotation-action-3fa501b7.js} +3 -3
  15. package/dist/cjs/index-58ea899e.js +4 -4
  16. package/dist/cjs/{index-4b896e76.js → index-95fca64f.js} +2 -2
  17. package/dist/cjs/index.cjs.js +17 -19
  18. package/dist/cjs/{inject-keyboard-manager-13c66257.js → inject-keyboard-manager-d21b4387.js} +1 -1
  19. package/dist/cjs/{internal-vega-event-manager-45d451de.js → internal-vega-event-manager-6befeb34.js} +16 -4
  20. package/dist/cjs/{keyboard-manager-af0d08a6.js → keyboard-manager-3dea6b28.js} +1 -1
  21. package/dist/cjs/{keyboard-manager-slimmer-62f072cd.js → keyboard-manager-slimmer-0d45f944.js} +1 -1
  22. package/dist/cjs/{language-extension-99c6fb40.js → language-extension-8c4a56ff.js} +2 -2
  23. package/dist/cjs/loader.cjs.js +13 -13
  24. package/dist/cjs/month-view-generator-49cc5fc2.js +102 -0
  25. package/dist/cjs/{public-rules-759c745b.js → public-rules-dc2a8d62.js} +15 -15
  26. package/dist/cjs/{range-0b597850.js → range-79b668e7.js} +1 -1
  27. package/dist/cjs/{responsive-format-facade-1d9c13a9.js → responsive-format-facade-d5dba942.js} +4 -4
  28. package/dist/cjs/{rich-text-editor-required-rule-92d0640e.js → rich-text-editor-required-rule-ba312af9.js} +1 -1
  29. package/dist/cjs/sanitize-fb222510.js +131 -0
  30. package/dist/cjs/{string-format-strategy.abstract-07a95352.js → string-format-strategy.abstract-63514c60.js} +1 -1
  31. package/dist/cjs/{string-input-formatter-slimmer-8236b5e1.js → string-input-formatter-slimmer-f3e0bbc7.js} +4 -4
  32. package/dist/cjs/{string-mask-strategy-6bdad95e.js → string-mask-strategy-d23ac21a.js} +2 -2
  33. package/dist/cjs/{style-formatter-1daa8371.js → style-formatter-49693da7.js} +2 -2
  34. package/dist/cjs/{sub-state-notify-slimmer-78682046.js → sub-state-notify-slimmer-468e19aa.js} +2 -2
  35. package/dist/cjs/{sub-state-observer-slimmer-73aecfff.js → sub-state-observer-slimmer-5d0b8ac3.js} +2 -2
  36. package/dist/cjs/{time-required-rule-ccf178e7.js → time-required-rule-c96ecdc9.js} +3 -3
  37. package/dist/cjs/{type-guard-f12b5bae.js → type-guard-a0f026d8.js} +1236 -1
  38. package/dist/cjs/{valid-credit-card-number-rule-ce5c9147.js → valid-credit-card-number-rule-c854bed9.js} +1 -1
  39. package/dist/cjs/vega-accordion.cjs.entry.js +11 -12
  40. package/dist/cjs/vega-app-header-button.cjs.entry.js +35 -18
  41. package/dist/cjs/vega-banner.cjs.entry.js +3 -3
  42. package/dist/cjs/vega-box.cjs.entry.js +15 -16
  43. package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
  44. package/dist/cjs/vega-button-circle.cjs.entry.js +15 -16
  45. package/dist/cjs/vega-button-group_2.cjs.entry.js +60 -10
  46. package/dist/cjs/vega-button-link.cjs.entry.js +5 -5
  47. package/dist/cjs/vega-button.cjs.entry.js +15 -15
  48. package/dist/cjs/vega-calendar_4.cjs.entry.js +87 -909
  49. package/dist/cjs/vega-card.cjs.entry.js +14 -15
  50. package/dist/cjs/vega-carousel.cjs.entry.js +14 -14
  51. package/dist/cjs/vega-checkbox_2.cjs.entry.js +7 -7
  52. package/dist/cjs/vega-chip.cjs.entry.js +16 -17
  53. package/dist/cjs/vega-code-block.cjs.entry.js +13 -13
  54. package/dist/cjs/vega-color-picker.cjs.entry.js +6 -6
  55. package/dist/cjs/vega-combo-box.cjs.entry.js +15 -14
  56. package/dist/cjs/vega-date-picker_2.cjs.entry.js +1795 -1559
  57. package/dist/cjs/vega-dialog_2.cjs.entry.js +17 -18
  58. package/dist/cjs/vega-divider.cjs.entry.js +10 -11
  59. package/dist/cjs/vega-dropdown_5.cjs.entry.js +53 -36
  60. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  61. package/dist/cjs/vega-field-label.cjs.entry.js +3 -3
  62. package/dist/cjs/vega-file-uploader.cjs.entry.js +6 -6
  63. package/dist/cjs/vega-flag-icon.cjs.entry.js +10 -11
  64. package/dist/cjs/vega-flex.cjs.entry.js +15 -16
  65. package/dist/cjs/vega-font.cjs.entry.js +14 -15
  66. package/dist/cjs/vega-form.cjs.entry.js +9 -9
  67. package/dist/cjs/vega-grid.cjs.entry.js +14 -15
  68. package/dist/cjs/vega-icon.cjs.entry.js +14 -15
  69. package/dist/cjs/vega-image-uploader.cjs.entry.js +15 -15
  70. package/dist/cjs/vega-input-credit-card.cjs.entry.js +14 -14
  71. package/dist/cjs/vega-input-numeric.cjs.entry.js +13 -13
  72. package/dist/cjs/vega-input-passcode.cjs.entry.js +16 -13
  73. package/dist/cjs/vega-input-phone-number.cjs.entry.js +14 -14
  74. package/dist/cjs/vega-input-range.cjs.entry.js +7 -7
  75. package/dist/cjs/vega-input-select.cjs.entry.js +189 -56
  76. package/dist/cjs/vega-input.cjs.entry.js +877 -283
  77. package/dist/cjs/{vega-internal-event-id-6d4a2c53.js → vega-internal-event-id-f2465f1b.js} +12 -4
  78. package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
  79. package/dist/cjs/vega-left-nav_5.cjs.entry.js +14 -15
  80. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +9 -9
  81. package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
  82. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +4 -4
  83. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +2 -2
  84. package/dist/cjs/vega-pagination.cjs.entry.js +13 -13
  85. package/dist/cjs/vega-popover_2.cjs.entry.js +20 -20
  86. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +903 -0
  87. package/dist/cjs/vega-radio_2.cjs.entry.js +10 -10
  88. package/dist/cjs/vega-rich-text-content.cjs.entry.js +9 -8
  89. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +89 -29
  90. package/dist/cjs/vega-segment-control.cjs.entry.js +3 -3
  91. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +16 -16
  92. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +8 -8
  93. package/dist/cjs/vega-sidenav_3.cjs.entry.js +12 -12
  94. package/dist/cjs/vega-signature-capture.cjs.entry.js +13 -14
  95. package/dist/cjs/vega-stepper.cjs.entry.js +7 -7
  96. package/dist/cjs/vega-tab-group_2.cjs.entry.js +4 -4
  97. package/dist/cjs/vega-table_11.cjs.entry.js +12 -12
  98. package/dist/cjs/vega-textarea.cjs.entry.js +7 -7
  99. package/dist/cjs/vega-time-picker_2.cjs.entry.js +41 -41
  100. package/dist/cjs/vega-toggle-switch.cjs.entry.js +6 -6
  101. package/dist/cjs/vega-tooltip_2.cjs.entry.js +14 -14
  102. package/dist/cjs/vega.cjs.js +13 -13
  103. package/dist/collection/collection-manifest.json +7 -5
  104. package/dist/collection/components/vega-app-header-button/slimmers/renderers/vega-app-header-button-dropdown-renderer.js +13 -1
  105. package/dist/collection/components/vega-app-header-button/vega-app-header-button.js +46 -3
  106. package/dist/collection/components/vega-button/vega-button.css +4 -0
  107. package/dist/collection/components/vega-button-group/vega-button-group-item/slimmers/controllers/vega-button-group-item-sub-state-controller.js +7 -0
  108. package/dist/collection/components/vega-button-group/vega-button-group-item/slimmers/renderers/vega-button-group-item-renderer.js +25 -2
  109. package/dist/collection/components/vega-button-group/vega-button-group-item/vega-button-group-item.js +31 -2
  110. package/dist/collection/components/vega-button-group/vega-button-group.js +37 -0
  111. package/dist/collection/components/vega-button-link/vega-button-link.css +4 -0
  112. package/dist/collection/components/vega-calendar/vega-calendar.js +1 -1
  113. package/dist/collection/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.js +2 -1
  114. package/dist/collection/components/vega-date-picker/assets/icons.js +4 -1
  115. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-open-state-controller.js +150 -0
  116. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-format-controller.js +3 -1
  117. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-keyboard-controller.js +1 -1
  118. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-value-controller.js +10 -26
  119. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +107 -445
  120. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-input-renderer-base.abstract.js +5 -1
  121. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-range-input-renderer.js +24 -17
  122. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-renderer.js +15 -20
  123. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-single-input-renderer.js +6 -17
  124. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/constants.js +14 -0
  125. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/dto/calendar-selection.js +126 -0
  126. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-allow-repick-controller.js +70 -0
  127. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-current-period-controller.js +204 -0
  128. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-min-max-date-controller.js +56 -0
  129. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-selection-controller.js +191 -0
  130. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-state-base.abstract.js +54 -0
  131. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-today-controller.js +37 -0
  132. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-header-render.js +109 -0
  133. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.js +80 -0
  134. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.js +164 -0
  135. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.js +124 -0
  136. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.css +996 -278
  137. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.js +672 -3
  138. package/dist/collection/components/vega-date-picker/vega-date-picker.css +0 -11
  139. package/dist/collection/components/vega-date-picker/vega-date-picker.js +23 -40
  140. package/dist/collection/components/vega-dialog/vega-dialog.js +1 -1
  141. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.js +3 -15
  142. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-search-controller.js +5 -1
  143. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.js +7 -0
  144. package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js +6 -3
  145. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +3 -2
  146. package/dist/collection/components/vega-dropdown/vega-dropdown.js +50 -4
  147. package/dist/collection/components/vega-field-label/vega-field-label.js +1 -1
  148. package/dist/collection/components/vega-input/slimmers/controllers/vega-input-mask-config-controller.js +77 -7
  149. package/dist/collection/components/vega-input/slimmers/controllers/vega-input-render-mode-controller.js +51 -0
  150. package/dist/collection/components/vega-input/slimmers/controllers/vega-input-value-controller.js +79 -0
  151. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-container-renderer.js +100 -0
  152. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-renderer.js +184 -0
  153. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-suggestions-renderer.js +142 -0
  154. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-renderer.js +83 -0
  155. package/dist/collection/components/vega-input/vega-input.css +8 -0
  156. package/dist/collection/components/vega-input/vega-input.js +247 -160
  157. package/dist/collection/components/vega-input-passcode/slimmers/renderers/vega-input-passcode-renderer.js +4 -1
  158. package/dist/collection/components/vega-input-phone-number/slimmers/renderers/phone-number-input-renderer.js +1 -1
  159. package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-item-controller.js +89 -0
  160. package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-source-controller.js +4 -0
  161. package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-value-controller.js +4 -0
  162. package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +38 -13
  163. package/dist/collection/components/vega-input-select/vega-input-select.js +28 -8
  164. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-layout-controller.js +3 -2
  165. package/dist/collection/components/vega-modal/vega-modal.js +4 -4
  166. package/dist/collection/components/vega-popover/vega-popover.js +14 -4
  167. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/dto/internal-progress-tracker-step.js +75 -0
  168. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-direction-controller.js +88 -0
  169. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-step-controller.js +153 -0
  170. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-steps-controller.js +125 -0
  171. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-render-mode-controller.js +40 -0
  172. package/dist/collection/components/vega-progress-tracker/slimmers/renderers/vega-progress-tracker-renderer.js +94 -0
  173. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker-step/slimmers/controllers/vega-progress-tracker-step-state-controller.js +43 -0
  174. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.css +79 -0
  175. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.js +84 -0
  176. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.css +69 -153
  177. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.js +88 -85
  178. package/dist/collection/components/vega-rich-text-editor/dto/annotations/plain-text-annotation.js +1 -1
  179. package/dist/collection/components/vega-rich-text-editor/dto/annotations/text-style-annotation.js +11 -63
  180. package/dist/collection/components/vega-rich-text-editor/dto/blocks/html-block.js +16 -0
  181. package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +21 -24
  182. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/insert-token-node-strategy.js +5 -1
  183. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/span-to-token-node-strategy.js +12 -1
  184. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.js +16 -10
  185. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node.js +1 -1
  186. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/extension-controller.js +1 -1
  187. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner-processor.interface.js +1 -0
  188. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner.js +59 -0
  189. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/index.js +4 -0
  190. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-after-opening-tag-processor.js +21 -0
  191. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-before-closing-tag-processor.js +21 -0
  192. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-between-tags-processor.js +77 -0
  193. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js +6 -2
  194. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.js +6 -0
  195. package/dist/collection/components/vega-rich-text-editor/test/dto/annotation-style.test.js +2 -1
  196. package/dist/collection/components/vega-rich-text-editor/test/dto/annotations.test.js +9 -0
  197. package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/html-block.test.js +39 -0
  198. package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/text-block.test.js +1 -1
  199. package/dist/collection/components/vega-rich-text-editor/test/dto/content-state.test.js +186 -16
  200. package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/html-content-cleaner.test.js +186 -0
  201. package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-after-opening-tag-processor.test.js +22 -0
  202. package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-before-closing-tag-processor.test.js +22 -0
  203. package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-between-tags-processor.test.js +26 -0
  204. package/dist/collection/components/vega-selection-chip/vega-selection-chip.js +1 -1
  205. package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-range-dropdown-controller.js +2 -1
  206. package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-single-dropdown-controller.js +2 -1
  207. package/dist/collection/constants/regex.js +1 -0
  208. package/dist/collection/constants/ui.js +5 -0
  209. package/dist/collection/helpers/calendar/calendar-date.js +273 -1
  210. package/dist/collection/helpers/calendar/calendar-period/calendar-period.abstract.js +9 -0
  211. package/dist/collection/helpers/calendar/calendar-period/month-period.js +16 -4
  212. package/dist/collection/helpers/calendar/test/calendar-date.test.js +73 -0
  213. package/dist/collection/helpers/calendar/test/calendar-period/day-period.test.js +9 -0
  214. package/dist/collection/helpers/calendar/test/calendar-period/month-period.test.js +41 -0
  215. package/dist/collection/helpers/calendar/test/calendar-period/week-period.test.js +11 -0
  216. package/dist/collection/helpers/code-format/code-formatter.js +57 -7
  217. package/dist/collection/helpers/code-format/test/code-formatter.test.js +48 -0
  218. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +16 -4
  219. package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +5 -1
  220. package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +8 -2
  221. package/dist/collection/helpers/event-manager/test/component-event-id-map.test.js +3 -1
  222. package/dist/collection/helpers/event-manager/test/vega-event-manager.test.js +3 -1
  223. package/dist/collection/helpers/slimmers/element-appender/element-appender-slimmer.js +62 -33
  224. package/dist/collection/helpers/slimmers/element-appender/test/element-appender-slimmer.test.js +3 -2
  225. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/click-outside-only-to-dismiss-strategy.js +28 -0
  226. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/click-trigger-strategy.js +33 -0
  227. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/hover-trigger-strategy.js +42 -0
  228. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/none-trigger-strategy.js +22 -0
  229. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/trigger-strategy.interface.js +1 -0
  230. package/dist/collection/helpers/slimmers/position-calculation/position-calculation-controller.js +7 -0
  231. package/dist/collection/helpers/ui/element-appender.js +35 -5
  232. package/dist/collection/types/test/type-guard.test.js +8 -1
  233. package/dist/collection/types/type-guard.js +21 -0
  234. package/dist/collection/utils/date.js +14 -3
  235. package/dist/collection/utils/e2e-utils.js +8 -2
  236. package/dist/collection/utils/sanitize.js +126 -0
  237. package/dist/collection/utils/test/date.test.js +2 -0
  238. package/dist/collection/utils/test/sanitize.test.js +65 -0
  239. package/dist/esm/{app-globals-fd4b7d97.js → app-globals-2ac60ff5.js} +8 -7
  240. package/dist/esm/{child-nodes-event-prevent-slimmer-76331524.js → child-nodes-event-prevent-slimmer-e662bee2.js} +1 -1
  241. package/dist/esm/click-outside-only-to-dismiss-strategy-3d286c1b.js +30 -0
  242. package/dist/esm/{code-block-ecb4491b.js → code-block-8ee34ab6.js} +16 -68
  243. package/dist/esm/{component-value-history-controller-slimmer.abstract-5d618b88.js → component-value-history-controller-slimmer.abstract-a61bf821.js} +5 -5
  244. package/dist/esm/{date-required-rule-8944f3bf.js → date-required-rule-47ecc28f.js} +1 -1
  245. package/dist/esm/{design-token-2d77e8f5.js → design-token-007efbaa.js} +4 -5
  246. package/dist/esm/{dom-node-subject-observer-factory-dca87b70.js → dom-node-subject-observer-factory-064ee2b2.js} +6 -2
  247. package/dist/esm/{dto-renderer-manager-d862ae78.js → dto-renderer-manager-ee1a5864.js} +219 -28
  248. package/dist/esm/{element-appender-slimmer-6791c332.js → element-appender-slimmer-35e26b5a.js} +207 -45
  249. package/dist/esm/{event-emit-slimmer-4e28e9f8.js → event-emit-slimmer-09827cec.js} +2 -2
  250. package/dist/esm/{form-field-controller-slimmer-bf071b75.js → form-field-controller-slimmer-5d9dc384.js} +4 -4
  251. package/dist/esm/{function-extension-8d39db56.js → function-extension-e8c0e43e.js} +41 -20
  252. package/dist/esm/{image-annotation-action-d0af138c.js → image-annotation-action-285d432e.js} +3 -3
  253. package/dist/esm/index-090d31ca.js +4 -4
  254. package/dist/esm/{index-c943d263.js → index-51a7da7f.js} +2 -2
  255. package/dist/esm/index.js +19 -21
  256. package/dist/esm/{inject-keyboard-manager-ffd351b9.js → inject-keyboard-manager-83d76ff5.js} +1 -1
  257. package/dist/esm/{internal-vega-event-manager-516aa721.js → internal-vega-event-manager-efb6786e.js} +16 -4
  258. package/dist/esm/{keyboard-manager-5d8f3582.js → keyboard-manager-c92808d8.js} +1 -1
  259. package/dist/esm/{keyboard-manager-slimmer-f39214e4.js → keyboard-manager-slimmer-79c78ce8.js} +1 -1
  260. package/dist/esm/{language-extension-8f51f5ff.js → language-extension-29bf8acd.js} +2 -2
  261. package/dist/esm/loader.js +15 -15
  262. package/dist/esm/month-view-generator-16192182.js +98 -0
  263. package/dist/esm/{page-resize-observer-slimmer-0bf7fbf3.js → page-resize-observer-slimmer-8744cb44.js} +1 -1
  264. package/dist/esm/{public-rules-d10e76f4.js → public-rules-724873f5.js} +15 -15
  265. package/dist/esm/{range-f7b9e2fb.js → range-5257c062.js} +1 -1
  266. package/dist/esm/{responsive-format-facade-267935ae.js → responsive-format-facade-28ee2dbd.js} +6 -6
  267. package/dist/esm/{rich-text-editor-required-rule-774b822b.js → rich-text-editor-required-rule-873e2e67.js} +1 -1
  268. package/dist/esm/sanitize-fd0cb40d.js +129 -0
  269. package/dist/esm/{string-format-strategy.abstract-452f4398.js → string-format-strategy.abstract-fc60db79.js} +1 -1
  270. package/dist/esm/{string-input-formatter-slimmer-3acd240c.js → string-input-formatter-slimmer-ee32b1fd.js} +4 -4
  271. package/dist/esm/{string-mask-strategy-6232a1c1.js → string-mask-strategy-0b0accaa.js} +2 -2
  272. package/dist/esm/{style-formatter-3f88c491.js → style-formatter-314b37f3.js} +2 -2
  273. package/dist/esm/{sub-state-notify-slimmer-56380f02.js → sub-state-notify-slimmer-4453047a.js} +2 -2
  274. package/dist/esm/{sub-state-observer-slimmer-3504e2f2.js → sub-state-observer-slimmer-202ec7dc.js} +2 -2
  275. package/dist/esm/{time-required-rule-a01163b5.js → time-required-rule-5fa43804.js} +1 -1
  276. package/dist/esm/{type-guard-12f7654b.js → type-guard-c65a227d.js} +1215 -2
  277. package/dist/esm/{ui-8424715a.js → ui-28fd4193.js} +1 -1
  278. package/dist/esm/{valid-credit-card-number-rule-81443274.js → valid-credit-card-number-rule-666c415d.js} +1 -1
  279. package/dist/esm/vega-accordion.entry.js +13 -14
  280. package/dist/esm/vega-app-header-button.entry.js +37 -20
  281. package/dist/esm/vega-banner.entry.js +3 -3
  282. package/dist/esm/vega-box.entry.js +17 -18
  283. package/dist/esm/vega-breadcrumb.entry.js +4 -4
  284. package/dist/esm/vega-button-circle.entry.js +17 -18
  285. package/dist/esm/vega-button-group_2.entry.js +60 -10
  286. package/dist/esm/vega-button-link.entry.js +5 -5
  287. package/dist/esm/vega-button.entry.js +17 -17
  288. package/dist/esm/vega-calendar_4.entry.js +46 -868
  289. package/dist/esm/vega-card.entry.js +16 -17
  290. package/dist/esm/vega-carousel.entry.js +16 -16
  291. package/dist/esm/vega-checkbox_2.entry.js +9 -9
  292. package/dist/esm/vega-chip.entry.js +18 -19
  293. package/dist/esm/vega-code-block.entry.js +14 -14
  294. package/dist/esm/vega-color-picker.entry.js +8 -8
  295. package/dist/esm/vega-combo-box.entry.js +17 -16
  296. package/dist/esm/vega-date-picker_2.entry.js +1786 -1550
  297. package/dist/esm/vega-dialog_2.entry.js +19 -20
  298. package/dist/esm/vega-divider.entry.js +12 -13
  299. package/dist/esm/vega-dropdown_5.entry.js +55 -38
  300. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  301. package/dist/esm/vega-field-label.entry.js +3 -3
  302. package/dist/esm/vega-file-uploader.entry.js +8 -8
  303. package/dist/esm/vega-flag-icon.entry.js +12 -13
  304. package/dist/esm/vega-flex.entry.js +17 -18
  305. package/dist/esm/vega-font.entry.js +16 -17
  306. package/dist/esm/vega-form.entry.js +11 -11
  307. package/dist/esm/vega-grid.entry.js +16 -17
  308. package/dist/esm/vega-icon.entry.js +16 -17
  309. package/dist/esm/vega-image-uploader.entry.js +17 -17
  310. package/dist/esm/vega-input-credit-card.entry.js +16 -16
  311. package/dist/esm/vega-input-numeric.entry.js +15 -15
  312. package/dist/esm/vega-input-passcode.entry.js +18 -15
  313. package/dist/esm/vega-input-phone-number.entry.js +16 -16
  314. package/dist/esm/vega-input-range.entry.js +9 -9
  315. package/dist/esm/vega-input-select.entry.js +191 -58
  316. package/dist/esm/vega-input.entry.js +880 -286
  317. package/dist/esm/{vega-internal-event-id-5c3e5f7f.js → vega-internal-event-id-4a06d705.js} +7 -3
  318. package/dist/esm/vega-item-toggle.entry.js +4 -4
  319. package/dist/esm/vega-left-nav_5.entry.js +16 -17
  320. package/dist/esm/vega-loader-wrapper_2.entry.js +11 -11
  321. package/dist/esm/vega-page-notification_2.entry.js +1 -1
  322. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +4 -4
  323. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +2 -2
  324. package/dist/esm/vega-pagination.entry.js +15 -15
  325. package/dist/esm/vega-popover_2.entry.js +22 -22
  326. package/dist/esm/vega-progress-tracker_2.entry.js +898 -0
  327. package/dist/esm/vega-radio_2.entry.js +12 -12
  328. package/dist/esm/vega-rich-text-content.entry.js +10 -9
  329. package/dist/esm/vega-rich-text-editor_4.entry.js +91 -31
  330. package/dist/esm/vega-segment-control.entry.js +5 -5
  331. package/dist/esm/vega-selection-chip_2.entry.js +18 -18
  332. package/dist/esm/vega-selection-tile_2.entry.js +10 -10
  333. package/dist/esm/vega-sidenav_3.entry.js +14 -14
  334. package/dist/esm/vega-signature-capture.entry.js +15 -16
  335. package/dist/esm/vega-stepper.entry.js +9 -9
  336. package/dist/esm/vega-tab-group_2.entry.js +6 -6
  337. package/dist/esm/vega-table_11.entry.js +14 -14
  338. package/dist/esm/vega-text.entry.js +2 -2
  339. package/dist/esm/vega-textarea.entry.js +9 -9
  340. package/dist/esm/vega-time-picker_2.entry.js +22 -22
  341. package/dist/esm/vega-toggle-switch.entry.js +8 -8
  342. package/dist/esm/vega-tooltip_2.entry.js +16 -16
  343. package/dist/esm/vega.js +15 -15
  344. package/dist/sri/vega-sri-manifest.json +337 -337
  345. package/dist/types/components/vega-app-header-button/slimmers/renderers/vega-app-header-button-dropdown-renderer.d.ts +7 -0
  346. package/dist/types/components/vega-app-header-button/types.d.ts +2 -0
  347. package/dist/types/components/vega-app-header-button/vega-app-header-button.d.ts +14 -0
  348. package/dist/types/components/vega-button-group/types.d.ts +2 -1
  349. package/dist/types/components/vega-button-group/vega-button-group-item/slimmers/controllers/vega-button-group-item-sub-state-controller.d.ts +1 -0
  350. package/dist/types/components/vega-button-group/vega-button-group-item/slimmers/renderers/vega-button-group-item-renderer.d.ts +11 -0
  351. package/dist/types/components/vega-button-group/vega-button-group-item/vega-button-group-item.d.ts +7 -0
  352. package/dist/types/components/vega-button-group/vega-button-group.d.ts +8 -0
  353. package/dist/types/components/vega-date-picker/assets/icons.d.ts +1 -1
  354. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-open-state-controller.d.ts +60 -0
  355. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-value-controller.d.ts +3 -4
  356. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +29 -124
  357. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-input-renderer-base.abstract.d.ts +1 -0
  358. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-range-input-renderer.d.ts +5 -5
  359. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-renderer.d.ts +2 -3
  360. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-single-input-renderer.d.ts +1 -4
  361. package/dist/types/components/vega-date-picker/types.d.ts +9 -0
  362. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/constants.d.ts +1 -0
  363. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/dto/calendar-selection.d.ts +62 -0
  364. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-allow-repick-controller.d.ts +31 -0
  365. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-current-period-controller.d.ts +78 -0
  366. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-min-max-date-controller.d.ts +20 -0
  367. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-selection-controller.d.ts +75 -0
  368. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-state-base.abstract.d.ts +29 -0
  369. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-today-controller.d.ts +15 -0
  370. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-header-render.d.ts +20 -0
  371. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +19 -0
  372. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.d.ts +33 -0
  373. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.d.ts +27 -0
  374. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.d.ts +184 -0
  375. package/dist/types/components/vega-date-picker/vega-date-picker.d.ts +6 -14
  376. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.d.ts +0 -4
  377. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.d.ts +2 -0
  378. package/dist/types/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.d.ts +1 -0
  379. package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +14 -2
  380. package/dist/types/components/vega-input/slimmers/controllers/vega-input-mask-config-controller.d.ts +33 -6
  381. package/dist/types/components/vega-input/slimmers/controllers/vega-input-render-mode-controller.d.ts +27 -0
  382. package/dist/types/components/vega-input/slimmers/controllers/vega-input-value-controller.d.ts +32 -0
  383. package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-container-renderer.d.ts +27 -0
  384. package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-renderer.d.ts +58 -0
  385. package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-suggestions-renderer.d.ts +40 -0
  386. package/dist/types/components/vega-input/slimmers/renderers/vega-input-renderer.d.ts +21 -0
  387. package/dist/types/components/vega-input/types.d.ts +4 -0
  388. package/dist/types/components/vega-input/vega-input.d.ts +67 -34
  389. package/dist/types/components/vega-input-passcode/slimmers/renderers/vega-input-passcode-renderer.d.ts +1 -0
  390. package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-item-controller.d.ts +29 -0
  391. package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-source-controller.d.ts +1 -0
  392. package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-value-controller.d.ts +1 -0
  393. package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.d.ts +1 -1
  394. package/dist/types/components/vega-input-select/types.d.ts +5 -0
  395. package/dist/types/components/vega-input-select/vega-input-select.d.ts +12 -4
  396. package/dist/types/components/vega-modal/vega-modal.d.ts +7 -1
  397. package/dist/types/components/vega-popover/vega-popover.d.ts +2 -1
  398. package/dist/types/components/vega-progress-tracker/slimmers/controllers/dto/internal-progress-tracker-step.d.ts +55 -0
  399. package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-direction-controller.d.ts +27 -0
  400. package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-step-controller.d.ts +63 -0
  401. package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-steps-controller.d.ts +39 -0
  402. package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-render-mode-controller.d.ts +21 -0
  403. package/dist/types/components/vega-progress-tracker/slimmers/renderers/vega-progress-tracker-renderer.d.ts +21 -0
  404. package/dist/types/components/vega-progress-tracker/type.d.ts +1 -0
  405. package/dist/types/components/vega-progress-tracker/vega-progress-tracker-step/slimmers/controllers/vega-progress-tracker-step-state-controller.d.ts +12 -0
  406. package/dist/types/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.d.ts +22 -0
  407. package/dist/types/components/vega-progress-tracker/vega-progress-tracker.d.ts +24 -10
  408. package/dist/types/components/vega-rich-text-editor/dto/annotations/text-style-annotation.d.ts +7 -0
  409. package/dist/types/components/vega-rich-text-editor/dto/blocks/html-block.d.ts +10 -0
  410. package/dist/types/components/vega-rich-text-editor/dto/content-state.d.ts +8 -1
  411. package/dist/types/components/vega-rich-text-editor/extensions/tokens/span-to-token-node-strategy.d.ts +7 -0
  412. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-extension.d.ts +1 -1
  413. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.d.ts +7 -0
  414. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-toolbar-button-renderer.d.ts +2 -2
  415. package/dist/types/components/vega-rich-text-editor/interface.d.ts +6 -1
  416. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner-processor.interface.d.ts +13 -0
  417. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner.d.ts +35 -0
  418. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/index.d.ts +4 -0
  419. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-after-opening-tag-processor.d.ts +19 -0
  420. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-before-closing-tag-processor.d.ts +19 -0
  421. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-between-tags-processor.d.ts +59 -0
  422. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/value-controller.d.ts +1 -0
  423. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.d.ts +1 -0
  424. package/dist/types/components/vega-rich-text-editor/test/html-cleaner/html-content-cleaner.test.d.ts +1 -0
  425. package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-after-opening-tag-processor.test.d.ts +1 -0
  426. package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-before-closing-tag-processor.test.d.ts +1 -0
  427. package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-between-tags-processor.test.d.ts +1 -0
  428. package/dist/types/components.d.ts +312 -21
  429. package/dist/types/constants/regex.d.ts +1 -0
  430. package/dist/types/constants/ui.d.ts +1 -1
  431. package/dist/types/helpers/calendar/calendar-date.d.ts +86 -2
  432. package/dist/types/helpers/calendar/calendar-period/calendar-period.abstract.d.ts +7 -0
  433. package/dist/types/helpers/code-format/code-formatter.d.ts +14 -0
  434. package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +5 -1
  435. package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +8 -2
  436. package/dist/types/helpers/slimmers/element-appender/element-appender-slimmer.d.ts +4 -9
  437. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/click-outside-only-to-dismiss-strategy.d.ts +21 -0
  438. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/click-trigger-strategy.d.ts +21 -0
  439. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/hover-trigger-strategy.d.ts +22 -0
  440. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/none-trigger-strategy.d.ts +18 -0
  441. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/trigger-strategy.interface.d.ts +37 -0
  442. package/dist/types/helpers/ui/element-appender.d.ts +14 -0
  443. package/dist/types/types/components.type.d.ts +7 -0
  444. package/dist/types/types/type-guard.d.ts +16 -0
  445. package/dist/types/types/ui.type.d.ts +9 -0
  446. package/dist/types/utils/date.d.ts +11 -2
  447. package/dist/types/utils/e2e-utils.d.ts +7 -0
  448. package/dist/types/utils/sanitize.d.ts +71 -0
  449. package/dist/types/utils/test/sanitize.test.d.ts +1 -0
  450. package/dist/vega/index.esm.js +1 -1
  451. package/dist/vega/{p-7b42da4f.entry.js → p-011b94b1.entry.js} +1 -1
  452. package/dist/vega/p-012753b5.entry.js +1 -0
  453. package/dist/vega/p-024331ce.entry.js +1 -0
  454. package/dist/vega/{p-4a467973.js → p-0575d22e.js} +1 -1
  455. package/dist/vega/{p-9e59345f.entry.js → p-08a90cc6.entry.js} +1 -1
  456. package/dist/vega/p-0ede1fea.entry.js +1 -0
  457. package/dist/vega/{p-7d9cd9c8.js → p-10ac8b57.js} +1 -1
  458. package/dist/vega/{p-b9798158.js → p-1298b126.js} +1 -1
  459. package/dist/vega/{p-3c865f86.entry.js → p-17c55205.entry.js} +1 -1
  460. package/dist/vega/{p-a6010b93.entry.js → p-1e0d8228.entry.js} +1 -1
  461. package/dist/vega/p-1f83cebf.js +1 -0
  462. package/dist/vega/p-3353b3d7.js +1 -0
  463. package/dist/vega/p-365b1b35.entry.js +1 -0
  464. package/dist/vega/p-3ae9ee3d.entry.js +1 -0
  465. package/dist/vega/p-3af92370.entry.js +1 -0
  466. package/dist/vega/{p-fde50319.js → p-3bf66be2.js} +1 -1
  467. package/dist/vega/{p-235bf01b.entry.js → p-3c5a28e4.entry.js} +1 -1
  468. package/dist/vega/p-3e5f362f.js +1 -0
  469. package/dist/vega/{p-74168615.js → p-40f39194.js} +1 -1
  470. package/dist/vega/{p-1bb0c934.js → p-430be941.js} +1 -1
  471. package/dist/vega/p-43f585f7.entry.js +1 -0
  472. package/dist/vega/p-45296fd4.entry.js +1 -0
  473. package/dist/vega/{p-67f159c3.js → p-476a173a.js} +1 -1
  474. package/dist/vega/p-491618a6.entry.js +1 -0
  475. package/dist/vega/p-4a537391.entry.js +1 -0
  476. package/dist/vega/p-4aa893ef.entry.js +1 -0
  477. package/dist/vega/{p-cbabb07a.entry.js → p-4c47e8bb.entry.js} +1 -1
  478. package/dist/vega/p-4da75f2b.js +1 -0
  479. package/dist/vega/p-509eb52e.entry.js +1 -0
  480. package/dist/vega/p-5110ba73.entry.js +1 -0
  481. package/dist/vega/p-556f9a21.entry.js +1 -0
  482. package/dist/vega/p-55b54ba0.entry.js +1 -0
  483. package/dist/vega/p-5b71c85e.js +1 -0
  484. package/dist/vega/p-5ea2e43c.entry.js +1 -0
  485. package/dist/vega/p-5efc6fe1.entry.js +1 -0
  486. package/dist/vega/p-5f377954.js +1 -1
  487. package/dist/vega/{p-9ce249a9.js → p-60851f9d.js} +1 -1
  488. package/dist/vega/{p-54e56f0d.entry.js → p-64cd1931.entry.js} +1 -1
  489. package/dist/vega/{p-de97c6d9.js → p-66fa700b.js} +1 -1
  490. package/dist/vega/{p-8c6b6ad7.entry.js → p-67fcf6f2.entry.js} +1 -1
  491. package/dist/vega/p-68df4288.js +1 -0
  492. package/dist/vega/p-691ba1ae.js +1 -0
  493. package/dist/vega/{p-61d9cdf9.entry.js → p-6a2205a1.entry.js} +1 -1
  494. package/dist/vega/{p-35cd469a.entry.js → p-6a4277df.entry.js} +1 -1
  495. package/dist/vega/{p-1f26de89.js → p-6e136980.js} +1 -1
  496. package/dist/vega/p-6f8be8ea.js +1 -0
  497. package/dist/vega/p-6fa8e231.entry.js +1 -0
  498. package/dist/vega/p-7045e84c.entry.js +1 -0
  499. package/dist/vega/{p-85f9a980.js → p-7288f8c4.js} +1 -1
  500. package/dist/vega/{p-2f09c6aa.js → p-749f96a4.js} +1 -1
  501. package/dist/vega/{p-a0467b83.js → p-77edf50c.js} +1 -1
  502. package/dist/vega/p-7aaece55.entry.js +1 -0
  503. package/dist/vega/p-7ec6a104.entry.js +1 -0
  504. package/dist/vega/{p-52efaadb.entry.js → p-81134e9e.entry.js} +1 -1
  505. package/dist/vega/p-8187878e.js +1 -0
  506. package/dist/vega/p-89d685a8.js +1 -0
  507. package/dist/vega/{p-c0223a17.entry.js → p-8c0eb12f.entry.js} +1 -1
  508. package/dist/vega/p-8d0ca805.js +1 -0
  509. package/dist/vega/p-8d701832.entry.js +1 -0
  510. package/dist/vega/{p-3e040167.entry.js → p-8e42a14c.entry.js} +1 -1
  511. package/dist/vega/p-8ed0faa2.entry.js +1 -0
  512. package/dist/vega/{p-3925c16b.js → p-920719ad.js} +1 -1
  513. package/dist/vega/{p-18e8c54a.entry.js → p-94394df7.entry.js} +1 -1
  514. package/dist/vega/p-99aa554b.entry.js +1 -0
  515. package/dist/vega/{p-69aec6af.entry.js → p-9a2446f1.entry.js} +1 -1
  516. package/dist/vega/{p-924b4e24.js → p-a2aeb646.js} +1 -1
  517. package/dist/vega/p-a475d525.entry.js +1 -0
  518. package/dist/vega/{p-c2f21426.entry.js → p-a530797f.entry.js} +1 -1
  519. package/dist/vega/{p-652626b6.entry.js → p-a85ad369.entry.js} +1 -1
  520. package/dist/vega/p-ac5e9955.entry.js +1 -0
  521. package/dist/vega/p-aedf7146.js +1 -0
  522. package/dist/vega/p-b1f869fb.js +1 -0
  523. package/dist/vega/p-b4ea3fad.js +1 -0
  524. package/dist/vega/p-badad9ed.js +1 -0
  525. package/dist/vega/{p-98fb9eaa.entry.js → p-bb4a558d.entry.js} +1 -1
  526. package/dist/vega/p-bb8339ed.entry.js +1 -0
  527. package/dist/vega/{p-75b5894f.entry.js → p-be930e85.entry.js} +1 -1
  528. package/dist/vega/p-bf2bd6d0.entry.js +1 -0
  529. package/dist/vega/p-c2488ed6.js +1 -0
  530. package/dist/vega/{p-0f7dec29.entry.js → p-c379a5a5.entry.js} +1 -1
  531. package/dist/vega/{p-db57dddc.js → p-c9b6b5a9.js} +1 -1
  532. package/dist/vega/{p-7c1d08db.entry.js → p-ca3472c1.entry.js} +1 -1
  533. package/dist/vega/{p-35252108.js → p-cc43bffb.js} +1 -1
  534. package/dist/vega/p-cf5b80f9.entry.js +1 -0
  535. package/dist/vega/{p-8fae8f9e.js → p-d0e31633.js} +1 -1
  536. package/dist/vega/{p-bfb86c3e.entry.js → p-db60a38e.entry.js} +1 -1
  537. package/dist/vega/{p-71f9c4d4.js → p-dd11f735.js} +1 -1
  538. package/dist/vega/{p-19522949.js → p-e16b3adf.js} +1 -1
  539. package/dist/vega/p-e93545fd.js +1 -0
  540. package/dist/vega/{p-e6351dab.entry.js → p-e9c4fd24.entry.js} +1 -1
  541. package/dist/vega/{p-91d71ae9.entry.js → p-eb60cfe1.entry.js} +1 -1
  542. package/dist/vega/p-ec192283.entry.js +1 -0
  543. package/dist/vega/{p-c6ae78f2.entry.js → p-f2a3a1ec.entry.js} +1 -1
  544. package/dist/vega/p-f2cdd212.entry.js +1 -0
  545. package/dist/vega/p-f3c3ff26.entry.js +1 -0
  546. package/dist/vega/{p-b27fcac4.entry.js → p-f4c05b4a.entry.js} +1 -1
  547. package/dist/vega/{p-dde03224.entry.js → p-f52a0155.entry.js} +1 -1
  548. package/dist/vega/p-f8641214.entry.js +1 -0
  549. package/dist/vega/{p-330c224f.entry.js → p-f89443aa.entry.js} +1 -1
  550. package/dist/vega/{p-58769a72.entry.js → p-f8f7cf48.entry.js} +1 -1
  551. package/dist/vega/p-fe12eff6.js +1 -0
  552. package/dist/vega/vega.esm.js +1 -1
  553. package/package.json +2 -3
  554. package/dist/cjs/date-0a6bb035.js +0 -95
  555. package/dist/cjs/mobilefriendly-aa2e50e9.js +0 -13
  556. package/dist/cjs/state-background-color-formatter-aa5570f6.js +0 -85
  557. package/dist/cjs/vega-progress-tracker.cjs.entry.js +0 -252
  558. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-controller.js +0 -282
  559. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-element-appender-controller.js +0 -35
  560. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-mobile-controller.js +0 -53
  561. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-month-year-change-event-controller.js +0 -139
  562. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-zindex-controller.js +0 -49
  563. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-month-year-dropdown-renderer.js +0 -341
  564. package/dist/esm/date-c55b97f0.js +0 -87
  565. package/dist/esm/mobilefriendly-c5d0573d.js +0 -11
  566. package/dist/esm/state-background-color-formatter-0f01d27a.js +0 -82
  567. package/dist/esm/vega-progress-tracker.entry.js +0 -248
  568. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-controller.d.ts +0 -96
  569. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-element-appender-controller.d.ts +0 -12
  570. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-mobile-controller.d.ts +0 -18
  571. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-month-year-change-event-controller.d.ts +0 -46
  572. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-zindex-controller.d.ts +0 -15
  573. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-month-year-dropdown-renderer.d.ts +0 -97
  574. package/dist/vega/p-08835909.js +0 -1
  575. package/dist/vega/p-0cdb38d3.js +0 -1
  576. package/dist/vega/p-0e5297b9.entry.js +0 -1
  577. package/dist/vega/p-0feceaac.entry.js +0 -1
  578. package/dist/vega/p-115b42e6.entry.js +0 -1
  579. package/dist/vega/p-1372b984.js +0 -1
  580. package/dist/vega/p-1739a877.entry.js +0 -1
  581. package/dist/vega/p-1a59703b.entry.js +0 -1
  582. package/dist/vega/p-1e92737c.entry.js +0 -1
  583. package/dist/vega/p-257ff60b.entry.js +0 -1
  584. package/dist/vega/p-25a3fad7.entry.js +0 -1
  585. package/dist/vega/p-2622f0a8.entry.js +0 -1
  586. package/dist/vega/p-26c4f07c.entry.js +0 -1
  587. package/dist/vega/p-2e6ce1e9.entry.js +0 -1
  588. package/dist/vega/p-2ec7e020.entry.js +0 -1
  589. package/dist/vega/p-308aa2e3.js +0 -1
  590. package/dist/vega/p-33f3f306.js +0 -1
  591. package/dist/vega/p-366825fa.entry.js +0 -1
  592. package/dist/vega/p-37020002.entry.js +0 -1
  593. package/dist/vega/p-379f1b40.entry.js +0 -1
  594. package/dist/vega/p-38cb2b40.js +0 -1
  595. package/dist/vega/p-447c7590.js +0 -1
  596. package/dist/vega/p-4e13a26f.js +0 -1
  597. package/dist/vega/p-5972c101.entry.js +0 -1
  598. package/dist/vega/p-5d827fe5.js +0 -1
  599. package/dist/vega/p-5e708ad5.entry.js +0 -1
  600. package/dist/vega/p-65a9af84.entry.js +0 -1
  601. package/dist/vega/p-67eb405d.entry.js +0 -1
  602. package/dist/vega/p-71ddccf2.entry.js +0 -1
  603. package/dist/vega/p-785d9ac3.entry.js +0 -1
  604. package/dist/vega/p-796d840c.entry.js +0 -1
  605. package/dist/vega/p-7a590741.entry.js +0 -1
  606. package/dist/vega/p-824a06ba.js +0 -1
  607. package/dist/vega/p-8350506e.js +0 -1
  608. package/dist/vega/p-867a4970.js +0 -1
  609. package/dist/vega/p-880569ec.entry.js +0 -1
  610. package/dist/vega/p-8ac2f43f.entry.js +0 -1
  611. package/dist/vega/p-8ff96b8c.entry.js +0 -13
  612. package/dist/vega/p-9794fd88.entry.js +0 -1
  613. package/dist/vega/p-a10b9f2e.js +0 -12
  614. package/dist/vega/p-a630ce73.entry.js +0 -1
  615. package/dist/vega/p-b1faebe0.js +0 -1
  616. package/dist/vega/p-b5ba0c11.js +0 -1
  617. package/dist/vega/p-b8b9ed2c.js +0 -1
  618. package/dist/vega/p-bcc396c2.entry.js +0 -1
  619. package/dist/vega/p-bccee21e.js +0 -1
  620. package/dist/vega/p-c224b44c.js +0 -1
  621. package/dist/vega/p-ea96635b.entry.js +0 -1
  622. package/dist/vega/p-f21b893b.entry.js +0 -1
  623. package/dist/vega/p-fb320b50.entry.js +0 -1
  624. package/dist/vega/p-ff470366.entry.js +0 -1
@@ -1,61 +1,62 @@
1
1
  import { h, H as Host, F as Fragment, r as registerInstance, c as createEvent, g as getElement } from './index-090d31ca.js';
2
2
  import { s as sanitizeVegaComponent } from './component-7d906393.js';
3
- import { D as DateRequiredRule } from './date-required-rule-8944f3bf.js';
4
- import { c as compareIsSameOrBefore, i as isDateStr, b as compareIsBefore, d as compareIsAfter } from './date-c55b97f0.js';
3
+ import { D as DateRequiredRule } from './date-required-rule-47ecc28f.js';
4
+ import { Z as compareIsSameOrBefore, Q as isDateStr, _ as compareIsBefore, $ as compareIsAfter, a0 as CalendarDate, a1 as MonthPeriod, a2 as isCalendarDateType } from './type-guard-c65a227d.js';
5
5
  import { I as InternalFormFieldValidationRule } from './internal-form-field-validation-rule.abstract-f5b6bdbf.js';
6
- import { c as MapToComponentField, V as VegaSlimmer, M as MapToComponentMethod, L as LogUtility, I as InjectVegaSlimmer } from './global-slimmer-registry-17c4efd4.js';
6
+ import { c as MapToComponentField, V as VegaSlimmer, L as LogUtility, M as MapToComponentMethod, I as InjectVegaSlimmer } from './global-slimmer-registry-17c4efd4.js';
7
7
  import { V as VegaComponentUsageRuntimeMetricsSlimmer, I as InjectVegaGlobalSlimmer } from './component-usage-runtime-metrics-a84cc93e.js';
8
- import { F as FormFieldControllerSlimmer } from './form-field-controller-slimmer-bf071b75.js';
8
+ import { F as FormFieldControllerSlimmer } from './form-field-controller-slimmer-5d9dc384.js';
9
9
  import { a as arrayToClassString, g as getDeviceType, D as DeviceType } from './ui-bb99c0c2.js';
10
- import { D as DomNodeSubjectObserverFactory, a as VegaClick, d as domNodeSubjectFactory, V as VegaDropdownClick, o as VegaMonthYearChange, f as VegaChange } from './dom-node-subject-observer-factory-dca87b70.js';
10
+ import { D as DomNodeSubjectObserverFactory, a as VegaClick, r as VegaSelectionChange, q as VegaClear, p as VegaMonthYearChange, P as VegaOpen, e as VegaClose, g as VegaChange, d as domNodeSubjectFactory, V as VegaDropdownClick, s as VegaDropdownShow, t as VegaDropdownHide } from './dom-node-subject-observer-factory-064ee2b2.js';
11
11
  import { a as VegaInternalIconManager } from './internal-icon-manager-f0486245.js';
12
12
  import { c as createEnterKeyHandlerToTriggerClick } from './accessibility-e5fd0fab.js';
13
13
  import { i as isArrayEqual } from './array-7888f339.js';
14
- import { c as createCommonjsModule } from './_commonjsHelpers-9943807e.js';
15
- import { C as ChangeManager } from './change-manager-6a7eb88c.js';
16
- import { s as VegaInternalMonthYearChange, t as VegaInternalDropdownUpdateTarget } from './vega-internal-event-id-5c3e5f7f.js';
17
- import { n as InternalVegaZIndexManager } from './function-extension-8d39db56.js';
18
- import { F as FORM_ELEMENT_VALUE_CHANGE } from './static-subject-title-52f93124.js';
19
- import { S as StringMaskStrategy } from './string-mask-strategy-6232a1c1.js';
20
- import { S as StringInputFormatterSlimmer } from './string-input-formatter-slimmer-3acd240c.js';
21
- import { E as ElementAppenderSlimmer } from './element-appender-slimmer-6791c332.js';
14
+ import './translation-96e5debd.js';
22
15
  import './vega-env-manager-8f8dc473.js';
16
+ import './function-extension-e8c0e43e.js';
23
17
  import { F as FeatureFlag } from './feature-flag-controller-51659753.js';
24
18
  import './wait-for-vega-handler-c2c07ac3.js';
25
- import './translation-96e5debd.js';
26
- import './dto-renderer-manager-d862ae78.js';
19
+ import './dto-renderer-manager-ee1a5864.js';
27
20
  import './vega-nonce-manager-497e5eb5.js';
28
- import './code-block-ecb4491b.js';
29
- import { K as KeyboardManagerSlimmer } from './keyboard-manager-slimmer-f39214e4.js';
21
+ import './code-block-8ee34ab6.js';
22
+ import { t as tryGetDocument } from './try-get-document-bef0f526.js';
23
+ import { F as FORM_ELEMENT_VALUE_CHANGE } from './static-subject-title-52f93124.js';
24
+ import { C as ChangeManager } from './change-manager-6a7eb88c.js';
25
+ import { S as StringMaskStrategy } from './string-mask-strategy-0b0accaa.js';
26
+ import { S as StringInputFormatterSlimmer } from './string-input-formatter-slimmer-ee32b1fd.js';
27
+ import { K as KeyboardManagerSlimmer } from './keyboard-manager-slimmer-79c78ce8.js';
30
28
  import { C as ComponentLoadRequired } from './component-load-required-db42032a.js';
31
- import { c as createEventEmitSlimmer } from './event-emit-slimmer-4e28e9f8.js';
32
- import { C as ChildNodesEventPreventSlimmer } from './child-nodes-event-prevent-slimmer-76331524.js';
29
+ import { c as createEventEmitSlimmer } from './event-emit-slimmer-09827cec.js';
30
+ import { C as ChildNodesEventPreventSlimmer } from './child-nodes-event-prevent-slimmer-e662bee2.js';
33
31
  import { T as TranslationSlimmer } from './translation-slimmer-c936cb1b.js';
34
- import { r as remoteInvocationRegistry } from './remote-invocation-registry-d69245c2.js';
32
+ import { E as ElementAppenderSlimmer } from './element-appender-slimmer-35e26b5a.js';
33
+ import { S as SynchronizeTaskQueue } from './synchronize-task-queue-ac8acc3b.js';
34
+ import { C as ClickOutsideOnlyToDismissStrategy } from './click-outside-only-to-dismiss-strategy-3d286c1b.js';
35
+ import { v as VegaInternalDatePickerCalendarClear, w as VegaInternalDatePickerCalendarUpdatePeriodByUser } from './vega-internal-event-id-4a06d705.js';
35
36
  import { O as Observer } from './observer-3959f9dd.js';
37
+ import { M as MonthViewGenerator } from './month-view-generator-16192182.js';
38
+ import './breakpoints-d9faf11c.js';
39
+ import './ui-28fd4193.js';
40
+ import './typography-396de03f.js';
36
41
  import './string-a953eafc.js';
37
42
  import './create-public-api-runtime-metrics-slimmer-bedf3a1e.js';
38
43
  import './dynamic-slimmer-90b8af32.js';
39
- import './page-resize-observer-slimmer-0bf7fbf3.js';
40
- import './ui-8424715a.js';
41
- import './breakpoints-d9faf11c.js';
42
- import './try-get-document-bef0f526.js';
44
+ import './page-resize-observer-slimmer-8744cb44.js';
43
45
  import './mutation-observer-slimmer-58ebc13c.js';
44
46
  import './mutation-observer-filters-1a054fb0.js';
45
- import './sub-state-observer-slimmer-3504e2f2.js';
47
+ import './sub-state-observer-slimmer-202ec7dc.js';
46
48
  import './number-4398f2e1.js';
47
49
  import './dark-mode-style-controller-de88a117.js';
48
- import './internal-vega-event-manager-516aa721.js';
49
- import './type-guard-12f7654b.js';
50
- import './typography-396de03f.js';
50
+ import './_commonjsHelpers-9943807e.js';
51
+ import './internal-vega-event-manager-efb6786e.js';
52
+ import './object-66c37948.js';
51
53
  import './base-renderer-101f6d04.js';
52
- import './string-format-strategy.abstract-452f4398.js';
53
- import './index-c943d263.js';
54
- import './responsive-format-facade-267935ae.js';
55
- import './pixel-f32c07ce.js';
56
54
  import './index-e9da316f.js';
57
- import './object-66c37948.js';
58
- import './keyboard-manager-5d8f3582.js';
55
+ import './string-format-strategy.abstract-fc60db79.js';
56
+ import './index-51a7da7f.js';
57
+ import './keyboard-manager-c92808d8.js';
58
+ import './responsive-format-facade-28ee2dbd.js';
59
+ import './pixel-f32c07ce.js';
59
60
 
60
61
  /**
61
62
  * A rule that checks if start date is before than end date
@@ -261,11 +262,14 @@ const Icons = {
261
262
  icon: `<svg width="16" height="16" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#clip0_41275_12898)"><path d="M5.75 2H10.25V0.75C10.25 0.335938 10.5844 0 11 0C11.4156 0 11.75 0.335938 11.75 0.75V2H13C14.1031 2 15 2.89531 15 4V14C15 15.1031 14.1031 16 13 16H3C1.89531 16 1 15.1031 1 14V4C1 2.89531 1.89531 2 3 2H4.25V0.75C4.25 0.335938 4.58437 0 5 0C5.41563 0 5.75 0.335938 5.75 0.75V2ZM2.5 7.75H5V6H2.5V7.75ZM2.5 9.25V11.25H5V9.25H2.5ZM6.5 9.25V11.25H9.5V9.25H6.5ZM11 9.25V11.25H13.5V9.25H11ZM13.5 6H11V7.75H13.5V6ZM13.5 12.75H11V14.5H13C13.275 14.5 13.5 14.275 13.5 14V12.75ZM9.5 12.75H6.5V14.5H9.5V12.75ZM5 12.75H2.5V14C2.5 14.275 2.72375 14.5 3 14.5H5V12.75ZM9.5 6H6.5V7.75H9.5V6Z" fill="currentColor"/></g><defs><clipPath id="clip0_41275_12898"><rect width="14" height="16" fill="white" transform="translate(1)"/></clipPath></defs></svg>`,
262
263
  },
263
264
  'caret-down': {
264
- icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path fill="currentColor" d="M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z"/></svg>`,
265
+ icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" fill="currentColor"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path d="M199 401c9.4 9.4 24.6 9.4 33.9 0L425 209c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-175 175L41 175c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9L199 401z"/></svg>`,
266
+ },
267
+ 'bulls-eye': {
268
+ icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" fill="currentColor"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path d="M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM256 368a112 112 0 1 0 0-224 112 112 0 1 0 0 224zm0-272a160 160 0 1 1 0 320 160 160 0 1 1 0-320zm0 176a16 16 0 1 0 0-32 16 16 0 1 0 0 32zm0-80a64 64 0 1 1 0 128 64 64 0 1 1 0-128z"/></svg>`,
265
269
  },
266
270
  };
267
271
 
268
- var __decorate$f = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
272
+ var __decorate$k = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
269
273
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
270
274
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
271
275
  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;
@@ -278,9 +282,10 @@ class VegaDatePickerRenderer extends VegaSlimmer {
278
282
  return (h("div", { class: "vega-input-prefix" },
279
283
  h("vega-icon", { icon: VegaInternalIconManager.getIconKey('calendar'), color: "text-secondary",
280
284
  // eslint-disable-next-line react/jsx-no-bind
281
- onClick: () => {
285
+ onClick: async () => {
282
286
  if (!this.disabled) {
283
- this.focusInput();
287
+ await this.focusInput();
288
+ await this.vegaDatePickerCalendarRenderer.triggerRepick('start');
284
289
  }
285
290
  } })));
286
291
  };
@@ -289,13 +294,13 @@ class VegaDatePickerRenderer extends VegaSlimmer {
289
294
  * on mobile, the input is ready-only to avoid virtual keyboard
290
295
  */
291
296
  this.isInputEnabled = () => {
292
- return !this.readOnly && !this.vegaDatePickerMobileController.getIsMobileDevice();
297
+ return !this.readOnly && !this.isMobileDevice;
293
298
  };
294
299
  this.renderLabel = () => {
295
300
  return (this.label && (h("vega-field-label", { ref: (e) => {
296
301
  /* istanbul ignore next */
297
- DomNodeSubjectObserverFactory.addUniqueObserverToNode(e, VegaClick, () => {
298
- this.focusInput();
302
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(e, VegaClick, async () => {
303
+ await this.focusInput();
299
304
  });
300
305
  }, isFieldRequired: this.required, disabled: this.disabled, label: this.label })));
301
306
  };
@@ -304,11 +309,11 @@ class VegaDatePickerRenderer extends VegaSlimmer {
304
309
  * @see{module:vega-date-picker-click-label-focus-input-e2e}
305
310
  */
306
311
  /* istanbul ignore next */
307
- this.focusInput = () => {
312
+ this.focusInput = async () => {
308
313
  var _a, _b;
309
314
  (_a = this.vegaDatePickerSingleInputRenderer.getSingleDateInputRef()) === null || _a === void 0 ? void 0 : _a.focus();
310
315
  (_b = this.vegaDatePickerRangeInputRenderer.getStartDateInputRef()) === null || _b === void 0 ? void 0 : _b.focus();
311
- this.vegaDatePickerCalendarRenderer.getDatePicker().show();
316
+ await this.calendarOpenStateController.showCalendar();
312
317
  };
313
318
  }
314
319
  getDatePickerContainer() {
@@ -319,119 +324,62 @@ class VegaDatePickerRenderer extends VegaSlimmer {
319
324
  'vega-input-container',
320
325
  this.size,
321
326
  `${this.mode}-mode`,
322
- this.vegaDatePickerMobileController.getIsMobileDevice()
323
- ? /* istanbul ignore next */ 'mobile'
324
- : '',
327
+ this.isMobileDevice ? /* istanbul ignore next */ 'mobile' : '',
325
328
  ];
326
329
  return (h(Host, { class: {
327
330
  disabled: this.disabled,
328
331
  } },
329
332
  this.renderLabel(),
330
- h("div", { class: arrayToClassString(classNames), ref: (ref) => (this.datePickerContainer = ref) },
331
- this.mode === 'range'
332
- ? this.vegaDatePickerRangeInputRenderer.render()
333
- : this.vegaDatePickerSingleInputRenderer.render(),
334
- this.showYearMonthDropdowns && this.monthYearDropdownRenderer.render())));
333
+ h("div", { class: arrayToClassString(classNames), ref: (ref) => (this.datePickerContainer = ref) }, this.mode === 'range'
334
+ ? this.vegaDatePickerRangeInputRenderer.render()
335
+ : this.vegaDatePickerSingleInputRenderer.render()),
336
+ this.vegaDatePickerCalendarRenderer.render()));
335
337
  }
336
338
  }
337
339
  (() => {
338
340
  VegaInternalIconManager.register({ calendar: Icons.calendar });
339
341
  })();
340
- __decorate$f([
342
+ __decorate$k([
341
343
  MapToComponentField()
342
344
  ], VegaDatePickerRenderer.prototype, "disabled", void 0);
343
- __decorate$f([
345
+ __decorate$k([
344
346
  MapToComponentField()
345
347
  ], VegaDatePickerRenderer.prototype, "size", void 0);
346
- __decorate$f([
348
+ __decorate$k([
347
349
  MapToComponentField()
348
350
  ], VegaDatePickerRenderer.prototype, "mode", void 0);
349
- __decorate$f([
351
+ __decorate$k([
350
352
  MapToComponentField()
351
353
  ], VegaDatePickerRenderer.prototype, "label", void 0);
352
- __decorate$f([
354
+ __decorate$k([
353
355
  MapToComponentField()
354
356
  ], VegaDatePickerRenderer.prototype, "required", void 0);
355
- __decorate$f([
357
+ __decorate$k([
356
358
  MapToComponentField()
357
359
  ], VegaDatePickerRenderer.prototype, "readOnly", void 0);
358
- __decorate$f([
360
+ __decorate$k([
359
361
  MapToComponentField()
360
362
  ], VegaDatePickerRenderer.prototype, "autoValidation", void 0);
361
- __decorate$f([
363
+ __decorate$k([
362
364
  MapToComponentField()
363
365
  ], VegaDatePickerRenderer.prototype, "host", void 0);
364
- __decorate$f([
365
- MapToComponentField()
366
- ], VegaDatePickerRenderer.prototype, "showYearMonthDropdowns", void 0);
367
- __decorate$f([
366
+ __decorate$k([
368
367
  MapToComponentField()
369
- ], VegaDatePickerRenderer.prototype, "vegaDatePickerMobileController", void 0);
370
- __decorate$f([
368
+ ], VegaDatePickerRenderer.prototype, "isMobileDevice", void 0);
369
+ __decorate$k([
371
370
  MapToComponentField()
372
371
  ], VegaDatePickerRenderer.prototype, "vegaDatePickerSingleInputRenderer", void 0);
373
- __decorate$f([
372
+ __decorate$k([
374
373
  MapToComponentField()
375
374
  ], VegaDatePickerRenderer.prototype, "vegaDatePickerRangeInputRenderer", void 0);
376
- __decorate$f([
375
+ __decorate$k([
377
376
  MapToComponentField()
378
377
  ], VegaDatePickerRenderer.prototype, "vegaDatePickerCalendarRenderer", void 0);
379
- __decorate$f([
380
- MapToComponentField()
381
- ], VegaDatePickerRenderer.prototype, "monthYearDropdownRenderer", void 0);
382
-
383
- var __decorate$e = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
384
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
385
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
386
- 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;
387
- return c > 3 && r && Object.defineProperty(target, key, r), r;
388
- };
389
- /** The date picker mobile controller slimmer */
390
- class VegaDatePickerMobileController extends VegaSlimmer {
391
- constructor() {
392
- super(...arguments);
393
- this.isMobileDevice = getDeviceType() === DeviceType.MOBILE;
394
- }
395
- /**
396
- * The function returns a boolean value indicating whether the device is a mobile device or not.
397
- *
398
- * @returns {boolean} A boolean value indicating whether the device is a mobile device or not.
399
- */
400
- getIsMobileDevice() {
401
- return this.isMobileDevice;
402
- }
403
- /*
404
- * The below method is e2e-test covered in
405
- * @see{module:vega-date-picker-scroll-in-mobile}
406
- */
407
- /* istanbul ignore next */
408
- /**
409
- * The function prevents touchmove events from scrolling the element on mobile devices.
410
- */
411
- preventElementTouchMoveInMobile() {
412
- const backdrop =
413
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
414
- this.host.shadowRoot.querySelector('.litepicker-backdrop');
415
- if (backdrop) {
416
- backdrop.removeEventListener('touchmove', (e) => e.preventDefault());
417
- backdrop.addEventListener('touchmove', (e) => e.preventDefault());
418
- }
419
- this.vegaDatePickerCalendarRenderer
420
- .getCalendarContainerRef()
421
- .removeEventListener('touchmove', (e) => e.preventDefault());
422
- this.vegaDatePickerCalendarRenderer
423
- .getCalendarContainerRef()
424
- .addEventListener('touchmove', (e) => e.preventDefault());
425
- }
426
- }
427
- __decorate$e([
378
+ __decorate$k([
428
379
  MapToComponentField()
429
- ], VegaDatePickerMobileController.prototype, "host", void 0);
430
- __decorate$e([
431
- MapToComponentField()
432
- ], VegaDatePickerMobileController.prototype, "vegaDatePickerCalendarRenderer", void 0);
380
+ ], VegaDatePickerRenderer.prototype, "calendarOpenStateController", void 0);
433
381
 
434
- var __decorate$d = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
382
+ var __decorate$j = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
435
383
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
436
384
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
437
385
  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;
@@ -443,13 +391,14 @@ var __decorate$d = (undefined && undefined.__decorate) || function (decorators,
443
391
  class VegaDatePickerInputRendererBase extends VegaSlimmer {
444
392
  constructor() {
445
393
  super(...arguments);
446
- this.onClickClearIcon = () => {
394
+ this.onClickClearIcon = async () => {
447
395
  if (this.mode === 'range') {
448
396
  this.vegaDatePickerValueController.setValue(['', '']);
449
397
  }
450
398
  else {
451
399
  this.vegaDatePickerValueController.setValue('');
452
400
  }
401
+ await this.calendarOpenStateController.hideCalendar();
453
402
  };
454
403
  this.isClearIconVisible = () => {
455
404
  if (this.mode === 'range') {
@@ -470,20 +419,23 @@ class VegaDatePickerInputRendererBase extends VegaSlimmer {
470
419
  h("vega-icon", { icon: "close" })))));
471
420
  }
472
421
  }
473
- __decorate$d([
422
+ __decorate$j([
474
423
  MapToComponentField()
475
424
  ], VegaDatePickerInputRendererBase.prototype, "disabled", void 0);
476
- __decorate$d([
425
+ __decorate$j([
477
426
  MapToComponentField()
478
427
  ], VegaDatePickerInputRendererBase.prototype, "showClearIcon", void 0);
479
- __decorate$d([
428
+ __decorate$j([
480
429
  MapToComponentField()
481
430
  ], VegaDatePickerInputRendererBase.prototype, "mode", void 0);
482
- __decorate$d([
431
+ __decorate$j([
483
432
  MapToComponentField()
484
433
  ], VegaDatePickerInputRendererBase.prototype, "vegaDatePickerValueController", void 0);
434
+ __decorate$j([
435
+ MapToComponentField()
436
+ ], VegaDatePickerInputRendererBase.prototype, "calendarOpenStateController", void 0);
485
437
 
486
- var __decorate$c = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
438
+ var __decorate$i = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
487
439
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
488
440
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
489
441
  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;
@@ -496,10 +448,8 @@ class VegaDatePickerSingleInputRenderer extends VegaDatePickerInputRendererBase
496
448
  return (h("div", { class: "date-picker-input" },
497
449
  this.vegaDatePickerRenderer.renderInputPrefix(),
498
450
  h("input", { readOnly: !this.vegaDatePickerRenderer.isInputEnabled(), placeholder: this.getSinglePlaceholder(), value: this.vegaDatePickerValueController.getValue(), ref: (ref) => (this.singleDateInputRef = ref), onChange: this.onSingleDateChange, disabled: this.disabled,
499
- // eslint-disable-next-line react/jsx-no-bind
500
- onClick: () => {
501
- this.vegaDatePickerCalendarRenderer.getDatePicker().show();
502
- } }),
451
+ /* eslint-disable-next-line react/jsx-no-bind */
452
+ onClick: () => this.calendarOpenStateController.showCalendar() }),
503
453
  this.renderClearIcon()));
504
454
  };
505
455
  this.getSinglePlaceholder = () => {
@@ -519,7 +469,7 @@ class VegaDatePickerSingleInputRenderer extends VegaDatePickerInputRendererBase
519
469
  this.onSingleDateChange = (e) => {
520
470
  const currentTarget = e.currentTarget;
521
471
  const date = currentTarget.value;
522
- if (isDateStr(date)) {
472
+ if (CalendarDate.fromString(date, this.format)) {
523
473
  this.vegaDatePickerValueController.setValue(this.vegaDatePickerFormatController.formatDate(date));
524
474
  }
525
475
  else {
@@ -529,36 +479,27 @@ class VegaDatePickerSingleInputRenderer extends VegaDatePickerInputRendererBase
529
479
  }
530
480
  };
531
481
  }
532
- componentWillRender() {
533
- this.oldSingleDateInputRef = this.singleDateInputRef;
534
- }
535
482
  getSingleDateInputRef() {
536
483
  return this.singleDateInputRef;
537
484
  }
538
- getOldSingleDateInputRef() {
539
- return this.oldSingleDateInputRef;
540
- }
541
485
  }
542
- __decorate$c([
486
+ __decorate$i([
543
487
  MapToComponentField()
544
488
  ], VegaDatePickerSingleInputRenderer.prototype, "placeholder", void 0);
545
- __decorate$c([
489
+ __decorate$i([
546
490
  MapToComponentField()
547
491
  ], VegaDatePickerSingleInputRenderer.prototype, "format", void 0);
548
- __decorate$c([
492
+ __decorate$i([
549
493
  MapToComponentField()
550
494
  ], VegaDatePickerSingleInputRenderer.prototype, "vegaDatePickerFormatController", void 0);
551
- __decorate$c([
495
+ __decorate$i([
552
496
  MapToComponentField()
553
497
  ], VegaDatePickerSingleInputRenderer.prototype, "vegaDatePickerRenderer", void 0);
554
- __decorate$c([
498
+ __decorate$i([
555
499
  MapToComponentField()
556
- ], VegaDatePickerSingleInputRenderer.prototype, "vegaDatePickerCalendarRenderer", void 0);
557
- __decorate$c([
558
- MapToComponentMethod('componentWillRender')
559
- ], VegaDatePickerSingleInputRenderer.prototype, "componentWillRender", null);
500
+ ], VegaDatePickerSingleInputRenderer.prototype, "calendarOpenStateController", void 0);
560
501
 
561
- var __decorate$b = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
502
+ var __decorate$h = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
562
503
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
563
504
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
564
505
  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;
@@ -571,12 +512,16 @@ class VegaDatePickerRangeInputRenderer extends VegaDatePickerInputRendererBase {
571
512
  return (h(Fragment, null,
572
513
  h("div", { class: "date-picker-input" },
573
514
  this.vegaDatePickerRenderer.renderInputPrefix(),
574
- h("input", { readOnly: !this.vegaDatePickerRenderer.isInputEnabled(), placeholder: this.getRangePlaceholder()[0], value: this.vegaDatePickerValueController.getValue()[0], ref: (ref) => (this.startDateInputRef = ref), onChange: this.onStartDateChange, disabled: this.disabled })),
515
+ h("input", { readOnly: !this.vegaDatePickerRenderer.isInputEnabled(), placeholder: this.getRangePlaceholder()[0], value: this.vegaDatePickerValueController.getValue()[0], ref: (ref) => (this.startDateInputRef = ref), onChange: this.onStartDateChange, disabled: this.disabled,
516
+ // eslint-disable-next-line react/jsx-no-bind
517
+ onClick: async () => await this.onInputClicked('start') })),
575
518
  h("span", { class: {
576
519
  'range-input-divider': true,
577
520
  } }),
578
521
  h("div", { class: "date-picker-input" },
579
- h("input", { readOnly: !this.vegaDatePickerRenderer.isInputEnabled(), placeholder: this.getRangePlaceholder()[1], value: this.vegaDatePickerValueController.getValue()[1], ref: (ref) => (this.endDateInputRef = ref), onChange: this.onEndDateChange, disabled: this.disabled }),
522
+ h("input", { readOnly: !this.vegaDatePickerRenderer.isInputEnabled(), placeholder: this.getRangePlaceholder()[1], value: this.vegaDatePickerValueController.getValue()[1], ref: (ref) => (this.endDateInputRef = ref), onChange: this.onEndDateChange, disabled: this.disabled,
523
+ // eslint-disable-next-line react/jsx-no-bind
524
+ onClick: async () => await this.onInputClicked('end') }),
580
525
  this.renderClearIcon())));
581
526
  };
582
527
  this.getRangePlaceholder = () => {
@@ -596,7 +541,7 @@ class VegaDatePickerRangeInputRenderer extends VegaDatePickerInputRendererBase {
596
541
  this.onStartDateChange = (e) => {
597
542
  const currentTarget = e.currentTarget;
598
543
  const date = currentTarget.value;
599
- if (isDateStr(date)) {
544
+ if (CalendarDate.fromString(date, this.format)) {
600
545
  this.vegaDatePickerValueController.setValue([
601
546
  this.vegaDatePickerFormatController.formatDate(date),
602
547
  this.vegaDatePickerValueController.getValue()[1],
@@ -618,7 +563,7 @@ class VegaDatePickerRangeInputRenderer extends VegaDatePickerInputRendererBase {
618
563
  this.onEndDateChange = (e) => {
619
564
  const currentTarget = e.currentTarget;
620
565
  const date = currentTarget.value;
621
- if (isDateStr(date)) {
566
+ if (CalendarDate.fromString(date, this.format)) {
622
567
  this.vegaDatePickerValueController.setValue([
623
568
  this.vegaDatePickerValueController.getValue()[0],
624
569
  this.vegaDatePickerFormatController.formatDate(date),
@@ -634,917 +579,222 @@ class VegaDatePickerRangeInputRenderer extends VegaDatePickerInputRendererBase {
634
579
  }
635
580
  };
636
581
  }
637
- componentWillRender() {
638
- this.oldStartDateInputRef = this.startDateInputRef;
639
- this.oldEndDateInputRef = this.endDateInputRef;
640
- }
641
582
  getStartDateInputRef() {
642
583
  return this.startDateInputRef;
643
584
  }
644
585
  getEndDateInputRef() {
645
586
  return this.endDateInputRef;
646
587
  }
647
- getOldStartDateInputRef() {
648
- return this.oldStartDateInputRef;
649
- }
650
- getOldEndDateInputRef() {
651
- return this.oldEndDateInputRef;
588
+ async onInputClicked(type) {
589
+ await this.calendarOpenStateController.showCalendar();
590
+ await this.vegaDatePickerCalendarRenderer.triggerRepick(type);
652
591
  }
653
592
  }
654
- __decorate$b([
593
+ __decorate$h([
655
594
  MapToComponentField()
656
595
  ], VegaDatePickerRangeInputRenderer.prototype, "placeholder", void 0);
657
- __decorate$b([
596
+ __decorate$h([
658
597
  MapToComponentField()
659
598
  ], VegaDatePickerRangeInputRenderer.prototype, "vegaDatePickerFormatController", void 0);
660
- __decorate$b([
599
+ __decorate$h([
661
600
  MapToComponentField()
662
601
  ], VegaDatePickerRangeInputRenderer.prototype, "vegaDatePickerRenderer", void 0);
663
- __decorate$b([
602
+ __decorate$h([
603
+ MapToComponentField()
604
+ ], VegaDatePickerRangeInputRenderer.prototype, "calendarOpenStateController", void 0);
605
+ __decorate$h([
664
606
  MapToComponentField()
665
607
  ], VegaDatePickerRangeInputRenderer.prototype, "translationSlimmer", void 0);
666
- __decorate$b([
667
- MapToComponentMethod('componentWillRender')
668
- ], VegaDatePickerRangeInputRenderer.prototype, "componentWillRender", null);
608
+ __decorate$h([
609
+ MapToComponentField()
610
+ ], VegaDatePickerRangeInputRenderer.prototype, "allowRepick", void 0);
611
+ __decorate$h([
612
+ MapToComponentField()
613
+ ], VegaDatePickerRangeInputRenderer.prototype, "format", void 0);
614
+ __decorate$h([
615
+ MapToComponentField()
616
+ ], VegaDatePickerRangeInputRenderer.prototype, "vegaDatePickerCalendarRenderer", void 0);
669
617
 
670
- var __decorate$a = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
618
+ var __decorate$g = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
671
619
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
672
620
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
673
621
  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;
674
622
  return c > 3 && r && Object.defineProperty(target, key, r), r;
675
623
  };
676
- /** The date picker calendar controller slimmer */
677
- class VegaDatePickerCalendarController extends VegaSlimmer {
678
- constructor() {
679
- super(...arguments);
680
- /**
681
- * The code below is defining a method called `handleClear` which is used to clear the selection in a
682
- * date picker component. It calls the `clearSelection` method of the `datePicker` object, sets the
683
- * default value based on the mode, and hides the date picker.
684
- */
685
- this.handleClear = () => {
686
- this.vegaDatePickerCalendarRenderer.getDatePicker().clearSelection();
687
- this.vegaDatePickerValueController.setDefaultValueByMode();
688
- this.vegaDatePickerCalendarRenderer.getDatePicker().hide();
689
- };
690
- /**
691
- * The code below is defining a private method called `shouldUpdateCalendar` in a TypeScript class.
692
- * This method takes a parameter `newValue` of type `DatePickerValueType<DatePickerModeType>`.
693
- *
694
- * @param {DatePickerValueType<DatePickerModeType>} newValue - The new value of the calendar.
695
- */
696
- this.shouldUpdateCalendar = (newValue) => {
697
- var _a, _b;
698
- const startDate = ((_a = this.vegaDatePickerCalendarRenderer.getDatePicker().getStartDate()) === null || _a === void 0 ? void 0 : _a.format(this.format)) || '';
699
- const endDate = ((_b = this.vegaDatePickerCalendarRenderer.getDatePicker().getEndDate()) === null || _b === void 0 ? void 0 : _b.format(this.format)) || '';
700
- if ((this.mode === 'single' && newValue !== startDate) ||
701
- (this.mode === 'range' &&
702
- !isArrayEqual(newValue, [startDate, endDate]))) {
703
- this.updateCalendar();
704
- }
705
- };
706
- /*
707
- * The below method is e2e-test covered in
708
- * @param date1
709
- * @param date2
710
- * @see{module:vega-date-picker-single-selected}
711
- * @see{module:vega-date-picker-range-selected}
712
- * @see{module:vega-date-picker-receive-single-value}
713
- */
714
- /**
715
- * The code below is defining an event handler function called `onDatePickerSelected`. This function
716
- * takes two parameters, `date1` and `date2`, both of type `DateTime`.
717
- *
718
- * @param {DateTime} date1 - The start date
719
- * @param {DateTime} date2 - The end date
720
- */
721
- this.onDatePickerSelected = (date1, date2) => {
722
- if (this.mode === 'range') {
723
- const startDate = date1.format(this.format);
724
- const endDate = date2.format(this.format);
725
- this.vegaDatePickerRangeInputRenderer.getStartDateInputRef().value = startDate;
726
- this.vegaDatePickerRangeInputRenderer.getEndDateInputRef().value = endDate;
727
- this.vegaDatePickerValueController.syncUpValueWithCalendar();
728
- }
729
- else {
730
- this.vegaDatePickerSingleInputRenderer.getSingleDateInputRef().value = date1.format(this.format);
731
- this.vegaDatePickerValueController.syncUpValueWithCalendar();
732
- }
733
- };
734
- /*
735
- * The below method is e2e-test covered in
736
- * @see{module:vega-date-picker-load-mobile-plugin}
737
- */
738
- /**
739
- * The code below is defining a TypeScript arrow function called `getDefaultLitePickerConfig`. This
740
- * function returns an object that represents the default configuration for a LitePicker component.
741
- *
742
- * @returns {object} - The default lite picker config is being returned.
743
- */
744
- // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
745
- this.getDefaultLitePickerConfig = () => {
746
- const defaultConfig = Object.assign(Object.assign({}, this.getModeConfig()), { splitView: false, showTooltip: false, firstDay: 0, minDate: this.minDate, maxDate: this.maxDate, allowRepick: this.allowRepick, format: this.format, plugins: [
747
- this.vegaDatePickerMobileController.getIsMobileDevice()
748
- ? /* istanbul ignore next */ 'mobilefriendly'
749
- : null,
750
- ].filter(Boolean), parentEl: this.vegaDatePickerCalendarRenderer.getCalendarContainerRef() });
751
- if (this.showYearMonthDropdowns) {
752
- const minYear = this.minDate
753
- ? new Date(this.minDate).getFullYear()
754
- : new Date().getFullYear() -
755
- VegaDatePickerCalendarController.DEFAULT_MINIMUM_DROPDOWN_YEAR_BEFORE_CURRENT_YEAR;
756
- const maxYear = this.maxDate
757
- ? new Date(this.maxDate).getFullYear()
758
- : new Date().getFullYear() +
759
- VegaDatePickerCalendarController.DEFAULT_MINIMUM_DROPDOWN_YEAR_AFTER_CURRENT_YEAR;
760
- defaultConfig['dropdowns'] = {
761
- months: true,
762
- years: true,
763
- minYear: minYear,
764
- maxYear: maxYear,
765
- };
766
- }
767
- return defaultConfig;
768
- };
769
- /**
770
- * The code below is defining a method called `getModeConfig` which returns an object with various
771
- * properties based on the value of the `mode` property.
772
- *
773
- * @returns {object} The ModeConfig is being returned.
774
- */
775
- // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
776
- this.getModeConfig = () => {
777
- return {
778
- singleMode: this.mode === 'single',
779
- numberOfMonths: this.mode === 'single' ? 1 : 2,
780
- numberOfColumns: this.mode === 'single' ? 1 : 2,
781
- startDate: this.mode === 'range'
782
- ? this.vegaDatePickerValueController.getValue()[0]
783
- : this.vegaDatePickerValueController.getValue(),
784
- endDate: this.mode === 'range' ? this.vegaDatePickerValueController.getValue()[1] : null,
785
- element: this.mode === 'range'
786
- ? this.vegaDatePickerRangeInputRenderer.getStartDateInputRef()
787
- : this.vegaDatePickerSingleInputRenderer.getSingleDateInputRef(),
788
- elementEnd: this.mode === 'range' ? this.vegaDatePickerRangeInputRenderer.getEndDateInputRef() : null,
789
- };
790
- };
624
+ class VegaDatePickerCalendarRenderer$1 extends VegaSlimmer {
625
+ componentDidLoad() {
626
+ this.appendCalendarToBodyIfMobile();
791
627
  }
792
- /*
793
- * The below method is e2e-test covered in
794
- * @see{module:vega-date-picker-change-min-max-date}
795
- */
796
- /* istanbul ignore next */
797
- /**
798
- * Update property of minDate when it is changed
799
- *
800
- * @param {string} value - The value of minDate.
801
- */
802
- watchMinDate(value) {
803
- this.minDate = value ? this.vegaDatePickerFormatController.formatDate(value) : '';
804
- this.vegaDatePickerCalendarRenderer.getDatePicker().setOptions({
805
- minDate: this.minDate ? this.minDate : null,
806
- });
807
- this.goToDate();
628
+ getCalendarContentBoxRef() {
629
+ return this.calendarContentBoxRef;
808
630
  }
809
- /*
810
- * The below method is e2e-test covered in
811
- * @see{module:vega-date-picker-change-min-max-date}
812
- */
813
- /* istanbul ignore next */
814
- /**
815
- * Update property of maxDate when it is changed
816
- *
817
- * @param {string} value - The value of maxDate.
818
- */
819
- watchMaxDate(value) {
820
- this.maxDate = value ? this.vegaDatePickerFormatController.formatDate(value) : '';
821
- this.vegaDatePickerCalendarRenderer.getDatePicker().setOptions({
822
- maxDate: this.maxDate ? this.maxDate : null,
631
+ getCalendarRef() {
632
+ return this.calendarRef;
633
+ }
634
+ getMobileModalRef() {
635
+ return this.mobileModalRef;
636
+ }
637
+ async triggerRepick(type) {
638
+ if (this.allowRepick && this.mode === 'range') {
639
+ await this.calendarRef.triggerRepick(type);
640
+ }
641
+ }
642
+ render() {
643
+ return this.isMobileDevice ? this.mobileRender() : this.renderCalendar();
644
+ }
645
+ mobileRender() {
646
+ return (h("vega-modal", { showCloseButton: false, size: VegaDatePickerCalendarRenderer$1.calendarModalSize, padding: "0", isVerticallyCentered: true, backdropColor: "semi", ref: (ref) => {
647
+ this.mobileModalRef = ref;
648
+ this.addModalObserver(ref);
649
+ } }, h("div", { slot: "modal-content" }, this.renderCalendar())));
650
+ }
651
+ renderCalendar() {
652
+ return (h("vega-box", { padding: {
653
+ default: 'size-12',
654
+ S: 'size-32',
655
+ }, corners: "rounded-12", backgroundColor: "bg-primary", shadow: "shadow-dropdown-menu", border: "border-input-field", ref: (ref) => {
656
+ this.calendarContentBoxRef = ref;
657
+ }, class: "date-picker-content-box" },
658
+ h("vega-box", { width: this.getDefaultCalendarDimension('width'), height: this.getDefaultCalendarDimension('height') },
659
+ h("vega-date-picker-calendar", { selection: this.value, mode: this.mode, minDate: this.minDate, maxDate: this.maxDate, clearButton: this.clearButton, format: this.format, staticHeight: this.dropdownConfig.staticHeight !== false, showYearMonthDropdowns: this.showYearMonthDropdowns, timezone: this.timezone, yearMonthDropdownProps: {
660
+ isScreenPosition: FeatureFlag.isEnabled('VEGA_DATE_PICKER.ENABLE_CALCULATION_POSITION_BY_SCREEN'),
661
+ }, ref: (ref) => {
662
+ this.calendarRef = ref;
663
+ this.addCalendarObserver(ref);
664
+ },
665
+ /* eslint-disable-next-line react/jsx-no-bind */
666
+ isDateDisabled: (date) => this.isDateDisabled(date) }))));
667
+ }
668
+ addCalendarObserver(calendarRef) {
669
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(calendarRef, VegaSelectionChange, async (payload) => {
670
+ await this.onCalendarSelected(payload.detail);
671
+ });
672
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(calendarRef, VegaClear, async () => {
673
+ await this.calendarOpenStateController.hideCalendar();
674
+ });
675
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(calendarRef, VegaMonthYearChange, async (payload) => {
676
+ this.monthYearChangeEventEmitter.emit(payload.detail);
823
677
  });
824
- this.goToDate();
825
678
  }
826
- /**
827
- * Go to date view when value changed
828
- */
829
- watchValue() {
830
- this.goToDate();
679
+ addModalObserver(modalRef) {
680
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(modalRef, VegaOpen, () => {
681
+ this.calendarOpenStateController.updateIsCalendarShowState(true);
682
+ });
683
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(modalRef, VegaClose, () => {
684
+ this.calendarOpenStateController.updateIsCalendarShowState(false);
685
+ });
831
686
  }
832
- /**
833
- * Calendar go to the expected date follow below rules:
834
- * - Go to the value date month if the value is set.
835
- * - Go to the minDate month if only set the minDate and today is before than minDate.
836
- * - Go to the minDate month if minDate and maxDate are both set and today is after than maxDate.
837
- * - Go to the maxDate month if only set maxDate and today is after than maxDate.
838
- * - Go to today month if the value, minDate and maxDate all are empty.
839
- */
840
- goToDate() {
841
- const date = this.mode === 'range'
842
- ? this.vegaDatePickerValueController.getValue()[0]
843
- : this.vegaDatePickerValueController.getValue();
844
- const datePickerCalendar = this.vegaDatePickerCalendarRenderer.getDatePicker();
845
- const today = new Date();
846
- if (date) {
847
- datePickerCalendar.gotoDate(date, 0);
687
+ async onCalendarSelected(value) {
688
+ if (this.mode === 'single') {
689
+ this.vegaDatePickerValueController.setValue(value);
848
690
  }
849
- else if (this.minDate &&
850
- (compareIsBefore(today, new Date(this.minDate)) ||
851
- (this.maxDate && compareIsAfter(today, new Date(this.maxDate))))) {
852
- datePickerCalendar.gotoDate(this.minDate, 0);
691
+ else if (this.mode === 'range') {
692
+ this.vegaDatePickerValueController.setValue(value);
853
693
  }
854
- else if (this.maxDate && compareIsAfter(today, new Date(this.maxDate))) {
855
- datePickerCalendar.gotoDate(this.maxDate, 0);
694
+ if (this.isCalendarShow) {
695
+ await this.calendarOpenStateController.hideCalendar();
856
696
  }
857
- else {
858
- datePickerCalendar.gotoDate(today, 0);
697
+ }
698
+ appendCalendarToBodyIfMobile() {
699
+ const document = tryGetDocument();
700
+ if (this.isMobileDevice && document) {
701
+ document.body.append(this.mobileModalRef);
859
702
  }
860
703
  }
861
- /*
862
- * The below method is e2e-test covered in
863
- * @see{module:vega-date-picker-start-end-date-change}
864
- * @see{module:vega-date-picker-single-date-change}
865
- */
866
- /* istanbul ignore next */
867
- /**
868
- * The function "updateCalendar" updates the date range in a calendar based on the selected mode
869
- * (single or range) and the values of the start and end dates.
870
- *
871
- * @returns {void} The function does not have a return statement, so it does not return anything.
872
- */
873
- updateCalendar() {
874
- if (!this.vegaDatePickerCalendarRenderer.getDatePicker())
875
- return;
876
- if (this.mode === 'single') {
877
- const singleDate = this.vegaDatePickerValueController.getValue();
878
- if (singleDate) {
879
- this.vegaDatePickerCalendarRenderer
880
- .getDatePicker()
881
- .setDate(this.vegaDatePickerValueController.getValue());
882
- }
883
- else {
884
- this.vegaDatePickerCalendarRenderer.getDatePicker().clearSelection();
885
- }
704
+ getDefaultCalendarDimension(type) {
705
+ const dimensions = this.mode === 'range' && !this.isMobileDevice
706
+ ? VegaDatePickerCalendarRenderer$1.regularDatePickerCalendarDimensionsForRange
707
+ : VegaDatePickerCalendarRenderer$1.regularDatePickerCalendarDimensionsForSingle;
708
+ // Height can be dynamic
709
+ if (type === 'height' && this.dropdownConfig.staticHeight === false) {
710
+ return 'auto';
886
711
  }
887
- if (this.mode === 'range') {
888
- const startDate = this.vegaDatePickerValueController.getValue()[0];
889
- const endDate = this.vegaDatePickerValueController.getValue()[1];
890
- if (startDate && endDate) {
891
- this.vegaDatePickerCalendarRenderer.getDatePicker().setDateRange(startDate, endDate);
892
- }
893
- else {
894
- // Should only call clearSelection when startDate and endDate are both empty
895
- if (startDate === '' && endDate === '') {
896
- this.vegaDatePickerCalendarRenderer.getDatePicker().clearSelection();
897
- }
898
- }
712
+ let value = dimensions[type];
713
+ // Extra space for footer when height is static
714
+ if (type === 'height' && this.clearButton) {
715
+ value += 40; // 24px footer + 16px margin
899
716
  }
717
+ return `${value}px`;
900
718
  }
901
719
  }
902
- VegaDatePickerCalendarController.DEFAULT_MINIMUM_DROPDOWN_YEAR_BEFORE_CURRENT_YEAR = 10;
903
- VegaDatePickerCalendarController.DEFAULT_MINIMUM_DROPDOWN_YEAR_AFTER_CURRENT_YEAR = 10;
904
- __decorate$a([
905
- MapToComponentField({ writable: true })
906
- ], VegaDatePickerCalendarController.prototype, "minDate", void 0);
907
- __decorate$a([
908
- MapToComponentField({ writable: true })
909
- ], VegaDatePickerCalendarController.prototype, "maxDate", void 0);
910
- __decorate$a([
720
+ VegaDatePickerCalendarRenderer$1.calendarModalSize = 344;
721
+ VegaDatePickerCalendarRenderer$1.regularDatePickerCalendarDimensionsForSingle = {
722
+ width: 280,
723
+ height: 320,
724
+ };
725
+ VegaDatePickerCalendarRenderer$1.regularDatePickerCalendarDimensionsForRange = {
726
+ width: 608,
727
+ height: 358,
728
+ };
729
+ __decorate$g([
911
730
  MapToComponentField()
912
- ], VegaDatePickerCalendarController.prototype, "allowRepick", void 0);
913
- __decorate$a([
731
+ ], VegaDatePickerCalendarRenderer$1.prototype, "format", void 0);
732
+ __decorate$g([
914
733
  MapToComponentField()
915
- ], VegaDatePickerCalendarController.prototype, "format", void 0);
916
- __decorate$a([
734
+ ], VegaDatePickerCalendarRenderer$1.prototype, "value", void 0);
735
+ __decorate$g([
917
736
  MapToComponentField()
918
- ], VegaDatePickerCalendarController.prototype, "mode", void 0);
919
- __decorate$a([
737
+ ], VegaDatePickerCalendarRenderer$1.prototype, "mode", void 0);
738
+ __decorate$g([
920
739
  MapToComponentField()
921
- ], VegaDatePickerCalendarController.prototype, "showYearMonthDropdowns", void 0);
922
- __decorate$a([
740
+ ], VegaDatePickerCalendarRenderer$1.prototype, "minDate", void 0);
741
+ __decorate$g([
923
742
  MapToComponentField()
924
- ], VegaDatePickerCalendarController.prototype, "vegaDatePickerMobileController", void 0);
925
- __decorate$a([
743
+ ], VegaDatePickerCalendarRenderer$1.prototype, "maxDate", void 0);
744
+ __decorate$g([
926
745
  MapToComponentField()
927
- ], VegaDatePickerCalendarController.prototype, "vegaDatePickerValueController", void 0);
928
- __decorate$a([
746
+ ], VegaDatePickerCalendarRenderer$1.prototype, "clearButton", void 0);
747
+ __decorate$g([
929
748
  MapToComponentField()
930
- ], VegaDatePickerCalendarController.prototype, "vegaDatePickerFormatController", void 0);
931
- __decorate$a([
749
+ ], VegaDatePickerCalendarRenderer$1.prototype, "dropdownConfig", void 0);
750
+ __decorate$g([
932
751
  MapToComponentField()
933
- ], VegaDatePickerCalendarController.prototype, "vegaDatePickerSingleInputRenderer", void 0);
934
- __decorate$a([
752
+ ], VegaDatePickerCalendarRenderer$1.prototype, "showYearMonthDropdowns", void 0);
753
+ __decorate$g([
935
754
  MapToComponentField()
936
- ], VegaDatePickerCalendarController.prototype, "vegaDatePickerRangeInputRenderer", void 0);
937
- __decorate$a([
755
+ ], VegaDatePickerCalendarRenderer$1.prototype, "timezone", void 0);
756
+ __decorate$g([
938
757
  MapToComponentField()
939
- ], VegaDatePickerCalendarController.prototype, "vegaDatePickerCalendarRenderer", void 0);
940
- __decorate$a([
941
- MapToComponentMethod('watchMinDate')
942
- ], VegaDatePickerCalendarController.prototype, "watchMinDate", null);
943
- __decorate$a([
944
- MapToComponentMethod('watchMaxDate')
945
- ], VegaDatePickerCalendarController.prototype, "watchMaxDate", null);
946
- __decorate$a([
947
- MapToComponentMethod('watchValue')
948
- ], VegaDatePickerCalendarController.prototype, "watchValue", null);
949
-
950
- var litepicker_umd = createCommonjsModule(function (module, exports) {
951
- /*!
952
- *
953
- * litepicker.umd.js
954
- * Litepicker v2.0.12 (https://github.com/wakirin/Litepicker)
955
- * Package: litepicker (https://www.npmjs.com/package/litepicker)
956
- * License: MIT (https://github.com/wakirin/Litepicker/blob/master/LICENCE.md)
957
- * Copyright 2019-2021 Rinat G.
958
- *
959
- * Hash: f46190e781537007f2f2
960
- *
961
- */
962
- !function(t,e){module.exports=e();}(window,(function(){return function(t){var e={};function n(i){if(e[i])return e[i].exports;var o=e[i]={i:i,l:!1,exports:{}};return t[i].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,i){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i});},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0});},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(i,o,function(e){return t[e]}.bind(null,o));return i},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=4)}([function(t,e,n){Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(e,n,i){void 0===e&&(e=null),void 0===n&&(n=null),void 0===i&&(i="en-US"),this.dateInstance="object"==typeof n&&null!==n?n.parse(e instanceof t?e.clone().toJSDate():e):"string"==typeof n?t.parseDateTime(e,n,i):e?t.parseDateTime(e):t.parseDateTime(new Date),this.lang=i;}return t.parseDateTime=function(e,n,i){if(void 0===n&&(n="YYYY-MM-DD"),void 0===i&&(i="en-US"),!e)return new Date(NaN);if(e instanceof Date)return new Date(e);if(e instanceof t)return e.clone().toJSDate();if(/^-?\d{10,}$/.test(e))return t.getDateZeroTime(new Date(Number(e)));if("string"==typeof e){for(var o=[],s=null;null!=(s=t.regex.exec(n));)"\\"!==s[1]&&o.push(s);if(o.length){var r={year:null,month:null,shortMonth:null,longMonth:null,day:null,value:""};o[0].index>0&&(r.value+=".*?");for(var a=0,h=Object.entries(o);a<h.length;a++){var l=h[a],p=l[0],c=l[1],d=Number(p),u=t.formatPatterns(c[0],i),m=u.group,f=u.pattern;r[m]=d+1,r.value+=f,r.value+=".*?";}var g=new RegExp("^"+r.value+"$");if(g.test(e)){var y=g.exec(e),v=Number(y[r.year]),D=null;r.month?D=Number(y[r.month])-1:r.shortMonth?D=t.shortMonths(i).indexOf(y[r.shortMonth]):r.longMonth&&(D=t.longMonths(i).indexOf(y[r.longMonth]));var w=Number(y[r.day])||1;return new Date(v,D,w,0,0,0,0)}}}return t.getDateZeroTime(new Date(e))},t.convertArray=function(e,n){return e.map((function(e){return e instanceof Array?e.map((function(e){return new t(e,n)})):new t(e,n)}))},t.getDateZeroTime=function(t){return new Date(t.getFullYear(),t.getMonth(),t.getDate(),0,0,0,0)},t.shortMonths=function(e){return t.MONTH_JS.map((function(t){return new Date(2019,t).toLocaleString(e,{month:"short"})}))},t.longMonths=function(e){return t.MONTH_JS.map((function(t){return new Date(2019,t).toLocaleString(e,{month:"long"})}))},t.formatPatterns=function(e,n){switch(e){case"YY":case"YYYY":return {group:"year",pattern:"(\\d{"+e.length+"})"};case"M":return {group:"month",pattern:"(\\d{1,2})"};case"MM":return {group:"month",pattern:"(\\d{2})"};case"MMM":return {group:"shortMonth",pattern:"("+t.shortMonths(n).join("|")+")"};case"MMMM":return {group:"longMonth",pattern:"("+t.longMonths(n).join("|")+")"};case"D":return {group:"day",pattern:"(\\d{1,2})"};case"DD":return {group:"day",pattern:"(\\d{2})"}}},t.prototype.toJSDate=function(){return this.dateInstance},t.prototype.toLocaleString=function(t,e){return this.dateInstance.toLocaleString(t,e)},t.prototype.toDateString=function(){return this.dateInstance.toDateString()},t.prototype.getSeconds=function(){return this.dateInstance.getSeconds()},t.prototype.getDay=function(){return this.dateInstance.getDay()},t.prototype.getTime=function(){return this.dateInstance.getTime()},t.prototype.getDate=function(){return this.dateInstance.getDate()},t.prototype.getMonth=function(){return this.dateInstance.getMonth()},t.prototype.getFullYear=function(){return this.dateInstance.getFullYear()},t.prototype.setMonth=function(t){return this.dateInstance.setMonth(t)},t.prototype.setHours=function(t,e,n,i){void 0===t&&(t=0),void 0===e&&(e=0),void 0===n&&(n=0),void 0===i&&(i=0),this.dateInstance.setHours(t,e,n,i);},t.prototype.setSeconds=function(t){return this.dateInstance.setSeconds(t)},t.prototype.setDate=function(t){return this.dateInstance.setDate(t)},t.prototype.setFullYear=function(t){return this.dateInstance.setFullYear(t)},t.prototype.getWeek=function(t){var e=new Date(this.timestamp()),n=(this.getDay()+(7-t))%7;e.setDate(e.getDate()-n);var i=e.getTime();return e.setMonth(0,1),e.getDay()!==t&&e.setMonth(0,1+(4-e.getDay()+7)%7),1+Math.ceil((i-e.getTime())/6048e5)},t.prototype.clone=function(){return new t(this.toJSDate())},t.prototype.isBetween=function(t,e,n){switch(void 0===n&&(n="()"),n){default:case"()":return this.timestamp()>t.getTime()&&this.timestamp()<e.getTime();case"[)":return this.timestamp()>=t.getTime()&&this.timestamp()<e.getTime();case"(]":return this.timestamp()>t.getTime()&&this.timestamp()<=e.getTime();case"[]":return this.timestamp()>=t.getTime()&&this.timestamp()<=e.getTime()}},t.prototype.isBefore=function(t,e){switch(void 0===e&&(e="seconds"),e){case"second":case"seconds":return t.getTime()>this.getTime();case"day":case"days":return new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime()>new Date(this.getFullYear(),this.getMonth(),this.getDate()).getTime();case"month":case"months":return new Date(t.getFullYear(),t.getMonth(),1).getTime()>new Date(this.getFullYear(),this.getMonth(),1).getTime();case"year":case"years":return t.getFullYear()>this.getFullYear()}throw new Error("isBefore: Invalid unit!")},t.prototype.isSameOrBefore=function(t,e){switch(void 0===e&&(e="seconds"),e){case"second":case"seconds":return t.getTime()>=this.getTime();case"day":case"days":return new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime()>=new Date(this.getFullYear(),this.getMonth(),this.getDate()).getTime();case"month":case"months":return new Date(t.getFullYear(),t.getMonth(),1).getTime()>=new Date(this.getFullYear(),this.getMonth(),1).getTime()}throw new Error("isSameOrBefore: Invalid unit!")},t.prototype.isAfter=function(t,e){switch(void 0===e&&(e="seconds"),e){case"second":case"seconds":return this.getTime()>t.getTime();case"day":case"days":return new Date(this.getFullYear(),this.getMonth(),this.getDate()).getTime()>new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime();case"month":case"months":return new Date(this.getFullYear(),this.getMonth(),1).getTime()>new Date(t.getFullYear(),t.getMonth(),1).getTime();case"year":case"years":return this.getFullYear()>t.getFullYear()}throw new Error("isAfter: Invalid unit!")},t.prototype.isSameOrAfter=function(t,e){switch(void 0===e&&(e="seconds"),e){case"second":case"seconds":return this.getTime()>=t.getTime();case"day":case"days":return new Date(this.getFullYear(),this.getMonth(),this.getDate()).getTime()>=new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime();case"month":case"months":return new Date(this.getFullYear(),this.getMonth(),1).getTime()>=new Date(t.getFullYear(),t.getMonth(),1).getTime()}throw new Error("isSameOrAfter: Invalid unit!")},t.prototype.isSame=function(t,e){switch(void 0===e&&(e="seconds"),e){case"second":case"seconds":return this.getTime()===t.getTime();case"day":case"days":return new Date(this.getFullYear(),this.getMonth(),this.getDate()).getTime()===new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime();case"month":case"months":return new Date(this.getFullYear(),this.getMonth(),1).getTime()===new Date(t.getFullYear(),t.getMonth(),1).getTime()}throw new Error("isSame: Invalid unit!")},t.prototype.add=function(t,e){switch(void 0===e&&(e="seconds"),e){case"second":case"seconds":this.setSeconds(this.getSeconds()+t);break;case"day":case"days":this.setDate(this.getDate()+t);break;case"month":case"months":this.setMonth(this.getMonth()+t);}return this},t.prototype.subtract=function(t,e){switch(void 0===e&&(e="seconds"),e){case"second":case"seconds":this.setSeconds(this.getSeconds()-t);break;case"day":case"days":this.setDate(this.getDate()-t);break;case"month":case"months":this.setMonth(this.getMonth()-t);}return this},t.prototype.diff=function(t,e){void 0===e&&(e="seconds");switch(e){default:case"second":case"seconds":return this.getTime()-t.getTime();case"day":case"days":return Math.round((this.timestamp()-t.getTime())/864e5);case"month":case"months":}},t.prototype.format=function(e,n){if(void 0===n&&(n="en-US"),"object"==typeof e)return e.output(this.clone().toJSDate());for(var i="",o=[],s=null;null!=(s=t.regex.exec(e));)"\\"!==s[1]&&o.push(s);if(o.length){o[0].index>0&&(i+=e.substring(0,o[0].index));for(var r=0,a=Object.entries(o);r<a.length;r++){var h=a[r],l=h[0],p=h[1],c=Number(l);i+=this.formatTokens(p[0],n),o[c+1]&&(i+=e.substring(p.index+p[0].length,o[c+1].index)),c===o.length-1&&(i+=e.substring(p.index+p[0].length));}}return i.replace(/\\/g,"")},t.prototype.timestamp=function(){return new Date(this.getFullYear(),this.getMonth(),this.getDate(),0,0,0,0).getTime()},t.prototype.formatTokens=function(e,n){switch(e){case"YY":return String(this.getFullYear()).slice(-2);case"YYYY":return String(this.getFullYear());case"M":return String(this.getMonth()+1);case"MM":return ("0"+(this.getMonth()+1)).slice(-2);case"MMM":return t.shortMonths(n)[this.getMonth()];case"MMMM":return t.longMonths(n)[this.getMonth()];case"D":return String(this.getDate());case"DD":return ("0"+this.getDate()).slice(-2);default:return ""}},t.regex=/(\\)?(Y{2,4}|M{1,4}|D{1,2}|d{1,4})/g,t.MONTH_JS=[0,1,2,3,4,5,6,7,8,9,10,11],t}();e.DateTime=i;},function(t,e,n){var i,o=this&&this.__extends||(i=function(t,e){return (i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e;}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);})(t,e)},function(t,e){function n(){this.constructor=t;}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n);}),s=this&&this.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),o=0;for(e=0;e<n;e++)for(var s=arguments[e],r=0,a=s.length;r<a;r++,o++)i[o]=s[r];return i};Object.defineProperty(e,"__esModule",{value:!0});var r=n(5),a=n(0),h=n(3),l=n(2),p=function(t){function e(e){var n=t.call(this,e)||this;return n.preventClick=!1,n.bindEvents(),n}return o(e,t),e.prototype.scrollToDate=function(t){if(this.options.scrollToDate){var e=this.options.startDate instanceof a.DateTime?this.options.startDate.clone():null,n=this.options.endDate instanceof a.DateTime?this.options.endDate.clone():null;!this.options.startDate||t&&t!==this.options.element?t&&this.options.endDate&&t===this.options.elementEnd&&(n.setDate(1),this.options.numberOfMonths>1&&n.isAfter(e)&&n.setMonth(n.getMonth()-(this.options.numberOfMonths-1)),this.calendars[0]=n.clone()):(e.setDate(1),this.calendars[0]=e.clone());}},e.prototype.bindEvents=function(){document.addEventListener("click",this.onClick.bind(this),!0),this.ui=document.createElement("div"),this.ui.className=h.litepicker,this.ui.style.display="none",this.ui.addEventListener("mouseenter",this.onMouseEnter.bind(this),!0),this.ui.addEventListener("mouseleave",this.onMouseLeave.bind(this),!1),this.options.autoRefresh?(this.options.element instanceof HTMLElement&&this.options.element.addEventListener("keyup",this.onInput.bind(this),!0),this.options.elementEnd instanceof HTMLElement&&this.options.elementEnd.addEventListener("keyup",this.onInput.bind(this),!0)):(this.options.element instanceof HTMLElement&&this.options.element.addEventListener("change",this.onInput.bind(this),!0),this.options.elementEnd instanceof HTMLElement&&this.options.elementEnd.addEventListener("change",this.onInput.bind(this),!0)),this.options.parentEl?this.options.parentEl instanceof HTMLElement?this.options.parentEl.appendChild(this.ui):document.querySelector(this.options.parentEl).appendChild(this.ui):this.options.inlineMode?this.options.element instanceof HTMLInputElement?this.options.element.parentNode.appendChild(this.ui):this.options.element.appendChild(this.ui):document.body.appendChild(this.ui),this.updateInput(),this.init(),"function"==typeof this.options.setup&&this.options.setup.call(this,this),this.render(),this.options.inlineMode&&this.show();},e.prototype.updateInput=function(){if(this.options.element instanceof HTMLInputElement){var t=this.options.startDate,e=this.options.endDate;if(this.options.singleMode&&t)this.options.element.value=t.format(this.options.format,this.options.lang);else if(!this.options.singleMode&&t&&e){var n=t.format(this.options.format,this.options.lang),i=e.format(this.options.format,this.options.lang);this.options.elementEnd instanceof HTMLInputElement?(this.options.element.value=n,this.options.elementEnd.value=i):this.options.element.value=""+n+this.options.delimiter+i;}t||e||(this.options.element.value="",this.options.elementEnd instanceof HTMLInputElement&&(this.options.elementEnd.value=""));}},e.prototype.isSamePicker=function(t){return t.closest("."+h.litepicker)===this.ui},e.prototype.shouldShown=function(t){return !t.disabled&&(t===this.options.element||this.options.elementEnd&&t===this.options.elementEnd)},e.prototype.shouldResetDatePicked=function(){return this.options.singleMode||2===this.datePicked.length},e.prototype.shouldSwapDatePicked=function(){return 2===this.datePicked.length&&this.datePicked[0].getTime()>this.datePicked[1].getTime()},e.prototype.shouldCheckLockDays=function(){return this.options.disallowLockDaysInRange&&2===this.datePicked.length},e.prototype.onClick=function(t){var e=t.target;if(t.target.shadowRoot&&(e=t.composedPath()[0]),e&&this.ui)if(this.shouldShown(e))this.show(e);else if(e.closest("."+h.litepicker)||!this.isShowning()){if(this.isSamePicker(e))if(this.emit("before:click",e),this.preventClick)this.preventClick=!1;else {if(e.classList.contains(h.dayItem)){if(t.preventDefault(),e.classList.contains(h.isLocked))return;if(this.shouldResetDatePicked()&&(this.datePicked.length=0),this.datePicked[this.datePicked.length]=new a.DateTime(e.dataset.time),this.shouldSwapDatePicked()){var n=this.datePicked[1].clone();this.datePicked[1]=this.datePicked[0].clone(),this.datePicked[0]=n.clone();}if(this.shouldCheckLockDays())l.rangeIsLocked(this.datePicked,this.options)&&(this.emit("error:range",this.datePicked),this.datePicked.length=0);return this.render(),this.emit.apply(this,s(["preselect"],s(this.datePicked).map((function(t){return t.clone()})))),void(this.options.autoApply&&(this.options.singleMode&&this.datePicked.length?(this.setDate(this.datePicked[0]),this.hide()):this.options.singleMode||2!==this.datePicked.length||(this.setDateRange(this.datePicked[0],this.datePicked[1]),this.hide())))}if(e.classList.contains(h.buttonPreviousMonth)){t.preventDefault();var i=0,o=this.options.switchingMonths||this.options.numberOfMonths;if(this.options.splitView){var r=e.closest("."+h.monthItem);i=l.findNestedMonthItem(r),o=1;}return this.calendars[i].setMonth(this.calendars[i].getMonth()-o),this.gotoDate(this.calendars[i],i),void this.emit("change:month",this.calendars[i],i)}if(e.classList.contains(h.buttonNextMonth)){t.preventDefault();i=0,o=this.options.switchingMonths||this.options.numberOfMonths;if(this.options.splitView){r=e.closest("."+h.monthItem);i=l.findNestedMonthItem(r),o=1;}return this.calendars[i].setMonth(this.calendars[i].getMonth()+o),this.gotoDate(this.calendars[i],i),void this.emit("change:month",this.calendars[i],i)}e.classList.contains(h.buttonCancel)&&(t.preventDefault(),this.hide(),this.emit("button:cancel")),e.classList.contains(h.buttonApply)&&(t.preventDefault(),this.options.singleMode&&this.datePicked.length?this.setDate(this.datePicked[0]):this.options.singleMode||2!==this.datePicked.length||this.setDateRange(this.datePicked[0],this.datePicked[1]),this.hide(),this.emit("button:apply",this.options.startDate,this.options.endDate));}}else this.hide();},e.prototype.showTooltip=function(t,e){var n=this.ui.querySelector("."+h.containerTooltip);n.style.visibility="visible",n.innerHTML=e;var i=this.ui.getBoundingClientRect(),o=n.getBoundingClientRect(),s=t.getBoundingClientRect(),r=s.top,a=s.left;if(this.options.inlineMode&&this.options.parentEl){var l=this.ui.parentNode.getBoundingClientRect();r-=l.top,a-=l.left;}else r-=i.top,a-=i.left;r-=o.height,a-=o.width/2,a+=s.width/2,n.style.top=r+"px",n.style.left=a+"px",this.emit("tooltip",n,t);},e.prototype.hideTooltip=function(){this.ui.querySelector("."+h.containerTooltip).style.visibility="hidden";},e.prototype.shouldAllowMouseEnter=function(t){return !this.options.singleMode&&!t.classList.contains(h.isLocked)},e.prototype.shouldAllowRepick=function(){return this.options.elementEnd&&this.options.allowRepick&&this.options.startDate&&this.options.endDate},e.prototype.isDayItem=function(t){return t.classList.contains(h.dayItem)},e.prototype.onMouseEnter=function(t){var e=this,n=t.target;if(this.isDayItem(n)&&this.shouldAllowMouseEnter(n)){if(this.shouldAllowRepick()&&(this.triggerElement===this.options.element?this.datePicked[0]=this.options.endDate.clone():this.triggerElement===this.options.elementEnd&&(this.datePicked[0]=this.options.startDate.clone())),1!==this.datePicked.length)return;var i=this.ui.querySelector("."+h.dayItem+'[data-time="'+this.datePicked[0].getTime()+'"]'),o=this.datePicked[0].clone(),s=new a.DateTime(n.dataset.time),r=!1;if(o.getTime()>s.getTime()){var l=o.clone();o=s.clone(),s=l.clone(),r=!0;}if(Array.prototype.slice.call(this.ui.querySelectorAll("."+h.dayItem)).forEach((function(t){var n=new a.DateTime(t.dataset.time),i=e.renderDay(n);n.isBetween(o,s)&&i.classList.add(h.isInRange),t.className=i.className;})),n.classList.add(h.isEndDate),r?(i&&i.classList.add(h.isFlipped),n.classList.add(h.isFlipped)):(i&&i.classList.remove(h.isFlipped),n.classList.remove(h.isFlipped)),this.options.showTooltip){var p=s.diff(o,"day")+1;if("function"==typeof this.options.tooltipNumber&&(p=this.options.tooltipNumber.call(this,p)),p>0){var c=this.pluralSelector(p),d=p+" "+(this.options.tooltipText[c]?this.options.tooltipText[c]:"["+c+"]");this.showTooltip(n,d);var u=window.navigator.userAgent,m=/(iphone|ipad)/i.test(u),f=/OS 1([0-2])/i.test(u);m&&f&&n.dispatchEvent(new Event("click"));}else this.hideTooltip();}}},e.prototype.onMouseLeave=function(t){this.options.allowRepick&&(!this.options.allowRepick||this.options.startDate||this.options.endDate)&&(this.datePicked.length=0,this.render());},e.prototype.onInput=function(t){var e=this.parseInput(),n=e[0],i=e[1],o=this.options.format;if(this.options.elementEnd?n instanceof a.DateTime&&i instanceof a.DateTime&&n.format(o)===this.options.element.value&&i.format(o)===this.options.elementEnd.value:this.options.singleMode?n instanceof a.DateTime&&n.format(o)===this.options.element.value:n instanceof a.DateTime&&i instanceof a.DateTime&&""+n.format(o)+this.options.delimiter+i.format(o)===this.options.element.value){if(i&&n.getTime()>i.getTime()){var s=n.clone();n=i.clone(),i=s.clone();}this.options.startDate=new a.DateTime(n,this.options.format,this.options.lang),i&&(this.options.endDate=new a.DateTime(i,this.options.format,this.options.lang)),this.updateInput(),this.render();var r=n.clone(),h=0;(this.options.elementEnd?n.format(o)===t.target.value:t.target.value.startsWith(n.format(o)))||(r=i.clone(),h=this.options.numberOfMonths-1),this.emit("selected",this.getStartDate(),this.getEndDate()),this.gotoDate(r,h);}},e}(r.Calendar);e.Litepicker=p;},function(t,e,n){Object.defineProperty(e,"__esModule",{value:!0}),e.findNestedMonthItem=function(t){for(var e=t.parentNode.childNodes,n=0;n<e.length;n+=1){if(e.item(n)===t)return n}return 0},e.dateIsLocked=function(t,e,n){var i=!1;return e.lockDays.length&&(i=e.lockDays.filter((function(n){return n instanceof Array?t.isBetween(n[0],n[1],e.lockDaysInclusivity):n.isSame(t,"day")})).length),i||"function"!=typeof e.lockDaysFilter||(i=e.lockDaysFilter.call(this,t.clone(),null,n)),i},e.rangeIsLocked=function(t,e){var n=!1;return e.lockDays.length&&(n=e.lockDays.filter((function(n){if(n instanceof Array){var i=t[0].toDateString()===n[0].toDateString()&&t[1].toDateString()===n[1].toDateString();return n[0].isBetween(t[0],t[1],e.lockDaysInclusivity)||n[1].isBetween(t[0],t[1],e.lockDaysInclusivity)||i}return n.isBetween(t[0],t[1],e.lockDaysInclusivity)})).length),n||"function"!=typeof e.lockDaysFilter||(n=e.lockDaysFilter.call(this,t[0].clone(),t[1].clone(),t)),n};},function(t,e,n){t.exports={showWeekNumbers:"show-week-numbers",litepicker:"litepicker",containerMain:"container__main",containerMonths:"container__months",columns2:"columns-2",columns3:"columns-3",columns4:"columns-4",splitView:"split-view",monthItemHeader:"month-item-header",buttonPreviousMonth:"button-previous-month",buttonNextMonth:"button-next-month",monthItem:"month-item",monthItemName:"month-item-name",monthItemYear:"month-item-year",resetButton:"reset-button",monthItemWeekdaysRow:"month-item-weekdays-row",noPreviousMonth:"no-previous-month",noNextMonth:"no-next-month",containerDays:"container__days",dayItem:"day-item",isToday:"is-today",isLocked:"is-locked",isInRange:"is-in-range",isStartDate:"is-start-date",isFlipped:"is-flipped",isEndDate:"is-end-date",isHighlighted:"is-highlighted",weekNumber:"week-number",containerFooter:"container__footer",previewDateRange:"preview-date-range",buttonCancel:"button-cancel",buttonApply:"button-apply",containerTooltip:"container__tooltip"};},function(t,e,n){Object.defineProperty(e,"__esModule",{value:!0});var i=n(1);e.Litepicker=i.Litepicker,n(8),window.Litepicker=i.Litepicker,e.default=i.Litepicker;},function(t,e,n){var i,o=this&&this.__extends||(i=function(t,e){return (i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e;}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);})(t,e)},function(t,e){function n(){this.constructor=t;}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n);});Object.defineProperty(e,"__esModule",{value:!0});var s=n(6),r=n(0),a=n(3),h=n(2),l=function(t){function e(e){return t.call(this,e)||this}return o(e,t),e.prototype.render=function(){var t=this;this.emit("before:render",this.ui);var e=document.createElement("div");e.className=a.containerMain;var n=document.createElement("div");n.className=a.containerMonths,a["columns"+this.options.numberOfColumns]&&(n.classList.remove(a.columns2,a.columns3,a.columns4),n.classList.add(a["columns"+this.options.numberOfColumns])),this.options.splitView&&n.classList.add(a.splitView),this.options.showWeekNumbers&&n.classList.add(a.showWeekNumbers);for(var i=this.calendars[0].clone(),o=i.getMonth(),s=i.getMonth()+this.options.numberOfMonths,r=0,h=o;h<s;h+=1){var l=i.clone();l.setDate(1),l.setHours(0,0,0,0),this.options.splitView?l=this.calendars[r].clone():l.setMonth(h),n.appendChild(this.renderMonth(l,r)),r+=1;}if(this.ui.innerHTML="",e.appendChild(n),this.options.resetButton){var p=void 0;"function"==typeof this.options.resetButton?p=this.options.resetButton.call(this):((p=document.createElement("button")).type="button",p.className=a.resetButton,p.innerHTML=this.options.buttonText.reset),p.addEventListener("click",(function(e){e.preventDefault(),t.clearSelection();})),e.querySelector("."+a.monthItem+":last-child").querySelector("."+a.monthItemHeader).appendChild(p);}this.ui.appendChild(e),this.options.autoApply&&!this.options.footerHTML||this.ui.appendChild(this.renderFooter()),this.options.showTooltip&&this.ui.appendChild(this.renderTooltip()),this.ui.dataset.plugins=(this.options.plugins||[]).join("|"),this.emit("render",this.ui);},e.prototype.renderMonth=function(t,e){var n=this,i=t.clone(),o=32-new Date(i.getFullYear(),i.getMonth(),32).getDate(),s=document.createElement("div");s.className=a.monthItem;var l=document.createElement("div");l.className=a.monthItemHeader;var p=document.createElement("div");if(this.options.dropdowns.months){var c=document.createElement("select");c.className=a.monthItemName;for(var d=0;d<12;d+=1){var u=document.createElement("option"),m=new r.DateTime(new Date(t.getFullYear(),d,2,0,0,0)),f=new r.DateTime(new Date(t.getFullYear(),d,1,0,0,0));u.value=String(d),u.text=m.toLocaleString(this.options.lang,{month:"long"}),u.disabled=this.options.minDate&&f.isBefore(new r.DateTime(this.options.minDate),"month")||this.options.maxDate&&f.isAfter(new r.DateTime(this.options.maxDate),"month"),u.selected=f.getMonth()===t.getMonth(),c.appendChild(u);}c.addEventListener("change",(function(t){var e=t.target,i=0;if(n.options.splitView){var o=e.closest("."+a.monthItem);i=h.findNestedMonthItem(o);}n.calendars[i].setMonth(Number(e.value)),n.render(),n.emit("change:month",n.calendars[i],i,t);})),p.appendChild(c);}else {(m=document.createElement("strong")).className=a.monthItemName,m.innerHTML=t.toLocaleString(this.options.lang,{month:"long"}),p.appendChild(m);}if(this.options.dropdowns.years){var g=document.createElement("select");g.className=a.monthItemYear;var y=this.options.dropdowns.minYear,v=this.options.dropdowns.maxYear?this.options.dropdowns.maxYear:(new Date).getFullYear();if(t.getFullYear()>v)(u=document.createElement("option")).value=String(t.getFullYear()),u.text=String(t.getFullYear()),u.selected=!0,u.disabled=!0,g.appendChild(u);for(d=v;d>=y;d-=1){var u=document.createElement("option"),D=new r.DateTime(new Date(d,0,1,0,0,0));u.value=String(d),u.text=String(d),u.disabled=this.options.minDate&&D.isBefore(new r.DateTime(this.options.minDate),"year")||this.options.maxDate&&D.isAfter(new r.DateTime(this.options.maxDate),"year"),u.selected=t.getFullYear()===d,g.appendChild(u);}if(t.getFullYear()<y)(u=document.createElement("option")).value=String(t.getFullYear()),u.text=String(t.getFullYear()),u.selected=!0,u.disabled=!0,g.appendChild(u);if("asc"===this.options.dropdowns.years){var w=Array.prototype.slice.call(g.childNodes).reverse();g.innerHTML="",w.forEach((function(t){t.innerHTML=t.value,g.appendChild(t);}));}g.addEventListener("change",(function(t){var e=t.target,i=0;if(n.options.splitView){var o=e.closest("."+a.monthItem);i=h.findNestedMonthItem(o);}n.calendars[i].setFullYear(Number(e.value)),n.render(),n.emit("change:year",n.calendars[i],i,t);})),p.appendChild(g);}else {var M=document.createElement("span");M.className=a.monthItemYear,M.innerHTML=String(t.getFullYear()),p.appendChild(M);}var T=document.createElement("button");T.type="button",T.className=a.buttonPreviousMonth,T.innerHTML=this.options.buttonText.previousMonth;var k=document.createElement("button");k.type="button",k.className=a.buttonNextMonth,k.innerHTML=this.options.buttonText.nextMonth,l.appendChild(T),l.appendChild(p),l.appendChild(k),this.options.minDate&&i.isSameOrBefore(new r.DateTime(this.options.minDate),"month")&&s.classList.add(a.noPreviousMonth),this.options.maxDate&&i.isSameOrAfter(new r.DateTime(this.options.maxDate),"month")&&s.classList.add(a.noNextMonth);var b=document.createElement("div");b.className=a.monthItemWeekdaysRow,this.options.showWeekNumbers&&(b.innerHTML="<div>W</div>");for(var L=1;L<=7;L+=1){var E=3+this.options.firstDay+L,S=document.createElement("div");S.innerHTML=this.weekdayName(E),S.title=this.weekdayName(E,"long"),b.appendChild(S);}var P=document.createElement("div");P.className=a.containerDays;var x=this.calcSkipDays(i);this.options.showWeekNumbers&&x&&P.appendChild(this.renderWeekNumber(i));for(var I=0;I<x;I+=1){var _=document.createElement("div");P.appendChild(_);}for(I=1;I<=o;I+=1)i.setDate(I),this.options.showWeekNumbers&&i.getDay()===this.options.firstDay&&P.appendChild(this.renderWeekNumber(i)),P.appendChild(this.renderDay(i));return s.appendChild(l),s.appendChild(b),s.appendChild(P),this.emit("render:month",s,t),s},e.prototype.renderDay=function(t){t.setHours();var e=document.createElement("div");if(e.className=a.dayItem,e.innerHTML=String(t.getDate()),e.dataset.time=String(t.getTime()),t.toDateString()===(new Date).toDateString()&&e.classList.add(a.isToday),this.datePicked.length)this.datePicked[0].toDateString()===t.toDateString()&&(e.classList.add(a.isStartDate),this.options.singleMode&&e.classList.add(a.isEndDate)),2===this.datePicked.length&&this.datePicked[1].toDateString()===t.toDateString()&&e.classList.add(a.isEndDate),2===this.datePicked.length&&t.isBetween(this.datePicked[0],this.datePicked[1])&&e.classList.add(a.isInRange);else if(this.options.startDate){var n=this.options.startDate,i=this.options.endDate;n.toDateString()===t.toDateString()&&(e.classList.add(a.isStartDate),this.options.singleMode&&e.classList.add(a.isEndDate)),i&&i.toDateString()===t.toDateString()&&e.classList.add(a.isEndDate),n&&i&&t.isBetween(n,i)&&e.classList.add(a.isInRange);}if(this.options.minDate&&t.isBefore(new r.DateTime(this.options.minDate))&&e.classList.add(a.isLocked),this.options.maxDate&&t.isAfter(new r.DateTime(this.options.maxDate))&&e.classList.add(a.isLocked),this.options.minDays>1&&1===this.datePicked.length){var o=this.options.minDays-1,s=this.datePicked[0].clone().subtract(o,"day"),l=this.datePicked[0].clone().add(o,"day");t.isBetween(s,this.datePicked[0],"(]")&&e.classList.add(a.isLocked),t.isBetween(this.datePicked[0],l,"[)")&&e.classList.add(a.isLocked);}if(this.options.maxDays&&1===this.datePicked.length){var p=this.options.maxDays;s=this.datePicked[0].clone().subtract(p,"day"),l=this.datePicked[0].clone().add(p,"day");t.isSameOrBefore(s)&&e.classList.add(a.isLocked),t.isSameOrAfter(l)&&e.classList.add(a.isLocked);}(this.options.selectForward&&1===this.datePicked.length&&t.isBefore(this.datePicked[0])&&e.classList.add(a.isLocked),this.options.selectBackward&&1===this.datePicked.length&&t.isAfter(this.datePicked[0])&&e.classList.add(a.isLocked),h.dateIsLocked(t,this.options,this.datePicked)&&e.classList.add(a.isLocked),this.options.highlightedDays.length)&&(this.options.highlightedDays.filter((function(e){return e instanceof Array?t.isBetween(e[0],e[1],"[]"):e.isSame(t,"day")})).length&&e.classList.add(a.isHighlighted));return e.tabIndex=e.classList.contains("is-locked")?-1:0,this.emit("render:day",e,t),e},e.prototype.renderFooter=function(){var t=document.createElement("div");if(t.className=a.containerFooter,this.options.footerHTML?t.innerHTML=this.options.footerHTML:t.innerHTML='\n <span class="'+a.previewDateRange+'"></span>\n <button type="button" class="'+a.buttonCancel+'">'+this.options.buttonText.cancel+'</button>\n <button type="button" class="'+a.buttonApply+'">'+this.options.buttonText.apply+"</button>\n ",this.options.singleMode){if(1===this.datePicked.length){var e=this.datePicked[0].format(this.options.format,this.options.lang);t.querySelector("."+a.previewDateRange).innerHTML=e;}}else if(1===this.datePicked.length&&t.querySelector("."+a.buttonApply).setAttribute("disabled",""),2===this.datePicked.length){e=this.datePicked[0].format(this.options.format,this.options.lang);var n=this.datePicked[1].format(this.options.format,this.options.lang);t.querySelector("."+a.previewDateRange).innerHTML=""+e+this.options.delimiter+n;}return this.emit("render:footer",t),t},e.prototype.renderWeekNumber=function(t){var e=document.createElement("div"),n=t.getWeek(this.options.firstDay);return e.className=a.weekNumber,e.innerHTML=53===n&&0===t.getMonth()?"53 / 1":n,e},e.prototype.renderTooltip=function(){var t=document.createElement("div");return t.className=a.containerTooltip,t},e.prototype.weekdayName=function(t,e){return void 0===e&&(e="short"),new Date(1970,0,t,12,0,0,0).toLocaleString(this.options.lang,{weekday:e})},e.prototype.calcSkipDays=function(t){var e=t.getDay()-this.options.firstDay;return e<0&&(e+=7),e},e}(s.LPCore);e.Calendar=l;},function(t,e,n){var i,o=this&&this.__extends||(i=function(t,e){return (i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e;}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);})(t,e)},function(t,e){function n(){this.constructor=t;}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n);}),s=this&&this.__assign||function(){return (s=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};Object.defineProperty(e,"__esModule",{value:!0});var r=n(7),a=n(0),h=n(1),l=function(t){function e(e){var n=t.call(this)||this;n.datePicked=[],n.calendars=[],n.options={element:null,elementEnd:null,parentEl:null,firstDay:1,format:"YYYY-MM-DD",lang:"en-US",delimiter:" - ",numberOfMonths:1,numberOfColumns:1,startDate:null,endDate:null,zIndex:9999,position:"auto",selectForward:!1,selectBackward:!1,splitView:!1,inlineMode:!1,singleMode:!0,autoApply:!0,allowRepick:!1,showWeekNumbers:!1,showTooltip:!0,scrollToDate:!0,mobileFriendly:!0,resetButton:!1,autoRefresh:!1,lockDaysFormat:"YYYY-MM-DD",lockDays:[],disallowLockDaysInRange:!1,lockDaysInclusivity:"[]",highlightedDaysFormat:"YYYY-MM-DD",highlightedDays:[],dropdowns:{minYear:1990,maxYear:null,months:!1,years:!1},buttonText:{apply:"Apply",cancel:"Cancel",previousMonth:'<svg width="11" height="16" xmlns="http://www.w3.org/2000/svg"><path d="M7.919 0l2.748 2.667L5.333 8l5.334 5.333L7.919 16 0 8z" fill-rule="nonzero"/></svg>',nextMonth:'<svg width="11" height="16" xmlns="http://www.w3.org/2000/svg"><path d="M2.748 16L0 13.333 5.333 8 0 2.667 2.748 0l7.919 8z" fill-rule="nonzero"/></svg>',reset:'<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24">\n <path d="M0 0h24v24H0z" fill="none"/>\n <path d="M13 3c-4.97 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10.51 21 13 21c4.97 0 9-4.03 9-9s-4.03-9-9-9zm-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8H12z"/>\n </svg>'},tooltipText:{one:"day",other:"days"}},n.options=s(s({},n.options),e.element.dataset),Object.keys(n.options).forEach((function(t){"true"!==n.options[t]&&"false"!==n.options[t]||(n.options[t]="true"===n.options[t]);}));var i=s(s({},n.options.dropdowns),e.dropdowns),o=s(s({},n.options.buttonText),e.buttonText),r=s(s({},n.options.tooltipText),e.tooltipText);n.options=s(s({},n.options),e),n.options.dropdowns=s({},i),n.options.buttonText=s({},o),n.options.tooltipText=s({},r),n.options.elementEnd||(n.options.allowRepick=!1),n.options.lockDays.length&&(n.options.lockDays=a.DateTime.convertArray(n.options.lockDays,n.options.lockDaysFormat)),n.options.highlightedDays.length&&(n.options.highlightedDays=a.DateTime.convertArray(n.options.highlightedDays,n.options.highlightedDaysFormat));var h=n.parseInput(),l=h[0],p=h[1];n.options.startDate&&(n.options.singleMode||n.options.endDate)&&(l=new a.DateTime(n.options.startDate,n.options.format,n.options.lang)),l&&n.options.endDate&&(p=new a.DateTime(n.options.endDate,n.options.format,n.options.lang)),l instanceof a.DateTime&&!isNaN(l.getTime())&&(n.options.startDate=l),n.options.startDate&&p instanceof a.DateTime&&!isNaN(p.getTime())&&(n.options.endDate=p),!n.options.singleMode||n.options.startDate instanceof a.DateTime||(n.options.startDate=null),n.options.singleMode||n.options.startDate instanceof a.DateTime&&n.options.endDate instanceof a.DateTime||(n.options.startDate=null,n.options.endDate=null);for(var c=0;c<n.options.numberOfMonths;c+=1){var d=n.options.startDate instanceof a.DateTime?n.options.startDate.clone():new a.DateTime;if(!n.options.startDate&&(0===c||n.options.splitView)){var u=n.options.maxDate?new a.DateTime(n.options.maxDate):null,m=n.options.minDate?new a.DateTime(n.options.minDate):null,f=n.options.numberOfMonths-1;m&&u&&d.isAfter(u)?(d=m.clone()).setDate(1):!m&&u&&d.isAfter(u)&&((d=u.clone()).setDate(1),d.setMonth(d.getMonth()-f));}d.setDate(1),d.setMonth(d.getMonth()+c),n.calendars[c]=d;}if(n.options.showTooltip)if(n.options.tooltipPluralSelector)n.pluralSelector=n.options.tooltipPluralSelector;else try{var g=new Intl.PluralRules(n.options.lang);n.pluralSelector=g.select.bind(g);}catch(t){n.pluralSelector=function(t){return 0===Math.abs(t)?"one":"other"};}return n}return o(e,t),e.add=function(t,e){h.Litepicker.prototype[t]=e;},e.prototype.DateTime=function(t,e){return t?new a.DateTime(t,e):new a.DateTime},e.prototype.init=function(){var t=this;this.options.plugins&&this.options.plugins.length&&this.options.plugins.forEach((function(e){h.Litepicker.prototype.hasOwnProperty(e)?h.Litepicker.prototype[e].init.call(t,t):console.warn("Litepicker: plugin «"+e+"» not found.");}));},e.prototype.parseInput=function(){var t=this.options.delimiter,e=new RegExp(""+t),n=this.options.element instanceof HTMLInputElement?this.options.element.value.split(t):[];if(this.options.elementEnd){if(this.options.element instanceof HTMLInputElement&&this.options.element.value.length&&this.options.elementEnd instanceof HTMLInputElement&&this.options.elementEnd.value.length)return [new a.DateTime(this.options.element.value,this.options.format),new a.DateTime(this.options.elementEnd.value,this.options.format)]}else if(this.options.singleMode){if(this.options.element instanceof HTMLInputElement&&this.options.element.value.length)return [new a.DateTime(this.options.element.value,this.options.format)]}else if(this.options.element instanceof HTMLInputElement&&e.test(this.options.element.value)&&n.length&&n.length%2==0){var i=n.slice(0,n.length/2).join(t),o=n.slice(n.length/2).join(t);return [new a.DateTime(i,this.options.format),new a.DateTime(o,this.options.format)]}return []},e.prototype.isShowning=function(){return this.ui&&"none"!==this.ui.style.display},e.prototype.findPosition=function(t){var e=t.getBoundingClientRect(),n=this.ui.getBoundingClientRect(),i=this.options.position.split(" "),o=window.scrollX||window.pageXOffset,s=window.scrollY||window.pageYOffset,r=0,a=0;if("auto"!==i[0]&&/top|bottom/.test(i[0]))r=e[i[0]]+s,"top"===i[0]&&(r-=n.height);else {r=e.bottom+s;var h=e.bottom+n.height>window.innerHeight,l=e.top+s-n.height>=n.height;h&&l&&(r=e.top+s-n.height);}if(/left|right/.test(i[0])||i[1]&&"auto"!==i[1]&&/left|right/.test(i[1]))a=/left|right/.test(i[0])?e[i[0]]+o:e[i[1]]+o,"right"!==i[0]&&"right"!==i[1]||(a-=n.width);else {a=e.left+o;h=e.left+n.width>window.innerWidth;var p=e.right+o-n.width>=0;h&&p&&(a=e.right+o-n.width);}return {left:a,top:r}},e}(r.EventEmitter);e.LPCore=l;},function(t,e,n){var i,o="object"==typeof Reflect?Reflect:null,s=o&&"function"==typeof o.apply?o.apply:function(t,e,n){return Function.prototype.apply.call(t,e,n)};i=o&&"function"==typeof o.ownKeys?o.ownKeys:Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:function(t){return Object.getOwnPropertyNames(t)};var r=Number.isNaN||function(t){return t!=t};function a(){a.init.call(this);}t.exports=a,a.EventEmitter=a,a.prototype._events=void 0,a.prototype._eventsCount=0,a.prototype._maxListeners=void 0;var h=10;function l(t){return void 0===t._maxListeners?a.defaultMaxListeners:t._maxListeners}function p(t,e,n,i){var o,s,r,a;if("function"!=typeof n)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof n);if(void 0===(s=t._events)?(s=t._events=Object.create(null),t._eventsCount=0):(void 0!==s.newListener&&(t.emit("newListener",e,n.listener?n.listener:n),s=t._events),r=s[e]),void 0===r)r=s[e]=n,++t._eventsCount;else if("function"==typeof r?r=s[e]=i?[n,r]:[r,n]:i?r.unshift(n):r.push(n),(o=l(t))>0&&r.length>o&&!r.warned){r.warned=!0;var h=new Error("Possible EventEmitter memory leak detected. "+r.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");h.name="MaxListenersExceededWarning",h.emitter=t,h.type=e,h.count=r.length,a=h,console&&console.warn&&console.warn(a);}return t}function c(){for(var t=[],e=0;e<arguments.length;e++)t.push(arguments[e]);this.fired||(this.target.removeListener(this.type,this.wrapFn),this.fired=!0,s(this.listener,this.target,t));}function d(t,e,n){var i={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},o=c.bind(i);return o.listener=n,i.wrapFn=o,o}function u(t,e,n){var i=t._events;if(void 0===i)return [];var o=i[e];return void 0===o?[]:"function"==typeof o?n?[o.listener||o]:[o]:n?function(t){for(var e=new Array(t.length),n=0;n<e.length;++n)e[n]=t[n].listener||t[n];return e}(o):f(o,o.length)}function m(t){var e=this._events;if(void 0!==e){var n=e[t];if("function"==typeof n)return 1;if(void 0!==n)return n.length}return 0}function f(t,e){for(var n=new Array(e),i=0;i<e;++i)n[i]=t[i];return n}Object.defineProperty(a,"defaultMaxListeners",{enumerable:!0,get:function(){return h},set:function(t){if("number"!=typeof t||t<0||r(t))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+t+".");h=t;}}),a.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0;},a.prototype.setMaxListeners=function(t){if("number"!=typeof t||t<0||r(t))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+t+".");return this._maxListeners=t,this},a.prototype.getMaxListeners=function(){return l(this)},a.prototype.emit=function(t){for(var e=[],n=1;n<arguments.length;n++)e.push(arguments[n]);var i="error"===t,o=this._events;if(void 0!==o)i=i&&void 0===o.error;else if(!i)return !1;if(i){var r;if(e.length>0&&(r=e[0]),r instanceof Error)throw r;var a=new Error("Unhandled error."+(r?" ("+r.message+")":""));throw a.context=r,a}var h=o[t];if(void 0===h)return !1;if("function"==typeof h)s(h,this,e);else {var l=h.length,p=f(h,l);for(n=0;n<l;++n)s(p[n],this,e);}return !0},a.prototype.addListener=function(t,e){return p(this,t,e,!1)},a.prototype.on=a.prototype.addListener,a.prototype.prependListener=function(t,e){return p(this,t,e,!0)},a.prototype.once=function(t,e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e);return this.on(t,d(this,t,e)),this},a.prototype.prependOnceListener=function(t,e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e);return this.prependListener(t,d(this,t,e)),this},a.prototype.removeListener=function(t,e){var n,i,o,s,r;if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e);if(void 0===(i=this._events))return this;if(void 0===(n=i[t]))return this;if(n===e||n.listener===e)0==--this._eventsCount?this._events=Object.create(null):(delete i[t],i.removeListener&&this.emit("removeListener",t,n.listener||e));else if("function"!=typeof n){for(o=-1,s=n.length-1;s>=0;s--)if(n[s]===e||n[s].listener===e){r=n[s].listener,o=s;break}if(o<0)return this;0===o?n.shift():function(t,e){for(;e+1<t.length;e++)t[e]=t[e+1];t.pop();}(n,o),1===n.length&&(i[t]=n[0]),void 0!==i.removeListener&&this.emit("removeListener",t,r||e);}return this},a.prototype.off=a.prototype.removeListener,a.prototype.removeAllListeners=function(t){var e,n,i;if(void 0===(n=this._events))return this;if(void 0===n.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==n[t]&&(0==--this._eventsCount?this._events=Object.create(null):delete n[t]),this;if(0===arguments.length){var o,s=Object.keys(n);for(i=0;i<s.length;++i)"removeListener"!==(o=s[i])&&this.removeAllListeners(o);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(e=n[t]))this.removeListener(t,e);else if(void 0!==e)for(i=e.length-1;i>=0;i--)this.removeListener(t,e[i]);return this},a.prototype.listeners=function(t){return u(this,t,!0)},a.prototype.rawListeners=function(t){return u(this,t,!1)},a.listenerCount=function(t,e){return "function"==typeof t.listenerCount?t.listenerCount(e):m.call(t,e)},a.prototype.listenerCount=m,a.prototype.eventNames=function(){return this._eventsCount>0?i(this._events):[]};},function(t,e,n){var i=this&&this.__assign||function(){return (i=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};Object.defineProperty(e,"__esModule",{value:!0});var o=n(0),s=n(1),r=n(2);s.Litepicker.prototype.show=function(t){void 0===t&&(t=null),this.emit("before:show",t);var e=t||this.options.element;if(this.triggerElement=e,!this.isShowning()){if(this.options.inlineMode)return this.ui.style.position="relative",this.ui.style.display="inline-block",this.ui.style.top=null,this.ui.style.left=null,this.ui.style.bottom=null,void(this.ui.style.right=null);this.scrollToDate(t),this.render(),this.ui.style.position="absolute",this.ui.style.display="block",this.ui.style.zIndex=this.options.zIndex;var n=this.findPosition(e);this.ui.style.top=n.top+"px",this.ui.style.left=n.left+"px",this.ui.style.right=null,this.ui.style.bottom=null,this.emit("show",t);}},s.Litepicker.prototype.hide=function(){this.isShowning()&&(this.datePicked.length=0,this.updateInput(),this.options.inlineMode?this.render():(this.ui.style.display="none",this.emit("hide")));},s.Litepicker.prototype.getDate=function(){return this.getStartDate()},s.Litepicker.prototype.getStartDate=function(){return this.options.startDate?this.options.startDate.clone():null},s.Litepicker.prototype.getEndDate=function(){return this.options.endDate?this.options.endDate.clone():null},s.Litepicker.prototype.setDate=function(t,e){void 0===e&&(e=!1);var n=new o.DateTime(t,this.options.format,this.options.lang);r.dateIsLocked(n,this.options,[n])&&!e?this.emit("error:date",n):(this.setStartDate(t),this.options.inlineMode&&this.render(),this.emit("selected",this.getDate()));},s.Litepicker.prototype.setStartDate=function(t){t&&(this.options.startDate=new o.DateTime(t,this.options.format,this.options.lang),this.updateInput());},s.Litepicker.prototype.setEndDate=function(t){t&&(this.options.endDate=new o.DateTime(t,this.options.format,this.options.lang),this.options.startDate.getTime()>this.options.endDate.getTime()&&(this.options.endDate=this.options.startDate.clone(),this.options.startDate=new o.DateTime(t,this.options.format,this.options.lang)),this.updateInput());},s.Litepicker.prototype.setDateRange=function(t,e,n){void 0===n&&(n=!1),this.triggerElement=void 0;var i=new o.DateTime(t,this.options.format,this.options.lang),s=new o.DateTime(e,this.options.format,this.options.lang);(this.options.disallowLockDaysInRange?r.rangeIsLocked([i,s],this.options):r.dateIsLocked(i,this.options,[i,s])||r.dateIsLocked(s,this.options,[i,s]))&&!n?this.emit("error:range",[i,s]):(this.setStartDate(i),this.setEndDate(s),this.options.inlineMode&&this.render(),this.updateInput(),this.emit("selected",this.getStartDate(),this.getEndDate()));},s.Litepicker.prototype.gotoDate=function(t,e){void 0===e&&(e=0);var n=new o.DateTime(t);n.setDate(1),this.calendars[e]=n.clone(),this.render();},s.Litepicker.prototype.setLockDays=function(t){this.options.lockDays=o.DateTime.convertArray(t,this.options.lockDaysFormat),this.render();},s.Litepicker.prototype.setHighlightedDays=function(t){this.options.highlightedDays=o.DateTime.convertArray(t,this.options.highlightedDaysFormat),this.render();},s.Litepicker.prototype.setOptions=function(t){delete t.element,delete t.elementEnd,delete t.parentEl,t.startDate&&(t.startDate=new o.DateTime(t.startDate,this.options.format,this.options.lang)),t.endDate&&(t.endDate=new o.DateTime(t.endDate,this.options.format,this.options.lang));var e=i(i({},this.options.dropdowns),t.dropdowns),n=i(i({},this.options.buttonText),t.buttonText),s=i(i({},this.options.tooltipText),t.tooltipText);this.options=i(i({},this.options),t),this.options.dropdowns=i({},e),this.options.buttonText=i({},n),this.options.tooltipText=i({},s),!this.options.singleMode||this.options.startDate instanceof o.DateTime||(this.options.startDate=null,this.options.endDate=null),this.options.singleMode||this.options.startDate instanceof o.DateTime&&this.options.endDate instanceof o.DateTime||(this.options.startDate=null,this.options.endDate=null);for(var r=0;r<this.options.numberOfMonths;r+=1){var a=this.options.startDate?this.options.startDate.clone():new o.DateTime;a.setDate(1),a.setMonth(a.getMonth()+r),this.calendars[r]=a;}this.options.lockDays.length&&(this.options.lockDays=o.DateTime.convertArray(this.options.lockDays,this.options.lockDaysFormat)),this.options.highlightedDays.length&&(this.options.highlightedDays=o.DateTime.convertArray(this.options.highlightedDays,this.options.highlightedDaysFormat)),this.render(),this.options.inlineMode&&this.show(),this.updateInput();},s.Litepicker.prototype.clearSelection=function(){this.options.startDate=null,this.options.endDate=null,this.datePicked.length=0,this.updateInput(),this.isShowning()&&this.render(),this.emit("clear:selection");},s.Litepicker.prototype.destroy=function(){this.ui&&this.ui.parentNode&&(this.ui.parentNode.removeChild(this.ui),this.ui=null),this.emit("destroy");};}])}));
963
- });
758
+ ], VegaDatePickerCalendarRenderer$1.prototype, "isMobileDevice", void 0);
759
+ __decorate$g([
760
+ MapToComponentField()
761
+ ], VegaDatePickerCalendarRenderer$1.prototype, "isCalendarShow", void 0);
762
+ __decorate$g([
763
+ MapToComponentField()
764
+ ], VegaDatePickerCalendarRenderer$1.prototype, "isDateDisabled", void 0);
765
+ __decorate$g([
766
+ MapToComponentField()
767
+ ], VegaDatePickerCalendarRenderer$1.prototype, "allowRepick", void 0);
768
+ __decorate$g([
769
+ MapToComponentField()
770
+ ], VegaDatePickerCalendarRenderer$1.prototype, "monthYearChangeEventEmitter", void 0);
771
+ __decorate$g([
772
+ MapToComponentField()
773
+ ], VegaDatePickerCalendarRenderer$1.prototype, "vegaDatePickerValueController", void 0);
774
+ __decorate$g([
775
+ MapToComponentField()
776
+ ], VegaDatePickerCalendarRenderer$1.prototype, "calendarOpenStateController", void 0);
777
+ __decorate$g([
778
+ MapToComponentMethod('componentDidLoad')
779
+ ], VegaDatePickerCalendarRenderer$1.prototype, "componentDidLoad", null);
964
780
 
965
- var __decorate$9 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
781
+ var __decorate$f = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
966
782
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
967
783
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
968
784
  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;
969
785
  return c > 3 && r && Object.defineProperty(target, key, r), r;
970
786
  };
971
- class VegaDatePickerCalendarRenderer extends VegaSlimmer {
972
- constructor() {
973
- super(...arguments);
974
- this.startMonthYearHeaderRef = {
975
- month: null,
976
- year: null,
977
- };
978
- this.endMonthYearHeaderRef = {
979
- month: null,
980
- year: null,
981
- };
982
- this.alterLitePickerHeader = (ui) => {
983
- if (this.showYearMonthDropdowns) {
984
- this.monthYearDropdownRenderer.renderMonthYearDropdowns(this.datePicker);
985
- }
986
- else {
987
- this.renderMonthName(ui);
988
- this.setYearMonthHeaderRef(ui);
989
- }
990
- this.renderWeekdays(ui);
991
- this.renderPrevAndNextMonthButtons(ui);
992
- };
993
- this.alterLitePickerFooter = (ui) => {
994
- this.clearButton && this.renderClearButton(ui);
995
- };
996
- this.alterLitePickerHeight = (ui) => {
997
- if (this.dropdownConfig.staticHeight === false) {
998
- ui.classList.remove('static-height');
999
- }
1000
- else {
1001
- ui.classList.add('static-height');
1002
- }
1003
- };
1004
- /**
1005
- * Update the weekday to a single letter to adapt the vega UI design. e.g. Mon to M | Tue to T | Wed to W
1006
- * The below method is e2e-test covered in
1007
- * @see{module:vega-date-picker-render-ui-with-single}
1008
- */
1009
- /* istanbul ignore next */
1010
- this.renderWeekdays = (ui) => {
1011
- ui.querySelectorAll('.month-item-weekdays-row').forEach((row) => {
1012
- Array.from(row.children).forEach((item) => {
1013
- item.innerText = item.innerText.replace(/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun)$/, (match) => this.translationSlimmer.t(`${match}-short`));
1014
- });
1015
- });
1016
- };
1017
- /**
1018
- * Update the previous/next month buttons icon to adapt the vega UI design
1019
- * The below method is e2e-test covered in
1020
- * @see{module:vega-date-picker-render-ui-with-single}
1021
- */
1022
- /* istanbul ignore next */
1023
- this.renderPrevAndNextMonthButtons = (ui) => {
1024
- ui.querySelectorAll('.button-previous-month').forEach((item) => {
1025
- /**
1026
- * Calendar will flash when using vega-icon here. Hence use svg here for now
1027
- * TODO: Use vega-icon instead when deprecated litepicker in https://gethired.atlassian.net/browse/VD-2534
1028
- */
1029
- item.innerHTML = Icons['chevron-left'].icon;
1030
- item.addEventListener('click', () => {
1031
- this.emitMonthYearChangeEvent();
1032
- });
1033
- });
1034
- ui.querySelectorAll('.button-next-month').forEach((item) => {
1035
- item.innerHTML = Icons['chevron-right'].icon;
1036
- item.addEventListener('click', () => {
1037
- this.emitMonthYearChangeEvent();
1038
- });
1039
- });
1040
- };
1041
- this.renderClearButton = (ui) => {
1042
- // eslint-disable-next-line no-restricted-globals
1043
- const footerContainer = document.createElement('div');
1044
- footerContainer.className = 'footer-container';
1045
- // eslint-disable-next-line no-restricted-globals
1046
- const clearButton = document.createElement('vega-button-link');
1047
- clearButton.label = this.translationSlimmer.t('Clear');
1048
- clearButton.addEventListener('click', this.vegaDatePickerCalendarController.handleClear);
1049
- footerContainer.append(clearButton);
1050
- const mainContainer = ui.querySelector('.container__main');
1051
- if (mainContainer) {
1052
- mainContainer.append(footerContainer);
1053
- }
1054
- };
1055
- this.getSystemTimeZone = () => {
1056
- return Intl.DateTimeFormat().resolvedOptions().timeZone;
1057
- };
1058
- }
787
+ /** The date picker value controller slimmer */
788
+ class VegaDatePickerValueController extends VegaSlimmer {
1059
789
  /*
790
+ * call this method to open the date picker dropdown
1060
791
  * The below method is e2e-test covered in
1061
- * @see{module:vega-date-picker-in-popover}
1062
- */
1063
- /* istanbul ignore next */
1064
- /**
1065
- * The connectedCallback function checks if the datePicker is null and initializes it if it is.
792
+ * @see{module:vega-date-picker-render-ui-with-single}
1066
793
  */
1067
- connectedCallback() {
1068
- if (this.datePicker === null) {
1069
- this.initDatePicker();
1070
- }
1071
- // eslint-disable-next-line no-restricted-globals
1072
- this.calendarContainerRef = document.createElement('vega-date-picker-calendar');
1073
- // eslint-disable-next-line no-restricted-globals
1074
- document.body.append(this.calendarContainerRef);
1075
- }
1076
- /*
1077
- * The below method is e2e-test covered in
1078
- * @see{module:vega-date-picker-disconnected-callback}
1079
- */
1080
- /* istanbul ignore next */
1081
- /**
1082
- * The `disconnectedCallback` function destroys the `datePicker` instance and sets it to null.
1083
- */
1084
- disconnectedCallback() {
1085
- var _a;
1086
- (_a = this.datePicker) === null || _a === void 0 ? void 0 : _a.destroy();
1087
- this.datePicker = null;
1088
- this.calendarContainerRef.remove();
1089
- }
1090
- /*
1091
- * call this method to open the date picker dropdown
1092
- * The below method is e2e-test covered in
1093
- * @see{module:vega-date-picker-render-ui-with-single}
1094
- */
1095
- /** Import litepicker mobilefriendly module when the device is mobile */
1096
- async componentWillLoad() {
1097
- /* istanbul ignore next */ // Spec test can't load the plugin, use e2e test for below
1098
- if (this.vegaDatePickerMobileController.getIsMobileDevice()) {
1099
- await import('./mobilefriendly-c5d0573d.js');
1100
- }
1101
- }
1102
- /** Init date picker when component did load */
1103
- componentDidLoad() {
1104
- this.initDatePicker();
1105
- }
1106
- /*
1107
- * The below method is e2e-test covered in
1108
- * @see{module:vega-date-picker-re-render-in-single-mode}
1109
- * @see{module:vega-date-picker-re-render-in-range-mode }
1110
- */
1111
- /* istanbul ignore next */
1112
- /** Refresh date picker when it is updated */
1113
- componentDidRender() {
1114
- if (this.requireRefreshLitePicker ||
1115
- (this.vegaDatePickerSingleInputRenderer.getOldSingleDateInputRef() &&
1116
- this.vegaDatePickerSingleInputRenderer.getOldSingleDateInputRef() !==
1117
- this.vegaDatePickerSingleInputRenderer.getSingleDateInputRef()) ||
1118
- (this.vegaDatePickerRangeInputRenderer.getOldStartDateInputRef() &&
1119
- this.vegaDatePickerRangeInputRenderer.getOldStartDateInputRef() !==
1120
- this.vegaDatePickerRangeInputRenderer.getStartDateInputRef()) ||
1121
- (this.vegaDatePickerRangeInputRenderer.getOldEndDateInputRef() &&
1122
- this.vegaDatePickerRangeInputRenderer.getOldEndDateInputRef() !==
1123
- this.vegaDatePickerRangeInputRenderer.getEndDateInputRef())) {
1124
- this.refreshLitePicker();
1125
- }
1126
- }
1127
- watchIsDateDisabled() {
1128
- const dateItems =
1129
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
1130
- this.calendarContainerRef.shadowRoot.querySelectorAll('.day-item');
1131
- dateItems.forEach((item) => {
1132
- if (this.isDateDisabled(new Date(Number(item.dataset.time)))) {
1133
- this.setDisabledDayStyles(item);
1134
- }
1135
- else {
1136
- this.clearDisabledDayStyles(item);
1137
- }
1138
- });
1139
- }
1140
- /**
1141
- * The callback to handle [doOpen]{@link VegaDatePicker.doOpen}
1142
- */
1143
- doOpen() {
1144
- this.datePicker.show();
1145
- }
1146
- /**
1147
- * The callback to handle [doClose]{@link VegaDatePicker.doClose}
1148
- */
1149
- doClose() {
1150
- this.datePicker.hide();
1151
- }
1152
- /*
1153
- * The below method is e2e-test covered in
1154
- * @see{module:vega-date-picker-range-mode-repick-start-date-or-end-date}
1155
- */
1156
- /* istanbul ignore next */
1157
- /** Update property of allowRepick when it is changed */
1158
- watchAllowRepick() {
1159
- this.datePicker.setOptions({
1160
- allowRepick: this.allowRepick,
1161
- });
1162
- }
1163
- /**
1164
- * Specifies whether the date picker field is disabled.
1165
- */
1166
- watchDisabled() {
1167
- this.datePicker.hide();
1168
- }
1169
- /*
1170
- * The below method is e2e-test covered in
1171
- * @see{module:vega-date-picker-change-mask-format}
1172
- * @see{module:vega-date-picker-range-mode-change-mask-format}
1173
- */
1174
- /* istanbul ignore next */
1175
- /**
1176
- * It is decorated with the `@MapToComponentMethod` decorator,
1177
- * which indicates that this method should be mapped to a component method called 'format'.
1178
- *
1179
- * @param {string} format - The value of the format.
1180
- */
1181
- watchFormat() {
1182
- this.datePicker.setOptions({
1183
- format: this.format,
1184
- });
1185
- }
1186
- /*
1187
- * The below method is e2e-test covered in
1188
- * @see{module:vega-date-picker-mode-change}
1189
- */
1190
- /* istanbul ignore next */
1191
- /** Update datePicker settings property of mode is changed */
1192
- watchMode() {
1193
- this.requireRefreshLitePicker = true;
1194
- }
1195
- /**
1196
- * Update datePicker settings property if showYearMonthDropdowns is changed
1197
- */
1198
- watchShowYearMonthDropdowns() {
1199
- this.requireRefreshLitePicker = true;
1200
- }
1201
- getStartMonthYearHeaderRef() {
1202
- return this.startMonthYearHeaderRef;
1203
- }
1204
- getEndMonthYearHeaderRef() {
1205
- return this.endMonthYearHeaderRef;
1206
- }
1207
- /**
1208
- * get the reference of datePicker
1209
- *
1210
- * @returns {Litepicker} the reference of datePicker.
1211
- */
1212
- getDatePicker() {
1213
- return this.datePicker;
1214
- }
1215
- getCalendarContainerRef() {
1216
- return this.calendarContainerRef;
1217
- }
1218
- /*
1219
- * The below method is e2e-test covered in
1220
- * @see{module:vega-date-picker-re-render-in-single-mode}
1221
- * @see{module:vega-date-picker-re-render-in-range-mode}
1222
- */
1223
- /* istanbul ignore next */
1224
- /**
1225
- * The function refreshLitePicker destroys and initializes a date picker if it exists.
1226
- */
1227
- refreshLitePicker() {
1228
- if (this.datePicker) {
1229
- this.datePicker.destroy();
1230
- this.initDatePicker();
1231
- this.requireRefreshLitePicker = false;
1232
- }
1233
- }
1234
- /**
1235
- * Render date picker calendar month name
1236
- *
1237
- * @param {HTMLElement} ui - Calendar dom ref
1238
- */
1239
- renderMonthName(ui) {
1240
- ui.querySelectorAll('.month-item-name').forEach((item) => {
1241
- const currentMonthName = item.innerText;
1242
- item.innerText = this.translationSlimmer.t(currentMonthName);
1243
- });
1244
- }
1245
- setYearMonthHeaderRef(ui) {
1246
- this.startMonthYearHeaderRef.month = ui.querySelectorAll('.month-item-name')[0];
1247
- this.endMonthYearHeaderRef.month = ui.querySelectorAll('.month-item-name')[1];
1248
- this.startMonthYearHeaderRef.year = ui.querySelectorAll('.month-item-year')[0];
1249
- this.endMonthYearHeaderRef.year = ui.querySelectorAll('.month-item-year')[1];
1250
- }
1251
- emitMonthYearChangeEvent() {
1252
- const monthYearSummary = this.showYearMonthDropdowns
1253
- ? this.vegaDatePickerMonthYearChangeEventController.getMonthYearSummaryWithMonthYearDropdownEnabled()
1254
- : this.vegaDatePickerMonthYearChangeEventController.getMonthYearSummaryWithMonthYearDropdownDisabled();
1255
- ChangeManager.notify(domNodeSubjectFactory.getSubject(this.host, VegaInternalMonthYearChange), monthYearSummary);
1256
- }
1257
- resetTodayByTimezone() {
1258
- if (this.timezone && this.timezone !== this.getSystemTimeZone()) {
1259
- try {
1260
- const formattedDate = new Intl.DateTimeFormat([], {
1261
- timeZone: this.timezone,
1262
- year: 'numeric',
1263
- month: '2-digit',
1264
- day: '2-digit',
1265
- }).format(new Date());
1266
- const dateByTimezone = new Date(formattedDate.split('/').join('-')).getTime();
1267
- const dayItems =
1268
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
1269
- this.calendarContainerRef.shadowRoot.querySelectorAll('.day-item');
1270
- for (let i = 0; i < dayItems.length; i++) {
1271
- if (dayItems[i].classList.contains('is-today') &&
1272
- Number(dayItems[i].dataset.time) !== dateByTimezone) {
1273
- dayItems[i].classList.remove('is-today');
1274
- }
1275
- if (!dayItems[i].classList.contains('is-today') &&
1276
- Number(dayItems[i].dataset.time) === dateByTimezone) {
1277
- dayItems[i].classList.add('is-today');
1278
- }
1279
- }
1280
- }
1281
- catch (_a) {
1282
- LogUtility.warn('Invalid timezone: ', this.timezone);
1283
- }
1284
- }
1285
- }
1286
- /*
1287
- * The below method is e2e-test covered in
1288
- * @see{module:vega-date-picker-render-ui-with-single}
1289
- * @see{module:vega-date-picker-render-ui-with-range}
1290
- */
1291
- /**
1292
- * The function initializes a Litepicker date picker, customizes its appearance and behavior, and
1293
- * attaches event listeners.
1294
- */
1295
- initDatePicker() {
1296
- this.datePicker = new litepicker_umd.Litepicker(this.vegaDatePickerCalendarController.getDefaultLitePickerConfig())
1297
- .on('render', (ui) => {
1298
- this.alterLitePickerHeader(ui);
1299
- this.alterLitePickerFooter(ui);
1300
- this.alterLitePickerHeight(ui);
1301
- this.litepickerRef = ui;
1302
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
1303
- this.getCalendarContainerRef().shadowRoot.append(this.litepickerRef);
1304
- /* istanbul ignore next */
1305
- if (this.vegaDatePickerMobileController.getIsMobileDevice()) {
1306
- this.vegaDatePickerMobileController.preventElementTouchMoveInMobile();
1307
- }
1308
- this.resetTodayByTimezone();
1309
- })
1310
- .on('selected', this.vegaDatePickerCalendarController.onDatePickerSelected)
1311
- .on('before:show', () => {
1312
- this.vegaDatePickerCalendarController.goToDate();
1313
- })
1314
- .on('show', () => {
1315
- this.vegaDatePickerElementAppenderController.show();
1316
- })
1317
- .on('render:day', (node, date) => {
1318
- const isDisabled = this.isDateDisabled(date.toJSDate());
1319
- if (isDisabled) {
1320
- this.setDisabledDayStyles(node);
1321
- }
1322
- })
1323
- .on('mobilefriendly.show',
1324
- /* istanbul ignore next */ () => {
1325
- this.vegaDatePickerZIndexController.setZIndex();
1326
- this.getCalendarContainerRef().style.position = 'fixed';
1327
- this.getCalendarContainerRef().style.top = '50%';
1328
- this.getCalendarContainerRef().style.left = '50%';
1329
- this.getCalendarContainerRef().style.transform = 'translate(-50%, -50%)';
1330
- this.getCalendarContainerRef().classList.remove('vega-force-hidden');
1331
- })
1332
- .on('hide', () => {
1333
- this.vegaDatePickerValueController.syncUpValueWithCalendar();
1334
- /* istanbul ignore else */
1335
- if (!this.vegaDatePickerMobileController.getIsMobileDevice()) {
1336
- this.vegaDatePickerElementAppenderController.hide();
1337
- }
1338
- else {
1339
- this.getCalendarContainerRef().classList.add('vega-force-hidden');
1340
- this.vegaDatePickerZIndexController.removeZIndex();
1341
- }
1342
- });
1343
- }
1344
- /**
1345
- * Applies styles to disable a specific day in the calendar.
1346
- *
1347
- * @param {HTMLElement} dayRef - The reference to the day element to be disabled.
1348
- */
1349
- setDisabledDayStyles(dayRef) {
1350
- dayRef.classList.add('is-locked');
1351
- dayRef.classList.add('is-disabled');
1352
- dayRef.tabIndex = -1;
1353
- }
1354
- /**
1355
- * Clears the styles applied to a day element that mark it as disabled.
1356
- *
1357
- * @param {HTMLElement} dayRef - The reference to the day element to be cleared of disabled styles.
1358
- */
1359
- clearDisabledDayStyles(dayRef) {
1360
- dayRef.classList.remove('is-locked');
1361
- dayRef.classList.remove('is-disabled');
1362
- dayRef.tabIndex = 0;
1363
- }
1364
- }
1365
- __decorate$9([
1366
- MapToComponentField()
1367
- ], VegaDatePickerCalendarRenderer.prototype, "host", void 0);
1368
- __decorate$9([
1369
- MapToComponentField()
1370
- ], VegaDatePickerCalendarRenderer.prototype, "clearButton", void 0);
1371
- __decorate$9([
1372
- MapToComponentField()
1373
- ], VegaDatePickerCalendarRenderer.prototype, "dropdownConfig", void 0);
1374
- __decorate$9([
1375
- MapToComponentField()
1376
- ], VegaDatePickerCalendarRenderer.prototype, "allowRepick", void 0);
1377
- __decorate$9([
1378
- MapToComponentField()
1379
- ], VegaDatePickerCalendarRenderer.prototype, "format", void 0);
1380
- __decorate$9([
1381
- MapToComponentField()
1382
- ], VegaDatePickerCalendarRenderer.prototype, "showYearMonthDropdowns", void 0);
1383
- __decorate$9([
1384
- MapToComponentField()
1385
- ], VegaDatePickerCalendarRenderer.prototype, "vegaDatePickerCalendarController", void 0);
1386
- __decorate$9([
1387
- MapToComponentField()
1388
- ], VegaDatePickerCalendarRenderer.prototype, "vegaDatePickerMobileController", void 0);
1389
- __decorate$9([
1390
- MapToComponentField()
1391
- ], VegaDatePickerCalendarRenderer.prototype, "vegaDatePickerElementAppenderController", void 0);
1392
- __decorate$9([
1393
- MapToComponentField()
1394
- ], VegaDatePickerCalendarRenderer.prototype, "vegaDatePickerZIndexController", void 0);
1395
- __decorate$9([
1396
- MapToComponentField()
1397
- ], VegaDatePickerCalendarRenderer.prototype, "vegaDatePickerValueController", void 0);
1398
- __decorate$9([
1399
- MapToComponentField()
1400
- ], VegaDatePickerCalendarRenderer.prototype, "vegaDatePickerSingleInputRenderer", void 0);
1401
- __decorate$9([
1402
- MapToComponentField()
1403
- ], VegaDatePickerCalendarRenderer.prototype, "vegaDatePickerRangeInputRenderer", void 0);
1404
- __decorate$9([
1405
- MapToComponentField()
1406
- ], VegaDatePickerCalendarRenderer.prototype, "monthYearDropdownRenderer", void 0);
1407
- __decorate$9([
1408
- MapToComponentField()
1409
- ], VegaDatePickerCalendarRenderer.prototype, "translationSlimmer", void 0);
1410
- __decorate$9([
1411
- MapToComponentField()
1412
- ], VegaDatePickerCalendarRenderer.prototype, "timezone", void 0);
1413
- __decorate$9([
1414
- MapToComponentField()
1415
- ], VegaDatePickerCalendarRenderer.prototype, "isDateDisabled", void 0);
1416
- __decorate$9([
1417
- MapToComponentField()
1418
- ], VegaDatePickerCalendarRenderer.prototype, "mode", void 0);
1419
- __decorate$9([
1420
- MapToComponentField()
1421
- ], VegaDatePickerCalendarRenderer.prototype, "monthYearChangeEventEmitter", void 0);
1422
- __decorate$9([
1423
- MapToComponentField()
1424
- ], VegaDatePickerCalendarRenderer.prototype, "vegaDatePickerMonthYearChangeEventController", void 0);
1425
- __decorate$9([
1426
- MapToComponentMethod('connectedCallback')
1427
- ], VegaDatePickerCalendarRenderer.prototype, "connectedCallback", null);
1428
- __decorate$9([
1429
- MapToComponentMethod('disconnectedCallback')
1430
- ], VegaDatePickerCalendarRenderer.prototype, "disconnectedCallback", null);
1431
- __decorate$9([
1432
- MapToComponentMethod('componentWillLoad')
1433
- ], VegaDatePickerCalendarRenderer.prototype, "componentWillLoad", null);
1434
- __decorate$9([
1435
- MapToComponentMethod('componentDidLoad')
1436
- ], VegaDatePickerCalendarRenderer.prototype, "componentDidLoad", null);
1437
- __decorate$9([
1438
- MapToComponentMethod('componentDidRender')
1439
- ], VegaDatePickerCalendarRenderer.prototype, "componentDidRender", null);
1440
- __decorate$9([
1441
- MapToComponentMethod('watchIsDateDisabled')
1442
- ], VegaDatePickerCalendarRenderer.prototype, "watchIsDateDisabled", null);
1443
- __decorate$9([
1444
- MapToComponentMethod('doOpen')
1445
- ], VegaDatePickerCalendarRenderer.prototype, "doOpen", null);
1446
- __decorate$9([
1447
- MapToComponentMethod('doClose')
1448
- ], VegaDatePickerCalendarRenderer.prototype, "doClose", null);
1449
- __decorate$9([
1450
- MapToComponentMethod('watchAllowRepick')
1451
- ], VegaDatePickerCalendarRenderer.prototype, "watchAllowRepick", null);
1452
- __decorate$9([
1453
- MapToComponentMethod('watchDisabled')
1454
- ], VegaDatePickerCalendarRenderer.prototype, "watchDisabled", null);
1455
- __decorate$9([
1456
- MapToComponentMethod('watchFormat')
1457
- ], VegaDatePickerCalendarRenderer.prototype, "watchFormat", null);
1458
- __decorate$9([
1459
- MapToComponentMethod('watchMode')
1460
- ], VegaDatePickerCalendarRenderer.prototype, "watchMode", null);
1461
- __decorate$9([
1462
- MapToComponentMethod('watchShowYearMonthDropdowns')
1463
- ], VegaDatePickerCalendarRenderer.prototype, "watchShowYearMonthDropdowns", null);
1464
-
1465
- var __decorate$8 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1466
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1467
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1468
- 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;
1469
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1470
- };
1471
- /** The date picker z index controller slimmer */
1472
- class VegaDatePickerZIndexController extends VegaSlimmer {
1473
- /*
1474
- * The below method is e2e-test covered in
1475
- * @see{module:vega-date-picker-z-index
1476
- * @see{module:vega-date-picker-z-index-in-mobile}
1477
- */
1478
- /* istanbul ignore next */
1479
- /**
1480
- * The function sets the z-index of the backdrop and the litepicker element.
1481
- */
1482
- setZIndex() {
1483
- const backdrop =
1484
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
1485
- this.host.shadowRoot.querySelector('.litepicker-backdrop');
1486
- InternalVegaZIndexManager.setZIndex(backdrop, 'base');
1487
- InternalVegaZIndexManager.setZIndex(this.vegaDatePickerCalendarRenderer.getCalendarContainerRef(), 'base');
1488
- }
1489
- /*
1490
- * The below method is e2e-test covered in
1491
- * @see{module:vega-date-picker-z-index
1492
- * @see{module:vega-date-picker-z-index-in-mobile}
1493
- */
1494
- /* istanbul ignore next */
1495
- /**
1496
- * The function removes the 'base' z-index from the backdrop and the litepickerRef elements.
1497
- */
1498
- removeZIndex() {
1499
- const backdrop =
1500
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
1501
- this.host.shadowRoot.querySelector('.litepicker-backdrop');
1502
- InternalVegaZIndexManager.removeZIndex(backdrop, 'base');
1503
- InternalVegaZIndexManager.removeZIndex(this.vegaDatePickerCalendarRenderer.getCalendarContainerRef(), 'base');
1504
- }
1505
- }
1506
- __decorate$8([
1507
- MapToComponentField()
1508
- ], VegaDatePickerZIndexController.prototype, "host", void 0);
1509
- __decorate$8([
1510
- MapToComponentField()
1511
- ], VegaDatePickerZIndexController.prototype, "vegaDatePickerCalendarRenderer", void 0);
1512
-
1513
- var __decorate$7 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1514
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1515
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1516
- 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;
1517
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1518
- };
1519
- /** The date picker value controller slimmer */
1520
- class VegaDatePickerValueController extends VegaSlimmer {
1521
- constructor() {
1522
- super(...arguments);
1523
- // The litepicker logic will clear the input element value if one of the startDate and dateDate is empty
1524
- // Hence we need sync up the vega-date-picker value with litepicker calendar
1525
- // Link: https://github.com/wakirin/Litepicker/blob/master/src/litepicker.ts#L119
1526
- /** Sync up the value of input with the value of the calendar */
1527
- this.syncUpValueWithCalendar = () => {
1528
- var _a, _b;
1529
- const startDate = ((_a = this.vegaDatePickerCalendarRenderer.getDatePicker().getStartDate()) === null || _a === void 0 ? void 0 : _a.format(this.format)) || '';
1530
- const endDate = ((_b = this.vegaDatePickerCalendarRenderer.getDatePicker().getEndDate()) === null || _b === void 0 ? void 0 : _b.format(this.format)) || '';
1531
- if (this.mode === 'range' && !isArrayEqual(this.getValue(), [startDate, endDate])) {
1532
- this.setValue([startDate, endDate]);
1533
- }
1534
- if (this.mode === 'single' && this.getValue() !== startDate) {
1535
- this.setValue(startDate);
1536
- }
1537
- };
1538
- }
1539
- /*
1540
- * call this method to open the date picker dropdown
1541
- * The below method is e2e-test covered in
1542
- * @see{module:vega-date-picker-render-ui-with-single}
1543
- */
1544
- /** Set default value if value is not set when component will load */
1545
- componentWillLoad() {
1546
- if (!this.value || !this.valueGuard(this.value)) {
1547
- this.setDefaultValueByMode();
794
+ /** Set default value if value is not set when component will load */
795
+ componentWillLoad() {
796
+ if (!this.value || !this.valueGuard(this.value)) {
797
+ this.setDefaultValueByMode();
1548
798
  }
1549
799
  }
1550
800
  /*
@@ -1571,10 +821,7 @@ class VegaDatePickerValueController extends VegaSlimmer {
1571
821
  isArrayEqual(newValue, oldValue)) {
1572
822
  return; // avoid the value changed again by `onDatePickerSelected` in range mode
1573
823
  }
1574
- if (this.valueGuard(newValue)) {
1575
- this.vegaDatePickerCalendarController.shouldUpdateCalendar(newValue);
1576
- }
1577
- else {
824
+ if (!this.valueGuard(newValue)) {
1578
825
  this.setDefaultValueByMode();
1579
826
  }
1580
827
  this.changeEventEmitter.emit(this.value);
@@ -1636,13 +883,15 @@ class VegaDatePickerValueController extends VegaSlimmer {
1636
883
  let isValid;
1637
884
  switch (this.mode) {
1638
885
  case 'single':
1639
- isValid = (value && typeof value === 'string' && isDateStr(value)) || value === '';
886
+ isValid =
887
+ (value && typeof value === 'string' && !!CalendarDate.fromString(value, this.format)) ||
888
+ value === '';
1640
889
  break;
1641
890
  case 'range':
1642
891
  isValid =
1643
892
  Array.isArray(value) &&
1644
893
  value.length === 2 &&
1645
- value.every((item) => isDateStr(item) || item === '');
894
+ value.every((item) => !!CalendarDate.fromString(item, this.format) || item === '');
1646
895
  break;
1647
896
  }
1648
897
  if (!isValid) {
@@ -1651,38 +900,41 @@ class VegaDatePickerValueController extends VegaSlimmer {
1651
900
  return isValid;
1652
901
  }
1653
902
  }
1654
- __decorate$7([
903
+ __decorate$f([
1655
904
  MapToComponentField({ writable: true })
1656
905
  ], VegaDatePickerValueController.prototype, "value", void 0);
1657
- __decorate$7([
906
+ __decorate$f([
1658
907
  MapToComponentField()
1659
908
  ], VegaDatePickerValueController.prototype, "mode", void 0);
1660
- __decorate$7([
909
+ __decorate$f([
1661
910
  MapToComponentField()
1662
911
  ], VegaDatePickerValueController.prototype, "format", void 0);
1663
- __decorate$7([
912
+ __decorate$f([
1664
913
  MapToComponentField()
1665
914
  ], VegaDatePickerValueController.prototype, "changeEventEmitter", void 0);
1666
- __decorate$7([
915
+ __decorate$f([
1667
916
  MapToComponentField()
1668
917
  ], VegaDatePickerValueController.prototype, "host", void 0);
1669
- __decorate$7([
918
+ __decorate$f([
1670
919
  MapToComponentField()
1671
- ], VegaDatePickerValueController.prototype, "vegaDatePickerCalendarController", void 0);
1672
- __decorate$7([
920
+ ], VegaDatePickerValueController.prototype, "isCalendarShow", void 0);
921
+ __decorate$f([
1673
922
  MapToComponentField()
1674
923
  ], VegaDatePickerValueController.prototype, "vegaDatePickerCalendarRenderer", void 0);
1675
- __decorate$7([
924
+ __decorate$f([
925
+ MapToComponentField()
926
+ ], VegaDatePickerValueController.prototype, "calendarOpenStateController", void 0);
927
+ __decorate$f([
1676
928
  MapToComponentMethod('componentWillLoad')
1677
929
  ], VegaDatePickerValueController.prototype, "componentWillLoad", null);
1678
- __decorate$7([
930
+ __decorate$f([
1679
931
  MapToComponentMethod('watchValue')
1680
932
  ], VegaDatePickerValueController.prototype, "watchValue", null);
1681
- __decorate$7([
933
+ __decorate$f([
1682
934
  MapToComponentMethod('watchMode')
1683
935
  ], VegaDatePickerValueController.prototype, "watchMode", null);
1684
936
 
1685
- var __decorate$6 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
937
+ var __decorate$e = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1686
938
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1687
939
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1688
940
  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;
@@ -1706,7 +958,8 @@ class VegaDatePickerFormatController extends StringInputFormatterSlimmer {
1706
958
  * @returns {string} The formatted date is being returned.
1707
959
  */
1708
960
  this.formatDate = (date) => {
1709
- return this.vegaDatePickerCalendarRenderer.getDatePicker().DateTime(date).format(this.format);
961
+ const formattedDate = CalendarDate.fromString(date, this.format);
962
+ return formattedDate.toString(this.format);
1710
963
  };
1711
964
  /**
1712
965
  * This function returns a reference to an HTML input element based on the input type specified.
@@ -1794,62 +1047,29 @@ class VegaDatePickerFormatController extends StringInputFormatterSlimmer {
1794
1047
  this.setup();
1795
1048
  }
1796
1049
  }
1797
- __decorate$6([
1050
+ __decorate$e([
1798
1051
  MapToComponentField()
1799
1052
  ], VegaDatePickerFormatController.prototype, "format", void 0);
1800
- __decorate$6([
1053
+ __decorate$e([
1801
1054
  MapToComponentField()
1802
1055
  ], VegaDatePickerFormatController.prototype, "mode", void 0);
1803
- __decorate$6([
1056
+ __decorate$e([
1804
1057
  MapToComponentField()
1805
1058
  ], VegaDatePickerFormatController.prototype, "vegaDatePickerCalendarRenderer", void 0);
1806
- __decorate$6([
1059
+ __decorate$e([
1807
1060
  MapToComponentField()
1808
1061
  ], VegaDatePickerFormatController.prototype, "vegaDatePickerSingleInputRenderer", void 0);
1809
- __decorate$6([
1062
+ __decorate$e([
1810
1063
  MapToComponentField()
1811
1064
  ], VegaDatePickerFormatController.prototype, "vegaDatePickerRangeInputRenderer", void 0);
1812
- __decorate$6([
1065
+ __decorate$e([
1813
1066
  MapToComponentMethod('componentDidLoad')
1814
1067
  ], VegaDatePickerFormatController.prototype, "componentDidLoad", null);
1815
- __decorate$6([
1068
+ __decorate$e([
1816
1069
  MapToComponentMethod('watchFormat')
1817
1070
  ], VegaDatePickerFormatController.prototype, "watchFormat", null);
1818
1071
 
1819
- var __decorate$5 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1820
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1821
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1822
- 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;
1823
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1824
- };
1825
- /** The date picker element appender controller slimmer */
1826
- class VegaDatePickerElementAppenderController extends ElementAppenderSlimmer {
1827
- /**
1828
- * This function sets up the configuration for the Litepicker date picker.
1829
- */
1830
- constructor() {
1831
- super(() => ({
1832
- target: this.vegaDatePickerRenderer.getDatePickerContainer(),
1833
- appendableElement: this.vegaDatePickerCalendarRenderer.getCalendarContainerRef(),
1834
- positionRelativeTo: this.dropdownConfig.positionRelativeTo,
1835
- translocation: { X: 0, Y: 8 },
1836
- placement: ['bottom', 'top'],
1837
- alignment: ['start', 'end'],
1838
- isScreenPosition: FeatureFlag.isEnabled('VEGA_DATE_PICKER.ENABLE_CALCULATION_POSITION_BY_SCREEN'),
1839
- }), () => 'none');
1840
- }
1841
- }
1842
- __decorate$5([
1843
- MapToComponentField()
1844
- ], VegaDatePickerElementAppenderController.prototype, "dropdownConfig", void 0);
1845
- __decorate$5([
1846
- MapToComponentField()
1847
- ], VegaDatePickerElementAppenderController.prototype, "vegaDatePickerRenderer", void 0);
1848
- __decorate$5([
1849
- MapToComponentField()
1850
- ], VegaDatePickerElementAppenderController.prototype, "vegaDatePickerCalendarRenderer", void 0);
1851
-
1852
- var __decorate$4 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1072
+ var __decorate$d = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1853
1073
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1854
1074
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1855
1075
  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;
@@ -1872,7 +1092,7 @@ class VegaDatePickerKeyboardController extends KeyboardManagerSlimmer {
1872
1092
  target.vegaDatePickerSingleInputRenderer.getSingleDateInputRef(),
1873
1093
  target.vegaDatePickerRangeInputRenderer.getStartDateInputRef(),
1874
1094
  target.vegaDatePickerRangeInputRenderer.getEndDateInputRef(),
1875
- target.vegaDatePickerCalendarRenderer.getCalendarContainerRef(),
1095
+ target.vegaDatePickerCalendarRenderer.getCalendarContentBoxRef(),
1876
1096
  ],
1877
1097
  eventName: 'keydown',
1878
1098
  // eslint-disable-next-line jsdoc/require-jsdoc
@@ -1886,13 +1106,13 @@ class VegaDatePickerKeyboardController extends KeyboardManagerSlimmer {
1886
1106
  ]);
1887
1107
  }
1888
1108
  }
1889
- __decorate$4([
1109
+ __decorate$d([
1890
1110
  MapToComponentField()
1891
1111
  ], VegaDatePickerKeyboardController.prototype, "vegaDatePickerCalendarRenderer", void 0);
1892
- __decorate$4([
1112
+ __decorate$d([
1893
1113
  MapToComponentField()
1894
1114
  ], VegaDatePickerKeyboardController.prototype, "vegaDatePickerSingleInputRenderer", void 0);
1895
- __decorate$4([
1115
+ __decorate$d([
1896
1116
  MapToComponentField()
1897
1117
  ], VegaDatePickerKeyboardController.prototype, "vegaDatePickerRangeInputRenderer", void 0);
1898
1118
 
@@ -1947,475 +1167,155 @@ const VegaDatePickerRuntimeMetricsPayloadDefinition = [
1947
1167
  },
1948
1168
  ];
1949
1169
 
1950
- var __decorate$3 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1170
+ var __decorate$c = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1951
1171
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1952
1172
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1953
1173
  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;
1954
1174
  return c > 3 && r && Object.defineProperty(target, key, r), r;
1955
1175
  };
1956
- class VegaDatePickerMonthYearDropdownRenderer extends VegaSlimmer {
1957
- constructor() {
1958
- super(...arguments);
1959
- this.startDropdownRef = {
1960
- month: null,
1961
- year: null,
1962
- };
1963
- this.endDropdownRef = {
1964
- month: null,
1965
- year: null,
1966
- };
1967
- /* eslint-enable no-restricted-globals */
1968
- /**
1969
- * When interacting with open vega-dropdown, prevent it from collapsing since is treated as outside element by litepicker
1970
- *
1971
- * @param {MouseEvent} event - Click event
1972
- */
1973
- this.onVegaDropdownContentBoxClick = (event) => {
1974
- const elementOnClick = event.target;
1975
- if (elementOnClick.tagName === 'VEGA-DROPDOWN-CONTENT-BOX') {
1976
- this.datePickerCalendar.classList.remove('vega-force-hidden');
1977
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
1978
- this.datePickerCalendar.shadowRoot.querySelector('.litepicker').style.display =
1979
- 'block';
1980
- }
1981
- };
1982
- /**
1983
- * Prevent collapsing of dropdown when selecting option. VD-5544
1984
- *
1985
- * @param {Event} event - Focus event
1986
- */
1987
- this.onVegaDropdownContentBoxActivate = (event) => {
1988
- const element = event.target;
1989
- if (element.tagName === 'VEGA-DROPDOWN-CONTENT-BOX') {
1990
- this.isMonthsOrYearsDropdownContentBoxOnFocus = true;
1991
- element.classList.remove('vega-force-hidden');
1992
- }
1993
- else {
1994
- this.isMonthsOrYearsDropdownContentBoxOnFocus = false;
1995
- }
1996
- };
1997
- }
1998
- getStartDropdownRef() {
1999
- return this.startDropdownRef;
2000
- }
2001
- getEndDropdownRef() {
2002
- return this.endDropdownRef;
2003
- }
1176
+ /** The date picker element appender controller slimmer */
1177
+ class VegaDatePickerCalendarOpenStateController extends ElementAppenderSlimmer {
2004
1178
  /**
2005
- * This method creates months and years dropdowns and replaces the current default select elements of litepicker
2006
- *
2007
- * @param {Litepicker} datePicker - Litepicker instance
1179
+ * Sets up the configuration the element appender of date picker.
2008
1180
  */
2009
- renderMonthYearDropdowns(datePicker) {
2010
- this.datePicker = datePicker;
2011
- this.datePickerCalendar = this.vegaDatePickerCalendarRenderer.getCalendarContainerRef();
2012
- this.renderMonthButton(this.datePicker.ui);
2013
- this.renderYearButton(this.datePicker.ui);
2014
- this.initSetup();
2015
- }
2016
- render() {
2017
- return (h("div", { class: "month-year-dropdown-container", style: { display: 'none' } },
2018
- h("div", { class: "start-date-month-year" },
2019
- this.renderDropdown('month', 'start'),
2020
- this.renderDropdown('year', 'start')),
2021
- h("div", { class: "end-date-month-year" },
2022
- this.renderDropdown('month', 'end'),
2023
- this.renderDropdown('year', 'end'))));
2024
- }
2025
- /**
2026
- * From default months select dropdowns, get passed options and create vega-dropdown component with months as options
2027
- *
2028
- * @param {HTMLElement} ui - Litepicker ui
2029
- */
2030
- renderMonthButton(ui) {
2031
- ui.querySelectorAll('select.month-item-name').forEach((item, index) => {
2032
- this.syncDropdownOptions('month', item, index);
2033
- const selectedOptionValue = this.getSelectedOptionFromSelect(item);
2034
- const value = VegaDatePickerMonthYearDropdownRenderer.monthName[parseInt(selectedOptionValue)];
2035
- // eslint-disable-next-line no-restricted-globals
2036
- const monthButton = document.createElement('span');
2037
- monthButton.classList.add('dropdown-current-value');
2038
- monthButton.innerText = `${this.translationSlimmer.t(value)}`;
2039
- this.appendDropdownIconToButton(monthButton);
2040
- if (item.parentNode) {
2041
- item.parentNode.replaceChild(monthButton, item);
2042
- }
2043
- const dropdown = index === 0 ? this.startDropdownRef.month : this.endDropdownRef.month;
2044
- if (dropdown) {
2045
- this.updateDropdownValueAndTarget(monthButton, dropdown, item.value);
2046
- }
2047
- monthButton.addEventListener('click', () => {
2048
- this.setDropdownAsActive(monthButton);
2049
- });
2050
- });
2051
- }
2052
- /**
2053
- * From default years select dropdowns, get passed options and create vega-dropdown component with years as options
2054
- *
2055
- * @param {HTMLElement} ui - Litepicker ui
2056
- */
2057
- renderYearButton(ui) {
2058
- ui.querySelectorAll('select.month-item-year').forEach((item, index) => {
2059
- this.syncDropdownOptions('year', item, index);
2060
- const value = this.getSelectedOptionFromSelect(item);
2061
- // eslint-disable-next-line no-restricted-globals
2062
- const yearButton = document.createElement('span');
2063
- yearButton.classList.add('dropdown-current-value');
2064
- yearButton.innerText = `${this.translationSlimmer.t(value)}`;
2065
- this.appendDropdownIconToButton(yearButton);
2066
- if (item.parentNode) {
2067
- item.parentNode.replaceChild(yearButton, item);
2068
- }
2069
- const dropdown = index === 0 ? this.startDropdownRef.year : this.endDropdownRef.year;
2070
- if (dropdown) {
2071
- this.updateDropdownValueAndTarget(yearButton, dropdown, item.value);
2072
- }
2073
- yearButton.addEventListener('click', () => {
2074
- this.setDropdownAsActive(yearButton);
2075
- });
2076
- });
2077
- }
2078
- getSelectedOptionFromSelect(select) {
2079
- const options = Array.from(select.querySelectorAll('option'));
2080
- const selectedOption = options.find((option) => option.selected);
2081
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
2082
- return selectedOption.value;
1181
+ constructor() {
1182
+ super(() => ({
1183
+ target: this.vegaDatePickerRenderer.getDatePickerContainer(),
1184
+ appendableElement: this.vegaDatePickerCalendarRenderer.getCalendarContentBoxRef(),
1185
+ positionRelativeTo: this.dropdownConfig.positionRelativeTo,
1186
+ translocation: { X: 0, Y: 8 },
1187
+ placement: ['bottom', 'top'],
1188
+ alignment: ['start', 'end'],
1189
+ isScreenPosition: FeatureFlag.isEnabled('VEGA_DATE_PICKER.ENABLE_CALCULATION_POSITION_BY_SCREEN'),
1190
+ }), () => new ClickOutsideOnlyToDismissStrategy(), 'isCalendarShow');
1191
+ this.clearCalendarStateTaskQueue = new SynchronizeTaskQueue();
2083
1192
  }
2084
1193
  /**
2085
- * Render vega-dropdown component
2086
- *
2087
- * @param {MonthOrYearType} type - Month or year dropdown
2088
- * @param {DateIndexType} dateIndex - start date index for both single or range and end date index for range date picker mode
1194
+ * Since connectedCallback will init element appender again, and it will add `vega-force-hidden` class to calendar,
1195
+ * so we should skip this in mobile side.
2089
1196
  */
2090
- renderDropdown(type, dateIndex) {
2091
- return (h("vega-dropdown", { trigger: "click", selectType: "single", class: "vega-force-hidden", "match-target-width": "false", "max-height": "300", ref: (node) => {
2092
- this.onDropdownShowOrHide(node);
2093
- if (dateIndex === 'start') {
2094
- this.startDropdownRef[type] = node;
2095
- }
2096
- else {
2097
- this.endDropdownRef[type] = node;
2098
- }
2099
- DomNodeSubjectObserverFactory.addUniqueObserverToNode(node, VegaDropdownClick, (input) => {
2100
- this.setDefaultViewValues(type, node);
2101
- this.monthYearDropdownClick(type, dateIndex, input.detail);
2102
- });
2103
- } },
2104
- h("span", null, type)));
2105
- }
2106
- /**
2107
- * When calendar opens, update sources for the vega-dropdown components for both months and years dropdown
2108
- *
2109
- * @param {MonthOrYearType} type - Month or year dropdown
2110
- * @param {HTMLSelectElement} select - Native select from litepicker ui
2111
- * @param {number} index - dropdown count
2112
- */
2113
- syncDropdownOptions(type, select, index) {
2114
- const options = select.querySelectorAll('option');
2115
- const dropdownOptions = Array.from(options).map((option) => ({
2116
- key: option.value,
2117
- label: this.translationSlimmer.t(option.text),
2118
- disabled: option.disabled ? true : false,
2119
- }));
2120
- if (type === 'month') {
2121
- const dropdown = index === 0 ? this.startDropdownRef.month : this.endDropdownRef.month;
2122
- if (dropdown) {
2123
- dropdown.source = dropdownOptions;
2124
- }
2125
- }
2126
- if (type === 'year') {
2127
- dropdownOptions.sort((a, b) => Number(a.key) - Number(b.key));
2128
- const dropdown = index === 0 ? this.startDropdownRef.year : this.endDropdownRef.year;
2129
- if (dropdown) {
2130
- dropdown.source = dropdownOptions;
2131
- }
1197
+ connectedCallback() {
1198
+ if (!this.isMobileDevice) {
1199
+ super.connectedCallback();
2132
1200
  }
2133
1201
  }
2134
1202
  /**
2135
- * 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
2136
- *
2137
- * @param {HTMLVegaDropdownElement} dropdown - Month or year dropdown
1203
+ * Since it not init the element appender in mobile side, we also not need destroy element appender in disconnectedCallback.
2138
1204
  */
2139
- onDropdownShowOrHide(dropdown) {
2140
- dropdown === null || dropdown === void 0 ? void 0 : dropdown.addEventListener('vegaShow', () => {
2141
- this.onDropdownShow();
2142
- });
2143
- dropdown === null || dropdown === void 0 ? void 0 : dropdown.addEventListener('vegaHide', () => {
2144
- this.onDropdownHide();
2145
- });
2146
- }
2147
- setDefaultViewValues(type, node) {
2148
- if (type === 'month') {
2149
- const yearDropdown = node.nextElementSibling;
2150
- this.currentStartYearInView = parseInt(yearDropdown.selectedSourceKey);
2151
- }
2152
- else {
2153
- const monthDropdown = node.previousElementSibling;
2154
- this.currentStartMonthInView = parseInt(monthDropdown.selectedSourceKey);
1205
+ disconnectedCallback() {
1206
+ if (!this.isMobileDevice) {
1207
+ super.disconnectedCallback();
2155
1208
  }
2156
1209
  }
2157
- appendDropdownIconToButton(parentElement) {
2158
- parentElement.innerHTML += `<vega-icon icon='${VegaInternalIconManager.getIconKey('caret-down')}'></vega-icon>`;
2159
- parentElement.tabIndex = 0;
2160
- }
2161
- monthYearDropdownClick(type, dateIndex, detail) {
2162
- const value = parseInt(detail);
2163
- this.updateDatePickerOnSelect(type, dateIndex, value);
2164
- ChangeManager.notify(domNodeSubjectFactory.getSubject(this.host, VegaInternalMonthYearChange), this.vegaDatePickerMonthYearChangeEventController.getMonthYearSummaryWithMonthYearDropdownEnabled());
2165
- }
2166
- updateDropdownValueAndTarget(target, dropdownRef, dropdownSelectedKey) {
2167
- const parentDiv = target.closest('div');
2168
- if (parentDiv) {
2169
- parentDiv.classList.add('dropdown-section');
2170
- }
2171
- dropdownRef.selectedSourceKey = dropdownSelectedKey;
2172
- remoteInvocationRegistry.call(domNodeSubjectFactory.getSubject(dropdownRef, VegaInternalDropdownUpdateTarget), target);
2173
- }
2174
- updateDatePickerOnSelect(type, dateIndex, value) {
2175
- if (type === 'month') {
2176
- if (this.currentStartYearInView !== null) {
2177
- if (dateIndex === 'start') {
2178
- this.datePicker.gotoDate(new Date(this.currentStartYearInView, value, 1));
2179
- }
2180
- if (dateIndex === 'end') {
2181
- this.datePicker.gotoDate(new Date(this.currentStartYearInView, value - 1, 1));
2182
- }
2183
- }
2184
- }
2185
- else {
2186
- if (this.currentStartMonthInView !== null) {
2187
- if (dateIndex === 'start') {
2188
- this.datePicker.gotoDate(new Date(value, this.currentStartMonthInView, 1));
2189
- }
2190
- if (dateIndex === 'end') {
2191
- this.datePicker.gotoDate(new Date(value, this.currentStartMonthInView - 1, 1));
2192
- }
2193
- }
1210
+ /**
1211
+ * Since componentDidLoad will init element appender, and it will add `vega-force-hidden` class to calendar,
1212
+ * so we should skip this in mobile side.
1213
+ */
1214
+ componentDidLoad() {
1215
+ if (!this.isMobileDevice) {
1216
+ super.componentDidLoad();
2194
1217
  }
2195
1218
  }
2196
- setDropdownAsActive(element) {
2197
- Array.from(this.datePicker.ui.querySelectorAll('.dropdown-current-value.active')).forEach((item) => item.classList.remove('active'));
2198
- element.classList.add('active');
2199
- }
2200
- removeActiveDropdownClass() {
2201
- Array.from(this.datePicker.ui.querySelectorAll('.dropdown-current-value.active')).forEach((item) => item.classList.remove('active'));
2202
- }
2203
- /* eslint-disable no-restricted-globals */
2204
- onDropdownShow() {
2205
- document.addEventListener('mouseenter', this.onVegaDropdownContentBoxActivate, true);
2206
- document.addEventListener('click', this.onVegaDropdownContentBoxClick);
2207
- }
2208
- onDropdownHide() {
2209
- this.isMonthsOrYearsDropdownContentBoxOnFocus = false;
2210
- this.removeActiveDropdownClass();
2211
- document.removeEventListener('mouseenter', this.onVegaDropdownContentBoxActivate, true);
2212
- document.removeEventListener('click', this.onVegaDropdownContentBoxClick);
2213
- }
2214
1219
  /**
2215
- * When you collapse date picker while vega-dropdown is still open, close vega-dropdown too
2216
- */
2217
- initSetup() {
2218
- const hideLitepicker = this.datePicker.hide.bind(this.datePicker);
2219
- this.datePicker.hide = async () => {
2220
- // eslint-disable-next-line no-restricted-globals
2221
- const activeElement = document.activeElement;
2222
- if (!this.isMonthsOrYearsDropdownContentBoxOnFocus &&
2223
- (activeElement === null || activeElement === void 0 ? void 0 : activeElement.tagName) !== 'VEGA-DROPDOWN-CONTENT-BOX') {
2224
- await this.closeOpenDropdowns();
2225
- hideLitepicker();
2226
- }
2227
- };
1220
+ * We need to clear the calendar state when the property or state of the vega-date-picker is completed,
1221
+ * such as when the user inputs a range value. we can refill the selecting state in calendar according the new value.
1222
+ */
1223
+ async componentDidRender() {
1224
+ await this.clearCalendarStateTaskQueue.runTask();
2228
1225
  }
2229
- /**
2230
- * Close any open vega-dropdown when litepicker is collapse
2231
- */
2232
- async closeOpenDropdowns() {
2233
- const dropdowns = [this.startDropdownRef, this.endDropdownRef];
2234
- await Promise.all(dropdowns
2235
- .flatMap((ref) => [ref.month, ref.year])
2236
- .filter(Boolean)
2237
- .map((dropdown) => {
2238
- if (dropdown) {
2239
- void dropdown.hide();
2240
- }
2241
- }));
1226
+ /** doOpen */
1227
+ async doOpen() {
1228
+ await this.showCalendar();
2242
1229
  }
2243
- }
2244
- (() => {
2245
- VegaInternalIconManager.register({
2246
- 'caret-down': Icons['caret-down'],
2247
- });
2248
- })();
2249
- VegaDatePickerMonthYearDropdownRenderer.monthName = [
2250
- 'January',
2251
- 'February',
2252
- 'March',
2253
- 'April',
2254
- 'May',
2255
- 'June',
2256
- 'July',
2257
- 'August',
2258
- 'September',
2259
- 'October',
2260
- 'November',
2261
- 'December',
2262
- ];
2263
- __decorate$3([
2264
- MapToComponentField()
2265
- ], VegaDatePickerMonthYearDropdownRenderer.prototype, "host", void 0);
2266
- __decorate$3([
2267
- MapToComponentField()
2268
- ], VegaDatePickerMonthYearDropdownRenderer.prototype, "translationSlimmer", void 0);
2269
- __decorate$3([
2270
- MapToComponentField()
2271
- ], VegaDatePickerMonthYearDropdownRenderer.prototype, "vegaDatePickerCalendarRenderer", void 0);
2272
- __decorate$3([
2273
- MapToComponentField()
2274
- ], VegaDatePickerMonthYearDropdownRenderer.prototype, "monthYearChangeEventEmitter", void 0);
2275
- __decorate$3([
2276
- MapToComponentField()
2277
- ], VegaDatePickerMonthYearDropdownRenderer.prototype, "mode", void 0);
2278
- __decorate$3([
2279
- MapToComponentField()
2280
- ], VegaDatePickerMonthYearDropdownRenderer.prototype, "vegaDatePickerMonthYearChangeEventController", void 0);
2281
-
2282
- var __decorate$2 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2283
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2284
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2285
- 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;
2286
- return c > 3 && r && Object.defineProperty(target, key, r), r;
2287
- };
2288
- /**
2289
- * VegaDatePickerMonthYearChangeEventController to handle the month year change event emitter
2290
- */
2291
- class VegaDatePickerMonthYearChangeEventController extends VegaSlimmer {
2292
- /**
2293
- * Register the observer with subject of VegaInternalMonthYearChange.
2294
- */
2295
- registerObserver() {
2296
- this.observer = new Observer(this.canAcceptMonthYearChangeObserver.bind(this), this.monthYearChangeObserverListener.bind(this));
2297
- ChangeManager.register(domNodeSubjectFactory.getSubject(this.host, VegaInternalMonthYearChange), this.observer);
1230
+ /** doClose */
1231
+ async doClose() {
1232
+ await this.hideCalendar();
2298
1233
  }
2299
- /**
2300
- * Unregister the observer with subject of VegaInternalMonthYearChange.
2301
- */
2302
- unregisterObserver() {
2303
- if (this.observer) {
2304
- ChangeManager.unregister(domNodeSubjectFactory.getSubject(this.host, VegaInternalMonthYearChange), this.observer);
2305
- }
1234
+ /** watchDisabled */
1235
+ async watchDisabled() {
1236
+ await this.hideCalendar();
1237
+ }
1238
+ /** watch calendar show state */
1239
+ async watchIsCalendarShow() {
1240
+ await this.clearCalendarSelectingState();
2306
1241
  }
2307
1242
  /**
2308
- * Get month year summary when month year dropdown is disabled
2309
- *
2310
- * @returns {DatePickerMonthYearTypes} the month and year summary
1243
+ * Watch isCalendarShow state change to clear selecting state in calendar.
2311
1244
  */
2312
- getMonthYearSummaryWithMonthYearDropdownDisabled() {
2313
- if (this.mode === 'single') {
2314
- return {
2315
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
2316
- month: this.vegaDatePickerCalendarRenderer.getStartMonthYearHeaderRef().month.innerText,
2317
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
2318
- year: this.vegaDatePickerCalendarRenderer.getStartMonthYearHeaderRef().year.innerText,
2319
- };
1245
+ async showCalendar() {
1246
+ if (this.isMobileDevice) {
1247
+ await this.vegaDatePickerCalendarRenderer.getMobileModalRef().modal('show');
2320
1248
  }
2321
1249
  else {
2322
- return [
2323
- {
2324
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
2325
- month: this.vegaDatePickerCalendarRenderer.getStartMonthYearHeaderRef().month.innerText,
2326
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
2327
- year: this.vegaDatePickerCalendarRenderer.getStartMonthYearHeaderRef().year.innerText,
2328
- },
2329
- {
2330
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
2331
- month: this.vegaDatePickerCalendarRenderer.getEndMonthYearHeaderRef().month.innerText,
2332
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
2333
- year: this.vegaDatePickerCalendarRenderer.getEndMonthYearHeaderRef().year.innerText,
2334
- },
2335
- ];
1250
+ this.show();
2336
1251
  }
2337
1252
  }
2338
1253
  /**
2339
- * Get month year summary when month year dropdown is enabled
2340
- *
2341
- * @returns {DatePickerMonthYearTypes} the month and year summary
1254
+ * Hide calendar in both mobile and desktop mode.
2342
1255
  */
2343
- getMonthYearSummaryWithMonthYearDropdownEnabled() {
2344
- if (this.mode === 'single') {
2345
- return {
2346
- month: VegaDatePickerMonthYearDropdownRenderer.monthName[parseInt(
2347
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
2348
- this.monthYearDropdownRenderer.getStartDropdownRef().month
2349
- .selectedSourceKey)],
2350
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
2351
- year: this.monthYearDropdownRenderer.getStartDropdownRef().year.selectedSourceKey,
2352
- };
1256
+ async hideCalendar() {
1257
+ if (this.isMobileDevice) {
1258
+ await this.vegaDatePickerCalendarRenderer.getMobileModalRef().modal('hide');
2353
1259
  }
2354
1260
  else {
2355
- return [
2356
- {
2357
- month: VegaDatePickerMonthYearDropdownRenderer.monthName[parseInt(
2358
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
2359
- this.monthYearDropdownRenderer.getStartDropdownRef().month
2360
- .selectedSourceKey)],
2361
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
2362
- year: this.monthYearDropdownRenderer.getStartDropdownRef().year
2363
- .selectedSourceKey,
2364
- },
2365
- {
2366
- month: VegaDatePickerMonthYearDropdownRenderer.monthName[parseInt(
2367
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
2368
- this.monthYearDropdownRenderer.getEndDropdownRef().month
2369
- .selectedSourceKey)],
2370
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
2371
- year: this.monthYearDropdownRenderer.getEndDropdownRef().year
2372
- .selectedSourceKey,
2373
- },
2374
- ];
1261
+ this.hide();
2375
1262
  }
2376
1263
  }
2377
1264
  /**
2378
- * checks if the input can be accepted as month year change observer
1265
+ * Update isCalendarShow state.
2379
1266
  *
2380
- * @returns {boolean} a boolean value indicating whether the input is acceptable observer.
1267
+ * @param {boolean} isShow - is calendar show
2381
1268
  */
2382
- canAcceptMonthYearChangeObserver() {
2383
- return true;
1269
+ updateIsCalendarShowState(isShow) {
1270
+ this.isCalendarShow = isShow;
2384
1271
  }
2385
1272
  /**
2386
- * Listener for month year change observer
2387
- *
2388
- * @param {DatePickerMonthYearTypes} payload - the payload of the event
2389
- */
2390
- monthYearChangeObserverListener(payload) {
2391
- this.monthYearChangeEventEmitter.emit(payload);
1273
+ * Clear selecting state in calendar.
1274
+ */
1275
+ async clearCalendarSelectingState() {
1276
+ if (!this.isCalendarShow) {
1277
+ const calendar = this.vegaDatePickerCalendarRenderer.getCalendarRef();
1278
+ await this.clearCalendarStateTaskQueue.enqueue({
1279
+ /** Clear the calendar selecting state */
1280
+ run: async () => await calendar.reset(),
1281
+ }, false);
1282
+ }
2392
1283
  }
2393
1284
  }
2394
- __decorate$2([
2395
- MapToComponentField()
2396
- ], VegaDatePickerMonthYearChangeEventController.prototype, "host", void 0);
2397
- __decorate$2([
1285
+ __decorate$c([
2398
1286
  MapToComponentField()
2399
- ], VegaDatePickerMonthYearChangeEventController.prototype, "monthYearChangeEventEmitter", void 0);
2400
- __decorate$2([
1287
+ ], VegaDatePickerCalendarOpenStateController.prototype, "dropdownConfig", void 0);
1288
+ __decorate$c([
2401
1289
  MapToComponentField()
2402
- ], VegaDatePickerMonthYearChangeEventController.prototype, "mode", void 0);
2403
- __decorate$2([
1290
+ ], VegaDatePickerCalendarOpenStateController.prototype, "vegaDatePickerRenderer", void 0);
1291
+ __decorate$c([
2404
1292
  MapToComponentField()
2405
- ], VegaDatePickerMonthYearChangeEventController.prototype, "vegaDatePickerCalendarRenderer", void 0);
2406
- __decorate$2([
1293
+ ], VegaDatePickerCalendarOpenStateController.prototype, "vegaDatePickerCalendarRenderer", void 0);
1294
+ __decorate$c([
1295
+ MapToComponentField({ writable: true })
1296
+ ], VegaDatePickerCalendarOpenStateController.prototype, "isCalendarShow", void 0);
1297
+ __decorate$c([
2407
1298
  MapToComponentField()
2408
- ], VegaDatePickerMonthYearChangeEventController.prototype, "monthYearDropdownRenderer", void 0);
2409
- __decorate$2([
2410
- MapToComponentMethod('componentWillLoad')
2411
- ], VegaDatePickerMonthYearChangeEventController.prototype, "registerObserver", null);
2412
- __decorate$2([
2413
- MapToComponentMethod('disconnectedCallback')
2414
- ], VegaDatePickerMonthYearChangeEventController.prototype, "unregisterObserver", null);
1299
+ ], VegaDatePickerCalendarOpenStateController.prototype, "isMobileDevice", void 0);
1300
+ __decorate$c([
1301
+ MapToComponentMethod('componentDidRender')
1302
+ ], VegaDatePickerCalendarOpenStateController.prototype, "componentDidRender", null);
1303
+ __decorate$c([
1304
+ MapToComponentMethod('doOpen')
1305
+ ], VegaDatePickerCalendarOpenStateController.prototype, "doOpen", null);
1306
+ __decorate$c([
1307
+ MapToComponentMethod('doClose')
1308
+ ], VegaDatePickerCalendarOpenStateController.prototype, "doClose", null);
1309
+ __decorate$c([
1310
+ MapToComponentMethod('watchDisabled')
1311
+ ], VegaDatePickerCalendarOpenStateController.prototype, "watchDisabled", null);
1312
+ __decorate$c([
1313
+ MapToComponentMethod('watchIsCalendarShow')
1314
+ ], VegaDatePickerCalendarOpenStateController.prototype, "watchIsCalendarShow", null);
2415
1315
 
2416
- const vegaDatePickerCss = ":host{display:inline-block;width:100%;text-align:left;line-height:normal}:host vega-field-label{margin-bottom:8px}:host .vega-input-container{position:relative;display:block;border-radius:8px;background-color:rgba(var(--v-bg-primary, 252, 252, 252, 1));border:1px solid rgba(var(--v-border-input-field, 171, 198, 216, 1));display:flex;align-items:center}:host .vega-input-container:hover{border:1px solid rgba(var(--v-border-input-field-hover, 115, 160, 190, 1))}:host .vega-input-container .date-picker-input{padding-left:16px;padding-right:16px;width:100%;box-sizing:border-box;display:flex;align-items:center}:host .vega-input-container.default .date-picker-input{padding-left:16px;padding-right:16px}:host .vega-input-container.small .date-picker-input{padding-left:12px;padding-right:12px}:host .vega-input-container.default .date-picker-input input{padding-top:12px;padding-bottom:12px}:host .vega-input-container.small .date-picker-input input{padding-top:8px;padding-bottom:8px}:host .vega-input-container.error{border:1px solid rgba(var(--v-border-input-field-danger, 230, 50, 87, 1))}:host .vega-input-container.error:hover{border:1px solid rgba(var(--v-border-input-field-danger-hover, 255, 87, 114, 1))}:host .vega-input-container.single-mode.error:focus-within,:host .vega-input-container.range-mode.error .date-picker-input:focus-within{outline:2px solid rgba(var(--v-border-color-danger, 230, 50, 87, 1));outline-offset:3px;border:1px solid rgba(var(--v-border-color-input-field-danger-focus, 233, 71, 104, 1));border-radius:8px}:host .vega-input-container.range-mode.error .date-picker-input:first-of-type:focus-within{margin:-1px 0 -1px -1px}:host .vega-input-container.range-mode.error .date-picker-input:last-of-type:focus-within{margin:-1px -1px -1px 0}:host .vega-input-container.single-mode:not(.error):focus-within,:host .vega-input-container.range-mode:not(.error) .date-picker-input:focus-within{outline:2px solid rgba(var(--v-border-color-action, 19, 98, 226, 1));outline-offset:3px;border:1px solid rgba(var(--v-border-color-input-field-focus, 19, 98, 226, 1));border-radius:8px}:host .vega-input-container.range-mode .date-picker-input:first-of-type:focus-within{margin:-1px 0 -1px -1px}:host .vega-input-container.range-mode .date-picker-input:last-of-type:focus-within{margin:-1px -1px -1px 0}:host .vega-input-container input{width:100%;box-sizing:content-box;border-width:0px;margin:0px;outline:2px solid transparent;outline-offset:2px;background-color:rgba(var(--v-bg-transparent, 0, 0, 0, 0));font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px;color:rgba(var(--v-text-primary, 32, 54, 69, 1))}@media screen and (min-width: 768px) and (max-width: 1023px){:host .vega-input-container input{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host .vega-input-container input{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host .vega-input-container input{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}:host .vega-input-container input::placeholder{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px;color:rgba(var(--v-text-input-placeholder, 176, 180, 181, 1))}@media screen and (min-width: 768px) and (max-width: 1023px){:host .vega-input-container input::placeholder{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host .vega-input-container input::placeholder{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host .vega-input-container input::placeholder{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}:host .vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px;color:rgba(var(--v-text-error, 189, 41, 71, 1));display:block;padding-left:8px;padding-right:8px;padding-top:12px}@media screen and (min-width: 768px) and (max-width: 1023px){:host .vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host .vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host .vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}:host .vega-hidden{display:none}.vega-input-clear-icon{width:16px;height:16px;cursor:pointer;color:rgba(var(--v-text-secondary, 107, 116, 125, 1))}.vega-input-clear-icon vega-icon{min-width:-webkit-min-content;min-width:-moz-min-content;min-width:min-content;flex-shrink:0}:host .range-input-divider{width:1px;height:24px;border-style:solid;border-right-width:1px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;border-color:rgba(var(--v-border-color-divider, 171, 198, 216, 1))}:host .vega-input-container.range-mode.mobile .range-input-divider{width:100%;height:1px;border-style:solid;border-right-width:0px;border-top-width:1px;border-bottom-width:0px;border-left-width:0px;border-color:rgba(var(--v-border-color-divider, 171, 198, 216, 1))}:host .vega-input-prefix{display:flex;margin-right:8px}:host .vega-input-container.range-mode.mobile.small .vega-input-prefix{margin-right:8px}:host .vega-input-container.range-mode.mobile{flex-direction:column}:host .vega-input-container.range-mode.mobile .date-picker-input:last-of-type{padding-left:40px}:host .vega-input-container.range-mode.mobile.small .date-picker-input:last-of-type{padding-left:36px}:host(.disabled) .vega-input-container{background-color:rgba(var(--v-bg-secondary, 245, 247, 247, 1));border:1px solid rgba(var(--v-border-input-field-disabled, 222, 225, 227, 1));--tw-shadow:0 0 #0000;box-shadow:rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px}:host(.disabled) .vega-input-container:hover{border:1px solid rgba(var(--v-border-input-field-disabled, 222, 225, 227, 1))}:host(.disabled) .vega-input-container input{color:rgba(var(--v-text-input-disabled, 107, 116, 125, 1))}.litepicker-backdrop{display:none;background-color:var(--litepicker-mobilefriendly-backdrop-color-bg);opacity:0.3;position:fixed;top:0;right:0;bottom:0;left:0}";
1316
+ const vegaDatePickerCss = ":host{display:inline-block;width:100%;text-align:left;line-height:normal}:host vega-field-label{margin-bottom:8px}:host .vega-input-container{position:relative;display:block;border-radius:8px;background-color:rgba(var(--v-bg-primary, 252, 252, 252, 1));border:1px solid rgba(var(--v-border-input-field, 171, 198, 216, 1));display:flex;align-items:center}:host .vega-input-container:hover{border:1px solid rgba(var(--v-border-input-field-hover, 115, 160, 190, 1))}:host .vega-input-container .date-picker-input{padding-left:16px;padding-right:16px;width:100%;box-sizing:border-box;display:flex;align-items:center}:host .vega-input-container.default .date-picker-input{padding-left:16px;padding-right:16px}:host .vega-input-container.small .date-picker-input{padding-left:12px;padding-right:12px}:host .vega-input-container.default .date-picker-input input{padding-top:12px;padding-bottom:12px}:host .vega-input-container.small .date-picker-input input{padding-top:8px;padding-bottom:8px}:host .vega-input-container.error{border:1px solid rgba(var(--v-border-input-field-danger, 230, 50, 87, 1))}:host .vega-input-container.error:hover{border:1px solid rgba(var(--v-border-input-field-danger-hover, 255, 87, 114, 1))}:host .vega-input-container.single-mode.error:focus-within,:host .vega-input-container.range-mode.error .date-picker-input:focus-within{outline:2px solid rgba(var(--v-border-color-danger, 230, 50, 87, 1));outline-offset:3px;border:1px solid rgba(var(--v-border-color-input-field-danger-focus, 233, 71, 104, 1));border-radius:8px}:host .vega-input-container.range-mode.error .date-picker-input:first-of-type:focus-within{margin:-1px 0 -1px -1px}:host .vega-input-container.range-mode.error .date-picker-input:last-of-type:focus-within{margin:-1px -1px -1px 0}:host .vega-input-container.single-mode:not(.error):focus-within,:host .vega-input-container.range-mode:not(.error) .date-picker-input:focus-within{outline:2px solid rgba(var(--v-border-color-action, 19, 98, 226, 1));outline-offset:3px;border:1px solid rgba(var(--v-border-color-input-field-focus, 19, 98, 226, 1));border-radius:8px}:host .vega-input-container.range-mode .date-picker-input:first-of-type:focus-within{margin:-1px 0 -1px -1px}:host .vega-input-container.range-mode .date-picker-input:last-of-type:focus-within{margin:-1px -1px -1px 0}:host .vega-input-container input{width:100%;box-sizing:content-box;border-width:0px;margin:0px;outline:2px solid transparent;outline-offset:2px;background-color:rgba(var(--v-bg-transparent, 0, 0, 0, 0));font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px;color:rgba(var(--v-text-primary, 32, 54, 69, 1))}@media screen and (min-width: 768px) and (max-width: 1023px){:host .vega-input-container input{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host .vega-input-container input{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host .vega-input-container input{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}:host .vega-input-container input::placeholder{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px;color:rgba(var(--v-text-input-placeholder, 176, 180, 181, 1))}@media screen and (min-width: 768px) and (max-width: 1023px){:host .vega-input-container input::placeholder{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host .vega-input-container input::placeholder{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host .vega-input-container input::placeholder{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}:host .vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px;color:rgba(var(--v-text-error, 189, 41, 71, 1));display:block;padding-left:8px;padding-right:8px;padding-top:12px}@media screen and (min-width: 768px) and (max-width: 1023px){:host .vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host .vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host .vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}:host .vega-hidden{display:none}.vega-input-clear-icon{width:16px;height:16px;cursor:pointer;color:rgba(var(--v-text-secondary, 107, 116, 125, 1))}.vega-input-clear-icon vega-icon{min-width:-webkit-min-content;min-width:-moz-min-content;min-width:min-content;flex-shrink:0}:host .range-input-divider{width:1px;height:24px;border-style:solid;border-right-width:1px;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;border-color:rgba(var(--v-border-color-divider, 171, 198, 216, 1))}:host .vega-input-container.range-mode.mobile .range-input-divider{width:100%;height:1px;border-style:solid;border-right-width:0px;border-top-width:1px;border-bottom-width:0px;border-left-width:0px;border-color:rgba(var(--v-border-color-divider, 171, 198, 216, 1))}:host .vega-input-prefix{display:flex;margin-right:8px}:host .vega-input-container.range-mode.mobile.small .vega-input-prefix{margin-right:8px}:host .vega-input-container.range-mode.mobile{flex-direction:column}:host .vega-input-container.range-mode.mobile .date-picker-input:last-of-type{padding-left:40px}:host .vega-input-container.range-mode.mobile.small .date-picker-input:last-of-type{padding-left:36px}:host(.disabled) .vega-input-container{background-color:rgba(var(--v-bg-secondary, 245, 247, 247, 1));border:1px solid rgba(var(--v-border-input-field-disabled, 222, 225, 227, 1));--tw-shadow:0 0 #0000;box-shadow:rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px}:host(.disabled) .vega-input-container:hover{border:1px solid rgba(var(--v-border-input-field-disabled, 222, 225, 227, 1))}:host(.disabled) .vega-input-container input{color:rgba(var(--v-text-input-disabled, 107, 116, 125, 1))}";
2417
1317
 
2418
- var __decorate$1 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1318
+ var __decorate$b = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2419
1319
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2420
1320
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
2421
1321
  r = Reflect.decorate(decorators, target, key, desc);
@@ -2434,19 +1334,16 @@ const VegaDatePicker = class {
2434
1334
  this.monthYearChange = createEvent(this, "monthYearChange", 7);
2435
1335
  this.globalSlimmers = {};
2436
1336
  this.translationSlimmer = new TranslationSlimmer();
2437
- this.vegaDatePickerMobileController = new VegaDatePickerMobileController();
2438
- this.vegaDatePickerCalendarController = new VegaDatePickerCalendarController();
2439
- this.vegaDatePickerZIndexController = new VegaDatePickerZIndexController();
1337
+ this.calendarOpenStateController = new VegaDatePickerCalendarOpenStateController();
2440
1338
  this.vegaDatePickerValueController = new VegaDatePickerValueController();
2441
1339
  this.vegaDatePickerFormatController = new VegaDatePickerFormatController('single');
2442
1340
  this.startInputFormatController = new VegaDatePickerFormatController('rangeStart');
2443
1341
  this.endInputFormatController = new VegaDatePickerFormatController('rangeEnd');
2444
- this.vegaDatePickerElementAppenderController = new VegaDatePickerElementAppenderController();
2445
1342
  this.vegaDatePickerKeyboardController = new VegaDatePickerKeyboardController();
2446
1343
  this.vegaDatePickerRenderer = new VegaDatePickerRenderer();
2447
1344
  this.vegaDatePickerSingleInputRenderer = new VegaDatePickerSingleInputRenderer();
2448
1345
  this.vegaDatePickerRangeInputRenderer = new VegaDatePickerRangeInputRenderer();
2449
- this.vegaDatePickerCalendarRenderer = new VegaDatePickerCalendarRenderer();
1346
+ this.vegaDatePickerCalendarRenderer = new VegaDatePickerCalendarRenderer$1();
2450
1347
  this.formFieldController = new FormFieldControllerSlimmer({
2451
1348
  propertyRules: [
2452
1349
  {
@@ -2481,12 +1378,12 @@ const VegaDatePicker = class {
2481
1378
  ].filter(Boolean);
2482
1379
  },
2483
1380
  });
2484
- this.monthYearChangeEventEmitter = createEventEmitSlimmer(VegaDatePicker, VegaMonthYearChange);
2485
1381
  this.changeEventEmitter = createEventEmitSlimmer(VegaDatePicker, VegaChange);
2486
- this.inputEventPrevent = new ChildNodesEventPreventSlimmer([VegaChange], () => this.vegaDatePickerRenderer.getDatePickerContainer());
1382
+ this.monthYearChangeEventEmitter = createEventEmitSlimmer(VegaDatePicker, VegaMonthYearChange);
1383
+ this.inputEventPrevent = new ChildNodesEventPreventSlimmer([VegaChange, VegaClear, VegaMonthYearChange], () => this.vegaDatePickerCalendarRenderer.getCalendarRef());
2487
1384
  this.vegaComponentUsageRuntimeMetricsSlimmer = new VegaComponentUsageRuntimeMetricsSlimmer(VegaDatePickerRuntimeMetricsPayloadDefinition);
2488
- this.monthYearDropdownRenderer = new VegaDatePickerMonthYearDropdownRenderer();
2489
- this.vegaDatePickerMonthYearChangeEventController = new VegaDatePickerMonthYearChangeEventController();
1385
+ this.isMobileDevice = getDeviceType() === DeviceType.MOBILE;
1386
+ this.isCalendarShow = false;
2490
1387
  /**
2491
1388
  * Specifies the selection mode of the date picker.
2492
1389
  *
@@ -2607,6 +1504,8 @@ const VegaDatePicker = class {
2607
1504
  */
2608
1505
  this.isDateDisabled = () => false;
2609
1506
  }
1507
+ watchIsCalendarShow() {
1508
+ }
2610
1509
  /*
2611
1510
  * The below method is e2e-test covered in
2612
1511
  * @see{module:vega-date-picker-mode-change}
@@ -2649,8 +1548,6 @@ const VegaDatePicker = class {
2649
1548
  }
2650
1549
  watchDisabled() {
2651
1550
  }
2652
- watchIsDateDisabled() {
2653
- }
2654
1551
  /**
2655
1552
  * Invoke this method to close the calendar dropdown
2656
1553
  * associated with the date picker.
@@ -2676,6 +1573,7 @@ const VegaDatePicker = class {
2676
1573
  }
2677
1574
  get host() { return getElement(this); }
2678
1575
  static get watchers() { return {
1576
+ "isCalendarShow": ["watchIsCalendarShow"],
2679
1577
  "mode": ["watchMode"],
2680
1578
  "value": ["watchValue"],
2681
1579
  "format": ["watchFormat"],
@@ -2684,82 +1582,1251 @@ const VegaDatePicker = class {
2684
1582
  "maxDate": ["watchMaxDate"],
2685
1583
  "allowRepick": ["watchAllowRepick"],
2686
1584
  "showYearMonthDropdowns": ["watchShowYearMonthDropdowns"],
2687
- "disabled": ["watchDisabled"],
2688
- "isDateDisabled": ["watchIsDateDisabled"]
1585
+ "disabled": ["watchDisabled"]
2689
1586
  }; }
2690
1587
  };
2691
- __decorate$1([
1588
+ __decorate$b([
2692
1589
  InjectVegaGlobalSlimmer()
2693
1590
  ], VegaDatePicker.prototype, "globalSlimmers", void 0);
2694
- __decorate$1([
1591
+ __decorate$b([
2695
1592
  InjectVegaSlimmer()
2696
1593
  ], VegaDatePicker.prototype, "translationSlimmer", void 0);
2697
- __decorate$1([
1594
+ __decorate$b([
2698
1595
  InjectVegaSlimmer()
2699
- ], VegaDatePicker.prototype, "vegaDatePickerMobileController", void 0);
2700
- __decorate$1([
2701
- InjectVegaSlimmer()
2702
- ], VegaDatePicker.prototype, "vegaDatePickerCalendarController", void 0);
2703
- __decorate$1([
2704
- InjectVegaSlimmer()
2705
- ], VegaDatePicker.prototype, "vegaDatePickerZIndexController", void 0);
2706
- __decorate$1([
1596
+ ], VegaDatePicker.prototype, "calendarOpenStateController", void 0);
1597
+ __decorate$b([
2707
1598
  InjectVegaSlimmer()
2708
1599
  ], VegaDatePicker.prototype, "vegaDatePickerValueController", void 0);
2709
- __decorate$1([
1600
+ __decorate$b([
2710
1601
  InjectVegaSlimmer()
2711
1602
  ], VegaDatePicker.prototype, "vegaDatePickerFormatController", void 0);
2712
- __decorate$1([
1603
+ __decorate$b([
2713
1604
  InjectVegaSlimmer()
2714
1605
  ], VegaDatePicker.prototype, "startInputFormatController", void 0);
2715
- __decorate$1([
1606
+ __decorate$b([
2716
1607
  InjectVegaSlimmer()
2717
1608
  ], VegaDatePicker.prototype, "endInputFormatController", void 0);
2718
- __decorate$1([
2719
- InjectVegaSlimmer()
2720
- ], VegaDatePicker.prototype, "vegaDatePickerElementAppenderController", void 0);
2721
- __decorate$1([
1609
+ __decorate$b([
2722
1610
  InjectVegaSlimmer()
2723
1611
  ], VegaDatePicker.prototype, "vegaDatePickerKeyboardController", void 0);
2724
- __decorate$1([
1612
+ __decorate$b([
2725
1613
  InjectVegaSlimmer()
2726
1614
  ], VegaDatePicker.prototype, "vegaDatePickerRenderer", void 0);
1615
+ __decorate$b([
1616
+ InjectVegaSlimmer()
1617
+ ], VegaDatePicker.prototype, "vegaDatePickerSingleInputRenderer", void 0);
1618
+ __decorate$b([
1619
+ InjectVegaSlimmer()
1620
+ ], VegaDatePicker.prototype, "vegaDatePickerRangeInputRenderer", void 0);
1621
+ __decorate$b([
1622
+ InjectVegaSlimmer()
1623
+ ], VegaDatePicker.prototype, "vegaDatePickerCalendarRenderer", void 0);
1624
+ __decorate$b([
1625
+ InjectVegaSlimmer()
1626
+ ], VegaDatePicker.prototype, "formFieldController", void 0);
1627
+ __decorate$b([
1628
+ InjectVegaSlimmer()
1629
+ ], VegaDatePicker.prototype, "changeEventEmitter", void 0);
1630
+ __decorate$b([
1631
+ InjectVegaSlimmer()
1632
+ ], VegaDatePicker.prototype, "monthYearChangeEventEmitter", void 0);
1633
+ __decorate$b([
1634
+ InjectVegaSlimmer()
1635
+ ], VegaDatePicker.prototype, "inputEventPrevent", void 0);
1636
+ __decorate$b([
1637
+ InjectVegaSlimmer()
1638
+ ], VegaDatePicker.prototype, "vegaComponentUsageRuntimeMetricsSlimmer", void 0);
1639
+ __decorate$b([
1640
+ ComponentLoadRequired()
1641
+ ], VegaDatePicker.prototype, "watchValue", null);
1642
+ VegaDatePicker.style = vegaDatePickerCss;
1643
+
1644
+ var __decorate$a = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1645
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1646
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1647
+ 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;
1648
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
1649
+ };
1650
+ class VegaDatePickerCalendarRenderer extends VegaSlimmer {
1651
+ render() {
1652
+ return (h("div", { class: {
1653
+ 'calendar': true,
1654
+ 'static-height': this.staticHeight,
1655
+ } },
1656
+ h("div", { class: "container__main" },
1657
+ this.headerRenderer.render(),
1658
+ this.renderContainer(),
1659
+ this.renderFooter())));
1660
+ }
1661
+ renderContainer() {
1662
+ const shouldRenderRangeMonth = this.shouldRenderRangeMonth();
1663
+ return (h("div", { class: {
1664
+ /* eslint-disable @typescript-eslint/naming-convention */
1665
+ 'container__months': true,
1666
+ 'columns-2': shouldRenderRangeMonth,
1667
+ } }, shouldRenderRangeMonth ? this.renderRangeMonth() : this.monthItemRenderer.render('start')));
1668
+ }
1669
+ renderRangeMonth() {
1670
+ return (h(Fragment, null,
1671
+ this.monthItemRenderer.render('start'),
1672
+ this.monthItemRenderer.render('end')));
1673
+ }
1674
+ renderFooter() {
1675
+ return (this.clearButton && (h("div", { class: "footer-container" },
1676
+ h("vega-button-link", { ref: (ref) => {
1677
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaClick, () => {
1678
+ this.clearCalendar();
1679
+ });
1680
+ }, label: this.translationSlimmer.t('Clear') }))));
1681
+ }
1682
+ shouldRenderRangeMonth() {
1683
+ return this.mode === 'range' && !this.isMobileDevice;
1684
+ }
1685
+ clearCalendar() {
1686
+ this.clearEventEmitter.emit();
1687
+ ChangeManager.notify(domNodeSubjectFactory.getSubject(this.host, VegaInternalDatePickerCalendarClear), {});
1688
+ }
1689
+ }
1690
+ __decorate$a([
1691
+ MapToComponentField()
1692
+ ], VegaDatePickerCalendarRenderer.prototype, "host", void 0);
1693
+ __decorate$a([
1694
+ MapToComponentField()
1695
+ ], VegaDatePickerCalendarRenderer.prototype, "clearButton", void 0);
1696
+ __decorate$a([
1697
+ MapToComponentField()
1698
+ ], VegaDatePickerCalendarRenderer.prototype, "monthItemRenderer", void 0);
1699
+ __decorate$a([
1700
+ MapToComponentField()
1701
+ ], VegaDatePickerCalendarRenderer.prototype, "staticHeight", void 0);
1702
+ __decorate$a([
1703
+ MapToComponentField()
1704
+ ], VegaDatePickerCalendarRenderer.prototype, "translationSlimmer", void 0);
1705
+ __decorate$a([
1706
+ MapToComponentField()
1707
+ ], VegaDatePickerCalendarRenderer.prototype, "mode", void 0);
1708
+ __decorate$a([
1709
+ MapToComponentField()
1710
+ ], VegaDatePickerCalendarRenderer.prototype, "clearEventEmitter", void 0);
1711
+ __decorate$a([
1712
+ MapToComponentField()
1713
+ ], VegaDatePickerCalendarRenderer.prototype, "isMobileDevice", void 0);
1714
+ __decorate$a([
1715
+ MapToComponentField()
1716
+ ], VegaDatePickerCalendarRenderer.prototype, "headerRenderer", void 0);
1717
+
1718
+ const MonthNames = [
1719
+ 'January',
1720
+ 'February',
1721
+ 'March',
1722
+ 'April',
1723
+ 'May',
1724
+ 'June',
1725
+ 'July',
1726
+ 'August',
1727
+ 'September',
1728
+ 'October',
1729
+ 'November',
1730
+ 'December',
1731
+ ];
1732
+
1733
+ var __decorate$9 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1734
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1735
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1736
+ 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;
1737
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
1738
+ };
1739
+ class VegaDatePickerCalendarYearMonthSwitcherRenderer extends VegaSlimmer {
1740
+ render() {
1741
+ const canRender = this.mode !== 'range' || this.showYearMonthDropdowns || this.isMobileDevice;
1742
+ return (canRender && (h("vega-flex", { justifyContent: 'center' },
1743
+ this.showYearMonthDropdowns
1744
+ ? this.renderMonthDropdownSwitcher()
1745
+ : this.renderCurrentMonth(),
1746
+ this.showYearMonthDropdowns
1747
+ ? this.renderYearDropdownSwitcher()
1748
+ : this.renderCurrentYear())));
1749
+ }
1750
+ getMonthDropdownOptions() {
1751
+ const currentYear = this.currentPeriod.current.year;
1752
+ return MonthNames.map((month, index) => {
1753
+ return {
1754
+ key: `${index}`,
1755
+ label: this.translationSlimmer.t(month),
1756
+ disabled: this.isDisabledMonth(currentYear, index + 1),
1757
+ };
1758
+ });
1759
+ }
1760
+ isDisabledMonth(year, month) {
1761
+ var _a, _b, _c, _d;
1762
+ const startMonth = (_a = this.minCalendarDate) === null || _a === void 0 ? void 0 : _a.month;
1763
+ const startYear = (_b = this.minCalendarDate) === null || _b === void 0 ? void 0 : _b.year;
1764
+ const endMonth = (_c = this.maxCalendarDate) === null || _c === void 0 ? void 0 : _c.month;
1765
+ const endYear = (_d = this.maxCalendarDate) === null || _d === void 0 ? void 0 : _d.year;
1766
+ return (year < startYear ||
1767
+ year > endYear ||
1768
+ (year === startYear && startMonth > month) ||
1769
+ (year === endYear && endMonth < month));
1770
+ }
1771
+ getYearDropdownOptions() {
1772
+ var _a, _b, _c, _d;
1773
+ const currentYear = new Date().getFullYear();
1774
+ const startYear = ((_a = this.minCalendarDate) === null || _a === void 0 ? void 0 : _a.year) ||
1775
+ Math.min(((_b = this.maxCalendarDate) === null || _b === void 0 ? void 0 : _b.year) || currentYear, currentYear) -
1776
+ VegaDatePickerCalendarYearMonthSwitcherRenderer.DEFAULT_MINIMUM_DROPDOWN_YEAR_BEFORE_CURRENT_YEAR;
1777
+ const endYear = ((_c = this.maxCalendarDate) === null || _c === void 0 ? void 0 : _c.year) ||
1778
+ Math.max(((_d = this.minCalendarDate) === null || _d === void 0 ? void 0 : _d.year) || currentYear, currentYear) +
1779
+ VegaDatePickerCalendarYearMonthSwitcherRenderer.DEFAULT_MINIMUM_DROPDOWN_YEAR_AFTER_CURRENT_YEAR;
1780
+ const years = [];
1781
+ for (let year = startYear; year <= endYear; year++) {
1782
+ years.push({ key: String(year), label: String(year) });
1783
+ }
1784
+ return years;
1785
+ }
1786
+ renderMonthDropdownSwitcher() {
1787
+ const { month } = this.currentPeriod.current;
1788
+ const monthIndex = month - 1;
1789
+ return (h("vega-dropdown", { trigger: "click", selectType: "single", source: this.getMonthDropdownOptions(), selectedSourceKey: monthIndex.toString(), "max-height": "300", isScreenPosition: this.yearMonthDropdownProps.isScreenPosition, ref: (node) => {
1790
+ this.onDropdownShowOrHide(node);
1791
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(node, VegaDropdownClick, (payload) => {
1792
+ const selectedMonth = parseInt(payload.detail);
1793
+ this.setDateBasedOnSelectedMonth(selectedMonth);
1794
+ });
1795
+ } }, this.renderCurrentMonth()));
1796
+ }
1797
+ renderYearDropdownSwitcher() {
1798
+ const { year } = this.currentPeriod.current;
1799
+ return (h("vega-dropdown", { trigger: "click", selectType: "single", source: this.getYearDropdownOptions(), selectedSourceKey: year.toString(), "max-height": "300", isScreenPosition: this.yearMonthDropdownProps.isScreenPosition, ref: (node) => {
1800
+ this.onDropdownShowOrHide(node);
1801
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(node, VegaDropdownClick, (payload) => {
1802
+ this.setDateBasedOnSelectedYear(parseInt(payload.detail));
1803
+ });
1804
+ } }, this.renderCurrentYear()));
1805
+ }
1806
+ /**
1807
+ * Control ui when dropdown shows or closes
1808
+ *
1809
+ * @param {HTMLVegaDropdownElement} dropdown - Month or year dropdown
1810
+ */
1811
+ onDropdownShowOrHide(dropdown) {
1812
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(dropdown, VegaDropdownShow, async () => {
1813
+ dropdown.classList.add('active');
1814
+ });
1815
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(dropdown, VegaDropdownHide, () => {
1816
+ const parentElement = dropdown.closest('.calendar');
1817
+ if (parentElement) {
1818
+ const dropdown = parentElement.querySelector('vega-dropdown.active');
1819
+ dropdown && dropdown.classList.remove('active');
1820
+ }
1821
+ });
1822
+ }
1823
+ renderCurrentMonth() {
1824
+ const label = this.translationSlimmer.t(this.currentPeriod.current.getMonthName());
1825
+ return this.size === 'small' && this.showYearMonthDropdowns ? (h("vega-button-link", { class: "small-month-item-name", size: "small", label: label })) : (h("div", { class: "month-item-name" },
1826
+ h("span", null, label),
1827
+ this.renderDropdownSwitchIcon()));
1828
+ }
1829
+ renderCurrentYear() {
1830
+ const label = this.currentPeriod.current.year.toString();
1831
+ return this.size === 'small' && this.showYearMonthDropdowns ? (h("vega-button-link", { class: "small-month-item-year", size: "small", label: label })) : (h("div", { class: "month-item-year" },
1832
+ h("span", null, label),
1833
+ this.renderDropdownSwitchIcon()));
1834
+ }
1835
+ renderDropdownSwitchIcon() {
1836
+ return (this.showYearMonthDropdowns && (h("vega-icon", { icon: VegaInternalIconManager.getIconKey('caret-down'), color: 'text-link' })));
1837
+ }
1838
+ setDateBasedOnSelectedMonth(monthIndex) {
1839
+ const { year } = this.currentPeriod.current;
1840
+ const date = new Date(year, monthIndex, 1);
1841
+ const newPeriod = new MonthPeriod(CalendarDate.from(date));
1842
+ this.currentPeriodController.updateCalendarPeriod(newPeriod);
1843
+ }
1844
+ setDateBasedOnSelectedYear(year) {
1845
+ const { month } = this.currentPeriod.current;
1846
+ const startMonthIndex = month - 1;
1847
+ const date = new Date(year, startMonthIndex, 1);
1848
+ const newPeriod = new MonthPeriod(CalendarDate.from(date));
1849
+ this.currentPeriodController.updateCalendarPeriod(newPeriod);
1850
+ }
1851
+ }
1852
+ (() => {
1853
+ VegaInternalIconManager.register({
1854
+ 'caret-down': Icons['caret-down'],
1855
+ });
1856
+ })();
1857
+ VegaDatePickerCalendarYearMonthSwitcherRenderer.DEFAULT_MINIMUM_DROPDOWN_YEAR_BEFORE_CURRENT_YEAR = 10;
1858
+ VegaDatePickerCalendarYearMonthSwitcherRenderer.DEFAULT_MINIMUM_DROPDOWN_YEAR_AFTER_CURRENT_YEAR = 10;
1859
+ __decorate$9([
1860
+ MapToComponentField()
1861
+ ], VegaDatePickerCalendarYearMonthSwitcherRenderer.prototype, "currentPeriodController", void 0);
1862
+ __decorate$9([
1863
+ MapToComponentField()
1864
+ ], VegaDatePickerCalendarYearMonthSwitcherRenderer.prototype, "showYearMonthDropdowns", void 0);
1865
+ __decorate$9([
1866
+ MapToComponentField()
1867
+ ], VegaDatePickerCalendarYearMonthSwitcherRenderer.prototype, "translationSlimmer", void 0);
1868
+ __decorate$9([
1869
+ MapToComponentField()
1870
+ ], VegaDatePickerCalendarYearMonthSwitcherRenderer.prototype, "minCalendarDate", void 0);
1871
+ __decorate$9([
1872
+ MapToComponentField()
1873
+ ], VegaDatePickerCalendarYearMonthSwitcherRenderer.prototype, "maxCalendarDate", void 0);
1874
+ __decorate$9([
1875
+ MapToComponentField()
1876
+ ], VegaDatePickerCalendarYearMonthSwitcherRenderer.prototype, "yearMonthDropdownProps", void 0);
1877
+ __decorate$9([
1878
+ MapToComponentField()
1879
+ ], VegaDatePickerCalendarYearMonthSwitcherRenderer.prototype, "currentPeriod", void 0);
1880
+ __decorate$9([
1881
+ MapToComponentField()
1882
+ ], VegaDatePickerCalendarYearMonthSwitcherRenderer.prototype, "size", void 0);
1883
+ __decorate$9([
1884
+ MapToComponentField()
1885
+ ], VegaDatePickerCalendarYearMonthSwitcherRenderer.prototype, "mode", void 0);
1886
+ __decorate$9([
1887
+ MapToComponentField()
1888
+ ], VegaDatePickerCalendarYearMonthSwitcherRenderer.prototype, "isMobileDevice", void 0);
1889
+
1890
+ var __decorate$8 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1891
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1892
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1893
+ 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;
1894
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
1895
+ };
1896
+ /**
1897
+ * Date picker calendar state base abstract class
1898
+ */
1899
+ class VegaDatePickerCalendarStateBaseAbstract extends VegaSlimmer {
1900
+ /** connectedCallback */
1901
+ connectedCallback() {
1902
+ this.initCalendarClearObserver();
1903
+ }
1904
+ /** disconnectedCallback */
1905
+ disconnectedCallback() {
1906
+ this.removeCalendarClearObserver();
1907
+ }
1908
+ /**
1909
+ * Initialize calendar clear observer
1910
+ */
1911
+ initCalendarClearObserver() {
1912
+ this.calendarClearObserver = new Observer(this.canAcceptClearEvent.bind(this), this.clear.bind(this));
1913
+ ChangeManager.register(domNodeSubjectFactory.getSubject(this.host, VegaInternalDatePickerCalendarClear), this.calendarClearObserver);
1914
+ }
1915
+ /**
1916
+ * Remove calendar clear observer
1917
+ */
1918
+ removeCalendarClearObserver() {
1919
+ ChangeManager.unregister(domNodeSubjectFactory.getSubject(this.host, VegaInternalDatePickerCalendarClear), this.calendarClearObserver);
1920
+ }
1921
+ /**
1922
+ * Check if can accept form reset event
1923
+ *
1924
+ * @returns {boolean} - true if can accept, false otherwise.
1925
+ */
1926
+ canAcceptClearEvent() {
1927
+ return true;
1928
+ }
1929
+ }
1930
+ __decorate$8([
1931
+ MapToComponentField()
1932
+ ], VegaDatePickerCalendarStateBaseAbstract.prototype, "host", void 0);
1933
+ __decorate$8([
1934
+ MapToComponentMethod('connectedCallback')
1935
+ ], VegaDatePickerCalendarStateBaseAbstract.prototype, "connectedCallback", null);
1936
+ __decorate$8([
1937
+ MapToComponentMethod('disconnectedCallback')
1938
+ ], VegaDatePickerCalendarStateBaseAbstract.prototype, "disconnectedCallback", null);
1939
+
1940
+ var __decorate$7 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1941
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1942
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1943
+ 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;
1944
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
1945
+ };
1946
+ /** Current period controller. */
1947
+ class VegaDatePickerCalendarCurrentPeriodController extends VegaDatePickerCalendarStateBaseAbstract {
1948
+ /** connectedCallback */
1949
+ connectedCallback() {
1950
+ super.connectedCallback();
1951
+ this.initCalendarPeriodUpdateObserver();
1952
+ }
1953
+ /** disconnectedCallback */
1954
+ disconnectedCallback() {
1955
+ super.disconnectedCallback();
1956
+ this.removeCalendarPeriodUpdateObserver();
1957
+ }
1958
+ /** componentWillLoad */
1959
+ componentWillLoad() {
1960
+ this.setCurrentMonthPeriod();
1961
+ }
1962
+ /** Listen maxDate changed */
1963
+ watchMaxCalendarDate() {
1964
+ this.setCurrentMonthPeriod();
1965
+ }
1966
+ /** Listen minDate changed */
1967
+ watchMinCalendarDate() {
1968
+ this.setCurrentMonthPeriod();
1969
+ }
1970
+ /** Listen currentPeriod changed */
1971
+ watchCurrentPeriod() {
1972
+ this.monthYearChangeEventEmitter.emit(this.getCurrentYearMonthByPeriod());
1973
+ }
1974
+ /** reset current period */
1975
+ resetCurrentPeriod() {
1976
+ this.setCurrentMonthPeriod();
1977
+ }
1978
+ /** Clear current period */
1979
+ clear() {
1980
+ this.setCurrentMonthPeriod();
1981
+ }
1982
+ /**
1983
+ * Goto next month period while single mode.
1984
+ * Goto next two month period while range mode.
1985
+ */
1986
+ gotoNextPeriod() {
1987
+ const period = this.isRangeView()
1988
+ ? this.currentPeriod.next().next()
1989
+ : this.currentPeriod.next();
1990
+ this.updateCalendarPeriod(period);
1991
+ }
1992
+ /**
1993
+ * Goto previous month period while single mode.
1994
+ * Goto previous two month period while range mode.
1995
+ */
1996
+ gotoPreviousPeriod() {
1997
+ const period = this.isRangeView()
1998
+ ? this.currentPeriod.previous().previous()
1999
+ : this.currentPeriod.previous();
2000
+ this.updateCalendarPeriod(period);
2001
+ }
2002
+ /**
2003
+ * set current period
2004
+ *
2005
+ * @param {MonthPeriod} period current period
2006
+ */
2007
+ updateCalendarPeriod(period) {
2008
+ if (!this.currentPeriod || !this.currentPeriod.equal(period)) {
2009
+ this.currentPeriod = period;
2010
+ }
2011
+ }
2012
+ /**
2013
+ * Current period follow below rules:
2014
+ * - Go to the value date month if the value is set.
2015
+ * - Go to the minDate month if only set the minDate and today is before than minDate.
2016
+ * - Go to the minDate month if minDate and maxDate are both set and today is after than maxDate.
2017
+ * - Go to the maxDate month if only set maxDate and today is after than maxDate.
2018
+ * - Go to today month if the value, minDate and maxDate all are empty.
2019
+ */
2020
+ setCurrentMonthPeriod() {
2021
+ let currentDate;
2022
+ const startDate = this.calendarSelection.startDate;
2023
+ if (isCalendarDateType(startDate)) {
2024
+ currentDate = startDate;
2025
+ }
2026
+ else if (this.minCalendarDate &&
2027
+ (this.today.isBefore(this.minCalendarDate) ||
2028
+ (this.maxCalendarDate && this.today.isAfter(this.maxCalendarDate)))) {
2029
+ currentDate = this.minCalendarDate;
2030
+ }
2031
+ else if (this.maxCalendarDate && this.today.isAfter(this.maxCalendarDate)) {
2032
+ currentDate = this.maxCalendarDate;
2033
+ }
2034
+ else {
2035
+ currentDate = this.today;
2036
+ }
2037
+ this.updateCalendarPeriod(new MonthPeriod(currentDate, true, this.timezone));
2038
+ }
2039
+ /**
2040
+ * Check is range view
2041
+ *
2042
+ * @returns {boolean} -
2043
+ */
2044
+ isRangeView() {
2045
+ return this.mode === 'range' && !this.isMobileDevice;
2046
+ }
2047
+ /**
2048
+ * Get current year month by period
2049
+ *
2050
+ * @returns {DatePickerMonthYearTypes} - month and year info
2051
+ */
2052
+ getCurrentYearMonthByPeriod() {
2053
+ const startMonthYear = {
2054
+ month: MonthNames[this.currentPeriod.current.month - 1],
2055
+ year: `${this.currentPeriod.current.year}`,
2056
+ };
2057
+ if (this.mode === 'range') {
2058
+ return [
2059
+ startMonthYear,
2060
+ {
2061
+ month: MonthNames[this.currentPeriod.endDate.month - 1],
2062
+ year: `${this.currentPeriod.endDate.year}`,
2063
+ },
2064
+ ];
2065
+ }
2066
+ else {
2067
+ return startMonthYear;
2068
+ }
2069
+ }
2070
+ /**
2071
+ * Initialize calendar clear observer
2072
+ */
2073
+ initCalendarPeriodUpdateObserver() {
2074
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(this.host, VegaInternalDatePickerCalendarUpdatePeriodByUser, this.setCurrentMonthPeriod.bind(this));
2075
+ }
2076
+ /**
2077
+ * Remove calendar clear observer
2078
+ */
2079
+ removeCalendarPeriodUpdateObserver() {
2080
+ DomNodeSubjectObserverFactory.removeUniqueObserverFromNode(this.host, VegaInternalDatePickerCalendarUpdatePeriodByUser);
2081
+ }
2082
+ }
2083
+ __decorate$7([
2084
+ MapToComponentField({ writable: true })
2085
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "currentPeriod", void 0);
2086
+ __decorate$7([
2087
+ MapToComponentField()
2088
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "host", void 0);
2089
+ __decorate$7([
2090
+ MapToComponentField()
2091
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "today", void 0);
2092
+ __decorate$7([
2093
+ MapToComponentField()
2094
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "mode", void 0);
2095
+ __decorate$7([
2096
+ MapToComponentField()
2097
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "format", void 0);
2098
+ __decorate$7([
2099
+ MapToComponentField()
2100
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "timezone", void 0);
2101
+ __decorate$7([
2102
+ MapToComponentField()
2103
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "minCalendarDate", void 0);
2104
+ __decorate$7([
2105
+ MapToComponentField()
2106
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "maxCalendarDate", void 0);
2107
+ __decorate$7([
2108
+ MapToComponentField()
2109
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "isMobileDevice", void 0);
2110
+ __decorate$7([
2111
+ MapToComponentField()
2112
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "monthYearChangeEventEmitter", void 0);
2113
+ __decorate$7([
2114
+ MapToComponentField()
2115
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "calendarSelection", void 0);
2116
+ __decorate$7([
2117
+ MapToComponentMethod('connectedCallback')
2118
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "connectedCallback", null);
2119
+ __decorate$7([
2120
+ MapToComponentMethod('disconnectedCallback')
2121
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "disconnectedCallback", null);
2122
+ __decorate$7([
2123
+ MapToComponentMethod('componentWillLoad')
2124
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "componentWillLoad", null);
2125
+ __decorate$7([
2126
+ MapToComponentMethod('watchMaxCalendarDate')
2127
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "watchMaxCalendarDate", null);
2128
+ __decorate$7([
2129
+ MapToComponentMethod('watchMinCalendarDate')
2130
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "watchMinCalendarDate", null);
2131
+ __decorate$7([
2132
+ MapToComponentMethod('watchCurrentPeriod')
2133
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "watchCurrentPeriod", null);
2134
+ __decorate$7([
2135
+ MapToComponentMethod('reset')
2136
+ ], VegaDatePickerCalendarCurrentPeriodController.prototype, "resetCurrentPeriod", null);
2137
+
2138
+ var __decorate$6 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2139
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2140
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2141
+ 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;
2142
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
2143
+ };
2144
+ /** Today controller */
2145
+ class VegaDatePickerCalendarTodayController extends VegaSlimmer {
2146
+ /** connectedCallback */
2147
+ connectedCallback() {
2148
+ this.setToday();
2149
+ }
2150
+ /** Listen time zone changed */
2151
+ watchTimezone() {
2152
+ this.setToday();
2153
+ }
2154
+ /**
2155
+ * Sets the current date based on the provided timezone or the system timezone if none is provided.
2156
+ */
2157
+ setToday() {
2158
+ this.today = CalendarDate.from(new Date(), this.timezone);
2159
+ }
2160
+ }
2161
+ __decorate$6([
2162
+ MapToComponentField()
2163
+ ], VegaDatePickerCalendarTodayController.prototype, "timezone", void 0);
2164
+ __decorate$6([
2165
+ MapToComponentField({ writable: true })
2166
+ ], VegaDatePickerCalendarTodayController.prototype, "today", void 0);
2167
+ __decorate$6([
2168
+ MapToComponentMethod('connectedCallback')
2169
+ ], VegaDatePickerCalendarTodayController.prototype, "connectedCallback", null);
2170
+ __decorate$6([
2171
+ MapToComponentMethod('watchTimezone')
2172
+ ], VegaDatePickerCalendarTodayController.prototype, "watchTimezone", null);
2173
+
2174
+ var __decorate$5 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2175
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2176
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2177
+ 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;
2178
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
2179
+ };
2180
+ class VegaDatePickerMonthItemRenderer extends VegaSlimmer {
2181
+ constructor() {
2182
+ super(...arguments);
2183
+ this.monthViewGenerator = new MonthViewGenerator();
2184
+ }
2185
+ render(type) {
2186
+ const period = type === 'end' ? this.currentPeriod.next() : this.currentPeriod;
2187
+ const periodView = this.monthViewGenerator.generate(period);
2188
+ return (h("div", { class: "month-item" },
2189
+ this.renderCurrentYearMonth(period),
2190
+ this.renderWeek(periodView),
2191
+ this.renderDays(periodView, period)));
2192
+ }
2193
+ renderCurrentYearMonth(period) {
2194
+ return (this.mode === 'range' &&
2195
+ !this.isMobileDevice && (h("vega-box", { class: "current-month-year" },
2196
+ this.translationSlimmer.t(period.current.getMonthName()),
2197
+ ' ',
2198
+ period.current.year)));
2199
+ }
2200
+ renderWeek(periodView) {
2201
+ return (h("vega-grid", { class: "month-item-weekdays-row", column: '7-auto', row: 1 }, periodView.weekdays.map((weekDay) => {
2202
+ return (h("div", { key: weekDay }, this.translationSlimmer.t(`${weekDay}-short`)));
2203
+ })));
2204
+ }
2205
+ renderDays(periodView, period) {
2206
+ return (h("vega-grid", { class: "container__days", column: '7-auto', row: this.staticHeight ? 6 : '6-auto' }, periodView.dateItems
2207
+ .flat()
2208
+ .filter((day) => day.month <= period.current.month || day.year < period.current.year)
2209
+ .map((day) => this.renderDay(day, period))));
2210
+ }
2211
+ renderDay(day, period) {
2212
+ const isCurrentMonth = day.month === period.current.month;
2213
+ const isLockedDate = this.isBeforeMinDate(day) || this.isAfterMaxDate(day);
2214
+ const currentRangeDates = this.getCurrentRangeDates();
2215
+ const isDisabled = this.isDateDisabled(day.toDate());
2216
+ const isInRange = day.isAfter(currentRangeDates[0]) && day.isBefore(currentRangeDates[1]);
2217
+ const canInterActive = isCurrentMonth && !isLockedDate && !isDisabled;
2218
+ return (h("div", { key: `${day.month}-${day.date}`, class: isCurrentMonth && {
2219
+ 'day-item': true,
2220
+ 'is-today': day.equal(this.today),
2221
+ 'is-start-date': day.equal(currentRangeDates[0]),
2222
+ 'is-in-range': isInRange,
2223
+ 'is-end-date': day.equal(currentRangeDates[1]),
2224
+ 'is-locked': isLockedDate,
2225
+ 'is-disabled': isDisabled,
2226
+ },
2227
+ /* eslint-disable-next-line react/jsx-no-bind */
2228
+ onClick: () => canInterActive && this.selectionController.onDayClick(day),
2229
+ /* eslint-disable-next-line react/jsx-no-bind */
2230
+ onMouseEnter: () => canInterActive && this.selectionController.onDayHover(day), onKeyDown: createEnterKeyHandlerToTriggerClick(), role: "menuitem", "aria-label": day.date, tabIndex: canInterActive ? 0 : -1 }, isCurrentMonth ? day.date : ''));
2231
+ }
2232
+ getCurrentRangeDates() {
2233
+ const startDate = this.calendarSelection.startDate;
2234
+ const endDate = this.calendarSelection.endDate;
2235
+ if (isCalendarDateType(startDate) && !endDate && this.hoverDate) {
2236
+ return this.hoverDate.isBefore(startDate)
2237
+ ? [this.hoverDate, startDate]
2238
+ : [startDate, this.hoverDate];
2239
+ }
2240
+ else if (!isCalendarDateType(startDate) && endDate && this.hoverDate) {
2241
+ return this.hoverDate.isBefore(endDate) ? [this.hoverDate, endDate] : [endDate, this.hoverDate];
2242
+ }
2243
+ else {
2244
+ return [startDate, endDate];
2245
+ }
2246
+ }
2247
+ isBeforeMinDate(day) {
2248
+ return this.minCalendarDate && day.isBefore(this.minCalendarDate);
2249
+ }
2250
+ isAfterMaxDate(day) {
2251
+ return this.maxCalendarDate && day.isAfter(this.maxCalendarDate);
2252
+ }
2253
+ }
2254
+ __decorate$5([
2255
+ MapToComponentField()
2256
+ ], VegaDatePickerMonthItemRenderer.prototype, "currentPeriod", void 0);
2257
+ __decorate$5([
2258
+ MapToComponentField()
2259
+ ], VegaDatePickerMonthItemRenderer.prototype, "today", void 0);
2260
+ __decorate$5([
2261
+ MapToComponentField()
2262
+ ], VegaDatePickerMonthItemRenderer.prototype, "translationSlimmer", void 0);
2263
+ __decorate$5([
2264
+ MapToComponentField()
2265
+ ], VegaDatePickerMonthItemRenderer.prototype, "hoverDate", void 0);
2266
+ __decorate$5([
2267
+ MapToComponentField()
2268
+ ], VegaDatePickerMonthItemRenderer.prototype, "maxCalendarDate", void 0);
2269
+ __decorate$5([
2270
+ MapToComponentField()
2271
+ ], VegaDatePickerMonthItemRenderer.prototype, "minCalendarDate", void 0);
2272
+ __decorate$5([
2273
+ MapToComponentField()
2274
+ ], VegaDatePickerMonthItemRenderer.prototype, "selectionController", void 0);
2275
+ __decorate$5([
2276
+ MapToComponentField()
2277
+ ], VegaDatePickerMonthItemRenderer.prototype, "calendarSelection", void 0);
2278
+ __decorate$5([
2279
+ MapToComponentField()
2280
+ ], VegaDatePickerMonthItemRenderer.prototype, "staticHeight", void 0);
2281
+ __decorate$5([
2282
+ MapToComponentField()
2283
+ ], VegaDatePickerMonthItemRenderer.prototype, "mode", void 0);
2284
+ __decorate$5([
2285
+ MapToComponentField()
2286
+ ], VegaDatePickerMonthItemRenderer.prototype, "size", void 0);
2287
+ __decorate$5([
2288
+ MapToComponentField()
2289
+ ], VegaDatePickerMonthItemRenderer.prototype, "isDateDisabled", void 0);
2290
+ __decorate$5([
2291
+ MapToComponentField()
2292
+ ], VegaDatePickerMonthItemRenderer.prototype, "isMobileDevice", void 0);
2293
+
2294
+ /** Calendar selection object. */
2295
+ class CalendarSelection {
2296
+ constructor(startDate, endDate, mode) {
2297
+ this.startDate = startDate;
2298
+ this.endDate = endDate;
2299
+ this.mode = mode;
2300
+ if (this.mode === 'range' && this.startDate && this.endDate && this.startDate.isAfter(this.endDate)) {
2301
+ const startDate = this.startDate;
2302
+ this.startDate = this.endDate;
2303
+ this.endDate = startDate;
2304
+ }
2305
+ }
2306
+ /**
2307
+ * Creates a CalendarSelection from a selection value.
2308
+ *
2309
+ * @param {DatePickerValueType<DatePickerModeType>} selection - The selection value.
2310
+ * @param {DatePickerModeType} mode - The mode of the date picker.
2311
+ * @param {string} format - The date format to use for string conversion.
2312
+ * @returns {CalendarSelection} - The created CalendarSelection instance.
2313
+ */
2314
+ static fromSelection(selection, mode, format) {
2315
+ let startDate = null;
2316
+ let endDate = null;
2317
+ if (this.isValidSelection(selection, mode, format)) {
2318
+ if (mode === 'single' && typeof selection === 'string') {
2319
+ const date = CalendarDate.fromString(selection, format);
2320
+ startDate = date;
2321
+ endDate = date;
2322
+ }
2323
+ else if (mode === 'range' && Array.isArray(selection)) {
2324
+ startDate = CalendarDate.fromString(selection[0], format);
2325
+ endDate = CalendarDate.fromString(selection[1], format);
2326
+ }
2327
+ }
2328
+ return new CalendarSelection(startDate, endDate, mode);
2329
+ }
2330
+ /**
2331
+ * Check if the selection is valid.
2332
+ *
2333
+ * @param {DatePickerValueType<DatePickerModeType>} selection - The selection value.
2334
+ * @param {DatePickerModeType} mode - The mode of the date picker.
2335
+ * @param {string} format - The date format to use for string conversion.
2336
+ * @returns {boolean} - True if the selection is valid, false otherwise.
2337
+ */
2338
+ static isValidSelection(selection, mode, format) {
2339
+ let isValid;
2340
+ switch (mode) {
2341
+ case 'single':
2342
+ isValid = this.isValidDateString(selection, format);
2343
+ break;
2344
+ case 'range':
2345
+ isValid =
2346
+ Array.isArray(selection) &&
2347
+ selection.length === 2 &&
2348
+ selection.every((item) => this.isValidDateString(item, format));
2349
+ break;
2350
+ }
2351
+ if (!isValid) {
2352
+ LogUtility.warn(`Invalid date picker calendar selection ${selection} for ${mode} mode`);
2353
+ }
2354
+ return isValid;
2355
+ }
2356
+ /**
2357
+ * Check if a date string is valid.
2358
+ *
2359
+ * @param {Nullable<string>} dateString - The date string to check.
2360
+ * @param {string} format - The date format to use for string conversion.
2361
+ * @returns {boolean} - True if the date string is valid, false otherwise.
2362
+ */
2363
+ static isValidDateString(dateString, format) {
2364
+ return ((dateString && typeof dateString === 'string' && !!CalendarDate.fromString(dateString, format)) ||
2365
+ dateString === '');
2366
+ }
2367
+ /**
2368
+ * Gets the selection value based on the current calendar selection.
2369
+ *
2370
+ * @param {string} format - The date format to use for string conversion.
2371
+ * @returns {DatePickerValueType<DatePickerModeType>} - The selection value.
2372
+ */
2373
+ toSelection(format) {
2374
+ var _a, _b, _c;
2375
+ if (this.mode === 'range') {
2376
+ return [((_a = this.startDate) === null || _a === void 0 ? void 0 : _a.toString(format)) || '', ((_b = this.endDate) === null || _b === void 0 ? void 0 : _b.toString(format)) || ''];
2377
+ }
2378
+ else {
2379
+ return ((_c = this.startDate) === null || _c === void 0 ? void 0 : _c.toString(format)) || '';
2380
+ }
2381
+ }
2382
+ /**
2383
+ * Checks if this calendar selection is equal to another.
2384
+ *
2385
+ * @param {CalendarSelection} other - The other calendar selection to compare with.
2386
+ * @returns {boolean} - True if both selections are equal, false otherwise.
2387
+ */
2388
+ equals(other) {
2389
+ if (!other)
2390
+ return false;
2391
+ const isStartDateEqual = this.startDate && other.startDate
2392
+ ? this.startDate.equal(other.startDate)
2393
+ : this.startDate === this.endDate;
2394
+ const isEndDateEqual = this.endDate && other.endDate
2395
+ ? this.endDate.equal(other.endDate)
2396
+ : this.endDate === other.endDate;
2397
+ return isStartDateEqual && isEndDateEqual;
2398
+ }
2399
+ /**
2400
+ * Checks if the calendar selection is completed.
2401
+ *
2402
+ * @returns {boolean} - True if the selection is completed, false otherwise.
2403
+ */
2404
+ isCompleted() {
2405
+ return (isCalendarDateType(this.startDate) &&
2406
+ (this.mode === 'range' ? isCalendarDateType(this.endDate) : true));
2407
+ }
2408
+ /**
2409
+ * Checks if the calendar selection is empty.
2410
+ *
2411
+ * @returns {boolean} - True if the selection is empty, false otherwise.
2412
+ */
2413
+ isEmpty() {
2414
+ return !isCalendarDateType(this.startDate) && !isCalendarDateType(this.endDate);
2415
+ }
2416
+ }
2417
+
2418
+ var __decorate$4 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2419
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2420
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2421
+ 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;
2422
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
2423
+ };
2424
+ /** Selection controller */
2425
+ class VegaDatePickerCalendarSelectionController extends VegaDatePickerCalendarStateBaseAbstract {
2426
+ /** componentWillLoad */
2427
+ componentWillLoad() {
2428
+ this.setCalendarSelectionBySelection(this.selection);
2429
+ }
2430
+ /**
2431
+ * Listen selection changed
2432
+ *
2433
+ * @param {DatePickerValueType<DatePickerModeType>} newSelection - newSelection.
2434
+ */
2435
+ watchSelection(newSelection) {
2436
+ const isChangeByUser = !this.isSameSelection(newSelection, this.calendarSelection.toSelection(this.format));
2437
+ // If the user changes the selection via property, we need to update the current period and set the calendar selection.
2438
+ // otherwise, we don't need to update.
2439
+ if (isChangeByUser) {
2440
+ this.setCalendarSelectionBySelection(newSelection);
2441
+ this.notifyPeriodChange();
2442
+ }
2443
+ }
2444
+ /** Reset selecting range date */
2445
+ resetRange() {
2446
+ const usePrevious = !this.calendarSelection.isCompleted() &&
2447
+ !this.calendarSelection.isEmpty() &&
2448
+ !!this.previousCalendarSelection;
2449
+ this.setCalendarSelectionBySelection(usePrevious ? this.previousCalendarSelection.toSelection(this.format) : this.selection);
2450
+ this.hoverDate = null;
2451
+ }
2452
+ /** Listen calendarSelection changed */
2453
+ watchCalendarSelection() {
2454
+ if (this.calendarSelection.isCompleted() || this.calendarSelection.isEmpty()) {
2455
+ this.setSelection(this.calendarSelection.toSelection(this.format));
2456
+ }
2457
+ }
2458
+ /** Clear the current selection */
2459
+ clear() {
2460
+ this.setCalendarSelectionByRange(null, null);
2461
+ this.hoverDate = null;
2462
+ }
2463
+ /**
2464
+ * Listen the day be clicked.
2465
+ *
2466
+ * @param {CalendarDate} day - clicked day.
2467
+ */
2468
+ onDayClick(day) {
2469
+ if (this.mode === 'single') {
2470
+ this.setCalendarSelectionByRange(day, day);
2471
+ }
2472
+ else if (this.mode === 'range') {
2473
+ if (this.calendarSelection.startDate && !this.calendarSelection.endDate) {
2474
+ // It second click of range mode, we should set min date as start and max date as end.
2475
+ // As also, the select action have completed, we should set the value same time.
2476
+ this.setCalendarSelectionByRange(this.calendarSelection.startDate, day);
2477
+ }
2478
+ else if (!this.calendarSelection.startDate && this.calendarSelection.endDate) {
2479
+ this.setCalendarSelectionByRange(this.calendarSelection.endDate, day);
2480
+ }
2481
+ else {
2482
+ // It first click of range mode, we only set start date.
2483
+ this.setCalendarSelectionByRange(day, null);
2484
+ }
2485
+ this.hoverDate = null;
2486
+ }
2487
+ }
2488
+ /**
2489
+ * Listen the day be hovered.
2490
+ * Need set the hoverDate after the first click in range mode.
2491
+ * For repick, we should clear start or end date according the input which have been clicked.
2492
+ * Note: repick is working at hover any day in range.
2493
+ *
2494
+ * @param {CalendarDate} day - hovered day.
2495
+ */
2496
+ onDayHover(day) {
2497
+ const clickedInputType = this.allowRepickController.getRepickType();
2498
+ if (clickedInputType && this.mode === 'range' && this.calendarSelection.isCompleted()) {
2499
+ clickedInputType === 'start'
2500
+ ? this.setCalendarSelectionByRange(null, this.calendarSelection.endDate)
2501
+ : this.setCalendarSelectionByRange(this.calendarSelection.startDate, null);
2502
+ }
2503
+ if (!this.calendarSelection.isEmpty() && !this.calendarSelection.isCompleted()) {
2504
+ this.hoverDate = day;
2505
+ }
2506
+ }
2507
+ /**
2508
+ * Sets calendar selection for date picker calendar based on selection value.
2509
+ *
2510
+ * @param {DatePickerValueType<DatePickerModeType>} selection - selection.
2511
+ */
2512
+ setCalendarSelectionBySelection(selection) {
2513
+ const calendarSelection = CalendarSelection.fromSelection(selection, this.mode, this.format);
2514
+ if (this.calendarSelection &&
2515
+ (this.calendarSelection.isCompleted() || this.calendarSelection.isEmpty())) {
2516
+ this.previousCalendarSelection = this.calendarSelection;
2517
+ }
2518
+ if (!calendarSelection.equals(this.calendarSelection)) {
2519
+ this.calendarSelection = calendarSelection;
2520
+ }
2521
+ // we should reset the selection while calendarSelection changed from inner,
2522
+ // such as reversed range correction.
2523
+ this.setSelection(calendarSelection.toSelection(this.format));
2524
+ }
2525
+ /**
2526
+ * Sets calendar selection for date picker calendar based on range dates.
2527
+ *
2528
+ * @param {Nullable<CalendarDate>} startDate - startDate.
2529
+ * @param {Nullable<CalendarDate>} endDate - endDate.
2530
+ */
2531
+ setCalendarSelectionByRange(startDate, endDate) {
2532
+ this.calendarSelection = new CalendarSelection(startDate, endDate, this.mode);
2533
+ }
2534
+ /**
2535
+ * Sets selection for date picker calendar and emits a change event with the new value.
2536
+ *
2537
+ * @param {DatePickerValueType<DatePickerModeType>} selection - selection.
2538
+ */
2539
+ setSelection(selection) {
2540
+ if (!this.isSameSelection(selection, this.selection)) {
2541
+ this.selection = selection;
2542
+ this.vegaSelectionChangeEventEmitter.emit(this.selection);
2543
+ }
2544
+ }
2545
+ /**
2546
+ * Check the previous selection and current selection is same.
2547
+ *
2548
+ * @param {DatePickerValueType<DatePickerModeType>} previous - New selection.
2549
+ * @param {DatePickerValueType<DatePickerModeType>} current - Old selection.
2550
+ * @returns {boolean} -
2551
+ */
2552
+ isSameSelection(previous, current) {
2553
+ if (this.mode === 'range' && Array.isArray(previous) && Array.isArray(current)) {
2554
+ return isArrayEqual(previous, current);
2555
+ }
2556
+ return previous === current;
2557
+ }
2558
+ /** Notify to update current period */
2559
+ notifyPeriodChange() {
2560
+ ChangeManager.notify(domNodeSubjectFactory.getSubject(this.host, VegaInternalDatePickerCalendarUpdatePeriodByUser), {});
2561
+ }
2562
+ }
2563
+ __decorate$4([
2564
+ MapToComponentField()
2565
+ ], VegaDatePickerCalendarSelectionController.prototype, "host", void 0);
2566
+ __decorate$4([
2567
+ MapToComponentField()
2568
+ ], VegaDatePickerCalendarSelectionController.prototype, "mode", void 0);
2569
+ __decorate$4([
2570
+ MapToComponentField()
2571
+ ], VegaDatePickerCalendarSelectionController.prototype, "format", void 0);
2572
+ __decorate$4([
2573
+ MapToComponentField({ writable: true })
2574
+ ], VegaDatePickerCalendarSelectionController.prototype, "selection", void 0);
2575
+ __decorate$4([
2576
+ MapToComponentField({ writable: true })
2577
+ ], VegaDatePickerCalendarSelectionController.prototype, "calendarSelection", void 0);
2578
+ __decorate$4([
2579
+ MapToComponentField({ writable: true })
2580
+ ], VegaDatePickerCalendarSelectionController.prototype, "hoverDate", void 0);
2581
+ __decorate$4([
2582
+ MapToComponentField()
2583
+ ], VegaDatePickerCalendarSelectionController.prototype, "clearEventEmitter", void 0);
2584
+ __decorate$4([
2585
+ MapToComponentField()
2586
+ ], VegaDatePickerCalendarSelectionController.prototype, "vegaSelectionChangeEventEmitter", void 0);
2587
+ __decorate$4([
2588
+ MapToComponentField()
2589
+ ], VegaDatePickerCalendarSelectionController.prototype, "allowRepickController", void 0);
2590
+ __decorate$4([
2591
+ MapToComponentMethod('componentWillLoad')
2592
+ ], VegaDatePickerCalendarSelectionController.prototype, "componentWillLoad", null);
2593
+ __decorate$4([
2594
+ MapToComponentMethod('watchSelection')
2595
+ ], VegaDatePickerCalendarSelectionController.prototype, "watchSelection", null);
2596
+ __decorate$4([
2597
+ MapToComponentMethod('reset')
2598
+ ], VegaDatePickerCalendarSelectionController.prototype, "resetRange", null);
2599
+ __decorate$4([
2600
+ MapToComponentMethod('watchCalendarSelection')
2601
+ ], VegaDatePickerCalendarSelectionController.prototype, "watchCalendarSelection", null);
2602
+
2603
+ var __decorate$3 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2604
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2605
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2606
+ 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;
2607
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
2608
+ };
2609
+ /** Current min and max calendar date controller. */
2610
+ class VegaDatePickerCalendarMinMaxDateController extends VegaSlimmer {
2611
+ /** componentWillLoad */
2612
+ componentWillLoad() {
2613
+ this.setMaxCalendarDate();
2614
+ this.setMinCalendarDate();
2615
+ }
2616
+ /** Listen maxDate changed */
2617
+ watchMaxDate() {
2618
+ this.setMaxCalendarDate();
2619
+ }
2620
+ /** Listen minDate changed */
2621
+ watchMinDate() {
2622
+ this.setMinCalendarDate();
2623
+ }
2624
+ /** Set maxCalendarDate */
2625
+ setMaxCalendarDate() {
2626
+ this.maxCalendarDate = CalendarDate.fromString(this.maxDate, this.format);
2627
+ }
2628
+ /** Set minCalendarDate */
2629
+ setMinCalendarDate() {
2630
+ this.minCalendarDate = CalendarDate.fromString(this.minDate, this.format);
2631
+ }
2632
+ }
2633
+ __decorate$3([
2634
+ MapToComponentField()
2635
+ ], VegaDatePickerCalendarMinMaxDateController.prototype, "maxDate", void 0);
2636
+ __decorate$3([
2637
+ MapToComponentField()
2638
+ ], VegaDatePickerCalendarMinMaxDateController.prototype, "minDate", void 0);
2639
+ __decorate$3([
2640
+ MapToComponentField()
2641
+ ], VegaDatePickerCalendarMinMaxDateController.prototype, "format", void 0);
2642
+ __decorate$3([
2643
+ MapToComponentField({ writable: true })
2644
+ ], VegaDatePickerCalendarMinMaxDateController.prototype, "maxCalendarDate", void 0);
2645
+ __decorate$3([
2646
+ MapToComponentField({ writable: true })
2647
+ ], VegaDatePickerCalendarMinMaxDateController.prototype, "minCalendarDate", void 0);
2648
+ __decorate$3([
2649
+ MapToComponentMethod('componentWillLoad')
2650
+ ], VegaDatePickerCalendarMinMaxDateController.prototype, "componentWillLoad", null);
2651
+ __decorate$3([
2652
+ MapToComponentMethod('watchMaxDate')
2653
+ ], VegaDatePickerCalendarMinMaxDateController.prototype, "watchMaxDate", null);
2654
+ __decorate$3([
2655
+ MapToComponentMethod('watchMinDate')
2656
+ ], VegaDatePickerCalendarMinMaxDateController.prototype, "watchMinDate", null);
2657
+
2658
+ var __decorate$2 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2659
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2660
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2661
+ 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;
2662
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
2663
+ };
2664
+ /** Allow repick controller. */
2665
+ class VegaDatePickerCalendarAllowRepickController extends VegaSlimmer {
2666
+ /**
2667
+ * Trigger repick
2668
+ *
2669
+ * @param {DatePickerCalendarRepickType} type - The type of repick.
2670
+ */
2671
+ triggerRepick(type) {
2672
+ this.repickType = type;
2673
+ if (type === 'end') {
2674
+ this.setEndDateAsCurrentMonthPeriod();
2675
+ }
2676
+ }
2677
+ /** while selection completed, we should clear repick type */
2678
+ watchCalendarSelection() {
2679
+ if (this.calendarSelection.isCompleted()) {
2680
+ this.repickType = null;
2681
+ }
2682
+ }
2683
+ /**
2684
+ * Get triggered repick type.
2685
+ *
2686
+ * @returns {DatePickerCalendarRepickType} - Repick type.
2687
+ */
2688
+ getRepickType() {
2689
+ return this.repickType;
2690
+ }
2691
+ /**
2692
+ * Set end date as current period.
2693
+ * - while start date and end date in same month of year, we set startDate as current period
2694
+ * - while in range mobile device, since we only render on month, so set the end date at current period
2695
+ * - while in range desktop devide, we set previous month as current period to keep end date is in second month.
2696
+ */
2697
+ setEndDateAsCurrentMonthPeriod() {
2698
+ const startDate = this.calendarSelection.startDate;
2699
+ const endDate = this.calendarSelection.endDate;
2700
+ if (endDate) {
2701
+ const date = isCalendarDateType(startDate) && startDate.compare(endDate).inMonth
2702
+ ? startDate
2703
+ : this.isMobileDevice
2704
+ ? endDate
2705
+ : endDate.add(0, -1);
2706
+ this.currentPeriodController.updateCalendarPeriod(new MonthPeriod(date));
2707
+ }
2708
+ }
2709
+ }
2710
+ __decorate$2([
2711
+ MapToComponentField()
2712
+ ], VegaDatePickerCalendarAllowRepickController.prototype, "calendarSelection", void 0);
2713
+ __decorate$2([
2714
+ MapToComponentField()
2715
+ ], VegaDatePickerCalendarAllowRepickController.prototype, "isMobileDevice", void 0);
2716
+ __decorate$2([
2717
+ MapToComponentField()
2718
+ ], VegaDatePickerCalendarAllowRepickController.prototype, "currentPeriodController", void 0);
2719
+ __decorate$2([
2720
+ MapToComponentMethod('triggerRepick')
2721
+ ], VegaDatePickerCalendarAllowRepickController.prototype, "triggerRepick", null);
2722
+ __decorate$2([
2723
+ MapToComponentMethod('watchCalendarSelection')
2724
+ ], VegaDatePickerCalendarAllowRepickController.prototype, "watchCalendarSelection", null);
2725
+
2726
+ var __decorate$1 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2727
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2728
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2729
+ 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;
2730
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
2731
+ };
2732
+ class VegaDatePickerCalendarHeaderRenderer extends VegaSlimmer {
2733
+ render() {
2734
+ return (h("vega-flex", { class: "month-item-header", alignItems: "center" },
2735
+ this.renderSwitcher(),
2736
+ this.yearMonthSwitcherRender.render()));
2737
+ }
2738
+ renderSwitcher() {
2739
+ return (h("vega-flex", { gap: "size-8", alignItems: "center" },
2740
+ this.renderPrevIcon(),
2741
+ this.renderToday(),
2742
+ this.renderNextIcon()));
2743
+ }
2744
+ renderPrevIcon() {
2745
+ const startDate = this.currentPeriod.current.firstDateOfMonth();
2746
+ const isDisabled = this.minCalendarDate &&
2747
+ (startDate.isBefore(this.minCalendarDate) || startDate.equal(this.minCalendarDate));
2748
+ return (h("vega-button-circle", { class: {
2749
+ 'button-previous-month': true,
2750
+ 'disabled': isDisabled,
2751
+ }, variant: "icon-only", icon: VegaInternalIconManager.getIconKey('chevron-left'), ref: (ref) => {
2752
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaClick, () => {
2753
+ this.currentPeriodController.gotoPreviousPeriod();
2754
+ });
2755
+ }, iconColor: isDisabled ? 'text-disabled' : 'text-link', size: this.getNavigationIconSize(), disabled: isDisabled }));
2756
+ }
2757
+ renderNextIcon() {
2758
+ const period = this.mode === 'range' ? this.currentPeriod.next() : this.currentPeriod;
2759
+ const endDate = period.current.lastDateOfMonth();
2760
+ const isDisabled = this.maxCalendarDate &&
2761
+ (endDate.isAfter(this.maxCalendarDate) || endDate.equal(this.maxCalendarDate));
2762
+ return (h("vega-button-circle", { class: {
2763
+ 'button-next-month': true,
2764
+ 'disabled': isDisabled,
2765
+ }, variant: "icon-only", icon: VegaInternalIconManager.getIconKey('chevron-right'), ref: (ref) => {
2766
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaClick, () => {
2767
+ this.currentPeriodController.gotoNextPeriod();
2768
+ });
2769
+ }, size: this.getNavigationIconSize(), iconColor: isDisabled ? 'text-disabled' : 'text-link', disabled: isDisabled }));
2770
+ }
2771
+ renderToday() {
2772
+ const hasLabel = this.mode === 'range' && !this.isMobileDevice && this.size !== 'small';
2773
+ return (h("vega-button-link", { class: {
2774
+ 'button-today': true,
2775
+ 'with-label': hasLabel,
2776
+ }, label: hasLabel ? this.translationSlimmer.t('Today') : '', ref: (ref) => {
2777
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaClick, () => {
2778
+ this.currentPeriodController.updateCalendarPeriod(new MonthPeriod(this.today, true, this.timezone));
2779
+ });
2780
+ }, size: this.size === 'large' ? 'default' : 'small', icon: VegaInternalIconManager.getIconKey('bulls-eye') }));
2781
+ }
2782
+ getNavigationIconSize() {
2783
+ if (this.size === 'large')
2784
+ return 'small';
2785
+ return 'extra-small';
2786
+ }
2787
+ }
2788
+ (() => {
2789
+ VegaInternalIconManager.register({
2790
+ 'chevron-left': Icons['chevron-left'],
2791
+ 'chevron-right': Icons['chevron-right'],
2792
+ 'bulls-eye': Icons['bulls-eye'],
2793
+ });
2794
+ })();
2727
2795
  __decorate$1([
2728
- InjectVegaSlimmer()
2729
- ], VegaDatePicker.prototype, "vegaDatePickerSingleInputRenderer", void 0);
2796
+ MapToComponentField()
2797
+ ], VegaDatePickerCalendarHeaderRenderer.prototype, "currentPeriod", void 0);
2730
2798
  __decorate$1([
2731
- InjectVegaSlimmer()
2732
- ], VegaDatePicker.prototype, "vegaDatePickerRangeInputRenderer", void 0);
2799
+ MapToComponentField()
2800
+ ], VegaDatePickerCalendarHeaderRenderer.prototype, "today", void 0);
2733
2801
  __decorate$1([
2734
- InjectVegaSlimmer()
2735
- ], VegaDatePicker.prototype, "vegaDatePickerCalendarRenderer", void 0);
2802
+ MapToComponentField()
2803
+ ], VegaDatePickerCalendarHeaderRenderer.prototype, "translationSlimmer", void 0);
2736
2804
  __decorate$1([
2737
- InjectVegaSlimmer()
2738
- ], VegaDatePicker.prototype, "formFieldController", void 0);
2805
+ MapToComponentField()
2806
+ ], VegaDatePickerCalendarHeaderRenderer.prototype, "yearMonthSwitcherRender", void 0);
2739
2807
  __decorate$1([
2740
- InjectVegaSlimmer()
2741
- ], VegaDatePicker.prototype, "monthYearChangeEventEmitter", void 0);
2808
+ MapToComponentField()
2809
+ ], VegaDatePickerCalendarHeaderRenderer.prototype, "mode", void 0);
2742
2810
  __decorate$1([
2743
- InjectVegaSlimmer()
2744
- ], VegaDatePicker.prototype, "changeEventEmitter", void 0);
2811
+ MapToComponentField()
2812
+ ], VegaDatePickerCalendarHeaderRenderer.prototype, "currentPeriodController", void 0);
2745
2813
  __decorate$1([
2746
- InjectVegaSlimmer()
2747
- ], VegaDatePicker.prototype, "inputEventPrevent", void 0);
2814
+ MapToComponentField()
2815
+ ], VegaDatePickerCalendarHeaderRenderer.prototype, "maxCalendarDate", void 0);
2748
2816
  __decorate$1([
2749
- InjectVegaSlimmer()
2750
- ], VegaDatePicker.prototype, "vegaComponentUsageRuntimeMetricsSlimmer", void 0);
2817
+ MapToComponentField()
2818
+ ], VegaDatePickerCalendarHeaderRenderer.prototype, "minCalendarDate", void 0);
2751
2819
  __decorate$1([
2752
- InjectVegaSlimmer()
2753
- ], VegaDatePicker.prototype, "monthYearDropdownRenderer", void 0);
2820
+ MapToComponentField()
2821
+ ], VegaDatePickerCalendarHeaderRenderer.prototype, "size", void 0);
2754
2822
  __decorate$1([
2755
- InjectVegaSlimmer()
2756
- ], VegaDatePicker.prototype, "vegaDatePickerMonthYearChangeEventController", void 0);
2823
+ MapToComponentField()
2824
+ ], VegaDatePickerCalendarHeaderRenderer.prototype, "timezone", void 0);
2757
2825
  __decorate$1([
2758
- ComponentLoadRequired()
2759
- ], VegaDatePicker.prototype, "watchValue", null);
2760
- VegaDatePicker.style = vegaDatePickerCss;
2826
+ MapToComponentField()
2827
+ ], VegaDatePickerCalendarHeaderRenderer.prototype, "isMobileDevice", void 0);
2761
2828
 
2762
- const vegaDatePickerCalendarCss = ":host{--vega-litepicker-container-width:calc(var(--vega-litepicker-day-width) * 7);--vega-litepicker-day-width:40px;--vega-litepicker-day-height:40px}.litepicker{display:none}.litepicker button{border-width:0px;background:none}.litepicker .container__main{display:flex;flex-direction:column;padding:32px;border-radius:12px;background-color:rgba(var(--v-bg-primary, 252, 252, 252, 1));box-shadow:var(--v-shadow-dropdown-menu, 0px 2px 4px -2px rgba(0, 0, 0, 0.1), 0px 4px 6px -1px rgba(0, 0, 0, 0.1));border:1px solid rgba(var(--v-border-input-field, 171, 198, 216, 1))}@media screen and (min-width: 320px) and (max-width: 350px){.litepicker .container__main{padding:12px}}.litepicker .container__months{display:flex}.litepicker .container__months.columns-2{width:100%}@media (min-width: 320px){.litepicker .container__months.columns-2{flex-direction:column}}@media (min-width: 768px){.litepicker .container__months.columns-2{flex-direction:row}}.litepicker .container__months .month-item{box-sizing:content-box;position:relative;width:var(--vega-litepicker-container-width);z-index:1}@media (min-width: 768px){.litepicker .container__months.columns-2 .month-item:first-of-type{padding-right:32px}}@media (min-width: 768px){.litepicker .container__months.columns-2 .month-item:last-of-type{padding-left:32px}}.litepicker .container__months .month-item:nth-child(2)::before{background-color:rgba(var(--v-bg-divider, 171, 198, 216, 1));margin-top:32px;margin-bottom:32px;position:absolute;top:0px;right:0px;bottom:0px;left:0px;display:none;width:1px;content:\"\"}@media (min-width: 768px){.litepicker .container__months .month-item:nth-child(2)::before{display:block}}.litepicker .container__months .month-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;text-align:center;font-family:\"Inter\", sans-serif;font-size:16px;font-weight:700;line-height:24px;color:rgba(var(--v-text-primary, 32, 54, 69, 1))}@media screen and (min-width: 768px) and (max-width: 1023px){.litepicker .container__months .month-item-header{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:700;line-height:24px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.litepicker .container__months .month-item-header{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:700;line-height:24px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.litepicker .container__months .month-item-header{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:700;line-height:24px}}.litepicker .container__months .month-item-header div>.month-item-name{margin-right:5px}.litepicker .container__months .month-item-header .button-previous-month,.litepicker .container__months .month-item-header .button-next-month{visibility:hidden;text-decoration:none;cursor:default}.litepicker .container__months .month-item-header .button-previous-month *,.litepicker .container__months .month-item-header .button-next-month *{pointer-events:none}.litepicker .container__months .month-item-header .button-previous-month>svg,.litepicker .container__months .month-item-header .button-previous-month>img{color:rgba(var(--v-text-primary, 32, 54, 69, 1))}.litepicker .container__months .month-item-header .button-next-month>svg,.litepicker .container__months .month-item-header .button-next-month>img{color:rgba(var(--v-text-primary, 32, 54, 69, 1))}.litepicker .container__months .month-item-weekdays-row{display:flex;color:rgba(var(--v-text-primary, 32, 54, 69, 1));font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}@media screen and (min-width: 768px) and (max-width: 1023px){.litepicker .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.litepicker .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.litepicker .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}.litepicker .container__months .month-item-weekdays-row>div{padding-top:12px;padding-bottom:12px;padding-left:8px;padding-right:8px;display:flex;align-items:center;justify-content:center;font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px;width:var(--vega-litepicker-day-width)}@media screen and (min-width: 768px) and (max-width: 1023px){.litepicker .container__months .month-item-weekdays-row>div{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.litepicker .container__months .month-item-weekdays-row>div{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.litepicker .container__months .month-item-weekdays-row>div{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}.litepicker .container__months .month-item:first-child .button-previous-month{visibility:visible}.litepicker .container__months .month-item:last-child .button-next-month{visibility:visible}.litepicker .container__months .month-item.no-previous-month .button-previous-month{visibility:hidden}.litepicker .container__months .month-item.no-next-month .button-next-month{visibility:hidden}.litepicker .container__days{display:flex;flex-wrap:wrap;justify-content:flex-start;text-align:center}.litepicker.static-height .container__days{align-content:flex-start;height:calc(var(--vega-litepicker-day-height) * 6)}.litepicker .container__days>div,.litepicker .container__days>a{padding:4px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;height:var(--vega-litepicker-day-height);width:var(--vega-litepicker-day-width)}.litepicker .container__days .day-item{color:rgba(var(--v-text-primary, 32, 54, 69, 1));font-family:\"Inter\", sans-serif;font-size:16px;font-weight:500;line-height:22px;letter-spacing:0px;font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;text-align:center;border-radius:9999px;cursor:default}@media screen and (min-width: 768px) and (max-width: 1023px){.litepicker .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:500;line-height:22px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.litepicker .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:500;line-height:22px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.litepicker .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:500;line-height:22px;letter-spacing:0px}}@media screen and (min-width: 768px) and (max-width: 1023px){.litepicker .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.litepicker .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.litepicker .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px}}.litepicker .container__days .day-item:not(.is-locked):active{background-color:rgba(var(--v-bg-action-active, 29, 65, 195, 1));color:rgba(var(--v-text-inverted-primary, 252, 252, 252, 1));border-width:0px}.litepicker .day-item.is-start-date.is-end-date.is-locked:active{background-color:rgba(var(--v-bg-action, 19, 98, 226, 1))}.litepicker .container__days .day-item:hover:before{border:1px solid rgba(var(--v-border-input-field-hover, 115, 160, 190, 1));border-radius:9999px;position:absolute;top:0px;right:0px;bottom:0px;left:0px;content:\" \";z-index:-1}.litepicker .container__days .day-item.is-locked:hover:before,html.dark .litepicker .container__days .day-item.is-locked:hover:before{border-style:none}.litepicker .container__days .day-item:hover{position:relative}.litepicker .container__days .day-item.is-today{color:rgba(var(--v-text-link, 19, 98, 226, 1));font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}@media screen and (min-width: 768px) and (max-width: 1023px){.litepicker .container__days .day-item.is-today{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.litepicker .container__days .day-item.is-today{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.litepicker .container__days .day-item.is-today{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}.litepicker .container__days .day-item.is-in-range{border-radius:0px;position:relative;z-index:2;background-color:rgba(var(--v-bg-date-picker-range, 229, 239, 255, 1))}.litepicker .container__days .day-item:not(.is-locked).is-in-range:hover:before{border:1px solid rgba(var(--v-border-input-field-hover, 115, 160, 190, 1));border-radius:9999px;position:absolute;top:0px;right:0px;bottom:0px;left:0px;content:\" \";z-index:-1}.litepicker .container__days .day-item.is-start-date{background-color:rgba(var(--v-bg-action, 19, 98, 226, 1));border-radius:9999px;font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px;color:rgba(var(--v-text-inverted-primary, 252, 252, 252, 1));position:relative}@media screen and (min-width: 768px) and (max-width: 1023px){.litepicker .container__days .day-item.is-start-date{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.litepicker .container__days .day-item.is-start-date{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.litepicker .container__days .day-item.is-start-date{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}.litepicker .container__days .day-item.is-start-date:hover:before{z-index:2}.litepicker .container__days .day-item.is-start-date:after{position:absolute;top:0px;right:0px;bottom:0px;left:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-top-left-radius:9999px;border-bottom-left-radius:9999px;content:\" \";z-index:-1;background-color:rgba(var(--v-bg-date-picker-range, 229, 239, 255, 1))}.litepicker .container__days .day-item.is-start-date.is-flipped{border-radius:9999px;position:relative}.litepicker .container__days .day-item.is-start-date.is-flipped:after{position:absolute;top:0px;right:0px;bottom:0px;left:0px;border-top-left-radius:0px;border-bottom-left-radius:0px;border-top-right-radius:9999px;border-bottom-right-radius:9999px;content:\" \";z-index:-1}.litepicker .container__days .day-item.is-end-date{background-color:rgba(var(--v-bg-action, 19, 98, 226, 1));border-radius:9999px;font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px;color:rgba(var(--v-text-inverted-primary, 252, 252, 252, 1));position:relative}@media screen and (min-width: 768px) and (max-width: 1023px){.litepicker .container__days .day-item.is-end-date{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.litepicker .container__days .day-item.is-end-date{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.litepicker .container__days .day-item.is-end-date{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}.litepicker .container__days .day-item.is-end-date:hover:before{z-index:2}.litepicker .container__days .day-item.is-end-date:after{position:absolute;top:0px;right:0px;bottom:0px;left:0px;border-top-left-radius:0px;border-bottom-left-radius:0px;border-top-right-radius:9999px;border-bottom-right-radius:9999px;content:\" \";z-index:-1;background-color:rgba(var(--v-bg-date-picker-range, 229, 239, 255, 1))}.litepicker .container__days .day-item.is-end-date.is-flipped{border-radius:9999px;position:relative}.litepicker .container__days .day-item.is-end-date.is-flipped:after{position:absolute;top:0px;right:0px;bottom:0px;left:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-top-left-radius:9999px;border-bottom-left-radius:9999px;content:\" \";z-index:-1}.litepicker .container__days .day-item.is-start-date.is-end-date{border-radius:9999px}.litepicker .container__days .day-item.is-start-date.is-end-date:after,html.dark .litepicker .container__days .day-item.is-start-date.is-end-date:after{background:none}.litepicker .container__tooltip{display:none}.litepicker .container__days .day-item.is-locked{color:rgba(var(--v-text-disabled, 176, 180, 181, 1));cursor:not-allowed}.litepicker .container__days .day-item.is-disabled{text-decoration:line-through}.litepicker.mobilefriendly[data-plugins*=mobilefriendly] .container__days>div{height:var(--vega-litepicker-day-height)}.litepicker .clear-button{font-family:\"Inter\", sans-serif;font-size:18px;font-weight:700;line-height:24px;letter-spacing:0px;color:rgba(var(--v-text-link, 19, 98, 226, 1))}@media screen and (min-width: 768px) and (max-width: 1023px){.litepicker .clear-button{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.litepicker .clear-button{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.litepicker .clear-button{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:700;line-height:24px;letter-spacing:0px}}.litepicker .footer-container{margin-top:16px;height:24px}:host(.vega-force-hidden){display:none !important}.litepicker{left:initial !important;top:initial !important;position:initial !important}:host{position:absolute}.button-next-month svg,.button-previous-month svg{width:12px;height:16px}.litepicker .month-item-header>div.dropdown-section{display:flex;gap:12px}.litepicker .month-item-header>div.dropdown-section .dropdown-current-value{position:relative;display:flex;gap:4px;align-items:center;cursor:pointer}.litepicker .month-item-header>div.dropdown-section .dropdown-current-value.active{color:rgba(var(--v-text-link-active, 29, 65, 195, 1))}.litepicker .month-item-header>div.dropdown-section .dropdown-current-value.active:active{color:rgba(var(--v-text-link-active, 29, 65, 195, 1))}.litepicker .month-item-header>div.dropdown-section .dropdown-current-value.active:hover{color:rgba(var(--v-text-link-hover, 4, 112, 236, 1))}.litepicker .month-item-header>div.dropdown-section .dropdown-current-value.active:focus-visible{color:rgba(var(--v-text-link-focus, 4, 112, 236, 1))}";
2829
+ const vegaDatePickerCalendarCss = ":host{--vega-litepicker-container-width:calc(var(--vega-litepicker-day-width) * 7)}.calendar,.calendar .container__main,.calendar .container__months{height:100%}:host(.small.range) .calendar.static-height .container__main,:host(.regular.range) .calendar.static-height .container__main,:host(.large.range) .calendar.static-height .container__main{aspect-ratio:1/1}:host .month-item-header .button-today::part(link){color:rgba(var(--v-text-link, 19, 98, 226, 1));vertical-align:top}:host .month-item-header vega-dropdown .month-item-name,:host .month-item-header vega-dropdown .month-item-year{display:flex;gap:8px;align-items:center;cursor:pointer;background-color:rgba(var(--v-bg-primary, 252, 252, 252, 1));border:1px solid rgba(var(--v-border-input-field, 171, 198, 216, 1))}:host .month-item-header vega-dropdown.active .month-item-name,:host .month-item-header vega-dropdown.active .month-item-year{outline:2px solid rgba(var(--v-border-color-action, 19, 98, 226, 1));outline-offset:3px;border:1px solid rgba(var(--v-border-color-input-field-focus, 19, 98, 226, 1))}:host .month-item-header .button-previous-month.disabled,:host .month-item-header .button-next-month.disabled{pointer-events:none}:host(.small.single) vega-dropdown .month-item-name span{max-width:48px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(.small){--vega-litepicker-day-width:28px;--vega-litepicker-day-height:28px;--vega-date-picker-calendar-range-space-size:16px}:host(.small) .current-month-year{text-align:center;color:rgba(var(--v-text-primary, 32, 54, 69, 1));font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.small) .current-month-year{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.small) .current-month-year{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.small) .current-month-year{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}:host(.small) .month-item-header{gap:8px;margin-bottom:12px}:host(.small) .month-item-header .button-today{height:16px}:host(.small) .month-item-header .month-item-name,:host(.small) .month-item-header .month-item-year{color:rgba(var(--v-text-primary, 32, 54, 69, 1));font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.small) .month-item-header .month-item-name,:host(.small) .month-item-header .month-item-year{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.small) .month-item-header .month-item-name,:host(.small) .month-item-header .month-item-year{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.small) .month-item-header .month-item-name,:host(.small) .month-item-header .month-item-year{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}:host(.small) .month-item-header .month-item-name{margin-right:4px}:host(.small) .month-item-header vega-dropdown .month-item-name{margin-right:8px}:host(.small) .month-item-header vega-dropdown .month-item-name,:host(.small) .month-item-header vega-dropdown .month-item-year{border-radius:4px;padding-left:4px;padding-right:4px;font-family:\"Inter\", sans-serif;font-size:12px;font-weight:400;line-height:16px;gap:2px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.small) .month-item-header vega-dropdown .month-item-name,:host(.small) .month-item-header vega-dropdown .month-item-year{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:400;line-height:16px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.small) .month-item-header vega-dropdown .month-item-name,:host(.small) .month-item-header vega-dropdown .month-item-year{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:400;line-height:16px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.small) .month-item-header vega-dropdown .month-item-name,:host(.small) .month-item-header vega-dropdown .month-item-year{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:400;line-height:16px}}:host(.small) .month-item-header vega-dropdown .month-item-name vega-icon,:host(.small) .month-item-header vega-dropdown .month-item-year vega-icon{width:12px;height:12px}:host(.small) .month-item-header .small-month-item-name{margin-right:8px}:host(.small) .month-item-header .small-month-item-name::part(label-container),:host(.small) .month-item-header .small-month-item-year::part(label-container){font-size:14px}:host(.small) .month-item .current-month-year{margin-bottom:4px}:host(.small) .calendar .container__main{max-width:360px;max-height:360px}:host(.small) .calendar .container__months .month-item-header{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px;margin-bottom:4px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.small) .calendar .container__months .month-item-header{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.small) .calendar .container__months .month-item-header{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.small) .calendar .container__months .month-item-header{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}:host(.small) .calendar .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.small) .calendar .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.small) .calendar .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.small) .calendar .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}:host(.small) .calendar .container__months .month-item-weekdays-row div{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.small) .calendar .container__months .month-item-weekdays-row div{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.small) .calendar .container__months .month-item-weekdays-row div{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.small) .calendar .container__months .month-item-weekdays-row div{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}:host(.small) .calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:400;line-height:16px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.small) .calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:400;line-height:16px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.small) .calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:400;line-height:16px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.small) .calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:400;line-height:16px}}:host(.small) .calendar .container__days .day-item .is-start-date,:host(.small) .calendar .container__days .day-item .is-end-date{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.small) .calendar .container__days .day-item .is-start-date,:host(.small) .calendar .container__days .day-item .is-end-date{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.small) .calendar .container__days .day-item .is-start-date,:host(.small) .calendar .container__days .day-item .is-end-date{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.small) .calendar .container__days .day-item .is-start-date,:host(.small) .calendar .container__days .day-item .is-end-date{font-family:\"Inter\", sans-serif;font-size:12px;font-weight:700;line-height:16px;letter-spacing:0px}}:host(.small.range) .calendar .container__main{width:100%;max-width:600px;max-height:360px}:host(.regular){--vega-litepicker-day-width:40px;--vega-litepicker-day-height:40px;--vega-date-picker-calendar-range-space-size:24px}:host(.regular) .current-month-year{text-align:center;color:rgba(var(--v-text-primary, 32, 54, 69, 1));font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.regular) .current-month-year{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.regular) .current-month-year{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.regular) .current-month-year{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}:host(.regular) .month-item-header{gap:16px;margin-bottom:24px}:host(.regular) .month-item-header .button-today{height:16px}:host(.regular) .month-item-header .button-today.with-label{height:18px}:host(.regular) .month-item-header .month-item-name,:host(.regular) .month-item-header .month-item-year{color:rgba(var(--v-text-primary, 32, 54, 69, 1));font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.regular) .month-item-header .month-item-name,:host(.regular) .month-item-header .month-item-year{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.regular) .month-item-header .month-item-name,:host(.regular) .month-item-header .month-item-year{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.regular) .month-item-header .month-item-name,:host(.regular) .month-item-header .month-item-year{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}:host(.regular) .month-item-header .month-item-name{margin-right:4px}:host(.regular) .month-item-header vega-dropdown .month-item-name{margin-right:16px}:host(.regular) .month-item-header vega-dropdown .month-item-name,:host(.regular) .month-item-header vega-dropdown .month-item-year{border-radius:4px;padding-left:8px;padding-right:8px;font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:16px;padding-top:3px;padding-bottom:3px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.regular) .month-item-header vega-dropdown .month-item-name,:host(.regular) .month-item-header vega-dropdown .month-item-year{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:16px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.regular) .month-item-header vega-dropdown .month-item-name,:host(.regular) .month-item-header vega-dropdown .month-item-year{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:16px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.regular) .month-item-header vega-dropdown .month-item-name,:host(.regular) .month-item-header vega-dropdown .month-item-year{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:16px}}:host(.regular) .month-item .current-month-year{margin-bottom:12px}:host(.regular) .calendar .container__main{max-width:450px;max-height:450px}:host(.regular) .calendar .container__months .month-item-header{margin-bottom:12px}:host(.regular) .calendar .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.regular) .calendar .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.regular) .calendar .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.regular) .calendar .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}:host(.regular) .calendar .container__months .month-item-weekdays-row div{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.regular) .calendar .container__months .month-item-weekdays-row div{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.regular) .calendar .container__months .month-item-weekdays-row div{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.regular) .calendar .container__months .month-item-weekdays-row div{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}:host(.regular) .calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.regular) .calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.regular) .calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.regular) .calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px}}:host(.regular) .calendar .container__days .day-item .is-start-date,:host(.regular) .calendar .container__days .day-item .is-end-date{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.regular) .calendar .container__days .day-item .is-start-date,:host(.regular) .calendar .container__days .day-item .is-end-date{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.regular) .calendar .container__days .day-item .is-start-date,:host(.regular) .calendar .container__days .day-item .is-end-date{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.regular) .calendar .container__days .day-item .is-start-date,:host(.regular) .calendar .container__days .day-item .is-end-date{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}:host(.regular.range) .calendar .container__main{width:100%;max-width:900px;max-height:450px}:host(.large){--vega-litepicker-day-width:56px;--vega-litepicker-day-height:56px;--vega-date-picker-calendar-range-space-size:40px}:host(.large) .current-month-year{text-align:center;color:rgba(var(--v-text-primary, 32, 54, 69, 1));font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.large) .current-month-year{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.large) .current-month-year{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.large) .current-month-year{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}:host(.large) .month-item-header{gap:16px;margin-bottom:24px}:host(.large) .month-item-header .button-today{height:16px}:host(.large) .month-item-header .button-today.with-label{height:24px}:host(.large) .month-item-header .month-item-name{margin-right:4px}:host(.large) .month-item-header .month-item-name,:host(.large) .month-item-header .month-item-year{color:rgba(var(--v-text-primary, 32, 54, 69, 1));font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px;gap:8px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.large) .month-item-header .month-item-name,:host(.large) .month-item-header .month-item-year{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.large) .month-item-header .month-item-name,:host(.large) .month-item-header .month-item-year{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.large) .month-item-header .month-item-name,:host(.large) .month-item-header .month-item-year{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}:host(.large) .month-item-header vega-dropdown .month-item-name{margin-right:24px}:host(.large) .month-item-header vega-dropdown .month-item-name,:host(.large) .month-item-header vega-dropdown .month-item-year{border-radius:8px;padding-left:12px;padding-right:12px;font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px;padding-top:7px;padding-bottom:7px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.large) .month-item-header vega-dropdown .month-item-name,:host(.large) .month-item-header vega-dropdown .month-item-year{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.large) .month-item-header vega-dropdown .month-item-name,:host(.large) .month-item-header vega-dropdown .month-item-year{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.large) .month-item-header vega-dropdown .month-item-name,:host(.large) .month-item-header vega-dropdown .month-item-year{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}:host(.large) .month-item .current-month-year{margin-bottom:16px}:host(.large) .calendar .container__main{max-width:600px;max-height:600px}:host(.large) .calendar .container__months .month-item-header{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px;margin-bottom:16px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.large) .calendar .container__months .month-item-header{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.large) .calendar .container__months .month-item-header{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.large) .calendar .container__months .month-item-header{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}:host(.large) .calendar .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.large) .calendar .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.large) .calendar .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.large) .calendar .container__months .month-item-weekdays-row{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}:host(.large) .calendar .container__months .month-item-weekdays-row div{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.large) .calendar .container__months .month-item-weekdays-row div{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.large) .calendar .container__months .month-item-weekdays-row div{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.large) .calendar .container__months .month-item-weekdays-row div{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}:host(.large) .calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:500;line-height:24px;letter-spacing:0px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.large) .calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:500;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.large) .calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:500;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.large) .calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:500;line-height:24px;letter-spacing:0px}}:host(.large) .calendar .container__days .day-item .is-start-date,:host(.large) .calendar .container__days .day-item .is-end-date{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}@media screen and (min-width: 768px) and (max-width: 1023px){:host(.large) .calendar .container__days .day-item .is-start-date,:host(.large) .calendar .container__days .day-item .is-end-date{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host(.large) .calendar .container__days .day-item .is-start-date,:host(.large) .calendar .container__days .day-item .is-end-date{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host(.large) .calendar .container__days .day-item .is-start-date,:host(.large) .calendar .container__days .day-item .is-end-date{font-family:\"Inter\", sans-serif;font-size:20px;font-weight:700;line-height:24px;letter-spacing:0px}}:host(.large.range) .calendar .container__main{width:100%;max-width:1200px;max-height:600px}.calendar .container__main{display:flex;flex-direction:column}.calendar .container__months{display:flex}.calendar .container__months.columns-2{width:100%;flex-direction:row}.calendar .container__months .month-item{box-sizing:content-box;position:relative;width:100%;height:100%;z-index:1;display:flex;flex-direction:column}.calendar .container__months.columns-2 .month-item:first-of-type{padding-right:var(--vega-date-picker-calendar-range-space-size)}.calendar .container__months.columns-2 .month-item:last-of-type{padding-left:var(--vega-date-picker-calendar-range-space-size)}.calendar .container__months .month-item:nth-child(2)::before{background-color:rgba(var(--v-bg-divider, 171, 198, 216, 1));margin-bottom:32px;position:absolute;top:0px;right:0px;bottom:0px;left:0px;display:none;width:1px;content:\"\";display:block}.calendar .container__months .month-item-weekdays-row{color:rgba(var(--v-text-primary, 32, 54, 69, 1));place-items:center}.calendar .container__days{text-align:center;place-items:center;flex:1 1 auto}.calendar.static-height .container__days{align-content:flex-start}.calendar:not(.static-height) .container__days{flex:none}.calendar .container__months .month-item-weekdays-row>div,.calendar .container__days>div,.calendar .container__days>a{padding:4px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;height:var(--vega-litepicker-day-height);width:100%;min-width:var(--vega-litepicker-day-width)}.calendar .container__days .day-item{color:rgba(var(--v-text-primary, 32, 54, 69, 1));font-family:\"Inter\", sans-serif;font-size:16px;font-weight:500;line-height:22px;letter-spacing:0px;text-align:center;border-radius:9999px;cursor:default}@media screen and (min-width: 768px) and (max-width: 1023px){.calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:500;line-height:22px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:500;line-height:22px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.calendar .container__days .day-item{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:500;line-height:22px;letter-spacing:0px}}.calendar .container__days .day-item:not(.is-locked):not(.is-disabled):active{background-color:rgba(var(--v-bg-action-active, 29, 65, 195, 1));color:rgba(var(--v-text-inverted-primary, 252, 252, 252, 1));border-width:0px}.calendar .day-item.is-start-date.is-end-date.is-locked:active{background-color:rgba(var(--v-bg-action, 19, 98, 226, 1))}.calendar .container__days .day-item:hover:before{border:1px solid rgba(var(--v-border-input-field-hover, 115, 160, 190, 1));border-radius:9999px;position:absolute;top:0px;right:0px;bottom:0px;left:0px;content:\" \";z-index:-1}.calendar .container__days .day-item.is-locked:hover:before,html.dark .calendar .container__days .day-item.is-locked:hover:before{border-style:none}.calendar .container__days .day-item.is-disabled:hover:before{border-style:none}.calendar .container__days .day-item.is-locked,.calendar .container__days .day-item.is-disabled{-webkit-tap-highlight-color:transparent}.calendar .container__days .day-item:hover{position:relative}.calendar .container__days .day-item.is-today{color:rgba(var(--v-text-link, 19, 98, 226, 1));font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}@media screen and (min-width: 768px) and (max-width: 1023px){.calendar .container__days .day-item.is-today{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.calendar .container__days .day-item.is-today{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.calendar .container__days .day-item.is-today{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:700;line-height:18px}}.calendar .container__days .day-item.is-in-range{border-radius:0px;position:relative;z-index:2;background-color:rgba(var(--v-bg-date-picker-range, 229, 239, 255, 1))}.calendar .container__days .day-item:not(.is-locked):not(.is-disabled).is-in-range:hover:before{border:1px solid rgba(var(--v-border-input-field-hover, 115, 160, 190, 1));border-radius:9999px;position:absolute;top:0px;right:0px;bottom:0px;left:0px;content:\" \";z-index:-1}.calendar .container__days .day-item.is-start-date{background-color:rgba(var(--v-bg-action, 19, 98, 226, 1));border-radius:9999px;color:rgba(var(--v-text-inverted-primary, 252, 252, 252, 1));position:relative}.calendar .container__days .day-item.is-start-date:hover:before{z-index:2}.calendar .container__days .day-item.is-start-date:after{position:absolute;top:0px;right:0px;bottom:0px;left:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-top-left-radius:9999px;border-bottom-left-radius:9999px;content:\" \";z-index:-1;background-color:rgba(var(--v-bg-date-picker-range, 229, 239, 255, 1))}.calendar .container__days .day-item.is-start-date.is-flipped{border-radius:9999px;position:relative}.calendar .container__days .day-item.is-start-date.is-flipped:after{position:absolute;top:0px;right:0px;bottom:0px;left:0px;border-top-left-radius:0px;border-bottom-left-radius:0px;border-top-right-radius:9999px;border-bottom-right-radius:9999px;content:\" \";z-index:-1}.calendar .container__days .day-item.is-end-date{background-color:rgba(var(--v-bg-action, 19, 98, 226, 1));border-radius:9999px;color:rgba(var(--v-text-inverted-primary, 252, 252, 252, 1));position:relative}.calendar .container__days .day-item.is-end-date:hover:before{z-index:2}.calendar .container__days .day-item.is-end-date:after{position:absolute;top:0px;right:0px;bottom:0px;left:0px;border-top-left-radius:0px;border-bottom-left-radius:0px;border-top-right-radius:9999px;border-bottom-right-radius:9999px;content:\" \";z-index:-1;background-color:rgba(var(--v-bg-date-picker-range, 229, 239, 255, 1))}.calendar .container__days .day-item.is-end-date.is-flipped{border-radius:9999px;position:relative}.calendar .container__days .day-item.is-end-date.is-flipped:after{position:absolute;top:0px;right:0px;bottom:0px;left:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-top-left-radius:9999px;border-bottom-left-radius:9999px;content:\" \";z-index:-1}.calendar .container__days .day-item.is-start-date.is-end-date{border-radius:9999px}.calendar .container__days .day-item.is-start-date.is-end-date:after,html.dark .calendar .container__days .day-item.is-start-date.is-end-date:after{background:none}.calendar .container__tooltip{display:none}.calendar .container__days .day-item.is-locked{color:rgba(var(--v-text-disabled, 176, 180, 181, 1));cursor:not-allowed}.calendar.mobilefriendly[data-plugins*=mobilefriendly] .container__days>div{height:var(--vega-date-picker-calendar-day-height)}.calendar .clear-button{font-family:\"Inter\", sans-serif;font-size:18px;font-weight:700;line-height:24px;letter-spacing:0px;color:rgba(var(--v-text-link, 19, 98, 226, 1))}@media screen and (min-width: 768px) and (max-width: 1023px){.calendar .clear-button{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.calendar .clear-button{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:700;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.calendar .clear-button{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:700;line-height:24px;letter-spacing:0px}}.calendar .footer-container{margin-top:16px;height:24px}:host(.vega-force-hidden){display:none !important}.calendar{left:initial !important;top:initial !important;position:initial !important}.button-next-month svg,.button-previous-month svg{width:12px;height:16px}.calendar .container__days .day-item.is-disabled{color:rgba(var(--v-text-disabled, 176, 180, 181, 1));cursor:not-allowed;text-decoration:line-through}.calendar .container__days>div:not(.day-item){-webkit-tap-highlight-color:transparent}.calendar .month-item-header>div.dropdown-section{display:flex;gap:12px}.calendar .month-item-header>div.dropdown-section .dropdown-current-value{position:relative;display:flex;gap:4px;align-items:center;cursor:pointer}.calendar .month-item-header>div.dropdown-section .dropdown-current-value.active{color:rgba(var(--v-text-link-active, 29, 65, 195, 1))}.calendar .month-item-header>div.dropdown-section .dropdown-current-value.active:active{color:rgba(var(--v-text-link-active, 29, 65, 195, 1))}.calendar .month-item-header>div.dropdown-section .dropdown-current-value.active:hover{color:rgba(var(--v-text-link-hover, 4, 112, 236, 1))}.calendar .month-item-header>div.dropdown-section .dropdown-current-value.active:focus-visible{color:rgba(var(--v-text-link-focus, 4, 112, 236, 1))}";
2763
2830
 
2764
2831
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2765
2832
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -2774,20 +2841,189 @@ var __decorate = (undefined && undefined.__decorate) || function (decorators, ta
2774
2841
  const VegaDatePickerCalendar = class {
2775
2842
  constructor(hostRef) {
2776
2843
  registerInstance(this, hostRef);
2844
+ this.vegaClear = createEvent(this, "vegaClear", 7);
2845
+ this.clear = createEvent(this, "clear", 7);
2846
+ this.vegaMonthYearChange = createEvent(this, "vegaMonthYearChange", 7);
2847
+ this.monthYearChange = createEvent(this, "monthYearChange", 7);
2848
+ this.vegaSelectionChange = createEvent(this, "vegaSelectionChange", 7);
2849
+ this.selectionChange = createEvent(this, "selectionChange", 7);
2777
2850
  this.globalSlimmers = {};
2851
+ this.renderer = new VegaDatePickerCalendarRenderer();
2852
+ this.monthItemRenderer = new VegaDatePickerMonthItemRenderer();
2853
+ this.headerRenderer = new VegaDatePickerCalendarHeaderRenderer();
2854
+ this.translationSlimmer = new TranslationSlimmer();
2855
+ this.todayController = new VegaDatePickerCalendarTodayController();
2856
+ this.selectionController = new VegaDatePickerCalendarSelectionController();
2857
+ this.minMaxDateController = new VegaDatePickerCalendarMinMaxDateController();
2858
+ this.currentPeriodController = new VegaDatePickerCalendarCurrentPeriodController();
2859
+ this.yearMonthSwitcherRender = new VegaDatePickerCalendarYearMonthSwitcherRenderer();
2860
+ this.allowRepickController = new VegaDatePickerCalendarAllowRepickController();
2778
2861
  this.vegaComponentUsageRuntimeMetricsSlimmer = new VegaComponentUsageRuntimeMetricsSlimmer();
2862
+ this.clearEventEmitter = createEventEmitSlimmer(VegaDatePickerCalendar, VegaClear);
2863
+ this.monthYearChangeEventEmitter = createEventEmitSlimmer(VegaDatePickerCalendar, VegaMonthYearChange);
2864
+ this.vegaSelectionChangeEventEmitter = createEventEmitSlimmer(VegaDatePickerCalendar, VegaSelectionChange);
2865
+ this.isMobileDevice = getDeviceType() === DeviceType.MOBILE;
2866
+ /**
2867
+ * Renders the calendar picker in different sizes. Defaults to regular size
2868
+ *
2869
+ * @vegaVersion 2.72.0
2870
+ */
2871
+ this.size = 'regular';
2872
+ /**
2873
+ * Specifies the selection mode of the date picker calendar.
2874
+ *
2875
+ * - Use `single` to allow selecting a single date.
2876
+ * - Use `range` to allow selecting a date range.
2877
+ *
2878
+ * @vegaVersion 2.72.0
2879
+ */
2880
+ this.mode = 'single';
2881
+ /**
2882
+ * Specifies the selected date or date range in the date picker calendar.
2883
+ *
2884
+ * @vegaVersion 2.72.0
2885
+ */
2886
+ /* eslint-disable-next-line @stencil/strict-mutable */
2887
+ this.selection = this.mode === 'range' ? ['', ''] : '';
2888
+ /**
2889
+ * Specifies the desired date format.
2890
+ *
2891
+ * @vegaVersion 2.72.0
2892
+ */
2893
+ this.format = 'MM/DD/YYYY';
2894
+ /**
2895
+ * Specifies whether to display the clear button when the calendar is shown.
2896
+ *
2897
+ * @vegaVersion 2.72.0
2898
+ */
2899
+ this.clearButton = false;
2900
+ /**
2901
+ * Specifies the calendar is static height.
2902
+ *
2903
+ * @vegaVersion 2.72.0
2904
+ */
2905
+ this.staticHeight = false;
2906
+ /**
2907
+ * Determines whether to show months and years dropdown in date picker calendar
2908
+ * If set to true, date picker calendar will have months and years dropdown
2909
+ *
2910
+ * @vegaVersion 2.72.0
2911
+ */
2912
+ this.showYearMonthDropdowns = false;
2913
+ /**
2914
+ * Determines whether the year or month dropdown position is calculated relative to the screen.
2915
+ *
2916
+ * @vegaVersion 2.72.0
2917
+ */
2918
+ this.yearMonthDropdownProps = {};
2919
+ /**
2920
+ * Specifies a predicate function that determines whether a given date in the date picker should be disabled (non-interactive).
2921
+ *
2922
+ * The function is called for each date cell before rendering.
2923
+ *
2924
+ * Return `true` to disable the cell, or false to keep it selectable.
2925
+ * Default behavior: always returns `false` (no cells are disabled).
2926
+ *
2927
+ * @param date - The `Date` object for the cell being evaluated.
2928
+ * @returns `true` if the cell should be disabled; otherwise `false`.
2929
+ * @vegaVersion 2.72.0
2930
+ */
2931
+ this.isDateDisabled = () => false;
2932
+ }
2933
+ watchCurrentPeriod() {
2934
+ }
2935
+ watchCalendarSelection() {
2936
+ }
2937
+ watchMaxCalendarDate() {
2938
+ }
2939
+ watchMinCalendarDate() {
2940
+ }
2941
+ watchSelection() {
2942
+ }
2943
+ watchMinDate() {
2944
+ }
2945
+ watchMaxDate() {
2946
+ }
2947
+ watchTimezone() {
2948
+ }
2949
+ /**
2950
+ * Invoke this method to reset calendar to its initial state,
2951
+ * it include reset to current value and reset the current period.
2952
+ * @vegaVersion 2.72.0
2953
+ */
2954
+ async reset() {
2955
+ }
2956
+ /**
2957
+ * Invoke this method to trigger repick.
2958
+ * The param `type` is distinguishing the start date or end date can be repick.
2959
+ * @vegaVersion 2.72.0
2960
+ */
2961
+ async triggerRepick(type) {
2779
2962
  }
2780
2963
  render() {
2781
- return h(Host, null);
2964
+ return sanitizeVegaComponent(h(Host, { class: {
2965
+ [this.size]: true,
2966
+ [this.mode]: true,
2967
+ mobile: this.isMobileDevice,
2968
+ } }, this.renderer.render()), this.host);
2782
2969
  }
2783
2970
  get host() { return getElement(this); }
2971
+ static get watchers() { return {
2972
+ "currentPeriod": ["watchCurrentPeriod"],
2973
+ "calendarSelection": ["watchCalendarSelection"],
2974
+ "maxCalendarDate": ["watchMaxCalendarDate"],
2975
+ "minCalendarDate": ["watchMinCalendarDate"],
2976
+ "selection": ["watchSelection"],
2977
+ "minDate": ["watchMinDate"],
2978
+ "maxDate": ["watchMaxDate"],
2979
+ "timezone": ["watchTimezone"]
2980
+ }; }
2784
2981
  };
2785
2982
  __decorate([
2786
2983
  InjectVegaGlobalSlimmer()
2787
2984
  ], VegaDatePickerCalendar.prototype, "globalSlimmers", void 0);
2985
+ __decorate([
2986
+ InjectVegaSlimmer()
2987
+ ], VegaDatePickerCalendar.prototype, "renderer", void 0);
2988
+ __decorate([
2989
+ InjectVegaSlimmer()
2990
+ ], VegaDatePickerCalendar.prototype, "monthItemRenderer", void 0);
2991
+ __decorate([
2992
+ InjectVegaSlimmer()
2993
+ ], VegaDatePickerCalendar.prototype, "headerRenderer", void 0);
2994
+ __decorate([
2995
+ InjectVegaSlimmer()
2996
+ ], VegaDatePickerCalendar.prototype, "translationSlimmer", void 0);
2997
+ __decorate([
2998
+ InjectVegaSlimmer()
2999
+ ], VegaDatePickerCalendar.prototype, "todayController", void 0);
3000
+ __decorate([
3001
+ InjectVegaSlimmer()
3002
+ ], VegaDatePickerCalendar.prototype, "selectionController", void 0);
3003
+ __decorate([
3004
+ InjectVegaSlimmer()
3005
+ ], VegaDatePickerCalendar.prototype, "minMaxDateController", void 0);
3006
+ __decorate([
3007
+ InjectVegaSlimmer()
3008
+ ], VegaDatePickerCalendar.prototype, "currentPeriodController", void 0);
3009
+ __decorate([
3010
+ InjectVegaSlimmer()
3011
+ ], VegaDatePickerCalendar.prototype, "yearMonthSwitcherRender", void 0);
3012
+ __decorate([
3013
+ InjectVegaSlimmer()
3014
+ ], VegaDatePickerCalendar.prototype, "allowRepickController", void 0);
2788
3015
  __decorate([
2789
3016
  InjectVegaSlimmer()
2790
3017
  ], VegaDatePickerCalendar.prototype, "vegaComponentUsageRuntimeMetricsSlimmer", void 0);
3018
+ __decorate([
3019
+ InjectVegaSlimmer()
3020
+ ], VegaDatePickerCalendar.prototype, "clearEventEmitter", void 0);
3021
+ __decorate([
3022
+ InjectVegaSlimmer()
3023
+ ], VegaDatePickerCalendar.prototype, "monthYearChangeEventEmitter", void 0);
3024
+ __decorate([
3025
+ InjectVegaSlimmer()
3026
+ ], VegaDatePickerCalendar.prototype, "vegaSelectionChangeEventEmitter", void 0);
2791
3027
  VegaDatePickerCalendar.style = vegaDatePickerCalendarCss;
2792
3028
 
2793
3029
  export { VegaDatePicker as vega_date_picker, VegaDatePickerCalendar as vega_date_picker_calendar };