@lunit/design-system 1.0.0-a.2 → 1.0.0-a.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 (173) hide show
  1. package/.babelrc.json +16 -0
  2. package/dist/cjs/components/Alert/index.js +1 -1
  3. package/dist/cjs/components/Alert/index.js.map +1 -1
  4. package/dist/cjs/components/Button/index.js +1 -1
  5. package/dist/cjs/components/Button/index.js.map +1 -1
  6. package/dist/cjs/components/Chip/index.js +1 -1
  7. package/dist/cjs/components/Chip/index.js.map +1 -1
  8. package/dist/cjs/components/TextField/index.js +1 -1
  9. package/dist/cjs/components/TextField/index.js.map +1 -1
  10. package/dist/cjs/components/ToggleButton/index.js +1 -1
  11. package/dist/cjs/components/ToggleButton/index.js.map +1 -1
  12. package/dist/cjs/index.js +1 -1
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/components/Alert/Alert.js +20 -4
  15. package/dist/components/Alert/Alert.js.map +1 -1
  16. package/dist/components/Alert/Alert.styled.js +49 -0
  17. package/dist/components/Alert/Alert.styled.js.map +1 -0
  18. package/dist/components/Alert/Alert.types.js +2 -0
  19. package/dist/components/Alert/Alert.types.js.map +1 -0
  20. package/dist/components/Alert/Alert.utils.js +37 -0
  21. package/dist/components/Alert/Alert.utils.js.map +1 -0
  22. package/dist/components/Button/Button.js +1 -1
  23. package/dist/components/Button/Button.js.map +1 -1
  24. package/dist/components/Button/Button.styled.js +31 -21
  25. package/dist/components/Button/Button.styled.js.map +1 -1
  26. package/dist/components/Button/utils/getHoverStyle.js +7 -0
  27. package/dist/components/Button/utils/getHoverStyle.js.map +1 -0
  28. package/dist/components/Chip/Chip.js +1 -1
  29. package/dist/components/Chip/Chip.js.map +1 -1
  30. package/dist/components/Chip/Chip.styled.js +2 -3
  31. package/dist/components/Chip/Chip.styled.js.map +1 -1
  32. package/dist/components/TextField/TextField.js +15 -3
  33. package/dist/components/TextField/TextField.js.map +1 -1
  34. package/dist/components/TextField/TextField.style.js +245 -0
  35. package/dist/components/TextField/TextField.style.js.map +1 -0
  36. package/dist/components/TextField/TextField.types.js +2 -0
  37. package/dist/components/TextField/TextField.types.js.map +1 -0
  38. package/dist/components/TextField/TextFieldIcon.js +7 -0
  39. package/dist/components/TextField/TextFieldIcon.js.map +1 -0
  40. package/dist/components/Toast/Toast.js +26 -0
  41. package/dist/components/Toast/Toast.js.map +1 -0
  42. package/dist/components/Toast/Toast.styled.js +49 -0
  43. package/dist/components/Toast/Toast.styled.js.map +1 -0
  44. package/dist/components/Toast/Toast.types.js +2 -0
  45. package/dist/components/Toast/Toast.types.js.map +1 -0
  46. package/dist/components/Toast/Toast.utils.js +13 -0
  47. package/dist/components/Toast/Toast.utils.js.map +1 -0
  48. package/dist/components/Toast/index.js +2 -0
  49. package/dist/components/Toast/index.js.map +1 -0
  50. package/dist/foundation/colors/base/grey.js +16 -0
  51. package/dist/foundation/colors/base/grey.js.map +1 -1
  52. package/dist/foundation/colors/base/lunitGreen.js +2 -2
  53. package/dist/foundation/colors/base/lunitGreen.js.map +1 -1
  54. package/dist/foundation/colors/base/lunitTeal.js +5 -5
  55. package/dist/foundation/colors/base/lunitTeal.js.map +1 -1
  56. package/dist/foundation/colors/base/red.js +2 -2
  57. package/dist/foundation/colors/index.js +24 -4
  58. package/dist/foundation/colors/index.js.map +1 -1
  59. package/dist/foundation/colors/token/component.js +265 -291
  60. package/dist/foundation/colors/token/component.js.map +1 -1
  61. package/dist/foundation/colors/token/core.js +132 -125
  62. package/dist/foundation/colors/token/core.js.map +1 -1
  63. package/dist/index.js +1 -0
  64. package/dist/index.js.map +1 -1
  65. package/dist/theme.js +5 -0
  66. package/dist/theme.js.map +1 -1
  67. package/dist/types/components/Alert/Alert.d.ts +3 -1
  68. package/dist/types/components/Alert/Alert.styled.d.ts +6 -0
  69. package/dist/types/components/Alert/Alert.types.d.ts +9 -0
  70. package/dist/types/components/Alert/Alert.utils.d.ts +4 -0
  71. package/dist/types/components/Button/Button.d.ts +1 -1
  72. package/dist/types/components/Button/Button.styled.d.ts +26 -2
  73. package/dist/types/components/Button/Button.types.d.ts +4 -4
  74. package/dist/types/components/Button/utils/getHoverStyle.d.ts +6 -0
  75. package/dist/types/components/Checkbox/Checkbox.d.ts +1 -1
  76. package/dist/types/components/Chip/Chip.d.ts +1 -1
  77. package/dist/types/components/Chip/Chip.styled.d.ts +13 -13
  78. package/dist/types/components/Chip/Chip.types.d.ts +1 -1
  79. package/dist/types/components/DataTable/DataTable.d.ts +1 -1
  80. package/dist/types/components/DatePicker/DatePicker.d.ts +1 -1
  81. package/dist/types/components/Dropdown/Dropdown.d.ts +1 -1
  82. package/dist/types/components/FormLabel/FormLabel.d.ts +1 -1
  83. package/dist/types/components/Modal/Modal.d.ts +1 -1
  84. package/dist/types/components/Radio/Radio.d.ts +1 -1
  85. package/dist/types/components/TextField/TextField.d.ts +2 -1
  86. package/dist/types/components/TextField/TextField.style.d.ts +9 -0
  87. package/dist/types/components/TextField/TextField.types.d.ts +29 -0
  88. package/dist/types/components/TextField/TextFieldIcon.d.ts +8 -0
  89. package/dist/types/components/TextField/index.d.ts +1 -0
  90. package/dist/types/components/Toast/Toast.d.ts +4 -0
  91. package/dist/types/components/Toast/Toast.styled.d.ts +1 -0
  92. package/dist/types/components/Toast/Toast.types.d.ts +4 -0
  93. package/dist/types/components/Toast/Toast.utils.d.ts +2 -0
  94. package/dist/types/components/Toast/index.d.ts +1 -0
  95. package/dist/types/components/Toggle/Toggle.d.ts +1 -1
  96. package/dist/types/components/ToggleButton/ToggleButton.d.ts +1 -1
  97. package/dist/types/components/ToggleButton/ToggleButton.styled.d.ts +2 -2
  98. package/dist/types/components/ToggleButton/ToggleButton.types.d.ts +4 -4
  99. package/dist/types/components/ToggleButtonGroup/ToggleButtonGroup.d.ts +1 -1
  100. package/dist/types/components/Tooltip/Tooltip.d.ts +1 -1
  101. package/dist/types/foundation/colors/base/grey.d.ts +16 -0
  102. package/dist/types/foundation/colors/base/lunitGreen.d.ts +2 -2
  103. package/dist/types/foundation/colors/base/lunitTeal.d.ts +2 -2
  104. package/dist/types/foundation/colors/index.d.ts +42 -9
  105. package/dist/types/foundation/colors/types.d.ts +1 -3
  106. package/dist/types/foundation/index.d.ts +37 -5
  107. package/dist/types/index.d.ts +1 -0
  108. package/package.json +21 -16
  109. package/src/components/Alert/Alert.styled.ts +63 -0
  110. package/src/components/Alert/Alert.tsx +47 -5
  111. package/src/components/Alert/Alert.types.ts +10 -0
  112. package/src/components/Alert/Alert.utils.ts +49 -0
  113. package/src/components/Button/Button.styled.ts +33 -21
  114. package/src/components/Button/Button.tsx +1 -5
  115. package/src/components/Button/Button.types.ts +4 -4
  116. package/src/components/Button/utils/getHoverStyle.ts +7 -0
  117. package/src/components/Chip/Chip.styled.ts +6 -4
  118. package/src/components/Chip/Chip.tsx +1 -1
  119. package/src/components/Chip/Chip.types.ts +2 -2
  120. package/src/components/TextField/TextField.style.ts +316 -0
  121. package/src/components/TextField/TextField.tsx +75 -3
  122. package/src/components/TextField/TextField.types.ts +38 -0
  123. package/src/components/TextField/TextFieldIcon.tsx +24 -0
  124. package/src/components/TextField/index.ts +6 -0
  125. package/src/components/Toast/Toast.styled.ts +49 -0
  126. package/src/components/Toast/Toast.tsx +66 -0
  127. package/src/components/Toast/Toast.types.ts +14 -0
  128. package/src/components/Toast/Toast.utils.ts +17 -0
  129. package/src/components/Toast/index.tsx +1 -0
  130. package/src/components/ToggleButton/ToggleButton.types.ts +4 -7
  131. package/src/foundation/colors/base/grey.ts +17 -0
  132. package/src/foundation/colors/base/lunitGreen.ts +2 -2
  133. package/src/foundation/colors/base/lunitTeal.ts +5 -5
  134. package/src/foundation/colors/base/red.ts +2 -2
  135. package/src/foundation/colors/index.ts +29 -8
  136. package/src/foundation/colors/token/component.ts +300 -326
  137. package/src/foundation/colors/token/core.ts +152 -145
  138. package/src/foundation/colors/types.ts +1 -3
  139. package/src/index.ts +1 -0
  140. package/src/stories/components/Alert/Alert.stories.tsx +148 -4
  141. package/src/stories/components/Button/BasicButton.stories.tsx +19 -28
  142. package/src/stories/components/Button/IconButton.stories.tsx +39 -28
  143. package/src/stories/components/Button/Kind.stories.tsx +83 -57
  144. package/src/stories/components/Chip/Chip.stories.tsx +94 -82
  145. package/src/stories/components/DataTable/DataTable.stories.tsx +6 -4
  146. package/src/stories/components/DatePicker/DatePicker.stories.tsx +6 -4
  147. package/src/stories/components/Dropdown/Dropdown.stories.tsx +12 -6
  148. package/src/stories/components/Modal/Modal.stories.tsx +6 -4
  149. package/src/stories/components/SelectControl/Checkbox.stories.tsx +31 -23
  150. package/src/stories/components/SelectControl/RadioGroup.stories.tsx +6 -5
  151. package/src/stories/components/SelectControl/RadioStatus.stories.tsx +6 -4
  152. package/src/stories/components/SelectControl/Toggle.stories.tsx +33 -19
  153. package/src/stories/components/TextField/TextFieldMulti.stories.tsx +137 -0
  154. package/src/stories/components/TextField/TextFieldSingle.stories.tsx +283 -0
  155. package/src/stories/components/TextField/TextFieldSize.stories.tsx +134 -0
  156. package/src/stories/components/Toast/Toast.stories.tsx +152 -0
  157. package/src/stories/components/ToggleButton/Basic.stories.tsx +35 -31
  158. package/src/stories/components/ToggleButton/Group.stories.tsx +21 -21
  159. package/src/stories/components/ToggleButton/ToggleButtonKind.stories.tsx +53 -43
  160. package/src/stories/components/ToggleButton/WithIcon.stories.tsx +35 -36
  161. package/src/stories/components/Tooltip/Tooltip.stories.tsx +6 -4
  162. package/src/stories/foundation/Elevation/Elevation.stories.tsx +10 -6
  163. package/src/stories/foundation/Typography/{Typography.stories.mdx → Typography.mdx} +10 -5
  164. package/src/stories/foundation/Typography/Typography.stories.tsx +46 -36
  165. package/src/stories/foundation/Typography/TypographyExamples.stories.tsx +44 -0
  166. package/src/stories/foundation/colors/Colors.stories.tsx +7 -5
  167. package/src/stories/foundation/colors/Mui.stories.tsx +18 -0
  168. package/src/stories/foundation/colors/Token.inComponent.stories.tsx +2 -2
  169. package/src/stories/foundation/colors/TokenPaletteTable.stories.tsx +28 -0
  170. package/src/stories/foundation/colors/TokenPaletteTable.tsx +127 -0
  171. package/src/theme.ts +5 -0
  172. package/src/stories/components/TextField/TextField.stories.tsx +0 -13
  173. package/src/stories/foundation/colors/Token.stories.tsx +0 -190
@@ -0,0 +1,283 @@
1
+ import React from "react";
2
+ import {
3
+ Box,
4
+ Table,
5
+ TableBody,
6
+ TableCell,
7
+ TableHead,
8
+ TableRow,
9
+ } from "@mui/material";
10
+ import { action } from "@storybook/addon-actions";
11
+ import { Bell } from "@lunit/design-system-icons";
12
+
13
+ import TextField from "@/components/TextField/TextField";
14
+
15
+ import type { StoryFn, Meta } from "@storybook/react";
16
+
17
+ export default {
18
+ title: "Components/TextField",
19
+ component: TextField,
20
+ args: {
21
+ disabled: false,
22
+ size: "small",
23
+ placeholder: "Please typing...",
24
+ helperText: "Helper Text",
25
+ multiline: false,
26
+ },
27
+ argTypes: {
28
+ disabled: {
29
+ control: {
30
+ type: "radio",
31
+ },
32
+ options: [true, false],
33
+ description: "If true, the text field will be disabled.",
34
+ table: {
35
+ defaultValue: { summary: false },
36
+ type: { summary: [true, false] },
37
+ },
38
+ },
39
+ size: {
40
+ control: {
41
+ type: "radio",
42
+ },
43
+ description: "The size of the text field.",
44
+ table: {
45
+ defaultValue: { summary: "small" },
46
+ type: { summary: ["small", "medium", "large"] },
47
+ },
48
+ },
49
+ placeholder: {
50
+ type: "string",
51
+ description: "The placeholder content.",
52
+ table: {
53
+ defaultValue: { summary: "undefined" },
54
+ type: { summary: "string" },
55
+ },
56
+ },
57
+ helperText: {
58
+ type: "string",
59
+ description:
60
+ 'The helper text content, use "error " or "sub text " to display helper text.',
61
+ table: {
62
+ defaultValue: { summary: "undefined" },
63
+ type: { summary: "string" },
64
+ },
65
+ },
66
+ },
67
+ parameters: {
68
+ controls: {
69
+ include: [
70
+ "size",
71
+ "disabled",
72
+ "helperText",
73
+ "placeholder",
74
+ "onLeftIconClick",
75
+ "onRightIconClick",
76
+ ],
77
+ },
78
+ docs: {
79
+ description: {
80
+ component: `It is a text field that allows users to enter and edit text.
81
+ \n It is usually used in forms. It can be used as a single line or multi-line text field.
82
+ \n It can be used with an icon on the left or right side.`,
83
+ },
84
+ },
85
+ },
86
+ decorators: [(Story) => <Box className="base00">{Story()}</Box>],
87
+ } as Meta<typeof TextField>;
88
+
89
+ const SingleTemplate: StoryFn<typeof TextField> = (args) => (
90
+ <Table>
91
+ <TableHead>
92
+ <TableRow>
93
+ <TableCell sx={{ typography: "body2_14_medium", color: "inherit" }}>
94
+ Default
95
+ </TableCell>
96
+ <TableCell sx={{ typography: "body2_14_medium", color: "inherit" }}>
97
+ Error
98
+ </TableCell>
99
+ <TableCell sx={{ typography: "body2_14_medium", color: "inherit" }}>
100
+ Focused
101
+ </TableCell>
102
+ <TableCell sx={{ typography: "body2_14_medium", color: "inherit" }}>
103
+ Disabled
104
+ </TableCell>
105
+ </TableRow>
106
+ </TableHead>
107
+ <TableBody>
108
+ <TableRow>
109
+ <TableCell>
110
+ <TextField {...args} />
111
+ </TableCell>
112
+ <TableCell>
113
+ <TextField {...args} error />
114
+ </TableCell>
115
+ <TableCell>
116
+ <TextField {...args} focused />
117
+ </TableCell>
118
+ <TableCell>
119
+ <TextField {...args} disabled />
120
+ </TableCell>
121
+ </TableRow>
122
+ </TableBody>
123
+ </Table>
124
+ );
125
+
126
+ const SingleWithIconTemplate: StoryFn<typeof TextField> = (args) => (
127
+ <Table>
128
+ <TableHead>
129
+ <TableRow>
130
+ <TableCell></TableCell>
131
+ <TableCell sx={{ typography: "body2_14_medium", color: "inherit" }}>
132
+ Default
133
+ </TableCell>
134
+ <TableCell sx={{ typography: "body2_14_medium", color: "inherit" }}>
135
+ Error
136
+ </TableCell>
137
+ <TableCell sx={{ typography: "body2_14_medium", color: "inherit" }}>
138
+ focused
139
+ </TableCell>
140
+ <TableCell sx={{ typography: "body2_14_medium", color: "inherit" }}>
141
+ Disabled
142
+ </TableCell>
143
+ </TableRow>
144
+ </TableHead>
145
+ <TableBody>
146
+ <TableRow>
147
+ <TableCell sx={{ typography: "body2_14_medium", color: "inherit" }}>
148
+ Left Icon
149
+ </TableCell>
150
+ <TableCell>
151
+ <TextField {...args} leftIcon={<Bell />} />
152
+ </TableCell>
153
+ <TableCell>
154
+ <TextField {...args} error leftIcon={<Bell />} />
155
+ </TableCell>
156
+ <TableCell>
157
+ <TextField {...args} focused leftIcon={<Bell />} />
158
+ </TableCell>
159
+ <TableCell>
160
+ <TextField {...args} disabled leftIcon={<Bell />} />
161
+ </TableCell>
162
+ </TableRow>
163
+ <TableRow>
164
+ <TableCell sx={{ typography: "body2_14_medium", color: "inherit" }}>
165
+ Right Icon
166
+ </TableCell>
167
+ <TableCell>
168
+ <TextField {...args} rightIcon={<Bell />} />
169
+ </TableCell>
170
+ <TableCell>
171
+ <TextField {...args} error rightIcon={<Bell />} />
172
+ </TableCell>
173
+ <TableCell>
174
+ <TextField {...args} focused rightIcon={<Bell />} />
175
+ </TableCell>
176
+ <TableCell>
177
+ <TextField {...args} disabled rightIcon={<Bell />} />
178
+ </TableCell>
179
+ </TableRow>
180
+ <TableRow>
181
+ <TableCell sx={{ typography: "body2_14_medium", color: "inherit" }}>
182
+ Left Right Both Icon
183
+ </TableCell>
184
+ <TableCell>
185
+ <TextField {...args} leftIcon={<Bell />} rightIcon={<Bell />} />
186
+ </TableCell>
187
+ <TableCell>
188
+ <TextField {...args} error leftIcon={<Bell />} rightIcon={<Bell />} />
189
+ </TableCell>
190
+ <TableCell>
191
+ <TextField
192
+ {...args}
193
+ focused
194
+ leftIcon={<Bell />}
195
+ rightIcon={<Bell />}
196
+ />
197
+ </TableCell>
198
+ <TableCell>
199
+ <TextField
200
+ {...args}
201
+ disabled
202
+ leftIcon={<Bell />}
203
+ rightIcon={<Bell />}
204
+ />
205
+ </TableCell>
206
+ </TableRow>
207
+ </TableBody>
208
+ </Table>
209
+ );
210
+
211
+ export const TextFieldWithSingle = {
212
+ render: SingleTemplate,
213
+
214
+ argTypes: {
215
+ onLeftIconClick: {
216
+ control: false,
217
+ options: ["function", undefined],
218
+ mapping: {
219
+ function: action("onLeftIconClick"),
220
+ undefined: undefined,
221
+ },
222
+ description: "The left icon click event call back function.",
223
+ table: {
224
+ defaultValue: { summary: "undefined" },
225
+ type: { summary: "function" },
226
+ },
227
+ },
228
+ onRightIconClick: {
229
+ control: false,
230
+ options: ["function", undefined],
231
+ mapping: {
232
+ function: action("onRightIconClick"),
233
+ undefined: undefined,
234
+ },
235
+ description: "The right icon click event call back function.",
236
+ table: {
237
+ defaultValue: { summary: "undefined" },
238
+ type: { summary: "function" },
239
+ },
240
+ },
241
+ },
242
+
243
+ name: "Single Line",
244
+ };
245
+
246
+ export const TextFieldWithIcon = {
247
+ render: SingleWithIconTemplate,
248
+
249
+ argTypes: {
250
+ onLeftIconClick: {
251
+ control: {
252
+ type: "select",
253
+ },
254
+ options: ["function", undefined],
255
+ mapping: {
256
+ function: action("onLeftIconClick"),
257
+ undefined: undefined,
258
+ },
259
+ description: "The left icon click event call back function.",
260
+ table: {
261
+ defaultValue: { summary: "undefined" },
262
+ type: { summary: "function" },
263
+ },
264
+ },
265
+ onRightIconClick: {
266
+ control: {
267
+ type: "select",
268
+ },
269
+ options: ["function", undefined],
270
+ mapping: {
271
+ function: action("onRightIconClick"),
272
+ undefined: undefined,
273
+ },
274
+ description: "The right icon click event call back function.",
275
+ table: {
276
+ defaultValue: { summary: "undefined" },
277
+ type: { summary: "function" },
278
+ },
279
+ },
280
+ },
281
+
282
+ name: "With Icon(single-line only)",
283
+ };
@@ -0,0 +1,134 @@
1
+ import React from "react";
2
+ import {
3
+ Box,
4
+ Table,
5
+ TableBody,
6
+ TableCell,
7
+ TableHead,
8
+ TableRow,
9
+ } from "@mui/material";
10
+
11
+ import TextField from "@/components/TextField/TextField";
12
+
13
+ import type { StoryFn, Meta } from "@storybook/react";
14
+
15
+ export default {
16
+ title: "Components/TextField",
17
+ component: TextField,
18
+ args: {
19
+ disabled: false,
20
+ size: "small",
21
+ placeholder: "Please typing...",
22
+ helperText: "Helper Text",
23
+ },
24
+ argTypes: {
25
+ disabled: {
26
+ control: {
27
+ type: "radio",
28
+ },
29
+ options: [true, false],
30
+ description: "If true, the text field will be disabled.",
31
+ table: {
32
+ defaultValue: { summary: false },
33
+ type: { summary: [true, false] },
34
+ },
35
+ },
36
+ size: {
37
+ control: false,
38
+ description: "The size of the text field.",
39
+ table: {
40
+ defaultValue: { summary: "small" },
41
+ type: { summary: ["small", "medium", "large"] },
42
+ },
43
+ },
44
+ placeholder: {
45
+ type: "string",
46
+ description: "The placeholder content.",
47
+ table: {
48
+ defaultValue: { summary: "undefined" },
49
+ type: { summary: "string" },
50
+ },
51
+ },
52
+ helperText: {
53
+ type: "string",
54
+ description:
55
+ 'The helper text content, use "error " or "sub text " to display helper text.',
56
+ table: {
57
+ defaultValue: { summary: "undefined" },
58
+ type: { summary: "string" },
59
+ },
60
+ },
61
+ },
62
+ parameters: {
63
+ controls: {
64
+ include: ["size", "disabled", "helperText", "placeholder"],
65
+ },
66
+ docs: {
67
+ description: {
68
+ component: `The size of the text field.
69
+ \n The default value is "small" and can be set to "medium" or "large".`,
70
+ },
71
+ },
72
+ },
73
+ decorators: [(Story) => <Box className="base00">{Story()}</Box>],
74
+ } as Meta<typeof TextField>;
75
+
76
+ const TextFieldSizeTemplate: StoryFn<typeof TextField> = (args) => (
77
+ <Table>
78
+ <TableHead>
79
+ <TableRow>
80
+ <TableCell></TableCell>
81
+ <TableCell sx={{ typography: "body2_14_medium", color: "inherit" }}>
82
+ Small
83
+ </TableCell>
84
+ <TableCell sx={{ typography: "body2_14_medium", color: "inherit" }}>
85
+ Medium
86
+ </TableCell>
87
+ <TableCell sx={{ typography: "body2_14_medium", color: "inherit" }}>
88
+ Large
89
+ </TableCell>
90
+ </TableRow>
91
+ </TableHead>
92
+ <TableBody>
93
+ <TableRow>
94
+ <TableCell
95
+ sx={{ typography: "body2_14_medium", color: "inherit" }}
96
+ width={100}
97
+ >
98
+ Single line
99
+ </TableCell>
100
+ <TableCell>
101
+ <TextField {...args} />
102
+ </TableCell>
103
+ <TableCell>
104
+ <TextField {...args} size="medium" />
105
+ </TableCell>
106
+ <TableCell>
107
+ <TextField {...args} size="large" />
108
+ </TableCell>
109
+ </TableRow>
110
+ <TableRow>
111
+ <TableCell
112
+ sx={{ typography: "body2_14_medium", color: "inherit" }}
113
+ width={50}
114
+ >
115
+ Multi line
116
+ </TableCell>
117
+ <TableCell>
118
+ <TextField {...args} multiline />
119
+ </TableCell>
120
+ <TableCell>
121
+ <TextField {...args} size="medium" multiline />
122
+ </TableCell>
123
+ <TableCell>
124
+ <TextField {...args} size="large" multiline />
125
+ </TableCell>
126
+ </TableRow>
127
+ </TableBody>
128
+ </Table>
129
+ );
130
+
131
+ export const TextFieldSize = {
132
+ render: TextFieldSizeTemplate,
133
+ name: "Size",
134
+ };
@@ -0,0 +1,152 @@
1
+ import React from "react";
2
+ import { StoryFn, Meta } from "@storybook/react";
3
+ import { Box } from "@mui/material";
4
+
5
+ import Toast from "@/components/Toast/Toast";
6
+ import { action } from "@storybook/addon-actions";
7
+ import Button from "@/components/Button";
8
+
9
+ export default {
10
+ title: "Components/Toast",
11
+ component: Toast,
12
+ argTypes: {
13
+ severity: {
14
+ control: "radio",
15
+ options: ["success", "info", "warning", "error", undefined],
16
+ description: `\`success\`, \`info\`, \`warning\`, \`error\`, \`undefined\``,
17
+ },
18
+ action: {
19
+ control: {
20
+ type: "select",
21
+ },
22
+ options: ["Button", undefined],
23
+ mapping: {
24
+ Button: <Button kind="ghost">Button</Button>,
25
+ undefined: undefined,
26
+ },
27
+ default: undefined,
28
+ },
29
+ onClose: {
30
+ control: {
31
+ type: "select",
32
+ },
33
+ defaultValue: "function",
34
+ options: ["function", undefined],
35
+ mapping: {
36
+ function: action("onClose"),
37
+ undefined: undefined,
38
+ },
39
+ },
40
+ },
41
+ parameters: {
42
+ controls: {
43
+ include: ["severity", "action", "onClose"],
44
+ },
45
+ docs: {
46
+ description: {
47
+ component: `Toast provide brief notifications. But have to use with \`Snackbar\` component.`,
48
+ },
49
+ },
50
+ },
51
+ decorators: [
52
+ (Story) => (
53
+ <Box
54
+ className="base10"
55
+ bgcolor={"lunit.grey.00.main"}
56
+ sx={{
57
+ padding: 8,
58
+ }}
59
+ >
60
+ {Story()}
61
+ </Box>
62
+ ),
63
+ ],
64
+ } as Meta<typeof Toast>;
65
+
66
+ const Template: StoryFn<typeof Toast> = (args) => <Toast {...args}>Test</Toast>;
67
+
68
+ const Template2: StoryFn<typeof Toast> = () => (
69
+ <Box sx={{ display: "grid", gap: "40px" }}>
70
+ <Toast
71
+ severity="normal"
72
+ sx={{
73
+ width: "212px",
74
+ "& .Toast-message": {
75
+ width: "180px",
76
+ },
77
+ }}
78
+ >
79
+ Lorem ipsum dol
80
+ </Toast>
81
+
82
+ <Toast
83
+ severity="normal"
84
+ sx={{
85
+ width: "317px",
86
+ "& .Toast-message": {
87
+ width: "165px",
88
+ },
89
+ }}
90
+ onClose={() => {}}
91
+ >
92
+ Lorem ipsum dol
93
+ </Toast>
94
+
95
+ <Toast
96
+ severity="normal"
97
+ onClose={() => {}}
98
+ sx={{
99
+ width: "484px",
100
+ }}
101
+ >
102
+ Lorem ipsum dolor sit amet consectetur. Velit urna donec tortor egestas
103
+ donec laoreet porttitor phasellus imperdiet. Egestas leo pretium tempus
104
+ purus laoreet egestas habitant scelerisque non imperdiet.
105
+ </Toast>
106
+ <Toast
107
+ severity="success"
108
+ sx={{
109
+ width: "464px",
110
+ }}
111
+ >
112
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Augue lorem in
113
+ dictum vitae ut massa.
114
+ </Toast>
115
+
116
+ <Toast
117
+ severity="info"
118
+ action={
119
+ <Button size="medium" kind="outlined" sx={{ width: "64px" }}>
120
+ Button
121
+ </Button>
122
+ }
123
+ sx={{
124
+ width: "548px",
125
+ }}
126
+ >
127
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Augue lorem in
128
+ dictum vitae ut massa.
129
+ </Toast>
130
+ <Toast
131
+ severity="error"
132
+ action={
133
+ <Button size="medium" kind="ghost" color="error" sx={{ width: "64px" }}>
134
+ Button
135
+ </Button>
136
+ }
137
+ onClose={() => {}}
138
+ sx={{
139
+ width: "584px",
140
+ }}
141
+ >
142
+ Lorem ipsum dolor sit amet consectetur. Velit urna donec tortor.
143
+ </Toast>
144
+ </Box>
145
+ );
146
+
147
+ export const ToastBase = {
148
+ render: Template,
149
+ };
150
+ export const ToastVariant = {
151
+ render: Template2,
152
+ };