@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
@@ -114,6 +114,352 @@ var import_tailwind_variants = require("tailwind-variants");
114
114
  // ../tailwind-config/src/plugin.ts
115
115
  var import_plugin = __toESM(require_plugin());
116
116
 
117
+ // ../tailwind-config/src/colors/primitive-palette.ts
118
+ var primitivePalette = {
119
+ bg: {
120
+ "01": "#040811",
121
+ "02": "#040811",
122
+ "03": "#14161E",
123
+ "04": "#070414",
124
+ "05": "#070C12",
125
+ "06": "#202123"
126
+ },
127
+ gray: {
128
+ cool: {
129
+ 50: "#F7F7F8",
130
+ 100: "#EEEEF0",
131
+ 200: "#D8D9DF",
132
+ 300: "#B6B8C3",
133
+ 400: "#999CA9",
134
+ 500: "#717486",
135
+ 600: "#5B5E6E",
136
+ 700: "#4A4C5A",
137
+ 800: "#40424C",
138
+ 900: "#36373F",
139
+ 950: "#25252C"
140
+ },
141
+ warm: {
142
+ 50: "#F6F6F6",
143
+ 100: "#E7E7E7",
144
+ 200: "#D1D1D1",
145
+ 300: "#B0B0B0",
146
+ 400: "#888888",
147
+ 500: "#6D6D6D",
148
+ 600: "#5D5D5D",
149
+ 700: "#525252",
150
+ 800: "#454545",
151
+ 900: "#3D3D3D",
152
+ 950: "#25252C"
153
+ }
154
+ },
155
+ opacity: {
156
+ white: {
157
+ "0": "#FFFFFF, 0",
158
+ 5: "#FFFFFF, 5",
159
+ 10: "#FFFFFF, 10",
160
+ 20: "#FFFFFF, 20",
161
+ 30: "#FFFFFF, 30",
162
+ 40: "#FFFFFF, 40",
163
+ 50: "#FFFFFF, 50",
164
+ 60: "#FFFFFF, 60",
165
+ 70: "#FFFFFF, 70",
166
+ 80: "#FFFFFF, 80",
167
+ 90: "#FFFFFF, 90"
168
+ },
169
+ black: {
170
+ "0": "#000000, 0",
171
+ 5: "#000000, 5",
172
+ 10: "#000000, 10",
173
+ 20: "#000000, 20",
174
+ 30: "#000000, 30",
175
+ 40: "#000000, 40",
176
+ 50: "#000000, 50",
177
+ 60: "#000000, 60",
178
+ 70: "#000000, 70",
179
+ 80: "#000000, 80",
180
+ 90: "#000000, 90"
181
+ }
182
+ },
183
+ red: {
184
+ 50: "#FEF2F2",
185
+ 100: "#FEE9E9",
186
+ 200: "#FCCFD2",
187
+ 300: "#F9A8AC",
188
+ 400: "#F57780",
189
+ 500: "#EC4757",
190
+ 600: "#D82640",
191
+ 700: "#B71934",
192
+ 800: "#991832",
193
+ 900: "#831831",
194
+ 950: "#831831"
195
+ },
196
+ rose: {
197
+ 50: "#FDF4F6",
198
+ 100: "#F9E9EC",
199
+ 200: "#F4D8DD",
200
+ 300: "#E9B8C2",
201
+ 400: "#DF96A6",
202
+ 500: "#CB6881",
203
+ 600: "#B54969",
204
+ 700: "#973957",
205
+ 800: "#7F324D",
206
+ 900: "#6A2740",
207
+ 950: "#3C1523"
208
+ },
209
+ hotPink: {
210
+ 50: "#FDF2F7",
211
+ 100: "#FDE6F0",
212
+ 200: "#FCCEE3",
213
+ 300: "#FBA6CA",
214
+ 400: "#F76FA6",
215
+ 500: "#F04485",
216
+ 600: "#E2326C",
217
+ 700: "#C21448",
218
+ 800: "#A1133C",
219
+ 900: "#861535",
220
+ 950: "#52051B"
221
+ },
222
+ sepia: {
223
+ 50: "#FCF5F4",
224
+ 100: "#FAE9E9",
225
+ 200: "#F5D6D7",
226
+ 300: "#EDB4B6",
227
+ 400: "#E28A8F",
228
+ 500: "#D45F69",
229
+ 600: "#BE4051",
230
+ 700: "#9F3142",
231
+ 800: "#862B3C",
232
+ 900: "#6B2433",
233
+ 950: "#320E15"
234
+ },
235
+ orange: {
236
+ 50: "#FEF7EE",
237
+ 100: "#FDEDD7",
238
+ 200: "#F9D8AF",
239
+ 300: "#F5BB7C",
240
+ 400: "#F09447",
241
+ 500: "#EC7723",
242
+ 600: "#E15F19",
243
+ 700: "#E15F19",
244
+ 800: "#92391A",
245
+ 900: "#763118",
246
+ 950: "#40160A"
247
+ },
248
+ yellow: {
249
+ 50: "#F9F2E5",
250
+ 100: "#F5E6BC",
251
+ 200: "#FFE9BC",
252
+ 300: "#FFD174",
253
+ 400: "#F8BE4A",
254
+ 500: "#EAAD30",
255
+ 600: "#D77908",
256
+ 700: "#B2550B",
257
+ 800: "#91420F",
258
+ 900: "#773610",
259
+ 950: "#441B04"
260
+ },
261
+ tree: {
262
+ 50: "#F5F3F1",
263
+ 100: "#E5E1DC",
264
+ 200: "#CCC5BC",
265
+ 300: "#AFA395",
266
+ 400: "#978878",
267
+ 500: "#907E6F",
268
+ 600: "#756459",
269
+ 700: "#5F4F49",
270
+ 800: "#524541",
271
+ 900: "#483D3B",
272
+ 950: "#282120"
273
+ },
274
+ brown: {
275
+ 50: "#F6F3F0",
276
+ 100: "#F4EDEC",
277
+ 200: "#EBDFDD",
278
+ 300: "#DCC9C5",
279
+ 400: "#C6A9A3",
280
+ 500: "#B08983",
281
+ 600: "#A27E77",
282
+ 700: "#7F5D56",
283
+ 800: "#6A4F4A",
284
+ 900: "#5B4541",
285
+ 950: "#2C1E1C"
286
+ },
287
+ lime: {
288
+ 50: "#F7FFE5",
289
+ 100: "#ECFFC7",
290
+ 200: "#D9FF95",
291
+ 300: "#BDFE58",
292
+ 400: "#A1F524",
293
+ 500: "#82DC06",
294
+ 600: "#63B000",
295
+ 700: "#4B8506",
296
+ 800: "#3E690B",
297
+ 900: "#34580F",
298
+ 950: "#193102"
299
+ },
300
+ green: {
301
+ 50: "#E7F3EB",
302
+ 100: "#DFF9EA",
303
+ 200: "#CEECDA",
304
+ 300: "#9CD4B3",
305
+ 400: "#6EC092",
306
+ 500: "#3FA46B",
307
+ 600: "#209754",
308
+ 700: "#1E7745",
309
+ 800: "#1D5E3A",
310
+ 900: "#194E32",
311
+ 950: "#082B19"
312
+ },
313
+ timberGreen: {
314
+ 50: "#F1FCF5",
315
+ 100: "#DFF9EA",
316
+ 200: "#B5DACD",
317
+ 300: "#8ABFAF",
318
+ 400: "#60A18F",
319
+ 500: "#468675",
320
+ 600: "#366B5F",
321
+ 700: "#2E574D",
322
+ 800: "#2A4641",
323
+ 900: "#1D2F2B",
324
+ 950: "#11221E"
325
+ },
326
+ teal: {
327
+ 50: "#E2F1F0",
328
+ 100: "#C9EBE8",
329
+ 200: "#C7E8E5",
330
+ 300: "#8AD0D0",
331
+ 400: "#67C4C4",
332
+ 500: "#39A6A7",
333
+ 600: "#258386",
334
+ 700: "#1B666A",
335
+ 800: "#1A5255",
336
+ 900: "#1A4447",
337
+ 950: "#09272A"
338
+ },
339
+ lightBlue: {
340
+ 50: "#F2F8FD",
341
+ 100: "#E3EFFB",
342
+ 200: "#C1E0F6",
343
+ 300: "#8BC6EE",
344
+ 400: "#3DA2E1",
345
+ 500: "#258FD2",
346
+ 600: "#1771B2",
347
+ 700: "#145A90",
348
+ 800: "#154D77",
349
+ 900: "#174163",
350
+ 950: "#062C2D"
351
+ },
352
+ sea: {
353
+ 50: "#F4F6FC",
354
+ 100: "#E8EDF6",
355
+ 200: "#CBD9EB",
356
+ 300: "#9FB9DA",
357
+ 400: "#6A93C5",
358
+ 500: "#446FA4",
359
+ 600: "#375D92",
360
+ 700: "#2D4B77",
361
+ 800: "#294163",
362
+ 900: "#263954",
363
+ 950: "#1A2537"
364
+ },
365
+ blue: {
366
+ 50: "#F0F6FE",
367
+ 100: "#DDEAFC",
368
+ 200: "#C2DBFB",
369
+ 300: "#98C5F8",
370
+ 400: "#68A7F2",
371
+ 500: "#377CEB",
372
+ 600: "#2F68E1",
373
+ 700: "#2754CE",
374
+ 800: "#20429E",
375
+ 900: "#1C2A52",
376
+ 950: "#061132"
377
+ },
378
+ lightPurple: {
379
+ 50: "#F6F5FD",
380
+ 100: "#EEEDFA",
381
+ 200: "#DDDCFD",
382
+ 300: "#BDB9EC",
383
+ 400: "#AAA1E4",
384
+ 500: "#826CE3",
385
+ 600: "#7250D7",
386
+ 700: "#623DC4",
387
+ 800: "#5133A4",
388
+ 900: "#442B87",
389
+ 950: "#291A5B"
390
+ }
391
+ };
392
+
393
+ // ../tailwind-config/src/colors/semantic-palette.ts
394
+ var semanticPalette = {
395
+ primary: {
396
+ soft: { light: primitivePalette.blue[100], dark: primitivePalette.blue[950] },
397
+ light: { light: primitivePalette.blue[200], dark: primitivePalette.blue[900] },
398
+ main: { light: primitivePalette.blue[600], dark: primitivePalette.blue[600] },
399
+ dark: { light: primitivePalette.blue[800], dark: primitivePalette.blue[500] },
400
+ strong: { light: primitivePalette.blue[900], dark: primitivePalette.blue[200] }
401
+ },
402
+ secondary: {
403
+ soft: { light: primitivePalette.lightPurple[100], dark: primitivePalette.lightPurple[950] },
404
+ light: { light: primitivePalette.lightPurple[200], dark: primitivePalette.lightPurple[900] },
405
+ main: { light: primitivePalette.lightPurple[600], dark: primitivePalette.lightPurple[500] },
406
+ dark: { light: primitivePalette.lightPurple[800], dark: primitivePalette.lightPurple[700] },
407
+ strong: { light: primitivePalette.lightPurple[950], dark: primitivePalette.lightPurple[950] }
408
+ },
409
+ body: {
410
+ foreground: { light: primitivePalette.gray.cool[950], dark: primitivePalette.gray.cool[50] },
411
+ background: { light: primitivePalette.gray.cool[50], dark: primitivePalette.bg["06"] }
412
+ },
413
+ neutral: {
414
+ soft: { light: primitivePalette.gray.cool[100], dark: primitivePalette.gray.cool[900] },
415
+ light: { light: primitivePalette.gray.cool[200], dark: primitivePalette.gray.cool[700] },
416
+ main: { light: primitivePalette.gray.cool[400], dark: primitivePalette.gray.cool[400] },
417
+ dark: { light: primitivePalette.gray.cool[500], dark: primitivePalette.gray.cool[300] },
418
+ strong: { light: primitivePalette.gray.cool[700], dark: primitivePalette.gray.cool[200] }
419
+ },
420
+ trans: {
421
+ soft: { light: primitivePalette.opacity.black[5], dark: primitivePalette.opacity.white[5] },
422
+ light: { light: primitivePalette.opacity.black[10], dark: primitivePalette.opacity.white[10] },
423
+ main: { light: primitivePalette.opacity.black[20], dark: primitivePalette.opacity.white[20] },
424
+ dark: { light: primitivePalette.opacity.black[30], dark: primitivePalette.opacity.white[30] },
425
+ strong: { light: primitivePalette.opacity.black[60], dark: primitivePalette.opacity.black[60] }
426
+ },
427
+ common: {
428
+ black: { light: primitivePalette.gray.cool[950], dark: primitivePalette.gray.cool[950] },
429
+ white: { light: primitivePalette.gray.cool[50], dark: primitivePalette.gray.cool[50] },
430
+ transparent: { light: primitivePalette.opacity.white["0"], dark: primitivePalette.opacity.black["0"] },
431
+ hover: { light: primitivePalette.opacity.black[5], dark: primitivePalette.opacity.white[5] }
432
+ },
433
+ info: {
434
+ soft: { light: primitivePalette.teal[50], dark: primitivePalette.teal[950] },
435
+ light: { light: primitivePalette.teal[100], dark: primitivePalette.teal[900] },
436
+ main: { light: primitivePalette.teal[500], dark: primitivePalette.teal[500] },
437
+ dark: { light: primitivePalette.teal[600], dark: primitivePalette.teal[700] },
438
+ strong: { light: "", dark: "" }
439
+ },
440
+ success: {
441
+ soft: { light: primitivePalette.green[50], dark: primitivePalette.green[950] },
442
+ light: { light: primitivePalette.green[200], dark: primitivePalette.green[900] },
443
+ main: { light: primitivePalette.green[500], dark: primitivePalette.green[600] },
444
+ dark: { light: primitivePalette.green[600], dark: primitivePalette.green[700] },
445
+ strong: { light: "", dark: "" }
446
+ },
447
+ warning: {
448
+ soft: { light: primitivePalette.yellow[50], dark: primitivePalette.yellow[950] },
449
+ light: { light: primitivePalette.yellow[100], dark: primitivePalette.yellow[900] },
450
+ main: { light: primitivePalette.yellow[500], dark: primitivePalette.yellow[600] },
451
+ dark: { light: primitivePalette.yellow[600], dark: primitivePalette.yellow[700] },
452
+ strong: { light: "", dark: "" }
453
+ },
454
+ danger: {
455
+ soft: { light: primitivePalette.hotPink[50], dark: primitivePalette.hotPink[950] },
456
+ light: { light: primitivePalette.hotPink[200], dark: primitivePalette.hotPink[900] },
457
+ main: { light: primitivePalette.hotPink[500], dark: primitivePalette.hotPink[500] },
458
+ dark: { light: primitivePalette.hotPink[600], dark: primitivePalette.hotPink[700] },
459
+ strong: { light: "", dark: "" }
460
+ }
461
+ };
462
+
117
463
  // ../tailwind-config/src/typography/font.ts
118
464
  var fontSize = {
119
465
  h1: [
@@ -317,7 +663,7 @@ var boxShadow = {
317
663
  "drop-sm": "0 4px 12px 0 rgba(0, 0, 0, 0.1)",
318
664
  "drop-md": "0 6px 18px 0 rgba(0, 0, 0, 0.1)",
319
665
  "drop-lg": "0 8px 24px 0 rgba(0, 0, 0, 0.1)",
320
- "drop-xl": "0 10px 30px 0 rgba(0, 0, 0, 0.1)"
666
+ "drop-xl": "0 0px 60px 0 rgba(0, 0, 0, 0.2)"
321
667
  };
322
668
 
323
669
  // ../tailwind-config/src/border/radius.ts
@@ -326,8 +672,19 @@ var borderRadius = {
326
672
  md: "6px",
327
673
  lg: "8px",
328
674
  xl: "10px",
675
+ "2xl": "20px",
329
676
  none: "0",
330
- full: "9999px"
677
+ full: "9999px",
678
+ 2: "2px",
679
+ 5: "5px"
680
+ };
681
+
682
+ // ../tailwind-config/src/border/width.ts
683
+ var borderWidth = {
684
+ sm: "1px",
685
+ md: "1.25px",
686
+ lg: "1.5px",
687
+ xl: "1.75px"
331
688
  };
332
689
 
333
690
  // ../tailwind-config/src/space/gap.ts
@@ -335,7 +692,11 @@ var gap = {
335
692
  sm: "4px",
336
693
  md: "6px",
337
694
  lg: "8px",
338
- xl: "10px"
695
+ xl: "10px",
696
+ 5: "5px",
697
+ 10: "10px",
698
+ 20: "20px",
699
+ 30: "30px"
339
700
  };
340
701
 
341
702
  // src/utils/tailwind-variants.ts
@@ -350,7 +711,8 @@ var tv = (0, import_tailwind_variants.createTV)({
350
711
  borderRadius: [{ rounded: [...typedKeys(borderRadius)] }],
351
712
  boxShadow: [{ shadow: [...typedKeys(boxShadow)] }],
352
713
  padding: [{ p: [...COMMON_SIZE] }],
353
- gap: [{ gap: [...typedKeys(gap)] }]
714
+ gap: [{ gap: [...typedKeys(gap)] }],
715
+ borderWidth: [{ border: [...typedKeys(borderWidth)] }]
354
716
  }
355
717
  }
356
718
  });
@@ -378,6 +740,98 @@ var mapPropsVariants = (props, variantKeys, removeVariantProps = true) => {
378
740
  // src/components/icon/template.tsx
379
741
  var import_jsx_runtime = require("react/jsx-runtime");
380
742
  var template = {
743
+ left: ({ className }) => {
744
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
745
+ "svg",
746
+ {
747
+ xmlns: "http://www.w3.org/2000/svg",
748
+ width: "21",
749
+ height: "21",
750
+ viewBox: "0 0 21 21",
751
+ fill: "none",
752
+ className,
753
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
754
+ "path",
755
+ {
756
+ d: "M12.8333 15.1667L8.16667 10.5L12.8333 5.83334",
757
+ stroke: "currentColor",
758
+ strokeWidth: "1.25",
759
+ strokeLinecap: "round",
760
+ strokeLinejoin: "round"
761
+ }
762
+ )
763
+ }
764
+ );
765
+ },
766
+ "left-double": ({ className }) => {
767
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
768
+ "svg",
769
+ {
770
+ xmlns: "http://www.w3.org/2000/svg",
771
+ width: "21",
772
+ height: "21",
773
+ viewBox: "0 0 21 21",
774
+ fill: "none",
775
+ className,
776
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
777
+ "path",
778
+ {
779
+ d: "M15.1667 5.83334L9.98148 10.5L15.1667 15.1667M11.0185 5.83334L5.83334 10.5L11.0185 15.1667",
780
+ stroke: "currentColor",
781
+ strokeWidth: "1.25",
782
+ strokeLinecap: "round",
783
+ strokeLinejoin: "round"
784
+ }
785
+ )
786
+ }
787
+ );
788
+ },
789
+ right: ({ className }) => {
790
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
791
+ "svg",
792
+ {
793
+ xmlns: "http://www.w3.org/2000/svg",
794
+ width: "21",
795
+ height: "21",
796
+ viewBox: "0 0 21 21",
797
+ fill: "none",
798
+ className,
799
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
800
+ "path",
801
+ {
802
+ d: "M8.16666 5.83334L12.8333 10.5L8.16666 15.1667",
803
+ stroke: "currentColor",
804
+ strokeWidth: "1.25",
805
+ strokeLinecap: "round",
806
+ strokeLinejoin: "round"
807
+ }
808
+ )
809
+ }
810
+ );
811
+ },
812
+ "right-double": ({ className }) => {
813
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
814
+ "svg",
815
+ {
816
+ xmlns: "http://www.w3.org/2000/svg",
817
+ width: "21",
818
+ height: "21",
819
+ viewBox: "0 0 21 21",
820
+ fill: "none",
821
+ className,
822
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
823
+ "path",
824
+ {
825
+ d: "M5.83334 5.83334L11.0185 10.5L5.83334 15.1667M9.98149 5.83334L15.1667 10.5L9.98149 15.1667",
826
+ stroke: "currentColor",
827
+ strokeWidth: "1.25",
828
+ strokeLinecap: "round",
829
+ strokeLinejoin: "round"
830
+ }
831
+ )
832
+ }
833
+ );
834
+ },
381
835
  "left-chevron": ({ className }) => {
382
836
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
383
837
  "svg",
@@ -1763,46 +2217,6 @@ var template = {
1763
2217
  }
1764
2218
  );
1765
2219
  },
1766
- left: ({ className }) => {
1767
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
1768
- "svg",
1769
- {
1770
- xmlns: "http://www.w3.org/2000/svg",
1771
- width: "22",
1772
- height: "22",
1773
- viewBox: "0 0 22 22",
1774
- fill: "none",
1775
- className,
1776
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
1777
- "path",
1778
- {
1779
- 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",
1780
- fill: "currentColor"
1781
- }
1782
- )
1783
- }
1784
- );
1785
- },
1786
- right: ({ className }) => {
1787
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
1788
- "svg",
1789
- {
1790
- xmlns: "http://www.w3.org/2000/svg",
1791
- width: "22",
1792
- height: "22",
1793
- viewBox: "0 0 22 22",
1794
- fill: "none",
1795
- className,
1796
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
1797
- "path",
1798
- {
1799
- 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",
1800
- fill: "currentColor"
1801
- }
1802
- )
1803
- }
1804
- );
1805
- },
1806
2220
  "brace-left": ({ className }) => {
1807
2221
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
1808
2222
  "svg",
@@ -2112,6 +2526,20 @@ var template = {
2112
2526
  }
2113
2527
  );
2114
2528
  },
2529
+ polygon: ({ className }) => {
2530
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
2531
+ "svg",
2532
+ {
2533
+ xmlns: "http://www.w3.org/2000/svg",
2534
+ width: "24",
2535
+ height: "24",
2536
+ viewBox: "0 0 24 24",
2537
+ fill: "none",
2538
+ className,
2539
+ 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" })
2540
+ }
2541
+ );
2542
+ },
2115
2543
  "new-window": ({ className }) => {
2116
2544
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
2117
2545
  "svg",
@@ -5225,353 +5653,165 @@ var import_jsx_runtime2 = require("react/jsx-runtime");
5225
5653
  var Icon = ({ name, size = "md", fill = false, className, onClick, ...props }) => {
5226
5654
  const SVGIcon = template[name];
5227
5655
  const getInputIconSize = (size2) => {
5228
- switch (size2) {
5656
+ switch (String(size2)) {
5229
5657
  case "sm":
5230
- return "size-[18px]";
5658
+ return "w-[18px] h-[18px]";
5231
5659
  case "md":
5232
- return "size-[21px] stroke-[1.25px]";
5660
+ return "w-[21px] h-[21px] stroke-[1.25px]";
5233
5661
  case "lg":
5234
- return "size-[24px] stroke-[1.5px]";
5662
+ return "w-[24px] h-[24px] stroke-[1.5px]";
5235
5663
  case "xl":
5236
- return "size-[27px] stroke-[1.5px]";
5664
+ return "w-[27px] h-[27px] stroke-[1.5px]";
5665
+ case "20":
5666
+ return "w-[20px] h-[20px] stroke-[1.25px]";
5667
+ case "30":
5668
+ return "w-[30px] h-[30px] stroke-[1.5px]";
5669
+ case "40":
5670
+ return "w-[40px] h-[40px] stroke-[2px]";
5671
+ default:
5672
+ return "w-[21px] h-[21px] stroke-[1.25px]";
5237
5673
  }
5238
5674
  };
5239
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "h-fit w-fit", onClick, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
5240
- SVGIcon,
5241
- {
5242
- fill,
5243
- className: className ? `${getInputIconSize(size)} ${className}` : `${getInputIconSize(size)}`,
5244
- ...props
5245
- }
5246
- ) });
5675
+ 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 }) });
5247
5676
  };
5248
5677
  var Icon_default = Icon;
5249
5678
 
5250
5679
  // src/components/button/button.tsx
5251
5680
  var import_react2 = require("react");
5252
5681
 
5253
- // src/components/ripple/ripple.tsx
5254
- var import_framer_motion = require("framer-motion");
5255
- var import_jsx_runtime3 = require("react/jsx-runtime");
5256
- var Ripple = (props) => {
5257
- const { ripples = [], motionProps, color = "currentColor", style, onClear } = props;
5258
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_jsx_runtime3.Fragment, { children: ripples.map((ripple) => {
5259
- const duration = (0, import_framer_motion.clamp)(ripple.size > 100 ? 0.75 : 0.5, 0.01 * ripple.size, 0.2);
5260
- 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)(
5261
- import_framer_motion.m.span,
5262
- {
5263
- animate: { transform: "scale(2)", opacity: 0 },
5264
- className: "deepnoidui-ripple",
5265
- exit: { opacity: 0 },
5266
- initial: { transform: "scale(0)", opacity: 0.35 },
5267
- style: {
5268
- position: "absolute",
5269
- backgroundColor: color,
5270
- borderRadius: "100%",
5271
- transformOrigin: "center",
5272
- pointerEvents: "none",
5273
- overflow: "hidden",
5274
- inset: 0,
5275
- zIndex: 0,
5276
- top: ripple.y,
5277
- left: ripple.x,
5278
- width: `${ripple.size}px`,
5279
- height: `${ripple.size}px`,
5280
- ...style
5281
- },
5282
- transition: { duration },
5283
- onAnimationComplete: () => {
5284
- onClear(ripple.key);
5285
- },
5286
- ...motionProps
5682
+ // src/components/button/button.style.ts
5683
+ var buttonBaseStyle = tv({
5684
+ slots: {
5685
+ base: [
5686
+ "relative",
5687
+ "flex",
5688
+ "items-center",
5689
+ "justify-center",
5690
+ "whitespace-nowrap",
5691
+ "transition",
5692
+ "duration-200",
5693
+ "select-none",
5694
+ "overflow-hidden",
5695
+ "box-border",
5696
+ "border",
5697
+ "border-transparent"
5698
+ ]
5699
+ },
5700
+ variants: {
5701
+ variant: {
5702
+ solid: [],
5703
+ soft: [],
5704
+ outline: [],
5705
+ ghost: []
5706
+ },
5707
+ color: {
5708
+ primary: [],
5709
+ secondary: [],
5710
+ neutral: [],
5711
+ info: [],
5712
+ success: [],
5713
+ warning: [],
5714
+ danger: []
5715
+ },
5716
+ disabled: {
5717
+ true: {
5718
+ base: ["!bg-neutral-soft", "!border-neutral-soft", "!text-neutral-light", "pointer-events-none"]
5287
5719
  }
5288
- ) }) }, ripple.key);
5289
- }) });
5290
- };
5291
- Ripple.displayName = "HeroUI.Ripple";
5292
- var ripple_default = Ripple;
5293
-
5294
- // src/components/ripple/useRipple.ts
5295
- var import_react = require("react");
5296
- function useRipple(props = {}) {
5297
- const [ripples, setRipples] = (0, import_react.useState)([]);
5298
- const getUniqueID = (key) => `${key}-${Math.random().toString(36).substr(2, 9)}`;
5299
- const onPress = (0, import_react.useCallback)((event) => {
5300
- const trigger = event.currentTarget;
5301
- const rect = trigger.getBoundingClientRect();
5302
- const size = Math.max(trigger.clientWidth, trigger.clientHeight);
5303
- setRipples((prevRipples) => [
5304
- ...prevRipples,
5305
- {
5306
- key: getUniqueID(prevRipples.length.toString()),
5307
- size,
5308
- x: event.clientX - rect.left - size / 2,
5309
- y: event.clientY - rect.top - size / 2
5310
- }
5311
- ]);
5312
- }, []);
5313
- const onClear = (0, import_react.useCallback)((key) => {
5314
- setRipples((prevState) => prevState.filter((ripple) => ripple.key !== key));
5315
- }, []);
5316
- return { ripples, onClear, onPress, ...props };
5317
- }
5318
-
5319
- // src/components/button/button.tsx
5320
- var import_jsx_runtime4 = require("react/jsx-runtime");
5321
- var extractTextFromChildren = (children) => {
5322
- if (typeof children === "string") {
5323
- return children;
5324
- }
5325
- if (typeof children === "number") {
5326
- return String(children);
5327
- }
5328
- if ((0, import_react2.isValidElement)(children)) {
5329
- const childProps = children.props;
5330
- return extractTextFromChildren(childProps.children);
5331
- }
5332
- if (Array.isArray(children)) {
5333
- return children.map((child) => extractTextFromChildren(child)).join(" ");
5334
- }
5335
- return "";
5336
- };
5337
- var Button = (0, import_react2.forwardRef)((originalProps, ref) => {
5338
- const [props, variantProps] = mapPropsVariants(originalProps, buttonStyle.variantKeys);
5339
- const { classNames, startContent, endContent, disableRipple, asChild, children, ...buttonProps } = props;
5340
- const slots = (0, import_react2.useMemo)(() => buttonStyle({ ...variantProps }), [variantProps]);
5341
- const { onPress: onRipplePressHandler, onClear: onClearRipple, ripples } = useRipple();
5342
- const autoAriaLabel = (0, import_react2.useMemo)(() => {
5343
- if (originalProps["aria-label"] || originalProps["aria-labelledby"]) {
5344
- return void 0;
5345
- }
5346
- if (originalProps.isLoading) {
5347
- const baseText = extractTextFromChildren(children);
5348
- return baseText ? `${baseText} (loading)` : "loading";
5349
- }
5350
- const textContent = extractTextFromChildren(children);
5351
- return textContent || void 0;
5352
- }, [originalProps["aria-label"], originalProps["aria-labelledby"], originalProps.isLoading, children]);
5353
- const handlePress = (0, import_react2.useCallback)(
5354
- (e) => {
5355
- if (disableRipple || originalProps.disabled) return;
5356
- onRipplePressHandler(e);
5357
- },
5358
- [disableRipple, originalProps.disabled, onRipplePressHandler]
5359
- );
5360
- const mouseDownHandler = (0, import_react2.useCallback)(
5361
- (e) => {
5362
- var _a;
5363
- (_a = buttonProps.onMouseDown) == null ? void 0 : _a.call(buttonProps, e);
5364
- if (disableRipple || originalProps.disabled) return;
5365
- handlePress(e);
5366
- },
5367
- [buttonProps.onMouseDown, disableRipple, originalProps.disabled, handlePress]
5368
- );
5369
- const getRippleProps = (0, import_react2.useCallback)(
5370
- () => ({ ripples, onClear: onClearRipple }),
5371
- [ripples, onClearRipple]
5372
- );
5373
- const getBaseProps = (0, import_react2.useCallback)(
5374
- () => ({
5375
- ...buttonProps,
5376
- onMouseDown: mouseDownHandler,
5377
- ref,
5378
- disabled: originalProps.disabled || originalProps.isLoading,
5379
- "data-loading": originalProps.isLoading,
5380
- className: slots.base({ class: classNames == null ? void 0 : classNames.base }),
5381
- "aria-label": originalProps["aria-label"] || autoAriaLabel
5382
- }),
5383
- [
5384
- buttonProps,
5385
- mouseDownHandler,
5386
- ref,
5387
- originalProps.disabled,
5388
- originalProps.isLoading,
5389
- originalProps["aria-label"],
5390
- autoAriaLabel,
5391
- slots,
5392
- classNames == null ? void 0 : classNames.base
5393
- ]
5394
- );
5395
- const getContentProps = (0, import_react2.useCallback)(
5396
- () => ({
5397
- className: slots.content({ class: classNames == null ? void 0 : classNames.content }),
5398
- size: originalProps.size
5399
- }),
5400
- [slots, classNames, originalProps.size]
5401
- );
5402
- const renderContent = (content) => {
5403
- if ((0, import_react2.isValidElement)(content)) {
5404
- const _content = content;
5405
- const existingProps = _content.props;
5406
- const mergedProps = {
5407
- ...getContentProps(),
5408
- className: `${getContentProps().className || ""} ${existingProps.className || ""}`.trim()
5409
- };
5410
- return (0, import_react2.cloneElement)(content, mergedProps);
5411
- } else {
5412
- const contentProps = getContentProps();
5413
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { ...contentProps, children: content });
5414
- }
5415
- };
5416
- 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: [
5417
- startContent && renderContent(startContent),
5418
- children,
5419
- endContent && renderContent(endContent),
5420
- !disableRipple && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ripple_default, { ...getRippleProps() })
5421
- ] }) });
5422
- if (asChild && (0, import_react2.isValidElement)(children)) {
5423
- const childElement = children;
5424
- const baseProps = getBaseProps();
5425
- const mergedProps = {
5426
- ...childElement.props,
5427
- ...baseProps,
5428
- className: `${baseProps.className || ""} ${childElement.props.className || ""}`.trim(),
5429
- onClick: (e) => {
5430
- var _a, _b, _c;
5431
- (_b = (_a = childElement.props).onClick) == null ? void 0 : _b.call(_a, e);
5432
- (_c = baseProps.onClick) == null ? void 0 : _c.call(baseProps, e);
5433
- },
5434
- onMouseDown: (e) => {
5435
- var _a, _b, _c;
5436
- (_b = (_a = childElement.props).onMouseDown) == null ? void 0 : _b.call(_a, e);
5437
- (_c = baseProps.onMouseDown) == null ? void 0 : _c.call(baseProps, e);
5438
- },
5439
- 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: [
5440
- startContent && renderContent(startContent),
5441
- childElement.props.children,
5442
- endContent && renderContent(endContent),
5443
- !disableRipple && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ripple_default, { ...getRippleProps() })
5444
- ] }) })
5445
- };
5446
- return (0, import_react2.cloneElement)(childElement, mergedProps);
5447
- }
5448
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("button", { ...getBaseProps(), children: buttonContent });
5449
- });
5450
- Button.displayName = "Button";
5451
- var button_default = Button;
5452
- var buttonStyle = tv({
5453
- slots: {
5454
- base: "relative flex items-center justify-center whitespace-nowrap transition duration-200 select-none overflow-hidden box-border border border-transparent",
5455
- content: ""
5456
- },
5457
- variants: {
5458
- variant: {
5459
- solid: "",
5460
- soft: "",
5461
- outline: "",
5462
- ghost: ""
5463
- },
5464
- color: {
5465
- primary: "",
5466
- secondary: "",
5467
- neutral: "",
5468
- info: "",
5469
- success: "",
5470
- warning: "",
5471
- danger: ""
5472
- },
5473
- size: {
5474
- sm: {
5475
- base: "h-[24px] px-[8px] py-[3px] text-sm font-[700] rounded-sm gap-sm"
5476
- },
5477
- md: {
5478
- base: "h-[32px] px-[12px] py-[5.5px] text-md font-[700] rounded-md gap-md"
5479
- },
5480
- lg: {
5481
- base: "h-[40px] px-[16px] py-[8px] text-lg font-[700] rounded-lg gap-lg"
5482
- },
5483
- xl: {
5484
- base: "h-[50px] px-[20px] py-[11.5px] text-xl font-[700] rounded-xl gap-xl"
5485
- }
5486
- },
5487
- radius: {
5488
- default: {
5489
- base: ""
5490
- },
5491
- full: {
5492
- base: "rounded-full"
5493
- },
5494
- none: {
5495
- base: "rounded-none"
5496
- }
5497
- },
5498
- full: {
5499
- true: {
5500
- base: "w-full"
5501
- }
5502
- },
5503
- isLoading: {
5504
- true: {}
5505
- },
5506
- disabled: {
5507
- true: {
5508
- base: "!bg-neutral-soft !border-neutral-soft !text-neutral-light pointer-events-none"
5509
- }
5510
- },
5511
- isInGroup: {
5512
- true: {
5513
- base: "[&:not(:first-child):not(:last-child)]:rounded-none first:rounded-r-none last:rounded-l-none [&:not(:first-child)]:border-l-0"
5720
+ },
5721
+ isInGroup: {
5722
+ true: {
5723
+ base: [
5724
+ "[&:not(:first-child):not(:last-child)]:rounded-none",
5725
+ "first:rounded-r-none",
5726
+ "last:rounded-l-none",
5727
+ "[&:not(:first-child)]:border-l-0"
5728
+ ]
5514
5729
  }
5515
5730
  }
5516
5731
  },
5517
- defaultVariants: {
5518
- size: "md",
5519
- variant: "solid",
5520
- color: "primary",
5521
- full: false,
5522
- disabled: false,
5523
- isLoading: false,
5524
- isInGroup: false
5525
- },
5526
5732
  compoundVariants: [
5527
- // solid & color
5528
5733
  {
5529
5734
  variant: "solid",
5530
5735
  color: "primary",
5531
5736
  class: {
5532
- base: ["text-white", "bg-primary-main", "hover:bg-gradient-to-r", "hover:from-white/20", "hover:to-white/20"]
5737
+ base: [
5738
+ "text-white",
5739
+ "bg-primary-main",
5740
+ "hover:[background:linear-gradient(0deg,var(--dn-trans-light)_0%,var(--dn-trans-light)_100%),var(--dn-primary-main)]",
5741
+ "active:bg-primary-dark"
5742
+ ]
5533
5743
  }
5534
5744
  },
5535
5745
  {
5536
5746
  variant: "solid",
5537
5747
  color: "secondary",
5538
5748
  class: {
5539
- base: ["text-white", "bg-secondary-main", "hover:bg-gradient-to-r", "hover:from-white/20", "hover:to-white/20"]
5749
+ base: [
5750
+ "text-white",
5751
+ "bg-secondary-main",
5752
+ "hover:[background:linear-gradient(0deg,var(--dn-trans-light)_0%,var(--dn-trans-light)_100%),var(--dn-secondary-main)]",
5753
+ "active:bg-secondary-dark"
5754
+ ]
5540
5755
  }
5541
5756
  },
5542
5757
  {
5543
5758
  variant: "solid",
5544
5759
  color: "neutral",
5545
5760
  class: {
5546
- base: ["text-white", "bg-neutral-main", "hover:bg-gradient-to-r", "hover:from-white/20", "hover:to-white/20"]
5761
+ base: [
5762
+ "text-white",
5763
+ "bg-neutral-main",
5764
+ "hover:[background:linear-gradient(0deg,var(--dn-trans-light)_0%,var(--dn-trans-light)_100%),var(--dn-neutral-main)]",
5765
+ "active:bg-neutral-dark"
5766
+ ]
5547
5767
  }
5548
5768
  },
5549
5769
  {
5550
5770
  variant: "solid",
5551
5771
  color: "info",
5552
5772
  class: {
5553
- base: ["text-white", "bg-info-main", "hover:bg-gradient-to-r", "hover:from-white/20", "hover:to-white/20"]
5773
+ base: [
5774
+ "text-white",
5775
+ "bg-info-main",
5776
+ "hover:[background:linear-gradient(0deg,var(--dn-trans-light)_0%,var(--dn-trans-light)_100%),var(--dn-info-main)]",
5777
+ "active:bg-info-dark"
5778
+ ]
5554
5779
  }
5555
5780
  },
5556
5781
  {
5557
5782
  variant: "solid",
5558
5783
  color: "success",
5559
5784
  class: {
5560
- base: ["text-white", "bg-success-main", "hover:bg-gradient-to-r", "hover:from-white/20", "hover:to-white/20"]
5785
+ base: [
5786
+ "text-white",
5787
+ "bg-success-main",
5788
+ "hover:[background:linear-gradient(0deg,var(--dn-trans-light)_0%,var(--dn-trans-light)_100%),var(--dn-success-main)]",
5789
+ "active:bg-success-dark"
5790
+ ]
5561
5791
  }
5562
5792
  },
5563
5793
  {
5564
5794
  variant: "solid",
5565
5795
  color: "warning",
5566
5796
  class: {
5567
- base: ["text-white", "bg-warning-main", "hover:bg-gradient-to-r", "hover:from-white/20", "hover:to-white/20"]
5797
+ base: [
5798
+ "text-white",
5799
+ "bg-warning-main",
5800
+ "hover:[background:linear-gradient(0deg,var(--dn-trans-light)_0%,var(--dn-trans-light)_100%),var(--dn-warning-main)]",
5801
+ "active:bg-warning-dark"
5802
+ ]
5568
5803
  }
5569
5804
  },
5570
5805
  {
5571
5806
  variant: "solid",
5572
5807
  color: "danger",
5573
5808
  class: {
5574
- base: ["text-white", "bg-danger-main", "hover:bg-gradient-to-r", "hover:from-white/20", "hover:to-white/20"]
5809
+ base: [
5810
+ "text-white",
5811
+ "bg-danger-main",
5812
+ "hover:[background:linear-gradient(0deg,var(--dn-trans-light)_0%,var(--dn-trans-light)_100%),var(--dn-danger-main)]",
5813
+ "active:bg-danger-dark"
5814
+ ]
5575
5815
  }
5576
5816
  },
5577
5817
  // soft & color
@@ -5579,49 +5819,85 @@ var buttonStyle = tv({
5579
5819
  variant: "soft",
5580
5820
  color: "primary",
5581
5821
  class: {
5582
- base: ["text-primary-main", "bg-primary-soft", "border-primary-soft", "hover:border-primary-light"]
5822
+ base: [
5823
+ "text-primary-main",
5824
+ "bg-primary-soft",
5825
+ "border-primary-soft",
5826
+ "hover:border-primary-light",
5827
+ "active:bg-primary-light"
5828
+ ]
5583
5829
  }
5584
5830
  },
5585
5831
  {
5586
5832
  variant: "soft",
5587
5833
  color: "secondary",
5588
5834
  class: {
5589
- base: ["text-secondary-main", "bg-secondary-soft", "border-secondary-soft", "hover:border-secondary-light"]
5835
+ base: [
5836
+ "text-secondary-main",
5837
+ "bg-secondary-soft",
5838
+ "border-secondary-soft",
5839
+ "hover:border-secondary-light",
5840
+ "active:bg-secondary-light"
5841
+ ]
5590
5842
  }
5591
5843
  },
5592
5844
  {
5593
5845
  variant: "soft",
5594
5846
  color: "neutral",
5595
5847
  class: {
5596
- base: ["text-neutral-main", "bg-neutral-soft", "border-neutral-soft", "hover:border-neutral-light"]
5848
+ base: [
5849
+ "text-neutral-main",
5850
+ "bg-neutral-soft",
5851
+ "border-neutral-soft",
5852
+ "hover:border-neutral-light",
5853
+ "active:bg-neutral-light"
5854
+ ]
5597
5855
  }
5598
5856
  },
5599
5857
  {
5600
5858
  variant: "soft",
5601
5859
  color: "info",
5602
5860
  class: {
5603
- base: ["text-info-main", "bg-info-soft", "border-info-soft", "hover:border-info-light"]
5861
+ base: ["text-info-main", "bg-info-soft", "border-info-soft", "hover:border-info-light", "active:bg-info-light"]
5604
5862
  }
5605
5863
  },
5606
5864
  {
5607
5865
  variant: "soft",
5608
5866
  color: "success",
5609
5867
  class: {
5610
- base: ["text-success-main", "bg-success-soft", "border-success-soft", "hover:border-success-light"]
5868
+ base: [
5869
+ "text-success-main",
5870
+ "bg-success-soft",
5871
+ "border-success-soft",
5872
+ "hover:border-success-light",
5873
+ "active:bg-success-light"
5874
+ ]
5611
5875
  }
5612
5876
  },
5613
5877
  {
5614
5878
  variant: "soft",
5615
5879
  color: "warning",
5616
5880
  class: {
5617
- base: ["text-warning-main", "bg-warning-soft", "border-warning-soft", "hover:border-warning-light"]
5881
+ base: [
5882
+ "text-warning-main",
5883
+ "bg-warning-soft",
5884
+ "border-warning-soft",
5885
+ "hover:border-warning-light",
5886
+ "active:bg-warning-light"
5887
+ ]
5618
5888
  }
5619
5889
  },
5620
5890
  {
5621
5891
  variant: "soft",
5622
5892
  color: "danger",
5623
5893
  class: {
5624
- base: ["text-danger-main", "bg-danger-soft", "border-danger-soft", "hover:border-danger-light"]
5894
+ base: [
5895
+ "text-danger-main",
5896
+ "bg-danger-soft",
5897
+ "border-danger-soft",
5898
+ "hover:border-danger-light",
5899
+ "active:bg-danger-light"
5900
+ ]
5625
5901
  }
5626
5902
  },
5627
5903
  // outline & color
@@ -5629,49 +5905,91 @@ var buttonStyle = tv({
5629
5905
  variant: "outline",
5630
5906
  color: "primary",
5631
5907
  class: {
5632
- base: ["bg-body-background", "border-primary-main", "text-primary-main", "hover:bg-primary-soft"]
5908
+ base: [
5909
+ "bg-body-background",
5910
+ "border-primary-main",
5911
+ "text-primary-main",
5912
+ "hover:bg-primary-soft",
5913
+ "active:bg-primary-light"
5914
+ ]
5633
5915
  }
5634
5916
  },
5635
5917
  {
5636
5918
  variant: "outline",
5637
5919
  color: "secondary",
5638
5920
  class: {
5639
- base: ["bg-body-background", "border-secondary-main", "text-secondary-main", "hover:bg-secondary-soft"]
5921
+ base: [
5922
+ "bg-body-background",
5923
+ "border-secondary-main",
5924
+ "text-secondary-main",
5925
+ "hover:bg-secondary-soft",
5926
+ "active:bg-secondary-light"
5927
+ ]
5640
5928
  }
5641
5929
  },
5642
5930
  {
5643
5931
  variant: "outline",
5644
5932
  color: "neutral",
5645
5933
  class: {
5646
- base: ["bg-body-background", "border-neutral-main", "text-neutral-main", "hover:bg-neutral-soft"]
5934
+ base: [
5935
+ "bg-body-background",
5936
+ "border-neutral-main",
5937
+ "text-neutral-main",
5938
+ "hover:bg-neutral-soft",
5939
+ "active:bg-neutral-light"
5940
+ ]
5647
5941
  }
5648
5942
  },
5649
5943
  {
5650
5944
  variant: "outline",
5651
5945
  color: "info",
5652
5946
  class: {
5653
- base: ["bg-body-background", "border-info-main", "text-info-main", "hover:bg-info-soft"]
5947
+ base: [
5948
+ "bg-body-background",
5949
+ "border-info-main",
5950
+ "text-info-main",
5951
+ "hover:bg-info-soft",
5952
+ "active:bg-info-light"
5953
+ ]
5654
5954
  }
5655
5955
  },
5656
5956
  {
5657
5957
  variant: "outline",
5658
5958
  color: "success",
5659
5959
  class: {
5660
- base: ["bg-body-background", "border-success-main", "text-success-main", "hover:bg-success-soft"]
5960
+ base: [
5961
+ "bg-body-background",
5962
+ "border-success-main",
5963
+ "text-success-main",
5964
+ "hover:bg-success-soft",
5965
+ "active:bg-success-light"
5966
+ ]
5661
5967
  }
5662
5968
  },
5663
5969
  {
5664
5970
  variant: "outline",
5665
5971
  color: "warning",
5666
5972
  class: {
5667
- base: ["bg-body-background", "border-warning-main", "text-warning-main", "hover:bg-warning-soft"]
5973
+ base: [
5974
+ "bg-body-background",
5975
+ "border-warning-main",
5976
+ "text-warning-main",
5977
+ "hover:bg-warning-soft",
5978
+ "active:bg-warning-light"
5979
+ ]
5668
5980
  }
5669
5981
  },
5670
5982
  {
5671
5983
  variant: "outline",
5672
5984
  color: "danger",
5673
5985
  class: {
5674
- base: ["bg-body-background", "border-danger-main", "text-danger-main", "hover:bg-danger-soft"]
5986
+ base: [
5987
+ "bg-body-background",
5988
+ "border-danger-main",
5989
+ "text-danger-main",
5990
+ "hover:bg-danger-soft",
5991
+ "active:bg-danger-light"
5992
+ ]
5675
5993
  }
5676
5994
  },
5677
5995
  // ghost & color
@@ -5679,49 +5997,91 @@ var buttonStyle = tv({
5679
5997
  variant: "ghost",
5680
5998
  color: "primary",
5681
5999
  class: {
5682
- base: ["text-primary-main", "border-transparent", "hover:bg-primary-soft"]
6000
+ base: [
6001
+ "text-primary-main",
6002
+ "border-transparent",
6003
+ "hover:bg-primary-soft",
6004
+ "active:bg-primary-main",
6005
+ "active:text-common-white"
6006
+ ]
5683
6007
  }
5684
6008
  },
5685
6009
  {
5686
6010
  variant: "ghost",
5687
6011
  color: "secondary",
5688
6012
  class: {
5689
- base: ["text-secondary-main", "border-transparent", "hover:bg-secondary-soft"]
6013
+ base: [
6014
+ "text-secondary-main",
6015
+ "border-transparent",
6016
+ "hover:bg-secondary-soft",
6017
+ "active:bg-secondary-main",
6018
+ "active:text-common-white"
6019
+ ]
5690
6020
  }
5691
6021
  },
5692
6022
  {
5693
6023
  variant: "ghost",
5694
6024
  color: "neutral",
5695
6025
  class: {
5696
- base: ["text-neutral-main", "border-transparent", "hover:bg-neutral-soft"]
6026
+ base: [
6027
+ "text-neutral-main",
6028
+ "border-transparent",
6029
+ "hover:bg-neutral-soft",
6030
+ "active:bg-neutral-main",
6031
+ "active:text-common-white"
6032
+ ]
5697
6033
  }
5698
6034
  },
5699
6035
  {
5700
6036
  variant: "ghost",
5701
6037
  color: "info",
5702
6038
  class: {
5703
- base: ["text-info-main", "border-transparent", "hover:bg-info-soft"]
6039
+ base: [
6040
+ "text-info-main",
6041
+ "border-transparent",
6042
+ "hover:bg-info-soft",
6043
+ "active:bg-info-main",
6044
+ "active:text-common-white"
6045
+ ]
5704
6046
  }
5705
6047
  },
5706
6048
  {
5707
6049
  variant: "ghost",
5708
6050
  color: "success",
5709
6051
  class: {
5710
- base: ["text-success-main", "border-transparent", "hover:bg-success-soft"]
6052
+ base: [
6053
+ "text-success-main",
6054
+ "border-transparent",
6055
+ "hover:bg-success-soft",
6056
+ "active:bg-success-main",
6057
+ "active:text-common-white"
6058
+ ]
5711
6059
  }
5712
6060
  },
5713
6061
  {
5714
6062
  variant: "ghost",
5715
6063
  color: "warning",
5716
6064
  class: {
5717
- base: ["text-warning-main", "border-transparent", "hover:bg-warning-soft"]
6065
+ base: [
6066
+ "text-warning-main",
6067
+ "border-transparent",
6068
+ "hover:bg-warning-soft",
6069
+ "active:bg-warning-main",
6070
+ "active:text-common-white"
6071
+ ]
5718
6072
  }
5719
6073
  },
5720
6074
  {
5721
6075
  variant: "ghost",
5722
6076
  color: "danger",
5723
6077
  class: {
5724
- base: ["text-danger-main", "border-transparent", "hover:bg-danger-soft"]
6078
+ base: [
6079
+ "text-danger-main",
6080
+ "border-transparent",
6081
+ "hover:bg-danger-soft",
6082
+ "active:bg-danger-main",
6083
+ "active:text-common-white"
6084
+ ]
5725
6085
  }
5726
6086
  },
5727
6087
  // variant && size
@@ -5729,28 +6089,28 @@ var buttonStyle = tv({
5729
6089
  variant: ["soft", "outline"],
5730
6090
  size: "sm",
5731
6091
  class: {
5732
- base: "border-[1px]"
6092
+ base: ["border-sm"]
5733
6093
  }
5734
6094
  },
5735
6095
  {
5736
6096
  variant: ["soft", "outline"],
5737
6097
  size: "md",
5738
6098
  class: {
5739
- base: "border-[1.25px]"
6099
+ base: ["border-md"]
5740
6100
  }
5741
6101
  },
5742
6102
  {
5743
6103
  variant: ["soft", "outline"],
5744
6104
  size: "lg",
5745
6105
  class: {
5746
- base: "border-[1.5px]"
6106
+ base: ["border-lg"]
5747
6107
  }
5748
6108
  },
5749
6109
  {
5750
6110
  variant: ["soft", "outline"],
5751
6111
  size: "xl",
5752
6112
  class: {
5753
- base: "border-[1.75px]"
6113
+ base: ["border-xl"]
5754
6114
  }
5755
6115
  },
5756
6116
  // variant && disabled
@@ -5758,19 +6118,270 @@ var buttonStyle = tv({
5758
6118
  variant: ["soft", "ghost"],
5759
6119
  disabled: true,
5760
6120
  class: {
5761
- base: "!border-neutral-soft"
6121
+ base: ["!border-neutral-soft"]
5762
6122
  }
5763
6123
  },
5764
6124
  {
5765
6125
  variant: ["outline"],
5766
6126
  disabled: true,
5767
6127
  class: {
5768
- base: "!border-neutral-light"
6128
+ base: ["!border-neutral-light"]
5769
6129
  }
5770
6130
  }
5771
6131
  ]
5772
6132
  });
5773
6133
 
6134
+ // src/components/ripple/ripple.tsx
6135
+ var import_framer_motion = require("framer-motion");
6136
+ var import_jsx_runtime3 = require("react/jsx-runtime");
6137
+ var Ripple = (props) => {
6138
+ const { ripples = [], motionProps, color = "currentColor", style, onClear } = props;
6139
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_jsx_runtime3.Fragment, { children: ripples.map((ripple) => {
6140
+ const duration = (0, import_framer_motion.clamp)(ripple.size > 100 ? 0.75 : 0.5, 0.01 * ripple.size, 0.2);
6141
+ 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)(
6142
+ import_framer_motion.m.span,
6143
+ {
6144
+ animate: { transform: "scale(2)", opacity: 0 },
6145
+ className: "deepnoidui-ripple",
6146
+ exit: { opacity: 0 },
6147
+ initial: { transform: "scale(0)", opacity: 0.35 },
6148
+ style: {
6149
+ position: "absolute",
6150
+ backgroundColor: color,
6151
+ borderRadius: "100%",
6152
+ transformOrigin: "center",
6153
+ pointerEvents: "none",
6154
+ overflow: "hidden",
6155
+ inset: 0,
6156
+ zIndex: 0,
6157
+ top: ripple.y,
6158
+ left: ripple.x,
6159
+ width: `${ripple.size}px`,
6160
+ height: `${ripple.size}px`,
6161
+ ...style
6162
+ },
6163
+ transition: { duration },
6164
+ onAnimationComplete: () => {
6165
+ onClear(ripple.key);
6166
+ },
6167
+ ...motionProps
6168
+ }
6169
+ ) }) }, ripple.key);
6170
+ }) });
6171
+ };
6172
+ Ripple.displayName = "HeroUI.Ripple";
6173
+ var ripple_default = Ripple;
6174
+
6175
+ // src/components/ripple/useRipple.ts
6176
+ var import_react = require("react");
6177
+ function useRipple(props = {}) {
6178
+ const [ripples, setRipples] = (0, import_react.useState)([]);
6179
+ const getUniqueID = (key) => `${key}-${Math.random().toString(36).substr(2, 9)}`;
6180
+ const onPress = (0, import_react.useCallback)((event) => {
6181
+ const trigger = event.currentTarget;
6182
+ const rect = trigger.getBoundingClientRect();
6183
+ const size = Math.max(trigger.clientWidth, trigger.clientHeight);
6184
+ setRipples((prevRipples) => [
6185
+ ...prevRipples,
6186
+ {
6187
+ key: getUniqueID(prevRipples.length.toString()),
6188
+ size,
6189
+ x: event.clientX - rect.left - size / 2,
6190
+ y: event.clientY - rect.top - size / 2
6191
+ }
6192
+ ]);
6193
+ }, []);
6194
+ const onClear = (0, import_react.useCallback)((key) => {
6195
+ setRipples((prevState) => prevState.filter((ripple) => ripple.key !== key));
6196
+ }, []);
6197
+ return { ripples, onClear, onPress, ...props };
6198
+ }
6199
+
6200
+ // src/components/button/button.tsx
6201
+ var import_jsx_runtime4 = require("react/jsx-runtime");
6202
+ var extractTextFromChildren = (children) => {
6203
+ if (typeof children === "string") {
6204
+ return children;
6205
+ }
6206
+ if (typeof children === "number") {
6207
+ return String(children);
6208
+ }
6209
+ if ((0, import_react2.isValidElement)(children)) {
6210
+ const childProps = children.props;
6211
+ return extractTextFromChildren(childProps.children);
6212
+ }
6213
+ if (Array.isArray(children)) {
6214
+ return children.map((child) => extractTextFromChildren(child)).join(" ");
6215
+ }
6216
+ return "";
6217
+ };
6218
+ var Button = (0, import_react2.forwardRef)((originalProps, ref) => {
6219
+ const [props, variantProps] = mapPropsVariants(originalProps, buttonStyle.variantKeys);
6220
+ const { classNames, startContent, endContent, disableRipple, asChild, children, ...buttonProps } = props;
6221
+ const slots = (0, import_react2.useMemo)(() => buttonStyle({ ...variantProps }), [variantProps]);
6222
+ const { onPress: onRipplePressHandler, onClear: onClearRipple, ripples } = useRipple();
6223
+ const autoAriaLabel = (0, import_react2.useMemo)(() => {
6224
+ if (originalProps["aria-label"] || originalProps["aria-labelledby"]) {
6225
+ return void 0;
6226
+ }
6227
+ if (originalProps.isLoading) {
6228
+ const baseText = extractTextFromChildren(children);
6229
+ return baseText ? `${baseText} (loading)` : "loading";
6230
+ }
6231
+ const textContent = extractTextFromChildren(children);
6232
+ return textContent || void 0;
6233
+ }, [originalProps["aria-label"], originalProps["aria-labelledby"], originalProps.isLoading, children]);
6234
+ const handlePress = (0, import_react2.useCallback)(
6235
+ (e) => {
6236
+ if (disableRipple || originalProps.disabled) return;
6237
+ onRipplePressHandler(e);
6238
+ },
6239
+ [disableRipple, originalProps.disabled, onRipplePressHandler]
6240
+ );
6241
+ const mouseDownHandler = (0, import_react2.useCallback)(
6242
+ (e) => {
6243
+ var _a;
6244
+ (_a = buttonProps.onMouseDown) == null ? void 0 : _a.call(buttonProps, e);
6245
+ if (disableRipple || originalProps.disabled) return;
6246
+ handlePress(e);
6247
+ },
6248
+ [buttonProps.onMouseDown, disableRipple, originalProps.disabled, handlePress]
6249
+ );
6250
+ const getRippleProps = (0, import_react2.useCallback)(
6251
+ () => ({ ripples, onClear: onClearRipple }),
6252
+ [ripples, onClearRipple]
6253
+ );
6254
+ const getBaseProps = (0, import_react2.useCallback)(
6255
+ () => ({
6256
+ ...buttonProps,
6257
+ onMouseDown: mouseDownHandler,
6258
+ ref,
6259
+ disabled: originalProps.disabled || originalProps.isLoading,
6260
+ "data-loading": originalProps.isLoading,
6261
+ className: slots.base({ class: classNames == null ? void 0 : classNames.base }),
6262
+ "aria-label": originalProps["aria-label"] || autoAriaLabel
6263
+ }),
6264
+ [
6265
+ buttonProps,
6266
+ mouseDownHandler,
6267
+ ref,
6268
+ originalProps.disabled,
6269
+ originalProps.isLoading,
6270
+ originalProps["aria-label"],
6271
+ autoAriaLabel,
6272
+ slots,
6273
+ classNames == null ? void 0 : classNames.base
6274
+ ]
6275
+ );
6276
+ const getContentProps = (0, import_react2.useCallback)(
6277
+ () => ({
6278
+ className: slots.content({ class: classNames == null ? void 0 : classNames.content }),
6279
+ size: originalProps.size
6280
+ }),
6281
+ [slots, classNames, originalProps.size]
6282
+ );
6283
+ const renderContent = (content) => {
6284
+ if ((0, import_react2.isValidElement)(content)) {
6285
+ const _content = content;
6286
+ const existingProps = _content.props;
6287
+ const mergedProps = {
6288
+ ...getContentProps(),
6289
+ className: `${getContentProps().className || ""} ${existingProps.className || ""}`.trim()
6290
+ };
6291
+ return (0, import_react2.cloneElement)(content, mergedProps);
6292
+ } else {
6293
+ const contentProps = getContentProps();
6294
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { ...contentProps, children: content });
6295
+ }
6296
+ };
6297
+ 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: [
6298
+ startContent && renderContent(startContent),
6299
+ children,
6300
+ endContent && renderContent(endContent),
6301
+ !disableRipple && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ripple_default, { ...getRippleProps() })
6302
+ ] }) });
6303
+ if (asChild && (0, import_react2.isValidElement)(children)) {
6304
+ const childElement = children;
6305
+ const baseProps = getBaseProps();
6306
+ const mergedProps = {
6307
+ ...childElement.props,
6308
+ ...baseProps,
6309
+ className: `${baseProps.className || ""} ${childElement.props.className || ""}`.trim(),
6310
+ onClick: (e) => {
6311
+ var _a, _b, _c;
6312
+ (_b = (_a = childElement.props).onClick) == null ? void 0 : _b.call(_a, e);
6313
+ (_c = baseProps.onClick) == null ? void 0 : _c.call(baseProps, e);
6314
+ },
6315
+ onMouseDown: (e) => {
6316
+ var _a, _b, _c;
6317
+ (_b = (_a = childElement.props).onMouseDown) == null ? void 0 : _b.call(_a, e);
6318
+ (_c = baseProps.onMouseDown) == null ? void 0 : _c.call(baseProps, e);
6319
+ },
6320
+ 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: [
6321
+ startContent && renderContent(startContent),
6322
+ childElement.props.children,
6323
+ endContent && renderContent(endContent),
6324
+ !disableRipple && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ripple_default, { ...getRippleProps() })
6325
+ ] }) })
6326
+ };
6327
+ return (0, import_react2.cloneElement)(childElement, mergedProps);
6328
+ }
6329
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("button", { ...getBaseProps(), children: buttonContent });
6330
+ });
6331
+ Button.displayName = "Button";
6332
+ var button_default = Button;
6333
+ var buttonStyle = tv({
6334
+ extend: buttonBaseStyle,
6335
+ slots: {
6336
+ base: ["w-fit"],
6337
+ content: []
6338
+ },
6339
+ variants: {
6340
+ size: {
6341
+ sm: {
6342
+ base: ["h-[24px]", "px-[8px]", "py-[3px]", "text-sm", "font-bold", "rounded-sm", "gap-sm"]
6343
+ },
6344
+ md: {
6345
+ base: ["h-[32px]", "px-[12px]", "py-[5.5px]", "text-md", "font-bold", "rounded-md", "gap-md"]
6346
+ },
6347
+ lg: {
6348
+ base: ["h-[40px]", "px-[16px]", "py-[8px]", "text-lg", "font-bold", "rounded-lg", "gap-lg"]
6349
+ },
6350
+ xl: {
6351
+ base: ["h-[50px]", "px-[20px]", "py-[11.5px]", "text-xl", "font-bold", "rounded-xl", "gap-xl"]
6352
+ }
6353
+ },
6354
+ radius: {
6355
+ default: {
6356
+ base: []
6357
+ },
6358
+ full: {
6359
+ base: ["rounded-full"]
6360
+ },
6361
+ none: {
6362
+ base: ["rounded-none"]
6363
+ }
6364
+ },
6365
+ full: {
6366
+ true: {
6367
+ base: ["w-full"]
6368
+ }
6369
+ },
6370
+ isLoading: {
6371
+ true: {}
6372
+ }
6373
+ },
6374
+ defaultVariants: {
6375
+ size: "md",
6376
+ variant: "solid",
6377
+ color: "primary",
6378
+ full: false,
6379
+ disabled: false,
6380
+ isLoading: false,
6381
+ isInGroup: false
6382
+ }
6383
+ });
6384
+
5774
6385
  // src/utils/clsx.ts
5775
6386
  function clsx(...args) {
5776
6387
  var i = 0, tmp, x, str = "";
@@ -5837,18 +6448,22 @@ var import_jsx_runtime6 = require("react/jsx-runtime");
5837
6448
  var Modal = (0, import_react4.forwardRef)((props, ref) => {
5838
6449
  const [localProps, variantProps] = mapPropsVariants(props, modal.variantKeys);
5839
6450
  const {
5840
- classNames,
5841
6451
  isOpen,
6452
+ iconName,
5842
6453
  title,
5843
6454
  content,
5844
6455
  confirmButtonText,
5845
6456
  cancelButtonText,
5846
6457
  showCloseButton = true,
5847
6458
  isKeyboardDismissDisabled = false,
6459
+ hasBackdrop = true,
5848
6460
  onConfirm,
5849
6461
  onCancel,
5850
- extraFooter
6462
+ extraFooter,
6463
+ classNames,
6464
+ ...restProps
5851
6465
  } = localProps;
6466
+ const variant = props.variant || "horizontal";
5852
6467
  const slots = (0, import_react4.useMemo)(() => modal(variantProps), [variantProps]);
5853
6468
  (0, import_react4.useEffect)(() => {
5854
6469
  document.body.classList.toggle("overflow-hidden", !!isOpen);
@@ -5865,29 +6480,30 @@ var Modal = (0, import_react4.forwardRef)((props, ref) => {
5865
6480
  if (!isOpen) return null;
5866
6481
  return (0, import_react_dom.createPortal)(
5867
6482
  /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_jsx_runtime6.Fragment, { children: [
5868
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(backdrop_default, { open: true }),
5869
- /* @__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: [
5870
- showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
5871
- Icon_default,
5872
- {
5873
- size: "xl",
5874
- name: "close",
5875
- className: slots.closeIcon({ class: classNames == null ? void 0 : classNames.closeIcon }),
5876
- onClick: onCancel
5877
- }
5878
- ),
5879
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: slots.wrapper({ class: classNames == null ? void 0 : classNames.wrapper }), children: [
5880
- title && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: slots.title({ class: classNames == null ? void 0 : classNames.title }), children: title }),
5881
- typeof content === "string" ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: slots.content({ class: classNames == null ? void 0 : classNames.content }), children: content }) : content,
5882
- (cancelButtonText || confirmButtonText) && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: slots.footerWrapper({ class: classNames == null ? void 0 : classNames.footerWrapper }), children: [
5883
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: slots.footer({ class: classNames == null ? void 0 : classNames.footer }), children: [
5884
- cancelButtonText && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(button_default, { variant: "soft", color: "neutral", full: true, onClick: onCancel, children: cancelButtonText }),
5885
- confirmButtonText && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(button_default, { color: props.color, full: true, onClick: onConfirm, children: confirmButtonText })
5886
- ] }),
5887
- extraFooter
5888
- ] })
6483
+ hasBackdrop && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(backdrop_default, { open: true }),
6484
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { ref, className: slots.base({ class: classNames == null ? void 0 : classNames.base }), ...restProps, children: [
6485
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: slots.titleWrapper({ class: classNames == null ? void 0 : classNames.titleWrapper }), children: [
6486
+ iconName && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
6487
+ Icon_default,
6488
+ {
6489
+ name: iconName,
6490
+ size: variant === "vertical" ? 40 : 30,
6491
+ fill: true,
6492
+ className: slots.icon({ class: classNames == null ? void 0 : classNames.icon })
6493
+ }
6494
+ ),
6495
+ title && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: slots.title({ class: classNames == null ? void 0 : classNames.title }), children: title })
6496
+ ] }),
6497
+ showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Icon_default, { name: "close", className: slots.closeIcon({ class: classNames == null ? void 0 : classNames.closeIcon }), onClick: onCancel }),
6498
+ typeof content === "string" ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: slots.content({ class: classNames == null ? void 0 : classNames.content }), children: content }) : content,
6499
+ (cancelButtonText || confirmButtonText) && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: slots.footerWrapper({ class: classNames == null ? void 0 : classNames.footerWrapper }), children: [
6500
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: slots.footer({ class: classNames == null ? void 0 : classNames.footer }), children: [
6501
+ cancelButtonText && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(button_default, { variant: "outline", color: props.color, full: true, onClick: onCancel, children: cancelButtonText }),
6502
+ confirmButtonText && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(button_default, { color: props.color, full: true, onClick: onConfirm, children: confirmButtonText })
6503
+ ] }),
6504
+ extraFooter
5889
6505
  ] })
5890
- ] }) })
6506
+ ] })
5891
6507
  ] }),
5892
6508
  document.body
5893
6509
  );
@@ -5901,52 +6517,48 @@ var modal = tv({
5901
6517
  "absolute",
5902
6518
  "fixed",
5903
6519
  "top-1/2",
5904
- "-translate-y-1/2",
5905
6520
  "left-1/2",
5906
6521
  "-translate-x-1/2",
6522
+ "-translate-y-1/2",
5907
6523
  "z-[50]",
5908
- "bg-body-background"
5909
- ],
5910
- modalWrapper: [
5911
- "min-w-[450px]",
6524
+ "rounded-2xl",
6525
+ "min-w-[340px]",
5912
6526
  "flex",
5913
6527
  "flex-col",
5914
6528
  "justify-center",
5915
- "p-[30px]",
5916
- "bg-background",
6529
+ "gap-20",
6530
+ "p-20",
6531
+ "bg-body-background",
5917
6532
  "shadow-drop",
5918
6533
  "shadow-foreground/20",
5919
- "rounded-xlg",
5920
- "overflow-hidden",
5921
- "group-data-[icon-visibility=true]/modal:mt-[0]",
5922
- "group-data-[icon-visibility=true]/modal:pt-[60px]"
6534
+ "rounded-2xl",
6535
+ "overflow-hidden"
5923
6536
  ],
5924
- wrapper: ["flex", "flex-col", "gap-[30px]"],
5925
- title: ["text-xl", "font-extrabold", "text-foreground"],
5926
- content: ["text-md", "font-bold", "text-center", "break-words", "bg-neutral-soft", "rounded-[5px]", "p-[10px]"],
5927
- footerWrapper: ["flex", "flex-col", "gap-[5px]"],
5928
- footer: ["flex", "gap-[10px]"],
5929
- closeIcon: [
5930
- "absolute",
5931
- "top-[30px]",
5932
- "right-[30px]",
5933
- "cursor-pointer",
5934
- "z-60",
5935
- "group-data-[icon-visibility=true]/modal:top-[80px]"
5936
- ]
6537
+ icon: [],
6538
+ titleWrapper: ["flex", "items-center", "gap-10"],
6539
+ title: ["text-xl", "font-extrabold", "text-body-foreground"],
6540
+ content: ["text-md", "text-center", "break-words", "bg-trans-soft", "rounded-5", "p-lg", "text-body-foreground"],
6541
+ footerWrapper: ["flex", "flex-col", "gap-5"],
6542
+ footer: ["flex", "gap-10"],
6543
+ closeIcon: ["absolute", "top-[20px]", "right-[20px]", "cursor-pointer", "z-60", "text-neutral-dark"]
5937
6544
  },
5938
6545
  variants: {
6546
+ variant: {
6547
+ vertical: { titleWrapper: ["flex-col"] },
6548
+ horizontal: { titleWrapper: ["flex-row"] }
6549
+ },
5939
6550
  color: {
5940
- primary: {},
5941
- secondary: {},
5942
- neutral: {},
5943
- success: {},
5944
- info: {},
5945
- warning: {},
5946
- danger: {}
6551
+ primary: { icon: ["text-primary-main"] },
6552
+ secondary: { icon: ["text-secondary-main"] },
6553
+ neutral: { icon: ["text-neutral-main"] },
6554
+ success: { icon: ["text-success-main"] },
6555
+ info: { icon: ["text-info-main"] },
6556
+ warning: { icon: ["text-warning-main"] },
6557
+ danger: { icon: ["text-danger-main"] }
5947
6558
  }
5948
6559
  },
5949
6560
  defaultVariants: {
6561
+ variant: "horizontal",
5950
6562
  color: "primary"
5951
6563
  }
5952
6564
  });