@central-design-system/components 3.0.0-alpha.12 → 3.0.0-alpha.13

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 (51) hide show
  1. package/dist/cds.css +1 -1
  2. package/dist/cds.d.ts +10 -1
  3. package/dist/cds.es.js +7041 -6131
  4. package/dist/cds.umd.js +3 -3
  5. package/dist/components/CdsButton/CdsButton.vue.d.ts +70 -19
  6. package/dist/components/CdsCheckbox/CdsCheckbox.vue.d.ts +1 -1
  7. package/dist/components/CdsCombobox/CdsCombobox.vue.d.ts +4 -4
  8. package/dist/components/CdsContainer/CdsContainer.vue.d.ts +45 -46
  9. package/dist/components/CdsContainer/CdsContainerItem.vue.d.ts +3 -3
  10. package/dist/components/CdsDropdown/CdsDropdown.vue.d.ts +4 -4
  11. package/dist/components/CdsExpandablePanel/CdsExpandablePanel.vue.d.ts +119 -0
  12. package/dist/components/CdsExpandablePanel/CdsExpandablePanelContent.vue.d.ts +15 -0
  13. package/dist/components/CdsExpandablePanel/CdsExpandablePanelTitle.vue.d.ts +55 -0
  14. package/dist/components/CdsExpandablePanel/CdsExpandablePanels.vue.d.ts +115 -0
  15. package/dist/components/CdsExpandablePanel/composable/expandablePanelTitleProps.d.ts +31 -0
  16. package/dist/components/CdsExpandablePanel/composable/expandablePanels.d.ts +16 -0
  17. package/dist/components/CdsExpandablePanel/composable/index.d.ts +1 -0
  18. package/dist/components/CdsExpandablePanel/index.d.ts +4 -0
  19. package/dist/components/CdsList/CdsListGroup.vue.d.ts +1 -1
  20. package/dist/components/CdsModal/CdsModal.vue.d.ts +781 -0
  21. package/dist/components/CdsModal/index.d.ts +1 -0
  22. package/dist/components/CdsSelect/CdsSelect.vue.d.ts +2 -2
  23. package/dist/components/CdsSlideGroup/CdsSlideGroup.vue.d.ts +162 -0
  24. package/dist/components/CdsSlideGroup/CdsSlideGroupItem.vue.d.ts +43 -0
  25. package/dist/components/CdsSlideGroup/index.d.ts +2 -0
  26. package/dist/components/CdsSlideGroup/utils/calculate.d.ts +14 -0
  27. package/dist/components/CdsSlideGroup/utils/index.d.ts +1 -0
  28. package/dist/components/CdsTable/CdsTable.vue.d.ts +1 -1
  29. package/dist/components/CdsTable/components/Table/InternalTable.d.ts +1 -1
  30. package/dist/components/CdsTable/components/TableProvider.d.ts +1 -1
  31. package/dist/components/CdsTable/composable/scroll.d.ts +4608 -0
  32. package/dist/components/CdsTabs/CdsTab.vue.d.ts +132 -0
  33. package/dist/components/CdsTabs/CdsTabs.vue.d.ts +216 -0
  34. package/dist/components/CdsTabs/index.d.ts +2 -0
  35. package/dist/components/CdsTabs/shared.d.ts +3 -0
  36. package/dist/components/CdsTabs/utils/helpers.d.ts +2 -0
  37. package/dist/components/CdsTabs/utils/index.d.ts +1 -0
  38. package/dist/components/CdsTextArea/CdsTextArea.vue.d.ts +2 -2
  39. package/dist/components/CdsTextInput/CdsTextInput.vue.d.ts +2 -2
  40. package/dist/components/index.d.ts +14 -1
  41. package/dist/composable/align.d.ts +17 -0
  42. package/dist/composable/group.d.ts +31 -5
  43. package/dist/composable/index.d.ts +1 -0
  44. package/dist/composable/resizeObserver.d.ts +1 -1
  45. package/dist/transitions/index.d.ts +61 -0
  46. package/dist/transitions/modalTransition.d.ts +8 -0
  47. package/dist/utils/helpers.d.ts +3 -1
  48. package/package.json +3 -3
  49. package/src/scss/modules/_reset.scss +5 -0
  50. package/src/scss/modules/_transition.scss +48 -1
  51. package/src/scss/themes/index.ts +1 -1
@@ -12,6 +12,7 @@ export interface IGroupProps {
12
12
  required?: boolean | 'force';
13
13
  max?: number;
14
14
  selectedClass: string | undefined;
15
+ 'onUpdate:modelValue': ((val: unknown) => void) | undefined;
15
16
  }
16
17
  export interface IGroupProvide {
17
18
  selected: Ref<Readonly<number[]>>;
@@ -51,14 +52,14 @@ export declare const makeGroupProps: <Defaults extends {
51
52
  * Значение v-model
52
53
  */
53
54
  modelValue: {
54
- type: PropType<unknown>;
55
+ type: null;
55
56
  default: undefined;
56
57
  };
57
58
  /**
58
59
  * Множественный выбор
59
60
  */
60
61
  multiple: {
61
- type: BooleanConstructor;
62
+ type: PropType<boolean>;
62
63
  default: boolean;
63
64
  };
64
65
  /**
@@ -66,13 +67,13 @@ export declare const makeGroupProps: <Defaults extends {
66
67
  */
67
68
  required: {
68
69
  type: PropType<boolean | "force">;
69
- default: boolean;
70
+ default: undefined;
70
71
  };
71
72
  /**
72
73
  * Максимально допустимое количество выбранных элементов
73
74
  */
74
75
  max: {
75
- type: NumberConstructor;
76
+ type: PropType<number>;
76
77
  default: undefined;
77
78
  };
78
79
  /**
@@ -98,7 +99,7 @@ export declare const makeGroupItemProps: <Defaults extends {
98
99
  */
99
100
  value: {
100
101
  type: null;
101
- default: null;
102
+ default: undefined;
102
103
  };
103
104
  /**
104
105
  * Классы для выбранных элементов
@@ -108,6 +109,31 @@ export declare const makeGroupItemProps: <Defaults extends {
108
109
  default: undefined;
109
110
  };
110
111
  }, Defaults>;
112
+ export interface ISlideGroupProps extends ExtractPropTypes<ReturnType<typeof makeSlideGroupProps>> {
113
+ disabled: IDisabledProps['disabled'];
114
+ 'onGroup:selected': ((value: {
115
+ value: boolean;
116
+ }) => void) | undefined;
117
+ }
118
+ export declare const makeSlideGroupProps: <Defaults extends {
119
+ centerActive?: unknown;
120
+ showArrows?: unknown;
121
+ } = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
122
+ /**
123
+ * Принудительно центрировать активный элемент
124
+ */
125
+ centerActive: {
126
+ type: PropType<boolean>;
127
+ default: boolean;
128
+ };
129
+ /**
130
+ * Показывать стрелки для переключения между элементами
131
+ */
132
+ showArrows: {
133
+ type: PropType<string | boolean>;
134
+ validator: (value: any) => boolean;
135
+ };
136
+ }, Defaults>;
111
137
  export declare function useGroupItem(props: IGroupItemProps, injectKey: InjectionKey<IGroupProvide>, required?: true): IGroupItemProvide;
112
138
  export declare function useGroupItem(props: IGroupItemProps, injectKey: InjectionKey<IGroupProvide>, required: false): IGroupItemProvide | null;
113
139
  export declare function useGroup(props: IGroupProps, injectKey: InjectionKey<IGroupProvide>): IGroupProvide;
@@ -1,3 +1,4 @@
1
+ export * from './align';
1
2
  export * from './text';
2
3
  export * from './title';
3
4
  export * from './link';
@@ -3,5 +3,5 @@ interface IUseResizeObserver {
3
3
  resizeRef: Ref<HTMLElement | undefined>;
4
4
  contentRect: DeepReadonly<Ref<DOMRectReadOnly | undefined>>;
5
5
  }
6
- export declare function useResizeObserver(callback?: ResizeObserverCallback): IUseResizeObserver;
6
+ export declare function useResizeObserver(callback?: ResizeObserverCallback, box?: 'content' | 'border'): IUseResizeObserver;
7
7
  export {};
@@ -12,6 +12,7 @@ export declare const CdsTransitionExpandX: import("vue").DefineComponent<{
12
12
  }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
13
13
  mode: import("vue").Prop<"default" | "in-out" | "out-in", "default" | "in-out" | "out-in">;
14
14
  }>>, {}>;
15
+ export { CdsTransitionModal } from './modalTransition';
15
16
  export declare const CdsTransitionFade: import("vue").DefineComponent<{
16
17
  group: import("vue").PropType<boolean>;
17
18
  hideOnLeave: import("vue").PropType<boolean>;
@@ -252,3 +253,63 @@ export declare const CdsTransitionScale: import("vue").DefineComponent<{
252
253
  mode: string;
253
254
  origin: string;
254
255
  }>;
256
+ export declare const CdsTransitionModalBottom: import("vue").DefineComponent<{
257
+ group: import("vue").PropType<boolean>;
258
+ hideOnLeave: import("vue").PropType<boolean>;
259
+ leaveAbsolute: import("vue").PropType<boolean>;
260
+ mode: {
261
+ type: import("vue").PropType<string>;
262
+ default: string | undefined;
263
+ };
264
+ origin: {
265
+ type: import("vue").PropType<string>;
266
+ default: string;
267
+ };
268
+ }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
269
+ [key: string]: any;
270
+ }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
271
+ group: import("vue").PropType<boolean>;
272
+ hideOnLeave: import("vue").PropType<boolean>;
273
+ leaveAbsolute: import("vue").PropType<boolean>;
274
+ mode: {
275
+ type: import("vue").PropType<string>;
276
+ default: string | undefined;
277
+ };
278
+ origin: {
279
+ type: import("vue").PropType<string>;
280
+ default: string;
281
+ };
282
+ }>>, {
283
+ mode: string;
284
+ origin: string;
285
+ }>;
286
+ export declare const CdsTransitionModalTop: import("vue").DefineComponent<{
287
+ group: import("vue").PropType<boolean>;
288
+ hideOnLeave: import("vue").PropType<boolean>;
289
+ leaveAbsolute: import("vue").PropType<boolean>;
290
+ mode: {
291
+ type: import("vue").PropType<string>;
292
+ default: string | undefined;
293
+ };
294
+ origin: {
295
+ type: import("vue").PropType<string>;
296
+ default: string;
297
+ };
298
+ }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
299
+ [key: string]: any;
300
+ }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
301
+ group: import("vue").PropType<boolean>;
302
+ hideOnLeave: import("vue").PropType<boolean>;
303
+ leaveAbsolute: import("vue").PropType<boolean>;
304
+ mode: {
305
+ type: import("vue").PropType<string>;
306
+ default: string | undefined;
307
+ };
308
+ origin: {
309
+ type: import("vue").PropType<string>;
310
+ default: string;
311
+ };
312
+ }>>, {
313
+ mode: string;
314
+ origin: string;
315
+ }>;
@@ -0,0 +1,8 @@
1
+ import type { PropType } from 'vue';
2
+ export declare const CdsTransitionModal: import("vue").DefineComponent<{
3
+ target: PropType<HTMLElement>;
4
+ }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
5
+ [key: string]: any;
6
+ }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
+ target: PropType<HTMLElement>;
8
+ }>>, {}>;
@@ -82,7 +82,8 @@ export declare function deepEqual(a: any, b: any): boolean;
82
82
  * Wrap value in array if it's not already an array
83
83
  * @param value
84
84
  */
85
- export declare function wrapInArray<T>(value: T | T[] | null | undefined): T[];
85
+ declare type IfAny<T, Y, N> = 0 extends 1 & T ? Y : N;
86
+ export declare function wrapInArray<T>(value: T | T[] | null | undefined): T extends readonly any[] ? IfAny<T, T[], T> : NonNullable<T>[];
86
87
  /**
87
88
  * Get the nested value of an object at a given path.
88
89
  * @param obj
@@ -146,6 +147,7 @@ export declare function omit<T extends object, K extends keyof T>(obj: T, fields
146
147
  export declare function findChildrenWithProvide(key: InjectionKey<any> | symbol, vnode?: VNodeChild | {
147
148
  [key: string]: any;
148
149
  }): ComponentInternalInstance[];
150
+ export declare function focusableChildren(el: Element): HTMLElement[];
149
151
  /**
150
152
  * Types
151
153
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@central-design-system/components",
3
- "version": "3.0.0-alpha.12",
3
+ "version": "3.0.0-alpha.13",
4
4
  "description": "Central Design System on the Vue 3.0 and TypeScript",
5
5
  "author": "magersoft",
6
6
  "license": "ISC",
@@ -26,8 +26,8 @@
26
26
  ],
27
27
  "types": "./dist/cds.d.ts",
28
28
  "scripts": {
29
- "build": "rimraf dist && vue-tsc --noEmit && vite build",
30
- "type-check": "npx vue-tsc --noEmit -p tsconfig.json --composite false",
29
+ "build": "rimraf dist && npm run type-check && vite build",
30
+ "type-check": "npx vue-tsc --noEmit -p tsconfig.build.json --composite false",
31
31
  "bump": "npx bumpp",
32
32
  "publish:alpha": "npm publish --tag next"
33
33
  },
@@ -7,6 +7,11 @@
7
7
 
8
8
  html {
9
9
  font-size: var(--cds-font-base);
10
+ box-sizing: border-box;
11
+ overflow-y: scroll;
12
+ -webkit-text-size-adjust: 100%;
13
+ word-break: normal;
14
+ tab-size: 4;
10
15
  }
11
16
 
12
17
  body {
@@ -1,8 +1,12 @@
1
1
  @import '../mixins/motion';
2
2
 
3
3
  $standard-easing: map-get(map-get($easing, 'ease-in-out'), 'basic');
4
- $standard-duration: $cds-duration-fast + ms;
4
+ $decelerated-easing: map-get(map-get($easing, 'ease-out'), 'basic');
5
+ $accelerated-easing: map-get(map-get($easing, 'ease-in'), 'basic');
6
+
5
7
  $accent-easting: map-get(map-get($easing, 'ease-in-out'), 'accent');
8
+
9
+ $standard-duration: $cds-duration-fast + ms;
6
10
  $accent-duration: $cds-duration-normal + ms;
7
11
 
8
12
  @mixin transition-default() {
@@ -154,3 +158,46 @@ $accent-duration: $cds-duration-normal + ms;
154
158
  }
155
159
  }
156
160
 
161
+ .modal-transition,
162
+ .modal-transition-bottom,
163
+ .modal-transition-top {
164
+ &-enter-active {
165
+ transition-duration: 225ms !important;
166
+ transition-timing-function: $decelerated-easing !important;
167
+ }
168
+
169
+ &-leave-active {
170
+ transition-duration: 125ms !important;
171
+ transition-timing-function: $accelerated-easing !important;
172
+ }
173
+
174
+ &-enter-active,
175
+ &-leave-active {
176
+ transition-property: transform, opacity !important;
177
+ pointer-events: none;
178
+ }
179
+ }
180
+
181
+ .modal-transition {
182
+ &-enter-from, &-leave-to {
183
+ transform: scale(0.9);
184
+ opacity: 0;
185
+ }
186
+
187
+ &-enter-to, &-leave-from {
188
+ opacity: 1;
189
+ }
190
+ }
191
+
192
+ .modal-transition-bottom {
193
+ &-enter-from, &-leave-to {
194
+ transform: translateY(calc(50vh + 50%));
195
+ }
196
+ }
197
+
198
+ .modal-transition-top {
199
+ &-enter-from, &-leave-to {
200
+ transform: translateY(calc(-50vh - 50%));
201
+ }
202
+ }
203
+
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Automatically generated by CDS CLI
3
- * Generated on 7/18/2023, 12:07:08 PM
3
+ * Generated on 8/3/2023, 8:00:26 PM
4
4
  **/
5
5
 
6
6
  /**