stacks 0.40.0 → 0.44.9

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 (540) hide show
  1. package/.gitignore +12 -0
  2. package/README.md +369 -27
  3. package/auto-imports.d.ts +862 -0
  4. package/buddy/README.md +414 -0
  5. package/{bin → buddy/bin}/stacks.mjs +0 -0
  6. package/buddy/build.config.ts +17 -0
  7. package/buddy/node_modules/.bin/only-allow +17 -0
  8. package/buddy/node_modules/.bin/pnpm +17 -0
  9. package/buddy/node_modules/.bin/pnpx +17 -0
  10. package/buddy/node_modules/.bin/tsc +17 -0
  11. package/buddy/node_modules/.bin/tsserver +17 -0
  12. package/buddy/node_modules/.bin/unbuild +17 -0
  13. package/buddy/package.json +183 -0
  14. package/buddy/src/cli.ts +49 -0
  15. package/buddy/src/commands/add.ts +63 -0
  16. package/buddy/src/commands/build.ts +111 -0
  17. package/buddy/src/commands/clean.ts +18 -0
  18. package/buddy/src/commands/commit.ts +18 -0
  19. package/buddy/src/commands/create.ts +129 -0
  20. package/buddy/src/commands/dev.ts +96 -0
  21. package/buddy/src/commands/example.ts +65 -0
  22. package/buddy/src/commands/fresh.ts +18 -0
  23. package/buddy/src/commands/generate.ts +110 -0
  24. package/buddy/src/commands/index.ts +18 -0
  25. package/buddy/src/commands/key.ts +18 -0
  26. package/buddy/src/commands/lint.ts +27 -0
  27. package/buddy/src/commands/make.ts +219 -0
  28. package/buddy/src/commands/preinstall.ts +18 -0
  29. package/buddy/src/commands/prepublish.ts +19 -0
  30. package/buddy/src/commands/release.ts +28 -0
  31. package/buddy/src/commands/setup.ts +26 -0
  32. package/buddy/src/commands/test.ts +41 -0
  33. package/buddy/src/commands/types.ts +26 -0
  34. package/buddy/src/commands/update.ts +108 -0
  35. package/buddy/src/index.ts +17 -0
  36. package/components/vue/dist/.gitkeep +0 -0
  37. package/components/vue/index.html +13 -0
  38. package/components/vue/main.ts +18 -0
  39. package/components/vue/package.json +41 -0
  40. package/components/web/dist/.gitkeep +0 -0
  41. package/components/web/package.json +41 -0
  42. package/components.d.ts +22 -0
  43. package/core/actions/README.md +58 -0
  44. package/core/actions/node_modules/.bin/esno +17 -0
  45. package/core/actions/node_modules/.bin/markdown-it +17 -0
  46. package/core/actions/node_modules/.bin/mkdist +17 -0
  47. package/core/actions/node_modules/.bin/tsc +17 -0
  48. package/core/actions/node_modules/.bin/tsserver +17 -0
  49. package/core/actions/package.json +68 -0
  50. package/core/actions/src/add.ts +32 -0
  51. package/core/actions/src/build.ts +93 -0
  52. package/core/actions/src/clean.ts +25 -0
  53. package/core/actions/src/commit.ts +19 -0
  54. package/core/actions/src/copy-types.ts +22 -0
  55. package/core/actions/src/dev.ts +55 -0
  56. package/core/actions/src/examples.ts +48 -0
  57. package/core/actions/src/fresh.ts +27 -0
  58. package/core/actions/src/generate-component-meta.ts +15 -0
  59. package/core/actions/src/generate-ide-helpers.ts +19 -0
  60. package/core/actions/src/generate-lib-entries.ts +17 -0
  61. package/core/actions/src/generate-package-json.ts +11 -0
  62. package/core/actions/src/generate-vscode-custom-data.ts +16 -0
  63. package/core/actions/src/generate-vue-compat.ts +10 -0
  64. package/core/actions/src/generate.ts +119 -0
  65. package/core/actions/src/helpers/component-meta.ts +93 -0
  66. package/core/actions/src/helpers/index.ts +6 -0
  67. package/core/actions/src/helpers/lib-entries.ts +130 -0
  68. package/core/actions/src/helpers/package-json.ts +95 -0
  69. package/core/actions/src/helpers/utils.ts +30 -0
  70. package/core/actions/src/helpers/vscode-custom-data.ts +28 -0
  71. package/core/actions/src/helpers/vue-compat.ts +17 -0
  72. package/core/actions/src/index.ts +1 -0
  73. package/core/actions/src/key.ts +48 -0
  74. package/core/actions/src/lint.ts +36 -0
  75. package/core/actions/src/make.ts +249 -0
  76. package/core/actions/src/preinstall.ts +27 -0
  77. package/core/actions/src/prepublish.ts +16 -0
  78. package/core/actions/src/release.ts +32 -0
  79. package/core/actions/src/test.ts +61 -0
  80. package/core/actions/src/types.ts +23 -0
  81. package/core/actions/src/update.ts +149 -0
  82. package/core/actions/test.ts +10 -0
  83. package/core/actions/tests/example.test.ts +7 -0
  84. package/core/ai/README.md +62 -0
  85. package/core/ai/node_modules/.bin/mkdist +17 -0
  86. package/core/ai/node_modules/.bin/tsc +17 -0
  87. package/core/ai/node_modules/.bin/tsserver +17 -0
  88. package/core/ai/package.json +55 -0
  89. package/core/ai/src/drivers/openai.ts +1 -0
  90. package/core/ai/src/index.ts +1 -0
  91. package/core/ai/tests/example.test.ts +7 -0
  92. package/core/alias/README.md +62 -0
  93. package/core/alias/node_modules/.bin/mkdist +17 -0
  94. package/core/alias/node_modules/.bin/tsc +17 -0
  95. package/core/alias/node_modules/.bin/tsserver +17 -0
  96. package/core/alias/package.json +51 -0
  97. package/core/alias/src/index.ts +84 -0
  98. package/core/alias/tests/example.test.ts +7 -0
  99. package/core/arrays/README.md +59 -0
  100. package/core/arrays/node_modules/.bin/mkdist +17 -0
  101. package/core/arrays/node_modules/.bin/tsc +17 -0
  102. package/core/arrays/node_modules/.bin/tsserver +17 -0
  103. package/core/arrays/package.json +55 -0
  104. package/core/arrays/src/index.ts +208 -0
  105. package/core/arrays/tests/example.test.ts +7 -0
  106. package/core/auth/README.md +59 -0
  107. package/core/auth/node_modules/.bin/mkdist +17 -0
  108. package/core/auth/node_modules/.bin/tsc +17 -0
  109. package/core/auth/node_modules/.bin/tsserver +17 -0
  110. package/core/auth/package.json +49 -0
  111. package/core/auth/src/index.ts +3 -0
  112. package/core/auth/tests/example.test.ts +7 -0
  113. package/core/build/README.md +59 -0
  114. package/core/build/entries/README.md +7 -0
  115. package/core/build/node_modules/.bin/mkdist +17 -0
  116. package/core/build/node_modules/.bin/tsc +17 -0
  117. package/core/build/node_modules/.bin/tsserver +17 -0
  118. package/core/build/node_modules/.bin/unbuild +17 -0
  119. package/core/build/node_modules/.bin/vite +17 -0
  120. package/core/build/node_modules/.bin/vite-ssg +17 -0
  121. package/core/build/node_modules/.bin/vue-docgen-web-types +17 -0
  122. package/core/build/package.json +76 -0
  123. package/core/build/src/desktop.ts +27 -0
  124. package/core/build/src/example-vue.ts +24 -0
  125. package/core/build/src/example-wc.ts +24 -0
  126. package/core/build/src/functions.ts +56 -0
  127. package/core/build/src/index.ts +7 -0
  128. package/core/build/src/pages.ts +50 -0
  129. package/core/build/src/stacks.ts +198 -0
  130. package/core/build/src/vue-components.ts +74 -0
  131. package/core/build/src/web-components.ts +61 -0
  132. package/core/build/tests/example.test.ts +7 -0
  133. package/core/build/web-types.config.cjs +4 -0
  134. package/core/build/web-types.ts +14 -0
  135. package/core/cache/README.md +59 -0
  136. package/core/cache/node_modules/.bin/mkdist +17 -0
  137. package/core/cache/node_modules/.bin/tsc +17 -0
  138. package/core/cache/node_modules/.bin/tsserver +17 -0
  139. package/core/cache/package.json +60 -0
  140. package/core/cache/src/drivers/dynamodb.ts +117 -0
  141. package/core/cache/src/drivers/memcached.ts +20 -0
  142. package/core/cache/src/drivers/redis.ts +41 -0
  143. package/core/cache/src/index.ts +3 -0
  144. package/core/cache/tests/DynamoDB.test.ts +149 -0
  145. package/core/cache/tests/Memcached.test.ts +52 -0
  146. package/core/cache/tests/Redis.test.ts +82 -0
  147. package/core/cache/vite.config.ts +7 -0
  148. package/core/cli/README.md +129 -0
  149. package/core/cli/node_modules/.bin/esno +17 -0
  150. package/core/cli/node_modules/.bin/mkdist +17 -0
  151. package/core/cli/package.json +69 -0
  152. package/core/cli/src/actions/index.ts +2 -0
  153. package/core/cli/src/actions/install.ts +22 -0
  154. package/core/cli/src/actions/run.ts +72 -0
  155. package/core/cli/src/command.ts +7 -0
  156. package/core/cli/src/console.ts +6 -0
  157. package/core/cli/src/helpers.ts +58 -0
  158. package/core/cli/src/index.ts +8 -0
  159. package/core/cli/src/spinner.ts +3 -0
  160. package/core/cli/src/utilities.ts +1 -0
  161. package/core/cli/tests/example.test.ts +7 -0
  162. package/core/cloud/README.md +59 -0
  163. package/core/cloud/dist/actions/README.md +53 -0
  164. package/core/cloud/node_modules/.bin/mkdist +17 -0
  165. package/core/cloud/node_modules/.bin/tsc +17 -0
  166. package/core/cloud/node_modules/.bin/tsserver +17 -0
  167. package/core/cloud/package.json +53 -0
  168. package/core/cloud/src/actions/README.md +53 -0
  169. package/core/cloud/src/index.ts +1 -0
  170. package/core/cloud/tests/example.test.ts +7 -0
  171. package/core/collections/README.md +71 -0
  172. package/core/collections/node_modules/.bin/mkdist +17 -0
  173. package/core/collections/node_modules/.bin/tsc +17 -0
  174. package/core/collections/node_modules/.bin/tsserver +17 -0
  175. package/core/collections/package.json +56 -0
  176. package/core/collections/src/index.ts +1 -0
  177. package/core/collections/tests/example.test.ts +7 -0
  178. package/core/config/README.md +53 -0
  179. package/core/config/build.config.ts +13 -0
  180. package/core/config/node_modules/.bin/mkdist +17 -0
  181. package/core/config/node_modules/.bin/tsc +17 -0
  182. package/core/config/node_modules/.bin/tsserver +17 -0
  183. package/core/config/node_modules/.bin/unbuild +17 -0
  184. package/core/config/package.json +53 -0
  185. package/core/config/src/helpers.ts +30 -0
  186. package/core/config/src/index.ts +17 -0
  187. package/core/config/tests/example.test.ts +7 -0
  188. package/core/dashboard/README.md +74 -0
  189. package/core/dashboard/node_modules/.bin/mkdist +17 -0
  190. package/core/dashboard/package.json +52 -0
  191. package/core/dashboard/src/index.ts +0 -0
  192. package/core/dashboard/tests/example.test.ts +7 -0
  193. package/core/database/README.md +59 -0
  194. package/core/database/node_modules/.bin/mkdist +17 -0
  195. package/core/database/node_modules/.bin/tsc +17 -0
  196. package/core/database/node_modules/.bin/tsserver +17 -0
  197. package/core/database/package.json +59 -0
  198. package/core/database/src/factory/index.ts +70 -0
  199. package/core/database/src/index.ts +3 -0
  200. package/core/database/src/migrations/index.ts +5 -0
  201. package/core/database/src/seeder/index.ts +10 -0
  202. package/core/database/tests/example.test.ts +7 -0
  203. package/core/datetime/README.md +66 -0
  204. package/core/datetime/node_modules/.bin/mkdist +17 -0
  205. package/core/datetime/node_modules/.bin/tsc +17 -0
  206. package/core/datetime/node_modules/.bin/tsserver +17 -0
  207. package/core/datetime/package.json +55 -0
  208. package/core/datetime/src/index.ts +6 -0
  209. package/core/datetime/tests/example.test.ts +7 -0
  210. package/core/desktop/README.md +49 -0
  211. package/core/desktop/node_modules/.bin/mkdist +17 -0
  212. package/core/desktop/node_modules/.bin/tauri +17 -0
  213. package/core/desktop/node_modules/.bin/tsc +17 -0
  214. package/core/desktop/node_modules/.bin/tsserver +17 -0
  215. package/core/desktop/package.json +69 -0
  216. package/core/desktop/src/drivers/tauri/index.ts +1 -0
  217. package/core/desktop/src/index.ts +1 -0
  218. package/core/desktop/tests/example.test.ts +7 -0
  219. package/core/docs/README.md +59 -0
  220. package/core/docs/node_modules/.bin/mkdist +17 -0
  221. package/core/docs/node_modules/.bin/tsc +17 -0
  222. package/core/docs/node_modules/.bin/tsserver +17 -0
  223. package/core/docs/node_modules/.bin/vitepress +17 -0
  224. package/core/docs/package.json +53 -0
  225. package/core/docs/src/index.ts +4 -0
  226. package/core/docs/tests/example.test.ts +7 -0
  227. package/core/domains/README.md +56 -0
  228. package/core/domains/node_modules/.bin/mkdist +17 -0
  229. package/core/domains/node_modules/.bin/tsc +17 -0
  230. package/core/domains/node_modules/.bin/tsserver +17 -0
  231. package/core/domains/package.json +52 -0
  232. package/core/domains/src/index.ts +1 -0
  233. package/core/domains/tests/example.test.ts +7 -0
  234. package/core/drivers/README.md +53 -0
  235. package/core/drivers/node_modules/.bin/mkdist +17 -0
  236. package/core/drivers/node_modules/.bin/tsc +17 -0
  237. package/core/drivers/node_modules/.bin/tsserver +17 -0
  238. package/core/drivers/package.json +53 -0
  239. package/core/drivers/src/index.ts +10 -0
  240. package/core/drivers/tests/example.test.ts +7 -0
  241. package/core/email/README.md +89 -0
  242. package/core/email/node_modules/.bin/mkdist +17 -0
  243. package/core/email/node_modules/.bin/tsc +17 -0
  244. package/core/email/node_modules/.bin/tsserver +17 -0
  245. package/core/email/package.json +57 -0
  246. package/core/email/src/index.ts +1 -0
  247. package/core/email/tests/example.test.ts +7 -0
  248. package/core/error-handling/README.md +131 -0
  249. package/core/error-handling/node_modules/.bin/mkdist +17 -0
  250. package/core/error-handling/node_modules/.bin/tsc +17 -0
  251. package/core/error-handling/node_modules/.bin/tsserver +17 -0
  252. package/core/error-handling/package.json +55 -0
  253. package/core/error-handling/src/index.ts +15 -0
  254. package/core/error-handling/tests/example.test.ts +7 -0
  255. package/core/git/README.md +69 -0
  256. package/core/git/node_modules/.bin/bumpp +17 -0
  257. package/core/git/node_modules/.bin/commitizen +17 -0
  258. package/core/git/node_modules/.bin/conventional-changelog +17 -0
  259. package/core/git/node_modules/.bin/cz +17 -0
  260. package/core/git/node_modules/.bin/giget +17 -0
  261. package/core/git/node_modules/.bin/git-cz +17 -0
  262. package/core/git/node_modules/.bin/mkdist +17 -0
  263. package/core/git/node_modules/.bin/simple-git-hooks +17 -0
  264. package/core/git/node_modules/.bin/tsc +17 -0
  265. package/core/git/node_modules/.bin/tsserver +17 -0
  266. package/core/git/package.json +59 -0
  267. package/core/git/src/index.ts +1 -0
  268. package/core/git/tests/example.test.ts +7 -0
  269. package/core/lint/README.md +73 -0
  270. package/core/lint/node_modules/.bin/eslint +17 -0
  271. package/core/lint/node_modules/.bin/lint-staged +17 -0
  272. package/core/lint/node_modules/.bin/mkdist +17 -0
  273. package/core/lint/node_modules/.bin/tsc +17 -0
  274. package/core/lint/node_modules/.bin/tsserver +17 -0
  275. package/core/lint/package.json +58 -0
  276. package/core/lint/src/index.ts +3 -0
  277. package/core/lint/tests/example.test.ts +7 -0
  278. package/core/logging/README.md +58 -0
  279. package/core/logging/debug-test.ts +8 -0
  280. package/core/logging/node_modules/.bin/mkdist +17 -0
  281. package/core/logging/node_modules/.bin/tsc +17 -0
  282. package/core/logging/node_modules/.bin/tsserver +17 -0
  283. package/core/logging/package.json +55 -0
  284. package/core/logging/src/index.ts +15 -0
  285. package/core/logging/tests/example.test.ts +7 -0
  286. package/core/modules/README.md +51 -0
  287. package/core/modules/node_modules/.bin/mkdist +17 -0
  288. package/core/modules/node_modules/.bin/tsc +17 -0
  289. package/core/modules/node_modules/.bin/tsserver +17 -0
  290. package/core/modules/package.json +54 -0
  291. package/core/modules/src/i18n.ts +23 -0
  292. package/core/modules/src/nprogress.ts +12 -0
  293. package/core/modules/src/pwa.ts +12 -0
  294. package/core/modules/tests/example.test.ts +7 -0
  295. package/core/notifications/README.md +89 -0
  296. package/core/notifications/build.config.ts +14 -0
  297. package/core/notifications/node_modules/.bin/maizzle +17 -0
  298. package/core/notifications/node_modules/.bin/mkdist +17 -0
  299. package/core/notifications/node_modules/.bin/tsc +17 -0
  300. package/core/notifications/node_modules/.bin/tsserver +17 -0
  301. package/core/notifications/node_modules/.bin/unbuild +17 -0
  302. package/core/notifications/package.json +88 -0
  303. package/core/notifications/src/drivers/chat/discord.ts +15 -0
  304. package/core/notifications/src/drivers/chat/index.ts +2 -0
  305. package/core/notifications/src/drivers/chat/slack.ts +22 -0
  306. package/core/notifications/src/drivers/email/actions/send.ts +36 -0
  307. package/core/notifications/src/drivers/email/emailjs.ts +21 -0
  308. package/core/notifications/src/drivers/email/index.ts +9 -0
  309. package/core/notifications/src/drivers/email/mailgun.ts +19 -0
  310. package/core/notifications/src/drivers/email/mailjet.ts +18 -0
  311. package/core/notifications/src/drivers/email/mandrill.ts +17 -0
  312. package/core/notifications/src/drivers/email/netcore.ts +17 -0
  313. package/core/notifications/src/drivers/email/nodemailer.ts +21 -0
  314. package/core/notifications/src/drivers/email/postmark.ts +17 -0
  315. package/core/notifications/src/drivers/email/sendgrid.ts +18 -0
  316. package/core/notifications/src/drivers/email/ses.ts +19 -0
  317. package/core/notifications/src/drivers/email/tailwind.config.ts +37 -0
  318. package/core/notifications/src/drivers/sms/gupshup.ts +21 -0
  319. package/core/notifications/src/drivers/sms/index.ts +8 -0
  320. package/core/notifications/src/drivers/sms/nexmo.ts +22 -0
  321. package/core/notifications/src/drivers/sms/plivo.ts +22 -0
  322. package/core/notifications/src/drivers/sms/sms77.ts +21 -0
  323. package/core/notifications/src/drivers/sms/sns.ts +22 -0
  324. package/core/notifications/src/drivers/sms/telnyx.ts +22 -0
  325. package/core/notifications/src/drivers/sms/termii.ts +21 -0
  326. package/core/notifications/src/drivers/sms/twilio.ts +22 -0
  327. package/core/notifications/src/index.ts +25 -0
  328. package/core/notifications/src/utils/config.ts +5 -0
  329. package/core/notifications/src/utils/template.html +8 -0
  330. package/core/notifications/tests/chat/Slack.test.ts +24 -0
  331. package/core/notifications/tests/email/Mailgun.test.ts +29 -0
  332. package/core/notifications/tests/email/Sendgrid.test.ts +30 -0
  333. package/core/notifications/tests/example.test.ts +7 -0
  334. package/core/notifications/tests/sms/Twilio.test.ts +27 -0
  335. package/core/objects/README.md +71 -0
  336. package/core/objects/node_modules/.bin/mkdist +17 -0
  337. package/core/objects/node_modules/.bin/tsc +17 -0
  338. package/core/objects/node_modules/.bin/tsserver +17 -0
  339. package/core/objects/package.json +53 -0
  340. package/core/objects/src/index.ts +130 -0
  341. package/core/objects/tests/example.test.ts +7 -0
  342. package/core/path/README.md +64 -0
  343. package/core/path/node_modules/.bin/mkdist +17 -0
  344. package/core/path/node_modules/.bin/tsc +17 -0
  345. package/core/path/node_modules/.bin/tsserver +17 -0
  346. package/core/path/package.json +55 -0
  347. package/core/path/src/index.ts +353 -0
  348. package/core/path/tests/example.test.ts +7 -0
  349. package/core/payments/README.md +64 -0
  350. package/core/payments/node_modules/.bin/mkdist +17 -0
  351. package/core/payments/node_modules/.bin/tsc +17 -0
  352. package/core/payments/node_modules/.bin/tsserver +17 -0
  353. package/core/payments/package.json +52 -0
  354. package/core/payments/src/drivers/stripe.ts +1 -0
  355. package/core/payments/src/index.ts +1 -0
  356. package/core/payments/tests/example.test.ts +7 -0
  357. package/core/realtime/README.md +59 -0
  358. package/core/realtime/node_modules/.bin/mkdist +17 -0
  359. package/core/realtime/node_modules/.bin/tsc +17 -0
  360. package/core/realtime/node_modules/.bin/tsserver +17 -0
  361. package/core/realtime/package.json +51 -0
  362. package/core/realtime/src/drivers/index.ts +3 -0
  363. package/core/realtime/src/index.ts +3 -0
  364. package/core/realtime/tests/example.test.ts +7 -0
  365. package/core/router/README.md +59 -0
  366. package/core/router/node_modules/.bin/mkdist +17 -0
  367. package/core/router/node_modules/.bin/tsc +17 -0
  368. package/core/router/node_modules/.bin/tsserver +17 -0
  369. package/core/router/package.json +54 -0
  370. package/core/router/src/index.ts +14 -0
  371. package/core/router/tests/example.test.ts +7 -0
  372. package/core/search-engine/README.md +66 -0
  373. package/core/search-engine/node_modules/.bin/mkdist +17 -0
  374. package/core/search-engine/node_modules/.bin/tsc +17 -0
  375. package/core/search-engine/node_modules/.bin/tsserver +17 -0
  376. package/core/search-engine/package.json +64 -0
  377. package/core/search-engine/src/drivers/meilisearch.ts +37 -0
  378. package/core/search-engine/src/helpers.ts +74 -0
  379. package/core/search-engine/src/index.ts +56 -0
  380. package/core/search-engine/tests/example.test.ts +7 -0
  381. package/core/security/README.md +66 -0
  382. package/core/security/node_modules/.bin/mkdist +17 -0
  383. package/core/security/node_modules/.bin/tsc +17 -0
  384. package/core/security/node_modules/.bin/tsserver +17 -0
  385. package/core/security/package.json +57 -0
  386. package/core/security/src/crypt.ts +14 -0
  387. package/core/security/src/hash.ts +52 -0
  388. package/core/security/src/index.ts +3 -0
  389. package/core/security/src/key.ts +11 -0
  390. package/core/security/tests/example.test.ts +7 -0
  391. package/core/server/README.md +51 -0
  392. package/core/server/node_modules/.bin/mkdist +17 -0
  393. package/core/server/node_modules/.bin/nitro +17 -0
  394. package/core/server/node_modules/.bin/nitropack +17 -0
  395. package/core/server/node_modules/.bin/tsc +17 -0
  396. package/core/server/node_modules/.bin/tsserver +17 -0
  397. package/core/server/node_modules/.bin/vite +17 -0
  398. package/core/server/package.json +59 -0
  399. package/core/server/src/config.ts +6 -0
  400. package/core/server/src/index.ts +5 -0
  401. package/core/server/src/nitro.config.ts +6 -0
  402. package/core/server/tests/example.test.ts +7 -0
  403. package/core/storage/README.md +74 -0
  404. package/core/storage/node_modules/.bin/mkdist +17 -0
  405. package/core/storage/node_modules/.bin/tsc +17 -0
  406. package/core/storage/node_modules/.bin/tsserver +17 -0
  407. package/core/storage/package.json +62 -0
  408. package/core/storage/src/index.ts +193 -0
  409. package/core/storage/tests/example.test.ts +7 -0
  410. package/core/strings/README.md +68 -0
  411. package/core/strings/build.config.ts +15 -0
  412. package/core/strings/node_modules/.bin/mkdist +17 -0
  413. package/core/strings/node_modules/.bin/tsc +17 -0
  414. package/core/strings/node_modules/.bin/tsserver +17 -0
  415. package/core/strings/node_modules/.bin/unbuild +17 -0
  416. package/core/strings/package.json +69 -0
  417. package/core/strings/src/index.ts +97 -0
  418. package/core/strings/tests/example.test.ts +7 -0
  419. package/core/testing/README.md +59 -0
  420. package/core/testing/node_modules/.bin/mkdist +17 -0
  421. package/core/testing/node_modules/.bin/tsc +17 -0
  422. package/core/testing/node_modules/.bin/tsserver +17 -0
  423. package/core/testing/node_modules/.bin/vitest +17 -0
  424. package/core/testing/package.json +57 -0
  425. package/core/testing/src/index.ts +1 -0
  426. package/core/types/README.md +59 -0
  427. package/core/types/node_modules/.bin/markdown-it +17 -0
  428. package/core/types/node_modules/.bin/mkdist +17 -0
  429. package/core/types/node_modules/.bin/tsc +17 -0
  430. package/core/types/node_modules/.bin/tsserver +17 -0
  431. package/core/types/node_modules/.bin/vite-ssg +17 -0
  432. package/core/types/node_modules/.bin/vitepress +17 -0
  433. package/core/types/package.json +71 -0
  434. package/core/types/src/app.ts +140 -0
  435. package/core/types/src/auto-imports.ts +3 -0
  436. package/core/types/src/build.ts +2 -0
  437. package/core/types/src/cli.ts +198 -0
  438. package/core/types/src/components.ts +66 -0
  439. package/core/types/src/database.ts +3 -0
  440. package/core/types/src/debug.ts +6 -0
  441. package/core/types/src/deploy.ts +11 -0
  442. package/core/types/src/docs.ts +3 -0
  443. package/core/types/src/errors.ts +6 -0
  444. package/core/types/src/exit-code.ts +10 -0
  445. package/core/types/src/fs.ts +17 -0
  446. package/core/types/src/git.ts +131 -0
  447. package/core/types/src/hashing.ts +107 -0
  448. package/core/types/src/i18n.ts +19 -0
  449. package/core/types/src/index.ts +28 -0
  450. package/core/types/src/inspect.ts +10 -0
  451. package/core/types/src/layout.ts +8 -0
  452. package/core/types/src/library.ts +148 -0
  453. package/core/types/src/manifest.ts +9 -0
  454. package/core/types/src/markdown.ts +198 -0
  455. package/core/types/src/notifications.ts +9 -0
  456. package/core/types/src/pages.ts +8 -0
  457. package/core/types/src/promise.ts +1 -0
  458. package/core/types/src/pwa.ts +8 -0
  459. package/core/types/src/search-engine.ts +118 -0
  460. package/core/types/src/ssg.ts +3 -0
  461. package/core/types/src/ui.ts +184 -0
  462. package/core/types/src/utils.ts +38 -0
  463. package/core/ui/README.md +66 -0
  464. package/core/ui/node_modules/.bin/mkdist +17 -0
  465. package/core/ui/node_modules/.bin/tsc +17 -0
  466. package/core/ui/node_modules/.bin/tsserver +17 -0
  467. package/core/ui/node_modules/.bin/vue-tsc +17 -0
  468. package/core/ui/package.json +66 -0
  469. package/core/ui/src/index.ts +17 -0
  470. package/core/ui/src/unocss.ts +45 -0
  471. package/core/ui/tests/example.test.ts +7 -0
  472. package/core/utils/node_modules/.bin/esno +17 -0
  473. package/core/utils/node_modules/.bin/mkdist +17 -0
  474. package/core/utils/node_modules/.bin/rimraf +17 -0
  475. package/core/utils/node_modules/.bin/tsc +17 -0
  476. package/core/utils/node_modules/.bin/tsserver +17 -0
  477. package/core/utils/package.json +77 -0
  478. package/core/utils/src/base.ts +10 -0
  479. package/core/utils/src/function.ts +32 -0
  480. package/core/utils/src/guards.ts +39 -0
  481. package/core/utils/src/helpers.ts +134 -0
  482. package/core/utils/src/index.ts +13 -0
  483. package/core/utils/src/is.ts +12 -0
  484. package/core/utils/src/p.ts +118 -0
  485. package/core/utils/src/promise.ts +91 -0
  486. package/core/utils/src/vendor.ts +1 -0
  487. package/core/utils/tests/example.test.ts +7 -0
  488. package/core/x-ray/README.md +55 -0
  489. package/core/x-ray/index.html +13 -0
  490. package/core/x-ray/node_modules/.bin/mkdist +17 -0
  491. package/core/x-ray/node_modules/.bin/tsc +17 -0
  492. package/core/x-ray/node_modules/.bin/tsserver +17 -0
  493. package/core/x-ray/package.json +63 -0
  494. package/core/x-ray/routes/index.ts +19 -0
  495. package/core/x-ray/src/client.ts +14 -0
  496. package/core/x-ray/src/desktop/api/nitro.config.ts +18 -0
  497. package/core/x-ray/src/desktop/api/routes/api/logs.ts +7 -0
  498. package/core/x-ray/src/desktop/api/routes/api/store-logs.ts +22 -0
  499. package/core/x-ray/src/desktop/api/src/types.ts +7 -0
  500. package/core/x-ray/src/desktop/api/storage/index.ts +7 -0
  501. package/core/x-ray/src/desktop/app.vue +377 -0
  502. package/core/x-ray/src/desktop/functions/http.ts +26 -0
  503. package/core/x-ray/src/desktop/functions/types.ts +7 -0
  504. package/core/x-ray/src/desktop/main.ts +14 -0
  505. package/core/x-ray/src/desktop/modules/counter/mod.vue +44 -0
  506. package/core/x-ray/src/desktop/modules/fetcher/mod.vue +63 -0
  507. package/core/x-ray/src/desktop/plugins/unified/unified-app.ts +5 -0
  508. package/core/x-ray/src/desktop/plugins/unified/unified-styles.scss +0 -0
  509. package/core/x-ray/src/desktop/services/http.ts +45 -0
  510. package/core/x-ray/src/desktop/styles/app.scss +0 -0
  511. package/core/x-ray/src/http.ts +26 -0
  512. package/core/x-ray/src/index.ts +42 -0
  513. package/core/x-ray/src/ray.config.js +27 -0
  514. package/core/x-ray/src/types.ts +7 -0
  515. package/core/x-ray/tests/example.test.ts +7 -0
  516. package/custom-elements.json +14 -0
  517. package/examples/vue/App.vue +12 -0
  518. package/examples/vue/favicon.png +0 -0
  519. package/examples/vue/index.html +20 -0
  520. package/examples/web/favicon.png +0 -0
  521. package/examples/web/index.html +13 -0
  522. package/functions/package.json +41 -0
  523. package/netlify.toml +18 -0
  524. package/package.json +69 -99
  525. package/pages/App.vue +26 -0
  526. package/pages/index.html +23 -0
  527. package/pages/main.ts +26 -0
  528. package/pages/public/_headers +3 -0
  529. package/pages/public/favicon-dark.svg +3 -0
  530. package/pages/public/favicon.svg +3 -0
  531. package/pages/public/pwa-192x192.png +0 -0
  532. package/pages/public/pwa-512x512.png +0 -0
  533. package/pages/public/safari-pinned-tab.svg +41 -0
  534. package/pages/styles/main.css +29 -0
  535. package/pages/styles/markdown.css +28 -0
  536. package/shims.d.ts +29 -0
  537. package/simple-git-hooks.cjs +4 -0
  538. package/tsconfig.json +115 -0
  539. package/vitest.config.ts +21 -0
  540. package/web-types.json +67 -0
@@ -0,0 +1,82 @@
1
+ import { describe, expect, it } from 'vitest'
2
+ import { createClient } from 'redis' // TODO: needs to be imported from cache package
3
+
4
+ const client: any = createClient({
5
+ socket: {
6
+ host: '127.0.0.1',
7
+ port: 6379,
8
+ },
9
+ password: '',
10
+ })
11
+
12
+ // TODO: needs to be moved to cache package
13
+ await client.connect()
14
+
15
+ // TODO: needs to be imported to cache package
16
+ async function set(key: any, value: any): Promise<void> {
17
+ await client.set(key, value)
18
+ }
19
+
20
+ // TODO: needs to be imported to cache package
21
+ async function get(key: string): Promise<any> {
22
+ const value = await client.get(key)
23
+
24
+ return value
25
+ }
26
+
27
+ // TODO: needs to be imported to cache package
28
+ async function remove(key: string): Promise<void> {
29
+ await client.del(key)
30
+ }
31
+
32
+ // TODO: needs to be imported to cache package
33
+ async function del(key: string): Promise<void> {
34
+ await client.del(key)
35
+ }
36
+
37
+ // TODO: needs to be imported to cache package
38
+ async function flushAll(): Promise<void> {
39
+ await client.sendCommand(['FLUSHALL', 'ASYNC'])
40
+ }
41
+
42
+ // TODO: needs to be imported to cache package
43
+ async function flushDB(): Promise<void> {
44
+ await client.sendCommand(['FLUSHDB', 'ASYNC'])
45
+ }
46
+
47
+ describe('RedisTest', () => {
48
+ it('it should set redis cache', async () => {
49
+ await set('test', 'test')
50
+ expect(await get('test')).toBe('test')
51
+ })
52
+
53
+ it('it should get redis cache', async () => {
54
+ await set('test', 'test')
55
+ expect(await get('test')).toBe('test')
56
+ })
57
+
58
+ it('it should remove cache', async () => {
59
+ await set('test', 'test')
60
+ await remove('test')
61
+ expect(await get('test')).toBe(null)
62
+ })
63
+
64
+ it('it should del cache', async () => {
65
+ await set('test', 'test')
66
+ await del('test')
67
+ expect(await get('test')).toBe(null)
68
+ })
69
+
70
+ it('it should flush all cache', async () => {
71
+ await set('test', 'test')
72
+ await flushAll()
73
+ expect(await get('test')).toBe(null)
74
+ })
75
+
76
+ it('it should flush all DB', async () => {
77
+ await set('test', 'test')
78
+ await flushDB()
79
+ expect(await get('test')).toBe(null)
80
+ })
81
+ })
82
+
@@ -0,0 +1,7 @@
1
+ import { defineConfig } from 'vitest/config'
2
+
3
+ export default defineConfig({
4
+ test: {
5
+ // ...
6
+ },
7
+ })
@@ -0,0 +1,129 @@
1
+ # Stacks CLI
2
+
3
+ The simple way to build beautiful CLIs.
4
+
5
+ ## ☘️ Features
6
+
7
+ - 🎨 Easily create beautiful CLI apps
8
+ - ⚡️ Lightweight, user-friendly, interactive prompts
9
+ - 🚦 Elegant terminal spinners
10
+ - ⛑️ Helper methods to run commands
11
+
12
+ ## 🤖 Usage
13
+
14
+ ```bash
15
+ pnpm i -D @stacksjs/cli
16
+ ```
17
+
18
+ Now, you can use it in your project:
19
+
20
+ ```js
21
+ // command.ts
22
+ // you may create create a relatively complex CLI UI/UX via the following:
23
+ import { command, log, prompts, spawn, spinner, ExitCode, italic } from '@stacksjs/cli'
24
+
25
+ const stacks = command('stacks')
26
+
27
+ stacks
28
+ .command('example', 'A dummy command') // pnpm buddy example
29
+ .option('-i, --install', 'The install option', { default: true })
30
+ .action(async (options) => {
31
+ if (options.install)
32
+ await install()
33
+
34
+ const answer = await prompts.select({
35
+ type: 'select',
36
+ message: 'Are you trying to run this command?',
37
+ choices: [
38
+ { title: 'Run the command', value: 'run' },
39
+ { title: 'Do not run the command', value: 'do-not-run' },
40
+ ],
41
+ })
42
+
43
+ if (answer === 'run')
44
+ install()
45
+ else if (answer === 'do-not-run')
46
+ log.info('Not running the command')
47
+ else process.exit(ExitCode.InvalidArgument)
48
+ })
49
+
50
+ async function install() {
51
+ try {
52
+ const spin = spinner('Running...').start()
53
+ setTimeout(() => {
54
+ spin.text = italic('This may take a little while...')
55
+ }, 5000)
56
+ await spawn('pnpm install')
57
+ spin.stop()
58
+ } catch (error) {
59
+ log.error(error)
60
+ }
61
+ }
62
+
63
+ command.help() // automatically expose a -h and --help flag
64
+ command.version(version) // automatically expose a -v and --version flag
65
+ command.parse() // parse the command
66
+ ```
67
+
68
+ You may now run the command via:
69
+
70
+ ```bash
71
+ esno command.ts
72
+ ```
73
+
74
+ To view a more detailed example, check out [Buddy](../../buddy/).
75
+
76
+ _You may also use any of the following CLI utilities:_
77
+
78
+ ```js
79
+ import {
80
+ log,
81
+ ansi256Bg, bold, dim, hidden, inverse, italic, link, reset, strikethrough, underline,
82
+ bgBlack, bgBlue, bgCyan, bgGray, bgGreen, bgLightBlue, bgLightCyan, bgLightGray, bgLightGreen, bgLightMagenta, bgLightRed, bgLightYellow, bgMagenta, bgRed, bgWhite, bgYellow,
83
+ black, blue, cyan, gray, green, lightBlue, lightCyan, lightGray, lightGreen, lightMagenta, lightRed, lightYellow, magenta, red, white, yellow,
84
+ } from '@stacksjs/cli'
85
+
86
+ log.info(`hello ${bold(italic('world'))`)
87
+ ```
88
+
89
+ To view the full documentation, please visit [https://stacksjs.dev/cli](https://stacksjs.dev/cli).
90
+
91
+ ## 🧪 Testing
92
+
93
+ ```bash
94
+ pnpm test
95
+ ```
96
+
97
+ ## 📈 Changelog
98
+
99
+ Please see our [releases](https://github.com/stacksjs/stacks/releases) page for more information on what has changed recently.
100
+
101
+ ## 💪🏼 Contributing
102
+
103
+ Please review the [Contributing Guide](https://github.com/stacksjs/contributing) for details.
104
+
105
+ ## 🏝 Community
106
+
107
+ For help, discussion about best practices, or any other conversation that would benefit from being searchable:
108
+
109
+ [Discussions on GitHub](https://github.com/stacksjs/stacks/discussions)
110
+
111
+ For casual chit-chat with others using this package:
112
+
113
+ [Join the Stacks Discord Server](https://discord.ow3.org)
114
+
115
+ ## 🙏🏼 Credits
116
+
117
+ Many thanks to the following core technologies & people who have contributed to this package:
118
+
119
+ - [CAC](https://github.com/cacjs/cac)
120
+ - [Ora](https://github.com/sindresorhus/ora)
121
+ - [Consola](https://github.com/unjs/consola)
122
+ - [Chris Breuer](https://github.com/chrisbbreuer)
123
+ - [All Contributors](../../contributors)
124
+
125
+ ## 📄 License
126
+
127
+ The MIT License (MIT). Please see [LICENSE](https://github.com/stacksjs/stacks/tree/main/LICENSE.md) for more information.
128
+
129
+ Made with ❤️
@@ -0,0 +1,17 @@
1
+ #!/bin/sh
2
+ basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
+
4
+ case `uname` in
5
+ *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
6
+ esac
7
+
8
+ if [ -z "$NODE_PATH" ]; then
9
+ export NODE_PATH="/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
10
+ else
11
+ export NODE_PATH="$NODE_PATH:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
12
+ fi
13
+ if [ -x "$basedir/node" ]; then
14
+ exec "$basedir/node" "$basedir/../../../../../node_modules/.pnpm/esno@0.16.3/node_modules/esno/esno.js" "$@"
15
+ else
16
+ exec node "$basedir/../../../../../node_modules/.pnpm/esno@0.16.3/node_modules/esno/esno.js" "$@"
17
+ fi
@@ -0,0 +1,17 @@
1
+ #!/bin/sh
2
+ basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
+
4
+ case `uname` in
5
+ *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
6
+ esac
7
+
8
+ if [ -z "$NODE_PATH" ]; then
9
+ export NODE_PATH="/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
10
+ else
11
+ export NODE_PATH="$NODE_PATH:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
12
+ fi
13
+ if [ -x "$basedir/node" ]; then
14
+ exec "$basedir/node" "$basedir/../../../../../node_modules/.pnpm/mkdist@1.0.0/node_modules/mkdist/dist/cli.cjs" "$@"
15
+ else
16
+ exec node "$basedir/../../../../../node_modules/.pnpm/mkdist@1.0.0/node_modules/mkdist/dist/cli.cjs" "$@"
17
+ fi
@@ -0,0 +1,69 @@
1
+ {
2
+ "name": "@stacksjs/cli",
3
+ "type": "module",
4
+ "version": "0.44.9",
5
+ "packageManager": "pnpm@7.18.2",
6
+ "description": "The simple way to create beautiful CLIs.",
7
+ "author": "Chris Breuer",
8
+ "license": "MIT",
9
+ "funding": "https://github.com/sponsors/chrisbbreuer",
10
+ "homepage": "https://github.com/stacksjs/stacks/tree/main/.stacks/core/cli#readme",
11
+ "repository": {
12
+ "type": "git",
13
+ "url": "git+https://github.com/stacksjs/stacks.git",
14
+ "directory": "./.stacks/core/cli"
15
+ },
16
+ "bugs": {
17
+ "url": "https://github.com/stacksjs/stacks/issues"
18
+ },
19
+ "keywords": [
20
+ "cli",
21
+ "commands",
22
+ "command line interface",
23
+ "spinners",
24
+ "utilities",
25
+ "helpers",
26
+ "cac",
27
+ "ora",
28
+ "consola",
29
+ "ez-spawn",
30
+ "stacks"
31
+ ],
32
+ "main": "dist/index.mjs",
33
+ "module": "dist/index.mjs",
34
+ "types": "dist/index.d.ts",
35
+ "contributors": [
36
+ "Chris Breuer <chris@ow3.org>"
37
+ ],
38
+ "files": [
39
+ "dist",
40
+ "README.md"
41
+ ],
42
+ "engines": {
43
+ "node": ">=v18.12.1",
44
+ "pnpm": ">=7.18.2"
45
+ },
46
+ "scripts": {
47
+ "build": "mkdist -d",
48
+ "dev": "mkdist -d",
49
+ "prepublishOnly": "pnpm run build",
50
+ "typecheck": "tsc --noEmit"
51
+ },
52
+ "peerDependencies": {
53
+ "@antfu/install-pkg": "^0.1.1",
54
+ "@stacksjs/config": "workspace:*",
55
+ "@stacksjs/error-handling": "workspace:*",
56
+ "@stacksjs/logging": "workspace:*",
57
+ "@stacksjs/path": "workspace:*",
58
+ "@stacksjs/types": "workspace:*",
59
+ "cac": "^6.7.14",
60
+ "execa": "^6.1.0",
61
+ "ora": "^6.1.2",
62
+ "prompts": "^2.4.2"
63
+ },
64
+ "devDependencies": {
65
+ "@stacksjs/testing": "workspace:*",
66
+ "esno": "^0.16.3",
67
+ "mkdist": "^1.0.0"
68
+ }
69
+ }
@@ -0,0 +1,2 @@
1
+ export * from './install'
2
+ export * from './run'
@@ -0,0 +1,22 @@
1
+ import { installPackage as installPkg } from '@antfu/install-pkg'
2
+ import type { CommandResult } from '@stacksjs/types'
3
+
4
+ /**
5
+ * Install an npm package.
6
+ *
7
+ * @param pkg - The package name to install.
8
+ * @returns The result of the install.
9
+ */
10
+ export async function installPackage(pkg: string): Promise<CommandResult<string>> {
11
+ return await installPkg(pkg, { silent: true })
12
+ }
13
+
14
+ /**
15
+ * Install a Stack into your project.
16
+ *
17
+ * @param pkg - The Stack name to install.
18
+ * @returns The result of the install.
19
+ */
20
+ export async function installStack(name: string): Promise<CommandResult<string>> {
21
+ return await installPkg(`@stacksjs/${name}`, { silent: true })
22
+ }
@@ -0,0 +1,72 @@
1
+ import type { CliOptions, CommandResult, Result, SpinnerOptions as Spinner } from '@stacksjs/types'
2
+ import { determineDebugMode } from '@stacksjs/config'
3
+ import { ResultAsync } from '@stacksjs/error-handling'
4
+ import { projectPath } from '@stacksjs/path'
5
+ import { italic } from '../'
6
+ import { spawn } from '../command'
7
+ import { startAnimation } from '../helpers'
8
+
9
+ /**
10
+ * Execute a command.
11
+ *
12
+ * @param command The command to execute.
13
+ * @param options The options to pass to the command.
14
+ * @param errorMsg The name of the error to throw if the command fails.
15
+ * @returns The result of the command.
16
+ */
17
+ export function exec(command: string, options?: CliOptions) {
18
+ const cwd = options?.cwd || projectPath()
19
+ const stdio = determineDebugMode(options) ? 'inherit' : 'ignore'
20
+
21
+ return ResultAsync.fromPromise(
22
+ spawn(command, { stdio, cwd }),
23
+ () => new Error(`Failed to execute command: ${italic(command)}`),
24
+ )
25
+ }
26
+
27
+ /**
28
+ * Run a command the Stacks way.
29
+ *
30
+ * @param command The command to run.
31
+ * @param options The options to pass to the command.
32
+ * @returns The result of the command.
33
+ */
34
+ export async function runCommand(command: string, options?: CliOptions) {
35
+ return await exec(command, options)
36
+ }
37
+
38
+ /**
39
+ * Run many commands—the Stacks way.
40
+ *
41
+ * @param commands The command to run.
42
+ * @param options The options to pass to the command.
43
+ * @returns The result of the command.
44
+ */
45
+ export async function runCommands(commands: string[], options?: CliOptions): Promise<Result<CommandResult<string>, Error>[]> {
46
+ let spinner: Spinner | undefined
47
+
48
+ if (!determineDebugMode(options))
49
+ spinner = startAnimation()
50
+
51
+ const results: Result<CommandResult<string>, Error>[] = []
52
+
53
+ for (const command of commands) {
54
+ const result = await runCommand(command, options)
55
+
56
+ if (result.isOk())
57
+ results.push(result)
58
+
59
+ if (result.isErr()) {
60
+ if (spinner)
61
+ spinner.fail('Failed to run command.')
62
+
63
+ results.push(result)
64
+ break
65
+ }
66
+ }
67
+
68
+ if (spinner)
69
+ spinner.stop()
70
+
71
+ return results
72
+ }
@@ -0,0 +1,7 @@
1
+ import cac from 'cac'
2
+ import { execaCommand } from 'execa'
3
+
4
+ const spawn = execaCommand
5
+ const command = cac
6
+
7
+ export { spawn, command }
@@ -0,0 +1,6 @@
1
+ import { log } from '@stacksjs/logging'
2
+ import Prompts from 'prompts'
3
+
4
+ const { prompts } = Prompts
5
+
6
+ export { log, prompts }
@@ -0,0 +1,58 @@
1
+ import type { IntroOptions, OutroOptions } from '@stacksjs/types'
2
+ import { version } from '../package.json'
3
+ import { log } from './console'
4
+ import { spinner } from './spinner'
5
+ import { bgCyan, bold, cyan, dim, green, italic, red } from './utilities'
6
+
7
+ /**
8
+ * Prints the intro message.
9
+ */
10
+ export function intro(command: string, options?: IntroOptions) {
11
+ console.log()
12
+
13
+ console.log(cyan(bold('Stacks CLI')) + dim(` v${version}`))
14
+ console.log()
15
+
16
+ log.info(`Preparing to run the ${bgCyan(italic(bold(` ${command} `)))} command.`)
17
+
18
+ if (options?.showPerformance === false)
19
+ return
20
+
21
+ return performance.now()
22
+ }
23
+
24
+ /**
25
+ * Prints the outro message.
26
+ */
27
+ export function outro(text: string, options: OutroOptions, error?: Error) {
28
+ if (options.isError) {
29
+ if (error)
30
+ log.error(error)
31
+ }
32
+ else { log.success(text) }
33
+
34
+ if (options.startTime) {
35
+ let time = performance.now() - options.startTime
36
+
37
+ if (options.useSeconds) {
38
+ time = time / 1000
39
+ time = Math.round(time * 100) / 100 // https://stackoverflow.com/a/11832950/7811162
40
+ }
41
+
42
+ if (options.isError)
43
+ log.error(red(`in ${time}${options.useSeconds ? 's' : 'ms'}`))
44
+ else
45
+ log.success(green(`Done in ${time}${options.useSeconds ? 's' : 'ms'}`))
46
+ }
47
+ }
48
+
49
+ export function startAnimation() {
50
+ const spin = spinner('Running...').start()
51
+ const pleaseWait = 'This may take a little while...'
52
+
53
+ setTimeout(() => {
54
+ spin.text = italic(pleaseWait)
55
+ }, 5000)
56
+
57
+ return spin
58
+ }
@@ -0,0 +1,8 @@
1
+ export * from './actions'
2
+ export * from './command'
3
+ export * from './console'
4
+ export * from './helpers'
5
+ export * from './spinner'
6
+ export * from './utilities'
7
+
8
+ export { ExitCode } from '@stacksjs/types'
@@ -0,0 +1,3 @@
1
+ import ora from 'ora'
2
+
3
+ export const spinner = ora
@@ -0,0 +1 @@
1
+ export { ansi256Bg, bgBlack, bgBlue, bgCyan, bgGray, bgGreen, bgLightBlue, bgLightCyan, bgLightGray, bgLightGreen, bgLightMagenta, bgLightRed, bgLightYellow, bgMagenta, bgRed, bgWhite, bgYellow, black, blue, bold, cyan, dim, gray, green, hidden, inverse, italic, lightBlue, lightCyan, lightGray, lightGreen, lightMagenta, lightRed, lightYellow, link, magenta, red, reset, strikethrough, underline, white, yellow } from 'kolorist'
@@ -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
+ })
@@ -0,0 +1,59 @@
1
+ # Stacks Cloud
2
+
3
+ This package assists you in setting up & maintaining your application's cloud infrastructure.
4
+
5
+ ## ☘️ Features
6
+
7
+ - Cloud Creation & Management
8
+ - Domain Management
9
+ - Stacks Buddy Commands
10
+
11
+ ### TODO
12
+
13
+ - [ ] Driver: AWS
14
+
15
+ ## 🤖 Usage
16
+
17
+ ```bash
18
+ pnpm i -D @stacksjs/cloud
19
+ ```
20
+
21
+ Now, you can use it in your project:
22
+
23
+ ```ts
24
+ import cloud from '@stacksjs/cloud'
25
+
26
+ // wip
27
+ ```
28
+
29
+ Learn more in the docs.
30
+
31
+ ## 🧪 Testing
32
+
33
+ ```bash
34
+ pnpm test
35
+ ```
36
+
37
+ ## 📈 Changelog
38
+
39
+ Please see our [releases](https://github.com/stacksjs/stacks/releases) page for more information on what has changed recently.
40
+
41
+ ## 💪🏼 Contributing
42
+
43
+ Please review the [Contributing Guide](https://github.com/stacksjs/contributing) for details.
44
+
45
+ ## 🏝 Community
46
+
47
+ For help, discussion about best practices, or any other conversation that would benefit from being searchable:
48
+
49
+ [Discussions on GitHub](https://github.com/stacksjs/stacks/discussions)
50
+
51
+ For casual chit-chat with others using this package:
52
+
53
+ [Join the Stacks Discord Server](https://discord.ow3.org)
54
+
55
+ ## 📄 License
56
+
57
+ The MIT License (MIT). Please see [LICENSE](https://github.com/stacksjs/stacks/tree/main/LICENSE.md) for more information.
58
+
59
+ Made with ❤️
@@ -0,0 +1,53 @@
1
+ # Actions
2
+
3
+ Placeholder for the "On-The-Fly API."
4
+
5
+ ## ☘️ Features
6
+
7
+ - ⚡️
8
+
9
+ ## 🤖 Usage
10
+
11
+ ```bash
12
+ pnpm i -D @stacksjs/cloud
13
+ ```
14
+
15
+ Now, you can use it in your project:
16
+
17
+ ```js
18
+ import { actions } from '@stacksjs/cloud'
19
+
20
+ // wip
21
+ ```
22
+
23
+ Learn more in the docs.
24
+
25
+ ## 🧪 Testing
26
+
27
+ ```bash
28
+ pnpm test
29
+ ```
30
+
31
+ ## 📈 Changelog
32
+
33
+ Please see our [releases](https://github.com/stacksjs/stacks/releases) page for more information on what has changed recently.
34
+
35
+ ## 💪🏼 Contributing
36
+
37
+ Please review the [Contributing Guide](https://github.com/stacksjs/contributing) for details.
38
+
39
+ ## 🏝 Community
40
+
41
+ For help, discussion about best practices, or any other conversation that would benefit from being searchable:
42
+
43
+ [Discussions on GitHub](https://github.com/stacksjs/stacks/discussions)
44
+
45
+ For casual chit-chat with others using this package:
46
+
47
+ [Join the Stacks Discord Server](https://discord.ow3.org)
48
+
49
+ ## 📄 License
50
+
51
+ The MIT License (MIT). Please see [LICENSE](https://github.com/stacksjs/stacks/tree/main/LICENSE.md) for more information.
52
+
53
+ Made with ❤️
@@ -0,0 +1,17 @@
1
+ #!/bin/sh
2
+ basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
+
4
+ case `uname` in
5
+ *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
6
+ esac
7
+
8
+ if [ -z "$NODE_PATH" ]; then
9
+ export NODE_PATH="/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
10
+ else
11
+ export NODE_PATH="$NODE_PATH:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
12
+ fi
13
+ if [ -x "$basedir/node" ]; then
14
+ exec "$basedir/node" "$basedir/../../../../../node_modules/.pnpm/mkdist@1.0.0_typescript@4.9.4/node_modules/mkdist/dist/cli.cjs" "$@"
15
+ else
16
+ exec node "$basedir/../../../../../node_modules/.pnpm/mkdist@1.0.0_typescript@4.9.4/node_modules/mkdist/dist/cli.cjs" "$@"
17
+ fi
@@ -0,0 +1,17 @@
1
+ #!/bin/sh
2
+ basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
+
4
+ case `uname` in
5
+ *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
6
+ esac
7
+
8
+ if [ -z "$NODE_PATH" ]; then
9
+ export NODE_PATH="/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
10
+ else
11
+ export NODE_PATH="$NODE_PATH:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
12
+ fi
13
+ if [ -x "$basedir/node" ]; then
14
+ exec "$basedir/node" "$basedir/../../../../../node_modules/.pnpm/typescript@4.9.4/node_modules/typescript/bin/tsc" "$@"
15
+ else
16
+ exec node "$basedir/../../../../../node_modules/.pnpm/typescript@4.9.4/node_modules/typescript/bin/tsc" "$@"
17
+ fi