@central-design-system/components 4.0.0-alpha.4 → 4.0.0-alpha.6
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/CHANGELOG.md +6 -1
- package/MIGRATION.md +21 -49
- package/dist/browser/entry.js +5244 -2551
- package/dist/cds.d.ts +115041 -0
- package/dist/cjs/entry.js +9 -9
- package/dist/es/entry.css +0 -18
- package/dist/es/entry.js +34 -29
- package/dist/es/src/cds.js +5 -5
- package/dist/es/src/components/CdsApp/CdsApp.css +0 -18
- package/dist/es/src/components/CdsApp/CdsApp.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsApp/api/CdsApp.props.js +2 -1
- package/dist/es/src/components/CdsAutocomplete/CdsAutocomplete.css +0 -18
- package/dist/es/src/components/CdsAutocomplete/CdsAutocomplete.vue_vue_type_script_setup_true_lang.js +21 -6
- package/dist/es/src/components/CdsAutocomplete/api/CdsAutocomplete.props.js +9 -2
- package/dist/es/src/components/CdsAvatar/CdsAvatar.css +0 -18
- package/dist/es/src/components/CdsAvatar/CdsAvatar.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsAvatar/api/CdsAvatar.props.js +21 -6
- package/dist/es/src/components/CdsBadge/CdsBadge.css +0 -18
- package/dist/es/src/components/CdsBadge/CdsBadge.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsBadge/api/CdsBadge.props.js +38 -10
- package/dist/es/src/components/CdsBreadcrumbs/CdsBreadcrumbs.css +0 -18
- package/dist/es/src/components/CdsBreadcrumbs/api/CdsBreadcrumbs.props.js +32 -8
- package/dist/es/src/components/CdsButton/CdsButton.css +0 -18
- package/dist/es/src/components/CdsButton/CdsButton.vue_vue_type_script_setup_true_lang.js +5 -2
- package/dist/es/src/components/CdsButton/api/CdsButton.props.js +29 -8
- package/dist/es/src/components/CdsButtonGroup/CdsButtonGroup.css +0 -18
- package/dist/es/src/components/CdsButtonGroup/CdsButtonGroup.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsButtonGroup/api/CdsButtonGroup.props.js +5 -2
- package/dist/es/src/components/CdsButtonToggle/CdsButtonToggle.css +0 -18
- package/dist/es/src/components/CdsButtonToggle/CdsButtonToggle.vue_vue_type_script_setup_true_lang.js +20 -5
- package/dist/es/src/components/CdsCard/CdsCard.css +0 -18
- package/dist/es/src/components/CdsCard/CdsCard.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsCard/CdsCardGroup.vue_vue_type_script_setup_true_lang.js +21 -6
- package/dist/es/src/components/CdsCard/api/CdsCard.props.js +85 -21
- package/dist/es/src/components/CdsCarousel/CdsCarousel.css +0 -18
- package/dist/es/src/components/CdsCarousel/api/CdsCarousel.props.js +36 -9
- package/dist/es/src/components/CdsCheckbox/CdsCheckbox.css +0 -18
- package/dist/es/src/components/CdsCheckboxButton/CdsCheckboxButton.css +0 -18
- package/dist/es/src/components/CdsCheckboxButton/api/CdsCheckboxButton.props.js +8 -2
- package/dist/es/src/components/CdsCombobox/CdsCombobox.css +0 -18
- package/dist/es/src/components/CdsCombobox/CdsCombobox.vue_vue_type_script_setup_true_lang.js +25 -7
- package/dist/es/src/components/CdsCombobox/api/CdsCombobox.props.js +13 -3
- package/dist/es/src/components/CdsCounter/CdsCounter.css +0 -18
- package/dist/es/src/components/CdsCounter/api/CdsCounter.props.js +12 -3
- package/dist/es/src/components/CdsDateInput/CdsDateInput.css +0 -18
- package/dist/es/src/components/CdsDateInput/CdsDateInput.vue_vue_type_script_setup_true_lang.js +8 -0
- package/dist/es/src/components/CdsDateInput/api/CdsDateInput.props.js +31 -7
- package/dist/es/src/components/CdsDatePicker/CdsDatePicker.css +0 -18
- package/dist/es/src/components/CdsDatePicker/CdsDatePicker.vue_vue_type_script_setup_true_lang.js +21 -1
- package/dist/es/src/components/CdsDatePicker/api/CdsDatePicker.props.js +65 -16
- package/dist/es/src/components/CdsDefaultsProvider/api/CdsDefaultsProvider.props.js +5 -0
- package/dist/es/src/components/CdsDescription/CdsDescription.css +0 -18
- package/dist/es/src/components/CdsDivider/CdsDivider.css +0 -18
- package/dist/es/src/components/CdsDivider/CdsDivider.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsDivider/api/CdsDivider.props.js +33 -8
- package/dist/es/src/components/CdsDrawer/CdsDrawer.css +0 -18
- package/dist/es/src/components/CdsDrawer/CdsDrawer.vue_vue_type_script_setup_true_lang.js +6 -2
- package/dist/es/src/components/CdsDrawer/api/CdsDrawer.props.js +33 -9
- package/dist/es/src/components/CdsEmptyState/CdsEmptyState.css +0 -18
- package/dist/es/src/components/CdsEmptyState/CdsEmptyState.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/es/src/components/CdsEmptyState/api/CdsEmptyState.props.js +34 -9
- package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanel.vue_vue_type_script_setup_true_lang.js +16 -4
- package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanelTitle.vue_vue_type_script_setup_true_lang.js +8 -2
- package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanels.css +0 -18
- package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanels.vue_vue_type_script_setup_true_lang.js +9 -3
- package/dist/es/src/components/CdsExpandablePanel/api/CdsExpandablePanel.props.js +39 -10
- package/dist/es/src/components/CdsField/CdsField.css +1 -19
- package/dist/es/src/components/CdsField/CdsField.vue_vue_type_script_setup_true_lang.js +18 -4
- package/dist/es/src/components/CdsField/api/CdsField.props.js +57 -15
- package/dist/es/src/components/CdsField/composables/useAutocomplete.js +1 -0
- package/dist/es/src/components/CdsFileInput/CdsFileInput.css +0 -18
- package/dist/es/src/components/CdsFileInput/api/CdsFileInput.props.js +40 -10
- package/dist/es/src/components/CdsFileInput/composables/useFileFilter.js +4 -1
- package/dist/es/src/components/CdsFileUpload/CdsFileUpload.css +0 -18
- package/dist/es/src/components/CdsFileUpload/CdsFileUpload.vue_vue_type_script_setup_true_lang.js +5 -1
- package/dist/es/src/components/CdsFileUpload/api/CdsFileUpload.props.js +85 -21
- package/dist/es/src/components/CdsFooter/CdsFooter.css +0 -18
- package/dist/es/src/components/CdsFooter/CdsFooter.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/es/src/components/CdsFooter/api/CdsFooter.props.js +1 -1
- package/dist/es/src/components/CdsForm/CdsForm.css +0 -18
- package/dist/es/src/components/CdsForm/CdsForm.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsForm/api/CdsForm.props.js +9 -3
- package/dist/es/src/components/CdsFunctionalButton/CdsFunctionalButton.css +0 -18
- package/dist/es/src/components/CdsFunctionalButton/api/CdsFunctionalButton.props.js +5 -2
- package/dist/es/src/components/CdsGrid/CdsCol.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsGrid/api/CdsGrid.props.js +40 -10
- package/dist/es/src/components/CdsGrid/components/CSSGrid.css +0 -18
- package/dist/es/src/components/CdsGrid/components/FlexGrid.css +0 -18
- package/dist/es/src/components/CdsHeader/CdsHeader.css +0 -18
- package/dist/es/src/components/CdsHeader/CdsHeader.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsHeader/api/CdsHeader.props.js +1 -1
- package/dist/es/src/components/CdsHighlight/CdsHighlight.css +0 -18
- package/dist/es/src/components/CdsHighlight/api/CdsHighlight.props.js +32 -8
- package/dist/es/src/components/CdsIcon/CdsIcon.css +0 -18
- package/dist/es/src/components/CdsIcon/CdsIcon.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsIcon/api/CdsIcon.props.js +18 -5
- package/dist/es/src/components/CdsImage/CdsImage.css +0 -18
- package/dist/es/src/components/CdsImage/CdsImage.vue_vue_type_script_setup_true_lang.js +21 -1
- package/dist/es/src/components/CdsImage/api/CdsImage.props.js +65 -17
- package/dist/es/src/components/CdsInput/CdsInput.css +0 -18
- package/dist/es/src/components/CdsInput/CdsInput.vue_vue_type_script_setup_true_lang.js +45 -12
- package/dist/es/src/components/CdsInput/api/CdsInput.props.js +49 -13
- package/dist/es/src/components/CdsLabel/CdsLabel.css +0 -18
- package/dist/es/src/components/CdsLabel/api/CdsLabel.props.js +4 -0
- package/dist/es/src/components/CdsLayout/CdsLayout.css +0 -18
- package/dist/es/src/components/CdsLayout/CdsLayout.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/es/src/components/CdsLayout/api/CdsLayout.props.js +6 -2
- package/dist/es/src/components/CdsLink/CdsLink.css +0 -18
- package/dist/es/src/components/CdsLink/CdsLink.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsLink/api/CdsLink.props.js +5 -2
- package/dist/es/src/components/CdsList/CdsList.css +0 -18
- package/dist/es/src/components/CdsList/CdsList.vue_vue_type_script_setup_true_lang.js +25 -7
- package/dist/es/src/components/CdsList/CdsListGroup.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/es/src/components/CdsList/CdsListItem.css +0 -18
- package/dist/es/src/components/CdsList/CdsListItem.vue_vue_type_script_setup_true_lang.js +29 -8
- package/dist/es/src/components/CdsList/CdsListItemAction.vue_vue_type_script_setup_true_lang.js +8 -2
- package/dist/es/src/components/CdsList/CdsListItemMedia.vue_vue_type_script_setup_true_lang.js +8 -2
- package/dist/es/src/components/CdsList/api/CdsList.props.js +149 -38
- package/dist/es/src/components/CdsList/components/ListChildren.vue_vue_type_script_setup_true_lang.js +8 -2
- package/dist/es/src/components/CdsList/index.js +5 -2
- package/dist/es/src/components/CdsLoader/CdsLoader.css +0 -18
- package/dist/es/src/components/CdsLoader/CdsLoader.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsLoader/api/CdsLoader.props.js +12 -3
- package/dist/es/src/components/CdsMain/CdsMain.css +0 -18
- package/dist/es/src/components/CdsMenu/CdsMenu.css +0 -18
- package/dist/es/src/components/CdsMenu/api/CdsMenu.props.js +8 -2
- package/dist/es/src/components/CdsMessages/CdsMessages.css +0 -18
- package/dist/es/src/components/CdsMessages/api/CdsMessages.props.js +12 -3
- package/dist/es/src/components/CdsModal/CdsModal.css +0 -18
- package/dist/es/src/components/CdsModal/api/CdsModal.props.js +8 -2
- package/dist/es/src/components/CdsNotification/CdsNotification.css +0 -18
- package/dist/es/src/components/CdsNotification/CdsNotification.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsNotification/api/CdsNotification.props.js +29 -8
- package/dist/es/src/components/CdsNotificationAlert/CdsNotificationAlert.css +0 -18
- package/dist/es/src/components/CdsNotificationAlert/api/CdsNotificationAlert.props.js +28 -7
- package/dist/es/src/components/CdsOtpInput/CdsOtpInput.css +0 -18
- package/dist/es/src/components/CdsOtpInput/CdsOtpInput.vue_vue_type_script_setup_true_lang.js +21 -6
- package/dist/es/src/components/CdsOtpInput/api/CdsOtpInput.props.js +53 -14
- package/dist/es/src/components/CdsOverlay/CdsOverlay.css +0 -18
- package/dist/es/src/components/CdsOverlay/CdsOverlay.vue_vue_type_script_setup_true_lang.js +45 -12
- package/dist/es/src/components/CdsOverlay/api/CdsOverlay.props.js +37 -9
- package/dist/es/src/components/CdsOverlay/composables/useActivator.js +25 -6
- package/dist/es/src/components/CdsOverlay/composables/useLocationStrategies.js +18 -4
- package/dist/es/src/components/CdsOverlay/composables/useScrollStrategies.js +4 -1
- package/dist/es/src/components/CdsPage/CdsPage.css +0 -18
- package/dist/es/src/components/CdsPage/CdsPage.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsPage/api/CdsPage.props.js +5 -1
- package/dist/es/src/components/CdsPagination/CdsPagination.css +0 -18
- package/dist/es/src/components/CdsPagination/CdsPagination.vue_vue_type_script_setup_true_lang.js +18 -2
- package/dist/es/src/components/CdsPagination/api/CdsPagination.props.js +85 -22
- package/dist/es/src/components/CdsProgressBar/CdsProgressBar.css +0 -18
- package/dist/es/src/components/CdsProgressBar/CdsProgressBar.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsProgressBar/api/CdsProgressBar.props.js +65 -17
- package/dist/es/src/components/CdsProgressBar/composables/useChunk.js +4 -0
- package/dist/es/src/components/CdsProgressCircle/CdsProgressCircle.css +0 -18
- package/dist/es/src/components/CdsProgressCircle/CdsProgressCircle.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsProgressCircle/api/CdsProgressCircle.props.js +29 -8
- package/dist/es/src/components/CdsRadio/CdsRadio.css +0 -18
- package/dist/es/src/components/CdsRadioGroup/CdsRadioGroup.css +0 -18
- package/dist/es/src/components/CdsRadioGroup/api/CdsRadioGroup.props.js +16 -4
- package/dist/es/src/components/CdsResponsive/CdsResponsive.css +0 -18
- package/dist/es/src/components/CdsResponsive/api/CdsResponsive.props.js +12 -3
- package/dist/es/src/components/CdsSelect/CdsSelect.css +0 -18
- package/dist/es/src/components/CdsSelect/CdsSelect.vue_vue_type_script_setup_true_lang.js +17 -5
- package/dist/es/src/components/CdsSelect/api/CdsSelect.props.js +4 -1
- package/dist/es/src/components/CdsSelect/composables/useMenuActivator.js +8 -2
- package/dist/es/src/components/CdsSelect/composables/useSelect.js +69 -17
- package/dist/es/src/components/CdsSelectionControl/CdsSelectionControl.css +0 -18
- package/dist/es/src/components/CdsSelectionControl/CdsSelectionControl.vue_vue_type_script_setup_true_lang.js +8 -0
- package/dist/es/src/components/CdsSelectionControl/api/CdsSelectionControl.props.js +12 -3
- package/dist/es/src/components/CdsSelectionControlGroup/CdsSelectionControlGroup.css +0 -18
- package/dist/es/src/components/CdsSelectionControlGroup/api/CdsSelectionControlGroup.props.js +44 -11
- package/dist/es/src/components/CdsSkeletonLoader/CdsSkeletonLoader.css +0 -18
- package/dist/es/src/components/CdsSkeletonLoader/CdsSkeletonLoader.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsSkeletonLoader/api/CdsSkeletonLoader.props.js +17 -5
- package/dist/es/src/components/CdsSlideGroup/CdsSlideGroup.css +0 -18
- package/dist/es/src/components/CdsSlideGroup/CdsSlideGroup.vue_vue_type_script_setup_true_lang.js +25 -7
- package/dist/es/src/components/CdsSlideGroup/api/CdsSlideGroup.props.js +26 -7
- package/dist/es/src/components/CdsSlideView/CdsSlideView.css +0 -18
- package/dist/es/src/components/CdsSlideView/CdsSlideView.vue_vue_type_script_setup_true_lang.js +4 -0
- package/dist/es/src/components/CdsSlideView/CdsSlideViewItem.vue_vue_type_script_setup_true_lang.js +5 -1
- package/dist/es/src/components/CdsSlideView/api/CdsSlideView.props.js +45 -1
- package/dist/es/src/components/CdsStages/CdsStages.css +0 -18
- package/dist/es/src/components/CdsStages/CdsStages.vue_vue_type_script_setup_true_lang.js +9 -1
- package/dist/es/src/components/CdsStages/api/CdsStages.props.js +9 -3
- package/dist/es/src/components/CdsStatus/CdsStatus.css +0 -18
- package/dist/es/src/components/CdsStatus/CdsStatus.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsStatus/api/CdsStatus.props.js +5 -2
- package/dist/es/src/components/CdsSteps/CdsSteps.css +0 -18
- package/dist/es/src/components/CdsSteps/CdsSteps.vue_vue_type_script_setup_true_lang.js +8 -0
- package/dist/es/src/components/CdsSteps/api/CdsSteps.props.js +45 -12
- package/dist/es/src/components/CdsSurface/CdsSurface.css +0 -18
- package/dist/es/src/components/CdsSurface/CdsSurface.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsSurface/api/CdsSurface.props.js +5 -2
- package/dist/es/src/components/CdsTable/CdsTable.css +0 -18
- package/dist/es/src/components/CdsTable/CdsTable.vue_vue_type_script_setup_true_lang.js +4 -0
- package/dist/es/src/components/CdsTable/api/CdsTable.props.js +1 -1
- package/dist/es/src/components/CdsTable/components/TableProvider.js +2 -2
- package/dist/es/src/components/CdsTable/composable/table.js +47 -0
- package/dist/es/src/components/CdsTabs/CdsTabs.css +0 -18
- package/dist/es/src/components/CdsTabs/api/CdsTabs.props.js +56 -0
- package/dist/es/src/components/CdsTag/CdsTag.css +0 -18
- package/dist/es/src/components/CdsTag/CdsTag.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsTag/api/CdsTag.props.js +72 -18
- package/dist/es/src/components/CdsTagGroup/CdsTagGroup.css +0 -18
- package/dist/es/src/components/CdsTagGroup/CdsTagGroup.vue_vue_type_script_setup_true_lang.js +21 -6
- package/dist/es/src/components/CdsTagGroup/api/CdsTagGroup.props.js +12 -4
- package/dist/es/src/components/CdsTextArea/CdsTextArea.css +0 -18
- package/dist/es/src/components/CdsTextArea/api/CdsTextArea.props.js +52 -13
- package/dist/es/src/components/CdsTextInput/CdsTextInput.css +0 -18
- package/dist/es/src/components/CdsTextInput/api/CdsTextInput.props.js +40 -10
- package/dist/es/src/components/CdsTimePicker/CdsTimePicker.css +0 -18
- package/dist/es/src/components/CdsTimePicker/CdsTimePicker.vue_vue_type_script_setup_true_lang.js +25 -1
- package/dist/es/src/components/CdsTimePicker/api/CdsTimePicker.props.js +33 -9
- package/dist/es/src/components/CdsToast/CdsToast.css +0 -18
- package/dist/es/src/components/CdsToast/CdsToast.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsToast/api/CdsToast.props.js +48 -12
- package/dist/es/src/components/CdsToastQueue/CdsToastQueue.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/es/src/components/CdsToastQueue/api/CdsToastQueue.props.js +28 -7
- package/dist/es/src/components/CdsToggle/CdsToggle.css +0 -18
- package/dist/es/src/components/CdsToggle/api/CdsToggle.props.js +12 -3
- package/dist/es/src/components/CdsToolbar/CdsToolbar.css +0 -18
- package/dist/es/src/components/CdsToolbar/CdsToolbar.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/src/components/CdsToolbar/api/CdsToolbar.props.js +21 -6
- package/dist/es/src/components/CdsTooltip/CdsTooltip.css +0 -18
- package/dist/es/src/components/CdsTooltip/api/CdsTooltip.props.js +20 -5
- package/dist/es/src/components/CdsTree/CdsTree.css +0 -18
- package/dist/es/src/components/CdsTree/CdsTree.vue_vue_type_script_setup_true_lang.js +17 -1
- package/dist/es/src/components/CdsTree/api/CdsTree.props.js +1 -1
- package/dist/es/src/components/CdsTree/composable/tree.js +28 -0
- package/dist/es/src/components/CdsTree/composable/treeNode.js +72 -2
- package/dist/es/src/components/CdsUploader/CdsUploader.css +0 -18
- package/dist/es/src/components/CdsUploader/CdsUploader.vue_vue_type_script_setup_true_lang.js +9 -1
- package/dist/es/src/components/CdsUploader/composables/useUpload.js +104 -26
- package/dist/es/src/components/CdsVirtualScroll/CdsVirtualScroll.css +0 -18
- package/dist/es/src/components/CdsVirtualScroll/CdsVirtualScroll.vue_vue_type_script_setup_true_lang.js +8 -0
- package/dist/es/src/components/CdsVirtualScroll/api/CdsVirtualScroll.props.js +12 -3
- package/dist/es/src/components/index.js +2 -1
- package/dist/es/src/composables/useAppearance/useAppearance.js +4 -1
- package/dist/es/src/composables/useColor/useColor.js +20 -5
- package/dist/es/src/composables/useDatetime/useDatetime.js +3 -0
- package/dist/es/src/composables/useDelay/useDelay.js +8 -2
- package/dist/es/src/composables/useDimensions/useDimensions.js +24 -6
- package/dist/es/src/composables/useDirection/useDirection.js +4 -1
- package/dist/es/src/composables/useDisabled/index.js +1 -1
- package/dist/es/src/composables/useDisabled/useDisabled.js +4 -1
- package/dist/es/src/composables/useDisplay/useDisplay.js +2 -0
- package/dist/es/src/composables/useFilter/useFilter.js +20 -0
- package/dist/es/src/composables/useFocus/useFocus.js +12 -3
- package/dist/es/src/composables/useFocus/useFocusTrap.js +11 -5
- package/dist/es/src/composables/useForm/useForm.js +46 -1
- package/dist/es/src/composables/useGoTo/useGoTo.js +1 -1
- package/dist/es/src/composables/useGroup/useGroup.js +24 -6
- package/dist/es/src/composables/useGroup/useGroupItem.js +8 -2
- package/dist/es/src/composables/useHydration/useHydration.js +1 -1
- package/dist/es/src/composables/useItems/useItems.js +32 -8
- package/dist/es/src/composables/useLayout/useLayout.js +25 -7
- package/dist/es/src/composables/useLazy/useLazy.js +1 -0
- package/dist/es/src/composables/useLoader/index.js +1 -1
- package/dist/es/src/composables/useLoader/useLoader.js +4 -1
- package/dist/es/src/composables/useLocation/index.js +1 -1
- package/dist/es/src/composables/useLocation/useLocation.js +4 -1
- package/dist/es/src/composables/useNested/useNested.js +44 -11
- package/dist/es/src/composables/usePosition/usePosition.js +4 -0
- package/dist/es/src/composables/useReadonly/useReadonly.js +4 -1
- package/dist/es/src/composables/useReveal/useReveal.js +4 -1
- package/dist/es/src/composables/useRouter/index.js +1 -1
- package/dist/es/src/composables/useRouter/useRouter.js +16 -4
- package/dist/es/src/composables/useRules/useRules.js +1 -1
- package/dist/es/src/composables/useSize/useSize.js +4 -1
- package/dist/es/src/composables/useStatus/useStatus.js +4 -1
- package/dist/es/src/composables/useText/useText.js +8 -2
- package/dist/es/src/composables/useTheme/useTheme.js +4 -1
- package/dist/es/src/composables/useTransition/useTransition.js +4 -1
- package/dist/es/src/composables/useValidation/useValidation.js +27 -7
- package/dist/es/src/composables/useVirtual/useVirtual.js +13 -4
- package/dist/es/src/core/defineComponent.js +4 -1
- package/dist/es/src/locales/adapters/cdsLocaleAdapter.js +1 -1
- package/dist/es/src/themes/lumaDark.js +8 -4
- package/dist/es/src/utils/date/date.js +4 -4
- package/dist/esm-node/entry.css +0 -18
- package/dist/esm-node/entry.mjs +34 -29
- package/dist/esm-node/src/assets/icons/cdsLegacy.mjs +1 -1
- package/dist/esm-node/src/cds.mjs +6 -6
- package/dist/esm-node/src/components/CdsApp/CdsApp.css +0 -18
- package/dist/esm-node/src/components/CdsApp/CdsApp.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsApp/api/CdsApp.props.mjs +2 -1
- package/dist/esm-node/src/components/CdsAutocomplete/CdsAutocomplete.css +0 -18
- package/dist/esm-node/src/components/CdsAutocomplete/CdsAutocomplete.vue_vue_type_script_setup_true_lang.mjs +24 -9
- package/dist/esm-node/src/components/CdsAutocomplete/api/CdsAutocomplete.props.mjs +10 -3
- package/dist/esm-node/src/components/CdsAvatar/CdsAvatar.css +0 -18
- package/dist/esm-node/src/components/CdsAvatar/CdsAvatar.vue_vue_type_script_setup_true_lang.mjs +3 -3
- package/dist/esm-node/src/components/CdsAvatar/api/CdsAvatar.props.mjs +21 -6
- package/dist/esm-node/src/components/CdsBadge/CdsBadge.css +0 -18
- package/dist/esm-node/src/components/CdsBadge/CdsBadge.vue_vue_type_script_setup_true_lang.mjs +3 -3
- package/dist/esm-node/src/components/CdsBadge/api/CdsBadge.props.mjs +39 -11
- package/dist/esm-node/src/components/CdsBreadcrumbs/CdsBreadcrumbs.css +0 -18
- package/dist/esm-node/src/components/CdsBreadcrumbs/CdsBreadcrumbs.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsBreadcrumbs/CdsBreadcrumbsDivider.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsBreadcrumbs/CdsBreadcrumbsItem.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsBreadcrumbs/api/CdsBreadcrumbs.props.mjs +33 -9
- package/dist/esm-node/src/components/CdsButton/CdsButton.css +0 -18
- package/dist/esm-node/src/components/CdsButton/CdsButton.vue_vue_type_script_setup_true_lang.mjs +6 -3
- package/dist/esm-node/src/components/CdsButton/api/CdsButton.props.mjs +30 -9
- package/dist/esm-node/src/components/CdsButtonGroup/CdsButtonGroup.css +0 -18
- package/dist/esm-node/src/components/CdsButtonGroup/CdsButtonGroup.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsButtonGroup/api/CdsButtonGroup.props.mjs +6 -3
- package/dist/esm-node/src/components/CdsButtonToggle/CdsButtonToggle.css +0 -18
- package/dist/esm-node/src/components/CdsButtonToggle/CdsButtonToggle.vue_vue_type_script_setup_true_lang.mjs +21 -6
- package/dist/esm-node/src/components/CdsButtonToggle/api/CdsButtonToggle.props.mjs +1 -1
- package/dist/esm-node/src/components/CdsCard/CdsCard.css +0 -18
- package/dist/esm-node/src/components/CdsCard/CdsCard.vue_vue_type_script_setup_true_lang.mjs +3 -3
- package/dist/esm-node/src/components/CdsCard/CdsCardActions.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsCard/CdsCardDivider.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsCard/CdsCardGroup.vue_vue_type_script_setup_true_lang.mjs +22 -7
- package/dist/esm-node/src/components/CdsCard/CdsCardItem.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsCard/CdsCardSubtitle.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsCard/CdsCardText.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsCard/CdsCardTitle.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsCard/api/CdsCard.props.mjs +85 -21
- package/dist/esm-node/src/components/CdsCarousel/CdsCarousel.css +0 -18
- package/dist/esm-node/src/components/CdsCarousel/CdsCarousel.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsCarousel/CdsCarouselItem.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsCarousel/api/CdsCarousel.props.mjs +36 -9
- package/dist/esm-node/src/components/CdsCheckbox/CdsCheckbox.css +0 -18
- package/dist/esm-node/src/components/CdsCheckbox/CdsCheckbox.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsCheckbox/api/CdsCheckbox.props.mjs +1 -1
- package/dist/esm-node/src/components/CdsCheckboxButton/CdsCheckboxButton.css +0 -18
- package/dist/esm-node/src/components/CdsCheckboxButton/CdsCheckboxButton.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsCheckboxButton/api/CdsCheckboxButton.props.mjs +8 -2
- package/dist/esm-node/src/components/CdsCombobox/CdsCombobox.css +0 -18
- package/dist/esm-node/src/components/CdsCombobox/CdsCombobox.vue_vue_type_script_setup_true_lang.mjs +28 -10
- package/dist/esm-node/src/components/CdsCombobox/api/CdsCombobox.props.mjs +14 -4
- package/dist/esm-node/src/components/CdsCounter/CdsCounter.css +0 -18
- package/dist/esm-node/src/components/CdsCounter/CdsCounter.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsCounter/api/CdsCounter.props.mjs +12 -3
- package/dist/esm-node/src/components/CdsDateInput/CdsDateInput.css +0 -18
- package/dist/esm-node/src/components/CdsDateInput/CdsDateInput.vue_vue_type_script_setup_true_lang.mjs +11 -3
- package/dist/esm-node/src/components/CdsDateInput/api/CdsDateInput.props.mjs +32 -8
- package/dist/esm-node/src/components/CdsDatePicker/CdsDatePicker.css +0 -18
- package/dist/esm-node/src/components/CdsDatePicker/CdsDatePicker.vue_vue_type_script_setup_true_lang.mjs +23 -3
- package/dist/esm-node/src/components/CdsDatePicker/api/CdsDatePicker.props.mjs +65 -16
- package/dist/esm-node/src/components/CdsDatePicker/composables/useCalendar.mjs +3 -3
- package/dist/esm-node/src/components/CdsDefaultsProvider/api/CdsDefaultsProvider.props.mjs +5 -0
- package/dist/esm-node/src/components/CdsDescription/CdsDescription.css +0 -18
- package/dist/esm-node/src/components/CdsDescription/CdsDescription.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsDivider/CdsDivider.css +0 -18
- package/dist/esm-node/src/components/CdsDivider/CdsDivider.vue_vue_type_script_setup_true_lang.mjs +3 -3
- package/dist/esm-node/src/components/CdsDivider/api/CdsDivider.props.mjs +33 -8
- package/dist/esm-node/src/components/CdsDrawer/CdsDrawer.css +0 -18
- package/dist/esm-node/src/components/CdsDrawer/CdsDrawer.vue_vue_type_script_setup_true_lang.mjs +8 -4
- package/dist/esm-node/src/components/CdsDrawer/api/CdsDrawer.props.mjs +34 -10
- package/dist/esm-node/src/components/CdsEmptyState/CdsEmptyState.css +0 -18
- package/dist/esm-node/src/components/CdsEmptyState/CdsEmptyState.vue_vue_type_script_setup_true_lang.mjs +5 -5
- package/dist/esm-node/src/components/CdsEmptyState/api/CdsEmptyState.props.mjs +35 -10
- package/dist/esm-node/src/components/CdsExpandablePanel/CdsExpandablePanel.vue_vue_type_script_setup_true_lang.mjs +17 -5
- package/dist/esm-node/src/components/CdsExpandablePanel/CdsExpandablePanelContent.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsExpandablePanel/CdsExpandablePanelTitle.vue_vue_type_script_setup_true_lang.mjs +9 -3
- package/dist/esm-node/src/components/CdsExpandablePanel/CdsExpandablePanels.css +0 -18
- package/dist/esm-node/src/components/CdsExpandablePanel/CdsExpandablePanels.vue_vue_type_script_setup_true_lang.mjs +11 -5
- package/dist/esm-node/src/components/CdsExpandablePanel/api/CdsExpandablePanel.props.mjs +40 -11
- package/dist/esm-node/src/components/CdsField/CdsField.css +1 -19
- package/dist/esm-node/src/components/CdsField/CdsField.vue_vue_type_script_setup_true_lang.mjs +19 -5
- package/dist/esm-node/src/components/CdsField/api/CdsField.props.mjs +58 -16
- package/dist/esm-node/src/components/CdsField/composables/useAutocomplete.mjs +1 -0
- package/dist/esm-node/src/components/CdsFileInput/CdsFileInput.css +0 -18
- package/dist/esm-node/src/components/CdsFileInput/CdsFileInput.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsFileInput/api/CdsFileInput.props.mjs +41 -11
- package/dist/esm-node/src/components/CdsFileInput/composables/useFileFilter.mjs +4 -1
- package/dist/esm-node/src/components/CdsFileUpload/CdsFileUpload.css +0 -18
- package/dist/esm-node/src/components/CdsFileUpload/CdsFileUpload.vue_vue_type_script_setup_true_lang.mjs +7 -3
- package/dist/esm-node/src/components/CdsFileUpload/CdsFileUploadDropzone.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsFileUpload/CdsFileUploadItem.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsFileUpload/CdsFileUploadList.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsFileUpload/api/CdsFileUpload.props.mjs +86 -22
- package/dist/esm-node/src/components/CdsFooter/CdsFooter.css +0 -18
- package/dist/esm-node/src/components/CdsFooter/CdsFooter.vue_vue_type_script_setup_true_lang.mjs +4 -4
- package/dist/esm-node/src/components/CdsFooter/api/CdsFooter.props.mjs +2 -2
- package/dist/esm-node/src/components/CdsForm/CdsForm.css +0 -18
- package/dist/esm-node/src/components/CdsForm/CdsForm.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsForm/api/CdsForm.props.mjs +9 -3
- package/dist/esm-node/src/components/CdsFunctionalButton/CdsFunctionalButton.css +0 -18
- package/dist/esm-node/src/components/CdsFunctionalButton/api/CdsFunctionalButton.props.mjs +6 -3
- package/dist/esm-node/src/components/CdsGrid/CdsCol.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsGrid/CdsRow.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsGrid/api/CdsGrid.props.mjs +41 -11
- package/dist/esm-node/src/components/CdsGrid/components/CSSGrid.css +0 -18
- package/dist/esm-node/src/components/CdsGrid/components/CSSGrid.mjs +1 -1
- package/dist/esm-node/src/components/CdsGrid/components/FlexGrid.css +0 -18
- package/dist/esm-node/src/components/CdsGrid/components/FlexGrid.mjs +1 -1
- package/dist/esm-node/src/components/CdsHeader/CdsHeader.css +0 -18
- package/dist/esm-node/src/components/CdsHeader/CdsHeader.vue_vue_type_script_setup_true_lang.mjs +3 -3
- package/dist/esm-node/src/components/CdsHeader/api/CdsHeader.props.mjs +2 -2
- package/dist/esm-node/src/components/CdsHighlight/CdsHighlight.css +0 -18
- package/dist/esm-node/src/components/CdsHighlight/CdsHighlight.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsHighlight/api/CdsHighlight.props.mjs +32 -8
- package/dist/esm-node/src/components/CdsHighlight/utils/toHighlight.mjs +1 -1
- package/dist/esm-node/src/components/CdsIcon/CdsIcon.css +0 -18
- package/dist/esm-node/src/components/CdsIcon/CdsIcon.vue_vue_type_script_setup_true_lang.mjs +3 -3
- package/dist/esm-node/src/components/CdsIcon/api/CdsIcon.props.mjs +18 -5
- package/dist/esm-node/src/components/CdsImage/CdsImage.css +0 -18
- package/dist/esm-node/src/components/CdsImage/CdsImage.vue_vue_type_script_setup_true_lang.mjs +24 -4
- package/dist/esm-node/src/components/CdsImage/api/CdsImage.props.mjs +65 -17
- package/dist/esm-node/src/components/CdsInput/CdsInput.css +0 -18
- package/dist/esm-node/src/components/CdsInput/CdsInput.vue_vue_type_script_setup_true_lang.mjs +46 -13
- package/dist/esm-node/src/components/CdsInput/CdsInputIcon.mjs +1 -1
- package/dist/esm-node/src/components/CdsInput/api/CdsInput.props.mjs +50 -14
- package/dist/esm-node/src/components/CdsLabel/CdsLabel.css +0 -18
- package/dist/esm-node/src/components/CdsLabel/CdsLabel.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsLabel/api/CdsLabel.props.mjs +5 -1
- package/dist/esm-node/src/components/CdsLayout/CdsLayout.css +0 -18
- package/dist/esm-node/src/components/CdsLayout/CdsLayout.vue_vue_type_script_setup_true_lang.mjs +5 -5
- package/dist/esm-node/src/components/CdsLayout/api/CdsLayout.props.mjs +6 -2
- package/dist/esm-node/src/components/CdsLayout/internal/LayoutResizeObserver.mjs +1 -1
- package/dist/esm-node/src/components/CdsLayout/internal/LayoutScrollObserver.mjs +2 -2
- package/dist/esm-node/src/components/CdsLink/CdsLink.css +0 -18
- package/dist/esm-node/src/components/CdsLink/CdsLink.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsLink/api/CdsLink.props.mjs +5 -2
- package/dist/esm-node/src/components/CdsList/CdsList.css +0 -18
- package/dist/esm-node/src/components/CdsList/CdsList.vue_vue_type_script_setup_true_lang.mjs +28 -10
- package/dist/esm-node/src/components/CdsList/CdsListGroup.vue_vue_type_script_setup_true_lang.mjs +6 -3
- package/dist/esm-node/src/components/CdsList/CdsListItem.css +0 -18
- package/dist/esm-node/src/components/CdsList/CdsListItem.vue_vue_type_script_setup_true_lang.mjs +32 -11
- package/dist/esm-node/src/components/CdsList/CdsListItemAction.vue_vue_type_script_setup_true_lang.mjs +9 -3
- package/dist/esm-node/src/components/CdsList/CdsListItemDivider.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsList/CdsListItemMedia.vue_vue_type_script_setup_true_lang.mjs +9 -3
- package/dist/esm-node/src/components/CdsList/CdsListSubheader.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsList/api/CdsList.constants.mjs +4 -4
- package/dist/esm-node/src/components/CdsList/api/CdsList.props.mjs +151 -40
- package/dist/esm-node/src/components/CdsList/components/ListChildren.vue_vue_type_script_setup_true_lang.mjs +8 -2
- package/dist/esm-node/src/components/CdsList/composables/useList.mjs +1 -1
- package/dist/esm-node/src/components/CdsList/index.mjs +5 -2
- package/dist/esm-node/src/components/CdsLoader/CdsLoader.css +0 -18
- package/dist/esm-node/src/components/CdsLoader/CdsLoader.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsLoader/api/CdsLoader.props.mjs +12 -3
- package/dist/esm-node/src/components/CdsMain/CdsMain.css +0 -18
- package/dist/esm-node/src/components/CdsMain/CdsMain.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsMenu/CdsMenu.css +0 -18
- package/dist/esm-node/src/components/CdsMenu/CdsMenu.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsMenu/api/CdsMenu.props.mjs +9 -3
- package/dist/esm-node/src/components/CdsMessages/CdsMessages.css +0 -18
- package/dist/esm-node/src/components/CdsMessages/CdsMessages.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsMessages/api/CdsMessages.props.mjs +12 -3
- package/dist/esm-node/src/components/CdsModal/CdsModal.css +0 -18
- package/dist/esm-node/src/components/CdsModal/CdsModal.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsModal/api/CdsModal.props.mjs +8 -2
- package/dist/esm-node/src/components/CdsNotification/CdsNotification.css +0 -18
- package/dist/esm-node/src/components/CdsNotification/CdsNotification.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsNotification/api/CdsNotification.props.mjs +30 -9
- package/dist/esm-node/src/components/CdsNotificationAlert/CdsNotificationAlert.css +0 -18
- package/dist/esm-node/src/components/CdsNotificationAlert/CdsNotificationAlert.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsNotificationAlert/api/CdsNotificationAlert.props.mjs +29 -8
- package/dist/esm-node/src/components/CdsOtpInput/CdsOtpField.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsOtpInput/CdsOtpGroup.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsOtpInput/CdsOtpInput.css +0 -18
- package/dist/esm-node/src/components/CdsOtpInput/CdsOtpInput.vue_vue_type_script_setup_true_lang.mjs +23 -8
- package/dist/esm-node/src/components/CdsOtpInput/CdsOtpSeparator.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsOtpInput/api/CdsOtpInput.props.mjs +53 -14
- package/dist/esm-node/src/components/CdsOverlay/CdsOverlay.css +0 -18
- package/dist/esm-node/src/components/CdsOverlay/CdsOverlay.vue_vue_type_script_setup_true_lang.mjs +50 -17
- package/dist/esm-node/src/components/CdsOverlay/api/CdsOverlay.props.mjs +37 -9
- package/dist/esm-node/src/components/CdsOverlay/components/Scrim.mjs +1 -1
- package/dist/esm-node/src/components/CdsOverlay/composables/useActivator.mjs +27 -8
- package/dist/esm-node/src/components/CdsOverlay/composables/useLocationStrategies.mjs +21 -7
- package/dist/esm-node/src/components/CdsOverlay/composables/useScrollStrategies.mjs +7 -4
- package/dist/esm-node/src/components/CdsPage/CdsPage.css +0 -18
- package/dist/esm-node/src/components/CdsPage/CdsPage.vue_vue_type_script_setup_true_lang.mjs +3 -3
- package/dist/esm-node/src/components/CdsPage/api/CdsPage.props.mjs +5 -1
- package/dist/esm-node/src/components/CdsPagination/CdsPagination.css +0 -18
- package/dist/esm-node/src/components/CdsPagination/CdsPagination.vue_vue_type_script_setup_true_lang.mjs +20 -4
- package/dist/esm-node/src/components/CdsPagination/api/CdsPagination.props.mjs +85 -22
- package/dist/esm-node/src/components/CdsProgressBar/CdsProgressBar.css +0 -18
- package/dist/esm-node/src/components/CdsProgressBar/CdsProgressBar.vue_vue_type_script_setup_true_lang.mjs +3 -3
- package/dist/esm-node/src/components/CdsProgressBar/api/CdsProgressBar.props.mjs +65 -17
- package/dist/esm-node/src/components/CdsProgressBar/composables/useChunk.mjs +5 -1
- package/dist/esm-node/src/components/CdsProgressCircle/CdsProgressCircle.css +0 -18
- package/dist/esm-node/src/components/CdsProgressCircle/CdsProgressCircle.vue_vue_type_script_setup_true_lang.mjs +4 -4
- package/dist/esm-node/src/components/CdsProgressCircle/api/CdsProgressCircle.props.mjs +29 -8
- package/dist/esm-node/src/components/CdsRadio/CdsRadio.css +0 -18
- package/dist/esm-node/src/components/CdsRadio/CdsRadio.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsRadioGroup/CdsRadioGroup.css +0 -18
- package/dist/esm-node/src/components/CdsRadioGroup/CdsRadioGroup.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsRadioGroup/api/CdsRadioGroup.props.mjs +17 -5
- package/dist/esm-node/src/components/CdsResponsive/CdsResponsive.css +0 -18
- package/dist/esm-node/src/components/CdsResponsive/CdsResponsive.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsResponsive/api/CdsResponsive.props.mjs +12 -3
- package/dist/esm-node/src/components/CdsResponsive/composables/useAspectStyles.mjs +1 -1
- package/dist/esm-node/src/components/CdsSelect/CdsSelect.css +0 -18
- package/dist/esm-node/src/components/CdsSelect/CdsSelect.vue_vue_type_script_setup_true_lang.mjs +20 -8
- package/dist/esm-node/src/components/CdsSelect/api/CdsSelect.props.mjs +5 -2
- package/dist/esm-node/src/components/CdsSelect/composables/useMenuActivator.mjs +8 -2
- package/dist/esm-node/src/components/CdsSelect/composables/useSelect.mjs +69 -17
- package/dist/esm-node/src/components/CdsSelectionControl/CdsSelectionControl.css +0 -18
- package/dist/esm-node/src/components/CdsSelectionControl/CdsSelectionControl.vue_vue_type_script_setup_true_lang.mjs +10 -2
- package/dist/esm-node/src/components/CdsSelectionControl/api/CdsSelectionControl.props.mjs +13 -4
- package/dist/esm-node/src/components/CdsSelectionControl/composables/useSelectionControl.mjs +1 -1
- package/dist/esm-node/src/components/CdsSelectionControlGroup/CdsSelectionControlGroup.css +0 -18
- package/dist/esm-node/src/components/CdsSelectionControlGroup/CdsSelectionControlGroup.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsSelectionControlGroup/api/CdsSelectionControlGroup.props.mjs +45 -12
- package/dist/esm-node/src/components/CdsSkeletonLoader/CdsSkeletonLoader.css +0 -18
- package/dist/esm-node/src/components/CdsSkeletonLoader/CdsSkeletonLoader.vue_vue_type_script_setup_true_lang.mjs +3 -3
- package/dist/esm-node/src/components/CdsSkeletonLoader/api/CdsSkeletonLoader.props.mjs +17 -5
- package/dist/esm-node/src/components/CdsSlideGroup/CdsSlideGroup.css +0 -18
- package/dist/esm-node/src/components/CdsSlideGroup/CdsSlideGroup.vue_vue_type_script_setup_true_lang.mjs +28 -10
- package/dist/esm-node/src/components/CdsSlideGroup/api/CdsSlideGroup.props.mjs +26 -7
- package/dist/esm-node/src/components/CdsSlideView/CdsSlideView.css +0 -18
- package/dist/esm-node/src/components/CdsSlideView/CdsSlideView.vue_vue_type_script_setup_true_lang.mjs +8 -4
- package/dist/esm-node/src/components/CdsSlideView/CdsSlideViewItem.vue_vue_type_script_setup_true_lang.mjs +7 -3
- package/dist/esm-node/src/components/CdsSlideView/api/CdsSlideView.props.mjs +45 -1
- package/dist/esm-node/src/components/CdsStages/CdsStages.css +0 -18
- package/dist/esm-node/src/components/CdsStages/CdsStages.vue_vue_type_script_setup_true_lang.mjs +10 -2
- package/dist/esm-node/src/components/CdsStages/api/CdsStages.props.mjs +9 -3
- package/dist/esm-node/src/components/CdsStatus/CdsStatus.css +0 -18
- package/dist/esm-node/src/components/CdsStatus/CdsStatus.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsStatus/api/CdsStatus.props.mjs +5 -2
- package/dist/esm-node/src/components/CdsSteps/CdsSteps.css +0 -18
- package/dist/esm-node/src/components/CdsSteps/CdsSteps.vue_vue_type_script_setup_true_lang.mjs +10 -2
- package/dist/esm-node/src/components/CdsSteps/CdsStepsActions.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsSteps/CdsStepsItem.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsSteps/CdsStepsView.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsSteps/CdsStepsViewItem.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsSteps/api/CdsSteps.props.mjs +46 -13
- package/dist/esm-node/src/components/CdsSurface/CdsSurface.css +0 -18
- package/dist/esm-node/src/components/CdsSurface/CdsSurface.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsSurface/api/CdsSurface.props.mjs +5 -2
- package/dist/esm-node/src/components/CdsTable/CdsTable.css +0 -18
- package/dist/esm-node/src/components/CdsTable/CdsTable.vue_vue_type_script_setup_true_lang.mjs +4 -0
- package/dist/esm-node/src/components/CdsTable/api/CdsTable.props.mjs +1 -1
- package/dist/esm-node/src/components/CdsTable/components/Body/BodyRow.mjs +2 -2
- package/dist/esm-node/src/components/CdsTable/components/Cell/Cell.mjs +6 -6
- package/dist/esm-node/src/components/CdsTable/components/Drag/ColumnDragHandle.mjs +1 -1
- package/dist/esm-node/src/components/CdsTable/components/Drag/RowDragHandle.mjs +1 -1
- package/dist/esm-node/src/components/CdsTable/components/Filter/FilterDropdown.mjs +3 -3
- package/dist/esm-node/src/components/CdsTable/components/FixedHolder/FixedHolder.mjs +2 -2
- package/dist/esm-node/src/components/CdsTable/components/Header/DragHandle.mjs +4 -4
- package/dist/esm-node/src/components/CdsTable/components/Header/Header.mjs +1 -1
- package/dist/esm-node/src/components/CdsTable/components/Header/HeaderRow.mjs +1 -1
- package/dist/esm-node/src/components/CdsTable/components/ResizeObserver/ResizeObserver.mjs +1 -1
- package/dist/esm-node/src/components/CdsTable/components/StickyScrollbar/StickyScrollbar.mjs +3 -3
- package/dist/esm-node/src/components/CdsTable/components/Table/InternalTable.mjs +4 -4
- package/dist/esm-node/src/components/CdsTable/components/TableProvider.mjs +6 -6
- package/dist/esm-node/src/components/CdsTable/composable/columns.mjs +1 -1
- package/dist/esm-node/src/components/CdsTable/composable/filter.mjs +1 -1
- package/dist/esm-node/src/components/CdsTable/composable/frame.mjs +1 -1
- package/dist/esm-node/src/components/CdsTable/composable/pagination.mjs +2 -2
- package/dist/esm-node/src/components/CdsTable/composable/scroll.mjs +3 -3
- package/dist/esm-node/src/components/CdsTable/composable/selection.mjs +2 -2
- package/dist/esm-node/src/components/CdsTable/composable/sorter.mjs +1 -1
- package/dist/esm-node/src/components/CdsTable/composable/sticky.mjs +1 -1
- package/dist/esm-node/src/components/CdsTable/composable/table.mjs +47 -0
- package/dist/esm-node/src/components/CdsTable/context/sticky.mjs +1 -1
- package/dist/esm-node/src/components/CdsTable/utils/column.mjs +1 -1
- package/dist/esm-node/src/components/CdsTabs/CdsTab.vue_vue_type_script_setup_true_lang.mjs +3 -3
- package/dist/esm-node/src/components/CdsTabs/CdsTabs.css +0 -18
- package/dist/esm-node/src/components/CdsTabs/CdsTabs.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsTabs/CdsTabsView.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsTabs/CdsTabsViewItem.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsTabs/api/CdsTabs.props.mjs +57 -1
- package/dist/esm-node/src/components/CdsTag/CdsTag.css +0 -18
- package/dist/esm-node/src/components/CdsTag/CdsTag.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsTag/api/CdsTag.props.mjs +73 -19
- package/dist/esm-node/src/components/CdsTagGroup/CdsTagGroup.css +0 -18
- package/dist/esm-node/src/components/CdsTagGroup/CdsTagGroup.vue_vue_type_script_setup_true_lang.mjs +22 -7
- package/dist/esm-node/src/components/CdsTagGroup/api/CdsTagGroup.props.mjs +13 -5
- package/dist/esm-node/src/components/CdsTextArea/CdsTextArea.css +0 -18
- package/dist/esm-node/src/components/CdsTextArea/CdsTextArea.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsTextArea/api/CdsTextArea.props.mjs +53 -14
- package/dist/esm-node/src/components/CdsTextInput/CdsTextInput.css +0 -18
- package/dist/esm-node/src/components/CdsTextInput/CdsTextInput.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsTextInput/api/CdsTextInput.props.mjs +41 -11
- package/dist/esm-node/src/components/CdsTimePicker/CdsTimePicker.css +0 -18
- package/dist/esm-node/src/components/CdsTimePicker/CdsTimePicker.vue_vue_type_script_setup_true_lang.mjs +27 -3
- package/dist/esm-node/src/components/CdsTimePicker/api/CdsTimePicker.props.mjs +33 -9
- package/dist/esm-node/src/components/CdsTimePicker/composables/useTime.mjs +1 -1
- package/dist/esm-node/src/components/CdsToast/CdsToast.css +0 -18
- package/dist/esm-node/src/components/CdsToast/CdsToast.vue_vue_type_script_setup_true_lang.mjs +3 -3
- package/dist/esm-node/src/components/CdsToast/api/CdsToast.props.mjs +49 -13
- package/dist/esm-node/src/components/CdsToastQueue/CdsToastQueue.vue_vue_type_script_setup_true_lang.mjs +5 -2
- package/dist/esm-node/src/components/CdsToastQueue/api/CdsToastQueue.props.mjs +29 -8
- package/dist/esm-node/src/components/CdsToastQueue/composables/useDocumentVisibility.mjs +1 -1
- package/dist/esm-node/src/components/CdsToggle/CdsToggle.css +0 -18
- package/dist/esm-node/src/components/CdsToggle/CdsToggle.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsToggle/api/CdsToggle.props.mjs +13 -4
- package/dist/esm-node/src/components/CdsToolbar/CdsToolbar.css +0 -18
- package/dist/esm-node/src/components/CdsToolbar/CdsToolbar.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsToolbar/CdsToolbarTitle.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsToolbar/api/CdsToolbar.props.mjs +22 -7
- package/dist/esm-node/src/components/CdsTooltip/CdsTooltip.css +0 -18
- package/dist/esm-node/src/components/CdsTooltip/CdsTooltip.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsTooltip/api/CdsTooltip.props.mjs +21 -6
- package/dist/esm-node/src/components/CdsTree/CdsTree.css +0 -18
- package/dist/esm-node/src/components/CdsTree/CdsTree.vue_vue_type_script_setup_true_lang.mjs +19 -3
- package/dist/esm-node/src/components/CdsTree/CdsTreeDirectory.vue_vue_type_script_lang.mjs +3 -3
- package/dist/esm-node/src/components/CdsTree/CdsTreeNode.vue_vue_type_script_lang.mjs +3 -3
- package/dist/esm-node/src/components/CdsTree/api/CdsTree.props.mjs +1 -1
- package/dist/esm-node/src/components/CdsTree/components/DropIndicator.mjs +1 -1
- package/dist/esm-node/src/components/CdsTree/components/NodeList.mjs +1 -1
- package/dist/esm-node/src/components/CdsTree/components/SwitcherIcon.mjs +2 -2
- package/dist/esm-node/src/components/CdsTree/components/TreeProvider.mjs +4 -4
- package/dist/esm-node/src/components/CdsTree/components/VirtualList/Filler.mjs +1 -1
- package/dist/esm-node/src/components/CdsTree/components/VirtualList/Item.mjs +1 -1
- package/dist/esm-node/src/components/CdsTree/components/VirtualList/ResizeObserver.mjs +1 -1
- package/dist/esm-node/src/components/CdsTree/components/VirtualList/ScrollBar.mjs +2 -2
- package/dist/esm-node/src/components/CdsTree/components/VirtualList/VirtualList.mjs +2 -2
- package/dist/esm-node/src/components/CdsTree/components/VirtualList/features/useFrameWheel.mjs +1 -1
- package/dist/esm-node/src/components/CdsTree/components/VirtualList/features/useHeights.mjs +1 -1
- package/dist/esm-node/src/components/CdsTree/components/VirtualList/features/useMobileTouchMove.mjs +1 -1
- package/dist/esm-node/src/components/CdsTree/composable/tree.mjs +28 -0
- package/dist/esm-node/src/components/CdsTree/composable/treeNode.mjs +72 -2
- package/dist/esm-node/src/components/CdsTree/utils/data.mjs +3 -3
- package/dist/esm-node/src/components/CdsUploader/CdsUploader.css +0 -18
- package/dist/esm-node/src/components/CdsUploader/CdsUploader.vue_vue_type_script_setup_true_lang.mjs +10 -2
- package/dist/esm-node/src/components/CdsUploader/components/AjaxUploader.vue_vue_type_script_setup_true_lang.mjs +2 -2
- package/dist/esm-node/src/components/CdsUploader/composables/useUpload.mjs +104 -26
- package/dist/esm-node/src/components/CdsVirtualScroll/CdsVirtualScroll.css +0 -18
- package/dist/esm-node/src/components/CdsVirtualScroll/CdsVirtualScroll.vue_vue_type_script_setup_true_lang.mjs +12 -4
- package/dist/esm-node/src/components/CdsVirtualScroll/CdsVirtualScrollItem.vue_vue_type_script_setup_true_lang.mjs +1 -1
- package/dist/esm-node/src/components/CdsVirtualScroll/api/CdsVirtualScroll.props.mjs +12 -3
- package/dist/esm-node/src/components/index.mjs +2 -1
- package/dist/esm-node/src/composables/useAppearance/useAppearance.mjs +4 -1
- package/dist/esm-node/src/composables/useColor/useColor.mjs +21 -6
- package/dist/esm-node/src/composables/useDatetime/useDatetime.mjs +5 -2
- package/dist/esm-node/src/composables/useDelay/useDelay.mjs +8 -2
- package/dist/esm-node/src/composables/useDimensions/useDimensions.mjs +25 -7
- package/dist/esm-node/src/composables/useDirection/useDirection.mjs +4 -1
- package/dist/esm-node/src/composables/useDisabled/useDisabled.mjs +4 -1
- package/dist/esm-node/src/composables/useDisplay/internal/useDisplay.helpers.mjs +1 -1
- package/dist/esm-node/src/composables/useDisplay/useDisplay.mjs +3 -1
- package/dist/esm-node/src/composables/useFilter/useFilter.mjs +21 -1
- package/dist/esm-node/src/composables/useFocus/useFocus.mjs +13 -4
- package/dist/esm-node/src/composables/useFocus/useFocusGroup.mjs +1 -1
- package/dist/esm-node/src/composables/useFocus/useFocusTrap.mjs +13 -7
- package/dist/esm-node/src/composables/useForm/useForm.mjs +47 -2
- package/dist/esm-node/src/composables/useGoTo/useGoTo.mjs +4 -4
- package/dist/esm-node/src/composables/useGroup/useGroup.mjs +25 -7
- package/dist/esm-node/src/composables/useGroup/useGroupItem.mjs +8 -2
- package/dist/esm-node/src/composables/useHydration/useHydration.mjs +2 -2
- package/dist/esm-node/src/composables/useIcons/useIcons.mjs +1 -1
- package/dist/esm-node/src/composables/useItems/useItems.mjs +33 -9
- package/dist/esm-node/src/composables/useLayout/useLayout.mjs +26 -8
- package/dist/esm-node/src/composables/useLazy/useLazy.mjs +1 -0
- package/dist/esm-node/src/composables/useLoader/useLoader.mjs +4 -1
- package/dist/esm-node/src/composables/useLocation/index.mjs +1 -1
- package/dist/esm-node/src/composables/useLocation/useLocation.mjs +5 -2
- package/dist/esm-node/src/composables/useNested/strategies/activeStrategies.mjs +1 -1
- package/dist/esm-node/src/composables/useNested/useNested.mjs +46 -13
- package/dist/esm-node/src/composables/usePosition/usePosition.mjs +4 -0
- package/dist/esm-node/src/composables/useReadonly/index.mjs +1 -1
- package/dist/esm-node/src/composables/useReadonly/useReadonly.mjs +4 -1
- package/dist/esm-node/src/composables/useResizeObserver/useResizeObserver.mjs +1 -1
- package/dist/esm-node/src/composables/useReveal/useReveal.mjs +4 -1
- package/dist/esm-node/src/composables/useRouter/useRouter.mjs +17 -5
- package/dist/esm-node/src/composables/useRules/useRules.mjs +1 -1
- package/dist/esm-node/src/composables/useSize/useSize.mjs +5 -2
- package/dist/esm-node/src/composables/useStatus/useStatus.mjs +4 -1
- package/dist/esm-node/src/composables/useTeleport/useTeleport.mjs +2 -2
- package/dist/esm-node/src/composables/useText/useText.mjs +8 -2
- package/dist/esm-node/src/composables/useTheme/internal/useTheme.utils.mjs +2 -2
- package/dist/esm-node/src/composables/useTheme/useTheme.mjs +6 -3
- package/dist/esm-node/src/composables/useTransition/useTransition.mjs +5 -2
- package/dist/esm-node/src/composables/useValidation/useValidation.mjs +28 -8
- package/dist/esm-node/src/composables/useVirtual/useVirtual.mjs +14 -5
- package/dist/esm-node/src/core/defineComponent.mjs +6 -3
- package/dist/esm-node/src/core/getCurrentInstance.mjs +1 -1
- package/dist/esm-node/src/core/useDefaults.mjs +2 -2
- package/dist/esm-node/src/core/useProxyModel.mjs +1 -1
- package/dist/esm-node/src/hooks/createContext/index.mjs +1 -1
- package/dist/esm-node/src/hooks/createObserver/index.mjs +1 -1
- package/dist/esm-node/src/hooks/useBreakpoints/index.mjs +1 -1
- package/dist/esm-node/src/hooks/useEventListener/index.mjs +1 -1
- package/dist/esm-node/src/hooks/useHydration/index.mjs +1 -1
- package/dist/esm-node/src/hooks/useIntersectionObserver/index.mjs +1 -1
- package/dist/esm-node/src/hooks/useResizeObserver/index.mjs +1 -1
- package/dist/esm-node/src/icons.mjs +2 -2
- package/dist/esm-node/src/locales/adapters/cdsLocaleAdapter.mjs +2 -2
- package/dist/esm-node/src/themes/lumaDark.mjs +8 -4
- package/dist/esm-node/src/transitions/collapseTransition.mjs +1 -1
- package/dist/esm-node/src/transitions/createTransition.mjs +1 -1
- package/dist/esm-node/src/transitions/modalTransition.mjs +1 -1
- package/dist/esm-node/src/utils/colorsUtils/utils.mjs +2 -2
- package/dist/esm-node/src/utils/date/date.mjs +4 -4
- package/dist/esm-node/src/utils/dom/classNames.mjs +1 -1
- package/dist/esm-node/src/utils/dom/console.mjs +1 -1
- package/dist/esm-node/src/utils/dom/dom.mjs +1 -1
- package/dist/iife/entry.js +9 -9
- package/dist/styles/common.css +1 -1
- package/dist/styles/core.css +1 -1
- package/dist/styles/tailwind.css +1 -1
- package/dist/styles.css +2 -2
- package/dist/types/components/CdsApp/api/CdsApp.types.d.ts +4 -1
- package/dist/types/components/CdsAutocomplete/CdsAutocomplete.vue.d.ts +129 -110
- package/dist/types/components/CdsAutocomplete/api/CdsAutocomplete.props.d.ts +27 -59
- package/dist/types/components/CdsAutocomplete/api/CdsAutocomplete.types.d.ts +60 -15
- package/dist/types/components/CdsAutocomplete/index.d.ts +255 -264
- package/dist/types/components/CdsAvatar/api/CdsAvatar.types.d.ts +8 -2
- package/dist/types/components/CdsBadge/api/CdsBadge.types.d.ts +8 -2
- package/dist/types/components/CdsBadge/index.d.ts +9 -9
- package/dist/types/components/CdsBreadcrumbs/CdsBreadcrumbsItem.vue.d.ts +3 -3
- package/dist/types/components/CdsBreadcrumbs/api/CdsBreadcrumbs.props.d.ts +4 -4
- package/dist/types/components/CdsBreadcrumbs/api/CdsBreadcrumbs.types.d.ts +28 -7
- package/dist/types/components/CdsBreadcrumbs/index.d.ts +6 -6
- package/dist/types/components/CdsButton/CdsButton.vue.d.ts +7 -4
- package/dist/types/components/CdsButton/api/CdsButton.props.d.ts +4 -4
- package/dist/types/components/CdsButton/api/CdsButton.types.d.ts +20 -5
- package/dist/types/components/CdsButton/index.d.ts +6 -6
- package/dist/types/components/CdsButtonGroup/api/CdsButtonGroup.types.d.ts +4 -1
- package/dist/types/components/CdsButtonToggle/CdsButtonToggle.vue.d.ts +20 -5
- package/dist/types/components/CdsButtonToggle/api/CdsButtonToggle.types.d.ts +8 -2
- package/dist/types/components/CdsCard/CdsCard.vue.d.ts +3 -3
- package/dist/types/components/CdsCard/CdsCardGroup.vue.d.ts +20 -5
- package/dist/types/components/CdsCard/api/CdsCard.props.d.ts +4 -4
- package/dist/types/components/CdsCard/api/CdsCard.types.d.ts +68 -17
- package/dist/types/components/CdsCard/index.d.ts +9 -9
- package/dist/types/components/CdsCarousel/api/CdsCarousel.types.d.ts +12 -3
- package/dist/types/components/CdsCheckbox/CdsCheckbox.vue.d.ts +13 -13
- package/dist/types/components/CdsCheckbox/api/CdsCheckbox.props.d.ts +10 -10
- package/dist/types/components/CdsCheckbox/api/CdsCheckbox.types.d.ts +8 -2
- package/dist/types/components/CdsCheckbox/index.d.ts +33 -33
- package/dist/types/components/CdsCheckboxButton/api/CdsCheckboxButton.types.d.ts +8 -0
- package/dist/types/components/CdsCombobox/CdsCombobox.vue.d.ts +137 -112
- package/dist/types/components/CdsCombobox/api/CdsCombobox.props.d.ts +27 -59
- package/dist/types/components/CdsCombobox/api/CdsCombobox.types.d.ts +60 -15
- package/dist/types/components/CdsCombobox/index.d.ts +255 -264
- package/dist/types/components/CdsCounter/api/CdsCounter.types.d.ts +4 -0
- package/dist/types/components/CdsDateInput/CdsDateInput.vue.d.ts +100 -75
- package/dist/types/components/CdsDateInput/api/CdsDateInput.props.d.ts +10 -10
- package/dist/types/components/CdsDateInput/api/CdsDateInput.types.d.ts +44 -11
- package/dist/types/components/CdsDateInput/index.d.ts +252 -225
- package/dist/types/components/CdsDatePicker/CdsDatePicker.vue.d.ts +23 -3
- package/dist/types/components/CdsDatePicker/api/CdsDatePicker.props.d.ts +4 -4
- package/dist/types/components/CdsDatePicker/api/CdsDatePicker.types.d.ts +28 -7
- package/dist/types/components/CdsDatePicker/composables/useCalendar.d.ts +1 -1
- package/dist/types/components/CdsDatePicker/index.d.ts +6 -6
- package/dist/types/components/CdsDefaultsProvider/api/CdsDefaultsProvider.types.d.ts +1 -0
- package/dist/types/components/CdsDescription/api/CdsDescription.types.d.ts +4 -0
- package/dist/types/components/CdsDivider/CdsDivider.vue.d.ts +4 -0
- package/dist/types/components/CdsDrawer/CdsDrawer.vue.d.ts +4 -0
- package/dist/types/components/CdsDrawer/api/CdsDrawer.types.d.ts +24 -6
- package/dist/types/components/CdsEmptyState/CdsEmptyState.vue.d.ts +3 -3
- package/dist/types/components/CdsEmptyState/api/CdsEmptyState.props.d.ts +4 -4
- package/dist/types/components/CdsEmptyState/api/CdsEmptyState.types.d.ts +36 -9
- package/dist/types/components/CdsEmptyState/index.d.ts +6 -6
- package/dist/types/components/CdsExpandablePanel/CdsExpandablePanel.vue.d.ts +16 -4
- package/dist/types/components/CdsExpandablePanel/CdsExpandablePanelTitle.vue.d.ts +8 -2
- package/dist/types/components/CdsExpandablePanel/CdsExpandablePanels.vue.d.ts +8 -2
- package/dist/types/components/CdsExpandablePanel/api/CdsExpandablePanel.types.d.ts +56 -14
- package/dist/types/components/CdsField/CdsField.vue.d.ts +27 -3
- package/dist/types/components/CdsField/api/CdsField.types.d.ts +33 -7
- package/dist/types/components/CdsField/index.d.ts +8 -3
- package/dist/types/components/CdsFileInput/CdsFileInput.vue.d.ts +26 -23
- package/dist/types/components/CdsFileInput/api/CdsFileInput.props.d.ts +10 -10
- package/dist/types/components/CdsFileInput/api/CdsFileInput.types.d.ts +28 -7
- package/dist/types/components/CdsFileInput/index.d.ts +72 -63
- package/dist/types/components/CdsFileUpload/CdsFileUpload.vue.d.ts +25 -17
- package/dist/types/components/CdsFileUpload/CdsFileUploadItem.vue.d.ts +3 -3
- package/dist/types/components/CdsFileUpload/api/CdsFileUpload.props.d.ts +18 -18
- package/dist/types/components/CdsFileUpload/api/CdsFileUpload.types.d.ts +116 -29
- package/dist/types/components/CdsFileUpload/index.d.ts +60 -60
- package/dist/types/components/CdsFooter/api/CdsFooter.types.d.ts +12 -3
- package/dist/types/components/CdsForm/api/CdsForm.props.d.ts +1 -1
- package/dist/types/components/CdsForm/api/CdsForm.types.d.ts +20 -5
- package/dist/types/components/CdsForm/index.d.ts +23 -23
- package/dist/types/components/CdsFunctionalButton/CdsFunctionalButton.vue.d.ts +3 -3
- package/dist/types/components/CdsFunctionalButton/api/CdsFunctionalButton.props.d.ts +4 -4
- package/dist/types/components/CdsFunctionalButton/api/CdsFunctionalButton.types.d.ts +8 -2
- package/dist/types/components/CdsFunctionalButton/index.d.ts +6 -6
- package/dist/types/components/CdsGrid/api/CdsGrid.types.d.ts +12 -0
- package/dist/types/components/CdsHeader/api/CdsHeader.types.d.ts +12 -3
- package/dist/types/components/CdsIcon/api/CdsIcon.types.d.ts +4 -1
- package/dist/types/components/CdsImage/CdsImage.vue.d.ts +20 -0
- package/dist/types/components/CdsImage/api/CdsImage.props.d.ts +4 -1
- package/dist/types/components/CdsImage/api/CdsImage.types.d.ts +28 -7
- package/dist/types/components/CdsInput/CdsInput.vue.d.ts +45 -12
- package/dist/types/components/CdsInput/api/CdsInput.props.d.ts +2 -2
- package/dist/types/components/CdsInput/api/CdsInput.types.d.ts +36 -9
- package/dist/types/components/CdsInput/index.d.ts +3 -3
- package/dist/types/components/CdsLabel/api/CdsLabel.types.d.ts +4 -0
- package/dist/types/components/CdsLayout/api/CdsLayout.types.d.ts +16 -4
- package/dist/types/components/CdsLink/CdsLink.vue.d.ts +3 -3
- package/dist/types/components/CdsLink/api/CdsLink.props.d.ts +4 -4
- package/dist/types/components/CdsLink/api/CdsLink.types.d.ts +8 -2
- package/dist/types/components/CdsLink/index.d.ts +6 -6
- package/dist/types/components/CdsList/CdsList.vue.d.ts +24 -6
- package/dist/types/components/CdsList/CdsListGroup.vue.d.ts +4 -1
- package/dist/types/components/CdsList/CdsListItem.vue.d.ts +32 -31
- package/dist/types/components/CdsList/CdsListItemAction.vue.d.ts +20 -5
- package/dist/types/components/CdsList/CdsListItemDivider.vue.d.ts +4 -0
- package/dist/types/components/CdsList/CdsListItemMedia.vue.d.ts +20 -5
- package/dist/types/components/CdsList/CdsListSubheader.vue.d.ts +4 -1
- package/dist/types/components/CdsList/api/CdsList.props.d.ts +4 -4
- package/dist/types/components/CdsList/api/CdsList.types.d.ts +84 -21
- package/dist/types/components/CdsList/components/ListChildren.vue.d.ts +16 -4
- package/dist/types/components/CdsList/components/ListGroupActivator.vue.d.ts +4 -1
- package/dist/types/components/CdsList/index.d.ts +85 -69
- package/dist/types/components/CdsMain/api/CdsMain.types.d.ts +4 -1
- package/dist/types/components/CdsMenu/CdsMenu.vue.d.ts +28 -48
- package/dist/types/components/CdsMenu/api/CdsMenu.props.d.ts +33 -64
- package/dist/types/components/CdsMenu/api/CdsMenu.types.d.ts +12 -0
- package/dist/types/components/CdsMenu/index.d.ts +117 -153
- package/dist/types/components/CdsMessages/api/CdsMessages.types.d.ts +8 -0
- package/dist/types/components/CdsModal/CdsModal.vue.d.ts +18 -38
- package/dist/types/components/CdsModal/api/CdsModal.props.d.ts +17 -48
- package/dist/types/components/CdsModal/api/CdsModal.types.d.ts +12 -3
- package/dist/types/components/CdsModal/index.d.ts +108 -144
- package/dist/types/components/CdsNotification/api/CdsNotification.types.d.ts +36 -9
- package/dist/types/components/CdsNotificationAlert/CdsNotificationAlert.vue.d.ts +11 -11
- package/dist/types/components/CdsNotificationAlert/api/CdsNotificationAlert.types.d.ts +40 -10
- package/dist/types/components/CdsNotificationAlert/index.d.ts +84 -84
- package/dist/types/components/CdsOtpInput/CdsOtpInput.vue.d.ts +20 -5
- package/dist/types/components/CdsOtpInput/api/CdsOtpInput.types.d.ts +36 -9
- package/dist/types/components/CdsOverlay/CdsOverlay.vue.d.ts +46 -13
- package/dist/types/components/CdsOverlay/api/CdsOverlay.types.d.ts +28 -3
- package/dist/types/components/CdsOverlay/index.d.ts +18 -18
- package/dist/types/components/CdsPage/api/CdsPage.types.d.ts +4 -1
- package/dist/types/components/CdsPagination/CdsPagination.vue.d.ts +16 -0
- package/dist/types/components/CdsPagination/api/CdsPagination.types.d.ts +44 -11
- package/dist/types/components/CdsProgressBar/api/CdsProgressBar.types.d.ts +8 -0
- package/dist/types/components/CdsProgressBar/index.d.ts +9 -9
- package/dist/types/components/CdsProgressCircle/api/CdsProgressCircle.types.d.ts +4 -1
- package/dist/types/components/CdsRadioGroup/CdsRadioGroup.vue.d.ts +13 -13
- package/dist/types/components/CdsRadioGroup/api/CdsRadioGroup.props.d.ts +10 -10
- package/dist/types/components/CdsRadioGroup/api/CdsRadioGroup.types.d.ts +8 -2
- package/dist/types/components/CdsRadioGroup/index.d.ts +33 -33
- package/dist/types/components/CdsResponsive/api/CdsResponsive.types.d.ts +8 -2
- package/dist/types/components/CdsSelect/CdsSelect.vue.d.ts +121 -108
- package/dist/types/components/CdsSelect/api/CdsSelect.props.d.ts +27 -58
- package/dist/types/components/CdsSelect/api/CdsSelect.types.d.ts +60 -15
- package/dist/types/components/CdsSelect/index.d.ts +255 -264
- package/dist/types/components/CdsSelectionControl/CdsSelectionControl.vue.d.ts +8 -0
- package/dist/types/components/CdsSelectionControl/api/CdsSelectionControl.types.d.ts +12 -3
- package/dist/types/components/CdsSelectionControlGroup/api/CdsSelectionControlGroup.types.d.ts +8 -0
- package/dist/types/components/CdsSkeletonLoader/api/CdsSkeletonLoader.types.d.ts +4 -1
- package/dist/types/components/CdsSlideGroup/CdsSlideGroup.vue.d.ts +24 -6
- package/dist/types/components/CdsSlideGroup/api/CdsSlideGroup.types.d.ts +20 -5
- package/dist/types/components/CdsSlideView/CdsSlideView.vue.d.ts +4 -0
- package/dist/types/components/CdsSlideView/CdsSlideViewItem.vue.d.ts +4 -0
- package/dist/types/components/CdsSlideView/api/CdsSlideView.types.d.ts +31 -0
- package/dist/types/components/CdsStages/CdsStages.vue.d.ts +8 -0
- package/dist/types/components/CdsStatus/api/CdsStatus.types.d.ts +4 -1
- package/dist/types/components/CdsSteps/CdsSteps.vue.d.ts +8 -0
- package/dist/types/components/CdsSteps/api/CdsSteps.types.d.ts +72 -18
- package/dist/types/components/CdsSurface/api/CdsSurface.types.d.ts +4 -1
- package/dist/types/components/CdsSurface/index.d.ts +3 -3
- package/dist/types/components/CdsTable/CdsTable.vue.d.ts +8 -87
- package/dist/types/components/CdsTable/api/CdsTable.props.d.ts +4 -336
- package/dist/types/components/CdsTable/api/CdsTable.types.d.ts +96 -24
- package/dist/types/components/CdsTable/components/Table/InternalTable.d.ts +5 -88
- package/dist/types/components/CdsTable/components/TableProvider.d.ts +4 -87
- package/dist/types/components/CdsTable/composable/sorter.d.ts +1 -3
- package/dist/types/components/CdsTable/composable/table.d.ts +5 -339
- package/dist/types/components/CdsTable/index.d.ts +9 -258
- package/dist/types/components/CdsTable/interface.d.ts +11 -1
- package/dist/types/components/CdsTabs/CdsTab.vue.d.ts +3 -3
- package/dist/types/components/CdsTabs/api/CdsTabs.props.d.ts +4 -4
- package/dist/types/components/CdsTabs/api/CdsTabs.types.d.ts +32 -0
- package/dist/types/components/CdsTabs/index.d.ts +6 -6
- package/dist/types/components/CdsTag/CdsTag.vue.d.ts +3 -3
- package/dist/types/components/CdsTag/api/CdsTag.props.d.ts +4 -4
- package/dist/types/components/CdsTag/api/CdsTag.types.d.ts +64 -16
- package/dist/types/components/CdsTag/index.d.ts +6 -6
- package/dist/types/components/CdsTagGroup/CdsTagGroup.vue.d.ts +20 -5
- package/dist/types/components/CdsTagGroup/api/CdsTagGroup.types.d.ts +8 -2
- package/dist/types/components/CdsTextArea/CdsTextArea.vue.d.ts +26 -23
- package/dist/types/components/CdsTextArea/api/CdsTextArea.props.d.ts +10 -10
- package/dist/types/components/CdsTextArea/api/CdsTextArea.types.d.ts +24 -6
- package/dist/types/components/CdsTextArea/index.d.ts +72 -63
- package/dist/types/components/CdsTextInput/CdsTextInput.vue.d.ts +28 -25
- package/dist/types/components/CdsTextInput/api/CdsTextInput.props.d.ts +10 -10
- package/dist/types/components/CdsTextInput/api/CdsTextInput.types.d.ts +44 -11
- package/dist/types/components/CdsTextInput/index.d.ts +77 -68
- package/dist/types/components/CdsTimePicker/CdsTimePicker.vue.d.ts +27 -3
- package/dist/types/components/CdsTimePicker/api/CdsTimePicker.props.d.ts +4 -4
- package/dist/types/components/CdsTimePicker/api/CdsTimePicker.types.d.ts +4 -1
- package/dist/types/components/CdsTimePicker/composables/useTime.d.ts +1 -1
- package/dist/types/components/CdsTimePicker/index.d.ts +6 -6
- package/dist/types/components/CdsToast/CdsToast.vue.d.ts +11 -11
- package/dist/types/components/CdsToast/api/CdsToast.types.d.ts +40 -10
- package/dist/types/components/CdsToast/index.d.ts +84 -84
- package/dist/types/components/CdsToastQueue/CdsToastQueue.vue.d.ts +4 -1
- package/dist/types/components/CdsToastQueue/api/CdsToastQueue.types.d.ts +20 -5
- package/dist/types/components/CdsToastQueue/index.d.ts +15 -15
- package/dist/types/components/CdsToggle/CdsToggle.vue.d.ts +13 -13
- package/dist/types/components/CdsToggle/api/CdsToggle.props.d.ts +10 -10
- package/dist/types/components/CdsToggle/api/CdsToggle.types.d.ts +28 -7
- package/dist/types/components/CdsToggle/index.d.ts +33 -33
- package/dist/types/components/CdsToolbar/api/CdsToolbar.types.d.ts +8 -2
- package/dist/types/components/CdsTooltip/CdsTooltip.vue.d.ts +11 -11
- package/dist/types/components/CdsTooltip/api/CdsTooltip.types.d.ts +4 -0
- package/dist/types/components/CdsTooltip/index.d.ts +93 -93
- package/dist/types/components/CdsTree/CdsTree.vue.d.ts +17 -1
- package/dist/types/components/CdsTree/api/CdsTree.types.d.ts +84 -21
- package/dist/types/components/CdsTree/components/TreeProvider.d.ts +2 -2
- package/dist/types/components/CdsTree/index.d.ts +3 -3
- package/dist/types/components/CdsTree/interface.d.ts +1 -0
- package/dist/types/components/CdsUploader/CdsUploader.vue.d.ts +14 -985
- package/dist/types/components/CdsUploader/api/CdsUploader.types.d.ts +89 -18
- package/dist/types/components/CdsUploader/index.d.ts +6 -2946
- package/dist/types/components/CdsVirtualScroll/CdsVirtualScroll.vue.d.ts +9 -1
- package/dist/types/components/CdsVirtualScroll/api/CdsVirtualScroll.types.d.ts +24 -9
- package/dist/types/components/CdsVirtualScroll/index.d.ts +1 -1
- package/dist/types/composables/index.d.ts +1 -0
- package/dist/types/composables/useDatetime/useDatetime.d.ts +4 -4
- package/dist/types/composables/useForm/useForm.d.ts +34 -1
- package/dist/types/composables/useLayout/context.d.ts +61 -0
- package/dist/types/composables/useNested/internal/useNested.types.d.ts +30 -21
- package/dist/types/composables/useNested/useNested.d.ts +2 -42
- package/dist/types/composables/useRouter/useRouter.d.ts +10 -5
- package/dist/types/composables/useValidation/useValidation.d.ts +2 -2
- package/dist/types/entry.d.ts +2 -0
- package/dist/types/themes/lumaDark.d.ts +4 -4
- package/dist/types/utils/date/date.d.ts +1 -1
- package/llms/llms-components.txt +8920 -10721
- package/llms/llms-full.txt +10386 -11549
- package/llms/llms-guides.txt +1404 -738
- package/llms/llms-migration.txt +25 -53
- package/llms/llms-tokens.txt +55 -55
- package/llms/llms.txt +110 -109
- package/package.json +30 -16
- package/src/components/CdsApp/CdsApp.scss +43 -0
- package/src/components/CdsApp/styles/_CdsApp.variables.scss +2 -0
- package/src/components/CdsAutocomplete/CdsAutocomplete.scss +158 -0
- package/src/components/CdsAutocomplete/styles/_CdsAutocomplete.variables.scss +9 -0
- package/src/components/CdsAvatar/CdsAvatar.scss +42 -0
- package/src/components/CdsAvatar/styles/_CdsAvatar.variables.scss +22 -0
- package/src/components/CdsBadge/CdsBadge.scss +69 -0
- package/src/components/CdsBadge/styles/_CdsBadge.variables.scss +22 -0
- package/src/components/CdsBreadcrumbs/CdsBreadcrumbs.scss +49 -0
- package/src/components/CdsBreadcrumbs/styles/_CdsBreadcrumbs.variables.scss +14 -0
- package/src/components/CdsButton/CdsButton.scss +138 -0
- package/src/components/CdsButton/styles/_CdsButton.mixins.scss +76 -0
- package/src/components/CdsButton/styles/_CdsButton.variables.scss +180 -0
- package/src/components/CdsButtonGroup/CdsButtonGroup.scss +62 -0
- package/src/components/CdsButtonGroup/styles/_CdsButtonGroup.variables.scss +7 -0
- package/src/components/CdsButtonToggle/CdsButtonToggle.scss +19 -0
- package/src/components/CdsButtonToggle/styles/_CdsButtonToggle.variables.scss +3 -0
- package/src/components/CdsCard/CdsCard.scss +194 -0
- package/src/components/CdsCard/styles/CdsCard.variables.scss +36 -0
- package/src/components/CdsCarousel/CdsCarousel.scss +76 -0
- package/src/components/CdsCarousel/styles/_CdsCarousel.variables.scss +7 -0
- package/src/components/CdsCheckbox/CdsCheckbox.scss +20 -0
- package/src/components/CdsCheckbox/styles/_CdsCheckbox.mixins.scss +24 -0
- package/src/components/CdsCheckbox/styles/_CdsCheckbox.variables.scss +8 -0
- package/src/components/CdsCheckboxButton/CdsCheckboxButton.scss +78 -0
- package/src/components/CdsCheckboxButton/styles/_CdsCheckboxButton.variables.scss +46 -0
- package/src/components/CdsCombobox/CdsCombobox.scss +158 -0
- package/src/components/CdsCombobox/styles/_CdsCombobox.variables.scss +9 -0
- package/src/components/CdsCounter/CdsCounter.scss +11 -0
- package/src/components/CdsCounter/styles/_CdsCounter.variables.scss +1 -0
- package/src/components/CdsDateInput/CdsDateInput.scss +28 -0
- package/src/components/CdsDateInput/styles/_CdsDateInput.variables.scss +6 -0
- package/src/components/CdsDatePicker/CdsDatePicker.scss +574 -0
- package/src/components/CdsDatePicker/styles/_CdsDatePicker.variables.scss +56 -0
- package/src/components/CdsDescription/CdsDescription.scss +12 -0
- package/src/components/CdsDescription/styles/_CdsDescription.variables.scss +1 -0
- package/src/components/CdsDivider/CdsDivider.scss +83 -0
- package/src/components/CdsDivider/styles/_CdsDivider.variables.scss +28 -0
- package/src/components/CdsDrawer/CdsDrawer.scss +144 -0
- package/src/components/CdsDrawer/styles/_CdsDrawer.variables.scss +17 -0
- package/src/components/CdsEmptyState/CdsEmptyState.scss +103 -0
- package/src/components/CdsEmptyState/styles/_CdsEmptyState.variables.scss +15 -0
- package/src/components/CdsExpandablePanel/CdsExpandablePanel.scss +221 -0
- package/src/components/CdsExpandablePanel/styles/_CdsExpandablePanel.variables.scss +24 -0
- package/src/components/CdsField/CdsField.scss +209 -0
- package/src/components/CdsField/styles/_CdsField.mixins.scss +39 -0
- package/src/components/CdsField/styles/_CdsField.variables.scss +84 -0
- package/src/components/CdsFileInput/CdsFileInput.scss +40 -0
- package/src/components/CdsFileInput/styles/_CdsFileInput.variables.scss +5 -0
- package/src/components/CdsFileUpload/CdsFileUpload.scss +173 -0
- package/src/components/CdsFileUpload/styles/_CdsFileUpload.variables.scss +40 -0
- package/src/components/CdsFooter/CdsFooter.scss +36 -0
- package/src/components/CdsFooter/styles/_CdsFooter.variables.scss +4 -0
- package/src/components/CdsForm/CdsForm.scss +24 -0
- package/src/components/CdsForm/styles/_CdsForm.variables.scss +5 -0
- package/src/components/CdsFunctionalButton/CdsFunctionalButton.scss +49 -0
- package/src/components/CdsFunctionalButton/styles/_CdsFunctionalButton.variables.scss +25 -0
- package/src/components/CdsGrid/components/CSSGrid.scss +3 -0
- package/src/components/CdsGrid/components/FlexGrid.scss +3 -0
- package/src/components/CdsHeader/CdsHeader.scss +36 -0
- package/src/components/CdsHeader/styles/_CdsHeader.variables.scss +3 -0
- package/src/components/CdsHighlight/CdsHighlight.scss +16 -0
- package/src/components/CdsHighlight/styles/_CdsHighlight.variables.scss +8 -0
- package/src/components/CdsIcon/CdsIcon.scss +54 -0
- package/src/components/CdsIcon/styles/_CdsIcon.variables.scss +20 -0
- package/src/components/CdsImage/CdsImage.scss +62 -0
- package/src/components/CdsImage/styles/_CdsImage.variables.scss +4 -0
- package/src/components/CdsInput/CdsInput.scss +108 -0
- package/src/components/CdsInput/styles/_CdsInput.mixins.scss +54 -0
- package/src/components/CdsInput/styles/_CdsInput.variables.scss +98 -0
- package/src/components/CdsLabel/CdsLabel.scss +23 -0
- package/src/components/CdsLabel/styles/_CdsLabel.variables.scss +2 -0
- package/src/components/CdsLayout/CdsLayout.scss +61 -0
- package/src/components/CdsLayout/styles/_CdsLayout.variables.scss +2 -0
- package/src/components/CdsLink/CdsLink.scss +33 -0
- package/src/components/CdsLink/styles/_CdsLink.variables.scss +6 -0
- package/src/components/CdsList/CdsList.scss +104 -0
- package/src/components/CdsList/CdsListItem.scss +330 -0
- package/src/components/CdsList/styles/_CdsList.variables.scss +115 -0
- package/src/components/CdsLoader/CdsLoader.scss +78 -0
- package/src/components/CdsLoader/styles/_CdsLoader.mixins.scss +9 -0
- package/src/components/CdsLoader/styles/_CdsLoader.variables.scss +40 -0
- package/src/components/CdsMain/CdsMain.scss +7 -0
- package/src/components/CdsMenu/CdsMenu.scss +33 -0
- package/src/components/CdsMenu/styles/_CdsMenu.variables.scss +11 -0
- package/src/components/CdsMessages/CdsMessages.scss +20 -0
- package/src/components/CdsMessages/styles/_CdsMessages.variables.scss +5 -0
- package/src/components/CdsModal/CdsModal.scss +106 -0
- package/src/components/CdsModal/styles/_CdsModal.variables.scss +12 -0
- package/src/components/CdsNotification/CdsNotification.scss +99 -0
- package/src/components/CdsNotification/styles/_CdsNotification.variables.scss +13 -0
- package/src/components/CdsNotificationAlert/CdsNotificationAlert.scss +48 -0
- package/src/components/CdsNotificationAlert/styles/_CdsNotificationAlert.variables.scss +5 -0
- package/src/components/CdsOtpInput/CdsOtpInput.scss +192 -0
- package/src/components/CdsOtpInput/styles/_CdsOtpInput.variables.scss +31 -0
- package/src/components/CdsOverlay/CdsOverlay.scss +74 -0
- package/src/components/CdsOverlay/styles/_CdsOverlay.variables.scss +2 -0
- package/src/components/CdsPage/CdsPage.scss +9 -0
- package/src/components/CdsPagination/CdsPagination.scss +69 -0
- package/src/components/CdsPagination/styles/_CdsPagination.variables.scss +10 -0
- package/src/components/CdsProgressBar/CdsProgressBar.scss +285 -0
- package/src/components/CdsProgressBar/styles/_CdsProgressBar.variables.scss +23 -0
- package/src/components/CdsProgressCircle/CdsProgressCircle.scss +116 -0
- package/src/components/CdsProgressCircle/styles/_CdsProgressCircle.variables.scss +21 -0
- package/src/components/CdsRadio/CdsRadio.scss +42 -0
- package/src/components/CdsRadio/styles/_CdsRadio.variables.scss +26 -0
- package/src/components/CdsRadioGroup/CdsRadioGroup.scss +24 -0
- package/src/components/CdsRadioGroup/styles/_CdsRadioGroup.variables.scss +4 -0
- package/src/components/CdsResponsive/CdsResponsive.scss +33 -0
- package/src/components/CdsResponsive/styles/_CdsResponsive.variables.scss +3 -0
- package/src/components/CdsSelect/CdsSelect.scss +149 -0
- package/src/components/CdsSelect/styles/_CdsSelect.variables.scss +7 -0
- package/src/components/CdsSelectionControl/CdsSelectionControl.scss +104 -0
- package/src/components/CdsSelectionControlGroup/CdsSelectionControlGroup.scss +17 -0
- package/src/components/CdsSkeletonLoader/CdsSkeletonLoader.scss +292 -0
- package/src/components/CdsSkeletonLoader/styles/_CdsSkeletonLoader.variables.scss +52 -0
- package/src/components/CdsSlideGroup/CdsSlideGroup.scss +63 -0
- package/src/components/CdsSlideGroup/styles/_CdsSlideGroup.variables.scss +1 -0
- package/src/components/CdsSlideView/CdsSlideView.scss +183 -0
- package/src/components/CdsSlideView/styles/_CdsSlideView.variables.scss +4 -0
- package/src/components/CdsStages/CdsStages.scss +109 -0
- package/src/components/CdsStages/styles/_CdsStages.variables.scss +17 -0
- package/src/components/CdsStatus/CdsStatus.scss +49 -0
- package/src/components/CdsStatus/styles/_CdsStatus.variables.scss +7 -0
- package/src/components/CdsSteps/CdsSteps.scss +216 -0
- package/src/components/CdsSteps/styles/_CdsSteps.variables.scss +42 -0
- package/src/components/CdsSurface/CdsSurface.scss +16 -0
- package/src/components/CdsTable/CdsTable.scss +1140 -0
- package/src/components/CdsTable/styles/_CdsTable.mixins.scss +86 -0
- package/src/components/CdsTable/styles/_CdsTable.variables.scss +82 -0
- package/src/components/CdsTabs/CdsTabs.scss +94 -0
- package/src/components/CdsTabs/styles/_CdsTabs.variables.scss +30 -0
- package/src/components/CdsTag/CdsTag.scss +141 -0
- package/src/components/CdsTag/styles/_CdsTag.variables.scss +57 -0
- package/src/components/CdsTagGroup/CdsTagGroup.scss +32 -0
- package/src/components/CdsTagGroup/styles/_CdsTagGroup.variables.scss +8 -0
- package/src/components/CdsTextArea/CdsTextArea.scss +129 -0
- package/src/components/CdsTextArea/styles/_CdsTextArea.variables.scss +6 -0
- package/src/components/CdsTextInput/CdsTextInput.scss +84 -0
- package/src/components/CdsTextInput/styles/_CdsTextInput.variables.scss +7 -0
- package/src/components/CdsTimePicker/CdsTimePicker.scss +93 -0
- package/src/components/CdsTimePicker/styles/_CdsTimePicker.variables.scss +13 -0
- package/src/components/CdsToast/CdsToast.scss +207 -0
- package/src/components/CdsToast/styles/_CdsToast.variables.scss +16 -0
- package/src/components/CdsToggle/CdsToggle.scss +192 -0
- package/src/components/CdsToggle/styles/_CdsToggle.variables.scss +81 -0
- package/src/components/CdsToolbar/CdsToolbar.scss +72 -0
- package/src/components/CdsToolbar/styles/_CdsToolbar.variables.scss +3 -0
- package/src/components/CdsTooltip/CdsTooltip.scss +111 -0
- package/src/components/CdsTooltip/styles/_CdsTooltip.variables.scss +15 -0
- package/src/components/CdsTree/CdsTree.scss +290 -0
- package/src/components/CdsTree/styles/_CdsTree.variables.scss +29 -0
- package/src/components/CdsUploader/CdsUploader.scss +109 -0
- package/src/components/CdsUploader/styles/_CdsUploader.variables.scss +16 -0
- package/src/components/CdsVirtualScroll/CdsVirtualScroll.scss +16 -0
- package/src/components/CdsVirtualScroll/styles/_CdsVirtualScroll.variables.scss +3 -0
- package/src/styles/component-settings.scss +75 -0
- package/src/styles/generic/_fonts.scss +2 -2
- package/src/styles/settings/_index.scss +6 -0
- package/src/styles/tools/_absolute.sass +9 -0
- package/src/styles/tools/_border.sass +10 -0
- package/src/styles/tools/_motion.scss +11 -17
- package/src/styles/utilities/grid/_breakpoint.scss +2 -2
- package/src/styles/utilities/grid/_config.scss +0 -1
- package/src/themes/lumaDark.ts +8 -4
- package/dist/es/entry.js.map +0 -1
- package/dist/es/src/assets/icons/carbon.js.map +0 -1
- package/dist/es/src/assets/icons/cds.js.map +0 -1
- package/dist/es/src/assets/icons/cdsLegacy.js.map +0 -1
- package/dist/es/src/assets/icons/index.js.map +0 -1
- package/dist/es/src/assets/icons/lucide.js.map +0 -1
- package/dist/es/src/assets/icons/mdi.js.map +0 -1
- package/dist/es/src/assets/icons/phosphor.js.map +0 -1
- package/dist/es/src/assets/icons/remix.js.map +0 -1
- package/dist/es/src/assets/index.js.map +0 -1
- package/dist/es/src/cds.js.map +0 -1
- package/dist/es/src/components/CdsApp/CdsApp.js.map +0 -1
- package/dist/es/src/components/CdsApp/CdsApp.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsApp/api/CdsApp.constants.js.map +0 -1
- package/dist/es/src/components/CdsApp/api/CdsApp.props.js.map +0 -1
- package/dist/es/src/components/CdsApp/api/CdsApp.types.js.map +0 -1
- package/dist/es/src/components/CdsApp/index.js.map +0 -1
- package/dist/es/src/components/CdsAutocomplete/CdsAutocomplete.js.map +0 -1
- package/dist/es/src/components/CdsAutocomplete/CdsAutocomplete.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsAutocomplete/api/CdsAutocomplete.constants.js.map +0 -1
- package/dist/es/src/components/CdsAutocomplete/api/CdsAutocomplete.props.js.map +0 -1
- package/dist/es/src/components/CdsAutocomplete/api/CdsAutocomplete.types.js.map +0 -1
- package/dist/es/src/components/CdsAutocomplete/index.js.map +0 -1
- package/dist/es/src/components/CdsAvatar/CdsAvatar.js.map +0 -1
- package/dist/es/src/components/CdsAvatar/CdsAvatar.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsAvatar/api/CdsAvatar.constants.js.map +0 -1
- package/dist/es/src/components/CdsAvatar/api/CdsAvatar.props.js.map +0 -1
- package/dist/es/src/components/CdsAvatar/api/CdsAvatar.types.js.map +0 -1
- package/dist/es/src/components/CdsAvatar/index.js.map +0 -1
- package/dist/es/src/components/CdsBadge/CdsBadge.js.map +0 -1
- package/dist/es/src/components/CdsBadge/CdsBadge.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsBadge/api/CdsBadge.constants.js.map +0 -1
- package/dist/es/src/components/CdsBadge/api/CdsBadge.props.js.map +0 -1
- package/dist/es/src/components/CdsBadge/api/CdsBadge.types.js.map +0 -1
- package/dist/es/src/components/CdsBadge/index.js.map +0 -1
- package/dist/es/src/components/CdsBreadcrumbs/CdsBreadcrumbs.js.map +0 -1
- package/dist/es/src/components/CdsBreadcrumbs/CdsBreadcrumbs.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsBreadcrumbs/CdsBreadcrumbsDivider.js.map +0 -1
- package/dist/es/src/components/CdsBreadcrumbs/CdsBreadcrumbsDivider.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsBreadcrumbs/CdsBreadcrumbsItem.js.map +0 -1
- package/dist/es/src/components/CdsBreadcrumbs/CdsBreadcrumbsItem.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsBreadcrumbs/api/CdsBreadcrumbs.constants.js.map +0 -1
- package/dist/es/src/components/CdsBreadcrumbs/api/CdsBreadcrumbs.props.js.map +0 -1
- package/dist/es/src/components/CdsBreadcrumbs/api/CdsBreadcrumbs.types.js.map +0 -1
- package/dist/es/src/components/CdsBreadcrumbs/index.js.map +0 -1
- package/dist/es/src/components/CdsButton/CdsButton.js.map +0 -1
- package/dist/es/src/components/CdsButton/CdsButton.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsButton/api/CdsButton.constants.js.map +0 -1
- package/dist/es/src/components/CdsButton/api/CdsButton.props.js.map +0 -1
- package/dist/es/src/components/CdsButton/api/CdsButton.types.js.map +0 -1
- package/dist/es/src/components/CdsButton/index.js.map +0 -1
- package/dist/es/src/components/CdsButtonGroup/CdsButtonGroup.js.map +0 -1
- package/dist/es/src/components/CdsButtonGroup/CdsButtonGroup.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsButtonGroup/api/CdsButtonGroup.constants.js.map +0 -1
- package/dist/es/src/components/CdsButtonGroup/api/CdsButtonGroup.props.js.map +0 -1
- package/dist/es/src/components/CdsButtonGroup/api/CdsButtonGroup.types.js.map +0 -1
- package/dist/es/src/components/CdsButtonGroup/index.js.map +0 -1
- package/dist/es/src/components/CdsButtonToggle/CdsButtonToggle.js.map +0 -1
- package/dist/es/src/components/CdsButtonToggle/CdsButtonToggle.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsButtonToggle/api/CdsButtonToggle.constants.js.map +0 -1
- package/dist/es/src/components/CdsButtonToggle/api/CdsButtonToggle.props.js.map +0 -1
- package/dist/es/src/components/CdsButtonToggle/api/CdsButtonToggle.types.js.map +0 -1
- package/dist/es/src/components/CdsButtonToggle/index.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCard.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCard.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCardActions.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCardActions.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCardDivider.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCardDivider.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCardGroup.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCardGroup.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCardItem.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCardItem.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCardSubtitle.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCardSubtitle.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCardText.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCardText.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCardTitle.js.map +0 -1
- package/dist/es/src/components/CdsCard/CdsCardTitle.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsCard/api/CdsCard.constants.js.map +0 -1
- package/dist/es/src/components/CdsCard/api/CdsCard.props.js.map +0 -1
- package/dist/es/src/components/CdsCard/api/CdsCard.types.js.map +0 -1
- package/dist/es/src/components/CdsCard/index.js.map +0 -1
- package/dist/es/src/components/CdsCarousel/CdsCarousel.js.map +0 -1
- package/dist/es/src/components/CdsCarousel/CdsCarousel.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsCarousel/CdsCarouselItem.js.map +0 -1
- package/dist/es/src/components/CdsCarousel/CdsCarouselItem.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsCarousel/api/CdsCarousel.constants.js.map +0 -1
- package/dist/es/src/components/CdsCarousel/api/CdsCarousel.props.js.map +0 -1
- package/dist/es/src/components/CdsCarousel/api/CdsCarousel.types.js.map +0 -1
- package/dist/es/src/components/CdsCarousel/index.js.map +0 -1
- package/dist/es/src/components/CdsCheckbox/CdsCheckbox.js.map +0 -1
- package/dist/es/src/components/CdsCheckbox/CdsCheckbox.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsCheckbox/api/CdsCheckbox.constants.js.map +0 -1
- package/dist/es/src/components/CdsCheckbox/api/CdsCheckbox.props.js.map +0 -1
- package/dist/es/src/components/CdsCheckbox/api/CdsCheckbox.types.js.map +0 -1
- package/dist/es/src/components/CdsCheckbox/index.js.map +0 -1
- package/dist/es/src/components/CdsCheckboxButton/CdsCheckboxButton.js.map +0 -1
- package/dist/es/src/components/CdsCheckboxButton/CdsCheckboxButton.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsCheckboxButton/api/CdsCheckboxButton.constants.js.map +0 -1
- package/dist/es/src/components/CdsCheckboxButton/api/CdsCheckboxButton.props.js.map +0 -1
- package/dist/es/src/components/CdsCheckboxButton/api/CdsCheckboxButton.types.js.map +0 -1
- package/dist/es/src/components/CdsCheckboxButton/index.js.map +0 -1
- package/dist/es/src/components/CdsCombobox/CdsCombobox.js.map +0 -1
- package/dist/es/src/components/CdsCombobox/CdsCombobox.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsCombobox/api/CdsCombobox.constants.js.map +0 -1
- package/dist/es/src/components/CdsCombobox/api/CdsCombobox.props.js.map +0 -1
- package/dist/es/src/components/CdsCombobox/api/CdsCombobox.types.js.map +0 -1
- package/dist/es/src/components/CdsCombobox/index.js.map +0 -1
- package/dist/es/src/components/CdsCounter/CdsCounter.js.map +0 -1
- package/dist/es/src/components/CdsCounter/CdsCounter.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsCounter/api/CdsCounter.constants.js.map +0 -1
- package/dist/es/src/components/CdsCounter/api/CdsCounter.props.js.map +0 -1
- package/dist/es/src/components/CdsCounter/api/CdsCounter.types.js.map +0 -1
- package/dist/es/src/components/CdsCounter/index.js.map +0 -1
- package/dist/es/src/components/CdsDateInput/CdsDateInput.js.map +0 -1
- package/dist/es/src/components/CdsDateInput/CdsDateInput.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsDateInput/api/CdsDateInput.constants.js.map +0 -1
- package/dist/es/src/components/CdsDateInput/api/CdsDateInput.props.js.map +0 -1
- package/dist/es/src/components/CdsDateInput/api/CdsDateInput.types.js.map +0 -1
- package/dist/es/src/components/CdsDateInput/index.js.map +0 -1
- package/dist/es/src/components/CdsDatePicker/CdsDatePicker.js.map +0 -1
- package/dist/es/src/components/CdsDatePicker/CdsDatePicker.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsDatePicker/api/CdsDatePicker.constants.js.map +0 -1
- package/dist/es/src/components/CdsDatePicker/api/CdsDatePicker.props.js.map +0 -1
- package/dist/es/src/components/CdsDatePicker/api/CdsDatePicker.types.js.map +0 -1
- package/dist/es/src/components/CdsDatePicker/composables/useCalendar.js.map +0 -1
- package/dist/es/src/components/CdsDatePicker/index.js.map +0 -1
- package/dist/es/src/components/CdsDefaultsProvider/CdsDefaultsProvider.js.map +0 -1
- package/dist/es/src/components/CdsDefaultsProvider/CdsDefaultsProvider.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsDefaultsProvider/api/CdsDefaultsProvider.constants.js.map +0 -1
- package/dist/es/src/components/CdsDefaultsProvider/api/CdsDefaultsProvider.props.js.map +0 -1
- package/dist/es/src/components/CdsDefaultsProvider/api/CdsDefaultsProvider.types.js.map +0 -1
- package/dist/es/src/components/CdsDefaultsProvider/index.js.map +0 -1
- package/dist/es/src/components/CdsDescription/CdsDescription.js.map +0 -1
- package/dist/es/src/components/CdsDescription/CdsDescription.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsDescription/api/CdsDescription.constants.js.map +0 -1
- package/dist/es/src/components/CdsDescription/api/CdsDescription.props.js.map +0 -1
- package/dist/es/src/components/CdsDescription/api/CdsDescription.types.js.map +0 -1
- package/dist/es/src/components/CdsDescription/index.js.map +0 -1
- package/dist/es/src/components/CdsDivider/CdsDivider.js.map +0 -1
- package/dist/es/src/components/CdsDivider/CdsDivider.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsDivider/api/CdsDivider.constants.js.map +0 -1
- package/dist/es/src/components/CdsDivider/api/CdsDivider.props.js.map +0 -1
- package/dist/es/src/components/CdsDivider/api/CdsDivider.types.js.map +0 -1
- package/dist/es/src/components/CdsDivider/index.js.map +0 -1
- package/dist/es/src/components/CdsDrawer/CdsDrawer.js.map +0 -1
- package/dist/es/src/components/CdsDrawer/CdsDrawer.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsDrawer/api/CdsDrawer.constants.js.map +0 -1
- package/dist/es/src/components/CdsDrawer/api/CdsDrawer.props.js.map +0 -1
- package/dist/es/src/components/CdsDrawer/api/CdsDrawer.types.js.map +0 -1
- package/dist/es/src/components/CdsDrawer/index.js.map +0 -1
- package/dist/es/src/components/CdsEmptyState/CdsEmptyState.js.map +0 -1
- package/dist/es/src/components/CdsEmptyState/CdsEmptyState.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsEmptyState/api/CdsEmptyState.constants.js.map +0 -1
- package/dist/es/src/components/CdsEmptyState/api/CdsEmptyState.props.js.map +0 -1
- package/dist/es/src/components/CdsEmptyState/api/CdsEmptyState.types.js.map +0 -1
- package/dist/es/src/components/CdsEmptyState/index.js.map +0 -1
- package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanel.js.map +0 -1
- package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanel.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanelContent.js.map +0 -1
- package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanelContent.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanelTitle.js.map +0 -1
- package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanelTitle.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanels.js.map +0 -1
- package/dist/es/src/components/CdsExpandablePanel/CdsExpandablePanels.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsExpandablePanel/api/CdsExpandablePanel.constants.js.map +0 -1
- package/dist/es/src/components/CdsExpandablePanel/api/CdsExpandablePanel.props.js.map +0 -1
- package/dist/es/src/components/CdsExpandablePanel/api/CdsExpandablePanel.types.js.map +0 -1
- package/dist/es/src/components/CdsExpandablePanel/index.js.map +0 -1
- package/dist/es/src/components/CdsField/CdsField.js.map +0 -1
- package/dist/es/src/components/CdsField/CdsField.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsField/api/CdsField.constants.js.map +0 -1
- package/dist/es/src/components/CdsField/api/CdsField.props.js.map +0 -1
- package/dist/es/src/components/CdsField/api/CdsField.types.js.map +0 -1
- package/dist/es/src/components/CdsField/composables/useAutocomplete.js.map +0 -1
- package/dist/es/src/components/CdsField/index.js.map +0 -1
- package/dist/es/src/components/CdsFileInput/CdsFileInput.js.map +0 -1
- package/dist/es/src/components/CdsFileInput/CdsFileInput.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsFileInput/api/CdsFileInput.constants.js.map +0 -1
- package/dist/es/src/components/CdsFileInput/api/CdsFileInput.props.js.map +0 -1
- package/dist/es/src/components/CdsFileInput/api/CdsFileInput.types.js.map +0 -1
- package/dist/es/src/components/CdsFileInput/composables/useFileDrop.js.map +0 -1
- package/dist/es/src/components/CdsFileInput/composables/useFileFilter.js.map +0 -1
- package/dist/es/src/components/CdsFileInput/index.js.map +0 -1
- package/dist/es/src/components/CdsFileInput/utils/humanReadableFileSize.js.map +0 -1
- package/dist/es/src/components/CdsFileUpload/CdsFileUpload.js.map +0 -1
- package/dist/es/src/components/CdsFileUpload/CdsFileUpload.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsFileUpload/CdsFileUploadDropzone.js.map +0 -1
- package/dist/es/src/components/CdsFileUpload/CdsFileUploadDropzone.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsFileUpload/CdsFileUploadItem.js.map +0 -1
- package/dist/es/src/components/CdsFileUpload/CdsFileUploadItem.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsFileUpload/CdsFileUploadList.js.map +0 -1
- package/dist/es/src/components/CdsFileUpload/CdsFileUploadList.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsFileUpload/api/CdsFileUpload.constants.js.map +0 -1
- package/dist/es/src/components/CdsFileUpload/api/CdsFileUpload.props.js.map +0 -1
- package/dist/es/src/components/CdsFileUpload/api/CdsFileUpload.types.js.map +0 -1
- package/dist/es/src/components/CdsFileUpload/index.js.map +0 -1
- package/dist/es/src/components/CdsFileUpload/utils/getFileKey.js.map +0 -1
- package/dist/es/src/components/CdsFooter/CdsFooter.js.map +0 -1
- package/dist/es/src/components/CdsFooter/CdsFooter.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsFooter/api/CdsFooter.constants.js.map +0 -1
- package/dist/es/src/components/CdsFooter/api/CdsFooter.props.js.map +0 -1
- package/dist/es/src/components/CdsFooter/api/CdsFooter.types.js.map +0 -1
- package/dist/es/src/components/CdsFooter/index.js.map +0 -1
- package/dist/es/src/components/CdsForm/CdsForm.js.map +0 -1
- package/dist/es/src/components/CdsForm/CdsForm.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsForm/api/CdsForm.constants.js.map +0 -1
- package/dist/es/src/components/CdsForm/api/CdsForm.props.js.map +0 -1
- package/dist/es/src/components/CdsForm/api/CdsForm.types.js.map +0 -1
- package/dist/es/src/components/CdsForm/index.js.map +0 -1
- package/dist/es/src/components/CdsFunctionalButton/CdsFunctionalButton.js.map +0 -1
- package/dist/es/src/components/CdsFunctionalButton/CdsFunctionalButton.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsFunctionalButton/api/CdsFunctionalButton.constants.js.map +0 -1
- package/dist/es/src/components/CdsFunctionalButton/api/CdsFunctionalButton.props.js.map +0 -1
- package/dist/es/src/components/CdsFunctionalButton/api/CdsFunctionalButton.types.js.map +0 -1
- package/dist/es/src/components/CdsFunctionalButton/index.js.map +0 -1
- package/dist/es/src/components/CdsGrid/CdsCol.js.map +0 -1
- package/dist/es/src/components/CdsGrid/CdsCol.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsGrid/CdsGrid.js.map +0 -1
- package/dist/es/src/components/CdsGrid/CdsGrid.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsGrid/CdsRow.js.map +0 -1
- package/dist/es/src/components/CdsGrid/CdsRow.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsGrid/api/CdsGrid.constants.js.map +0 -1
- package/dist/es/src/components/CdsGrid/api/CdsGrid.props.js.map +0 -1
- package/dist/es/src/components/CdsGrid/api/CdsGrid.types.js.map +0 -1
- package/dist/es/src/components/CdsGrid/components/CSSGrid.js.map +0 -1
- package/dist/es/src/components/CdsGrid/components/FlexGrid.js.map +0 -1
- package/dist/es/src/components/CdsGrid/index.js.map +0 -1
- package/dist/es/src/components/CdsGrid/utils/index.js.map +0 -1
- package/dist/es/src/components/CdsHeader/CdsHeader.js.map +0 -1
- package/dist/es/src/components/CdsHeader/CdsHeader.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsHeader/api/CdsHeader.constants.js.map +0 -1
- package/dist/es/src/components/CdsHeader/api/CdsHeader.props.js.map +0 -1
- package/dist/es/src/components/CdsHeader/api/CdsHeader.types.js.map +0 -1
- package/dist/es/src/components/CdsHeader/index.js.map +0 -1
- package/dist/es/src/components/CdsHighlight/CdsHighlight.js.map +0 -1
- package/dist/es/src/components/CdsHighlight/CdsHighlight.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsHighlight/api/CdsHighlight.constants.js.map +0 -1
- package/dist/es/src/components/CdsHighlight/api/CdsHighlight.props.js.map +0 -1
- package/dist/es/src/components/CdsHighlight/api/CdsHighlight.types.js.map +0 -1
- package/dist/es/src/components/CdsHighlight/index.js.map +0 -1
- package/dist/es/src/components/CdsHighlight/utils/toHighlight.js.map +0 -1
- package/dist/es/src/components/CdsIcon/CdsIcon.js.map +0 -1
- package/dist/es/src/components/CdsIcon/CdsIcon.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsIcon/api/CdsIcon.constants.js.map +0 -1
- package/dist/es/src/components/CdsIcon/api/CdsIcon.props.js.map +0 -1
- package/dist/es/src/components/CdsIcon/api/CdsIcon.types.js.map +0 -1
- package/dist/es/src/components/CdsIcon/index.js.map +0 -1
- package/dist/es/src/components/CdsImage/CdsImage.js.map +0 -1
- package/dist/es/src/components/CdsImage/CdsImage.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsImage/api/CdsImage.constants.js.map +0 -1
- package/dist/es/src/components/CdsImage/api/CdsImage.props.js.map +0 -1
- package/dist/es/src/components/CdsImage/api/CdsImage.types.js.map +0 -1
- package/dist/es/src/components/CdsImage/index.js.map +0 -1
- package/dist/es/src/components/CdsInput/CdsInput.js.map +0 -1
- package/dist/es/src/components/CdsInput/CdsInput.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsInput/CdsInputIcon.js.map +0 -1
- package/dist/es/src/components/CdsInput/api/CdsInput.constants.js.map +0 -1
- package/dist/es/src/components/CdsInput/api/CdsInput.props.js.map +0 -1
- package/dist/es/src/components/CdsInput/api/CdsInput.types.js.map +0 -1
- package/dist/es/src/components/CdsInput/index.js.map +0 -1
- package/dist/es/src/components/CdsLabel/CdsLabel.js.map +0 -1
- package/dist/es/src/components/CdsLabel/CdsLabel.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsLabel/api/CdsLabel.constants.js.map +0 -1
- package/dist/es/src/components/CdsLabel/api/CdsLabel.props.js.map +0 -1
- package/dist/es/src/components/CdsLabel/api/CdsLabel.types.js.map +0 -1
- package/dist/es/src/components/CdsLabel/index.js.map +0 -1
- package/dist/es/src/components/CdsLayout/CdsLayout.js.map +0 -1
- package/dist/es/src/components/CdsLayout/CdsLayout.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsLayout/api/CdsLayout.constants.js.map +0 -1
- package/dist/es/src/components/CdsLayout/api/CdsLayout.props.js.map +0 -1
- package/dist/es/src/components/CdsLayout/api/CdsLayout.types.js.map +0 -1
- package/dist/es/src/components/CdsLayout/index.js.map +0 -1
- package/dist/es/src/components/CdsLayout/internal/LayoutResizeObserver.js.map +0 -1
- package/dist/es/src/components/CdsLayout/internal/LayoutScrollObserver.js.map +0 -1
- package/dist/es/src/components/CdsLayout/internal/index.js.map +0 -1
- package/dist/es/src/components/CdsLink/CdsLink.js.map +0 -1
- package/dist/es/src/components/CdsLink/CdsLink.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsLink/api/CdsLink.constants.js.map +0 -1
- package/dist/es/src/components/CdsLink/api/CdsLink.props.js.map +0 -1
- package/dist/es/src/components/CdsLink/api/CdsLink.types.js.map +0 -1
- package/dist/es/src/components/CdsLink/index.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsList.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsList.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListGroup.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListGroup.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItem.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItem.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItemAction.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItemAction.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItemDescription.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItemDescription.vue_vue_type_script_lang.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItemDivider.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItemDivider.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItemImage.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItemImage.vue_vue_type_script_lang.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItemMedia.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItemMedia.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItemSubtitle.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItemSubtitle.vue_vue_type_script_lang.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItemTitle.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListItemTitle.vue_vue_type_script_lang.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListSubheader.js.map +0 -1
- package/dist/es/src/components/CdsList/CdsListSubheader.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsList/api/CdsList.constants.js.map +0 -1
- package/dist/es/src/components/CdsList/api/CdsList.props.js.map +0 -1
- package/dist/es/src/components/CdsList/components/ListChildren.js.map +0 -1
- package/dist/es/src/components/CdsList/components/ListChildren.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsList/components/ListGroupActivator.js.map +0 -1
- package/dist/es/src/components/CdsList/components/ListGroupActivator.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsList/composables/useList.js.map +0 -1
- package/dist/es/src/components/CdsList/index.js.map +0 -1
- package/dist/es/src/components/CdsLoader/CdsLoader.js.map +0 -1
- package/dist/es/src/components/CdsLoader/CdsLoader.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsLoader/api/CdsLoader.constants.js.map +0 -1
- package/dist/es/src/components/CdsLoader/api/CdsLoader.props.js.map +0 -1
- package/dist/es/src/components/CdsLoader/api/CdsLoader.types.js.map +0 -1
- package/dist/es/src/components/CdsLoader/index.js.map +0 -1
- package/dist/es/src/components/CdsMain/CdsMain.js.map +0 -1
- package/dist/es/src/components/CdsMain/CdsMain.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsMain/api/CdsMain.constants.js.map +0 -1
- package/dist/es/src/components/CdsMain/api/CdsMain.props.js.map +0 -1
- package/dist/es/src/components/CdsMain/api/CdsMain.types.js.map +0 -1
- package/dist/es/src/components/CdsMain/context.js.map +0 -1
- package/dist/es/src/components/CdsMain/index.js.map +0 -1
- package/dist/es/src/components/CdsMenu/CdsMenu.js.map +0 -1
- package/dist/es/src/components/CdsMenu/CdsMenu.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsMenu/api/CdsMenu.constants.js.map +0 -1
- package/dist/es/src/components/CdsMenu/api/CdsMenu.props.js.map +0 -1
- package/dist/es/src/components/CdsMenu/api/CdsMenu.types.js.map +0 -1
- package/dist/es/src/components/CdsMenu/index.js.map +0 -1
- package/dist/es/src/components/CdsMessages/CdsMessages.js.map +0 -1
- package/dist/es/src/components/CdsMessages/CdsMessages.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsMessages/api/CdsMessages.constants.js.map +0 -1
- package/dist/es/src/components/CdsMessages/api/CdsMessages.props.js.map +0 -1
- package/dist/es/src/components/CdsMessages/api/CdsMessages.types.js.map +0 -1
- package/dist/es/src/components/CdsMessages/index.js.map +0 -1
- package/dist/es/src/components/CdsModal/CdsModal.js.map +0 -1
- package/dist/es/src/components/CdsModal/CdsModal.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsModal/api/CdsModal.constants.js.map +0 -1
- package/dist/es/src/components/CdsModal/api/CdsModal.props.js.map +0 -1
- package/dist/es/src/components/CdsModal/api/CdsModal.types.js.map +0 -1
- package/dist/es/src/components/CdsModal/index.js.map +0 -1
- package/dist/es/src/components/CdsNotification/CdsNotification.js.map +0 -1
- package/dist/es/src/components/CdsNotification/CdsNotification.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsNotification/api/CdsNotification.constants.js.map +0 -1
- package/dist/es/src/components/CdsNotification/api/CdsNotification.props.js.map +0 -1
- package/dist/es/src/components/CdsNotification/api/CdsNotification.types.js.map +0 -1
- package/dist/es/src/components/CdsNotification/index.js.map +0 -1
- package/dist/es/src/components/CdsNotificationAlert/CdsNotificationAlert.js.map +0 -1
- package/dist/es/src/components/CdsNotificationAlert/CdsNotificationAlert.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsNotificationAlert/api/CdsNotificationAlert.constants.js.map +0 -1
- package/dist/es/src/components/CdsNotificationAlert/api/CdsNotificationAlert.props.js.map +0 -1
- package/dist/es/src/components/CdsNotificationAlert/api/CdsNotificationAlert.types.js.map +0 -1
- package/dist/es/src/components/CdsNotificationAlert/composables/useNotificationStack.js.map +0 -1
- package/dist/es/src/components/CdsNotificationAlert/index.js.map +0 -1
- package/dist/es/src/components/CdsOtpInput/CdsOtpField.js.map +0 -1
- package/dist/es/src/components/CdsOtpInput/CdsOtpField.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsOtpInput/CdsOtpGroup.js.map +0 -1
- package/dist/es/src/components/CdsOtpInput/CdsOtpGroup.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsOtpInput/CdsOtpInput.js.map +0 -1
- package/dist/es/src/components/CdsOtpInput/CdsOtpInput.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsOtpInput/CdsOtpSeparator.js.map +0 -1
- package/dist/es/src/components/CdsOtpInput/CdsOtpSeparator.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsOtpInput/api/CdsOtpInput.constants.js.map +0 -1
- package/dist/es/src/components/CdsOtpInput/api/CdsOtpInput.props.js.map +0 -1
- package/dist/es/src/components/CdsOtpInput/api/CdsOtpInput.types.js.map +0 -1
- package/dist/es/src/components/CdsOtpInput/composables/useOtpInput.js.map +0 -1
- package/dist/es/src/components/CdsOtpInput/index.js.map +0 -1
- package/dist/es/src/components/CdsOverlay/CdsOverlay.js.map +0 -1
- package/dist/es/src/components/CdsOverlay/CdsOverlay.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsOverlay/api/CdsOverlay.constants.js.map +0 -1
- package/dist/es/src/components/CdsOverlay/api/CdsOverlay.props.js.map +0 -1
- package/dist/es/src/components/CdsOverlay/api/CdsOverlay.types.js.map +0 -1
- package/dist/es/src/components/CdsOverlay/components/Scrim.js.map +0 -1
- package/dist/es/src/components/CdsOverlay/composables/useActivator.js.map +0 -1
- package/dist/es/src/components/CdsOverlay/composables/useLocationStrategies.js.map +0 -1
- package/dist/es/src/components/CdsOverlay/composables/useScrollStrategies.js.map +0 -1
- package/dist/es/src/components/CdsOverlay/index.js.map +0 -1
- package/dist/es/src/components/CdsOverlay/utils/point.js.map +0 -1
- package/dist/es/src/components/CdsOverlay/utils/requestNewFrame.js.map +0 -1
- package/dist/es/src/components/CdsPage/CdsPage.js.map +0 -1
- package/dist/es/src/components/CdsPage/CdsPage.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsPage/api/CdsPage.constants.js.map +0 -1
- package/dist/es/src/components/CdsPage/api/CdsPage.props.js.map +0 -1
- package/dist/es/src/components/CdsPage/api/CdsPage.types.js.map +0 -1
- package/dist/es/src/components/CdsPage/index.js.map +0 -1
- package/dist/es/src/components/CdsPagination/CdsPagination.js.map +0 -1
- package/dist/es/src/components/CdsPagination/CdsPagination.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsPagination/api/CdsPagination.constants.js.map +0 -1
- package/dist/es/src/components/CdsPagination/api/CdsPagination.props.js.map +0 -1
- package/dist/es/src/components/CdsPagination/api/CdsPagination.types.js.map +0 -1
- package/dist/es/src/components/CdsPagination/index.js.map +0 -1
- package/dist/es/src/components/CdsProgressBar/CdsProgressBar.js.map +0 -1
- package/dist/es/src/components/CdsProgressBar/CdsProgressBar.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsProgressBar/api/CdsProgressBar.constants.js.map +0 -1
- package/dist/es/src/components/CdsProgressBar/api/CdsProgressBar.props.js.map +0 -1
- package/dist/es/src/components/CdsProgressBar/api/CdsProgressBar.types.js.map +0 -1
- package/dist/es/src/components/CdsProgressBar/composables/useChunk.js.map +0 -1
- package/dist/es/src/components/CdsProgressBar/index.js.map +0 -1
- package/dist/es/src/components/CdsProgressCircle/CdsProgressCircle.js.map +0 -1
- package/dist/es/src/components/CdsProgressCircle/CdsProgressCircle.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsProgressCircle/api/CdsProgressCircle.constants.js.map +0 -1
- package/dist/es/src/components/CdsProgressCircle/api/CdsProgressCircle.props.js.map +0 -1
- package/dist/es/src/components/CdsProgressCircle/api/CdsProgressCircle.types.js.map +0 -1
- package/dist/es/src/components/CdsProgressCircle/index.js.map +0 -1
- package/dist/es/src/components/CdsRadio/CdsRadio.js.map +0 -1
- package/dist/es/src/components/CdsRadio/CdsRadio.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsRadio/api/CdsRadio.constants.js.map +0 -1
- package/dist/es/src/components/CdsRadio/api/CdsRadio.props.js.map +0 -1
- package/dist/es/src/components/CdsRadio/api/CdsRadio.types.js.map +0 -1
- package/dist/es/src/components/CdsRadio/index.js.map +0 -1
- package/dist/es/src/components/CdsRadioGroup/CdsRadioGroup.js.map +0 -1
- package/dist/es/src/components/CdsRadioGroup/CdsRadioGroup.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsRadioGroup/api/CdsRadioGroup.constants.js.map +0 -1
- package/dist/es/src/components/CdsRadioGroup/api/CdsRadioGroup.props.js.map +0 -1
- package/dist/es/src/components/CdsRadioGroup/api/CdsRadioGroup.types.js.map +0 -1
- package/dist/es/src/components/CdsRadioGroup/index.js.map +0 -1
- package/dist/es/src/components/CdsResponsive/CdsResponsive.js.map +0 -1
- package/dist/es/src/components/CdsResponsive/CdsResponsive.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsResponsive/api/CdsResponsive.constants.js.map +0 -1
- package/dist/es/src/components/CdsResponsive/api/CdsResponsive.props.js.map +0 -1
- package/dist/es/src/components/CdsResponsive/api/CdsResponsive.types.js.map +0 -1
- package/dist/es/src/components/CdsResponsive/composables/useAspectStyles.js.map +0 -1
- package/dist/es/src/components/CdsResponsive/index.js.map +0 -1
- package/dist/es/src/components/CdsSelect/CdsSelect.js.map +0 -1
- package/dist/es/src/components/CdsSelect/CdsSelect.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsSelect/api/CdsSelect.constants.js.map +0 -1
- package/dist/es/src/components/CdsSelect/api/CdsSelect.props.js.map +0 -1
- package/dist/es/src/components/CdsSelect/api/CdsSelect.types.js.map +0 -1
- package/dist/es/src/components/CdsSelect/composables/useFocusRepair.js.map +0 -1
- package/dist/es/src/components/CdsSelect/composables/useMenuActivator.js.map +0 -1
- package/dist/es/src/components/CdsSelect/composables/useScrolling.js.map +0 -1
- package/dist/es/src/components/CdsSelect/composables/useSelect.js.map +0 -1
- package/dist/es/src/components/CdsSelect/index.js.map +0 -1
- package/dist/es/src/components/CdsSelectionControl/CdsSelectionControl.js.map +0 -1
- package/dist/es/src/components/CdsSelectionControl/CdsSelectionControl.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsSelectionControl/api/CdsSelectionControl.constants.js.map +0 -1
- package/dist/es/src/components/CdsSelectionControl/api/CdsSelectionControl.props.js.map +0 -1
- package/dist/es/src/components/CdsSelectionControl/api/CdsSelectionControl.types.js.map +0 -1
- package/dist/es/src/components/CdsSelectionControl/composables/useSelectionControl.js.map +0 -1
- package/dist/es/src/components/CdsSelectionControl/index.js.map +0 -1
- package/dist/es/src/components/CdsSelectionControlGroup/CdsSelectionControlGroup.js.map +0 -1
- package/dist/es/src/components/CdsSelectionControlGroup/CdsSelectionControlGroup.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsSelectionControlGroup/api/CdsSelectionControlGroup.constants.js.map +0 -1
- package/dist/es/src/components/CdsSelectionControlGroup/api/CdsSelectionControlGroup.props.js.map +0 -1
- package/dist/es/src/components/CdsSelectionControlGroup/api/CdsSelectionControlGroup.types.js.map +0 -1
- package/dist/es/src/components/CdsSelectionControlGroup/index.js.map +0 -1
- package/dist/es/src/components/CdsSkeletonLoader/CdsSkeletonLoader.js.map +0 -1
- package/dist/es/src/components/CdsSkeletonLoader/CdsSkeletonLoader.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsSkeletonLoader/api/CdsSkeletonLoader.constants.js.map +0 -1
- package/dist/es/src/components/CdsSkeletonLoader/api/CdsSkeletonLoader.props.js.map +0 -1
- package/dist/es/src/components/CdsSkeletonLoader/api/CdsSkeletonLoader.types.js.map +0 -1
- package/dist/es/src/components/CdsSkeletonLoader/index.js.map +0 -1
- package/dist/es/src/components/CdsSlideGroup/CdsSlideGroup.js.map +0 -1
- package/dist/es/src/components/CdsSlideGroup/CdsSlideGroup.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsSlideGroup/CdsSlideGroupItem.js.map +0 -1
- package/dist/es/src/components/CdsSlideGroup/CdsSlideGroupItem.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsSlideGroup/api/CdsSlideGroup.constants.js.map +0 -1
- package/dist/es/src/components/CdsSlideGroup/api/CdsSlideGroup.props.js.map +0 -1
- package/dist/es/src/components/CdsSlideGroup/api/CdsSlideGroup.types.js.map +0 -1
- package/dist/es/src/components/CdsSlideGroup/index.js.map +0 -1
- package/dist/es/src/components/CdsSlideGroup/utils/calculateTargets.js.map +0 -1
- package/dist/es/src/components/CdsSlideView/CdsSlideView.js.map +0 -1
- package/dist/es/src/components/CdsSlideView/CdsSlideView.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsSlideView/CdsSlideViewItem.js.map +0 -1
- package/dist/es/src/components/CdsSlideView/CdsSlideViewItem.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsSlideView/api/CdsSlideView.constants.js.map +0 -1
- package/dist/es/src/components/CdsSlideView/api/CdsSlideView.props.js.map +0 -1
- package/dist/es/src/components/CdsSlideView/api/CdsSlideView.types.js.map +0 -1
- package/dist/es/src/components/CdsSlideView/index.js.map +0 -1
- package/dist/es/src/components/CdsStages/CdsStages.js.map +0 -1
- package/dist/es/src/components/CdsStages/CdsStages.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsStages/api/CdsStages.constants.js.map +0 -1
- package/dist/es/src/components/CdsStages/api/CdsStages.props.js.map +0 -1
- package/dist/es/src/components/CdsStages/api/CdsStages.types.js.map +0 -1
- package/dist/es/src/components/CdsStages/index.js.map +0 -1
- package/dist/es/src/components/CdsStatus/CdsStatus.js.map +0 -1
- package/dist/es/src/components/CdsStatus/CdsStatus.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsStatus/api/CdsStatus.constants.js.map +0 -1
- package/dist/es/src/components/CdsStatus/api/CdsStatus.props.js.map +0 -1
- package/dist/es/src/components/CdsStatus/api/CdsStatus.types.js.map +0 -1
- package/dist/es/src/components/CdsStatus/index.js.map +0 -1
- package/dist/es/src/components/CdsSteps/CdsSteps.js.map +0 -1
- package/dist/es/src/components/CdsSteps/CdsSteps.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsSteps/CdsStepsActions.js.map +0 -1
- package/dist/es/src/components/CdsSteps/CdsStepsActions.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsSteps/CdsStepsItem.js.map +0 -1
- package/dist/es/src/components/CdsSteps/CdsStepsItem.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsSteps/CdsStepsView.js.map +0 -1
- package/dist/es/src/components/CdsSteps/CdsStepsView.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsSteps/CdsStepsViewItem.js.map +0 -1
- package/dist/es/src/components/CdsSteps/CdsStepsViewItem.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsSteps/api/CdsSteps.constants.js.map +0 -1
- package/dist/es/src/components/CdsSteps/api/CdsSteps.props.js.map +0 -1
- package/dist/es/src/components/CdsSteps/api/CdsSteps.types.js.map +0 -1
- package/dist/es/src/components/CdsSteps/index.js.map +0 -1
- package/dist/es/src/components/CdsSurface/CdsSurface.js.map +0 -1
- package/dist/es/src/components/CdsSurface/CdsSurface.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsSurface/api/CdsSurface.constants.js.map +0 -1
- package/dist/es/src/components/CdsSurface/api/CdsSurface.props.js.map +0 -1
- package/dist/es/src/components/CdsSurface/api/CdsSurface.types.js.map +0 -1
- package/dist/es/src/components/CdsSurface/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/CdsTable.js.map +0 -1
- package/dist/es/src/components/CdsTable/CdsTable.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsTable/CdsTableColumn.js.map +0 -1
- package/dist/es/src/components/CdsTable/CdsTableColumn.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsTable/CdsTableColumnGroup.js.map +0 -1
- package/dist/es/src/components/CdsTable/CdsTableColumnGroup.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsTable/api/CdsTable.constants.js.map +0 -1
- package/dist/es/src/components/CdsTable/api/CdsTable.props.js.map +0 -1
- package/dist/es/src/components/CdsTable/api/CdsTable.types.js.map +0 -1
- package/dist/es/src/components/CdsTable/api/CdsTableColumn.constants.js.map +0 -1
- package/dist/es/src/components/CdsTable/api/CdsTableColumnGroup.constants.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Body/Body.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Body/BodyRow.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Body/ExpandedRow.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Body/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Cell/Cell.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Cell/MeasureCell.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Cell/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/ColGroup/ColGroup.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/ColGroup/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Drag/ColumnDragHandle.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Drag/RowDragHandle.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Drag/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Filter/FilterDropdown.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Filter/FilterSearch.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Filter/FilterWrapper.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Filter/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/FixedHolder/FixedHolder.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/FixedHolder/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Footer/Footer.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Footer/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Header/DragHandle.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Header/Header.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Header/HeaderRow.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Header/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Icons/ExpandIcon.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Panel/Panel.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Panel/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/ResizeObserver/ResizeObserver.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/ResizeObserver/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/StickyScrollbar/StickyScrollbar.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/StickyScrollbar/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/Table/InternalTable.js.map +0 -1
- package/dist/es/src/components/CdsTable/components/TableProvider.js.map +0 -1
- package/dist/es/src/components/CdsTable/composable/columns.js.map +0 -1
- package/dist/es/src/components/CdsTable/composable/drag.js.map +0 -1
- package/dist/es/src/components/CdsTable/composable/filter.js.map +0 -1
- package/dist/es/src/components/CdsTable/composable/flat.js.map +0 -1
- package/dist/es/src/components/CdsTable/composable/frame.js.map +0 -1
- package/dist/es/src/components/CdsTable/composable/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/composable/pagination.js.map +0 -1
- package/dist/es/src/components/CdsTable/composable/scroll.js.map +0 -1
- package/dist/es/src/components/CdsTable/composable/selection.js.map +0 -1
- package/dist/es/src/components/CdsTable/composable/sorter.js.map +0 -1
- package/dist/es/src/components/CdsTable/composable/state.js.map +0 -1
- package/dist/es/src/components/CdsTable/composable/sticky.js.map +0 -1
- package/dist/es/src/components/CdsTable/composable/table.js.map +0 -1
- package/dist/es/src/components/CdsTable/constants.js.map +0 -1
- package/dist/es/src/components/CdsTable/context/body.js.map +0 -1
- package/dist/es/src/components/CdsTable/context/drag.js.map +0 -1
- package/dist/es/src/components/CdsTable/context/expandedRow.js.map +0 -1
- package/dist/es/src/components/CdsTable/context/hover.js.map +0 -1
- package/dist/es/src/components/CdsTable/context/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/context/resize.js.map +0 -1
- package/dist/es/src/components/CdsTable/context/slots.js.map +0 -1
- package/dist/es/src/components/CdsTable/context/sticky.js.map +0 -1
- package/dist/es/src/components/CdsTable/context/summary.js.map +0 -1
- package/dist/es/src/components/CdsTable/context/table.js.map +0 -1
- package/dist/es/src/components/CdsTable/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/interface.js.map +0 -1
- package/dist/es/src/components/CdsTable/utils/column.js.map +0 -1
- package/dist/es/src/components/CdsTable/utils/drag.js.map +0 -1
- package/dist/es/src/components/CdsTable/utils/expand.js.map +0 -1
- package/dist/es/src/components/CdsTable/utils/fixed.js.map +0 -1
- package/dist/es/src/components/CdsTable/utils/index.js.map +0 -1
- package/dist/es/src/components/CdsTable/utils/value.js.map +0 -1
- package/dist/es/src/components/CdsTable/utils/vnode.js.map +0 -1
- package/dist/es/src/components/CdsTabs/CdsTab.js.map +0 -1
- package/dist/es/src/components/CdsTabs/CdsTab.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsTabs/CdsTabs.js.map +0 -1
- package/dist/es/src/components/CdsTabs/CdsTabs.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsTabs/CdsTabsView.js.map +0 -1
- package/dist/es/src/components/CdsTabs/CdsTabsView.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsTabs/CdsTabsViewItem.js.map +0 -1
- package/dist/es/src/components/CdsTabs/CdsTabsViewItem.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsTabs/api/CdsTabs.constants.js.map +0 -1
- package/dist/es/src/components/CdsTabs/api/CdsTabs.props.js.map +0 -1
- package/dist/es/src/components/CdsTabs/api/CdsTabs.types.js.map +0 -1
- package/dist/es/src/components/CdsTabs/index.js.map +0 -1
- package/dist/es/src/components/CdsTag/CdsTag.js.map +0 -1
- package/dist/es/src/components/CdsTag/CdsTag.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsTag/api/CdsTag.constants.js.map +0 -1
- package/dist/es/src/components/CdsTag/api/CdsTag.props.js.map +0 -1
- package/dist/es/src/components/CdsTag/api/CdsTag.types.js.map +0 -1
- package/dist/es/src/components/CdsTag/index.js.map +0 -1
- package/dist/es/src/components/CdsTagGroup/CdsTagGroup.js.map +0 -1
- package/dist/es/src/components/CdsTagGroup/CdsTagGroup.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsTagGroup/api/CdsTagGroup.constants.js.map +0 -1
- package/dist/es/src/components/CdsTagGroup/api/CdsTagGroup.props.js.map +0 -1
- package/dist/es/src/components/CdsTagGroup/api/CdsTagGroup.types.js.map +0 -1
- package/dist/es/src/components/CdsTagGroup/index.js.map +0 -1
- package/dist/es/src/components/CdsTextArea/CdsTextArea.js.map +0 -1
- package/dist/es/src/components/CdsTextArea/CdsTextArea.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsTextArea/api/CdsTextArea.constants.js.map +0 -1
- package/dist/es/src/components/CdsTextArea/api/CdsTextArea.props.js.map +0 -1
- package/dist/es/src/components/CdsTextArea/api/CdsTextArea.types.js.map +0 -1
- package/dist/es/src/components/CdsTextArea/index.js.map +0 -1
- package/dist/es/src/components/CdsTextInput/CdsTextInput.js.map +0 -1
- package/dist/es/src/components/CdsTextInput/CdsTextInput.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsTextInput/api/CdsTextInput.constants.js.map +0 -1
- package/dist/es/src/components/CdsTextInput/api/CdsTextInput.props.js.map +0 -1
- package/dist/es/src/components/CdsTextInput/api/CdsTextInput.types.js.map +0 -1
- package/dist/es/src/components/CdsTextInput/index.js.map +0 -1
- package/dist/es/src/components/CdsTimePicker/CdsTimePicker.js.map +0 -1
- package/dist/es/src/components/CdsTimePicker/CdsTimePicker.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsTimePicker/api/CdsTimePicker.constants.js.map +0 -1
- package/dist/es/src/components/CdsTimePicker/api/CdsTimePicker.props.js.map +0 -1
- package/dist/es/src/components/CdsTimePicker/api/CdsTimePicker.types.js.map +0 -1
- package/dist/es/src/components/CdsTimePicker/composables/useTime.js.map +0 -1
- package/dist/es/src/components/CdsTimePicker/index.js.map +0 -1
- package/dist/es/src/components/CdsToast/CdsToast.js.map +0 -1
- package/dist/es/src/components/CdsToast/CdsToast.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsToast/api/CdsToast.constants.js.map +0 -1
- package/dist/es/src/components/CdsToast/api/CdsToast.props.js.map +0 -1
- package/dist/es/src/components/CdsToast/api/CdsToast.types.js.map +0 -1
- package/dist/es/src/components/CdsToast/composables/useCountdown.js.map +0 -1
- package/dist/es/src/components/CdsToast/index.js.map +0 -1
- package/dist/es/src/components/CdsToastQueue/CdsToastQueue.js.map +0 -1
- package/dist/es/src/components/CdsToastQueue/CdsToastQueue.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsToastQueue/api/CdsToastQueue.constants.js.map +0 -1
- package/dist/es/src/components/CdsToastQueue/api/CdsToastQueue.props.js.map +0 -1
- package/dist/es/src/components/CdsToastQueue/api/CdsToastQueue.types.js.map +0 -1
- package/dist/es/src/components/CdsToastQueue/composables/useDocumentVisibility.js.map +0 -1
- package/dist/es/src/components/CdsToastQueue/composables/useToastQueue.js.map +0 -1
- package/dist/es/src/components/CdsToastQueue/index.js.map +0 -1
- package/dist/es/src/components/CdsToggle/CdsToggle.js.map +0 -1
- package/dist/es/src/components/CdsToggle/CdsToggle.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsToggle/api/CdsToggle.constants.js.map +0 -1
- package/dist/es/src/components/CdsToggle/api/CdsToggle.props.js.map +0 -1
- package/dist/es/src/components/CdsToggle/api/CdsToggle.types.js.map +0 -1
- package/dist/es/src/components/CdsToggle/index.js.map +0 -1
- package/dist/es/src/components/CdsToolbar/CdsToolbar.js.map +0 -1
- package/dist/es/src/components/CdsToolbar/CdsToolbar.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsToolbar/CdsToolbarTitle.js.map +0 -1
- package/dist/es/src/components/CdsToolbar/CdsToolbarTitle.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsToolbar/api/CdsToolbar.constants.js.map +0 -1
- package/dist/es/src/components/CdsToolbar/api/CdsToolbar.props.js.map +0 -1
- package/dist/es/src/components/CdsToolbar/api/CdsToolbar.types.js.map +0 -1
- package/dist/es/src/components/CdsToolbar/index.js.map +0 -1
- package/dist/es/src/components/CdsTooltip/CdsTooltip.js.map +0 -1
- package/dist/es/src/components/CdsTooltip/CdsTooltip.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsTooltip/api/CdsTooltip.constants.js.map +0 -1
- package/dist/es/src/components/CdsTooltip/api/CdsTooltip.props.js.map +0 -1
- package/dist/es/src/components/CdsTooltip/api/CdsTooltip.types.js.map +0 -1
- package/dist/es/src/components/CdsTooltip/index.js.map +0 -1
- package/dist/es/src/components/CdsTree/CdsTree.js.map +0 -1
- package/dist/es/src/components/CdsTree/CdsTree.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsTree/CdsTreeDirectory.js.map +0 -1
- package/dist/es/src/components/CdsTree/CdsTreeDirectory.vue_vue_type_script_lang.js.map +0 -1
- package/dist/es/src/components/CdsTree/CdsTreeNode.js.map +0 -1
- package/dist/es/src/components/CdsTree/CdsTreeNode.vue_vue_type_script_lang.js.map +0 -1
- package/dist/es/src/components/CdsTree/api/CdsTree.constants.js.map +0 -1
- package/dist/es/src/components/CdsTree/api/CdsTree.props.js.map +0 -1
- package/dist/es/src/components/CdsTree/api/CdsTree.types.js.map +0 -1
- package/dist/es/src/components/CdsTree/api/CdsTreeDirectory.constants.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/DropIndicator.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/Indent.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/MotionTreeNode.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/NodeList.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/SwitcherIcon.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/TreeContext.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/TreeProvider.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/VirtualList/Filler.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/VirtualList/Item.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/VirtualList/ResizeObserver.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/VirtualList/ScrollBar.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/VirtualList/VirtualList.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/VirtualList/features/index.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/VirtualList/features/useFrameWheel.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/VirtualList/features/useHeights.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/VirtualList/features/useMobileTouchMove.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/VirtualList/features/useOriginScroll.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/VirtualList/features/useScrollTo.js.map +0 -1
- package/dist/es/src/components/CdsTree/components/VirtualList/index.js.map +0 -1
- package/dist/es/src/components/CdsTree/composable/events.js.map +0 -1
- package/dist/es/src/components/CdsTree/composable/index.js.map +0 -1
- package/dist/es/src/components/CdsTree/composable/tree.js.map +0 -1
- package/dist/es/src/components/CdsTree/composable/treeNode.js.map +0 -1
- package/dist/es/src/components/CdsTree/index.js.map +0 -1
- package/dist/es/src/components/CdsTree/interface.js.map +0 -1
- package/dist/es/src/components/CdsTree/utils/conduct.js.map +0 -1
- package/dist/es/src/components/CdsTree/utils/data.js.map +0 -1
- package/dist/es/src/components/CdsTree/utils/diff.js.map +0 -1
- package/dist/es/src/components/CdsTree/utils/directory.js.map +0 -1
- package/dist/es/src/components/CdsTree/utils/index.js.map +0 -1
- package/dist/es/src/components/CdsUploader/CdsUploader.js.map +0 -1
- package/dist/es/src/components/CdsUploader/CdsUploader.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsUploader/api/CdsUploader.constants.js.map +0 -1
- package/dist/es/src/components/CdsUploader/api/CdsUploader.props.js.map +0 -1
- package/dist/es/src/components/CdsUploader/api/CdsUploader.types.js.map +0 -1
- package/dist/es/src/components/CdsUploader/components/AjaxUploader.js.map +0 -1
- package/dist/es/src/components/CdsUploader/components/AjaxUploader.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsUploader/components/UploadList/ListItem.js.map +0 -1
- package/dist/es/src/components/CdsUploader/components/UploadList/ListItem.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsUploader/components/UploadList/UploadList.js.map +0 -1
- package/dist/es/src/components/CdsUploader/components/UploadList/UploadList.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsUploader/components/index.js.map +0 -1
- package/dist/es/src/components/CdsUploader/composables/index.js.map +0 -1
- package/dist/es/src/components/CdsUploader/composables/useRequest.js.map +0 -1
- package/dist/es/src/components/CdsUploader/composables/useUpload.js.map +0 -1
- package/dist/es/src/components/CdsUploader/index.js.map +0 -1
- package/dist/es/src/components/CdsUploader/utils/accept.js.map +0 -1
- package/dist/es/src/components/CdsUploader/utils/helpers.js.map +0 -1
- package/dist/es/src/components/CdsUploader/utils/index.js.map +0 -1
- package/dist/es/src/components/CdsUploader/utils/traverseFileTree.js.map +0 -1
- package/dist/es/src/components/CdsUploader/utils/uid.js.map +0 -1
- package/dist/es/src/components/CdsVirtualScroll/CdsVirtualScroll.js.map +0 -1
- package/dist/es/src/components/CdsVirtualScroll/CdsVirtualScroll.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsVirtualScroll/CdsVirtualScrollItem.js.map +0 -1
- package/dist/es/src/components/CdsVirtualScroll/CdsVirtualScrollItem.vue_vue_type_script_setup_true_lang.js.map +0 -1
- package/dist/es/src/components/CdsVirtualScroll/api/CdsVirtualScroll.constants.js.map +0 -1
- package/dist/es/src/components/CdsVirtualScroll/api/CdsVirtualScroll.props.js.map +0 -1
- package/dist/es/src/components/CdsVirtualScroll/api/CdsVirtualScroll.types.js.map +0 -1
- package/dist/es/src/components/CdsVirtualScroll/index.js.map +0 -1
- package/dist/es/src/components/index.js.map +0 -1
- package/dist/es/src/composables/index.js.map +0 -1
- package/dist/es/src/composables/useAppearance/index.js.map +0 -1
- package/dist/es/src/composables/useAppearance/useAppearance.js.map +0 -1
- package/dist/es/src/composables/useColor/index.js.map +0 -1
- package/dist/es/src/composables/useColor/internal/useColor.constants.js.map +0 -1
- package/dist/es/src/composables/useColor/internal/useColor.helpers.js.map +0 -1
- package/dist/es/src/composables/useColor/internal/useColor.types.js.map +0 -1
- package/dist/es/src/composables/useColor/useColor.js.map +0 -1
- package/dist/es/src/composables/useDatetime/index.js.map +0 -1
- package/dist/es/src/composables/useDatetime/useDatetime.js.map +0 -1
- package/dist/es/src/composables/useDelay/index.js.map +0 -1
- package/dist/es/src/composables/useDelay/useDelay.js.map +0 -1
- package/dist/es/src/composables/useDimensions/index.js.map +0 -1
- package/dist/es/src/composables/useDimensions/useDimensions.js.map +0 -1
- package/dist/es/src/composables/useDirection/index.js.map +0 -1
- package/dist/es/src/composables/useDirection/useDirection.js.map +0 -1
- package/dist/es/src/composables/useDisabled/index.js.map +0 -1
- package/dist/es/src/composables/useDisabled/useDisabled.js.map +0 -1
- package/dist/es/src/composables/useDisplay/index.js.map +0 -1
- package/dist/es/src/composables/useDisplay/internal/useDisplay.constants.js.map +0 -1
- package/dist/es/src/composables/useDisplay/internal/useDisplay.helpers.js.map +0 -1
- package/dist/es/src/composables/useDisplay/internal/useDisplay.types.js.map +0 -1
- package/dist/es/src/composables/useDisplay/useDisplay.js.map +0 -1
- package/dist/es/src/composables/useFilter/index.js.map +0 -1
- package/dist/es/src/composables/useFilter/useFilter.js.map +0 -1
- package/dist/es/src/composables/useFocus/index.js.map +0 -1
- package/dist/es/src/composables/useFocus/useFocus.js.map +0 -1
- package/dist/es/src/composables/useFocus/useFocusGroup.js.map +0 -1
- package/dist/es/src/composables/useFocus/useFocusTrap.js.map +0 -1
- package/dist/es/src/composables/useForm/index.js.map +0 -1
- package/dist/es/src/composables/useForm/internal/useForm.constants.js.map +0 -1
- package/dist/es/src/composables/useForm/useForm.js.map +0 -1
- package/dist/es/src/composables/useGoTo/index.js.map +0 -1
- package/dist/es/src/composables/useGoTo/internal/useGoTo.constants.js.map +0 -1
- package/dist/es/src/composables/useGoTo/useGoTo.js.map +0 -1
- package/dist/es/src/composables/useGroup/index.js.map +0 -1
- package/dist/es/src/composables/useGroup/useGroup.js.map +0 -1
- package/dist/es/src/composables/useGroup/useGroupItem.js.map +0 -1
- package/dist/es/src/composables/useHydration/index.js.map +0 -1
- package/dist/es/src/composables/useHydration/useHydration.js.map +0 -1
- package/dist/es/src/composables/useIcons/index.js.map +0 -1
- package/dist/es/src/composables/useIcons/internal/useIcons.constants.js.map +0 -1
- package/dist/es/src/composables/useIcons/internal/useIcons.types.js.map +0 -1
- package/dist/es/src/composables/useIcons/useIcons.component.js.map +0 -1
- package/dist/es/src/composables/useIcons/useIcons.js.map +0 -1
- package/dist/es/src/composables/useItems/index.js.map +0 -1
- package/dist/es/src/composables/useItems/useItems.js.map +0 -1
- package/dist/es/src/composables/useLayout/context.js.map +0 -1
- package/dist/es/src/composables/useLayout/index.js.map +0 -1
- package/dist/es/src/composables/useLayout/useLayout.js.map +0 -1
- package/dist/es/src/composables/useLazy/index.js.map +0 -1
- package/dist/es/src/composables/useLazy/useLazy.js.map +0 -1
- package/dist/es/src/composables/useLoader/LoaderSlot.js.map +0 -1
- package/dist/es/src/composables/useLoader/index.js.map +0 -1
- package/dist/es/src/composables/useLoader/useLoader.js.map +0 -1
- package/dist/es/src/composables/useLocale/index.js.map +0 -1
- package/dist/es/src/composables/useLocale/internal/useLocale.constants.js.map +0 -1
- package/dist/es/src/composables/useLocale/internal/useLocale.types.js.map +0 -1
- package/dist/es/src/composables/useLocale/useLocale.js.map +0 -1
- package/dist/es/src/composables/useLocation/index.js.map +0 -1
- package/dist/es/src/composables/useLocation/useLocation.js.map +0 -1
- package/dist/es/src/composables/useNested/index.js.map +0 -1
- package/dist/es/src/composables/useNested/internal/useNested.constants.js.map +0 -1
- package/dist/es/src/composables/useNested/strategies/activeStrategies.js.map +0 -1
- package/dist/es/src/composables/useNested/strategies/openStrategies.js.map +0 -1
- package/dist/es/src/composables/useNested/strategies/selectStrategies.js.map +0 -1
- package/dist/es/src/composables/useNested/useNested.js.map +0 -1
- package/dist/es/src/composables/usePosition/index.js.map +0 -1
- package/dist/es/src/composables/usePosition/usePosition.js.map +0 -1
- package/dist/es/src/composables/useReadonly/index.js.map +0 -1
- package/dist/es/src/composables/useReadonly/useReadonly.js.map +0 -1
- package/dist/es/src/composables/useResizeObserver/index.js.map +0 -1
- package/dist/es/src/composables/useResizeObserver/useResizeObserver.js.map +0 -1
- package/dist/es/src/composables/useReveal/index.js.map +0 -1
- package/dist/es/src/composables/useReveal/useReveal.js.map +0 -1
- package/dist/es/src/composables/useRouter/index.js.map +0 -1
- package/dist/es/src/composables/useRouter/useRouter.js.map +0 -1
- package/dist/es/src/composables/useRules/index.js.map +0 -1
- package/dist/es/src/composables/useRules/useRules.js.map +0 -1
- package/dist/es/src/composables/useScopeId/index.js.map +0 -1
- package/dist/es/src/composables/useScopeId/useScopeId.js.map +0 -1
- package/dist/es/src/composables/useSize/index.js.map +0 -1
- package/dist/es/src/composables/useSize/useSize.js.map +0 -1
- package/dist/es/src/composables/useSsrBoot/index.js.map +0 -1
- package/dist/es/src/composables/useSsrBoot/useSsrBoot.js.map +0 -1
- package/dist/es/src/composables/useStack/index.js.map +0 -1
- package/dist/es/src/composables/useStack/useStack.js.map +0 -1
- package/dist/es/src/composables/useStatus/index.js.map +0 -1
- package/dist/es/src/composables/useStatus/internal/useStatus.constants.js.map +0 -1
- package/dist/es/src/composables/useStatus/useStatus.js.map +0 -1
- package/dist/es/src/composables/useTeleport/index.js.map +0 -1
- package/dist/es/src/composables/useTeleport/useTeleport.js.map +0 -1
- package/dist/es/src/composables/useText/index.js.map +0 -1
- package/dist/es/src/composables/useText/useText.js.map +0 -1
- package/dist/es/src/composables/useTheme/index.js.map +0 -1
- package/dist/es/src/composables/useTheme/internal/useTheme.constants.js.map +0 -1
- package/dist/es/src/composables/useTheme/internal/useTheme.utils.js.map +0 -1
- package/dist/es/src/composables/useTheme/useTheme.js.map +0 -1
- package/dist/es/src/composables/useTransition/index.js.map +0 -1
- package/dist/es/src/composables/useTransition/useTransition.js.map +0 -1
- package/dist/es/src/composables/useValidation/index.js.map +0 -1
- package/dist/es/src/composables/useValidation/internal/useValidation.types.js.map +0 -1
- package/dist/es/src/composables/useValidation/useValidation.js.map +0 -1
- package/dist/es/src/composables/useVirtual/index.js.map +0 -1
- package/dist/es/src/composables/useVirtual/useVirtual.js.map +0 -1
- package/dist/es/src/core/defineComponent.js.map +0 -1
- package/dist/es/src/core/defineConstants.js.map +0 -1
- package/dist/es/src/core/forwardRefs.js.map +0 -1
- package/dist/es/src/core/getCurrentInstance.js.map +0 -1
- package/dist/es/src/core/index.js.map +0 -1
- package/dist/es/src/core/injectSelf.js.map +0 -1
- package/dist/es/src/core/propsFactory.js.map +0 -1
- package/dist/es/src/core/useDefaults.js.map +0 -1
- package/dist/es/src/core/useProxyModel.js.map +0 -1
- package/dist/es/src/core/useToggleScope.js.map +0 -1
- package/dist/es/src/core/withConstants.js.map +0 -1
- package/dist/es/src/directives/click-outside/index.js.map +0 -1
- package/dist/es/src/directives/index.js.map +0 -1
- package/dist/es/src/directives/intersect/index.js.map +0 -1
- package/dist/es/src/directives/touch/index.js.map +0 -1
- package/dist/es/src/hooks/createContext/index.js.map +0 -1
- package/dist/es/src/hooks/createObserver/index.js.map +0 -1
- package/dist/es/src/hooks/createPlugin/index.js.map +0 -1
- package/dist/es/src/hooks/createTrinity/index.js.map +0 -1
- package/dist/es/src/hooks/index.js.map +0 -1
- package/dist/es/src/hooks/toArray/index.js.map +0 -1
- package/dist/es/src/hooks/toElement/index.js.map +0 -1
- package/dist/es/src/hooks/useBreakpoints/index.js.map +0 -1
- package/dist/es/src/hooks/useEventListener/index.js.map +0 -1
- package/dist/es/src/hooks/useHydration/index.js.map +0 -1
- package/dist/es/src/hooks/useIntersectionObserver/index.js.map +0 -1
- package/dist/es/src/hooks/useResizeObserver/index.js.map +0 -1
- package/dist/es/src/icons.js.map +0 -1
- package/dist/es/src/locales/adapters/cdsLocaleAdapter.js.map +0 -1
- package/dist/es/src/locales/date/en.js.map +0 -1
- package/dist/es/src/locales/date/index.js.map +0 -1
- package/dist/es/src/locales/date/ru.js.map +0 -1
- package/dist/es/src/locales/en.js.map +0 -1
- package/dist/es/src/locales/index.js.map +0 -1
- package/dist/es/src/locales/ru.js.map +0 -1
- package/dist/es/src/themes/b2bDark.js.map +0 -1
- package/dist/es/src/themes/b2bLight.js.map +0 -1
- package/dist/es/src/themes/cdsDark.js.map +0 -1
- package/dist/es/src/themes/cdsLight.js.map +0 -1
- package/dist/es/src/themes/index.js.map +0 -1
- package/dist/es/src/themes/lumaDark.js.map +0 -1
- package/dist/es/src/themes/lumaLight.js.map +0 -1
- package/dist/es/src/themes/promoDark.js.map +0 -1
- package/dist/es/src/themes/promoLight.js.map +0 -1
- package/dist/es/src/transitions/collapseTransition.js.map +0 -1
- package/dist/es/src/transitions/createTransition.js.map +0 -1
- package/dist/es/src/transitions/expandTransition.js.map +0 -1
- package/dist/es/src/transitions/index.js.map +0 -1
- package/dist/es/src/transitions/modalTransition.js.map +0 -1
- package/dist/es/src/types/index.js.map +0 -1
- package/dist/es/src/utils/changeCase.js.map +0 -1
- package/dist/es/src/utils/colors.js.map +0 -1
- package/dist/es/src/utils/colorsUtils/APCA.js.map +0 -1
- package/dist/es/src/utils/colorsUtils/index.js.map +0 -1
- package/dist/es/src/utils/colorsUtils/transformCIELAB.js.map +0 -1
- package/dist/es/src/utils/colorsUtils/transformSRGB.js.map +0 -1
- package/dist/es/src/utils/colorsUtils/utils.js.map +0 -1
- package/dist/es/src/utils/date/date.js.map +0 -1
- package/dist/es/src/utils/dom/anchor.js.map +0 -1
- package/dist/es/src/utils/dom/animation.js.map +0 -1
- package/dist/es/src/utils/dom/bindProps.js.map +0 -1
- package/dist/es/src/utils/dom/box.js.map +0 -1
- package/dist/es/src/utils/dom/classNames.js.map +0 -1
- package/dist/es/src/utils/dom/console.js.map +0 -1
- package/dist/es/src/utils/dom/dom.js.map +0 -1
- package/dist/es/src/utils/dom/getScrollParent.js.map +0 -1
- package/dist/es/src/utils/dom/globals.js.map +0 -1
- package/dist/es/src/utils/dom/scrollTo.js.map +0 -1
- package/dist/es/src/utils/dom/wrapperRaf.js.map +0 -1
- package/dist/es/src/utils/helpers.js.map +0 -1
- package/dist/es/src/utils/index.js.map +0 -1
- package/dist/es/src/utils/throttle.js.map +0 -1
- package/dist/es/src/utils/use/eagerComputed.js.map +0 -1
- package/dist/es/src/utils/use/flattenChildren.js.map +0 -1
- package/dist/es/src/utils/use/listener.js.map +0 -1
- package/dist/es/src/utils/use/pickAttrs.js.map +0 -1
- package/dist/es/src/utils/use/reactiveComputed.js.map +0 -1
- package/dist/es/src/utils/use/reactivePick.js.map +0 -1
- package/dist/es/src/utils/use/toReactive.js.map +0 -1
- package/dist/styles/breakpoints.css +0 -1
- package/dist/styles/index.css +0 -1
package/llms/llms-guides.txt
CHANGED
|
@@ -1,21 +1,20 @@
|
|
|
1
|
-
# Central Design System (CDS 4) —
|
|
1
|
+
# Central Design System (CDS 4) — guides
|
|
2
2
|
|
|
3
|
-
>
|
|
4
|
-
>
|
|
5
|
-
>
|
|
3
|
+
> Version: 4.0.0-alpha.6
|
|
4
|
+
> Setup, conventions, forms, theming, Tailwind CSS, tree-shaking, and responsiveness.
|
|
5
|
+
> Generated automatically (`bun run generate:meta` → `bun run generate:llms`). Do not edit manually.
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
#
|
|
9
|
+
# Setup and themes
|
|
10
10
|
|
|
11
|
-
##
|
|
11
|
+
## Installation
|
|
12
12
|
|
|
13
13
|
```bash
|
|
14
|
-
|
|
15
|
-
# или npm i / yarn add / pnpm add
|
|
14
|
+
npm install @central-design-system/components
|
|
16
15
|
```
|
|
17
16
|
|
|
18
|
-
##
|
|
17
|
+
## Wiring it into the app
|
|
19
18
|
|
|
20
19
|
```ts
|
|
21
20
|
import { createApp } from 'vue';
|
|
@@ -27,31 +26,32 @@ const cds = createCds({ components, directives });
|
|
|
27
26
|
createApp(App).use(cds).mount('#app');
|
|
28
27
|
```
|
|
29
28
|
|
|
30
|
-
|
|
29
|
+
After that every component is available globally: `<CdsButton appearance="primary">Click me</CdsButton>`.
|
|
31
30
|
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
This is the full registration — it pulls in the entire library. For production
|
|
32
|
+
apps register components individually, see the Tree-shaking guide.
|
|
34
33
|
|
|
35
|
-
##
|
|
34
|
+
## Style entry points
|
|
36
35
|
|
|
37
|
-
|
|
|
36
|
+
| Import | What it provides |
|
|
38
37
|
| --- | --- |
|
|
39
|
-
| `@central-design-system/components/styles` |
|
|
40
|
-
| `@central-design-system/components/styles/common.css` |
|
|
41
|
-
| `@central-design-system/components/styles/core` |
|
|
42
|
-
| `@central-design-system/components/styles/utilities` |
|
|
43
|
-
| `@central-design-system/components/styles/tailwind` |
|
|
44
|
-
| `@central-design-system/components/styles/legacy` | Legacy
|
|
38
|
+
| `@central-design-system/components/styles` | Aggregate: CSS of every component (~556 KB). Quick start, tree-shaking disabled |
|
|
39
|
+
| `@central-design-system/components/styles/common.css` | Base layer (~9 KB): layers, reset, fonts, typography, grid |
|
|
40
|
+
| `@central-design-system/components/styles/core` | Only layers, fonts and reset — no typography |
|
|
41
|
+
| `@central-design-system/components/styles/utilities` | Utility classes |
|
|
42
|
+
| `@central-design-system/components/styles/tailwind` | Tailwind CSS integration layer |
|
|
43
|
+
| `@central-design-system/components/styles/legacy` | Legacy utilities for migrating from CDS 3 |
|
|
45
44
|
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
With per-component registration you only include the base layer
|
|
46
|
+
`styles/common.css` — each component ships its own CSS alongside the
|
|
47
|
+
component itself.
|
|
48
48
|
|
|
49
|
-
|
|
50
|
-
|
|
49
|
+
Tailwind CSS v4 integration (installation, layers, utilities built on CDS
|
|
50
|
+
tokens) is covered in the Tailwind CSS + CDS guide.
|
|
51
51
|
|
|
52
|
-
##
|
|
52
|
+
## Themes
|
|
53
53
|
|
|
54
|
-
|
|
54
|
+
The theme is set at initialization via `createCds`:
|
|
55
55
|
|
|
56
56
|
```ts
|
|
57
57
|
const cds = createCds({
|
|
@@ -61,17 +61,17 @@ const cds = createCds({
|
|
|
61
61
|
});
|
|
62
62
|
```
|
|
63
63
|
|
|
64
|
-
|
|
65
|
-
`promoLight`, `promoDark`.
|
|
66
|
-
|
|
64
|
+
Built-in themes: `cdsLight` (default), `cdsDark`, `b2bLight`, `b2bDark`,
|
|
65
|
+
`promoLight`, `promoDark`. The values of every color token in each theme
|
|
66
|
+
are listed in ../tokens/themes.md.
|
|
67
67
|
|
|
68
|
-
|
|
69
|
-
|
|
68
|
+
Custom themes, runtime theme switching and disabling theming are covered in
|
|
69
|
+
the Theming guide.
|
|
70
70
|
|
|
71
|
-
##
|
|
71
|
+
## Icons
|
|
72
72
|
|
|
73
|
-
|
|
74
|
-
(`carbon`, `lucide`, `phosphor`, `remix`):
|
|
73
|
+
The built-in `cds` iconpack is active by default. Other packs are available
|
|
74
|
+
too (`carbon`, `lucide`, `phosphor`, `remix`):
|
|
75
75
|
|
|
76
76
|
```ts
|
|
77
77
|
import { createCds, iconsets } from '@central-design-system/components';
|
|
@@ -85,95 +85,96 @@ createCds({
|
|
|
85
85
|
});
|
|
86
86
|
```
|
|
87
87
|
|
|
88
|
-
|
|
89
|
-
|
|
88
|
+
The `@central-design-system/icons` package (CDS 3) is deprecated, see the
|
|
89
|
+
migration guide.
|
|
90
90
|
|
|
91
91
|
---
|
|
92
92
|
|
|
93
|
-
#
|
|
93
|
+
# CDS 4 conventions
|
|
94
94
|
|
|
95
|
-
|
|
96
|
-
(`references/components
|
|
97
|
-
|
|
95
|
+
The golden rule: **the source of truth is the component's `api.md`**
|
|
96
|
+
(`references/components/<name>/api.md`). Do not invent props, events or
|
|
97
|
+
slots — if they are not in api.md, they do not exist on the component.
|
|
98
98
|
|
|
99
|
-
##
|
|
99
|
+
## Shared props
|
|
100
100
|
|
|
101
|
-
|
|
102
|
-
|
|
101
|
+
The props below come from shared composable factories and behave identically
|
|
102
|
+
in every component that has them:
|
|
103
103
|
|
|
104
|
-
|
|
|
104
|
+
| Prop | Semantics |
|
|
105
105
|
| --- | --- |
|
|
106
|
-
| `size` |
|
|
107
|
-
| `appearance` |
|
|
108
|
-
| `color` / `bgColor` |
|
|
109
|
-
| `disabled` |
|
|
110
|
-
| `loading` |
|
|
111
|
-
| `width` / `height` |
|
|
106
|
+
| `size` | Size: `xs` / `sm` / `md` / `lg` / `xl` or a number |
|
|
107
|
+
| `appearance` | Appearance (visual variant); the set of values is component-specific — check the type in api.md |
|
|
108
|
+
| `color` / `bgColor` | Content / background color as a **theme token**, not a CSS value |
|
|
109
|
+
| `disabled` | Disabled state |
|
|
110
|
+
| `loading` | Loading state |
|
|
111
|
+
| `width` / `height` | Dimensions (number → px, or a CSS value as a string) |
|
|
112
112
|
|
|
113
|
-
##
|
|
113
|
+
## Tokens, not raw values
|
|
114
114
|
|
|
115
|
-
-
|
|
116
|
-
|
|
117
|
-
-
|
|
118
|
-
`--cds-*`
|
|
115
|
+
- Set colors via the `color` prop / theme tokens (`--cds-color-*`), never
|
|
116
|
+
arbitrary CSS (`#fff`, `red`). Theme tokens are listed in ../tokens/themes.md.
|
|
117
|
+
- Spacing, radii and other values in custom SCSS go through the global
|
|
118
|
+
`--cds-*` variables, never hardcoded.
|
|
119
119
|
|
|
120
120
|
## Atomic Design
|
|
121
121
|
|
|
122
|
-
|
|
123
|
-
`CdsTextInput`
|
|
124
|
-
`CdsMessages` + `CdsInput`,
|
|
125
|
-
|
|
122
|
+
Complex UI is composed from atoms. Example — a form: the ready-made
|
|
123
|
+
`CdsTextInput` "molecule" is internally built as `CdsField` + `CdsLabel` +
|
|
124
|
+
`CdsDescription` + `CdsMessages` + `CdsInput`, and the same atoms are
|
|
125
|
+
available for building your own fields. See the Forms guide
|
|
126
|
+
for details.
|
|
126
127
|
|
|
127
|
-
##
|
|
128
|
+
## Defaults
|
|
128
129
|
|
|
129
|
-
|
|
130
|
+
Prop defaults can be set centrally:
|
|
130
131
|
|
|
131
|
-
-
|
|
132
|
-
-
|
|
132
|
+
- globally — via the `defaults` option in `createCds({ defaults: { CdsButton: { size: 'lg' } } })`;
|
|
133
|
+
- for a subtree — with the `CdsDefaultsProvider` component
|
|
133
134
|
(api).
|
|
134
135
|
|
|
135
|
-
##
|
|
136
|
+
## Deprecated APIs
|
|
136
137
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
138
|
+
Props/components marked `_(deprecated)_` in api.md still work but will be
|
|
139
|
+
removed. In the dev console they emit a warning prefixed `[CDS UPGRADE]`.
|
|
140
|
+
When migrating legacy code, see the migration guide.
|
|
140
141
|
|
|
141
142
|
---
|
|
142
143
|
|
|
143
|
-
#
|
|
144
|
+
# Forms with CDS 4
|
|
144
145
|
|
|
145
|
-
##
|
|
146
|
+
## Ready-made controls
|
|
146
147
|
|
|
147
|
-
|
|
148
|
-
`examples.md`
|
|
148
|
+
For typical forms use the ready-made "molecules" (each has its own `api.md`
|
|
149
|
+
and `examples.md` in `references/components/`):
|
|
149
150
|
|
|
150
|
-
|
|
|
151
|
+
| Control | Purpose |
|
|
151
152
|
| --- | --- |
|
|
152
|
-
| CdsTextInput |
|
|
153
|
-
| CdsSelect |
|
|
154
|
-
| CdsAutocomplete |
|
|
155
|
-
| CdsCombobox |
|
|
156
|
-
| CdsCheckbox |
|
|
157
|
-
| CdsRadioGroup |
|
|
158
|
-
| CdsToggle |
|
|
159
|
-
| CdsDatePicker / CdsTimePicker |
|
|
153
|
+
| CdsTextInput | Text field with label / description / messages |
|
|
154
|
+
| CdsSelect | Dropdown (single / multiple) |
|
|
155
|
+
| CdsAutocomplete | Selection with search over the list |
|
|
156
|
+
| CdsCombobox | Selection that also accepts free-form input |
|
|
157
|
+
| CdsCheckbox | Checkbox |
|
|
158
|
+
| CdsRadioGroup | Radio button group |
|
|
159
|
+
| CdsToggle | Toggle |
|
|
160
|
+
| CdsDatePicker / CdsTimePicker | Date / time |
|
|
160
161
|
|
|
161
|
-
## CdsForm:
|
|
162
|
+
## CdsForm: aggregation and validation
|
|
162
163
|
|
|
163
|
-
`CdsForm`
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
(
|
|
164
|
+
`CdsForm` groups fields, aggregates their validation (`v-model` — form
|
|
165
|
+
validity) and exposes `validate` / `reset` / `resetValidation` methods via
|
|
166
|
+
slot props and the exposed API. Validation rules are set on the fields with
|
|
167
|
+
the `rules` prop (an array of functions `value → true | 'error text'`).
|
|
167
168
|
|
|
168
|
-
|
|
169
|
+
A verified example (from Storybook):
|
|
169
170
|
|
|
170
171
|
```html
|
|
171
172
|
<CdsForm v-model="valid" @submit.prevent>
|
|
172
173
|
<template #default="{ reset }">
|
|
173
|
-
<CdsTextInput v-model="name" :rules="rules.name" label="
|
|
174
|
-
<CdsTextInput v-model="email" :rules="rules.email" label="Email" placeholder="
|
|
175
|
-
<CdsButton appearance="secondary" @click="reset"
|
|
176
|
-
<CdsButton type="submit"
|
|
174
|
+
<CdsTextInput v-model="name" :rules="rules.name" label="Name" placeholder="Enter name" />
|
|
175
|
+
<CdsTextInput v-model="email" :rules="rules.email" label="Email" placeholder="Enter Email" />
|
|
176
|
+
<CdsButton appearance="secondary" @click="reset">Clear</CdsButton>
|
|
177
|
+
<CdsButton type="submit">Submit</CdsButton>
|
|
177
178
|
</template>
|
|
178
179
|
</CdsForm>
|
|
179
180
|
```
|
|
@@ -185,111 +186,116 @@ const email = ref('');
|
|
|
185
186
|
|
|
186
187
|
const rules = {
|
|
187
188
|
name: [
|
|
188
|
-
(value: string) => !!value || '
|
|
189
|
-
(value: string) => value.length <= 10 || '
|
|
189
|
+
(value: string) => !!value || 'Must not be empty',
|
|
190
|
+
(value: string) => value.length <= 10 || 'No more than 10 characters'
|
|
190
191
|
],
|
|
191
192
|
email: [
|
|
192
|
-
(value: string) => !!value || '
|
|
193
|
-
(value: string) => /.+@.+\..+/.test(value) || '
|
|
193
|
+
(value: string) => !!value || 'Must not be empty',
|
|
194
|
+
(value: string) => /.+@.+\..+/.test(value) || 'Invalid format'
|
|
194
195
|
]
|
|
195
196
|
};
|
|
196
197
|
```
|
|
197
198
|
|
|
198
|
-
|
|
199
|
+
Useful modes (full list in api.md):
|
|
199
200
|
|
|
200
|
-
- `first-fail` —
|
|
201
|
-
- `disabled` / `readonly`
|
|
201
|
+
- `first-fail` — validation stops at the first invalid field;
|
|
202
|
+
- `disabled` / `readonly` on the form propagate to every nested field.
|
|
202
203
|
|
|
203
|
-
CdsForm
|
|
204
|
+
CdsForm also works with external validators (vuelidate, vee-validate) — see
|
|
204
205
|
examples.md.
|
|
205
206
|
|
|
206
|
-
##
|
|
207
|
+
## Building your own field from atoms
|
|
207
208
|
|
|
208
|
-
|
|
209
|
+
When no ready-made molecule fits, assemble the field from atoms:
|
|
209
210
|
|
|
210
|
-
|
|
|
211
|
+
| Atom | Role |
|
|
211
212
|
| --- | --- |
|
|
212
|
-
| CdsField |
|
|
213
|
-
| CdsLabel |
|
|
214
|
-
| CdsDescription |
|
|
215
|
-
| CdsMessages |
|
|
216
|
-
| CdsInput |
|
|
213
|
+
| CdsField | Field wrapper: wires up label/control/messages, states |
|
|
214
|
+
| CdsLabel | Field label |
|
|
215
|
+
| CdsDescription | Supporting description |
|
|
216
|
+
| CdsMessages | Error messages / hints |
|
|
217
|
+
| CdsInput | Bare input control |
|
|
217
218
|
|
|
218
|
-
|
|
219
|
-
|
|
219
|
+
Before assembling, open the `api.md` of every atom — take the set of props
|
|
220
|
+
and slots only from there.
|
|
220
221
|
|
|
221
222
|
---
|
|
222
223
|
|
|
223
|
-
#
|
|
224
|
+
# CDS 3 → CDS 4 migration (digest)
|
|
224
225
|
|
|
225
|
-
|
|
226
|
-
`MIGRATION.md`
|
|
226
|
+
This is a short digest. **The full version with Before/After for every
|
|
227
|
+
change is `MIGRATION.md` at the root of the
|
|
228
|
+
`@central-design-system/components` npm package.**
|
|
227
229
|
|
|
228
|
-
##
|
|
230
|
+
## Severity legend
|
|
229
231
|
|
|
230
|
-
|
|
|
232
|
+
| Marker | Meaning |
|
|
231
233
|
| --- | --- |
|
|
232
|
-
| ⚠️ **BREAKING** |
|
|
233
|
-
| 🔁 **RENAMED** |
|
|
234
|
-
| 🟠 **DEPRECATED** |
|
|
235
|
-
| ✨ **NEW** |
|
|
234
|
+
| ⚠️ **BREAKING** | Breaks existing code — action required |
|
|
235
|
+
| 🔁 **RENAMED** | Rename — mechanical search & replace |
|
|
236
|
+
| 🟠 **DEPRECATED** | Works in 4.x, will be removed in 5.x |
|
|
237
|
+
| ✨ **NEW** | New capability, nothing breaks |
|
|
236
238
|
|
|
237
|
-
##
|
|
239
|
+
## Quick checklist
|
|
238
240
|
|
|
239
|
-
- [ ]
|
|
241
|
+
- [ ] Replace the CSS import: `@central-design-system/components/dist/cds.css` →
|
|
240
242
|
`@central-design-system/components/styles` (⚠️ breaking).
|
|
241
|
-
- [ ]
|
|
242
|
-
|
|
243
|
-
- [ ]
|
|
244
|
-
- [ ]
|
|
245
|
-
|
|
243
|
+
- [ ] If you use `@central-design-system/icons` — the package is 🟠 deprecated;
|
|
244
|
+
switch to iconpacks via `createCds({ icons })` (see setup.md).
|
|
245
|
+
- [ ] Go through the component rename index below.
|
|
246
|
+
- [ ] Run the build and check the dev console: `[CDS UPGRADE]` warnings
|
|
247
|
+
point at deprecated props.
|
|
246
248
|
|
|
247
|
-
##
|
|
249
|
+
## Key breaking changes
|
|
248
250
|
|
|
249
|
-
- ⚠️
|
|
250
|
-
|
|
251
|
-
- ⚠️ **Legacy reset
|
|
251
|
+
- ⚠️ **CSS import path** — `dist/cds.css` is no longer a public entry point;
|
|
252
|
+
import `@central-design-system/components/styles` instead.
|
|
253
|
+
- ⚠️ **Legacy reset is off by default** — the global reset from CDS 3 is now
|
|
252
254
|
opt-in: `@use '@central-design-system/components/styles' with ($legacy-reset: true);`.
|
|
253
|
-
- ⚠️ **CSS
|
|
254
|
-
`@layer`;
|
|
255
|
-
|
|
255
|
+
- ⚠️ **CSS architecture on ITCSS + CSS Layers** — the cascade is driven by
|
|
256
|
+
native `@layer`; global overrides of CDS styles without `!important` may
|
|
257
|
+
now resolve differently.
|
|
256
258
|
|
|
257
|
-
##
|
|
259
|
+
## Component rename and removal index
|
|
258
260
|
|
|
259
261
|
| CDS 3 | CDS 4 |
|
|
260
262
|
| --- | --- |
|
|
261
|
-
| `CdsDropdown` | 🔁 `CdsSelect` (
|
|
263
|
+
| `CdsDropdown` | 🔁 `CdsSelect` (the native `<select>` from CDS 3 — via the `native-select` prop) |
|
|
262
264
|
| `CdsRadioButton` | 🔁 `CdsRadioGroup` |
|
|
263
265
|
| `CdsProgress` | 🔁 `CdsProgressBar` |
|
|
264
266
|
| `CdsTabsV2` | 🔁 `CdsTabs` |
|
|
265
|
-
| `CdsCheckboxGroup` | ⚠️
|
|
266
|
-
| `CdsContainer` | ⚠️
|
|
267
|
-
| `CdsBadge` | 🔁
|
|
267
|
+
| `CdsCheckboxGroup` | ⚠️ removed (use `CdsCheckbox` on its own) |
|
|
268
|
+
| `CdsContainer` | ⚠️ removed |
|
|
269
|
+
| `CdsBadge` | 🔁 props: `count`→`content`, `limited`→`:max`; ⚠️ `invertColor` removed |
|
|
268
270
|
|
|
269
|
-
|
|
270
|
-
`../components/` —
|
|
271
|
+
After renaming, double-check the `api.md` of the new component in
|
|
272
|
+
`../components/` — prop contracts may have changed.
|
|
271
273
|
|
|
272
274
|
---
|
|
273
275
|
|
|
276
|
+
---
|
|
277
|
+
sourceHash: fd1b145c7543a70dd8d9773e38d2341cf367cb5b
|
|
278
|
+
---
|
|
279
|
+
|
|
274
280
|
# Tailwind CSS v4 + CDS 4
|
|
275
281
|
|
|
276
|
-
|
|
277
|
-
[Installing Tailwind CSS with Vite](https://tailwindcss.com/docs/installation/using-vite).
|
|
282
|
+
For Vite projects, install Tailwind CSS v4 by following the official Tailwind
|
|
283
|
+
guide: [Installing Tailwind CSS with Vite](https://tailwindcss.com/docs/installation/using-vite).
|
|
278
284
|
|
|
279
|
-
|
|
285
|
+
Below is the recommended way to integrate CDS 4 with Tailwind CSS v4.
|
|
280
286
|
|
|
281
|
-
- Vite
|
|
282
|
-
- CSS
|
|
287
|
+
- The Vite plugin goes into `vite.config.ts`
|
|
288
|
+
- Tailwind's CSS layer goes into `main.ts`
|
|
283
289
|
|
|
284
|
-
## 1.
|
|
290
|
+
## 1. Install Tailwind CSS
|
|
285
291
|
|
|
286
292
|
```bash
|
|
287
293
|
npm install -D tailwindcss @tailwindcss/vite
|
|
288
294
|
```
|
|
289
295
|
|
|
290
|
-
## 2.
|
|
296
|
+
## 2. Add the Vite plugin
|
|
291
297
|
|
|
292
|
-
|
|
298
|
+
Add `@tailwindcss/vite` to `vite.config.ts`:
|
|
293
299
|
|
|
294
300
|
```ts
|
|
295
301
|
import { defineConfig } from 'vite';
|
|
@@ -300,9 +306,9 @@ export default defineConfig({
|
|
|
300
306
|
});
|
|
301
307
|
```
|
|
302
308
|
|
|
303
|
-
## 3.
|
|
309
|
+
## 3. Create a `tailwind.css` file
|
|
304
310
|
|
|
305
|
-
|
|
311
|
+
For example, `src/tailwind.css`:
|
|
306
312
|
|
|
307
313
|
```css
|
|
308
314
|
@import "@central-design-system/components/styles/tailwind";
|
|
@@ -310,9 +316,10 @@ export default defineConfig({
|
|
|
310
316
|
@import "tailwindcss/utilities" layer(cds-utilities.tailwind);
|
|
311
317
|
```
|
|
312
318
|
|
|
313
|
-
|
|
319
|
+
This wires CDS tokens into Tailwind. You don't need `preflight` separately —
|
|
320
|
+
the base reset styles already come from `@central-design-system/components/styles`.
|
|
314
321
|
|
|
315
|
-
## 4.
|
|
322
|
+
## 4. Import the styles in your app entry point
|
|
316
323
|
|
|
317
324
|
```ts
|
|
318
325
|
import { createApp } from 'vue';
|
|
@@ -332,45 +339,61 @@ const cds = createCds({
|
|
|
332
339
|
createApp(App).use(cds).mount('#app');
|
|
333
340
|
```
|
|
334
341
|
|
|
335
|
-
## 5.
|
|
342
|
+
## 5. Use Tailwind utilities and CDS tokens together
|
|
336
343
|
|
|
337
344
|
```html
|
|
338
345
|
<template>
|
|
339
|
-
<div class="flex flex-col gap-
|
|
346
|
+
<div class="flex flex-col gap-3 rounded-200 bg-surface-primary p-4 text-content-primary">
|
|
340
347
|
<h1 class="text-900 font-bold text-brand-primary">Hello CDS + Tailwind</h1>
|
|
341
|
-
<CdsButton
|
|
348
|
+
<CdsButton>Click me</CdsButton>
|
|
342
349
|
</div>
|
|
343
350
|
</template>
|
|
344
351
|
```
|
|
345
352
|
|
|
346
|
-
|
|
353
|
+
Once this is set up, you get both at the same time:
|
|
354
|
+
|
|
355
|
+
- standard Tailwind utilities: `flex`, `font-bold`, `gap-3`, `p-4`
|
|
356
|
+
- utility classes built from CDS tokens: `bg-surface-primary`, `text-content-primary`, `rounded-200`
|
|
357
|
+
- typography on the CDS scale: `font-sans` (the design system font), sizes
|
|
358
|
+
`text-50`…`text-1100`, line heights `leading-50`…`leading-1100`, weights
|
|
359
|
+
`font-regular` / `font-bold`, tracking `tracking-500`. Size and line height are
|
|
360
|
+
separate utilities: `text-*` never touches `line-height`
|
|
347
361
|
|
|
348
|
-
|
|
349
|
-
-
|
|
362
|
+
Write spacing with the standard Tailwind numeric scale (`gap-2`, `p-4`,
|
|
363
|
+
`mt-2`): the CDS spacing scale matches it, so there is no need for
|
|
364
|
+
`gap-200`/`p-400`-style spacing classes. Token-based classes remain for
|
|
365
|
+
color, radius, and typography.
|
|
350
366
|
|
|
351
|
-
CDS
|
|
352
|
-
|
|
367
|
+
The CDS configuration stays in sync with the active CDS theme automatically, so
|
|
368
|
+
color utility classes switch along with the theme.
|
|
353
369
|
|
|
354
370
|
---
|
|
355
371
|
|
|
356
|
-
|
|
372
|
+
---
|
|
373
|
+
sourceHash: 41872192eda1479740145bb7f4bcb9dbb28f0462
|
|
374
|
+
---
|
|
357
375
|
|
|
358
|
-
|
|
376
|
+
# Theming
|
|
359
377
|
|
|
360
|
-
|
|
378
|
+
The design system lets you switch themes or configure your own theme
|
|
379
|
+
programmatically, including at runtime.
|
|
361
380
|
|
|
362
|
-
|
|
381
|
+
## How it works
|
|
382
|
+
|
|
383
|
+
A theme in CDS 4 is a set of **semantic tokens** that are turned into CSS
|
|
384
|
+
variables when the application starts:
|
|
363
385
|
|
|
364
386
|
```
|
|
365
|
-
ThemeDefinition (TS) → --cds-color-* / --cds-* (CSS
|
|
387
|
+
ThemeDefinition (TS) → --cds-color-* / --cds-* (CSS variables) → component styles
|
|
366
388
|
↓
|
|
367
|
-
@theme (Tailwind CSS v4) → bg-surface-primary,
|
|
389
|
+
@theme (Tailwind CSS v4) → bg-surface-primary, rounded-200, …
|
|
368
390
|
```
|
|
369
391
|
|
|
370
|
-
|
|
392
|
+
Colors are written into the variables as **RGB channels** rather than finished
|
|
393
|
+
colors — that's what makes opacity control possible:
|
|
371
394
|
|
|
372
395
|
```css
|
|
373
|
-
/*
|
|
396
|
+
/* generated by CDS */
|
|
374
397
|
:root {
|
|
375
398
|
--cds-color-brand-primary: 0,90,178;
|
|
376
399
|
--cds-color-surface-primary: 255,255,255;
|
|
@@ -378,7 +401,7 @@ ThemeDefinition (TS) → --cds-color-* / --cds-* (CSS-переменные)
|
|
|
378
401
|
--cds-border-radius-200: 0.25rem;
|
|
379
402
|
}
|
|
380
403
|
|
|
381
|
-
/*
|
|
404
|
+
/* usage */
|
|
382
405
|
.my-block {
|
|
383
406
|
background: rgb(var(--cds-color-surface-primary));
|
|
384
407
|
border: var(--cds-border-100) solid rgb(var(--cds-color-brand-primary) / 0.4);
|
|
@@ -386,26 +409,27 @@ ThemeDefinition (TS) → --cds-color-* / --cds-* (CSS-переменные)
|
|
|
386
409
|
}
|
|
387
410
|
```
|
|
388
411
|
|
|
389
|
-
|
|
412
|
+
Theme styles are injected into `<style id="cds-theme-stylesheet">` and are
|
|
413
|
+
recalculated reactively when the theme changes.
|
|
390
414
|
|
|
391
|
-
##
|
|
415
|
+
## Enabling a theme
|
|
392
416
|
|
|
393
|
-
CDS 4
|
|
417
|
+
CDS 4 ships eight ready-made themes:
|
|
394
418
|
|
|
395
|
-
|
|
|
419
|
+
| Theme | Description |
|
|
396
420
|
| ------------- |-----------------------------------------|
|
|
397
|
-
| `cdsLight` |
|
|
398
|
-
| `cdsDark` |
|
|
399
|
-
| `b2bLight` |
|
|
400
|
-
| `b2bDark` |
|
|
401
|
-
| `lumaLight` |
|
|
402
|
-
| `lumaDark` |
|
|
403
|
-
| `promoLight` |
|
|
404
|
-
| `promoDark` |
|
|
421
|
+
| `cdsLight` | light theme, used by default |
|
|
422
|
+
| `cdsDark` | dark theme |
|
|
423
|
+
| `b2bLight` | light theme for B2B-Center applications |
|
|
424
|
+
| `b2bDark` | dark theme for B2B-Center applications |
|
|
425
|
+
| `lumaLight` | light Luma theme |
|
|
426
|
+
| `lumaDark` | dark Luma theme |
|
|
427
|
+
| `promoLight` | light promo theme |
|
|
428
|
+
| `promoDark` | dark promo theme |
|
|
405
429
|
|
|
406
|
-
>
|
|
430
|
+
> `cdsLight` is used by default — you don't need to enable it.
|
|
407
431
|
|
|
408
|
-
|
|
432
|
+
To switch to another theme, pass its name in the `createCds` options:
|
|
409
433
|
|
|
410
434
|
```ts
|
|
411
435
|
import { createApp } from 'vue';
|
|
@@ -425,7 +449,7 @@ const cds = createCds({
|
|
|
425
449
|
createApp(App).use(cds);
|
|
426
450
|
```
|
|
427
451
|
|
|
428
|
-
##
|
|
452
|
+
## Theming options
|
|
429
453
|
|
|
430
454
|
```ts
|
|
431
455
|
createCds({
|
|
@@ -444,22 +468,24 @@ createCds({
|
|
|
444
468
|
});
|
|
445
469
|
```
|
|
446
470
|
|
|
447
|
-
|
|
|
471
|
+
| Option | Type | Default | Purpose |
|
|
448
472
|
| --------------- | ---------------------------------------------------------- | ----------------------- | -------------------------------------------------------------------------- |
|
|
449
|
-
| `defaultTheme` | `ThemeName \| string` | `'cdsLight'` |
|
|
450
|
-
| `prefix` | `string` | `'cds'` |
|
|
451
|
-
| `themes` | `Record<string, ThemeDefinition>` |
|
|
452
|
-
| `variations` | `false \| { colors: string[]; lighten: number; darken: number }` | `false` |
|
|
453
|
-
| `utilities` | `boolean` | `true` |
|
|
454
|
-
| `legacyClasses` | `boolean` | `false` |
|
|
455
|
-
| `scoped` | `boolean` | `false` |
|
|
456
|
-
| `scope` | `string` | — |
|
|
457
|
-
| `stylesheetId` | `string` | `'cds-theme-stylesheet'`| `id`
|
|
458
|
-
| `cspNonce` | `string` | — | `nonce`
|
|
459
|
-
|
|
460
|
-
##
|
|
461
|
-
|
|
462
|
-
|
|
473
|
+
| `defaultTheme` | `ThemeName \| string` | `'cdsLight'` | Theme active at startup |
|
|
474
|
+
| `prefix` | `string` | `'cds'` | Prefix of the generated CSS variables (`--cds-color-*`) |
|
|
475
|
+
| `themes` | `Record<string, ThemeDefinition>` | built-in themes | Your own themes; merged with the built-in ones |
|
|
476
|
+
| `variations` | `false \| { colors: string[]; lighten: number; darken: number }` | `false` | Auto-generation of lighter/darker color variations |
|
|
477
|
+
| `utilities` | `boolean` | `true` | Generation of background/text utility classes from theme tokens |
|
|
478
|
+
| `legacyClasses` | `boolean` | `false` | CDS 3 legacy classes (`cds-bg-*`, `cds-text-*`, `cds-border-*`) |
|
|
479
|
+
| `scoped` | `boolean` | `false` | Don't write the variables into `:root` |
|
|
480
|
+
| `scope` | `string` | — | Limit theme selectors to a subtree (`:where(<scope>)`) |
|
|
481
|
+
| `stylesheetId` | `string` | `'cds-theme-stylesheet'`| `id` of the `<style>` tag holding the theme |
|
|
482
|
+
| `cspNonce` | `string` | — | `nonce` for Content Security Policy |
|
|
483
|
+
|
|
484
|
+
## Creating your own theme
|
|
485
|
+
|
|
486
|
+
A custom theme is a `ThemeDefinition` object with the fields `dark`, `colors` and
|
|
487
|
+
`variables`. You only need to specify the **overrides**: missing tokens are
|
|
488
|
+
inherited from `cdsLight` / `cdsDark`.
|
|
463
489
|
|
|
464
490
|
```ts
|
|
465
491
|
import { createApp } from 'vue';
|
|
@@ -472,7 +498,7 @@ import App from './App.vue';
|
|
|
472
498
|
const myCustomGreenTheme: ThemeDefinition = {
|
|
473
499
|
dark: false,
|
|
474
500
|
colors: {
|
|
475
|
-
//
|
|
501
|
+
// Main brand colors of the new theme
|
|
476
502
|
'brand-primary': '#2C8926',
|
|
477
503
|
'brand-primary-hover': '#3C9C2C',
|
|
478
504
|
'brand-primary-active': '#50A946',
|
|
@@ -482,11 +508,11 @@ const myCustomGreenTheme: ThemeDefinition = {
|
|
|
482
508
|
'brand-secondary-hover': '#A5DD98',
|
|
483
509
|
'brand-secondary-active': '#97D283',
|
|
484
510
|
'brand-secondary-border': '#BCE8AB',
|
|
485
|
-
//
|
|
511
|
+
// Surfaces
|
|
486
512
|
'page-primary': '#F2F8F0',
|
|
487
513
|
'surface-secondary': '#E8F3E4'
|
|
488
514
|
},
|
|
489
|
-
//
|
|
515
|
+
// Variables: typography, spacing, radii, shadows
|
|
490
516
|
variables: {
|
|
491
517
|
'font-family': 'Roboto, sans-serif',
|
|
492
518
|
'border-radius-200': '0.625rem'
|
|
@@ -507,26 +533,30 @@ const cds = createCds({
|
|
|
507
533
|
createApp(App).use(cds);
|
|
508
534
|
```
|
|
509
535
|
|
|
510
|
-
|
|
536
|
+
Every registered theme also gets a `.cds-theme--<name>` class — use it to enable
|
|
537
|
+
the theme on an arbitrary part of the markup.
|
|
511
538
|
|
|
512
|
-
###
|
|
539
|
+
### Token groups
|
|
513
540
|
|
|
514
|
-
`colors` —
|
|
541
|
+
`colors` — semantic colors:
|
|
515
542
|
|
|
516
|
-
- `brand-*` —
|
|
517
|
-
- `surface-*`, `page-*`, `fill-*` —
|
|
518
|
-
- `content-*` —
|
|
519
|
-
- `line-*` —
|
|
520
|
-
- `status-{success,warning,progress,info,danger,indication}-*` —
|
|
521
|
-
- `other-*` —
|
|
543
|
+
- `brand-*` — brand (`primary`, `secondary` and their `hover` / `active` / `border` / `content`)
|
|
544
|
+
- `surface-*`, `page-*`, `fill-*` — surfaces and fills
|
|
545
|
+
- `content-*` — text, icons, links
|
|
546
|
+
- `line-*` — borders, dividers, focus and selection
|
|
547
|
+
- `status-{success,warning,progress,info,danger,indication}-*` — statuses
|
|
548
|
+
- `other-*` — additional accent palettes
|
|
522
549
|
|
|
523
|
-
`variables` —
|
|
550
|
+
`variables` — dimensions: `spacing-*`, `font-size-*`, `font-line-height-*`,
|
|
551
|
+
`font-weight-*`, `border-*`, `border-radius-*`, `shadow-{x,y,blur}-*`,
|
|
552
|
+
`font-family`, `base-unit`.
|
|
524
553
|
|
|
525
|
-
|
|
554
|
+
For the full token list of a specific theme, see the package sources:
|
|
555
|
+
`@central-design-system/components/src/themes/cdsLight.ts`.
|
|
526
556
|
|
|
527
|
-
##
|
|
557
|
+
## Switching the theme
|
|
528
558
|
|
|
529
|
-
|
|
559
|
+
You can change the theme at runtime through the `useTheme` composable:
|
|
530
560
|
|
|
531
561
|
```vue
|
|
532
562
|
<script setup lang="ts">
|
|
@@ -540,34 +570,39 @@ function toggleTheme(): void {
|
|
|
540
570
|
</script>
|
|
541
571
|
|
|
542
572
|
<template>
|
|
543
|
-
<cds-button @click="toggleTheme"
|
|
573
|
+
<cds-button @click="toggleTheme">Toggle theme</cds-button>
|
|
544
574
|
</template>
|
|
545
575
|
```
|
|
546
576
|
|
|
547
|
-
|
|
577
|
+
You can also change the theme of a single component by passing it the `theme`
|
|
578
|
+
prop. Keep in mind that the theme applies not only to the component itself but to
|
|
579
|
+
everything nested inside it:
|
|
548
580
|
|
|
549
581
|
```vue
|
|
550
582
|
<template>
|
|
551
583
|
<cds-notification theme="b2bLight">
|
|
552
|
-
<!--
|
|
584
|
+
<!-- the button will use the b2bLight theme -->
|
|
553
585
|
<cds-button>Button</cds-button>
|
|
554
586
|
</cds-notification>
|
|
555
587
|
</template>
|
|
556
588
|
```
|
|
557
589
|
|
|
558
|
-
|
|
590
|
+
The `theme` prop is supported by container components and most visual components:
|
|
591
|
+
`CdsApp`, `CdsLayout`, `CdsPage`, `CdsSurface`, `CdsCard`, `CdsDrawer`,
|
|
592
|
+
`CdsModal`, `CdsOverlay`, `CdsButton`, `CdsField`, `CdsTable` and others.
|
|
559
593
|
|
|
560
|
-
##
|
|
594
|
+
## Using theme tokens in your own code
|
|
561
595
|
|
|
562
596
|
### Tailwind CSS v4
|
|
563
597
|
|
|
564
|
-
|
|
598
|
+
Theme tokens are mapped into Tailwind's `@theme`, so utilities switch along with
|
|
599
|
+
the theme automatically:
|
|
565
600
|
|
|
566
601
|
```html
|
|
567
|
-
<div class="bg-surface-primary text-content-primary p-
|
|
602
|
+
<div class="bg-surface-primary text-content-primary p-4 rounded-200">…</div>
|
|
568
603
|
```
|
|
569
604
|
|
|
570
|
-
|
|
605
|
+
Setup is described in Tailwind CSS v4 + CDS 4.
|
|
571
606
|
|
|
572
607
|
### CSS / SCSS
|
|
573
608
|
|
|
@@ -580,7 +615,8 @@ function toggleTheme(): void {
|
|
|
580
615
|
}
|
|
581
616
|
```
|
|
582
617
|
|
|
583
|
-
|
|
618
|
+
When you override CDS component styles, put them into the `cds-overrides` layer —
|
|
619
|
+
that way they are guaranteed to win over the library's styles:
|
|
584
620
|
|
|
585
621
|
```scss
|
|
586
622
|
@layer cds-overrides {
|
|
@@ -590,9 +626,10 @@ function toggleTheme(): void {
|
|
|
590
626
|
}
|
|
591
627
|
```
|
|
592
628
|
|
|
593
|
-
###
|
|
629
|
+
### CDS 3 legacy classes
|
|
594
630
|
|
|
595
|
-
|
|
631
|
+
The CDS 3 utility classes (`cds-bg-*`, `cds-text-*`, `cds-border-*`) are **off by
|
|
632
|
+
default** in CDS 4. To bring them back for the duration of a migration:
|
|
596
633
|
|
|
597
634
|
```ts
|
|
598
635
|
import '@central-design-system/components/styles/legacy';
|
|
@@ -602,9 +639,11 @@ const cds = createCds({
|
|
|
602
639
|
});
|
|
603
640
|
```
|
|
604
641
|
|
|
605
|
-
##
|
|
642
|
+
## Disabling theming
|
|
606
643
|
|
|
607
|
-
|
|
644
|
+
Pass `false` to the `theme` option. This prevents the generation of CSS variables
|
|
645
|
+
and theme classes and disables runtime theme switching — the `<style>` tag is not
|
|
646
|
+
created at all.
|
|
608
647
|
|
|
609
648
|
```ts
|
|
610
649
|
import { createCds } from '@central-design-system/components';
|
|
@@ -614,56 +653,59 @@ const cds = createCds({
|
|
|
614
653
|
});
|
|
615
654
|
```
|
|
616
655
|
|
|
617
|
-
|
|
656
|
+
With theming disabled, `theme.isDisabled === true` and `themeClasses` returns
|
|
657
|
+
`undefined`.
|
|
618
658
|
|
|
619
|
-
##
|
|
659
|
+
## Theme instance interface
|
|
620
660
|
|
|
621
|
-
`useTheme()`
|
|
661
|
+
`useTheme()` returns a `ThemeInstance` — access to the current theme and its
|
|
662
|
+
settings.
|
|
622
663
|
|
|
623
664
|
```ts
|
|
624
665
|
interface ThemeInstance {
|
|
625
|
-
/**
|
|
666
|
+
/** Whether theming is enabled (`false` with `theme: false`) */
|
|
626
667
|
readonly isDisabled: boolean;
|
|
627
668
|
|
|
628
669
|
/**
|
|
629
|
-
* Raw
|
|
630
|
-
*
|
|
670
|
+
* Raw object of the installed themes
|
|
671
|
+
* Themes can be added and modified
|
|
631
672
|
*/
|
|
632
673
|
readonly themes: Ref<Record<string, InternalThemeDefinition>>;
|
|
633
674
|
|
|
634
675
|
/**
|
|
635
|
-
*
|
|
636
|
-
*
|
|
676
|
+
* Name of the current theme
|
|
677
|
+
* Inherited from the parent component
|
|
637
678
|
*/
|
|
638
679
|
readonly name: Readonly<Ref<string>>;
|
|
639
680
|
|
|
640
681
|
/**
|
|
641
|
-
*
|
|
642
|
-
*
|
|
682
|
+
* Processed object of the current theme
|
|
683
|
+
* Includes the automatically generated colors
|
|
643
684
|
*/
|
|
644
685
|
readonly current: DeepReadonly<Ref<InternalThemeDefinition>>;
|
|
645
686
|
readonly computedThemes: DeepReadonly<Ref<Record<string, InternalThemeDefinition>>>;
|
|
646
687
|
|
|
647
|
-
/**
|
|
688
|
+
/** Class of the current theme — `cds-theme--<name>` */
|
|
648
689
|
readonly themeClasses: Readonly<ComputedRef<string | undefined>>;
|
|
649
690
|
|
|
650
|
-
/**
|
|
691
|
+
/** Generated CSS of the current theme */
|
|
651
692
|
readonly styles: Readonly<ComputedRef<string>>;
|
|
652
693
|
|
|
653
694
|
readonly global: {
|
|
654
|
-
/**
|
|
695
|
+
/** Name of the current global theme in the application (writable) */
|
|
655
696
|
readonly name: Ref<string>;
|
|
656
697
|
|
|
657
698
|
/**
|
|
658
|
-
*
|
|
659
|
-
*
|
|
699
|
+
* Processed object of the current global theme in the application
|
|
700
|
+
* Also available from `theme.computedThemes.value[theme.global.name.value]`
|
|
660
701
|
*/
|
|
661
702
|
readonly current: DeepReadonly<Ref<InternalThemeDefinition>>;
|
|
662
703
|
};
|
|
663
704
|
}
|
|
664
705
|
```
|
|
665
706
|
|
|
666
|
-
|
|
707
|
+
The theme instance is also available on the object returned by `createCds()` —
|
|
708
|
+
handy outside of a component context:
|
|
667
709
|
|
|
668
710
|
```ts
|
|
669
711
|
const cds = createCds({ theme: { defaultTheme: 'cdsLight' } });
|
|
@@ -673,33 +715,39 @@ cds.theme.global.name.value = 'cdsDark';
|
|
|
673
715
|
|
|
674
716
|
---
|
|
675
717
|
|
|
718
|
+
---
|
|
719
|
+
sourceHash: b1ba0f5864509842881b42ebf6cfb46aadcba96f
|
|
720
|
+
---
|
|
721
|
+
|
|
676
722
|
# Tree-shaking
|
|
677
723
|
|
|
678
|
-
CDS 4
|
|
679
|
-
|
|
680
|
-
(Vite, webpack, Rollup)
|
|
724
|
+
CDS 4 is published as an ESM bundle with its module structure preserved: every
|
|
725
|
+
component is a separate chunk with its own CSS next to it. That lets the bundler
|
|
726
|
+
(Vite, webpack, Rollup) drop everything your application doesn't use.
|
|
681
727
|
|
|
682
|
-
|
|
728
|
+
For this to work, follow two rules:
|
|
683
729
|
|
|
684
|
-
1.
|
|
685
|
-
2.
|
|
730
|
+
1. **Register only the components you actually need in `createCds`.**
|
|
731
|
+
2. **Include the base styles selectively** rather than the whole `styles.css`.
|
|
686
732
|
|
|
687
|
-
|
|
733
|
+
Below is how to do that and how much it saves.
|
|
688
734
|
|
|
689
|
-
##
|
|
735
|
+
## How it works
|
|
690
736
|
|
|
691
|
-
- ESM
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
737
|
+
- The ESM bundle is built with `chunkSplitPlugin({ strategy: 'unbundle' })` — the
|
|
738
|
+
library's module structure is preserved and components are not glued into a
|
|
739
|
+
single file.
|
|
740
|
+
- `package.json` declares `sideEffects`, so the bundler knows the library's JS
|
|
741
|
+
modules are pure and safe to remove.
|
|
742
|
+
- During the build, each component's chunk gets an import of its own CSS
|
|
743
|
+
appended. That's why `import { CdsButton }` pulls in exactly `CdsButton.css`,
|
|
744
|
+
not the styles of the entire library.
|
|
697
745
|
|
|
698
|
-
|
|
746
|
+
No special build or plugin is required — ordinary named imports are enough.
|
|
699
747
|
|
|
700
|
-
##
|
|
748
|
+
## Selective component registration
|
|
701
749
|
|
|
702
|
-
|
|
750
|
+
Pass only the components you use to `createCds`:
|
|
703
751
|
|
|
704
752
|
```ts
|
|
705
753
|
import { createApp } from 'vue';
|
|
@@ -716,25 +764,25 @@ const cds = createCds({
|
|
|
716
764
|
createApp(App).use(cds).mount('#app');
|
|
717
765
|
```
|
|
718
766
|
|
|
719
|
-
|
|
720
|
-
|
|
767
|
+
Components registered this way are available in templates globally — just as with
|
|
768
|
+
full registration:
|
|
721
769
|
|
|
722
770
|
```html
|
|
723
771
|
<template>
|
|
724
772
|
<CdsCard>
|
|
725
|
-
<CdsButton
|
|
773
|
+
<CdsButton>Click me</CdsButton>
|
|
726
774
|
</CdsCard>
|
|
727
775
|
</template>
|
|
728
776
|
```
|
|
729
777
|
|
|
730
|
-
>
|
|
731
|
-
>
|
|
732
|
-
>
|
|
778
|
+
> **Important:** `createCds` does not register components on its own. The set is
|
|
779
|
+
> always defined by the caller. That's deliberate: if the factory referenced the
|
|
780
|
+
> full component list, the bundler could not remove a single one of them.
|
|
733
781
|
|
|
734
|
-
###
|
|
782
|
+
### Alternative: a local import in an SFC
|
|
735
783
|
|
|
736
|
-
|
|
737
|
-
|
|
784
|
+
If you need a component in one or two places, global registration is optional —
|
|
785
|
+
import it right inside the component:
|
|
738
786
|
|
|
739
787
|
```html
|
|
740
788
|
<script setup lang="ts">
|
|
@@ -742,17 +790,18 @@ import { CdsButton } from '@central-design-system/components';
|
|
|
742
790
|
</script>
|
|
743
791
|
|
|
744
792
|
<template>
|
|
745
|
-
<CdsButton
|
|
793
|
+
<CdsButton>Click me</CdsButton>
|
|
746
794
|
</template>
|
|
747
795
|
```
|
|
748
796
|
|
|
749
|
-
`createCds`
|
|
750
|
-
|
|
797
|
+
You still need `createCds` in the entry point — it supplies themes, locales,
|
|
798
|
+
icons and breakpoints through `provide`. But you don't have to pass `components`
|
|
799
|
+
to it at all.
|
|
751
800
|
|
|
752
|
-
##
|
|
801
|
+
## Full registration
|
|
753
802
|
|
|
754
|
-
|
|
755
|
-
|
|
803
|
+
When the set of components is not known in advance (internal admin panels,
|
|
804
|
+
sandboxes, documentation), it's easier to register everything:
|
|
756
805
|
|
|
757
806
|
```ts
|
|
758
807
|
import { createCds, components, directives } from '@central-design-system/components';
|
|
@@ -760,46 +809,47 @@ import { createCds, components, directives } from '@central-design-system/compon
|
|
|
760
809
|
const cds = createCds({ components, directives });
|
|
761
810
|
```
|
|
762
811
|
|
|
763
|
-
|
|
764
|
-
|
|
812
|
+
Such a call disables component tree-shaking: the `components` namespace import
|
|
813
|
+
keeps the whole library in the bundle.
|
|
765
814
|
|
|
766
|
-
##
|
|
815
|
+
## Styles
|
|
767
816
|
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
817
|
+
Component styles are included automatically along with the components themselves.
|
|
818
|
+
The only thing you have to include manually is the **base layer** — reset, fonts,
|
|
819
|
+
CSS layer order and global element styles:
|
|
771
820
|
|
|
772
821
|
```ts
|
|
773
822
|
import '@central-design-system/components/styles/common.css';
|
|
774
823
|
```
|
|
775
824
|
|
|
776
|
-
|
|
777
|
-
|
|
825
|
+
The base layer is mandatory: it's where the `@layer` order is declared, and the
|
|
826
|
+
correct cascade of component styles depends on it.
|
|
778
827
|
|
|
779
|
-
|
|
780
|
-
(`h1`–`h6`)
|
|
828
|
+
Take `common.css`, not `core.css`: `core.css` has no typography, so headings
|
|
829
|
+
(`h1`–`h6`) keep browser sizes instead of the CDS scale.
|
|
781
830
|
|
|
782
|
-
|
|
831
|
+
Available options:
|
|
783
832
|
|
|
784
|
-
|
|
|
833
|
+
| Import | Size | What's inside |
|
|
785
834
|
| --- | --- | --- |
|
|
786
|
-
| `styles/common.css` | ~9 KB |
|
|
787
|
-
| `styles/core.css` | ~2 KB |
|
|
788
|
-
| `styles/tailwind.css` | ~12 KB | CDS
|
|
789
|
-
| `styles/legacy.css` | ~253 KB |
|
|
835
|
+
| `styles/common.css` | ~9 KB | The recommended base: `core` + typography + grid utilities |
|
|
836
|
+
| `styles/core.css` | ~2 KB | Layers, fonts and reset only — **no typography** |
|
|
837
|
+
| `styles/tailwind.css` | ~12 KB | CDS tokens for Tailwind CSS v4 |
|
|
838
|
+
| `styles/legacy.css` | ~253 KB | Compatibility with legacy CDS 3 markup |
|
|
790
839
|
|
|
791
|
-
>
|
|
792
|
-
>
|
|
793
|
-
>
|
|
840
|
+
> **Don't use `@central-design-system/components/styles` in a tree-shaking
|
|
841
|
+
> scenario.** It's a ~556 KB aggregate containing the CSS of every component in
|
|
842
|
+
> the library. It's convenient for a quick start, but it completely defeats
|
|
843
|
+
> selective registration.
|
|
794
844
|
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
845
|
+
Color tokens (`--cds-color-*` and the rest) are not in the CSS files — they are
|
|
846
|
+
generated and injected into the document by `createCds` at runtime, based on the
|
|
847
|
+
active theme. There is nothing extra to include.
|
|
798
848
|
|
|
799
|
-
##
|
|
849
|
+
## Directives
|
|
800
850
|
|
|
801
|
-
|
|
802
|
-
|
|
851
|
+
Directives (`ClickOutside`, `Intersect`, `Touch`) are named exports and are
|
|
852
|
+
registered just as selectively:
|
|
803
853
|
|
|
804
854
|
```ts
|
|
805
855
|
import { createCds, ClickOutside } from '@central-design-system/components';
|
|
@@ -810,107 +860,355 @@ const cds = createCds({
|
|
|
810
860
|
});
|
|
811
861
|
```
|
|
812
862
|
|
|
813
|
-
|
|
814
|
-
`ClickOutside`, `Intersect`
|
|
815
|
-
`CdsSelect`, `CdsMenu`, `CdsTooltip`, `CdsSlideView`,
|
|
816
|
-
|
|
817
|
-
`createCds`
|
|
818
|
-
`v-touch`
|
|
863
|
+
The library's own components don't need you to register directives — the ones
|
|
864
|
+
that use `ClickOutside`, `Intersect` and `Touch` internally (`CdsOverlay` and
|
|
865
|
+
everything built on it: `CdsSelect`, `CdsMenu`, `CdsTooltip`, `CdsSlideView`,
|
|
866
|
+
input fields) import them themselves and register them locally. Pass `directives`
|
|
867
|
+
to `createCds` only for your own markup — `v-click-outside`, `v-intersect`,
|
|
868
|
+
`v-touch` in the application's templates.
|
|
819
869
|
|
|
820
|
-
>
|
|
821
|
-
>
|
|
822
|
-
>
|
|
823
|
-
>
|
|
870
|
+
> **In `4.0.0-alpha.0`:** local registration inside components didn't work, and
|
|
871
|
+
> the `CdsSelect` / `CdsMenu` menus wouldn't close on an outside click unless
|
|
872
|
+
> `directives` was passed to `createCds`. If you can't upgrade, add
|
|
873
|
+
> `directives: { ClickOutside, Touch }` to the registration.
|
|
824
874
|
|
|
825
|
-
##
|
|
875
|
+
## How much it saves
|
|
826
876
|
|
|
827
|
-
|
|
828
|
-
|
|
877
|
+
Measurements on Vite 5 (production, minified, styles in a separate file, Vue
|
|
878
|
+
included in the bundle, the base `common.css` not counted):
|
|
829
879
|
|
|
830
|
-
|
|
|
880
|
+
| Scenario | JS | JS (gzip) | CSS | CSS (gzip) |
|
|
831
881
|
| --- | --- | --- | --- | --- |
|
|
832
|
-
|
|
|
833
|
-
| `createCds` + 3
|
|
834
|
-
| `createCds` + 1
|
|
835
|
-
| 1
|
|
882
|
+
| Full registration (`components`, `directives`) | 625 KB | 203 KB | 208 KB | 24.6 KB |
|
|
883
|
+
| `createCds` + 3 components | 196 KB | 62.6 KB | 27.6 KB | 4.1 KB |
|
|
884
|
+
| `createCds` + 1 component | 162 KB | 51.4 KB | 12.6 KB | 1.9 KB |
|
|
885
|
+
| 1 component without `createCds` | 63 KB | 23.4 KB | 12.6 KB | 1.9 KB |
|
|
836
886
|
|
|
837
|
-
|
|
838
|
-
(`CdsTable`, `CdsAutocomplete`, `CdsDatePicker`)
|
|
887
|
+
The numbers depend on which components exactly you include: composite components
|
|
888
|
+
(`CdsTable`, `CdsAutocomplete`, `CdsDatePicker`) pull in more dependencies than
|
|
889
|
+
atoms do.
|
|
839
890
|
|
|
840
|
-
###
|
|
891
|
+
### What isn't tree-shaken
|
|
841
892
|
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
893
|
+
About 99 KB is the core that `createCds` always includes: themes, locales, icons,
|
|
894
|
+
breakpoints (`useDisplay`), `goTo` and the `defaults` system. That volume doesn't
|
|
895
|
+
depend on the number of components — it is exactly the difference between the
|
|
896
|
+
"1 component without `createCds`" (63 KB) and "`createCds` + 1 component"
|
|
897
|
+
(162 KB) rows.
|
|
846
898
|
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
899
|
+
If CDS is used in a couple of places and you don't need the global subsystems,
|
|
900
|
+
you can skip `createCds` entirely. But then there are no themes, no locales and
|
|
901
|
+
no defaults, so that mode only suits pinpoint embeds.
|
|
850
902
|
|
|
851
|
-
##
|
|
903
|
+
## How to verify the result
|
|
852
904
|
|
|
853
905
|
```bash
|
|
854
906
|
npx vite-bundle-visualizer
|
|
855
907
|
```
|
|
856
908
|
|
|
857
|
-
|
|
909
|
+
What to look for:
|
|
858
910
|
|
|
859
|
-
-
|
|
860
|
-
-
|
|
861
|
-
(
|
|
862
|
-
-
|
|
863
|
-
|
|
911
|
+
- the bundle should contain no chunks of components missing from your `createCds`;
|
|
912
|
+
- if an "extra" component shows up, it is most likely imported transitively
|
|
913
|
+
(`CdsSelect` pulls in `CdsMenu` and `CdsList`, for instance) — that's normal;
|
|
914
|
+
- if the whole library ended up in the bundle, look for `components` or
|
|
915
|
+
`import * as` among your imports.
|
|
864
916
|
|
|
865
|
-
##
|
|
917
|
+
## Common mistakes
|
|
866
918
|
|
|
867
|
-
**
|
|
868
|
-
|
|
919
|
+
**A namespace import instead of a named one.** Any `import * as` from the library
|
|
920
|
+
keeps all of it:
|
|
869
921
|
|
|
870
922
|
```ts
|
|
871
|
-
// ❌
|
|
923
|
+
// ❌ pulls in every component
|
|
872
924
|
import * as cdsComponents from '@central-design-system/components';
|
|
873
925
|
|
|
874
926
|
// ✅
|
|
875
927
|
import { CdsButton } from '@central-design-system/components';
|
|
876
928
|
```
|
|
877
929
|
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
930
|
+
**Importing icon packs through `iconsets`.** The `iconsets` object references all
|
|
931
|
+
packs at once, so it is not tree-shaken: the bundle gets the JS of every pack
|
|
932
|
+
(including `cds` — 46 KB) and, since UnoCSS scans them itself, the CSS of all five
|
|
933
|
+
packs (≈370 KB instead of ≈70 KB). Import the pack through its subpath:
|
|
882
934
|
|
|
883
935
|
```ts
|
|
884
|
-
// ❌
|
|
936
|
+
// ❌ pulls in every pack
|
|
885
937
|
import { iconsets } from '@central-design-system/components';
|
|
886
938
|
const aliases = iconsets.remix.aliases;
|
|
887
939
|
|
|
888
|
-
// ✅
|
|
940
|
+
// ✅ remix only
|
|
889
941
|
import { remix } from '@central-design-system/components/iconsets/remix';
|
|
890
942
|
const aliases = remix.aliases;
|
|
891
943
|
```
|
|
892
944
|
|
|
893
|
-
|
|
894
|
-
|
|
945
|
+
**Including the style aggregate.** `@central-design-system/components/styles`
|
|
946
|
+
contains the CSS of every component — use `styles/common.css`.
|
|
895
947
|
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
948
|
+
**Your own barrel re-export.** A `src/ui/index.ts` file that re-exports dozens of
|
|
949
|
+
CDS components kills tree-shaking if you import everything from it. Import
|
|
950
|
+
components directly from the library.
|
|
899
951
|
|
|
900
|
-
|
|
901
|
-
by design.
|
|
902
|
-
|
|
952
|
+
**A bundler without ESM support.** The CJS bundle (`dist/cjs`) and the IIFE build
|
|
953
|
+
are not tree-shakable by design. Make sure your bundler resolves the `import`
|
|
954
|
+
export condition — Vite, webpack 5 and Rollup do it by default.
|
|
903
955
|
|
|
904
956
|
---
|
|
905
957
|
|
|
906
|
-
|
|
958
|
+
---
|
|
959
|
+
sourceHash: 5d3ad246b66c58c6ecd39eb645d52dd6a026eaf2
|
|
960
|
+
---
|
|
961
|
+
|
|
962
|
+
# SASS variables
|
|
907
963
|
|
|
908
|
-
|
|
964
|
+
CDS 4 styles are written in SASS/SCSS, and part of the internal setup — the base
|
|
965
|
+
reset, global typography, font, grid and breakpoints — is extracted into SASS
|
|
966
|
+
variables flagged with `!default`. You can override them when building your
|
|
967
|
+
application through the standard
|
|
968
|
+
[module configuration](https://sass-lang.com/documentation/at-rules/use/#configuration)
|
|
969
|
+
mechanism: `@use '…' with (…)`.
|
|
909
970
|
|
|
910
|
-
|
|
971
|
+
> SASS variables are the **compile-time** configuration layer. Colors, spacing
|
|
972
|
+
> and the rest of the component design tokens live in CSS variables (`--cds-*`)
|
|
973
|
+
> and are configured by themes at runtime — see Theming. Start
|
|
974
|
+
> with the theme; drop down to SASS variables when you need to change the base
|
|
975
|
+
> layer itself: reset, typography, grid.
|
|
911
976
|
|
|
912
|
-
|
|
913
|
-
|
|
977
|
+
## Setup
|
|
978
|
+
|
|
979
|
+
Vite compiles SCSS out of the box — you only need the preprocessor itself:
|
|
980
|
+
|
|
981
|
+
```bash
|
|
982
|
+
npm install -D sass-embedded
|
|
983
|
+
```
|
|
984
|
+
|
|
985
|
+
The classic `sass` works too, but `sass-embedded` is noticeably faster. To speed
|
|
986
|
+
up large builds, opt into the modern compiler API:
|
|
987
|
+
|
|
988
|
+
```ts
|
|
989
|
+
// vite.config.ts
|
|
990
|
+
export default defineConfig({
|
|
991
|
+
css: {
|
|
992
|
+
preprocessorOptions: {
|
|
993
|
+
scss: { api: 'modern-compiler' }
|
|
994
|
+
}
|
|
995
|
+
}
|
|
996
|
+
});
|
|
997
|
+
```
|
|
998
|
+
|
|
999
|
+
## Plugging in with a configuration
|
|
1000
|
+
|
|
1001
|
+
Normally the base styles are plugged in as ready-made CSS —
|
|
1002
|
+
`import '@central-design-system/components/styles'`. To override SASS variables,
|
|
1003
|
+
replace that import with your own SCSS file: in SCSS the
|
|
1004
|
+
`@central-design-system/components/styles` entry point resolves to the **sources**
|
|
1005
|
+
of the base layer (the `sass` export condition in `package.json`), and your
|
|
1006
|
+
configuration is applied at compile time.
|
|
1007
|
+
|
|
1008
|
+
```diff
|
|
1009
|
+
// main.ts
|
|
1010
|
+
import { createApp } from 'vue';
|
|
1011
|
+
|
|
1012
|
+
- import '@central-design-system/components/styles';
|
|
1013
|
+
+ import './styles/main.scss';
|
|
1014
|
+
```
|
|
1015
|
+
|
|
1016
|
+
```scss
|
|
1017
|
+
// src/styles/main.scss
|
|
1018
|
+
@use '@central-design-system/components/styles' with (
|
|
1019
|
+
$reset: false,
|
|
1020
|
+
$body-font-family: ('Inter', sans-serif)
|
|
1021
|
+
);
|
|
1022
|
+
```
|
|
1023
|
+
|
|
1024
|
+
The component styles themselves need nothing extra: they are precompiled and ship
|
|
1025
|
+
with the components' JS chunks — both with selective and with full registration
|
|
1026
|
+
(see Tree-shaking).
|
|
1027
|
+
|
|
1028
|
+
> Wrap a value containing commas — `$body-font-family` with several fonts, for
|
|
1029
|
+
> instance — in parentheses, otherwise SASS reads it as several arguments.
|
|
1030
|
+
|
|
1031
|
+
## A settings file
|
|
1032
|
+
|
|
1033
|
+
Module configuration is applied once, on the first load. If you need the values
|
|
1034
|
+
not only in the entry point but also in your application's component styles,
|
|
1035
|
+
extract them into a separate settings file and use that everywhere:
|
|
1036
|
+
|
|
1037
|
+
```scss
|
|
1038
|
+
// src/styles/settings.scss
|
|
1039
|
+
@forward '@central-design-system/components/styles/settings' with (
|
|
1040
|
+
$body-font-family: ('Inter', sans-serif),
|
|
1041
|
+
$grid-gutter: 24px
|
|
1042
|
+
);
|
|
1043
|
+
```
|
|
1044
|
+
|
|
1045
|
+
```scss
|
|
1046
|
+
// src/styles/main.scss
|
|
1047
|
+
@use './settings'; // configures the CDS variables
|
|
1048
|
+
@use '@central-design-system/components/styles'; // the base is built with them
|
|
1049
|
+
```
|
|
1050
|
+
|
|
1051
|
+
```html
|
|
1052
|
+
<!-- Component.vue -->
|
|
1053
|
+
<style lang="scss">
|
|
1054
|
+
@use '@/styles/settings' as s;
|
|
1055
|
+
|
|
1056
|
+
.card {
|
|
1057
|
+
gap: s.$grid-gutter;
|
|
1058
|
+
font-family: s.$body-font-family;
|
|
1059
|
+
}
|
|
1060
|
+
</style>
|
|
1061
|
+
```
|
|
1062
|
+
|
|
1063
|
+
Every `<style>` block is compiled separately, so "configure it in `main.scss` and
|
|
1064
|
+
read it straight from the package" won't work — a direct
|
|
1065
|
+
`@use '@central-design-system/components/styles/settings'` in a component would
|
|
1066
|
+
return the default values. A shared settings file guarantees identical values at
|
|
1067
|
+
every compilation point.
|
|
1068
|
+
|
|
1069
|
+
The `styles/settings` entry contains variables only and emits not a single byte
|
|
1070
|
+
of CSS — it's safe to include in any number of files.
|
|
1071
|
+
|
|
1072
|
+
## Global variables
|
|
1073
|
+
|
|
1074
|
+
| Variable | Default | What it does |
|
|
1075
|
+
| --- | --- | --- |
|
|
1076
|
+
| `$reset` | `true` | Emit the base layer's CSS reset |
|
|
1077
|
+
| `$legacy-reset` | `false` | Reset for compatibility with CDS 3 markup |
|
|
1078
|
+
| `$enable-typography` | `true` | Global typography (`h1`–`h6`, `.h1`–`.h6` and so on) |
|
|
1079
|
+
| `$body-font-family` | `var(--cds-font-family), 'PT Root UI VF', …` | `body` font |
|
|
1080
|
+
| `$font-size-root` | `var(--cds-base-unit)` (16px) | Root font size |
|
|
1081
|
+
| `$line-height-root` | `1.5` | Root line height |
|
|
1082
|
+
| `$border-color-root` | `transparent` | Default border color |
|
|
1083
|
+
| `$border-style-root` | `solid` | Default border style |
|
|
1084
|
+
| `$border-radius-root` | `var(--cds-border-radius-200)` | Base corner radius |
|
|
1085
|
+
| `$size-scale` | `4px` | Step of the size scale |
|
|
1086
|
+
| `$sizes` | `('xs', 'sm', 'md', 'lg', 'xl')` | Size names |
|
|
1087
|
+
| `$standard-easing` | `cubic-bezier(0.4, 0, 0.2, 1)` | Base animation curve |
|
|
1088
|
+
| `$decelerated-easing` | `cubic-bezier(0, 0, 0.2, 1)` | Enter curve |
|
|
1089
|
+
| `$accelerated-easing` | `cubic-bezier(0.4, 0, 1, 1)` | Leave curve |
|
|
1090
|
+
| `$rounded` | map | Radius scale (`sm`, `md`, `lg`, `xl`, `pill`, `circle`, …) |
|
|
1091
|
+
|
|
1092
|
+
## Grid and breakpoints
|
|
1093
|
+
|
|
1094
|
+
| Variable | Default | What it does |
|
|
1095
|
+
| --- | --- | --- |
|
|
1096
|
+
| `$prefix` | `'cds'` | Prefix of the grid CSS classes |
|
|
1097
|
+
| `$flex-grid-columns` | `16` | Number of flex grid columns (`12` is supported too) |
|
|
1098
|
+
| `$grid-gutter` | `32px` | Grid gutter |
|
|
1099
|
+
| `$grid-gutter-condensed` | `1px` | Gutter of the condensed grid |
|
|
1100
|
+
| `$grid-breakpoints` | map | Breakpoints: width, columns and spacing for `xs`–`xl` |
|
|
1101
|
+
|
|
1102
|
+
The grid variables belong to the same settings module, while the breakpoint and
|
|
1103
|
+
grid mixins live in a separate `styles/breakpoints` entry — which emits no CSS
|
|
1104
|
+
either:
|
|
1105
|
+
|
|
1106
|
+
```scss
|
|
1107
|
+
@use '@/styles/settings' as s;
|
|
1108
|
+
@use '@central-design-system/components/styles/breakpoints' as bp;
|
|
1109
|
+
|
|
1110
|
+
.sidebar {
|
|
1111
|
+
gap: s.$grid-gutter;
|
|
1112
|
+
|
|
1113
|
+
@include bp.cds-breakpoint-up('md') {
|
|
1114
|
+
width: 320px;
|
|
1115
|
+
}
|
|
1116
|
+
}
|
|
1117
|
+
```
|
|
1118
|
+
|
|
1119
|
+
> SASS breakpoints affect your styles and the grid mixins. The runtime
|
|
1120
|
+
> breakpoints of `useDisplay` are configured separately, through the `display`
|
|
1121
|
+
> option of `createCds` (see Display & Platform).
|
|
1122
|
+
> The two sets match by default; when you change one, don't forget the other.
|
|
1123
|
+
|
|
1124
|
+
## Component variables and vite-plugin
|
|
1125
|
+
|
|
1126
|
+
Without the plugin, `@use … with` configures the base layer only: component CSS
|
|
1127
|
+
is precompiled. The `@central-design-system/vite-plugin` plugin lifts that
|
|
1128
|
+
limitation — it recompiles the styles of every component you use with your
|
|
1129
|
+
settings file:
|
|
1130
|
+
|
|
1131
|
+
```ts
|
|
1132
|
+
// vite.config.ts
|
|
1133
|
+
import cds from '@central-design-system/vite-plugin';
|
|
1134
|
+
|
|
1135
|
+
export default defineConfig({
|
|
1136
|
+
plugins: [
|
|
1137
|
+
vue(),
|
|
1138
|
+
cds({ styles: { configFile: 'src/styles/settings.scss' } })
|
|
1139
|
+
]
|
|
1140
|
+
});
|
|
1141
|
+
```
|
|
1142
|
+
|
|
1143
|
+
The settings file is the same, but you have to forward
|
|
1144
|
+
`styles/component-settings` — the aggregate that includes both global and
|
|
1145
|
+
component variables:
|
|
1146
|
+
|
|
1147
|
+
```scss
|
|
1148
|
+
// src/styles/settings.scss
|
|
1149
|
+
@forward '@central-design-system/components/styles/component-settings' with (
|
|
1150
|
+
$border-radius-root: 0, // global
|
|
1151
|
+
$button-border-radius: 9999px // component-level
|
|
1152
|
+
);
|
|
1153
|
+
```
|
|
1154
|
+
|
|
1155
|
+
With the plugin you don't need to change the
|
|
1156
|
+
`@central-design-system/components/styles` import in `main.ts` — it starts
|
|
1157
|
+
meaning "the configured base layer" on its own, and component styles are rebuilt
|
|
1158
|
+
on the fly. The plugin can also auto-import components from templates
|
|
1159
|
+
(`autoImport: true` by default), which makes registration in
|
|
1160
|
+
`createCds({ components })` optional.
|
|
1161
|
+
|
|
1162
|
+
## What SASS can't configure
|
|
1163
|
+
|
|
1164
|
+
- **Component-local variables** (`$button-border-radius` and friends from
|
|
1165
|
+
`styles/_CdsX.variables.scss`). Unavailable without the plugin: component CSS
|
|
1166
|
+
is published precompiled, so its local variables are frozen at the moment the
|
|
1167
|
+
library was built. With `@central-design-system/vite-plugin` they are
|
|
1168
|
+
configured through `styles/component-settings` — the plugin recompiles the
|
|
1169
|
+
published SCSS sources of the components with your settings file (see above).
|
|
1170
|
+
- **Turning off individual utility classes.** Instead of a toggle map, pick an
|
|
1171
|
+
entry point by content: `styles/core` — layers, fonts and reset only;
|
|
1172
|
+
`styles/common` — plus typography and helpers.
|
|
1173
|
+
- **CSS layers.** `@layer cds-*` is always on: the layer order is declared in the
|
|
1174
|
+
base style layer, and ordinary application CSS (outside `@layer`) always beats
|
|
1175
|
+
the design system's styles — there is nothing to turn off here.
|
|
1176
|
+
|
|
1177
|
+
## Pitfalls
|
|
1178
|
+
|
|
1179
|
+
- **Variables only in the settings file.** Any styles or imports of regular style
|
|
1180
|
+
files inside `settings.scss` get duplicated into every file that includes it.
|
|
1181
|
+
Styles belong in `main.scss`; the settings file holds variables, mixins and
|
|
1182
|
+
functions.
|
|
1183
|
+
- **Configure before the module's first load.** `@use … with` fails with a
|
|
1184
|
+
`module was already loaded` error if the settings module has already been
|
|
1185
|
+
loaded without a configuration higher up the chain. Include the settings file
|
|
1186
|
+
first.
|
|
1187
|
+
- **Build speed.** With ready-made CSS there is nothing to compile; with a
|
|
1188
|
+
configuration the base layer is built together with the application. The volume
|
|
1189
|
+
is small, but the difference shows on cold builds — `sass-embedded` and
|
|
1190
|
+
`api: 'modern-compiler'` keep it to a minimum.
|
|
1191
|
+
- **Resolution assumes a bundler.** Bare imports such as
|
|
1192
|
+
`@use '@central-design-system/components/styles'` are resolved by Vite and
|
|
1193
|
+
webpack (`sass-loader`) through the `sass` export condition. In plain `sass`
|
|
1194
|
+
CLI without a bundler you'll have to point the paths at the files inside
|
|
1195
|
+
`node_modules` by hand.
|
|
1196
|
+
|
|
1197
|
+
---
|
|
1198
|
+
|
|
1199
|
+
---
|
|
1200
|
+
sourceHash: 5822739245a9c6095f09064c0b58dc326ac5c188
|
|
1201
|
+
---
|
|
1202
|
+
|
|
1203
|
+
# Icons
|
|
1204
|
+
|
|
1205
|
+
CDS v4 supports many popular icon packs out of the box.
|
|
1206
|
+
|
|
1207
|
+
## Usage
|
|
1208
|
+
|
|
1209
|
+
You can pick one of the ready-made icon packs or plug in your own.
|
|
1210
|
+
By default CDS uses the `cds` pack — it contains every icon the design system
|
|
1211
|
+
components need.
|
|
914
1212
|
|
|
915
1213
|
```ts
|
|
916
1214
|
import { createCds } from '@central-design-system/components';
|
|
@@ -924,7 +1222,7 @@ const cds = createCds({
|
|
|
924
1222
|
app.use(cds);
|
|
925
1223
|
```
|
|
926
1224
|
|
|
927
|
-
|
|
1225
|
+
After that, use the icon in templates:
|
|
928
1226
|
|
|
929
1227
|
```html
|
|
930
1228
|
<template>
|
|
@@ -932,19 +1230,25 @@ app.use(cds);
|
|
|
932
1230
|
</template>
|
|
933
1231
|
```
|
|
934
1232
|
|
|
935
|
-
##
|
|
1233
|
+
## Installing icon packs through UnoCSS
|
|
936
1234
|
|
|
937
|
-
|
|
1235
|
+
CDS integrates with [UnoCSS Preset Icons](https://unocss.dev/presets/icons), which
|
|
1236
|
+
supports every icon pack available on [Iconify](https://icon-sets.iconify.design/).
|
|
938
1237
|
|
|
939
|
-
|
|
1238
|
+
Icons are tree-shaken, so only the icons you actually use end up in the final CSS
|
|
1239
|
+
bundle. You can register several packs at once and freely mix icons from any of
|
|
1240
|
+
them in your components.
|
|
940
1241
|
|
|
941
|
-
###
|
|
1242
|
+
### Icon packs
|
|
942
1243
|
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
1244
|
+
For the packs listed below, CDS ships iconsets with alias mappings — aliases for
|
|
1245
|
+
the icons CDS components use (checkboxes, dropdowns, radio buttons and so on).
|
|
1246
|
+
Pick one of them as the default pack (`defaultSet`); the alias mappings can be
|
|
1247
|
+
overridden if needed.
|
|
1248
|
+
Additional packs — without aliases — can be plugged in alongside and used freely
|
|
1249
|
+
in your own templates.
|
|
946
1250
|
|
|
947
|
-
|
|
|
1251
|
+
| Icon library | Iconify package | Iconset import | Set name |
|
|
948
1252
|
|------------------------------------------------------------------|------------------------|-----------------------------------------------------------|------------|
|
|
949
1253
|
| [Remix Icon](https://remixicon.com/) | `@iconify-json/ri` | `@central-design-system/components/iconsets/remix` | `ri` |
|
|
950
1254
|
| [Phosphor Icons](https://phosphoricons.com/) | `@iconify-json/ph` | `@central-design-system/components/iconsets/phosphor` | `phosphor` |
|
|
@@ -952,26 +1256,28 @@ app.use(cds);
|
|
|
952
1256
|
| [Carbon](https://carbondesignsystem.com/elements/icons/library/) | `@iconify-json/carbon` | `@central-design-system/components/iconsets/carbon` | `carbon` |
|
|
953
1257
|
| [Material Design Icons](https://pictogrammers.com/library/mdi/) | `@iconify-json/mdi` | `@central-design-system/components/iconsets/mdi` | `mdi` |
|
|
954
1258
|
|
|
955
|
-
|
|
1259
|
+
Each module exports an object named after the pack: `icons` (the pack itself, for
|
|
1260
|
+
`sets`) and `aliases` (the aliases, for `aliases`).
|
|
956
1261
|
|
|
957
|
-
|
|
1262
|
+
Install the pack you need from the table above:
|
|
958
1263
|
|
|
959
1264
|
```bash
|
|
960
1265
|
npm install @iconify-json/ri
|
|
961
1266
|
```
|
|
962
1267
|
|
|
963
|
-
>
|
|
964
|
-
>
|
|
1268
|
+
> Icons from the table run through UnoCSS, so you have to install and configure
|
|
1269
|
+
> UnoCSS first. See the [official documentation](https://unocss.dev/integrations/)
|
|
1270
|
+
> for details.
|
|
965
1271
|
|
|
966
|
-
|
|
1272
|
+
Here is an example integration in a Vite project.
|
|
967
1273
|
|
|
968
|
-
1.
|
|
1274
|
+
1. Install UnoCSS as a dev dependency (see the [Vite integration](https://unocss.dev/integrations/vite)):
|
|
969
1275
|
|
|
970
1276
|
```bash
|
|
971
1277
|
npm install -D unocss
|
|
972
1278
|
```
|
|
973
1279
|
|
|
974
|
-
2.
|
|
1280
|
+
2. Add the UnoCSS plugin to your Vite config:
|
|
975
1281
|
|
|
976
1282
|
```ts
|
|
977
1283
|
// vite.config.ts
|
|
@@ -985,7 +1291,7 @@ export default defineConfig({
|
|
|
985
1291
|
})
|
|
986
1292
|
```
|
|
987
1293
|
|
|
988
|
-
3.
|
|
1294
|
+
3. Create an **unocss.config.ts** file in the project root:
|
|
989
1295
|
|
|
990
1296
|
```ts
|
|
991
1297
|
// unocss.config.ts
|
|
@@ -1002,12 +1308,14 @@ export default defineConfig({
|
|
|
1002
1308
|
})
|
|
1003
1309
|
```
|
|
1004
1310
|
|
|
1005
|
-
>
|
|
1006
|
-
>
|
|
1007
|
-
>
|
|
1311
|
+
> Nothing else needs to go into `unocss.config.ts`: CDS iconsets carry the
|
|
1312
|
+
> `@unocss-include` marker, so UnoCSS scans them on its own — even though they
|
|
1313
|
+
> live in `node_modules` as `.js` files, which are not part of
|
|
1314
|
+
> `content.pipeline.include` by default.
|
|
1008
1315
|
|
|
1009
|
-
4.
|
|
1010
|
-
|
|
1316
|
+
4. Pass the icon pack to `createCds()`.
|
|
1317
|
+
The example uses the **[Remix](https://remixicon.com/)** pack, but you can swap it
|
|
1318
|
+
for any other pack from the table above:
|
|
1011
1319
|
|
|
1012
1320
|
```ts
|
|
1013
1321
|
import { createCds } from '@central-design-system/components';
|
|
@@ -1026,21 +1334,26 @@ const cds = createCds({
|
|
|
1026
1334
|
app.use(cds);
|
|
1027
1335
|
```
|
|
1028
1336
|
|
|
1029
|
-
>
|
|
1030
|
-
>
|
|
1031
|
-
>
|
|
1337
|
+
> Import the pack through the `@central-design-system/components/iconsets/<pack>`
|
|
1338
|
+
> subpath, not from the shared `iconsets` object. The shared object references all
|
|
1339
|
+
> packs at once and is not tree-shaken — you would ship the JS and CSS of all five
|
|
1340
|
+
> packs (≈370 KB instead of ≈70 KB for a single one).
|
|
1032
1341
|
|
|
1033
|
-
|
|
1342
|
+
After that, pick any icon from the pack — for example
|
|
1343
|
+
[ri:settings-3-line](https://icon-sets.iconify.design/ri/?icon-filter=settings-3-line) —
|
|
1344
|
+
and use it in templates:
|
|
1034
1345
|
|
|
1035
1346
|
```html
|
|
1036
1347
|
<CdsButton icon="i-ri:settings-3-line" />
|
|
1037
1348
|
```
|
|
1038
1349
|
|
|
1039
|
-
> UnoCSS
|
|
1350
|
+
> UnoCSS uses the `i-` prefix for icons. CDS uses the same prefix and already
|
|
1351
|
+
> configures its aliases with it — don't change it, or the CDS aliases will stop
|
|
1352
|
+
> working.
|
|
1040
1353
|
|
|
1041
|
-
## Legacy
|
|
1354
|
+
## Legacy icon pack from CDS v3
|
|
1042
1355
|
|
|
1043
|
-
|
|
1356
|
+
If you need the full icon pack from CDS v3, plug it in like this:
|
|
1044
1357
|
|
|
1045
1358
|
```bash
|
|
1046
1359
|
npm install @central-design-system/icons
|
|
@@ -1058,16 +1371,21 @@ app.use(cds);
|
|
|
1058
1371
|
|
|
1059
1372
|
---
|
|
1060
1373
|
|
|
1374
|
+
---
|
|
1375
|
+
sourceHash: 2d02d03da0e4d6f0fcb171775b7b88784a216ac0
|
|
1376
|
+
---
|
|
1377
|
+
|
|
1061
1378
|
# Display & Platform
|
|
1062
1379
|
|
|
1063
|
-
Central Design System
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
(
|
|
1380
|
+
Central Design System exposes reactive information about the **screen**
|
|
1381
|
+
(breakpoints, viewport size, mobile mode) and the **platform** (browser, OS,
|
|
1382
|
+
device type) through a single composable — `useDisplay`. Breakpoints are the same
|
|
1383
|
+
in JavaScript and in styles (the `cds-breakpoint-*` SCSS mixins), so responsive
|
|
1384
|
+
logic in script and CSS always agrees.
|
|
1067
1385
|
|
|
1068
|
-
##
|
|
1386
|
+
## Breakpoints
|
|
1069
1387
|
|
|
1070
|
-
|
|
|
1388
|
+
| Breakpoint | Width range (px) | Start width | Grid columns |
|
|
1071
1389
|
| --- | --- | --- | --- |
|
|
1072
1390
|
| `xs` | `0 … 671` | `0` | 4 |
|
|
1073
1391
|
| `sm` | `672 … 1055` | `672` | 8 |
|
|
@@ -1075,45 +1393,46 @@ Central Design System предоставляет реактивную инфор
|
|
|
1075
1393
|
| `lg` | `1312 … 1583` | `1312` | 16 |
|
|
1076
1394
|
| `xl` | `1584 … ∞` | `1584` | 16 |
|
|
1077
1395
|
|
|
1078
|
-
|
|
1396
|
+
The values have a single source:
|
|
1079
1397
|
|
|
1080
1398
|
- JS — `defaultDisplayOptions.thresholds` (`src/composables/useDisplay/internal/useDisplay.constants.ts`);
|
|
1081
1399
|
- SCSS — `$grid-breakpoints` (`src/styles/utilities/grid/_config.scss`).
|
|
1082
1400
|
|
|
1083
|
-
##
|
|
1401
|
+
## In JavaScript — `useDisplay`
|
|
1084
1402
|
|
|
1085
|
-
|
|
1086
|
-
|
|
1403
|
+
The `useDisplay` composable returns the reactive state of the screen and the
|
|
1404
|
+
platform. It works out of the box as long as the application is initialized
|
|
1405
|
+
through `createCds` (which provides `cds:display`).
|
|
1087
1406
|
|
|
1088
1407
|
```ts
|
|
1089
1408
|
import { useDisplay } from '@central-design-system/components';
|
|
1090
1409
|
|
|
1091
1410
|
const display = useDisplay();
|
|
1092
1411
|
|
|
1093
|
-
display.width.value; //
|
|
1412
|
+
display.width.value; // current viewport width, px
|
|
1094
1413
|
display.name.value; // 'xs' | 'sm' | 'md' | 'lg' | 'xl'
|
|
1095
|
-
display.mobile.value; // true
|
|
1414
|
+
display.mobile.value; // true when width < mobileBreakpoint ('sm' by default)
|
|
1096
1415
|
```
|
|
1097
1416
|
|
|
1098
|
-
###
|
|
1417
|
+
### Available flags
|
|
1099
1418
|
|
|
1100
|
-
|
|
|
1419
|
+
| Flag | Meaning |
|
|
1101
1420
|
| --- | --- |
|
|
1102
|
-
| `xs` / `sm` / `md` / `lg` / `xl` |
|
|
1103
|
-
| `smUp` / `mdUp` / `lgUp` / `xlUp` |
|
|
1104
|
-
| `smDown` / `mdDown` / `lgDown` / `xlDown` |
|
|
1105
|
-
| `name` |
|
|
1106
|
-
| `mobile` |
|
|
1107
|
-
| `mobileBreakpoint` |
|
|
1108
|
-
| `width` / `height` |
|
|
1109
|
-
| `thresholds` |
|
|
1110
|
-
| `platform` |
|
|
1111
|
-
| `update()` |
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
(
|
|
1115
|
-
|
|
1116
|
-
###
|
|
1421
|
+
| `xs` / `sm` / `md` / `lg` / `xl` | exactly one is active — the current breakpoint |
|
|
1422
|
+
| `smUp` / `mdUp` / `lgUp` / `xlUp` | width ≥ the breakpoint's start width ("and up") |
|
|
1423
|
+
| `smDown` / `mdDown` / `lgDown` / `xlDown` | the breakpoint and everything below it ("and down") |
|
|
1424
|
+
| `name` | name of the current breakpoint |
|
|
1425
|
+
| `mobile` | mobile mode (based on `mobileBreakpoint`) |
|
|
1426
|
+
| `mobileBreakpoint` | current mobile mode threshold |
|
|
1427
|
+
| `width` / `height` | viewport size, px |
|
|
1428
|
+
| `thresholds` | current threshold map |
|
|
1429
|
+
| `platform` | platform/browser flags (see [Platform](#platform)) |
|
|
1430
|
+
| `update()` | force a recalculation of size and platform |
|
|
1431
|
+
|
|
1432
|
+
For example, `mdUp` is true when `width ≥ 1056`, and `smDown` when `width < 1056`
|
|
1433
|
+
(that is, it covers the `xs` and `sm` ranges).
|
|
1434
|
+
|
|
1435
|
+
### Example in a component
|
|
1117
1436
|
|
|
1118
1437
|
```tsx
|
|
1119
1438
|
import { useDisplay } from '@central-design-system/components';
|
|
@@ -1127,19 +1446,20 @@ defineRender(() => (
|
|
|
1127
1446
|
));
|
|
1128
1447
|
```
|
|
1129
1448
|
|
|
1130
|
-
###
|
|
1449
|
+
### Mobile mode at the prop level
|
|
1131
1450
|
|
|
1132
|
-
|
|
1133
|
-
`mobileBreakpoint` —
|
|
1451
|
+
Components that mix in `defineDisplayProps()` accept the `mobile` and
|
|
1452
|
+
`mobileBreakpoint` props — use them to override the mobile mode threshold
|
|
1453
|
+
locally:
|
|
1134
1454
|
|
|
1135
1455
|
```html
|
|
1136
|
-
<!--
|
|
1456
|
+
<!-- Mobile mode kicks in below 1056px (md) instead of the global 'sm' -->
|
|
1137
1457
|
<CdsSlideGroup mobile-breakpoint="md" />
|
|
1138
1458
|
```
|
|
1139
1459
|
|
|
1140
|
-
###
|
|
1460
|
+
### Overriding the thresholds globally
|
|
1141
1461
|
|
|
1142
|
-
|
|
1462
|
+
Thresholds and `mobileBreakpoint` are configured at initialization:
|
|
1143
1463
|
|
|
1144
1464
|
```ts
|
|
1145
1465
|
import { createCds } from '@central-design-system/components';
|
|
@@ -1152,75 +1472,79 @@ app.use(createCds({
|
|
|
1152
1472
|
}));
|
|
1153
1473
|
```
|
|
1154
1474
|
|
|
1155
|
-
>
|
|
1156
|
-
>
|
|
1475
|
+
> If you change the thresholds in JS, keep them in sync in SCSS
|
|
1476
|
+
> (`$grid-breakpoints`) — otherwise responsiveness in script and styles will
|
|
1477
|
+
> drift apart.
|
|
1157
1478
|
|
|
1158
|
-
##
|
|
1479
|
+
## In SCSS — the `cds-breakpoint-*` mixins
|
|
1159
1480
|
|
|
1160
|
-
|
|
1481
|
+
The mixins come from a public entry point:
|
|
1161
1482
|
|
|
1162
1483
|
```scss
|
|
1163
1484
|
@use '@central-design-system/components/styles/breakpoints' as breakpoint;
|
|
1164
1485
|
```
|
|
1165
1486
|
|
|
1166
|
-
>
|
|
1487
|
+
> In plain Dart Sass (without a bundler), use the pkg scheme and the Node
|
|
1488
|
+
> importer:
|
|
1167
1489
|
> `@use 'pkg:@central-design-system/components/styles/breakpoints' as breakpoint;`.
|
|
1168
1490
|
|
|
1169
|
-
### `cds-breakpoint-up($name)` —
|
|
1491
|
+
### `cds-breakpoint-up($name)` — "and up"
|
|
1170
1492
|
|
|
1171
1493
|
```scss
|
|
1172
1494
|
.card {
|
|
1173
1495
|
display: none;
|
|
1174
1496
|
|
|
1175
|
-
//
|
|
1497
|
+
// applies at min-width: 1056px (md and up)
|
|
1176
1498
|
@include breakpoint.cds-breakpoint-up(md) {
|
|
1177
1499
|
display: block;
|
|
1178
1500
|
}
|
|
1179
1501
|
}
|
|
1180
1502
|
```
|
|
1181
1503
|
|
|
1182
|
-
### `cds-breakpoint-down($name)` —
|
|
1504
|
+
### `cds-breakpoint-down($name)` — "and down"
|
|
1183
1505
|
|
|
1184
1506
|
```scss
|
|
1185
1507
|
.sidebar {
|
|
1186
|
-
//
|
|
1508
|
+
// applies at max-width: 1055.98px — that is, on sm and xs
|
|
1187
1509
|
@include breakpoint.cds-breakpoint-down(sm) {
|
|
1188
1510
|
display: none;
|
|
1189
1511
|
}
|
|
1190
1512
|
}
|
|
1191
1513
|
```
|
|
1192
1514
|
|
|
1193
|
-
`cds-breakpoint-down('<name>')`
|
|
1194
|
-
(
|
|
1195
|
-
|
|
1515
|
+
`cds-breakpoint-down('<name>')` covers the breakpoint itself **and everything
|
|
1516
|
+
below it** (the upper bound is the start of the next breakpoint minus `0.02px`).
|
|
1517
|
+
No media query is generated for the largest breakpoint (`xl`) — "xl and down" is
|
|
1518
|
+
every width.
|
|
1196
1519
|
|
|
1197
|
-
### `cds-breakpoint-between($lower, $upper)` —
|
|
1520
|
+
### `cds-breakpoint-between($lower, $upper)` — a range
|
|
1198
1521
|
|
|
1199
1522
|
```scss
|
|
1200
1523
|
.banner {
|
|
1201
|
-
// min-width: 672px
|
|
1524
|
+
// min-width: 672px and max-width: 1056px
|
|
1202
1525
|
@include breakpoint.cds-breakpoint-between(sm, md) {
|
|
1203
1526
|
padding: 16px;
|
|
1204
1527
|
}
|
|
1205
1528
|
}
|
|
1206
1529
|
```
|
|
1207
1530
|
|
|
1208
|
-
|
|
1531
|
+
Both mixins also accept a number instead of a name: `cds-breakpoint-up(900px)`.
|
|
1209
1532
|
|
|
1210
|
-
###
|
|
1533
|
+
### Other mixins and functions
|
|
1211
1534
|
|
|
1212
|
-
- `cds-breakpoint($name)` —
|
|
1213
|
-
- `cds-largest-breakpoint` — media query
|
|
1214
|
-
- `breakpoint-next($name)` / `breakpoint-prev($name)` —
|
|
1215
|
-
- `is-smallest-breakpoint($name)` —
|
|
1216
|
-
- `largest-breakpoint-name()` —
|
|
1535
|
+
- `cds-breakpoint($name)` — an alias for `cds-breakpoint-up`.
|
|
1536
|
+
- `cds-largest-breakpoint` — media query for the largest breakpoint.
|
|
1537
|
+
- `breakpoint-next($name)` / `breakpoint-prev($name)` — the neighboring breakpoint.
|
|
1538
|
+
- `is-smallest-breakpoint($name)` — whether `$name` is the smallest one.
|
|
1539
|
+
- `largest-breakpoint-name()` — name of the largest breakpoint.
|
|
1217
1540
|
|
|
1218
|
-
##
|
|
1541
|
+
## JS ↔ CSS correspondence
|
|
1219
1542
|
|
|
1220
|
-
|
|
1221
|
-
|
|
1543
|
+
The `useDisplay` flags and the mixins' media queries cover identical width
|
|
1544
|
+
ranges — that's what lets you write consistent responsive logic in script and
|
|
1545
|
+
styles.
|
|
1222
1546
|
|
|
1223
|
-
| JS (`useDisplay`) | SCSS
|
|
1547
|
+
| JS (`useDisplay`) | SCSS mixin | Width range |
|
|
1224
1548
|
| --- | --- | --- |
|
|
1225
1549
|
| `smUp` | `cds-breakpoint-up(sm)` | `≥ 672` |
|
|
1226
1550
|
| `mdUp` | `cds-breakpoint-up(md)` | `≥ 1056` |
|
|
@@ -1229,19 +1553,20 @@ app.use(createCds({
|
|
|
1229
1553
|
| `smDown` | `cds-breakpoint-down(sm)` | `< 1056` |
|
|
1230
1554
|
| `mdDown` | `cds-breakpoint-down(md)` | `< 1312` |
|
|
1231
1555
|
| `lgDown` | `cds-breakpoint-down(lg)` | `< 1584` |
|
|
1232
|
-
| `xlDown` | `cds-breakpoint-down(xl)` |
|
|
1556
|
+
| `xlDown` | `cds-breakpoint-down(xl)` | every width |
|
|
1233
1557
|
|
|
1234
|
-
>
|
|
1235
|
-
>
|
|
1236
|
-
> `smDown`
|
|
1237
|
-
>
|
|
1238
|
-
>
|
|
1239
|
-
>
|
|
1558
|
+
> **Important (migrating from CDS 3).** In CDS 3 the semantics of
|
|
1559
|
+
> `cds-breakpoint-down` in SCSS differed from JS: `down('sm')` meant "strictly
|
|
1560
|
+
> below `sm`" (only `xs`), whereas `smDown` in JS means "`sm` and down". In CDS 4
|
|
1561
|
+
> the CSS is aligned with JS: `down('<name>')` now always means "`<name>` and
|
|
1562
|
+
> down". If you are porting styles from CDS 3, shift the `down()` argument one
|
|
1563
|
+
> step down (old `down('md')` ⇒ new `down('sm')`).
|
|
1564
|
+
> See the Migration Guide.
|
|
1240
1565
|
|
|
1241
|
-
##
|
|
1566
|
+
## Platform
|
|
1242
1567
|
|
|
1243
|
-
`useDisplay().platform`
|
|
1244
|
-
|
|
1568
|
+
`useDisplay().platform` is a reactive object with device, OS and browser flags.
|
|
1569
|
+
Detection is based on `navigator.userAgent` and touch support.
|
|
1245
1570
|
|
|
1246
1571
|
```ts
|
|
1247
1572
|
import { useDisplay } from '@central-design-system/components';
|
|
@@ -1249,33 +1574,33 @@ import { useDisplay } from '@central-design-system/components';
|
|
|
1249
1574
|
const { platform } = useDisplay();
|
|
1250
1575
|
|
|
1251
1576
|
if (platform.value.ios) {
|
|
1252
|
-
//
|
|
1577
|
+
// special behavior for iOS
|
|
1253
1578
|
}
|
|
1254
1579
|
|
|
1255
1580
|
const isTouchDevice = platform.value.touch;
|
|
1256
1581
|
```
|
|
1257
1582
|
|
|
1258
|
-
###
|
|
1583
|
+
### Fields of the `platform` object
|
|
1259
1584
|
|
|
1260
|
-
|
|
1585
|
+
Every field is a `boolean`.
|
|
1261
1586
|
|
|
1262
|
-
|
|
|
1587
|
+
| Field | Meaning |
|
|
1263
1588
|
| --- | --- |
|
|
1264
|
-
| `android` |
|
|
1265
|
-
| `ios` |
|
|
1266
|
-
| `cordova` |
|
|
1267
|
-
| `electron` |
|
|
1268
|
-
| `chrome` |
|
|
1269
|
-
| `edge` |
|
|
1270
|
-
| `firefox` |
|
|
1271
|
-
| `opera` |
|
|
1272
|
-
| `win` |
|
|
1273
|
-
| `mac` |
|
|
1274
|
-
| `linux` |
|
|
1275
|
-
| `touch` |
|
|
1276
|
-
| `ssr` |
|
|
1277
|
-
|
|
1278
|
-
###
|
|
1589
|
+
| `android` | an Android device |
|
|
1590
|
+
| `ios` | an iOS device (iPhone / iPad / iPod) |
|
|
1591
|
+
| `cordova` | the app runs in Cordova |
|
|
1592
|
+
| `electron` | the app runs in Electron |
|
|
1593
|
+
| `chrome` | Chrome browser |
|
|
1594
|
+
| `edge` | Edge browser |
|
|
1595
|
+
| `firefox` | Firefox browser |
|
|
1596
|
+
| `opera` | Opera browser |
|
|
1597
|
+
| `win` | Windows OS |
|
|
1598
|
+
| `mac` | macOS |
|
|
1599
|
+
| `linux` | Linux OS |
|
|
1600
|
+
| `touch` | the device supports touch |
|
|
1601
|
+
| `ssr` | the value was computed on the server (SSR) |
|
|
1602
|
+
|
|
1603
|
+
### Example: a class on the app root
|
|
1279
1604
|
|
|
1280
1605
|
```tsx
|
|
1281
1606
|
import { useDisplay } from '@central-design-system/components';
|
|
@@ -1295,31 +1620,37 @@ defineRender(() => (
|
|
|
1295
1620
|
));
|
|
1296
1621
|
```
|
|
1297
1622
|
|
|
1298
|
-
>
|
|
1299
|
-
>
|
|
1300
|
-
> `platform`
|
|
1301
|
-
>
|
|
1302
|
-
>
|
|
1623
|
+
> **Careful with user-agent sniffing.** Detecting the browser or OS from
|
|
1624
|
+
> `userAgent` is unreliable (the string can be spoofed, and new browsers may not
|
|
1625
|
+
> be recognized). Use `platform` for progressive enhancement — say, a fix
|
|
1626
|
+
> specific to iOS Safari — not as the only gate in front of a feature. For
|
|
1627
|
+
> feature detection, prefer capability checks (`'ontouchstart' in window` and the
|
|
1628
|
+
> like).
|
|
1303
1629
|
|
|
1304
1630
|
### SSR
|
|
1305
1631
|
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
`display.update()` (
|
|
1309
|
-
|
|
1632
|
+
During server-side rendering `userAgent` is unavailable, so `platform.ssr === true`
|
|
1633
|
+
and the rest of the flags are `false`. After hydration the values can be
|
|
1634
|
+
recalculated by calling `display.update()` (which recalculates both size and
|
|
1635
|
+
platform). Initial sizes for SSR are set through the second argument of
|
|
1636
|
+
`createDisplay(options, ssr)` or the `ssr` option in `createCds`.
|
|
1310
1637
|
|
|
1311
1638
|
---
|
|
1312
1639
|
|
|
1313
|
-
|
|
1640
|
+
---
|
|
1641
|
+
sourceHash: 49864e870f2f989420a5ebf7ffc7eb1a3458124a
|
|
1642
|
+
---
|
|
1314
1643
|
|
|
1315
|
-
|
|
1316
|
-
или только внутри определённого поддерева. Так вы один раз описываете «как выглядят кнопки
|
|
1317
|
-
в нашем продукте» и перестаёте дублировать одни и те же пропсы в каждом шаблоне.
|
|
1644
|
+
# Global configuration
|
|
1318
1645
|
|
|
1319
|
-
|
|
1646
|
+
CDS 4 lets you set default prop values — globally, for a specific component, or
|
|
1647
|
+
only inside a given subtree. You describe "what buttons look like in our product"
|
|
1648
|
+
once and stop repeating the same props in every template.
|
|
1320
1649
|
|
|
1321
|
-
|
|
1322
|
-
|
|
1650
|
+
## Setup
|
|
1651
|
+
|
|
1652
|
+
Default values are set through the `defaults` option of `createCds`. The `global`
|
|
1653
|
+
key affects every component; a key named after a component affects only that one.
|
|
1323
1654
|
|
|
1324
1655
|
```ts
|
|
1325
1656
|
import { createApp } from 'vue';
|
|
@@ -1347,42 +1678,43 @@ const cds = createCds({
|
|
|
1347
1678
|
createApp(App).use(cds);
|
|
1348
1679
|
```
|
|
1349
1680
|
|
|
1350
|
-
|
|
1681
|
+
**Important.** Props in `defaults` are written in camelCase: `hideDetails`, not
|
|
1682
|
+
`hide-details`.
|
|
1351
1683
|
|
|
1352
|
-
|
|
1353
|
-
`CdsCardActions`
|
|
1354
|
-
|
|
1684
|
+
A component key is its name from `defineOptions({ name })` — `CdsButton`,
|
|
1685
|
+
`CdsTextInput`, `CdsCardActions` and so on. Subcomponent names (`CdsCardTitle`,
|
|
1686
|
+
`CdsListItem`) work exactly like root component names.
|
|
1355
1687
|
|
|
1356
|
-
###
|
|
1688
|
+
### Resolution order
|
|
1357
1689
|
|
|
1358
|
-
|
|
1690
|
+
For every prop, CDS takes the first value that applies:
|
|
1359
1691
|
|
|
1360
|
-
1.
|
|
1361
|
-
2. `defaults
|
|
1362
|
-
3. `defaults.global
|
|
1363
|
-
4.
|
|
1692
|
+
1. the prop explicitly passed in the template;
|
|
1693
|
+
2. `defaults.<ComponentName>.<prop>` from the nearest defaults context;
|
|
1694
|
+
3. `defaults.global.<prop>`;
|
|
1695
|
+
4. the default value declared in the component itself.
|
|
1364
1696
|
|
|
1365
|
-
|
|
1697
|
+
An explicitly passed prop always wins — defaults can never override the template.
|
|
1366
1698
|
|
|
1367
|
-
###
|
|
1699
|
+
### Changing defaults at runtime
|
|
1368
1700
|
|
|
1369
|
-
`createCds`
|
|
1370
|
-
|
|
1701
|
+
`createCds` returns an instance whose defaults live in a reactive ref. You can
|
|
1702
|
+
change them on the fly — every mounted component recalculates:
|
|
1371
1703
|
|
|
1372
1704
|
```ts
|
|
1373
1705
|
const cds = createCds({ components, directives });
|
|
1374
1706
|
|
|
1375
|
-
//
|
|
1707
|
+
// for example, turn on compact mode based on a user setting
|
|
1376
1708
|
cds.defaults.value = {
|
|
1377
1709
|
...cds.defaults.value,
|
|
1378
1710
|
global: { size: 'sm' }
|
|
1379
1711
|
};
|
|
1380
1712
|
```
|
|
1381
1713
|
|
|
1382
|
-
##
|
|
1714
|
+
## Contextual defaults
|
|
1383
1715
|
|
|
1384
|
-
|
|
1385
|
-
|
|
1716
|
+
Defaults can be set for components nested inside another component. For example,
|
|
1717
|
+
to make every button inside a card secondary by default:
|
|
1386
1718
|
|
|
1387
1719
|
```ts
|
|
1388
1720
|
createCds({
|
|
@@ -1394,8 +1726,9 @@ createCds({
|
|
|
1394
1726
|
});
|
|
1395
1727
|
```
|
|
1396
1728
|
|
|
1397
|
-
|
|
1398
|
-
|
|
1729
|
+
The rule is simple: a capitalized key is the name of a nested component, a
|
|
1730
|
+
lowercase key is a prop of the current component. Nesting is not limited to one
|
|
1731
|
+
level:
|
|
1399
1732
|
|
|
1400
1733
|
```ts
|
|
1401
1734
|
createCds({
|
|
@@ -1409,23 +1742,24 @@ createCds({
|
|
|
1409
1742
|
});
|
|
1410
1743
|
```
|
|
1411
1744
|
|
|
1412
|
-
|
|
1413
|
-
|
|
1745
|
+
The library uses the same mechanism internally so that grouping components can
|
|
1746
|
+
hand their settings down to their children:
|
|
1414
1747
|
|
|
1415
|
-
- `CdsButtonGroup`
|
|
1416
|
-
- `CdsTagGroup`
|
|
1417
|
-
- `CdsSelectionControlGroup`
|
|
1418
|
-
|
|
1419
|
-
-
|
|
1420
|
-
`CdsExpandablePanels`, `CdsOtpInput
|
|
1748
|
+
- `CdsButtonGroup` sets the `appearance`, `color`, `baseColor`, `size` props on nested `CdsButton`s;
|
|
1749
|
+
- `CdsTagGroup` sets the `color`, `activeColor`, `disabled`, `filter` props on `CdsTag`;
|
|
1750
|
+
- `CdsSelectionControlGroup` passes settings to the controls, with the target component name
|
|
1751
|
+
set by the `defaultsTarget` prop (`CdsCheckbox`, `CdsRadio` and so on);
|
|
1752
|
+
- `CdsTabs`, `CdsSteps`, `CdsList`, `CdsBreadcrumbs`, `CdsButtonToggle`,
|
|
1753
|
+
`CdsExpandablePanels`, `CdsOtpInput` work the same way.
|
|
1421
1754
|
|
|
1422
|
-
|
|
1423
|
-
|
|
1755
|
+
That's why `<CdsButtonGroup size="sm">` makes every button inside small — you
|
|
1756
|
+
don't have to set `size` on each of them.
|
|
1424
1757
|
|
|
1425
|
-
##
|
|
1758
|
+
## Global class and style
|
|
1426
1759
|
|
|
1427
|
-
|
|
1428
|
-
|
|
1760
|
+
Besides props, a component's defaults can carry `class` and `style`. It's a
|
|
1761
|
+
convenient way to apply product-specific rules to every instance of a component
|
|
1762
|
+
without touching the templates:
|
|
1429
1763
|
|
|
1430
1764
|
```ts
|
|
1431
1765
|
createCds({
|
|
@@ -1437,7 +1771,7 @@ createCds({
|
|
|
1437
1771
|
});
|
|
1438
1772
|
```
|
|
1439
1773
|
|
|
1440
|
-
|
|
1774
|
+
Any value Vue accepts works — a string, an object, an array:
|
|
1441
1775
|
|
|
1442
1776
|
```ts
|
|
1443
1777
|
createCds({
|
|
@@ -1449,16 +1783,17 @@ createCds({
|
|
|
1449
1783
|
});
|
|
1450
1784
|
```
|
|
1451
1785
|
|
|
1452
|
-
|
|
1453
|
-
|
|
1786
|
+
Unlike ordinary props, `class` and `style` are not overwritten by the template
|
|
1787
|
+
but **merged** with it. So `<CdsButton class="mt-2">` gets both `my-button` and
|
|
1788
|
+
`mt-2`.
|
|
1454
1789
|
|
|
1455
|
-
|
|
1456
|
-
|
|
1790
|
+
**Important.** `class` and `style` only work under a specific component's key. In
|
|
1791
|
+
`global` they are ignored.
|
|
1457
1792
|
|
|
1458
|
-
##
|
|
1793
|
+
## Aliases
|
|
1459
1794
|
|
|
1460
|
-
|
|
1461
|
-
|
|
1795
|
+
An alias is the same component registered under a different name with its own
|
|
1796
|
+
defaults. Aliases are a handy way to assemble "product" variants of components.
|
|
1462
1797
|
|
|
1463
1798
|
```ts
|
|
1464
1799
|
import { createCds, components, directives, CdsButton } from '@central-design-system/components';
|
|
@@ -1484,24 +1819,26 @@ const cds = createCds({
|
|
|
1484
1819
|
});
|
|
1485
1820
|
```
|
|
1486
1821
|
|
|
1487
|
-
|
|
1822
|
+
Aliases are registered globally, so you can use them in templates right away:
|
|
1488
1823
|
|
|
1489
1824
|
```vue
|
|
1490
1825
|
<template>
|
|
1491
|
-
<CdsButtonPrimary
|
|
1492
|
-
<CdsButtonDanger class="ml-
|
|
1826
|
+
<CdsButtonPrimary>Save</CdsButtonPrimary>
|
|
1827
|
+
<CdsButtonDanger class="ml-2">Delete</CdsButtonDanger>
|
|
1493
1828
|
</template>
|
|
1494
1829
|
```
|
|
1495
1830
|
|
|
1496
|
-
|
|
1497
|
-
`defaults.CdsButton`,
|
|
1498
|
-
|
|
1831
|
+
**Important.** An alias does not inherit the base component's defaults. If the
|
|
1832
|
+
configuration has `defaults.CdsButton`, it will not apply to `<CdsButtonPrimary>`
|
|
1833
|
+
— defaults are looked up by the alias name. Move shared settings into `global` or
|
|
1834
|
+
duplicate them under the alias key.
|
|
1499
1835
|
|
|
1500
|
-
##
|
|
1836
|
+
## Defaults for part of the application
|
|
1501
1837
|
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1838
|
+
To set defaults for a subtree rather than globally, use the
|
|
1839
|
+
`CdsDefaultsProvider` component. The Controls panel in Storybook is built on it
|
|
1840
|
+
too: the values from the panel are applied to the example's components as
|
|
1841
|
+
defaults.
|
|
1505
1842
|
|
|
1506
1843
|
```vue
|
|
1507
1844
|
<script setup lang="ts">
|
|
@@ -1510,26 +1847,27 @@ import { CdsButton, CdsDefaultsProvider } from '@central-design-system/component
|
|
|
1510
1847
|
|
|
1511
1848
|
<template>
|
|
1512
1849
|
<CdsDefaultsProvider :defaults="{ CdsButton: { appearance: 'tertiary', size: 'sm' } }">
|
|
1513
|
-
<CdsButton
|
|
1850
|
+
<CdsButton>Small tertiary button</CdsButton>
|
|
1514
1851
|
</CdsDefaultsProvider>
|
|
1515
1852
|
</template>
|
|
1516
1853
|
```
|
|
1517
1854
|
|
|
1518
|
-
|
|
|
1855
|
+
| Prop | Type | Purpose |
|
|
1519
1856
|
| ---------- | ------------------- | -------------------------------------------------------------------------------------------- |
|
|
1520
|
-
| `defaults` | `DefaultsOptions` |
|
|
1521
|
-
| `scoped` | `boolean` |
|
|
1522
|
-
| `reset` | `number \| string` |
|
|
1523
|
-
| `root` | `boolean \| string` |
|
|
1524
|
-
| `disabled` | `boolean` |
|
|
1857
|
+
| `defaults` | `DefaultsOptions` | Defaults for the subtree; merged with the inherited ones by default |
|
|
1858
|
+
| `scoped` | `boolean` | Don't mix with the parent defaults — only the ones set here apply |
|
|
1859
|
+
| `reset` | `number \| string` | Go N levels up the defaults chain |
|
|
1860
|
+
| `root` | `boolean \| string` | Fall back to the root defaults from `createCds`; with a string — to a named group inside them |
|
|
1861
|
+
| `disabled` | `boolean` | Provide nothing — the subtree gets the parent defaults as they are |
|
|
1525
1862
|
|
|
1526
|
-
|
|
1527
|
-
`CdsButtonGroup
|
|
1863
|
+
The typical use for `scoped` is an "island" inside someone else's environment:
|
|
1864
|
+
enclosing groups (`CdsButtonGroup`, say) should not impose their settings on your
|
|
1865
|
+
block.
|
|
1528
1866
|
|
|
1529
|
-
##
|
|
1867
|
+
## Your own components
|
|
1530
1868
|
|
|
1531
|
-
|
|
1532
|
-
|
|
1869
|
+
Your application's own components can take part in the defaults system too. Pass
|
|
1870
|
+
their props through `useDefaults`:
|
|
1533
1871
|
|
|
1534
1872
|
```vue
|
|
1535
1873
|
<script setup lang="ts">
|
|
@@ -1540,39 +1878,40 @@ const props = useDefaults(_props, 'MyComponent');
|
|
|
1540
1878
|
</script>
|
|
1541
1879
|
|
|
1542
1880
|
<template>
|
|
1543
|
-
<div
|
|
1881
|
+
<div>I am {{ props.foo }}</div>
|
|
1544
1882
|
</template>
|
|
1545
1883
|
```
|
|
1546
1884
|
|
|
1547
|
-
|
|
1885
|
+
`useDefaults` takes two arguments, both optional:
|
|
1548
1886
|
|
|
1549
|
-
- `props` —
|
|
1550
|
-
- `name` —
|
|
1551
|
-
|
|
1887
|
+
- `props` — the props object returned by `defineProps`;
|
|
1888
|
+
- `name` — the component name used to look up the key in `defaults`. If omitted,
|
|
1889
|
+
the name from `defineOptions({ name })` is used, and failing that, the file name.
|
|
1552
1890
|
|
|
1553
|
-
|
|
1891
|
+
Now the component is configurable from the shared configuration:
|
|
1554
1892
|
|
|
1555
1893
|
```ts
|
|
1556
1894
|
createCds({
|
|
1557
1895
|
defaults: {
|
|
1558
|
-
MyComponent: { foo: '
|
|
1896
|
+
MyComponent: { foo: 'bar' }
|
|
1559
1897
|
}
|
|
1560
1898
|
});
|
|
1561
1899
|
```
|
|
1562
1900
|
|
|
1563
|
-
|
|
1564
|
-
|
|
1901
|
+
**Important.** In the template, refer to `props.foo`, not `foo`. `useDefaults`
|
|
1902
|
+
returns a proxy over the props, and destructured `defineProps` variables bypass
|
|
1903
|
+
it:
|
|
1565
1904
|
|
|
1566
1905
|
```diff
|
|
1567
|
-
-<div
|
|
1568
|
-
+<div
|
|
1906
|
+
-<div>I am {{ foo }}</div>
|
|
1907
|
+
+<div>I am {{ props.foo }}</div>
|
|
1569
1908
|
```
|
|
1570
1909
|
|
|
1571
|
-
###
|
|
1910
|
+
### Nested defaults in your own components
|
|
1572
1911
|
|
|
1573
|
-
|
|
1574
|
-
|
|
1575
|
-
|
|
1912
|
+
To make your component hand defaults down to its children (the way
|
|
1913
|
+
`CdsButtonGroup` does), just call `useDefaults()` with no arguments — the nested
|
|
1914
|
+
keys from its `defaults` section go into the child context:
|
|
1576
1915
|
|
|
1577
1916
|
```vue
|
|
1578
1917
|
<script setup lang="ts">
|
|
@@ -1598,7 +1937,8 @@ createCds({
|
|
|
1598
1937
|
});
|
|
1599
1938
|
```
|
|
1600
1939
|
|
|
1601
|
-
|
|
1940
|
+
If the children's defaults depend on the component's props, use `provideDefaults`
|
|
1941
|
+
directly:
|
|
1602
1942
|
|
|
1603
1943
|
```vue
|
|
1604
1944
|
<script setup lang="ts">
|
|
@@ -1621,10 +1961,11 @@ provideDefaults({
|
|
|
1621
1961
|
</template>
|
|
1622
1962
|
```
|
|
1623
1963
|
|
|
1624
|
-
## Blueprint —
|
|
1964
|
+
## Blueprint — a configuration preset
|
|
1625
1965
|
|
|
1626
|
-
|
|
1627
|
-
|
|
1966
|
+
If several applications need the same set of options, extract it into a
|
|
1967
|
+
`blueprint`: a plain `createCds` options object that the rest of the
|
|
1968
|
+
configuration is layered on top of.
|
|
1628
1969
|
|
|
1629
1970
|
```ts
|
|
1630
1971
|
import { createCds, components, directives } from '@central-design-system/components';
|
|
@@ -1641,32 +1982,37 @@ const cds = createCds({
|
|
|
1641
1982
|
blueprint: productBlueprint,
|
|
1642
1983
|
components,
|
|
1643
1984
|
directives,
|
|
1644
|
-
//
|
|
1985
|
+
// overrides the value from the blueprint
|
|
1645
1986
|
defaults: {
|
|
1646
1987
|
CdsButton: { size: 'sm' }
|
|
1647
1988
|
}
|
|
1648
1989
|
});
|
|
1649
1990
|
```
|
|
1650
1991
|
|
|
1651
|
-
|
|
1652
|
-
`appearance: 'secondary'`
|
|
1992
|
+
Options are merged deeply (`mergeDeep`), so in the example above the buttons keep
|
|
1993
|
+
`appearance: 'secondary'` from the preset and gain `size: 'sm'`.
|
|
1994
|
+
|
|
1995
|
+
---
|
|
1653
1996
|
|
|
1997
|
+
---
|
|
1998
|
+
sourceHash: 26c790bd53cd55729b9902cf5d1032b5c6457f6b
|
|
1654
1999
|
---
|
|
1655
2000
|
|
|
1656
|
-
#
|
|
2001
|
+
# Internationalization (i18n)
|
|
1657
2002
|
|
|
1658
|
-
|
|
1659
|
-
|
|
1660
|
-
|
|
1661
|
-
|
|
2003
|
+
CDS components carry texts of their own: "No data available" in a select, the
|
|
2004
|
+
table filter labels, the `aria-label` of a close button, the file counter. They
|
|
2005
|
+
all go through the built-in localization layer, so you can translate them into
|
|
2006
|
+
another language, override a single string for your product, or switch languages
|
|
2007
|
+
on the fly — without rewriting components.
|
|
1662
2008
|
|
|
1663
|
-
|
|
1664
|
-
|
|
2009
|
+
The library ships two dictionaries — Russian and English. `ru` is active by
|
|
2010
|
+
default, so out of the box everything is in Russian.
|
|
1665
2011
|
|
|
1666
|
-
##
|
|
2012
|
+
## Setup
|
|
1667
2013
|
|
|
1668
|
-
|
|
1669
|
-
|
|
2014
|
+
The locale is configured through the `locale` option of `createCds`. Switching to
|
|
2015
|
+
the built-in English is a one-liner — you don't need to pass any dictionaries:
|
|
1670
2016
|
|
|
1671
2017
|
```ts
|
|
1672
2018
|
import { createApp } from 'vue';
|
|
@@ -1686,7 +2032,7 @@ const cds = createCds({
|
|
|
1686
2032
|
createApp(App).use(cds);
|
|
1687
2033
|
```
|
|
1688
2034
|
|
|
1689
|
-
|
|
2035
|
+
Languages the library doesn't have are added as a dictionary in `messages`:
|
|
1690
2036
|
|
|
1691
2037
|
```ts
|
|
1692
2038
|
import de from './locales/cds-de';
|
|
@@ -1702,43 +2048,46 @@ createCds({
|
|
|
1702
2048
|
});
|
|
1703
2049
|
```
|
|
1704
2050
|
|
|
1705
|
-
|
|
|
2051
|
+
| Option | Type | Purpose |
|
|
1706
2052
|
| ------------------ | ------------------------- | ----------------------------------------------------------------------------- |
|
|
1707
|
-
| `locale` | `string` |
|
|
1708
|
-
| `fallback` | `string` |
|
|
1709
|
-
| `messages` | `LocaleMessages` |
|
|
1710
|
-
| `decimalSeparator` | `string` |
|
|
1711
|
-
| `rtl` | `Record<string, boolean>` |
|
|
1712
|
-
| `adapter` | `LocaleInstance` |
|
|
2053
|
+
| `locale` | `string` | Active language; `ru` (default) and `en` are available out of the box |
|
|
2054
|
+
| `fallback` | `string` | Language a string is taken from when the active one lacks it; `ru` by default |
|
|
2055
|
+
| `messages` | `LocaleMessages` | Dictionaries of extra languages; a same-named built-in dictionary is replaced entirely |
|
|
2056
|
+
| `decimalSeparator` | `string` | Decimal separator; derived from the active locale by default |
|
|
2057
|
+
| `rtl` | `Record<string, boolean>` | Map of right-to-left languages (see [RTL](#rtl)) |
|
|
2058
|
+
| `adapter` | `LocaleInstance` | Your own translation engine instead of the built-in one (see [Custom adapter](#custom-adapter)) |
|
|
1713
2059
|
|
|
1714
|
-
|
|
1715
|
-
|
|
2060
|
+
The built-in dictionaries are available to you as well — they live in the
|
|
2061
|
+
`locales` export. Use them as a base for your own language or to fix a couple of
|
|
2062
|
+
strings:
|
|
1716
2063
|
|
|
1717
2064
|
```ts
|
|
1718
2065
|
import { locales } from '@central-design-system/components';
|
|
1719
2066
|
|
|
1720
|
-
locales.ru; //
|
|
1721
|
-
locales.en; //
|
|
2067
|
+
locales.ru; // Russian dictionary
|
|
2068
|
+
locales.en; // English dictionary
|
|
1722
2069
|
```
|
|
1723
2070
|
|
|
1724
|
-
|
|
2071
|
+
For the full set of keys, see [Message keys](#message-keys).
|
|
1725
2072
|
|
|
1726
|
-
##
|
|
2073
|
+
## How components get their text
|
|
1727
2074
|
|
|
1728
|
-
|
|
1729
|
-
|
|
1730
|
-
`text`
|
|
1731
|
-
`
|
|
2075
|
+
Component strings are keys prefixed with `$cds.` that the library runs through a
|
|
2076
|
+
translation function. Some of the keys are declared as default prop values, so
|
|
2077
|
+
you can see them in the API: `text` on `CdsFileUpload` is `$cds.fileUpload.browse`,
|
|
2078
|
+
`closeLabel` on `CdsNotification` is `$cds.close`, `noDataText` on `CdsSelect` is
|
|
2079
|
+
`$cds.noDataText`.
|
|
1732
2080
|
|
|
1733
|
-
|
|
2081
|
+
That gives you three ways to change a text.
|
|
1734
2082
|
|
|
1735
|
-
|
|
2083
|
+
**Switch the whole language** — with the `locale` option:
|
|
1736
2084
|
|
|
1737
2085
|
```ts
|
|
1738
2086
|
createCds({ locale: { locale: 'en' } });
|
|
1739
2087
|
```
|
|
1740
2088
|
|
|
1741
|
-
|
|
2089
|
+
**Change wording across the product** — with a dictionary on top of the built-in
|
|
2090
|
+
one:
|
|
1742
2091
|
|
|
1743
2092
|
```ts
|
|
1744
2093
|
import { createCds, locales } from '@central-design-system/components';
|
|
@@ -1746,54 +2095,56 @@ import { createCds, locales } from '@central-design-system/components';
|
|
|
1746
2095
|
createCds({
|
|
1747
2096
|
locale: {
|
|
1748
2097
|
messages: {
|
|
1749
|
-
|
|
2098
|
+
en: { ...locales.en, noDataText: 'Nothing found' }
|
|
1750
2099
|
}
|
|
1751
2100
|
}
|
|
1752
2101
|
});
|
|
1753
2102
|
```
|
|
1754
2103
|
|
|
1755
|
-
|
|
1756
|
-
`...locales.
|
|
1757
|
-
|
|
1758
|
-
|
|
2104
|
+
**Important.** A language dictionary is replaced entirely, not merged key by key.
|
|
2105
|
+
Without the `...locales.en` spread, the English locale is left with a single key
|
|
2106
|
+
and the rest of the strings turn into their own keys (`$cds.close` instead of
|
|
2107
|
+
"Close"). Spread nested sections separately:
|
|
2108
|
+
`table: { ...locales.en.table, emptyText: '…' }`.
|
|
1759
2109
|
|
|
1760
|
-
|
|
2110
|
+
**Change one label in one place** — with a prop:
|
|
1761
2111
|
|
|
1762
2112
|
```vue
|
|
1763
|
-
<CdsSelect :items="items" no-data-text="
|
|
2113
|
+
<CdsSelect :items="items" no-data-text="No matching suppliers" />
|
|
1764
2114
|
```
|
|
1765
2115
|
|
|
1766
|
-
|
|
1767
|
-
|
|
2116
|
+
The same prop can be set as the default for every instance of the component — see
|
|
2117
|
+
global configuration:
|
|
1768
2118
|
|
|
1769
2119
|
```ts
|
|
1770
2120
|
createCds({
|
|
1771
2121
|
defaults: {
|
|
1772
|
-
CdsSelect: { noDataText: '
|
|
2122
|
+
CdsSelect: { noDataText: 'Nothing found' }
|
|
1773
2123
|
}
|
|
1774
2124
|
});
|
|
1775
2125
|
```
|
|
1776
2126
|
|
|
1777
|
-
|
|
1778
|
-
|
|
1779
|
-
|
|
2127
|
+
The translation function also accepts plain text: a string without the `$cds.`
|
|
2128
|
+
prefix is returned as is, with the parameters substituted. That's how props with
|
|
2129
|
+
a localizable value work the same way with a key and with a ready-made phrase.
|
|
1780
2130
|
|
|
1781
|
-
|
|
1782
|
-
|
|
2131
|
+
If a key is missing from both the active locale and the `fallback`, the component
|
|
2132
|
+
shows the key itself, and in dev mode a
|
|
2133
|
+
`[CDS: useLocale] Translation key … not found` warning appears in the console.
|
|
1783
2134
|
|
|
1784
|
-
##
|
|
2135
|
+
## Switching the language at runtime
|
|
1785
2136
|
|
|
1786
|
-
`createCds`
|
|
1787
|
-
|
|
2137
|
+
`createCds` returns an instance whose locale lives in reactive refs — to switch
|
|
2138
|
+
languages, just write to `current`:
|
|
1788
2139
|
|
|
1789
2140
|
```ts
|
|
1790
2141
|
const cds = createCds({ components, directives });
|
|
1791
2142
|
|
|
1792
|
-
//
|
|
2143
|
+
// for example, following the user's choice in profile settings
|
|
1793
2144
|
cds.locale.current.value = 'en';
|
|
1794
2145
|
```
|
|
1795
2146
|
|
|
1796
|
-
|
|
2147
|
+
Inside components, the `useLocale` composable does the same:
|
|
1797
2148
|
|
|
1798
2149
|
```vue
|
|
1799
2150
|
<script setup lang="ts">
|
|
@@ -1810,13 +2161,15 @@ const { current } = useLocale();
|
|
|
1810
2161
|
</template>
|
|
1811
2162
|
```
|
|
1812
2163
|
|
|
1813
|
-
|
|
2164
|
+
Every mounted component recalculates its strings on its own — no page reload
|
|
2165
|
+
needed.
|
|
1814
2166
|
|
|
1815
|
-
##
|
|
2167
|
+
## A locale for part of the application
|
|
1816
2168
|
|
|
1817
|
-
|
|
1818
|
-
|
|
1819
|
-
|
|
2169
|
+
A single subtree can get its own language — for example, an English-language
|
|
2170
|
+
widget inside a Russian interface. Call `provideLocale` in a wrapper component:
|
|
2171
|
+
it takes the locale from the context, applies the props you passed and provides
|
|
2172
|
+
the result to the children.
|
|
1820
2173
|
|
|
1821
2174
|
```vue
|
|
1822
2175
|
<script setup lang="ts">
|
|
@@ -1842,13 +2195,13 @@ provideLocale(props);
|
|
|
1842
2195
|
</template>
|
|
1843
2196
|
```
|
|
1844
2197
|
|
|
1845
|
-
|
|
1846
|
-
|
|
2198
|
+
Props you don't pass are inherited from the parent locale, so a wrapper with just
|
|
2199
|
+
a `locale` loses neither the `fallback` nor the dictionaries.
|
|
1847
2200
|
|
|
1848
2201
|
## useLocale
|
|
1849
2202
|
|
|
1850
|
-
|
|
1851
|
-
|
|
2203
|
+
The composable hands you the current locale and its functions — use it in your
|
|
2204
|
+
own components so their texts live in the same dictionaries as the CDS ones.
|
|
1852
2205
|
|
|
1853
2206
|
```vue
|
|
1854
2207
|
<script setup lang="ts">
|
|
@@ -1863,44 +2216,47 @@ const { t, n } = useLocale();
|
|
|
1863
2216
|
</template>
|
|
1864
2217
|
```
|
|
1865
2218
|
|
|
1866
|
-
|
|
|
2219
|
+
| Property | Type | Purpose |
|
|
1867
2220
|
| ------------------ | ---------------------------------------------- | ------------------------------------------------------------- |
|
|
1868
|
-
| `t` | `(key: string, ...params: unknown[]) => string` |
|
|
1869
|
-
| `n` | `(value: number) => string` |
|
|
1870
|
-
| `current` | `Ref<string>` |
|
|
1871
|
-
| `fallback` | `Ref<string>` |
|
|
1872
|
-
| `messages` | `Ref<LocaleMessages>` |
|
|
1873
|
-
| `decimalSeparator` | `ShallowRef<string>` |
|
|
2221
|
+
| `t` | `(key: string, ...params: unknown[]) => string` | Translation of a `$cds.…` key with parameter substitution |
|
|
2222
|
+
| `n` | `(value: number) => string` | Number formatting for the active locale |
|
|
2223
|
+
| `current` | `Ref<string>` | Active language; writing to it switches the language |
|
|
2224
|
+
| `fallback` | `Ref<string>` | Fallback language |
|
|
2225
|
+
| `messages` | `Ref<LocaleMessages>` | Dictionaries; can be extended at runtime |
|
|
2226
|
+
| `decimalSeparator` | `ShallowRef<string>` | Decimal separator of the active locale |
|
|
1874
2227
|
|
|
1875
|
-
|
|
2228
|
+
Parameters in strings are numbered — `{0}`, `{1}`:
|
|
1876
2229
|
|
|
1877
2230
|
```ts
|
|
1878
2231
|
const { t } = useLocale();
|
|
1879
2232
|
|
|
1880
|
-
t('$cds.carousel.delimiter', 3, 8); //
|
|
1881
|
-
t('
|
|
2233
|
+
t('$cds.carousel.delimiter', 3, 8); // "Slide 3 of 8"
|
|
2234
|
+
t('Days left: {0}', 5); // "Days left: 5"
|
|
1882
2235
|
```
|
|
1883
2236
|
|
|
1884
|
-
`n`
|
|
1885
|
-
|
|
1886
|
-
(`,`
|
|
2237
|
+
Under the hood `n` is `Intl.NumberFormat` with the active locale and the
|
|
2238
|
+
`fallback`, so group and decimal separators come from the browser. The library
|
|
2239
|
+
derives `decimalSeparator` from the same locale (`,` for `ru`, `.` for `en`); if
|
|
2240
|
+
your product uses a different one, set it explicitly in `createCds`.
|
|
1887
2241
|
|
|
1888
|
-
##
|
|
2242
|
+
## Dates
|
|
1889
2243
|
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
2244
|
+
Month and weekday names live in separate date locales, shipped by `ru` and `en`.
|
|
2245
|
+
Date and time components pick the date locale by the active language, so after
|
|
2246
|
+
`current.value = 'en'` the calendar switches by itself.
|
|
1893
2247
|
|
|
1894
|
-
|
|
1895
|
-
|
|
2248
|
+
A single component gets its language from the `locale` prop — `CdsDatePicker`,
|
|
2249
|
+
`CdsDateInput` and `CdsTimePicker` all have it:
|
|
1896
2250
|
|
|
1897
2251
|
```vue
|
|
1898
2252
|
<CdsDatePicker v-model="value" locale="en" :first-day-of-week="0" header />
|
|
1899
2253
|
```
|
|
1900
2254
|
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
2255
|
+
The prop accepts not only a language name but also your own date locale object
|
|
2256
|
+
(type `TDateLocale`) — that's how you plug in a language the library doesn't
|
|
2257
|
+
have. The built-in date locales, for reference and reuse, live in the same
|
|
2258
|
+
`locales` export: `locales.ruDate`, `locales.enDate` and the `locales.dateLocales`
|
|
2259
|
+
map.
|
|
1904
2260
|
|
|
1905
2261
|
```ts
|
|
1906
2262
|
const de = {
|
|
@@ -1921,18 +2277,20 @@ const de = {
|
|
|
1921
2277
|
<CdsDatePicker v-model="value" :locale="de" />
|
|
1922
2278
|
```
|
|
1923
2279
|
|
|
1924
|
-
##
|
|
2280
|
+
## Table
|
|
1925
2281
|
|
|
1926
|
-
`CdsTable`
|
|
1927
|
-
|
|
2282
|
+
`CdsTable` builds its labels from the `$cds.table.*` keys, but it also accepts a
|
|
2283
|
+
pinpoint override through the `locale` prop — which replaces only the strings you
|
|
2284
|
+
pass:
|
|
1928
2285
|
|
|
1929
2286
|
```vue
|
|
1930
|
-
<CdsTable :columns="columns" :data="data" :locale="{ emptyText: '
|
|
2287
|
+
<CdsTable :columns="columns" :data="data" :locale="{ emptyText: 'No requests yet' }" />
|
|
1931
2288
|
```
|
|
1932
2289
|
|
|
1933
2290
|
## RTL
|
|
1934
2291
|
|
|
1935
|
-
|
|
2292
|
+
Right-to-left languages are described by the `rtl` map: the key is the language,
|
|
2293
|
+
the value is the direction.
|
|
1936
2294
|
|
|
1937
2295
|
```ts
|
|
1938
2296
|
createCds({
|
|
@@ -1944,13 +2302,15 @@ createCds({
|
|
|
1944
2302
|
});
|
|
1945
2303
|
```
|
|
1946
2304
|
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
`
|
|
1950
|
-
(`margin-inline`, `inset-inline`)
|
|
1951
|
-
|
|
2305
|
+
Components read the direction through `useRtl` and flip whatever depends on the
|
|
2306
|
+
axis: the side menus and tooltips open to, the pagination arrows, the cell order
|
|
2307
|
+
in `CdsOtpInput`, the fill of `CdsProgressBar`. Spacing and borders in the styles
|
|
2308
|
+
are mostly written with logical properties (`margin-inline`, `inset-inline`) and
|
|
2309
|
+
are mirrored by the browser itself — but the design system does not claim full
|
|
2310
|
+
RTL support yet, and some places will need polishing on your side.
|
|
1952
2311
|
|
|
1953
|
-
|
|
2312
|
+
The library does not set the direction attribute for you — put it on the
|
|
2313
|
+
application root yourself:
|
|
1954
2314
|
|
|
1955
2315
|
```vue
|
|
1956
2316
|
<script setup lang="ts">
|
|
@@ -1966,15 +2326,16 @@ const { isRtl } = useRtl();
|
|
|
1966
2326
|
</template>
|
|
1967
2327
|
```
|
|
1968
2328
|
|
|
1969
|
-
`useRtl`
|
|
1970
|
-
|
|
2329
|
+
`useRtl` gives you `isRtl` and `rtlClasses` — a ready `cds-locale--is-rtl` /
|
|
2330
|
+
`cds-locale--is-ltr` class for your own styles.
|
|
1971
2331
|
|
|
1972
|
-
##
|
|
2332
|
+
## Custom adapter
|
|
1973
2333
|
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
|
|
1977
|
-
|
|
2334
|
+
If your application already has an i18n library, hand the translations over to
|
|
2335
|
+
it: the `adapter` option accepts any object implementing the `LocaleInstance`
|
|
2336
|
+
interface. In that case `messages`, `locale` and `fallback` from `createCds` are
|
|
2337
|
+
unused — your engine becomes the source of truth, and the CDS strings live in the
|
|
2338
|
+
application's shared dictionaries under the `$cds` key.
|
|
1978
2339
|
|
|
1979
2340
|
```ts
|
|
1980
2341
|
import type { LocaleInstance, LocaleOptions } from '@central-design-system/components';
|
|
@@ -2002,11 +2363,11 @@ import { createI18n } from 'vue-i18n';
|
|
|
2002
2363
|
|
|
2003
2364
|
const i18n = createI18n({
|
|
2004
2365
|
legacy: false,
|
|
2005
|
-
locale: '
|
|
2366
|
+
locale: 'en',
|
|
2006
2367
|
messages: {
|
|
2007
|
-
|
|
2008
|
-
$cds: { noDataText: '
|
|
2009
|
-
profile: { title: '
|
|
2368
|
+
en: {
|
|
2369
|
+
$cds: { noDataText: 'No data available' },
|
|
2370
|
+
profile: { title: 'Profile' }
|
|
2010
2371
|
}
|
|
2011
2372
|
}
|
|
2012
2373
|
});
|
|
@@ -2020,85 +2381,390 @@ const cds = createCds({
|
|
|
2020
2381
|
});
|
|
2021
2382
|
```
|
|
2022
2383
|
|
|
2023
|
-
|
|
2024
|
-
`fallback`, `messages`, `decimalSeparator`, `t`, `n`
|
|
2025
|
-
|
|
2026
|
-
|
|
2384
|
+
Required members of `LocaleInstance`: `name` (that's how the adapter is
|
|
2385
|
+
recognized), `current`, `fallback`, `messages`, `decimalSeparator`, `t`, `n` and
|
|
2386
|
+
`provide` — a factory for a nested locale, used by `provideLocale`. If you don't
|
|
2387
|
+
need "a locale in a subtree", `provide` can return the same instance, as in the
|
|
2388
|
+
example above.
|
|
2027
2389
|
|
|
2028
|
-
##
|
|
2390
|
+
## Message keys
|
|
2029
2391
|
|
|
2030
|
-
|
|
2031
|
-
|
|
2032
|
-
`locales.
|
|
2392
|
+
The built-in English dictionary is a template for translating into a new
|
|
2393
|
+
language. Copy it, translate the values and pass it to `messages` under your
|
|
2394
|
+
language's key; the Russian version is available as `locales.ru`.
|
|
2033
2395
|
|
|
2034
2396
|
```ts
|
|
2035
2397
|
export default {
|
|
2036
|
-
badge: '
|
|
2037
|
-
noDataText: '
|
|
2038
|
-
selectAll: '
|
|
2039
|
-
close: '
|
|
2040
|
-
open: '
|
|
2041
|
-
dismiss: '
|
|
2398
|
+
badge: 'Badge',
|
|
2399
|
+
noDataText: 'No data available',
|
|
2400
|
+
selectAll: 'Select all',
|
|
2401
|
+
close: 'Close',
|
|
2402
|
+
open: 'Open',
|
|
2403
|
+
dismiss: 'Dismiss',
|
|
2042
2404
|
confirmEdit: {
|
|
2043
|
-
ok: '
|
|
2044
|
-
cancel: '
|
|
2405
|
+
ok: 'OK',
|
|
2406
|
+
cancel: 'Cancel'
|
|
2045
2407
|
},
|
|
2046
2408
|
carousel: {
|
|
2047
|
-
prev: '
|
|
2048
|
-
next: '
|
|
2049
|
-
delimiter: '
|
|
2409
|
+
prev: 'Previous slide',
|
|
2410
|
+
next: 'Next slide',
|
|
2411
|
+
delimiter: 'Slide {0} of {1}'
|
|
2050
2412
|
},
|
|
2051
2413
|
input: {
|
|
2052
|
-
clear: '
|
|
2053
|
-
otp: '
|
|
2054
|
-
prependAction: '{0}
|
|
2055
|
-
appendAction: '{0}
|
|
2414
|
+
clear: 'Clear {0}',
|
|
2415
|
+
otp: 'Please enter OTP character',
|
|
2416
|
+
prependAction: '{0} prepended action',
|
|
2417
|
+
appendAction: '{0} appended action'
|
|
2056
2418
|
},
|
|
2057
2419
|
fileInput: {
|
|
2058
|
-
counter: '
|
|
2059
|
-
counterSize: '
|
|
2420
|
+
counter: '{0} files',
|
|
2421
|
+
counterSize: '{0} files ({1} in total)'
|
|
2060
2422
|
},
|
|
2061
2423
|
fileUpload: {
|
|
2062
|
-
title: '
|
|
2063
|
-
divider: '
|
|
2064
|
-
browse: '
|
|
2424
|
+
title: 'Drag and drop files here',
|
|
2425
|
+
divider: 'or',
|
|
2426
|
+
browse: 'Browse files'
|
|
2065
2427
|
},
|
|
2066
2428
|
steps: {
|
|
2067
|
-
prev: '
|
|
2068
|
-
next: '
|
|
2429
|
+
prev: 'Back',
|
|
2430
|
+
next: 'Next'
|
|
2069
2431
|
},
|
|
2070
2432
|
table: {
|
|
2071
|
-
filterTitle: '
|
|
2072
|
-
filterConfirm: '
|
|
2073
|
-
filterReset: '
|
|
2074
|
-
filterEmptyText: '
|
|
2075
|
-
filterCheckAll: '
|
|
2076
|
-
filterSearchPlaceholder: '
|
|
2077
|
-
emptyText: '
|
|
2078
|
-
selectAll: '
|
|
2079
|
-
selectInvert: '
|
|
2080
|
-
selectNone: '
|
|
2081
|
-
selectionAll: '
|
|
2082
|
-
sortTitle: '
|
|
2083
|
-
expand: '
|
|
2084
|
-
collapse: '
|
|
2085
|
-
triggerDesc: '
|
|
2086
|
-
triggerAsc: '
|
|
2087
|
-
cancelSort: '
|
|
2088
|
-
showed: '
|
|
2089
|
-
from: '
|
|
2090
|
-
rowOnPage: '
|
|
2433
|
+
filterTitle: 'Filter menu',
|
|
2434
|
+
filterConfirm: 'OK',
|
|
2435
|
+
filterReset: 'Reset',
|
|
2436
|
+
filterEmptyText: 'No filters',
|
|
2437
|
+
filterCheckAll: 'Select all items',
|
|
2438
|
+
filterSearchPlaceholder: 'Search in filters',
|
|
2439
|
+
emptyText: 'No data',
|
|
2440
|
+
selectAll: 'Select current page',
|
|
2441
|
+
selectInvert: 'Invert current page',
|
|
2442
|
+
selectNone: 'Clear all data',
|
|
2443
|
+
selectionAll: 'Select all data',
|
|
2444
|
+
sortTitle: 'Sort',
|
|
2445
|
+
expand: 'Expand row',
|
|
2446
|
+
collapse: 'Collapse row',
|
|
2447
|
+
triggerDesc: 'Click to sort descending',
|
|
2448
|
+
triggerAsc: 'Click to sort ascending',
|
|
2449
|
+
cancelSort: 'Click to cancel sorting',
|
|
2450
|
+
showed: 'Showed',
|
|
2451
|
+
from: 'from',
|
|
2452
|
+
rowOnPage: 'Row on page'
|
|
2091
2453
|
},
|
|
2092
2454
|
uploader: {
|
|
2093
|
-
uploading: '
|
|
2094
|
-
uploadFile: '
|
|
2095
|
-
downloadFile: '
|
|
2096
|
-
removeFile: '
|
|
2097
|
-
uploadError: '
|
|
2098
|
-
previewFile: '
|
|
2455
|
+
uploading: 'Uploading...',
|
|
2456
|
+
uploadFile: 'Upload file',
|
|
2457
|
+
downloadFile: 'Download file',
|
|
2458
|
+
removeFile: 'Remove file',
|
|
2459
|
+
uploadError: 'Upload error',
|
|
2460
|
+
previewFile: 'Preview file'
|
|
2099
2461
|
}
|
|
2100
2462
|
};
|
|
2101
2463
|
```
|
|
2102
2464
|
|
|
2103
|
-
|
|
2104
|
-
|
|
2465
|
+
The dictionary may stay incomplete: missing keys are taken from the `fallback` —
|
|
2466
|
+
that is, from Russian by default.
|
|
2467
|
+
|
|
2468
|
+
---
|
|
2469
|
+
|
|
2470
|
+
---
|
|
2471
|
+
sourceHash: 16f5caa5227fd7ac98a4d370070985a7094a8a2b
|
|
2472
|
+
---
|
|
2473
|
+
|
|
2474
|
+
# Date Utils
|
|
2475
|
+
|
|
2476
|
+
Central Design System includes a set of functions for working with the native JS
|
|
2477
|
+
`Date`: mask-based formatting, string parsing, arithmetic, comparison and
|
|
2478
|
+
calendar math. You don't need a separate date library (dayjs, date-fns) for
|
|
2479
|
+
everyday tasks. The date and time components use the very same functions —
|
|
2480
|
+
CdsDateInput, CdsDatePicker,
|
|
2481
|
+
CdsTimePicker — so format masks are identical in
|
|
2482
|
+
the utilities and in the components.
|
|
2483
|
+
|
|
2484
|
+
The functions accept a `Date`, a timestamp (milliseconds) or a date string,
|
|
2485
|
+
return a native `Date` and **never mutate** the arguments you pass — the result
|
|
2486
|
+
is always a new object.
|
|
2487
|
+
|
|
2488
|
+
## Setup
|
|
2489
|
+
|
|
2490
|
+
The utilities are exported from the package under the `utils` namespace:
|
|
2491
|
+
|
|
2492
|
+
```ts
|
|
2493
|
+
import { utils } from '@central-design-system/components';
|
|
2494
|
+
|
|
2495
|
+
const { formatDate, addToDate } = utils;
|
|
2496
|
+
|
|
2497
|
+
formatDate(new Date(2026, 7, 18), 'DD.MM.YYYY'); // '18.08.2026'
|
|
2498
|
+
```
|
|
2499
|
+
|
|
2500
|
+
## Formatting — `formatDate`
|
|
2501
|
+
|
|
2502
|
+
`formatDate(value, mask, dateLocale?)` turns a date into a string using a mask:
|
|
2503
|
+
|
|
2504
|
+
```ts
|
|
2505
|
+
const { formatDate } = utils;
|
|
2506
|
+
|
|
2507
|
+
formatDate(new Date(2026, 7, 18, 14, 30), 'DD.MM.YYYY HH:mm'); // '18.08.2026 14:30'
|
|
2508
|
+
formatDate(Date.now(), 'D MMM YYYY'); // '18 Авг 2026'
|
|
2509
|
+
formatDate(new Date(2026, 7, 18), 'dddd'); // 'Вторник'
|
|
2510
|
+
```
|
|
2511
|
+
|
|
2512
|
+
Without a mask, an ISO-like format is used: `YYYY-MM-DDTHH:mm:ss.SSSZ`.
|
|
2513
|
+
For an invalid value the function returns `undefined`.
|
|
2514
|
+
|
|
2515
|
+
Month and weekday names come from the Russian date locale by default. To print
|
|
2516
|
+
them in another language, pass a date locale as the third argument — the
|
|
2517
|
+
built-in ones live in the `locales` export:
|
|
2518
|
+
|
|
2519
|
+
```ts
|
|
2520
|
+
import { locales, utils } from '@central-design-system/components';
|
|
2521
|
+
|
|
2522
|
+
utils.formatDate(new Date(2026, 7, 18), 'dddd, D MMMM', locales.enDate);
|
|
2523
|
+
// 'Tuesday, 18 August'
|
|
2524
|
+
```
|
|
2525
|
+
|
|
2526
|
+
Your own language is plugged in as a `TDateLocale` object — the same fields as
|
|
2527
|
+
`locales.ruDate`. See the Internationalization
|
|
2528
|
+
guide for more on date locales.
|
|
2529
|
+
|
|
2530
|
+
### Format tokens
|
|
2531
|
+
|
|
2532
|
+
| Unit | Token | Result |
|
|
2533
|
+
| --- | --- | --- |
|
|
2534
|
+
| Year | `YY` / `YYYY` | `26` / `2026` |
|
|
2535
|
+
| Month | `M` / `MM` | `8` / `08` |
|
|
2536
|
+
| Month (name) | `MMM` / `MMMM` | `Авг` / `Август` |
|
|
2537
|
+
| Quarter | `Q` / `Qo` | `3` / `3rd` |
|
|
2538
|
+
| Day of month | `D` / `Do` / `DD` | `18` / `18th` / `18` |
|
|
2539
|
+
| Day of year | `DDD` / `DDDD` | `230` / `230` (zero-padded to 3 digits) |
|
|
2540
|
+
| Day of week | `d` | `2` (0 — Sunday) |
|
|
2541
|
+
| Day of week (name) | `dd` / `ddd` / `dddd` | `Вт` / `Вт` / `Вторник` |
|
|
2542
|
+
| Day of week (ISO) | `E` | `2` (1 — Monday, 7 — Sunday) |
|
|
2543
|
+
| Week of year | `w` / `ww` | `34` / `34` |
|
|
2544
|
+
| Hour (0–23) | `H` / `HH` | `14` / `14` |
|
|
2545
|
+
| Hour (1–12) | `h` / `hh` | `2` / `02` |
|
|
2546
|
+
| Minute | `m` / `mm` | `30` / `30` |
|
|
2547
|
+
| Second | `s` / `ss` | `5` / `05` |
|
|
2548
|
+
| Fractions of a second | `S` / `SS` / `SSS` | `1` / `12` / `123` |
|
|
2549
|
+
| Time zone | `Z` / `ZZ` | `+03:00` / `+0300` |
|
|
2550
|
+
| Meridiem | `A` / `a` / `aa` | `PM` / `pm` / `p.m.` |
|
|
2551
|
+
| Unix time | `X` / `x` | seconds / milliseconds |
|
|
2552
|
+
|
|
2553
|
+
Ordinal suffixes (`Do`, `Qo`) are English (`1st`, `2nd`…) regardless of the
|
|
2554
|
+
locale.
|
|
2555
|
+
|
|
2556
|
+
Arbitrary text inside a mask is escaped with square brackets:
|
|
2557
|
+
|
|
2558
|
+
```ts
|
|
2559
|
+
formatDate(new Date(2026, 7, 18), '[Сегодня] DD.MM'); // 'Сегодня 18.08'
|
|
2560
|
+
```
|
|
2561
|
+
|
|
2562
|
+
## Parsing — `extractDate` and `splitDate`
|
|
2563
|
+
|
|
2564
|
+
`extractDate(str, mask, dateLocale?)` parses a string with a mask and returns a
|
|
2565
|
+
`Date`:
|
|
2566
|
+
|
|
2567
|
+
```ts
|
|
2568
|
+
const { extractDate } = utils;
|
|
2569
|
+
|
|
2570
|
+
extractDate('21.03.1985', 'DD.MM.YYYY'); // Date: 21 March 1985
|
|
2571
|
+
extractDate('2019-10-29 23:12', 'YYYY-MM-DD HH:mm'); // Date: 29 October 2019, 23:12
|
|
2572
|
+
```
|
|
2573
|
+
|
|
2574
|
+
Month and day names inside the string are recognized through the date locale —
|
|
2575
|
+
Russian by default, just like in `formatDate`.
|
|
2576
|
+
|
|
2577
|
+
A non-existent day overflows following the rules of the native `Date`:
|
|
2578
|
+
`extractDate('30.02.2024', 'DD.MM.YYYY')` gives 1 March 2024. When you need
|
|
2579
|
+
strict input validation, format the result back and compare it with the string:
|
|
2580
|
+
|
|
2581
|
+
```ts
|
|
2582
|
+
const strict = (str: string, mask: string) => formatDate(extractDate(str, mask), mask) === str;
|
|
2583
|
+
|
|
2584
|
+
strict('18.08.2026', 'DD.MM.YYYY'); // true
|
|
2585
|
+
strict('30.02.2024', 'DD.MM.YYYY'); // false — overflowed into 01.03.2024
|
|
2586
|
+
```
|
|
2587
|
+
|
|
2588
|
+
If you don't need a `Date`, `splitDate(str, mask, dateLocale?)` splits the string
|
|
2589
|
+
into its parts — an `IRawDate` object with the fields `year`, `month`, `day`,
|
|
2590
|
+
`hour`, `minute`, `second`, `millisecond` (anything not found is `null`):
|
|
2591
|
+
|
|
2592
|
+
```ts
|
|
2593
|
+
const { splitDate } = utils;
|
|
2594
|
+
|
|
2595
|
+
splitDate('18.08.2026', 'DD.MM.YYYY');
|
|
2596
|
+
// { year: 2026, month: 8, day: 18, hour: null, … }
|
|
2597
|
+
```
|
|
2598
|
+
|
|
2599
|
+
## Creating and changing
|
|
2600
|
+
|
|
2601
|
+
### `buildDate`
|
|
2602
|
+
|
|
2603
|
+
`buildDate(modified, utc?)` — the current moment with individual parts replaced.
|
|
2604
|
+
Handy when you need "now, but at 15:00" or "today, but in 2010":
|
|
2605
|
+
|
|
2606
|
+
```ts
|
|
2607
|
+
const { buildDate } = utils;
|
|
2608
|
+
|
|
2609
|
+
buildDate({ year: 2010, day: 5, hour: 15 });
|
|
2610
|
+
// current month, minutes and seconds; year 2010, day 5, hour 15
|
|
2611
|
+
```
|
|
2612
|
+
|
|
2613
|
+
Supported object fields: `year`, `month` (1–12), `day` (or `date`), `hour`,
|
|
2614
|
+
`minute`, `second`, `millisecond`.
|
|
2615
|
+
|
|
2616
|
+
### `adjustDate`
|
|
2617
|
+
|
|
2618
|
+
`adjustDate(date, modified, utc?)` — the same thing, but for an arbitrary date:
|
|
2619
|
+
|
|
2620
|
+
```ts
|
|
2621
|
+
const { adjustDate } = utils;
|
|
2622
|
+
|
|
2623
|
+
adjustDate(new Date(2026, 10, 2), { year: 2010, month: 2 });
|
|
2624
|
+
// Date: 2 February 2010
|
|
2625
|
+
```
|
|
2626
|
+
|
|
2627
|
+
Note that `month` here is 1-based (February is `2`), unlike in the `Date`
|
|
2628
|
+
constructor.
|
|
2629
|
+
|
|
2630
|
+
### `addToDate` / `subtractFromDate`
|
|
2631
|
+
|
|
2632
|
+
Add and subtract intervals. The object fields are the same, but they mean "how
|
|
2633
|
+
much to add" rather than "what to set":
|
|
2634
|
+
|
|
2635
|
+
```ts
|
|
2636
|
+
const { addToDate, subtractFromDate } = utils;
|
|
2637
|
+
|
|
2638
|
+
addToDate(new Date(2026, 2, 7), { day: 7, month: 1 }); // Date: 14 April 2026
|
|
2639
|
+
subtractFromDate(new Date(2026, 2, 7), { hour: 24 }); // Date: 6 March 2026
|
|
2640
|
+
```
|
|
2641
|
+
|
|
2642
|
+
### `startOfDate` / `endOfDate`
|
|
2643
|
+
|
|
2644
|
+
The start and the end of a period — year, month, day, hour, minute or second:
|
|
2645
|
+
|
|
2646
|
+
```ts
|
|
2647
|
+
const { startOfDate, endOfDate } = utils;
|
|
2648
|
+
|
|
2649
|
+
startOfDate(new Date(2026, 7, 18, 14, 30), 'year'); // Date: 1 January 2026, 00:00:00.000
|
|
2650
|
+
endOfDate(new Date(2026, 7, 18, 14, 30), 'month'); // Date: 31 August 2026, 23:59:59.999
|
|
2651
|
+
```
|
|
2652
|
+
|
|
2653
|
+
Period unit: `'year'`, `'month'`, `'day'`, `'hour'`, `'minute'`, `'second'`
|
|
2654
|
+
(the plural form is accepted too).
|
|
2655
|
+
|
|
2656
|
+
## Comparison and ranges
|
|
2657
|
+
|
|
2658
|
+
### `isSameDate`
|
|
2659
|
+
|
|
2660
|
+
Compares dates down to a unit: `'year'` — the year only, `'month'` — month and
|
|
2661
|
+
year, `'day'` — the calendar day, and so on. Without a unit, the timestamps are
|
|
2662
|
+
compared in full.
|
|
2663
|
+
|
|
2664
|
+
```ts
|
|
2665
|
+
const { isSameDate } = utils;
|
|
2666
|
+
|
|
2667
|
+
isSameDate(new Date(2026, 7, 1), new Date(2026, 7, 30), 'month'); // true
|
|
2668
|
+
isSameDate(new Date(2026, 7, 1), new Date(2026, 7, 30), 'day'); // false
|
|
2669
|
+
```
|
|
2670
|
+
|
|
2671
|
+
### `getDateDiff`
|
|
2672
|
+
|
|
2673
|
+
The difference between two dates in the chosen unit (days by default):
|
|
2674
|
+
|
|
2675
|
+
```ts
|
|
2676
|
+
const { getDateDiff } = utils;
|
|
2677
|
+
|
|
2678
|
+
getDateDiff(new Date(2026, 4, 12), new Date(2026, 3, 8)); // 34 (days)
|
|
2679
|
+
getDateDiff(new Date(2026, 4, 12), new Date(2026, 3, 8), 'months'); // 1
|
|
2680
|
+
```
|
|
2681
|
+
|
|
2682
|
+
### `isBetweenDates` / `getDateBetween`
|
|
2683
|
+
|
|
2684
|
+
`isBetweenDates(date, from, to, opts?)` checks whether a date falls inside a
|
|
2685
|
+
range. The bounds are excluded by default; the `inclusiveFrom` and `inclusiveTo`
|
|
2686
|
+
options include them, and `onlyDate: true` compares calendar days only, ignoring
|
|
2687
|
+
the time:
|
|
2688
|
+
|
|
2689
|
+
```ts
|
|
2690
|
+
const { isBetweenDates } = utils;
|
|
2691
|
+
|
|
2692
|
+
isBetweenDates(date, from, to); // strict range
|
|
2693
|
+
isBetweenDates(date, from, to, { inclusiveFrom: true, inclusiveTo: true, onlyDate: true });
|
|
2694
|
+
```
|
|
2695
|
+
|
|
2696
|
+
`getDateBetween(date, min, max)` clamps a date to a range: it returns the date
|
|
2697
|
+
itself if it is inside, otherwise the nearest bound:
|
|
2698
|
+
|
|
2699
|
+
```ts
|
|
2700
|
+
const { getDateBetween } = utils;
|
|
2701
|
+
|
|
2702
|
+
getDateBetween(new Date(2025, 0, 1), new Date(2026, 0, 1), new Date(2026, 11, 31));
|
|
2703
|
+
// Date: 1 January 2026 — the date is below the minimum, so the min bound came back
|
|
2704
|
+
```
|
|
2705
|
+
|
|
2706
|
+
### `getMinDate` / `getMaxDate`
|
|
2707
|
+
|
|
2708
|
+
The smallest and the largest of a set of dates. They return a timestamp (number) —
|
|
2709
|
+
wrap it in `new Date()` if you need a date object:
|
|
2710
|
+
|
|
2711
|
+
```ts
|
|
2712
|
+
const { getMinDate, getMaxDate } = utils;
|
|
2713
|
+
|
|
2714
|
+
const min = getMinDate(new Date(2026, 6, 24), new Date(2026, 5, 20), new Date(2026, 6, 26));
|
|
2715
|
+
new Date(min); // Date: 20 June 2026
|
|
2716
|
+
|
|
2717
|
+
const dates = [/* Date[] */];
|
|
2718
|
+
const max = getMaxDate(dates[0], ...dates.slice(1));
|
|
2719
|
+
```
|
|
2720
|
+
|
|
2721
|
+
## Calendar
|
|
2722
|
+
|
|
2723
|
+
```ts
|
|
2724
|
+
const { getDayOfWeek, getWeekOfYear, getDayOfYear, daysInMonth } = utils;
|
|
2725
|
+
|
|
2726
|
+
getDayOfWeek(new Date(2026, 7, 16)); // 7 — Sunday (ISO: 1 — Monday)
|
|
2727
|
+
getWeekOfYear(new Date(2026, 0, 4)); // 1 — ISO week number in the year
|
|
2728
|
+
getDayOfYear(new Date(2026, 1, 4)); // 35 — ordinal day in the year
|
|
2729
|
+
daysInMonth(new Date(2024, 1, 15)); // 29 — February of a leap year
|
|
2730
|
+
```
|
|
2731
|
+
|
|
2732
|
+
## Other
|
|
2733
|
+
|
|
2734
|
+
### `isValidDate`
|
|
2735
|
+
|
|
2736
|
+
Checks whether a value parses into a date:
|
|
2737
|
+
|
|
2738
|
+
```ts
|
|
2739
|
+
const { isValidDate } = utils;
|
|
2740
|
+
|
|
2741
|
+
isValidDate('2026-08-18'); // true
|
|
2742
|
+
isValidDate('не дата'); // false
|
|
2743
|
+
```
|
|
2744
|
+
|
|
2745
|
+
The check is syntactic — it does not catch non-existent calendar days
|
|
2746
|
+
(see `splitDate` above).
|
|
2747
|
+
|
|
2748
|
+
### `cloneDate`
|
|
2749
|
+
|
|
2750
|
+
A copy of a date. Useful before handing it to third-party code that might mutate
|
|
2751
|
+
the object (CDS utilities themselves never modify their arguments):
|
|
2752
|
+
|
|
2753
|
+
```ts
|
|
2754
|
+
const { cloneDate } = utils;
|
|
2755
|
+
|
|
2756
|
+
const copy = cloneDate(original);
|
|
2757
|
+
```
|
|
2758
|
+
|
|
2759
|
+
### `inferDateFormat`
|
|
2760
|
+
|
|
2761
|
+
Detects the shape of a value — handy for returning the result in the same form
|
|
2762
|
+
the value came in:
|
|
2763
|
+
|
|
2764
|
+
```ts
|
|
2765
|
+
const { inferDateFormat } = utils;
|
|
2766
|
+
|
|
2767
|
+
inferDateFormat(new Date()); // 'date'
|
|
2768
|
+
inferDateFormat(1787059805000); // 'number'
|
|
2769
|
+
inferDateFormat('18.08.2026'); // 'string'
|
|
2770
|
+
```
|