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
@@ -0,0 +1,139 @@
1
+ import { Macroable } from 'macroable'
2
+ import * as c from './case'
3
+ import * as p from './pluralize'
4
+ import * as u from './utils'
5
+
6
+ export class Str extends Macroable {
7
+ slash(str: string) {
8
+ return u.slash(str)
9
+ }
10
+
11
+ ensurePrefix(prefix: string, str: string) {
12
+ return u.ensurePrefix(prefix, str)
13
+ }
14
+
15
+ ensureSuffix(suffix: string, str: string) {
16
+ return u.ensureSuffix(suffix, str)
17
+ }
18
+
19
+ template(str: string, ...args: any[]): string {
20
+ return u.template(str, ...args)
21
+ }
22
+
23
+ /**
24
+ * Truncate a string
25
+ */
26
+ truncate(str: string, length: number, end = '...') {
27
+ return u.truncate(str, length, end)
28
+ }
29
+
30
+ random(length = 16) {
31
+ return u.randomStr(length)
32
+ }
33
+
34
+ capitalize(str: string) {
35
+ return c.capitalize(str)
36
+ }
37
+
38
+ slug(str: string) {
39
+ return u.slug(str)
40
+ }
41
+
42
+ detectIndent(str: string) {
43
+ return u.detectIndent(str)
44
+ }
45
+
46
+ detectNewline(str: string) {
47
+ return u.detectNewline(str)
48
+ }
49
+
50
+ camelCase(str: string) {
51
+ return c.camelCase(str)
52
+ }
53
+
54
+ capitalCase(str: string) {
55
+ return c.capitalCase(str)
56
+ }
57
+
58
+ constantCase(str: string) {
59
+ return c.constantCase(str)
60
+ }
61
+
62
+ dotCase(str: string) {
63
+ return c.dotCase(str)
64
+ }
65
+
66
+ headerCase(str: string) {
67
+ return c.headerCase(str)
68
+ }
69
+
70
+ noCase(str: string) {
71
+ return c.noCase(str)
72
+ }
73
+
74
+ paramCase(str: string) {
75
+ return c.paramCase(str)
76
+ }
77
+
78
+ pascalCase(str: string) {
79
+ return c.pascalCase(str)
80
+ }
81
+
82
+ pathCase(str: string) {
83
+ return c.pathCase(str)
84
+ }
85
+
86
+ sentenceCase(str: string) {
87
+ return c.sentenceCase(str)
88
+ }
89
+
90
+ snakeCase(str: string) {
91
+ return c.snakeCase(str)
92
+ }
93
+
94
+ titleCase(str: string) {
95
+ return c.titleCase(str)
96
+ }
97
+
98
+ kebabCase(str: string) {
99
+ return c.kebabCase(str)
100
+ }
101
+
102
+ plural(str: string) {
103
+ // plural, singular, isPlural, isSingular, addPluralRule, addSingularRule, addIrregularRule, addUncountableRule
104
+ return p.plural(str)
105
+ }
106
+
107
+ singular(str: string) {
108
+ return p.singular(str)
109
+ }
110
+
111
+ isPlural(str: string) {
112
+ return p.isPlural(str)
113
+ }
114
+
115
+ isSingular(str: string) {
116
+ return p.isSingular(str)
117
+ }
118
+
119
+ addPluralRule(rule: string | RegExp, repl: string) {
120
+ return p.addPluralRule(rule, repl)
121
+ }
122
+
123
+ addSingularRule(rule: string | RegExp, repl: string) {
124
+ return p.addSingularRule(rule, repl)
125
+ }
126
+
127
+ addIrregularRule(single: string, plural: string) {
128
+ return p.addIrregularRule(single, plural)
129
+ }
130
+
131
+ addUncountableRule(word: string | RegExp) {
132
+ return p.addUncountableRule(word)
133
+ }
134
+
135
+ static macros = {}
136
+ static getters = {}
137
+ }
138
+
139
+ export const str = new Str()
@@ -78,6 +78,13 @@ export function template(str: string, ...args: any[]): string {
78
78
  })
79
79
  }
80
80
 
81
+ export function truncate(str: string, length: number, end = '...') {
82
+ if (str.length <= length)
83
+ return str
84
+
85
+ return str.slice(0, length - end.length) + end
86
+ }
87
+
81
88
  /**
82
89
  * Generate a random string
83
90
  * @category String
@@ -91,18 +98,6 @@ export function randomStr(size = 16, dict = urlAlphabet) {
91
98
  return id
92
99
  }
93
100
 
94
- /**
95
- * First letter uppercase, other lowercase
96
- * @category string
97
- * @example
98
- * ```
99
- * capitalize('hello world') => 'Hello world'
100
- * ```
101
- */
102
- export function capitalize(str: string): string {
103
- return str[0].toUpperCase() + str.slice(1).toLowerCase()
104
- }
105
-
106
101
  /**
107
102
  * Slugify a string
108
103
  * @category string
@@ -120,3 +115,6 @@ export function slug(str: string, options?: SlugOptions): string {
120
115
  strict: true,
121
116
  })
122
117
  }
118
+
119
+ export { default as detectIndent } from 'detect-indent'
120
+ export { detectNewline } from 'detect-newline'
@@ -1,6 +1,8 @@
1
- import { defineBuildConfig } from 'unbuild'
1
+ import { alias, defineBuildConfig } from '@stacksjs/development'
2
2
 
3
3
  export default defineBuildConfig({
4
+ alias,
5
+
4
6
  entries: [
5
7
  {
6
8
  builder: 'mkdist',
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/testing",
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 way of testing.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -46,17 +46,17 @@
46
46
  "scripts": {
47
47
  "build": "unbuild",
48
48
  "dev": "unbuild --stub",
49
- "prepublishOnly": "pnpm run build",
49
+ "prepublishOnly": "unbuild",
50
50
  "typecheck": "tsc --noEmit"
51
51
  },
52
52
  "peerDependencies": {
53
- "@playwright/test": "^1.33.0",
54
- "@vitest/coverage-istanbul": "^0.31.1",
55
- "@vitest/ui": "^0.31.1",
56
- "vitest": "^0.31.1"
53
+ "@playwright/test": "^1.35.1",
54
+ "@vitest/coverage-istanbul": "^0.32.2",
55
+ "@vitest/ui": "^0.32.2",
56
+ "vitest": "^0.32.2"
57
57
  },
58
58
  "devDependencies": {
59
- "typescript": "^5.0.4",
59
+ "typescript": "^5.1.3",
60
60
  "unbuild": "^1.2.1"
61
61
  }
62
62
  }
@@ -0,0 +1,12 @@
1
+ import { alias, defineBuildConfig } from '@stacksjs/development'
2
+
3
+ export default defineBuildConfig({
4
+ alias,
5
+
6
+ entries: [
7
+ './src/index',
8
+ ],
9
+
10
+ clean: true,
11
+ declaration: true,
12
+ })
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/tinker",
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 way to tinker.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -36,10 +36,22 @@
36
36
  "dist",
37
37
  "README.md"
38
38
  ],
39
+ "scripts": {
40
+ "build": "unbuild",
41
+ "dev": "unbuild --stub",
42
+ "prepublishOnly": "unbuild",
43
+ "typecheck": "tsc --noEmit"
44
+ },
45
+ "peerDependencies": {
46
+ "@vue/repl": "^2.3.0",
47
+ "tsx": "^3.12.7"
48
+ },
39
49
  "dependencies": {
50
+ "@vue/repl": "^2.3.0",
40
51
  "tsx": "^3.12.7"
41
52
  },
42
53
  "devDependencies": {
43
- "@stacksjs/development": "workspace:*"
54
+ "typescript": "^5.1.3",
55
+ "unbuild": "^1.2.1"
44
56
  }
45
57
  }
@@ -0,0 +1 @@
1
+ export * from '@vue/repl'
@@ -1,13 +1,22 @@
1
- import { defineBuildConfig } from 'unbuild'
1
+ import type { BuildConfig } from '@stacksjs/development'
2
+ import { alias, defineBuildConfig } from '@stacksjs/development'
3
+
4
+ type Entries = BuildConfig['entries']
5
+ const devEntries: Entries = [{
6
+ input: './src/index',
7
+ outDir: './dist/',
8
+ }]
9
+ const buildEntries = devEntries
10
+ const command = process.env.npm_lifecycle_script
11
+ const entries: Entries = command?.includes('--stub') ? devEntries : buildEntries
2
12
 
3
13
  export default defineBuildConfig({
4
- entries: [
5
- {
6
- builder: 'mkdist',
7
- input: './src/',
8
- outDir: './dist/',
9
- format: 'esm',
10
- },
14
+ alias,
15
+
16
+ entries,
17
+
18
+ externals: [
19
+ '@stacksjs/utils',
11
20
  ],
12
21
 
13
22
  clean: true,
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/types",
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 framework types.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -26,9 +26,9 @@
26
26
  ".": {
27
27
  "types": "./dist/index.d.ts",
28
28
  "import": "./dist/index.mjs"
29
- }
29
+ },
30
+ "./*": "./*"
30
31
  },
31
- "main": "dist/index.mjs",
32
32
  "module": "dist/index.mjs",
33
33
  "types": "dist/index.d.ts",
34
34
  "contributors": [
@@ -41,41 +41,47 @@
41
41
  "scripts": {
42
42
  "build": "unbuild",
43
43
  "dev": "unbuild --stub",
44
- "prepublishOnly": "pnpm run build",
44
+ "prepublishOnly": "unbuild",
45
45
  "typecheck": "tsc --noEmit"
46
46
  },
47
+ "peerDependencies": {
48
+ "neverthrow": "^6.0.0"
49
+ },
47
50
  "dependencies": {
48
51
  "@mdit-vue/plugin-component": "^0.12.0",
49
52
  "@mdit-vue/plugin-frontmatter": "^0.12.0",
50
53
  "@mdit-vue/types": "^0.12.0",
51
- "@novu/stateless": "^0.15.0",
54
+ "@novu/stateless": "^0.16.1",
52
55
  "@rollup/pluginutils": "^5.0.2",
53
- "@stacksjs/development": "workspace:*",
54
56
  "@types/bcryptjs": "^2.4.2",
55
57
  "@types/crypto-js": "^4.1.1",
56
- "@types/eslint": "^8.37.0",
58
+ "@types/eslint": "^8.40.2",
57
59
  "@types/fs-extra": "^11.0.1",
58
60
  "@types/markdown-it-link-attributes": "^3.0.1",
59
61
  "@types/minimatch": "^5.1.2",
60
- "@types/node": "^18.16.13",
62
+ "@types/node": "^18.16.18",
61
63
  "@types/nprogress": "^0.2.0",
62
64
  "@types/pluralize": "^0.0.29",
65
+ "@vinejs/vine": "^1.4.1",
63
66
  "cac": "^6.7.14",
64
67
  "execa": "^7.1.1",
65
68
  "markdown-it": "^13.0.1",
66
- "meilisearch": "^0.32.3",
69
+ "meilisearch": "^0.33.0",
67
70
  "neverthrow": "^6.0.0",
68
71
  "ora": "^6.3.1",
69
- "unocss": "^0.51.13",
70
- "unplugin-auto-import": "^0.16.0",
71
- "unplugin-vue-components": "^0.24.1",
72
- "vite": "^4.3.8",
73
- "vite-plugin-inspect": "^0.7.26",
74
- "vite-plugin-pwa": "^0.15.0",
72
+ "unocss": "^0.53.4",
73
+ "unplugin-auto-import": "^0.16.4",
74
+ "unplugin-vue-components": "^0.25.1",
75
+ "vite": "^4.3.9",
76
+ "vite-plugin-inspect": "^0.7.29",
77
+ "vite-plugin-pwa": "^0.16.4",
75
78
  "vite-plugin-vue-layouts": "^0.8.0",
76
79
  "vite-ssg": "^0.22.2",
77
- "vitepress": "1.0.0-alpha.76",
78
- "vue": "^3.3.4",
79
- "zod": "^3.21.4"
80
+ "vitepress": "1.0.0-beta.3",
81
+ "vue": "^3.3.4"
82
+ },
83
+ "devDependencies": {
84
+ "typescript": "^5.1.3",
85
+ "unbuild": "^1.2.1"
80
86
  }
81
87
  }
@@ -26,7 +26,7 @@ export interface AppOptions {
26
26
  *
27
27
  * @default "local"
28
28
  */
29
- env?: 'local' | 'development' | 'production'
29
+ env: 'local' | 'development' | 'staging' | 'production'
30
30
 
31
31
  /**
32
32
  * **Application URL**
@@ -35,10 +35,10 @@ export interface AppOptions {
35
35
  * the Buddy command line tool. You should set this to the root of
36
36
  * your application so that it is used when running Buddy tasks.
37
37
  *
38
- * @default string "https://localhost"
39
- * @example "https://hello-world.test"
38
+ * @default string "https://stacks.test"
39
+ * @example "https://my-project.test"
40
40
  */
41
- url?: string
41
+ url: string
42
42
 
43
43
  /**
44
44
  * **Application Debug Mode**
@@ -214,7 +214,7 @@ export type LibEntryType = 'vue-components' | 'web-components' | 'functions' | '
214
214
  */
215
215
  export const enum NpmScript {
216
216
  Build = 'build',
217
- BuildComponents = 'build:components',
217
+ BuildComponents = 'vite build --config ./core/build/src/vue-components.ts',
218
218
  BuildWebComponents = 'build:web-components',
219
219
  BuildFunctions = 'build:functions',
220
220
  BuildDocs = 'build:docs',
@@ -227,8 +227,9 @@ export const enum NpmScript {
227
227
  DevPages = 'dev:pages',
228
228
  DevFunctions = 'dev:functions',
229
229
  Fresh = 'fresh',
230
- Lint = 'eslint . ; npx publint',
230
+ Lint = 'eslint .',
231
231
  LintFix = 'eslint . --fix',
232
+ LintPackageJson = 'npx publint',
232
233
  MakeStack = 'make:stack',
233
234
  Test = 'vitest --config vitest.config.ts',
234
235
  TestUnit = 'vitest --config vitest.config.ts',
@@ -256,48 +257,47 @@ export const enum NpmScript {
256
257
  Prepublish = 'prepublish',
257
258
  Wip = 'wip',
258
259
  UpgradeNode = './.stacks/scripts/setup.sh +nodejs.org',
259
- UpgradePackageManager = './.stacks/scripts/setup.sh +pnpm.io',
260
+ UpgradeDependencies = 'pnpm up',
260
261
  }
261
262
 
262
263
  export const enum Action {
263
- Bump = 'bump', // wip - changelog action
264
+ Bump = 'bump',
264
265
  BuildStacks = 'build/stacks',
265
- BuildComponentLibs = 'build-component-libs',
266
+ BuildComponentLibs = 'build/component-libs',
266
267
  BuildVueComponentLib = 'build-vue-component-lib',
267
268
  BuildWebComponentLib = 'build-web-component-lib',
268
269
  BuildCli = 'build-cli',
269
- BuildCore = 'build/core', // wip
270
+ BuildCore = 'build/core',
270
271
  BuildDocs = 'build-docs',
271
272
  BuildFunctionLib = 'build-function-lib',
272
- Changelog = 'changelog', // wip
273
- Clean = 'clean', // wip
274
- DevComponents = 'dev/components', // wip
275
- DevDocs = 'dev/docs', // wip
276
- Deploy = 'deploy', // wip
277
- Fresh = 'fresh', // wip
278
- GeneratePackageJsons = 'generate/package-jsons', // ✅
279
- GenerateSettings = 'generate-settings', // wip
280
- GenerateOnboarding = 'generate-onboarding', // wip
281
- Inspire = 'inspire', // wip
282
- KeyGenerate = 'key-generate', // wip
283
- MakeNotification = 'make-notification', // wip
284
- Migrate = 'migrate', // wip
285
- Seed = 'seed', // wip
286
- Lint = 'lint/index', // wip
287
- LintFix = 'lint/fix', // wip
288
- Prepublish = 'prepublish', // wip
289
- Release = 'release', // wip
290
- ShowFeatureTestReport = 'show-feature-test-report', // wip
291
- Test = 'test', // wip
292
- TestUi = 'test-ui', // wip
293
- TestUnit = 'test-unit', // wip
294
- TestFeature = 'test-feature', // wip
295
- TestCoverage = 'test-coverage', // wip
273
+ Changelog = 'changelog',
274
+ Clean = 'clean',
275
+ DevComponents = 'dev/components', // ✅
276
+ Dev = 'dev/index',
277
+ DevDocs = 'dev/docs',
278
+ Deploy = 'deploy',
279
+ Fresh = 'fresh',
280
+ GenerateLibraryEntries = 'generate/lib-entries', // ✅
281
+ Inspire = 'inspire',
282
+ KeyGenerate = 'key-generate',
283
+ MakeNotification = 'make-notification',
284
+ Migrate = 'migrate',
285
+ Seed = 'seed',
286
+ Lint = 'lint/index',
287
+ LintFix = 'lint/fix',
288
+ Prepublish = 'prepublish',
289
+ Release = 'release', // ✅
290
+ ShowFeatureTestReport = 'show-feature-test-report',
291
+ Test = 'test',
292
+ TestUi = 'test-ui',
293
+ TestUnit = 'test-unit',
294
+ TestFeature = 'test-feature',
295
+ TestCoverage = 'test-coverage',
296
296
  Tinker = 'tinker',
297
- Typecheck = 'typecheck', // wip
298
- Upgrade = 'upgrade/index', // wip
299
- UpgradeNode = 'upgrade/node', // wip
300
- UpgradePackageManager = 'upgrade/package-manager', // wip
297
+ Typecheck = 'typecheck',
298
+ Upgrade = 'upgrade/index',
299
+ UpgradeNode = 'upgrade/node',
300
+ UpgradePackageManager = 'upgrade/package-manager',
301
301
  }
302
302
 
303
303
  export type { CAC as CLI } from 'cac'
@@ -1,17 +1,38 @@
1
1
  /**
2
2
  * Cron Job Options.
3
3
  */
4
- export interface CronJobOptions {
4
+ export interface JobOptions {
5
5
  /**
6
- * The name of the cron job.
6
+ * The name of the job.
7
7
  */
8
8
  name?: string
9
- function: string
10
- schedule: string
9
+ action?: string | Function
10
+ run?: string | Function
11
+ schedule?: string
11
12
  description?: string
12
13
  enabled?: boolean
13
14
  timezone?: string
15
+ active?: boolean
16
+ tries?: number
17
+ backoff?: number | number[]
14
18
  }
19
+ export type Job = JobOptions
20
+ export type Jobs = Job[]
15
21
 
22
+ export interface CronJobOptions extends Omit<JobOptions, 'schedule'> {
23
+ schedule: string
24
+ }
16
25
  export type CronJob = CronJobOptions
17
26
  export type CronJobs = CronJob[]
27
+
28
+ export enum Every {
29
+ Minute = '* * * * *',
30
+ Hour = '0 * * * *',
31
+ HalfHour = '0,30 * * * *',
32
+ Day = '0 0 * * *',
33
+ Month = '0 0 1 * *',
34
+ Week = '0 0 * * 0',
35
+ Year = '0 0 1 1 *',
36
+ FifthMinute = '*/5 * * * *',
37
+ TenthMinute = '*/10 * * * *',
38
+ }
@@ -3,22 +3,31 @@ import type { Model } from './model'
3
3
  export type DatabaseClient = any
4
4
 
5
5
  export interface DatabaseOptions {
6
- driver: string
6
+ default: string
7
7
 
8
- drivers: {
8
+ connections: {
9
9
  mysql: {
10
10
  url?: string
11
11
  host?: string
12
12
  port?: number
13
13
  client?: DatabaseClient
14
- name: string
14
+ name?: string
15
15
  username?: string
16
16
  password?: string
17
+ prefix?: string
18
+ }
19
+
20
+ sqlite: {
21
+ url?: string
22
+ database?: string
23
+ prefix?: string
17
24
  }
18
25
 
19
26
  planetscale: {}
20
27
  postgres: {}
21
28
  }
29
+
30
+ migrations: string
22
31
  }
23
32
 
24
33
  export interface FactoryOptions {
@@ -1,6 +1,24 @@
1
- export {
1
+ import {
2
2
  Err,
3
3
  Ok,
4
4
  Result,
5
5
  ResultAsync,
6
6
  } from 'neverthrow'
7
+
8
+ export declare class ValidationError extends Error {
9
+ messages: any
10
+ status: number
11
+ code: string
12
+ constructor(messages: any, options?: ErrorOptions)
13
+ get [Symbol.toStringTag](): string
14
+ toString(): string
15
+ }
16
+
17
+ export type StacksError = Error | ValidationError
18
+
19
+ export {
20
+ Err,
21
+ Ok,
22
+ Result,
23
+ ResultAsync,
24
+ }
@@ -7,16 +7,24 @@
7
7
  *
8
8
  * @example To fire an event, you may use any of the following approaches:
9
9
  * ```ts
10
- * useEvent('user:registered', { name: 'Chris'})
11
- * dispatch('user:registered', { name: 'Chris'})
10
+ * dispatch('user:registered', { name: 'Chris', email: 'chris@stacksjs.dev' })
11
+ *
12
+ * // alternatively, you may use the following:
13
+ * useEvent('user:registered', { name: 'Chris', email: 'chris@stacksjs.dev' })
14
+ * events.emit('user:registered', { name: 'Chris', email: 'chris@stacksjs.dev' })
15
+ * useEvents.emit('user:registered', { name: 'Chris', email: 'chris@stacksjs.dev' })
12
16
  * ````
13
17
 
14
18
  * @example To capture an event, you may use any of the following approaches:
15
19
  * ```ts
16
- * useListen('user:registered', (user) => console.log(user))
17
- * listen('user:registered', (user) => console.log(user))
20
+ * listen('user:registered', (user) => sendWelcomeEmail(user))
21
+ *
22
+ * // alternatively, you may use the following:
23
+ * useListen('user:registered', (user) => sendWelcomeEmail(user))
24
+ * events.on('user:registered', (user) => sendWelcomeEmail(user))
25
+ * useEvents.on('user:registered', (user) => sendWelcomeEmail(user))
18
26
  * ```
19
27
  */
20
28
  export interface Events {
21
- [key: string]: any
29
+ [key: string]: (...args: any[]) => Function
22
30
  }
@@ -20,6 +20,11 @@ export interface JsonFile {
20
20
  * Describes a package.json file.
21
21
  */
22
22
  export interface PackageJson {
23
+ engines: {
24
+ node: string
25
+ pnpm: string
26
+ }
27
+ version: string
23
28
  packageManager: string
24
29
  // wip
25
30
  }
@@ -33,7 +33,7 @@ export interface GitOptions {
33
33
  * git: [
34
34
  * scopes: [
35
35
  * '', 'ci', 'deps', 'dx', 'release', 'readme', 'test', 'actions', 'build', 'cli',
36
- * 'config', 'examples', 'functions', 'modules', 'pages', 'router', 'scripts',
36
+ * 'config', 'examples', 'functions', 'modules', 'views', 'router', 'scripts',
37
37
  * 'ui', 'utils', 'arrays', 'collections', 'fs', 'objects', 'strings',
38
38
  * ]
39
39
  * ]