@indielayer/ui 2.0.0 → 2.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 (326) hide show
  1. package/docs/App.vue +19 -4
  2. package/docs/assets/css/tailwind.css +7 -1
  3. package/docs/components/Cookies.vue +3 -1
  4. package/docs/components/common/CodePreview.vue +1 -1
  5. package/docs/components/common/DocsCopyPage.vue +200 -0
  6. package/docs/components/common/DocumentPage.vue +76 -23
  7. package/docs/components/toolbar/ToolbarColorToggle.vue +29 -18
  8. package/docs/components/toolbar/ToolbarSearch.vue +4 -4
  9. package/docs/composables/useDocMeta.ts +63 -4
  10. package/docs/icons.ts +3 -0
  11. package/docs/main.ts +25 -26
  12. package/docs/pages/component/accordion/index.vue +2 -2
  13. package/docs/pages/component/alert/index.vue +2 -2
  14. package/docs/pages/component/avatar/index.vue +4 -4
  15. package/docs/pages/component/badge/index.vue +2 -2
  16. package/docs/pages/component/breadcrumbs/index.vue +2 -2
  17. package/docs/pages/component/button/button-group.vue +3 -3
  18. package/docs/pages/component/button/index.vue +14 -7
  19. package/docs/pages/component/button/tooltip.vue +10 -0
  20. package/docs/pages/component/card/index.vue +2 -2
  21. package/docs/pages/component/carousel/index.vue +2 -2
  22. package/docs/pages/component/checkbox/index.vue +5 -5
  23. package/docs/pages/component/container/index.vue +2 -2
  24. package/docs/pages/component/datepicker/index.vue +2 -2
  25. package/docs/pages/component/divider/index.vue +4 -4
  26. package/docs/pages/component/drawer/index.vue +2 -2
  27. package/docs/pages/component/empty/index.vue +3 -3
  28. package/docs/pages/component/form/index.vue +2 -2
  29. package/docs/pages/component/formGroup/index.vue +2 -2
  30. package/docs/pages/component/infiniteLoader/index.vue +3 -3
  31. package/docs/pages/component/input/index.vue +5 -5
  32. package/docs/pages/component/inputGroup/index.vue +3 -3
  33. package/docs/pages/component/inputGroup/validation.vue +6 -1
  34. package/docs/pages/component/link/index.vue +2 -2
  35. package/docs/pages/component/loader/index.vue +2 -2
  36. package/docs/pages/component/menu/index.vue +2 -2
  37. package/docs/pages/component/modal/index.vue +3 -3
  38. package/docs/pages/component/notifications/index.vue +2 -2
  39. package/docs/pages/component/pagination/index.vue +2 -2
  40. package/docs/pages/component/popover/index.vue +2 -2
  41. package/docs/pages/component/popover/usage.vue +14 -0
  42. package/docs/pages/component/progress/index.vue +3 -3
  43. package/docs/pages/component/qrCode/index.vue +2 -2
  44. package/docs/pages/component/radio/index.vue +3 -3
  45. package/docs/pages/component/scroll/index.vue +3 -3
  46. package/docs/pages/component/select/index.vue +5 -5
  47. package/docs/pages/component/skeleton/index.vue +2 -2
  48. package/docs/pages/component/slider/index.vue +2 -2
  49. package/docs/pages/component/spacer/index.vue +2 -2
  50. package/docs/pages/component/spinner/index.vue +3 -3
  51. package/docs/pages/component/table/index.vue +4 -4
  52. package/docs/pages/component/tabs/index.vue +2 -2
  53. package/docs/pages/component/tabs/usage.vue +26 -0
  54. package/docs/pages/component/tag/index.vue +2 -2
  55. package/docs/pages/component/textarea/index.vue +4 -4
  56. package/docs/pages/component/toggle/index.vue +4 -4
  57. package/docs/pages/component/upload/index.vue +2 -2
  58. package/docs/pages/component/upload/usage.vue +1 -0
  59. package/docs/pages/component/virtualGrid/index.vue +2 -2
  60. package/docs/pages/component/virtualList/index.vue +3 -3
  61. package/docs/pages/icons.vue +2 -2
  62. package/docs/router/index.ts +39 -44
  63. package/docs/search/components.json +1 -1
  64. package/docs/search/index.json +1 -1
  65. package/lib/common/buttonGroupRadius.d.ts +3 -0
  66. package/lib/common/buttonGroupRadius.js +6 -0
  67. package/lib/common/props.d.ts +1 -1
  68. package/lib/common/props.js +10 -9
  69. package/lib/components/accordion/Accordion.vue.d.ts +42 -9
  70. package/lib/components/accordion/Accordion.vue_vue_type_script_setup_true_lang.js +18 -6
  71. package/lib/components/accordion/AccordionItem.vue.d.ts +33 -6
  72. package/lib/components/accordion/AccordionItem.vue_vue_type_script_setup_true_lang.js +31 -6
  73. package/lib/components/alert/Alert.vue.d.ts +27 -6
  74. package/lib/components/alert/Alert.vue_vue_type_script_setup_true_lang.js +20 -6
  75. package/lib/components/avatar/Avatar.vue.d.ts +45 -9
  76. package/lib/components/avatar/Avatar.vue_vue_type_script_setup_true_lang.js +17 -6
  77. package/lib/components/badge/Badge.vue.d.ts +54 -9
  78. package/lib/components/badge/Badge.vue_vue_type_script_setup_true_lang.js +26 -9
  79. package/lib/components/breadcrumbs/Breadcrumbs.vue.d.ts +30 -6
  80. package/lib/components/breadcrumbs/Breadcrumbs.vue_vue_type_script_setup_true_lang.js +13 -5
  81. package/lib/components/button/Button.js +2 -2
  82. package/lib/components/button/Button.vue.d.ts +138 -28
  83. package/lib/components/button/Button.vue_vue_type_script_setup_true_lang.js +192 -70
  84. package/lib/components/button/ButtonGroup.js +4 -5
  85. package/lib/components/button/ButtonGroup.vue.d.ts +54 -10
  86. package/lib/components/button/ButtonGroup.vue_vue_type_script_setup_true_lang.js +30 -19
  87. package/lib/components/button/theme/Button.base.theme.js +6 -5
  88. package/lib/components/button/theme/Button.carbon.theme.js +6 -5
  89. package/lib/components/card/Card.vue.d.ts +3 -0
  90. package/lib/components/card/Card.vue_vue_type_script_setup_true_lang.js +4 -2
  91. package/lib/components/carousel/Carousel.vue.d.ts +21 -3
  92. package/lib/components/carousel/Carousel.vue_vue_type_script_setup_true_lang.js +23 -5
  93. package/lib/components/carousel/CarouselSlide.js +2 -2
  94. package/lib/components/carousel/CarouselSlide.vue.d.ts +3 -0
  95. package/lib/components/carousel/CarouselSlide.vue_vue_type_script_setup_true_lang.js +3 -1
  96. package/lib/components/carousel/{CarouselSlide.vue_vue_type_style_index_0_scoped_e90d2127_lang.module.js → CarouselSlide.vue_vue_type_style_index_0_scoped_4f559831_lang.module.js} +1 -1
  97. package/lib/components/checkbox/Checkbox.vue.d.ts +198 -45
  98. package/lib/components/checkbox/Checkbox.vue_vue_type_script_setup_true_lang.js +20 -3
  99. package/lib/components/container/Container.vue.d.ts +6 -0
  100. package/lib/components/container/Container.vue_vue_type_script_setup_true_lang.js +5 -2
  101. package/lib/components/datepicker/Datepicker.vue.d.ts +462 -36
  102. package/lib/components/datepicker/Datepicker.vue_vue_type_script_setup_true_lang.js +294 -153
  103. package/lib/components/divider/Divider.vue.d.ts +12 -3
  104. package/lib/components/divider/Divider.vue_vue_type_script_setup_true_lang.js +6 -2
  105. package/lib/components/drawer/Drawer.vue.d.ts +39 -6
  106. package/lib/components/drawer/Drawer.vue_vue_type_script_setup_true_lang.js +30 -7
  107. package/lib/components/empty/Empty.vue.d.ts +30 -6
  108. package/lib/components/empty/Empty.vue_vue_type_script_setup_true_lang.js +17 -4
  109. package/lib/components/form/Form.vue.d.ts +48 -9
  110. package/lib/components/form/Form.vue_vue_type_script_setup_true_lang.js +34 -7
  111. package/lib/components/formGroup/FormGroup.vue.d.ts +171 -39
  112. package/lib/components/formGroup/FormGroup.vue_vue_type_script_setup_true_lang.js +15 -9
  113. package/lib/components/icon/Icon.vue.d.ts +9 -0
  114. package/lib/components/icon/Icon.vue_vue_type_script_setup_true_lang.js +6 -3
  115. package/lib/components/image/Image.vue.d.ts +12 -3
  116. package/lib/components/image/Image.vue_vue_type_script_setup_true_lang.js +5 -1
  117. package/lib/components/index.js +18 -18
  118. package/lib/components/input/Input.vue.d.ts +291 -66
  119. package/lib/components/input/Input.vue_vue_type_script_setup_true_lang.js +53 -15
  120. package/lib/components/inputFooter/InputFooter.vue.d.ts +48 -12
  121. package/lib/components/inputFooter/InputFooter.vue_vue_type_script_setup_true_lang.js +18 -5
  122. package/lib/components/inputGroup/InputGroup.vue.d.ts +171 -39
  123. package/lib/components/inputGroup/InputGroup.vue_vue_type_script_setup_true_lang.js +6 -1
  124. package/lib/components/label/Label.vue.d.ts +78 -18
  125. package/lib/components/label/Label.vue_vue_type_script_setup_true_lang.js +28 -8
  126. package/lib/components/link/Link.js +2 -2
  127. package/lib/components/link/Link.vue.d.ts +18 -3
  128. package/lib/components/link/Link.vue_vue_type_script_setup_true_lang.js +10 -5
  129. package/lib/components/loader/Loader.vue.d.ts +30 -6
  130. package/lib/components/loader/Loader.vue_vue_type_script_setup_true_lang.js +11 -3
  131. package/lib/components/menu/Menu.vue.d.ts +51 -9
  132. package/lib/components/menu/Menu.vue_vue_type_script_setup_true_lang.js +24 -8
  133. package/lib/components/menu/MenuItem.js +2 -2
  134. package/lib/components/menu/MenuItem.vue.d.ts +198 -45
  135. package/lib/components/menu/MenuItem.vue_vue_type_script_setup_true_lang.js +84 -23
  136. package/lib/components/menu/{MenuItem.vue_vue_type_style_index_0_scoped_2a6b7341_lang.module.js → MenuItem.vue_vue_type_style_index_0_scoped_5aebaff3_lang.module.js} +1 -1
  137. package/lib/components/modal/Modal.vue.d.ts +177 -39
  138. package/lib/components/modal/Modal.vue_vue_type_script_setup_true_lang.js +104 -23
  139. package/lib/components/notifications/Notifications.vue.d.ts +24 -0
  140. package/lib/components/notifications/Notifications.vue_vue_type_script_setup_true_lang.js +39 -12
  141. package/lib/components/pagination/Pagination.vue.d.ts +12 -0
  142. package/lib/components/pagination/Pagination.vue_vue_type_script_setup_true_lang.js +8 -4
  143. package/lib/components/pagination/PaginationItem.vue.d.ts +18 -3
  144. package/lib/components/pagination/PaginationItem.vue_vue_type_script_setup_true_lang.js +8 -3
  145. package/lib/components/popover/Popover.vue.d.ts +204 -45
  146. package/lib/components/popover/Popover.vue_vue_type_script_setup_true_lang.js +157 -66
  147. package/lib/components/popover/PopoverContainer.vue.d.ts +3 -0
  148. package/lib/components/popover/PopoverContainer.vue_vue_type_script_setup_true_lang.js +3 -1
  149. package/lib/components/popover/PopoverContentBoundary.js +5 -0
  150. package/lib/components/popover/PopoverContentBoundary.vue.d.ts +9 -0
  151. package/lib/components/popover/PopoverContentBoundary.vue_vue_type_script_setup_true_lang.js +18 -0
  152. package/lib/components/popover/theme/PopoverContainer.base.theme.js +1 -1
  153. package/lib/components/progress/Progress.vue.d.ts +9 -0
  154. package/lib/components/progress/Progress.vue_vue_type_script_setup_true_lang.js +7 -4
  155. package/lib/components/qrCode/QrCode.vue.d.ts +24 -3
  156. package/lib/components/qrCode/QrCode.vue_vue_type_script_setup_true_lang.js +13 -5
  157. package/lib/components/radio/Radio.vue.d.ts +186 -42
  158. package/lib/components/radio/Radio.vue_vue_type_script_setup_true_lang.js +10 -2
  159. package/lib/components/radioButton/RadioButton.vue.d.ts +186 -42
  160. package/lib/components/radioButton/RadioButton.vue_vue_type_script_setup_true_lang.js +9 -1
  161. package/lib/components/scroll/Scroll.vue.d.ts +3 -0
  162. package/lib/components/scroll/Scroll.vue_vue_type_script_setup_true_lang.js +9 -4
  163. package/lib/components/select/Select.vue.d.ts +633 -144
  164. package/lib/components/select/Select.vue_vue_type_script_setup_true_lang.js +224 -189
  165. package/lib/components/skeleton/Skeleton.vue.d.ts +6 -0
  166. package/lib/components/skeleton/Skeleton.vue_vue_type_script_setup_true_lang.js +5 -2
  167. package/lib/components/slider/Slider.js +1 -1
  168. package/lib/components/slider/Slider.vue.d.ts +180 -39
  169. package/lib/components/slider/Slider.vue_vue_type_script_setup_true_lang.js +14 -3
  170. package/lib/components/spinner/Spinner.vue.d.ts +6 -0
  171. package/lib/components/spinner/Spinner.vue_vue_type_script_setup_true_lang.js +3 -1
  172. package/lib/components/stepper/Stepper.vue.d.ts +120 -24
  173. package/lib/components/stepper/Stepper.vue_vue_type_script_setup_true_lang.js +63 -15
  174. package/lib/components/tab/Tab.vue.d.ts +112 -31
  175. package/lib/components/tab/Tab.vue_vue_type_script_setup_true_lang.js +166 -95
  176. package/lib/components/tab/TabGroup.vue.d.ts +47 -12
  177. package/lib/components/tab/TabGroup.vue_vue_type_script_setup_true_lang.js +93 -49
  178. package/lib/components/tab/theme/Tab.base.theme.js +6 -6
  179. package/lib/components/tab/theme/Tab.carbon.theme.js +6 -6
  180. package/lib/components/tab/theme/TabGroup.base.theme.js +7 -7
  181. package/lib/components/tab/theme/TabGroup.carbon.theme.js +3 -3
  182. package/lib/components/table/Table.vue.d.ts +45 -9
  183. package/lib/components/table/Table.vue_vue_type_script_setup_true_lang.js +82 -27
  184. package/lib/components/table/TableCell.vue.d.ts +54 -12
  185. package/lib/components/table/TableCell.vue_vue_type_script_setup_true_lang.js +23 -8
  186. package/lib/components/table/TableHead.vue_vue_type_script_setup_true_lang.js +2 -1
  187. package/lib/components/table/TableHeader.vue.d.ts +18 -3
  188. package/lib/components/table/TableHeader.vue_vue_type_script_setup_true_lang.js +10 -4
  189. package/lib/components/table/TableRow.vue.d.ts +15 -3
  190. package/lib/components/table/TableRow.vue_vue_type_script_setup_true_lang.js +10 -5
  191. package/lib/components/tag/Tag.vue.d.ts +33 -6
  192. package/lib/components/tag/Tag.vue_vue_type_script_setup_true_lang.js +21 -7
  193. package/lib/components/textarea/Textarea.vue.d.ts +237 -54
  194. package/lib/components/textarea/Textarea.vue_vue_type_script_setup_true_lang.js +38 -13
  195. package/lib/components/themeProvider/ThemeProvider.vue.d.ts +10 -4
  196. package/lib/components/themeProvider/ThemeProvider.vue_vue_type_script_setup_true_lang.js +6 -1
  197. package/lib/components/toggle/Toggle.vue.d.ts +174 -39
  198. package/lib/components/toggle/Toggle.vue_vue_type_script_setup_true_lang.js +5 -1
  199. package/lib/components/tooltip/ToggleTip.vue.d.ts +24 -6
  200. package/lib/components/tooltip/ToggleTip.vue_vue_type_script_setup_true_lang.js +9 -2
  201. package/lib/components/tooltip/Tooltip.vue.d.ts +30 -6
  202. package/lib/components/tooltip/Tooltip.vue_vue_type_script_setup_true_lang.js +16 -4
  203. package/lib/components/upload/Upload.vue.d.ts +249 -57
  204. package/lib/components/upload/Upload.vue_vue_type_script_setup_true_lang.js +156 -125
  205. package/lib/components/upload/fileAccept.d.ts +6 -0
  206. package/lib/components/upload/fileAccept.js +17 -0
  207. package/lib/composables/useColors.d.ts +1 -0
  208. package/lib/composables/useColors.js +2 -1
  209. package/lib/composables/useCommon.d.ts +1 -0
  210. package/lib/composables/useCommon.js +2 -1
  211. package/lib/composables/useFocusTrap.js +1 -1
  212. package/lib/composables/useInputtable.d.ts +45 -10
  213. package/lib/composables/useInputtable.js +56 -14
  214. package/lib/composables/useInteractive.d.ts +13 -3
  215. package/lib/composables/useInteractive.js +14 -4
  216. package/lib/index.js +12 -12
  217. package/lib/index.umd.js +9 -10
  218. package/lib/themes/base/styles.d.ts +1 -1
  219. package/lib/themes/base/styles.js +1 -1
  220. package/lib/themes/carbon/styles.d.ts +1 -1
  221. package/lib/themes/carbon/styles.js +1 -1
  222. package/lib/version.d.ts +1 -1
  223. package/lib/version.js +1 -1
  224. package/lib/virtual/components/infiniteLoader/InfiniteLoader.vue.d.ts +27 -16
  225. package/lib/virtual/components/infiniteLoader/InfiniteLoader.vue_vue_type_script_setup_true_lang.js +25 -5
  226. package/lib/virtual/components/virtualGrid/VirtualGrid.vue.d.ts +108 -86
  227. package/lib/virtual/components/virtualGrid/VirtualGrid.vue_vue_type_script_setup_true_lang.js +91 -21
  228. package/lib/virtual/components/virtualList/VirtualList.vue.d.ts +62 -48
  229. package/lib/virtual/components/virtualList/VirtualList.vue_vue_type_script_setup_true_lang.js +64 -13
  230. package/lib/virtual/components/virtualList/useDynamicRowHeight.js +4 -3
  231. package/package.json +5 -3
  232. package/src/common/buttonGroupRadius.ts +16 -0
  233. package/src/common/props.ts +10 -9
  234. package/src/components/accordion/Accordion.vue +20 -4
  235. package/src/components/accordion/AccordionItem.vue +28 -3
  236. package/src/components/alert/Alert.vue +22 -6
  237. package/src/components/avatar/Avatar.vue +20 -5
  238. package/src/components/badge/Badge.vue +24 -5
  239. package/src/components/breadcrumbs/Breadcrumbs.vue +15 -5
  240. package/src/components/button/Button.vue +140 -5
  241. package/src/components/button/ButtonGroup.vue +41 -25
  242. package/src/components/button/__tests__/ Button.spec.ts +41 -0
  243. package/src/components/button/__tests__/ ButtonGroup.spec.ts +32 -0
  244. package/src/components/button/theme/Button.base.theme.ts +4 -1
  245. package/src/components/button/theme/Button.carbon.theme.ts +5 -4
  246. package/src/components/card/Card.vue +10 -2
  247. package/src/components/carousel/Carousel.vue +22 -2
  248. package/src/components/carousel/CarouselSlide.vue +6 -0
  249. package/src/components/checkbox/Checkbox.vue +22 -3
  250. package/src/components/container/Container.vue +10 -1
  251. package/src/components/datepicker/Datepicker.vue +466 -101
  252. package/src/components/datepicker/__tests__/Datepicker.spec.ts +31 -0
  253. package/src/components/divider/Divider.vue +9 -3
  254. package/src/components/drawer/Drawer.vue +27 -2
  255. package/src/components/empty/Empty.vue +18 -3
  256. package/src/components/form/Form.vue +32 -3
  257. package/src/components/formGroup/FormGroup.vue +12 -0
  258. package/src/components/icon/Icon.vue +4 -1
  259. package/src/components/image/Image.vue +8 -2
  260. package/src/components/input/Input.vue +54 -12
  261. package/src/components/inputFooter/InputFooter.vue +21 -6
  262. package/src/components/inputGroup/InputGroup.vue +12 -1
  263. package/src/components/label/Label.vue +31 -7
  264. package/src/components/link/Link.vue +16 -5
  265. package/src/components/loader/Loader.vue +10 -2
  266. package/src/components/menu/Menu.vue +23 -5
  267. package/src/components/menu/MenuItem.vue +78 -17
  268. package/src/components/modal/Modal.vue +90 -15
  269. package/src/components/notifications/Notifications.vue +23 -0
  270. package/src/components/notifications/__tests__/Notifications.spec.ts +44 -4
  271. package/src/components/pagination/Pagination.vue +9 -1
  272. package/src/components/pagination/PaginationItem.vue +11 -2
  273. package/src/components/popover/Popover.vue +113 -18
  274. package/src/components/popover/PopoverContainer.vue +9 -1
  275. package/src/components/popover/PopoverContentBoundary.vue +32 -0
  276. package/src/components/popover/__tests__/Popover.spec.ts +51 -0
  277. package/src/components/popover/theme/PopoverContainer.base.theme.ts +1 -1
  278. package/src/components/progress/Progress.vue +8 -3
  279. package/src/components/qrCode/QrCode.vue +9 -1
  280. package/src/components/radio/Radio.vue +16 -2
  281. package/src/components/radioButton/RadioButton.vue +15 -1
  282. package/src/components/scroll/Scroll.vue +15 -4
  283. package/src/components/select/Select.vue +53 -16
  284. package/src/components/skeleton/Skeleton.vue +3 -0
  285. package/src/components/slider/Slider.vue +15 -0
  286. package/src/components/spinner/Spinner.vue +2 -0
  287. package/src/components/stepper/Stepper.vue +57 -9
  288. package/src/components/tab/Tab.vue +153 -63
  289. package/src/components/tab/TabGroup.vue +110 -26
  290. package/src/components/tab/__tests__/Tab.spec.ts +53 -0
  291. package/src/components/tab/__tests__/TabGroup.spec.ts +113 -0
  292. package/src/components/tab/theme/Tab.base.theme.ts +24 -2
  293. package/src/components/tab/theme/Tab.carbon.theme.ts +30 -7
  294. package/src/components/tab/theme/TabGroup.base.theme.ts +12 -9
  295. package/src/components/tab/theme/TabGroup.carbon.theme.ts +6 -2
  296. package/src/components/table/Table.vue +76 -19
  297. package/src/components/table/TableCell.vue +25 -6
  298. package/src/components/table/TableHead.vue +9 -2
  299. package/src/components/table/TableHeader.vue +16 -3
  300. package/src/components/table/TableRow.vue +17 -5
  301. package/src/components/tag/Tag.vue +22 -6
  302. package/src/components/textarea/Textarea.vue +40 -11
  303. package/src/components/themeProvider/ThemeProvider.vue +22 -7
  304. package/src/components/toggle/Toggle.vue +9 -1
  305. package/src/components/tooltip/ToggleTip.vue +12 -3
  306. package/src/components/tooltip/Tooltip.vue +19 -3
  307. package/src/components/upload/Upload.vue +46 -16
  308. package/src/components/upload/__tests__/fileAccept.spec.ts +39 -0
  309. package/src/components/upload/fileAccept.ts +29 -0
  310. package/src/composables/useColors.ts +1 -0
  311. package/src/composables/useCommon.ts +1 -0
  312. package/src/composables/useFocusTrap.ts +3 -1
  313. package/src/composables/useInputtable.ts +66 -10
  314. package/src/composables/useInteractive.ts +13 -3
  315. package/src/themes/base/styles.ts +2 -3
  316. package/src/themes/carbon/styles.ts +2 -3
  317. package/src/version.ts +1 -1
  318. package/src/virtual/components/infiniteLoader/InfiniteLoader.vue +33 -1
  319. package/src/virtual/components/virtualGrid/VirtualGrid.vue +104 -10
  320. package/src/virtual/components/virtualList/VirtualList.vue +73 -8
  321. package/src/virtual/components/virtualList/useDynamicRowHeight.ts +9 -2
  322. package/volar.d.ts +3 -0
  323. package/docs/layouts/simple.vue +0 -5
  324. package/lib/components/button/ButtonGroup.vue_vue_type_style_index_0_lang.module.js +0 -7
  325. /package/lib/components/button/{Button.vue_vue_type_style_index_0_scoped_4402fde2_lang.module.js → Button.vue_vue_type_style_index_0_scoped_486cb9c0_lang.module.js} +0 -0
  326. /package/lib/components/link/{Link.vue_vue_type_style_index_0_scoped_8e0e4d08_lang.module.js → Link.vue_vue_type_style_index_0_scoped_3ee61e03_lang.module.js} +0 -0
package/docs/main.ts CHANGED
@@ -1,8 +1,7 @@
1
- import { createApp } from 'vue'
2
- import { createHead } from '@unhead/vue/client'
1
+ import { ViteSSG } from 'vite-ssg'
3
2
  import UI, { BaseTheme } from '@indielayer/ui'
4
3
  import App from './App.vue'
5
- import router from './router'
4
+ import { routes, scrollBehavior } from './router'
6
5
  import icons from './icons'
7
6
 
8
7
  // global components
@@ -12,32 +11,32 @@ import MultiSnippet from './components/common/MultiSnippet.vue'
12
11
  import CodePreview from './components/common/CodePreview.vue'
13
12
  import DocumentPage from './components/common/DocumentPage.vue'
14
13
  import DocsHero from './components/common/DocsHero.vue'
14
+ import DocsCopyPage from './components/common/DocsCopyPage.vue'
15
15
 
16
16
  // css
17
17
  import './assets/css/tailwind.css'
18
18
 
19
- const app = createApp(App)
20
- const head = createHead()
21
-
22
- app.use(head)
23
- app.use(UI, {
24
- prefix: 'X',
25
- icons,
26
- theme: BaseTheme,
27
- defaults: {
28
- // Empty: {
29
- // bordered: true,
30
- // },
19
+ export const createApp = ViteSSG(
20
+ App,
21
+ {
22
+ routes,
23
+ scrollBehavior,
24
+ base: import.meta.env.BASE_URL,
31
25
  },
32
- })
33
-
34
- app.use(router)
26
+ ({ app }) => {
27
+ app.use(UI, {
28
+ prefix: 'X',
29
+ icons,
30
+ theme: BaseTheme,
31
+ defaults: {},
32
+ })
35
33
 
36
- app.component('CopyButton', CopyButton)
37
- app.component('CodeSnippet', CodeSnippet)
38
- app.component('MultiSnippet', MultiSnippet)
39
- app.component('CodePreview', CodePreview)
40
- app.component('DocumentPage', DocumentPage)
41
- app.component('DocsHero', DocsHero)
42
-
43
- app.mount('#app')
34
+ app.component('CopyButton', CopyButton)
35
+ app.component('CodeSnippet', CodeSnippet)
36
+ app.component('MultiSnippet', MultiSnippet)
37
+ app.component('CodePreview', CodePreview)
38
+ app.component('DocumentPage', DocumentPage)
39
+ app.component('DocsHero', DocsHero)
40
+ app.component('DocsCopyPage', DocsCopyPage)
41
+ },
42
+ )
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Accordion'
7
- const description = 'Accordion is a component that allows you to collapse and expand content.'
7
+ const description = 'Collapsible panels for showing and hiding related content. Use x-accordion with x-accordion-item when space is limited and users need progressive disclosure.'
8
8
  const components = [XAccordion, XAccordionItem]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Alert'
7
- const description = 'Alerts are used to communicate a state that affects a system, feature or page.'
7
+ const description = 'Inline notices for system, feature, or page status—success, warning, error, or info. Use alerts when the message should stay visible until addressed.'
8
8
  const components = [XAlert]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -8,21 +8,21 @@ import SizeDemoCode from './size.vue?raw'
8
8
  import SizeDemo from './size.vue'
9
9
 
10
10
  const title = 'Avatar'
11
- const description = 'Avatars are used to represent a user.'
11
+ const description = 'Displays a user\'s photo, initials, or icon in a compact frame. Use avatars in lists, headers, and comments to identify people at a glance.'
12
12
  const components = [XAvatar]
13
13
  const demos = [{
14
14
  name: 'Usage',
15
- description: '',
15
+ description: 'Basic example with common props.',
16
16
  code: UsageDemoCode,
17
17
  component: UsageDemo,
18
18
  }, {
19
19
  name: 'Variants',
20
- description: '',
20
+ description: 'Color and style variants.',
21
21
  code: VariantsDemoCode,
22
22
  component: VariantsDemo,
23
23
  }, {
24
24
  name: 'Size',
25
- description: '',
25
+ description: 'Size options from xs to lg.',
26
26
  code: SizeDemoCode,
27
27
  component: SizeDemo,
28
28
  }]
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Badge'
7
- const description = 'Badges are used to display a small amount of information.'
7
+ const description = 'Small status indicators that overlay or sit beside another element—counts, labels, or presence dots. Use badges to draw attention without interrupting the layout.'
8
8
  const components = [XBadge]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Breadcrumbs'
7
- const description = 'Breadcrumbs are used to indicate the current page\'s location within a navigational hierarchy.'
7
+ const description = 'Shows the current page\'s place in a navigational hierarchy. Use breadcrumbs for deep page trees so users can jump back to parent sections.'
8
8
  const components = [XBreadcrumbs]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -10,9 +10,9 @@
10
10
  <x-button>right</x-button>
11
11
  </x-button-group>
12
12
  <x-button-group color="primary" light outlined>
13
- <x-button icon="edit"/>
14
- <x-button icon="code"/>
15
- <x-button icon="smile"/>
13
+ <x-button icon="edit" tooltip="Edit" />
14
+ <x-button icon="code" tooltip="Code" />
15
+ <x-button icon="smile" tooltip="Smile" />
16
16
  </x-button-group>
17
17
  <x-button-group color="indigo" outlined disabled>
18
18
  <x-button>left</x-button>
@@ -6,6 +6,8 @@ import VariantsDemoCode from './variants.vue?raw'
6
6
  import VariantsDemo from './variants.vue'
7
7
  import IconsDemoCode from './icons.vue?raw'
8
8
  import IconsDemo from './icons.vue'
9
+ import TooltipDemoCode from './tooltip.vue?raw'
10
+ import TooltipDemo from './tooltip.vue'
9
11
  import ButtonGroupDemoCode from './button-group.vue?raw'
10
12
  import ButtonGroupDemo from './button-group.vue'
11
13
  import SizeDemoCode from './size.vue?raw'
@@ -14,36 +16,41 @@ import StatesDemoCode from './states.vue?raw'
14
16
  import StatesDemo from './states.vue'
15
17
 
16
18
  const title = 'Button'
17
- const description = 'Buttons allow users to perform actions and make choices with a single click. They are commonly used for submitting forms, opening dialogs or menus, and executing commands. Buttons can be customized with different styles, sizes, and icons to fit various use cases.'
19
+ const description = 'Clickable controls for primary actions—submit, open dialogs, or run commands. Customize style, size, and icons; group related actions with x-button-group.'
18
20
  const components = [XButton, XButtonGroup]
19
21
  const demos = [{
20
22
  name: 'Usage',
21
- description: '',
23
+ description: 'Basic example with common props.',
22
24
  code: UsageDemoCode,
23
25
  component: UsageDemo,
24
26
  }, {
25
27
  name: 'Variants',
26
- description: '',
28
+ description: 'Color and style variants.',
27
29
  code: VariantsDemoCode,
28
30
  component: VariantsDemo,
29
31
  }, {
30
32
  name: 'Icons',
31
- description: '',
33
+ description: 'Leading, trailing, and icon-only buttons.',
32
34
  code: IconsDemoCode,
33
35
  component: IconsDemo,
36
+ }, {
37
+ name: 'Tooltip',
38
+ description: 'Buttons with hover tooltips.',
39
+ code: TooltipDemoCode,
40
+ component: TooltipDemo,
34
41
  }, {
35
42
  name: 'Size',
36
- description: '',
43
+ description: 'Size options from xs to lg.',
37
44
  code: SizeDemoCode,
38
45
  component: SizeDemo,
39
46
  }, {
40
47
  name: 'Button Group',
41
- description: '',
48
+ description: 'Joined buttons sharing a common group layout.',
42
49
  code: ButtonGroupDemoCode,
43
50
  component: ButtonGroupDemo,
44
51
  }, {
45
52
  name: 'States',
46
- description: '',
53
+ description: 'Disabled, loading, and other interactive states.',
47
54
  code: StatesDemoCode,
48
55
  component: StatesDemo,
49
56
  }]
@@ -0,0 +1,10 @@
1
+ <template>
2
+ <div class="flex flex-wrap items-center gap-4">
3
+ <x-button icon="check" tooltip="Save your changes" />
4
+ <x-button ghost icon="smile" tooltip="More options" />
5
+ <x-button icon="heart" tooltip="Favorite" tooltip-position="bottom" />
6
+ <x-button tooltip="Delete this item" tooltip-position="right">
7
+ Delete
8
+ </x-button>
9
+ </div>
10
+ </template>
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Card'
7
- const description = 'Cards are used to display content in an organized manner.'
7
+ const description = 'A bordered content container for grouping related information, media, and actions. Use cards in grids and dashboards when each block should stand alone.'
8
8
  const components = [XCard]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Carousel'
7
- const description = 'A carousel is a rotating set of images.'
7
+ const description = 'A sliding viewport for cycling through images or content panels. Use carousels for galleries and featured items when horizontal space is limited.'
8
8
  const components = [XCarousel]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -10,26 +10,26 @@ import StatesDemoCode from './states.vue?raw'
10
10
  import StatesDemo from './states.vue'
11
11
 
12
12
  const title = 'Checkbox'
13
- const description = 'Checkboxes enable users to select one or multiple options from a list. They are ideal for toggling settings or making selections where more than one choice is allowed. Each checkbox can be checked or unchecked independently.'
13
+ const description = 'Multi-select controls for choosing one or more options independently. Use checkboxes for settings and lists where more than one choice can be active.'
14
14
  const components = [XCheckbox]
15
15
  const demos = [{
16
16
  name: 'Usage',
17
- description: '',
17
+ description: 'Basic example with common props.',
18
18
  code: UsageDemoCode,
19
19
  component: UsageDemo,
20
20
  }, {
21
21
  name: 'Variants',
22
- description: '',
22
+ description: 'Color and style variants.',
23
23
  code: VariantsDemoCode,
24
24
  component: VariantsDemo,
25
25
  }, {
26
26
  name: 'Size',
27
- description: '',
27
+ description: 'Size options from xs to lg.',
28
28
  code: SizeDemoCode,
29
29
  component: SizeDemo,
30
30
  }, {
31
31
  name: 'States',
32
- description: '',
32
+ description: 'Disabled, indeterminate, and other interactive states.',
33
33
  code: StatesDemoCode,
34
34
  component: StatesDemo,
35
35
  }]
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Container'
7
- const description = 'Containers provide a flexible layout element for grouping and organizing content. They help structure pages by controlling width, alignment, and spacing, ensuring consistent presentation across different sections.'
7
+ const description = 'Layout wrapper that constrains content width and alignment for consistent page structure. Use containers to center and pad main content across breakpoints.'
8
8
  const components = [XContainer]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Datepicker'
7
- const description = 'The datepicker component is used to select a date or time.'
7
+ const description = 'Date and time picker styled as a wrapper around @vuepic/vue-datepicker. Use it for forms that need calendar or datetime selection with Indielayer look and feel.'
8
8
  const components = [XDatepicker]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -8,21 +8,21 @@ import VerticalDemoCode from './vertical.vue?raw'
8
8
  import VerticalDemo from './vertical.vue'
9
9
 
10
10
  const title = 'Divider'
11
- const description = 'Dividers are used to separate content.'
11
+ const description = 'A horizontal or vertical rule that separates sections of content. Use dividers in lists, toolbars, and layouts to create clear visual breaks.'
12
12
  const components = [XDivider]
13
13
  const demos = [{
14
14
  name: 'Usage',
15
- description: '',
15
+ description: 'Basic horizontal divider between content.',
16
16
  code: UsageDemoCode,
17
17
  component: UsageDemo,
18
18
  }, {
19
19
  name: 'Label',
20
- description: '',
20
+ description: 'Divider with a centered or inline label.',
21
21
  code: LabelDemoCode,
22
22
  component: LabelDemo,
23
23
  }, {
24
24
  name: 'Vertical',
25
- description: '',
25
+ description: 'Vertical divider for side-by-side layouts.',
26
26
  code: VerticalDemoCode,
27
27
  component: VerticalDemo,
28
28
  }]
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Drawer'
7
- const description = 'Drawers slide in from the edge of the screen to present navigation, options, or additional content without disrupting the main view. They are ideal for menus, filters, or contextual panels.'
7
+ const description = 'Panels that slide in from the screen edge for navigation, filters, or extra content. Use drawers when side context should overlay without leaving the page.'
8
8
  const components = [XDrawer]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -12,17 +12,17 @@ const description = 'Empty states communicate when there is no content to show.
12
12
  const components = [XEmpty]
13
13
  const demos = [{
14
14
  name: 'Usage',
15
- description: '',
15
+ description: 'Title, description, and optional icon for empty content.',
16
16
  code: UsageDemoCode,
17
17
  component: UsageDemo,
18
18
  }, {
19
19
  name: 'Actions',
20
- description: '',
20
+ description: 'Empty state with call-to-action buttons.',
21
21
  code: ActionsDemoCode,
22
22
  component: ActionsDemo,
23
23
  }, {
24
24
  name: 'Bordered',
25
- description: '',
25
+ description: 'Empty state inside a bordered container.',
26
26
  code: BorderedDemoCode,
27
27
  component: BorderedDemo,
28
28
  }]
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Form'
7
- const description = 'Forms provide a structured way to collect and validate user input, such as text, selections, and files. They support features like validation, grouping, and submission handling, making it easy to build interactive and accessible data entry interfaces.'
7
+ const description = 'Structured form wrapper for collecting and validating user input. Use x-form to group fields, run validation, and handle submit in one place.'
8
8
  const components = [XForm]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'FormGroup'
7
- const description = 'Form groups organize related form elements together, providing structure and shared validation. They help group checkboxes, radio buttons, or inputs that belong to the same logical section.'
7
+ const description = 'Groups related fields with a shared label and validation context. Use form groups for checkboxes, radios, or inputs that belong to one logical section.'
8
8
  const components = [XFormGroup]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -6,16 +6,16 @@ import ComposableDemoCode from './composable.vue?raw'
6
6
  import ComposableDemo from './composable.vue'
7
7
 
8
8
  const title = 'InfiniteLoader'
9
- const description = 'InfiniteLoader is a component that allows you to load data on demand as users scroll through a list.'
9
+ const description = 'Loads more list items as the user scrolls near the end of a container. Use InfiniteLoader for feeds and catalogs that grow on demand.'
10
10
  const components = [XInfiniteLoader]
11
11
  const demos = [{
12
12
  name: 'Usage',
13
- description: '',
13
+ description: 'Scroll to load more items as you reach the end.',
14
14
  code: UsageDemoCode,
15
15
  component: UsageDemo,
16
16
  }, {
17
17
  name: 'Composable',
18
- description: '',
18
+ description: 'Using the infinite-loader composable API.',
19
19
  code: ComposableDemoCode,
20
20
  component: ComposableDemo,
21
21
  }]
@@ -10,26 +10,26 @@ import SizeDemoCode from './size.vue?raw'
10
10
  import SizeDemo from './size.vue'
11
11
 
12
12
  const title = 'Input'
13
- const description = 'This is a text input component that allows users to enter and edit text.'
13
+ const description = 'Single-line text field for entering and editing short values. Use x-input in forms for names, emails, search, and other one-line data.'
14
14
  const components = [XInput]
15
15
  const demos = [{
16
16
  name: 'Usage',
17
- description: '',
17
+ description: 'Basic example with common props.',
18
18
  code: UsageDemoCode,
19
19
  component: UsageDemo,
20
20
  }, {
21
21
  name: 'Variants',
22
- description: '',
22
+ description: 'Color and style variants.',
23
23
  code: VariantsDemoCode,
24
24
  component: VariantsDemo,
25
25
  }, {
26
26
  name: 'Size',
27
- description: '',
27
+ description: 'Size options from xs to lg.',
28
28
  code: SizeDemoCode,
29
29
  component: SizeDemo,
30
30
  }, {
31
31
  name: 'States',
32
- description: '',
32
+ description: 'Disabled, loading, and other interactive states.',
33
33
  code: StatesDemoCode,
34
34
  component: StatesDemo,
35
35
  }]
@@ -12,17 +12,17 @@ const description = 'Input groups combine multiple inline fields (Input, Textare
12
12
  const components = [XInputGroup]
13
13
  const demos = [{
14
14
  name: 'Usage',
15
- description: '',
15
+ description: 'Basic example with common props.',
16
16
  code: UsageDemoCode,
17
17
  component: UsageDemo,
18
18
  }, {
19
19
  name: 'Mixed',
20
- description: '',
20
+ description: 'Mixing inputs, selects, and buttons in one group.',
21
21
  code: MixedDemoCode,
22
22
  component: MixedDemo,
23
23
  }, {
24
24
  name: 'Validation',
25
- description: '',
25
+ description: 'Shared validation and footer messaging.',
26
26
  code: ValidationDemoCode,
27
27
  component: ValidationDemo,
28
28
  }]
@@ -23,7 +23,12 @@ const rules = {
23
23
  helper="Select date and time"
24
24
  :rules="[rules.required]"
25
25
  >
26
- <x-datepicker v-model="start" placeholder="Date" :enable-time-picker="false" />
26
+ <x-datepicker
27
+ v-model="start"
28
+ teleport="body"
29
+ placeholder="Date"
30
+ :enable-time-picker="false"
31
+ />
27
32
  <x-input v-model="end" type="time" placeholder="Time" />
28
33
  </x-input-group>
29
34
  </div>
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Link'
7
- const description = 'Links are used to navigate to a different page.'
7
+ const description = 'Styled anchor for navigating to another page or external URL. Use x-link when you need consistent link styling, external indicators, and accessibility.'
8
8
  const components = [XLink]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Loader'
7
- const description = 'Loader component is used to show a loading state.'
7
+ const description = 'Full-area loading overlay that blocks interaction while content or an action completes. Use Loader when the whole region should wait before continuing.'
8
8
  const components = [XLoader]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Menu'
7
- const description = 'Menus are used to display a list of options.'
7
+ const description = 'Dropdown list of actionable items triggered from a button or other control. Use x-menu with x-menu-item for contextual actions and navigation.'
8
8
  const components = [XMenu, XMenuItem]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -6,16 +6,16 @@ import ComposedDemoCode from './composed.vue?raw'
6
6
  import ComposedDemo from './composed.vue'
7
7
 
8
8
  const title = 'Modal'
9
- const description = 'Modals are used to display content on top of the current page.'
9
+ const description = 'Dialog overlay that focuses attention on a task or message above the current page. Use modals for confirmations, forms, and details that need temporary focus.'
10
10
  const components = [XModal]
11
11
  const demos = [{
12
12
  name: 'Usage',
13
- description: '',
13
+ description: 'Basic example with common props.',
14
14
  code: UsageDemoCode,
15
15
  component: UsageDemo,
16
16
  }, {
17
17
  name: 'Composed',
18
- description: '',
18
+ description: 'Modal with header, body, and footer slots.',
19
19
  code: ComposedDemoCode,
20
20
  component: ComposedDemo,
21
21
  }]
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Notifications'
7
- const description = 'Notifications provide timely feedback or alerts to users, such as success messages, warnings, or errors. They help keep users informed about important events or actions.'
7
+ const description = 'Toast-style feedback for success, warning, or error after an action. Use notifications for transient messages that should not block the page.'
8
8
  const components = [XNotifications]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Pagination'
7
- const description = 'Pagination divides large sets of content into manageable pages, allowing users to navigate through items efficiently. It is commonly used in tables, lists, and search results to improve usability and performance.'
7
+ const description = 'Controls for moving through large result sets page by page. Use pagination with tables, lists, and search results to keep each view manageable.'
8
8
  const components = [XPagination]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]
@@ -4,11 +4,11 @@ import UsageDemoCode from './usage.vue?raw'
4
4
  import UsageDemo from './usage.vue'
5
5
 
6
6
  const title = 'Popover'
7
- const description = 'Popovers display additional information or interactive content in a floating overlay, anchored to a trigger element. They are useful for tooltips, menus, or contextual actions without navigating away from the current view.'
7
+ const description = 'Floating panel anchored to a trigger for extra content or actions. Use popovers for menus and contextual UI without leaving the current view.'
8
8
  const components = [XPopover, XPopoverContainer]
9
9
  const demos = [{
10
10
  name: 'Usage',
11
- description: '',
11
+ description: 'Basic example with common props.',
12
12
  code: UsageDemoCode,
13
13
  component: UsageDemo,
14
14
  }]