@central-design-system/components 3.0.0-alpha.0 → 3.0.0-alpha.10
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 -1
- package/dist/cds.d.ts +54 -24
- package/dist/cds.es.js +12619 -1577
- package/dist/cds.umd.js +18 -1
- package/dist/components/CdsBadge/index.d.ts +1 -0
- package/dist/components/CdsBreadcrumbs/CdsBreadcrumbs.vue.d.ts +64 -0
- package/dist/components/CdsBreadcrumbs/CdsBreadcrumbsItem.vue.d.ts +54 -0
- package/dist/components/CdsBreadcrumbs/index.d.ts +2 -0
- package/dist/components/CdsButton/CdsButton.vue.d.ts +28 -18
- package/dist/components/CdsButton/index.d.ts +1 -0
- package/dist/components/CdsCheckbox/CdsCheckbox.vue.d.ts +254 -0
- package/dist/components/CdsCheckbox/CdsCheckboxGroup.vue.d.ts +227 -0
- package/dist/components/CdsCheckbox/index.d.ts +2 -0
- package/dist/components/CdsCombobox/CdsCombobox.vue.d.ts +2457 -0
- package/dist/components/CdsCombobox/composable/highlight.d.ts +12 -0
- package/dist/components/CdsCombobox/index.d.ts +1 -0
- package/dist/components/CdsDatePicker/CdsDatePicker.vue.d.ts +249 -0
- package/dist/components/CdsDatePicker/composable/calendar.d.ts +317 -0
- package/dist/components/CdsDatePicker/composable/index.d.ts +1 -0
- package/dist/components/CdsDatePicker/index.d.ts +1 -0
- package/dist/components/CdsDrawer/CdsDrawer.vue.d.ts +22 -6
- package/dist/components/CdsDrawer/index.d.ts +1 -0
- package/dist/components/CdsDropdown/CdsDropdown.vue.d.ts +2413 -0
- package/dist/components/CdsDropdown/index.d.ts +1 -0
- package/dist/components/CdsEmptyState/CdsEmptyState.vue.d.ts +54 -0
- package/dist/components/CdsEmptyState/index.d.ts +1 -0
- package/dist/components/CdsForm/CdsForm.vue.d.ts +109 -0
- package/dist/components/CdsForm/index.d.ts +1 -0
- package/dist/components/CdsGrid/CdsCol.vue.d.ts +1 -1
- package/dist/components/CdsGrid/composable/grid.d.ts +2 -1
- package/dist/components/CdsGrid/index.d.ts +3 -0
- package/dist/components/CdsIcon/CdsIcon.vue.d.ts +4 -4
- package/dist/components/CdsInput/CdsInput.vue.d.ts +239 -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 +10 -3
- package/dist/components/CdsLink/index.d.ts +1 -0
- package/dist/components/CdsList/CdsList.vue.d.ts +62 -33
- package/dist/components/CdsList/CdsListGroup.vue.d.ts +7 -7
- package/dist/components/CdsList/CdsListItem.vue.d.ts +35 -26
- package/dist/components/CdsList/composable/focus.d.ts +12 -0
- package/dist/components/CdsList/composable/index.d.ts +1 -0
- package/dist/components/CdsList/composable/list.d.ts +1 -1
- package/dist/components/CdsLoader/CdsLoader.vue.d.ts +1 -1
- package/dist/components/CdsMenu/CdsMenu.vue.d.ts +697 -0
- package/dist/components/CdsMenu/index.d.ts +1 -0
- package/dist/components/CdsMenu/shared.d.ts +10 -0
- package/dist/components/CdsOverlay/CdsOverlay.vue.d.ts +343 -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 +78 -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/index.d.ts +1 -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/CdsPagination/CdsPagination.vue.d.ts +142 -0
- package/dist/components/CdsPagination/index.d.ts +1 -0
- package/dist/components/CdsRadioButton/CdsRadio.vue.d.ts +230 -0
- package/dist/components/CdsRadioButton/CdsRadioButton.vue.d.ts +228 -0
- package/dist/components/CdsRadioButton/index.d.ts +2 -0
- package/dist/components/CdsSelect/CdsSelect.vue.d.ts +775 -0
- package/dist/components/CdsSelect/index.d.ts +1 -0
- package/dist/components/CdsSidebar/CdsSidebar.vue.d.ts +66 -0
- package/dist/components/CdsSidebar/index.d.ts +1 -0
- package/dist/components/CdsStages/CdsStages.vue.d.ts +102 -0
- package/dist/components/CdsStages/index.d.ts +1 -0
- package/dist/components/CdsStatus/index.d.ts +1 -0
- package/dist/components/CdsTable/CdsTable.vue.d.ts +1147 -0
- package/dist/components/CdsTable/CdsTableColumn.vue.d.ts +10 -0
- package/dist/components/CdsTable/CdsTableColumnGroup.vue.d.ts +10 -0
- package/dist/components/CdsTable/components/Body/Body.d.ts +12 -0
- package/dist/components/CdsTable/components/Body/BodyRow.d.ts +22 -0
- package/dist/components/CdsTable/components/Body/ExpandedRow.d.ts +13 -0
- package/dist/components/CdsTable/components/Body/index.d.ts +1 -0
- package/dist/components/CdsTable/components/Cell/Cell.d.ts +34 -0
- package/dist/components/CdsTable/components/Cell/MeasureCell.d.ts +7 -0
- package/dist/components/CdsTable/components/Cell/index.d.ts +2 -0
- package/dist/components/CdsTable/components/ColGroup/ColGroup.d.ts +8 -0
- package/dist/components/CdsTable/components/ColGroup/index.d.ts +1 -0
- package/dist/components/CdsTable/components/Filter/FilterDropdown.d.ts +14 -0
- package/dist/components/CdsTable/components/Filter/FilterSearch.d.ts +9 -0
- package/dist/components/CdsTable/components/Filter/FilterWrapper.d.ts +4 -0
- package/dist/components/CdsTable/components/Filter/index.d.ts +1 -0
- package/dist/components/CdsTable/components/FixedHolder/FixedHolder.d.ts +21 -0
- package/dist/components/CdsTable/components/FixedHolder/index.d.ts +1 -0
- package/dist/components/CdsTable/components/Footer/Footer.d.ts +8 -0
- package/dist/components/CdsTable/components/Footer/index.d.ts +1 -0
- package/dist/components/CdsTable/components/Header/DragHandle.d.ts +44 -0
- package/dist/components/CdsTable/components/Header/Header.d.ts +11 -0
- package/dist/components/CdsTable/components/Header/HeaderRow.d.ts +15 -0
- package/dist/components/CdsTable/components/Header/index.d.ts +1 -0
- package/dist/components/CdsTable/components/Icons/ExpandIcon.d.ts +12 -0
- package/dist/components/CdsTable/components/Panel/Panel.d.ts +4 -0
- package/dist/components/CdsTable/components/Panel/index.d.ts +1 -0
- package/dist/components/CdsTable/components/ResizeObserver/ResizeObserver.d.ts +11 -0
- package/dist/components/CdsTable/components/ResizeObserver/index.d.ts +1 -0
- package/dist/components/CdsTable/components/StickyScrollbar/StickyScrollbar.d.ts +15 -0
- package/dist/components/CdsTable/components/StickyScrollbar/index.d.ts +1 -0
- package/dist/components/CdsTable/components/Table/InternalTable.d.ts +1139 -0
- package/dist/components/CdsTable/components/TableProvider.d.ts +1132 -0
- package/dist/components/CdsTable/composable/columns.d.ts +28 -0
- package/dist/components/CdsTable/composable/filter.d.ts +16 -0
- package/dist/components/CdsTable/composable/flat.d.ts +17 -0
- package/dist/components/CdsTable/composable/frame.d.ts +6 -0
- package/dist/components/CdsTable/composable/index.d.ts +10 -0
- package/dist/components/CdsTable/composable/pagination.d.ts +18 -0
- package/dist/components/CdsTable/composable/selection.d.ts +23 -0
- package/dist/components/CdsTable/composable/sorter.d.ts +21 -0
- package/dist/components/CdsTable/composable/sticky.d.ts +12 -0
- package/dist/components/CdsTable/composable/table.d.ts +640 -0
- package/dist/components/CdsTable/constants.d.ts +2 -0
- package/dist/components/CdsTable/context/body.d.ts +19 -0
- package/dist/components/CdsTable/context/expandedRow.d.ts +10 -0
- package/dist/components/CdsTable/context/hover.d.ts +9 -0
- package/dist/components/CdsTable/context/index.d.ts +8 -0
- package/dist/components/CdsTable/context/resize.d.ts +9 -0
- package/dist/components/CdsTable/context/slots.d.ts +17 -0
- package/dist/components/CdsTable/context/sticky.d.ts +2 -0
- package/dist/components/CdsTable/context/summary.d.ts +14 -0
- package/dist/components/CdsTable/context/table.d.ts +20 -0
- package/dist/components/CdsTable/index.d.ts +6 -0
- package/dist/components/CdsTable/interface.d.ts +323 -0
- package/dist/components/CdsTable/utils/column.d.ts +7 -0
- package/dist/components/CdsTable/utils/expand.d.ts +2 -0
- package/dist/components/CdsTable/utils/fixed.d.ts +13 -0
- package/dist/components/CdsTable/utils/index.d.ts +5 -0
- package/dist/components/CdsTable/utils/listener.d.ts +5 -0
- package/dist/components/CdsTable/utils/value.d.ts +10 -0
- package/dist/components/CdsTag/CdsTag.vue.d.ts +11 -6
- package/dist/components/CdsTag/index.d.ts +1 -0
- package/dist/components/CdsTextArea/CdsTextArea.vue.d.ts +782 -0
- package/dist/components/CdsTextArea/index.d.ts +1 -0
- package/dist/components/CdsTextInput/CdsTextInput.vue.d.ts +735 -0
- package/dist/components/CdsTextInput/index.d.ts +1 -0
- package/dist/components/CdsTimePicker/CdsTimePicker.vue.d.ts +144 -0
- package/dist/components/CdsTimePicker/composable/index.d.ts +1 -0
- package/dist/components/CdsTimePicker/composable/time.d.ts +134 -0
- package/dist/components/CdsTimePicker/index.d.ts +1 -0
- package/dist/components/CdsTooltip/CdsTooltip.vue.d.ts +765 -0
- package/dist/components/CdsTooltip/index.d.ts +1 -0
- package/dist/components/CdsTree/composable/index.d.ts +1 -0
- package/dist/components/CdsTree/composable/tree.d.ts +6 -0
- package/dist/components/CdsTree/interface.d.ts +60 -0
- package/dist/components/CdsTree/utils/conduct.d.ts +11 -0
- package/dist/components/CdsTree/utils/data.d.ts +36 -0
- package/dist/components/CdsTree/utils/index.d.ts +2 -0
- package/dist/components/index.d.ts +60 -1
- package/dist/composable/color.d.ts +4 -2
- package/dist/composable/datetime.d.ts +45 -0
- package/dist/composable/delay.d.ts +29 -0
- package/dist/composable/dimensions.d.ts +65 -0
- package/dist/composable/direction.d.ts +24 -0
- package/dist/composable/display.d.ts +59 -0
- package/dist/composable/field.d.ts +139 -0
- package/dist/composable/filter.d.ts +52 -0
- package/dist/composable/focus.d.ts +19 -9
- package/dist/composable/form.d.ts +128 -0
- package/dist/composable/hidration.d.ts +2 -0
- package/dist/composable/icon.d.ts +29 -4
- package/dist/composable/index.d.ts +24 -0
- package/dist/composable/input.d.ts +99 -0
- package/dist/composable/items.d.ts +12 -9
- package/dist/composable/lazy.d.ts +21 -0
- package/dist/composable/link.d.ts +1 -2
- package/dist/composable/loading.d.ts +1 -0
- package/dist/composable/locale.d.ts +18 -0
- package/dist/composable/menu.d.ts +37 -0
- package/dist/composable/nested/nested.d.ts +2 -2
- package/dist/composable/overlay.d.ts +98 -0
- package/dist/composable/readonly.d.ts +19 -0
- package/dist/composable/refs.d.ts +6 -0
- package/dist/composable/resizeObserver.d.ts +7 -0
- package/dist/composable/router.d.ts +3 -0
- package/dist/composable/scopeId.d.ts +5 -0
- package/dist/composable/select.d.ts +86 -0
- package/dist/composable/state.d.ts +13 -0
- package/dist/composable/title.d.ts +21 -0
- package/dist/composable/transition.d.ts +22 -0
- package/dist/composable/validation.d.ts +112 -0
- package/dist/create.d.ts +23 -0
- package/dist/directives/click-outside/index.d.ts +14 -0
- package/dist/directives/index.d.ts +1 -2
- package/dist/globals.d.ts +18 -0
- package/dist/locale/en.d.ts +3 -0
- package/dist/locale/index.d.ts +13 -0
- package/dist/locale/ru.d.ts +3 -0
- package/dist/transitions/createTransition.d.ts +31 -2
- package/dist/transitions/index.d.ts +240 -0
- package/dist/utils/date/date.d.ts +190 -0
- package/dist/utils/dom/anchor.d.ts +23 -0
- package/dist/utils/dom/animation.d.ts +6 -0
- package/dist/utils/dom/box.d.ts +26 -0
- package/dist/utils/dom/classNames.d.ts +1 -0
- package/dist/utils/dom/dom.d.ts +10 -0
- package/dist/utils/dom/getScrollParent.d.ts +12 -0
- package/dist/utils/dom/globals.d.ts +4 -0
- package/dist/utils/dom/scrollTo.d.ts +10 -0
- package/dist/utils/dom/warn.d.ts +1 -0
- package/dist/utils/dom/wrapperRaf.d.ts +4 -0
- package/dist/utils/helpers.d.ts +133 -20
- package/dist/utils/index.d.ts +16 -1
- package/dist/utils/use/cache.d.ts +4 -0
- package/dist/utils/use/eagerComputed.d.ts +3 -0
- package/dist/utils/use/pickAttrs.d.ts +11 -0
- package/dist/utils/use/reactiveComputed.d.ts +4 -0
- package/dist/utils/use/reactivePick.d.ts +8 -0
- package/dist/utils/use/toReactive.d.ts +8 -0
- package/dist/utils/use/toValue.d.ts +5 -0
- package/package.json +8 -5
- package/src/scss/mixins/layout/_shadow.scss +4 -0
- package/src/scss/mixins/layout/index.scss +1 -0
- package/src/scss/modules/_transition.scss +133 -3
- package/src/scss/themes/index.ts +1 -1
- package/src/scss/utility/lists.scss +1 -0
- package/dist/types/CdsOptions.d.ts +0 -3
|
@@ -1,12 +1,22 @@
|
|
|
1
|
-
import type { Ref } from 'vue';
|
|
2
|
-
export
|
|
1
|
+
import type { ComputedRef, PropType, Ref } from 'vue';
|
|
2
|
+
export interface IFocusProps {
|
|
3
|
+
focused: boolean;
|
|
4
|
+
}
|
|
3
5
|
export interface IUseFocus {
|
|
4
|
-
contentRef: Ref<HTMLElement | null>;
|
|
5
6
|
isFocused: Ref<boolean>;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
onKeydown: (event: KeyboardEvent) => void;
|
|
10
|
-
focus: (location?: TFocusLocation) => void;
|
|
7
|
+
focusClasses: ComputedRef<Record<string, boolean>>;
|
|
8
|
+
focus: () => void;
|
|
9
|
+
blur: () => void;
|
|
11
10
|
}
|
|
12
|
-
export declare
|
|
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,128 @@
|
|
|
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
|
+
label: string;
|
|
21
|
+
description: string;
|
|
22
|
+
disabled: boolean;
|
|
23
|
+
readonly: boolean;
|
|
24
|
+
firstFail: boolean;
|
|
25
|
+
modelValue: boolean | null;
|
|
26
|
+
validateOn?: IValidationProps['validateOn'];
|
|
27
|
+
}
|
|
28
|
+
interface IFormField {
|
|
29
|
+
id: number | string;
|
|
30
|
+
validate: () => Promise<string[]>;
|
|
31
|
+
reset: () => void;
|
|
32
|
+
resetValidation: () => void;
|
|
33
|
+
isValid: boolean | null;
|
|
34
|
+
errorMessages: string[];
|
|
35
|
+
}
|
|
36
|
+
interface IFieldValidationResult {
|
|
37
|
+
id: number | string;
|
|
38
|
+
errorMessages: string[];
|
|
39
|
+
}
|
|
40
|
+
interface IFormValidationResult {
|
|
41
|
+
valid: boolean;
|
|
42
|
+
errors: IFieldValidationResult[];
|
|
43
|
+
}
|
|
44
|
+
export interface SubmitEventPromise extends SubmitEvent, Promise<IFormValidationResult> {
|
|
45
|
+
}
|
|
46
|
+
export declare const makeFormProps: <Defaults extends {
|
|
47
|
+
label?: unknown;
|
|
48
|
+
description?: unknown;
|
|
49
|
+
disabled?: unknown;
|
|
50
|
+
readonly?: unknown;
|
|
51
|
+
firstFail?: unknown;
|
|
52
|
+
modelValue?: unknown;
|
|
53
|
+
validateOn?: unknown;
|
|
54
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
55
|
+
/**
|
|
56
|
+
* Заголовок формы
|
|
57
|
+
*/
|
|
58
|
+
label: {
|
|
59
|
+
type: PropType<string>;
|
|
60
|
+
default: string;
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* Описание формы
|
|
64
|
+
*/
|
|
65
|
+
description: {
|
|
66
|
+
type: PropType<string>;
|
|
67
|
+
default: string;
|
|
68
|
+
};
|
|
69
|
+
/**
|
|
70
|
+
* Заблокировать форму
|
|
71
|
+
*/
|
|
72
|
+
disabled: {
|
|
73
|
+
type: PropType<boolean>;
|
|
74
|
+
default: boolean;
|
|
75
|
+
};
|
|
76
|
+
/**
|
|
77
|
+
* Сделать форму только для чтения
|
|
78
|
+
*/
|
|
79
|
+
readonly: {
|
|
80
|
+
type: PropType<boolean>;
|
|
81
|
+
default: boolean;
|
|
82
|
+
};
|
|
83
|
+
/**
|
|
84
|
+
* Остановить валидацию при первой ошибке
|
|
85
|
+
*/
|
|
86
|
+
firstFail: {
|
|
87
|
+
type: PropType<boolean>;
|
|
88
|
+
default: boolean;
|
|
89
|
+
};
|
|
90
|
+
/**
|
|
91
|
+
* Значение модели
|
|
92
|
+
*/
|
|
93
|
+
modelValue: {
|
|
94
|
+
type: PropType<boolean | null>;
|
|
95
|
+
default: null;
|
|
96
|
+
};
|
|
97
|
+
/**
|
|
98
|
+
* Событие для валидации
|
|
99
|
+
*/
|
|
100
|
+
validateOn: {
|
|
101
|
+
type: PropType<"input" | "blur" | "submit" | undefined>;
|
|
102
|
+
default: string;
|
|
103
|
+
};
|
|
104
|
+
}, Defaults>;
|
|
105
|
+
export declare const FormKey: InjectionKey<IFormProvide>;
|
|
106
|
+
export declare function createForm(props: IFormProps): {
|
|
107
|
+
errors: Ref<{
|
|
108
|
+
id: string | number;
|
|
109
|
+
errorMessages: string[];
|
|
110
|
+
}[]>;
|
|
111
|
+
isDisabled: ComputedRef<boolean>;
|
|
112
|
+
isReadonly: ComputedRef<boolean>;
|
|
113
|
+
isValidating: Ref<boolean>;
|
|
114
|
+
model: Ref<boolean | null> & {
|
|
115
|
+
readonly externalValue: boolean | null;
|
|
116
|
+
};
|
|
117
|
+
validate: () => Promise<{
|
|
118
|
+
valid: boolean;
|
|
119
|
+
errors: {
|
|
120
|
+
id: string | number;
|
|
121
|
+
errorMessages: string[];
|
|
122
|
+
}[];
|
|
123
|
+
}>;
|
|
124
|
+
reset: () => void;
|
|
125
|
+
resetValidation: () => void;
|
|
126
|
+
};
|
|
127
|
+
export declare function useForm(): IFormProvide | null;
|
|
128
|
+
export {};
|
|
@@ -1,12 +1,18 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { EventProp } from '../utils';
|
|
2
|
+
import type { PropType, ComputedRef } from 'vue';
|
|
2
3
|
import type { TCdsIconsName } from '@central-design-system/icons';
|
|
3
4
|
export interface IIconProps {
|
|
4
5
|
prependIcon: TCdsIconsName | undefined;
|
|
5
6
|
appendIcon: TCdsIconsName | undefined;
|
|
7
|
+
'onClick:prepend'?: EventProp | undefined;
|
|
8
|
+
'onClick:append'?: EventProp | undefined;
|
|
6
9
|
}
|
|
7
10
|
export interface IUseIcon {
|
|
8
11
|
hasPrepend: ComputedRef<boolean>;
|
|
9
12
|
hasAppend: ComputedRef<boolean>;
|
|
13
|
+
iconClasses: ComputedRef<Record<string, boolean>>;
|
|
14
|
+
handleClickPrepend: (event: MouseEvent) => void;
|
|
15
|
+
handleClickAppend: (event: MouseEvent) => void;
|
|
10
16
|
}
|
|
11
17
|
export declare const makeIconProps: <Defaults extends {
|
|
12
18
|
prependIcon?: unknown;
|
|
@@ -16,7 +22,7 @@ export declare const makeIconProps: <Defaults extends {
|
|
|
16
22
|
* Иконка в начале элемента
|
|
17
23
|
*/
|
|
18
24
|
prependIcon: {
|
|
19
|
-
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" | "
|
|
25
|
+
type: PropType<"link" | "filters" | "search" | "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" | "flag" | "globe" | "infinity" | "info-fill" | "info" | "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" | "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">;
|
|
20
26
|
default: undefined;
|
|
21
27
|
validator: (value: TCdsIconsName) => boolean;
|
|
22
28
|
};
|
|
@@ -24,9 +30,28 @@ export declare const makeIconProps: <Defaults extends {
|
|
|
24
30
|
* Иконка в конце элемента
|
|
25
31
|
*/
|
|
26
32
|
appendIcon: {
|
|
27
|
-
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" | "
|
|
33
|
+
type: PropType<"link" | "filters" | "search" | "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" | "flag" | "globe" | "infinity" | "info-fill" | "info" | "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" | "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">;
|
|
28
34
|
default: undefined;
|
|
29
35
|
validator: (value: TCdsIconsName) => boolean;
|
|
30
36
|
};
|
|
31
37
|
}, Defaults>;
|
|
32
|
-
export declare
|
|
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;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
export * from './text';
|
|
2
|
+
export * from './title';
|
|
2
3
|
export * from './link';
|
|
3
4
|
export * from './icon';
|
|
4
5
|
export * from './loading';
|
|
5
6
|
export * from './appearance';
|
|
6
7
|
export * from './size';
|
|
7
8
|
export * from './disabled';
|
|
9
|
+
export * from './readonly';
|
|
8
10
|
export * from './dark';
|
|
9
11
|
export * from './color';
|
|
10
12
|
export * from './status';
|
|
@@ -15,3 +17,25 @@ export * from './proxyModel';
|
|
|
15
17
|
export * from './toggleScope';
|
|
16
18
|
export * from './nested/nested';
|
|
17
19
|
export * from './render';
|
|
20
|
+
export * from './input';
|
|
21
|
+
export * from './form';
|
|
22
|
+
export * from './validation';
|
|
23
|
+
export * from './direction';
|
|
24
|
+
export * from './field';
|
|
25
|
+
export * from './transition';
|
|
26
|
+
export * from './overlay';
|
|
27
|
+
export * from './lazy';
|
|
28
|
+
export * from './delay';
|
|
29
|
+
export * from './dimensions';
|
|
30
|
+
export * from './hidration';
|
|
31
|
+
export * from './scopeId';
|
|
32
|
+
export * from './router';
|
|
33
|
+
export * from './select';
|
|
34
|
+
export * from './filter';
|
|
35
|
+
export * from './menu';
|
|
36
|
+
export * from './datetime';
|
|
37
|
+
export * from './resizeObserver';
|
|
38
|
+
export * from './refs';
|
|
39
|
+
export * from './display';
|
|
40
|
+
export * from './state';
|
|
41
|
+
export * from './locale';
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import type { ComputedRef, PropType, Ref } from 'vue';
|
|
2
|
+
export interface IInputSlot {
|
|
3
|
+
id: ComputedRef<string>;
|
|
4
|
+
isDirty: ComputedRef<boolean>;
|
|
5
|
+
isDisabled: ComputedRef<boolean>;
|
|
6
|
+
isReadonly: ComputedRef<boolean>;
|
|
7
|
+
isPure: Ref<boolean>;
|
|
8
|
+
isValid: ComputedRef<boolean | null>;
|
|
9
|
+
isValidating: Ref<boolean>;
|
|
10
|
+
reset: () => void;
|
|
11
|
+
resetValidation: () => void;
|
|
12
|
+
validate: () => Promise<string[]>;
|
|
13
|
+
}
|
|
14
|
+
export interface IInputProps {
|
|
15
|
+
id: string | undefined;
|
|
16
|
+
label: string | undefined;
|
|
17
|
+
description: string | undefined;
|
|
18
|
+
value: any;
|
|
19
|
+
messages: string[] | string;
|
|
20
|
+
persistentMessages: boolean;
|
|
21
|
+
}
|
|
22
|
+
export interface IUseInput {
|
|
23
|
+
id: ComputedRef<string>;
|
|
24
|
+
hasLabel: ComputedRef<boolean>;
|
|
25
|
+
hasDescription: ComputedRef<boolean>;
|
|
26
|
+
}
|
|
27
|
+
export declare const makeInputProps: <Defaults extends {
|
|
28
|
+
id?: unknown;
|
|
29
|
+
label?: unknown;
|
|
30
|
+
description?: unknown;
|
|
31
|
+
value?: unknown;
|
|
32
|
+
messages?: unknown;
|
|
33
|
+
persistentMessages?: unknown;
|
|
34
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
35
|
+
/**
|
|
36
|
+
* Идентификатор
|
|
37
|
+
*/
|
|
38
|
+
id: {
|
|
39
|
+
type: PropType<string>;
|
|
40
|
+
default: undefined;
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* Лейбл
|
|
44
|
+
*/
|
|
45
|
+
label: {
|
|
46
|
+
type: PropType<string>;
|
|
47
|
+
default: undefined;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Описание
|
|
51
|
+
*/
|
|
52
|
+
description: {
|
|
53
|
+
type: PropType<string>;
|
|
54
|
+
default: undefined;
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Значение
|
|
58
|
+
*/
|
|
59
|
+
value: {
|
|
60
|
+
type: PropType<any>;
|
|
61
|
+
default: null;
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* Сообщения подсказки
|
|
65
|
+
*/
|
|
66
|
+
messages: {
|
|
67
|
+
type: PropType<string | string[]>;
|
|
68
|
+
default: () => never[];
|
|
69
|
+
};
|
|
70
|
+
/**
|
|
71
|
+
* Всегда показывать сообщения и подсказки
|
|
72
|
+
*/
|
|
73
|
+
persistentMessages: {
|
|
74
|
+
type: PropType<boolean>;
|
|
75
|
+
default: boolean;
|
|
76
|
+
};
|
|
77
|
+
}, Defaults>;
|
|
78
|
+
export declare function useInput(props: IInputProps, slots: Record<string, unknown>, name?: string): IUseInput;
|
|
79
|
+
export declare function useFilteredInputProps<T extends Record<string, unknown>>(props: T, exclude: string[]): {
|
|
80
|
+
inputProps: [Partial<T>] extends [Ref<any>] ? Ref<any> & Partial<T> : Ref<import("vue").UnwrapRef<Partial<T>>>;
|
|
81
|
+
excludedProps: [Partial<T>] extends [Ref<any>] ? Ref<any> & Partial<T> : Ref<import("vue").UnwrapRef<Partial<T>>>;
|
|
82
|
+
};
|
|
83
|
+
export declare function useFilteredInputAttrs(attrs: Record<string, unknown>): {
|
|
84
|
+
rootAttrs: Ref<{}>;
|
|
85
|
+
inputAttrs: Ref<{}>;
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* Filter attributes that should be applied to
|
|
89
|
+
* the root element of an input component. Remaining
|
|
90
|
+
* attributes should be passed to the <input> element inside.
|
|
91
|
+
*/
|
|
92
|
+
export declare function filterInputAttrs(attrs: Record<string, unknown>): [yes: Partial<Pick<Record<string, unknown>, any>>, no: Omit<Record<string, unknown>, any>];
|
|
93
|
+
/**
|
|
94
|
+
* Filter props for input controls
|
|
95
|
+
* @param props
|
|
96
|
+
* @param exclude
|
|
97
|
+
*/
|
|
98
|
+
export declare function filterInputProps(props: Record<string, unknown>, exclude: string[]): (Partial<Pick<Record<string, unknown>, string>> | Omit<Record<string, unknown>, string>)[];
|
|
99
|
+
export declare const excludeControls: RegExp;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { SelectItemKey } from '../utils';
|
|
2
1
|
import type { PropType, ComputedRef } from 'vue';
|
|
2
|
+
export declare type TItemKey = boolean | string | (string | number)[] | ((item: Record<string, any>, fallback?: any) => any);
|
|
3
3
|
export interface IInternalItem<T = any> {
|
|
4
4
|
title: string;
|
|
5
5
|
value: any;
|
|
@@ -13,14 +13,17 @@ export interface IInternalItem<T = any> {
|
|
|
13
13
|
}
|
|
14
14
|
export interface IItemsProps {
|
|
15
15
|
items: any[];
|
|
16
|
-
itemTitle:
|
|
17
|
-
itemValue:
|
|
18
|
-
itemChildren:
|
|
19
|
-
itemProps:
|
|
16
|
+
itemTitle: TItemKey;
|
|
17
|
+
itemValue: TItemKey;
|
|
18
|
+
itemChildren: TItemKey;
|
|
19
|
+
itemProps: TItemKey;
|
|
20
20
|
returnObject: boolean;
|
|
21
21
|
}
|
|
22
22
|
export interface IUseItems {
|
|
23
23
|
items: ComputedRef<IInternalItem[]>;
|
|
24
|
+
itemsProps: string[];
|
|
25
|
+
transformIn: (value: any[]) => IInternalItem[];
|
|
26
|
+
transformOut: (value: any[]) => any[];
|
|
24
27
|
}
|
|
25
28
|
export declare const makeItemsProps: <Defaults extends {
|
|
26
29
|
items?: unknown;
|
|
@@ -41,28 +44,28 @@ export declare const makeItemsProps: <Defaults extends {
|
|
|
41
44
|
* Ключ для заголовка элемента
|
|
42
45
|
*/
|
|
43
46
|
itemTitle: {
|
|
44
|
-
type: PropType<
|
|
47
|
+
type: PropType<TItemKey>;
|
|
45
48
|
default: string;
|
|
46
49
|
};
|
|
47
50
|
/**
|
|
48
51
|
* Ключ для значения элемента
|
|
49
52
|
*/
|
|
50
53
|
itemValue: {
|
|
51
|
-
type: PropType<
|
|
54
|
+
type: PropType<TItemKey>;
|
|
52
55
|
default: string;
|
|
53
56
|
};
|
|
54
57
|
/**
|
|
55
58
|
* Ключ для дочерних элементов
|
|
56
59
|
*/
|
|
57
60
|
itemChildren: {
|
|
58
|
-
type: PropType<
|
|
61
|
+
type: PropType<TItemKey>;
|
|
59
62
|
default: string;
|
|
60
63
|
};
|
|
61
64
|
/**
|
|
62
65
|
* Ключ для дополнительных свойств элемента
|
|
63
66
|
*/
|
|
64
67
|
itemProps: {
|
|
65
|
-
type: PropType<
|
|
68
|
+
type: PropType<TItemKey>;
|
|
66
69
|
default: string;
|
|
67
70
|
};
|
|
68
71
|
/**
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { Ref, ComputedRef, PropType } from 'vue';
|
|
2
|
+
export interface ILazyProps {
|
|
3
|
+
eager: boolean;
|
|
4
|
+
}
|
|
5
|
+
export interface IUseLazy {
|
|
6
|
+
isBooted: Ref<boolean>;
|
|
7
|
+
hasContent: ComputedRef<boolean>;
|
|
8
|
+
onAfterLeave: () => void;
|
|
9
|
+
}
|
|
10
|
+
export declare const makeLazyProps: <Defaults extends {
|
|
11
|
+
eager?: unknown;
|
|
12
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
13
|
+
/**
|
|
14
|
+
* Принудительно рендерит контент компонента в DOM, даже если компонент скрыт. Полезно для SEO оптимизации.
|
|
15
|
+
*/
|
|
16
|
+
eager: {
|
|
17
|
+
type: PropType<boolean>;
|
|
18
|
+
default: boolean;
|
|
19
|
+
};
|
|
20
|
+
}, Defaults>;
|
|
21
|
+
export declare function useLazy(props: ILazyProps, active: Ref<boolean>): IUseLazy;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { SetupContext } from 'vue';
|
|
2
1
|
import type { ComputedRef, PropType } from 'vue';
|
|
3
2
|
import type { RouteLocationRaw, useLink as TUseLink } from 'vue-router';
|
|
4
3
|
export interface ILinkProps {
|
|
@@ -33,4 +32,4 @@ export declare const makeLinkProps: <Defaults extends {
|
|
|
33
32
|
default: undefined;
|
|
34
33
|
};
|
|
35
34
|
}, Defaults>;
|
|
36
|
-
export declare function useLink(props: ILinkProps,
|
|
35
|
+
export declare function useLink(props: ILinkProps, emit: Function): IUseLink;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ILocale, TAvailableLocale } from '../locale';
|
|
2
|
+
import type { InjectionKey, PropType } from 'vue';
|
|
3
|
+
export interface ILocaleProps {
|
|
4
|
+
locale?: ILocale | TAvailableLocale;
|
|
5
|
+
}
|
|
6
|
+
export declare const LocaleSymbol: InjectionKey<TAvailableLocale | ILocale>;
|
|
7
|
+
export declare const makeLocaleProps: <Defaults extends {
|
|
8
|
+
locale?: unknown;
|
|
9
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
10
|
+
/**
|
|
11
|
+
* Локализация компонента
|
|
12
|
+
*/
|
|
13
|
+
locale: {
|
|
14
|
+
type: PropType<"ru" | "en" | ILocale>;
|
|
15
|
+
default: undefined;
|
|
16
|
+
};
|
|
17
|
+
}, Defaults>;
|
|
18
|
+
export declare function useLocale(props: ILocaleProps): ILocale;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { Ref, PropType, WritableComputedRef } from 'vue';
|
|
2
|
+
import type { IDisabledProps } from './disabled';
|
|
3
|
+
export interface IMenuProps extends IDisabledProps {
|
|
4
|
+
menu: boolean | undefined;
|
|
5
|
+
}
|
|
6
|
+
export interface IUseMenu<MenuRef> {
|
|
7
|
+
internalMenu: WritableComputedRef<boolean | undefined>;
|
|
8
|
+
menuRef: Ref<MenuRef | undefined>;
|
|
9
|
+
}
|
|
10
|
+
export declare const makeMenuProps: <Defaults extends {
|
|
11
|
+
menu?: unknown;
|
|
12
|
+
menuProps?: unknown;
|
|
13
|
+
menuHeight?: unknown;
|
|
14
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
15
|
+
/**
|
|
16
|
+
* Состояние выпадающего меню (открыто/закрыто)
|
|
17
|
+
*/
|
|
18
|
+
menu: {
|
|
19
|
+
type: PropType<boolean | undefined>;
|
|
20
|
+
default: undefined;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Свойства для компонент CdsMenu
|
|
24
|
+
*/
|
|
25
|
+
menuProps: {
|
|
26
|
+
type: PropType<any>;
|
|
27
|
+
default: null;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Максимальная высота выпадающего меню (10rem по умолчанию)
|
|
31
|
+
*/
|
|
32
|
+
menuHeight: {
|
|
33
|
+
type: PropType<string | number>;
|
|
34
|
+
default: number;
|
|
35
|
+
};
|
|
36
|
+
}, Defaults>;
|
|
37
|
+
export declare function useMenu<MenuRef>(props: IMenuProps): IUseMenu<MenuRef>;
|
|
@@ -26,7 +26,7 @@ export interface INestedProps {
|
|
|
26
26
|
'onUpdate:selected'?: ((val: unknown[]) => void) | undefined;
|
|
27
27
|
'onUpdate:opened'?: ((val: unknown[]) => void) | undefined;
|
|
28
28
|
}
|
|
29
|
-
export declare const
|
|
29
|
+
export declare const NestedKey: InjectionKey<TNestedProvide>;
|
|
30
30
|
export declare const emptyNested: TNestedProvide;
|
|
31
31
|
export declare const makeNestedProps: <Defaults extends {
|
|
32
32
|
selectStrategy?: unknown;
|
|
@@ -56,7 +56,7 @@ export declare const makeNestedProps: <Defaults extends {
|
|
|
56
56
|
*/
|
|
57
57
|
required: BooleanConstructor;
|
|
58
58
|
}, Defaults>;
|
|
59
|
-
export declare const useNested: (props: INestedProps, ctx: SetupContext<any>) => TNestedProvide['root'];
|
|
59
|
+
export declare const useNested: (props: INestedProps, ctx: SetupContext<any[]>) => TNestedProvide['root'];
|
|
60
60
|
export declare const useNestedItem: (id: Ref<unknown>, isGroup: boolean) => {
|
|
61
61
|
id: import("vue").ComputedRef<{}>;
|
|
62
62
|
open: (open: boolean, event: Event) => void;
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { PropType } from 'vue';
|
|
2
|
+
export interface IOverlayProps {
|
|
3
|
+
attach: boolean | string | Element | undefined;
|
|
4
|
+
contained: boolean | undefined;
|
|
5
|
+
disabled: boolean | undefined;
|
|
6
|
+
persistent: boolean | undefined;
|
|
7
|
+
scrim: boolean | string | undefined;
|
|
8
|
+
modelValue: boolean | undefined;
|
|
9
|
+
zIndex: number | string | undefined;
|
|
10
|
+
contentClasses: string | string[] | Record<string, boolean> | undefined;
|
|
11
|
+
contentProps: Record<string, unknown> | undefined;
|
|
12
|
+
}
|
|
13
|
+
export declare const makeOverlayProps: <Defaults extends {
|
|
14
|
+
attach?: unknown;
|
|
15
|
+
contained?: unknown;
|
|
16
|
+
disabled?: unknown;
|
|
17
|
+
persistent?: unknown;
|
|
18
|
+
scrim?: unknown;
|
|
19
|
+
modelValue?: unknown;
|
|
20
|
+
closeOnBack?: unknown;
|
|
21
|
+
zIndex?: unknown;
|
|
22
|
+
contentClasses?: unknown;
|
|
23
|
+
contentProps?: unknown;
|
|
24
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
25
|
+
/**
|
|
26
|
+
* Указывает, к какому DOM элементу будет прикреплен компонент.
|
|
27
|
+
* По умолчанию прикрепляется к body.
|
|
28
|
+
* Если передана строка, то ищет элемент по querySelector.
|
|
29
|
+
* Если передан объект, то считает его допустимым Node элементом.
|
|
30
|
+
*/
|
|
31
|
+
attach: {
|
|
32
|
+
type: PropType<string | boolean | Element>;
|
|
33
|
+
default: boolean;
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Указывает, что компонент будет прикреплен к родительскому элементу. Подразумевает absolute и attach
|
|
37
|
+
*/
|
|
38
|
+
contained: {
|
|
39
|
+
type: PropType<boolean>;
|
|
40
|
+
default: boolean;
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* Блокирует возможность клика или фокуса всплывающего компонента
|
|
44
|
+
*/
|
|
45
|
+
disabled: {
|
|
46
|
+
type: PropType<boolean>;
|
|
47
|
+
default: boolean;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Клик за пределами компонента или esc не будет закрывать его
|
|
51
|
+
*/
|
|
52
|
+
persistent: {
|
|
53
|
+
type: PropType<boolean>;
|
|
54
|
+
default: boolean;
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Фон для компонента. Строкой можно передать цвет фона.
|
|
58
|
+
*/
|
|
59
|
+
scrim: {
|
|
60
|
+
type: PropType<string | boolean>;
|
|
61
|
+
default: boolean;
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* Значение v-model. Управляет видимостью компонента.
|
|
65
|
+
*/
|
|
66
|
+
modelValue: {
|
|
67
|
+
type: PropType<boolean>;
|
|
68
|
+
default: boolean;
|
|
69
|
+
};
|
|
70
|
+
/**
|
|
71
|
+
* Закрывать ли компонент при навигации назад
|
|
72
|
+
*/
|
|
73
|
+
closeOnBack: {
|
|
74
|
+
type: PropType<boolean>;
|
|
75
|
+
default: boolean;
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Значение z-index
|
|
79
|
+
*/
|
|
80
|
+
zIndex: {
|
|
81
|
+
type: PropType<string | number>;
|
|
82
|
+
default: number;
|
|
83
|
+
};
|
|
84
|
+
/**
|
|
85
|
+
* Классы для контента компонента
|
|
86
|
+
*/
|
|
87
|
+
contentClasses: {
|
|
88
|
+
type: PropType<string | string[] | Record<string, boolean>>;
|
|
89
|
+
default: null;
|
|
90
|
+
};
|
|
91
|
+
/**
|
|
92
|
+
* Свойства для контента компонента
|
|
93
|
+
*/
|
|
94
|
+
contentProps: {
|
|
95
|
+
type: PropType<Record<string, unknown>>;
|
|
96
|
+
default: () => {};
|
|
97
|
+
};
|
|
98
|
+
}, Defaults>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ComputedRef, PropType } from 'vue';
|
|
2
|
+
export interface IReadonlyProps {
|
|
3
|
+
readonly: boolean;
|
|
4
|
+
}
|
|
5
|
+
export interface IUseReadonly {
|
|
6
|
+
readonlyClasses: ComputedRef<string | undefined>;
|
|
7
|
+
}
|
|
8
|
+
export declare const makeReadonlyProps: <Defaults extends {
|
|
9
|
+
readonly?: unknown;
|
|
10
|
+
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
|
|
11
|
+
/**
|
|
12
|
+
* Только для чтения
|
|
13
|
+
*/
|
|
14
|
+
readonly: {
|
|
15
|
+
type: PropType<boolean>;
|
|
16
|
+
default: boolean;
|
|
17
|
+
};
|
|
18
|
+
}, Defaults>;
|
|
19
|
+
export declare function useReadonly(props: IReadonlyProps): IUseReadonly;
|