This commit is contained in:
Dax Raad
2025-09-15 03:53:21 -04:00
parent e716271466
commit 925284c6c1
20 changed files with 669 additions and 635 deletions

1
.gitignore vendored
View File

@@ -8,3 +8,4 @@ node_modules
openapi.json
playground
tmp
dist

View File

@@ -240,9 +240,6 @@
"web-tree-sitter",
"tree-sitter-bash",
],
"overrides": {
"zod": "4.1.8",
},
"catalog": {
"@hono/zod-validator": "0.4.2",
"@tsconfig/node22": "22.0.2",
@@ -2942,6 +2939,8 @@
"@ai-sdk/amazon-bedrock/aws4fetch": ["aws4fetch@1.0.20", "", {}, "sha512-/djoAN709iY65ETD6LKCtyyEI04XIBP5xVvfmNxsEP0uJB5tyaGBztSryRr4HqMStr9R06PisQE7m9zDTXKu6g=="],
"@ai-sdk/amazon-bedrock/zod": ["zod@3.25.76", "", {}, "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ=="],
"@ai-sdk/gateway/@ai-sdk/provider-utils": ["@ai-sdk/provider-utils@3.0.1", "", { "dependencies": { "@ai-sdk/provider": "2.0.0", "@standard-schema/spec": "^1.0.0", "eventsource-parser": "^3.0.3", "zod-to-json-schema": "^3.24.1" }, "peerDependencies": { "zod": "^3.25.76 || ^4" } }, "sha512-/iP1sKc6UdJgGH98OCly7sWJKv+J9G47PnTjIj40IJMUQKwDrUMyf7zOOfRtPwSuNifYhSoJQ4s1WltI65gJ/g=="],
"@astrojs/cloudflare/@cloudflare/workers-types": ["@cloudflare/workers-types@4.20250913.0", "", {}, "sha512-JjrYEvRn7cyALxwoFTw3XChaQneHSJOXqz2t5iKEpNzAnC2iPQU75rtTK/gw03Jjy4SHY5aEBh/uqQePtonZlA=="],
@@ -2952,6 +2951,8 @@
"@astrojs/mdx/source-map": ["source-map@0.7.6", "", {}, "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ=="],
"@astrojs/sitemap/zod": ["zod@3.25.76", "", {}, "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ=="],
"@aws-crypto/sha256-browser/@smithy/util-utf8": ["@smithy/util-utf8@2.3.0", "", { "dependencies": { "@smithy/util-buffer-from": "^2.2.0", "tslib": "^2.6.2" } }, "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A=="],
"@aws-crypto/util/@smithy/util-utf8": ["@smithy/util-utf8@2.3.0", "", { "dependencies": { "@smithy/util-buffer-from": "^2.2.0", "tslib": "^2.6.2" } }, "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A=="],
@@ -2974,6 +2975,8 @@
"@grpc/proto-loader/yargs": ["yargs@17.7.2", "", { "dependencies": { "cliui": "^8.0.1", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", "string-width": "^4.2.3", "y18n": "^5.0.5", "yargs-parser": "^21.1.1" } }, "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w=="],
"@hono/zod-validator/zod": ["zod@3.25.76", "", {}, "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ=="],
"@isaacs/cliui/string-width": ["string-width@5.1.2", "", { "dependencies": { "eastasianwidth": "^0.2.0", "emoji-regex": "^9.2.2", "strip-ansi": "^7.0.1" } }, "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA=="],
"@isaacs/cliui/wrap-ansi": ["wrap-ansi@8.1.0", "", { "dependencies": { "ansi-styles": "^6.1.0", "string-width": "^5.0.1", "strip-ansi": "^7.0.1" } }, "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ=="],
@@ -2982,6 +2985,8 @@
"@mdx-js/mdx/source-map": ["source-map@0.7.6", "", {}, "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ=="],
"@modelcontextprotocol/sdk/zod": ["zod@3.25.76", "", {}, "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ=="],
"@npmcli/agent/lru-cache": ["lru-cache@10.4.3", "", {}, "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ=="],
"@npmcli/arborist/lru-cache": ["lru-cache@10.4.3", "", {}, "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ=="],
@@ -3090,6 +3095,8 @@
"astro/sharp": ["sharp@0.33.5", "", { "dependencies": { "color": "^4.2.3", "detect-libc": "^2.0.3", "semver": "^7.6.3" }, "optionalDependencies": { "@img/sharp-darwin-arm64": "0.33.5", "@img/sharp-darwin-x64": "0.33.5", "@img/sharp-libvips-darwin-arm64": "1.0.4", "@img/sharp-libvips-darwin-x64": "1.0.4", "@img/sharp-libvips-linux-arm": "1.0.5", "@img/sharp-libvips-linux-arm64": "1.0.4", "@img/sharp-libvips-linux-s390x": "1.0.4", "@img/sharp-libvips-linux-x64": "1.0.4", "@img/sharp-libvips-linuxmusl-arm64": "1.0.4", "@img/sharp-libvips-linuxmusl-x64": "1.0.4", "@img/sharp-linux-arm": "0.33.5", "@img/sharp-linux-arm64": "0.33.5", "@img/sharp-linux-s390x": "0.33.5", "@img/sharp-linux-x64": "0.33.5", "@img/sharp-linuxmusl-arm64": "0.33.5", "@img/sharp-linuxmusl-x64": "0.33.5", "@img/sharp-wasm32": "0.33.5", "@img/sharp-win32-ia32": "0.33.5", "@img/sharp-win32-x64": "0.33.5" } }, "sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw=="],
"astro/zod": ["zod@3.25.76", "", {}, "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ=="],
"babel-plugin-jsx-dom-expressions/@babel/helper-module-imports": ["@babel/helper-module-imports@7.18.6", "", { "dependencies": { "@babel/types": "^7.18.6" } }, "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA=="],
"bl/buffer": ["buffer@5.7.1", "", { "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.1.13" } }, "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ=="],
@@ -3162,6 +3169,8 @@
"miniflare/youch": ["youch@4.1.0-beta.10", "", { "dependencies": { "@poppinss/colors": "^4.1.5", "@poppinss/dumper": "^0.6.4", "@speed-highlight/core": "^1.2.7", "cookie": "^1.0.2", "youch-core": "^0.3.3" } }, "sha512-rLfVLB4FgQneDr0dv1oddCVZmKjcJ6yX6mS4pU82Mq/Dt9a3cLZQ62pDBL4AUO+uVrCvtWz3ZFUL2HFAFJ/BXQ=="],
"miniflare/zod": ["zod@3.22.3", "", {}, "sha512-EjIevzuJRiRPbVH4mGc8nApb/lVLKVpmUhAaR5R5doKGfAnGJ6Gr3CViAVjP+4FWSxCsybeWQdcgCtbX+7oZug=="],
"minipass-fetch/minizlib": ["minizlib@2.1.2", "", { "dependencies": { "minipass": "^3.0.0", "yallist": "^4.0.0" } }, "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg=="],
"minipass-flush/minipass": ["minipass@3.3.6", "", { "dependencies": { "yallist": "^4.0.0" } }, "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="],
@@ -3212,6 +3221,8 @@
"opencontrol/hono": ["hono@4.7.4", "", {}, "sha512-Pst8FuGqz3L7tFF+u9Pu70eI0xa5S3LPUmrNd5Jm8nTHze9FxLTK9Kaj5g/k4UcwuJSXTP65SyHOPLrffpcAJg=="],
"opencontrol/zod": ["zod@3.24.2", "", {}, "sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ=="],
"opencontrol/zod-to-json-schema": ["zod-to-json-schema@3.24.3", "", { "peerDependencies": { "zod": "^3.24.1" } }, "sha512-HIAfWdYIt1sssHfYZFCXp4rU1w2r8hVVXYIlmoa0r0gABLs5di3RCqPU5DDROogVz1pAdYBaz7HK5n9pSUNs3A=="],
"openid-client/jose": ["jose@4.15.9", "", {}, "sha512-1vUQX+IdDMVPj4k8kOxgUqlcK518yluMuGZwqlr44FS1ppZB/5GWh4rZG89erpOBOJjU/OBsnCVFfapsRz6nEA=="],
@@ -3300,6 +3311,8 @@
"uri-js/punycode": ["punycode@2.3.1", "", {}, "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg=="],
"vinxi/zod": ["zod@3.25.76", "", {}, "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ=="],
"wrangler/esbuild": ["esbuild@0.25.4", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.4", "@esbuild/android-arm": "0.25.4", "@esbuild/android-arm64": "0.25.4", "@esbuild/android-x64": "0.25.4", "@esbuild/darwin-arm64": "0.25.4", "@esbuild/darwin-x64": "0.25.4", "@esbuild/freebsd-arm64": "0.25.4", "@esbuild/freebsd-x64": "0.25.4", "@esbuild/linux-arm": "0.25.4", "@esbuild/linux-arm64": "0.25.4", "@esbuild/linux-ia32": "0.25.4", "@esbuild/linux-loong64": "0.25.4", "@esbuild/linux-mips64el": "0.25.4", "@esbuild/linux-ppc64": "0.25.4", "@esbuild/linux-riscv64": "0.25.4", "@esbuild/linux-s390x": "0.25.4", "@esbuild/linux-x64": "0.25.4", "@esbuild/netbsd-arm64": "0.25.4", "@esbuild/netbsd-x64": "0.25.4", "@esbuild/openbsd-arm64": "0.25.4", "@esbuild/openbsd-x64": "0.25.4", "@esbuild/sunos-x64": "0.25.4", "@esbuild/win32-arm64": "0.25.4", "@esbuild/win32-ia32": "0.25.4", "@esbuild/win32-x64": "0.25.4" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-8pgjLUcUjcgDg+2Q4NYXnPbo/vncAY4UmyaCm0jZevERqCHZIaWwdJHkf8XQtu4AxSKCdvrUbT0XUr1IdZzI8Q=="],
"wrangler/unenv": ["unenv@2.0.0-rc.21", "", { "dependencies": { "defu": "^6.1.4", "exsolve": "^1.0.7", "ohash": "^2.0.11", "pathe": "^2.0.3", "ufo": "^1.6.1" } }, "sha512-Wj7/AMtE9MRnAXa6Su3Lk0LNCfqDYgfwVjwRFVum9U7wsto1imuHqk4kTm7Jni+5A0Hn7dttL6O/zjvUvoo+8A=="],
@@ -3314,6 +3327,10 @@
"yargs/yargs-parser": ["yargs-parser@22.0.0", "", {}, "sha512-rwu/ClNdSMpkSrUb+d6BRsSkLUq1fmfsY6TOpYzTwvwkg1/NRG85KBy3kq++A8LKQwX6lsu+aWad+2khvuXrqw=="],
"zod-to-json-schema/zod": ["zod@3.25.76", "", {}, "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ=="],
"zod-to-ts/zod": ["zod@3.25.76", "", {}, "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ=="],
"@astrojs/mdx/@astrojs/markdown-remark/@astrojs/internal-helpers": ["@astrojs/internal-helpers@0.7.2", "", {}, "sha512-KCkCqR3Goym79soqEtbtLzJfqhTWMyVaizUi35FLzgGSzBotSw8DB1qwsu7U96ihOJgYhDk2nVPz+3LnXPeX6g=="],
"@astrojs/mdx/@astrojs/markdown-remark/@astrojs/prism": ["@astrojs/prism@3.3.0", "", { "dependencies": { "prismjs": "^1.30.0" } }, "sha512-q8VwfU/fDZNoDOf+r7jUnMC2//H2l0TuQ6FkGJL8vD8nw/q5KiL3DS1KKBI3QhI9UQhpJ5dc7AtqfbXWuOgLCQ=="],
@@ -3582,6 +3599,8 @@
"opencontrol/@modelcontextprotocol/sdk/pkce-challenge": ["pkce-challenge@4.1.0", "", {}, "sha512-ZBmhE1C9LcPoH9XZSdwiPtbPHZROwAnMy+kIFQVrnMCxY4Cudlz3gBOpzilgc0jOgRaiT3sIWfpMomW2ar2orQ=="],
"opencontrol/@modelcontextprotocol/sdk/zod": ["zod@3.25.76", "", {}, "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ=="],
"opencontrol/@modelcontextprotocol/sdk/zod-to-json-schema": ["zod-to-json-schema@3.24.5", "", { "peerDependencies": { "zod": "^3.24.1" } }, "sha512-/AuWwMP+YqiPbsJx5D6TfgRTc4kTLjsh5SOcd4bLsfUg2RcEXrFMJl1DGgdHy2aCfsIA/cr/1JM0xcB2GZji8g=="],
"pacote/tar/chownr": ["chownr@2.0.0", "", {}, "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ=="],

View File

@@ -6,89 +6,89 @@
import "sst"
declare module "sst" {
export interface Resource {
ANTHROPIC_API_KEY: {
type: "sst.sst.Secret"
value: string
"ANTHROPIC_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
AUTH_API_URL: {
type: "sst.sst.Linkable"
value: string
"AUTH_API_URL": {
"type": "sst.sst.Linkable"
"value": string
}
BASETEN_API_KEY: {
type: "sst.sst.Secret"
value: string
"BASETEN_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
Console: {
type: "sst.cloudflare.SolidStart"
url: string
"Console": {
"type": "sst.cloudflare.SolidStart"
"url": string
}
Database: {
database: string
host: string
password: string
port: number
type: "sst.sst.Linkable"
username: string
"Database": {
"database": string
"host": string
"password": string
"port": number
"type": "sst.sst.Linkable"
"username": string
}
FIREWORKS_API_KEY: {
type: "sst.sst.Secret"
value: string
"FIREWORKS_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_APP_ID: {
type: "sst.sst.Secret"
value: string
"GITHUB_APP_ID": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_APP_PRIVATE_KEY: {
type: "sst.sst.Secret"
value: string
"GITHUB_APP_PRIVATE_KEY": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_CLIENT_ID_CONSOLE: {
type: "sst.sst.Secret"
value: string
"GITHUB_CLIENT_ID_CONSOLE": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_CLIENT_SECRET_CONSOLE: {
type: "sst.sst.Secret"
value: string
"GITHUB_CLIENT_SECRET_CONSOLE": {
"type": "sst.sst.Secret"
"value": string
}
GOOGLE_CLIENT_ID: {
type: "sst.sst.Secret"
value: string
"GOOGLE_CLIENT_ID": {
"type": "sst.sst.Secret"
"value": string
}
HONEYCOMB_API_KEY: {
type: "sst.sst.Secret"
value: string
"HONEYCOMB_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
OPENAI_API_KEY: {
type: "sst.sst.Secret"
value: string
"OPENAI_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
STRIPE_SECRET_KEY: {
type: "sst.sst.Secret"
value: string
"STRIPE_SECRET_KEY": {
"type": "sst.sst.Secret"
"value": string
}
STRIPE_WEBHOOK_SECRET: {
type: "sst.sst.Linkable"
value: string
"STRIPE_WEBHOOK_SECRET": {
"type": "sst.sst.Linkable"
"value": string
}
Web: {
type: "sst.cloudflare.Astro"
url: string
"Web": {
"type": "sst.cloudflare.Astro"
"url": string
}
XAI_API_KEY: {
type: "sst.sst.Secret"
value: string
"XAI_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
}
}
// cloudflare
import * as cloudflare from "@cloudflare/workers-types"
import * as cloudflare from "@cloudflare/workers-types";
declare module "sst" {
export interface Resource {
Api: cloudflare.Service
AuthApi: cloudflare.Service
AuthStorage: cloudflare.KVNamespace
Bucket: cloudflare.R2Bucket
LogProcessor: cloudflare.Service
"Api": cloudflare.Service
"AuthApi": cloudflare.Service
"AuthStorage": cloudflare.KVNamespace
"Bucket": cloudflare.R2Bucket
"LogProcessor": cloudflare.Service
}
}

View File

@@ -6,89 +6,89 @@
import "sst"
declare module "sst" {
export interface Resource {
ANTHROPIC_API_KEY: {
type: "sst.sst.Secret"
value: string
"ANTHROPIC_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
AUTH_API_URL: {
type: "sst.sst.Linkable"
value: string
"AUTH_API_URL": {
"type": "sst.sst.Linkable"
"value": string
}
BASETEN_API_KEY: {
type: "sst.sst.Secret"
value: string
"BASETEN_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
Console: {
type: "sst.cloudflare.SolidStart"
url: string
"Console": {
"type": "sst.cloudflare.SolidStart"
"url": string
}
Database: {
database: string
host: string
password: string
port: number
type: "sst.sst.Linkable"
username: string
"Database": {
"database": string
"host": string
"password": string
"port": number
"type": "sst.sst.Linkable"
"username": string
}
FIREWORKS_API_KEY: {
type: "sst.sst.Secret"
value: string
"FIREWORKS_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_APP_ID: {
type: "sst.sst.Secret"
value: string
"GITHUB_APP_ID": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_APP_PRIVATE_KEY: {
type: "sst.sst.Secret"
value: string
"GITHUB_APP_PRIVATE_KEY": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_CLIENT_ID_CONSOLE: {
type: "sst.sst.Secret"
value: string
"GITHUB_CLIENT_ID_CONSOLE": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_CLIENT_SECRET_CONSOLE: {
type: "sst.sst.Secret"
value: string
"GITHUB_CLIENT_SECRET_CONSOLE": {
"type": "sst.sst.Secret"
"value": string
}
GOOGLE_CLIENT_ID: {
type: "sst.sst.Secret"
value: string
"GOOGLE_CLIENT_ID": {
"type": "sst.sst.Secret"
"value": string
}
HONEYCOMB_API_KEY: {
type: "sst.sst.Secret"
value: string
"HONEYCOMB_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
OPENAI_API_KEY: {
type: "sst.sst.Secret"
value: string
"OPENAI_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
STRIPE_SECRET_KEY: {
type: "sst.sst.Secret"
value: string
"STRIPE_SECRET_KEY": {
"type": "sst.sst.Secret"
"value": string
}
STRIPE_WEBHOOK_SECRET: {
type: "sst.sst.Linkable"
value: string
"STRIPE_WEBHOOK_SECRET": {
"type": "sst.sst.Linkable"
"value": string
}
Web: {
type: "sst.cloudflare.Astro"
url: string
"Web": {
"type": "sst.cloudflare.Astro"
"url": string
}
XAI_API_KEY: {
type: "sst.sst.Secret"
value: string
"XAI_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
}
}
// cloudflare
import * as cloudflare from "@cloudflare/workers-types"
import * as cloudflare from "@cloudflare/workers-types";
declare module "sst" {
export interface Resource {
Api: cloudflare.Service
AuthApi: cloudflare.Service
AuthStorage: cloudflare.KVNamespace
Bucket: cloudflare.R2Bucket
LogProcessor: cloudflare.Service
"Api": cloudflare.Service
"AuthApi": cloudflare.Service
"AuthStorage": cloudflare.KVNamespace
"Bucket": cloudflare.R2Bucket
"LogProcessor": cloudflare.Service
}
}

10
infra/desktop.ts Normal file
View File

@@ -0,0 +1,10 @@
import { domain } from "./stage"
new sst.cloudflare.StaticSite("Desktop", {
domain: "desktop." + domain,
path: "packages/app",
build: {
command: "bun run build",
output: "./dist",
},
})

View File

@@ -53,9 +53,6 @@
"tree-sitter-bash",
"web-tree-sitter"
],
"overrides": {
"zod": "4.1.8"
},
"patchedDependencies": {
"@solidjs/start@1.1.7": "patches/@solidjs%2Fstart@1.1.7.patch"
}

View File

@@ -159,109 +159,109 @@
}
[data-theme="ayu"][data-dark="false"] {
--theme-primary: #59c2ff;
--theme-secondary: #d2a6ff;
--theme-accent: #e6b450;
--theme-error: #d95757;
--theme-warning: #e6b673;
--theme-success: #7fd962;
--theme-info: #39bae6;
--theme-text: #bfbdb6;
--theme-text-muted: #565b66;
--theme-background: #0b0e14;
--theme-background-panel: #0f131a;
--theme-background-element: #0d1017;
--theme-border: #6c7380;
--theme-border-active: #6c7380;
--theme-border-subtle: #11151c;
--theme-diff-added: #7fd962;
--theme-diff-removed: #f26d78;
--theme-diff-context: #acb6bf;
--theme-diff-hunk-header: #acb6bf;
--theme-diff-highlight-added: #aad94c;
--theme-diff-highlight-removed: #f07178;
--theme-primary: #59C2FF;
--theme-secondary: #D2A6FF;
--theme-accent: #E6B450;
--theme-error: #D95757;
--theme-warning: #E6B673;
--theme-success: #7FD962;
--theme-info: #39BAE6;
--theme-text: #BFBDB6;
--theme-text-muted: #565B66;
--theme-background: #0B0E14;
--theme-background-panel: #0F131A;
--theme-background-element: #0D1017;
--theme-border: #6C7380;
--theme-border-active: #6C7380;
--theme-border-subtle: #11151C;
--theme-diff-added: #7FD962;
--theme-diff-removed: #F26D78;
--theme-diff-context: #ACB6BF;
--theme-diff-hunk-header: #ACB6BF;
--theme-diff-highlight-added: #AAD94C;
--theme-diff-highlight-removed: #F07178;
--theme-diff-added-bg: #20303b;
--theme-diff-removed-bg: #37222c;
--theme-diff-context-bg: #0f131a;
--theme-diff-line-number: #6c7380;
--theme-diff-context-bg: #0F131A;
--theme-diff-line-number: #6C7380;
--theme-diff-added-line-number-bg: #1b2b34;
--theme-diff-removed-line-number-bg: #2d1f26;
--theme-markdown-text: #bfbdb6;
--theme-markdown-heading: #d2a6ff;
--theme-markdown-link: #59c2ff;
--theme-markdown-link-text: #39bae6;
--theme-markdown-code: #aad94c;
--theme-markdown-block-quote: #e6b673;
--theme-markdown-emph: #e6b673;
--theme-markdown-strong: #ffb454;
--theme-markdown-horizontal-rule: #565b66;
--theme-markdown-list-item: #59c2ff;
--theme-markdown-list-enumeration: #39bae6;
--theme-markdown-image: #59c2ff;
--theme-markdown-image-text: #39bae6;
--theme-markdown-code-block: #bfbdb6;
--theme-syntax-comment: #acb6bf;
--theme-syntax-keyword: #ff8f40;
--theme-syntax-function: #ffb454;
--theme-syntax-variable: #59c2ff;
--theme-syntax-string: #aad94c;
--theme-syntax-number: #d2a6ff;
--theme-syntax-type: #e6b673;
--theme-syntax-operator: #f29668;
--theme-syntax-punctuation: #bfbdb6;
--theme-markdown-text: #BFBDB6;
--theme-markdown-heading: #D2A6FF;
--theme-markdown-link: #59C2FF;
--theme-markdown-link-text: #39BAE6;
--theme-markdown-code: #AAD94C;
--theme-markdown-block-quote: #E6B673;
--theme-markdown-emph: #E6B673;
--theme-markdown-strong: #FFB454;
--theme-markdown-horizontal-rule: #565B66;
--theme-markdown-list-item: #59C2FF;
--theme-markdown-list-enumeration: #39BAE6;
--theme-markdown-image: #59C2FF;
--theme-markdown-image-text: #39BAE6;
--theme-markdown-code-block: #BFBDB6;
--theme-syntax-comment: #ACB6BF;
--theme-syntax-keyword: #FF8F40;
--theme-syntax-function: #FFB454;
--theme-syntax-variable: #59C2FF;
--theme-syntax-string: #AAD94C;
--theme-syntax-number: #D2A6FF;
--theme-syntax-type: #E6B673;
--theme-syntax-operator: #F29668;
--theme-syntax-punctuation: #BFBDB6;
}
[data-theme="ayu"][data-dark="true"] {
--theme-primary: #59c2ff;
--theme-secondary: #d2a6ff;
--theme-accent: #e6b450;
--theme-error: #d95757;
--theme-warning: #e6b673;
--theme-success: #7fd962;
--theme-info: #39bae6;
--theme-text: #bfbdb6;
--theme-text-muted: #565b66;
--theme-background: #0b0e14;
--theme-background-panel: #0f131a;
--theme-background-element: #0d1017;
--theme-border: #6c7380;
--theme-border-active: #6c7380;
--theme-border-subtle: #11151c;
--theme-diff-added: #7fd962;
--theme-diff-removed: #f26d78;
--theme-diff-context: #acb6bf;
--theme-diff-hunk-header: #acb6bf;
--theme-diff-highlight-added: #aad94c;
--theme-diff-highlight-removed: #f07178;
--theme-primary: #59C2FF;
--theme-secondary: #D2A6FF;
--theme-accent: #E6B450;
--theme-error: #D95757;
--theme-warning: #E6B673;
--theme-success: #7FD962;
--theme-info: #39BAE6;
--theme-text: #BFBDB6;
--theme-text-muted: #565B66;
--theme-background: #0B0E14;
--theme-background-panel: #0F131A;
--theme-background-element: #0D1017;
--theme-border: #6C7380;
--theme-border-active: #6C7380;
--theme-border-subtle: #11151C;
--theme-diff-added: #7FD962;
--theme-diff-removed: #F26D78;
--theme-diff-context: #ACB6BF;
--theme-diff-hunk-header: #ACB6BF;
--theme-diff-highlight-added: #AAD94C;
--theme-diff-highlight-removed: #F07178;
--theme-diff-added-bg: #20303b;
--theme-diff-removed-bg: #37222c;
--theme-diff-context-bg: #0f131a;
--theme-diff-line-number: #6c7380;
--theme-diff-context-bg: #0F131A;
--theme-diff-line-number: #6C7380;
--theme-diff-added-line-number-bg: #1b2b34;
--theme-diff-removed-line-number-bg: #2d1f26;
--theme-markdown-text: #bfbdb6;
--theme-markdown-heading: #d2a6ff;
--theme-markdown-link: #59c2ff;
--theme-markdown-link-text: #39bae6;
--theme-markdown-code: #aad94c;
--theme-markdown-block-quote: #e6b673;
--theme-markdown-emph: #e6b673;
--theme-markdown-strong: #ffb454;
--theme-markdown-horizontal-rule: #565b66;
--theme-markdown-list-item: #59c2ff;
--theme-markdown-list-enumeration: #39bae6;
--theme-markdown-image: #59c2ff;
--theme-markdown-image-text: #39bae6;
--theme-markdown-code-block: #bfbdb6;
--theme-syntax-comment: #acb6bf;
--theme-syntax-keyword: #ff8f40;
--theme-syntax-function: #ffb454;
--theme-syntax-variable: #59c2ff;
--theme-syntax-string: #aad94c;
--theme-syntax-number: #d2a6ff;
--theme-syntax-type: #e6b673;
--theme-syntax-operator: #f29668;
--theme-syntax-punctuation: #bfbdb6;
--theme-markdown-text: #BFBDB6;
--theme-markdown-heading: #D2A6FF;
--theme-markdown-link: #59C2FF;
--theme-markdown-link-text: #39BAE6;
--theme-markdown-code: #AAD94C;
--theme-markdown-block-quote: #E6B673;
--theme-markdown-emph: #E6B673;
--theme-markdown-strong: #FFB454;
--theme-markdown-horizontal-rule: #565B66;
--theme-markdown-list-item: #59C2FF;
--theme-markdown-list-enumeration: #39BAE6;
--theme-markdown-image: #59C2FF;
--theme-markdown-image-text: #39BAE6;
--theme-markdown-code-block: #BFBDB6;
--theme-syntax-comment: #ACB6BF;
--theme-syntax-keyword: #FF8F40;
--theme-syntax-function: #FFB454;
--theme-syntax-variable: #59C2FF;
--theme-syntax-string: #AAD94C;
--theme-syntax-number: #D2A6FF;
--theme-syntax-type: #E6B673;
--theme-syntax-operator: #F29668;
--theme-syntax-punctuation: #BFBDB6;
}
[data-theme="catppuccin"][data-dark="false"] {
@@ -901,109 +901,109 @@
}
[data-theme="kanagawa"][data-dark="false"] {
--theme-primary: #2d4f67;
--theme-secondary: #957fb8;
--theme-accent: #d27e99;
--theme-error: #e82424;
--theme-warning: #d7a657;
--theme-success: #98bb6c;
--theme-info: #76946a;
--theme-text: #54433a;
--theme-text-muted: #9e9389;
--theme-background: #f2e9de;
--theme-background-panel: #eae4d7;
--theme-background-element: #e3dcd2;
--theme-border: #d4cbbf;
--theme-border-active: #c38d9d;
--theme-border-subtle: #dcd4c9;
--theme-diff-added: #98bb6c;
--theme-diff-removed: #e82424;
--theme-diff-context: #9e9389;
--theme-diff-hunk-header: #2d4f67;
--theme-diff-highlight-added: #89af5b;
--theme-diff-highlight-removed: #d61f1f;
--theme-diff-added-bg: #eaf3e4;
--theme-diff-removed-bg: #fbe6e6;
--theme-diff-context-bg: #eae4d7;
--theme-diff-line-number: #c7beb4;
--theme-diff-added-line-number-bg: #dde8d6;
--theme-diff-removed-line-number-bg: #f2dada;
--theme-markdown-text: #54433a;
--theme-markdown-heading: #957fb8;
--theme-markdown-link: #2d4f67;
--theme-markdown-link-text: #76946a;
--theme-markdown-code: #98bb6c;
--theme-markdown-block-quote: #9e9389;
--theme-markdown-emph: #c38d9d;
--theme-markdown-strong: #d7a657;
--theme-markdown-horizontal-rule: #9e9389;
--theme-markdown-list-item: #2d4f67;
--theme-markdown-list-enumeration: #76946a;
--theme-markdown-image: #2d4f67;
--theme-markdown-image-text: #76946a;
--theme-markdown-code-block: #54433a;
--theme-syntax-comment: #9e9389;
--theme-syntax-keyword: #957fb8;
--theme-syntax-function: #2d4f67;
--theme-syntax-variable: #54433a;
--theme-syntax-string: #98bb6c;
--theme-syntax-number: #d7a657;
--theme-syntax-type: #c38d9d;
--theme-syntax-operator: #d27e99;
--theme-syntax-punctuation: #54433a;
--theme-primary: #2D4F67;
--theme-secondary: #957FB8;
--theme-accent: #D27E99;
--theme-error: #E82424;
--theme-warning: #D7A657;
--theme-success: #98BB6C;
--theme-info: #76946A;
--theme-text: #54433A;
--theme-text-muted: #9E9389;
--theme-background: #F2E9DE;
--theme-background-panel: #EAE4D7;
--theme-background-element: #E3DCD2;
--theme-border: #D4CBBF;
--theme-border-active: #C38D9D;
--theme-border-subtle: #DCD4C9;
--theme-diff-added: #98BB6C;
--theme-diff-removed: #E82424;
--theme-diff-context: #9E9389;
--theme-diff-hunk-header: #2D4F67;
--theme-diff-highlight-added: #89AF5B;
--theme-diff-highlight-removed: #D61F1F;
--theme-diff-added-bg: #EAF3E4;
--theme-diff-removed-bg: #FBE6E6;
--theme-diff-context-bg: #EAE4D7;
--theme-diff-line-number: #C7BEB4;
--theme-diff-added-line-number-bg: #DDE8D6;
--theme-diff-removed-line-number-bg: #F2DADA;
--theme-markdown-text: #54433A;
--theme-markdown-heading: #957FB8;
--theme-markdown-link: #2D4F67;
--theme-markdown-link-text: #76946A;
--theme-markdown-code: #98BB6C;
--theme-markdown-block-quote: #9E9389;
--theme-markdown-emph: #C38D9D;
--theme-markdown-strong: #D7A657;
--theme-markdown-horizontal-rule: #9E9389;
--theme-markdown-list-item: #2D4F67;
--theme-markdown-list-enumeration: #76946A;
--theme-markdown-image: #2D4F67;
--theme-markdown-image-text: #76946A;
--theme-markdown-code-block: #54433A;
--theme-syntax-comment: #9E9389;
--theme-syntax-keyword: #957FB8;
--theme-syntax-function: #2D4F67;
--theme-syntax-variable: #54433A;
--theme-syntax-string: #98BB6C;
--theme-syntax-number: #D7A657;
--theme-syntax-type: #C38D9D;
--theme-syntax-operator: #D27E99;
--theme-syntax-punctuation: #54433A;
}
[data-theme="kanagawa"][data-dark="true"] {
--theme-primary: #7e9cd8;
--theme-secondary: #957fb8;
--theme-accent: #d27e99;
--theme-error: #e82424;
--theme-warning: #d7a657;
--theme-success: #98bb6c;
--theme-info: #76946a;
--theme-text: #dcd7ba;
--theme-primary: #7E9CD8;
--theme-secondary: #957FB8;
--theme-accent: #D27E99;
--theme-error: #E82424;
--theme-warning: #D7A657;
--theme-success: #98BB6C;
--theme-info: #76946A;
--theme-text: #DCD7BA;
--theme-text-muted: #727169;
--theme-background: #1f1f28;
--theme-background-panel: #2a2a37;
--theme-background: #1F1F28;
--theme-background-panel: #2A2A37;
--theme-background-element: #363646;
--theme-border: #54546d;
--theme-border-active: #c38d9d;
--theme-border: #54546D;
--theme-border-active: #C38D9D;
--theme-border-subtle: #363646;
--theme-diff-added: #98bb6c;
--theme-diff-removed: #e82424;
--theme-diff-added: #98BB6C;
--theme-diff-removed: #E82424;
--theme-diff-context: #727169;
--theme-diff-hunk-header: #2d4f67;
--theme-diff-highlight-added: #a9d977;
--theme-diff-highlight-removed: #f24a4a;
--theme-diff-added-bg: #252e25;
--theme-diff-hunk-header: #2D4F67;
--theme-diff-highlight-added: #A9D977;
--theme-diff-highlight-removed: #F24A4A;
--theme-diff-added-bg: #252E25;
--theme-diff-removed-bg: #362020;
--theme-diff-context-bg: #2a2a37;
--theme-diff-line-number: #54546d;
--theme-diff-context-bg: #2A2A37;
--theme-diff-line-number: #54546D;
--theme-diff-added-line-number-bg: #202820;
--theme-diff-removed-line-number-bg: #2d1c1c;
--theme-markdown-text: #dcd7ba;
--theme-markdown-heading: #957fb8;
--theme-markdown-link: #7e9cd8;
--theme-markdown-link-text: #76946a;
--theme-markdown-code: #98bb6c;
--theme-diff-removed-line-number-bg: #2D1C1C;
--theme-markdown-text: #DCD7BA;
--theme-markdown-heading: #957FB8;
--theme-markdown-link: #7E9CD8;
--theme-markdown-link-text: #76946A;
--theme-markdown-code: #98BB6C;
--theme-markdown-block-quote: #727169;
--theme-markdown-emph: #c38d9d;
--theme-markdown-strong: #d7a657;
--theme-markdown-emph: #C38D9D;
--theme-markdown-strong: #D7A657;
--theme-markdown-horizontal-rule: #727169;
--theme-markdown-list-item: #7e9cd8;
--theme-markdown-list-enumeration: #76946a;
--theme-markdown-image: #7e9cd8;
--theme-markdown-image-text: #76946a;
--theme-markdown-code-block: #dcd7ba;
--theme-markdown-list-item: #7E9CD8;
--theme-markdown-list-enumeration: #76946A;
--theme-markdown-image: #7E9CD8;
--theme-markdown-image-text: #76946A;
--theme-markdown-code-block: #DCD7BA;
--theme-syntax-comment: #727169;
--theme-syntax-keyword: #957fb8;
--theme-syntax-function: #7e9cd8;
--theme-syntax-variable: #dcd7ba;
--theme-syntax-string: #98bb6c;
--theme-syntax-number: #d7a657;
--theme-syntax-type: #c38d9d;
--theme-syntax-operator: #d27e99;
--theme-syntax-punctuation: #dcd7ba;
--theme-syntax-keyword: #957FB8;
--theme-syntax-function: #7E9CD8;
--theme-syntax-variable: #DCD7BA;
--theme-syntax-string: #98BB6C;
--theme-syntax-number: #D7A657;
--theme-syntax-type: #C38D9D;
--theme-syntax-operator: #D27E99;
--theme-syntax-punctuation: #DCD7BA;
}
[data-theme="material"][data-dark="false"] {
@@ -1325,109 +1325,109 @@
}
[data-theme="nord"][data-dark="false"] {
--theme-primary: #5e81ac;
--theme-secondary: #81a1c1;
--theme-accent: #8fbcbb;
--theme-error: #bf616a;
--theme-warning: #d08770;
--theme-success: #a3be8c;
--theme-info: #5e81ac;
--theme-text: #2e3440;
--theme-text-muted: #3b4252;
--theme-background: #eceff4;
--theme-background-panel: #e5e9f0;
--theme-background-element: #d8dee9;
--theme-border: #4c566a;
--theme-border-active: #434c5e;
--theme-border-subtle: #4c566a;
--theme-diff-added: #a3be8c;
--theme-diff-removed: #bf616a;
--theme-diff-context: #4c566a;
--theme-diff-hunk-header: #4c566a;
--theme-diff-highlight-added: #a3be8c;
--theme-diff-highlight-removed: #bf616a;
--theme-diff-added-bg: #e5e9f0;
--theme-diff-removed-bg: #e5e9f0;
--theme-diff-context-bg: #e5e9f0;
--theme-diff-line-number: #d8dee9;
--theme-diff-added-line-number-bg: #e5e9f0;
--theme-diff-removed-line-number-bg: #e5e9f0;
--theme-markdown-text: #2e3440;
--theme-markdown-heading: #5e81ac;
--theme-markdown-link: #81a1c1;
--theme-markdown-link-text: #8fbcbb;
--theme-markdown-code: #a3be8c;
--theme-markdown-block-quote: #4c566a;
--theme-markdown-emph: #d08770;
--theme-markdown-strong: #ebcb8b;
--theme-markdown-horizontal-rule: #4c566a;
--theme-markdown-list-item: #5e81ac;
--theme-markdown-list-enumeration: #8fbcbb;
--theme-markdown-image: #81a1c1;
--theme-markdown-image-text: #8fbcbb;
--theme-markdown-code-block: #2e3440;
--theme-syntax-comment: #4c566a;
--theme-syntax-keyword: #81a1c1;
--theme-syntax-function: #88c0d0;
--theme-syntax-variable: #8fbcbb;
--theme-syntax-string: #a3be8c;
--theme-syntax-number: #b48ead;
--theme-syntax-type: #8fbcbb;
--theme-syntax-operator: #81a1c1;
--theme-syntax-punctuation: #2e3440;
--theme-primary: #5E81AC;
--theme-secondary: #81A1C1;
--theme-accent: #8FBCBB;
--theme-error: #BF616A;
--theme-warning: #D08770;
--theme-success: #A3BE8C;
--theme-info: #5E81AC;
--theme-text: #2E3440;
--theme-text-muted: #3B4252;
--theme-background: #ECEFF4;
--theme-background-panel: #E5E9F0;
--theme-background-element: #D8DEE9;
--theme-border: #4C566A;
--theme-border-active: #434C5E;
--theme-border-subtle: #4C566A;
--theme-diff-added: #A3BE8C;
--theme-diff-removed: #BF616A;
--theme-diff-context: #4C566A;
--theme-diff-hunk-header: #4C566A;
--theme-diff-highlight-added: #A3BE8C;
--theme-diff-highlight-removed: #BF616A;
--theme-diff-added-bg: #E5E9F0;
--theme-diff-removed-bg: #E5E9F0;
--theme-diff-context-bg: #E5E9F0;
--theme-diff-line-number: #D8DEE9;
--theme-diff-added-line-number-bg: #E5E9F0;
--theme-diff-removed-line-number-bg: #E5E9F0;
--theme-markdown-text: #2E3440;
--theme-markdown-heading: #5E81AC;
--theme-markdown-link: #81A1C1;
--theme-markdown-link-text: #8FBCBB;
--theme-markdown-code: #A3BE8C;
--theme-markdown-block-quote: #4C566A;
--theme-markdown-emph: #D08770;
--theme-markdown-strong: #EBCB8B;
--theme-markdown-horizontal-rule: #4C566A;
--theme-markdown-list-item: #5E81AC;
--theme-markdown-list-enumeration: #8FBCBB;
--theme-markdown-image: #81A1C1;
--theme-markdown-image-text: #8FBCBB;
--theme-markdown-code-block: #2E3440;
--theme-syntax-comment: #4C566A;
--theme-syntax-keyword: #81A1C1;
--theme-syntax-function: #88C0D0;
--theme-syntax-variable: #8FBCBB;
--theme-syntax-string: #A3BE8C;
--theme-syntax-number: #B48EAD;
--theme-syntax-type: #8FBCBB;
--theme-syntax-operator: #81A1C1;
--theme-syntax-punctuation: #2E3440;
}
[data-theme="nord"][data-dark="true"] {
--theme-primary: #88c0d0;
--theme-secondary: #81a1c1;
--theme-accent: #8fbcbb;
--theme-error: #bf616a;
--theme-warning: #d08770;
--theme-success: #a3be8c;
--theme-info: #88c0d0;
--theme-text: #eceff4;
--theme-text-muted: #8b95a7;
--theme-background: #2e3440;
--theme-background-panel: #3b4252;
--theme-background-element: #434c5e;
--theme-border: #434c5e;
--theme-border-active: #4c566a;
--theme-border-subtle: #434c5e;
--theme-diff-added: #a3be8c;
--theme-diff-removed: #bf616a;
--theme-diff-context: #8b95a7;
--theme-diff-hunk-header: #8b95a7;
--theme-diff-highlight-added: #a3be8c;
--theme-diff-highlight-removed: #bf616a;
--theme-diff-added-bg: #3b4252;
--theme-diff-removed-bg: #3b4252;
--theme-diff-context-bg: #3b4252;
--theme-diff-line-number: #434c5e;
--theme-diff-added-line-number-bg: #3b4252;
--theme-diff-removed-line-number-bg: #3b4252;
--theme-markdown-text: #d8dee9;
--theme-markdown-heading: #88c0d0;
--theme-markdown-link: #81a1c1;
--theme-markdown-link-text: #8fbcbb;
--theme-markdown-code: #a3be8c;
--theme-markdown-block-quote: #8b95a7;
--theme-markdown-emph: #d08770;
--theme-markdown-strong: #ebcb8b;
--theme-markdown-horizontal-rule: #8b95a7;
--theme-markdown-list-item: #88c0d0;
--theme-markdown-list-enumeration: #8fbcbb;
--theme-markdown-image: #81a1c1;
--theme-markdown-image-text: #8fbcbb;
--theme-markdown-code-block: #d8dee9;
--theme-syntax-comment: #8b95a7;
--theme-syntax-keyword: #81a1c1;
--theme-syntax-function: #88c0d0;
--theme-syntax-variable: #8fbcbb;
--theme-syntax-string: #a3be8c;
--theme-syntax-number: #b48ead;
--theme-syntax-type: #8fbcbb;
--theme-syntax-operator: #81a1c1;
--theme-syntax-punctuation: #d8dee9;
--theme-primary: #88C0D0;
--theme-secondary: #81A1C1;
--theme-accent: #8FBCBB;
--theme-error: #BF616A;
--theme-warning: #D08770;
--theme-success: #A3BE8C;
--theme-info: #88C0D0;
--theme-text: #ECEFF4;
--theme-text-muted: #8B95A7;
--theme-background: #2E3440;
--theme-background-panel: #3B4252;
--theme-background-element: #434C5E;
--theme-border: #434C5E;
--theme-border-active: #4C566A;
--theme-border-subtle: #434C5E;
--theme-diff-added: #A3BE8C;
--theme-diff-removed: #BF616A;
--theme-diff-context: #8B95A7;
--theme-diff-hunk-header: #8B95A7;
--theme-diff-highlight-added: #A3BE8C;
--theme-diff-highlight-removed: #BF616A;
--theme-diff-added-bg: #3B4252;
--theme-diff-removed-bg: #3B4252;
--theme-diff-context-bg: #3B4252;
--theme-diff-line-number: #434C5E;
--theme-diff-added-line-number-bg: #3B4252;
--theme-diff-removed-line-number-bg: #3B4252;
--theme-markdown-text: #D8DEE9;
--theme-markdown-heading: #88C0D0;
--theme-markdown-link: #81A1C1;
--theme-markdown-link-text: #8FBCBB;
--theme-markdown-code: #A3BE8C;
--theme-markdown-block-quote: #8B95A7;
--theme-markdown-emph: #D08770;
--theme-markdown-strong: #EBCB8B;
--theme-markdown-horizontal-rule: #8B95A7;
--theme-markdown-list-item: #88C0D0;
--theme-markdown-list-enumeration: #8FBCBB;
--theme-markdown-image: #81A1C1;
--theme-markdown-image-text: #8FBCBB;
--theme-markdown-code-block: #D8DEE9;
--theme-syntax-comment: #8B95A7;
--theme-syntax-keyword: #81A1C1;
--theme-syntax-function: #88C0D0;
--theme-syntax-variable: #8FBCBB;
--theme-syntax-string: #A3BE8C;
--theme-syntax-number: #B48EAD;
--theme-syntax-type: #8FBCBB;
--theme-syntax-operator: #81A1C1;
--theme-syntax-punctuation: #D8DEE9;
}
[data-theme="one-dark"][data-dark="false"] {
@@ -2173,109 +2173,109 @@
}
[data-theme="vesper"][data-dark="false"] {
--theme-primary: #ffc799;
--theme-secondary: #99ffe4;
--theme-accent: #ffc799;
--theme-error: #ff8080;
--theme-warning: #ffc799;
--theme-success: #99ffe4;
--theme-info: #ffc799;
--theme-primary: #FFC799;
--theme-secondary: #99FFE4;
--theme-accent: #FFC799;
--theme-error: #FF8080;
--theme-warning: #FFC799;
--theme-success: #99FFE4;
--theme-info: #FFC799;
--theme-text: #101010;
--theme-text-muted: #a0a0a0;
--theme-background: #fff;
--theme-background-panel: #f0f0f0;
--theme-background-element: #e0e0e0;
--theme-border: #d0d0d0;
--theme-border-active: #ffc799;
--theme-border-subtle: #e8e8e8;
--theme-diff-added: #99ffe4;
--theme-diff-removed: #ff8080;
--theme-diff-context: #a0a0a0;
--theme-diff-hunk-header: #a0a0a0;
--theme-diff-highlight-added: #99ffe4;
--theme-diff-highlight-removed: #ff8080;
--theme-text-muted: #A0A0A0;
--theme-background: #FFF;
--theme-background-panel: #F0F0F0;
--theme-background-element: #E0E0E0;
--theme-border: #D0D0D0;
--theme-border-active: #FFC799;
--theme-border-subtle: #E8E8E8;
--theme-diff-added: #99FFE4;
--theme-diff-removed: #FF8080;
--theme-diff-context: #A0A0A0;
--theme-diff-hunk-header: #A0A0A0;
--theme-diff-highlight-added: #99FFE4;
--theme-diff-highlight-removed: #FF8080;
--theme-diff-added-bg: #e8f5e8;
--theme-diff-removed-bg: #f5e8e8;
--theme-diff-context-bg: #f8f8f8;
--theme-diff-context-bg: #F8F8F8;
--theme-diff-line-number: #808080;
--theme-diff-added-line-number-bg: #e8f5e8;
--theme-diff-removed-line-number-bg: #f5e8e8;
--theme-markdown-text: #101010;
--theme-markdown-heading: #ffc799;
--theme-markdown-link: #ffc799;
--theme-markdown-link-text: #a0a0a0;
--theme-markdown-code: #a0a0a0;
--theme-markdown-heading: #FFC799;
--theme-markdown-link: #FFC799;
--theme-markdown-link-text: #A0A0A0;
--theme-markdown-code: #A0A0A0;
--theme-markdown-block-quote: #101010;
--theme-markdown-emph: #101010;
--theme-markdown-strong: #101010;
--theme-markdown-horizontal-rule: #65737e;
--theme-markdown-horizontal-rule: #65737E;
--theme-markdown-list-item: #101010;
--theme-markdown-list-enumeration: #101010;
--theme-markdown-image: #ffc799;
--theme-markdown-image-text: #a0a0a0;
--theme-markdown-image: #FFC799;
--theme-markdown-image-text: #A0A0A0;
--theme-markdown-code-block: #101010;
--theme-syntax-comment: #8b8b8b94;
--theme-syntax-keyword: #a0a0a0;
--theme-syntax-function: #ffc799;
--theme-syntax-keyword: #A0A0A0;
--theme-syntax-function: #FFC799;
--theme-syntax-variable: #101010;
--theme-syntax-string: #99ffe4;
--theme-syntax-number: #ffc799;
--theme-syntax-type: #ffc799;
--theme-syntax-operator: #a0a0a0;
--theme-syntax-string: #99FFE4;
--theme-syntax-number: #FFC799;
--theme-syntax-type: #FFC799;
--theme-syntax-operator: #A0A0A0;
--theme-syntax-punctuation: #101010;
}
[data-theme="vesper"][data-dark="true"] {
--theme-primary: #ffc799;
--theme-secondary: #99ffe4;
--theme-accent: #ffc799;
--theme-error: #ff8080;
--theme-warning: #ffc799;
--theme-success: #99ffe4;
--theme-info: #ffc799;
--theme-text: #fff;
--theme-text-muted: #a0a0a0;
--theme-primary: #FFC799;
--theme-secondary: #99FFE4;
--theme-accent: #FFC799;
--theme-error: #FF8080;
--theme-warning: #FFC799;
--theme-success: #99FFE4;
--theme-info: #FFC799;
--theme-text: #FFF;
--theme-text-muted: #A0A0A0;
--theme-background: #101010;
--theme-background-panel: #101010;
--theme-background-element: #101010;
--theme-border: #282828;
--theme-border-active: #ffc799;
--theme-border-subtle: #1c1c1c;
--theme-diff-added: #99ffe4;
--theme-diff-removed: #ff8080;
--theme-diff-context: #a0a0a0;
--theme-diff-hunk-header: #a0a0a0;
--theme-diff-highlight-added: #99ffe4;
--theme-diff-highlight-removed: #ff8080;
--theme-border-active: #FFC799;
--theme-border-subtle: #1C1C1C;
--theme-diff-added: #99FFE4;
--theme-diff-removed: #FF8080;
--theme-diff-context: #A0A0A0;
--theme-diff-hunk-header: #A0A0A0;
--theme-diff-highlight-added: #99FFE4;
--theme-diff-highlight-removed: #FF8080;
--theme-diff-added-bg: #0d2818;
--theme-diff-removed-bg: #281a1a;
--theme-diff-context-bg: #101010;
--theme-diff-line-number: #505050;
--theme-diff-added-line-number-bg: #0d2818;
--theme-diff-removed-line-number-bg: #281a1a;
--theme-markdown-text: #fff;
--theme-markdown-heading: #ffc799;
--theme-markdown-link: #ffc799;
--theme-markdown-link-text: #a0a0a0;
--theme-markdown-code: #a0a0a0;
--theme-markdown-block-quote: #fff;
--theme-markdown-emph: #fff;
--theme-markdown-strong: #fff;
--theme-markdown-horizontal-rule: #65737e;
--theme-markdown-list-item: #fff;
--theme-markdown-list-enumeration: #fff;
--theme-markdown-image: #ffc799;
--theme-markdown-image-text: #a0a0a0;
--theme-markdown-code-block: #fff;
--theme-markdown-text: #FFF;
--theme-markdown-heading: #FFC799;
--theme-markdown-link: #FFC799;
--theme-markdown-link-text: #A0A0A0;
--theme-markdown-code: #A0A0A0;
--theme-markdown-block-quote: #FFF;
--theme-markdown-emph: #FFF;
--theme-markdown-strong: #FFF;
--theme-markdown-horizontal-rule: #65737E;
--theme-markdown-list-item: #FFF;
--theme-markdown-list-enumeration: #FFF;
--theme-markdown-image: #FFC799;
--theme-markdown-image-text: #A0A0A0;
--theme-markdown-code-block: #FFF;
--theme-syntax-comment: #8b8b8b94;
--theme-syntax-keyword: #a0a0a0;
--theme-syntax-function: #ffc799;
--theme-syntax-variable: #fff;
--theme-syntax-string: #99ffe4;
--theme-syntax-number: #ffc799;
--theme-syntax-type: #ffc799;
--theme-syntax-operator: #a0a0a0;
--theme-syntax-punctuation: #fff;
--theme-syntax-keyword: #A0A0A0;
--theme-syntax-function: #FFC799;
--theme-syntax-variable: #FFF;
--theme-syntax-string: #99FFE4;
--theme-syntax-number: #FFC799;
--theme-syntax-type: #FFC799;
--theme-syntax-operator: #A0A0A0;
--theme-syntax-punctuation: #FFF;
}
[data-theme="zenburn"][data-dark="false"] {
@@ -2383,3 +2383,4 @@
--theme-syntax-operator: #f0dfaf;
--theme-syntax-punctuation: #dcdccc;
}

9
packages/app/sst-env.d.ts vendored Normal file
View File

@@ -0,0 +1,9 @@
/* This file is auto-generated by SST. Do not edit. */
/* tslint:disable */
/* eslint-disable */
/* deno-fmt-ignore-file */
/// <reference path="../../sst-env.d.ts" />
import "sst"
export {}

View File

@@ -6,89 +6,89 @@
import "sst"
declare module "sst" {
export interface Resource {
ANTHROPIC_API_KEY: {
type: "sst.sst.Secret"
value: string
"ANTHROPIC_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
AUTH_API_URL: {
type: "sst.sst.Linkable"
value: string
"AUTH_API_URL": {
"type": "sst.sst.Linkable"
"value": string
}
BASETEN_API_KEY: {
type: "sst.sst.Secret"
value: string
"BASETEN_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
Console: {
type: "sst.cloudflare.SolidStart"
url: string
"Console": {
"type": "sst.cloudflare.SolidStart"
"url": string
}
Database: {
database: string
host: string
password: string
port: number
type: "sst.sst.Linkable"
username: string
"Database": {
"database": string
"host": string
"password": string
"port": number
"type": "sst.sst.Linkable"
"username": string
}
FIREWORKS_API_KEY: {
type: "sst.sst.Secret"
value: string
"FIREWORKS_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_APP_ID: {
type: "sst.sst.Secret"
value: string
"GITHUB_APP_ID": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_APP_PRIVATE_KEY: {
type: "sst.sst.Secret"
value: string
"GITHUB_APP_PRIVATE_KEY": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_CLIENT_ID_CONSOLE: {
type: "sst.sst.Secret"
value: string
"GITHUB_CLIENT_ID_CONSOLE": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_CLIENT_SECRET_CONSOLE: {
type: "sst.sst.Secret"
value: string
"GITHUB_CLIENT_SECRET_CONSOLE": {
"type": "sst.sst.Secret"
"value": string
}
GOOGLE_CLIENT_ID: {
type: "sst.sst.Secret"
value: string
"GOOGLE_CLIENT_ID": {
"type": "sst.sst.Secret"
"value": string
}
HONEYCOMB_API_KEY: {
type: "sst.sst.Secret"
value: string
"HONEYCOMB_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
OPENAI_API_KEY: {
type: "sst.sst.Secret"
value: string
"OPENAI_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
STRIPE_SECRET_KEY: {
type: "sst.sst.Secret"
value: string
"STRIPE_SECRET_KEY": {
"type": "sst.sst.Secret"
"value": string
}
STRIPE_WEBHOOK_SECRET: {
type: "sst.sst.Linkable"
value: string
"STRIPE_WEBHOOK_SECRET": {
"type": "sst.sst.Linkable"
"value": string
}
Web: {
type: "sst.cloudflare.Astro"
url: string
"Web": {
"type": "sst.cloudflare.Astro"
"url": string
}
XAI_API_KEY: {
type: "sst.sst.Secret"
value: string
"XAI_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
}
}
// cloudflare
import * as cloudflare from "@cloudflare/workers-types"
import * as cloudflare from "@cloudflare/workers-types";
declare module "sst" {
export interface Resource {
Api: cloudflare.Service
AuthApi: cloudflare.Service
AuthStorage: cloudflare.KVNamespace
Bucket: cloudflare.R2Bucket
LogProcessor: cloudflare.Service
"Api": cloudflare.Service
"AuthApi": cloudflare.Service
"AuthStorage": cloudflare.KVNamespace
"Bucket": cloudflare.R2Bucket
"LogProcessor": cloudflare.Service
}
}

136
sst-env.d.ts vendored
View File

@@ -5,95 +5,95 @@
declare module "sst" {
export interface Resource {
ANTHROPIC_API_KEY: {
type: "sst.sst.Secret"
value: string
"ANTHROPIC_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
AUTH_API_URL: {
type: "sst.sst.Linkable"
value: string
"AUTH_API_URL": {
"type": "sst.sst.Linkable"
"value": string
}
Api: {
type: "sst.cloudflare.Worker"
url: string
"Api": {
"type": "sst.cloudflare.Worker"
"url": string
}
AuthApi: {
type: "sst.cloudflare.Worker"
url: string
"AuthApi": {
"type": "sst.cloudflare.Worker"
"url": string
}
AuthStorage: {
type: "sst.cloudflare.Kv"
"AuthStorage": {
"type": "sst.cloudflare.Kv"
}
BASETEN_API_KEY: {
type: "sst.sst.Secret"
value: string
"BASETEN_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
Bucket: {
name: string
type: "sst.cloudflare.Bucket"
"Bucket": {
"name": string
"type": "sst.cloudflare.Bucket"
}
Console: {
type: "sst.cloudflare.SolidStart"
url: string
"Console": {
"type": "sst.cloudflare.SolidStart"
"url": string
}
Database: {
database: string
host: string
password: string
port: number
type: "sst.sst.Linkable"
username: string
"Database": {
"database": string
"host": string
"password": string
"port": number
"type": "sst.sst.Linkable"
"username": string
}
FIREWORKS_API_KEY: {
type: "sst.sst.Secret"
value: string
"FIREWORKS_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_APP_ID: {
type: "sst.sst.Secret"
value: string
"GITHUB_APP_ID": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_APP_PRIVATE_KEY: {
type: "sst.sst.Secret"
value: string
"GITHUB_APP_PRIVATE_KEY": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_CLIENT_ID_CONSOLE: {
type: "sst.sst.Secret"
value: string
"GITHUB_CLIENT_ID_CONSOLE": {
"type": "sst.sst.Secret"
"value": string
}
GITHUB_CLIENT_SECRET_CONSOLE: {
type: "sst.sst.Secret"
value: string
"GITHUB_CLIENT_SECRET_CONSOLE": {
"type": "sst.sst.Secret"
"value": string
}
GOOGLE_CLIENT_ID: {
type: "sst.sst.Secret"
value: string
"GOOGLE_CLIENT_ID": {
"type": "sst.sst.Secret"
"value": string
}
HONEYCOMB_API_KEY: {
type: "sst.sst.Secret"
value: string
"HONEYCOMB_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
LogProcessor: {
type: "sst.cloudflare.Worker"
"LogProcessor": {
"type": "sst.cloudflare.Worker"
}
OPENAI_API_KEY: {
type: "sst.sst.Secret"
value: string
"OPENAI_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
STRIPE_SECRET_KEY: {
type: "sst.sst.Secret"
value: string
"STRIPE_SECRET_KEY": {
"type": "sst.sst.Secret"
"value": string
}
STRIPE_WEBHOOK_SECRET: {
type: "sst.sst.Linkable"
value: string
"STRIPE_WEBHOOK_SECRET": {
"type": "sst.sst.Linkable"
"value": string
}
Web: {
type: "sst.cloudflare.Astro"
url: string
"Web": {
"type": "sst.cloudflare.Astro"
"url": string
}
XAI_API_KEY: {
type: "sst.sst.Secret"
value: string
"XAI_API_KEY": {
"type": "sst.sst.Secret"
"value": string
}
}
}

View File

@@ -15,11 +15,8 @@ export default $config({
}
},
async run() {
const { api } = await import("./infra/app.js")
const { auth } = await import("./infra/cloud.js")
return {
api: api.url,
auth: auth.url,
}
await import("./infra/app.js")
await import("./infra/cloud.js")
await import("./infra/desktop.js")
},
})