@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.
- package/dist/cjs/{app-globals-5e074c5e.js → app-globals-4e0416c1.js} +2 -2
- package/dist/cjs/{childNodesEventPreventSlimmer-7e1895d7.js → childNodesEventPreventSlimmer-6848c3cf.js} +1 -1
- package/dist/cjs/{eventEmitSlimmer-ea57144a.js → eventEmitSlimmer-1d70a720.js} +1 -1
- package/dist/cjs/{formFieldControllerSlimmer-9271a8b8.js → formFieldControllerSlimmer-8b54f14d.js} +1 -1
- package/dist/cjs/index.cjs.js +3 -3
- package/dist/cjs/{internalVegaEventManager-543c20cb.js → internalVegaEventManager-743a124d.js} +2 -2
- package/dist/cjs/loader.cjs.js +5 -5
- package/dist/cjs/{subStateObserverSlimmer-48ad20a1.js → subStateObserverSlimmer-60e4d6da.js} +28 -14
- package/dist/cjs/vega-accordion.cjs.entry.js +4 -4
- package/dist/cjs/vega-app-header-button.cjs.entry.js +4 -4
- package/dist/cjs/vega-banner.cjs.entry.js +3 -3
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
- package/dist/cjs/vega-button-circle.cjs.entry.js +4 -4
- package/dist/cjs/vega-button-group_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-button-link.cjs.entry.js +4 -4
- package/dist/cjs/vega-button.cjs.entry.js +57 -12
- package/dist/cjs/vega-calendar_2.cjs.entry.js +830 -90
- package/dist/cjs/vega-carousel.cjs.entry.js +3 -3
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-chip.cjs.entry.js +4 -4
- package/dist/cjs/vega-color-picker.cjs.entry.js +5 -5
- package/dist/cjs/vega-combo-box.cjs.entry.js +6 -6
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-dialog_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +308 -183
- package/dist/cjs/vega-field-label.cjs.entry.js +4 -4
- package/dist/cjs/vega-form.cjs.entry.js +6 -6
- package/dist/cjs/vega-image-uploader.cjs.entry.js +6 -6
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +6 -6
- package/dist/cjs/vega-input-range.cjs.entry.js +6 -6
- package/dist/cjs/vega-input-select.cjs.entry.js +168 -58
- package/dist/cjs/vega-input.cjs.entry.js +5 -5
- package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +4 -4
- package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +1 -1
- package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
- package/dist/cjs/vega-pagination.cjs.entry.js +4 -4
- package/dist/cjs/vega-popover_2.cjs.entry.js +3 -3
- package/dist/cjs/vega-progress-tracker.cjs.entry.js +3 -3
- package/dist/cjs/vega-radio_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-segment-control.cjs.entry.js +3 -3
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +7 -7
- package/dist/cjs/{vega-skeleton-loader-controller-bac82c82.js → vega-skeleton-loader-controller-8932c0ed.js} +3 -3
- package/dist/cjs/vega-stepper.cjs.entry.js +6 -6
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-table_8.cjs.entry.js +6 -6
- package/dist/cjs/vega-textarea.cjs.entry.js +6 -6
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +3 -3
- package/dist/cjs/vega.cjs.js +5 -5
- package/dist/cjs/{vegaEventId-d7774262.js → vegaEventId-f375a6a3.js} +2 -0
- package/dist/cjs/{vegaInternalEventId-173c4941.js → vegaInternalEventId-ac38dd4b.js} +2 -0
- package/dist/collection/components/vega-button/slimmers/renderers/vega-button-loading-renderer.js +24 -0
- package/dist/collection/components/vega-button/vega-button.css +9 -1
- package/dist/collection/components/vega-button/vega-button.js +49 -7
- package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-current-period-controller.js +38 -24
- package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-controller.js +54 -1
- package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-view-controller.js +13 -21
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeatPattern/baseRepeatPattern.js +61 -0
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventDailyRepeatPattern.js +70 -0
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventMonthlyRepeatPattern.js +90 -0
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventRepeatPatternFactory.js +60 -0
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventWeeklyRepeatPattern.js +163 -0
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventYearlyRepeatPattern.js +92 -0
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/test/calendarEventRepeatPatternFactory.test.js +105 -0
- package/dist/collection/components/vega-calendar/slimmers/common/layout/test/longEventLayoutGenerator.test.js +0 -5
- package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-switch-panel.js +1 -1
- package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/timed-event/layout/test/dayViewEventLayoutGenerator.test.js +0 -5
- package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.js +21 -4
- package/dist/collection/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.js +45 -2
- package/dist/collection/components/vega-calendar/vega-calendar.css +0 -1
- package/dist/collection/components/vega-calendar/vega-calendar.js +51 -4
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.js +0 -4
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-children-controller.js +14 -1
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-scrollable-controller.js +142 -0
- package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js +16 -50
- package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-renderer.js +6 -1
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/controllers/vega-dropdown-item-state-controller.js +1 -0
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +7 -5
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.js +1 -1
- package/dist/collection/components/vega-dropdown/vega-dropdown.js +5 -2
- package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-dropdown-controller.js +23 -0
- package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-items-slot-controler.js +62 -0
- package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-source-controller.js +11 -0
- package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-value-controller.js +7 -10
- package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +18 -2
- package/dist/collection/components/vega-input-select/vega-input-select.js +5 -0
- package/dist/collection/components/vega-loading-indicator/vega-loading-indicator.js +2 -2
- package/dist/collection/constants/ui.js +1 -1
- package/dist/collection/helpers/calendar/calendar-date.js +11 -0
- package/dist/collection/helpers/calendar/calendar-event.js +73 -24
- package/dist/collection/helpers/calendar/calendar-period/calendar-period.abstract.js +8 -0
- package/dist/collection/helpers/calendar/calendar-period/day-period.js +1 -0
- package/dist/collection/helpers/calendar/calendar-period/month-period.js +16 -3
- package/dist/collection/helpers/calendar/calendar-period/week-period.js +1 -0
- package/dist/collection/helpers/calendar/test/calendar-event.test.js +23 -20
- package/dist/collection/helpers/event-manager/eventID/componentEventIdMap.js +2 -2
- package/dist/collection/helpers/event-manager/eventID/vegaEventId.js +1 -1
- package/dist/collection/helpers/event-manager/eventID/vegaInternalEventId.js +1 -0
- package/dist/collection/helpers/slimmers/sub-state/subStateObserverSlimmer.js +27 -13
- package/dist/collection/helpers/slimmers/sub-state/test/sub-state-observer-slimmer.test.js +15 -3
- package/dist/collection/helpers/vega-telemetry-helper/test/vegaEnvManager.test.js +1 -1
- package/dist/collection/helpers/vega-telemetry-helper/vegaEnvManager.js +2 -2
- package/dist/esm/{app-globals-032d6105.js → app-globals-ba85a900.js} +2 -2
- package/dist/esm/{childNodesEventPreventSlimmer-b9c50cc4.js → childNodesEventPreventSlimmer-d0da4527.js} +1 -1
- package/dist/esm/{eventEmitSlimmer-9c33f04e.js → eventEmitSlimmer-7b16eef9.js} +1 -1
- package/dist/esm/{formFieldControllerSlimmer-85ff874e.js → formFieldControllerSlimmer-ea050a17.js} +1 -1
- package/dist/esm/index.js +3 -3
- package/dist/esm/{internalVegaEventManager-e1501923.js → internalVegaEventManager-71d00966.js} +2 -2
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{subStateObserverSlimmer-354b33f6.js → subStateObserverSlimmer-2a8a615e.js} +28 -14
- package/dist/esm/vega-accordion.entry.js +4 -4
- package/dist/esm/vega-app-header-button.entry.js +4 -4
- package/dist/esm/vega-banner.entry.js +3 -3
- package/dist/esm/vega-breadcrumb.entry.js +4 -4
- package/dist/esm/vega-button-circle.entry.js +4 -4
- package/dist/esm/vega-button-group_2.entry.js +6 -6
- package/dist/esm/vega-button-link.entry.js +4 -4
- package/dist/esm/vega-button.entry.js +59 -14
- package/dist/esm/vega-calendar_2.entry.js +830 -90
- package/dist/esm/vega-carousel.entry.js +3 -3
- package/dist/esm/vega-checkbox_2.entry.js +6 -6
- package/dist/esm/vega-chip.entry.js +4 -4
- package/dist/esm/vega-color-picker.entry.js +5 -5
- package/dist/esm/vega-combo-box.entry.js +6 -6
- package/dist/esm/vega-date-picker_2.entry.js +6 -6
- package/dist/esm/vega-dialog_2.entry.js +4 -4
- package/dist/esm/vega-dropdown_5.entry.js +308 -183
- package/dist/esm/vega-field-label.entry.js +4 -4
- package/dist/esm/vega-form.entry.js +6 -6
- package/dist/esm/vega-image-uploader.entry.js +6 -6
- package/dist/esm/vega-input-credit-card.entry.js +6 -6
- package/dist/esm/vega-input-range.entry.js +6 -6
- package/dist/esm/vega-input-select.entry.js +168 -58
- package/dist/esm/vega-input.entry.js +5 -5
- package/dist/esm/vega-item-toggle.entry.js +3 -3
- package/dist/esm/vega-left-nav_5.entry.js +4 -4
- package/dist/esm/vega-loader-wrapper_2.entry.js +1 -1
- package/dist/esm/vega-page-notification_2.entry.js +1 -1
- package/dist/esm/vega-pagination.entry.js +4 -4
- package/dist/esm/vega-popover_2.entry.js +3 -3
- package/dist/esm/vega-progress-tracker.entry.js +3 -3
- package/dist/esm/vega-radio_2.entry.js +6 -6
- package/dist/esm/vega-segment-control.entry.js +3 -3
- package/dist/esm/vega-selection-tile_2.entry.js +7 -7
- package/dist/esm/{vega-skeleton-loader-controller-3f5500e5.js → vega-skeleton-loader-controller-778b12be.js} +3 -3
- package/dist/esm/vega-stepper.entry.js +6 -6
- package/dist/esm/vega-tab-group_2.entry.js +4 -4
- package/dist/esm/vega-table_8.entry.js +6 -6
- package/dist/esm/vega-textarea.entry.js +6 -6
- package/dist/esm/vega-time-picker_2.entry.js +6 -6
- package/dist/esm/vega-toggle-switch.entry.js +3 -3
- package/dist/esm/vega.js +5 -5
- package/dist/esm/{vegaEventId-680887e1.js → vegaEventId-f279bb62.js} +2 -1
- package/dist/esm/{vegaInternalEventId-600b3751.js → vegaInternalEventId-bde5d617.js} +2 -1
- package/dist/types/components/vega-button/slimmers/renderers/vega-button-loading-renderer.d.ts +13 -0
- package/dist/types/components/vega-button/vega-button.d.ts +16 -0
- package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-current-period-controller.d.ts +12 -9
- package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-controller.d.ts +20 -0
- package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-view-controller.d.ts +8 -12
- package/dist/types/components/vega-calendar/slimmers/common/helpers/repeatPattern/baseRepeatPattern.d.ts +50 -0
- package/dist/types/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventDailyRepeatPattern.d.ts +43 -0
- package/dist/types/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventMonthlyRepeatPattern.d.ts +55 -0
- package/dist/types/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventRepeatPatternFactory.d.ts +34 -0
- package/dist/types/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventWeeklyRepeatPattern.d.ts +99 -0
- package/dist/types/components/vega-calendar/slimmers/common/helpers/repeatPattern/calendarEventYearlyRepeatPattern.d.ts +57 -0
- package/dist/types/components/vega-calendar/slimmers/common/helpers/test/calendarEventRepeatPatternFactory.test.d.ts +1 -0
- package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.d.ts +8 -0
- package/dist/types/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.d.ts +23 -0
- package/dist/types/components/vega-calendar/types.d.ts +14 -2
- package/dist/types/components/vega-calendar/vega-calendar.d.ts +15 -3
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.d.ts +0 -1
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-children-controller.d.ts +4 -0
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-scrollable-controller.d.ts +57 -0
- package/dist/types/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.d.ts +7 -17
- package/dist/types/components/vega-dropdown/slimmers/renderers/vega-dropdown-renderer.d.ts +3 -0
- package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +2 -1
- package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-dropdown-controller.d.ts +2 -0
- package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-items-slot-controler.d.ts +19 -0
- package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-source-controller.d.ts +11 -1
- package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-value-controller.d.ts +1 -1
- package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.d.ts +6 -0
- package/dist/types/components/vega-input-select/vega-input-select.d.ts +2 -0
- package/dist/types/components.d.ts +17 -1
- package/dist/types/constants/ui.d.ts +1 -1
- package/dist/types/helpers/calendar/calendar-date.d.ts +8 -0
- package/dist/types/helpers/calendar/calendar-event.d.ts +44 -2
- package/dist/types/helpers/calendar/calendar-period/calendar-period.abstract.d.ts +10 -2
- package/dist/types/helpers/calendar/calendar-period/day-period.d.ts +1 -0
- package/dist/types/helpers/calendar/calendar-period/month-period.d.ts +12 -0
- package/dist/types/helpers/calendar/calendar-period/week-period.d.ts +1 -0
- package/dist/types/helpers/event-manager/eventID/vegaEventId.d.ts +1 -1
- package/dist/types/helpers/event-manager/eventID/vegaInternalEventId.d.ts +1 -0
- package/dist/types/helpers/slimmers/sub-state/subStateObserverSlimmer.d.ts +9 -0
- package/dist/types/types/components.type.d.ts +1 -0
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/{p-0f88130f.entry.js → p-0ef3d3fd.entry.js} +1 -1
- package/dist/vega/p-1080d80a.js +1 -0
- package/dist/vega/{p-9d9f7c25.entry.js → p-154a3145.entry.js} +1 -1
- package/dist/vega/{p-cbb90cf6.entry.js → p-1bc3348e.entry.js} +1 -1
- package/dist/vega/{p-86d3e5eb.entry.js → p-255aa39b.entry.js} +1 -1
- package/dist/vega/p-29654e12.entry.js +1 -0
- package/dist/vega/{p-77b39fe7.entry.js → p-2f905e6f.entry.js} +1 -1
- package/dist/vega/p-3490dd8a.entry.js +1 -0
- package/dist/vega/p-3fee5d7e.entry.js +1 -0
- package/dist/vega/p-44f4924b.js +1 -0
- package/dist/vega/p-4546cd3d.entry.js +1 -0
- package/dist/vega/{p-77ff7c72.js → p-5141bcac.js} +1 -1
- package/dist/vega/{p-16608c5a.js → p-51e2c836.js} +1 -1
- package/dist/vega/{p-d7cb0227.entry.js → p-52bf3ce1.entry.js} +1 -1
- package/dist/vega/{p-cd05ab96.entry.js → p-5611cf4c.entry.js} +1 -1
- package/dist/vega/{p-40db8b33.entry.js → p-5e3f5e8e.entry.js} +1 -1
- package/dist/vega/p-642d58ff.js +1 -0
- package/dist/vega/{p-9b5e858e.entry.js → p-6470d034.entry.js} +1 -1
- package/dist/vega/{p-8e63fc54.entry.js → p-6877dc17.entry.js} +1 -1
- package/dist/vega/{p-1dfddf03.entry.js → p-69cf5269.entry.js} +1 -1
- package/dist/vega/{p-21675b8e.entry.js → p-70af1334.entry.js} +1 -1
- package/dist/vega/{p-bd1bc019.entry.js → p-7115c145.entry.js} +1 -1
- package/dist/vega/{p-7d22c459.entry.js → p-795927c4.entry.js} +1 -1
- package/dist/vega/{p-6ad96891.entry.js → p-7c1d2dcf.entry.js} +1 -1
- package/dist/vega/p-7f9cb4c0.entry.js +1 -0
- package/dist/vega/p-82fd348b.entry.js +1 -0
- package/dist/vega/p-8543f9c3.entry.js +1 -0
- package/dist/vega/{p-12e93c00.entry.js → p-8771bf66.entry.js} +1 -1
- package/dist/vega/{p-84787f59.entry.js → p-88cf7e56.entry.js} +1 -1
- package/dist/vega/{p-d7f7e2df.entry.js → p-8e7d6700.entry.js} +1 -1
- package/dist/vega/p-9119ad95.entry.js +1 -0
- package/dist/vega/p-9799f3d8.entry.js +1 -0
- package/dist/vega/{p-61c96c79.entry.js → p-a6c43909.entry.js} +1 -1
- package/dist/vega/{p-ceb5067a.entry.js → p-b23ad436.entry.js} +1 -1
- package/dist/vega/{p-c8e1b56d.entry.js → p-b570e6c7.entry.js} +1 -1
- package/dist/vega/{p-ba37eaad.entry.js → p-b6f68efd.entry.js} +1 -1
- package/dist/vega/{p-25f60a0b.entry.js → p-b8a47375.entry.js} +1 -1
- package/dist/vega/{p-7fd253e0.entry.js → p-b8d45e28.entry.js} +1 -1
- package/dist/vega/{p-9e5f7b82.js → p-bba06111.js} +1 -1
- package/dist/vega/{p-2066e3eb.entry.js → p-c1401fab.entry.js} +1 -1
- package/dist/vega/{p-a9f61d9e.entry.js → p-cafe75e8.entry.js} +1 -1
- package/dist/vega/{p-7d9934ee.entry.js → p-cf40587e.entry.js} +1 -1
- package/dist/vega/{p-7706a169.js → p-d126407a.js} +1 -1
- package/dist/vega/{p-fb34de30.entry.js → p-e373bc4d.entry.js} +1 -1
- package/dist/vega/p-eacf64be.js +1 -0
- package/dist/vega/{p-1d628d23.entry.js → p-ec4afdaa.entry.js} +1 -1
- package/dist/vega/{p-a9d3ea86.js → p-f0330fcc.js} +1 -1
- package/dist/vega/{p-c0ca1a1c.entry.js → p-f8a97354.entry.js} +1 -1
- package/dist/vega/{p-f5d3d49f.entry.js → p-f96ee751.entry.js} +1 -1
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +1 -1
- package/dist/vega/p-1092a8ce.entry.js +0 -1
- package/dist/vega/p-43515fe4.entry.js +0 -1
- package/dist/vega/p-592e755b.entry.js +0 -1
- package/dist/vega/p-76265c0e.entry.js +0 -1
- package/dist/vega/p-9316cd6d.entry.js +0 -1
- package/dist/vega/p-a9c3e9fd.js +0 -1
- package/dist/vega/p-aae8855d.js +0 -1
- package/dist/vega/p-bb845e70.entry.js +0 -1
- package/dist/vega/p-c47d4933.js +0 -1
- package/dist/vega/p-c9f922bf.entry.js +0 -1
- package/dist/vega/p-ca1fae74.entry.js +0 -1
- package/dist/vega/p-eb461dad.entry.js +0 -1
- 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
|
-
|
|
28
|
-
|
|
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.
|
|
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.
|
|
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 }),
|
|
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
|
-
'
|
|
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
|
|
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.
|
|
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
|
-
|
|
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
|
-
|
|
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
|
}
|
|
@@ -5,9 +5,22 @@ import { CalendarDate } from '../calendar-date';
|
|
|
5
5
|
*/
|
|
6
6
|
export class MonthPeriod extends CalendarPeriod {
|
|
7
7
|
constructor(current) {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
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
|
|
@@ -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/
|
|
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
|
|
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
|
|
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
|
-
|
|
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.
|
|
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.
|
|
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.
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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;
|