@lunit/design-system 2.2.0 → 2.2.3

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 (351) hide show
  1. package/.babelrc.json +1 -1
  2. package/README.md +22 -21
  3. package/dist/cjs/components/Alert/index.js +1 -1
  4. package/dist/cjs/components/Alert/index.js.map +1 -1
  5. package/dist/cjs/components/Button/index.js +1 -1
  6. package/dist/cjs/components/Button/index.js.map +1 -1
  7. package/dist/cjs/components/Checkbox/index.js +1 -1
  8. package/dist/cjs/components/Checkbox/index.js.map +1 -1
  9. package/dist/cjs/components/Chip/index.js +1 -1
  10. package/dist/cjs/components/Chip/index.js.map +1 -1
  11. package/dist/cjs/components/DataTable/index.js.map +1 -1
  12. package/dist/cjs/components/DatePicker/index.js.map +1 -1
  13. package/dist/cjs/components/Dialog/index.js +1 -1
  14. package/dist/cjs/components/Dialog/index.js.map +1 -1
  15. package/dist/cjs/components/Dropdown/index.js +1 -1
  16. package/dist/cjs/components/Dropdown/index.js.map +1 -1
  17. package/dist/cjs/components/FormLabel/index.js.map +1 -1
  18. package/dist/cjs/components/Radio/index.js +1 -1
  19. package/dist/cjs/components/Radio/index.js.map +1 -1
  20. package/dist/cjs/components/RadioGroup/index.js.map +1 -1
  21. package/dist/cjs/components/TextField/index.js +1 -1
  22. package/dist/cjs/components/TextField/index.js.map +1 -1
  23. package/dist/cjs/components/Toggle/index.js +1 -1
  24. package/dist/cjs/components/Toggle/index.js.map +1 -1
  25. package/dist/cjs/components/ToggleButton/index.js +1 -1
  26. package/dist/cjs/components/ToggleButton/index.js.map +1 -1
  27. package/dist/cjs/components/Tooltip/index.js.map +1 -1
  28. package/dist/cjs/components/Typography/index.js.map +1 -1
  29. package/dist/cjs/index.js +1 -1
  30. package/dist/cjs/index.js.map +1 -1
  31. package/dist/components/Alert/Alert.js +8 -8
  32. package/dist/components/Alert/Alert.js.map +1 -1
  33. package/dist/components/Alert/Alert.styled.js +26 -26
  34. package/dist/components/Alert/Alert.styled.js.map +1 -1
  35. package/dist/components/Alert/Alert.utils.js +9 -9
  36. package/dist/components/Alert/Alert.utils.js.map +1 -1
  37. package/dist/components/Alert/index.js +1 -1
  38. package/dist/components/Button/Button.js +23 -17
  39. package/dist/components/Button/Button.js.map +1 -1
  40. package/dist/components/Button/Button.styled.js +88 -88
  41. package/dist/components/Button/Button.styled.js.map +1 -1
  42. package/dist/components/Button/index.js +1 -1
  43. package/dist/components/Button/utils/getButtonPaddingBySizeAndKind.js +9 -9
  44. package/dist/components/Button/utils/getButtonPaddingBySizeAndKind.js.map +1 -1
  45. package/dist/components/Button/utils/getHoverStyle.js +1 -1
  46. package/dist/components/Button/utils/getHoverStyle.js.map +1 -1
  47. package/dist/components/Button/utils/getIconButtonPaddingBySizeAndKind.js +6 -12
  48. package/dist/components/Button/utils/getIconButtonPaddingBySizeAndKind.js.map +1 -1
  49. package/dist/components/Checkbox/Checkbox.js +9 -9
  50. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  51. package/dist/components/Checkbox/index.js +1 -1
  52. package/dist/components/Chip/Chip.js +29 -26
  53. package/dist/components/Chip/Chip.js.map +1 -1
  54. package/dist/components/Chip/Chip.styled.js +52 -52
  55. package/dist/components/Chip/Chip.styled.js.map +1 -1
  56. package/dist/components/Chip/consts.js +5 -5
  57. package/dist/components/Chip/index.js +1 -1
  58. package/dist/components/DataTable/DataTable.js +1 -1
  59. package/dist/components/DataTable/index.js +1 -1
  60. package/dist/components/DatePicker/DatePicker.js +1 -1
  61. package/dist/components/DatePicker/index.js +1 -1
  62. package/dist/components/Dialog/Dialog.js +18 -18
  63. package/dist/components/Dialog/Dialog.js.map +1 -1
  64. package/dist/components/Dialog/Dialog.styled.js +90 -90
  65. package/dist/components/Dialog/Dialog.styled.js.map +1 -1
  66. package/dist/components/Dialog/components/DialogAction.js +6 -6
  67. package/dist/components/Dialog/index.js +1 -1
  68. package/dist/components/Dropdown/Dropdown.js +23 -21
  69. package/dist/components/Dropdown/Dropdown.js.map +1 -1
  70. package/dist/components/Dropdown/Dropdown.styled.js +85 -86
  71. package/dist/components/Dropdown/Dropdown.styled.js.map +1 -1
  72. package/dist/components/Dropdown/DropdownItem.js +14 -14
  73. package/dist/components/Dropdown/DropdownItem.js.map +1 -1
  74. package/dist/components/Dropdown/index.js +2 -2
  75. package/dist/components/Dropdown/index.js.map +1 -1
  76. package/dist/components/FormLabel/FormLabel.js +1 -1
  77. package/dist/components/FormLabel/FormLabel.styled.js +2 -2
  78. package/dist/components/FormLabel/FormLabel.styled.js.map +1 -1
  79. package/dist/components/FormLabel/index.js +1 -1
  80. package/dist/components/Radio/Radio.js +8 -8
  81. package/dist/components/Radio/Radio.js.map +1 -1
  82. package/dist/components/Radio/index.js +1 -1
  83. package/dist/components/RadioGroup/index.js +1 -1
  84. package/dist/components/TextField/TextField.js +8 -8
  85. package/dist/components/TextField/TextField.js.map +1 -1
  86. package/dist/components/TextField/TextField.style.js +112 -112
  87. package/dist/components/TextField/TextField.style.js.map +1 -1
  88. package/dist/components/TextField/TextFieldIcon.js +2 -2
  89. package/dist/components/TextField/TextFieldIcon.js.map +1 -1
  90. package/dist/components/TextField/index.js +1 -1
  91. package/dist/components/Toast/Toast.js +13 -13
  92. package/dist/components/Toast/Toast.js.map +1 -1
  93. package/dist/components/Toast/Toast.styled.js +26 -26
  94. package/dist/components/Toast/Toast.utils.js +3 -3
  95. package/dist/components/Toast/Toast.utils.js.map +1 -1
  96. package/dist/components/Toast/index.js +1 -1
  97. package/dist/components/Toggle/Toggle.js +3 -4
  98. package/dist/components/Toggle/Toggle.js.map +1 -1
  99. package/dist/components/Toggle/Toggle.styled.js +30 -30
  100. package/dist/components/Toggle/Toggle.styled.js.map +1 -1
  101. package/dist/components/Toggle/index.js +1 -1
  102. package/dist/components/ToggleButton/ToggleButton.js +6 -6
  103. package/dist/components/ToggleButton/ToggleButton.js.map +1 -1
  104. package/dist/components/ToggleButton/ToggleButton.styled.js +20 -20
  105. package/dist/components/ToggleButton/ToggleButton.styled.js.map +1 -1
  106. package/dist/components/ToggleButton/index.js +1 -1
  107. package/dist/components/ToggleButtonGroup/ToggleButtonGroup.js +2 -2
  108. package/dist/components/ToggleButtonGroup/ToggleButtonGroup.js.map +1 -1
  109. package/dist/components/ToggleButtonGroup/index.js +1 -1
  110. package/dist/components/Tooltip/Tooltip.js +1 -1
  111. package/dist/components/Tooltip/index.js +1 -1
  112. package/dist/components/Typography/Typography.js +1 -1
  113. package/dist/components/Typography/Typography.js.map +1 -1
  114. package/dist/components/Typography/index.js +1 -1
  115. package/dist/foundation/Elevation/index.js +27 -27
  116. package/dist/foundation/Elevation/utils.js +1 -1
  117. package/dist/foundation/Elevation/utils.js.map +1 -1
  118. package/dist/foundation/Typography/index.js +35 -35
  119. package/dist/foundation/Typography/index.js.map +1 -1
  120. package/dist/foundation/Typography/tokens.js +136 -136
  121. package/dist/foundation/Typography/tokens.js.map +1 -1
  122. package/dist/foundation/colors/base/blue.js +12 -12
  123. package/dist/foundation/colors/base/green.js +12 -12
  124. package/dist/foundation/colors/base/grey.js +28 -28
  125. package/dist/foundation/colors/base/index.js +11 -11
  126. package/dist/foundation/colors/base/lunitGreen.js +11 -11
  127. package/dist/foundation/colors/base/lunitTeal.js +12 -12
  128. package/dist/foundation/colors/base/magenta.js +12 -12
  129. package/dist/foundation/colors/base/opacity.js +4 -4
  130. package/dist/foundation/colors/base/orange.js +12 -12
  131. package/dist/foundation/colors/base/purple.js +12 -12
  132. package/dist/foundation/colors/base/red.js +12 -12
  133. package/dist/foundation/colors/base/yellow.js +12 -12
  134. package/dist/foundation/colors/index.js +119 -121
  135. package/dist/foundation/colors/index.js.map +1 -1
  136. package/dist/foundation/colors/token/component.js +184 -212
  137. package/dist/foundation/colors/token/component.js.map +1 -1
  138. package/dist/foundation/colors/token/core.js +112 -133
  139. package/dist/foundation/colors/token/core.js.map +1 -1
  140. package/dist/foundation/colors/token/index.js +2 -2
  141. package/dist/foundation/index.js +5 -5
  142. package/dist/index.js +20 -20
  143. package/dist/theme.js +6 -6
  144. package/dist/types/components/Alert/Alert.d.ts +2 -2
  145. package/dist/types/components/Alert/Alert.styled.d.ts +1 -2
  146. package/dist/types/components/Alert/Alert.types.d.ts +2 -2
  147. package/dist/types/components/Alert/Alert.utils.d.ts +1 -1
  148. package/dist/types/components/Alert/index.d.ts +1 -1
  149. package/dist/types/components/Button/Button.d.ts +1 -1
  150. package/dist/types/components/Button/Button.styled.d.ts +226 -227
  151. package/dist/types/components/Button/Button.types.d.ts +16 -16
  152. package/dist/types/components/Button/index.d.ts +1 -1
  153. package/dist/types/components/Button/utils/getButtonPaddingBySizeAndKind.d.ts +4 -4
  154. package/dist/types/components/Button/utils/getHoverStyle.d.ts +2 -1
  155. package/dist/types/components/Button/utils/getIconButtonPaddingBySizeAndKind.d.ts +4 -4
  156. package/dist/types/components/Checkbox/Checkbox.d.ts +1 -1
  157. package/dist/types/components/Checkbox/index.d.ts +1 -1
  158. package/dist/types/components/Chip/Chip.d.ts +1 -1
  159. package/dist/types/components/Chip/Chip.styled.d.ts +6 -7
  160. package/dist/types/components/Chip/Chip.types.d.ts +15 -14
  161. package/dist/types/components/Chip/index.d.ts +1 -1
  162. package/dist/types/components/DataTable/index.d.ts +1 -1
  163. package/dist/types/components/DatePicker/index.d.ts +1 -1
  164. package/dist/types/components/Dialog/Dialog.d.ts +11 -11
  165. package/dist/types/components/Dialog/Dialog.styled.d.ts +3 -4
  166. package/dist/types/components/Dialog/components/DialogAction.d.ts +2 -2
  167. package/dist/types/components/Dialog/index.d.ts +2 -2
  168. package/dist/types/components/Dropdown/Dropdown.d.ts +2 -2
  169. package/dist/types/components/Dropdown/Dropdown.styled.d.ts +3 -4
  170. package/dist/types/components/Dropdown/Dropdown.types.d.ts +5 -5
  171. package/dist/types/components/Dropdown/DropdownItem.d.ts +3 -3
  172. package/dist/types/components/Dropdown/index.d.ts +3 -3
  173. package/dist/types/components/FormLabel/FormLabel.d.ts +1 -1
  174. package/dist/types/components/FormLabel/index.d.ts +1 -1
  175. package/dist/types/components/Radio/Radio.d.ts +1 -1
  176. package/dist/types/components/Radio/index.d.ts +1 -1
  177. package/dist/types/components/RadioGroup/index.d.ts +1 -1
  178. package/dist/types/components/TextField/TextField.d.ts +2 -2
  179. package/dist/types/components/TextField/TextField.style.d.ts +3 -4
  180. package/dist/types/components/TextField/TextField.types.d.ts +6 -6
  181. package/dist/types/components/TextField/TextFieldIcon.d.ts +2 -2
  182. package/dist/types/components/TextField/index.d.ts +2 -2
  183. package/dist/types/components/Toast/Toast.d.ts +2 -2
  184. package/dist/types/components/Toast/Toast.types.d.ts +3 -3
  185. package/dist/types/components/Toast/Toast.utils.d.ts +1 -1
  186. package/dist/types/components/Toast/index.d.ts +2 -2
  187. package/dist/types/components/Toggle/Toggle.d.ts +1 -1
  188. package/dist/types/components/Toggle/Toggle.styled.d.ts +2 -2
  189. package/dist/types/components/Toggle/Toggle.types.d.ts +3 -3
  190. package/dist/types/components/Toggle/index.d.ts +1 -1
  191. package/dist/types/components/ToggleButton/ToggleButton.d.ts +1 -1
  192. package/dist/types/components/ToggleButton/ToggleButton.styled.d.ts +2 -3
  193. package/dist/types/components/ToggleButton/ToggleButton.types.d.ts +10 -10
  194. package/dist/types/components/ToggleButton/index.d.ts +1 -1
  195. package/dist/types/components/ToggleButtonGroup/ToggleButtonGroup.d.ts +1 -1
  196. package/dist/types/components/ToggleButtonGroup/index.d.ts +1 -1
  197. package/dist/types/components/Tooltip/index.d.ts +1 -1
  198. package/dist/types/components/Typography/Typography.d.ts +6 -6
  199. package/dist/types/components/Typography/index.d.ts +1 -1
  200. package/dist/types/components/index.d.ts +2 -2
  201. package/dist/types/foundation/Elevation/index.d.ts +22 -22
  202. package/dist/types/foundation/Typography/index.d.ts +78 -78
  203. package/dist/types/foundation/Typography/tokens.d.ts +69 -69
  204. package/dist/types/foundation/colors/base/index.d.ts +11 -11
  205. package/dist/types/foundation/colors/index.d.ts +13 -20
  206. package/dist/types/foundation/colors/token/component.d.ts +1 -1
  207. package/dist/types/foundation/colors/token/core.d.ts +1 -1
  208. package/dist/types/foundation/colors/token/index.d.ts +2 -2
  209. package/dist/types/foundation/colors/types.d.ts +0 -7
  210. package/dist/types/foundation/index.d.ts +4 -11
  211. package/dist/types/foundation/spacing.d.ts +1 -1
  212. package/dist/types/index.d.ts +20 -20
  213. package/dist/types/theme.d.ts +1 -1
  214. package/package.json +9 -11
  215. package/src/components/Alert/Alert.styled.ts +39 -49
  216. package/src/components/Alert/Alert.tsx +10 -16
  217. package/src/components/Alert/Alert.types.ts +2 -2
  218. package/src/components/Alert/Alert.utils.ts +13 -22
  219. package/src/components/Alert/index.ts +1 -1
  220. package/src/components/Button/Button.styled.ts +98 -101
  221. package/src/components/Button/Button.tsx +71 -69
  222. package/src/components/Button/Button.types.ts +19 -21
  223. package/src/components/Button/index.ts +1 -1
  224. package/src/components/Button/utils/getButtonPaddingBySizeAndKind.ts +13 -13
  225. package/src/components/Button/utils/getHoverStyle.ts +4 -2
  226. package/src/components/Button/utils/getIconButtonPaddingBySizeAndKind.ts +10 -19
  227. package/src/components/Checkbox/Checkbox.tsx +13 -25
  228. package/src/components/Checkbox/index.ts +1 -1
  229. package/src/components/Chip/Chip.styled.ts +69 -72
  230. package/src/components/Chip/Chip.tsx +33 -55
  231. package/src/components/Chip/Chip.types.ts +17 -25
  232. package/src/components/Chip/consts.ts +5 -5
  233. package/src/components/Chip/index.ts +1 -1
  234. package/src/components/DataTable/DataTable.tsx +2 -2
  235. package/src/components/DataTable/index.ts +1 -1
  236. package/src/components/DatePicker/DatePicker.tsx +2 -2
  237. package/src/components/DatePicker/index.ts +1 -1
  238. package/src/components/Dialog/Dialog.styled.ts +112 -114
  239. package/src/components/Dialog/Dialog.tsx +41 -46
  240. package/src/components/Dialog/components/DialogAction.tsx +8 -8
  241. package/src/components/Dialog/index.ts +3 -3
  242. package/src/components/Dropdown/Dropdown.styled.tsx +88 -89
  243. package/src/components/Dropdown/Dropdown.tsx +29 -30
  244. package/src/components/Dropdown/Dropdown.types.ts +5 -6
  245. package/src/components/Dropdown/DropdownItem.tsx +18 -29
  246. package/src/components/Dropdown/index.ts +3 -7
  247. package/src/components/FormLabel/FormLabel.styled.ts +3 -3
  248. package/src/components/FormLabel/FormLabel.tsx +3 -3
  249. package/src/components/FormLabel/index.ts +1 -1
  250. package/src/components/Radio/Radio.tsx +12 -29
  251. package/src/components/Radio/index.ts +1 -1
  252. package/src/components/RadioGroup/index.ts +1 -1
  253. package/src/components/TextField/TextField.style.ts +123 -132
  254. package/src/components/TextField/TextField.tsx +50 -62
  255. package/src/components/TextField/TextField.types.ts +6 -9
  256. package/src/components/TextField/TextFieldIcon.tsx +4 -7
  257. package/src/components/TextField/index.ts +2 -2
  258. package/src/components/Toast/Toast.styled.ts +26 -26
  259. package/src/components/Toast/Toast.tsx +14 -28
  260. package/src/components/Toast/Toast.types.ts +3 -8
  261. package/src/components/Toast/Toast.utils.ts +5 -8
  262. package/src/components/Toast/index.tsx +2 -2
  263. package/src/components/Toggle/Toggle.styled.ts +31 -32
  264. package/src/components/Toggle/Toggle.tsx +5 -11
  265. package/src/components/Toggle/Toggle.types.ts +3 -3
  266. package/src/components/Toggle/index.ts +1 -1
  267. package/src/components/ToggleButton/ToggleButton.styled.ts +47 -49
  268. package/src/components/ToggleButton/ToggleButton.tsx +91 -97
  269. package/src/components/ToggleButton/ToggleButton.types.ts +10 -10
  270. package/src/components/ToggleButton/index.ts +1 -1
  271. package/src/components/ToggleButtonGroup/ToggleButtonGroup.tsx +3 -8
  272. package/src/components/ToggleButtonGroup/index.tsx +1 -1
  273. package/src/components/Tooltip/Tooltip.tsx +2 -2
  274. package/src/components/Tooltip/index.ts +1 -1
  275. package/src/components/Typography/Typography.tsx +7 -10
  276. package/src/components/Typography/index.ts +1 -1
  277. package/src/components/index.ts +2 -2
  278. package/src/foundation/Elevation/index.ts +27 -27
  279. package/src/foundation/Elevation/utils.ts +14 -8
  280. package/src/foundation/Typography/index.ts +58 -57
  281. package/src/foundation/Typography/tokens.ts +138 -138
  282. package/src/foundation/colors/base/blue.ts +12 -12
  283. package/src/foundation/colors/base/green.ts +12 -12
  284. package/src/foundation/colors/base/grey.ts +28 -28
  285. package/src/foundation/colors/base/index.ts +11 -11
  286. package/src/foundation/colors/base/lunitGreen.ts +11 -11
  287. package/src/foundation/colors/base/lunitTeal.ts +12 -12
  288. package/src/foundation/colors/base/magenta.ts +12 -12
  289. package/src/foundation/colors/base/opacity.ts +4 -4
  290. package/src/foundation/colors/base/orange.ts +12 -12
  291. package/src/foundation/colors/base/purple.ts +12 -12
  292. package/src/foundation/colors/base/red.ts +12 -12
  293. package/src/foundation/colors/base/yellow.ts +12 -12
  294. package/src/foundation/colors/index.ts +119 -120
  295. package/src/foundation/colors/token/component.ts +185 -213
  296. package/src/foundation/colors/token/core.ts +113 -134
  297. package/src/foundation/colors/token/index.ts +2 -2
  298. package/src/foundation/colors/types.ts +0 -7
  299. package/src/foundation/index.ts +8 -8
  300. package/src/foundation/spacing.ts +1 -1
  301. package/src/index.ts +20 -20
  302. package/src/stories/GettingStarted.mdx +6 -6
  303. package/src/stories/components/Alert/Alert.stories.tsx +38 -45
  304. package/src/stories/components/Button/BasicButton.stories.tsx +68 -59
  305. package/src/stories/components/Button/ButtonDocs.mdx +17 -41
  306. package/src/stories/components/Button/Color.stories.tsx +28 -51
  307. package/src/stories/components/Button/IconButton.stories.tsx +40 -47
  308. package/src/stories/components/Button/Kind.stories.tsx +100 -213
  309. package/src/stories/components/CheckBox/BasicCheckbox.stories.tsx +52 -71
  310. package/src/stories/components/CheckBox/CheckboxDocs.mdx +6 -6
  311. package/src/stories/components/Chip/Chip.stories.tsx +75 -75
  312. package/src/stories/components/Chip/ChipDocs.mdx +12 -13
  313. package/src/stories/components/DataTable/DataTable.stories.tsx +4 -4
  314. package/src/stories/components/DatePicker/DatePicker.stories.tsx +4 -4
  315. package/src/stories/components/Dialog/Dialog.stories.tsx +103 -135
  316. package/src/stories/components/Dialog/DialogDocs.mdx +7 -13
  317. package/src/stories/components/Dropdown/Dropdown.stories.tsx +96 -82
  318. package/src/stories/components/Dropdown/DropdownDocs.mdx +275 -0
  319. package/src/stories/components/Dropdown/DropdownExamples.stories.tsx +40 -47
  320. package/src/stories/components/Dropdown/DropdownItem.stories.tsx +113 -98
  321. package/src/stories/components/SelectControl/RadioGroup.stories.tsx +17 -30
  322. package/src/stories/components/SelectControl/RadioStatus.stories.tsx +16 -23
  323. package/src/stories/components/SelectControl/Toggle.stories.tsx +33 -78
  324. package/src/stories/components/TextField/BasicTextField.stories.tsx +44 -53
  325. package/src/stories/components/TextField/TextFieldDocs.mdx +8 -12
  326. package/src/stories/components/TextField/TextFieldMulti.stories.tsx +39 -55
  327. package/src/stories/components/TextField/TextFieldSingle.stories.tsx +74 -118
  328. package/src/stories/components/TextField/TextFieldSize.stories.tsx +35 -55
  329. package/src/stories/components/Toast/Toast.stories.tsx +35 -50
  330. package/src/stories/components/ToggleButton/Basic.stories.tsx +115 -152
  331. package/src/stories/components/ToggleButton/ToggleButtonDocs.mdx +10 -14
  332. package/src/stories/components/ToggleButton/ToggleButtonKind.stories.tsx +141 -200
  333. package/src/stories/components/ToggleButton/WithIcon.stories.tsx +87 -107
  334. package/src/stories/components/Tooltip/Tooltip.stories.tsx +4 -4
  335. package/src/stories/foundation/Elevation/Elevation.stories.tsx +48 -54
  336. package/src/stories/foundation/Elevation/styled.ts +3 -3
  337. package/src/stories/foundation/Typography/Typography.mdx +9 -13
  338. package/src/stories/foundation/Typography/Typography.stories.tsx +25 -41
  339. package/src/stories/foundation/Typography/TypographyGroup.tsx +14 -25
  340. package/src/stories/foundation/Typography/const.ts +13 -19
  341. package/src/stories/foundation/colors/ColorSystem.tsx +42 -40
  342. package/src/stories/foundation/colors/Colors.stories.tsx +40 -41
  343. package/src/stories/foundation/colors/Docs.mdx +73 -77
  344. package/src/stories/foundation/colors/Mui.stories.tsx +6 -8
  345. package/src/stories/foundation/colors/Token.inComponent.stories.tsx +81 -71
  346. package/src/stories/foundation/colors/TokenPaletteTable.stories.tsx +7 -7
  347. package/src/stories/foundation/colors/TokenPaletteTable.tsx +23 -49
  348. package/src/stories/foundation/colors/styled.ts +26 -26
  349. package/src/theme.ts +6 -6
  350. package/src/types.d.ts +1 -1
  351. package/tsconfig.build.json +1 -5
@@ -1,125 +1,124 @@
1
- import { styled } from "@mui/material/styles";
2
- import Box from "@mui/material/Box";
3
- import Select from "@mui/material/Select";
4
- import MenuItem from "@mui/material/MenuItem";
1
+ import { styled } from '@mui/material/styles';
2
+ import Select from '@mui/material/Select';
3
+ import MenuItem from '@mui/material/MenuItem';
5
4
 
6
- import { DropdownProps } from "./Dropdown.types";
7
- type StyledDropdownProps = Omit<DropdownProps, "size"> & {
8
- selectSize: "small" | "medium" | "large";
5
+ import { DropdownProps } from './Dropdown.types';
6
+ type StyledDropdownProps = Omit<DropdownProps, 'size'> & {
7
+ selectSize: 'small' | 'medium' | 'large';
9
8
  };
10
9
 
11
10
  const valuesBySize = {
12
11
  small: {
13
- height: "28px",
14
- padding: "4px 12px",
15
- iconTop: "4px",
16
- iconRight: "12px",
12
+ height: '28px',
13
+ padding: '4px 12px',
14
+ iconTop: '4px',
15
+ iconRight: '12px',
17
16
  },
18
17
  medium: {
19
- height: "36px",
20
- padding: "8px 16px",
21
- iconTop: "8px",
22
- iconRight: "16px",
18
+ height: '36px',
19
+ padding: '8px 16px',
20
+ iconTop: '8px',
21
+ iconRight: '16px',
23
22
  },
24
23
  large: {
25
- height: "44px",
26
- padding: "10px 16px",
27
- iconTop: "12px", // large 의 text line height 가 medium, small 보다 4px 크기 때문에 그의 반절인 2px + padding 값 10px => 12px
28
- iconRight: "16px",
24
+ height: '44px',
25
+ padding: '10px 16px',
26
+ iconTop: '12px', // large 의 text line height 가 medium, small 보다 4px 크기 때문에 그의 반절인 2px + padding 값 10px => 12px
27
+ iconRight: '16px',
29
28
  },
30
29
  };
31
30
 
32
31
  export const StyledSelect = styled(Select, {
33
32
  shouldForwardProp: (prop: string) => {
34
- return !["selectSize", "select"].includes(prop);
33
+ return !['selectSize', 'select'].includes(prop);
35
34
  },
36
35
  })<StyledDropdownProps>(({ theme, selectSize }) => ({
37
- ...(selectSize === "large"
36
+ ...(selectSize === 'large'
38
37
  ? { ...theme.typography.body1_16_regular }
39
38
  : { ...theme.typography.body2_14_regular }),
40
- height: valuesBySize[selectSize || "medium"].height,
41
- padding: valuesBySize[selectSize || "medium"].padding,
39
+ height: valuesBySize[selectSize || 'medium'].height,
40
+ padding: valuesBySize[selectSize || 'medium'].padding,
42
41
  backgroundColor: theme.palette.lunit_token.component.textfield_bg,
43
- overflow: "hidden",
44
- "& .MuiSelect-select": {
42
+ overflow: 'hidden',
43
+ '& .MuiSelect-select': {
45
44
  paddingTop: 0,
46
45
  paddingBottom: 0,
47
- paddingRight: "28px !important", // icon width 20px + 아이콘과 텍스트 사이의 gap 8px
46
+ paddingRight: '28px !important', // icon width 20px + 아이콘과 텍스트 사이의 gap 8px
48
47
  color: theme.palette.lunit_token.core.text_normal,
49
48
  },
50
- "&.MuiInputBase-root": {
51
- borderRadius: "8px",
52
- border: "none",
49
+ '&.MuiInputBase-root': {
50
+ borderRadius: '8px',
51
+ border: 'none',
53
52
 
54
- "&:hover:not(.Mui-disabled, .Mui-error):before": {
55
- border: "none",
53
+ '&:hover:not(.Mui-disabled, .Mui-error):before': {
54
+ border: 'none',
56
55
  },
57
56
  },
58
- "& .MuiInput-input": {
59
- "&:focus": {
60
- backgroundColor: "transparent",
57
+ '& .MuiInput-input': {
58
+ '&:focus': {
59
+ backgroundColor: 'transparent',
61
60
  },
62
61
  },
63
- "&::after": {
64
- border: "none",
62
+ '&::after': {
63
+ border: 'none',
65
64
  },
66
- "&::before": {
67
- border: "none",
65
+ '&::before': {
66
+ border: 'none',
68
67
  },
69
- "&:hover": {
70
- position: "relative",
68
+ '&:hover': {
69
+ position: 'relative',
71
70
  zIndex: 0,
72
71
  backgroundColor: theme.palette.lunit_token.component.textfield_bg,
73
- border: "none",
72
+ border: 'none',
74
73
  },
75
- "&:hover::before": {
74
+ '&:hover::before': {
76
75
  content: '""',
77
- position: "absolute",
76
+ position: 'absolute',
78
77
  top: 0,
79
78
  left: 0,
80
- width: "100%",
81
- height: "100%",
79
+ width: '100%',
80
+ height: '100%',
82
81
  zIndex: -1,
83
- backgroundColor: theme.palette.lunit_token.core.hover,
84
- border: "none",
82
+ backgroundColor: theme.palette.lunit_token.core.status_hover,
83
+ border: 'none',
85
84
  },
86
85
  // .Mui-focused 컴포넌트에 바로 border를 적용하면 컴포넌트의 width, height 값이 border 값만큼 늘어나기 때문에 따로 엘리먼트를 만들어서 border 를 적용함.
87
86
  // 다른 :before 들도 동일한 이유로 작성
88
- "&.Mui-focused::before": {
89
- border: `1px solid ${theme.palette.lunit_token.core.focused}`,
87
+ '&.Mui-focused::before': {
88
+ border: `1px solid ${theme.palette.lunit_token.core.status_focused}`,
90
89
  content: '""',
91
- position: "absolute",
90
+ position: 'absolute',
92
91
  top: 0,
93
92
  bottom: 0,
94
93
  left: 0,
95
94
  right: 0,
96
- borderRadius: "8px",
97
- transition: "none",
95
+ borderRadius: '8px',
96
+ transition: 'none',
98
97
  },
99
- "&.Mui-disabled": {
98
+ '&.Mui-disabled': {
100
99
  opacity: 0.38,
101
100
  },
102
- "&.Mui-disabled:before": {
103
- borderBottomStyle: "none",
101
+ '&.Mui-disabled:before': {
102
+ borderBottomStyle: 'none',
104
103
  },
105
- "&.Mui-error::before": {
104
+ '&.Mui-error::before': {
106
105
  border: `1px solid ${theme.palette.lunit_token.component.textfield_border_error}`,
107
106
  content: '""',
108
- position: "absolute",
107
+ position: 'absolute',
109
108
  top: 0,
110
109
  bottom: 0,
111
110
  left: 0,
112
111
  right: 0,
113
- borderRadius: "8px",
114
- transition: "none",
115
- },
116
- "& .MuiSvgIcon-root": {
117
- width: "20px",
118
- height: "20px",
119
- top: valuesBySize[selectSize || "medium"].iconTop, // mui 에서 이 icon position 이 position: absolute 로 되어 있어서 padding 값에 맞춰 포지션 조절
120
- right: valuesBySize[selectSize || "medium"].iconRight,
112
+ borderRadius: '8px',
113
+ transition: 'none',
114
+ },
115
+ '& .MuiSvgIcon-root': {
116
+ width: '20px',
117
+ height: '20px',
118
+ top: valuesBySize[selectSize || 'medium'].iconTop, // mui 에서 이 icon position 이 position: absolute 로 되어 있어서 padding 값에 맞춰 포지션 조절
119
+ right: valuesBySize[selectSize || 'medium'].iconRight,
121
120
  color: theme.palette.lunit_token.core.text_normal,
122
- "&.Mui-disabled": {
121
+ '&.Mui-disabled': {
123
122
  color: theme.palette.lunit_token.core.text_normal,
124
123
  },
125
124
  },
@@ -127,27 +126,27 @@ export const StyledSelect = styled(Select, {
127
126
 
128
127
  export const StyledMenuItem = styled(MenuItem)(({ theme }) => ({
129
128
  ...theme.typography.body2_14_regular,
130
- padding: "8px",
131
- borderRadius: "8px",
129
+ padding: '8px',
130
+ borderRadius: '8px',
132
131
  color: theme.palette.lunit_token.core.text_normal,
133
- backgroundColor: "transparent",
134
- display: "flex",
135
- flexDirection: "row",
136
- justifyContent: "space-between",
137
- gap: "8px",
138
- "&:hover": {
139
- backgroundColor: theme.palette.lunit_token.core.hover,
140
- },
141
- "&.Mui-focusVisible": {
142
- backgroundColor: "transparent",
143
- "&:hover": {
144
- backgroundColor: theme.palette.lunit_token.core.hover,
132
+ backgroundColor: 'transparent',
133
+ display: 'flex',
134
+ flexDirection: 'row',
135
+ justifyContent: 'space-between',
136
+ gap: '8px',
137
+ '&:hover': {
138
+ backgroundColor: theme.palette.lunit_token.core.status_hover,
139
+ },
140
+ '&.Mui-focusVisible': {
141
+ backgroundColor: 'transparent',
142
+ '&:hover': {
143
+ backgroundColor: theme.palette.lunit_token.core.status_hover,
145
144
  },
146
145
  },
147
146
  // TODO: 디자이너와 focus 디자인 확인 후 살리든 지우든 하기
148
147
  // "&:focus::before": {
149
148
  // border: "1px solid",
150
- // borderColor: theme.palette.lunit_token.core.focused,
149
+ // borderColor: theme.palette.lunit_token.core.status_focused,
151
150
  // content: '""',
152
151
  // position: "absolute",
153
152
  // top: 0,
@@ -155,16 +154,16 @@ export const StyledMenuItem = styled(MenuItem)(({ theme }) => ({
155
154
  // left: -8,
156
155
  // right: -8,
157
156
  // },
158
- "& .multipleChecked": {
159
- display: "none",
157
+ '& .multipleChecked': {
158
+ display: 'none',
160
159
  },
161
- "&.filledStyle": {
162
- backgroundColor: theme.palette.lunit_token.core.selected,
160
+ '&.filledStyle': {
161
+ backgroundColor: theme.palette.lunit_token.core.status_selected,
163
162
  },
164
163
  }));
165
164
 
166
- export const StyledIconWrapper = styled(Box)({
167
- width: "20px",
168
- height: "20px",
169
- marginRight: "8px",
165
+ export const StyledIconWrapper = styled('div')({
166
+ width: '20px',
167
+ height: '20px',
168
+ marginRight: '8px',
170
169
  });
@@ -1,50 +1,49 @@
1
- import React, { forwardRef } from "react";
2
- import ArrowDownSm from "@lunit/design-system-icons/ArrowDownSm";
3
- import { DropdownProps } from "./Dropdown.types";
4
- import { StyledSelect } from "./Dropdown.styled";
1
+ import React, { forwardRef, useCallback } from 'react';
2
+ import ArrowDownSm from '@lunit/design-system-icons/ArrowDownSm';
3
+ import { DropdownProps } from './Dropdown.types';
4
+ import { StyledSelect } from './Dropdown.styled';
5
+ import { SvgIconProps } from '@mui/material';
5
6
 
6
7
  const Dropdown = forwardRef((props: DropdownProps, ref) => {
7
- const {
8
- select = "single",
9
- size = "medium",
10
- className,
11
- children,
12
- sx,
13
- ...restProps
14
- } = props;
8
+ const { select = 'single', size = 'medium', className, children, sx, ...restProps } = props;
9
+ const IconComponent = useCallback(
10
+ (iconProps: SvgIconProps) => <ArrowDownSm {...iconProps} />,
11
+ [],
12
+ );
15
13
 
16
14
  return (
17
15
  <StyledSelect
18
16
  className={className}
19
17
  variant="standard" // variant standard 기준으로 스타일링 되어있음. 다른 variant 사용 시 스타일이 틀어질 수 있음
20
- multiple={select === "multiple"}
21
- IconComponent={(props) => <ArrowDownSm {...props} />}
18
+ multiple={select === 'multiple'}
19
+ IconComponent={IconComponent}
22
20
  MenuProps={{
23
21
  anchorOrigin: {
24
- vertical: "bottom",
25
- horizontal: "left",
22
+ vertical: 'bottom',
23
+ horizontal: 'left',
26
24
  },
27
25
  transformOrigin: {
28
- vertical: "top",
29
- horizontal: "left",
26
+ vertical: 'top',
27
+ horizontal: 'left',
30
28
  },
31
29
  PaperProps: {
32
30
  sx: {
33
- marginTop: "4px",
34
- padding: "0px 8px",
35
- borderRadius: "8px",
31
+ marginTop: '4px',
32
+ padding: '0px 8px',
33
+ borderRadius: '8px',
36
34
  backgroundColor: (theme) => theme.palette.lunit_token.core.bg_02,
37
35
  },
38
- className: `elevation2 ${className || "light1"}`,
36
+ className: `elevation2 ${className || 'light1'}`,
39
37
  },
40
- MenuListProps: {
41
- // 추후 MUI 버전 업그레이드 시 MenuListProps 변경 필요. Deprecated-use the slotProps.list prop instead. https://mui.com/material-ui/api/menu/ 의 MenuListProps 참고
42
- sx: {
43
- "& .singleChecked": {
44
- display: select === "single" ? "inherit" : "none",
45
- },
46
- "& .multipleChecked": {
47
- display: select === "multiple" ? "inherit !important" : "none",
38
+ slotProps: {
39
+ list: {
40
+ sx: {
41
+ '& .singleChecked': {
42
+ display: select === 'single' ? 'inherit' : 'none',
43
+ },
44
+ '& .multipleChecked': {
45
+ display: select === 'multiple' ? 'inherit !important' : 'none',
46
+ },
48
47
  },
49
48
  },
50
49
  },
@@ -1,13 +1,12 @@
1
- import type { MenuItemProps, SelectProps } from "@mui/material";
1
+ import type { MenuItemProps, SelectProps } from '@mui/material';
2
2
 
3
- import type { JSX } from "react";
3
+ import type { JSX } from 'react';
4
4
 
5
- export interface DropdownProps
6
- extends Omit<SelectProps, "size" | "variant" | "placeholder"> {
5
+ export interface DropdownProps extends Omit<SelectProps, 'size' | 'variant' | 'placeholder'> {
7
6
  // mui variant 를 바꾸게 되면 스타일이 틀어질 수 있어서 variant 를 아예 사용하지 못하게 props 에서 제거
8
7
  // mui select 에서는 placeholder 가 동작하지 않기 때문에 유저가 헷갈리지 않게 props 에서 제거
9
- select?: "single" | "multiple";
10
- size?: "small" | "medium" | "large";
8
+ select?: 'single' | 'multiple';
9
+ size?: 'small' | 'medium' | 'large';
11
10
  }
12
11
 
13
12
  export interface DropdownItemProps extends MenuItemProps {
@@ -1,12 +1,12 @@
1
- import React from "react";
2
- import { Box, Divider, ListSubheader, SxProps } from "@mui/material";
3
- import Check from "@lunit/design-system-icons/Check";
1
+ import React from 'react';
2
+ import { Box, Divider, ListSubheader, SxProps } from '@mui/material';
3
+ import Check from '@lunit/design-system-icons/Check';
4
4
 
5
- import Checkbox from "../Checkbox";
6
- import Typography from "../Typography";
5
+ import Checkbox from '../Checkbox';
6
+ import Typography from '../Typography';
7
7
 
8
- import { DropdownItemProps } from "./Dropdown.types";
9
- import { StyledIconWrapper, StyledMenuItem } from "./Dropdown.styled";
8
+ import { DropdownItemProps } from './Dropdown.types';
9
+ import { StyledIconWrapper, StyledMenuItem } from './Dropdown.styled';
10
10
 
11
11
  export function DropdownItem(props: DropdownItemProps) {
12
12
  const {
@@ -21,15 +21,15 @@ export function DropdownItem(props: DropdownItemProps) {
21
21
 
22
22
  return (
23
23
  <StyledMenuItem
24
- className={isFilledStyle && selected ? "filledStyle" : undefined}
24
+ className={isFilledStyle && selected ? 'filledStyle' : undefined}
25
25
  sx={sx}
26
26
  {...restProps}
27
27
  >
28
28
  <Box
29
29
  sx={{
30
- display: "flex",
31
- flexDirection: "row",
32
- justifyContent: "flex-start",
30
+ display: 'flex',
31
+ flexDirection: 'row',
32
+ justifyContent: 'flex-start',
33
33
  }}
34
34
  >
35
35
  {!isFilledStyle && (
@@ -37,11 +37,7 @@ export function DropdownItem(props: DropdownItemProps) {
37
37
  <StyledIconWrapper className="singleChecked">
38
38
  {selected && <Check fontSize="small" />}
39
39
  </StyledIconWrapper>
40
- <Checkbox
41
- className="multipleChecked"
42
- sx={{ mr: 2 }}
43
- checked={selected}
44
- />
40
+ <Checkbox className="multipleChecked" sx={{ mr: 2 }} checked={selected} />
45
41
  </>
46
42
  )}
47
43
  {leftIcon && (
@@ -73,29 +69,22 @@ export function DropdownDivider({ sx }: { sx?: SxProps }) {
73
69
  return (
74
70
  <Divider
75
71
  sx={{
76
- margin: "8px -8px",
77
- borderColor: (theme) =>
78
- theme.palette.lunit_token.component.dropdown_divider_border,
72
+ margin: '8px -8px',
73
+ borderColor: (theme) => theme.palette.lunit_token.component.dropdown_divider_border,
79
74
  ...sx,
80
75
  }}
81
76
  />
82
77
  );
83
78
  }
84
79
 
85
- export function DropdownSubtitle({
86
- title,
87
- sx,
88
- }: {
89
- title: string;
90
- sx?: SxProps;
91
- }) {
80
+ export function DropdownSubtitle({ title, sx }: { title: string; sx?: SxProps }) {
92
81
  return (
93
82
  <ListSubheader
94
83
  sx={{
95
- typography: "body3_12_semibold",
96
- padding: "4px 8px",
84
+ typography: 'body3_12_semibold',
85
+ padding: '4px 8px',
97
86
  color: (theme) => theme.palette.lunit_token.core.text_light,
98
- backgroundColor: "transparent",
87
+ backgroundColor: 'transparent',
99
88
  ...sx,
100
89
  }}
101
90
  >
@@ -1,7 +1,3 @@
1
- export { default } from "./Dropdown";
2
- export {
3
- DropdownItem,
4
- DropdownDivider,
5
- DropdownSubtitle,
6
- } from "./DropdownItem";
7
- export type { DropdownProps, DropdownItemProps } from "./Dropdown.types";
1
+ export { default } from './Dropdown';
2
+ export { DropdownItem, DropdownDivider, DropdownSubtitle } from './DropdownItem';
3
+ export type { DropdownProps, DropdownItemProps } from './Dropdown.types';
@@ -1,8 +1,8 @@
1
- import { FormControlLabel, styled } from "@mui/material";
1
+ import { FormControlLabel, styled } from '@mui/material';
2
2
 
3
3
  export const StyledFormControlLabel = styled(FormControlLabel)(({ theme }) => ({
4
4
  marginLeft: 0,
5
5
  '& .MuiTypography-root': {
6
6
  marginLeft: theme.spacing(2),
7
- }
8
- }))
7
+ },
8
+ }));
@@ -1,6 +1,6 @@
1
- import React from "react";
2
- import { FormControlLabelProps } from "@mui/material";
3
- import { StyledFormControlLabel } from "./FormLabel.styled";
1
+ import React from 'react';
2
+ import { FormControlLabelProps } from '@mui/material';
3
+ import { StyledFormControlLabel } from './FormLabel.styled';
4
4
 
5
5
  const FormLabel = (props: FormControlLabelProps) => {
6
6
  return <StyledFormControlLabel {...props} />;
@@ -1 +1 @@
1
- export { default } from "./FormLabel";
1
+ export { default } from './FormLabel';
@@ -1,32 +1,26 @@
1
- import React from "react";
2
- import { styled } from "@mui/material/styles";
3
- import MuiRadio, { RadioProps } from "@mui/material/Radio";
1
+ import React from 'react';
2
+ import { styled } from '@mui/material/styles';
3
+ import MuiRadio, { RadioProps } from '@mui/material/Radio';
4
4
 
5
5
  const CustomRadio = styled(MuiRadio)(({ theme }) => ({
6
6
  padding: 0,
7
- "&.Mui-disabled": {
7
+ '&.Mui-disabled': {
8
8
  opacity: 0.38,
9
9
  },
10
- "&.Mui-focusVisible:after": {
10
+ '&.Mui-focusVisible:after': {
11
11
  content: '""',
12
- position: "absolute",
13
- display: "block",
12
+ position: 'absolute',
13
+ display: 'block',
14
14
  width: 24,
15
15
  height: 24,
16
- borderRadius: "50%",
17
- border: `1px solid ${theme.palette.lunit_token.core.focused}`,
16
+ borderRadius: '50%',
17
+ border: `1px solid ${theme.palette.lunit_token.core.status_focused}`,
18
18
  },
19
19
  }));
20
20
 
21
21
  const DefaultIcon = () => {
22
22
  return (
23
- <svg
24
- xmlns="http://www.w3.org/2000/svg"
25
- width="20"
26
- height="20"
27
- viewBox="0 0 20 20"
28
- fill="none"
29
- >
23
+ <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">
30
24
  <path
31
25
  fillRule="evenodd"
32
26
  clipRule="evenodd"
@@ -39,13 +33,7 @@ const DefaultIcon = () => {
39
33
 
40
34
  const CheckedIcon = () => {
41
35
  return (
42
- <svg
43
- xmlns="http://www.w3.org/2000/svg"
44
- width="20"
45
- height="20"
46
- viewBox="0 0 20 20"
47
- fill="none"
48
- >
36
+ <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">
49
37
  <path
50
38
  fillRule="evenodd"
51
39
  clipRule="evenodd"
@@ -58,12 +46,7 @@ const CheckedIcon = () => {
58
46
 
59
47
  const Radio = (props: RadioProps) => {
60
48
  return (
61
- <CustomRadio
62
- disableRipple
63
- icon={<DefaultIcon />}
64
- checkedIcon={<CheckedIcon />}
65
- {...props}
66
- />
49
+ <CustomRadio disableRipple icon={<DefaultIcon />} checkedIcon={<CheckedIcon />} {...props} />
67
50
  );
68
51
  };
69
52
 
@@ -1 +1 @@
1
- export { default } from "./Radio";
1
+ export { default } from './Radio';
@@ -1,2 +1,2 @@
1
- import RadioGroup from "@mui/material/RadioGroup";
1
+ import RadioGroup from '@mui/material/RadioGroup';
2
2
  export default RadioGroup;