@fewangsit/wangsvue-presets 1.0.81 → 1.0.82

Sign up to get free protection for your applications and to get access to all the features.
Files changed (299) hide show
  1. package/build.sh +32 -0
  2. package/dev.sh +22 -0
  3. package/dist +13 -0
  4. package/fixedasset/accordion/index.js +75 -0
  5. package/fixedasset/autocomplete/index.js +280 -0
  6. package/fixedasset/avatar/index.js +42 -0
  7. package/fixedasset/avatargroup/index.js +7 -0
  8. package/fixedasset/badge/index.js +54 -0
  9. package/fixedasset/badgedirective/index.js +50 -0
  10. package/fixedasset/badgegroup/index.js +30 -0
  11. package/fixedasset/breadcrumb/index.js +29 -0
  12. package/fixedasset/button/index.js +506 -0
  13. package/fixedasset/buttonbulkaction/index.js +35 -0
  14. package/fixedasset/buttondownload/index.js +12 -0
  15. package/fixedasset/buttonfilter/index.js +12 -0
  16. package/fixedasset/buttonradio/index.js +122 -0
  17. package/fixedasset/buttonsearch/index.js +53 -0
  18. package/fixedasset/calendar/index.js +684 -0
  19. package/fixedasset/card/index.js +32 -0
  20. package/fixedasset/carousel/index.js +134 -0
  21. package/fixedasset/cascadeselect/index.js +219 -0
  22. package/fixedasset/changelog/index.js +29 -0
  23. package/fixedasset/checkbox/index.js +127 -0
  24. package/fixedasset/chip/index.js +45 -0
  25. package/fixedasset/chips/index.js +112 -0
  26. package/fixedasset/colorpicker/index.js +134 -0
  27. package/fixedasset/colors.config.json +77 -0
  28. package/fixedasset/confirmpopup/index.js +122 -0
  29. package/fixedasset/contextmenu/index.js +122 -0
  30. package/fixedasset/datatable/index.js +246 -0
  31. package/fixedasset/dataview/index.js +40 -0
  32. package/fixedasset/dataviewlayoutoptions/index.js +64 -0
  33. package/fixedasset/datepicker/index.js +39 -0
  34. package/fixedasset/daypicker/index.js +38 -0
  35. package/fixedasset/dialog/index.js +249 -0
  36. package/fixedasset/dialogconfirm/index.js +42 -0
  37. package/fixedasset/dialogform/index.js +67 -0
  38. package/fixedasset/divider/index.js +72 -0
  39. package/fixedasset/dock/index.js +97 -0
  40. package/fixedasset/dropdown/index.js +230 -0
  41. package/fixedasset/fieldset/index.js +99 -0
  42. package/fixedasset/fileupload/index.js +23 -0
  43. package/fixedasset/form/index.js +42 -0
  44. package/fixedasset/global.js +87 -0
  45. package/fixedasset/icons.css +850 -0
  46. package/fixedasset/image/index.js +128 -0
  47. package/fixedasset/index.css +65 -0
  48. package/{wangsvue/index.d.ts → fixedasset/index.js} +211 -190
  49. package/fixedasset/inlinemessage/index.js +26 -0
  50. package/fixedasset/inputbadge/index.js +41 -0
  51. package/fixedasset/inputcurrency/index.js +12 -0
  52. package/fixedasset/inputgroup/index.js +40 -0
  53. package/fixedasset/inputgroupaddon/index.js +34 -0
  54. package/fixedasset/inputmask/index.js +30 -0
  55. package/fixedasset/inputnumber/index.js +50 -0
  56. package/fixedasset/inputotp/index.js +70 -0
  57. package/fixedasset/inputphonenumber/index.js +19 -0
  58. package/fixedasset/inputswitch/index.js +114 -0
  59. package/fixedasset/inputtext/index.js +27 -0
  60. package/fixedasset/knob/index.js +47 -0
  61. package/fixedasset/listbox/index.js +156 -0
  62. package/fixedasset/megamenu/index.js +218 -0
  63. package/fixedasset/menu/index.js +119 -0
  64. package/fixedasset/menubar/index.js +186 -0
  65. package/fixedasset/message/index.js +87 -0
  66. package/fixedasset/multiselect/index.js +360 -0
  67. package/fixedasset/orderlist/index.js +275 -0
  68. package/fixedasset/organizationchart/index.js +143 -0
  69. package/fixedasset/overlaypanel/index.js +36 -0
  70. package/fixedasset/paginator/index.js +547 -0
  71. package/fixedasset/panel/index.js +95 -0
  72. package/fixedasset/panelmenu/index.js +136 -0
  73. package/fixedasset/password/index.js +98 -0
  74. package/fixedasset/picklist/index.js +684 -0
  75. package/fixedasset/progressbar/index.js +112 -0
  76. package/fixedasset/rating/index.js +86 -0
  77. package/fixedasset/ripple/index.js +6 -0
  78. package/fixedasset/scrollpanel/index.js +77 -0
  79. package/fixedasset/scrolltop/index.js +45 -0
  80. package/fixedasset/selectbutton/index.js +59 -0
  81. package/fixedasset/sidebar/index.js +165 -0
  82. package/fixedasset/skeleton/index.js +19 -0
  83. package/fixedasset/slider/index.js +135 -0
  84. package/fixedasset/splitbutton/index.js +957 -0
  85. package/fixedasset/steps/index.js +132 -0
  86. package/fixedasset/tabmenu/index.js +84 -0
  87. package/fixedasset/tabview/index.js +168 -0
  88. package/fixedasset/tag/index.js +37 -0
  89. package/fixedasset/tailwind.config.js +20 -0
  90. package/fixedasset/terminal/index.js +60 -0
  91. package/fixedasset/textarea/index.js +44 -0
  92. package/fixedasset/tieredmenu/index.js +121 -0
  93. package/fixedasset/timeline/index.js +70 -0
  94. package/fixedasset/toast/index.js +97 -0
  95. package/fixedasset/togglebutton/index.js +87 -0
  96. package/fixedasset/toolbar/index.js +30 -0
  97. package/fixedasset/tooltip/index.js +44 -0
  98. package/fixedasset/tree/index.js +298 -0
  99. package/fixedasset/treeselect/index.js +395 -0
  100. package/fixedasset/tristatecheckbox/index.js +128 -0
  101. package/fixedasset/validatormessage/index.js +7 -0
  102. package/fixedasset/workcalendar/index.js +27 -0
  103. package/{index.d.ts → index.ts} +1 -1
  104. package/package.json +1 -1
  105. package/release.sh +7 -0
  106. package/tsconfig.json +14 -0
  107. package/vite.config.ts +17 -0
  108. package/wangsvue/accordion/index.js +75 -70
  109. package/wangsvue/autocomplete/index.js +280 -247
  110. package/wangsvue/avatar/index.js +42 -44
  111. package/wangsvue/avatargroup/index.js +7 -9
  112. package/wangsvue/badge/index.js +54 -60
  113. package/wangsvue/badgedirective/index.js +50 -49
  114. package/wangsvue/badgegroup/index.js +30 -29
  115. package/wangsvue/breadcrumb/index.js +29 -31
  116. package/wangsvue/button/index.js +506 -423
  117. package/wangsvue/buttonbulkaction/index.js +35 -35
  118. package/wangsvue/buttondownload/index.js +12 -13
  119. package/wangsvue/buttonfilter/index.js +12 -13
  120. package/wangsvue/buttonradio/index.js +122 -109
  121. package/wangsvue/buttonsearch/index.js +53 -62
  122. package/wangsvue/calendar/index.js +684 -610
  123. package/wangsvue/card/index.js +32 -32
  124. package/wangsvue/carousel/index.js +134 -129
  125. package/wangsvue/cascadeselect/index.js +219 -191
  126. package/wangsvue/changelog/index.js +29 -31
  127. package/wangsvue/checkbox/index.js +127 -107
  128. package/wangsvue/chip/index.js +45 -40
  129. package/wangsvue/chips/index.js +112 -98
  130. package/wangsvue/colorpicker/index.js +134 -118
  131. package/wangsvue/confirmpopup/index.js +122 -104
  132. package/wangsvue/contextmenu/index.js +122 -113
  133. package/wangsvue/datatable/index.js +246 -253
  134. package/wangsvue/dataview/index.js +40 -36
  135. package/wangsvue/dataviewlayoutoptions/index.js +64 -58
  136. package/wangsvue/datepicker/index.js +39 -0
  137. package/wangsvue/daypicker/index.js +38 -0
  138. package/wangsvue/dialog/index.js +249 -220
  139. package/wangsvue/dialogconfirm/index.js +42 -45
  140. package/wangsvue/dialogform/index.js +67 -68
  141. package/wangsvue/divider/index.js +72 -64
  142. package/wangsvue/dock/index.js +97 -92
  143. package/wangsvue/dropdown/index.js +230 -207
  144. package/wangsvue/fieldset/index.js +99 -87
  145. package/wangsvue/fileupload/index.js +23 -31
  146. package/wangsvue/form/index.js +42 -44
  147. package/wangsvue/global.js +87 -14
  148. package/wangsvue/{style.css → icons.css} +857 -5830
  149. package/wangsvue/image/index.js +128 -136
  150. package/wangsvue/index.css +65 -0
  151. package/wangsvue/index.js +211 -201
  152. package/wangsvue/inlinemessage/index.js +26 -30
  153. package/wangsvue/inputbadge/index.js +41 -57
  154. package/wangsvue/inputcurrency/index.js +12 -22
  155. package/wangsvue/inputgroup/index.js +40 -37
  156. package/wangsvue/inputgroupaddon/index.js +34 -34
  157. package/wangsvue/inputmask/index.js +30 -29
  158. package/wangsvue/inputnumber/index.js +50 -58
  159. package/wangsvue/inputotp/index.js +70 -63
  160. package/wangsvue/inputphonenumber/index.js +19 -34
  161. package/wangsvue/inputswitch/index.js +114 -100
  162. package/wangsvue/inputtext/index.js +27 -28
  163. package/wangsvue/knob/index.js +47 -45
  164. package/wangsvue/listbox/index.js +156 -138
  165. package/wangsvue/megamenu/index.js +218 -202
  166. package/wangsvue/menu/index.js +119 -110
  167. package/wangsvue/menubar/index.js +186 -172
  168. package/wangsvue/message/index.js +87 -85
  169. package/wangsvue/multiselect/index.js +360 -328
  170. package/wangsvue/orderlist/index.js +275 -245
  171. package/wangsvue/organizationchart/index.js +143 -129
  172. package/wangsvue/overlaypanel/index.js +36 -34
  173. package/wangsvue/paginator/index.js +547 -474
  174. package/wangsvue/panel/index.js +95 -85
  175. package/wangsvue/panelmenu/index.js +136 -124
  176. package/wangsvue/password/index.js +98 -96
  177. package/wangsvue/picklist/index.js +684 -613
  178. package/wangsvue/progressbar/index.js +112 -102
  179. package/wangsvue/rating/index.js +86 -88
  180. package/wangsvue/ripple/index.js +6 -8
  181. package/wangsvue/scrollpanel/index.js +77 -62
  182. package/wangsvue/scrolltop/index.js +45 -42
  183. package/wangsvue/selectbutton/index.js +59 -60
  184. package/wangsvue/sidebar/index.js +165 -145
  185. package/wangsvue/skeleton/index.js +19 -22
  186. package/wangsvue/slider/index.js +135 -126
  187. package/wangsvue/splitbutton/index.js +957 -786
  188. package/wangsvue/steps/index.js +132 -119
  189. package/wangsvue/tabmenu/index.js +84 -75
  190. package/wangsvue/tabview/index.js +168 -148
  191. package/wangsvue/tag/index.js +37 -37
  192. package/wangsvue/tailwind.config.js +20 -0
  193. package/wangsvue/terminal/index.js +60 -55
  194. package/wangsvue/textarea/index.js +44 -51
  195. package/wangsvue/tieredmenu/index.js +121 -108
  196. package/wangsvue/timeline/index.js +70 -83
  197. package/wangsvue/toast/index.js +97 -95
  198. package/wangsvue/togglebutton/index.js +87 -77
  199. package/wangsvue/toolbar/index.js +30 -29
  200. package/wangsvue/tooltip/index.js +44 -42
  201. package/wangsvue/tree/index.js +298 -256
  202. package/wangsvue/treeselect/index.js +395 -338
  203. package/wangsvue/tristatecheckbox/index.js +128 -106
  204. package/wangsvue/validatormessage/index.js +7 -9
  205. package/wangsvue/workcalendar/index.js +27 -36
  206. package/index.js +0 -5
  207. package/wangsvue/accordion/index.d.ts +0 -37
  208. package/wangsvue/autocomplete/index.d.ts +0 -188
  209. package/wangsvue/avatar/index.d.ts +0 -85
  210. package/wangsvue/avatargroup/index.d.ts +0 -8
  211. package/wangsvue/badge/index.d.ts +0 -47
  212. package/wangsvue/badgedirective/index.d.ts +0 -50
  213. package/wangsvue/badgegroup/index.d.ts +0 -45
  214. package/wangsvue/breadcrumb/index.d.ts +0 -25
  215. package/wangsvue/button/index.d.ts +0 -46
  216. package/wangsvue/buttonbulkaction/index.d.ts +0 -32
  217. package/wangsvue/buttondownload/index.d.ts +0 -12
  218. package/wangsvue/buttonfilter/index.d.ts +0 -12
  219. package/wangsvue/buttonradio/index.d.ts +0 -58
  220. package/wangsvue/buttonsearch/index.d.ts +0 -65
  221. package/wangsvue/calendar/index.d.ts +0 -267
  222. package/wangsvue/card/index.d.ts +0 -31
  223. package/wangsvue/carousel/index.d.ts +0 -57
  224. package/wangsvue/cascadeselect/index.d.ts +0 -82
  225. package/wangsvue/changelog/index.d.ts +0 -32
  226. package/wangsvue/checkbox/index.d.ts +0 -81
  227. package/wangsvue/chip/index.d.ts +0 -23
  228. package/wangsvue/chips/index.d.ts +0 -38
  229. package/wangsvue/colorpicker/index.d.ts +0 -51
  230. package/wangsvue/confirmpopup/index.d.ts +0 -39
  231. package/wangsvue/contextmenu/index.d.ts +0 -63
  232. package/wangsvue/datatable/index.d.ts +0 -286
  233. package/wangsvue/dataview/index.d.ts +0 -15
  234. package/wangsvue/dataviewlayoutoptions/index.d.ts +0 -13
  235. package/wangsvue/dialog/index.d.ts +0 -87
  236. package/wangsvue/dialogconfirm/index.d.ts +0 -42
  237. package/wangsvue/dialogform/index.d.ts +0 -71
  238. package/wangsvue/divider/index.d.ts +0 -192
  239. package/wangsvue/dock/index.d.ts +0 -51
  240. package/wangsvue/dropdown/index.d.ts +0 -136
  241. package/wangsvue/fieldset/index.d.ts +0 -94
  242. package/wangsvue/fileupload/index.d.ts +0 -29
  243. package/wangsvue/form/index.d.ts +0 -40
  244. package/wangsvue/global.d.ts +0 -8
  245. package/wangsvue/image/index.d.ts +0 -88
  246. package/wangsvue/index.system.js +0 -76
  247. package/wangsvue/inlinemessage/index.d.ts +0 -20
  248. package/wangsvue/inputbadge/index.d.ts +0 -57
  249. package/wangsvue/inputcurrency/index.d.ts +0 -27
  250. package/wangsvue/inputgroup/index.d.ts +0 -9
  251. package/wangsvue/inputgroupaddon/index.d.ts +0 -17
  252. package/wangsvue/inputmask/index.d.ts +0 -11
  253. package/wangsvue/inputnumber/index.d.ts +0 -46
  254. package/wangsvue/inputotp/index.d.ts +0 -137
  255. package/wangsvue/inputphonenumber/index.d.ts +0 -37
  256. package/wangsvue/inputswitch/index.d.ts +0 -67
  257. package/wangsvue/inputtext/index.d.ts +0 -18
  258. package/wangsvue/knob/index.d.ts +0 -22
  259. package/wangsvue/listbox/index.d.ts +0 -79
  260. package/wangsvue/megamenu/index.d.ts +0 -105
  261. package/wangsvue/menu/index.d.ts +0 -49
  262. package/wangsvue/menubar/index.d.ts +0 -85
  263. package/wangsvue/message/index.d.ts +0 -41
  264. package/wangsvue/multiselect/index.d.ts +0 -243
  265. package/wangsvue/orderlist/index.d.ts +0 -99
  266. package/wangsvue/organizationchart/index.d.ts +0 -71
  267. package/wangsvue/overlaypanel/index.d.ts +0 -17
  268. package/wangsvue/paginator/index.d.ts +0 -210
  269. package/wangsvue/panel/index.d.ts +0 -43
  270. package/wangsvue/panelmenu/index.d.ts +0 -76
  271. package/wangsvue/password/index.d.ts +0 -45
  272. package/wangsvue/picklist/index.d.ts +0 -245
  273. package/wangsvue/progressbar/index.d.ts +0 -117
  274. package/wangsvue/rating/index.d.ts +0 -47
  275. package/wangsvue/ripple/index.d.ts +0 -8
  276. package/wangsvue/scrollpanel/index.d.ts +0 -19
  277. package/wangsvue/scrolltop/index.d.ts +0 -50
  278. package/wangsvue/selectbutton/index.d.ts +0 -35
  279. package/wangsvue/sidebar/index.d.ts +0 -66
  280. package/wangsvue/skeleton/index.d.ts +0 -16
  281. package/wangsvue/slider/index.d.ts +0 -55
  282. package/wangsvue/splitbutton/index.d.ts +0 -6690
  283. package/wangsvue/steps/index.d.ts +0 -108
  284. package/wangsvue/tabmenu/index.d.ts +0 -57
  285. package/wangsvue/tabview/index.d.ts +0 -67
  286. package/wangsvue/tag/index.d.ts +0 -32
  287. package/wangsvue/terminal/index.d.ts +0 -27
  288. package/wangsvue/textarea/index.d.ts +0 -12
  289. package/wangsvue/tieredmenu/index.d.ts +0 -56
  290. package/wangsvue/timeline/index.d.ts +0 -53
  291. package/wangsvue/toast/index.d.ts +0 -61
  292. package/wangsvue/togglebutton/index.d.ts +0 -42
  293. package/wangsvue/toolbar/index.d.ts +0 -19
  294. package/wangsvue/tooltip/index.d.ts +0 -22
  295. package/wangsvue/tree/index.d.ts +0 -117
  296. package/wangsvue/treeselect/index.d.ts +0 -158
  297. package/wangsvue/tristatecheckbox/index.d.ts +0 -49
  298. package/wangsvue/validatormessage/index.d.ts +0 -8
  299. package/wangsvue/workcalendar/index.d.ts +0 -27
@@ -0,0 +1,957 @@
1
+ export default {
2
+ root: ({ props }) => ({
3
+ class: [
4
+ // Flexbox and Position
5
+ 'inline-flex',
6
+ 'relative',
7
+
8
+ // Shape
9
+ 'rounded-md',
10
+ { 'shadow-lg': props.raised },
11
+ ],
12
+ }),
13
+ button: {
14
+ root: ({ parent }) => ({
15
+ class: [
16
+ 'relative',
17
+ // Alignments
18
+ 'items-center inline-flex text-center align-bottom justify-center',
19
+
20
+ // Sizes & Spacing
21
+ 'text-sm',
22
+ {
23
+ 'px-2.5 py-1.5 min-w-[2rem]':
24
+ parent.props.size === null && parent.props.label !== null,
25
+ 'px-2 py-1': parent.props.size === 'small',
26
+ 'px-3 py-2': parent.props.size === 'large',
27
+ },
28
+ {
29
+ 'h-8 w-8 p-0': parent.props.label == null,
30
+ },
31
+
32
+ // Shape
33
+ 'rounded-r-none',
34
+ 'border-r-0',
35
+ { 'rounded-l-full': parent.props.rounded },
36
+ {
37
+ 'rounded-md': !parent.props.rounded,
38
+ 'rounded-full': parent.props.rounded,
39
+ },
40
+
41
+ // Link Button
42
+ {
43
+ 'text-primary-600 bg-transparent ring-transparent': parent.props.link,
44
+ },
45
+
46
+ // Plain Button
47
+ {
48
+ 'text-white bg-gray-500 ring-1 ring-gray-500':
49
+ parent.props.plain && !parent.props.outlined && !parent.props.text,
50
+ },
51
+ // Plain Text Button
52
+ { 'text-surface-500': parent.props.plain && parent.props.text },
53
+ // Plain Outlined Button
54
+ {
55
+ 'text-surface-500 ring-1 ring-gray-500':
56
+ parent.props.plain && parent.props.outlined,
57
+ },
58
+
59
+ // Text Button
60
+ {
61
+ 'bg-transparent ring-transparent':
62
+ parent.props.text && !parent.props.plain,
63
+ },
64
+
65
+ // Outlined Button
66
+ { 'bg-transparent': parent.props.outlined && !parent.props.plain },
67
+
68
+ // --- Severity Buttons ---
69
+
70
+ // Primary Button
71
+ {
72
+ 'text-white':
73
+ !parent.props.link &&
74
+ parent.props.severity === null &&
75
+ !parent.props.text &&
76
+ !parent.props.outlined &&
77
+ !parent.props.plain,
78
+ 'bg-primary-500':
79
+ !parent.props.link &&
80
+ parent.props.severity === null &&
81
+ !parent.props.text &&
82
+ !parent.props.outlined &&
83
+ !parent.props.plain,
84
+ 'ring-1 ring-primary-500':
85
+ !parent.props.link &&
86
+ parent.props.severity === null &&
87
+ !parent.props.text &&
88
+ !parent.props.outlined &&
89
+ !parent.props.plain,
90
+ },
91
+ // Primary Text Button
92
+ {
93
+ 'text-primary-500':
94
+ parent.props.text &&
95
+ parent.props.severity === null &&
96
+ !parent.props.plain,
97
+ },
98
+ // Primary Outlined Button
99
+ {
100
+ 'text-primary-500 ring-1 ring-primary-500 hover:bg-primary-300/20':
101
+ parent.props.outlined &&
102
+ parent.props.severity === null &&
103
+ !parent.props.plain,
104
+ },
105
+
106
+ // Secondary Button
107
+ {
108
+ 'text-white':
109
+ parent.props.severity === 'secondary' &&
110
+ !parent.props.text &&
111
+ !parent.props.outlined &&
112
+ !parent.props.plain,
113
+ 'bg-surface-500':
114
+ parent.props.severity === 'secondary' &&
115
+ !parent.props.text &&
116
+ !parent.props.outlined &&
117
+ !parent.props.plain,
118
+ 'ring-1 ring-surface-500':
119
+ parent.props.severity === 'secondary' &&
120
+ !parent.props.text &&
121
+ !parent.props.outlined &&
122
+ !parent.props.plain,
123
+ },
124
+ // Secondary Text Button
125
+ {
126
+ 'text-surface-500':
127
+ parent.props.text &&
128
+ parent.props.severity === 'secondary' &&
129
+ !parent.props.plain,
130
+ },
131
+ // Secondary Outlined Button
132
+ {
133
+ 'text-surface-500 ring-1 ring-surface-500 hover:bg-surface-300/20':
134
+ parent.props.outlined &&
135
+ parent.props.severity === 'secondary' &&
136
+ !parent.props.plain,
137
+ },
138
+
139
+ // Success Button
140
+ {
141
+ 'text-white':
142
+ parent.props.severity === 'success' &&
143
+ !parent.props.text &&
144
+ !parent.props.outlined &&
145
+ !parent.props.plain,
146
+ 'bg-green-500':
147
+ parent.props.severity === 'success' &&
148
+ !parent.props.text &&
149
+ !parent.props.outlined &&
150
+ !parent.props.plain,
151
+ 'ring-1 ring-green-500':
152
+ parent.props.severity === 'success' &&
153
+ !parent.props.text &&
154
+ !parent.props.outlined &&
155
+ !parent.props.plain,
156
+ },
157
+ // Success Text Button
158
+ {
159
+ 'text-surface-500':
160
+ parent.props.text &&
161
+ parent.props.severity === 'secondary' &&
162
+ !parent.props.plain,
163
+ },
164
+ // Success Outlined Button
165
+ {
166
+ 'text-green-500 ring-1 ring-green-500 hover:bg-green-300/20':
167
+ parent.props.outlined &&
168
+ parent.props.severity === 'success' &&
169
+ !parent.props.plain,
170
+ },
171
+
172
+ // Info Button
173
+ {
174
+ 'text-white':
175
+ parent.props.severity === 'info' &&
176
+ !parent.props.text &&
177
+ !parent.props.outlined &&
178
+ !parent.props.plain,
179
+ 'bg-blue-500':
180
+ parent.props.severity === 'info' &&
181
+ !parent.props.text &&
182
+ !parent.props.outlined &&
183
+ !parent.props.plain,
184
+ 'ring-1 ring-blue-500':
185
+ parent.props.severity === 'info' &&
186
+ !parent.props.text &&
187
+ !parent.props.outlined &&
188
+ !parent.props.plain,
189
+ },
190
+ // Info Text Button
191
+ {
192
+ 'text-blue-500':
193
+ parent.props.text &&
194
+ parent.props.severity === 'info' &&
195
+ !parent.props.plain,
196
+ },
197
+ // Info Outlined Button
198
+ {
199
+ 'text-blue-500 ring-1 ring-blue-500 hover:bg-blue-300/20 ':
200
+ parent.props.outlined &&
201
+ parent.props.severity === 'info' &&
202
+ !parent.props.plain,
203
+ },
204
+
205
+ // Warning Button
206
+ {
207
+ 'text-white':
208
+ parent.props.severity === 'warning' &&
209
+ !parent.props.text &&
210
+ !parent.props.outlined &&
211
+ !parent.props.plain,
212
+ 'bg-orange-500':
213
+ parent.props.severity === 'warning' &&
214
+ !parent.props.text &&
215
+ !parent.props.outlined &&
216
+ !parent.props.plain,
217
+ 'ring-1 ring-orange-500':
218
+ parent.props.severity === 'warning' &&
219
+ !parent.props.text &&
220
+ !parent.props.outlined &&
221
+ !parent.props.plain,
222
+ },
223
+ // Warning Text Button
224
+ {
225
+ 'text-orange-500':
226
+ parent.props.text &&
227
+ parent.props.severity === 'warning' &&
228
+ !parent.props.plain,
229
+ },
230
+ // Warning Outlined Button
231
+ {
232
+ 'text-orange-500 ring-1 ring-orange-500 hover:bg-orange-300/20':
233
+ parent.props.outlined &&
234
+ parent.props.severity === 'warning' &&
235
+ !parent.props.plain,
236
+ },
237
+
238
+ // Help Button
239
+ {
240
+ 'text-white':
241
+ parent.props.severity === 'help' &&
242
+ !parent.props.text &&
243
+ !parent.props.outlined &&
244
+ !parent.props.plain,
245
+ 'bg-purple-500':
246
+ parent.props.severity === 'help' &&
247
+ !parent.props.text &&
248
+ !parent.props.outlined &&
249
+ !parent.props.plain,
250
+ 'ring-1 ring-purple-500':
251
+ parent.props.severity === 'help' &&
252
+ !parent.props.text &&
253
+ !parent.props.outlined &&
254
+ !parent.props.plain,
255
+ },
256
+ // Help Text Button
257
+ {
258
+ 'text-purple-500':
259
+ parent.props.text &&
260
+ parent.props.severity === 'help' &&
261
+ !parent.props.plain,
262
+ },
263
+ // Help Outlined Button
264
+ {
265
+ 'text-purple-500 ring-1 ring-purple-500 hover:bg-purple-300/20':
266
+ parent.props.outlined &&
267
+ parent.props.severity === 'help' &&
268
+ !parent.props.plain,
269
+ },
270
+
271
+ // Danger Button
272
+ {
273
+ 'text-white':
274
+ parent.props.severity === 'danger' &&
275
+ !parent.props.text &&
276
+ !parent.props.outlined &&
277
+ !parent.props.plain,
278
+ 'bg-red-500':
279
+ parent.props.severity === 'danger' &&
280
+ !parent.props.text &&
281
+ !parent.props.outlined &&
282
+ !parent.props.plain,
283
+ 'ring-1 ring-red-500':
284
+ parent.props.severity === 'danger' &&
285
+ !parent.props.text &&
286
+ !parent.props.outlined &&
287
+ !parent.props.plain,
288
+ },
289
+ // Danger Text Button
290
+ {
291
+ 'text-red-500':
292
+ parent.props.text &&
293
+ parent.props.severity === 'danger' &&
294
+ !parent.props.plain,
295
+ },
296
+ // Danger Outlined Button
297
+ {
298
+ 'text-red-500 ring-1 ring-red-500 hover:bg-red-300/20':
299
+ parent.props.outlined &&
300
+ parent.props.severity === 'danger' &&
301
+ !parent.props.plain,
302
+ },
303
+
304
+ // --- Severity Button States ---
305
+ 'focus:outline-none focus:outline-offset-0 focus:ring-2 focus:ring-offset-current',
306
+ {
307
+ 'focus:ring-offset-2':
308
+ !parent.props.link &&
309
+ !parent.props.plain &&
310
+ !parent.props.outlined &&
311
+ !parent.props.text,
312
+ },
313
+
314
+ // Link
315
+ {
316
+ 'focus:ring-primary-500':
317
+ parent.props.link,
318
+ },
319
+
320
+ // Plain
321
+ {
322
+ 'hover:bg-gray-600 hover:ring-gray-600':
323
+ parent.props.plain && !parent.props.outlined && !parent.props.text,
324
+ },
325
+ // Text & Outlined Button
326
+ {
327
+ 'hover:bg-surface-300/20':
328
+ parent.props.plain && (parent.props.text || parent.props.outlined),
329
+ },
330
+
331
+ // Primary
332
+ {
333
+ 'hover:bg-primary-600 hover:ring-primary-600':
334
+ !parent.props.link &&
335
+ parent.props.severity === null &&
336
+ !parent.props.text &&
337
+ !parent.props.outlined &&
338
+ !parent.props.plain,
339
+ },
340
+ {
341
+ 'focus:ring-primary-500':
342
+ parent.props.severity === null,
343
+ },
344
+ // Text & Outlined Button
345
+ {
346
+ 'hover:bg-primary-300/20':
347
+ (parent.props.text || parent.props.outlined) &&
348
+ parent.props.severity === null &&
349
+ !parent.props.plain,
350
+ },
351
+
352
+ // Secondary
353
+ {
354
+ 'hover:bg-surface-600 hover:ring-surface-600':
355
+ parent.props.severity === 'secondary' &&
356
+ !parent.props.text &&
357
+ !parent.props.outlined &&
358
+ !parent.props.plain,
359
+ },
360
+ {
361
+ 'focus:ring-surface-500':
362
+ parent.props.severity === 'secondary',
363
+ },
364
+ // Text & Outlined Button
365
+ {
366
+ 'hover:bg-surface-300/20':
367
+ (parent.props.text || parent.props.outlined) &&
368
+ parent.props.severity === 'secondary' &&
369
+ !parent.props.plain,
370
+ },
371
+
372
+ // Success
373
+ {
374
+ 'hover:bg-green-600 hover:ring-green-600':
375
+ parent.props.severity === 'success' &&
376
+ !parent.props.text &&
377
+ !parent.props.outlined &&
378
+ !parent.props.plain,
379
+ },
380
+ {
381
+ 'focus:ring-green-500':
382
+ parent.props.severity === 'success',
383
+ },
384
+ // Text & Outlined Button
385
+ {
386
+ 'hover:bg-green-300/20':
387
+ (parent.props.text || parent.props.outlined) &&
388
+ parent.props.severity === 'success' &&
389
+ !parent.props.plain,
390
+ },
391
+
392
+ // Info
393
+ {
394
+ 'hover:bg-blue-600 hover:ring-blue-600':
395
+ parent.props.severity === 'info' &&
396
+ !parent.props.text &&
397
+ !parent.props.outlined &&
398
+ !parent.props.plain,
399
+ },
400
+ {
401
+ 'focus:ring-blue-500':
402
+ parent.props.severity === 'info',
403
+ },
404
+ // Text & Outlined Button
405
+ {
406
+ 'hover:bg-blue-300/20':
407
+ (parent.props.text || parent.props.outlined) &&
408
+ parent.props.severity === 'info' &&
409
+ !parent.props.plain,
410
+ },
411
+
412
+ // Warning
413
+ {
414
+ 'hover:bg-orange-600 hover:ring-orange-600':
415
+ parent.props.severity === 'warning' &&
416
+ !parent.props.text &&
417
+ !parent.props.outlined &&
418
+ !parent.props.plain,
419
+ },
420
+ {
421
+ 'focus:ring-orange-500':
422
+ parent.props.severity === 'warning',
423
+ },
424
+ // Text & Outlined Button
425
+ {
426
+ 'hover:bg-orange-300/20':
427
+ (parent.props.text || parent.props.outlined) &&
428
+ parent.props.severity === 'warning' &&
429
+ !parent.props.plain,
430
+ },
431
+
432
+ // Help
433
+ {
434
+ 'hover:bg-purple-600 hover:ring-purple-600':
435
+ parent.props.severity === 'help' &&
436
+ !parent.props.text &&
437
+ !parent.props.outlined &&
438
+ !parent.props.plain,
439
+ },
440
+ {
441
+ 'focus:ring-purple-500':
442
+ parent.props.severity === 'help',
443
+ },
444
+ // Text & Outlined Button
445
+ {
446
+ 'hover:bg-purple-300/20':
447
+ (parent.props.text || parent.props.outlined) &&
448
+ parent.props.severity === 'help' &&
449
+ !parent.props.plain,
450
+ },
451
+
452
+ // Warning
453
+ {
454
+ 'hover:bg-red-600 hover:ring-red-600':
455
+ parent.props.severity === 'danger' &&
456
+ !parent.props.text &&
457
+ !parent.props.outlined &&
458
+ !parent.props.plain,
459
+ },
460
+ {
461
+ 'focus:ring-red-500':
462
+ parent.props.severity === 'danger',
463
+ },
464
+ // Text & Outlined Button
465
+ {
466
+ 'hover:bg-red-300/20':
467
+ (parent.props.text || parent.props.outlined) &&
468
+ parent.props.severity === 'danger' &&
469
+ !parent.props.plain,
470
+ },
471
+
472
+ // Transitions
473
+ 'transition duration-200 ease-in-out',
474
+
475
+ // Misc
476
+ 'cursor-pointer overflow-hidden select-none',
477
+ ],
478
+ }),
479
+ icon: {
480
+ class: [
481
+ // Margins
482
+ 'mr-2',
483
+ ],
484
+ },
485
+ },
486
+ menubutton: {
487
+ root: ({ parent }) => ({
488
+ class: [
489
+ 'relative',
490
+
491
+ // Alignments
492
+ 'items-center inline-flex text-center align-bottom justify-center',
493
+
494
+ // Sizes & Spacing
495
+ 'text-sm',
496
+ {
497
+ 'px-2.5 py-1.5 min-w-[2rem]':
498
+ parent.props.size === null && parent.props.label !== null,
499
+ 'px-2 py-1': parent.props.size === 'small',
500
+ 'px-3 py-2': parent.props.size === 'large',
501
+ },
502
+ {
503
+ 'h-8 w-8 p-0': parent.props.label == null,
504
+ },
505
+ 'ml-[1px]',
506
+
507
+ // Shape
508
+ 'rounded-l-none',
509
+ { 'rounded-l-full': parent.props.rounded },
510
+ {
511
+ 'rounded-md': !parent.props.rounded,
512
+ 'rounded-full': parent.props.rounded,
513
+ },
514
+
515
+ // Link Button
516
+ {
517
+ 'text-primary-600 bg-transparent ring-transparent': parent.props.link,
518
+ },
519
+
520
+ // Plain Button
521
+ {
522
+ 'text-white bg-gray-500 ring-1 ring-gray-500':
523
+ parent.props.plain && !parent.props.outlined && !parent.props.text,
524
+ },
525
+ // Plain Text Button
526
+ { 'text-surface-500': parent.props.plain && parent.props.text },
527
+ // Plain Outlined Button
528
+ {
529
+ 'text-surface-500 ring-1 ring-gray-500':
530
+ parent.props.plain && parent.props.outlined,
531
+ },
532
+
533
+ // Text Button
534
+ {
535
+ 'bg-transparent ring-transparent':
536
+ parent.props.text && !parent.props.plain,
537
+ },
538
+
539
+ // Outlined Button
540
+ { 'bg-transparent': parent.props.outlined && !parent.props.plain },
541
+
542
+ // --- Severity Buttons ---
543
+
544
+ // Primary Button
545
+ {
546
+ 'text-white':
547
+ !parent.props.link &&
548
+ parent.props.severity === null &&
549
+ !parent.props.text &&
550
+ !parent.props.outlined &&
551
+ !parent.props.plain,
552
+ 'bg-primary-500':
553
+ !parent.props.link &&
554
+ parent.props.severity === null &&
555
+ !parent.props.text &&
556
+ !parent.props.outlined &&
557
+ !parent.props.plain,
558
+ 'ring-1 ring-primary-500':
559
+ !parent.props.link &&
560
+ parent.props.severity === null &&
561
+ !parent.props.text &&
562
+ !parent.props.outlined &&
563
+ !parent.props.plain,
564
+ },
565
+ // Primary Text Button
566
+ {
567
+ 'text-primary-500':
568
+ parent.props.text &&
569
+ parent.props.severity === null &&
570
+ !parent.props.plain,
571
+ },
572
+ // Primary Outlined Button
573
+ {
574
+ 'text-primary-500 ring-1 ring-primary-500 hover:bg-primary-300/20':
575
+ parent.props.outlined &&
576
+ parent.props.severity === null &&
577
+ !parent.props.plain,
578
+ },
579
+
580
+ // Secondary Button
581
+ {
582
+ 'text-white':
583
+ parent.props.severity === 'secondary' &&
584
+ !parent.props.text &&
585
+ !parent.props.outlined &&
586
+ !parent.props.plain,
587
+ 'bg-surface-500':
588
+ parent.props.severity === 'secondary' &&
589
+ !parent.props.text &&
590
+ !parent.props.outlined &&
591
+ !parent.props.plain,
592
+ 'ring-1 ring-surface-500':
593
+ parent.props.severity === 'secondary' &&
594
+ !parent.props.text &&
595
+ !parent.props.outlined &&
596
+ !parent.props.plain,
597
+ },
598
+ // Secondary Text Button
599
+ {
600
+ 'text-surface-500':
601
+ parent.props.text &&
602
+ parent.props.severity === 'secondary' &&
603
+ !parent.props.plain,
604
+ },
605
+ // Secondary Outlined Button
606
+ {
607
+ 'text-surface-500 ring-1 ring-surface-500 hover:bg-surface-300/20':
608
+ parent.props.outlined &&
609
+ parent.props.severity === 'secondary' &&
610
+ !parent.props.plain,
611
+ },
612
+
613
+ // Success Button
614
+ {
615
+ 'text-white':
616
+ parent.props.severity === 'success' &&
617
+ !parent.props.text &&
618
+ !parent.props.outlined &&
619
+ !parent.props.plain,
620
+ 'bg-green-500':
621
+ parent.props.severity === 'success' &&
622
+ !parent.props.text &&
623
+ !parent.props.outlined &&
624
+ !parent.props.plain,
625
+ 'ring-1 ring-green-500':
626
+ parent.props.severity === 'success' &&
627
+ !parent.props.text &&
628
+ !parent.props.outlined &&
629
+ !parent.props.plain,
630
+ },
631
+ // Success Text Button
632
+ {
633
+ 'text-surface-500':
634
+ parent.props.text &&
635
+ parent.props.severity === 'secondary' &&
636
+ !parent.props.plain,
637
+ },
638
+ // Success Outlined Button
639
+ {
640
+ 'text-green-500 ring-1 ring-green-500 hover:bg-green-300/20':
641
+ parent.props.outlined &&
642
+ parent.props.severity === 'success' &&
643
+ !parent.props.plain,
644
+ },
645
+
646
+ // Info Button
647
+ {
648
+ 'text-white':
649
+ parent.props.severity === 'info' &&
650
+ !parent.props.text &&
651
+ !parent.props.outlined &&
652
+ !parent.props.plain,
653
+ 'bg-blue-500':
654
+ parent.props.severity === 'info' &&
655
+ !parent.props.text &&
656
+ !parent.props.outlined &&
657
+ !parent.props.plain,
658
+ 'ring-1 ring-blue-500':
659
+ parent.props.severity === 'info' &&
660
+ !parent.props.text &&
661
+ !parent.props.outlined &&
662
+ !parent.props.plain,
663
+ },
664
+ // Info Text Button
665
+ {
666
+ 'text-blue-500':
667
+ parent.props.text &&
668
+ parent.props.severity === 'info' &&
669
+ !parent.props.plain,
670
+ },
671
+ // Info Outlined Button
672
+ {
673
+ 'text-blue-500 ring-1 ring-blue-500 hover:bg-blue-300/20 ':
674
+ parent.props.outlined &&
675
+ parent.props.severity === 'info' &&
676
+ !parent.props.plain,
677
+ },
678
+
679
+ // Warning Button
680
+ {
681
+ 'text-white':
682
+ parent.props.severity === 'warning' &&
683
+ !parent.props.text &&
684
+ !parent.props.outlined &&
685
+ !parent.props.plain,
686
+ 'bg-orange-500':
687
+ parent.props.severity === 'warning' &&
688
+ !parent.props.text &&
689
+ !parent.props.outlined &&
690
+ !parent.props.plain,
691
+ 'ring-1 ring-orange-500':
692
+ parent.props.severity === 'warning' &&
693
+ !parent.props.text &&
694
+ !parent.props.outlined &&
695
+ !parent.props.plain,
696
+ },
697
+ // Warning Text Button
698
+ {
699
+ 'text-orange-500':
700
+ parent.props.text &&
701
+ parent.props.severity === 'warning' &&
702
+ !parent.props.plain,
703
+ },
704
+ // Warning Outlined Button
705
+ {
706
+ 'text-orange-500 ring-1 ring-orange-500 hover:bg-orange-300/20':
707
+ parent.props.outlined &&
708
+ parent.props.severity === 'warning' &&
709
+ !parent.props.plain,
710
+ },
711
+
712
+ // Help Button
713
+ {
714
+ 'text-white':
715
+ parent.props.severity === 'help' &&
716
+ !parent.props.text &&
717
+ !parent.props.outlined &&
718
+ !parent.props.plain,
719
+ 'bg-purple-500':
720
+ parent.props.severity === 'help' &&
721
+ !parent.props.text &&
722
+ !parent.props.outlined &&
723
+ !parent.props.plain,
724
+ 'ring-1 ring-purple-500':
725
+ parent.props.severity === 'help' &&
726
+ !parent.props.text &&
727
+ !parent.props.outlined &&
728
+ !parent.props.plain,
729
+ },
730
+ // Help Text Button
731
+ {
732
+ 'text-purple-500':
733
+ parent.props.text &&
734
+ parent.props.severity === 'help' &&
735
+ !parent.props.plain,
736
+ },
737
+ // Help Outlined Button
738
+ {
739
+ 'text-purple-500 ring-1 ring-purple-500 hover:bg-purple-300/20':
740
+ parent.props.outlined &&
741
+ parent.props.severity === 'help' &&
742
+ !parent.props.plain,
743
+ },
744
+
745
+ // Danger Button
746
+ {
747
+ 'text-white':
748
+ parent.props.severity === 'danger' &&
749
+ !parent.props.text &&
750
+ !parent.props.outlined &&
751
+ !parent.props.plain,
752
+ 'bg-red-500':
753
+ parent.props.severity === 'danger' &&
754
+ !parent.props.text &&
755
+ !parent.props.outlined &&
756
+ !parent.props.plain,
757
+ 'ring-1 ring-red-500':
758
+ parent.props.severity === 'danger' &&
759
+ !parent.props.text &&
760
+ !parent.props.outlined &&
761
+ !parent.props.plain,
762
+ },
763
+ // Danger Text Button
764
+ {
765
+ 'text-red-500':
766
+ parent.props.text &&
767
+ parent.props.severity === 'danger' &&
768
+ !parent.props.plain,
769
+ },
770
+ // Danger Outlined Button
771
+ {
772
+ 'text-red-500 ring-1 ring-red-500 hover:bg-red-300/20':
773
+ parent.props.outlined &&
774
+ parent.props.severity === 'danger' &&
775
+ !parent.props.plain,
776
+ },
777
+
778
+ // --- Severity Button States ---
779
+ 'focus:outline-none focus:outline-offset-0 focus:ring-2 focus:ring-offset-current',
780
+ {
781
+ 'focus:ring-offset-2':
782
+ !parent.props.link &&
783
+ !parent.props.plain &&
784
+ !parent.props.outlined &&
785
+ !parent.props.text,
786
+ },
787
+
788
+ // Link
789
+ {
790
+ 'focus:ring-primary-500':
791
+ parent.props.link,
792
+ },
793
+
794
+ // Plain
795
+ {
796
+ 'hover:bg-gray-600 hover:ring-gray-600':
797
+ parent.props.plain && !parent.props.outlined && !parent.props.text,
798
+ },
799
+ // Text & Outlined Button
800
+ {
801
+ 'hover:bg-surface-300/20':
802
+ parent.props.plain && (parent.props.text || parent.props.outlined),
803
+ },
804
+
805
+ // Primary
806
+ {
807
+ 'hover:bg-primary-600 hover:ring-primary-600':
808
+ !parent.props.link &&
809
+ parent.props.severity === null &&
810
+ !parent.props.text &&
811
+ !parent.props.outlined &&
812
+ !parent.props.plain,
813
+ },
814
+ {
815
+ 'focus:ring-primary-500':
816
+ parent.props.severity === null,
817
+ },
818
+ // Text & Outlined Button
819
+ {
820
+ 'hover:bg-primary-300/20':
821
+ (parent.props.text || parent.props.outlined) &&
822
+ parent.props.severity === null &&
823
+ !parent.props.plain,
824
+ },
825
+
826
+ // Secondary
827
+ {
828
+ 'hover:bg-surface-600 hover:ring-surface-600':
829
+ parent.props.severity === 'secondary' &&
830
+ !parent.props.text &&
831
+ !parent.props.outlined &&
832
+ !parent.props.plain,
833
+ },
834
+ {
835
+ 'focus:ring-surface-500':
836
+ parent.props.severity === 'secondary',
837
+ },
838
+ // Text & Outlined Button
839
+ {
840
+ 'hover:bg-surface-300/20':
841
+ (parent.props.text || parent.props.outlined) &&
842
+ parent.props.severity === 'secondary' &&
843
+ !parent.props.plain,
844
+ },
845
+
846
+ // Success
847
+ {
848
+ 'hover:bg-green-600 hover:ring-green-600':
849
+ parent.props.severity === 'success' &&
850
+ !parent.props.text &&
851
+ !parent.props.outlined &&
852
+ !parent.props.plain,
853
+ },
854
+ {
855
+ 'focus:ring-green-500':
856
+ parent.props.severity === 'success',
857
+ },
858
+ // Text & Outlined Button
859
+ {
860
+ 'hover:bg-green-300/20':
861
+ (parent.props.text || parent.props.outlined) &&
862
+ parent.props.severity === 'success' &&
863
+ !parent.props.plain,
864
+ },
865
+
866
+ // Info
867
+ {
868
+ 'hover:bg-blue-600 hover:ring-blue-600':
869
+ parent.props.severity === 'info' &&
870
+ !parent.props.text &&
871
+ !parent.props.outlined &&
872
+ !parent.props.plain,
873
+ },
874
+ {
875
+ 'focus:ring-blue-500':
876
+ parent.props.severity === 'info',
877
+ },
878
+ // Text & Outlined Button
879
+ {
880
+ 'hover:bg-blue-300/20':
881
+ (parent.props.text || parent.props.outlined) &&
882
+ parent.props.severity === 'info' &&
883
+ !parent.props.plain,
884
+ },
885
+
886
+ // Warning
887
+ {
888
+ 'hover:bg-orange-600 hover:ring-orange-600':
889
+ parent.props.severity === 'warning' &&
890
+ !parent.props.text &&
891
+ !parent.props.outlined &&
892
+ !parent.props.plain,
893
+ },
894
+ {
895
+ 'focus:ring-orange-500':
896
+ parent.props.severity === 'warning',
897
+ },
898
+ // Text & Outlined Button
899
+ {
900
+ 'hover:bg-orange-300/20':
901
+ (parent.props.text || parent.props.outlined) &&
902
+ parent.props.severity === 'warning' &&
903
+ !parent.props.plain,
904
+ },
905
+
906
+ // Help
907
+ {
908
+ 'hover:bg-purple-600 hover:ring-purple-600':
909
+ parent.props.severity === 'help' &&
910
+ !parent.props.text &&
911
+ !parent.props.outlined &&
912
+ !parent.props.plain,
913
+ },
914
+ {
915
+ 'focus:ring-purple-500':
916
+ parent.props.severity === 'help',
917
+ },
918
+ // Text & Outlined Button
919
+ {
920
+ 'hover:bg-purple-300/20':
921
+ (parent.props.text || parent.props.outlined) &&
922
+ parent.props.severity === 'help' &&
923
+ !parent.props.plain,
924
+ },
925
+
926
+ // Warning
927
+ {
928
+ 'hover:bg-red-600 hover:ring-red-600':
929
+ parent.props.severity === 'danger' &&
930
+ !parent.props.text &&
931
+ !parent.props.outlined &&
932
+ !parent.props.plain,
933
+ },
934
+ {
935
+ 'focus:ring-red-500':
936
+ parent.props.severity === 'danger',
937
+ },
938
+ // Text & Outlined Button
939
+ {
940
+ 'hover:bg-red-300/20':
941
+ (parent.props.text || parent.props.outlined) &&
942
+ parent.props.severity === 'danger' &&
943
+ !parent.props.plain,
944
+ },
945
+
946
+ // Transitions
947
+ 'transition duration-200 ease-in-out',
948
+
949
+ // Misc
950
+ 'cursor-pointer overflow-hidden select-none',
951
+ ],
952
+ }),
953
+ label: {
954
+ class: ['hidden'],
955
+ },
956
+ },
957
+ };