@dxos/functions 0.8.3 → 0.8.4-main.1da679c
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/lib/browser/bundler/index.mjs +73 -44
- package/dist/lib/browser/bundler/index.mjs.map +3 -3
- package/dist/lib/browser/chunk-D2XO7XXY.mjs +611 -0
- package/dist/lib/browser/chunk-D2XO7XXY.mjs.map +7 -0
- package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
- package/dist/lib/browser/chunk-J5LGTIGS.mjs.map +7 -0
- package/dist/lib/browser/edge/index.mjs +24 -10
- package/dist/lib/browser/edge/index.mjs.map +3 -3
- package/dist/lib/browser/index.mjs +981 -137
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +110 -9
- package/dist/lib/browser/testing/index.mjs.map +4 -4
- package/dist/lib/node-esm/bundler/index.mjs +72 -44
- package/dist/lib/node-esm/bundler/index.mjs.map +3 -3
- package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
- package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-Z4CJ62WS.mjs +613 -0
- package/dist/lib/node-esm/chunk-Z4CJ62WS.mjs.map +7 -0
- package/dist/lib/node-esm/edge/index.mjs +23 -10
- package/dist/lib/node-esm/edge/index.mjs.map +3 -3
- package/dist/lib/node-esm/index.mjs +981 -137
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/testing/index.mjs +110 -9
- package/dist/lib/node-esm/testing/index.mjs.map +4 -4
- package/dist/types/src/bundler/bundler.d.ts +12 -14
- package/dist/types/src/bundler/bundler.d.ts.map +1 -1
- package/dist/types/src/edge/functions.d.ts +4 -3
- package/dist/types/src/edge/functions.d.ts.map +1 -1
- package/dist/types/src/errors.d.ts +137 -0
- package/dist/types/src/errors.d.ts.map +1 -0
- package/dist/types/src/examples/fib.d.ts +7 -0
- package/dist/types/src/examples/fib.d.ts.map +1 -0
- package/dist/types/src/examples/index.d.ts +4 -0
- package/dist/types/src/examples/index.d.ts.map +1 -0
- package/dist/types/src/examples/reply.d.ts +3 -0
- package/dist/types/src/examples/reply.d.ts.map +1 -0
- package/dist/types/src/examples/sleep.d.ts +5 -0
- package/dist/types/src/examples/sleep.d.ts.map +1 -0
- package/dist/types/src/executor/executor.d.ts +4 -1
- package/dist/types/src/executor/executor.d.ts.map +1 -1
- package/dist/types/src/handler.d.ts +46 -16
- package/dist/types/src/handler.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +3 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/schema.d.ts +8 -3
- package/dist/types/src/schema.d.ts.map +1 -1
- package/dist/types/src/services/credentials.d.ts +18 -4
- package/dist/types/src/services/credentials.d.ts.map +1 -1
- package/dist/types/src/services/database.d.ts +55 -3
- package/dist/types/src/services/database.d.ts.map +1 -1
- package/dist/types/src/services/event-logger.d.ts +65 -30
- package/dist/types/src/services/event-logger.d.ts.map +1 -1
- package/dist/types/src/services/index.d.ts +2 -2
- package/dist/types/src/services/index.d.ts.map +1 -1
- package/dist/types/src/services/local-function-execution.d.ts +25 -0
- package/dist/types/src/services/local-function-execution.d.ts.map +1 -0
- package/dist/types/src/services/queues.d.ts +33 -6
- package/dist/types/src/services/queues.d.ts.map +1 -1
- package/dist/types/src/services/remote-function-execution-service.d.ts +15 -0
- package/dist/types/src/services/remote-function-execution-service.d.ts.map +1 -0
- package/dist/types/src/services/service-container.d.ts +29 -17
- package/dist/types/src/services/service-container.d.ts.map +1 -1
- package/dist/types/src/services/service-registry.d.ts +29 -0
- package/dist/types/src/services/service-registry.d.ts.map +1 -0
- package/dist/types/src/services/service-registry.test.d.ts +2 -0
- package/dist/types/src/services/service-registry.test.d.ts.map +1 -0
- package/dist/types/src/services/tracing.d.ts +46 -4
- package/dist/types/src/services/tracing.d.ts.map +1 -1
- package/dist/types/src/testing/index.d.ts +1 -0
- package/dist/types/src/testing/index.d.ts.map +1 -1
- package/dist/types/src/testing/layer.d.ts +15 -0
- package/dist/types/src/testing/layer.d.ts.map +1 -0
- package/dist/types/src/testing/logger.d.ts +3 -3
- package/dist/types/src/testing/logger.d.ts.map +1 -1
- package/dist/types/src/testing/persist-database.test.d.ts +2 -0
- package/dist/types/src/testing/persist-database.test.d.ts.map +1 -0
- package/dist/types/src/testing/services.d.ts +55 -9
- package/dist/types/src/testing/services.d.ts.map +1 -1
- package/dist/types/src/trace.d.ts +20 -22
- package/dist/types/src/trace.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +9 -9
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/triggers/index.d.ts +4 -0
- package/dist/types/src/triggers/index.d.ts.map +1 -0
- package/dist/types/src/triggers/input-builder.d.ts +3 -0
- package/dist/types/src/triggers/input-builder.d.ts.map +1 -0
- package/dist/types/src/triggers/invocation-tracer.d.ts +35 -0
- package/dist/types/src/triggers/invocation-tracer.d.ts.map +1 -0
- package/dist/types/src/triggers/trigger-dispatcher.d.ts +75 -0
- package/dist/types/src/triggers/trigger-dispatcher.d.ts.map +1 -0
- package/dist/types/src/triggers/trigger-dispatcher.test.d.ts +2 -0
- package/dist/types/src/triggers/trigger-dispatcher.test.d.ts.map +1 -0
- package/dist/types/src/triggers/trigger-state-store.d.ts +27 -0
- package/dist/types/src/triggers/trigger-state-store.d.ts.map +1 -0
- package/dist/types/src/types.d.ts +55 -245
- package/dist/types/src/types.d.ts.map +1 -1
- package/dist/types/src/url.d.ts +10 -6
- package/dist/types/src/url.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +35 -25
- package/src/bundler/bundler.test.ts +9 -10
- package/src/bundler/bundler.ts +56 -35
- package/src/edge/functions.ts +9 -6
- package/src/errors.ts +21 -0
- package/src/examples/fib.ts +30 -0
- package/src/examples/index.ts +7 -0
- package/src/examples/reply.ts +18 -0
- package/src/examples/sleep.ts +22 -0
- package/src/executor/executor.ts +22 -15
- package/src/handler.ts +117 -27
- package/src/index.ts +3 -2
- package/src/schema.ts +11 -0
- package/src/services/credentials.ts +87 -5
- package/src/services/database.ts +146 -3
- package/src/services/event-logger.ts +68 -37
- package/src/services/index.ts +2 -2
- package/src/services/local-function-execution.ts +127 -0
- package/src/services/queues.ts +56 -11
- package/src/services/remote-function-execution-service.ts +46 -0
- package/src/services/service-container.ts +47 -42
- package/src/services/service-registry.test.ts +42 -0
- package/src/services/service-registry.ts +59 -0
- package/src/services/tracing.ts +118 -5
- package/src/testing/index.ts +1 -0
- package/src/testing/layer.ts +111 -0
- package/src/testing/logger.ts +4 -4
- package/src/testing/persist-database.test.ts +87 -0
- package/src/testing/services.ts +97 -14
- package/src/trace.ts +17 -19
- package/src/translations.ts +4 -4
- package/src/triggers/index.ts +7 -0
- package/src/triggers/input-builder.ts +35 -0
- package/src/triggers/invocation-tracer.ts +99 -0
- package/src/triggers/trigger-dispatcher.test.ts +652 -0
- package/src/triggers/trigger-dispatcher.ts +516 -0
- package/src/triggers/trigger-state-store.ts +60 -0
- package/src/types.ts +39 -36
- package/src/url.ts +13 -10
- package/dist/lib/browser/chunk-WEFZUEL2.mjs +0 -300
- package/dist/lib/browser/chunk-WEFZUEL2.mjs.map +0 -7
- package/dist/lib/node/bundler/index.cjs +0 -260
- package/dist/lib/node/bundler/index.cjs.map +0 -7
- package/dist/lib/node/chunk-IJAE7FZK.cjs +0 -320
- package/dist/lib/node/chunk-IJAE7FZK.cjs.map +0 -7
- package/dist/lib/node/edge/index.cjs +0 -94
- package/dist/lib/node/edge/index.cjs.map +0 -7
- package/dist/lib/node/index.cjs +0 -522
- package/dist/lib/node/index.cjs.map +0 -7
- package/dist/lib/node/meta.json +0 -1
- package/dist/lib/node/testing/index.cjs +0 -43
- package/dist/lib/node/testing/index.cjs.map +0 -7
- package/dist/lib/node-esm/chunk-LIYPMWNQ.mjs +0 -302
- package/dist/lib/node-esm/chunk-LIYPMWNQ.mjs.map +0 -7
- package/dist/types/src/services/ai.d.ts +0 -12
- package/dist/types/src/services/ai.d.ts.map +0 -1
- package/dist/types/src/services/function-call-service.d.ts +0 -16
- package/dist/types/src/services/function-call-service.d.ts.map +0 -1
- package/src/services/ai.ts +0 -32
- package/src/services/function-call-service.ts +0 -64
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/testing/index.ts"],"names":[],"mappings":"AAIA,cAAc,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/testing/index.ts"],"names":[],"mappings":"AAIA,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { Schema } from 'effect';
|
|
2
|
+
import { Effect, Layer } from 'effect';
|
|
3
|
+
import type { EchoHostIndexingConfig } from '@dxos/echo-pipeline';
|
|
4
|
+
import { DatabaseService, QueueService } from '../services';
|
|
5
|
+
export declare const testStoragePath: ({ name }: {
|
|
6
|
+
name?: string;
|
|
7
|
+
}) => string;
|
|
8
|
+
export type TestDatabaseOptions = {
|
|
9
|
+
indexing?: Partial<EchoHostIndexingConfig>;
|
|
10
|
+
types?: Schema.Schema.AnyNoContext[];
|
|
11
|
+
storagePath?: string;
|
|
12
|
+
onInit?: () => Effect.Effect<void, never, DatabaseService | QueueService>;
|
|
13
|
+
};
|
|
14
|
+
export declare const TestDatabaseLayer: ({ indexing, types, storagePath, onInit }?: TestDatabaseOptions) => Layer.Layer<DatabaseService | QueueService, never, never>;
|
|
15
|
+
//# sourceMappingURL=layer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layer.d.ts","sourceRoot":"","sources":["../../../../src/testing/layer.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAW,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAIhD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAOlE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAI5D,eAAO,MAAM,eAAe,GAAI,UAAuC;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,WAEvF,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,GAAG,YAAY,CAAC,CAAC;CAC3E,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,2CAA0C,mBAAwB,8DA+EjG,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Context } from 'effect';
|
|
2
|
-
import { type
|
|
3
|
-
export declare const noopLogger: Context.Tag.Service<
|
|
4
|
-
export declare const consoleLogger: Context.Tag.Service<
|
|
2
|
+
import { type ComputeEventLogger } from '../services';
|
|
3
|
+
export declare const noopLogger: Context.Tag.Service<ComputeEventLogger>;
|
|
4
|
+
export declare const consoleLogger: Context.Tag.Service<ComputeEventLogger>;
|
|
5
5
|
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../../src/testing/logger.ts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../../src/testing/logger.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,OAAO,EAAU,MAAM,QAAQ,CAAC;AAI9C,OAAO,EAAE,KAAK,kBAAkB,EAAqB,MAAM,aAAa,CAAC;AAEzE,eAAO,MAAM,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAG9D,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAoC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"persist-database.test.d.ts","sourceRoot":"","sources":["../../../../src/testing/persist-database.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,13 +1,59 @@
|
|
|
1
1
|
import { type Context } from 'effect';
|
|
2
|
-
import type {
|
|
3
|
-
import type { QueueFactory } from '@dxos/echo-db';
|
|
4
|
-
import { ServiceContainer } from '../services';
|
|
5
|
-
|
|
2
|
+
import type { Space } from '@dxos/client/echo';
|
|
3
|
+
import type { EchoDatabase, QueueFactory } from '@dxos/echo-db';
|
|
4
|
+
import { type ComputeEventLogger, type CredentialsService, ServiceContainer, type ServiceCredential, type TracingService } from '../services';
|
|
5
|
+
export type OneOf<T> = {
|
|
6
|
+
[K in keyof T]: {
|
|
7
|
+
[P in K]: T[P];
|
|
8
|
+
} & {
|
|
9
|
+
[P in Exclude<keyof T, K>]?: never;
|
|
10
|
+
};
|
|
11
|
+
}[keyof T];
|
|
12
|
+
export type AiServiceProvider = 'dev' | 'edge' | 'ollama' | 'lmstudio';
|
|
6
13
|
export type TestServiceOptions = {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
14
|
+
/**
|
|
15
|
+
* AI service configuration.
|
|
16
|
+
*/
|
|
17
|
+
ai?: any;
|
|
18
|
+
/**
|
|
19
|
+
* Credentials service configuration.
|
|
20
|
+
*/
|
|
21
|
+
credentials?: OneOf<{
|
|
22
|
+
/**
|
|
23
|
+
* Predefined credentials list.
|
|
24
|
+
*/
|
|
25
|
+
services?: ServiceCredential[];
|
|
26
|
+
/**
|
|
27
|
+
* Custom credentials service.
|
|
28
|
+
*/
|
|
29
|
+
service?: Context.Tag.Service<CredentialsService>;
|
|
30
|
+
}>;
|
|
31
|
+
/**
|
|
32
|
+
* Database configuration.
|
|
33
|
+
*/
|
|
34
|
+
db?: EchoDatabase;
|
|
35
|
+
/**
|
|
36
|
+
* Gets database and queue services from the space.
|
|
37
|
+
* Exclusive with: `db`, `queues`
|
|
38
|
+
*/
|
|
39
|
+
space?: Space;
|
|
40
|
+
/**
|
|
41
|
+
* Logging configuration.
|
|
42
|
+
*/
|
|
43
|
+
logging?: {
|
|
44
|
+
enabled?: boolean;
|
|
45
|
+
logger?: Context.Tag.Service<ComputeEventLogger>;
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Queue service configuration.
|
|
49
|
+
*/
|
|
50
|
+
queues?: QueueFactory;
|
|
51
|
+
tracing?: {
|
|
52
|
+
service?: Context.Tag.Service<TracingService>;
|
|
53
|
+
};
|
|
11
54
|
};
|
|
12
|
-
|
|
55
|
+
/**
|
|
56
|
+
* @deprecated
|
|
57
|
+
*/
|
|
58
|
+
export declare const createTestServices: ({ ai, credentials, db, logging, queues, space, tracing, }?: TestServiceOptions) => ServiceContainer;
|
|
13
59
|
//# sourceMappingURL=services.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../../src/testing/services.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../../src/testing/services.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGhE,OAAO,EACL,KAAK,kBAAkB,EAEvB,KAAK,kBAAkB,EAGvB,gBAAgB,EAChB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AAKrB,MAAM,MAAM,KAAK,CAAC,CAAC,IAAI;KACpB,CAAC,IAAI,MAAM,CAAC,GAAG;SAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KAAE,GAAG;SAAG,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK;KAAE;CAC5E,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEvE,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;OAEG;IACH,EAAE,CAAC,EAAE,GAAG,CAAC;IAET;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC;QAClB;;WAEG;QACH,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC;QAE/B;;WAEG;QACH,OAAO,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;KACnD,CAAC,CAAC;IAEH;;OAEG;IACH,EAAE,CAAC,EAAE,YAAY,CAAC;IAElB;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;KAClD,CAAC;IAEF;;OAEG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;KAC/C,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,4DAQhC,kBAAuB,KAAG,gBAW5B,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Schema } from 'effect';
|
|
2
|
-
import {
|
|
2
|
+
import { type Ref, Type } from '@dxos/echo';
|
|
3
3
|
import { Queue } from '@dxos/echo-db';
|
|
4
|
-
import { FunctionTrigger
|
|
4
|
+
import { FunctionTrigger } from './types';
|
|
5
5
|
export declare enum InvocationOutcome {
|
|
6
6
|
SUCCESS = "success",
|
|
7
7
|
FAILURE = "failure",
|
|
@@ -12,7 +12,7 @@ export declare enum InvocationTraceEventType {
|
|
|
12
12
|
END = "end"
|
|
13
13
|
}
|
|
14
14
|
export declare const TraceEventException: Schema.Struct<{
|
|
15
|
-
|
|
15
|
+
timestamp: typeof Schema.Number;
|
|
16
16
|
message: typeof Schema.String;
|
|
17
17
|
name: typeof Schema.String;
|
|
18
18
|
stack: Schema.optional<typeof Schema.String>;
|
|
@@ -31,7 +31,7 @@ export declare const InvocationTraceStartEvent: Type.obj<Schema.Struct<{
|
|
|
31
31
|
/**
|
|
32
32
|
* Event generation time.
|
|
33
33
|
*/
|
|
34
|
-
|
|
34
|
+
timestamp: typeof Schema.Number;
|
|
35
35
|
/**
|
|
36
36
|
* Data passed to function / workflow as an argument.
|
|
37
37
|
*/
|
|
@@ -39,18 +39,18 @@ export declare const InvocationTraceStartEvent: Type.obj<Schema.Struct<{
|
|
|
39
39
|
/**
|
|
40
40
|
* Queue for function/workflow invocation events.
|
|
41
41
|
*/
|
|
42
|
-
invocationTraceQueue: Type.ref<Schema.Schema<Queue<import("@dxos/echo/Obj").Any | import("@dxos/echo/Relation").Any>, Queue<import("@dxos/echo/Obj").Any | import("@dxos/echo/Relation").Any>, never
|
|
42
|
+
invocationTraceQueue: Schema.optional<Type.ref<Schema.Schema<Queue<import("@dxos/echo/Obj").Any | import("@dxos/echo/Relation").Any>, Queue<import("@dxos/echo/Obj").Any | import("@dxos/echo/Relation").Any>, never>>>;
|
|
43
43
|
/**
|
|
44
44
|
* DXN of the invoked function/workflow.
|
|
45
45
|
*/
|
|
46
|
-
invocationTarget: Type.ref<Schema.Schema<Type.Expando, {
|
|
46
|
+
invocationTarget: Schema.optional<Type.ref<Schema.Schema<Type.Expando, {
|
|
47
47
|
[x: string]: any;
|
|
48
48
|
id: string;
|
|
49
|
-
}, never
|
|
49
|
+
}, never>>>;
|
|
50
50
|
/**
|
|
51
51
|
* Present for automatic invocations.
|
|
52
52
|
*/
|
|
53
|
-
trigger: Schema.optional<Type.ref<
|
|
53
|
+
trigger: Schema.optional<Type.ref<Schema.Schema<FunctionTrigger, import("./types").FunctionTriggerEncoded, never>>>;
|
|
54
54
|
}>>;
|
|
55
55
|
export type InvocationTraceStartEvent = Schema.Schema.Type<typeof InvocationTraceStartEvent>;
|
|
56
56
|
export declare const InvocationTraceEndEvent: Type.obj<Schema.Struct<{
|
|
@@ -66,10 +66,10 @@ export declare const InvocationTraceEndEvent: Type.obj<Schema.Struct<{
|
|
|
66
66
|
/**
|
|
67
67
|
* Event generation time.
|
|
68
68
|
*/
|
|
69
|
-
|
|
69
|
+
timestamp: typeof Schema.Number;
|
|
70
70
|
outcome: Schema.Enums<typeof InvocationOutcome>;
|
|
71
71
|
exception: Schema.optional<Schema.Struct<{
|
|
72
|
-
|
|
72
|
+
timestamp: typeof Schema.Number;
|
|
73
73
|
message: typeof Schema.String;
|
|
74
74
|
name: typeof Schema.String;
|
|
75
75
|
stack: Schema.optional<typeof Schema.String>;
|
|
@@ -78,7 +78,7 @@ export declare const InvocationTraceEndEvent: Type.obj<Schema.Struct<{
|
|
|
78
78
|
export type InvocationTraceEndEvent = Schema.Schema.Type<typeof InvocationTraceEndEvent>;
|
|
79
79
|
export type InvocationTraceEvent = InvocationTraceStartEvent | InvocationTraceEndEvent;
|
|
80
80
|
export declare const TraceEventLog: Schema.Struct<{
|
|
81
|
-
|
|
81
|
+
timestamp: typeof Schema.Number;
|
|
82
82
|
level: typeof Schema.String;
|
|
83
83
|
message: typeof Schema.String;
|
|
84
84
|
context: Schema.optional<typeof Schema.Object>;
|
|
@@ -87,18 +87,16 @@ export declare const TraceEvent: Type.obj<Schema.Struct<{
|
|
|
87
87
|
id: import("@dxos/keys").ObjectIdClass;
|
|
88
88
|
outcome: typeof Schema.String;
|
|
89
89
|
truncated: typeof Schema.Boolean;
|
|
90
|
-
/**
|
|
91
|
-
|
|
92
|
-
*/
|
|
93
|
-
ingestionTimestampMs: typeof Schema.Number;
|
|
90
|
+
/** Time when the event was persisted. */
|
|
91
|
+
ingestionTimestamp: typeof Schema.Number;
|
|
94
92
|
logs: Schema.Array$<Schema.Struct<{
|
|
95
|
-
|
|
93
|
+
timestamp: typeof Schema.Number;
|
|
96
94
|
level: typeof Schema.String;
|
|
97
95
|
message: typeof Schema.String;
|
|
98
96
|
context: Schema.optional<typeof Schema.Object>;
|
|
99
97
|
}>>;
|
|
100
98
|
exceptions: Schema.Array$<Schema.Struct<{
|
|
101
|
-
|
|
99
|
+
timestamp: typeof Schema.Number;
|
|
102
100
|
message: typeof Schema.String;
|
|
103
101
|
name: typeof Schema.String;
|
|
104
102
|
stack: Schema.optional<typeof Schema.String>;
|
|
@@ -111,13 +109,13 @@ export type TraceEvent = Schema.Schema.Type<typeof TraceEvent>;
|
|
|
111
109
|
*/
|
|
112
110
|
export type InvocationSpan = {
|
|
113
111
|
id: string;
|
|
114
|
-
|
|
112
|
+
timestamp: number;
|
|
113
|
+
duration: number;
|
|
115
114
|
outcome: InvocationOutcome;
|
|
116
115
|
input: object;
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
trigger?: Ref.Ref<FunctionTriggerType>;
|
|
116
|
+
invocationTraceQueue?: Ref.Ref<Queue>;
|
|
117
|
+
invocationTarget?: Ref.Ref<Type.Expando>;
|
|
118
|
+
trigger?: Ref.Ref<FunctionTrigger>;
|
|
121
119
|
exception?: TraceEventException;
|
|
122
120
|
};
|
|
123
121
|
export declare const createInvocationSpans: (items?: InvocationTraceEvent[]) => InvocationSpan[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace.d.ts","sourceRoot":"","sources":["../../../src/trace.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"trace.d.ts","sourceRoot":"","sources":["../../../src/trace.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,KAAK,GAAG,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAItC,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAGD,oBAAY,wBAAwB;IAClC,KAAK,UAAU;IACf,GAAG,QAAQ;CACZ;AAED,eAAO,MAAM,mBAAmB;;;;;EAK9B,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEjF,eAAO,MAAM,yBAAyB;IACpC;;OAEG;;;IAGH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAGH;;OAEG;;IAEH;;OAEG;;;;;IAEH;;OAEG;;GAEkF,CAAC;AAExF,MAAM,MAAM,yBAAyB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE7F,eAAO,MAAM,uBAAuB;IAClC;;OAEG;;;IAGH;;OAEG;;IAEH;;OAEG;;;;;;;;;GAKgF,CAAC;AAEtF,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAEzF,MAAM,MAAM,oBAAoB,GAAG,yBAAyB,GAAG,uBAAuB,CAAC;AAEvF,eAAO,MAAM,aAAa;;;;;EAKxB,CAAC;AAEH,eAAO,MAAM,UAAU;;;;IAKrB,yCAAyC;;;;;;;;;;;;;;GAIkC,CAAC;AAE9E,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC,CAAC;AAE/D;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACtC,gBAAgB,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACnC,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACjC,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,QAAQ,oBAAoB,EAAE,KAAG,cAAc,EAkDpF,CAAC"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
'typename
|
|
6
|
-
'typename
|
|
7
|
-
'typename
|
|
1
|
+
import { ScriptType } from './schema';
|
|
2
|
+
export declare const translations: [{
|
|
3
|
+
readonly 'en-US': {
|
|
4
|
+
readonly [ScriptType.typename]: {
|
|
5
|
+
readonly 'typename label': "Script";
|
|
6
|
+
readonly 'typename label_zero': "Scripts";
|
|
7
|
+
readonly 'typename label_one': "Script";
|
|
8
|
+
readonly 'typename label_other': "Scripts";
|
|
8
9
|
};
|
|
9
10
|
};
|
|
10
|
-
}
|
|
11
|
-
export default _default;
|
|
11
|
+
}];
|
|
12
12
|
//# sourceMappingURL=translations.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,eAAO,MAAM,YAAY;;QAGnB,SAAA,CAAC,UAAU,CAAC,QAAQ,CAAC;;;;;UAKpB;;EAGwB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/triggers/index.ts"],"names":[],"mappings":"AAIA,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input-builder.d.ts","sourceRoot":"","sources":["../../../../src/triggers/input-builder.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvE,eAAO,MAAM,uBAAuB,GAAI,SAAS,eAAe,EAAE,OAAO,SAAS,KAAG,GA4BpF,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Context, Effect, Layer } from 'effect';
|
|
2
|
+
import { type Queue } from '@dxos/echo-db';
|
|
3
|
+
import { DXN, ObjectId } from '@dxos/keys';
|
|
4
|
+
import { QueueService } from '../services';
|
|
5
|
+
import type { TriggerKind } from '../types';
|
|
6
|
+
export type FunctionInvocationPayload = {
|
|
7
|
+
data?: any;
|
|
8
|
+
inputNodeId?: string;
|
|
9
|
+
trigger?: {
|
|
10
|
+
id: string;
|
|
11
|
+
kind: TriggerKind;
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export type TraceData = {
|
|
15
|
+
invocationId: ObjectId;
|
|
16
|
+
invocationTraceQueue: Queue;
|
|
17
|
+
};
|
|
18
|
+
declare const InvocationTracer_base: Context.TagClass<InvocationTracer, "@dxos/functions/InvocationTracer", {
|
|
19
|
+
traceInvocationStart({ payload, target, }: {
|
|
20
|
+
payload: FunctionInvocationPayload;
|
|
21
|
+
target?: DXN;
|
|
22
|
+
}): Effect.Effect<TraceData, never, QueueService>;
|
|
23
|
+
traceInvocationEnd({ trace, exception }: {
|
|
24
|
+
trace: TraceData;
|
|
25
|
+
exception?: any;
|
|
26
|
+
}): Effect.Effect<void>;
|
|
27
|
+
}>;
|
|
28
|
+
export declare class InvocationTracer extends InvocationTracer_base {
|
|
29
|
+
static layerLive: (opts: {
|
|
30
|
+
invocationTraceQueue: Queue;
|
|
31
|
+
}) => Layer.Layer<InvocationTracer, never, never>;
|
|
32
|
+
static layerTest: Layer.Layer<InvocationTracer, never, QueueService>;
|
|
33
|
+
}
|
|
34
|
+
export {};
|
|
35
|
+
//# sourceMappingURL=invocation-tracer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invocation-tracer.d.ts","sourceRoot":"","sources":["../../../../src/triggers/invocation-tracer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAGhD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAO3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE;QACR,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,WAAW,CAAC;KACnB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,YAAY,EAAE,QAAQ,CAAC;IACvB,oBAAoB,EAAE,KAAK,CAAC;CAC7B,CAAC;;+CAQK;QACD,OAAO,EAAE,yBAAyB,CAAC;QACnC,MAAM,CAAC,EAAE,GAAG,CAAC;KACd,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC;6CAER;QAAE,KAAK,EAAE,SAAS,CAAC;QAAC,SAAS,CAAC,EAAE,GAAG,CAAA;KAAE,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;;AAXxG,qBAAa,gBAAiB,SAAQ,qBAanC;IACD,MAAM,CAAC,SAAS,GAAI,MAAM;QAAE,oBAAoB,EAAE,KAAK,CAAA;KAAE,iDA2CrD;IAEJ,MAAM,CAAC,SAAS,qDAKd;CACH"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { Context, Duration, Effect, Exit, Layer } from 'effect';
|
|
2
|
+
import { ComputeEventLogger, DatabaseService, type Services, TracingService } from '../services';
|
|
3
|
+
import { LocalFunctionExecutionService } from '../services/local-function-execution';
|
|
4
|
+
import { type EventType, FunctionTrigger, type TriggerKind } from '../types';
|
|
5
|
+
import { InvocationTracer } from './invocation-tracer';
|
|
6
|
+
import { TriggerStateStore } from './trigger-state-store';
|
|
7
|
+
export type TimeControl = 'natural' | 'manual';
|
|
8
|
+
export interface TriggerDispatcherOptions {
|
|
9
|
+
/**
|
|
10
|
+
* Time control mode.
|
|
11
|
+
* - 'natural': Use real time.
|
|
12
|
+
* - 'manual': Use internal clock for testing.
|
|
13
|
+
*/
|
|
14
|
+
timeControl: TimeControl;
|
|
15
|
+
/**
|
|
16
|
+
* Starting time for manual time control mode.
|
|
17
|
+
* @default current time
|
|
18
|
+
*/
|
|
19
|
+
startingTime?: Date;
|
|
20
|
+
/**
|
|
21
|
+
* Poll interval for cron triggers in 'natural' time control mode.
|
|
22
|
+
* @default 1 second
|
|
23
|
+
*/
|
|
24
|
+
livePollInterval?: Duration.Duration;
|
|
25
|
+
}
|
|
26
|
+
export interface InvokeTriggerOptions {
|
|
27
|
+
trigger: FunctionTrigger;
|
|
28
|
+
event: EventType;
|
|
29
|
+
}
|
|
30
|
+
export interface TriggerExecutionResult {
|
|
31
|
+
triggerId: string;
|
|
32
|
+
result: Exit.Exit<unknown>;
|
|
33
|
+
}
|
|
34
|
+
type TriggerDispatcherServices = Exclude<Services, ComputeEventLogger | TracingService> | LocalFunctionExecutionService | TriggerStateStore | InvocationTracer;
|
|
35
|
+
declare const TriggerDispatcher_base: Context.TagClass<TriggerDispatcher, "@dxos/functions/TriggerDispatcher", {
|
|
36
|
+
readonly timeControl: TimeControl;
|
|
37
|
+
readonly running: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* Start the trigger dispatcher.
|
|
40
|
+
* Will automatically invoke triggers.
|
|
41
|
+
*/
|
|
42
|
+
start(): Effect.Effect<void, never, TriggerDispatcherServices>;
|
|
43
|
+
/**
|
|
44
|
+
* Stop the trigger dispatcher.
|
|
45
|
+
*/
|
|
46
|
+
stop(): Effect.Effect<void>;
|
|
47
|
+
/**
|
|
48
|
+
* Refresh triggers.
|
|
49
|
+
*/
|
|
50
|
+
refreshTriggers(): Effect.Effect<void, never, DatabaseService>;
|
|
51
|
+
/**
|
|
52
|
+
* Manually invoke a specific trigger.
|
|
53
|
+
*/
|
|
54
|
+
invokeTrigger(options: InvokeTriggerOptions): Effect.Effect<TriggerExecutionResult, never, TriggerDispatcherServices>;
|
|
55
|
+
/**
|
|
56
|
+
* Invoke all scheduled triggers who are due.
|
|
57
|
+
*/
|
|
58
|
+
invokeScheduledTriggers(opts?: {
|
|
59
|
+
kinds?: TriggerKind[];
|
|
60
|
+
}): Effect.Effect<TriggerExecutionResult[], never, TriggerDispatcherServices>;
|
|
61
|
+
/**
|
|
62
|
+
* Advance the internal clock (manual time control only).
|
|
63
|
+
* Note: Does not invoke triggers.
|
|
64
|
+
*/
|
|
65
|
+
advanceTime(duration: Duration.Duration): Effect.Effect<void>;
|
|
66
|
+
/**
|
|
67
|
+
* Get current time based on time control mode.
|
|
68
|
+
*/
|
|
69
|
+
getCurrentTime(): Date;
|
|
70
|
+
}>;
|
|
71
|
+
export declare class TriggerDispatcher extends TriggerDispatcher_base {
|
|
72
|
+
static layer: (options: Omit<TriggerDispatcherOptions, "database">) => Layer.Layer<TriggerDispatcher, never, never>;
|
|
73
|
+
}
|
|
74
|
+
export { FunctionTrigger, type TimerTrigger } from '../types';
|
|
75
|
+
//# sourceMappingURL=trigger-dispatcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trigger-dispatcher.d.ts","sourceRoot":"","sources":["../../../../src/triggers/trigger-dispatcher.ts"],"names":[],"mappings":"AAIA,OAAO,EAAS,OAAO,EAAQ,QAAQ,EAAE,MAAM,EAAU,IAAI,EAAS,KAAK,EAA4B,MAAM,QAAQ,CAAC;AAUtH,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAgB,KAAK,QAAQ,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC/G,OAAO,EAAE,6BAA6B,EAAE,MAAM,sCAAsC,CAAC;AACrF,OAAO,EACL,KAAK,SAAS,EACd,eAAe,EAKf,KAAK,WAAW,EACjB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAqB,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE7E,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE/C,MAAM,WAAW,wBAAwB;IACvC;;;;OAIG;IACH,WAAW,EAAE,WAAW,CAAC;IAEzB;;;OAGG;IACH,YAAY,CAAC,EAAE,IAAI,CAAC;IAEpB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC;CACtC;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,eAAe,CAAC;IACzB,KAAK,EAAE,SAAS,CAAC;CAClB;AACD,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;CAC5B;AAYD,KAAK,yBAAyB,GAC1B,OAAO,CAAC,QAAQ,EAAE,kBAAkB,GAAG,cAAc,CAAC,GACtD,6BAA6B,GAE7B,iBAAiB,GACjB,gBAAgB,CAAC;;0BAKK,WAAW;sBAElB,OAAO;IAEtB;;;OAGG;aACM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,yBAAyB,CAAC;IAE9D;;OAEG;YACK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;IAE3B;;OAEG;uBACgB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC;IAE9D;;OAEG;2BAEQ,oBAAoB,GAC5B,MAAM,CAAC,MAAM,CAAC,sBAAsB,EAAE,KAAK,EAAE,yBAAyB,CAAC;IAE1E;;OAEG;mCAC4B;QAC7B,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;KACvB,GAAG,MAAM,CAAC,MAAM,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,yBAAyB,CAAC;IAE7E;;;OAGG;0BACmB,QAAQ,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;IAE7D;;OAEG;sBACe,IAAI;;AA9C1B,qBAAa,iBAAkB,SAAQ,sBAgDpC;IACD,MAAM,CAAC,KAAK,GAAI,SAAS,IAAI,CAAC,wBAAwB,EAAE,UAAU,CAAC,kDAM/D;CACL;AAuXD,OAAO,EAAE,eAAe,EAAE,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trigger-dispatcher.test.d.ts","sourceRoot":"","sources":["../../../../src/triggers/trigger-dispatcher.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { KeyValueStore } from '@effect/platform';
|
|
2
|
+
import { Context } from 'effect';
|
|
3
|
+
import { Schema } from 'effect';
|
|
4
|
+
import { Effect, Layer } from 'effect';
|
|
5
|
+
import { ObjectId } from '@dxos/keys';
|
|
6
|
+
import { TriggerStateNotFoundError } from '../errors';
|
|
7
|
+
export declare const TriggerState: Schema.Struct<{
|
|
8
|
+
version: Schema.Literal<["1"]>;
|
|
9
|
+
triggerId: typeof Schema.String;
|
|
10
|
+
state: Schema.optional<Schema.TaggedStruct<"subscription", {
|
|
11
|
+
processedVersions: Schema.Record$<import("@dxos/keys").ObjectIdClass, typeof Schema.String>;
|
|
12
|
+
}>>;
|
|
13
|
+
}>;
|
|
14
|
+
export interface TriggerState extends Schema.Schema.Type<typeof TriggerState> {
|
|
15
|
+
}
|
|
16
|
+
declare const TriggerStateStore_base: Context.TagClass<TriggerStateStore, "@dxos/functions/TriggerStateStore", {
|
|
17
|
+
getState(triggerId: ObjectId): Effect.Effect<TriggerState, TriggerStateNotFoundError>;
|
|
18
|
+
saveState(state: TriggerState): Effect.Effect<void>;
|
|
19
|
+
}>;
|
|
20
|
+
export declare class TriggerStateStore extends TriggerStateStore_base {
|
|
21
|
+
static getState: (triggerId: string) => Effect.Effect<TriggerState, TriggerStateNotFoundError, TriggerStateStore>;
|
|
22
|
+
static saveState: (state: TriggerState) => Effect.Effect<void, never, TriggerStateStore>;
|
|
23
|
+
static layerKv: Layer.Layer<TriggerStateStore, never, KeyValueStore.KeyValueStore>;
|
|
24
|
+
static layerMemory: Layer.Layer<TriggerStateStore, never, never>;
|
|
25
|
+
}
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=trigger-state-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trigger-state-store.d.ts","sourceRoot":"","sources":["../../../../src/triggers/trigger-state-store.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAGvC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AAEtD,eAAO,MAAM,YAAY;;;;;;EAUvB,CAAC;AACH,MAAM,WAAW,YAAa,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,YAAY,CAAC;CAAG;;wBAKxD,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,yBAAyB,CAAC;qBACpE,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;;AAJvD,qBAAa,iBAAkB,SAAQ,sBAMpC;IACD,MAAM,CAAC,QAAQ,mGAAsE;IACrF,MAAM,CAAC,SAAS,yEAAuE;IAEvF,MAAM,CAAC,OAAO,qEAmBZ;IAEF,MAAM,CAAC,WAAW,+CAA4E;CAC/F"}
|