@globalpayments/vega 2.16.0 → 2.17.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 (260) hide show
  1. package/dist/cjs/{app-globals-5e074c5e.js → app-globals-4e0416c1.js} +2 -2
  2. package/dist/cjs/{childNodesEventPreventSlimmer-7e1895d7.js → childNodesEventPreventSlimmer-6848c3cf.js} +1 -1
  3. package/dist/cjs/{eventEmitSlimmer-ea57144a.js → eventEmitSlimmer-1d70a720.js} +1 -1
  4. package/dist/cjs/{formFieldControllerSlimmer-9271a8b8.js → formFieldControllerSlimmer-8b54f14d.js} +1 -1
  5. package/dist/cjs/index.cjs.js +3 -3
  6. package/dist/cjs/{internalVegaEventManager-543c20cb.js → internalVegaEventManager-743a124d.js} +2 -2
  7. package/dist/cjs/loader.cjs.js +5 -5
  8. package/dist/cjs/{subStateObserverSlimmer-48ad20a1.js → subStateObserverSlimmer-60e4d6da.js} +28 -14
  9. package/dist/cjs/vega-accordion.cjs.entry.js +4 -4
  10. package/dist/cjs/vega-app-header-button.cjs.entry.js +4 -4
  11. package/dist/cjs/vega-banner.cjs.entry.js +3 -3
  12. package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
  13. package/dist/cjs/vega-button-circle.cjs.entry.js +4 -4
  14. package/dist/cjs/vega-button-group_2.cjs.entry.js +6 -6
  15. package/dist/cjs/vega-button-link.cjs.entry.js +4 -4
  16. package/dist/cjs/vega-button.cjs.entry.js +57 -12
  17. package/dist/cjs/vega-calendar_2.cjs.entry.js +830 -90
  18. package/dist/cjs/vega-carousel.cjs.entry.js +3 -3
  19. package/dist/cjs/vega-checkbox_2.cjs.entry.js +6 -6
  20. package/dist/cjs/vega-chip.cjs.entry.js +4 -4
  21. package/dist/cjs/vega-color-picker.cjs.entry.js +5 -5
  22. package/dist/cjs/vega-combo-box.cjs.entry.js +6 -6
  23. package/dist/cjs/vega-date-picker_2.cjs.entry.js +6 -6
  24. package/dist/cjs/vega-dialog_2.cjs.entry.js +4 -4
  25. package/dist/cjs/vega-dropdown_5.cjs.entry.js +308 -183
  26. package/dist/cjs/vega-field-label.cjs.entry.js +4 -4
  27. package/dist/cjs/vega-form.cjs.entry.js +6 -6
  28. package/dist/cjs/vega-image-uploader.cjs.entry.js +6 -6
  29. package/dist/cjs/vega-input-credit-card.cjs.entry.js +6 -6
  30. package/dist/cjs/vega-input-range.cjs.entry.js +6 -6
  31. package/dist/cjs/vega-input-select.cjs.entry.js +168 -58
  32. package/dist/cjs/vega-input.cjs.entry.js +5 -5
  33. package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
  34. package/dist/cjs/vega-left-nav_5.cjs.entry.js +4 -4
  35. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +1 -1
  36. package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
  37. package/dist/cjs/vega-pagination.cjs.entry.js +4 -4
  38. package/dist/cjs/vega-popover_2.cjs.entry.js +3 -3
  39. package/dist/cjs/vega-progress-tracker.cjs.entry.js +3 -3
  40. package/dist/cjs/vega-radio_2.cjs.entry.js +6 -6
  41. package/dist/cjs/vega-segment-control.cjs.entry.js +3 -3
  42. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +7 -7
  43. package/dist/cjs/{vega-skeleton-loader-controller-bac82c82.js → vega-skeleton-loader-controller-8932c0ed.js} +3 -3
  44. package/dist/cjs/vega-stepper.cjs.entry.js +6 -6
  45. package/dist/cjs/vega-tab-group_2.cjs.entry.js +4 -4
  46. package/dist/cjs/vega-table_8.cjs.entry.js +6 -6
  47. package/dist/cjs/vega-textarea.cjs.entry.js +6 -6
  48. package/dist/cjs/vega-time-picker_2.cjs.entry.js +6 -6
  49. package/dist/cjs/vega-toggle-switch.cjs.entry.js +3 -3
  50. package/dist/cjs/vega.cjs.js +5 -5
  51. package/dist/cjs/{vegaEventId-d7774262.js → vegaEventId-f375a6a3.js} +2 -0
  52. package/dist/cjs/{vegaInternalEventId-173c4941.js → vegaInternalEventId-ac38dd4b.js} +2 -0
  53. package/dist/collection/components/vega-button/slimmers/renderers/vega-button-loading-renderer.js +24 -0
  54. package/dist/collection/components/vega-button/vega-button.css +9 -1
  55. package/dist/collection/components/vega-button/vega-button.js +49 -7
  56. package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-current-period-controller.js +38 -24
  57. package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-controller.js +54 -1
  58. package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-view-controller.js +13 -21
  59. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeatPattern/baseRepeatPattern.js +61 -0
  60. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventDailyRepeatPattern.js +70 -0
  61. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventMonthlyRepeatPattern.js +90 -0
  62. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventRepeatPatternFactory.js +60 -0
  63. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventWeeklyRepeatPattern.js +163 -0
  64. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventYearlyRepeatPattern.js +92 -0
  65. package/dist/collection/components/vega-calendar/slimmers/common/helpers/test/calendarEventRepeatPatternFactory.test.js +105 -0
  66. package/dist/collection/components/vega-calendar/slimmers/common/layout/test/longEventLayoutGenerator.test.js +0 -5
  67. package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-switch-panel.js +1 -1
  68. package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/timed-event/layout/test/dayViewEventLayoutGenerator.test.js +0 -5
  69. package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.js +21 -4
  70. package/dist/collection/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.js +45 -2
  71. package/dist/collection/components/vega-calendar/vega-calendar.css +0 -1
  72. package/dist/collection/components/vega-calendar/vega-calendar.js +51 -4
  73. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.js +0 -4
  74. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-children-controller.js +14 -1
  75. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-scrollable-controller.js +142 -0
  76. package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js +16 -50
  77. package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-renderer.js +6 -1
  78. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/controllers/vega-dropdown-item-state-controller.js +1 -0
  79. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +7 -5
  80. package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.js +1 -1
  81. package/dist/collection/components/vega-dropdown/vega-dropdown.js +5 -2
  82. package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-dropdown-controller.js +23 -0
  83. package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-items-slot-controler.js +62 -0
  84. package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-source-controller.js +11 -0
  85. package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-value-controller.js +7 -10
  86. package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +18 -2
  87. package/dist/collection/components/vega-input-select/vega-input-select.js +5 -0
  88. package/dist/collection/components/vega-loading-indicator/vega-loading-indicator.js +2 -2
  89. package/dist/collection/constants/ui.js +1 -1
  90. package/dist/collection/helpers/calendar/calendar-date.js +11 -0
  91. package/dist/collection/helpers/calendar/calendar-event.js +73 -24
  92. package/dist/collection/helpers/calendar/calendar-period/calendar-period.abstract.js +8 -0
  93. package/dist/collection/helpers/calendar/calendar-period/day-period.js +1 -0
  94. package/dist/collection/helpers/calendar/calendar-period/month-period.js +16 -3
  95. package/dist/collection/helpers/calendar/calendar-period/week-period.js +1 -0
  96. package/dist/collection/helpers/calendar/test/calendar-event.test.js +23 -20
  97. package/dist/collection/helpers/event-manager/eventID/componentEventIdMap.js +2 -2
  98. package/dist/collection/helpers/event-manager/eventID/vegaEventId.js +1 -1
  99. package/dist/collection/helpers/event-manager/eventID/vegaInternalEventId.js +1 -0
  100. package/dist/collection/helpers/slimmers/sub-state/subStateObserverSlimmer.js +27 -13
  101. package/dist/collection/helpers/slimmers/sub-state/test/sub-state-observer-slimmer.test.js +15 -3
  102. package/dist/collection/helpers/vega-telemetry-helper/test/vegaEnvManager.test.js +1 -1
  103. package/dist/collection/helpers/vega-telemetry-helper/vegaEnvManager.js +2 -2
  104. package/dist/esm/{app-globals-032d6105.js → app-globals-ba85a900.js} +2 -2
  105. package/dist/esm/{childNodesEventPreventSlimmer-b9c50cc4.js → childNodesEventPreventSlimmer-d0da4527.js} +1 -1
  106. package/dist/esm/{eventEmitSlimmer-9c33f04e.js → eventEmitSlimmer-7b16eef9.js} +1 -1
  107. package/dist/esm/{formFieldControllerSlimmer-85ff874e.js → formFieldControllerSlimmer-ea050a17.js} +1 -1
  108. package/dist/esm/index.js +3 -3
  109. package/dist/esm/{internalVegaEventManager-e1501923.js → internalVegaEventManager-71d00966.js} +2 -2
  110. package/dist/esm/loader.js +5 -5
  111. package/dist/esm/{subStateObserverSlimmer-354b33f6.js → subStateObserverSlimmer-2a8a615e.js} +28 -14
  112. package/dist/esm/vega-accordion.entry.js +4 -4
  113. package/dist/esm/vega-app-header-button.entry.js +4 -4
  114. package/dist/esm/vega-banner.entry.js +3 -3
  115. package/dist/esm/vega-breadcrumb.entry.js +4 -4
  116. package/dist/esm/vega-button-circle.entry.js +4 -4
  117. package/dist/esm/vega-button-group_2.entry.js +6 -6
  118. package/dist/esm/vega-button-link.entry.js +4 -4
  119. package/dist/esm/vega-button.entry.js +59 -14
  120. package/dist/esm/vega-calendar_2.entry.js +830 -90
  121. package/dist/esm/vega-carousel.entry.js +3 -3
  122. package/dist/esm/vega-checkbox_2.entry.js +6 -6
  123. package/dist/esm/vega-chip.entry.js +4 -4
  124. package/dist/esm/vega-color-picker.entry.js +5 -5
  125. package/dist/esm/vega-combo-box.entry.js +6 -6
  126. package/dist/esm/vega-date-picker_2.entry.js +6 -6
  127. package/dist/esm/vega-dialog_2.entry.js +4 -4
  128. package/dist/esm/vega-dropdown_5.entry.js +308 -183
  129. package/dist/esm/vega-field-label.entry.js +4 -4
  130. package/dist/esm/vega-form.entry.js +6 -6
  131. package/dist/esm/vega-image-uploader.entry.js +6 -6
  132. package/dist/esm/vega-input-credit-card.entry.js +6 -6
  133. package/dist/esm/vega-input-range.entry.js +6 -6
  134. package/dist/esm/vega-input-select.entry.js +168 -58
  135. package/dist/esm/vega-input.entry.js +5 -5
  136. package/dist/esm/vega-item-toggle.entry.js +3 -3
  137. package/dist/esm/vega-left-nav_5.entry.js +4 -4
  138. package/dist/esm/vega-loader-wrapper_2.entry.js +1 -1
  139. package/dist/esm/vega-page-notification_2.entry.js +1 -1
  140. package/dist/esm/vega-pagination.entry.js +4 -4
  141. package/dist/esm/vega-popover_2.entry.js +3 -3
  142. package/dist/esm/vega-progress-tracker.entry.js +3 -3
  143. package/dist/esm/vega-radio_2.entry.js +6 -6
  144. package/dist/esm/vega-segment-control.entry.js +3 -3
  145. package/dist/esm/vega-selection-tile_2.entry.js +7 -7
  146. package/dist/esm/{vega-skeleton-loader-controller-3f5500e5.js → vega-skeleton-loader-controller-778b12be.js} +3 -3
  147. package/dist/esm/vega-stepper.entry.js +6 -6
  148. package/dist/esm/vega-tab-group_2.entry.js +4 -4
  149. package/dist/esm/vega-table_8.entry.js +6 -6
  150. package/dist/esm/vega-textarea.entry.js +6 -6
  151. package/dist/esm/vega-time-picker_2.entry.js +6 -6
  152. package/dist/esm/vega-toggle-switch.entry.js +3 -3
  153. package/dist/esm/vega.js +5 -5
  154. package/dist/esm/{vegaEventId-680887e1.js → vegaEventId-f279bb62.js} +2 -1
  155. package/dist/esm/{vegaInternalEventId-600b3751.js → vegaInternalEventId-bde5d617.js} +2 -1
  156. package/dist/types/components/vega-button/slimmers/renderers/vega-button-loading-renderer.d.ts +13 -0
  157. package/dist/types/components/vega-button/vega-button.d.ts +16 -0
  158. package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-current-period-controller.d.ts +12 -9
  159. package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-controller.d.ts +20 -0
  160. package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-view-controller.d.ts +8 -12
  161. package/dist/types/components/vega-calendar/slimmers/common/helpers/repeatPattern/baseRepeatPattern.d.ts +50 -0
  162. package/dist/types/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventDailyRepeatPattern.d.ts +43 -0
  163. package/dist/types/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventMonthlyRepeatPattern.d.ts +55 -0
  164. package/dist/types/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventRepeatPatternFactory.d.ts +34 -0
  165. package/dist/types/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventWeeklyRepeatPattern.d.ts +99 -0
  166. package/dist/types/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventYearlyRepeatPattern.d.ts +57 -0
  167. package/dist/types/components/vega-calendar/slimmers/common/helpers/test/calendarEventRepeatPatternFactory.test.d.ts +1 -0
  168. package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.d.ts +8 -0
  169. package/dist/types/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.d.ts +23 -0
  170. package/dist/types/components/vega-calendar/types.d.ts +14 -2
  171. package/dist/types/components/vega-calendar/vega-calendar.d.ts +15 -3
  172. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.d.ts +0 -1
  173. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-children-controller.d.ts +4 -0
  174. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-scrollable-controller.d.ts +57 -0
  175. package/dist/types/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.d.ts +7 -17
  176. package/dist/types/components/vega-dropdown/slimmers/renderers/vega-dropdown-renderer.d.ts +3 -0
  177. package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +2 -1
  178. package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-dropdown-controller.d.ts +2 -0
  179. package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-items-slot-controler.d.ts +19 -0
  180. package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-source-controller.d.ts +11 -1
  181. package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-value-controller.d.ts +1 -1
  182. package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.d.ts +6 -0
  183. package/dist/types/components/vega-input-select/vega-input-select.d.ts +2 -0
  184. package/dist/types/components.d.ts +17 -1
  185. package/dist/types/constants/ui.d.ts +1 -1
  186. package/dist/types/helpers/calendar/calendar-date.d.ts +8 -0
  187. package/dist/types/helpers/calendar/calendar-event.d.ts +44 -2
  188. package/dist/types/helpers/calendar/calendar-period/calendar-period.abstract.d.ts +10 -2
  189. package/dist/types/helpers/calendar/calendar-period/day-period.d.ts +1 -0
  190. package/dist/types/helpers/calendar/calendar-period/month-period.d.ts +12 -0
  191. package/dist/types/helpers/calendar/calendar-period/week-period.d.ts +1 -0
  192. package/dist/types/helpers/event-manager/eventID/vegaEventId.d.ts +1 -1
  193. package/dist/types/helpers/event-manager/eventID/vegaInternalEventId.d.ts +1 -0
  194. package/dist/types/helpers/slimmers/sub-state/subStateObserverSlimmer.d.ts +9 -0
  195. package/dist/types/types/components.type.d.ts +1 -0
  196. package/dist/vega/index.esm.js +1 -1
  197. package/dist/vega/{p-0f88130f.entry.js → p-0ef3d3fd.entry.js} +1 -1
  198. package/dist/vega/p-1080d80a.js +1 -0
  199. package/dist/vega/{p-9d9f7c25.entry.js → p-154a3145.entry.js} +1 -1
  200. package/dist/vega/{p-cbb90cf6.entry.js → p-1bc3348e.entry.js} +1 -1
  201. package/dist/vega/{p-86d3e5eb.entry.js → p-255aa39b.entry.js} +1 -1
  202. package/dist/vega/p-29654e12.entry.js +1 -0
  203. package/dist/vega/{p-77b39fe7.entry.js → p-2f905e6f.entry.js} +1 -1
  204. package/dist/vega/p-3490dd8a.entry.js +1 -0
  205. package/dist/vega/p-3fee5d7e.entry.js +1 -0
  206. package/dist/vega/p-44f4924b.js +1 -0
  207. package/dist/vega/p-4546cd3d.entry.js +1 -0
  208. package/dist/vega/{p-77ff7c72.js → p-5141bcac.js} +1 -1
  209. package/dist/vega/{p-16608c5a.js → p-51e2c836.js} +1 -1
  210. package/dist/vega/{p-d7cb0227.entry.js → p-52bf3ce1.entry.js} +1 -1
  211. package/dist/vega/{p-cd05ab96.entry.js → p-5611cf4c.entry.js} +1 -1
  212. package/dist/vega/{p-40db8b33.entry.js → p-5e3f5e8e.entry.js} +1 -1
  213. package/dist/vega/p-642d58ff.js +1 -0
  214. package/dist/vega/{p-9b5e858e.entry.js → p-6470d034.entry.js} +1 -1
  215. package/dist/vega/{p-8e63fc54.entry.js → p-6877dc17.entry.js} +1 -1
  216. package/dist/vega/{p-1dfddf03.entry.js → p-69cf5269.entry.js} +1 -1
  217. package/dist/vega/{p-21675b8e.entry.js → p-70af1334.entry.js} +1 -1
  218. package/dist/vega/{p-bd1bc019.entry.js → p-7115c145.entry.js} +1 -1
  219. package/dist/vega/{p-7d22c459.entry.js → p-795927c4.entry.js} +1 -1
  220. package/dist/vega/{p-6ad96891.entry.js → p-7c1d2dcf.entry.js} +1 -1
  221. package/dist/vega/p-7f9cb4c0.entry.js +1 -0
  222. package/dist/vega/p-82fd348b.entry.js +1 -0
  223. package/dist/vega/p-8543f9c3.entry.js +1 -0
  224. package/dist/vega/{p-12e93c00.entry.js → p-8771bf66.entry.js} +1 -1
  225. package/dist/vega/{p-84787f59.entry.js → p-88cf7e56.entry.js} +1 -1
  226. package/dist/vega/{p-d7f7e2df.entry.js → p-8e7d6700.entry.js} +1 -1
  227. package/dist/vega/p-9119ad95.entry.js +1 -0
  228. package/dist/vega/p-9799f3d8.entry.js +1 -0
  229. package/dist/vega/{p-61c96c79.entry.js → p-a6c43909.entry.js} +1 -1
  230. package/dist/vega/{p-ceb5067a.entry.js → p-b23ad436.entry.js} +1 -1
  231. package/dist/vega/{p-c8e1b56d.entry.js → p-b570e6c7.entry.js} +1 -1
  232. package/dist/vega/{p-ba37eaad.entry.js → p-b6f68efd.entry.js} +1 -1
  233. package/dist/vega/{p-25f60a0b.entry.js → p-b8a47375.entry.js} +1 -1
  234. package/dist/vega/{p-7fd253e0.entry.js → p-b8d45e28.entry.js} +1 -1
  235. package/dist/vega/{p-9e5f7b82.js → p-bba06111.js} +1 -1
  236. package/dist/vega/{p-2066e3eb.entry.js → p-c1401fab.entry.js} +1 -1
  237. package/dist/vega/{p-a9f61d9e.entry.js → p-cafe75e8.entry.js} +1 -1
  238. package/dist/vega/{p-7d9934ee.entry.js → p-cf40587e.entry.js} +1 -1
  239. package/dist/vega/{p-7706a169.js → p-d126407a.js} +1 -1
  240. package/dist/vega/{p-fb34de30.entry.js → p-e373bc4d.entry.js} +1 -1
  241. package/dist/vega/p-eacf64be.js +1 -0
  242. package/dist/vega/{p-1d628d23.entry.js → p-ec4afdaa.entry.js} +1 -1
  243. package/dist/vega/{p-a9d3ea86.js → p-f0330fcc.js} +1 -1
  244. package/dist/vega/{p-c0ca1a1c.entry.js → p-f8a97354.entry.js} +1 -1
  245. package/dist/vega/{p-f5d3d49f.entry.js → p-f96ee751.entry.js} +1 -1
  246. package/dist/vega/vega.esm.js +1 -1
  247. package/package.json +1 -1
  248. package/dist/vega/p-1092a8ce.entry.js +0 -1
  249. package/dist/vega/p-43515fe4.entry.js +0 -1
  250. package/dist/vega/p-592e755b.entry.js +0 -1
  251. package/dist/vega/p-76265c0e.entry.js +0 -1
  252. package/dist/vega/p-9316cd6d.entry.js +0 -1
  253. package/dist/vega/p-a9c3e9fd.js +0 -1
  254. package/dist/vega/p-aae8855d.js +0 -1
  255. package/dist/vega/p-bb845e70.entry.js +0 -1
  256. package/dist/vega/p-c47d4933.js +0 -1
  257. package/dist/vega/p-c9f922bf.entry.js +0 -1
  258. package/dist/vega/p-ca1fae74.entry.js +0 -1
  259. package/dist/vega/p-eb461dad.entry.js +0 -1
  260. package/dist/vega/p-f1d8fd1c.js +0 -1
@@ -23,12 +23,9 @@ export class VegaInputSelectValueController extends VegaSlimmer {
23
23
  if (this.selectType === 'multiple') {
24
24
  newValue = newValue;
25
25
  oldValue = oldValue;
26
- const validValue = [];
27
- this.source.forEach((sourceItem) => {
28
- if (newValue.includes(sourceItem.id)) {
29
- validValue.push(sourceItem.id);
30
- }
31
- });
26
+ const validValue = newValue
27
+ ? newValue.filter((value) => this.sourceController.getItem(value))
28
+ : [];
32
29
  if (!isArrayEqual(validValue, oldValue, true)) {
33
30
  this.setValue(validValue);
34
31
  this.changeEventEmitter.emit(validValue);
@@ -43,7 +40,7 @@ export class VegaInputSelectValueController extends VegaSlimmer {
43
40
  }
44
41
  else {
45
42
  if (newValue !== oldValue) {
46
- const sourceItem = this.source.find((sourceItem) => sourceItem.id === newValue);
43
+ const sourceItem = this.sourceController.getItem(newValue);
47
44
  this.setValue(sourceItem ? sourceItem.id : '');
48
45
  this.changeEventEmitter.emit(this.value);
49
46
  ChangeManager.notify(FORM_ELEMENT_VALUE_CHANGE, {
@@ -89,15 +86,15 @@ __decorate([
89
86
  __decorate([
90
87
  MapToComponentField()
91
88
  ], VegaInputSelectValueController.prototype, "selectType", void 0);
92
- __decorate([
93
- MapToComponentField()
94
- ], VegaInputSelectValueController.prototype, "source", void 0);
95
89
  __decorate([
96
90
  MapToComponentField()
97
91
  ], VegaInputSelectValueController.prototype, "changeEventEmitter", void 0);
98
92
  __decorate([
99
93
  MapToComponentField()
100
94
  ], VegaInputSelectValueController.prototype, "host", void 0);
95
+ __decorate([
96
+ MapToComponentField()
97
+ ], VegaInputSelectValueController.prototype, "sourceController", void 0);
101
98
  __decorate([
102
99
  MapToComponentMethod('watchValue')
103
100
  ], VegaInputSelectValueController.prototype, "handleValueChange", void 0);
@@ -43,7 +43,7 @@ export class VegaInputSelectDropdownRenderer extends VegaSlimmer {
43
43
  }
44
44
  };
45
45
  this.renderSingleSelected = () => {
46
- const item = this.source.find((item) => item.id === this.value);
46
+ const item = this.sourceController.getItem(this.value);
47
47
  if (item) {
48
48
  return h("span", { class: "vega-input-select-selected" }, item.displayName);
49
49
  }
@@ -67,11 +67,21 @@ export class VegaInputSelectDropdownRenderer extends VegaSlimmer {
67
67
  getInputSelectContainerRef() {
68
68
  return this.inputSelectContainer;
69
69
  }
70
+ getItemsSlotRef() {
71
+ return this.itemsSlotRef;
72
+ }
70
73
  render() {
71
74
  return (h("vega-dropdown", Object.assign({ trigger: "click", source: this.getDropdownSource(), selectType: this.selectType, selectedSourceKey: this.value, matchTargetWidth: true }, this.getVegaDropdownProperties(), { ref: (ref) => {
72
75
  this.dropdown = ref;
73
76
  this.vegaInputSelectDropdownController.addDropdownObserver(ref);
74
- }, isLazyLoading: this.isLazyLoading }), this.renderContainer()));
77
+ }, isLazyLoading: this.isLazyLoading }),
78
+ this.renderContainer(),
79
+ this.renderItemsSlot()));
80
+ }
81
+ renderItemsSlot() {
82
+ return (this.host.querySelector('[slot=items]') && (h("div", { slot: "items", ref: (ref) => {
83
+ this.itemsSlotRef = ref;
84
+ } })));
75
85
  }
76
86
  /*
77
87
  * The below method is e2e-test covered in
@@ -100,6 +110,9 @@ __decorate([
100
110
  __decorate([
101
111
  MapToComponentField()
102
112
  ], VegaInputSelectDropdownRenderer.prototype, "source", void 0);
113
+ __decorate([
114
+ MapToComponentField()
115
+ ], VegaInputSelectDropdownRenderer.prototype, "host", void 0);
103
116
  __decorate([
104
117
  MapToComponentField()
105
118
  ], VegaInputSelectDropdownRenderer.prototype, "selectType", void 0);
@@ -124,3 +137,6 @@ __decorate([
124
137
  __decorate([
125
138
  MapToComponentField()
126
139
  ], VegaInputSelectDropdownRenderer.prototype, "vegaInputSelectDropdownController", void 0);
140
+ __decorate([
141
+ MapToComponentField()
142
+ ], VegaInputSelectDropdownRenderer.prototype, "sourceController", void 0);
@@ -22,6 +22,7 @@ import { VegaInputSelectLazyLoadController } from './slimmers/controllers/vega-i
22
22
  import { VegaComponentUsageRuntimeMetricsSlimmer } from '../../helpers/slimmers/componentUsageRuntimeMetrics';
23
23
  import { VegaInputSelectRuntimeMetricsPayloadDefinition } from '../../constants/runtime-metrics-payload-definition/vega-input-select/runtime-metrics-payload-definition';
24
24
  import { VegaInputSelectSourceController } from './slimmers/controllers/vega-input-select-source-controller';
25
+ import { VegaInputSelectItemsSlotController } from './slimmers/controllers/vega-input-select-items-slot-controler';
25
26
  export class VegaInputSelect {
26
27
  constructor() {
27
28
  this.globalSlimmers = {};
@@ -30,6 +31,7 @@ export class VegaInputSelect {
30
31
  this.vegaInputSelectDropdownController = new VegaInputSelectDropdownController();
31
32
  this.vegaInputSelectValueController = new VegaInputSelectValueController();
32
33
  this.vegaInputSelectDropdownRenderer = new VegaInputSelectDropdownRenderer();
34
+ this.vegaInputSelectItemsSlotController = new VegaInputSelectItemsSlotController();
33
35
  this.formFieldControllerSlimmer = new FormFieldControllerSlimmer({
34
36
  propertyRules: [
35
37
  {
@@ -680,6 +682,9 @@ __decorate([
680
682
  __decorate([
681
683
  InjectVegaSlimmer()
682
684
  ], VegaInputSelect.prototype, "vegaInputSelectDropdownRenderer", void 0);
685
+ __decorate([
686
+ InjectVegaSlimmer()
687
+ ], VegaInputSelect.prototype, "vegaInputSelectItemsSlotController", void 0);
683
688
  __decorate([
684
689
  InjectVegaSlimmer()
685
690
  ], VegaInputSelect.prototype, "formFieldControllerSlimmer", void 0);
@@ -63,8 +63,8 @@ export class VegaLoadingIndicator {
63
63
  const perimeter = Math.PI * 2 * r;
64
64
  const progress = this.status === 'error' ? perimeter : perimeter * percent;
65
65
  return (h("svg", { class: "circle-loader" },
66
- h("circle", { r: r, class: "circle-loader-track" }),
67
- h("circle", { r: r, class: "circle-loader-progress", "stroke-linecap": this.mode === 'indeterminate' ? 'round' : 'butt', "stroke-dasharray": [progress, perimeter].join(' ') }),
66
+ h("circle", { r: r, class: "circle-loader-track", part: "circle-loader-track" }),
67
+ h("circle", { r: r, class: "circle-loader-progress", part: "circle-loader-progress", "stroke-linecap": this.mode === 'indeterminate' ? 'round' : 'butt', "stroke-dasharray": [progress, perimeter].join(' ') }),
68
68
  this.mode === 'determinate' && (h("circle", { r: r, class: arrayToClassString(['circle-loader-progress-pointer', percent === 0 && 'v-hidden'].filter(Boolean)), "stroke-dashoffset": -progress, "stroke-dasharray": [0, perimeter].join(' ') }))));
69
69
  };
70
70
  this.renderBarLoader = () => {
@@ -68,7 +68,7 @@ export const VegaNativeEventName = [
68
68
  'dropdownSearch',
69
69
  'actionClick',
70
70
  'eventClick',
71
- 'dateClick',
71
+ 'dateDblClick',
72
72
  ];
73
73
  // eslint-disable-next-line @typescript-eslint/typedef
74
74
  export const CssStates = ['default', 'hover', 'active', 'focus-visible'];
@@ -100,4 +100,15 @@ export class CalendarDate {
100
100
  }
101
101
  return result;
102
102
  }
103
+ /**
104
+ * The function "equal" compares the year, month, and date of two CalendarDate objects and returns true if they are equal.
105
+ *
106
+ * @param {CalendarDate} calendarDate - The `equal` method in the code snippet is a function that compares the year, month, and date of the current `CalendarDate` object with another
107
+ * `CalendarDate` object passed as a parameter. The method returns `true` if all three values (year, month, date) are equal
108
+ * @returns {boolean} The date is same day with current
109
+ */
110
+ equal(calendarDate) {
111
+ const { year, month, date } = calendarDate;
112
+ return this._year === year && this._month === month && this._date === date;
113
+ }
103
114
  }
@@ -1,3 +1,4 @@
1
+ import calendarEventRepeatPatternFactory from '../../components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventRepeatPatternFactory';
1
2
  import { generateUUID } from '../../utils/misc';
2
3
  import { CalendarDate } from './calendar-date';
3
4
  const CalendarDateFormatReg = /^\d{1,2}\/\d{1,2}\/\d{4}/;
@@ -10,12 +11,20 @@ export class CalendarEvent {
10
11
  * @param {VegaCalendarRawEvent} eventOptions - The `eventOptions` parameter in the constructor
11
12
  * represents the raw event data for a Vega calendar event. It contains information such as the event
12
13
  * title, start and end dates, location, description, and any other relevant details about the event.
14
+ * @param {string} eventKey If a value is not provided for `eventKey`, a UUID (Universally
15
+ * Unique Identifier) will be generated as a default value. This identifier is used to distinguish
16
+ * different events and can be helpful for tracking
13
17
  */
14
- constructor(eventOptions) {
18
+ constructor(eventOptions, eventKey) {
19
+ // the default value is 1 when the event end date is same as start date
20
+ this._eventSpansDays = 1;
21
+ this.repeatPattern = null;
15
22
  this._event = eventOptions;
16
- this._eventKey = generateUUID();
23
+ this._eventKey = eventKey || generateUUID();
17
24
  this.checkEventRequireField(eventOptions);
18
25
  this.initDate(eventOptions);
26
+ this.initEventSpansDays();
27
+ this.initRepeatPattern();
19
28
  }
20
29
  /**
21
30
  * The function returns the raw event data for a VegaCalendar event.
@@ -74,12 +83,12 @@ export class CalendarEvent {
74
83
  return !!this._event.isAllDay;
75
84
  }
76
85
  /**
77
- * The function isRepeatEvent returns a boolean value based on whether the event's repeat property is not equal to 'none'.
86
+ * The function isRepeatEvent returns a boolean value based on whether the event's repeatOptions property is not equal to 'none'.
78
87
  *
79
88
  * @returns {boolean} The method `isRepeatEvent` returns a boolean value indicating whether the `_event` has a repeat value other than 'none'.
80
89
  */
81
90
  get isRepeatEvent() {
82
- return this._event.repeat !== 'none';
91
+ return this.repeatPattern !== null;
83
92
  }
84
93
  /**
85
94
  * The function returns the start date property of an object.
@@ -113,16 +122,39 @@ export class CalendarEvent {
113
122
  get endTime() {
114
123
  return this._endTime;
115
124
  }
125
+ /**
126
+ * This function returns the number of days that an event spans.
127
+ *
128
+ * @returns {number} The method `get eventSpansDays()` is returning the value of the property
129
+ * `_eventSpansDays`, which is of type `number`.
130
+ */
131
+ get eventSpansDays() {
132
+ return this._eventSpansDays;
133
+ }
134
+ /**
135
+ * The function `copyTo` copies a calendar event with updated start and end dates.
136
+ *
137
+ * @param {string} eventKey - The `eventKey` parameter in the `copyTo` function is a string that represents the key or identifier of the new calendar event that will be created.
138
+ * @param {CalendarDate} startDate - The `startDate` parameter in the `copyTo` function represents
139
+ * the starting date of a calendar event. It is of type `CalendarDate`, which may contain information such as the day, month, and year of the event.
140
+ * @returns {CalendarEvent} A new `CalendarEvent` object is being returned with the properties from the original
141
+ * `_event` object (excluding `repeatOptions`) and the `startDate` and `endDate` properties set to
142
+ * the `toDate()` values of the `startDate` and `endDate` parameters.
143
+ */
144
+ copyTo(eventKey, startDate) {
145
+ const endDate = this._eventSpansDays > 1
146
+ ? new Date(startDate.year, startDate.month - 1, startDate.date + (this._eventSpansDays - 1))
147
+ : startDate.toDate();
148
+ const result = new CalendarEvent(Object.assign(Object.assign({}, this._event), { startDate: startDate.toDate(), endDate: endDate, startTime: this.startTime, endTime: this.endTime }), eventKey);
149
+ return result;
150
+ }
116
151
  /**
117
152
  * Check the event is a group event or not
118
153
  *
119
154
  * @returns {boolean} true or false
120
155
  */
121
156
  isGroupEvent() {
122
- const { year: startYear, month: startMonth, date: startDay, } = CalendarDate.from(this.startDate);
123
- const { year: endYear, month: endMonth, date: endDay, } = CalendarDate.from(this.endDate);
124
- return (!(startYear === endYear && startMonth === endMonth && startDay === endDay) &&
125
- this._event.repeat !== 'daily');
157
+ return this._eventSpansDays > 1;
126
158
  }
127
159
  /**
128
160
  * This TypeScript function checks if a given date falls within the range of a calendar event based on its start and end dates, considering different repeat types like daily, weekly, monthly, and yearly.
@@ -135,23 +167,8 @@ export class CalendarEvent {
135
167
  const { startDate, endDate } = this;
136
168
  const startCalendarDate = CalendarDate.from(startDate);
137
169
  const endCalendarDate = CalendarDate.from(new Date(endDate.getFullYear(), endDate.getMonth(), endDate.getDate() + 1));
138
- const repeat = this._event.repeat;
139
170
  const currentDate = date.toDate();
140
- if (startCalendarDate.toDate() <= currentDate) {
141
- switch (repeat) {
142
- case 'daily':
143
- return true;
144
- case 'weekly':
145
- return currentDate.getDay() === startDate.getDay();
146
- case 'monthly':
147
- return date.date === startCalendarDate.date;
148
- case 'yearly':
149
- return date.month === startCalendarDate.month && date.date === startCalendarDate.date;
150
- default:
151
- return endCalendarDate.toDate() > currentDate;
152
- }
153
- }
154
- return false;
171
+ return startCalendarDate.toDate() <= currentDate && endCalendarDate.toDate() > currentDate;
155
172
  }
156
173
  /**
157
174
  * Get the number of minutes the event lasted
@@ -166,6 +183,21 @@ export class CalendarEvent {
166
183
  const endDate = new Date(now.year, now.month, now.date, Number(endHour) === 0 && Number(startHour) !== 0 ? 24 : Number(endHour), Number(endMinutes));
167
184
  return (endDate.valueOf() - startDate.valueOf()) / (60 * 1000);
168
185
  }
186
+ /**
187
+ * This function returns an array of repeat series based on a given calendar period.
188
+ *
189
+ * @param {CalendarPeriod} period - The `period` parameter in the `getRepeatSeries` method is of type
190
+ * `CalendarPeriod`. It represents a specific time period within a calendar, typically defined by a
191
+ * start date and an end date. The method uses this period to generate a series of repeated events
192
+ * based on a daily repeat pattern specified
193
+ * @returns {CalendarDate[]} repeat start date array
194
+ */
195
+ getRepeatSeries(period) {
196
+ if (this.repeatPattern) {
197
+ return this.repeatPattern.getRepeatSeries(period, this._eventSpansDays);
198
+ }
199
+ return [];
200
+ }
169
201
  /**
170
202
  * The function `convertTimeTo24Hour` converts a time string from 12-hour format to 24-hour format in TypeScript.
171
203
  *
@@ -253,4 +285,21 @@ export class CalendarEvent {
253
285
  this._endTime = this.convertTimeTo24Hour(endTime);
254
286
  }
255
287
  }
288
+ /**
289
+ * The function initializes a repeat pattern controller for a calendar event with specified start and end dates and repeat options.
290
+ */
291
+ initRepeatPattern() {
292
+ if (this._event.repeatOptions && this._event.repeatOptions.frequency) {
293
+ this.repeatPattern = calendarEventRepeatPatternFactory.getPattern(this._startDate, this._event.repeatOptions);
294
+ }
295
+ }
296
+ /**
297
+ * Initializes the event cross days by the event start date and end date.
298
+ */
299
+ initEventSpansDays() {
300
+ const start = CalendarDate.from(this.startDate);
301
+ const end = CalendarDate.from(this.endDate);
302
+ this._eventSpansDays =
303
+ (end.toDate().valueOf() - start.toDate().valueOf()) / (24 * 60 * 60 * 1000) + 1;
304
+ }
256
305
  }
@@ -41,6 +41,14 @@ export class CalendarPeriod {
41
41
  get count() {
42
42
  return this._count;
43
43
  }
44
+ /**
45
+ * This function returns the type of the object.
46
+ *
47
+ * @type {string}
48
+ */
49
+ get type() {
50
+ return this._type;
51
+ }
44
52
  /**
45
53
  * Go to a specific date.
46
54
  *
@@ -6,6 +6,7 @@ import { CalendarDate } from '../calendar-date';
6
6
  export class DayPeriod extends CalendarPeriod {
7
7
  constructor(current) {
8
8
  super(DayPeriod.DISPLAY_DATE_COUNT, current);
9
+ this._type = 'day';
9
10
  }
10
11
  /**
11
12
  * @inheritDoc
@@ -5,9 +5,22 @@ import { CalendarDate } from '../calendar-date';
5
5
  */
6
6
  export class MonthPeriod extends CalendarPeriod {
7
7
  constructor(current) {
8
- const date = current || CalendarDate.from(new Date());
9
- const firstDayOfMonth = new CalendarDate(date.year, date.month, 1);
10
- super(MonthPeriod.DISPLAY_DATE_COUNT, firstDayOfMonth);
8
+ super(MonthPeriod.DISPLAY_DATE_COUNT, MonthPeriod.getMonthFirstDay(current));
9
+ this._type = 'month';
10
+ }
11
+ /**
12
+ * The function `getMonthFirstDay` returns the first day of a given month in a calendar.
13
+ *
14
+ * @param {CalendarDate} [calendarDate] - The `calendarDate` parameter is an optional parameter of
15
+ * type `CalendarDate`. It represents a specific date in the calendar. If a `calendarDate` is
16
+ * provided, the function will use that date to determine the first day of the month. If no
17
+ * `calendarDate` is provided, the function
18
+ * @returns {CalendarDate} A new `CalendarDate` object representing the first day of the month from the provided
19
+ * `calendarDate` parameter or the current date if no parameter is provided.
20
+ */
21
+ static getMonthFirstDay(calendarDate) {
22
+ const date = calendarDate || CalendarDate.from(new Date());
23
+ return new CalendarDate(date.year, date.month, 1);
11
24
  }
12
25
  /**
13
26
  * @inheritDoc
@@ -7,6 +7,7 @@ import { CalendarDate } from '../calendar-date';
7
7
  export class WeekPeriod extends CalendarPeriod {
8
8
  constructor(current) {
9
9
  super(WeekPeriod.DISPLAY_DATE_COUNT, current);
10
+ this._type = 'week';
10
11
  }
11
12
  /**
12
13
  * @inheritDoc
@@ -1,5 +1,6 @@
1
1
  import { CalendarDate } from '../calendar-date';
2
2
  import { CalendarEvent } from '../calendar-event';
3
+ import { MonthPeriod } from '../calendar-period/month-period';
3
4
  const mockDate = new Date(2024, 5, 13, 13, 44);
4
5
  const mockStringDate = '06/13/2024';
5
6
  const rawEvent = {
@@ -10,7 +11,6 @@ const rawEvent = {
10
11
  startTime: '',
11
12
  endTime: '14:44',
12
13
  disabled: false,
13
- repeat: 'none',
14
14
  isAllDay: false,
15
15
  variant: 'secondary',
16
16
  color: 'red',
@@ -32,6 +32,8 @@ describe('calendar-event', () => {
32
32
  expect(calendarEvent.disabled).toEqual(false);
33
33
  expect(calendarEvent.color).toEqual('red');
34
34
  expect(calendarEvent.event).toEqual(rawEvent);
35
+ expect(calendarEvent.eventSpansDays).toEqual(1);
36
+ expect(calendarEvent.getRepeatSeries(new MonthPeriod(new CalendarDate(2024, 6, 1)))).toEqual([]);
35
37
  });
36
38
  it('should throw error when event options is incorrect', () => {
37
39
  function wrongStartDate() {
@@ -83,7 +85,10 @@ describe('calendar-event', () => {
83
85
  it('should get group event correct', () => {
84
86
  const calendarEvent1 = new CalendarEvent(Object.assign(Object.assign({}, rawEvent), { endDate: '06/14/2024', endTime: '18:00' }));
85
87
  expect(calendarEvent1.isGroupEvent()).toBeTruthy();
86
- const calendarEvent2 = new CalendarEvent(Object.assign(Object.assign({}, rawEvent), { endDate: '06/14/2024', endTime: '18:00', repeat: 'daily' }));
88
+ const calendarEvent2 = new CalendarEvent(Object.assign(Object.assign({}, rawEvent), { endDate: '06/13/2024', endTime: '18:00', repeatOptions: {
89
+ frequency: 'daily',
90
+ interval: 1,
91
+ } }));
87
92
  expect(calendarEvent2.isGroupEvent()).toBeFalsy();
88
93
  });
89
94
  it('should check current day event correct with normal event', () => {
@@ -91,24 +96,7 @@ describe('calendar-event', () => {
91
96
  expect(calendarEvent1.isCurrentDayEvent(new CalendarDate(2024, 6, 14))).toBeTruthy();
92
97
  expect(calendarEvent1.isCurrentDayEvent(new CalendarDate(2024, 6, 15))).toBeFalsy();
93
98
  });
94
- it('should check current day event correct with repeat event', () => {
95
- const calendarEvent1 = new CalendarEvent(Object.assign(Object.assign({}, rawEvent), { endDate: '06/14/2024', repeat: 'daily' }));
96
- expect(calendarEvent1.isCurrentDayEvent(new CalendarDate(2024, 6, 12))).toBeFalsy();
97
- expect(calendarEvent1.isCurrentDayEvent(new CalendarDate(2024, 6, 13))).toBeTruthy();
98
- const calendarEvent2 = new CalendarEvent(Object.assign(Object.assign({}, rawEvent), { endDate: '06/14/2024', repeat: 'weekly' }));
99
- expect(calendarEvent2.isCurrentDayEvent(new CalendarDate(2024, 6, 19))).toBeFalsy();
100
- expect(calendarEvent2.isCurrentDayEvent(new CalendarDate(2024, 6, 13))).toBeTruthy();
101
- expect(calendarEvent2.isCurrentDayEvent(new CalendarDate(2024, 6, 20))).toBeTruthy();
102
- const calendarEvent3 = new CalendarEvent(Object.assign(Object.assign({}, rawEvent), { endDate: '06/14/2024', repeat: 'monthly' }));
103
- expect(calendarEvent3.isCurrentDayEvent(new CalendarDate(2024, 6, 13))).toBeTruthy();
104
- expect(calendarEvent3.isCurrentDayEvent(new CalendarDate(2024, 7, 12))).toBeFalsy();
105
- expect(calendarEvent3.isCurrentDayEvent(new CalendarDate(2024, 7, 13))).toBeTruthy();
106
- const calendarEvent4 = new CalendarEvent(Object.assign(Object.assign({}, rawEvent), { endDate: '06/14/2024', repeat: 'yearly' }));
107
- expect(calendarEvent4.isCurrentDayEvent(new CalendarDate(2024, 6, 13))).toBeTruthy();
108
- expect(calendarEvent4.isCurrentDayEvent(new CalendarDate(2025, 6, 13))).toBeTruthy();
109
- expect(calendarEvent4.isCurrentDayEvent(new CalendarDate(2024, 7, 14))).toBeFalsy();
110
- });
111
- it('should check current day event correct with repeat event', () => {
99
+ it('should get event duration correct', () => {
112
100
  const calendarEvent1 = new CalendarEvent(Object.assign(Object.assign({}, rawEvent), { startDate: '06/14/2024', startTime: '10:00', endTime: '11:00', endDate: '06/14/2024' }));
113
101
  expect(calendarEvent1.getEventDuration()).toEqual(60);
114
102
  const calendarEvent2 = new CalendarEvent(Object.assign(Object.assign({}, rawEvent), { startDate: '06/14/2024', startTime: '23:00', endTime: '00:00', endDate: '06/14/2024' }));
@@ -127,4 +115,19 @@ describe('calendar-event', () => {
127
115
  expect(calendarEvent3.startTime).toEqual('13:00');
128
116
  expect(calendarEvent3.endTime).toEqual('14:30');
129
117
  });
118
+ it('should create event correct when call copyTo', () => {
119
+ const calendarEvent1 = new CalendarEvent(Object.assign(Object.assign({}, rawEvent), { startDate: '06/14/2024', endDate: '06/15/2024', startTime: '12:00 am', endTime: '12:00 pm', repeatOptions: {
120
+ frequency: 'daily',
121
+ interval: 2,
122
+ until: '06/16/2024',
123
+ } }));
124
+ const copyEvent1 = calendarEvent1.copyTo('test', new CalendarDate(2024, 6, 14));
125
+ const copyEvent2 = calendarEvent1.copyTo('test', new CalendarDate(2024, 6, 16));
126
+ expect(copyEvent1.startDate.getDate()).toEqual(14);
127
+ expect(copyEvent1.endDate.getDate()).toEqual(15);
128
+ expect(copyEvent1.eventKey).toEqual('test');
129
+ expect(copyEvent2.startDate.getDate()).toEqual(16);
130
+ expect(copyEvent2.endDate.getDate()).toEqual(17);
131
+ expect(copyEvent2.eventKey).toEqual('test');
132
+ });
130
133
  });
@@ -1,4 +1,4 @@
1
- import { VegaExpand, VegaClick, VegaDropdownClick, VegaClose, VegaChange, VegaEventClick, VegaPageUpdate, VegaCreate, VegaSearch, VegaDropdownShow, VegaDropdownHide, VegaDropdownSearch, VegaFormSubmit, VegaFormReset, VegaValidate, VegaRemove, VegaCancel, VegaFocus, VegaBlur, VegaToggleStatus, VegaOpen, VegaStateUpdate, VegaGroupClick, VegaMenuClick, VegaActionClick, VegaPageSizeChange, VegaPopoverShow, VegaPopoverHide, VegaCurrentStepUpdate, VegaSelectChange, VegaSelectAllChange, VegaRowClick, } from './vegaEventId';
1
+ import { VegaExpand, VegaClick, VegaDropdownClick, VegaClose, VegaChange, VegaEventClick, VegaDateDblClick, VegaPageUpdate, VegaCreate, VegaSearch, VegaDropdownShow, VegaDropdownHide, VegaDropdownSearch, VegaFormSubmit, VegaFormReset, VegaValidate, VegaRemove, VegaCancel, VegaFocus, VegaBlur, VegaToggleStatus, VegaOpen, VegaStateUpdate, VegaGroupClick, VegaMenuClick, VegaActionClick, VegaPageSizeChange, VegaPopoverShow, VegaPopoverHide, VegaCurrentStepUpdate, VegaSelectChange, VegaSelectAllChange, VegaRowClick, } from './vegaEventId';
2
2
  const entries = [
3
3
  ['vega-accordion', [VegaExpand]],
4
4
  ['vega-app-header-button', [VegaClick, VegaDropdownClick]],
@@ -8,7 +8,7 @@ const entries = [
8
8
  ['vega-button-circle', [VegaClick]],
9
9
  ['vega-button-group', [VegaClick]],
10
10
  ['vega-button-link', [VegaClick]],
11
- ['vega-calendar', [VegaChange, VegaEventClick]],
11
+ ['vega-calendar', [VegaChange, VegaEventClick, VegaDateDblClick]],
12
12
  ['vega-carousel', [VegaPageUpdate]],
13
13
  ['vega-checkbox', [VegaChange]],
14
14
  ['vega-checkbox-group', [VegaChange]],
@@ -86,5 +86,5 @@ export const VegaDropdownHide = new VegaEventID('vegaHide', 'dropdownHide');
86
86
  export const VegaDropdownSearch = new VegaEventID('vegaSearch', 'dropdownSearch');
87
87
  export const VegaActionClick = new VegaEventID('vegaActionClick', 'actionClick');
88
88
  export const VegaEventClick = new VegaEventID('vegaEventClick', 'eventClick');
89
- export const VegaDateClick = new VegaEventID('vegaDateClick', 'dateClick');
89
+ export const VegaDateDblClick = new VegaEventID('vegaDateDblClick', 'dateDblClick');
90
90
  export const HTMLNativeEventIds = [VegaChange, VegaClick, VegaFocus, VegaBlur];
@@ -25,3 +25,4 @@ export const VegaInternalLeftNavLinkClick = new VegaInternalEventID('leftNavLink
25
25
  export const VegaInternalSubStatePull = new VegaInternalEventID('subStatePull');
26
26
  export const VegaInternalSubStatePush = new VegaInternalEventID('subStatePush');
27
27
  export const VegaInternalCalendarMonthEventsChange = new VegaInternalEventID('monthEventsChange');
28
+ export const VegaInternalDropdownTemplateItemsChange = new VegaInternalEventID('dropdownTemplateItemsChange');
@@ -45,6 +45,10 @@ export class SubStateObserverSlimmer extends VegaSlimmer {
45
45
  }
46
46
  });
47
47
  ChangeManager.register(DomNodeSubjectFactory.getSubject(this.parent, VegaInternalSubStatePush), this.subStateObserver);
48
+ if (this.observerEntry.pullStatesWhenReattached && this.host.classList.contains('hydrated')) {
49
+ this.parent = this.getParent();
50
+ this.pullStates();
51
+ }
48
52
  }
49
53
  /**
50
54
  * Unregister the observer when disconnectedCallback
@@ -58,19 +62,7 @@ export class SubStateObserverSlimmer extends VegaSlimmer {
58
62
  * Fetch the parent props when componentWillLoad
59
63
  */
60
64
  componentWillLoad() {
61
- if (!this.parent)
62
- return;
63
- const { subStates } = this.observerEntry;
64
- subStates.forEach((subState) => {
65
- ChangeManager.notify(DomNodeSubjectFactory.getSubject(this.parent, VegaInternalSubStatePull), {
66
- host: this.parent,
67
- stateName: subState.parentStateName,
68
- // eslint-disable-next-line jsdoc/require-jsdoc
69
- callback: (value) => {
70
- this.updateState(subState, value);
71
- },
72
- });
73
- });
65
+ this.pullStates();
74
66
  }
75
67
  /**
76
68
  * The function `getParent` returns the parent element of a given host element, based on the observer
@@ -100,6 +92,28 @@ export class SubStateObserverSlimmer extends VegaSlimmer {
100
92
  this[subState.subStateName] = value;
101
93
  }
102
94
  }
95
+ /**
96
+ * The `pullStates` function iterates through subStates and notifies the ChangeManager to update the
97
+ * state based on the callback function provided.
98
+ *
99
+ * @returns {void} If the `this.parent` property is falsy, the `pullStates` method will return early and not
100
+ * execute the rest of the code inside the method.
101
+ */
102
+ pullStates() {
103
+ if (!this.parent)
104
+ return;
105
+ const { subStates } = this.observerEntry;
106
+ subStates.forEach((subState) => {
107
+ ChangeManager.notify(DomNodeSubjectFactory.getSubject(this.parent, VegaInternalSubStatePull), {
108
+ host: this.parent,
109
+ stateName: subState.parentStateName,
110
+ // eslint-disable-next-line jsdoc/require-jsdoc
111
+ callback: (value) => {
112
+ this.updateState(subState, value);
113
+ },
114
+ });
115
+ });
116
+ }
103
117
  }
104
118
  __decorate([
105
119
  MapToComponentField()
@@ -54,7 +54,7 @@ describe('SubStateObserverSlimmer', () => {
54
54
  InjectVegaSlimmer()
55
55
  ], MockedParentComponent.prototype, "parentStateNotifySlimmer", void 0);
56
56
  class ChildStateSlimmer extends SubStateObserverSlimmer {
57
- constructor() {
57
+ constructor(entry) {
58
58
  super({
59
59
  parent: childParent,
60
60
  subStates: [
@@ -70,6 +70,7 @@ describe('SubStateObserverSlimmer', () => {
70
70
  },
71
71
  },
72
72
  ],
73
+ pullStatesWhenReattached: entry && entry.pullStatesWhenReattached,
73
74
  });
74
75
  }
75
76
  }
@@ -83,11 +84,11 @@ describe('SubStateObserverSlimmer', () => {
83
84
  MapToComponentField({ writable: true })
84
85
  ], ChildStateSlimmer.prototype, "age", void 0);
85
86
  class ChildComponent {
86
- constructor() {
87
+ constructor(childStateSlimmerEntry) {
87
88
  this.host = child;
88
89
  this.name = 'child name';
89
90
  this.childState = 'child only';
90
- this.childStateSlimmer = new ChildStateSlimmer();
91
+ this.childStateSlimmer = new ChildStateSlimmer(childStateSlimmerEntry);
91
92
  }
92
93
  connectedCallback() {
93
94
  jest.fn();
@@ -189,4 +190,15 @@ describe('SubStateObserverSlimmer', () => {
189
190
  parentComponent.watchParentState('parent state changed');
190
191
  expect(childComponent.getChildState()).toEqual('child only');
191
192
  });
193
+ it('child state should be changed when connectedCallback and pullStatesWhenReattached is true', () => {
194
+ child.classList.add('hydrated');
195
+ const parentComponent = new MockedParentComponent();
196
+ const childComponent = new ChildComponent({
197
+ pullStatesWhenReattached: true,
198
+ });
199
+ parentComponent.connectedCallback();
200
+ parentComponent.componentWillLoad();
201
+ childComponent.connectedCallback();
202
+ expect(childComponent.getName()).toEqual('parent name');
203
+ });
192
204
  });
@@ -4,7 +4,7 @@ test('should return the correct vega environment parameters', () => {
4
4
  const vegaEnv = VegaEnvManager.getVegaEnv();
5
5
  expect(vegaEnv).toEqual({
6
6
  framework: 'vanilla-js',
7
- version: '2.16.0',
7
+ version: '2.17.0',
8
8
  });
9
9
  });
10
10
  test('should return the correct vega framework', () => {
@@ -9,9 +9,9 @@ export var FrameworkEnum;
9
9
  /** The VegaEnvManager class manages vega environment parameters. */
10
10
  class VegaEnvManager {
11
11
  constructor() {
12
- // The `2.16.0` will be replaced to a version string when running publish script.
12
+ // The `2.17.0` will be replaced to a version string when running publish script.
13
13
  // eslint-disable-next-line @typescript-eslint/no-magic-numbers
14
- this.vegaVersion = '2.16.0';
14
+ this.vegaVersion = '2.17.0';
15
15
  this.framework = FrameworkEnum.VanillaJs;
16
16
  }
17
17
  /**
@@ -1,8 +1,8 @@
1
1
  import { F as FeatureFlag } from './featureFlagController-816491ad.js';
2
- import { V as VegaLoader, a as VegaNotify, b as VegaThemeManager, c as VegaEventManager, v as vegaEnvManager, w as waitForVega, d as VegaSkeletonLoader } from './vega-skeleton-loader-controller-3f5500e5.js';
2
+ import { V as VegaLoader, a as VegaNotify, b as VegaThemeManager, c as VegaEventManager, v as vegaEnvManager, w as waitForVega, d as VegaSkeletonLoader } from './vega-skeleton-loader-controller-778b12be.js';
3
3
  import { M as MapToComponentMethod, V as VegaSlimmer, s as setVegaLogLevel, G as GlobalSlimmersRegistry } from './global-slimmer-registry-16fd7452.js';
4
4
  import { V as VegaDialog } from './vegaDialogController-f96ee430.js';
5
- import './internalVegaEventManager-e1501923.js';
5
+ import './internalVegaEventManager-71d00966.js';
6
6
  import './ui-28499aab.js';
7
7
  import { T as TypographyUrls } from './typography-a8fc4764.js';
8
8
  import { V as VegaIconManager } from './iconManager-48bebc43.js';
@@ -1,5 +1,5 @@
1
1
  import { a as MapToComponentField, M as MapToComponentMethod, V as VegaSlimmer } from './global-slimmer-registry-16fd7452.js';
2
- import { I as InternalVegaEventManager, j as jqueryDelegatedStrategyController } from './internalVegaEventManager-e1501923.js';
2
+ import { I as InternalVegaEventManager, j as jqueryDelegatedStrategyController } from './internalVegaEventManager-71d00966.js';
3
3
 
4
4
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
5
5
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -2,7 +2,7 @@ import { a as MapToComponentField, V as VegaSlimmer, I as InjectVegaSlimmer } fr
2
2
  import { c as createDynamicSlimmer } from './dynamic-slimmer-ef83e258.js';
3
3
  import { C as ChangeManager } from './changeManager-d60d98c8.js';
4
4
  import { d as domNodeSubjectFactory, D as DomNodeSubjectObserverFactory } from './domNodeSubjectObserverFactory-a764a6df.js';
5
- import { j as jqueryDelegatedStrategyController, I as InternalVegaEventManager } from './internalVegaEventManager-e1501923.js';
5
+ import { j as jqueryDelegatedStrategyController, I as InternalVegaEventManager } from './internalVegaEventManager-71d00966.js';
6
6
 
7
7
  var __decorate$3 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
8
8
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;