@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
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2022 - Indielayer
3
+ Copyright (c) 2023 - Indielayer
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
 
5
5
  <p>
6
- <a href="https://github.com/indielayer/ui/actions/workflows/build.yml"><img src="https://github.com/indielayer/ui/actions/workflows/build.yml/badge.svg?branch=main&event=push" alt="ci"></a>
6
+ <a href="https://github.com/indielayer/ui/actions/workflows/release_production.yml"><img src="https://github.com/indielayer/ui/actions/workflows/release_production.yml/badge.svg?branch=main&event=push" alt="ci"></a>
7
7
  <a href="https://www.npmjs.com/package/@indielayer/ui"><img src="https://badgen.net/npm/dm/@indielayer/ui" alt="Downloads"></a>
8
8
  <a href="https://www.npmjs.com/package/@indielayer/ui"><img src="https://badgen.net/npm/v/@indielayer/ui/latest" alt="Version"></a>
9
9
  <a href="https://www.npmjs.com/package/@indielayer/ui"><img src="https://badgen.net/npm/license/@indielayer/ui" alt="License"></a>
@@ -40,4 +40,4 @@ The documentation is located inside [/packages/docs](./packages/docs)
40
40
 
41
41
  [MIT](./LICENSE)
42
42
 
43
- Copyright (c) 2022, Indielayer
43
+ Copyright (c) 2023, Indielayer
@@ -6,7 +6,7 @@ export default defineNuxtModule({
6
6
  name: '@indielayer/ui',
7
7
  configKey: 'indielayer',
8
8
  compatibility: {
9
- nuxt: '^3.0.0-rc.1',
9
+ nuxt: '^3.0.0',
10
10
  },
11
11
  },
12
12
  defaults: {
@@ -2,7 +2,7 @@ import { defineNuxtPlugin } from '#app'
2
2
  import create from '../src/create'
3
3
 
4
4
  export default defineNuxtPlugin((nuxtApp) => {
5
- const UI = create(nuxtApp.$config.indielayerOptions)
5
+ const UI = create(nuxtApp.$config.public?.indielayerOptions)
6
6
 
7
7
  nuxtApp.vueApp.use(UI)
8
8
  })
@@ -0,0 +1,9 @@
1
+ const s = (t, e) => {
2
+ const o = t.__vccOpts || t;
3
+ for (const [r, c] of e)
4
+ o[r] = c;
5
+ return o;
6
+ };
7
+ export {
8
+ s as default
9
+ };
@@ -0,0 +1,18 @@
1
+ const c = '<path d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" />', n = '<path d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z" />', o = '<path d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" />', t = '<path d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z" />', a = '<path d="M6 18L18 6M6 6l12 12" />', h = '<path d="M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z" />', M = '<path d="M13 7l5 5m0 0l-5 5m5-5H6" />', s = '<path d="M15 12a3 3 0 11-6 0 3 3 0 016 0z" /><path d="M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z" />', l = '<path d="M13.875 18.825A10.05 10.05 0 0112 19c-4.478 0-8.268-2.943-9.543-7a9.97 9.97 0 011.563-3.029m5.858.908a3 3 0 114.243 4.243M9.878 9.878l4.242 4.242M9.88 9.88l-3.29-3.29m7.532 7.532l3.29 3.29M3 3l3.59 3.59m0 0A9.953 9.953 0 0112 5c4.478 0 8.268 2.943 9.543 7a10.025 10.025 0 01-4.132 5.411m0 0L21 21" />', p = '<path d="M5 12h.01M12 12h.01M19 12h.01M6 12a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0z" />', e = '<path d="M15 19l-7-7 7-7" />', d = '<path d="M9 5l7 7-7 7" />', I = '<path d="M5 13l4 4L19 7" />', m = '<path d="M8 9l4-4 4 4m0 6l-4 4-4-4" />', r = '<line x1="7" y1="17" x2="17" y2="7" /><polyline points="7 7 17 7 17 17" />';
2
+ export {
3
+ M as arrowRightIcon,
4
+ h as avatarIcon,
5
+ I as checkIcon,
6
+ m as chevronDownIcon,
7
+ a as closeIcon,
8
+ p as dotsIcon,
9
+ o as errorIcon,
10
+ r as externalIcon,
11
+ s as eyeIcon,
12
+ l as eyeVisibleIcon,
13
+ c as infoIcon,
14
+ d as nextIcon,
15
+ e as prevIcon,
16
+ n as successIcon,
17
+ t as warningIcon
18
+ };
@@ -1,3 +1,6 @@
1
+ export declare const isObject: (val: unknown) => val is object;
2
+ export declare const isArray: (val: unknown) => val is [];
3
+ export declare const isFunction: (val: unknown) => val is Function;
1
4
  /**
2
5
  * Deeply unref a value, recursing into objects and arrays.
3
6
  *
@@ -30,3 +33,4 @@ export declare const unrefArray: any;
30
33
  * @return {Object}
31
34
  */
32
35
  export declare const unrefObject: (obj: any) => any;
36
+ export declare const mergeRightDeep: (source?: any, target?: any) => any;
@@ -0,0 +1,25 @@
1
+ import { isRef as o, unref as f } from "vue";
2
+ const s = (n) => n !== null && typeof n == "object", p = (n) => Array.isArray(n), h = (n) => typeof n == "function", b = (n) => {
3
+ const e = o(n) ? f(n) : n;
4
+ return s(e) ? p(e) ? j(e) : m(e) : e;
5
+ }, i = (n) => n !== null && !o(n) && typeof n == "object" ? b(n) : f(n), j = (n) => n.map(i), m = (n) => {
6
+ const e = {};
7
+ return Object.keys(n).forEach((t) => {
8
+ e[t] = i(n[t]);
9
+ }), e;
10
+ }, d = (n = {}, e = {}) => {
11
+ const t = Object.keys(n), u = Object.keys(e), c = { ...n };
12
+ return u.forEach((r) => {
13
+ t.includes(r) && s(n[r]) && s(e[r]) ? c[r] = d(n[r], e[r]) : c[r] = e[r];
14
+ }), c;
15
+ };
16
+ export {
17
+ b as deepUnref,
18
+ p as isArray,
19
+ h as isFunction,
20
+ s as isObject,
21
+ d as mergeRightDeep,
22
+ i as smartUnref,
23
+ j as unrefArray,
24
+ m as unrefObject
25
+ };
@@ -1,8 +1,10 @@
1
- import type { ThemeParams } from '../../composables/theme';
2
- declare const _default: {
3
- classes: {
4
- wrapper: string;
5
- };
6
- styles: ({ props, colors, css }: ThemeParams) => (string | object)[];
7
- };
8
- export default _default;
1
+ import type { ThemeClasses, ThemeComponent } from '../../composables/theme';
2
+ import type { AlertProps } from './Alert.vue';
3
+ type InternalClasses = 'wrapper';
4
+ interface InternalTheme extends ThemeComponent<AlertProps, InternalClasses> {
5
+ }
6
+ export interface AlertTheme extends Omit<InternalTheme, 'classes'> {
7
+ classes?: Partial<ThemeClasses<AlertProps, InternalClasses>>;
8
+ }
9
+ declare const theme: InternalTheme;
10
+ export default theme;
@@ -0,0 +1,41 @@
1
+ const l = {
2
+ classes: {
3
+ wrapper: "flex items-center rounded-md space-x-2 px-4 py-2 border"
4
+ },
5
+ styles: ({ props: t, colors: n, css: a }) => {
6
+ const e = n.getPalette(t.color), r = [];
7
+ return t.glow && r.push(a.get("glow", n.getColorOpacity(e[500], 0.5))), t.color ? (t.light ? r.push(a.variables({
8
+ bg: e[50],
9
+ text: e[600],
10
+ icon: e[600],
11
+ border: t.outlined ? e[600] : e[50],
12
+ dark: {
13
+ bg: e[200],
14
+ text: e[800],
15
+ icon: e[600],
16
+ border: t.outlined ? e[500] : e[200]
17
+ }
18
+ })) : r.push(a.variables({
19
+ bg: t.outlined ? "transparent" : e[600],
20
+ text: t.outlined ? e[600] : e[50],
21
+ icon: t.outlined ? e[600] : e[50],
22
+ border: e[600],
23
+ dark: {
24
+ border: e[400],
25
+ text: t.outlined ? e[400] : e[50]
26
+ }
27
+ })), r) : (r.push(a.variables({
28
+ bg: "transparent",
29
+ text: e[500],
30
+ border: e[300],
31
+ dark: {
32
+ bg: "transparent",
33
+ text: e[300],
34
+ border: e[500]
35
+ }
36
+ })), r);
37
+ }
38
+ }, o = l;
39
+ export {
40
+ o as default
41
+ };
@@ -1,20 +1,37 @@
1
- import { type PropType } from 'vue';
2
- declare const _default: import("vue").DefineComponent<{
3
- type: PropType<"success" | "warning" | "error" | "info" | undefined>;
1
+ import { type ExtractPublicPropTypes, type PropType } from 'vue';
2
+ declare const alertType: readonly ["info", "success", "error", "warning"];
3
+ declare const alertProps: {
4
+ type: PropType<"error" | "success" | "warning" | "info">;
4
5
  glow: BooleanConstructor;
5
6
  light: BooleanConstructor;
6
7
  outlined: BooleanConstructor;
7
8
  removable: BooleanConstructor;
9
+ closeLabel: StringConstructor;
10
+ color: {
11
+ readonly type: StringConstructor;
12
+ readonly default: string | undefined;
13
+ };
14
+ };
15
+ export type AlertType = typeof alertType[number];
16
+ export type AlertProps = ExtractPublicPropTypes<typeof alertProps>;
17
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
18
+ type: PropType<"error" | "success" | "warning" | "info">;
19
+ glow: BooleanConstructor;
20
+ light: BooleanConstructor;
21
+ outlined: BooleanConstructor;
22
+ removable: BooleanConstructor;
23
+ closeLabel: StringConstructor;
8
24
  color: {
9
25
  readonly type: StringConstructor;
10
26
  readonly default: string | undefined;
11
27
  };
12
28
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "remove"[], "remove", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
13
- type: PropType<"success" | "warning" | "error" | "info" | undefined>;
29
+ type: PropType<"error" | "success" | "warning" | "info">;
14
30
  glow: BooleanConstructor;
15
31
  light: BooleanConstructor;
16
32
  outlined: BooleanConstructor;
17
33
  removable: BooleanConstructor;
34
+ closeLabel: StringConstructor;
18
35
  color: {
19
36
  readonly type: StringConstructor;
20
37
  readonly default: string | undefined;
@@ -22,10 +39,19 @@ declare const _default: import("vue").DefineComponent<{
22
39
  }>> & {
23
40
  onRemove?: ((...args: any[]) => any) | undefined;
24
41
  }, {
25
- glow: boolean;
26
- light: boolean;
42
+ color: string;
27
43
  outlined: boolean;
44
+ light: boolean;
45
+ glow: boolean;
28
46
  removable: boolean;
29
- color: string;
47
+ }, {}>, {
48
+ icon?(_: {}): any;
49
+ default?(_: {}): any;
50
+ removeIcon?(_: {}): any;
30
51
  }>;
31
52
  export default _default;
53
+ type __VLS_WithTemplateSlots<T, S> = T & {
54
+ new (): {
55
+ $slots: S;
56
+ };
57
+ };
@@ -0,0 +1,9 @@
1
+ import s from "./Alert.vue2.js";
2
+ import o from "./Alert.vue3.js";
3
+ import t from "../../_virtual/_plugin-vue_export-helper.js";
4
+ const r = {
5
+ $style: o
6
+ }, f = /* @__PURE__ */ t(s, [["__cssModules", r]]);
7
+ export {
8
+ f as default
9
+ };
@@ -0,0 +1,62 @@
1
+ import { defineComponent as v, computed as g, openBlock as l, createElementBlock as a, normalizeStyle as k, unref as r, normalizeClass as w, renderSlot as t, createBlock as b, createCommentVNode as i, createElementVNode as n, Fragment as B, createVNode as $ } from "vue";
2
+ import { useColors as I } from "../../composables/colors.js";
3
+ import { useTheme as h } from "../../composables/theme.js";
4
+ import { infoIcon as C, successIcon as N, errorIcon as S, warningIcon as V, closeIcon as z } from "../../common/icons.js";
5
+ import c from "../icon/Icon.vue.js";
6
+ import E from "./Alert.theme.js";
7
+ const L = /* @__PURE__ */ n("div", { class: "flex-grow" }, null, -1), T = ["aria-label"], _ = ["info", "success", "error", "warning"], A = {
8
+ ...I.props(),
9
+ type: String,
10
+ glow: Boolean,
11
+ light: Boolean,
12
+ outlined: Boolean,
13
+ removable: Boolean,
14
+ closeLabel: String
15
+ }, F = {
16
+ name: "XAlert",
17
+ validators: {
18
+ type: _
19
+ }
20
+ }, H = /* @__PURE__ */ v({
21
+ ...F,
22
+ props: A,
23
+ emits: ["remove"],
24
+ setup(m) {
25
+ const o = m, p = g(() => o.type === "info" ? C : o.type === "success" ? N : o.type === "error" ? S : o.type === "warning" ? V : ""), { styles: u, classes: f, className: d } = h("alert", E, o);
26
+ return (e, s) => (l(), a("div", {
27
+ style: k(r(u)),
28
+ class: w([
29
+ r(d),
30
+ e.$style.alert,
31
+ e.glow ? e.$style["alert--glow"] : "",
32
+ r(f).wrapper
33
+ ])
34
+ }, [
35
+ t(e.$slots, "icon", {}, () => [
36
+ e.type ? (l(), b(c, {
37
+ key: 0,
38
+ icon: p.value,
39
+ class: "text-[color:var(--x-alert-icon)] dark:text-[color:var(--x-alert-dark-icon)]"
40
+ }, null, 8, ["icon"])) : i("", !0)
41
+ ]),
42
+ n("div", null, [
43
+ t(e.$slots, "default")
44
+ ]),
45
+ e.removable ? (l(), a(B, { key: 0 }, [
46
+ L,
47
+ n("button", {
48
+ class: "shrink-0",
49
+ "aria-label": e.closeLabel,
50
+ onClick: s[0] || (s[0] = (y) => e.$emit("remove", y))
51
+ }, [
52
+ t(e.$slots, "removeIcon", {}, () => [
53
+ $(c, { icon: r(z) }, null, 8, ["icon"])
54
+ ])
55
+ ], 8, T)
56
+ ], 64)) : i("", !0)
57
+ ], 6));
58
+ }
59
+ });
60
+ export {
61
+ H as default
62
+ };
@@ -0,0 +1,8 @@
1
+ const l = "_alert_rqxly_2", t = {
2
+ alert: l,
3
+ "alert--glow": "_alert--glow_rqxly_1"
4
+ };
5
+ export {
6
+ l as alert,
7
+ t as default
8
+ };
@@ -0,0 +1,3 @@
1
+ export { default as XAlert } from './Alert.vue';
2
+ export type { AlertProps, AlertType } from './Alert.vue';
3
+ export type { AlertTheme } from './Alert.theme';
@@ -1,8 +1,14 @@
1
- import type { ThemeParams } from '../../composables/theme';
2
- declare const _default: {
3
- classes: {
4
- wrapper({ props }: ThemeParams): string[];
5
- };
6
- styles({ props, colors, css, data }: ThemeParams): Record<string, string>;
1
+ import type { Ref } from 'vue';
2
+ import type { ThemeClasses, ThemeComponent } from '../../composables/theme';
3
+ import type { AvatarProps } from './Avatar.vue';
4
+ type InternalClasses = 'wrapper';
5
+ type InternalExtraData = {
6
+ source: Ref<string | undefined>;
7
7
  };
8
- export default _default;
8
+ interface InternalTheme extends ThemeComponent<AvatarProps, InternalClasses, InternalExtraData> {
9
+ }
10
+ export interface AvatarTheme extends Omit<InternalTheme, 'classes'> {
11
+ classes?: Partial<ThemeClasses<AvatarProps, InternalClasses, InternalExtraData>>;
12
+ }
13
+ declare const theme: InternalTheme;
14
+ export default theme;
@@ -0,0 +1,25 @@
1
+ const n = {
2
+ classes: {
3
+ wrapper({ props: e }) {
4
+ const t = ["relative inline-flex items-center justify-center overflow-hidden align-middle border box-content"];
5
+ return t.push(e.rounded ? "rounded-full" : "rounded-md"), e.size === "xs" ? t.push("h-6 w-6 text-xs") : e.size === "sm" ? t.push("h-9 w-9 text-sm") : e.size === "lg" ? t.push("h-12 w-12 text-lg") : e.size === "xl" ? t.push("h-[3.75rem] w-[3.75rem] text-xl") : t.push("h-10 w-10"), t;
6
+ }
7
+ },
8
+ styles({ props: e, colors: t, css: r, data: l }) {
9
+ const s = t.getPalette(e.color);
10
+ return l.source ? r.variables({
11
+ bg: "transparent",
12
+ border: e.outlined ? s[500] : "transparent"
13
+ }) : r.variables({
14
+ bg: s[100],
15
+ text: s[500],
16
+ border: e.outlined ? s[500] : "transparent",
17
+ dark: {
18
+ bg: s[900]
19
+ }
20
+ });
21
+ }
22
+ }, i = n;
23
+ export {
24
+ i as default
25
+ };
@@ -1,4 +1,26 @@
1
- declare const _default: import("vue").DefineComponent<{
1
+ import { type ExtractPublicPropTypes } from 'vue';
2
+ declare const avatarProps: {
3
+ tag: {
4
+ type: StringConstructor;
5
+ default: string;
6
+ };
7
+ name: StringConstructor;
8
+ alt: StringConstructor;
9
+ image: StringConstructor;
10
+ outlined: BooleanConstructor;
11
+ rounded: BooleanConstructor;
12
+ color: {
13
+ readonly type: StringConstructor;
14
+ readonly default: string | undefined;
15
+ };
16
+ size: {
17
+ readonly type: import("vue").PropType<import("../../composables/common").Size>;
18
+ readonly default: "md";
19
+ readonly validator: (value: string) => boolean;
20
+ };
21
+ };
22
+ export type AvatarProps = ExtractPublicPropTypes<typeof avatarProps>;
23
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
2
24
  tag: {
3
25
  type: StringConstructor;
4
26
  default: string;
@@ -37,10 +59,17 @@ declare const _default: import("vue").DefineComponent<{
37
59
  readonly validator: (value: string) => boolean;
38
60
  };
39
61
  }>>, {
40
- size: import("../../composables/common").Size;
41
- outlined: boolean;
42
62
  color: string;
63
+ size: import("../../composables/common").Size;
43
64
  tag: string;
65
+ outlined: boolean;
44
66
  rounded: boolean;
67
+ }, {}>, {
68
+ avatarIcon?(_: {}): any;
45
69
  }>;
46
70
  export default _default;
71
+ type __VLS_WithTemplateSlots<T, S> = T & {
72
+ new (): {
73
+ $slots: S;
74
+ };
75
+ };
@@ -0,0 +1,9 @@
1
+ import s from "./Avatar.vue2.js";
2
+ import o from "./Avatar.vue3.js";
3
+ import t from "../../_virtual/_plugin-vue_export-helper.js";
4
+ const r = {
5
+ $style: o
6
+ }, f = /* @__PURE__ */ t(s, [["__cssModules", r]]);
7
+ export {
8
+ f as default
9
+ };
@@ -0,0 +1,76 @@
1
+ import { defineComponent as d, ref as f, computed as g, watch as v, openBlock as n, createBlock as y, resolveDynamicComponent as h, normalizeStyle as w, unref as r, normalizeClass as C, withCtx as S, createElementBlock as s, toDisplayString as _, renderSlot as k, createVNode as z, createCommentVNode as B } from "vue";
2
+ import { useCommon as i } from "../../composables/common.js";
3
+ import { useColors as I } from "../../composables/colors.js";
4
+ import { useTheme as N } from "../../composables/theme.js";
5
+ import { avatarIcon as $ } from "../../common/icons.js";
6
+ import D from "../icon/Icon.vue.js";
7
+ import V from "./Avatar.theme.js";
8
+ const b = ["alt", "src"], A = {
9
+ key: 1,
10
+ class: "leading-none"
11
+ }, E = {
12
+ ...i.props(),
13
+ ...I.props("primary"),
14
+ tag: {
15
+ type: String,
16
+ default: "div"
17
+ },
18
+ name: String,
19
+ alt: String,
20
+ image: String,
21
+ outlined: Boolean,
22
+ rounded: Boolean
23
+ }, P = {
24
+ name: "XAvatar",
25
+ validators: i.validators()
26
+ }, H = /* @__PURE__ */ d({
27
+ ...P,
28
+ props: E,
29
+ setup(l) {
30
+ const a = l, o = f(), m = g(() => {
31
+ if (a.name) {
32
+ const e = a.name.match(/\b\w/g) || [];
33
+ return ((e.shift() || "") + (e.pop() || "")).toUpperCase();
34
+ }
35
+ return "";
36
+ });
37
+ typeof window < "u" && Image && v(() => a.image, (e) => {
38
+ if (o.value = void 0, !e)
39
+ return;
40
+ const t = new Image();
41
+ t.onload = () => {
42
+ o.value = a.image;
43
+ }, t.onerror = () => {
44
+ }, t.src = e;
45
+ }, {
46
+ immediate: !0
47
+ });
48
+ const { styles: p, classes: c, className: u } = N("avatar", V, a, { source: o });
49
+ return (e, t) => (n(), y(h(e.tag), {
50
+ style: w(r(p)),
51
+ class: C([
52
+ r(u),
53
+ e.$style.avatar,
54
+ r(c).wrapper
55
+ ])
56
+ }, {
57
+ default: S(() => [
58
+ o.value ? (n(), s("img", {
59
+ key: 0,
60
+ alt: e.alt,
61
+ src: e.image,
62
+ class: "h-full w-full"
63
+ }, null, 8, b)) : e.name ? (n(), s("span", A, _(m.value), 1)) : e.name ? B("", !0) : k(e.$slots, "avatarIcon", { key: 2 }, () => [
64
+ z(D, {
65
+ size: e.size,
66
+ icon: r($)
67
+ }, null, 8, ["size", "icon"])
68
+ ])
69
+ ]),
70
+ _: 3
71
+ }, 8, ["style", "class"]));
72
+ }
73
+ });
74
+ export {
75
+ H as default
76
+ };
@@ -0,0 +1,7 @@
1
+ const a = "_avatar_7u83c_2", t = {
2
+ avatar: a
3
+ };
4
+ export {
5
+ a as avatar,
6
+ t as default
7
+ };
@@ -0,0 +1,3 @@
1
+ export { default as XAvatar } from './Avatar.vue';
2
+ export type { AvatarProps } from './Avatar.vue';
3
+ export type { AvatarTheme } from './Avatar.theme';
@@ -1,8 +1,10 @@
1
- import type { ThemeParams } from '../../composables/theme';
2
- declare const _default: {
3
- classes: {
4
- wrapper: string;
5
- };
6
- styles({ props, colors, css }: ThemeParams): string;
7
- };
8
- export default _default;
1
+ import type { ThemeClasses, ThemeComponent } from '../../composables/theme';
2
+ import type { BadgeProps } from './Badge.vue';
3
+ type InternalClasses = 'wrapper';
4
+ interface InternalTheme extends ThemeComponent<BadgeProps, InternalClasses> {
5
+ }
6
+ export interface BadgeTheme extends Omit<InternalTheme, 'classes'> {
7
+ classes?: Partial<ThemeClasses<BadgeProps, InternalClasses>>;
8
+ }
9
+ declare const theme: InternalTheme;
10
+ export default theme;
@@ -0,0 +1,12 @@
1
+ const l = {
2
+ classes: {
3
+ wrapper: "inline-block"
4
+ },
5
+ styles({ props: e, colors: t, css: o }) {
6
+ const s = t.getPalette(e.color);
7
+ return o.get("bg", s[500]);
8
+ }
9
+ }, c = l;
10
+ export {
11
+ c as default
12
+ };
@@ -1,5 +1,7 @@
1
- import { type PropType } from 'vue';
2
- declare const _default: import("vue").DefineComponent<{
1
+ import { type PropType, type ExtractPublicPropTypes } from 'vue';
2
+ declare const badgeAlign: readonly ["left", "right"];
3
+ declare const badgePosition: readonly ["top", "bottom"];
4
+ declare const badgeProps: {
3
5
  tag: {
4
6
  type: StringConstructor;
5
7
  default: string;
@@ -12,8 +14,43 @@ declare const _default: import("vue").DefineComponent<{
12
14
  type: PropType<"left" | "right">;
13
15
  default: string;
14
16
  };
15
- offsetX: (NumberConstructor | StringConstructor)[];
16
- offsetY: (NumberConstructor | StringConstructor)[];
17
+ offsetX: (StringConstructor | NumberConstructor)[];
18
+ offsetY: (StringConstructor | NumberConstructor)[];
19
+ animated: BooleanConstructor;
20
+ outlined: BooleanConstructor;
21
+ icon: StringConstructor;
22
+ show: {
23
+ type: BooleanConstructor;
24
+ default: boolean;
25
+ };
26
+ color: {
27
+ readonly type: StringConstructor;
28
+ readonly default: string | undefined;
29
+ };
30
+ size: {
31
+ readonly type: PropType<import("../../composables/common").Size>;
32
+ readonly default: "md";
33
+ readonly validator: (value: string) => boolean;
34
+ };
35
+ };
36
+ export type BadgePosition = typeof badgePosition[number];
37
+ export type BadgeAlign = typeof badgeAlign[number];
38
+ export type BadgeProps = ExtractPublicPropTypes<typeof badgeProps>;
39
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
40
+ tag: {
41
+ type: StringConstructor;
42
+ default: string;
43
+ };
44
+ position: {
45
+ type: PropType<"top" | "bottom">;
46
+ default: string;
47
+ };
48
+ align: {
49
+ type: PropType<"left" | "right">;
50
+ default: string;
51
+ };
52
+ offsetX: (StringConstructor | NumberConstructor)[];
53
+ offsetY: (StringConstructor | NumberConstructor)[];
17
54
  animated: BooleanConstructor;
18
55
  outlined: BooleanConstructor;
19
56
  icon: StringConstructor;
@@ -43,8 +80,8 @@ declare const _default: import("vue").DefineComponent<{
43
80
  type: PropType<"left" | "right">;
44
81
  default: string;
45
82
  };
46
- offsetX: (NumberConstructor | StringConstructor)[];
47
- offsetY: (NumberConstructor | StringConstructor)[];
83
+ offsetX: (StringConstructor | NumberConstructor)[];
84
+ offsetY: (StringConstructor | NumberConstructor)[];
48
85
  animated: BooleanConstructor;
49
86
  outlined: BooleanConstructor;
50
87
  icon: StringConstructor;
@@ -62,13 +99,21 @@ declare const _default: import("vue").DefineComponent<{
62
99
  readonly validator: (value: string) => boolean;
63
100
  };
64
101
  }>>, {
65
- size: import("../../composables/common").Size;
66
- outlined: boolean;
67
102
  color: string;
103
+ size: import("../../composables/common").Size;
104
+ align: "left" | "right";
68
105
  tag: string;
106
+ outlined: boolean;
69
107
  position: "top" | "bottom";
70
- align: "left" | "right";
71
108
  animated: boolean;
72
109
  show: boolean;
110
+ }, {}>, {
111
+ default?(_: {}): any;
112
+ content?(_: {}): any;
73
113
  }>;
74
114
  export default _default;
115
+ type __VLS_WithTemplateSlots<T, S> = T & {
116
+ new (): {
117
+ $slots: S;
118
+ };
119
+ };