@dxos/functions 0.8.4-main.c4373fc → 0.8.4-main.c85a9c8dae

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.
Files changed (205) hide show
  1. package/README.md +4 -6
  2. package/dist/lib/neutral/index.mjs +1240 -0
  3. package/dist/lib/neutral/index.mjs.map +7 -0
  4. package/dist/lib/neutral/meta.json +1 -0
  5. package/dist/types/src/errors.d.ts +44 -60
  6. package/dist/types/src/errors.d.ts.map +1 -1
  7. package/dist/types/src/{examples → example}/fib.d.ts +1 -1
  8. package/dist/types/src/example/fib.d.ts.map +1 -0
  9. package/dist/types/src/example/forex-effect.d.ts +3 -0
  10. package/dist/types/src/example/forex-effect.d.ts.map +1 -0
  11. package/dist/types/src/example/index.d.ts +12 -0
  12. package/dist/types/src/example/index.d.ts.map +1 -0
  13. package/dist/types/src/{examples → example}/reply.d.ts +1 -1
  14. package/dist/types/src/example/reply.d.ts.map +1 -0
  15. package/dist/types/src/{examples → example}/sleep.d.ts +1 -1
  16. package/dist/types/src/example/sleep.d.ts.map +1 -0
  17. package/dist/types/src/index.d.ts +4 -8
  18. package/dist/types/src/index.d.ts.map +1 -1
  19. package/dist/types/src/operation-compatibility.test.d.ts +2 -0
  20. package/dist/types/src/operation-compatibility.test.d.ts.map +1 -0
  21. package/dist/types/src/protocol/functions-ai-http-client.d.ts +12 -0
  22. package/dist/types/src/protocol/functions-ai-http-client.d.ts.map +1 -0
  23. package/dist/types/src/protocol/index.d.ts +2 -0
  24. package/dist/types/src/protocol/index.d.ts.map +1 -0
  25. package/dist/types/src/protocol/protocol.d.ts +7 -0
  26. package/dist/types/src/protocol/protocol.d.ts.map +1 -0
  27. package/dist/types/src/protocol/protocol.test.d.ts +2 -0
  28. package/dist/types/src/protocol/protocol.test.d.ts.map +1 -0
  29. package/dist/types/src/sdk.d.ts +117 -0
  30. package/dist/types/src/sdk.d.ts.map +1 -0
  31. package/dist/types/src/services/credentials.d.ts +6 -4
  32. package/dist/types/src/services/credentials.d.ts.map +1 -1
  33. package/dist/types/src/services/event-logger.d.ts +33 -27
  34. package/dist/types/src/services/event-logger.d.ts.map +1 -1
  35. package/dist/types/src/services/function-invocation-service.d.ts +7 -19
  36. package/dist/types/src/services/function-invocation-service.d.ts.map +1 -1
  37. package/dist/types/src/services/index.d.ts +2 -4
  38. package/dist/types/src/services/index.d.ts.map +1 -1
  39. package/dist/types/src/services/queues.d.ts +4 -4
  40. package/dist/types/src/services/queues.d.ts.map +1 -1
  41. package/dist/types/src/services/tracing.d.ts +41 -12
  42. package/dist/types/src/services/tracing.d.ts.map +1 -1
  43. package/dist/types/src/types/Function.d.ts +52 -0
  44. package/dist/types/src/types/Function.d.ts.map +1 -0
  45. package/dist/types/src/types/Script.d.ts +21 -0
  46. package/dist/types/src/types/Script.d.ts.map +1 -0
  47. package/dist/types/src/types/Trigger.d.ts +122 -0
  48. package/dist/types/src/types/Trigger.d.ts.map +1 -0
  49. package/dist/types/src/types/TriggerEvent.d.ts +75 -0
  50. package/dist/types/src/types/TriggerEvent.d.ts.map +1 -0
  51. package/dist/types/src/types/index.d.ts +6 -0
  52. package/dist/types/src/types/index.d.ts.map +1 -0
  53. package/dist/types/src/types/url.d.ts +13 -0
  54. package/dist/types/src/types/url.d.ts.map +1 -0
  55. package/dist/types/tsconfig.tsbuildinfo +1 -1
  56. package/package.json +24 -63
  57. package/src/errors.ts +4 -4
  58. package/src/{examples → example}/fib.ts +1 -1
  59. package/src/example/forex-effect.ts +40 -0
  60. package/src/example/index.ts +13 -0
  61. package/src/{examples → example}/reply.ts +1 -1
  62. package/src/{examples → example}/sleep.ts +1 -1
  63. package/src/index.ts +4 -8
  64. package/src/operation-compatibility.test.ts +185 -0
  65. package/src/protocol/functions-ai-http-client.ts +67 -0
  66. package/src/{executor → protocol}/index.ts +1 -1
  67. package/src/protocol/protocol.test.ts +59 -0
  68. package/src/protocol/protocol.ts +258 -0
  69. package/src/sdk.ts +297 -0
  70. package/src/services/credentials.ts +32 -17
  71. package/src/services/event-logger.ts +10 -4
  72. package/src/services/function-invocation-service.ts +23 -70
  73. package/src/services/index.ts +2 -4
  74. package/src/services/queues.ts +5 -7
  75. package/src/services/tracing.ts +68 -44
  76. package/src/types/Function.ts +83 -0
  77. package/src/types/Script.ts +34 -0
  78. package/src/types/Trigger.ts +153 -0
  79. package/src/types/TriggerEvent.ts +62 -0
  80. package/src/types/index.ts +9 -0
  81. package/src/types/url.ts +32 -0
  82. package/dist/lib/browser/bundler/index.mjs +0 -269
  83. package/dist/lib/browser/bundler/index.mjs.map +0 -7
  84. package/dist/lib/browser/chunk-J5LGTIGS.mjs +0 -10
  85. package/dist/lib/browser/chunk-J5LGTIGS.mjs.map +0 -7
  86. package/dist/lib/browser/chunk-LKYT2SAL.mjs +0 -665
  87. package/dist/lib/browser/chunk-LKYT2SAL.mjs.map +0 -7
  88. package/dist/lib/browser/edge/index.mjs +0 -83
  89. package/dist/lib/browser/edge/index.mjs.map +0 -7
  90. package/dist/lib/browser/index.mjs +0 -1395
  91. package/dist/lib/browser/index.mjs.map +0 -7
  92. package/dist/lib/browser/meta.json +0 -1
  93. package/dist/lib/browser/testing/index.mjs +0 -131
  94. package/dist/lib/browser/testing/index.mjs.map +0 -7
  95. package/dist/lib/node-esm/bundler/index.mjs +0 -270
  96. package/dist/lib/node-esm/bundler/index.mjs.map +0 -7
  97. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
  98. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +0 -7
  99. package/dist/lib/node-esm/chunk-NAQIKLZB.mjs +0 -667
  100. package/dist/lib/node-esm/chunk-NAQIKLZB.mjs.map +0 -7
  101. package/dist/lib/node-esm/edge/index.mjs +0 -84
  102. package/dist/lib/node-esm/edge/index.mjs.map +0 -7
  103. package/dist/lib/node-esm/index.mjs +0 -1396
  104. package/dist/lib/node-esm/index.mjs.map +0 -7
  105. package/dist/lib/node-esm/meta.json +0 -1
  106. package/dist/lib/node-esm/testing/index.mjs +0 -132
  107. package/dist/lib/node-esm/testing/index.mjs.map +0 -7
  108. package/dist/types/src/bundler/bundler.d.ts +0 -49
  109. package/dist/types/src/bundler/bundler.d.ts.map +0 -1
  110. package/dist/types/src/bundler/bundler.test.d.ts +0 -2
  111. package/dist/types/src/bundler/bundler.test.d.ts.map +0 -1
  112. package/dist/types/src/bundler/index.d.ts +0 -2
  113. package/dist/types/src/bundler/index.d.ts.map +0 -1
  114. package/dist/types/src/edge/functions.d.ts +0 -17
  115. package/dist/types/src/edge/functions.d.ts.map +0 -1
  116. package/dist/types/src/edge/index.d.ts +0 -2
  117. package/dist/types/src/edge/index.d.ts.map +0 -1
  118. package/dist/types/src/examples/fib.d.ts.map +0 -1
  119. package/dist/types/src/examples/index.d.ts +0 -4
  120. package/dist/types/src/examples/index.d.ts.map +0 -1
  121. package/dist/types/src/examples/reply.d.ts.map +0 -1
  122. package/dist/types/src/examples/sleep.d.ts.map +0 -1
  123. package/dist/types/src/executor/executor.d.ts +0 -14
  124. package/dist/types/src/executor/executor.d.ts.map +0 -1
  125. package/dist/types/src/executor/index.d.ts +0 -2
  126. package/dist/types/src/executor/index.d.ts.map +0 -1
  127. package/dist/types/src/handler.d.ts +0 -109
  128. package/dist/types/src/handler.d.ts.map +0 -1
  129. package/dist/types/src/schema.d.ts +0 -43
  130. package/dist/types/src/schema.d.ts.map +0 -1
  131. package/dist/types/src/services/database.d.ts +0 -67
  132. package/dist/types/src/services/database.d.ts.map +0 -1
  133. package/dist/types/src/services/function-invocation-service.test.d.ts +0 -2
  134. package/dist/types/src/services/function-invocation-service.test.d.ts.map +0 -1
  135. package/dist/types/src/services/local-function-execution.d.ts +0 -34
  136. package/dist/types/src/services/local-function-execution.d.ts.map +0 -1
  137. package/dist/types/src/services/remote-function-execution-service.d.ts +0 -22
  138. package/dist/types/src/services/remote-function-execution-service.d.ts.map +0 -1
  139. package/dist/types/src/services/service-container.d.ts +0 -57
  140. package/dist/types/src/services/service-container.d.ts.map +0 -1
  141. package/dist/types/src/services/service-registry.d.ts +0 -31
  142. package/dist/types/src/services/service-registry.d.ts.map +0 -1
  143. package/dist/types/src/services/service-registry.test.d.ts +0 -2
  144. package/dist/types/src/services/service-registry.test.d.ts.map +0 -1
  145. package/dist/types/src/testing/index.d.ts +0 -3
  146. package/dist/types/src/testing/index.d.ts.map +0 -1
  147. package/dist/types/src/testing/layer.d.ts +0 -18
  148. package/dist/types/src/testing/layer.d.ts.map +0 -1
  149. package/dist/types/src/testing/logger.d.ts +0 -5
  150. package/dist/types/src/testing/logger.d.ts.map +0 -1
  151. package/dist/types/src/testing/persist-database.test.d.ts +0 -2
  152. package/dist/types/src/testing/persist-database.test.d.ts.map +0 -1
  153. package/dist/types/src/testing/services.d.ts +0 -59
  154. package/dist/types/src/testing/services.d.ts.map +0 -1
  155. package/dist/types/src/trace.d.ts +0 -122
  156. package/dist/types/src/trace.d.ts.map +0 -1
  157. package/dist/types/src/translations.d.ts +0 -12
  158. package/dist/types/src/translations.d.ts.map +0 -1
  159. package/dist/types/src/triggers/index.d.ts +0 -4
  160. package/dist/types/src/triggers/index.d.ts.map +0 -1
  161. package/dist/types/src/triggers/input-builder.d.ts +0 -3
  162. package/dist/types/src/triggers/input-builder.d.ts.map +0 -1
  163. package/dist/types/src/triggers/invocation-tracer.d.ts +0 -37
  164. package/dist/types/src/triggers/invocation-tracer.d.ts.map +0 -1
  165. package/dist/types/src/triggers/trigger-dispatcher.d.ts +0 -78
  166. package/dist/types/src/triggers/trigger-dispatcher.d.ts.map +0 -1
  167. package/dist/types/src/triggers/trigger-dispatcher.test.d.ts +0 -2
  168. package/dist/types/src/triggers/trigger-dispatcher.test.d.ts.map +0 -1
  169. package/dist/types/src/triggers/trigger-state-store.d.ts +0 -28
  170. package/dist/types/src/triggers/trigger-state-store.d.ts.map +0 -1
  171. package/dist/types/src/types.d.ts +0 -230
  172. package/dist/types/src/types.d.ts.map +0 -1
  173. package/dist/types/src/url.d.ts +0 -21
  174. package/dist/types/src/url.d.ts.map +0 -1
  175. package/src/bundler/bundler.test.ts +0 -58
  176. package/src/bundler/bundler.ts +0 -295
  177. package/src/bundler/index.ts +0 -5
  178. package/src/edge/functions.ts +0 -67
  179. package/src/edge/index.ts +0 -9
  180. package/src/examples/index.ts +0 -7
  181. package/src/executor/executor.ts +0 -58
  182. package/src/handler.ts +0 -225
  183. package/src/schema.ts +0 -71
  184. package/src/services/database.ts +0 -175
  185. package/src/services/function-invocation-service.test.ts +0 -81
  186. package/src/services/local-function-execution.ts +0 -153
  187. package/src/services/remote-function-execution-service.ts +0 -63
  188. package/src/services/service-container.ts +0 -115
  189. package/src/services/service-registry.test.ts +0 -45
  190. package/src/services/service-registry.ts +0 -63
  191. package/src/testing/index.ts +0 -6
  192. package/src/testing/layer.ts +0 -114
  193. package/src/testing/logger.ts +0 -17
  194. package/src/testing/persist-database.test.ts +0 -87
  195. package/src/testing/services.ts +0 -115
  196. package/src/trace.ts +0 -178
  197. package/src/translations.ts +0 -20
  198. package/src/triggers/index.ts +0 -7
  199. package/src/triggers/input-builder.ts +0 -35
  200. package/src/triggers/invocation-tracer.ts +0 -101
  201. package/src/triggers/trigger-dispatcher.test.ts +0 -665
  202. package/src/triggers/trigger-dispatcher.ts +0 -533
  203. package/src/triggers/trigger-state-store.ts +0 -61
  204. package/src/types.ts +0 -218
  205. package/src/url.ts +0 -55
@@ -1,59 +0,0 @@
1
- import type * as Context from 'effect/Context';
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';
13
- export type TestServiceOptions = {
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
- };
54
- };
55
- /**
56
- * @deprecated
57
- */
58
- export declare const createTestServices: ({ ai, credentials, db, logging, queues, space, tracing, }?: TestServiceOptions) => ServiceContainer;
59
- //# sourceMappingURL=services.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../../src/testing/services.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAE/C,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,122 +0,0 @@
1
- import * as Schema from 'effect/Schema';
2
- import { type Ref, Type } from '@dxos/echo';
3
- import { Queue } from '@dxos/echo-db';
4
- import { FunctionTrigger } from './types';
5
- export declare enum InvocationOutcome {
6
- SUCCESS = "success",
7
- FAILURE = "failure",
8
- PENDING = "pending"
9
- }
10
- export declare enum InvocationTraceEventType {
11
- START = "start",
12
- END = "end"
13
- }
14
- export declare const TraceEventException: Schema.Struct<{
15
- timestamp: typeof Schema.Number;
16
- message: typeof Schema.String;
17
- name: typeof Schema.String;
18
- stack: Schema.optional<typeof Schema.String>;
19
- }>;
20
- export type TraceEventException = Schema.Schema.Type<typeof TraceEventException>;
21
- export declare const InvocationTraceStartEvent: Type.obj<Schema.Struct<{
22
- /**
23
- * Queue message id.
24
- */
25
- id: import("@dxos/keys").ObjectIdClass;
26
- type: Schema.Literal<[InvocationTraceEventType.START]>;
27
- /**
28
- * Invocation id, the same for invocation start and end events.
29
- */
30
- invocationId: import("@dxos/keys").ObjectIdClass;
31
- /**
32
- * Event generation time.
33
- */
34
- timestamp: typeof Schema.Number;
35
- /**
36
- * Data passed to function / workflow as an argument.
37
- */
38
- input: typeof Schema.Object;
39
- /**
40
- * Queue for function/workflow invocation events.
41
- */
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
- /**
44
- * DXN of the invoked function/workflow.
45
- */
46
- invocationTarget: Schema.optional<Type.ref<Schema.Schema<Type.Expando, {
47
- [x: string]: any;
48
- id: string;
49
- }, never>>>;
50
- /**
51
- * Present for automatic invocations.
52
- */
53
- trigger: Schema.optional<Type.ref<Schema.Schema<FunctionTrigger, import("./types").FunctionTriggerEncoded, never>>>;
54
- }>>;
55
- export type InvocationTraceStartEvent = Schema.Schema.Type<typeof InvocationTraceStartEvent>;
56
- export declare const InvocationTraceEndEvent: Type.obj<Schema.Struct<{
57
- /**
58
- * Trace event id.
59
- */
60
- id: import("@dxos/keys").ObjectIdClass;
61
- type: Schema.Literal<[InvocationTraceEventType.END]>;
62
- /**
63
- * Invocation id, will be the same for invocation start and end.
64
- */
65
- invocationId: import("@dxos/keys").ObjectIdClass;
66
- /**
67
- * Event generation time.
68
- */
69
- timestamp: typeof Schema.Number;
70
- outcome: Schema.Enums<typeof InvocationOutcome>;
71
- exception: Schema.optional<Schema.Struct<{
72
- timestamp: typeof Schema.Number;
73
- message: typeof Schema.String;
74
- name: typeof Schema.String;
75
- stack: Schema.optional<typeof Schema.String>;
76
- }>>;
77
- }>>;
78
- export type InvocationTraceEndEvent = Schema.Schema.Type<typeof InvocationTraceEndEvent>;
79
- export type InvocationTraceEvent = InvocationTraceStartEvent | InvocationTraceEndEvent;
80
- export declare const TraceEventLog: Schema.Struct<{
81
- timestamp: typeof Schema.Number;
82
- level: typeof Schema.String;
83
- message: typeof Schema.String;
84
- context: Schema.optional<typeof Schema.Object>;
85
- }>;
86
- export declare const TraceEvent: Type.obj<Schema.Struct<{
87
- id: import("@dxos/keys").ObjectIdClass;
88
- outcome: typeof Schema.String;
89
- truncated: typeof Schema.Boolean;
90
- /** Time when the event was persisted. */
91
- ingestionTimestamp: typeof Schema.Number;
92
- logs: Schema.Array$<Schema.Struct<{
93
- timestamp: typeof Schema.Number;
94
- level: typeof Schema.String;
95
- message: typeof Schema.String;
96
- context: Schema.optional<typeof Schema.Object>;
97
- }>>;
98
- exceptions: Schema.Array$<Schema.Struct<{
99
- timestamp: typeof Schema.Number;
100
- message: typeof Schema.String;
101
- name: typeof Schema.String;
102
- stack: Schema.optional<typeof Schema.String>;
103
- }>>;
104
- }>>;
105
- export type TraceEvent = Schema.Schema.Type<typeof TraceEvent>;
106
- /**
107
- * InvocationTrace event format.
108
- * This is the combined format of InvocationTraceStartEvent and InvocationTraceEndEvents for UI consumption.
109
- */
110
- export type InvocationSpan = {
111
- id: string;
112
- timestamp: number;
113
- duration: number;
114
- outcome: InvocationOutcome;
115
- input: object;
116
- invocationTraceQueue?: Ref.Ref<Queue>;
117
- invocationTarget?: Ref.Ref<Type.Expando>;
118
- trigger?: Ref.Ref<FunctionTrigger>;
119
- exception?: TraceEventException;
120
- };
121
- export declare const createInvocationSpans: (items?: InvocationTraceEvent[]) => InvocationSpan[];
122
- //# sourceMappingURL=trace.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"trace.d.ts","sourceRoot":"","sources":["../../../src/trace.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,KAAK,GAAG,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAGtC,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 +0,0 @@
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";
9
- };
10
- };
11
- }];
12
- //# sourceMappingURL=translations.d.ts.map
@@ -1 +0,0 @@
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"}
@@ -1,4 +0,0 @@
1
- export * from './invocation-tracer';
2
- export * from './trigger-dispatcher';
3
- export * from './trigger-state-store';
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
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"}
@@ -1,3 +0,0 @@
1
- import { type EventType, type FunctionTrigger } from '@dxos/functions';
2
- export declare const createInvocationPayload: (trigger: FunctionTrigger, event: EventType) => any;
3
- //# sourceMappingURL=input-builder.d.ts.map
@@ -1 +0,0 @@
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"}
@@ -1,37 +0,0 @@
1
- import * as Context from 'effect/Context';
2
- import * as Effect from 'effect/Effect';
3
- import * as Layer from 'effect/Layer';
4
- import { type Queue } from '@dxos/echo-db';
5
- import { DXN, ObjectId } from '@dxos/keys';
6
- import { QueueService } from '../services';
7
- import type { TriggerKind } from '../types';
8
- export type FunctionInvocationPayload = {
9
- data?: any;
10
- inputNodeId?: string;
11
- trigger?: {
12
- id: string;
13
- kind: TriggerKind;
14
- };
15
- };
16
- export type TraceData = {
17
- invocationId: ObjectId;
18
- invocationTraceQueue: Queue;
19
- };
20
- declare const InvocationTracer_base: Context.TagClass<InvocationTracer, "@dxos/functions/InvocationTracer", {
21
- traceInvocationStart({ payload, target, }: {
22
- payload: FunctionInvocationPayload;
23
- target?: DXN;
24
- }): Effect.Effect<TraceData, never, QueueService>;
25
- traceInvocationEnd({ trace, exception }: {
26
- trace: TraceData;
27
- exception?: any;
28
- }): Effect.Effect<void>;
29
- }>;
30
- export declare class InvocationTracer extends InvocationTracer_base {
31
- static layerLive: (opts: {
32
- invocationTraceQueue: Queue;
33
- }) => Layer.Layer<InvocationTracer, never, never>;
34
- static layerTest: Layer.Layer<InvocationTracer, never, QueueService>;
35
- }
36
- export {};
37
- //# sourceMappingURL=invocation-tracer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"invocation-tracer.d.ts","sourceRoot":"","sources":["../../../../src/triggers/invocation-tracer.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAGtC,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"}
@@ -1,78 +0,0 @@
1
- import * as Context from 'effect/Context';
2
- import * as Duration from 'effect/Duration';
3
- import * as Effect from 'effect/Effect';
4
- import * as Exit from 'effect/Exit';
5
- import * as Layer from 'effect/Layer';
6
- import { DatabaseService, FunctionInvocationService, QueueService } from '../services';
7
- import { type EventType, FunctionTrigger, type TriggerKind } from '../types';
8
- import { InvocationTracer } from './invocation-tracer';
9
- import { TriggerStateStore } from './trigger-state-store';
10
- export type TimeControl = 'natural' | 'manual';
11
- export interface TriggerDispatcherOptions {
12
- /**
13
- * Time control mode.
14
- * - 'natural': Use real time.
15
- * - 'manual': Use internal clock for testing.
16
- */
17
- timeControl: TimeControl;
18
- /**
19
- * Starting time for manual time control mode.
20
- * @default current time
21
- */
22
- startingTime?: Date;
23
- /**
24
- * Poll interval for cron triggers in 'natural' time control mode.
25
- * @default 1 second
26
- */
27
- livePollInterval?: Duration.Duration;
28
- }
29
- export interface InvokeTriggerOptions {
30
- trigger: FunctionTrigger;
31
- event: EventType;
32
- }
33
- export interface TriggerExecutionResult {
34
- triggerId: string;
35
- result: Exit.Exit<unknown>;
36
- }
37
- type TriggerDispatcherServices = FunctionInvocationService | TriggerStateStore | InvocationTracer | QueueService | DatabaseService;
38
- declare const TriggerDispatcher_base: Context.TagClass<TriggerDispatcher, "@dxos/functions/TriggerDispatcher", {
39
- readonly timeControl: TimeControl;
40
- readonly running: boolean;
41
- /**
42
- * Start the trigger dispatcher.
43
- * Will automatically invoke triggers.
44
- */
45
- start(): Effect.Effect<void, never, TriggerDispatcherServices>;
46
- /**
47
- * Stop the trigger dispatcher.
48
- */
49
- stop(): Effect.Effect<void>;
50
- /**
51
- * Refresh triggers.
52
- */
53
- refreshTriggers(): Effect.Effect<void, never, DatabaseService>;
54
- /**
55
- * Manually invoke a specific trigger.
56
- */
57
- invokeTrigger(options: InvokeTriggerOptions): Effect.Effect<TriggerExecutionResult, never, TriggerDispatcherServices>;
58
- /**
59
- * Invoke all scheduled triggers who are due.
60
- */
61
- invokeScheduledTriggers(opts?: {
62
- kinds?: TriggerKind[];
63
- }): Effect.Effect<TriggerExecutionResult[], never, TriggerDispatcherServices>;
64
- /**
65
- * Advance the internal clock (manual time control only).
66
- * Note: Does not invoke triggers.
67
- */
68
- advanceTime(duration: Duration.Duration): Effect.Effect<void>;
69
- /**
70
- * Get current time based on time control mode.
71
- */
72
- getCurrentTime(): Date;
73
- }>;
74
- export declare class TriggerDispatcher extends TriggerDispatcher_base {
75
- static layer: (options: Omit<TriggerDispatcherOptions, "database">) => Layer.Layer<TriggerDispatcher, never, never>;
76
- }
77
- export { FunctionTrigger, type TimerTrigger } from '../types';
78
- //# sourceMappingURL=trigger-dispatcher.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"trigger-dispatcher.d.ts","sourceRoot":"","sources":["../../../../src/triggers/trigger-dispatcher.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAE1C,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AAEpC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAatC,OAAO,EAEL,eAAe,EACf,yBAAyB,EACzB,YAAY,EAEb,MAAM,aAAa,CAAC;AACrB,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,yBAAyB,GAEzB,iBAAiB,GACjB,gBAAgB,GAChB,YAAY,GACZ,eAAe,CAAC;;0BAKM,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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=trigger-dispatcher.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"trigger-dispatcher.test.d.ts","sourceRoot":"","sources":["../../../../src/triggers/trigger-dispatcher.test.ts"],"names":[],"mappings":""}
@@ -1,28 +0,0 @@
1
- import * as KeyValueStore from '@effect/platform/KeyValueStore';
2
- import * as Context from 'effect/Context';
3
- import * as Effect from 'effect/Effect';
4
- import * as Layer from 'effect/Layer';
5
- import * as Schema from 'effect/Schema';
6
- import { ObjectId } from '@dxos/keys';
7
- import { TriggerStateNotFoundError } from '../errors';
8
- export declare const TriggerState: Schema.Struct<{
9
- version: Schema.Literal<["1"]>;
10
- triggerId: typeof Schema.String;
11
- state: Schema.optional<Schema.TaggedStruct<"subscription", {
12
- processedVersions: Schema.Record$<import("@dxos/keys").ObjectIdClass, typeof Schema.String>;
13
- }>>;
14
- }>;
15
- export interface TriggerState extends Schema.Schema.Type<typeof TriggerState> {
16
- }
17
- declare const TriggerStateStore_base: Context.TagClass<TriggerStateStore, "@dxos/functions/TriggerStateStore", {
18
- getState(triggerId: ObjectId): Effect.Effect<TriggerState, TriggerStateNotFoundError>;
19
- saveState(state: TriggerState): Effect.Effect<void>;
20
- }>;
21
- export declare class TriggerStateStore extends TriggerStateStore_base {
22
- static getState: (triggerId: string) => Effect.Effect<TriggerState, TriggerStateNotFoundError, TriggerStateStore>;
23
- static saveState: (state: TriggerState) => Effect.Effect<void, never, TriggerStateStore>;
24
- static layerKv: Layer.Layer<TriggerStateStore, never, KeyValueStore.KeyValueStore>;
25
- static layerMemory: Layer.Layer<TriggerStateStore, never, never>;
26
- }
27
- export {};
28
- //# sourceMappingURL=trigger-state-store.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"trigger-state-store.d.ts","sourceRoot":"","sources":["../../../../src/triggers/trigger-state-store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,aAAa,MAAM,gCAAgC,CAAC;AAChE,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,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"}
@@ -1,230 +0,0 @@
1
- import * as Schema from 'effect/Schema';
2
- import { QueryAST, Type } from '@dxos/echo';
3
- import { Expando, Ref } from '@dxos/echo/internal';
4
- /**
5
- * Type discriminator for TriggerType.
6
- * Every spec has a type field of type TriggerKind that we can use to understand which type we're working with.
7
- * https://www.typescriptlang.org/docs/handbook/2/narrowing.html#discriminated-unions
8
- */
9
- export declare const TriggerKinds: readonly ["timer", "webhook", "subscription", "email", "queue"];
10
- export type TriggerKind = (typeof TriggerKinds)[number];
11
- /**
12
- * Cron timer.
13
- */
14
- declare const TimerTriggerSchema: Schema.mutable<Schema.Struct<{
15
- kind: Schema.Literal<["timer"]>;
16
- cron: Schema.SchemaClass<string, string, never>;
17
- }>>;
18
- export type TimerTrigger = Schema.Schema.Type<typeof TimerTriggerSchema>;
19
- declare const EmailTriggerSchema: Schema.mutable<Schema.Struct<{
20
- kind: Schema.Literal<["email"]>;
21
- }>>;
22
- export type EmailTrigger = Schema.Schema.Type<typeof EmailTriggerSchema>;
23
- declare const QueueTriggerSchema: Schema.mutable<Schema.Struct<{
24
- kind: Schema.Literal<["queue"]>;
25
- queue: Schema.refine<string, typeof Schema.NonEmptyString>;
26
- }>>;
27
- export type QueueTrigger = Schema.Schema.Type<typeof QueueTriggerSchema>;
28
- /**
29
- * Webhook.
30
- */
31
- declare const WebhookTriggerSchema: Schema.mutable<Schema.Struct<{
32
- kind: Schema.Literal<["webhook"]>;
33
- method: Schema.optional<Schema.SchemaClass<string, string, never>>;
34
- port: Schema.optional<Schema.SchemaClass<number, number, never>>;
35
- }>>;
36
- export type WebhookTrigger = Schema.Schema.Type<typeof WebhookTriggerSchema>;
37
- /**
38
- * Subscription.
39
- */
40
- declare const SubscriptionTriggerSchema: Schema.mutable<Schema.Struct<{
41
- kind: Schema.Literal<["subscription"]>;
42
- query: Schema.mutable<Schema.Struct<{
43
- string: Schema.optional<Schema.SchemaClass<string, string, never>>;
44
- ast: Schema.Schema<QueryAST.QuerySelectClause | QueryAST.QueryFilterClause | QueryAST.QueryReferenceTraversalClause | QueryAST.QueryIncomingReferencesClause | QueryAST.QueryRelationClause | QueryAST.QueryRelationTraversalClause | QueryAST.QueryUnionClause | QueryAST.QuerySetDifferenceClause | QueryAST.QueryOrderClause | QueryAST.QueryOptionsClause, QueryAST.QuerySelectClause | QueryAST.QueryFilterClause | QueryAST.QueryReferenceTraversalClause | QueryAST.QueryIncomingReferencesClause | QueryAST.QueryRelationClause | QueryAST.QueryRelationTraversalClause | QueryAST.QueryUnionClause | QueryAST.QuerySetDifferenceClause | QueryAST.QueryOrderClause | QueryAST.QueryOptionsClause, never>;
45
- }>>;
46
- options: Schema.optional<Schema.Struct<{
47
- deep: Schema.optional<Schema.SchemaClass<boolean, boolean, never>>;
48
- delay: Schema.optional<Schema.SchemaClass<number, number, never>>;
49
- }>>;
50
- }>>;
51
- export type SubscriptionTrigger = Schema.Schema.Type<typeof SubscriptionTriggerSchema>;
52
- /**
53
- * Trigger schema (discriminated union).
54
- */
55
- export declare const TriggerSchema: Schema.Union<[Schema.mutable<Schema.Struct<{
56
- kind: Schema.Literal<["timer"]>;
57
- cron: Schema.SchemaClass<string, string, never>;
58
- }>>, Schema.mutable<Schema.Struct<{
59
- kind: Schema.Literal<["webhook"]>;
60
- method: Schema.optional<Schema.SchemaClass<string, string, never>>;
61
- port: Schema.optional<Schema.SchemaClass<number, number, never>>;
62
- }>>, Schema.mutable<Schema.Struct<{
63
- kind: Schema.Literal<["subscription"]>;
64
- query: Schema.mutable<Schema.Struct<{
65
- string: Schema.optional<Schema.SchemaClass<string, string, never>>;
66
- ast: Schema.Schema<QueryAST.QuerySelectClause | QueryAST.QueryFilterClause | QueryAST.QueryReferenceTraversalClause | QueryAST.QueryIncomingReferencesClause | QueryAST.QueryRelationClause | QueryAST.QueryRelationTraversalClause | QueryAST.QueryUnionClause | QueryAST.QuerySetDifferenceClause | QueryAST.QueryOrderClause | QueryAST.QueryOptionsClause, QueryAST.QuerySelectClause | QueryAST.QueryFilterClause | QueryAST.QueryReferenceTraversalClause | QueryAST.QueryIncomingReferencesClause | QueryAST.QueryRelationClause | QueryAST.QueryRelationTraversalClause | QueryAST.QueryUnionClause | QueryAST.QuerySetDifferenceClause | QueryAST.QueryOrderClause | QueryAST.QueryOptionsClause, never>;
67
- }>>;
68
- options: Schema.optional<Schema.Struct<{
69
- deep: Schema.optional<Schema.SchemaClass<boolean, boolean, never>>;
70
- delay: Schema.optional<Schema.SchemaClass<number, number, never>>;
71
- }>>;
72
- }>>, Schema.mutable<Schema.Struct<{
73
- kind: Schema.Literal<["email"]>;
74
- }>>, Schema.mutable<Schema.Struct<{
75
- kind: Schema.Literal<["queue"]>;
76
- queue: Schema.refine<string, typeof Schema.NonEmptyString>;
77
- }>>]>;
78
- export type TriggerType = Schema.Schema.Type<typeof TriggerSchema>;
79
- export type EventType = EmailTriggerOutput | WebhookTriggerOutput | QueueTriggerOutput | SubscriptionTriggerOutput | TimerTriggerOutput;
80
- export declare const EmailTriggerOutput: Schema.mutable<Schema.Struct<{
81
- from: typeof Schema.String;
82
- to: typeof Schema.String;
83
- subject: typeof Schema.String;
84
- created: typeof Schema.String;
85
- body: typeof Schema.String;
86
- }>>;
87
- export type EmailTriggerOutput = Schema.Schema.Type<typeof EmailTriggerOutput>;
88
- export declare const WebhookTriggerOutput: Schema.mutable<Schema.Struct<{
89
- url: typeof Schema.String;
90
- method: Schema.Literal<["GET", "POST"]>;
91
- headers: Schema.Record$<typeof Schema.String, typeof Schema.String>;
92
- bodyText: typeof Schema.String;
93
- }>>;
94
- export type WebhookTriggerOutput = Schema.Schema.Type<typeof WebhookTriggerOutput>;
95
- export declare const QueueTriggerOutput: Schema.mutable<Schema.Struct<{
96
- queue: Schema.refine<string, typeof Schema.NonEmptyString>;
97
- item: typeof Schema.Any;
98
- cursor: typeof Schema.String;
99
- }>>;
100
- export type QueueTriggerOutput = Schema.Schema.Type<typeof QueueTriggerOutput>;
101
- export declare const SubscriptionTriggerOutput: Schema.mutable<Schema.Struct<{
102
- /**
103
- * Type of the mutation.
104
- */
105
- type: typeof Schema.String;
106
- /**
107
- * Reference to the object that was changed or created.
108
- */
109
- subject: Type.ref<Type.obj<Schema.Struct<{}>>>;
110
- /**
111
- * @deprecated
112
- */
113
- changedObjectId: Schema.optional<typeof Schema.String>;
114
- }>>;
115
- export type SubscriptionTriggerOutput = Schema.Schema.Type<typeof SubscriptionTriggerOutput>;
116
- export declare const TimerTriggerOutput: Schema.mutable<Schema.Struct<{
117
- tick: typeof Schema.Number;
118
- }>>;
119
- export type TimerTriggerOutput = Schema.Schema.Type<typeof TimerTriggerOutput>;
120
- /**
121
- * Function trigger.
122
- * Function is invoked with the `payload` passed as input data.
123
- * The event that triggers the function is available in the function context.
124
- */
125
- declare const FunctionTrigger_: Type.obj<Schema.Struct<{
126
- /**
127
- * Function or workflow to invoke.
128
- */
129
- function: Schema.optional<Schema.SchemaClass<Ref<Expando>, import("@dxos/echo-protocol").EncodedReference, never>>;
130
- /**
131
- * Only used for workflowSchema.
132
- * Specifies the input node in the circuit.
133
- * @deprecated Remove and enforce a single input node in all compute graphSchema.
134
- */
135
- inputNodeId: Schema.optional<Schema.SchemaClass<string, string, never>>;
136
- enabled: Schema.optional<Schema.SchemaClass<boolean, boolean, never>>;
137
- spec: Schema.optional<Schema.Union<[Schema.mutable<Schema.Struct<{
138
- kind: Schema.Literal<["timer"]>;
139
- cron: Schema.SchemaClass<string, string, never>;
140
- }>>, Schema.mutable<Schema.Struct<{
141
- kind: Schema.Literal<["webhook"]>;
142
- method: Schema.optional<Schema.SchemaClass<string, string, never>>;
143
- port: Schema.optional<Schema.SchemaClass<number, number, never>>;
144
- }>>, Schema.mutable<Schema.Struct<{
145
- kind: Schema.Literal<["subscription"]>;
146
- query: Schema.mutable<Schema.Struct<{
147
- string: Schema.optional<Schema.SchemaClass<string, string, never>>;
148
- ast: Schema.Schema<QueryAST.QuerySelectClause | QueryAST.QueryFilterClause | QueryAST.QueryReferenceTraversalClause | QueryAST.QueryIncomingReferencesClause | QueryAST.QueryRelationClause | QueryAST.QueryRelationTraversalClause | QueryAST.QueryUnionClause | QueryAST.QuerySetDifferenceClause | QueryAST.QueryOrderClause | QueryAST.QueryOptionsClause, QueryAST.QuerySelectClause | QueryAST.QueryFilterClause | QueryAST.QueryReferenceTraversalClause | QueryAST.QueryIncomingReferencesClause | QueryAST.QueryRelationClause | QueryAST.QueryRelationTraversalClause | QueryAST.QueryUnionClause | QueryAST.QuerySetDifferenceClause | QueryAST.QueryOrderClause | QueryAST.QueryOptionsClause, never>;
149
- }>>;
150
- options: Schema.optional<Schema.Struct<{
151
- deep: Schema.optional<Schema.SchemaClass<boolean, boolean, never>>;
152
- delay: Schema.optional<Schema.SchemaClass<number, number, never>>;
153
- }>>;
154
- }>>, Schema.mutable<Schema.Struct<{
155
- kind: Schema.Literal<["email"]>;
156
- }>>, Schema.mutable<Schema.Struct<{
157
- kind: Schema.Literal<["queue"]>;
158
- queue: Schema.refine<string, typeof Schema.NonEmptyString>;
159
- }>>]>>;
160
- /**
161
- * Passed as the input data to the function.
162
- * Must match the function's input schema.
163
- *
164
- * @example
165
- * {
166
- * item: '{{$.trigger.event}}',
167
- * instructions: 'Summarize and perform entity-extraction'
168
- * mailbox: { '/': 'dxn:echo:AAA:ZZZ' }
169
- * }
170
- */
171
- input: Schema.optional<Schema.mutable<Schema.Record$<typeof Schema.String, typeof Schema.Any>>>;
172
- }>>;
173
- export interface FunctionTrigger extends Schema.Schema.Type<typeof FunctionTrigger_> {
174
- }
175
- export interface FunctionTriggerEncoded extends Schema.Schema.Encoded<typeof FunctionTrigger_> {
176
- }
177
- export declare const FunctionTrigger: Schema.Schema<FunctionTrigger, FunctionTriggerEncoded>;
178
- /**
179
- * Function manifest file.
180
- */
181
- export declare const FunctionManifestSchema: Schema.Struct<{
182
- functions: Schema.optional<Schema.mutable<Schema.Array$<Schema.Schema<import("@dxos/echo/internal").ExcludeId<Type.OfKind<import("@dxos/echo/internal").EntityKind.Object> & {
183
- name: string;
184
- description?: string | undefined;
185
- source?: Ref<Type.OfKind<import("@dxos/echo/internal").EntityKind.Object> & {
186
- name?: string | undefined;
187
- description?: string | undefined;
188
- changed?: boolean | undefined;
189
- source: Ref<Type.OfKind<import("@dxos/echo/internal").EntityKind.Object> & {
190
- content: string;
191
- }>;
192
- }> | undefined;
193
- version: string;
194
- key?: string | undefined;
195
- inputSchema?: Type.JsonSchema | undefined;
196
- outputSchema?: Type.JsonSchema | undefined;
197
- binding?: string | undefined;
198
- }> & import("@dxos/echo/internal").WithMeta, {
199
- id: string;
200
- name: string;
201
- version: string;
202
- description?: string | undefined;
203
- source?: import("@dxos/echo-protocol").EncodedReference | undefined;
204
- key?: string | undefined;
205
- inputSchema?: Type.JsonSchema | undefined;
206
- outputSchema?: Type.JsonSchema | undefined;
207
- binding?: string | undefined;
208
- }, never>>>>;
209
- triggers: Schema.optional<Schema.mutable<Schema.Array$<Schema.Schema<import("@dxos/echo/internal").ExcludeId<FunctionTrigger> & import("@dxos/echo/internal").WithMeta, FunctionTriggerEncoded, never>>>>;
210
- }>;
211
- export type FunctionManifest = Schema.Schema.Type<typeof FunctionManifestSchema>;
212
- export declare const FUNCTION_TYPES: (Type.obj<Schema.Struct<{
213
- key: Schema.optional<typeof Schema.String>;
214
- name: typeof Schema.NonEmptyString;
215
- version: typeof Schema.String;
216
- description: Schema.optional<typeof Schema.String>;
217
- source: Schema.optional<import("@dxos/echo/internal").Ref$<Type.OfKind<import("@dxos/echo/internal").EntityKind.Object> & {
218
- name?: string | undefined;
219
- description?: string | undefined;
220
- changed?: boolean | undefined;
221
- source: Ref<Type.OfKind<import("@dxos/echo/internal").EntityKind.Object> & {
222
- content: string;
223
- }>;
224
- }>>;
225
- inputSchema: Schema.optional<Schema.Schema<Type.JsonSchema, Type.JsonSchema, never>>;
226
- outputSchema: Schema.optional<Schema.Schema<Type.JsonSchema, Type.JsonSchema, never>>;
227
- binding: Schema.optional<typeof Schema.String>;
228
- }>> | Schema.Schema<FunctionTrigger, FunctionTriggerEncoded, never>)[];
229
- export {};
230
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"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"}