stacks 0.58.73 → 0.59.2

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 (1112) hide show
  1. package/buddy/build.ts +38 -0
  2. package/{core/buddy → buddy}/compile.ts +1 -1
  3. package/buddy/dist/chunk-d2428b387d843985.js +2016 -0
  4. package/buddy/dist/cli.d.ts +1 -0
  5. package/{core/buddy → buddy}/dist/cli.js +23 -9
  6. package/buddy/dist/commands/build.d.ts +2 -0
  7. package/buddy/dist/commands/changelog.d.ts +2 -0
  8. package/buddy/dist/commands/clean.d.ts +2 -0
  9. package/buddy/dist/commands/cloud.d.ts +2 -0
  10. package/buddy/dist/commands/commit.d.ts +2 -0
  11. package/buddy/dist/commands/configure.d.ts +2 -0
  12. package/buddy/dist/commands/create.d.ts +2 -0
  13. package/buddy/dist/commands/deploy.d.ts +2 -0
  14. package/buddy/dist/commands/dev.d.ts +3 -0
  15. package/buddy/dist/commands/dns.d.ts +2 -0
  16. package/buddy/dist/commands/domains.d.ts +2 -0
  17. package/buddy/dist/commands/fresh.d.ts +2 -0
  18. package/buddy/dist/commands/generate.d.ts +2 -0
  19. package/buddy/dist/commands/http.d.ts +2 -0
  20. package/buddy/dist/commands/index.d.ts +31 -0
  21. package/buddy/dist/commands/install.d.ts +2 -0
  22. package/buddy/dist/commands/key.d.ts +2 -0
  23. package/buddy/dist/commands/lint.d.ts +2 -0
  24. package/buddy/dist/commands/list.d.ts +2 -0
  25. package/buddy/dist/commands/make.d.ts +2 -0
  26. package/buddy/dist/commands/migrate.d.ts +2 -0
  27. package/buddy/dist/commands/ports.d.ts +2 -0
  28. package/buddy/dist/commands/prepublish.d.ts +2 -0
  29. package/buddy/dist/commands/projects.d.ts +2 -0
  30. package/buddy/dist/commands/release.d.ts +2 -0
  31. package/buddy/dist/commands/seed.d.ts +2 -0
  32. package/buddy/dist/commands/setup.d.ts +4 -0
  33. package/buddy/dist/commands/test.d.ts +2 -0
  34. package/buddy/dist/commands/tinker.d.ts +2 -0
  35. package/buddy/dist/commands/types.d.ts +2 -0
  36. package/buddy/dist/commands/upgrade.d.ts +2 -0
  37. package/buddy/dist/commands/version.d.ts +2 -0
  38. package/buddy/dist/index.d.ts +1 -0
  39. package/{core/buddy → buddy}/dist/index.js +2 -5
  40. package/{core/buddy → buddy}/dist/stacks +0 -0
  41. package/{core/buddy → buddy}/package.json +1 -3
  42. package/{core/buddy → buddy}/src/cli.ts +18 -13
  43. package/{core/buddy → buddy}/src/commands/add.ts +1 -1
  44. package/{core/buddy → buddy}/src/commands/commit.ts +1 -1
  45. package/{core/buddy → buddy}/src/commands/deploy.ts +1 -1
  46. package/{core/buddy → buddy}/src/commands/dev.ts +1 -3
  47. package/{core/buddy → buddy}/src/commands/index.ts +0 -1
  48. package/{core/buddy → buddy}/src/commands/list.ts +1 -1
  49. package/{core/buddy → buddy}/src/commands/make.ts +28 -2
  50. package/buddy/src/commands/ports.ts +180 -0
  51. package/{core/buddy → buddy}/src/commands/prepublish.ts +1 -1
  52. package/{core/buddy → buddy}/src/commands/projects.ts +2 -3
  53. package/{core/buddy → buddy}/src/commands/setup.ts +1 -0
  54. package/{core/buddy → buddy}/src/commands/types.ts +1 -1
  55. package/buddy/tsconfig.tsbuildinfo +1 -0
  56. package/package.json +285 -285
  57. package/core/.simple-git-hooks.js +0 -3
  58. package/core/actions/README.md +0 -58
  59. package/core/actions/build.ts +0 -5
  60. package/core/actions/dist/src/add.js +0 -29
  61. package/core/actions/dist/src/build/component-libs.js +0 -6
  62. package/core/actions/dist/src/build/core.js +0 -21
  63. package/core/actions/dist/src/build/stacks.js +0 -8
  64. package/core/actions/dist/src/build.js +0 -219
  65. package/core/actions/dist/src/bump.js +0 -14
  66. package/core/actions/dist/src/changelog.js +0 -17
  67. package/core/actions/dist/src/clean.js +0 -6
  68. package/core/actions/dist/src/commit.js +0 -17
  69. package/core/actions/dist/src/copy-types.js +0 -14
  70. package/core/actions/dist/src/database/seed.js +0 -1
  71. package/core/actions/dist/src/deploy/index.js +0 -31
  72. package/core/actions/dist/src/dev/components.js +0 -11
  73. package/core/actions/dist/src/dev/docs.js +0 -7
  74. package/core/actions/dist/src/dev/index.js +0 -92
  75. package/core/actions/dist/src/examples.js +0 -43
  76. package/core/actions/dist/src/fresh.js +0 -18
  77. package/core/actions/dist/src/generate/component-meta.js +0 -59
  78. package/core/actions/dist/src/generate/ide-helpers.js +0 -91
  79. package/core/actions/dist/src/generate/index.js +0 -154
  80. package/core/actions/dist/src/generate/lib-entries.js +0 -170
  81. package/core/actions/dist/src/generate/vscode-custom-data.js +0 -91
  82. package/core/actions/dist/src/helpers/component-meta.js +0 -50
  83. package/core/actions/dist/src/helpers/index.js +0 -48
  84. package/core/actions/dist/src/helpers/lib-entries.js +0 -161
  85. package/core/actions/dist/src/helpers/package-json.js +0 -136
  86. package/core/actions/dist/src/helpers/utils.js +0 -48
  87. package/core/actions/dist/src/helpers/vscode-custom-data.js +0 -83
  88. package/core/actions/dist/src/index.js +0 -590
  89. package/core/actions/dist/src/key-generate.js +0 -10
  90. package/core/actions/dist/src/lint/fix.js +0 -12
  91. package/core/actions/dist/src/lint/index.js +0 -17
  92. package/core/actions/dist/src/make.js +0 -291
  93. package/core/actions/dist/src/prepublish.js +0 -14
  94. package/core/actions/dist/src/release.js +0 -559
  95. package/core/actions/dist/src/test/coverage.js +0 -6
  96. package/core/actions/dist/src/test/feature.js +0 -6
  97. package/core/actions/dist/src/test/ui.js +0 -6
  98. package/core/actions/dist/src/test/unit.js +0 -6
  99. package/core/actions/dist/src/test.js +0 -6
  100. package/core/actions/dist/src/tinker.js +0 -5
  101. package/core/actions/dist/src/typecheck.js +0 -6
  102. package/core/actions/dist/src/types.js +0 -21
  103. package/core/actions/dist/src/upgrade/dependencies.js +0 -6
  104. package/core/actions/dist/src/upgrade/framework.js +0 -1
  105. package/core/actions/dist/src/upgrade/index.js +0 -58
  106. package/core/actions/dist/src/upgrade.js +0 -47
  107. package/core/actions/package.json +0 -92
  108. package/core/actions/src/action.ts +0 -52
  109. package/core/actions/src/actions.ts +0 -2
  110. package/core/actions/src/add.ts +0 -27
  111. package/core/actions/src/ai/request-model-access.ts +0 -74
  112. package/core/actions/src/build/cli.ts +0 -7
  113. package/core/actions/src/build/component-libs.ts +0 -5
  114. package/core/actions/src/build/core.ts +0 -34
  115. package/core/actions/src/build/desktop.ts +0 -7
  116. package/core/actions/src/build/docs.ts +0 -7
  117. package/core/actions/src/build/server.ts +0 -9
  118. package/core/actions/src/build/stacks.ts +0 -7
  119. package/core/actions/src/build.ts +0 -89
  120. package/core/actions/src/bump.ts +0 -18
  121. package/core/actions/src/cdn/invalidate-cache.ts +0 -27
  122. package/core/actions/src/changelog.ts +0 -21
  123. package/core/actions/src/check/ports.ts +0 -24
  124. package/core/actions/src/clean.ts +0 -6
  125. package/core/actions/src/commit.ts +0 -14
  126. package/core/actions/src/copy-types.ts +0 -22
  127. package/core/actions/src/database/fields.ts +0 -111
  128. package/core/actions/src/database/migration-mysql.ts +0 -72
  129. package/core/actions/src/database/migration-sqlite.ts +0 -67
  130. package/core/actions/src/database/migration.ts +0 -10
  131. package/core/actions/src/database/seed.ts +0 -4
  132. package/core/actions/src/database/user-migration.ts +0 -20
  133. package/core/actions/src/deploy/create-receipt-rule.ts +0 -55
  134. package/core/actions/src/deploy/index.ts +0 -46
  135. package/core/actions/src/dev/api.ts +0 -18
  136. package/core/actions/src/dev/components.ts +0 -14
  137. package/core/actions/src/dev/dashboard.ts +0 -7
  138. package/core/actions/src/dev/desktop.ts +0 -7
  139. package/core/actions/src/dev/docs.ts +0 -7
  140. package/core/actions/src/dev/index.ts +0 -48
  141. package/core/actions/src/dev/system-tray.ts +0 -6
  142. package/core/actions/src/dev/views.ts +0 -7
  143. package/core/actions/src/domains/add.ts +0 -67
  144. package/core/actions/src/domains/purchase.ts +0 -76
  145. package/core/actions/src/domains/remove.ts +0 -38
  146. package/core/actions/src/examples.ts +0 -46
  147. package/core/actions/src/find-projects.ts +0 -21
  148. package/core/actions/src/fresh.ts +0 -20
  149. package/core/actions/src/generate/action-types.ts +0 -25
  150. package/core/actions/src/generate/caddyfile.ts +0 -44
  151. package/core/actions/src/generate/component-meta.ts +0 -19
  152. package/core/actions/src/generate/custom-cli-file.ts +0 -24
  153. package/core/actions/src/generate/env-files.ts +0 -89
  154. package/core/actions/src/generate/ide-helpers.ts +0 -18
  155. package/core/actions/src/generate/index.ts +0 -140
  156. package/core/actions/src/generate/lib-entries.ts +0 -18
  157. package/core/actions/src/generate/model-classes.ts +0 -299
  158. package/core/actions/src/generate/model-generate.ts +0 -12
  159. package/core/actions/src/generate/pkgx-file.ts +0 -72
  160. package/core/actions/src/generate/symlink-core.ts +0 -3
  161. package/core/actions/src/generate/types.ts +0 -6
  162. package/core/actions/src/generate/vscode-custom-data.ts +0 -19
  163. package/core/actions/src/generate/web-types.ts +0 -2
  164. package/core/actions/src/helpers/component-meta.ts +0 -93
  165. package/core/actions/src/helpers/index.ts +0 -1
  166. package/core/actions/src/helpers/lib-entries.ts +0 -139
  167. package/core/actions/src/helpers/package-json.ts +0 -96
  168. package/core/actions/src/helpers/utils.ts +0 -70
  169. package/core/actions/src/helpers/vscode-custom-data.ts +0 -35
  170. package/core/actions/src/index.ts +0 -29
  171. package/core/actions/src/key-generate.ts +0 -10
  172. package/core/actions/src/lint/fix.ts +0 -13
  173. package/core/actions/src/lint/index.ts +0 -27
  174. package/core/actions/src/make.ts +0 -322
  175. package/core/actions/src/migrate/database.ts +0 -1
  176. package/core/actions/src/migrate/dns.ts +0 -3
  177. package/core/actions/src/prepublish.ts +0 -17
  178. package/core/actions/src/release.ts +0 -18
  179. package/core/actions/src/start-caddy.ts +0 -13
  180. package/core/actions/src/test/coverage.ts +0 -5
  181. package/core/actions/src/test/feature.ts +0 -5
  182. package/core/actions/src/test/ui.ts +0 -5
  183. package/core/actions/src/test/unit.ts +0 -5
  184. package/core/actions/src/test.ts +0 -5
  185. package/core/actions/src/tinker.ts +0 -10
  186. package/core/actions/src/typecheck.ts +0 -5
  187. package/core/actions/src/types.ts +0 -20
  188. package/core/actions/src/upgrade/binary.ts +0 -43
  189. package/core/actions/src/upgrade/bun.ts +0 -4
  190. package/core/actions/src/upgrade/dependencies.ts +0 -0
  191. package/core/actions/src/upgrade/framework.ts +0 -30
  192. package/core/actions/src/upgrade/index.ts +0 -28
  193. package/core/actions/src/upgrade/shell.ts +0 -64
  194. package/core/actions/src/upgrade.ts +0 -68
  195. package/core/actions/tests/example.test.ts +0 -5
  196. package/core/ai/README.md +0 -67
  197. package/core/ai/build.ts +0 -9
  198. package/core/ai/dist/index.js +0 -10624
  199. package/core/ai/package.json +0 -60
  200. package/core/ai/src/chatbots.ts +0 -0
  201. package/core/ai/src/image-generation.ts +0 -0
  202. package/core/ai/src/index.ts +0 -8
  203. package/core/ai/src/personalization.ts +0 -0
  204. package/core/ai/src/search.ts +0 -0
  205. package/core/ai/src/text-generation.ts +0 -0
  206. package/core/ai/src/text-summary.ts +0 -0
  207. package/core/ai/src/utils/client-bedrock-runtime.ts +0 -38
  208. package/core/ai/src/utils/client-bedrock.ts +0 -53
  209. package/core/ai/tests/example.test.ts +0 -5
  210. package/core/ai/tsconfig.json +0 -3
  211. package/core/alias/README.md +0 -53
  212. package/core/alias/build.ts +0 -8
  213. package/core/alias/dist/index.js +0 -218
  214. package/core/alias/package.json +0 -52
  215. package/core/alias/src/index.ts +0 -220
  216. package/core/alias/tests/example.test.ts +0 -5
  217. package/core/alias/tsconfig.json +0 -3
  218. package/core/analytics/README.md +0 -55
  219. package/core/analytics/build.ts +0 -8
  220. package/core/analytics/dist/index.js +0 -5
  221. package/core/analytics/package.json +0 -55
  222. package/core/analytics/src/drivers/fathom.ts +0 -1
  223. package/core/analytics/src/drivers/index.ts +0 -1
  224. package/core/analytics/src/index.ts +0 -1
  225. package/core/analytics/tests/example.test.ts +0 -5
  226. package/core/analytics/tsconfig.json +0 -3
  227. package/core/api/build.ts +0 -7
  228. package/core/api/dist/index.js +0 -639
  229. package/core/api/package.json +0 -61
  230. package/core/api/src/index.ts +0 -115
  231. package/core/api/tsconfig.json +0 -3
  232. package/core/arrays/README.md +0 -59
  233. package/core/arrays/build.ts +0 -8
  234. package/core/arrays/dist/index.js +0 -469
  235. package/core/arrays/package.json +0 -60
  236. package/core/arrays/src/arr.ts +0 -3
  237. package/core/arrays/src/contains.ts +0 -87
  238. package/core/arrays/src/helpers.ts +0 -272
  239. package/core/arrays/src/index.ts +0 -3
  240. package/core/arrays/src/macro.ts +0 -131
  241. package/core/arrays/src/math.ts +0 -220
  242. package/core/arrays/tests/example.test.ts +0 -5
  243. package/core/arrays/tsconfig.json +0 -3
  244. package/core/auth/README.md +0 -59
  245. package/core/auth/build.ts +0 -8
  246. package/core/auth/dist/index.js +0 -5
  247. package/core/auth/package.json +0 -51
  248. package/core/auth/src/index.ts +0 -1
  249. package/core/auth/tests/example.test.ts +0 -5
  250. package/core/auth/tsconfig.json +0 -3
  251. package/core/buddy/build.ts +0 -8
  252. package/core/buddy/dist/chunk-1a569f35f66ae151.js +0 -10945
  253. package/core/buddy/dist/chunk-bf054cfbc9cf2201.js +0 -993
  254. package/core/buddy/src/commands/check.ts +0 -45
  255. package/core/buddy/src/commands/ports.ts +0 -73
  256. package/core/buddy/tsconfig.json +0 -3
  257. package/core/build/README.md +0 -59
  258. package/core/build/build.ts +0 -8
  259. package/core/build/dist/index.js +0 -19
  260. package/core/build/package.json +0 -64
  261. package/core/build/src/index.ts +0 -11
  262. package/core/build/tests/example.test.ts +0 -5
  263. package/core/build/tsconfig.json +0 -3
  264. package/core/build/web-types.config.cjs +0 -5
  265. package/core/build/web-types.ts +0 -15
  266. package/core/bun-create/bud/README.md +0 -45
  267. package/core/bun-create/bud/package.json +0 -151
  268. package/core/bun-create/buddy/README.md +0 -45
  269. package/core/bun-create/buddy/package.json +0 -150
  270. package/core/bun-create/stack/README.md +0 -45
  271. package/core/bun-create/stack/package.json +0 -150
  272. package/core/bun-create/stacks/README.md +0 -45
  273. package/core/bun-create/stacks/package.json +0 -150
  274. package/core/bun-create/stx/README.md +0 -45
  275. package/core/bun-create/stx/package.json +0 -151
  276. package/core/bun-plugin-yml/README.md +0 -56
  277. package/core/bun-plugin-yml/TODO.md +0 -1
  278. package/core/bun-plugin-yml/build.ts +0 -8
  279. package/core/bun-plugin-yml/dist/index.js +0 -2762
  280. package/core/bun-plugin-yml/package.json +0 -62
  281. package/core/bun-plugin-yml/src/index.ts +0 -21
  282. package/core/bun-plugin-yml/tests/example.test.ts +0 -5
  283. package/core/bun-plugin-yml/tsconfig.json +0 -3
  284. package/core/cache/README.md +0 -59
  285. package/core/cache/build.ts +0 -8
  286. package/core/cache/dist/index.js +0 -88
  287. package/core/cache/package.json +0 -66
  288. package/core/cache/src/drivers/dynamodb.ts +0 -119
  289. package/core/cache/src/drivers/index.ts +0 -2
  290. package/core/cache/src/drivers/redis.ts +0 -37
  291. package/core/cache/src/index.ts +0 -1
  292. package/core/cache/tests/DynamoDB.test.ts +0 -135
  293. package/core/cache/tests/Memcached.test.ts +0 -51
  294. package/core/cache/tests/Redis.test.ts +0 -84
  295. package/core/cache/tsconfig.json +0 -3
  296. package/core/chat/README.md +0 -83
  297. package/core/chat/build.ts +0 -8
  298. package/core/chat/dist/index.js +0 -42
  299. package/core/chat/package.json +0 -74
  300. package/core/chat/src/drivers/discord.ts +0 -15
  301. package/core/chat/src/drivers/slack.ts +0 -24
  302. package/core/chat/src/drivers/teams.ts +0 -24
  303. package/core/chat/src/index.ts +0 -3
  304. package/core/chat/tests/example.test.ts +0 -5
  305. package/core/chat/tsconfig.json +0 -3
  306. package/core/cli/README.md +0 -168
  307. package/core/cli/build.ts +0 -8
  308. package/core/cli/dist/index.js +0 -780
  309. package/core/cli/package.json +0 -92
  310. package/core/cli/src/actions/index.ts +0 -1
  311. package/core/cli/src/actions/install.ts +0 -40
  312. package/core/cli/src/cli.ts +0 -30
  313. package/core/cli/src/command.ts +0 -47
  314. package/core/cli/src/console.ts +0 -79
  315. package/core/cli/src/exec.ts +0 -114
  316. package/core/cli/src/helpers.ts +0 -80
  317. package/core/cli/src/index.ts +0 -10
  318. package/core/cli/src/parse.ts +0 -179
  319. package/core/cli/src/run.ts +0 -99
  320. package/core/cli/src/spinner.ts +0 -3
  321. package/core/cli/src/utils.ts +0 -82
  322. package/core/cli/tests/example.test.ts +0 -5
  323. package/core/cli/tsconfig.json +0 -3
  324. package/core/cloud/README.md +0 -67
  325. package/core/cloud/build.ts +0 -12
  326. package/core/cloud/dist/index.js +0 -2013
  327. package/core/cloud/dist/origin-request.js +0 -27
  328. package/core/cloud/package.json +0 -113
  329. package/core/cloud/src/cloud/ai.ts +0 -94
  330. package/core/cloud/src/cloud/aws-sdk-layer/nodejs/package-lock.json +0 -386
  331. package/core/cloud/src/cloud/aws-sdk-layer/nodejs/package.json +0 -15
  332. package/core/cloud/src/cloud/cache.ts +0 -0
  333. package/core/cloud/src/cloud/cdn.ts +0 -427
  334. package/core/cloud/src/cloud/cli.ts +0 -45
  335. package/core/cloud/src/cloud/compute.ts +0 -212
  336. package/core/cloud/src/cloud/dashboard.ts +0 -86
  337. package/core/cloud/src/cloud/database.ts +0 -0
  338. package/core/cloud/src/cloud/deployment.ts +0 -41
  339. package/core/cloud/src/cloud/dns.ts +0 -42
  340. package/core/cloud/src/cloud/docs.ts +0 -51
  341. package/core/cloud/src/cloud/email.ts +0 -339
  342. package/core/cloud/src/cloud/file-system.ts +0 -35
  343. package/core/cloud/src/cloud/index.ts +0 -135
  344. package/core/cloud/src/cloud/jump-box.ts +0 -48
  345. package/core/cloud/src/cloud/lambda/ask/index.js +0 -35
  346. package/core/cloud/src/cloud/lambda/cli-setup/index.js +0 -67
  347. package/core/cloud/src/cloud/lambda/summarize/index.js +0 -35
  348. package/core/cloud/src/cloud/network.ts +0 -32
  349. package/core/cloud/src/cloud/permissions.ts +0 -33
  350. package/core/cloud/src/cloud/queue.ts +0 -142
  351. package/core/cloud/src/cloud/redirects.ts +0 -45
  352. package/core/cloud/src/cloud/router-layer/nodejs/package.json +0 -15
  353. package/core/cloud/src/cloud/search-engine.ts +0 -108
  354. package/core/cloud/src/cloud/security.ts +0 -259
  355. package/core/cloud/src/cloud/storage.ts +0 -168
  356. package/core/cloud/src/edge/origin-request.ts +0 -49
  357. package/core/cloud/src/helpers.ts +0 -609
  358. package/core/cloud/src/index.ts +0 -2
  359. package/core/cloud/src/types.ts +0 -28
  360. package/core/cloud/tests/example.test.ts +0 -5
  361. package/core/cloud/tsconfig.json +0 -3
  362. package/core/cloud/zip.ts +0 -17
  363. package/core/collections/README.md +0 -71
  364. package/core/collections/build.ts +0 -8
  365. package/core/collections/dist/index.js +0 -6
  366. package/core/collections/package.json +0 -58
  367. package/core/collections/src/index.ts +0 -1
  368. package/core/collections/tests/example.test.ts +0 -5
  369. package/core/collections/tsconfig.json +0 -3
  370. package/core/config/README.md +0 -71
  371. package/core/config/build.ts +0 -8
  372. package/core/config/dist/index.js +0 -1823
  373. package/core/config/package.json +0 -54
  374. package/core/config/src/config.ts +0 -39
  375. package/core/config/src/defaults.ts +0 -481
  376. package/core/config/src/helpers.ts +0 -256
  377. package/core/config/src/index.ts +0 -2
  378. package/core/config/src/overrides.ts +0 -51
  379. package/core/config/tests/example.test.ts +0 -5
  380. package/core/config/tsconfig.json +0 -3
  381. package/core/custom-elements.json +0 -4
  382. package/core/database/README.md +0 -59
  383. package/core/database/build.ts +0 -8
  384. package/core/database/dist/index.js +0 -200
  385. package/core/database/package.json +0 -79
  386. package/core/database/src/index.ts +0 -63
  387. package/core/database/src/kysely-bun-worker/driver.ts +0 -144
  388. package/core/database/src/kysely-bun-worker/index.ts +0 -46
  389. package/core/database/src/kysely-bun-worker/mitt.ts +0 -24
  390. package/core/database/src/kysely-bun-worker/type.ts +0 -40
  391. package/core/database/src/kysely-bun-worker/worker.ts +0 -52
  392. package/core/database/src/migrations/index.ts +0 -73
  393. package/core/database/src/seeder/index.ts +0 -79
  394. package/core/database/tests/example.test.ts +0 -5
  395. package/core/database/tsconfig.json +0 -3
  396. package/core/datetime/README.md +0 -66
  397. package/core/datetime/build.ts +0 -8
  398. package/core/datetime/dist/index.js +0 -9
  399. package/core/datetime/package.json +0 -57
  400. package/core/datetime/src/index.ts +0 -7
  401. package/core/datetime/tests/example.test.ts +0 -5
  402. package/core/datetime/tsconfig.json +0 -3
  403. package/core/desktop/README.md +0 -49
  404. package/core/desktop/build.ts +0 -8
  405. package/core/desktop/dist/index.js +0 -3081
  406. package/core/desktop/package.json +0 -83
  407. package/core/desktop/src/index.ts +0 -43
  408. package/core/desktop/src/system-tray.ts +0 -1
  409. package/core/desktop/tests/example.test.ts +0 -5
  410. package/core/desktop/tsconfig.json +0 -3
  411. package/core/development/README.md +0 -27
  412. package/core/development/build.ts +0 -8
  413. package/core/development/dist/index.js +0 -6
  414. package/core/development/package.json +0 -77
  415. package/core/development/src/index.ts +0 -0
  416. package/core/development/tests/example.test.ts +0 -5
  417. package/core/development/tsconfig.json +0 -3
  418. package/core/dns/README.md +0 -56
  419. package/core/dns/build.ts +0 -8
  420. package/core/dns/dist/index.js +0 -166
  421. package/core/dns/package.json +0 -77
  422. package/core/dns/src/drivers/aws.ts +0 -224
  423. package/core/dns/src/index.ts +0 -20
  424. package/core/dns/tests/example.test.ts +0 -5
  425. package/core/dns/tsconfig.json +0 -3
  426. package/core/docs/README.md +0 -59
  427. package/core/docs/build.ts +0 -8
  428. package/core/docs/dist/index.js +0 -205
  429. package/core/docs/package.json +0 -70
  430. package/core/docs/src/index.ts +0 -67
  431. package/core/docs/src/meta.ts +0 -32
  432. package/core/docs/src/plugins.ts +0 -4
  433. package/core/docs/src/scripts/pwa.ts +0 -116
  434. package/core/docs/tests/example.test.ts +0 -5
  435. package/core/docs/tsconfig.json +0 -3
  436. package/core/email/README.md +0 -155
  437. package/core/email/build-inbound.ts +0 -8
  438. package/core/email/build.ts +0 -8
  439. package/core/email/dist/index.js +0 -306735
  440. package/core/email/email-forwarder.cjs +0 -407
  441. package/core/email/email-forwarder.zip +0 -0
  442. package/core/email/package.json +0 -69
  443. package/core/email/src/drivers/index.ts +0 -3
  444. package/core/email/src/drivers/mailgun.ts +0 -21
  445. package/core/email/src/drivers/nodemailer.ts +0 -23
  446. package/core/email/src/drivers/ses.ts +0 -22
  447. package/core/email/src/email.ts +0 -84
  448. package/core/email/src/index.ts +0 -3
  449. package/core/email/src/send.ts +0 -37
  450. package/core/email/src/server/converter.ts +0 -305
  451. package/core/email/src/server/inbound.ts +0 -406
  452. package/core/email/src/server/outbound.ts +0 -296
  453. package/core/email/src/template.ts +0 -18
  454. package/core/email/src/types.ts +0 -39
  455. package/core/email/src/utils/config.ts +0 -7
  456. package/core/email/tests/example.test.ts +0 -5
  457. package/core/email/tsconfig.json +0 -3
  458. package/core/enums/README.md +0 -54
  459. package/core/enums/build.ts +0 -8
  460. package/core/enums/dist/index.js +0 -105
  461. package/core/enums/package.json +0 -49
  462. package/core/enums/src/index.ts +0 -102
  463. package/core/enums/tests/example.test.ts +0 -5
  464. package/core/enums/tsconfig.json +0 -3
  465. package/core/env/README.md +0 -71
  466. package/core/env/build.ts +0 -8
  467. package/core/env/dist/index.js +0 -238
  468. package/core/env/package.json +0 -55
  469. package/core/env/src/index.ts +0 -76
  470. package/core/env/src/types.ts +0 -54
  471. package/core/env/src/utils.ts +0 -1
  472. package/core/env/tests/example.test.ts +0 -5
  473. package/core/env/tsconfig.json +0 -3
  474. package/core/error-handling/README.md +0 -131
  475. package/core/error-handling/build.ts +0 -8
  476. package/core/error-handling/dist/index.js +0 -432
  477. package/core/error-handling/package.json +0 -63
  478. package/core/error-handling/src/handler.ts +0 -51
  479. package/core/error-handling/src/index.ts +0 -2
  480. package/core/error-handling/tests/example.test.ts +0 -5
  481. package/core/error-handling/tsconfig.json +0 -3
  482. package/core/eslint-config/.gitattributes +0 -2
  483. package/core/eslint-config/README.md +0 -587
  484. package/core/eslint-config/build.ts +0 -8
  485. package/core/eslint-config/package.json +0 -122
  486. package/core/eslint-config/src/configs/comments.ts +0 -19
  487. package/core/eslint-config/src/configs/formatters.ts +0 -187
  488. package/core/eslint-config/src/configs/ignores.ts +0 -10
  489. package/core/eslint-config/src/configs/imports.ts +0 -46
  490. package/core/eslint-config/src/configs/index.ts +0 -21
  491. package/core/eslint-config/src/configs/javascript.ts +0 -226
  492. package/core/eslint-config/src/configs/jsdoc.ts +0 -42
  493. package/core/eslint-config/src/configs/jsonc.ts +0 -86
  494. package/core/eslint-config/src/configs/markdown.ts +0 -110
  495. package/core/eslint-config/src/configs/node.ts +0 -23
  496. package/core/eslint-config/src/configs/perfectionist.ts +0 -18
  497. package/core/eslint-config/src/configs/react.ts +0 -111
  498. package/core/eslint-config/src/configs/sort.ts +0 -223
  499. package/core/eslint-config/src/configs/stylistic.ts +0 -57
  500. package/core/eslint-config/src/configs/svelte.ts +0 -107
  501. package/core/eslint-config/src/configs/test.ts +0 -54
  502. package/core/eslint-config/src/configs/toml.ts +0 -72
  503. package/core/eslint-config/src/configs/typescript.ts +0 -157
  504. package/core/eslint-config/src/configs/unicorn.ts +0 -41
  505. package/core/eslint-config/src/configs/unocss.ts +0 -43
  506. package/core/eslint-config/src/configs/vue.ts +0 -168
  507. package/core/eslint-config/src/configs/yaml.ts +0 -72
  508. package/core/eslint-config/src/factory.ts +0 -255
  509. package/core/eslint-config/src/globs.ts +0 -91
  510. package/core/eslint-config/src/index.ts +0 -9
  511. package/core/eslint-config/src/plugins.ts +0 -10
  512. package/core/eslint-config/src/stub.d.ts +0 -3
  513. package/core/eslint-config/src/types.ts +0 -366
  514. package/core/eslint-config/src/utils.ts +0 -72
  515. package/core/eslint-config/src/vendor/prettier-types.ts +0 -136
  516. package/core/eslint-config/test/cli.spec.ts +0 -91
  517. package/core/eslint-config/test/fixtures.test.ts +0 -125
  518. package/core/eslint-config/tsconfig.json +0 -17
  519. package/core/eslint-config/tsup.config.ts +0 -8
  520. package/core/events/README.md +0 -76
  521. package/core/events/build.ts +0 -8
  522. package/core/events/dist/index.js +0 -63
  523. package/core/events/package.json +0 -53
  524. package/core/events/src/index.ts +0 -167
  525. package/core/events/tests/example.test.ts +0 -5
  526. package/core/events/tsconfig.json +0 -3
  527. package/core/faker/README.md +0 -53
  528. package/core/faker/build.ts +0 -8
  529. package/core/faker/dist/index.js +0 -6
  530. package/core/faker/package.json +0 -62
  531. package/core/faker/src/index.ts +0 -1
  532. package/core/faker/tests/example.test.ts +0 -5
  533. package/core/faker/tsconfig.json +0 -3
  534. package/core/git/README.md +0 -65
  535. package/core/git/build.ts +0 -8
  536. package/core/git/dist/index.js +0 -46
  537. package/core/git/package.json +0 -69
  538. package/core/git/src/index.ts +0 -63
  539. package/core/git/tests/example.test.ts +0 -5
  540. package/core/git/tsconfig.json +0 -3
  541. package/core/health/README.md +0 -56
  542. package/core/health/build.ts +0 -8
  543. package/core/health/dist/index.js +0 -9
  544. package/core/health/package.json +0 -59
  545. package/core/health/src/drivers/index.ts +0 -1
  546. package/core/health/src/drivers/ohdear.ts +0 -1
  547. package/core/health/src/index.ts +0 -2
  548. package/core/health/src/notifications/index.ts +0 -1
  549. package/core/health/tests/example.test.ts +0 -5
  550. package/core/health/tsconfig.json +0 -3
  551. package/core/http/README.md +0 -59
  552. package/core/http/build.ts +0 -8
  553. package/core/http/dist/index.js +0 -65
  554. package/core/http/package.json +0 -53
  555. package/core/http/src/index.ts +0 -71
  556. package/core/http/tsconfig.json +0 -3
  557. package/core/index.ts +0 -57
  558. package/core/lint/.eslintrc.json +0 -3
  559. package/core/lint/README.md +0 -73
  560. package/core/lint/build.ts +0 -8
  561. package/core/lint/dist/index.js +0 -6
  562. package/core/lint/package.json +0 -70
  563. package/core/lint/src/index.ts +0 -3
  564. package/core/lint/tests/example.test.ts +0 -5
  565. package/core/lint/tsconfig.json +0 -3
  566. package/core/logging/README.md +0 -58
  567. package/core/logging/build.ts +0 -8
  568. package/core/logging/dist/index.js +0 -90
  569. package/core/logging/package.json +0 -62
  570. package/core/logging/src/index.ts +0 -137
  571. package/core/logging/tests/example.test.ts +0 -5
  572. package/core/logging/tsconfig.json +0 -3
  573. package/core/notifications/README.md +0 -272
  574. package/core/notifications/build.ts +0 -8
  575. package/core/notifications/dist/index.js +0 -54
  576. package/core/notifications/package.json +0 -104
  577. package/core/notifications/src/drivers/chat.ts +0 -1
  578. package/core/notifications/src/drivers/email.ts +0 -1
  579. package/core/notifications/src/drivers/index.ts +0 -4
  580. package/core/notifications/src/drivers/push.ts +0 -1
  581. package/core/notifications/src/drivers/sms.ts +0 -1
  582. package/core/notifications/src/index.ts +0 -51
  583. package/core/notifications/src/tailwind.config.ts +0 -39
  584. package/core/notifications/src/utils/config.ts +0 -5
  585. package/core/notifications/src/utils/template.html +0 -8
  586. package/core/notifications/tests/chat/Slack.test.ts +0 -34
  587. package/core/notifications/tests/email/Mailgun.test.ts +0 -40
  588. package/core/notifications/tests/email/Sendgrid.test.ts +0 -40
  589. package/core/notifications/tests/sms/Twilio.test.ts +0 -37
  590. package/core/notifications/tsconfig.json +0 -3
  591. package/core/objects/README.md +0 -71
  592. package/core/objects/build.ts +0 -8
  593. package/core/objects/dist/index.js +0 -64
  594. package/core/objects/package.json +0 -64
  595. package/core/objects/src/index.ts +0 -145
  596. package/core/objects/tests/example.test.ts +0 -5
  597. package/core/objects/tsconfig.json +0 -3
  598. package/core/orm/README.md +0 -48
  599. package/core/orm/build.ts +0 -8
  600. package/core/orm/dist/index.js +0 -6
  601. package/core/orm/package.json +0 -60
  602. package/core/orm/src/index.ts +0 -49
  603. package/core/orm/tests/example.test.ts +0 -5
  604. package/core/orm/tsconfig.json +0 -3
  605. package/core/path/README.md +0 -64
  606. package/core/path/build.ts +0 -8
  607. package/core/path/dist/index.js +0 -587
  608. package/core/path/package.json +0 -55
  609. package/core/path/src/index.ts +0 -632
  610. package/core/path/tests/example.test.ts +0 -5
  611. package/core/path/tsconfig.json +0 -3
  612. package/core/payments/README.md +0 -64
  613. package/core/payments/build.ts +0 -8
  614. package/core/payments/dist/index.js +0 -6297
  615. package/core/payments/package.json +0 -61
  616. package/core/payments/src/drivers/stripe.ts +0 -116
  617. package/core/payments/src/index.ts +0 -1
  618. package/core/payments/tests/example.test.ts +0 -5
  619. package/core/payments/tsconfig.json +0 -3
  620. package/core/playwright.config.ts +0 -109
  621. package/core/push/README.md +0 -71
  622. package/core/push/build.ts +0 -9
  623. package/core/push/dist/index.js +0 -35
  624. package/core/push/package.json +0 -65
  625. package/core/push/src/drivers/expo.ts +0 -21
  626. package/core/push/src/drivers/fcm.ts +0 -21
  627. package/core/push/src/drivers/index.ts +0 -2
  628. package/core/push/src/index.ts +0 -1
  629. package/core/push/tests/example.test.ts +0 -5
  630. package/core/push/tsconfig.json +0 -3
  631. package/core/query-builder/README.md +0 -48
  632. package/core/query-builder/build.ts +0 -8
  633. package/core/query-builder/dist/index.js +0 -18
  634. package/core/query-builder/package.json +0 -60
  635. package/core/query-builder/src/index.ts +0 -1
  636. package/core/query-builder/src/kysely.ts +0 -38
  637. package/core/query-builder/tests/example.test.ts +0 -5
  638. package/core/query-builder/tsconfig.json +0 -3
  639. package/core/queue/README.md +0 -59
  640. package/core/queue/build.ts +0 -8
  641. package/core/queue/dist/index.js +0 -25
  642. package/core/queue/package.json +0 -56
  643. package/core/queue/src/index.ts +0 -23
  644. package/core/queue/tests/example.test.ts +0 -5
  645. package/core/queue/tsconfig.json +0 -3
  646. package/core/raycast/package.json +0 -9
  647. package/core/raycast/src/index.ts +0 -0
  648. package/core/realtime/README.md +0 -59
  649. package/core/realtime/build.ts +0 -8
  650. package/core/realtime/dist/index.js +0 -6
  651. package/core/realtime/package.json +0 -53
  652. package/core/realtime/src/drivers/index.ts +0 -1
  653. package/core/realtime/src/index.ts +0 -1
  654. package/core/realtime/tests/example.test.ts +0 -5
  655. package/core/realtime/tsconfig.json +0 -3
  656. package/core/repl/README.md +0 -53
  657. package/core/repl/build.ts +0 -8
  658. package/core/repl/dist/index.js +0 -6
  659. package/core/repl/package.json +0 -60
  660. package/core/repl/src/index.ts +0 -1
  661. package/core/repl/tests/example.test.ts +0 -5
  662. package/core/repl/tsconfig.json +0 -3
  663. package/core/router/README.md +0 -59
  664. package/core/router/build.ts +0 -8
  665. package/core/router/dist/index.js +0 -1544
  666. package/core/router/package.json +0 -64
  667. package/core/router/src/index.ts +0 -4
  668. package/core/router/src/middleware.ts +0 -34
  669. package/core/router/src/request.ts +0 -44
  670. package/core/router/src/router.ts +0 -310
  671. package/core/router/src/server.ts +0 -173
  672. package/core/router/tests/example.test.ts +0 -5
  673. package/core/router/tsconfig.json +0 -3
  674. package/core/scheduler/README.md +0 -137
  675. package/core/scheduler/build.ts +0 -8
  676. package/core/scheduler/dist/index.js +0 -742
  677. package/core/scheduler/package.json +0 -62
  678. package/core/scheduler/src/constants.ts +0 -81
  679. package/core/scheduler/src/errors.ts +0 -7
  680. package/core/scheduler/src/index.ts +0 -20
  681. package/core/scheduler/src/job.ts +0 -315
  682. package/core/scheduler/src/schedule.ts +0 -116
  683. package/core/scheduler/src/time.ts +0 -823
  684. package/core/scheduler/src/types/cron.ts +0 -98
  685. package/core/scheduler/src/types/utils.ts +0 -14
  686. package/core/scheduler/src/utils.ts +0 -19
  687. package/core/scheduler/tests/cron.fuzz.ts +0 -120
  688. package/core/scheduler/tests/cron.test.ts +0 -1243
  689. package/core/scheduler/tests/crontime.test.ts +0 -780
  690. package/core/scheduler/tsconfig.json +0 -3
  691. package/core/search-engine/README.md +0 -66
  692. package/core/search-engine/build.ts +0 -8
  693. package/core/search-engine/dist/index.js +0 -87
  694. package/core/search-engine/package.json +0 -68
  695. package/core/search-engine/src/drivers/index.ts +0 -1
  696. package/core/search-engine/src/drivers/meilisearch.ts +0 -124
  697. package/core/search-engine/src/drivers/opensearch.ts +0 -59
  698. package/core/search-engine/src/helpers.ts +0 -138
  699. package/core/search-engine/src/index.ts +0 -69
  700. package/core/search-engine/tests/example.test.ts +0 -5
  701. package/core/search-engine/tsconfig.json +0 -3
  702. package/core/security/README.md +0 -66
  703. package/core/security/build.ts +0 -8
  704. package/core/security/dist/index.js +0 -3285
  705. package/core/security/package.json +0 -66
  706. package/core/security/src/crypt.ts +0 -23
  707. package/core/security/src/hash.ts +0 -54
  708. package/core/security/src/index.ts +0 -3
  709. package/core/security/src/key.ts +0 -11
  710. package/core/security/tests/example.test.ts +0 -5
  711. package/core/security/tsconfig.json +0 -3
  712. package/core/server/README.md +0 -51
  713. package/core/server/build.ts +0 -8
  714. package/core/server/dist/index.js +0 -13591
  715. package/core/server/package.json +0 -68
  716. package/core/server/src/config.ts +0 -76
  717. package/core/server/src/index.ts +0 -1
  718. package/core/server/tests/example.test.ts +0 -5
  719. package/core/server/tsconfig.json +0 -3
  720. package/core/shell/README.md +0 -55
  721. package/core/shell/build.ts +0 -8
  722. package/core/shell/dist/index.js +0 -6
  723. package/core/shell/package.json +0 -39
  724. package/core/shell/src/buddy.plugin.zsh +0 -120
  725. package/core/shell/src/index.ts +0 -1
  726. package/core/signals/README.md +0 -105
  727. package/core/signals/build.ts +0 -8
  728. package/core/signals/dist/index.js +0 -9
  729. package/core/signals/package.json +0 -64
  730. package/core/signals/src/index.ts +0 -1
  731. package/core/signals/tests/example.test.ts +0 -5
  732. package/core/signals/tsconfig.json +0 -3
  733. package/core/slug/README.md +0 -59
  734. package/core/slug/build.ts +0 -8
  735. package/core/slug/dist/index.js +0 -5
  736. package/core/slug/package.json +0 -66
  737. package/core/slug/src/index.ts +0 -56
  738. package/core/slug/tests/example.test.ts +0 -5
  739. package/core/slug/tsconfig.json +0 -3
  740. package/core/sms/README.md +0 -137
  741. package/core/sms/build.ts +0 -9
  742. package/core/sms/dist/index.js +0 -240
  743. package/core/sms/package.json +0 -83
  744. package/core/sms/src/drivers/gupshup.ts +0 -21
  745. package/core/sms/src/drivers/index.ts +0 -8
  746. package/core/sms/src/drivers/nexmo.ts +0 -23
  747. package/core/sms/src/drivers/plivo.ts +0 -23
  748. package/core/sms/src/drivers/sms77.ts +0 -22
  749. package/core/sms/src/drivers/sns.ts +0 -22
  750. package/core/sms/src/drivers/telnyx.ts +0 -23
  751. package/core/sms/src/drivers/termii.ts +0 -22
  752. package/core/sms/src/drivers/twilio.ts +0 -23
  753. package/core/sms/src/index.ts +0 -1
  754. package/core/sms/tests/example.test.ts +0 -5
  755. package/core/sms/tsconfig.json +0 -3
  756. package/core/storage/README.md +0 -74
  757. package/core/storage/build.ts +0 -8
  758. package/core/storage/dist/index.js +0 -816
  759. package/core/storage/package.json +0 -78
  760. package/core/storage/src/copy.ts +0 -42
  761. package/core/storage/src/delete.ts +0 -131
  762. package/core/storage/src/drivers/aws.ts +0 -15
  763. package/core/storage/src/drivers/index.ts +0 -1
  764. package/core/storage/src/files.ts +0 -187
  765. package/core/storage/src/folders.ts +0 -51
  766. package/core/storage/src/fs.ts +0 -9
  767. package/core/storage/src/glob.ts +0 -1
  768. package/core/storage/src/hash.ts +0 -39
  769. package/core/storage/src/helpers.ts +0 -29
  770. package/core/storage/src/index.ts +0 -11
  771. package/core/storage/src/move.ts +0 -84
  772. package/core/storage/src/storage.ts +0 -10
  773. package/core/storage/src/visibility.ts +0 -6
  774. package/core/storage/src/zip.ts +0 -55
  775. package/core/storage/tests/example.test.ts +0 -5
  776. package/core/storage/tsconfig.json +0 -3
  777. package/core/strings/README.md +0 -137
  778. package/core/strings/build.ts +0 -9
  779. package/core/strings/dist/index.js +0 -393
  780. package/core/strings/package.json +0 -82
  781. package/core/strings/src/case.ts +0 -27
  782. package/core/strings/src/helpers.ts +0 -3
  783. package/core/strings/src/index.ts +0 -2
  784. package/core/strings/src/is.ts +0 -170
  785. package/core/strings/src/macro.ts +0 -131
  786. package/core/strings/src/pluralize.ts +0 -26
  787. package/core/strings/src/string.ts +0 -5
  788. package/core/strings/src/types.ts +0 -4
  789. package/core/strings/src/utils.ts +0 -117
  790. package/core/strings/tests/example.test.ts +0 -5
  791. package/core/strings/tsconfig.json +0 -3
  792. package/core/tables/README.md +0 -110
  793. package/core/tables/examples/vue/App.stx +0 -12
  794. package/core/tables/examples/vue/favicon.png +0 -0
  795. package/core/tables/examples/vue/index.html +0 -20
  796. package/core/tables/examples/web/favicon.png +0 -0
  797. package/core/tables/examples/web/index.html +0 -13
  798. package/core/tables/index.html +0 -13
  799. package/core/tables/package.json +0 -57
  800. package/core/tables/src/App.stx +0 -23
  801. package/core/tables/src/commands/index.ts +0 -1
  802. package/core/tables/src/components/Demo.stx +0 -84
  803. package/core/tables/src/components/README.md +0 -109
  804. package/core/tables/src/components/Table.stx +0 -342
  805. package/core/tables/src/components/TableBody.stx +0 -32
  806. package/core/tables/src/components/TableCellActionItems.stx +0 -9
  807. package/core/tables/src/components/TableFilters.stx +0 -704
  808. package/core/tables/src/components/TableHead.stx +0 -60
  809. package/core/tables/src/components/TablePagination.stx +0 -131
  810. package/core/tables/src/components/TableRow.stx +0 -73
  811. package/core/tables/src/components/TableSearch.stx +0 -39
  812. package/core/tables/src/components/Tooltip.stx +0 -10
  813. package/core/tables/src/components.d.ts +0 -24
  814. package/core/tables/src/config/tables.ts +0 -2
  815. package/core/tables/src/docs/index.md +0 -0
  816. package/core/tables/src/functions/README.md +0 -8
  817. package/core/tables/src/functions/dark.ts +0 -3
  818. package/core/tables/src/functions/index.ts +0 -2
  819. package/core/tables/src/functions/table.ts +0 -207
  820. package/core/tables/src/main.ts +0 -4
  821. package/core/tables/tests/example.test.ts +0 -5
  822. package/core/tables/tsconfig.json +0 -3
  823. package/core/testing/README.md +0 -59
  824. package/core/testing/build.ts +0 -8
  825. package/core/testing/dist/index.js +0 -15025
  826. package/core/testing/package.json +0 -65
  827. package/core/testing/src/index.ts +0 -13
  828. package/core/testing/tsconfig.json +0 -3
  829. package/core/tinker/package.json +0 -47
  830. package/core/tinker/src/index.ts +0 -1
  831. package/core/tinker/tsconfig.json +0 -3
  832. package/core/tmp.json +0 -0
  833. package/core/tsconfig.json +0 -83
  834. package/core/tunnel/README.md +0 -53
  835. package/core/tunnel/build.ts +0 -8
  836. package/core/tunnel/dist/index.js +0 -10
  837. package/core/tunnel/package.json +0 -58
  838. package/core/tunnel/src/index.ts +0 -6
  839. package/core/tunnel/tests/example.test.ts +0 -5
  840. package/core/tunnel/tsconfig.json +0 -3
  841. package/core/types/README.md +0 -59
  842. package/core/types/build.ts +0 -8
  843. package/core/types/dist/index.js +0 -2285
  844. package/core/types/package.json +0 -87
  845. package/core/types/src/ai.ts +0 -26
  846. package/core/types/src/analytics.ts +0 -21
  847. package/core/types/src/api.ts +0 -65
  848. package/core/types/src/app.ts +0 -151
  849. package/core/types/src/auto-imports.ts +0 -1
  850. package/core/types/src/binary.ts +0 -13
  851. package/core/types/src/build.ts +0 -2
  852. package/core/types/src/cache.ts +0 -98
  853. package/core/types/src/cdn.ts +0 -17
  854. package/core/types/src/chat.ts +0 -5
  855. package/core/types/src/cli.ts +0 -333
  856. package/core/types/src/cloud.ts +0 -105
  857. package/core/types/src/components.ts +0 -64
  858. package/core/types/src/configure.ts +0 -13
  859. package/core/types/src/cron-jobs.ts +0 -51
  860. package/core/types/src/database.ts +0 -45
  861. package/core/types/src/dependencies.ts +0 -69
  862. package/core/types/src/deploy.ts +0 -13
  863. package/core/types/src/dns.ts +0 -186
  864. package/core/types/src/docs.ts +0 -26
  865. package/core/types/src/email.ts +0 -19
  866. package/core/types/src/env.ts +0 -1
  867. package/core/types/src/errors.ts +0 -11
  868. package/core/types/src/events.ts +0 -30
  869. package/core/types/src/exit-code.ts +0 -10
  870. package/core/types/src/file-systems.ts +0 -70
  871. package/core/types/src/git.ts +0 -133
  872. package/core/types/src/hashing.ts +0 -131
  873. package/core/types/src/helpers.ts +0 -11
  874. package/core/types/src/i18n.ts +0 -19
  875. package/core/types/src/index.ts +0 -61
  876. package/core/types/src/inspect.ts +0 -10
  877. package/core/types/src/layout.ts +0 -8
  878. package/core/types/src/library.ts +0 -156
  879. package/core/types/src/logger.ts +0 -54
  880. package/core/types/src/manifest.ts +0 -9
  881. package/core/types/src/model.ts +0 -72
  882. package/core/types/src/money.ts +0 -3
  883. package/core/types/src/native.ts +0 -0
  884. package/core/types/src/notifications.ts +0 -147
  885. package/core/types/src/pages.ts +0 -10
  886. package/core/types/src/payments.ts +0 -65
  887. package/core/types/src/ports.ts +0 -19
  888. package/core/types/src/promise.ts +0 -1
  889. package/core/types/src/push.ts +0 -36
  890. package/core/types/src/pwa.ts +0 -8
  891. package/core/types/src/queue.ts +0 -38
  892. package/core/types/src/reactivity.ts +0 -1
  893. package/core/types/src/request.ts +0 -3
  894. package/core/types/src/router.ts +0 -73
  895. package/core/types/src/scheduler.ts +0 -1
  896. package/core/types/src/search-engine.ts +0 -136
  897. package/core/types/src/security.ts +0 -23
  898. package/core/types/src/services.ts +0 -44
  899. package/core/types/src/sms.ts +0 -5
  900. package/core/types/src/ssg.ts +0 -3
  901. package/core/types/src/stacks.ts +0 -246
  902. package/core/types/src/storage.ts +0 -13
  903. package/core/types/src/tables.ts +0 -57
  904. package/core/types/src/team.ts +0 -8
  905. package/core/types/src/ui.ts +0 -189
  906. package/core/types/src/utils.ts +0 -47
  907. package/core/types/tsconfig.json +0 -3
  908. package/core/ui/README.md +0 -66
  909. package/core/ui/build.ts +0 -8
  910. package/core/ui/dist/components.js +0 -68
  911. package/core/ui/dist/index.js +0 -121
  912. package/core/ui/package.json +0 -93
  913. package/core/ui/src/components/autocomplete.ts +0 -0
  914. package/core/ui/src/components/disclosure.ts +0 -5
  915. package/core/ui/src/components/menu.ts +0 -1
  916. package/core/ui/src/components/modal.ts +0 -6
  917. package/core/ui/src/components/popover.ts +0 -1
  918. package/core/ui/src/components/radio-group.ts +0 -5
  919. package/core/ui/src/components/select.ts +0 -6
  920. package/core/ui/src/components/tabs.ts +0 -1
  921. package/core/ui/src/components/toggle.ts +0 -1
  922. package/core/ui/src/components/transition.ts +0 -1
  923. package/core/ui/src/components.ts +0 -10
  924. package/core/ui/src/index.ts +0 -15
  925. package/core/ui/src/uno.config.ts +0 -66
  926. package/core/ui/tests/example.test.ts +0 -5
  927. package/core/ui/tsconfig.json +0 -3
  928. package/core/utils/build.ts +0 -8
  929. package/core/utils/dist/index.js +0 -3240
  930. package/core/utils/package.json +0 -111
  931. package/core/utils/scripts/export-size.ts +0 -94
  932. package/core/utils/src/base.ts +0 -12
  933. package/core/utils/src/clean.ts +0 -17
  934. package/core/utils/src/config.ts +0 -25
  935. package/core/utils/src/currency.ts +0 -29
  936. package/core/utils/src/debounce.ts +0 -1
  937. package/core/utils/src/delete.ts +0 -1
  938. package/core/utils/src/equal.ts +0 -27
  939. package/core/utils/src/export-size.ts +0 -1
  940. package/core/utils/src/find.ts +0 -91
  941. package/core/utils/src/function.ts +0 -32
  942. package/core/utils/src/git.ts +0 -11
  943. package/core/utils/src/glob.ts +0 -1
  944. package/core/utils/src/guards.ts +0 -39
  945. package/core/utils/src/hash.ts +0 -26
  946. package/core/utils/src/helpers.ts +0 -187
  947. package/core/utils/src/index.ts +0 -24
  948. package/core/utils/src/macroable.ts +0 -1
  949. package/core/utils/src/math.ts +0 -30
  950. package/core/utils/src/p.ts +0 -119
  951. package/core/utils/src/promise.ts +0 -117
  952. package/core/utils/src/regex.ts +0 -2
  953. package/core/utils/src/retry.ts +0 -33
  954. package/core/utils/src/sleep.ts +0 -60
  955. package/core/utils/src/throttle.ts +0 -44
  956. package/core/utils/src/vendors.ts +0 -258
  957. package/core/utils/src/versions.ts +0 -6
  958. package/core/utils/tests/example.test.ts +0 -5
  959. package/core/utils/tsconfig.json +0 -3
  960. package/core/validation/README.md +0 -53
  961. package/core/validation/build.ts +0 -5
  962. package/core/validation/dist/index.js +0 -187
  963. package/core/validation/package.json +0 -64
  964. package/core/validation/src/index.ts +0 -4
  965. package/core/validation/src/is.ts +0 -111
  966. package/core/validation/src/rules.ts +0 -126
  967. package/core/validation/src/types/index.ts +0 -7
  968. package/core/validation/src/types/money.ts +0 -17
  969. package/core/validation/src/validate.ts +0 -33
  970. package/core/validation/tests/example.test.ts +0 -5
  971. package/core/validation/tsconfig.json +0 -3
  972. package/core/vite/README.md +0 -59
  973. package/core/vite/build.ts +0 -9
  974. package/core/vite/dist/index.js +0 -644
  975. package/core/vite/package.json +0 -122
  976. package/core/vite/src/api.ts +0 -18
  977. package/core/vite/src/components.ts +0 -79
  978. package/core/vite/src/dashboard.ts +0 -100
  979. package/core/vite/src/desktop.ts +0 -3
  980. package/core/vite/src/example-vue.ts +0 -20
  981. package/core/vite/src/example-wc.ts +0 -24
  982. package/core/vite/src/functions.ts +0 -54
  983. package/core/vite/src/index.ts +0 -18
  984. package/core/vite/src/plugin/auto-imports.ts +0 -39
  985. package/core/vite/src/plugin/components.ts +0 -17
  986. package/core/vite/src/plugin/css-engine.ts +0 -18
  987. package/core/vite/src/plugin/devtools.ts +0 -1
  988. package/core/vite/src/plugin/docs.ts +0 -18
  989. package/core/vite/src/plugin/fonts.ts +0 -6
  990. package/core/vite/src/plugin/i18n.ts +0 -13
  991. package/core/vite/src/plugin/inspect.ts +0 -6
  992. package/core/vite/src/plugin/layouts.ts +0 -17
  993. package/core/vite/src/plugin/markdown.ts +0 -26
  994. package/core/vite/src/plugin/pages.ts +0 -34
  995. package/core/vite/src/plugin/presets.ts +0 -17
  996. package/core/vite/src/plugin/pwa.ts +0 -33
  997. package/core/vite/src/plugin/router.ts +0 -17
  998. package/core/vite/src/plugin/stacks.ts +0 -150
  999. package/core/vite/src/plugin/ui-engine.ts +0 -19
  1000. package/core/vite/src/plugins.ts +0 -12
  1001. package/core/vite/src/system-tray.ts +0 -100
  1002. package/core/vite/src/views.ts +0 -97
  1003. package/core/vite/src/web-components.ts +0 -67
  1004. package/core/vite/tests/example.test.ts +0 -5
  1005. package/core/vite/tsconfig.json +0 -3
  1006. package/core/web-types.json +0 -67
  1007. package/core/whois/README.md +0 -55
  1008. package/core/whois/build.ts +0 -8
  1009. package/core/whois/dist/index.js +0 -600
  1010. package/core/whois/package.json +0 -61
  1011. package/core/whois/src/index.ts +0 -499
  1012. package/core/whois/src/parameters.ts +0 -4
  1013. package/core/whois/src/servers.ts +0 -318
  1014. package/core/whois/src/test.ts +0 -5
  1015. package/core/whois/tests/example.test.ts +0 -5
  1016. package/core/whois/tsconfig.json +0 -3
  1017. package/core/x-ray/README.md +0 -55
  1018. package/core/x-ray/index.html +0 -13
  1019. package/core/x-ray/package.json +0 -53
  1020. package/core/x-ray/routes/index.ts +0 -19
  1021. package/core/x-ray/src/client.ts +0 -14
  1022. package/core/x-ray/src/desktop/api/nitro.config.ts +0 -19
  1023. package/core/x-ray/src/desktop/api/routes/api/logs.ts +0 -7
  1024. package/core/x-ray/src/desktop/api/routes/api/store-logs.ts +0 -22
  1025. package/core/x-ray/src/desktop/api/src/types.ts +0 -7
  1026. package/core/x-ray/src/desktop/api/storage/index.ts +0 -7
  1027. package/core/x-ray/src/desktop/app.stx +0 -377
  1028. package/core/x-ray/src/desktop/functions/http.ts +0 -26
  1029. package/core/x-ray/src/desktop/functions/types.ts +0 -7
  1030. package/core/x-ray/src/desktop/main.ts +0 -8
  1031. package/core/x-ray/src/desktop/modules/counter/mod.stx +0 -44
  1032. package/core/x-ray/src/desktop/modules/fetcher/mod.stx +0 -63
  1033. package/core/x-ray/src/desktop/plugins/unified/unified-app.ts +0 -5
  1034. package/core/x-ray/src/desktop/plugins/unified/unified-styles.scss +0 -0
  1035. package/core/x-ray/src/desktop/services/http.ts +0 -45
  1036. package/core/x-ray/src/desktop/styles/app.scss +0 -0
  1037. package/core/x-ray/src/http.ts +0 -26
  1038. package/core/x-ray/src/index.ts +0 -42
  1039. package/core/x-ray/src/ray.config.ts +0 -27
  1040. package/core/x-ray/src/types.ts +0 -8
  1041. package/core/x-ray/tests/example.test.ts +0 -5
  1042. package/core/x-ray/tsconfig.json +0 -3
  1043. package/ide/dictionary.txt +0 -333
  1044. package/ide/jetbrains/.fleet/settings.json +0 -4
  1045. package/ide/jetbrains/.idea/.name +0 -1
  1046. package/ide/jetbrains/.idea/inspectionProfiles/Project_Default.xml +0 -6
  1047. package/ide/jetbrains/.idea/jsLinters/eslint.xml +0 -7
  1048. package/ide/jetbrains/.idea/modules.xml +0 -8
  1049. package/ide/jetbrains/.idea/stacks.iml +0 -22
  1050. package/ide/jetbrains/.idea/vcs.xml +0 -6
  1051. package/ide/jetbrains/.idea/webResources.xml +0 -14
  1052. package/ide/jetbrains/IntelliJ IDEA Global Settings +0 -0
  1053. package/ide/jetbrains/installed.txt +0 -4
  1054. package/ide/jetbrains/options/github-copilot.xml +0 -5
  1055. package/ide/jetbrains/options/nodejs.xml +0 -7
  1056. package/ide/jetbrains/options/templates.xml +0 -124
  1057. package/ide/jetbrains/templates/JavaScript.xml +0 -6
  1058. package/ide/jetbrains/templates/Stacks.xml +0 -8
  1059. package/ide/vscode/.vscode/README.md +0 -23
  1060. package/ide/vscode/.vscode/extensions.json +0 -5
  1061. package/ide/vscode/.vscode/settings.json +0 -135
  1062. package/ide/vscode/.vscode/stacks.code-snippets +0 -182
  1063. package/ide/vscode/LICENSE.md +0 -21
  1064. package/ide/vscode/README.md +0 -37
  1065. package/ide/vscode/logo.png +0 -0
  1066. package/ide/vscode/package.json +0 -63
  1067. package/stubs/.gitkeep +0 -0
  1068. package/stubs/TODO.md +0 -18
  1069. package/vcs/github/CODE_OF_CONDUCT.md +0 -83
  1070. package/vcs/github/CONTRIBUTING.md +0 -188
  1071. package/vcs/github/EXPLANATIONS.md +0 -41
  1072. package/vcs/github/FUNDING.yml +0 -1
  1073. package/vcs/github/ISSUE_TEMPLATE/bug_report.yml +0 -49
  1074. package/vcs/github/ISSUE_TEMPLATE/config.yml +0 -10
  1075. package/vcs/github/ISSUE_TEMPLATE/feature_request.yml +0 -44
  1076. package/vcs/github/SECURITY.md +0 -70
  1077. package/vcs/github/renovate.json +0 -5
  1078. package/vcs/github/stale.yml +0 -14
  1079. package/vcs/github/workflows/README.md +0 -16
  1080. package/vcs/github/workflows/ci.yml +0 -174
  1081. package/vcs/github/workflows/export-size.yml +0 -23
  1082. package/vcs/github/workflows/labeler.yml +0 -13
  1083. package/vcs/github/workflows/release.yml +0 -69
  1084. package/{core/README.md → README.md} +0 -0
  1085. package/{core/buddy → buddy}/README.md +0 -0
  1086. package/{core/buddy → buddy}/art/social.jpg +0 -0
  1087. package/{core/buddy → buddy}/bin/cli.ts +0 -0
  1088. package/{core/buddy/dist/chunk-0455e53fab4244b1.js → buddy/dist/chunk-970e033f764e29fc.js} +0 -0
  1089. package/{core/buddy → buddy}/src/commands/build.ts +0 -0
  1090. package/{core/buddy → buddy}/src/commands/changelog.ts +0 -0
  1091. package/{core/buddy → buddy}/src/commands/clean.ts +0 -0
  1092. package/{core/buddy → buddy}/src/commands/cloud.ts +0 -0
  1093. package/{core/buddy → buddy}/src/commands/configure.ts +0 -0
  1094. package/{core/buddy → buddy}/src/commands/create.ts +0 -0
  1095. package/{core/buddy → buddy}/src/commands/dns.ts +0 -0
  1096. package/{core/buddy → buddy}/src/commands/domains.ts +0 -0
  1097. package/{core/buddy → buddy}/src/commands/fresh.ts +0 -0
  1098. package/{core/buddy → buddy}/src/commands/generate.ts +0 -0
  1099. package/{core/buddy → buddy}/src/commands/http.ts +0 -0
  1100. package/{core/buddy → buddy}/src/commands/install.ts +0 -0
  1101. package/{core/buddy → buddy}/src/commands/key.ts +1 -1
  1102. /package/{core/buddy → buddy}/src/commands/lint.ts +0 -0
  1103. /package/{core/buddy → buddy}/src/commands/migrate.ts +0 -0
  1104. /package/{core/buddy → buddy}/src/commands/release.ts +0 -0
  1105. /package/{core/buddy → buddy}/src/commands/seed.ts +0 -0
  1106. /package/{core/buddy → buddy}/src/commands/test.ts +0 -0
  1107. /package/{core/buddy → buddy}/src/commands/tinker.ts +0 -0
  1108. /package/{core/buddy → buddy}/src/commands/upgrade.ts +0 -0
  1109. /package/{core/buddy → buddy}/src/commands/version.ts +0 -0
  1110. /package/{core/buddy → buddy}/src/custom-cli.ts +0 -0
  1111. /package/{core/buddy → buddy}/src/index.ts +0 -0
  1112. /package/{core/actions → buddy}/tsconfig.json +0 -0
@@ -1,427 +0,0 @@
1
- /* eslint-disable no-new */
2
- import type { aws_certificatemanager as acm, aws_lambda as lambda, aws_s3 as s3, aws_wafv2 as wafv2 } from 'aws-cdk-lib'
3
- import { Duration, Fn, CfnOutput as Output, aws_cloudfront as cloudfront, aws_cloudfront_origins as origins, aws_route53 as route53, aws_route53_targets as targets } from 'aws-cdk-lib'
4
- import type { Construct } from 'constructs'
5
- import { config } from '@stacksjs/config'
6
- import { hasFiles } from '@stacksjs/storage'
7
- import { path as p } from '@stacksjs/path'
8
- import { env } from '@stacksjs/env'
9
- import type { ApplicationLoadBalancer } from 'aws-cdk-lib/aws-elasticloadbalancingv2'
10
- import * as kinesis from 'aws-cdk-lib/aws-kinesis'
11
- import type { NestedCloudProps } from '../types'
12
- import type { EnvKey } from '../../../../env'
13
-
14
- export interface CdnStackProps extends NestedCloudProps {
15
- certificate: acm.Certificate
16
- logBucket: s3.Bucket
17
- publicBucket: s3.Bucket
18
- firewall: wafv2.CfnWebACL
19
- originRequestFunction: lambda.Function
20
- zone: route53.IHostedZone
21
- webServer?: lambda.Function
22
- webServerUrl?: lambda.FunctionUrl
23
- cliSetupUrl: lambda.FunctionUrl
24
- askAiUrl: lambda.FunctionUrl
25
- summarizeAiUrl: lambda.FunctionUrl
26
- lb?: ApplicationLoadBalancer
27
- }
28
-
29
- export class CdnStack {
30
- distribution: cloudfront.Distribution
31
- originAccessIdentity: cloudfront.OriginAccessIdentity
32
- cdnCachePolicy: cloudfront.CachePolicy
33
- apiCachePolicy: cloudfront.CachePolicy | undefined
34
- vanityUrl: string
35
- realtimeLogConfig: cloudfront.RealtimeLogConfig
36
- props: CdnStackProps
37
-
38
- constructor(scope: Construct, props: CdnStackProps) {
39
- this.props = props
40
-
41
- this.originAccessIdentity = new cloudfront.OriginAccessIdentity(scope, 'OAI')
42
-
43
- this.cdnCachePolicy = new cloudfront.CachePolicy(scope, 'CdnCachePolicy', {
44
- comment: 'Stacks CDN Cache Policy',
45
- cachePolicyName: `${props.slug}-${props.appEnv}-cdn-cache-policy`,
46
- minTtl: config.cloud.cdn?.minTtl ? Duration.seconds(config.cloud.cdn.minTtl) : undefined,
47
- defaultTtl: config.cloud.cdn?.defaultTtl ? Duration.seconds(config.cloud.cdn.defaultTtl) : undefined,
48
- maxTtl: config.cloud.cdn?.maxTtl ? Duration.seconds(config.cloud.cdn.maxTtl) : undefined,
49
- cookieBehavior: this.getCookieBehavior(config.cloud.cdn?.cookieBehavior),
50
- })
51
-
52
- // Step 1: Create a Kinesis Firehose delivery stream for the logs
53
- const logStream = new kinesis.Stream(scope, 'StacksCdnRealtimeLogStream', {
54
- streamName: 'StacksCdnRealtimeLogStream',
55
- retentionPeriod: Duration.days(1),
56
- shardCount: 1,
57
- encryption: kinesis.StreamEncryption.UNENCRYPTED,
58
- })
59
-
60
- // Create an IAM role for CloudFront to write logs to Kinesis Firehose
61
- // new iam.Role(scope, 'LoggingRole', {
62
- // assumedBy: new iam.ServicePrincipal('cloudfront.amazonaws.com'),
63
- // inlinePolicies: {
64
- // loggingPolicy: new iam.PolicyDocument({
65
- // statements: [
66
- // new iam.PolicyStatement({
67
- // actions: ['kinesis:PutRecord', 'kinesis:PutRecordBatch'],
68
- // resources: [logStream.streamArn],
69
- // }),
70
- // ],
71
- // }),
72
- // },
73
- // })
74
-
75
- // TODO: make this configurable
76
- this.realtimeLogConfig = new cloudfront.RealtimeLogConfig(scope, 'StacksRealTimeLogConfig', {
77
- endPoints: [
78
- cloudfront.Endpoint.fromKinesisStream(logStream),
79
- ],
80
- fields: [
81
- 'timestamp',
82
- 'c-ip',
83
- 'cs-method',
84
- 'cs-uri-stem',
85
- 'cs-uri-query',
86
- 'cs-referer',
87
- 'cs-user-agent',
88
- 'sc-status',
89
- ],
90
- samplingRate: 100, // Adjust the sampling rate as needed
91
- })
92
-
93
- // the actual CDN distribution
94
- this.distribution = new cloudfront.Distribution(scope, 'Cdn', {
95
- domainNames: [props.domain],
96
- defaultRootObject: 'index.html',
97
- comment: `CDN for ${config.app.url}`,
98
- certificate: props.certificate,
99
- enableLogging: true,
100
- logBucket: props.logBucket,
101
- httpVersion: cloudfront.HttpVersion.HTTP2_AND_3,
102
- priceClass: cloudfront.PriceClass.PRICE_CLASS_ALL,
103
- enabled: true,
104
- minimumProtocolVersion: cloudfront.SecurityPolicyProtocol.TLS_V1_2_2021,
105
- webAclId: props.firewall.attrArn,
106
- enableIpv6: true,
107
-
108
- defaultBehavior: {
109
- origin: new origins.S3Origin(props.publicBucket, {
110
- originAccessIdentity: this.originAccessIdentity,
111
- }),
112
- edgeLambdas: [
113
- {
114
- eventType: cloudfront.LambdaEdgeEventType.ORIGIN_REQUEST,
115
- functionVersion: props.originRequestFunction.currentVersion,
116
- },
117
- ],
118
- compress: config.cloud.cdn?.compress,
119
- allowedMethods: this.allowedMethods(),
120
- cachedMethods: this.cachedMethods(),
121
- viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,
122
- cachePolicy: this.cdnCachePolicy,
123
- realtimeLogConfig: this.realtimeLogConfig,
124
- },
125
-
126
- additionalBehaviors: this.additionalBehaviors(scope, props),
127
-
128
- // Add custom error responses
129
- errorResponses: [
130
- {
131
- httpStatus: 403,
132
- responsePagePath: '/index.html',
133
- responseHttpStatus: 200,
134
- ttl: Duration.seconds(0),
135
- },
136
- ],
137
- })
138
-
139
- new route53.ARecord(scope, 'AliasRecord', {
140
- recordName: props.domain,
141
- zone: props.zone,
142
- target: route53.RecordTarget.fromAlias(new targets.CloudFrontTarget(this.distribution)),
143
- })
144
-
145
- new Output(scope, 'DistributionId', {
146
- value: this.distribution.distributionId,
147
- })
148
-
149
- new Output(scope, 'AppUrl', {
150
- value: `https://${props.domain}`,
151
- description: 'The URL of the deployed application',
152
- })
153
-
154
- this.vanityUrl = `https://${this.distribution.domainName}`
155
- new Output(scope, 'AppVanityUrl', {
156
- value: this.vanityUrl,
157
- description: 'The vanity URL of the deployed application',
158
- })
159
-
160
- // this.originAccessIdentity = originAccessIdentity
161
- // this.cdnCachePolicy = cdnCachePolicy
162
- }
163
-
164
- getCookieBehavior(behavior: string | undefined): cloudfront.CacheCookieBehavior | undefined {
165
- switch (behavior) {
166
- case 'all':
167
- return cloudfront.CacheCookieBehavior.all()
168
- case 'none':
169
- return cloudfront.CacheCookieBehavior.none()
170
- case 'allowList':
171
- // If you have a list of cookies, replace `myCookie` with your cookie
172
- return cloudfront.CacheCookieBehavior.allowList(...config.cloud.cdn?.allowList.cookies || [])
173
- default:
174
- return undefined
175
- }
176
- }
177
-
178
- allowedMethods(): cloudfront.AllowedMethods {
179
- switch (config.cloud.cdn?.allowedMethods) {
180
- case 'ALL':
181
- return cloudfront.AllowedMethods.ALLOW_ALL
182
- case 'GET_HEAD':
183
- return cloudfront.AllowedMethods.ALLOW_GET_HEAD
184
- case 'GET_HEAD_OPTIONS':
185
- return cloudfront.AllowedMethods.ALLOW_GET_HEAD_OPTIONS
186
- default:
187
- return cloudfront.AllowedMethods.ALLOW_ALL
188
- }
189
- }
190
-
191
- cachedMethods(): cloudfront.CachedMethods {
192
- switch (config.cloud.cdn?.cachedMethods) {
193
- case 'GET_HEAD':
194
- return cloudfront.CachedMethods.CACHE_GET_HEAD
195
- case 'GET_HEAD_OPTIONS':
196
- return cloudfront.CachedMethods.CACHE_GET_HEAD_OPTIONS
197
- default:
198
- return cloudfront.CachedMethods.CACHE_GET_HEAD
199
- }
200
- }
201
-
202
- allowedMethodsFromString(methods?: 'ALL' | 'GET_HEAD' | 'GET_HEAD_OPTIONS'): cloudfront.AllowedMethods {
203
- if (!methods)
204
- return cloudfront.AllowedMethods.ALLOW_ALL
205
-
206
- switch (methods) {
207
- case 'ALL':
208
- return cloudfront.AllowedMethods.ALLOW_ALL
209
- case 'GET_HEAD':
210
- return cloudfront.AllowedMethods.ALLOW_GET_HEAD
211
- case 'GET_HEAD_OPTIONS':
212
- return cloudfront.AllowedMethods.ALLOW_GET_HEAD_OPTIONS
213
- default:
214
- return cloudfront.AllowedMethods.ALLOW_ALL
215
- }
216
- }
217
-
218
- cachedMethodsFromString(methods?: 'GET_HEAD' | 'GET_HEAD_OPTIONS'): cloudfront.CachedMethods {
219
- if (!methods)
220
- return cloudfront.CachedMethods.CACHE_GET_HEAD
221
-
222
- switch (methods) {
223
- case 'GET_HEAD':
224
- return cloudfront.CachedMethods.CACHE_GET_HEAD
225
- case 'GET_HEAD_OPTIONS':
226
- return cloudfront.CachedMethods.CACHE_GET_HEAD_OPTIONS
227
- default:
228
- return cloudfront.CachedMethods.CACHE_GET_HEAD
229
- }
230
- }
231
-
232
- shouldDeployApi() {
233
- return config.cloud.api?.deploy
234
- }
235
-
236
- apiBehaviorOptions(scope: Construct, props: CdnStackProps): Record<string, cloudfront.BehaviorOptions> {
237
- const hostname = `api.${props.domain}`
238
-
239
- const origin = () => {
240
- return new origins.HttpOrigin(hostname, {
241
- originPath: '/',
242
- protocolPolicy: cloudfront.OriginProtocolPolicy.HTTPS_ONLY,
243
- })
244
- }
245
-
246
- return {
247
- '/api': {
248
- origin: origin(),
249
- compress: true,
250
- allowedMethods: cloudfront.AllowedMethods.ALLOW_ALL,
251
- cachedMethods: cloudfront.CachedMethods.CACHE_GET_HEAD_OPTIONS,
252
- cachePolicy: this.setApiCachePolicy(scope),
253
- viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,
254
- realtimeLogConfig: this.realtimeLogConfig,
255
- },
256
- '/api/*': {
257
- origin: origin(),
258
- compress: true,
259
- allowedMethods: cloudfront.AllowedMethods.ALLOW_ALL,
260
- cachedMethods: cloudfront.CachedMethods.CACHE_GET_HEAD_OPTIONS,
261
- cachePolicy: this.apiCachePolicy,
262
- viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,
263
- realtimeLogConfig: this.realtimeLogConfig,
264
- },
265
- }
266
- }
267
-
268
- docsBehaviorOptions(props: CdnStackProps): Record<string, cloudfront.BehaviorOptions> {
269
- return {
270
- '/docs': {
271
- origin: new origins.S3Origin(props.publicBucket, {
272
- originAccessIdentity: this.originAccessIdentity,
273
- originPath: '/docs',
274
- }),
275
- compress: true,
276
- allowedMethods: this.allowedMethodsFromString(config.cloud.cdn?.allowedMethods),
277
- cachedMethods: this.cachedMethodsFromString(config.cloud.cdn?.cachedMethods),
278
- viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,
279
- cachePolicy: cloudfront.CachePolicy.CACHING_OPTIMIZED,
280
- realtimeLogConfig: this.realtimeLogConfig,
281
- },
282
- '/docs/*': {
283
- origin: new origins.S3Origin(props.publicBucket, {
284
- originAccessIdentity: this.originAccessIdentity,
285
- originPath: '/docs',
286
- }),
287
- compress: true,
288
- allowedMethods: this.allowedMethodsFromString(config.cloud.cdn?.allowedMethods),
289
- cachedMethods: this.cachedMethodsFromString(config.cloud.cdn?.cachedMethods),
290
- viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,
291
- cachePolicy: cloudfront.CachePolicy.CACHING_OPTIMIZED,
292
- realtimeLogConfig: this.realtimeLogConfig,
293
- },
294
- }
295
- }
296
-
297
- aiBehaviorOptions(scope: Construct, props: CdnStackProps): Record<string, cloudfront.BehaviorOptions> {
298
- const hostname = Fn.select(2, Fn.split('/', props.askAiUrl.url))
299
- const summaryHostname = Fn.select(2, Fn.split('/', props.summarizeAiUrl.url))
300
-
301
- const aiCachePolicy = new cloudfront.CachePolicy(scope, 'AiCachePolicy', {
302
- comment: 'Stacks AI Cache Policy',
303
- cachePolicyName: `${this.props.slug}-${this.props.appEnv}-ai-cache-policy`,
304
- defaultTtl: Duration.seconds(0),
305
- // minTtl: config.cloud.cdn?.minTtl ? Duration.seconds(config.cloud.cdn.minTtl) : undefined,
306
- cookieBehavior: cloudfront.CacheCookieBehavior.none(),
307
- headerBehavior: cloudfront.CacheHeaderBehavior.allowList('Accept', 'x-api-key', 'Authorization', 'Content-Type'),
308
- queryStringBehavior: cloudfront.CacheQueryStringBehavior.all(),
309
- })
310
-
311
- return {
312
- '/ai/ask': {
313
- origin: new origins.HttpOrigin(hostname, {
314
- originPath: '/ai',
315
- protocolPolicy: cloudfront.OriginProtocolPolicy.HTTPS_ONLY,
316
- }),
317
- compress: false,
318
- allowedMethods: cloudfront.AllowedMethods.ALLOW_ALL,
319
- viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,
320
- cachePolicy: aiCachePolicy,
321
- realtimeLogConfig: this.realtimeLogConfig,
322
- },
323
- '/ai/summary': {
324
- origin: new origins.HttpOrigin(summaryHostname, {
325
- originPath: '/ai',
326
- protocolPolicy: cloudfront.OriginProtocolPolicy.HTTPS_ONLY,
327
- }),
328
- compress: false,
329
- allowedMethods: cloudfront.AllowedMethods.ALLOW_ALL,
330
- viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,
331
- cachePolicy: aiCachePolicy,
332
- realtimeLogConfig: this.realtimeLogConfig,
333
- },
334
- }
335
- }
336
-
337
- cliSetupBehaviorOptions(scope: Construct, props: CdnStackProps): Record<string, cloudfront.BehaviorOptions> {
338
- const hostname = Fn.select(2, Fn.split('/', props.cliSetupUrl.url))
339
-
340
- return {
341
- '/install': {
342
- origin: new origins.HttpOrigin(hostname, {
343
- originPath: '/cli-setup',
344
- protocolPolicy: cloudfront.OriginProtocolPolicy.HTTPS_ONLY,
345
- }),
346
- compress: false,
347
- allowedMethods: cloudfront.AllowedMethods.ALLOW_ALL,
348
- viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,
349
- cachePolicy: new cloudfront.CachePolicy(scope, 'CliSetupCachePolicy', {
350
- comment: 'Stacks CLI Setup Cache Policy',
351
- cachePolicyName: `${this.props.slug}-${this.props.appEnv}-cli-setup-cache-policy`,
352
- defaultTtl: Duration.seconds(0),
353
- // minTtl: config.cloud.cdn?.minTtl ? Duration.seconds(config.cloud.cdn.minTtl) : undefined,
354
- cookieBehavior: cloudfront.CacheCookieBehavior.none(),
355
- headerBehavior: cloudfront.CacheHeaderBehavior.none(),
356
- queryStringBehavior: cloudfront.CacheQueryStringBehavior.none(),
357
- }),
358
- realtimeLogConfig: this.realtimeLogConfig, // we potentially want to allow for tracking 100% of the traffic here?
359
- },
360
- }
361
- }
362
-
363
- shouldDeployAiEndpoints() {
364
- return config.cloud.ai
365
- }
366
-
367
- shouldDeployCliSetup() {
368
- return config.cloud.cli
369
- }
370
-
371
- shouldDeployDocs() {
372
- return hasFiles(p.projectPath('docs'))
373
- }
374
-
375
- additionalBehaviors(scope: Construct, props: CdnStackProps): Record<string, cloudfront.BehaviorOptions> {
376
- let behaviorOptions: Record<string, cloudfront.BehaviorOptions> = {}
377
-
378
- if (this.shouldDeployApi()) {
379
- const keysToRemove = ['_HANDLER', '_X_AMZN_TRACE_ID', 'AWS_REGION', 'AWS_EXECUTION_ENV', 'AWS_LAMBDA_FUNCTION_NAME', 'AWS_LAMBDA_FUNCTION_MEMORY_SIZE', 'AWS_LAMBDA_FUNCTION_VERSION', 'AWS_LAMBDA_INITIALIZATION_TYPE', 'AWS_LAMBDA_LOG_GROUP_NAME', 'AWS_LAMBDA_LOG_STREAM_NAME', 'AWS_ACCESS_KEY', 'AWS_ACCESS_KEY_ID', 'AWS_SECRET_ACCESS_KEY', 'AWS_SESSION_TOKEN', 'AWS_LAMBDA_RUNTIME_API', 'LAMBDA_TASK_ROOT', 'LAMBDA_RUNTIME_DIR', '_']
380
- keysToRemove.forEach(key => delete env[key as EnvKey])
381
-
382
- behaviorOptions = this.apiBehaviorOptions(scope, props)
383
- }
384
-
385
- // if docMode is used, we don't need to add a behavior for the docs
386
- // because the docs will be the root of the site
387
- if (this.shouldDeployDocs() && !config.app.docMode) {
388
- behaviorOptions = {
389
- ...this.docsBehaviorOptions(props),
390
- ...behaviorOptions,
391
- }
392
- }
393
-
394
- if (this.shouldDeployAiEndpoints()) {
395
- behaviorOptions = {
396
- ...this.aiBehaviorOptions(scope, props),
397
- ...behaviorOptions,
398
- }
399
- }
400
-
401
- if (this.shouldDeployCliSetup()) {
402
- behaviorOptions = {
403
- ...this.cliSetupBehaviorOptions(scope, props),
404
- ...behaviorOptions,
405
- }
406
- }
407
-
408
- return behaviorOptions
409
- }
410
-
411
- setApiCachePolicy(scope: Construct) {
412
- if (this.apiCachePolicy)
413
- return this.apiCachePolicy
414
-
415
- this.apiCachePolicy = new cloudfront.CachePolicy(scope, 'ApiCachePolicy', {
416
- comment: 'Stacks API Cache Policy',
417
- cachePolicyName: `${this.props.slug}-${this.props.appEnv}-api-cache-policy`,
418
- defaultTtl: Duration.seconds(0),
419
- // minTtl: config.cloud.cdn?.minTtl ? Duration.seconds(config.cloud.cdn.minTtl) : undefined,
420
- cookieBehavior: cloudfront.CacheCookieBehavior.none(),
421
- headerBehavior: cloudfront.CacheHeaderBehavior.allowList('Accept', 'x-api-key', 'Authorization', 'Content-Type'),
422
- queryStringBehavior: cloudfront.CacheQueryStringBehavior.none(),
423
- })
424
-
425
- return this.apiCachePolicy
426
- }
427
- }
@@ -1,45 +0,0 @@
1
- /* eslint-disable no-new */
2
- import { Duration, CfnOutput as Output, aws_lambda as lambda } from 'aws-cdk-lib'
3
- import type { Construct } from 'constructs'
4
- import type { NestedCloudProps } from '../types'
5
-
6
- export interface CliStackProps extends NestedCloudProps {
7
- }
8
-
9
- export class CliStack {
10
- cliSetupUrl: lambda.FunctionUrl
11
-
12
- constructor(scope: Construct, props: CliStackProps) {
13
- const cliSetupFunc = new lambda.Function(scope, 'CliSetupFunction', {
14
- functionName: `${props.slug}-${props.appEnv}-cli-setup`,
15
- description: 'Lambda function that triggers setup script for a Stacks project',
16
- runtime: lambda.Runtime.NODEJS_20_X,
17
- handler: 'index.handler',
18
- code: lambda.Code.fromAsset('../core/cloud/src/cloud/lambda/cli-setup'), // path relative to the cloud root package dir
19
- timeout: Duration.seconds(30),
20
- })
21
-
22
- // create a Lambda.FunctionUrl to be used in the CloudFront OriginRequestPolicy
23
- // this will be used to trigger the function
24
- this.cliSetupUrl = new lambda.FunctionUrl(scope, 'CliSetupFunctionUrl', {
25
- function: cliSetupFunc,
26
- authType: lambda.FunctionUrlAuthType.NONE,
27
- cors: {
28
- allowedOrigins: ['*'],
29
- },
30
- })
31
-
32
- new Output(scope, 'CliSetupVanityUrl', {
33
- value: `${this.cliSetupUrl.url}cli-setup`,
34
- })
35
-
36
- new Output(scope, 'CliSetupUrl', {
37
- value: `https://${props.domain}/install`,
38
- description: 'URL to trigger the CLI setup function',
39
- })
40
-
41
- // once deployed, need to create logic in the cdn origin request to check if the request is for the cli
42
- // if it is, then we need the to use the function url as the origin
43
- // if it is not, then we need don't adjust the origin
44
- }
45
- }
@@ -1,212 +0,0 @@
1
- /* eslint-disable no-new */
2
- import type { aws_certificatemanager as acm, aws_efs as efs } from 'aws-cdk-lib'
3
- import { Duration, CfnOutput as Output, RemovalPolicy, aws_ec2 as ec2, aws_ecs as ecs, aws_route53 as route53, aws_route53_targets as route53Targets, aws_secretsmanager as secretsmanager } from 'aws-cdk-lib'
4
- import type { Construct } from 'constructs'
5
- import { path as p } from '@stacksjs/path'
6
- import { env } from '@stacksjs/env'
7
- import { LogGroup } from 'aws-cdk-lib/aws-logs'
8
- import * as elbv2 from 'aws-cdk-lib/aws-elasticloadbalancingv2'
9
- import type { NestedCloudProps } from '../types'
10
- import type { EnvKey } from '../../../../env'
11
-
12
- export interface ComputeStackProps extends NestedCloudProps {
13
- vpc: ec2.Vpc
14
- fileSystem: efs.FileSystem
15
- zone: route53.IHostedZone
16
- certificate: acm.Certificate
17
- }
18
-
19
- export class ComputeStack {
20
- lb: elbv2.ApplicationLoadBalancer
21
- cluster: ecs.Cluster
22
- taskDefinition: ecs.FargateTaskDefinition
23
-
24
- constructor(scope: Construct, props: ComputeStackProps) {
25
- const vpc = props.vpc
26
- const fileSystem = props.fileSystem
27
-
28
- if (!fileSystem)
29
- throw new Error('The file system is missing. Please make sure it was created properly.')
30
-
31
- this.cluster = new ecs.Cluster(scope, 'StacksCluster', {
32
- clusterName: `${props.slug}-${props.appEnv}-web-server-cluster`,
33
- vpc,
34
- })
35
-
36
- this.taskDefinition = new ecs.FargateTaskDefinition(scope, 'TaskDefinition', {
37
- family: `${props.appName}-${props.appEnv}-api`,
38
- memoryLimitMiB: 512, // Match your Lambda memory size
39
- cpu: 256, // Choose an appropriate value
40
- runtimePlatform: {
41
- cpuArchitecture: ecs.CpuArchitecture.ARM64,
42
- },
43
- })
44
-
45
- const container = this.taskDefinition.addContainer('WebServerContainer', {
46
- containerName: `${props.appName}-${props.appEnv}-api`,
47
- image: ecs.ContainerImage.fromAsset(p.frameworkPath('server')),
48
- logging: new ecs.AwsLogDriver({
49
- streamPrefix: `${props.appName}-${props.appEnv}-web-server-logs`,
50
- logGroup: new LogGroup(scope, 'StacksApiLogs', {
51
- logGroupName: '/aws/ecs/stacks-api',
52
- removalPolicy: RemovalPolicy.DESTROY, // Automatically remove logs on stack deletion
53
- }),
54
- }),
55
- healthCheck: {
56
- command: ['CMD-SHELL', 'curl -f http://localhost:3000/api/health || exit 1'], // requires curl inside the container which isn't available in the base image. I wonder if there is a better way
57
- interval: Duration.seconds(10),
58
- timeout: Duration.seconds(5),
59
- retries: 3,
60
- startPeriod: Duration.seconds(10),
61
- },
62
- })
63
-
64
- container.addPortMappings({
65
- containerPort: 3000,
66
- hostPort: 3000,
67
- })
68
-
69
- const serviceSecurityGroup = new ec2.SecurityGroup(scope, 'ServiceSecurityGroup', {
70
- securityGroupName: `${props.appName}-${props.appEnv}-api-service-sg`,
71
- vpc,
72
- description: 'Stacks Security Group for API Service',
73
- })
74
-
75
- const publicLoadBalancerSG = new ec2.SecurityGroup(scope, 'PublicLoadBalancerSG', {
76
- securityGroupName: `${props.appName}-${props.appEnv}-public-load-balancer-sg`,
77
- vpc,
78
- description: 'Access to the public facing load balancer',
79
- })
80
-
81
- // Assuming serviceSecurityGroup and publicLoadBalancerSG are already defined
82
- serviceSecurityGroup.addIngressRule(
83
- publicLoadBalancerSG,
84
- ec2.Port.allTraffic(),
85
- 'Ingress from the public ALB',
86
- )
87
-
88
- this.lb = new elbv2.ApplicationLoadBalancer(scope, 'ApplicationLoadBalancer', {
89
- http2Enabled: true,
90
- loadBalancerName: `${props.appName}-${props.appEnv}-alb`,
91
- vpc,
92
- vpcSubnets: {
93
- subnets: vpc.selectSubnets({
94
- subnetType: ec2.SubnetType.PUBLIC,
95
- onePerAz: true,
96
- }).subnets,
97
- },
98
- internetFacing: true,
99
- idleTimeout: Duration.seconds(30),
100
- securityGroup: publicLoadBalancerSG,
101
- })
102
-
103
- new route53.ARecord(scope, 'ApiDomainAliasRecord', {
104
- zone: props.zone,
105
- recordName: 'api',
106
- target: route53.RecordTarget.fromAlias(new route53Targets.LoadBalancerTarget(this.lb)),
107
- })
108
-
109
- const serviceTargetGroup = new elbv2.ApplicationTargetGroup(scope, 'ServiceTargetGroup', {
110
- targetGroupName: `${props.appName}-${props.appEnv}-api-tg`,
111
- vpc,
112
- targetType: elbv2.TargetType.IP,
113
- protocol: elbv2.ApplicationProtocol.HTTP,
114
- port: 3000,
115
- healthCheck: {
116
- interval: Duration.seconds(6),
117
- path: '/api/health',
118
- protocol: elbv2.Protocol.HTTP,
119
- timeout: Duration.seconds(5),
120
- healthyThresholdCount: 2,
121
- unhealthyThresholdCount: 10,
122
- },
123
- })
124
-
125
- const service = new ecs.FargateService(scope, 'StacksApiService', {
126
- serviceName: `${props.appName}-${props.appEnv}-api-service`,
127
- cluster: this.cluster,
128
- taskDefinition: this.taskDefinition,
129
- desiredCount: 1,
130
- assignPublicIp: true,
131
- maxHealthyPercent: 200,
132
- vpcSubnets: vpc.selectSubnets({
133
- subnetType: ec2.SubnetType.PUBLIC,
134
- onePerAz: true,
135
- }),
136
- minHealthyPercent: 75,
137
- securityGroups: [serviceSecurityGroup],
138
- })
139
-
140
- service.attachToApplicationTargetGroup(serviceTargetGroup)
141
- publicLoadBalancerSG.addIngressRule(ec2.Peer.anyIpv4(), ec2.Port.allTraffic())
142
-
143
- this.lb.addListener('HttpsListener', {
144
- port: 443,
145
- certificates: [props.certificate],
146
- defaultAction: elbv2.ListenerAction.forward([serviceTargetGroup]),
147
- })
148
-
149
- this.lb.addListener('HttpListener', {
150
- port: 80,
151
- defaultAction: elbv2.ListenerAction.forward([serviceTargetGroup]),
152
- })
153
-
154
- props.fileSystem.connections.allowFromAnyIpv4(ec2.Port.tcp(2049)) // port 2049 (NFS) for EFS
155
-
156
- const volumeName = `${props.slug}-${props.appEnv}-efs`
157
- this.taskDefinition.addVolume({
158
- name: volumeName,
159
- efsVolumeConfiguration: {
160
- fileSystemId: props.fileSystem.fileSystemId,
161
- },
162
- })
163
-
164
- container.addMountPoints({
165
- sourceVolume: volumeName,
166
- containerPath: '/mnt/efs',
167
- readOnly: false,
168
- })
169
-
170
- // Setup AutoScaling policy
171
- // TODO: make this configurable in cloud.compute
172
- const scaling = service.autoScaleTaskCount({ maxCapacity: 2 })
173
-
174
- scaling.scaleOnCpuUtilization('CpuScaling', {
175
- targetUtilizationPercent: 50,
176
- scaleInCooldown: Duration.seconds(60),
177
- scaleOutCooldown: Duration.seconds(60),
178
- })
179
-
180
- scaling.scaleOnMemoryUtilization('MemoryScaling', {
181
- targetUtilizationPercent: 60,
182
- scaleInCooldown: Duration.seconds(60),
183
- scaleOutCooldown: Duration.seconds(60),
184
- })
185
-
186
- const keysToRemove = ['_HANDLER', '_X_AMZN_TRACE_ID', 'AWS_REGION', 'AWS_EXECUTION_ENV', 'AWS_LAMBDA_FUNCTION_NAME', 'AWS_LAMBDA_FUNCTION_MEMORY_SIZE', 'AWS_LAMBDA_FUNCTION_VERSION', 'AWS_LAMBDA_INITIALIZATION_TYPE', 'AWS_LAMBDA_LOG_GROUP_NAME', 'AWS_LAMBDA_LOG_STREAM_NAME', 'AWS_ACCESS_KEY', 'AWS_ACCESS_KEY_ID', 'AWS_SECRET_ACCESS_KEY', 'AWS_SESSION_TOKEN', 'AWS_LAMBDA_RUNTIME_API', 'LAMBDA_TASK_ROOT', 'LAMBDA_RUNTIME_DIR', '_']
187
- keysToRemove.forEach(key => delete env[key as EnvKey])
188
-
189
- const secrets = new secretsmanager.Secret(scope, 'StacksSecrets', {
190
- secretName: `${props.slug}-${props.appEnv}-secrets`,
191
- description: 'Secrets for the Stacks application',
192
- generateSecretString: {
193
- secretStringTemplate: JSON.stringify(env),
194
- generateStringKey: Object.keys(env).join(',').length.toString(),
195
- },
196
- })
197
-
198
- secrets.grantRead(service.taskDefinition.executionRole!)
199
- container.addEnvironment('SECRETS_ARN', secrets.secretArn)
200
-
201
- const apiPrefix = 'api'
202
- new Output(scope, 'ApiUrl', {
203
- value: `https://${props.domain}/${apiPrefix}`,
204
- description: 'The URL of the deployed application',
205
- })
206
-
207
- new Output(scope, 'ApiVanityUrl', {
208
- value: `http://${this.lb.loadBalancerDnsName}`,
209
- description: 'The Vanity URL / DNS name of the load balancer',
210
- })
211
- }
212
- }