@indielayer/ui 1.0.9 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (429) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +2 -2
  3. package/{src/exports/nuxt.js → exports/nuxt.mjs} +1 -1
  4. package/{lib → exports}/nuxt.plugin.js +1 -1
  5. package/lib/_virtual/_plugin-vue_export-helper.js +9 -0
  6. package/lib/common/icons.js +18 -0
  7. package/lib/common/utils.d.ts +4 -0
  8. package/lib/common/utils.js +25 -0
  9. package/lib/components/alert/Alert.theme.d.ts +10 -8
  10. package/lib/components/alert/Alert.theme.js +41 -0
  11. package/lib/components/alert/Alert.vue.d.ts +33 -7
  12. package/lib/components/alert/Alert.vue.js +9 -0
  13. package/lib/components/alert/Alert.vue2.js +62 -0
  14. package/lib/components/alert/Alert.vue3.js +8 -0
  15. package/lib/components/alert/index.d.ts +3 -0
  16. package/lib/components/avatar/Avatar.theme.d.ts +13 -7
  17. package/lib/components/avatar/Avatar.theme.js +25 -0
  18. package/lib/components/avatar/Avatar.vue.d.ts +32 -3
  19. package/lib/components/avatar/Avatar.vue.js +9 -0
  20. package/lib/components/avatar/Avatar.vue2.js +76 -0
  21. package/lib/components/avatar/Avatar.vue3.js +7 -0
  22. package/lib/components/avatar/index.d.ts +3 -0
  23. package/lib/components/badge/Badge.theme.d.ts +10 -8
  24. package/lib/components/badge/Badge.theme.js +12 -0
  25. package/lib/components/badge/Badge.vue.d.ts +54 -9
  26. package/lib/components/badge/Badge.vue.js +94 -0
  27. package/lib/components/badge/Badge.vue2.js +4 -0
  28. package/lib/components/badge/index.d.ts +3 -0
  29. package/lib/components/breadcrumbs/Breadcrumbs.theme.d.ts +10 -8
  30. package/lib/components/breadcrumbs/Breadcrumbs.theme.js +10 -0
  31. package/lib/components/breadcrumbs/Breadcrumbs.vue.d.ts +20 -6
  32. package/lib/components/breadcrumbs/Breadcrumbs.vue.js +79 -0
  33. package/lib/components/breadcrumbs/Breadcrumbs.vue2.js +4 -0
  34. package/lib/components/breadcrumbs/index.d.ts +3 -0
  35. package/lib/components/button/Button.theme.d.ts +12 -9
  36. package/lib/components/button/Button.theme.js +138 -0
  37. package/lib/components/button/Button.vue.d.ts +49 -8
  38. package/lib/components/button/Button.vue.js +9 -0
  39. package/lib/components/button/Button.vue2.js +115 -0
  40. package/lib/components/button/Button.vue3.js +8 -0
  41. package/lib/components/button/ButtonGroup.theme.d.ts +12 -5
  42. package/lib/components/button/ButtonGroup.theme.js +8 -0
  43. package/lib/components/button/ButtonGroup.vue.d.ts +44 -6
  44. package/lib/components/button/ButtonGroup.vue.js +9 -0
  45. package/lib/components/button/ButtonGroup.vue2.js +54 -0
  46. package/lib/components/button/ButtonGroup.vue3.js +7 -0
  47. package/lib/components/button/index.d.ts +6 -0
  48. package/lib/components/card/Card.theme.d.ts +10 -7
  49. package/lib/components/card/Card.theme.js +8 -0
  50. package/lib/components/card/Card.vue.d.ts +17 -1
  51. package/lib/components/card/Card.vue.js +31 -0
  52. package/lib/components/card/Card.vue2.js +4 -0
  53. package/lib/components/card/index.d.ts +3 -0
  54. package/lib/components/checkbox/Checkbox.theme.d.ts +13 -10
  55. package/lib/components/checkbox/Checkbox.theme.js +52 -0
  56. package/lib/components/checkbox/Checkbox.vue.d.ts +46 -7
  57. package/lib/components/checkbox/Checkbox.vue.js +9 -0
  58. package/lib/components/checkbox/Checkbox.vue2.js +108 -0
  59. package/lib/components/checkbox/Checkbox.vue3.js +6 -0
  60. package/lib/components/checkbox/index.d.ts +3 -0
  61. package/lib/components/collapse/Collapse.theme.d.ts +10 -9
  62. package/lib/components/collapse/Collapse.theme.js +10 -0
  63. package/lib/components/collapse/Collapse.vue.d.ts +32 -2
  64. package/lib/components/collapse/Collapse.vue.js +132 -0
  65. package/lib/components/collapse/Collapse.vue2.js +4 -0
  66. package/lib/components/collapse/index.d.ts +3 -0
  67. package/lib/components/container/Container.theme.d.ts +10 -6
  68. package/lib/components/container/Container.theme.js +8 -0
  69. package/lib/components/container/Container.vue.d.ts +16 -1
  70. package/lib/components/container/Container.vue.js +30 -0
  71. package/lib/components/container/Container.vue2.js +4 -0
  72. package/lib/components/container/index.d.ts +3 -0
  73. package/lib/components/divider/Divider.theme.d.ts +10 -9
  74. package/lib/components/divider/Divider.theme.js +10 -0
  75. package/lib/components/divider/Divider.vue.d.ts +7 -1
  76. package/lib/components/divider/Divider.vue.js +53 -0
  77. package/lib/components/divider/Divider.vue2.js +4 -0
  78. package/lib/components/divider/index.d.ts +3 -0
  79. package/lib/components/drawer/Drawer.theme.d.ts +10 -7
  80. package/lib/components/drawer/Drawer.theme.js +9 -0
  81. package/lib/components/drawer/Drawer.vue.d.ts +50 -14
  82. package/lib/components/drawer/Drawer.vue.js +171 -0
  83. package/lib/components/drawer/Drawer.vue2.js +4 -0
  84. package/lib/components/drawer/index.d.ts +3 -0
  85. package/lib/components/form/Form.theme.d.ts +10 -6
  86. package/lib/components/form/Form.theme.js +8 -0
  87. package/lib/components/form/Form.vue.d.ts +34 -6
  88. package/lib/components/form/Form.vue.js +79 -0
  89. package/lib/components/form/Form.vue2.js +4 -0
  90. package/lib/components/form/index.d.ts +3 -0
  91. package/lib/components/helpers/InputError.d.ts +2 -2
  92. package/lib/components/helpers/InputError.js +18 -0
  93. package/lib/components/icon/Icon.theme.d.ts +10 -7
  94. package/lib/components/icon/Icon.theme.js +11 -0
  95. package/lib/components/icon/Icon.vue.d.ts +22 -4
  96. package/lib/components/icon/Icon.vue.js +74 -0
  97. package/lib/components/icon/Icon.vue2.js +4 -0
  98. package/lib/components/icon/index.d.ts +3 -0
  99. package/lib/components/image/Image.theme.d.ts +10 -6
  100. package/lib/components/image/Image.theme.js +8 -0
  101. package/lib/components/image/Image.vue.d.ts +6 -1
  102. package/lib/components/image/Image.vue.js +32 -0
  103. package/lib/components/image/Image.vue2.js +4 -0
  104. package/lib/components/image/index.d.ts +3 -0
  105. package/lib/components/index.d.ts +35 -45
  106. package/lib/components/index.js +92 -0
  107. package/lib/components/input/Input.theme.d.ts +12 -10
  108. package/lib/components/input/Input.theme.js +21 -0
  109. package/lib/components/input/Input.vue.d.ts +73 -22
  110. package/lib/components/input/Input.vue.js +140 -0
  111. package/lib/components/input/Input.vue2.js +4 -0
  112. package/lib/components/input/index.d.ts +3 -0
  113. package/lib/components/link/Link.theme.d.ts +10 -8
  114. package/lib/components/link/Link.theme.js +25 -0
  115. package/lib/components/link/Link.vue.d.ts +25 -2
  116. package/lib/components/link/Link.vue.js +9 -0
  117. package/lib/components/link/Link.vue2.js +48 -0
  118. package/lib/components/link/Link.vue3.js +8 -0
  119. package/lib/components/link/index.d.ts +3 -0
  120. package/lib/components/menu/Menu.theme.d.ts +10 -6
  121. package/lib/components/menu/Menu.theme.js +8 -0
  122. package/lib/components/menu/Menu.vue.d.ts +62 -9
  123. package/lib/components/menu/Menu.vue.js +133 -0
  124. package/lib/components/menu/Menu.vue2.js +4 -0
  125. package/lib/components/menu/MenuItem.theme.d.ts +13 -7
  126. package/lib/components/menu/MenuItem.theme.js +86 -0
  127. package/lib/components/menu/MenuItem.vue.d.ts +63 -14
  128. package/lib/components/menu/MenuItem.vue.js +9 -0
  129. package/lib/components/menu/MenuItem.vue2.js +143 -0
  130. package/lib/components/menu/MenuItem.vue3.js +7 -0
  131. package/lib/components/menu/index.d.ts +6 -0
  132. package/lib/components/modal/Modal.theme.d.ts +10 -13
  133. package/lib/components/modal/Modal.theme.js +17 -0
  134. package/lib/components/modal/Modal.vue.d.ts +24 -2
  135. package/lib/components/modal/Modal.vue.js +127 -0
  136. package/lib/components/modal/Modal.vue2.js +4 -0
  137. package/lib/components/modal/index.d.ts +3 -0
  138. package/lib/components/notifications/Notifications.theme.d.ts +10 -8
  139. package/lib/components/notifications/Notifications.theme.js +10 -0
  140. package/lib/components/notifications/Notifications.vue.d.ts +56 -16
  141. package/lib/components/notifications/Notifications.vue.js +234 -0
  142. package/lib/components/notifications/Notifications.vue2.js +4 -0
  143. package/lib/components/notifications/index.d.ts +3 -0
  144. package/lib/components/pagination/Pagination.theme.d.ts +10 -9
  145. package/lib/components/pagination/Pagination.theme.js +13 -0
  146. package/lib/components/pagination/Pagination.vue.d.ts +28 -5
  147. package/lib/components/pagination/Pagination.vue.js +131 -0
  148. package/lib/components/pagination/Pagination.vue2.js +4 -0
  149. package/lib/components/pagination/PaginationItem.theme.d.ts +10 -7
  150. package/lib/components/pagination/PaginationItem.theme.js +8 -0
  151. package/lib/components/pagination/PaginationItem.vue.d.ts +17 -2
  152. package/lib/components/pagination/PaginationItem.vue.js +48 -0
  153. package/lib/components/pagination/PaginationItem.vue2.js +4 -0
  154. package/lib/components/pagination/index.d.ts +6 -0
  155. package/lib/components/popover/Popover.theme.d.ts +10 -7
  156. package/lib/components/popover/Popover.theme.js +9 -0
  157. package/lib/components/popover/Popover.vue.d.ts +48 -10
  158. package/lib/components/popover/Popover.vue.js +9 -0
  159. package/lib/components/popover/Popover.vue2.js +106 -0
  160. package/lib/components/popover/Popover.vue3.js +15 -0
  161. package/lib/components/popover/PopoverContainer.theme.d.ts +10 -6
  162. package/lib/components/popover/PopoverContainer.theme.js +8 -0
  163. package/lib/components/popover/PopoverContainer.vue.d.ts +16 -1
  164. package/lib/components/popover/PopoverContainer.vue.js +30 -0
  165. package/lib/components/popover/PopoverContainer.vue2.js +4 -0
  166. package/lib/components/popover/index.d.ts +6 -0
  167. package/lib/components/progress/Progress.theme.d.ts +10 -10
  168. package/lib/components/progress/Progress.theme.js +18 -0
  169. package/lib/components/progress/Progress.vue.d.ts +21 -2
  170. package/lib/components/progress/Progress.vue.js +51 -0
  171. package/lib/components/progress/Progress.vue2.js +4 -0
  172. package/lib/components/progress/index.d.ts +3 -0
  173. package/lib/components/radio/Radio.theme.d.ts +13 -11
  174. package/lib/components/radio/Radio.theme.js +67 -0
  175. package/lib/components/radio/Radio.vue.d.ts +48 -9
  176. package/lib/components/radio/Radio.vue.js +9 -0
  177. package/lib/components/radio/Radio.vue2.js +117 -0
  178. package/lib/components/radio/Radio.vue3.js +10 -0
  179. package/lib/components/radio/index.d.ts +3 -0
  180. package/lib/components/scroll/Scroll.theme.d.ts +10 -6
  181. package/lib/components/scroll/Scroll.theme.js +8 -0
  182. package/lib/components/scroll/Scroll.vue.d.ts +20 -2
  183. package/lib/components/scroll/Scroll.vue.js +9 -0
  184. package/lib/components/scroll/Scroll.vue2.js +64 -0
  185. package/lib/components/scroll/Scroll.vue3.js +17 -0
  186. package/lib/components/scroll/index.d.ts +3 -0
  187. package/lib/components/select/Select.theme.d.ts +13 -12
  188. package/lib/components/select/Select.theme.js +23 -0
  189. package/lib/components/select/Select.vue.d.ts +44 -8
  190. package/lib/components/select/Select.vue.js +269 -0
  191. package/lib/components/select/Select.vue2.js +4 -0
  192. package/lib/components/select/index.d.ts +3 -0
  193. package/lib/components/skeleton/Skeleton.theme.d.ts +10 -6
  194. package/lib/components/skeleton/Skeleton.theme.js +8 -0
  195. package/lib/components/skeleton/Skeleton.vue.d.ts +9 -1
  196. package/lib/components/skeleton/Skeleton.vue.js +30 -0
  197. package/lib/components/skeleton/Skeleton.vue2.js +4 -0
  198. package/lib/components/skeleton/index.d.ts +3 -0
  199. package/lib/components/slider/Slider.theme.d.ts +10 -10
  200. package/lib/components/slider/Slider.theme.js +20 -0
  201. package/lib/components/slider/Slider.vue.d.ts +55 -7
  202. package/lib/components/slider/Slider.vue.js +148 -0
  203. package/lib/components/slider/Slider.vue2.js +4 -0
  204. package/lib/components/slider/index.d.ts +2 -0
  205. package/lib/components/spacer/Spacer.d.ts +1 -1
  206. package/lib/components/spacer/Spacer.js +12 -0
  207. package/lib/components/spacer/index.d.ts +1 -0
  208. package/lib/components/spinner/Spinner.vue.d.ts +14 -1
  209. package/lib/components/spinner/Spinner.vue.js +28 -0
  210. package/lib/components/spinner/Spinner.vue2.js +4 -0
  211. package/lib/components/spinner/index.d.ts +2 -0
  212. package/lib/components/tab/Tab.theme.d.ts +12 -9
  213. package/lib/components/tab/Tab.theme.js +13 -0
  214. package/lib/components/tab/Tab.vue.d.ts +44 -9
  215. package/lib/components/tab/Tab.vue.js +129 -0
  216. package/lib/components/tab/Tab.vue2.js +4 -0
  217. package/lib/components/tab/TabGroup.theme.d.ts +10 -10
  218. package/lib/components/tab/TabGroup.theme.js +27 -0
  219. package/lib/components/tab/TabGroup.vue.d.ts +61 -9
  220. package/lib/components/tab/TabGroup.vue.js +133 -0
  221. package/lib/components/tab/TabGroup.vue2.js +4 -0
  222. package/lib/components/tab/index.d.ts +4 -0
  223. package/lib/components/table/Table.theme.d.ts +10 -8
  224. package/lib/components/table/Table.theme.js +12 -0
  225. package/lib/components/table/Table.vue.d.ts +269 -51
  226. package/lib/components/table/Table.vue.js +147 -0
  227. package/lib/components/table/Table.vue2.js +4 -0
  228. package/lib/components/table/TableBody.d.ts +1 -1
  229. package/lib/components/table/TableBody.js +15 -0
  230. package/lib/components/table/TableCell.theme.d.ts +10 -7
  231. package/lib/components/table/TableCell.theme.js +11 -0
  232. package/lib/components/table/TableCell.vue.d.ts +35 -6
  233. package/lib/components/table/TableCell.vue.js +43 -0
  234. package/lib/components/table/TableCell.vue2.js +4 -0
  235. package/lib/components/table/TableHead.d.ts +1 -1
  236. package/lib/components/table/TableHead.js +19 -0
  237. package/lib/components/table/TableHeader.vue.d.ts +34 -9
  238. package/lib/components/table/TableHeader.vue.js +78 -0
  239. package/lib/components/table/TableHeader.vue2.js +4 -0
  240. package/lib/components/table/TableRow.vue.d.ts +8 -1
  241. package/lib/components/table/TableRow.vue.js +32 -0
  242. package/lib/components/table/TableRow.vue2.js +4 -0
  243. package/lib/components/table/index.d.ts +9 -0
  244. package/lib/components/tag/Tag.theme.d.ts +10 -9
  245. package/lib/components/tag/Tag.theme.js +23 -0
  246. package/lib/components/tag/Tag.vue.d.ts +31 -4
  247. package/lib/components/tag/Tag.vue.js +61 -0
  248. package/lib/components/tag/Tag.vue2.js +4 -0
  249. package/lib/components/tag/index.d.ts +2 -0
  250. package/lib/components/textarea/Textarea.theme.d.ts +13 -9
  251. package/lib/components/textarea/Textarea.theme.js +16 -0
  252. package/lib/components/textarea/Textarea.vue.d.ts +59 -17
  253. package/lib/components/textarea/Textarea.vue.js +110 -0
  254. package/lib/components/textarea/Textarea.vue2.js +4 -0
  255. package/lib/components/textarea/index.d.ts +2 -0
  256. package/lib/components/toggle/Toggle.theme.d.ts +10 -11
  257. package/lib/components/toggle/Toggle.theme.js +29 -0
  258. package/lib/components/toggle/Toggle.vue.d.ts +39 -7
  259. package/lib/components/toggle/Toggle.vue.js +110 -0
  260. package/lib/components/toggle/Toggle.vue2.js +4 -0
  261. package/lib/components/toggle/index.d.ts +2 -0
  262. package/lib/components/tooltip/Tooltip.vue.d.ts +12 -1
  263. package/lib/components/tooltip/Tooltip.vue.js +27 -0
  264. package/lib/components/tooltip/Tooltip.vue2.js +4 -0
  265. package/lib/components/tooltip/index.d.ts +2 -0
  266. package/lib/composables/colors-utils.js +19 -0
  267. package/lib/composables/colors.d.ts +6 -4
  268. package/lib/composables/colors.js +52 -0
  269. package/lib/composables/common.d.ts +1 -1
  270. package/lib/composables/common.js +17 -0
  271. package/lib/composables/css.d.ts +1 -1
  272. package/lib/composables/css.js +26 -0
  273. package/lib/composables/inputtable.d.ts +4 -4
  274. package/lib/composables/inputtable.js +78 -0
  275. package/lib/composables/interactive.js +17 -0
  276. package/lib/composables/keys.d.ts +6 -3
  277. package/lib/composables/keys.js +10 -0
  278. package/lib/composables/notifications.d.ts +1 -1
  279. package/lib/composables/notifications.js +9 -0
  280. package/lib/composables/theme.d.ts +13 -7
  281. package/lib/composables/theme.js +59 -0
  282. package/lib/create.d.ts +1 -1
  283. package/lib/create.js +19 -0
  284. package/lib/index.js +121 -0
  285. package/lib/index.umd.js +1 -0
  286. package/lib/install.js +10 -0
  287. package/lib/node_modules/.pnpm/@vueuse_core@10.2.0_vue@3.3.4/node_modules/@vueuse/core/index.js +379 -0
  288. package/lib/node_modules/.pnpm/@vueuse_shared@10.2.0_vue@3.3.4/node_modules/@vueuse/shared/index.js +90 -0
  289. package/lib/version.d.ts +1 -1
  290. package/lib/version.js +4 -0
  291. package/package.json +54 -54
  292. package/src/common/utils.ts +25 -2
  293. package/src/components/alert/Alert.theme.ts +15 -6
  294. package/src/components/alert/Alert.vue +26 -13
  295. package/src/components/alert/index.ts +3 -0
  296. package/src/components/avatar/Avatar.theme.ts +16 -4
  297. package/src/components/avatar/Avatar.vue +20 -15
  298. package/src/components/avatar/index.ts +3 -0
  299. package/src/components/badge/Badge.theme.ts +13 -3
  300. package/src/components/badge/Badge.vue +30 -15
  301. package/src/components/badge/index.ts +3 -0
  302. package/src/components/breadcrumbs/Breadcrumbs.theme.ts +12 -2
  303. package/src/components/breadcrumbs/Breadcrumbs.vue +24 -21
  304. package/src/components/breadcrumbs/index.ts +3 -0
  305. package/src/components/button/Button.theme.ts +23 -19
  306. package/src/components/button/Button.vue +30 -19
  307. package/src/components/button/ButtonGroup.theme.ts +14 -1
  308. package/src/components/button/ButtonGroup.vue +33 -19
  309. package/src/components/button/index.ts +7 -0
  310. package/src/components/card/Card.theme.ts +13 -3
  311. package/src/components/card/Card.vue +12 -7
  312. package/src/components/card/index.ts +3 -0
  313. package/src/components/checkbox/Checkbox.theme.ts +19 -7
  314. package/src/components/checkbox/Checkbox.vue +21 -12
  315. package/src/components/checkbox/index.ts +3 -0
  316. package/src/components/collapse/Collapse.theme.ts +13 -3
  317. package/src/components/collapse/Collapse.vue +28 -24
  318. package/src/components/collapse/index.ts +3 -0
  319. package/src/components/container/Container.theme.ts +12 -2
  320. package/src/components/container/Container.vue +11 -6
  321. package/src/components/container/index.ts +3 -0
  322. package/src/components/divider/Divider.theme.ts +13 -3
  323. package/src/components/divider/Divider.vue +9 -4
  324. package/src/components/divider/index.ts +3 -0
  325. package/src/components/drawer/Drawer.theme.ts +12 -2
  326. package/src/components/drawer/Drawer.vue +50 -41
  327. package/src/components/drawer/index.ts +3 -0
  328. package/src/components/form/Form.theme.ts +12 -2
  329. package/src/components/form/Form.vue +40 -31
  330. package/src/components/form/index.ts +3 -0
  331. package/src/components/helpers/InputError.tsx +2 -2
  332. package/src/components/icon/Icon.theme.ts +13 -3
  333. package/src/components/icon/Icon.vue +24 -15
  334. package/src/components/icon/__tests__/Icon.spec.ts +5 -1
  335. package/src/components/icon/index.ts +3 -0
  336. package/src/components/image/Image.theme.ts +12 -2
  337. package/src/components/image/Image.vue +8 -4
  338. package/src/components/image/index.ts +3 -0
  339. package/src/components/index.ts +35 -45
  340. package/src/components/input/Input.theme.ts +17 -6
  341. package/src/components/input/Input.vue +33 -22
  342. package/src/components/input/index.ts +3 -0
  343. package/src/components/link/Link.theme.ts +13 -3
  344. package/src/components/link/Link.vue +20 -12
  345. package/src/components/link/index.ts +3 -0
  346. package/src/components/menu/Menu.theme.ts +12 -2
  347. package/src/components/menu/Menu.vue +59 -23
  348. package/src/components/menu/MenuItem.theme.ts +17 -5
  349. package/src/components/menu/MenuItem.vue +65 -52
  350. package/src/components/menu/index.ts +7 -0
  351. package/src/components/modal/Modal.theme.ts +13 -3
  352. package/src/components/modal/Modal.vue +23 -12
  353. package/src/components/modal/index.ts +3 -0
  354. package/src/components/notifications/Notifications.theme.ts +12 -2
  355. package/src/components/notifications/Notifications.vue +53 -49
  356. package/src/components/notifications/index.ts +9 -0
  357. package/src/components/pagination/Pagination.theme.ts +15 -5
  358. package/src/components/pagination/Pagination.vue +24 -18
  359. package/src/components/pagination/PaginationItem.theme.ts +13 -3
  360. package/src/components/pagination/PaginationItem.vue +14 -10
  361. package/src/components/pagination/index.ts +7 -0
  362. package/src/components/popover/Popover.theme.ts +12 -2
  363. package/src/components/popover/Popover.vue +56 -46
  364. package/src/components/popover/PopoverContainer.theme.ts +12 -2
  365. package/src/components/popover/PopoverContainer.vue +11 -6
  366. package/src/components/popover/index.ts +7 -0
  367. package/src/components/progress/Progress.theme.ts +14 -4
  368. package/src/components/progress/Progress.vue +16 -16
  369. package/src/components/progress/index.ts +3 -0
  370. package/src/components/radio/Radio.theme.ts +19 -7
  371. package/src/components/radio/Radio.vue +24 -14
  372. package/src/components/radio/index.ts +3 -0
  373. package/src/components/scroll/Scroll.theme.ts +12 -2
  374. package/src/components/scroll/Scroll.vue +37 -26
  375. package/src/components/scroll/index.ts +3 -0
  376. package/src/components/select/Select.theme.ts +20 -6
  377. package/src/components/select/Select.vue +28 -20
  378. package/src/components/select/index.ts +3 -0
  379. package/src/components/skeleton/Skeleton.theme.ts +12 -2
  380. package/src/components/skeleton/Skeleton.vue +11 -6
  381. package/src/components/skeleton/index.ts +3 -0
  382. package/src/components/slider/Slider.theme.ts +14 -4
  383. package/src/components/slider/Slider.vue +24 -16
  384. package/src/components/slider/index.ts +2 -0
  385. package/src/components/spacer/index.ts +1 -0
  386. package/src/components/spinner/Spinner.vue +18 -8
  387. package/src/components/spinner/index.ts +2 -0
  388. package/src/components/tab/Tab.theme.ts +15 -3
  389. package/src/components/tab/Tab.vue +85 -68
  390. package/src/components/tab/TabGroup.theme.ts +15 -5
  391. package/src/components/tab/TabGroup.vue +67 -22
  392. package/src/components/tab/index.ts +5 -0
  393. package/src/components/table/Table.theme.ts +14 -4
  394. package/src/components/table/Table.vue +41 -31
  395. package/src/components/table/TableCell.theme.ts +13 -3
  396. package/src/components/table/TableCell.vue +22 -16
  397. package/src/components/table/TableHeader.vue +20 -17
  398. package/src/components/table/TableRow.vue +1 -1
  399. package/src/components/table/index.ts +10 -0
  400. package/src/components/tag/Tag.theme.ts +14 -4
  401. package/src/components/tag/Tag.vue +22 -13
  402. package/src/components/tag/index.ts +2 -0
  403. package/src/components/textarea/Textarea.theme.ts +18 -30
  404. package/src/components/textarea/Textarea.vue +28 -19
  405. package/src/components/textarea/index.ts +2 -0
  406. package/src/components/toggle/Toggle.theme.ts +16 -6
  407. package/src/components/toggle/Toggle.vue +21 -12
  408. package/src/components/toggle/index.ts +2 -0
  409. package/src/components/tooltip/Tooltip.vue +5 -0
  410. package/src/components/tooltip/index.ts +2 -0
  411. package/src/composables/colors-utils.ts +4 -346
  412. package/src/composables/colors.ts +21 -17
  413. package/src/composables/common.ts +1 -1
  414. package/src/composables/css.ts +4 -4
  415. package/src/composables/inputtable.ts +8 -8
  416. package/src/composables/interactive.ts +2 -2
  417. package/src/composables/keys.ts +6 -3
  418. package/src/composables/theme.ts +30 -27
  419. package/src/create.ts +6 -7
  420. package/src/version.ts +1 -1
  421. package/volar.d.ts +0 -2
  422. package/lib/components/tooltip/Tooltip.theme.d.ts +0 -11
  423. package/lib/index.cjs.js +0 -1
  424. package/lib/index.es.js +0 -7184
  425. package/lib/nuxt.js +0 -33
  426. package/src/components/tooltip/Tooltip.theme.ts +0 -51
  427. package/src/exports/nuxt.plugin.js +0 -8
  428. package/src/exports/tailwind.preset.js +0 -55
  429. /package/{lib → exports}/tailwind.preset.js +0 -0
@@ -0,0 +1,133 @@
1
+ import { defineComponent as B, ref as l, watchEffect as x, reactive as E, computed as a, provide as V, watch as z, onMounted as N, openBlock as $, createElementBlock as q, createElementVNode as c, normalizeClass as f, unref as n, normalizeStyle as F, createVNode as G, withCtx as L, renderSlot as M, withDirectives as X, vShow as j, nextTick as D } from "vue";
2
+ import { useMutationObserver as K } from "../../node_modules/.pnpm/@vueuse_core@10.2.0_vue@3.3.4/node_modules/@vueuse/core/index.js";
3
+ import { injectTabKey as O } from "../../composables/keys.js";
4
+ import { useCommon as g } from "../../composables/common.js";
5
+ import { useColors as P } from "../../composables/colors.js";
6
+ import { useTheme as W } from "../../composables/theme.js";
7
+ import A from "../scroll/Scroll.vue.js";
8
+ import H from "./TabGroup.theme.js";
9
+ import { useThrottleFn as I } from "../../node_modules/.pnpm/@vueuse_shared@10.2.0_vue@3.3.4/node_modules/@vueuse/shared/index.js";
10
+ const J = {
11
+ ...g.validators(),
12
+ variant: ["line", "block"],
13
+ align: ["left", "center", "right"]
14
+ }, Q = {
15
+ ...g.props(),
16
+ ...P.props("primary"),
17
+ modelValue: [String, Number],
18
+ variant: {
19
+ type: String,
20
+ default: "line"
21
+ },
22
+ align: {
23
+ type: String,
24
+ default: "left"
25
+ },
26
+ ghost: Boolean,
27
+ grow: Boolean,
28
+ exact: Boolean
29
+ }, U = {
30
+ name: "XTabGroup",
31
+ validators: J
32
+ }, ne = /* @__PURE__ */ B({
33
+ ...U,
34
+ props: Q,
35
+ emits: ["update:modelValue"],
36
+ setup(k, { emit: y }) {
37
+ const t = k, i = l(null), w = l(null), u = l(null), r = l(null), m = l(null), s = l();
38
+ x(() => {
39
+ s.value = t.modelValue;
40
+ });
41
+ const R = E({
42
+ active: a(() => s.value),
43
+ variant: a(() => t.variant),
44
+ ghost: a(() => t.ghost),
45
+ grow: a(() => t.grow),
46
+ exact: a(() => t.exact),
47
+ size: a(() => t.size),
48
+ color: a(() => t.color)
49
+ });
50
+ function d(e) {
51
+ s.value = e, y("update:modelValue", e);
52
+ }
53
+ V(O, {
54
+ tabsContentRef: m,
55
+ activateTab: d,
56
+ state: R
57
+ });
58
+ const h = I(async (e) => {
59
+ var b;
60
+ if (typeof e > "u")
61
+ return;
62
+ await D();
63
+ const o = (b = r.value) == null ? void 0 : b.querySelector(`[data-value="${e}"]`);
64
+ if (!o || !u.value || (u.value.style.left = `${o.offsetLeft}px`, u.value.style.width = `${o.offsetWidth}px`, !r.value || !i.value))
65
+ return;
66
+ const T = o.offsetLeft - (r.value.getBoundingClientRect().width - o.getBoundingClientRect().width) / 2;
67
+ i.value.scrollEl && i.value.scrollEl.scrollTo({ left: T, behavior: "smooth" });
68
+ }, 100), v = l(!0);
69
+ function S() {
70
+ var e;
71
+ (e = r.value) != null && e.querySelector(".router-link-active") ? v.value = !0 : (d(null), v.value = !1);
72
+ }
73
+ z(() => s.value, (e) => {
74
+ h(e);
75
+ }), N(() => {
76
+ var e;
77
+ (e = r.value) != null && e.querySelector(".x-link") && K(r.value, S, {
78
+ attributes: !0,
79
+ subtree: !0,
80
+ attributeFilter: ["class"]
81
+ }), h(s.value);
82
+ });
83
+ const { styles: _, classes: p, className: C } = W("tabs", H, t);
84
+ return (e, o) => ($(), q("div", null, [
85
+ c("div", {
86
+ ref_key: "wrapperRef",
87
+ ref: w,
88
+ class: f(["relative", [
89
+ n(C),
90
+ n(p).wrapper
91
+ ]]),
92
+ style: F(n(_))
93
+ }, [
94
+ G(A, {
95
+ ref_key: "scrollRef",
96
+ ref: i,
97
+ scrollbar: !1,
98
+ horizontal: "",
99
+ mousewheel: "",
100
+ class: f({
101
+ "rounded-md": e.variant === "block",
102
+ "bg-slate-100 dark:bg-gray-800 p-1": e.variant === "block" && !e.ghost
103
+ })
104
+ }, {
105
+ default: L(() => [
106
+ c("div", {
107
+ ref_key: "tabsRef",
108
+ ref: r,
109
+ class: f(["relative", n(p).list])
110
+ }, [
111
+ M(e.$slots, "default")
112
+ ], 2),
113
+ X(c("div", {
114
+ ref_key: "trackerRef",
115
+ ref: u,
116
+ class: f(n(p).tracker)
117
+ }, null, 2), [
118
+ [j, v.value]
119
+ ])
120
+ ]),
121
+ _: 3
122
+ }, 8, ["class"])
123
+ ], 6),
124
+ c("div", {
125
+ ref_key: "tabsContentRef",
126
+ ref: m
127
+ }, null, 512)
128
+ ]));
129
+ }
130
+ });
131
+ export {
132
+ ne as default
133
+ };
@@ -0,0 +1,4 @@
1
+ import f from "./TabGroup.vue.js";
2
+ export {
3
+ f as default
4
+ };
@@ -0,0 +1,4 @@
1
+ export { default as XTab } from './Tab.vue';
2
+ export type { TabProps } from './Tab.vue';
3
+ export { default as XTabGroup } from './TabGroup.vue';
4
+ export type { TabGroupProps, TabGroupAlign, TabGroupInjection, TabGroupVariant } from './TabGroup.vue';
@@ -1,8 +1,10 @@
1
- import type { ThemeParams } from '../../composables/theme';
2
- declare const _default: {
3
- classes: {
4
- wrapper: ({ props, data }: ThemeParams) => string[];
5
- loadingWrapper: string;
6
- };
7
- };
8
- export default _default;
1
+ import type { ThemeClasses, ThemeComponent } from '../../composables/theme';
2
+ import type { TableProps } from './Table.vue';
3
+ type InternalClasses = 'wrapper' | 'loadingWrapper';
4
+ interface InternalTheme extends ThemeComponent<TableProps, InternalClasses> {
5
+ }
6
+ export interface TableTheme extends Omit<InternalTheme, 'classes'> {
7
+ classes?: Partial<ThemeClasses<TableProps, InternalClasses>>;
8
+ }
9
+ declare const theme: InternalTheme;
10
+ export default theme;
@@ -0,0 +1,12 @@
1
+ const t = {
2
+ classes: {
3
+ wrapper: ({ props: a, data: l }) => {
4
+ const e = ["w-full relative"];
5
+ return a.scrollable && e.push("overflow-x-scroll sm:overflow-x-auto whitespace-wrap sm:whitespace-normal block sm:table"), a.stickyHeader && e.push("relative"), a.fixed && e.push("table-fixed"), e;
6
+ },
7
+ loadingWrapper: "absolute inset-0 flex items-center justify-center z-40 bg-gray-300 dark:bg-gray-600 rounded opacity-50"
8
+ }
9
+ }, r = t;
10
+ export {
11
+ r as default
12
+ };
@@ -1,42 +1,8 @@
1
- import type { PropType } from 'vue';
2
- import { type Align } from './TableHeader.vue';
3
- export declare type Header = {
4
- sortable?: boolean;
5
- sort?: string[];
6
- align?: Align;
7
- value?: string;
8
- text?: string;
9
- width?: string | number;
10
- };
11
- declare const _default: import("vue").DefineComponent<{
12
- headers: {
13
- type: PropType<Header[]>;
14
- default: () => never[];
15
- };
16
- items: {
17
- type: ArrayConstructor;
18
- default: () => never[];
19
- };
20
- sort: {
21
- type: PropType<string[]>;
22
- default: () => never[];
23
- };
24
- loading: BooleanConstructor;
25
- dense: BooleanConstructor;
26
- fixed: BooleanConstructor;
27
- striped: BooleanConstructor;
28
- pointer: BooleanConstructor;
29
- scrollable: {
30
- type: BooleanConstructor;
31
- default: boolean;
32
- };
33
- stickyHeader: {
34
- type: BooleanConstructor;
35
- default: boolean;
36
- };
37
- }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:sort" | "click-row")[], "update:sort" | "click-row", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
1
+ import type { ExtractPublicPropTypes, PropType } from 'vue';
2
+ import { type TableHeaderAlign } from './TableHeader.vue';
3
+ declare const tableProps: {
38
4
  headers: {
39
- type: PropType<Header[]>;
5
+ type: PropType<TableHeader[]>;
40
6
  default: () => never[];
41
7
  };
42
8
  items: {
@@ -60,19 +26,271 @@ declare const _default: import("vue").DefineComponent<{
60
26
  type: BooleanConstructor;
61
27
  default: boolean;
62
28
  };
63
- }>> & {
29
+ };
30
+ export type TableHeader = {
31
+ sortable?: boolean;
32
+ sort?: string[];
33
+ align?: TableHeaderAlign;
34
+ value?: string;
35
+ text?: string;
36
+ width?: string | number;
37
+ };
38
+ export type TableProps = ExtractPublicPropTypes<typeof tableProps>;
39
+ declare const _default: <T>(__VLS_props: {
40
+ sort?: string[] | undefined;
41
+ loading?: boolean | undefined;
42
+ items?: T[] | undefined;
43
+ fixed?: boolean | undefined;
44
+ pointer?: boolean | undefined;
45
+ dense?: boolean | undefined;
46
+ stickyHeader?: boolean | undefined;
47
+ headers?: TableHeader[] | undefined;
48
+ striped?: boolean | undefined;
49
+ scrollable?: boolean | undefined;
50
+ key?: string | number | symbol | undefined;
51
+ ref?: import("vue").VNodeRef | undefined;
52
+ ref_for?: boolean | undefined;
53
+ ref_key?: string | undefined;
54
+ onVnodeBeforeMount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
55
+ [key: string]: any;
56
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
57
+ [key: string]: any;
58
+ }>) => void)[] | undefined;
59
+ onVnodeMounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
60
+ [key: string]: any;
61
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
62
+ [key: string]: any;
63
+ }>) => void)[] | undefined;
64
+ onVnodeBeforeUpdate?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
65
+ [key: string]: any;
66
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
67
+ [key: string]: any;
68
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
69
+ [key: string]: any;
70
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
71
+ [key: string]: any;
72
+ }>) => void)[] | undefined;
73
+ onVnodeUpdated?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
74
+ [key: string]: any;
75
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
76
+ [key: string]: any;
77
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
78
+ [key: string]: any;
79
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
80
+ [key: string]: any;
81
+ }>) => void)[] | undefined;
82
+ onVnodeBeforeUnmount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
83
+ [key: string]: any;
84
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
85
+ [key: string]: any;
86
+ }>) => void)[] | undefined;
87
+ onVnodeUnmounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
88
+ [key: string]: any;
89
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
90
+ [key: string]: any;
91
+ }>) => void)[] | undefined;
92
+ class?: unknown;
93
+ style?: unknown;
64
94
  "onUpdate:sort"?: ((...args: any[]) => any) | undefined;
65
95
  "onClick-row"?: ((...args: any[]) => any) | undefined;
66
- }, {
67
- fixed: boolean;
68
- sort: string[];
69
- items: unknown[];
70
- loading: boolean;
71
- pointer: boolean;
72
- dense: boolean;
73
- stickyHeader: boolean;
74
- striped: boolean;
75
- headers: Header[];
76
- scrollable: boolean;
77
- }>;
96
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, __VLS_ctx?: Pick<{
97
+ props: {
98
+ sort?: string[] | undefined;
99
+ loading?: boolean | undefined;
100
+ items?: T[] | undefined;
101
+ fixed?: boolean | undefined;
102
+ pointer?: boolean | undefined;
103
+ dense?: boolean | undefined;
104
+ stickyHeader?: boolean | undefined;
105
+ headers?: TableHeader[] | undefined;
106
+ striped?: boolean | undefined;
107
+ scrollable?: boolean | undefined;
108
+ key?: string | number | symbol | undefined;
109
+ ref?: import("vue").VNodeRef | undefined;
110
+ ref_for?: boolean | undefined;
111
+ ref_key?: string | undefined;
112
+ onVnodeBeforeMount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
113
+ [key: string]: any;
114
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
115
+ [key: string]: any;
116
+ }>) => void)[] | undefined;
117
+ onVnodeMounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
118
+ [key: string]: any;
119
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
120
+ [key: string]: any;
121
+ }>) => void)[] | undefined;
122
+ onVnodeBeforeUpdate?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
123
+ [key: string]: any;
124
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
125
+ [key: string]: any;
126
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
127
+ [key: string]: any;
128
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
129
+ [key: string]: any;
130
+ }>) => void)[] | undefined;
131
+ onVnodeUpdated?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
132
+ [key: string]: any;
133
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
134
+ [key: string]: any;
135
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
136
+ [key: string]: any;
137
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
138
+ [key: string]: any;
139
+ }>) => void)[] | undefined;
140
+ onVnodeBeforeUnmount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
141
+ [key: string]: any;
142
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
143
+ [key: string]: any;
144
+ }>) => void)[] | undefined;
145
+ onVnodeUnmounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
146
+ [key: string]: any;
147
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
148
+ [key: string]: any;
149
+ }>) => void)[] | undefined;
150
+ class?: unknown;
151
+ style?: unknown;
152
+ "onUpdate:sort"?: ((...args: any[]) => any) | undefined;
153
+ "onClick-row"?: ((...args: any[]) => any) | undefined;
154
+ };
155
+ expose(exposed: {}): void;
156
+ attrs: any;
157
+ slots: Partial<Record<string, (_: {
158
+ item: T;
159
+ }) => any>>;
160
+ emit: (event: "update:sort" | "click-row", ...args: any[]) => void;
161
+ }, "slots" | "attrs" | "emit"> | undefined, __VLS_setup?: {
162
+ props: {
163
+ sort?: string[] | undefined;
164
+ loading?: boolean | undefined;
165
+ items?: T[] | undefined;
166
+ fixed?: boolean | undefined;
167
+ pointer?: boolean | undefined;
168
+ dense?: boolean | undefined;
169
+ stickyHeader?: boolean | undefined;
170
+ headers?: TableHeader[] | undefined;
171
+ striped?: boolean | undefined;
172
+ scrollable?: boolean | undefined;
173
+ key?: string | number | symbol | undefined;
174
+ ref?: import("vue").VNodeRef | undefined;
175
+ ref_for?: boolean | undefined;
176
+ ref_key?: string | undefined;
177
+ onVnodeBeforeMount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
178
+ [key: string]: any;
179
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
180
+ [key: string]: any;
181
+ }>) => void)[] | undefined;
182
+ onVnodeMounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
183
+ [key: string]: any;
184
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
185
+ [key: string]: any;
186
+ }>) => void)[] | undefined;
187
+ onVnodeBeforeUpdate?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
188
+ [key: string]: any;
189
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
190
+ [key: string]: any;
191
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
192
+ [key: string]: any;
193
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
194
+ [key: string]: any;
195
+ }>) => void)[] | undefined;
196
+ onVnodeUpdated?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
197
+ [key: string]: any;
198
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
199
+ [key: string]: any;
200
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
201
+ [key: string]: any;
202
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
203
+ [key: string]: any;
204
+ }>) => void)[] | undefined;
205
+ onVnodeBeforeUnmount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
206
+ [key: string]: any;
207
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
208
+ [key: string]: any;
209
+ }>) => void)[] | undefined;
210
+ onVnodeUnmounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
211
+ [key: string]: any;
212
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
213
+ [key: string]: any;
214
+ }>) => void)[] | undefined;
215
+ class?: unknown;
216
+ style?: unknown;
217
+ "onUpdate:sort"?: ((...args: any[]) => any) | undefined;
218
+ "onClick-row"?: ((...args: any[]) => any) | undefined;
219
+ };
220
+ expose(exposed: {}): void;
221
+ attrs: any;
222
+ slots: Partial<Record<string, (_: {
223
+ item: T;
224
+ }) => any>>;
225
+ emit: (event: "update:sort" | "click-row", ...args: any[]) => void;
226
+ }) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
227
+ [key: string]: any;
228
+ }> & {
229
+ __ctx?: {
230
+ props: {
231
+ sort?: string[] | undefined;
232
+ loading?: boolean | undefined;
233
+ items?: T[] | undefined;
234
+ fixed?: boolean | undefined;
235
+ pointer?: boolean | undefined;
236
+ dense?: boolean | undefined;
237
+ stickyHeader?: boolean | undefined;
238
+ headers?: TableHeader[] | undefined;
239
+ striped?: boolean | undefined;
240
+ scrollable?: boolean | undefined;
241
+ key?: string | number | symbol | undefined;
242
+ ref?: import("vue").VNodeRef | undefined;
243
+ ref_for?: boolean | undefined;
244
+ ref_key?: string | undefined;
245
+ onVnodeBeforeMount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
246
+ [key: string]: any;
247
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
248
+ [key: string]: any;
249
+ }>) => void)[] | undefined;
250
+ onVnodeMounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
251
+ [key: string]: any;
252
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
253
+ [key: string]: any;
254
+ }>) => void)[] | undefined;
255
+ onVnodeBeforeUpdate?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
256
+ [key: string]: any;
257
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
258
+ [key: string]: any;
259
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
260
+ [key: string]: any;
261
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
262
+ [key: string]: any;
263
+ }>) => void)[] | undefined;
264
+ onVnodeUpdated?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
265
+ [key: string]: any;
266
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
267
+ [key: string]: any;
268
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
269
+ [key: string]: any;
270
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
271
+ [key: string]: any;
272
+ }>) => void)[] | undefined;
273
+ onVnodeBeforeUnmount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
274
+ [key: string]: any;
275
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
276
+ [key: string]: any;
277
+ }>) => void)[] | undefined;
278
+ onVnodeUnmounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
279
+ [key: string]: any;
280
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
281
+ [key: string]: any;
282
+ }>) => void)[] | undefined;
283
+ class?: unknown;
284
+ style?: unknown;
285
+ "onUpdate:sort"?: ((...args: any[]) => any) | undefined;
286
+ "onClick-row"?: ((...args: any[]) => any) | undefined;
287
+ };
288
+ expose(exposed: {}): void;
289
+ attrs: any;
290
+ slots: Partial<Record<string, (_: {
291
+ item: T;
292
+ }) => any>>;
293
+ emit: (event: "update:sort" | "click-row", ...args: any[]) => void;
294
+ } | undefined;
295
+ };
78
296
  export default _default;
@@ -0,0 +1,147 @@
1
+ import { defineComponent as N, openBlock as s, createElementBlock as a, createElementVNode as T, normalizeStyle as x, unref as i, normalizeClass as g, createVNode as f, withCtx as u, Fragment as d, renderList as c, createBlock as m, createTextVNode as v, toDisplayString as b, renderSlot as H, createCommentVNode as S } from "vue";
2
+ import { useTheme as V } from "../../composables/theme.js";
3
+ import z from "./TableHead.js";
4
+ import X from "./TableHeader.vue.js";
5
+ import h from "./TableBody.js";
6
+ import E from "./TableRow.vue.js";
7
+ import D from "./TableCell.vue.js";
8
+ import F from "../spinner/Spinner.vue.js";
9
+ import I from "./Table.theme.js";
10
+ const L = { class: "w-full overflow-x-auto" }, P = {
11
+ headers: {
12
+ type: Array,
13
+ default: () => []
14
+ },
15
+ items: {
16
+ type: Array,
17
+ default: () => []
18
+ },
19
+ sort: {
20
+ type: Array,
21
+ default: () => []
22
+ },
23
+ loading: Boolean,
24
+ dense: Boolean,
25
+ fixed: Boolean,
26
+ striped: Boolean,
27
+ pointer: Boolean,
28
+ scrollable: {
29
+ type: Boolean,
30
+ default: !0
31
+ },
32
+ stickyHeader: {
33
+ type: Boolean,
34
+ default: !0
35
+ }
36
+ }, W = { name: "XTable" }, Z = /* @__PURE__ */ N({
37
+ ...W,
38
+ props: {
39
+ ...P,
40
+ items: {
41
+ type: Array,
42
+ default: () => []
43
+ }
44
+ },
45
+ emits: ["update:sort", "click-row"],
46
+ setup(p, { emit: B }) {
47
+ const y = p;
48
+ function $(t, r) {
49
+ if (t)
50
+ for (let e = 0; e < r.length; e++) {
51
+ const { 0: l, 1: o } = r[e].split(",");
52
+ if (t === l)
53
+ return parseInt(o) > 0 ? 1 : -1;
54
+ }
55
+ }
56
+ function _(t) {
57
+ const r = y.sort.slice(0);
58
+ let e = !1;
59
+ for (let l = 0; l < r.length; l++) {
60
+ const { 0: o, 1: n } = r[l].split(",");
61
+ if (o === t.value) {
62
+ if (e = !0, n === "-1") {
63
+ r.splice(l, 1, `${t.value},1`);
64
+ break;
65
+ } else if (n === "1") {
66
+ r.splice(l, 1);
67
+ break;
68
+ }
69
+ }
70
+ }
71
+ e || r.push(`${t.value},-1`), B("update:sort", r);
72
+ }
73
+ function w(t, r) {
74
+ if (!r)
75
+ return "";
76
+ const e = Array.isArray(r) ? r : r.match(/([^[.\]])+/g);
77
+ return (e == null ? void 0 : e.reduce((o, n) => o && o[n], t)) ?? "";
78
+ }
79
+ const { styles: C, classes: k, className: A } = V("table", I, y);
80
+ return (t, r) => (s(), a("div", L, [
81
+ T("table", {
82
+ style: x(i(C)),
83
+ class: g([
84
+ i(A),
85
+ i(k).wrapper
86
+ ])
87
+ }, [
88
+ f(i(z), null, {
89
+ default: u(() => [
90
+ (s(!0), a(d, null, c(t.headers, (e, l) => (s(), m(X, {
91
+ key: l,
92
+ "sticky-header": t.stickyHeader,
93
+ "text-align": e.align,
94
+ sort: $(e.value, t.sort),
95
+ sortable: e.sortable,
96
+ width: e.width,
97
+ onClick: (o) => e.sortable ? _(e) : null
98
+ }, {
99
+ default: u(() => [
100
+ v(b(e.text), 1)
101
+ ]),
102
+ _: 2
103
+ }, 1032, ["sticky-header", "text-align", "sort", "sortable", "width", "onClick"]))), 128))
104
+ ]),
105
+ _: 1
106
+ }),
107
+ f(i(h), null, {
108
+ default: u(() => [
109
+ (s(!0), a(d, null, c(p.items, (e, l) => (s(), m(E, {
110
+ key: l,
111
+ pointer: t.pointer,
112
+ striped: t.striped,
113
+ onClick: (o) => t.$emit("click-row", e)
114
+ }, {
115
+ default: u(() => [
116
+ (s(!0), a(d, null, c(t.headers, (o, n) => (s(), m(D, {
117
+ key: n,
118
+ "text-align": o.align,
119
+ dense: t.dense,
120
+ fixed: t.fixed
121
+ }, {
122
+ default: u(() => [
123
+ H(t.$slots, `item-${o.value}`, { item: e }, () => [
124
+ v(b(w(e, o.value)), 1)
125
+ ])
126
+ ]),
127
+ _: 2
128
+ }, 1032, ["text-align", "dense", "fixed"]))), 128))
129
+ ]),
130
+ _: 2
131
+ }, 1032, ["pointer", "striped", "onClick"]))), 128))
132
+ ]),
133
+ _: 3
134
+ }),
135
+ t.loading ? (s(), a("div", {
136
+ key: 0,
137
+ class: g(i(k).loadingWrapper)
138
+ }, [
139
+ f(F, { size: "lg" })
140
+ ], 2)) : S("", !0)
141
+ ], 6)
142
+ ]));
143
+ }
144
+ });
145
+ export {
146
+ Z as default
147
+ };
@@ -0,0 +1,4 @@
1
+ import f from "./Table.vue.js";
2
+ export {
3
+ f as default
4
+ };
@@ -1,2 +1,2 @@
1
- declare const _default: import("vue").DefineComponent<{}, () => JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
1
+ declare const _default: import("vue").DefineComponent<{}, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}>;
2
2
  export default _default;