@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.
Files changed (222) hide show
  1. package/dist/cds.css +1 -1
  2. package/dist/cds.d.ts +54 -24
  3. package/dist/cds.es.js +12619 -1577
  4. package/dist/cds.umd.js +18 -1
  5. package/dist/components/CdsBadge/index.d.ts +1 -0
  6. package/dist/components/CdsBreadcrumbs/CdsBreadcrumbs.vue.d.ts +64 -0
  7. package/dist/components/CdsBreadcrumbs/CdsBreadcrumbsItem.vue.d.ts +54 -0
  8. package/dist/components/CdsBreadcrumbs/index.d.ts +2 -0
  9. package/dist/components/CdsButton/CdsButton.vue.d.ts +28 -18
  10. package/dist/components/CdsButton/index.d.ts +1 -0
  11. package/dist/components/CdsCheckbox/CdsCheckbox.vue.d.ts +254 -0
  12. package/dist/components/CdsCheckbox/CdsCheckboxGroup.vue.d.ts +227 -0
  13. package/dist/components/CdsCheckbox/index.d.ts +2 -0
  14. package/dist/components/CdsCombobox/CdsCombobox.vue.d.ts +2457 -0
  15. package/dist/components/CdsCombobox/composable/highlight.d.ts +12 -0
  16. package/dist/components/CdsCombobox/index.d.ts +1 -0
  17. package/dist/components/CdsDatePicker/CdsDatePicker.vue.d.ts +249 -0
  18. package/dist/components/CdsDatePicker/composable/calendar.d.ts +317 -0
  19. package/dist/components/CdsDatePicker/composable/index.d.ts +1 -0
  20. package/dist/components/CdsDatePicker/index.d.ts +1 -0
  21. package/dist/components/CdsDrawer/CdsDrawer.vue.d.ts +22 -6
  22. package/dist/components/CdsDrawer/index.d.ts +1 -0
  23. package/dist/components/CdsDropdown/CdsDropdown.vue.d.ts +2413 -0
  24. package/dist/components/CdsDropdown/index.d.ts +1 -0
  25. package/dist/components/CdsEmptyState/CdsEmptyState.vue.d.ts +54 -0
  26. package/dist/components/CdsEmptyState/index.d.ts +1 -0
  27. package/dist/components/CdsForm/CdsForm.vue.d.ts +109 -0
  28. package/dist/components/CdsForm/index.d.ts +1 -0
  29. package/dist/components/CdsGrid/CdsCol.vue.d.ts +1 -1
  30. package/dist/components/CdsGrid/composable/grid.d.ts +2 -1
  31. package/dist/components/CdsGrid/index.d.ts +3 -0
  32. package/dist/components/CdsIcon/CdsIcon.vue.d.ts +4 -4
  33. package/dist/components/CdsInput/CdsInput.vue.d.ts +239 -0
  34. package/dist/components/CdsInput/CdsInputCounter.vue.d.ts +39 -0
  35. package/dist/components/CdsInput/CdsInputDescription.vue.d.ts +26 -0
  36. package/dist/components/CdsInput/CdsInputLabel.vue.d.ts +32 -0
  37. package/dist/components/CdsInput/CdsInputMessages.vue.d.ts +221 -0
  38. package/dist/components/CdsInput/index.d.ts +5 -0
  39. package/dist/components/CdsLink/CdsLink.vue.d.ts +10 -3
  40. package/dist/components/CdsLink/index.d.ts +1 -0
  41. package/dist/components/CdsList/CdsList.vue.d.ts +62 -33
  42. package/dist/components/CdsList/CdsListGroup.vue.d.ts +7 -7
  43. package/dist/components/CdsList/CdsListItem.vue.d.ts +35 -26
  44. package/dist/components/CdsList/composable/focus.d.ts +12 -0
  45. package/dist/components/CdsList/composable/index.d.ts +1 -0
  46. package/dist/components/CdsList/composable/list.d.ts +1 -1
  47. package/dist/components/CdsLoader/CdsLoader.vue.d.ts +1 -1
  48. package/dist/components/CdsMenu/CdsMenu.vue.d.ts +697 -0
  49. package/dist/components/CdsMenu/index.d.ts +1 -0
  50. package/dist/components/CdsMenu/shared.d.ts +10 -0
  51. package/dist/components/CdsOverlay/CdsOverlay.vue.d.ts +343 -0
  52. package/dist/components/CdsOverlay/composable/activator.d.ts +81 -0
  53. package/dist/components/CdsOverlay/composable/index.d.ts +6 -0
  54. package/dist/components/CdsOverlay/composable/locationStrategies.d.ts +78 -0
  55. package/dist/components/CdsOverlay/composable/scrim.d.ts +8 -0
  56. package/dist/components/CdsOverlay/composable/scrollStrategies.d.ts +33 -0
  57. package/dist/components/CdsOverlay/composable/stack.d.ts +9 -0
  58. package/dist/components/CdsOverlay/composable/teleport.d.ts +6 -0
  59. package/dist/components/CdsOverlay/index.d.ts +1 -0
  60. package/dist/components/CdsOverlay/utils/index.d.ts +2 -0
  61. package/dist/components/CdsOverlay/utils/point.d.ts +20 -0
  62. package/dist/components/CdsOverlay/utils/requestNewFrame.d.ts +5 -0
  63. package/dist/components/CdsPagination/CdsPagination.vue.d.ts +142 -0
  64. package/dist/components/CdsPagination/index.d.ts +1 -0
  65. package/dist/components/CdsRadioButton/CdsRadio.vue.d.ts +230 -0
  66. package/dist/components/CdsRadioButton/CdsRadioButton.vue.d.ts +228 -0
  67. package/dist/components/CdsRadioButton/index.d.ts +2 -0
  68. package/dist/components/CdsSelect/CdsSelect.vue.d.ts +775 -0
  69. package/dist/components/CdsSelect/index.d.ts +1 -0
  70. package/dist/components/CdsSidebar/CdsSidebar.vue.d.ts +66 -0
  71. package/dist/components/CdsSidebar/index.d.ts +1 -0
  72. package/dist/components/CdsStages/CdsStages.vue.d.ts +102 -0
  73. package/dist/components/CdsStages/index.d.ts +1 -0
  74. package/dist/components/CdsStatus/index.d.ts +1 -0
  75. package/dist/components/CdsTable/CdsTable.vue.d.ts +1147 -0
  76. package/dist/components/CdsTable/CdsTableColumn.vue.d.ts +10 -0
  77. package/dist/components/CdsTable/CdsTableColumnGroup.vue.d.ts +10 -0
  78. package/dist/components/CdsTable/components/Body/Body.d.ts +12 -0
  79. package/dist/components/CdsTable/components/Body/BodyRow.d.ts +22 -0
  80. package/dist/components/CdsTable/components/Body/ExpandedRow.d.ts +13 -0
  81. package/dist/components/CdsTable/components/Body/index.d.ts +1 -0
  82. package/dist/components/CdsTable/components/Cell/Cell.d.ts +34 -0
  83. package/dist/components/CdsTable/components/Cell/MeasureCell.d.ts +7 -0
  84. package/dist/components/CdsTable/components/Cell/index.d.ts +2 -0
  85. package/dist/components/CdsTable/components/ColGroup/ColGroup.d.ts +8 -0
  86. package/dist/components/CdsTable/components/ColGroup/index.d.ts +1 -0
  87. package/dist/components/CdsTable/components/Filter/FilterDropdown.d.ts +14 -0
  88. package/dist/components/CdsTable/components/Filter/FilterSearch.d.ts +9 -0
  89. package/dist/components/CdsTable/components/Filter/FilterWrapper.d.ts +4 -0
  90. package/dist/components/CdsTable/components/Filter/index.d.ts +1 -0
  91. package/dist/components/CdsTable/components/FixedHolder/FixedHolder.d.ts +21 -0
  92. package/dist/components/CdsTable/components/FixedHolder/index.d.ts +1 -0
  93. package/dist/components/CdsTable/components/Footer/Footer.d.ts +8 -0
  94. package/dist/components/CdsTable/components/Footer/index.d.ts +1 -0
  95. package/dist/components/CdsTable/components/Header/DragHandle.d.ts +44 -0
  96. package/dist/components/CdsTable/components/Header/Header.d.ts +11 -0
  97. package/dist/components/CdsTable/components/Header/HeaderRow.d.ts +15 -0
  98. package/dist/components/CdsTable/components/Header/index.d.ts +1 -0
  99. package/dist/components/CdsTable/components/Icons/ExpandIcon.d.ts +12 -0
  100. package/dist/components/CdsTable/components/Panel/Panel.d.ts +4 -0
  101. package/dist/components/CdsTable/components/Panel/index.d.ts +1 -0
  102. package/dist/components/CdsTable/components/ResizeObserver/ResizeObserver.d.ts +11 -0
  103. package/dist/components/CdsTable/components/ResizeObserver/index.d.ts +1 -0
  104. package/dist/components/CdsTable/components/StickyScrollbar/StickyScrollbar.d.ts +15 -0
  105. package/dist/components/CdsTable/components/StickyScrollbar/index.d.ts +1 -0
  106. package/dist/components/CdsTable/components/Table/InternalTable.d.ts +1139 -0
  107. package/dist/components/CdsTable/components/TableProvider.d.ts +1132 -0
  108. package/dist/components/CdsTable/composable/columns.d.ts +28 -0
  109. package/dist/components/CdsTable/composable/filter.d.ts +16 -0
  110. package/dist/components/CdsTable/composable/flat.d.ts +17 -0
  111. package/dist/components/CdsTable/composable/frame.d.ts +6 -0
  112. package/dist/components/CdsTable/composable/index.d.ts +10 -0
  113. package/dist/components/CdsTable/composable/pagination.d.ts +18 -0
  114. package/dist/components/CdsTable/composable/selection.d.ts +23 -0
  115. package/dist/components/CdsTable/composable/sorter.d.ts +21 -0
  116. package/dist/components/CdsTable/composable/sticky.d.ts +12 -0
  117. package/dist/components/CdsTable/composable/table.d.ts +640 -0
  118. package/dist/components/CdsTable/constants.d.ts +2 -0
  119. package/dist/components/CdsTable/context/body.d.ts +19 -0
  120. package/dist/components/CdsTable/context/expandedRow.d.ts +10 -0
  121. package/dist/components/CdsTable/context/hover.d.ts +9 -0
  122. package/dist/components/CdsTable/context/index.d.ts +8 -0
  123. package/dist/components/CdsTable/context/resize.d.ts +9 -0
  124. package/dist/components/CdsTable/context/slots.d.ts +17 -0
  125. package/dist/components/CdsTable/context/sticky.d.ts +2 -0
  126. package/dist/components/CdsTable/context/summary.d.ts +14 -0
  127. package/dist/components/CdsTable/context/table.d.ts +20 -0
  128. package/dist/components/CdsTable/index.d.ts +6 -0
  129. package/dist/components/CdsTable/interface.d.ts +323 -0
  130. package/dist/components/CdsTable/utils/column.d.ts +7 -0
  131. package/dist/components/CdsTable/utils/expand.d.ts +2 -0
  132. package/dist/components/CdsTable/utils/fixed.d.ts +13 -0
  133. package/dist/components/CdsTable/utils/index.d.ts +5 -0
  134. package/dist/components/CdsTable/utils/listener.d.ts +5 -0
  135. package/dist/components/CdsTable/utils/value.d.ts +10 -0
  136. package/dist/components/CdsTag/CdsTag.vue.d.ts +11 -6
  137. package/dist/components/CdsTag/index.d.ts +1 -0
  138. package/dist/components/CdsTextArea/CdsTextArea.vue.d.ts +782 -0
  139. package/dist/components/CdsTextArea/index.d.ts +1 -0
  140. package/dist/components/CdsTextInput/CdsTextInput.vue.d.ts +735 -0
  141. package/dist/components/CdsTextInput/index.d.ts +1 -0
  142. package/dist/components/CdsTimePicker/CdsTimePicker.vue.d.ts +144 -0
  143. package/dist/components/CdsTimePicker/composable/index.d.ts +1 -0
  144. package/dist/components/CdsTimePicker/composable/time.d.ts +134 -0
  145. package/dist/components/CdsTimePicker/index.d.ts +1 -0
  146. package/dist/components/CdsTooltip/CdsTooltip.vue.d.ts +765 -0
  147. package/dist/components/CdsTooltip/index.d.ts +1 -0
  148. package/dist/components/CdsTree/composable/index.d.ts +1 -0
  149. package/dist/components/CdsTree/composable/tree.d.ts +6 -0
  150. package/dist/components/CdsTree/interface.d.ts +60 -0
  151. package/dist/components/CdsTree/utils/conduct.d.ts +11 -0
  152. package/dist/components/CdsTree/utils/data.d.ts +36 -0
  153. package/dist/components/CdsTree/utils/index.d.ts +2 -0
  154. package/dist/components/index.d.ts +60 -1
  155. package/dist/composable/color.d.ts +4 -2
  156. package/dist/composable/datetime.d.ts +45 -0
  157. package/dist/composable/delay.d.ts +29 -0
  158. package/dist/composable/dimensions.d.ts +65 -0
  159. package/dist/composable/direction.d.ts +24 -0
  160. package/dist/composable/display.d.ts +59 -0
  161. package/dist/composable/field.d.ts +139 -0
  162. package/dist/composable/filter.d.ts +52 -0
  163. package/dist/composable/focus.d.ts +19 -9
  164. package/dist/composable/form.d.ts +128 -0
  165. package/dist/composable/hidration.d.ts +2 -0
  166. package/dist/composable/icon.d.ts +29 -4
  167. package/dist/composable/index.d.ts +24 -0
  168. package/dist/composable/input.d.ts +99 -0
  169. package/dist/composable/items.d.ts +12 -9
  170. package/dist/composable/lazy.d.ts +21 -0
  171. package/dist/composable/link.d.ts +1 -2
  172. package/dist/composable/loading.d.ts +1 -0
  173. package/dist/composable/locale.d.ts +18 -0
  174. package/dist/composable/menu.d.ts +37 -0
  175. package/dist/composable/nested/nested.d.ts +2 -2
  176. package/dist/composable/overlay.d.ts +98 -0
  177. package/dist/composable/readonly.d.ts +19 -0
  178. package/dist/composable/refs.d.ts +6 -0
  179. package/dist/composable/resizeObserver.d.ts +7 -0
  180. package/dist/composable/router.d.ts +3 -0
  181. package/dist/composable/scopeId.d.ts +5 -0
  182. package/dist/composable/select.d.ts +86 -0
  183. package/dist/composable/state.d.ts +13 -0
  184. package/dist/composable/title.d.ts +21 -0
  185. package/dist/composable/transition.d.ts +22 -0
  186. package/dist/composable/validation.d.ts +112 -0
  187. package/dist/create.d.ts +23 -0
  188. package/dist/directives/click-outside/index.d.ts +14 -0
  189. package/dist/directives/index.d.ts +1 -2
  190. package/dist/globals.d.ts +18 -0
  191. package/dist/locale/en.d.ts +3 -0
  192. package/dist/locale/index.d.ts +13 -0
  193. package/dist/locale/ru.d.ts +3 -0
  194. package/dist/transitions/createTransition.d.ts +31 -2
  195. package/dist/transitions/index.d.ts +240 -0
  196. package/dist/utils/date/date.d.ts +190 -0
  197. package/dist/utils/dom/anchor.d.ts +23 -0
  198. package/dist/utils/dom/animation.d.ts +6 -0
  199. package/dist/utils/dom/box.d.ts +26 -0
  200. package/dist/utils/dom/classNames.d.ts +1 -0
  201. package/dist/utils/dom/dom.d.ts +10 -0
  202. package/dist/utils/dom/getScrollParent.d.ts +12 -0
  203. package/dist/utils/dom/globals.d.ts +4 -0
  204. package/dist/utils/dom/scrollTo.d.ts +10 -0
  205. package/dist/utils/dom/warn.d.ts +1 -0
  206. package/dist/utils/dom/wrapperRaf.d.ts +4 -0
  207. package/dist/utils/helpers.d.ts +133 -20
  208. package/dist/utils/index.d.ts +16 -1
  209. package/dist/utils/use/cache.d.ts +4 -0
  210. package/dist/utils/use/eagerComputed.d.ts +3 -0
  211. package/dist/utils/use/pickAttrs.d.ts +11 -0
  212. package/dist/utils/use/reactiveComputed.d.ts +4 -0
  213. package/dist/utils/use/reactivePick.d.ts +8 -0
  214. package/dist/utils/use/toReactive.d.ts +8 -0
  215. package/dist/utils/use/toValue.d.ts +5 -0
  216. package/package.json +8 -5
  217. package/src/scss/mixins/layout/_shadow.scss +4 -0
  218. package/src/scss/mixins/layout/index.scss +1 -0
  219. package/src/scss/modules/_transition.scss +133 -3
  220. package/src/scss/themes/index.ts +1 -1
  221. package/src/scss/utility/lists.scss +1 -0
  222. package/dist/types/CdsOptions.d.ts +0 -3
@@ -0,0 +1,12 @@
1
+ import { IInternalItem, TFilterMath } from '../../../composable';
2
+ interface IHighlightProps {
3
+ isPure: boolean;
4
+ item: IInternalItem;
5
+ matches: TFilterMath | undefined;
6
+ length: number;
7
+ name: string;
8
+ }
9
+ export declare function CdsHighlight(props: IHighlightProps): import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
10
+ [key: string]: any;
11
+ }>;
12
+ export {};
@@ -0,0 +1 @@
1
+ export { default as CdsCombobox } from './CdsCombobox.vue';
@@ -0,0 +1,249 @@
1
+ import type { IRawDate } from '../../utils';
2
+ import type { TDatetimeValueRange } from '../../composable';
3
+ export declare const componentName = "CdsDatePicker";
4
+ declare const _sfc_main: import("vue").DefineComponent<{
5
+ locale: {
6
+ type: import("vue").PropType<"ru" | "en" | import("../../locale").ILocale>;
7
+ default: undefined;
8
+ };
9
+ readonly: {
10
+ type: import("vue").PropType<boolean>;
11
+ default: boolean;
12
+ };
13
+ disabled: {
14
+ type: import("vue").PropType<boolean>;
15
+ default: boolean;
16
+ };
17
+ modelValue: {
18
+ type: import("vue").PropType<string | TDatetimeValueRange | (string | TDatetimeValueRange)[]>;
19
+ default: null;
20
+ };
21
+ mask: {
22
+ type: import("vue").PropType<string>;
23
+ default: string;
24
+ };
25
+ title: {
26
+ type: import("vue").PropType<string>;
27
+ default: undefined;
28
+ };
29
+ description: {
30
+ type: import("vue").PropType<string>;
31
+ default: undefined;
32
+ };
33
+ header: {
34
+ type: import("vue").PropType<boolean>;
35
+ default: boolean;
36
+ };
37
+ todayBtn: {
38
+ type: import("vue").PropType<boolean>;
39
+ default: boolean;
40
+ };
41
+ defaultYearMonth: {
42
+ type: import("vue").PropType<string>;
43
+ default: undefined;
44
+ validator: (value: string) => boolean;
45
+ };
46
+ view: {
47
+ type: import("vue").PropType<"Calendar" | "Years" | "Months">;
48
+ default: string;
49
+ validator: (value: "Calendar" | "Years" | "Months") => boolean;
50
+ };
51
+ multiple: {
52
+ type: import("vue").PropType<boolean>;
53
+ default: boolean;
54
+ };
55
+ range: {
56
+ type: import("vue").PropType<boolean>;
57
+ default: boolean;
58
+ };
59
+ firstDayOfWeek: {
60
+ type: import("vue").PropType<string | number>;
61
+ default: number;
62
+ };
63
+ allowedDates: {
64
+ type: import("vue").PropType<import("./composable").TCalendarAllowedDates>;
65
+ };
66
+ minYearMonth: {
67
+ type: import("vue").PropType<string>;
68
+ default: undefined;
69
+ validator: (value: string) => boolean;
70
+ };
71
+ maxYearMonth: {
72
+ type: import("vue").PropType<string>;
73
+ default: undefined;
74
+ validator: (value: string) => boolean;
75
+ };
76
+ noUnset: {
77
+ type: import("vue").PropType<boolean>;
78
+ default: boolean;
79
+ };
80
+ events: {
81
+ type: import("vue").PropType<import("./composable").TCalendarEvents>;
82
+ };
83
+ eventsColor: {
84
+ type: import("vue").PropType<import("./composable").TCalendarEventsColor>;
85
+ default: string;
86
+ };
87
+ emitImmediately: {
88
+ type: import("vue").PropType<boolean>;
89
+ default: boolean;
90
+ };
91
+ hideSiblingMonth: {
92
+ type: import("vue").PropType<boolean>;
93
+ default: boolean;
94
+ };
95
+ }, {
96
+ setToday: () => void;
97
+ setCalendarTo: (year: number, month: number) => void;
98
+ setView: (viewMode: "Calendar" | "Years" | "Months") => void;
99
+ offsetCalendar: (type: "year" | "month", descending: number) => void;
100
+ setEditingRange: (from: IRawDate, to: IRawDate) => void;
101
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
102
+ /**
103
+ * Событие при изменении значения (v-model)
104
+ * @type { value: string | TDatetimeValueRange | Array<string | TDatetimeValueRange>, reason: string, details: IRawDate }
105
+ */
106
+ 'update:modelValue': (...args: any) => true;
107
+ /**
108
+ * Событие при переходе к другому месяцу или году (при изменении модели из вне также будет срабатывать)
109
+ */
110
+ navigation: ({ year, month }: {
111
+ year: number | undefined;
112
+ month: number | undefined;
113
+ }) => true;
114
+ /**
115
+ * Событие начала выбора диапазона дат
116
+ */
117
+ rangeStart: (value: Partial<IRawDate>) => true;
118
+ /**
119
+ * Событие окончания выбора диапазона дат
120
+ */
121
+ rangeEnd: ({ from, to }: {
122
+ from: Partial<IRawDate>;
123
+ to: Partial<IRawDate>;
124
+ }) => true;
125
+ }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
126
+ locale: {
127
+ type: import("vue").PropType<"ru" | "en" | import("../../locale").ILocale>;
128
+ default: undefined;
129
+ };
130
+ readonly: {
131
+ type: import("vue").PropType<boolean>;
132
+ default: boolean;
133
+ };
134
+ disabled: {
135
+ type: import("vue").PropType<boolean>;
136
+ default: boolean;
137
+ };
138
+ modelValue: {
139
+ type: import("vue").PropType<string | TDatetimeValueRange | (string | TDatetimeValueRange)[]>;
140
+ default: null;
141
+ };
142
+ mask: {
143
+ type: import("vue").PropType<string>;
144
+ default: string;
145
+ };
146
+ title: {
147
+ type: import("vue").PropType<string>;
148
+ default: undefined;
149
+ };
150
+ description: {
151
+ type: import("vue").PropType<string>;
152
+ default: undefined;
153
+ };
154
+ header: {
155
+ type: import("vue").PropType<boolean>;
156
+ default: boolean;
157
+ };
158
+ todayBtn: {
159
+ type: import("vue").PropType<boolean>;
160
+ default: boolean;
161
+ };
162
+ defaultYearMonth: {
163
+ type: import("vue").PropType<string>;
164
+ default: undefined;
165
+ validator: (value: string) => boolean;
166
+ };
167
+ view: {
168
+ type: import("vue").PropType<"Calendar" | "Years" | "Months">;
169
+ default: string;
170
+ validator: (value: "Calendar" | "Years" | "Months") => boolean;
171
+ };
172
+ multiple: {
173
+ type: import("vue").PropType<boolean>;
174
+ default: boolean;
175
+ };
176
+ range: {
177
+ type: import("vue").PropType<boolean>;
178
+ default: boolean;
179
+ };
180
+ firstDayOfWeek: {
181
+ type: import("vue").PropType<string | number>;
182
+ default: number;
183
+ };
184
+ allowedDates: {
185
+ type: import("vue").PropType<import("./composable").TCalendarAllowedDates>;
186
+ };
187
+ minYearMonth: {
188
+ type: import("vue").PropType<string>;
189
+ default: undefined;
190
+ validator: (value: string) => boolean;
191
+ };
192
+ maxYearMonth: {
193
+ type: import("vue").PropType<string>;
194
+ default: undefined;
195
+ validator: (value: string) => boolean;
196
+ };
197
+ noUnset: {
198
+ type: import("vue").PropType<boolean>;
199
+ default: boolean;
200
+ };
201
+ events: {
202
+ type: import("vue").PropType<import("./composable").TCalendarEvents>;
203
+ };
204
+ eventsColor: {
205
+ type: import("vue").PropType<import("./composable").TCalendarEventsColor>;
206
+ default: string;
207
+ };
208
+ emitImmediately: {
209
+ type: import("vue").PropType<boolean>;
210
+ default: boolean;
211
+ };
212
+ hideSiblingMonth: {
213
+ type: import("vue").PropType<boolean>;
214
+ default: boolean;
215
+ };
216
+ }>> & {
217
+ "onUpdate:modelValue"?: ((...args: any) => any) | undefined;
218
+ onNavigation?: ((args_0: {
219
+ year: number | undefined;
220
+ month: number | undefined;
221
+ }) => any) | undefined;
222
+ onRangeStart?: ((value: Partial<IRawDate>) => any) | undefined;
223
+ onRangeEnd?: ((args_0: {
224
+ from: Partial<IRawDate>;
225
+ to: Partial<IRawDate>;
226
+ }) => any) | undefined;
227
+ }, {
228
+ description: string;
229
+ disabled: boolean;
230
+ title: string;
231
+ readonly: boolean;
232
+ modelValue: string | TDatetimeValueRange | (string | TDatetimeValueRange)[];
233
+ multiple: boolean;
234
+ header: boolean;
235
+ todayBtn: boolean;
236
+ defaultYearMonth: string;
237
+ view: "Calendar" | "Years" | "Months";
238
+ range: boolean;
239
+ firstDayOfWeek: string | number;
240
+ minYearMonth: string;
241
+ maxYearMonth: string;
242
+ noUnset: boolean;
243
+ eventsColor: import("./composable").TCalendarEventsColor;
244
+ emitImmediately: boolean;
245
+ hideSiblingMonth: boolean;
246
+ mask: string;
247
+ locale: "ru" | "en" | import("../../locale").ILocale;
248
+ }>;
249
+ export default _sfc_main;
@@ -0,0 +1,317 @@
1
+ import { TDateLocale } from '../../../utils';
2
+ import type { PropType, Ref } from 'vue';
3
+ import type { IRawDate } from '../../../utils';
4
+ import type { TDatetimeValueRange } from '../../../composable';
5
+ export declare type TCalendarView = typeof availableViews[number];
6
+ export declare type TCalendarAllowedDates = string[] | ((date: string) => boolean);
7
+ export declare type TCalendarEvents = string[] | ((date: string) => boolean);
8
+ export declare type TCalendarEventsColor = string | ((date: string) => boolean);
9
+ export interface ICalendarProps {
10
+ title?: string;
11
+ description?: string;
12
+ header?: boolean;
13
+ todayBtn?: boolean;
14
+ defaultYearMonth?: string;
15
+ view: TCalendarView;
16
+ multiple?: boolean;
17
+ range?: boolean;
18
+ firstDayOfWeek: number | string;
19
+ allowedDates?: TCalendarAllowedDates;
20
+ minYearMonth?: string;
21
+ maxYearMonth?: string;
22
+ noUnset?: boolean;
23
+ events?: TCalendarEvents;
24
+ eventsColor?: TCalendarEventsColor;
25
+ emitImmediately?: boolean;
26
+ hideSiblingMonth?: boolean;
27
+ }
28
+ export declare const YEARS_INTERVAL = 20;
29
+ export declare const lineStr = " \u2014 ";
30
+ export declare const availableViews: readonly ["Calendar", "Years", "Months"];
31
+ export declare const makeCalendarProps: <Defaults extends {
32
+ title?: unknown;
33
+ description?: unknown;
34
+ header?: unknown;
35
+ todayBtn?: unknown;
36
+ defaultYearMonth?: unknown;
37
+ view?: unknown;
38
+ multiple?: unknown;
39
+ range?: unknown;
40
+ firstDayOfWeek?: unknown;
41
+ allowedDates?: unknown;
42
+ minYearMonth?: unknown;
43
+ maxYearMonth?: unknown;
44
+ noUnset?: unknown;
45
+ events?: unknown;
46
+ eventsColor?: unknown;
47
+ emitImmediately?: unknown;
48
+ hideSiblingMonth?: unknown;
49
+ } = {}>(defaults?: Defaults | undefined) => import('../../../utils').AppendDefault<{
50
+ /**
51
+ * Заголовок календаря. Отображается в шапке календаря.
52
+ */
53
+ title: {
54
+ type: PropType<string>;
55
+ default: undefined;
56
+ };
57
+ /**
58
+ * Описание календаря. Отображается в шапке календаря.
59
+ */
60
+ description: {
61
+ type: PropType<string>;
62
+ default: undefined;
63
+ };
64
+ /**
65
+ * Отображать шапку календаря
66
+ */
67
+ header: {
68
+ type: PropType<boolean>;
69
+ default: boolean;
70
+ };
71
+ /**
72
+ * Отображать кнопку "Сегодня" в шапке календаря
73
+ */
74
+ todayBtn: {
75
+ type: PropType<boolean>;
76
+ default: boolean;
77
+ };
78
+ /**
79
+ * Отображаемый год/месяц в формате YYYY/MM. По-умолчанию это текущий год/месяц если не указана v-model.
80
+ */
81
+ defaultYearMonth: {
82
+ type: PropType<string>;
83
+ default: undefined;
84
+ validator: (value: string) => boolean;
85
+ };
86
+ /**
87
+ * Вид календаря по-умолчанию. Возможные значения: 'Calendar', 'Year', 'Month'.
88
+ */
89
+ view: {
90
+ type: PropType<"Calendar" | "Years" | "Months">;
91
+ default: string;
92
+ validator: (value: TCalendarView) => boolean;
93
+ };
94
+ /**
95
+ * Разрешает множественный выбор дат. v-model должна быть массивом.
96
+ */
97
+ multiple: {
98
+ type: PropType<boolean>;
99
+ default: boolean;
100
+ };
101
+ /**
102
+ * Разрешает выбор диапазона дат. v-model должна быть массивом.
103
+ */
104
+ range: {
105
+ type: PropType<boolean>;
106
+ default: boolean;
107
+ };
108
+ /**
109
+ * Первый день недели (понедельник по-умолчанию).
110
+ */
111
+ firstDayOfWeek: {
112
+ type: PropType<string | number>;
113
+ default: number;
114
+ };
115
+ /**
116
+ * Массив дат, которые будут отображаться в календаре.
117
+ * При использовании функции, функция поучает дату в формате YYYY/MM/DD и должна вернуть true или false.
118
+ */
119
+ allowedDates: {
120
+ type: PropType<TCalendarAllowedDates>;
121
+ };
122
+ /**
123
+ * Запретить навигацию в календаре до указанной минимальной даты в формате YYYY/MM.
124
+ */
125
+ minYearMonth: {
126
+ type: PropType<string>;
127
+ default: undefined;
128
+ validator: (value: string) => boolean;
129
+ };
130
+ /**
131
+ * Запретить навигацию в календаре после указанной максимальной даты в формате YYYY/MM.
132
+ */
133
+ maxYearMonth: {
134
+ type: PropType<string>;
135
+ default: undefined;
136
+ validator: (value: string) => boolean;
137
+ };
138
+ /**
139
+ * Запретить сброс даты в календаре.
140
+ */
141
+ noUnset: {
142
+ type: PropType<boolean>;
143
+ default: boolean;
144
+ };
145
+ /**
146
+ * Список событий, которые будут отображаться в календаре. Формат: YYYY/MM/DD.
147
+ */
148
+ events: {
149
+ type: PropType<TCalendarEvents>;
150
+ };
151
+ /**
152
+ * Цвет событий в календаре.
153
+ */
154
+ eventsColor: {
155
+ type: PropType<TCalendarEventsColor>;
156
+ default: string;
157
+ };
158
+ /**
159
+ * Эмитировать событие update:modelValue при смене месяца и года сразу.
160
+ * Недоступно при multiple и range.
161
+ */
162
+ emitImmediately: {
163
+ type: PropType<boolean>;
164
+ default: boolean;
165
+ };
166
+ /**
167
+ * Скрыть дни соседних месяцев в календаре.
168
+ */
169
+ hideSiblingMonth: {
170
+ type: PropType<boolean>;
171
+ default: boolean;
172
+ };
173
+ }, Defaults>;
174
+ export declare function useCalendar(props: ICalendarProps, model: Ref<readonly (string | TDatetimeValueRange)[]> & {
175
+ readonly externalValue: string | TDatetimeValueRange | (string | TDatetimeValueRange)[];
176
+ }, internalLocale: Ref<TDateLocale>, internalMask: Ref<string>, getCurrentDate: () => IRawDate, decodeString: (date: string) => IRawDate, emitValue: (value: any, action: string, date: IRawDate | TDatetimeValueRange) => void, emitImmediately: (reason: string) => void): {
177
+ today: import("vue").ComputedRef<IRawDate>;
178
+ editRange: Ref<{
179
+ init: {
180
+ year?: number | undefined;
181
+ month?: number | undefined;
182
+ day?: number | undefined;
183
+ hour?: number | undefined;
184
+ minute?: number | undefined;
185
+ second?: number | undefined;
186
+ millisecond?: number | undefined;
187
+ timezoneOffset?: number | undefined;
188
+ dateHash?: string | undefined;
189
+ timeHash?: string | undefined;
190
+ date?: number | undefined;
191
+ changed?: boolean | undefined;
192
+ } | null;
193
+ initHash: number;
194
+ final: {
195
+ year?: number | undefined;
196
+ month?: number | undefined;
197
+ day?: number | undefined;
198
+ hour?: number | undefined;
199
+ minute?: number | undefined;
200
+ second?: number | undefined;
201
+ millisecond?: number | undefined;
202
+ timezoneOffset?: number | undefined;
203
+ dateHash?: string | undefined;
204
+ timeHash?: string | undefined;
205
+ date?: number | undefined;
206
+ changed?: boolean | undefined;
207
+ } | null;
208
+ finalHash: number;
209
+ } | null>;
210
+ getNativeDateFn: import("vue").ComputedRef<(model: IRawDate) => Date>;
211
+ defaultView: Ref<"Calendar" | "Years" | "Months">;
212
+ monthDirection: Ref<"left" | "right">;
213
+ yearDirection: Ref<"left" | "right">;
214
+ isImmediate: import("vue").ComputedRef<boolean | undefined>;
215
+ viewModel: Ref<{
216
+ year?: number | undefined;
217
+ month?: number | undefined;
218
+ day?: number | undefined;
219
+ hour?: number | undefined;
220
+ minute?: number | undefined;
221
+ second?: number | undefined;
222
+ millisecond?: number | undefined;
223
+ timezoneOffset?: number | undefined;
224
+ dateHash?: string | undefined;
225
+ timeHash?: string | undefined;
226
+ date?: number | undefined;
227
+ changed?: boolean | undefined;
228
+ }>;
229
+ daysModel: import("vue").ComputedRef<IRawDate[]>;
230
+ rangeModel: import("vue").ComputedRef<{
231
+ from: IRawDate;
232
+ to: IRawDate;
233
+ }[]>;
234
+ minSelectedModel: import("vue").ComputedRef<IRawDate>;
235
+ maxSelectedModel: import("vue").ComputedRef<IRawDate>;
236
+ daysInModel: import("vue").ComputedRef<number>;
237
+ startYear: Ref<number | undefined>;
238
+ daysOfWeek: import("vue").ComputedRef<string[]>;
239
+ daysInMonth: import("vue").ComputedRef<number>;
240
+ viewMonthHash: import("vue").ComputedRef<string>;
241
+ minNav: import("vue").ComputedRef<{
242
+ year: number;
243
+ month: number;
244
+ } | undefined>;
245
+ maxNav: import("vue").ComputedRef<{
246
+ year: number;
247
+ month: number;
248
+ } | undefined>;
249
+ navBoundaries: import("vue").ComputedRef<{
250
+ month: {
251
+ prev: boolean;
252
+ next: boolean;
253
+ };
254
+ year: {
255
+ prev: boolean;
256
+ next: boolean;
257
+ };
258
+ }>;
259
+ days: import("vue").ComputedRef<{
260
+ i: number;
261
+ fill?: boolean | undefined;
262
+ event?: boolean | TCalendarEventsColor | undefined;
263
+ classes?: string[] | undefined;
264
+ in?: boolean | undefined;
265
+ flat?: boolean | undefined;
266
+ selected?: boolean | undefined;
267
+ unelevated?: boolean | undefined;
268
+ range?: {
269
+ from: IRawDate;
270
+ to: IRawDate;
271
+ } | undefined;
272
+ rangeFrom?: boolean | undefined;
273
+ rangeTo?: boolean | undefined;
274
+ editRange?: boolean | undefined;
275
+ editRangeFrom?: boolean | undefined;
276
+ editRangeTo?: boolean | undefined;
277
+ today?: boolean | undefined;
278
+ color?: string | undefined;
279
+ }[]>;
280
+ daysMap: import("vue").ComputedRef<Record<string, number[]>>;
281
+ rangeMap: import("vue").ComputedRef<Record<string, {
282
+ from?: number | undefined;
283
+ to?: number | undefined;
284
+ range: {
285
+ from: IRawDate;
286
+ to: IRawDate;
287
+ };
288
+ }[]>>;
289
+ rangeView: import("vue").ComputedRef<{
290
+ from?: number | undefined;
291
+ includeFrom: boolean;
292
+ to?: number | undefined;
293
+ includeTo: boolean;
294
+ } | undefined>;
295
+ selectionDaysMap: import("vue").ComputedRef<Record<string, boolean>>;
296
+ getViewModel: () => IRawDate;
297
+ updateViewModel: (year: number, month: number, time?: IRawDate) => void;
298
+ setToday: () => void;
299
+ setCalendarTo: (year: number, month: number) => void;
300
+ goToMonth: (offset: number) => void;
301
+ goToYear: (offset: number) => void;
302
+ setMonth: (month: number) => void;
303
+ setYear: (year: number) => void;
304
+ setView: (viewMode: TCalendarView) => void;
305
+ setEditingRange: (from: IRawDate, to: IRawDate) => void;
306
+ toggleDate: (date: IRawDate | TDatetimeValueRange, monthHash: string) => void;
307
+ addToModel: (date: IRawDate) => void;
308
+ addToModelRange: (date: TDatetimeValueRange) => void;
309
+ removeFromModel: (date: IRawDate) => void;
310
+ removeFromModelRange: (date: TDatetimeValueRange) => void;
311
+ offsetCalendar: (type: 'month' | 'year', descending: number) => void;
312
+ encodeEntry: (date: any, mask?: string, locale?: TDateLocale) => string | {
313
+ from: string | undefined;
314
+ to: string | undefined;
315
+ } | undefined;
316
+ };
317
+ export declare function getMonthHash(date: IRawDate): string;
@@ -0,0 +1 @@
1
+ export * from './calendar';
@@ -0,0 +1 @@
1
+ export { default as CdsDatePicker } from './CdsDatePicker.vue';
@@ -91,7 +91,23 @@ declare const _sfc_main: import("vue").DefineComponent<{
91
91
  onClose: () => void;
92
92
  onMouseenter: () => void;
93
93
  onMouseleave: () => void;
94
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("opened" | "closed" | "update:modelValue")[], "opened" | "closed" | "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
94
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
95
+ /**
96
+ * Событие открытия
97
+ * @type { boolean }
98
+ */
99
+ opened: (value: boolean) => true;
100
+ /**
101
+ * Событие закрытия
102
+ * @type { boolean }
103
+ */
104
+ closed: (value: boolean) => true;
105
+ /**
106
+ * Событие изменения v-model
107
+ * @type { boolean }
108
+ */
109
+ 'update:modelValue': (value: boolean) => true;
110
+ }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
95
111
  tag: Omit<{
96
112
  type: PropType<string>;
97
113
  default: string;
@@ -161,18 +177,18 @@ declare const _sfc_main: import("vue").DefineComponent<{
161
177
  default: boolean;
162
178
  };
163
179
  }>> & {
164
- onOpened?: ((...args: any[]) => any) | undefined;
165
- onClosed?: ((...args: any[]) => any) | undefined;
166
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
180
+ "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
181
+ onOpened?: ((value: boolean) => any) | undefined;
182
+ onClosed?: ((value: boolean) => any) | undefined;
167
183
  }, {
168
184
  dark: boolean;
169
- fixed: boolean;
170
185
  tag: string;
186
+ fixed: boolean;
171
187
  modelValue: boolean | null;
188
+ right: boolean;
172
189
  permanent: boolean;
173
190
  temporary: boolean;
174
191
  minified: boolean;
175
- right: boolean;
176
192
  border: boolean;
177
193
  fixedSlots: boolean;
178
194
  }>;
@@ -0,0 +1 @@
1
+ export { default as CdsDrawer } from './CdsDrawer.vue';