@true-engineering/true-react-common-ui-kit 3.32.0 → 3.33.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/LICENSE +201 -201
- package/README.md +15 -0
- package/dist/components/FlexibleTable/FlexibleTable.stories.d.ts +2 -0
- package/dist/components/FlexibleTable/components/FlexibleTableCell/FlexibleTableCell.d.ts +1 -1
- package/dist/components/FlexibleTable/components/FlexibleTableRow/FlexibleTableRow.d.ts +2 -1
- package/dist/components/SearchInput/SearchInput.stories.d.ts +1 -1
- package/dist/components/WithPopup/WithPopup.styles.d.ts +1 -1
- package/dist/components/WithPopup/types.d.ts +9 -3
- package/dist/true-react-common-ui-kit.js +144 -171
- package/dist/true-react-common-ui-kit.js.map +1 -1
- package/dist/true-react-common-ui-kit.umd.cjs +143 -170
- package/dist/true-react-common-ui-kit.umd.cjs.map +1 -1
- package/dist/types.d.ts +7 -2
- package/package.json +98 -98
- package/src/components/AccountInfo/AccountInfo.stories.tsx +32 -32
- package/src/components/AccountInfo/AccountInfo.tsx +80 -80
- package/src/components/AddButton/AddButton.stories.tsx +21 -21
- package/src/components/AddButton/AddButton.tsx +52 -52
- package/src/components/Colors/Colors.stories.tsx +7 -7
- package/src/components/DateInput/DateInput.tsx +90 -90
- package/src/components/DateInput/constants.ts +2 -2
- package/src/components/Description/Description.stories.tsx +27 -27
- package/src/components/Description/Description.tsx +61 -61
- package/src/components/FiltersPane/components/FilterValueView/FilterValueView.tsx +166 -166
- package/src/components/FiltersPane/components/FilterWithDates/FilterWithDates.tsx +210 -210
- package/src/components/FiltersPane/components/FilterWithPeriod/FilterWithPeriod.tsx +177 -177
- package/src/components/FiltersPane/components/FilterWrapper/FilterWrapper.tsx +2 -2
- package/src/components/Flag/Flag.stories.tsx +29 -29
- package/src/components/Flag/Flag.tsx +26 -26
- package/src/components/Flag/augment.d.ts +1 -1
- package/src/components/FlexibleTable/FlexibleTable.stories.tsx +14 -1
- package/src/components/FlexibleTable/FlexibleTable.tsx +22 -10
- package/src/components/FlexibleTable/components/FlexibleTableCell/FlexibleTableCell.styles.ts +39 -38
- package/src/components/FlexibleTable/components/FlexibleTableCell/FlexibleTableCell.tsx +4 -2
- package/src/components/FlexibleTable/components/FlexibleTableRow/FlexibleTableRow.styles.ts +25 -25
- package/src/components/FlexibleTable/components/FlexibleTableRow/FlexibleTableRow.tsx +2 -1
- package/src/components/FlexibleTable/types.ts +70 -70
- package/src/components/Icon/Icon.stories.tsx +86 -86
- package/src/components/Icon/complexIcons/augment.d.ts +1 -1
- package/src/components/Icon/complexIcons/avatarGreen.svg +57 -57
- package/src/components/Icon/complexIcons/index.ts +1 -1
- package/src/components/Icon/icons-list.ts +855 -856
- package/src/components/IncrementInput/IncrementInput.tsx +105 -105
- package/src/components/Input/types.ts +32 -32
- package/src/components/List/List.tsx +3 -1
- package/src/components/Modal/Modal.stories.tsx +105 -105
- package/src/components/MultiSelect/MultiSelect.stories.tsx +46 -46
- package/src/components/MultiSelect/MultiSelect.tsx +106 -106
- package/src/components/MultiSelect/components/MultiSelectInput/MultiSelectInput.tsx +53 -53
- package/src/components/NewMoreMenu/NewMoreMenu.tsx +5 -5
- package/src/components/Notification/Notification.stories.tsx +55 -55
- package/src/components/Notification/Notification.styles.ts +57 -57
- package/src/components/Notification/Notification.tsx +77 -77
- package/src/components/Notification/types.ts +1 -1
- package/src/components/NumberInput/NumberInput.tsx +137 -137
- package/src/components/NumberInput/index.ts +1 -1
- package/src/components/PhoneInput/PhoneInput.tsx +214 -214
- package/src/components/PhoneInput/components/PhoneInputCountryList/PhoneInputCountryList.tsx +155 -155
- package/src/components/PhoneInput/types.ts +16 -16
- package/src/components/RadioButton/RadioButton.stories.tsx +46 -46
- package/src/components/RadioButton/RadioButton.tsx +57 -57
- package/src/components/ScrollIntoViewIfNeeded/index.ts +1 -1
- package/src/components/Select/Select.stories.tsx +235 -235
- package/src/components/Select/constants.ts +2 -2
- package/src/components/Select/types.ts +1 -1
- package/src/components/Selector/Selector.stories.tsx +62 -62
- package/src/components/Selector/Selector.tsx +115 -115
- package/src/components/Selector/index.ts +2 -2
- package/src/components/Selector/types.ts +12 -12
- package/src/components/Skeleton/Skeleton.stories.tsx +19 -19
- package/src/components/SmartInput/SmartInput.tsx +134 -134
- package/src/components/Status/Status.stories.tsx +73 -73
- package/src/components/Status/Status.styles.ts +143 -143
- package/src/components/Status/Status.tsx +49 -49
- package/src/components/Status/constants.ts +11 -11
- package/src/components/Status/index.ts +3 -3
- package/src/components/Status/types.ts +5 -5
- package/src/components/Switch/Switch.stories.tsx +40 -40
- package/src/components/Switch/Switch.tsx +75 -75
- package/src/components/TextWithInfo/TextWithInfo.stories.tsx +53 -53
- package/src/components/TextWithInfo/TextWithInfo.tsx +62 -62
- package/src/components/TextWithTooltip/TextWithTooltip.stories.tsx +58 -58
- package/src/components/ThemedPreloader/ThemedPreloader.stories.tsx +41 -41
- package/src/components/ThemedPreloader/ThemedPreloader.tsx +54 -54
- package/src/components/ThemedPreloader/components/DefaultPreloader/index.ts +1 -1
- package/src/components/Toaster/Toaster.stories.tsx +30 -30
- package/src/components/Tooltip/Tooltip.stories.tsx +19 -19
- package/src/components/Tooltip/Tooltip.tsx +35 -35
- package/src/components/Tooltip/types.ts +1 -1
- package/src/components/WithPopup/WithPopup.stories.tsx +3 -3
- package/src/components/WithPopup/WithPopup.styles.ts +2 -0
- package/src/components/WithPopup/WithPopup.tsx +18 -8
- package/src/components/WithPopup/types.ts +11 -3
- package/src/helpers/popper-helpers.ts +17 -17
- package/src/hooks/use-dropdown.ts +84 -84
- package/src/hooks/use-is-mounted.ts +15 -15
- package/src/theme/helpers.ts +76 -76
- package/src/types.ts +10 -2
- package/src/vite-env.d.ts +1 -1
|
@@ -44,7 +44,7 @@ export function FlexibleTableCell<
|
|
|
44
44
|
config,
|
|
45
45
|
renderMode,
|
|
46
46
|
isSecond,
|
|
47
|
-
isSticky,
|
|
47
|
+
isSticky: isOldSticky,
|
|
48
48
|
isLoading,
|
|
49
49
|
tweakStyles,
|
|
50
50
|
...valueComponentProps
|
|
@@ -63,6 +63,8 @@ export function FlexibleTableCell<
|
|
|
63
63
|
shouldRenderDataId,
|
|
64
64
|
} = config[columnName] ?? {};
|
|
65
65
|
|
|
66
|
+
const isSticky = isOldSticky || position === 'sticky';
|
|
67
|
+
|
|
66
68
|
const Table = TableRenders[renderMode];
|
|
67
69
|
|
|
68
70
|
return (
|
|
@@ -76,7 +78,7 @@ export function FlexibleTableCell<
|
|
|
76
78
|
textAlign: cellAlign,
|
|
77
79
|
position: isSticky ? 'sticky' : position,
|
|
78
80
|
right,
|
|
79
|
-
left
|
|
81
|
+
left,
|
|
80
82
|
verticalAlign: cellVerticalAlign,
|
|
81
83
|
}}
|
|
82
84
|
{...addDataAttributes({ id: shouldRenderDataId ? columnName : undefined })}
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
import { ITweakStyles, createThemedStyles } from '../../../../theme';
|
|
2
|
-
import { IFlexibleTableCellStyles } from '../FlexibleTableCell';
|
|
3
|
-
|
|
4
|
-
export const useStyles = createThemedStyles('FlexibleTableRow', {
|
|
5
|
-
root: {
|
|
6
|
-
position: 'relative',
|
|
7
|
-
},
|
|
8
|
-
|
|
9
|
-
active: {},
|
|
10
|
-
|
|
11
|
-
editable: {
|
|
12
|
-
cursor: 'pointer',
|
|
13
|
-
},
|
|
14
|
-
|
|
15
|
-
clickable: {
|
|
16
|
-
cursor: 'pointer',
|
|
17
|
-
},
|
|
18
|
-
|
|
19
|
-
nestedComponent: {},
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
export type IFlexibleTableRowStyles = ITweakStyles<
|
|
23
|
-
typeof useStyles,
|
|
24
|
-
{ tweakTableCell: IFlexibleTableCellStyles }
|
|
25
|
-
>;
|
|
1
|
+
import { ITweakStyles, createThemedStyles } from '../../../../theme';
|
|
2
|
+
import { IFlexibleTableCellStyles } from '../FlexibleTableCell';
|
|
3
|
+
|
|
4
|
+
export const useStyles = createThemedStyles('FlexibleTableRow', {
|
|
5
|
+
root: {
|
|
6
|
+
position: 'relative',
|
|
7
|
+
},
|
|
8
|
+
|
|
9
|
+
active: {},
|
|
10
|
+
|
|
11
|
+
editable: {
|
|
12
|
+
cursor: 'pointer',
|
|
13
|
+
},
|
|
14
|
+
|
|
15
|
+
clickable: {
|
|
16
|
+
cursor: 'pointer',
|
|
17
|
+
},
|
|
18
|
+
|
|
19
|
+
nestedComponent: {},
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
export type IFlexibleTableRowStyles = ITweakStyles<
|
|
23
|
+
typeof useStyles,
|
|
24
|
+
{ tweakTableCell: IFlexibleTableCellStyles }
|
|
25
|
+
>;
|
|
@@ -28,7 +28,8 @@ export interface IFlexibleTableRowProps<
|
|
|
28
28
|
isActive?: boolean;
|
|
29
29
|
/** @default false */
|
|
30
30
|
isFocusable?: boolean;
|
|
31
|
-
/** @
|
|
31
|
+
/** @deprecated Use {@position}
|
|
32
|
+
* @default false */
|
|
32
33
|
isFirstColumnSticky?: boolean;
|
|
33
34
|
/** @default false */
|
|
34
35
|
isLoading?: boolean;
|
|
@@ -1,70 +1,70 @@
|
|
|
1
|
-
import { CSSProperties, ReactNode } from 'react';
|
|
2
|
-
import { IRenderNode } from '../../types';
|
|
3
|
-
|
|
4
|
-
export type IFlexibleTableRenderMode = 'table' | 'divs';
|
|
5
|
-
|
|
6
|
-
export type IFlexibleTableRender = Record<
|
|
7
|
-
'Root' | 'Head' | 'Body' | 'Row' | 'Header' | 'Cell',
|
|
8
|
-
keyof JSX.IntrinsicElements
|
|
9
|
-
>;
|
|
10
|
-
|
|
11
|
-
// TODO: Заменить Record<string, any> на Record<string, unknown>
|
|
12
|
-
export type ITableRow = Record<string, any>;
|
|
13
|
-
|
|
14
|
-
export type IHeaderContent<T extends ITableRow> = Partial<Record<keyof T, unknown>>;
|
|
15
|
-
|
|
16
|
-
export interface ITitleComponentProps<Value> {
|
|
17
|
-
value?: Value;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
export interface IValueComponentProps<Values, Value> {
|
|
21
|
-
value: Value;
|
|
22
|
-
row: Values;
|
|
23
|
-
isFocusedRow?: boolean;
|
|
24
|
-
isActiveRow?: boolean;
|
|
25
|
-
isNestedComponentExpanded: boolean;
|
|
26
|
-
isRowNestedComponentExpanded: boolean;
|
|
27
|
-
onSetNestedComponent: (component?: ReactNode) => void;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
export interface IFlexibleTableRowConfig<
|
|
31
|
-
Values extends ITableRow,
|
|
32
|
-
Key extends keyof Values,
|
|
33
|
-
HeaderContent extends IHeaderContent<Values> = IHeaderContent<Values>,
|
|
34
|
-
> {
|
|
35
|
-
title?: IRenderNode<ITitleComponentProps<HeaderContent[Key]>>;
|
|
36
|
-
component?: IRenderNode<IValueComponentProps<Values, NonNullable<Values[Key]>>>;
|
|
37
|
-
dateFormat?: string;
|
|
38
|
-
minWidth?: string | number;
|
|
39
|
-
width?: string | number;
|
|
40
|
-
maxWidth?: string | number;
|
|
41
|
-
/** @default 'left' */
|
|
42
|
-
titleAlign?: CSSProperties['textAlign'];
|
|
43
|
-
cellAlign?: CSSProperties['textAlign'];
|
|
44
|
-
cellVerticalAlign?: CSSProperties['verticalAlign'];
|
|
45
|
-
position?: CSSProperties['position'];
|
|
46
|
-
right?: number;
|
|
47
|
-
left?: number;
|
|
48
|
-
shouldRenderDataId?: boolean;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
export type IFlexibleTableConfigType<
|
|
52
|
-
Values extends ITableRow,
|
|
53
|
-
HeaderContent extends IHeaderContent<Values> = IHeaderContent<Values>,
|
|
54
|
-
> = {
|
|
55
|
-
[Key in keyof Values]?: IFlexibleTableRowConfig<Values, Key, HeaderContent>;
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
export interface IInfinityScrollConfig {
|
|
59
|
-
activePage: number;
|
|
60
|
-
totalPages: number;
|
|
61
|
-
isLoading: boolean;
|
|
62
|
-
isLastPage: boolean;
|
|
63
|
-
onInfinityScroll: (skip: number) => void;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
export interface INestedComponent {
|
|
67
|
-
isOpen: boolean;
|
|
68
|
-
component?: ReactNode;
|
|
69
|
-
cellKey?: string;
|
|
70
|
-
}
|
|
1
|
+
import { CSSProperties, ReactNode } from 'react';
|
|
2
|
+
import { IRenderNode } from '../../types';
|
|
3
|
+
|
|
4
|
+
export type IFlexibleTableRenderMode = 'table' | 'divs';
|
|
5
|
+
|
|
6
|
+
export type IFlexibleTableRender = Record<
|
|
7
|
+
'Root' | 'Head' | 'Body' | 'Row' | 'Header' | 'Cell',
|
|
8
|
+
keyof JSX.IntrinsicElements
|
|
9
|
+
>;
|
|
10
|
+
|
|
11
|
+
// TODO: Заменить Record<string, any> на Record<string, unknown>
|
|
12
|
+
export type ITableRow = Record<string, any>;
|
|
13
|
+
|
|
14
|
+
export type IHeaderContent<T extends ITableRow> = Partial<Record<keyof T, unknown>>;
|
|
15
|
+
|
|
16
|
+
export interface ITitleComponentProps<Value> {
|
|
17
|
+
value?: Value;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export interface IValueComponentProps<Values, Value> {
|
|
21
|
+
value: Value;
|
|
22
|
+
row: Values;
|
|
23
|
+
isFocusedRow?: boolean;
|
|
24
|
+
isActiveRow?: boolean;
|
|
25
|
+
isNestedComponentExpanded: boolean;
|
|
26
|
+
isRowNestedComponentExpanded: boolean;
|
|
27
|
+
onSetNestedComponent: (component?: ReactNode) => void;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export interface IFlexibleTableRowConfig<
|
|
31
|
+
Values extends ITableRow,
|
|
32
|
+
Key extends keyof Values,
|
|
33
|
+
HeaderContent extends IHeaderContent<Values> = IHeaderContent<Values>,
|
|
34
|
+
> {
|
|
35
|
+
title?: IRenderNode<ITitleComponentProps<HeaderContent[Key]>>;
|
|
36
|
+
component?: IRenderNode<IValueComponentProps<Values, NonNullable<Values[Key]>>>;
|
|
37
|
+
dateFormat?: string;
|
|
38
|
+
minWidth?: string | number;
|
|
39
|
+
width?: string | number;
|
|
40
|
+
maxWidth?: string | number;
|
|
41
|
+
/** @default 'left' */
|
|
42
|
+
titleAlign?: CSSProperties['textAlign'];
|
|
43
|
+
cellAlign?: CSSProperties['textAlign'];
|
|
44
|
+
cellVerticalAlign?: CSSProperties['verticalAlign'];
|
|
45
|
+
position?: CSSProperties['position'];
|
|
46
|
+
right?: number;
|
|
47
|
+
left?: number;
|
|
48
|
+
shouldRenderDataId?: boolean;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export type IFlexibleTableConfigType<
|
|
52
|
+
Values extends ITableRow,
|
|
53
|
+
HeaderContent extends IHeaderContent<Values> = IHeaderContent<Values>,
|
|
54
|
+
> = {
|
|
55
|
+
[Key in keyof Values]?: IFlexibleTableRowConfig<Values, Key, HeaderContent>;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
export interface IInfinityScrollConfig {
|
|
59
|
+
activePage: number;
|
|
60
|
+
totalPages: number;
|
|
61
|
+
isLoading: boolean;
|
|
62
|
+
isLastPage: boolean;
|
|
63
|
+
onInfinityScroll: (skip: number) => void;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export interface INestedComponent {
|
|
67
|
+
isOpen: boolean;
|
|
68
|
+
component?: ReactNode;
|
|
69
|
+
cellKey?: string;
|
|
70
|
+
}
|
|
@@ -1,86 +1,86 @@
|
|
|
1
|
-
import { Icon } from './Icon';
|
|
2
|
-
import { complexIcons } from './complexIcons';
|
|
3
|
-
import { iconsList } from './icons-list';
|
|
4
|
-
import { IIconType } from './types';
|
|
5
|
-
|
|
6
|
-
const types: IIconType[] = [...Object.keys(iconsList), ...Object.keys(complexIcons)] as IIconType[];
|
|
7
|
-
|
|
8
|
-
export default {
|
|
9
|
-
title: 'Data Display/Icon',
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
export const Default = () => (
|
|
13
|
-
<div
|
|
14
|
-
style={{
|
|
15
|
-
border: '1px dotted rgba(0,0,0,.2)',
|
|
16
|
-
// color: color('Container color', colors.GREEN_FOCUS),
|
|
17
|
-
display: 'flex',
|
|
18
|
-
// width: number('Container width', 40, {
|
|
19
|
-
// range: true,
|
|
20
|
-
// min: 0,
|
|
21
|
-
// max: 200,
|
|
22
|
-
// step: 10,
|
|
23
|
-
// }),
|
|
24
|
-
// height: number('Container height', 40, {
|
|
25
|
-
// range: true,
|
|
26
|
-
// min: 0,
|
|
27
|
-
// max: 200,
|
|
28
|
-
// step: 10,
|
|
29
|
-
// }),
|
|
30
|
-
}}
|
|
31
|
-
>
|
|
32
|
-
{/* <Icon type={select('type', types, types[0])} /> */}
|
|
33
|
-
</div>
|
|
34
|
-
);
|
|
35
|
-
|
|
36
|
-
export const Gallery = () => (
|
|
37
|
-
<div
|
|
38
|
-
style={{
|
|
39
|
-
display: 'flex',
|
|
40
|
-
alignItems: 'center',
|
|
41
|
-
justifyContent: 'center',
|
|
42
|
-
flexWrap: 'wrap',
|
|
43
|
-
width: '80vw',
|
|
44
|
-
}}
|
|
45
|
-
>
|
|
46
|
-
{types.map((type) => (
|
|
47
|
-
<div
|
|
48
|
-
key={type}
|
|
49
|
-
style={{
|
|
50
|
-
width: 100,
|
|
51
|
-
height: 100,
|
|
52
|
-
margin: 1,
|
|
53
|
-
background: '#f7f7f7',
|
|
54
|
-
display: 'flex',
|
|
55
|
-
alignItems: 'center',
|
|
56
|
-
justifyContent: 'center',
|
|
57
|
-
flexDirection: 'column',
|
|
58
|
-
}}
|
|
59
|
-
>
|
|
60
|
-
<div
|
|
61
|
-
style={{
|
|
62
|
-
width: 32,
|
|
63
|
-
height: 32,
|
|
64
|
-
margin: '10px 0',
|
|
65
|
-
display: 'flex',
|
|
66
|
-
alignItems: 'center',
|
|
67
|
-
color: '#888',
|
|
68
|
-
}}
|
|
69
|
-
>
|
|
70
|
-
<Icon type={type} />
|
|
71
|
-
</div>
|
|
72
|
-
<div
|
|
73
|
-
style={{
|
|
74
|
-
fontFamily: 'Arial',
|
|
75
|
-
fontSize: 13,
|
|
76
|
-
color: '#747679',
|
|
77
|
-
overflow: 'hidden',
|
|
78
|
-
padding: '0 5px',
|
|
79
|
-
}}
|
|
80
|
-
>
|
|
81
|
-
{type}
|
|
82
|
-
</div>
|
|
83
|
-
</div>
|
|
84
|
-
))}
|
|
85
|
-
</div>
|
|
86
|
-
);
|
|
1
|
+
import { Icon } from './Icon';
|
|
2
|
+
import { complexIcons } from './complexIcons';
|
|
3
|
+
import { iconsList } from './icons-list';
|
|
4
|
+
import { IIconType } from './types';
|
|
5
|
+
|
|
6
|
+
const types: IIconType[] = [...Object.keys(iconsList), ...Object.keys(complexIcons)] as IIconType[];
|
|
7
|
+
|
|
8
|
+
export default {
|
|
9
|
+
title: 'Data Display/Icon',
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export const Default = () => (
|
|
13
|
+
<div
|
|
14
|
+
style={{
|
|
15
|
+
border: '1px dotted rgba(0,0,0,.2)',
|
|
16
|
+
// color: color('Container color', colors.GREEN_FOCUS),
|
|
17
|
+
display: 'flex',
|
|
18
|
+
// width: number('Container width', 40, {
|
|
19
|
+
// range: true,
|
|
20
|
+
// min: 0,
|
|
21
|
+
// max: 200,
|
|
22
|
+
// step: 10,
|
|
23
|
+
// }),
|
|
24
|
+
// height: number('Container height', 40, {
|
|
25
|
+
// range: true,
|
|
26
|
+
// min: 0,
|
|
27
|
+
// max: 200,
|
|
28
|
+
// step: 10,
|
|
29
|
+
// }),
|
|
30
|
+
}}
|
|
31
|
+
>
|
|
32
|
+
{/* <Icon type={select('type', types, types[0])} /> */}
|
|
33
|
+
</div>
|
|
34
|
+
);
|
|
35
|
+
|
|
36
|
+
export const Gallery = () => (
|
|
37
|
+
<div
|
|
38
|
+
style={{
|
|
39
|
+
display: 'flex',
|
|
40
|
+
alignItems: 'center',
|
|
41
|
+
justifyContent: 'center',
|
|
42
|
+
flexWrap: 'wrap',
|
|
43
|
+
width: '80vw',
|
|
44
|
+
}}
|
|
45
|
+
>
|
|
46
|
+
{types.map((type) => (
|
|
47
|
+
<div
|
|
48
|
+
key={type}
|
|
49
|
+
style={{
|
|
50
|
+
width: 100,
|
|
51
|
+
height: 100,
|
|
52
|
+
margin: 1,
|
|
53
|
+
background: '#f7f7f7',
|
|
54
|
+
display: 'flex',
|
|
55
|
+
alignItems: 'center',
|
|
56
|
+
justifyContent: 'center',
|
|
57
|
+
flexDirection: 'column',
|
|
58
|
+
}}
|
|
59
|
+
>
|
|
60
|
+
<div
|
|
61
|
+
style={{
|
|
62
|
+
width: 32,
|
|
63
|
+
height: 32,
|
|
64
|
+
margin: '10px 0',
|
|
65
|
+
display: 'flex',
|
|
66
|
+
alignItems: 'center',
|
|
67
|
+
color: '#888',
|
|
68
|
+
}}
|
|
69
|
+
>
|
|
70
|
+
<Icon type={type} />
|
|
71
|
+
</div>
|
|
72
|
+
<div
|
|
73
|
+
style={{
|
|
74
|
+
fontFamily: 'Arial',
|
|
75
|
+
fontSize: 13,
|
|
76
|
+
color: '#747679',
|
|
77
|
+
overflow: 'hidden',
|
|
78
|
+
padding: '0 5px',
|
|
79
|
+
}}
|
|
80
|
+
>
|
|
81
|
+
{type}
|
|
82
|
+
</div>
|
|
83
|
+
</div>
|
|
84
|
+
))}
|
|
85
|
+
</div>
|
|
86
|
+
);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
declare module '*.svg?raw';
|
|
1
|
+
declare module '*.svg?raw';
|
|
@@ -1,58 +1,58 @@
|
|
|
1
|
-
<svg
|
|
2
|
-
width="100%"
|
|
3
|
-
height="100%"
|
|
4
|
-
viewBox="0 0 32 32"
|
|
5
|
-
fill="none"
|
|
6
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
7
|
-
>
|
|
8
|
-
<circle opacity="0.5" cx="16" cy="16" r="16" fill="#DDE3ED" />
|
|
9
|
-
<mask
|
|
10
|
-
id="mask0_0_12744"
|
|
11
|
-
style="mask-type: 'alpha';"
|
|
12
|
-
maskUnits="userSpaceOnUse"
|
|
13
|
-
x="0"
|
|
14
|
-
y="0"
|
|
15
|
-
width="32"
|
|
16
|
-
height="32"
|
|
17
|
-
>
|
|
18
|
-
<circle cx="16" cy="16" r="16" fill="white" />
|
|
19
|
-
</mask>
|
|
20
|
-
<g mask="url(#mask0_0_12744)">
|
|
21
|
-
<circle cx="16" cy="29" r="13" fill="url(#paint0_linear_0_12744)" />
|
|
22
|
-
<mask
|
|
23
|
-
id="mask1_0_12744"
|
|
24
|
-
style="mask-type: 'alpha';"
|
|
25
|
-
maskUnits="userSpaceOnUse"
|
|
26
|
-
x="3"
|
|
27
|
-
y="16"
|
|
28
|
-
width="26"
|
|
29
|
-
height="26"
|
|
30
|
-
>
|
|
31
|
-
<circle cx="16" cy="29" r="13" fill="white" />
|
|
32
|
-
</mask>
|
|
33
|
-
<g mask="url(#mask1_0_12744)">
|
|
34
|
-
<ellipse
|
|
35
|
-
cx="16"
|
|
36
|
-
cy="17.5"
|
|
37
|
-
rx="6"
|
|
38
|
-
ry="7.5"
|
|
39
|
-
fill="#505F79"
|
|
40
|
-
fill-opacity="0.204983"
|
|
41
|
-
/>
|
|
42
|
-
</g>
|
|
43
|
-
</g>
|
|
44
|
-
<ellipse cx="16" cy="13" rx="6" ry="7" fill="white" />
|
|
45
|
-
<defs>
|
|
46
|
-
<linearGradient
|
|
47
|
-
id="paint0_linear_0_12744"
|
|
48
|
-
x1="13.347"
|
|
49
|
-
y1="46.279"
|
|
50
|
-
x2="33.5318"
|
|
51
|
-
y2="30.8088"
|
|
52
|
-
gradientUnits="userSpaceOnUse"
|
|
53
|
-
>
|
|
54
|
-
<stop stop-color="#ABD229" />
|
|
55
|
-
<stop offset="1" stop-color="#9CD03F" />
|
|
56
|
-
</linearGradient>
|
|
57
|
-
</defs>
|
|
1
|
+
<svg
|
|
2
|
+
width="100%"
|
|
3
|
+
height="100%"
|
|
4
|
+
viewBox="0 0 32 32"
|
|
5
|
+
fill="none"
|
|
6
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
7
|
+
>
|
|
8
|
+
<circle opacity="0.5" cx="16" cy="16" r="16" fill="#DDE3ED" />
|
|
9
|
+
<mask
|
|
10
|
+
id="mask0_0_12744"
|
|
11
|
+
style="mask-type: 'alpha';"
|
|
12
|
+
maskUnits="userSpaceOnUse"
|
|
13
|
+
x="0"
|
|
14
|
+
y="0"
|
|
15
|
+
width="32"
|
|
16
|
+
height="32"
|
|
17
|
+
>
|
|
18
|
+
<circle cx="16" cy="16" r="16" fill="white" />
|
|
19
|
+
</mask>
|
|
20
|
+
<g mask="url(#mask0_0_12744)">
|
|
21
|
+
<circle cx="16" cy="29" r="13" fill="url(#paint0_linear_0_12744)" />
|
|
22
|
+
<mask
|
|
23
|
+
id="mask1_0_12744"
|
|
24
|
+
style="mask-type: 'alpha';"
|
|
25
|
+
maskUnits="userSpaceOnUse"
|
|
26
|
+
x="3"
|
|
27
|
+
y="16"
|
|
28
|
+
width="26"
|
|
29
|
+
height="26"
|
|
30
|
+
>
|
|
31
|
+
<circle cx="16" cy="29" r="13" fill="white" />
|
|
32
|
+
</mask>
|
|
33
|
+
<g mask="url(#mask1_0_12744)">
|
|
34
|
+
<ellipse
|
|
35
|
+
cx="16"
|
|
36
|
+
cy="17.5"
|
|
37
|
+
rx="6"
|
|
38
|
+
ry="7.5"
|
|
39
|
+
fill="#505F79"
|
|
40
|
+
fill-opacity="0.204983"
|
|
41
|
+
/>
|
|
42
|
+
</g>
|
|
43
|
+
</g>
|
|
44
|
+
<ellipse cx="16" cy="13" rx="6" ry="7" fill="white" />
|
|
45
|
+
<defs>
|
|
46
|
+
<linearGradient
|
|
47
|
+
id="paint0_linear_0_12744"
|
|
48
|
+
x1="13.347"
|
|
49
|
+
y1="46.279"
|
|
50
|
+
x2="33.5318"
|
|
51
|
+
y2="30.8088"
|
|
52
|
+
gradientUnits="userSpaceOnUse"
|
|
53
|
+
>
|
|
54
|
+
<stop stop-color="#ABD229" />
|
|
55
|
+
<stop offset="1" stop-color="#9CD03F" />
|
|
56
|
+
</linearGradient>
|
|
57
|
+
</defs>
|
|
58
58
|
</svg>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './icons';
|
|
1
|
+
export * from './icons';
|