@cyber-harbour/ui 1.0.78 → 2.0.1
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.
- package/README.md +139 -29
- package/dist/index.d.mts +64 -41
- package/dist/index.d.ts +64 -41
- package/dist/index.js +372 -266
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +442 -336
- package/dist/index.mjs.map +1 -1
- package/package.json +20 -13
package/README.md
CHANGED
|
@@ -1,73 +1,73 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Початок роботи з Cyber Harbor UI Kit
|
|
2
2
|
|
|
3
|
-
##
|
|
3
|
+
## Розробка
|
|
4
4
|
|
|
5
|
-
###
|
|
5
|
+
### Встановлення
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
8
|
npm install
|
|
9
9
|
```
|
|
10
10
|
|
|
11
|
-
###
|
|
11
|
+
### Збірка бібліотеки
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
Бібліотека збирається за допомогою tsup, що забезпечує оптимізовані збірки для форматів ESM та CommonJS.
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
|
-
#
|
|
16
|
+
# Розробка з режимом відстеження
|
|
17
17
|
npm run dev
|
|
18
18
|
|
|
19
|
-
#
|
|
19
|
+
# Продакшн збірка
|
|
20
20
|
npm run build
|
|
21
21
|
|
|
22
|
-
#
|
|
22
|
+
# Збірка без мінімізації
|
|
23
23
|
npm run build:dev
|
|
24
24
|
|
|
25
|
-
#
|
|
25
|
+
# Перевірка типів без збірки
|
|
26
26
|
npm run type-check
|
|
27
27
|
```
|
|
28
28
|
|
|
29
|
-
###
|
|
29
|
+
### Результат збірки
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
При збірці бібліотеки в папці `dist` генерується наступне:
|
|
32
32
|
|
|
33
|
-
- ESM
|
|
34
|
-
- CommonJS
|
|
35
|
-
- TypeScript
|
|
33
|
+
- ESM модулі (`.mjs` файли)
|
|
34
|
+
- CommonJS модулі (`.js` файли)
|
|
35
|
+
- TypeScript файли декларацій (`.d.ts` та `.d.mts`)
|
|
36
36
|
- Source maps
|
|
37
37
|
|
|
38
38
|
### Storybook
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
Ви можете запустити Storybook для розробки та тестування компонентів:
|
|
41
41
|
|
|
42
42
|
```bash
|
|
43
43
|
npm run storybook
|
|
44
44
|
```
|
|
45
45
|
|
|
46
|
-
|
|
46
|
+
Для збірки Storybook:
|
|
47
47
|
|
|
48
48
|
```bash
|
|
49
49
|
npm run build-storybook
|
|
50
50
|
```
|
|
51
51
|
|
|
52
|
-
##
|
|
52
|
+
## Оптимізації збірки
|
|
53
53
|
|
|
54
|
-
|
|
54
|
+
Проект використовує різні оптимізації для ефективної збірки:
|
|
55
55
|
|
|
56
|
-
###
|
|
56
|
+
### Продакшн режим
|
|
57
57
|
|
|
58
|
-
-
|
|
59
|
-
- Tree shaking
|
|
60
|
-
-
|
|
61
|
-
- Source maps
|
|
58
|
+
- Мінімізація вихідних файлів
|
|
59
|
+
- Tree shaking для видалення невикористаного коду
|
|
60
|
+
- Видалення console logs
|
|
61
|
+
- Source maps для налагодження
|
|
62
62
|
|
|
63
|
-
###
|
|
63
|
+
### Режим розробки
|
|
64
64
|
|
|
65
|
-
-
|
|
66
|
-
-
|
|
67
|
-
-
|
|
68
|
-
-
|
|
65
|
+
- Режим відстеження для автоматичної перебудови при змінах
|
|
66
|
+
- Вбудовані source maps для легшого налагодження
|
|
67
|
+
- Без мінімізації для швидшої збірки
|
|
68
|
+
- Без генерації типів для швидкості
|
|
69
69
|
|
|
70
|
-
##
|
|
70
|
+
## Інструмент перемикання UI бібліотеки
|
|
71
71
|
|
|
72
72
|
Цей інструмент дозволяє легко перемикатися між локальною версією UI бібліотеки та версією з NPM.
|
|
73
73
|
|
|
@@ -142,3 +142,113 @@ projects/
|
|
|
142
142
|
- `dotenv` - для читання змінних середовища (опційно)
|
|
143
143
|
|
|
144
144
|
Ці пакети автоматично встановлюються разом з UI бібліотекою.
|
|
145
|
+
|
|
146
|
+
### Усунення несправностей
|
|
147
|
+
|
|
148
|
+
Відсутній лінк на бібліотеку після першого завантаження. Запустіть
|
|
149
|
+
|
|
150
|
+
```bash
|
|
151
|
+
npm link
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
# 🔹 Інструкція інтеграції UI-kit у Next.js з Tailwind
|
|
157
|
+
|
|
158
|
+
Цей UI-kit побудований на **TailwindCSS** і постачається з власною конфігурацією (`tailwind.config.js`).
|
|
159
|
+
Щоб уникнути конфліктів і дозволити кастомізацію у проєкті, потрібно **мерджити** конфіг UI-kit із конфігом Next.js.
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
## 1. Встановіть залежності
|
|
164
|
+
|
|
165
|
+
У вашому Next.js-проєкті мають бути встановлені:
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
pnpm add tailwindcss postcss autoprefixer
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
## 2. Створіть `tailwind.config.js` у Next.js
|
|
174
|
+
|
|
175
|
+
У корені вашого Next.js-проєкту створіть файл `tailwind.config.js` і підключіть конфіг із UI-kit.
|
|
176
|
+
Ми будемо мерджити конфіги за допомогою `lodash.merge`:
|
|
177
|
+
|
|
178
|
+
```bash
|
|
179
|
+
pnpm add lodash.merge
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
**`tailwind.config.js`**
|
|
183
|
+
|
|
184
|
+
```js
|
|
185
|
+
const merge = require('lodash.merge');
|
|
186
|
+
const uiKitConfig = require('ui-kit/tailwind.config.js'); // шлях до UI-kit пакета
|
|
187
|
+
|
|
188
|
+
module.exports = merge({}, uiKitConfig, {
|
|
189
|
+
content: [
|
|
190
|
+
'./pages/**/*.{js,ts,jsx,tsx}',
|
|
191
|
+
'./components/**/*.{js,ts,tsx}',
|
|
192
|
+
'./app/**/*.{js,ts,jsx,tsx}', // якщо використовуєте app router
|
|
193
|
+
'./node_modules/ui-kit/**/*.{js,ts,tsx}', // важливо: UI-kit компоненти
|
|
194
|
+
],
|
|
195
|
+
theme: {
|
|
196
|
+
extend: {
|
|
197
|
+
colors: {
|
|
198
|
+
accent: '#f59e0b', // локальні кольори вашого проєкту
|
|
199
|
+
},
|
|
200
|
+
},
|
|
201
|
+
},
|
|
202
|
+
});
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
---
|
|
206
|
+
|
|
207
|
+
## 3. Підключіть Tailwind у глобальні стилі
|
|
208
|
+
|
|
209
|
+
У вашому Next.js проєкті додайте у `globals.css` (або `app/globals.css`):
|
|
210
|
+
|
|
211
|
+
```css
|
|
212
|
+
@tailwind base;
|
|
213
|
+
@tailwind components;
|
|
214
|
+
@tailwind utilities;
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## 4. Використання компонентів із UI-kit
|
|
220
|
+
|
|
221
|
+
Тепер ви можете імпортувати і використовувати компоненти з UI-kit у будь-яких файлах вашого Next.js-проєкту:
|
|
222
|
+
|
|
223
|
+
```tsx
|
|
224
|
+
import { Button } from 'ui-kit';
|
|
225
|
+
|
|
226
|
+
export default function Page() {
|
|
227
|
+
return (
|
|
228
|
+
<div className="p-6">
|
|
229
|
+
<Button variant="primary">Клікни мене</Button>
|
|
230
|
+
</div>
|
|
231
|
+
);
|
|
232
|
+
}
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
---
|
|
236
|
+
|
|
237
|
+
## 5. Кастомізація теми
|
|
238
|
+
|
|
239
|
+
Якщо потрібно змінити кольори, spacing чи інші токени —
|
|
240
|
+
додавайте їх у секцію `theme.extend` вашого `tailwind.config.js`.
|
|
241
|
+
|
|
242
|
+
⚡️ Вони автоматично поєднаються з токенами з UI-kit.
|
|
243
|
+
|
|
244
|
+
---
|
|
245
|
+
|
|
246
|
+
✅ У результаті:
|
|
247
|
+
|
|
248
|
+
- UI-kit і Next.js використовують одну базу токенів
|
|
249
|
+
- ви можете кастомізувати тему локально у проєкті
|
|
250
|
+
- конфліктів у Tailwind-конфігах не буде
|
|
251
|
+
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
Хочеш, я під це ще складу **готовий приклад `README.md`** для твого UI-kit (з секціями Install / Setup / Usage), щоб воно виглядало як справжня документація пакета?
|
package/dist/index.d.mts
CHANGED
|
@@ -1,16 +1,13 @@
|
|
|
1
|
-
import * as react from 'react';
|
|
2
|
-
import react__default, { SVGProps, CSSProperties as CSSProperties$1, ElementType, InputHTMLAttributes, TextareaHTMLAttributes } from 'react';
|
|
3
|
-
import * as styled_components from 'styled-components';
|
|
4
1
|
import { CSSProperties, DefaultTheme } from 'styled-components';
|
|
5
2
|
export { ServerStyleSheet, StyleSheetManager } from 'styled-components';
|
|
6
3
|
import * as styled_components_dist_types from 'styled-components/dist/types';
|
|
7
4
|
import { DefaultTheme as DefaultTheme$1 } from 'styled-components/dist/types';
|
|
5
|
+
import * as react from 'react';
|
|
6
|
+
import react__default, { SVGProps, CSSProperties as CSSProperties$1, ElementType, InputHTMLAttributes, TextareaHTMLAttributes, ReactNode } from 'react';
|
|
8
7
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
9
8
|
import { PopoverPosition, PopoverAlign } from 'react-tiny-popover';
|
|
10
9
|
import { IContentLoaderProps } from 'react-content-loader';
|
|
11
10
|
|
|
12
|
-
declare const GlobalStyle: react.NamedExoticComponent<styled_components.ExecutionProps & object>;
|
|
13
|
-
|
|
14
11
|
interface ThemeProviderProps {
|
|
15
12
|
children: any;
|
|
16
13
|
mode?: 'light' | 'LIGHT' | 'dark' | 'DARK';
|
|
@@ -479,6 +476,7 @@ type BaseButtonProps = {
|
|
|
479
476
|
iconVariant?: 'filled' | 'empty';
|
|
480
477
|
minWidth?: number;
|
|
481
478
|
whiteSpace?: CSSProperties['whiteSpace'];
|
|
479
|
+
component?: react__default.ElementType;
|
|
482
480
|
};
|
|
483
481
|
type ButtonProps = (Omit<react__default.AnchorHTMLAttributes<HTMLAnchorElement>, 'children' | 'media'> | Omit<react__default.ButtonHTMLAttributes<HTMLButtonElement>, 'children' | 'media'>) & BaseButtonProps;
|
|
484
482
|
declare const Button: react__default.ForwardRefExoticComponent<FabricComponent<ButtonProps> & react__default.RefAttributes<unknown>>;
|
|
@@ -814,19 +812,15 @@ interface RotateRightIconProps extends SVGProps<SVGSVGElement> {
|
|
|
814
812
|
}
|
|
815
813
|
declare const RotateRightIcon: ({ fill, ...props }: RotateRightIconProps) => react_jsx_runtime.JSX.Element;
|
|
816
814
|
|
|
817
|
-
interface
|
|
815
|
+
interface UploadImageIconProps extends SVGProps<SVGSVGElement> {
|
|
818
816
|
fill?: string;
|
|
819
817
|
}
|
|
820
|
-
declare const
|
|
821
|
-
|
|
822
|
-
interface ClockIconProps extends SVGProps<SVGSVGElement> {
|
|
823
|
-
fill?: string;
|
|
824
|
-
}
|
|
825
|
-
declare const ClockIcon: ({ fill, ...props }: ClockIconProps) => react_jsx_runtime.JSX.Element;
|
|
818
|
+
declare const UploadImageIcon: ({ fill, ...props }: UploadImageIconProps) => react_jsx_runtime.JSX.Element;
|
|
826
819
|
|
|
827
820
|
interface SidebarProps {
|
|
828
821
|
defaultCollapsed?: boolean;
|
|
829
822
|
children: any;
|
|
823
|
+
canGrow: boolean;
|
|
830
824
|
}
|
|
831
825
|
declare const Sidebar: react__default.ForwardRefExoticComponent<SidebarProps & {
|
|
832
826
|
m?: string | number;
|
|
@@ -856,15 +850,15 @@ declare const Sidebar: react__default.ForwardRefExoticComponent<SidebarProps & {
|
|
|
856
850
|
interface SidebarContext {
|
|
857
851
|
collapsed: boolean;
|
|
858
852
|
setCollapsed: React.Dispatch<React.SetStateAction<boolean>>;
|
|
853
|
+
canGrow: boolean;
|
|
859
854
|
}
|
|
860
855
|
declare const SidebarContext: react.Context<SidebarContext>;
|
|
861
856
|
|
|
862
857
|
interface SidebarItemBase {
|
|
863
858
|
active?: boolean;
|
|
864
|
-
icon?: React.
|
|
859
|
+
icon?: React.ReactNode;
|
|
865
860
|
label?: string;
|
|
866
|
-
|
|
867
|
-
iconSize?: number;
|
|
861
|
+
component?: React.ElementType;
|
|
868
862
|
}
|
|
869
863
|
interface SidebarItemAnchor {
|
|
870
864
|
href: string;
|
|
@@ -876,19 +870,17 @@ interface SidebarItemButton {
|
|
|
876
870
|
onClick?: (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
|
|
877
871
|
}
|
|
878
872
|
type SidebarItemProps = SidebarItemBase & (SidebarItemAnchor | SidebarItemButton);
|
|
879
|
-
declare const SidebarItem: ({ active, icon
|
|
873
|
+
declare const SidebarItem: ({ active, icon, label, component, ...props }: SidebarItemProps) => react_jsx_runtime.JSX.Element;
|
|
880
874
|
|
|
881
875
|
declare const SidebarDelimeter: () => react_jsx_runtime.JSX.Element;
|
|
882
876
|
|
|
883
|
-
type SectionRole = 'header' | 'footer' | 'content';
|
|
884
877
|
interface SidebarSectionProps {
|
|
885
878
|
grow?: number;
|
|
886
879
|
shrink?: number;
|
|
887
880
|
basis?: CSSProperties['flexBasis'];
|
|
888
881
|
items: React.ReactElement[];
|
|
889
|
-
role: SectionRole;
|
|
890
882
|
}
|
|
891
|
-
declare const SidebarSection: ({ grow, shrink, basis, items
|
|
883
|
+
declare const SidebarSection: ({ grow, shrink, basis, items }: SidebarSectionProps) => react_jsx_runtime.JSX.Element;
|
|
892
884
|
|
|
893
885
|
type TypographyProps = FabricComponent<{
|
|
894
886
|
style?: CSSProperties$1;
|
|
@@ -1026,7 +1018,7 @@ declare const ListMenuSection: ({ title, items }: ListMenuSectionProps) => react
|
|
|
1026
1018
|
interface HeaderProps {
|
|
1027
1019
|
children?: any;
|
|
1028
1020
|
}
|
|
1029
|
-
declare const Header:
|
|
1021
|
+
declare const Header: ({ children }: HeaderProps) => react_jsx_runtime.JSX.Element;
|
|
1030
1022
|
|
|
1031
1023
|
declare const HeaderDelimeter: () => react_jsx_runtime.JSX.Element;
|
|
1032
1024
|
|
|
@@ -1090,9 +1082,9 @@ interface ContextMenuProps {
|
|
|
1090
1082
|
}
|
|
1091
1083
|
declare const ContextMenu: ({ isOpen, onClickOutside, onClick, anchor, size, disabled, fullWidth, className, positions, align, children, hasBorder, maxHeight, matchAnchorWidth, anchorIcon, }: ContextMenuProps) => react_jsx_runtime.JSX.Element;
|
|
1092
1084
|
|
|
1093
|
-
interface StyledProps
|
|
1085
|
+
interface StyledProps {
|
|
1094
1086
|
}
|
|
1095
|
-
declare const ContextMenuDelimiter: styled_components_dist_types.IStyledComponentBase<"web", styled_components_dist_types.Substitute<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, StyledProps
|
|
1087
|
+
declare const ContextMenuDelimiter: styled_components_dist_types.IStyledComponentBase<"web", styled_components_dist_types.Substitute<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, StyledProps>> & string;
|
|
1096
1088
|
|
|
1097
1089
|
declare const useContextMenuControl: () => {
|
|
1098
1090
|
isOpen: boolean;
|
|
@@ -1160,6 +1152,31 @@ type TextAreaElementProps = BaseInputProps & TextareaHTMLAttributes<HTMLTextArea
|
|
|
1160
1152
|
type InputProps = InputElementProps | TextAreaElementProps;
|
|
1161
1153
|
declare const Input: any;
|
|
1162
1154
|
|
|
1155
|
+
type FileFieldProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'value' | 'onChange' | 'size'> & {
|
|
1156
|
+
error?: boolean;
|
|
1157
|
+
variant?: InputVariant;
|
|
1158
|
+
multiple?: boolean;
|
|
1159
|
+
accept?: string;
|
|
1160
|
+
uploadButtonText?: string;
|
|
1161
|
+
dragDropPlaceholder?: string;
|
|
1162
|
+
value?: File[];
|
|
1163
|
+
onChange?: (files: File[]) => void;
|
|
1164
|
+
onError?: (error: string) => void;
|
|
1165
|
+
dragDropClassName?: string;
|
|
1166
|
+
};
|
|
1167
|
+
declare const FileField: react.ForwardRefExoticComponent<Omit<InputHTMLAttributes<HTMLInputElement>, "value" | "size" | "type" | "onChange"> & {
|
|
1168
|
+
error?: boolean;
|
|
1169
|
+
variant?: InputVariant;
|
|
1170
|
+
multiple?: boolean;
|
|
1171
|
+
accept?: string;
|
|
1172
|
+
uploadButtonText?: string;
|
|
1173
|
+
dragDropPlaceholder?: string;
|
|
1174
|
+
value?: File[];
|
|
1175
|
+
onChange?: (files: File[]) => void;
|
|
1176
|
+
onError?: (error: string) => void;
|
|
1177
|
+
dragDropClassName?: string;
|
|
1178
|
+
} & react.RefAttributes<HTMLInputElement>>;
|
|
1179
|
+
|
|
1163
1180
|
type FlexDirection = 'row' | 'column' | 'row-reverse' | 'column-reverse';
|
|
1164
1181
|
type FlexWrap = 'nowrap' | 'wrap' | 'wrap-reverse';
|
|
1165
1182
|
type FlexJustify = 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly';
|
|
@@ -1629,30 +1646,36 @@ declare const ModalHeader: styled_components_dist_types.IStyledComponentBase<"we
|
|
|
1629
1646
|
declare const ModalBody: styled_components_dist_types.IStyledComponentBase<"web", styled_components_dist_types.Substitute<ModalChildrenProps | (ModalChildrenProps & react.RefAttributes<react.Component<ModalChildrenProps, any, any>>), StyledFabricComponent<ModalChildrenProps>>> & (string & (Omit<react.ComponentClass<ModalChildrenProps, any>, keyof react.Component<any, {}, any>> | Omit<react.FunctionComponent<ModalChildrenProps>, keyof react.Component<any, {}, any>>));
|
|
1630
1647
|
declare const ModalFooter: styled_components_dist_types.IStyledComponentBase<"web", styled_components_dist_types.Substitute<ModalChildrenProps | (ModalChildrenProps & react.RefAttributes<react.Component<ModalChildrenProps, any, any>>), StyledFabricComponent<ModalChildrenProps>>> & (string & (Omit<react.ComponentClass<ModalChildrenProps, any>, keyof react.Component<any, {}, any>> | Omit<react.FunctionComponent<ModalChildrenProps>, keyof react.Component<any, {}, any>>));
|
|
1631
1648
|
|
|
1632
|
-
interface
|
|
1633
|
-
|
|
1634
|
-
|
|
1649
|
+
interface TailwindExampleProps {
|
|
1650
|
+
variant?: 'primary' | 'secondary' | 'success' | 'danger';
|
|
1651
|
+
children: react__default.ReactNode;
|
|
1635
1652
|
}
|
|
1636
|
-
declare const
|
|
1637
|
-
declare const StyledContainer: styled_components_dist_types.IStyledComponentBase<"web", styled_components.FastOmit<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
1653
|
+
declare const TailwindExample: react__default.FC<TailwindExampleProps>;
|
|
1638
1654
|
|
|
1639
|
-
|
|
1640
|
-
|
|
1641
|
-
|
|
1642
|
-
|
|
1643
|
-
|
|
1644
|
-
|
|
1655
|
+
type ChatFieldProps = Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, 'type'> & {
|
|
1656
|
+
error?: boolean;
|
|
1657
|
+
errorText?: string;
|
|
1658
|
+
button?: ReactNode;
|
|
1659
|
+
images?: File[];
|
|
1660
|
+
onChangeImages?: (files: File[]) => void;
|
|
1661
|
+
onError?: (error: string) => void;
|
|
1662
|
+
multiple?: boolean;
|
|
1663
|
+
fieldClassName?: string;
|
|
1664
|
+
};
|
|
1665
|
+
declare const ChatField: ({ multiple, value, onChangeImages, images, errorText, error, onError, button, fieldClassName, ...props }: ChatFieldProps) => react_jsx_runtime.JSX.Element;
|
|
1645
1666
|
|
|
1646
|
-
interface
|
|
1667
|
+
interface PageLayoutProps {
|
|
1668
|
+
header?: any;
|
|
1669
|
+
sidebar?: any;
|
|
1647
1670
|
children?: any;
|
|
1648
1671
|
className?: string;
|
|
1649
|
-
top?: number;
|
|
1650
1672
|
}
|
|
1651
|
-
declare const
|
|
1652
|
-
|
|
1653
|
-
$
|
|
1654
|
-
|
|
1655
|
-
|
|
1673
|
+
declare const PageLayout: ({ children, header, sidebar, className }: PageLayoutProps) => react_jsx_runtime.JSX.Element;
|
|
1674
|
+
interface StyledContainerProps {
|
|
1675
|
+
$withHeader?: boolean;
|
|
1676
|
+
$withSidebar?: boolean;
|
|
1677
|
+
}
|
|
1678
|
+
declare const StyledContainer: styled_components_dist_types.IStyledComponentBase<"web", styled_components_dist_types.Substitute<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, StyledContainerProps>> & string;
|
|
1656
1679
|
|
|
1657
1680
|
type ContainerProps = {
|
|
1658
1681
|
children: any;
|
|
@@ -1835,4 +1858,4 @@ declare const FullscreenCard: react.ForwardRefExoticComponent<FullscreenCardProp
|
|
|
1835
1858
|
} | undefined;
|
|
1836
1859
|
} & react.RefAttributes<unknown>>;
|
|
1837
1860
|
|
|
1838
|
-
export { type Action, Alert, AlertIcon, AndroidIcon, ApiIcon, ArrowCircleTopRightIcon, ArrowRightIcon, BallsMenu, Box, type Breakpoint, BreakpointProvider, BugReportIcon,
|
|
1861
|
+
export { type Action, Alert, AlertIcon, AndroidIcon, ApiIcon, ArrowCircleTopRightIcon, ArrowRightIcon, BallsMenu, Box, type Breakpoint, BreakpointProvider, BugReportIcon, BusIcon, Button, type ButtonColor, type ButtonElementStyle, type ButtonProps, type ButtonSize, type ButtonSizeStyle, type ButtonState, type ButtonVariant, CalendarIcon, CarIcon, ChatField, type ChatFieldProps, CheckIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, CloseCircleIcon, ClosedLockIcon, type ColorVariant, type ColumnTable, Container, ContentLoader, type ContentLoaderProps, ContextMenu, ContextMenuDelimiter, CrossIcon, DataSetsIcon, DeepSearchIcon, DisabledVisibleIcon, DocsIcon, DownloadIcon, Drawer, DrawerBody, DrawerHeader, EditUserIcon, EmptyData, type EmptyDataProps, EnableVisibleIcon, EnterArrowLeftIcon, type FabricComponent, FileField, type FileFieldProps, FileIcon, FiltersIcon, FlashIcon, FlexContainer, FlexItem, FolderAlertIcon, FolderInfoIcon, FullscreenCard, Graph2D, type Graph2DProps, type Graph2DRef, type GraphData, type GraphState, Header, HeaderDelimeter, HeaderSection, HomepageIcon, InfoCircleFilledIcon, InfoCircleIcon, Input, type InputElementProps, type InputElementStyle, type InputProps, type InputSize, type InputSizeStyle, type InputState, type InputVariant, IosIcon, Label, type LabelSize, type LabelSizeStyle, Line, LinerProgress, type LinkObject, ListMenu, ListMenuItem, type ListMenuItemAnchorProps, type ListMenuItemBase, type ListMenuItemButtonProps, type ListMenuItemProps, type ListMenuProps, ListMenuSection, type ListMenuSectionProps, MapRadarIcon, MaximizeIcon, MicrosoftIcon, Modal, ModalBody, ModalFooter, ModalHeader, MoonIcon, type NestedColorPaths, type NodeButton, type NodeObject, OpenLockIcon, OrganizationIcon, Overlay, type OverlayProps, PageLayout, Pagination, type PaginationProps, PassportIcon, PasswordFinderIcon, PencilIcon, PhonebookIcon, PlaneIcon, PlusIcon, PointIcon, PrintIcon, Profiler2Icon, ProfilerIcon, RelationIcon, RelationPointsIcon, type RenderCellProps, type RenderHeaderCellProps, RotateLeftIcon, RotateRightIcon, RowActionsMenu, SandBoxIcon, SearchIcon, Select, ShipIcon, Sidebar, SidebarContext, SidebarDelimeter, SidebarItem, type SidebarItemProps, type SidebarProps, SidebarSection, type SidebarSectionProps, StatisticIcon, StyledContainer, type StyledFabricComponent, SunIcon, Switch, type SwitchState, Table, Tag, type TagColor, type TagElementStyle, type TagVariant, TailwindExample, type TailwindExampleProps, type TextAreaElementProps, type Theme, type ThemeMode, ThemeProvider, Tooltip, Typography, type TypographyVariant, UnfoldIcon, UpRightArrowCircleIcon, UploadImageIcon, UserInCircleIcon, UsersIcon, VectorIcon, WayIcon, convertPaletteToRem, createComponent, createStyledComponent, darkTheme, darkThemePx, destructSpaceProps, generatePropertySpaceStyle, getBreakpoint, getButtonSizeStyles, getButtonStyles, getInputStyles, getResponsiveProps, getTypographyStyles, hexToRgba, lightTheme, lightThemePx, propToRem, pxToRem, remToPx, resolveThemeColor, useBreakpoint, useContextMenuControl, useTheme };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,16 +1,13 @@
|
|
|
1
|
-
import * as react from 'react';
|
|
2
|
-
import react__default, { SVGProps, CSSProperties as CSSProperties$1, ElementType, InputHTMLAttributes, TextareaHTMLAttributes } from 'react';
|
|
3
|
-
import * as styled_components from 'styled-components';
|
|
4
1
|
import { CSSProperties, DefaultTheme } from 'styled-components';
|
|
5
2
|
export { ServerStyleSheet, StyleSheetManager } from 'styled-components';
|
|
6
3
|
import * as styled_components_dist_types from 'styled-components/dist/types';
|
|
7
4
|
import { DefaultTheme as DefaultTheme$1 } from 'styled-components/dist/types';
|
|
5
|
+
import * as react from 'react';
|
|
6
|
+
import react__default, { SVGProps, CSSProperties as CSSProperties$1, ElementType, InputHTMLAttributes, TextareaHTMLAttributes, ReactNode } from 'react';
|
|
8
7
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
9
8
|
import { PopoverPosition, PopoverAlign } from 'react-tiny-popover';
|
|
10
9
|
import { IContentLoaderProps } from 'react-content-loader';
|
|
11
10
|
|
|
12
|
-
declare const GlobalStyle: react.NamedExoticComponent<styled_components.ExecutionProps & object>;
|
|
13
|
-
|
|
14
11
|
interface ThemeProviderProps {
|
|
15
12
|
children: any;
|
|
16
13
|
mode?: 'light' | 'LIGHT' | 'dark' | 'DARK';
|
|
@@ -479,6 +476,7 @@ type BaseButtonProps = {
|
|
|
479
476
|
iconVariant?: 'filled' | 'empty';
|
|
480
477
|
minWidth?: number;
|
|
481
478
|
whiteSpace?: CSSProperties['whiteSpace'];
|
|
479
|
+
component?: react__default.ElementType;
|
|
482
480
|
};
|
|
483
481
|
type ButtonProps = (Omit<react__default.AnchorHTMLAttributes<HTMLAnchorElement>, 'children' | 'media'> | Omit<react__default.ButtonHTMLAttributes<HTMLButtonElement>, 'children' | 'media'>) & BaseButtonProps;
|
|
484
482
|
declare const Button: react__default.ForwardRefExoticComponent<FabricComponent<ButtonProps> & react__default.RefAttributes<unknown>>;
|
|
@@ -814,19 +812,15 @@ interface RotateRightIconProps extends SVGProps<SVGSVGElement> {
|
|
|
814
812
|
}
|
|
815
813
|
declare const RotateRightIcon: ({ fill, ...props }: RotateRightIconProps) => react_jsx_runtime.JSX.Element;
|
|
816
814
|
|
|
817
|
-
interface
|
|
815
|
+
interface UploadImageIconProps extends SVGProps<SVGSVGElement> {
|
|
818
816
|
fill?: string;
|
|
819
817
|
}
|
|
820
|
-
declare const
|
|
821
|
-
|
|
822
|
-
interface ClockIconProps extends SVGProps<SVGSVGElement> {
|
|
823
|
-
fill?: string;
|
|
824
|
-
}
|
|
825
|
-
declare const ClockIcon: ({ fill, ...props }: ClockIconProps) => react_jsx_runtime.JSX.Element;
|
|
818
|
+
declare const UploadImageIcon: ({ fill, ...props }: UploadImageIconProps) => react_jsx_runtime.JSX.Element;
|
|
826
819
|
|
|
827
820
|
interface SidebarProps {
|
|
828
821
|
defaultCollapsed?: boolean;
|
|
829
822
|
children: any;
|
|
823
|
+
canGrow: boolean;
|
|
830
824
|
}
|
|
831
825
|
declare const Sidebar: react__default.ForwardRefExoticComponent<SidebarProps & {
|
|
832
826
|
m?: string | number;
|
|
@@ -856,15 +850,15 @@ declare const Sidebar: react__default.ForwardRefExoticComponent<SidebarProps & {
|
|
|
856
850
|
interface SidebarContext {
|
|
857
851
|
collapsed: boolean;
|
|
858
852
|
setCollapsed: React.Dispatch<React.SetStateAction<boolean>>;
|
|
853
|
+
canGrow: boolean;
|
|
859
854
|
}
|
|
860
855
|
declare const SidebarContext: react.Context<SidebarContext>;
|
|
861
856
|
|
|
862
857
|
interface SidebarItemBase {
|
|
863
858
|
active?: boolean;
|
|
864
|
-
icon?: React.
|
|
859
|
+
icon?: React.ReactNode;
|
|
865
860
|
label?: string;
|
|
866
|
-
|
|
867
|
-
iconSize?: number;
|
|
861
|
+
component?: React.ElementType;
|
|
868
862
|
}
|
|
869
863
|
interface SidebarItemAnchor {
|
|
870
864
|
href: string;
|
|
@@ -876,19 +870,17 @@ interface SidebarItemButton {
|
|
|
876
870
|
onClick?: (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
|
|
877
871
|
}
|
|
878
872
|
type SidebarItemProps = SidebarItemBase & (SidebarItemAnchor | SidebarItemButton);
|
|
879
|
-
declare const SidebarItem: ({ active, icon
|
|
873
|
+
declare const SidebarItem: ({ active, icon, label, component, ...props }: SidebarItemProps) => react_jsx_runtime.JSX.Element;
|
|
880
874
|
|
|
881
875
|
declare const SidebarDelimeter: () => react_jsx_runtime.JSX.Element;
|
|
882
876
|
|
|
883
|
-
type SectionRole = 'header' | 'footer' | 'content';
|
|
884
877
|
interface SidebarSectionProps {
|
|
885
878
|
grow?: number;
|
|
886
879
|
shrink?: number;
|
|
887
880
|
basis?: CSSProperties['flexBasis'];
|
|
888
881
|
items: React.ReactElement[];
|
|
889
|
-
role: SectionRole;
|
|
890
882
|
}
|
|
891
|
-
declare const SidebarSection: ({ grow, shrink, basis, items
|
|
883
|
+
declare const SidebarSection: ({ grow, shrink, basis, items }: SidebarSectionProps) => react_jsx_runtime.JSX.Element;
|
|
892
884
|
|
|
893
885
|
type TypographyProps = FabricComponent<{
|
|
894
886
|
style?: CSSProperties$1;
|
|
@@ -1026,7 +1018,7 @@ declare const ListMenuSection: ({ title, items }: ListMenuSectionProps) => react
|
|
|
1026
1018
|
interface HeaderProps {
|
|
1027
1019
|
children?: any;
|
|
1028
1020
|
}
|
|
1029
|
-
declare const Header:
|
|
1021
|
+
declare const Header: ({ children }: HeaderProps) => react_jsx_runtime.JSX.Element;
|
|
1030
1022
|
|
|
1031
1023
|
declare const HeaderDelimeter: () => react_jsx_runtime.JSX.Element;
|
|
1032
1024
|
|
|
@@ -1090,9 +1082,9 @@ interface ContextMenuProps {
|
|
|
1090
1082
|
}
|
|
1091
1083
|
declare const ContextMenu: ({ isOpen, onClickOutside, onClick, anchor, size, disabled, fullWidth, className, positions, align, children, hasBorder, maxHeight, matchAnchorWidth, anchorIcon, }: ContextMenuProps) => react_jsx_runtime.JSX.Element;
|
|
1092
1084
|
|
|
1093
|
-
interface StyledProps
|
|
1085
|
+
interface StyledProps {
|
|
1094
1086
|
}
|
|
1095
|
-
declare const ContextMenuDelimiter: styled_components_dist_types.IStyledComponentBase<"web", styled_components_dist_types.Substitute<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, StyledProps
|
|
1087
|
+
declare const ContextMenuDelimiter: styled_components_dist_types.IStyledComponentBase<"web", styled_components_dist_types.Substitute<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, StyledProps>> & string;
|
|
1096
1088
|
|
|
1097
1089
|
declare const useContextMenuControl: () => {
|
|
1098
1090
|
isOpen: boolean;
|
|
@@ -1160,6 +1152,31 @@ type TextAreaElementProps = BaseInputProps & TextareaHTMLAttributes<HTMLTextArea
|
|
|
1160
1152
|
type InputProps = InputElementProps | TextAreaElementProps;
|
|
1161
1153
|
declare const Input: any;
|
|
1162
1154
|
|
|
1155
|
+
type FileFieldProps = Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'value' | 'onChange' | 'size'> & {
|
|
1156
|
+
error?: boolean;
|
|
1157
|
+
variant?: InputVariant;
|
|
1158
|
+
multiple?: boolean;
|
|
1159
|
+
accept?: string;
|
|
1160
|
+
uploadButtonText?: string;
|
|
1161
|
+
dragDropPlaceholder?: string;
|
|
1162
|
+
value?: File[];
|
|
1163
|
+
onChange?: (files: File[]) => void;
|
|
1164
|
+
onError?: (error: string) => void;
|
|
1165
|
+
dragDropClassName?: string;
|
|
1166
|
+
};
|
|
1167
|
+
declare const FileField: react.ForwardRefExoticComponent<Omit<InputHTMLAttributes<HTMLInputElement>, "value" | "size" | "type" | "onChange"> & {
|
|
1168
|
+
error?: boolean;
|
|
1169
|
+
variant?: InputVariant;
|
|
1170
|
+
multiple?: boolean;
|
|
1171
|
+
accept?: string;
|
|
1172
|
+
uploadButtonText?: string;
|
|
1173
|
+
dragDropPlaceholder?: string;
|
|
1174
|
+
value?: File[];
|
|
1175
|
+
onChange?: (files: File[]) => void;
|
|
1176
|
+
onError?: (error: string) => void;
|
|
1177
|
+
dragDropClassName?: string;
|
|
1178
|
+
} & react.RefAttributes<HTMLInputElement>>;
|
|
1179
|
+
|
|
1163
1180
|
type FlexDirection = 'row' | 'column' | 'row-reverse' | 'column-reverse';
|
|
1164
1181
|
type FlexWrap = 'nowrap' | 'wrap' | 'wrap-reverse';
|
|
1165
1182
|
type FlexJustify = 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly';
|
|
@@ -1629,30 +1646,36 @@ declare const ModalHeader: styled_components_dist_types.IStyledComponentBase<"we
|
|
|
1629
1646
|
declare const ModalBody: styled_components_dist_types.IStyledComponentBase<"web", styled_components_dist_types.Substitute<ModalChildrenProps | (ModalChildrenProps & react.RefAttributes<react.Component<ModalChildrenProps, any, any>>), StyledFabricComponent<ModalChildrenProps>>> & (string & (Omit<react.ComponentClass<ModalChildrenProps, any>, keyof react.Component<any, {}, any>> | Omit<react.FunctionComponent<ModalChildrenProps>, keyof react.Component<any, {}, any>>));
|
|
1630
1647
|
declare const ModalFooter: styled_components_dist_types.IStyledComponentBase<"web", styled_components_dist_types.Substitute<ModalChildrenProps | (ModalChildrenProps & react.RefAttributes<react.Component<ModalChildrenProps, any, any>>), StyledFabricComponent<ModalChildrenProps>>> & (string & (Omit<react.ComponentClass<ModalChildrenProps, any>, keyof react.Component<any, {}, any>> | Omit<react.FunctionComponent<ModalChildrenProps>, keyof react.Component<any, {}, any>>));
|
|
1631
1648
|
|
|
1632
|
-
interface
|
|
1633
|
-
|
|
1634
|
-
|
|
1649
|
+
interface TailwindExampleProps {
|
|
1650
|
+
variant?: 'primary' | 'secondary' | 'success' | 'danger';
|
|
1651
|
+
children: react__default.ReactNode;
|
|
1635
1652
|
}
|
|
1636
|
-
declare const
|
|
1637
|
-
declare const StyledContainer: styled_components_dist_types.IStyledComponentBase<"web", styled_components.FastOmit<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
1653
|
+
declare const TailwindExample: react__default.FC<TailwindExampleProps>;
|
|
1638
1654
|
|
|
1639
|
-
|
|
1640
|
-
|
|
1641
|
-
|
|
1642
|
-
|
|
1643
|
-
|
|
1644
|
-
|
|
1655
|
+
type ChatFieldProps = Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, 'type'> & {
|
|
1656
|
+
error?: boolean;
|
|
1657
|
+
errorText?: string;
|
|
1658
|
+
button?: ReactNode;
|
|
1659
|
+
images?: File[];
|
|
1660
|
+
onChangeImages?: (files: File[]) => void;
|
|
1661
|
+
onError?: (error: string) => void;
|
|
1662
|
+
multiple?: boolean;
|
|
1663
|
+
fieldClassName?: string;
|
|
1664
|
+
};
|
|
1665
|
+
declare const ChatField: ({ multiple, value, onChangeImages, images, errorText, error, onError, button, fieldClassName, ...props }: ChatFieldProps) => react_jsx_runtime.JSX.Element;
|
|
1645
1666
|
|
|
1646
|
-
interface
|
|
1667
|
+
interface PageLayoutProps {
|
|
1668
|
+
header?: any;
|
|
1669
|
+
sidebar?: any;
|
|
1647
1670
|
children?: any;
|
|
1648
1671
|
className?: string;
|
|
1649
|
-
top?: number;
|
|
1650
1672
|
}
|
|
1651
|
-
declare const
|
|
1652
|
-
|
|
1653
|
-
$
|
|
1654
|
-
|
|
1655
|
-
|
|
1673
|
+
declare const PageLayout: ({ children, header, sidebar, className }: PageLayoutProps) => react_jsx_runtime.JSX.Element;
|
|
1674
|
+
interface StyledContainerProps {
|
|
1675
|
+
$withHeader?: boolean;
|
|
1676
|
+
$withSidebar?: boolean;
|
|
1677
|
+
}
|
|
1678
|
+
declare const StyledContainer: styled_components_dist_types.IStyledComponentBase<"web", styled_components_dist_types.Substitute<react.DetailedHTMLProps<react.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, StyledContainerProps>> & string;
|
|
1656
1679
|
|
|
1657
1680
|
type ContainerProps = {
|
|
1658
1681
|
children: any;
|
|
@@ -1835,4 +1858,4 @@ declare const FullscreenCard: react.ForwardRefExoticComponent<FullscreenCardProp
|
|
|
1835
1858
|
} | undefined;
|
|
1836
1859
|
} & react.RefAttributes<unknown>>;
|
|
1837
1860
|
|
|
1838
|
-
export { type Action, Alert, AlertIcon, AndroidIcon, ApiIcon, ArrowCircleTopRightIcon, ArrowRightIcon, BallsMenu, Box, type Breakpoint, BreakpointProvider, BugReportIcon,
|
|
1861
|
+
export { type Action, Alert, AlertIcon, AndroidIcon, ApiIcon, ArrowCircleTopRightIcon, ArrowRightIcon, BallsMenu, Box, type Breakpoint, BreakpointProvider, BugReportIcon, BusIcon, Button, type ButtonColor, type ButtonElementStyle, type ButtonProps, type ButtonSize, type ButtonSizeStyle, type ButtonState, type ButtonVariant, CalendarIcon, CarIcon, ChatField, type ChatFieldProps, CheckIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, CloseCircleIcon, ClosedLockIcon, type ColorVariant, type ColumnTable, Container, ContentLoader, type ContentLoaderProps, ContextMenu, ContextMenuDelimiter, CrossIcon, DataSetsIcon, DeepSearchIcon, DisabledVisibleIcon, DocsIcon, DownloadIcon, Drawer, DrawerBody, DrawerHeader, EditUserIcon, EmptyData, type EmptyDataProps, EnableVisibleIcon, EnterArrowLeftIcon, type FabricComponent, FileField, type FileFieldProps, FileIcon, FiltersIcon, FlashIcon, FlexContainer, FlexItem, FolderAlertIcon, FolderInfoIcon, FullscreenCard, Graph2D, type Graph2DProps, type Graph2DRef, type GraphData, type GraphState, Header, HeaderDelimeter, HeaderSection, HomepageIcon, InfoCircleFilledIcon, InfoCircleIcon, Input, type InputElementProps, type InputElementStyle, type InputProps, type InputSize, type InputSizeStyle, type InputState, type InputVariant, IosIcon, Label, type LabelSize, type LabelSizeStyle, Line, LinerProgress, type LinkObject, ListMenu, ListMenuItem, type ListMenuItemAnchorProps, type ListMenuItemBase, type ListMenuItemButtonProps, type ListMenuItemProps, type ListMenuProps, ListMenuSection, type ListMenuSectionProps, MapRadarIcon, MaximizeIcon, MicrosoftIcon, Modal, ModalBody, ModalFooter, ModalHeader, MoonIcon, type NestedColorPaths, type NodeButton, type NodeObject, OpenLockIcon, OrganizationIcon, Overlay, type OverlayProps, PageLayout, Pagination, type PaginationProps, PassportIcon, PasswordFinderIcon, PencilIcon, PhonebookIcon, PlaneIcon, PlusIcon, PointIcon, PrintIcon, Profiler2Icon, ProfilerIcon, RelationIcon, RelationPointsIcon, type RenderCellProps, type RenderHeaderCellProps, RotateLeftIcon, RotateRightIcon, RowActionsMenu, SandBoxIcon, SearchIcon, Select, ShipIcon, Sidebar, SidebarContext, SidebarDelimeter, SidebarItem, type SidebarItemProps, type SidebarProps, SidebarSection, type SidebarSectionProps, StatisticIcon, StyledContainer, type StyledFabricComponent, SunIcon, Switch, type SwitchState, Table, Tag, type TagColor, type TagElementStyle, type TagVariant, TailwindExample, type TailwindExampleProps, type TextAreaElementProps, type Theme, type ThemeMode, ThemeProvider, Tooltip, Typography, type TypographyVariant, UnfoldIcon, UpRightArrowCircleIcon, UploadImageIcon, UserInCircleIcon, UsersIcon, VectorIcon, WayIcon, convertPaletteToRem, createComponent, createStyledComponent, darkTheme, darkThemePx, destructSpaceProps, generatePropertySpaceStyle, getBreakpoint, getButtonSizeStyles, getButtonStyles, getInputStyles, getResponsiveProps, getTypographyStyles, hexToRgba, lightTheme, lightThemePx, propToRem, pxToRem, remToPx, resolveThemeColor, useBreakpoint, useContextMenuControl, useTheme };
|