stacks 0.51.0 → 0.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (683) hide show
  1. package/README.md +20 -17
  2. package/api/nitro.config.ts +17 -0
  3. package/api/package.json +42 -0
  4. package/api/routes/index.ts +1 -0
  5. package/api/serverless.yml +11 -0
  6. package/auto-imports.d.ts +13 -18
  7. package/components/vue/main.ts +1 -0
  8. package/components/vue/package.json +1 -1
  9. package/components/web/package.json +1 -1
  10. package/core/actions/README.md +1 -1
  11. package/core/actions/build.config.ts +13 -0
  12. package/core/actions/node_modules/.bin/markdown-it +2 -2
  13. package/core/actions/node_modules/.bin/unbuild +17 -0
  14. package/core/actions/package.json +214 -13
  15. package/core/actions/src/build/core.ts +6 -0
  16. package/core/actions/src/clean.ts +9 -19
  17. package/core/actions/src/deploy/domains.ts +8 -0
  18. package/core/actions/src/deploy.ts +8 -0
  19. package/core/actions/src/dev/docs.ts +5 -0
  20. package/core/actions/src/{dev.ts → dev/index.ts} +0 -25
  21. package/core/actions/src/fresh.ts +1 -1
  22. package/core/actions/src/{generate-component-meta.ts → generate/component-meta.ts} +1 -1
  23. package/core/actions/src/{generate-ide-helpers.ts → generate/ide-helpers.ts} +2 -1
  24. package/core/actions/src/{generate.ts → generate/index.ts} +18 -3
  25. package/core/actions/src/{generate-lib-entries.ts → generate/lib-entries.ts} +1 -1
  26. package/core/actions/src/{generate-package-jsons.ts → generate/package-jsons.ts} +1 -1
  27. package/core/actions/src/{generate-vscode-custom-data.ts → generate/vscode-custom-data.ts} +1 -1
  28. package/core/actions/src/{generate-vue-compat.ts → generate/vue-compat.ts} +1 -1
  29. package/core/actions/src/helpers/lib-entries.ts +7 -6
  30. package/core/actions/src/helpers/package-json.ts +9 -9
  31. package/core/actions/src/helpers/utils.ts +21 -25
  32. package/core/actions/src/helpers/vscode-custom-data.ts +1 -1
  33. package/core/actions/src/key-generate.ts +2 -2
  34. package/core/actions/src/make.ts +63 -19
  35. package/core/actions/src/migrate.ts +3 -0
  36. package/core/actions/src/preinstall.ts +2 -2
  37. package/core/actions/src/release.ts +4 -3
  38. package/core/actions/src/seed.ts +3 -0
  39. package/core/actions/src/tinker.ts +9 -0
  40. package/core/actions/src/upgrade/framework.ts +29 -0
  41. package/core/actions/src/upgrade/index.ts +27 -0
  42. package/core/actions/src/upgrade/node.ts +4 -0
  43. package/core/actions/src/upgrade/package-manager.ts +4 -0
  44. package/core/actions/src/upgrade.ts +75 -0
  45. package/core/ai/README.md +1 -1
  46. package/core/ai/build.config.ts +13 -0
  47. package/core/ai/package.json +15 -12
  48. package/core/alias/README.md +1 -1
  49. package/core/alias/build.config.ts +13 -0
  50. package/core/alias/package.json +11 -11
  51. package/core/alias/src/index.ts +27 -10
  52. package/core/{drivers → analytics}/README.md +18 -9
  53. package/core/analytics/build.config.ts +13 -0
  54. package/core/analytics/package.json +64 -0
  55. package/core/arrays/README.md +1 -1
  56. package/core/arrays/build.config.ts +13 -0
  57. package/core/arrays/package.json +13 -12
  58. package/core/arrays/src/index.ts +4 -0
  59. package/core/auth/README.md +1 -1
  60. package/core/auth/build.config.ts +13 -0
  61. package/core/auth/package.json +11 -12
  62. package/{buddy → core/buddy}/README.md +19 -16
  63. package/core/buddy/build.config.ts +16 -0
  64. package/core/buddy/package.json +127 -0
  65. package/core/buddy/src/cli.ts +96 -0
  66. package/{buddy → core/buddy}/src/commands/add.ts +6 -11
  67. package/{buddy → core/buddy}/src/commands/build.ts +22 -31
  68. package/{buddy → core/buddy}/src/commands/changelog.ts +5 -6
  69. package/core/buddy/src/commands/clean.ts +30 -0
  70. package/{buddy → core/buddy}/src/commands/commit.ts +0 -2
  71. package/{buddy → core/buddy}/src/commands/create.ts +4 -6
  72. package/core/buddy/src/commands/deploy.ts +30 -0
  73. package/{buddy → core/buddy}/src/commands/dev.ts +42 -26
  74. package/{buddy → core/buddy}/src/commands/example.ts +8 -12
  75. package/{buddy → core/buddy}/src/commands/fresh.ts +3 -5
  76. package/{buddy → core/buddy}/src/commands/generate.ts +19 -22
  77. package/{buddy → core/buddy}/src/commands/index.ts +7 -1
  78. package/core/buddy/src/commands/inspire.ts +25 -0
  79. package/{buddy → core/buddy}/src/commands/key.ts +6 -7
  80. package/{buddy → core/buddy}/src/commands/lint.ts +10 -11
  81. package/{buddy → core/buddy}/src/commands/make.ts +55 -47
  82. package/core/buddy/src/commands/migrate.ts +32 -0
  83. package/{buddy → core/buddy}/src/commands/onboarding.ts +6 -5
  84. package/{buddy → core/buddy}/src/commands/preinstall.ts +0 -2
  85. package/{buddy → core/buddy}/src/commands/prepublish.ts +0 -2
  86. package/{buddy → core/buddy}/src/commands/release.ts +3 -3
  87. package/core/buddy/src/commands/seed.ts +31 -0
  88. package/{buddy → core/buddy}/src/commands/setting.ts +6 -5
  89. package/{buddy → core/buddy}/src/commands/setup.ts +0 -3
  90. package/{buddy → core/buddy}/src/commands/test.ts +35 -35
  91. package/core/buddy/src/commands/tinker.ts +29 -0
  92. package/{buddy → core/buddy}/src/commands/types.ts +0 -3
  93. package/core/buddy/src/commands/upgrade.ts +141 -0
  94. package/core/buddy/src/commands/version.ts +31 -0
  95. package/{buddy → core/buddy}/src/index.ts +2 -1
  96. package/core/build/README.md +1 -1
  97. package/core/build/build.config.ts +13 -0
  98. package/core/build/node_modules/.bin/unbuild +4 -4
  99. package/core/build/node_modules/.bin/vite +4 -4
  100. package/core/build/node_modules/.bin/vite-ssg +4 -4
  101. package/core/build/node_modules/.bin/vue-docgen-web-types +4 -4
  102. package/core/build/package.json +26 -24
  103. package/core/build/src/desktop.ts +141 -11
  104. package/core/build/src/pages.ts +1 -0
  105. package/core/build/src/stacks.ts +11 -9
  106. package/core/build/web-types.config.cjs +1 -0
  107. package/core/cache/README.md +1 -1
  108. package/core/cache/build.config.ts +13 -0
  109. package/core/cache/package.json +30 -15
  110. package/core/cache/src/drivers/dynamodb.ts +119 -117
  111. package/core/cache/src/drivers/memcached.ts +15 -14
  112. package/core/cache/src/drivers/redis.ts +7 -4
  113. package/core/cache/tests/Redis.test.ts +1 -0
  114. package/core/chat/README.md +2 -1
  115. package/core/chat/build.config.ts +13 -0
  116. package/core/chat/package.json +16 -16
  117. package/core/chat/src/drivers/slack.ts +20 -18
  118. package/core/chat/src/drivers/teams.ts +24 -0
  119. package/core/chat/src/index.ts +1 -0
  120. package/core/cli/README.md +2 -2
  121. package/core/cli/build.config.ts +14 -0
  122. package/core/cli/package.json +16 -14
  123. package/core/cli/src/actions/install.ts +3 -3
  124. package/core/cli/src/command.ts +2 -7
  125. package/core/cli/src/console.ts +2 -3
  126. package/core/cli/src/index.ts +1 -0
  127. package/core/cli/src/parse.ts +99 -0
  128. package/core/cli/src/run.ts +35 -18
  129. package/core/cloud/README.md +1 -1
  130. package/core/cloud/build.config.ts +13 -0
  131. package/core/cloud/package.json +11 -12
  132. package/core/collections/README.md +1 -1
  133. package/core/collections/build.config.ts +13 -0
  134. package/core/collections/package.json +12 -13
  135. package/core/config/README.md +28 -10
  136. package/core/config/build.config.ts +40 -4
  137. package/core/config/package.json +20 -19
  138. package/core/config/src/defaults.ts +22 -0
  139. package/core/config/src/index.ts +3 -19
  140. package/core/config/src/stacks.ts +42 -0
  141. package/core/database/README.md +1 -1
  142. package/core/database/build.config.ts +17 -0
  143. package/core/database/package.json +19 -14
  144. package/core/database/src/factory/index.ts +16 -62
  145. package/core/database/src/migrations/index.ts +145 -3
  146. package/core/database/src/seeder/index.ts +75 -6
  147. package/core/datetime/README.md +1 -1
  148. package/core/datetime/build.config.ts +14 -0
  149. package/core/datetime/package.json +11 -12
  150. package/core/datetime/src/index.ts +1 -1
  151. package/core/desktop/README.md +1 -1
  152. package/core/desktop/build.config.ts +13 -0
  153. package/core/desktop/node_modules/.bin/tauri +4 -4
  154. package/core/desktop/package.json +15 -16
  155. package/core/development/README.md +27 -0
  156. package/core/development/build.config.ts +13 -0
  157. package/core/development/node_modules/.bin/tsc +17 -0
  158. package/core/development/node_modules/.bin/tsserver +17 -0
  159. package/core/development/node_modules/.bin/tsx +17 -0
  160. package/core/development/node_modules/.bin/unbuild +17 -0
  161. package/core/{x-ray → development}/package.json +32 -33
  162. package/core/development/src/index.ts +2 -0
  163. package/core/docs/README.md +1 -1
  164. package/core/docs/build.config.ts +15 -0
  165. package/core/docs/node_modules/.bin/vitepress +4 -4
  166. package/core/docs/package.json +14 -13
  167. package/core/docs/src/index.ts +3 -2
  168. package/core/domains/README.md +1 -1
  169. package/core/domains/build.config.ts +13 -0
  170. package/core/domains/package.json +11 -11
  171. package/core/email/README.md +1 -1
  172. package/core/email/build.config.ts +14 -0
  173. package/core/email/node_modules/.bin/maizzle +4 -4
  174. package/core/email/package.json +29 -24
  175. package/core/email/src/actions/send.ts +1 -1
  176. package/core/email/src/drivers/emailjs.ts +10 -8
  177. package/core/email/src/drivers/mailgun.ts +8 -6
  178. package/core/email/src/drivers/mailjet.ts +7 -5
  179. package/core/email/src/drivers/mandrill.ts +6 -4
  180. package/core/email/src/drivers/netcore.ts +6 -4
  181. package/core/email/src/drivers/nodemailer.ts +10 -8
  182. package/core/email/src/drivers/postmark.ts +6 -4
  183. package/core/email/src/drivers/sendgrid.ts +7 -5
  184. package/core/email/src/drivers/ses.ts +18 -15
  185. package/core/error-handling/README.md +1 -1
  186. package/core/error-handling/build.config.ts +14 -0
  187. package/core/error-handling/package.json +14 -12
  188. package/core/error-handling/src/index.ts +1 -3
  189. package/core/events/README.md +1 -1
  190. package/core/events/package.json +12 -12
  191. package/core/events/src/index.ts +3 -2
  192. package/core/faker/README.md +62 -0
  193. package/core/faker/build.config.ts +13 -0
  194. package/{pages → core/faker}/package.json +22 -22
  195. package/core/faker/src/index.ts +1 -0
  196. package/core/git/README.md +1 -1
  197. package/core/git/build.config.ts +13 -0
  198. package/core/git/node_modules/.bin/bumpp +4 -4
  199. package/core/git/node_modules/.bin/changelogen +4 -4
  200. package/core/git/node_modules/.bin/commitizen +2 -2
  201. package/core/git/node_modules/.bin/cz +2 -2
  202. package/core/git/node_modules/.bin/giget +4 -4
  203. package/core/git/node_modules/.bin/git-cz +2 -2
  204. package/core/git/node_modules/.bin/simple-git-hooks +2 -2
  205. package/core/git/package.json +15 -16
  206. package/core/health/README.md +1 -1
  207. package/core/health/build.config.ts +13 -0
  208. package/core/health/package.json +11 -12
  209. package/core/lint/README.md +1 -1
  210. package/core/lint/build.config.ts +13 -0
  211. package/core/lint/node_modules/.bin/eslint +4 -4
  212. package/core/lint/node_modules/.bin/lint-staged +4 -4
  213. package/core/lint/node_modules/.bin/publint +17 -0
  214. package/core/lint/package.json +16 -16
  215. package/core/logging/README.md +1 -1
  216. package/core/logging/build.config.ts +15 -0
  217. package/core/logging/node_modules/.bin/tsc +4 -4
  218. package/core/logging/node_modules/.bin/tsserver +4 -4
  219. package/core/logging/node_modules/.bin/tsx +17 -0
  220. package/core/logging/node_modules/.bin/unbuild +17 -0
  221. package/core/logging/package.json +19 -11
  222. package/core/logging/src/index.ts +4 -8
  223. package/core/modules/README.md +1 -1
  224. package/core/modules/build.config.ts +13 -0
  225. package/core/modules/package.json +19 -11
  226. package/core/notifications/README.md +1 -1
  227. package/core/notifications/build.config.ts +0 -1
  228. package/core/notifications/node_modules/.bin/maizzle +4 -4
  229. package/core/notifications/package.json +33 -33
  230. package/core/notifications/src/index.ts +13 -7
  231. package/core/notifications/src/tailwind.config.ts +3 -3
  232. package/core/notifications/src/utils/config.ts +2 -2
  233. package/core/notifications/tests/email/Mailgun.test.ts +1 -1
  234. package/core/objects/README.md +1 -1
  235. package/core/objects/build.config.ts +13 -0
  236. package/core/objects/package.json +14 -13
  237. package/core/{cloud/dist/actions → orm}/README.md +14 -19
  238. package/core/orm/build.config.ts +15 -0
  239. package/core/{drivers → orm}/package.json +18 -19
  240. package/core/orm/src/index.ts +43 -0
  241. package/core/pages/build.config.ts +13 -0
  242. package/core/pages/package.json +16 -14
  243. package/core/pages/src/index.ts +25 -5
  244. package/core/path/README.md +1 -1
  245. package/core/{tables → path}/build.config.ts +2 -5
  246. package/core/path/package.json +13 -11
  247. package/core/path/src/index.ts +55 -13
  248. package/core/payments/README.md +1 -1
  249. package/core/payments/build.config.ts +13 -0
  250. package/core/payments/package.json +18 -12
  251. package/core/payments/src/drivers/stripe.ts +136 -0
  252. package/core/payments/src/index.ts +1 -1
  253. package/core/push/README.md +1 -1
  254. package/core/push/build.config.ts +13 -0
  255. package/core/push/package.json +13 -16
  256. package/core/push/src/drivers/expo.ts +18 -16
  257. package/core/push/src/drivers/fcm.ts +18 -16
  258. package/core/{x-ray → query-builder}/README.md +14 -21
  259. package/core/query-builder/build.config.ts +13 -0
  260. package/core/query-builder/package.json +56 -0
  261. package/core/query-builder/src/index.ts +1 -0
  262. package/core/query-builder/src/kysely.ts +37 -0
  263. package/core/queue/README.md +1 -1
  264. package/core/queue/build.config.ts +13 -0
  265. package/core/queue/package.json +11 -12
  266. package/core/realtime/README.md +1 -1
  267. package/core/realtime/build.config.ts +13 -0
  268. package/core/realtime/package.json +11 -12
  269. package/core/router/README.md +1 -1
  270. package/core/router/build.config.ts +13 -0
  271. package/core/router/package.json +12 -13
  272. package/core/router/src/index.ts +4 -3
  273. package/core/scheduler/README.md +137 -0
  274. package/core/scheduler/build.config.ts +13 -0
  275. package/core/{dashboard → scheduler}/package.json +20 -21
  276. package/core/scheduler/src/index.ts +120 -0
  277. package/core/scheduler/tests/example.test.ts +7 -0
  278. package/core/search-engine/README.md +1 -1
  279. package/core/search-engine/build.config.ts +13 -0
  280. package/core/search-engine/package.json +16 -15
  281. package/core/search-engine/src/drivers/meilisearch.ts +3 -1
  282. package/core/search-engine/src/index.ts +4 -2
  283. package/core/security/README.md +1 -1
  284. package/core/security/build.config.ts +13 -0
  285. package/core/security/package.json +12 -13
  286. package/core/server/README.md +1 -1
  287. package/core/server/build.config.ts +13 -0
  288. package/core/server/node_modules/.bin/nitro +4 -4
  289. package/core/server/node_modules/.bin/nitropack +4 -4
  290. package/core/server/node_modules/.bin/vite +4 -4
  291. package/core/server/package.json +13 -13
  292. package/core/server/src/index.ts +1 -1
  293. package/core/server/src/nitro.config.ts +1 -0
  294. package/core/signals/README.md +105 -0
  295. package/core/signals/build.config.ts +13 -0
  296. package/core/signals/package.json +55 -0
  297. package/core/signals/src/index.ts +1 -0
  298. package/core/signals/tests/example.test.ts +7 -0
  299. package/core/{cloud/src/actions → slug}/README.md +11 -5
  300. package/core/slug/build.config.ts +13 -0
  301. package/core/slug/package.json +55 -0
  302. package/core/slug/src/index.ts +56 -0
  303. package/core/slug/tests/example.test.ts +7 -0
  304. package/core/sms/README.md +2 -1
  305. package/core/sms/build.config.ts +13 -0
  306. package/core/sms/package.json +22 -22
  307. package/core/sms/src/drivers/gupshup.ts +3 -3
  308. package/core/sms/src/drivers/nexmo.ts +4 -4
  309. package/core/sms/src/drivers/plivo.ts +4 -4
  310. package/core/sms/src/drivers/sms77.ts +3 -3
  311. package/core/sms/src/drivers/sns.ts +4 -4
  312. package/core/sms/src/drivers/telnyx.ts +4 -4
  313. package/core/sms/src/drivers/termii.ts +3 -3
  314. package/core/sms/src/drivers/twilio.ts +4 -4
  315. package/core/storage/README.md +1 -1
  316. package/core/storage/build.config.ts +13 -0
  317. package/core/storage/package.json +14 -14
  318. package/core/storage/src/index.ts +4 -3
  319. package/core/strings/README.md +7 -6
  320. package/core/strings/package.json +12 -12
  321. package/core/strings/src/case.ts +1 -0
  322. package/core/strings/src/pluralize.ts +5 -1
  323. package/core/strings/src/utils.ts +48 -6
  324. package/core/testing/README.md +1 -1
  325. package/core/testing/build.config.ts +13 -0
  326. package/core/testing/node_modules/.bin/playwright +4 -4
  327. package/core/testing/node_modules/.bin/tsc +4 -4
  328. package/core/testing/node_modules/.bin/tsserver +4 -4
  329. package/core/testing/node_modules/.bin/unbuild +17 -0
  330. package/core/testing/node_modules/.bin/vitest +4 -4
  331. package/core/testing/package.json +16 -15
  332. package/core/tinker/README.md +61 -0
  333. package/core/tinker/node_modules/.bin/tsx +17 -0
  334. package/core/tinker/package.json +45 -0
  335. package/core/tinker/tinker.js +2 -0
  336. package/core/types/README.md +1 -1
  337. package/core/types/build.config.ts +13 -0
  338. package/core/types/node_modules/.bin/markdown-it +2 -2
  339. package/core/types/node_modules/.bin/vite +17 -0
  340. package/core/types/node_modules/.bin/vite-ssg +4 -4
  341. package/core/types/node_modules/.bin/vitepress +4 -4
  342. package/core/types/package.json +33 -24
  343. package/core/types/src/app.ts +4 -16
  344. package/core/types/src/auto-imports.ts +1 -3
  345. package/core/types/src/build.ts +1 -1
  346. package/core/types/src/cache.ts +78 -0
  347. package/core/types/src/cdn.ts +15 -0
  348. package/core/types/src/cli.ts +91 -70
  349. package/core/types/src/components.ts +1 -3
  350. package/core/types/src/cron-jobs.ts +17 -0
  351. package/core/types/src/database.ts +39 -2
  352. package/core/types/src/deploy.ts +8 -11
  353. package/core/types/src/dns.ts +49 -0
  354. package/core/types/src/docs.ts +2 -0
  355. package/core/types/src/events.ts +1 -1
  356. package/core/types/src/git.ts +1 -1
  357. package/core/types/src/index.ts +10 -2
  358. package/core/types/src/library.ts +6 -1
  359. package/core/types/src/model.ts +46 -0
  360. package/core/types/src/notifications.ts +151 -117
  361. package/core/types/src/payments.ts +63 -0
  362. package/core/types/src/reactivity.ts +1 -3
  363. package/core/types/src/router.ts +30 -0
  364. package/core/types/src/search-engine.ts +56 -8
  365. package/core/types/src/ssg.ts +1 -1
  366. package/core/types/src/stacks.ts +203 -0
  367. package/core/types/src/ui.ts +1 -1
  368. package/core/ui/README.md +1 -1
  369. package/core/ui/build.config.ts +13 -0
  370. package/core/ui/node_modules/.bin/vue-tsc +4 -4
  371. package/core/ui/package.json +23 -20
  372. package/core/ui/src/index.ts +5 -2
  373. package/core/ui/src/unocss.config.ts +47 -0
  374. package/core/ui/src/unocss.ts +3 -3
  375. package/core/utils/build.config.ts +13 -0
  376. package/core/utils/node_modules/.bin/rimraf +4 -4
  377. package/core/utils/node_modules/.bin/semver +17 -0
  378. package/core/utils/package.json +45 -21
  379. package/core/utils/src/base.ts +11 -6
  380. package/core/utils/src/config.ts +97 -0
  381. package/core/utils/src/debounce.ts +1 -0
  382. package/core/utils/src/guards.ts +3 -3
  383. package/core/utils/src/helpers.ts +30 -22
  384. package/core/utils/src/index.ts +7 -4
  385. package/core/utils/src/is.ts +80 -11
  386. package/core/utils/src/promise.ts +1 -1
  387. package/core/utils/src/throttle.ts +45 -0
  388. package/core/validation/README.md +1 -1
  389. package/core/validation/build.config.ts +13 -0
  390. package/core/validation/package.json +13 -14
  391. package/core/validation/src/index.ts +26 -0
  392. package/docs/.vitepress/config.ts +9 -0
  393. package/docs/README.md +13 -0
  394. package/docs/node_modules/.bin/rimraf +17 -0
  395. package/docs/node_modules/.bin/vitepress +17 -0
  396. package/docs/package.json +46 -0
  397. package/package.json +75 -35
  398. package/pages/desktop/.gitignore +24 -0
  399. package/pages/desktop/README.md +73 -0
  400. package/{core/x-ray → pages/desktop}/index.html +1 -1
  401. package/pages/desktop/package.json +26 -0
  402. package/pages/desktop/public/favicon.svg +1 -0
  403. package/pages/desktop/src/.gitignore +3 -0
  404. package/pages/desktop/src/Cargo.lock +3599 -0
  405. package/pages/desktop/src/Cargo.toml +28 -0
  406. package/pages/desktop/src/build.rs +3 -0
  407. package/pages/desktop/src/icons/128x128.png +0 -0
  408. package/pages/desktop/src/icons/128x128@2x.png +0 -0
  409. package/pages/desktop/src/icons/32x32.png +0 -0
  410. package/pages/desktop/src/icons/Square107x107Logo.png +0 -0
  411. package/pages/desktop/src/icons/Square142x142Logo.png +0 -0
  412. package/pages/desktop/src/icons/Square150x150Logo.png +0 -0
  413. package/pages/desktop/src/icons/Square284x284Logo.png +0 -0
  414. package/pages/desktop/src/icons/Square30x30Logo.png +0 -0
  415. package/pages/desktop/src/icons/Square310x310Logo.png +0 -0
  416. package/pages/desktop/src/icons/Square44x44Logo.png +0 -0
  417. package/pages/desktop/src/icons/Square71x71Logo.png +0 -0
  418. package/pages/desktop/src/icons/Square89x89Logo.png +0 -0
  419. package/pages/desktop/src/icons/StoreLogo.png +0 -0
  420. package/pages/desktop/src/icons/icon.icns +0 -0
  421. package/pages/desktop/src/icons/icon.ico +0 -0
  422. package/pages/desktop/src/icons/icon.png +0 -0
  423. package/pages/desktop/src/src/main.rs +10 -0
  424. package/pages/desktop/src/tauri.conf.json +73 -0
  425. package/simple-git-hooks.cjs +1 -0
  426. package/tsconfig.json +33 -12
  427. package/vitest.config.ts +2 -2
  428. package/buddy/bin/stacks.mjs +0 -4
  429. package/buddy/build.config.ts +0 -17
  430. package/buddy/node_modules/.bin/only-allow +0 -17
  431. package/buddy/node_modules/.bin/tsc +0 -17
  432. package/buddy/node_modules/.bin/tsserver +0 -17
  433. package/buddy/node_modules/.bin/unbuild +0 -17
  434. package/buddy/package.json +0 -194
  435. package/buddy/src/cli.ts +0 -66
  436. package/buddy/src/commands/clean.ts +0 -20
  437. package/buddy/src/commands/update.ts +0 -115
  438. package/core/actions/node_modules/.bin/esno +0 -17
  439. package/core/actions/node_modules/.bin/mkdist +0 -17
  440. package/core/actions/node_modules/.bin/tsc +0 -17
  441. package/core/actions/node_modules/.bin/tsserver +0 -17
  442. package/core/actions/src/build-core.ts +0 -7
  443. package/core/actions/src/fix-lint-issues.ts +0 -4
  444. package/core/actions/src/generate-onboarding.ts +0 -3
  445. package/core/actions/src/update.ts +0 -149
  446. package/core/ai/node_modules/.bin/mkdist +0 -17
  447. package/core/ai/node_modules/.bin/tsc +0 -17
  448. package/core/ai/node_modules/.bin/tsserver +0 -17
  449. package/core/alias/node_modules/.bin/mkdist +0 -17
  450. package/core/alias/node_modules/.bin/tsc +0 -17
  451. package/core/alias/node_modules/.bin/tsserver +0 -17
  452. package/core/arrays/node_modules/.bin/mkdist +0 -17
  453. package/core/arrays/node_modules/.bin/tsc +0 -17
  454. package/core/arrays/node_modules/.bin/tsserver +0 -17
  455. package/core/auth/node_modules/.bin/mkdist +0 -17
  456. package/core/auth/node_modules/.bin/tsc +0 -17
  457. package/core/auth/node_modules/.bin/tsserver +0 -17
  458. package/core/build/node_modules/.bin/mkdist +0 -17
  459. package/core/build/node_modules/.bin/tsc +0 -17
  460. package/core/build/node_modules/.bin/tsserver +0 -17
  461. package/core/cache/node_modules/.bin/mkdist +0 -17
  462. package/core/cache/node_modules/.bin/tsc +0 -17
  463. package/core/cache/node_modules/.bin/tsserver +0 -17
  464. package/core/chat/node_modules/.bin/mkdist +0 -17
  465. package/core/chat/node_modules/.bin/tsc +0 -17
  466. package/core/chat/node_modules/.bin/tsserver +0 -17
  467. package/core/cli/node_modules/.bin/esno +0 -17
  468. package/core/cli/node_modules/.bin/mkdist +0 -17
  469. package/core/cloud/node_modules/.bin/mkdist +0 -17
  470. package/core/cloud/node_modules/.bin/tsc +0 -17
  471. package/core/cloud/node_modules/.bin/tsserver +0 -17
  472. package/core/collections/node_modules/.bin/mkdist +0 -17
  473. package/core/collections/node_modules/.bin/tsc +0 -17
  474. package/core/collections/node_modules/.bin/tsserver +0 -17
  475. package/core/config/node_modules/.bin/mkdist +0 -17
  476. package/core/config/node_modules/.bin/tsc +0 -17
  477. package/core/config/node_modules/.bin/tsserver +0 -17
  478. package/core/config/node_modules/.bin/unbuild +0 -17
  479. package/core/config/src/helpers.ts +0 -30
  480. package/core/dashboard/README.md +0 -74
  481. package/core/dashboard/node_modules/.bin/mkdist +0 -17
  482. package/core/database/node_modules/.bin/mkdist +0 -17
  483. package/core/database/node_modules/.bin/tsc +0 -17
  484. package/core/database/node_modules/.bin/tsserver +0 -17
  485. package/core/datetime/node_modules/.bin/mkdist +0 -17
  486. package/core/datetime/node_modules/.bin/tsc +0 -17
  487. package/core/datetime/node_modules/.bin/tsserver +0 -17
  488. package/core/desktop/node_modules/.bin/mkdist +0 -17
  489. package/core/desktop/node_modules/.bin/tsc +0 -17
  490. package/core/desktop/node_modules/.bin/tsserver +0 -17
  491. package/core/docs/node_modules/.bin/mkdist +0 -17
  492. package/core/docs/node_modules/.bin/tsc +0 -17
  493. package/core/docs/node_modules/.bin/tsserver +0 -17
  494. package/core/domains/node_modules/.bin/mkdist +0 -17
  495. package/core/domains/node_modules/.bin/tsc +0 -17
  496. package/core/domains/node_modules/.bin/tsserver +0 -17
  497. package/core/drivers/node_modules/.bin/mkdist +0 -17
  498. package/core/drivers/node_modules/.bin/tsc +0 -17
  499. package/core/drivers/node_modules/.bin/tsserver +0 -17
  500. package/core/drivers/src/index.ts +0 -10
  501. package/core/email/dist/utils/template.html +0 -8
  502. package/core/email/node_modules/.bin/mkdist +0 -17
  503. package/core/email/node_modules/.bin/tsc +0 -17
  504. package/core/email/node_modules/.bin/tsserver +0 -17
  505. package/core/error-handling/node_modules/.bin/mkdist +0 -17
  506. package/core/error-handling/node_modules/.bin/tsc +0 -17
  507. package/core/error-handling/node_modules/.bin/tsserver +0 -17
  508. package/core/events/node_modules/.bin/mkdist +0 -17
  509. package/core/events/node_modules/.bin/tsc +0 -17
  510. package/core/events/node_modules/.bin/tsserver +0 -17
  511. package/core/git/node_modules/.bin/mkdist +0 -17
  512. package/core/git/node_modules/.bin/tsc +0 -17
  513. package/core/git/node_modules/.bin/tsserver +0 -17
  514. package/core/health/node_modules/.bin/mkdist +0 -17
  515. package/core/health/node_modules/.bin/tsc +0 -17
  516. package/core/health/node_modules/.bin/tsserver +0 -17
  517. package/core/lint/node_modules/.bin/mkdist +0 -17
  518. package/core/lint/node_modules/.bin/tsc +0 -17
  519. package/core/lint/node_modules/.bin/tsserver +0 -17
  520. package/core/logging/debug-test.ts +0 -8
  521. package/core/logging/node_modules/.bin/mkdist +0 -17
  522. package/core/modules/node_modules/.bin/mkdist +0 -17
  523. package/core/modules/node_modules/.bin/tsc +0 -17
  524. package/core/modules/node_modules/.bin/tsserver +0 -17
  525. package/core/notifications/node_modules/.bin/mkdist +0 -17
  526. package/core/notifications/node_modules/.bin/tsc +0 -17
  527. package/core/notifications/node_modules/.bin/tsserver +0 -17
  528. package/core/notifications/node_modules/.bin/unbuild +0 -17
  529. package/core/objects/node_modules/.bin/mkdist +0 -17
  530. package/core/objects/node_modules/.bin/tsc +0 -17
  531. package/core/objects/node_modules/.bin/tsserver +0 -17
  532. package/core/pages/node_modules/.bin/mkdist +0 -17
  533. package/core/pages/node_modules/.bin/tsc +0 -17
  534. package/core/pages/node_modules/.bin/tsserver +0 -17
  535. package/core/path/node_modules/.bin/mkdist +0 -17
  536. package/core/path/node_modules/.bin/tsc +0 -17
  537. package/core/path/node_modules/.bin/tsserver +0 -17
  538. package/core/payments/node_modules/.bin/mkdist +0 -17
  539. package/core/payments/node_modules/.bin/tsc +0 -17
  540. package/core/payments/node_modules/.bin/tsserver +0 -17
  541. package/core/push/node_modules/.bin/mkdist +0 -17
  542. package/core/push/node_modules/.bin/tsc +0 -17
  543. package/core/push/node_modules/.bin/tsserver +0 -17
  544. package/core/queue/node_modules/.bin/mkdist +0 -17
  545. package/core/queue/node_modules/.bin/tsc +0 -17
  546. package/core/queue/node_modules/.bin/tsserver +0 -17
  547. package/core/realtime/node_modules/.bin/mkdist +0 -17
  548. package/core/realtime/node_modules/.bin/tsc +0 -17
  549. package/core/realtime/node_modules/.bin/tsserver +0 -17
  550. package/core/router/node_modules/.bin/mkdist +0 -17
  551. package/core/router/node_modules/.bin/tsc +0 -17
  552. package/core/router/node_modules/.bin/tsserver +0 -17
  553. package/core/search-engine/node_modules/.bin/mkdist +0 -17
  554. package/core/search-engine/node_modules/.bin/tsc +0 -17
  555. package/core/search-engine/node_modules/.bin/tsserver +0 -17
  556. package/core/security/node_modules/.bin/mkdist +0 -17
  557. package/core/security/node_modules/.bin/tsc +0 -17
  558. package/core/security/node_modules/.bin/tsserver +0 -17
  559. package/core/server/node_modules/.bin/mkdist +0 -17
  560. package/core/server/node_modules/.bin/tsc +0 -17
  561. package/core/server/node_modules/.bin/tsserver +0 -17
  562. package/core/sms/node_modules/.bin/mkdist +0 -17
  563. package/core/sms/node_modules/.bin/tsc +0 -17
  564. package/core/sms/node_modules/.bin/tsserver +0 -17
  565. package/core/storage/node_modules/.bin/mkdist +0 -17
  566. package/core/storage/node_modules/.bin/tsc +0 -17
  567. package/core/storage/node_modules/.bin/tsserver +0 -17
  568. package/core/strings/node_modules/.bin/mkdist +0 -17
  569. package/core/strings/node_modules/.bin/tsc +0 -17
  570. package/core/strings/node_modules/.bin/tsserver +0 -17
  571. package/core/strings/node_modules/.bin/unbuild +0 -17
  572. package/core/tables/README.md +0 -109
  573. package/core/tables/examples/vue/App.vue +0 -12
  574. package/core/tables/examples/vue/favicon.png +0 -0
  575. package/core/tables/examples/vue/index.html +0 -20
  576. package/core/tables/examples/web/favicon.png +0 -0
  577. package/core/tables/examples/web/index.html +0 -13
  578. package/core/tables/index.html +0 -13
  579. package/core/tables/node_modules/.bin/mkdist +0 -17
  580. package/core/tables/node_modules/.bin/tsc +0 -17
  581. package/core/tables/node_modules/.bin/tsserver +0 -17
  582. package/core/tables/node_modules/.bin/unbuild +0 -17
  583. package/core/tables/node_modules/.bin/vite +0 -17
  584. package/core/tables/package.json +0 -64
  585. package/core/tables/src/App.vue +0 -23
  586. package/core/tables/src/components/Demo.vue +0 -89
  587. package/core/tables/src/components/README.md +0 -111
  588. package/core/tables/src/components/Table.vue +0 -342
  589. package/core/tables/src/components/TableBody.vue +0 -33
  590. package/core/tables/src/components/TableCellActionItems.vue +0 -9
  591. package/core/tables/src/components/TableFilters.vue +0 -703
  592. package/core/tables/src/components/TableHead.vue +0 -87
  593. package/core/tables/src/components/TablePagination.vue +0 -146
  594. package/core/tables/src/components/TableRow.vue +0 -78
  595. package/core/tables/src/components/TableSearch.vue +0 -38
  596. package/core/tables/src/components/Tooltip.vue +0 -10
  597. package/core/tables/src/docs/index.md +0 -0
  598. package/core/tables/src/functions/README.md +0 -8
  599. package/core/tables/src/functions/dark.ts +0 -3
  600. package/core/tables/src/functions/index.ts +0 -2
  601. package/core/tables/src/functions/table.ts +0 -207
  602. package/core/tables/src/main.js +0 -4
  603. package/core/tables/vite.config.ts +0 -26
  604. package/core/testing/node_modules/.bin/mkdist +0 -17
  605. package/core/types/node_modules/.bin/mkdist +0 -17
  606. package/core/types/node_modules/.bin/tsc +0 -17
  607. package/core/types/node_modules/.bin/tsserver +0 -17
  608. package/core/ui/node_modules/.bin/mkdist +0 -17
  609. package/core/ui/node_modules/.bin/tsc +0 -17
  610. package/core/ui/node_modules/.bin/tsserver +0 -17
  611. package/core/utils/node_modules/.bin/esno +0 -17
  612. package/core/utils/node_modules/.bin/mkdist +0 -17
  613. package/core/utils/node_modules/.bin/tsc +0 -17
  614. package/core/utils/node_modules/.bin/tsserver +0 -17
  615. package/core/utils/src/vendor.ts +0 -1
  616. package/core/validation/node_modules/.bin/mkdist +0 -17
  617. package/core/validation/node_modules/.bin/tsc +0 -17
  618. package/core/validation/node_modules/.bin/tsserver +0 -17
  619. package/core/x-ray/node_modules/.bin/mkdist +0 -17
  620. package/core/x-ray/node_modules/.bin/tsc +0 -17
  621. package/core/x-ray/node_modules/.bin/tsserver +0 -17
  622. package/core/x-ray/routes/index.ts +0 -19
  623. package/core/x-ray/src/client.ts +0 -14
  624. package/core/x-ray/src/desktop/api/nitro.config.ts +0 -18
  625. package/core/x-ray/src/desktop/api/routes/api/logs.ts +0 -7
  626. package/core/x-ray/src/desktop/api/routes/api/store-logs.ts +0 -22
  627. package/core/x-ray/src/desktop/api/src/types.ts +0 -7
  628. package/core/x-ray/src/desktop/api/storage/index.ts +0 -7
  629. package/core/x-ray/src/desktop/app.vue +0 -376
  630. package/core/x-ray/src/desktop/functions/http.ts +0 -26
  631. package/core/x-ray/src/desktop/functions/types.ts +0 -7
  632. package/core/x-ray/src/desktop/main.ts +0 -14
  633. package/core/x-ray/src/desktop/modules/counter/mod.vue +0 -44
  634. package/core/x-ray/src/desktop/modules/fetcher/mod.vue +0 -63
  635. package/core/x-ray/src/desktop/plugins/unified/unified-app.ts +0 -5
  636. package/core/x-ray/src/desktop/plugins/unified/unified-styles.scss +0 -0
  637. package/core/x-ray/src/desktop/services/http.ts +0 -45
  638. package/core/x-ray/src/desktop/styles/app.scss +0 -0
  639. package/core/x-ray/src/http.ts +0 -26
  640. package/core/x-ray/src/index.ts +0 -42
  641. package/core/x-ray/src/ray.config.js +0 -28
  642. package/core/x-ray/src/types.ts +0 -8
  643. package/examples/vue/App.vue +0 -12
  644. package/examples/vue/favicon.png +0 -0
  645. package/examples/vue/index.html +0 -20
  646. package/examples/web/favicon.png +0 -0
  647. package/examples/web/index.html +0 -13
  648. package/functions/package.json +0 -41
  649. package/pages/node_modules/.bin/mkdist +0 -17
  650. package/pages/node_modules/.bin/tsc +0 -17
  651. package/pages/node_modules/.bin/tsserver +0 -17
  652. package/pages/src/index.ts +0 -19
  653. /package/core/actions/src/{build-component-libs.ts → build/component-libs.ts} +0 -0
  654. /package/core/actions/src/{build-stacks.ts → build/stacks.ts} +0 -0
  655. /package/core/actions/src/{dev-components.ts → dev/components.ts} +0 -0
  656. /package/core/actions/src/{generate-settings.ts → generate/settings.ts} +0 -0
  657. /package/core/actions/src/{lint-fix.ts → lint/fix.ts} +0 -0
  658. /package/core/actions/src/{lint.ts → lint/index.ts} +0 -0
  659. /package/core/actions/src/{test-coverage.ts → test/coverage.ts} +0 -0
  660. /package/core/actions/src/{test-feature.ts → test/feature.ts} +0 -0
  661. /package/core/actions/src/{test-ui.ts → test/ui.ts} +0 -0
  662. /package/core/actions/src/{test-unit.ts → test/unit.ts} +0 -0
  663. /package/core/{dashboard/src/index.ts → actions/src/upgrade/dependencies.ts} +0 -0
  664. /package/core/{tables/src/cli/index.ts → analytics/src/drivers/fathom.ts} +0 -0
  665. /package/core/{tables/src/config/tables.ts → analytics/src/index.ts} +0 -0
  666. /package/core/{dashboard → analytics}/tests/example.test.ts +0 -0
  667. /package/{buddy → core/buddy}/art/social.png +0 -0
  668. /package/{netlify.toml → core/cloud/netlify.toml} +0 -0
  669. /package/core/{drivers → development}/tests/example.test.ts +0 -0
  670. /package/core/{tables → faker}/tests/example.test.ts +0 -0
  671. /package/core/{x-ray → orm}/tests/example.test.ts +0 -0
  672. /package/{pages → core/query-builder}/tests/example.test.ts +0 -0
  673. /package/pages/{App.vue → web/App.vue} +0 -0
  674. /package/pages/{index.html → web/index.html} +0 -0
  675. /package/pages/{main.ts → web/main.ts} +0 -0
  676. /package/pages/{public → web/public}/_headers +0 -0
  677. /package/pages/{public → web/public}/favicon-dark.svg +0 -0
  678. /package/pages/{public → web/public}/favicon.svg +0 -0
  679. /package/pages/{public → web/public}/pwa-192x192.png +0 -0
  680. /package/pages/{public → web/public}/pwa-512x512.png +0 -0
  681. /package/pages/{public → web/public}/safari-pinned-tab.svg +0 -0
  682. /package/pages/{styles → web/styles}/main.css +0 -0
  683. /package/pages/{styles → web/styles}/markdown.css +0 -0
@@ -0,0 +1,25 @@
1
+ import type { CLI } from '@stacksjs/types'
2
+ import { runAction } from '@stacksjs/actions'
3
+ import { intro, outro } from '@stacksjs/cli'
4
+ import { Action, ExitCode } from '@stacksjs/types'
5
+
6
+ async function inspire(buddy: CLI) {
7
+ buddy
8
+ .command('inspire', 'Inspire yourself with a random quote')
9
+ .option('--two', 'Show two quotes', { default: false })
10
+ .action(async () => {
11
+ const perf = await intro('buddy inspire')
12
+ const result = await runAction(Action.Inspire)
13
+ console.log('result', result)
14
+
15
+ // if (result.isErr()) {
16
+ // outro('While running the inspire command, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
17
+ // process.exit()
18
+ // }
19
+
20
+ outro('Your quote is: ...', { startTime: perf, useSeconds: true })
21
+ process.exit(ExitCode.Success)
22
+ })
23
+ }
24
+
25
+ export { inspire }
@@ -1,5 +1,5 @@
1
1
  import type { CLI, KeyOptions } from '@stacksjs/types'
2
- import { intro, log, outro } from '@stacksjs/cli'
2
+ import { intro, outro } from '@stacksjs/cli'
3
3
  import { Action } from '@stacksjs/types'
4
4
  import { runAction } from '@stacksjs/actions'
5
5
 
@@ -7,21 +7,20 @@ async function key(buddy: CLI) {
7
7
  const descriptions = {
8
8
  command: 'Generate & set the application key.',
9
9
  verbose: 'Enable verbose output',
10
- debug: 'Enable debug mode',
11
10
  }
12
11
 
13
12
  buddy
14
13
  .command('key:generate', descriptions.command)
15
14
  .option('--verbose', descriptions.verbose, { default: false })
16
- .option('--debug', descriptions.debug, { default: false })
17
15
  .action(async (options: KeyOptions) => {
18
16
  const startTime = await intro('buddy key:generate')
19
17
  const result = await runAction(Action.KeyGenerate, options)
18
+ console.log('result', result)
20
19
 
21
- if (result.isErr()) {
22
- log.error('Failed to set random application key.', result.error)
23
- process.exit()
24
- }
20
+ // if (result.isErr()) {
21
+ // log.error('Failed to set random application key.', result.error)
22
+ // process.exit()
23
+ // }
25
24
 
26
25
  outro('Set random application key.', { startTime })
27
26
  })
@@ -8,22 +8,21 @@ async function lint(buddy: CLI) {
8
8
  lint: 'Automagically lints your project codebase',
9
9
  lintFix: 'Automagically fixes all lint errors',
10
10
  verbose: 'Enable verbose output',
11
- debug: 'Enable debug mode',
12
11
  }
13
12
 
14
13
  buddy
15
14
  .command('lint', descriptions.lint)
16
15
  .option('-f, --fix', descriptions.lintFix, { default: false })
17
16
  .option('--verbose', descriptions.verbose, { default: false })
18
- .option('--debug', descriptions.debug, { default: false })
19
17
  .action(async (options: LintOptions) => {
20
18
  const perf = await intro('buddy lint')
21
19
  const result = await runAction(Action.Lint, { ...options, showSpinner: true, spinnerText: 'Linting...' })
20
+ console.log('result', result)
22
21
 
23
- if (result.isErr()) {
24
- outro('While running `buddy lint`, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
25
- process.exit()
26
- }
22
+ // if (result.isErr()) {
23
+ // outro('While running `buddy lint`, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
24
+ // process.exit()
25
+ // }
27
26
 
28
27
  outro('Linted your project.', { startTime: perf, useSeconds: true })
29
28
  })
@@ -31,15 +30,15 @@ async function lint(buddy: CLI) {
31
30
  buddy
32
31
  .command('lint:fix', descriptions.lintFix)
33
32
  .option('--verbose', descriptions.verbose, { default: false })
34
- .option('--debug', descriptions.debug, { default: false })
35
33
  .action(async (options: LintOptions) => {
36
34
  log.info('Fixing lint errors...')
37
35
  const result = await runAction(Action.LintFix, { ...options, showSpinner: true, spinnerText: 'Linting...' })
36
+ console.log('result', result)
38
37
 
39
- if (result.isErr()) {
40
- log.error('There was an error lint fixing your code.', result.error)
41
- process.exit()
42
- }
38
+ // if (result.isErr()) {
39
+ // log.error('There was an error lint fixing your code.', result.error)
40
+ // process.exit()
41
+ // }
43
42
 
44
43
  log.success('Fixed lint errors.')
45
44
  })
@@ -1,8 +1,9 @@
1
1
  import { ExitCode } from '@stacksjs/types'
2
2
  import type { CLI, MakeOptions } from '@stacksjs/types'
3
- import { intro, italic, log, outro, prompts } from '@stacksjs/cli'
4
-
3
+ import { intro, italic, log, outro, prompt, runCommand } from '@stacksjs/cli'
4
+ import { frameworkPath } from '@stacksjs/path'
5
5
  import {
6
+ createModel,
6
7
  createNotification,
7
8
  invoke,
8
9
  component as makeComponent,
@@ -10,7 +11,6 @@ import {
10
11
  factory as makeFactory,
11
12
  fx as makeFunction,
12
13
  language as makeLanguage,
13
- migration as makeMigration,
14
14
  page as makePage,
15
15
  stack as makeStack,
16
16
 
@@ -18,6 +18,7 @@ import {
18
18
 
19
19
  async function make(buddy: CLI) {
20
20
  const descriptions = {
21
+ model: 'Create a new model',
21
22
  component: 'Create a new component',
22
23
  page: 'Create a new page',
23
24
  function: 'Create a new function',
@@ -27,8 +28,8 @@ async function make(buddy: CLI) {
27
28
  factory: 'Create a new factory',
28
29
  notification: 'Create a new notification',
29
30
  stack: 'Create a new new stack',
31
+ select: 'What are you trying to make?',
30
32
  verbose: 'Enable verbose output',
31
- debug: 'Enable debug mode',
32
33
  }
33
34
 
34
35
  buddy
@@ -43,7 +44,6 @@ async function make(buddy: CLI) {
43
44
  .option('-n, --notification', descriptions.notification, { default: false })
44
45
  .option('-s, --stack', descriptions.stack, { default: false })
45
46
  .option('--verbose', descriptions.verbose, { default: false })
46
- .option('--debug', descriptions.debug, { default: false })
47
47
  .action(async (options: MakeOptions) => {
48
48
  const name = buddy.args[0]
49
49
 
@@ -53,20 +53,19 @@ async function make(buddy: CLI) {
53
53
  }
54
54
 
55
55
  if (hasNoOptions(options)) {
56
- const answers = await prompts.multiselect({
56
+ const answers = await prompt(descriptions.select, {
57
57
  type: 'multiselect',
58
- name: 'make',
59
- message: 'What are you trying to make?',
60
- choices: [
61
- { title: 'Component', value: 'component' },
62
- { title: 'Function', value: 'function' },
63
- { title: 'Page', value: 'page' },
64
- { title: 'Language', value: 'language' },
65
- { title: 'Notification', value: 'notification' },
66
- { title: 'Database', value: 'database' },
67
- { title: 'Migration', value: 'migration' },
68
- { title: 'Factory', value: 'factory' },
69
- { title: 'Stack', value: 'stack' },
58
+ required: true,
59
+ options: [
60
+ { label: 'Page', value: 'page' },
61
+ { label: 'Function', value: 'function' },
62
+ { label: 'Component', value: 'component' },
63
+ { label: 'Notification', value: 'notification' },
64
+ { label: 'Language', value: 'language' },
65
+ { label: 'Database', value: 'database' },
66
+ { label: 'Migration', value: 'migration' },
67
+ { label: 'Factory', value: 'factory' },
68
+ { label: 'Stack', value: 'stack' },
70
69
  ],
71
70
  })
72
71
 
@@ -83,7 +82,6 @@ async function make(buddy: CLI) {
83
82
  .command('make:component', descriptions.component)
84
83
  .option('-n, --name', 'The name of the component')
85
84
  .option('--verbose', descriptions.verbose, { default: false })
86
- .option('--debug', descriptions.debug, { default: false })
87
85
  .action(async (options: MakeOptions) => {
88
86
  const name = buddy.args[0] || options.name
89
87
  options.name = name
@@ -100,7 +98,6 @@ async function make(buddy: CLI) {
100
98
  .command('make:database', descriptions.database)
101
99
  .option('-n, --name', 'The name of the database')
102
100
  .option('--verbose', descriptions.verbose, { default: false })
103
- .option('--debug', descriptions.debug, { default: false })
104
101
  .action(async (options: MakeOptions) => {
105
102
  const name = buddy.args[0] || options.name
106
103
  options.name = name
@@ -113,28 +110,10 @@ async function make(buddy: CLI) {
113
110
  await makeDatabase(options)
114
111
  })
115
112
 
116
- buddy
117
- .command('make:migration', descriptions.migration)
118
- .option('-n, --name', 'The name of the migration')
119
- .option('--verbose', descriptions.verbose, { default: false })
120
- .option('--debug', descriptions.debug, { default: false })
121
- .action(async (options: MakeOptions) => {
122
- const name = buddy.args[0] || options.name
123
- options.name = name
124
-
125
- if (!name) {
126
- log.error('You need to specify a name. Read more about the documentation here.')
127
- process.exit()
128
- }
129
-
130
- await makeMigration(options)
131
- })
132
-
133
113
  buddy
134
114
  .command('make:factory', descriptions.factory)
135
115
  .option('-n, --name', 'The name of the factory')
136
116
  .option('--verbose', descriptions.verbose, { default: false })
137
- .option('--debug', descriptions.debug, { default: false })
138
117
  .action(async (options: MakeOptions) => {
139
118
  const name = buddy.args[0] || options.name
140
119
  options.name = name
@@ -151,7 +130,6 @@ async function make(buddy: CLI) {
151
130
  .command('make:page', descriptions.page)
152
131
  .option('-n, --name', 'The name of the page')
153
132
  .option('--verbose', descriptions.verbose, { default: false })
154
- .option('--debug', descriptions.debug, { default: false })
155
133
  .action(async (options: MakeOptions) => {
156
134
  const name = buddy.args[0] || options.name
157
135
  options.name = name
@@ -168,7 +146,6 @@ async function make(buddy: CLI) {
168
146
  .command('make:function', descriptions.function)
169
147
  .option('-n, --name', 'The name of the function')
170
148
  .option('--verbose', descriptions.verbose, { default: false })
171
- .option('--debug', descriptions.debug, { default: false })
172
149
  .action(async (options: MakeOptions) => {
173
150
  await makeFunction(options)
174
151
  })
@@ -177,7 +154,6 @@ async function make(buddy: CLI) {
177
154
  .command('make:lang', descriptions.language)
178
155
  .option('-n, --name', 'The name of the language')
179
156
  .option('--verbose', descriptions.verbose, { default: false })
180
- .option('--debug', descriptions.debug, { default: false })
181
157
  .action(async (options: MakeOptions) => {
182
158
  const name = buddy.args[0] || options.name
183
159
  options.name = name
@@ -197,7 +173,6 @@ async function make(buddy: CLI) {
197
173
  .option('-c, --chat', 'Is it a chat notification?', { default: false })
198
174
  .option('-s, --sms', 'Is it a SMS notification?', { default: false })
199
175
  .option('--verbose', descriptions.verbose, { default: false })
200
- .option('--debug', descriptions.debug, { default: false })
201
176
  .action(async (options: MakeOptions) => {
202
177
  const perf = await intro('buddy make:notification')
203
178
 
@@ -210,11 +185,12 @@ async function make(buddy: CLI) {
210
185
  }
211
186
 
212
187
  const result = await createNotification(options)
188
+ console.log('result', result)
213
189
 
214
- if (!result) {
215
- outro('While running the make:notification command, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
216
- process.exit()
217
- }
190
+ // if (!result) {
191
+ // outro('While running the make:notification command, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
192
+ // process.exit()
193
+ // }
218
194
 
219
195
  outro(`Created your ${italic(name)} notification.`, { startTime: perf, useSeconds: true })
220
196
  process.exit(ExitCode.Success)
@@ -224,7 +200,6 @@ async function make(buddy: CLI) {
224
200
  .command('make:stack', descriptions.stack)
225
201
  .option('-n, --name', 'The name of the stack')
226
202
  .option('--verbose', descriptions.verbose, { default: false })
227
- .option('--debug', descriptions.debug, { default: false })
228
203
  .action(async (options: MakeOptions) => {
229
204
  const name = buddy.args[0] || options.name
230
205
  options.name = name
@@ -236,6 +211,39 @@ async function make(buddy: CLI) {
236
211
 
237
212
  await makeStack(options)
238
213
  })
214
+
215
+ buddy
216
+ .command('make:model', descriptions.model)
217
+ .option('-n, --name', 'The name of the model')
218
+ .action(async (options: MakeOptions) => {
219
+ const name = buddy.args[0] || options.name
220
+ options.name = name
221
+
222
+ if (!name) {
223
+ log.error('You need to specify the model name')
224
+ process.exit()
225
+ }
226
+
227
+ await createModel(options)
228
+ })
229
+
230
+ buddy
231
+ .command('make:migration', descriptions.migration)
232
+ .option('-n, --name', 'The name of the migration')
233
+ .option('-e, --env', 'The environment to run the migration in', { default: 'dev' })
234
+ .action(async (options: MakeOptions) => {
235
+ const path = frameworkPath('database/schema.prisma')
236
+ const name = buddy.args[0] || options.name
237
+ options.name = name
238
+
239
+ if (!name) {
240
+ log.error('You need to specify the migration name')
241
+ process.exit()
242
+ }
243
+
244
+ await runCommand(`npx prisma migrate ${options.env} --name=${name} --schema=${path}`)
245
+ log.success(path, name)
246
+ })
239
247
  }
240
248
 
241
249
  function hasNoOptions(options: MakeOptions) {
@@ -0,0 +1,32 @@
1
+ import type { CLI, FreshOptions } from '@stacksjs/types'
2
+ import { runAction } from '@stacksjs/actions'
3
+ import { intro, outro } from '@stacksjs/cli'
4
+ import { Action, ExitCode } from '@stacksjs/types'
5
+
6
+ async function migrate(buddy: CLI) {
7
+ const descriptions = {
8
+ migrate: 'Migrates your database',
9
+ verbose: 'Enable verbose output',
10
+ }
11
+
12
+ buddy
13
+ .command('migrate', descriptions.migrate)
14
+ .option('--verbose', descriptions.verbose, { default: false })
15
+ .action(async (options: FreshOptions) => {
16
+ const perf = await intro('buddy migrate')
17
+ const result = await runAction(Action.Migrate, { ...options, showSpinner: true, spinnerText: 'Migrating...' })
18
+ console.log('result', result)
19
+
20
+ // if (result.isErr()) {
21
+ // outro('While running the migrate command, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
22
+ // process.exit()
23
+ // }
24
+
25
+ const APP_ENV = process.env.APP_ENV || 'local'
26
+
27
+ outro(`Migrated your ${APP_ENV} database.`, { startTime: perf, useSeconds: true })
28
+ process.exit(ExitCode.Success)
29
+ })
30
+ }
31
+
32
+ export { migrate }
@@ -1,5 +1,5 @@
1
1
  import type { CLI } from '@stacksjs/types'
2
- import { intro, log, outro } from '@stacksjs/cli'
2
+ import { intro, outro } from '@stacksjs/cli'
3
3
  import { Action } from '@stacksjs/types'
4
4
  import { runAction } from '@stacksjs/actions'
5
5
 
@@ -15,11 +15,12 @@ async function onboarding(buddy: CLI) {
15
15
  .action(async () => {
16
16
  const startTime = await intro('buddy page:onboarding')
17
17
  const result = await runAction(Action.GenerateOnboarding)
18
+ console.log('result', result)
18
19
 
19
- if (result.isErr()) {
20
- log.error('Something went wrong when generating', result.error)
21
- process.exit()
22
- }
20
+ // if (result.isErr()) {
21
+ // log.error('Something went wrong when generating', result.error)
22
+ // process.exit()
23
+ // }
23
24
 
24
25
  outro('Pages generated successfully', { startTime })
25
26
  })
@@ -5,13 +5,11 @@ async function preinstall(buddy: CLI) {
5
5
  const descriptions = {
6
6
  command: 'Run your preinstall script',
7
7
  verbose: 'Enable verbose output',
8
- debug: 'Enable debug mode',
9
8
  }
10
9
 
11
10
  buddy
12
11
  .command('preinstall', descriptions.command)
13
12
  .option('--verbose', descriptions.verbose, { default: false })
14
- .option('--debug', descriptions.debug, { default: false })
15
13
  .action(async (options: PreinstallOptions) => {
16
14
  await invoke(options)
17
15
  })
@@ -6,13 +6,11 @@ async function prepublish(buddy: CLI) {
6
6
  const descriptions = {
7
7
  command: 'Run your prepublish script',
8
8
  verbose: 'Enable verbose output',
9
- debug: 'Enable debug mode',
10
9
  }
11
10
 
12
11
  buddy
13
12
  .command('prepublish', descriptions.command)
14
13
  .option('--verbose', descriptions.verbose, { default: false })
15
- .option('--debug', descriptions.debug, { default: false })
16
14
  .action(async (options: PrepublishOptions) => {
17
15
  await runAction(Action.Prepublish, options)
18
16
  })
@@ -1,7 +1,7 @@
1
+ import { Action } from '@stacksjs/types'
1
2
  import type { CLI, ReleaseOptions } from '@stacksjs/types'
2
- import { intro, log, outro } from '@stacksjs/cli'
3
+ import { intro, outro } from '@stacksjs/cli'
3
4
  import { runAction } from '@stacksjs/actions'
4
- import { Action } from '@stacksjs/types'
5
5
 
6
6
  const descriptions = {
7
7
  release: 'Release a new version of your libraries/packages',
@@ -14,7 +14,7 @@ async function release(buddy: CLI) {
14
14
  .option('--verbose', descriptions.verbose, { default: true }) // it's on by default because it requires manual input
15
15
  .action(async (options: ReleaseOptions) => {
16
16
  const startTime = await intro('buddy release')
17
- const result = await runAction(Action.Release, options)
17
+ const result = await runAction(Action.Release, { shell: true })
18
18
 
19
19
  console.log('result', result)
20
20
 
@@ -0,0 +1,31 @@
1
+ import type { CLI, FreshOptions } from '@stacksjs/types'
2
+ import { seeder } from '@stacksjs/actions/generate'
3
+
4
+ async function seed(buddy: CLI) {
5
+ const descriptions = {
6
+ seed: 'Seed your database',
7
+ verbose: 'Enable verbose output',
8
+ }
9
+
10
+ buddy
11
+ .command('seed', descriptions.seed)
12
+ .option('--verbose', descriptions.verbose, { default: false })
13
+ .action(async (options: FreshOptions) => {
14
+ // const perf = await intro('buddy seed')
15
+ // const result = await runAction(Action.Seed, { ...options, showSpinner: true, spinnerText: 'Seeding...' })
16
+
17
+ // if (result.isErr()) {
18
+ // outro('While running the seed command, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
19
+ // process.exit()
20
+ // }
21
+
22
+ // const APP_ENV = process.env.APP_ENV || 'local'
23
+
24
+ // outro(`Seeded your ${APP_ENV} database.`, { startTime: perf, useSeconds: true })
25
+ // process.exit(ExitCode.Success)
26
+
27
+ await seeder()
28
+ })
29
+ }
30
+
31
+ export { seed }
@@ -1,5 +1,5 @@
1
1
  import type { CLI } from '@stacksjs/types'
2
- import { intro, log, outro } from '@stacksjs/cli'
2
+ import { intro, outro } from '@stacksjs/cli'
3
3
  import { Action } from '@stacksjs/types'
4
4
  import { runAction } from '@stacksjs/actions'
5
5
 
@@ -15,11 +15,12 @@ async function setting(buddy: CLI) {
15
15
  .action(async () => {
16
16
  const startTime = await intro('buddy page:setting')
17
17
  const result = await runAction(Action.GenerateSettings)
18
+ console.log('result', result)
18
19
 
19
- if (result.isErr()) {
20
- log.error('Something went wrong when generating', result.error)
21
- process.exit()
22
- }
20
+ // if (result.isErr()) {
21
+ // log.error('Something went wrong when generating', result.error)
22
+ // process.exit()
23
+ // }
23
24
 
24
25
  outro('Pages generated successfully', { startTime })
25
26
  })
@@ -6,13 +6,11 @@ async function setup(buddy: CLI) {
6
6
  ensure: 'This command checks whether Node is installed. pnpm is checked via `only-allow` preinstall hook',
7
7
  setup: 'This command installs Node & pnpm',
8
8
  verbose: 'Enable verbose output',
9
- debug: 'Enable debug mode',
10
9
  }
11
10
 
12
11
  buddy
13
12
  .command('ensure', descriptions.ensure)
14
13
  .option('--verbose', descriptions.verbose, { default: false })
15
- .option('--debug', descriptions.debug, { default: false })
16
14
  .action(async (options: CliOptions) => {
17
15
  await runCommand('pnpm install', options)
18
16
  })
@@ -20,7 +18,6 @@ async function setup(buddy: CLI) {
20
18
  buddy
21
19
  .command('setup', descriptions.setup)
22
20
  .option('--verbose', descriptions.verbose, { default: false })
23
- .option('--debug', descriptions.debug, { default: false })
24
21
  .action(async (options: CliOptions) => {
25
22
  await runCommand('pnpm env use', options)
26
23
  })
@@ -10,11 +10,10 @@ async function test(buddy: CLI) {
10
10
  types: 'Typechecks your codebase',
11
11
  coverage: 'Generates a test coverage report',
12
12
  ui: 'Runs your test suite in the browser',
13
- verbose: 'Enable verbose output',
14
13
  unit: 'Runs your unit tests',
15
14
  feature: 'Runs your feature tests',
16
15
  showReport: 'Show the test report',
17
- debug: 'Enable debug mode',
16
+ verbose: 'Enable verbose output',
18
17
  }
19
18
 
20
19
  buddy
@@ -24,11 +23,12 @@ async function test(buddy: CLI) {
24
23
  .action(async (options: TestOptions) => {
25
24
  const perf = await intro('buddy test')
26
25
  const result = await runAction(Action.Test, { ...options, cwd: projectPath() })
26
+ console.log('result', result)
27
27
 
28
- if (result.isErr()) {
29
- outro('While running `buddy test`, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
30
- process.exit()
31
- }
28
+ // if (result.isErr()) {
29
+ // outro('While running `buddy test`, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
30
+ // process.exit()
31
+ // }
32
32
 
33
33
  outro('Finished running tests', { startTime: perf, useSeconds: true })
34
34
  })
@@ -36,15 +36,15 @@ async function test(buddy: CLI) {
36
36
  buddy
37
37
  .command('test:unit', descriptions.unit)
38
38
  .option('--verbose', descriptions.verbose, { default: false })
39
- .option('--debug', descriptions.debug, { default: false })
40
39
  .action(async (options: TestOptions) => {
41
40
  const perf = await intro('buddy test:unit')
42
41
  const result = await runAction(Action.TestUnit, { ...options, verbose: true, cwd: projectPath() })
42
+ console.log('result', result)
43
43
 
44
- if (result.isErr()) {
45
- outro('While running `buddy test:unit`, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
46
- process.exit()
47
- }
44
+ // if (result.isErr()) {
45
+ // outro('While running `buddy test:unit`, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
46
+ // process.exit()
47
+ // }
48
48
 
49
49
  outro('Finished running unit tests', { startTime: perf, useSeconds: true })
50
50
  })
@@ -53,20 +53,19 @@ async function test(buddy: CLI) {
53
53
  .command('test:feature', descriptions.feature)
54
54
  .option('--show-report', descriptions.showReport, { default: false })
55
55
  .option('--verbose', descriptions.verbose, { default: false })
56
- .option('--debug', descriptions.debug, { default: false })
57
56
  .action(async (options: TestOptions) => {
58
57
  const perf = await intro('buddy test:feature')
59
- let result
58
+ // let result
60
59
 
61
- if (options.showReport)
62
- result = await runAction(Action.ShowFeatureTestReport, { ...options, verbose: true, cwd: projectPath() })
63
- else
64
- result = await runAction(Action.TestFeature, { ...options, verbose: true, cwd: projectPath() })
60
+ // if (options.showReport)
61
+ // result = await runAction(Action.ShowFeatureTestReport, { ...options, verbose: true, cwd: projectPath() })
62
+ // else
63
+ // result = await runAction(Action.TestFeature, { ...options, verbose: true, cwd: projectPath() })
65
64
 
66
- if (result.isErr()) {
67
- outro('While running `buddy test:feature`, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
68
- process.exit()
69
- }
65
+ // if (result.isErr()) {
66
+ // outro('While running `buddy test:feature`, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
67
+ // process.exit()
68
+ // }
70
69
 
71
70
  outro('Finished running feature tests', { startTime: perf, useSeconds: true })
72
71
  })
@@ -74,15 +73,15 @@ async function test(buddy: CLI) {
74
73
  buddy
75
74
  .command('test:ui', descriptions.command)
76
75
  .option('--verbose', descriptions.verbose, { default: false })
77
- .option('--debug', descriptions.debug, { default: false })
78
76
  .action(async (options: TestOptions) => {
79
77
  const perf = await intro('buddy test:ui')
80
78
  const result = await runAction(Action.TestUi, { ...options, verbose: true, cwd: projectPath() })
79
+ console.log('result', result)
81
80
 
82
- if (result.isErr()) {
83
- outro('While running `buddy test:ui`, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
84
- process.exit()
85
- }
81
+ // if (result.isErr()) {
82
+ // outro('While running `buddy test:ui`, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
83
+ // process.exit()
84
+ // }
86
85
 
87
86
  outro('Finished running tests in the browser', { startTime: perf, useSeconds: true })
88
87
  })
@@ -91,15 +90,15 @@ async function test(buddy: CLI) {
91
90
  .command('test:types', descriptions.types)
92
91
  .alias('typecheck')
93
92
  .option('--verbose', descriptions.verbose, { default: false })
94
- .option('--debug', descriptions.debug, { default: false })
95
93
  .action(async (options: TestOptions) => {
96
94
  const perf = await intro('buddy test:types')
97
95
  const result = await runAction(Action.Typecheck, { ...options, verbose: true, cwd: projectPath() })
96
+ console.log('result', result)
98
97
 
99
- if (result.isErr()) {
100
- outro('While running `buddy test:types`, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
101
- process.exit()
102
- }
98
+ // if (result.isErr()) {
99
+ // outro('While running `buddy test:types`, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
100
+ // process.exit()
101
+ // }
103
102
 
104
103
  outro('Finished running typecheck', { startTime: perf, useSeconds: true })
105
104
  })
@@ -109,11 +108,12 @@ async function test(buddy: CLI) {
109
108
  .action(async (options: TestOptions) => {
110
109
  const perf = await intro('buddy test:coverage')
111
110
  const result = await runAction(Action.TestCoverage, { ...options, cwd: projectPath(), verbose: true })
111
+ console.log('result', result)
112
112
 
113
- if (result.isErr()) {
114
- outro('While running `buddy test:coverage`, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
115
- process.exit()
116
- }
113
+ // if (result.isErr()) {
114
+ // outro('While running `buddy test:coverage`, there was an issue', { startTime: perf, useSeconds: true, isError: true }, result.error)
115
+ // process.exit()
116
+ // }
117
117
 
118
118
  outro('Generated the test coverage report', { startTime: perf, useSeconds: true })
119
119
  process.exit()