@nuxt/ui 2.18.3 → 3.0.0-alpha.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 (383) hide show
  1. package/README.md +18 -1
  2. package/cli/commands/init.mjs +83 -0
  3. package/cli/index.mjs +15 -0
  4. package/cli/package.json +13 -0
  5. package/cli/templates.mjs +171 -0
  6. package/cli/utils.mjs +17 -0
  7. package/dist/module.d.mts +10 -26
  8. package/dist/module.d.ts +10 -26
  9. package/dist/module.json +3 -3
  10. package/dist/module.mjs +2620 -152
  11. package/dist/runtime/assets/css/animations.css +1 -0
  12. package/dist/runtime/components/Accordion.vue +67 -0
  13. package/dist/runtime/components/Accordion.vue.d.ts +492 -0
  14. package/dist/runtime/components/Alert.vue +78 -0
  15. package/dist/runtime/components/Alert.vue.d.ts +548 -0
  16. package/dist/runtime/components/App.vue +32 -0
  17. package/dist/runtime/components/App.vue.d.ts +25 -0
  18. package/dist/runtime/components/Avatar.vue +48 -0
  19. package/dist/runtime/components/Avatar.vue.d.ts +384 -0
  20. package/dist/runtime/components/AvatarGroup.vue +74 -0
  21. package/dist/runtime/components/AvatarGroup.vue.d.ts +381 -0
  22. package/dist/runtime/components/Badge.vue +24 -0
  23. package/dist/runtime/components/Badge.vue.d.ts +422 -0
  24. package/dist/runtime/components/Breadcrumb.vue +60 -0
  25. package/dist/runtime/components/Breadcrumb.vue.d.ts +307 -0
  26. package/dist/runtime/components/Button.vue +55 -0
  27. package/dist/runtime/components/Button.vue.d.ts +949 -0
  28. package/dist/runtime/components/ButtonGroup.vue +29 -0
  29. package/dist/runtime/components/ButtonGroup.vue.d.ts +182 -0
  30. package/dist/runtime/components/Card.vue +33 -0
  31. package/dist/runtime/components/Card.vue.d.ts +191 -0
  32. package/dist/runtime/components/Checkbox.vue +89 -0
  33. package/dist/runtime/components/Checkbox.vue.d.ts +819 -0
  34. package/dist/runtime/components/Chip.vue +43 -0
  35. package/dist/runtime/components/Chip.vue.d.ts +590 -0
  36. package/dist/runtime/components/Collapsible.vue +33 -0
  37. package/dist/runtime/components/Collapsible.vue.d.ts +159 -0
  38. package/dist/runtime/components/CommandPalette.vue +210 -0
  39. package/dist/runtime/components/CommandPalette.vue.d.ts +684 -0
  40. package/dist/runtime/components/Container.vue +20 -0
  41. package/dist/runtime/components/Container.vue.d.ts +27 -0
  42. package/dist/runtime/components/ContextMenu.vue +51 -0
  43. package/dist/runtime/components/ContextMenu.vue.d.ts +796 -0
  44. package/dist/runtime/components/ContextMenuContent.vue +108 -0
  45. package/dist/runtime/components/ContextMenuContent.vue.d.ts +0 -0
  46. package/dist/runtime/components/Drawer.vue +73 -0
  47. package/dist/runtime/components/Drawer.vue.d.ts +343 -0
  48. package/dist/runtime/components/DropdownMenu.vue +55 -0
  49. package/dist/runtime/components/DropdownMenu.vue.d.ts +815 -0
  50. package/dist/runtime/components/DropdownMenuContent.vue +111 -0
  51. package/dist/runtime/components/DropdownMenuContent.vue.d.ts +0 -0
  52. package/dist/runtime/components/Form.vue +206 -0
  53. package/dist/runtime/components/Form.vue.d.ts +39 -0
  54. package/dist/runtime/components/FormField.vue +82 -0
  55. package/dist/runtime/components/FormField.vue.d.ts +356 -0
  56. package/dist/runtime/components/Icon.vue +16 -0
  57. package/dist/runtime/components/Icon.vue.d.ts +17 -0
  58. package/dist/runtime/components/Input.vue +140 -0
  59. package/dist/runtime/components/Input.vue.d.ts +1137 -0
  60. package/dist/runtime/components/InputMenu.vue +264 -0
  61. package/dist/runtime/components/InputMenu.vue.d.ts +2121 -0
  62. package/dist/runtime/components/Kbd.vue +27 -0
  63. package/dist/runtime/components/Kbd.vue.d.ts +169 -0
  64. package/dist/runtime/components/Link.vue +83 -0
  65. package/dist/runtime/components/Link.vue.d.ts +76 -0
  66. package/dist/runtime/components/LinkBase.vue +50 -0
  67. package/dist/runtime/components/LinkBase.vue.d.ts +49 -0
  68. package/dist/runtime/components/Modal.vue +100 -0
  69. package/dist/runtime/components/Modal.vue.d.ts +319 -0
  70. package/dist/runtime/components/ModalProvider.vue +12 -0
  71. package/dist/runtime/components/NavigationMenu.vue +125 -0
  72. package/dist/runtime/components/NavigationMenu.vue.d.ts +1789 -0
  73. package/dist/runtime/components/Pagination.vue +80 -0
  74. package/dist/runtime/components/Pagination.vue.d.ts +295 -0
  75. package/dist/runtime/components/Popover.vue +52 -0
  76. package/dist/runtime/components/Popover.vue.d.ts +197 -0
  77. package/dist/runtime/components/Progress.vue +126 -0
  78. package/dist/runtime/components/Progress.vue.d.ts +1781 -0
  79. package/dist/runtime/components/RadioGroup.vue +111 -0
  80. package/dist/runtime/components/RadioGroup.vue.d.ts +1715 -0
  81. package/dist/runtime/components/Select.vue +148 -0
  82. package/dist/runtime/components/Select.vue.d.ts +1569 -0
  83. package/dist/runtime/components/SelectMenu.vue +208 -0
  84. package/dist/runtime/components/SelectMenu.vue.d.ts +1661 -0
  85. package/dist/runtime/components/Separator.vue +47 -0
  86. package/dist/runtime/components/Separator.vue.d.ts +0 -0
  87. package/dist/runtime/components/Skeleton.vue +19 -0
  88. package/dist/runtime/components/Skeleton.vue.d.ts +26 -0
  89. package/dist/runtime/components/Slideover.vue +101 -0
  90. package/dist/runtime/components/Slideover.vue.d.ts +375 -0
  91. package/dist/runtime/components/SlideoverProvider.vue +12 -0
  92. package/dist/runtime/components/Slider.vue +83 -0
  93. package/dist/runtime/components/Slider.vue.d.ts +0 -0
  94. package/dist/runtime/components/Switch.vue +80 -0
  95. package/dist/runtime/components/Switch.vue.d.ts +1676 -0
  96. package/dist/runtime/components/Tabs.vue +61 -0
  97. package/dist/runtime/components/Tabs.vue.d.ts +934 -0
  98. package/dist/runtime/components/Textarea.vue +149 -0
  99. package/dist/runtime/components/Textarea.vue.d.ts +1133 -0
  100. package/dist/runtime/components/Toast.vue +112 -0
  101. package/dist/runtime/components/Toast.vue.d.ts +0 -0
  102. package/dist/runtime/components/Toaster.vue +109 -0
  103. package/dist/runtime/components/Toaster.vue.d.ts +362 -0
  104. package/dist/runtime/components/Tooltip.vue +52 -0
  105. package/dist/runtime/components/Tooltip.vue.d.ts +248 -0
  106. package/dist/runtime/composables/defineShortcuts.d.ts +7 -5
  107. package/dist/runtime/composables/defineShortcuts.js +94 -65
  108. package/dist/runtime/composables/useAvatarGroup.d.ts +10 -0
  109. package/dist/runtime/composables/useAvatarGroup.js +10 -0
  110. package/dist/runtime/composables/useButtonGroup.d.ts +12 -17
  111. package/dist/runtime/composables/useButtonGroup.js +6 -56
  112. package/dist/runtime/composables/useComponentIcons.d.ts +26 -0
  113. package/dist/runtime/composables/useComponentIcons.js +26 -0
  114. package/dist/runtime/composables/useFormField.d.ts +31 -0
  115. package/dist/runtime/composables/useFormField.js +50 -0
  116. package/dist/runtime/composables/useKbd.d.ts +28 -0
  117. package/dist/runtime/composables/useKbd.js +46 -0
  118. package/dist/runtime/composables/useModal.d.ts +8 -4
  119. package/dist/runtime/composables/useModal.js +1 -0
  120. package/dist/runtime/composables/useSlideover.d.ts +9 -5
  121. package/dist/runtime/composables/useSlideover.js +3 -2
  122. package/dist/runtime/composables/useToast.d.ts +9 -17
  123. package/dist/runtime/composables/useToast.js +27 -13
  124. package/dist/runtime/plugins/colors.d.ts +0 -2
  125. package/dist/runtime/plugins/colors.js +9 -17
  126. package/dist/runtime/plugins/modal.d.ts +0 -0
  127. package/dist/runtime/plugins/slideover.d.ts +0 -0
  128. package/dist/runtime/plugins/{slideovers.js → slideover.js} +3 -3
  129. package/dist/runtime/types/app.config.d.ts +6 -0
  130. package/dist/runtime/types/component.d.ts +17 -14
  131. package/dist/runtime/types/component.js +0 -0
  132. package/dist/runtime/types/form.d.ts +63 -32
  133. package/dist/runtime/types/form.js +12 -0
  134. package/dist/runtime/types/index.d.ts +41 -30
  135. package/dist/runtime/types/index.js +42 -31
  136. package/dist/runtime/types/utils.d.ts +13 -32
  137. package/dist/runtime/types/utils.js +0 -0
  138. package/dist/runtime/utils/form.d.ts +15 -0
  139. package/dist/runtime/utils/form.js +66 -0
  140. package/dist/runtime/utils/fuse.d.ts +4 -0
  141. package/dist/runtime/utils/fuse.js +63 -0
  142. package/dist/runtime/utils/index.d.ts +4 -10
  143. package/dist/runtime/utils/index.js +40 -60
  144. package/dist/runtime/utils/link.d.ts +58 -71
  145. package/dist/runtime/utils/link.js +4 -124
  146. package/package.json +47 -45
  147. package/dist/runtime/components/data/Table.vue +0 -355
  148. package/dist/runtime/components/data/Table.vue.d.ts +0 -439
  149. package/dist/runtime/components/elements/Accordion.vue +0 -185
  150. package/dist/runtime/components/elements/Accordion.vue.d.ts +0 -224
  151. package/dist/runtime/components/elements/Alert.vue +0 -139
  152. package/dist/runtime/components/elements/Alert.vue.d.ts +0 -194
  153. package/dist/runtime/components/elements/Avatar.vue +0 -160
  154. package/dist/runtime/components/elements/Avatar.vue.d.ts +0 -255
  155. package/dist/runtime/components/elements/AvatarGroup.d.ts +0 -56
  156. package/dist/runtime/components/elements/AvatarGroup.js +0 -58
  157. package/dist/runtime/components/elements/Badge.vue +0 -75
  158. package/dist/runtime/components/elements/Badge.vue.d.ts +0 -109
  159. package/dist/runtime/components/elements/Button.vue +0 -193
  160. package/dist/runtime/components/elements/Button.vue.d.ts +0 -504
  161. package/dist/runtime/components/elements/ButtonGroup.d.ts +0 -153
  162. package/dist/runtime/components/elements/ButtonGroup.js +0 -51
  163. package/dist/runtime/components/elements/Carousel.vue +0 -165
  164. package/dist/runtime/components/elements/Carousel.vue.d.ts +0 -159
  165. package/dist/runtime/components/elements/Chip.vue +0 -85
  166. package/dist/runtime/components/elements/Chip.vue.d.ts +0 -162
  167. package/dist/runtime/components/elements/Dropdown.vue +0 -254
  168. package/dist/runtime/components/elements/Dropdown.vue.d.ts +0 -254
  169. package/dist/runtime/components/elements/Icon.vue +0 -30
  170. package/dist/runtime/components/elements/Icon.vue.d.ts +0 -47
  171. package/dist/runtime/components/elements/Kbd.vue +0 -59
  172. package/dist/runtime/components/elements/Kbd.vue.d.ts +0 -86
  173. package/dist/runtime/components/elements/Link.vue +0 -95
  174. package/dist/runtime/components/elements/Link.vue.d.ts +0 -225
  175. package/dist/runtime/components/elements/Meter.vue +0 -170
  176. package/dist/runtime/components/elements/Meter.vue.d.ts +0 -279
  177. package/dist/runtime/components/elements/MeterGroup.d.ts +0 -135
  178. package/dist/runtime/components/elements/MeterGroup.js +0 -159
  179. package/dist/runtime/components/elements/Progress.vue +0 -203
  180. package/dist/runtime/components/elements/Progress.vue.d.ts +0 -280
  181. package/dist/runtime/components/forms/Checkbox.vue +0 -143
  182. package/dist/runtime/components/forms/Checkbox.vue.d.ts +0 -179
  183. package/dist/runtime/components/forms/Form.vue +0 -222
  184. package/dist/runtime/components/forms/Form.vue.d.ts +0 -53
  185. package/dist/runtime/components/forms/FormGroup.vue +0 -128
  186. package/dist/runtime/components/forms/FormGroup.vue.d.ts +0 -169
  187. package/dist/runtime/components/forms/Input.vue +0 -300
  188. package/dist/runtime/components/forms/Input.vue.d.ts +0 -482
  189. package/dist/runtime/components/forms/InputMenu.vue +0 -439
  190. package/dist/runtime/components/forms/InputMenu.vue.d.ts +0 -700
  191. package/dist/runtime/components/forms/Radio.vue +0 -140
  192. package/dist/runtime/components/forms/Radio.vue.d.ts +0 -168
  193. package/dist/runtime/components/forms/RadioGroup.vue +0 -145
  194. package/dist/runtime/components/forms/RadioGroup.vue.d.ts +0 -176
  195. package/dist/runtime/components/forms/Range.vue +0 -173
  196. package/dist/runtime/components/forms/Range.vue.d.ts +0 -268
  197. package/dist/runtime/components/forms/Select.vue +0 -322
  198. package/dist/runtime/components/forms/Select.vue.d.ts +0 -471
  199. package/dist/runtime/components/forms/SelectMenu.vue +0 -546
  200. package/dist/runtime/components/forms/SelectMenu.vue.d.ts +0 -754
  201. package/dist/runtime/components/forms/Textarea.vue +0 -231
  202. package/dist/runtime/components/forms/Textarea.vue.d.ts +0 -436
  203. package/dist/runtime/components/forms/Toggle.vue +0 -171
  204. package/dist/runtime/components/forms/Toggle.vue.d.ts +0 -262
  205. package/dist/runtime/components/layout/Card.vue +0 -63
  206. package/dist/runtime/components/layout/Card.vue.d.ts +0 -89
  207. package/dist/runtime/components/layout/Container.vue +0 -48
  208. package/dist/runtime/components/layout/Container.vue.d.ts +0 -53
  209. package/dist/runtime/components/layout/Divider.vue +0 -108
  210. package/dist/runtime/components/layout/Divider.vue.d.ts +0 -198
  211. package/dist/runtime/components/layout/Skeleton.vue +0 -46
  212. package/dist/runtime/components/layout/Skeleton.vue.d.ts +0 -53
  213. package/dist/runtime/components/navigation/Breadcrumb.vue +0 -82
  214. package/dist/runtime/components/navigation/Breadcrumb.vue.d.ts +0 -95
  215. package/dist/runtime/components/navigation/CommandPalette.vue +0 -345
  216. package/dist/runtime/components/navigation/CommandPalette.vue.d.ts +0 -390
  217. package/dist/runtime/components/navigation/CommandPaletteGroup.vue +0 -152
  218. package/dist/runtime/components/navigation/CommandPaletteGroup.vue.d.ts +0 -60
  219. package/dist/runtime/components/navigation/HorizontalNavigation.vue +0 -102
  220. package/dist/runtime/components/navigation/HorizontalNavigation.vue.d.ts +0 -99
  221. package/dist/runtime/components/navigation/Pagination.vue +0 -270
  222. package/dist/runtime/components/navigation/Pagination.vue.d.ts +0 -260
  223. package/dist/runtime/components/navigation/Tabs.vue +0 -160
  224. package/dist/runtime/components/navigation/Tabs.vue.d.ts +0 -165
  225. package/dist/runtime/components/navigation/VerticalNavigation.vue +0 -105
  226. package/dist/runtime/components/navigation/VerticalNavigation.vue.d.ts +0 -113
  227. package/dist/runtime/components/overlays/ContextMenu.vue +0 -85
  228. package/dist/runtime/components/overlays/ContextMenu.vue.d.ts +0 -126
  229. package/dist/runtime/components/overlays/Modal.vue +0 -122
  230. package/dist/runtime/components/overlays/Modal.vue.d.ts +0 -166
  231. package/dist/runtime/components/overlays/Modals.client.vue +0 -18
  232. package/dist/runtime/components/overlays/Notification.vue +0 -212
  233. package/dist/runtime/components/overlays/Notification.vue.d.ts +0 -235
  234. package/dist/runtime/components/overlays/Notifications.vue +0 -69
  235. package/dist/runtime/components/overlays/Notifications.vue.d.ts +0 -66
  236. package/dist/runtime/components/overlays/Popover.vue +0 -213
  237. package/dist/runtime/components/overlays/Popover.vue.d.ts +0 -220
  238. package/dist/runtime/components/overlays/Slideover.vue +0 -152
  239. package/dist/runtime/components/overlays/Slideover.vue.d.ts +0 -167
  240. package/dist/runtime/components/overlays/Slideovers.client.vue +0 -18
  241. package/dist/runtime/components/overlays/Tooltip.vue +0 -127
  242. package/dist/runtime/components/overlays/Tooltip.vue.d.ts +0 -165
  243. package/dist/runtime/composables/useCarouselScroll.d.ts +0 -2
  244. package/dist/runtime/composables/useCarouselScroll.js +0 -37
  245. package/dist/runtime/composables/useCopyToClipboard.d.ts +0 -10
  246. package/dist/runtime/composables/useCopyToClipboard.js +0 -26
  247. package/dist/runtime/composables/useFormGroup.d.ts +0 -18
  248. package/dist/runtime/composables/useFormGroup.js +0 -49
  249. package/dist/runtime/composables/usePopper.d.ts +0 -268
  250. package/dist/runtime/composables/usePopper.js +0 -94
  251. package/dist/runtime/composables/useShortcuts.d.ts +0 -12
  252. package/dist/runtime/composables/useShortcuts.js +0 -26
  253. package/dist/runtime/composables/useTimer.d.ts +0 -8
  254. package/dist/runtime/composables/useTimer.js +0 -51
  255. package/dist/runtime/composables/useUI.d.ts +0 -10
  256. package/dist/runtime/composables/useUI.js +0 -24
  257. package/dist/runtime/plugins/modals.d.ts +0 -2
  258. package/dist/runtime/plugins/slideovers.d.ts +0 -2
  259. package/dist/runtime/types/accordion.d.ts +0 -9
  260. package/dist/runtime/types/alert.d.ts +0 -12
  261. package/dist/runtime/types/avatar.d.ts +0 -17
  262. package/dist/runtime/types/badge.d.ts +0 -15
  263. package/dist/runtime/types/breadcrumb.d.ts +0 -10
  264. package/dist/runtime/types/button.d.ts +0 -31
  265. package/dist/runtime/types/chip.d.ts +0 -15
  266. package/dist/runtime/types/clipboard.d.ts +0 -3
  267. package/dist/runtime/types/command-palette.d.ts +0 -29
  268. package/dist/runtime/types/divider.d.ts +0 -3
  269. package/dist/runtime/types/dropdown.d.ts +0 -15
  270. package/dist/runtime/types/form-group.d.ts +0 -5
  271. package/dist/runtime/types/horizontal-navigation.d.ts +0 -13
  272. package/dist/runtime/types/input.d.ts +0 -8
  273. package/dist/runtime/types/kbd.d.ts +0 -5
  274. package/dist/runtime/types/link.d.ts +0 -12
  275. package/dist/runtime/types/meter.d.ts +0 -5
  276. package/dist/runtime/types/modal.d.ts +0 -18
  277. package/dist/runtime/types/notification.d.ts +0 -24
  278. package/dist/runtime/types/popper.d.ts +0 -17
  279. package/dist/runtime/types/progress.d.ts +0 -6
  280. package/dist/runtime/types/range.d.ts +0 -7
  281. package/dist/runtime/types/select.d.ts +0 -8
  282. package/dist/runtime/types/slideover.d.ts +0 -16
  283. package/dist/runtime/types/tabs.d.ts +0 -8
  284. package/dist/runtime/types/textarea.d.ts +0 -8
  285. package/dist/runtime/types/toggle.d.ts +0 -7
  286. package/dist/runtime/types/tooltip.d.ts +0 -7
  287. package/dist/runtime/types/vertical-navigation.d.ts +0 -13
  288. package/dist/runtime/ui.config/data/table.d.ts +0 -81
  289. package/dist/runtime/ui.config/data/table.js +0 -80
  290. package/dist/runtime/ui.config/elements/accordion.d.ts +0 -23
  291. package/dist/runtime/ui.config/elements/accordion.js +0 -22
  292. package/dist/runtime/ui.config/elements/alert.d.ts +0 -41
  293. package/dist/runtime/ui.config/elements/alert.js +0 -40
  294. package/dist/runtime/ui.config/elements/avatar.d.ts +0 -60
  295. package/dist/runtime/ui.config/elements/avatar.js +0 -59
  296. package/dist/runtime/ui.config/elements/avatarGroup.d.ts +0 -6
  297. package/dist/runtime/ui.config/elements/avatarGroup.js +0 -5
  298. package/dist/runtime/ui.config/elements/badge.d.ts +0 -34
  299. package/dist/runtime/ui.config/elements/badge.js +0 -33
  300. package/dist/runtime/ui.config/elements/button.d.ts +0 -81
  301. package/dist/runtime/ui.config/elements/button.js +0 -80
  302. package/dist/runtime/ui.config/elements/buttonGroup.d.ts +0 -101
  303. package/dist/runtime/ui.config/elements/buttonGroup.js +0 -19
  304. package/dist/runtime/ui.config/elements/carousel.d.ts +0 -27
  305. package/dist/runtime/ui.config/elements/carousel.js +0 -26
  306. package/dist/runtime/ui.config/elements/chip.d.ts +0 -35
  307. package/dist/runtime/ui.config/elements/chip.js +0 -34
  308. package/dist/runtime/ui.config/elements/dropdown.d.ts +0 -59
  309. package/dist/runtime/ui.config/elements/dropdown.js +0 -57
  310. package/dist/runtime/ui.config/elements/kbd.d.ts +0 -17
  311. package/dist/runtime/ui.config/elements/kbd.js +0 -16
  312. package/dist/runtime/ui.config/elements/meter.d.ts +0 -77
  313. package/dist/runtime/ui.config/elements/meter.js +0 -76
  314. package/dist/runtime/ui.config/elements/meterGroup.d.ts +0 -52
  315. package/dist/runtime/ui.config/elements/meterGroup.js +0 -24
  316. package/dist/runtime/ui.config/elements/progress.d.ts +0 -75
  317. package/dist/runtime/ui.config/elements/progress.js +0 -74
  318. package/dist/runtime/ui.config/forms/checkbox.d.ts +0 -19
  319. package/dist/runtime/ui.config/forms/checkbox.js +0 -18
  320. package/dist/runtime/ui.config/forms/formGroup.d.ts +0 -26
  321. package/dist/runtime/ui.config/forms/formGroup.js +0 -26
  322. package/dist/runtime/ui.config/forms/input.d.ts +0 -110
  323. package/dist/runtime/ui.config/forms/input.js +0 -109
  324. package/dist/runtime/ui.config/forms/inputMenu.d.ts +0 -64
  325. package/dist/runtime/ui.config/forms/inputMenu.js +0 -62
  326. package/dist/runtime/ui.config/forms/radio.d.ts +0 -18
  327. package/dist/runtime/ui.config/forms/radio.js +0 -17
  328. package/dist/runtime/ui.config/forms/radioGroup.d.ts +0 -9
  329. package/dist/runtime/ui.config/forms/radioGroup.js +0 -8
  330. package/dist/runtime/ui.config/forms/range.d.ts +0 -64
  331. package/dist/runtime/ui.config/forms/range.js +0 -63
  332. package/dist/runtime/ui.config/forms/select.d.ts +0 -111
  333. package/dist/runtime/ui.config/forms/select.js +0 -13
  334. package/dist/runtime/ui.config/forms/selectMenu.d.ts +0 -70
  335. package/dist/runtime/ui.config/forms/selectMenu.js +0 -32
  336. package/dist/runtime/ui.config/forms/textarea.d.ts +0 -109
  337. package/dist/runtime/ui.config/forms/textarea.js +0 -10
  338. package/dist/runtime/ui.config/forms/toggle.d.ts +0 -63
  339. package/dist/runtime/ui.config/forms/toggle.js +0 -62
  340. package/dist/runtime/ui.config/index.d.ts +0 -43
  341. package/dist/runtime/ui.config/index.js +0 -43
  342. package/dist/runtime/ui.config/layout/card.d.ts +0 -24
  343. package/dist/runtime/ui.config/layout/card.js +0 -23
  344. package/dist/runtime/ui.config/layout/container.d.ts +0 -6
  345. package/dist/runtime/ui.config/layout/container.js +0 -5
  346. package/dist/runtime/ui.config/layout/divider.d.ts +0 -52
  347. package/dist/runtime/ui.config/layout/divider.js +0 -51
  348. package/dist/runtime/ui.config/layout/skeleton.d.ts +0 -6
  349. package/dist/runtime/ui.config/layout/skeleton.js +0 -5
  350. package/dist/runtime/ui.config/navigation/breadcrumb.d.ts +0 -21
  351. package/dist/runtime/ui.config/navigation/breadcrumb.js +0 -20
  352. package/dist/runtime/ui.config/navigation/commandPalette.d.ts +0 -72
  353. package/dist/runtime/ui.config/navigation/commandPalette.js +0 -71
  354. package/dist/runtime/ui.config/navigation/horizontalNavigation.d.ts +0 -27
  355. package/dist/runtime/ui.config/navigation/horizontalNavigation.js +0 -26
  356. package/dist/runtime/ui.config/navigation/pagination.d.ts +0 -35
  357. package/dist/runtime/ui.config/navigation/pagination.js +0 -34
  358. package/dist/runtime/ui.config/navigation/tabs.d.ts +0 -35
  359. package/dist/runtime/ui.config/navigation/tabs.js +0 -34
  360. package/dist/runtime/ui.config/navigation/verticalNavigation.d.ts +0 -34
  361. package/dist/runtime/ui.config/navigation/verticalNavigation.js +0 -33
  362. package/dist/runtime/ui.config/overlays/contextMenu.d.ts +0 -31
  363. package/dist/runtime/ui.config/overlays/contextMenu.js +0 -25
  364. package/dist/runtime/ui.config/overlays/modal.d.ts +0 -36
  365. package/dist/runtime/ui.config/overlays/modal.js +0 -37
  366. package/dist/runtime/ui.config/overlays/notification.d.ts +0 -50
  367. package/dist/runtime/ui.config/overlays/notification.js +0 -50
  368. package/dist/runtime/ui.config/overlays/notifications.d.ts +0 -7
  369. package/dist/runtime/ui.config/overlays/notifications.js +0 -6
  370. package/dist/runtime/ui.config/overlays/popover.d.ts +0 -47
  371. package/dist/runtime/ui.config/overlays/popover.js +0 -41
  372. package/dist/runtime/ui.config/overlays/slideover.d.ts +0 -35
  373. package/dist/runtime/ui.config/overlays/slideover.js +0 -36
  374. package/dist/runtime/ui.config/overlays/tooltip.d.ts +0 -37
  375. package/dist/runtime/ui.config/overlays/tooltip.js +0 -34
  376. package/dist/runtime/ui.config/popper.d.ts +0 -8
  377. package/dist/runtime/ui.config/popper.js +0 -9
  378. package/dist/runtime/ui.css +0 -1
  379. package/dist/runtime/utils/colors.d.ts +0 -11
  380. package/dist/runtime/utils/colors.js +0 -299
  381. package/dist/runtime/utils/lodash.d.ts +0 -2
  382. package/dist/runtime/utils/lodash.js +0 -23
  383. package/dist/runtime/plugins/{modals.js → modal.js} +1 -1
package/README.md CHANGED
@@ -27,7 +27,24 @@ Read more on [ui.nuxt.com](https://ui.nuxt.com)
27
27
  ## Installation
28
28
 
29
29
  ```bash
30
- npx nuxi@latest module add ui
30
+ # npm
31
+ npm install @nuxt/ui
32
+ # yarn
33
+ yarn add @nuxt/ui
34
+ # pnpm
35
+ pnpm add @nuxt/ui
36
+ # bun
37
+ bun add @nuxt/ui
38
+ ```
39
+
40
+ Then, register the module in your `nuxt.config.ts`:
41
+
42
+ ```js
43
+ export default defineNuxtConfig({
44
+ modules: [
45
+ '@nuxt/ui'
46
+ ]
47
+ })
31
48
  ```
32
49
 
33
50
  If you want latest updates, please use `@nuxt/ui-edge` in your `package.json`:
@@ -0,0 +1,83 @@
1
+ import { existsSync, promises as fsp } from 'node:fs'
2
+ import { resolve } from 'pathe'
3
+ import { defineCommand } from 'citty'
4
+ import { consola } from 'consola'
5
+ import { splitByCase, upperFirst, camelCase, kebabCase } from 'scule'
6
+ import { appendFile, sortFile } from '../utils.mjs'
7
+ import templates from '../templates.mjs'
8
+
9
+ export default defineCommand({
10
+ meta: {
11
+ name: 'init',
12
+ description: 'Init a new component.'
13
+ },
14
+ args: {
15
+ name: {
16
+ type: 'positional',
17
+ required: true,
18
+ description: 'Name of the component.'
19
+ },
20
+ primitive: {
21
+ type: 'boolean',
22
+ description: 'Create a primitive component.'
23
+ },
24
+ pro: {
25
+ type: 'boolean',
26
+ description: 'Create a pro component.'
27
+ },
28
+ prose: {
29
+ type: 'boolean',
30
+ description: 'Create a prose component (with --pro).'
31
+ },
32
+ content: {
33
+ type: 'boolean',
34
+ description: 'Create a content component (with --pro).'
35
+ }
36
+ },
37
+ async setup({ args }) {
38
+ const name = args.name
39
+ if (!name) {
40
+ consola.error('`name` argument is missing!')
41
+ process.exit(1)
42
+ }
43
+
44
+ if (args.prose && !args.pro) {
45
+ consola.error('`--prose` flag can only be used with `--pro` flag!')
46
+ process.exit(1)
47
+ }
48
+ if (args.content && !args.pro) {
49
+ consola.error('`--content` flag can only be used with `--pro` flag!')
50
+ process.exit(1)
51
+ }
52
+
53
+ const path = resolve('.')
54
+
55
+ for (const template of Object.keys(templates)) {
56
+ const { filename, contents } = templates[template](args)
57
+ if (!contents) {
58
+ continue
59
+ }
60
+
61
+ const filePath = resolve(path, filename)
62
+
63
+ if (existsSync(filePath)) {
64
+ consola.error(`🚨 ${filePath} already exists!`)
65
+ continue
66
+ }
67
+
68
+ await fsp.writeFile(filePath, contents.trim() + '\n')
69
+
70
+ consola.success(`🪄 Generated ${filePath}!`)
71
+ }
72
+
73
+ const themePath = resolve(path, `src/theme/${args.prose ? 'prose/' : ''}${args.content ? 'content/' : ''}index.ts`)
74
+ await appendFile(themePath, `export { default as ${camelCase(name)} } from './${kebabCase(name)}'`)
75
+ await sortFile(themePath)
76
+
77
+ if (!args.prose) {
78
+ const typesPath = resolve(path, 'src/runtime/types/index.d.ts')
79
+ await appendFile(typesPath, `export * from '../components/${args.content ? 'content/' : ''}${splitByCase(name).map(p => upperFirst(p)).join('')}.vue'`)
80
+ await sortFile(typesPath)
81
+ }
82
+ }
83
+ })
package/cli/index.mjs ADDED
@@ -0,0 +1,15 @@
1
+ #!/usr/bin/env node
2
+ import { defineCommand, runMain } from 'citty'
3
+ import init from './commands/init.mjs'
4
+
5
+ const main = defineCommand({
6
+ meta: {
7
+ name: 'nuxt-ui',
8
+ description: 'Nuxt UI CLI'
9
+ },
10
+ subCommands: {
11
+ init
12
+ }
13
+ })
14
+
15
+ runMain(main)
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "@nuxt/ui-cli",
3
+ "type": "module",
4
+ "exports": {
5
+ ".": "./index.mjs"
6
+ },
7
+ "dependencies": {
8
+ "citty": "^0.1.6",
9
+ "consola": "^3.2.3",
10
+ "pathe": "^1.1.2",
11
+ "scule": "^1.3.0"
12
+ }
13
+ }
@@ -0,0 +1,171 @@
1
+ import { splitByCase, upperFirst, camelCase, kebabCase } from 'scule'
2
+
3
+ const playground = ({ name, pro }) => {
4
+ const upperName = splitByCase(name).map(p => upperFirst(p)).join('')
5
+ const kebabName = kebabCase(name)
6
+
7
+ return {
8
+ filename: `playground/pages/components/${kebabName}.vue`,
9
+ contents: pro
10
+ ? undefined
11
+ : `
12
+ <template>
13
+ <div>
14
+ <U${upperName} />
15
+ </div>
16
+ </template>
17
+ `
18
+ }
19
+ }
20
+
21
+ const component = ({ name, primitive, pro, prose, content }) => {
22
+ const upperName = splitByCase(name).map(p => upperFirst(p)).join('')
23
+ const camelName = camelCase(name)
24
+ const kebabName = kebabCase(name)
25
+ const key = pro ? 'uiPro' : 'ui'
26
+ const path = pro ? 'ui-pro' : 'ui'
27
+
28
+ return {
29
+ filename: `src/runtime/components/${prose ? 'prose/' : ''}${content ? 'content/' : ''}${upperName}.vue`,
30
+ contents: primitive
31
+ ? `
32
+ <script lang="ts">
33
+ import { tv } from 'tailwind-variants'
34
+ import type { AppConfig } from '@nuxt/schema'
35
+ import _appConfig from '#build/app.config'
36
+ import theme from '#build/${path}/${prose ? 'prose/' : ''}${content ? 'content/' : ''}${kebabName}'
37
+
38
+ const appConfig = _appConfig as AppConfig & { ${key}: { ${prose ? 'prose: { ' : ''}${camelName}: Partial<typeof theme> } }${prose ? ' }' : ''}
39
+
40
+ const ${camelName} = tv({ extend: tv(theme), ...(appConfig.${key}?.${prose ? 'prose?.' : ''}${camelName} || {}) })
41
+
42
+ export interface ${upperName}Props {
43
+ /**
44
+ * The element or component this component should render as.
45
+ * @defaultValue \`div\`
46
+ */
47
+ as?: any
48
+ class?: any
49
+ ui?: Partial<typeof ${camelName}.slots>
50
+ }
51
+
52
+ export interface ${upperName}Slots {
53
+ default(props?: {}): any
54
+ }
55
+ </script>
56
+
57
+ <script setup lang="ts">
58
+ import { Primitive } from 'radix-vue'
59
+
60
+ const props = withDefaults(defineProps<${upperName}Props>(), { as: 'div' })
61
+ defineSlots<${upperName}Slots>()
62
+
63
+ const ui = ${camelName}()
64
+ </script>
65
+
66
+ <template>
67
+ <Primitive :as="as" :class="ui.root({ class: [props.class, props.ui?.root] })">
68
+ <slot />
69
+ </Primitive>
70
+ </template>
71
+ `
72
+ : `
73
+ <script lang="ts">
74
+ import { tv, type VariantProps } from 'tailwind-variants'
75
+ import type { ${upperName}RootProps, ${upperName}RootEmits } from 'radix-vue'
76
+ import type { AppConfig } from '@nuxt/schema'
77
+ import _appConfig from '#build/app.config'
78
+ import theme from '#build/${path}/${prose ? 'prose/' : ''}${content ? 'content/' : ''}${kebabName}'
79
+
80
+ const appConfig = _appConfig as AppConfig & { ${key}: { ${prose ? 'prose: { ' : ''}${camelName}: Partial<typeof theme> } }${prose ? ' }' : ''}
81
+
82
+ const ${camelName} = tv({ extend: tv(theme), ...(appConfig.${key}?.${prose ? 'prose?.' : ''}${camelName} || {}) })
83
+
84
+ type ${upperName}Variants = VariantProps<typeof ${camelName}>
85
+
86
+ export interface ${upperName}Props extends Pick<${upperName}RootProps> {
87
+ class?: any
88
+ ui?: Partial<typeof ${camelName}.slots>
89
+ }
90
+
91
+ export interface ${upperName}Emits extends ${upperName}RootEmits {}
92
+
93
+ export interface ${upperName}Slots {}
94
+ </script>
95
+
96
+ <script setup lang="ts">
97
+ import { ${upperName}Root, useForwardPropsEmits } from 'radix-vue'
98
+ import { reactivePick } from '@vueuse/core'
99
+
100
+ const props = defineProps<${upperName}Props>()
101
+ const emits = defineEmits<${upperName}Emits>()
102
+ const slots = defineSlots<${upperName}Slots>()
103
+
104
+ const rootProps = useForwardPropsEmits(reactivePick(props), emits)
105
+
106
+ const ui = ${camelName}()
107
+ </script>
108
+
109
+ <template>
110
+ <${upperName}Root v-bind="rootProps" :class="ui.root({ class: [props.class, props.ui?.root] })" />
111
+ </template>
112
+ `
113
+ }
114
+ }
115
+
116
+ const theme = ({ name, prose, content }) => {
117
+ const kebabName = kebabCase(name)
118
+
119
+ return {
120
+ filename: `src/theme/${prose ? 'prose/' : ''}${content ? 'content/' : ''}${kebabName}.ts`,
121
+ contents: prose
122
+ ? `
123
+ export default {
124
+ base: ''
125
+ }
126
+ `
127
+ : `
128
+ export default {
129
+ slots: {
130
+ root: ''
131
+ }
132
+ }
133
+ `
134
+ }
135
+ }
136
+
137
+ const test = ({ name, prose, content }) => {
138
+ const upperName = splitByCase(name).map(p => upperFirst(p)).join('')
139
+
140
+ return {
141
+ filename: `test/components/${content ? 'content/' : ''}${upperName}.spec.ts`,
142
+ contents: prose
143
+ ? undefined
144
+ : `
145
+ import { describe, it, expect } from 'vitest'
146
+ import ${upperName}, { type ${upperName}Props, type ${upperName}Slots } from '../../${content ? '../' : ''}src/runtime/components/${content ? 'content/' : ''}${upperName}.vue'
147
+ import ComponentRender from '../${content ? '../' : ''}component-render'
148
+
149
+ describe('${upperName}', () => {
150
+ it.each([
151
+ // Props
152
+ ['with as', { props: { as: 'div' } }],
153
+ ['with class', { props: { class: '' } }],
154
+ ['with ui', { props: { ui: {} } }],
155
+ // Slots
156
+ ['with default slot', { slots: { default: () => 'Default slot' } }]
157
+ ])('renders %s correctly', async (nameOrHtml: string, options: { props?: ${upperName}Props, slots?: Partial<${upperName}Slots> }) => {
158
+ const html = await ComponentRender(nameOrHtml, options, ${upperName})
159
+ expect(html).toMatchSnapshot()
160
+ })
161
+ })
162
+ `
163
+ }
164
+ }
165
+
166
+ export default {
167
+ playground,
168
+ component,
169
+ theme,
170
+ test
171
+ }
package/cli/utils.mjs ADDED
@@ -0,0 +1,17 @@
1
+ import { promises as fsp } from 'node:fs'
2
+
3
+ export async function sortFile(path) {
4
+ const file = await fsp.readFile(path, 'utf-8')
5
+
6
+ const lines = file.trim().split('\n').sort()
7
+
8
+ await fsp.writeFile(path, lines.join('\n') + '\n')
9
+ }
10
+
11
+ export async function appendFile(path, contents) {
12
+ const file = await fsp.readFile(path, 'utf-8')
13
+
14
+ if (!file.includes(contents)) {
15
+ await fsp.writeFile(path, file.trim() + '\n' + contents + '\n')
16
+ }
17
+ }
package/dist/module.d.mts CHANGED
@@ -1,39 +1,23 @@
1
1
  import * as _nuxt_schema from '@nuxt/schema';
2
- import * as config from '../dist/runtime/ui.config/index.js';
3
- import { Strategy, DeepPartial } from '../dist/runtime/types/index.js';
2
+ export * from '../dist/runtime/types/index.js';
4
3
 
5
- type UI = {
6
- primary?: string;
7
- gray?: string;
8
- colors?: string[];
9
- strategy?: Strategy;
10
- [key: string]: any;
11
- } & DeepPartial<typeof config, string>;
12
- declare module 'nuxt/schema' {
13
- interface AppConfigInput {
14
- ui?: UI;
15
- }
16
- }
17
- declare module '@nuxt/schema' {
18
- interface AppConfigInput {
19
- ui?: UI;
20
- }
21
- }
22
4
  interface ModuleOptions {
23
5
  /**
24
- * @default 'u'
6
+ * Prefix for components
7
+ * @defaultValue U
25
8
  */
26
9
  prefix?: string;
27
10
  /**
28
- * @default false
11
+ * Colors to generate classes for (based on TailwindCSS colors)
12
+ * @defaultValue ['red', 'orange', 'amber', 'yellow', 'lime', 'green', 'emerald', 'teal', 'cyan', 'sky', 'blue', 'indigo', 'violet', 'purple', 'fuchsia', 'pink', 'rose']
29
13
  */
30
- global?: boolean;
31
- safelistColors?: string[];
14
+ colors?: string[];
32
15
  /**
33
- * Disables the global css styles added by the module.
16
+ * Disable color transitions
17
+ * @defaultValue true
34
18
  */
35
- disableGlobalStyles?: boolean;
19
+ transitions?: boolean;
36
20
  }
37
- declare const _default: _nuxt_schema.NuxtModule<ModuleOptions>;
21
+ declare const _default: _nuxt_schema.NuxtModule<ModuleOptions, ModuleOptions, false>;
38
22
 
39
23
  export { type ModuleOptions, _default as default };
package/dist/module.d.ts CHANGED
@@ -1,39 +1,23 @@
1
1
  import * as _nuxt_schema from '@nuxt/schema';
2
- import * as config from '../dist/runtime/ui.config/index.js';
3
- import { Strategy, DeepPartial } from '../dist/runtime/types/index.js';
2
+ export * from '../dist/runtime/types/index.js';
4
3
 
5
- type UI = {
6
- primary?: string;
7
- gray?: string;
8
- colors?: string[];
9
- strategy?: Strategy;
10
- [key: string]: any;
11
- } & DeepPartial<typeof config, string>;
12
- declare module 'nuxt/schema' {
13
- interface AppConfigInput {
14
- ui?: UI;
15
- }
16
- }
17
- declare module '@nuxt/schema' {
18
- interface AppConfigInput {
19
- ui?: UI;
20
- }
21
- }
22
4
  interface ModuleOptions {
23
5
  /**
24
- * @default 'u'
6
+ * Prefix for components
7
+ * @defaultValue U
25
8
  */
26
9
  prefix?: string;
27
10
  /**
28
- * @default false
11
+ * Colors to generate classes for (based on TailwindCSS colors)
12
+ * @defaultValue ['red', 'orange', 'amber', 'yellow', 'lime', 'green', 'emerald', 'teal', 'cyan', 'sky', 'blue', 'indigo', 'violet', 'purple', 'fuchsia', 'pink', 'rose']
29
13
  */
30
- global?: boolean;
31
- safelistColors?: string[];
14
+ colors?: string[];
32
15
  /**
33
- * Disables the global css styles added by the module.
16
+ * Disable color transitions
17
+ * @defaultValue true
34
18
  */
35
- disableGlobalStyles?: boolean;
19
+ transitions?: boolean;
36
20
  }
37
- declare const _default: _nuxt_schema.NuxtModule<ModuleOptions>;
21
+ declare const _default: _nuxt_schema.NuxtModule<ModuleOptions, ModuleOptions, false>;
38
22
 
39
23
  export { type ModuleOptions, _default as default };
package/dist/module.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
- "name": "@nuxt/ui",
3
- "version": "2.18.3",
2
+ "name": "ui",
4
3
  "configKey": "ui",
5
4
  "compatibility": {
6
5
  "nuxt": ">=3.10.0"
7
6
  },
7
+ "version": "3.0.0-alpha.0",
8
8
  "builder": {
9
- "@nuxt/module-builder": "0.8.1",
9
+ "@nuxt/module-builder": "0.8.3",
10
10
  "unbuild": "2.0.0"
11
11
  }
12
12
  }