@globalpayments/vega 2.63.1 → 2.65.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (457) hide show
  1. package/dist/cjs/{app-globals-2d0b157e.js → app-globals-681a0ed4.js} +10 -10
  2. package/dist/cjs/{brand-switch-state-controller-slimmer-b83a4596.js → brand-switch-state-controller-slimmer-3d41b2a4.js} +1 -1
  3. package/dist/cjs/{child-nodes-event-prevent-slimmer-4e96270e.js → child-nodes-event-prevent-slimmer-feb072c4.js} +1 -1
  4. package/dist/cjs/{child-nodes-notify-observer-slimmer-34ac3bfc.js → child-nodes-notify-observer-slimmer-257fedb3.js} +1 -1
  5. package/dist/cjs/{code-block-cc740807.js → code-block-961d54e8.js} +13 -17
  6. package/dist/cjs/{component-value-history-controller-slimmer.abstract-0bb81172.js → component-value-history-controller-slimmer.abstract-c5b8b47b.js} +6 -6
  7. package/dist/cjs/{dark-mode-state-controller-slimmer-17022f93.js → dark-mode-state-controller-slimmer-8a87ec08.js} +1 -1
  8. package/dist/cjs/{dark-mode-style-controller-b1e9ec82.js → dark-mode-style-controller-27809ff8.js} +1 -1
  9. package/dist/cjs/{design-token-bf913c86.js → design-token-98652b67.js} +1 -1
  10. package/dist/cjs/{dom-node-subject-observer-factory-58e3c010.js → dom-node-subject-observer-factory-56609e5a.js} +1 -1
  11. package/dist/cjs/{dto-renderer-manager-424c5031.js → dto-renderer-manager-4b9d2560.js} +11 -6
  12. package/dist/cjs/{element-appender-slimmer-1d035b1f.js → element-appender-slimmer-1f46981b.js} +6 -6
  13. package/dist/cjs/{event-emit-slimmer-428d8802.js → event-emit-slimmer-3cefb326.js} +2 -2
  14. package/dist/cjs/{form-field-controller-slimmer-cc6e53a4.js → form-field-controller-slimmer-1e1123ea.js} +16 -8
  15. package/dist/cjs/{image-annotation-action-f831e09b.js → image-annotation-action-03b36f68.js} +5 -5
  16. package/dist/cjs/{index-00ba6623.js → index-58ea899e.js} +1 -0
  17. package/dist/cjs/{index-5505e8dd.js → index-f2fe26a0.js} +2 -2
  18. package/dist/cjs/index.cjs.js +16 -16
  19. package/dist/cjs/{inject-keyboard-manager-ad865c95.js → inject-keyboard-manager-51033b3f.js} +1 -1
  20. package/dist/cjs/{internal-vega-event-manager-28b957c8.js → internal-vega-event-manager-9b503f1a.js} +1 -1
  21. package/dist/cjs/{keyboard-manager-7f4e1f43.js → keyboard-manager-144907d7.js} +1 -1
  22. package/dist/cjs/{keyboard-manager-slimmer-138a90e5.js → keyboard-manager-slimmer-04c48756.js} +1 -1
  23. package/dist/cjs/{language-extension-cfe0eabd.js → language-extension-059d62f6.js} +2 -2
  24. package/dist/cjs/loader.cjs.js +15 -15
  25. package/dist/cjs/{public-rules-7e9b633d.js → public-rules-58e0218b.js} +8 -8
  26. package/dist/cjs/{range-44f08955.js → range-42732973.js} +2 -2
  27. package/dist/cjs/{responsive-format-facade-a7fbefc4.js → responsive-format-facade-29070d00.js} +5 -5
  28. package/dist/cjs/{rich-text-editor-required-rule-a0618c85.js → rich-text-editor-required-rule-ce4dd5fb.js} +1 -1
  29. package/dist/cjs/{static-subject-title-85732e0f.js → static-subject-title-5829a298.js} +0 -8
  30. package/dist/cjs/{string-input-formatter-slimmer-f6c7a255.js → string-input-formatter-slimmer-0d69ea76.js} +3 -3
  31. package/dist/cjs/{style-formatter-795451f2.js → style-formatter-f6723cb3.js} +1 -1
  32. package/dist/cjs/{sub-state-notify-slimmer-bb64fcfc.js → sub-state-notify-slimmer-066f2aa9.js} +2 -2
  33. package/dist/cjs/{sub-state-observer-slimmer-84175d61.js → sub-state-observer-slimmer-569e3297.js} +3 -3
  34. package/dist/cjs/{token-extension-4764d5f3.js → token-extension-260adb8a.js} +6 -6
  35. package/dist/cjs/{translation-cde4dce3.js → translation-f5adcb9f.js} +1 -1
  36. package/dist/cjs/{translation-slimmer-af399096.js → translation-slimmer-4b6239d1.js} +1 -1
  37. package/dist/cjs/{ui-4ce1fa08.js → ui-9e181079.js} +16 -3
  38. package/dist/cjs/vega-accordion.cjs.entry.js +14 -14
  39. package/dist/cjs/vega-app-footer.cjs.entry.js +4 -4
  40. package/dist/cjs/vega-app-header-button.cjs.entry.js +15 -15
  41. package/dist/cjs/vega-backdrop.cjs.entry.js +2 -2
  42. package/dist/cjs/vega-banner.cjs.entry.js +5 -5
  43. package/dist/cjs/vega-bar-chart.cjs.entry.js +1 -1
  44. package/dist/cjs/vega-box.cjs.entry.js +14 -14
  45. package/dist/cjs/vega-brand-logo.cjs.entry.js +4 -4
  46. package/dist/cjs/vega-breadcrumb.cjs.entry.js +6 -6
  47. package/dist/cjs/vega-button-circle.cjs.entry.js +20 -17
  48. package/dist/cjs/vega-button-group_2.cjs.entry.js +9 -9
  49. package/dist/cjs/vega-button-link.cjs.entry.js +6 -6
  50. package/dist/cjs/vega-button.cjs.entry.js +20 -15
  51. package/dist/cjs/vega-calendar_4.cjs.entry.js +528 -226
  52. package/dist/cjs/vega-card.cjs.entry.js +13 -13
  53. package/dist/cjs/vega-carousel.cjs.entry.js +13 -13
  54. package/dist/cjs/vega-checkbox_2.cjs.entry.js +12 -12
  55. package/dist/cjs/vega-chip.cjs.entry.js +15 -15
  56. package/dist/cjs/vega-code-block.cjs.entry.js +16 -16
  57. package/dist/cjs/vega-color-picker.cjs.entry.js +10 -10
  58. package/dist/cjs/vega-combo-box.cjs.entry.js +13 -13
  59. package/dist/cjs/vega-counter-badge.cjs.entry.js +1 -1
  60. package/dist/cjs/vega-date-picker_2.cjs.entry.js +63 -26
  61. package/dist/cjs/vega-dialog_2.cjs.entry.js +16 -16
  62. package/dist/cjs/vega-divider.cjs.entry.js +13 -13
  63. package/dist/cjs/vega-dropdown_5.cjs.entry.js +24 -23
  64. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  65. package/dist/cjs/vega-field-error.cjs.entry.js +2 -2
  66. package/dist/cjs/vega-field-label.cjs.entry.js +5 -5
  67. package/dist/cjs/vega-file-uploader.cjs.entry.js +11 -11
  68. package/dist/cjs/vega-flag-icon.cjs.entry.js +13 -13
  69. package/dist/cjs/vega-flex.cjs.entry.js +14 -14
  70. package/dist/cjs/vega-font.cjs.entry.js +13 -13
  71. package/dist/cjs/vega-form.cjs.entry.js +636 -323
  72. package/dist/cjs/vega-grid.cjs.entry.js +13 -13
  73. package/dist/cjs/vega-hint.cjs.entry.js +1 -1
  74. package/dist/cjs/vega-icon.cjs.entry.js +13 -13
  75. package/dist/cjs/vega-image-uploader.cjs.entry.js +18 -18
  76. package/dist/cjs/vega-input-credit-card.cjs.entry.js +11 -11
  77. package/dist/cjs/vega-input-numeric.cjs.entry.js +14 -14
  78. package/dist/cjs/vega-input-phone-number.cjs.entry.js +15 -15
  79. package/dist/cjs/vega-input-range.cjs.entry.js +12 -12
  80. package/dist/cjs/vega-input-select.cjs.entry.js +17 -17
  81. package/dist/cjs/vega-input.cjs.entry.js +12 -12
  82. package/dist/cjs/{vega-internal-event-id-9647aaf8.js → vega-internal-event-id-6d4a2c53.js} +8 -0
  83. package/dist/cjs/vega-item-toggle.cjs.entry.js +5 -5
  84. package/dist/cjs/vega-left-nav_5.cjs.entry.js +45 -21
  85. package/dist/cjs/vega-line-chart.cjs.entry.js +1 -1
  86. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +12 -12
  87. package/dist/cjs/vega-page-notification_2.cjs.entry.js +3 -3
  88. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +6 -6
  89. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +7 -7
  90. package/dist/cjs/vega-pagination.cjs.entry.js +15 -15
  91. package/dist/cjs/vega-pie-chart.cjs.entry.js +1 -1
  92. package/dist/cjs/vega-popover_2.cjs.entry.js +17 -17
  93. package/dist/cjs/vega-progress-tracker.cjs.entry.js +5 -5
  94. package/dist/cjs/vega-radio_2.cjs.entry.js +14 -14
  95. package/dist/cjs/vega-rich-text-content.cjs.entry.js +11 -11
  96. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +25 -29
  97. package/dist/cjs/vega-section-title.cjs.entry.js +1 -1
  98. package/dist/cjs/vega-segment-control.cjs.entry.js +5 -5
  99. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +17 -17
  100. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +13 -13
  101. package/dist/cjs/vega-sidenav_3.cjs.entry.js +15 -15
  102. package/dist/cjs/vega-signature-capture.cjs.entry.js +17 -17
  103. package/dist/cjs/vega-skeleton.cjs.entry.js +1 -1
  104. package/dist/cjs/vega-slot-container.cjs.entry.js +1 -1
  105. package/dist/cjs/vega-stepper.cjs.entry.js +11 -11
  106. package/dist/cjs/vega-tab-group_2.cjs.entry.js +7 -7
  107. package/dist/cjs/vega-table_8.cjs.entry.js +17 -17
  108. package/dist/cjs/vega-text.cjs.entry.js +2 -2
  109. package/dist/cjs/vega-textarea.cjs.entry.js +11 -11
  110. package/dist/cjs/vega-time-picker_2.cjs.entry.js +20 -20
  111. package/dist/cjs/vega-toggle-switch.cjs.entry.js +10 -10
  112. package/dist/cjs/vega-tooltip_2.cjs.entry.js +15 -15
  113. package/dist/cjs/vega.cjs.js +15 -15
  114. package/dist/collection/components/vega-button/vega-button.js +9 -2
  115. package/dist/collection/components/vega-button-circle/vega-button-circle.js +8 -3
  116. package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-current-period-controller.js +7 -4
  117. package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-controller.js +21 -1
  118. package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-preivew-popover-controller.js +18 -1
  119. package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-post-operation-date-controller.js +14 -1
  120. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-repeat-pattern-factory.js +8 -9
  121. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-weekly-repeat-pattern.js +3 -1
  122. package/dist/collection/components/vega-calendar/slimmers/common/helpers/test/calendar-event-repeat-pattern-factory.test.js +34 -0
  123. package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-item-renderer.js +1 -1
  124. package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-preview-popover-renderer.js +7 -6
  125. package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-marker-renderer.js +31 -5
  126. package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.js +4 -1
  127. package/dist/collection/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-event-renderer.js +11 -10
  128. package/dist/collection/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.js +4 -1
  129. package/dist/collection/components/vega-calendar/vega-calendar-event-preview/slimmers/renderers/vega-calendar-event-preview-detail-renderer.js +15 -5
  130. package/dist/collection/components/vega-calendar/vega-calendar.js +47 -1
  131. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +37 -3
  132. package/dist/collection/components/vega-date-picker/vega-date-picker.js +6 -0
  133. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +1 -1
  134. package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.css +4 -8
  135. package/dist/collection/components/vega-dropdown/vega-dropdown.js +4 -0
  136. package/dist/collection/components/vega-form/slimmers/controllers/vega-form-field-controller.js +351 -0
  137. package/dist/collection/components/vega-form/slimmers/controllers/vega-form-reset-controller.js +99 -0
  138. package/dist/collection/components/vega-form/slimmers/controllers/vega-form-submit-controller.js +122 -0
  139. package/dist/collection/components/vega-form/slimmers/renderers/native-form-renderer.js +30 -0
  140. package/dist/collection/components/vega-form/vega-form.js +97 -335
  141. package/dist/collection/components/vega-modal/vega-modal.css +4 -1
  142. package/dist/collection/components/vega-nav/slimmers/vega-nav-observer-slimmer.js +8 -3
  143. package/dist/collection/components/vega-nav/vega-left-nav-link/slimmers/controllers/vega-left-nav-link-controller.js +21 -4
  144. package/dist/collection/components/vega-rich-text-editor/dto/annotations/link-annotation.js +1 -1
  145. package/dist/collection/components/vega-rich-text-editor/dto/annotations/link-group-annotation.js +5 -7
  146. package/dist/collection/components/vega-rich-text-editor/dto/blocks/text-block.js +3 -5
  147. package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +7 -2
  148. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.js +1 -5
  149. package/dist/collection/components/vega-rich-text-editor/test/dto/annotations.test.js +9 -1
  150. package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/text-block.test.js +1 -1
  151. package/dist/collection/components/vega-rich-text-editor/test/dto/content-state.test.js +51 -40
  152. package/dist/collection/helpers/calendar/calendar-date.js +10 -8
  153. package/dist/collection/helpers/calendar/calendar-event.js +152 -16
  154. package/dist/collection/helpers/calendar/calendar-period/calendar-period.abstract.js +13 -4
  155. package/dist/collection/helpers/calendar/calendar-period/day-period.js +4 -4
  156. package/dist/collection/helpers/calendar/calendar-period/month-period.js +7 -6
  157. package/dist/collection/helpers/calendar/calendar-period/week-period.js +3 -3
  158. package/dist/collection/helpers/calendar/calendar-view-generator/week-view-generator.js +1 -1
  159. package/dist/collection/helpers/calendar/test/calendar-date.test.js +24 -0
  160. package/dist/collection/helpers/calendar/test/calendar-event.test.js +71 -0
  161. package/dist/collection/helpers/calendar/test/calendar-period/day-period.test.js +28 -0
  162. package/dist/collection/helpers/calendar/test/calendar-period/month-period.test.js +35 -0
  163. package/dist/collection/helpers/calendar/test/calendar-period/week-period.test.js +43 -0
  164. package/dist/collection/helpers/calendar/test/utils.test.js +29 -1
  165. package/dist/collection/helpers/calendar/utils.js +46 -0
  166. package/dist/collection/helpers/change-manager/subject/static-subject/static-subject-title.js +0 -3
  167. package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +4 -0
  168. package/dist/collection/helpers/validator/form-field-controller.js +13 -3
  169. package/dist/collection/utils/test/ui.test.js +55 -0
  170. package/dist/collection/utils/ui.js +16 -3
  171. package/dist/esm/{app-globals-2623304e.js → app-globals-1bacb762.js} +10 -10
  172. package/dist/esm/{brand-switch-state-controller-slimmer-d6e4d217.js → brand-switch-state-controller-slimmer-60249013.js} +1 -1
  173. package/dist/esm/{child-nodes-event-prevent-slimmer-7fe3dc57.js → child-nodes-event-prevent-slimmer-f32efdee.js} +1 -1
  174. package/dist/esm/{child-nodes-notify-observer-slimmer-78f77c2c.js → child-nodes-notify-observer-slimmer-b676cd2b.js} +1 -1
  175. package/dist/esm/{code-block-23e7f8d0.js → code-block-cb657afd.js} +13 -17
  176. package/dist/esm/{component-value-history-controller-slimmer.abstract-df25e4a1.js → component-value-history-controller-slimmer.abstract-65a83eaf.js} +6 -6
  177. package/dist/esm/{dark-mode-state-controller-slimmer-0c7d1c77.js → dark-mode-state-controller-slimmer-f2b4f8ed.js} +1 -1
  178. package/dist/esm/{dark-mode-style-controller-972e1f06.js → dark-mode-style-controller-b7e85b6a.js} +1 -1
  179. package/dist/esm/{design-token-0f439510.js → design-token-3889675a.js} +1 -1
  180. package/dist/esm/{dom-node-subject-observer-factory-c7bc3035.js → dom-node-subject-observer-factory-ed4b89f4.js} +1 -1
  181. package/dist/esm/{dto-renderer-manager-65b7b1b1.js → dto-renderer-manager-8cac8f0f.js} +11 -6
  182. package/dist/esm/{element-appender-slimmer-bf5ca501.js → element-appender-slimmer-31b21e1b.js} +6 -6
  183. package/dist/esm/{event-emit-slimmer-3922d816.js → event-emit-slimmer-000ca6a7.js} +2 -2
  184. package/dist/esm/{form-field-controller-slimmer-f7e8845b.js → form-field-controller-slimmer-24dbc255.js} +16 -8
  185. package/dist/esm/{image-annotation-action-af21ea8f.js → image-annotation-action-59ea166c.js} +5 -5
  186. package/dist/esm/{index-057d0f70.js → index-090d31ca.js} +1 -0
  187. package/dist/esm/{index-7fe93427.js → index-50b32f3d.js} +2 -2
  188. package/dist/esm/index.js +16 -16
  189. package/dist/esm/{inject-keyboard-manager-109817bf.js → inject-keyboard-manager-f7d92809.js} +1 -1
  190. package/dist/esm/{internal-vega-event-manager-cb06e987.js → internal-vega-event-manager-13e3ed3d.js} +1 -1
  191. package/dist/esm/{keyboard-manager-ab521d22.js → keyboard-manager-f4bbc452.js} +1 -1
  192. package/dist/esm/{keyboard-manager-slimmer-cae3a002.js → keyboard-manager-slimmer-a02cbc5f.js} +1 -1
  193. package/dist/esm/{language-extension-d355f9aa.js → language-extension-038014ac.js} +2 -2
  194. package/dist/esm/loader.js +15 -15
  195. package/dist/esm/{public-rules-1a5da7bf.js → public-rules-a42e6f59.js} +8 -8
  196. package/dist/esm/{range-fac2962c.js → range-c08d8de1.js} +2 -2
  197. package/dist/esm/{responsive-format-facade-2904b456.js → responsive-format-facade-d8ccc742.js} +5 -5
  198. package/dist/esm/{rich-text-editor-required-rule-bb94d680.js → rich-text-editor-required-rule-3a8f319c.js} +1 -1
  199. package/dist/esm/{static-subject-title-633b3474.js → static-subject-title-52f93124.js} +1 -5
  200. package/dist/esm/{string-input-formatter-slimmer-69117deb.js → string-input-formatter-slimmer-c64c7855.js} +3 -3
  201. package/dist/esm/{style-formatter-a724e38d.js → style-formatter-ab6a9248.js} +1 -1
  202. package/dist/esm/{sub-state-notify-slimmer-4252a90e.js → sub-state-notify-slimmer-8b3b15ee.js} +2 -2
  203. package/dist/esm/{sub-state-observer-slimmer-baa8853a.js → sub-state-observer-slimmer-2b98e2c9.js} +3 -3
  204. package/dist/esm/{token-extension-89eeef74.js → token-extension-f5bf06a5.js} +6 -6
  205. package/dist/esm/{translation-833d9ef4.js → translation-f10b1e19.js} +1 -1
  206. package/dist/esm/{translation-slimmer-c83b52c1.js → translation-slimmer-984c9ce6.js} +1 -1
  207. package/dist/esm/{ui-c20be16d.js → ui-bb99c0c2.js} +16 -3
  208. package/dist/esm/vega-accordion.entry.js +14 -14
  209. package/dist/esm/vega-app-footer.entry.js +4 -4
  210. package/dist/esm/vega-app-header-button.entry.js +15 -15
  211. package/dist/esm/vega-backdrop.entry.js +2 -2
  212. package/dist/esm/vega-banner.entry.js +5 -5
  213. package/dist/esm/vega-bar-chart.entry.js +1 -1
  214. package/dist/esm/vega-box.entry.js +14 -14
  215. package/dist/esm/vega-brand-logo.entry.js +4 -4
  216. package/dist/esm/vega-breadcrumb.entry.js +6 -6
  217. package/dist/esm/vega-button-circle.entry.js +20 -17
  218. package/dist/esm/vega-button-group_2.entry.js +9 -9
  219. package/dist/esm/vega-button-link.entry.js +6 -6
  220. package/dist/esm/vega-button.entry.js +20 -15
  221. package/dist/esm/vega-calendar_4.entry.js +529 -227
  222. package/dist/esm/vega-card.entry.js +13 -13
  223. package/dist/esm/vega-carousel.entry.js +13 -13
  224. package/dist/esm/vega-checkbox_2.entry.js +12 -12
  225. package/dist/esm/vega-chip.entry.js +15 -15
  226. package/dist/esm/vega-code-block.entry.js +16 -16
  227. package/dist/esm/vega-color-picker.entry.js +10 -10
  228. package/dist/esm/vega-combo-box.entry.js +13 -13
  229. package/dist/esm/vega-counter-badge.entry.js +1 -1
  230. package/dist/esm/vega-date-picker_2.entry.js +63 -26
  231. package/dist/esm/vega-dialog_2.entry.js +16 -16
  232. package/dist/esm/vega-divider.entry.js +13 -13
  233. package/dist/esm/vega-dropdown_5.entry.js +24 -23
  234. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  235. package/dist/esm/vega-field-error.entry.js +2 -2
  236. package/dist/esm/vega-field-label.entry.js +5 -5
  237. package/dist/esm/vega-file-uploader.entry.js +11 -11
  238. package/dist/esm/vega-flag-icon.entry.js +13 -13
  239. package/dist/esm/vega-flex.entry.js +14 -14
  240. package/dist/esm/vega-font.entry.js +13 -13
  241. package/dist/esm/vega-form.entry.js +636 -323
  242. package/dist/esm/vega-grid.entry.js +13 -13
  243. package/dist/esm/vega-hint.entry.js +1 -1
  244. package/dist/esm/vega-icon.entry.js +13 -13
  245. package/dist/esm/vega-image-uploader.entry.js +18 -18
  246. package/dist/esm/vega-input-credit-card.entry.js +11 -11
  247. package/dist/esm/vega-input-numeric.entry.js +14 -14
  248. package/dist/esm/vega-input-phone-number.entry.js +15 -15
  249. package/dist/esm/vega-input-range.entry.js +12 -12
  250. package/dist/esm/vega-input-select.entry.js +17 -17
  251. package/dist/esm/vega-input.entry.js +12 -12
  252. package/dist/esm/{vega-internal-event-id-5a143cd2.js → vega-internal-event-id-5c3e5f7f.js} +5 -1
  253. package/dist/esm/vega-item-toggle.entry.js +5 -5
  254. package/dist/esm/vega-left-nav_5.entry.js +45 -21
  255. package/dist/esm/vega-line-chart.entry.js +1 -1
  256. package/dist/esm/vega-loader-wrapper_2.entry.js +12 -12
  257. package/dist/esm/vega-page-notification_2.entry.js +3 -3
  258. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +6 -6
  259. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +7 -7
  260. package/dist/esm/vega-pagination.entry.js +15 -15
  261. package/dist/esm/vega-pie-chart.entry.js +1 -1
  262. package/dist/esm/vega-popover_2.entry.js +17 -17
  263. package/dist/esm/vega-progress-tracker.entry.js +5 -5
  264. package/dist/esm/vega-radio_2.entry.js +14 -14
  265. package/dist/esm/vega-rich-text-content.entry.js +11 -11
  266. package/dist/esm/vega-rich-text-editor_4.entry.js +25 -29
  267. package/dist/esm/vega-section-title.entry.js +1 -1
  268. package/dist/esm/vega-segment-control.entry.js +5 -5
  269. package/dist/esm/vega-selection-chip_2.entry.js +17 -17
  270. package/dist/esm/vega-selection-tile_2.entry.js +13 -13
  271. package/dist/esm/vega-sidenav_3.entry.js +15 -15
  272. package/dist/esm/vega-signature-capture.entry.js +17 -17
  273. package/dist/esm/vega-skeleton.entry.js +1 -1
  274. package/dist/esm/vega-slot-container.entry.js +1 -1
  275. package/dist/esm/vega-stepper.entry.js +11 -11
  276. package/dist/esm/vega-tab-group_2.entry.js +7 -7
  277. package/dist/esm/vega-table_8.entry.js +17 -17
  278. package/dist/esm/vega-text.entry.js +2 -2
  279. package/dist/esm/vega-textarea.entry.js +11 -11
  280. package/dist/esm/vega-time-picker_2.entry.js +20 -20
  281. package/dist/esm/vega-toggle-switch.entry.js +10 -10
  282. package/dist/esm/vega-tooltip_2.entry.js +15 -15
  283. package/dist/esm/vega.js +15 -15
  284. package/dist/sri/vega-sri-loader.js +147 -0
  285. package/dist/sri/vega-sri-manifest.json +698 -0
  286. package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-current-period-controller.d.ts +1 -0
  287. package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-controller.d.ts +6 -0
  288. package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-preivew-popover-controller.d.ts +5 -0
  289. package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-post-operation-date-controller.d.ts +6 -0
  290. package/dist/types/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-repeat-pattern-factory.d.ts +3 -1
  291. package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-marker-renderer.d.ts +1 -0
  292. package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.d.ts +1 -0
  293. package/dist/types/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.d.ts +1 -0
  294. package/dist/types/components/vega-calendar/types.d.ts +5 -0
  295. package/dist/types/components/vega-calendar/vega-calendar-event-preview/slimmers/renderers/vega-calendar-event-preview-detail-renderer.d.ts +3 -0
  296. package/dist/types/components/vega-calendar/vega-calendar.d.ts +17 -0
  297. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +13 -0
  298. package/dist/types/components/vega-date-picker/vega-date-picker.d.ts +1 -0
  299. package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +1 -0
  300. package/dist/types/components/vega-form/slimmers/controllers/vega-form-field-controller.d.ts +158 -0
  301. package/dist/types/components/vega-form/slimmers/controllers/vega-form-reset-controller.d.ts +43 -0
  302. package/dist/types/components/vega-form/slimmers/controllers/vega-form-submit-controller.d.ts +55 -0
  303. package/dist/types/components/vega-form/slimmers/renderers/native-form-renderer.d.ts +12 -0
  304. package/dist/types/components/vega-form/types.d.ts +13 -0
  305. package/dist/types/components/vega-form/vega-form.d.ts +28 -97
  306. package/dist/types/components/vega-nav/slimmers/vega-nav-observer-slimmer.d.ts +3 -0
  307. package/dist/types/components/vega-nav/vega-left-nav-link/slimmers/controllers/vega-left-nav-link-controller.d.ts +8 -0
  308. package/dist/types/components/vega-rich-text-editor/dto/annotations/link-group-annotation.d.ts +0 -1
  309. package/dist/types/components/vega-rich-text-editor/dto/blocks/text-block.d.ts +1 -2
  310. package/dist/types/components/vega-rich-text-editor/dto/content-state.d.ts +2 -1
  311. package/dist/types/components.d.ts +42 -1
  312. package/dist/types/helpers/calendar/calendar-date.d.ts +5 -3
  313. package/dist/types/helpers/calendar/calendar-event.d.ts +50 -1
  314. package/dist/types/helpers/calendar/calendar-period/calendar-period.abstract.d.ts +8 -1
  315. package/dist/types/helpers/calendar/calendar-period/day-period.d.ts +1 -1
  316. package/dist/types/helpers/calendar/calendar-period/month-period.d.ts +4 -3
  317. package/dist/types/helpers/calendar/calendar-period/week-period.d.ts +1 -1
  318. package/dist/types/helpers/calendar/utils.d.ts +22 -0
  319. package/dist/types/helpers/change-manager/subject/static-subject/static-subject-title.d.ts +1 -4
  320. package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +4 -0
  321. package/dist/types/types/components.type.d.ts +0 -1
  322. package/dist/types/utils/ui.d.ts +5 -1
  323. package/dist/vega/index.esm.js +1 -1
  324. package/dist/vega/p-050bb2ad.entry.js +1 -0
  325. package/dist/vega/{p-3cdbee7e.js → p-053eb64a.js} +1 -1
  326. package/dist/vega/{p-76c7538a.entry.js → p-0685cba6.entry.js} +1 -1
  327. package/dist/vega/{p-476cc642.entry.js → p-0b38a01f.entry.js} +1 -1
  328. package/dist/vega/{p-5e4fb663.entry.js → p-0bb3be0b.entry.js} +1 -1
  329. package/dist/vega/{p-e74c275a.entry.js → p-12d4488b.entry.js} +1 -1
  330. package/dist/vega/{p-5397648b.entry.js → p-13c6a04c.entry.js} +1 -1
  331. package/dist/vega/{p-b6c51409.entry.js → p-185dfdd4.entry.js} +1 -1
  332. package/dist/vega/{p-942fc9b9.js → p-199dc74b.js} +1 -1
  333. package/dist/vega/p-1bd5d806.entry.js +1 -0
  334. package/dist/vega/p-1eb5b772.entry.js +1 -0
  335. package/dist/vega/{p-2591f217.entry.js → p-1f061725.entry.js} +1 -1
  336. package/dist/vega/{p-64c281ec.entry.js → p-1f43f551.entry.js} +1 -1
  337. package/dist/vega/{p-1da54ff3.js → p-2033f86e.js} +1 -1
  338. package/dist/vega/{p-e513f041.js → p-228de113.js} +1 -1
  339. package/dist/vega/{p-f1436035.js → p-24cb0a7e.js} +1 -1
  340. package/dist/vega/{p-f92fc49b.entry.js → p-299e14b4.entry.js} +1 -1
  341. package/dist/vega/{p-da6369d4.entry.js → p-2d91799a.entry.js} +1 -1
  342. package/dist/vega/{p-0bc93777.entry.js → p-2f4f3744.entry.js} +1 -1
  343. package/dist/vega/{p-b32f7aac.entry.js → p-303efbfe.entry.js} +1 -1
  344. package/dist/vega/p-308aa2e3.js +1 -0
  345. package/dist/vega/{p-d15e70d7.entry.js → p-33837794.entry.js} +1 -1
  346. package/dist/vega/p-33c6fb3f.entry.js +1 -0
  347. package/dist/vega/{p-9b2d8516.entry.js → p-3494a5f1.entry.js} +1 -1
  348. package/dist/vega/{p-66199d68.js → p-378e5881.js} +1 -1
  349. package/dist/vega/{p-bf0ced3c.js → p-39482a1a.js} +1 -1
  350. package/dist/vega/p-39b4c838.js +1 -0
  351. package/dist/vega/{p-3be7bfee.entry.js → p-3b953a24.entry.js} +1 -1
  352. package/dist/vega/{p-2ee4def0.js → p-3c21b875.js} +1 -1
  353. package/dist/vega/p-43257678.js +1 -0
  354. package/dist/vega/{p-4c3075ef.js → p-45ead9fe.js} +1 -1
  355. package/dist/vega/{p-351405f2.entry.js → p-4897bedd.entry.js} +1 -1
  356. package/dist/vega/{p-02a4732a.js → p-4c192985.js} +1 -1
  357. package/dist/vega/{p-cc5a3a1b.entry.js → p-4dd6554e.entry.js} +1 -1
  358. package/dist/vega/{p-d4564bfd.js → p-521d1d07.js} +1 -1
  359. package/dist/vega/{p-57257de0.entry.js → p-5910be31.entry.js} +1 -1
  360. package/dist/vega/{p-9c309b85.entry.js → p-59d70a67.entry.js} +1 -1
  361. package/dist/vega/{p-20223e8e.entry.js → p-5cdcd08f.entry.js} +1 -1
  362. package/dist/vega/{p-589b7ea3.entry.js → p-5d36cc3f.entry.js} +1 -1
  363. package/dist/vega/{p-09cb98f3.entry.js → p-5e1c913d.entry.js} +1 -1
  364. package/dist/vega/p-5e2ef0b8.entry.js +1 -0
  365. package/dist/vega/p-5f377954.js +1 -1
  366. package/dist/vega/{p-81fbf18f.entry.js → p-5f854901.entry.js} +1 -1
  367. package/dist/vega/p-5fec05a2.js +1 -0
  368. package/dist/vega/p-63596567.entry.js +1 -0
  369. package/dist/vega/{p-92469fa1.entry.js → p-63a5bbf4.entry.js} +1 -1
  370. package/dist/vega/{p-89d2cf34.js → p-64c3d021.js} +1 -1
  371. package/dist/vega/{p-0b36f4ce.js → p-651fe4fc.js} +1 -1
  372. package/dist/vega/{p-26ef2066.entry.js → p-671afda4.entry.js} +1 -1
  373. package/dist/vega/{p-5970369e.entry.js → p-676bee73.entry.js} +1 -1
  374. package/dist/vega/{p-6180c1af.entry.js → p-6a4db686.entry.js} +1 -1
  375. package/dist/vega/{p-614e450a.entry.js → p-6ce1e9d4.entry.js} +1 -1
  376. package/dist/vega/{p-460429da.entry.js → p-6d371296.entry.js} +1 -1
  377. package/dist/vega/{p-bc0ae89a.entry.js → p-6f96dd01.entry.js} +1 -1
  378. package/dist/vega/{p-2d58cf34.entry.js → p-719354e7.entry.js} +1 -1
  379. package/dist/vega/{p-134ed822.entry.js → p-74e684fc.entry.js} +1 -1
  380. package/dist/vega/{p-969066d3.entry.js → p-78d607ca.entry.js} +1 -1
  381. package/dist/vega/p-7c594a9f.js +1 -0
  382. package/dist/vega/p-7cd2b93b.js +1 -0
  383. package/dist/vega/{p-8a484812.entry.js → p-833d81d0.entry.js} +1 -1
  384. package/dist/vega/{p-4f21faf1.js → p-840c09c7.js} +1 -1
  385. package/dist/vega/p-852fa2d2.entry.js +1 -0
  386. package/dist/vega/{p-4f5a2b0c.entry.js → p-85ad1c21.entry.js} +1 -1
  387. package/dist/vega/{p-b4d88fce.entry.js → p-8a5c123f.entry.js} +1 -1
  388. package/dist/vega/{p-5313d0bc.js → p-901ff5d3.js} +1 -1
  389. package/dist/vega/{p-2f88ba36.entry.js → p-9439077d.entry.js} +1 -1
  390. package/dist/vega/{p-c2377afa.js → p-99b1492c.js} +1 -1
  391. package/dist/vega/{p-40924882.entry.js → p-9d492a46.entry.js} +1 -1
  392. package/dist/vega/p-9e6db93d.entry.js +1 -0
  393. package/dist/vega/{p-427b2b55.entry.js → p-a082d41b.entry.js} +1 -1
  394. package/dist/vega/{p-27dfa896.js → p-a4912b85.js} +1 -1
  395. package/dist/vega/p-a528714c.js +1 -0
  396. package/dist/vega/{p-521ace2d.js → p-a5713178.js} +1 -1
  397. package/dist/vega/{p-7cd2fac8.entry.js → p-a6010b93.entry.js} +1 -1
  398. package/dist/vega/{p-b110b7bd.entry.js → p-a61e2108.entry.js} +1 -1
  399. package/dist/vega/{p-3fba9e77.entry.js → p-a69c9e42.entry.js} +1 -1
  400. package/dist/vega/{p-cfb2af9c.entry.js → p-ab3c4b43.entry.js} +1 -1
  401. package/dist/vega/{p-8175d8de.entry.js → p-ad2055f4.entry.js} +1 -1
  402. package/dist/vega/{p-0717073b.entry.js → p-ae598946.entry.js} +1 -1
  403. package/dist/vega/{p-743c5baf.js → p-b4c25109.js} +1 -1
  404. package/dist/vega/{p-2608b9fe.js → p-b510e4d7.js} +1 -1
  405. package/dist/vega/{p-2a1b3108.entry.js → p-b68a13df.entry.js} +1 -1
  406. package/dist/vega/{p-320cccc5.entry.js → p-ba24f7b9.entry.js} +1 -1
  407. package/dist/vega/{p-2b90fae6.js → p-bc9484a6.js} +1 -1
  408. package/dist/vega/{p-dcae53cf.entry.js → p-c12000ee.entry.js} +1 -1
  409. package/dist/vega/{p-25c831a4.entry.js → p-c1fa6088.entry.js} +2 -2
  410. package/dist/vega/{p-ab29f968.js → p-c241f615.js} +1 -1
  411. package/dist/vega/{p-6244b0ad.entry.js → p-c682d53c.entry.js} +1 -1
  412. package/dist/vega/{p-c61f8ca6.entry.js → p-c8a3fb7f.entry.js} +1 -1
  413. package/dist/vega/{p-0ec14fbc.entry.js → p-c96d28dc.entry.js} +1 -1
  414. package/dist/vega/p-cef9f638.js +1 -0
  415. package/dist/vega/{p-648134d2.entry.js → p-cf211582.entry.js} +1 -1
  416. package/dist/vega/p-d3137a6e.entry.js +1 -0
  417. package/dist/vega/p-d418ecc1.entry.js +1 -0
  418. package/dist/vega/p-d5d6dae6.js +1 -0
  419. package/dist/vega/p-d5ff8b7f.js +1 -0
  420. package/dist/vega/p-d9671d27.js +1 -0
  421. package/dist/vega/{p-7bad6577.entry.js → p-dabba918.entry.js} +1 -1
  422. package/dist/vega/{p-dadc6ab3.js → p-dc92fec6.js} +1 -1
  423. package/dist/vega/{p-36ae2dd3.entry.js → p-e5af5a4d.entry.js} +1 -1
  424. package/dist/vega/{p-b1054e18.entry.js → p-e853105a.entry.js} +1 -1
  425. package/dist/vega/{p-d72abacd.entry.js → p-e9b86dac.entry.js} +1 -1
  426. package/dist/vega/p-ebfc4323.entry.js +1 -0
  427. package/dist/vega/{p-81765b4b.entry.js → p-f83739d0.entry.js} +1 -1
  428. package/dist/vega/{p-6585cfd5.entry.js → p-fbc85265.entry.js} +1 -1
  429. package/dist/vega/{p-3ab20f9e.entry.js → p-fbd38139.entry.js} +1 -1
  430. package/dist/vega/{p-bdd9ef3b.js → p-fddca002.js} +1 -1
  431. package/dist/vega/{p-de1ee131.entry.js → p-fee972e6.entry.js} +1 -1
  432. package/dist/vega/{p-b73532c0.entry.js → p-fff13ed1.entry.js} +1 -1
  433. package/dist/vega/vega.esm.js +1 -1
  434. package/package.json +3 -2
  435. package/dist/vega/p-02b29c18.js +0 -1
  436. package/dist/vega/p-079f5d94.entry.js +0 -1
  437. package/dist/vega/p-0e3cd270.entry.js +0 -1
  438. package/dist/vega/p-0e954b9b.js +0 -1
  439. package/dist/vega/p-10454aa5.entry.js +0 -1
  440. package/dist/vega/p-258f9603.js +0 -1
  441. package/dist/vega/p-51d40b0d.entry.js +0 -1
  442. package/dist/vega/p-56ff8559.entry.js +0 -1
  443. package/dist/vega/p-575235c8.js +0 -1
  444. package/dist/vega/p-657446a3.entry.js +0 -1
  445. package/dist/vega/p-6908117a.js +0 -1
  446. package/dist/vega/p-846ae5fb.js +0 -1
  447. package/dist/vega/p-893d5dfa.js +0 -1
  448. package/dist/vega/p-8a6b820a.entry.js +0 -1
  449. package/dist/vega/p-8a877e12.js +0 -1
  450. package/dist/vega/p-9ffd2a96.entry.js +0 -1
  451. package/dist/vega/p-bb61f015.js +0 -1
  452. package/dist/vega/p-c7726252.js +0 -1
  453. package/dist/vega/p-d85b0bfa.entry.js +0 -1
  454. package/dist/vega/p-d87c3058.entry.js +0 -1
  455. package/dist/vega/p-e0729c4d.entry.js +0 -1
  456. package/dist/vega/p-e5cd6521.js +0 -1
  457. /package/dist/vega/{p-48a58baf.js → p-6b2342e0.js} +0 -0
@@ -7,6 +7,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { VegaSlimmer, MapToComponentField, MapToComponentMethod } from 'vega-slimmer/core';
8
8
  import { CalendarEvent } from '../../../../../helpers/calendar/calendar-event';
9
9
  import { LogUtility } from '../../../../../utils/log';
10
+ import ChangeManager from '../../../../../helpers/change-manager/change-manager';
11
+ import { VegaInternalCalendarEventPreviewHide } from '../../../../../helpers/event-manager/event-id/vega-internal-event-id';
12
+ import DomNodeSubjectFactory from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
10
13
  /** The `VegaCalendarEventController` class in TypeScript manages calendar events, initializes event layouts, retrieves events for the current date, and checks if a date falls within the range of a calendar event. */
11
14
  export class VegaCalendarEventController extends VegaSlimmer {
12
15
  constructor() {
@@ -42,6 +45,17 @@ export class VegaCalendarEventController extends VegaSlimmer {
42
45
  updateWhenComponentWillLoad() {
43
46
  this.initCalendarEvents(this.events);
44
47
  }
48
+ /**
49
+ * Handle timezone changes by updating all calendar events
50
+ *
51
+ */
52
+ updateAfterTimezoneChange() {
53
+ if (this.calendarEvents.length > 0) {
54
+ this.calendarEvents.forEach((event) => event.updateTimezone(this.timezone));
55
+ }
56
+ ChangeManager.notify(DomNodeSubjectFactory.getSubject(this.host, VegaInternalCalendarEventPreviewHide), {});
57
+ this.repeatEventMap.clear();
58
+ }
45
59
  /**
46
60
  * initial calendar events
47
61
  *
@@ -52,7 +66,7 @@ export class VegaCalendarEventController extends VegaSlimmer {
52
66
  if (newEvents) {
53
67
  newEvents.forEach((item) => {
54
68
  try {
55
- const calendarEvent = new CalendarEvent(item);
69
+ const calendarEvent = new CalendarEvent(item, undefined, this.timezone);
56
70
  result.push(calendarEvent);
57
71
  }
58
72
  catch (_a) {
@@ -119,9 +133,15 @@ __decorate([
119
133
  __decorate([
120
134
  MapToComponentField()
121
135
  ], VegaCalendarEventController.prototype, "events", void 0);
136
+ __decorate([
137
+ MapToComponentField()
138
+ ], VegaCalendarEventController.prototype, "timezone", void 0);
122
139
  __decorate([
123
140
  MapToComponentMethod('watchEventsChange')
124
141
  ], VegaCalendarEventController.prototype, "updateAfterEventChange", null);
125
142
  __decorate([
126
143
  MapToComponentMethod('componentWillLoad')
127
144
  ], VegaCalendarEventController.prototype, "updateWhenComponentWillLoad", null);
145
+ __decorate([
146
+ MapToComponentMethod('watchTimezoneChange')
147
+ ], VegaCalendarEventController.prototype, "updateAfterTimezoneChange", null);
@@ -1,4 +1,10 @@
1
- import { VegaSlimmer } from 'vega-slimmer/core';
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
2
8
  /** Event preview popover controller */
3
9
  export class VegaCalendarEventPreviewPopoverController extends VegaSlimmer {
4
10
  constructor() {
@@ -55,6 +61,14 @@ export class VegaCalendarEventPreviewPopoverController extends VegaSlimmer {
55
61
  }
56
62
  }
57
63
  }
64
+ /**
65
+ * clear all preview container maps when timezone changes
66
+ *
67
+ */
68
+ clearAllPreviewContainers() {
69
+ this.singleEventPreviewContainerMap.clear();
70
+ this.groupEventsPreviewContainerMap.clear();
71
+ }
58
72
  /**
59
73
  * Generate a unique key for the given events
60
74
  *
@@ -81,3 +95,6 @@ export class VegaCalendarEventPreviewPopoverController extends VegaSlimmer {
81
95
  return `-${viewDate.year}-${viewDate.month}-${viewDate.date}`;
82
96
  }
83
97
  }
98
+ __decorate([
99
+ MapToComponentMethod('watchTimezoneChange')
100
+ ], VegaCalendarEventPreviewPopoverController.prototype, "clearAllPreviewContainers", null);
@@ -38,6 +38,13 @@ export class VegaCalendarPostOperationDateController extends VegaSlimmer {
38
38
  }
39
39
  }
40
40
  }
41
+ /**
42
+ * Handle timezone changes by updating postOperationDate
43
+ *
44
+ */
45
+ updateAfterTimezoneChange() {
46
+ this.postOperationDate = CalendarDate.from(new Date(), this.timezone);
47
+ }
41
48
  /**
42
49
  * Check if the first date should be set
43
50
  * Both the new and old values are of the month type.
@@ -50,12 +57,18 @@ export class VegaCalendarPostOperationDateController extends VegaSlimmer {
50
57
  shouldSetCurrentDateToFirstDayOfMonth(newValue, oldValue) {
51
58
  return (newValue.type === 'month' &&
52
59
  (oldValue === null || oldValue === void 0 ? void 0 : oldValue.type) === 'month' &&
53
- !newValue.current.equal(CalendarDate.from(new Date())));
60
+ !newValue.current.equal(CalendarDate.from(new Date(), this.timezone)));
54
61
  }
55
62
  }
56
63
  __decorate([
57
64
  MapToComponentField({ writable: true })
58
65
  ], VegaCalendarPostOperationDateController.prototype, "postOperationDate", void 0);
66
+ __decorate([
67
+ MapToComponentField()
68
+ ], VegaCalendarPostOperationDateController.prototype, "timezone", void 0);
59
69
  __decorate([
60
70
  MapToComponentMethod('watchCurrentPeriodChange')
61
71
  ], VegaCalendarPostOperationDateController.prototype, "setDate", null);
72
+ __decorate([
73
+ MapToComponentMethod('watchTimezoneChange')
74
+ ], VegaCalendarPostOperationDateController.prototype, "updateAfterTimezoneChange", null);
@@ -1,4 +1,5 @@
1
1
  import { CalendarDate } from '../../../../../../helpers/calendar';
2
+ import { getSystemTimezone } from '../../../../../../helpers/calendar/utils';
2
3
  import { CalendarEventDailyRepeatPattern } from './calendar-event-daily-repeat-pattern';
3
4
  import { CalendarEventMonthlyRepeatPattern } from './calendar-event-monthly-repeat-pattern';
4
5
  import { CalendarEventWeeklyRepeatPattern } from './calendar-event-weekly-repeat-pattern';
@@ -10,27 +11,25 @@ class CalendarEventRepeatPatternFactory {
10
11
  *
11
12
  * @param {Date} startDate repeat start date
12
13
  * @param {VegaCalendarEventRepeatOptions|undefined} repeatOptions repeat options
14
+ * @param {string} timezone The timezone identifier (e.g., America/New_York).
13
15
  * @returns {CalendarEventBaseRepeatPattern} the match repeat pattern
14
16
  */
15
- getPattern(startDate, repeatOptions) {
17
+ getPattern(startDate, repeatOptions, timezone = getSystemTimezone()) {
16
18
  const repeatStartDate = CalendarDate.from(startDate);
17
19
  const { frequency, interval = 1, byWeekDay, until, count, } = repeatOptions;
18
- const repeatEndDate = this.initDate(until);
20
+ const repeatEndDate = this.initDate(until, timezone);
19
21
  return this.initRepeatPattern(frequency, repeatStartDate, interval < 1 ? 1 : interval, count, repeatEndDate, byWeekDay);
20
22
  }
21
23
  /**
22
24
  * The `initDate` function initializes a `CalendarDate` object based on the input date string or Date object provided.
23
25
  *
24
26
  * @param {Nullable<string | Date>} date - The `date` parameter can be either a string or a Date object.
27
+ * @param {string} timezone The timezone identifier (e.g., 'America/New_York').
25
28
  * @returns {Nullable<CalendarDate>} The function `initDate` returns a `Nullable<CalendarDate>`, which means it can return either a `CalendarDate` object or `null`.
26
29
  */
27
- initDate(date) {
28
- if (date && typeof date === 'object') {
29
- return CalendarDate.from(date);
30
- }
31
- else if (date && typeof date === 'string') {
32
- const [month, day, year] = date.split('/');
33
- return new CalendarDate(Number(year), Number(month), Number(day));
30
+ initDate(date, timezone) {
31
+ if (date) {
32
+ return CalendarDate.from(new Date(date), timezone);
34
33
  }
35
34
  }
36
35
  /**
@@ -128,7 +128,9 @@ export class CalendarEventWeeklyRepeatPattern extends CalendarEventBaseRepeatPat
128
128
  const days = index - currentWeekDayIndex;
129
129
  const { year, month, date } = this.repeatStartDate;
130
130
  const dateItem = CalendarDate.from(new Date(year, month - 1, date + days));
131
- result.push(dateItem);
131
+ if (!this.until || dateItem.toDate() <= this.until.toDate()) {
132
+ result.push(dateItem);
133
+ }
132
134
  });
133
135
  this.cache = [result];
134
136
  }
@@ -159,3 +159,37 @@ describe('calendarEventRepeatPatternFactory', () => {
159
159
  expect(pattern['cache'].length).toEqual(2);
160
160
  });
161
161
  });
162
+ describe('calendarEventRepeatPatternFactory with timezone', () => {
163
+ const timezone1 = 'Etc/GMT+12';
164
+ const timezone2 = 'Pacific/Apia';
165
+ it('dailyPattern respects timezone and date', () => {
166
+ const pattern = calendarEventRepeatPatternFactory.getPattern(new Date(2024, 0, 1), Object.assign(Object.assign({}, dailyRepeatOptions), { until: '02/01/2024' }), timezone1);
167
+ const pattern2 = calendarEventRepeatPatternFactory.getPattern(new Date(2024, 0, 1), Object.assign(Object.assign({}, monthlyRepeatOptions), { until: '02/01/2024' }), timezone2);
168
+ const result = pattern.getRepeatSeries(new MonthPeriod(new CalendarDate(2024, 1, 1)));
169
+ const result2 = pattern2.getRepeatSeries(new MonthPeriod(new CalendarDate(2024, 1, 1)));
170
+ const lastIndex1 = result.length - 1;
171
+ const lastIndex2 = result2.length - 1;
172
+ expect(result[lastIndex1].year).toEqual(2024);
173
+ expect(result[lastIndex1].month).toEqual(1);
174
+ expect(result[lastIndex1].date).toEqual(31);
175
+ expect(result2[lastIndex2].year).toEqual(2024);
176
+ expect(result2[lastIndex2].month).toEqual(2);
177
+ expect(result2[lastIndex2].date).toEqual(1);
178
+ });
179
+ it('weeklyPattern respects timezone and date', () => {
180
+ const pattern = calendarEventRepeatPatternFactory.getPattern(new Date(2024, 0, 1), Object.assign(Object.assign({}, weeklyRepeatOptions), { until: '01/03/2024' }), timezone1);
181
+ const pattern2 = calendarEventRepeatPatternFactory.getPattern(new Date(2024, 0, 1), Object.assign(Object.assign({}, weeklyRepeatOptions), { until: '01/03/2024' }), timezone2);
182
+ const result = pattern.getRepeatSeries(new MonthPeriod(new CalendarDate(2024, 1, 1)));
183
+ const result2 = pattern2.getRepeatSeries(new MonthPeriod(new CalendarDate(2024, 1, 1)));
184
+ expect(result.length).toEqual(1);
185
+ expect(result2.length).toEqual(2);
186
+ });
187
+ it('monthlyPattern respects timezone and date', () => {
188
+ const pattern = calendarEventRepeatPatternFactory.getPattern(new Date(2024, 0, 1), Object.assign(Object.assign({}, monthlyRepeatOptions), { until: '02/01/2024' }), timezone1);
189
+ const pattern2 = calendarEventRepeatPatternFactory.getPattern(new Date(2024, 0, 1), Object.assign(Object.assign({}, monthlyRepeatOptions), { until: '02/01/2024' }), timezone2);
190
+ const result = pattern.getRepeatSeries(new MonthPeriod(new CalendarDate(2024, 1, 1)));
191
+ const result2 = pattern2.getRepeatSeries(new MonthPeriod(new CalendarDate(2024, 1, 1)));
192
+ expect(result.length).toEqual(1);
193
+ expect(result2.length).toEqual(2);
194
+ });
195
+ });
@@ -22,7 +22,7 @@ export class VegaCalendarEventItemRenderer extends VegaSlimmer {
22
22
  * @returns {HTMLVegaCalendarEventElement} calendar event element
23
23
  */
24
24
  render(item, classMap, targetCalendarViewDate, isGroupEvent = false) {
25
- return (h("vega-calendar-event", { "data-calendar-ref": this.host, key: item.eventKey, calendarEvent: item, class: classMap, onKeyDown: createEnterKeyHandlerToTriggerClick(),
25
+ return (h("vega-calendar-event", { "data-calendar-ref": this.host, key: `${item.eventKey}-${item.startTime}-${item.endTime}`, calendarEvent: item, class: classMap, onKeyDown: createEnterKeyHandlerToTriggerClick(),
26
26
  // eslint-disable-next-line react/jsx-no-bind
27
27
  onClick: () => {
28
28
  this.handleEventClick(item);
@@ -7,8 +7,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { h } from '@stencil/core';
8
8
  import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
9
9
  import ChangeManager from '../../../../../helpers/change-manager/change-manager';
10
+ import { VegaInternalCalendarEventPreviewHide } from '../../../../../helpers/event-manager/event-id/vega-internal-event-id';
10
11
  import { Observer } from '../../../../../helpers/change-manager/observer/observer';
11
- import { CALENDAR_EVENT_PREVIEW_POPOVER_HIDE } from '../../../../../helpers/change-manager/subject/static-subject/static-subject-title';
12
+ import DomNodeSubjectFactory from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
12
13
  export class VegaCalendarEventPreviewPopoverRenderer extends VegaSlimmer {
13
14
  constructor() {
14
15
  super(...arguments);
@@ -24,7 +25,7 @@ export class VegaCalendarEventPreviewPopoverRenderer extends VegaSlimmer {
24
25
  'event-preview-popover': true,
25
26
  'block': true,
26
27
  }, padding: "0", size: VegaCalendarEventPreviewPopoverRenderer.SINGLE_EVENT_PREVIEW_WIDTH, ref: (el) => {
27
- this.setPopoverHideObserver(el, event);
28
+ this.setPopoverHideObserver(el);
28
29
  } },
29
30
  h("div", { slot: "popover-content", class: "event-preview-popover-content" }, this.eventItemRenderer.render(event, classMap, targetCalendarViewDate)),
30
31
  h("div", { slot: "popover" },
@@ -34,13 +35,13 @@ export class VegaCalendarEventPreviewPopoverRenderer extends VegaSlimmer {
34
35
  : this.eventPreviewPopoverController.deleteEventPreviewContainer(event, targetCalendarViewDate);
35
36
  } }))));
36
37
  }
37
- setPopoverHideObserver(popover, event) {
38
+ setPopoverHideObserver(popover) {
38
39
  if (popover) {
39
- this.popoverHideObserver = new Observer((payload) => event === payload, async () => await popover.hide());
40
- ChangeManager.register(CALENDAR_EVENT_PREVIEW_POPOVER_HIDE, this.popoverHideObserver);
40
+ this.popoverHideObserver = new Observer((_payload) => true, async () => await popover.hide());
41
+ ChangeManager.register(DomNodeSubjectFactory.getSubject(this.host, VegaInternalCalendarEventPreviewHide), this.popoverHideObserver);
41
42
  }
42
43
  else if (this.popoverHideObserver) {
43
- ChangeManager.unregister(CALENDAR_EVENT_PREVIEW_POPOVER_HIDE, this.popoverHideObserver);
44
+ ChangeManager.unregister(DomNodeSubjectFactory.getSubject(this.host, VegaInternalCalendarEventPreviewHide), this.popoverHideObserver);
44
45
  }
45
46
  }
46
47
  }
@@ -6,6 +6,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { h } from '@stencil/core';
8
8
  import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
9
+ import { LogUtility } from '../../../../../utils/log';
10
+ import { getSystemTimezone } from '../../../../../helpers/calendar/utils';
9
11
  /**
10
12
  * Render a red line that representing the current time
11
13
  */
@@ -17,13 +19,13 @@ export class VegaCalendarTimeMarkerRenderer extends VegaSlimmer {
17
19
  * @returns {HTMLElement} the html element
18
20
  */
19
21
  render(source) {
20
- const isVisible = source.findIndex((calendarDate) => calendarDate.isToday()) >= 0;
22
+ const isVisible = source.findIndex((calendarDate) => calendarDate.isToday(this.timezone)) >= 0;
21
23
  return (h("div", { class: {
22
24
  'time-marker-container': true,
23
25
  'hidden': !isVisible,
24
26
  } },
25
27
  h("div", { class: "time-marker", style: { top: this.getTimeMarkerPosition() }, ref: (div) => (this.timeMarkerRef = div) }, source.map((item) => {
26
- return h("div", { key: item.date, class: { active: item.isToday() } });
28
+ return h("div", { key: item.date, class: { active: item.isToday(this.timezone) } });
27
29
  }))));
28
30
  }
29
31
  /**
@@ -61,6 +63,27 @@ export class VegaCalendarTimeMarkerRenderer extends VegaSlimmer {
61
63
  getTimeMarkerPosition() {
62
64
  const now = new Date();
63
65
  const minutesOneDay = 24 * 60;
66
+ if (this.timezone && this.timezone !== getSystemTimezone()) {
67
+ try {
68
+ const formatter = new Intl.DateTimeFormat([], {
69
+ timeZone: this.timezone,
70
+ hour: '2-digit',
71
+ minute: '2-digit',
72
+ hour12: false,
73
+ });
74
+ const parts = formatter.formatToParts(now);
75
+ const hourPart = parts.find((part) => part.type === 'hour');
76
+ const minutePart = parts.find((part) => part.type === 'minute');
77
+ if (hourPart !== undefined && minutePart !== undefined) {
78
+ const hours = parseInt(hourPart.value, 10);
79
+ const minutes = parseInt(minutePart.value, 10);
80
+ return ((hours * 60 + minutes) / minutesOneDay) * 100 + '%';
81
+ }
82
+ }
83
+ catch (_a) {
84
+ LogUtility.warn('Invalid timezone:', this.timezone);
85
+ }
86
+ }
64
87
  return ((now.getHours() * 60 + now.getMinutes()) / minutesOneDay) * 100 + '%';
65
88
  }
66
89
  /*
@@ -129,11 +152,11 @@ export class VegaCalendarTimeMarkerRenderer extends VegaSlimmer {
129
152
  const calendarViewElement = this.viewRenderer.getCalendarViewElementRef();
130
153
  if (calendarViewElement) {
131
154
  const fixedWeekHeader = calendarViewElement.querySelector('.calendar-view-title-container');
132
- const weekHeaderHeight = fixedWeekHeader.offsetHeight;
133
- const viewHeight = calendarViewElement.offsetHeight;
155
+ const weekHeaderHeight = fixedWeekHeader ? fixedWeekHeader.offsetHeight : 0;
156
+ const viewHeight = typeof calendarViewElement.offsetHeight === 'number' ? calendarViewElement.offsetHeight : 0;
134
157
  const displayViewHeight = Math.max(viewHeight - weekHeaderHeight, 0);
135
158
  const halfDisplayViewHeight = displayViewHeight / 2;
136
- const viewScrollHeight = calendarViewElement.scrollHeight;
159
+ const viewScrollHeight = typeof calendarViewElement.scrollHeight === 'number' ? calendarViewElement.scrollHeight : 0;
137
160
  const emptySpace = 16;
138
161
  const timeMarkerTop = (Number(this.getTimeMarkerPosition().replace('%', '')) / 100) *
139
162
  Math.max(viewScrollHeight - emptySpace - weekHeaderHeight, 0);
@@ -150,6 +173,9 @@ __decorate([
150
173
  __decorate([
151
174
  MapToComponentField()
152
175
  ], VegaCalendarTimeMarkerRenderer.prototype, "viewRenderer", void 0);
176
+ __decorate([
177
+ MapToComponentField()
178
+ ], VegaCalendarTimeMarkerRenderer.prototype, "timezone", void 0);
153
179
  __decorate([
154
180
  MapToComponentMethod('watchViewModeChange')
155
181
  ], VegaCalendarTimeMarkerRenderer.prototype, "updateTimeLine", null);
@@ -49,7 +49,7 @@ export class VegaCalendarViewWithTimeRenderer extends VegaCalendarDateBlockRende
49
49
  return (h("div", { class: "calendar-view-title-container" },
50
50
  h("div", { class: "calendar-view-row" },
51
51
  h("div", { class: "time-line-empty" }),
52
- h("div", { class: "calendar-view-title" }, source.map((item, index) => (h("div", { key: item.date, class: { active: item.isToday() } },
52
+ h("div", { class: "calendar-view-title" }, source.map((item, index) => (h("div", { key: item.date, class: { active: item.isToday(this.timezone) } },
53
53
  h("div", null, this.translationSlimmer.t(weekHead[index])),
54
54
  h("div", { class: "week-day" }, item.date)))))),
55
55
  h("div", { class: "calendar-view-row calendar-view-event-all-container border-divider-bottom" },
@@ -129,3 +129,6 @@ __decorate([
129
129
  __decorate([
130
130
  MapToComponentField()
131
131
  ], VegaCalendarViewWithTimeRenderer.prototype, "enableDateClick", void 0);
132
+ __decorate([
133
+ MapToComponentField()
134
+ ], VegaCalendarViewWithTimeRenderer.prototype, "timezone", void 0);
@@ -7,11 +7,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { forceUpdate, h } from '@stencil/core';
8
8
  import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
9
9
  import { DomNodeSubjectObserverFactory } from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-observer-factory';
10
- import { VegaInternalCalendarEventPreviewClear, VegaInternalCalendarMonthEventsChange, } from '../../../../../helpers/event-manager/event-id/vega-internal-event-id';
10
+ import { VegaInternalCalendarEventPreviewClear, VegaInternalCalendarEventPreviewHide, VegaInternalCalendarMonthEventsChange, } from '../../../../../helpers/event-manager/event-id/vega-internal-event-id';
11
11
  import { createEnterKeyHandlerToTriggerClick } from '../../../../../utils/accessibility';
12
12
  import { Observer } from '../../../../../helpers/change-manager/observer/observer';
13
13
  import ChangeManager from '../../../../../helpers/change-manager/change-manager';
14
- import { CALENDAR_EVENT_PREVIEW_POPOVER_HIDE } from '../../../../../helpers/change-manager/subject/static-subject/static-subject-title';
15
14
  import { VegaPopoverHide } from '../../../../../helpers/event-manager/event-id/vega-event-id';
16
15
  import DomNodeSubjectFactory from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
17
16
  /** This code snippet defines a TypeScript class `VegaCalendarMonthEventRenderer` that extends `VegaSlimmer`. Here's a breakdown of what the class and its methods are doing: */
@@ -81,9 +80,11 @@ export class VegaCalendarMonthEventRenderer extends VegaSlimmer {
81
80
  */
82
81
  addMaxDisplayCountChange() {
83
82
  DomNodeSubjectObserverFactory.addUniqueObserverToNode(this.host, VegaInternalCalendarMonthEventsChange, (payload) => {
84
- this.maxMonthDisplayEventsCount = payload.detail;
85
- if (this.viewMode === 'month') {
86
- forceUpdate(this.host);
83
+ if (this.maxMonthDisplayEventsCount !== payload.detail) {
84
+ this.maxMonthDisplayEventsCount = payload.detail;
85
+ if (this.viewMode === 'month') {
86
+ forceUpdate(this.host);
87
+ }
87
88
  }
88
89
  });
89
90
  }
@@ -105,7 +106,7 @@ export class VegaCalendarMonthEventRenderer extends VegaSlimmer {
105
106
  });
106
107
  return (h("div", { class: "month-event-more" },
107
108
  h("vega-popover", { trigger: "click", placement: "right", padding: '0', ref: (el) => {
108
- this.setPopoverHideObserver(el, events);
109
+ this.setPopoverHideObserver(el);
109
110
  }, isScreenPosition: true },
110
111
  h("div", { tabIndex: 0, slot: "popover-content", role: "button", class: "more-button", onKeyDown: createEnterKeyHandlerToTriggerClick() }, `${moreItemsLength} More`),
111
112
  h("vega-flex", { slot: "popover" },
@@ -175,13 +176,13 @@ export class VegaCalendarMonthEventRenderer extends VegaSlimmer {
175
176
  }
176
177
  return rowEvents;
177
178
  }
178
- setPopoverHideObserver(popover, events) {
179
+ setPopoverHideObserver(popover) {
179
180
  if (popover) {
180
- this.popoverHideObserver = new Observer((payload) => events.includes(payload), async () => await popover.hide());
181
- ChangeManager.register(CALENDAR_EVENT_PREVIEW_POPOVER_HIDE, this.popoverHideObserver);
181
+ this.popoverHideObserver = new Observer((_payload) => true, async () => await popover.hide());
182
+ ChangeManager.register(DomNodeSubjectFactory.getSubject(this.host, VegaInternalCalendarEventPreviewHide), this.popoverHideObserver);
182
183
  }
183
184
  else if (this.popoverHideObserver) {
184
- ChangeManager.unregister(CALENDAR_EVENT_PREVIEW_POPOVER_HIDE, this.popoverHideObserver);
185
+ ChangeManager.unregister(DomNodeSubjectFactory.getSubject(this.host, VegaInternalCalendarEventPreviewHide), this.popoverHideObserver);
185
186
  }
186
187
  // we should clear current event in vega-calendar-event-preview when popover hide
187
188
  popover &&
@@ -59,7 +59,7 @@ export class VegaCalendarMonthViewRenderer extends VegaCalendarDateBlockRenderer
59
59
  return (h("div", Object.assign({ class: {
60
60
  'row-cell border-divider-right': true,
61
61
  'current-month-day': item.compare(currentDate).inMonth,
62
- 'active': item.isToday(),
62
+ 'active': item.isToday(this.timezone),
63
63
  'disabled': isDisabled,
64
64
  }, key: `${item.month}-${item.date}` }, renderProps),
65
65
  this.renderDateBlock(item),
@@ -148,3 +148,6 @@ __decorate([
148
148
  __decorate([
149
149
  MapToComponentField()
150
150
  ], VegaCalendarMonthViewRenderer.prototype, "showSwitchView", void 0);
151
+ __decorate([
152
+ MapToComponentField()
153
+ ], VegaCalendarMonthViewRenderer.prototype, "timezone", void 0);
@@ -4,16 +4,21 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
7
+ import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
8
8
  import { Fragment, h } from '@stencil/core';
9
9
  import { getCalendarEventSlotName, getEventStatusBgColorStyle } from '../../../utils';
10
10
  import ChangeManager from '../../../../../helpers/change-manager/change-manager';
11
- import { CALENDAR_EVENT_PREVIEW_POPOVER_HIDE } from '../../../../../helpers/change-manager/subject/static-subject/static-subject-title';
12
11
  import { VegaInternalIconManager } from '../../../../../helpers/icon/internal-icon-manager';
13
12
  import closeIcon from '../../assets/close';
14
13
  import clockIcon from '../../assets/clock';
15
14
  import { vegaNonceManager } from '../../../../../helpers/csp/vega-nonce-manager';
15
+ import { findParent } from '../../../../../utils/ui';
16
+ import DomNodeSubjectFactory from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
17
+ import { VegaInternalCalendarEventPreviewHide } from '../../../../../helpers/event-manager/event-id/vega-internal-event-id';
16
18
  export class VegaCalendarEventPreviewDetailRenderer extends VegaSlimmer {
19
+ componentWillLoad() {
20
+ this.calendarRef = findParent(this.host, 'vega-calendar');
21
+ }
17
22
  render() {
18
23
  return (this.currentEvent && (h("vega-box", { class: "event-preview" },
19
24
  this.injectBackgroundColorStyle(),
@@ -28,9 +33,7 @@ export class VegaCalendarEventPreviewDetailRenderer extends VegaSlimmer {
28
33
  return (h("vega-flex", { justifyContent: "end", class: "preview-actions" },
29
34
  h("vega-button-circle", { icon: VegaInternalIconManager.getIconKey('close'), color: "text-primary", variant: "icon-only",
30
35
  /* eslint-disable-next-line react/jsx-no-bind */
31
- onVegaClick: () => {
32
- ChangeManager.notify(CALENDAR_EVENT_PREVIEW_POPOVER_HIDE, this.currentEvent);
33
- } })));
36
+ onVegaClick: this.onHidePopover.bind(this) })));
34
37
  }
35
38
  renderBasicFields() {
36
39
  const currentEvent = this.currentEvent;
@@ -42,6 +45,10 @@ export class VegaCalendarEventPreviewDetailRenderer extends VegaSlimmer {
42
45
  h("vega-font", { variant: "font-footnote1-long", color: "text-primary" }, currentEvent.generateDateTimeString(this.previewPayload.targetCalendarViewDate, this.previewPayload.timeFormat)),
43
46
  currentEvent.isRepeatEvent && (h("vega-font", { variant: "font-footnote1-long", color: "text-primary" }, currentEvent.generateRepeatString()))))));
44
47
  }
48
+ onHidePopover() {
49
+ this.calendarRef &&
50
+ ChangeManager.notify(DomNodeSubjectFactory.getSubject(this.calendarRef, VegaInternalCalendarEventPreviewHide), {});
51
+ }
45
52
  renderEventTitle() {
46
53
  const currentEvent = this.currentEvent;
47
54
  const eventSlotName = getCalendarEventSlotName(currentEvent.event.key);
@@ -80,3 +87,6 @@ __decorate([
80
87
  __decorate([
81
88
  MapToComponentField()
82
89
  ], VegaCalendarEventPreviewDetailRenderer.prototype, "currentEvent", void 0);
90
+ __decorate([
91
+ MapToComponentMethod('componentWillLoad')
92
+ ], VegaCalendarEventPreviewDetailRenderer.prototype, "componentWillLoad", null);
@@ -35,6 +35,7 @@ import { VegaCalendarTimeMarkerRenderer } from './slimmers/day-view/renderers/ve
35
35
  import { VegaCalendarPostOperationDateController } from './slimmers/common/controllers/vega-calendar-post-operation-date-controller';
36
36
  import { VegaCalendarEventPreviewPopoverRenderer } from './slimmers/common/renderers/vega-calendar-event-preview-popover-renderer';
37
37
  import { VegaCalendarEventPreviewPopoverController } from './slimmers/common/controllers/vega-calendar-event-preivew-popover-controller';
38
+ import { getSystemTimezone } from '../../helpers/calendar/utils';
38
39
  /**
39
40
  * @vegaVersion 2.14.0
40
41
  */
@@ -79,7 +80,7 @@ export class VegaCalendar {
79
80
  *
80
81
  * @type {CalendarDate}
81
82
  */
82
- this.postOperationDate = CalendarDate.from(new Date());
83
+ this.postOperationDate = this.getInitialPostOperationDate();
83
84
  this.showAllEventsInDayOrWeekView = false;
84
85
  this.calendarEvents = [];
85
86
  /**
@@ -138,6 +139,15 @@ export class VegaCalendar {
138
139
  * @vegaVersion 2.59.0
139
140
  */
140
141
  this.enabledEventPreview = true;
142
+ /**
143
+ * Specifies the IANA time zone or Etc/GMT±n format.
144
+ * It accepts values such as "America/New_York" or "Etc/GMT+12".
145
+ * If not set, the component defaults to the system's time zone.
146
+ * For a complete list of IANA time zones, see Time Zone DB(https://timezonedb.com/time-zones).
147
+ *
148
+ * @vegaVersion 2.65.0
149
+ */
150
+ this.timezone = getSystemTimezone();
141
151
  }
142
152
  /**
143
153
  * Tracks changes to the current period state.
@@ -186,9 +196,21 @@ export class VegaCalendar {
186
196
  watchShowWeekendsChange() {
187
197
  methodPlaceholder();
188
198
  }
199
+ /**
200
+ * Monitors changes in the timezone prop for the calendar.
201
+ */
202
+ watchTimezoneChange() {
203
+ methodPlaceholder();
204
+ }
189
205
  render() {
190
206
  return sanitizeVegaComponent(h(Host, null, this.renderer.render()), this.host);
191
207
  }
208
+ /**
209
+ * Get initial post operation date considering timezone
210
+ */
211
+ getInitialPostOperationDate() {
212
+ return CalendarDate.from(new Date(), this.timezone);
213
+ }
192
214
  static get is() { return "vega-calendar"; }
193
215
  static get encapsulation() { return "shadow"; }
194
216
  static get originalStyleUrls() { return {
@@ -430,6 +452,27 @@ export class VegaCalendar {
430
452
  "attribute": "enabled-event-preview",
431
453
  "reflect": false,
432
454
  "defaultValue": "true"
455
+ },
456
+ "timezone": {
457
+ "type": "string",
458
+ "mutable": false,
459
+ "complexType": {
460
+ "original": "string",
461
+ "resolved": "string",
462
+ "references": {}
463
+ },
464
+ "required": false,
465
+ "optional": false,
466
+ "docs": {
467
+ "tags": [{
468
+ "name": "vegaVersion",
469
+ "text": "2.65.0"
470
+ }],
471
+ "text": "Specifies the IANA time zone or Etc/GMT\u00B1n format.\n It accepts values such as \"America/New_York\" or \"Etc/GMT+12\".\n If not set, the component defaults to the system's time zone.\n For a complete list of IANA time zones, see Time Zone DB(https://timezonedb.com/time-zones)."
472
+ },
473
+ "attribute": "timezone",
474
+ "reflect": false,
475
+ "defaultValue": "getSystemTimezone()"
433
476
  }
434
477
  }; }
435
478
  static get states() { return {
@@ -694,6 +737,9 @@ export class VegaCalendar {
694
737
  }, {
695
738
  "propName": "showWeekends",
696
739
  "methodName": "watchShowWeekendsChange"
740
+ }, {
741
+ "propName": "timezone",
742
+ "methodName": "watchTimezoneChange"
697
743
  }]; }
698
744
  }
699
745
  __decorate([
@@ -167,6 +167,19 @@ export class VegaDatePickerCalendarRenderer extends VegaSlimmer {
167
167
  this.refreshLitePicker();
168
168
  }
169
169
  }
170
+ watchIsDateDisabled() {
171
+ const dateItems =
172
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
173
+ this.calendarContainerRef.shadowRoot.querySelectorAll('.day-item');
174
+ dateItems.forEach((item) => {
175
+ if (this.isDateDisabled(new Date(Number(item.dataset.time)))) {
176
+ this.setDisabledDayStyles(item);
177
+ }
178
+ else {
179
+ this.clearDisabledDayStyles(item);
180
+ }
181
+ });
182
+ }
170
183
  /**
171
184
  * The callback to handle [doOpen]{@link VegaDatePicker.doOpen}
172
185
  */
@@ -347,9 +360,7 @@ export class VegaDatePickerCalendarRenderer extends VegaSlimmer {
347
360
  .on('render:day', (node, date) => {
348
361
  const isDisabled = this.isDateDisabled(date.toJSDate());
349
362
  if (isDisabled) {
350
- node.classList.add('is-locked');
351
- node.classList.add('is-disabled');
352
- node.tabIndex = -1;
363
+ this.setDisabledDayStyles(node);
353
364
  }
354
365
  })
355
366
  .on('mobilefriendly.show',
@@ -373,6 +384,26 @@ export class VegaDatePickerCalendarRenderer extends VegaSlimmer {
373
384
  }
374
385
  });
375
386
  }
387
+ /**
388
+ * Applies styles to disable a specific day in the calendar.
389
+ *
390
+ * @param {HTMLElement} dayRef - The reference to the day element to be disabled.
391
+ */
392
+ setDisabledDayStyles(dayRef) {
393
+ dayRef.classList.add('is-locked');
394
+ dayRef.classList.add('is-disabled');
395
+ dayRef.tabIndex = -1;
396
+ }
397
+ /**
398
+ * Clears the styles applied to a day element that mark it as disabled.
399
+ *
400
+ * @param {HTMLElement} dayRef - The reference to the day element to be cleared of disabled styles.
401
+ */
402
+ clearDisabledDayStyles(dayRef) {
403
+ dayRef.classList.remove('is-locked');
404
+ dayRef.classList.remove('is-disabled');
405
+ dayRef.tabIndex = 0;
406
+ }
376
407
  }
377
408
  __decorate([
378
409
  MapToComponentField()
@@ -449,6 +480,9 @@ __decorate([
449
480
  __decorate([
450
481
  MapToComponentMethod('componentDidRender')
451
482
  ], VegaDatePickerCalendarRenderer.prototype, "componentDidRender", null);
483
+ __decorate([
484
+ MapToComponentMethod('watchIsDateDisabled')
485
+ ], VegaDatePickerCalendarRenderer.prototype, "watchIsDateDisabled", null);
452
486
  __decorate([
453
487
  MapToComponentMethod('doOpen')
454
488
  ], VegaDatePickerCalendarRenderer.prototype, "doOpen", null);