@dxos/functions-runtime-cloudflare 0.8.4-main.66e292d
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +8 -0
- package/README.md +47 -0
- package/dist/lib/browser/index.mjs +481 -0
- package/dist/lib/browser/index.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -0
- package/dist/lib/node-esm/index.mjs +483 -0
- package/dist/lib/node-esm/index.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -0
- package/dist/types/src/functions-client.d.ts +32 -0
- package/dist/types/src/functions-client.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +3 -0
- package/dist/types/src/index.d.ts.map +1 -0
- package/dist/types/src/internal/adapter.d.ts +12 -0
- package/dist/types/src/internal/adapter.d.ts.map +1 -0
- package/dist/types/src/internal/data-service-impl.d.ts +25 -0
- package/dist/types/src/internal/data-service-impl.d.ts.map +1 -0
- package/dist/types/src/internal/index.d.ts +2 -0
- package/dist/types/src/internal/index.d.ts.map +1 -0
- package/dist/types/src/internal/query-service-impl.d.ts +18 -0
- package/dist/types/src/internal/query-service-impl.d.ts.map +1 -0
- package/dist/types/src/internal/queue-service-impl.d.ts +12 -0
- package/dist/types/src/internal/queue-service-impl.d.ts.map +1 -0
- package/dist/types/src/internal/service-container.d.ts +25 -0
- package/dist/types/src/internal/service-container.d.ts.map +1 -0
- package/dist/types/src/queues-api.d.ts +22 -0
- package/dist/types/src/queues-api.d.ts.map +1 -0
- package/dist/types/src/space-proxy.d.ts +25 -0
- package/dist/types/src/space-proxy.d.ts.map +1 -0
- package/dist/types/src/types.d.ts +31 -0
- package/dist/types/src/types.d.ts.map +1 -0
- package/dist/types/src/wrap-handler-for-cloudflare.d.ts +6 -0
- package/dist/types/src/wrap-handler-for-cloudflare.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -0
- package/package.json +47 -0
- package/src/functions-client.ts +81 -0
- package/src/index.ts +6 -0
- package/src/internal/adapter.ts +48 -0
- package/src/internal/data-service-impl.ts +93 -0
- package/src/internal/index.ts +5 -0
- package/src/internal/query-service-impl.ts +91 -0
- package/src/internal/queue-service-impl.ts +23 -0
- package/src/internal/service-container.ts +54 -0
- package/src/queues-api.ts +38 -0
- package/src/space-proxy.ts +65 -0
- package/src/types.ts +40 -0
- package/src/wrap-handler-for-cloudflare.ts +132 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/internal/index.ts"],"names":[],"mappings":"AAIA,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Stream } from '@dxos/codec-protobuf/stream';
|
|
2
|
+
import { QueryAST } from '@dxos/echo-protocol';
|
|
3
|
+
import { SpaceId } from '@dxos/keys';
|
|
4
|
+
import { type EdgeFunctionEnv } from '@dxos/protocols';
|
|
5
|
+
import { type QueryRequest, type QueryResponse, type QueryService as QueryServiceProto } from '@dxos/protocols/proto/dxos/echo/query';
|
|
6
|
+
export declare class QueryServiceImpl implements QueryServiceProto {
|
|
7
|
+
private readonly _executionContext;
|
|
8
|
+
private readonly _dataService;
|
|
9
|
+
constructor(_executionContext: EdgeFunctionEnv.ExecutionContext, _dataService: EdgeFunctionEnv.DataService);
|
|
10
|
+
execQuery(request: QueryRequest): Stream<QueryResponse>;
|
|
11
|
+
reindex(): Promise<void>;
|
|
12
|
+
setConfig(): Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Lists spaces this query will select from.
|
|
16
|
+
*/
|
|
17
|
+
export declare const getTargetSpacesForQuery: (query: QueryAST.Query) => SpaceId[];
|
|
18
|
+
//# sourceMappingURL=query-service-impl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-service-impl.d.ts","sourceRoot":"","sources":["../../../../src/internal/query-service-impl.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAG/C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,aAAa,EAElB,KAAK,YAAY,IAAI,iBAAiB,EACvC,MAAM,uCAAuC,CAAC;AAI/C,qBAAa,gBAAiB,YAAW,iBAAiB;IAEtD,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY;gBADZ,iBAAiB,EAAE,eAAe,CAAC,gBAAgB,EACnD,YAAY,EAAE,eAAe,CAAC,WAAW;IAG5D,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAAC,aAAa,CAAC;IAoCjD,OAAO;IAIP,SAAS;CAGhB;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB,GAAI,OAAO,QAAQ,CAAC,KAAK,KAAG,OAAO,EActE,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ObjectId, SpaceId } from '@dxos/keys';
|
|
2
|
+
import { type QueueService as QueueServiceProto } from '@dxos/protocols';
|
|
3
|
+
import type { EdgeFunctionEnv, QueryResult, QueueQuery } from '@dxos/protocols';
|
|
4
|
+
export declare class QueueServiceImpl implements QueueServiceProto {
|
|
5
|
+
protected _ctx: EdgeFunctionEnv.ExecutionContext;
|
|
6
|
+
private readonly _queueService;
|
|
7
|
+
constructor(_ctx: EdgeFunctionEnv.ExecutionContext, _queueService: EdgeFunctionEnv.QueueService);
|
|
8
|
+
queryQueue(subspaceTag: string, spaceId: SpaceId, { queueId, ...query }: QueueQuery): Promise<QueryResult>;
|
|
9
|
+
insertIntoQueue(subspaceTag: string, spaceId: SpaceId, queueId: ObjectId, objects: unknown[]): Promise<void>;
|
|
10
|
+
deleteFromQueue(subspaceTag: string, spaceId: SpaceId, queueId: ObjectId, objectIds: ObjectId[]): Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=queue-service-impl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queue-service-impl.d.ts","sourceRoot":"","sources":["../../../../src/internal/queue-service-impl.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,KAAK,YAAY,IAAI,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEhF,qBAAa,gBAAiB,YAAW,iBAAiB;IAEtD,SAAS,CAAC,IAAI,EAAE,eAAe,CAAC,gBAAgB;IAChD,OAAO,CAAC,QAAQ,CAAC,aAAa;gBADpB,IAAI,EAAE,eAAe,CAAC,gBAAgB,EAC/B,aAAa,EAAE,eAAe,CAAC,YAAY;IAE9D,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;IAG1G,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAG5G,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAGhH"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { HasId } from '@dxos/echo/internal';
|
|
2
|
+
import { type DXN, type SpaceId } from '@dxos/keys';
|
|
3
|
+
import type { QueryResult } from '@dxos/protocols';
|
|
4
|
+
import { type EdgeFunctionEnv } from '@dxos/protocols';
|
|
5
|
+
import { type QueueService as QueueServiceProto } from '@dxos/protocols';
|
|
6
|
+
import { type QueryService as QueryServiceProto } from '@dxos/protocols/proto/dxos/echo/query';
|
|
7
|
+
import type { DataService as DataServiceProto } from '@dxos/protocols/proto/dxos/echo/service';
|
|
8
|
+
/**
|
|
9
|
+
* TODO: make this implement DataService and QueryService to unify API over edge and web backend
|
|
10
|
+
*/
|
|
11
|
+
export declare class ServiceContainer {
|
|
12
|
+
private readonly _executionContext;
|
|
13
|
+
private readonly _dataService;
|
|
14
|
+
private readonly _queueService;
|
|
15
|
+
constructor(_executionContext: EdgeFunctionEnv.ExecutionContext, _dataService: EdgeFunctionEnv.DataService, _queueService: EdgeFunctionEnv.QueueService);
|
|
16
|
+
getSpaceMeta(spaceId: SpaceId): Promise<EdgeFunctionEnv.SpaceMeta | undefined>;
|
|
17
|
+
createServices(): Promise<{
|
|
18
|
+
dataService: DataServiceProto;
|
|
19
|
+
queryService: QueryServiceProto;
|
|
20
|
+
queueService: QueueServiceProto;
|
|
21
|
+
}>;
|
|
22
|
+
queryQueue(queue: DXN): Promise<QueryResult>;
|
|
23
|
+
insertIntoQueue(queue: DXN, objects: HasId[]): Promise<void>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=service-container.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service-container.d.ts","sourceRoot":"","sources":["../../../../src/internal/service-container.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,KAAK,YAAY,IAAI,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,KAAK,YAAY,IAAI,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC/F,OAAO,KAAK,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAM/F;;GAEG;AACH,qBAAa,gBAAgB;IAEzB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAFb,iBAAiB,EAAE,eAAe,CAAC,gBAAgB,EACnD,YAAY,EAAE,eAAe,CAAC,WAAW,EACzC,aAAa,EAAE,eAAe,CAAC,YAAY;IAGxD,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,SAAS,GAAG,SAAS,CAAC;IAI9E,cAAc,IAAI,OAAO,CAAC;QAC9B,WAAW,EAAE,gBAAgB,CAAC;QAC9B,YAAY,EAAE,iBAAiB,CAAC;QAChC,YAAY,EAAE,iBAAiB,CAAC;KACjC,CAAC;IAYF,UAAU,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC;IAI5C,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAG7D"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { HasId } from '@dxos/echo/internal';
|
|
2
|
+
import type { DXN, SpaceId } from '@dxos/keys';
|
|
3
|
+
import type { QueryResult } from '@dxos/protocols';
|
|
4
|
+
import type { ServiceContainer } from './internal';
|
|
5
|
+
/**
|
|
6
|
+
* @deprecated
|
|
7
|
+
*/
|
|
8
|
+
export interface QueuesAPI {
|
|
9
|
+
queryQueue(queue: DXN, options?: {}): Promise<QueryResult>;
|
|
10
|
+
insertIntoQueue(queue: DXN, objects: HasId[]): Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* @deprecated
|
|
14
|
+
*/
|
|
15
|
+
export declare class QueuesAPIImpl implements QueuesAPI {
|
|
16
|
+
private readonly _serviceContainer;
|
|
17
|
+
private readonly _spaceId;
|
|
18
|
+
constructor(_serviceContainer: ServiceContainer, _spaceId: SpaceId);
|
|
19
|
+
queryQueue(queue: DXN, options?: {}): Promise<QueryResult>;
|
|
20
|
+
insertIntoQueue(queue: DXN, objects: HasId[]): Promise<void>;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=queues-api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queues-api.d.ts","sourceRoot":"","sources":["../../../src/queues-api.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAInD;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC3D,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9D;AAED;;GAEG;AACH,qBAAa,aAAc,YAAW,SAAS;IAE3C,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBADR,iBAAiB,EAAE,gBAAgB,EACnC,QAAQ,EAAE,OAAO;IAGpC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;IAI1D,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAI7D"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Resource } from '@dxos/context';
|
|
2
|
+
import { type CoreDatabase, type EchoClient, type EchoDatabase } from '@dxos/echo-db';
|
|
3
|
+
import { type SpaceId } from '@dxos/keys';
|
|
4
|
+
import type { ServiceContainer } from './internal';
|
|
5
|
+
import { type QueuesAPI } from './queues-api';
|
|
6
|
+
/**
|
|
7
|
+
* @deprecated
|
|
8
|
+
*/
|
|
9
|
+
export declare class SpaceProxy extends Resource {
|
|
10
|
+
private readonly _serviceContainer;
|
|
11
|
+
private readonly _echoClient;
|
|
12
|
+
private readonly _id;
|
|
13
|
+
private _db?;
|
|
14
|
+
private _queuesApi;
|
|
15
|
+
constructor(_serviceContainer: ServiceContainer, _echoClient: EchoClient, _id: SpaceId);
|
|
16
|
+
get id(): SpaceId;
|
|
17
|
+
get db(): EchoDatabase;
|
|
18
|
+
/**
|
|
19
|
+
* @deprecated Use db API.
|
|
20
|
+
*/
|
|
21
|
+
get crud(): CoreDatabase;
|
|
22
|
+
get queues(): QueuesAPI;
|
|
23
|
+
protected _open(): Promise<void>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=space-proxy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"space-proxy.d.ts","sourceRoot":"","sources":["../../../src/space-proxy.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,UAAU,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAEtF,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAErD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,KAAK,SAAS,EAAiB,MAAM,cAAc,CAAC;AAE7D;;GAEG;AACH,qBAAa,UAAW,SAAQ,QAAQ;IAKpC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,GAAG;IANtB,OAAO,CAAC,GAAG,CAAC,CAA2B;IACvC,OAAO,CAAC,UAAU,CAAgB;gBAGf,iBAAiB,EAAE,gBAAgB,EACnC,WAAW,EAAE,UAAU,EACvB,GAAG,EAAE,OAAO;IAM/B,IAAI,EAAE,IAAI,OAAO,CAEhB;IAED,IAAI,EAAE,IAAI,YAAY,CAGrB;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,YAAY,CAGvB;IAED,IAAI,MAAM,IAAI,SAAS,CAEtB;cAEwB,KAAK;CAe/B"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { JsonSchemaType } from '@dxos/echo/internal';
|
|
2
|
+
/**
|
|
3
|
+
* Is used for to route the request to the metadata handler instead of the main handler.
|
|
4
|
+
*/
|
|
5
|
+
export declare const FUNCTION_ROUTE_HEADER = "X-DXOS-Function-Route";
|
|
6
|
+
export declare enum FunctionRouteValue {
|
|
7
|
+
Meta = "meta"
|
|
8
|
+
}
|
|
9
|
+
export type FunctionMetadata = {
|
|
10
|
+
/**
|
|
11
|
+
* FQN.
|
|
12
|
+
*/
|
|
13
|
+
key: string;
|
|
14
|
+
/**
|
|
15
|
+
* Human-readable name.
|
|
16
|
+
*/
|
|
17
|
+
name?: string;
|
|
18
|
+
/**
|
|
19
|
+
* Description.
|
|
20
|
+
*/
|
|
21
|
+
description?: string;
|
|
22
|
+
/**
|
|
23
|
+
* Input schema.
|
|
24
|
+
*/
|
|
25
|
+
inputSchema?: JsonSchemaType;
|
|
26
|
+
/**
|
|
27
|
+
* Output schema.
|
|
28
|
+
*/
|
|
29
|
+
outputSchema?: JsonSchemaType;
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAE7D,oBAAY,kBAAkB;IAC5B,IAAI,SAAS;CACd;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,WAAW,CAAC,EAAE,cAAc,CAAC;IAE7B;;OAEG;IACH,YAAY,CAAC,EAAE,cAAc,CAAC;CAC/B,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { FunctionProtocol } from '@dxos/protocols';
|
|
2
|
+
/**
|
|
3
|
+
* Wraps a user function in a Cloudflare-compatible handler.
|
|
4
|
+
*/
|
|
5
|
+
export declare const wrapHandlerForCloudflare: (func: FunctionProtocol.Func) => ExportedHandlerFetchHandler<any>;
|
|
6
|
+
//# sourceMappingURL=wrap-handler-for-cloudflare.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wrap-handler-for-cloudflare.d.ts","sourceRoot":"","sources":["../../../src/wrap-handler-for-cloudflare.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAmB,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAKzE;;GAEG;AACH,eAAO,MAAM,wBAAwB,GAAI,MAAM,gBAAgB,CAAC,IAAI,KAAG,2BAA2B,CAAC,GAAG,CAkCrG,CAAC"}
|