@fewangsit/wangsvue-presets 1.0.80 → 1.0.81-alpha.1

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/{wangsvue/style.css → fixedasset/icons.css} +849 -5822
  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 +13 -13
  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/icons.css +850 -0
  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,41 @@
1
+ import InputTextPreset from '../inputtext/index.js';
2
+ /**
3
+ * To set different ring width for Firefox Browser
4
+ * Also for InputGroupAddon
5
+ */
6
+ const isFirefoxBased = navigator.userAgent.includes('Firefox');
7
+
8
+ export default {
9
+ root: ({ context }) => ({
10
+ class: [
11
+ 'flex flex-wrap gap-x-0.5 gap-y-[5px] items-center',
12
+ 'min-h-[26px] h-fit w-full',
13
+ 'ring-inset rounded px-[12px] py-[2px]',
14
+ {
15
+ 'ring-[1px]': isFirefoxBased,
16
+ 'ring-[0.5px]': !isFirefoxBased,
17
+ },
18
+ { '!ring-danger-500 !dark:ring-danger-500': context.invalidInput },
19
+ { '!ring-general-200 !dark:ring-general-200': !context.invalidInput },
20
+ { 'pointer-events-none': context.disabled },
21
+ ],
22
+ }),
23
+ input: ({ context, parent, props }) => ({
24
+ class: [
25
+ ...InputTextPreset.root({
26
+ props,
27
+ context,
28
+ parent,
29
+ }).class,
30
+ 'outline-none !w-full !bg-transparent !p-0 !shadow-none h-max !leading-4 min-w-[70px]',
31
+ { 'placeholder:text-transparent': context.value?.length },
32
+ 'focus:placeholder:text-general-200',
33
+ ],
34
+ }),
35
+ erroricon: {
36
+ class: ['mr-1 text-warning-600 text-base'],
37
+ },
38
+ erroroverlaypanel: {
39
+ class: ['px-3 py-1 text-[12px] text-general-800'],
40
+ },
41
+ };
@@ -0,0 +1,12 @@
1
+ import { commonClasses } from '../inputphonenumber';
2
+
3
+ export default {
4
+ currency: (ctx) => ({
5
+ 'class': [...commonClasses(ctx), 'rounded-l rounded-r-none h-[30px]'],
6
+ 'data-wv-section': 'currency',
7
+ }),
8
+ value: (ctx) => ({
9
+ 'class': [...commonClasses(ctx), 'rounded-r rounded-l-none -ml-[1px]'],
10
+ 'data-wv-section': 'value',
11
+ }),
12
+ };
@@ -0,0 +1,40 @@
1
+ /**
2
+ * To set different ring width for Firefox Browser
3
+ * Also for InputGroupAddon
4
+ */
5
+ const isFirefoxBased = navigator.userAgent.includes('Firefox');
6
+
7
+ export default {
8
+ root: ({ props }) => ({
9
+ 'class': [
10
+ {
11
+ '!ring-danger-500 [&_.inputgroupaddon]:ring-danger-500':
12
+ props.invalid && props.ring !== 'none',
13
+ '[&_.inputgroupaddon]:ring-general-400':
14
+ !props.invalid && props.ring !== 'none',
15
+ '!bg-general-50 ': props.disabled,
16
+ },
17
+ {
18
+ '[&:has(:focus)]:!ring-primary-400 [&:has(:focus)_.inputgroupaddon]:!ring-primary-400':
19
+ props.ring !== 'none',
20
+ },
21
+ {
22
+ 'ring-[1px] [&_.inputgroupaddon]:ring-[1px]':
23
+ isFirefoxBased && props.ring !== 'none',
24
+ 'ring-[0.5px] [&_.inputgroupaddon]:ring-[0.5px]':
25
+ !isFirefoxBased && props.ring !== 'none',
26
+ },
27
+
28
+ '[&_.inputgroupaddon[data-addon-variant=plain]]:!ring-[0px]',
29
+
30
+ '[&:has(input)]:cursor-text',
31
+ 'h-[30px]',
32
+ 'flex items-stretch',
33
+ 'w-full',
34
+ 'ring-inset ring-general-400 rounded',
35
+ 'bg-white',
36
+ props.class,
37
+ ],
38
+ 'data-wv-section': 'inputgroup',
39
+ }),
40
+ };
@@ -0,0 +1,34 @@
1
+ export default {
2
+ root: ({ props }) => ({
3
+ 'class': [
4
+ 'inputgroupaddon', // Removing this class will causes bug style.
5
+ // Flex
6
+ 'inline-flex items-center justify-center',
7
+
8
+ // Shape
9
+ 'first:rounded-tl first:rounded-bl',
10
+ 'last:rounded-tr last:rounded-br',
11
+ 'ring-inset',
12
+ // 'border-y',
13
+ // 'border-l',
14
+
15
+ // Space
16
+ 'px-3 gap-3',
17
+
18
+ // Size
19
+ 'w-max',
20
+
21
+ // Font
22
+ 'text-general-800',
23
+ 'text-xs font-medium leading-none tracking-tight',
24
+
25
+ // Color
26
+ { 'bg-general-50': props.addonVariant !== 'plain' },
27
+ {
28
+ '!text-general-200': props.disabled,
29
+ '!px-2': props.showButtons,
30
+ },
31
+ ],
32
+ 'data-addon-variant': props.addonVariant, // Used in inputgroup to set styling
33
+ }),
34
+ };
@@ -0,0 +1,30 @@
1
+ export default {
2
+ root: ({ context }) => ({
3
+ class: [
4
+ // Font
5
+ 'font-sans leading-6',
6
+
7
+ // Spacing
8
+ 'm-0 py-1.5 px-3 sm:text-sm',
9
+
10
+ // Colors
11
+ 'text-surface-900',
12
+ 'placeholder:text-surface-400',
13
+ 'bg-surface-0',
14
+ 'ring-1 ring-inset ring-surface-300',
15
+ 'shadow-sm',
16
+
17
+ // Shape
18
+ 'rounded-md',
19
+ 'appearance-none',
20
+
21
+ // Interactions
22
+ {
23
+ 'outline-none focus:ring-primary-500':
24
+ !context.disabled,
25
+ 'opacity-60 select-none pointer-events-none cursor-default':
26
+ context.disabled,
27
+ },
28
+ ],
29
+ }),
30
+ };
@@ -0,0 +1,50 @@
1
+ export default {
2
+ root: ({ props, parent }) => ({
3
+ class: [
4
+ // Layout
5
+ 'flex items-center self-stretch shrink-0 grow',
6
+
7
+ //Size
8
+ 'h-full',
9
+
10
+ // Spacing
11
+ 'py-1 px-3',
12
+
13
+ // Border
14
+ 'rounded',
15
+
16
+ 'appearance-none',
17
+ ],
18
+ }),
19
+ input: {
20
+ root: ({ parent }) => ({
21
+ class: [
22
+ 'border-0 h-full w-full outline-none',
23
+ 'bg-inherit',
24
+ 'text-xs font-normal',
25
+ 'placeholder:text-general-200',
26
+ ],
27
+ }),
28
+ },
29
+
30
+ buttongroup: {
31
+ class: ['flex'],
32
+ },
33
+
34
+ incrementbutton: {
35
+ root: ({ parent }) => ({
36
+ class: [],
37
+ }),
38
+ label: {
39
+ class: 'h-0 w-0',
40
+ },
41
+ },
42
+ decrementbutton: {
43
+ root: ({ parent }) => ({
44
+ class: [],
45
+ }),
46
+ label: {
47
+ class: 'h-0 w-0',
48
+ },
49
+ },
50
+ };
@@ -0,0 +1,70 @@
1
+ export default {
2
+ root: {
3
+ class: [
4
+ // Alignment
5
+ 'flex items-center',
6
+ 'gap-[6px]',
7
+ ],
8
+ },
9
+ input: {
10
+ root: ({ props, context, parent }) => ({
11
+ class: [
12
+ // Font
13
+ 'leading-none font-medium',
14
+
15
+ // Flex & Alignment
16
+ { 'flex-1 w-[1%]': parent.instance.$name == 'InputGroup' },
17
+ 'text-center',
18
+
19
+ // Spacing
20
+ 'm-0',
21
+ {
22
+ 'p-3': props.size == null,
23
+ },
24
+
25
+ // Size
26
+ 'w-[42px] h-[42px] text-base',
27
+
28
+ // Shape
29
+ { 'rounded-md': parent.instance.$name !== 'InputGroup' },
30
+ {
31
+ 'first:rounded-l-md rounded-none last:rounded-r-md':
32
+ parent.instance.$name == 'InputGroup',
33
+ },
34
+ {
35
+ 'border-0 border-y border-l last:border-r':
36
+ parent.instance.$name == 'InputGroup',
37
+ },
38
+ {
39
+ 'first:ml-0 ml-[-1px]':
40
+ parent.instance.$name == 'InputGroup' && !props.showButtons,
41
+ },
42
+
43
+ // Colors
44
+ 'text-general-800',
45
+ 'placeholder:text-surface-400',
46
+ 'bg-white',
47
+ 'border',
48
+ { 'border-general-200': !props.invalid },
49
+
50
+ // Invalid State
51
+ { 'border-danger-500': props.invalid },
52
+
53
+ // States
54
+ {
55
+ // 'hover:border-primary-500': !context.disabled && !props.invalid,
56
+ 'focus:outline-none focus:outline-offset-0': !context.disabled,
57
+ 'opacity-60 select-none pointer-events-none cursor-default':
58
+ context.disabled,
59
+ },
60
+
61
+ // Filled State *for FloatLabel
62
+ { filled: parent.instance?.$name == 'FloatLabel' && context.filled },
63
+
64
+ // Misc
65
+ 'appearance-none',
66
+ 'transition-colors duration-200',
67
+ ],
68
+ }),
69
+ },
70
+ };
@@ -0,0 +1,19 @@
1
+ export const commonClasses = ({ isFirefoxBased, invalidInput }) => [
2
+ { 'ring-[1px]': isFirefoxBased, 'ring-[0.5px]': !isFirefoxBased },
3
+ { '!ring-danger-500': invalidInput },
4
+ 'ring-inset',
5
+ 'ring-general-400',
6
+ '[&:has(:focus)]:bg-none',
7
+ '[&:has(:focus)]:ring-primary-400',
8
+ 'bg-white',
9
+ 'z-[0] [&:has(:focus)]:z-[12]',
10
+ ];
11
+
12
+ export default {
13
+ dialcode: (ctx) => ({
14
+ class: [...commonClasses(ctx), 'rounded-l rounded-r-none'],
15
+ }),
16
+ inputnumber: (ctx) => ({
17
+ class: [...commonClasses(ctx), 'rounded-r rounded-l-none -ml-[1px]'],
18
+ }),
19
+ };
@@ -0,0 +1,114 @@
1
+ export default {
2
+ root: ({ props }) => ({
3
+ class: [
4
+ // Alignments
5
+ 'inline-flex relative align-middle',
6
+ 'shrink-0',
7
+
8
+ // Shape
9
+ 'rounded-[60px]',
10
+
11
+ // Size
12
+ 'h-4 w-8',
13
+
14
+ // Misc
15
+ 'cursor-pointer',
16
+
17
+ // States
18
+ {
19
+ 'select-none pointer-events-none cursor-default': props.disabled,
20
+ },
21
+ ],
22
+ }),
23
+ slider: ({ props }) => ({
24
+ class: [
25
+ // Position
26
+ 'absolute top-0 left-0 right-0 bottom-0',
27
+
28
+ // Shape
29
+ 'rounded-[60px]',
30
+
31
+ // Before:
32
+ 'before:absolute before:top-1/2',
33
+ 'before:-mt-[6px] before:ml-0.5',
34
+ 'before:h-3 before:w-3',
35
+ 'before:rounded-full',
36
+ 'before:duration-200 before:transition before:ease-in-out',
37
+ 'before:shadow',
38
+ {
39
+ 'before:bg-white before:bg-white':
40
+ props.modelValue == props.trueValue,
41
+ 'before:bg-primary-200':
42
+ props.modelValue !== props.trueValue && !props.disabled,
43
+ 'before:bg-general-50':
44
+ props.modelValue !== props.trueValue && props.disabled,
45
+ },
46
+ {
47
+ 'before:transform before:translate-x-3.5':
48
+ props.modelValue == props.trueValue,
49
+ },
50
+
51
+ // Colors
52
+ 'border',
53
+ {
54
+ 'border-primary-200':
55
+ props.modelValue !== props.trueValue && !props.disabled,
56
+ 'border-transparent': props.modelValue == props.trueValue,
57
+ },
58
+ {
59
+ 'bg-white':
60
+ props.modelValue !== props.trueValue && !props.disabled,
61
+ 'bg-primary-500':
62
+ props.modelValue == props.trueValue && !props.disabled,
63
+ 'bg-primary-100':
64
+ props.modelValue == props.trueValue && props.disabled,
65
+ 'bg-general-100':
66
+ props.modelValue !== props.trueValue && props.disabled,
67
+ },
68
+
69
+ // States
70
+ 'peer-focus-visible:ring-2 peer-focus-visible:ring-primary-500',
71
+
72
+ // Transition
73
+ 'transition-colors duration-200',
74
+
75
+ // Misc
76
+ 'cursor-pointer',
77
+ ],
78
+ }),
79
+ input: ({ props }) => ({
80
+ class: [
81
+ 'peer',
82
+
83
+ // Size
84
+ 'w-full ',
85
+ 'h-full',
86
+
87
+ // Position
88
+ 'absolute',
89
+ 'top-0 left-0',
90
+ 'z-10',
91
+
92
+ // Spacing
93
+ 'p-0',
94
+ 'm-0',
95
+
96
+ // Shape
97
+ 'rounded',
98
+ 'border',
99
+
100
+ // Shape
101
+ 'opacity-0',
102
+ 'rounded-md',
103
+ 'outline-none',
104
+ 'border-2 border-surface-300',
105
+
106
+ // Misc
107
+ 'appearance-none',
108
+ {
109
+ 'cursor-default': props.disabled,
110
+ 'cursor-pointer': !props.disabled,
111
+ },
112
+ ],
113
+ }),
114
+ };
@@ -0,0 +1,27 @@
1
+ export default {
2
+ root: ({ props, context, parent }) => ({
3
+ class: [
4
+ 'px-3 py-1 w-full bg-transparent',
5
+
6
+ // Size
7
+ 'h-full',
8
+ {
9
+ 'max-h-[43px]': parent.instance?.placeholder?.includes('password'),
10
+ },
11
+
12
+ // Font
13
+ 'text-grayscale-900 text-xs font-normal',
14
+ 'placeholder:text-general-200',
15
+ 'placeholder:!font-normal',
16
+
17
+ 'appearance-none',
18
+
19
+ // Interactions
20
+ {
21
+ 'outline-none': !context.disabled,
22
+ '!text-general-200 select-none pointer-events-none cursor-default':
23
+ context.disabled,
24
+ },
25
+ ],
26
+ }),
27
+ };
@@ -0,0 +1,47 @@
1
+ export default {
2
+ root: ({ props }) => ({
3
+ class: [
4
+ // Misc
5
+ {
6
+ 'opacity-60 select-none pointer-events-none cursor-default':
7
+ props.disabled,
8
+ },
9
+ ],
10
+ }),
11
+ range: {
12
+ class: [
13
+ // Stroke
14
+ 'stroke-current',
15
+
16
+ // Color
17
+ 'stroke-surface-200',
18
+
19
+ // Fill
20
+ 'fill-none',
21
+
22
+ // Transition
23
+ 'transition duration-100 ease-in',
24
+ ],
25
+ },
26
+ value: {
27
+ class: [
28
+ // Animation
29
+ 'animate-dash-frame',
30
+
31
+ // Color
32
+ 'stroke-primary-500',
33
+
34
+ // Fill
35
+ 'fill-none',
36
+ ],
37
+ },
38
+ label: {
39
+ class: [
40
+ // Text Style
41
+ 'text-center text-xl',
42
+
43
+ // Color
44
+ 'fill-surface-600',
45
+ ],
46
+ },
47
+ };
@@ -0,0 +1,156 @@
1
+ export default {
2
+ root: {
3
+ class: [
4
+ // Sizing and Shape
5
+ 'min-w-[12rem]',
6
+ 'rounded-md',
7
+ // Spacing
8
+
9
+ // Colors
10
+ 'bg-surface-0',
11
+ 'text-surface-700/80',
12
+ 'ring-1 ring-surface-200',
13
+ ],
14
+ },
15
+ wrapper: {
16
+ class: [
17
+ // Overflow
18
+ 'overflow-auto',
19
+ ],
20
+ },
21
+ list: {
22
+ class: 'py-1 list-none m-0',
23
+ },
24
+ item: ({ context }) => ({
25
+ class: [
26
+ // Font
27
+ 'sm:text-sm',
28
+ 'leading-none',
29
+ { 'font-normal': !context.selected, 'font-bold': context.selected },
30
+
31
+ // Position
32
+ 'relative',
33
+
34
+ // Shape
35
+ 'border-0',
36
+ 'rounded-none',
37
+
38
+ // Spacing
39
+ 'm-0',
40
+ 'py-2 px-4',
41
+
42
+ // Color
43
+ {
44
+ 'text-surface-700/80':
45
+ !context.focused && !context.selected,
46
+ },
47
+ {
48
+ 'bg-surface-200 text-surface-700/80':
49
+ context.focused && !context.selected,
50
+ },
51
+ {
52
+ 'bg-primary-500 text-white':
53
+ context.focused && context.selected,
54
+ },
55
+ {
56
+ 'bg-surface-100 text-primary-500':
57
+ !context.focused && context.selected,
58
+ },
59
+
60
+ //States
61
+ 'hover:bg-primary-500 hover:text-white',
62
+ 'focus-visible:outline-none focus-visible:outline-offset-0 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary-500',
63
+
64
+ // Misc
65
+ 'cursor-pointer',
66
+ 'overflow-hidden',
67
+ 'whitespace-nowrap',
68
+ ],
69
+ }),
70
+ itemgroup: {
71
+ class: [
72
+ //Font
73
+ 'font-bold',
74
+ 'sm:text-sm',
75
+
76
+ // Spacing
77
+ 'm-0',
78
+ 'py-2 px-4',
79
+
80
+ // Color
81
+ 'text-surface-800/80',
82
+ 'bg-surface-0',
83
+
84
+ // Misc
85
+ 'cursor-auto',
86
+ ],
87
+ },
88
+ header: {
89
+ class: [
90
+ // Spacing
91
+ 'p-0',
92
+ 'm-0',
93
+
94
+ //Shape
95
+ 'rounded-tl-md',
96
+ 'rounded-tr-md',
97
+ 'border-b border-surface-200',
98
+
99
+ // Color
100
+ 'text-surface-700/80',
101
+ 'bg-surface-100',
102
+ ],
103
+ },
104
+ filtercontainer: {
105
+ class: 'relative',
106
+ },
107
+ filterinput: {
108
+ class: [
109
+ // Font
110
+ 'font-sans',
111
+ 'leading-none',
112
+ 'sm:text-sm',
113
+
114
+ // Sizing
115
+ 'py-1.5 px-3',
116
+ 'pr-7',
117
+ '-mr-7',
118
+ 'w-full',
119
+
120
+ //Color
121
+ 'text-surface-700/80',
122
+ 'bg-surface-0',
123
+ 'placeholder:text-surface-400',
124
+
125
+ // Shape
126
+ 'border-0',
127
+ 'rounded-tl-md',
128
+ 'rounded-tr-md',
129
+ 'appearance-none',
130
+
131
+ // States
132
+ 'focus:ring-2 focus:ring-inset focus:outline-none focus:outline-offset-0',
133
+ 'focus:ring-primary-600',
134
+
135
+ // Misc
136
+ 'appearance-none',
137
+ ],
138
+ },
139
+ filtericon: {
140
+ class: ['absolute', 'top-1/2 right-3', '-mt-2'],
141
+ },
142
+ emptymessage: {
143
+ class: [
144
+ // Font
145
+ 'leading-none',
146
+ 'sm:text-sm',
147
+
148
+ // Spacing
149
+ 'py-2 px-4',
150
+
151
+ // Color
152
+ 'text-surface-800/80',
153
+ 'bg-transparent',
154
+ ],
155
+ },
156
+ };