@globalpayments/vega 2.64.0 → 2.66.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-a190cd2d.js → app-globals-ab28f910.js} +9 -9
- package/dist/cjs/{brand-switch-state-controller-slimmer-5efa1b24.js → brand-switch-state-controller-slimmer-3d41b2a4.js} +1 -1
- package/dist/cjs/{child-nodes-event-prevent-slimmer-4e96270e.js → child-nodes-event-prevent-slimmer-eb803b14.js} +1 -1
- package/dist/cjs/{child-nodes-notify-observer-slimmer-34ac3bfc.js → child-nodes-notify-observer-slimmer-257fedb3.js} +1 -1
- package/dist/cjs/{code-block-417a131b.js → code-block-ab97a0a0.js} +15 -18
- package/dist/cjs/{component-value-history-controller-slimmer.abstract-0c4d1453.js → component-value-history-controller-slimmer.abstract-5630341e.js} +6 -6
- package/dist/cjs/{dark-mode-state-controller-slimmer-add5d8a8.js → dark-mode-state-controller-slimmer-8a87ec08.js} +1 -1
- package/dist/cjs/{dark-mode-style-controller-41c94aac.js → dark-mode-style-controller-27809ff8.js} +1 -1
- package/dist/cjs/{design-token-ae0de304.js → design-token-847739f1.js} +1 -1
- package/dist/cjs/{dom-node-subject-observer-factory-58e3c010.js → dom-node-subject-observer-factory-f040608b.js} +6 -2
- package/dist/cjs/{dto-renderer-manager-6d338e46.js → dto-renderer-manager-d0f0f2c0.js} +20 -35
- package/dist/cjs/{element-appender-slimmer-5a23e722.js → element-appender-slimmer-aead9bbb.js} +6 -6
- package/dist/cjs/{event-emit-slimmer-428d8802.js → event-emit-slimmer-d21a0935.js} +2 -2
- package/dist/cjs/{form-field-controller-slimmer-cceb5c79.js → form-field-controller-slimmer-2a091912.js} +16 -8
- package/dist/cjs/{image-annotation-action-9785bc59.js → image-annotation-action-d84de785.js} +4 -4
- package/dist/cjs/{index-9a92abce.js → index-4b896e76.js} +2 -2
- package/dist/cjs/index-58ea899e.js +4 -0
- package/dist/cjs/index.cjs.js +16 -16
- package/dist/cjs/{inject-keyboard-manager-ad865c95.js → inject-keyboard-manager-13c66257.js} +1 -1
- package/dist/cjs/{internal-vega-event-manager-28b957c8.js → internal-vega-event-manager-4d1ce667.js} +3 -2
- package/dist/cjs/{keyboard-manager-7f4e1f43.js → keyboard-manager-af0d08a6.js} +8 -2
- package/dist/cjs/{keyboard-manager-slimmer-138a90e5.js → keyboard-manager-slimmer-62f072cd.js} +1 -1
- package/dist/cjs/{language-extension-abbc251a.js → language-extension-d257e65d.js} +2 -2
- package/dist/cjs/loader.cjs.js +14 -14
- package/dist/cjs/{public-rules-ffc5db13.js → public-rules-d2b9b8f0.js} +8 -8
- package/dist/cjs/{range-37161c00.js → range-d610028e.js} +2 -2
- package/dist/cjs/{responsive-format-facade-b20dad44.js → responsive-format-facade-71e7b74c.js} +5 -5
- package/dist/cjs/{rich-text-editor-required-rule-604ea2b9.js → rich-text-editor-required-rule-a8fe5f50.js} +1 -1
- package/dist/cjs/{static-subject-title-7e7d791a.js → static-subject-title-5829a298.js} +0 -6
- package/dist/cjs/{string-input-formatter-slimmer-8445abc9.js → string-input-formatter-slimmer-8236b5e1.js} +3 -3
- package/dist/cjs/{style-formatter-56751462.js → style-formatter-6facb42b.js} +1 -1
- package/dist/cjs/{sub-state-notify-slimmer-52fa23af.js → sub-state-notify-slimmer-78682046.js} +2 -2
- package/dist/cjs/{sub-state-observer-slimmer-90c26113.js → sub-state-observer-slimmer-73aecfff.js} +3 -3
- package/dist/cjs/{token-extension-46821c19.js → token-extension-aa8d5cce.js} +9 -8
- package/dist/cjs/{translation-ecfc704a.js → translation-f5adcb9f.js} +1 -1
- package/dist/cjs/{translation-slimmer-40a3536d.js → translation-slimmer-4b6239d1.js} +1 -1
- package/dist/cjs/{ui-4ce1fa08.js → ui-9e181079.js} +16 -3
- package/dist/cjs/vega-accordion.cjs.entry.js +13 -13
- package/dist/cjs/vega-app-footer.cjs.entry.js +3 -3
- package/dist/cjs/vega-app-header-button.cjs.entry.js +14 -14
- package/dist/cjs/vega-backdrop.cjs.entry.js +1 -1
- package/dist/cjs/vega-banner.cjs.entry.js +4 -4
- package/dist/cjs/vega-box.cjs.entry.js +13 -13
- package/dist/cjs/vega-brand-logo.cjs.entry.js +3 -3
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +30 -15
- package/dist/cjs/vega-button-circle.cjs.entry.js +19 -16
- package/dist/cjs/vega-button-group_2.cjs.entry.js +8 -8
- package/dist/cjs/vega-button-link.cjs.entry.js +5 -5
- package/dist/cjs/vega-button.cjs.entry.js +19 -14
- package/dist/cjs/vega-calendar_4.cjs.entry.js +506 -212
- package/dist/cjs/vega-card.cjs.entry.js +12 -12
- package/dist/cjs/vega-carousel.cjs.entry.js +12 -12
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +11 -11
- package/dist/cjs/vega-chip.cjs.entry.js +14 -14
- package/dist/cjs/vega-code-block.cjs.entry.js +15 -15
- package/dist/cjs/vega-color-picker.cjs.entry.js +9 -9
- package/dist/cjs/vega-combo-box.cjs.entry.js +12 -12
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +62 -25
- package/dist/cjs/vega-dialog_2.cjs.entry.js +15 -15
- package/dist/cjs/vega-divider.cjs.entry.js +12 -12
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +23 -22
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/vega-field-error.cjs.entry.js +1 -1
- package/dist/cjs/vega-field-label.cjs.entry.js +4 -4
- package/dist/cjs/vega-file-uploader.cjs.entry.js +10 -10
- package/dist/cjs/vega-flag-icon.cjs.entry.js +12 -12
- package/dist/cjs/vega-flex.cjs.entry.js +13 -13
- package/dist/cjs/vega-font.cjs.entry.js +12 -12
- package/dist/cjs/vega-form.cjs.entry.js +649 -352
- package/dist/cjs/vega-grid.cjs.entry.js +12 -12
- package/dist/cjs/vega-icon.cjs.entry.js +12 -12
- package/dist/cjs/vega-image-uploader.cjs.entry.js +17 -17
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +10 -10
- package/dist/cjs/vega-input-numeric.cjs.entry.js +13 -13
- package/dist/cjs/vega-input-passcode.cjs.entry.js +724 -0
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +14 -14
- package/dist/cjs/vega-input-range.cjs.entry.js +11 -11
- package/dist/cjs/vega-input-select.cjs.entry.js +16 -16
- package/dist/cjs/vega-input.cjs.entry.js +27 -12
- package/dist/cjs/{vega-internal-event-id-dfd8b802.js → vega-internal-event-id-6d4a2c53.js} +6 -0
- package/dist/cjs/vega-item-toggle.cjs.entry.js +4 -4
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +44 -20
- package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +11 -11
- package/dist/cjs/vega-page-notification_2.cjs.entry.js +2 -2
- package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +5 -5
- package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +6 -6
- package/dist/cjs/vega-pagination.cjs.entry.js +14 -14
- package/dist/cjs/vega-popover_2.cjs.entry.js +16 -16
- package/dist/cjs/vega-progress-tracker.cjs.entry.js +4 -4
- package/dist/cjs/vega-radio_2.cjs.entry.js +13 -13
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +10 -10
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +23 -23
- package/dist/cjs/vega-segment-control.cjs.entry.js +4 -4
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +16 -16
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +12 -12
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +14 -14
- package/dist/cjs/vega-signature-capture.cjs.entry.js +16 -16
- package/dist/cjs/vega-stepper.cjs.entry.js +10 -10
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-table_8.cjs.entry.js +16 -16
- package/dist/cjs/vega-text.cjs.entry.js +1 -1
- package/dist/cjs/vega-textarea.cjs.entry.js +10 -10
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +19 -19
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +9 -9
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +14 -14
- package/dist/cjs/vega.cjs.js +14 -14
- package/dist/collection/collection-manifest.json +6 -0
- package/dist/collection/components/vega-breadcrumb/slimmers/renderers/vega-breadcrumb-item-renderer.js +1 -1
- package/dist/collection/components/vega-breadcrumb/slimmers/renderers/vega-breadcrumb-renderer.js +12 -8
- package/dist/collection/components/vega-breadcrumb/vega-breadcrumb.css +6 -6
- package/dist/collection/components/vega-breadcrumb/vega-breadcrumb.js +32 -0
- package/dist/collection/components/vega-button/vega-button.js +9 -2
- package/dist/collection/components/vega-button-circle/vega-button-circle.js +8 -3
- package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-current-period-controller.js +7 -4
- package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-controller.js +21 -1
- package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-preivew-popover-controller.js +18 -1
- package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-post-operation-date-controller.js +14 -1
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-repeat-pattern-factory.js +8 -9
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-weekly-repeat-pattern.js +3 -1
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/test/calendar-event-repeat-pattern-factory.test.js +34 -0
- package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-item-renderer.js +1 -1
- package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-marker-renderer.js +31 -5
- package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.js +4 -1
- package/dist/collection/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-event-renderer.js +5 -3
- package/dist/collection/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.js +4 -1
- package/dist/collection/components/vega-calendar/vega-calendar.js +47 -1
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +37 -3
- package/dist/collection/components/vega-date-picker/vega-date-picker.js +6 -0
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +1 -1
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.css +4 -8
- package/dist/collection/components/vega-dropdown/vega-dropdown.js +4 -0
- package/dist/collection/components/vega-form/slimmers/controllers/vega-form-field-controller.js +351 -0
- package/dist/collection/components/vega-form/slimmers/controllers/vega-form-reset-controller.js +99 -0
- package/dist/collection/components/vega-form/slimmers/controllers/vega-form-submit-controller.js +179 -0
- package/dist/collection/components/vega-form/vega-form.js +20 -366
- package/dist/collection/components/vega-input/vega-input.js +72 -5
- package/dist/collection/components/vega-input-passcode/slimmers/controllers/vega-input-passcode-keyboard-controller.js +101 -0
- package/dist/collection/components/vega-input-passcode/slimmers/controllers/vega-input-passcode-value-controller.js +115 -0
- package/dist/collection/components/vega-input-passcode/slimmers/renderers/vega-input-passcode-renderer.js +166 -0
- package/dist/collection/components/vega-input-passcode/vega-input-passcode.css +90 -0
- package/dist/collection/components/vega-input-passcode/vega-input-passcode.js +513 -0
- package/dist/collection/components/vega-modal/vega-modal.css +4 -1
- package/dist/collection/components/vega-nav/slimmers/vega-nav-observer-slimmer.js +8 -3
- package/dist/collection/components/vega-nav/vega-left-nav-link/slimmers/controllers/vega-left-nav-link-controller.js +21 -4
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/link-group-annotation.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/code-block.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/html-block.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/image-block.js +3 -7
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-block.js +3 -7
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +4 -12
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/text-block.js +3 -7
- package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/code-block-node.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/image-node.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/code-block.test.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/html-block.test.js +4 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/nodes/text-node.test.js +1 -1
- package/dist/collection/constants/ui.js +2 -0
- package/dist/collection/helpers/calendar/calendar-date.js +10 -8
- package/dist/collection/helpers/calendar/calendar-event.js +152 -16
- package/dist/collection/helpers/calendar/calendar-period/calendar-period.abstract.js +13 -4
- package/dist/collection/helpers/calendar/calendar-period/day-period.js +4 -4
- package/dist/collection/helpers/calendar/calendar-period/month-period.js +7 -6
- package/dist/collection/helpers/calendar/calendar-period/week-period.js +3 -3
- package/dist/collection/helpers/calendar/calendar-view-generator/week-view-generator.js +1 -1
- package/dist/collection/helpers/calendar/test/calendar-date.test.js +24 -0
- package/dist/collection/helpers/calendar/test/calendar-event.test.js +71 -0
- package/dist/collection/helpers/calendar/test/calendar-period/day-period.test.js +28 -0
- package/dist/collection/helpers/calendar/test/calendar-period/month-period.test.js +35 -0
- package/dist/collection/helpers/calendar/test/calendar-period/week-period.test.js +43 -0
- package/dist/collection/helpers/calendar/test/utils.test.js +29 -1
- package/dist/collection/helpers/calendar/utils.js +46 -0
- package/dist/collection/helpers/change-manager/subject/static-subject/static-subject-title.js +0 -2
- package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +3 -2
- package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +3 -1
- package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +3 -0
- package/dist/collection/helpers/event-manager/test/component-event-id-map.test.js +2 -1
- package/dist/collection/helpers/event-manager/test/vega-event-manager.test.js +2 -1
- package/dist/collection/helpers/immutable/immutable-array.js +133 -0
- package/dist/collection/helpers/immutable/test/immutable-array.test.js +78 -0
- package/dist/collection/helpers/keyboard/keyboard-manager.js +7 -1
- package/dist/collection/helpers/keyboard/test/keyboard-manager.test.js +4 -0
- package/dist/collection/helpers/validator/form-field-controller.js +13 -3
- package/dist/collection/utils/test/ui.test.js +55 -0
- package/dist/collection/utils/ui.js +16 -3
- package/dist/collection/value-model-adapters/angular-ng-model-accessor-adapter.js +1 -0
- package/dist/collection/value-model-adapters/vue-component-v-model-adaptor.js +1 -0
- package/dist/esm/{app-globals-b074e012.js → app-globals-37a60cc1.js} +9 -9
- package/dist/esm/{brand-switch-state-controller-slimmer-05c85e6d.js → brand-switch-state-controller-slimmer-60249013.js} +1 -1
- package/dist/esm/{child-nodes-event-prevent-slimmer-7fe3dc57.js → child-nodes-event-prevent-slimmer-735cb880.js} +1 -1
- package/dist/esm/{child-nodes-notify-observer-slimmer-78f77c2c.js → child-nodes-notify-observer-slimmer-b676cd2b.js} +1 -1
- package/dist/esm/{code-block-a6c78bbb.js → code-block-11b2bc1c.js} +15 -18
- package/dist/esm/{component-value-history-controller-slimmer.abstract-d37d2df7.js → component-value-history-controller-slimmer.abstract-16c5cb96.js} +6 -6
- package/dist/esm/{dark-mode-state-controller-slimmer-f1c2c299.js → dark-mode-state-controller-slimmer-f2b4f8ed.js} +1 -1
- package/dist/esm/{dark-mode-style-controller-5cf1c482.js → dark-mode-style-controller-b7e85b6a.js} +1 -1
- package/dist/esm/{design-token-6f9e70c4.js → design-token-297dc528.js} +1 -1
- package/dist/esm/{dom-node-subject-observer-factory-c7bc3035.js → dom-node-subject-observer-factory-dca87b70.js} +5 -3
- package/dist/esm/{dto-renderer-manager-5b036e47.js → dto-renderer-manager-a1a3b6d2.js} +20 -35
- package/dist/esm/{element-appender-slimmer-1d6c2960.js → element-appender-slimmer-f7233708.js} +6 -6
- package/dist/esm/{event-emit-slimmer-3922d816.js → event-emit-slimmer-28fd360c.js} +2 -2
- package/dist/esm/{form-field-controller-slimmer-c29b345f.js → form-field-controller-slimmer-b23d9ff3.js} +16 -8
- package/dist/esm/{image-annotation-action-f6308cf4.js → image-annotation-action-fc46c920.js} +4 -4
- package/dist/esm/index-090d31ca.js +4 -0
- package/dist/esm/{index-4f26bbd0.js → index-c943d263.js} +2 -2
- package/dist/esm/index.js +16 -16
- package/dist/esm/{inject-keyboard-manager-109817bf.js → inject-keyboard-manager-ffd351b9.js} +1 -1
- package/dist/esm/{internal-vega-event-manager-cb06e987.js → internal-vega-event-manager-a5a5938d.js} +3 -2
- package/dist/esm/{keyboard-manager-ab521d22.js → keyboard-manager-5d8f3582.js} +8 -2
- package/dist/esm/{keyboard-manager-slimmer-cae3a002.js → keyboard-manager-slimmer-f39214e4.js} +1 -1
- package/dist/esm/{language-extension-962c427a.js → language-extension-314a2b18.js} +2 -2
- package/dist/esm/loader.js +14 -14
- package/dist/esm/{public-rules-6fa7533f.js → public-rules-c6a6946d.js} +8 -8
- package/dist/esm/{range-4d7aa0fd.js → range-b78254de.js} +2 -2
- package/dist/esm/{responsive-format-facade-b594fc72.js → responsive-format-facade-a41e1be7.js} +5 -5
- package/dist/esm/{rich-text-editor-required-rule-a72374cd.js → rich-text-editor-required-rule-d50c24da.js} +1 -1
- package/dist/esm/{static-subject-title-ca83d6b6.js → static-subject-title-52f93124.js} +1 -4
- package/dist/esm/{string-input-formatter-slimmer-75256a17.js → string-input-formatter-slimmer-3acd240c.js} +3 -3
- package/dist/esm/{style-formatter-56074ede.js → style-formatter-f7effaac.js} +1 -1
- package/dist/esm/{sub-state-notify-slimmer-85c658b7.js → sub-state-notify-slimmer-56380f02.js} +2 -2
- package/dist/esm/{sub-state-observer-slimmer-e58a2485.js → sub-state-observer-slimmer-3504e2f2.js} +3 -3
- package/dist/esm/{token-extension-3c198013.js → token-extension-b690953f.js} +9 -8
- package/dist/esm/{translation-3d35961b.js → translation-f10b1e19.js} +1 -1
- package/dist/esm/{translation-slimmer-d5b0d292.js → translation-slimmer-984c9ce6.js} +1 -1
- package/dist/esm/{ui-c20be16d.js → ui-bb99c0c2.js} +16 -3
- package/dist/esm/vega-accordion.entry.js +13 -13
- package/dist/esm/vega-app-footer.entry.js +3 -3
- package/dist/esm/vega-app-header-button.entry.js +14 -14
- package/dist/esm/vega-backdrop.entry.js +1 -1
- package/dist/esm/vega-banner.entry.js +4 -4
- package/dist/esm/vega-box.entry.js +13 -13
- package/dist/esm/vega-brand-logo.entry.js +3 -3
- package/dist/esm/vega-breadcrumb.entry.js +30 -15
- package/dist/esm/vega-button-circle.entry.js +19 -16
- package/dist/esm/vega-button-group_2.entry.js +8 -8
- package/dist/esm/vega-button-link.entry.js +5 -5
- package/dist/esm/vega-button.entry.js +19 -14
- package/dist/esm/vega-calendar_4.entry.js +507 -213
- package/dist/esm/vega-card.entry.js +12 -12
- package/dist/esm/vega-carousel.entry.js +12 -12
- package/dist/esm/vega-checkbox_2.entry.js +11 -11
- package/dist/esm/vega-chip.entry.js +14 -14
- package/dist/esm/vega-code-block.entry.js +15 -15
- package/dist/esm/vega-color-picker.entry.js +9 -9
- package/dist/esm/vega-combo-box.entry.js +12 -12
- package/dist/esm/vega-date-picker_2.entry.js +62 -25
- package/dist/esm/vega-dialog_2.entry.js +15 -15
- package/dist/esm/vega-divider.entry.js +12 -12
- package/dist/esm/vega-dropdown_5.entry.js +23 -22
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/vega-field-error.entry.js +1 -1
- package/dist/esm/vega-field-label.entry.js +4 -4
- package/dist/esm/vega-file-uploader.entry.js +10 -10
- package/dist/esm/vega-flag-icon.entry.js +12 -12
- package/dist/esm/vega-flex.entry.js +13 -13
- package/dist/esm/vega-font.entry.js +12 -12
- package/dist/esm/vega-form.entry.js +649 -352
- package/dist/esm/vega-grid.entry.js +12 -12
- package/dist/esm/vega-icon.entry.js +12 -12
- package/dist/esm/vega-image-uploader.entry.js +17 -17
- package/dist/esm/vega-input-credit-card.entry.js +10 -10
- package/dist/esm/vega-input-numeric.entry.js +13 -13
- package/dist/esm/vega-input-passcode.entry.js +720 -0
- package/dist/esm/vega-input-phone-number.entry.js +14 -14
- package/dist/esm/vega-input-range.entry.js +11 -11
- package/dist/esm/vega-input-select.entry.js +16 -16
- package/dist/esm/vega-input.entry.js +27 -12
- package/dist/esm/{vega-internal-event-id-bee7946b.js → vega-internal-event-id-5c3e5f7f.js} +4 -1
- package/dist/esm/vega-item-toggle.entry.js +4 -4
- package/dist/esm/vega-left-nav_5.entry.js +44 -20
- package/dist/esm/vega-loader-wrapper_2.entry.js +11 -11
- package/dist/esm/vega-page-notification_2.entry.js +2 -2
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +5 -5
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +6 -6
- package/dist/esm/vega-pagination.entry.js +14 -14
- package/dist/esm/vega-popover_2.entry.js +16 -16
- package/dist/esm/vega-progress-tracker.entry.js +4 -4
- package/dist/esm/vega-radio_2.entry.js +13 -13
- package/dist/esm/vega-rich-text-content.entry.js +10 -10
- package/dist/esm/vega-rich-text-editor_4.entry.js +23 -23
- package/dist/esm/vega-segment-control.entry.js +4 -4
- package/dist/esm/vega-selection-chip_2.entry.js +16 -16
- package/dist/esm/vega-selection-tile_2.entry.js +12 -12
- package/dist/esm/vega-sidenav_3.entry.js +14 -14
- package/dist/esm/vega-signature-capture.entry.js +16 -16
- package/dist/esm/vega-stepper.entry.js +10 -10
- package/dist/esm/vega-tab-group_2.entry.js +6 -6
- package/dist/esm/vega-table_8.entry.js +16 -16
- package/dist/esm/vega-text.entry.js +1 -1
- package/dist/esm/vega-textarea.entry.js +10 -10
- package/dist/esm/vega-time-picker_2.entry.js +19 -19
- package/dist/esm/vega-toggle-switch.entry.js +9 -9
- package/dist/esm/vega-tooltip_2.entry.js +14 -14
- package/dist/esm/vega.js +14 -14
- package/dist/sri/vega-sri-loader.js +147 -0
- package/dist/sri/vega-sri-manifest.json +702 -0
- package/dist/types/components/vega-breadcrumb/slimmers/renderers/vega-breadcrumb-renderer.d.ts +2 -1
- package/dist/types/components/vega-breadcrumb/types.d.ts +1 -1
- package/dist/types/components/vega-breadcrumb/vega-breadcrumb.d.ts +11 -0
- package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-current-period-controller.d.ts +1 -0
- package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-controller.d.ts +6 -0
- package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-preivew-popover-controller.d.ts +5 -0
- package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-post-operation-date-controller.d.ts +6 -0
- package/dist/types/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-repeat-pattern-factory.d.ts +3 -1
- package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-marker-renderer.d.ts +1 -0
- package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.d.ts +1 -0
- package/dist/types/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.d.ts +1 -0
- package/dist/types/components/vega-calendar/types.d.ts +5 -0
- package/dist/types/components/vega-calendar/vega-calendar.d.ts +17 -0
- package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +13 -0
- package/dist/types/components/vega-date-picker/vega-date-picker.d.ts +1 -0
- package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +1 -0
- package/dist/types/components/vega-form/slimmers/controllers/vega-form-field-controller.d.ts +158 -0
- package/dist/types/components/vega-form/slimmers/controllers/vega-form-reset-controller.d.ts +43 -0
- package/dist/types/components/vega-form/slimmers/controllers/vega-form-submit-controller.d.ts +72 -0
- package/dist/types/components/vega-form/types.d.ts +13 -0
- package/dist/types/components/vega-form/vega-form.d.ts +6 -110
- package/dist/types/components/vega-input/types.d.ts +65 -0
- package/dist/types/components/vega-input/vega-input.d.ts +17 -2
- package/dist/types/components/vega-input-passcode/slimmers/controllers/vega-input-passcode-keyboard-controller.d.ts +25 -0
- package/dist/types/components/vega-input-passcode/slimmers/controllers/vega-input-passcode-value-controller.d.ts +47 -0
- package/dist/types/components/vega-input-passcode/slimmers/renderers/vega-input-passcode-renderer.d.ts +29 -0
- package/dist/types/components/vega-input-passcode/vega-input-passcode.d.ts +135 -0
- package/dist/types/components/vega-nav/slimmers/vega-nav-observer-slimmer.d.ts +3 -0
- package/dist/types/components/vega-nav/vega-left-nav-link/slimmers/controllers/vega-left-nav-link-controller.d.ts +8 -0
- package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +2 -1
- package/dist/types/components/vega-rich-text-editor/dto/blocks/code-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/dto/blocks/html-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/dto/blocks/image-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/dto/blocks/list-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/dto/blocks/list-item-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/dto/blocks/text-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/dto/nodes/code-block-node.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/dto/nodes/image-node.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +2 -1
- package/dist/types/components/vega-rich-text-editor/dto/nodes/text-node.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-node.d.ts +2 -1
- package/dist/types/components.d.ts +185 -4
- package/dist/types/constants/ui.d.ts +1 -1
- package/dist/types/helpers/calendar/calendar-date.d.ts +5 -3
- package/dist/types/helpers/calendar/calendar-event.d.ts +50 -1
- package/dist/types/helpers/calendar/calendar-period/calendar-period.abstract.d.ts +8 -1
- package/dist/types/helpers/calendar/calendar-period/day-period.d.ts +1 -1
- package/dist/types/helpers/calendar/calendar-period/month-period.d.ts +4 -3
- package/dist/types/helpers/calendar/calendar-period/week-period.d.ts +1 -1
- package/dist/types/helpers/calendar/utils.d.ts +22 -0
- package/dist/types/helpers/change-manager/subject/static-subject/static-subject-title.d.ts +0 -2
- package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +2 -0
- package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +3 -0
- package/dist/types/helpers/immutable/immutable-array.d.ts +86 -0
- package/dist/types/helpers/immutable/immutable-map.d.ts +1 -1
- package/dist/types/helpers/immutable/immutable.d.ts +1 -0
- package/dist/types/helpers/immutable/test/immutable-array.test.d.ts +1 -0
- package/dist/types/types/components.type.d.ts +7 -2
- package/dist/types/utils/ui.d.ts +5 -1
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/{p-1d3a7be6.entry.js → p-00071542.entry.js} +1 -1
- package/dist/vega/p-0113a83c.entry.js +1 -0
- package/dist/vega/{p-61966868.entry.js → p-015cdbe7.entry.js} +1 -1
- package/dist/vega/{p-f37558c1.js → p-019f7f95.js} +1 -1
- package/dist/vega/{p-3a455ac3.entry.js → p-03a1e82e.entry.js} +1 -1
- package/dist/vega/p-0d1eca78.entry.js +1 -0
- package/dist/vega/{p-e41931d4.entry.js → p-0ed53cce.entry.js} +1 -1
- package/dist/vega/p-129c0ce1.js +1 -0
- package/dist/vega/p-16370cfb.js +1 -0
- package/dist/vega/p-19522949.js +1 -0
- package/dist/vega/{p-21a480b0.entry.js → p-1a3cb65e.entry.js} +1 -1
- package/dist/vega/{p-fd2d02ea.entry.js → p-2553031f.entry.js} +1 -1
- package/dist/vega/{p-179693f1.entry.js → p-276b1163.entry.js} +2 -2
- package/dist/vega/p-2d430dc4.entry.js +1 -0
- package/dist/vega/p-308aa2e3.js +1 -0
- package/dist/vega/{p-55c26035.entry.js → p-3288a65b.entry.js} +1 -1
- package/dist/vega/p-34800282.entry.js +1 -0
- package/dist/vega/p-358e9800.entry.js +1 -0
- package/dist/vega/{p-743c5baf.js → p-3925c16b.js} +1 -1
- package/dist/vega/{p-d3bf55e9.js → p-39482a1a.js} +1 -1
- package/dist/vega/{p-7aae9252.entry.js → p-39b9c57b.entry.js} +1 -1
- package/dist/vega/p-3a7f177a.entry.js +1 -0
- package/dist/vega/p-41c3fcb4.js +1 -0
- package/dist/vega/p-447c7590.js +1 -0
- package/dist/vega/p-46830028.entry.js +1 -0
- package/dist/vega/{p-c8789df1.entry.js → p-47cae62d.entry.js} +1 -1
- package/dist/vega/{p-37fd7a80.js → p-47fa359b.js} +1 -1
- package/dist/vega/{p-bb58a7cf.entry.js → p-4897bedd.entry.js} +1 -1
- package/dist/vega/{p-8938b5c4.js → p-4c192985.js} +1 -1
- package/dist/vega/{p-0f2c83a1.entry.js → p-4e33fff6.entry.js} +1 -1
- package/dist/vega/{p-d4564bfd.js → p-521d1d07.js} +1 -1
- package/dist/vega/{p-b3cd1992.entry.js → p-524693d8.entry.js} +1 -1
- package/dist/vega/{p-06b624e6.js → p-54b62ecf.js} +1 -1
- package/dist/vega/{p-92ec4fac.entry.js → p-59298f5e.entry.js} +1 -1
- package/dist/vega/{p-9819dda9.entry.js → p-5a0524ab.entry.js} +1 -1
- package/dist/vega/{p-6c85c1f3.entry.js → p-5e32866d.entry.js} +1 -1
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/{p-ae963cb3.entry.js → p-5f58d1da.entry.js} +1 -1
- package/dist/vega/{p-956a5899.entry.js → p-616cd622.entry.js} +1 -1
- package/dist/vega/{p-4669ce11.entry.js → p-65693321.entry.js} +1 -1
- package/dist/vega/{p-db29b9f9.entry.js → p-671afda4.entry.js} +1 -1
- package/dist/vega/p-67f159c3.js +1 -0
- package/dist/vega/{p-3176804b.entry.js → p-6ce1e9d4.entry.js} +1 -1
- package/dist/vega/{p-ffc2ef90.entry.js → p-6f6ccf67.entry.js} +1 -1
- package/dist/vega/{p-3a0b9e66.entry.js → p-6f7d42a0.entry.js} +1 -1
- package/dist/vega/{p-684391a4.entry.js → p-719354e7.entry.js} +1 -1
- package/dist/vega/{p-1da54ff3.js → p-725f0a2c.js} +1 -1
- package/dist/vega/{p-4b57bb12.entry.js → p-74d61782.entry.js} +1 -1
- package/dist/vega/{p-3cdbee7e.js → p-7b145620.js} +1 -1
- package/dist/vega/{p-bf8d2978.entry.js → p-7c1d08db.entry.js} +1 -1
- package/dist/vega/p-7cd2b93b.js +1 -0
- package/dist/vega/{p-d20ab09f.entry.js → p-7efb5ebe.entry.js} +1 -1
- package/dist/vega/{p-57c42c30.entry.js → p-7f69081b.entry.js} +1 -1
- package/dist/vega/{p-df31307b.entry.js → p-7f9ec104.entry.js} +1 -1
- package/dist/vega/p-81105691.entry.js +1 -0
- package/dist/vega/p-822c6092.js +1 -0
- package/dist/vega/{p-3709b0e0.js → p-8350506e.js} +1 -1
- package/dist/vega/{p-3354f5a7.js → p-85f9a980.js} +1 -1
- package/dist/vega/{p-641fbb48.entry.js → p-892cbe7c.entry.js} +1 -1
- package/dist/vega/{p-eb5f99db.entry.js → p-8d096fea.entry.js} +1 -1
- package/dist/vega/{p-15766433.entry.js → p-8d574fbd.entry.js} +1 -1
- package/dist/vega/p-8d655fd2.entry.js +1 -0
- package/dist/vega/p-8edf3513.js +1 -0
- package/dist/vega/{p-f4877bee.entry.js → p-92a22562.entry.js} +1 -1
- package/dist/vega/p-9fb6fbcc.js +1 -0
- package/dist/vega/p-a0467b83.js +1 -0
- package/dist/vega/{p-459efe39.entry.js → p-a1b7a179.entry.js} +1 -1
- package/dist/vega/p-a528714c.js +1 -0
- package/dist/vega/p-a5713178.js +1 -0
- package/dist/vega/{p-3a9aa6eb.entry.js → p-a6010b93.entry.js} +1 -1
- package/dist/vega/{p-697acd40.js → p-a7631c6b.js} +1 -1
- package/dist/vega/{p-56b8ffd5.entry.js → p-ab1001f5.entry.js} +1 -1
- package/dist/vega/{p-f81f2071.entry.js → p-ab8f99e9.entry.js} +1 -1
- package/dist/vega/{p-4faa7bab.entry.js → p-ad5393f0.entry.js} +1 -1
- package/dist/vega/{p-1be68fba.js → p-af5bfe34.js} +1 -1
- package/dist/vega/{p-a9e3058e.entry.js → p-b2aaab66.entry.js} +1 -1
- package/dist/vega/{p-e4acac0a.entry.js → p-b431f9d5.entry.js} +1 -1
- package/dist/vega/{p-32058dbd.entry.js → p-b82d3915.entry.js} +1 -1
- package/dist/vega/p-bee1cc34.entry.js +1 -0
- package/dist/vega/{p-2044aa2c.js → p-bf7f755b.js} +1 -1
- package/dist/vega/p-bf9476cd.entry.js +1 -0
- package/dist/vega/{p-32655cfc.entry.js → p-c1da8328.entry.js} +1 -1
- package/dist/vega/{p-e27802fb.js → p-c6ce2869.js} +1 -1
- package/dist/vega/{p-52b0abb5.entry.js → p-cc519f53.entry.js} +1 -1
- package/dist/vega/{p-1655b920.entry.js → p-d006e732.entry.js} +1 -1
- package/dist/vega/p-d0e6454e.entry.js +1 -0
- package/dist/vega/{p-04158119.entry.js → p-d1dacaeb.entry.js} +1 -1
- package/dist/vega/{p-119430db.entry.js → p-d4452dbc.entry.js} +1 -1
- package/dist/vega/{p-64e949fa.entry.js → p-d5761532.entry.js} +1 -1
- package/dist/vega/p-d5ff8b7f.js +1 -0
- package/dist/vega/{p-a1cf29a9.js → p-d88e88a7.js} +1 -1
- package/dist/vega/p-d9671d27.js +1 -0
- package/dist/vega/{p-7c75ce6c.entry.js → p-de624f7d.entry.js} +1 -1
- package/dist/vega/{p-c7f68d74.js → p-e6cccee4.js} +1 -1
- package/dist/vega/{p-4082fa22.entry.js → p-ea05a2fc.entry.js} +1 -1
- package/dist/vega/p-ed8bc4f0.entry.js +1 -0
- package/dist/vega/{p-3af81271.js → p-f360c9ba.js} +1 -1
- package/dist/vega/{p-5443d614.entry.js → p-fc8c5869.entry.js} +1 -1
- package/dist/vega/{p-a30ebdf5.js → p-fde50319.js} +1 -1
- package/dist/vega/{p-159fda34.entry.js → p-fe2e859f.entry.js} +1 -1
- package/dist/vega/{p-3eaa6cce.entry.js → p-fef846d5.entry.js} +1 -1
- package/dist/vega/p-ff3bb4e2.entry.js +1 -0
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +3 -2
- package/dist/vega/p-06e6be0e.js +0 -1
- package/dist/vega/p-0b92b15b.entry.js +0 -1
- package/dist/vega/p-1110b422.entry.js +0 -1
- package/dist/vega/p-1aba48bc.js +0 -1
- package/dist/vega/p-1cb87bad.entry.js +0 -1
- package/dist/vega/p-2608b9fe.js +0 -1
- package/dist/vega/p-27dfa896.js +0 -1
- package/dist/vega/p-2ee4def0.js +0 -1
- package/dist/vega/p-3355ec0f.js +0 -1
- package/dist/vega/p-3674db0f.js +0 -1
- package/dist/vega/p-36f331bf.entry.js +0 -1
- package/dist/vega/p-465a6660.entry.js +0 -1
- package/dist/vega/p-4ae3eebf.entry.js +0 -1
- package/dist/vega/p-4e503e23.entry.js +0 -1
- package/dist/vega/p-575235c8.js +0 -1
- package/dist/vega/p-5773a9a3.js +0 -1
- package/dist/vega/p-6163818f.js +0 -1
- package/dist/vega/p-6be16084.js +0 -1
- package/dist/vega/p-6ed663d5.entry.js +0 -1
- package/dist/vega/p-84eabbec.entry.js +0 -1
- package/dist/vega/p-904d1b43.js +0 -1
- package/dist/vega/p-96bda7ca.js +0 -1
- package/dist/vega/p-a3d77013.js +0 -1
- package/dist/vega/p-b9e8c6bf.entry.js +0 -1
- package/dist/vega/p-be539a54.js +0 -1
- package/dist/vega/p-e4b0606a.entry.js +0 -1
- package/dist/vega/p-e6158a33.entry.js +0 -1
- package/dist/vega/p-ed0f000b.entry.js +0 -1
- package/dist/vega/p-f1436035.js +0 -1
|
@@ -105,15 +105,11 @@ export class RTEListBlock extends RTEBlock {
|
|
|
105
105
|
/**
|
|
106
106
|
* @inheritDoc
|
|
107
107
|
*/
|
|
108
|
-
clone() {
|
|
108
|
+
clone(parent) {
|
|
109
109
|
const clonedListBlock = new RTEListBlock(this.id, this.type);
|
|
110
|
-
clonedListBlock.children = this.children.map((item) =>
|
|
111
|
-
const clonedListItemBlock = item.clone();
|
|
112
|
-
clonedListItemBlock.parent = clonedListBlock;
|
|
113
|
-
return clonedListItemBlock;
|
|
114
|
-
});
|
|
110
|
+
clonedListBlock.children = this.children.map((item) => item.clone(clonedListBlock));
|
|
115
111
|
clonedListBlock.annotationMap = super.cloneAnnotations();
|
|
116
|
-
clonedListBlock.parent =
|
|
112
|
+
clonedListBlock.parent = parent;
|
|
117
113
|
return clonedListBlock;
|
|
118
114
|
}
|
|
119
115
|
/**
|
|
@@ -105,21 +105,13 @@ export class RTEListItemBlock extends RTETextBlock {
|
|
|
105
105
|
/**
|
|
106
106
|
* @inheritDoc
|
|
107
107
|
*/
|
|
108
|
-
clone() {
|
|
108
|
+
clone(parent) {
|
|
109
109
|
var _a;
|
|
110
110
|
const block = new RTEListItemBlock(this.id);
|
|
111
|
-
block.children = this.children.map((node) =>
|
|
112
|
-
const clonedNode = node.clone();
|
|
113
|
-
clonedNode.parent = block;
|
|
114
|
-
return clonedNode;
|
|
115
|
-
});
|
|
111
|
+
block.children = this.children.map((node) => node.clone(block));
|
|
116
112
|
block.annotationMap = super.cloneAnnotations();
|
|
117
|
-
block.nestList = (_a = this.nestList) === null || _a === void 0 ? void 0 : _a.map((child) =>
|
|
118
|
-
|
|
119
|
-
clonedChild.parent = block;
|
|
120
|
-
return clonedChild;
|
|
121
|
-
});
|
|
122
|
-
block.parent = this.parent;
|
|
113
|
+
block.nestList = (_a = this.nestList) === null || _a === void 0 ? void 0 : _a.map((child) => child.clone(block));
|
|
114
|
+
block.parent = parent;
|
|
123
115
|
return block;
|
|
124
116
|
}
|
|
125
117
|
}
|
|
@@ -164,15 +164,11 @@ export class RTETextBlock extends RTEBlock {
|
|
|
164
164
|
/**
|
|
165
165
|
* @inheritDoc
|
|
166
166
|
*/
|
|
167
|
-
clone() {
|
|
167
|
+
clone(parent) {
|
|
168
168
|
const clonedBlock = new RTETextBlock(this.id, this.type);
|
|
169
|
-
clonedBlock.children = this.children.map((node) =>
|
|
170
|
-
const clonedNode = node.clone();
|
|
171
|
-
clonedNode.parent = clonedBlock;
|
|
172
|
-
return clonedNode;
|
|
173
|
-
});
|
|
169
|
+
clonedBlock.children = this.children.map((node) => node.clone(clonedBlock));
|
|
174
170
|
clonedBlock.annotationMap = super.cloneAnnotations();
|
|
175
|
-
clonedBlock.parent =
|
|
171
|
+
clonedBlock.parent = parent;
|
|
176
172
|
return clonedBlock;
|
|
177
173
|
}
|
|
178
174
|
/**
|
|
@@ -115,7 +115,7 @@ export class VegaRTEContent {
|
|
|
115
115
|
*/
|
|
116
116
|
clone(deep = false) {
|
|
117
117
|
return deep
|
|
118
|
-
? new VegaRTEContent(this.children.map((block) => block.clone()))
|
|
118
|
+
? new VegaRTEContent(this.children.map((block) => block.clone(this)))
|
|
119
119
|
: new VegaRTEContent([...this.children]);
|
|
120
120
|
}
|
|
121
121
|
/**
|
|
@@ -35,8 +35,9 @@ export class RTECodeBlockNode extends RTEDecoratorNode {
|
|
|
35
35
|
/**
|
|
36
36
|
* @inheritDoc
|
|
37
37
|
*/
|
|
38
|
-
clone() {
|
|
39
|
-
|
|
38
|
+
clone(parent) {
|
|
39
|
+
const cloned = new RTECodeBlockNode(this.id, this.text, this.language, parent);
|
|
40
|
+
return cloned;
|
|
40
41
|
}
|
|
41
42
|
/**
|
|
42
43
|
* @inheritDoc
|
|
@@ -69,8 +69,8 @@ export class RTEImageNode extends RTEDecoratorNode {
|
|
|
69
69
|
/**
|
|
70
70
|
* @inheritDoc
|
|
71
71
|
*/
|
|
72
|
-
clone() {
|
|
73
|
-
return new RTEImageNode(this.id, this.url,
|
|
72
|
+
clone(parent) {
|
|
73
|
+
return new RTEImageNode(this.id, this.url, parent, super.cloneAnnotations());
|
|
74
74
|
}
|
|
75
75
|
/**
|
|
76
76
|
* @inheritDoc
|
|
@@ -154,8 +154,8 @@ export class RTETextNode extends RTENode {
|
|
|
154
154
|
/**
|
|
155
155
|
* @inheritDoc
|
|
156
156
|
*/
|
|
157
|
-
clone() {
|
|
158
|
-
const cloned = new RTETextNode(this.id, this.text,
|
|
157
|
+
clone(parent) {
|
|
158
|
+
const cloned = new RTETextNode(this.id, this.text, parent, super.cloneAnnotations());
|
|
159
159
|
return cloned;
|
|
160
160
|
}
|
|
161
161
|
/**
|
|
@@ -39,10 +39,11 @@ export class RTETokenNode extends RTETextNode {
|
|
|
39
39
|
/**
|
|
40
40
|
* Clones the token node.
|
|
41
41
|
*
|
|
42
|
+
* @param {RTETextBlock} parent - The parent block for the cloned node.
|
|
42
43
|
* @returns {RTETokenNode} - The cloned token node.
|
|
43
44
|
*/
|
|
44
|
-
clone() {
|
|
45
|
-
return new RTETokenNode(this.id, this.token, this.text,
|
|
45
|
+
clone(parent) {
|
|
46
|
+
return new RTETokenNode(this.id, this.token, this.text, parent, this.annotationMap);
|
|
46
47
|
}
|
|
47
48
|
/**
|
|
48
49
|
* Converts the token node to an HTML representation.
|
|
@@ -43,8 +43,8 @@ describe('RTECodeBlock', () => {
|
|
|
43
43
|
language: 'js',
|
|
44
44
|
content: 'const',
|
|
45
45
|
});
|
|
46
|
-
const cloneBlock = codeBlock.clone();
|
|
47
|
-
const cloneNode = codeBlock.children[0].clone();
|
|
46
|
+
const cloneBlock = codeBlock.clone(codeBlock.parent);
|
|
47
|
+
const cloneNode = codeBlock.children[0].clone(cloneBlock);
|
|
48
48
|
expect(cloneBlock.id).toEqual(codeBlock.id);
|
|
49
49
|
expect(cloneBlock.type).toEqual(codeBlock.type);
|
|
50
50
|
expect(cloneNode.type).toEqual(codeBlock.children[0].type);
|
|
@@ -404,7 +404,7 @@ describe('text node', () => {
|
|
|
404
404
|
const textBlock = new RTETextBlock('block-1', 'paragraph');
|
|
405
405
|
const textNode = new RTETextNode('1', 'This is a text.', textBlock);
|
|
406
406
|
textNode.apply(new BoldAnnotationAction(true));
|
|
407
|
-
const clonedNode = textNode.clone();
|
|
407
|
+
const clonedNode = textNode.clone(textBlock);
|
|
408
408
|
expect(textNode).toEqual(clonedNode);
|
|
409
409
|
expect(textNode).not.toBe(clonedNode);
|
|
410
410
|
expect(textNode.annotationMap).toEqual(clonedNode.annotationMap);
|
|
@@ -86,6 +86,8 @@ export const VegaNativeEventName = [
|
|
|
86
86
|
'reset',
|
|
87
87
|
'eventPreviewShow',
|
|
88
88
|
'monthYearChange',
|
|
89
|
+
'complete',
|
|
90
|
+
'paste',
|
|
89
91
|
];
|
|
90
92
|
// eslint-disable-next-line @typescript-eslint/typedef
|
|
91
93
|
export const CssStates = ['default', 'hover', 'active', 'focus-visible'];
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { VegaInternalTranslation } from '../translation';
|
|
2
|
+
import { getCurrentDatePartsInTimezone, getSystemTimezone } from './utils';
|
|
2
3
|
/**
|
|
3
4
|
* Calendar date class
|
|
4
5
|
*/
|
|
@@ -11,11 +12,13 @@ export class CalendarDate {
|
|
|
11
12
|
/**
|
|
12
13
|
* Create a calendar date from a Date object
|
|
13
14
|
*
|
|
14
|
-
* @param {Date}
|
|
15
|
+
* @param {Date} currentDate - The Date object to create CalendarDate from
|
|
16
|
+
* @param {string} timezone - Timezone identifier for timezone-aware date creation. If not provided, uses system timezone.
|
|
15
17
|
* @returns {CalendarDate} - Return a CalendarDate object
|
|
16
18
|
*/
|
|
17
|
-
static from(
|
|
18
|
-
|
|
19
|
+
static from(currentDate, timezone = getSystemTimezone()) {
|
|
20
|
+
const { year, month, date } = getCurrentDatePartsInTimezone(timezone, currentDate);
|
|
21
|
+
return new CalendarDate(year, month, date);
|
|
19
22
|
}
|
|
20
23
|
/**
|
|
21
24
|
* The year of the calendar date
|
|
@@ -53,13 +56,12 @@ export class CalendarDate {
|
|
|
53
56
|
/**
|
|
54
57
|
* Verify whether the calendar date is today
|
|
55
58
|
*
|
|
59
|
+
* @param {string} timezone - Timezone to consider when checking today's date. If not provided, uses system timezone.
|
|
56
60
|
* @returns {boolean} - Return true if the calendar date is today. Otherwise, return false.
|
|
57
61
|
*/
|
|
58
|
-
isToday() {
|
|
59
|
-
const
|
|
60
|
-
return
|
|
61
|
-
today.getMonth() + 1 === this.month &&
|
|
62
|
-
today.getDate() === this.date);
|
|
62
|
+
isToday(timezone = getSystemTimezone()) {
|
|
63
|
+
const { year, month, date } = getCurrentDatePartsInTimezone(timezone, new Date());
|
|
64
|
+
return year === this.year && month === this.month && date === this.date;
|
|
63
65
|
}
|
|
64
66
|
/**
|
|
65
67
|
* Convert the calendar date to a Date object
|
|
@@ -2,7 +2,8 @@ import calendarEventRepeatPatternFactory from '../../components/vega-calendar/sl
|
|
|
2
2
|
import { generateUUID } from '../../utils/misc';
|
|
3
3
|
import { VegaInternalTranslation } from '../translation';
|
|
4
4
|
import { CalendarDate } from './calendar-date';
|
|
5
|
-
import { formatDisplayTime, WeekdayLongNames } from './utils';
|
|
5
|
+
import { formatDisplayTime, getSystemTimezone, WeekdayLongNames } from './utils';
|
|
6
|
+
import { LogUtility } from '../../utils/log';
|
|
6
7
|
const CalendarDateFormatReg = /^\d{1,2}\/\d{1,2}\/\d{4}/;
|
|
7
8
|
const CalendarTimeFormatReg = /^\d{1,2}:\d{1,2}/;
|
|
8
9
|
/** The `CalendarEvent` class in TypeScript represents a calendar event with methods to validate required fields, initialize dates and times, and determine if it is a group event. */
|
|
@@ -16,13 +17,15 @@ export class CalendarEvent {
|
|
|
16
17
|
* @param {string} eventKey If a value is not provided for `eventKey`, a UUID (Universally
|
|
17
18
|
* Unique Identifier) will be generated as a default value. This identifier is used to distinguish
|
|
18
19
|
* different events and can be helpful for tracking
|
|
20
|
+
* @param {string} timezone - Optional timezone identifier for timezone-aware date calculations
|
|
19
21
|
*/
|
|
20
|
-
constructor(eventOptions, eventKey) {
|
|
22
|
+
constructor(eventOptions, eventKey, timezone) {
|
|
21
23
|
// the default value is 1 when the event end date is same as start date
|
|
22
24
|
this._eventSpansDays = 1;
|
|
23
25
|
this.repeatPattern = null;
|
|
24
26
|
this._event = eventOptions;
|
|
25
27
|
this._eventKey = eventKey || generateUUID();
|
|
28
|
+
this._timezone = timezone || getSystemTimezone();
|
|
26
29
|
this.checkEventRequireField(eventOptions);
|
|
27
30
|
this.initDate(eventOptions);
|
|
28
31
|
this.initEventSpansDays();
|
|
@@ -202,7 +205,7 @@ export class CalendarEvent {
|
|
|
202
205
|
getEventDuration() {
|
|
203
206
|
const [startHour, startMinutes] = this.startTime.split(':');
|
|
204
207
|
const [endHour, endMinutes] = this.endTime.split(':');
|
|
205
|
-
const now = CalendarDate.from(new Date());
|
|
208
|
+
const now = CalendarDate.from(new Date(), this._timezone);
|
|
206
209
|
const startDate = new Date(now.year, now.month, now.date, Number(startHour), Number(startMinutes));
|
|
207
210
|
const endDate = new Date(now.year, now.month, now.date, Number(endHour) === 0 && Number(startHour) !== 0 ? 24 : Number(endHour), Number(endMinutes));
|
|
208
211
|
return (endDate.valueOf() - startDate.valueOf()) / (60 * 1000);
|
|
@@ -222,6 +225,17 @@ export class CalendarEvent {
|
|
|
222
225
|
}
|
|
223
226
|
return [];
|
|
224
227
|
}
|
|
228
|
+
/**
|
|
229
|
+
* Refresh event dates and related properties when timezone changes
|
|
230
|
+
*
|
|
231
|
+
* @param {string} timezone - The new timezone to apply to the event
|
|
232
|
+
*/
|
|
233
|
+
updateTimezone(timezone) {
|
|
234
|
+
this._timezone = timezone;
|
|
235
|
+
this.initDate(this._event);
|
|
236
|
+
this.initEventSpansDays();
|
|
237
|
+
this.initRepeatPattern();
|
|
238
|
+
}
|
|
225
239
|
/**
|
|
226
240
|
* The function `convertTimeTo24Hour` converts a time string from 12-hour format to 24-hour format in TypeScript.
|
|
227
241
|
*
|
|
@@ -279,42 +293,164 @@ export class CalendarEvent {
|
|
|
279
293
|
*/
|
|
280
294
|
initDate(eventOptions) {
|
|
281
295
|
const { startDate, startTime, endDate, endTime } = eventOptions;
|
|
296
|
+
const originalDateParts = this.processStartDate(startDate, startTime || '');
|
|
297
|
+
this._startTime = this.formatTimeForDisplay(this._startDate, startTime || '');
|
|
298
|
+
this.processEndDate(endDate || '', endTime || '', originalDateParts);
|
|
299
|
+
this._endTime = this.formatTimeForDisplay(this._endDate, endTime || '');
|
|
300
|
+
}
|
|
301
|
+
/**
|
|
302
|
+
* Process start date
|
|
303
|
+
*
|
|
304
|
+
* @param {string | Date} startDate - Start date (string or Date object)
|
|
305
|
+
* @param {string} startTime - Start time string
|
|
306
|
+
* @returns {DateParts | undefined} originalDateParts information
|
|
307
|
+
*/
|
|
308
|
+
processStartDate(startDate, startTime) {
|
|
309
|
+
let originalDateParts;
|
|
310
|
+
let tempDate;
|
|
282
311
|
if (startDate && typeof startDate === 'object') {
|
|
283
|
-
|
|
312
|
+
originalDateParts = {
|
|
313
|
+
year: startDate.getFullYear(),
|
|
314
|
+
month: startDate.getMonth(),
|
|
315
|
+
date: startDate.getDate(),
|
|
316
|
+
};
|
|
317
|
+
tempDate = startDate;
|
|
284
318
|
}
|
|
285
319
|
else if (startDate && typeof startDate === 'string') {
|
|
286
320
|
const [month, day, year] = startDate.split('/');
|
|
287
|
-
|
|
321
|
+
originalDateParts = {
|
|
322
|
+
year: Number(year),
|
|
323
|
+
month: Number(month) - 1,
|
|
324
|
+
date: Number(day),
|
|
325
|
+
};
|
|
326
|
+
tempDate = new Date(originalDateParts.year, originalDateParts.month, originalDateParts.date);
|
|
288
327
|
}
|
|
289
|
-
if (
|
|
290
|
-
|
|
328
|
+
if (startTime && originalDateParts && tempDate) {
|
|
329
|
+
const { timeHours, timeMinutes } = this.getCurrentHourAndMinutes(startTime);
|
|
330
|
+
tempDate = new Date(originalDateParts.year, originalDateParts.month, originalDateParts.date, timeHours, timeMinutes, 0);
|
|
291
331
|
}
|
|
292
|
-
|
|
293
|
-
this.
|
|
332
|
+
if (tempDate) {
|
|
333
|
+
this._startDate = this.convertDateToTimezone(tempDate);
|
|
294
334
|
}
|
|
335
|
+
return originalDateParts;
|
|
336
|
+
}
|
|
337
|
+
/**
|
|
338
|
+
* Process end date
|
|
339
|
+
*
|
|
340
|
+
* @param {string | Date} endDate - End date (string or Date object)
|
|
341
|
+
* @param {string} endTime - End time string
|
|
342
|
+
* @param {DateParts | undefined} fallbackDateParts - Default date parts to use when endDate is empty
|
|
343
|
+
*/
|
|
344
|
+
processEndDate(endDate, endTime, fallbackDateParts) {
|
|
345
|
+
let tempDate;
|
|
295
346
|
if (endDate && typeof endDate === 'object') {
|
|
296
|
-
|
|
347
|
+
tempDate = endDate;
|
|
297
348
|
}
|
|
298
349
|
else if (endDate && typeof endDate === 'string') {
|
|
299
350
|
const [month, day, year] = endDate.split('/');
|
|
300
|
-
|
|
351
|
+
tempDate = new Date(Number(year), Number(month) - 1, Number(day), 23, 59, 59);
|
|
301
352
|
}
|
|
302
353
|
else {
|
|
303
|
-
|
|
354
|
+
if (fallbackDateParts) {
|
|
355
|
+
tempDate = new Date(fallbackDateParts.year, fallbackDateParts.month, fallbackDateParts.date, 23, 59, 59);
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
if (endTime && tempDate) {
|
|
359
|
+
const { timeHours, timeMinutes } = this.getCurrentHourAndMinutes(endTime, 23, 59);
|
|
360
|
+
tempDate = new Date(tempDate.getFullYear(), tempDate.getMonth(), tempDate.getDate(), timeHours, timeMinutes, 59);
|
|
304
361
|
}
|
|
305
|
-
if (
|
|
306
|
-
this.
|
|
362
|
+
if (tempDate) {
|
|
363
|
+
this._endDate = this.convertDateToTimezone(tempDate);
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
/**
|
|
367
|
+
* Format time for display
|
|
368
|
+
*
|
|
369
|
+
* @param {Date} date - Date object
|
|
370
|
+
* @param {string} originalTime - Original time string
|
|
371
|
+
* @returns {string} Formatted time string
|
|
372
|
+
*/
|
|
373
|
+
formatTimeForDisplay(date, originalTime) {
|
|
374
|
+
const shouldUseOriginalTime = Boolean(originalTime) && this._timezone === getSystemTimezone();
|
|
375
|
+
if (shouldUseOriginalTime) {
|
|
376
|
+
const convertedTime = this.convertTimeTo24Hour(originalTime);
|
|
377
|
+
const [hour, minutes] = convertedTime.split(':');
|
|
378
|
+
return `${date.getHours().toString().padStart(hour.length, '0')}:${date
|
|
379
|
+
.getMinutes()
|
|
380
|
+
.toString()
|
|
381
|
+
.padStart(minutes.length, '0')}`;
|
|
307
382
|
}
|
|
308
383
|
else {
|
|
309
|
-
|
|
384
|
+
return `${date.getHours()}:${date.getMinutes()}`;
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
/**
|
|
388
|
+
* Parses a time string and extracts hour and minute values.
|
|
389
|
+
* If the time string is empty or invalid, returns the provided default values.
|
|
390
|
+
*
|
|
391
|
+
* @param {string} time - The time string to parse (e.g., "14:30", "2:30 PM")
|
|
392
|
+
* @param {number} defaultHours - Default hour value to use when time is empty (default: 0)
|
|
393
|
+
* @param {number} defaultMinutes - Default minute value to use when time is empty (default: 0)
|
|
394
|
+
* @returns {CalendarTimeHourMinutes} An object containing timeHours and timeMinutes as numbers
|
|
395
|
+
*/
|
|
396
|
+
getCurrentHourAndMinutes(time, defaultHours = 0, defaultMinutes = 0) {
|
|
397
|
+
let timeHours = defaultHours;
|
|
398
|
+
let timeMinutes = defaultMinutes;
|
|
399
|
+
if (time) {
|
|
400
|
+
const timeString = this.convertTimeTo24Hour(time).split(':');
|
|
401
|
+
timeHours = Number(timeString[0]);
|
|
402
|
+
timeMinutes = Number(timeString[1]);
|
|
403
|
+
}
|
|
404
|
+
return { timeHours, timeMinutes };
|
|
405
|
+
}
|
|
406
|
+
/**
|
|
407
|
+
* Converts a Date object to the target timezone
|
|
408
|
+
*
|
|
409
|
+
* @param {Date} date - The Date object to convert
|
|
410
|
+
* @returns {Date} A Date object representing the date/time in the target timezone
|
|
411
|
+
*/
|
|
412
|
+
convertDateToTimezone(date) {
|
|
413
|
+
if (this._timezone && this._timezone !== getSystemTimezone()) {
|
|
414
|
+
try {
|
|
415
|
+
const targetFormatter = new Intl.DateTimeFormat([], {
|
|
416
|
+
timeZone: this._timezone,
|
|
417
|
+
year: 'numeric',
|
|
418
|
+
month: '2-digit',
|
|
419
|
+
day: '2-digit',
|
|
420
|
+
hour: '2-digit',
|
|
421
|
+
minute: '2-digit',
|
|
422
|
+
second: '2-digit',
|
|
423
|
+
hour12: false,
|
|
424
|
+
});
|
|
425
|
+
const targetParts = targetFormatter.formatToParts(date);
|
|
426
|
+
const getYear = targetParts.find((part) => part.type === 'year');
|
|
427
|
+
const getMonth = targetParts.find((part) => part.type === 'month');
|
|
428
|
+
const getDay = targetParts.find((part) => part.type === 'day');
|
|
429
|
+
const getHour = targetParts.find((part) => part.type === 'hour');
|
|
430
|
+
const getMinute = targetParts.find((part) => part.type === 'minute');
|
|
431
|
+
const getSecond = targetParts.find((part) => part.type === 'second');
|
|
432
|
+
if (getYear && getMonth && getDay && getHour && getMinute && getSecond) {
|
|
433
|
+
const year = parseInt(getYear.value, 10);
|
|
434
|
+
const month = parseInt(getMonth.value, 10);
|
|
435
|
+
const day = parseInt(getDay.value, 10);
|
|
436
|
+
const hour = parseInt(getHour.value, 10);
|
|
437
|
+
const minute = parseInt(getMinute.value, 10);
|
|
438
|
+
const second = parseInt(getSecond.value, 10);
|
|
439
|
+
return new Date(year, month - 1, day, hour, minute, second);
|
|
440
|
+
}
|
|
441
|
+
}
|
|
442
|
+
catch (error) {
|
|
443
|
+
LogUtility.warn('Invalid timezone:', this._timezone);
|
|
444
|
+
}
|
|
310
445
|
}
|
|
446
|
+
return date;
|
|
311
447
|
}
|
|
312
448
|
/**
|
|
313
449
|
* The function initializes a repeat pattern controller for a calendar event with specified start and end dates and repeat options.
|
|
314
450
|
*/
|
|
315
451
|
initRepeatPattern() {
|
|
316
452
|
if (this._event.repeatOptions && this._event.repeatOptions.frequency) {
|
|
317
|
-
this.repeatPattern = calendarEventRepeatPatternFactory.getPattern(this._startDate, this._event.repeatOptions);
|
|
453
|
+
this.repeatPattern = calendarEventRepeatPatternFactory.getPattern(this._startDate, this._event.repeatOptions, this._timezone);
|
|
318
454
|
}
|
|
319
455
|
}
|
|
320
456
|
/**
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { CalendarDate } from '../calendar-date';
|
|
2
|
-
import { getWeekdays } from '../utils';
|
|
2
|
+
import { getSystemTimezone, getWeekdays } from '../utils';
|
|
3
3
|
/**
|
|
4
4
|
* CalendarPeriod is an abstract class that represents a period of date for calendar.
|
|
5
5
|
*/
|
|
6
6
|
export class CalendarPeriod {
|
|
7
|
-
constructor(count, current) {
|
|
7
|
+
constructor(count, current, timezone) {
|
|
8
8
|
this._count = count;
|
|
9
|
-
this.
|
|
9
|
+
this._timezone = timezone || getSystemTimezone();
|
|
10
|
+
this._current = current ? current : CalendarDate.from(new Date(), this._timezone);
|
|
10
11
|
this.calculatePeriod(this._current);
|
|
11
12
|
}
|
|
12
13
|
/**
|
|
@@ -57,6 +58,14 @@ export class CalendarPeriod {
|
|
|
57
58
|
get showWeekends() {
|
|
58
59
|
return this._showWeekends;
|
|
59
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* The timezone of the period.
|
|
63
|
+
*
|
|
64
|
+
* @type {string | undefined}
|
|
65
|
+
*/
|
|
66
|
+
get timezone() {
|
|
67
|
+
return this._timezone;
|
|
68
|
+
}
|
|
60
69
|
/**
|
|
61
70
|
* Go to a specific date.
|
|
62
71
|
*
|
|
@@ -72,7 +81,7 @@ export class CalendarPeriod {
|
|
|
72
81
|
* @returns {this} - The current period.
|
|
73
82
|
*/
|
|
74
83
|
now() {
|
|
75
|
-
return this.createBy(CalendarDate.from(new Date()));
|
|
84
|
+
return this.createBy(CalendarDate.from(new Date(), this._timezone));
|
|
76
85
|
}
|
|
77
86
|
/**
|
|
78
87
|
* Calculate the period start date and end date.
|
|
@@ -5,8 +5,8 @@ import { DateDirection, getClosestWorkday } from '../../../components/vega-calen
|
|
|
5
5
|
* Period of day.
|
|
6
6
|
*/
|
|
7
7
|
export class DayPeriod extends CalendarPeriod {
|
|
8
|
-
constructor(current, showWeekends) {
|
|
9
|
-
super(DayPeriod.DISPLAY_DATE_COUNT, current);
|
|
8
|
+
constructor(current, showWeekends, timezone) {
|
|
9
|
+
super(DayPeriod.DISPLAY_DATE_COUNT, current, timezone);
|
|
10
10
|
this._type = 'day';
|
|
11
11
|
this._showWeekends = true;
|
|
12
12
|
this._showWeekends = showWeekends === false ? false : true;
|
|
@@ -41,7 +41,7 @@ export class DayPeriod extends CalendarPeriod {
|
|
|
41
41
|
* @returns {this} - The current period.
|
|
42
42
|
*/
|
|
43
43
|
now() {
|
|
44
|
-
let calendarDate = CalendarDate.from(new Date());
|
|
44
|
+
let calendarDate = CalendarDate.from(new Date(), this.timezone);
|
|
45
45
|
if (this._showWeekends === false) {
|
|
46
46
|
calendarDate = getClosestWorkday(calendarDate);
|
|
47
47
|
}
|
|
@@ -51,7 +51,7 @@ export class DayPeriod extends CalendarPeriod {
|
|
|
51
51
|
* @inheritDoc
|
|
52
52
|
*/
|
|
53
53
|
createBy(current) {
|
|
54
|
-
return new DayPeriod(current, this._showWeekends);
|
|
54
|
+
return new DayPeriod(current, this._showWeekends, this.timezone);
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
DayPeriod.DISPLAY_DATE_COUNT = 1;
|
|
@@ -5,8 +5,8 @@ import { getWeekdays } from '../utils';
|
|
|
5
5
|
* Period of month
|
|
6
6
|
*/
|
|
7
7
|
export class MonthPeriod extends CalendarPeriod {
|
|
8
|
-
constructor(current, showWeekends) {
|
|
9
|
-
super(MonthPeriod.DISPLAY_DATE_COUNT, current);
|
|
8
|
+
constructor(current, showWeekends, timezone) {
|
|
9
|
+
super(MonthPeriod.DISPLAY_DATE_COUNT, current, timezone);
|
|
10
10
|
this._type = 'month';
|
|
11
11
|
this._showWeekends = true;
|
|
12
12
|
this._showWeekends = showWeekends === false ? false : true;
|
|
@@ -17,12 +17,13 @@ export class MonthPeriod extends CalendarPeriod {
|
|
|
17
17
|
* @param {CalendarDate} [calendarDate] - The `calendarDate` parameter is an optional parameter of
|
|
18
18
|
* type `CalendarDate`. It represents a specific date in the calendar. If a `calendarDate` is
|
|
19
19
|
* provided, the function will use that date to determine the first day of the month. If no
|
|
20
|
-
* `calendarDate` is provided, the function
|
|
20
|
+
* `calendarDate` is provided, the function will use the current date considering timezone.
|
|
21
|
+
* @param {string} [timezone] - The timezone to use when no calendarDate is provided
|
|
21
22
|
* @returns {CalendarDate} A new `CalendarDate` object representing the first day of the month from the provided
|
|
22
23
|
* `calendarDate` parameter or the current date if no parameter is provided.
|
|
23
24
|
*/
|
|
24
|
-
static getMonthFirstDay(calendarDate) {
|
|
25
|
-
const date = calendarDate || CalendarDate.from(new Date());
|
|
25
|
+
static getMonthFirstDay(calendarDate, timezone) {
|
|
26
|
+
const date = calendarDate || CalendarDate.from(new Date(), timezone);
|
|
26
27
|
return new CalendarDate(date.year, date.month, 1);
|
|
27
28
|
}
|
|
28
29
|
/**
|
|
@@ -58,7 +59,7 @@ export class MonthPeriod extends CalendarPeriod {
|
|
|
58
59
|
* @inheritDoc
|
|
59
60
|
*/
|
|
60
61
|
createBy(current) {
|
|
61
|
-
return new MonthPeriod(current, this._showWeekends);
|
|
62
|
+
return new MonthPeriod(current, this._showWeekends, this.timezone);
|
|
62
63
|
}
|
|
63
64
|
}
|
|
64
65
|
MonthPeriod.DISPLAY_DATE_COUNT = 6 * 7;
|
|
@@ -4,8 +4,8 @@ import { CalendarDate } from '../calendar-date';
|
|
|
4
4
|
* Period of the week
|
|
5
5
|
*/
|
|
6
6
|
export class WeekPeriod extends CalendarPeriod {
|
|
7
|
-
constructor(current, showWeekends) {
|
|
8
|
-
super(WeekPeriod.DISPLAY_DATE_COUNT, current);
|
|
7
|
+
constructor(current, showWeekends, timezone) {
|
|
8
|
+
super(WeekPeriod.DISPLAY_DATE_COUNT, current, timezone);
|
|
9
9
|
this._type = 'week';
|
|
10
10
|
this._showWeekends = true;
|
|
11
11
|
this._showWeekends = showWeekends === false ? false : true;
|
|
@@ -30,7 +30,7 @@ export class WeekPeriod extends CalendarPeriod {
|
|
|
30
30
|
* @inheritDoc
|
|
31
31
|
*/
|
|
32
32
|
createBy(current) {
|
|
33
|
-
return new WeekPeriod(current, this._showWeekends);
|
|
33
|
+
return new WeekPeriod(current, this._showWeekends, this.timezone);
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
WeekPeriod.DISPLAY_DATE_COUNT = 7;
|
|
@@ -12,7 +12,7 @@ export class WeekViewGenerator extends CalendarViewGenerator {
|
|
|
12
12
|
const dates = this.generateDates(period);
|
|
13
13
|
const showWeekends = period.showWeekends;
|
|
14
14
|
let weekDays = this.generateWeekHead();
|
|
15
|
-
let dateItems = [dates.map(CalendarDate.from)];
|
|
15
|
+
let dateItems = [dates.map((date) => CalendarDate.from(date))];
|
|
16
16
|
if (showWeekends === false) {
|
|
17
17
|
weekDays = weekDays.slice(1, 6);
|
|
18
18
|
dateItems = dateItems.map((items) => items.slice(1, 6));
|
|
@@ -73,3 +73,27 @@ describe('calendar-date', () => {
|
|
|
73
73
|
expect(new CalendarDate(2024, 2, 10).getMonthName(true)).toBe('Feb');
|
|
74
74
|
});
|
|
75
75
|
});
|
|
76
|
+
describe('CalendarDate Timezone', () => {
|
|
77
|
+
it('should create calendar date', () => {
|
|
78
|
+
const calendarDate = new CalendarDate(2025, 10, 29);
|
|
79
|
+
expect(calendarDate.year).toBe(2025);
|
|
80
|
+
expect(calendarDate.month).toBe(10);
|
|
81
|
+
expect(calendarDate.date).toBe(29);
|
|
82
|
+
});
|
|
83
|
+
it('should check isToday with timezone', () => {
|
|
84
|
+
jest.useFakeTimers('modern');
|
|
85
|
+
jest.setSystemTime(new Date('2025-10-29T03:00:00Z'));
|
|
86
|
+
const calendarDate = new CalendarDate(2025, 10, 29);
|
|
87
|
+
expect(calendarDate.isToday('UTC')).toBe(true);
|
|
88
|
+
expect(calendarDate.isToday('Asia/Shanghai')).toBe(true);
|
|
89
|
+
expect(calendarDate.isToday('America/New_York')).toBe(false);
|
|
90
|
+
jest.useRealTimers();
|
|
91
|
+
});
|
|
92
|
+
it('should convert to Date object', () => {
|
|
93
|
+
const calendarDate = new CalendarDate(2025, 10, 29);
|
|
94
|
+
const dateObj = calendarDate.toDate();
|
|
95
|
+
expect(dateObj.getFullYear()).toBe(2025);
|
|
96
|
+
expect(dateObj.getMonth() + 1).toBe(10);
|
|
97
|
+
expect(dateObj.getDate()).toBe(29);
|
|
98
|
+
});
|
|
99
|
+
});
|