@nuxt/ui 2.18.4 → 3.0.0-alpha.1

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 (394) hide show
  1. package/README.md +19 -2
  2. package/cli/commands/init.mjs +83 -0
  3. package/cli/index.mjs +15 -0
  4. package/cli/node_modules/.ignored/citty/LICENSE +36 -0
  5. package/cli/node_modules/.ignored/citty/README.md +134 -0
  6. package/cli/node_modules/.ignored/citty/dist/index.cjs +475 -0
  7. package/cli/node_modules/.ignored/citty/dist/index.d.cts +80 -0
  8. package/cli/node_modules/.ignored/citty/dist/index.d.mts +80 -0
  9. package/cli/node_modules/.ignored/citty/dist/index.d.ts +80 -0
  10. package/cli/node_modules/.ignored/citty/dist/index.mjs +463 -0
  11. package/cli/node_modules/.ignored/citty/package.json +49 -0
  12. package/cli/node_modules/.ignored/consola/LICENSE +47 -0
  13. package/cli/node_modules/.ignored/consola/README.md +318 -0
  14. package/cli/node_modules/.ignored/consola/core.d.ts +1 -0
  15. package/cli/node_modules/.ignored/consola/dist/basic.cjs +32 -0
  16. package/cli/node_modules/.ignored/consola/dist/basic.d.ts +9 -0
  17. package/cli/node_modules/.ignored/consola/dist/basic.mjs +24 -0
  18. package/cli/node_modules/.ignored/consola/dist/browser.cjs +80 -0
  19. package/cli/node_modules/.ignored/consola/dist/browser.d.ts +7 -0
  20. package/cli/node_modules/.ignored/consola/dist/browser.mjs +72 -0
  21. package/cli/node_modules/.ignored/consola/dist/chunks/prompt.cjs +436 -0
  22. package/cli/node_modules/.ignored/consola/dist/chunks/prompt.mjs +429 -0
  23. package/cli/node_modules/.ignored/consola/dist/core.cjs +415 -0
  24. package/cli/node_modules/.ignored/consola/dist/core.d.ts +124 -0
  25. package/cli/node_modules/.ignored/consola/dist/core.mjs +410 -0
  26. package/cli/node_modules/.ignored/consola/dist/index.cjs +21 -0
  27. package/cli/node_modules/.ignored/consola/dist/index.d.ts +9 -0
  28. package/cli/node_modules/.ignored/consola/dist/index.mjs +8 -0
  29. package/cli/node_modules/.ignored/consola/dist/shared/consola.06ad8a64.mjs +62 -0
  30. package/cli/node_modules/.ignored/consola/dist/shared/consola.36c0034f.mjs +636 -0
  31. package/cli/node_modules/.ignored/consola/dist/shared/consola.4bbae468.cjs +645 -0
  32. package/cli/node_modules/.ignored/consola/dist/shared/consola.deac7d5a.cjs +65 -0
  33. package/cli/node_modules/.ignored/consola/dist/utils.cjs +308 -0
  34. package/cli/node_modules/.ignored/consola/dist/utils.d.ts +169 -0
  35. package/cli/node_modules/.ignored/consola/dist/utils.mjs +284 -0
  36. package/cli/node_modules/.ignored/consola/lib/index.cjs +9 -0
  37. package/cli/node_modules/.ignored/consola/package.json +101 -0
  38. package/cli/node_modules/.ignored/consola/utils.d.ts +1 -0
  39. package/cli/node_modules/.ignored/pathe/LICENSE +44 -0
  40. package/cli/node_modules/.ignored/pathe/README.md +69 -0
  41. package/cli/node_modules/.ignored/pathe/dist/index.cjs +23 -0
  42. package/cli/node_modules/.ignored/pathe/dist/index.d.cts +36 -0
  43. package/cli/node_modules/.ignored/pathe/dist/index.d.mts +36 -0
  44. package/cli/node_modules/.ignored/pathe/dist/index.d.ts +36 -0
  45. package/cli/node_modules/.ignored/pathe/dist/index.mjs +1 -0
  46. package/cli/node_modules/.ignored/pathe/dist/shared/pathe.1f0a373c.cjs +238 -0
  47. package/cli/node_modules/.ignored/pathe/dist/shared/pathe.ff20891b.mjs +221 -0
  48. package/cli/node_modules/.ignored/pathe/dist/utils.cjs +58 -0
  49. package/cli/node_modules/.ignored/pathe/dist/utils.d.cts +5 -0
  50. package/cli/node_modules/.ignored/pathe/dist/utils.d.mts +5 -0
  51. package/cli/node_modules/.ignored/pathe/dist/utils.d.ts +5 -0
  52. package/cli/node_modules/.ignored/pathe/dist/utils.mjs +54 -0
  53. package/cli/node_modules/.ignored/pathe/package.json +48 -0
  54. package/cli/node_modules/.ignored/pathe/utils.d.ts +1 -0
  55. package/cli/node_modules/.ignored/scule/LICENSE +21 -0
  56. package/cli/node_modules/.ignored/scule/README.md +149 -0
  57. package/cli/node_modules/.ignored/scule/dist/index.cjs +92 -0
  58. package/cli/node_modules/.ignored/scule/dist/index.d.cts +57 -0
  59. package/cli/node_modules/.ignored/scule/dist/index.d.mts +57 -0
  60. package/cli/node_modules/.ignored/scule/dist/index.d.ts +57 -0
  61. package/cli/node_modules/.ignored/scule/dist/index.mjs +80 -0
  62. package/cli/node_modules/.ignored/scule/package.json +43 -0
  63. package/cli/node_modules/.package-lock.json +33 -0
  64. package/cli/package.json +13 -0
  65. package/cli/templates.mjs +171 -0
  66. package/cli/utils.mjs +17 -0
  67. package/dist/module.d.mts +10 -26
  68. package/dist/module.d.ts +10 -26
  69. package/dist/module.json +4 -4
  70. package/dist/module.mjs +2574 -154
  71. package/dist/runtime/components/Accordion.vue +110 -0
  72. package/dist/runtime/components/Alert.vue +130 -0
  73. package/dist/runtime/components/App.vue +42 -0
  74. package/dist/runtime/components/Avatar.vue +69 -0
  75. package/dist/runtime/components/AvatarGroup.vue +98 -0
  76. package/dist/runtime/components/Badge.vue +46 -0
  77. package/dist/runtime/components/Breadcrumb.vue +98 -0
  78. package/dist/runtime/components/Button.vue +82 -0
  79. package/dist/runtime/components/ButtonGroup.vue +53 -0
  80. package/dist/runtime/components/Card.vue +52 -0
  81. package/dist/runtime/components/Checkbox.vue +128 -0
  82. package/dist/runtime/components/Chip.vue +76 -0
  83. package/dist/runtime/components/Collapsible.vue +54 -0
  84. package/dist/runtime/components/CommandPalette.vue +303 -0
  85. package/dist/runtime/components/Container.vue +36 -0
  86. package/dist/runtime/components/ContextMenu.vue +103 -0
  87. package/dist/runtime/components/ContextMenuContent.vue +122 -0
  88. package/dist/runtime/components/Drawer.vue +115 -0
  89. package/dist/runtime/components/DropdownMenu.vue +115 -0
  90. package/dist/runtime/components/DropdownMenuContent.vue +129 -0
  91. package/dist/runtime/components/Form.vue +227 -0
  92. package/dist/runtime/components/FormField.vue +107 -0
  93. package/dist/runtime/components/Icon.vue +26 -0
  94. package/dist/runtime/components/Input.vue +180 -0
  95. package/dist/runtime/components/InputMenu.vue +371 -0
  96. package/dist/runtime/components/Kbd.vue +49 -0
  97. package/dist/runtime/components/Link.vue +147 -0
  98. package/dist/runtime/components/LinkBase.vue +60 -0
  99. package/dist/runtime/components/Modal.vue +163 -0
  100. package/dist/runtime/components/ModalProvider.vue +12 -0
  101. package/dist/runtime/components/NavigationMenu.vue +195 -0
  102. package/dist/runtime/components/Pagination.vue +173 -0
  103. package/dist/runtime/components/Popover.vue +88 -0
  104. package/dist/runtime/components/Progress.vue +164 -0
  105. package/dist/runtime/components/RadioGroup.vue +159 -0
  106. package/dist/runtime/components/Select.vue +230 -0
  107. package/dist/runtime/components/SelectMenu.vue +306 -0
  108. package/dist/runtime/components/Separator.vue +82 -0
  109. package/dist/runtime/components/Skeleton.vue +31 -0
  110. package/dist/runtime/components/Slideover.vue +162 -0
  111. package/dist/runtime/components/SlideoverProvider.vue +12 -0
  112. package/dist/runtime/components/Slider.vue +113 -0
  113. package/dist/runtime/components/Switch.vue +124 -0
  114. package/dist/runtime/components/Tabs.vue +114 -0
  115. package/dist/runtime/components/Textarea.vue +189 -0
  116. package/dist/runtime/components/Toast.vue +161 -0
  117. package/dist/runtime/components/Toaster.vue +130 -0
  118. package/dist/runtime/components/Tooltip.vue +88 -0
  119. package/dist/runtime/composables/defineShortcuts.d.ts +7 -5
  120. package/dist/runtime/composables/defineShortcuts.js +94 -65
  121. package/dist/runtime/composables/useAvatarGroup.d.ts +10 -0
  122. package/dist/runtime/composables/useAvatarGroup.js +10 -0
  123. package/dist/runtime/composables/useButtonGroup.d.ts +12 -17
  124. package/dist/runtime/composables/useButtonGroup.js +6 -56
  125. package/dist/runtime/composables/useComponentIcons.d.ts +26 -0
  126. package/dist/runtime/composables/useComponentIcons.js +26 -0
  127. package/dist/runtime/composables/useFormField.d.ts +34 -0
  128. package/dist/runtime/composables/useFormField.js +54 -0
  129. package/dist/runtime/composables/useKbd.d.ts +28 -0
  130. package/dist/runtime/composables/useKbd.js +46 -0
  131. package/dist/runtime/composables/useModal.d.ts +8 -4
  132. package/dist/runtime/composables/useModal.js +1 -0
  133. package/dist/runtime/composables/useSlideover.d.ts +9 -5
  134. package/dist/runtime/composables/useSlideover.js +3 -2
  135. package/dist/runtime/composables/useToast.d.ts +9 -17
  136. package/dist/runtime/composables/useToast.js +27 -13
  137. package/dist/runtime/index.css +1 -0
  138. package/dist/runtime/plugins/colors.js +9 -17
  139. package/dist/runtime/plugins/{slideovers.js → slideover.js} +3 -3
  140. package/dist/runtime/types/app.config.d.ts +6 -0
  141. package/dist/runtime/types/component.d.ts +17 -14
  142. package/dist/runtime/types/component.js +0 -0
  143. package/dist/runtime/types/form.d.ts +62 -32
  144. package/dist/runtime/types/form.js +12 -0
  145. package/dist/runtime/types/index.d.ts +41 -30
  146. package/dist/runtime/types/index.js +42 -31
  147. package/dist/runtime/types/utils.d.ts +13 -32
  148. package/dist/runtime/types/utils.js +0 -0
  149. package/dist/runtime/utils/form.d.ts +15 -0
  150. package/dist/runtime/utils/form.js +66 -0
  151. package/dist/runtime/utils/fuse.d.ts +4 -0
  152. package/dist/runtime/utils/fuse.js +63 -0
  153. package/dist/runtime/utils/index.d.ts +4 -10
  154. package/dist/runtime/utils/index.js +40 -60
  155. package/dist/runtime/utils/link.d.ts +26 -71
  156. package/dist/runtime/utils/link.js +4 -124
  157. package/package.json +50 -49
  158. package/dist/runtime/components/data/Table.vue +0 -355
  159. package/dist/runtime/components/data/Table.vue.d.ts +0 -439
  160. package/dist/runtime/components/elements/Accordion.vue +0 -185
  161. package/dist/runtime/components/elements/Accordion.vue.d.ts +0 -223
  162. package/dist/runtime/components/elements/Alert.vue +0 -139
  163. package/dist/runtime/components/elements/Alert.vue.d.ts +0 -194
  164. package/dist/runtime/components/elements/Avatar.vue +0 -160
  165. package/dist/runtime/components/elements/Avatar.vue.d.ts +0 -255
  166. package/dist/runtime/components/elements/AvatarGroup.d.ts +0 -56
  167. package/dist/runtime/components/elements/AvatarGroup.js +0 -58
  168. package/dist/runtime/components/elements/Badge.vue +0 -75
  169. package/dist/runtime/components/elements/Badge.vue.d.ts +0 -109
  170. package/dist/runtime/components/elements/Button.vue +0 -193
  171. package/dist/runtime/components/elements/Button.vue.d.ts +0 -504
  172. package/dist/runtime/components/elements/ButtonGroup.d.ts +0 -153
  173. package/dist/runtime/components/elements/ButtonGroup.js +0 -51
  174. package/dist/runtime/components/elements/Carousel.vue +0 -165
  175. package/dist/runtime/components/elements/Carousel.vue.d.ts +0 -159
  176. package/dist/runtime/components/elements/Chip.vue +0 -85
  177. package/dist/runtime/components/elements/Chip.vue.d.ts +0 -162
  178. package/dist/runtime/components/elements/Dropdown.vue +0 -254
  179. package/dist/runtime/components/elements/Dropdown.vue.d.ts +0 -254
  180. package/dist/runtime/components/elements/Icon.vue +0 -30
  181. package/dist/runtime/components/elements/Icon.vue.d.ts +0 -47
  182. package/dist/runtime/components/elements/Kbd.vue +0 -59
  183. package/dist/runtime/components/elements/Kbd.vue.d.ts +0 -86
  184. package/dist/runtime/components/elements/Link.vue +0 -95
  185. package/dist/runtime/components/elements/Link.vue.d.ts +0 -225
  186. package/dist/runtime/components/elements/Meter.vue +0 -170
  187. package/dist/runtime/components/elements/Meter.vue.d.ts +0 -279
  188. package/dist/runtime/components/elements/MeterGroup.d.ts +0 -135
  189. package/dist/runtime/components/elements/MeterGroup.js +0 -159
  190. package/dist/runtime/components/elements/Progress.vue +0 -203
  191. package/dist/runtime/components/elements/Progress.vue.d.ts +0 -280
  192. package/dist/runtime/components/forms/Checkbox.vue +0 -143
  193. package/dist/runtime/components/forms/Checkbox.vue.d.ts +0 -179
  194. package/dist/runtime/components/forms/Form.vue +0 -219
  195. package/dist/runtime/components/forms/Form.vue.d.ts +0 -53
  196. package/dist/runtime/components/forms/FormGroup.vue +0 -128
  197. package/dist/runtime/components/forms/FormGroup.vue.d.ts +0 -169
  198. package/dist/runtime/components/forms/Input.vue +0 -300
  199. package/dist/runtime/components/forms/Input.vue.d.ts +0 -482
  200. package/dist/runtime/components/forms/InputMenu.vue +0 -439
  201. package/dist/runtime/components/forms/InputMenu.vue.d.ts +0 -700
  202. package/dist/runtime/components/forms/Radio.vue +0 -140
  203. package/dist/runtime/components/forms/Radio.vue.d.ts +0 -168
  204. package/dist/runtime/components/forms/RadioGroup.vue +0 -145
  205. package/dist/runtime/components/forms/RadioGroup.vue.d.ts +0 -176
  206. package/dist/runtime/components/forms/Range.vue +0 -173
  207. package/dist/runtime/components/forms/Range.vue.d.ts +0 -268
  208. package/dist/runtime/components/forms/Select.vue +0 -322
  209. package/dist/runtime/components/forms/Select.vue.d.ts +0 -471
  210. package/dist/runtime/components/forms/SelectMenu.vue +0 -546
  211. package/dist/runtime/components/forms/SelectMenu.vue.d.ts +0 -754
  212. package/dist/runtime/components/forms/Textarea.vue +0 -231
  213. package/dist/runtime/components/forms/Textarea.vue.d.ts +0 -436
  214. package/dist/runtime/components/forms/Toggle.vue +0 -171
  215. package/dist/runtime/components/forms/Toggle.vue.d.ts +0 -262
  216. package/dist/runtime/components/layout/Card.vue +0 -63
  217. package/dist/runtime/components/layout/Card.vue.d.ts +0 -89
  218. package/dist/runtime/components/layout/Container.vue +0 -48
  219. package/dist/runtime/components/layout/Container.vue.d.ts +0 -53
  220. package/dist/runtime/components/layout/Divider.vue +0 -108
  221. package/dist/runtime/components/layout/Divider.vue.d.ts +0 -198
  222. package/dist/runtime/components/layout/Skeleton.vue +0 -46
  223. package/dist/runtime/components/layout/Skeleton.vue.d.ts +0 -53
  224. package/dist/runtime/components/navigation/Breadcrumb.vue +0 -82
  225. package/dist/runtime/components/navigation/Breadcrumb.vue.d.ts +0 -95
  226. package/dist/runtime/components/navigation/CommandPalette.vue +0 -345
  227. package/dist/runtime/components/navigation/CommandPalette.vue.d.ts +0 -390
  228. package/dist/runtime/components/navigation/CommandPaletteGroup.vue +0 -152
  229. package/dist/runtime/components/navigation/CommandPaletteGroup.vue.d.ts +0 -60
  230. package/dist/runtime/components/navigation/HorizontalNavigation.vue +0 -102
  231. package/dist/runtime/components/navigation/HorizontalNavigation.vue.d.ts +0 -99
  232. package/dist/runtime/components/navigation/Pagination.vue +0 -270
  233. package/dist/runtime/components/navigation/Pagination.vue.d.ts +0 -260
  234. package/dist/runtime/components/navigation/Tabs.vue +0 -163
  235. package/dist/runtime/components/navigation/Tabs.vue.d.ts +0 -165
  236. package/dist/runtime/components/navigation/VerticalNavigation.vue +0 -105
  237. package/dist/runtime/components/navigation/VerticalNavigation.vue.d.ts +0 -113
  238. package/dist/runtime/components/overlays/ContextMenu.vue +0 -85
  239. package/dist/runtime/components/overlays/ContextMenu.vue.d.ts +0 -126
  240. package/dist/runtime/components/overlays/Modal.vue +0 -122
  241. package/dist/runtime/components/overlays/Modal.vue.d.ts +0 -166
  242. package/dist/runtime/components/overlays/Modals.client.vue +0 -18
  243. package/dist/runtime/components/overlays/Notification.vue +0 -212
  244. package/dist/runtime/components/overlays/Notification.vue.d.ts +0 -235
  245. package/dist/runtime/components/overlays/Notifications.vue +0 -69
  246. package/dist/runtime/components/overlays/Notifications.vue.d.ts +0 -66
  247. package/dist/runtime/components/overlays/Popover.vue +0 -213
  248. package/dist/runtime/components/overlays/Popover.vue.d.ts +0 -220
  249. package/dist/runtime/components/overlays/Slideover.vue +0 -152
  250. package/dist/runtime/components/overlays/Slideover.vue.d.ts +0 -167
  251. package/dist/runtime/components/overlays/Slideovers.client.vue +0 -18
  252. package/dist/runtime/components/overlays/Tooltip.vue +0 -127
  253. package/dist/runtime/components/overlays/Tooltip.vue.d.ts +0 -165
  254. package/dist/runtime/composables/useCarouselScroll.d.ts +0 -2
  255. package/dist/runtime/composables/useCarouselScroll.js +0 -37
  256. package/dist/runtime/composables/useCopyToClipboard.d.ts +0 -10
  257. package/dist/runtime/composables/useCopyToClipboard.js +0 -26
  258. package/dist/runtime/composables/useFormGroup.d.ts +0 -18
  259. package/dist/runtime/composables/useFormGroup.js +0 -45
  260. package/dist/runtime/composables/usePopper.d.ts +0 -268
  261. package/dist/runtime/composables/usePopper.js +0 -94
  262. package/dist/runtime/composables/useShortcuts.d.ts +0 -12
  263. package/dist/runtime/composables/useShortcuts.js +0 -26
  264. package/dist/runtime/composables/useTimer.d.ts +0 -8
  265. package/dist/runtime/composables/useTimer.js +0 -51
  266. package/dist/runtime/composables/useUI.d.ts +0 -10
  267. package/dist/runtime/composables/useUI.js +0 -24
  268. package/dist/runtime/types/accordion.d.ts +0 -9
  269. package/dist/runtime/types/alert.d.ts +0 -12
  270. package/dist/runtime/types/avatar.d.ts +0 -17
  271. package/dist/runtime/types/badge.d.ts +0 -15
  272. package/dist/runtime/types/breadcrumb.d.ts +0 -10
  273. package/dist/runtime/types/button.d.ts +0 -31
  274. package/dist/runtime/types/chip.d.ts +0 -15
  275. package/dist/runtime/types/clipboard.d.ts +0 -3
  276. package/dist/runtime/types/command-palette.d.ts +0 -29
  277. package/dist/runtime/types/divider.d.ts +0 -3
  278. package/dist/runtime/types/dropdown.d.ts +0 -15
  279. package/dist/runtime/types/form-group.d.ts +0 -5
  280. package/dist/runtime/types/horizontal-navigation.d.ts +0 -13
  281. package/dist/runtime/types/input.d.ts +0 -8
  282. package/dist/runtime/types/kbd.d.ts +0 -5
  283. package/dist/runtime/types/link.d.ts +0 -12
  284. package/dist/runtime/types/meter.d.ts +0 -5
  285. package/dist/runtime/types/modal.d.ts +0 -18
  286. package/dist/runtime/types/notification.d.ts +0 -24
  287. package/dist/runtime/types/popper.d.ts +0 -17
  288. package/dist/runtime/types/progress.d.ts +0 -6
  289. package/dist/runtime/types/range.d.ts +0 -7
  290. package/dist/runtime/types/select.d.ts +0 -8
  291. package/dist/runtime/types/slideover.d.ts +0 -16
  292. package/dist/runtime/types/tabs.d.ts +0 -8
  293. package/dist/runtime/types/textarea.d.ts +0 -8
  294. package/dist/runtime/types/toggle.d.ts +0 -7
  295. package/dist/runtime/types/tooltip.d.ts +0 -7
  296. package/dist/runtime/types/vertical-navigation.d.ts +0 -13
  297. package/dist/runtime/ui.config/data/table.d.ts +0 -81
  298. package/dist/runtime/ui.config/data/table.js +0 -80
  299. package/dist/runtime/ui.config/elements/accordion.d.ts +0 -23
  300. package/dist/runtime/ui.config/elements/accordion.js +0 -22
  301. package/dist/runtime/ui.config/elements/alert.d.ts +0 -41
  302. package/dist/runtime/ui.config/elements/alert.js +0 -40
  303. package/dist/runtime/ui.config/elements/avatar.d.ts +0 -60
  304. package/dist/runtime/ui.config/elements/avatar.js +0 -59
  305. package/dist/runtime/ui.config/elements/avatarGroup.d.ts +0 -6
  306. package/dist/runtime/ui.config/elements/avatarGroup.js +0 -5
  307. package/dist/runtime/ui.config/elements/badge.d.ts +0 -34
  308. package/dist/runtime/ui.config/elements/badge.js +0 -33
  309. package/dist/runtime/ui.config/elements/button.d.ts +0 -81
  310. package/dist/runtime/ui.config/elements/button.js +0 -80
  311. package/dist/runtime/ui.config/elements/buttonGroup.d.ts +0 -101
  312. package/dist/runtime/ui.config/elements/buttonGroup.js +0 -19
  313. package/dist/runtime/ui.config/elements/carousel.d.ts +0 -27
  314. package/dist/runtime/ui.config/elements/carousel.js +0 -26
  315. package/dist/runtime/ui.config/elements/chip.d.ts +0 -35
  316. package/dist/runtime/ui.config/elements/chip.js +0 -34
  317. package/dist/runtime/ui.config/elements/dropdown.d.ts +0 -59
  318. package/dist/runtime/ui.config/elements/dropdown.js +0 -57
  319. package/dist/runtime/ui.config/elements/kbd.d.ts +0 -17
  320. package/dist/runtime/ui.config/elements/kbd.js +0 -16
  321. package/dist/runtime/ui.config/elements/meter.d.ts +0 -77
  322. package/dist/runtime/ui.config/elements/meter.js +0 -76
  323. package/dist/runtime/ui.config/elements/meterGroup.d.ts +0 -52
  324. package/dist/runtime/ui.config/elements/meterGroup.js +0 -24
  325. package/dist/runtime/ui.config/elements/progress.d.ts +0 -75
  326. package/dist/runtime/ui.config/elements/progress.js +0 -74
  327. package/dist/runtime/ui.config/forms/checkbox.d.ts +0 -19
  328. package/dist/runtime/ui.config/forms/checkbox.js +0 -18
  329. package/dist/runtime/ui.config/forms/formGroup.d.ts +0 -26
  330. package/dist/runtime/ui.config/forms/formGroup.js +0 -26
  331. package/dist/runtime/ui.config/forms/input.d.ts +0 -110
  332. package/dist/runtime/ui.config/forms/input.js +0 -109
  333. package/dist/runtime/ui.config/forms/inputMenu.d.ts +0 -64
  334. package/dist/runtime/ui.config/forms/inputMenu.js +0 -62
  335. package/dist/runtime/ui.config/forms/radio.d.ts +0 -18
  336. package/dist/runtime/ui.config/forms/radio.js +0 -17
  337. package/dist/runtime/ui.config/forms/radioGroup.d.ts +0 -9
  338. package/dist/runtime/ui.config/forms/radioGroup.js +0 -8
  339. package/dist/runtime/ui.config/forms/range.d.ts +0 -64
  340. package/dist/runtime/ui.config/forms/range.js +0 -63
  341. package/dist/runtime/ui.config/forms/select.d.ts +0 -111
  342. package/dist/runtime/ui.config/forms/select.js +0 -13
  343. package/dist/runtime/ui.config/forms/selectMenu.d.ts +0 -70
  344. package/dist/runtime/ui.config/forms/selectMenu.js +0 -32
  345. package/dist/runtime/ui.config/forms/textarea.d.ts +0 -109
  346. package/dist/runtime/ui.config/forms/textarea.js +0 -10
  347. package/dist/runtime/ui.config/forms/toggle.d.ts +0 -63
  348. package/dist/runtime/ui.config/forms/toggle.js +0 -62
  349. package/dist/runtime/ui.config/index.d.ts +0 -43
  350. package/dist/runtime/ui.config/index.js +0 -43
  351. package/dist/runtime/ui.config/layout/card.d.ts +0 -24
  352. package/dist/runtime/ui.config/layout/card.js +0 -23
  353. package/dist/runtime/ui.config/layout/container.d.ts +0 -6
  354. package/dist/runtime/ui.config/layout/container.js +0 -5
  355. package/dist/runtime/ui.config/layout/divider.d.ts +0 -52
  356. package/dist/runtime/ui.config/layout/divider.js +0 -51
  357. package/dist/runtime/ui.config/layout/skeleton.d.ts +0 -6
  358. package/dist/runtime/ui.config/layout/skeleton.js +0 -5
  359. package/dist/runtime/ui.config/navigation/breadcrumb.d.ts +0 -21
  360. package/dist/runtime/ui.config/navigation/breadcrumb.js +0 -20
  361. package/dist/runtime/ui.config/navigation/commandPalette.d.ts +0 -72
  362. package/dist/runtime/ui.config/navigation/commandPalette.js +0 -71
  363. package/dist/runtime/ui.config/navigation/horizontalNavigation.d.ts +0 -27
  364. package/dist/runtime/ui.config/navigation/horizontalNavigation.js +0 -26
  365. package/dist/runtime/ui.config/navigation/pagination.d.ts +0 -35
  366. package/dist/runtime/ui.config/navigation/pagination.js +0 -34
  367. package/dist/runtime/ui.config/navigation/tabs.d.ts +0 -35
  368. package/dist/runtime/ui.config/navigation/tabs.js +0 -34
  369. package/dist/runtime/ui.config/navigation/verticalNavigation.d.ts +0 -34
  370. package/dist/runtime/ui.config/navigation/verticalNavigation.js +0 -33
  371. package/dist/runtime/ui.config/overlays/contextMenu.d.ts +0 -31
  372. package/dist/runtime/ui.config/overlays/contextMenu.js +0 -25
  373. package/dist/runtime/ui.config/overlays/modal.d.ts +0 -36
  374. package/dist/runtime/ui.config/overlays/modal.js +0 -37
  375. package/dist/runtime/ui.config/overlays/notification.d.ts +0 -50
  376. package/dist/runtime/ui.config/overlays/notification.js +0 -50
  377. package/dist/runtime/ui.config/overlays/notifications.d.ts +0 -7
  378. package/dist/runtime/ui.config/overlays/notifications.js +0 -6
  379. package/dist/runtime/ui.config/overlays/popover.d.ts +0 -47
  380. package/dist/runtime/ui.config/overlays/popover.js +0 -41
  381. package/dist/runtime/ui.config/overlays/slideover.d.ts +0 -35
  382. package/dist/runtime/ui.config/overlays/slideover.js +0 -36
  383. package/dist/runtime/ui.config/overlays/tooltip.d.ts +0 -37
  384. package/dist/runtime/ui.config/overlays/tooltip.js +0 -34
  385. package/dist/runtime/ui.config/popper.d.ts +0 -8
  386. package/dist/runtime/ui.config/popper.js +0 -9
  387. package/dist/runtime/ui.css +0 -1
  388. package/dist/runtime/utils/colors.d.ts +0 -11
  389. package/dist/runtime/utils/colors.js +0 -307
  390. package/dist/runtime/utils/lodash.d.ts +0 -2
  391. package/dist/runtime/utils/lodash.js +0 -23
  392. package/dist/runtime/plugins/{modals.d.ts → modal.d.ts} +0 -0
  393. package/dist/runtime/plugins/{modals.js → modal.js} +1 -1
  394. /package/dist/runtime/plugins/{slideovers.d.ts → slideover.d.ts} +0 -0
@@ -0,0 +1,475 @@
1
+ 'use strict';
2
+
3
+ const consola = require('consola');
4
+ const utils = require('consola/utils');
5
+
6
+ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e.default : e; }
7
+
8
+ const consola__default = /*#__PURE__*/_interopDefaultCompat(consola);
9
+
10
+ function toArray(val) {
11
+ if (Array.isArray(val)) {
12
+ return val;
13
+ }
14
+ return val === void 0 ? [] : [val];
15
+ }
16
+ function formatLineColumns(lines, linePrefix = "") {
17
+ const maxLengh = [];
18
+ for (const line of lines) {
19
+ for (const [i, element] of line.entries()) {
20
+ maxLengh[i] = Math.max(maxLengh[i] || 0, element.length);
21
+ }
22
+ }
23
+ return lines.map(
24
+ (l) => l.map(
25
+ (c, i) => linePrefix + c[i === 0 ? "padStart" : "padEnd"](maxLengh[i])
26
+ ).join(" ")
27
+ ).join("\n");
28
+ }
29
+ function resolveValue(input) {
30
+ return typeof input === "function" ? input() : input;
31
+ }
32
+ class CLIError extends Error {
33
+ constructor(message, code) {
34
+ super(message);
35
+ this.code = code;
36
+ this.name = "CLIError";
37
+ }
38
+ }
39
+
40
+ const NUMBER_CHAR_RE = /\d/;
41
+ const STR_SPLITTERS = ["-", "_", "/", "."];
42
+ function isUppercase(char = "") {
43
+ if (NUMBER_CHAR_RE.test(char)) {
44
+ return void 0;
45
+ }
46
+ return char !== char.toLowerCase();
47
+ }
48
+ function splitByCase(str, separators) {
49
+ const splitters = separators ?? STR_SPLITTERS;
50
+ const parts = [];
51
+ if (!str || typeof str !== "string") {
52
+ return parts;
53
+ }
54
+ let buff = "";
55
+ let previousUpper;
56
+ let previousSplitter;
57
+ for (const char of str) {
58
+ const isSplitter = splitters.includes(char);
59
+ if (isSplitter === true) {
60
+ parts.push(buff);
61
+ buff = "";
62
+ previousUpper = void 0;
63
+ continue;
64
+ }
65
+ const isUpper = isUppercase(char);
66
+ if (previousSplitter === false) {
67
+ if (previousUpper === false && isUpper === true) {
68
+ parts.push(buff);
69
+ buff = char;
70
+ previousUpper = isUpper;
71
+ continue;
72
+ }
73
+ if (previousUpper === true && isUpper === false && buff.length > 1) {
74
+ const lastChar = buff.at(-1);
75
+ parts.push(buff.slice(0, Math.max(0, buff.length - 1)));
76
+ buff = lastChar + char;
77
+ previousUpper = isUpper;
78
+ continue;
79
+ }
80
+ }
81
+ buff += char;
82
+ previousUpper = isUpper;
83
+ previousSplitter = isSplitter;
84
+ }
85
+ parts.push(buff);
86
+ return parts;
87
+ }
88
+ function upperFirst(str) {
89
+ return str ? str[0].toUpperCase() + str.slice(1) : "";
90
+ }
91
+ function lowerFirst(str) {
92
+ return str ? str[0].toLowerCase() + str.slice(1) : "";
93
+ }
94
+ function pascalCase(str, opts) {
95
+ return str ? (Array.isArray(str) ? str : splitByCase(str)).map((p) => upperFirst(opts?.normalize ? p.toLowerCase() : p)).join("") : "";
96
+ }
97
+ function camelCase(str, opts) {
98
+ return lowerFirst(pascalCase(str || "", opts));
99
+ }
100
+ function kebabCase(str, joiner) {
101
+ return str ? (Array.isArray(str) ? str : splitByCase(str)).map((p) => p.toLowerCase()).join(joiner ?? "-") : "";
102
+ }
103
+
104
+ function toArr(any) {
105
+ return any == void 0 ? [] : Array.isArray(any) ? any : [any];
106
+ }
107
+ function toVal(out, key, val, opts) {
108
+ let x;
109
+ const old = out[key];
110
+ const nxt = ~opts.string.indexOf(key) ? val == void 0 || val === true ? "" : String(val) : typeof val === "boolean" ? val : ~opts.boolean.indexOf(key) ? val === "false" ? false : val === "true" || (out._.push((x = +val, x * 0 === 0) ? x : val), !!val) : (x = +val, x * 0 === 0) ? x : val;
111
+ out[key] = old == void 0 ? nxt : Array.isArray(old) ? old.concat(nxt) : [old, nxt];
112
+ }
113
+ function parseRawArgs(args = [], opts = {}) {
114
+ let k;
115
+ let arr;
116
+ let arg;
117
+ let name;
118
+ let val;
119
+ const out = { _: [] };
120
+ let i = 0;
121
+ let j = 0;
122
+ let idx = 0;
123
+ const len = args.length;
124
+ const alibi = opts.alias !== void 0;
125
+ const strict = opts.unknown !== void 0;
126
+ const defaults = opts.default !== void 0;
127
+ opts.alias = opts.alias || {};
128
+ opts.string = toArr(opts.string);
129
+ opts.boolean = toArr(opts.boolean);
130
+ if (alibi) {
131
+ for (k in opts.alias) {
132
+ arr = opts.alias[k] = toArr(opts.alias[k]);
133
+ for (i = 0; i < arr.length; i++) {
134
+ (opts.alias[arr[i]] = arr.concat(k)).splice(i, 1);
135
+ }
136
+ }
137
+ }
138
+ for (i = opts.boolean.length; i-- > 0; ) {
139
+ arr = opts.alias[opts.boolean[i]] || [];
140
+ for (j = arr.length; j-- > 0; ) {
141
+ opts.boolean.push(arr[j]);
142
+ }
143
+ }
144
+ for (i = opts.string.length; i-- > 0; ) {
145
+ arr = opts.alias[opts.string[i]] || [];
146
+ for (j = arr.length; j-- > 0; ) {
147
+ opts.string.push(arr[j]);
148
+ }
149
+ }
150
+ if (defaults) {
151
+ for (k in opts.default) {
152
+ name = typeof opts.default[k];
153
+ arr = opts.alias[k] = opts.alias[k] || [];
154
+ if (opts[name] !== void 0) {
155
+ opts[name].push(k);
156
+ for (i = 0; i < arr.length; i++) {
157
+ opts[name].push(arr[i]);
158
+ }
159
+ }
160
+ }
161
+ }
162
+ const keys = strict ? Object.keys(opts.alias) : [];
163
+ for (i = 0; i < len; i++) {
164
+ arg = args[i];
165
+ if (arg === "--") {
166
+ out._ = out._.concat(args.slice(++i));
167
+ break;
168
+ }
169
+ for (j = 0; j < arg.length; j++) {
170
+ if (arg.charCodeAt(j) !== 45) {
171
+ break;
172
+ }
173
+ }
174
+ if (j === 0) {
175
+ out._.push(arg);
176
+ } else if (arg.substring(j, j + 3) === "no-") {
177
+ name = arg.slice(Math.max(0, j + 3));
178
+ if (strict && !~keys.indexOf(name)) {
179
+ return opts.unknown(arg);
180
+ }
181
+ out[name] = false;
182
+ } else {
183
+ for (idx = j + 1; idx < arg.length; idx++) {
184
+ if (arg.charCodeAt(idx) === 61) {
185
+ break;
186
+ }
187
+ }
188
+ name = arg.substring(j, idx);
189
+ val = arg.slice(Math.max(0, ++idx)) || i + 1 === len || ("" + args[i + 1]).charCodeAt(0) === 45 || args[++i];
190
+ arr = j === 2 ? [name] : name;
191
+ for (idx = 0; idx < arr.length; idx++) {
192
+ name = arr[idx];
193
+ if (strict && !~keys.indexOf(name)) {
194
+ return opts.unknown("-".repeat(j) + name);
195
+ }
196
+ toVal(out, name, idx + 1 < arr.length || val, opts);
197
+ }
198
+ }
199
+ }
200
+ if (defaults) {
201
+ for (k in opts.default) {
202
+ if (out[k] === void 0) {
203
+ out[k] = opts.default[k];
204
+ }
205
+ }
206
+ }
207
+ if (alibi) {
208
+ for (k in out) {
209
+ arr = opts.alias[k] || [];
210
+ while (arr.length > 0) {
211
+ out[arr.shift()] = out[k];
212
+ }
213
+ }
214
+ }
215
+ return out;
216
+ }
217
+
218
+ function parseArgs(rawArgs, argsDef) {
219
+ const parseOptions = {
220
+ boolean: [],
221
+ string: [],
222
+ mixed: [],
223
+ alias: {},
224
+ default: {}
225
+ };
226
+ const args = resolveArgs(argsDef);
227
+ for (const arg of args) {
228
+ if (arg.type === "positional") {
229
+ continue;
230
+ }
231
+ if (arg.type === "string") {
232
+ parseOptions.string.push(arg.name);
233
+ } else if (arg.type === "boolean") {
234
+ parseOptions.boolean.push(arg.name);
235
+ }
236
+ if (arg.default !== void 0) {
237
+ parseOptions.default[arg.name] = arg.default;
238
+ }
239
+ if (arg.alias) {
240
+ parseOptions.alias[arg.name] = arg.alias;
241
+ }
242
+ }
243
+ const parsed = parseRawArgs(rawArgs, parseOptions);
244
+ const [...positionalArguments] = parsed._;
245
+ const parsedArgsProxy = new Proxy(parsed, {
246
+ get(target, prop) {
247
+ return target[prop] ?? target[camelCase(prop)] ?? target[kebabCase(prop)];
248
+ }
249
+ });
250
+ for (const [, arg] of args.entries()) {
251
+ if (arg.type === "positional") {
252
+ const nextPositionalArgument = positionalArguments.shift();
253
+ if (nextPositionalArgument !== void 0) {
254
+ parsedArgsProxy[arg.name] = nextPositionalArgument;
255
+ } else if (arg.default === void 0 && arg.required !== false) {
256
+ throw new CLIError(
257
+ `Missing required positional argument: ${arg.name.toUpperCase()}`,
258
+ "EARG"
259
+ );
260
+ } else {
261
+ parsedArgsProxy[arg.name] = arg.default;
262
+ }
263
+ } else if (arg.required && parsedArgsProxy[arg.name] === void 0) {
264
+ throw new CLIError(`Missing required argument: --${arg.name}`, "EARG");
265
+ }
266
+ }
267
+ return parsedArgsProxy;
268
+ }
269
+ function resolveArgs(argsDef) {
270
+ const args = [];
271
+ for (const [name, argDef] of Object.entries(argsDef || {})) {
272
+ args.push({
273
+ ...argDef,
274
+ name,
275
+ alias: toArray(argDef.alias)
276
+ });
277
+ }
278
+ return args;
279
+ }
280
+
281
+ function defineCommand(def) {
282
+ return def;
283
+ }
284
+ async function runCommand(cmd, opts) {
285
+ const cmdArgs = await resolveValue(cmd.args || {});
286
+ const parsedArgs = parseArgs(opts.rawArgs, cmdArgs);
287
+ const context = {
288
+ rawArgs: opts.rawArgs,
289
+ args: parsedArgs,
290
+ data: opts.data,
291
+ cmd
292
+ };
293
+ if (typeof cmd.setup === "function") {
294
+ await cmd.setup(context);
295
+ }
296
+ let result;
297
+ try {
298
+ const subCommands = await resolveValue(cmd.subCommands);
299
+ if (subCommands && Object.keys(subCommands).length > 0) {
300
+ const subCommandArgIndex = opts.rawArgs.findIndex(
301
+ (arg) => !arg.startsWith("-")
302
+ );
303
+ const subCommandName = opts.rawArgs[subCommandArgIndex];
304
+ if (subCommandName) {
305
+ if (!subCommands[subCommandName]) {
306
+ throw new CLIError(
307
+ `Unknown command \`${subCommandName}\``,
308
+ "E_UNKNOWN_COMMAND"
309
+ );
310
+ }
311
+ const subCommand = await resolveValue(subCommands[subCommandName]);
312
+ if (subCommand) {
313
+ await runCommand(subCommand, {
314
+ rawArgs: opts.rawArgs.slice(subCommandArgIndex + 1)
315
+ });
316
+ }
317
+ } else if (!cmd.run) {
318
+ throw new CLIError(`No command specified.`, "E_NO_COMMAND");
319
+ }
320
+ }
321
+ if (typeof cmd.run === "function") {
322
+ result = await cmd.run(context);
323
+ }
324
+ } finally {
325
+ if (typeof cmd.cleanup === "function") {
326
+ await cmd.cleanup(context);
327
+ }
328
+ }
329
+ return { result };
330
+ }
331
+ async function resolveSubCommand(cmd, rawArgs, parent) {
332
+ const subCommands = await resolveValue(cmd.subCommands);
333
+ if (subCommands && Object.keys(subCommands).length > 0) {
334
+ const subCommandArgIndex = rawArgs.findIndex((arg) => !arg.startsWith("-"));
335
+ const subCommandName = rawArgs[subCommandArgIndex];
336
+ const subCommand = await resolveValue(subCommands[subCommandName]);
337
+ if (subCommand) {
338
+ return resolveSubCommand(
339
+ subCommand,
340
+ rawArgs.slice(subCommandArgIndex + 1),
341
+ cmd
342
+ );
343
+ }
344
+ }
345
+ return [cmd, parent];
346
+ }
347
+
348
+ async function showUsage(cmd, parent) {
349
+ try {
350
+ consola__default.log(await renderUsage(cmd, parent) + "\n");
351
+ } catch (error) {
352
+ consola__default.error(error);
353
+ }
354
+ }
355
+ async function renderUsage(cmd, parent) {
356
+ const cmdMeta = await resolveValue(cmd.meta || {});
357
+ const cmdArgs = resolveArgs(await resolveValue(cmd.args || {}));
358
+ const parentMeta = await resolveValue(parent?.meta || {});
359
+ const commandName = `${parentMeta.name ? `${parentMeta.name} ` : ""}` + (cmdMeta.name || process.argv[1]);
360
+ const argLines = [];
361
+ const posLines = [];
362
+ const commandsLines = [];
363
+ const usageLine = [];
364
+ for (const arg of cmdArgs) {
365
+ if (arg.type === "positional") {
366
+ const name = arg.name.toUpperCase();
367
+ const isRequired = arg.required !== false && arg.default === void 0;
368
+ const defaultHint = arg.default ? `="${arg.default}"` : "";
369
+ posLines.push([
370
+ "`" + name + defaultHint + "`",
371
+ arg.description || "",
372
+ arg.valueHint ? `<${arg.valueHint}>` : ""
373
+ ]);
374
+ usageLine.push(isRequired ? `<${name}>` : `[${name}]`);
375
+ } else {
376
+ const isRequired = arg.required === true && arg.default === void 0;
377
+ const argStr = (arg.type === "boolean" && arg.default === true ? [
378
+ ...(arg.alias || []).map((a) => `--no-${a}`),
379
+ `--no-${arg.name}`
380
+ ].join(", ") : [...(arg.alias || []).map((a) => `-${a}`), `--${arg.name}`].join(
381
+ ", "
382
+ )) + (arg.type === "string" && (arg.valueHint || arg.default) ? `=${arg.valueHint ? `<${arg.valueHint}>` : `"${arg.default || ""}"`}` : "");
383
+ argLines.push([
384
+ "`" + argStr + (isRequired ? " (required)" : "") + "`",
385
+ arg.description || ""
386
+ ]);
387
+ if (isRequired) {
388
+ usageLine.push(argStr);
389
+ }
390
+ }
391
+ }
392
+ if (cmd.subCommands) {
393
+ const commandNames = [];
394
+ const subCommands = await resolveValue(cmd.subCommands);
395
+ for (const [name, sub] of Object.entries(subCommands)) {
396
+ const subCmd = await resolveValue(sub);
397
+ const meta = await resolveValue(subCmd?.meta);
398
+ commandsLines.push([`\`${name}\``, meta?.description || ""]);
399
+ commandNames.push(name);
400
+ }
401
+ usageLine.push(commandNames.join("|"));
402
+ }
403
+ const usageLines = [];
404
+ const version = cmdMeta.version || parentMeta.version;
405
+ usageLines.push(
406
+ utils.colors.gray(
407
+ `${cmdMeta.description} (${commandName + (version ? ` v${version}` : "")})`
408
+ ),
409
+ ""
410
+ );
411
+ const hasOptions = argLines.length > 0 || posLines.length > 0;
412
+ usageLines.push(
413
+ `${utils.colors.underline(utils.colors.bold("USAGE"))} \`${commandName}${hasOptions ? " [OPTIONS]" : ""} ${usageLine.join(" ")}\``,
414
+ ""
415
+ );
416
+ if (posLines.length > 0) {
417
+ usageLines.push(utils.colors.underline(utils.colors.bold("ARGUMENTS")), "");
418
+ usageLines.push(formatLineColumns(posLines, " "));
419
+ usageLines.push("");
420
+ }
421
+ if (argLines.length > 0) {
422
+ usageLines.push(utils.colors.underline(utils.colors.bold("OPTIONS")), "");
423
+ usageLines.push(formatLineColumns(argLines, " "));
424
+ usageLines.push("");
425
+ }
426
+ if (commandsLines.length > 0) {
427
+ usageLines.push(utils.colors.underline(utils.colors.bold("COMMANDS")), "");
428
+ usageLines.push(formatLineColumns(commandsLines, " "));
429
+ usageLines.push(
430
+ "",
431
+ `Use \`${commandName} <command> --help\` for more information about a command.`
432
+ );
433
+ }
434
+ return usageLines.filter((l) => typeof l === "string").join("\n");
435
+ }
436
+
437
+ async function runMain(cmd, opts = {}) {
438
+ const rawArgs = opts.rawArgs || process.argv.slice(2);
439
+ const showUsage$1 = opts.showUsage || showUsage;
440
+ try {
441
+ if (rawArgs.includes("--help") || rawArgs.includes("-h")) {
442
+ await showUsage$1(...await resolveSubCommand(cmd, rawArgs));
443
+ process.exit(0);
444
+ } else if (rawArgs.length === 1 && rawArgs[0] === "--version") {
445
+ const meta = typeof cmd.meta === "function" ? await cmd.meta() : await cmd.meta;
446
+ if (!meta?.version) {
447
+ throw new CLIError("No version specified", "E_NO_VERSION");
448
+ }
449
+ consola__default.log(meta.version);
450
+ } else {
451
+ await runCommand(cmd, { rawArgs });
452
+ }
453
+ } catch (error) {
454
+ const isCLIError = error instanceof CLIError;
455
+ if (!isCLIError) {
456
+ consola__default.error(error, "\n");
457
+ }
458
+ if (isCLIError) {
459
+ await showUsage$1(...await resolveSubCommand(cmd, rawArgs));
460
+ }
461
+ consola__default.error(error.message);
462
+ process.exit(1);
463
+ }
464
+ }
465
+ function createMain(cmd) {
466
+ return (opts = {}) => runMain(cmd, opts);
467
+ }
468
+
469
+ exports.createMain = createMain;
470
+ exports.defineCommand = defineCommand;
471
+ exports.parseArgs = parseArgs;
472
+ exports.renderUsage = renderUsage;
473
+ exports.runCommand = runCommand;
474
+ exports.runMain = runMain;
475
+ exports.showUsage = showUsage;
@@ -0,0 +1,80 @@
1
+ type ArgType = "boolean" | "string" | "positional" | undefined;
2
+ type _ArgDef<T extends ArgType, VT extends boolean | string> = {
3
+ type?: T;
4
+ description?: string;
5
+ valueHint?: string;
6
+ alias?: string | string[];
7
+ default?: VT;
8
+ required?: boolean;
9
+ };
10
+ type BooleanArgDef = _ArgDef<"boolean", boolean>;
11
+ type StringArgDef = _ArgDef<"string", string>;
12
+ type PositionalArgDef = Omit<_ArgDef<"positional", string>, "alias">;
13
+ type ArgDef = BooleanArgDef | StringArgDef | PositionalArgDef;
14
+ type ArgsDef = Record<string, ArgDef>;
15
+ type Arg = ArgDef & {
16
+ name: string;
17
+ alias: string[];
18
+ };
19
+ type ParsedArgs<T extends ArgsDef = ArgsDef> = {
20
+ _: string[];
21
+ } & Record<{
22
+ [K in keyof T]: T[K] extends {
23
+ type: "positional";
24
+ } ? K : never;
25
+ }[keyof T], string> & Record<{
26
+ [K in keyof T]: T[K] extends {
27
+ type: "string";
28
+ } ? K : never;
29
+ }[keyof T], string> & Record<{
30
+ [K in keyof T]: T[K] extends {
31
+ type: "boolean";
32
+ } ? K : never;
33
+ }[keyof T], boolean> & Record<string, string | boolean | string[]>;
34
+ interface CommandMeta {
35
+ name?: string;
36
+ version?: string;
37
+ description?: string;
38
+ }
39
+ type SubCommandsDef = Record<string, Resolvable<CommandDef<any>>>;
40
+ type CommandDef<T extends ArgsDef = ArgsDef> = {
41
+ meta?: Resolvable<CommandMeta>;
42
+ args?: Resolvable<T>;
43
+ subCommands?: Resolvable<SubCommandsDef>;
44
+ setup?: (context: CommandContext<T>) => any | Promise<any>;
45
+ cleanup?: (context: CommandContext<T>) => any | Promise<any>;
46
+ run?: (context: CommandContext<T>) => any | Promise<any>;
47
+ };
48
+ type CommandContext<T extends ArgsDef = ArgsDef> = {
49
+ rawArgs: string[];
50
+ args: ParsedArgs<T>;
51
+ cmd: CommandDef<T>;
52
+ subCommand?: CommandDef<T>;
53
+ data?: any;
54
+ };
55
+ type Awaitable<T> = () => T | Promise<T>;
56
+ type Resolvable<T> = T | Promise<T> | (() => T) | (() => Promise<T>);
57
+
58
+ declare function defineCommand<T extends ArgsDef = ArgsDef>(def: CommandDef<T>): CommandDef<T>;
59
+ interface RunCommandOptions {
60
+ rawArgs: string[];
61
+ data?: any;
62
+ showUsage?: boolean;
63
+ }
64
+ declare function runCommand<T extends ArgsDef = ArgsDef>(cmd: CommandDef<T>, opts: RunCommandOptions): Promise<{
65
+ result: unknown;
66
+ }>;
67
+
68
+ declare function showUsage<T extends ArgsDef = ArgsDef>(cmd: CommandDef<T>, parent?: CommandDef<T>): Promise<void>;
69
+ declare function renderUsage<T extends ArgsDef = ArgsDef>(cmd: CommandDef<T>, parent?: CommandDef<T>): Promise<string>;
70
+
71
+ interface RunMainOptions {
72
+ rawArgs?: string[];
73
+ showUsage?: typeof showUsage;
74
+ }
75
+ declare function runMain<T extends ArgsDef = ArgsDef>(cmd: CommandDef<T>, opts?: RunMainOptions): Promise<void>;
76
+ declare function createMain<T extends ArgsDef = ArgsDef>(cmd: CommandDef<T>): (opts?: RunMainOptions) => Promise<void>;
77
+
78
+ declare function parseArgs<T extends ArgsDef = ArgsDef>(rawArgs: string[], argsDef: ArgsDef): ParsedArgs<T>;
79
+
80
+ export { type Arg, type ArgDef, type ArgType, type ArgsDef, type Awaitable, type BooleanArgDef, type CommandContext, type CommandDef, type CommandMeta, type ParsedArgs, type PositionalArgDef, type Resolvable, type RunCommandOptions, type RunMainOptions, type StringArgDef, type SubCommandsDef, type _ArgDef, createMain, defineCommand, parseArgs, renderUsage, runCommand, runMain, showUsage };
@@ -0,0 +1,80 @@
1
+ type ArgType = "boolean" | "string" | "positional" | undefined;
2
+ type _ArgDef<T extends ArgType, VT extends boolean | string> = {
3
+ type?: T;
4
+ description?: string;
5
+ valueHint?: string;
6
+ alias?: string | string[];
7
+ default?: VT;
8
+ required?: boolean;
9
+ };
10
+ type BooleanArgDef = _ArgDef<"boolean", boolean>;
11
+ type StringArgDef = _ArgDef<"string", string>;
12
+ type PositionalArgDef = Omit<_ArgDef<"positional", string>, "alias">;
13
+ type ArgDef = BooleanArgDef | StringArgDef | PositionalArgDef;
14
+ type ArgsDef = Record<string, ArgDef>;
15
+ type Arg = ArgDef & {
16
+ name: string;
17
+ alias: string[];
18
+ };
19
+ type ParsedArgs<T extends ArgsDef = ArgsDef> = {
20
+ _: string[];
21
+ } & Record<{
22
+ [K in keyof T]: T[K] extends {
23
+ type: "positional";
24
+ } ? K : never;
25
+ }[keyof T], string> & Record<{
26
+ [K in keyof T]: T[K] extends {
27
+ type: "string";
28
+ } ? K : never;
29
+ }[keyof T], string> & Record<{
30
+ [K in keyof T]: T[K] extends {
31
+ type: "boolean";
32
+ } ? K : never;
33
+ }[keyof T], boolean> & Record<string, string | boolean | string[]>;
34
+ interface CommandMeta {
35
+ name?: string;
36
+ version?: string;
37
+ description?: string;
38
+ }
39
+ type SubCommandsDef = Record<string, Resolvable<CommandDef<any>>>;
40
+ type CommandDef<T extends ArgsDef = ArgsDef> = {
41
+ meta?: Resolvable<CommandMeta>;
42
+ args?: Resolvable<T>;
43
+ subCommands?: Resolvable<SubCommandsDef>;
44
+ setup?: (context: CommandContext<T>) => any | Promise<any>;
45
+ cleanup?: (context: CommandContext<T>) => any | Promise<any>;
46
+ run?: (context: CommandContext<T>) => any | Promise<any>;
47
+ };
48
+ type CommandContext<T extends ArgsDef = ArgsDef> = {
49
+ rawArgs: string[];
50
+ args: ParsedArgs<T>;
51
+ cmd: CommandDef<T>;
52
+ subCommand?: CommandDef<T>;
53
+ data?: any;
54
+ };
55
+ type Awaitable<T> = () => T | Promise<T>;
56
+ type Resolvable<T> = T | Promise<T> | (() => T) | (() => Promise<T>);
57
+
58
+ declare function defineCommand<T extends ArgsDef = ArgsDef>(def: CommandDef<T>): CommandDef<T>;
59
+ interface RunCommandOptions {
60
+ rawArgs: string[];
61
+ data?: any;
62
+ showUsage?: boolean;
63
+ }
64
+ declare function runCommand<T extends ArgsDef = ArgsDef>(cmd: CommandDef<T>, opts: RunCommandOptions): Promise<{
65
+ result: unknown;
66
+ }>;
67
+
68
+ declare function showUsage<T extends ArgsDef = ArgsDef>(cmd: CommandDef<T>, parent?: CommandDef<T>): Promise<void>;
69
+ declare function renderUsage<T extends ArgsDef = ArgsDef>(cmd: CommandDef<T>, parent?: CommandDef<T>): Promise<string>;
70
+
71
+ interface RunMainOptions {
72
+ rawArgs?: string[];
73
+ showUsage?: typeof showUsage;
74
+ }
75
+ declare function runMain<T extends ArgsDef = ArgsDef>(cmd: CommandDef<T>, opts?: RunMainOptions): Promise<void>;
76
+ declare function createMain<T extends ArgsDef = ArgsDef>(cmd: CommandDef<T>): (opts?: RunMainOptions) => Promise<void>;
77
+
78
+ declare function parseArgs<T extends ArgsDef = ArgsDef>(rawArgs: string[], argsDef: ArgsDef): ParsedArgs<T>;
79
+
80
+ export { type Arg, type ArgDef, type ArgType, type ArgsDef, type Awaitable, type BooleanArgDef, type CommandContext, type CommandDef, type CommandMeta, type ParsedArgs, type PositionalArgDef, type Resolvable, type RunCommandOptions, type RunMainOptions, type StringArgDef, type SubCommandsDef, type _ArgDef, createMain, defineCommand, parseArgs, renderUsage, runCommand, runMain, showUsage };