stacks 0.51.0 → 0.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (683) hide show
  1. package/README.md +20 -17
  2. package/api/nitro.config.ts +17 -0
  3. package/api/package.json +42 -0
  4. package/api/routes/index.ts +1 -0
  5. package/api/serverless.yml +11 -0
  6. package/auto-imports.d.ts +13 -18
  7. package/components/vue/main.ts +1 -0
  8. package/components/vue/package.json +1 -1
  9. package/components/web/package.json +1 -1
  10. package/core/actions/README.md +1 -1
  11. package/core/actions/build.config.ts +13 -0
  12. package/core/actions/node_modules/.bin/markdown-it +2 -2
  13. package/core/actions/node_modules/.bin/unbuild +17 -0
  14. package/core/actions/package.json +214 -13
  15. package/core/actions/src/build/core.ts +6 -0
  16. package/core/actions/src/clean.ts +9 -19
  17. package/core/actions/src/deploy/domains.ts +8 -0
  18. package/core/actions/src/deploy.ts +8 -0
  19. package/core/actions/src/dev/docs.ts +5 -0
  20. package/core/actions/src/{dev.ts → dev/index.ts} +0 -25
  21. package/core/actions/src/fresh.ts +1 -1
  22. package/core/actions/src/{generate-component-meta.ts → generate/component-meta.ts} +1 -1
  23. package/core/actions/src/{generate-ide-helpers.ts → generate/ide-helpers.ts} +2 -1
  24. package/core/actions/src/{generate.ts → generate/index.ts} +18 -3
  25. package/core/actions/src/{generate-lib-entries.ts → generate/lib-entries.ts} +1 -1
  26. package/core/actions/src/{generate-package-jsons.ts → generate/package-jsons.ts} +1 -1
  27. package/core/actions/src/{generate-vscode-custom-data.ts → generate/vscode-custom-data.ts} +1 -1
  28. package/core/actions/src/{generate-vue-compat.ts → generate/vue-compat.ts} +1 -1
  29. package/core/actions/src/helpers/lib-entries.ts +7 -6
  30. package/core/actions/src/helpers/package-json.ts +9 -9
  31. package/core/actions/src/helpers/utils.ts +21 -25
  32. package/core/actions/src/helpers/vscode-custom-data.ts +1 -1
  33. package/core/actions/src/key-generate.ts +2 -2
  34. package/core/actions/src/make.ts +63 -19
  35. package/core/actions/src/migrate.ts +3 -0
  36. package/core/actions/src/preinstall.ts +2 -2
  37. package/core/actions/src/release.ts +4 -3
  38. package/core/actions/src/seed.ts +3 -0
  39. package/core/actions/src/tinker.ts +9 -0
  40. package/core/actions/src/upgrade/framework.ts +29 -0
  41. package/core/actions/src/upgrade/index.ts +27 -0
  42. package/core/actions/src/upgrade/node.ts +4 -0
  43. package/core/actions/src/upgrade/package-manager.ts +4 -0
  44. package/core/actions/src/upgrade.ts +75 -0
  45. package/core/ai/README.md +1 -1
  46. package/core/ai/build.config.ts +13 -0
  47. package/core/ai/package.json +15 -12
  48. package/core/alias/README.md +1 -1
  49. package/core/alias/build.config.ts +13 -0
  50. package/core/alias/package.json +11 -11
  51. package/core/alias/src/index.ts +27 -10
  52. package/core/{drivers → analytics}/README.md +18 -9
  53. package/core/analytics/build.config.ts +13 -0
  54. package/core/analytics/package.json +64 -0
  55. package/core/arrays/README.md +1 -1
  56. package/core/arrays/build.config.ts +13 -0
  57. package/core/arrays/package.json +13 -12
  58. package/core/arrays/src/index.ts +4 -0
  59. package/core/auth/README.md +1 -1
  60. package/core/auth/build.config.ts +13 -0
  61. package/core/auth/package.json +11 -12
  62. package/{buddy → core/buddy}/README.md +19 -16
  63. package/core/buddy/build.config.ts +16 -0
  64. package/core/buddy/package.json +127 -0
  65. package/core/buddy/src/cli.ts +96 -0
  66. package/{buddy → core/buddy}/src/commands/add.ts +6 -11
  67. package/{buddy → core/buddy}/src/commands/build.ts +22 -31
  68. package/{buddy → core/buddy}/src/commands/changelog.ts +5 -6
  69. package/core/buddy/src/commands/clean.ts +30 -0
  70. package/{buddy → core/buddy}/src/commands/commit.ts +0 -2
  71. package/{buddy → core/buddy}/src/commands/create.ts +4 -6
  72. package/core/buddy/src/commands/deploy.ts +30 -0
  73. package/{buddy → core/buddy}/src/commands/dev.ts +42 -26
  74. package/{buddy → core/buddy}/src/commands/example.ts +8 -12
  75. package/{buddy → core/buddy}/src/commands/fresh.ts +3 -5
  76. package/{buddy → core/buddy}/src/commands/generate.ts +19 -22
  77. package/{buddy → core/buddy}/src/commands/index.ts +7 -1
  78. package/core/buddy/src/commands/inspire.ts +25 -0
  79. package/{buddy → core/buddy}/src/commands/key.ts +6 -7
  80. package/{buddy → core/buddy}/src/commands/lint.ts +10 -11
  81. package/{buddy → core/buddy}/src/commands/make.ts +55 -47
  82. package/core/buddy/src/commands/migrate.ts +32 -0
  83. package/{buddy → core/buddy}/src/commands/onboarding.ts +6 -5
  84. package/{buddy → core/buddy}/src/commands/preinstall.ts +0 -2
  85. package/{buddy → core/buddy}/src/commands/prepublish.ts +0 -2
  86. package/{buddy → core/buddy}/src/commands/release.ts +3 -3
  87. package/core/buddy/src/commands/seed.ts +31 -0
  88. package/{buddy → core/buddy}/src/commands/setting.ts +6 -5
  89. package/{buddy → core/buddy}/src/commands/setup.ts +0 -3
  90. package/{buddy → core/buddy}/src/commands/test.ts +35 -35
  91. package/core/buddy/src/commands/tinker.ts +29 -0
  92. package/{buddy → core/buddy}/src/commands/types.ts +0 -3
  93. package/core/buddy/src/commands/upgrade.ts +141 -0
  94. package/core/buddy/src/commands/version.ts +31 -0
  95. package/{buddy → core/buddy}/src/index.ts +2 -1
  96. package/core/build/README.md +1 -1
  97. package/core/build/build.config.ts +13 -0
  98. package/core/build/node_modules/.bin/unbuild +4 -4
  99. package/core/build/node_modules/.bin/vite +4 -4
  100. package/core/build/node_modules/.bin/vite-ssg +4 -4
  101. package/core/build/node_modules/.bin/vue-docgen-web-types +4 -4
  102. package/core/build/package.json +26 -24
  103. package/core/build/src/desktop.ts +141 -11
  104. package/core/build/src/pages.ts +1 -0
  105. package/core/build/src/stacks.ts +11 -9
  106. package/core/build/web-types.config.cjs +1 -0
  107. package/core/cache/README.md +1 -1
  108. package/core/cache/build.config.ts +13 -0
  109. package/core/cache/package.json +30 -15
  110. package/core/cache/src/drivers/dynamodb.ts +119 -117
  111. package/core/cache/src/drivers/memcached.ts +15 -14
  112. package/core/cache/src/drivers/redis.ts +7 -4
  113. package/core/cache/tests/Redis.test.ts +1 -0
  114. package/core/chat/README.md +2 -1
  115. package/core/chat/build.config.ts +13 -0
  116. package/core/chat/package.json +16 -16
  117. package/core/chat/src/drivers/slack.ts +20 -18
  118. package/core/chat/src/drivers/teams.ts +24 -0
  119. package/core/chat/src/index.ts +1 -0
  120. package/core/cli/README.md +2 -2
  121. package/core/cli/build.config.ts +14 -0
  122. package/core/cli/package.json +16 -14
  123. package/core/cli/src/actions/install.ts +3 -3
  124. package/core/cli/src/command.ts +2 -7
  125. package/core/cli/src/console.ts +2 -3
  126. package/core/cli/src/index.ts +1 -0
  127. package/core/cli/src/parse.ts +99 -0
  128. package/core/cli/src/run.ts +35 -18
  129. package/core/cloud/README.md +1 -1
  130. package/core/cloud/build.config.ts +13 -0
  131. package/core/cloud/package.json +11 -12
  132. package/core/collections/README.md +1 -1
  133. package/core/collections/build.config.ts +13 -0
  134. package/core/collections/package.json +12 -13
  135. package/core/config/README.md +28 -10
  136. package/core/config/build.config.ts +40 -4
  137. package/core/config/package.json +20 -19
  138. package/core/config/src/defaults.ts +22 -0
  139. package/core/config/src/index.ts +3 -19
  140. package/core/config/src/stacks.ts +42 -0
  141. package/core/database/README.md +1 -1
  142. package/core/database/build.config.ts +17 -0
  143. package/core/database/package.json +19 -14
  144. package/core/database/src/factory/index.ts +16 -62
  145. package/core/database/src/migrations/index.ts +145 -3
  146. package/core/database/src/seeder/index.ts +75 -6
  147. package/core/datetime/README.md +1 -1
  148. package/core/datetime/build.config.ts +14 -0
  149. package/core/datetime/package.json +11 -12
  150. package/core/datetime/src/index.ts +1 -1
  151. package/core/desktop/README.md +1 -1
  152. package/core/desktop/build.config.ts +13 -0
  153. package/core/desktop/node_modules/.bin/tauri +4 -4
  154. package/core/desktop/package.json +15 -16
  155. package/core/development/README.md +27 -0
  156. package/core/development/build.config.ts +13 -0
  157. package/core/development/node_modules/.bin/tsc +17 -0
  158. package/core/development/node_modules/.bin/tsserver +17 -0
  159. package/core/development/node_modules/.bin/tsx +17 -0
  160. package/core/development/node_modules/.bin/unbuild +17 -0
  161. package/core/{x-ray → development}/package.json +32 -33
  162. package/core/development/src/index.ts +2 -0
  163. package/core/docs/README.md +1 -1
  164. package/core/docs/build.config.ts +15 -0
  165. package/core/docs/node_modules/.bin/vitepress +4 -4
  166. package/core/docs/package.json +14 -13
  167. package/core/docs/src/index.ts +3 -2
  168. package/core/domains/README.md +1 -1
  169. package/core/domains/build.config.ts +13 -0
  170. package/core/domains/package.json +11 -11
  171. package/core/email/README.md +1 -1
  172. package/core/email/build.config.ts +14 -0
  173. package/core/email/node_modules/.bin/maizzle +4 -4
  174. package/core/email/package.json +29 -24
  175. package/core/email/src/actions/send.ts +1 -1
  176. package/core/email/src/drivers/emailjs.ts +10 -8
  177. package/core/email/src/drivers/mailgun.ts +8 -6
  178. package/core/email/src/drivers/mailjet.ts +7 -5
  179. package/core/email/src/drivers/mandrill.ts +6 -4
  180. package/core/email/src/drivers/netcore.ts +6 -4
  181. package/core/email/src/drivers/nodemailer.ts +10 -8
  182. package/core/email/src/drivers/postmark.ts +6 -4
  183. package/core/email/src/drivers/sendgrid.ts +7 -5
  184. package/core/email/src/drivers/ses.ts +18 -15
  185. package/core/error-handling/README.md +1 -1
  186. package/core/error-handling/build.config.ts +14 -0
  187. package/core/error-handling/package.json +14 -12
  188. package/core/error-handling/src/index.ts +1 -3
  189. package/core/events/README.md +1 -1
  190. package/core/events/package.json +12 -12
  191. package/core/events/src/index.ts +3 -2
  192. package/core/faker/README.md +62 -0
  193. package/core/faker/build.config.ts +13 -0
  194. package/{pages → core/faker}/package.json +22 -22
  195. package/core/faker/src/index.ts +1 -0
  196. package/core/git/README.md +1 -1
  197. package/core/git/build.config.ts +13 -0
  198. package/core/git/node_modules/.bin/bumpp +4 -4
  199. package/core/git/node_modules/.bin/changelogen +4 -4
  200. package/core/git/node_modules/.bin/commitizen +2 -2
  201. package/core/git/node_modules/.bin/cz +2 -2
  202. package/core/git/node_modules/.bin/giget +4 -4
  203. package/core/git/node_modules/.bin/git-cz +2 -2
  204. package/core/git/node_modules/.bin/simple-git-hooks +2 -2
  205. package/core/git/package.json +15 -16
  206. package/core/health/README.md +1 -1
  207. package/core/health/build.config.ts +13 -0
  208. package/core/health/package.json +11 -12
  209. package/core/lint/README.md +1 -1
  210. package/core/lint/build.config.ts +13 -0
  211. package/core/lint/node_modules/.bin/eslint +4 -4
  212. package/core/lint/node_modules/.bin/lint-staged +4 -4
  213. package/core/lint/node_modules/.bin/publint +17 -0
  214. package/core/lint/package.json +16 -16
  215. package/core/logging/README.md +1 -1
  216. package/core/logging/build.config.ts +15 -0
  217. package/core/logging/node_modules/.bin/tsc +4 -4
  218. package/core/logging/node_modules/.bin/tsserver +4 -4
  219. package/core/logging/node_modules/.bin/tsx +17 -0
  220. package/core/logging/node_modules/.bin/unbuild +17 -0
  221. package/core/logging/package.json +19 -11
  222. package/core/logging/src/index.ts +4 -8
  223. package/core/modules/README.md +1 -1
  224. package/core/modules/build.config.ts +13 -0
  225. package/core/modules/package.json +19 -11
  226. package/core/notifications/README.md +1 -1
  227. package/core/notifications/build.config.ts +0 -1
  228. package/core/notifications/node_modules/.bin/maizzle +4 -4
  229. package/core/notifications/package.json +33 -33
  230. package/core/notifications/src/index.ts +13 -7
  231. package/core/notifications/src/tailwind.config.ts +3 -3
  232. package/core/notifications/src/utils/config.ts +2 -2
  233. package/core/notifications/tests/email/Mailgun.test.ts +1 -1
  234. package/core/objects/README.md +1 -1
  235. package/core/objects/build.config.ts +13 -0
  236. package/core/objects/package.json +14 -13
  237. package/core/{cloud/dist/actions → orm}/README.md +14 -19
  238. package/core/orm/build.config.ts +15 -0
  239. package/core/{drivers → orm}/package.json +18 -19
  240. package/core/orm/src/index.ts +43 -0
  241. package/core/pages/build.config.ts +13 -0
  242. package/core/pages/package.json +16 -14
  243. package/core/pages/src/index.ts +25 -5
  244. package/core/path/README.md +1 -1
  245. package/core/{tables → path}/build.config.ts +2 -5
  246. package/core/path/package.json +13 -11
  247. package/core/path/src/index.ts +55 -13
  248. package/core/payments/README.md +1 -1
  249. package/core/payments/build.config.ts +13 -0
  250. package/core/payments/package.json +18 -12
  251. package/core/payments/src/drivers/stripe.ts +136 -0
  252. package/core/payments/src/index.ts +1 -1
  253. package/core/push/README.md +1 -1
  254. package/core/push/build.config.ts +13 -0
  255. package/core/push/package.json +13 -16
  256. package/core/push/src/drivers/expo.ts +18 -16
  257. package/core/push/src/drivers/fcm.ts +18 -16
  258. package/core/{x-ray → query-builder}/README.md +14 -21
  259. package/core/query-builder/build.config.ts +13 -0
  260. package/core/query-builder/package.json +56 -0
  261. package/core/query-builder/src/index.ts +1 -0
  262. package/core/query-builder/src/kysely.ts +37 -0
  263. package/core/queue/README.md +1 -1
  264. package/core/queue/build.config.ts +13 -0
  265. package/core/queue/package.json +11 -12
  266. package/core/realtime/README.md +1 -1
  267. package/core/realtime/build.config.ts +13 -0
  268. package/core/realtime/package.json +11 -12
  269. package/core/router/README.md +1 -1
  270. package/core/router/build.config.ts +13 -0
  271. package/core/router/package.json +12 -13
  272. package/core/router/src/index.ts +4 -3
  273. package/core/scheduler/README.md +137 -0
  274. package/core/scheduler/build.config.ts +13 -0
  275. package/core/{dashboard → scheduler}/package.json +20 -21
  276. package/core/scheduler/src/index.ts +120 -0
  277. package/core/scheduler/tests/example.test.ts +7 -0
  278. package/core/search-engine/README.md +1 -1
  279. package/core/search-engine/build.config.ts +13 -0
  280. package/core/search-engine/package.json +16 -15
  281. package/core/search-engine/src/drivers/meilisearch.ts +3 -1
  282. package/core/search-engine/src/index.ts +4 -2
  283. package/core/security/README.md +1 -1
  284. package/core/security/build.config.ts +13 -0
  285. package/core/security/package.json +12 -13
  286. package/core/server/README.md +1 -1
  287. package/core/server/build.config.ts +13 -0
  288. package/core/server/node_modules/.bin/nitro +4 -4
  289. package/core/server/node_modules/.bin/nitropack +4 -4
  290. package/core/server/node_modules/.bin/vite +4 -4
  291. package/core/server/package.json +13 -13
  292. package/core/server/src/index.ts +1 -1
  293. package/core/server/src/nitro.config.ts +1 -0
  294. package/core/signals/README.md +105 -0
  295. package/core/signals/build.config.ts +13 -0
  296. package/core/signals/package.json +55 -0
  297. package/core/signals/src/index.ts +1 -0
  298. package/core/signals/tests/example.test.ts +7 -0
  299. package/core/{cloud/src/actions → slug}/README.md +11 -5
  300. package/core/slug/build.config.ts +13 -0
  301. package/core/slug/package.json +55 -0
  302. package/core/slug/src/index.ts +56 -0
  303. package/core/slug/tests/example.test.ts +7 -0
  304. package/core/sms/README.md +2 -1
  305. package/core/sms/build.config.ts +13 -0
  306. package/core/sms/package.json +22 -22
  307. package/core/sms/src/drivers/gupshup.ts +3 -3
  308. package/core/sms/src/drivers/nexmo.ts +4 -4
  309. package/core/sms/src/drivers/plivo.ts +4 -4
  310. package/core/sms/src/drivers/sms77.ts +3 -3
  311. package/core/sms/src/drivers/sns.ts +4 -4
  312. package/core/sms/src/drivers/telnyx.ts +4 -4
  313. package/core/sms/src/drivers/termii.ts +3 -3
  314. package/core/sms/src/drivers/twilio.ts +4 -4
  315. package/core/storage/README.md +1 -1
  316. package/core/storage/build.config.ts +13 -0
  317. package/core/storage/package.json +14 -14
  318. package/core/storage/src/index.ts +4 -3
  319. package/core/strings/README.md +7 -6
  320. package/core/strings/package.json +12 -12
  321. package/core/strings/src/case.ts +1 -0
  322. package/core/strings/src/pluralize.ts +5 -1
  323. package/core/strings/src/utils.ts +48 -6
  324. package/core/testing/README.md +1 -1
  325. package/core/testing/build.config.ts +13 -0
  326. package/core/testing/node_modules/.bin/playwright +4 -4
  327. package/core/testing/node_modules/.bin/tsc +4 -4
  328. package/core/testing/node_modules/.bin/tsserver +4 -4
  329. package/core/testing/node_modules/.bin/unbuild +17 -0
  330. package/core/testing/node_modules/.bin/vitest +4 -4
  331. package/core/testing/package.json +16 -15
  332. package/core/tinker/README.md +61 -0
  333. package/core/tinker/node_modules/.bin/tsx +17 -0
  334. package/core/tinker/package.json +45 -0
  335. package/core/tinker/tinker.js +2 -0
  336. package/core/types/README.md +1 -1
  337. package/core/types/build.config.ts +13 -0
  338. package/core/types/node_modules/.bin/markdown-it +2 -2
  339. package/core/types/node_modules/.bin/vite +17 -0
  340. package/core/types/node_modules/.bin/vite-ssg +4 -4
  341. package/core/types/node_modules/.bin/vitepress +4 -4
  342. package/core/types/package.json +33 -24
  343. package/core/types/src/app.ts +4 -16
  344. package/core/types/src/auto-imports.ts +1 -3
  345. package/core/types/src/build.ts +1 -1
  346. package/core/types/src/cache.ts +78 -0
  347. package/core/types/src/cdn.ts +15 -0
  348. package/core/types/src/cli.ts +91 -70
  349. package/core/types/src/components.ts +1 -3
  350. package/core/types/src/cron-jobs.ts +17 -0
  351. package/core/types/src/database.ts +39 -2
  352. package/core/types/src/deploy.ts +8 -11
  353. package/core/types/src/dns.ts +49 -0
  354. package/core/types/src/docs.ts +2 -0
  355. package/core/types/src/events.ts +1 -1
  356. package/core/types/src/git.ts +1 -1
  357. package/core/types/src/index.ts +10 -2
  358. package/core/types/src/library.ts +6 -1
  359. package/core/types/src/model.ts +46 -0
  360. package/core/types/src/notifications.ts +151 -117
  361. package/core/types/src/payments.ts +63 -0
  362. package/core/types/src/reactivity.ts +1 -3
  363. package/core/types/src/router.ts +30 -0
  364. package/core/types/src/search-engine.ts +56 -8
  365. package/core/types/src/ssg.ts +1 -1
  366. package/core/types/src/stacks.ts +203 -0
  367. package/core/types/src/ui.ts +1 -1
  368. package/core/ui/README.md +1 -1
  369. package/core/ui/build.config.ts +13 -0
  370. package/core/ui/node_modules/.bin/vue-tsc +4 -4
  371. package/core/ui/package.json +23 -20
  372. package/core/ui/src/index.ts +5 -2
  373. package/core/ui/src/unocss.config.ts +47 -0
  374. package/core/ui/src/unocss.ts +3 -3
  375. package/core/utils/build.config.ts +13 -0
  376. package/core/utils/node_modules/.bin/rimraf +4 -4
  377. package/core/utils/node_modules/.bin/semver +17 -0
  378. package/core/utils/package.json +45 -21
  379. package/core/utils/src/base.ts +11 -6
  380. package/core/utils/src/config.ts +97 -0
  381. package/core/utils/src/debounce.ts +1 -0
  382. package/core/utils/src/guards.ts +3 -3
  383. package/core/utils/src/helpers.ts +30 -22
  384. package/core/utils/src/index.ts +7 -4
  385. package/core/utils/src/is.ts +80 -11
  386. package/core/utils/src/promise.ts +1 -1
  387. package/core/utils/src/throttle.ts +45 -0
  388. package/core/validation/README.md +1 -1
  389. package/core/validation/build.config.ts +13 -0
  390. package/core/validation/package.json +13 -14
  391. package/core/validation/src/index.ts +26 -0
  392. package/docs/.vitepress/config.ts +9 -0
  393. package/docs/README.md +13 -0
  394. package/docs/node_modules/.bin/rimraf +17 -0
  395. package/docs/node_modules/.bin/vitepress +17 -0
  396. package/docs/package.json +46 -0
  397. package/package.json +75 -35
  398. package/pages/desktop/.gitignore +24 -0
  399. package/pages/desktop/README.md +73 -0
  400. package/{core/x-ray → pages/desktop}/index.html +1 -1
  401. package/pages/desktop/package.json +26 -0
  402. package/pages/desktop/public/favicon.svg +1 -0
  403. package/pages/desktop/src/.gitignore +3 -0
  404. package/pages/desktop/src/Cargo.lock +3599 -0
  405. package/pages/desktop/src/Cargo.toml +28 -0
  406. package/pages/desktop/src/build.rs +3 -0
  407. package/pages/desktop/src/icons/128x128.png +0 -0
  408. package/pages/desktop/src/icons/128x128@2x.png +0 -0
  409. package/pages/desktop/src/icons/32x32.png +0 -0
  410. package/pages/desktop/src/icons/Square107x107Logo.png +0 -0
  411. package/pages/desktop/src/icons/Square142x142Logo.png +0 -0
  412. package/pages/desktop/src/icons/Square150x150Logo.png +0 -0
  413. package/pages/desktop/src/icons/Square284x284Logo.png +0 -0
  414. package/pages/desktop/src/icons/Square30x30Logo.png +0 -0
  415. package/pages/desktop/src/icons/Square310x310Logo.png +0 -0
  416. package/pages/desktop/src/icons/Square44x44Logo.png +0 -0
  417. package/pages/desktop/src/icons/Square71x71Logo.png +0 -0
  418. package/pages/desktop/src/icons/Square89x89Logo.png +0 -0
  419. package/pages/desktop/src/icons/StoreLogo.png +0 -0
  420. package/pages/desktop/src/icons/icon.icns +0 -0
  421. package/pages/desktop/src/icons/icon.ico +0 -0
  422. package/pages/desktop/src/icons/icon.png +0 -0
  423. package/pages/desktop/src/src/main.rs +10 -0
  424. package/pages/desktop/src/tauri.conf.json +73 -0
  425. package/simple-git-hooks.cjs +1 -0
  426. package/tsconfig.json +33 -12
  427. package/vitest.config.ts +2 -2
  428. package/buddy/bin/stacks.mjs +0 -4
  429. package/buddy/build.config.ts +0 -17
  430. package/buddy/node_modules/.bin/only-allow +0 -17
  431. package/buddy/node_modules/.bin/tsc +0 -17
  432. package/buddy/node_modules/.bin/tsserver +0 -17
  433. package/buddy/node_modules/.bin/unbuild +0 -17
  434. package/buddy/package.json +0 -194
  435. package/buddy/src/cli.ts +0 -66
  436. package/buddy/src/commands/clean.ts +0 -20
  437. package/buddy/src/commands/update.ts +0 -115
  438. package/core/actions/node_modules/.bin/esno +0 -17
  439. package/core/actions/node_modules/.bin/mkdist +0 -17
  440. package/core/actions/node_modules/.bin/tsc +0 -17
  441. package/core/actions/node_modules/.bin/tsserver +0 -17
  442. package/core/actions/src/build-core.ts +0 -7
  443. package/core/actions/src/fix-lint-issues.ts +0 -4
  444. package/core/actions/src/generate-onboarding.ts +0 -3
  445. package/core/actions/src/update.ts +0 -149
  446. package/core/ai/node_modules/.bin/mkdist +0 -17
  447. package/core/ai/node_modules/.bin/tsc +0 -17
  448. package/core/ai/node_modules/.bin/tsserver +0 -17
  449. package/core/alias/node_modules/.bin/mkdist +0 -17
  450. package/core/alias/node_modules/.bin/tsc +0 -17
  451. package/core/alias/node_modules/.bin/tsserver +0 -17
  452. package/core/arrays/node_modules/.bin/mkdist +0 -17
  453. package/core/arrays/node_modules/.bin/tsc +0 -17
  454. package/core/arrays/node_modules/.bin/tsserver +0 -17
  455. package/core/auth/node_modules/.bin/mkdist +0 -17
  456. package/core/auth/node_modules/.bin/tsc +0 -17
  457. package/core/auth/node_modules/.bin/tsserver +0 -17
  458. package/core/build/node_modules/.bin/mkdist +0 -17
  459. package/core/build/node_modules/.bin/tsc +0 -17
  460. package/core/build/node_modules/.bin/tsserver +0 -17
  461. package/core/cache/node_modules/.bin/mkdist +0 -17
  462. package/core/cache/node_modules/.bin/tsc +0 -17
  463. package/core/cache/node_modules/.bin/tsserver +0 -17
  464. package/core/chat/node_modules/.bin/mkdist +0 -17
  465. package/core/chat/node_modules/.bin/tsc +0 -17
  466. package/core/chat/node_modules/.bin/tsserver +0 -17
  467. package/core/cli/node_modules/.bin/esno +0 -17
  468. package/core/cli/node_modules/.bin/mkdist +0 -17
  469. package/core/cloud/node_modules/.bin/mkdist +0 -17
  470. package/core/cloud/node_modules/.bin/tsc +0 -17
  471. package/core/cloud/node_modules/.bin/tsserver +0 -17
  472. package/core/collections/node_modules/.bin/mkdist +0 -17
  473. package/core/collections/node_modules/.bin/tsc +0 -17
  474. package/core/collections/node_modules/.bin/tsserver +0 -17
  475. package/core/config/node_modules/.bin/mkdist +0 -17
  476. package/core/config/node_modules/.bin/tsc +0 -17
  477. package/core/config/node_modules/.bin/tsserver +0 -17
  478. package/core/config/node_modules/.bin/unbuild +0 -17
  479. package/core/config/src/helpers.ts +0 -30
  480. package/core/dashboard/README.md +0 -74
  481. package/core/dashboard/node_modules/.bin/mkdist +0 -17
  482. package/core/database/node_modules/.bin/mkdist +0 -17
  483. package/core/database/node_modules/.bin/tsc +0 -17
  484. package/core/database/node_modules/.bin/tsserver +0 -17
  485. package/core/datetime/node_modules/.bin/mkdist +0 -17
  486. package/core/datetime/node_modules/.bin/tsc +0 -17
  487. package/core/datetime/node_modules/.bin/tsserver +0 -17
  488. package/core/desktop/node_modules/.bin/mkdist +0 -17
  489. package/core/desktop/node_modules/.bin/tsc +0 -17
  490. package/core/desktop/node_modules/.bin/tsserver +0 -17
  491. package/core/docs/node_modules/.bin/mkdist +0 -17
  492. package/core/docs/node_modules/.bin/tsc +0 -17
  493. package/core/docs/node_modules/.bin/tsserver +0 -17
  494. package/core/domains/node_modules/.bin/mkdist +0 -17
  495. package/core/domains/node_modules/.bin/tsc +0 -17
  496. package/core/domains/node_modules/.bin/tsserver +0 -17
  497. package/core/drivers/node_modules/.bin/mkdist +0 -17
  498. package/core/drivers/node_modules/.bin/tsc +0 -17
  499. package/core/drivers/node_modules/.bin/tsserver +0 -17
  500. package/core/drivers/src/index.ts +0 -10
  501. package/core/email/dist/utils/template.html +0 -8
  502. package/core/email/node_modules/.bin/mkdist +0 -17
  503. package/core/email/node_modules/.bin/tsc +0 -17
  504. package/core/email/node_modules/.bin/tsserver +0 -17
  505. package/core/error-handling/node_modules/.bin/mkdist +0 -17
  506. package/core/error-handling/node_modules/.bin/tsc +0 -17
  507. package/core/error-handling/node_modules/.bin/tsserver +0 -17
  508. package/core/events/node_modules/.bin/mkdist +0 -17
  509. package/core/events/node_modules/.bin/tsc +0 -17
  510. package/core/events/node_modules/.bin/tsserver +0 -17
  511. package/core/git/node_modules/.bin/mkdist +0 -17
  512. package/core/git/node_modules/.bin/tsc +0 -17
  513. package/core/git/node_modules/.bin/tsserver +0 -17
  514. package/core/health/node_modules/.bin/mkdist +0 -17
  515. package/core/health/node_modules/.bin/tsc +0 -17
  516. package/core/health/node_modules/.bin/tsserver +0 -17
  517. package/core/lint/node_modules/.bin/mkdist +0 -17
  518. package/core/lint/node_modules/.bin/tsc +0 -17
  519. package/core/lint/node_modules/.bin/tsserver +0 -17
  520. package/core/logging/debug-test.ts +0 -8
  521. package/core/logging/node_modules/.bin/mkdist +0 -17
  522. package/core/modules/node_modules/.bin/mkdist +0 -17
  523. package/core/modules/node_modules/.bin/tsc +0 -17
  524. package/core/modules/node_modules/.bin/tsserver +0 -17
  525. package/core/notifications/node_modules/.bin/mkdist +0 -17
  526. package/core/notifications/node_modules/.bin/tsc +0 -17
  527. package/core/notifications/node_modules/.bin/tsserver +0 -17
  528. package/core/notifications/node_modules/.bin/unbuild +0 -17
  529. package/core/objects/node_modules/.bin/mkdist +0 -17
  530. package/core/objects/node_modules/.bin/tsc +0 -17
  531. package/core/objects/node_modules/.bin/tsserver +0 -17
  532. package/core/pages/node_modules/.bin/mkdist +0 -17
  533. package/core/pages/node_modules/.bin/tsc +0 -17
  534. package/core/pages/node_modules/.bin/tsserver +0 -17
  535. package/core/path/node_modules/.bin/mkdist +0 -17
  536. package/core/path/node_modules/.bin/tsc +0 -17
  537. package/core/path/node_modules/.bin/tsserver +0 -17
  538. package/core/payments/node_modules/.bin/mkdist +0 -17
  539. package/core/payments/node_modules/.bin/tsc +0 -17
  540. package/core/payments/node_modules/.bin/tsserver +0 -17
  541. package/core/push/node_modules/.bin/mkdist +0 -17
  542. package/core/push/node_modules/.bin/tsc +0 -17
  543. package/core/push/node_modules/.bin/tsserver +0 -17
  544. package/core/queue/node_modules/.bin/mkdist +0 -17
  545. package/core/queue/node_modules/.bin/tsc +0 -17
  546. package/core/queue/node_modules/.bin/tsserver +0 -17
  547. package/core/realtime/node_modules/.bin/mkdist +0 -17
  548. package/core/realtime/node_modules/.bin/tsc +0 -17
  549. package/core/realtime/node_modules/.bin/tsserver +0 -17
  550. package/core/router/node_modules/.bin/mkdist +0 -17
  551. package/core/router/node_modules/.bin/tsc +0 -17
  552. package/core/router/node_modules/.bin/tsserver +0 -17
  553. package/core/search-engine/node_modules/.bin/mkdist +0 -17
  554. package/core/search-engine/node_modules/.bin/tsc +0 -17
  555. package/core/search-engine/node_modules/.bin/tsserver +0 -17
  556. package/core/security/node_modules/.bin/mkdist +0 -17
  557. package/core/security/node_modules/.bin/tsc +0 -17
  558. package/core/security/node_modules/.bin/tsserver +0 -17
  559. package/core/server/node_modules/.bin/mkdist +0 -17
  560. package/core/server/node_modules/.bin/tsc +0 -17
  561. package/core/server/node_modules/.bin/tsserver +0 -17
  562. package/core/sms/node_modules/.bin/mkdist +0 -17
  563. package/core/sms/node_modules/.bin/tsc +0 -17
  564. package/core/sms/node_modules/.bin/tsserver +0 -17
  565. package/core/storage/node_modules/.bin/mkdist +0 -17
  566. package/core/storage/node_modules/.bin/tsc +0 -17
  567. package/core/storage/node_modules/.bin/tsserver +0 -17
  568. package/core/strings/node_modules/.bin/mkdist +0 -17
  569. package/core/strings/node_modules/.bin/tsc +0 -17
  570. package/core/strings/node_modules/.bin/tsserver +0 -17
  571. package/core/strings/node_modules/.bin/unbuild +0 -17
  572. package/core/tables/README.md +0 -109
  573. package/core/tables/examples/vue/App.vue +0 -12
  574. package/core/tables/examples/vue/favicon.png +0 -0
  575. package/core/tables/examples/vue/index.html +0 -20
  576. package/core/tables/examples/web/favicon.png +0 -0
  577. package/core/tables/examples/web/index.html +0 -13
  578. package/core/tables/index.html +0 -13
  579. package/core/tables/node_modules/.bin/mkdist +0 -17
  580. package/core/tables/node_modules/.bin/tsc +0 -17
  581. package/core/tables/node_modules/.bin/tsserver +0 -17
  582. package/core/tables/node_modules/.bin/unbuild +0 -17
  583. package/core/tables/node_modules/.bin/vite +0 -17
  584. package/core/tables/package.json +0 -64
  585. package/core/tables/src/App.vue +0 -23
  586. package/core/tables/src/components/Demo.vue +0 -89
  587. package/core/tables/src/components/README.md +0 -111
  588. package/core/tables/src/components/Table.vue +0 -342
  589. package/core/tables/src/components/TableBody.vue +0 -33
  590. package/core/tables/src/components/TableCellActionItems.vue +0 -9
  591. package/core/tables/src/components/TableFilters.vue +0 -703
  592. package/core/tables/src/components/TableHead.vue +0 -87
  593. package/core/tables/src/components/TablePagination.vue +0 -146
  594. package/core/tables/src/components/TableRow.vue +0 -78
  595. package/core/tables/src/components/TableSearch.vue +0 -38
  596. package/core/tables/src/components/Tooltip.vue +0 -10
  597. package/core/tables/src/docs/index.md +0 -0
  598. package/core/tables/src/functions/README.md +0 -8
  599. package/core/tables/src/functions/dark.ts +0 -3
  600. package/core/tables/src/functions/index.ts +0 -2
  601. package/core/tables/src/functions/table.ts +0 -207
  602. package/core/tables/src/main.js +0 -4
  603. package/core/tables/vite.config.ts +0 -26
  604. package/core/testing/node_modules/.bin/mkdist +0 -17
  605. package/core/types/node_modules/.bin/mkdist +0 -17
  606. package/core/types/node_modules/.bin/tsc +0 -17
  607. package/core/types/node_modules/.bin/tsserver +0 -17
  608. package/core/ui/node_modules/.bin/mkdist +0 -17
  609. package/core/ui/node_modules/.bin/tsc +0 -17
  610. package/core/ui/node_modules/.bin/tsserver +0 -17
  611. package/core/utils/node_modules/.bin/esno +0 -17
  612. package/core/utils/node_modules/.bin/mkdist +0 -17
  613. package/core/utils/node_modules/.bin/tsc +0 -17
  614. package/core/utils/node_modules/.bin/tsserver +0 -17
  615. package/core/utils/src/vendor.ts +0 -1
  616. package/core/validation/node_modules/.bin/mkdist +0 -17
  617. package/core/validation/node_modules/.bin/tsc +0 -17
  618. package/core/validation/node_modules/.bin/tsserver +0 -17
  619. package/core/x-ray/node_modules/.bin/mkdist +0 -17
  620. package/core/x-ray/node_modules/.bin/tsc +0 -17
  621. package/core/x-ray/node_modules/.bin/tsserver +0 -17
  622. package/core/x-ray/routes/index.ts +0 -19
  623. package/core/x-ray/src/client.ts +0 -14
  624. package/core/x-ray/src/desktop/api/nitro.config.ts +0 -18
  625. package/core/x-ray/src/desktop/api/routes/api/logs.ts +0 -7
  626. package/core/x-ray/src/desktop/api/routes/api/store-logs.ts +0 -22
  627. package/core/x-ray/src/desktop/api/src/types.ts +0 -7
  628. package/core/x-ray/src/desktop/api/storage/index.ts +0 -7
  629. package/core/x-ray/src/desktop/app.vue +0 -376
  630. package/core/x-ray/src/desktop/functions/http.ts +0 -26
  631. package/core/x-ray/src/desktop/functions/types.ts +0 -7
  632. package/core/x-ray/src/desktop/main.ts +0 -14
  633. package/core/x-ray/src/desktop/modules/counter/mod.vue +0 -44
  634. package/core/x-ray/src/desktop/modules/fetcher/mod.vue +0 -63
  635. package/core/x-ray/src/desktop/plugins/unified/unified-app.ts +0 -5
  636. package/core/x-ray/src/desktop/plugins/unified/unified-styles.scss +0 -0
  637. package/core/x-ray/src/desktop/services/http.ts +0 -45
  638. package/core/x-ray/src/desktop/styles/app.scss +0 -0
  639. package/core/x-ray/src/http.ts +0 -26
  640. package/core/x-ray/src/index.ts +0 -42
  641. package/core/x-ray/src/ray.config.js +0 -28
  642. package/core/x-ray/src/types.ts +0 -8
  643. package/examples/vue/App.vue +0 -12
  644. package/examples/vue/favicon.png +0 -0
  645. package/examples/vue/index.html +0 -20
  646. package/examples/web/favicon.png +0 -0
  647. package/examples/web/index.html +0 -13
  648. package/functions/package.json +0 -41
  649. package/pages/node_modules/.bin/mkdist +0 -17
  650. package/pages/node_modules/.bin/tsc +0 -17
  651. package/pages/node_modules/.bin/tsserver +0 -17
  652. package/pages/src/index.ts +0 -19
  653. /package/core/actions/src/{build-component-libs.ts → build/component-libs.ts} +0 -0
  654. /package/core/actions/src/{build-stacks.ts → build/stacks.ts} +0 -0
  655. /package/core/actions/src/{dev-components.ts → dev/components.ts} +0 -0
  656. /package/core/actions/src/{generate-settings.ts → generate/settings.ts} +0 -0
  657. /package/core/actions/src/{lint-fix.ts → lint/fix.ts} +0 -0
  658. /package/core/actions/src/{lint.ts → lint/index.ts} +0 -0
  659. /package/core/actions/src/{test-coverage.ts → test/coverage.ts} +0 -0
  660. /package/core/actions/src/{test-feature.ts → test/feature.ts} +0 -0
  661. /package/core/actions/src/{test-ui.ts → test/ui.ts} +0 -0
  662. /package/core/actions/src/{test-unit.ts → test/unit.ts} +0 -0
  663. /package/core/{dashboard/src/index.ts → actions/src/upgrade/dependencies.ts} +0 -0
  664. /package/core/{tables/src/cli/index.ts → analytics/src/drivers/fathom.ts} +0 -0
  665. /package/core/{tables/src/config/tables.ts → analytics/src/index.ts} +0 -0
  666. /package/core/{dashboard → analytics}/tests/example.test.ts +0 -0
  667. /package/{buddy → core/buddy}/art/social.png +0 -0
  668. /package/{netlify.toml → core/cloud/netlify.toml} +0 -0
  669. /package/core/{drivers → development}/tests/example.test.ts +0 -0
  670. /package/core/{tables → faker}/tests/example.test.ts +0 -0
  671. /package/core/{x-ray → orm}/tests/example.test.ts +0 -0
  672. /package/{pages → core/query-builder}/tests/example.test.ts +0 -0
  673. /package/pages/{App.vue → web/App.vue} +0 -0
  674. /package/pages/{index.html → web/index.html} +0 -0
  675. /package/pages/{main.ts → web/main.ts} +0 -0
  676. /package/pages/{public → web/public}/_headers +0 -0
  677. /package/pages/{public → web/public}/favicon-dark.svg +0 -0
  678. /package/pages/{public → web/public}/favicon.svg +0 -0
  679. /package/pages/{public → web/public}/pwa-192x192.png +0 -0
  680. /package/pages/{public → web/public}/pwa-512x512.png +0 -0
  681. /package/pages/{public → web/public}/safari-pinned-tab.svg +0 -0
  682. /package/pages/{styles → web/styles}/main.css +0 -0
  683. /package/pages/{styles → web/styles}/markdown.css +0 -0
@@ -0,0 +1,56 @@
1
+ export {}
2
+ // import { slug as slugify } from '@stacksjs/strings'
3
+ // import type { ColumnOptions, Model } from '@stacksjs/types'
4
+ // import { client as DatabaseClient } from '@stacksjs/database'
5
+
6
+ // const database = new DatabaseClient()
7
+
8
+ // export function generateSlug(model: Model, column: string, text: string): string {
9
+ // const field: ColumnOptions | undefined = model.columns.find((f: ColumnOptions) => f.name === column)
10
+ // if (!field)
11
+ // throw new Error(`Invalid column name: ${column}`)
12
+
13
+ // const fieldValue = text || ''
14
+ // const slug = slugify(fieldValue, { lower: true })
15
+
16
+ // if (field.unique) {
17
+ // let uniqueSlug = slug
18
+ // let count = 0
19
+ // while (model.records.some(record => record[column] === uniqueSlug)) {
20
+ // count++
21
+ // uniqueSlug = `${slug}-${count}`
22
+ // }
23
+ // return uniqueSlug
24
+ // }
25
+
26
+ // return slug
27
+ // }
28
+
29
+ // async function addSlugColumn(modelName: string, columnName: string): Promise<void> {
30
+ // const model = (database as any)[modelName]
31
+ // const fields = model._schema.fields
32
+
33
+ // const originalField = fields.find((field: any) => field.dbName === columnName)
34
+
35
+ // const slugField = {
36
+ // name: `${columnName}_slug`,
37
+ // type: 'String',
38
+ // unique: originalField.unique || false,
39
+ // required: originalField.required || false,
40
+ // default: '',
41
+ // }
42
+
43
+ // await database.$executeRaw(`ALTER TABLE "${modelName}" ADD COLUMN "${columnName}_slug" VARCHAR(255)`)
44
+
45
+ // const records = await model.findMany()
46
+
47
+ // for (const record of records) {
48
+ // const originalValue = record[columnName]
49
+ // const slugValue = slugify(originalValue)
50
+ // await model.update({ where: { id: record.id }, data: { [`${columnName}_slug`]: slugValue } })
51
+ // }
52
+ // }
53
+
54
+ // export {
55
+ // generateSlug as slug,
56
+ // }
@@ -0,0 +1,7 @@
1
+ import { assert, describe, test } from 'vitest'
2
+
3
+ describe('example test', () => {
4
+ test('assert', () => {
5
+ assert.equal(1, 1)
6
+ })
7
+ })
@@ -16,6 +16,7 @@ You may now use it in your project:
16
16
 
17
17
  ```ts
18
18
  import * as sms from '@stacksjs/sms'
19
+
19
20
  /* Then choose a driver. E.g for twilio */
20
21
  const notification = sms.twilio
21
22
 
@@ -107,7 +108,7 @@ pnpm test
107
108
 
108
109
  Please see our [releases](https://github.com/stacksjs/stacks/releases) page for more information on what has changed recently.
109
110
 
110
- ## 💪🏼 Contributing
111
+ ## 🚜 Contributing
111
112
 
112
113
  Please review the [Contributing Guide](https://github.com/stacksjs/contributing) for details.
113
114
 
@@ -0,0 +1,13 @@
1
+ import { defineBuildConfig } from 'unbuild'
2
+
3
+ export default defineBuildConfig({
4
+ entries: [
5
+ {
6
+ builder: 'mkdist',
7
+ input: './src/',
8
+ outDir: './dist/',
9
+ },
10
+ ],
11
+
12
+ declaration: true,
13
+ })
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/sms",
3
3
  "type": "module",
4
- "version": "0.51.0",
5
- "packageManager": "pnpm@7.26.3",
4
+ "version": "0.52.0",
5
+ "packageManager": "pnpm@8.5.1",
6
6
  "description": "The Stacks SMS integration. Painlessly create & manage your inboxes, templates, and send sms.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -28,7 +28,12 @@
28
28
  "termii",
29
29
  "twilio"
30
30
  ],
31
- "main": "dist/index.mjs",
31
+ "exports": {
32
+ ".": {
33
+ "types": "./dist/index.d.ts",
34
+ "import": "./dist/index.mjs"
35
+ }
36
+ },
32
37
  "module": "dist/index.mjs",
33
38
  "types": "dist/index.d.ts",
34
39
  "contributors": [
@@ -38,35 +43,30 @@
38
43
  "dist",
39
44
  "README.md"
40
45
  ],
41
- "engines": {
42
- "node": ">=v18.14.0",
43
- "pnpm": ">=7.26.3"
44
- },
45
46
  "scripts": {
46
- "build": "mkdist -d",
47
- "dev": "mkdist -d",
47
+ "build": "unbuild",
48
+ "dev": "unbuild --stub",
48
49
  "prepublishOnly": "pnpm run build",
49
50
  "typecheck": "tsc --noEmit"
50
51
  },
51
52
  "peerDependencies": {
52
- "@novu/gupshup": "^0.11.0",
53
- "@novu/nexmo": "^0.11.0",
54
- "@novu/node": "^0.11.0",
55
- "@novu/plivo": "^0.11.0",
56
- "@novu/sms77": "^0.11.0",
57
- "@novu/sns": "^0.11.0",
58
- "@novu/stateless": "^0.11.0",
59
- "@novu/telnyx": "^0.11.0",
60
- "@novu/termii": "^0.11.0",
61
- "@novu/twilio": "^0.11.0",
53
+ "@novu/gupshup": "^0.14.0",
54
+ "@novu/nexmo": "^0.14.0",
55
+ "@novu/node": "^0.14.0",
56
+ "@novu/plivo": "^0.14.0",
57
+ "@novu/sms77": "^0.14.0",
58
+ "@novu/sns": "^0.14.0",
59
+ "@novu/stateless": "^0.14.0",
60
+ "@novu/telnyx": "^0.14.0",
61
+ "@novu/termii": "^0.14.0",
62
+ "@novu/twilio": "^0.14.0",
62
63
  "@stacksjs/cli": "workspace:*",
63
64
  "@stacksjs/config": "workspace:*",
64
65
  "@stacksjs/error-handling": "workspace:*",
65
66
  "@stacksjs/types": "workspace:*"
66
67
  },
67
68
  "devDependencies": {
68
- "@stacksjs/testing": "workspace:*",
69
- "mkdist": "^1.1.0",
70
- "typescript": "^4.9.5"
69
+ "@stacksjs/config": "workspace:*",
70
+ "@stacksjs/development": "workspace:*"
71
71
  }
72
72
  }
@@ -4,11 +4,11 @@ import type { SmsOptions } from '@stacksjs/types'
4
4
  import { ResultAsync } from '@stacksjs/error-handling'
5
5
  import { notification } from '@stacksjs/config'
6
6
 
7
- const env = notification.sms.gupshup
7
+ const env = notification.sms?.gupshup
8
8
 
9
9
  const provider = new GupshupSmsProvider({
10
- userId: env.user,
11
- password: env.password,
10
+ userId: env?.user || '',
11
+ password: env?.password || '',
12
12
  })
13
13
 
14
14
  function send(options: SmsOptions) {
@@ -4,12 +4,12 @@ import type { SmsOptions } from '@stacksjs/types'
4
4
  import { ResultAsync } from '@stacksjs/error-handling'
5
5
  import { notification } from '@stacksjs/config'
6
6
 
7
- const env = notification.sms.nexmo
7
+ const env = notification.sms?.nexmo
8
8
 
9
9
  const provider = new NexmoSmsProvider({
10
- apiKey: env.key,
11
- apiSecret: env.secret,
12
- from: env.from,
10
+ apiKey: env?.key || '',
11
+ apiSecret: env?.secret || '',
12
+ from: env?.from || '',
13
13
  })
14
14
 
15
15
  function send(options: SmsOptions) {
@@ -4,12 +4,12 @@ import type { SmsOptions } from '@stacksjs/types'
4
4
  import { ResultAsync } from '@stacksjs/error-handling'
5
5
  import { notification } from '@stacksjs/config'
6
6
 
7
- const env = notification.sms.plivo
7
+ const env = notification.sms?.plivo
8
8
 
9
9
  const provider = new PlivoSmsProvider({
10
- accountSid: env.sid,
11
- authToken: env.authToken,
12
- from: env.from,
10
+ accountSid: env?.sid,
11
+ authToken: env?.authToken,
12
+ from: env?.from,
13
13
  })
14
14
 
15
15
  function send(options: SmsOptions) {
@@ -4,11 +4,11 @@ import type { SmsOptions } from '@stacksjs/types'
4
4
  import { ResultAsync } from '@stacksjs/error-handling'
5
5
  import { notification } from '@stacksjs/config'
6
6
 
7
- const env = notification.sms.sms77
7
+ const env = notification.sms?.sms77
8
8
 
9
9
  const provider = new Sms77SmsProvider({
10
- apiKey: env.key,
11
- from: env.from,
10
+ apiKey: env?.key,
11
+ from: env?.from,
12
12
  })
13
13
 
14
14
  function send(options: SmsOptions) {
@@ -4,12 +4,12 @@ import type { SmsOptions } from '@stacksjs/types'
4
4
  import { ResultAsync } from '@stacksjs/error-handling'
5
5
  import { notification } from '@stacksjs/config'
6
6
 
7
- const env = notification.sms.sns
7
+ const env = notification.sms?.sns
8
8
 
9
9
  const provider = new SNSSmsProvider({
10
- region: env.region,
11
- accessKeyId: env.key,
12
- secretAccessKey: env.secret,
10
+ region: env?.region,
11
+ accessKeyId: env?.key,
12
+ secretAccessKey: env?.secret,
13
13
  })
14
14
 
15
15
  function send(options: SmsOptions) {
@@ -4,12 +4,12 @@ import type { SmsOptions } from '@stacksjs/types'
4
4
  import { ResultAsync } from '@stacksjs/error-handling'
5
5
  import { notification } from '@stacksjs/config'
6
6
 
7
- const env = notification.sms.telnyx
7
+ const env = notification.sms?.telnyx
8
8
 
9
9
  const provider = new TelnyxSmsProvider({
10
- apiKey: env.key,
11
- messageProfileId: env.messageProfileId,
12
- from: env.from,
10
+ apiKey: env?.key,
11
+ messageProfileId: env?.messageProfileId,
12
+ from: env?.from,
13
13
  })
14
14
 
15
15
  function send(options: SmsOptions) {
@@ -4,11 +4,11 @@ import type { SmsOptions } from '@stacksjs/types'
4
4
  import { ResultAsync } from '@stacksjs/error-handling'
5
5
  import { notification } from '@stacksjs/config'
6
6
 
7
- const env = notification.sms.termii
7
+ const env = notification.sms?.termii
8
8
 
9
9
  const provider = new TermiiSmsProvider({
10
- apiKey: env.key,
11
- from: env.from,
10
+ apiKey: env?.key,
11
+ from: env?.from,
12
12
  })
13
13
 
14
14
  function send(options: SmsOptions) {
@@ -4,12 +4,12 @@ import type { SmsOptions } from '@stacksjs/types'
4
4
  import { ResultAsync } from '@stacksjs/error-handling'
5
5
  import { notification } from '@stacksjs/config'
6
6
 
7
- const env = notification.sms.twilio
7
+ const env = notification.sms?.twilio
8
8
 
9
9
  const provider = new TwilioSmsProvider({
10
- accountSid: env.sid,
11
- authToken: env.authToken,
12
- from: env.from,
10
+ accountSid: env?.sid,
11
+ authToken: env?.authToken,
12
+ from: env?.from,
13
13
  })
14
14
 
15
15
  function send(options: SmsOptions) {
@@ -53,7 +53,7 @@ pnpm test
53
53
 
54
54
  Please see our [releases](https://github.com/stacksjs/stacks/releases) page for more information on what has changed recently.
55
55
 
56
- ## 💪🏼 Contributing
56
+ ## 🚜 Contributing
57
57
 
58
58
  Please review the [Contributing Guide](https://github.com/stacksjs/contributing) for details.
59
59
 
@@ -0,0 +1,13 @@
1
+ import { defineBuildConfig } from 'unbuild'
2
+
3
+ export default defineBuildConfig({
4
+ entries: [
5
+ {
6
+ builder: 'mkdist',
7
+ input: './src/',
8
+ outDir: './dist/',
9
+ },
10
+ ],
11
+
12
+ declaration: true,
13
+ })
@@ -1,11 +1,17 @@
1
1
  {
2
2
  "name": "@stacksjs/storage",
3
3
  "type": "module",
4
- "version": "0.51.0",
5
- "packageManager": "pnpm@7.26.3",
4
+ "version": "0.52.0",
5
+ "packageManager": "pnpm@8.5.1",
6
6
  "description": "The Stacks file system.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/index.d.ts",
12
+ "import": "./dist/index.mjs"
13
+ }
14
+ },
9
15
  "funding": "https://github.com/sponsors/chrisbbreuer",
10
16
  "homepage": "https://github.com/stacksjs/stacks/tree/main/.stacks/core/storage#readme",
11
17
  "repository": {
@@ -36,27 +42,21 @@
36
42
  "dist",
37
43
  "README.md"
38
44
  ],
39
- "engines": {
40
- "node": ">=v18.14.0",
41
- "pnpm": ">=7.26.3"
42
- },
43
45
  "scripts": {
44
- "build": "mkdist -d",
45
- "dev": "mkdist -d",
46
+ "build": "unbuild",
47
+ "dev": "unbuild --stub",
46
48
  "prepublishOnly": "pnpm run build",
47
49
  "typecheck": "tsc --noEmit"
48
50
  },
49
51
  "peerDependencies": {
50
52
  "@stacksjs/arrays": "workspace:*",
53
+ "@stacksjs/path": "workspace:*",
51
54
  "@stacksjs/types": "workspace:*",
52
55
  "@stacksjs/utils": "workspace:*",
53
- "fs-extra": "^11.1.0",
54
- "unstorage": "^1.0.1"
56
+ "fs-extra": "^11.1.1",
57
+ "unstorage": "^1.6.0"
55
58
  },
56
59
  "devDependencies": {
57
- "@stacksjs/path": "workspace:*",
58
- "@stacksjs/testing": "workspace:*",
59
- "mkdist": "^1.1.0",
60
- "typescript": "^4.9.5"
60
+ "@stacksjs/development": "workspace:*"
61
61
  }
62
62
  }
@@ -181,9 +181,9 @@ export function createFolder(dir: string): Promise<void> {
181
181
  })
182
182
  }
183
183
 
184
- export function updateConfigFile(filePath: string, newConfig: Array<string>): Promise<void> {
184
+ export function updateConfigFile(filePath: string, newConfig: Record<string, unknown>): Promise<void> {
185
185
  return new Promise((resolve, reject) => {
186
- let config = JSON.parse(fs.readFileSync(filePath, 'utf8'));
186
+ const config = JSON.parse(fs.readFileSync(filePath, 'utf8')) as Record<string, unknown>;
187
187
 
188
188
  for (const key in newConfig) {
189
189
  config[key] = newConfig[key];
@@ -191,10 +191,11 @@ export function updateConfigFile(filePath: string, newConfig: Array<string>): Pr
191
191
 
192
192
  fs.writeFileSync(filePath, JSON.stringify(config, null, 2));
193
193
 
194
- return config
194
+ resolve();
195
195
  })
196
196
  }
197
197
 
198
+
198
199
  export const filesystem = {
199
200
  _dirname,
200
201
  readJsonFile,
@@ -18,19 +18,20 @@ Now, you can use it in your project:
18
18
  ```js
19
19
  import {
20
20
  // pluralize
21
+ isPlural, isSingular, singular, plural,
21
22
  addIrregularRule, addPluralRule, addSingularRule, addUncountableRule,
22
23
 
23
24
  // case
24
- camelCase, capitalCase, constantCase, dotCase,
25
- headerCase, isPlural, isSingular, kebabCase, noCase, paramCase, pascalCase,
26
- pathCase, plural, sentenceCase, singular, snakeCase,
25
+ camelCase, capitalCase, constantCase, dotCase
26
+ headerCase, kebabCase, noCase, paramCase, pascalCase,
27
+ pathCase, sentenceCase , snakeCase, titleCase
27
28
 
28
29
  // validation
29
30
  isEmail, isStrongPassword, isAlphanumeric, validateUsername, isURL, isMobilePhone, isAlpha, isPostalCode, isDate, isNumeric, isBoolean, isHexColor, isHexadecimal, isBase64, isUUID, isJSON, isCreditCard, isISBN, isIP, isIPRange, isMACAddress, isLatLong, isLatitude, isLongitude, isCurrency, isDataURI, isMimeType, isJWT, isMongoId, isAscii, isBase32, isByteLength, isFQDN, isFullWidth, isHalfWidth, isHash, isHSL, isIBAN, isIdentityCard, isISIN, isISO8601, isISRC, isISSN, isISO31661Alpha2, isISO31661Alpha3
30
31
  } from '@stacksjs/strings'
31
32
 
32
- console.log(camelCase('hello world')) // helloWorld
33
- console.log(plural('dog')) // dogs
33
+ console.log(camelCase('hello world')) //=> "helloWorld"
34
+ console.log(plural('dog')) //=> "dogs"
34
35
  ```
35
36
 
36
37
  To view the full documentation, please visit [https://stacksjs.dev/strings](https://stacksjs.dev/strings).
@@ -45,7 +46,7 @@ pnpm test
45
46
 
46
47
  Please see our [releases](https://github.com/stacksjs/stacks/releases) page for more information on what has changed recently.
47
48
 
48
- ## 💪🏼 Contributing
49
+ ## 🚜 Contributing
49
50
 
50
51
  Please review the [Contributing Guide](https://github.com/stacksjs/contributing) for details.
51
52
 
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@stacksjs/strings",
3
3
  "type": "module",
4
- "version": "0.51.0",
5
- "packageManager": "pnpm@7.26.3",
4
+ "version": "0.52.0",
5
+ "packageManager": "pnpm@8.5.1",
6
6
  "description": "The Stacks string utilities.",
7
7
  "author": "Chris Breuer",
8
8
  "license": "MIT",
@@ -34,7 +34,12 @@
34
34
  "functions",
35
35
  "stacks"
36
36
  ],
37
- "main": "dist/index.mjs",
37
+ "exports": {
38
+ ".": {
39
+ "types": "./dist/index.d.ts",
40
+ "import": "./dist/index.mjs"
41
+ }
42
+ },
38
43
  "module": "dist/index.mjs",
39
44
  "types": "dist/index.d.ts",
40
45
  "contributors": [
@@ -44,10 +49,6 @@
44
49
  "dist",
45
50
  "README.md"
46
51
  ],
47
- "engines": {
48
- "node": ">=v18.14.0",
49
- "pnpm": ">=7.26.3"
50
- },
51
52
  "scripts": {
52
53
  "build": "unbuild",
53
54
  "dev": "unbuild --stub",
@@ -58,15 +59,14 @@
58
59
  "@stacksjs/alias": "workspace:*",
59
60
  "@stacksjs/types": "workspace:*",
60
61
  "@types/pluralize": "^0.0.29",
61
- "@types/validator": "^13.7.11",
62
+ "@types/validator": "^13.7.17",
62
63
  "change-case": "^4.1.2",
63
64
  "pluralize": "^8.0.0",
65
+ "slugify": "^1.6.6",
66
+ "title-case": "^3.0.3",
64
67
  "validator": "^13.9.0"
65
68
  },
66
69
  "devDependencies": {
67
- "@stacksjs/testing": "workspace:*",
68
- "mkdist": "^1.1.0",
69
- "typescript": "^4.9.5",
70
- "unbuild": "^1.1.1"
70
+ "@stacksjs/development": "workspace:*"
71
71
  }
72
72
  }
@@ -12,3 +12,4 @@ export {
12
12
  sentenceCase,
13
13
  snakeCase,
14
14
  } from 'change-case'
15
+ export { titleCase } from 'title-case'
@@ -1 +1,5 @@
1
- export { plural, singular, isPlural, isSingular, addPluralRule, addSingularRule, addIrregularRule, addUncountableRule } from 'pluralize'
1
+ import pluralize from 'pluralize'
2
+
3
+ const { plural, singular, isPlural, isSingular, addPluralRule, addSingularRule, addIrregularRule, addUncountableRule } = pluralize
4
+
5
+ export { plural, singular, isPlural, isSingular, addPluralRule, addSingularRule, addIrregularRule, addUncountableRule }
@@ -1,7 +1,26 @@
1
+ import slugify from 'slugify'
2
+
3
+ interface SlugOptions {
4
+ replacement?: string
5
+ remove?: RegExp
6
+ lower?: boolean
7
+ strict?: boolean
8
+ locale?: string
9
+ trim?: boolean
10
+ }
11
+
12
+ // port from nanoid
13
+ // https://github.com/ai/nanoid
14
+ const urlAlphabet = 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict'
15
+
1
16
  /**
2
17
  * Replace backslash to slash
3
18
  *
4
19
  * @category String
20
+ * @example
21
+ * ```
22
+ * slash('C:\\Users\\Chris') => 'C:/Users/Chris'
23
+ * ```
5
24
  */
6
25
  export function slash(str: string) {
7
26
  return str.replace(/\\/g, '/')
@@ -11,6 +30,10 @@ export function slash(str: string) {
11
30
  * Ensure prefix of a string
12
31
  *
13
32
  * @category String
33
+ * @example
34
+ * ```
35
+ * ensurePrefix('https://', 'google.com') => 'https://google.com'
36
+ * ensurePrefix('https://', 'http://google.com') => 'https://google.com'
14
37
  */
15
38
  export function ensurePrefix(prefix: string, str: string) {
16
39
  if (!str.startsWith(prefix))
@@ -22,6 +45,11 @@ export function ensurePrefix(prefix: string, str: string) {
22
45
  * Ensure suffix of a string
23
46
  *
24
47
  * @category String
48
+ * @example
49
+ * ```
50
+ * ensureSuffix('.js', 'index') => 'index.js'
51
+ * ensureSuffix('.js', 'index.js') => 'index.js'
52
+ * ```
25
53
  */
26
54
  export function ensureSuffix(suffix: string, str: string) {
27
55
  if (!str.endsWith(suffix))
@@ -35,8 +63,7 @@ export function ensureSuffix(suffix: string, str: string) {
35
63
  * @category String
36
64
  * @example
37
65
  * ```
38
- * const result = template(
39
- * 'Hello {0}! My name is {1}.',
66
+ * const result = template('Hello {0}! My name is {1}.',
40
67
  * 'Buddy',
41
68
  * 'Chris'
42
69
  * ) // Hello Buddy! My name is Chris.
@@ -51,9 +78,6 @@ export function template(str: string, ...args: any[]): string {
51
78
  })
52
79
  }
53
80
 
54
- // port from nanoid
55
- // https://github.com/ai/nanoid
56
- const urlAlphabet = 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict'
57
81
  /**
58
82
  * Generate a random string
59
83
  * @category String
@@ -72,9 +96,27 @@ export function randomStr(size = 16, dict = urlAlphabet) {
72
96
  * @category string
73
97
  * @example
74
98
  * ```
75
- * capitalize('hello') => 'Hello'
99
+ * capitalize('hello world') => 'Hello world'
76
100
  * ```
77
101
  */
78
102
  export function capitalize(str: string): string {
79
103
  return str[0].toUpperCase() + str.slice(1).toLowerCase()
80
104
  }
105
+
106
+ /**
107
+ * Slugify a string
108
+ * @category string
109
+ * @example
110
+ * ```
111
+ * slug('Hello World') => 'hello-world'
112
+ * ```
113
+ */
114
+ export function slug(str: string, options?: SlugOptions): string {
115
+ if (options)
116
+ return slugify(str, options)
117
+
118
+ return slugify(str, {
119
+ lower: true,
120
+ strict: true,
121
+ })
122
+ }
@@ -38,7 +38,7 @@ pnpm test
38
38
 
39
39
  Please see our [releases](https://github.com/stacksjs/stacks/releases) page for more information on what has changed recently.
40
40
 
41
- ## 💪🏼 Contributing
41
+ ## 🚜 Contributing
42
42
 
43
43
  Please review the [Contributing Guide](https://github.com/stacksjs/contributing) for details.
44
44
 
@@ -0,0 +1,13 @@
1
+ import { defineBuildConfig } from 'unbuild'
2
+
3
+ export default defineBuildConfig({
4
+ entries: [
5
+ {
6
+ builder: 'mkdist',
7
+ input: './src/',
8
+ outDir: './dist/',
9
+ },
10
+ ],
11
+
12
+ declaration: true,
13
+ })
@@ -6,12 +6,12 @@ case `uname` in
6
6
  esac
7
7
 
8
8
  if [ -z "$NODE_PATH" ]; then
9
- export NODE_PATH="/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
9
+ export NODE_PATH="/home/runner/work/stacks/stacks/node_modules/.pnpm/@playwright+test@1.33.0/node_modules/@playwright/test/node_modules:/home/runner/work/stacks/stacks/node_modules/.pnpm/@playwright+test@1.33.0/node_modules/@playwright/node_modules:/home/runner/work/stacks/stacks/node_modules/.pnpm/@playwright+test@1.33.0/node_modules:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
10
10
  else
11
- export NODE_PATH="$NODE_PATH:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
11
+ export NODE_PATH="/home/runner/work/stacks/stacks/node_modules/.pnpm/@playwright+test@1.33.0/node_modules/@playwright/test/node_modules:/home/runner/work/stacks/stacks/node_modules/.pnpm/@playwright+test@1.33.0/node_modules/@playwright/node_modules:/home/runner/work/stacks/stacks/node_modules/.pnpm/@playwright+test@1.33.0/node_modules:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules:$NODE_PATH"
12
12
  fi
13
13
  if [ -x "$basedir/node" ]; then
14
- exec "$basedir/node" "$basedir/../../../../../node_modules/.pnpm/@playwright+test@1.30.0/node_modules/@playwright/test/cli.js" "$@"
14
+ exec "$basedir/node" "$basedir/../../../../../node_modules/.pnpm/@playwright+test@1.33.0/node_modules/@playwright/test/cli.js" "$@"
15
15
  else
16
- exec node "$basedir/../../../../../node_modules/.pnpm/@playwright+test@1.30.0/node_modules/@playwright/test/cli.js" "$@"
16
+ exec node "$basedir/../../../../../node_modules/.pnpm/@playwright+test@1.33.0/node_modules/@playwright/test/cli.js" "$@"
17
17
  fi