@central-design-system/components 3.0.0-beta.3 → 3.0.0-beta.31

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 (229) hide show
  1. package/dist/cds.css +1 -1
  2. package/dist/cds.d.ts +6 -1
  3. package/dist/cds.es.js +17699 -13545
  4. package/dist/cds.umd.js +7 -3
  5. package/dist/components/CdsAutocomplete/CdsAutocomplete.vue.d.ts +88 -37
  6. package/dist/components/CdsBadge/CdsBadge.vue.d.ts +40 -12
  7. package/dist/components/CdsBreadcrumbs/CdsBreadcrumbs.vue.d.ts +11 -0
  8. package/dist/components/CdsBreadcrumbs/CdsBreadcrumbsItem.vue.d.ts +14 -3
  9. package/dist/components/CdsButton/CdsButton.vue.d.ts +37 -26
  10. package/dist/components/CdsCheckbox/CdsCheckbox.vue.d.ts +68 -3
  11. package/dist/components/CdsCheckbox/CdsCheckboxGroup.vue.d.ts +13 -0
  12. package/dist/components/CdsCombobox/CdsCombobox.vue.d.ts +275 -114
  13. package/dist/components/CdsContainer/CdsContainer.vue.d.ts +41 -24
  14. package/dist/components/CdsContainer/context.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 -1
  19. package/dist/components/CdsDatePicker/composable/calendar.d.ts +2 -2
  20. package/dist/components/CdsDrawer/CdsDrawer.vue.d.ts +70 -4
  21. package/dist/components/CdsDropdown/CdsDropdown.vue.d.ts +241 -113
  22. package/dist/components/CdsEmptyState/CdsEmptyState.vue.d.ts +1 -1
  23. package/dist/components/CdsExpandablePanel/CdsExpandablePanel.vue.d.ts +13 -13
  24. package/dist/components/CdsExpandablePanel/CdsExpandablePanelTitle.vue.d.ts +10 -10
  25. package/dist/components/CdsExpandablePanel/CdsExpandablePanels.vue.d.ts +16 -5
  26. package/dist/components/CdsExpandablePanel/composable/expandablePanelTitleProps.d.ts +3 -3
  27. package/dist/components/CdsFooter/CdsFooter.vue.d.ts +23 -3
  28. package/dist/components/CdsForm/CdsForm.vue.d.ts +11 -0
  29. package/dist/components/CdsGrid/composable/column.d.ts +1 -1
  30. package/dist/components/CdsGrid/composable/subgrid.d.ts +1 -1
  31. package/dist/components/CdsGrid/mode/CSSGrid.d.ts +1 -1
  32. package/dist/components/CdsGrid/mode/FlexGrid.d.ts +1 -1
  33. package/dist/components/CdsHeader/CdsHeader.vue.d.ts +23 -3
  34. package/dist/components/CdsIcon/CdsIcon.vue.d.ts +27 -3
  35. package/dist/components/CdsInput/CdsInput.vue.d.ts +26 -21
  36. package/dist/components/CdsInput/CdsInputDescription.vue.d.ts +3 -3
  37. package/dist/components/CdsInput/CdsInputLabel.vue.d.ts +3 -3
  38. package/dist/components/CdsLayout/CdsLayout.vue.d.ts +12 -1
  39. package/dist/components/CdsLayout/context.d.ts +1 -1
  40. package/dist/components/CdsLink/CdsLink.vue.d.ts +15 -3
  41. package/dist/components/CdsList/CdsList.vue.d.ts +31 -19
  42. package/dist/components/CdsList/CdsListGroup.vue.d.ts +7 -7
  43. package/dist/components/CdsList/CdsListItem.vue.d.ts +12 -12
  44. package/dist/components/CdsList/composable/list.d.ts +1 -1
  45. package/dist/components/CdsLoader/CdsLoader.vue.d.ts +12 -0
  46. package/dist/components/CdsMenu/CdsMenu.vue.d.ts +36 -7
  47. package/dist/components/CdsModal/CdsModal.vue.d.ts +38 -5
  48. package/dist/components/CdsNotification/CdsNotification.vue.d.ts +38 -27
  49. package/dist/components/CdsNotification/CdsNotificationAlert.vue.d.ts +51 -22
  50. package/dist/components/CdsNotification/composable/notification.d.ts +4 -4
  51. package/dist/components/CdsOverlay/CdsOverlay.vue.d.ts +35 -3
  52. package/dist/components/CdsOverlay/composable/activator.d.ts +19 -6
  53. package/dist/components/CdsOverlay/composable/locationStrategies.d.ts +6 -5
  54. package/dist/components/CdsOverlay/composable/scrollStrategies.d.ts +1 -1
  55. package/dist/components/CdsOverlay/composable/teleport.d.ts +25 -1
  56. package/dist/components/CdsOverlay/constants.d.ts +2 -0
  57. package/dist/components/CdsPagination/CdsPagination.vue.d.ts +11 -0
  58. package/dist/components/CdsProgress/CdsProgress.vue.d.ts +12 -1
  59. package/dist/components/CdsRadioButton/CdsRadio.vue.d.ts +26 -11
  60. package/dist/components/CdsRadioButton/CdsRadioButton.vue.d.ts +13 -0
  61. package/dist/components/CdsSelect/CdsSelect.vue.d.ts +81 -61
  62. package/dist/components/CdsSidebar/CdsSidebar.vue.d.ts +30 -8
  63. package/dist/components/CdsSkeletonLoader/CdsSkeletonLoader.vue.d.ts +14 -3
  64. package/dist/components/CdsSlideGroup/CdsSlideGroup.vue.d.ts +19 -19
  65. package/dist/components/CdsStages/CdsStages.vue.d.ts +13 -1
  66. package/dist/components/CdsStatus/CdsStatus.vue.d.ts +20 -8
  67. package/dist/components/CdsSteps/CdsSteps.vue.d.ts +30 -23
  68. package/dist/components/CdsSteps/CdsStepsItem.vue.d.ts +3 -3
  69. package/dist/components/CdsSteps/context.d.ts +1 -1
  70. package/dist/components/CdsTable/CdsTable.vue.d.ts +99 -31
  71. package/dist/components/CdsTable/components/Footer/Footer.d.ts +1 -1
  72. package/dist/components/CdsTable/components/Header/DragHandle.d.ts +1 -1
  73. package/dist/components/CdsTable/components/Table/InternalTable.d.ts +89 -23
  74. package/dist/components/CdsTable/components/TableProvider.d.ts +101 -24
  75. package/dist/components/CdsTable/composable/filter.d.ts +1 -1
  76. package/dist/components/CdsTable/composable/flat.d.ts +1 -1
  77. package/dist/components/CdsTable/composable/pagination.d.ts +1 -1
  78. package/dist/components/CdsTable/composable/scroll.d.ts +4607 -0
  79. package/dist/components/CdsTable/composable/selection.d.ts +1 -1
  80. package/dist/components/CdsTable/composable/sorter.d.ts +1 -1
  81. package/dist/components/CdsTable/composable/sticky.d.ts +1 -1
  82. package/dist/components/CdsTable/composable/table.d.ts +42 -14
  83. package/dist/components/CdsTable/constants.d.ts +1 -0
  84. package/dist/components/CdsTable/context/summary.d.ts +1 -1
  85. package/dist/components/CdsTable/context/table.d.ts +1 -1
  86. package/dist/components/CdsTable/interface.d.ts +4 -7
  87. package/dist/components/CdsTable/utils/column.d.ts +1 -3
  88. package/dist/components/CdsTable/utils/index.d.ts +1 -1
  89. package/dist/components/CdsTable/utils/vnode.d.ts +10 -0
  90. package/dist/components/CdsTabs/CdsTab.vue.d.ts +13 -13
  91. package/dist/components/CdsTabs/CdsTabs.vue.d.ts +50 -39
  92. package/dist/components/CdsTag/CdsTag.vue.d.ts +15 -3
  93. package/dist/components/CdsTextArea/CdsTextArea.vue.d.ts +101 -89
  94. package/dist/components/CdsTextInput/CdsTextInput.vue.d.ts +93 -57
  95. package/dist/components/CdsTimePicker/CdsTimePicker.vue.d.ts +11 -0
  96. package/dist/components/CdsTimePicker/composable/time.d.ts +2 -2
  97. package/dist/components/CdsToggle/CdsToggle.vue.d.ts +13 -8
  98. package/dist/components/CdsToolbar/CdsToolbar.vue.d.ts +53 -0
  99. package/dist/components/CdsTooltip/CdsTooltip.vue.d.ts +39 -10
  100. package/dist/components/CdsTree/CdsTree.vue.d.ts +698 -0
  101. package/dist/components/CdsTree/CdsTreeDirectory.vue.d.ts +446 -0
  102. package/dist/components/CdsTree/CdsTreeNode.vue.d.ts +119 -0
  103. package/dist/components/CdsTree/components/DropIndicator.d.ts +9 -0
  104. package/dist/components/CdsTree/components/Indent.d.ts +10 -0
  105. package/dist/components/CdsTree/components/MotionTreeNode.d.ts +128 -0
  106. package/dist/components/CdsTree/components/NodeList.d.ts +191 -0
  107. package/dist/components/CdsTree/components/SwitcherIcon.d.ts +12 -0
  108. package/dist/components/CdsTree/components/TreeContext.d.ts +81 -0
  109. package/dist/components/CdsTree/components/TreeProvider.d.ts +619 -0
  110. package/dist/components/CdsTree/components/VirtualList/Filler.d.ts +12 -0
  111. package/dist/components/CdsTree/components/VirtualList/Item.d.ts +6 -0
  112. package/dist/components/CdsTree/components/VirtualList/ScrollBar.d.ts +33 -0
  113. package/dist/components/CdsTree/components/VirtualList/VirtualList.d.ts +84 -0
  114. package/dist/components/CdsTree/components/VirtualList/features/index.d.ts +5 -0
  115. package/dist/components/CdsTree/components/VirtualList/features/useFrameWheel.d.ts +10 -0
  116. package/dist/components/CdsTree/components/VirtualList/features/useHeights.d.ts +9 -0
  117. package/dist/components/CdsTree/components/VirtualList/features/useMobileTouchMove.d.ts +2 -0
  118. package/dist/components/CdsTree/components/VirtualList/features/useOriginScroll.d.ts +2 -0
  119. package/dist/components/CdsTree/components/VirtualList/features/useScrollTo.d.ts +4 -0
  120. package/dist/components/CdsTree/components/VirtualList/index.d.ts +2 -0
  121. package/dist/components/CdsTree/components/VirtualList/interface.d.ts +10 -0
  122. package/dist/components/CdsTree/composable/events.d.ts +133 -0
  123. package/dist/components/CdsTree/composable/index.d.ts +2 -0
  124. package/dist/components/CdsTree/composable/tree.d.ts +273 -0
  125. package/dist/components/CdsTree/composable/treeNode.d.ts +75 -0
  126. package/dist/components/CdsTree/index.d.ts +5 -0
  127. package/dist/components/CdsTree/interface.d.ts +104 -4
  128. package/dist/components/CdsTree/utils/data.d.ts +70 -0
  129. package/dist/components/CdsTree/utils/diff.d.ts +6 -0
  130. package/dist/components/CdsTree/utils/directory.d.ts +9 -0
  131. package/dist/components/CdsTree/utils/index.d.ts +2 -0
  132. package/dist/components/CdsUploader/CdsUploader.vue.d.ts +62 -41
  133. package/dist/components/CdsUploader/components/AjaxUploader.d.ts +15 -15
  134. package/dist/components/CdsUploader/components/UploadList/ListItem.d.ts +40 -22
  135. package/dist/components/CdsUploader/components/UploadList/UploadList.d.ts +39 -21
  136. package/dist/components/CdsUploader/composable/upload.d.ts +25 -15
  137. package/dist/components/CdsUploader/index.d.ts +1 -0
  138. package/dist/components/CdsUploader/interface.d.ts +1 -1
  139. package/dist/components/index.d.ts +8 -1
  140. package/dist/composable/appearance.d.ts +2 -2
  141. package/dist/composable/datetime.d.ts +4 -4
  142. package/dist/composable/delay.d.ts +3 -2
  143. package/dist/composable/direction.d.ts +1 -1
  144. package/dist/composable/display.d.ts +2 -0
  145. package/dist/composable/domObserver.d.ts +5 -0
  146. package/dist/composable/field.d.ts +7 -5
  147. package/dist/composable/filter.d.ts +30 -0
  148. package/dist/composable/form.d.ts +2 -2
  149. package/dist/composable/group.d.ts +3 -3
  150. package/dist/composable/icon.d.ts +3 -3
  151. package/dist/composable/index.d.ts +5 -1
  152. package/dist/composable/invertColor.d.ts +19 -0
  153. package/dist/composable/layout.d.ts +20 -20
  154. package/dist/composable/loading.d.ts +2 -2
  155. package/dist/composable/menu.d.ts +1 -1
  156. package/dist/composable/nested/nested.d.ts +2 -2
  157. package/dist/composable/overlay.d.ts +9 -1
  158. package/dist/{components/CdsDropdown/composable → composable}/scrolling.d.ts +2 -2
  159. package/dist/composable/select.d.ts +29 -11
  160. package/dist/composable/size.d.ts +1 -1
  161. package/dist/composable/tag.d.ts +0 -3
  162. package/dist/composable/text.d.ts +2 -2
  163. package/dist/composable/theme.d.ts +82 -0
  164. package/dist/composable/transition.d.ts +2 -0
  165. package/dist/composable/transparent.d.ts +19 -0
  166. package/dist/composable/validation.d.ts +2 -2
  167. package/dist/composable/variant.d.ts +1 -1
  168. package/dist/create.d.ts +7 -1
  169. package/dist/globals.d.ts +7 -0
  170. package/dist/locale/index.d.ts +1 -1
  171. package/dist/themes/b2b.d.ts +26 -0
  172. package/dist/themes/cds.d.ts +26 -0
  173. package/dist/themes/dark.d.ts +26 -0
  174. package/dist/themes/index.d.ts +5 -0
  175. package/dist/themes/promo.d.ts +26 -0
  176. package/dist/themes/themes.d.ts +10 -0
  177. package/dist/transitions/collapseTransition.d.ts +11 -0
  178. package/dist/transitions/index.d.ts +1 -0
  179. package/dist/utils/colors.d.ts +368 -0
  180. package/dist/utils/colorsUtils/APCA.d.ts +7 -0
  181. package/dist/utils/colorsUtils/index.d.ts +1 -0
  182. package/dist/utils/colorsUtils/transformCIELAB.d.ts +3 -0
  183. package/dist/utils/colorsUtils/transformSRGB.d.ts +3 -0
  184. package/dist/utils/colorsUtils/utils.d.ts +41 -0
  185. package/dist/utils/dom/bindProps.d.ts +2 -0
  186. package/dist/utils/dom/box.d.ts +1 -0
  187. package/dist/utils/helpers.d.ts +31 -6
  188. package/dist/utils/index.d.ts +5 -0
  189. package/dist/utils/propsFactory.d.ts +1 -1
  190. package/dist/utils/use/flattenChildren.d.ts +3 -0
  191. package/nuxt.js +2 -1
  192. package/package.json +1 -1
  193. package/src/scss/mixins/typo.scss +0 -3
  194. package/src/scss/modules/_transition.scss +31 -0
  195. package/src/scss/modules/grid/_css-grid.scss +12 -19
  196. package/src/scss/modules/grid/_flex-grid.scss +9 -5
  197. package/src/scss/modules/grid/_mixins.scss +27 -33
  198. package/src/scss/themes/b2b/tokens.json +104 -104
  199. package/src/scss/themes/cds/tokens.json +104 -104
  200. package/src/scss/themes/index.ts +1 -1
  201. package/src/scss/utility/display.scss +56 -5
  202. package/src/scss/utility/flexbox.scss +26 -28
  203. package/src/scss/utility/index.scss +1 -2
  204. package/src/scss/utility/layout.scss +65 -3
  205. package/src/scss/utility/spacing.scss +46 -86
  206. package/src/scss/utility/typography.scss +48 -1
  207. package/src/scss/utility/variables/display.scss +10 -0
  208. package/src/scss/utility/variables/exports/_display.scss +7 -0
  209. package/src/scss/utility/variables/exports/_flex.scss +13 -0
  210. package/src/scss/utility/variables/exports/_overflow.scss +7 -0
  211. package/src/scss/utility/variables/exports/_position.scss +7 -0
  212. package/src/scss/utility/variables/exports/_spacing.scss +14 -0
  213. package/src/scss/utility/variables/exports/_typography.scss +22 -0
  214. package/src/scss/utility/variables/exports/_visibility.scss +7 -0
  215. package/src/scss/utility/variables/exports/_widthHeight.scss +7 -0
  216. package/src/scss/utility/variables/flex.scss +140 -0
  217. package/src/scss/utility/variables/index.scss +12 -0
  218. package/src/scss/utility/variables/overflow.scss +6 -0
  219. package/src/scss/utility/variables/position.scss +7 -0
  220. package/src/scss/utility/variables/spacing.scss +37 -0
  221. package/src/scss/utility/{variables.scss → variables/typography.scss} +48 -71
  222. package/src/scss/utility/variables/visibility.scss +5 -0
  223. package/src/scss/utility/variables/widthHeight.scss +69 -0
  224. package/dist/components/CdsDropdown/composable/index.d.ts +0 -1
  225. package/dist/composable/dark.d.ts +0 -19
  226. package/dist/plugins/index.d.ts +0 -2
  227. package/src/scss/utility/generatedFiles/generatedStyles.json +0 -1
  228. package/src/scss/utility/generatedFiles/generatedStyles.scss +0 -300
  229. /package/dist/{components/CdsTable/utils → utils/use}/listener.d.ts +0 -0
@@ -0,0 +1,5 @@
1
+ import { Ref } from 'vue';
2
+ export interface IUseDomObserver {
3
+ elements: Ref<HTMLElement[]>;
4
+ }
5
+ export declare function useDomObserver(dataAlertValue: string): IUseDomObserver;
@@ -1,6 +1,6 @@
1
- import type { ComputedRef, PropType } from 'vue';
2
- import type { EventProp } from '../utils';
3
1
  import type { TCdsIconsName } from '@central-design-system/icons';
2
+ import type { EventProp } from '../utils';
3
+ import type { ComputedRef, PropType } from 'vue';
4
4
  export declare type TFieldTypes = typeof allowedFieldType[number];
5
5
  export interface IFieldProps {
6
6
  active: boolean;
@@ -9,11 +9,13 @@ export interface IFieldProps {
9
9
  suffix: string | undefined;
10
10
  prependInnerIcon: TCdsIconsName | undefined;
11
11
  appendInnerIcon: TCdsIconsName | undefined;
12
- type: TFieldTypes | undefined;
12
+ type: TFieldTypes;
13
+ role: string | undefined;
13
14
  placeholder: string | undefined;
14
15
  counter: boolean;
15
16
  limit: number | undefined;
16
17
  clearable: boolean;
18
+ persistentClearable: boolean;
17
19
  'onClick:appendInner': EventProp | undefined;
18
20
  'onClick:prependInner': EventProp | undefined;
19
21
  }
@@ -75,7 +77,7 @@ export declare const makeFieldProps: <Defaults extends {
75
77
  * Иконка внутри элемента перед значением поля
76
78
  */
77
79
  prependInnerIcon: {
78
- 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">;
80
+ type: PropType<"search" | "link" | "list" | "filters" | "add" | "administrator" | "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-open" | "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">;
79
81
  default: undefined;
80
82
  validator: (value: TCdsIconsName) => boolean;
81
83
  };
@@ -83,7 +85,7 @@ export declare const makeFieldProps: <Defaults extends {
83
85
  * Иконка внутри элемента после значения поля
84
86
  */
85
87
  appendInnerIcon: {
86
- 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">;
88
+ type: PropType<"search" | "link" | "list" | "filters" | "add" | "administrator" | "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-open" | "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">;
87
89
  default: undefined;
88
90
  validator: (value: TCdsIconsName) => boolean;
89
91
  };
@@ -21,22 +21,44 @@ export declare const makeFilterProps: <Defaults extends {
21
21
  filterMode?: unknown;
22
22
  noFilter?: unknown;
23
23
  } = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
24
+ /**
25
+ * Функция, используемая для фильтрации элементов списка.
26
+ * Вызывается для каждого фильтруемого ключа и для каждого элемента списка.
27
+ * Первый аргумент - это фильтруемое значение, второй - поисковой запрос, а третий - внутренний объект элемента списка.
28
+ * Функция должна возвращать true если элемент должен быть включен в результаты фильтрации, или индекс соответствия в значении, если он должен быть включен с выделенным результатом.
29
+ */
24
30
  customFilter: {
25
31
  type: PropType<TFilterFunction>;
26
32
  default: null;
27
33
  };
34
+ /**
35
+ * Функция, используемая для определенных ключей внутри объекта элемента списка. customFilter не будет учитывать элементы с указанным customKeyFilter
36
+ */
28
37
  customKeyFilter: {
29
38
  type: PropType<TFilterKeyFunctions>;
30
39
  default: null;
31
40
  };
41
+ /**
42
+ * Массив ключей, по которым будет производиться фильтрация
43
+ */
32
44
  filterKeys: {
33
45
  type: PropType<TFilterKeys>;
34
46
  default: string;
35
47
  };
48
+ /**
49
+ * Управляет объединением результатов customFilter и customKeyFilter. Все варианты применяют customFilter только к элементам, не указанным в customKeyFilter.
50
+ * - 'some' - имеется хотя бы одно совпадение либо с customFilter, либо с customKeyFilter
51
+ * - 'every' - все элементы соответствуют либо customFilter, либо customKeyFilter
52
+ * - 'union' - имеется хотя бы одно совпадение из customFilter и все совпадения из customKeyFilter
53
+ * - 'intersection' - имеется хотя бы одно совпадение из customFilter и все совпадения из customKeyFilter
54
+ */
36
55
  filterMode: {
37
56
  type: PropType<TFilterMode>;
38
57
  default: string;
39
58
  };
59
+ /**
60
+ * Не применяйте фильтрацию при поиске. Полезно, когда данные фильтруются на стороне сервера
61
+ */
40
62
  noFilter: {
41
63
  type: PropType<boolean>;
42
64
  default: boolean;
@@ -45,6 +67,14 @@ export declare const makeFilterProps: <Defaults extends {
45
67
  export declare function useFilter<T extends IInternalItem>(props: IFilterProps, items: MaybeRef<T[]>, query: Ref<string | number | undefined> | (() => string | undefined), options?: {
46
68
  transform?: (item: T) => {};
47
69
  }): IUseFilter<T>;
70
+ export declare function defaultFilter(value: string, query: string): TFilterMath;
71
+ export declare function filterItems(items: readonly (readonly [item: IInternalItem, transformed: {}])[] | readonly IInternalItem[], query: string, options: Omit<IFilterProps, 'customFilter'> & {
72
+ default?: TFilterFunction;
73
+ }): TFilteredItems[];
74
+ declare type TFilteredItems = {
75
+ index: number;
76
+ matches: Record<string, TFilterMath>;
77
+ };
48
78
  declare type TFilterFunction = (value: string, query: string, item?: any) => TFilterMath;
49
79
  declare type TFilterKeyFunctions = Record<string, TFilterFunction>;
50
80
  declare type TFilterKeys = string | string[];
@@ -1,6 +1,6 @@
1
1
  import { InjectionKey } from 'vue';
2
- import type { Ref, ComputedRef, PropType } from 'vue';
3
2
  import type { IValidationProps } from './validation';
3
+ import type { Ref, ComputedRef, PropType } from 'vue';
4
4
  export interface IFormProvide {
5
5
  register: (item: {
6
6
  id: number | string;
@@ -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;
@@ -1,18 +1,18 @@
1
- import type { ComponentInternalInstance, ComputedRef, ExtractPropTypes, InjectionKey, PropType, Ref } from 'vue';
2
1
  import type { IDisabledProps } from '../composable';
2
+ import type { ComponentInternalInstance, ComputedRef, ExtractPropTypes, InjectionKey, PropType, Ref } from 'vue';
3
3
  export interface IGroupItem {
4
4
  id: number;
5
5
  value: Ref<unknown>;
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[]>>;
@@ -1,6 +1,6 @@
1
1
  import { EventProp } from '../utils';
2
- import type { PropType, ComputedRef } from 'vue';
3
2
  import type { TCdsIconsName } from '@central-design-system/icons';
3
+ import type { PropType, ComputedRef } from 'vue';
4
4
  export interface IIconProps {
5
5
  prependIcon: TCdsIconsName | undefined;
6
6
  appendIcon: TCdsIconsName | undefined;
@@ -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" | "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">;
25
+ type: PropType<"search" | "link" | "list" | "filters" | "add" | "administrator" | "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-open" | "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" | "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">;
33
+ type: PropType<"search" | "link" | "list" | "filters" | "add" | "administrator" | "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-open" | "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
  };
@@ -8,7 +8,7 @@ export * from './appearance';
8
8
  export * from './size';
9
9
  export * from './disabled';
10
10
  export * from './readonly';
11
- export * from './dark';
11
+ export * from './invertColor';
12
12
  export * from './color';
13
13
  export * from './status';
14
14
  export * from './tag';
@@ -45,3 +45,7 @@ export * from './group';
45
45
  export * from './ssrBoot';
46
46
  export * from './variant';
47
47
  export * from './layout';
48
+ export * from './theme';
49
+ export * from './domObserver';
50
+ export * from './transparent';
51
+ export * from './scrolling';
@@ -0,0 +1,19 @@
1
+ import type { ComputedRef, PropType } from 'vue';
2
+ export interface IInvertColorProps {
3
+ invertColor: boolean;
4
+ }
5
+ export interface IUseInvertColor {
6
+ invertColorClasses: ComputedRef<string | undefined>;
7
+ }
8
+ export declare const makeInvertColor: <Defaults extends {
9
+ invertColor?: unknown;
10
+ } = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
11
+ /**
12
+ * Инвертирует цветовую схему компонента
13
+ */
14
+ invertColor: {
15
+ type: PropType<boolean>;
16
+ default: boolean;
17
+ };
18
+ }, Defaults>;
19
+ export declare function useInvertColor(props: IInvertColorProps, name: string): IUseInvertColor;
@@ -1,5 +1,6 @@
1
- import type { PropType } from 'vue';
2
- import { CSSProperties, Ref } from 'vue';
1
+ import { CSSProperties } from 'vue';
2
+ import { ILayoutContextProps } from '../components/CdsLayout/context';
3
+ import type { PropType, Ref, ComputedRef } from 'vue';
3
4
  export interface ILayoutProps {
4
5
  modelValue: boolean;
5
6
  reveal: boolean;
@@ -8,6 +9,22 @@ export interface ILayoutProps {
8
9
  elevated: boolean;
9
10
  height: string | number;
10
11
  }
12
+ export interface IUseLayout {
13
+ layout: ILayoutContextProps;
14
+ size: Ref<number>;
15
+ revealed: Ref<boolean>;
16
+ fixed: Ref<boolean>;
17
+ windowHeight: Ref<number>;
18
+ containerHeight: ComputedRef<number>;
19
+ offset: ComputedRef<number>;
20
+ hidden: ComputedRef<boolean>;
21
+ revealOnFocus: ComputedRef<boolean>;
22
+ classes: ComputedRef<Record<string, boolean>>;
23
+ style: Ref<CSSProperties>;
24
+ updateLocal: (prop: Ref, value: any) => void;
25
+ updateRevealed: () => void;
26
+ onResize: (rect: Pick<DOMRectReadOnly, 'width' | 'height'>) => void;
27
+ }
11
28
  export declare const makeLayoutProps: <Defaults extends {
12
29
  modelValue?: unknown;
13
30
  reveal?: unknown;
@@ -59,21 +76,4 @@ export declare const makeLayoutProps: <Defaults extends {
59
76
  default: number;
60
77
  };
61
78
  }, Defaults>;
62
- export declare function useLayout(props: ILayoutProps, componentName: string, view?: 'H' | 'F'): {
63
- layout: import("../components/CdsLayout/context").ILayoutContextProps;
64
- size: Ref<number>;
65
- revealed: Ref<boolean>;
66
- fixed: import("vue").ComputedRef<boolean>;
67
- windowHeight: Ref<number>;
68
- containerHeight: import("vue").ComputedRef<number>;
69
- offset: import("vue").ComputedRef<number>;
70
- hidden: import("vue").ComputedRef<boolean>;
71
- revealOnFocus: import("vue").ComputedRef<boolean>;
72
- classes: import("vue").ComputedRef<{
73
- [x: string]: boolean;
74
- }>;
75
- style: import("vue").ComputedRef<CSSProperties>;
76
- updateLocal: (prop: Ref, value: any) => void;
77
- updateRevealed: () => void;
78
- onResize: ({ height }: Pick<DOMRectReadOnly, 'width' | 'height'>) => void;
79
- };
79
+ export declare function useLayout(props: ILayoutProps, componentName: string, view?: 'H' | 'F'): IUseLayout;
@@ -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,5 +1,5 @@
1
- import type { Ref, PropType, WritableComputedRef } from 'vue';
2
1
  import type { IDisabledProps } from './disabled';
2
+ import type { Ref, PropType, WritableComputedRef } from 'vue';
3
3
  export interface IMenuProps extends IDisabledProps {
4
4
  menu: boolean | undefined;
5
5
  }
@@ -1,6 +1,6 @@
1
- import type { Ref, InjectionKey, PropType, SetupContext } from 'vue';
2
- import type { TSelectStrategyProp } from './selectStrategies';
3
1
  import type { TOpenStrategyProp } from './openStrategies';
2
+ import type { TSelectStrategyProp } from './selectStrategies';
3
+ import type { Ref, InjectionKey, PropType, SetupContext } from 'vue';
4
4
  export declare type TNestedProvide = {
5
5
  id: Ref<unknown>;
6
6
  isGroupActivator?: boolean;
@@ -22,6 +22,7 @@ export declare const makeOverlayProps: <Defaults extends {
22
22
  contentClasses?: unknown;
23
23
  contentProps?: unknown;
24
24
  noClickAnimation?: unknown;
25
+ opacity?: unknown;
25
26
  } = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
26
27
  /**
27
28
  * Указывает, к какому DOM элементу будет прикреплен компонент.
@@ -34,7 +35,7 @@ export declare const makeOverlayProps: <Defaults extends {
34
35
  default: boolean;
35
36
  };
36
37
  /**
37
- * Указывает, что компонент будет прикреплен к родительскому элементу. Подразумевает absolute и attach
38
+ * Указывает, что компонент будет прикреплен к родительскому элементу. Подразумевает absolute и attach в true.
38
39
  */
39
40
  contained: {
40
41
  type: PropType<boolean>;
@@ -103,4 +104,11 @@ export declare const makeOverlayProps: <Defaults extends {
103
104
  type: PropType<boolean>;
104
105
  default: boolean;
105
106
  };
107
+ /**
108
+ * Прозрачность overlay компонента
109
+ */
110
+ opacity: {
111
+ type: PropType<string | number>;
112
+ default: undefined;
113
+ };
106
114
  }, Defaults>;
@@ -1,6 +1,6 @@
1
1
  import { Ref } from 'vue';
2
- import { CdsList } from '../../CdsList';
3
- import { CdsTextInput } from '../../CdsTextInput';
2
+ import { CdsList } from '../components/CdsList';
3
+ import { CdsTextInput } from '../components/CdsTextInput';
4
4
  export declare function useScrolling(listRef: Ref<typeof CdsList | undefined>, textFieldRef: Ref<typeof CdsTextInput | undefined>): {
5
5
  onListScroll: (event: Event) => void;
6
6
  onListKeydown: (event: KeyboardEvent) => Promise<void>;
@@ -1,6 +1,7 @@
1
1
  import { MaybePick } from '../utils';
2
- import type { PropType, ComputedRef, Ref } from 'vue';
3
2
  import type { IInternalItem, IUseItems } from './items';
3
+ import type { TCdsIconsName } from '@central-design-system/icons';
4
+ import type { PropType, ComputedRef, Ref } from 'vue';
4
5
  export interface ISelectProps {
5
6
  multiple: boolean;
6
7
  openOnClear: boolean;
@@ -17,6 +18,7 @@ export declare const makeSelectProps: <Defaults extends {
17
18
  isSelectAll?: unknown;
18
19
  ellipsis?: unknown;
19
20
  listProps?: unknown;
21
+ menuIcon?: unknown;
20
22
  } = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
21
23
  /**
22
24
  * Множественный выбор элементов
@@ -74,12 +76,19 @@ export declare const makeSelectProps: <Defaults extends {
74
76
  tag: string;
75
77
  size: NonNullable<"xs" | "sm" | "md" | "lg" | "xl">;
76
78
  disabled: boolean;
77
- dark: boolean;
79
+ invertColor: boolean;
80
+ transparent: boolean;
78
81
  required: boolean;
79
82
  selectStrategy: NonNullable<import("./nested/selectStrategies").TSelectStrategyProp>;
80
83
  openStrategy: NonNullable<import("./nested/openStrategies").TOpenStrategyProp>;
84
+ theme: string;
81
85
  lines: false | "one" | "two" | "three";
82
86
  }> & Omit<Readonly<import("vue").ExtractPropTypes<{
87
+ theme: {
88
+ type: PropType<string>;
89
+ available: readonly ["cds", "b2b", "promo", "dark"];
90
+ default: undefined;
91
+ };
83
92
  selectStrategy: {
84
93
  type: PropType<NonNullable<import("./nested/selectStrategies").TSelectStrategyProp>>;
85
94
  default: NonNullable<import("./nested/selectStrategies").TSelectStrategyProp>;
@@ -91,7 +100,11 @@ export declare const makeSelectProps: <Defaults extends {
91
100
  opened: PropType<unknown[]>;
92
101
  selected: PropType<unknown[]>;
93
102
  required: BooleanConstructor;
94
- dark: {
103
+ transparent: {
104
+ type: PropType<boolean>;
105
+ default: boolean;
106
+ };
107
+ invertColor: {
95
108
  type: PropType<boolean>;
96
109
  default: boolean;
97
110
  };
@@ -122,9 +135,6 @@ export declare const makeSelectProps: <Defaults extends {
122
135
  default: string;
123
136
  };
124
137
  itemValue: {
125
- /**
126
- * Отображать элементы выбранного списка в одну строку
127
- */
128
138
  type: PropType<import("./items").TItemKey>;
129
139
  default: string;
130
140
  };
@@ -134,7 +144,9 @@ export declare const makeSelectProps: <Defaults extends {
134
144
  };
135
145
  itemProps: {
136
146
  type: PropType<import("./items").TItemKey>;
137
- default: string;
147
+ default: string; /**
148
+ * Иконка выпадающего меню
149
+ */
138
150
  };
139
151
  returnObject: {
140
152
  type: PropType<boolean>;
@@ -149,9 +161,7 @@ export declare const makeSelectProps: <Defaults extends {
149
161
  "onUpdate:opened"?: ((value: unknown[]) => any) | undefined;
150
162
  "onClick:open"?: ((value: {
151
163
  id: unknown;
152
- value: boolean; /**
153
- * Свойства для списка
154
- */
164
+ value: boolean;
155
165
  path: unknown[];
156
166
  event: Event;
157
167
  }) => any) | undefined;
@@ -161,9 +171,17 @@ export declare const makeSelectProps: <Defaults extends {
161
171
  path: unknown[];
162
172
  event: Event;
163
173
  }) => any) | undefined;
164
- } & 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>>;
174
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "items" | "itemTitle" | "itemValue" | "itemChildren" | "itemProps" | "returnObject" | "tag" | "size" | "disabled" | "invertColor" | "transparent" | "required" | "selectStrategy" | "openStrategy" | "theme" | "lines">, keyof import("vue").VNodeProps | keyof import("vue").AllowedComponentProps>>;
165
175
  default: undefined;
166
176
  };
177
+ /**
178
+ * Иконка выпадающего меню
179
+ */
180
+ menuIcon: {
181
+ type: PropType<"search" | "link" | "list" | "filters" | "add" | "administrator" | "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-open" | "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">;
182
+ default: string;
183
+ validator: (value: TCdsIconsName) => boolean;
184
+ };
167
185
  }, Defaults>;
168
186
  export declare function useSelect(props: ISelectProps, items: ComputedRef<IInternalItem[]> | Ref<IInternalItem[]>, transformIn: IUseItems['transformIn'], transformOut: IUseItems['transformOut']): {
169
187
  model: Ref<readonly IInternalItem<any>[]> & {
@@ -1,5 +1,5 @@
1
- import type { ComputedRef, PropType } from 'vue';
2
1
  import type { MaybeRef } from '../utils';
2
+ import type { ComputedRef, PropType } from 'vue';
3
3
  export declare type TSize = typeof allowedSize[number];
4
4
  export interface ISizeProps {
5
5
  size: TSize;
@@ -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<{
@@ -1,6 +1,6 @@
1
1
  import type { PropType, ComputedRef } from 'vue';
2
2
  export interface ITextProps {
3
- text: string | undefined;
3
+ text: string | number | undefined;
4
4
  }
5
5
  export interface IUseText {
6
6
  hasText: ComputedRef<boolean>;
@@ -12,7 +12,7 @@ export declare const makeTextProps: <Defaults extends {
12
12
  * Текст
13
13
  */
14
14
  text: {
15
- type: PropType<string>;
15
+ type: PropType<string | number>;
16
16
  default: undefined;
17
17
  };
18
18
  }, Defaults>;
@@ -0,0 +1,82 @@
1
+ import { ComputedRef } from 'vue';
2
+ import type { TThemes } from '../themes';
3
+ import type { App, DeepReadonly, InjectionKey, PropType, Ref } from 'vue';
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 {};
@@ -3,6 +3,8 @@ interface ITransitionProps extends TransitionProps {
3
3
  transition: string | boolean | (TransitionProps & {
4
4
  component?: Component;
5
5
  });
6
+ disabled?: boolean;
7
+ group?: boolean;
6
8
  }
7
9
  export declare const makeTransitionProps: <Defaults extends {
8
10
  transition?: unknown;
@@ -0,0 +1,19 @@
1
+ import type { ComputedRef, PropType } from 'vue';
2
+ export interface ITransparentProps {
3
+ transparent: boolean;
4
+ }
5
+ export interface IUseTransparentProps {
6
+ transparentClasses: ComputedRef<string | undefined>;
7
+ }
8
+ export declare const makeTransparentProps: <Defaults extends {
9
+ transparent?: unknown;
10
+ } = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
11
+ /**
12
+ * Позволяет использовать компонент на прозрачном фоне
13
+ */
14
+ transparent: {
15
+ type: PropType<boolean>;
16
+ default: boolean;
17
+ };
18
+ }, Defaults>;
19
+ export declare function useTransparent(props: ITransparentProps, name: string): IUseTransparentProps;
@@ -1,5 +1,5 @@
1
- import type { PropType, ComputedRef, Ref } from 'vue';
2
1
  import type { MaybeRef } from '../utils';
2
+ import type { PropType, ComputedRef, Ref } from 'vue';
3
3
  export declare type TValidationResult = string | boolean;
4
4
  export declare type TValidationRule = TValidationResult | PromiseLike<TValidationResult> | ((value: any) => TValidationResult) | ((value: any) => PromiseLike<TValidationResult>);
5
5
  export declare type TValidationOn = typeof allowedValidationOn[number];
@@ -102,7 +102,7 @@ export declare const makeValidationProps: <Defaults extends {
102
102
  default: undefined;
103
103
  };
104
104
  /**
105
- * Убирает слот для сообщений об ошибках, если ошибок нет
105
+ * Убирает слот для сообщений об ошибках
106
106
  */
107
107
  hideMessages: {
108
108
  type: PropType<boolean>;