@every-app/sdk 0.3.0-rc.2 → 0.3.0-rc.3
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/dist/cloudflare/index.d.ts +2 -2
- package/dist/cloudflare/index.d.ts.map +1 -1
- package/dist/cloudflare/index.js +1 -1
- package/dist/cloudflare/sentinel.d.ts +39 -1
- package/dist/cloudflare/sentinel.d.ts.map +1 -1
- package/dist/cloudflare/sentinel.js +22 -1
- package/dist/cloudflare/worker.d.ts +119 -2
- package/dist/cloudflare/worker.d.ts.map +1 -1
- package/dist/cloudflare/worker.js +90 -6
- package/dist/internal/aiDefault.d.ts +141 -0
- package/dist/internal/aiDefault.d.ts.map +1 -0
- package/dist/internal/aiDefault.js +204 -0
- package/dist/internal/aiProviders.d.ts +4 -1
- package/dist/internal/aiProviders.d.ts.map +1 -1
- package/dist/internal/aiProviders.js +5 -1
- package/dist/internal/appSettings.d.ts +20 -2
- package/dist/internal/appSettings.d.ts.map +1 -1
- package/dist/internal/appSettings.js +53 -7
- 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 +275 -6
- package/dist/internal/capabilities.d.ts.map +1 -1
- package/dist/internal/capabilities.js +111 -0
- package/dist/internal/catalog/index.d.ts +38 -1
- package/dist/internal/catalog/index.d.ts.map +1 -1
- package/dist/internal/catalog/inference.d.ts +38 -1
- package/dist/internal/catalog/inference.d.ts.map +1 -1
- package/dist/internal/catalog/inference.js +33 -1
- package/dist/internal/devProviders.d.ts +2 -2
- package/dist/internal/devProviders.d.ts.map +1 -1
- package/dist/internal/devProviders.js +19 -1
- package/dist/internal/events.d.ts +13 -2
- package/dist/internal/events.d.ts.map +1 -1
- package/dist/internal/events.js +19 -3
- package/dist/internal/index.d.ts +4 -0
- package/dist/internal/index.d.ts.map +1 -1
- package/dist/internal/index.js +4 -0
- package/dist/internal/oauthPresets.d.ts +29 -0
- package/dist/internal/oauthPresets.d.ts.map +1 -0
- package/dist/internal/oauthPresets.js +534 -0
- package/dist/internal/oauthScopes.d.ts +56 -1
- package/dist/internal/oauthScopes.d.ts.map +1 -1
- package/dist/internal/oauthScopes.js +98 -4
- package/dist/internal/oauthSpec.d.ts +59 -0
- package/dist/internal/oauthSpec.d.ts.map +1 -0
- package/dist/internal/oauthSpec.js +676 -0
- package/dist/internal/protocol.d.ts +11 -0
- package/dist/internal/protocol.d.ts.map +1 -1
- package/dist/internal/protocol.js +9 -0
- package/dist/internal/providerRegistry.d.ts +17 -6
- package/dist/internal/providerRegistry.d.ts.map +1 -1
- package/dist/internal/providerRegistry.js +47 -2
- package/dist/internal/providerSpec.d.ts +11 -7
- package/dist/internal/providerSpec.d.ts.map +1 -1
- package/dist/internal/providerSpec.js +134 -37
- package/dist/internal/signInProviders.d.ts.map +1 -1
- package/dist/internal/signInProviders.js +11 -4
- package/dist/server/ai.d.ts +45 -0
- package/dist/server/ai.d.ts.map +1 -0
- package/dist/server/ai.js +40 -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/gatewayFetch.d.ts.map +1 -1
- package/dist/server/gatewayFetch.js +72 -8
- package/dist/server/index.d.ts +4 -2
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +3 -1
- package/dist/server/integrationFetch.d.ts +39 -2
- package/dist/server/integrationFetch.d.ts.map +1 -1
- package/dist/server/integrationFetch.js +177 -13
- package/package.json +1 -1
|
@@ -17,6 +17,6 @@
|
|
|
17
17
|
* `/internal` would break `cf dev` wherever the SDK is linked from source.
|
|
18
18
|
* (The dev keypair it hands the dev Worker is a leaf the Worker never loads.)
|
|
19
19
|
*/
|
|
20
|
-
export { EVERYAPP_OBSERVABILITY, everyAppAuxiliaryWorker, everyAppWorker, helperWorkerName, localD1Id, localD1Path, workflowNameFor, type AiBinding, type D1Binding, type DurableObjectBinding, type DurableObjectExport, type EveryAppAuxiliaryWorkerConfig, type EveryAppAuxiliaryWorkerOptions, type EveryAppBinding, type EveryAppConfigContext, type EveryAppDeployEnv, type EveryAppDevEnv, type EveryAppExports, type EveryAppObservability, type EveryAppPlacement, type EveryAppWorkerConfig, type EveryAppWorkerManifest, type EveryAppWorkerOptions, type EveryAppWorkerReference, type GatewayBinding, type HyperdriveBinding, type KvBinding, type SecretBinding, type ServiceBinding, type TextBinding, type VersionMetadataBinding, type WorkflowBinding, type WorkflowExport, } from "./worker.js";
|
|
21
|
-
export { BUILD_SENTINEL, resourceSentinel, sentinelDeployTarget, type EveryAppDeployTarget, } from "./sentinel.js";
|
|
20
|
+
export { EVERYAPP_OBSERVABILITY, everyAppAuxiliaryWorker, everyAppWorker, helperWorkerName, localD1Id, localD1Path, workflowNameFor, type AiBinding, type BrowserBinding, type AiGatewayBinding, type D1Binding, type DurableObjectBinding, type DurableObjectExport, type EveryAppAuxiliaryWorkerConfig, type EveryAppAuxiliaryWorkerOptions, type EveryAppBinding, type EveryAppConfigContext, type EveryAppDeployEnv, type EveryAppDevEnv, type EveryAppExports, type EveryAppObservability, type EveryAppPlacement, type EveryAppWorkerConfig, type EveryAppWorkerManifest, type EveryAppWorkerOptions, type EveryAppWorkerReference, type GatewayBinding, type HyperdriveBinding, type ImagesBinding, type JsonBinding, type KvBinding, type SecretBinding, type ServiceBinding, type TextBinding, type VectorizeBinding, type VersionMetadataBinding, type WorkflowBinding, type WorkflowExport, } from "./worker.js";
|
|
21
|
+
export { aiGatewayUrl, BUILD_SENTINEL, resourceSentinel, sentinelDeployTarget, type AiGatewayValue, type EveryAppDeployTarget, } from "./sentinel.js";
|
|
22
22
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cloudflare/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,cAAc,EACd,gBAAgB,EAChB,SAAS,EACT,WAAW,EACX,eAAe,EACf,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,6BAA6B,EAClC,KAAK,8BAA8B,EACnC,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAC3B,KAAK,eAAe,EACpB,KAAK,cAAc,GACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,oBAAoB,GAC1B,MAAM,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cloudflare/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,cAAc,EACd,gBAAgB,EAChB,SAAS,EACT,WAAW,EACX,eAAe,EACf,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,6BAA6B,EAClC,KAAK,8BAA8B,EACnC,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,eAAe,EACpB,KAAK,cAAc,GACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,cAAc,EACnB,KAAK,oBAAoB,GAC1B,MAAM,eAAe,CAAC"}
|
package/dist/cloudflare/index.js
CHANGED
|
@@ -18,4 +18,4 @@
|
|
|
18
18
|
* (The dev keypair it hands the dev Worker is a leaf the Worker never loads.)
|
|
19
19
|
*/
|
|
20
20
|
export { EVERYAPP_OBSERVABILITY, everyAppAuxiliaryWorker, everyAppWorker, helperWorkerName, localD1Id, localD1Path, workflowNameFor, } from "./worker.js";
|
|
21
|
-
export { BUILD_SENTINEL, resourceSentinel, sentinelDeployTarget, } from "./sentinel.js";
|
|
21
|
+
export { aiGatewayUrl, BUILD_SENTINEL, resourceSentinel, sentinelDeployTarget, } from "./sentinel.js";
|
|
@@ -14,14 +14,24 @@
|
|
|
14
14
|
export declare const BUILD_SENTINEL: Readonly<{
|
|
15
15
|
workerName: "every-hosted--sentinel";
|
|
16
16
|
organizationId: "everyapp-hosted-deploy-sentinel";
|
|
17
|
+
/**
|
|
18
|
+
* The Cloudflare account the app is installed in (an AI Gateway's URL
|
|
19
|
+
* holds it). Starts with the Worker name's placeholder, so an install
|
|
20
|
+
* rewrites it before that one.
|
|
21
|
+
*/
|
|
22
|
+
accountId: "every-hosted--sentinel-account";
|
|
17
23
|
/** The gateway's URL, and so the identity issuer. */
|
|
18
24
|
gatewayUrl: "https://every-hosted--sentinel.invalid";
|
|
19
25
|
publicKey: "-----BEGIN PUBLIC KEY-----\nEVERYAPPHOSTEDDEPLOYSENTINEL\n-----END PUBLIC KEY-----\n";
|
|
20
26
|
}>;
|
|
21
27
|
/**
|
|
22
28
|
* A manifest binding's placeholder: a D1 database's name and id, an R2
|
|
23
|
-
* bucket's name, a KV namespace's or Hyperdrive
|
|
29
|
+
* bucket's or Vectorize index's name, a KV namespace's or Hyperdrive
|
|
30
|
+
* config's id. The installer
|
|
24
31
|
* rewrites each by its binding name; the value only has to be recognizable.
|
|
32
|
+
* bucket's name, a KV namespace's, Hyperdrive config's or AI Gateway's id.
|
|
33
|
+
* The installer rewrites each by its binding name; the value only has to
|
|
34
|
+
* be recognizable.
|
|
25
35
|
*/
|
|
26
36
|
export declare function resourceSentinel(binding: string): string;
|
|
27
37
|
/** The fields of the manifest a build's placeholders are made for. */
|
|
@@ -33,14 +43,36 @@ interface SentinelManifest {
|
|
|
33
43
|
hyperdrive?: readonly {
|
|
34
44
|
readonly name: string;
|
|
35
45
|
}[];
|
|
46
|
+
vectorize?: readonly {
|
|
47
|
+
readonly name: string;
|
|
48
|
+
}[];
|
|
49
|
+
aiGateway?: readonly {
|
|
50
|
+
readonly name: string;
|
|
51
|
+
}[];
|
|
36
52
|
};
|
|
37
53
|
}
|
|
54
|
+
/** Where an AI Gateway takes requests: `https://gateway.ai.cloudflare.com/v1/<account>/<id>`. */
|
|
55
|
+
export declare function aiGatewayUrl(accountId: string, id: string): string;
|
|
56
|
+
/**
|
|
57
|
+
* What an AI Gateway binding holds (a `json` binding): the gateway's id,
|
|
58
|
+
* its account, and its URL, under which each provider has a path
|
|
59
|
+
* (`<url>/openai`, `<url>/anthropic`, `<url>/workers-ai`, `<url>/compat`).
|
|
60
|
+
* In development `accountId` and `url` are empty: there is no gateway, so
|
|
61
|
+
* an app calls the provider directly.
|
|
62
|
+
*/
|
|
63
|
+
export type AiGatewayValue = {
|
|
64
|
+
id: string;
|
|
65
|
+
accountId: string;
|
|
66
|
+
url: string;
|
|
67
|
+
};
|
|
38
68
|
/** Everything install-specific a Worker is built from, by binding. */
|
|
39
69
|
export interface EveryAppDeployTarget {
|
|
40
70
|
/** The Worker name the gateway registry assigned to this app. */
|
|
41
71
|
workerName: string;
|
|
42
72
|
/** The organization that owns the app; scopes the AppGateway binding. */
|
|
43
73
|
organizationId: string;
|
|
74
|
+
/** The Cloudflare account the app is installed in. */
|
|
75
|
+
accountId: string;
|
|
44
76
|
/** The gateway's URL, which is also the identity tokens' issuer. */
|
|
45
77
|
gatewayUrl: string;
|
|
46
78
|
/** SPKI PEM public keys (current + next) that verify identity tokens. */
|
|
@@ -61,6 +93,12 @@ export interface EveryAppDeployTarget {
|
|
|
61
93
|
r2?: Record<string, {
|
|
62
94
|
name: string;
|
|
63
95
|
}>;
|
|
96
|
+
/** Vectorize indexes by binding, under the names the deploy provisioned. */
|
|
97
|
+
vectorize?: Record<string, {
|
|
98
|
+
name: string;
|
|
99
|
+
}>;
|
|
100
|
+
/** AI Gateways by binding: each binding's whole value. */
|
|
101
|
+
aiGateway?: Record<string, AiGatewayValue>;
|
|
64
102
|
};
|
|
65
103
|
}
|
|
66
104
|
/** The target every production build is made for: placeholders throughout. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sentinel.d.ts","sourceRoot":"","sources":["../../src/cloudflare/sentinel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,eAAO,MAAM,cAAc;;;IAKzB,qDAAqD;;;EAIrD,CAAC;AAEH
|
|
1
|
+
{"version":3,"file":"sentinel.d.ts","sourceRoot":"","sources":["../../src/cloudflare/sentinel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,eAAO,MAAM,cAAc;;;IAKzB;;;;OAIG;;IAEH,qDAAqD;;;EAIrD,CAAC;AAEH;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,sEAAsE;AACtE,UAAU,gBAAgB;IACxB,SAAS,CAAC,EAAE;QACV,EAAE,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QACvB,EAAE,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QACvB,EAAE,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QACvB,UAAU,CAAC,EAAE,SAAS;YAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;QAClD,SAAS,CAAC,EAAE,SAAS;YAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;QACjD,SAAS,CAAC,EAAE,SAAS;YAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;KAClD,CAAC;CACH;AAED,iGAAiG;AACjG,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAElE;AAED;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5E,sEAAsE;AACtE,MAAM,WAAW,oBAAoB;IACnC,iEAAiE;IACjE,UAAU,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,cAAc,EAAE,MAAM,CAAC;IACvB,sDAAsD;IACtD,SAAS,EAAE,MAAM,CAAC;IAClB,oEAAoE;IACpE,UAAU,EAAE,MAAM,CAAC;IACnB,yEAAyE;IACzE,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,4DAA4D;IAC5D,SAAS,EAAE;QACT,EAAE,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAClD,EAAE,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QACpC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC5C,oEAAoE;QACpE,EAAE,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QACtC,4EAA4E;QAC5E,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC7C,0DAA0D;QAC1D,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;KAC5C,CAAC;CACH;AAED,8EAA8E;AAC9E,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,gBAAgB,GACzB,oBAAoB,CAwCtB"}
|
|
@@ -16,18 +16,32 @@ export const BUILD_SENTINEL = Object.freeze({
|
|
|
16
16
|
// and a string rewrite of it can't hit anything else.
|
|
17
17
|
workerName: "every-hosted--sentinel",
|
|
18
18
|
organizationId: "everyapp-hosted-deploy-sentinel",
|
|
19
|
+
/**
|
|
20
|
+
* The Cloudflare account the app is installed in (an AI Gateway's URL
|
|
21
|
+
* holds it). Starts with the Worker name's placeholder, so an install
|
|
22
|
+
* rewrites it before that one.
|
|
23
|
+
*/
|
|
24
|
+
accountId: "every-hosted--sentinel-account",
|
|
19
25
|
/** The gateway's URL, and so the identity issuer. */
|
|
20
26
|
gatewayUrl: "https://every-hosted--sentinel.invalid",
|
|
21
27
|
publicKey: "-----BEGIN PUBLIC KEY-----\nEVERYAPPHOSTEDDEPLOYSENTINEL\n-----END PUBLIC KEY-----\n",
|
|
22
28
|
});
|
|
23
29
|
/**
|
|
24
30
|
* A manifest binding's placeholder: a D1 database's name and id, an R2
|
|
25
|
-
* bucket's name, a KV namespace's or Hyperdrive
|
|
31
|
+
* bucket's or Vectorize index's name, a KV namespace's or Hyperdrive
|
|
32
|
+
* config's id. The installer
|
|
26
33
|
* rewrites each by its binding name; the value only has to be recognizable.
|
|
34
|
+
* bucket's name, a KV namespace's, Hyperdrive config's or AI Gateway's id.
|
|
35
|
+
* The installer rewrites each by its binding name; the value only has to
|
|
36
|
+
* be recognizable.
|
|
27
37
|
*/
|
|
28
38
|
export function resourceSentinel(binding) {
|
|
29
39
|
return `${BUILD_SENTINEL.workerName}--${binding}`;
|
|
30
40
|
}
|
|
41
|
+
/** Where an AI Gateway takes requests: `https://gateway.ai.cloudflare.com/v1/<account>/<id>`. */
|
|
42
|
+
export function aiGatewayUrl(accountId, id) {
|
|
43
|
+
return `https://gateway.ai.cloudflare.com/v1/${accountId}/${id}`;
|
|
44
|
+
}
|
|
31
45
|
/** The target every production build is made for: placeholders throughout. */
|
|
32
46
|
export function sentinelDeployTarget(manifest) {
|
|
33
47
|
const byBinding = (bindings, value) => Object.fromEntries((bindings ?? []).map((binding) => [
|
|
@@ -38,6 +52,7 @@ export function sentinelDeployTarget(manifest) {
|
|
|
38
52
|
return {
|
|
39
53
|
workerName: BUILD_SENTINEL.workerName,
|
|
40
54
|
organizationId: BUILD_SENTINEL.organizationId,
|
|
55
|
+
accountId: BUILD_SENTINEL.accountId,
|
|
41
56
|
gatewayUrl: BUILD_SENTINEL.gatewayUrl,
|
|
42
57
|
identityPublicKeys: [BUILD_SENTINEL.publicKey],
|
|
43
58
|
resources: {
|
|
@@ -45,6 +60,12 @@ export function sentinelDeployTarget(manifest) {
|
|
|
45
60
|
kv: byBinding(resources?.kv, (id) => ({ id })),
|
|
46
61
|
hyperdrive: byBinding(resources?.hyperdrive?.map((config) => config.name), (id) => ({ id })),
|
|
47
62
|
r2: byBinding(resources?.r2, (name) => ({ name })),
|
|
63
|
+
vectorize: byBinding(resources?.vectorize?.map((index) => index.name), (name) => ({ name })),
|
|
64
|
+
aiGateway: byBinding(resources?.aiGateway?.map((gateway) => gateway.name), (id) => ({
|
|
65
|
+
id,
|
|
66
|
+
accountId: BUILD_SENTINEL.accountId,
|
|
67
|
+
url: aiGatewayUrl(BUILD_SENTINEL.accountId, id),
|
|
68
|
+
})),
|
|
48
69
|
},
|
|
49
70
|
};
|
|
50
71
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type AiGatewayValue } from "./sentinel.js";
|
|
1
2
|
/** A Durable Object or Workflow class, and the helper Worker defining it. */
|
|
2
3
|
interface ClassResource {
|
|
3
4
|
readonly name: string;
|
|
@@ -13,6 +14,24 @@ interface HyperdriveResource {
|
|
|
13
14
|
/** Whether Hyperdrive caches its reads (the deploy's concern; "off" by default). */
|
|
14
15
|
readonly caching?: "off" | "default";
|
|
15
16
|
}
|
|
17
|
+
/**
|
|
18
|
+
* A Vectorize index: `dimensions` and `metric`, or a `preset` (the
|
|
19
|
+
* deploy's concern; the Worker only binds it by name).
|
|
20
|
+
*/
|
|
21
|
+
interface VectorizeResource {
|
|
22
|
+
readonly name: string;
|
|
23
|
+
readonly dimensions?: number;
|
|
24
|
+
readonly metric?: string;
|
|
25
|
+
readonly preset?: string;
|
|
26
|
+
}
|
|
27
|
+
/** An AI Gateway of the app's own, which every one of its Workers binds. */
|
|
28
|
+
interface AiGatewayResource {
|
|
29
|
+
readonly name: string;
|
|
30
|
+
/** Whether the gateway logs each request (the deploy's concern; on by default). */
|
|
31
|
+
readonly collectLogs?: boolean;
|
|
32
|
+
/** How long the gateway caches a response, in seconds (the deploy's concern; 0 by default). */
|
|
33
|
+
readonly cacheTtl?: number;
|
|
34
|
+
}
|
|
16
35
|
/** Cloudflare's limits for one of the app's Workers. */
|
|
17
36
|
interface WorkerLimits {
|
|
18
37
|
readonly cpuMs?: number;
|
|
@@ -40,6 +59,30 @@ export interface EveryAppWorkerManifest {
|
|
|
40
59
|
* turns `remoteBindings` on (see {@link AiBinding}).
|
|
41
60
|
*/
|
|
42
61
|
ai?: readonly string[];
|
|
62
|
+
/**
|
|
63
|
+
* Browser Rendering, by binding (`["BROWSER"]`), which every one of the
|
|
64
|
+
* app's Workers binds: nothing to create (Workers Paid). Local in
|
|
65
|
+
* development (see {@link BrowserBinding}).
|
|
66
|
+
*/
|
|
67
|
+
browser?: readonly string[];
|
|
68
|
+
/**
|
|
69
|
+
* Cloudflare Images, by binding (`["IMAGES"]`), which every one of the
|
|
70
|
+
* app's Workers binds: nothing to create. Local in development (see
|
|
71
|
+
* {@link ImagesBinding}).
|
|
72
|
+
*/
|
|
73
|
+
images?: readonly string[];
|
|
74
|
+
/**
|
|
75
|
+
* Vectorize indexes every one of the app's Workers binds, named
|
|
76
|
+
* `<app worker>--<binding>`. Cloudflare has no local Vectorize: in
|
|
77
|
+
* development each binding reaches the account's index (`dev.remote`),
|
|
78
|
+
* once the Vite plugin's `remoteBindings` is on and `cf auth login` ran.
|
|
79
|
+
*/
|
|
80
|
+
vectorize?: readonly VectorizeResource[];
|
|
81
|
+
/**
|
|
82
|
+
* AI Gateways of the app's own, each `<app worker>-<binding>` in the
|
|
83
|
+
* account, bound on every Worker as `{ id, accountId, url }`.
|
|
84
|
+
*/
|
|
85
|
+
aiGateway?: readonly AiGatewayResource[];
|
|
43
86
|
};
|
|
44
87
|
/**
|
|
45
88
|
* Helper Workers deployed beside the app's Worker as
|
|
@@ -148,6 +191,16 @@ export interface HyperdriveBinding {
|
|
|
148
191
|
connectionString?: string;
|
|
149
192
|
};
|
|
150
193
|
}
|
|
194
|
+
/** A JSON value the Worker reads as it is: `env.<NAME>` is `value`. */
|
|
195
|
+
export interface JsonBinding<T = unknown> {
|
|
196
|
+
type: "json";
|
|
197
|
+
value: T;
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* An AI Gateway of the app's own (`resources.aiGateway`): its id, account
|
|
201
|
+
* and URL, which the Worker reads as `env.<NAME>.id` and `env.<NAME>.url`.
|
|
202
|
+
*/
|
|
203
|
+
export type AiGatewayBinding = JsonBinding<AiGatewayValue>;
|
|
151
204
|
/**
|
|
152
205
|
* Workers AI (`env.AI.run()`), which cf types as `Ai`. Deployed, it calls
|
|
153
206
|
* the account's Workers AI. Miniflare has none locally: in development the
|
|
@@ -162,6 +215,37 @@ export interface AiBinding {
|
|
|
162
215
|
remote?: boolean;
|
|
163
216
|
};
|
|
164
217
|
}
|
|
218
|
+
/**
|
|
219
|
+
* Browser Rendering (`env.BROWSER`, for `@cloudflare/puppeteer` or
|
|
220
|
+
* `@cloudflare/playwright`), which cf types as `BrowserRun`. Deployed, it
|
|
221
|
+
* drives a headless Chrome on Cloudflare (Workers Paid). In development
|
|
222
|
+
* the same binding reaches Miniflare's local stand-in: the first session
|
|
223
|
+
* downloads a Chrome into the global `.wrangler` cache and starts it.
|
|
224
|
+
*/
|
|
225
|
+
export interface BrowserBinding {
|
|
226
|
+
type: "browser";
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Cloudflare Images (`env.IMAGES.input(stream).transform(…).output(…)`,
|
|
230
|
+
* `env.IMAGES.info(stream)`), which cf types as the runtime's
|
|
231
|
+
* `ImagesBinding`. Deployed, it runs on Cloudflare and bills the account's
|
|
232
|
+
* Images transformations. In development Miniflare answers it locally with
|
|
233
|
+
* sharp, which ships with it.
|
|
234
|
+
*/
|
|
235
|
+
export interface ImagesBinding {
|
|
236
|
+
type: "images";
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* A Vectorize index, by name. `dev.remote` sends development calls to the
|
|
240
|
+
* account's index: Cloudflare has no local Vectorize.
|
|
241
|
+
*/
|
|
242
|
+
export interface VectorizeBinding {
|
|
243
|
+
type: "vectorize";
|
|
244
|
+
name: string;
|
|
245
|
+
dev?: {
|
|
246
|
+
remote?: boolean;
|
|
247
|
+
};
|
|
248
|
+
}
|
|
165
249
|
/**
|
|
166
250
|
* The app's own Worker, as the bindings of the Durable Objects it defines
|
|
167
251
|
* name it when its entrypoint is a `cf-worker` module import. cf reads each
|
|
@@ -205,7 +289,7 @@ export interface ServiceBinding {
|
|
|
205
289
|
export interface VersionMetadataBinding {
|
|
206
290
|
type: "version-metadata";
|
|
207
291
|
}
|
|
208
|
-
export type EveryAppBinding = TextBinding | SecretBinding | D1Binding | KvBinding | R2Binding | HyperdriveBinding | AiBinding | DurableObjectBinding<string | EveryAppWorkerReference<object>> | WorkflowBinding | GatewayBinding | ServiceBinding | VersionMetadataBinding;
|
|
292
|
+
export type EveryAppBinding = TextBinding | SecretBinding | D1Binding | KvBinding | R2Binding | HyperdriveBinding | AiBinding | BrowserBinding | ImagesBinding | VectorizeBinding | AiGatewayBinding | DurableObjectBinding<string | EveryAppWorkerReference<object>> | WorkflowBinding | GatewayBinding | ServiceBinding | VersionMetadataBinding;
|
|
209
293
|
export interface DurableObjectExport {
|
|
210
294
|
type: "durable-object";
|
|
211
295
|
storage: "sqlite";
|
|
@@ -234,6 +318,30 @@ type AiNames<M> = M extends {
|
|
|
234
318
|
ai: readonly (infer B)[];
|
|
235
319
|
};
|
|
236
320
|
} ? B & string : never;
|
|
321
|
+
type BrowserNames<M> = M extends {
|
|
322
|
+
resources: {
|
|
323
|
+
browser: readonly (infer B)[];
|
|
324
|
+
};
|
|
325
|
+
} ? B & string : never;
|
|
326
|
+
type ImagesNames<M> = M extends {
|
|
327
|
+
resources: {
|
|
328
|
+
images: readonly (infer B)[];
|
|
329
|
+
};
|
|
330
|
+
} ? B & string : never;
|
|
331
|
+
type VectorizeNames<M> = M extends {
|
|
332
|
+
resources: {
|
|
333
|
+
vectorize: readonly (infer V)[];
|
|
334
|
+
};
|
|
335
|
+
} ? V extends {
|
|
336
|
+
name: infer N extends string;
|
|
337
|
+
} ? N : never : never;
|
|
338
|
+
type AiGatewayNames<M> = M extends {
|
|
339
|
+
resources: {
|
|
340
|
+
aiGateway: readonly (infer G)[];
|
|
341
|
+
};
|
|
342
|
+
} ? G extends {
|
|
343
|
+
name: infer N extends string;
|
|
344
|
+
} ? N : never : never;
|
|
237
345
|
type DurableObjects<M> = M extends {
|
|
238
346
|
resources: {
|
|
239
347
|
durableObjects: readonly (infer D)[];
|
|
@@ -382,6 +490,14 @@ type ResourceEnv<M, TEntrypoint> = {
|
|
|
382
490
|
[B in R2Names<M>]: R2Binding;
|
|
383
491
|
} & {
|
|
384
492
|
[B in AiNames<M>]: AiBinding;
|
|
493
|
+
} & {
|
|
494
|
+
[B in BrowserNames<M>]: BrowserBinding;
|
|
495
|
+
} & {
|
|
496
|
+
[B in ImagesNames<M>]: ImagesBinding;
|
|
497
|
+
} & {
|
|
498
|
+
[B in VectorizeNames<M>]: VectorizeBinding;
|
|
499
|
+
} & {
|
|
500
|
+
[B in AiGatewayNames<M>]: AiGatewayBinding;
|
|
385
501
|
} & {
|
|
386
502
|
[D in DurableObjects<M> as D extends {
|
|
387
503
|
name: infer N extends string;
|
|
@@ -550,7 +666,8 @@ export interface EveryAppAuxiliaryWorkerConfig<TEntrypoint> {
|
|
|
550
666
|
* Build the definition of one of the app's helper Workers (the manifest's
|
|
551
667
|
* `workers`), e.g. one that runs a memory-hungry job away from the app's
|
|
552
668
|
* Worker. It is named `<app worker>--<worker>`, is private like the app, and
|
|
553
|
-
* binds the app's D1 databases, KV namespaces, R2 buckets
|
|
669
|
+
* binds the app's D1 databases, KV namespaces, R2 buckets, Workers AI, Browser Rendering and Images, the classes it defines, and
|
|
670
|
+
* binds the app's D1 databases, KV namespaces, R2 buckets, Workers AI, Browser Rendering and Vectorize indexes, the classes it defines, and
|
|
554
671
|
* the gateway (with the app's identity, for capabilities). Only the app's
|
|
555
672
|
* Worker reaches it. Pass it to the Vite plugin:
|
|
556
673
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/cloudflare/worker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/cloudflare/worker.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import fs from "node:fs";
|
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { parseEnv } from "node:util";
|
|
5
5
|
import { DEV_ISSUER, DEV_PUBLIC_KEY_PEM } from "../dev/keypair.js";
|
|
6
|
-
import { sentinelDeployTarget } from "./sentinel.js";
|
|
6
|
+
import { sentinelDeployTarget, } from "./sentinel.js";
|
|
7
7
|
/** The names of the manifest's `secrets`, whichever form each took. */
|
|
8
8
|
function manifestSecretNames(manifest) {
|
|
9
9
|
return (manifest.secrets ?? []).map((entry) => typeof entry === "string" ? entry : entry.name);
|
|
@@ -29,6 +29,8 @@ const DEV_GATEWAY_KEYS = {
|
|
|
29
29
|
openai: ["OPENAI_API_KEY"],
|
|
30
30
|
openrouter: ["OPENROUTER_API_KEY"],
|
|
31
31
|
"workers-ai": ["WORKERS_AI_API_TOKEN", "CLOUDFLARE_ACCOUNT_ID"],
|
|
32
|
+
// Not Cloudflare AI Gateway (the proxy entry): dev goes to the
|
|
33
|
+
// providers directly, so its settings are the Gateway's alone.
|
|
32
34
|
// The AI providers of ../internal/catalog/inference.ts.
|
|
33
35
|
anthropic: ["ANTHROPIC_API_KEY"],
|
|
34
36
|
gemini: ["GEMINI_API_KEY"],
|
|
@@ -254,6 +256,8 @@ function devProviderKeys(manifest, root) {
|
|
|
254
256
|
}
|
|
255
257
|
/** Cloudflare's limit on a Workflow's name. */
|
|
256
258
|
const MAX_WORKFLOW_NAME_LENGTH = 64;
|
|
259
|
+
/** Cloudflare's limit on a Vectorize index's name. */
|
|
260
|
+
const MAX_VECTORIZE_NAME_LENGTH = 64;
|
|
257
261
|
/** Cloudflare's limit on a Worker's name. */
|
|
258
262
|
const MAX_WORKER_NAME_LENGTH = 63;
|
|
259
263
|
/**
|
|
@@ -312,6 +316,9 @@ export function everyAppWorker(options) {
|
|
|
312
316
|
}
|
|
313
317
|
Object.assign(env, storageBindings(manifest, name, deploy));
|
|
314
318
|
addAiBindings(env, manifest, deploy);
|
|
319
|
+
addBrowserBindings(env, manifest);
|
|
320
|
+
addImagesBindings(env, manifest);
|
|
321
|
+
addAiGatewayBindings(env, manifest, name, deploy);
|
|
315
322
|
addDatabaseBindings(env, options, name, undefined, deploy);
|
|
316
323
|
// The app binds every class, a helper Worker's in that Worker, and
|
|
317
324
|
// exports only its own.
|
|
@@ -370,7 +377,8 @@ export function everyAppWorker(options) {
|
|
|
370
377
|
* Build the definition of one of the app's helper Workers (the manifest's
|
|
371
378
|
* `workers`), e.g. one that runs a memory-hungry job away from the app's
|
|
372
379
|
* Worker. It is named `<app worker>--<worker>`, is private like the app, and
|
|
373
|
-
* binds the app's D1 databases, KV namespaces, R2 buckets
|
|
380
|
+
* binds the app's D1 databases, KV namespaces, R2 buckets, Workers AI, Browser Rendering and Images, the classes it defines, and
|
|
381
|
+
* binds the app's D1 databases, KV namespaces, R2 buckets, Workers AI, Browser Rendering and Vectorize indexes, the classes it defines, and
|
|
374
382
|
* the gateway (with the app's identity, for capabilities). Only the app's
|
|
375
383
|
* Worker reaches it. Pass it to the Vite plugin:
|
|
376
384
|
*
|
|
@@ -406,6 +414,9 @@ export function everyAppAuxiliaryWorker(options) {
|
|
|
406
414
|
addDevProviders(env, options.root);
|
|
407
415
|
}
|
|
408
416
|
addAiBindings(env, manifest, deploy);
|
|
417
|
+
addBrowserBindings(env, manifest);
|
|
418
|
+
addImagesBindings(env, manifest);
|
|
419
|
+
addAiGatewayBindings(env, manifest, appWorker, deploy);
|
|
409
420
|
addDatabaseBindings(env, options, appWorker, worker, deploy);
|
|
410
421
|
const { bindings, exports } = classBindings(manifest, appWorker, worker, env);
|
|
411
422
|
Object.assign(env, bindings);
|
|
@@ -472,8 +483,8 @@ function gatewayBinding(deploy, appId, appWorker) {
|
|
|
472
483
|
};
|
|
473
484
|
}
|
|
474
485
|
/**
|
|
475
|
-
* The app's D1 databases, KV namespaces
|
|
476
|
-
* Workers share.
|
|
486
|
+
* The app's D1 databases, KV namespaces, R2 buckets and Vectorize indexes,
|
|
487
|
+
* which all its Workers share.
|
|
477
488
|
*/
|
|
478
489
|
function storageBindings(manifest, appWorker, deploy) {
|
|
479
490
|
const env = {};
|
|
@@ -523,6 +534,27 @@ function storageBindings(manifest, appWorker, deploy) {
|
|
|
523
534
|
env[binding] = { type: "r2", name: bucketNameFor(appWorker, binding) };
|
|
524
535
|
}
|
|
525
536
|
}
|
|
537
|
+
// Deployed, the index the deploy provisioned (a placeholder until
|
|
538
|
+
// installed); in development the account's index of the dev Worker's
|
|
539
|
+
// name, reached remotely: Cloudflare has no local Vectorize, so calls
|
|
540
|
+
// throw until the Vite plugin's remoteBindings is on.
|
|
541
|
+
for (const { name: binding } of manifest.resources?.vectorize ?? []) {
|
|
542
|
+
if (env[binding]) {
|
|
543
|
+
throw new Error(`vectorize: ${binding} reuses a binding name the Worker already has.`);
|
|
544
|
+
}
|
|
545
|
+
if (deploy) {
|
|
546
|
+
env[binding] = {
|
|
547
|
+
type: "vectorize",
|
|
548
|
+
name: provisioned(deploy.resources.vectorize, binding).name,
|
|
549
|
+
};
|
|
550
|
+
continue;
|
|
551
|
+
}
|
|
552
|
+
const index = suffixedName(appWorker, binding);
|
|
553
|
+
if (index.length > MAX_VECTORIZE_NAME_LENGTH) {
|
|
554
|
+
throw new Error(`vectorize: ${binding} would be the Vectorize index "${index}", longer than Cloudflare's ${MAX_VECTORIZE_NAME_LENGTH} characters; shorten the binding name.`);
|
|
555
|
+
}
|
|
556
|
+
env[binding] = { type: "vectorize", name: index, dev: { remote: true } };
|
|
557
|
+
}
|
|
526
558
|
return env;
|
|
527
559
|
}
|
|
528
560
|
/**
|
|
@@ -542,6 +574,50 @@ function addAiBindings(env, manifest, deploy) {
|
|
|
542
574
|
: { type: "ai", dev: { remote: true } };
|
|
543
575
|
}
|
|
544
576
|
}
|
|
577
|
+
/**
|
|
578
|
+
* The manifest's Browser Rendering bindings, which every one of the app's
|
|
579
|
+
* Workers gets: `{ type: "browser" }` in both modes (account-wide,
|
|
580
|
+
* nothing to provision; Miniflare serves a local browser in development).
|
|
581
|
+
*/
|
|
582
|
+
function addBrowserBindings(env, manifest) {
|
|
583
|
+
for (const binding of manifest.resources?.browser ?? []) {
|
|
584
|
+
if (env[binding]) {
|
|
585
|
+
throw new Error(`browser: ${binding} reuses a binding name the Worker already has.`);
|
|
586
|
+
}
|
|
587
|
+
env[binding] = { type: "browser" };
|
|
588
|
+
}
|
|
589
|
+
}
|
|
590
|
+
/**
|
|
591
|
+
* The manifest's Images bindings, which every one of the app's Workers
|
|
592
|
+
* gets: `{ type: "images" }` in both modes (account-wide, nothing to
|
|
593
|
+
* provision; Miniflare answers it locally in development).
|
|
594
|
+
*/
|
|
595
|
+
function addImagesBindings(env, manifest) {
|
|
596
|
+
for (const binding of manifest.resources?.images ?? []) {
|
|
597
|
+
if (env[binding]) {
|
|
598
|
+
throw new Error(`images: ${binding} reuses a binding name the Worker already has.`);
|
|
599
|
+
}
|
|
600
|
+
env[binding] = { type: "images" };
|
|
601
|
+
}
|
|
602
|
+
}
|
|
603
|
+
/**
|
|
604
|
+
* The app's AI Gateways, which all its Workers share, each a `json`
|
|
605
|
+
* binding of `{ id, accountId, url }`. Deployed, the gateway the deploy
|
|
606
|
+
* provisioned (a placeholder until installed); in development the id the
|
|
607
|
+
* deploy's rule gives, with an empty account and URL: there is no gateway,
|
|
608
|
+
* so the app calls the provider directly.
|
|
609
|
+
*/
|
|
610
|
+
function addAiGatewayBindings(env, manifest, appWorker, deploy) {
|
|
611
|
+
for (const { name: binding } of manifest.resources?.aiGateway ?? []) {
|
|
612
|
+
if (env[binding]) {
|
|
613
|
+
throw new Error(`aiGateway: ${binding} reuses a binding name the Worker already has.`);
|
|
614
|
+
}
|
|
615
|
+
const value = deploy
|
|
616
|
+
? { ...provisioned(deploy.resources.aiGateway, binding) }
|
|
617
|
+
: { id: aiGatewayIdFor(appWorker, binding), accountId: "", url: "" };
|
|
618
|
+
env[binding] = { type: "json", value };
|
|
619
|
+
}
|
|
620
|
+
}
|
|
545
621
|
/**
|
|
546
622
|
* DATABASE_PROVIDER and the Hyperdrive configs one of the app's Workers
|
|
547
623
|
* binds: each config every Worker shares, and those a helper (`forWorker`)
|
|
@@ -788,8 +864,9 @@ function workerNameFor(appId) {
|
|
|
788
864
|
}
|
|
789
865
|
/**
|
|
790
866
|
* Copies of the gateway's naming rules (@every-app/perimeter/manifest's
|
|
791
|
-
* resourceNameFor and
|
|
792
|
-
* the Worker's name, any other binding
|
|
867
|
+
* resourceNameFor, bucketNameFor and vectorizeNameFor): `DB` and `KV` (`R2`
|
|
868
|
+
* for a bucket) take the Worker's name, any other binding (and every
|
|
869
|
+
* Vectorize index) `<worker>--<binding>`.
|
|
793
870
|
*/
|
|
794
871
|
function resourceNameFor(workerName, binding) {
|
|
795
872
|
return binding === "DB" || binding === "KV"
|
|
@@ -802,6 +879,13 @@ function bucketNameFor(workerName, binding) {
|
|
|
802
879
|
function suffixedName(workerName, binding) {
|
|
803
880
|
return `${workerName}--${binding.toLowerCase().replaceAll("_", "-")}`;
|
|
804
881
|
}
|
|
882
|
+
/**
|
|
883
|
+
* A copy of the gateway's aiGatewayIdFor: one hyphen, since an AI
|
|
884
|
+
* Gateway's id may not hold `--`.
|
|
885
|
+
*/
|
|
886
|
+
function aiGatewayIdFor(workerName, binding) {
|
|
887
|
+
return `${workerName}-${binding.toLowerCase().replaceAll("_", "-")}`;
|
|
888
|
+
}
|
|
805
889
|
function assertAppId(id) {
|
|
806
890
|
if (typeof id !== "string" || !/^[a-z]([a-z0-9-]*[a-z0-9])?$/.test(id)) {
|
|
807
891
|
throw new Error(`everyapp.config.ts id must be kebab-case (lowercase letters, digits, hyphens); got ${JSON.stringify(id)}.`);
|