@xqmsg/ui-core 0.23.1-rc.0 → 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 (200) 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/components/input/StackedInput/StackedInput.d.ts +1 -0
  6. package/dist/components/input/StackedPilledInput/index.d.ts +1 -0
  7. package/dist/components/input/StackedTextarea/StackedTextarea.d.ts +1 -0
  8. package/dist/theme/components/button.d.ts +0 -3
  9. package/dist/theme/components/checkbox.d.ts +5 -4
  10. package/dist/theme/components/input.d.ts +12 -1
  11. package/dist/theme/components/select.d.ts +12 -1
  12. package/dist/theme/components/textarea.d.ts +15 -3
  13. package/dist/ui-core.cjs.development.js +85 -78
  14. package/dist/ui-core.cjs.development.js.map +1 -1
  15. package/dist/ui-core.cjs.production.min.js +1 -1
  16. package/dist/ui-core.cjs.production.min.js.map +1 -1
  17. package/dist/ui-core.esm.js +85 -78
  18. package/dist/ui-core.esm.js.map +1 -1
  19. package/package.json +118 -118
  20. package/src/components/banner/Banner.stories.tsx +100 -100
  21. package/src/components/banner/index.tsx +73 -73
  22. package/src/components/breadcrumbs/Breadcrumbs.stories.tsx +66 -66
  23. package/src/components/breadcrumbs/components/icon/index.tsx +38 -38
  24. package/src/components/breadcrumbs/components/label/index.tsx +20 -20
  25. package/src/components/breadcrumbs/index.tsx +48 -48
  26. package/src/components/button/Button.stories.tsx +140 -140
  27. package/src/components/button/google/GoogleButton.stories.tsx +23 -23
  28. package/src/components/button/google/index.tsx +29 -29
  29. package/src/components/button/index.tsx +51 -51
  30. package/src/components/button/microsoft/MicrosoftButton.stories.tsx +25 -25
  31. package/src/components/button/microsoft/index.tsx +29 -29
  32. package/src/components/button/spinner/SpinnerButton.stories.tsx +60 -60
  33. package/src/components/button/spinner/index.tsx +36 -36
  34. package/src/components/card/Card.stories.tsx +56 -56
  35. package/src/components/card/index.tsx +78 -78
  36. package/src/components/form/Form.stories.tsx +62 -62
  37. package/src/components/form/FormTypes.ts +20 -20
  38. package/src/components/form/hooks/useFormHandler.tsx +74 -74
  39. package/src/components/form/index.tsx +25 -25
  40. package/src/components/form/section/FormSection.stories.tsx +109 -109
  41. package/src/components/form/section/index.tsx +87 -87
  42. package/src/components/form/utils/formErrors.ts +34 -34
  43. package/src/components/icons/checkmark/checkmark.svg +3 -3
  44. package/src/components/icons/checkmark/index.tsx +13 -13
  45. package/src/components/icons/chevron/down/chevron-down.svg +3 -3
  46. package/src/components/icons/chevron/down/index.tsx +14 -14
  47. package/src/components/icons/chevron/right/chevron-right.svg +3 -3
  48. package/src/components/icons/chevron/right/index.tsx +13 -13
  49. package/src/components/icons/clock/clock.svg +3 -3
  50. package/src/components/icons/clock/index.tsx +13 -13
  51. package/src/components/icons/close/close.svg +3 -3
  52. package/src/components/icons/close/index.tsx +21 -21
  53. package/src/components/icons/dropdown/dropdown.svg +3 -3
  54. package/src/components/icons/dropdown/index.tsx +16 -16
  55. package/src/components/icons/error/error.svg +3 -3
  56. package/src/components/icons/error/index.tsx +13 -13
  57. package/src/components/icons/file/fill/file-fill.svg +4 -4
  58. package/src/components/icons/file/fill/index.tsx +13 -13
  59. package/src/components/icons/file/outline/file-outline.svg +3 -3
  60. package/src/components/icons/file/outline/index.tsx +13 -13
  61. package/src/components/icons/folder/add/fill/folder-add-fill.svg +3 -3
  62. package/src/components/icons/folder/add/fill/index.tsx +13 -13
  63. package/src/components/icons/folder/add/outline/folder-add-outline.svg +3 -3
  64. package/src/components/icons/folder/add/outline/index.tsx +15 -15
  65. package/src/components/icons/folder/fill/folder-fill-gradient.svg +33 -33
  66. package/src/components/icons/folder/fill/folder-fill.svg +4 -4
  67. package/src/components/icons/folder/fill/index.tsx +21 -21
  68. package/src/components/icons/folder/outline/folder-outline.svg +3 -3
  69. package/src/components/icons/folder/outline/index.tsx +13 -13
  70. package/src/components/icons/gear/GearIcon.tsx +36 -36
  71. package/src/components/icons/google/drive/index.tsx +13 -13
  72. package/src/components/icons/google/google.svg +13 -13
  73. package/src/components/icons/google/index.tsx +13 -13
  74. package/src/components/icons/group/group.svg +3 -3
  75. package/src/components/icons/group/index.tsx +13 -13
  76. package/src/components/icons/home/home.svg +3 -3
  77. package/src/components/icons/home/index.tsx +13 -13
  78. package/src/components/icons/image/image.svg +3 -3
  79. package/src/components/icons/image/index.tsx +13 -13
  80. package/src/components/icons/index.tsx +101 -101
  81. package/src/components/icons/link/index.tsx +13 -13
  82. package/src/components/icons/link/link.svg +4 -4
  83. package/src/components/icons/menu/index.tsx +13 -13
  84. package/src/components/icons/menu/menu.svg +3 -3
  85. package/src/components/icons/microsoft/index.tsx +13 -13
  86. package/src/components/icons/microsoft/microsoft.svg +9 -9
  87. package/src/components/icons/microsoft/onedrive/index.tsx +16 -16
  88. package/src/components/icons/neutral/index.tsx +14 -14
  89. package/src/components/icons/neutral/neutral.svg +3 -3
  90. package/src/components/icons/page/index.tsx +13 -13
  91. package/src/components/icons/page/page.svg +3 -3
  92. package/src/components/icons/positive/index.tsx +13 -13
  93. package/src/components/icons/positive/positive.svg +3 -3
  94. package/src/components/icons/question/index.tsx +13 -13
  95. package/src/components/icons/question/question.svg +3 -3
  96. package/src/components/icons/search/index.tsx +13 -13
  97. package/src/components/icons/search/search.svg +3 -3
  98. package/src/components/icons/services/index.tsx +13 -13
  99. package/src/components/icons/services/services.svg +3 -3
  100. package/src/components/icons/settings/index.tsx +14 -14
  101. package/src/components/icons/settings/settings.svg +6 -6
  102. package/src/components/icons/table/fill/index.tsx +13 -13
  103. package/src/components/icons/table/fill/table-fill.svg +3 -3
  104. package/src/components/icons/table/outline/index.tsx +13 -13
  105. package/src/components/icons/table/outline/table-outline.svg +3 -3
  106. package/src/components/icons/task/index.tsx +10 -10
  107. package/src/components/icons/task/task.svg +11 -11
  108. package/src/components/icons/trash/index.tsx +13 -13
  109. package/src/components/icons/trash/trash.svg +3 -3
  110. package/src/components/icons/vault/index.tsx +14 -14
  111. package/src/components/icons/video/index.tsx +13 -13
  112. package/src/components/icons/video/video.svg +3 -3
  113. package/src/components/icons/warning/index.tsx +13 -13
  114. package/src/components/icons/warning/warning.svg +3 -3
  115. package/src/components/icons/workspace/index.tsx +14 -14
  116. package/src/components/input/Input.stories.tsx +287 -286
  117. package/src/components/input/InputTypes.ts +77 -77
  118. package/src/components/input/StackedCheckbox/StackedCheckbox.tsx +44 -44
  119. package/src/components/input/StackedInput/StackedInput.tsx +60 -55
  120. package/src/components/input/StackedMultiSelect/index.tsx +349 -349
  121. package/src/components/input/StackedPilledInput/index.tsx +386 -362
  122. package/src/components/input/StackedRadio/StackedRadioGroup.tsx +38 -38
  123. package/src/components/input/StackedSelect/index.tsx +232 -232
  124. package/src/components/input/StackedSwitch/index.tsx +33 -33
  125. package/src/components/input/StackedTextarea/StackedTextarea.tsx +55 -53
  126. package/src/components/input/components/dropdown/index.tsx +111 -111
  127. package/src/components/input/components/label/index.tsx +35 -35
  128. package/src/components/input/components/token/Token.stories.tsx +25 -25
  129. package/src/components/input/components/token/index.tsx +45 -45
  130. package/src/components/input/index.tsx +298 -295
  131. package/src/components/layout/BorderedBox/index.tsx +30 -30
  132. package/src/components/layout/Layout.stories.tsx +40 -40
  133. package/src/components/layout/index.tsx +100 -100
  134. package/src/components/link/Link.stories.tsx +23 -23
  135. package/src/components/link/index.tsx +34 -34
  136. package/src/components/loading/LoadingIndicator.stories.tsx +45 -45
  137. package/src/components/loading/index.tsx +45 -45
  138. package/src/components/modal/Modal.stories.tsx +36 -36
  139. package/src/components/modal/components/action/index.tsx +37 -37
  140. package/src/components/modal/index.tsx +41 -41
  141. package/src/components/navigation/NavigationMenu.stories.tsx +85 -85
  142. package/src/components/navigation/components/header/index.tsx +27 -27
  143. package/src/components/navigation/components/items/index.tsx +76 -76
  144. package/src/components/navigation/index.tsx +87 -87
  145. package/src/components/select/index.tsx +140 -184
  146. package/src/components/table/Table.stories.tsx +63 -63
  147. package/src/components/table/TableTypes.ts +15 -15
  148. package/src/components/table/components/loading/index.tsx +45 -45
  149. package/src/components/table/components/text/index.tsx +23 -23
  150. package/src/components/table/empty/index.tsx +47 -47
  151. package/src/components/table/index.tsx +84 -84
  152. package/src/components/table/utils/generateTableColumns.ts +9 -9
  153. package/src/components/tabs/TabsWrapper.stories.tsx +85 -85
  154. package/src/components/tabs/index.tsx +39 -39
  155. package/src/components/text/Text.stories.tsx +59 -59
  156. package/src/components/text/index.tsx +16 -16
  157. package/src/components/toast/Toast.stories.tsx +52 -52
  158. package/src/components/toast/index.tsx +78 -78
  159. package/src/components/toolbar/Toolbar.stories.tsx +59 -59
  160. package/src/components/toolbar/components/actions/add/index.tsx +18 -18
  161. package/src/components/toolbar/components/actions/search/index.tsx +38 -38
  162. package/src/components/toolbar/components/actions/sort/index.tsx +49 -49
  163. package/src/components/toolbar/components/breadcrumbs/index.tsx +63 -63
  164. package/src/components/toolbar/components/breadcrumbs/item/index.tsx +72 -72
  165. package/src/components/toolbar/components/dropdown/index.tsx +107 -107
  166. package/src/components/toolbar/components/navigation/components/button/left/index.tsx +28 -28
  167. package/src/components/toolbar/components/navigation/components/button/left/left-arrow.svg +3 -3
  168. package/src/components/toolbar/components/navigation/components/button/right/index.tsx +27 -27
  169. package/src/components/toolbar/components/navigation/components/button/right/right-arrow.svg +3 -3
  170. package/src/components/toolbar/components/navigation/index.tsx +36 -36
  171. package/src/components/toolbar/index.tsx +55 -55
  172. package/src/hooks/useDeepEffect.tsx +22 -22
  173. package/src/hooks/useDidMountEffect.tsx +13 -13
  174. package/src/hooks/useOnOutsideClick.tsx +31 -31
  175. package/src/hooks/useToast.tsx +16 -16
  176. package/src/index.tsx +78 -78
  177. package/src/theme/components/alert.ts +60 -60
  178. package/src/theme/components/badge.ts +59 -59
  179. package/src/theme/components/button.ts +163 -163
  180. package/src/theme/components/checkbox.ts +28 -25
  181. package/src/theme/components/code.ts +16 -16
  182. package/src/theme/components/form-error.ts +31 -31
  183. package/src/theme/components/form-label.ts +17 -17
  184. package/src/theme/components/form.ts +29 -29
  185. package/src/theme/components/input.ts +65 -57
  186. package/src/theme/components/link.ts +118 -118
  187. package/src/theme/components/modal.ts +45 -45
  188. package/src/theme/components/select.ts +36 -36
  189. package/src/theme/components/switch.ts +89 -89
  190. package/src/theme/components/table.ts +42 -42
  191. package/src/theme/components/tabs.ts +255 -255
  192. package/src/theme/components/text.ts +93 -93
  193. package/src/theme/components/textarea.ts +42 -41
  194. package/src/theme/customXQChakraTheme.ts +54 -54
  195. package/src/theme/foundations/breakpoints.ts +18 -18
  196. package/src/theme/foundations/colors.ts +165 -165
  197. package/src/theme/foundations/shadows.ts +23 -23
  198. package/src/theme/foundations/typography.ts +62 -62
  199. package/src/theme/provider/index.tsx +21 -21
  200. 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,55 +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
- }
12
-
13
- /**
14
- * A functional React component utilized to render the `StackedInput` component.
15
- */
16
- const StackedInput = React.forwardRef<HTMLInputElement, StackedInputProps>(
17
- (
18
- {
19
- type = 'text',
20
- isRequired,
21
- rightElement,
22
- leftElement,
23
- defaultValue,
24
- allowDefault,
25
- variant,
26
- ...props
27
- },
28
- _ref
29
- ) => {
30
- return (
31
- <InputGroup>
32
- {leftElement && leftElement}
33
- {variant}
34
- <Input
35
- type={type}
36
- isRequired={isRequired}
37
- {...props}
38
- ref={_ref}
39
- defaultValue={defaultValue}
40
- fontSize={variant === 'mobile' ? '17px' : '13px'}
41
- variant={variant}
42
- onKeyDown={e => {
43
- if (e.key === 'Enter' && !allowDefault) {
44
- e.stopPropagation();
45
- e.preventDefault();
46
- }
47
- }}
48
- />
49
- {rightElement && rightElement}
50
- </InputGroup>
51
- );
52
- }
53
- );
54
-
55
- 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;