@central-design-system/components 2.33.0 → 3.0.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cds.css +1 -111
- package/dist/cds.d.ts +48 -0
- package/dist/cds.es.js +5454 -0
- package/dist/cds.umd.js +1 -0
- package/dist/components/CdsBadge/CdsBadge.vue.d.ts +32 -0
- package/dist/components/CdsButton/CdsButton.vue.d.ts +140 -0
- package/dist/components/CdsCheckbox/CdsCheckbox.vue.d.ts +222 -0
- package/dist/components/CdsCheckbox/CdsCheckboxGroup.vue.d.ts +205 -0
- package/dist/components/CdsDrawer/CdsDrawer.vue.d.ts +179 -0
- package/dist/components/CdsForm/CdsForm.vue.d.ts +99 -0
- package/dist/components/CdsGrid/CdsCol.vue.d.ts +73 -0
- package/dist/components/CdsGrid/CdsGrid.vue.d.ts +55 -0
- package/dist/components/CdsGrid/CdsRow.vue.d.ts +37 -0
- package/dist/components/CdsGrid/composable/column.d.ts +84 -0
- package/dist/components/CdsGrid/composable/grid.d.ts +24 -0
- package/dist/components/CdsGrid/composable/index.d.ts +4 -0
- package/dist/components/CdsGrid/composable/subgrid.d.ts +20 -0
- package/dist/components/CdsGrid/composable/wide.d.ts +12 -0
- package/dist/components/CdsGrid/mode/CSSGrid.d.ts +5 -0
- package/dist/components/CdsGrid/mode/FlexGrid.d.ts +5 -0
- package/dist/components/CdsGrid/types.d.ts +27 -0
- package/dist/components/CdsIcon/CdsIcon.vue.d.ts +44 -0
- package/dist/components/CdsIcon/index.d.ts +1 -0
- package/dist/components/CdsInput/CdsInput.vue.d.ts +219 -0
- package/dist/components/CdsInput/CdsInputCounter.vue.d.ts +39 -0
- package/dist/components/CdsInput/CdsInputDescription.vue.d.ts +26 -0
- package/dist/components/CdsInput/CdsInputLabel.vue.d.ts +32 -0
- package/dist/components/CdsInput/CdsInputMessages.vue.d.ts +221 -0
- package/dist/components/CdsInput/index.d.ts +5 -0
- package/dist/components/CdsLink/CdsLink.vue.d.ts +50 -0
- package/dist/components/CdsList/CdsList.vue.d.ts +158 -0
- package/dist/components/CdsList/CdsListGroup.vue.d.ts +125 -0
- package/dist/components/CdsList/CdsListItem.vue.d.ts +178 -0
- package/dist/components/CdsList/composable/depth.d.ts +3 -0
- package/dist/components/CdsList/composable/focus.d.ts +12 -0
- package/dist/components/CdsList/composable/index.d.ts +3 -0
- package/dist/components/CdsList/composable/list.d.ts +19 -0
- package/dist/components/CdsList/index.d.ts +3 -0
- package/dist/components/CdsLoader/CdsLoader.vue.d.ts +62 -0
- package/dist/components/CdsLoader/index.d.ts +1 -0
- package/dist/components/CdsMenu/CdsMenu.vue.d.ts +592 -0
- package/dist/components/CdsMenu/shared.d.ts +10 -0
- package/dist/components/CdsOverlay/CdsOverlay.vue.d.ts +324 -0
- package/dist/components/CdsOverlay/composable/activator.d.ts +81 -0
- package/dist/components/CdsOverlay/composable/index.d.ts +6 -0
- package/dist/components/CdsOverlay/composable/locationStrategies.d.ts +75 -0
- package/dist/components/CdsOverlay/composable/scrim.d.ts +8 -0
- package/dist/components/CdsOverlay/composable/scrollStrategies.d.ts +33 -0
- package/dist/components/CdsOverlay/composable/stack.d.ts +9 -0
- package/dist/components/CdsOverlay/composable/teleport.d.ts +6 -0
- package/dist/components/CdsOverlay/utils/index.d.ts +2 -0
- package/dist/components/CdsOverlay/utils/point.d.ts +20 -0
- package/dist/components/CdsOverlay/utils/requestNewFrame.d.ts +5 -0
- package/dist/components/CdsRadioButton/CdsRadio.vue.d.ts +201 -0
- package/dist/components/CdsRadioButton/CdsRadioButton.vue.d.ts +200 -0
- package/dist/components/CdsSelect/CdsSelect.vue.d.ts +664 -0
- package/dist/components/CdsSidebar/CdsSidebar.vue.d.ts +61 -0
- package/dist/components/CdsStages/CdsStages.vue.d.ts +102 -0
- package/dist/components/CdsStatus/CdsStatus.vue.d.ts +46 -0
- package/dist/components/CdsTag/CdsTag.vue.d.ts +96 -0
- package/dist/components/CdsTextArea/CdsTextArea.vue.d.ts +681 -0
- package/dist/components/CdsTextInput/CdsTextInput.vue.d.ts +600 -0
- package/dist/components/index.d.ts +35 -0
- package/dist/composable/appearance.d.ts +24 -0
- package/dist/composable/color.d.ts +21 -0
- package/dist/composable/dark.d.ts +19 -0
- package/dist/composable/delay.d.ts +29 -0
- package/dist/composable/dimensions.d.ts +47 -0
- package/dist/composable/direction.d.ts +24 -0
- package/dist/composable/disabled.d.ts +19 -0
- package/dist/composable/field.d.ts +138 -0
- package/dist/composable/focus.d.ts +22 -0
- package/dist/composable/form.d.ts +126 -0
- package/dist/composable/hidration.d.ts +1 -0
- package/dist/composable/icon.d.ts +57 -0
- package/dist/composable/index.d.ts +29 -0
- package/dist/composable/input.d.ts +97 -0
- package/dist/composable/items.d.ts +79 -0
- package/dist/composable/lazy.d.ts +11 -0
- package/dist/composable/link.d.ts +35 -0
- package/dist/composable/loading.d.ts +20 -0
- package/dist/composable/nested/nested.d.ts +85 -0
- package/dist/composable/nested/openStrategies.d.ts +25 -0
- package/dist/composable/nested/selectStrategies.d.ts +21 -0
- package/dist/composable/overlay.d.ts +99 -0
- package/dist/composable/proxyModel.d.ts +8 -0
- package/dist/composable/render.d.ts +2 -0
- package/dist/composable/scopeId.d.ts +5 -0
- package/dist/composable/size.d.ts +24 -0
- package/dist/composable/status.d.ts +21 -0
- package/dist/composable/tag.d.ts +16 -0
- package/dist/composable/text.d.ts +17 -0
- package/dist/composable/toggleScope.d.ts +2 -0
- package/dist/composable/transition.d.ts +22 -0
- package/dist/composable/validation.d.ts +136 -0
- package/dist/directives/click-outside/index.d.ts +14 -0
- package/dist/directives/index.d.ts +1 -0
- package/dist/globals.d.ts +16 -0
- package/dist/plugins/index.d.ts +2 -0
- package/dist/shims-vue.d.ts +24 -0
- package/dist/transitions/createTransition.d.ts +38 -0
- package/dist/transitions/expandTransition.d.ts +19 -0
- package/dist/transitions/index.d.ts +104 -0
- package/dist/types/CdsOptions.d.ts +3 -0
- package/dist/utils/anchor.d.ts +23 -0
- package/dist/utils/animation.d.ts +6 -0
- package/dist/utils/box.d.ts +26 -0
- package/dist/utils/changeCase/lowerCase.d.ts +8 -0
- package/dist/utils/changeCase/noCase.d.ts +10 -0
- package/dist/utils/changeCase/paramCase.d.ts +3 -0
- package/dist/utils/changeCase/pascalCase.d.ts +5 -0
- package/dist/utils/dom.d.ts +6 -0
- package/dist/utils/getCurrentInstance.d.ts +13 -0
- package/dist/utils/getScrollParent.d.ts +3 -0
- package/dist/utils/globals.d.ts +4 -0
- package/dist/utils/helpers.d.ts +73 -0
- package/dist/utils/index.d.ts +13 -0
- package/dist/utils/propsFactory.d.ts +52 -0
- package/nuxt.js +13 -0
- package/package.json +37 -80
- package/src/scss/index.scss +10 -0
- package/{dist/mixins/scss → src/scss/mixins}/layout/_convert.scss +4 -2
- package/src/scss/mixins/layout/_shadow.scss +4 -0
- package/src/scss/mixins/layout/exports/_mini-unit.module.scss +5 -0
- package/src/scss/mixins/layout/exports/_spacing-all.module.scss +3 -0
- package/src/scss/mixins/layout/exports/_spacing-fluid.module.scss +8 -0
- package/src/scss/mixins/layout/exports/_spacing-layout.module.scss +11 -0
- package/src/scss/mixins/layout/exports/_spacing.module.scss +16 -0
- package/{dist/mixins/scss → src/scss/mixins}/layout/index.scss +1 -2
- package/{dist/mixins/scss → src/scss/mixins}/typo.scss +0 -67
- package/src/scss/modules/_reset.scss +113 -0
- package/src/scss/modules/_transition.scss +54 -0
- package/src/scss/modules/_typography.scss +36 -0
- package/src/scss/modules/_variables.scss +9 -0
- package/src/scss/modules/grid/_aspect-ratio.scss +62 -0
- package/src/scss/modules/grid/_breakpoint.scss +195 -0
- package/src/scss/modules/grid/_config.scss +88 -0
- package/src/scss/modules/grid/_css-grid.scss +445 -0
- package/src/scss/modules/grid/_flex-grid.scss +39 -0
- package/src/scss/modules/grid/_mixins.scss +307 -0
- package/src/scss/modules/grid/exports/_config.module.scss +9 -0
- package/src/scss/modules/grid/index.scss +5 -0
- package/src/scss/themes/b2b/tokens-map.scss +139 -0
- package/src/scss/themes/b2b/tokens.json +2190 -0
- package/src/scss/themes/cds/tokens-map.scss +138 -0
- package/src/scss/themes/cds/tokens.json +2184 -0
- package/{dist/tokens → src/scss/themes}/cds/variables.css +0 -3
- package/src/scss/themes/index.ts +43 -0
- package/src/scss/utility/display.scss +13 -0
- package/src/scss/utility/flexbox.scss +37 -0
- package/src/scss/utility/generatedFiles/generatedStyles.json +1 -0
- package/src/scss/utility/generatedFiles/generatedStyles.scss +300 -0
- package/src/scss/utility/index.scss +7 -0
- package/src/scss/utility/layout.scss +11 -0
- package/src/scss/utility/lists.scss +76 -0
- package/src/scss/utility/spacing.scss +89 -0
- package/src/scss/utility/typography.scss +16 -0
- package/src/scss/utility/variables.scss +116 -0
- package/README.md +0 -87
- package/build/utils/postInstall.js +0 -20
- package/build/utils/print.js +0 -38
- package/dist/CdsAccordion/index.js +0 -8
- package/dist/CdsAccordion/styles.css +0 -11
- package/dist/CdsBadge/index.js +0 -8
- package/dist/CdsBadge/styles.css +0 -9
- package/dist/CdsBreadcrumbs/index.js +0 -8
- package/dist/CdsBreadcrumbs/styles.css +0 -11
- package/dist/CdsButton/index.js +0 -8
- package/dist/CdsButton/styles.css +0 -11
- package/dist/CdsCheckbox/index.js +0 -8
- package/dist/CdsCheckbox/styles.css +0 -15
- package/dist/CdsCombobox/index.js +0 -8
- package/dist/CdsCombobox/styles.css +0 -15
- package/dist/CdsContainer/index.js +0 -8
- package/dist/CdsContainer/styles.css +0 -11
- package/dist/CdsContentSwitcher/index.js +0 -8
- package/dist/CdsContentSwitcher/styles.css +0 -15
- package/dist/CdsDataTable/index.js +0 -8
- package/dist/CdsDataTable/styles.css +0 -21
- package/dist/CdsDatePicker/index.js +0 -24
- package/dist/CdsDatePicker/styles.css +0 -15
- package/dist/CdsDrawer/index.js +0 -8
- package/dist/CdsDrawer/styles.css +0 -17
- package/dist/CdsDropdown/index.js +0 -8
- package/dist/CdsDropdown/styles.css +0 -15
- package/dist/CdsEmptyState/index.js +0 -8
- package/dist/CdsEmptyState/styles.css +0 -9
- package/dist/CdsFooter/index.js +0 -8
- package/dist/CdsFooter/styles.css +0 -17
- package/dist/CdsForm/index.js +0 -8
- package/dist/CdsForm/styles.css +0 -15
- package/dist/CdsGrid/index.js +0 -8
- package/dist/CdsGrid/styles.css +0 -9
- package/dist/CdsHeader/index.js +0 -8
- package/dist/CdsHeader/styles.css +0 -11
- package/dist/CdsIcon/index.js +0 -8
- package/dist/CdsIcon/styles.css +0 -9
- package/dist/CdsImage/index.js +0 -8
- package/dist/CdsImage/styles.css +0 -9
- package/dist/CdsInput/index.js +0 -8
- package/dist/CdsInput/styles.css +0 -13
- package/dist/CdsLink/index.js +0 -8
- package/dist/CdsLink/styles.css +0 -9
- package/dist/CdsList/index.js +0 -8
- package/dist/CdsList/styles.css +0 -9
- package/dist/CdsLoading/index.js +0 -8
- package/dist/CdsLoading/styles.css +0 -9
- package/dist/CdsModal/index.js +0 -8
- package/dist/CdsModal/styles.css +0 -15
- package/dist/CdsMultiselect/index.js +0 -8
- package/dist/CdsMultiselect/styles.css +0 -17
- package/dist/CdsNotification/index.js +0 -8
- package/dist/CdsNotification/styles.css +0 -21
- package/dist/CdsOverflowMenu/index.js +0 -8
- package/dist/CdsOverflowMenu/styles.css +0 -21
- package/dist/CdsPagination/index.js +0 -8
- package/dist/CdsPagination/styles.css +0 -13
- package/dist/CdsRadioButton/index.js +0 -8
- package/dist/CdsRadioButton/styles.css +0 -15
- package/dist/CdsSearch/index.js +0 -8
- package/dist/CdsSearch/styles.css +0 -19
- package/dist/CdsSelect/index.js +0 -8
- package/dist/CdsSelect/styles.css +0 -15
- package/dist/CdsSidebar/index.js +0 -8
- package/dist/CdsSidebar/styles.css +0 -15
- package/dist/CdsSkeleton/index.js +0 -8
- package/dist/CdsSkeleton/styles.css +0 -9
- package/dist/CdsStages/index.js +0 -8
- package/dist/CdsStages/styles.css +0 -9
- package/dist/CdsStatus/index.js +0 -8
- package/dist/CdsStatus/styles.css +0 -15
- package/dist/CdsSteps/index.js +0 -8
- package/dist/CdsSteps/styles.css +0 -19
- package/dist/CdsTable/index.js +0 -16
- package/dist/CdsTable/styles.css +0 -21
- package/dist/CdsTabs/index.js +0 -8
- package/dist/CdsTabs/styles.css +0 -9
- package/dist/CdsTag/index.js +0 -8
- package/dist/CdsTag/styles.css +0 -11
- package/dist/CdsTextArea/index.js +0 -8
- package/dist/CdsTextArea/styles.css +0 -17
- package/dist/CdsTextInput/index.js +0 -8
- package/dist/CdsTextInput/styles.css +0 -15
- package/dist/CdsToggle/index.js +0 -8
- package/dist/CdsToggle/styles.css +0 -9
- package/dist/CdsTooltip/index.js +0 -8
- package/dist/CdsTooltip/styles.css +0 -13
- package/dist/CdsUploader/index.js +0 -14
- package/dist/CdsUploader/styles.css +0 -25
- package/dist/cds.js +0 -38
- package/dist/cds.min.css +0 -7
- package/dist/cds.min.js +0 -38
- package/dist/index.html +0 -60
- package/dist/mixins/scss/layout/_breakpoint.scss +0 -237
- package/dist/mixins/scss/layout/_key-height.scss +0 -90
- package/dist/mixins/scss/layout/_spacing-export.scss +0 -34
- package/dist/mixins/scss/layout/_utilities.scss +0 -33
- package/dist/types/CdsAccordion.ts +0 -4
- package/dist/types/CdsAccordionItem.ts +0 -10
- package/dist/types/CdsBreadcrumbs.ts +0 -11
- package/dist/types/CdsBreadcrumbsItem.ts +0 -12
- package/dist/types/CdsButton.ts +0 -30
- package/dist/types/CdsCheckbox.ts +0 -20
- package/dist/types/CdsCheckboxGroup.ts +0 -14
- package/dist/types/CdsCol.ts +0 -38
- package/dist/types/CdsCombobox.ts +0 -42
- package/dist/types/CdsContainer.ts +0 -32
- package/dist/types/CdsContentSwitcher.ts +0 -4
- package/dist/types/CdsContentSwitcherButton.ts +0 -21
- package/dist/types/CdsDataTable.ts +0 -48
- package/dist/types/CdsDatePicker.ts +0 -40
- package/dist/types/CdsDrawer.ts +0 -25
- package/dist/types/CdsDrawerGroup.ts +0 -8
- package/dist/types/CdsDrawerItem.ts +0 -12
- package/dist/types/CdsDrawerLabel.ts +0 -4
- package/dist/types/CdsDropdown.ts +0 -14
- package/dist/types/CdsEmptyState.ts +0 -10
- package/dist/types/CdsFooter.ts +0 -17
- package/dist/types/CdsFooterService.ts +0 -16
- package/dist/types/CdsForm.ts +0 -4
- package/dist/types/CdsFormGroup.ts +0 -8
- package/dist/types/CdsFormItem.ts +0 -4
- package/dist/types/CdsGrid.ts +0 -16
- package/dist/types/CdsHeader.ts +0 -27
- package/dist/types/CdsHeaderService.ts +0 -4
- package/dist/types/CdsIcon.ts +0 -6
- package/dist/types/CdsLink.ts +0 -22
- package/dist/types/CdsList.ts +0 -6
- package/dist/types/CdsLoading.ts +0 -14
- package/dist/types/CdsModal.ts +0 -17
- package/dist/types/CdsMultiselect.ts +0 -33
- package/dist/types/CdsNotification.ts +0 -22
- package/dist/types/CdsOverflowMenu.ts +0 -16
- package/dist/types/CdsPagination.ts +0 -12
- package/dist/types/CdsRadioButton.ts +0 -29
- package/dist/types/CdsRow.ts +0 -18
- package/dist/types/CdsSearch.ts +0 -24
- package/dist/types/CdsSelect.ts +0 -37
- package/dist/types/CdsSkeleton.ts +0 -14
- package/dist/types/CdsStages.ts +0 -10
- package/dist/types/CdsStatus.ts +0 -22
- package/dist/types/CdsSteps.ts +0 -22
- package/dist/types/CdsStepsItem.ts +0 -12
- package/dist/types/CdsTable.ts +0 -46
- package/dist/types/CdsTabs.ts +0 -19
- package/dist/types/CdsTabsItem.ts +0 -18
- package/dist/types/CdsTag.ts +0 -20
- package/dist/types/CdsTextArea.ts +0 -26
- package/dist/types/CdsTextInput.ts +0 -32
- package/dist/types/CdsToggle.ts +0 -18
- package/dist/types/CdsTooltip.ts +0 -18
- package/dist/types/CdsTooltipDefinition.ts +0 -16
- package/dist/types/CdsTooltipInteractive.ts +0 -11
- package/dist/types/CdsUploader.ts +0 -44
- package/dist/types/Sidebar.ts +0 -17
- package/dist/types/types.ts +0 -2
- package/dist/utils/convertRemToPx.js +0 -9
- package/dist/utils/deepFind.js +0 -14
- package/dist/utils/expiringStorage.js +0 -28
- package/dist/utils/helpers.js +0 -33
- package/dist/utils/index.js +0 -1
- package/dist/utils/isCorrectTag.js +0 -5
- package/dist/utils/isRightProps.js +0 -5
- package/dist/utils/memoize.js +0 -8
- package/dist/utils/suffixPropName.js +0 -12
- package/dist/utils/test/deepFind.test.js +0 -18
- package/dist/utils/test/isCorrectTag.test.js +0 -9
- package/dist/utils/test/isCorrectTagDataSet.js +0 -51
- package/dist/utils/validationProps.js +0 -7
- /package/{dist/mixins/scss → src/scss/mixins}/layout/_layout.scss +0 -0
- /package/{dist/mixins/scss → src/scss/mixins}/layout/_mini-unit.scss +0 -0
- /package/{dist/mixins/scss → src/scss/mixins}/layout/_spacing.scss +0 -0
- /package/{dist/mixins/scss → src/scss/mixins}/motion.scss +0 -0
- /package/{dist/tokens → src/scss/themes}/b2b/variables.css +0 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Automatically generated by CDS CLI
|
|
3
|
+
* Generated on 4/24/2023, 2:59:08 PM
|
|
4
|
+
**/
|
|
5
|
+
export { default as CdsBadge } from './CdsBadge/CdsBadge.vue';
|
|
6
|
+
export { default as CdsButton } from './CdsButton/CdsButton.vue';
|
|
7
|
+
export { default as CdsCheckbox } from './CdsCheckbox/CdsCheckbox.vue';
|
|
8
|
+
export { default as CdsCheckboxGroup } from './CdsCheckbox/CdsCheckboxGroup.vue';
|
|
9
|
+
export { default as CdsDrawer } from './CdsDrawer/CdsDrawer.vue';
|
|
10
|
+
export { default as CdsForm } from './CdsForm/CdsForm.vue';
|
|
11
|
+
export { default as CdsCol } from './CdsGrid/CdsCol.vue';
|
|
12
|
+
export { default as CdsGrid } from './CdsGrid/CdsGrid.vue';
|
|
13
|
+
export { default as CdsRow } from './CdsGrid/CdsRow.vue';
|
|
14
|
+
export { default as CdsIcon } from './CdsIcon/CdsIcon.vue';
|
|
15
|
+
export { default as CdsInput } from './CdsInput/CdsInput.vue';
|
|
16
|
+
export { default as CdsInputCounter } from './CdsInput/CdsInputCounter.vue';
|
|
17
|
+
export { default as CdsInputDescription } from './CdsInput/CdsInputDescription.vue';
|
|
18
|
+
export { default as CdsInputLabel } from './CdsInput/CdsInputLabel.vue';
|
|
19
|
+
export { default as CdsInputMessages } from './CdsInput/CdsInputMessages.vue';
|
|
20
|
+
export { default as CdsLink } from './CdsLink/CdsLink.vue';
|
|
21
|
+
export { default as CdsList } from './CdsList/CdsList.vue';
|
|
22
|
+
export { default as CdsListGroup } from './CdsList/CdsListGroup.vue';
|
|
23
|
+
export { default as CdsListItem } from './CdsList/CdsListItem.vue';
|
|
24
|
+
export { default as CdsLoader } from './CdsLoader/CdsLoader.vue';
|
|
25
|
+
export { default as CdsMenu } from './CdsMenu/CdsMenu.vue';
|
|
26
|
+
export { default as CdsOverlay } from './CdsOverlay/CdsOverlay.vue';
|
|
27
|
+
export { default as CdsRadio } from './CdsRadioButton/CdsRadio.vue';
|
|
28
|
+
export { default as CdsRadioButton } from './CdsRadioButton/CdsRadioButton.vue';
|
|
29
|
+
export { default as CdsSelect } from './CdsSelect/CdsSelect.vue';
|
|
30
|
+
export { default as CdsSidebar } from './CdsSidebar/CdsSidebar.vue';
|
|
31
|
+
export { default as CdsStages } from './CdsStages/CdsStages.vue';
|
|
32
|
+
export { default as CdsStatus } from './CdsStatus/CdsStatus.vue';
|
|
33
|
+
export { default as CdsTag } from './CdsTag/CdsTag.vue';
|
|
34
|
+
export { default as CdsTextArea } from './CdsTextArea/CdsTextArea.vue';
|
|
35
|
+
export { default as CdsTextInput } from './CdsTextInput/CdsTextInput.vue';
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { ComputedRef, PropType } from 'vue';
|
|
2
|
+
import type { MaybeRef } from '../utils';
|
|
3
|
+
export declare type TAppearance = typeof allowedAppearance[number];
|
|
4
|
+
export interface IAppearanceProps {
|
|
5
|
+
appearance: TAppearance;
|
|
6
|
+
}
|
|
7
|
+
export interface IUseAppearance {
|
|
8
|
+
appearanceClasses: ComputedRef<string>;
|
|
9
|
+
}
|
|
10
|
+
export declare const allowedAppearance: readonly ["primary", "secondary", "transparent"];
|
|
11
|
+
export declare const makeAppearanceProps: <Defaults extends {
|
|
12
|
+
appearance?: unknown;
|
|
13
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
14
|
+
/**
|
|
15
|
+
* Внешний вид
|
|
16
|
+
*/
|
|
17
|
+
appearance: {
|
|
18
|
+
type: PropType<"primary" | "secondary" | "transparent">;
|
|
19
|
+
default: string;
|
|
20
|
+
available: readonly ["primary", "secondary", "transparent"];
|
|
21
|
+
validator: (value: TAppearance) => boolean;
|
|
22
|
+
};
|
|
23
|
+
}, Defaults>;
|
|
24
|
+
export declare function useAppearance(props: MaybeRef<IAppearanceProps>, name: string): IUseAppearance;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ComputedRef, PropType } from 'vue';
|
|
2
|
+
export declare type TColor = typeof allowedColor[number];
|
|
3
|
+
export declare type IColorProps = {
|
|
4
|
+
color: TColor | undefined;
|
|
5
|
+
};
|
|
6
|
+
export interface IUseColor {
|
|
7
|
+
colorClasses: ComputedRef<string | undefined>;
|
|
8
|
+
}
|
|
9
|
+
export declare const allowedColor: readonly ["yellow", "light-blue", "blue", "deep-purple", "purple", "pink"];
|
|
10
|
+
export declare const makeColorProps: <Defaults extends {
|
|
11
|
+
color?: unknown;
|
|
12
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
13
|
+
color: {
|
|
14
|
+
type: PropType<"yellow" | "light-blue" | "blue" | "deep-purple" | "purple" | "pink">;
|
|
15
|
+
available: readonly ["yellow", "light-blue", "blue", "deep-purple", "purple", "pink"];
|
|
16
|
+
default: undefined;
|
|
17
|
+
description: string;
|
|
18
|
+
validator: (value: TColor) => boolean;
|
|
19
|
+
};
|
|
20
|
+
}, Defaults>;
|
|
21
|
+
export declare function useColor(props: IColorProps, name: string): IUseColor;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ComputedRef, PropType } from 'vue';
|
|
2
|
+
export interface IDarkProps {
|
|
3
|
+
dark: boolean;
|
|
4
|
+
}
|
|
5
|
+
export interface IUseDark {
|
|
6
|
+
darkClasses: ComputedRef<string | undefined>;
|
|
7
|
+
}
|
|
8
|
+
export declare const makeDarkProps: <Defaults extends {
|
|
9
|
+
dark?: unknown;
|
|
10
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
11
|
+
/**
|
|
12
|
+
* Темная тема
|
|
13
|
+
*/
|
|
14
|
+
dark: {
|
|
15
|
+
type: PropType<boolean>;
|
|
16
|
+
default: boolean;
|
|
17
|
+
};
|
|
18
|
+
}, Defaults>;
|
|
19
|
+
export declare function useDark(props: IDarkProps, name: string): IUseDark;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { PropType } from 'vue';
|
|
2
|
+
export interface IDelayProps {
|
|
3
|
+
closeDelay: number | string;
|
|
4
|
+
openDelay: number | string;
|
|
5
|
+
}
|
|
6
|
+
export interface IUseDelay {
|
|
7
|
+
runCloseDelay: () => void;
|
|
8
|
+
runOpenDelay: () => void;
|
|
9
|
+
}
|
|
10
|
+
export declare const makeDelayProps: <Defaults extends {
|
|
11
|
+
closeDelay?: unknown;
|
|
12
|
+
openDelay?: unknown;
|
|
13
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
14
|
+
/**
|
|
15
|
+
* Задержка в миллисекундах перед закрытием оверлея. Только для события hover и focus.
|
|
16
|
+
*/
|
|
17
|
+
closeDelay: {
|
|
18
|
+
type: PropType<string | number>;
|
|
19
|
+
default: null;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Задержка в миллисекундах перед открытием оверлея. Только для события hover и focus.
|
|
23
|
+
*/
|
|
24
|
+
openDelay: {
|
|
25
|
+
type: PropType<string | number>;
|
|
26
|
+
default: null;
|
|
27
|
+
};
|
|
28
|
+
}, Defaults>;
|
|
29
|
+
export declare function useDelay(props: IDelayProps, cb?: (value: boolean) => void): IUseDelay;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { ComputedRef } from 'vue';
|
|
2
|
+
import type { PropType } from 'vue';
|
|
3
|
+
export interface IDimensionsProps {
|
|
4
|
+
height: number | string;
|
|
5
|
+
maxHeight: number | string;
|
|
6
|
+
maxWidth: number | string;
|
|
7
|
+
minHeight: number | string;
|
|
8
|
+
minWidth: number | string;
|
|
9
|
+
width: number | string;
|
|
10
|
+
}
|
|
11
|
+
export interface IUseDimensions {
|
|
12
|
+
dimensionsStyles: ComputedRef<Record<string, any>>;
|
|
13
|
+
}
|
|
14
|
+
export declare const makeDimensionProps: <Defaults extends {
|
|
15
|
+
height?: unknown;
|
|
16
|
+
maxHeight?: unknown;
|
|
17
|
+
maxWidth?: unknown;
|
|
18
|
+
minHeight?: unknown;
|
|
19
|
+
minWidth?: unknown;
|
|
20
|
+
width?: unknown;
|
|
21
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
22
|
+
height: {
|
|
23
|
+
type: PropType<string | number>;
|
|
24
|
+
default: string;
|
|
25
|
+
};
|
|
26
|
+
maxHeight: {
|
|
27
|
+
type: PropType<string | number>;
|
|
28
|
+
default: string;
|
|
29
|
+
};
|
|
30
|
+
maxWidth: {
|
|
31
|
+
type: PropType<string | number>;
|
|
32
|
+
default: string;
|
|
33
|
+
};
|
|
34
|
+
minHeight: {
|
|
35
|
+
type: PropType<string | number>;
|
|
36
|
+
default: string;
|
|
37
|
+
};
|
|
38
|
+
minWidth: {
|
|
39
|
+
type: PropType<string | number>;
|
|
40
|
+
default: string;
|
|
41
|
+
};
|
|
42
|
+
width: {
|
|
43
|
+
type: PropType<string | number>;
|
|
44
|
+
default: string;
|
|
45
|
+
};
|
|
46
|
+
}, Defaults>;
|
|
47
|
+
export declare function useDimensions(props: IDimensionsProps): IUseDimensions;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { ComputedRef, PropType } from 'vue';
|
|
2
|
+
import type { MaybeRef } from '../utils';
|
|
3
|
+
export declare type TDirection = typeof allowedDirection[number];
|
|
4
|
+
export interface IDirectionProps {
|
|
5
|
+
direction: TDirection;
|
|
6
|
+
}
|
|
7
|
+
export interface IUseDirection {
|
|
8
|
+
directionClasses: ComputedRef<string>;
|
|
9
|
+
}
|
|
10
|
+
export declare const allowedDirection: readonly ["horizontal", "vertical"];
|
|
11
|
+
export declare const makeDirectionProps: <Defaults extends {
|
|
12
|
+
direction?: unknown;
|
|
13
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
14
|
+
/**
|
|
15
|
+
* Расположение горизонтальное или вертикальное
|
|
16
|
+
*/
|
|
17
|
+
direction: {
|
|
18
|
+
type: PropType<"horizontal" | "vertical">;
|
|
19
|
+
default: string;
|
|
20
|
+
available: readonly ["horizontal", "vertical"];
|
|
21
|
+
validator: (value: TDirection) => boolean;
|
|
22
|
+
};
|
|
23
|
+
}, Defaults>;
|
|
24
|
+
export declare function useDirection(props: MaybeRef<IDirectionProps>, name: string): IUseDirection;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ComputedRef, PropType } from 'vue';
|
|
2
|
+
export interface IDisabledProps {
|
|
3
|
+
disabled: boolean;
|
|
4
|
+
}
|
|
5
|
+
export interface IUseDisabled {
|
|
6
|
+
disabledClasses: ComputedRef<string | undefined>;
|
|
7
|
+
}
|
|
8
|
+
export declare const makeDisabledProps: <Defaults extends {
|
|
9
|
+
disabled?: unknown;
|
|
10
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
11
|
+
/**
|
|
12
|
+
* Заблокированное состояние
|
|
13
|
+
*/
|
|
14
|
+
disabled: {
|
|
15
|
+
type: PropType<boolean>;
|
|
16
|
+
default: boolean;
|
|
17
|
+
};
|
|
18
|
+
}, Defaults>;
|
|
19
|
+
export declare function useDisabled(props: IDisabledProps): IUseDisabled;
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import type { ComputedRef, PropType } from 'vue';
|
|
2
|
+
import type { EventProp } from '../utils';
|
|
3
|
+
import type { TCdsIconsName } from '@central-design-system/icons';
|
|
4
|
+
export declare type TFieldTypes = typeof allowedFieldType[number];
|
|
5
|
+
export interface IFieldProps {
|
|
6
|
+
active: boolean;
|
|
7
|
+
autofocus: boolean;
|
|
8
|
+
prefix: string | undefined;
|
|
9
|
+
suffix: string | undefined;
|
|
10
|
+
prependInnerIcon: TCdsIconsName | undefined;
|
|
11
|
+
appendInnerIcon: TCdsIconsName | undefined;
|
|
12
|
+
type: TFieldTypes | undefined;
|
|
13
|
+
placeholder: string | undefined;
|
|
14
|
+
counter: boolean;
|
|
15
|
+
clearable: boolean;
|
|
16
|
+
'onClick:appendInner': EventProp | undefined;
|
|
17
|
+
'onClick:prependInner': EventProp | undefined;
|
|
18
|
+
}
|
|
19
|
+
export interface IUseField {
|
|
20
|
+
hasPrependInnerIcon: ComputedRef<boolean>;
|
|
21
|
+
hasAppendInnerIcon: ComputedRef<boolean>;
|
|
22
|
+
fieldClasses: ComputedRef<Record<string, boolean>>;
|
|
23
|
+
fieldProps: string[];
|
|
24
|
+
handleClickPrependInner: (event: MouseEvent) => void;
|
|
25
|
+
handleClickAppendInner: (event: MouseEvent) => void;
|
|
26
|
+
}
|
|
27
|
+
export declare const allowedFieldType: readonly ["text", "password", "email", "number", "tel", "url"];
|
|
28
|
+
export declare const makeFieldProps: <Defaults extends {
|
|
29
|
+
active?: unknown;
|
|
30
|
+
autofocus?: unknown;
|
|
31
|
+
prefix?: unknown;
|
|
32
|
+
suffix?: unknown;
|
|
33
|
+
prependInnerIcon?: unknown;
|
|
34
|
+
appendInnerIcon?: unknown;
|
|
35
|
+
type?: unknown;
|
|
36
|
+
placeholder?: unknown;
|
|
37
|
+
counter?: unknown;
|
|
38
|
+
limit?: unknown;
|
|
39
|
+
clearable?: unknown;
|
|
40
|
+
'onClick:prependInner'?: unknown;
|
|
41
|
+
'onClick:appendInner'?: unknown;
|
|
42
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
43
|
+
/**
|
|
44
|
+
* Активный элемент
|
|
45
|
+
*/
|
|
46
|
+
active: {
|
|
47
|
+
type: PropType<boolean>;
|
|
48
|
+
default: boolean;
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Автофокус
|
|
52
|
+
*/
|
|
53
|
+
autofocus: {
|
|
54
|
+
type: PropType<boolean>;
|
|
55
|
+
default: boolean;
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* Добавить строку внутрь поля перед значением
|
|
59
|
+
*/
|
|
60
|
+
prefix: {
|
|
61
|
+
type: PropType<string>;
|
|
62
|
+
default: undefined;
|
|
63
|
+
};
|
|
64
|
+
/**
|
|
65
|
+
* Добавить строку внутрь поля после значения
|
|
66
|
+
*/
|
|
67
|
+
suffix: {
|
|
68
|
+
type: PropType<string>;
|
|
69
|
+
default: undefined;
|
|
70
|
+
};
|
|
71
|
+
/**
|
|
72
|
+
* Иконка внутри элемента перед значением поля
|
|
73
|
+
*/
|
|
74
|
+
prependInnerIcon: {
|
|
75
|
+
type: PropType<"add" | "alert-fill" | "alert" | "analog" | "arrow-down" | "arrow-left-bottom" | "arrow-left-top" | "arrow-left" | "arrow-right-bottom" | "arrow-right-top" | "arrow-right" | "arrow-up" | "arrows-vertical" | "calendar" | "card-bank" | "category" | "check-fill" | "check" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chocolate-menu" | "clock" | "comment" | "company" | "compare" | "copy" | "data-cards" | "delete" | "directory" | "doc-download" | "doc" | "download" | "draggable" | "edit" | "enter" | "error-fill" | "error" | "external" | "facebook-fill" | "facebook" | "filters" | "flag" | "globe" | "infinity" | "info-fill" | "info" | "link" | "list-search" | "list" | "loader" | "location" | "locked" | "login" | "logout" | "menu" | "minus" | "notification" | "overflow-menu-horizontal" | "overflow-menu-vertical" | "password" | "pin" | "plus" | "printer" | "question-fill" | "question" | "refresh" | "remove" | "sandglass" | "save" | "search" | "settings" | "shopping-cart" | "sort-date" | "star-fill" | "star" | "telegram" | "timer" | "tool" | "truck" | "unlocked" | "upload" | "user-avatar" | "user-group" | "visibility-off" | "visibility-on" | "vk" | "winner" | "workspace" | "youtube">;
|
|
76
|
+
default: undefined;
|
|
77
|
+
validator: (value: TCdsIconsName) => boolean;
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* Иконка внутри элемента после значения поля
|
|
81
|
+
*/
|
|
82
|
+
appendInnerIcon: {
|
|
83
|
+
type: PropType<"add" | "alert-fill" | "alert" | "analog" | "arrow-down" | "arrow-left-bottom" | "arrow-left-top" | "arrow-left" | "arrow-right-bottom" | "arrow-right-top" | "arrow-right" | "arrow-up" | "arrows-vertical" | "calendar" | "card-bank" | "category" | "check-fill" | "check" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chocolate-menu" | "clock" | "comment" | "company" | "compare" | "copy" | "data-cards" | "delete" | "directory" | "doc-download" | "doc" | "download" | "draggable" | "edit" | "enter" | "error-fill" | "error" | "external" | "facebook-fill" | "facebook" | "filters" | "flag" | "globe" | "infinity" | "info-fill" | "info" | "link" | "list-search" | "list" | "loader" | "location" | "locked" | "login" | "logout" | "menu" | "minus" | "notification" | "overflow-menu-horizontal" | "overflow-menu-vertical" | "password" | "pin" | "plus" | "printer" | "question-fill" | "question" | "refresh" | "remove" | "sandglass" | "save" | "search" | "settings" | "shopping-cart" | "sort-date" | "star-fill" | "star" | "telegram" | "timer" | "tool" | "truck" | "unlocked" | "upload" | "user-avatar" | "user-group" | "visibility-off" | "visibility-on" | "vk" | "winner" | "workspace" | "youtube">;
|
|
84
|
+
default: undefined;
|
|
85
|
+
validator: (value: TCdsIconsName) => boolean;
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* Тип поля
|
|
89
|
+
*/
|
|
90
|
+
type: {
|
|
91
|
+
type: PropType<"number" | "password" | "text" | "email" | "tel" | "url">;
|
|
92
|
+
default: string;
|
|
93
|
+
validator: (value: TFieldTypes) => boolean;
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Плейсхолдер поля
|
|
97
|
+
*/
|
|
98
|
+
placeholder: {
|
|
99
|
+
type: PropType<string>;
|
|
100
|
+
default: undefined;
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* Счетчик введенных символов
|
|
104
|
+
*/
|
|
105
|
+
counter: {
|
|
106
|
+
type: PropType<boolean>;
|
|
107
|
+
default: boolean;
|
|
108
|
+
};
|
|
109
|
+
/**
|
|
110
|
+
* Ограничение ввода по количеству символов
|
|
111
|
+
*/
|
|
112
|
+
limit: {
|
|
113
|
+
type: PropType<number>;
|
|
114
|
+
default: undefined;
|
|
115
|
+
};
|
|
116
|
+
/**
|
|
117
|
+
* Очищаемое поле
|
|
118
|
+
*/
|
|
119
|
+
clearable: {
|
|
120
|
+
type: PropType<boolean>;
|
|
121
|
+
default: boolean;
|
|
122
|
+
};
|
|
123
|
+
/**
|
|
124
|
+
* Событие клика по иконке внутри элемента перед значением поля
|
|
125
|
+
*/
|
|
126
|
+
'onClick:prependInner': {
|
|
127
|
+
type: PropType<(...args: any[]) => any>;
|
|
128
|
+
default: undefined;
|
|
129
|
+
};
|
|
130
|
+
/**
|
|
131
|
+
* Событие клика по иконке внутри элемента после значения поля
|
|
132
|
+
*/
|
|
133
|
+
'onClick:appendInner': {
|
|
134
|
+
type: PropType<(...args: any[]) => any>;
|
|
135
|
+
default: undefined;
|
|
136
|
+
};
|
|
137
|
+
}, Defaults>;
|
|
138
|
+
export declare function useField(props: IFieldProps, slots: Record<string, unknown>, name: string): IUseField;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ComputedRef, PropType, Ref } from 'vue';
|
|
2
|
+
export interface IFocusProps {
|
|
3
|
+
focused: boolean;
|
|
4
|
+
}
|
|
5
|
+
export interface IUseFocus {
|
|
6
|
+
isFocused: Ref<boolean>;
|
|
7
|
+
focusClasses: ComputedRef<Record<string, boolean>>;
|
|
8
|
+
focus: () => void;
|
|
9
|
+
blur: () => void;
|
|
10
|
+
}
|
|
11
|
+
export declare const makeFocusProps: <Defaults extends {
|
|
12
|
+
focused?: unknown;
|
|
13
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
14
|
+
/**
|
|
15
|
+
* Элемент в фокусе
|
|
16
|
+
*/
|
|
17
|
+
focused: {
|
|
18
|
+
type: PropType<boolean>;
|
|
19
|
+
default: boolean;
|
|
20
|
+
};
|
|
21
|
+
}, Defaults>;
|
|
22
|
+
export declare function useFocus(props: IFocusProps, name: string): IUseFocus;
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { InjectionKey } from 'vue';
|
|
2
|
+
import type { Ref, ComputedRef, PropType } from 'vue';
|
|
3
|
+
import type { IValidationProps } from './validation';
|
|
4
|
+
export interface IFormProvide {
|
|
5
|
+
register: (item: {
|
|
6
|
+
id: number | string;
|
|
7
|
+
validate: () => Promise<string[]>;
|
|
8
|
+
reset: () => void;
|
|
9
|
+
resetValidation: () => void;
|
|
10
|
+
}) => void;
|
|
11
|
+
unregister: (id: number | string) => void;
|
|
12
|
+
update: (id: number | string, isValid: boolean | null, errorMessages: string[]) => void;
|
|
13
|
+
items: Ref<IFormField[]>;
|
|
14
|
+
isDisabled: ComputedRef<boolean>;
|
|
15
|
+
isReadonly: ComputedRef<boolean>;
|
|
16
|
+
isValidating: Ref<boolean>;
|
|
17
|
+
validateOn: Ref<IFormProps['validateOn']>;
|
|
18
|
+
}
|
|
19
|
+
export interface IFormProps {
|
|
20
|
+
disabled: boolean;
|
|
21
|
+
readonly: boolean;
|
|
22
|
+
firstFail: boolean;
|
|
23
|
+
modelValue: boolean | null;
|
|
24
|
+
validateOn?: IValidationProps['validateOn'];
|
|
25
|
+
}
|
|
26
|
+
interface IFormField {
|
|
27
|
+
id: number | string;
|
|
28
|
+
validate: () => Promise<string[]>;
|
|
29
|
+
reset: () => void;
|
|
30
|
+
resetValidation: () => void;
|
|
31
|
+
isValid: boolean | null;
|
|
32
|
+
errorMessages: string[];
|
|
33
|
+
}
|
|
34
|
+
interface IFieldValidationResult {
|
|
35
|
+
id: number | string;
|
|
36
|
+
errorMessages: string[];
|
|
37
|
+
}
|
|
38
|
+
interface IFormValidationResult {
|
|
39
|
+
valid: boolean;
|
|
40
|
+
errors: IFieldValidationResult[];
|
|
41
|
+
}
|
|
42
|
+
export interface SubmitEventPromise extends SubmitEvent, Promise<IFormValidationResult> {
|
|
43
|
+
}
|
|
44
|
+
export declare const makeFormProps: <Defaults extends {
|
|
45
|
+
label?: unknown;
|
|
46
|
+
description?: unknown;
|
|
47
|
+
disabled?: unknown;
|
|
48
|
+
readonly?: unknown;
|
|
49
|
+
firstFail?: unknown;
|
|
50
|
+
modelValue?: unknown;
|
|
51
|
+
validateOn?: unknown;
|
|
52
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
53
|
+
/**
|
|
54
|
+
* Заголовок формы
|
|
55
|
+
*/
|
|
56
|
+
label: {
|
|
57
|
+
type: PropType<string>;
|
|
58
|
+
default: string;
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* Описание формы
|
|
62
|
+
*/
|
|
63
|
+
description: {
|
|
64
|
+
type: PropType<string>;
|
|
65
|
+
default: string;
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* Заблокировать форму
|
|
69
|
+
*/
|
|
70
|
+
disabled: {
|
|
71
|
+
type: PropType<boolean>;
|
|
72
|
+
default: boolean;
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Сделать форму только для чтения
|
|
76
|
+
*/
|
|
77
|
+
readonly: {
|
|
78
|
+
type: PropType<boolean>;
|
|
79
|
+
default: boolean;
|
|
80
|
+
};
|
|
81
|
+
/**
|
|
82
|
+
* Остановить валидацию при первой ошибке
|
|
83
|
+
*/
|
|
84
|
+
firstFail: {
|
|
85
|
+
type: PropType<boolean>;
|
|
86
|
+
default: boolean;
|
|
87
|
+
};
|
|
88
|
+
/**
|
|
89
|
+
* Значение модели
|
|
90
|
+
*/
|
|
91
|
+
modelValue: {
|
|
92
|
+
type: PropType<boolean | null>;
|
|
93
|
+
default: null;
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Событие для валидации
|
|
97
|
+
*/
|
|
98
|
+
validateOn: {
|
|
99
|
+
type: PropType<"input" | "blur" | "submit" | undefined>;
|
|
100
|
+
default: string;
|
|
101
|
+
};
|
|
102
|
+
}, Defaults>;
|
|
103
|
+
export declare const FormKey: InjectionKey<IFormProvide>;
|
|
104
|
+
export declare function createForm(props: IFormProps): {
|
|
105
|
+
errors: Ref<{
|
|
106
|
+
id: string | number;
|
|
107
|
+
errorMessages: string[];
|
|
108
|
+
}[]>;
|
|
109
|
+
isDisabled: ComputedRef<boolean>;
|
|
110
|
+
isReadonly: ComputedRef<boolean>;
|
|
111
|
+
isValidating: Ref<boolean>;
|
|
112
|
+
model: Ref<boolean | null> & {
|
|
113
|
+
readonly externalValue: boolean | null;
|
|
114
|
+
};
|
|
115
|
+
validate: () => Promise<{
|
|
116
|
+
valid: boolean;
|
|
117
|
+
errors: {
|
|
118
|
+
id: string | number;
|
|
119
|
+
errorMessages: string[];
|
|
120
|
+
}[];
|
|
121
|
+
}>;
|
|
122
|
+
reset: () => void;
|
|
123
|
+
resetValidation: () => void;
|
|
124
|
+
};
|
|
125
|
+
export declare function useForm(): IFormProvide | null;
|
|
126
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function useHydration(): import("vue").Ref<boolean>;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { EventProp } from '../utils';
|
|
2
|
+
import type { PropType, ComputedRef } from 'vue';
|
|
3
|
+
import type { TCdsIconsName } from '@central-design-system/icons';
|
|
4
|
+
export interface IIconProps {
|
|
5
|
+
prependIcon: TCdsIconsName | undefined;
|
|
6
|
+
appendIcon: TCdsIconsName | undefined;
|
|
7
|
+
'onClick:prepend'?: EventProp | undefined;
|
|
8
|
+
'onClick:append'?: EventProp | undefined;
|
|
9
|
+
}
|
|
10
|
+
export interface IUseIcon {
|
|
11
|
+
hasPrepend: ComputedRef<boolean>;
|
|
12
|
+
hasAppend: ComputedRef<boolean>;
|
|
13
|
+
iconClasses: ComputedRef<Record<string, boolean>>;
|
|
14
|
+
handleClickPrepend: (event: MouseEvent) => void;
|
|
15
|
+
handleClickAppend: (event: MouseEvent) => void;
|
|
16
|
+
}
|
|
17
|
+
export declare const makeIconProps: <Defaults extends {
|
|
18
|
+
prependIcon?: unknown;
|
|
19
|
+
appendIcon?: unknown;
|
|
20
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
21
|
+
/**
|
|
22
|
+
* Иконка в начале элемента
|
|
23
|
+
*/
|
|
24
|
+
prependIcon: {
|
|
25
|
+
type: PropType<"add" | "alert-fill" | "alert" | "analog" | "arrow-down" | "arrow-left-bottom" | "arrow-left-top" | "arrow-left" | "arrow-right-bottom" | "arrow-right-top" | "arrow-right" | "arrow-up" | "arrows-vertical" | "calendar" | "card-bank" | "category" | "check-fill" | "check" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chocolate-menu" | "clock" | "comment" | "company" | "compare" | "copy" | "data-cards" | "delete" | "directory" | "doc-download" | "doc" | "download" | "draggable" | "edit" | "enter" | "error-fill" | "error" | "external" | "facebook-fill" | "facebook" | "filters" | "flag" | "globe" | "infinity" | "info-fill" | "info" | "link" | "list-search" | "list" | "loader" | "location" | "locked" | "login" | "logout" | "menu" | "minus" | "notification" | "overflow-menu-horizontal" | "overflow-menu-vertical" | "password" | "pin" | "plus" | "printer" | "question-fill" | "question" | "refresh" | "remove" | "sandglass" | "save" | "search" | "settings" | "shopping-cart" | "sort-date" | "star-fill" | "star" | "telegram" | "timer" | "tool" | "truck" | "unlocked" | "upload" | "user-avatar" | "user-group" | "visibility-off" | "visibility-on" | "vk" | "winner" | "workspace" | "youtube">;
|
|
26
|
+
default: undefined;
|
|
27
|
+
validator: (value: TCdsIconsName) => boolean;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Иконка в конце элемента
|
|
31
|
+
*/
|
|
32
|
+
appendIcon: {
|
|
33
|
+
type: PropType<"add" | "alert-fill" | "alert" | "analog" | "arrow-down" | "arrow-left-bottom" | "arrow-left-top" | "arrow-left" | "arrow-right-bottom" | "arrow-right-top" | "arrow-right" | "arrow-up" | "arrows-vertical" | "calendar" | "card-bank" | "category" | "check-fill" | "check" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chocolate-menu" | "clock" | "comment" | "company" | "compare" | "copy" | "data-cards" | "delete" | "directory" | "doc-download" | "doc" | "download" | "draggable" | "edit" | "enter" | "error-fill" | "error" | "external" | "facebook-fill" | "facebook" | "filters" | "flag" | "globe" | "infinity" | "info-fill" | "info" | "link" | "list-search" | "list" | "loader" | "location" | "locked" | "login" | "logout" | "menu" | "minus" | "notification" | "overflow-menu-horizontal" | "overflow-menu-vertical" | "password" | "pin" | "plus" | "printer" | "question-fill" | "question" | "refresh" | "remove" | "sandglass" | "save" | "search" | "settings" | "shopping-cart" | "sort-date" | "star-fill" | "star" | "telegram" | "timer" | "tool" | "truck" | "unlocked" | "upload" | "user-avatar" | "user-group" | "visibility-off" | "visibility-on" | "vk" | "winner" | "workspace" | "youtube">;
|
|
34
|
+
default: undefined;
|
|
35
|
+
validator: (value: TCdsIconsName) => boolean;
|
|
36
|
+
};
|
|
37
|
+
}, Defaults>;
|
|
38
|
+
export declare const makeIconEvents: <Defaults extends {
|
|
39
|
+
'onClick:prepend'?: unknown;
|
|
40
|
+
'onClick:append'?: unknown;
|
|
41
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
42
|
+
/**
|
|
43
|
+
* Событие клика по иконке перед значением поля
|
|
44
|
+
*/
|
|
45
|
+
'onClick:prepend': {
|
|
46
|
+
type: PropType<(...args: any[]) => any>;
|
|
47
|
+
default: undefined;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Событие клика по иконке после значения поля
|
|
51
|
+
*/
|
|
52
|
+
'onClick:append': {
|
|
53
|
+
type: PropType<(...args: any[]) => any>;
|
|
54
|
+
default: undefined;
|
|
55
|
+
};
|
|
56
|
+
}, Defaults>;
|
|
57
|
+
export declare function useIcon(props: IIconProps, slots: Record<string, unknown>, name: string): IUseIcon;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export * from './text';
|
|
2
|
+
export * from './link';
|
|
3
|
+
export * from './icon';
|
|
4
|
+
export * from './loading';
|
|
5
|
+
export * from './appearance';
|
|
6
|
+
export * from './size';
|
|
7
|
+
export * from './disabled';
|
|
8
|
+
export * from './dark';
|
|
9
|
+
export * from './color';
|
|
10
|
+
export * from './status';
|
|
11
|
+
export * from './tag';
|
|
12
|
+
export * from './items';
|
|
13
|
+
export * from './focus';
|
|
14
|
+
export * from './proxyModel';
|
|
15
|
+
export * from './toggleScope';
|
|
16
|
+
export * from './nested/nested';
|
|
17
|
+
export * from './render';
|
|
18
|
+
export * from './input';
|
|
19
|
+
export * from './form';
|
|
20
|
+
export * from './validation';
|
|
21
|
+
export * from './direction';
|
|
22
|
+
export * from './field';
|
|
23
|
+
export * from './transition';
|
|
24
|
+
export * from './overlay';
|
|
25
|
+
export * from './lazy';
|
|
26
|
+
export * from './delay';
|
|
27
|
+
export * from './dimensions';
|
|
28
|
+
export * from './hidration';
|
|
29
|
+
export * from './scopeId';
|