@twreporter/react-typescript-components 0.1.0-beta.7 → 0.1.0-beta.9

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 (373) hide show
  1. package/README.md +16 -0
  2. package/lib/button/constants.d.mts +3 -0
  3. package/lib/button/constants.d.ts +3 -0
  4. package/lib/button/constants.js +5 -0
  5. package/lib/button/constants.mjs +3 -0
  6. package/lib/button/index.d.mts +130 -23
  7. package/lib/button/index.d.ts +130 -23
  8. package/lib/button/index.js +11 -207
  9. package/lib/button/index.mjs +7 -9
  10. package/lib/button-CO0UXA6C.js +552 -0
  11. package/lib/button-CO0UXA6C.js.map +1 -0
  12. package/lib/button-DL6w1ghn.mjs +519 -0
  13. package/lib/button-DL6w1ghn.mjs.map +1 -0
  14. package/lib/chunk-BxBTb9qk.js +39 -0
  15. package/lib/constants/external-links.d.mts +16 -0
  16. package/lib/constants/external-links.d.ts +16 -0
  17. package/lib/constants/external-links.js +3 -0
  18. package/lib/constants/external-links.mjs +3 -0
  19. package/lib/constants/internal-links.d.mts +51 -0
  20. package/lib/constants/internal-links.d.ts +51 -0
  21. package/lib/constants/internal-links.js +3 -0
  22. package/lib/constants/internal-links.mjs +3 -0
  23. package/lib/constants/release-branch.d.mts +3 -0
  24. package/lib/constants/release-branch.d.ts +3 -0
  25. package/lib/constants/release-branch.js +3 -0
  26. package/lib/constants/release-branch.mjs +3 -0
  27. package/lib/constants/request-origins.d.mts +68 -0
  28. package/lib/constants/request-origins.d.ts +68 -0
  29. package/lib/constants/request-origins.js +47 -0
  30. package/lib/constants/request-origins.js.map +1 -0
  31. package/lib/constants/request-origins.mjs +46 -0
  32. package/lib/constants/request-origins.mjs.map +1 -0
  33. package/lib/constants/theme.d.mts +3 -0
  34. package/lib/constants/theme.d.ts +3 -0
  35. package/lib/constants/theme.js +3 -0
  36. package/lib/constants/theme.mjs +3 -0
  37. package/lib/constants-2TRY2zTK.js +38 -0
  38. package/lib/constants-2TRY2zTK.js.map +1 -0
  39. package/lib/constants-BS3rPbaX.d.ts +17 -0
  40. package/lib/constants-BWFuBApI.mjs +14 -0
  41. package/lib/constants-BWFuBApI.mjs.map +1 -0
  42. package/lib/constants-B_NgWFML.d.ts +24 -0
  43. package/lib/constants-BmxSMOOn.js +36 -0
  44. package/lib/constants-BmxSMOOn.js.map +1 -0
  45. package/lib/constants-BqeEbkVD.mjs +20 -0
  46. package/lib/constants-BqeEbkVD.mjs.map +1 -0
  47. package/lib/constants-CIX1G5rj.d.mts +24 -0
  48. package/lib/constants-CMMcn0f-.d.ts +11 -0
  49. package/lib/constants-COxV6T69.d.mts +11 -0
  50. package/lib/constants-CQscYQcW.mjs +25 -0
  51. package/lib/constants-CQscYQcW.mjs.map +1 -0
  52. package/lib/constants-D7_N9Z7C.d.mts +17 -0
  53. package/lib/constants-DF_II8Fz.js +43 -0
  54. package/lib/constants-DF_II8Fz.js.map +1 -0
  55. package/lib/constants-DQxcqnYL.d.ts +29 -0
  56. package/lib/constants-DRyQ6AuU.js +15 -0
  57. package/lib/constants-DRyQ6AuU.js.map +1 -0
  58. package/lib/constants-DWy9qTkZ.d.mts +22 -0
  59. package/lib/constants-K2ObjToq.js +26 -0
  60. package/lib/constants-K2ObjToq.js.map +1 -0
  61. package/lib/constants-gCmka4Fp.d.ts +22 -0
  62. package/lib/constants-mrRqEvQT.d.mts +29 -0
  63. package/lib/constants-oTHAnh6r.mjs +18 -0
  64. package/lib/constants-oTHAnh6r.mjs.map +1 -0
  65. package/lib/constants-t0lkfgqP.mjs +9 -0
  66. package/lib/constants-t0lkfgqP.mjs.map +1 -0
  67. package/lib/customized-link/external-link.d.mts +3 -7
  68. package/lib/customized-link/external-link.d.ts +3 -7
  69. package/lib/customized-link/external-link.js +2 -17
  70. package/lib/customized-link/external-link.mjs +3 -3
  71. package/lib/customized-link/index.d.mts +10 -8
  72. package/lib/customized-link/index.d.ts +10 -8
  73. package/lib/customized-link/index.js +6 -40
  74. package/lib/customized-link/index.mjs +5 -5
  75. package/lib/customized-link/internal-link.d.mts +3 -7
  76. package/lib/customized-link/internal-link.d.ts +3 -7
  77. package/lib/customized-link/internal-link.js +3 -19
  78. package/lib/customized-link/internal-link.mjs +6 -3
  79. package/lib/customized-link/type.d.mts +2 -9
  80. package/lib/customized-link/type.d.ts +2 -9
  81. package/lib/customized-link/type.js +0 -4
  82. package/lib/customized-link/type.mjs +1 -3
  83. package/lib/customized-link-BkuKVCKQ.mjs +12 -0
  84. package/lib/customized-link-BkuKVCKQ.mjs.map +1 -0
  85. package/lib/customized-link-CK7Xlgdt.js +17 -0
  86. package/lib/customized-link-CK7Xlgdt.js.map +1 -0
  87. package/lib/divider/constants.d.mts +3 -0
  88. package/lib/divider/constants.d.ts +3 -0
  89. package/lib/divider/constants.js +3 -0
  90. package/lib/divider/constants.mjs +3 -0
  91. package/lib/divider/index.d.mts +15 -0
  92. package/lib/divider/index.d.ts +15 -0
  93. package/lib/divider/index.js +6 -0
  94. package/lib/divider/index.mjs +4 -0
  95. package/lib/divider-Bb3tebJO.mjs +15 -0
  96. package/lib/divider-Bb3tebJO.mjs.map +1 -0
  97. package/lib/divider-b3Shh7FV.js +29 -0
  98. package/lib/divider-b3Shh7FV.js.map +1 -0
  99. package/lib/dropdown-menu/index.d.mts +17 -0
  100. package/lib/dropdown-menu/index.d.ts +17 -0
  101. package/lib/dropdown-menu/index.js +13 -0
  102. package/lib/dropdown-menu/index.mjs +13 -0
  103. package/lib/dropdown-menu-Da9XSi5T.mjs +135 -0
  104. package/lib/dropdown-menu-Da9XSi5T.mjs.map +1 -0
  105. package/lib/dropdown-menu-pmVRiPhM.js +180 -0
  106. package/lib/dropdown-menu-pmVRiPhM.js.map +1 -0
  107. package/lib/external-link-2XoC1_oL.d.ts +9 -0
  108. package/lib/external-link-Bq-CThgd.d.mts +9 -0
  109. package/lib/external-link-CEDvlQYo.js +23 -0
  110. package/lib/external-link-CEDvlQYo.js.map +1 -0
  111. package/lib/external-link-Cx9S31Ye.mjs +16 -0
  112. package/lib/external-link-Cx9S31Ye.mjs.map +1 -0
  113. package/lib/external-links-2b4M_rcA.mjs +17 -0
  114. package/lib/external-links-2b4M_rcA.mjs.map +1 -0
  115. package/lib/external-links-SfJjb48j.js +23 -0
  116. package/lib/external-links-SfJjb48j.js.map +1 -0
  117. package/lib/hamburger-menu/index.d.mts +7 -0
  118. package/lib/hamburger-menu/index.d.ts +6 -0
  119. package/lib/hamburger-menu/index.js +21 -0
  120. package/lib/hamburger-menu/index.mjs +21 -0
  121. package/lib/hamburger-menu-CMHvrA25.js +486 -0
  122. package/lib/hamburger-menu-CMHvrA25.js.map +1 -0
  123. package/lib/hamburger-menu-UYqFVwiu.mjs +471 -0
  124. package/lib/hamburger-menu-UYqFVwiu.mjs.map +1 -0
  125. package/lib/header/index.d.mts +26 -0
  126. package/lib/header/index.d.ts +25 -0
  127. package/lib/header/index.js +468 -0
  128. package/lib/header/index.js.map +1 -0
  129. package/lib/header/index.mjs +462 -0
  130. package/lib/header/index.mjs.map +1 -0
  131. package/lib/heading-CWQISn4r.js +75 -0
  132. package/lib/heading-CWQISn4r.js.map +1 -0
  133. package/lib/heading-Dt90Ed74.mjs +37 -0
  134. package/lib/heading-Dt90Ed74.mjs.map +1 -0
  135. package/lib/icons/constants.d.mts +3 -0
  136. package/lib/icons/constants.d.ts +3 -0
  137. package/lib/icons/constants.js +5 -0
  138. package/lib/icons/constants.mjs +3 -0
  139. package/lib/icons/index.d.mts +40 -0
  140. package/lib/icons/index.d.ts +40 -0
  141. package/lib/icons/index.js +12 -0
  142. package/lib/icons/index.mjs +5 -0
  143. package/lib/icons-CtVvOt3y.mjs +57 -0
  144. package/lib/icons-CtVvOt3y.mjs.map +1 -0
  145. package/lib/icons-teg1h03Q.js +107 -0
  146. package/lib/icons-teg1h03Q.js.map +1 -0
  147. package/lib/index-Ej3agYJF.d.mts +5 -0
  148. package/lib/index-H3peA2d_.d.ts +5 -0
  149. package/lib/internal-link-CqTu3Yi5.js +2278 -0
  150. package/lib/internal-link-CqTu3Yi5.js.map +1 -0
  151. package/lib/internal-link-DCSEl1jM.d.ts +9 -0
  152. package/lib/internal-link-NQb751uB.mjs +2299 -0
  153. package/lib/internal-link-NQb751uB.mjs.map +1 -0
  154. package/lib/internal-link-P1QwjWbL.d.mts +9 -0
  155. package/lib/internal-links-BF-974mA.mjs +52 -0
  156. package/lib/internal-links-BF-974mA.mjs.map +1 -0
  157. package/lib/internal-links-CBkMU8cY.js +58 -0
  158. package/lib/internal-links-CBkMU8cY.js.map +1 -0
  159. package/lib/logo/constants.d.mts +3 -0
  160. package/lib/logo/constants.d.ts +3 -0
  161. package/lib/logo/constants.js +5 -0
  162. package/lib/logo/constants.mjs +3 -0
  163. package/lib/logo/index.d.mts +42 -0
  164. package/lib/logo/index.d.ts +42 -0
  165. package/lib/logo/index.js +8 -0
  166. package/lib/logo/index.mjs +5 -0
  167. package/lib/logo-CaawAABC.mjs +64 -0
  168. package/lib/logo-CaawAABC.mjs.map +1 -0
  169. package/lib/logo-rQxaglyD.js +83 -0
  170. package/lib/logo-rQxaglyD.js.map +1 -0
  171. package/lib/paragraph-BWXQNQtX.mjs +30 -0
  172. package/lib/paragraph-BWXQNQtX.mjs.map +1 -0
  173. package/lib/paragraph-CJvb0_cM.js +56 -0
  174. package/lib/paragraph-CJvb0_cM.js.map +1 -0
  175. package/lib/release-branch-CRZV4Ivz.js +18 -0
  176. package/lib/release-branch-CRZV4Ivz.js.map +1 -0
  177. package/lib/release-branch-CsBbhuYE.d.ts +14 -0
  178. package/lib/release-branch-DIEpb2N0.d.mts +14 -0
  179. package/lib/release-branch-DNCD1uH_.mjs +12 -0
  180. package/lib/release-branch-DNCD1uH_.mjs.map +1 -0
  181. package/lib/styles.css +965 -0
  182. package/lib/text/constants.d.mts +3 -0
  183. package/lib/text/constants.d.ts +3 -0
  184. package/lib/text/constants.js +4 -0
  185. package/lib/text/constants.mjs +3 -0
  186. package/lib/text/heading.d.mts +22 -20
  187. package/lib/text/heading.d.ts +22 -20
  188. package/lib/text/heading.js +9 -70
  189. package/lib/text/heading.mjs +4 -4
  190. package/lib/text/paragraph.d.mts +18 -16
  191. package/lib/text/paragraph.d.ts +18 -16
  192. package/lib/text/paragraph.js +6 -57
  193. package/lib/text/paragraph.mjs +4 -4
  194. package/lib/theme-BDGfJ8n-.d.ts +13 -0
  195. package/lib/theme-BG6yZVj-.mjs +11 -0
  196. package/lib/theme-BG6yZVj-.mjs.map +1 -0
  197. package/lib/theme-BqjiyFsg.d.mts +13 -0
  198. package/lib/theme-DDBlIbeS.js +17 -0
  199. package/lib/theme-DDBlIbeS.js.map +1 -0
  200. package/lib/title-bar/index.d.mts +55 -23
  201. package/lib/title-bar/index.d.ts +55 -23
  202. package/lib/title-bar/index.js +131 -403
  203. package/lib/title-bar/index.js.map +1 -1
  204. package/lib/title-bar/index.mjs +140 -25
  205. package/lib/title-bar/index.mjs.map +1 -1
  206. package/lib/type-C4hJK9H9.d.ts +11 -0
  207. package/lib/type-DeNBwt-o.d.mts +11 -0
  208. package/lib/types/index.d.mts +2 -3
  209. package/lib/types/index.d.ts +2 -3
  210. package/lib/types/index.js +0 -4
  211. package/lib/types/index.mjs +1 -3
  212. package/package.json +11 -6
  213. package/lib/button/components/text-button/index.d.mts +0 -24
  214. package/lib/button/components/text-button/index.d.ts +0 -24
  215. package/lib/button/components/text-button/index.js +0 -202
  216. package/lib/button/components/text-button/index.js.map +0 -1
  217. package/lib/button/components/text-button/index.mjs +0 -8
  218. package/lib/button/components/text-button/index.mjs.map +0 -1
  219. package/lib/button/components/text-button/theme.d.mts +0 -11
  220. package/lib/button/components/text-button/theme.d.ts +0 -11
  221. package/lib/button/components/text-button/theme.js +0 -65
  222. package/lib/button/components/text-button/theme.js.map +0 -1
  223. package/lib/button/components/text-button/theme.mjs +0 -5
  224. package/lib/button/components/text-button/theme.mjs.map +0 -1
  225. package/lib/button/constant.d.mts +0 -11
  226. package/lib/button/constant.d.ts +0 -11
  227. package/lib/button/constant.js +0 -13
  228. package/lib/button/constant.js.map +0 -1
  229. package/lib/button/constant.mjs +0 -3
  230. package/lib/button/constant.mjs.map +0 -1
  231. package/lib/button/enum.d.mts +0 -11
  232. package/lib/button/enum.d.ts +0 -11
  233. package/lib/button/enum.js +0 -19
  234. package/lib/button/enum.js.map +0 -1
  235. package/lib/button/enum.mjs +0 -3
  236. package/lib/button/enum.mjs.map +0 -1
  237. package/lib/button/index.js.map +0 -1
  238. package/lib/button/index.mjs.map +0 -1
  239. package/lib/button/stories/text-button.stories.d.mts +0 -55
  240. package/lib/button/stories/text-button.stories.d.ts +0 -55
  241. package/lib/button/stories/text-button.stories.js +0 -252
  242. package/lib/button/stories/text-button.stories.js.map +0 -1
  243. package/lib/button/stories/text-button.stories.mjs +0 -35
  244. package/lib/button/stories/text-button.stories.mjs.map +0 -1
  245. package/lib/chunk-6DXA3EX7.mjs +0 -35
  246. package/lib/chunk-6DXA3EX7.mjs.map +0 -1
  247. package/lib/chunk-7NJDHQ2X.mjs +0 -56
  248. package/lib/chunk-7NJDHQ2X.mjs.map +0 -1
  249. package/lib/chunk-ELECTE3D.mjs +0 -8
  250. package/lib/chunk-ELECTE3D.mjs.map +0 -1
  251. package/lib/chunk-FF422IYY.mjs +0 -38
  252. package/lib/chunk-FF422IYY.mjs.map +0 -1
  253. package/lib/chunk-FVKIUNIP.mjs +0 -58
  254. package/lib/chunk-FVKIUNIP.mjs.map +0 -1
  255. package/lib/chunk-GQWO45DN.mjs +0 -32
  256. package/lib/chunk-GQWO45DN.mjs.map +0 -1
  257. package/lib/chunk-HQG6Q2EY.mjs +0 -42
  258. package/lib/chunk-HQG6Q2EY.mjs.map +0 -1
  259. package/lib/chunk-JB4TYHDE.mjs +0 -11
  260. package/lib/chunk-JB4TYHDE.mjs.map +0 -1
  261. package/lib/chunk-JFT6JILC.mjs +0 -12
  262. package/lib/chunk-JFT6JILC.mjs.map +0 -1
  263. package/lib/chunk-JHLT5GDV.mjs +0 -50
  264. package/lib/chunk-JHLT5GDV.mjs.map +0 -1
  265. package/lib/chunk-QOLETTSG.mjs +0 -28
  266. package/lib/chunk-QOLETTSG.mjs.map +0 -1
  267. package/lib/chunk-U22UKMAJ.mjs +0 -84
  268. package/lib/chunk-U22UKMAJ.mjs.map +0 -1
  269. package/lib/chunk-UM7RNC2Y.mjs +0 -14
  270. package/lib/chunk-UM7RNC2Y.mjs.map +0 -1
  271. package/lib/chunk-URJXIWFX.mjs +0 -16
  272. package/lib/chunk-URJXIWFX.mjs.map +0 -1
  273. package/lib/chunk-X2UWIBNH.mjs +0 -16
  274. package/lib/chunk-X2UWIBNH.mjs.map +0 -1
  275. package/lib/chunk-XO7SDD7W.mjs +0 -17
  276. package/lib/chunk-XO7SDD7W.mjs.map +0 -1
  277. package/lib/chunk-ZALXWB2J.mjs +0 -27
  278. package/lib/chunk-ZALXWB2J.mjs.map +0 -1
  279. package/lib/customized-link/external-link.js.map +0 -1
  280. package/lib/customized-link/external-link.mjs.map +0 -1
  281. package/lib/customized-link/index.js.map +0 -1
  282. package/lib/customized-link/index.mjs.map +0 -1
  283. package/lib/customized-link/internal-link.js.map +0 -1
  284. package/lib/customized-link/internal-link.mjs.map +0 -1
  285. package/lib/customized-link/type.js.map +0 -1
  286. package/lib/customized-link/type.mjs.map +0 -1
  287. package/lib/storybook/utils/get-enum-arg.d.mts +0 -19
  288. package/lib/storybook/utils/get-enum-arg.d.ts +0 -19
  289. package/lib/storybook/utils/get-enum-arg.js +0 -31
  290. package/lib/storybook/utils/get-enum-arg.js.map +0 -1
  291. package/lib/storybook/utils/get-enum-arg.mjs +0 -3
  292. package/lib/storybook/utils/get-enum-arg.mjs.map +0 -1
  293. package/lib/styles.css.map +0 -1
  294. package/lib/styles.d.mts +0 -2
  295. package/lib/styles.d.ts +0 -2
  296. package/lib/text/enum/index.d.mts +0 -15
  297. package/lib/text/enum/index.d.ts +0 -15
  298. package/lib/text/enum/index.js +0 -17
  299. package/lib/text/enum/index.js.map +0 -1
  300. package/lib/text/enum/index.mjs +0 -3
  301. package/lib/text/enum/index.mjs.map +0 -1
  302. package/lib/text/heading.js.map +0 -1
  303. package/lib/text/heading.mjs.map +0 -1
  304. package/lib/text/paragraph.js.map +0 -1
  305. package/lib/text/paragraph.mjs.map +0 -1
  306. package/lib/text/stories/heading.stories.d.mts +0 -35
  307. package/lib/text/stories/heading.stories.d.ts +0 -35
  308. package/lib/text/stories/heading.stories.js +0 -131
  309. package/lib/text/stories/heading.stories.js.map +0 -1
  310. package/lib/text/stories/heading.stories.mjs +0 -50
  311. package/lib/text/stories/heading.stories.mjs.map +0 -1
  312. package/lib/text/stories/paragraph.stories.d.mts +0 -33
  313. package/lib/text/stories/paragraph.stories.d.ts +0 -33
  314. package/lib/text/stories/paragraph.stories.js +0 -108
  315. package/lib/text/stories/paragraph.stories.js.map +0 -1
  316. package/lib/text/stories/paragraph.stories.mjs +0 -40
  317. package/lib/text/stories/paragraph.stories.mjs.map +0 -1
  318. package/lib/title-bar/components/title-tab/hook.d.mts +0 -5
  319. package/lib/title-bar/components/title-tab/hook.d.ts +0 -5
  320. package/lib/title-bar/components/title-tab/hook.js +0 -34
  321. package/lib/title-bar/components/title-tab/hook.js.map +0 -1
  322. package/lib/title-bar/components/title-tab/hook.mjs +0 -3
  323. package/lib/title-bar/components/title-tab/hook.mjs.map +0 -1
  324. package/lib/title-bar/components/title-tab/index.d.mts +0 -11
  325. package/lib/title-bar/components/title-tab/index.d.ts +0 -11
  326. package/lib/title-bar/components/title-tab/index.js +0 -367
  327. package/lib/title-bar/components/title-tab/index.js.map +0 -1
  328. package/lib/title-bar/components/title-tab/index.mjs +0 -16
  329. package/lib/title-bar/components/title-tab/index.mjs.map +0 -1
  330. package/lib/title-bar/components/title-tab/tab-item.d.mts +0 -10
  331. package/lib/title-bar/components/title-tab/tab-item.d.ts +0 -10
  332. package/lib/title-bar/components/title-tab/tab-item.js +0 -250
  333. package/lib/title-bar/components/title-tab/tab-item.js.map +0 -1
  334. package/lib/title-bar/components/title-tab/tab-item.mjs +0 -13
  335. package/lib/title-bar/components/title-tab/tab-item.mjs.map +0 -1
  336. package/lib/title-bar/components/title-tab/type.d.mts +0 -8
  337. package/lib/title-bar/components/title-tab/type.d.ts +0 -8
  338. package/lib/title-bar/components/title-tab/type.js +0 -4
  339. package/lib/title-bar/components/title-tab/type.js.map +0 -1
  340. package/lib/title-bar/components/title-tab/type.mjs +0 -3
  341. package/lib/title-bar/components/title-tab/type.mjs.map +0 -1
  342. package/lib/title-bar/components/title1.d.mts +0 -10
  343. package/lib/title-bar/components/title1.d.ts +0 -10
  344. package/lib/title-bar/components/title1.js +0 -123
  345. package/lib/title-bar/components/title1.js.map +0 -1
  346. package/lib/title-bar/components/title1.mjs +0 -6
  347. package/lib/title-bar/components/title1.mjs.map +0 -1
  348. package/lib/title-bar/components/title2.d.mts +0 -11
  349. package/lib/title-bar/components/title2.d.ts +0 -11
  350. package/lib/title-bar/components/title2.js +0 -131
  351. package/lib/title-bar/components/title2.js.map +0 -1
  352. package/lib/title-bar/components/title2.mjs +0 -6
  353. package/lib/title-bar/components/title2.mjs.map +0 -1
  354. package/lib/title-bar/stories/title-tab.stories.d.mts +0 -17
  355. package/lib/title-bar/stories/title-tab.stories.d.ts +0 -17
  356. package/lib/title-bar/stories/title-tab.stories.js +0 -391
  357. package/lib/title-bar/stories/title-tab.stories.js.map +0 -1
  358. package/lib/title-bar/stories/title-tab.stories.mjs +0 -39
  359. package/lib/title-bar/stories/title-tab.stories.mjs.map +0 -1
  360. package/lib/title-bar/stories/title1.stories.d.mts +0 -18
  361. package/lib/title-bar/stories/title1.stories.d.ts +0 -18
  362. package/lib/title-bar/stories/title1.stories.js +0 -155
  363. package/lib/title-bar/stories/title1.stories.js.map +0 -1
  364. package/lib/title-bar/stories/title1.stories.mjs +0 -35
  365. package/lib/title-bar/stories/title1.stories.mjs.map +0 -1
  366. package/lib/title-bar/stories/title2.stories.d.mts +0 -18
  367. package/lib/title-bar/stories/title2.stories.d.ts +0 -18
  368. package/lib/title-bar/stories/title2.stories.js +0 -304
  369. package/lib/title-bar/stories/title2.stories.js.map +0 -1
  370. package/lib/title-bar/stories/title2.stories.mjs +0 -38
  371. package/lib/title-bar/stories/title2.stories.mjs.map +0 -1
  372. package/lib/types/index.js.map +0 -1
  373. package/lib/types/index.mjs.map +0 -1
@@ -0,0 +1,552 @@
1
+ const require_chunk = require('./chunk-BxBTb9qk.js');
2
+ const require_constants = require('./constants-BmxSMOOn.js');
3
+ const require_constants$1 = require('./constants-K2ObjToq.js');
4
+ const require_paragraph = require('./paragraph-CJvb0_cM.js');
5
+ const require_theme = require('./theme-DDBlIbeS.js');
6
+ let react = require("react");
7
+ react = require_chunk.__toESM(react);
8
+ let clsx = require("clsx");
9
+ clsx = require_chunk.__toESM(clsx);
10
+ let react_jsx_runtime = require("react/jsx-runtime");
11
+ react_jsx_runtime = require_chunk.__toESM(react_jsx_runtime);
12
+
13
+ //#region src/button/components/text-button/theme.ts
14
+ const getDisabledContainerTheme = (theme) => {
15
+ return ["text-gray-400 hover:text-gray-400", { "text-gray-500 hover:text-gray-500": theme === require_theme.THEME.photography || theme === require_theme.THEME.transparent }];
16
+ };
17
+ const getActiveContainerTheme = (theme, style) => {
18
+ return [
19
+ {
20
+ "text-gray-800 hover:text-gray-800": style === require_constants.STYLE.light,
21
+ "text-brand-heavy hover:text-brand-heavy": style === require_constants.STYLE.dark,
22
+ "text-brand-dark hover:text-brand-dark": style === require_constants.STYLE.brand
23
+ },
24
+ {
25
+ "text-gray-400 hover:text-gray-400": theme === require_theme.THEME.photography && style === require_constants.STYLE.light,
26
+ "text-supportive-pastel hover:text-supportive-pastel": theme === require_theme.THEME.photography && style !== require_constants.STYLE.light
27
+ },
28
+ {
29
+ "text-gray-black hover:text-gray-black": theme === require_theme.THEME.transparent && style === require_constants.STYLE.light,
30
+ "text-gray-200 hover:text-gray-200": theme === require_theme.THEME.transparent && style !== require_constants.STYLE.light
31
+ }
32
+ ];
33
+ };
34
+ const getContainerTheme = (theme, style) => {
35
+ return [
36
+ {
37
+ "text-gray-600 hover:text-gray-800": style === require_constants.STYLE.light,
38
+ "text-gray-800 hover:text-brand-heavy": style === require_constants.STYLE.dark,
39
+ "text-brand-heavy hover:text-brand-dark": style === require_constants.STYLE.brand
40
+ },
41
+ {
42
+ "text-gray-300 hover:text-gray-400": theme === require_theme.THEME.photography && style === require_constants.STYLE.light,
43
+ "text-gray-white hover:text-supportive-pastel": theme === require_theme.THEME.photography && style === require_constants.STYLE.dark,
44
+ "text-supportive-faded hover:text-supportive-pastel": theme === require_theme.THEME.photography && style === require_constants.STYLE.brand
45
+ },
46
+ {
47
+ "text-gray-800 hover:text-gray-black": theme === require_theme.THEME.transparent && style === require_constants.STYLE.light,
48
+ "text-gray-white hover:text-gray-200": theme === require_theme.THEME.transparent && style !== require_constants.STYLE.light
49
+ }
50
+ ];
51
+ };
52
+
53
+ //#endregion
54
+ //#region src/button/components/text-button/index.tsx
55
+ const TextButton = ({ text, leftIconComponent, rightIconComponent, size = require_constants.SIZE.s, theme = require_theme.THEME.normal, style = require_constants.STYLE.dark, active = false, disabled = false, loading = false, className = "" }) => {
56
+ const TextJSX = (0, react.useMemo)(() => size === require_constants.SIZE.s ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_paragraph.P2, {
57
+ text,
58
+ weight: require_paragraph.P2.Weight.bold
59
+ }) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_paragraph.P1, {
60
+ text,
61
+ weight: require_paragraph.P1.Weight.bold
62
+ }), [size, text]);
63
+ const themeClass = (0, react.useMemo)(() => {
64
+ return (disabled ? getDisabledContainerTheme : active ? getActiveContainerTheme : getContainerTheme)(theme, style);
65
+ }, [
66
+ disabled,
67
+ active,
68
+ theme,
69
+ style
70
+ ]);
71
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
72
+ className: (0, clsx.default)("flex items-center", {
73
+ "cursor-default": disabled,
74
+ "cursor-pointer": !disabled
75
+ }, themeClass, className),
76
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
77
+ className: "relative flex justify-center items-center",
78
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
79
+ className: (0, clsx.default)("flex justify-center items-center", {
80
+ "opacity-0": loading,
81
+ "opacity-100": !loading
82
+ }),
83
+ children: [
84
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
85
+ className: "flex items-center mr-[4px]",
86
+ children: leftIconComponent
87
+ }),
88
+ TextJSX,
89
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
90
+ className: "flex items-center ml-[4px]",
91
+ children: rightIconComponent
92
+ })
93
+ ]
94
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { className: (0, clsx.default)("inline-block absolute box-border animate-spin", "border-2 border-solid border-gray-400 border-t-gray-600 rounded-[50%]", {
95
+ "size-[18px]": size === require_constants.SIZE.s,
96
+ "size-[24px]": size === require_constants.SIZE.l
97
+ }, {
98
+ "opacity-0": !loading,
99
+ "opacity-100": loading
100
+ }) })]
101
+ })
102
+ });
103
+ };
104
+ TextButton.Size = require_constants.SIZE;
105
+ TextButton.Style = require_constants.STYLE;
106
+ TextButton.Theme = require_theme.THEME;
107
+ var text_button_default = TextButton;
108
+
109
+ //#endregion
110
+ //#region src/button/components/icon-button/theme.ts
111
+ const getPrimaryIconButtonTheme = (theme, active, disabled) => {
112
+ if (disabled) return ["text-gray-400 hover:text-gray-400"];
113
+ return [
114
+ "text-gray-600 hover:text-gray-800 [&>svg]:bg-gray-600 desktop:[&>svg]:hover:bg-gray-800",
115
+ { "text-brand-heavy hover:text-brand-heavy [&>svg]:bg-brand-heavy desktop:[&>svg]:hover:bg-brand-heavy": theme === require_theme.THEME.normal && active },
116
+ {
117
+ "text-gray-white hover:text-supportive-pastel [&>svg]:bg-gray-white [&>svg]:hover:bg-supportive-pastel": theme === require_theme.THEME.photography && !active,
118
+ "text-supportive-pastel hover:text-supportive-pastel [&>svg]:bg-supportive-pastel [&>svg]:hover:bg-supportive-pastel": theme === require_theme.THEME.photography && active
119
+ },
120
+ {
121
+ "text-gray-white hover:text-gray-200 [&>svg]:bg-gray-white [&>svg]:hover:bg-gray-200": theme === require_theme.THEME.transparent && !active,
122
+ "text-gray-white hover:text-gray-white [&>svg]:bg-gray-white [&>svg]:hover:bg-gray-white": theme === require_theme.THEME.transparent && active
123
+ }
124
+ ];
125
+ };
126
+ const getSecondaryIconButtonTheme = (theme, active, disabled) => {
127
+ if (disabled) return ["text-gray-400 hover:text-gray-400"];
128
+ return [
129
+ "text-gray-400 hover:text-gray-600 [&>svg]:bg-gray-400 [&>svg]:hover:bg-gray-600",
130
+ { "text-brand-heavy hover:text-brand-heavy [&>svg]:bg-brand-heavy [&>svg]:hover:bg-brand-heavy": theme === require_theme.THEME.normal && active },
131
+ {
132
+ "text-gray-400 hover:text-supportive-pastel [&>svg]:bg-gray-400 [&>svg]:hover:bg-supportive-pastel": theme === require_theme.THEME.photography && !active,
133
+ "text-supportive-pastel hover:text-supportive-pastel [&>svg]:bg-supportive-pastel [&>svg]:hover:bg-supportive-pastel": theme === require_theme.THEME.photography && active
134
+ },
135
+ {
136
+ "text-gray-600 hover:text-gray-white [&>svg]:bg-gray-600 [&>svg]:hover:bg-gray-white": theme === require_theme.THEME.transparent && !active,
137
+ "text-gray-600 hover:text-gray-600 [&>svg]:bg-gray-600 [&>svg]:hover:bg-gray-600": theme === require_theme.THEME.transparent && active
138
+ }
139
+ ];
140
+ };
141
+
142
+ //#endregion
143
+ //#region src/button/components/icon-button/index.tsx
144
+ const IconButton = ({ iconComponent, theme = require_theme.THEME.normal, type = require_constants.TYPE.primary, disabled = false, active = false, className = "", onClick = () => {} }) => {
145
+ const themeClass = type === require_constants.TYPE.primary ? getPrimaryIconButtonTheme(theme, active, disabled) : getSecondaryIconButtonTheme(theme, active, disabled);
146
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
147
+ className: (0, clsx.default)("flex", "[&>svg]:w-[24px] [&>svg]:h-[24px]", disabled ? "cursor-default" : "cursor-pointer", themeClass, className),
148
+ onClick: disabled ? () => {} : onClick,
149
+ type: "button",
150
+ children: iconComponent
151
+ });
152
+ };
153
+ IconButton.Theme = require_theme.THEME;
154
+ IconButton.Type = require_constants.TYPE;
155
+ var icon_button_default = IconButton;
156
+
157
+ //#endregion
158
+ //#region src/button/components/menu-button/index.tsx
159
+ const MenuButton = ({ text, color, fontWeight, className = "", p1ClassName = "" }) => {
160
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
161
+ className: (0, clsx.default)("cursor-pointer", color, className),
162
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_paragraph.P1, {
163
+ text,
164
+ weight: fontWeight,
165
+ className: (0, clsx.default)("py-[8px]", p1ClassName)
166
+ })
167
+ });
168
+ };
169
+ MenuButton.FontWeight = require_constants$1.WEIGHT;
170
+ var menu_button_default = MenuButton;
171
+
172
+ //#endregion
173
+ //#region src/button/components/pill-button/theme.ts
174
+ const getFilledPillButtonTheme = (theme, disabled, style) => {
175
+ if (disabled) switch (theme) {
176
+ case require_theme.THEME.transparent: switch (style) {
177
+ case require_constants.STYLE.light: return {
178
+ color: "text-gray-white",
179
+ bgColor: "bg-gray-400",
180
+ hoverColor: "hover:text-gray-white",
181
+ hoverBgColor: "hover:bg-gray-400",
182
+ borderColor: "border-gray-400",
183
+ svgBgColor: "[&>svg]:bg-gray-white",
184
+ borderHoverColor: "hover:border-gray-400",
185
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-white"
186
+ };
187
+ default: return {
188
+ color: "text-gray-700",
189
+ bgColor: "bg-gray-500",
190
+ hoverColor: "hover:text-gray-700",
191
+ hoverBgColor: "hover:bg-gray-500",
192
+ borderColor: "border-gray-500",
193
+ svgBgColor: "[&>svg]:bg-gray-700",
194
+ borderHoverColor: "hover:border-gray-500",
195
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-500"
196
+ };
197
+ }
198
+ case require_theme.THEME.photography: return {
199
+ color: "text-gray-700",
200
+ bgColor: "bg-gray-500",
201
+ hoverColor: "hover:text-gray-700",
202
+ hoverBgColor: "hover:bg-gray-500",
203
+ borderColor: "border-gray-500",
204
+ svgBgColor: "[&>svg]:bg-gray-700",
205
+ borderHoverColor: "hover:border-gray-500",
206
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-700"
207
+ };
208
+ default: return {
209
+ color: "text-gray-white",
210
+ bgColor: "bg-gray-400",
211
+ hoverColor: "hover:text-gray-white",
212
+ hoverBgColor: "hover:bg-gray-400",
213
+ borderColor: "border-gray-400",
214
+ svgBgColor: "[&>svg]:bg-gray-white",
215
+ borderHoverColor: "hover:border-gray-400",
216
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-white"
217
+ };
218
+ }
219
+ switch (theme) {
220
+ case require_theme.THEME.photography: switch (style) {
221
+ case require_constants.STYLE.dark: return {
222
+ color: "text-photo-dark",
223
+ bgColor: "bg-gray-white",
224
+ hoverColor: "hover:text-photo-dark",
225
+ hoverBgColor: "hover:bg-gray-200",
226
+ borderColor: "border-gray-white",
227
+ svgBgColor: "[&>svg]:bg-photo-dark",
228
+ borderHoverColor: "hover:border-gray-200",
229
+ svgHoverBgColor: "hover:[&>svg]:bg-photo-dark"
230
+ };
231
+ case require_constants.STYLE.light: return {
232
+ color: "text-photo-dark",
233
+ bgColor: "bg-gray-300",
234
+ hoverColor: "hover:text-photo-dark",
235
+ hoverBgColor: "hover:bg-gray-400",
236
+ borderColor: "border-gray-300",
237
+ svgBgColor: "[&>svg]:bg-photo-dark",
238
+ borderHoverColor: "hover:border-gray-400",
239
+ svgHoverBgColor: "hover:[&>svg]:bg-photo-dark"
240
+ };
241
+ default: return {
242
+ color: "text-photo-dark",
243
+ bgColor: "bg-supportive-faded",
244
+ hoverColor: "hover:text-photo-dark",
245
+ hoverBgColor: "hover:bg-supportive-pastel",
246
+ borderColor: "border-supportive-faded",
247
+ svgBgColor: "[&>svg]:bg-photo-dark",
248
+ borderHoverColor: "hover:border-supportive-pastel",
249
+ svgHoverBgColor: "hover:[&>svg]:bg-photo-dark"
250
+ };
251
+ }
252
+ case require_theme.THEME.transparent: switch (style) {
253
+ case require_constants.STYLE.dark: return {
254
+ color: "text-gray-800",
255
+ bgColor: "bg-gray-300",
256
+ hoverColor: "hover:text-gray-800",
257
+ hoverBgColor: "hover:bg-gray-400",
258
+ borderColor: "border-gray-300",
259
+ svgBgColor: "[&>svg]:bg-gray-800",
260
+ borderHoverColor: "hover:border-gray-400",
261
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-800"
262
+ };
263
+ case require_constants.STYLE.light: return {
264
+ color: "text-gray-white",
265
+ bgColor: "bg-gray-800",
266
+ hoverColor: "hover:text-gray-white",
267
+ hoverBgColor: "hover:bg-gray-black",
268
+ borderColor: "border-gray-800",
269
+ svgBgColor: "[&>svg]:bg-gray-white",
270
+ borderHoverColor: "hover:border-gray-black",
271
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-white"
272
+ };
273
+ default: return {
274
+ color: "text-gray-800",
275
+ bgColor: "bg-gray-white",
276
+ hoverColor: "hover:text-gray-800",
277
+ hoverBgColor: "hover:bg-gray-200",
278
+ borderColor: "border-gray-white",
279
+ svgBgColor: "[&>svg]:bg-gray-800",
280
+ borderHoverColor: "hover:border-gray-200",
281
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-800"
282
+ };
283
+ }
284
+ default: switch (style) {
285
+ case require_constants.STYLE.dark: return {
286
+ color: "text-gray-white",
287
+ bgColor: "bg-gray-800",
288
+ hoverColor: "hover:text-gray-white",
289
+ hoverBgColor: "hover:bg-gray-black",
290
+ borderColor: "border-gray-800",
291
+ svgBgColor: "[&>svg]:bg-gray-white",
292
+ borderHoverColor: "hover:border-gray-black",
293
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-white"
294
+ };
295
+ case require_constants.STYLE.light: return {
296
+ color: "text-gray-800",
297
+ bgColor: "bg-gray-white",
298
+ hoverColor: "hover:text-gray-800",
299
+ hoverBgColor: "hover:bg-gray-200",
300
+ borderColor: "border-gray-white",
301
+ svgBgColor: "[&>svg]:bg-gray-800",
302
+ borderHoverColor: "hover:border-gray-200",
303
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-800"
304
+ };
305
+ default: return {
306
+ color: "text-gray-white",
307
+ bgColor: "bg-brand-heavy",
308
+ hoverColor: "hover:text-gray-white",
309
+ hoverBgColor: "hover:bg-brand-dark",
310
+ borderColor: "border-brand-heavy",
311
+ svgBgColor: "[&>svg]:bg-gray-white",
312
+ borderHoverColor: "hover:border-brand-dark",
313
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-white"
314
+ };
315
+ }
316
+ }
317
+ };
318
+ const getOutlinePillButtonTheme = (theme, disabled, style) => {
319
+ if (disabled) switch (theme) {
320
+ case require_theme.THEME.transparent: switch (style) {
321
+ case require_constants.STYLE.light: return {
322
+ color: "text-gray-400",
323
+ bgColor: "bg-gray-400",
324
+ hoverColor: "hover:text-gray-400",
325
+ hoverBgColor: "hover:bg-gray-400",
326
+ borderColor: "border-gray-400",
327
+ svgBgColor: "[&>svg]:bg-gray-400",
328
+ borderHoverColor: "hover:border-gray-400",
329
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-400"
330
+ };
331
+ default: return {
332
+ color: "text-gray-500",
333
+ bgColor: "bg-gray-500",
334
+ hoverColor: "hover:text-gray-500",
335
+ hoverBgColor: "hover:bg-gray-500",
336
+ borderColor: "border-gray-500",
337
+ svgBgColor: "[&>svg]:bg-gray-500",
338
+ borderHoverColor: "hover:border-gray-500",
339
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-500"
340
+ };
341
+ }
342
+ case require_theme.THEME.photography: return {
343
+ color: "text-gray-500",
344
+ bgColor: "bg-gray-500",
345
+ hoverColor: "hover:text-gray-500",
346
+ hoverBgColor: "hover:bg-gray-500",
347
+ borderColor: "border-gray-500",
348
+ svgBgColor: "[&>svg]:bg-gray-500",
349
+ borderHoverColor: "hover:border-gray-500",
350
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-500"
351
+ };
352
+ default: return {
353
+ color: "text-gray-400",
354
+ bgColor: "bg-gray-400",
355
+ hoverColor: "hover:text-gray-400",
356
+ hoverBgColor: "hover:bg-gray-400",
357
+ borderColor: "border-gray-400",
358
+ svgBgColor: "[&>svg]:bg-gray-400",
359
+ borderHoverColor: "hover:border-gray-400",
360
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-400"
361
+ };
362
+ }
363
+ switch (theme) {
364
+ case require_theme.THEME.photography: switch (style) {
365
+ case require_constants.STYLE.dark: return {
366
+ color: "text-gray-white",
367
+ bgColor: "bg-gray-white",
368
+ hoverColor: "hover:text-gray-200",
369
+ hoverBgColor: "hover:bg-gray-200",
370
+ borderColor: "border-gray-white",
371
+ svgBgColor: "[&>svg]:bg-gray-white",
372
+ borderHoverColor: "hover:border-gray-200",
373
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-200"
374
+ };
375
+ case require_constants.STYLE.light: return {
376
+ color: "text-gray-300",
377
+ bgColor: "bg-gray-300",
378
+ hoverColor: "hover:text-gray-400",
379
+ hoverBgColor: "hover:bg-gray-400",
380
+ borderColor: "border-gray-300",
381
+ svgBgColor: "[&>svg]:bg-gray-300",
382
+ borderHoverColor: "hover:border-gray-400",
383
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-400"
384
+ };
385
+ default: return {
386
+ color: "text-supportive-faded",
387
+ bgColor: "bg-supportive-faded",
388
+ hoverColor: "hover:text-supportive-pastel",
389
+ hoverBgColor: "hover:bg-supportive-pastel",
390
+ borderColor: "border-supportive-faded",
391
+ svgBgColor: "[&>svg]:bg-supportive-faded",
392
+ borderHoverColor: "hover:border-supportive-pastel",
393
+ svgHoverBgColor: "hover:[&>svg]:bg-supportive-pastel"
394
+ };
395
+ }
396
+ case require_theme.THEME.transparent: switch (style) {
397
+ case require_constants.STYLE.dark: return {
398
+ color: "text-gray-300",
399
+ bgColor: "bg-gray-300",
400
+ hoverColor: "hover:text-gray-400",
401
+ hoverBgColor: "hover:bg-gray-400",
402
+ borderColor: "border-gray-300",
403
+ svgBgColor: "[&>svg]:bg-gray-300",
404
+ borderHoverColor: "hover:border-gray-400",
405
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-400"
406
+ };
407
+ case require_constants.STYLE.light: return {
408
+ color: "text-gray-800",
409
+ bgColor: "bg-gray-800",
410
+ hoverColor: "hover:text-gray-black",
411
+ hoverBgColor: "hover:bg-gray-black",
412
+ borderColor: "border-gray-800",
413
+ svgBgColor: "[&>svg]:bg-gray-800",
414
+ borderHoverColor: "hover:border-gray-black",
415
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-black"
416
+ };
417
+ default: return {
418
+ color: "text-gray-white",
419
+ bgColor: "bg-gray-white",
420
+ hoverColor: "hover:text-gray-200",
421
+ hoverBgColor: "hover:bg-gray-200",
422
+ borderColor: "border-gray-white",
423
+ svgBgColor: "[&>svg]:bg-gray-white",
424
+ borderHoverColor: "hover:border-gray-200",
425
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-200"
426
+ };
427
+ }
428
+ default: switch (style) {
429
+ case require_constants.STYLE.dark: return {
430
+ color: "text-gray-800",
431
+ bgColor: "bg-gray-800",
432
+ hoverColor: "hover:text-gray-black",
433
+ hoverBgColor: "hover:bg-gray-black",
434
+ borderColor: "border-gray-800",
435
+ svgBgColor: "[&>svg]:bg-gray-800",
436
+ borderHoverColor: "hover:border-gray-black",
437
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-black"
438
+ };
439
+ case require_constants.STYLE.light: return {
440
+ color: "text-gray-800",
441
+ bgColor: "bg-gray-white",
442
+ hoverColor: "hover:text-gray-800",
443
+ hoverBgColor: "hover:bg-gray-200",
444
+ borderColor: "border-gray-white",
445
+ svgBgColor: "[&>svg]:bg-gray-800",
446
+ borderHoverColor: "hover:border-gray-200",
447
+ svgHoverBgColor: "hover:[&>svg]:bg-gray-800"
448
+ };
449
+ default: return {
450
+ color: "text-brand-heavy",
451
+ bgColor: "bg-brand-heavy",
452
+ hoverColor: "hover:text-brand-dark",
453
+ hoverBgColor: "hover:bg-brand-dark",
454
+ borderColor: "border-brand-heavy",
455
+ svgBgColor: "[&>svg]:bg-brand-heavy",
456
+ borderHoverColor: "hover:border-brand-dark",
457
+ svgHoverBgColor: "hover:[&>svg]:bg-brand-dark"
458
+ };
459
+ }
460
+ }
461
+ };
462
+
463
+ //#endregion
464
+ //#region src/button/components/pill-button/index.tsx
465
+ const PillButton = ({ text = "", leftIconComponent = null, rightIconComponent = null, size = require_constants.SIZE.s, theme = require_theme.THEME.normal, type = require_constants.TYPE.primary, style = require_constants.STYLE.brand, disabled = false, loading = false, className = "" }) => {
466
+ const { color, bgColor, hoverColor, hoverBgColor, borderColor, svgBgColor, borderHoverColor, svgHoverBgColor } = (type === require_constants.TYPE.primary ? getFilledPillButtonTheme : getOutlinePillButtonTheme)(theme, disabled, style);
467
+ const padding = size === require_constants.SIZE.s ? "py-[4px] px-[12px]" : "py-[8px] px-[16px]";
468
+ const iconSize = size === require_constants.SIZE.s ? "[&>svg]:h-[18px] [&>svg]:w-[18px]" : "[&>svg]:h-[24px] [&>svg]:w-[24px]";
469
+ const TextJSX = (0, react.useMemo)(() => size === require_constants.SIZE.s ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_paragraph.P2, {
470
+ text,
471
+ weight: require_paragraph.P2.Weight.bold
472
+ }) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_paragraph.P1, {
473
+ text,
474
+ weight: require_paragraph.P1.Weight.bold
475
+ }), [size, text]);
476
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
477
+ className: (0, clsx.default)("w-fit flex items-center rounded-[40px] border-solid border-[1.5px]", borderColor, color, padding, disabled || loading ? "cursor-not-allowed" : "cursor-pointer", type === require_constants.TYPE.primary ? bgColor : "bg-transparent", iconSize, svgBgColor, hoverColor, type === require_constants.TYPE.primary ? hoverBgColor : "bg-transparent", borderHoverColor, svgHoverBgColor, className),
478
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
479
+ className: "relative flex justify-center items-center",
480
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
481
+ className: (0, clsx.default)("flex justify-center items-center", {
482
+ "opacity-0": loading,
483
+ "opacity-100": !loading
484
+ }),
485
+ children: [
486
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
487
+ className: "flex items-center mr-[4px]",
488
+ children: leftIconComponent
489
+ }),
490
+ TextJSX,
491
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
492
+ className: "flex items-center ml-[4px]",
493
+ children: rightIconComponent
494
+ })
495
+ ]
496
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { className: (0, clsx.default)("inline-block absolute box-border animate-spin", "border-2 border-solid border-gray-400 border-t-gray-600 rounded-[50%]", {
497
+ "size-[18px]": size === require_constants.SIZE.s,
498
+ "size-[24px]": size === require_constants.SIZE.l
499
+ }, {
500
+ "opacity-0": !loading,
501
+ "opacity-100": loading
502
+ }) })]
503
+ })
504
+ });
505
+ };
506
+ PillButton.Theme = require_theme.THEME;
507
+ PillButton.Type = require_constants.TYPE;
508
+ PillButton.Size = require_constants.SIZE;
509
+ PillButton.Style = require_constants.STYLE;
510
+ var pill_button_default = PillButton;
511
+
512
+ //#endregion
513
+ //#region src/button/index.ts
514
+ var button_default = {
515
+ TextButton: text_button_default,
516
+ IconButton: icon_button_default,
517
+ MenuButton: menu_button_default,
518
+ PillButton: pill_button_default
519
+ };
520
+
521
+ //#endregion
522
+ Object.defineProperty(exports, 'button_default', {
523
+ enumerable: true,
524
+ get: function () {
525
+ return button_default;
526
+ }
527
+ });
528
+ Object.defineProperty(exports, 'icon_button_default', {
529
+ enumerable: true,
530
+ get: function () {
531
+ return icon_button_default;
532
+ }
533
+ });
534
+ Object.defineProperty(exports, 'menu_button_default', {
535
+ enumerable: true,
536
+ get: function () {
537
+ return menu_button_default;
538
+ }
539
+ });
540
+ Object.defineProperty(exports, 'pill_button_default', {
541
+ enumerable: true,
542
+ get: function () {
543
+ return pill_button_default;
544
+ }
545
+ });
546
+ Object.defineProperty(exports, 'text_button_default', {
547
+ enumerable: true,
548
+ get: function () {
549
+ return text_button_default;
550
+ }
551
+ });
552
+ //# sourceMappingURL=button-CO0UXA6C.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-CO0UXA6C.js","names":["getDisabledContainerTheme: ThemeFunc","THEME","getActiveContainerTheme: ThemeFunc","STYLE","getContainerTheme: ThemeFunc","TextButton: FC<TextButtonProps> & {\n Size: typeof SIZE\n Style: typeof STYLE\n Theme: typeof THEME\n}","SIZE","THEME","STYLE","P2","P1","getPrimaryIconButtonTheme: ThemeFunc","THEME","getSecondaryIconButtonTheme: ThemeFunc","IconButton: React.FC<IconButtonProps> & {\n Theme: typeof THEME\n Type: typeof TYPE\n}","THEME","TYPE","MenuButton: React.FC<MenuButtonProps> & { FontWeight: typeof WEIGHT }","P1","WEIGHT","THEME","STYLE","PillButton: FC<PillButtonProps> & {\n Theme: typeof THEME\n Type: typeof TYPE\n Size: typeof SIZE\n Style: typeof STYLE\n}","SIZE","THEME","TYPE","STYLE","P2","P1"],"sources":["../src/button/components/text-button/theme.ts","../src/button/components/text-button/index.tsx","../src/button/components/icon-button/theme.ts","../src/button/components/icon-button/index.tsx","../src/button/components/menu-button/index.tsx","../src/button/components/pill-button/theme.ts","../src/button/components/pill-button/index.tsx","../src/button/index.ts"],"sourcesContent":["// theme\nimport { THEME, type Theme } from '../../../constants/theme'\n// type\nimport type { ClassArray } from 'clsx'\n// constants\nimport { STYLE, type Style } from '../../constants'\n\ntype ThemeFunc = (theme: Theme, style?: Style) => ClassArray\n\nexport const getDisabledContainerTheme: ThemeFunc = (theme) => {\n return [\n // default theme\n 'text-gray-400 hover:text-gray-400',\n // photography & transparent theme\n {\n 'text-gray-500 hover:text-gray-500':\n theme === THEME.photography || theme === THEME.transparent,\n },\n ]\n}\n\nexport const getActiveContainerTheme: ThemeFunc = (theme, style) => {\n return [\n // default theme\n {\n 'text-gray-800 hover:text-gray-800': style === STYLE.light,\n 'text-brand-heavy hover:text-brand-heavy': style === STYLE.dark,\n 'text-brand-dark hover:text-brand-dark': style === STYLE.brand,\n },\n // photography theme\n {\n 'text-gray-400 hover:text-gray-400':\n theme === THEME.photography && style === STYLE.light,\n 'text-supportive-pastel hover:text-supportive-pastel':\n theme === THEME.photography && style !== STYLE.light,\n },\n // transparent theme\n {\n 'text-gray-black hover:text-gray-black':\n theme === THEME.transparent && style === STYLE.light,\n 'text-gray-200 hover:text-gray-200':\n theme === THEME.transparent && style !== STYLE.light,\n },\n ]\n}\n\nexport const getContainerTheme: ThemeFunc = (theme, style) => {\n return [\n // default theme\n {\n 'text-gray-600 hover:text-gray-800': style === STYLE.light,\n 'text-gray-800 hover:text-brand-heavy': style === STYLE.dark,\n 'text-brand-heavy hover:text-brand-dark': style === STYLE.brand,\n },\n // photography\n {\n 'text-gray-300 hover:text-gray-400':\n theme === THEME.photography && style === STYLE.light,\n 'text-gray-white hover:text-supportive-pastel':\n theme === THEME.photography && style === STYLE.dark,\n 'text-supportive-faded hover:text-supportive-pastel':\n theme === THEME.photography && style === STYLE.brand,\n },\n // transparent theme\n {\n 'text-gray-800 hover:text-gray-black':\n theme === THEME.transparent && style === STYLE.light,\n 'text-gray-white hover:text-gray-200':\n theme === THEME.transparent && style !== STYLE.light,\n },\n ]\n}\n","import { type FC, type ReactElement, useMemo } from 'react'\nimport clsx from 'clsx'\n// components\nimport { P1, P2 } from '../../../text/paragraph'\n// constants\nimport { SIZE, type Size, STYLE, type Style } from '../../constants'\nimport { THEME, type Theme } from '../../../constants/theme'\n// utils\nimport {\n getContainerTheme,\n getActiveContainerTheme,\n getDisabledContainerTheme,\n} from './theme'\n\ntype TextButtonProps = {\n text: string\n leftIconComponent?: ReactElement\n rightIconComponent?: ReactElement\n size?: Size\n style?: Style\n theme?: Theme\n active?: boolean\n disabled?: boolean\n loading?: boolean\n className?: string\n}\nconst TextButton: FC<TextButtonProps> & {\n Size: typeof SIZE\n Style: typeof STYLE\n Theme: typeof THEME\n} = ({\n text,\n leftIconComponent,\n rightIconComponent,\n size = SIZE.s,\n theme = THEME.normal,\n style = STYLE.dark,\n active = false,\n disabled = false,\n loading = false,\n className = '',\n}) => {\n const TextJSX = useMemo(\n () =>\n size === SIZE.s ? (\n <P2 text={text} weight={P2.Weight.bold} />\n ) : (\n <P1 text={text} weight={P1.Weight.bold} />\n ),\n [size, text]\n )\n const themeClass = useMemo(() => {\n const themeFunc = disabled\n ? getDisabledContainerTheme\n : active\n ? getActiveContainerTheme\n : getContainerTheme\n return themeFunc(theme, style)\n }, [disabled, active, theme, style])\n\n return (\n <div\n className={clsx(\n 'flex items-center',\n {\n 'cursor-default': disabled,\n 'cursor-pointer': !disabled,\n },\n themeClass,\n className\n )}\n >\n <div className=\"relative flex justify-center items-center\">\n <div\n className={clsx('flex justify-center items-center', {\n 'opacity-0': loading,\n 'opacity-100': !loading,\n })}\n >\n <div className=\"flex items-center mr-[4px]\">{leftIconComponent}</div>\n {TextJSX}\n <div className=\"flex items-center ml-[4px]\">{rightIconComponent}</div>\n </div>\n <span\n className={clsx(\n 'inline-block absolute box-border animate-spin',\n 'border-2 border-solid border-gray-400 border-t-gray-600 rounded-[50%]',\n {\n 'size-[18px]': size === SIZE.s,\n 'size-[24px]': size === SIZE.l,\n },\n {\n 'opacity-0': !loading,\n 'opacity-100': loading,\n }\n )}\n />\n </div>\n </div>\n )\n}\nTextButton.Size = SIZE\nTextButton.Style = STYLE\nTextButton.Theme = THEME\n\nexport default TextButton\n","// constants\nimport { THEME, type Theme } from '../../../constants/theme'\n// type\nimport type { ClassArray } from 'clsx'\n\ntype ThemeFunc = (\n theme: Theme,\n active: boolean,\n disabled: boolean\n) => ClassArray\n\nexport const getPrimaryIconButtonTheme: ThemeFunc = (\n theme,\n active,\n disabled\n) => {\n if (disabled) {\n return ['text-gray-400 hover:text-gray-400']\n }\n return [\n // default theme\n 'text-gray-600 hover:text-gray-800 [&>svg]:bg-gray-600 desktop:[&>svg]:hover:bg-gray-800',\n {\n 'text-brand-heavy hover:text-brand-heavy [&>svg]:bg-brand-heavy desktop:[&>svg]:hover:bg-brand-heavy':\n theme === THEME.normal && active,\n },\n // photography theme\n {\n 'text-gray-white hover:text-supportive-pastel [&>svg]:bg-gray-white [&>svg]:hover:bg-supportive-pastel':\n theme === THEME.photography && !active,\n 'text-supportive-pastel hover:text-supportive-pastel [&>svg]:bg-supportive-pastel [&>svg]:hover:bg-supportive-pastel':\n theme === THEME.photography && active,\n },\n // transparent theme\n {\n 'text-gray-white hover:text-gray-200 [&>svg]:bg-gray-white [&>svg]:hover:bg-gray-200':\n theme === THEME.transparent && !active,\n 'text-gray-white hover:text-gray-white [&>svg]:bg-gray-white [&>svg]:hover:bg-gray-white':\n theme === THEME.transparent && active,\n },\n ]\n}\n\nexport const getSecondaryIconButtonTheme: ThemeFunc = (\n theme,\n active,\n disabled\n) => {\n if (disabled) {\n return ['text-gray-400 hover:text-gray-400']\n }\n return [\n // default theme\n 'text-gray-400 hover:text-gray-600 [&>svg]:bg-gray-400 [&>svg]:hover:bg-gray-600',\n {\n 'text-brand-heavy hover:text-brand-heavy [&>svg]:bg-brand-heavy [&>svg]:hover:bg-brand-heavy':\n theme === THEME.normal && active,\n },\n // photography theme\n {\n 'text-gray-400 hover:text-supportive-pastel [&>svg]:bg-gray-400 [&>svg]:hover:bg-supportive-pastel':\n theme === THEME.photography && !active,\n 'text-supportive-pastel hover:text-supportive-pastel [&>svg]:bg-supportive-pastel [&>svg]:hover:bg-supportive-pastel':\n theme === THEME.photography && active,\n },\n // transparent theme\n {\n 'text-gray-600 hover:text-gray-white [&>svg]:bg-gray-600 [&>svg]:hover:bg-gray-white':\n theme === THEME.transparent && !active,\n 'text-gray-600 hover:text-gray-600 [&>svg]:bg-gray-600 [&>svg]:hover:bg-gray-600':\n theme === THEME.transparent && active,\n },\n ]\n}\n","import type React from 'react'\nimport clsx from 'clsx'\n// constants\nimport { THEME, type Theme } from '../../../constants/theme'\nimport { TYPE, type Type } from '../../constants'\n// theme\nimport { getPrimaryIconButtonTheme, getSecondaryIconButtonTheme } from './theme'\n\ntype IconButtonProps = {\n iconComponent: React.ReactElement\n theme?: Theme\n type?: Type\n disabled?: boolean\n active?: boolean\n className?: string\n onClick?: (e: React.MouseEvent<HTMLButtonElement>) => void\n}\nconst IconButton: React.FC<IconButtonProps> & {\n Theme: typeof THEME\n Type: typeof TYPE\n} = ({\n iconComponent,\n theme = THEME.normal,\n type = TYPE.primary,\n disabled = false,\n active = false,\n className = '',\n onClick = () => {},\n}) => {\n const themeClass =\n type === TYPE.primary\n ? getPrimaryIconButtonTheme(theme, active, disabled)\n : getSecondaryIconButtonTheme(theme, active, disabled)\n return (\n <button\n className={clsx(\n 'flex',\n '[&>svg]:w-[24px] [&>svg]:h-[24px]',\n disabled ? 'cursor-default' : 'cursor-pointer',\n themeClass,\n className\n )}\n onClick={disabled ? () => {} : onClick}\n type=\"button\"\n >\n {iconComponent}\n </button>\n )\n}\n\nIconButton.Theme = THEME\nIconButton.Type = TYPE\n\nexport default IconButton\n","import type React from 'react'\nimport clsx from 'clsx'\n// P1\nimport { P1 } from '../../../text/paragraph'\nimport { WEIGHT, type Weight } from '../../../text/constants'\n\ntype MenuButtonProps = {\n text: string\n color: string\n fontWeight: Weight\n className?: string\n p1ClassName?: string\n}\nconst MenuButton: React.FC<MenuButtonProps> & { FontWeight: typeof WEIGHT } = ({\n text,\n color,\n fontWeight,\n className = '',\n p1ClassName = '',\n}) => {\n return (\n <div className={clsx('cursor-pointer', color, className)}>\n <P1\n text={text}\n weight={fontWeight}\n className={clsx('py-[8px]', p1ClassName)}\n />\n </div>\n )\n}\nMenuButton.FontWeight = WEIGHT\n\nexport default MenuButton\n","import { THEME, type Theme } from '../../../constants/theme'\nimport { STYLE, type Style } from '../../constants'\n\nexport const getFilledPillButtonTheme = (\n theme: Theme,\n disabled: boolean,\n style: Style\n) => {\n if (disabled) {\n switch (theme) {\n case THEME.transparent:\n switch (style) {\n case STYLE.light:\n return {\n color: 'text-gray-white',\n bgColor: 'bg-gray-400',\n hoverColor: 'hover:text-gray-white',\n hoverBgColor: 'hover:bg-gray-400',\n borderColor: 'border-gray-400',\n svgBgColor: '[&>svg]:bg-gray-white',\n borderHoverColor: 'hover:border-gray-400',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-white',\n }\n default:\n return {\n color: 'text-gray-700',\n bgColor: 'bg-gray-500',\n hoverColor: 'hover:text-gray-700',\n hoverBgColor: 'hover:bg-gray-500',\n borderColor: 'border-gray-500',\n svgBgColor: '[&>svg]:bg-gray-700',\n borderHoverColor: 'hover:border-gray-500',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-500',\n }\n }\n case THEME.photography:\n return {\n color: 'text-gray-700',\n bgColor: 'bg-gray-500',\n hoverColor: 'hover:text-gray-700',\n hoverBgColor: 'hover:bg-gray-500',\n borderColor: 'border-gray-500',\n svgBgColor: '[&>svg]:bg-gray-700',\n borderHoverColor: 'hover:border-gray-500',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-700',\n }\n default:\n return {\n color: 'text-gray-white',\n bgColor: 'bg-gray-400',\n hoverColor: 'hover:text-gray-white',\n hoverBgColor: 'hover:bg-gray-400',\n borderColor: 'border-gray-400',\n svgBgColor: '[&>svg]:bg-gray-white',\n borderHoverColor: 'hover:border-gray-400',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-white',\n }\n }\n }\n switch (theme) {\n case THEME.photography:\n switch (style) {\n case STYLE.dark:\n return {\n color: 'text-photo-dark',\n bgColor: 'bg-gray-white',\n hoverColor: 'hover:text-photo-dark',\n hoverBgColor: 'hover:bg-gray-200',\n borderColor: 'border-gray-white',\n svgBgColor: '[&>svg]:bg-photo-dark',\n borderHoverColor: 'hover:border-gray-200',\n svgHoverBgColor: 'hover:[&>svg]:bg-photo-dark',\n }\n case STYLE.light:\n return {\n color: 'text-photo-dark',\n bgColor: 'bg-gray-300',\n hoverColor: 'hover:text-photo-dark',\n hoverBgColor: 'hover:bg-gray-400',\n borderColor: 'border-gray-300',\n svgBgColor: '[&>svg]:bg-photo-dark',\n borderHoverColor: 'hover:border-gray-400',\n svgHoverBgColor: 'hover:[&>svg]:bg-photo-dark',\n }\n default:\n return {\n color: 'text-photo-dark',\n bgColor: 'bg-supportive-faded',\n hoverColor: 'hover:text-photo-dark',\n hoverBgColor: 'hover:bg-supportive-pastel',\n borderColor: 'border-supportive-faded',\n svgBgColor: '[&>svg]:bg-photo-dark',\n borderHoverColor: 'hover:border-supportive-pastel',\n svgHoverBgColor: 'hover:[&>svg]:bg-photo-dark',\n }\n }\n case THEME.transparent:\n switch (style) {\n case STYLE.dark:\n return {\n color: 'text-gray-800',\n bgColor: 'bg-gray-300',\n hoverColor: 'hover:text-gray-800',\n hoverBgColor: 'hover:bg-gray-400',\n borderColor: 'border-gray-300',\n svgBgColor: '[&>svg]:bg-gray-800',\n borderHoverColor: 'hover:border-gray-400',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-800',\n }\n case STYLE.light:\n return {\n color: 'text-gray-white',\n bgColor: 'bg-gray-800',\n hoverColor: 'hover:text-gray-white',\n hoverBgColor: 'hover:bg-gray-black',\n borderColor: 'border-gray-800',\n svgBgColor: '[&>svg]:bg-gray-white',\n borderHoverColor: 'hover:border-gray-black',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-white',\n }\n default:\n return {\n color: 'text-gray-800',\n bgColor: 'bg-gray-white',\n hoverColor: 'hover:text-gray-800',\n hoverBgColor: 'hover:bg-gray-200',\n borderColor: 'border-gray-white',\n svgBgColor: '[&>svg]:bg-gray-800',\n borderHoverColor: 'hover:border-gray-200',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-800',\n }\n }\n default:\n switch (style) {\n case STYLE.dark:\n return {\n color: 'text-gray-white',\n bgColor: 'bg-gray-800',\n hoverColor: 'hover:text-gray-white',\n hoverBgColor: 'hover:bg-gray-black',\n borderColor: 'border-gray-800',\n svgBgColor: '[&>svg]:bg-gray-white',\n borderHoverColor: 'hover:border-gray-black',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-white',\n }\n case STYLE.light:\n return {\n color: 'text-gray-800',\n bgColor: 'bg-gray-white',\n hoverColor: 'hover:text-gray-800',\n hoverBgColor: 'hover:bg-gray-200',\n borderColor: 'border-gray-white',\n svgBgColor: '[&>svg]:bg-gray-800',\n borderHoverColor: 'hover:border-gray-200',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-800',\n }\n default:\n return {\n color: 'text-gray-white',\n bgColor: 'bg-brand-heavy',\n hoverColor: 'hover:text-gray-white',\n hoverBgColor: 'hover:bg-brand-dark',\n borderColor: 'border-brand-heavy',\n svgBgColor: '[&>svg]:bg-gray-white',\n borderHoverColor: 'hover:border-brand-dark',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-white',\n }\n }\n }\n}\n\nexport const getOutlinePillButtonTheme = (\n theme: Theme,\n disabled: boolean,\n style: Style\n) => {\n if (disabled) {\n switch (theme) {\n case THEME.transparent:\n switch (style) {\n case STYLE.light:\n return {\n color: 'text-gray-400',\n bgColor: 'bg-gray-400',\n hoverColor: 'hover:text-gray-400',\n hoverBgColor: 'hover:bg-gray-400',\n borderColor: 'border-gray-400',\n svgBgColor: '[&>svg]:bg-gray-400',\n borderHoverColor: 'hover:border-gray-400',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-400',\n }\n default:\n return {\n color: 'text-gray-500',\n bgColor: 'bg-gray-500',\n hoverColor: 'hover:text-gray-500',\n hoverBgColor: 'hover:bg-gray-500',\n borderColor: 'border-gray-500',\n svgBgColor: '[&>svg]:bg-gray-500',\n borderHoverColor: 'hover:border-gray-500',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-500',\n }\n }\n case THEME.photography:\n return {\n color: 'text-gray-500',\n bgColor: 'bg-gray-500',\n hoverColor: 'hover:text-gray-500',\n hoverBgColor: 'hover:bg-gray-500',\n borderColor: 'border-gray-500',\n svgBgColor: '[&>svg]:bg-gray-500',\n borderHoverColor: 'hover:border-gray-500',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-500',\n }\n default:\n return {\n color: 'text-gray-400',\n bgColor: 'bg-gray-400',\n hoverColor: 'hover:text-gray-400',\n hoverBgColor: 'hover:bg-gray-400',\n borderColor: 'border-gray-400',\n svgBgColor: '[&>svg]:bg-gray-400',\n borderHoverColor: 'hover:border-gray-400',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-400',\n }\n }\n }\n\n switch (theme) {\n case THEME.photography:\n switch (style) {\n case STYLE.dark:\n return {\n color: 'text-gray-white',\n bgColor: 'bg-gray-white',\n hoverColor: 'hover:text-gray-200',\n hoverBgColor: 'hover:bg-gray-200',\n borderColor: 'border-gray-white',\n svgBgColor: '[&>svg]:bg-gray-white',\n borderHoverColor: 'hover:border-gray-200',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-200',\n }\n case STYLE.light:\n return {\n color: 'text-gray-300',\n bgColor: 'bg-gray-300',\n hoverColor: 'hover:text-gray-400',\n hoverBgColor: 'hover:bg-gray-400',\n borderColor: 'border-gray-300',\n svgBgColor: '[&>svg]:bg-gray-300',\n borderHoverColor: 'hover:border-gray-400',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-400',\n }\n default:\n return {\n color: 'text-supportive-faded',\n bgColor: 'bg-supportive-faded',\n hoverColor: 'hover:text-supportive-pastel',\n hoverBgColor: 'hover:bg-supportive-pastel',\n borderColor: 'border-supportive-faded',\n svgBgColor: '[&>svg]:bg-supportive-faded',\n borderHoverColor: 'hover:border-supportive-pastel',\n svgHoverBgColor: 'hover:[&>svg]:bg-supportive-pastel',\n }\n }\n case THEME.transparent:\n switch (style) {\n case STYLE.dark:\n return {\n color: 'text-gray-300',\n bgColor: 'bg-gray-300',\n hoverColor: 'hover:text-gray-400',\n hoverBgColor: 'hover:bg-gray-400',\n borderColor: 'border-gray-300',\n svgBgColor: '[&>svg]:bg-gray-300',\n borderHoverColor: 'hover:border-gray-400',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-400',\n }\n case STYLE.light:\n return {\n color: 'text-gray-800',\n bgColor: 'bg-gray-800',\n hoverColor: 'hover:text-gray-black',\n hoverBgColor: 'hover:bg-gray-black',\n borderColor: 'border-gray-800',\n svgBgColor: '[&>svg]:bg-gray-800',\n borderHoverColor: 'hover:border-gray-black',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-black',\n }\n default:\n return {\n color: 'text-gray-white',\n bgColor: 'bg-gray-white',\n hoverColor: 'hover:text-gray-200',\n hoverBgColor: 'hover:bg-gray-200',\n borderColor: 'border-gray-white',\n svgBgColor: '[&>svg]:bg-gray-white',\n borderHoverColor: 'hover:border-gray-200',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-200',\n }\n }\n default:\n switch (style) {\n case STYLE.dark:\n return {\n color: 'text-gray-800',\n bgColor: 'bg-gray-800',\n hoverColor: 'hover:text-gray-black',\n hoverBgColor: 'hover:bg-gray-black',\n borderColor: 'border-gray-800',\n svgBgColor: '[&>svg]:bg-gray-800',\n borderHoverColor: 'hover:border-gray-black',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-black',\n }\n case STYLE.light:\n return {\n color: 'text-gray-800',\n bgColor: 'bg-gray-white',\n hoverColor: 'hover:text-gray-800',\n hoverBgColor: 'hover:bg-gray-200',\n borderColor: 'border-gray-white',\n svgBgColor: '[&>svg]:bg-gray-800',\n borderHoverColor: 'hover:border-gray-200',\n svgHoverBgColor: 'hover:[&>svg]:bg-gray-800',\n }\n default:\n return {\n color: 'text-brand-heavy',\n bgColor: 'bg-brand-heavy',\n hoverColor: 'hover:text-brand-dark',\n hoverBgColor: 'hover:bg-brand-dark',\n borderColor: 'border-brand-heavy',\n svgBgColor: '[&>svg]:bg-brand-heavy',\n borderHoverColor: 'hover:border-brand-dark',\n svgHoverBgColor: 'hover:[&>svg]:bg-brand-dark',\n }\n }\n }\n}\n","import { useMemo, type FC } from 'react'\nimport clsx from 'clsx'\n// text\nimport { P1, P2 } from '../../../text/paragraph'\n// constants\nimport {\n SIZE,\n type Size,\n STYLE,\n type Style,\n TYPE,\n type Type,\n} from '../../constants'\nimport { THEME, type Theme } from '../../../constants/theme'\n// theme\nimport { getFilledPillButtonTheme, getOutlinePillButtonTheme } from './theme'\n\ntype PillButtonProps = {\n text?: string\n leftIconComponent?: React.ReactElement\n rightIconComponent?: React.ReactElement\n size?: Size\n theme?: Theme\n type?: Type\n style?: Style\n disabled?: boolean\n loading?: boolean\n className?: string\n}\nconst PillButton: FC<PillButtonProps> & {\n Theme: typeof THEME\n Type: typeof TYPE\n Size: typeof SIZE\n Style: typeof STYLE\n} = ({\n text = '',\n leftIconComponent = null,\n rightIconComponent = null,\n size = SIZE.s,\n theme = THEME.normal,\n type = TYPE.primary,\n style = STYLE.brand,\n disabled = false,\n loading = false,\n className = '',\n}) => {\n const themeFunc =\n type === TYPE.primary ? getFilledPillButtonTheme : getOutlinePillButtonTheme\n const {\n color,\n bgColor,\n hoverColor,\n hoverBgColor,\n borderColor,\n svgBgColor,\n borderHoverColor,\n svgHoverBgColor,\n } = themeFunc(theme, disabled, style)\n\n const padding = size === SIZE.s ? 'py-[4px] px-[12px]' : 'py-[8px] px-[16px]'\n const iconSize =\n size === SIZE.s\n ? '[&>svg]:h-[18px] [&>svg]:w-[18px]'\n : '[&>svg]:h-[24px] [&>svg]:w-[24px]'\n\n const TextJSX = useMemo(\n () =>\n size === SIZE.s ? (\n <P2 text={text} weight={P2.Weight.bold} />\n ) : (\n <P1 text={text} weight={P1.Weight.bold} />\n ),\n [size, text]\n )\n\n return (\n <div\n className={clsx(\n 'w-fit flex items-center rounded-[40px] border-solid border-[1.5px]',\n borderColor,\n color,\n padding,\n disabled || loading ? 'cursor-not-allowed' : 'cursor-pointer',\n type === TYPE.primary ? bgColor : 'bg-transparent',\n iconSize,\n svgBgColor,\n hoverColor,\n type === TYPE.primary ? hoverBgColor : 'bg-transparent',\n borderHoverColor,\n svgHoverBgColor,\n className\n )}\n >\n <div className=\"relative flex justify-center items-center\">\n <div\n className={clsx('flex justify-center items-center', {\n 'opacity-0': loading,\n 'opacity-100': !loading,\n })}\n >\n <div className=\"flex items-center mr-[4px]\">{leftIconComponent}</div>\n {TextJSX}\n <div className=\"flex items-center ml-[4px]\">{rightIconComponent}</div>\n </div>\n <span\n className={clsx(\n 'inline-block absolute box-border animate-spin',\n 'border-2 border-solid border-gray-400 border-t-gray-600 rounded-[50%]',\n {\n 'size-[18px]': size === SIZE.s,\n 'size-[24px]': size === SIZE.l,\n },\n {\n 'opacity-0': !loading,\n 'opacity-100': loading,\n }\n )}\n />\n </div>\n </div>\n )\n}\nPillButton.Theme = THEME\nPillButton.Type = TYPE\nPillButton.Size = SIZE\nPillButton.Style = STYLE\n\nexport default PillButton\n","import TextButton from './components/text-button'\nimport IconButton from './components/icon-button'\nimport MenuButton from './components/menu-button'\nimport PillButton from './components/pill-button'\n\nexport { TextButton, IconButton, MenuButton, PillButton }\n\nexport default { TextButton, IconButton, MenuButton, PillButton }\n"],"mappings":"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"}