@sidekick-coder/zenith-kit 0.0.12 → 0.0.14

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 (436) hide show
  1. package/bin/zenith.js +27 -0
  2. package/bin/zkit.js +26 -0
  3. package/cli/commands/build.js +49 -0
  4. package/cli/commands/generateLegacyFolder.js +38 -0
  5. package/cli/commands/generatePluginId.js +17 -0
  6. package/cli/config.js +23 -0
  7. package/cli/utils/createWrapper.js +17 -0
  8. package/dist/client/index.d.mts +513 -0
  9. package/dist/client/index.mjs +2 -0
  10. package/dist/components/index.es.js +63946 -0
  11. package/dist/components/styles.css +4833 -0
  12. package/dist/server/index.d.mts +1780 -1314
  13. package/dist/server/index.mjs +5 -7754
  14. package/dist/shared/chunk-0Lt9GpW0.mjs +1 -0
  15. package/dist/shared/index.d.mts +472 -19
  16. package/dist/shared/index.mjs +2 -841
  17. package/legacy/client/components/Alert.vue +3 -0
  18. package/legacy/client/components/AlertButton.vue +3 -0
  19. package/legacy/client/components/Button.vue +3 -0
  20. package/legacy/client/components/ClientOnly.vue +3 -0
  21. package/legacy/client/components/ColorPicker.vue +3 -0
  22. package/legacy/client/components/ColorWheel.vue +3 -0
  23. package/legacy/client/components/Component.vue +3 -0
  24. package/legacy/client/components/DataTable.vue +4 -0
  25. package/legacy/client/components/DataTablePagination.vue +3 -0
  26. package/legacy/client/components/DatePicker.vue +3 -0
  27. package/legacy/client/components/DialogForm.vue +4 -0
  28. package/legacy/client/components/FileUploader.vue +3 -0
  29. package/legacy/client/components/FormAutoFieldList.vue +3 -0
  30. package/legacy/client/components/FormAutocomplete.vue +3 -0
  31. package/legacy/client/components/FormColorPicker.vue +3 -0
  32. package/legacy/client/components/FormDatePicker.vue +3 -0
  33. package/legacy/client/components/FormFilePicker.vue +3 -0
  34. package/legacy/client/components/FormFileUploader.vue +3 -0
  35. package/legacy/client/components/FormImageUploader.vue +3 -0
  36. package/legacy/client/components/FormJsonInput.vue +3 -0
  37. package/legacy/client/components/FormSelect.vue +3 -0
  38. package/legacy/client/components/FormStringListInput.vue +3 -0
  39. package/legacy/client/components/FormSwitch.vue +3 -0
  40. package/legacy/client/components/FormTextField.vue +3 -0
  41. package/legacy/client/components/FormTextarea.vue +3 -0
  42. package/legacy/client/components/Icon.vue +3 -0
  43. package/legacy/client/components/Image.vue +3 -0
  44. package/legacy/client/components/JsonInput.vue +3 -0
  45. package/legacy/client/components/Logo.vue +3 -0
  46. package/legacy/client/components/LogoIcon.vue +3 -0
  47. package/legacy/client/components/ObjectInspect.vue +3 -0
  48. package/legacy/client/components/PageCrud.vue +3 -0
  49. package/legacy/client/components/PageSubtitle.vue +3 -0
  50. package/legacy/client/components/PageTable.vue +3 -0
  51. package/legacy/client/components/PageTitle.vue +3 -0
  52. package/legacy/client/components/Pagination.vue +3 -0
  53. package/legacy/client/components/Select.vue +3 -0
  54. package/legacy/client/components/StringListInput.vue +3 -0
  55. package/legacy/client/components/Switch.vue +3 -0
  56. package/legacy/client/components/TextField.vue +3 -0
  57. package/legacy/client/components/Textarea.vue +3 -0
  58. package/legacy/client/components/UserMenu.vue +3 -0
  59. package/legacy/client/components/index.ts +349 -0
  60. package/legacy/client/components/ui/accordion/Accordion.vue +3 -0
  61. package/legacy/client/components/ui/accordion/AccordionContent.vue +3 -0
  62. package/legacy/client/components/ui/accordion/AccordionItem.vue +3 -0
  63. package/legacy/client/components/ui/accordion/AccordionTrigger.vue +3 -0
  64. package/legacy/client/components/ui/accordion/index.ts +1 -0
  65. package/legacy/client/components/ui/alert/Alert.vue +3 -0
  66. package/legacy/client/components/ui/alert/AlertDescription.vue +3 -0
  67. package/legacy/client/components/ui/alert/AlertTitle.vue +3 -0
  68. package/legacy/client/components/ui/alert/index.ts +1 -0
  69. package/legacy/client/components/ui/alert-dialog/AlertDialog.vue +3 -0
  70. package/legacy/client/components/ui/alert-dialog/AlertDialogAction.vue +3 -0
  71. package/legacy/client/components/ui/alert-dialog/AlertDialogCancel.vue +3 -0
  72. package/legacy/client/components/ui/alert-dialog/AlertDialogContent.vue +3 -0
  73. package/legacy/client/components/ui/alert-dialog/AlertDialogDescription.vue +3 -0
  74. package/legacy/client/components/ui/alert-dialog/AlertDialogFooter.vue +3 -0
  75. package/legacy/client/components/ui/alert-dialog/AlertDialogHeader.vue +3 -0
  76. package/legacy/client/components/ui/alert-dialog/AlertDialogTitle.vue +3 -0
  77. package/legacy/client/components/ui/alert-dialog/AlertDialogTrigger.vue +3 -0
  78. package/legacy/client/components/ui/alert-dialog/index.ts +1 -0
  79. package/legacy/client/components/ui/aspect-ratio/AspectRatio.vue +3 -0
  80. package/legacy/client/components/ui/aspect-ratio/index.ts +1 -0
  81. package/legacy/client/components/ui/avatar/Avatar.vue +3 -0
  82. package/legacy/client/components/ui/avatar/AvatarFallback.vue +3 -0
  83. package/legacy/client/components/ui/avatar/AvatarImage.vue +3 -0
  84. package/legacy/client/components/ui/avatar/index.ts +1 -0
  85. package/legacy/client/components/ui/badge/Badge.vue +3 -0
  86. package/legacy/client/components/ui/badge/index.ts +1 -0
  87. package/legacy/client/components/ui/breadcrumb/Breadcrumb.vue +3 -0
  88. package/legacy/client/components/ui/breadcrumb/BreadcrumbEllipsis.vue +3 -0
  89. package/legacy/client/components/ui/breadcrumb/BreadcrumbItem.vue +3 -0
  90. package/legacy/client/components/ui/breadcrumb/BreadcrumbLink.vue +3 -0
  91. package/legacy/client/components/ui/breadcrumb/BreadcrumbList.vue +3 -0
  92. package/legacy/client/components/ui/breadcrumb/BreadcrumbPage.vue +3 -0
  93. package/legacy/client/components/ui/breadcrumb/BreadcrumbSeparator.vue +3 -0
  94. package/legacy/client/components/ui/breadcrumb/index.ts +1 -0
  95. package/legacy/client/components/ui/button/Button.vue +3 -0
  96. package/legacy/client/components/ui/button/index.ts +1 -0
  97. package/legacy/client/components/ui/calendar/Calendar.vue +3 -0
  98. package/legacy/client/components/ui/calendar/CalendarCell.vue +3 -0
  99. package/legacy/client/components/ui/calendar/CalendarCellTrigger.vue +3 -0
  100. package/legacy/client/components/ui/calendar/CalendarGrid.vue +3 -0
  101. package/legacy/client/components/ui/calendar/CalendarGridBody.vue +3 -0
  102. package/legacy/client/components/ui/calendar/CalendarGridHead.vue +3 -0
  103. package/legacy/client/components/ui/calendar/CalendarGridRow.vue +3 -0
  104. package/legacy/client/components/ui/calendar/CalendarHeadCell.vue +3 -0
  105. package/legacy/client/components/ui/calendar/CalendarHeader.vue +3 -0
  106. package/legacy/client/components/ui/calendar/CalendarHeading.vue +3 -0
  107. package/legacy/client/components/ui/calendar/CalendarNextButton.vue +3 -0
  108. package/legacy/client/components/ui/calendar/CalendarPrevButton.vue +3 -0
  109. package/legacy/client/components/ui/calendar/index.ts +1 -0
  110. package/legacy/client/components/ui/card/Card.vue +3 -0
  111. package/legacy/client/components/ui/card/CardAction.vue +3 -0
  112. package/legacy/client/components/ui/card/CardContent.vue +3 -0
  113. package/legacy/client/components/ui/card/CardDescription.vue +3 -0
  114. package/legacy/client/components/ui/card/CardFooter.vue +3 -0
  115. package/legacy/client/components/ui/card/CardHeader.vue +3 -0
  116. package/legacy/client/components/ui/card/CardTitle.vue +3 -0
  117. package/legacy/client/components/ui/card/index.ts +1 -0
  118. package/legacy/client/components/ui/carousel/Carousel.vue +3 -0
  119. package/legacy/client/components/ui/carousel/CarouselContent.vue +3 -0
  120. package/legacy/client/components/ui/carousel/CarouselItem.vue +3 -0
  121. package/legacy/client/components/ui/carousel/CarouselNext.vue +3 -0
  122. package/legacy/client/components/ui/carousel/CarouselPrevious.vue +3 -0
  123. package/legacy/client/components/ui/carousel/index.ts +1 -0
  124. package/legacy/client/components/ui/checkbox/Checkbox.vue +3 -0
  125. package/legacy/client/components/ui/checkbox/index.ts +1 -0
  126. package/legacy/client/components/ui/collapsible/Collapsible.vue +3 -0
  127. package/legacy/client/components/ui/collapsible/CollapsibleContent.vue +3 -0
  128. package/legacy/client/components/ui/collapsible/CollapsibleTrigger.vue +3 -0
  129. package/legacy/client/components/ui/collapsible/index.ts +1 -0
  130. package/legacy/client/components/ui/combobox/Combobox.vue +3 -0
  131. package/legacy/client/components/ui/combobox/ComboboxAnchor.vue +3 -0
  132. package/legacy/client/components/ui/combobox/ComboboxEmpty.vue +3 -0
  133. package/legacy/client/components/ui/combobox/ComboboxGroup.vue +3 -0
  134. package/legacy/client/components/ui/combobox/ComboboxInput.vue +3 -0
  135. package/legacy/client/components/ui/combobox/ComboboxItem.vue +3 -0
  136. package/legacy/client/components/ui/combobox/ComboboxItemIndicator.vue +3 -0
  137. package/legacy/client/components/ui/combobox/ComboboxList.vue +3 -0
  138. package/legacy/client/components/ui/combobox/ComboboxSeparator.vue +3 -0
  139. package/legacy/client/components/ui/combobox/ComboboxTrigger.vue +3 -0
  140. package/legacy/client/components/ui/combobox/ComboboxViewport.vue +3 -0
  141. package/legacy/client/components/ui/combobox/index.ts +1 -0
  142. package/legacy/client/components/ui/command/Command.vue +3 -0
  143. package/legacy/client/components/ui/command/CommandDialog.vue +3 -0
  144. package/legacy/client/components/ui/command/CommandEmpty.vue +3 -0
  145. package/legacy/client/components/ui/command/CommandGroup.vue +3 -0
  146. package/legacy/client/components/ui/command/CommandInput.vue +3 -0
  147. package/legacy/client/components/ui/command/CommandItem.vue +3 -0
  148. package/legacy/client/components/ui/command/CommandList.vue +3 -0
  149. package/legacy/client/components/ui/command/CommandSeparator.vue +3 -0
  150. package/legacy/client/components/ui/command/CommandShortcut.vue +3 -0
  151. package/legacy/client/components/ui/command/index.ts +1 -0
  152. package/legacy/client/components/ui/context-menu/ContextMenu.vue +3 -0
  153. package/legacy/client/components/ui/context-menu/ContextMenuCheckboxItem.vue +3 -0
  154. package/legacy/client/components/ui/context-menu/ContextMenuContent.vue +3 -0
  155. package/legacy/client/components/ui/context-menu/ContextMenuGroup.vue +3 -0
  156. package/legacy/client/components/ui/context-menu/ContextMenuItem.vue +3 -0
  157. package/legacy/client/components/ui/context-menu/ContextMenuLabel.vue +3 -0
  158. package/legacy/client/components/ui/context-menu/ContextMenuPortal.vue +3 -0
  159. package/legacy/client/components/ui/context-menu/ContextMenuRadioGroup.vue +3 -0
  160. package/legacy/client/components/ui/context-menu/ContextMenuRadioItem.vue +3 -0
  161. package/legacy/client/components/ui/context-menu/ContextMenuSeparator.vue +3 -0
  162. package/legacy/client/components/ui/context-menu/ContextMenuShortcut.vue +3 -0
  163. package/legacy/client/components/ui/context-menu/ContextMenuSub.vue +3 -0
  164. package/legacy/client/components/ui/context-menu/ContextMenuSubContent.vue +3 -0
  165. package/legacy/client/components/ui/context-menu/ContextMenuSubTrigger.vue +3 -0
  166. package/legacy/client/components/ui/context-menu/ContextMenuTrigger.vue +3 -0
  167. package/legacy/client/components/ui/context-menu/index.ts +1 -0
  168. package/legacy/client/components/ui/dialog/Dialog.vue +3 -0
  169. package/legacy/client/components/ui/dialog/DialogClose.vue +3 -0
  170. package/legacy/client/components/ui/dialog/DialogContent.vue +3 -0
  171. package/legacy/client/components/ui/dialog/DialogDescription.vue +3 -0
  172. package/legacy/client/components/ui/dialog/DialogFooter.vue +3 -0
  173. package/legacy/client/components/ui/dialog/DialogHeader.vue +3 -0
  174. package/legacy/client/components/ui/dialog/DialogOverlay.vue +3 -0
  175. package/legacy/client/components/ui/dialog/DialogScrollContent.vue +3 -0
  176. package/legacy/client/components/ui/dialog/DialogTitle.vue +3 -0
  177. package/legacy/client/components/ui/dialog/DialogTrigger.vue +3 -0
  178. package/legacy/client/components/ui/dialog/index.ts +1 -0
  179. package/legacy/client/components/ui/drawer/Drawer.vue +3 -0
  180. package/legacy/client/components/ui/drawer/DrawerClose.vue +3 -0
  181. package/legacy/client/components/ui/drawer/DrawerContent.vue +3 -0
  182. package/legacy/client/components/ui/drawer/DrawerDescription.vue +3 -0
  183. package/legacy/client/components/ui/drawer/DrawerFooter.vue +3 -0
  184. package/legacy/client/components/ui/drawer/DrawerHeader.vue +3 -0
  185. package/legacy/client/components/ui/drawer/DrawerOverlay.vue +3 -0
  186. package/legacy/client/components/ui/drawer/DrawerTitle.vue +3 -0
  187. package/legacy/client/components/ui/drawer/DrawerTrigger.vue +3 -0
  188. package/legacy/client/components/ui/drawer/index.ts +1 -0
  189. package/legacy/client/components/ui/dropdown-menu/DropdownMenu.vue +3 -0
  190. package/legacy/client/components/ui/dropdown-menu/DropdownMenuCheckboxItem.vue +3 -0
  191. package/legacy/client/components/ui/dropdown-menu/DropdownMenuContent.vue +3 -0
  192. package/legacy/client/components/ui/dropdown-menu/DropdownMenuGroup.vue +3 -0
  193. package/legacy/client/components/ui/dropdown-menu/DropdownMenuItem.vue +3 -0
  194. package/legacy/client/components/ui/dropdown-menu/DropdownMenuLabel.vue +3 -0
  195. package/legacy/client/components/ui/dropdown-menu/DropdownMenuRadioGroup.vue +3 -0
  196. package/legacy/client/components/ui/dropdown-menu/DropdownMenuRadioItem.vue +3 -0
  197. package/legacy/client/components/ui/dropdown-menu/DropdownMenuSeparator.vue +3 -0
  198. package/legacy/client/components/ui/dropdown-menu/DropdownMenuShortcut.vue +3 -0
  199. package/legacy/client/components/ui/dropdown-menu/DropdownMenuSub.vue +3 -0
  200. package/legacy/client/components/ui/dropdown-menu/DropdownMenuSubContent.vue +3 -0
  201. package/legacy/client/components/ui/dropdown-menu/DropdownMenuSubTrigger.vue +3 -0
  202. package/legacy/client/components/ui/dropdown-menu/DropdownMenuTrigger.vue +3 -0
  203. package/legacy/client/components/ui/dropdown-menu/index.ts +1 -0
  204. package/legacy/client/components/ui/form/FormControl.vue +3 -0
  205. package/legacy/client/components/ui/form/FormDescription.vue +3 -0
  206. package/legacy/client/components/ui/form/FormItem.vue +3 -0
  207. package/legacy/client/components/ui/form/FormLabel.vue +3 -0
  208. package/legacy/client/components/ui/form/FormMessage.vue +3 -0
  209. package/legacy/client/components/ui/form/index.ts +1 -0
  210. package/legacy/client/components/ui/hover-card/HoverCard.vue +3 -0
  211. package/legacy/client/components/ui/hover-card/HoverCardContent.vue +3 -0
  212. package/legacy/client/components/ui/hover-card/HoverCardTrigger.vue +3 -0
  213. package/legacy/client/components/ui/hover-card/index.ts +1 -0
  214. package/legacy/client/components/ui/input/Input.vue +3 -0
  215. package/legacy/client/components/ui/input/index.ts +1 -0
  216. package/legacy/client/components/ui/label/Label.vue +3 -0
  217. package/legacy/client/components/ui/label/index.ts +1 -0
  218. package/legacy/client/components/ui/menubar/Menubar.vue +3 -0
  219. package/legacy/client/components/ui/menubar/MenubarCheckboxItem.vue +3 -0
  220. package/legacy/client/components/ui/menubar/MenubarContent.vue +3 -0
  221. package/legacy/client/components/ui/menubar/MenubarGroup.vue +3 -0
  222. package/legacy/client/components/ui/menubar/MenubarItem.vue +3 -0
  223. package/legacy/client/components/ui/menubar/MenubarLabel.vue +3 -0
  224. package/legacy/client/components/ui/menubar/MenubarMenu.vue +3 -0
  225. package/legacy/client/components/ui/menubar/MenubarRadioGroup.vue +3 -0
  226. package/legacy/client/components/ui/menubar/MenubarRadioItem.vue +3 -0
  227. package/legacy/client/components/ui/menubar/MenubarSeparator.vue +3 -0
  228. package/legacy/client/components/ui/menubar/MenubarShortcut.vue +3 -0
  229. package/legacy/client/components/ui/menubar/MenubarSub.vue +3 -0
  230. package/legacy/client/components/ui/menubar/MenubarSubContent.vue +3 -0
  231. package/legacy/client/components/ui/menubar/MenubarSubTrigger.vue +3 -0
  232. package/legacy/client/components/ui/menubar/MenubarTrigger.vue +3 -0
  233. package/legacy/client/components/ui/menubar/index.ts +1 -0
  234. package/legacy/client/components/ui/navigation-menu/NavigationMenu.vue +3 -0
  235. package/legacy/client/components/ui/navigation-menu/NavigationMenuContent.vue +3 -0
  236. package/legacy/client/components/ui/navigation-menu/NavigationMenuIndicator.vue +3 -0
  237. package/legacy/client/components/ui/navigation-menu/NavigationMenuItem.vue +3 -0
  238. package/legacy/client/components/ui/navigation-menu/NavigationMenuLink.vue +3 -0
  239. package/legacy/client/components/ui/navigation-menu/NavigationMenuList.vue +3 -0
  240. package/legacy/client/components/ui/navigation-menu/NavigationMenuTrigger.vue +3 -0
  241. package/legacy/client/components/ui/navigation-menu/NavigationMenuViewport.vue +3 -0
  242. package/legacy/client/components/ui/navigation-menu/index.ts +1 -0
  243. package/legacy/client/components/ui/number-field/NumberField.vue +3 -0
  244. package/legacy/client/components/ui/number-field/NumberFieldContent.vue +3 -0
  245. package/legacy/client/components/ui/number-field/NumberFieldDecrement.vue +3 -0
  246. package/legacy/client/components/ui/number-field/NumberFieldIncrement.vue +3 -0
  247. package/legacy/client/components/ui/number-field/NumberFieldInput.vue +3 -0
  248. package/legacy/client/components/ui/number-field/index.ts +1 -0
  249. package/legacy/client/components/ui/pagination/Pagination.vue +3 -0
  250. package/legacy/client/components/ui/pagination/PaginationContent.vue +3 -0
  251. package/legacy/client/components/ui/pagination/PaginationEllipsis.vue +3 -0
  252. package/legacy/client/components/ui/pagination/PaginationFirst.vue +3 -0
  253. package/legacy/client/components/ui/pagination/PaginationItem.vue +3 -0
  254. package/legacy/client/components/ui/pagination/PaginationLast.vue +3 -0
  255. package/legacy/client/components/ui/pagination/PaginationNext.vue +3 -0
  256. package/legacy/client/components/ui/pagination/PaginationPrevious.vue +3 -0
  257. package/legacy/client/components/ui/pagination/index.ts +1 -0
  258. package/legacy/client/components/ui/pin-input/PinInput.vue +3 -0
  259. package/legacy/client/components/ui/pin-input/PinInputGroup.vue +3 -0
  260. package/legacy/client/components/ui/pin-input/PinInputSeparator.vue +3 -0
  261. package/legacy/client/components/ui/pin-input/PinInputSlot.vue +3 -0
  262. package/legacy/client/components/ui/pin-input/index.ts +1 -0
  263. package/legacy/client/components/ui/popover/Popover.vue +3 -0
  264. package/legacy/client/components/ui/popover/PopoverAnchor.vue +3 -0
  265. package/legacy/client/components/ui/popover/PopoverContent.vue +3 -0
  266. package/legacy/client/components/ui/popover/PopoverTrigger.vue +3 -0
  267. package/legacy/client/components/ui/popover/index.ts +1 -0
  268. package/legacy/client/components/ui/progress/Progress.vue +3 -0
  269. package/legacy/client/components/ui/progress/index.ts +1 -0
  270. package/legacy/client/components/ui/radio-group/RadioGroup.vue +3 -0
  271. package/legacy/client/components/ui/radio-group/RadioGroupItem.vue +3 -0
  272. package/legacy/client/components/ui/radio-group/index.ts +1 -0
  273. package/legacy/client/components/ui/range-calendar/RangeCalendar.vue +3 -0
  274. package/legacy/client/components/ui/range-calendar/RangeCalendarCell.vue +3 -0
  275. package/legacy/client/components/ui/range-calendar/RangeCalendarCellTrigger.vue +3 -0
  276. package/legacy/client/components/ui/range-calendar/RangeCalendarGrid.vue +3 -0
  277. package/legacy/client/components/ui/range-calendar/RangeCalendarGridBody.vue +3 -0
  278. package/legacy/client/components/ui/range-calendar/RangeCalendarGridHead.vue +3 -0
  279. package/legacy/client/components/ui/range-calendar/RangeCalendarGridRow.vue +3 -0
  280. package/legacy/client/components/ui/range-calendar/RangeCalendarHeadCell.vue +3 -0
  281. package/legacy/client/components/ui/range-calendar/RangeCalendarHeader.vue +3 -0
  282. package/legacy/client/components/ui/range-calendar/RangeCalendarHeading.vue +3 -0
  283. package/legacy/client/components/ui/range-calendar/RangeCalendarNextButton.vue +3 -0
  284. package/legacy/client/components/ui/range-calendar/RangeCalendarPrevButton.vue +3 -0
  285. package/legacy/client/components/ui/range-calendar/index.ts +1 -0
  286. package/legacy/client/components/ui/resizable/ResizableHandle.vue +3 -0
  287. package/legacy/client/components/ui/resizable/ResizablePanel.vue +3 -0
  288. package/legacy/client/components/ui/resizable/ResizablePanelGroup.vue +3 -0
  289. package/legacy/client/components/ui/resizable/index.ts +1 -0
  290. package/legacy/client/components/ui/scroll-area/ScrollArea.vue +3 -0
  291. package/legacy/client/components/ui/scroll-area/ScrollBar.vue +3 -0
  292. package/legacy/client/components/ui/scroll-area/index.ts +1 -0
  293. package/legacy/client/components/ui/select/Select.vue +3 -0
  294. package/legacy/client/components/ui/select/SelectContent.vue +3 -0
  295. package/legacy/client/components/ui/select/SelectGroup.vue +3 -0
  296. package/legacy/client/components/ui/select/SelectItem.vue +3 -0
  297. package/legacy/client/components/ui/select/SelectItemText.vue +3 -0
  298. package/legacy/client/components/ui/select/SelectLabel.vue +3 -0
  299. package/legacy/client/components/ui/select/SelectScrollDownButton.vue +3 -0
  300. package/legacy/client/components/ui/select/SelectScrollUpButton.vue +3 -0
  301. package/legacy/client/components/ui/select/SelectSeparator.vue +3 -0
  302. package/legacy/client/components/ui/select/SelectTrigger.vue +3 -0
  303. package/legacy/client/components/ui/select/SelectValue.vue +3 -0
  304. package/legacy/client/components/ui/select/index.ts +1 -0
  305. package/legacy/client/components/ui/separator/Separator.vue +3 -0
  306. package/legacy/client/components/ui/separator/index.ts +1 -0
  307. package/legacy/client/components/ui/sheet/Sheet.vue +3 -0
  308. package/legacy/client/components/ui/sheet/SheetClose.vue +3 -0
  309. package/legacy/client/components/ui/sheet/SheetContent.vue +3 -0
  310. package/legacy/client/components/ui/sheet/SheetDescription.vue +3 -0
  311. package/legacy/client/components/ui/sheet/SheetFooter.vue +3 -0
  312. package/legacy/client/components/ui/sheet/SheetHeader.vue +3 -0
  313. package/legacy/client/components/ui/sheet/SheetOverlay.vue +3 -0
  314. package/legacy/client/components/ui/sheet/SheetTitle.vue +3 -0
  315. package/legacy/client/components/ui/sheet/SheetTrigger.vue +3 -0
  316. package/legacy/client/components/ui/sheet/index.ts +1 -0
  317. package/legacy/client/components/ui/sidebar/Sidebar.vue +3 -0
  318. package/legacy/client/components/ui/sidebar/SidebarContent.vue +3 -0
  319. package/legacy/client/components/ui/sidebar/SidebarFooter.vue +3 -0
  320. package/legacy/client/components/ui/sidebar/SidebarGroup.vue +3 -0
  321. package/legacy/client/components/ui/sidebar/SidebarGroupAction.vue +3 -0
  322. package/legacy/client/components/ui/sidebar/SidebarGroupContent.vue +3 -0
  323. package/legacy/client/components/ui/sidebar/SidebarGroupLabel.vue +3 -0
  324. package/legacy/client/components/ui/sidebar/SidebarHeader.vue +3 -0
  325. package/legacy/client/components/ui/sidebar/SidebarInput.vue +3 -0
  326. package/legacy/client/components/ui/sidebar/SidebarInset.vue +3 -0
  327. package/legacy/client/components/ui/sidebar/SidebarMenu.vue +3 -0
  328. package/legacy/client/components/ui/sidebar/SidebarMenuAction.vue +3 -0
  329. package/legacy/client/components/ui/sidebar/SidebarMenuBadge.vue +3 -0
  330. package/legacy/client/components/ui/sidebar/SidebarMenuButton.vue +3 -0
  331. package/legacy/client/components/ui/sidebar/SidebarMenuButtonChild.vue +3 -0
  332. package/legacy/client/components/ui/sidebar/SidebarMenuItem.vue +3 -0
  333. package/legacy/client/components/ui/sidebar/SidebarMenuSkeleton.vue +3 -0
  334. package/legacy/client/components/ui/sidebar/SidebarMenuSub.vue +3 -0
  335. package/legacy/client/components/ui/sidebar/SidebarMenuSubButton.vue +3 -0
  336. package/legacy/client/components/ui/sidebar/SidebarMenuSubItem.vue +3 -0
  337. package/legacy/client/components/ui/sidebar/SidebarProvider.vue +3 -0
  338. package/legacy/client/components/ui/sidebar/SidebarRail.vue +3 -0
  339. package/legacy/client/components/ui/sidebar/SidebarSeparator.vue +3 -0
  340. package/legacy/client/components/ui/sidebar/SidebarTrigger.vue +3 -0
  341. package/legacy/client/components/ui/sidebar/index.ts +1 -0
  342. package/legacy/client/components/ui/skeleton/Skeleton.vue +3 -0
  343. package/legacy/client/components/ui/skeleton/index.ts +1 -0
  344. package/legacy/client/components/ui/slider/Slider.vue +3 -0
  345. package/legacy/client/components/ui/slider/index.ts +1 -0
  346. package/legacy/client/components/ui/sonner/Sonner.vue +3 -0
  347. package/legacy/client/components/ui/sonner/index.ts +1 -0
  348. package/legacy/client/components/ui/stepper/Stepper.vue +3 -0
  349. package/legacy/client/components/ui/stepper/StepperDescription.vue +3 -0
  350. package/legacy/client/components/ui/stepper/StepperIndicator.vue +3 -0
  351. package/legacy/client/components/ui/stepper/StepperItem.vue +3 -0
  352. package/legacy/client/components/ui/stepper/StepperSeparator.vue +3 -0
  353. package/legacy/client/components/ui/stepper/StepperTitle.vue +3 -0
  354. package/legacy/client/components/ui/stepper/StepperTrigger.vue +3 -0
  355. package/legacy/client/components/ui/stepper/index.ts +1 -0
  356. package/legacy/client/components/ui/switch/Switch.vue +3 -0
  357. package/legacy/client/components/ui/switch/index.ts +1 -0
  358. package/legacy/client/components/ui/table/Table.vue +3 -0
  359. package/legacy/client/components/ui/table/TableBody.vue +3 -0
  360. package/legacy/client/components/ui/table/TableCaption.vue +3 -0
  361. package/legacy/client/components/ui/table/TableCell.vue +3 -0
  362. package/legacy/client/components/ui/table/TableEmpty.vue +3 -0
  363. package/legacy/client/components/ui/table/TableFooter.vue +3 -0
  364. package/legacy/client/components/ui/table/TableHead.vue +3 -0
  365. package/legacy/client/components/ui/table/TableHeader.vue +3 -0
  366. package/legacy/client/components/ui/table/TableRow.vue +3 -0
  367. package/legacy/client/components/ui/table/index.ts +1 -0
  368. package/legacy/client/components/ui/tabs/Tabs.vue +3 -0
  369. package/legacy/client/components/ui/tabs/TabsContent.vue +3 -0
  370. package/legacy/client/components/ui/tabs/TabsList.vue +3 -0
  371. package/legacy/client/components/ui/tabs/TabsTrigger.vue +3 -0
  372. package/legacy/client/components/ui/tabs/index.ts +1 -0
  373. package/legacy/client/components/ui/tags-input/TagsInput.vue +3 -0
  374. package/legacy/client/components/ui/tags-input/TagsInputInput.vue +3 -0
  375. package/legacy/client/components/ui/tags-input/TagsInputItem.vue +3 -0
  376. package/legacy/client/components/ui/tags-input/TagsInputItemDelete.vue +3 -0
  377. package/legacy/client/components/ui/tags-input/TagsInputItemText.vue +3 -0
  378. package/legacy/client/components/ui/tags-input/index.ts +1 -0
  379. package/legacy/client/components/ui/textarea/Textarea.vue +3 -0
  380. package/legacy/client/components/ui/textarea/index.ts +1 -0
  381. package/legacy/client/components/ui/toggle/Toggle.vue +3 -0
  382. package/legacy/client/components/ui/toggle/index.ts +1 -0
  383. package/legacy/client/components/ui/toggle-group/ToggleGroup.vue +3 -0
  384. package/legacy/client/components/ui/toggle-group/ToggleGroupItem.vue +3 -0
  385. package/legacy/client/components/ui/toggle-group/index.ts +1 -0
  386. package/legacy/client/components/ui/tooltip/Tooltip.vue +3 -0
  387. package/legacy/client/components/ui/tooltip/TooltipContent.vue +3 -0
  388. package/legacy/client/components/ui/tooltip/TooltipProvider.vue +3 -0
  389. package/legacy/client/components/ui/tooltip/TooltipTrigger.vue +3 -0
  390. package/legacy/client/components/ui/tooltip/index.ts +1 -0
  391. package/legacy/client/facades/acl.facade.ts +1 -0
  392. package/legacy/client/facades/app.facade.ts +6 -0
  393. package/legacy/client/facades/auth.facade.ts +1 -0
  394. package/legacy/client/facades/config.facade.ts +1 -0
  395. package/legacy/client/facades/fetch.facade.ts +1 -0
  396. package/legacy/client/facades/logger.facade.ts +1 -0
  397. package/legacy/client/facades/menu.facade.ts +1 -0
  398. package/legacy/client/facades/router.facade.ts +1 -0
  399. package/legacy/client/facades/translator.facade.ts +10 -0
  400. package/legacy/client/utils/autoPages.ts +1 -0
  401. package/legacy/client/utils/createId.ts +1 -0
  402. package/legacy/client/utils/di.ts +1 -0
  403. package/legacy/client/utils/fetcher.ts +1 -0
  404. package/legacy/client/utils/file.ts +1 -0
  405. package/legacy/client/utils/index.ts +7 -0
  406. package/legacy/client/utils/logger.ts +1 -0
  407. package/legacy/client/utils/toast.ts +1 -0
  408. package/legacy/server/entities/file.entity.ts +4 -0
  409. package/legacy/server/exceptions/base.ts +4 -0
  410. package/legacy/server/facades/arte.facade.ts +6 -0
  411. package/legacy/server/facades/config.facade.ts +4 -0
  412. package/legacy/server/facades/db.facade.ts +4 -0
  413. package/legacy/server/facades/download.facade.ts +4 -0
  414. package/legacy/server/facades/drive.facade.ts +4 -0
  415. package/legacy/server/facades/logger.facade.ts +4 -0
  416. package/legacy/server/facades/router.facade.ts +4 -0
  417. package/legacy/server/middlewares/auth.middleware.ts +6 -0
  418. package/legacy/server/middlewares/authorization.middleware.ts +8 -0
  419. package/legacy/server/mixins/hooks.mixin.ts +6 -0
  420. package/legacy/server/mixins/model.mixin.ts +6 -0
  421. package/legacy/server/mixins/modelConfig.mixin.ts +4 -0
  422. package/legacy/server/queries/index.ts +6 -0
  423. package/legacy/server/services/metadataQuery.service.ts +6 -0
  424. package/legacy/server/services/routerResourceConfig.service.ts +5 -0
  425. package/legacy/shared/services/validator.service.ts +4 -0
  426. package/legacy/shared/utils/compose.ts +8 -0
  427. package/legacy/shared/utils/tryCatch.ts +7 -0
  428. package/package.json +57 -13
  429. package/tsconfig.client.json +3 -3
  430. package/tsconfig.server.json +1 -1
  431. package/tsdown/createTsdownConfig.js +29 -0
  432. package/tsdown.config.ts +55 -2
  433. package/vite/createViteConfig.js +55 -0
  434. package/vite/plugins/zenith.js +143 -0
  435. package/vite.config.ts +72 -0
  436. package/dist/shared/chunk-CfYAbeIz.mjs +0 -13
@@ -0,0 +1,6 @@
1
+ import { HooksMixin } from "@sidekick-coder/zenith-kit/shared";
2
+
3
+ /** @deprecated use @sidekick-coder/zenith-kit/server's HookMixin instead */
4
+ export {
5
+ HooksMixin as Hooks,
6
+ };
@@ -0,0 +1,6 @@
1
+ import { ModelMixin } from "@sidekick-coder/zenith-kit/server";
2
+
3
+ /** @deprecated use @sidekick-coder/zenith-kit/server's ModelMixin instead */
4
+ export {
5
+ ModelMixin as Model,
6
+ };
@@ -0,0 +1,4 @@
1
+ import { ModelConfigMixin } from "@sidekick-coder/zenith-kit/server";
2
+
3
+ /** @deprecated use @sidekick-coder/zenith-kit/server's ModelMixin instead */
4
+ export default ModelConfigMixin;
@@ -0,0 +1,6 @@
1
+ import { undeleted } from "@sidekick-coder/zenith-kit/server";
2
+
3
+ export {
4
+ /** @deprecated */
5
+ undeleted
6
+ }
@@ -0,0 +1,6 @@
1
+
2
+ import { MetadataQueryService } from "@sidekick-coder/zenith-kit/server";
3
+
4
+ /** @deprecated use @sidekick-coder/zenith-kit/server's instead */
5
+ export default MetadataQueryService;
6
+
@@ -0,0 +1,5 @@
1
+ import { RouterResourceConfigService } from "@sidekick-coder/zenith-kit/server";
2
+
3
+ /** @deprecated use @sidekick-coder/zenith-kit/server's RouterResourceConfig instead */
4
+ export default RouterResourceConfigService;
5
+
@@ -0,0 +1,4 @@
1
+ import { validator } from "@sidekick-coder/zenith-kit/shared"
2
+
3
+ /** @deprecated Use `validator` from `@sidekick-coder/zenith-kit/shared` instead. */
4
+ export default validator
@@ -0,0 +1,8 @@
1
+ import { compose, composeWith } from "@sidekick-coder/zenith-kit/shared";
2
+
3
+ /** @deprecated use @sidekick-coder/zenith-kit/server's compose instead */
4
+ export {
5
+ compose,
6
+ composeWith
7
+ };
8
+
@@ -0,0 +1,7 @@
1
+ import { tryCatch } from "@sidekick-coder/zenith-kit/shared";
2
+
3
+ export {
4
+ /** @deprecated use @sidekick-coder/zenith-kit/server's tryCatch instead */
5
+ tryCatch,
6
+ };
7
+
package/package.json CHANGED
@@ -1,14 +1,17 @@
1
1
  {
2
2
  "name": "@sidekick-coder/zenith-kit",
3
- "version": "0.0.12",
3
+ "version": "0.0.14",
4
4
  "license": "MIT",
5
- "description": "A collection of utilities and tools for building language servers and related applications.",
6
- "keywords": [],
5
+ "description": "Package to use with zenith framework",
7
6
  "author": "Henrique Oliveira <henriqueoliwork@gmail.com>",
8
- "homepage": "https://github.com/sidekick-coder/language-kit",
7
+ "homepage": "https://github.com/sidekick-coder/zenith-kit",
8
+ "bin": {
9
+ "zkit": "./bin/zkit.js",
10
+ "zenith": "./bin/zenith.js"
11
+ },
9
12
  "repository": {
10
13
  "type": "git",
11
- "url": "git+https://github.com/sidekick-coder/language-kit.git"
14
+ "url": "git+https://github.com/sidekick-coder/zenith-kit.git"
12
15
  },
13
16
  "publishConfig": {
14
17
  "access": "public"
@@ -20,31 +23,51 @@
20
23
  },
21
24
  "exports": {
22
25
  "./shared": {
26
+ "types": "./dist/shared/index.d.mts",
23
27
  "import": "./dist/shared/index.mjs",
24
- "require": "./dist/shared/index.js",
25
- "types": "./dist/shared/index.d.mts"
28
+ "require": "./dist/shared/index.js"
26
29
  },
27
30
  "./server": {
31
+ "types": "./dist/server/index.d.mts",
28
32
  "import": "./dist/server/index.mjs",
29
- "require": "./dist/server/index.js",
30
- "types": "./dist/server/index.d.mts"
33
+ "require": "./dist/server/index.js"
34
+ },
35
+ "./client": {
36
+ "types": "./dist/client/index.d.mts",
37
+ "import": "./dist/client/index.mjs",
38
+ "require": "./dist/client/index.mjs"
39
+ },
40
+ "./components": {
41
+ "types": "./dist/components/index.d.mts",
42
+ "import": "./dist/components/index.es.js",
43
+ "require": "./dist/components/index.es.js"
44
+ },
45
+ "./vite": {
46
+ "import": "./vite/plugins/vite.js",
47
+ "require": "./vite/plugins/vite.js"
48
+ },
49
+ "./styles": "./dist/components/styles.css",
50
+ "./client-globals": {
51
+ "types": "./src/client/zenith-env.d.ts"
31
52
  }
32
53
  },
33
54
  "scripts": {
34
- "generate:indexes": "node indexes.js",
35
- "build": "tsdown --dts",
36
- "watch": "tsdown --watch",
55
+ "build": "npm run build:tsdown && npm run build:vite",
56
+ "build:tsdown": "tsdown",
57
+ "build:vite": "vite build",
37
58
  "release": "node artisan.js release"
38
59
  },
39
60
  "devDependencies": {
40
61
  "@eslint/js": "^9.39.4",
41
62
  "@eslint/json": "^0.14.0",
63
+ "@types/express": "^5.0.6",
42
64
  "@types/js-yaml": "^4.0.9",
43
65
  "@types/lodash-es": "^4.17.12",
44
66
  "@types/mime": "^3.0.4",
45
67
  "@types/ms": "^2.1.0",
46
68
  "@types/node": "^25.6.0",
47
69
  "@types/qs": "^6.15.0",
70
+ "@vue/language-core": "^3.1.8",
48
71
  "@vue/tsconfig": "^0.9.1",
49
72
  "commander": "^14.0.3",
50
73
  "eslint": "^9.39.4",
@@ -55,25 +78,46 @@
55
78
  "tsdown": "^0.21.9",
56
79
  "typescript": "^6.0.3",
57
80
  "typescript-eslint": "^8.58.2",
81
+ "vite-plugin-dts": "^5.0.0",
58
82
  "vitest": "^3.2.4"
59
83
  },
60
84
  "dependencies": {
61
85
  "@aws-sdk/client-s3": "^3.1039.0",
62
86
  "@aws-sdk/lib-storage": "^3.1039.0",
63
87
  "@aws-sdk/s3-request-presigner": "^3.1039.0",
88
+ "@casl/ability": "^6.8.1",
89
+ "@rollup/pluginutils": "^5.3.0",
90
+ "@tailwindcss/vite": "^4.2.4",
91
+ "@unhead/vue": "^3.1.0",
92
+ "@vee-validate/valibot": "^4.15.1",
93
+ "@vitejs/plugin-vue": "^6.0.6",
64
94
  "better-sqlite3": "^12.9.0",
95
+ "class-variance-authority": "^0.7.1",
65
96
  "cli-table3": "^0.6.5",
97
+ "clsx": "^2.1.1",
98
+ "cosmiconfig": "^9.0.1",
66
99
  "date-fns": "^4.1.0",
67
100
  "dotenv": "^17.4.2",
101
+ "embla-carousel-vue": "^8.6.0",
68
102
  "fast-glob": "^3.3.3",
69
103
  "js-yaml": "^4.1.1",
70
104
  "kysely": "^0.28.16",
71
105
  "lodash-es": "^4.18.1",
106
+ "lucide-vue-next": "^1.0.0",
72
107
  "mime": "^4.1.0",
73
108
  "ms": "^2.1.3",
74
109
  "mysql2": "^3.22.3",
75
110
  "pg": "^8.20.0",
76
111
  "qs": "^6.15.1",
77
- "valibot": "^1.3.1"
112
+ "reka-ui": "^2.9.6",
113
+ "tailwind-merge": "^3.5.0",
114
+ "tw-animate-css": "^1.4.0",
115
+ "ulid": "^3.0.2",
116
+ "undici": "^8.2.0",
117
+ "valibot": "^1.3.1",
118
+ "vaul-vue": "^0.4.1",
119
+ "vee-validate": "^4.15.1",
120
+ "vue-router": "^5.0.6",
121
+ "vue-sonner": "^2.0.9"
78
122
  }
79
123
  }
@@ -18,8 +18,8 @@
18
18
  ]
19
19
  },
20
20
  "include": [
21
- "client/**/**/*.ts",
22
- "client/**/**/*.vue",
23
- "shared/**/**/*.ts"
21
+ "src/client/**/**/*.ts",
22
+ "src/client/**/**/*.vue",
23
+ "src/shared/**/**/*.ts"
24
24
  ]
25
25
  }
@@ -20,7 +20,7 @@
20
20
  "noUnusedParameters": true,
21
21
  "noFallthroughCasesInSwitch": true,
22
22
  "noUncheckedSideEffectImports": true,
23
- "strictPropertyInitialization": false,
23
+ "strictPropertyInitialization": false
24
24
  },
25
25
  "include": [
26
26
  "src/server/**/*.ts",
@@ -0,0 +1,29 @@
1
+ import { defineConfig } from 'tsdown'
2
+ import path from 'path'
3
+
4
+ /**
5
+ * @typedef {Object} Options
6
+ * @property {import('tsdown').UserConfig['root']} [root] - Root directory (default: current working directory)
7
+ * @property {import('tsdown').UserConfig['entry']} [entry] - Entry file or directory (default: `src/server/index.ts`)
8
+ * @property {string} [outDir] - Output directory (default: `dist/server`)
9
+ */
10
+
11
+ /**
12
+ * Vite plugin that replaces static and dynamic imports for specified modules
13
+ * with `globalThis.importAsync(...)` calls at transform time.
14
+ *
15
+ * @param {Options} options
16
+ */
17
+ export default function(options) {
18
+ const tsConfigPath = path.resolve(import.meta.dirname, '..', 'tsconfig.server.json')
19
+
20
+ return defineConfig({
21
+ root: options.root || process.cwd(),
22
+ entry: options.entry,
23
+ outDir: options.outDir || 'dist/server',
24
+ tsconfig: tsConfigPath,
25
+ minify: true,
26
+ unbundle: true,
27
+ })
28
+
29
+ }
package/tsdown.config.ts CHANGED
@@ -6,15 +6,19 @@ export default defineConfig([
6
6
  entry: 'src/shared/index.ts',
7
7
  outDir: 'dist/shared',
8
8
  tsconfig: 'tsconfig.shared.json',
9
+ dts: true,
10
+ minify: true,
11
+ sourcemap: 'inline',
9
12
  hooks(hooks) {
10
13
  hooks.hook('build:before', async () => {
11
14
  generateIndexFile({
12
15
  folders: [
13
- 'src/shared/services',
16
+ 'src/shared/services',
14
17
  'src/shared/utils',
15
18
  'src/shared/schemas',
16
19
  'src/shared/exceptions',
17
20
  'src/shared/facades',
21
+ 'src/shared/mixins',
18
22
  'src/shared/entities',
19
23
  ],
20
24
  filename: 'src/shared/index.ts'
@@ -27,7 +31,19 @@ export default defineConfig([
27
31
  {
28
32
  entry: 'src/server/index.ts',
29
33
  outDir: 'dist/server',
34
+ dts: true,
35
+ minify: true,
36
+ sourcemap: 'inline',
30
37
  tsconfig: 'tsconfig.server.json',
38
+ deps: {
39
+ neverBundle: [
40
+ 'express',
41
+ 'kysely',
42
+ 'chalk',
43
+ 'commander',
44
+ '@unhead/vue',
45
+ ]
46
+ },
31
47
  hooks(hooks) {
32
48
  hooks.hook('build:before', async () => {
33
49
  generateIndexFile({
@@ -40,6 +56,8 @@ export default defineConfig([
40
56
  'src/server/contracts',
41
57
  'src/server/loaders',
42
58
  'src/server/entities',
59
+ 'src/server/queries',
60
+ 'src/server/middlewares',
43
61
  'src/server/utils',
44
62
  ],
45
63
  filename: 'src/server/index.ts'
@@ -48,5 +66,40 @@ export default defineConfig([
48
66
  globalLogger.info('Generated index.ts for server')
49
67
  })
50
68
  }
51
- }
69
+ },
70
+ {
71
+ entry: 'src/client/index.ts',
72
+ outDir: 'dist/client',
73
+ dts: true,
74
+ minify: true,
75
+ sourcemap: 'inline',
76
+ tsconfig: 'tsconfig.client.json',
77
+ deps: {
78
+ neverBundle: [
79
+ 'vue',
80
+ 'vue-router',
81
+ '@unhead/vue',
82
+ ]
83
+ },
84
+ hooks(hooks) {
85
+ hooks.hook('build:before', async () => {
86
+ generateIndexFile({
87
+ folders: [
88
+ 'src/client/services',
89
+ 'src/client/repositories',
90
+ 'src/client/mixins',
91
+ 'src/client/facades',
92
+ 'src/client/loaders',
93
+ 'src/client/entities',
94
+ 'src/client/utils',
95
+ 'src/client/guards',
96
+ ],
97
+ filename: 'src/client/index.ts'
98
+ })
99
+
100
+ globalLogger.info('Generated index.ts for client')
101
+ })
102
+ }
103
+ },
104
+
52
105
  ])
@@ -0,0 +1,55 @@
1
+ import { defineConfig } from 'vite'
2
+ import vue from '@vitejs/plugin-vue'
3
+ import tailwindcss from '@tailwindcss/vite'
4
+ import zenith from './plugins/zenith.js'
5
+
6
+
7
+ /**
8
+ * @typedef {Object} Options
9
+ * @property {string} [name] - Library name (default: `server`)
10
+ * @property {string} [entry] - Entry file or directory (default: `src/server/index.ts`)
11
+ * @property {string} [outDir] - Output directory (default: `dist/server`)
12
+ * @property {boolean} [ssr] - Whether to build for SSR (default: `false`). If `true`, external dependencies will be treated as CommonJS modules. If `false`, they will be treated as ES modules.
13
+ */
14
+
15
+ /**
16
+ * Vite plugin that replaces static and dynamic imports for specified modules
17
+ * with `globalThis.importAsync(...)` calls at transform time.
18
+ *
19
+ * @param {Options} options
20
+ */
21
+ export default function(options) {
22
+ return defineConfig({
23
+ plugins: [
24
+ vue({
25
+ template: {
26
+ compilerOptions: {
27
+ isCustomElement: (tag) => {
28
+ return ['iconify-icon'].includes(tag)
29
+ }
30
+ }
31
+ }
32
+ }),
33
+ tailwindcss(),
34
+ zenith({
35
+ imports: [
36
+ 'vue',
37
+ 'vue-router',
38
+ ],
39
+ })
40
+ ],
41
+ build: {
42
+ outDir: options.outDir,
43
+ minify: true,
44
+ manifest: true,
45
+ ssr: options.ssr || false,
46
+ ssrManifest: options.ssr || false,
47
+ lib: {
48
+ name: options.name,
49
+ entry: options.entry,
50
+ formats: ['es'],
51
+ },
52
+ },
53
+ })
54
+ }
55
+
@@ -0,0 +1,143 @@
1
+ // @ts-check
2
+ import { createFilter } from '@rollup/pluginutils'
3
+ import MagicString from 'magic-string'
4
+ import * as acorn from 'acorn'
5
+
6
+ /**
7
+ * @typedef {Object} Options
8
+ * @property {string[]} [imports] - List of module names to replace with `globalThis.importAsync`
9
+ * @property {string | string[]} [include] - Files to include (default: `**\/*.{js,ts,vue}`)
10
+ * @property {string | string[]} [exclude] - Files to exclude (default: `node_modules/**`)
11
+ */
12
+
13
+ /**
14
+ * Vite plugin that replaces static and dynamic imports for specified modules
15
+ * with `globalThis.importAsync(...)` calls at transform time.
16
+ *
17
+ * @param {Options} options
18
+ * @returns {import('vite').Plugin}
19
+ */
20
+ export default function (options) {
21
+ const include = options?.include || '**/*.{js,ts,vue}'
22
+ const exclude = options?.exclude || 'node_modules/**'
23
+ const imports = options?.imports || []
24
+
25
+ const filter = createFilter(include, exclude)
26
+
27
+ return {
28
+ name: 'zenith',
29
+ enforce: 'post',
30
+
31
+ /**
32
+ * @param {string} code
33
+ * @param {string} id
34
+ */
35
+ transform(code, id) {
36
+ if (!filter(id)) return null
37
+
38
+ if (!code.includes('import')) return null
39
+
40
+ const s = new MagicString(code)
41
+ let hasChanges = false
42
+
43
+ const ast = /** @type {any} */ (acorn.parse(code, {
44
+ sourceType: 'module',
45
+ ecmaVersion: 2022,
46
+ }))
47
+
48
+ const modulesFromList = imports
49
+
50
+ /**
51
+ * @param {string} importSource
52
+ * @returns {boolean}
53
+ */
54
+ function shouldReplaceImport(importSource) {
55
+ const isExternalModule = modulesFromList.includes(importSource)
56
+ const isExternalModuleSubpath = modulesFromList.some(baseModule =>
57
+ importSource.startsWith(baseModule + '/') && importSource !== baseModule
58
+ )
59
+
60
+ return isExternalModule || isExternalModuleSubpath
61
+ }
62
+
63
+ /**
64
+ * @param {any} node
65
+ */
66
+ function walkNode(node) {
67
+ if (!node || typeof node !== 'object') return
68
+
69
+ if (node.type === 'ImportExpression' && node.source?.value) {
70
+ const importSource = node.source.value
71
+
72
+ if (shouldReplaceImport(importSource)) {
73
+ const replacement = `globalThis.importAsync("${importSource}")`
74
+ s.overwrite(node.start, node.end, replacement)
75
+ hasChanges = true
76
+ }
77
+ }
78
+
79
+ for (const key in node) {
80
+ if (key === 'start' || key === 'end' || key === 'type') continue
81
+ const child = node[key]
82
+ if (Array.isArray(child)) {
83
+ child.forEach(walkNode)
84
+ } else {
85
+ walkNode(child)
86
+ }
87
+ }
88
+ }
89
+
90
+ walkNode(ast)
91
+
92
+ const importNodes = ast.body.filter((/** @type {any} */ node) => node.type === 'ImportDeclaration').reverse()
93
+
94
+ for (const node of importNodes) {
95
+ const importSource = node.source.value
96
+
97
+ if (shouldReplaceImport(importSource)) {
98
+ if (node.specifiers.length === 0) {
99
+ const replacement = `await globalThis.importAsync("${importSource}");`
100
+ s.overwrite(node.start, node.end, replacement)
101
+ hasChanges = true
102
+ } else {
103
+ const replacements = node.specifiers
104
+ .map((/** @type {any} */ spec) => {
105
+ const localName = spec.local.name
106
+ let replacement = ''
107
+
108
+ if (spec.type === 'ImportSpecifier') {
109
+ const importedName = spec.imported.name
110
+ replacement = `const { ${importedName}: ${localName} } = await globalThis.importAsync("${importSource}");`
111
+ }
112
+
113
+ if (spec.type === 'ImportDefaultSpecifier') {
114
+ const moduleVarName = `__module__${localName}__`
115
+ replacement = `const ${moduleVarName} = await globalThis.importAsync("${importSource}"); const ${localName} = ${moduleVarName}.default || ${moduleVarName};`
116
+ }
117
+
118
+ if (spec.type === 'ImportNamespaceSpecifier') {
119
+ replacement = `const ${localName} = await globalThis.importAsync("${importSource}");`
120
+ }
121
+
122
+ return replacement
123
+ })
124
+ .filter(Boolean)
125
+ .join('\n')
126
+
127
+ if (replacements) {
128
+ s.overwrite(node.start, node.end, replacements)
129
+ hasChanges = true
130
+ }
131
+ }
132
+ }
133
+ }
134
+
135
+ if (!hasChanges) return null
136
+
137
+ return {
138
+ code: s.toString(),
139
+ map: s.generateMap({ hires: true }),
140
+ }
141
+ },
142
+ }
143
+ }
package/vite.config.ts ADDED
@@ -0,0 +1,72 @@
1
+ import { createLogger, defineConfig } from 'vite'
2
+ import vue from '@vitejs/plugin-vue'
3
+ import tailwindcss from '@tailwindcss/vite'
4
+ // import { importReplacer } from './src/build/vite'
5
+ import { generateIndexFile } from '#server/utils/generateIndexFile.ts'
6
+ import dts from 'vite-plugin-dts'
7
+
8
+ const logger = createLogger()
9
+
10
+ const prebuild = () => ({
11
+ name: 'prebuild',
12
+ buildStart() {
13
+ generateIndexFile({
14
+ glob: '**/*.{ts,vue,css}',
15
+ folders: [
16
+ // 'src/client/composables',
17
+ // 'src/client/utils',
18
+ // 'src/client/facades',
19
+ 'src/client/components',
20
+ 'src/client/layouts',
21
+ // 'src/client/services',
22
+ // 'src/client/guards',
23
+ 'src/client/css',
24
+ ],
25
+ filename: 'src/client/components.ts'
26
+ })
27
+
28
+ logger.info('Generated index.ts for client')
29
+ }
30
+ })
31
+
32
+ const externals = [
33
+ 'vue',
34
+ 'vue-router',
35
+ 'vee-validate',
36
+ ]
37
+
38
+ export default defineConfig({
39
+ customLogger: logger,
40
+ plugins: [
41
+ vue({
42
+ template: {
43
+ compilerOptions: {
44
+ isCustomElement: (tag) => {
45
+ return ['iconify-icon'].includes(tag)
46
+ }
47
+ }
48
+ }
49
+ }),
50
+ // dts({
51
+ // entryRoot: 'src/client/index.ts',
52
+ // tsconfigPath: 'tsconfig.client.json',
53
+ // bundleTypes: true,
54
+ // }),
55
+ tailwindcss(),
56
+ prebuild(),
57
+ ],
58
+ build: {
59
+ outDir: 'dist/components',
60
+ minify: false,
61
+ rollupOptions: {
62
+ external: externals,
63
+ },
64
+ lib: {
65
+ name: 'Client',
66
+ entry: 'src/client/components.ts',
67
+ formats: ['es'],
68
+ fileName: (format) => `index.${format}.js`,
69
+ cssFileName: 'styles',
70
+ },
71
+ },
72
+ })
@@ -1,13 +0,0 @@
1
- //#region \0rolldown/runtime.js
2
- var __defProp = Object.defineProperty;
3
- var __exportAll = (all, no_symbols) => {
4
- let target = {};
5
- for (var name in all) __defProp(target, name, {
6
- get: all[name],
7
- enumerable: true
8
- });
9
- if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
10
- return target;
11
- };
12
- //#endregion
13
- export { __exportAll as t };