@run402/sdk 3.7.14 → 3.8.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/README.md +24 -4
- package/core-dist/config.d.ts +3 -0
- package/core-dist/config.js +9 -0
- package/core-dist/keystore.d.ts +11 -3
- package/core-dist/keystore.js +103 -68
- package/core-dist/profile-state.d.ts +29 -0
- package/core-dist/profile-state.js +137 -0
- package/dist/credentials.d.ts +24 -7
- package/dist/credentials.d.ts.map +1 -1
- package/dist/credentials.js +4 -4
- package/dist/errors.d.ts +27 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +61 -3
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +16 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -3
- package/dist/index.js.map +1 -1
- package/dist/kernel.d.ts +9 -0
- package/dist/kernel.d.ts.map +1 -1
- package/dist/kernel.js +40 -1
- package/dist/kernel.js.map +1 -1
- package/dist/namespaces/ai.d.ts.map +1 -1
- package/dist/namespaces/ai.js +5 -10
- package/dist/namespaces/ai.js.map +1 -1
- package/dist/namespaces/apps.d.ts.map +1 -1
- package/dist/namespaces/apps.js +5 -13
- package/dist/namespaces/apps.js.map +1 -1
- package/dist/namespaces/assets.d.ts.map +1 -1
- package/dist/namespaces/assets.js +9 -22
- package/dist/namespaces/assets.js.map +1 -1
- package/dist/namespaces/auth.d.ts.map +1 -1
- package/dist/namespaces/auth.js +16 -43
- package/dist/namespaces/auth.js.map +1 -1
- package/dist/namespaces/contracts.d.ts.map +1 -1
- package/dist/namespaces/contracts.js +12 -31
- package/dist/namespaces/contracts.js.map +1 -1
- package/dist/namespaces/credentials.d.ts +48 -0
- package/dist/namespaces/credentials.d.ts.map +1 -0
- package/dist/namespaces/credentials.js +115 -0
- package/dist/namespaces/credentials.js.map +1 -0
- package/dist/namespaces/domains.d.ts +8 -2
- package/dist/namespaces/domains.d.ts.map +1 -1
- package/dist/namespaces/domains.js +41 -23
- package/dist/namespaces/domains.js.map +1 -1
- package/dist/namespaces/email.d.ts.map +1 -1
- package/dist/namespaces/email.js +8 -19
- package/dist/namespaces/email.js.map +1 -1
- package/dist/namespaces/functions.d.ts.map +1 -1
- package/dist/namespaces/functions.js +14 -37
- package/dist/namespaces/functions.js.map +1 -1
- package/dist/namespaces/jobs.d.ts.map +1 -1
- package/dist/namespaces/jobs.js +8 -19
- package/dist/namespaces/jobs.js.map +1 -1
- package/dist/namespaces/projects.d.ts +4 -4
- package/dist/namespaces/projects.d.ts.map +1 -1
- package/dist/namespaces/projects.js +18 -42
- package/dist/namespaces/projects.js.map +1 -1
- package/dist/namespaces/secrets.d.ts.map +1 -1
- package/dist/namespaces/secrets.js +5 -10
- package/dist/namespaces/secrets.js.map +1 -1
- package/dist/namespaces/sender-domain.d.ts.map +1 -1
- package/dist/namespaces/sender-domain.js +6 -16
- package/dist/namespaces/sender-domain.js.map +1 -1
- package/dist/namespaces/subdomains.d.ts.map +1 -1
- package/dist/namespaces/subdomains.js +5 -10
- package/dist/namespaces/subdomains.js.map +1 -1
- package/dist/node/actions-node.d.ts.map +1 -1
- package/dist/node/actions-node.js +46 -15
- package/dist/node/actions-node.js.map +1 -1
- package/dist/node/credentials.d.ts +18 -4
- package/dist/node/credentials.d.ts.map +1 -1
- package/dist/node/credentials.js +37 -9
- package/dist/node/credentials.js.map +1 -1
- package/dist/node/index.d.ts +11 -2
- package/dist/node/index.d.ts.map +1 -1
- package/dist/node/index.js +26 -1
- package/dist/node/index.js.map +1 -1
- package/dist/node/target-profile.d.ts.map +1 -1
- package/dist/node/target-profile.js +6 -4
- package/dist/node/target-profile.js.map +1 -1
- package/dist/project-auth-classification.d.ts +125 -0
- package/dist/project-auth-classification.d.ts.map +1 -0
- package/dist/project-auth-classification.js +135 -0
- package/dist/project-auth-classification.js.map +1 -0
- package/dist/project-credentials.d.ts +4 -0
- package/dist/project-credentials.d.ts.map +1 -0
- package/dist/project-credentials.js +9 -0
- package/dist/project-credentials.js.map +1 -0
- package/package.json +1 -1
package/dist/node/index.js
CHANGED
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
* the unified CAS substrate, so only files the gateway doesn't already have
|
|
20
20
|
* are uploaded. Re-deploying an unchanged tree issues no S3 PUTs.
|
|
21
21
|
*/
|
|
22
|
+
import { readFileSync } from "node:fs";
|
|
22
23
|
import { DEFAULT_API_BASE, getApiBase, getApiBaseSource, getApiTargetKind, } from "../../core-dist/config.js";
|
|
23
24
|
import { Run402 } from "../index.js";
|
|
24
25
|
import { NodeCredentialsProvider } from "./credentials.js";
|
|
@@ -42,6 +43,7 @@ export function run402(opts = {}) {
|
|
|
42
43
|
const credentials = opts.credentials ?? new NodeCredentialsProvider({
|
|
43
44
|
allowancePath: opts.allowancePath,
|
|
44
45
|
keystorePath: opts.keystorePath,
|
|
46
|
+
profileStatePath: opts.profileStatePath,
|
|
45
47
|
surface: opts.surface,
|
|
46
48
|
authMode: opts.authMode,
|
|
47
49
|
});
|
|
@@ -50,6 +52,7 @@ export function run402(opts = {}) {
|
|
|
50
52
|
credentials,
|
|
51
53
|
fetch: opts.fetch ??
|
|
52
54
|
(opts.disablePaidFetch ? globalThis.fetch.bind(globalThis) : createLazyPaidFetch()),
|
|
55
|
+
clientMetadata: nodeClientMetadata(opts),
|
|
53
56
|
};
|
|
54
57
|
const base = new Run402(runOpts);
|
|
55
58
|
// Upgrade `sites` to the Node-aware variant, sharing the kernel `Client`
|
|
@@ -86,6 +89,28 @@ function inferTargetKind(apiBase, explicitApiBase) {
|
|
|
86
89
|
function stripSlash(value) {
|
|
87
90
|
return value.replace(/\/+$/, "");
|
|
88
91
|
}
|
|
92
|
+
const SDK_PACKAGE_VERSION = readSdkPackageVersion();
|
|
93
|
+
function nodeClientMetadata(opts) {
|
|
94
|
+
if (opts.clientMetadata === false)
|
|
95
|
+
return false;
|
|
96
|
+
const base = opts.clientMetadata && typeof opts.clientMetadata === "object" ? opts.clientMetadata : {};
|
|
97
|
+
const version = opts.clientVersion ?? base.version ?? SDK_PACKAGE_VERSION;
|
|
98
|
+
const sdkVersion = opts.sdkVersion ?? base.sdkVersion ?? SDK_PACKAGE_VERSION;
|
|
99
|
+
return {
|
|
100
|
+
surface: base.surface ?? opts.surface ?? "sdk",
|
|
101
|
+
...(version ? { version } : {}),
|
|
102
|
+
...(sdkVersion ? { sdkVersion } : {}),
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
function readSdkPackageVersion() {
|
|
106
|
+
try {
|
|
107
|
+
const pkg = JSON.parse(readFileSync(new URL("../../package.json", import.meta.url), "utf8"));
|
|
108
|
+
return typeof pkg.version === "string" ? pkg.version : undefined;
|
|
109
|
+
}
|
|
110
|
+
catch {
|
|
111
|
+
return undefined;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
89
114
|
export { NodeSites } from "./sites-node.js";
|
|
90
115
|
export { fileSetFromDir, normalizeRelPath } from "./files.js";
|
|
91
116
|
// v1.48 unified-apply: Node-only `assets.{uploadDir,syncDir,prepareDir,
|
|
@@ -105,5 +130,5 @@ export { setupPaidFetch, createLazyPaidFetch } from "./paid-fetch.js";
|
|
|
105
130
|
export { Run402Action } from "../actions.js";
|
|
106
131
|
export * from "../app-up.js";
|
|
107
132
|
// Re-export the isomorphic surface so Node consumers don't need two imports.
|
|
108
|
-
export { Run402, Run402Error, PaymentRequired, ProjectNotFound, Unauthorized, NotAuthorizedError, StepUpRequiredError, ApiError, NetworkError, LocalError, Run402DeployError, EMPTY_STATIC_MANIFEST_METADATA, ROUTE_HTTP_METHODS, Ci, Deploy, CI_SESSION_CREDENTIALS, Orgs, ScopedOrg, Grants, files, CI_AUDIENCE, CI_GITHUB_ACTIONS_ISSUER, CI_GITHUB_ACTIONS_PROVIDER, DEFAULT_CI_DELEGATION_CHAIN_ID, V1_CI_ALLOWED_ACTIONS, V1_CI_ALLOWED_EVENTS_DEFAULT, assertCiDeployableSpec, buildCiDelegationResourceUri, buildCiDelegationStatement, buildDeployResolveSummary, createCiSessionCredentials, githubActionsCredentials, isRun402Error, isPaymentRequired, isProjectNotFound, isUnauthorized, isNotAuthorized, isStepUpRequired, isOperatorApprovalRequired, isApiError, isNetworkError, isLocalError, isDeployError, isRetryableRun402Error, isCiSessionCredentials, isDeployResolveRouteHit, isDeployResolveStaticHit, normalizeCiRouteScopes, normalizeCiDelegationValues, normalizeDeployResolveRequest, normalizeStaticManifestMetadata, summarizeDeployResult, validateCiNonce, validateCiRouteScope, validateCiSubjectMatch, withRetry, } from "../index.js";
|
|
133
|
+
export { Run402, Run402Error, PaymentRequired, ProjectCredentialNotFound, ProjectNotFound, Unauthorized, NotAuthorizedError, StepUpRequiredError, ApiError, NetworkError, LocalError, Run402DeployError, EMPTY_STATIC_MANIFEST_METADATA, ROUTE_HTTP_METHODS, Ci, Deploy, CI_SESSION_CREDENTIALS, Orgs, ScopedOrg, Grants, PROJECT_CREDENTIAL_ERROR_CODES, PROJECT_OPERATION_AUTH_CLASSIFICATIONS, files, CI_AUDIENCE, CI_GITHUB_ACTIONS_ISSUER, CI_GITHUB_ACTIONS_PROVIDER, DEFAULT_CI_DELEGATION_CHAIN_ID, V1_CI_ALLOWED_ACTIONS, V1_CI_ALLOWED_EVENTS_DEFAULT, assertCiDeployableSpec, buildCiDelegationResourceUri, buildCiDelegationStatement, buildDeployResolveSummary, createCiSessionCredentials, githubActionsCredentials, isRun402Error, isPaymentRequired, isProjectCredentialError, isProjectCredentialExpired, isProjectCredentialInvalid, isProjectCredentialNotFound, isProjectCredentialProjectMismatch, isProjectNotFound, isUnauthorized, isNotAuthorized, isStepUpRequired, isOperatorApprovalRequired, isApiError, isNetworkError, isLocalError, isDeployError, isRetryableRun402Error, isCiSessionCredentials, projectOperationAuthClassification, isDeployResolveRouteHit, isDeployResolveStaticHit, normalizeCiRouteScopes, normalizeCiDelegationValues, normalizeDeployResolveRequest, normalizeStaticManifestMetadata, summarizeDeployResult, validateCiNonce, validateCiRouteScope, validateCiSubjectMatch, withRetry, } from "../index.js";
|
|
109
134
|
//# sourceMappingURL=index.js.map
|
package/dist/node/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/node/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,MAAM,EAAsB,MAAM,aAAa,CAAC;AAGzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,WAAW,EAA6B,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/node/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"target-profile.d.ts","sourceRoot":"","sources":["../../src/node/target-profile.ts"],"names":[],"mappings":"AAQA,OAAO,EAAgB,KAAK,aAAa,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"target-profile.d.ts","sourceRoot":"","sources":["../../src/node/target-profile.ts"],"names":[],"mappings":"AAQA,OAAO,EAAgB,KAAK,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAI/E,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;AAC5D,MAAM,MAAM,uBAAuB,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;AAE/D,MAAM,WAAW,6BAA6B;IAC5C,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,iCAAiC;IAChD,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,6BAA6B,CAAC;IAC3C,cAAc,CAAC,EAAE,uBAAuB,CAAC;IACzC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS,CAAC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS,CAAC;IAC7C,UAAU,EAAE,gBAAgB,CAAC;IAC7B,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,0BAA0B,CAAC;CACrC;AAUD,wBAAgB,0BAA0B,CACxC,OAAO,GAAE,iCAAsC,GAC9C,mBAAmB,CA4ErB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { DEFAULT_API_BASE, getActiveProfile, getApiBase, getApiBaseSource, getApiTargetKind, getConfigDir, } from "../../core-dist/config.js";
|
|
2
2
|
import { loadKeyStore } from "../../core-dist/keystore.js";
|
|
3
|
+
import { getActiveProjectId } from "../../core-dist/profile-state.js";
|
|
3
4
|
import { LocalError } from "../errors.js";
|
|
4
5
|
const DEFAULT_ENV_ALIASES = {
|
|
5
6
|
projectId: ["RUN402_PROJECT_ID"],
|
|
@@ -11,13 +12,14 @@ export function resolveRun402TargetProfile(options = {}) {
|
|
|
11
12
|
const env = options.env ?? process.env;
|
|
12
13
|
const aliases = mergeAliases(options.envAliases);
|
|
13
14
|
const store = loadKeyStore();
|
|
15
|
+
const activeProjectId = getActiveProjectId();
|
|
14
16
|
const apiBase = getApiBase();
|
|
15
17
|
const apiBaseSource = getApiBaseSource();
|
|
16
18
|
const configuredKind = getApiTargetKind();
|
|
17
19
|
const targetKind = effectiveTargetKind(apiBase, configuredKind, apiBaseSource);
|
|
18
20
|
const isCore = targetKind === "core";
|
|
19
21
|
const projectFromEnv = firstEnv(env, aliases.projectId);
|
|
20
|
-
const projectId = firstString(options.projectId, projectFromEnv?.value,
|
|
22
|
+
const projectId = firstString(options.projectId, projectFromEnv?.value, activeProjectId);
|
|
21
23
|
const project = projectId ? store.projects[projectId] : undefined;
|
|
22
24
|
const anonFromEnv = firstEnv(env, aliases.anonKey);
|
|
23
25
|
const serviceFromEnv = firstEnv(env, aliases.serviceKey);
|
|
@@ -53,13 +55,13 @@ export function resolveRun402TargetProfile(options = {}) {
|
|
|
53
55
|
sources: {
|
|
54
56
|
apiBase: apiBaseSource,
|
|
55
57
|
...(projectId
|
|
56
|
-
? { project: options.projectId ? "option:projectId" : projectFromEnv?.source ?? "profile:
|
|
58
|
+
? { project: options.projectId ? "option:projectId" : projectFromEnv?.source ?? "profile:state.json" }
|
|
57
59
|
: {}),
|
|
58
60
|
...(anonKey
|
|
59
|
-
? { anonKey: options.anonKey ? "option:anonKey" : anonFromEnv?.source ?? "profile:
|
|
61
|
+
? { anonKey: options.anonKey ? "option:anonKey" : anonFromEnv?.source ?? "profile:project-keys.v1.json" }
|
|
60
62
|
: {}),
|
|
61
63
|
...(serviceKey
|
|
62
|
-
? { serviceKey: options.serviceKey ? "option:serviceKey" : serviceFromEnv?.source ?? "profile:
|
|
64
|
+
? { serviceKey: options.serviceKey ? "option:serviceKey" : serviceFromEnv?.source ?? "profile:project-keys.v1.json" }
|
|
63
65
|
: {}),
|
|
64
66
|
},
|
|
65
67
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"target-profile.js","sourceRoot":"","sources":["../../src/node/target-profile.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,GACb,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,YAAY,EAAsB,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AA4C1C,MAAM,mBAAmB,GAA4C;IACnE,SAAS,EAAE,CAAC,mBAAmB,CAAC;IAChC,OAAO,EAAE,CAAC,iBAAiB,CAAC;IAC5B,UAAU,EAAE,CAAC,oBAAoB,CAAC;CACnC,CAAC;AAEF,MAAM,OAAO,GAAG,iCAAiC,CAAC;AAElD,MAAM,UAAU,0BAA0B,CACxC,UAA6C,EAAE;IAE/C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACvC,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,YAAY,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IACzC,MAAM,cAAc,GAAG,gBAAgB,EAAE,CAAC;IAC1C,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAAO,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;IAC/E,MAAM,MAAM,GAAG,UAAU,KAAK,MAAM,CAAC;IAErC,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"target-profile.js","sourceRoot":"","sources":["../../src/node/target-profile.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,GACb,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,YAAY,EAAsB,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AA4C1C,MAAM,mBAAmB,GAA4C;IACnE,SAAS,EAAE,CAAC,mBAAmB,CAAC;IAChC,OAAO,EAAE,CAAC,iBAAiB,CAAC;IAC5B,UAAU,EAAE,CAAC,oBAAoB,CAAC;CACnC,CAAC;AAEF,MAAM,OAAO,GAAG,iCAAiC,CAAC;AAElD,MAAM,UAAU,0BAA0B,CACxC,UAA6C,EAAE;IAE/C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACvC,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,YAAY,EAAE,CAAC;IAC7B,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;IAC7C,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IACzC,MAAM,cAAc,GAAG,gBAAgB,EAAE,CAAC;IAC1C,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAAO,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;IAC/E,MAAM,MAAM,GAAG,UAAU,KAAK,MAAM,CAAC;IAErC,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC;IACzF,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACnD,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IACzD,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IACpF,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IAEhG,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,KAAK,CAAC;IACvD,IAAI,cAAc,KAAK,KAAK,IAAI,UAAU,KAAK,cAAc,EAAE,CAAC;QAC9D,MAAM,IAAI,UAAU,CAClB,yBAAyB,cAAc,kBAAkB,UAAU,KAAK,OAAO,IAAI,EACnF,OAAO,EACP;YACE,IAAI,EAAE,wBAAwB;YAC9B,OAAO,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE;SACzF,CACF,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,cAAc,IAAI,CAAC,SAAS,EAAE,CAAC;QACzC,MAAM,IAAI,UAAU,CAClB,yGAAyG,EACzG,OAAO,EACP,EAAE,IAAI,EAAE,gCAAgC,EAAE,CAC3C,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,cAAc,IAAI,CAAC,OAAO,EAAE,CAAC;QACvC,MAAM,IAAI,UAAU,CAClB,kGAAkG,EAClG,OAAO,EACP,EAAE,IAAI,EAAE,iCAAiC,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,SAAS,IAAI,IAAI,EAAE,EAAE,CACxF,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,iBAAiB,IAAI,CAAC,UAAU,EAAE,CAAC;QAC7C,MAAM,IAAI,UAAU,CAClB,wGAAwG,EACxG,OAAO,EACP,EAAE,IAAI,EAAE,oCAAoC,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,SAAS,IAAI,IAAI,EAAE,EAAE,CAC3F,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,gBAAgB,EAAE;QAC3B,SAAS,EAAE,YAAY,EAAE;QACzB,OAAO;QACP,aAAa;QACb,UAAU;QACV,MAAM;QACN,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/B,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/B,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrC,OAAO,EAAE;YACP,OAAO,EAAE,aAAa;YACtB,GAAG,CAAC,SAAS;gBACX,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,cAAc,EAAE,MAAM,IAAI,oBAAoB,EAAE;gBACtG,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,OAAO;gBACT,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,WAAW,EAAE,MAAM,IAAI,8BAA8B,EAAE;gBACzG,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,UAAU;gBACZ,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,cAAc,EAAE,MAAM,IAAI,8BAA8B,EAAE;gBACrH,CAAC,CAAC,EAAE,CAAC;SACR;KACF,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CACnB,OAAkD;IAElD,OAAO;QACL,SAAS,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,CAAC,EAAE,GAAG,mBAAmB,CAAC,SAAS,CAAC;QAC5E,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,mBAAmB,CAAC,OAAO,CAAC;QACtE,UAAU,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,GAAG,mBAAmB,CAAC,UAAU,CAAC;KAChF,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,OAAe,EACf,cAAgC,EAChC,aAAmD;IAEnD,IAAI,aAAa,KAAK,KAAK;QAAE,OAAO,0BAA0B,CAAC,OAAO,CAAC,CAAC;IACxE,IAAI,cAAc,KAAK,SAAS;QAAE,OAAO,cAAc,CAAC;IACxD,OAAO,0BAA0B,CAAC,OAAO,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,0BAA0B,CAAC,OAAe;IACjD,IAAI,UAAU,CAAC,OAAO,CAAC,KAAK,UAAU,CAAC,gBAAgB,CAAC;QAAE,OAAO,OAAO,CAAC;IACzE,IAAI,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,WAAW,CAAC,GAAG,MAAiC;IACvD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC;QAC9B,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC;IAC9B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,QAAQ,CACf,GAAuC,EACvC,KAAwB;IAExB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QACrC,IAAI,KAAK;YAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC;IACrD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
export type ProjectOperationPlane = "control" | "data" | "local";
|
|
2
|
+
export type ProjectOperationAuthMode = "principal" | "delegate" | "service_key" | "project_credential" | "anon_key";
|
|
3
|
+
export interface ProjectOperationAuthClassification {
|
|
4
|
+
operation: string;
|
|
5
|
+
scope: "project";
|
|
6
|
+
plane: ProjectOperationPlane;
|
|
7
|
+
authModes: ProjectOperationAuthMode[];
|
|
8
|
+
defaultAuthMode: ProjectOperationAuthMode;
|
|
9
|
+
requiresProjectId: boolean;
|
|
10
|
+
mayUseLocalCredentialCache: boolean;
|
|
11
|
+
localCredentialMissCode?: "PROJECT_CREDENTIAL_NOT_FOUND";
|
|
12
|
+
}
|
|
13
|
+
export declare const PROJECT_OPERATION_AUTH_CLASSIFICATIONS: readonly [{
|
|
14
|
+
readonly operation: "projects.list";
|
|
15
|
+
readonly scope: "project";
|
|
16
|
+
readonly plane: "control";
|
|
17
|
+
readonly authModes: ["principal", "delegate"];
|
|
18
|
+
readonly defaultAuthMode: "principal";
|
|
19
|
+
readonly requiresProjectId: false;
|
|
20
|
+
readonly mayUseLocalCredentialCache: false;
|
|
21
|
+
}, {
|
|
22
|
+
readonly operation: "projects.get";
|
|
23
|
+
readonly scope: "project";
|
|
24
|
+
readonly plane: "control";
|
|
25
|
+
readonly authModes: ["principal", "delegate"];
|
|
26
|
+
readonly defaultAuthMode: "principal";
|
|
27
|
+
readonly requiresProjectId: true;
|
|
28
|
+
readonly mayUseLocalCredentialCache: false;
|
|
29
|
+
}, {
|
|
30
|
+
readonly operation: "projects.use";
|
|
31
|
+
readonly scope: "project";
|
|
32
|
+
readonly plane: "control";
|
|
33
|
+
readonly authModes: ["principal", "delegate"];
|
|
34
|
+
readonly defaultAuthMode: "principal";
|
|
35
|
+
readonly requiresProjectId: true;
|
|
36
|
+
readonly mayUseLocalCredentialCache: false;
|
|
37
|
+
}, {
|
|
38
|
+
readonly operation: "projects.keys";
|
|
39
|
+
readonly scope: "project";
|
|
40
|
+
readonly plane: "local";
|
|
41
|
+
readonly authModes: ["project_credential"];
|
|
42
|
+
readonly defaultAuthMode: "project_credential";
|
|
43
|
+
readonly requiresProjectId: true;
|
|
44
|
+
readonly mayUseLocalCredentialCache: true;
|
|
45
|
+
readonly localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND";
|
|
46
|
+
}, {
|
|
47
|
+
readonly operation: "projects.sql";
|
|
48
|
+
readonly scope: "project";
|
|
49
|
+
readonly plane: "data";
|
|
50
|
+
readonly authModes: ["service_key"];
|
|
51
|
+
readonly defaultAuthMode: "project_credential";
|
|
52
|
+
readonly requiresProjectId: true;
|
|
53
|
+
readonly mayUseLocalCredentialCache: true;
|
|
54
|
+
readonly localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND";
|
|
55
|
+
}, {
|
|
56
|
+
readonly operation: "projects.rest";
|
|
57
|
+
readonly scope: "project";
|
|
58
|
+
readonly plane: "data";
|
|
59
|
+
readonly authModes: ["anon_key", "service_key"];
|
|
60
|
+
readonly defaultAuthMode: "project_credential";
|
|
61
|
+
readonly requiresProjectId: true;
|
|
62
|
+
readonly mayUseLocalCredentialCache: true;
|
|
63
|
+
readonly localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND";
|
|
64
|
+
}, {
|
|
65
|
+
readonly operation: "domains.add";
|
|
66
|
+
readonly scope: "project";
|
|
67
|
+
readonly plane: "control";
|
|
68
|
+
readonly authModes: ["principal", "delegate", "service_key"];
|
|
69
|
+
readonly defaultAuthMode: "principal";
|
|
70
|
+
readonly requiresProjectId: true;
|
|
71
|
+
readonly mayUseLocalCredentialCache: false;
|
|
72
|
+
}, {
|
|
73
|
+
readonly operation: "domains.list";
|
|
74
|
+
readonly scope: "project";
|
|
75
|
+
readonly plane: "control";
|
|
76
|
+
readonly authModes: ["principal", "delegate", "service_key"];
|
|
77
|
+
readonly defaultAuthMode: "principal";
|
|
78
|
+
readonly requiresProjectId: true;
|
|
79
|
+
readonly mayUseLocalCredentialCache: false;
|
|
80
|
+
}, {
|
|
81
|
+
readonly operation: "domains.status";
|
|
82
|
+
readonly scope: "project";
|
|
83
|
+
readonly plane: "control";
|
|
84
|
+
readonly authModes: ["principal", "delegate", "service_key"];
|
|
85
|
+
readonly defaultAuthMode: "principal";
|
|
86
|
+
readonly requiresProjectId: true;
|
|
87
|
+
readonly mayUseLocalCredentialCache: false;
|
|
88
|
+
}, {
|
|
89
|
+
readonly operation: "domains.delete";
|
|
90
|
+
readonly scope: "project";
|
|
91
|
+
readonly plane: "control";
|
|
92
|
+
readonly authModes: ["principal", "delegate", "service_key"];
|
|
93
|
+
readonly defaultAuthMode: "principal";
|
|
94
|
+
readonly requiresProjectId: true;
|
|
95
|
+
readonly mayUseLocalCredentialCache: false;
|
|
96
|
+
}, {
|
|
97
|
+
readonly operation: "functions.*";
|
|
98
|
+
readonly scope: "project";
|
|
99
|
+
readonly plane: "control";
|
|
100
|
+
readonly authModes: ["service_key"];
|
|
101
|
+
readonly defaultAuthMode: "project_credential";
|
|
102
|
+
readonly requiresProjectId: true;
|
|
103
|
+
readonly mayUseLocalCredentialCache: true;
|
|
104
|
+
readonly localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND";
|
|
105
|
+
}, {
|
|
106
|
+
readonly operation: "assets.*";
|
|
107
|
+
readonly scope: "project";
|
|
108
|
+
readonly plane: "data";
|
|
109
|
+
readonly authModes: ["service_key"];
|
|
110
|
+
readonly defaultAuthMode: "project_credential";
|
|
111
|
+
readonly requiresProjectId: true;
|
|
112
|
+
readonly mayUseLocalCredentialCache: true;
|
|
113
|
+
readonly localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND";
|
|
114
|
+
}, {
|
|
115
|
+
readonly operation: "jobs.*";
|
|
116
|
+
readonly scope: "project";
|
|
117
|
+
readonly plane: "control";
|
|
118
|
+
readonly authModes: ["service_key"];
|
|
119
|
+
readonly defaultAuthMode: "project_credential";
|
|
120
|
+
readonly requiresProjectId: true;
|
|
121
|
+
readonly mayUseLocalCredentialCache: true;
|
|
122
|
+
readonly localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND";
|
|
123
|
+
}];
|
|
124
|
+
export declare function projectOperationAuthClassification(operation: string): ProjectOperationAuthClassification | null;
|
|
125
|
+
//# sourceMappingURL=project-auth-classification.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-auth-classification.d.ts","sourceRoot":"","sources":["../src/project-auth-classification.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;AACjE,MAAM,MAAM,wBAAwB,GAChC,WAAW,GACX,UAAU,GACV,aAAa,GACb,oBAAoB,GACpB,UAAU,CAAC;AAEf,MAAM,WAAW,kCAAkC;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,qBAAqB,CAAC;IAC7B,SAAS,EAAE,wBAAwB,EAAE,CAAC;IACtC,eAAe,EAAE,wBAAwB,CAAC;IAC1C,iBAAiB,EAAE,OAAO,CAAC;IAC3B,0BAA0B,EAAE,OAAO,CAAC;IACpC,uBAAuB,CAAC,EAAE,8BAA8B,CAAC;CAC1D;AAED,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4He,CAAC;AAEnE,wBAAgB,kCAAkC,CAAC,SAAS,EAAE,MAAM,GAAG,kCAAkC,GAAG,IAAI,CAM/G"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
export const PROJECT_OPERATION_AUTH_CLASSIFICATIONS = [
|
|
2
|
+
{
|
|
3
|
+
operation: "projects.list",
|
|
4
|
+
scope: "project",
|
|
5
|
+
plane: "control",
|
|
6
|
+
authModes: ["principal", "delegate"],
|
|
7
|
+
defaultAuthMode: "principal",
|
|
8
|
+
requiresProjectId: false,
|
|
9
|
+
mayUseLocalCredentialCache: false,
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
operation: "projects.get",
|
|
13
|
+
scope: "project",
|
|
14
|
+
plane: "control",
|
|
15
|
+
authModes: ["principal", "delegate"],
|
|
16
|
+
defaultAuthMode: "principal",
|
|
17
|
+
requiresProjectId: true,
|
|
18
|
+
mayUseLocalCredentialCache: false,
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
operation: "projects.use",
|
|
22
|
+
scope: "project",
|
|
23
|
+
plane: "control",
|
|
24
|
+
authModes: ["principal", "delegate"],
|
|
25
|
+
defaultAuthMode: "principal",
|
|
26
|
+
requiresProjectId: true,
|
|
27
|
+
mayUseLocalCredentialCache: false,
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
operation: "projects.keys",
|
|
31
|
+
scope: "project",
|
|
32
|
+
plane: "local",
|
|
33
|
+
authModes: ["project_credential"],
|
|
34
|
+
defaultAuthMode: "project_credential",
|
|
35
|
+
requiresProjectId: true,
|
|
36
|
+
mayUseLocalCredentialCache: true,
|
|
37
|
+
localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND",
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
operation: "projects.sql",
|
|
41
|
+
scope: "project",
|
|
42
|
+
plane: "data",
|
|
43
|
+
authModes: ["service_key"],
|
|
44
|
+
defaultAuthMode: "project_credential",
|
|
45
|
+
requiresProjectId: true,
|
|
46
|
+
mayUseLocalCredentialCache: true,
|
|
47
|
+
localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND",
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
operation: "projects.rest",
|
|
51
|
+
scope: "project",
|
|
52
|
+
plane: "data",
|
|
53
|
+
authModes: ["anon_key", "service_key"],
|
|
54
|
+
defaultAuthMode: "project_credential",
|
|
55
|
+
requiresProjectId: true,
|
|
56
|
+
mayUseLocalCredentialCache: true,
|
|
57
|
+
localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND",
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
operation: "domains.add",
|
|
61
|
+
scope: "project",
|
|
62
|
+
plane: "control",
|
|
63
|
+
authModes: ["principal", "delegate", "service_key"],
|
|
64
|
+
defaultAuthMode: "principal",
|
|
65
|
+
requiresProjectId: true,
|
|
66
|
+
mayUseLocalCredentialCache: false,
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
operation: "domains.list",
|
|
70
|
+
scope: "project",
|
|
71
|
+
plane: "control",
|
|
72
|
+
authModes: ["principal", "delegate", "service_key"],
|
|
73
|
+
defaultAuthMode: "principal",
|
|
74
|
+
requiresProjectId: true,
|
|
75
|
+
mayUseLocalCredentialCache: false,
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
operation: "domains.status",
|
|
79
|
+
scope: "project",
|
|
80
|
+
plane: "control",
|
|
81
|
+
authModes: ["principal", "delegate", "service_key"],
|
|
82
|
+
defaultAuthMode: "principal",
|
|
83
|
+
requiresProjectId: true,
|
|
84
|
+
mayUseLocalCredentialCache: false,
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
operation: "domains.delete",
|
|
88
|
+
scope: "project",
|
|
89
|
+
plane: "control",
|
|
90
|
+
authModes: ["principal", "delegate", "service_key"],
|
|
91
|
+
defaultAuthMode: "principal",
|
|
92
|
+
requiresProjectId: true,
|
|
93
|
+
mayUseLocalCredentialCache: false,
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
operation: "functions.*",
|
|
97
|
+
scope: "project",
|
|
98
|
+
plane: "control",
|
|
99
|
+
authModes: ["service_key"],
|
|
100
|
+
defaultAuthMode: "project_credential",
|
|
101
|
+
requiresProjectId: true,
|
|
102
|
+
mayUseLocalCredentialCache: true,
|
|
103
|
+
localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND",
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
operation: "assets.*",
|
|
107
|
+
scope: "project",
|
|
108
|
+
plane: "data",
|
|
109
|
+
authModes: ["service_key"],
|
|
110
|
+
defaultAuthMode: "project_credential",
|
|
111
|
+
requiresProjectId: true,
|
|
112
|
+
mayUseLocalCredentialCache: true,
|
|
113
|
+
localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND",
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
operation: "jobs.*",
|
|
117
|
+
scope: "project",
|
|
118
|
+
plane: "control",
|
|
119
|
+
authModes: ["service_key"],
|
|
120
|
+
defaultAuthMode: "project_credential",
|
|
121
|
+
requiresProjectId: true,
|
|
122
|
+
mayUseLocalCredentialCache: true,
|
|
123
|
+
localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND",
|
|
124
|
+
},
|
|
125
|
+
];
|
|
126
|
+
export function projectOperationAuthClassification(operation) {
|
|
127
|
+
return PROJECT_OPERATION_AUTH_CLASSIFICATIONS.find((entry) => {
|
|
128
|
+
if (entry.operation === operation)
|
|
129
|
+
return true;
|
|
130
|
+
if (entry.operation.endsWith(".*"))
|
|
131
|
+
return operation.startsWith(entry.operation.slice(0, -1));
|
|
132
|
+
return false;
|
|
133
|
+
}) ?? null;
|
|
134
|
+
}
|
|
135
|
+
//# sourceMappingURL=project-auth-classification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-auth-classification.js","sourceRoot":"","sources":["../src/project-auth-classification.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ProjectKeys } from "./credentials.js";
|
|
2
|
+
import type { Client } from "./kernel.js";
|
|
3
|
+
export declare function requireProjectCredentials(client: Client, projectId: string, context: string): Promise<ProjectKeys>;
|
|
4
|
+
//# sourceMappingURL=project-credentials.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-credentials.d.ts","sourceRoot":"","sources":["../src/project-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAG1C,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,WAAW,CAAC,CAKtB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ProjectCredentialNotFound } from "./errors.js";
|
|
2
|
+
export async function requireProjectCredentials(client, projectId, context) {
|
|
3
|
+
const project = await client.getProjectCredentials(projectId);
|
|
4
|
+
if (project)
|
|
5
|
+
return project;
|
|
6
|
+
const info = client.credentials.getProjectCredentialCacheInfo?.();
|
|
7
|
+
throw new ProjectCredentialNotFound(projectId, context, (info ?? {}));
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=project-credentials.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-credentials.js","sourceRoot":"","sources":["../src/project-credentials.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,MAAc,EACd,SAAiB,EACjB,OAAe;IAEf,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAC9D,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,6BAA6B,EAAE,EAAE,CAAC;IAClE,MAAM,IAAI,yBAAyB,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,EAAE,CAAuC,CAAC,CAAC;AAC9G,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@run402/sdk",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.8.1",
|
|
4
4
|
"description": "Typed TypeScript client for the Run402 API. Kernel shared by the run402-mcp server, the run402 CLI, and user-deployed run402 functions.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|