@indielayer/ui 0.2.4 → 1.0.0-alpha.3

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 (396) hide show
  1. package/README.md +28 -12
  2. package/env.d.ts +1 -0
  3. package/lib/components/alert/Alert.vue.d.ts +42 -0
  4. package/lib/components/avatar/Avatar.vue.d.ts +49 -0
  5. package/lib/components/badge/Badge.vue.d.ts +70 -0
  6. package/lib/components/breadcrumbs/Breadcrumbs.vue.d.ts +30 -0
  7. package/lib/components/button/Button.vue.d.ts +87 -0
  8. package/lib/components/button/ButtonGroup.vue.d.ts +49 -0
  9. package/lib/components/card/Card.vue.d.ts +17 -0
  10. package/lib/components/checkbox/Checkbox.vue.d.ts +81 -0
  11. package/lib/components/collapse/Collapse.vue.d.ts +47 -0
  12. package/lib/components/container/Container.vue.d.ts +14 -0
  13. package/lib/components/divider/Divider.vue.d.ts +10 -0
  14. package/lib/components/drawer/Drawer.vue.d.ts +73 -0
  15. package/lib/components/form/Form.vue.d.ts +46 -0
  16. package/lib/components/icon/Icon.vue.d.ts +36 -0
  17. package/lib/components/image/Image.vue.d.ts +8 -0
  18. package/lib/components/index.d.ts +45 -0
  19. package/lib/components/input/Input.vue.d.ts +114 -0
  20. package/lib/components/link/Link.vue.d.ts +36 -0
  21. package/lib/components/menu/Menu.vue.d.ts +50 -0
  22. package/lib/components/menu/MenuItem.vue.d.ts +102 -0
  23. package/lib/components/modal/Modal.vue.d.ts +34 -0
  24. package/lib/components/notifications/Notifications.vue.d.ts +104 -0
  25. package/lib/components/pagination/Pagination.vue.d.ts +58 -0
  26. package/lib/components/pagination/PaginationItem.vue.d.ts +32 -0
  27. package/lib/components/popover/Popover.vue.d.ts +64 -0
  28. package/lib/components/popover/PopoverContainer.vue.d.ts +14 -0
  29. package/lib/components/progress/Progress.vue.d.ts +42 -0
  30. package/lib/components/radio/Radio.vue.d.ts +79 -0
  31. package/lib/components/scroll/Scroll.vue.d.ts +29 -0
  32. package/lib/components/select/Select.vue.d.ts +100 -0
  33. package/lib/components/skeleton/Skeleton.vue.d.ts +14 -0
  34. package/lib/components/slider/Slider.vue.d.ts +96 -0
  35. package/lib/components/spacer/Spacer.vue.d.ts +2 -0
  36. package/lib/components/spinner/Spinner.vue.d.ts +16 -0
  37. package/lib/components/tab/Tab.vue.d.ts +47 -0
  38. package/lib/components/tab/TabGroup.vue.d.ts +41 -0
  39. package/lib/components/table/Table.vue.d.ts +81 -0
  40. package/lib/components/table/TableBody.vue.d.ts +2 -0
  41. package/lib/components/table/TableCell.vue.d.ts +33 -0
  42. package/lib/components/table/TableHead.vue.d.ts +2 -0
  43. package/lib/components/table/TableHeader.vue.d.ts +33 -0
  44. package/lib/components/table/TableRow.vue.d.ts +23 -0
  45. package/lib/components/tag/Tag.vue.d.ts +45 -0
  46. package/lib/components/textarea/Textarea.vue.d.ts +101 -0
  47. package/lib/components/toggle/Toggle.vue.d.ts +79 -0
  48. package/lib/components/tooltip/Tooltip.vue.d.ts +2 -0
  49. package/lib/composables/colors-utils.d.ts +8 -0
  50. package/lib/composables/colors.d.ts +26 -0
  51. package/lib/composables/common.d.ts +14 -0
  52. package/lib/composables/css.d.ts +5 -0
  53. package/lib/composables/index.d.ts +7 -0
  54. package/lib/composables/inputtable.d.ts +37 -0
  55. package/lib/composables/interactive.d.ts +10 -0
  56. package/lib/composables/keys.d.ts +7 -0
  57. package/lib/composables/notification.d.ts +1 -0
  58. package/lib/create.d.ts +11 -0
  59. package/lib/index.cjs.js +15 -0
  60. package/lib/index.d.ts +6 -0
  61. package/lib/index.es.js +6172 -0
  62. package/lib/install.d.ts +4 -0
  63. package/lib/nuxt.js +32 -0
  64. package/lib/nuxt.plugin.js +8 -0
  65. package/lib/style.css +1 -0
  66. package/lib/tailwind.preset.js +43 -14
  67. package/lib/version.d.ts +2 -0
  68. package/package.json +50 -28
  69. package/src/components/alert/Alert.vue +164 -0
  70. package/src/components/avatar/Avatar.vue +114 -97
  71. package/src/components/badge/Badge.vue +107 -0
  72. package/src/components/breadcrumbs/Breadcrumbs.vue +60 -0
  73. package/src/components/button/Button.vue +405 -128
  74. package/src/components/button/ButtonGroup.vue +73 -0
  75. package/src/components/card/Card.vue +16 -21
  76. package/src/components/checkbox/Checkbox.vue +162 -85
  77. package/src/components/collapse/Collapse.vue +152 -92
  78. package/src/components/container/Container.vue +13 -11
  79. package/src/components/divider/Divider.vue +15 -19
  80. package/src/components/drawer/Drawer.vue +244 -0
  81. package/src/components/form/Form.vue +32 -22
  82. package/src/components/icon/Icon.vue +43 -33
  83. package/src/components/image/Image.vue +26 -20
  84. package/src/components/index.ts +45 -0
  85. package/src/components/input/Input.vue +149 -146
  86. package/src/components/link/Link.vue +73 -52
  87. package/src/components/menu/Menu.vue +118 -0
  88. package/src/components/menu/MenuItem.vue +277 -0
  89. package/src/components/modal/Modal.vue +157 -93
  90. package/src/components/notifications/Notifications.vue +318 -0
  91. package/src/components/pagination/Pagination.vue +157 -50
  92. package/src/components/pagination/PaginationItem.vue +49 -26
  93. package/src/components/popover/Popover.vue +167 -146
  94. package/src/components/popover/PopoverContainer.vue +13 -18
  95. package/src/components/progress/Progress.vue +68 -102
  96. package/src/components/radio/Radio.vue +161 -92
  97. package/src/components/scroll/Scroll.vue +143 -0
  98. package/src/components/select/Select.vue +362 -109
  99. package/src/components/skeleton/Skeleton.vue +13 -11
  100. package/src/components/slider/Slider.vue +240 -0
  101. package/src/components/spacer/Spacer.vue +8 -0
  102. package/src/components/spinner/Spinner.vue +28 -28
  103. package/src/components/tab/Tab.vue +100 -0
  104. package/src/components/tab/TabGroup.vue +151 -0
  105. package/src/components/table/Table.vue +101 -86
  106. package/src/components/table/TableBody.vue +8 -6
  107. package/src/components/table/TableCell.vue +43 -55
  108. package/src/components/table/TableHead.vue +9 -7
  109. package/src/components/table/TableHeader.vue +39 -54
  110. package/src/components/table/TableRow.vue +26 -34
  111. package/src/components/tag/Tag.vue +67 -62
  112. package/src/components/textarea/Textarea.vue +116 -135
  113. package/src/components/toggle/Toggle.vue +117 -101
  114. package/src/components/tooltip/Tooltip.vue +18 -14
  115. package/src/composables/colors-utils.ts +378 -0
  116. package/src/composables/colors.ts +82 -0
  117. package/src/composables/common.ts +20 -0
  118. package/src/composables/css.ts +45 -0
  119. package/src/composables/index.ts +7 -0
  120. package/src/composables/{inputtable.js → inputtable.ts} +45 -74
  121. package/src/composables/interactive.ts +16 -0
  122. package/src/composables/keys.ts +8 -0
  123. package/src/composables/notification.ts +10 -0
  124. package/src/create.ts +36 -0
  125. package/src/exports/nuxt.js +32 -0
  126. package/src/exports/nuxt.plugin.js +8 -0
  127. package/src/exports/tailwind.preset.js +55 -0
  128. package/src/index.ts +8 -0
  129. package/src/install.ts +8 -0
  130. package/src/shims-vue.d.ts +6 -0
  131. package/src/version.ts +1 -0
  132. package/volar.d.ts +52 -0
  133. package/lib/cjs/components/avatar/Avatar.vue.js +0 -9
  134. package/lib/cjs/components/avatar/Avatar.vue_vue_type_script_lang.js +0 -86
  135. package/lib/cjs/components/avatar/Avatar.vue_vue_type_template_id_2549fb8f_lang.js +0 -50
  136. package/lib/cjs/components/button/Button.vue.js +0 -9
  137. package/lib/cjs/components/button/Button.vue_vue_type_script_lang.js +0 -82
  138. package/lib/cjs/components/button/Button.vue_vue_type_template_id_5975756f_lang.js +0 -100
  139. package/lib/cjs/components/card/Card.vue.js +0 -9
  140. package/lib/cjs/components/card/Card.vue_vue_type_script_lang.js +0 -18
  141. package/lib/cjs/components/card/Card.vue_vue_type_template_id_7be81122_lang.js +0 -22
  142. package/lib/cjs/components/checkbox/Checkbox.vue.js +0 -9
  143. package/lib/cjs/components/checkbox/Checkbox.vue_vue_type_script_lang.js +0 -58
  144. package/lib/cjs/components/checkbox/Checkbox.vue_vue_type_template_id_fa43bd62_lang.js +0 -102
  145. package/lib/cjs/components/collapse/Collapse.vue.js +0 -9
  146. package/lib/cjs/components/collapse/Collapse.vue_vue_type_script_lang.js +0 -69
  147. package/lib/cjs/components/collapse/Collapse.vue_vue_type_template_id_06a1c88f_lang.js +0 -64
  148. package/lib/cjs/components/colors.vue.js +0 -12
  149. package/lib/cjs/components/colors.vue_vue_type_template_id_79d16100_lang.js +0 -406
  150. package/lib/cjs/components/container/Container.vue.js +0 -9
  151. package/lib/cjs/components/container/Container.vue_vue_type_script_lang.js +0 -14
  152. package/lib/cjs/components/container/Container.vue_vue_type_template_id_05f5acf3_lang.js +0 -16
  153. package/lib/cjs/components/divider/Divider.vue.js +0 -9
  154. package/lib/cjs/components/divider/Divider.vue_vue_type_script_lang.js +0 -18
  155. package/lib/cjs/components/divider/Divider.vue_vue_type_template_id_3a349aa3_lang.js +0 -49
  156. package/lib/cjs/components/form/Form.vue.js +0 -9
  157. package/lib/cjs/components/form/Form.vue_vue_type_script_lang.js +0 -95
  158. package/lib/cjs/components/form/Form.vue_vue_type_template_id_a6cab022_lang.js +0 -20
  159. package/lib/cjs/components/icon/Icon.vue.js +0 -9
  160. package/lib/cjs/components/icon/Icon.vue_vue_type_script_lang.js +0 -26
  161. package/lib/cjs/components/icon/Icon.vue_vue_type_template_id_0933a10f_lang.js +0 -32
  162. package/lib/cjs/components/image/Image.vue.js +0 -9
  163. package/lib/cjs/components/image/Image.vue_vue_type_script_lang.js +0 -28
  164. package/lib/cjs/components/image/Image.vue_vue_type_template_id_f1ec3bb2_lang.js +0 -13
  165. package/lib/cjs/components/index.js +0 -87
  166. package/lib/cjs/components/input/Input.vue.js +0 -9
  167. package/lib/cjs/components/input/Input.vue_vue_type_script_lang.js +0 -101
  168. package/lib/cjs/components/input/Input.vue_vue_type_template_id_21c870c5_lang.js +0 -126
  169. package/lib/cjs/components/link/Link.vue.js +0 -9
  170. package/lib/cjs/components/link/Link.vue_vue_type_script_lang.js +0 -47
  171. package/lib/cjs/components/link/Link.vue_vue_type_template_id_044f59af_lang.js +0 -59
  172. package/lib/cjs/components/modal/Modal.vue.js +0 -9
  173. package/lib/cjs/components/modal/Modal.vue_vue_type_script_lang.js +0 -55
  174. package/lib/cjs/components/modal/Modal.vue_vue_type_template_id_177f8d4b_lang.js +0 -81
  175. package/lib/cjs/components/note/Note.vue.js +0 -9
  176. package/lib/cjs/components/note/Note.vue_vue_type_script_lang.js +0 -24
  177. package/lib/cjs/components/note/Note.vue_vue_type_template_id_2b99d6a2_lang.js +0 -100
  178. package/lib/cjs/components/pagination/Pagination.vue.js +0 -9
  179. package/lib/cjs/components/pagination/Pagination.vue_vue_type_script_lang.js +0 -43
  180. package/lib/cjs/components/pagination/Pagination.vue_vue_type_template_id_084845ef_lang.js +0 -54
  181. package/lib/cjs/components/pagination/PaginationItem.vue.js +0 -9
  182. package/lib/cjs/components/pagination/PaginationItem.vue_vue_type_script_lang.js +0 -24
  183. package/lib/cjs/components/pagination/PaginationItem.vue_vue_type_template_id_241a3fbc_lang.js +0 -27
  184. package/lib/cjs/components/popover/Popover.vue.js +0 -10
  185. package/lib/cjs/components/popover/Popover.vue_vue_type_script_lang.js +0 -72
  186. package/lib/cjs/components/popover/Popover.vue_vue_type_style_index_0_id_da70cc8a_lang.css.js +0 -8
  187. package/lib/cjs/components/popover/Popover.vue_vue_type_template_id_da70cc8a_lang.js +0 -63
  188. package/lib/cjs/components/popover/PopoverContainer.vue.js +0 -9
  189. package/lib/cjs/components/popover/PopoverContainer.vue_vue_type_script_lang.js +0 -21
  190. package/lib/cjs/components/popover/PopoverContainer.vue_vue_type_template_id_798f1294_lang.js +0 -16
  191. package/lib/cjs/components/popover/PopoverItem.vue.js +0 -9
  192. package/lib/cjs/components/popover/PopoverItem.vue_vue_type_script_lang.js +0 -34
  193. package/lib/cjs/components/popover/PopoverItem.vue_vue_type_template_id_84692424_lang.js +0 -50
  194. package/lib/cjs/components/progress/Progress.vue.js +0 -9
  195. package/lib/cjs/components/progress/Progress.vue_vue_type_script_lang.js +0 -62
  196. package/lib/cjs/components/progress/Progress.vue_vue_type_template_id_9ab7cee2_lang.js +0 -77
  197. package/lib/cjs/components/radio/Radio.vue.js +0 -9
  198. package/lib/cjs/components/radio/Radio.vue_vue_type_script_lang.js +0 -61
  199. package/lib/cjs/components/radio/Radio.vue_vue_type_template_id_808cc132_lang.js +0 -120
  200. package/lib/cjs/components/select/Select.vue.js +0 -9
  201. package/lib/cjs/components/select/Select.vue_vue_type_script_lang.js +0 -62
  202. package/lib/cjs/components/select/Select.vue_vue_type_template_id_18b7de2f_lang.js +0 -122
  203. package/lib/cjs/components/skeleton/Skeleton.vue.js +0 -9
  204. package/lib/cjs/components/skeleton/Skeleton.vue_vue_type_script_lang.js +0 -14
  205. package/lib/cjs/components/skeleton/Skeleton.vue_vue_type_template_id_6ac606e2_lang.js +0 -18
  206. package/lib/cjs/components/spacer/Spacer.vue.js +0 -12
  207. package/lib/cjs/components/spacer/Spacer.vue_vue_type_template_id_793ae82f_lang.js +0 -13
  208. package/lib/cjs/components/spinner/Spinner.vue.js +0 -9
  209. package/lib/cjs/components/spinner/Spinner.vue_vue_type_script_lang.js +0 -14
  210. package/lib/cjs/components/spinner/Spinner.vue_vue_type_template_id_714bd8a3_lang.js +0 -29
  211. package/lib/cjs/components/status/StatusDot.vue.js +0 -9
  212. package/lib/cjs/components/status/StatusDot.vue_vue_type_script_lang.js +0 -24
  213. package/lib/cjs/components/status/StatusDot.vue_vue_type_template_id_367d150a_lang.js +0 -25
  214. package/lib/cjs/components/table/Table.vue.js +0 -9
  215. package/lib/cjs/components/table/Table.vue_vue_type_script_lang.js +0 -117
  216. package/lib/cjs/components/table/Table.vue_vue_type_template_id_c0433c66_lang.js +0 -88
  217. package/lib/cjs/components/table/TableBody.vue.js +0 -9
  218. package/lib/cjs/components/table/TableBody.vue_vue_type_script_lang.js +0 -7
  219. package/lib/cjs/components/table/TableBody.vue_vue_type_template_id_7288bc0f_lang.js +0 -13
  220. package/lib/cjs/components/table/TableCell.vue.js +0 -9
  221. package/lib/cjs/components/table/TableCell.vue_vue_type_script_lang.js +0 -63
  222. package/lib/cjs/components/table/TableCell.vue_vue_type_template_id_5349a862_lang.js +0 -35
  223. package/lib/cjs/components/table/TableHead.vue.js +0 -9
  224. package/lib/cjs/components/table/TableHead.vue_vue_type_script_lang.js +0 -7
  225. package/lib/cjs/components/table/TableHead.vue_vue_type_template_id_6ae9fd66_lang.js +0 -18
  226. package/lib/cjs/components/table/TableHeader.vue.js +0 -9
  227. package/lib/cjs/components/table/TableHeader.vue_vue_type_script_lang.js +0 -48
  228. package/lib/cjs/components/table/TableHeader.vue_vue_type_template_id_9d5bd38c_lang.js +0 -78
  229. package/lib/cjs/components/table/TableRow.vue.js +0 -9
  230. package/lib/cjs/components/table/TableRow.vue_vue_type_script_lang.js +0 -33
  231. package/lib/cjs/components/table/TableRow.vue_vue_type_template_id_7c4a8ffd_lang.js +0 -26
  232. package/lib/cjs/components/tabs/Tab.vue.js +0 -9
  233. package/lib/cjs/components/tabs/Tab.vue_vue_type_script_lang.js +0 -62
  234. package/lib/cjs/components/tabs/Tab.vue_vue_type_template_id_3cfc6374_lang.js +0 -29
  235. package/lib/cjs/components/tabs/Tabs.vue.js +0 -9
  236. package/lib/cjs/components/tabs/Tabs.vue_vue_type_script_lang.js +0 -37
  237. package/lib/cjs/components/tabs/Tabs.vue_vue_type_template_id_663bac2f_lang.js +0 -16
  238. package/lib/cjs/components/tag/Tag.vue.js +0 -9
  239. package/lib/cjs/components/tag/Tag.vue_vue_type_script_lang.js +0 -39
  240. package/lib/cjs/components/tag/Tag.vue_vue_type_template_id_0aa571b6_lang.js +0 -77
  241. package/lib/cjs/components/textarea/Textarea.vue.js +0 -9
  242. package/lib/cjs/components/textarea/Textarea.vue_vue_type_script_lang.js +0 -122
  243. package/lib/cjs/components/textarea/Textarea.vue_vue_type_template_id_03d2272f_lang.js +0 -70
  244. package/lib/cjs/components/toast/Toast.vue.js +0 -9
  245. package/lib/cjs/components/toast/Toast.vue_vue_type_script_lang.js +0 -87
  246. package/lib/cjs/components/toast/Toast.vue_vue_type_template_id_fe243282_lang.js +0 -64
  247. package/lib/cjs/components/toggle/Toggle.vue.js +0 -9
  248. package/lib/cjs/components/toggle/Toggle.vue_vue_type_script_lang.js +0 -58
  249. package/lib/cjs/components/toggle/Toggle.vue_vue_type_template_id_5a9e0b2f_lang.js +0 -96
  250. package/lib/cjs/components/tooltip/Tooltip.vue.js +0 -9
  251. package/lib/cjs/components/tooltip/Tooltip.vue_vue_type_script_lang.js +0 -15
  252. package/lib/cjs/components/tooltip/Tooltip.vue_vue_type_template_id_213cff12_lang.js +0 -30
  253. package/lib/cjs/composables/common.js +0 -28
  254. package/lib/cjs/composables/inputtable.js +0 -162
  255. package/lib/cjs/composables/interactive.js +0 -41
  256. package/lib/cjs/index.js +0 -129
  257. package/lib/cjs/node_modules/style-inject/dist/style-inject.es.js +0 -30
  258. package/lib/esm/components/avatar/Avatar.vue.js +0 -6
  259. package/lib/esm/components/avatar/Avatar.vue_vue_type_script_lang.js +0 -84
  260. package/lib/esm/components/avatar/Avatar.vue_vue_type_template_id_2549fb8f_lang.js +0 -46
  261. package/lib/esm/components/button/Button.vue.js +0 -6
  262. package/lib/esm/components/button/Button.vue_vue_type_script_lang.js +0 -80
  263. package/lib/esm/components/button/Button.vue_vue_type_template_id_5975756f_lang.js +0 -96
  264. package/lib/esm/components/card/Card.vue.js +0 -6
  265. package/lib/esm/components/card/Card.vue_vue_type_script_lang.js +0 -16
  266. package/lib/esm/components/card/Card.vue_vue_type_template_id_7be81122_lang.js +0 -18
  267. package/lib/esm/components/checkbox/Checkbox.vue.js +0 -6
  268. package/lib/esm/components/checkbox/Checkbox.vue_vue_type_script_lang.js +0 -56
  269. package/lib/esm/components/checkbox/Checkbox.vue_vue_type_template_id_fa43bd62_lang.js +0 -98
  270. package/lib/esm/components/collapse/Collapse.vue.js +0 -6
  271. package/lib/esm/components/collapse/Collapse.vue_vue_type_script_lang.js +0 -67
  272. package/lib/esm/components/collapse/Collapse.vue_vue_type_template_id_06a1c88f_lang.js +0 -60
  273. package/lib/esm/components/colors.vue.js +0 -10
  274. package/lib/esm/components/colors.vue_vue_type_template_id_79d16100_lang.js +0 -402
  275. package/lib/esm/components/container/Container.vue.js +0 -6
  276. package/lib/esm/components/container/Container.vue_vue_type_script_lang.js +0 -12
  277. package/lib/esm/components/container/Container.vue_vue_type_template_id_05f5acf3_lang.js +0 -12
  278. package/lib/esm/components/divider/Divider.vue.js +0 -6
  279. package/lib/esm/components/divider/Divider.vue_vue_type_script_lang.js +0 -16
  280. package/lib/esm/components/divider/Divider.vue_vue_type_template_id_3a349aa3_lang.js +0 -45
  281. package/lib/esm/components/form/Form.vue.js +0 -6
  282. package/lib/esm/components/form/Form.vue_vue_type_script_lang.js +0 -93
  283. package/lib/esm/components/form/Form.vue_vue_type_template_id_a6cab022_lang.js +0 -16
  284. package/lib/esm/components/icon/Icon.vue.js +0 -6
  285. package/lib/esm/components/icon/Icon.vue_vue_type_script_lang.js +0 -24
  286. package/lib/esm/components/icon/Icon.vue_vue_type_template_id_0933a10f_lang.js +0 -28
  287. package/lib/esm/components/image/Image.vue.js +0 -6
  288. package/lib/esm/components/image/Image.vue_vue_type_script_lang.js +0 -26
  289. package/lib/esm/components/image/Image.vue_vue_type_template_id_f1ec3bb2_lang.js +0 -9
  290. package/lib/esm/components/index.js +0 -40
  291. package/lib/esm/components/input/Input.vue.js +0 -6
  292. package/lib/esm/components/input/Input.vue_vue_type_script_lang.js +0 -99
  293. package/lib/esm/components/input/Input.vue_vue_type_template_id_21c870c5_lang.js +0 -122
  294. package/lib/esm/components/link/Link.vue.js +0 -6
  295. package/lib/esm/components/link/Link.vue_vue_type_script_lang.js +0 -45
  296. package/lib/esm/components/link/Link.vue_vue_type_template_id_044f59af_lang.js +0 -55
  297. package/lib/esm/components/modal/Modal.vue.js +0 -6
  298. package/lib/esm/components/modal/Modal.vue_vue_type_script_lang.js +0 -53
  299. package/lib/esm/components/modal/Modal.vue_vue_type_template_id_177f8d4b_lang.js +0 -77
  300. package/lib/esm/components/note/Note.vue.js +0 -6
  301. package/lib/esm/components/note/Note.vue_vue_type_script_lang.js +0 -22
  302. package/lib/esm/components/note/Note.vue_vue_type_template_id_2b99d6a2_lang.js +0 -96
  303. package/lib/esm/components/pagination/Pagination.vue.js +0 -6
  304. package/lib/esm/components/pagination/Pagination.vue_vue_type_script_lang.js +0 -41
  305. package/lib/esm/components/pagination/Pagination.vue_vue_type_template_id_084845ef_lang.js +0 -50
  306. package/lib/esm/components/pagination/PaginationItem.vue.js +0 -6
  307. package/lib/esm/components/pagination/PaginationItem.vue_vue_type_script_lang.js +0 -22
  308. package/lib/esm/components/pagination/PaginationItem.vue_vue_type_template_id_241a3fbc_lang.js +0 -23
  309. package/lib/esm/components/popover/Popover.vue.js +0 -7
  310. package/lib/esm/components/popover/Popover.vue_vue_type_script_lang.js +0 -70
  311. package/lib/esm/components/popover/Popover.vue_vue_type_style_index_0_id_da70cc8a_lang.css.js +0 -6
  312. package/lib/esm/components/popover/Popover.vue_vue_type_template_id_da70cc8a_lang.js +0 -59
  313. package/lib/esm/components/popover/PopoverContainer.vue.js +0 -6
  314. package/lib/esm/components/popover/PopoverContainer.vue_vue_type_script_lang.js +0 -19
  315. package/lib/esm/components/popover/PopoverContainer.vue_vue_type_template_id_798f1294_lang.js +0 -12
  316. package/lib/esm/components/popover/PopoverItem.vue.js +0 -6
  317. package/lib/esm/components/popover/PopoverItem.vue_vue_type_script_lang.js +0 -32
  318. package/lib/esm/components/popover/PopoverItem.vue_vue_type_template_id_84692424_lang.js +0 -46
  319. package/lib/esm/components/progress/Progress.vue.js +0 -6
  320. package/lib/esm/components/progress/Progress.vue_vue_type_script_lang.js +0 -60
  321. package/lib/esm/components/progress/Progress.vue_vue_type_template_id_9ab7cee2_lang.js +0 -73
  322. package/lib/esm/components/radio/Radio.vue.js +0 -6
  323. package/lib/esm/components/radio/Radio.vue_vue_type_script_lang.js +0 -59
  324. package/lib/esm/components/radio/Radio.vue_vue_type_template_id_808cc132_lang.js +0 -116
  325. package/lib/esm/components/select/Select.vue.js +0 -6
  326. package/lib/esm/components/select/Select.vue_vue_type_script_lang.js +0 -60
  327. package/lib/esm/components/select/Select.vue_vue_type_template_id_18b7de2f_lang.js +0 -118
  328. package/lib/esm/components/skeleton/Skeleton.vue.js +0 -6
  329. package/lib/esm/components/skeleton/Skeleton.vue_vue_type_script_lang.js +0 -12
  330. package/lib/esm/components/skeleton/Skeleton.vue_vue_type_template_id_6ac606e2_lang.js +0 -14
  331. package/lib/esm/components/spacer/Spacer.vue.js +0 -10
  332. package/lib/esm/components/spacer/Spacer.vue_vue_type_template_id_793ae82f_lang.js +0 -9
  333. package/lib/esm/components/spinner/Spinner.vue.js +0 -6
  334. package/lib/esm/components/spinner/Spinner.vue_vue_type_script_lang.js +0 -12
  335. package/lib/esm/components/spinner/Spinner.vue_vue_type_template_id_714bd8a3_lang.js +0 -25
  336. package/lib/esm/components/status/StatusDot.vue.js +0 -6
  337. package/lib/esm/components/status/StatusDot.vue_vue_type_script_lang.js +0 -22
  338. package/lib/esm/components/status/StatusDot.vue_vue_type_template_id_367d150a_lang.js +0 -21
  339. package/lib/esm/components/table/Table.vue.js +0 -6
  340. package/lib/esm/components/table/Table.vue_vue_type_script_lang.js +0 -115
  341. package/lib/esm/components/table/Table.vue_vue_type_template_id_c0433c66_lang.js +0 -84
  342. package/lib/esm/components/table/TableBody.vue.js +0 -6
  343. package/lib/esm/components/table/TableBody.vue_vue_type_script_lang.js +0 -5
  344. package/lib/esm/components/table/TableBody.vue_vue_type_template_id_7288bc0f_lang.js +0 -9
  345. package/lib/esm/components/table/TableCell.vue.js +0 -6
  346. package/lib/esm/components/table/TableCell.vue_vue_type_script_lang.js +0 -61
  347. package/lib/esm/components/table/TableCell.vue_vue_type_template_id_5349a862_lang.js +0 -31
  348. package/lib/esm/components/table/TableHead.vue.js +0 -6
  349. package/lib/esm/components/table/TableHead.vue_vue_type_script_lang.js +0 -5
  350. package/lib/esm/components/table/TableHead.vue_vue_type_template_id_6ae9fd66_lang.js +0 -14
  351. package/lib/esm/components/table/TableHeader.vue.js +0 -6
  352. package/lib/esm/components/table/TableHeader.vue_vue_type_script_lang.js +0 -46
  353. package/lib/esm/components/table/TableHeader.vue_vue_type_template_id_9d5bd38c_lang.js +0 -74
  354. package/lib/esm/components/table/TableRow.vue.js +0 -6
  355. package/lib/esm/components/table/TableRow.vue_vue_type_script_lang.js +0 -31
  356. package/lib/esm/components/table/TableRow.vue_vue_type_template_id_7c4a8ffd_lang.js +0 -22
  357. package/lib/esm/components/tabs/Tab.vue.js +0 -6
  358. package/lib/esm/components/tabs/Tab.vue_vue_type_script_lang.js +0 -60
  359. package/lib/esm/components/tabs/Tab.vue_vue_type_template_id_3cfc6374_lang.js +0 -25
  360. package/lib/esm/components/tabs/Tabs.vue.js +0 -6
  361. package/lib/esm/components/tabs/Tabs.vue_vue_type_script_lang.js +0 -35
  362. package/lib/esm/components/tabs/Tabs.vue_vue_type_template_id_663bac2f_lang.js +0 -12
  363. package/lib/esm/components/tag/Tag.vue.js +0 -6
  364. package/lib/esm/components/tag/Tag.vue_vue_type_script_lang.js +0 -37
  365. package/lib/esm/components/tag/Tag.vue_vue_type_template_id_0aa571b6_lang.js +0 -73
  366. package/lib/esm/components/textarea/Textarea.vue.js +0 -6
  367. package/lib/esm/components/textarea/Textarea.vue_vue_type_script_lang.js +0 -120
  368. package/lib/esm/components/textarea/Textarea.vue_vue_type_template_id_03d2272f_lang.js +0 -66
  369. package/lib/esm/components/toast/Toast.vue.js +0 -6
  370. package/lib/esm/components/toast/Toast.vue_vue_type_script_lang.js +0 -85
  371. package/lib/esm/components/toast/Toast.vue_vue_type_template_id_fe243282_lang.js +0 -60
  372. package/lib/esm/components/toggle/Toggle.vue.js +0 -6
  373. package/lib/esm/components/toggle/Toggle.vue_vue_type_script_lang.js +0 -56
  374. package/lib/esm/components/toggle/Toggle.vue_vue_type_template_id_5a9e0b2f_lang.js +0 -92
  375. package/lib/esm/components/tooltip/Tooltip.vue.js +0 -6
  376. package/lib/esm/components/tooltip/Tooltip.vue_vue_type_script_lang.js +0 -13
  377. package/lib/esm/components/tooltip/Tooltip.vue_vue_type_template_id_213cff12_lang.js +0 -26
  378. package/lib/esm/composables/common.js +0 -23
  379. package/lib/esm/composables/inputtable.js +0 -155
  380. package/lib/esm/composables/interactive.js +0 -35
  381. package/lib/esm/index.js +0 -85
  382. package/lib/esm/node_modules/style-inject/dist/style-inject.es.js +0 -28
  383. package/lib/umd/index.js +0 -4361
  384. package/src/components/colors.vue +0 -396
  385. package/src/components/index.js +0 -40
  386. package/src/components/note/Note.vue +0 -74
  387. package/src/components/popover/PopoverItem.vue +0 -65
  388. package/src/components/status/StatusDot.vue +0 -41
  389. package/src/components/tabs/Tab.vue +0 -81
  390. package/src/components/tabs/Tabs.vue +0 -44
  391. package/src/components/toast/Toast.vue +0 -139
  392. package/src/composables/common.js +0 -21
  393. package/src/composables/interactive.js +0 -36
  394. package/src/index.js +0 -16
  395. package/src/nuxt.js +0 -19
  396. package/src/tailwind.preset.js +0 -24
@@ -1,54 +1,179 @@
1
+ <script lang="ts">
2
+ import { defineComponent, ref, watch, computed, type StyleValue } from 'vue'
3
+ import { useCSS } from '../../composables/css'
4
+ import { useCommon } from '../../composables/common'
5
+ import { useColors } from '../../composables/colors'
6
+ import { useInteractive } from '../../composables/interactive'
7
+ import { useInputtable } from '../../composables/inputtable'
8
+
9
+ import XSpinner from '../../components/spinner/Spinner.vue'
10
+
11
+ export default defineComponent({
12
+ name: 'XCheckbox',
13
+
14
+ components: {
15
+ XSpinner,
16
+ },
17
+
18
+ validators: {
19
+ ...useCommon.validators(),
20
+ },
21
+
22
+ props: {
23
+ ...useCommon.props(),
24
+ ...useColors.props('primary'),
25
+ ...useInteractive.props(),
26
+ ...useInputtable.props(),
27
+ label: String,
28
+ glow: Boolean,
29
+ },
30
+
31
+ emits: useInputtable.emits(false),
32
+
33
+ expose: ['toggle'],
34
+
35
+ setup(props, { attrs, emit }) {
36
+ const elRef = ref<HTMLElement>()
37
+ const checked = ref(false)
38
+
39
+ watch(() => props.modelValue, (value) => {
40
+ checked.value = !!value
41
+ })
42
+
43
+ watch(() => checked.value, (value) => {
44
+ emit('update:modelValue', value)
45
+ })
46
+
47
+ const sizeClasses = computed(() => {
48
+ if (props.size === 'xs' || props.size === 'sm') return 'h-4 w-4'
49
+ else if (props.size === 'xl') return 'h-6 w-6'
50
+
51
+ return 'h-5 w-5'
52
+ })
53
+
54
+ const iconSizeClasses = computed(() => {
55
+ if (props.size === 'xs' || props.size === 'sm') return 'h-2 w-2'
56
+ else if (props.size === 'xl') return 'h-4 w-4'
57
+
58
+ return 'h-3 w-3'
59
+ })
60
+
61
+ const css = useCSS()
62
+ const colors = useColors()
63
+ const gray = colors.getPalette('gray')
64
+
65
+ const cssVariables = computed(() => {
66
+ const color = colors.getPalette(props.color)
67
+ const vars: (object | string)[] = []
68
+
69
+ if (props.loading) {
70
+ return css.variables({
71
+ bg: 'transparent',
72
+ border: 'transparent',
73
+ dark: {
74
+ bg: 'transparent',
75
+ border: 'transparent',
76
+ },
77
+ })
78
+ }
79
+
80
+ if (props.disabled) {
81
+ vars.push(css.variables({
82
+ bg: gray[100],
83
+ border: gray[200],
84
+ dark: {
85
+ bg: gray[800],
86
+ border: gray[700],
87
+ },
88
+ }))
89
+ } else {
90
+ if (checked.value) {
91
+ vars.push(css.variables({
92
+ bg: color[500],
93
+ border: color[500],
94
+ dark: {
95
+ bg: color[500],
96
+ border: color[500],
97
+ },
98
+ }))
99
+ } else {
100
+ vars.push(css.variables({
101
+ bg: '#fff',
102
+ border: props.glow ? color[300] : gray[300],
103
+ dark: {
104
+ bg: gray[900],
105
+ border: props.glow ? color[300] : gray[400],
106
+ },
107
+ }))
108
+ }
109
+
110
+ if (props.glow) {
111
+ vars.push(css.get('glow', colors.getColorOpacity(color[500], 0.5)))
112
+ }
113
+ }
114
+
115
+ return vars as StyleValue
116
+ })
117
+
118
+ function toggle() {
119
+ checked.value = !checked.value
120
+ }
121
+
122
+ const interactive = useInteractive(elRef)
123
+
124
+ return {
125
+ ...interactive,
126
+ ...useInputtable(props, { focus: interactive.focus, emit, withListeners: false }),
127
+ elRef,
128
+ checked,
129
+ sizeClasses,
130
+ iconSizeClasses,
131
+ cssVariables,
132
+ toggle,
133
+ }
134
+ },
135
+ })
136
+ </script>
137
+
1
138
  <template>
2
- <label class="inline-block mb-1 relative cursor-pointer pb-2">
139
+ <label class="inline-block relative cursor-pointer align-middle mb-1 pb-2">
3
140
  <div
4
- ref="focusRef"
141
+ ref="elRef"
5
142
  class="flex items-center"
6
143
  :class="{ 'cursor-not-allowed': disabled }"
7
- :tabindex="0"
8
- @keypress.prevent.stop.enter.space="toggle"
144
+ tabindex="0"
145
+ @keypress.prevent.stop.space="toggle"
9
146
  >
10
147
  <input
11
148
  v-model="checked"
12
149
  :aria-checked="checked ? 'true' : 'false'"
13
- :aria-disabled="disabled ? 'true' : null"
150
+ :aria-disabled="disabled ? 'true' : undefined"
14
151
  type="checkbox"
15
152
  class="invisible absolute"
16
153
  :disabled="disabled || loading"
17
154
  :name="name"
18
155
  :required="required"
19
- :value="modelValue"
20
156
  />
21
157
  <div
22
- class="rounded flex justify-center items-center flex-shrink-0"
158
+ class="rounded flex justify-center items-center flex-shrink-0 border-2
159
+ border-[color:var(--x-border)]
160
+ bg-[color:var(--x-bg)]
161
+ dark:border-[color:var(--x-dark-border)]
162
+ dark:bg-[color:var(--x-dark-bg)]
163
+ "
164
+ :style="cssVariables"
23
165
  :class="[
24
- {
25
- 'shadow': !flat && !loading,
26
- [`shadow-lg shadow-${color}-500/50`]: !flat && glow && modelValue,
27
-
28
- 'h-4 w-4': size === 'sm' || size === 'xs',
29
- 'h-5 w-5': !['xs', 'sm', 'xl'].includes(size),
30
- 'h-6 w-6': size === 'xl',
31
- },
32
- disabled ? {
33
- 'bg-gray-500 border-gray-600 dark:border-gray-400': modelValue,
34
- 'bg-gray-200 border-gray-300 dark:border-gray-700': !modelValue,
35
- } :
36
- {
37
- [`bg-${color}-500 border-${color}-500`]: modelValue && !loading,
38
- 'border bg-white dark:bg-gray-900 border-gray-300 hover:border-gray-900 dark:border-gray-700': !modelValue && !loading,
39
- }
166
+ [(glow && !disabled && !loading) ? $style['checkbox--glow'] : ''],
167
+ sizeClasses,
40
168
  ]"
41
169
  >
42
170
  <x-spinner v-if="loading" :size="size" class="absolute" />
43
171
  <svg
44
172
  v-else
45
- class="fill-current text-gray-100"
46
- :class="{
47
- 'opacity-0': !modelValue,
48
- 'h-2 w-2': size === 'sm' || size === 'xs',
49
- 'h-3 w-3': !['xs', 'sm', 'xl'].includes(size),
50
- 'h-4 w-4': size === 'xl',
51
- }"
173
+ class="fill-current text-gray-100 dark:text-gray-900"
174
+ :class="[iconSizeClasses, {
175
+ 'opacity-0': !checked,
176
+ }]"
52
177
  viewBox="0 0 20 20"
53
178
  >
54
179
  <path d="M0 11l2-2 5 5L18 3l2 2L7 18z" />
@@ -67,62 +192,14 @@
67
192
  <slot v-else></slot>
68
193
  </div>
69
194
  </div>
70
- <p v-if="errorInternal" class="text-sm text-error-500 mt-1" v-text="errorInternal"></p>
195
+ <p v-if="errorInternal" class="text-sm text-red-500 mt-1" v-text="errorInternal"></p>
71
196
  </label>
72
197
  </template>
73
198
 
74
- <script>
75
- import { withProps, withValidator, withEmits, useInputtable } from '../../composables/inputtable'
76
- import XSpinner from '../spinner/Spinner.vue'
77
-
78
- export default {
79
- name: 'XCheckbox',
80
- components: {
81
- XSpinner,
82
- },
83
-
84
- validator: {
85
- ...withValidator(),
86
- },
87
-
88
- props: {
89
- ...withProps(),
90
-
91
- label: {
92
- type: String,
93
- default: null,
94
- },
95
-
96
- glow: {
97
- type: Boolean,
98
- default: false,
99
- },
100
- },
101
-
102
- emits: withEmits(false),
103
-
104
- setup(props, { attrs, emit }) {
105
- return {
106
- ...useInputtable(props, { attrs, emit, useListeners: false }),
199
+ <style lang="postcss" module scoped>
200
+ .checkbox {
201
+ &--glow {
202
+ box-shadow: 0 0 #000, 0 0 #000, 0 10px 15px -3px var(--x-glow),0 4px 6px -4px var(--x-glow);
107
203
  }
108
- },
109
-
110
- computed: {
111
- checked: {
112
- get() {
113
- return this.modelValue
114
- },
115
-
116
- set(val) {
117
- this.$emit('update:modelValue', val)
118
- },
119
- },
120
- },
121
-
122
- methods: {
123
- toggle() {
124
- this.$emit('update:modelValue', !this.modelValue)
125
- },
126
- },
127
- }
128
- </script>
204
+ }
205
+ </style>
@@ -1,3 +1,123 @@
1
+ <script lang="ts">
2
+ import { defineComponent, ref, watch } from 'vue'
3
+
4
+ import XIcon from '../../components/icon/Icon.vue'
5
+
6
+ export default defineComponent({
7
+ name: 'XCollapse',
8
+
9
+ components: {
10
+ XIcon,
11
+ },
12
+
13
+ props: {
14
+ tag: {
15
+ type: String,
16
+ default: 'div',
17
+ },
18
+ disabled: Boolean,
19
+ expanded: Boolean,
20
+ showIcon: {
21
+ type: Boolean,
22
+ default: true,
23
+ },
24
+ icon: String,
25
+ color: String,
26
+ },
27
+
28
+ emits: ['expand'],
29
+
30
+ expose: ['toggle', 'open', 'close'],
31
+
32
+ setup(props, { emit }) {
33
+ const collapsed = ref(!props.expanded)
34
+ const animated = ref(true)
35
+
36
+ watch(() => props.expanded, () => {
37
+ collapsed.value = !props.expanded
38
+ })
39
+
40
+ function onBeforeEnter(el: HTMLElement) {
41
+ if (animated.value) el.style.height = '0px'
42
+ }
43
+
44
+ function onEnter(el: HTMLElement, done: ()=> void) {
45
+ if (!animated.value) done()
46
+ else {
47
+ el.addEventListener('transitionend', done)
48
+ setTimeout(() => {
49
+ el.style.height = `${el.scrollHeight}px`
50
+ }, 1)
51
+ }
52
+ }
53
+
54
+ function onAfterEnter(el: HTMLElement) {
55
+ if (!animated.value) {
56
+ animated.value = true
57
+ } else {
58
+ el.style.removeProperty('height')
59
+ }
60
+ }
61
+
62
+ function onBeforeLeave(el: HTMLElement) {
63
+ if (!animated.value) return
64
+ el.style.height = `${el.scrollHeight}px`
65
+ }
66
+
67
+ function onLeave(el: HTMLElement ,done: ()=> void) {
68
+ if (!animated.value) done()
69
+ else {
70
+ el.addEventListener('transitionend', done)
71
+ setTimeout(() => {
72
+ el.style.height = '0px'
73
+ }, 1)
74
+ }
75
+ }
76
+
77
+ function onAfterLeave(el: HTMLElement) {
78
+ if (!animated.value) {
79
+ animated.value = true
80
+ } else {
81
+ el.style.removeProperty('height')
82
+ }
83
+ }
84
+
85
+ function open(anim = true) {
86
+ animated.value = anim
87
+ collapsed.value = false
88
+ }
89
+
90
+ function close(anim = true) {
91
+ animated.value = anim
92
+ collapsed.value = true
93
+ }
94
+
95
+ function toggle() {
96
+ if (!props.disabled) collapsed.value = !collapsed.value
97
+ }
98
+
99
+ function onExpand(anim = true) {
100
+ open(anim)
101
+ emit('expand')
102
+ }
103
+
104
+ return {
105
+ collapsed,
106
+ onBeforeEnter,
107
+ onEnter,
108
+ onAfterEnter,
109
+ onBeforeLeave,
110
+ onLeave,
111
+ onAfterLeave,
112
+ onExpand,
113
+ toggle,
114
+ close,
115
+ open,
116
+ }
117
+ },
118
+ })
119
+ </script>
120
+
1
121
  <template>
2
122
  <component
3
123
  :is="tag"
@@ -8,32 +128,36 @@
8
128
  class="flex items-center relative"
9
129
  :class="{
10
130
  'cursor-pointer' : !disabled,
11
- 'flex-row-reverse': iconLeft,
131
+ 'flex-row-reverse': icon,
12
132
  }"
13
- @click="toggleExpand()"
133
+ @click="toggle"
14
134
  >
15
- <div class="flex-1">
135
+ <div class="flex-1 overflow-hidden">
16
136
  <slot :collapsed="collapsed"></slot>
17
137
  </div>
18
138
 
19
- <div class="absolute top-1/2 transform -translate-y-1/2 right-2">
20
- <svg
21
- width="24"
22
- height="24"
23
- viewBox="0 0 24 24"
24
- stroke="currentColor"
25
- stroke-linejoin="round"
26
- stroke-linecap="round"
27
- fill="none"
28
- role="presentation"
29
- class="stroke-2 w-5 h-5 transform transition-transform duration-200"
139
+ <div v-if="showIcon" class="absolute top-1/2 transform -translate-y-1/2 right-3">
140
+ <span
141
+ class="flex transform transition-transform duration-150"
30
142
  :class="[
31
- iconLeft ? 'mr-2' : 'ml-2',
32
- { 'rotate-180': !collapsed }
143
+ {
144
+ 'rotate-180': !collapsed,
145
+ 'text-gray-300': disabled
146
+ }
33
147
  ]"
34
148
  >
35
- <polyline points="6 9 12 15 18 9" />
36
- </svg>
149
+ <x-icon v-if="icon" :icon="icon" />
150
+ <svg
151
+ v-else
152
+ viewBox="0 0 24 24"
153
+ stroke="currentColor"
154
+ fill="none"
155
+ role="presentation"
156
+ class="stroke-2 w-5 h-5"
157
+ >
158
+ <path d="M19 9l-7 7-7-7" />
159
+ </svg>
160
+ </span>
37
161
  </div>
38
162
  </div>
39
163
 
@@ -41,81 +165,17 @@
41
165
  <slot name="summary"></slot>
42
166
  </template>
43
167
 
44
- <div
45
- class="overflow-y-hidden transition-all duration-300 ease-in-out"
46
- :style="{ maxHeight: maxHeight + 'px' }"
168
+ <Transition
169
+ @before-enter="onBeforeEnter"
170
+ @enter="onEnter"
171
+ @after-enter="onAfterEnter"
172
+ @before-leave="onBeforeLeave"
173
+ @leave="onLeave"
174
+ @after-leave="onAfterLeave"
47
175
  >
48
- <div ref="content">
49
- <slot name="content"></slot>
176
+ <div v-show="!collapsed" class="transition-[height] duration-150 overflow-y-hidden">
177
+ <slot name="content" :expand="onExpand" :collapsed="collapsed"></slot>
50
178
  </div>
51
- </div>
179
+ </Transition>
52
180
  </component>
53
181
  </template>
54
-
55
- <script>
56
- export default {
57
- name: 'XCollapse',
58
-
59
- props: {
60
- disabled: {
61
- default: false,
62
- type: Boolean,
63
- },
64
-
65
- expanded: {
66
- default: false,
67
- type: Boolean,
68
- },
69
-
70
- iconLeft: {
71
- default: false,
72
- type: Boolean,
73
- },
74
-
75
- tag: {
76
- default: 'div',
77
- type: String,
78
- },
79
- },
80
-
81
- data() {
82
- return {
83
- collapsed: !this.expanded,
84
- maxHeight: !this.expanded ? 0 : 'auto',
85
- observer: null,
86
- }
87
- },
88
-
89
- beforeMount() {
90
- window.addEventListener('resize', this.onResize)
91
- },
92
-
93
- beforeUnmount() {
94
- this.observer.disconnect()
95
- window.removeEventListener('resize', this.onResize)
96
- },
97
-
98
- mounted() {
99
- this.observer = new ResizeObserver(this.onResize)
100
- this.observer.observe(this.$refs.content)
101
- },
102
-
103
- methods: {
104
- toggleExpand() {
105
- if (this.disabled) return
106
-
107
- this.collapsed = !this.collapsed
108
- this.$emit('toggle', this.collapsed)
109
- this.onResize()
110
- },
111
-
112
- onResize() {
113
- if (this.collapsed) {
114
- this.maxHeight = 0
115
- } else {
116
- this.maxHeight = this.$refs.content.offsetHeight
117
- }
118
- },
119
- },
120
- }
121
- </script>
@@ -1,14 +1,7 @@
1
- <template>
2
- <component
3
- :is="tag"
4
- class="container mx-auto px-4"
5
- >
6
- <slot></slot>
7
- </component>
8
- </template>
1
+ <script lang="ts">
2
+ import { defineComponent } from 'vue'
9
3
 
10
- <script>
11
- export default {
4
+ export default defineComponent({
12
5
  name: 'XContainer',
13
6
 
14
7
  props: {
@@ -17,5 +10,14 @@ export default {
17
10
  default: 'div',
18
11
  },
19
12
  },
20
- }
13
+ })
21
14
  </script>
15
+
16
+ <template>
17
+ <component
18
+ :is="tag"
19
+ class="container mx-auto px-4"
20
+ >
21
+ <slot></slot>
22
+ </component>
23
+ </template>
@@ -1,3 +1,16 @@
1
+ <script lang="ts">
2
+ import { defineComponent } from 'vue'
3
+
4
+ export default defineComponent({
5
+ name: 'XDivider',
6
+
7
+ props: {
8
+ label: String,
9
+ vertical: Boolean,
10
+ },
11
+ })
12
+ </script>
13
+
1
14
  <template>
2
15
  <div
3
16
  :class="[
@@ -9,7 +22,7 @@
9
22
  class="flex justify-center items-center"
10
23
  >
11
24
  <div
12
- class="bg-gray-200 dark:bg-gray-600 flex-grow"
25
+ class="bg-gray-200 dark:bg-slate-700 flex-grow"
13
26
  :style="[
14
27
  {
15
28
  width: vertical ? '1px' : 'auto',
@@ -27,7 +40,7 @@
27
40
  v-text="label"
28
41
  ></div>
29
42
  <div
30
- class="bg-gray-200 dark:bg-gray-600 flex-grow"
43
+ class="bg-gray-200 dark:bg-slate-700 flex-grow"
31
44
  :style="[
32
45
  {
33
46
  width: vertical ? '1px' : 'auto',
@@ -37,20 +50,3 @@
37
50
  ></div>
38
51
  </div>
39
52
  </template>
40
-
41
- <script>
42
- export default {
43
- name: 'XDivider',
44
-
45
- props: {
46
- label: {
47
- type: String,
48
- default: '',
49
- },
50
- vertical: {
51
- type: Boolean,
52
- default: false,
53
- },
54
- },
55
- }
56
- </script>