@central-design-system/components 3.0.0-beta.0 → 3.0.0-beta.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.
Files changed (140) hide show
  1. package/dist/cds.css +1 -1
  2. package/dist/cds.d.ts +3 -0
  3. package/dist/cds.es.js +9684 -8449
  4. package/dist/cds.umd.js +7 -3
  5. package/dist/components/CdsAutocomplete/CdsAutocomplete.vue.d.ts +114 -62
  6. package/dist/components/CdsBadge/CdsBadge.vue.d.ts +35 -14
  7. package/dist/components/CdsBreadcrumbs/CdsBreadcrumbs.vue.d.ts +12 -5
  8. package/dist/components/CdsBreadcrumbs/CdsBreadcrumbsItem.vue.d.ts +12 -6
  9. package/dist/components/CdsButton/CdsButton.vue.d.ts +25 -14
  10. package/dist/components/CdsCheckbox/CdsCheckbox.vue.d.ts +11 -0
  11. package/dist/components/CdsCheckbox/CdsCheckboxGroup.vue.d.ts +13 -0
  12. package/dist/components/CdsCombobox/CdsCombobox.vue.d.ts +184 -470
  13. package/dist/components/CdsContainer/CdsContainer.vue.d.ts +37 -24
  14. package/dist/components/CdsContainer/CdsContainerItem.vue.d.ts +1 -1
  15. package/dist/components/CdsContentSwitcher/CdsContentSwitcher.vue.d.ts +66 -0
  16. package/dist/components/CdsContentSwitcher/CdsContentSwitcherItem.vue.d.ts +212 -0
  17. package/dist/components/CdsContentSwitcher/index.d.ts +2 -0
  18. package/dist/components/CdsDatePicker/CdsDatePicker.vue.d.ts +12 -7
  19. package/dist/components/CdsDrawer/CdsDrawer.vue.d.ts +12 -0
  20. package/dist/components/CdsDropdown/CdsDropdown.vue.d.ts +236 -485
  21. package/dist/components/CdsEmptyState/CdsEmptyState.vue.d.ts +3 -3
  22. package/dist/components/CdsExpandablePanel/CdsExpandablePanel.vue.d.ts +11 -11
  23. package/dist/components/CdsExpandablePanel/CdsExpandablePanelContent.vue.d.ts +1 -1
  24. package/dist/components/CdsExpandablePanel/CdsExpandablePanelTitle.vue.d.ts +11 -11
  25. package/dist/components/CdsExpandablePanel/CdsExpandablePanels.vue.d.ts +14 -3
  26. package/dist/components/CdsExpandablePanel/composable/expandablePanelTitleProps.d.ts +2 -2
  27. package/dist/components/CdsFooter/CdsFooter.vue.d.ts +12 -1
  28. package/dist/components/CdsForm/CdsForm.vue.d.ts +12 -28
  29. package/dist/components/CdsHeader/CdsHeader.vue.d.ts +12 -1
  30. package/dist/components/CdsIcon/CdsIcon.vue.d.ts +16 -3
  31. package/dist/components/CdsInput/CdsInput.vue.d.ts +23 -39
  32. package/dist/components/CdsInput/CdsInputMessages.vue.d.ts +5 -5
  33. package/dist/components/CdsLayout/CdsLayout.vue.d.ts +13 -4
  34. package/dist/components/CdsLink/CdsLink.vue.d.ts +12 -0
  35. package/dist/components/CdsList/CdsList.vue.d.ts +12 -5
  36. package/dist/components/CdsList/CdsListGroup.vue.d.ts +7 -7
  37. package/dist/components/CdsList/CdsListItem.vue.d.ts +14 -26
  38. package/dist/components/CdsLoader/CdsLoader.vue.d.ts +12 -0
  39. package/dist/components/CdsMain/CdsMain.vue.d.ts +1 -1
  40. package/dist/components/CdsMenu/CdsMenu.vue.d.ts +12 -336
  41. package/dist/components/CdsModal/CdsModal.vue.d.ts +12 -341
  42. package/dist/components/CdsNotification/CdsNotification.vue.d.ts +35 -24
  43. package/dist/components/CdsNotification/CdsNotificationAlert.vue.d.ts +28 -351
  44. package/dist/components/CdsNotification/composable/notification.d.ts +3 -3
  45. package/dist/components/CdsOverlay/CdsOverlay.vue.d.ts +2 -8
  46. package/dist/components/CdsOverlay/composable/locationStrategies.d.ts +11 -11
  47. package/dist/components/CdsPage/CdsPage.vue.d.ts +1 -1
  48. package/dist/components/CdsPagination/CdsPagination.vue.d.ts +13 -7
  49. package/dist/components/CdsProgress/CdsProgress.vue.d.ts +13 -2
  50. package/dist/components/CdsRadioButton/CdsRadio.vue.d.ts +224 -0
  51. package/dist/components/CdsRadioButton/CdsRadioButton.vue.d.ts +13 -0
  52. package/dist/components/CdsSelect/CdsSelect.vue.d.ts +77 -71
  53. package/dist/components/CdsSidebar/CdsSidebar.vue.d.ts +30 -8
  54. package/dist/components/CdsSkeletonLoader/CdsSkeletonLoader.vue.d.ts +14 -3
  55. package/dist/components/CdsSlideGroup/CdsSlideGroup.vue.d.ts +19 -19
  56. package/dist/components/CdsStages/CdsStages.vue.d.ts +12 -0
  57. package/dist/components/CdsStatus/CdsStatus.vue.d.ts +12 -0
  58. package/dist/components/CdsSteps/CdsSteps.vue.d.ts +31 -28
  59. package/dist/components/CdsTable/CdsTable.vue.d.ts +42 -16
  60. package/dist/components/CdsTable/components/Table/InternalTable.d.ts +23 -5
  61. package/dist/components/CdsTable/components/TableProvider.d.ts +33 -4
  62. package/dist/components/CdsTable/composable/table.d.ts +7 -1
  63. package/dist/components/CdsTabs/CdsTab.vue.d.ts +10 -10
  64. package/dist/components/CdsTabs/CdsTabs.vue.d.ts +48 -37
  65. package/dist/components/CdsTag/CdsTag.vue.d.ts +12 -0
  66. package/dist/components/CdsTextArea/CdsTextArea.vue.d.ts +81 -67
  67. package/dist/components/CdsTextInput/CdsTextInput.vue.d.ts +87 -73
  68. package/dist/components/CdsTimePicker/CdsTimePicker.vue.d.ts +11 -0
  69. package/dist/components/CdsToggle/CdsToggle.vue.d.ts +14 -9
  70. package/dist/components/CdsToolbar/CdsToolbar.vue.d.ts +11 -0
  71. package/dist/components/CdsTooltip/CdsTooltip.vue.d.ts +20 -335
  72. package/dist/components/CdsUploader/CdsUploader.vue.d.ts +61 -389
  73. package/dist/components/CdsUploader/components/AjaxUploader.d.ts +16 -16
  74. package/dist/components/CdsUploader/components/UploadList/ListItem.d.ts +42 -24
  75. package/dist/components/CdsUploader/components/UploadList/UploadList.d.ts +42 -24
  76. package/dist/components/CdsUploader/composable/upload.d.ts +25 -15
  77. package/dist/components/index.d.ts +3 -0
  78. package/dist/composable/datetime.d.ts +2 -2
  79. package/dist/composable/delay.d.ts +2 -2
  80. package/dist/composable/field.d.ts +5 -3
  81. package/dist/composable/filter.d.ts +8 -0
  82. package/dist/composable/form.d.ts +1 -1
  83. package/dist/composable/group.d.ts +2 -2
  84. package/dist/composable/icon.d.ts +2 -2
  85. package/dist/composable/index.d.ts +1 -0
  86. package/dist/composable/items.d.ts +6 -0
  87. package/dist/composable/loading.d.ts +2 -2
  88. package/dist/composable/nested/nested.d.ts +1 -2
  89. package/dist/composable/select.d.ts +31 -3
  90. package/dist/composable/tag.d.ts +0 -3
  91. package/dist/composable/theme.d.ts +82 -0
  92. package/dist/composable/variant.d.ts +1 -1
  93. package/dist/create.d.ts +2 -1
  94. package/dist/directives/index.d.ts +1 -0
  95. package/dist/directives/intersect/index.d.ts +19 -0
  96. package/dist/globals.d.ts +8 -0
  97. package/dist/themes/b2b.d.ts +26 -0
  98. package/dist/themes/cds.d.ts +26 -0
  99. package/dist/themes/dark.d.ts +26 -0
  100. package/dist/themes/index.d.ts +5 -0
  101. package/dist/themes/promo.d.ts +26 -0
  102. package/dist/themes/themes.d.ts +10 -0
  103. package/dist/transitions/createTransition.d.ts +1 -1
  104. package/dist/transitions/index.d.ts +10 -10
  105. package/dist/utils/colors.d.ts +368 -0
  106. package/dist/utils/colorsUtils/APCA.d.ts +7 -0
  107. package/dist/utils/colorsUtils/index.d.ts +1 -0
  108. package/dist/utils/colorsUtils/transformCIELAB.d.ts +3 -0
  109. package/dist/utils/colorsUtils/transformSRGB.d.ts +3 -0
  110. package/dist/utils/colorsUtils/utils.d.ts +41 -0
  111. package/dist/utils/date/date.d.ts +12 -12
  112. package/dist/utils/helpers.d.ts +30 -0
  113. package/dist/utils/index.d.ts +2 -0
  114. package/package.json +1 -1
  115. package/src/scss/modules/grid/_mixins.scss +4 -2
  116. package/src/scss/themes/index.ts +1 -1
  117. package/src/scss/utility/display.scss +56 -5
  118. package/src/scss/utility/flexbox.scss +26 -28
  119. package/src/scss/utility/index.scss +0 -2
  120. package/src/scss/utility/layout.scss +65 -3
  121. package/src/scss/utility/spacing.scss +46 -86
  122. package/src/scss/utility/variables/display.scss +10 -0
  123. package/src/scss/utility/variables/exports/_display.scss +7 -0
  124. package/src/scss/utility/variables/exports/_flex.scss +13 -0
  125. package/src/scss/utility/variables/exports/_overflow.scss +7 -0
  126. package/src/scss/utility/variables/exports/_position.scss +7 -0
  127. package/src/scss/utility/variables/exports/_spacing.scss +14 -0
  128. package/src/scss/utility/variables/exports/_visibility.scss +7 -0
  129. package/src/scss/utility/variables/exports/_widthHeight.scss +7 -0
  130. package/src/scss/utility/variables/flex.scss +140 -0
  131. package/src/scss/utility/variables/index.scss +11 -0
  132. package/src/scss/utility/variables/overflow.scss +6 -0
  133. package/src/scss/utility/variables/position.scss +7 -0
  134. package/src/scss/utility/variables/spacing.scss +37 -0
  135. package/src/scss/utility/variables/visibility.scss +5 -0
  136. package/src/scss/utility/variables/widthHeight.scss +69 -0
  137. package/src/scss/utility/generatedFiles/generatedStyles.json +0 -1
  138. package/src/scss/utility/generatedFiles/generatedStyles.scss +0 -300
  139. package/src/scss/utility/typography.scss +0 -16
  140. package/src/scss/utility/variables.scss +0 -116
@@ -23,7 +23,7 @@ export interface IFormProps {
23
23
  readonly: boolean;
24
24
  firstFail: boolean;
25
25
  modelValue: boolean | null;
26
- validateOn?: IValidationProps['validateOn'];
26
+ validateOn: IValidationProps['validateOn'];
27
27
  }
28
28
  interface IFormField {
29
29
  id: number | string;
@@ -6,13 +6,13 @@ export interface IGroupItem {
6
6
  disabled: Ref<boolean | undefined>;
7
7
  }
8
8
  export interface IGroupProps {
9
- disabled: boolean;
9
+ disabled?: boolean;
10
10
  modelValue: unknown;
11
11
  multiple?: boolean;
12
12
  required?: boolean | 'force';
13
13
  max?: number;
14
14
  selectedClass: string | undefined;
15
- 'onUpdate:modelValue': ((val: unknown) => void) | undefined;
15
+ 'onUpdate:modelValue'?: ((val: unknown) => void) | undefined;
16
16
  }
17
17
  export interface IGroupProvide {
18
18
  selected: Ref<Readonly<number[]>>;
@@ -22,7 +22,7 @@ export declare const makeIconProps: <Defaults extends {
22
22
  * Иконка в начале элемента
23
23
  */
24
24
  prependIcon: {
25
- type: PropType<"search" | "link" | "list" | "filters" | "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" | "checkbox-fill" | "checkbox" | "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" | "funnel" | "globe" | "infinity" | "info-fill" | "info" | "list-search" | "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">;
25
+ type: PropType<"search" | "link" | "list" | "filters" | "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" | "checkbox-fill" | "checkbox" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chocholate-menu" | "chocolate-menu" | "clock" | "collapse" | "comment" | "company" | "compare" | "copy" | "data-cards" | "delete" | "directory" | "doc-download" | "doc" | "download" | "draggable" | "edit" | "enter" | "error-fill" | "error" | "expand" | "external" | "facebook-fill" | "facebook" | "flag" | "funnel" | "globe" | "infinity" | "info-fill" | "info" | "insert" | "list-search" | "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" | "source" | "star-fill" | "star" | "telegram" | "timer" | "tool" | "truck" | "unlocked" | "upload" | "user-avatar" | "user-group" | "visibility-off" | "visibility-on" | "vk" | "winner" | "workspace" | "youtube">;
26
26
  default: undefined;
27
27
  validator: (value: TCdsIconsName) => boolean;
28
28
  };
@@ -30,7 +30,7 @@ export declare const makeIconProps: <Defaults extends {
30
30
  * Иконка в конце элемента
31
31
  */
32
32
  appendIcon: {
33
- type: PropType<"search" | "link" | "list" | "filters" | "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" | "checkbox-fill" | "checkbox" | "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" | "funnel" | "globe" | "infinity" | "info-fill" | "info" | "list-search" | "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">;
33
+ type: PropType<"search" | "link" | "list" | "filters" | "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" | "checkbox-fill" | "checkbox" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chocholate-menu" | "chocolate-menu" | "clock" | "collapse" | "comment" | "company" | "compare" | "copy" | "data-cards" | "delete" | "directory" | "doc-download" | "doc" | "download" | "draggable" | "edit" | "enter" | "error-fill" | "error" | "expand" | "external" | "facebook-fill" | "facebook" | "flag" | "funnel" | "globe" | "infinity" | "info-fill" | "info" | "insert" | "list-search" | "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" | "source" | "star-fill" | "star" | "telegram" | "timer" | "tool" | "truck" | "unlocked" | "upload" | "user-avatar" | "user-group" | "visibility-off" | "visibility-on" | "vk" | "winner" | "workspace" | "youtube">;
34
34
  default: undefined;
35
35
  validator: (value: TCdsIconsName) => boolean;
36
36
  };
@@ -45,3 +45,4 @@ export * from './group';
45
45
  export * from './ssrBoot';
46
46
  export * from './variant';
47
47
  export * from './layout';
48
+ export * from './theme';
@@ -25,6 +25,12 @@ export interface IUseItems {
25
25
  transformIn: (value: any[]) => IInternalItem[];
26
26
  transformOut: (value: any[]) => any[];
27
27
  }
28
+ export interface IItemSlotProps {
29
+ isActive: boolean;
30
+ isSelected: boolean;
31
+ isIndeterminate: boolean;
32
+ select: (selected: boolean, event?: Event) => void;
33
+ }
28
34
  export declare const makeItemsProps: <Defaults extends {
29
35
  items?: unknown;
30
36
  itemTitle?: unknown;
@@ -1,5 +1,5 @@
1
1
  import type { ComputedRef, PropType } from 'vue';
2
- export interface ILoadingProp {
2
+ export interface ILoadingProps {
3
3
  loading: boolean;
4
4
  }
5
5
  export interface IUseLoading {
@@ -17,4 +17,4 @@ export declare const makeLoadingProps: <Defaults extends {
17
17
  default: boolean;
18
18
  };
19
19
  }, Defaults>;
20
- export declare function useLoading(props: ILoadingProp): IUseLoading;
20
+ export declare function useLoading(props: ILoadingProps): IUseLoading;
@@ -1,7 +1,7 @@
1
1
  import type { Ref, InjectionKey, PropType, SetupContext } from 'vue';
2
2
  import type { TSelectStrategyProp } from './selectStrategies';
3
3
  import type { TOpenStrategyProp } from './openStrategies';
4
- declare type TNestedProvide = {
4
+ export declare type TNestedProvide = {
5
5
  id: Ref<unknown>;
6
6
  isGroupActivator?: boolean;
7
7
  root: {
@@ -82,4 +82,3 @@ export declare const useNestedItem: (id: Ref<unknown>, isGroup: boolean) => {
82
82
  };
83
83
  };
84
84
  export declare const useNestedGroupActivator: () => void;
85
- export {};
@@ -1,6 +1,7 @@
1
1
  import { MaybePick } from '../utils';
2
2
  import type { PropType, ComputedRef, Ref } from 'vue';
3
3
  import type { IInternalItem, IUseItems } from './items';
4
+ import type { TCdsIconsName } from '@central-design-system/icons';
4
5
  export interface ISelectProps {
5
6
  multiple: boolean;
6
7
  openOnClear: boolean;
@@ -15,7 +16,9 @@ export declare const makeSelectProps: <Defaults extends {
15
16
  hideSelected?: unknown;
16
17
  hideNoData?: unknown;
17
18
  isSelectAll?: unknown;
19
+ ellipsis?: unknown;
18
20
  listProps?: unknown;
21
+ menuIcon?: unknown;
19
22
  } = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
20
23
  /**
21
24
  * Множественный выбор элементов
@@ -52,6 +55,13 @@ export declare const makeSelectProps: <Defaults extends {
52
55
  type: PropType<boolean>;
53
56
  default: boolean;
54
57
  };
58
+ /**
59
+ * Отображать элементы выбранного списка в одну строку
60
+ */
61
+ ellipsis: {
62
+ type: PropType<boolean>;
63
+ default: boolean;
64
+ };
55
65
  /**
56
66
  * Свойства для списка
57
67
  */
@@ -70,8 +80,14 @@ export declare const makeSelectProps: <Defaults extends {
70
80
  required: boolean;
71
81
  selectStrategy: NonNullable<import("./nested/selectStrategies").TSelectStrategyProp>;
72
82
  openStrategy: NonNullable<import("./nested/openStrategies").TOpenStrategyProp>;
83
+ theme: string;
73
84
  lines: false | "one" | "two" | "three";
74
85
  }> & Omit<Readonly<import("vue").ExtractPropTypes<{
86
+ theme: {
87
+ type: PropType<string>;
88
+ available: readonly ["cds", "b2b", "promo", "dark"];
89
+ default: undefined;
90
+ };
75
91
  selectStrategy: {
76
92
  type: PropType<NonNullable<import("./nested/selectStrategies").TSelectStrategyProp>>;
77
93
  default: NonNullable<import("./nested/selectStrategies").TSelectStrategyProp>;
@@ -97,7 +113,9 @@ export declare const makeSelectProps: <Defaults extends {
97
113
  available: readonly ["xs", "sm", "md", "lg", "xl"];
98
114
  validator: (value: "xs" | "sm" | "md" | "lg" | "xl") => boolean;
99
115
  }, "default" | "type"> & {
100
- type: PropType<NonNullable<"xs" | "sm" | "md" | "lg" | "xl">>;
116
+ type: PropType<NonNullable<"xs" | "sm" | "md" | "lg" | "xl">>; /**
117
+ * Иконка выпадающего меню
118
+ */
101
119
  default: NonNullable<"xs" | "sm" | "md" | "lg" | "xl">;
102
120
  };
103
121
  tag: {
@@ -123,7 +141,9 @@ export declare const makeSelectProps: <Defaults extends {
123
141
  };
124
142
  itemProps: {
125
143
  type: PropType<import("./items").TItemKey>;
126
- default: string;
144
+ default: string; /**
145
+ * Иконка выпадающего меню
146
+ */
127
147
  };
128
148
  returnObject: {
129
149
  type: PropType<boolean>;
@@ -148,9 +168,17 @@ export declare const makeSelectProps: <Defaults extends {
148
168
  path: unknown[];
149
169
  event: Event;
150
170
  }) => any) | undefined;
151
- } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "items" | "itemTitle" | "itemValue" | "itemChildren" | "itemProps" | "returnObject" | "tag" | "size" | "disabled" | "dark" | "required" | "selectStrategy" | "openStrategy" | "lines">, keyof import("vue").VNodeProps | keyof import("vue").AllowedComponentProps>>;
171
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "items" | "itemTitle" | "itemValue" | "itemChildren" | "itemProps" | "returnObject" | "tag" | "size" | "disabled" | "dark" | "required" | "selectStrategy" | "openStrategy" | "theme" | "lines">, keyof import("vue").VNodeProps | keyof import("vue").AllowedComponentProps>>;
152
172
  default: undefined;
153
173
  };
174
+ /**
175
+ * Иконка выпадающего меню
176
+ */
177
+ menuIcon: {
178
+ type: PropType<"search" | "link" | "list" | "filters" | "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" | "checkbox-fill" | "checkbox" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chocholate-menu" | "chocolate-menu" | "clock" | "collapse" | "comment" | "company" | "compare" | "copy" | "data-cards" | "delete" | "directory" | "doc-download" | "doc" | "download" | "draggable" | "edit" | "enter" | "error-fill" | "error" | "expand" | "external" | "facebook-fill" | "facebook" | "flag" | "funnel" | "globe" | "infinity" | "info-fill" | "info" | "insert" | "list-search" | "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" | "source" | "star-fill" | "star" | "telegram" | "timer" | "tool" | "truck" | "unlocked" | "upload" | "user-avatar" | "user-group" | "visibility-off" | "visibility-on" | "vk" | "winner" | "workspace" | "youtube">;
179
+ default: string;
180
+ validator: (value: TCdsIconsName) => boolean;
181
+ };
154
182
  }, Defaults>;
155
183
  export declare function useSelect(props: ISelectProps, items: ComputedRef<IInternalItem[]> | Ref<IInternalItem[]>, transformIn: IUseItems['transformIn'], transformOut: IUseItems['transformOut']): {
156
184
  model: Ref<readonly IInternalItem<any>[]> & {
@@ -1,7 +1,4 @@
1
1
  import type { PropType } from 'vue';
2
- export interface ITagProps {
3
- tag: string;
4
- }
5
2
  export declare const makeTagProps: <Defaults extends {
6
3
  tag?: unknown;
7
4
  } = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
@@ -0,0 +1,82 @@
1
+ import { ComputedRef } from 'vue';
2
+ import type { App, DeepReadonly, InjectionKey, PropType, Ref } from 'vue';
3
+ import type { TThemes } from '../themes';
4
+ declare type DeepPartial<T> = T extends object ? {
5
+ [P in keyof T]?: DeepPartial<T[P]>;
6
+ } : T;
7
+ export declare type IThemeOptions = false | {
8
+ cspNonce?: string;
9
+ defaultTheme?: TThemes | string;
10
+ variations?: false | VariationOptions;
11
+ themes?: Record<string, ThemeDefinition>;
12
+ };
13
+ export declare type ThemeDefinition = DeepPartial<InternalThemeDefinition>;
14
+ export declare type TTheme = typeof availableTheme[number];
15
+ export interface Colors extends BaseColors, OnColors {
16
+ [key: string]: string;
17
+ }
18
+ interface VariationOptions {
19
+ colors: string[];
20
+ lighten: number;
21
+ darken: number;
22
+ }
23
+ interface InternalThemeDefinition {
24
+ dark: boolean;
25
+ colors: Colors;
26
+ variables: Record<string, string | number>;
27
+ }
28
+ interface BaseColors {
29
+ background: string;
30
+ surface: string;
31
+ primary: string;
32
+ secondary: string;
33
+ success: string;
34
+ warning: string;
35
+ info: string;
36
+ error: string;
37
+ }
38
+ interface OnColors {
39
+ 'on-background': string;
40
+ 'on-surface': string;
41
+ 'on-primary': string;
42
+ 'on-secondary': string;
43
+ 'on-success': string;
44
+ 'on-warning': string;
45
+ 'on-info': string;
46
+ 'on-error': string;
47
+ }
48
+ export interface ThemeInstance {
49
+ readonly isDisabled: boolean;
50
+ readonly themes: Ref<Record<string, InternalThemeDefinition>>;
51
+ readonly name: Readonly<Ref<string>>;
52
+ readonly current: DeepReadonly<Ref<InternalThemeDefinition>>;
53
+ readonly computedThemes: DeepReadonly<Ref<Record<string, InternalThemeDefinition>>>;
54
+ readonly themeClasses: Readonly<ComputedRef<string | undefined>>;
55
+ readonly styles: Readonly<ComputedRef<string>>;
56
+ readonly global: {
57
+ readonly name: Ref<string>;
58
+ readonly current: DeepReadonly<Ref<InternalThemeDefinition>>;
59
+ };
60
+ }
61
+ export declare const ThemeSymbol: InjectionKey<ThemeInstance>;
62
+ export declare const availableTheme: readonly ["cds", "b2b", "promo", "dark"];
63
+ export declare const makeThemeProps: <Defaults extends {
64
+ theme?: unknown;
65
+ } = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
66
+ /**
67
+ * Тема
68
+ */
69
+ theme: {
70
+ type: PropType<string>;
71
+ available: readonly ["cds", "b2b", "promo", "dark"];
72
+ default: undefined;
73
+ };
74
+ }, Defaults>;
75
+ export declare function createTheme(options?: IThemeOptions): ThemeInstance & {
76
+ install: (app: App) => void;
77
+ };
78
+ export declare function provideTheme(props: {
79
+ theme?: string;
80
+ }): ThemeInstance;
81
+ export declare function useTheme(): ThemeInstance;
82
+ export {};
@@ -15,7 +15,7 @@ export declare const makeVariantProps: <Defaults extends {
15
15
  * Вариант отображения
16
16
  */
17
17
  variant: {
18
- type: PropType<any>;
18
+ type: PropType<"default" | "important">;
19
19
  default: string;
20
20
  validator: (value: TVariant) => boolean;
21
21
  };
package/dist/create.d.ts CHANGED
@@ -1,12 +1,13 @@
1
1
  import { ILocale, TAvailableLocale } from './locale';
2
2
  import type { App } from 'vue';
3
- import type { IDisplayOptions } from './composable';
3
+ import type { IDisplayOptions, IThemeOptions } from './composable';
4
4
  export interface ICdsOptions {
5
5
  components?: Record<string, any>;
6
6
  directives?: Record<string, any>;
7
7
  icons?: Record<string, any>;
8
8
  illustrations?: Record<string, any>;
9
9
  display?: IDisplayOptions;
10
+ theme?: IThemeOptions;
10
11
  cssGrid?: boolean;
11
12
  ssr?: boolean;
12
13
  locale?: TAvailableLocale | ILocale;
@@ -1,2 +1,3 @@
1
1
  export { ClickOutside } from './click-outside';
2
2
  export { Touch } from './touch';
3
+ export { Intersect } from './intersect';
@@ -0,0 +1,19 @@
1
+ import type { DirectiveBinding } from 'vue';
2
+ declare type ObserveHandler = (isIntersecting: boolean, entries: IntersectionObserverEntry[], observer: IntersectionObserver) => void;
3
+ export interface ObserverDirectiveBinding extends Omit<DirectiveBinding, 'modifiers' | 'value'> {
4
+ value?: ObserveHandler | {
5
+ handler: ObserveHandler;
6
+ options?: IntersectionObserverInit;
7
+ };
8
+ modifiers: {
9
+ once?: boolean;
10
+ quiet?: boolean;
11
+ };
12
+ }
13
+ declare function mounted(el: HTMLElement, binding: ObserverDirectiveBinding): void;
14
+ declare function unmounted(el: HTMLElement, binding: ObserverDirectiveBinding): void;
15
+ export declare const Intersect: {
16
+ mounted: typeof mounted;
17
+ unmounted: typeof unmounted;
18
+ };
19
+ export default Intersect;
package/dist/globals.d.ts CHANGED
@@ -17,6 +17,14 @@ declare global {
17
17
  _touchHandlers?: {
18
18
  [_uid: number]: ITouchStoredHandlers;
19
19
  };
20
+ _observe?: Record<
21
+ number,
22
+ | {
23
+ init: boolean;
24
+ observer: IntersectionObserver;
25
+ }
26
+ | undefined
27
+ >;
20
28
  }
21
29
 
22
30
  export const __VUE_OPTIONS_API__: boolean | undefined;
@@ -0,0 +1,26 @@
1
+ declare const _default: {
2
+ dark?: boolean | undefined;
3
+ colors?: {
4
+ [x: string]: string | undefined;
5
+ background?: string | undefined;
6
+ surface?: string | undefined;
7
+ primary?: string | undefined;
8
+ secondary?: string | undefined;
9
+ success?: string | undefined;
10
+ warning?: string | undefined;
11
+ info?: string | undefined;
12
+ error?: string | undefined;
13
+ 'on-background'?: string | undefined;
14
+ 'on-surface'?: string | undefined;
15
+ 'on-primary'?: string | undefined;
16
+ 'on-secondary'?: string | undefined;
17
+ 'on-success'?: string | undefined;
18
+ 'on-warning'?: string | undefined;
19
+ 'on-info'?: string | undefined;
20
+ 'on-error'?: string | undefined;
21
+ } | undefined;
22
+ variables?: {
23
+ [x: string]: string | number | undefined;
24
+ } | undefined;
25
+ };
26
+ export default _default;
@@ -0,0 +1,26 @@
1
+ declare const _default: {
2
+ dark?: boolean | undefined;
3
+ colors?: {
4
+ [x: string]: string | undefined;
5
+ background?: string | undefined;
6
+ surface?: string | undefined;
7
+ primary?: string | undefined;
8
+ secondary?: string | undefined;
9
+ success?: string | undefined;
10
+ warning?: string | undefined;
11
+ info?: string | undefined;
12
+ error?: string | undefined;
13
+ 'on-background'?: string | undefined;
14
+ 'on-surface'?: string | undefined;
15
+ 'on-primary'?: string | undefined;
16
+ 'on-secondary'?: string | undefined;
17
+ 'on-success'?: string | undefined;
18
+ 'on-warning'?: string | undefined;
19
+ 'on-info'?: string | undefined;
20
+ 'on-error'?: string | undefined;
21
+ } | undefined;
22
+ variables?: {
23
+ [x: string]: string | number | undefined;
24
+ } | undefined;
25
+ };
26
+ export default _default;
@@ -0,0 +1,26 @@
1
+ declare const _default: {
2
+ dark?: boolean | undefined;
3
+ colors?: {
4
+ [x: string]: string | undefined;
5
+ background?: string | undefined;
6
+ surface?: string | undefined;
7
+ primary?: string | undefined;
8
+ secondary?: string | undefined;
9
+ success?: string | undefined;
10
+ warning?: string | undefined;
11
+ info?: string | undefined;
12
+ error?: string | undefined;
13
+ 'on-background'?: string | undefined;
14
+ 'on-surface'?: string | undefined;
15
+ 'on-primary'?: string | undefined;
16
+ 'on-secondary'?: string | undefined;
17
+ 'on-success'?: string | undefined;
18
+ 'on-warning'?: string | undefined;
19
+ 'on-info'?: string | undefined;
20
+ 'on-error'?: string | undefined;
21
+ } | undefined;
22
+ variables?: {
23
+ [x: string]: string | number | undefined;
24
+ } | undefined;
25
+ };
26
+ export default _default;
@@ -0,0 +1,5 @@
1
+ export * from './themes.d';
2
+ export { default as cds } from './cds';
3
+ export { default as b2b } from './b2b';
4
+ export { default as dark } from './dark';
5
+ export { default as promo } from './promo';
@@ -0,0 +1,26 @@
1
+ declare const _default: {
2
+ dark?: boolean | undefined;
3
+ colors?: {
4
+ [x: string]: string | undefined;
5
+ background?: string | undefined;
6
+ surface?: string | undefined;
7
+ primary?: string | undefined;
8
+ secondary?: string | undefined;
9
+ success?: string | undefined;
10
+ warning?: string | undefined;
11
+ info?: string | undefined;
12
+ error?: string | undefined;
13
+ 'on-background'?: string | undefined;
14
+ 'on-surface'?: string | undefined;
15
+ 'on-primary'?: string | undefined;
16
+ 'on-secondary'?: string | undefined;
17
+ 'on-success'?: string | undefined;
18
+ 'on-warning'?: string | undefined;
19
+ 'on-info'?: string | undefined;
20
+ 'on-error'?: string | undefined;
21
+ } | undefined;
22
+ variables?: {
23
+ [x: string]: string | number | undefined;
24
+ } | undefined;
25
+ };
26
+ export default _default;
@@ -0,0 +1,10 @@
1
+ import type { ThemeDefinition } from '../composable';
2
+
3
+ export interface IThemes {
4
+ cds: ThemeDefinition;
5
+ b2b: ThemeDefinition;
6
+ promo: ThemeDefinition;
7
+ dark: ThemeDefinition;
8
+ }
9
+
10
+ export type TThemes = keyof IThemes;
@@ -26,8 +26,8 @@ export declare function createCssTransition(name: string, origin?: string, mode?
26
26
  default: string;
27
27
  };
28
28
  }>>, {
29
- origin: string;
30
29
  mode: string;
30
+ origin: string;
31
31
  }>;
32
32
  export declare function createJSTransition(name: string, functions: Record<string, any>, mode?: string): import("vue").DefineComponent<{
33
33
  mode: Prop<"default" | "in-out" | "out-in", "default" | "in-out" | "out-in">;
@@ -40,8 +40,8 @@ export declare const CdsTransitionFade: import("vue").DefineComponent<{
40
40
  default: string;
41
41
  };
42
42
  }>>, {
43
- origin: string;
44
43
  mode: string;
44
+ origin: string;
45
45
  }>;
46
46
  export declare const CdsTransitionSlideY: import("vue").DefineComponent<{
47
47
  group: import("vue").PropType<boolean>;
@@ -70,8 +70,8 @@ export declare const CdsTransitionSlideY: import("vue").DefineComponent<{
70
70
  default: string;
71
71
  };
72
72
  }>>, {
73
- origin: string;
74
73
  mode: string;
74
+ origin: string;
75
75
  }>;
76
76
  export declare const CdsTransitionSlideX: import("vue").DefineComponent<{
77
77
  group: import("vue").PropType<boolean>;
@@ -100,8 +100,8 @@ export declare const CdsTransitionSlideX: import("vue").DefineComponent<{
100
100
  default: string;
101
101
  };
102
102
  }>>, {
103
- origin: string;
104
103
  mode: string;
104
+ origin: string;
105
105
  }>;
106
106
  export declare const CdsTransitionSlideRight: import("vue").DefineComponent<{
107
107
  group: import("vue").PropType<boolean>;
@@ -130,8 +130,8 @@ export declare const CdsTransitionSlideRight: import("vue").DefineComponent<{
130
130
  default: string;
131
131
  };
132
132
  }>>, {
133
- origin: string;
134
133
  mode: string;
134
+ origin: string;
135
135
  }>;
136
136
  export declare const CdsTransitionSlideLeft: import("vue").DefineComponent<{
137
137
  group: import("vue").PropType<boolean>;
@@ -160,8 +160,8 @@ export declare const CdsTransitionSlideLeft: import("vue").DefineComponent<{
160
160
  default: string;
161
161
  };
162
162
  }>>, {
163
- origin: string;
164
163
  mode: string;
164
+ origin: string;
165
165
  }>;
166
166
  export declare const CdsTransitionJumpRight: import("vue").DefineComponent<{
167
167
  group: import("vue").PropType<boolean>;
@@ -190,8 +190,8 @@ export declare const CdsTransitionJumpRight: import("vue").DefineComponent<{
190
190
  default: string;
191
191
  };
192
192
  }>>, {
193
- origin: string;
194
193
  mode: string;
194
+ origin: string;
195
195
  }>;
196
196
  export declare const CdsTransitionJumpLeft: import("vue").DefineComponent<{
197
197
  group: import("vue").PropType<boolean>;
@@ -220,8 +220,8 @@ export declare const CdsTransitionJumpLeft: import("vue").DefineComponent<{
220
220
  default: string;
221
221
  };
222
222
  }>>, {
223
- origin: string;
224
223
  mode: string;
224
+ origin: string;
225
225
  }>;
226
226
  export declare const CdsTransitionScale: import("vue").DefineComponent<{
227
227
  group: import("vue").PropType<boolean>;
@@ -250,8 +250,8 @@ export declare const CdsTransitionScale: import("vue").DefineComponent<{
250
250
  default: string;
251
251
  };
252
252
  }>>, {
253
- origin: string;
254
253
  mode: string;
254
+ origin: string;
255
255
  }>;
256
256
  export declare const CdsTransitionModalBottom: import("vue").DefineComponent<{
257
257
  group: import("vue").PropType<boolean>;
@@ -280,8 +280,8 @@ export declare const CdsTransitionModalBottom: import("vue").DefineComponent<{
280
280
  default: string;
281
281
  };
282
282
  }>>, {
283
- origin: string;
284
283
  mode: string;
284
+ origin: string;
285
285
  }>;
286
286
  export declare const CdsTransitionModalTop: import("vue").DefineComponent<{
287
287
  group: import("vue").PropType<boolean>;
@@ -310,6 +310,6 @@ export declare const CdsTransitionModalTop: import("vue").DefineComponent<{
310
310
  default: string;
311
311
  };
312
312
  }>>, {
313
- origin: string;
314
313
  mode: string;
314
+ origin: string;
315
315
  }>;