stacks 0.52.10 → 0.56.3

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 (492) hide show
  1. package/.gitignore +4 -2
  2. package/README.md +71 -74
  3. package/api/nitro.config.ts +2 -2
  4. package/api/package.json +3 -2
  5. package/api/routes/index.ts +1 -1
  6. package/art/logo-dark.svg +11 -0
  7. package/art/logo.svg +11 -0
  8. package/auto-imports.d.ts +1186 -839
  9. package/components.d.ts +7 -9
  10. package/core/actions/build.config.ts +181 -9
  11. package/core/actions/package.json +6 -12
  12. package/core/actions/src/build/component-libs.ts +2 -12
  13. package/core/actions/src/clean.ts +1 -1
  14. package/core/actions/src/dev/index.ts +6 -14
  15. package/core/actions/src/generate/index.ts +2 -2
  16. package/core/actions/src/generate/settings.ts +3 -3
  17. package/core/actions/src/helpers/lib-entries.ts +47 -40
  18. package/core/actions/src/helpers/utils.ts +7 -9
  19. package/core/actions/src/lint/index.ts +14 -2
  20. package/core/actions/src/make.ts +8 -5
  21. package/core/actions/src/migrate.ts +2 -2
  22. package/core/actions/src/prepublish.ts +2 -2
  23. package/core/actions/src/release.ts +5 -3
  24. package/core/actions/src/seed.ts +1 -1
  25. package/core/actions/src/upgrade/framework.ts +29 -29
  26. package/core/actions/src/upgrade/index.ts +13 -15
  27. package/core/actions/src/upgrade/node.ts +4 -4
  28. package/core/actions/src/upgrade/package-manager.ts +4 -4
  29. package/core/actions/src/upgrade.ts +3 -3
  30. package/core/ai/build.config.ts +5 -7
  31. package/core/ai/package.json +5 -9
  32. package/core/alias/build.config.ts +5 -7
  33. package/core/alias/package.json +3 -6
  34. package/core/alias/src/index.ts +6 -7
  35. package/core/analytics/build.config.ts +5 -7
  36. package/core/analytics/package.json +6 -6
  37. package/core/arrays/build.config.ts +4 -7
  38. package/core/arrays/package.json +8 -4
  39. package/core/arrays/src/contains.ts +23 -0
  40. package/core/arrays/src/helpers.ts +206 -0
  41. package/core/arrays/src/index.ts +4 -226
  42. package/core/arrays/src/macro.ts +135 -0
  43. package/core/arrays/src/math.ts +19 -0
  44. package/core/auth/build.config.ts +4 -7
  45. package/core/auth/package.json +3 -3
  46. package/core/buddy/README.md +73 -76
  47. package/core/buddy/build.config.ts +1 -2
  48. package/core/buddy/package.json +4 -4
  49. package/core/buddy/src/cli.ts +12 -43
  50. package/core/buddy/src/commands/add.ts +2 -2
  51. package/core/buddy/src/commands/build.ts +23 -16
  52. package/core/buddy/src/commands/create.ts +2 -2
  53. package/core/buddy/src/commands/dev.ts +31 -30
  54. package/core/buddy/src/commands/example.ts +8 -14
  55. package/core/buddy/src/commands/fresh.ts +1 -1
  56. package/core/buddy/src/commands/generate.ts +16 -14
  57. package/core/buddy/src/commands/key.ts +1 -1
  58. package/core/buddy/src/commands/lint.ts +5 -5
  59. package/core/buddy/src/commands/make.ts +20 -15
  60. package/core/buddy/src/commands/onboarding.ts +9 -15
  61. package/core/buddy/src/commands/setting.ts +10 -12
  62. package/core/buddy/src/commands/upgrade.ts +18 -22
  63. package/core/buddy/src/commands/version.ts +7 -19
  64. package/core/buddy/src/index.ts +0 -21
  65. package/core/build/build.config.ts +22 -7
  66. package/core/build/package.json +11 -10
  67. package/core/build/src/desktop.ts +2 -2
  68. package/core/build/src/example-vue.ts +5 -4
  69. package/core/build/src/example-wc.ts +5 -4
  70. package/core/build/src/functions.ts +11 -13
  71. package/core/build/src/index.ts +7 -7
  72. package/core/build/src/stacks.ts +31 -53
  73. package/core/build/src/{pages.ts → views.ts} +13 -14
  74. package/core/build/src/vue-components.ts +73 -12
  75. package/core/build/src/web-components.ts +13 -12
  76. package/core/build/web-types.ts +3 -3
  77. package/core/cache/build.config.ts +7 -7
  78. package/core/cache/package.json +17 -17
  79. package/core/cache/src/drivers/redis.ts +2 -2
  80. package/core/cache/tests/DynamoDB.test.ts +19 -33
  81. package/core/chat/build.config.ts +5 -7
  82. package/core/chat/package.json +8 -8
  83. package/core/cli/build.config.ts +3 -2
  84. package/core/cli/package.json +3 -3
  85. package/core/cli/src/console.ts +75 -2
  86. package/core/cli/src/helpers.ts +1 -1
  87. package/core/cli/src/parse.ts +2 -2
  88. package/core/cli/src/run.ts +6 -7
  89. package/core/cloud/build.config.ts +4 -7
  90. package/core/cloud/package.json +17 -3
  91. package/core/cloud/src/aws/index.ts +9 -0
  92. package/core/cloud/src/aws/logger.ts +8 -0
  93. package/core/cloud/src/aws/metrics.ts +8 -0
  94. package/core/cloud/src/aws/stack.ts +12 -0
  95. package/core/cloud/src/aws/tracer.ts +3 -0
  96. package/core/cloud/src/index.ts +1 -1
  97. package/core/cloud/src/runtime/nodejs/bootstrap.ts +16 -0
  98. package/core/cloud/src/runtime/nodejs/build.sh +1 -0
  99. package/core/collections/build.config.ts +3 -7
  100. package/core/collections/package.json +3 -3
  101. package/core/config/build.config.ts +33 -33
  102. package/core/config/package.json +4 -4
  103. package/core/config/src/defaults.ts +0 -3
  104. package/core/config/src/stacks.ts +10 -11
  105. package/core/database/build.config.ts +1 -2
  106. package/core/database/package.json +3 -3
  107. package/core/database/src/factory/index.ts +2 -2
  108. package/core/database/src/migrations/index.ts +3 -3
  109. package/core/datetime/build.config.ts +1 -2
  110. package/core/datetime/package.json +3 -3
  111. package/core/datetime/src/index.ts +2 -1
  112. package/core/desktop/build.config.ts +2 -1
  113. package/core/desktop/package.json +6 -6
  114. package/core/development/build.config.ts +15 -8
  115. package/core/development/package.json +11 -5
  116. package/core/development/src/index.ts +2 -0
  117. package/core/{domains → dns}/README.md +2 -2
  118. package/core/dns/build.config.ts +22 -0
  119. package/core/{domains → dns}/package.json +13 -9
  120. package/core/dns/src/index.ts +18 -0
  121. package/core/docs/build.config.ts +1 -2
  122. package/core/docs/package.json +4 -4
  123. package/core/email/build.config.ts +1 -2
  124. package/core/email/package.json +15 -15
  125. package/core/email/src/actions/send.ts +2 -0
  126. package/core/email/src/drivers/emailjs.ts +1 -1
  127. package/core/email/src/drivers/mailgun.ts +1 -1
  128. package/core/email/src/drivers/mailjet.ts +2 -2
  129. package/core/email/src/drivers/mandrill.ts +1 -1
  130. package/core/email/src/drivers/netcore.ts +1 -1
  131. package/core/email/src/drivers/nodemailer.ts +1 -1
  132. package/core/email/src/drivers/postmark.ts +1 -1
  133. package/core/email/src/drivers/sendgrid.ts +1 -1
  134. package/core/email/src/tailwind.config.ts +3 -3
  135. package/core/error-handling/build.config.ts +7 -2
  136. package/core/error-handling/package.json +6 -4
  137. package/core/error-handling/src/index.ts +45 -0
  138. package/core/events/README.md +1 -1
  139. package/core/events/build.config.ts +1 -2
  140. package/core/events/package.json +3 -3
  141. package/core/events/src/index.ts +8 -1
  142. package/core/faker/build.config.ts +3 -1
  143. package/core/faker/package.json +4 -4
  144. package/core/git/build.config.ts +3 -1
  145. package/core/git/package.json +4 -4
  146. package/core/health/build.config.ts +3 -1
  147. package/core/health/package.json +3 -3
  148. package/core/lint/build.config.ts +3 -1
  149. package/core/lint/package.json +7 -7
  150. package/core/logging/build.config.ts +5 -3
  151. package/core/logging/package.json +6 -6
  152. package/core/modules/build.config.ts +10 -7
  153. package/core/modules/package.json +3 -3
  154. package/core/notifications/README.md +1 -1
  155. package/core/notifications/build.config.ts +2 -1
  156. package/core/notifications/package.json +25 -25
  157. package/core/notifications/src/tailwind.config.ts +1 -1
  158. package/core/notifications/tests/chat/Slack.test.ts +35 -35
  159. package/core/notifications/tests/email/Mailgun.test.ts +41 -41
  160. package/core/notifications/tests/email/Sendgrid.test.ts +41 -41
  161. package/core/notifications/tests/sms/Twilio.test.ts +38 -38
  162. package/core/objects/build.config.ts +15 -7
  163. package/core/objects/package.json +5 -4
  164. package/core/objects/src/index.ts +2 -1
  165. package/core/orm/build.config.ts +1 -2
  166. package/core/orm/package.json +3 -3
  167. package/core/pages/build.config.ts +4 -7
  168. package/core/pages/package.json +3 -3
  169. package/core/pages/src/index.ts +39 -39
  170. package/core/path/build.config.ts +1 -2
  171. package/core/path/package.json +4 -5
  172. package/core/path/src/index.ts +94 -65
  173. package/core/payments/build.config.ts +4 -7
  174. package/core/payments/package.json +5 -5
  175. package/core/push/build.config.ts +4 -7
  176. package/core/push/package.json +5 -5
  177. package/core/query-builder/build.config.ts +4 -7
  178. package/core/query-builder/package.json +7 -7
  179. package/core/queue/build.config.ts +4 -7
  180. package/core/queue/package.json +3 -3
  181. package/core/realtime/build.config.ts +4 -7
  182. package/core/realtime/package.json +3 -3
  183. package/core/realtime/src/index.ts +3 -1
  184. package/core/repl/README.md +53 -0
  185. package/core/repl/build.config.ts +12 -0
  186. package/core/repl/package.json +56 -0
  187. package/core/repl/src/index.ts +1 -0
  188. package/core/repl/tests/example.test.ts +7 -0
  189. package/core/router/build.config.ts +13 -7
  190. package/core/router/package.json +4 -4
  191. package/core/router/src/index.ts +2 -0
  192. package/core/scheduler/build.config.ts +4 -7
  193. package/core/scheduler/package.json +4 -4
  194. package/core/search-engine/build.config.ts +17 -7
  195. package/core/search-engine/package.json +4 -4
  196. package/core/search-engine/src/helpers.ts +1 -1
  197. package/core/search-engine/src/index.ts +2 -2
  198. package/core/security/build.config.ts +17 -7
  199. package/core/security/package.json +4 -3
  200. package/core/security/src/crypt.ts +11 -2
  201. package/core/server/build.config.ts +3 -7
  202. package/core/server/package.json +6 -5
  203. package/core/server/src/index.ts +2 -5
  204. package/core/server/src/nitro.config.ts +2 -2
  205. package/core/signals/README.md +2 -2
  206. package/core/signals/build.config.ts +4 -7
  207. package/core/signals/package.json +4 -4
  208. package/core/signals/src/index.ts +1 -1
  209. package/core/slug/build.config.ts +4 -7
  210. package/core/slug/package.json +3 -3
  211. package/core/slug/src/index.ts +2 -1
  212. package/core/sms/build.config.ts +3 -1
  213. package/core/sms/package.json +13 -13
  214. package/core/sms/src/drivers/gupshup.ts +1 -1
  215. package/core/sms/src/drivers/nexmo.ts +3 -2
  216. package/core/sms/src/drivers/plivo.ts +3 -2
  217. package/core/sms/src/drivers/sms77.ts +3 -2
  218. package/core/sms/src/drivers/sns.ts +1 -1
  219. package/core/sms/src/drivers/telnyx.ts +3 -2
  220. package/core/sms/src/drivers/termii.ts +3 -2
  221. package/core/sms/src/drivers/twilio.ts +3 -2
  222. package/core/storage/build.config.ts +3 -7
  223. package/core/storage/package.json +5 -5
  224. package/core/storage/src/index.ts +2 -24
  225. package/core/strings/build.config.ts +1 -2
  226. package/core/strings/package.json +9 -3
  227. package/core/strings/src/case.ts +12 -0
  228. package/core/strings/src/index.ts +2 -1
  229. package/core/strings/src/is.ts +170 -0
  230. package/core/strings/src/macro.ts +139 -0
  231. package/core/strings/src/utils.ts +10 -12
  232. package/core/testing/build.config.ts +3 -1
  233. package/core/testing/package.json +8 -8
  234. package/core/tinker/build.config.ts +12 -0
  235. package/core/tinker/package.json +15 -3
  236. package/core/tinker/src/index.ts +1 -0
  237. package/core/types/build.config.ts +17 -8
  238. package/core/types/package.json +25 -19
  239. package/core/types/src/app.ts +4 -4
  240. package/core/types/src/cli.ts +34 -34
  241. package/core/types/src/cron-jobs.ts +25 -4
  242. package/core/types/src/database.ts +12 -3
  243. package/core/types/src/errors.ts +19 -1
  244. package/core/types/src/events.ts +13 -5
  245. package/core/types/src/fs.ts +5 -0
  246. package/core/types/src/git.ts +1 -1
  247. package/core/types/src/index.ts +2 -1
  248. package/core/types/src/library.ts +0 -7
  249. package/core/types/src/model.ts +21 -8
  250. package/core/types/src/money.ts +3 -0
  251. package/core/types/src/notifications.ts +9 -7
  252. package/core/types/src/queue.ts +34 -0
  253. package/core/types/src/search-engine.ts +3 -3
  254. package/core/types/src/stacks.ts +1 -12
  255. package/core/ui/build.config.ts +5 -7
  256. package/core/ui/package.json +7 -7
  257. package/core/utils/build.config.ts +32 -7
  258. package/core/utils/package.json +16 -16
  259. package/core/utils/src/config.ts +88 -49
  260. package/core/utils/src/currency.ts +3 -0
  261. package/core/utils/src/delete.ts +1 -3
  262. package/core/utils/src/guards.ts +3 -3
  263. package/core/utils/src/helpers.ts +36 -12
  264. package/core/utils/src/vendors.ts +1 -0
  265. package/core/validation/build.config.ts +18 -8
  266. package/core/validation/package.json +8 -6
  267. package/core/validation/src/index.ts +2 -0
  268. package/core/validation/src/is.ts +27 -174
  269. package/core/validation/src/rules.ts +126 -0
  270. package/core/validation/src/types/env.ts +147 -0
  271. package/core/validation/src/types/index.ts +2 -0
  272. package/core/validation/src/types/money.ts +17 -0
  273. package/core/validation/src/validate.ts +14 -25
  274. package/core/vite-plugin/README.md +59 -0
  275. package/core/vite-plugin/build.config.ts +21 -0
  276. package/core/vite-plugin/package.json +51 -0
  277. package/core/vite-plugin/src/index.ts +23 -0
  278. package/core/vite-plugin/tests/example.test.ts +7 -0
  279. package/dictionary.txt +228 -0
  280. package/docs/package.json +3 -2
  281. package/env.d.ts +7 -0
  282. package/ide/jetbrains/.fleet/run.json +5 -0
  283. package/ide/jetbrains/.fleet/settings.json +4 -0
  284. package/ide/jetbrains/.idea/.gitignore +5 -0
  285. package/ide/jetbrains/.idea/inspectionProfiles/Project_Default.xml +6 -0
  286. package/ide/jetbrains/.idea/jsLibraryMappings.xml +6 -0
  287. package/ide/jetbrains/.idea/jsLinters/eslint.xml +7 -0
  288. package/ide/jetbrains/.idea/modules.xml +8 -0
  289. package/ide/jetbrains/.idea/stacks.iml +69 -0
  290. package/ide/jetbrains/.idea/vcs.xml +6 -0
  291. package/ide/jetbrains/.idea/webResources.xml +14 -0
  292. package/ide/jetbrains/.idea/workspace.xml +225 -0
  293. package/ide/jetbrains/IntelliJ IDEA Global Settings +0 -0
  294. package/ide/jetbrains/installed.txt +4 -0
  295. package/ide/jetbrains/options/github-copilot.xml +5 -0
  296. package/ide/jetbrains/options/nodejs.xml +7 -0
  297. package/ide/jetbrains/options/templates.xml +124 -0
  298. package/ide/jetbrains/templates/JavaScript.xml +6 -0
  299. package/ide/jetbrains/templates/Stacks.xml +8 -0
  300. package/ide/vscode/.vscode/README.md +23 -0
  301. package/ide/vscode/.vscode/extensions.json +5 -0
  302. package/ide/vscode/.vscode/settings.json +111 -0
  303. package/ide/vscode/.vscode/stacks.code-snippets +182 -0
  304. package/ide/vscode/README.md +42 -0
  305. package/ide/vscode/logo.png +0 -0
  306. package/ide/vscode/package.json +64 -0
  307. package/{components → libs/components}/vue/main.ts +1 -1
  308. package/{components → libs/components}/vue/package.json +1 -1
  309. package/{components → libs/components}/web/package.json +1 -1
  310. package/libs/examples/vue/App.vue +12 -0
  311. package/libs/examples/vue/favicon.png +0 -0
  312. package/libs/examples/vue/index.html +20 -0
  313. package/libs/examples/web/favicon.png +0 -0
  314. package/libs/examples/web/index.html +13 -0
  315. package/libs/functions/package.json +41 -0
  316. package/package.json +104 -98
  317. package/reset.d.ts +1 -0
  318. package/scripts/ensure.sh +33 -0
  319. package/scripts/publish.sh +18 -0
  320. package/scripts/setup.sh +540 -0
  321. package/stacks/dashboard/README.md +74 -0
  322. package/{core/domains → stacks/dashboard}/build.config.ts +1 -1
  323. package/stacks/dashboard/package.json +46 -0
  324. package/stacks/dashboard/src/index.ts +0 -0
  325. package/stacks/dashboard/tests/example.test.ts +7 -0
  326. package/stacks/tables/README.md +109 -0
  327. package/stacks/tables/build.config.ts +16 -0
  328. package/stacks/tables/examples/vue/App.vue +12 -0
  329. package/stacks/tables/examples/vue/favicon.png +0 -0
  330. package/stacks/tables/examples/vue/index.html +20 -0
  331. package/stacks/tables/examples/web/favicon.png +0 -0
  332. package/stacks/tables/examples/web/index.html +13 -0
  333. package/stacks/tables/index.html +13 -0
  334. package/stacks/tables/package.json +57 -0
  335. package/stacks/tables/src/App.vue +23 -0
  336. package/stacks/tables/src/components/Demo.vue +84 -0
  337. package/stacks/tables/src/components/README.md +110 -0
  338. package/stacks/tables/src/components/Table.vue +342 -0
  339. package/stacks/tables/src/components/TableBody.vue +32 -0
  340. package/stacks/tables/src/components/TableCellActionItems.vue +9 -0
  341. package/stacks/tables/src/components/TableFilters.vue +704 -0
  342. package/stacks/tables/src/components/TableHead.vue +60 -0
  343. package/stacks/tables/src/components/TablePagination.vue +131 -0
  344. package/stacks/tables/src/components/TableRow.vue +73 -0
  345. package/stacks/tables/src/components/TableSearch.vue +39 -0
  346. package/stacks/tables/src/components/Tooltip.vue +10 -0
  347. package/stacks/tables/src/config/tables.ts +1 -0
  348. package/stacks/tables/src/docs/index.md +0 -0
  349. package/stacks/tables/src/functions/README.md +8 -0
  350. package/stacks/tables/src/functions/dark.ts +3 -0
  351. package/stacks/tables/src/functions/index.ts +2 -0
  352. package/stacks/tables/src/functions/table.ts +207 -0
  353. package/stacks/tables/src/main.ts +4 -0
  354. package/stacks/tables/tests/example.test.ts +7 -0
  355. package/stacks/tables/vite.config.ts +26 -0
  356. package/stacks/tinker/package.json +48 -0
  357. package/stacks/tinker/src/index.ts +1 -0
  358. package/stacks/x-ray/README.md +55 -0
  359. package/stacks/x-ray/build.config.ts +15 -0
  360. package/stacks/x-ray/index.html +13 -0
  361. package/stacks/x-ray/package.json +55 -0
  362. package/stacks/x-ray/routes/index.ts +19 -0
  363. package/stacks/x-ray/src/client.ts +14 -0
  364. package/stacks/x-ray/src/desktop/api/nitro.config.ts +19 -0
  365. package/stacks/x-ray/src/desktop/api/routes/api/logs.ts +7 -0
  366. package/stacks/x-ray/src/desktop/api/routes/api/store-logs.ts +22 -0
  367. package/stacks/x-ray/src/desktop/api/src/types.ts +7 -0
  368. package/stacks/x-ray/src/desktop/api/storage/index.ts +7 -0
  369. package/stacks/x-ray/src/desktop/app.vue +377 -0
  370. package/stacks/x-ray/src/desktop/functions/http.ts +26 -0
  371. package/stacks/x-ray/src/desktop/functions/types.ts +7 -0
  372. package/stacks/x-ray/src/desktop/main.ts +14 -0
  373. package/stacks/x-ray/src/desktop/modules/counter/mod.vue +44 -0
  374. package/stacks/x-ray/src/desktop/modules/fetcher/mod.vue +63 -0
  375. package/stacks/x-ray/src/desktop/plugins/unified/unified-app.ts +5 -0
  376. package/stacks/x-ray/src/desktop/plugins/unified/unified-styles.scss +0 -0
  377. package/stacks/x-ray/src/desktop/services/http.ts +45 -0
  378. package/stacks/x-ray/src/desktop/styles/app.scss +0 -0
  379. package/stacks/x-ray/src/http.ts +26 -0
  380. package/stacks/x-ray/src/index.ts +42 -0
  381. package/stacks/x-ray/src/ray.config.ts +27 -0
  382. package/stacks/x-ray/src/types.ts +8 -0
  383. package/stacks/x-ray/tests/example.test.ts +7 -0
  384. package/stacks.d.ts +22 -0
  385. package/tsconfig.json +21 -12
  386. package/vcs/github/CODE_OF_CONDUCT.md +83 -0
  387. package/vcs/github/CONTRIBUTING.md +190 -0
  388. package/vcs/github/EXPLANATIONS.md +41 -0
  389. package/vcs/github/FUNDING.yml +1 -0
  390. package/vcs/github/ISSUE_TEMPLATE/bug_report.yml +62 -0
  391. package/vcs/github/ISSUE_TEMPLATE/config.yml +10 -0
  392. package/vcs/github/ISSUE_TEMPLATE/feature_request.yml +44 -0
  393. package/vcs/github/SECURITY.md +70 -0
  394. package/vcs/github/renovate.json +5 -0
  395. package/vcs/github/stale.yml +14 -0
  396. package/vcs/github/workflows/README.md +16 -0
  397. package/vcs/github/workflows/ci.yml +173 -0
  398. package/vcs/github/workflows/export-size.yml +32 -0
  399. package/vcs/github/workflows/release.yml +57 -0
  400. package/{pages → views}/desktop/src/Cargo.lock +363 -46
  401. package/{pages → views}/desktop/src/Cargo.toml +2 -2
  402. package/views/web/main.ts +26 -0
  403. package/api/serverless.yml +0 -11
  404. package/core/actions/node_modules/.bin/markdown-it +0 -17
  405. package/core/actions/node_modules/.bin/unbuild +0 -17
  406. package/core/actions/src/generate/package-jsons.ts +0 -11
  407. package/core/build/entries/README.md +0 -7
  408. package/core/build/node_modules/.bin/unbuild +0 -17
  409. package/core/build/node_modules/.bin/vite +0 -17
  410. package/core/build/node_modules/.bin/vite-ssg +0 -17
  411. package/core/build/node_modules/.bin/vue-docgen-web-types +0 -17
  412. package/core/desktop/node_modules/.bin/tauri +0 -17
  413. package/core/development/node_modules/.bin/tsc +0 -17
  414. package/core/development/node_modules/.bin/tsserver +0 -17
  415. package/core/development/node_modules/.bin/tsx +0 -17
  416. package/core/development/node_modules/.bin/unbuild +0 -17
  417. package/core/docs/node_modules/.bin/vitepress +0 -17
  418. package/core/email/node_modules/.bin/maizzle +0 -17
  419. package/core/git/node_modules/.bin/bumpp +0 -17
  420. package/core/git/node_modules/.bin/changelogen +0 -17
  421. package/core/git/node_modules/.bin/commitizen +0 -17
  422. package/core/git/node_modules/.bin/cz +0 -17
  423. package/core/git/node_modules/.bin/giget +0 -17
  424. package/core/git/node_modules/.bin/git-cz +0 -17
  425. package/core/git/node_modules/.bin/simple-git-hooks +0 -17
  426. package/core/lint/node_modules/.bin/eslint +0 -17
  427. package/core/lint/node_modules/.bin/lint-staged +0 -17
  428. package/core/lint/node_modules/.bin/publint +0 -17
  429. package/core/logging/node_modules/.bin/tsc +0 -17
  430. package/core/logging/node_modules/.bin/tsserver +0 -17
  431. package/core/logging/node_modules/.bin/tsx +0 -17
  432. package/core/logging/node_modules/.bin/unbuild +0 -17
  433. package/core/notifications/node_modules/.bin/maizzle +0 -17
  434. package/core/server/node_modules/.bin/nitro +0 -17
  435. package/core/server/node_modules/.bin/nitropack +0 -17
  436. package/core/server/node_modules/.bin/vite +0 -17
  437. package/core/testing/node_modules/.bin/playwright +0 -17
  438. package/core/testing/node_modules/.bin/tsc +0 -17
  439. package/core/testing/node_modules/.bin/tsserver +0 -17
  440. package/core/testing/node_modules/.bin/unbuild +0 -17
  441. package/core/testing/node_modules/.bin/vitest +0 -17
  442. package/core/tinker/node_modules/.bin/tsx +0 -17
  443. package/core/types/node_modules/.bin/markdown-it +0 -17
  444. package/core/types/node_modules/.bin/vite +0 -17
  445. package/core/types/node_modules/.bin/vite-ssg +0 -17
  446. package/core/types/node_modules/.bin/vitepress +0 -17
  447. package/core/types/src/markdown.ts +0 -198
  448. package/core/ui/node_modules/.bin/vue-tsc +0 -17
  449. package/core/utils/node_modules/.bin/rimraf +0 -17
  450. package/core/utils/node_modules/.bin/semver +0 -17
  451. package/docs/node_modules/.bin/rimraf +0 -17
  452. package/docs/node_modules/.bin/vitepress +0 -17
  453. package/pages/web/main.ts +0 -26
  454. /package/core/{domains → dns}/tests/example.test.ts +0 -0
  455. /package/{LICENSE.md → ide/vscode/LICENSE.md} +0 -0
  456. /package/{components → libs/components}/vue/index.html +0 -0
  457. /package/{core/domains/src → stacks/tables/src/cli}/index.ts +0 -0
  458. /package/{pages → views}/desktop/.gitignore +0 -0
  459. /package/{pages → views}/desktop/README.md +0 -0
  460. /package/{pages → views}/desktop/index.html +0 -0
  461. /package/{pages → views}/desktop/package.json +0 -0
  462. /package/{pages → views}/desktop/public/favicon.svg +0 -0
  463. /package/{pages → views}/desktop/src/.gitignore +0 -0
  464. /package/{pages → views}/desktop/src/build.rs +0 -0
  465. /package/{pages → views}/desktop/src/icons/128x128.png +0 -0
  466. /package/{pages → views}/desktop/src/icons/128x128@2x.png +0 -0
  467. /package/{pages → views}/desktop/src/icons/32x32.png +0 -0
  468. /package/{pages → views}/desktop/src/icons/Square107x107Logo.png +0 -0
  469. /package/{pages → views}/desktop/src/icons/Square142x142Logo.png +0 -0
  470. /package/{pages → views}/desktop/src/icons/Square150x150Logo.png +0 -0
  471. /package/{pages → views}/desktop/src/icons/Square284x284Logo.png +0 -0
  472. /package/{pages → views}/desktop/src/icons/Square30x30Logo.png +0 -0
  473. /package/{pages → views}/desktop/src/icons/Square310x310Logo.png +0 -0
  474. /package/{pages → views}/desktop/src/icons/Square44x44Logo.png +0 -0
  475. /package/{pages → views}/desktop/src/icons/Square71x71Logo.png +0 -0
  476. /package/{pages → views}/desktop/src/icons/Square89x89Logo.png +0 -0
  477. /package/{pages → views}/desktop/src/icons/StoreLogo.png +0 -0
  478. /package/{pages → views}/desktop/src/icons/icon.icns +0 -0
  479. /package/{pages → views}/desktop/src/icons/icon.ico +0 -0
  480. /package/{pages → views}/desktop/src/icons/icon.png +0 -0
  481. /package/{pages → views}/desktop/src/src/main.rs +0 -0
  482. /package/{pages → views}/desktop/src/tauri.conf.json +0 -0
  483. /package/{pages → views}/web/App.vue +0 -0
  484. /package/{pages → views}/web/index.html +0 -0
  485. /package/{pages → views}/web/public/_headers +0 -0
  486. /package/{pages → views}/web/public/favicon-dark.svg +0 -0
  487. /package/{pages → views}/web/public/favicon.svg +0 -0
  488. /package/{pages → views}/web/public/pwa-192x192.png +0 -0
  489. /package/{pages → views}/web/public/pwa-512x512.png +0 -0
  490. /package/{pages → views}/web/public/safari-pinned-tab.svg +0 -0
  491. /package/{pages → views}/web/styles/main.css +0 -0
  492. /package/{pages → views}/web/styles/markdown.css +0 -0
package/components.d.ts CHANGED
@@ -3,19 +3,17 @@
3
3
  // @ts-nocheck
4
4
  // Generated by unplugin-vue-components
5
5
  // Read more: https://github.com/vuejs/core/pull/3399
6
- import '@vue/runtime-core'
7
-
8
6
  export {}
9
7
 
10
- declare module '@vue/runtime-core' {
8
+ declare module 'vue' {
11
9
  export interface GlobalComponents {
12
- Counter: typeof import('./../components/Buttons/Counter.vue')['default']
13
- Demo: typeof import('./../components/Demo.vue')['default']
14
- HelloWorld: typeof import('./../components/HelloWorld.vue')['default']
15
- Logo: typeof import('./../components/Logo.vue')['default']
16
- README: typeof import('./../components/README.md')['default']
10
+ Counter: typeof import('./../resources/components/Buttons/Counter.vue')['default']
11
+ Demo: typeof import('./../resources/components/Demo.vue')['default']
12
+ HelloWorld: typeof import('./../resources/components/HelloWorld.vue')['default']
13
+ Logo: typeof import('./../resources/components/Logo.vue')['default']
14
+ README: typeof import('./../resources/components/README.md')['default']
17
15
  RouterLink: typeof import('vue-router')['RouterLink']
18
16
  RouterView: typeof import('vue-router')['RouterView']
19
- ToggleDark: typeof import('./../components/Buttons/ToggleDark.vue')['default']
17
+ ToggleDark: typeof import('./../resources/components/Buttons/ToggleDark.vue')['default']
20
18
  }
21
19
  }
@@ -1,14 +1,186 @@
1
- import { defineBuildConfig } from 'unbuild'
1
+ import type { BuildConfig } from '@stacksjs/development'
2
+ import { alias, defineBuildConfig } from '@stacksjs/development'
2
3
 
3
- export default defineBuildConfig({
4
- entries: [
5
- {
4
+ const entries: BuildConfig['entries'] = process.env.npm_lifecycle_script?.includes('--stub')
5
+ ? [
6
+ {
7
+ input: './src/build/component-libs',
8
+ name: 'build/component-libs',
9
+ outDir: './dist/build/',
10
+ }, {
11
+ input: './src/build/core',
12
+ name: 'build/core',
13
+ outDir: './dist/build/',
14
+ }, {
15
+ input: './src/build/stacks',
16
+ name: 'build/stacks',
17
+ outDir: './dist/build/',
18
+ }, {
19
+ input: './src/deploy/domains',
20
+ name: 'deploy/domains',
21
+ outDir: './dist/deploy/',
22
+ }, {
23
+ input: './src/dev/index',
24
+ name: 'dev/index',
25
+ outDir: './dist/dev/',
26
+ }, {
27
+ input: './src/dev/components',
28
+ name: 'dev/components',
29
+ outDir: './dist/dev/',
30
+ }, {
31
+ input: './src/dev/docs',
32
+ name: 'dev/docs',
33
+ outDir: './dist/dev/',
34
+ }, {
35
+ input: './src/generate/index',
36
+ name: 'generate/index',
37
+ outDir: './dist/generate/',
38
+ }, {
39
+ input: './src/generate/component-meta',
40
+ name: 'generate/component-meta',
41
+ outDir: './dist/generate/',
42
+ }, {
43
+ input: './src/generate/ide-helpers',
44
+ name: 'generate/ide-helpers',
45
+ outDir: './dist/generate/',
46
+ }, {
47
+ input: './src/generate/lib-entries',
48
+ name: 'generate/lib-entries',
49
+ outDir: './dist/generate/',
50
+ }, {
51
+ input: './src/generate/settings',
52
+ name: 'generate/settings',
53
+ outDir: './dist/generate/',
54
+ }, {
55
+ input: './src/generate/vscode-custom-data',
56
+ name: 'generate/vscode-custom-data',
57
+ outDir: './dist/generate/',
58
+ }, {
59
+ input: './src/generate/vue-compat',
60
+ name: 'generate/vue-compat',
61
+ outDir: './dist/generate/',
62
+ }, {
63
+ input: './src/helpers/index',
64
+ name: 'helpers/index',
65
+ outDir: './dist/helpers/',
66
+ }, {
67
+ input: './src/helpers/index',
68
+ name: 'helpers/index',
69
+ outDir: './dist/helpers/',
70
+ }, {
71
+ input: './src/helpers/component-meta',
72
+ name: 'helpers/component-meta',
73
+ outDir: './dist/helpers/',
74
+ }, {
75
+ input: './src/helpers/lib-entries',
76
+ name: 'helpers/lib-entries',
77
+ outDir: './dist/helpers/',
78
+ }, {
79
+ input: './src/helpers/package-json',
80
+ name: 'helpers/package-json',
81
+ outDir: './dist/helpers/',
82
+ }, {
83
+ input: './src/helpers/utils',
84
+ name: 'helpers/utils',
85
+ outDir: './dist/helpers/',
86
+ }, {
87
+ input: './src/helpers/vscode-custom-data',
88
+ name: 'helpers/vscode-custom-data',
89
+ outDir: './dist/helpers/',
90
+ }, {
91
+ input: './src/helpers/vue-compat',
92
+ name: 'helpers/vue-compat',
93
+ outDir: './dist/helpers/',
94
+ }, {
95
+ input: './src/lint/index',
96
+ name: 'lint/index',
97
+ outDir: './dist/lint/',
98
+ }, {
99
+ input: './src/lint/fix',
100
+ name: 'lint/fix',
101
+ outDir: './dist/lint/',
102
+ }, {
103
+ input: './src/test/coverage',
104
+ name: 'test/coverage',
105
+ outDir: './dist/test/',
106
+ }, {
107
+ input: './src/test/feature',
108
+ name: 'test/feature',
109
+ outDir: './dist/test/',
110
+ }, {
111
+ input: './src/test/ui',
112
+ name: 'test/ui',
113
+ outDir: './dist/test/',
114
+ }, {
115
+ input: './src/test/unit',
116
+ name: 'test/unit',
117
+ outDir: './dist/test/',
118
+ },
119
+ {
120
+ input: './src/upgrade/dependencies',
121
+ name: 'upgrade/dependencies',
122
+ outDir: './dist/upgrade/',
123
+ },
124
+ {
125
+ input: './src/upgrade/framework',
126
+ name: 'upgrade/framework',
127
+ outDir: './dist/upgrade/',
128
+ },
129
+ {
130
+ input: './src/upgrade/index',
131
+ name: 'upgrade/index',
132
+ outDir: './dist/upgrade/',
133
+ },
134
+ './src/index',
135
+ './src/add',
136
+ './src/build.ts', // we need to be specific here because we have a build folder
137
+ './src/bump',
138
+ './src/changelog',
139
+ './src/clean',
140
+ './src/commit',
141
+ './src/copy-types',
142
+ './src/deploy.ts',
143
+ './src/examples',
144
+ './src/fresh',
145
+ './src/key-generate',
146
+ './src/make',
147
+ './src/migrate',
148
+ './src/preinstall',
149
+ './src/prepublish',
150
+ './src/release',
151
+ './src/seed',
152
+ './src/test.ts', // we need to be specific here because we have a build folder
153
+ './src/tinker',
154
+ './src/typecheck',
155
+ './src/types',
156
+ './src/upgrade.ts', // we need to be specific here because we have a build folder
157
+ ]
158
+ : [{
6
159
  builder: 'mkdist',
7
- input: './src/',
8
- outDir: './dist/',
9
- format: 'esm',
10
- },
11
- ],
160
+ input: './src',
161
+ outDir: './dist',
162
+ }]
163
+
164
+ export default defineBuildConfig({
165
+ alias,
166
+
167
+ entries,
168
+
169
+ // externals: [
170
+ // '@stacksjs/cli',
171
+ // '@stacksjs/database',
172
+ // '@stacksjs/logging',
173
+ // '@stacksjs/path',
174
+ // '@stacksjs/utils',
175
+ // '@stacksjs/storage',
176
+ // '@stacksjs/types',
177
+ // ],
178
+
179
+ // rollup: {
180
+ // esbuild: {
181
+ // target: 'esnext',
182
+ // },
183
+ // },
12
184
 
13
185
  clean: true,
14
186
  declaration: true,
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/actions",
3
3
  "type": "module",
4
- "version": "0.52.10",
5
- "packageManager": "pnpm@8.5.1",
4
+ "version": "0.56.3",
5
+ "packageManager": "pnpm@8.6.5",
6
6
  "description": "The Stacks actions.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -77,10 +77,6 @@
77
77
  "types": "./dist/generate/lib-entries.d.ts",
78
78
  "import": "./dist/generate/lib-entries.mjs"
79
79
  },
80
- "./generate/package-jsons": {
81
- "types": "./dist/generate/package-jsons.d.ts",
82
- "import": "./dist/generate/package-jsons.mjs"
83
- },
84
80
  "./generate/settings": {
85
81
  "types": "./dist/generate/settings.d.ts",
86
82
  "import": "./dist/generate/settings.mjs"
@@ -240,7 +236,7 @@
240
236
  "scripts": {
241
237
  "build": "unbuild",
242
238
  "dev": "unbuild --stub",
243
- "prepublishOnly": "pnpm run build",
239
+ "prepublishOnly": "unbuild",
244
240
  "typecheck": "tsc --noEmit"
245
241
  },
246
242
  "peerDependencies": {
@@ -256,7 +252,7 @@
256
252
  "@stacksjs/types": "workspace:*",
257
253
  "@stacksjs/utils": "workspace:*",
258
254
  "markdown-it": "^13.0.1",
259
- "vue-component-meta": "^1.6.5"
255
+ "vue-component-meta": "^1.8.2"
260
256
  },
261
257
  "dependencies": {
262
258
  "@stacksjs/cli": "workspace:*",
@@ -273,11 +269,9 @@
273
269
  "fast-glob": "^3.2.12",
274
270
  "fs-extra": "^11.1.1",
275
271
  "markdown-it": "^13.0.1",
276
- "vue-component-meta": "^1.6.5"
272
+ "vue-component-meta": "^1.8.2"
277
273
  },
278
274
  "devDependencies": {
279
- "@stacksjs/development": "workspace:*",
280
- "@stacksjs/types": "workspace:*",
281
- "unbuild": "^1.2.1"
275
+ "@stacksjs/development": "workspace:*"
282
276
  }
283
277
  }
@@ -1,15 +1,5 @@
1
- import { log } from '@stacksjs/logging'
2
1
  import { frameworkPath } from '@stacksjs/path'
3
2
  import { runCommand } from '@stacksjs/cli'
3
+ import { NpmScript } from '@stacksjs/types'
4
4
 
5
- log.info('Building Component Libraries...')
6
-
7
- // run the `npx mkdist -d` command to build the dist folder
8
- const result = await runCommand('npx mkdist -d', { verbose: true, cwd: frameworkPath() })
9
-
10
- if (result.isErr()) {
11
- log.error('There was an error running `npx mkdist -d`.', result.error)
12
- process.exit()
13
- }
14
-
15
- log.success('Building Stacks was successful.')
5
+ await runCommand(NpmScript.BuildComponents, { cwd: frameworkPath(), verbose: true })
@@ -2,7 +2,7 @@ import { log } from '@stacksjs/cli'
2
2
  import { projectPath } from '@stacksjs/path'
3
3
  import { del } from '@stacksjs/utils'
4
4
 
5
- log.info('Running clean command...', projectPath())
5
+ log.info('Running clean command...')
6
6
 
7
7
  await del([
8
8
  projectPath('pnpm-lock.yaml'),
@@ -1,33 +1,25 @@
1
1
  import { log } from '@stacksjs/logging'
2
- import { runNpmScript } from '@stacksjs/utils'
2
+ import { frameworkPath } from '@stacksjs/path'
3
+ import { runCommand } from '@stacksjs/cli'
3
4
  import type { DevOptions } from '@stacksjs/types'
4
5
  import { NpmScript } from '@stacksjs/types'
5
6
 
6
- /**
7
- * An alias of the invoke method.
8
- * @param options
9
- * @returns
10
- */
11
- export async function dev(options: DevOptions) {
12
- return invoke(options)
13
- }
14
-
15
7
  export async function components(options: DevOptions) {
16
8
  log.info('Starting your components dev server...')
17
- await runNpmScript(NpmScript.DevComponents, options)
9
+ await runCommand(NpmScript.DevComponents, { ...options, cwd: frameworkPath() })
18
10
  }
19
11
 
20
12
  export async function desktop(options: DevOptions) {
21
13
  log.info('Starting your Desktop engine...')
22
- await runNpmScript(NpmScript.DevDesktop, options)
14
+ await runCommand(NpmScript.DevDesktop, options)
23
15
  }
24
16
 
25
17
  export async function pages(options: DevOptions) {
26
18
  log.info('Starting your page engine...')
27
- await runNpmScript(NpmScript.DevPages, options)
19
+ await runCommand(NpmScript.DevPages, options)
28
20
  }
29
21
 
30
22
  export async function functions(options: DevOptions) {
31
23
  log.info('Starting your function\'s dev server...')
32
- await runNpmScript(NpmScript.DevFunctions, options)
24
+ await runCommand(NpmScript.DevFunctions, options)
33
25
  }
@@ -40,10 +40,10 @@ export async function generate(options: GeneratorOptions) {
40
40
  }
41
41
 
42
42
  export async function libEntries(options: GeneratorOptions) {
43
- const result = await runAction(Action.GeneratePackageJsons, { ...options, verbose: true, cwd: projectPath() })
43
+ const result = await runAction(Action.GenerateLibraryEntries, { ...options, verbose: true, cwd: projectPath() })
44
44
 
45
45
  if (result.isErr()) {
46
- log.error('There was an error generating your library entry points.', result.error)
46
+ log.error('There was an error generating your library entry points', result.error)
47
47
  process.exit()
48
48
  }
49
49
 
@@ -1,4 +1,4 @@
1
1
  #!/usr/bin/env node
2
- import { generateSettings } from '@stacksjs/pages'
3
-
4
- await generateSettings()
2
+ // import { generateSettings } from '@stacksjs/views'
3
+ //
4
+ // await generateSettings()
@@ -1,82 +1,89 @@
1
1
  import { log } from '@stacksjs/logging'
2
-
3
- // import { kebabCase } from '@stacksjs/strings'
4
- import { libraryEntryPath } from '@stacksjs/path'
2
+ import { kebabCase } from '@stacksjs/strings'
3
+ import type { LibraryType } from '@stacksjs/path'
4
+ import { componentsPath, functionsPath, libraryEntryPath } from '@stacksjs/path'
5
5
  import { writeTextFile } from '@stacksjs/storage'
6
6
  import { determineResetPreset } from '@stacksjs/utils'
7
- import type { LibEntryType } from '@stacksjs/types'
8
7
  import { library } from '@stacksjs/config'
8
+ import { ExitCode } from '@stacksjs/types'
9
9
 
10
10
  /**
11
11
  * Based on the config values, this method
12
12
  * will generate the library entry points.
13
13
  *
14
- * @param type string
14
+ * @param type LibraryType
15
15
  */
16
- export async function generateLibEntry(type: LibEntryType) {
17
- try {
18
- if (type === 'vue-components')
19
- await createVueLibraryEntryPoint()
16
+ export async function generateLibEntry(type: LibraryType) {
17
+ await createLibraryEntryPoint(type)
18
+ }
20
19
 
21
- if (type === 'web-components')
22
- await createWebComponentLibraryEntryPoint()
20
+ export async function createLibraryEntryPoint(type: LibraryType) {
21
+ if (type === 'vue-components')
22
+ await createVueLibraryEntryPoint()
23
23
 
24
- if (type === 'functions')
25
- await createFunctionLibraryEntryPoint()
26
- }
27
- catch (err) {
28
- log.error('There was an error generating the library entry point.', err)
29
- process.exit()
30
- }
24
+ if (type === 'web-components')
25
+ await createWebComponentLibraryEntryPoint()
26
+
27
+ if (type === 'functions')
28
+ await createFunctionLibraryEntryPoint()
31
29
  }
32
30
 
33
- export async function createVueLibraryEntryPoint() {
31
+ export async function createVueLibraryEntryPoint(type: LibraryType = 'vue-components') {
34
32
  log.info('Creating the Vue component library entry point...')
35
33
 
36
34
  await writeTextFile({
37
- path: libraryEntryPath('vue-components'),
38
- data: generateEntryPointData('vue-components'),
35
+ path: libraryEntryPath(type),
36
+ data: generateEntryPointData(type),
37
+ }).catch((err) => {
38
+ log.error(new Error('There was an error generating the Vue component library entry point.', err))
39
+ process.exit(ExitCode.FatalError)
39
40
  })
40
41
 
41
- log.success('Created the Vue component library entry point.')
42
+ log.success('Created the Vue component library entry point')
42
43
  }
43
44
 
44
- export async function createWebComponentLibraryEntryPoint() {
45
+ export async function createWebComponentLibraryEntryPoint(type: LibraryType = 'web-components') {
45
46
  log.info('Creating the Web Component library entry point...')
46
47
 
47
48
  await writeTextFile({
48
- path: libraryEntryPath('web-components'),
49
- data: generateEntryPointData('web-components'),
49
+ path: libraryEntryPath(type),
50
+ data: generateEntryPointData(type),
51
+ }).catch((err) => {
52
+ log.error(new Error('There was an error generating the Web Component library entry point', err))
53
+ process.exit(ExitCode.FatalError)
50
54
  })
51
55
 
52
- log.success('Created Web Component library entry point.')
56
+ log.success('Created Web Component library entry point')
53
57
  }
54
58
 
55
- export async function createFunctionLibraryEntryPoint() {
59
+ export async function createFunctionLibraryEntryPoint(type: LibraryType = 'functions') {
56
60
  log.info('Creating the Function library entry point...')
57
61
 
58
62
  await writeTextFile({
59
- path: libraryEntryPath('functions'),
60
- data: generateEntryPointData('functions'),
63
+ path: libraryEntryPath(type),
64
+ data: generateEntryPointData(type),
65
+ }).catch((err) => {
66
+ log.error(new Error('There was an error generating Function library entry point', err))
67
+ process.exit(ExitCode.FatalError)
61
68
  })
62
69
 
63
- log.success('Created Functions library entry point.')
70
+ log.success('Created Functions library entry point')
64
71
  }
65
72
 
66
- export function generateEntryPointData(type: 'vue-components' | 'web-components' | 'functions'): string {
73
+ export function generateEntryPointData(type: LibraryType): string {
67
74
  let arr = []
68
75
 
69
76
  if (type === 'functions') {
70
77
  if (!library.functions?.functions) {
71
- log.error('There are no functions defined to be built. Please check your config/library.ts file for potential adjustments.')
78
+ log.error(new Error('There are no functions defined to be built. Please check your config/library.ts file for potential adjustments'))
72
79
  process.exit()
73
80
  }
74
81
 
75
82
  for (const fx of library.functions?.functions) {
76
83
  if (Array.isArray(fx))
77
- arr.push(`export * as ${fx[1]} from '../../../functions/${fx[0]}'`)
84
+ arr.push(`export * as ${fx[1]} from '${functionsPath(fx[0])}'`)
78
85
  else
79
- arr.push(`export * from '../../../functions/${fx}'`)
86
+ arr.push(`export * from '${functionsPath(fx)}'`)
80
87
  }
81
88
 
82
89
  // join the array into a string with each element being on a new line
@@ -85,7 +92,7 @@ export function generateEntryPointData(type: 'vue-components' | 'web-components'
85
92
 
86
93
  if (type === 'vue-components') {
87
94
  if (!library.vueComponents?.tags) {
88
- log.error('There are no components defined to be built. Please check your config/library.ts file for potential adjustments.')
95
+ log.error(new Error('There are no components defined to be built. Please check your config/library.ts file for potential adjustments'))
89
96
  process.exit()
90
97
  }
91
98
 
@@ -93,9 +100,9 @@ export function generateEntryPointData(type: 'vue-components' | 'web-components'
93
100
 
94
101
  for (const component of library.vueComponents?.tags.map(tag => tag.name)) {
95
102
  if (Array.isArray(component))
96
- arr.push(`export { default as ${component[1]} } from '../../../components/${component[0]}.vue'`)
103
+ arr.push(`export { default as ${component[1]} } from '${componentsPath(component[0])}.vue'`)
97
104
  else
98
- arr.push(`export { default as ${component} } from '../../../components/${component}.vue'`)
105
+ arr.push(`export { default as ${component} } from '${componentsPath(component)}.vue'`)
99
106
  }
100
107
 
101
108
  // join the array into a string with each element being on a new line
@@ -109,18 +116,18 @@ export function generateEntryPointData(type: 'vue-components' | 'web-components'
109
116
  const definitions = []
110
117
 
111
118
  if (!library.webComponents?.tags) {
112
- log.error('There are no components defined to be built. Please check your config/library.ts file for potential adjustments.')
119
+ log.error(new Error('There are no components defined to be built. Please check your config/library.ts file for potential adjustments'))
113
120
  process.exit()
114
121
  }
115
122
 
116
123
  for (const component of library.webComponents?.tags.map(tag => tag.name)) {
117
124
  if (Array.isArray(component)) {
118
- imports.push(`import ${component[1]} from '../../../components/${component[0]}.vue'`)
125
+ imports.push(`import ${component[1]} from '${componentsPath(component[0])}.vue'`)
119
126
  declarations.push(`const ${component[1]}CustomElement = defineCustomElement(${component[1]})`)
120
127
  definitions.push(`customElements.define('${kebabCase(component[1])}', ${component[1]}CustomElement)`)
121
128
  }
122
129
  else {
123
- imports.push(`import ${component} from '../../../components/${component}.vue'`)
130
+ imports.push(`import ${component} from '${componentsPath(component)}.vue'`)
124
131
  declarations.push(`const ${component}CustomElement = defineCustomElement(${component})`)
125
132
  definitions.push(`customElements.define('${kebabCase(component)}', ${component}CustomElement)`)
126
133
  }
@@ -1,4 +1,4 @@
1
- import storage from '@stacksjs/storage'
1
+ import * as storage from '@stacksjs/storage'
2
2
  import { italic, log, runCommand, runCommands } from '@stacksjs/cli'
3
3
  import { actionsPath, functionsPath } from '@stacksjs/path'
4
4
  import type { ActionOptions, CommandResult } from '@stacksjs/types'
@@ -11,10 +11,11 @@ function parseOptions(options?: ActionOptions) {
11
11
  const parsedOptions = Object.entries(options).map(([key, value]) => {
12
12
  if (key.length === 1)
13
13
  return `-${key}=${value}`
14
+
14
15
  if (typeof value === 'boolean' && value) // if the value is a boolean and true, just return the key
15
16
  return `--${key}`
16
- else
17
- return `--${key}=${value}`
17
+
18
+ return `--${key}=${value}`
18
19
  })
19
20
 
20
21
  // filter out undefined values and join the array
@@ -26,7 +27,7 @@ export type ActionResult = CommandResult
26
27
  /**
27
28
  * Run an Action the Stacks way.
28
29
  *
29
- * @param command The action to invoke.
30
+ * @param action The action to invoke.
30
31
  * @param options The options to pass to the command.
31
32
  * @returns The result of the command.
32
33
  */
@@ -49,7 +50,7 @@ export async function runAction(action: string, options?: ActionOptions): Promis
49
50
  /**
50
51
  * Run Actions the Stacks way.
51
52
  *
52
- * @param command The action to invoke.
53
+ * @param actions The actions to invoke.
53
54
  * @param options The options to pass to the command.
54
55
  * @returns The result of the command.
55
56
  */
@@ -71,8 +72,5 @@ export function hasAction(action: string) {
71
72
  if (storage.isFile(functionsPath(`actions/${action}.ts`)))
72
73
  return true
73
74
 
74
- if (storage.isFile(actionsPath(`${action}.ts`)))
75
- return true
76
-
77
- return false
75
+ return storage.isFile(actionsPath(`${action}.ts`))
78
76
  }
@@ -1,5 +1,17 @@
1
- import { runCommand } from '@stacksjs/cli'
1
+ import { ExitCode, runCommands } from '@stacksjs/cli'
2
2
  import { projectPath } from '@stacksjs/path'
3
3
  import { NpmScript } from '@stacksjs/types'
4
4
 
5
- await runCommand(NpmScript.Lint, { cwd: projectPath(), verbose: true })
5
+ export default async function lintAction() {
6
+ const result = await runCommands([
7
+ NpmScript.Lint,
8
+ NpmScript.LintPackageJson,
9
+ ], { cwd: projectPath(), verbose: true })
10
+
11
+ if (Array.isArray(result)) {
12
+ if (result.map(r => r.isErr()).includes(true))
13
+ process.exit(ExitCode.FatalError)
14
+ }
15
+
16
+ process.exit(ExitCode.Success)
17
+ }
@@ -295,23 +295,26 @@ export async function createModel(options: MakeOptions) {
295
295
  try {
296
296
  await writeTextFile({
297
297
  path: `${path}`,
298
- data: `import { faker } from '../../.stacks/core/faker/src' // stacks/faker or
299
- import { validate } from '../../.stacks/core/validation/src' // stacks/validate or @stacksjs/validate
300
- import type { Model } from '../../.stacks/core/types/src' // stacks/types or @stacksjs/types
298
+ data: `import { faker } from '@stacksjs/faker'
299
+ import { validate } from '@stacksjs/validation'
300
+ import type { Model } from '@stacksjs/types'
301
301
 
302
302
  export default <Model> {
303
303
  name: '${name}',
304
+
304
305
  searchable: true, // boolean | IndexSettings,
305
306
  authenticatable: true, // boolean | AuthSettings,
307
+
306
308
  seeder: {
307
309
  count: 10,
308
310
  },
311
+
309
312
  fields: {
310
313
  name: {
311
- type: 'String',
312
314
  validation: validate.string().min(3).max(255),
313
- factory: () => faker.name,
315
+ factory: () => faker.person,
314
316
  },
317
+
315
318
  // more fields here
316
319
  },
317
320
  }`,
@@ -1,3 +1,3 @@
1
- import { migrations } from '@stacksjs/actions/generate'
1
+ import { migrations as generateMigrations } from './generate'
2
2
 
3
- await migrations()
3
+ await generateMigrations()
@@ -6,10 +6,10 @@ import { NpmScript } from '@stacksjs/types'
6
6
  log.info('Running prepublish command...')
7
7
 
8
8
  // right before we publish, we need to build Stacks
9
- const result = await runNpmScript(NpmScript.BuildStacks, { verbose: true, cwd: runtimePath() }) // TODO: add flag for debug mode
9
+ const result = await runNpmScript(NpmScript.BuildStacks, { verbose: true, cwd: runtimePath() })
10
10
 
11
11
  if (result.isErr()) {
12
- log.error('There was an error while prepublishing your stack, during the process of building Stacks.', result.error)
12
+ log.error(new Error('There was an error while prepublishing your stack'), result.error)
13
13
  process.exit()
14
14
  }
15
15