@deepnoid/ui 0.1.223 → 1.0.0

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 (252) hide show
  1. package/.turbo/turbo-build.log +266 -251
  2. package/dist/{chunk-NTNF5T5I.mjs → chunk-23KGTXH2.mjs} +1 -1
  3. package/dist/{chunk-SX3JDFTH.mjs → chunk-2K3HZMC6.mjs} +9 -9
  4. package/dist/{chunk-ZFC5O2V3.mjs → chunk-3JKORA4G.mjs} +1 -1
  5. package/dist/{chunk-HFOHFBZH.mjs → chunk-3N442F6I.mjs} +2 -2
  6. package/dist/{chunk-WA7CSZQ3.mjs → chunk-3QZPVRM5.mjs} +1 -1
  7. package/dist/{chunk-BH3I4LIZ.mjs → chunk-4V5D237Z.mjs} +1 -1
  8. package/dist/chunk-63JRWMWN.mjs +215 -0
  9. package/dist/{chunk-GDHLN463.mjs → chunk-6CNPC722.mjs} +2 -2
  10. package/dist/{chunk-4IEHQI5B.mjs → chunk-7JCCPTBU.mjs} +3 -3
  11. package/dist/chunk-A6UUVHC6.mjs +38 -0
  12. package/dist/{chunk-P5L4YI54.mjs → chunk-AOU4QX7H.mjs} +106 -40
  13. package/dist/{chunk-U7SYKG2C.mjs → chunk-BBCJTXGU.mjs} +1 -1
  14. package/dist/{chunk-4S4AAZFC.mjs → chunk-CBFUVFGI.mjs} +4 -4
  15. package/dist/{chunk-AGE57VDD.mjs → chunk-CBIV6KFQ.mjs} +22 -25
  16. package/dist/{chunk-KWHCUAFU.mjs → chunk-CGJBY53Q.mjs} +3 -3
  17. package/dist/{chunk-XZYQFBCT.mjs → chunk-DI7QXTYZ.mjs} +1 -1
  18. package/dist/{chunk-U4DJHAM5.mjs → chunk-DPWUIAVC.mjs} +413 -149
  19. package/dist/chunk-E4VJDQD5.mjs +142 -0
  20. package/dist/{chunk-TE5JU3WA.mjs → chunk-EAWNUQDB.mjs} +90 -133
  21. package/dist/{chunk-OXJX5G3O.mjs → chunk-EIVSXVP5.mjs} +2 -2
  22. package/dist/{chunk-JGG3ZUNG.mjs → chunk-GSOTTSR4.mjs} +1 -1
  23. package/dist/{chunk-NGRGAY42.mjs → chunk-HKF5BNPX.mjs} +1 -1
  24. package/dist/{chunk-2URJGQFC.mjs → chunk-JUKILR6X.mjs} +2 -2
  25. package/dist/{chunk-DW3BX4M2.mjs → chunk-KPOXK7NN.mjs} +1 -1
  26. package/dist/{chunk-5KC3IFNR.mjs → chunk-LJSGQO4B.mjs} +1 -1
  27. package/dist/{chunk-LH6Z7SDZ.mjs → chunk-M7V5YMM2.mjs} +1 -1
  28. package/dist/{chunk-44FMPRHV.mjs → chunk-MAGZDGUW.mjs} +67 -38
  29. package/dist/chunk-MV2WCFK7.mjs +1 -0
  30. package/dist/{chunk-U52FBRJ3.mjs → chunk-NJWXYTBQ.mjs} +1 -1
  31. package/dist/{chunk-3DCUMRYP.mjs → chunk-NPQBJO6G.mjs} +11 -39
  32. package/dist/chunk-OK34FKBQ.mjs +224 -0
  33. package/dist/{chunk-OC5C42CB.mjs → chunk-OPGGL4CG.mjs} +3 -3
  34. package/dist/{chunk-R2XKPG4K.mjs → chunk-OPSMMRA2.mjs} +1 -1
  35. package/dist/{chunk-4X35QQTI.mjs → chunk-P4GNXDMO.mjs} +1 -1
  36. package/dist/{chunk-MTT24BLX.mjs → chunk-PCWANNZ4.mjs} +3 -3
  37. package/dist/{chunk-V2YH54JQ.mjs → chunk-PXUYPS6M.mjs} +12 -2
  38. package/dist/chunk-RFHWRBAB.mjs +105 -0
  39. package/dist/{chunk-EJ4GDC6K.mjs → chunk-S2T4GHJA.mjs} +27 -27
  40. package/dist/{chunk-5VTYO3RF.mjs → chunk-TBI5O3OL.mjs} +1 -1
  41. package/dist/{chunk-FZYZSMSS.mjs → chunk-TBRF36RK.mjs} +1 -1
  42. package/dist/{chunk-Q3KBMVJS.mjs → chunk-TEERNFIT.mjs} +77 -46
  43. package/dist/{chunk-RH3AHG52.mjs → chunk-V5XX3CGL.mjs} +1 -1
  44. package/dist/{chunk-6WD32ERF.mjs → chunk-VO2ZIGIK.mjs} +1 -1
  45. package/dist/{chunk-H6ZQDMYU.mjs → chunk-VOOEH6OJ.mjs} +24 -38
  46. package/dist/{chunk-ACZ3DQVT.mjs → chunk-VUO5J2OK.mjs} +16 -15
  47. package/dist/{chunk-RY5VVXQ4.mjs → chunk-WYTAGN2P.mjs} +1 -1
  48. package/dist/{chunk-NDNIAALB.mjs → chunk-YBDQSEPV.mjs} +17 -18
  49. package/dist/chunk-Z4NO7SMY.mjs +460 -0
  50. package/dist/components/accordion/accordion.js +366 -4
  51. package/dist/components/accordion/accordion.mjs +2 -2
  52. package/dist/components/accordion/accordionItem.js +366 -4
  53. package/dist/components/accordion/accordionItem.mjs +2 -2
  54. package/dist/components/accordion/index.js +366 -4
  55. package/dist/components/accordion/index.mjs +3 -3
  56. package/dist/components/avatar/avatar.js +472 -44
  57. package/dist/components/avatar/avatar.mjs +3 -3
  58. package/dist/components/avatar/index.js +472 -44
  59. package/dist/components/avatar/index.mjs +3 -3
  60. package/dist/components/backdrop/backdrop.js +366 -4
  61. package/dist/components/backdrop/backdrop.mjs +2 -2
  62. package/dist/components/backdrop/index.js +366 -4
  63. package/dist/components/backdrop/index.mjs +2 -2
  64. package/dist/components/breadcrumb/breadcrumb.js +951 -74
  65. package/dist/components/breadcrumb/breadcrumb.mjs +10 -9
  66. package/dist/components/breadcrumb/index.js +951 -74
  67. package/dist/components/breadcrumb/index.mjs +10 -9
  68. package/dist/components/button/button-group.js +366 -4
  69. package/dist/components/button/button-group.mjs +2 -2
  70. package/dist/components/button/button.d.mts +82 -119
  71. package/dist/components/button/button.d.ts +82 -119
  72. package/dist/components/button/button.js +966 -355
  73. package/dist/components/button/button.mjs +6 -5
  74. package/dist/components/button/button.style.d.mts +89 -0
  75. package/dist/components/button/button.style.d.ts +89 -0
  76. package/dist/components/button/button.style.js +1172 -0
  77. package/dist/components/button/button.style.mjs +9 -0
  78. package/dist/components/button/icon-button.d.mts +45 -46
  79. package/dist/components/button/icon-button.d.ts +45 -46
  80. package/dist/components/button/icon-button.js +1125 -527
  81. package/dist/components/button/icon-button.mjs +6 -5
  82. package/dist/components/button/index.js +1154 -830
  83. package/dist/components/button/index.mjs +9 -8
  84. package/dist/components/button/text-button.d.mts +59 -39
  85. package/dist/components/button/text-button.d.ts +59 -39
  86. package/dist/components/button/text-button.js +831 -21
  87. package/dist/components/button/text-button.mjs +3 -2
  88. package/dist/components/charts/areaChart.js +366 -4
  89. package/dist/components/charts/areaChart.mjs +2 -2
  90. package/dist/components/charts/barChart.js +366 -4
  91. package/dist/components/charts/barChart.mjs +2 -2
  92. package/dist/components/charts/circularProgress.js +366 -4
  93. package/dist/components/charts/circularProgress.mjs +2 -2
  94. package/dist/components/charts/index.js +366 -4
  95. package/dist/components/charts/index.mjs +6 -6
  96. package/dist/components/charts/radarChart.js +366 -4
  97. package/dist/components/charts/radarChart.mjs +2 -2
  98. package/dist/components/charts/simpleBarChart.js +366 -4
  99. package/dist/components/charts/simpleBarChart.mjs +2 -2
  100. package/dist/components/checkbox/checkbox.js +376 -42
  101. package/dist/components/checkbox/checkbox.mjs +2 -2
  102. package/dist/components/checkbox/index.js +376 -42
  103. package/dist/components/checkbox/index.mjs +2 -2
  104. package/dist/components/chip/chip.d.mts +32 -0
  105. package/dist/components/chip/chip.d.ts +32 -0
  106. package/dist/components/chip/chip.js +496 -57
  107. package/dist/components/chip/chip.mjs +4 -4
  108. package/dist/components/chip/index.js +496 -57
  109. package/dist/components/chip/index.mjs +4 -4
  110. package/dist/components/drawer/drawer.js +366 -4
  111. package/dist/components/drawer/drawer.mjs +2 -2
  112. package/dist/components/drawer/index.js +366 -4
  113. package/dist/components/drawer/index.mjs +2 -2
  114. package/dist/components/fileUpload/fileUpload.js +1014 -402
  115. package/dist/components/fileUpload/fileUpload.mjs +12 -11
  116. package/dist/components/fileUpload/index.js +1014 -402
  117. package/dist/components/fileUpload/index.mjs +12 -11
  118. package/dist/components/icon/Icon.d.mts +23 -10
  119. package/dist/components/icon/Icon.d.ts +23 -10
  120. package/dist/components/icon/Icon.js +120 -53
  121. package/dist/components/icon/Icon.mjs +2 -2
  122. package/dist/components/icon/index.js +120 -53
  123. package/dist/components/icon/index.mjs +2 -2
  124. package/dist/components/icon/template.d.mts +5 -2
  125. package/dist/components/icon/template.d.ts +5 -2
  126. package/dist/components/icon/template.js +106 -40
  127. package/dist/components/icon/template.mjs +1 -1
  128. package/dist/components/input/index.js +511 -82
  129. package/dist/components/input/index.mjs +4 -4
  130. package/dist/components/input/input.js +511 -82
  131. package/dist/components/input/input.mjs +4 -4
  132. package/dist/components/list/index.js +486 -57
  133. package/dist/components/list/index.mjs +6 -6
  134. package/dist/components/list/list.js +366 -4
  135. package/dist/components/list/list.mjs +2 -2
  136. package/dist/components/list/listItem.js +486 -57
  137. package/dist/components/list/listItem.mjs +5 -5
  138. package/dist/components/modal/GlobalModalProvider.d.mts +2 -0
  139. package/dist/components/modal/GlobalModalProvider.d.ts +2 -0
  140. package/dist/components/modal/GlobalModalProvider.js +1028 -416
  141. package/dist/components/modal/GlobalModalProvider.mjs +12 -11
  142. package/dist/components/modal/index.d.mts +2 -0
  143. package/dist/components/modal/index.d.ts +2 -0
  144. package/dist/components/modal/index.js +1028 -416
  145. package/dist/components/modal/index.mjs +13 -12
  146. package/dist/components/modal/modal.d.mts +101 -29
  147. package/dist/components/modal/modal.d.ts +101 -29
  148. package/dist/components/modal/modal.js +1028 -416
  149. package/dist/components/modal/modal.mjs +11 -10
  150. package/dist/components/modal/useGlobalModal.d.mts +2 -0
  151. package/dist/components/modal/useGlobalModal.d.ts +2 -0
  152. package/dist/components/modal/useGlobalModal.mjs +13 -12
  153. package/dist/components/pagination/index.js +598 -212
  154. package/dist/components/pagination/index.mjs +5 -5
  155. package/dist/components/pagination/pagination.js +598 -212
  156. package/dist/components/pagination/pagination.mjs +5 -5
  157. package/dist/components/picker/datePicker.js +1029 -705
  158. package/dist/components/picker/datePicker.mjs +12 -11
  159. package/dist/components/picker/day.js +366 -4
  160. package/dist/components/picker/day.mjs +2 -2
  161. package/dist/components/picker/index.js +1027 -703
  162. package/dist/components/picker/index.mjs +15 -14
  163. package/dist/components/picker/timePicker/Panel.js +831 -21
  164. package/dist/components/picker/timePicker/Panel.mjs +10 -9
  165. package/dist/components/picker/timePicker/index.js +976 -99
  166. package/dist/components/picker/timePicker/index.mjs +12 -11
  167. package/dist/components/progress/index.js +381 -18
  168. package/dist/components/progress/index.mjs +2 -2
  169. package/dist/components/progress/progress.d.mts +21 -18
  170. package/dist/components/progress/progress.d.ts +21 -18
  171. package/dist/components/progress/progress.js +381 -18
  172. package/dist/components/progress/progress.mjs +2 -2
  173. package/dist/components/radio/index.js +389 -41
  174. package/dist/components/radio/index.mjs +2 -2
  175. package/dist/components/radio/radio.d.mts +33 -48
  176. package/dist/components/radio/radio.d.ts +33 -48
  177. package/dist/components/radio/radio.js +389 -41
  178. package/dist/components/radio/radio.mjs +2 -2
  179. package/dist/components/ripple/index.mjs +3 -3
  180. package/dist/components/select/index.js +819 -221
  181. package/dist/components/select/index.mjs +10 -9
  182. package/dist/components/select/select.js +819 -221
  183. package/dist/components/select/select.mjs +10 -9
  184. package/dist/components/slider/index.d.mts +4 -0
  185. package/dist/components/slider/index.d.ts +4 -0
  186. package/dist/components/slider/index.js +955 -0
  187. package/dist/components/slider/index.mjs +11 -0
  188. package/dist/components/slider/slider.d.mts +158 -0
  189. package/dist/components/slider/slider.d.ts +158 -0
  190. package/dist/components/slider/slider.js +949 -0
  191. package/dist/components/slider/slider.mjs +10 -0
  192. package/dist/components/starRating/index.js +486 -57
  193. package/dist/components/starRating/index.mjs +4 -4
  194. package/dist/components/starRating/starRating.js +486 -57
  195. package/dist/components/starRating/starRating.mjs +4 -4
  196. package/dist/components/switch/index.js +22 -25
  197. package/dist/components/switch/index.mjs +1 -1
  198. package/dist/components/switch/switch.d.mts +0 -18
  199. package/dist/components/switch/switch.d.ts +0 -18
  200. package/dist/components/switch/switch.js +22 -25
  201. package/dist/components/switch/switch.mjs +1 -1
  202. package/dist/components/table/definition-table.js +366 -4
  203. package/dist/components/table/definition-table.mjs +2 -2
  204. package/dist/components/table/form-table.js +366 -4
  205. package/dist/components/table/form-table.mjs +1 -1
  206. package/dist/components/table/index.js +679 -291
  207. package/dist/components/table/index.mjs +10 -10
  208. package/dist/components/table/table-body.js +679 -291
  209. package/dist/components/table/table-body.mjs +7 -7
  210. package/dist/components/table/table-head.js +679 -291
  211. package/dist/components/table/table-head.mjs +7 -7
  212. package/dist/components/table/table.d.mts +8 -29
  213. package/dist/components/table/table.d.ts +8 -29
  214. package/dist/components/table/table.js +679 -291
  215. package/dist/components/table/table.mjs +7 -7
  216. package/dist/components/tabs/index.js +366 -4
  217. package/dist/components/tabs/index.mjs +2 -2
  218. package/dist/components/tabs/tabs.js +366 -4
  219. package/dist/components/tabs/tabs.mjs +2 -2
  220. package/dist/components/textarea/index.js +67 -38
  221. package/dist/components/textarea/index.mjs +1 -1
  222. package/dist/components/textarea/textarea.d.mts +21 -0
  223. package/dist/components/textarea/textarea.d.ts +21 -0
  224. package/dist/components/textarea/textarea.js +67 -38
  225. package/dist/components/textarea/textarea.mjs +1 -1
  226. package/dist/components/timePicker/calendar.js +486 -57
  227. package/dist/components/timePicker/calendar.mjs +3 -3
  228. package/dist/components/toast/index.js +486 -57
  229. package/dist/components/toast/index.mjs +5 -5
  230. package/dist/components/toast/toast.js +486 -57
  231. package/dist/components/toast/toast.mjs +4 -4
  232. package/dist/components/toast/use-toast.js +486 -57
  233. package/dist/components/toast/use-toast.mjs +5 -5
  234. package/dist/components/tooltip/index.js +366 -4
  235. package/dist/components/tooltip/index.mjs +2 -2
  236. package/dist/components/tooltip/tooltip.js +366 -4
  237. package/dist/components/tooltip/tooltip.mjs +2 -2
  238. package/dist/components/tree/index.js +486 -57
  239. package/dist/components/tree/index.mjs +4 -4
  240. package/dist/components/tree/tree.js +486 -57
  241. package/dist/components/tree/tree.mjs +4 -4
  242. package/dist/index.d.mts +1 -0
  243. package/dist/index.d.ts +1 -0
  244. package/dist/index.js +1705 -1281
  245. package/dist/index.mjs +76 -70
  246. package/dist/utils/tailwind-variants.js +366 -4
  247. package/dist/utils/tailwind-variants.mjs +1 -1
  248. package/package.json +1 -1
  249. package/dist/chunk-6AID2NLT.mjs +0 -37
  250. package/dist/chunk-BBRO35V3.mjs +0 -385
  251. package/dist/chunk-EVJ46M3U.mjs +0 -141
  252. package/dist/chunk-SKX5QPUD.mjs +0 -482
@@ -119,6 +119,352 @@ var import_tailwind_variants = require("tailwind-variants");
119
119
  // ../tailwind-config/src/plugin.ts
120
120
  var import_plugin = __toESM(require_plugin());
121
121
 
122
+ // ../tailwind-config/src/colors/primitive-palette.ts
123
+ var primitivePalette = {
124
+ bg: {
125
+ "01": "#040811",
126
+ "02": "#040811",
127
+ "03": "#14161E",
128
+ "04": "#070414",
129
+ "05": "#070C12",
130
+ "06": "#202123"
131
+ },
132
+ gray: {
133
+ cool: {
134
+ 50: "#F7F7F8",
135
+ 100: "#EEEEF0",
136
+ 200: "#D8D9DF",
137
+ 300: "#B6B8C3",
138
+ 400: "#999CA9",
139
+ 500: "#717486",
140
+ 600: "#5B5E6E",
141
+ 700: "#4A4C5A",
142
+ 800: "#40424C",
143
+ 900: "#36373F",
144
+ 950: "#25252C"
145
+ },
146
+ warm: {
147
+ 50: "#F6F6F6",
148
+ 100: "#E7E7E7",
149
+ 200: "#D1D1D1",
150
+ 300: "#B0B0B0",
151
+ 400: "#888888",
152
+ 500: "#6D6D6D",
153
+ 600: "#5D5D5D",
154
+ 700: "#525252",
155
+ 800: "#454545",
156
+ 900: "#3D3D3D",
157
+ 950: "#25252C"
158
+ }
159
+ },
160
+ opacity: {
161
+ white: {
162
+ "0": "#FFFFFF, 0",
163
+ 5: "#FFFFFF, 5",
164
+ 10: "#FFFFFF, 10",
165
+ 20: "#FFFFFF, 20",
166
+ 30: "#FFFFFF, 30",
167
+ 40: "#FFFFFF, 40",
168
+ 50: "#FFFFFF, 50",
169
+ 60: "#FFFFFF, 60",
170
+ 70: "#FFFFFF, 70",
171
+ 80: "#FFFFFF, 80",
172
+ 90: "#FFFFFF, 90"
173
+ },
174
+ black: {
175
+ "0": "#000000, 0",
176
+ 5: "#000000, 5",
177
+ 10: "#000000, 10",
178
+ 20: "#000000, 20",
179
+ 30: "#000000, 30",
180
+ 40: "#000000, 40",
181
+ 50: "#000000, 50",
182
+ 60: "#000000, 60",
183
+ 70: "#000000, 70",
184
+ 80: "#000000, 80",
185
+ 90: "#000000, 90"
186
+ }
187
+ },
188
+ red: {
189
+ 50: "#FEF2F2",
190
+ 100: "#FEE9E9",
191
+ 200: "#FCCFD2",
192
+ 300: "#F9A8AC",
193
+ 400: "#F57780",
194
+ 500: "#EC4757",
195
+ 600: "#D82640",
196
+ 700: "#B71934",
197
+ 800: "#991832",
198
+ 900: "#831831",
199
+ 950: "#831831"
200
+ },
201
+ rose: {
202
+ 50: "#FDF4F6",
203
+ 100: "#F9E9EC",
204
+ 200: "#F4D8DD",
205
+ 300: "#E9B8C2",
206
+ 400: "#DF96A6",
207
+ 500: "#CB6881",
208
+ 600: "#B54969",
209
+ 700: "#973957",
210
+ 800: "#7F324D",
211
+ 900: "#6A2740",
212
+ 950: "#3C1523"
213
+ },
214
+ hotPink: {
215
+ 50: "#FDF2F7",
216
+ 100: "#FDE6F0",
217
+ 200: "#FCCEE3",
218
+ 300: "#FBA6CA",
219
+ 400: "#F76FA6",
220
+ 500: "#F04485",
221
+ 600: "#E2326C",
222
+ 700: "#C21448",
223
+ 800: "#A1133C",
224
+ 900: "#861535",
225
+ 950: "#52051B"
226
+ },
227
+ sepia: {
228
+ 50: "#FCF5F4",
229
+ 100: "#FAE9E9",
230
+ 200: "#F5D6D7",
231
+ 300: "#EDB4B6",
232
+ 400: "#E28A8F",
233
+ 500: "#D45F69",
234
+ 600: "#BE4051",
235
+ 700: "#9F3142",
236
+ 800: "#862B3C",
237
+ 900: "#6B2433",
238
+ 950: "#320E15"
239
+ },
240
+ orange: {
241
+ 50: "#FEF7EE",
242
+ 100: "#FDEDD7",
243
+ 200: "#F9D8AF",
244
+ 300: "#F5BB7C",
245
+ 400: "#F09447",
246
+ 500: "#EC7723",
247
+ 600: "#E15F19",
248
+ 700: "#E15F19",
249
+ 800: "#92391A",
250
+ 900: "#763118",
251
+ 950: "#40160A"
252
+ },
253
+ yellow: {
254
+ 50: "#F9F2E5",
255
+ 100: "#F5E6BC",
256
+ 200: "#FFE9BC",
257
+ 300: "#FFD174",
258
+ 400: "#F8BE4A",
259
+ 500: "#EAAD30",
260
+ 600: "#D77908",
261
+ 700: "#B2550B",
262
+ 800: "#91420F",
263
+ 900: "#773610",
264
+ 950: "#441B04"
265
+ },
266
+ tree: {
267
+ 50: "#F5F3F1",
268
+ 100: "#E5E1DC",
269
+ 200: "#CCC5BC",
270
+ 300: "#AFA395",
271
+ 400: "#978878",
272
+ 500: "#907E6F",
273
+ 600: "#756459",
274
+ 700: "#5F4F49",
275
+ 800: "#524541",
276
+ 900: "#483D3B",
277
+ 950: "#282120"
278
+ },
279
+ brown: {
280
+ 50: "#F6F3F0",
281
+ 100: "#F4EDEC",
282
+ 200: "#EBDFDD",
283
+ 300: "#DCC9C5",
284
+ 400: "#C6A9A3",
285
+ 500: "#B08983",
286
+ 600: "#A27E77",
287
+ 700: "#7F5D56",
288
+ 800: "#6A4F4A",
289
+ 900: "#5B4541",
290
+ 950: "#2C1E1C"
291
+ },
292
+ lime: {
293
+ 50: "#F7FFE5",
294
+ 100: "#ECFFC7",
295
+ 200: "#D9FF95",
296
+ 300: "#BDFE58",
297
+ 400: "#A1F524",
298
+ 500: "#82DC06",
299
+ 600: "#63B000",
300
+ 700: "#4B8506",
301
+ 800: "#3E690B",
302
+ 900: "#34580F",
303
+ 950: "#193102"
304
+ },
305
+ green: {
306
+ 50: "#E7F3EB",
307
+ 100: "#DFF9EA",
308
+ 200: "#CEECDA",
309
+ 300: "#9CD4B3",
310
+ 400: "#6EC092",
311
+ 500: "#3FA46B",
312
+ 600: "#209754",
313
+ 700: "#1E7745",
314
+ 800: "#1D5E3A",
315
+ 900: "#194E32",
316
+ 950: "#082B19"
317
+ },
318
+ timberGreen: {
319
+ 50: "#F1FCF5",
320
+ 100: "#DFF9EA",
321
+ 200: "#B5DACD",
322
+ 300: "#8ABFAF",
323
+ 400: "#60A18F",
324
+ 500: "#468675",
325
+ 600: "#366B5F",
326
+ 700: "#2E574D",
327
+ 800: "#2A4641",
328
+ 900: "#1D2F2B",
329
+ 950: "#11221E"
330
+ },
331
+ teal: {
332
+ 50: "#E2F1F0",
333
+ 100: "#C9EBE8",
334
+ 200: "#C7E8E5",
335
+ 300: "#8AD0D0",
336
+ 400: "#67C4C4",
337
+ 500: "#39A6A7",
338
+ 600: "#258386",
339
+ 700: "#1B666A",
340
+ 800: "#1A5255",
341
+ 900: "#1A4447",
342
+ 950: "#09272A"
343
+ },
344
+ lightBlue: {
345
+ 50: "#F2F8FD",
346
+ 100: "#E3EFFB",
347
+ 200: "#C1E0F6",
348
+ 300: "#8BC6EE",
349
+ 400: "#3DA2E1",
350
+ 500: "#258FD2",
351
+ 600: "#1771B2",
352
+ 700: "#145A90",
353
+ 800: "#154D77",
354
+ 900: "#174163",
355
+ 950: "#062C2D"
356
+ },
357
+ sea: {
358
+ 50: "#F4F6FC",
359
+ 100: "#E8EDF6",
360
+ 200: "#CBD9EB",
361
+ 300: "#9FB9DA",
362
+ 400: "#6A93C5",
363
+ 500: "#446FA4",
364
+ 600: "#375D92",
365
+ 700: "#2D4B77",
366
+ 800: "#294163",
367
+ 900: "#263954",
368
+ 950: "#1A2537"
369
+ },
370
+ blue: {
371
+ 50: "#F0F6FE",
372
+ 100: "#DDEAFC",
373
+ 200: "#C2DBFB",
374
+ 300: "#98C5F8",
375
+ 400: "#68A7F2",
376
+ 500: "#377CEB",
377
+ 600: "#2F68E1",
378
+ 700: "#2754CE",
379
+ 800: "#20429E",
380
+ 900: "#1C2A52",
381
+ 950: "#061132"
382
+ },
383
+ lightPurple: {
384
+ 50: "#F6F5FD",
385
+ 100: "#EEEDFA",
386
+ 200: "#DDDCFD",
387
+ 300: "#BDB9EC",
388
+ 400: "#AAA1E4",
389
+ 500: "#826CE3",
390
+ 600: "#7250D7",
391
+ 700: "#623DC4",
392
+ 800: "#5133A4",
393
+ 900: "#442B87",
394
+ 950: "#291A5B"
395
+ }
396
+ };
397
+
398
+ // ../tailwind-config/src/colors/semantic-palette.ts
399
+ var semanticPalette = {
400
+ primary: {
401
+ soft: { light: primitivePalette.blue[100], dark: primitivePalette.blue[950] },
402
+ light: { light: primitivePalette.blue[200], dark: primitivePalette.blue[900] },
403
+ main: { light: primitivePalette.blue[600], dark: primitivePalette.blue[600] },
404
+ dark: { light: primitivePalette.blue[800], dark: primitivePalette.blue[500] },
405
+ strong: { light: primitivePalette.blue[900], dark: primitivePalette.blue[200] }
406
+ },
407
+ secondary: {
408
+ soft: { light: primitivePalette.lightPurple[100], dark: primitivePalette.lightPurple[950] },
409
+ light: { light: primitivePalette.lightPurple[200], dark: primitivePalette.lightPurple[900] },
410
+ main: { light: primitivePalette.lightPurple[600], dark: primitivePalette.lightPurple[500] },
411
+ dark: { light: primitivePalette.lightPurple[800], dark: primitivePalette.lightPurple[700] },
412
+ strong: { light: primitivePalette.lightPurple[950], dark: primitivePalette.lightPurple[950] }
413
+ },
414
+ body: {
415
+ foreground: { light: primitivePalette.gray.cool[950], dark: primitivePalette.gray.cool[50] },
416
+ background: { light: primitivePalette.gray.cool[50], dark: primitivePalette.bg["06"] }
417
+ },
418
+ neutral: {
419
+ soft: { light: primitivePalette.gray.cool[100], dark: primitivePalette.gray.cool[900] },
420
+ light: { light: primitivePalette.gray.cool[200], dark: primitivePalette.gray.cool[700] },
421
+ main: { light: primitivePalette.gray.cool[400], dark: primitivePalette.gray.cool[400] },
422
+ dark: { light: primitivePalette.gray.cool[500], dark: primitivePalette.gray.cool[300] },
423
+ strong: { light: primitivePalette.gray.cool[700], dark: primitivePalette.gray.cool[200] }
424
+ },
425
+ trans: {
426
+ soft: { light: primitivePalette.opacity.black[5], dark: primitivePalette.opacity.white[5] },
427
+ light: { light: primitivePalette.opacity.black[10], dark: primitivePalette.opacity.white[10] },
428
+ main: { light: primitivePalette.opacity.black[20], dark: primitivePalette.opacity.white[20] },
429
+ dark: { light: primitivePalette.opacity.black[30], dark: primitivePalette.opacity.white[30] },
430
+ strong: { light: primitivePalette.opacity.black[60], dark: primitivePalette.opacity.black[60] }
431
+ },
432
+ common: {
433
+ black: { light: primitivePalette.gray.cool[950], dark: primitivePalette.gray.cool[950] },
434
+ white: { light: primitivePalette.gray.cool[50], dark: primitivePalette.gray.cool[50] },
435
+ transparent: { light: primitivePalette.opacity.white["0"], dark: primitivePalette.opacity.black["0"] },
436
+ hover: { light: primitivePalette.opacity.black[5], dark: primitivePalette.opacity.white[5] }
437
+ },
438
+ info: {
439
+ soft: { light: primitivePalette.teal[50], dark: primitivePalette.teal[950] },
440
+ light: { light: primitivePalette.teal[100], dark: primitivePalette.teal[900] },
441
+ main: { light: primitivePalette.teal[500], dark: primitivePalette.teal[500] },
442
+ dark: { light: primitivePalette.teal[600], dark: primitivePalette.teal[700] },
443
+ strong: { light: "", dark: "" }
444
+ },
445
+ success: {
446
+ soft: { light: primitivePalette.green[50], dark: primitivePalette.green[950] },
447
+ light: { light: primitivePalette.green[200], dark: primitivePalette.green[900] },
448
+ main: { light: primitivePalette.green[500], dark: primitivePalette.green[600] },
449
+ dark: { light: primitivePalette.green[600], dark: primitivePalette.green[700] },
450
+ strong: { light: "", dark: "" }
451
+ },
452
+ warning: {
453
+ soft: { light: primitivePalette.yellow[50], dark: primitivePalette.yellow[950] },
454
+ light: { light: primitivePalette.yellow[100], dark: primitivePalette.yellow[900] },
455
+ main: { light: primitivePalette.yellow[500], dark: primitivePalette.yellow[600] },
456
+ dark: { light: primitivePalette.yellow[600], dark: primitivePalette.yellow[700] },
457
+ strong: { light: "", dark: "" }
458
+ },
459
+ danger: {
460
+ soft: { light: primitivePalette.hotPink[50], dark: primitivePalette.hotPink[950] },
461
+ light: { light: primitivePalette.hotPink[200], dark: primitivePalette.hotPink[900] },
462
+ main: { light: primitivePalette.hotPink[500], dark: primitivePalette.hotPink[500] },
463
+ dark: { light: primitivePalette.hotPink[600], dark: primitivePalette.hotPink[700] },
464
+ strong: { light: "", dark: "" }
465
+ }
466
+ };
467
+
122
468
  // ../tailwind-config/src/typography/font.ts
123
469
  var fontSize = {
124
470
  h1: [
@@ -322,7 +668,7 @@ var boxShadow = {
322
668
  "drop-sm": "0 4px 12px 0 rgba(0, 0, 0, 0.1)",
323
669
  "drop-md": "0 6px 18px 0 rgba(0, 0, 0, 0.1)",
324
670
  "drop-lg": "0 8px 24px 0 rgba(0, 0, 0, 0.1)",
325
- "drop-xl": "0 10px 30px 0 rgba(0, 0, 0, 0.1)"
671
+ "drop-xl": "0 0px 60px 0 rgba(0, 0, 0, 0.2)"
326
672
  };
327
673
 
328
674
  // ../tailwind-config/src/border/radius.ts
@@ -331,8 +677,19 @@ var borderRadius = {
331
677
  md: "6px",
332
678
  lg: "8px",
333
679
  xl: "10px",
680
+ "2xl": "20px",
334
681
  none: "0",
335
- full: "9999px"
682
+ full: "9999px",
683
+ 2: "2px",
684
+ 5: "5px"
685
+ };
686
+
687
+ // ../tailwind-config/src/border/width.ts
688
+ var borderWidth = {
689
+ sm: "1px",
690
+ md: "1.25px",
691
+ lg: "1.5px",
692
+ xl: "1.75px"
336
693
  };
337
694
 
338
695
  // ../tailwind-config/src/space/gap.ts
@@ -340,7 +697,11 @@ var gap = {
340
697
  sm: "4px",
341
698
  md: "6px",
342
699
  lg: "8px",
343
- xl: "10px"
700
+ xl: "10px",
701
+ 5: "5px",
702
+ 10: "10px",
703
+ 20: "20px",
704
+ 30: "30px"
344
705
  };
345
706
 
346
707
  // src/utils/tailwind-variants.ts
@@ -355,7 +716,8 @@ var tv = (0, import_tailwind_variants.createTV)({
355
716
  borderRadius: [{ rounded: [...typedKeys(borderRadius)] }],
356
717
  boxShadow: [{ shadow: [...typedKeys(boxShadow)] }],
357
718
  padding: [{ p: [...COMMON_SIZE] }],
358
- gap: [{ gap: [...typedKeys(gap)] }]
719
+ gap: [{ gap: [...typedKeys(gap)] }],
720
+ borderWidth: [{ border: [...typedKeys(borderWidth)] }]
359
721
  }
360
722
  }
361
723
  });
@@ -383,6 +745,98 @@ var mapPropsVariants = (props, variantKeys, removeVariantProps = true) => {
383
745
  // src/components/icon/template.tsx
384
746
  var import_jsx_runtime = require("react/jsx-runtime");
385
747
  var template = {
748
+ left: ({ className }) => {
749
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
750
+ "svg",
751
+ {
752
+ xmlns: "http://www.w3.org/2000/svg",
753
+ width: "21",
754
+ height: "21",
755
+ viewBox: "0 0 21 21",
756
+ fill: "none",
757
+ className,
758
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
759
+ "path",
760
+ {
761
+ d: "M12.8333 15.1667L8.16667 10.5L12.8333 5.83334",
762
+ stroke: "currentColor",
763
+ strokeWidth: "1.25",
764
+ strokeLinecap: "round",
765
+ strokeLinejoin: "round"
766
+ }
767
+ )
768
+ }
769
+ );
770
+ },
771
+ "left-double": ({ className }) => {
772
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
773
+ "svg",
774
+ {
775
+ xmlns: "http://www.w3.org/2000/svg",
776
+ width: "21",
777
+ height: "21",
778
+ viewBox: "0 0 21 21",
779
+ fill: "none",
780
+ className,
781
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
782
+ "path",
783
+ {
784
+ d: "M15.1667 5.83334L9.98148 10.5L15.1667 15.1667M11.0185 5.83334L5.83334 10.5L11.0185 15.1667",
785
+ stroke: "currentColor",
786
+ strokeWidth: "1.25",
787
+ strokeLinecap: "round",
788
+ strokeLinejoin: "round"
789
+ }
790
+ )
791
+ }
792
+ );
793
+ },
794
+ right: ({ className }) => {
795
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
796
+ "svg",
797
+ {
798
+ xmlns: "http://www.w3.org/2000/svg",
799
+ width: "21",
800
+ height: "21",
801
+ viewBox: "0 0 21 21",
802
+ fill: "none",
803
+ className,
804
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
805
+ "path",
806
+ {
807
+ d: "M8.16666 5.83334L12.8333 10.5L8.16666 15.1667",
808
+ stroke: "currentColor",
809
+ strokeWidth: "1.25",
810
+ strokeLinecap: "round",
811
+ strokeLinejoin: "round"
812
+ }
813
+ )
814
+ }
815
+ );
816
+ },
817
+ "right-double": ({ className }) => {
818
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
819
+ "svg",
820
+ {
821
+ xmlns: "http://www.w3.org/2000/svg",
822
+ width: "21",
823
+ height: "21",
824
+ viewBox: "0 0 21 21",
825
+ fill: "none",
826
+ className,
827
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
828
+ "path",
829
+ {
830
+ d: "M5.83334 5.83334L11.0185 10.5L5.83334 15.1667M9.98149 5.83334L15.1667 10.5L9.98149 15.1667",
831
+ stroke: "currentColor",
832
+ strokeWidth: "1.25",
833
+ strokeLinecap: "round",
834
+ strokeLinejoin: "round"
835
+ }
836
+ )
837
+ }
838
+ );
839
+ },
386
840
  "left-chevron": ({ className }) => {
387
841
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
388
842
  "svg",
@@ -1768,46 +2222,6 @@ var template = {
1768
2222
  }
1769
2223
  );
1770
2224
  },
1771
- left: ({ className }) => {
1772
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
1773
- "svg",
1774
- {
1775
- xmlns: "http://www.w3.org/2000/svg",
1776
- width: "22",
1777
- height: "22",
1778
- viewBox: "0 0 22 22",
1779
- fill: "none",
1780
- className,
1781
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
1782
- "path",
1783
- {
1784
- d: "M14.4955 7.21404C14.4957 7.26442 14.4957 7.26442 14.4959 7.31582C14.4962 7.40882 14.4962 7.50182 14.496 7.59482C14.496 7.69521 14.4962 7.79559 14.4965 7.89598C14.4969 8.09257 14.497 8.28915 14.4969 8.48574C14.4968 8.64555 14.4969 8.80536 14.497 8.96516C14.4971 8.98791 14.4971 9.01066 14.4971 9.0341C14.4971 9.08032 14.4972 9.12653 14.4972 9.17275C14.4976 9.60613 14.4975 10.0395 14.4973 10.4729C14.4971 10.8692 14.4975 11.2656 14.4981 11.6619C14.4988 12.069 14.499 12.4761 14.4989 12.8832C14.4989 13.1117 14.4989 13.3402 14.4994 13.5687C14.4998 13.7633 14.4998 13.9578 14.4994 14.1524C14.4992 14.2516 14.4992 14.3508 14.4996 14.45C14.4999 14.5577 14.4997 14.6653 14.4993 14.7729C14.4995 14.8042 14.4997 14.8354 14.5 14.8676C14.4981 15.094 14.4635 15.2952 14.2769 15.4694C14.0633 15.6269 13.8501 15.6664 13.574 15.6667C13.3359 15.6312 13.1607 15.5177 12.9847 15.381C12.9446 15.3506 12.9044 15.3202 12.8642 15.2898C12.8338 15.2666 12.8338 15.2666 12.8028 15.2429C12.7059 15.1692 12.6076 15.0969 12.5094 15.0246C12.4807 15.0034 12.4807 15.0034 12.4515 14.9819C12.3238 14.8875 12.1955 14.7936 12.0669 14.7C11.8604 14.5497 11.6552 14.3982 11.4501 14.2465C11.3539 14.1754 11.2577 14.1043 11.1615 14.0332C11.1231 14.0048 11.0847 13.9765 11.0462 13.9481C11.0177 13.927 11.0177 13.927 10.9886 13.9055C10.1627 13.2955 9.33686 12.6854 8.51098 12.0753C8.49194 12.0613 8.47291 12.0472 8.45329 12.0328C8.41508 12.0045 8.37691 11.9762 8.33878 11.9479C8.23994 11.8746 8.14044 11.8021 8.03961 11.7309C7.56492 11.3929 7.56492 11.3929 7.50676 11.139C7.48169 10.8947 7.5218 10.7077 7.70431 10.5165C7.82684 10.4027 7.96443 10.3072 8.1052 10.2107C8.19396 10.1488 8.27857 10.0845 8.36282 10.0181C8.5044 9.90695 8.65122 9.80273 8.80011 9.69893C8.88704 9.63693 8.97086 9.57289 9.05425 9.50739C9.19583 9.3962 9.34265 9.29198 9.49154 9.18818C9.57847 9.12618 9.6623 9.06214 9.74569 8.99664C9.88726 8.88544 10.0341 8.78123 10.183 8.67742C10.2699 8.61542 10.3537 8.55139 10.4371 8.48589C10.5787 8.37469 10.7255 8.27048 10.8744 8.16667C10.9613 8.10467 11.0452 8.04064 11.1286 7.97514C11.2379 7.88937 11.3491 7.80701 11.464 7.72686C11.676 7.57888 11.881 7.42428 12.0868 7.26992C12.2036 7.18255 12.321 7.09588 12.4386 7.00934C12.5366 6.93723 12.6341 6.8648 12.7311 6.7917C13.3456 6.32986 13.3456 6.32986 13.7814 6.33404C13.9843 6.35117 14.1418 6.41415 14.2854 6.53943C14.4816 6.75169 14.4966 6.95069 14.4955 7.21404Z",
1785
- fill: "currentColor"
1786
- }
1787
- )
1788
- }
1789
- );
1790
- },
1791
- right: ({ className }) => {
1792
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
1793
- "svg",
1794
- {
1795
- xmlns: "http://www.w3.org/2000/svg",
1796
- width: "22",
1797
- height: "22",
1798
- viewBox: "0 0 22 22",
1799
- fill: "none",
1800
- className,
1801
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
1802
- "path",
1803
- {
1804
- d: "M7.50447 7.21404C7.50428 7.26442 7.50428 7.26442 7.50409 7.31582C7.50381 7.40882 7.50383 7.50182 7.50397 7.59482C7.50405 7.69521 7.50375 7.79559 7.5035 7.89598C7.50308 8.09257 7.50303 8.28915 7.5031 8.48574C7.50316 8.64555 7.5031 8.80536 7.50296 8.96516C7.50294 8.98791 7.50292 9.01066 7.5029 9.0341C7.50286 9.08032 7.50282 9.12653 7.50278 9.17275C7.50243 9.60613 7.5025 10.0395 7.5027 10.4729C7.50287 10.8692 7.5025 11.2656 7.50187 11.6619C7.50123 12.069 7.50096 12.4761 7.50109 12.8832C7.50115 13.1117 7.50107 13.3402 7.5006 13.5687C7.50021 13.7633 7.50016 13.9578 7.50056 14.1524C7.50076 14.2516 7.50079 14.3508 7.5004 14.45C7.50005 14.5577 7.50032 14.6653 7.50074 14.7729C7.50049 14.8042 7.50025 14.8354 7.5 14.8676C7.50185 15.094 7.53645 15.2952 7.72309 15.4694C7.93671 15.6269 8.14985 15.6664 8.42597 15.6667C8.66414 15.6312 8.8393 15.5177 9.01528 15.381C9.05544 15.3506 9.09561 15.3202 9.13579 15.2898C9.16617 15.2666 9.16617 15.2666 9.19716 15.2429C9.29408 15.1692 9.39237 15.0969 9.49064 15.0246C9.51926 15.0034 9.51926 15.0034 9.54847 14.9819C9.67623 14.8875 9.80451 14.7936 9.93307 14.7C10.1396 14.5497 10.3448 14.3982 10.5499 14.2465C10.6461 14.1754 10.7423 14.1043 10.8385 14.0332C10.8769 14.0048 10.9153 13.9765 10.9538 13.9481C10.9823 13.927 10.9823 13.927 11.0114 13.9055C11.8373 13.2955 12.6631 12.6854 13.489 12.0753C13.5081 12.0613 13.5271 12.0472 13.5467 12.0328C13.5849 12.0045 13.6231 11.9762 13.6612 11.9479C13.7601 11.8746 13.8596 11.8021 13.9604 11.7309C14.4351 11.3929 14.4351 11.3929 14.4932 11.139C14.5183 10.8947 14.4782 10.7077 14.2957 10.5165C14.1732 10.4027 14.0356 10.3072 13.8948 10.2107C13.806 10.1488 13.7214 10.0845 13.6372 10.0181C13.4956 9.90695 13.3488 9.80273 13.1999 9.69893C13.113 9.63693 13.0291 9.57289 12.9457 9.50739C12.8042 9.3962 12.6573 9.29198 12.5085 9.18818C12.4215 9.12618 12.3377 9.06214 12.2543 8.99664C12.1127 8.88544 11.9659 8.78123 11.817 8.67742C11.7301 8.61542 11.6463 8.55139 11.5629 8.48589C11.4213 8.37469 11.2745 8.27048 11.1256 8.16667C11.0387 8.10467 10.9548 8.04064 10.8714 7.97514C10.7621 7.88937 10.6509 7.80701 10.536 7.72686C10.324 7.57888 10.119 7.42428 9.9132 7.26992C9.79643 7.18255 9.67897 7.09588 9.56138 7.00934C9.46343 6.93723 9.36586 6.8648 9.26891 6.7917C8.65441 6.32986 8.65441 6.32986 8.21864 6.33404C8.01565 6.35117 7.85817 6.41415 7.7146 6.53943C7.51841 6.75169 7.50343 6.95069 7.50447 7.21404Z",
1805
- fill: "currentColor"
1806
- }
1807
- )
1808
- }
1809
- );
1810
- },
1811
2225
  "brace-left": ({ className }) => {
1812
2226
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
1813
2227
  "svg",
@@ -2117,6 +2531,20 @@ var template = {
2117
2531
  }
2118
2532
  );
2119
2533
  },
2534
+ polygon: ({ className }) => {
2535
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
2536
+ "svg",
2537
+ {
2538
+ xmlns: "http://www.w3.org/2000/svg",
2539
+ width: "24",
2540
+ height: "24",
2541
+ viewBox: "0 0 24 24",
2542
+ fill: "none",
2543
+ className,
2544
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("polygon", { points: "12 4 20 9 20 15 12 20 4 15 4 9", stroke: "currentColor", strokeWidth: "2" })
2545
+ }
2546
+ );
2547
+ },
2120
2548
  "new-window": ({ className }) => {
2121
2549
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
2122
2550
  "svg",
@@ -5230,353 +5658,165 @@ var import_jsx_runtime2 = require("react/jsx-runtime");
5230
5658
  var Icon = ({ name, size = "md", fill = false, className, onClick, ...props }) => {
5231
5659
  const SVGIcon = template[name];
5232
5660
  const getInputIconSize = (size2) => {
5233
- switch (size2) {
5661
+ switch (String(size2)) {
5234
5662
  case "sm":
5235
- return "size-[18px]";
5663
+ return "w-[18px] h-[18px]";
5236
5664
  case "md":
5237
- return "size-[21px] stroke-[1.25px]";
5665
+ return "w-[21px] h-[21px] stroke-[1.25px]";
5238
5666
  case "lg":
5239
- return "size-[24px] stroke-[1.5px]";
5667
+ return "w-[24px] h-[24px] stroke-[1.5px]";
5240
5668
  case "xl":
5241
- return "size-[27px] stroke-[1.5px]";
5669
+ return "w-[27px] h-[27px] stroke-[1.5px]";
5670
+ case "20":
5671
+ return "w-[20px] h-[20px] stroke-[1.25px]";
5672
+ case "30":
5673
+ return "w-[30px] h-[30px] stroke-[1.5px]";
5674
+ case "40":
5675
+ return "w-[40px] h-[40px] stroke-[2px]";
5676
+ default:
5677
+ return "w-[21px] h-[21px] stroke-[1.25px]";
5242
5678
  }
5243
5679
  };
5244
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "h-fit w-fit", onClick, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
5245
- SVGIcon,
5246
- {
5247
- fill,
5248
- className: className ? `${getInputIconSize(size)} ${className}` : `${getInputIconSize(size)}`,
5249
- ...props
5250
- }
5251
- ) });
5680
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: `m-0 flex items-center justify-center p-0 ${className}`, onClick, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(SVGIcon, { fill, className: getInputIconSize(size), ...props }) });
5252
5681
  };
5253
5682
  var Icon_default = Icon;
5254
5683
 
5255
5684
  // src/components/button/button.tsx
5256
5685
  var import_react2 = require("react");
5257
5686
 
5258
- // src/components/ripple/ripple.tsx
5259
- var import_framer_motion = require("framer-motion");
5260
- var import_jsx_runtime3 = require("react/jsx-runtime");
5261
- var Ripple = (props) => {
5262
- const { ripples = [], motionProps, color = "currentColor", style, onClear } = props;
5263
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_jsx_runtime3.Fragment, { children: ripples.map((ripple) => {
5264
- const duration = (0, import_framer_motion.clamp)(ripple.size > 100 ? 0.75 : 0.5, 0.01 * ripple.size, 0.2);
5265
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_framer_motion.LazyMotion, { features: import_framer_motion.domAnimation, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_framer_motion.AnimatePresence, { mode: "popLayout", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
5266
- import_framer_motion.m.span,
5267
- {
5268
- animate: { transform: "scale(2)", opacity: 0 },
5269
- className: "deepnoidui-ripple",
5270
- exit: { opacity: 0 },
5271
- initial: { transform: "scale(0)", opacity: 0.35 },
5272
- style: {
5273
- position: "absolute",
5274
- backgroundColor: color,
5275
- borderRadius: "100%",
5276
- transformOrigin: "center",
5277
- pointerEvents: "none",
5278
- overflow: "hidden",
5279
- inset: 0,
5280
- zIndex: 0,
5281
- top: ripple.y,
5282
- left: ripple.x,
5283
- width: `${ripple.size}px`,
5284
- height: `${ripple.size}px`,
5285
- ...style
5286
- },
5287
- transition: { duration },
5288
- onAnimationComplete: () => {
5289
- onClear(ripple.key);
5290
- },
5291
- ...motionProps
5687
+ // src/components/button/button.style.ts
5688
+ var buttonBaseStyle = tv({
5689
+ slots: {
5690
+ base: [
5691
+ "relative",
5692
+ "flex",
5693
+ "items-center",
5694
+ "justify-center",
5695
+ "whitespace-nowrap",
5696
+ "transition",
5697
+ "duration-200",
5698
+ "select-none",
5699
+ "overflow-hidden",
5700
+ "box-border",
5701
+ "border",
5702
+ "border-transparent"
5703
+ ]
5704
+ },
5705
+ variants: {
5706
+ variant: {
5707
+ solid: [],
5708
+ soft: [],
5709
+ outline: [],
5710
+ ghost: []
5711
+ },
5712
+ color: {
5713
+ primary: [],
5714
+ secondary: [],
5715
+ neutral: [],
5716
+ info: [],
5717
+ success: [],
5718
+ warning: [],
5719
+ danger: []
5720
+ },
5721
+ disabled: {
5722
+ true: {
5723
+ base: ["!bg-neutral-soft", "!border-neutral-soft", "!text-neutral-light", "pointer-events-none"]
5292
5724
  }
5293
- ) }) }, ripple.key);
5294
- }) });
5295
- };
5296
- Ripple.displayName = "HeroUI.Ripple";
5297
- var ripple_default = Ripple;
5298
-
5299
- // src/components/ripple/useRipple.ts
5300
- var import_react = require("react");
5301
- function useRipple(props = {}) {
5302
- const [ripples, setRipples] = (0, import_react.useState)([]);
5303
- const getUniqueID = (key) => `${key}-${Math.random().toString(36).substr(2, 9)}`;
5304
- const onPress = (0, import_react.useCallback)((event) => {
5305
- const trigger = event.currentTarget;
5306
- const rect = trigger.getBoundingClientRect();
5307
- const size = Math.max(trigger.clientWidth, trigger.clientHeight);
5308
- setRipples((prevRipples) => [
5309
- ...prevRipples,
5310
- {
5311
- key: getUniqueID(prevRipples.length.toString()),
5312
- size,
5313
- x: event.clientX - rect.left - size / 2,
5314
- y: event.clientY - rect.top - size / 2
5315
- }
5316
- ]);
5317
- }, []);
5318
- const onClear = (0, import_react.useCallback)((key) => {
5319
- setRipples((prevState) => prevState.filter((ripple) => ripple.key !== key));
5320
- }, []);
5321
- return { ripples, onClear, onPress, ...props };
5322
- }
5323
-
5324
- // src/components/button/button.tsx
5325
- var import_jsx_runtime4 = require("react/jsx-runtime");
5326
- var extractTextFromChildren = (children) => {
5327
- if (typeof children === "string") {
5328
- return children;
5329
- }
5330
- if (typeof children === "number") {
5331
- return String(children);
5332
- }
5333
- if ((0, import_react2.isValidElement)(children)) {
5334
- const childProps = children.props;
5335
- return extractTextFromChildren(childProps.children);
5336
- }
5337
- if (Array.isArray(children)) {
5338
- return children.map((child) => extractTextFromChildren(child)).join(" ");
5339
- }
5340
- return "";
5341
- };
5342
- var Button = (0, import_react2.forwardRef)((originalProps, ref) => {
5343
- const [props, variantProps] = mapPropsVariants(originalProps, buttonStyle.variantKeys);
5344
- const { classNames, startContent, endContent, disableRipple, asChild, children, ...buttonProps } = props;
5345
- const slots = (0, import_react2.useMemo)(() => buttonStyle({ ...variantProps }), [variantProps]);
5346
- const { onPress: onRipplePressHandler, onClear: onClearRipple, ripples } = useRipple();
5347
- const autoAriaLabel = (0, import_react2.useMemo)(() => {
5348
- if (originalProps["aria-label"] || originalProps["aria-labelledby"]) {
5349
- return void 0;
5350
- }
5351
- if (originalProps.isLoading) {
5352
- const baseText = extractTextFromChildren(children);
5353
- return baseText ? `${baseText} (loading)` : "loading";
5354
- }
5355
- const textContent = extractTextFromChildren(children);
5356
- return textContent || void 0;
5357
- }, [originalProps["aria-label"], originalProps["aria-labelledby"], originalProps.isLoading, children]);
5358
- const handlePress = (0, import_react2.useCallback)(
5359
- (e) => {
5360
- if (disableRipple || originalProps.disabled) return;
5361
- onRipplePressHandler(e);
5362
- },
5363
- [disableRipple, originalProps.disabled, onRipplePressHandler]
5364
- );
5365
- const mouseDownHandler = (0, import_react2.useCallback)(
5366
- (e) => {
5367
- var _a;
5368
- (_a = buttonProps.onMouseDown) == null ? void 0 : _a.call(buttonProps, e);
5369
- if (disableRipple || originalProps.disabled) return;
5370
- handlePress(e);
5371
- },
5372
- [buttonProps.onMouseDown, disableRipple, originalProps.disabled, handlePress]
5373
- );
5374
- const getRippleProps = (0, import_react2.useCallback)(
5375
- () => ({ ripples, onClear: onClearRipple }),
5376
- [ripples, onClearRipple]
5377
- );
5378
- const getBaseProps = (0, import_react2.useCallback)(
5379
- () => ({
5380
- ...buttonProps,
5381
- onMouseDown: mouseDownHandler,
5382
- ref,
5383
- disabled: originalProps.disabled || originalProps.isLoading,
5384
- "data-loading": originalProps.isLoading,
5385
- className: slots.base({ class: classNames == null ? void 0 : classNames.base }),
5386
- "aria-label": originalProps["aria-label"] || autoAriaLabel
5387
- }),
5388
- [
5389
- buttonProps,
5390
- mouseDownHandler,
5391
- ref,
5392
- originalProps.disabled,
5393
- originalProps.isLoading,
5394
- originalProps["aria-label"],
5395
- autoAriaLabel,
5396
- slots,
5397
- classNames == null ? void 0 : classNames.base
5398
- ]
5399
- );
5400
- const getContentProps = (0, import_react2.useCallback)(
5401
- () => ({
5402
- className: slots.content({ class: classNames == null ? void 0 : classNames.content }),
5403
- size: originalProps.size
5404
- }),
5405
- [slots, classNames, originalProps.size]
5406
- );
5407
- const renderContent = (content) => {
5408
- if ((0, import_react2.isValidElement)(content)) {
5409
- const _content = content;
5410
- const existingProps = _content.props;
5411
- const mergedProps = {
5412
- ...getContentProps(),
5413
- className: `${getContentProps().className || ""} ${existingProps.className || ""}`.trim()
5414
- };
5415
- return (0, import_react2.cloneElement)(content, mergedProps);
5416
- } else {
5417
- const contentProps = getContentProps();
5418
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { ...contentProps, children: content });
5419
- }
5420
- };
5421
- const buttonContent = /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_jsx_runtime4.Fragment, { children: originalProps.isLoading ? renderContent(/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Icon_default, { name: "loading", className: "animate-spin" })) : /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(import_jsx_runtime4.Fragment, { children: [
5422
- startContent && renderContent(startContent),
5423
- children,
5424
- endContent && renderContent(endContent),
5425
- !disableRipple && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ripple_default, { ...getRippleProps() })
5426
- ] }) });
5427
- if (asChild && (0, import_react2.isValidElement)(children)) {
5428
- const childElement = children;
5429
- const baseProps = getBaseProps();
5430
- const mergedProps = {
5431
- ...childElement.props,
5432
- ...baseProps,
5433
- className: `${baseProps.className || ""} ${childElement.props.className || ""}`.trim(),
5434
- onClick: (e) => {
5435
- var _a, _b, _c;
5436
- (_b = (_a = childElement.props).onClick) == null ? void 0 : _b.call(_a, e);
5437
- (_c = baseProps.onClick) == null ? void 0 : _c.call(baseProps, e);
5438
- },
5439
- onMouseDown: (e) => {
5440
- var _a, _b, _c;
5441
- (_b = (_a = childElement.props).onMouseDown) == null ? void 0 : _b.call(_a, e);
5442
- (_c = baseProps.onMouseDown) == null ? void 0 : _c.call(baseProps, e);
5443
- },
5444
- children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_jsx_runtime4.Fragment, { children: originalProps.isLoading ? renderContent(/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Icon_default, { name: "loading", className: "animate-spin" })) : /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(import_jsx_runtime4.Fragment, { children: [
5445
- startContent && renderContent(startContent),
5446
- childElement.props.children,
5447
- endContent && renderContent(endContent),
5448
- !disableRipple && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ripple_default, { ...getRippleProps() })
5449
- ] }) })
5450
- };
5451
- return (0, import_react2.cloneElement)(childElement, mergedProps);
5452
- }
5453
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("button", { ...getBaseProps(), children: buttonContent });
5454
- });
5455
- Button.displayName = "Button";
5456
- var button_default = Button;
5457
- var buttonStyle = tv({
5458
- slots: {
5459
- base: "relative flex items-center justify-center whitespace-nowrap transition duration-200 select-none overflow-hidden box-border border border-transparent",
5460
- content: ""
5461
- },
5462
- variants: {
5463
- variant: {
5464
- solid: "",
5465
- soft: "",
5466
- outline: "",
5467
- ghost: ""
5468
- },
5469
- color: {
5470
- primary: "",
5471
- secondary: "",
5472
- neutral: "",
5473
- info: "",
5474
- success: "",
5475
- warning: "",
5476
- danger: ""
5477
- },
5478
- size: {
5479
- sm: {
5480
- base: "h-[24px] px-[8px] py-[3px] text-sm font-[700] rounded-sm gap-sm"
5481
- },
5482
- md: {
5483
- base: "h-[32px] px-[12px] py-[5.5px] text-md font-[700] rounded-md gap-md"
5484
- },
5485
- lg: {
5486
- base: "h-[40px] px-[16px] py-[8px] text-lg font-[700] rounded-lg gap-lg"
5487
- },
5488
- xl: {
5489
- base: "h-[50px] px-[20px] py-[11.5px] text-xl font-[700] rounded-xl gap-xl"
5490
- }
5491
- },
5492
- radius: {
5493
- default: {
5494
- base: ""
5495
- },
5496
- full: {
5497
- base: "rounded-full"
5498
- },
5499
- none: {
5500
- base: "rounded-none"
5501
- }
5502
- },
5503
- full: {
5504
- true: {
5505
- base: "w-full"
5506
- }
5507
- },
5508
- isLoading: {
5509
- true: {}
5510
- },
5511
- disabled: {
5512
- true: {
5513
- base: "!bg-neutral-soft !border-neutral-soft !text-neutral-light pointer-events-none"
5514
- }
5515
- },
5516
- isInGroup: {
5517
- true: {
5518
- base: "[&:not(:first-child):not(:last-child)]:rounded-none first:rounded-r-none last:rounded-l-none [&:not(:first-child)]:border-l-0"
5725
+ },
5726
+ isInGroup: {
5727
+ true: {
5728
+ base: [
5729
+ "[&:not(:first-child):not(:last-child)]:rounded-none",
5730
+ "first:rounded-r-none",
5731
+ "last:rounded-l-none",
5732
+ "[&:not(:first-child)]:border-l-0"
5733
+ ]
5519
5734
  }
5520
5735
  }
5521
5736
  },
5522
- defaultVariants: {
5523
- size: "md",
5524
- variant: "solid",
5525
- color: "primary",
5526
- full: false,
5527
- disabled: false,
5528
- isLoading: false,
5529
- isInGroup: false
5530
- },
5531
5737
  compoundVariants: [
5532
- // solid & color
5533
5738
  {
5534
5739
  variant: "solid",
5535
5740
  color: "primary",
5536
5741
  class: {
5537
- base: ["text-white", "bg-primary-main", "hover:bg-gradient-to-r", "hover:from-white/20", "hover:to-white/20"]
5742
+ base: [
5743
+ "text-white",
5744
+ "bg-primary-main",
5745
+ "hover:[background:linear-gradient(0deg,var(--dn-trans-light)_0%,var(--dn-trans-light)_100%),var(--dn-primary-main)]",
5746
+ "active:bg-primary-dark"
5747
+ ]
5538
5748
  }
5539
5749
  },
5540
5750
  {
5541
5751
  variant: "solid",
5542
5752
  color: "secondary",
5543
5753
  class: {
5544
- base: ["text-white", "bg-secondary-main", "hover:bg-gradient-to-r", "hover:from-white/20", "hover:to-white/20"]
5754
+ base: [
5755
+ "text-white",
5756
+ "bg-secondary-main",
5757
+ "hover:[background:linear-gradient(0deg,var(--dn-trans-light)_0%,var(--dn-trans-light)_100%),var(--dn-secondary-main)]",
5758
+ "active:bg-secondary-dark"
5759
+ ]
5545
5760
  }
5546
5761
  },
5547
5762
  {
5548
5763
  variant: "solid",
5549
5764
  color: "neutral",
5550
5765
  class: {
5551
- base: ["text-white", "bg-neutral-main", "hover:bg-gradient-to-r", "hover:from-white/20", "hover:to-white/20"]
5766
+ base: [
5767
+ "text-white",
5768
+ "bg-neutral-main",
5769
+ "hover:[background:linear-gradient(0deg,var(--dn-trans-light)_0%,var(--dn-trans-light)_100%),var(--dn-neutral-main)]",
5770
+ "active:bg-neutral-dark"
5771
+ ]
5552
5772
  }
5553
5773
  },
5554
5774
  {
5555
5775
  variant: "solid",
5556
5776
  color: "info",
5557
5777
  class: {
5558
- base: ["text-white", "bg-info-main", "hover:bg-gradient-to-r", "hover:from-white/20", "hover:to-white/20"]
5778
+ base: [
5779
+ "text-white",
5780
+ "bg-info-main",
5781
+ "hover:[background:linear-gradient(0deg,var(--dn-trans-light)_0%,var(--dn-trans-light)_100%),var(--dn-info-main)]",
5782
+ "active:bg-info-dark"
5783
+ ]
5559
5784
  }
5560
5785
  },
5561
5786
  {
5562
5787
  variant: "solid",
5563
5788
  color: "success",
5564
5789
  class: {
5565
- base: ["text-white", "bg-success-main", "hover:bg-gradient-to-r", "hover:from-white/20", "hover:to-white/20"]
5790
+ base: [
5791
+ "text-white",
5792
+ "bg-success-main",
5793
+ "hover:[background:linear-gradient(0deg,var(--dn-trans-light)_0%,var(--dn-trans-light)_100%),var(--dn-success-main)]",
5794
+ "active:bg-success-dark"
5795
+ ]
5566
5796
  }
5567
5797
  },
5568
5798
  {
5569
5799
  variant: "solid",
5570
5800
  color: "warning",
5571
5801
  class: {
5572
- base: ["text-white", "bg-warning-main", "hover:bg-gradient-to-r", "hover:from-white/20", "hover:to-white/20"]
5802
+ base: [
5803
+ "text-white",
5804
+ "bg-warning-main",
5805
+ "hover:[background:linear-gradient(0deg,var(--dn-trans-light)_0%,var(--dn-trans-light)_100%),var(--dn-warning-main)]",
5806
+ "active:bg-warning-dark"
5807
+ ]
5573
5808
  }
5574
5809
  },
5575
5810
  {
5576
5811
  variant: "solid",
5577
5812
  color: "danger",
5578
5813
  class: {
5579
- base: ["text-white", "bg-danger-main", "hover:bg-gradient-to-r", "hover:from-white/20", "hover:to-white/20"]
5814
+ base: [
5815
+ "text-white",
5816
+ "bg-danger-main",
5817
+ "hover:[background:linear-gradient(0deg,var(--dn-trans-light)_0%,var(--dn-trans-light)_100%),var(--dn-danger-main)]",
5818
+ "active:bg-danger-dark"
5819
+ ]
5580
5820
  }
5581
5821
  },
5582
5822
  // soft & color
@@ -5584,49 +5824,85 @@ var buttonStyle = tv({
5584
5824
  variant: "soft",
5585
5825
  color: "primary",
5586
5826
  class: {
5587
- base: ["text-primary-main", "bg-primary-soft", "border-primary-soft", "hover:border-primary-light"]
5827
+ base: [
5828
+ "text-primary-main",
5829
+ "bg-primary-soft",
5830
+ "border-primary-soft",
5831
+ "hover:border-primary-light",
5832
+ "active:bg-primary-light"
5833
+ ]
5588
5834
  }
5589
5835
  },
5590
5836
  {
5591
5837
  variant: "soft",
5592
5838
  color: "secondary",
5593
5839
  class: {
5594
- base: ["text-secondary-main", "bg-secondary-soft", "border-secondary-soft", "hover:border-secondary-light"]
5840
+ base: [
5841
+ "text-secondary-main",
5842
+ "bg-secondary-soft",
5843
+ "border-secondary-soft",
5844
+ "hover:border-secondary-light",
5845
+ "active:bg-secondary-light"
5846
+ ]
5595
5847
  }
5596
5848
  },
5597
5849
  {
5598
5850
  variant: "soft",
5599
5851
  color: "neutral",
5600
5852
  class: {
5601
- base: ["text-neutral-main", "bg-neutral-soft", "border-neutral-soft", "hover:border-neutral-light"]
5853
+ base: [
5854
+ "text-neutral-main",
5855
+ "bg-neutral-soft",
5856
+ "border-neutral-soft",
5857
+ "hover:border-neutral-light",
5858
+ "active:bg-neutral-light"
5859
+ ]
5602
5860
  }
5603
5861
  },
5604
5862
  {
5605
5863
  variant: "soft",
5606
5864
  color: "info",
5607
5865
  class: {
5608
- base: ["text-info-main", "bg-info-soft", "border-info-soft", "hover:border-info-light"]
5866
+ base: ["text-info-main", "bg-info-soft", "border-info-soft", "hover:border-info-light", "active:bg-info-light"]
5609
5867
  }
5610
5868
  },
5611
5869
  {
5612
5870
  variant: "soft",
5613
5871
  color: "success",
5614
5872
  class: {
5615
- base: ["text-success-main", "bg-success-soft", "border-success-soft", "hover:border-success-light"]
5873
+ base: [
5874
+ "text-success-main",
5875
+ "bg-success-soft",
5876
+ "border-success-soft",
5877
+ "hover:border-success-light",
5878
+ "active:bg-success-light"
5879
+ ]
5616
5880
  }
5617
5881
  },
5618
5882
  {
5619
5883
  variant: "soft",
5620
5884
  color: "warning",
5621
5885
  class: {
5622
- base: ["text-warning-main", "bg-warning-soft", "border-warning-soft", "hover:border-warning-light"]
5886
+ base: [
5887
+ "text-warning-main",
5888
+ "bg-warning-soft",
5889
+ "border-warning-soft",
5890
+ "hover:border-warning-light",
5891
+ "active:bg-warning-light"
5892
+ ]
5623
5893
  }
5624
5894
  },
5625
5895
  {
5626
5896
  variant: "soft",
5627
5897
  color: "danger",
5628
5898
  class: {
5629
- base: ["text-danger-main", "bg-danger-soft", "border-danger-soft", "hover:border-danger-light"]
5899
+ base: [
5900
+ "text-danger-main",
5901
+ "bg-danger-soft",
5902
+ "border-danger-soft",
5903
+ "hover:border-danger-light",
5904
+ "active:bg-danger-light"
5905
+ ]
5630
5906
  }
5631
5907
  },
5632
5908
  // outline & color
@@ -5634,49 +5910,91 @@ var buttonStyle = tv({
5634
5910
  variant: "outline",
5635
5911
  color: "primary",
5636
5912
  class: {
5637
- base: ["bg-body-background", "border-primary-main", "text-primary-main", "hover:bg-primary-soft"]
5913
+ base: [
5914
+ "bg-body-background",
5915
+ "border-primary-main",
5916
+ "text-primary-main",
5917
+ "hover:bg-primary-soft",
5918
+ "active:bg-primary-light"
5919
+ ]
5638
5920
  }
5639
5921
  },
5640
5922
  {
5641
5923
  variant: "outline",
5642
5924
  color: "secondary",
5643
5925
  class: {
5644
- base: ["bg-body-background", "border-secondary-main", "text-secondary-main", "hover:bg-secondary-soft"]
5926
+ base: [
5927
+ "bg-body-background",
5928
+ "border-secondary-main",
5929
+ "text-secondary-main",
5930
+ "hover:bg-secondary-soft",
5931
+ "active:bg-secondary-light"
5932
+ ]
5645
5933
  }
5646
5934
  },
5647
5935
  {
5648
5936
  variant: "outline",
5649
5937
  color: "neutral",
5650
5938
  class: {
5651
- base: ["bg-body-background", "border-neutral-main", "text-neutral-main", "hover:bg-neutral-soft"]
5939
+ base: [
5940
+ "bg-body-background",
5941
+ "border-neutral-main",
5942
+ "text-neutral-main",
5943
+ "hover:bg-neutral-soft",
5944
+ "active:bg-neutral-light"
5945
+ ]
5652
5946
  }
5653
5947
  },
5654
5948
  {
5655
5949
  variant: "outline",
5656
5950
  color: "info",
5657
5951
  class: {
5658
- base: ["bg-body-background", "border-info-main", "text-info-main", "hover:bg-info-soft"]
5952
+ base: [
5953
+ "bg-body-background",
5954
+ "border-info-main",
5955
+ "text-info-main",
5956
+ "hover:bg-info-soft",
5957
+ "active:bg-info-light"
5958
+ ]
5659
5959
  }
5660
5960
  },
5661
5961
  {
5662
5962
  variant: "outline",
5663
5963
  color: "success",
5664
5964
  class: {
5665
- base: ["bg-body-background", "border-success-main", "text-success-main", "hover:bg-success-soft"]
5965
+ base: [
5966
+ "bg-body-background",
5967
+ "border-success-main",
5968
+ "text-success-main",
5969
+ "hover:bg-success-soft",
5970
+ "active:bg-success-light"
5971
+ ]
5666
5972
  }
5667
5973
  },
5668
5974
  {
5669
5975
  variant: "outline",
5670
5976
  color: "warning",
5671
5977
  class: {
5672
- base: ["bg-body-background", "border-warning-main", "text-warning-main", "hover:bg-warning-soft"]
5978
+ base: [
5979
+ "bg-body-background",
5980
+ "border-warning-main",
5981
+ "text-warning-main",
5982
+ "hover:bg-warning-soft",
5983
+ "active:bg-warning-light"
5984
+ ]
5673
5985
  }
5674
5986
  },
5675
5987
  {
5676
5988
  variant: "outline",
5677
5989
  color: "danger",
5678
5990
  class: {
5679
- base: ["bg-body-background", "border-danger-main", "text-danger-main", "hover:bg-danger-soft"]
5991
+ base: [
5992
+ "bg-body-background",
5993
+ "border-danger-main",
5994
+ "text-danger-main",
5995
+ "hover:bg-danger-soft",
5996
+ "active:bg-danger-light"
5997
+ ]
5680
5998
  }
5681
5999
  },
5682
6000
  // ghost & color
@@ -5684,49 +6002,91 @@ var buttonStyle = tv({
5684
6002
  variant: "ghost",
5685
6003
  color: "primary",
5686
6004
  class: {
5687
- base: ["text-primary-main", "border-transparent", "hover:bg-primary-soft"]
6005
+ base: [
6006
+ "text-primary-main",
6007
+ "border-transparent",
6008
+ "hover:bg-primary-soft",
6009
+ "active:bg-primary-main",
6010
+ "active:text-common-white"
6011
+ ]
5688
6012
  }
5689
6013
  },
5690
6014
  {
5691
6015
  variant: "ghost",
5692
6016
  color: "secondary",
5693
6017
  class: {
5694
- base: ["text-secondary-main", "border-transparent", "hover:bg-secondary-soft"]
6018
+ base: [
6019
+ "text-secondary-main",
6020
+ "border-transparent",
6021
+ "hover:bg-secondary-soft",
6022
+ "active:bg-secondary-main",
6023
+ "active:text-common-white"
6024
+ ]
5695
6025
  }
5696
6026
  },
5697
6027
  {
5698
6028
  variant: "ghost",
5699
6029
  color: "neutral",
5700
6030
  class: {
5701
- base: ["text-neutral-main", "border-transparent", "hover:bg-neutral-soft"]
6031
+ base: [
6032
+ "text-neutral-main",
6033
+ "border-transparent",
6034
+ "hover:bg-neutral-soft",
6035
+ "active:bg-neutral-main",
6036
+ "active:text-common-white"
6037
+ ]
5702
6038
  }
5703
6039
  },
5704
6040
  {
5705
6041
  variant: "ghost",
5706
6042
  color: "info",
5707
6043
  class: {
5708
- base: ["text-info-main", "border-transparent", "hover:bg-info-soft"]
6044
+ base: [
6045
+ "text-info-main",
6046
+ "border-transparent",
6047
+ "hover:bg-info-soft",
6048
+ "active:bg-info-main",
6049
+ "active:text-common-white"
6050
+ ]
5709
6051
  }
5710
6052
  },
5711
6053
  {
5712
6054
  variant: "ghost",
5713
6055
  color: "success",
5714
6056
  class: {
5715
- base: ["text-success-main", "border-transparent", "hover:bg-success-soft"]
6057
+ base: [
6058
+ "text-success-main",
6059
+ "border-transparent",
6060
+ "hover:bg-success-soft",
6061
+ "active:bg-success-main",
6062
+ "active:text-common-white"
6063
+ ]
5716
6064
  }
5717
6065
  },
5718
6066
  {
5719
6067
  variant: "ghost",
5720
6068
  color: "warning",
5721
6069
  class: {
5722
- base: ["text-warning-main", "border-transparent", "hover:bg-warning-soft"]
6070
+ base: [
6071
+ "text-warning-main",
6072
+ "border-transparent",
6073
+ "hover:bg-warning-soft",
6074
+ "active:bg-warning-main",
6075
+ "active:text-common-white"
6076
+ ]
5723
6077
  }
5724
6078
  },
5725
6079
  {
5726
6080
  variant: "ghost",
5727
6081
  color: "danger",
5728
6082
  class: {
5729
- base: ["text-danger-main", "border-transparent", "hover:bg-danger-soft"]
6083
+ base: [
6084
+ "text-danger-main",
6085
+ "border-transparent",
6086
+ "hover:bg-danger-soft",
6087
+ "active:bg-danger-main",
6088
+ "active:text-common-white"
6089
+ ]
5730
6090
  }
5731
6091
  },
5732
6092
  // variant && size
@@ -5734,28 +6094,28 @@ var buttonStyle = tv({
5734
6094
  variant: ["soft", "outline"],
5735
6095
  size: "sm",
5736
6096
  class: {
5737
- base: "border-[1px]"
6097
+ base: ["border-sm"]
5738
6098
  }
5739
6099
  },
5740
6100
  {
5741
6101
  variant: ["soft", "outline"],
5742
6102
  size: "md",
5743
6103
  class: {
5744
- base: "border-[1.25px]"
6104
+ base: ["border-md"]
5745
6105
  }
5746
6106
  },
5747
6107
  {
5748
6108
  variant: ["soft", "outline"],
5749
6109
  size: "lg",
5750
6110
  class: {
5751
- base: "border-[1.5px]"
6111
+ base: ["border-lg"]
5752
6112
  }
5753
6113
  },
5754
6114
  {
5755
6115
  variant: ["soft", "outline"],
5756
6116
  size: "xl",
5757
6117
  class: {
5758
- base: "border-[1.75px]"
6118
+ base: ["border-xl"]
5759
6119
  }
5760
6120
  },
5761
6121
  // variant && disabled
@@ -5763,19 +6123,270 @@ var buttonStyle = tv({
5763
6123
  variant: ["soft", "ghost"],
5764
6124
  disabled: true,
5765
6125
  class: {
5766
- base: "!border-neutral-soft"
6126
+ base: ["!border-neutral-soft"]
5767
6127
  }
5768
6128
  },
5769
6129
  {
5770
6130
  variant: ["outline"],
5771
6131
  disabled: true,
5772
6132
  class: {
5773
- base: "!border-neutral-light"
6133
+ base: ["!border-neutral-light"]
5774
6134
  }
5775
6135
  }
5776
6136
  ]
5777
6137
  });
5778
6138
 
6139
+ // src/components/ripple/ripple.tsx
6140
+ var import_framer_motion = require("framer-motion");
6141
+ var import_jsx_runtime3 = require("react/jsx-runtime");
6142
+ var Ripple = (props) => {
6143
+ const { ripples = [], motionProps, color = "currentColor", style, onClear } = props;
6144
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_jsx_runtime3.Fragment, { children: ripples.map((ripple) => {
6145
+ const duration = (0, import_framer_motion.clamp)(ripple.size > 100 ? 0.75 : 0.5, 0.01 * ripple.size, 0.2);
6146
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_framer_motion.LazyMotion, { features: import_framer_motion.domAnimation, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_framer_motion.AnimatePresence, { mode: "popLayout", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
6147
+ import_framer_motion.m.span,
6148
+ {
6149
+ animate: { transform: "scale(2)", opacity: 0 },
6150
+ className: "deepnoidui-ripple",
6151
+ exit: { opacity: 0 },
6152
+ initial: { transform: "scale(0)", opacity: 0.35 },
6153
+ style: {
6154
+ position: "absolute",
6155
+ backgroundColor: color,
6156
+ borderRadius: "100%",
6157
+ transformOrigin: "center",
6158
+ pointerEvents: "none",
6159
+ overflow: "hidden",
6160
+ inset: 0,
6161
+ zIndex: 0,
6162
+ top: ripple.y,
6163
+ left: ripple.x,
6164
+ width: `${ripple.size}px`,
6165
+ height: `${ripple.size}px`,
6166
+ ...style
6167
+ },
6168
+ transition: { duration },
6169
+ onAnimationComplete: () => {
6170
+ onClear(ripple.key);
6171
+ },
6172
+ ...motionProps
6173
+ }
6174
+ ) }) }, ripple.key);
6175
+ }) });
6176
+ };
6177
+ Ripple.displayName = "HeroUI.Ripple";
6178
+ var ripple_default = Ripple;
6179
+
6180
+ // src/components/ripple/useRipple.ts
6181
+ var import_react = require("react");
6182
+ function useRipple(props = {}) {
6183
+ const [ripples, setRipples] = (0, import_react.useState)([]);
6184
+ const getUniqueID = (key) => `${key}-${Math.random().toString(36).substr(2, 9)}`;
6185
+ const onPress = (0, import_react.useCallback)((event) => {
6186
+ const trigger = event.currentTarget;
6187
+ const rect = trigger.getBoundingClientRect();
6188
+ const size = Math.max(trigger.clientWidth, trigger.clientHeight);
6189
+ setRipples((prevRipples) => [
6190
+ ...prevRipples,
6191
+ {
6192
+ key: getUniqueID(prevRipples.length.toString()),
6193
+ size,
6194
+ x: event.clientX - rect.left - size / 2,
6195
+ y: event.clientY - rect.top - size / 2
6196
+ }
6197
+ ]);
6198
+ }, []);
6199
+ const onClear = (0, import_react.useCallback)((key) => {
6200
+ setRipples((prevState) => prevState.filter((ripple) => ripple.key !== key));
6201
+ }, []);
6202
+ return { ripples, onClear, onPress, ...props };
6203
+ }
6204
+
6205
+ // src/components/button/button.tsx
6206
+ var import_jsx_runtime4 = require("react/jsx-runtime");
6207
+ var extractTextFromChildren = (children) => {
6208
+ if (typeof children === "string") {
6209
+ return children;
6210
+ }
6211
+ if (typeof children === "number") {
6212
+ return String(children);
6213
+ }
6214
+ if ((0, import_react2.isValidElement)(children)) {
6215
+ const childProps = children.props;
6216
+ return extractTextFromChildren(childProps.children);
6217
+ }
6218
+ if (Array.isArray(children)) {
6219
+ return children.map((child) => extractTextFromChildren(child)).join(" ");
6220
+ }
6221
+ return "";
6222
+ };
6223
+ var Button = (0, import_react2.forwardRef)((originalProps, ref) => {
6224
+ const [props, variantProps] = mapPropsVariants(originalProps, buttonStyle.variantKeys);
6225
+ const { classNames, startContent, endContent, disableRipple, asChild, children, ...buttonProps } = props;
6226
+ const slots = (0, import_react2.useMemo)(() => buttonStyle({ ...variantProps }), [variantProps]);
6227
+ const { onPress: onRipplePressHandler, onClear: onClearRipple, ripples } = useRipple();
6228
+ const autoAriaLabel = (0, import_react2.useMemo)(() => {
6229
+ if (originalProps["aria-label"] || originalProps["aria-labelledby"]) {
6230
+ return void 0;
6231
+ }
6232
+ if (originalProps.isLoading) {
6233
+ const baseText = extractTextFromChildren(children);
6234
+ return baseText ? `${baseText} (loading)` : "loading";
6235
+ }
6236
+ const textContent = extractTextFromChildren(children);
6237
+ return textContent || void 0;
6238
+ }, [originalProps["aria-label"], originalProps["aria-labelledby"], originalProps.isLoading, children]);
6239
+ const handlePress = (0, import_react2.useCallback)(
6240
+ (e) => {
6241
+ if (disableRipple || originalProps.disabled) return;
6242
+ onRipplePressHandler(e);
6243
+ },
6244
+ [disableRipple, originalProps.disabled, onRipplePressHandler]
6245
+ );
6246
+ const mouseDownHandler = (0, import_react2.useCallback)(
6247
+ (e) => {
6248
+ var _a;
6249
+ (_a = buttonProps.onMouseDown) == null ? void 0 : _a.call(buttonProps, e);
6250
+ if (disableRipple || originalProps.disabled) return;
6251
+ handlePress(e);
6252
+ },
6253
+ [buttonProps.onMouseDown, disableRipple, originalProps.disabled, handlePress]
6254
+ );
6255
+ const getRippleProps = (0, import_react2.useCallback)(
6256
+ () => ({ ripples, onClear: onClearRipple }),
6257
+ [ripples, onClearRipple]
6258
+ );
6259
+ const getBaseProps = (0, import_react2.useCallback)(
6260
+ () => ({
6261
+ ...buttonProps,
6262
+ onMouseDown: mouseDownHandler,
6263
+ ref,
6264
+ disabled: originalProps.disabled || originalProps.isLoading,
6265
+ "data-loading": originalProps.isLoading,
6266
+ className: slots.base({ class: classNames == null ? void 0 : classNames.base }),
6267
+ "aria-label": originalProps["aria-label"] || autoAriaLabel
6268
+ }),
6269
+ [
6270
+ buttonProps,
6271
+ mouseDownHandler,
6272
+ ref,
6273
+ originalProps.disabled,
6274
+ originalProps.isLoading,
6275
+ originalProps["aria-label"],
6276
+ autoAriaLabel,
6277
+ slots,
6278
+ classNames == null ? void 0 : classNames.base
6279
+ ]
6280
+ );
6281
+ const getContentProps = (0, import_react2.useCallback)(
6282
+ () => ({
6283
+ className: slots.content({ class: classNames == null ? void 0 : classNames.content }),
6284
+ size: originalProps.size
6285
+ }),
6286
+ [slots, classNames, originalProps.size]
6287
+ );
6288
+ const renderContent = (content) => {
6289
+ if ((0, import_react2.isValidElement)(content)) {
6290
+ const _content = content;
6291
+ const existingProps = _content.props;
6292
+ const mergedProps = {
6293
+ ...getContentProps(),
6294
+ className: `${getContentProps().className || ""} ${existingProps.className || ""}`.trim()
6295
+ };
6296
+ return (0, import_react2.cloneElement)(content, mergedProps);
6297
+ } else {
6298
+ const contentProps = getContentProps();
6299
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { ...contentProps, children: content });
6300
+ }
6301
+ };
6302
+ const buttonContent = /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_jsx_runtime4.Fragment, { children: originalProps.isLoading ? renderContent(/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Icon_default, { name: "loading", className: "animate-spin" })) : /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(import_jsx_runtime4.Fragment, { children: [
6303
+ startContent && renderContent(startContent),
6304
+ children,
6305
+ endContent && renderContent(endContent),
6306
+ !disableRipple && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ripple_default, { ...getRippleProps() })
6307
+ ] }) });
6308
+ if (asChild && (0, import_react2.isValidElement)(children)) {
6309
+ const childElement = children;
6310
+ const baseProps = getBaseProps();
6311
+ const mergedProps = {
6312
+ ...childElement.props,
6313
+ ...baseProps,
6314
+ className: `${baseProps.className || ""} ${childElement.props.className || ""}`.trim(),
6315
+ onClick: (e) => {
6316
+ var _a, _b, _c;
6317
+ (_b = (_a = childElement.props).onClick) == null ? void 0 : _b.call(_a, e);
6318
+ (_c = baseProps.onClick) == null ? void 0 : _c.call(baseProps, e);
6319
+ },
6320
+ onMouseDown: (e) => {
6321
+ var _a, _b, _c;
6322
+ (_b = (_a = childElement.props).onMouseDown) == null ? void 0 : _b.call(_a, e);
6323
+ (_c = baseProps.onMouseDown) == null ? void 0 : _c.call(baseProps, e);
6324
+ },
6325
+ children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_jsx_runtime4.Fragment, { children: originalProps.isLoading ? renderContent(/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Icon_default, { name: "loading", className: "animate-spin" })) : /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(import_jsx_runtime4.Fragment, { children: [
6326
+ startContent && renderContent(startContent),
6327
+ childElement.props.children,
6328
+ endContent && renderContent(endContent),
6329
+ !disableRipple && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ripple_default, { ...getRippleProps() })
6330
+ ] }) })
6331
+ };
6332
+ return (0, import_react2.cloneElement)(childElement, mergedProps);
6333
+ }
6334
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("button", { ...getBaseProps(), children: buttonContent });
6335
+ });
6336
+ Button.displayName = "Button";
6337
+ var button_default = Button;
6338
+ var buttonStyle = tv({
6339
+ extend: buttonBaseStyle,
6340
+ slots: {
6341
+ base: ["w-fit"],
6342
+ content: []
6343
+ },
6344
+ variants: {
6345
+ size: {
6346
+ sm: {
6347
+ base: ["h-[24px]", "px-[8px]", "py-[3px]", "text-sm", "font-bold", "rounded-sm", "gap-sm"]
6348
+ },
6349
+ md: {
6350
+ base: ["h-[32px]", "px-[12px]", "py-[5.5px]", "text-md", "font-bold", "rounded-md", "gap-md"]
6351
+ },
6352
+ lg: {
6353
+ base: ["h-[40px]", "px-[16px]", "py-[8px]", "text-lg", "font-bold", "rounded-lg", "gap-lg"]
6354
+ },
6355
+ xl: {
6356
+ base: ["h-[50px]", "px-[20px]", "py-[11.5px]", "text-xl", "font-bold", "rounded-xl", "gap-xl"]
6357
+ }
6358
+ },
6359
+ radius: {
6360
+ default: {
6361
+ base: []
6362
+ },
6363
+ full: {
6364
+ base: ["rounded-full"]
6365
+ },
6366
+ none: {
6367
+ base: ["rounded-none"]
6368
+ }
6369
+ },
6370
+ full: {
6371
+ true: {
6372
+ base: ["w-full"]
6373
+ }
6374
+ },
6375
+ isLoading: {
6376
+ true: {}
6377
+ }
6378
+ },
6379
+ defaultVariants: {
6380
+ size: "md",
6381
+ variant: "solid",
6382
+ color: "primary",
6383
+ full: false,
6384
+ disabled: false,
6385
+ isLoading: false,
6386
+ isInGroup: false
6387
+ }
6388
+ });
6389
+
5779
6390
  // src/utils/clsx.ts
5780
6391
  function clsx(...args) {
5781
6392
  var i = 0, tmp, x, str = "";
@@ -5842,18 +6453,22 @@ var import_jsx_runtime6 = require("react/jsx-runtime");
5842
6453
  var Modal = (0, import_react4.forwardRef)((props, ref) => {
5843
6454
  const [localProps, variantProps] = mapPropsVariants(props, modal.variantKeys);
5844
6455
  const {
5845
- classNames,
5846
6456
  isOpen,
6457
+ iconName,
5847
6458
  title,
5848
6459
  content,
5849
6460
  confirmButtonText,
5850
6461
  cancelButtonText,
5851
6462
  showCloseButton = true,
5852
6463
  isKeyboardDismissDisabled = false,
6464
+ hasBackdrop = true,
5853
6465
  onConfirm,
5854
6466
  onCancel,
5855
- extraFooter
6467
+ extraFooter,
6468
+ classNames,
6469
+ ...restProps
5856
6470
  } = localProps;
6471
+ const variant = props.variant || "horizontal";
5857
6472
  const slots = (0, import_react4.useMemo)(() => modal(variantProps), [variantProps]);
5858
6473
  (0, import_react4.useEffect)(() => {
5859
6474
  document.body.classList.toggle("overflow-hidden", !!isOpen);
@@ -5870,29 +6485,30 @@ var Modal = (0, import_react4.forwardRef)((props, ref) => {
5870
6485
  if (!isOpen) return null;
5871
6486
  return (0, import_react_dom.createPortal)(
5872
6487
  /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_jsx_runtime6.Fragment, { children: [
5873
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(backdrop_default, { open: true }),
5874
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { ref, className: slots.base({ class: classNames == null ? void 0 : classNames.base }), children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: slots.modalWrapper({ class: classNames == null ? void 0 : classNames.modalWrapper }), children: [
5875
- showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
5876
- Icon_default,
5877
- {
5878
- size: "xl",
5879
- name: "close",
5880
- className: slots.closeIcon({ class: classNames == null ? void 0 : classNames.closeIcon }),
5881
- onClick: onCancel
5882
- }
5883
- ),
5884
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: slots.wrapper({ class: classNames == null ? void 0 : classNames.wrapper }), children: [
5885
- title && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: slots.title({ class: classNames == null ? void 0 : classNames.title }), children: title }),
5886
- typeof content === "string" ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: slots.content({ class: classNames == null ? void 0 : classNames.content }), children: content }) : content,
5887
- (cancelButtonText || confirmButtonText) && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: slots.footerWrapper({ class: classNames == null ? void 0 : classNames.footerWrapper }), children: [
5888
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: slots.footer({ class: classNames == null ? void 0 : classNames.footer }), children: [
5889
- cancelButtonText && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(button_default, { variant: "soft", color: "neutral", full: true, onClick: onCancel, children: cancelButtonText }),
5890
- confirmButtonText && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(button_default, { color: props.color, full: true, onClick: onConfirm, children: confirmButtonText })
5891
- ] }),
5892
- extraFooter
5893
- ] })
6488
+ hasBackdrop && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(backdrop_default, { open: true }),
6489
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { ref, className: slots.base({ class: classNames == null ? void 0 : classNames.base }), ...restProps, children: [
6490
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: slots.titleWrapper({ class: classNames == null ? void 0 : classNames.titleWrapper }), children: [
6491
+ iconName && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
6492
+ Icon_default,
6493
+ {
6494
+ name: iconName,
6495
+ size: variant === "vertical" ? 40 : 30,
6496
+ fill: true,
6497
+ className: slots.icon({ class: classNames == null ? void 0 : classNames.icon })
6498
+ }
6499
+ ),
6500
+ title && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: slots.title({ class: classNames == null ? void 0 : classNames.title }), children: title })
6501
+ ] }),
6502
+ showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Icon_default, { name: "close", className: slots.closeIcon({ class: classNames == null ? void 0 : classNames.closeIcon }), onClick: onCancel }),
6503
+ typeof content === "string" ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: slots.content({ class: classNames == null ? void 0 : classNames.content }), children: content }) : content,
6504
+ (cancelButtonText || confirmButtonText) && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: slots.footerWrapper({ class: classNames == null ? void 0 : classNames.footerWrapper }), children: [
6505
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: slots.footer({ class: classNames == null ? void 0 : classNames.footer }), children: [
6506
+ cancelButtonText && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(button_default, { variant: "outline", color: props.color, full: true, onClick: onCancel, children: cancelButtonText }),
6507
+ confirmButtonText && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(button_default, { color: props.color, full: true, onClick: onConfirm, children: confirmButtonText })
6508
+ ] }),
6509
+ extraFooter
5894
6510
  ] })
5895
- ] }) })
6511
+ ] })
5896
6512
  ] }),
5897
6513
  document.body
5898
6514
  );
@@ -5906,52 +6522,48 @@ var modal = tv({
5906
6522
  "absolute",
5907
6523
  "fixed",
5908
6524
  "top-1/2",
5909
- "-translate-y-1/2",
5910
6525
  "left-1/2",
5911
6526
  "-translate-x-1/2",
6527
+ "-translate-y-1/2",
5912
6528
  "z-[50]",
5913
- "bg-body-background"
5914
- ],
5915
- modalWrapper: [
5916
- "min-w-[450px]",
6529
+ "rounded-2xl",
6530
+ "min-w-[340px]",
5917
6531
  "flex",
5918
6532
  "flex-col",
5919
6533
  "justify-center",
5920
- "p-[30px]",
5921
- "bg-background",
6534
+ "gap-20",
6535
+ "p-20",
6536
+ "bg-body-background",
5922
6537
  "shadow-drop",
5923
6538
  "shadow-foreground/20",
5924
- "rounded-xlg",
5925
- "overflow-hidden",
5926
- "group-data-[icon-visibility=true]/modal:mt-[0]",
5927
- "group-data-[icon-visibility=true]/modal:pt-[60px]"
6539
+ "rounded-2xl",
6540
+ "overflow-hidden"
5928
6541
  ],
5929
- wrapper: ["flex", "flex-col", "gap-[30px]"],
5930
- title: ["text-xl", "font-extrabold", "text-foreground"],
5931
- content: ["text-md", "font-bold", "text-center", "break-words", "bg-neutral-soft", "rounded-[5px]", "p-[10px]"],
5932
- footerWrapper: ["flex", "flex-col", "gap-[5px]"],
5933
- footer: ["flex", "gap-[10px]"],
5934
- closeIcon: [
5935
- "absolute",
5936
- "top-[30px]",
5937
- "right-[30px]",
5938
- "cursor-pointer",
5939
- "z-60",
5940
- "group-data-[icon-visibility=true]/modal:top-[80px]"
5941
- ]
6542
+ icon: [],
6543
+ titleWrapper: ["flex", "items-center", "gap-10"],
6544
+ title: ["text-xl", "font-extrabold", "text-body-foreground"],
6545
+ content: ["text-md", "text-center", "break-words", "bg-trans-soft", "rounded-5", "p-lg", "text-body-foreground"],
6546
+ footerWrapper: ["flex", "flex-col", "gap-5"],
6547
+ footer: ["flex", "gap-10"],
6548
+ closeIcon: ["absolute", "top-[20px]", "right-[20px]", "cursor-pointer", "z-60", "text-neutral-dark"]
5942
6549
  },
5943
6550
  variants: {
6551
+ variant: {
6552
+ vertical: { titleWrapper: ["flex-col"] },
6553
+ horizontal: { titleWrapper: ["flex-row"] }
6554
+ },
5944
6555
  color: {
5945
- primary: {},
5946
- secondary: {},
5947
- neutral: {},
5948
- success: {},
5949
- info: {},
5950
- warning: {},
5951
- danger: {}
6556
+ primary: { icon: ["text-primary-main"] },
6557
+ secondary: { icon: ["text-secondary-main"] },
6558
+ neutral: { icon: ["text-neutral-main"] },
6559
+ success: { icon: ["text-success-main"] },
6560
+ info: { icon: ["text-info-main"] },
6561
+ warning: { icon: ["text-warning-main"] },
6562
+ danger: { icon: ["text-danger-main"] }
5952
6563
  }
5953
6564
  },
5954
6565
  defaultVariants: {
6566
+ variant: "horizontal",
5955
6567
  color: "primary"
5956
6568
  }
5957
6569
  });