stacks 0.58.28 → 0.58.29

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 (223) hide show
  1. package/core/README.md +1 -1
  2. package/core/actions/dist/src/deploy/index.js +1 -1
  3. package/core/actions/dist/src/dev/components.js +1 -1
  4. package/core/actions/dist/src/dev/index.js +10 -0
  5. package/core/actions/dist/src/index.js +10 -0
  6. package/core/actions/dist/src/release.js +8 -0
  7. package/core/actions/dist/src/upgrade.js +1 -1
  8. package/core/actions/package.json +1 -1
  9. package/core/actions/src/build/docs.ts +7 -0
  10. package/core/actions/src/deploy/index.ts +1 -1
  11. package/core/actions/src/dev/api.ts +2 -2
  12. package/core/actions/src/dev/components.ts +1 -1
  13. package/core/actions/src/dev/dashboard.ts +7 -0
  14. package/core/actions/src/dev/desktop.ts +3 -3
  15. package/core/actions/src/dev/index.ts +10 -0
  16. package/core/actions/src/dev/system-tray.ts +6 -0
  17. package/core/ai/package.json +3 -3
  18. package/core/alias/package.json +1 -1
  19. package/core/analytics/package.json +1 -1
  20. package/core/api/package.json +1 -1
  21. package/core/arrays/package.json +1 -1
  22. package/core/auth/package.json +1 -1
  23. package/core/buddy/README.md +2 -2
  24. package/core/buddy/dist/{chunk-b75e6db0012faa55.js → chunk-0455e53fab4244b1.js} +1 -4
  25. package/core/buddy/dist/{chunk-fd47b42fb923a4be.js → chunk-61e8f138963fc709.js} +173 -137
  26. package/core/buddy/dist/cli.js +2 -2
  27. package/core/buddy/dist/index.js +2 -2
  28. package/core/buddy/package.json +1 -1
  29. package/core/buddy/src/commands/add.ts +4 -0
  30. package/core/buddy/src/commands/build.ts +12 -1
  31. package/core/buddy/src/commands/changelog.ts +2 -0
  32. package/core/buddy/src/commands/clean.ts +2 -0
  33. package/core/buddy/src/commands/cloud.ts +6 -0
  34. package/core/buddy/src/commands/commit.ts +2 -0
  35. package/core/buddy/src/commands/configure.ts +3 -0
  36. package/core/buddy/src/commands/create.ts +8 -8
  37. package/core/buddy/src/commands/deploy.ts +24 -23
  38. package/core/buddy/src/commands/dev.ts +50 -10
  39. package/core/buddy/src/commands/dns.ts +2 -0
  40. package/core/buddy/src/commands/domains.ts +2 -0
  41. package/core/buddy/src/commands/example.ts +4 -0
  42. package/core/buddy/src/commands/fresh.ts +2 -0
  43. package/core/buddy/src/commands/generate.ts +12 -3
  44. package/core/buddy/src/commands/http.ts +2 -0
  45. package/core/buddy/src/commands/install.ts +2 -0
  46. package/core/buddy/src/commands/key.ts +4 -2
  47. package/core/buddy/src/commands/lint.ts +3 -0
  48. package/core/buddy/src/commands/make.ts +11 -1
  49. package/core/buddy/src/commands/migrate.ts +3 -0
  50. package/core/buddy/src/commands/prepublish.ts +2 -0
  51. package/core/buddy/src/commands/release.ts +2 -0
  52. package/core/buddy/src/commands/seed.ts +2 -0
  53. package/core/buddy/src/commands/setup.ts +33 -34
  54. package/core/buddy/src/commands/test.ts +2 -0
  55. package/core/buddy/src/commands/tinker.ts +2 -0
  56. package/core/buddy/src/commands/types.ts +3 -0
  57. package/core/buddy/src/commands/upgrade.ts +6 -0
  58. package/core/build/package.json +1 -1
  59. package/core/bun-create/bud/package.json +3 -2
  60. package/core/bun-create/buddy/package.json +2 -2
  61. package/core/bun-create/stack/package.json +2 -2
  62. package/core/bun-create/stacks/package.json +2 -2
  63. package/core/bun-create/stx/package.json +2 -2
  64. package/core/bun-plugin-yaml/dist/index.js +0 -18
  65. package/core/bun-plugin-yaml/package.json +1 -1
  66. package/core/cache/package.json +2 -2
  67. package/core/chat/package.json +1 -1
  68. package/core/cli/dist/index.js +24 -23
  69. package/core/cli/package.json +1 -1
  70. package/core/cli/src/helpers.ts +21 -31
  71. package/core/cli/src/run.ts +9 -7
  72. package/core/cloud/buddy +2 -0
  73. package/core/cloud/package.json +33 -33
  74. package/core/cloud/src/cloud/ai.ts +45 -36
  75. package/core/cloud/src/cloud/aws-sdk-layer/nodejs/package-lock.json +10 -10
  76. package/core/cloud/src/cloud/aws-sdk-layer/nodejs/package.json +2 -2
  77. package/core/cloud/src/cloud/cdn.ts +44 -5
  78. package/core/cloud/src/cloud/cli.ts +45 -0
  79. package/core/cloud/src/cloud/compute.ts +1 -1
  80. package/core/cloud/src/cloud/index.ts +6 -1
  81. package/core/cloud/src/cloud/lambda/cli-setup/index.js +67 -0
  82. package/core/cloud/src/index.ts +1 -0
  83. package/core/cloud/src/runtime/runtime.ts +1 -0
  84. package/core/collections/package.json +1 -1
  85. package/core/config/dist/index.js +130 -122
  86. package/core/config/package.json +1 -1
  87. package/core/config/src/overrides.ts +0 -2
  88. package/core/database/package.json +2 -2
  89. package/core/database/src/kysely-bun-worker/driver.ts +1 -0
  90. package/core/datetime/package.json +1 -1
  91. package/core/desktop/dist/index.js +6 -0
  92. package/core/desktop/package.json +5 -5
  93. package/core/desktop/src/index.ts +2 -0
  94. package/core/desktop/src/system-tray.ts +1 -0
  95. package/core/development/package.json +1 -1
  96. package/core/dns/package.json +7 -7
  97. package/core/docs/build.ts +1 -1
  98. package/core/docs/dist/index.js +29323 -8957
  99. package/core/docs/package.json +6 -5
  100. package/core/docs/src/index.ts +7 -1
  101. package/core/docs/src/meta.ts +32 -0
  102. package/core/docs/src/scripts/pwa.ts +116 -0
  103. package/core/email/email-forwarder.cjs +1 -0
  104. package/core/email/package.json +3 -3
  105. package/core/email/src/server/converter.ts +1 -0
  106. package/core/email/src/server/inbound.ts +1 -0
  107. package/core/email/src/server/outbound.ts +6 -4
  108. package/core/enums/dist/index.js +4 -2
  109. package/core/enums/package.json +1 -1
  110. package/core/enums/src/index.ts +4 -2
  111. package/core/env/package.json +1 -1
  112. package/core/error-handling/package.json +1 -1
  113. package/core/eslint-config/package.json +17 -17
  114. package/core/eslint-config/src/configs/comments.ts +1 -1
  115. package/core/eslint-config/src/configs/imports.ts +9 -0
  116. package/core/eslint-config/src/configs/svelte.ts +1 -0
  117. package/core/eslint-config/src/configs/unicorn.ts +1 -1
  118. package/core/eslint-config/src/configs/vue.ts +0 -1
  119. package/core/eslint-config/src/factory.ts +2 -8
  120. package/core/events/package.json +1 -1
  121. package/core/faker/package.json +2 -2
  122. package/core/git/dist/index.js +40 -0
  123. package/core/git/package.json +3 -3
  124. package/core/git/src/index.ts +62 -0
  125. package/core/health/package.json +1 -1
  126. package/core/http/package.json +1 -1
  127. package/core/lint/package.json +1 -1
  128. package/core/logging/dist/index.js +0 -6
  129. package/core/logging/package.json +1 -1
  130. package/core/music/package.json +3 -3
  131. package/core/notifications/package.json +2 -2
  132. package/core/objects/package.json +1 -1
  133. package/core/orm/package.json +1 -1
  134. package/core/path/dist/index.js +6 -3
  135. package/core/path/package.json +1 -1
  136. package/core/path/src/index.ts +7 -3
  137. package/core/payments/dist/index.js +2 -5
  138. package/core/payments/package.json +3 -3
  139. package/core/push/package.json +1 -1
  140. package/core/query-builder/package.json +1 -1
  141. package/core/queue/package.json +1 -1
  142. package/core/raycast/package.json +5 -0
  143. package/core/raycast/src/index.ts +0 -0
  144. package/core/realtime/package.json +1 -1
  145. package/core/repl/package.json +1 -1
  146. package/core/router/dist/index.js +16 -496
  147. package/core/router/package.json +1 -1
  148. package/core/router/src/middleware.ts +16 -14
  149. package/core/scheduler/package.json +1 -1
  150. package/core/search-engine/package.json +2 -2
  151. package/core/security/dist/index.js +3 -6
  152. package/core/security/package.json +2 -2
  153. package/core/server/dist/index.js +6 -2
  154. package/core/server/package.json +2 -2
  155. package/core/server/src/config.ts +14 -9
  156. package/core/signals/package.json +1 -1
  157. package/core/slug/package.json +1 -1
  158. package/core/sms/package.json +1 -1
  159. package/core/storage/dist/index.js +28 -10
  160. package/core/storage/package.json +1 -1
  161. package/core/storage/src/files.ts +10 -2
  162. package/core/strings/package.json +3 -3
  163. package/core/stx +2 -0
  164. package/core/tables/package.json +3 -3
  165. package/core/testing/package.json +3 -3
  166. package/core/tinker/package.json +1 -1
  167. package/core/tsconfig.json +4 -9
  168. package/core/tunnel/package.json +1 -1
  169. package/core/types/dist/index.js +3 -1
  170. package/core/types/package.json +13 -13
  171. package/core/types/src/cli.ts +1 -1
  172. package/core/types/src/cloud.ts +4 -1
  173. package/core/types/src/dns.ts +1 -1
  174. package/core/types/src/native.ts +0 -0
  175. package/core/types/src/stacks.ts +0 -10
  176. package/core/ui/package.json +8 -8
  177. package/core/utils/dist/index.js +1 -1
  178. package/core/utils/package.json +1 -1
  179. package/core/validation/package.json +1 -1
  180. package/core/vite/README.md +1 -1
  181. package/core/vite/build.ts +1 -1
  182. package/core/vite/dist/index.js +211 -203
  183. package/core/vite/package.json +5 -5
  184. package/core/vite/src/components.ts +1 -1
  185. package/core/vite/src/dashboard.ts +100 -0
  186. package/core/vite/src/desktop.ts +2 -58
  187. package/core/vite/src/example-vue.ts +1 -1
  188. package/core/vite/src/example-wc.ts +1 -1
  189. package/core/vite/src/functions.ts +1 -1
  190. package/core/vite/src/index.ts +9 -11
  191. package/core/vite/src/plugin/auto-imports.ts +1 -1
  192. package/core/vite/src/plugin/layouts.ts +6 -7
  193. package/core/vite/src/plugin/router.ts +3 -1
  194. package/core/vite/src/system-tray.ts +100 -0
  195. package/core/vite/src/views.ts +13 -2
  196. package/core/vite/src/web-components.ts +1 -1
  197. package/core/whois/dist/index.js +1 -2
  198. package/core/whois/package.json +1 -1
  199. package/core/whois/src/index.ts +10 -8
  200. package/core/x-ray/package.json +1 -1
  201. package/core/zsh-buddy/README.md +51 -0
  202. package/core/zsh-buddy/package.json +29 -0
  203. package/ide/dictionary.txt +12 -0
  204. package/ide/jetbrains/.idea/stacks.iml +0 -1
  205. package/ide/vscode/.vscode/settings.json +7 -2
  206. package/ide/vscode/package.json +2 -4
  207. package/package.json +12 -7
  208. package/core/cloud/src/server/.dockerignore +0 -15
  209. package/core/cloud/src/server/Dockerfile +0 -21
  210. package/core/cloud/src/server/index.ts +0 -3
  211. package/core/cloud/src/server/package.json +0 -12
  212. package/core/cloud/src/server/runtime.ts +0 -828
  213. package/core/scripts/build +0 -58
  214. package/core/scripts/ensure +0 -33
  215. package/core/scripts/fresh +0 -14
  216. package/core/scripts/link +0 -14
  217. package/core/scripts/move-built-src-files.ts +0 -28
  218. package/core/scripts/move-dts-files.ts +0 -35
  219. package/core/scripts/publish +0 -43
  220. package/core/scripts/setup +0 -176
  221. package/core/tables/vite.config.ts +0 -84
  222. package/core/vite/src/plugin/index.ts +0 -21
  223. /package/core/vite/src/{stacks.ts → plugins.ts} +0 -0
@@ -18,6 +18,8 @@ export interface CdnStackProps extends NestedCloudProps {
18
18
  zone: route53.IHostedZone
19
19
  webServer: lambda.Function
20
20
  webServerUrl: lambda.FunctionUrl
21
+ cliSetupUrl: lambda.FunctionUrl
22
+ askAiUrl: lambda.FunctionUrl
21
23
  }
22
24
 
23
25
  export class CdnStack {
@@ -240,12 +242,12 @@ export class CdnStack {
240
242
  }
241
243
  }
242
244
 
243
- aiBehaviorOptions(scope: Construct): Record<string, cloudfront.BehaviorOptions> {
244
- // const url = new URL()
245
-
245
+ aiBehaviorOptions(scope: Construct, props: CdnStackProps): Record<string, cloudfront.BehaviorOptions> {
246
+ const hostname = Fn.select(2, Fn.split('/', props.askAiUrl.url))
246
247
  return {
247
248
  '/ai/ask': {
248
- origin: new origins.HttpOrigin('9qp44a2b7e.execute-api.us-east-1.amazonaws.com', {
249
+ // origin: new origins.HttpOrigin('9qp44a2b7e.execute-api.us-east-1.amazonaws.com', {
250
+ origin: new origins.HttpOrigin(hostname, {
249
251
  originPath: '/ai',
250
252
  protocolPolicy: cloudfront.OriginProtocolPolicy.HTTPS_ONLY,
251
253
  }),
@@ -279,10 +281,40 @@ export class CdnStack {
279
281
  }
280
282
  }
281
283
 
284
+ cliSetupBehaviorOptions(scope: Construct, props: CdnStackProps): Record<string, cloudfront.BehaviorOptions> {
285
+ const hostname = Fn.select(2, Fn.split('/', props.cliSetupUrl.url))
286
+
287
+ return {
288
+ '/install': {
289
+ origin: new origins.HttpOrigin(hostname, {
290
+ // origin: new origins.HttpOrigin('tipevv3dfx35fb7ptyq7nrxtga0qkcgc.lambda-url.us-east-1.on.aws', {
291
+ originPath: '/cli-setup',
292
+ protocolPolicy: cloudfront.OriginProtocolPolicy.HTTPS_ONLY,
293
+ }),
294
+ compress: false,
295
+ allowedMethods: cloudfront.AllowedMethods.ALLOW_ALL,
296
+ viewerProtocolPolicy: cloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,
297
+ cachePolicy: new cloudfront.CachePolicy(scope, 'CliSetupCachePolicy', {
298
+ comment: 'Stacks CLI Setup Cache Policy',
299
+ cachePolicyName: `${this.props.slug}-${this.props.appEnv}-cli-setup-cache-policy`,
300
+ defaultTtl: Duration.seconds(0),
301
+ // minTtl: config.cloud.cdn?.minTtl ? Duration.seconds(config.cloud.cdn.minTtl) : undefined,
302
+ cookieBehavior: cloudfront.CacheCookieBehavior.none(),
303
+ headerBehavior: cloudfront.CacheHeaderBehavior.none(),
304
+ queryStringBehavior: cloudfront.CacheQueryStringBehavior.none(),
305
+ }),
306
+ },
307
+ }
308
+ }
309
+
282
310
  shouldDeployAiEndpoints() {
283
311
  return config.cloud.ai
284
312
  }
285
313
 
314
+ shouldDeployCliSetup() {
315
+ return config.cloud.cli
316
+ }
317
+
286
318
  shouldDeployDocs() {
287
319
  return hasFiles(p.projectPath('docs'))
288
320
  }
@@ -308,7 +340,14 @@ export class CdnStack {
308
340
 
309
341
  if (this.shouldDeployAiEndpoints()) {
310
342
  behaviorOptions = {
311
- ...this.aiBehaviorOptions(scope),
343
+ ...this.aiBehaviorOptions(scope, props),
344
+ ...behaviorOptions,
345
+ }
346
+ }
347
+
348
+ if (this.shouldDeployCliSetup()) {
349
+ behaviorOptions = {
350
+ ...this.cliSetupBehaviorOptions(scope, props),
312
351
  ...behaviorOptions,
313
352
  }
314
353
  }
@@ -0,0 +1,45 @@
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('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
+ }
@@ -31,7 +31,7 @@ export class ComputeStack {
31
31
 
32
32
  this.apiServer = new lambda.Function(scope, 'WebServer', {
33
33
  description: 'The web server for the Stacks application',
34
- code: lambda.Code.fromAssetImage(p.cloudPath('src/server')),
34
+ code: lambda.Code.fromAssetImage(p.frameworkPath('server')),
35
35
  handler: lambda.Handler.FROM_IMAGE,
36
36
  runtime: lambda.Runtime.FROM_IMAGE,
37
37
  vpc,
@@ -4,6 +4,7 @@ import type { Construct } from 'constructs'
4
4
  import type { CloudOptions } from '../types'
5
5
  import { AiStack } from './ai'
6
6
  import { CdnStack } from './cdn'
7
+ import { CliStack } from './cli'
7
8
  import { DnsStack } from './dns'
8
9
  import { DocsStack } from './docs'
9
10
  import { StorageStack } from './storage'
@@ -69,7 +70,9 @@ export class Cloud extends Stack {
69
70
  certificate: security.certificate,
70
71
  })
71
72
 
72
- new AiStack(this, props)
73
+ const ai = new AiStack(this, props)
74
+
75
+ const cli = new CliStack(this, props)
73
76
 
74
77
  const cdn = new CdnStack(this, {
75
78
  ...props,
@@ -81,6 +84,8 @@ export class Cloud extends Stack {
81
84
  zone: dns.zone,
82
85
  webServer: api.apiServer,
83
86
  webServerUrl: api.apiServerUrl,
87
+ cliSetupUrl: cli.cliSetupUrl,
88
+ askAiUrl: ai.askAiUrl,
84
89
  })
85
90
 
86
91
  new DeploymentStack(this, {
@@ -0,0 +1,67 @@
1
+ async function handler() {
2
+ const setupScriptContents = `if [ -n "$1" ]; then
3
+ # Check if the directory exists
4
+ if [ -d "storage/framework/core" ]; then # this is our identifier whether it is a Stacks project
5
+ :
6
+ else
7
+ if [ -d "$1" ]; then
8
+ echo "Project $1 exists locally. Please use a different name & run again."
9
+ exit 1
10
+ else
11
+ git clone https://github.com/stacksjs/stacks.git $1
12
+ cd $1
13
+ # Run the pkgx-install script
14
+ "./storage/framework/scripts/pkgx-install"
15
+
16
+ echo "Project $1 has been created. Please open a new terminal, run 'bun run dev' to start the server."
17
+
18
+ exit 1
19
+ fi
20
+ fi
21
+ fi
22
+
23
+ # Get the directory of the current script and go up 3 directories
24
+ PROJECT_ROOT="$(cd "$(dirname "$0")" && pwd)"
25
+ CLI_PATH="$PROJECT_ROOT/storage/framework/core/buddy/src/cli.ts"
26
+ SCRIPT_PATH="$PROJECT_ROOT/storage/framework/scripts/pkgx-install"
27
+ LOG_PATH="$PROJECT_ROOT/storage/logs/console.log"
28
+
29
+ if [[ $* == *--verbose* ]]; then
30
+ echo "Project root: $PROJECT_ROOT"
31
+ echo "CLI path: $CLI_PATH"
32
+ echo "Script path: $SCRIPT_PATH"
33
+ echo "Log path: $LOG_PATH"
34
+ fi
35
+
36
+ cd $PROJECT_ROOT
37
+ # Run the pkgx-install script
38
+ if [[ $* == *--verbose* ]]; then
39
+ "$SCRIPT_PATH"
40
+ # bun --bun ./storage/framework/core/buddy/src/cli.ts setup --verbose
41
+ else
42
+ "$SCRIPT_PATH" > /dev/null 2>&1
43
+ # bun --bun ./storage/framework/core/buddy/src/cli.ts setup
44
+ fi
45
+
46
+ # Create a named pipe
47
+ mkfifo /tmp/mypipe
48
+
49
+ # Run the command, send output to both the console and the pipe
50
+ bun --bun $CLI_PATH setup | tee /tmp/mypipe &
51
+
52
+ # Read from the pipe, add timestamps, and append to the file
53
+ while IFS= read -r line; do echo "$(date '+[%Y-%m-%d %H:%M:%S]') $line"; done < /tmp/mypipe >> $LOG_PATH
54
+
55
+ # Remove the named pipe
56
+ rm /tmp/mypipe
57
+ `
58
+
59
+ return {
60
+ statusCode: 200,
61
+ body: setupScriptContents,
62
+ }
63
+ }
64
+
65
+ module.exports = {
66
+ handler,
67
+ }
@@ -1,2 +1,3 @@
1
1
  export * from './helpers'
2
2
  export * from './cloud'
3
+ export { default as server } from './runtime/server'
@@ -1,3 +1,4 @@
1
+ /* eslint-disable eslint-comments/no-unlimited-disable */
1
2
  /* eslint-disable */
2
3
  import process from 'node:process'
3
4
  import { AwsClient } from 'aws4fetch'
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@stacksjs/collections",
3
3
  "type": "module",
4
- "version": "0.58.28",
4
+ "version": "0.58.29",
5
5
  "description": "The Stacks collections.",
6
6
  "author": "Chris Breuer",
7
7
  "license": "MIT",
@@ -270,7 +270,7 @@ __export(exports_config, {
270
270
  },
271
271
  api: () => {
272
272
  {
273
- return api2;
273
+ return api;
274
274
  }
275
275
  },
276
276
  analytics: () => {
@@ -689,56 +689,46 @@ var ai_default = {
689
689
  ]
690
690
  };
691
691
 
692
- // /home/runner/work/stacks/stacks/config/api.ts
693
- import {env as env2} from "@stacksjs/env";
694
- var api_default = {
695
- prefix: env2.API_PREFIX || "api",
696
- description: "Stacks API",
697
- memorySize: 512,
698
- prewarm: 10,
699
- timeout: 30
700
- };
701
-
702
692
  // /home/runner/work/stacks/stacks/config/app.ts
703
- import {env as env4} from "@stacksjs/env";
693
+ import {env as env2} from "@stacksjs/env";
704
694
  var app_default = {
705
- name: env4.APP_NAME || "Stacks",
695
+ name: env2.APP_NAME || "Stacks",
706
696
  description: "Stacks is a full-stack framework for building modern web applications.",
707
- env: env4.APP_ENV || "development",
708
- url: env4.APP_URL || "stacks.localhost",
697
+ env: env2.APP_ENV || "development",
698
+ url: env2.APP_URL || "stacks.localhost",
709
699
  redirectUrls: ["stacksjs.com"],
710
- debug: env4.DEBUG || false,
711
- key: env4.APP_KEY,
712
- maintenanceMode: env4.APP_MAINTENANCE || false,
700
+ debug: env2.DEBUG || false,
701
+ key: env2.APP_KEY,
702
+ maintenanceMode: env2.APP_MAINTENANCE || false,
713
703
  docMode: true,
714
704
  timezone: "UTC",
715
705
  locale: "en",
716
706
  fallbackLocale: "en",
717
707
  cipher: "aes-256-cbc",
718
708
  ports: {
719
- frontend: env4.APP_PORT || 3333,
720
- backend: env4.APP_PORT + 1 || 3334,
721
- admin: env4.APP_PORT + 2 || 3335,
722
- library: env4.APP_PORT + 3 || 3336,
723
- desktop: env4.APP_PORT + 4 || 3337,
724
- email: env4.APP_PORT + 5 || 3338,
725
- docs: env4.APP_PORT + 6 || 3339,
726
- inspect: env4.APP_PORT + 7 || 3340,
709
+ frontend: env2.APP_PORT || 3333,
710
+ backend: env2.APP_PORT + 1 || 3334,
711
+ admin: env2.APP_PORT + 2 || 3335,
712
+ library: env2.APP_PORT + 3 || 3336,
713
+ desktop: env2.APP_PORT + 4 || 3337,
714
+ email: env2.APP_PORT + 5 || 3338,
715
+ docs: env2.APP_PORT + 6 || 3339,
716
+ inspect: env2.APP_PORT + 7 || 3340,
727
717
  api: 3999
728
718
  }
729
719
  };
730
720
 
731
721
  // /home/runner/work/stacks/stacks/config/cache.ts
732
- import {env as env6} from "@stacksjs/env";
722
+ import {env as env4} from "@stacksjs/env";
733
723
  var cache_default = {
734
724
  driver: "redis",
735
725
  prefix: "stacks",
736
726
  ttl: 3600,
737
727
  drivers: {
738
728
  dynamodb: {
739
- key: env6.AWS_ACCESS_KEY_ID || "",
740
- secret: env6.AWS_SECRET_ACCESS_KEY || "",
741
- region: env6.AWS_DEFAULT_REGION || "us-east-1",
729
+ key: env4.AWS_ACCESS_KEY_ID || "",
730
+ secret: env4.AWS_SECRET_ACCESS_KEY || "",
731
+ region: env4.AWS_DEFAULT_REGION || "us-east-1",
742
732
  table: "cache",
743
733
  endpoint: ""
744
734
  },
@@ -769,6 +759,9 @@ var cli_default = {
769
759
  description: "This is an example command to illustrate how to create your own commands. Check out `../app/commands` for more."
770
760
  };
771
761
 
762
+ // /home/runner/work/stacks/stacks/config/cloud.ts
763
+ import {env as env6} from "@stacksjs/env";
764
+
772
765
  // /home/runner/work/stacks/stacks/config/security.ts
773
766
  var security_default = {
774
767
  firewall: {
@@ -804,9 +797,16 @@ var cloud_default = {
804
797
  queryStrings: []
805
798
  }
806
799
  },
800
+ api: {
801
+ prefix: env6.API_PREFIX || "api",
802
+ description: "Stacks API",
803
+ memorySize: 512,
804
+ prewarm: 10,
805
+ timeout: 30
806
+ },
807
807
  ai: true,
808
+ cli: true,
808
809
  docs: true,
809
- api: true,
810
810
  fileSystem: true
811
811
  };
812
812
 
@@ -859,7 +859,6 @@ var dns_default = {
859
859
  // /home/runner/work/stacks/stacks/config/docs.ts
860
860
  import {SocialLinkIcon} from "@stacksjs/types";
861
861
  var nav = [
862
- { text: "Config", link: "/config", activeMatch: "/config" },
863
862
  {
864
863
  text: "Changelog",
865
864
  link: "https://github.com/stacksjs/stacks/blob/main/CHANGELOG.md"
@@ -868,7 +867,8 @@ var nav = [
868
867
  text: "Resources",
869
868
  items: [
870
869
  { text: "Team", link: "/team" },
871
- { text: "Releases", link: "/releases" },
870
+ { text: "Postcardware", link: "/postcardware" },
871
+ { text: "Changelog", link: "https://github.com/stacksjs/stacks/blob/main/CHANGELOG.md" },
872
872
  {
873
873
  items: [
874
874
  {
@@ -883,10 +883,6 @@ var nav = [
883
883
  text: "Awesome Stacks",
884
884
  link: "https://github.com/stacksjs/awesome-stacks"
885
885
  },
886
- {
887
- text: "Changelog",
888
- link: "https://github.com/stacksjs/stacks/blob/main/CHANGELOG.md"
889
- },
890
886
  {
891
887
  text: "Contributing",
892
888
  link: "https://github.com/stacksjs/stacks/blob/main/.github/CONTRIBUTING.md"
@@ -937,17 +933,17 @@ var sidebar = {
937
933
  collapsible: true,
938
934
  collapsed: true,
939
935
  items: [
940
- { text: "How to deploy?", link: "/bootcamp/how-to/deploy" },
941
- { text: "Front & Backend Authentication", link: "/bootcamp/how-to/authentication" },
942
- { text: "Unit & Feature Tests", link: "/bootcamp/how-to/testing" },
936
+ { text: "Authentication", link: "/bootcamp/how-to/authentication" },
937
+ { text: "Create a Mailbox", link: "/bootcamp/how-to/create-mailbox" },
943
938
  { text: "Define env & config values", link: "/bootcamp/how-to/env-config" },
944
939
  { text: "Error Handling", link: "/bootcamp/how-to/error-handling" },
945
- { text: "Publish Components & Functions", link: "/bootcamp/how-to/publish" },
946
- { text: "Create a Mailbox", link: "/bootcamp/how-to/create-mailbox" },
940
+ { text: "Extend the Cloud", link: "/bootcamp/how-to/extend-cloud" },
941
+ { text: "Extend the Dashboard", link: "/bootcamp/how-to/extend-dashboard" },
942
+ { text: "How to deploy?", link: "/bootcamp/how-to/deploy" },
947
943
  { text: "IDE Setup", link: "/bootcamp/how-to/ide-setup" },
948
944
  { text: "Manage a Team", link: "/bootcamp/how-to/manage-team" },
949
- { text: "Extend the Cloud", link: "/bootcamp/how-to/extend-cloud" },
950
- { text: "Extend the Dashboard", link: "/bootcamp/how-to/extend-dashboard" }
945
+ { text: "Publish Components & Functions", link: "/bootcamp/how-to/publish" },
946
+ { text: "Unit & Feature Tests", link: "/bootcamp/how-to/testing" }
951
947
  ]
952
948
  },
953
949
  {
@@ -955,14 +951,15 @@ var sidebar = {
955
951
  collapsible: true,
956
952
  collapsed: true,
957
953
  items: [
958
- { text: "Semantic Commits", link: "/bootcamp/tips/semantic-commits" },
959
- { text: "Email, SMS, Social & Push notifications", link: "/bootcamp/tips/notifications" },
960
- { text: "Payment sending, receiving & management", link: "/bootcamp/tips/payments" },
961
954
  { text: "Cost Optimization", link: "/bootcamp/tips/cost-optimization" },
955
+ { text: "Email, SMS, Social & Push Notifications", link: "/bootcamp/tips/notifications" },
962
956
  { text: "Jump Box", link: "/bootcamp/tips/jump-box" },
957
+ { text: "Limitations", link: "/bootcamp/tips/limitations" },
958
+ { text: "Payment sending, receiving & management", link: "/bootcamp/tips/payments" },
963
959
  { text: "Remove your Cloud", link: "/bootcamp/tips/undeploy" },
960
+ { text: "Semantic Commits", link: "/bootcamp/tips/semantic-commits" },
964
961
  { text: "Ship your ORM", link: "/bootcamp/tips/orm-usage" },
965
- { text: "Limitations", link: "/bootcamp/tips/limitations" }
962
+ { text: "System Tray App", link: "/bootcamp/tips/system-tray" }
966
963
  ]
967
964
  },
968
965
  { text: "Conclusion", link: "/bootcamp/conclusion" }
@@ -976,6 +973,7 @@ var sidebar = {
976
973
  { text: "APIs", link: "/guide/apis" },
977
974
  { text: "Apps", link: "/guide/apps" },
978
975
  { text: "Authentication", link: "/guide/auth" },
976
+ { text: "Bootstrap", link: "/guide/bootstrap" },
979
977
  {
980
978
  text: "Buddy",
981
979
  collapsible: true,
@@ -999,6 +997,7 @@ var sidebar = {
999
997
  { text: "HTTP", link: "/guide/buddy/http" },
1000
998
  { text: "DNS", link: "/guide/buddy/dns" },
1001
999
  { text: "Key", link: "/guide/buddy/key" },
1000
+ { text: "Projects", link: "/guide/buddy/projects" },
1002
1001
  { text: "Domains", link: "/guide/buddy/domains" },
1003
1002
  { text: "Generate", link: "/guide/buddy/generate" },
1004
1003
  { text: "Test", link: "/guide/buddy/test" },
@@ -1035,78 +1034,81 @@ var sidebar = {
1035
1034
  ]
1036
1035
  },
1037
1036
  { text: "Model-View-Action", link: "/guide/model-view-action" },
1038
- {
1039
- text: "Packages",
1040
- collapsible: true,
1041
- collapsed: true,
1042
- items: [
1043
- { text: "Actions", link: "/guide/packages/actions" },
1044
- { text: "AI", link: "/guide/packages/ai" },
1045
- { text: "Alias", link: "/guide/packages/alias" },
1046
- { text: "Analytics", link: "/guide/packages/analytics" },
1047
- { text: "Arrays", link: "/guide/packages/arrays" },
1048
- { text: "Auth", link: "/guide/packages/auth" },
1049
- { text: "Buddy", link: "/guide/packages/buddy" },
1050
- { text: "Build", link: "/guide/packages/build" },
1051
- { text: "Cache", link: "/guide/packages/cache" },
1052
- { text: "Chat", link: "/guide/packages/chat" },
1053
- { text: "CLI", link: "/guide/packages/cli" },
1054
- { text: "Cloud", link: "/guide/packages/cloud" },
1055
- { text: "Collections", link: "/guide/packages/collections" },
1056
- { text: "Config", link: "/guide/packages/config" },
1057
- { text: "Database", link: "/guide/packages/database" },
1058
- { text: "Datetime", link: "/guide/packages/datetime" },
1059
- { text: "Desktop", link: "/guide/packages/desktop" },
1060
- { text: "Development", link: "/guide/packages/development" },
1061
- { text: "DNS", link: "/guide/packages/dns" },
1062
- { text: "Docs", link: "/guide/packages/docs" },
1063
- { text: "Email", link: "/guide/packages/email" },
1064
- { text: "Env", link: "/guide/packages/env" },
1065
- { text: "Error Handling", link: "/guide/packages/error-handling" },
1066
- { text: "ESlint Config", link: "/guide/packages/error-handling" },
1067
- { text: "Events", link: "/guide/packages/events" },
1068
- { text: "Faker", link: "/guide/packages/faker" },
1069
- { text: "Git", link: "/guide/packages/git" },
1070
- { text: "Health", link: "/guide/packages/health" },
1071
- { text: "Http", link: "/guide/packages/http" },
1072
- { text: "Lint", link: "/guide/packages/lint" },
1073
- { text: "Logging", link: "/guide/packages/logging" },
1074
- { text: "Modules", link: "/guide/packages/modules" },
1075
- { text: "Notifications", link: "/guide/packages/notifications" },
1076
- { text: "Objects", link: "/guide/packages/objects" },
1077
- { text: "ORM", link: "/guide/packages/orm" },
1078
- { text: "Path", link: "/guide/packages/path" },
1079
- { text: "Payments", link: "/guide/packages/payments" },
1080
- { text: "Permissions", link: "/guide/packages/permissions" },
1081
- { text: "Push", link: "/guide/packages/push" },
1082
- { text: "Query Builder", link: "/guide/packages/query-builder" },
1083
- { text: "Queue", link: "/guide/packages/queue" },
1084
- { text: "Realtime", link: "/guide/packages/realtime" },
1085
- { text: "REPL", link: "/guide/packages/repl" },
1086
- { text: "Router", link: "/guide/packages/router" },
1087
- { text: "Scheduler", link: "/guide/packages/scheduler" },
1088
- { text: "Search Engine", link: "/guide/packages/search-engine" },
1089
- { text: "Security", link: "/guide/packages/security" },
1090
- { text: "Server", link: "/guide/packages/server" },
1091
- { text: "Signals", link: "/guide/packages/signals" },
1092
- { text: "Slug", link: "/guide/packages/slug" },
1093
- { text: "SMS", link: "/guide/packages/sms" },
1094
- { text: "Storage", link: "/guide/packages/storage" },
1095
- { text: "Strings", link: "/guide/packages/strings" },
1096
- { text: "Testing", link: "/guide/packages/testing" },
1097
- { text: "Tinker", link: "/guide/packages/tinker" },
1098
- { text: "Tunnel", link: "/guide/packages/tunnel" },
1099
- { text: "Types", link: "/guide/packages/types" },
1100
- { text: "UI", link: "/guide/packages/ui" },
1101
- { text: "Utils", link: "/guide/packages/utils" },
1102
- { text: "Validation", link: "/guide/packages/validation" },
1103
- { text: "Vite", link: "/guide/packages/vite" }
1104
- ]
1105
- },
1106
1037
  { text: "Plugins", link: "/guide/plugins" },
1107
1038
  { text: "Testing", link: "/guide/testing" }
1108
1039
  ]
1109
1040
  },
1041
+ {
1042
+ text: "Features",
1043
+ collapsible: true,
1044
+ collapsed: true,
1045
+ items: [
1046
+ { text: "$ Shell", link: "/features/$-shell" },
1047
+ { text: "Actions", link: "/features/actions" },
1048
+ { text: "AI", link: "/features/ai" },
1049
+ { text: "Alias", link: "/features/alias" },
1050
+ { text: "Analytics", link: "/features/analytics" },
1051
+ { text: "Arrays", link: "/features/arrays" },
1052
+ { text: "Auth", link: "/features/auth" },
1053
+ { text: "Buddy", link: "/features/buddy" },
1054
+ { text: "Build", link: "/features/build" },
1055
+ { text: "Cache", link: "/features/cache" },
1056
+ { text: "Chat", link: "/features/chat" },
1057
+ { text: "CLI", link: "/features/cli" },
1058
+ { text: "Cloud", link: "/features/cloud" },
1059
+ { text: "Collections", link: "/features/collections" },
1060
+ { text: "Config", link: "/features/config" },
1061
+ { text: "Database", link: "/features/database" },
1062
+ { text: "Datetime", link: "/features/datetime" },
1063
+ { text: "Desktop", link: "/features/desktop" },
1064
+ { text: "Development", link: "/features/development" },
1065
+ { text: "DNS", link: "/features/dns" },
1066
+ { text: "Docs", link: "/features/docs" },
1067
+ { text: "Email", link: "/features/email" },
1068
+ { text: "Env", link: "/features/env" },
1069
+ { text: "Error Handling", link: "/features/error-handling" },
1070
+ { text: "ESlint Config", link: "/features/error-handling" },
1071
+ { text: "Events", link: "/features/events" },
1072
+ { text: "Faker", link: "/features/faker" },
1073
+ { text: "Git", link: "/features/git" },
1074
+ { text: "Glob", link: "/features/glob" },
1075
+ { text: "Health", link: "/features/health" },
1076
+ { text: "Http", link: "/features/http" },
1077
+ { text: "Lint", link: "/features/lint" },
1078
+ { text: "Logging", link: "/features/logging" },
1079
+ { text: "Modules", link: "/features/modules" },
1080
+ { text: "Notifications", link: "/features/notifications" },
1081
+ { text: "Objects", link: "/features/objects" },
1082
+ { text: "ORM", link: "/features/orm" },
1083
+ { text: "Path", link: "/features/path" },
1084
+ { text: "Payments", link: "/features/payments" },
1085
+ { text: "Permissions", link: "/features/permissions" },
1086
+ { text: "Push", link: "/features/push" },
1087
+ { text: "Query Builder", link: "/features/query-builder" },
1088
+ { text: "Queue", link: "/features/queue" },
1089
+ { text: "Realtime", link: "/features/realtime" },
1090
+ { text: "REPL", link: "/features/repl" },
1091
+ { text: "Router", link: "/features/router" },
1092
+ { text: "Scheduler", link: "/features/scheduler" },
1093
+ { text: "Search Engine", link: "/features/search-engine" },
1094
+ { text: "Security", link: "/features/security" },
1095
+ { text: "Semver", link: "/features/semver" },
1096
+ { text: "Server", link: "/features/server" },
1097
+ { text: "Signals", link: "/features/signals" },
1098
+ { text: "Slug", link: "/features/slug" },
1099
+ { text: "SMS", link: "/features/sms" },
1100
+ { text: "Storage", link: "/features/storage" },
1101
+ { text: "Strings", link: "/features/strings" },
1102
+ { text: "Testing", link: "/features/testing" },
1103
+ { text: "Tinker", link: "/features/tinker" },
1104
+ { text: "Tunnel", link: "/features/tunnel" },
1105
+ { text: "Types", link: "/features/types" },
1106
+ { text: "UI", link: "/features/ui" },
1107
+ { text: "Utils", link: "/features/utils" },
1108
+ { text: "Validation", link: "/features/validation" },
1109
+ { text: "Vite", link: "/features/vite" }
1110
+ ]
1111
+ },
1110
1112
  {
1111
1113
  text: "Terminology",
1112
1114
  link: "/terminology"
@@ -1116,9 +1118,10 @@ var sidebar = {
1116
1118
  var docs_default = {
1117
1119
  lang: "en-US",
1118
1120
  title: "Stacks",
1119
- description: "Rapid application, cloud & library framework.",
1121
+ description: "Rapid application, cloud & library development framework.",
1120
1122
  lastUpdated: true,
1121
1123
  themeConfig: {
1124
+ logo: "https://raw.githubusercontent.com/stacksjs/stacks/main/public/logo-transparent.svg?https://raw.githubusercontent.com/stacksjs/stacks/main/public/logo-transparent.svg?asdas",
1122
1125
  nav,
1123
1126
  sidebar,
1124
1127
  editLink: {
@@ -1144,7 +1147,7 @@ var email_default = {
1144
1147
  name: env12.MAIL_FROM_NAME || "Stacks",
1145
1148
  address: env12.MAIL_FROM_ADDRESS || "no-reply@stacksjs.org"
1146
1149
  },
1147
- mailboxes: ["chris@stacksjs.org"],
1150
+ mailboxes: ["chris@stacksjs.org", "blake@stacksjs.org"],
1148
1151
  server: {
1149
1152
  scan: true
1150
1153
  }
@@ -1370,7 +1373,13 @@ var services_default = {
1370
1373
  var team_default = {
1371
1374
  name: "Stacks",
1372
1375
  members: {
1373
- chris: "chris@stacksjs.org"
1376
+ chris: "chris@stacksjs.org",
1377
+ blake: "blake@stacksjs.org",
1378
+ zoltan: "zoltan@stacksjs.org",
1379
+ freddy: "freddy@stacksjs.org",
1380
+ glenn: "glenn@stacksjs.org",
1381
+ dorell: "dorell@stacksjs.org",
1382
+ avery: "avery@stacksjs.org"
1374
1383
  }
1375
1384
  };
1376
1385
 
@@ -1407,7 +1416,6 @@ var ui_default = {
1407
1416
  // src/overrides.ts
1408
1417
  var overrides_default = {
1409
1418
  ai: ai_default,
1410
- api: api_default,
1411
1419
  app: app_default,
1412
1420
  binary: cli_default,
1413
1421
  cache: cache_default,
@@ -1621,7 +1629,7 @@ var config = {
1621
1629
  var {
1622
1630
  ai: ai2,
1623
1631
  analytics,
1624
- api: api2,
1632
+ api,
1625
1633
  app: app2,
1626
1634
  binary,
1627
1635
  cache: cache2,
@@ -1695,7 +1703,7 @@ export {
1695
1703
  cache2 as cache,
1696
1704
  binary,
1697
1705
  app2 as app,
1698
- api2 as api,
1706
+ api,
1699
1707
  analytics,
1700
1708
  ai2 as ai
1701
1709
  };