@every-app/sdk 0.2.0 → 0.3.0-rc.10
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.
- package/LICENSE +21 -0
- package/README.md +609 -3
- package/dist/cloudflare/catalogSettings.generated.d.ts +81 -0
- package/dist/cloudflare/catalogSettings.generated.d.ts.map +1 -0
- package/dist/cloudflare/catalogSettings.generated.js +174 -0
- package/dist/cloudflare/index.d.ts +23 -0
- package/dist/cloudflare/index.d.ts.map +1 -0
- package/dist/cloudflare/index.js +24 -0
- package/dist/cloudflare/sentinel.d.ts +127 -0
- package/dist/cloudflare/sentinel.d.ts.map +1 -0
- package/dist/cloudflare/sentinel.js +85 -0
- package/dist/cloudflare/worker.d.ts +805 -0
- package/dist/cloudflare/worker.d.ts.map +1 -0
- package/dist/cloudflare/worker.js +997 -0
- package/dist/dev/index.d.ts +8 -0
- package/dist/dev/index.d.ts.map +1 -0
- package/dist/dev/index.js +7 -0
- package/dist/dev/keypair.d.ts +26 -0
- package/dist/dev/keypair.d.ts.map +1 -0
- package/dist/dev/keypair.js +62 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/internal/aiDefault.d.ts +204 -0
- package/dist/internal/aiDefault.d.ts.map +1 -0
- package/dist/internal/aiDefault.js +334 -0
- package/dist/internal/aiProviders.d.ts +72 -0
- package/dist/internal/aiProviders.d.ts.map +1 -0
- package/dist/internal/aiProviders.js +233 -0
- package/dist/internal/appSettings.d.ts +315 -0
- package/dist/internal/appSettings.d.ts.map +1 -0
- package/dist/internal/appSettings.js +549 -0
- package/dist/internal/audit.d.ts +108 -0
- package/dist/internal/audit.d.ts.map +1 -0
- package/dist/internal/audit.js +235 -0
- package/dist/internal/capabilities.d.ts +3174 -0
- package/dist/internal/capabilities.d.ts.map +1 -0
- package/dist/internal/capabilities.js +1110 -0
- package/dist/internal/catalog/commerce.d.ts +394 -0
- package/dist/internal/catalog/commerce.d.ts.map +1 -0
- package/dist/internal/catalog/commerce.js +477 -0
- package/dist/internal/catalog/comms.d.ts +375 -0
- package/dist/internal/catalog/comms.d.ts.map +1 -0
- package/dist/internal/catalog/comms.js +520 -0
- package/dist/internal/catalog/index.d.ts +1973 -0
- package/dist/internal/catalog/index.d.ts.map +1 -0
- package/dist/internal/catalog/index.js +19 -0
- package/dist/internal/catalog/inference.d.ts +393 -0
- package/dist/internal/catalog/inference.d.ts.map +1 -0
- package/dist/internal/catalog/inference.js +460 -0
- package/dist/internal/catalog/infra.d.ts +423 -0
- package/dist/internal/catalog/infra.d.ts.map +1 -0
- package/dist/internal/catalog/infra.js +543 -0
- package/dist/internal/catalog/search.d.ts +400 -0
- package/dist/internal/catalog/search.d.ts.map +1 -0
- package/dist/internal/catalog/search.js +463 -0
- package/dist/internal/devProviders.d.ts +49 -0
- package/dist/internal/devProviders.d.ts.map +1 -0
- package/dist/internal/devProviders.js +80 -0
- package/dist/internal/email.d.ts +280 -0
- package/dist/internal/email.d.ts.map +1 -0
- package/dist/internal/email.js +613 -0
- package/dist/internal/events.d.ts +193 -0
- package/dist/internal/events.d.ts.map +1 -0
- package/dist/internal/events.js +367 -0
- package/dist/internal/gatewaySettings.d.ts +83 -0
- package/dist/internal/gatewaySettings.d.ts.map +1 -0
- package/dist/internal/gatewaySettings.js +215 -0
- package/dist/internal/identity.d.ts +57 -5
- package/dist/internal/identity.d.ts.map +1 -1
- package/dist/internal/identity.js +99 -22
- package/dist/internal/index.d.ts +22 -1
- package/dist/internal/index.d.ts.map +1 -1
- package/dist/internal/index.js +22 -1
- package/dist/internal/members.d.ts +36 -0
- package/dist/internal/members.d.ts.map +1 -0
- package/dist/internal/members.js +7 -0
- package/dist/internal/oauthClient.d.ts +61 -0
- package/dist/internal/oauthClient.d.ts.map +1 -0
- package/dist/internal/oauthClient.js +133 -0
- package/dist/internal/oauthPresets.d.ts +33 -0
- package/dist/internal/oauthPresets.d.ts.map +1 -0
- package/dist/internal/oauthPresets.js +1064 -0
- package/dist/internal/oauthScopes.d.ts +172 -0
- package/dist/internal/oauthScopes.d.ts.map +1 -0
- package/dist/internal/oauthScopes.js +510 -0
- package/dist/internal/oauthSpec.d.ts +102 -0
- package/dist/internal/oauthSpec.d.ts.map +1 -0
- package/dist/internal/oauthSpec.js +789 -0
- package/dist/internal/organizationName.d.ts +18 -0
- package/dist/internal/organizationName.d.ts.map +1 -0
- package/dist/internal/organizationName.js +24 -0
- package/dist/internal/protocol.d.ts +150 -3
- package/dist/internal/protocol.d.ts.map +1 -1
- package/dist/internal/protocol.js +163 -2
- package/dist/internal/providerApps.d.ts +75 -0
- package/dist/internal/providerApps.d.ts.map +1 -0
- package/dist/internal/providerApps.js +59 -0
- package/dist/internal/providerRegistry.d.ts +218 -0
- package/dist/internal/providerRegistry.d.ts.map +1 -0
- package/dist/internal/providerRegistry.js +432 -0
- package/dist/internal/providerSpec.d.ts +66 -0
- package/dist/internal/providerSpec.d.ts.map +1 -0
- package/dist/internal/providerSpec.js +1154 -0
- package/dist/internal/remoteMcp.d.ts +188 -0
- package/dist/internal/remoteMcp.d.ts.map +1 -0
- package/dist/internal/remoteMcp.js +543 -0
- package/dist/internal/signInProviders.d.ts +104 -0
- package/dist/internal/signInProviders.d.ts.map +1 -0
- package/dist/internal/signInProviders.js +245 -0
- package/dist/internal/tools.d.ts +115 -0
- package/dist/internal/tools.d.ts.map +1 -0
- package/dist/internal/tools.js +80 -0
- package/dist/manifest.d.ts +238 -0
- package/dist/manifest.d.ts.map +1 -0
- package/dist/manifest.js +30 -0
- package/dist/server/ai.d.ts +111 -0
- package/dist/server/ai.d.ts.map +1 -0
- package/dist/server/ai.js +145 -0
- package/dist/server/aiBinding.d.ts +68 -0
- package/dist/server/aiBinding.d.ts.map +1 -0
- package/dist/server/aiBinding.js +294 -0
- package/dist/server/attribution.d.ts +43 -0
- package/dist/server/attribution.d.ts.map +1 -0
- package/dist/server/attribution.js +75 -0
- package/dist/server/authorizeUrl.d.ts +43 -0
- package/dist/server/authorizeUrl.d.ts.map +1 -0
- package/dist/server/authorizeUrl.js +106 -0
- package/dist/server/connectUrl.d.ts +21 -0
- package/dist/server/connectUrl.d.ts.map +1 -0
- package/dist/server/connectUrl.js +37 -0
- package/dist/server/context.d.ts +68 -0
- package/dist/server/context.d.ts.map +1 -0
- package/dist/server/context.js +117 -0
- package/dist/server/emailBinding.d.ts +72 -0
- package/dist/server/emailBinding.d.ts.map +1 -0
- package/dist/server/emailBinding.js +124 -0
- package/dist/server/emit.d.ts +63 -0
- package/dist/server/emit.d.ts.map +1 -0
- package/dist/server/emit.js +101 -0
- package/dist/server/env.d.ts +44 -0
- package/dist/server/env.d.ts.map +1 -0
- package/dist/server/env.js +1 -0
- package/dist/server/everyApp.d.ts +65 -19
- package/dist/server/everyApp.d.ts.map +1 -1
- package/dist/server/everyApp.js +195 -30
- package/dist/server/fromMcpTools.d.ts +89 -0
- package/dist/server/fromMcpTools.d.ts.map +1 -0
- package/dist/server/fromMcpTools.js +192 -0
- package/dist/server/gatewayFetch.d.ts +54 -14
- package/dist/server/gatewayFetch.d.ts.map +1 -1
- package/dist/server/gatewayFetch.js +201 -37
- package/dist/server/gatewayUrl.d.ts +13 -0
- package/dist/server/gatewayUrl.d.ts.map +1 -0
- package/dist/server/gatewayUrl.js +34 -0
- package/dist/server/index.d.ts +23 -3
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +19 -2
- package/dist/server/integrationFetch.d.ts +162 -0
- package/dist/server/integrationFetch.d.ts.map +1 -0
- package/dist/server/integrationFetch.js +688 -0
- package/dist/server/listMembers.d.ts +32 -0
- package/dist/server/listMembers.d.ts.map +1 -0
- package/dist/server/listMembers.js +71 -0
- package/dist/server/nodeServer.d.ts +48 -0
- package/dist/server/nodeServer.d.ts.map +1 -0
- package/dist/server/nodeServer.js +45 -0
- package/dist/server/refusal.d.ts +55 -0
- package/dist/server/refusal.d.ts.map +1 -0
- package/dist/server/refusal.js +193 -0
- package/dist/server/sendEmail.d.ts +39 -0
- package/dist/server/sendEmail.d.ts.map +1 -0
- package/dist/server/sendEmail.js +114 -0
- package/dist/server/tools.d.ts +184 -0
- package/dist/server/tools.d.ts.map +1 -0
- package/dist/server/tools.js +347 -0
- package/dist/server/toolsEndpoint.d.ts +32 -0
- package/dist/server/toolsEndpoint.d.ts.map +1 -0
- package/dist/server/toolsEndpoint.js +237 -0
- package/dist/tanstack-start/index.d.ts +9 -0
- package/dist/tanstack-start/index.d.ts.map +1 -0
- package/dist/tanstack-start/index.js +29 -0
- package/dist/testing/index.d.ts +93 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +156 -0
- package/package.json +42 -8
- package/dist/server/mcp.d.ts +0 -66
- package/dist/server/mcp.d.ts.map +0 -1
- package/dist/server/mcp.js +0 -147
package/dist/server/index.js
CHANGED
|
@@ -3,6 +3,23 @@
|
|
|
3
3
|
*
|
|
4
4
|
* There is intentionally no client-side export.
|
|
5
5
|
*/
|
|
6
|
-
export { ConfigurationError, IdentityError, everyApp, getEveryAppUser, hasScope, requireEveryAppUser, } from "./everyApp.js";
|
|
6
|
+
export { ConfigurationError, IdentityError, everyApp, getEveryAppUser, hasScope, isAdmin, requireCurrentUser, requireEveryAppUser, } from "./everyApp.js";
|
|
7
|
+
export { OrganizationMismatchError, RequestContextError, currentUser, withOrganization, } from "./context.js";
|
|
8
|
+
export { AttributionError } from "./attribution.js";
|
|
9
|
+
export { gatewayUrl } from "./gatewayUrl.js";
|
|
10
|
+
/** The header a Gateway refusal carries its code in; `gatewayRefusal()` reads the rest. */
|
|
11
|
+
export { GATEWAY_ERROR_HEADER } from "../internal/protocol.js";
|
|
12
|
+
export { authorizeUrl } from "./authorizeUrl.js";
|
|
13
|
+
export { connectPath, connectUrl, } from "./connectUrl.js";
|
|
7
14
|
export { createGatewayFetch, } from "./gatewayFetch.js";
|
|
8
|
-
export {
|
|
15
|
+
export { ai, aiBaseUrl, aiStatus, providerBaseUrl, AI_DEFAULT_BASE_URL, } from "./ai.js";
|
|
16
|
+
export { AI_NOT_CONFIGURED_CODES, GatewayRefusalError, gatewayRefusal, isAiNotConfigured, refusalFromError, } from "./refusal.js";
|
|
17
|
+
export { devAccessTokenName, integrationFetch, integrationStatus, } from "./integrationFetch.js";
|
|
18
|
+
export { nodeServerHandler, } from "./nodeServer.js";
|
|
19
|
+
export { sendEmail } from "./sendEmail.js";
|
|
20
|
+
export { gatewayAiBinding } from "./aiBinding.js";
|
|
21
|
+
export { gatewayEmailBinding, } from "./emailBinding.js";
|
|
22
|
+
export { listMembers } from "./listMembers.js";
|
|
23
|
+
export { emit } from "./emit.js";
|
|
24
|
+
export { ToolError, defineTools, toolResult, } from "./tools.js";
|
|
25
|
+
export { fromMcpTools, } from "./fromMcpTools.js";
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
import { type ApiKeyCapabilityId, type CapabilityId, type ConnectionAccount, type EmailCapabilityStatus, type OAuthClientCapabilityId } from "../internal/index.js";
|
|
2
|
+
import { type GatewayCallFor } from "./attribution.js";
|
|
3
|
+
import type { SetupInfo } from "./refusal.js";
|
|
4
|
+
export interface IntegrationFetchOptions {
|
|
5
|
+
/**
|
|
6
|
+
* The Worker env: the EVERY_APP_GATEWAY binding when deployed, or in local
|
|
7
|
+
* dev EVERYAPP_DEV and the provider's key (e.g. DATAFORSEO_API_KEY in
|
|
8
|
+
* `.dev.vars`).
|
|
9
|
+
*/
|
|
10
|
+
env: object;
|
|
11
|
+
/**
|
|
12
|
+
* A provider the app lists in its manifest's `capabilities`: one whose
|
|
13
|
+
* key the gateway holds, or one whose OAuth client it holds (its token
|
|
14
|
+
* endpoints only). The built-in catalog's ids complete; a provider
|
|
15
|
+
* registered on the gateway (`everyapp provider add`) is any other id,
|
|
16
|
+
* reached through the binding, which checks it. The `email` capability
|
|
17
|
+
* is sent with `sendEmail()` instead.
|
|
18
|
+
*/
|
|
19
|
+
provider: ApiKeyCapabilityId | OAuthClientCapabilityId | (string & {});
|
|
20
|
+
/**
|
|
21
|
+
* Whom the call is for. Left out, the request `everyApp()` is serving
|
|
22
|
+
* (its user, while the identity is good) or the organization
|
|
23
|
+
* `withOrganization()` named; outside both, `RequestContextError`.
|
|
24
|
+
* Explicitly: the inbound request, or `{ background: true,
|
|
25
|
+
* organizationId }` for work no person started (crons, Workflows,
|
|
26
|
+
* queues). A shared app's Worker must end up with one or the other
|
|
27
|
+
* ({@link AttributionError}).
|
|
28
|
+
*/
|
|
29
|
+
for?: GatewayCallFor;
|
|
30
|
+
/**
|
|
31
|
+
* For an OAuth provider the gateway holds connections for: whose
|
|
32
|
+
* connection the call uses, the person's (`user`, the default when a
|
|
33
|
+
* person is behind the call) or the organization's (`organization`,
|
|
34
|
+
* the default for background work). Sent as `x-everyapp-account`.
|
|
35
|
+
*/
|
|
36
|
+
account?: ConnectionAccount;
|
|
37
|
+
/**
|
|
38
|
+
* `true`: answer null instead of throwing `ConfigurationError` when the
|
|
39
|
+
* provider is unavailable (no binding, and in local dev not its
|
|
40
|
+
* settings in `.dev.vars`), so a feature that can do without it checks
|
|
41
|
+
* for null. A wrong provider id, a binding that isn't one, and an
|
|
42
|
+
* attribution mistake still throw.
|
|
43
|
+
*/
|
|
44
|
+
optional?: boolean;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* A `fetch` for one of the gateway's capabilities. Call the provider's real
|
|
48
|
+
* URLs (`https://api.dataforseo.com/v3/…`); this sends them over the
|
|
49
|
+
* AppGateway binding, which checks the app's manifest lists the capability,
|
|
50
|
+
* injects the key the gateway holds and forwards the call. The app never
|
|
51
|
+
* sees the key. A refusal the gateway makes itself comes back as a response
|
|
52
|
+
* {@link gatewayRefusal} recognizes; anything else is the provider's answer.
|
|
53
|
+
*
|
|
54
|
+
* For an OAuth client (`google-workspace`, `slack`, ...) it reaches the
|
|
55
|
+
* provider's token endpoints only, and the gateway puts its client on the
|
|
56
|
+
* request: send the code (or refresh token) without `client_id` or
|
|
57
|
+
* `client_secret`. Build the authorize URL with {@link authorizeUrl} from
|
|
58
|
+
* {@link integrationStatus}, and call the provider's API with the user's
|
|
59
|
+
* token directly.
|
|
60
|
+
*
|
|
61
|
+
* In local dev only, with no binding, the developer's own key or client
|
|
62
|
+
* from `.dev.vars` reaches the provider directly, under the gateway's names:
|
|
63
|
+
* a catalog provider's from the catalog, a provider registered on the
|
|
64
|
+
* gateway from its spec in `.everyapp/providers/<id>.json` (`everyapp
|
|
65
|
+
* provider show <id> --save` writes it), put on the call as the gateway's
|
|
66
|
+
* spec says.
|
|
67
|
+
*/
|
|
68
|
+
export declare function integrationFetch(options: IntegrationFetchOptions & {
|
|
69
|
+
optional: true;
|
|
70
|
+
}): typeof fetch | null;
|
|
71
|
+
export declare function integrationFetch(options: IntegrationFetchOptions): typeof fetch;
|
|
72
|
+
/**
|
|
73
|
+
* The `.dev.vars` name of a held token for `provider` in local dev
|
|
74
|
+
* (`GOOGLE_WORKSPACE_ACCESS_TOKEN`, `GITHUB_ACCESS_TOKEN`): a token the
|
|
75
|
+
* developer obtained themselves, standing in for the connection the
|
|
76
|
+
* gateway would hold. Dev-only: the gateway never reads it.
|
|
77
|
+
*/
|
|
78
|
+
export declare function devAccessTokenName(provider: string): string;
|
|
79
|
+
export interface IntegrationStatus extends SetupInfo {
|
|
80
|
+
/** The app's manifest lists the capability. */
|
|
81
|
+
requested: boolean;
|
|
82
|
+
/** The gateway holds a key for it (in local dev: `.dev.vars` sets one). */
|
|
83
|
+
configured: boolean;
|
|
84
|
+
/** Calls would go through. */
|
|
85
|
+
ready: boolean;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* The email capability's status: as {@link IntegrationStatus}, plus the
|
|
89
|
+
* From a message without `from` gets, the `from` patterns the gateway
|
|
90
|
+
* accepts from this app (its installation's senders, `everyapp email set
|
|
91
|
+
* --sender`) and the provider mail goes out with (`cloudflare` or `resend`).
|
|
92
|
+
*/
|
|
93
|
+
export type EmailIntegrationStatus = IntegrationStatus & Pick<EmailCapabilityStatus, "sender" | "senders" | "provider">;
|
|
94
|
+
/**
|
|
95
|
+
* An OAuth client's status: as {@link IntegrationStatus}, plus what the app
|
|
96
|
+
* needs to send people to the provider's authorize page, present only when
|
|
97
|
+
* the app lists the capability and the gateway holds the client.
|
|
98
|
+
*/
|
|
99
|
+
export interface OAuthClientIntegrationStatus extends IntegrationStatus {
|
|
100
|
+
/** The client's public id, for the authorize URL. */
|
|
101
|
+
clientId?: string;
|
|
102
|
+
/**
|
|
103
|
+
* For a client with scope sets (`google-workspace`, `microsoft-365`): the
|
|
104
|
+
* set names the app's manifest entry declares, `[]` when the entry voids
|
|
105
|
+
* its grant (no `scopes`, or a set this gateway doesn't offer), in which
|
|
106
|
+
* case `ready` is false and no token call can complete.
|
|
107
|
+
*/
|
|
108
|
+
scopeSets?: readonly string[];
|
|
109
|
+
/**
|
|
110
|
+
* The provider's scope strings those sets ask for, in the provider's
|
|
111
|
+
* spelling and the registry's order, for the authorize URL
|
|
112
|
+
* ({@link authorizeUrl} puts them on). The gateway refuses a token that
|
|
113
|
+
* carries more.
|
|
114
|
+
*/
|
|
115
|
+
scopes?: readonly string[];
|
|
116
|
+
/** Slack's `user_scope` strings, when the sets name any. */
|
|
117
|
+
userScopes?: readonly string[];
|
|
118
|
+
/**
|
|
119
|
+
* Which flows the client supports: `app` (the app runs authorize and
|
|
120
|
+
* callback itself and keeps the tokens, the social networks), `gateway`
|
|
121
|
+
* (the Gateway holds the connection; API calls go through
|
|
122
|
+
* `integrationFetch` with the token injected) or `both` (Google,
|
|
123
|
+
* Microsoft, Slack, Discord and every registered OAuth provider).
|
|
124
|
+
*/
|
|
125
|
+
flow?: "app" | "gateway" | "both";
|
|
126
|
+
/** Where a person connects on the Gateway: `/connect/<id>`; see `connectUrl()`. */
|
|
127
|
+
connectPath?: string;
|
|
128
|
+
/**
|
|
129
|
+
* The connection the caller's account would use (the person's, or the
|
|
130
|
+
* organization's for background work), or null when there is none yet;
|
|
131
|
+
* `reconnect` when it exists but lacks a set the app declares or has
|
|
132
|
+
* expired, so the person has to connect again.
|
|
133
|
+
*/
|
|
134
|
+
connection?: {
|
|
135
|
+
account: ConnectionAccount;
|
|
136
|
+
label: string | null;
|
|
137
|
+
scopeSets: readonly string[];
|
|
138
|
+
ready: boolean;
|
|
139
|
+
reconnect?: boolean;
|
|
140
|
+
} | null;
|
|
141
|
+
}
|
|
142
|
+
/** The status of a capability: email's carries its senders, an OAuth client's its id. */
|
|
143
|
+
export type IntegrationStatusOf<P extends string> = P extends "email" ? EmailIntegrationStatus : P extends OAuthClientCapabilityId ? OAuthClientIntegrationStatus : IntegrationStatus;
|
|
144
|
+
/**
|
|
145
|
+
* Whether the app can use an integration right now, without calling the
|
|
146
|
+
* provider: show "an admin needs to set up DataForSEO" (or "sending isn't
|
|
147
|
+
* set up") up front instead of failing mid-task. An OAuth client's status
|
|
148
|
+
* carries its public `clientId` for the authorize URL.
|
|
149
|
+
*/
|
|
150
|
+
export declare function integrationStatus<P extends CapabilityId | (string & {})>({ env, provider, for: explicitTarget, }: {
|
|
151
|
+
env: object;
|
|
152
|
+
provider: P;
|
|
153
|
+
/**
|
|
154
|
+
* Whom the status is for: the request being served (its person), so an
|
|
155
|
+
* OAuth provider's `connection` is that person's; background work
|
|
156
|
+
* (`withOrganization()`) its organization, whose own connection is then
|
|
157
|
+
* reported. Explicitly the inbound request or `{ background: true,
|
|
158
|
+
* organizationId }`, as on every call.
|
|
159
|
+
*/
|
|
160
|
+
for?: GatewayCallFor;
|
|
161
|
+
}): Promise<IntegrationStatusOf<P>>;
|
|
162
|
+
//# sourceMappingURL=integrationFetch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"integrationFetch.d.ts","sourceRoot":"","sources":["../../src/server/integrationFetch.ts"],"names":[],"mappings":"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"}
|