@globalpayments/vega 2.15.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-6b5136b1.js → app-globals-4e0416c1.js} +15 -8
- package/dist/cjs/{childNodesEventPreventSlimmer-5b352793.js → childNodesEventPreventSlimmer-6848c3cf.js} +13 -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 +11 -10
- 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 +310 -184
- 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 +217 -105
- 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/{index-b8881ddc.js → vega-skeleton-loader-controller-8932c0ed.js} +91 -3
- package/dist/cjs/vega-skeleton.cjs.entry.js +1 -1
- 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 +2 -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 +8 -2
- 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 +22 -40
- 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-lazy-load-controller.js +2 -2
- package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-source-controller.js +48 -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 +25 -6
- package/dist/collection/components/vega-input-select/vega-input-select.js +10 -2
- package/dist/collection/components/vega-loading-indicator/vega-loading-indicator.js +2 -2
- package/dist/collection/components/vega-skeleton/vega-skeleton.css +5 -2
- package/dist/collection/constants/ui.js +1 -1
- package/dist/collection/global/scripts/beforeVegaLoad.js +8 -0
- 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/event-manager/slimmers/childNodesEventPreventSlimmer.js +12 -0
- package/dist/collection/helpers/event-manager/test/childNodesEventPreventSlimmer.test.js +14 -0
- package/dist/collection/helpers/publicApi.js +1 -0
- package/dist/collection/helpers/skeleton-loader/tests/vega-skeleton-loader-controller.test.js +139 -0
- package/dist/collection/helpers/skeleton-loader/vega-skeleton-loader-controller.js +87 -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-cf903368.js → app-globals-ba85a900.js} +9 -2
- package/dist/esm/{childNodesEventPreventSlimmer-ca73e6c1.js → childNodesEventPreventSlimmer-d0da4527.js} +13 -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 +310 -184
- 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 +217 -105
- 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/{index-dd06e5e7.js → vega-skeleton-loader-controller-778b12be.js} +91 -4
- package/dist/esm/vega-skeleton.entry.js +1 -1
- 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 -19
- 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-lazy-load-controller.d.ts +1 -1
- package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-source-controller.d.ts +29 -0
- 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 +7 -1
- package/dist/types/components/vega-input-select/vega-input-select.d.ts +4 -2
- 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/event-manager/slimmers/childNodesEventPreventSlimmer.d.ts +6 -0
- package/dist/types/helpers/publicApi.d.ts +1 -0
- package/dist/types/helpers/skeleton-loader/interface.d.ts +16 -0
- package/dist/types/helpers/skeleton-loader/tests/vega-skeleton-loader-controller.test.d.ts +1 -0
- package/dist/types/helpers/skeleton-loader/vega-skeleton-loader-controller.d.ts +48 -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/types/types/publicApi.d.ts +1 -0
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/{p-692df03d.entry.js → p-0ef3d3fd.entry.js} +1 -1
- package/dist/vega/p-1080d80a.js +1 -0
- package/dist/vega/{p-6f7f9cda.entry.js → p-154a3145.entry.js} +1 -1
- package/dist/vega/{p-af72a212.entry.js → p-1bc3348e.entry.js} +1 -1
- package/dist/vega/{p-b58e2fae.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-4bc71294.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-2bb1c1c1.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-1b3a0b54.entry.js → p-5e3f5e8e.entry.js} +1 -1
- package/dist/vega/p-642d58ff.js +1 -0
- package/dist/vega/{p-9047ee85.entry.js → p-6470d034.entry.js} +1 -1
- package/dist/vega/{p-3efc814a.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-ceec3241.entry.js → p-70af1334.entry.js} +1 -1
- package/dist/vega/{p-f723790c.entry.js → p-7115c145.entry.js} +1 -1
- package/dist/vega/{p-de5db6c9.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-d224e798.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-eb709bc0.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-e1a284b1.entry.js → p-b23ad436.entry.js} +1 -1
- package/dist/vega/{p-b708b0c2.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-38a22eb3.entry.js → p-b8a47375.entry.js} +1 -1
- package/dist/vega/{p-2e59a4f1.entry.js → p-b8d45e28.entry.js} +1 -1
- package/dist/vega/{p-99c8fe92.js → p-bba06111.js} +1 -1
- package/dist/vega/{p-282648c1.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-37d3b80c.entry.js → p-cf40587e.entry.js} +1 -1
- package/dist/vega/p-d126407a.js +1 -0
- package/dist/vega/{p-c849236f.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-f0330fcc.js +1 -0
- package/dist/vega/{p-c0ca1a1c.entry.js → p-f8a97354.entry.js} +1 -1
- package/dist/vega/{p-8c62c493.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-009405b6.entry.js +0 -1
- package/dist/vega/p-38b01f3f.entry.js +0 -1
- package/dist/vega/p-38d19c4f.entry.js +0 -1
- package/dist/vega/p-4d2859c9.entry.js +0 -1
- package/dist/vega/p-557516a4.entry.js +0 -1
- package/dist/vega/p-592e755b.entry.js +0 -1
- package/dist/vega/p-999e1318.js +0 -1
- package/dist/vega/p-a6cb10e8.entry.js +0 -1
- package/dist/vega/p-a9c3e9fd.js +0 -1
- package/dist/vega/p-aae8855d.js +0 -1
- package/dist/vega/p-b3056874.entry.js +0 -1
- package/dist/vega/p-c47d4933.js +0 -1
- package/dist/vega/p-d978ee2c.entry.js +0 -1
- package/dist/vega/p-eb461dad.entry.js +0 -1
- package/dist/vega/p-f1d8fd1c.js +0 -1
- package/dist/vega/p-fda33444.js +0 -1
|
@@ -9,7 +9,6 @@ const mockEvents1 = [
|
|
|
9
9
|
startTime: '10:00',
|
|
10
10
|
endTime: '11:00',
|
|
11
11
|
isAllDay: false,
|
|
12
|
-
repeat: 'none',
|
|
13
12
|
disabled: false,
|
|
14
13
|
variant: 'primary',
|
|
15
14
|
},
|
|
@@ -21,7 +20,6 @@ const mockEvents1 = [
|
|
|
21
20
|
startTime: '10:00',
|
|
22
21
|
endTime: '10:15',
|
|
23
22
|
isAllDay: false,
|
|
24
|
-
repeat: 'none',
|
|
25
23
|
disabled: false,
|
|
26
24
|
variant: 'primary',
|
|
27
25
|
color: '#73E6DC',
|
|
@@ -36,7 +34,6 @@ const mockEvents2 = [
|
|
|
36
34
|
startTime: '10:00',
|
|
37
35
|
endTime: '11:00',
|
|
38
36
|
isAllDay: false,
|
|
39
|
-
repeat: 'none',
|
|
40
37
|
disabled: false,
|
|
41
38
|
variant: 'primary',
|
|
42
39
|
},
|
|
@@ -48,7 +45,6 @@ const mockEvents2 = [
|
|
|
48
45
|
startTime: '10:30',
|
|
49
46
|
endTime: '11:30',
|
|
50
47
|
isAllDay: false,
|
|
51
|
-
repeat: 'none',
|
|
52
48
|
disabled: false,
|
|
53
49
|
variant: 'secondary',
|
|
54
50
|
color: '#806BFF',
|
|
@@ -63,7 +59,6 @@ const mockEvent4 = [
|
|
|
63
59
|
startTime: '10:00',
|
|
64
60
|
endTime: '10:15',
|
|
65
61
|
isAllDay: false,
|
|
66
|
-
repeat: 'none',
|
|
67
62
|
disabled: false,
|
|
68
63
|
variant: 'primary',
|
|
69
64
|
color: '#73E6DC',
|
|
@@ -22,7 +22,7 @@ export class VegaCalendarSwitchPanelRenderer extends VegaSlimmer {
|
|
|
22
22
|
* @param {NotifyObserverPayload<VegaCalendarViewModeType>} input mark which view should be selected
|
|
23
23
|
*/
|
|
24
24
|
this.handleViewChange = (input) => {
|
|
25
|
-
this.
|
|
25
|
+
this.currentPeriodController.updateCalendarPeriod(input.detail, this.currentPeriod.current);
|
|
26
26
|
};
|
|
27
27
|
/**
|
|
28
28
|
* reset view content to today
|
|
@@ -9,7 +9,6 @@ const mockEvents = [
|
|
|
9
9
|
startTime: '10:00',
|
|
10
10
|
endTime: '11:00',
|
|
11
11
|
isAllDay: false,
|
|
12
|
-
repeat: 'none',
|
|
13
12
|
disabled: false,
|
|
14
13
|
variant: 'primary',
|
|
15
14
|
},
|
|
@@ -21,7 +20,6 @@ const mockEvents = [
|
|
|
21
20
|
startTime: '10:00',
|
|
22
21
|
endTime: '10:15',
|
|
23
22
|
isAllDay: false,
|
|
24
|
-
repeat: 'none',
|
|
25
23
|
disabled: false,
|
|
26
24
|
variant: 'primary',
|
|
27
25
|
color: '#73E6DC',
|
|
@@ -34,7 +32,6 @@ const mockEvents = [
|
|
|
34
32
|
startTime: '10:30',
|
|
35
33
|
endTime: '11:30',
|
|
36
34
|
isAllDay: false,
|
|
37
|
-
repeat: 'none',
|
|
38
35
|
disabled: false,
|
|
39
36
|
variant: 'secondary',
|
|
40
37
|
color: '#806BFF',
|
|
@@ -47,7 +44,6 @@ const mockEvents = [
|
|
|
47
44
|
startTime: '10:45',
|
|
48
45
|
endTime: '11:00',
|
|
49
46
|
isAllDay: false,
|
|
50
|
-
repeat: 'none',
|
|
51
47
|
disabled: false,
|
|
52
48
|
variant: 'secondary',
|
|
53
49
|
color: '#806BFF',
|
|
@@ -60,7 +56,6 @@ const mockEvents = [
|
|
|
60
56
|
startTime: '11:00',
|
|
61
57
|
endTime: '12:00',
|
|
62
58
|
isAllDay: false,
|
|
63
|
-
repeat: 'none',
|
|
64
59
|
disabled: false,
|
|
65
60
|
variant: 'secondary',
|
|
66
61
|
color: '#806BFF',
|
|
@@ -51,7 +51,7 @@ export class VegaCalendarViewWithTimeRenderer extends VegaSlimmer {
|
|
|
51
51
|
h("div", { class: "calendar-view-content" }, source.map((item) => {
|
|
52
52
|
return (h("div", { class: "grid-col border-divider-left", key: item.date },
|
|
53
53
|
h("div", { class: "hour-empty border-divider-top" }),
|
|
54
|
-
this.renderHourBlock()));
|
|
54
|
+
this.renderHourBlock(item)));
|
|
55
55
|
})),
|
|
56
56
|
this.dayViewTimedEventRenderer.render(),
|
|
57
57
|
this.timeLineRenderer.renderTimeMarker(source))));
|
|
@@ -59,14 +59,28 @@ export class VegaCalendarViewWithTimeRenderer extends VegaSlimmer {
|
|
|
59
59
|
/**
|
|
60
60
|
* The function `renderHourBlock` returns an array of HTML elements representing hour blocks with time information.
|
|
61
61
|
*
|
|
62
|
+
* @param {CalendarDate} calendarDate then current calendar date object
|
|
62
63
|
* @returns {HTMLElement[]} An array of HTMLElements is being returned. Each HTMLElement represents an hour block with a time value inside a div element.
|
|
63
64
|
*/
|
|
64
|
-
renderHourBlock() {
|
|
65
|
+
renderHourBlock(calendarDate) {
|
|
65
66
|
const timeLineSource = Array(24).fill('');
|
|
66
|
-
return timeLineSource.map(() => {
|
|
67
|
-
return h("div", { class: "grid-cell border-divider-top"
|
|
67
|
+
return timeLineSource.map((_item, index) => {
|
|
68
|
+
return (h("div", { class: "grid-cell border-divider-top",
|
|
69
|
+
// eslint-disable-next-line react/jsx-no-bind
|
|
70
|
+
onDblClick: () => {
|
|
71
|
+
this.handleDateBlockClick(calendarDate, index);
|
|
72
|
+
} }));
|
|
68
73
|
});
|
|
69
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* emit vega click event when click the date block
|
|
77
|
+
*
|
|
78
|
+
* @param {CalendarDate} calendarDate the calendar date object
|
|
79
|
+
*/
|
|
80
|
+
handleDateBlockClick(calendarDate, hour) {
|
|
81
|
+
const { year, month, date } = calendarDate;
|
|
82
|
+
this.dateDblClickEmitter.emit({ year, month, date, hour });
|
|
83
|
+
}
|
|
70
84
|
}
|
|
71
85
|
__decorate([
|
|
72
86
|
MapToComponentField()
|
|
@@ -86,3 +100,6 @@ __decorate([
|
|
|
86
100
|
__decorate([
|
|
87
101
|
MapToComponentField()
|
|
88
102
|
], VegaCalendarViewWithTimeRenderer.prototype, "calendarViewController", void 0);
|
|
103
|
+
__decorate([
|
|
104
|
+
MapToComponentField()
|
|
105
|
+
], VegaCalendarViewWithTimeRenderer.prototype, "dateDblClickEmitter", void 0);
|
|
@@ -37,7 +37,9 @@ export class VegaCalendarMonthViewRenderer extends VegaSlimmer {
|
|
|
37
37
|
'current-month-day': item.compare(currentDate).inMonth,
|
|
38
38
|
'active': item.isToday(),
|
|
39
39
|
'disabled': false,
|
|
40
|
-
}, key: `${item.month}-${item.date}
|
|
40
|
+
}, key: `${item.month}-${item.date}`,
|
|
41
|
+
// eslint-disable-next-line react/jsx-no-bind
|
|
42
|
+
onDblClick: (e) => this.handleDateBlockClick(e, item) },
|
|
41
43
|
this.renderDateBlock(item),
|
|
42
44
|
this.monthEventRenderer.render(item, eventsArray[itemIndex], displayEventsArray[itemIndex], itemIndex)));
|
|
43
45
|
})));
|
|
@@ -53,7 +55,42 @@ export class VegaCalendarMonthViewRenderer extends VegaSlimmer {
|
|
|
53
55
|
const isMonthFirstDay = item.date === 1;
|
|
54
56
|
return (h("div", { class: "date" },
|
|
55
57
|
isMonthFirstDay && h("div", { class: "month-block" }, getMonthName(item.toDate(), true)),
|
|
56
|
-
h("div", { role: "button", tabIndex: 0, class: "grid-col"
|
|
58
|
+
h("div", { role: "button", tabIndex: 0, class: "grid-col",
|
|
59
|
+
// eslint-disable-next-line react/jsx-no-bind
|
|
60
|
+
onDblClick: (e) => this.goToCurrentDayView(e, item) }, item.date)));
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* switch to current date day view
|
|
64
|
+
*
|
|
65
|
+
* @param {MouseEvent} e the double click event object
|
|
66
|
+
* @param {CalendarDate} calendarDate the calendar date object
|
|
67
|
+
*/
|
|
68
|
+
goToCurrentDayView(e, calendarDate) {
|
|
69
|
+
e.stopPropagation();
|
|
70
|
+
this.currentPeriodController.updateCalendarPeriod('day', calendarDate);
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* emit vega click event when click the date block
|
|
74
|
+
*
|
|
75
|
+
* @param {MouseEvent} e the mouse event object
|
|
76
|
+
* @param {CalendarDate} calendarDate the calendar date object
|
|
77
|
+
*/
|
|
78
|
+
handleDateBlockClick(e, calendarDate) {
|
|
79
|
+
const target = e.target;
|
|
80
|
+
if (this.isMonthBlockBlankArea(target)) {
|
|
81
|
+
const { year, month, date } = calendarDate;
|
|
82
|
+
this.dateDblClickEmitter.emit({ year, month, date, hour: 0 });
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* determine if the clicked element is blank area
|
|
87
|
+
*
|
|
88
|
+
* @param {HTMLElement} element the target element
|
|
89
|
+
* @returns {boolean} true or false
|
|
90
|
+
*/
|
|
91
|
+
isMonthBlockBlankArea(element) {
|
|
92
|
+
// the more button and the calendar event component should not trigger dateDblClick event
|
|
93
|
+
return !element.classList.contains('more-button') && element.tagName !== 'VEGA-CALENDAR-EVENT';
|
|
57
94
|
}
|
|
58
95
|
}
|
|
59
96
|
__decorate([
|
|
@@ -68,6 +105,12 @@ __decorate([
|
|
|
68
105
|
__decorate([
|
|
69
106
|
MapToComponentField()
|
|
70
107
|
], VegaCalendarMonthViewRenderer.prototype, "calendarViewController", void 0);
|
|
108
|
+
__decorate([
|
|
109
|
+
MapToComponentField()
|
|
110
|
+
], VegaCalendarMonthViewRenderer.prototype, "currentPeriodController", void 0);
|
|
71
111
|
__decorate([
|
|
72
112
|
MapToComponentField()
|
|
73
113
|
], VegaCalendarMonthViewRenderer.prototype, "monthEventRenderer", void 0);
|
|
114
|
+
__decorate([
|
|
115
|
+
MapToComponentField()
|
|
116
|
+
], VegaCalendarMonthViewRenderer.prototype, "dateDblClickEmitter", void 0);
|
|
@@ -336,7 +336,6 @@
|
|
|
336
336
|
}
|
|
337
337
|
}
|
|
338
338
|
.calendar-view-container .calendar-view-title .week-day {
|
|
339
|
-
cursor: pointer;
|
|
340
339
|
color: rgba(var(--v-text-primary, 32, 54, 69, 1));
|
|
341
340
|
font-family: "Inter", sans-serif;
|
|
342
341
|
font-size: 20px;
|
|
@@ -513,11 +512,13 @@
|
|
|
513
512
|
flex-direction: column;
|
|
514
513
|
gap: 2px;
|
|
515
514
|
justify-content: space-between;
|
|
515
|
+
flex-grow: 1;
|
|
516
516
|
}
|
|
517
517
|
.calendar-view-month .events-container .event-list {
|
|
518
518
|
display: flex;
|
|
519
519
|
flex-direction: column;
|
|
520
520
|
gap: 2px;
|
|
521
|
+
flex-grow: 1;
|
|
521
522
|
}
|
|
522
523
|
.calendar-view-month .events-container .event-list .month-event-block {
|
|
523
524
|
box-sizing: border-box;
|
|
@@ -14,7 +14,7 @@ import { VegaCalendarMonthViewRenderer } from './slimmers/month-view/renderers/v
|
|
|
14
14
|
import { VegaCalendarViewWithTimeRenderer } from './slimmers/day-view/renderers/vega-calendar-view-with-time-renderer';
|
|
15
15
|
import { VegaCalendarTimeLineRenderer } from './slimmers/day-view/renderers/vega-calendar-time-line-renderer';
|
|
16
16
|
import { createEventEmitSlimmer, } from '../../helpers/event-manager/slimmers/eventEmitSlimmer';
|
|
17
|
-
import { VegaChange, VegaEventClick } from '../../helpers/event-manager/eventID/vegaEventId';
|
|
17
|
+
import { VegaChange, VegaDateDblClick, VegaEventClick, } from '../../helpers/event-manager/eventID/vegaEventId';
|
|
18
18
|
import { VegaCalendarViewController } from './slimmers/common/controllers/vega-calendar-view-controller';
|
|
19
19
|
import { VegaCalendarCurrentPeriodController } from './slimmers/common/controllers/vega-calendar-current-period-controller';
|
|
20
20
|
import { ChildNodesEventPreventSlimmer } from '../../helpers/event-manager/slimmers/childNodesEventPreventSlimmer';
|
|
@@ -51,6 +51,7 @@ export class VegaCalendar {
|
|
|
51
51
|
this.eventResponsiveController = new VegaCalendarEventResponsiveController();
|
|
52
52
|
this.changeEventEmitter = createEventEmitSlimmer(VegaCalendar, VegaChange);
|
|
53
53
|
this.eventClickEmitter = createEventEmitSlimmer(VegaCalendar, VegaEventClick);
|
|
54
|
+
this.dateDblClickEmitter = createEventEmitSlimmer(VegaCalendar, VegaDateDblClick);
|
|
54
55
|
this.changeEventPrevent = new ChildNodesEventPreventSlimmer([VegaChange], () => this.switchPanelRenderer.getSwitchPanelRef());
|
|
55
56
|
this.timeFormatNotifySlimmer = createSubStateNotifySlimmer(VegaCalendar, 'timeFormat', 'watchTimeFormat');
|
|
56
57
|
this.calendarEvents = [];
|
|
@@ -65,10 +66,13 @@ export class VegaCalendar {
|
|
|
65
66
|
this.timeFormat = '24-hour';
|
|
66
67
|
}
|
|
67
68
|
/**
|
|
68
|
-
*
|
|
69
|
+
* Tracks changes to the current period state.
|
|
70
|
+
*
|
|
71
|
+
* @param {CalendarPeriod} newValue Specifies the new calendar period.
|
|
72
|
+
* @param {CalendarPeriod} oldValue Specifies the old calendar period.
|
|
69
73
|
*/
|
|
70
|
-
watchCurrentPeriodChange() {
|
|
71
|
-
methodPlaceholder();
|
|
74
|
+
watchCurrentPeriodChange(newValue, oldValue) {
|
|
75
|
+
methodPlaceholder(newValue, oldValue);
|
|
72
76
|
}
|
|
73
77
|
/**
|
|
74
78
|
* Watch the view mode change
|
|
@@ -261,6 +265,46 @@ export class VegaCalendar {
|
|
|
261
265
|
}
|
|
262
266
|
}
|
|
263
267
|
}
|
|
268
|
+
}, {
|
|
269
|
+
"method": "vegaDateDblClick",
|
|
270
|
+
"name": "vegaDateDblClick",
|
|
271
|
+
"bubbles": true,
|
|
272
|
+
"cancelable": true,
|
|
273
|
+
"composed": true,
|
|
274
|
+
"docs": {
|
|
275
|
+
"tags": [],
|
|
276
|
+
"text": "An event emitter notifying that a calendar date item has been double-clicked."
|
|
277
|
+
},
|
|
278
|
+
"complexType": {
|
|
279
|
+
"original": "VegaCalendarDateClickInfo",
|
|
280
|
+
"resolved": "VegaCalendarDateType & { hour: number; }",
|
|
281
|
+
"references": {
|
|
282
|
+
"VegaCalendarDateClickInfo": {
|
|
283
|
+
"location": "import",
|
|
284
|
+
"path": "./types"
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
}, {
|
|
289
|
+
"method": "dateDblClick",
|
|
290
|
+
"name": "dateDblClick",
|
|
291
|
+
"bubbles": true,
|
|
292
|
+
"cancelable": true,
|
|
293
|
+
"composed": true,
|
|
294
|
+
"docs": {
|
|
295
|
+
"tags": [],
|
|
296
|
+
"text": "An event emitter notifying that a calendar date item has been double-clicked."
|
|
297
|
+
},
|
|
298
|
+
"complexType": {
|
|
299
|
+
"original": "VegaCalendarDateClickInfo",
|
|
300
|
+
"resolved": "VegaCalendarDateType & { hour: number; }",
|
|
301
|
+
"references": {
|
|
302
|
+
"VegaCalendarDateClickInfo": {
|
|
303
|
+
"location": "import",
|
|
304
|
+
"path": "./types"
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
}
|
|
264
308
|
}]; }
|
|
265
309
|
static get elementRef() { return "host"; }
|
|
266
310
|
static get watchers() { return [{
|
|
@@ -337,6 +381,9 @@ __decorate([
|
|
|
337
381
|
__decorate([
|
|
338
382
|
InjectVegaSlimmer()
|
|
339
383
|
], VegaCalendar.prototype, "eventClickEmitter", void 0);
|
|
384
|
+
__decorate([
|
|
385
|
+
InjectVegaSlimmer()
|
|
386
|
+
], VegaCalendar.prototype, "dateDblClickEmitter", void 0);
|
|
340
387
|
__decorate([
|
|
341
388
|
InjectVegaSlimmer()
|
|
342
389
|
], VegaCalendar.prototype, "changeEventPrevent", void 0);
|
|
@@ -37,7 +37,6 @@ export class VegaDropdownAppenderController extends ElementAppenderSlimmer {
|
|
|
37
37
|
*/
|
|
38
38
|
async watchIsDropdownShow() {
|
|
39
39
|
if (this.isDropdownShow) {
|
|
40
|
-
await this.renderer.listRenderer.scrollToIndex();
|
|
41
40
|
this.showEventEmitter.emit();
|
|
42
41
|
}
|
|
43
42
|
else {
|
|
@@ -105,9 +104,6 @@ __decorate([
|
|
|
105
104
|
__decorate([
|
|
106
105
|
MapToComponentField()
|
|
107
106
|
], VegaDropdownAppenderController.prototype, "renderer", void 0);
|
|
108
|
-
__decorate([
|
|
109
|
-
MapToComponentField()
|
|
110
|
-
], VegaDropdownAppenderController.prototype, "listRenderer", void 0);
|
|
111
107
|
__decorate([
|
|
112
108
|
MapToComponentField()
|
|
113
109
|
], VegaDropdownAppenderController.prototype, "searchRenderer", void 0);
|
|
@@ -6,6 +6,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { InjectVegaSlimmer, MapToComponentField, MapToComponentMethod, VegaSlimmer, methodPlaceholder, } from 'vega-slimmer/core';
|
|
8
8
|
import { MutationObserverSlimmer } from '../../../../helpers/slimmers/mutation-observer/mutationObserverSlimmer';
|
|
9
|
+
import ChangeManager from '../../../../helpers/change-manager/changeManager';
|
|
10
|
+
import DomNodeSubjectFactory from '../../../../helpers/change-manager/subject/dom-node-subject/domNodeSubjectFactory';
|
|
11
|
+
import { VegaInternalDropdownTemplateItemsChange } from '../../../../helpers/event-manager/eventID/vegaInternalEventId';
|
|
9
12
|
/**
|
|
10
13
|
* The controller for the table children components.
|
|
11
14
|
*/
|
|
@@ -63,7 +66,9 @@ export class VegaDropdownChildrenController extends VegaSlimmer {
|
|
|
63
66
|
* The function "watchSource" synchronizes the dropdown current data.
|
|
64
67
|
*/
|
|
65
68
|
watchSource() {
|
|
66
|
-
this.
|
|
69
|
+
if (this.renderModeController.isSourceRenderMode()) {
|
|
70
|
+
this.syncUpDropdownCurrentData();
|
|
71
|
+
}
|
|
67
72
|
}
|
|
68
73
|
/**
|
|
69
74
|
* The function checks if a given label exists in a label set.
|
|
@@ -93,6 +98,7 @@ export class VegaDropdownChildrenController extends VegaSlimmer {
|
|
|
93
98
|
}
|
|
94
99
|
else {
|
|
95
100
|
this.collectKeyAndLabelFromSlot();
|
|
101
|
+
this.notifyTemplateItemsChange();
|
|
96
102
|
}
|
|
97
103
|
}
|
|
98
104
|
/**
|
|
@@ -122,6 +128,13 @@ export class VegaDropdownChildrenController extends VegaSlimmer {
|
|
|
122
128
|
this.keySet.clear();
|
|
123
129
|
this.labelSet.clear();
|
|
124
130
|
}
|
|
131
|
+
/**
|
|
132
|
+
* The function `notifyTemplateItemsChange` notifies changes to dropdown items within a container element.
|
|
133
|
+
*/
|
|
134
|
+
notifyTemplateItemsChange() {
|
|
135
|
+
const container = this.renderer.getDropdownContentBoxRef() || this.host;
|
|
136
|
+
ChangeManager.notify(DomNodeSubjectFactory.getSubject(this.host, VegaInternalDropdownTemplateItemsChange), container.querySelectorAll('vega-dropdown-item'));
|
|
137
|
+
}
|
|
125
138
|
}
|
|
126
139
|
__decorate([
|
|
127
140
|
MapToComponentField()
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
|
|
8
|
+
import { extractNumberFromString } from '../../../../utils/ui';
|
|
9
|
+
import { LogUtility } from '../../../../utils/log';
|
|
10
|
+
/**
|
|
11
|
+
* The `VegaDropdownScrollableController` class in TypeScript manages the behavior of a scrollable dropdown component,
|
|
12
|
+
* adjusting list container height and scrolling to specific indexes based on render mode and selected source key.
|
|
13
|
+
*/
|
|
14
|
+
export class VegaDropdownScrollableController extends VegaSlimmer {
|
|
15
|
+
/**
|
|
16
|
+
* The function `watchIsDropdownShow` adjusts the list container height and scrolls to a specific index
|
|
17
|
+
* if the dropdown is shown in a certain render mode.
|
|
18
|
+
*/
|
|
19
|
+
async watchIsDropdownShow() {
|
|
20
|
+
if (this.isDropdownShow) {
|
|
21
|
+
this.adjustListContainerMaxHeight();
|
|
22
|
+
await this.scrollToSelectedIndex();
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* The function scrollToSelected asynchronously scrolls to a selected index based on the render mode.
|
|
27
|
+
*/
|
|
28
|
+
async scrollToSelectedIndex() {
|
|
29
|
+
this.renderModeController.isSourceRenderMode()
|
|
30
|
+
? await this.scrollToVirtualIndex()
|
|
31
|
+
: this.scrollToTemplateIndex();
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* The function scrollToVirtualIndex asynchronously scrolls to a specific index in a virtual list based
|
|
35
|
+
* on the selected key.
|
|
36
|
+
*/
|
|
37
|
+
async scrollToVirtualIndex() {
|
|
38
|
+
const index = this.sourceForRender.findIndex((item) => item.key === this.getSelectedKey());
|
|
39
|
+
index >= 0 && (await this.listRenderer.getVirtualScrollRef().scrollToIndex(index));
|
|
40
|
+
}
|
|
41
|
+
/*
|
|
42
|
+
* The below method is e2e-test covered in
|
|
43
|
+
* @see{module:vega-dropdown-scroll-to-selected-key-in-single-template-e2e}
|
|
44
|
+
* @see{module:vega-dropdown-scroll-to-selected-key-in-multiple-template-e2e}
|
|
45
|
+
*/
|
|
46
|
+
/* istanbul ignore next */
|
|
47
|
+
/**
|
|
48
|
+
* The function scrollToTemplateIndex scrolls the dropdown content box to the selected item key.
|
|
49
|
+
*/
|
|
50
|
+
scrollToTemplateIndex() {
|
|
51
|
+
const scrolledKey = this.getSelectedKey();
|
|
52
|
+
if (scrolledKey) {
|
|
53
|
+
this.renderer
|
|
54
|
+
.getDropdownContentBoxRef()
|
|
55
|
+
.querySelector(`vega-dropdown-item[item-key='${scrolledKey}']`)
|
|
56
|
+
.scrollIntoView();
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* The function `getSelectedKey` returns the selected key based on the `selectType` condition.
|
|
61
|
+
*
|
|
62
|
+
* @returns {string} The `getSelectedKey` method returns a string value. If `this.selectType` is equal to
|
|
63
|
+
* 'multiple', it returns the first element of the `selectedSourceKey` array as a string. Otherwise, it
|
|
64
|
+
* returns the `selectedSourceKey` value as a string.
|
|
65
|
+
*/
|
|
66
|
+
getSelectedKey() {
|
|
67
|
+
return this.selectType === 'multiple'
|
|
68
|
+
? this.selectedSourceKey[0]
|
|
69
|
+
: this.selectedSourceKey;
|
|
70
|
+
}
|
|
71
|
+
/*
|
|
72
|
+
* The below method is e2e-test covered in
|
|
73
|
+
* @see{module:vega-dropdown-with-matchContainerHeight-e2e}
|
|
74
|
+
* @see{module:vega-dropdown-without-matchContainerHeight-e2e}
|
|
75
|
+
*/
|
|
76
|
+
/* istanbul ignore next */
|
|
77
|
+
/**
|
|
78
|
+
* we only calculate surplus space of bottom, we should calculate maxHeight more accurately here.
|
|
79
|
+
* such as minus the gap of dropdown, the dropdown padding top and bottom, the gap of bottom.
|
|
80
|
+
* if with searchable, we should minus the height of searchable.
|
|
81
|
+
* if the dropdown in the top of host, we should only minus top of distance from vega-dropdown to vega-dropdown-container.
|
|
82
|
+
*/
|
|
83
|
+
adjustListContainerMaxHeight() {
|
|
84
|
+
const dropdownRef = this.renderer.getDropdownContentBoxRef();
|
|
85
|
+
const dropdownMaxHeight = extractNumberFromString(dropdownRef.style.maxHeight);
|
|
86
|
+
const excludeTop = this.searchable ? 59 : 8;
|
|
87
|
+
const paddingSpace = dropdownRef.classList.contains('vega-placement-top') ? 0 : 8 + 8;
|
|
88
|
+
const height = dropdownMaxHeight - excludeTop - 8 - paddingSpace;
|
|
89
|
+
dropdownRef.style.maxHeight = 'unset';
|
|
90
|
+
if (height <= 40) {
|
|
91
|
+
this.setItemsContainerMaxHeight(40);
|
|
92
|
+
LogUtility.error("There have no space on the bottom to display dropdown, if you want to adjust position, you should make 'match-container-height' as false.");
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
this.setItemsContainerMaxHeight(height);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* The function `setItemsContainerMaxHeight` adjusts the maximum height of the items container based on
|
|
100
|
+
* the render mode.
|
|
101
|
+
*
|
|
102
|
+
* @param {number} maxHeight - The `maxHeight` parameter is a number that represents the maximum height
|
|
103
|
+
* in pixels that the items container should have.
|
|
104
|
+
*/
|
|
105
|
+
setItemsContainerMaxHeight(maxHeight) {
|
|
106
|
+
if (this.renderModeController.isSourceRenderMode()) {
|
|
107
|
+
this.listRenderer.getVirtualScrollRef().viewportMaxHeight = maxHeight;
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
const templateContainerRef = this.listRenderer.getTemplateContainerRef();
|
|
111
|
+
templateContainerRef.style.overflowY = 'auto';
|
|
112
|
+
templateContainerRef.style.maxHeight = `${maxHeight}px`;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
__decorate([
|
|
117
|
+
MapToComponentField()
|
|
118
|
+
], VegaDropdownScrollableController.prototype, "isDropdownShow", void 0);
|
|
119
|
+
__decorate([
|
|
120
|
+
MapToComponentField()
|
|
121
|
+
], VegaDropdownScrollableController.prototype, "renderModeController", void 0);
|
|
122
|
+
__decorate([
|
|
123
|
+
MapToComponentField()
|
|
124
|
+
], VegaDropdownScrollableController.prototype, "sourceForRender", void 0);
|
|
125
|
+
__decorate([
|
|
126
|
+
MapToComponentField()
|
|
127
|
+
], VegaDropdownScrollableController.prototype, "selectType", void 0);
|
|
128
|
+
__decorate([
|
|
129
|
+
MapToComponentField()
|
|
130
|
+
], VegaDropdownScrollableController.prototype, "selectedSourceKey", void 0);
|
|
131
|
+
__decorate([
|
|
132
|
+
MapToComponentField()
|
|
133
|
+
], VegaDropdownScrollableController.prototype, "searchable", void 0);
|
|
134
|
+
__decorate([
|
|
135
|
+
MapToComponentField()
|
|
136
|
+
], VegaDropdownScrollableController.prototype, "listRenderer", void 0);
|
|
137
|
+
__decorate([
|
|
138
|
+
MapToComponentField()
|
|
139
|
+
], VegaDropdownScrollableController.prototype, "renderer", void 0);
|
|
140
|
+
__decorate([
|
|
141
|
+
MapToComponentMethod('watchIsDropdownShow')
|
|
142
|
+
], VegaDropdownScrollableController.prototype, "watchIsDropdownShow", null);
|
package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js
CHANGED
|
@@ -6,14 +6,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { Fragment, h } from '@stencil/core';
|
|
8
8
|
import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
|
|
9
|
-
import { extractNumberFromString } from '../../../../utils/ui';
|
|
10
|
-
import { LogUtility } from '../../../../utils/log';
|
|
11
9
|
export class VegaDropdownListRenderer extends VegaSlimmer {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
(this.selectType === 'multiple' ? this.selectedSourceKey[0] : this.selectedSourceKey));
|
|
16
|
-
index >= 0 && (await this.virtualScrollRef.scrollToIndex(index));
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments);
|
|
12
|
+
this.defaultMaxHeightOfItemsContainer = 400;
|
|
17
13
|
}
|
|
18
14
|
/**
|
|
19
15
|
* The below method is e2e-test covered in
|
|
@@ -23,6 +19,9 @@ export class VegaDropdownListRenderer extends VegaSlimmer {
|
|
|
23
19
|
getVirtualScrollRef() {
|
|
24
20
|
return this.virtualScrollRef;
|
|
25
21
|
}
|
|
22
|
+
getTemplateContainerRef() {
|
|
23
|
+
return this.templateContainerRef;
|
|
24
|
+
}
|
|
26
25
|
renderBySource() {
|
|
27
26
|
return (h(Fragment, null,
|
|
28
27
|
this.renderLoading(),
|
|
@@ -57,64 +56,28 @@ export class VegaDropdownListRenderer extends VegaSlimmer {
|
|
|
57
56
|
return item['children']
|
|
58
57
|
? this.groupLevelRenderer.render(item, index, fixHeight)
|
|
59
58
|
: this.itemLevelRenderer.render(item, fixHeight);
|
|
60
|
-
}, viewportMaxHeight: this.
|
|
59
|
+
}, viewportMaxHeight: this.defaultMaxHeightOfItemsContainer, ref: (e) => (this.virtualScrollRef = e), isLoading: this.isLazyLoading }))));
|
|
61
60
|
}
|
|
62
61
|
renderDropdownListBySlot() {
|
|
63
62
|
return (h("ul", { role: "menu", "aria-label": "dropdown-ul", class: {
|
|
64
63
|
[`vega-dropdown-item-display-${this.itemDisplayRule}`]: true,
|
|
65
64
|
['v-hidden']: this.isLoading,
|
|
66
|
-
},
|
|
67
|
-
maxHeight: `${this.maxHeightOfItemsContainer}px`,
|
|
68
|
-
} },
|
|
65
|
+
}, ref: (ref) => (this.templateContainerRef = ref) },
|
|
69
66
|
h("slot", { name: "items" })));
|
|
70
67
|
}
|
|
71
|
-
/**
|
|
72
|
-
* we only calculate surplus space of bottom, we should calculate maxHeight more accurately here.
|
|
73
|
-
* such as minus the gap of dropdown, the dropdown padding top and bottom, the gap of bottom.
|
|
74
|
-
* if with searchable, we should minus the height of searchable.
|
|
75
|
-
* if the dropdown in the top of host, we should only minus top of distance from vega-dropdown to vega-dropdown-container.
|
|
76
|
-
* The below method is e2e-test covered in
|
|
77
|
-
* @see{module:vega-dropdown-with-matchContainerHeight-e2e}
|
|
78
|
-
* @see{module:vega-dropdown-without-matchContainerHeight-e2e}
|
|
79
|
-
*/
|
|
80
|
-
/* istanbul ignore next */
|
|
81
|
-
adjustListContainerMaxHeight() {
|
|
82
|
-
const dropdownRef = this.renderer.getDropdownContentBoxRef();
|
|
83
|
-
const dropdownMaxHeight = extractNumberFromString(dropdownRef.style.maxHeight);
|
|
84
|
-
const excludeTop = this.searchable ? 59 : 8;
|
|
85
|
-
const paddingSpace = dropdownRef.classList.contains('vega-placement-top') ? 0 : 8 + 8;
|
|
86
|
-
const height = dropdownMaxHeight - excludeTop - 8 - paddingSpace;
|
|
87
|
-
dropdownRef.style.maxHeight = 'unset';
|
|
88
|
-
if (height <= 40) {
|
|
89
|
-
this.maxHeightOfItemsContainer = 40;
|
|
90
|
-
LogUtility.error("There have no space on the bottom to display dropdown, if you want to adjust position, you should make 'match-container-height' as false.");
|
|
91
|
-
}
|
|
92
|
-
else {
|
|
93
|
-
this.maxHeightOfItemsContainer = height;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
68
|
}
|
|
97
69
|
__decorate([
|
|
98
70
|
MapToComponentField()
|
|
99
|
-
], VegaDropdownListRenderer.prototype, "
|
|
100
|
-
__decorate([
|
|
101
|
-
MapToComponentField()
|
|
102
|
-
], VegaDropdownListRenderer.prototype, "searchString", void 0);
|
|
103
|
-
__decorate([
|
|
104
|
-
MapToComponentField()
|
|
105
|
-
], VegaDropdownListRenderer.prototype, "selectType", void 0);
|
|
71
|
+
], VegaDropdownListRenderer.prototype, "host", void 0);
|
|
106
72
|
__decorate([
|
|
107
73
|
MapToComponentField()
|
|
108
|
-
], VegaDropdownListRenderer.prototype, "
|
|
74
|
+
], VegaDropdownListRenderer.prototype, "isLoading", void 0);
|
|
109
75
|
__decorate([
|
|
110
76
|
MapToComponentField()
|
|
111
|
-
], VegaDropdownListRenderer.prototype, "
|
|
77
|
+
], VegaDropdownListRenderer.prototype, "searchString", void 0);
|
|
112
78
|
__decorate([
|
|
113
79
|
MapToComponentField()
|
|
114
80
|
], VegaDropdownListRenderer.prototype, "itemDisplayRule", void 0);
|
|
115
|
-
__decorate([
|
|
116
|
-
MapToComponentField({ writable: true })
|
|
117
|
-
], VegaDropdownListRenderer.prototype, "maxHeightOfItemsContainer", void 0);
|
|
118
81
|
__decorate([
|
|
119
82
|
MapToComponentField()
|
|
120
83
|
], VegaDropdownListRenderer.prototype, "sourceForRender", void 0);
|
|
@@ -126,7 +89,10 @@ __decorate([
|
|
|
126
89
|
], VegaDropdownListRenderer.prototype, "groupLevelRenderer", void 0);
|
|
127
90
|
__decorate([
|
|
128
91
|
MapToComponentField()
|
|
129
|
-
], VegaDropdownListRenderer.prototype, "
|
|
92
|
+
], VegaDropdownListRenderer.prototype, "isLazyLoading", void 0);
|
|
130
93
|
__decorate([
|
|
131
94
|
MapToComponentField()
|
|
132
|
-
], VegaDropdownListRenderer.prototype, "
|
|
95
|
+
], VegaDropdownListRenderer.prototype, "isDropdownShow", void 0);
|
|
96
|
+
__decorate([
|
|
97
|
+
MapToComponentField()
|
|
98
|
+
], VegaDropdownListRenderer.prototype, "renderModeController", void 0);
|
package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-renderer.js
CHANGED
|
@@ -47,11 +47,17 @@ export class VegaDropdownRenderer extends VegaSlimmer {
|
|
|
47
47
|
this.renderContentSlot(),
|
|
48
48
|
this.renderDropdown()));
|
|
49
49
|
}
|
|
50
|
+
/**
|
|
51
|
+
* TODO: We will use no-named slot for both template and source render mode. And will deprecate slot dropdown-content
|
|
52
|
+
*/
|
|
50
53
|
renderContentSlot() {
|
|
51
|
-
return this.renderModeController.isSourceRenderMode() ? h("slot", null) : h(
|
|
54
|
+
return this.renderModeController.isSourceRenderMode() ? (h("slot", null)) : (h(Fragment, null,
|
|
55
|
+
h("slot", { name: "dropdown-content" }),
|
|
56
|
+
h("slot", null)));
|
|
52
57
|
}
|
|
53
58
|
renderDropdown() {
|
|
54
|
-
|
|
59
|
+
const eventPreventFlag = this.host && this.host.dataset.vegaNoEventPrevent === 'true' ? 'true' : 'false';
|
|
60
|
+
return (h("vega-dropdown-content-box", { ref: (e) => (this.dropdownContentBoxRef = e), style: { maxHeight: `${this.maxHeight}px` }, "data-parent-ref": this.host, "data-vega-no-event-prevent": eventPreventFlag },
|
|
55
61
|
h("div", { ref: (e) => (this.dropdownRef = e), class: {
|
|
56
62
|
'vega-dropdown': true,
|
|
57
63
|
'vega-dropdown-with-searchable': this.searchable,
|