@xqmsg/ui-core 0.23.1-rc.1 → 0.23.1-rc.2

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 (192) hide show
  1. package/CHANGELOG.md +456 -0
  2. package/LICENSE +20 -20
  3. package/README.md +40 -40
  4. package/dist/{89793640b494d7ea.svg → 78c9d6fd7766410f.svg} +9 -9
  5. package/dist/ui-core.cjs.development.js +1 -1
  6. package/dist/ui-core.cjs.development.js.map +1 -1
  7. package/dist/ui-core.cjs.production.min.js +1 -1
  8. package/dist/ui-core.cjs.production.min.js.map +1 -1
  9. package/dist/ui-core.esm.js +1 -1
  10. package/dist/ui-core.esm.js.map +1 -1
  11. package/package.json +118 -118
  12. package/src/components/banner/Banner.stories.tsx +100 -100
  13. package/src/components/banner/index.tsx +73 -73
  14. package/src/components/breadcrumbs/Breadcrumbs.stories.tsx +66 -66
  15. package/src/components/breadcrumbs/components/icon/index.tsx +38 -38
  16. package/src/components/breadcrumbs/components/label/index.tsx +20 -20
  17. package/src/components/breadcrumbs/index.tsx +48 -48
  18. package/src/components/button/Button.stories.tsx +140 -140
  19. package/src/components/button/google/GoogleButton.stories.tsx +23 -23
  20. package/src/components/button/google/index.tsx +29 -29
  21. package/src/components/button/index.tsx +51 -51
  22. package/src/components/button/microsoft/MicrosoftButton.stories.tsx +25 -25
  23. package/src/components/button/microsoft/index.tsx +29 -29
  24. package/src/components/button/spinner/SpinnerButton.stories.tsx +60 -60
  25. package/src/components/button/spinner/index.tsx +36 -36
  26. package/src/components/card/Card.stories.tsx +56 -56
  27. package/src/components/card/index.tsx +78 -78
  28. package/src/components/form/Form.stories.tsx +62 -62
  29. package/src/components/form/FormTypes.ts +20 -20
  30. package/src/components/form/hooks/useFormHandler.tsx +74 -74
  31. package/src/components/form/index.tsx +25 -25
  32. package/src/components/form/section/FormSection.stories.tsx +109 -109
  33. package/src/components/form/section/index.tsx +87 -87
  34. package/src/components/form/utils/formErrors.ts +34 -34
  35. package/src/components/icons/checkmark/checkmark.svg +3 -3
  36. package/src/components/icons/checkmark/index.tsx +13 -13
  37. package/src/components/icons/chevron/down/chevron-down.svg +3 -3
  38. package/src/components/icons/chevron/down/index.tsx +14 -14
  39. package/src/components/icons/chevron/right/chevron-right.svg +3 -3
  40. package/src/components/icons/chevron/right/index.tsx +13 -13
  41. package/src/components/icons/clock/clock.svg +3 -3
  42. package/src/components/icons/clock/index.tsx +13 -13
  43. package/src/components/icons/close/close.svg +3 -3
  44. package/src/components/icons/close/index.tsx +21 -21
  45. package/src/components/icons/dropdown/dropdown.svg +3 -3
  46. package/src/components/icons/dropdown/index.tsx +16 -16
  47. package/src/components/icons/error/error.svg +3 -3
  48. package/src/components/icons/error/index.tsx +13 -13
  49. package/src/components/icons/file/fill/file-fill.svg +4 -4
  50. package/src/components/icons/file/fill/index.tsx +13 -13
  51. package/src/components/icons/file/outline/file-outline.svg +3 -3
  52. package/src/components/icons/file/outline/index.tsx +13 -13
  53. package/src/components/icons/folder/add/fill/folder-add-fill.svg +3 -3
  54. package/src/components/icons/folder/add/fill/index.tsx +13 -13
  55. package/src/components/icons/folder/add/outline/folder-add-outline.svg +3 -3
  56. package/src/components/icons/folder/add/outline/index.tsx +15 -15
  57. package/src/components/icons/folder/fill/folder-fill-gradient.svg +33 -33
  58. package/src/components/icons/folder/fill/folder-fill.svg +4 -4
  59. package/src/components/icons/folder/fill/index.tsx +21 -21
  60. package/src/components/icons/folder/outline/folder-outline.svg +3 -3
  61. package/src/components/icons/folder/outline/index.tsx +13 -13
  62. package/src/components/icons/gear/GearIcon.tsx +36 -36
  63. package/src/components/icons/google/drive/index.tsx +13 -13
  64. package/src/components/icons/google/google.svg +13 -13
  65. package/src/components/icons/google/index.tsx +13 -13
  66. package/src/components/icons/group/group.svg +3 -3
  67. package/src/components/icons/group/index.tsx +13 -13
  68. package/src/components/icons/home/home.svg +3 -3
  69. package/src/components/icons/home/index.tsx +13 -13
  70. package/src/components/icons/image/image.svg +3 -3
  71. package/src/components/icons/image/index.tsx +13 -13
  72. package/src/components/icons/index.tsx +101 -101
  73. package/src/components/icons/link/index.tsx +13 -13
  74. package/src/components/icons/link/link.svg +4 -4
  75. package/src/components/icons/menu/index.tsx +13 -13
  76. package/src/components/icons/menu/menu.svg +3 -3
  77. package/src/components/icons/microsoft/index.tsx +13 -13
  78. package/src/components/icons/microsoft/microsoft.svg +9 -9
  79. package/src/components/icons/microsoft/onedrive/index.tsx +16 -16
  80. package/src/components/icons/neutral/index.tsx +14 -14
  81. package/src/components/icons/neutral/neutral.svg +3 -3
  82. package/src/components/icons/page/index.tsx +13 -13
  83. package/src/components/icons/page/page.svg +3 -3
  84. package/src/components/icons/positive/index.tsx +13 -13
  85. package/src/components/icons/positive/positive.svg +3 -3
  86. package/src/components/icons/question/index.tsx +13 -13
  87. package/src/components/icons/question/question.svg +3 -3
  88. package/src/components/icons/search/index.tsx +13 -13
  89. package/src/components/icons/search/search.svg +3 -3
  90. package/src/components/icons/services/index.tsx +13 -13
  91. package/src/components/icons/services/services.svg +3 -3
  92. package/src/components/icons/settings/index.tsx +14 -14
  93. package/src/components/icons/settings/settings.svg +6 -6
  94. package/src/components/icons/table/fill/index.tsx +13 -13
  95. package/src/components/icons/table/fill/table-fill.svg +3 -3
  96. package/src/components/icons/table/outline/index.tsx +13 -13
  97. package/src/components/icons/table/outline/table-outline.svg +3 -3
  98. package/src/components/icons/task/index.tsx +10 -10
  99. package/src/components/icons/task/task.svg +11 -11
  100. package/src/components/icons/trash/index.tsx +13 -13
  101. package/src/components/icons/trash/trash.svg +3 -3
  102. package/src/components/icons/vault/index.tsx +14 -14
  103. package/src/components/icons/video/index.tsx +13 -13
  104. package/src/components/icons/video/video.svg +3 -3
  105. package/src/components/icons/warning/index.tsx +13 -13
  106. package/src/components/icons/warning/warning.svg +3 -3
  107. package/src/components/icons/workspace/index.tsx +14 -14
  108. package/src/components/input/Input.stories.tsx +287 -287
  109. package/src/components/input/InputTypes.ts +77 -77
  110. package/src/components/input/StackedCheckbox/StackedCheckbox.tsx +44 -44
  111. package/src/components/input/StackedInput/StackedInput.tsx +60 -60
  112. package/src/components/input/StackedMultiSelect/index.tsx +349 -349
  113. package/src/components/input/StackedPilledInput/index.tsx +386 -386
  114. package/src/components/input/StackedRadio/StackedRadioGroup.tsx +38 -38
  115. package/src/components/input/StackedSelect/index.tsx +232 -232
  116. package/src/components/input/StackedSwitch/index.tsx +33 -33
  117. package/src/components/input/StackedTextarea/StackedTextarea.tsx +55 -55
  118. package/src/components/input/components/dropdown/index.tsx +111 -111
  119. package/src/components/input/components/label/index.tsx +35 -35
  120. package/src/components/input/components/token/Token.stories.tsx +25 -25
  121. package/src/components/input/components/token/index.tsx +45 -45
  122. package/src/components/input/index.tsx +298 -298
  123. package/src/components/layout/BorderedBox/index.tsx +30 -30
  124. package/src/components/layout/Layout.stories.tsx +40 -40
  125. package/src/components/layout/index.tsx +100 -100
  126. package/src/components/link/Link.stories.tsx +23 -23
  127. package/src/components/link/index.tsx +34 -34
  128. package/src/components/loading/LoadingIndicator.stories.tsx +45 -45
  129. package/src/components/loading/index.tsx +45 -45
  130. package/src/components/modal/Modal.stories.tsx +36 -36
  131. package/src/components/modal/components/action/index.tsx +37 -37
  132. package/src/components/modal/index.tsx +41 -41
  133. package/src/components/navigation/NavigationMenu.stories.tsx +85 -85
  134. package/src/components/navigation/components/header/index.tsx +27 -27
  135. package/src/components/navigation/components/items/index.tsx +76 -76
  136. package/src/components/navigation/index.tsx +87 -87
  137. package/src/components/select/index.tsx +140 -140
  138. package/src/components/table/Table.stories.tsx +63 -63
  139. package/src/components/table/TableTypes.ts +15 -15
  140. package/src/components/table/components/loading/index.tsx +45 -45
  141. package/src/components/table/components/text/index.tsx +23 -23
  142. package/src/components/table/empty/index.tsx +47 -47
  143. package/src/components/table/index.tsx +84 -84
  144. package/src/components/table/utils/generateTableColumns.ts +9 -9
  145. package/src/components/tabs/TabsWrapper.stories.tsx +85 -85
  146. package/src/components/tabs/index.tsx +39 -39
  147. package/src/components/text/Text.stories.tsx +59 -59
  148. package/src/components/text/index.tsx +16 -16
  149. package/src/components/toast/Toast.stories.tsx +52 -52
  150. package/src/components/toast/index.tsx +78 -78
  151. package/src/components/toolbar/Toolbar.stories.tsx +59 -59
  152. package/src/components/toolbar/components/actions/add/index.tsx +18 -18
  153. package/src/components/toolbar/components/actions/search/index.tsx +38 -38
  154. package/src/components/toolbar/components/actions/sort/index.tsx +49 -49
  155. package/src/components/toolbar/components/breadcrumbs/index.tsx +63 -63
  156. package/src/components/toolbar/components/breadcrumbs/item/index.tsx +72 -72
  157. package/src/components/toolbar/components/dropdown/index.tsx +107 -107
  158. package/src/components/toolbar/components/navigation/components/button/left/index.tsx +28 -28
  159. package/src/components/toolbar/components/navigation/components/button/left/left-arrow.svg +3 -3
  160. package/src/components/toolbar/components/navigation/components/button/right/index.tsx +27 -27
  161. package/src/components/toolbar/components/navigation/components/button/right/right-arrow.svg +3 -3
  162. package/src/components/toolbar/components/navigation/index.tsx +36 -36
  163. package/src/components/toolbar/index.tsx +55 -55
  164. package/src/hooks/useDeepEffect.tsx +22 -22
  165. package/src/hooks/useDidMountEffect.tsx +13 -13
  166. package/src/hooks/useOnOutsideClick.tsx +31 -31
  167. package/src/hooks/useToast.tsx +16 -16
  168. package/src/index.tsx +78 -78
  169. package/src/theme/components/alert.ts +60 -60
  170. package/src/theme/components/badge.ts +59 -59
  171. package/src/theme/components/button.ts +163 -163
  172. package/src/theme/components/checkbox.ts +28 -28
  173. package/src/theme/components/code.ts +16 -16
  174. package/src/theme/components/form-error.ts +31 -31
  175. package/src/theme/components/form-label.ts +17 -17
  176. package/src/theme/components/form.ts +29 -29
  177. package/src/theme/components/input.ts +65 -65
  178. package/src/theme/components/link.ts +118 -118
  179. package/src/theme/components/modal.ts +45 -45
  180. package/src/theme/components/select.ts +36 -36
  181. package/src/theme/components/switch.ts +89 -89
  182. package/src/theme/components/table.ts +42 -42
  183. package/src/theme/components/tabs.ts +255 -255
  184. package/src/theme/components/text.ts +93 -93
  185. package/src/theme/components/textarea.ts +42 -42
  186. package/src/theme/customXQChakraTheme.ts +54 -54
  187. package/src/theme/foundations/breakpoints.ts +18 -18
  188. package/src/theme/foundations/colors.ts +165 -165
  189. package/src/theme/foundations/shadows.ts +23 -23
  190. package/src/theme/foundations/typography.ts +62 -62
  191. package/src/theme/provider/index.tsx +21 -21
  192. package/src/theme/styles.ts +19 -19
@@ -1,77 +1,77 @@
1
- import { TextareaProps, SelectProps } from '@chakra-ui/react';
2
- import reactSelect from 'react-select';
3
- import { InputProps } from '.';
4
-
5
- export type FieldProps = {
6
- rules?: ValidationProps;
7
- isInvalid?: boolean;
8
- errorText?: string;
9
- };
10
-
11
- export type InputType =
12
- | 'text'
13
- | 'select'
14
- | 'multi-select'
15
- | 'pilled-text'
16
- | 'textarea'
17
- | 'radio'
18
- | 'checkbox'
19
- | 'switch';
20
-
21
- export type FieldOption = {
22
- label: string;
23
- value: string | 'section_header';
24
- sortValue: number;
25
- };
26
-
27
- export type FieldOptions = FieldOption[];
28
-
29
- export interface ValidationProps {
30
- isRequired: boolean;
31
- isInvalid?: boolean;
32
- errorText?: string;
33
- }
34
-
35
- export interface InputFieldProps
36
- extends Omit<
37
- React.DetailedHTMLProps<
38
- React.InputHTMLAttributes<HTMLInputElement>,
39
- HTMLInputElement
40
- >,
41
- 'color' | 'height' | 'width' | 'size' | 'ref'
42
- >,
43
- FieldProps,
44
- Partial<InputProps> {}
45
-
46
- export interface TextareaFieldProps
47
- extends Omit<
48
- React.DetailedHTMLProps<
49
- React.TextareaHTMLAttributes<HTMLTextAreaElement>,
50
- HTMLTextAreaElement
51
- >,
52
- 'color' | 'height' | 'width' | 'size' | 'ref'
53
- >,
54
- FieldProps,
55
- Partial<TextareaProps> {}
56
-
57
- export interface SelectFieldProps
58
- extends Omit<
59
- React.DetailedHTMLProps<
60
- React.SelectHTMLAttributes<HTMLSelectElement>,
61
- HTMLSelectElement
62
- >,
63
- 'color' | 'height' | 'width' | 'size' | 'ref'
64
- >,
65
- FieldProps,
66
- Partial<SelectProps> {}
67
-
68
- export interface ReactSelectFieldProps
69
- extends Omit<
70
- React.DetailedHTMLProps<
71
- React.SelectHTMLAttributes<HTMLSelectElement>,
72
- HTMLSelectElement
73
- >,
74
- 'color' | 'height' | 'width' | 'size' | 'ref'
75
- >,
76
- FieldProps,
77
- Partial<reactSelect> {}
1
+ import { TextareaProps, SelectProps } from '@chakra-ui/react';
2
+ import reactSelect from 'react-select';
3
+ import { InputProps } from '.';
4
+
5
+ export type FieldProps = {
6
+ rules?: ValidationProps;
7
+ isInvalid?: boolean;
8
+ errorText?: string;
9
+ };
10
+
11
+ export type InputType =
12
+ | 'text'
13
+ | 'select'
14
+ | 'multi-select'
15
+ | 'pilled-text'
16
+ | 'textarea'
17
+ | 'radio'
18
+ | 'checkbox'
19
+ | 'switch';
20
+
21
+ export type FieldOption = {
22
+ label: string;
23
+ value: string | 'section_header';
24
+ sortValue: number;
25
+ };
26
+
27
+ export type FieldOptions = FieldOption[];
28
+
29
+ export interface ValidationProps {
30
+ isRequired: boolean;
31
+ isInvalid?: boolean;
32
+ errorText?: string;
33
+ }
34
+
35
+ export interface InputFieldProps
36
+ extends Omit<
37
+ React.DetailedHTMLProps<
38
+ React.InputHTMLAttributes<HTMLInputElement>,
39
+ HTMLInputElement
40
+ >,
41
+ 'color' | 'height' | 'width' | 'size' | 'ref'
42
+ >,
43
+ FieldProps,
44
+ Partial<InputProps> {}
45
+
46
+ export interface TextareaFieldProps
47
+ extends Omit<
48
+ React.DetailedHTMLProps<
49
+ React.TextareaHTMLAttributes<HTMLTextAreaElement>,
50
+ HTMLTextAreaElement
51
+ >,
52
+ 'color' | 'height' | 'width' | 'size' | 'ref'
53
+ >,
54
+ FieldProps,
55
+ Partial<TextareaProps> {}
56
+
57
+ export interface SelectFieldProps
58
+ extends Omit<
59
+ React.DetailedHTMLProps<
60
+ React.SelectHTMLAttributes<HTMLSelectElement>,
61
+ HTMLSelectElement
62
+ >,
63
+ 'color' | 'height' | 'width' | 'size' | 'ref'
64
+ >,
65
+ FieldProps,
66
+ Partial<SelectProps> {}
67
+
68
+ export interface ReactSelectFieldProps
69
+ extends Omit<
70
+ React.DetailedHTMLProps<
71
+ React.SelectHTMLAttributes<HTMLSelectElement>,
72
+ HTMLSelectElement
73
+ >,
74
+ 'color' | 'height' | 'width' | 'size' | 'ref'
75
+ >,
76
+ FieldProps,
77
+ Partial<reactSelect> {}
@@ -1,44 +1,44 @@
1
- import React from 'react';
2
- import { Checkbox, Text } from '@chakra-ui/react';
3
- import { InputFieldProps } from '../InputTypes';
4
-
5
- export interface StackedCheckboxProps extends InputFieldProps {
6
- label: string;
7
- variant: string;
8
- }
9
-
10
- /**
11
- * A functional React component utilized to render the `StackedCheckbox` component.
12
- */
13
- const StackedCheckbox = React.forwardRef<
14
- HTMLInputElement,
15
- StackedCheckboxProps
16
- >(({ value, label, onChange, disabled, variant }, _ref) => {
17
- if (value === null) return null;
18
-
19
- return (
20
- <Checkbox
21
- ref={_ref}
22
- defaultChecked={Boolean(value)}
23
- defaultValue={value}
24
- onChange={e => {
25
- if (onChange) return onChange(e.target.checked as any);
26
- }}
27
- isChecked={Boolean(value)}
28
- disabled={disabled}
29
- variant={variant}
30
- >
31
- {/* solved like this because of bug in chakra
32
- https://github.com/chakra-ui/chakra-ui/issues/7328 */}
33
- <Text
34
- fontSize={variant === 'mobile' ? '17px' : '13px'}
35
- alignSelf="center"
36
- >
37
- {label}
38
- </Text>
39
- {/* {label} */}
40
- </Checkbox>
41
- );
42
- });
43
-
44
- export default StackedCheckbox;
1
+ import React from 'react';
2
+ import { Checkbox, Text } from '@chakra-ui/react';
3
+ import { InputFieldProps } from '../InputTypes';
4
+
5
+ export interface StackedCheckboxProps extends InputFieldProps {
6
+ label: string;
7
+ variant: string;
8
+ }
9
+
10
+ /**
11
+ * A functional React component utilized to render the `StackedCheckbox` component.
12
+ */
13
+ const StackedCheckbox = React.forwardRef<
14
+ HTMLInputElement,
15
+ StackedCheckboxProps
16
+ >(({ value, label, onChange, disabled, variant }, _ref) => {
17
+ if (value === null) return null;
18
+
19
+ return (
20
+ <Checkbox
21
+ ref={_ref}
22
+ defaultChecked={Boolean(value)}
23
+ defaultValue={value}
24
+ onChange={e => {
25
+ if (onChange) return onChange(e.target.checked as any);
26
+ }}
27
+ isChecked={Boolean(value)}
28
+ disabled={disabled}
29
+ variant={variant}
30
+ >
31
+ {/* solved like this because of bug in chakra
32
+ https://github.com/chakra-ui/chakra-ui/issues/7328 */}
33
+ <Text
34
+ fontSize={variant === 'mobile' ? '17px' : '13px'}
35
+ alignSelf="center"
36
+ >
37
+ {label}
38
+ </Text>
39
+ {/* {label} */}
40
+ </Checkbox>
41
+ );
42
+ });
43
+
44
+ export default StackedCheckbox;
@@ -1,60 +1,60 @@
1
- import React from 'react';
2
- import { Input, InputGroup } from '@chakra-ui/react';
3
- import { InputFieldProps } from '../InputTypes';
4
-
5
- export interface StackedInputProps extends InputFieldProps {
6
- isRequired?: boolean;
7
- allowDefault?: boolean;
8
- leftElement?: React.ReactNode;
9
- rightElement?: React.ReactNode;
10
- variant?: string;
11
- label?: string;
12
- }
13
-
14
- /**
15
- * A functional React component utilized to render the `StackedInput` component.
16
- */
17
- const StackedInput = React.forwardRef<HTMLInputElement, StackedInputProps>(
18
- (
19
- {
20
- type = 'text',
21
- isRequired,
22
- rightElement,
23
- leftElement,
24
- defaultValue,
25
- allowDefault,
26
- variant,
27
- label,
28
- ...props
29
- },
30
- _ref
31
- ) => {
32
- const isMobile = variant === 'mobile';
33
- const placeholder = isMobile && label ? label : undefined;
34
- return (
35
- <InputGroup>
36
- {leftElement && leftElement}
37
- {label}
38
- <Input
39
- {...props}
40
- placeholder={placeholder}
41
- type={type}
42
- isRequired={isRequired}
43
- ref={_ref}
44
- defaultValue={defaultValue}
45
- fontSize={isMobile ? '17px' : '13px'}
46
- variant={variant}
47
- onKeyDown={e => {
48
- if (e.key === 'Enter' && !allowDefault) {
49
- e.stopPropagation();
50
- e.preventDefault();
51
- }
52
- }}
53
- />
54
- {rightElement && rightElement}
55
- </InputGroup>
56
- );
57
- }
58
- );
59
-
60
- export default StackedInput;
1
+ import React from 'react';
2
+ import { Input, InputGroup } from '@chakra-ui/react';
3
+ import { InputFieldProps } from '../InputTypes';
4
+
5
+ export interface StackedInputProps extends InputFieldProps {
6
+ isRequired?: boolean;
7
+ allowDefault?: boolean;
8
+ leftElement?: React.ReactNode;
9
+ rightElement?: React.ReactNode;
10
+ variant?: string;
11
+ label?: string;
12
+ }
13
+
14
+ /**
15
+ * A functional React component utilized to render the `StackedInput` component.
16
+ */
17
+ const StackedInput = React.forwardRef<HTMLInputElement, StackedInputProps>(
18
+ (
19
+ {
20
+ type = 'text',
21
+ isRequired,
22
+ rightElement,
23
+ leftElement,
24
+ defaultValue,
25
+ allowDefault,
26
+ variant,
27
+ label,
28
+ ...props
29
+ },
30
+ _ref
31
+ ) => {
32
+ const isMobile = variant === 'mobile';
33
+ const placeholder = isMobile && label ? label : undefined;
34
+ return (
35
+ <InputGroup>
36
+ {leftElement && leftElement}
37
+ {label}
38
+ <Input
39
+ {...props}
40
+ placeholder={placeholder}
41
+ type={type}
42
+ isRequired={isRequired}
43
+ ref={_ref}
44
+ defaultValue={defaultValue}
45
+ fontSize={isMobile ? '17px' : '13px'}
46
+ variant={variant}
47
+ onKeyDown={e => {
48
+ if (e.key === 'Enter' && !allowDefault) {
49
+ e.stopPropagation();
50
+ e.preventDefault();
51
+ }
52
+ }}
53
+ />
54
+ {rightElement && rightElement}
55
+ </InputGroup>
56
+ );
57
+ }
58
+ );
59
+
60
+ export default StackedInput;