@dxos/functions 0.5.3-main.83788ff → 0.5.3-main.8ffbbae
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/index.mjs +479 -744
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/node/index.cjs +474 -725
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/meta.json +1 -1
- package/dist/types/src/index.d.ts +0 -2
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/runtime/dev-server.d.ts +10 -7
- package/dist/types/src/runtime/dev-server.d.ts.map +1 -1
- package/dist/types/src/runtime/scheduler.d.ts +59 -11
- package/dist/types/src/runtime/scheduler.d.ts.map +1 -1
- package/dist/types/src/testing/test/handler.d.ts +0 -1
- package/dist/types/src/testing/test/handler.d.ts.map +1 -1
- package/dist/types/src/types.d.ts +111 -131
- package/dist/types/src/types.d.ts.map +1 -1
- package/package.json +12 -14
- package/schema/functions.json +116 -139
- package/src/index.ts +0 -2
- package/src/runtime/dev-server.test.ts +35 -15
- package/src/runtime/dev-server.ts +19 -36
- package/src/runtime/scheduler.test.ts +75 -54
- package/src/runtime/scheduler.ts +298 -66
- package/src/testing/test/handler.ts +2 -8
- package/src/types.ts +42 -58
- package/dist/types/src/function/function-registry.d.ts +0 -24
- package/dist/types/src/function/function-registry.d.ts.map +0 -1
- package/dist/types/src/function/function-registry.test.d.ts +0 -2
- package/dist/types/src/function/function-registry.test.d.ts.map +0 -1
- package/dist/types/src/function/index.d.ts +0 -2
- package/dist/types/src/function/index.d.ts.map +0 -1
- package/dist/types/src/testing/functions-integration.test.d.ts +0 -2
- package/dist/types/src/testing/functions-integration.test.d.ts.map +0 -1
- package/dist/types/src/testing/index.d.ts +0 -4
- package/dist/types/src/testing/index.d.ts.map +0 -1
- package/dist/types/src/testing/setup.d.ts +0 -5
- package/dist/types/src/testing/setup.d.ts.map +0 -1
- package/dist/types/src/testing/types.d.ts +0 -9
- package/dist/types/src/testing/types.d.ts.map +0 -1
- package/dist/types/src/testing/util.d.ts +0 -3
- package/dist/types/src/testing/util.d.ts.map +0 -1
- package/dist/types/src/trigger/index.d.ts +0 -2
- package/dist/types/src/trigger/index.d.ts.map +0 -1
- package/dist/types/src/trigger/trigger-registry.d.ts +0 -40
- package/dist/types/src/trigger/trigger-registry.d.ts.map +0 -1
- package/dist/types/src/trigger/trigger-registry.test.d.ts +0 -2
- package/dist/types/src/trigger/trigger-registry.test.d.ts.map +0 -1
- package/dist/types/src/trigger/type/index.d.ts +0 -5
- package/dist/types/src/trigger/type/index.d.ts.map +0 -1
- package/dist/types/src/trigger/type/subscription-trigger.d.ts +0 -4
- package/dist/types/src/trigger/type/subscription-trigger.d.ts.map +0 -1
- package/dist/types/src/trigger/type/timer-trigger.d.ts +0 -4
- package/dist/types/src/trigger/type/timer-trigger.d.ts.map +0 -1
- package/dist/types/src/trigger/type/webhook-trigger.d.ts +0 -4
- package/dist/types/src/trigger/type/webhook-trigger.d.ts.map +0 -1
- package/dist/types/src/trigger/type/websocket-trigger.d.ts +0 -13
- package/dist/types/src/trigger/type/websocket-trigger.d.ts.map +0 -1
- package/dist/types/src/util.d.ts +0 -15
- package/dist/types/src/util.d.ts.map +0 -1
- package/dist/types/src/util.test.d.ts +0 -2
- package/dist/types/src/util.test.d.ts.map +0 -1
- package/src/function/function-registry.test.ts +0 -105
- package/src/function/function-registry.ts +0 -90
- package/src/function/index.ts +0 -5
- package/src/testing/functions-integration.test.ts +0 -99
- package/src/testing/index.ts +0 -7
- package/src/testing/setup.ts +0 -45
- package/src/testing/types.ts +0 -9
- package/src/testing/util.ts +0 -16
- package/src/trigger/index.ts +0 -5
- package/src/trigger/trigger-registry.test.ts +0 -255
- package/src/trigger/trigger-registry.ts +0 -189
- package/src/trigger/type/index.ts +0 -8
- package/src/trigger/type/subscription-trigger.ts +0 -80
- package/src/trigger/type/timer-trigger.ts +0 -44
- package/src/trigger/type/webhook-trigger.ts +0 -47
- package/src/trigger/type/websocket-trigger.ts +0 -91
- package/src/util.test.ts +0 -43
- package/src/util.ts +0 -48
|
@@ -1,13 +1,21 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import * as S from '@effect/schema/Schema';
|
|
2
|
+
declare const TimerTriggerSchema: S.struct<{
|
|
3
|
+
cron: S.$string;
|
|
4
|
+
}>;
|
|
5
|
+
declare const WebhookTriggerSchema: S.mutable<S.struct<{
|
|
6
|
+
method: S.$string;
|
|
7
|
+
port: S.PropertySignature<"?:", number | undefined, never, "?:", number | undefined, never>;
|
|
8
|
+
}>>;
|
|
9
|
+
declare const WebsocketTriggerSchema: S.struct<{
|
|
10
|
+
url: S.$string;
|
|
11
|
+
init: S.PropertySignature<"?:", {
|
|
12
|
+
readonly [x: string]: any;
|
|
13
|
+
} | undefined, never, "?:", {
|
|
14
|
+
readonly [x: string]: any;
|
|
15
|
+
} | undefined, never>;
|
|
16
|
+
}>;
|
|
9
17
|
declare const SubscriptionTriggerSchema: S.struct<{
|
|
10
|
-
|
|
18
|
+
spaceKey: S.PropertySignature<"?:", string | undefined, never, "?:", string | undefined, never>;
|
|
11
19
|
filter: S.array<S.struct<{
|
|
12
20
|
type: S.$string;
|
|
13
21
|
props: S.PropertySignature<"?:", {
|
|
@@ -24,178 +32,150 @@ declare const SubscriptionTriggerSchema: S.struct<{
|
|
|
24
32
|
readonly delay?: number | undefined;
|
|
25
33
|
} | undefined, never>;
|
|
26
34
|
}>;
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
cron: S.$string;
|
|
31
|
-
}>;
|
|
32
|
-
export type TimerTrigger = S.Schema.Type<typeof TimerTriggerSchema>;
|
|
33
|
-
declare const WebhookTriggerSchema: S.mutable<S.struct<{
|
|
34
|
-
type: S.literal<["webhook"]>;
|
|
35
|
-
method: S.$string;
|
|
36
|
-
port: S.PropertySignature<"?:", number | undefined, never, "?:", number | undefined, never>;
|
|
37
|
-
}>>;
|
|
38
|
-
export type WebhookTrigger = S.Schema.Type<typeof WebhookTriggerSchema>;
|
|
39
|
-
declare const WebsocketTriggerSchema: S.struct<{
|
|
40
|
-
type: S.literal<["websocket"]>;
|
|
41
|
-
url: S.$string;
|
|
42
|
-
init: S.PropertySignature<"?:", {
|
|
35
|
+
declare const FunctionTriggerSchema: S.struct<{
|
|
36
|
+
function: S.$string;
|
|
37
|
+
meta: S.PropertySignature<"?:", {
|
|
43
38
|
readonly [x: string]: any;
|
|
44
39
|
} | undefined, never, "?:", {
|
|
45
40
|
readonly [x: string]: any;
|
|
46
41
|
} | undefined, never>;
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
42
|
+
timer: S.PropertySignature<"?:", {
|
|
43
|
+
readonly cron: string;
|
|
44
|
+
} | undefined, never, "?:", {
|
|
45
|
+
readonly cron: string;
|
|
46
|
+
} | undefined, never>;
|
|
47
|
+
webhook: S.PropertySignature<"?:", {
|
|
48
|
+
port?: number | undefined;
|
|
49
|
+
method: string;
|
|
50
|
+
} | undefined, never, "?:", {
|
|
51
|
+
method: string;
|
|
52
|
+
port?: number | undefined;
|
|
53
|
+
} | undefined, never>;
|
|
54
|
+
websocket: S.PropertySignature<"?:", {
|
|
55
|
+
readonly url: string;
|
|
56
|
+
readonly init?: {
|
|
57
|
+
readonly [x: string]: any;
|
|
58
|
+
} | undefined;
|
|
59
|
+
} | undefined, never, "?:", {
|
|
60
|
+
readonly url: string;
|
|
61
|
+
readonly init?: {
|
|
62
|
+
readonly [x: string]: any;
|
|
63
|
+
} | undefined;
|
|
64
|
+
} | undefined, never>;
|
|
65
|
+
subscription: S.PropertySignature<"?:", {
|
|
67
66
|
readonly filter: readonly {
|
|
68
67
|
readonly type: string;
|
|
69
68
|
readonly props?: {
|
|
70
69
|
readonly [x: string]: any;
|
|
71
70
|
} | undefined;
|
|
72
71
|
}[];
|
|
73
|
-
readonly
|
|
72
|
+
readonly spaceKey?: string | undefined;
|
|
74
73
|
readonly options?: {
|
|
75
74
|
readonly deep?: boolean | undefined;
|
|
76
75
|
readonly delay?: number | undefined;
|
|
77
76
|
} | undefined;
|
|
78
|
-
} | {
|
|
79
|
-
readonly
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
readonly
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
readonly [x: string]: any;
|
|
77
|
+
} | undefined, never, "?:", {
|
|
78
|
+
readonly filter: readonly {
|
|
79
|
+
readonly type: string;
|
|
80
|
+
readonly props?: {
|
|
81
|
+
readonly [x: string]: any;
|
|
82
|
+
} | undefined;
|
|
83
|
+
}[];
|
|
84
|
+
readonly spaceKey?: string | undefined;
|
|
85
|
+
readonly options?: {
|
|
86
|
+
readonly deep?: boolean | undefined;
|
|
87
|
+
readonly delay?: number | undefined;
|
|
90
88
|
} | undefined;
|
|
91
|
-
}
|
|
92
|
-
} & {
|
|
93
|
-
id: string;
|
|
89
|
+
} | undefined, never>;
|
|
94
90
|
}>;
|
|
95
|
-
export
|
|
96
|
-
|
|
91
|
+
export type FunctionTrigger = S.Schema.Type<typeof FunctionTriggerSchema>;
|
|
92
|
+
export type TimerTrigger = S.Schema.Type<typeof TimerTriggerSchema>;
|
|
93
|
+
export type WebhookTrigger = S.Schema.Type<typeof WebhookTriggerSchema>;
|
|
94
|
+
export type WebsocketTrigger = S.Schema.Type<typeof WebsocketTriggerSchema>;
|
|
95
|
+
export type SubscriptionTrigger = S.Schema.Type<typeof SubscriptionTriggerSchema>;
|
|
96
|
+
/**
|
|
97
|
+
* Function definition.
|
|
98
|
+
*/
|
|
99
|
+
declare const FunctionDefSchema: S.struct<{
|
|
100
|
+
id: S.$string;
|
|
101
|
+
description: S.PropertySignature<"?:", string | undefined, never, "?:", string | undefined, never>;
|
|
102
|
+
path: S.$string;
|
|
103
|
+
handler: S.$string;
|
|
104
|
+
}>;
|
|
105
|
+
export type FunctionDef = S.Schema.Type<typeof FunctionDefSchema>;
|
|
97
106
|
/**
|
|
98
107
|
* Function manifest file.
|
|
99
108
|
*/
|
|
100
109
|
export declare const FunctionManifestSchema: S.struct<{
|
|
101
|
-
functions: S.
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
}[];
|
|
110
|
+
functions: S.mutable<S.array<S.struct<{
|
|
111
|
+
id: S.$string;
|
|
112
|
+
description: S.PropertySignature<"?:", string | undefined, never, "?:", string | undefined, never>;
|
|
113
|
+
path: S.$string;
|
|
114
|
+
handler: S.$string;
|
|
115
|
+
}>>>;
|
|
116
|
+
triggers: S.PropertySignature<"?:", {
|
|
117
|
+
readonly function: string;
|
|
118
|
+
readonly meta?: {
|
|
119
|
+
readonly [x: string]: any;
|
|
112
120
|
} | undefined;
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
121
|
+
readonly timer?: {
|
|
122
|
+
readonly cron: string;
|
|
123
|
+
} | undefined;
|
|
124
|
+
readonly webhook?: {
|
|
125
|
+
port?: number | undefined;
|
|
126
|
+
method: string;
|
|
127
|
+
} | undefined;
|
|
128
|
+
readonly websocket?: {
|
|
129
|
+
readonly url: string;
|
|
130
|
+
readonly init?: {
|
|
131
|
+
readonly [x: string]: any;
|
|
132
|
+
} | undefined;
|
|
124
133
|
} | undefined;
|
|
125
|
-
|
|
126
|
-
triggers: S.PropertySignature<"?:", ({
|
|
127
|
-
function: string;
|
|
128
|
-
meta?: object | undefined;
|
|
129
|
-
spec: {
|
|
134
|
+
readonly subscription?: {
|
|
130
135
|
readonly filter: readonly {
|
|
131
136
|
readonly type: string;
|
|
132
137
|
readonly props?: {
|
|
133
138
|
readonly [x: string]: any;
|
|
134
139
|
} | undefined;
|
|
135
140
|
}[];
|
|
136
|
-
readonly
|
|
141
|
+
readonly spaceKey?: string | undefined;
|
|
137
142
|
readonly options?: {
|
|
138
143
|
readonly deep?: boolean | undefined;
|
|
139
144
|
readonly delay?: number | undefined;
|
|
140
145
|
} | undefined;
|
|
141
|
-
} |
|
|
142
|
-
|
|
146
|
+
} | undefined;
|
|
147
|
+
}[] | undefined, never, "?:", {
|
|
148
|
+
readonly function: string;
|
|
149
|
+
readonly meta?: {
|
|
150
|
+
readonly [x: string]: any;
|
|
151
|
+
} | undefined;
|
|
152
|
+
readonly timer?: {
|
|
143
153
|
readonly cron: string;
|
|
144
|
-
} |
|
|
145
|
-
|
|
146
|
-
type: "webhook";
|
|
154
|
+
} | undefined;
|
|
155
|
+
readonly webhook?: {
|
|
147
156
|
method: string;
|
|
148
|
-
|
|
149
|
-
|
|
157
|
+
port?: number | undefined;
|
|
158
|
+
} | undefined;
|
|
159
|
+
readonly websocket?: {
|
|
150
160
|
readonly url: string;
|
|
151
161
|
readonly init?: {
|
|
152
162
|
readonly [x: string]: any;
|
|
153
163
|
} | undefined;
|
|
154
|
-
};
|
|
155
|
-
} & {
|
|
156
|
-
"@meta"?: {
|
|
157
|
-
readonly keys: {
|
|
158
|
-
readonly id: string;
|
|
159
|
-
readonly source: string;
|
|
160
|
-
}[];
|
|
161
164
|
} | undefined;
|
|
162
|
-
|
|
163
|
-
function: string;
|
|
164
|
-
meta?: object | undefined;
|
|
165
|
-
spec: {
|
|
165
|
+
readonly subscription?: {
|
|
166
166
|
readonly filter: readonly {
|
|
167
167
|
readonly type: string;
|
|
168
168
|
readonly props?: {
|
|
169
169
|
readonly [x: string]: any;
|
|
170
170
|
} | undefined;
|
|
171
171
|
}[];
|
|
172
|
-
readonly
|
|
172
|
+
readonly spaceKey?: string | undefined;
|
|
173
173
|
readonly options?: {
|
|
174
174
|
readonly deep?: boolean | undefined;
|
|
175
175
|
readonly delay?: number | undefined;
|
|
176
176
|
} | undefined;
|
|
177
|
-
} | {
|
|
178
|
-
readonly type: "timer";
|
|
179
|
-
readonly cron: string;
|
|
180
|
-
} | {
|
|
181
|
-
port?: number | undefined;
|
|
182
|
-
type: "webhook";
|
|
183
|
-
method: string;
|
|
184
|
-
} | {
|
|
185
|
-
readonly type: "websocket";
|
|
186
|
-
readonly url: string;
|
|
187
|
-
readonly init?: {
|
|
188
|
-
readonly [x: string]: any;
|
|
189
|
-
} | undefined;
|
|
190
|
-
};
|
|
191
|
-
} & {
|
|
192
|
-
"@meta"?: {
|
|
193
|
-
readonly keys: {
|
|
194
|
-
readonly id: string;
|
|
195
|
-
readonly source: string;
|
|
196
|
-
}[];
|
|
197
177
|
} | undefined;
|
|
198
|
-
}
|
|
178
|
+
}[] | undefined, never>;
|
|
199
179
|
}>;
|
|
200
180
|
export type FunctionManifest = S.Schema.Type<typeof FunctionManifestSchema>;
|
|
201
181
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,uBAAuB,CAAC;AAE3C,QAAA,MAAM,kBAAkB;;EAEtB,CAAC;AAEH,QAAA,MAAM,oBAAoB;;;GAMzB,CAAC;AAEF,QAAA,MAAM,sBAAsB;;;;;;;EAG1B,CAAC;AAEH,QAAA,MAAM,yBAAyB;;;;;;;;;;;;;;;;;EAiB7B,CAAC;AAEH,QAAA,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWzB,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAE1E,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,kBAAkB,CAAC,CAAC;AACpE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,oBAAoB,CAAC,CAAC;AACxE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC5E,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAElF;;GAEG;AAEH,QAAA,MAAM,iBAAiB;;;;;EAQrB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/functions",
|
|
3
|
-
"version": "0.5.3-main.
|
|
3
|
+
"version": "0.5.3-main.8ffbbae",
|
|
4
4
|
"description": "Functions SDK and runtime.",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -20,29 +20,27 @@
|
|
|
20
20
|
"src"
|
|
21
21
|
],
|
|
22
22
|
"dependencies": {
|
|
23
|
+
"@effect/schema": "^0.64.20",
|
|
23
24
|
"@preact/signals-core": "^1.6.0",
|
|
24
25
|
"cron": "^3.1.6",
|
|
25
26
|
"effect": "^2.4.19",
|
|
26
27
|
"express": "^4.19.2",
|
|
27
28
|
"get-port-please": "^3.1.1",
|
|
28
29
|
"ws": "^8.14.2",
|
|
29
|
-
"@braneframe/types": "0.5.3-main.
|
|
30
|
-
"@dxos/
|
|
31
|
-
"@dxos/
|
|
32
|
-
"@dxos/context": "0.5.3-main.
|
|
33
|
-
"@dxos/echo-
|
|
34
|
-
"@dxos/
|
|
35
|
-
"@dxos/
|
|
36
|
-
"@dxos/
|
|
37
|
-
"@dxos/
|
|
38
|
-
"@dxos/node-std": "0.5.3-main.83788ff",
|
|
39
|
-
"@dxos/protocols": "0.5.3-main.83788ff",
|
|
40
|
-
"@dxos/util": "0.5.3-main.83788ff"
|
|
30
|
+
"@braneframe/types": "0.5.3-main.8ffbbae",
|
|
31
|
+
"@dxos/async": "0.5.3-main.8ffbbae",
|
|
32
|
+
"@dxos/client": "0.5.3-main.8ffbbae",
|
|
33
|
+
"@dxos/context": "0.5.3-main.8ffbbae",
|
|
34
|
+
"@dxos/echo-schema": "0.5.3-main.8ffbbae",
|
|
35
|
+
"@dxos/invariant": "0.5.3-main.8ffbbae",
|
|
36
|
+
"@dxos/log": "0.5.3-main.8ffbbae",
|
|
37
|
+
"@dxos/node-std": "0.5.3-main.8ffbbae",
|
|
38
|
+
"@dxos/util": "0.5.3-main.8ffbbae"
|
|
41
39
|
},
|
|
42
40
|
"devDependencies": {
|
|
43
41
|
"@types/express": "^4.17.17",
|
|
44
42
|
"@types/ws": "^7.4.0",
|
|
45
|
-
"@dxos/agent": "0.5.3-main.
|
|
43
|
+
"@dxos/agent": "0.5.3-main.8ffbbae"
|
|
46
44
|
},
|
|
47
45
|
"publishConfig": {
|
|
48
46
|
"access": "public"
|
package/schema/functions.json
CHANGED
|
@@ -1,24 +1,26 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
3
|
"type": "object",
|
|
4
|
-
"required": [
|
|
4
|
+
"required": [
|
|
5
|
+
"functions"
|
|
6
|
+
],
|
|
5
7
|
"properties": {
|
|
6
8
|
"functions": {
|
|
7
9
|
"type": "array",
|
|
8
10
|
"items": {
|
|
9
11
|
"type": "object",
|
|
10
12
|
"required": [
|
|
11
|
-
"
|
|
12
|
-
"
|
|
13
|
+
"id",
|
|
14
|
+
"path",
|
|
13
15
|
"handler"
|
|
14
16
|
],
|
|
15
17
|
"properties": {
|
|
16
|
-
"
|
|
18
|
+
"id": {
|
|
17
19
|
"type": "string",
|
|
18
20
|
"description": "a string",
|
|
19
21
|
"title": "string"
|
|
20
22
|
},
|
|
21
|
-
"
|
|
23
|
+
"path": {
|
|
22
24
|
"type": "string",
|
|
23
25
|
"description": "a string",
|
|
24
26
|
"title": "string"
|
|
@@ -42,165 +44,140 @@
|
|
|
42
44
|
"items": {
|
|
43
45
|
"type": "object",
|
|
44
46
|
"required": [
|
|
45
|
-
"function"
|
|
46
|
-
"spec"
|
|
47
|
+
"function"
|
|
47
48
|
],
|
|
48
49
|
"properties": {
|
|
49
50
|
"function": {
|
|
50
51
|
"type": "string",
|
|
51
|
-
"description": "Function URI.",
|
|
52
|
+
"description": "Function ID/URI.",
|
|
52
53
|
"title": "string"
|
|
53
54
|
},
|
|
54
55
|
"meta": {
|
|
55
|
-
"
|
|
56
|
+
"type": "object",
|
|
57
|
+
"required": [],
|
|
58
|
+
"properties": {},
|
|
59
|
+
"additionalProperties": {
|
|
60
|
+
"$id": "/schemas/any",
|
|
61
|
+
"title": "any"
|
|
62
|
+
}
|
|
56
63
|
},
|
|
57
|
-
"
|
|
58
|
-
"
|
|
59
|
-
|
|
64
|
+
"timer": {
|
|
65
|
+
"type": "object",
|
|
66
|
+
"required": [
|
|
67
|
+
"cron"
|
|
68
|
+
],
|
|
69
|
+
"properties": {
|
|
70
|
+
"cron": {
|
|
71
|
+
"type": "string",
|
|
72
|
+
"description": "a string",
|
|
73
|
+
"title": "string"
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
"additionalProperties": false
|
|
77
|
+
},
|
|
78
|
+
"webhook": {
|
|
79
|
+
"type": "object",
|
|
80
|
+
"required": [
|
|
81
|
+
"method"
|
|
82
|
+
],
|
|
83
|
+
"properties": {
|
|
84
|
+
"method": {
|
|
85
|
+
"type": "string",
|
|
86
|
+
"description": "a string",
|
|
87
|
+
"title": "string"
|
|
88
|
+
},
|
|
89
|
+
"port": {
|
|
90
|
+
"type": "number",
|
|
91
|
+
"description": "a number",
|
|
92
|
+
"title": "number"
|
|
93
|
+
}
|
|
94
|
+
},
|
|
95
|
+
"additionalProperties": false
|
|
96
|
+
},
|
|
97
|
+
"websocket": {
|
|
98
|
+
"type": "object",
|
|
99
|
+
"required": [
|
|
100
|
+
"url"
|
|
101
|
+
],
|
|
102
|
+
"properties": {
|
|
103
|
+
"url": {
|
|
104
|
+
"type": "string",
|
|
105
|
+
"description": "a string",
|
|
106
|
+
"title": "string"
|
|
107
|
+
},
|
|
108
|
+
"init": {
|
|
60
109
|
"type": "object",
|
|
61
|
-
"required": [
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
110
|
+
"required": [],
|
|
111
|
+
"properties": {},
|
|
112
|
+
"additionalProperties": {
|
|
113
|
+
"$id": "/schemas/any",
|
|
114
|
+
"title": "any"
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
"additionalProperties": false
|
|
119
|
+
},
|
|
120
|
+
"subscription": {
|
|
121
|
+
"type": "object",
|
|
122
|
+
"required": [
|
|
123
|
+
"filter"
|
|
124
|
+
],
|
|
125
|
+
"properties": {
|
|
126
|
+
"spaceKey": {
|
|
127
|
+
"type": "string",
|
|
128
|
+
"description": "a string",
|
|
129
|
+
"title": "string"
|
|
130
|
+
},
|
|
131
|
+
"filter": {
|
|
132
|
+
"type": "array",
|
|
133
|
+
"items": {
|
|
134
|
+
"type": "object",
|
|
135
|
+
"required": [
|
|
136
|
+
"type"
|
|
137
|
+
],
|
|
138
|
+
"properties": {
|
|
139
|
+
"type": {
|
|
140
|
+
"type": "string",
|
|
141
|
+
"description": "a string",
|
|
142
|
+
"title": "string"
|
|
143
|
+
},
|
|
144
|
+
"props": {
|
|
145
|
+
"type": "object",
|
|
146
|
+
"required": [],
|
|
147
|
+
"properties": {},
|
|
148
|
+
"additionalProperties": {
|
|
149
|
+
"$id": "/schemas/any",
|
|
150
|
+
"title": "any"
|
|
151
|
+
}
|
|
152
|
+
}
|
|
68
153
|
},
|
|
69
|
-
"
|
|
70
|
-
|
|
71
|
-
"description": "a string",
|
|
72
|
-
"title": "string"
|
|
73
|
-
}
|
|
74
|
-
},
|
|
75
|
-
"additionalProperties": false
|
|
154
|
+
"additionalProperties": false
|
|
155
|
+
}
|
|
76
156
|
},
|
|
77
|
-
{
|
|
157
|
+
"options": {
|
|
78
158
|
"type": "object",
|
|
79
|
-
"required": [
|
|
80
|
-
"type",
|
|
81
|
-
"method"
|
|
82
|
-
],
|
|
159
|
+
"required": [],
|
|
83
160
|
"properties": {
|
|
84
|
-
"
|
|
85
|
-
"
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
"type": "string",
|
|
89
|
-
"description": "a string",
|
|
90
|
-
"title": "string"
|
|
161
|
+
"deep": {
|
|
162
|
+
"type": "boolean",
|
|
163
|
+
"description": "a boolean",
|
|
164
|
+
"title": "boolean"
|
|
91
165
|
},
|
|
92
|
-
"
|
|
166
|
+
"delay": {
|
|
93
167
|
"type": "number",
|
|
94
168
|
"description": "a number",
|
|
95
169
|
"title": "number"
|
|
96
170
|
}
|
|
97
171
|
},
|
|
98
172
|
"additionalProperties": false
|
|
99
|
-
},
|
|
100
|
-
{
|
|
101
|
-
"type": "object",
|
|
102
|
-
"required": [
|
|
103
|
-
"type",
|
|
104
|
-
"url"
|
|
105
|
-
],
|
|
106
|
-
"properties": {
|
|
107
|
-
"type": {
|
|
108
|
-
"const": "websocket"
|
|
109
|
-
},
|
|
110
|
-
"url": {
|
|
111
|
-
"type": "string",
|
|
112
|
-
"description": "a string",
|
|
113
|
-
"title": "string"
|
|
114
|
-
},
|
|
115
|
-
"init": {
|
|
116
|
-
"type": "object",
|
|
117
|
-
"required": [],
|
|
118
|
-
"properties": {},
|
|
119
|
-
"additionalProperties": {
|
|
120
|
-
"$id": "/schemas/any",
|
|
121
|
-
"title": "any"
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
},
|
|
125
|
-
"additionalProperties": false
|
|
126
|
-
},
|
|
127
|
-
{
|
|
128
|
-
"type": "object",
|
|
129
|
-
"required": [
|
|
130
|
-
"type",
|
|
131
|
-
"filter"
|
|
132
|
-
],
|
|
133
|
-
"properties": {
|
|
134
|
-
"type": {
|
|
135
|
-
"const": "subscription"
|
|
136
|
-
},
|
|
137
|
-
"filter": {
|
|
138
|
-
"type": "array",
|
|
139
|
-
"items": {
|
|
140
|
-
"type": "object",
|
|
141
|
-
"required": [
|
|
142
|
-
"type"
|
|
143
|
-
],
|
|
144
|
-
"properties": {
|
|
145
|
-
"type": {
|
|
146
|
-
"type": "string",
|
|
147
|
-
"description": "a string",
|
|
148
|
-
"title": "string"
|
|
149
|
-
},
|
|
150
|
-
"props": {
|
|
151
|
-
"type": "object",
|
|
152
|
-
"required": [],
|
|
153
|
-
"properties": {},
|
|
154
|
-
"additionalProperties": {
|
|
155
|
-
"$id": "/schemas/any",
|
|
156
|
-
"title": "any"
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
},
|
|
160
|
-
"additionalProperties": false
|
|
161
|
-
}
|
|
162
|
-
},
|
|
163
|
-
"options": {
|
|
164
|
-
"type": "object",
|
|
165
|
-
"required": [],
|
|
166
|
-
"properties": {
|
|
167
|
-
"deep": {
|
|
168
|
-
"type": "boolean",
|
|
169
|
-
"description": "a boolean",
|
|
170
|
-
"title": "boolean"
|
|
171
|
-
},
|
|
172
|
-
"delay": {
|
|
173
|
-
"type": "number",
|
|
174
|
-
"description": "a number",
|
|
175
|
-
"title": "number"
|
|
176
|
-
}
|
|
177
|
-
},
|
|
178
|
-
"additionalProperties": false
|
|
179
|
-
}
|
|
180
|
-
},
|
|
181
|
-
"additionalProperties": false
|
|
182
173
|
}
|
|
183
|
-
|
|
174
|
+
},
|
|
175
|
+
"additionalProperties": false
|
|
184
176
|
}
|
|
185
177
|
},
|
|
186
178
|
"additionalProperties": false
|
|
187
179
|
}
|
|
188
180
|
}
|
|
189
181
|
},
|
|
190
|
-
"additionalProperties": false
|
|
191
|
-
"$defs": {
|
|
192
|
-
"object": {
|
|
193
|
-
"$id": "/schemas/object",
|
|
194
|
-
"oneOf": [
|
|
195
|
-
{
|
|
196
|
-
"type": "object"
|
|
197
|
-
},
|
|
198
|
-
{
|
|
199
|
-
"type": "array"
|
|
200
|
-
}
|
|
201
|
-
],
|
|
202
|
-
"description": "an object in the TypeScript meaning, i.e. the `object` type",
|
|
203
|
-
"title": "object"
|
|
204
|
-
}
|
|
205
|
-
}
|
|
182
|
+
"additionalProperties": false
|
|
206
183
|
}
|