@astrale-os/sdk 0.5.0-beta.8 → 0.5.0-beta.9
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/cli/run.d.ts +22 -1
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +125 -0
- package/dist/cli/run.js.map +1 -1
- package/dist/deployment/check/check.d.ts +4 -3
- package/dist/deployment/check/check.d.ts.map +1 -1
- package/dist/deployment/check/check.js +16 -7
- package/dist/deployment/check/check.js.map +1 -1
- package/dist/deployment/check/contract.d.ts +9 -4
- package/dist/deployment/check/contract.d.ts.map +1 -1
- package/dist/deployment/check/index.d.ts +2 -2
- package/dist/deployment/check/index.d.ts.map +1 -1
- package/dist/deployment/check/index.js +1 -1
- package/dist/deployment/check/index.js.map +1 -1
- package/dist/deployment/index.d.ts +2 -2
- package/dist/deployment/index.d.ts.map +1 -1
- package/dist/deployment/index.js +1 -1
- package/dist/deployment/index.js.map +1 -1
- package/dist/deployment/provider/adapter.d.ts +3 -0
- package/dist/deployment/provider/adapter.d.ts.map +1 -1
- package/dist/deployment/provider/adapter.js.map +1 -1
- package/dist/invocation/error.d.ts +30 -0
- package/dist/invocation/error.d.ts.map +1 -0
- package/dist/invocation/error.js +62 -0
- package/dist/invocation/error.js.map +1 -0
- package/dist/invocation/handler.d.ts +2 -2
- package/dist/invocation/handler.d.ts.map +1 -1
- package/dist/invocation/handler.js +27 -35
- package/dist/invocation/handler.js.map +1 -1
- package/dist/invocation/index.d.ts +2 -0
- package/dist/invocation/index.d.ts.map +1 -1
- package/dist/invocation/receiver.d.ts.map +1 -1
- package/dist/invocation/receiver.js +2 -2
- package/dist/invocation/receiver.js.map +1 -1
- package/dist/invocation/result.d.ts.map +1 -1
- package/dist/invocation/result.js +6 -10
- package/dist/invocation/result.js.map +1 -1
- package/dist/invocation/selection.d.ts +8 -3
- package/dist/invocation/selection.d.ts.map +1 -1
- package/dist/invocation/selection.js +13 -20
- package/dist/invocation/selection.js.map +1 -1
- package/dist/invocation/target.d.ts +10 -0
- package/dist/invocation/target.d.ts.map +1 -0
- package/dist/invocation/target.js +48 -0
- package/dist/invocation/target.js.map +1 -0
- package/dist/server/index.d.ts +1 -0
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js.map +1 -1
- package/dist/server/remote.d.ts.map +1 -1
- package/dist/server/remote.js +39 -43
- package/dist/server/remote.js.map +1 -1
- package/dist/view/define.js +1 -1
- package/dist/view/define.js.map +1 -1
- package/package.json +1 -3
|
@@ -2,12 +2,12 @@ import type { CredentialInput } from '@astrale-os/kernel-core/auth';
|
|
|
2
2
|
import type { Domain } from '@astrale-os/kernel-core/domain';
|
|
3
3
|
import type { schema } from '@astrale-os/kernel-dsl/v1';
|
|
4
4
|
import type { invocation, publication } from '@astrale-os/kernel-protocol';
|
|
5
|
-
import type { Target } from '@astrale-os/kernel-runtime/functions';
|
|
6
5
|
import type { PublicationSnapshot, Handler, InvocationContext } from '@astrale-os/kernel-server';
|
|
7
6
|
import type { CapabilityProviders, CapabilityRequirements } from '../capability/index.js';
|
|
8
7
|
import type { Deployment } from '../deployment/index.js';
|
|
9
8
|
import type { AuthenticatedCaller, DomainApp, Kernel } from '../domain/index.js';
|
|
10
9
|
import { type WorkflowRunner } from '../workflow/index.js';
|
|
10
|
+
import { type InvocationTarget } from './target.js';
|
|
11
11
|
/** Exact remote-auth input for one already selected served deployment. */
|
|
12
12
|
export interface InvocationAuthenticationInput<S extends schema.DomainSchema> {
|
|
13
13
|
readonly credential: CredentialInput;
|
|
@@ -33,7 +33,7 @@ export interface AuthenticatedInvocation<S extends schema.DomainSchema> {
|
|
|
33
33
|
}
|
|
34
34
|
/** Captured remote-auth and callback-admission capability; it owns no SDK dispatch state. */
|
|
35
35
|
export interface InvocationAuthority<S extends schema.DomainSchema> {
|
|
36
|
-
admit(input: InvocationAdmissionInput<S>): Promise<
|
|
36
|
+
admit(input: InvocationAdmissionInput<S>): Promise<InvocationTarget>;
|
|
37
37
|
authenticate(input: InvocationAuthenticationInput<S>): Promise<AuthenticatedInvocation<S>>;
|
|
38
38
|
}
|
|
39
39
|
/** Resolve the exact SDK deployment associated with one Server-pinned snapshot. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../src/invocation/handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAA;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAC1E,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../src/invocation/handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
import { ResponseError } from '@astrale-os/kernel-client';
|
|
2
1
|
import { grant } from '@astrale-os/kernel-core/auth';
|
|
3
|
-
import {
|
|
4
|
-
import { AuthenticationError } from '@astrale-os/kernel-runtime/authentication';
|
|
5
|
-
import { FunctionError } from '@astrale-os/kernel-runtime/functions';
|
|
2
|
+
import { publication as publicationProtocol } from '@astrale-os/kernel-protocol';
|
|
6
3
|
import { bindCapabilityProviders } from '../capability/client.js';
|
|
7
4
|
import { bindMutations } from '../mutation/index.js';
|
|
8
5
|
import { bindQueries } from '../query/index.js';
|
|
9
6
|
import { createInlineWorkflowRunner, isTriggeredHandler, isWorkflowBinding, } from '../workflow/index.js';
|
|
10
7
|
import { createInlineStep } from '../workflow/step/index.js';
|
|
8
|
+
import { InvocationInternalError, projectClientError, protocolError } from './error.js';
|
|
11
9
|
import { createReceiver } from './receiver.js';
|
|
12
10
|
import { projectInvocationResult } from './result.js';
|
|
13
11
|
import { isInstanceMethod, selectInvocation, validateInvocationInput, } from './selection.js';
|
|
12
|
+
import { acceptInvocationTarget } from './target.js';
|
|
14
13
|
const AUTHENTICATED_FIELDS = new Set(['caller', 'app', 'kernel']);
|
|
15
14
|
const CALLER_FIELDS = new Set(['kind', 'principal', 'authority', 'authentication']);
|
|
16
15
|
const ANONYMOUS = Object.freeze({
|
|
@@ -70,36 +69,29 @@ async function dispatchInvocation(request, deploymentFor, deps, capabilityClient
|
|
|
70
69
|
const snapshot = requireSnapshot(request);
|
|
71
70
|
const deployment = deploymentFor(snapshot);
|
|
72
71
|
if (deployment === undefined) {
|
|
73
|
-
throw new
|
|
72
|
+
throw new InvocationInternalError('FUNCTION_DEPLOYMENT_MISSING', 'No SDK deployment is associated with the pinned Publication snapshot.');
|
|
74
73
|
}
|
|
75
74
|
if (!publicationProtocol.matchesReference(snapshot.publication, publicationProtocol.reference(deployment.publication))) {
|
|
76
|
-
throw new
|
|
75
|
+
throw new InvocationInternalError('FUNCTION_DEPLOYMENT_MISMATCH', 'Pinned Publication snapshot does not match the selected SDK deployment.');
|
|
77
76
|
}
|
|
78
77
|
if (request.via === undefined) {
|
|
79
|
-
throw
|
|
78
|
+
throw protocolError('VALIDATION_ERROR', 'Remote invocation requires Via.');
|
|
80
79
|
}
|
|
81
80
|
if (request.credential !== undefined && typeof request.credential !== 'string') {
|
|
82
|
-
throw
|
|
81
|
+
throw protocolError('AUTH_INVALID', 'Credential is invalid.');
|
|
83
82
|
}
|
|
84
83
|
requireLive(request.context);
|
|
85
|
-
const target = await admit({
|
|
84
|
+
const target = acceptInvocationTarget(await admit({
|
|
86
85
|
call: request.call,
|
|
87
86
|
...(request.credential === undefined ? {} : { credential: request.credential }),
|
|
88
87
|
via: request.via,
|
|
89
88
|
publication: deployment.publication,
|
|
90
89
|
domain: deployment.definition.domain,
|
|
91
90
|
context: request.context,
|
|
92
|
-
});
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
selected
|
|
96
|
-
}
|
|
97
|
-
catch (cause) {
|
|
98
|
-
if (cause instanceof FunctionError && cause.code === 'FUNCTION_MISS') {
|
|
99
|
-
return Object.freeze({ kind: 'miss' });
|
|
100
|
-
}
|
|
101
|
-
throw cause;
|
|
102
|
-
}
|
|
91
|
+
}));
|
|
92
|
+
const selected = selectInvocation(deployment, target);
|
|
93
|
+
if ('kind' in selected)
|
|
94
|
+
return selected;
|
|
103
95
|
validateInvocationInput(selected, request.call.input);
|
|
104
96
|
const authority = await authorityFor(selected.callable.definition.auth, request, deployment, authenticate);
|
|
105
97
|
requireLive(request.context);
|
|
@@ -136,13 +128,10 @@ async function dispatchInvocation(request, deploymentFor, deps, capabilityClient
|
|
|
136
128
|
: await (isTriggeredHandler(implementation) ? implementation.handler : implementation)(context);
|
|
137
129
|
}
|
|
138
130
|
catch (cause) {
|
|
139
|
-
|
|
131
|
+
const projected = projectClientError(cause);
|
|
132
|
+
if (projected === undefined)
|
|
140
133
|
throw cause;
|
|
141
|
-
throw
|
|
142
|
-
code: cause.code,
|
|
143
|
-
message: cause.message,
|
|
144
|
-
...(cause.data === undefined ? {} : { data: cause.data }),
|
|
145
|
-
});
|
|
134
|
+
throw projected;
|
|
146
135
|
}
|
|
147
136
|
return projectInvocationResult(selected, output);
|
|
148
137
|
}
|
|
@@ -177,7 +166,7 @@ function workflowCapabilities(deps, capabilities) {
|
|
|
177
166
|
}
|
|
178
167
|
function runWorkflow(workflow, request, callable, receiver, authority, capabilities, runner) {
|
|
179
168
|
if (authority.query === null || authority.mutate === null) {
|
|
180
|
-
throw
|
|
169
|
+
throw protocolError('AUTH_MISSING', 'Authentication is required.');
|
|
181
170
|
}
|
|
182
171
|
return runner.run(workflow, {
|
|
183
172
|
input: request.call.input,
|
|
@@ -202,7 +191,7 @@ async function authorityFor(mode, request, deployment, authenticate) {
|
|
|
202
191
|
return ANONYMOUS;
|
|
203
192
|
}
|
|
204
193
|
if (request.credential === undefined) {
|
|
205
|
-
throw
|
|
194
|
+
throw protocolError('AUTH_MISSING', 'Authentication is required.');
|
|
206
195
|
}
|
|
207
196
|
requireLive(request.context);
|
|
208
197
|
const result = await authenticate({
|
|
@@ -213,9 +202,9 @@ async function authorityFor(mode, request, deployment, authenticate) {
|
|
|
213
202
|
context: request.context,
|
|
214
203
|
});
|
|
215
204
|
requireLive(request.context);
|
|
216
|
-
return admitAuthenticatedInvocation(result, deployment.definition.domain, request.context.execution.signal);
|
|
205
|
+
return admitAuthenticatedInvocation(result, deployment.definition.domain, request.context.execution.signal, request.context.idempotencyKey);
|
|
217
206
|
}
|
|
218
|
-
function admitAuthenticatedInvocation(input, domain, signal) {
|
|
207
|
+
function admitAuthenticatedInvocation(input, domain, signal, idempotencyKey) {
|
|
219
208
|
if (input === null || typeof input !== 'object' || Array.isArray(input)) {
|
|
220
209
|
return invalidAuthority('Remote authentication result is invalid.');
|
|
221
210
|
}
|
|
@@ -267,23 +256,26 @@ function admitAuthenticatedInvocation(input, domain, signal) {
|
|
|
267
256
|
query: bindQueries((ast, options) => kernel.query(ast, { signal, page: options.page }), {
|
|
268
257
|
bind: app.$.bind,
|
|
269
258
|
}),
|
|
270
|
-
mutate: bindMutations((ast) => kernel.mutate(ast, {
|
|
259
|
+
mutate: bindMutations((ast) => kernel.mutate(ast, {
|
|
260
|
+
signal,
|
|
261
|
+
...(idempotencyKey === undefined ? {} : { idempotencyKey }),
|
|
262
|
+
})),
|
|
271
263
|
});
|
|
272
264
|
}
|
|
273
265
|
function invalidAuthority(message) {
|
|
274
|
-
throw new
|
|
266
|
+
throw new InvocationInternalError('INVOCATION_RESULT_CONTRACT_VIOLATION', message);
|
|
275
267
|
}
|
|
276
268
|
function requireSnapshot(request) {
|
|
277
269
|
if (request.publication !== undefined)
|
|
278
270
|
return request.publication;
|
|
279
|
-
throw new
|
|
271
|
+
throw new InvocationInternalError('FUNCTION_DEPLOYMENT_MISSING', 'SDK invocation requires a Server-pinned Publication snapshot.');
|
|
280
272
|
}
|
|
281
273
|
function requireLive(context) {
|
|
282
274
|
if (context.execution.signal.aborted) {
|
|
283
|
-
throw
|
|
275
|
+
throw protocolError('CANCELLED', 'Invocation was cancelled.');
|
|
284
276
|
}
|
|
285
277
|
if (Date.now() >= context.execution.deadline) {
|
|
286
|
-
throw
|
|
278
|
+
throw protocolError('DEADLINE_EXCEEDED', 'Invocation deadline was exceeded.');
|
|
287
279
|
}
|
|
288
280
|
}
|
|
289
281
|
//# sourceMappingURL=handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../src/invocation/handler.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AACpD,OAAO,EAAE,MAAM,EAAE,WAAW,IAAI,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACxF,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAA;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAA;AAWpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,EAClB,iBAAiB,GAElB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAEhB,uBAAuB,GACxB,MAAM,gBAAgB,CAAA;AAoEvB,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAc,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;AAC9E,MAAM,aAAa,GAAG,IAAI,GAAG,CAAc,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAA;AAChG,MAAM,SAAS,GAAwB,MAAM,CAAC,MAAM,CAAC;IACnD,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IAC5C,GAAG,EAAE,IAAI;IACT,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;CACb,CAAC,CAAA;AAEF,sFAAsF;AACtF,MAAM,UAAU,uBAAuB,CAKrC,KAAuE;IACvE,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAA;IACpE,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAc;QAClC,eAAe;QACf,MAAM;QACN,cAAc;QACd,WAAW;QACX,WAAW;QACX,gBAAgB;KACjB,CAAC,CAAA;IACF,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IACnC,IACE,CAAC,CAAC,eAAe,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CACjF,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAC1B;QACD,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EACpC,CAAC;QACD,MAAM,IAAI,SAAS,CACjB,oIAAoI,CACrI,CAAA;IACH,CAAC;IACD,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAA;IACzC,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;IACjC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;IACvB,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;IACtF,MAAM,cAAc,GAAG,KAAK,CAAC,cAAc,IAAI,0BAA0B,EAAE,CAAA;IAC3E,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE,CAAC;QACxC,MAAM,IAAI,SAAS,CAAC,oDAAoD,CAAC,CAAA;IAC3E,CAAC;IACD,MAAM,UAAU,GAAG,SAAS,EAAE,KAAK,CAAA;IACnC,MAAM,iBAAiB,GAAG,SAAS,EAAE,YAAY,CAAA;IACjD,IACE,SAAS,KAAK,IAAI;QAClB,OAAO,SAAS,KAAK,QAAQ;QAC7B,OAAO,UAAU,KAAK,UAAU;QAChC,OAAO,iBAAiB,KAAK,UAAU,EACvC,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAA;IACpE,CAAC;IACD,IACE,cAAc,KAAK,IAAI;QACvB,OAAO,cAAc,KAAK,QAAQ;QAClC,OAAO,cAAc,CAAC,GAAG,KAAK,UAAU,EACxC,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,mDAAmD,CAAC,CAAA;IAC1E,CAAC;IAED,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACxC,MAAM,YAAY,GAAG,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACtD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,QAAQ,EAAE,CAAC,OAAuB,EAAE,EAAE,CACpC,kBAAkB,CAChB,OAAO,EACP,aAAa,EACb,IAAI,EACJ,iBAAiB,EACjB,KAAK,EACL,YAAY,EACZ,cAAc,CACf;KACJ,CAAC,CAAA;AACJ,CAAC;AAED,KAAK,UAAU,kBAAkB,CAM/B,OAAuB,EACvB,aAAkD,EAClD,IAAU,EACV,iBAAwD,EACxD,KAAsC,EACtC,YAAoD,EACpD,cAA8B;IAE9B,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC5B,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;IACzC,MAAM,UAAU,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;IAC1C,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,IAAI,aAAa,CACrB,0BAA0B,EAC1B,uEAAuE,CACxE,CAAA;IACH,CAAC;IACD,IACE,CAAC,mBAAmB,CAAC,gBAAgB,CACnC,QAAQ,CAAC,WAAW,EACpB,mBAAmB,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,CACtD,EACD,CAAC;QACD,MAAM,IAAI,aAAa,CACrB,0BAA0B,EAC1B,yEAAyE,CAC1E,CAAA;IACH,CAAC;IAED,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,IAAI,aAAa,CAAC,6BAA6B,EAAE,iCAAiC,CAAC,CAAA;IAC3F,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC/E,MAAM,IAAI,mBAAmB,CAAC,oBAAoB,EAAE,0CAA0C,CAAC,CAAA;IACjG,CAAC;IACD,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC5B,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC;QACzB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;QAC/E,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,MAAM;QACpC,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAA;IACF,IAAI,QAA+B,CAAA;IACnC,IAAI,CAAC;QACH,QAAQ,GAAG,gBAAgB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,aAAa,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACrE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,CAAC,CAAA;QACjD,CAAC;QACD,MAAM,KAAK,CAAA;IACb,CAAC;IACD,uBAAuB,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACrD,MAAM,SAAS,GAAG,MAAM,YAAY,CAClC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EACjC,OAAO,EACP,UAAU,EACV,YAAY,CACb,CAAA;IAED,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC5B,MAAM,IAAI,GAAG,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC9C,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,MAAM,CAAC;QAC3D,CAAC,CAAC,SAAS,CAAA;IACb,MAAM,YAAY,GAAG,iBAAiB,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;IACxE,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK;QACzB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,MAAM,EAAE,SAAS,CAAC,MAAM;QACxB,GAAG,EAAE,SAAS,CAAC,GAAG;QAClB,MAAM,EAAE,SAAS,CAAC,MAAM;QACxB,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,MAAM,EAAE,SAAS,CAAC,MAAM;QACxB,IAAI;QACJ,YAAY;QACZ,IAAI,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;QACpE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM;QACxC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ;QAC5C,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS;YAC9C,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QACvD,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU;QACtC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK;QAC5B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACtF,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;KACxC,CAAC,CAAA;IAEF,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAA;IACvC,IAAI,MAAM,CAAA;IACV,IAAI,CAAC;QACH,MAAM,GAAG,iBAAiB,CAAC,cAAc,CAAC;YACxC,CAAC,CAAC,MAAM,WAAW,CACf,cAAc,CAAC,QAAQ,EACvB,OAAO,EACP,QAAQ,CAAC,MAAM,CAAC,QAAQ,EACxB,QAAQ,CAAC,QAAQ,EACjB,SAAS,EACT,oBAAoB,CAAC,IAAI,EAAE,YAAY,CAAC,EACxC,cAAc,CACf;YACH,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAClF,OAAO,CACR,CAAA;IACP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,CAAC,KAAK,YAAY,aAAa,CAAC;YAAE,MAAM,KAAK,CAAA;QAClD,MAAM,IAAI,MAAM,CAAC,aAAa,CAAC;YAC7B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;SAC1D,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;AAClD,CAAC;AAED,SAAS,eAAe,CAAC,OAA0B;IACjD,MAAM,UAAU,GACd,OAAO,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAA;IAChG,IAAI,QAAQ,GAAG,CAAC,CAAA;IAChB,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,MAAM,CAAS,IAA+B;YAC5C,WAAW,CAAC,OAAO,CAAC,CAAA;YACpB,QAAQ,IAAI,CAAC,CAAA;YACb,OAAO,IAAI,CAAC,OAAO,CAAC;gBAClB,MAAM,EAAE,GAAG,UAAU,IAAI,QAAQ,EAAE;gBACnC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM;gBAChC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,QAAQ;aACrC,CAAC,CAAA;QACJ,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,IAAa,EACb,YAA+C;IAE/C,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IACjD,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAC7C,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACrE,MAAM,IAAI,SAAS,CAAC,yEAAyE,CAAC,CAAA;IAChG,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;QACnC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,SAAS,CAAC,uBAAuB,IAAI,2CAA2C,CAAC,CAAA;QAC7F,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAA;AAC9E,CAAC;AAED,SAAS,WAAW,CAClB,QAA8C,EAC9C,OAAuB,EACvB,QAAqD,EACrD,QAA2C,EAC3C,SAAmE,EACnE,YAAqB,EACrB,MAAsB;IAEtB,IAAI,SAAS,CAAC,KAAK,KAAK,IAAI,IAAI,SAAS,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QAC1D,MAAM,IAAI,mBAAmB,CAAC,SAAS,EAAE,8CAA8C,CAAC,CAAA;IAC1F,CAAC;IACD,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE;QAC1B,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK;QACzB,YAAY;QACZ,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,MAAM,EAAE,SAAS,CAAC,MAAM;QACxB,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS;QACpC,UAAU,EAAE;YACV,IAAI,EAAE,MAAM;YACZ,QAAQ;YACR,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,SAAS;YACrC,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,SAAS;YACrC,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;YAC/C,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS;gBAC9C,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;SACxD;KACF,CAAC,CAAA;AACJ,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,IAAyB,EACzB,OAAuB,EACvB,UAA4C,EAC5C,YAAoD;IAEpD,IAAI,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7D,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACrC,MAAM,IAAI,mBAAmB,CAAC,SAAS,EAAE,6BAA6B,CAAC,CAAA;IACzE,CAAC;IAED,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC5B,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;QAChC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,GAAG,EAAE,OAAO,CAAC,GAAI;QACjB,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,MAAM;QACpC,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAA;IACF,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC5B,OAAO,4BAA4B,CACjC,MAAM,EACN,UAAU,CAAC,UAAU,CAAC,MAAM,EAC5B,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CACjC,CAAA;AACH,CAAC;AAED,SAAS,4BAA4B,CACnC,KAAiC,EACjC,MAAiB,EACjB,MAAmB;IAEnB,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,OAAO,gBAAgB,CAAC,0CAA0C,CAAC,CAAA;IACrE,CAAC;IACD,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACzE,OAAO,gBAAgB,CAAC,yDAAyD,CAAC,CAAA;IACpF,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;IAC3B,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;IACrB,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;IAC3B,MAAM,SAAS,GAAG,MAAM,EAAE,SAAS,CAAA;IACnC,IAAI,eAAe,CAAA;IACnB,IAAI,CAAC;QACH,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,gBAAgB,CAAC,4DAA4D,CAAC,CAAA;IACvF,CAAC;IACD,MAAM,cAAc,GAAG,MAAM,EAAE,cAAc,CAAA;IAC7C,IACE,MAAM,KAAK,IAAI;QACf,OAAO,MAAM,KAAK,QAAQ;QAC1B,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QACrB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9D,MAAM,CAAC,IAAI,KAAK,eAAe;QAC/B,OAAO,SAAS,KAAK,QAAQ;QAC7B,cAAc,KAAK,IAAI;QACvB,OAAO,cAAc,KAAK,QAAQ;QAClC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC;QAC7B,GAAG,KAAK,IAAI;QACZ,OAAO,GAAG,KAAK,QAAQ;QACvB,OAAO,GAAG,CAAC,CAAC,KAAK,QAAQ;QACzB,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU;QAChC,OAAO,GAAG,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU;QAClC,MAAM,KAAK,IAAI;QACf,OAAO,MAAM,KAAK,QAAQ,EAC1B,CAAC;QACD,OAAO,gBAAgB,CAAC,6CAA6C,CAAC,CAAA;IACxE,CAAC;IACD,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC7E,OAAO,gBAAgB,CAAC,+DAA+D,CAAC,CAAA;IAC1F,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;YACpB,IAAI,EAAE,eAAe;YACrB,SAAS;YACT,SAAS,EAAE,eAAe;YAC1B,cAAc;SACf,CAAC;QACF,GAAG;QACH,MAAM;QACN,KAAK,EAAE,WAAW,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE;YACtF,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI;SACjB,CAAC;QACF,MAAM,EAAE,aAAa,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;KAC/D,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe;IACvC,MAAM,IAAI,aAAa,CAAC,2BAA2B,EAAE,OAAO,CAAC,CAAA;AAC/D,CAAC;AAED,SAAS,eAAe,CAAC,OAAuB;IAC9C,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC,WAAW,CAAA;IACjE,MAAM,IAAI,aAAa,CACrB,0BAA0B,EAC1B,+DAA+D,CAChE,CAAA;AACH,CAAC;AAED,SAAS,WAAW,CAAC,OAA0B;IAC7C,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACrC,MAAM,IAAI,aAAa,CAAC,oBAAoB,EAAE,oCAAoC,CAAC,CAAA;IACrF,CAAC;IACD,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC7C,MAAM,IAAI,aAAa,CACrB,4BAA4B,EAC5B,4CAA4C,CAC7C,CAAA;IACH,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../src/invocation/handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
export { createInvocationHandler } from './handler.js';
|
|
2
|
+
export type { FunctionInputDiagnostic, FunctionInputValidationDetails, FunctionInputValidationReason, } from './error.js';
|
|
3
|
+
export type { InvocationTarget } from './target.js';
|
|
2
4
|
export type { AuthenticatedInvocation, CreateInvocationHandlerInput, DeploymentFor, InvocationAdmissionInput, InvocationAuthenticationInput, InvocationAuthority, } from './handler.js';
|
|
3
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/invocation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AACtD,YAAY,EACV,uBAAuB,EACvB,4BAA4B,EAC5B,aAAa,EACb,wBAAwB,EACxB,6BAA6B,EAC7B,mBAAmB,GACpB,MAAM,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/invocation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AACtD,YAAY,EACV,uBAAuB,EACvB,8BAA8B,EAC9B,6BAA6B,GAC9B,MAAM,YAAY,CAAA;AACnB,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACnD,YAAY,EACV,uBAAuB,EACvB,4BAA4B,EAC5B,aAAa,EACb,wBAAwB,EACxB,6BAA6B,EAC7B,mBAAmB,GACpB,MAAM,cAAc,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"receiver.d.ts","sourceRoot":"","sources":["../../src/invocation/receiver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"receiver.d.ts","sourceRoot":"","sources":["../../src/invocation/receiver.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAEvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AACrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAA;AAIpF,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,CAAC,YAAY,EAC1D,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAC/B,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,EACxB,MAAM,EAAE,MAAM,GAAG,IAAI,GACpB,QAAQ,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CA2CzC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { protocolError } from './error.js';
|
|
2
2
|
export function createReceiver(selected, app, kernel) {
|
|
3
3
|
const path = selected.receiver;
|
|
4
4
|
const definition = selected.receiverDefinition;
|
|
@@ -65,6 +65,6 @@ function receiverCalls(definition, path, app) {
|
|
|
65
65
|
return Object.freeze(calls);
|
|
66
66
|
}
|
|
67
67
|
function missingAuthority() {
|
|
68
|
-
return
|
|
68
|
+
return protocolError('AUTH_MISSING', 'Receiver operations require an authenticated caller-bound application.');
|
|
69
69
|
}
|
|
70
70
|
//# sourceMappingURL=receiver.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"receiver.js","sourceRoot":"","sources":["../../src/invocation/receiver.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"receiver.js","sourceRoot":"","sources":["../../src/invocation/receiver.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE1C,MAAM,UAAU,cAAc,CAC5B,QAA+B,EAC/B,GAAwB,EACxB,MAAqB;IAErB,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAA;IAC9B,MAAM,UAAU,GAAG,QAAQ,CAAC,kBAAkB,CAAA;IAC9C,IAAI,IAAI,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACnD,MAAM,IAAI,SAAS,CAAC,uDAAuD,CAAC,CAAA;IAC9E,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAClD,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAEpC,IAAI,MAA2E,CAAA;IAC/E,MAAM,IAAI,GAAG,CACX,OAAO,GAAkC,EAAE,EACc,EAAE;QAC3D,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9E,MAAM,IAAI,SAAS,CAAC,oCAAoC,CAAC,CAAA;QAC3D,CAAC;QACD,IACE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,QAAQ,CAAC;YACxD,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,EACrE,CAAC;YACD,MAAM,IAAI,SAAS,CAAC,oCAAoC,CAAC,CAAA;QAC3D,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI;YAAE,MAAM,GAAG,SAAS,CAAA;QAC/C,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,MAAM,CAAA;QACvC,IAAI,IAAI,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAA;QAE7F,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC;aAC7B,IAAI,CAAC,CAAC,KAAW,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;aAC9C,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YACxB,IAAI,MAAM,KAAK,OAAO;gBAAE,MAAM,GAAG,SAAS,CAAA;YAC1C,MAAM,KAAK,CAAA;QACb,CAAC,CAAC,CAAA;QACJ,MAAM,GAAG,OAAO,CAAA;QAChB,OAAO,OAAO,CAAA;IAChB,CAAC,CAAA;IAED,MAAM,IAAI,GAAG,aAAa,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IACjD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,IAAI;QACJ,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxC,IAAI;QACJ,IAAI;KACL,CAA4C,CAAA;AAC/C,CAAC;AAED,SAAS,aAAa,CACpB,UAAyC,EACzC,IAAU,EACV,GAAwB;IAExB,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACxC,MAAM,OAAO,GAAG,IAAI,GAAG,EAA4B,CAAA;IACnD,KAAK,MAAM,MAAM,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QACjD,IAAI,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,WAAW,KAAK,UAAU;YAAE,SAAQ;QAC/E,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC3C,IAAI,UAAU,KAAK,SAAS;YAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;;YAC3D,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC9B,CAAC;IAED,MAAM,KAAK,GAAyD,EAAE,CAAA;IACtE,KAAK,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,OAAO,EAAE,CAAC;QACzC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,SAAQ;QACrC,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAE,CAAA;QAC7B,KAAK,CAAC,IAAI,CAAC;YACT,MAAM,KAAK,SAAS;gBAClB,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;gBAC1C,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,MAAe,EAAE,IAAI,EAAE,KAAc,CAAC,CAAA;IAChE,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAC7B,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO,aAAa,CAClB,cAAc,EACd,wEAAwE,CACzE,CAAA;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../src/invocation/result.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAEvD,OAAO,KAAK,EAAE,aAAa,EAAiB,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../src/invocation/result.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAEvD,OAAO,KAAK,EAAE,aAAa,EAAiB,MAAM,2BAA2B,CAAA;AAI7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAQxD,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,MAAM,CAAC,YAAY,EACnE,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAC/B,MAAM,EAAE,OAAO,GACd,aAAa,CASf"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as portable from '@astrale-os/kernel-dsl/value';
|
|
2
|
-
import {
|
|
2
|
+
import { InvocationInternalError } from './error.js';
|
|
3
3
|
const MEDIA_TYPE = /^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/u;
|
|
4
4
|
const HEADER_NAME = /^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/u;
|
|
5
5
|
const BINARY_FIELDS = new Set(['body', 'mediaType', 'headers']);
|
|
@@ -20,25 +20,21 @@ function admitOutput(selected, input) {
|
|
|
20
20
|
}
|
|
21
21
|
catch (cause) {
|
|
22
22
|
if (cause instanceof portable.BoundaryError) {
|
|
23
|
-
throw new
|
|
24
|
-
cause,
|
|
25
|
-
});
|
|
23
|
+
throw new InvocationInternalError('INVOCATION_OUTPUT_INVALID', 'Function output is not portable.', { cause });
|
|
26
24
|
}
|
|
27
25
|
throw cause;
|
|
28
26
|
}
|
|
29
27
|
const result = selected.domain.$.validate.output(selected.callable.key, value);
|
|
30
28
|
if (result.status === 'pass')
|
|
31
29
|
return value;
|
|
32
|
-
throw new
|
|
33
|
-
details: { diagnostics: result.diagnostics },
|
|
34
|
-
});
|
|
30
|
+
throw new InvocationInternalError('INVOCATION_OUTPUT_INVALID', 'Function output is invalid.');
|
|
35
31
|
}
|
|
36
32
|
function createStream(selected, input) {
|
|
37
33
|
if (input === null ||
|
|
38
34
|
(typeof input !== 'object' && typeof input !== 'function') ||
|
|
39
35
|
typeof input[Symbol.asyncIterator] !==
|
|
40
36
|
'function') {
|
|
41
|
-
throw new
|
|
37
|
+
throw new InvocationInternalError('INVOCATION_OUTPUT_INVALID', 'Streaming Function output must be an AsyncIterable.');
|
|
42
38
|
}
|
|
43
39
|
const source = input;
|
|
44
40
|
return new InvocationStream(source[Symbol.asyncIterator](), (value) => admitOutput(selected, value));
|
|
@@ -55,7 +51,7 @@ class InvocationStream {
|
|
|
55
51
|
}
|
|
56
52
|
[Symbol.asyncIterator]() {
|
|
57
53
|
if (this.consumed) {
|
|
58
|
-
throw new
|
|
54
|
+
throw new InvocationInternalError('INVOCATION_RESULT_CONTRACT_VIOLATION', 'Function stream supports exactly one consumer.');
|
|
59
55
|
}
|
|
60
56
|
this.consumed = true;
|
|
61
57
|
return Object.freeze({
|
|
@@ -141,6 +137,6 @@ function admitHeaders(input) {
|
|
|
141
137
|
return Object.keys(headers).length === 0 ? undefined : Object.freeze(headers);
|
|
142
138
|
}
|
|
143
139
|
function invalidBinary(message) {
|
|
144
|
-
throw new
|
|
140
|
+
throw new InvocationInternalError('INVOCATION_OUTPUT_INVALID', message);
|
|
145
141
|
}
|
|
146
142
|
//# sourceMappingURL=result.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"result.js","sourceRoot":"","sources":["../../src/invocation/result.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAA;
|
|
1
|
+
{"version":3,"file":"result.js","sourceRoot":"","sources":["../../src/invocation/result.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,20 +2,25 @@ import type { Call } from '@astrale-os/kernel-client';
|
|
|
2
2
|
import type { Definition, Domain, InstanceMethod, NodeDefinitionOf, StaticMethod } from '@astrale-os/kernel-core/domain';
|
|
3
3
|
import type { Path as RichPath } from '@astrale-os/kernel-core/path';
|
|
4
4
|
import type { schema } from '@astrale-os/kernel-dsl/v1';
|
|
5
|
-
import type {
|
|
5
|
+
import type { HandlerResult } from '@astrale-os/kernel-server';
|
|
6
6
|
import type { Deployment } from '../deployment/index.js';
|
|
7
7
|
import type { RuntimeHandlerImplementation } from '../domain/index.js';
|
|
8
|
+
import type { InvocationTarget } from './target.js';
|
|
8
9
|
type SelectedCallable = Definition<'function'> | StaticMethod | InstanceMethod;
|
|
9
10
|
export type SelectedReceiverDefinition<S extends schema.DomainSchema> = Definition<'class' | 'interface'> & NodeDefinitionOf<S>;
|
|
10
11
|
export interface SelectedInvocation<S extends schema.DomainSchema = schema.DomainSchema> {
|
|
11
12
|
readonly domain: Domain<S>;
|
|
12
13
|
readonly callable: SelectedCallable;
|
|
13
14
|
readonly handler: RuntimeHandlerImplementation;
|
|
14
|
-
readonly target:
|
|
15
|
+
readonly target: InvocationTarget;
|
|
15
16
|
readonly receiver?: RichPath;
|
|
16
17
|
readonly receiverDefinition?: SelectedReceiverDefinition<S>;
|
|
17
18
|
}
|
|
18
|
-
export
|
|
19
|
+
export type InvocationMiss = Extract<HandlerResult, {
|
|
20
|
+
readonly kind: 'miss';
|
|
21
|
+
}>;
|
|
22
|
+
export type InvocationSelection<S extends schema.DomainSchema = schema.DomainSchema> = SelectedInvocation<S> | InvocationMiss;
|
|
23
|
+
export declare function selectInvocation<S extends schema.DomainSchema, Environment, Deps>(deployment: Deployment<S, Environment, Deps>, target: InvocationTarget): InvocationSelection<S>;
|
|
19
24
|
export declare function isInstanceMethod(callable: SelectedCallable): callable is InstanceMethod;
|
|
20
25
|
export declare function validateInvocationInput<S extends schema.DomainSchema>(selected: SelectedInvocation<S>, input: Call['input']): void;
|
|
21
26
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selection.d.ts","sourceRoot":"","sources":["../../src/invocation/selection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,KAAK,EACV,UAAU,EACV,MAAM,EACN,cAAc,EACd,gBAAgB,EAChB,YAAY,EACb,MAAM,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"selection.d.ts","sourceRoot":"","sources":["../../src/invocation/selection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,KAAK,EACV,UAAU,EACV,MAAM,EACN,cAAc,EACd,gBAAgB,EAChB,YAAY,EACb,MAAM,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAI9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAA;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAKnD,KAAK,gBAAgB,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,YAAY,GAAG,cAAc,CAAA;AAE9E,MAAM,MAAM,0BAA0B,CAAC,CAAC,SAAS,MAAM,CAAC,YAAY,IAAI,UAAU,CAChF,OAAO,GAAG,WAAW,CACtB,GACC,gBAAgB,CAAC,CAAC,CAAC,CAAA;AAErB,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY;IACrF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;IAC1B,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAA;IACnC,QAAQ,CAAC,OAAO,EAAE,4BAA4B,CAAA;IAC9C,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAA;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IAC5B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,0BAA0B,CAAC,CAAC,CAAC,CAAA;CAC5D;AAED,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC,aAAa,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AAC9E,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,IAC/E,kBAAkB,CAAC,CAAC,CAAC,GACrB,cAAc,CAAA;AAwBlB,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,YAAY,EAAE,WAAW,EAAE,IAAI,EAC/E,UAAU,EAAE,UAAU,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,EAC5C,MAAM,EAAE,gBAAgB,GACvB,mBAAmB,CAAC,CAAC,CAAC,CAgCxB;AAsGD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,QAAQ,IAAI,cAAc,CAEvF;AAED,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,MAAM,CAAC,YAAY,EACnE,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAC/B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,GACnB,IAAI,CAIN"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { Path } from '@astrale-os/kernel-core/path';
|
|
2
|
-
import { FunctionError } from '@astrale-os/kernel-runtime/functions';
|
|
3
2
|
import { isTriggeredHandler, isWorkflowBinding } from '../workflow/index.js';
|
|
3
|
+
import { functionInputValidationError, InvocationInternalError } from './error.js';
|
|
4
4
|
const indexes = new WeakMap();
|
|
5
|
+
const MISS = Object.freeze({ kind: 'miss' });
|
|
5
6
|
export function selectInvocation(deployment, target) {
|
|
6
7
|
const index = indexFor(deployment);
|
|
7
|
-
const entry =
|
|
8
|
-
if (!index.local.has(entry.callable.key))
|
|
9
|
-
|
|
10
|
-
}
|
|
8
|
+
const entry = index.byKey.get(target.callable);
|
|
9
|
+
if (entry === undefined || !index.local.has(entry.callable.key))
|
|
10
|
+
return MISS;
|
|
11
11
|
const instance = isInstanceMethod(entry.callable);
|
|
12
12
|
if (instance !== (target.receiver !== undefined)) {
|
|
13
|
-
throw new
|
|
13
|
+
throw new InvocationInternalError('INVOCATION_TARGET_INVALID', instance
|
|
14
14
|
? 'Instance Method target requires a receiver.'
|
|
15
15
|
: 'Function or static Method target forbids a receiver.');
|
|
16
16
|
}
|
|
@@ -46,7 +46,7 @@ function indexFor(deployment) {
|
|
|
46
46
|
const local = new Set(deployment.localCallables);
|
|
47
47
|
for (const callable of local) {
|
|
48
48
|
if (!byKey.has(callable)) {
|
|
49
|
-
throw new
|
|
49
|
+
throw new InvocationInternalError('FUNCTION_HANDLER_INVALID', 'Deployment local placement has no admitted SDK handler.');
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
52
|
const created = Object.freeze({ byKey, byPath, local });
|
|
@@ -63,21 +63,21 @@ function addDefinitionEntries(byKey, byPath, domain, kind, handlers) {
|
|
|
63
63
|
}
|
|
64
64
|
function addEntry(byKey, byPath, callable, handler) {
|
|
65
65
|
if (byKey.has(callable.key)) {
|
|
66
|
-
throw new
|
|
66
|
+
throw new InvocationInternalError('FUNCTION_HANDLER_INVALID', 'Callable handler occurs more than once.');
|
|
67
67
|
}
|
|
68
68
|
if ((isWorkflowBinding(handler) || isTriggeredHandler(handler)) &&
|
|
69
69
|
(!('key' in handler.callable) || handler.callable.key !== callable.key)) {
|
|
70
|
-
throw new
|
|
70
|
+
throw new InvocationInternalError('FUNCTION_HANDLER_INVALID', 'Callable binding targets a different rich callable.');
|
|
71
71
|
}
|
|
72
72
|
const entry = Object.freeze({ callable, handler });
|
|
73
73
|
byKey.set(callable.key, entry);
|
|
74
74
|
if ('path' in callable) {
|
|
75
75
|
const callablePath = callable.path;
|
|
76
76
|
if (callablePath === undefined) {
|
|
77
|
-
throw new
|
|
77
|
+
throw new InvocationInternalError('FUNCTION_HANDLER_INVALID', 'Receiver-free callable has no canonical path.');
|
|
78
78
|
}
|
|
79
79
|
if (byPath.has(callablePath.raw)) {
|
|
80
|
-
throw new
|
|
80
|
+
throw new InvocationInternalError('FUNCTION_HANDLER_INVALID', 'Callable path occurs more than once.');
|
|
81
81
|
}
|
|
82
82
|
byPath.set(callablePath.raw, entry);
|
|
83
83
|
}
|
|
@@ -86,12 +86,7 @@ function requireNodeDefinition(input) {
|
|
|
86
86
|
if ((input.kind === 'class' || input.kind === 'interface') && input.family === 'node') {
|
|
87
87
|
return input;
|
|
88
88
|
}
|
|
89
|
-
throw new
|
|
90
|
-
}
|
|
91
|
-
function requireCallable(input, message, code = 'FUNCTION_UNAVAILABLE') {
|
|
92
|
-
if (input !== undefined)
|
|
93
|
-
return input;
|
|
94
|
-
throw new FunctionError(code, message);
|
|
89
|
+
throw new InvocationInternalError('FUNCTION_HANDLER_INVALID', 'Instance Method owner must be a node Class or Interface.');
|
|
95
90
|
}
|
|
96
91
|
export function isInstanceMethod(callable) {
|
|
97
92
|
return 'on' in callable;
|
|
@@ -100,8 +95,6 @@ export function validateInvocationInput(selected, input) {
|
|
|
100
95
|
const result = selected.domain.$.validate.input(selected.callable.key, input);
|
|
101
96
|
if (result.status === 'pass')
|
|
102
97
|
return;
|
|
103
|
-
throw
|
|
104
|
-
details: { diagnostics: result.diagnostics },
|
|
105
|
-
});
|
|
98
|
+
throw functionInputValidationError(selected.callable.key, result.diagnostics);
|
|
106
99
|
}
|
|
107
100
|
//# sourceMappingURL=selection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selection.js","sourceRoot":"","sources":["../../src/invocation/selection.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAA;
|
|
1
|
+
{"version":3,"file":"selection.js","sourceRoot":"","sources":["../../src/invocation/selection.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAA;AAMnD,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAC5E,OAAO,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AA0ClF,MAAM,OAAO,GAAG,IAAI,OAAO,EAAyB,CAAA;AACpD,MAAM,IAAI,GAAmB,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;AAE5D,MAAM,UAAU,gBAAgB,CAC9B,UAA4C,EAC5C,MAAwB;IAExB,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAA;IAClC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAE9C,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IAE5E,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IACjD,IAAI,QAAQ,KAAK,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,uBAAuB,CAC/B,2BAA2B,EAC3B,QAAQ;YACN,CAAC,CAAC,6CAA6C;YAC/C,CAAC,CAAC,sDAAsD,CAC3D,CAAA;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IACvF,MAAM,kBAAkB,GAAG,QAAQ;QACjC,CAAC,CAAC,qBAAqB,CAAI,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5F,CAAC,CAAC,SAAS,CAAA;IAEb,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,MAAM;QACpC,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;YACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG;YAC5B,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC;SAC9D,CAAC;QACF,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;QAC/C,GAAG,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC;KACpE,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,QAAQ,CACf,UAA4C;IAE5C,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACtC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAA;IAEvC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAyB,CAAA;IAC9C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAyB,CAAA;IAC/C,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,MAA2B,CAAA;IAChE,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,QAAsC,CAAA;IAE7E,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QACjE,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;IAC3D,CAAC;IACD,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;IACtE,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAA;IAE7E,MAAM,KAAK,GAAG,IAAI,GAAG,CAAS,UAAU,CAAC,cAAc,CAAC,CAAA;IACxD,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,uBAAuB,CAC/B,0BAA0B,EAC1B,yDAAyD,CAC1D,CAAA;QACH,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;IACvD,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAChC,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,SAAS,oBAAoB,CAC3B,KAAiC,EACjC,MAAkC,EAClC,MAAc,EACd,IAA2B,EAC3B,QAAoC;IAEpC,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxD,MAAM,UAAU,GAAG,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QACvF,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACtD,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;QAC7D,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CACf,KAAiC,EACjC,MAAkC,EAClC,QAA0B,EAC1B,OAAqC;IAErC,IAAI,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,uBAAuB,CAC/B,0BAA0B,EAC1B,yCAAyC,CAC1C,CAAA;IACH,CAAC;IACD,IACE,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,EACvE,CAAC;QACD,MAAM,IAAI,uBAAuB,CAC/B,0BAA0B,EAC1B,qDAAqD,CACtD,CAAA;IACH,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAA;IAClD,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IAC9B,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAA;QAClC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,uBAAuB,CAC/B,0BAA0B,EAC1B,+CAA+C,CAChD,CAAA;QACH,CAAC;QACD,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,uBAAuB,CAC/B,0BAA0B,EAC1B,sCAAsC,CACvC,CAAA;QACH,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IACrC,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAC5B,KAAiB;IAEjB,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QACtF,OAAO,KAAsC,CAAA;IAC/C,CAAC;IACD,MAAM,IAAI,uBAAuB,CAC/B,0BAA0B,EAC1B,0DAA0D,CAC3D,CAAA;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,QAA0B;IACzD,OAAO,IAAI,IAAI,QAAQ,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,QAA+B,EAC/B,KAAoB;IAEpB,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IAC7E,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM;QAAE,OAAM;IACpC,MAAM,4BAA4B,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,WAAW,CAAC,CAAA;AAC/E,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { NodePath as NodePathValue } from '@astrale-os/kernel-core/path';
|
|
2
|
+
import type { Key as SemanticKey } from '@astrale-os/kernel-dsl/v1';
|
|
3
|
+
/** Minimum SDK-owned representation selected for one local invocation. */
|
|
4
|
+
export interface InvocationTarget {
|
|
5
|
+
readonly callable: SemanticKey.Callable;
|
|
6
|
+
readonly receiver?: NodePathValue;
|
|
7
|
+
}
|
|
8
|
+
/** Admit the untrusted portable target representation returned by Kernel. */
|
|
9
|
+
export declare function acceptInvocationTarget(input: unknown): InvocationTarget;
|
|
10
|
+
//# sourceMappingURL=target.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"target.d.ts","sourceRoot":"","sources":["../../src/invocation/target.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC7E,OAAO,KAAK,EAAE,GAAG,IAAI,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAOnE,0EAA0E;AAC1E,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAA;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAA;CAClC;AAED,6EAA6E;AAC7E,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,gBAAgB,CAuBvE"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { NodePath } from '@astrale-os/kernel-core/path';
|
|
2
|
+
import { Key, Ref } from '@astrale-os/kernel-dsl/v1';
|
|
3
|
+
import { InvocationInternalError } from './error.js';
|
|
4
|
+
/** Admit the untrusted portable target representation returned by Kernel. */
|
|
5
|
+
export function acceptInvocationTarget(input) {
|
|
6
|
+
if (input === null || typeof input !== 'object' || Array.isArray(input))
|
|
7
|
+
return invalidTarget();
|
|
8
|
+
const fields = Reflect.ownKeys(input);
|
|
9
|
+
if (!fields.includes('callable') ||
|
|
10
|
+
fields.some((field) => field !== 'callable' && field !== 'receiver')) {
|
|
11
|
+
return invalidTarget();
|
|
12
|
+
}
|
|
13
|
+
const callable = acceptCallable(Reflect.get(input, 'callable'));
|
|
14
|
+
const rawReceiver = Reflect.get(input, 'receiver');
|
|
15
|
+
let receiver;
|
|
16
|
+
try {
|
|
17
|
+
receiver = rawReceiver === undefined ? undefined : NodePath(rawReceiver);
|
|
18
|
+
}
|
|
19
|
+
catch (cause) {
|
|
20
|
+
return invalidTarget(cause);
|
|
21
|
+
}
|
|
22
|
+
return Object.freeze({
|
|
23
|
+
callable,
|
|
24
|
+
...(receiver === undefined ? {} : { receiver }),
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
function acceptCallable(input) {
|
|
28
|
+
if (typeof input !== 'string')
|
|
29
|
+
return invalidTarget();
|
|
30
|
+
try {
|
|
31
|
+
const callable = Key(input);
|
|
32
|
+
const reference = Key.ref(callable);
|
|
33
|
+
if (!Ref.isMethod(reference) &&
|
|
34
|
+
!(Ref.isDefinition(reference) && Ref.namespace(reference) === 'function')) {
|
|
35
|
+
return invalidTarget();
|
|
36
|
+
}
|
|
37
|
+
return callable;
|
|
38
|
+
}
|
|
39
|
+
catch (cause) {
|
|
40
|
+
if (cause instanceof InvocationInternalError)
|
|
41
|
+
throw cause;
|
|
42
|
+
return invalidTarget(cause);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
function invalidTarget(cause) {
|
|
46
|
+
throw new InvocationInternalError('INVOCATION_TARGET_INVALID', 'Kernel returned an invalid invocation target.', cause === undefined ? undefined : { cause });
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=target.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"target.js","sourceRoot":"","sources":["../../src/invocation/target.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AACvD,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAA;AAEpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AAQpD,6EAA6E;AAC7E,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,aAAa,EAAE,CAAA;IAC/F,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IACrC,IACE,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,UAAU,CAAC,EACpE,CAAC;QACD,OAAO,aAAa,EAAE,CAAA;IACxB,CAAC;IAED,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAA;IAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAA;IAClD,IAAI,QAAmC,CAAA;IACvC,IAAI,CAAC;QACH,QAAQ,GAAG,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAqB,CAAC,CAAA;IACpF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,aAAa,CAAC,KAAK,CAAC,CAAA;IAC7B,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,QAAQ;QACR,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;KAChD,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,aAAa,EAAE,CAAA;IACrD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,CAAA;QAC3B,MAAM,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACnC,IACE,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC;YACxB,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,UAAU,CAAC,EACzE,CAAC;YACD,OAAO,aAAa,EAAE,CAAA;QACxB,CAAC;QACD,OAAO,QAAgC,CAAA;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,uBAAuB;YAAE,MAAM,KAAK,CAAA;QACzD,OAAO,aAAa,CAAC,KAAK,CAAC,CAAA;IAC7B,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,KAAe;IACpC,MAAM,IAAI,uBAAuB,CAC/B,2BAA2B,EAC3B,+CAA+C,EAC/C,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAC5C,CAAA;AACH,CAAC"}
|
package/dist/server/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { createApplication } from './application.js';
|
|
2
2
|
export type { Application, ApplicationIdentity, CreateApplicationInput } from './application.js';
|
|
3
|
+
export type { FunctionInputDiagnostic, FunctionInputValidationDetails, FunctionInputValidationReason, InvocationTarget, } from '../invocation/index.js';
|
|
3
4
|
export { createRemoteApplication, createRemoteIdentity } from './remote.js';
|
|
4
5
|
export type { CreateRemoteApplicationInput, RemoteDeploymentInput, RemoteIdentityInput, } from './remote.js';
|
|
5
6
|
//# sourceMappingURL=index.d.ts.map
|