skillgrid 0.0.25-dev-38682-image.1172030 → 0.0.26

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 (38) hide show
  1. package/dist/components/Button/Button.d.ts +1 -1
  2. package/dist/components/Button/Button.type.d.ts +121 -43
  3. package/dist/components/Button/assets/ArrowIcon.d.ts +5 -0
  4. package/dist/components/Button/assets/ArrowRightIcon.d.ts +5 -0
  5. package/dist/components/Button/assets/CrossIcon.d.ts +5 -0
  6. package/dist/components/Button/assets/DownloadIcon.d.ts +5 -0
  7. package/dist/components/Button/assets/FollowIcon.d.ts +5 -0
  8. package/dist/components/Button/assets/HeartIcon.d.ts +5 -0
  9. package/dist/components/Button/assets/LocationIcon.d.ts +5 -0
  10. package/dist/components/Button/assets/MapMarkerIcon.d.ts +5 -0
  11. package/dist/components/Button/assets/index.d.ts +9 -0
  12. package/dist/components/Button/assets/types.d.ts +7 -0
  13. package/dist/components/Button/lib/get-safe-props.d.ts +8 -0
  14. package/dist/components/Button/lib/get-safe-props.test.d.ts +1 -0
  15. package/dist/components/Button/lib/get-typography.d.ts +11 -0
  16. package/dist/components/Button/lib/get-typography.test.d.ts +1 -0
  17. package/dist/components/Button/preview/index.d.ts +8 -0
  18. package/dist/components/Image/Image.type.d.ts +0 -4
  19. package/dist/components/Loader/Loader.type.d.ts +1 -1
  20. package/dist/components/Radio/Radio.type.d.ts +14 -2
  21. package/dist/components/Radio/RadioGroup/RadioGroup.d.ts +2 -1
  22. package/dist/components/Radio/RadioGroup/RadioGroup.type.d.ts +1 -1
  23. package/dist/components/Radio/index.d.ts +4 -2
  24. package/dist/components/Tabs/ScrollWrapper.d.ts +13 -0
  25. package/dist/components/Tabs/Tabs.d.ts +27 -0
  26. package/dist/components/Tabs/Tabs.type.d.ts +199 -0
  27. package/dist/components/Tabs/index.d.ts +2 -0
  28. package/dist/hooks/index.d.ts +1 -0
  29. package/dist/hooks/useIsMobile.d.ts +1 -0
  30. package/dist/hooks/useViewPortSize.d.ts +4 -0
  31. package/dist/hooks/useWindowEvent.d.ts +1 -0
  32. package/dist/index.cjs.js +11 -11
  33. package/dist/index.css +1 -1
  34. package/dist/index.d.ts +2 -0
  35. package/dist/index.es.js +1861 -1694
  36. package/dist/types/common.d.ts +1 -0
  37. package/dist/types/index.d.ts +1 -0
  38. package/package.json +3 -2
@@ -0,0 +1,199 @@
1
+ import { ReactNode, HTMLAttributes } from 'react';
2
+ import { Nullable } from '../../types/index.ts';
3
+ import { BadgeProps } from '../Badge';
4
+ /**
5
+ * Tabs визуальный режим табов
6
+ * * 'primary' - навигация первого уровня (основные вкладки)
7
+ * * 'secondary' - навигация второго уровня (подвкладки)
8
+ */
9
+ export type TabsVisualMode = 'primary' | 'secondary';
10
+ /**
11
+ * Размер табов
12
+ * * 'md' - стандартный размер
13
+ * * 'sm' - уменьшенный размер
14
+ * * 'xs' - самый маленький размер
15
+ *
16
+ * @default 'md'
17
+ */
18
+ export type TabsSize = 'md' | 'sm' | 'xs';
19
+ /**
20
+ * TabsItem - представляет одну вкладку
21
+ */
22
+ export interface TabsItem {
23
+ /**
24
+ * label - текстовый ярлык вкладки
25
+ */
26
+ label: string;
27
+ /**
28
+ * value - значение вкладки (используется для сравнения с activeTab)
29
+ */
30
+ value: string;
31
+ /**
32
+ * isDisabled - флаг, указывающий, что вкладка неактивна и не может быть выбрана
33
+ * если true, вкладка будет отображаться в стиле disabled и не будет реагировать на клики
34
+ *
35
+ * @default false
36
+ */
37
+ isDisabled?: boolean;
38
+ /**
39
+ * showBadge - если true, будет отображаться badge
40
+ */
41
+ showBadge?: boolean;
42
+ /**
43
+ * badgeProps - свойства элемента badge (см. компонент Badge для деталей)
44
+ */
45
+ badgeProps?: BadgeProps;
46
+ /**
47
+ * prefix - дополнительный ReactNode, например иконка или текст перед label
48
+ */
49
+ prefix?: Nullable<React.ReactNode>;
50
+ /**
51
+ * prefixWrapperProps - дополнительные пропсы для обертки prefix
52
+ */
53
+ prefixWrapperProps?: HTMLAttributes<HTMLSpanElement>;
54
+ /**
55
+ * postfix - дополнительный ReactNode, например иконка или текст после label
56
+ */
57
+ postfix?: Nullable<React.ReactNode>;
58
+ /**
59
+ * postfixWrapperProps - дополнительные пропсы для обертки postfix
60
+ */
61
+ postfixWrapperProps?: HTMLAttributes<HTMLSpanElement>;
62
+ }
63
+ /**
64
+ * TabsContextType - тип для контекста Tabs
65
+ */
66
+ export interface TabsContextType {
67
+ /**
68
+ * activeTab - текущее активное значение вкладки
69
+ */
70
+ activeTab: string | undefined;
71
+ /**
72
+ * setTab - функция для смены активной вкладки по значению
73
+ */
74
+ setTab: (value: string) => void;
75
+ }
76
+ /**
77
+ * TabsProviderProps - пропсы для TabsProvider
78
+ */
79
+ export interface TabsProviderProps {
80
+ /**
81
+ * children - дочерние элементы, обычно Tabs.Bar и Tabs.Content
82
+ */
83
+ children: ReactNode;
84
+ /**
85
+ * defaultActiveTab - вкладка по умолчанию (неконтролируемый режим)
86
+ */
87
+ defaultActiveTab?: string;
88
+ /**
89
+ * activeTab - активная вкладка (контролируемый режим)
90
+ */
91
+ activeTab?: string;
92
+ /**
93
+ * onChange - колбэк при смене активной вкладки
94
+ */
95
+ onChange?: (value: string) => void;
96
+ }
97
+ /**
98
+ * TabsBarProps - пропсы для компонента Tabs.Bar
99
+ */
100
+ export interface TabsBarProps {
101
+ /**
102
+ * mode - визуальный режим вкладок ('primary' | 'secondary')
103
+ */
104
+ mode: TabsVisualMode;
105
+ /**
106
+ * items - список вкладок, каждый элемент — TabsItem
107
+ */
108
+ items: Array<TabsItem>;
109
+ /**
110
+ * size - размер вкладок ('md' | 'sm' | 'xs')
111
+ * * 'md' - стандартный размер
112
+ * * 'sm' - уменьшенный размер
113
+ * * 'xs' - самый маленький размер
114
+ *
115
+ * @default 'md'
116
+ */
117
+ size?: TabsSize;
118
+ /**
119
+ * isAllItemsDisabled - флаг, указывающий, что все элементы неактивны и не могут быть выбраны
120
+ * если true, все элементы будут отображаться в стиле disabled и не будут реагировать на клики
121
+ *
122
+ * @default false
123
+ */
124
+ isAllItemsDisabled?: boolean;
125
+ }
126
+ /**
127
+ * TabsItemProps - пропсы для одной вкладки (TabElement)
128
+ */
129
+ export interface TabsItemProps {
130
+ /**
131
+ * mode - режим отображения по типу навигации
132
+ * * 'primary' - для навигации первого уровня
133
+ * * 'secondary' - для навигации второго уровня
134
+ */
135
+ mode: TabsVisualMode;
136
+ /**
137
+ * item - данные вкладки (label, value, badge, postfix)
138
+ */
139
+ item: TabsItem;
140
+ /**
141
+ * isActive - активна ли текущая вкладка
142
+ */
143
+ isActive: boolean;
144
+ /**
145
+ * onSelectTab - колбэк при клике на вкладку
146
+ * * получает значение выбранной вкладки
147
+ */
148
+ onSelectTab: (value: string) => void;
149
+ /**
150
+ * showBadge - если true, будет отображаться badge
151
+ */
152
+ showBadge?: boolean;
153
+ /**
154
+ * badgeProps - свойства элемента badge (см. компонент Badge для деталей)
155
+ */
156
+ badgeProps?: BadgeProps;
157
+ /**
158
+ * size - размер отдельного таба ('md' | 'sm' | 'xs')
159
+ * * 'md' - стандартный размер
160
+ * * 'sm' - уменьшенный размер
161
+ * * 'xs' - самый маленький размер
162
+ *
163
+ * @default 'md'
164
+ */
165
+ size: TabsSize;
166
+ /**
167
+ * isDisabled - флаг, указывающий, что вкладка неактивна и не может быть выбрана
168
+ * если true, вкладка будет отображаться в стиле disabled и не будет реагировать на клики
169
+ *
170
+ * @default false
171
+ */
172
+ isDisabled?: boolean;
173
+ }
174
+ /**
175
+ * Пропсы для компонента TabPanel
176
+ * * Наследует стандартные атрибуты div, поэтому можно передавать `className`, `style` и т.д.
177
+ */
178
+ export interface TabPanelProps extends HTMLAttributes<HTMLDivElement> {
179
+ /**
180
+ * tabValue - идентификатор панели вкладки
181
+ * * Должен совпадать со значением соответствующей вкладки
182
+ */
183
+ tabValue: string;
184
+ /**
185
+ * children - содержимое панели вкладки
186
+ */
187
+ children?: ReactNode;
188
+ }
189
+ /**
190
+ * Пропсы для компонента TabsContent
191
+ * * Наследует стандартные атрибуты div, поэтому можно передавать `className`, `style` и т.д.
192
+ */
193
+ export interface TabsContentProps extends HTMLAttributes<HTMLDivElement> {
194
+ /**
195
+ * children - один или несколько компонентов TabPanel
196
+ * * Будет отображаться только панель, чей `tabValue` совпадает с активной вкладкой
197
+ */
198
+ children: ReactNode | Array<ReactNode>;
199
+ }
@@ -0,0 +1,2 @@
1
+ export { Tabs } from './Tabs';
2
+ export type * from './Tabs.type';
@@ -1,2 +1,3 @@
1
1
  export { useCustomTranslations } from './useCustomTranslations';
2
2
  export { useBackgroundColor } from './useBackgroundColor';
3
+ export { useIsMobile } from './useIsMobile';
@@ -0,0 +1 @@
1
+ export declare function useIsMobile(breakpoint?: number): boolean;
@@ -0,0 +1,4 @@
1
+ export declare function useViewportSize(): {
2
+ width: number;
3
+ height: number;
4
+ };
@@ -0,0 +1 @@
1
+ export declare function useWindowEvent<K extends string>(type: K, listener: K extends keyof WindowEventMap ? (this: Window, ev: WindowEventMap[K]) => void : (this: Window, ev: CustomEvent) => void, options?: boolean | AddEventListenerOptions): void;