Showing the changes to apps/cloud/src (2 of 8 files). Show all
Unified · Split
| @@ -43,8 +43,13 @@ import { · 42 unmodified lines | |||
| 43 | collectTables, | 43 | collectTables, |
| 44 | } from "@executor-js/api/server"; | 44 | } from "@executor-js/api/server"; |
| 45 | import { googleCatalogOAuthScopesForPreset } from "@executor-js/plugin-openapi/providers/google"; | 45 | import { googleCatalogOAuthScopesForPreset } from "@executor-js/plugin-openapi/providers/google"; |
| 46 | import { slackMcpUserScopes } from "@executor-js/react/lib/slack-mcp-oauth"; | ||
| 46 | import { makeDynamicWorkerExecutor } from "@executor-js/runtime-dynamic-worker"; | 47 | import { makeDynamicWorkerExecutor } from "@executor-js/runtime-dynamic-worker"; |
| 47 | import type { AnyPlugin, FirstPartyOAuthClientConfig } from "@executor-js/sdk"; | 48 | import { |
| 49 | IntegrationSlug, | ||
| 50 | type AnyPlugin, | ||
| 51 | type FirstPartyOAuthClientConfig, | ||
| 52 | } from "@executor-js/sdk"; | ||
| 48 | 53 | ||
| 49 | import executorConfig from "../../executor.config"; | 54 | import executorConfig from "../../executor.config"; |
| 50 | import { DbService } from "../db/db"; | 55 | import { DbService } from "../db/db"; |
| @@ -136,6 +141,20 @@ const cloudFirstPartyOAuthClients = (): readonly FirstPartyOAuthClientConfig[] = · 85 unmodified lines | |||
| 136 | }, | 141 | }, |
| 137 | ] | 142 | ] |
| 138 | : []), | 143 | : []), |
| 144 | ...(env.FIRST_PARTY_SLACK_CLIENT_ID && env.FIRST_PARTY_SLACK_CLIENT_SECRET | ||
| 145 | ? [ | ||
| 146 | { | ||
| 147 | name: "slack", | ||
| 148 | authorizationUrl: "https://slack.com/oauth/v2_user/authorize", | ||
| 149 | tokenUrl: "https://slack.com/api/oauth.v2.user.access", | ||
| 150 | resource: "https://mcp.slack.com", | ||
| 151 | clientId: env.FIRST_PARTY_SLACK_CLIENT_ID, | ||
| 152 | clientSecret: env.FIRST_PARTY_SLACK_CLIENT_SECRET, | ||
| 153 | integrations: [IntegrationSlug.make("slack")], | ||
| 154 | allowedScopes: slackMcpUserScopes, | ||
| 155 | }, | ||
| 156 | ] | ||
| 157 | : []), | ||
| 139 | ]; | 158 | ]; |
| 140 | 159 | ||
| 141 | export const CloudHostConfig: Layer.Layer<HostConfig> = Layer.sync(HostConfig, () => ({ | 160 | export const CloudHostConfig: Layer.Layer<HostConfig> = Layer.sync(HostConfig, () => ({ |
| @@ -67,6 +67,8 @@ declare global { · 66 unmodified lines | |||
| 67 | FIRST_PARTY_GITHUB_TOKEN_URL?: string; | 67 | FIRST_PARTY_GITHUB_TOKEN_URL?: string; |
| 68 | FIRST_PARTY_GOOGLE_CLIENT_ID?: string; | 68 | FIRST_PARTY_GOOGLE_CLIENT_ID?: string; |
| 69 | FIRST_PARTY_GOOGLE_CLIENT_SECRET?: string; | 69 | FIRST_PARTY_GOOGLE_CLIENT_SECRET?: string; |
| 70 | FIRST_PARTY_SLACK_CLIENT_ID?: string; | ||
| 71 | FIRST_PARTY_SLACK_CLIENT_SECRET?: string; | ||
| 70 | 72 | ||
| 71 | // Billing | 73 | // Billing |
| 72 | AUTUMN_SECRET_KEY?: string; | 74 | AUTUMN_SECRET_KEY?: string; |