react-miui 0.27.2 → 0.27.4

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 (167) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/components/form/Checkbox.d.ts +1 -0
  3. package/dist/components/form/Checkbox.d.ts.map +1 -1
  4. package/dist/components/form/Checkbox.js +2 -2
  5. package/dist/components/form/Checkbox.js.map +1 -1
  6. package/dist/components/form/Checkbox.stories.d.ts.map +1 -1
  7. package/dist/components/form/Checkbox.stories.js +5 -0
  8. package/dist/components/form/Checkbox.stories.js.map +1 -1
  9. package/dist/components/form/Checkbox.styled.d.ts.map +1 -1
  10. package/dist/components/form/Checkbox.styled.js +7 -1
  11. package/dist/components/form/Checkbox.styled.js.map +1 -1
  12. package/dist/components/form/Select.stories.d.ts.map +1 -1
  13. package/dist/components/form/Select.stories.js +4 -0
  14. package/dist/components/form/Select.stories.js.map +1 -1
  15. package/dist/components/form/Select.styled.d.ts +3 -1
  16. package/dist/components/form/Select.styled.d.ts.map +1 -1
  17. package/dist/components/form/Select.styled.js +8 -1
  18. package/dist/components/form/Select.styled.js.map +1 -1
  19. package/dist/components/form/input/Input.css.d.ts +16 -1
  20. package/dist/components/form/input/Input.css.d.ts.map +1 -1
  21. package/dist/components/form/input/Input.css.js +14 -2
  22. package/dist/components/form/input/Input.css.js.map +1 -1
  23. package/dist/components/form/input/Input.d.ts +1 -0
  24. package/dist/components/form/input/Input.d.ts.map +1 -1
  25. package/dist/components/form/input/Input.js +2 -2
  26. package/dist/components/form/input/Input.js.map +1 -1
  27. package/dist/components/form/input/Input.stories.d.ts.map +1 -1
  28. package/dist/components/form/input/Input.stories.js +5 -6
  29. package/dist/components/form/input/Input.stories.js.map +1 -1
  30. package/dist/components/form/input/Input.styled.d.ts +1 -0
  31. package/dist/components/form/input/Input.styled.d.ts.map +1 -1
  32. package/dist/components/form/textarea/TextArea.d.ts +1 -0
  33. package/dist/components/form/textarea/TextArea.d.ts.map +1 -1
  34. package/dist/components/form/textarea/TextArea.js.map +1 -1
  35. package/dist/components/form/textarea/TextArea.stories.d.ts.map +1 -1
  36. package/dist/components/form/textarea/TextArea.stories.js +8 -1
  37. package/dist/components/form/textarea/TextArea.stories.js.map +1 -1
  38. package/dist/components/form/textarea/TextArea.styled.d.ts +1 -0
  39. package/dist/components/form/textarea/TextArea.styled.d.ts.map +1 -1
  40. package/dist/components/form/textarea/TextArea.styled.js.map +1 -1
  41. package/docs/assets/search.js +1 -1
  42. package/docs/classes/Drawer.html +14 -14
  43. package/docs/classes/Pop.html +14 -14
  44. package/docs/classes/ToasterProvider.html +10 -10
  45. package/docs/enums/ICON.html +14 -14
  46. package/docs/functions/Action.html +4 -4
  47. package/docs/functions/Button.html +4 -4
  48. package/docs/functions/Card.html +4 -4
  49. package/docs/functions/Checkbox.html +4 -4
  50. package/docs/functions/Choice.html +5 -5
  51. package/docs/functions/CoveringLoader.html +4 -4
  52. package/docs/functions/DirectionPad.html +4 -4
  53. package/docs/functions/EqualActions.html +4 -4
  54. package/docs/functions/FullLoader.html +4 -4
  55. package/docs/functions/HandleEsc.html +4 -4
  56. package/docs/functions/Header.html +4 -4
  57. package/docs/functions/HeaderIconAction.html +4 -4
  58. package/docs/functions/Icon-1.html +4 -4
  59. package/docs/functions/If.html +4 -4
  60. package/docs/functions/Input.html +5 -5
  61. package/docs/functions/KeyValue.html +4 -4
  62. package/docs/functions/Label.html +4 -4
  63. package/docs/functions/Line.html +4 -4
  64. package/docs/functions/List-1.html +4 -4
  65. package/docs/functions/Loader.html +4 -4
  66. package/docs/functions/Loading.html +4 -4
  67. package/docs/functions/Message.html +4 -4
  68. package/docs/functions/Modal-1.html +4 -4
  69. package/docs/functions/ModalButtons.html +4 -4
  70. package/docs/functions/PopLoader.html +4 -4
  71. package/docs/functions/PopOption.html +4 -4
  72. package/docs/functions/Progress.html +4 -4
  73. package/docs/functions/SearchContainer.html +4 -4
  74. package/docs/functions/Section.html +4 -4
  75. package/docs/functions/Select.html +10 -10
  76. package/docs/functions/Selector.html +5 -5
  77. package/docs/functions/Spacer.html +4 -4
  78. package/docs/functions/Stats.html +4 -4
  79. package/docs/functions/StickyHeader.html +4 -4
  80. package/docs/functions/Table.html +4 -4
  81. package/docs/functions/TextArea.html +4 -4
  82. package/docs/functions/Toggle.html +4 -4
  83. package/docs/functions/ToolButton.html +4 -4
  84. package/docs/functions/borderPxToRem.html +5 -5
  85. package/docs/functions/createTheme.html +4 -4
  86. package/docs/functions/css.html +4 -4
  87. package/docs/functions/dimensionsPxToRem.html +5 -5
  88. package/docs/functions/fontPxToRem.html +5 -5
  89. package/docs/functions/getCssText.html +4 -4
  90. package/docs/functions/globalCss.html +4 -4
  91. package/docs/functions/keyframes.html +4 -4
  92. package/docs/functions/pxToRem.html +5 -5
  93. package/docs/functions/styled.html +4 -4
  94. package/docs/functions/useToaster.html +5 -5
  95. package/docs/index.html +4 -4
  96. package/docs/interfaces/ActionProps.html +14 -14
  97. package/docs/interfaces/ChoiceProps.html +11 -11
  98. package/docs/interfaces/IconProps.html +7 -7
  99. package/docs/interfaces/InputCustomProps.html +17 -10
  100. package/docs/interfaces/StickyHeaderProps.html +9 -9
  101. package/docs/modules/List.html +7 -7
  102. package/docs/modules/Modal.html +6 -6
  103. package/docs/modules.html +4 -4
  104. package/docs/pages/tutorials/Test.html +4 -4
  105. package/docs/types/InputProps.html +5 -5
  106. package/docs/types/OverwriteProps.html +5 -5
  107. package/docs/types/ThemeCSS.html +5 -5
  108. package/docs/variables/BackgroundClassName.html +5 -5
  109. package/docs/variables/List.Header.html +5 -5
  110. package/docs/variables/List.Item.html +5 -5
  111. package/docs/variables/Modal.RemovePadding.html +5 -5
  112. package/docs/variables/ValueClassName.html +5 -5
  113. package/docs/variables/config.html +5 -5
  114. package/docs/variables/cssReset.html +5 -5
  115. package/docs/variables/miuiScrollbars.html +5 -5
  116. package/docs/variables/theme.html +5 -5
  117. package/esm/components/form/Checkbox.d.ts +1 -0
  118. package/esm/components/form/Checkbox.d.ts.map +1 -1
  119. package/esm/components/form/Checkbox.js +2 -2
  120. package/esm/components/form/Checkbox.js.map +1 -1
  121. package/esm/components/form/Checkbox.stories.d.ts.map +1 -1
  122. package/esm/components/form/Checkbox.stories.js +5 -0
  123. package/esm/components/form/Checkbox.stories.js.map +1 -1
  124. package/esm/components/form/Checkbox.styled.d.ts.map +1 -1
  125. package/esm/components/form/Checkbox.styled.js +7 -1
  126. package/esm/components/form/Checkbox.styled.js.map +1 -1
  127. package/esm/components/form/Select.stories.d.ts.map +1 -1
  128. package/esm/components/form/Select.stories.js +4 -0
  129. package/esm/components/form/Select.stories.js.map +1 -1
  130. package/esm/components/form/Select.styled.d.ts +3 -1
  131. package/esm/components/form/Select.styled.d.ts.map +1 -1
  132. package/esm/components/form/Select.styled.js +8 -1
  133. package/esm/components/form/Select.styled.js.map +1 -1
  134. package/esm/components/form/input/Input.css.d.ts +16 -1
  135. package/esm/components/form/input/Input.css.d.ts.map +1 -1
  136. package/esm/components/form/input/Input.css.js +12 -2
  137. package/esm/components/form/input/Input.css.js.map +1 -1
  138. package/esm/components/form/input/Input.d.ts +1 -0
  139. package/esm/components/form/input/Input.d.ts.map +1 -1
  140. package/esm/components/form/input/Input.js +2 -2
  141. package/esm/components/form/input/Input.js.map +1 -1
  142. package/esm/components/form/input/Input.stories.d.ts.map +1 -1
  143. package/esm/components/form/input/Input.stories.js +5 -6
  144. package/esm/components/form/input/Input.stories.js.map +1 -1
  145. package/esm/components/form/input/Input.styled.d.ts +1 -0
  146. package/esm/components/form/input/Input.styled.d.ts.map +1 -1
  147. package/esm/components/form/textarea/TextArea.d.ts +1 -0
  148. package/esm/components/form/textarea/TextArea.d.ts.map +1 -1
  149. package/esm/components/form/textarea/TextArea.js.map +1 -1
  150. package/esm/components/form/textarea/TextArea.stories.d.ts.map +1 -1
  151. package/esm/components/form/textarea/TextArea.stories.js +8 -1
  152. package/esm/components/form/textarea/TextArea.stories.js.map +1 -1
  153. package/esm/components/form/textarea/TextArea.styled.d.ts +1 -0
  154. package/esm/components/form/textarea/TextArea.styled.d.ts.map +1 -1
  155. package/esm/components/form/textarea/TextArea.styled.js.map +1 -1
  156. package/package.json +1 -1
  157. package/src/components/form/Checkbox.stories.tsx +5 -0
  158. package/src/components/form/Checkbox.styled.ts +8 -1
  159. package/src/components/form/Checkbox.tsx +3 -1
  160. package/src/components/form/Select.stories.tsx +4 -0
  161. package/src/components/form/Select.styled.ts +11 -1
  162. package/src/components/form/input/Input.css.ts +15 -1
  163. package/src/components/form/input/Input.stories.tsx +5 -6
  164. package/src/components/form/input/Input.tsx +3 -1
  165. package/src/components/form/textarea/TextArea.stories.tsx +8 -1
  166. package/src/components/form/textarea/TextArea.styled.ts +0 -1
  167. package/src/components/form/textarea/TextArea.tsx +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"TextArea.stories.js","sourceRoot":"","sources":["../../../../src/components/form/textarea/TextArea.stories.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,IAAI,GAAS;IACf,KAAK,EAAE,0BAA0B;IACjC,SAAS,EAAE,QAAQ;IACnB,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,CAAC;AAIF,MAAM,OAAO,GAAU;IACnB,IAAI,EAAE,EAAE;CACX,CAAC;AAEF,OAAO,EACH,OAAO,GACV,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"TextArea.stories.js","sourceRoot":"","sources":["../../../../src/components/form/textarea/TextArea.stories.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,IAAI,GAAS;IACf,KAAK,EAAE,0BAA0B;IACjC,SAAS,EAAE,QAAQ;IACnB,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE;QACN,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QAC1B,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QAC7B,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;KAChC;CACJ,CAAC;AAIF,MAAM,OAAO,GAAU;IACnB,IAAI,EAAE;QACF,WAAW,EAAE,qBAAqB;KACrC;CACJ,CAAC;AAEF,OAAO,EACH,OAAO,GACV,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -2,6 +2,7 @@ declare const StyledTextArea: import("@stitches/react/types/styled-component").S
2
2
  disabled?: boolean | "true";
3
3
  readOnly?: boolean | "true";
4
4
  focused?: boolean | "true";
5
+ error?: boolean | "true";
5
6
  }, {}, import("@stitches/react/types/css-util").CSS<{}, {
6
7
  colors: {
7
8
  background: string;
@@ -1 +1 @@
1
- {"version":3,"file":"TextArea.styled.d.ts","sourceRoot":"","sources":["../../../../src/components/form/textarea/TextArea.styled.ts"],"names":[],"mappings":"AAKA,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAUlB,CAAC;AAEH,OAAO,EACH,cAAc,GACjB,CAAC"}
1
+ {"version":3,"file":"TextArea.styled.d.ts","sourceRoot":"","sources":["../../../../src/components/form/textarea/TextArea.styled.ts"],"names":[],"mappings":"AAKA,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GASlB,CAAC;AAEH,OAAO,EACH,cAAc,GACjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"TextArea.styled.js","sourceRoot":"","sources":["../../../../src/components/form/textarea/TextArea.styled.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,EAAE;IACtC,GAAG,cAAc;IACjB,GAAG,KAAK;IACR,GAAG,OAAO;IAEV,OAAO,EAAE,SAAS,iBAAiB,CAAC,EAAE,CAAC,EAAE;IACzC,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,UAAU;IAClB,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC;CAEpC,CAAC,CAAC;AAEH,OAAO,EACH,cAAc,GACjB,CAAC"}
1
+ {"version":3,"file":"TextArea.styled.js","sourceRoot":"","sources":["../../../../src/components/form/textarea/TextArea.styled.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,EAAE;IACtC,GAAG,cAAc;IACjB,GAAG,KAAK;IACR,GAAG,OAAO;IAEV,OAAO,EAAE,SAAS,iBAAiB,CAAC,EAAE,CAAC,EAAE;IACzC,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,UAAU;IAClB,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC;CACpC,CAAC,CAAC;AAEH,OAAO,EACH,cAAc,GACjB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-miui",
3
- "version": "0.27.2",
3
+ "version": "0.27.4",
4
4
  "author": "Jacek Nowacki",
5
5
  "license": "MIT",
6
6
  "scripts": {
@@ -39,6 +39,11 @@ const meta: Meta = {
39
39
  type: "boolean",
40
40
  },
41
41
  },
42
+ error: {
43
+ control: {
44
+ type: "boolean",
45
+ },
46
+ },
42
47
  onChange: {
43
48
  action: "onChange",
44
49
  },
@@ -45,11 +45,18 @@ const CheckmarkWrapper = styled("div", {
45
45
  },
46
46
  },
47
47
 
48
- ":readonly + &": {
48
+ "[readonly] + &": {
49
49
  [`+ ${TextLabel.toString()}`]: {
50
50
  color: "$inputDisabledText",
51
51
  },
52
52
  },
53
+
54
+ "[data-error=true] + &": {
55
+ borderColor: "$pinky2",
56
+ [`+ ${TextLabel.toString()}`]: {
57
+ color: "$red1",
58
+ },
59
+ },
53
60
  });
54
61
 
55
62
  const LabelWrapper = styled("label", {
@@ -15,6 +15,7 @@ interface Props extends Partial<Pick<WrapperProps, "css" | "className">>, Omit<I
15
15
  */
16
16
  color?: string;
17
17
  children: React.ReactNode;
18
+ error?: boolean;
18
19
  }
19
20
 
20
21
  /**
@@ -22,7 +23,7 @@ interface Props extends Partial<Pick<WrapperProps, "css" | "className">>, Omit<I
22
23
  */
23
24
  const Checkbox: React.FC<Props> = ({
24
25
  // eslint-disable-next-line @typescript-eslint/no-shadow
25
- color, name, onChange, children, css, className, ...inputProps
26
+ color, error, name, onChange, children, css, className, ...inputProps
26
27
  }) => {
27
28
  const style: ThemeCSS = {};
28
29
  color && (style["--color"] = color);
@@ -47,6 +48,7 @@ const Checkbox: React.FC<Props> = ({
47
48
  type={"checkbox"}
48
49
  name={name}
49
50
  onChange={handleChange}
51
+ data-error={error}
50
52
  {...inputProps}
51
53
  />
52
54
  <CheckmarkWrapper css={style}><Checkmark /></CheckmarkWrapper>
@@ -8,6 +8,10 @@ const meta: Meta = {
8
8
  title: "Components/Form/Select",
9
9
  component: Select,
10
10
  tags: ["autodocs", "form"],
11
+ argTypes: {
12
+ error: { type: "boolean" },
13
+ disabled: { type: "boolean" },
14
+ },
11
15
  };
12
16
 
13
17
  type Story = StoryObj<typeof Select>;
@@ -1,5 +1,7 @@
1
1
  import { borderPxToRem, dimensionsPxToRem, pxToRem, styled } from "../../theme";
2
2
 
3
+ import { errorCSS, focusCSS } from "./input/Input.css";
4
+
3
5
  const Select = styled("select", {
4
6
  "boxSizing": "border-box",
5
7
  "height": dimensionsPxToRem(103),
@@ -14,10 +16,18 @@ const Select = styled("select", {
14
16
  "border": `${borderPxToRem(1)} solid $border`,
15
17
  "appearance": "auto",
16
18
 
17
- "&:disabled": {
19
+ "&:where(:disabled)": {
18
20
  background: "$inputDisabledBg",
19
21
  color: "$inputDisabledText",
20
22
  },
23
+
24
+ "&:focus": focusCSS,
25
+
26
+ "variants": {
27
+ error: {
28
+ true: errorCSS,
29
+ },
30
+ },
21
31
  });
22
32
 
23
33
  export {
@@ -24,6 +24,15 @@ const input = {
24
24
  };
25
25
  // satisfies ThemeCSS; @TODO restore
26
26
 
27
+ const focusCSS = {
28
+ borderColor: "$focusColor",
29
+ };
30
+
31
+ const errorCSS = {
32
+ borderColor: "$pinky2",
33
+ color: "$red1",
34
+ };
35
+
27
36
  const wrapper = {
28
37
  background: "white",
29
38
  display: "inline-flex",
@@ -46,8 +55,11 @@ const wrapper = {
46
55
  },
47
56
  },
48
57
  focused: {
58
+ true: focusCSS,
59
+ },
60
+ error: {
49
61
  true: {
50
- borderColor: "$focusColor",
62
+ "&": errorCSS,
51
63
  },
52
64
  },
53
65
  },
@@ -57,4 +69,6 @@ const wrapper = {
57
69
  export {
58
70
  input,
59
71
  wrapper,
72
+ focusCSS,
73
+ errorCSS,
60
74
  };
@@ -12,12 +12,11 @@ const meta: Meta<typeof Input> = {
12
12
  component: Input,
13
13
  tags: ["autodocs", "form"],
14
14
  argTypes: {
15
- prefix: {
16
- type: "string",
17
- },
18
- suffix: {
19
- type: "string",
20
- },
15
+ error: { type: "boolean" },
16
+ disabled: { type: "boolean" },
17
+ readOnly: { type: "boolean" },
18
+ prefix: { type: "string" },
19
+ suffix: { type: "string" },
21
20
  },
22
21
  };
23
22
 
@@ -12,6 +12,7 @@ interface CustomProps<T extends string> {
12
12
  children?: never;
13
13
  prefix?: React.ReactNode;
14
14
  suffix?: React.ReactNode;
15
+ error?: boolean;
15
16
  suggestions?: Value<T>[];
16
17
  onSuggestionMatch?: (value: Exclude<Value<T>, ObjectValue>, __chromiumPickedFromList: boolean) => void;
17
18
  }
@@ -68,7 +69,7 @@ const Input = <T extends string>({ // eslint-disable-line max-lines-per-function
68
69
  }
69
70
  info.picked = false;
70
71
  onChange?.(e);
71
- }, [suggestions]);
72
+ }, [suggestions, onChange]);
72
73
 
73
74
  const prefixElem = prefix ? <StyledPrefix>{prefix}</StyledPrefix> : null;
74
75
  const suffixElem = suffix ? <StyledSuffix>{suffix}</StyledSuffix> : null;
@@ -84,6 +85,7 @@ const Input = <T extends string>({ // eslint-disable-line max-lines-per-function
84
85
  focused={Boolean(focused)}
85
86
  disabled={Boolean(props.disabled)}
86
87
  readOnly={Boolean(props.readOnly)}
88
+ error={Boolean(props.error)}
87
89
  >
88
90
  {prefixElem}
89
91
  <StyledInput
@@ -6,12 +6,19 @@ const meta: Meta = {
6
6
  title: "Components/Form/TextArea",
7
7
  component: TextArea,
8
8
  tags: ["autodocs", "form"],
9
+ argTypes: {
10
+ error: { type: "boolean" },
11
+ disabled: { type: "boolean" },
12
+ readOnly: { type: "boolean" },
13
+ },
9
14
  };
10
15
 
11
16
  type Story = StoryObj<typeof TextArea>;
12
17
 
13
18
  const Primary: Story = {
14
- args: {},
19
+ args: {
20
+ placeholder: "Type something here",
21
+ },
15
22
  };
16
23
 
17
24
  export {
@@ -12,7 +12,6 @@ const StyledTextArea = styled("textarea", {
12
12
  height: "unset",
13
13
  resize: "vertical",
14
14
  minHeight: dimensionsPxToRem(103),
15
-
16
15
  });
17
16
 
18
17
  export {
@@ -4,6 +4,7 @@ import { StyledTextArea } from "./TextArea.styled";
4
4
 
5
5
  interface Props {
6
6
  children?: never;
7
+ error?: boolean;
7
8
  }
8
9
 
9
10
  const TextArea: React.FC<React.TextareaHTMLAttributes<HTMLTextAreaElement> & Props> = ({