@zackbart/connecta 0.28.0 → 0.28.1
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/CHANGELOG.md +173 -0
- package/README.md +8 -5
- package/dist/artifacts/connector.js +1 -1
- package/dist/auth/downstream-oauth.js +147 -28
- package/dist/auth/static-oauth.js +504 -0
- package/dist/connectors/api-connector.d.ts +168 -0
- package/dist/connectors/api-connector.js +127 -0
- package/dist/connectors/api.d.ts +8 -71
- package/dist/connectors/api.js +10 -99
- package/dist/connectors/guarded-fetch.js +37 -3
- package/dist/connectors/remote-mcp.js +7 -32
- package/dist/index.d.ts +1 -1
- package/dist/oauth-partition.js +17 -0
- package/dist/providers/basecamp.d.ts +65 -0
- package/dist/providers/basecamp.js +445 -0
- package/dist/providers/breeze.d.ts +34 -0
- package/dist/providers/breeze.js +1402 -0
- package/dist/providers/ccb.d.ts +103 -0
- package/dist/providers/ccb.js +1570 -0
- package/dist/providers/cloudflare.js +1 -1
- package/dist/providers/linear.js +1 -1
- package/dist/providers/mixpanel.js +1 -1
- package/dist/providers/notion.js +1 -1
- package/dist/providers/overflow.d.ts +60 -0
- package/dist/providers/overflow.js +1572 -0
- package/dist/providers/planning-center.d.ts +59 -0
- package/dist/providers/planning-center.js +2039 -0
- package/dist/providers/revenuecat.js +1 -1
- package/dist/providers/stripe.js +1 -1
- package/dist/providers/tithely.d.ts +49 -0
- package/dist/providers/tithely.js +1034 -0
- package/dist/providers/vercel.js +1 -1
- package/dist/routes/oauth.js +29 -3
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/documentation/architecture.md +5 -3
- package/documentation/auth.md +120 -6
- package/ethos.md +3 -3
- package/package.json +25 -1
- package/templates/node/package.json +1 -1
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* alone keep this provider Workers-clean. `test/package-surface.test.ts` pins
|
|
10
10
|
* it: no `cloudflare` package in any dependency field, every import relative.
|
|
11
11
|
*/
|
|
12
|
-
import { api, defined } from "../connectors/api.js";
|
|
12
|
+
import { apiConnector as api, defined } from "../connectors/api-connector.js";
|
|
13
13
|
import { remoteMcp, withCredentialDefaults, } from "../connectors/remote-mcp.js";
|
|
14
14
|
import { vettedCatalog, withVettedCatalog } from "../catalog-drift.js";
|
|
15
15
|
import { guardedFetch, retryAfterMs, } from "../connectors/guarded-fetch.js";
|
package/dist/providers/linear.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { remoteMcp, withCredentialDefaults, } from "../connectors/remote-mcp.js";
|
|
2
2
|
import { vettedCatalog, withVettedCatalog } from "../catalog-drift.js";
|
|
3
|
-
import { defined } from "../connectors/api.js";
|
|
3
|
+
import { defined } from "../connectors/api-connector.js";
|
|
4
4
|
/**
|
|
5
5
|
* Linear publishes two hosted endpoints. `read-only` is not a client-side
|
|
6
6
|
* filter: it advertises the `read` scope alone, so the token minted for it
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { remoteMcp, withCredentialDefaults, } from "../connectors/remote-mcp.js";
|
|
2
2
|
import { vettedCatalog, withVettedCatalog } from "../catalog-drift.js";
|
|
3
|
-
import { defined } from "../connectors/api.js";
|
|
3
|
+
import { defined } from "../connectors/api-connector.js";
|
|
4
4
|
export const MIXPANEL_MCP_ENDPOINTS = {
|
|
5
5
|
us: "https://mcp.mixpanel.com/mcp",
|
|
6
6
|
eu: "https://mcp-eu.mixpanel.com/mcp",
|
package/dist/providers/notion.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { api, defined } from "../connectors/api.js";
|
|
1
|
+
import { apiConnector as api, defined } from "../connectors/api-connector.js";
|
|
2
2
|
import { remoteMcp } from "../connectors/remote-mcp.js";
|
|
3
3
|
import { vettedCatalog, withVettedCatalog } from "../catalog-drift.js";
|
|
4
4
|
import { guardedFetch, retryAfterMs, } from "../connectors/guarded-fetch.js";
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import type { Connector, ConnectorCallAdmissionPolicy } from "../types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Overflow's two published environments. They are separate deployments with
|
|
4
|
+
* separate credentials: a staging key works only against staging and a
|
|
5
|
+
* production key only against production.
|
|
6
|
+
*/
|
|
7
|
+
export declare const OVERFLOW_API_BASE_URLS: {
|
|
8
|
+
readonly production: "https://server.overflow.co";
|
|
9
|
+
readonly staging: "https://server.stage.overflow.co";
|
|
10
|
+
};
|
|
11
|
+
/** Which Overflow environment a connection talks to. */
|
|
12
|
+
export type OverflowEnvironment = keyof typeof OVERFLOW_API_BASE_URLS;
|
|
13
|
+
/** Options for the maintained Overflow connection. */
|
|
14
|
+
export interface OverflowOptions {
|
|
15
|
+
/**
|
|
16
|
+
* Required, with no default. Production is live donor data and real money;
|
|
17
|
+
* staging is a separate sandbox with its own credentials. Neither is a safe
|
|
18
|
+
* thing to land on by omission — see the constructor for the argument.
|
|
19
|
+
*/
|
|
20
|
+
environment: OverflowEnvironment;
|
|
21
|
+
/** Which nonprofit this connection reaches, and for whom. */
|
|
22
|
+
purpose: string;
|
|
23
|
+
/** Human-readable display name; defaults name the environment. */
|
|
24
|
+
title?: string;
|
|
25
|
+
/** Nonprofit-specific conventions appended to the maintained guide. */
|
|
26
|
+
instructions?: string;
|
|
27
|
+
/** Downstream auth ownership. Defaults to one shared deployment grant. */
|
|
28
|
+
authScope?: "shared" | "personal";
|
|
29
|
+
/**
|
|
30
|
+
* Replaces the default per-runtime admission policy, which transcribes
|
|
31
|
+
* Overflow's documented 120 requests per minute per client.
|
|
32
|
+
*/
|
|
33
|
+
callAdmission?: ConnectorCallAdmissionPolicy;
|
|
34
|
+
/** Connector-specific inline result limit; omit to inherit the deployment. */
|
|
35
|
+
maxResultBytes?: number;
|
|
36
|
+
/** Default page size for page-numbered list tools. Defaults to 25; Overflow caps it at 100. */
|
|
37
|
+
defaultPageSize?: number;
|
|
38
|
+
/**
|
|
39
|
+
* API origin override for a proxy or test double. Connecta appends
|
|
40
|
+
* `/api/v3`. The declared `environment` still names what the proxy reaches.
|
|
41
|
+
*/
|
|
42
|
+
baseUrl?: string;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* A maintained Overflow connection.
|
|
46
|
+
*
|
|
47
|
+
* `environment` is required with no default, and the argument runs the other
|
|
48
|
+
* way from a provider whose environment rides the credential. Overflow
|
|
49
|
+
* publishes two base URLs and issues separate credentials for each, so a
|
|
50
|
+
* mismatch fails loudly with a 403 rather than reaching the wrong data — but
|
|
51
|
+
* that is exactly why a default buys nothing. Defaulting to staging, the
|
|
52
|
+
* "safe" side, sends every real deployment to a sandbox where its production
|
|
53
|
+
* key is refused with a generic "Forbidden resource" and no hint that the base
|
|
54
|
+
* URL is the problem. Defaulting to production makes a test deployment that
|
|
55
|
+
* forgot the option one pasted key away from charging real donors through the
|
|
56
|
+
* mutate hatch. The environment is a fact the operator knows and connecta
|
|
57
|
+
* cannot infer — Overflow's keys carry no recognizable environment marker — so
|
|
58
|
+
* the operator states it, and the title and the guide's first line repeat it.
|
|
59
|
+
*/
|
|
60
|
+
export declare function overflow(id: string, options: OverflowOptions): Connector;
|