@platformatic/composer 3.2.1 → 3.4.0
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/config.d.ts +1004 -0
- package/package.json +8 -5
- package/schema.json +17 -1
package/config.d.ts
ADDED
|
@@ -0,0 +1,1004 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
/**
|
|
3
|
+
* This file was automatically generated by json-schema-to-typescript.
|
|
4
|
+
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
|
|
5
|
+
* and run json-schema-to-typescript to regenerate this file.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
export interface PlatformaticComposerConfig {
|
|
9
|
+
basePath?: string;
|
|
10
|
+
server?: {
|
|
11
|
+
hostname?: string;
|
|
12
|
+
port?: number | string;
|
|
13
|
+
pluginTimeout?: number;
|
|
14
|
+
healthCheck?:
|
|
15
|
+
| boolean
|
|
16
|
+
| {
|
|
17
|
+
enabled?: boolean;
|
|
18
|
+
interval?: number;
|
|
19
|
+
[k: string]: unknown;
|
|
20
|
+
};
|
|
21
|
+
ignoreTrailingSlash?: boolean;
|
|
22
|
+
ignoreDuplicateSlashes?: boolean;
|
|
23
|
+
connectionTimeout?: number;
|
|
24
|
+
keepAliveTimeout?: number;
|
|
25
|
+
maxRequestsPerSocket?: number;
|
|
26
|
+
forceCloseConnections?: boolean | string;
|
|
27
|
+
requestTimeout?: number;
|
|
28
|
+
bodyLimit?: number;
|
|
29
|
+
maxParamLength?: number;
|
|
30
|
+
disableRequestLogging?: boolean;
|
|
31
|
+
exposeHeadRoutes?: boolean;
|
|
32
|
+
logger?:
|
|
33
|
+
| boolean
|
|
34
|
+
| {
|
|
35
|
+
level: (
|
|
36
|
+
| ("fatal" | "error" | "warn" | "info" | "debug" | "trace" | "silent")
|
|
37
|
+
| {
|
|
38
|
+
[k: string]: unknown;
|
|
39
|
+
}
|
|
40
|
+
) &
|
|
41
|
+
string;
|
|
42
|
+
transport?:
|
|
43
|
+
| {
|
|
44
|
+
target?: string;
|
|
45
|
+
options?: {
|
|
46
|
+
[k: string]: unknown;
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
| {
|
|
50
|
+
targets?: {
|
|
51
|
+
target?: string;
|
|
52
|
+
options?: {
|
|
53
|
+
[k: string]: unknown;
|
|
54
|
+
};
|
|
55
|
+
level?: string;
|
|
56
|
+
}[];
|
|
57
|
+
options?: {
|
|
58
|
+
[k: string]: unknown;
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
pipeline?: {
|
|
62
|
+
target?: string;
|
|
63
|
+
options?: {
|
|
64
|
+
[k: string]: unknown;
|
|
65
|
+
};
|
|
66
|
+
};
|
|
67
|
+
formatters?: {
|
|
68
|
+
path: string;
|
|
69
|
+
};
|
|
70
|
+
timestamp?: "epochTime" | "unixTime" | "nullTime" | "isoTime";
|
|
71
|
+
redact?: {
|
|
72
|
+
paths: string[];
|
|
73
|
+
censor?: string;
|
|
74
|
+
};
|
|
75
|
+
base?: {
|
|
76
|
+
[k: string]: unknown;
|
|
77
|
+
} | null;
|
|
78
|
+
messageKey?: string;
|
|
79
|
+
customLevels?: {
|
|
80
|
+
[k: string]: unknown;
|
|
81
|
+
};
|
|
82
|
+
[k: string]: unknown;
|
|
83
|
+
};
|
|
84
|
+
loggerInstance?: {
|
|
85
|
+
[k: string]: unknown;
|
|
86
|
+
};
|
|
87
|
+
serializerOpts?: {
|
|
88
|
+
schema?: {
|
|
89
|
+
[k: string]: unknown;
|
|
90
|
+
};
|
|
91
|
+
ajv?: {
|
|
92
|
+
[k: string]: unknown;
|
|
93
|
+
};
|
|
94
|
+
rounding?: "floor" | "ceil" | "round" | "trunc";
|
|
95
|
+
debugMode?: boolean;
|
|
96
|
+
mode?: "debug" | "standalone";
|
|
97
|
+
largeArraySize?: number | string;
|
|
98
|
+
largeArrayMechanism?: "default" | "json-stringify";
|
|
99
|
+
[k: string]: unknown;
|
|
100
|
+
};
|
|
101
|
+
caseSensitive?: boolean;
|
|
102
|
+
requestIdHeader?: string | false;
|
|
103
|
+
requestIdLogLabel?: string;
|
|
104
|
+
jsonShorthand?: boolean;
|
|
105
|
+
trustProxy?: boolean | string | string[] | number;
|
|
106
|
+
http2?: boolean;
|
|
107
|
+
https?: {
|
|
108
|
+
allowHTTP1?: boolean;
|
|
109
|
+
key:
|
|
110
|
+
| string
|
|
111
|
+
| {
|
|
112
|
+
path?: string;
|
|
113
|
+
}
|
|
114
|
+
| (
|
|
115
|
+
| string
|
|
116
|
+
| {
|
|
117
|
+
path?: string;
|
|
118
|
+
}
|
|
119
|
+
)[];
|
|
120
|
+
cert:
|
|
121
|
+
| string
|
|
122
|
+
| {
|
|
123
|
+
path?: string;
|
|
124
|
+
}
|
|
125
|
+
| (
|
|
126
|
+
| string
|
|
127
|
+
| {
|
|
128
|
+
path?: string;
|
|
129
|
+
}
|
|
130
|
+
)[];
|
|
131
|
+
requestCert?: boolean;
|
|
132
|
+
rejectUnauthorized?: boolean;
|
|
133
|
+
};
|
|
134
|
+
cors?: {
|
|
135
|
+
origin?:
|
|
136
|
+
| boolean
|
|
137
|
+
| string
|
|
138
|
+
| (
|
|
139
|
+
| string
|
|
140
|
+
| {
|
|
141
|
+
regexp: string;
|
|
142
|
+
[k: string]: unknown;
|
|
143
|
+
}
|
|
144
|
+
)[]
|
|
145
|
+
| {
|
|
146
|
+
regexp: string;
|
|
147
|
+
[k: string]: unknown;
|
|
148
|
+
};
|
|
149
|
+
methods?: string[];
|
|
150
|
+
/**
|
|
151
|
+
* Comma separated string of allowed headers.
|
|
152
|
+
*/
|
|
153
|
+
allowedHeaders?: string;
|
|
154
|
+
exposedHeaders?: string[] | string;
|
|
155
|
+
credentials?: boolean;
|
|
156
|
+
maxAge?: number;
|
|
157
|
+
preflightContinue?: boolean;
|
|
158
|
+
optionsSuccessStatus?: number;
|
|
159
|
+
preflight?: boolean;
|
|
160
|
+
strictPreflight?: boolean;
|
|
161
|
+
hideOptionsRoute?: boolean;
|
|
162
|
+
};
|
|
163
|
+
};
|
|
164
|
+
types?: {
|
|
165
|
+
autogenerate?: boolean;
|
|
166
|
+
/**
|
|
167
|
+
* The path to the directory the types should be generated in.
|
|
168
|
+
*/
|
|
169
|
+
dir?: string;
|
|
170
|
+
};
|
|
171
|
+
plugins?: {
|
|
172
|
+
[k: string]: unknown;
|
|
173
|
+
};
|
|
174
|
+
application?: {};
|
|
175
|
+
runtime?: {
|
|
176
|
+
preload?: string | string[];
|
|
177
|
+
basePath?: string;
|
|
178
|
+
services?: {
|
|
179
|
+
[k: string]: unknown;
|
|
180
|
+
}[];
|
|
181
|
+
workers?: number | string;
|
|
182
|
+
logger?: {
|
|
183
|
+
level: (
|
|
184
|
+
| ("fatal" | "error" | "warn" | "info" | "debug" | "trace" | "silent")
|
|
185
|
+
| {
|
|
186
|
+
[k: string]: unknown;
|
|
187
|
+
}
|
|
188
|
+
) &
|
|
189
|
+
string;
|
|
190
|
+
transport?:
|
|
191
|
+
| {
|
|
192
|
+
target?: string;
|
|
193
|
+
options?: {
|
|
194
|
+
[k: string]: unknown;
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
| {
|
|
198
|
+
targets?: {
|
|
199
|
+
target?: string;
|
|
200
|
+
options?: {
|
|
201
|
+
[k: string]: unknown;
|
|
202
|
+
};
|
|
203
|
+
level?: string;
|
|
204
|
+
}[];
|
|
205
|
+
options?: {
|
|
206
|
+
[k: string]: unknown;
|
|
207
|
+
};
|
|
208
|
+
};
|
|
209
|
+
pipeline?: {
|
|
210
|
+
target?: string;
|
|
211
|
+
options?: {
|
|
212
|
+
[k: string]: unknown;
|
|
213
|
+
};
|
|
214
|
+
};
|
|
215
|
+
formatters?: {
|
|
216
|
+
path: string;
|
|
217
|
+
};
|
|
218
|
+
timestamp?: "epochTime" | "unixTime" | "nullTime" | "isoTime";
|
|
219
|
+
redact?: {
|
|
220
|
+
paths: string[];
|
|
221
|
+
censor?: string;
|
|
222
|
+
};
|
|
223
|
+
base?: {
|
|
224
|
+
[k: string]: unknown;
|
|
225
|
+
} | null;
|
|
226
|
+
messageKey?: string;
|
|
227
|
+
customLevels?: {
|
|
228
|
+
[k: string]: unknown;
|
|
229
|
+
};
|
|
230
|
+
[k: string]: unknown;
|
|
231
|
+
};
|
|
232
|
+
server?: {
|
|
233
|
+
hostname?: string;
|
|
234
|
+
port?: number | string;
|
|
235
|
+
http2?: boolean;
|
|
236
|
+
https?: {
|
|
237
|
+
allowHTTP1?: boolean;
|
|
238
|
+
key:
|
|
239
|
+
| string
|
|
240
|
+
| {
|
|
241
|
+
path?: string;
|
|
242
|
+
}
|
|
243
|
+
| (
|
|
244
|
+
| string
|
|
245
|
+
| {
|
|
246
|
+
path?: string;
|
|
247
|
+
}
|
|
248
|
+
)[];
|
|
249
|
+
cert:
|
|
250
|
+
| string
|
|
251
|
+
| {
|
|
252
|
+
path?: string;
|
|
253
|
+
}
|
|
254
|
+
| (
|
|
255
|
+
| string
|
|
256
|
+
| {
|
|
257
|
+
path?: string;
|
|
258
|
+
}
|
|
259
|
+
)[];
|
|
260
|
+
requestCert?: boolean;
|
|
261
|
+
rejectUnauthorized?: boolean;
|
|
262
|
+
};
|
|
263
|
+
};
|
|
264
|
+
startTimeout?: number;
|
|
265
|
+
restartOnError?: boolean | number;
|
|
266
|
+
exitOnUnhandledErrors?: boolean;
|
|
267
|
+
gracefulShutdown?: {
|
|
268
|
+
runtime: number | string;
|
|
269
|
+
application: number | string;
|
|
270
|
+
};
|
|
271
|
+
health?: {
|
|
272
|
+
enabled?: boolean | string;
|
|
273
|
+
interval?: number | string;
|
|
274
|
+
gracePeriod?: number | string;
|
|
275
|
+
maxUnhealthyChecks?: number | string;
|
|
276
|
+
maxELU?: number | string;
|
|
277
|
+
maxHeapUsed?: number | string;
|
|
278
|
+
maxHeapTotal?: number | string;
|
|
279
|
+
maxYoungGeneration?: number | string;
|
|
280
|
+
};
|
|
281
|
+
undici?: {
|
|
282
|
+
agentOptions?: {
|
|
283
|
+
[k: string]: unknown;
|
|
284
|
+
};
|
|
285
|
+
interceptors?:
|
|
286
|
+
| {
|
|
287
|
+
module: string;
|
|
288
|
+
options: {
|
|
289
|
+
[k: string]: unknown;
|
|
290
|
+
};
|
|
291
|
+
[k: string]: unknown;
|
|
292
|
+
}[]
|
|
293
|
+
| {
|
|
294
|
+
Client?: {
|
|
295
|
+
module: string;
|
|
296
|
+
options: {
|
|
297
|
+
[k: string]: unknown;
|
|
298
|
+
};
|
|
299
|
+
[k: string]: unknown;
|
|
300
|
+
}[];
|
|
301
|
+
Pool?: {
|
|
302
|
+
module: string;
|
|
303
|
+
options: {
|
|
304
|
+
[k: string]: unknown;
|
|
305
|
+
};
|
|
306
|
+
[k: string]: unknown;
|
|
307
|
+
}[];
|
|
308
|
+
Agent?: {
|
|
309
|
+
module: string;
|
|
310
|
+
options: {
|
|
311
|
+
[k: string]: unknown;
|
|
312
|
+
};
|
|
313
|
+
[k: string]: unknown;
|
|
314
|
+
}[];
|
|
315
|
+
[k: string]: unknown;
|
|
316
|
+
};
|
|
317
|
+
[k: string]: unknown;
|
|
318
|
+
};
|
|
319
|
+
httpCache?:
|
|
320
|
+
| boolean
|
|
321
|
+
| {
|
|
322
|
+
store?: string;
|
|
323
|
+
/**
|
|
324
|
+
* @minItems 1
|
|
325
|
+
*/
|
|
326
|
+
methods?: [string, ...string[]];
|
|
327
|
+
cacheTagsHeader?: string;
|
|
328
|
+
maxSize?: number;
|
|
329
|
+
maxEntrySize?: number;
|
|
330
|
+
maxCount?: number;
|
|
331
|
+
[k: string]: unknown;
|
|
332
|
+
};
|
|
333
|
+
watch?: boolean | string;
|
|
334
|
+
managementApi?:
|
|
335
|
+
| boolean
|
|
336
|
+
| string
|
|
337
|
+
| {
|
|
338
|
+
logs?: {
|
|
339
|
+
maxSize?: number;
|
|
340
|
+
};
|
|
341
|
+
};
|
|
342
|
+
metrics?:
|
|
343
|
+
| boolean
|
|
344
|
+
| {
|
|
345
|
+
port?: number | string;
|
|
346
|
+
enabled?: boolean | string;
|
|
347
|
+
hostname?: string;
|
|
348
|
+
endpoint?: string;
|
|
349
|
+
auth?: {
|
|
350
|
+
username: string;
|
|
351
|
+
password: string;
|
|
352
|
+
};
|
|
353
|
+
labels?: {
|
|
354
|
+
[k: string]: string;
|
|
355
|
+
};
|
|
356
|
+
/**
|
|
357
|
+
* The label name to use for the application identifier in metrics (e.g., applicationId, serviceId)
|
|
358
|
+
*/
|
|
359
|
+
applicationLabel?: string;
|
|
360
|
+
readiness?:
|
|
361
|
+
| boolean
|
|
362
|
+
| {
|
|
363
|
+
endpoint?: string;
|
|
364
|
+
success?: {
|
|
365
|
+
statusCode?: number;
|
|
366
|
+
body?: string;
|
|
367
|
+
};
|
|
368
|
+
fail?: {
|
|
369
|
+
statusCode?: number;
|
|
370
|
+
body?: string;
|
|
371
|
+
};
|
|
372
|
+
};
|
|
373
|
+
liveness?:
|
|
374
|
+
| boolean
|
|
375
|
+
| {
|
|
376
|
+
endpoint?: string;
|
|
377
|
+
success?: {
|
|
378
|
+
statusCode?: number;
|
|
379
|
+
body?: string;
|
|
380
|
+
};
|
|
381
|
+
fail?: {
|
|
382
|
+
statusCode?: number;
|
|
383
|
+
body?: string;
|
|
384
|
+
};
|
|
385
|
+
};
|
|
386
|
+
plugins?: string[];
|
|
387
|
+
};
|
|
388
|
+
telemetry?: {
|
|
389
|
+
enabled?: boolean | string;
|
|
390
|
+
/**
|
|
391
|
+
* The name of the application. Defaults to the folder name if not specified.
|
|
392
|
+
*/
|
|
393
|
+
applicationName: string;
|
|
394
|
+
/**
|
|
395
|
+
* The version of the application (optional)
|
|
396
|
+
*/
|
|
397
|
+
version?: string;
|
|
398
|
+
/**
|
|
399
|
+
* An array of paths to skip when creating spans. Useful for health checks and other endpoints that do not need to be traced.
|
|
400
|
+
*/
|
|
401
|
+
skip?: {
|
|
402
|
+
/**
|
|
403
|
+
* The path to skip. Can be a string or a regex.
|
|
404
|
+
*/
|
|
405
|
+
path?: string;
|
|
406
|
+
/**
|
|
407
|
+
* HTTP method to skip
|
|
408
|
+
*/
|
|
409
|
+
method?: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "HEAD" | "OPTIONS";
|
|
410
|
+
[k: string]: unknown;
|
|
411
|
+
}[];
|
|
412
|
+
exporter?:
|
|
413
|
+
| {
|
|
414
|
+
type?: "console" | "otlp" | "zipkin" | "memory" | "file";
|
|
415
|
+
/**
|
|
416
|
+
* Options for the exporter. These are passed directly to the exporter.
|
|
417
|
+
*/
|
|
418
|
+
options?: {
|
|
419
|
+
/**
|
|
420
|
+
* The URL to send the traces to. Not used for console or memory exporters.
|
|
421
|
+
*/
|
|
422
|
+
url?: string;
|
|
423
|
+
/**
|
|
424
|
+
* Headers to send to the exporter. Not used for console or memory exporters.
|
|
425
|
+
*/
|
|
426
|
+
headers?: {
|
|
427
|
+
[k: string]: unknown;
|
|
428
|
+
};
|
|
429
|
+
/**
|
|
430
|
+
* The path to write the traces to. Only for file exporter.
|
|
431
|
+
*/
|
|
432
|
+
path?: string;
|
|
433
|
+
[k: string]: unknown;
|
|
434
|
+
};
|
|
435
|
+
additionalProperties?: never;
|
|
436
|
+
[k: string]: unknown;
|
|
437
|
+
}[]
|
|
438
|
+
| {
|
|
439
|
+
type?: "console" | "otlp" | "zipkin" | "memory" | "file";
|
|
440
|
+
/**
|
|
441
|
+
* Options for the exporter. These are passed directly to the exporter.
|
|
442
|
+
*/
|
|
443
|
+
options?: {
|
|
444
|
+
/**
|
|
445
|
+
* The URL to send the traces to. Not used for console or memory exporters.
|
|
446
|
+
*/
|
|
447
|
+
url?: string;
|
|
448
|
+
/**
|
|
449
|
+
* Headers to send to the exporter. Not used for console or memory exporters.
|
|
450
|
+
*/
|
|
451
|
+
headers?: {
|
|
452
|
+
[k: string]: unknown;
|
|
453
|
+
};
|
|
454
|
+
/**
|
|
455
|
+
* The path to write the traces to. Only for file exporter.
|
|
456
|
+
*/
|
|
457
|
+
path?: string;
|
|
458
|
+
[k: string]: unknown;
|
|
459
|
+
};
|
|
460
|
+
additionalProperties?: never;
|
|
461
|
+
[k: string]: unknown;
|
|
462
|
+
};
|
|
463
|
+
};
|
|
464
|
+
inspectorOptions?: {
|
|
465
|
+
host?: string;
|
|
466
|
+
port?: number;
|
|
467
|
+
breakFirstLine?: boolean;
|
|
468
|
+
watchDisabled?: boolean;
|
|
469
|
+
[k: string]: unknown;
|
|
470
|
+
};
|
|
471
|
+
applicationTimeout?: number | string;
|
|
472
|
+
messagingTimeout?: number | string;
|
|
473
|
+
env?: {
|
|
474
|
+
[k: string]: string;
|
|
475
|
+
};
|
|
476
|
+
sourceMaps?: boolean;
|
|
477
|
+
scheduler?: {
|
|
478
|
+
enabled?: boolean | string;
|
|
479
|
+
name: string;
|
|
480
|
+
cron: string;
|
|
481
|
+
callbackUrl: string;
|
|
482
|
+
method?: "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
|
|
483
|
+
headers?: {
|
|
484
|
+
[k: string]: string;
|
|
485
|
+
};
|
|
486
|
+
body?:
|
|
487
|
+
| string
|
|
488
|
+
| {
|
|
489
|
+
[k: string]: unknown;
|
|
490
|
+
};
|
|
491
|
+
maxRetries?: number;
|
|
492
|
+
[k: string]: unknown;
|
|
493
|
+
}[];
|
|
494
|
+
};
|
|
495
|
+
telemetry?: {
|
|
496
|
+
enabled?: boolean | string;
|
|
497
|
+
/**
|
|
498
|
+
* The name of the application. Defaults to the folder name if not specified.
|
|
499
|
+
*/
|
|
500
|
+
applicationName: string;
|
|
501
|
+
/**
|
|
502
|
+
* The version of the application (optional)
|
|
503
|
+
*/
|
|
504
|
+
version?: string;
|
|
505
|
+
/**
|
|
506
|
+
* An array of paths to skip when creating spans. Useful for health checks and other endpoints that do not need to be traced.
|
|
507
|
+
*/
|
|
508
|
+
skip?: {
|
|
509
|
+
/**
|
|
510
|
+
* The path to skip. Can be a string or a regex.
|
|
511
|
+
*/
|
|
512
|
+
path?: string;
|
|
513
|
+
/**
|
|
514
|
+
* HTTP method to skip
|
|
515
|
+
*/
|
|
516
|
+
method?: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "HEAD" | "OPTIONS";
|
|
517
|
+
[k: string]: unknown;
|
|
518
|
+
}[];
|
|
519
|
+
exporter?:
|
|
520
|
+
| {
|
|
521
|
+
type?: "console" | "otlp" | "zipkin" | "memory" | "file";
|
|
522
|
+
/**
|
|
523
|
+
* Options for the exporter. These are passed directly to the exporter.
|
|
524
|
+
*/
|
|
525
|
+
options?: {
|
|
526
|
+
/**
|
|
527
|
+
* The URL to send the traces to. Not used for console or memory exporters.
|
|
528
|
+
*/
|
|
529
|
+
url?: string;
|
|
530
|
+
/**
|
|
531
|
+
* Headers to send to the exporter. Not used for console or memory exporters.
|
|
532
|
+
*/
|
|
533
|
+
headers?: {
|
|
534
|
+
[k: string]: unknown;
|
|
535
|
+
};
|
|
536
|
+
/**
|
|
537
|
+
* The path to write the traces to. Only for file exporter.
|
|
538
|
+
*/
|
|
539
|
+
path?: string;
|
|
540
|
+
[k: string]: unknown;
|
|
541
|
+
};
|
|
542
|
+
additionalProperties?: never;
|
|
543
|
+
[k: string]: unknown;
|
|
544
|
+
}[]
|
|
545
|
+
| {
|
|
546
|
+
type?: "console" | "otlp" | "zipkin" | "memory" | "file";
|
|
547
|
+
/**
|
|
548
|
+
* Options for the exporter. These are passed directly to the exporter.
|
|
549
|
+
*/
|
|
550
|
+
options?: {
|
|
551
|
+
/**
|
|
552
|
+
* The URL to send the traces to. Not used for console or memory exporters.
|
|
553
|
+
*/
|
|
554
|
+
url?: string;
|
|
555
|
+
/**
|
|
556
|
+
* Headers to send to the exporter. Not used for console or memory exporters.
|
|
557
|
+
*/
|
|
558
|
+
headers?: {
|
|
559
|
+
[k: string]: unknown;
|
|
560
|
+
};
|
|
561
|
+
/**
|
|
562
|
+
* The path to write the traces to. Only for file exporter.
|
|
563
|
+
*/
|
|
564
|
+
path?: string;
|
|
565
|
+
[k: string]: unknown;
|
|
566
|
+
};
|
|
567
|
+
additionalProperties?: never;
|
|
568
|
+
[k: string]: unknown;
|
|
569
|
+
};
|
|
570
|
+
};
|
|
571
|
+
watch?:
|
|
572
|
+
| {
|
|
573
|
+
enabled?: boolean | string;
|
|
574
|
+
/**
|
|
575
|
+
* @minItems 1
|
|
576
|
+
*/
|
|
577
|
+
allow?: [string, ...string[]];
|
|
578
|
+
ignore?: string[];
|
|
579
|
+
}
|
|
580
|
+
| boolean
|
|
581
|
+
| string;
|
|
582
|
+
$schema?: string;
|
|
583
|
+
module?: string;
|
|
584
|
+
composer?: {
|
|
585
|
+
applications?: {
|
|
586
|
+
id: string;
|
|
587
|
+
origin?: string;
|
|
588
|
+
openapi?: {
|
|
589
|
+
[k: string]: unknown;
|
|
590
|
+
};
|
|
591
|
+
graphql?:
|
|
592
|
+
| boolean
|
|
593
|
+
| {
|
|
594
|
+
host?: string;
|
|
595
|
+
name?: string;
|
|
596
|
+
graphqlEndpoint?: string;
|
|
597
|
+
composeEndpoint?: string;
|
|
598
|
+
entities?: {
|
|
599
|
+
/**
|
|
600
|
+
* This interface was referenced by `undefined`'s JSON-Schema definition
|
|
601
|
+
* via the `patternProperty` "^.*$".
|
|
602
|
+
*/
|
|
603
|
+
[k: string]: {
|
|
604
|
+
pkey?: string;
|
|
605
|
+
resolver?: {
|
|
606
|
+
name: string;
|
|
607
|
+
argsAdapter?:
|
|
608
|
+
| {
|
|
609
|
+
[k: string]: unknown;
|
|
610
|
+
}
|
|
611
|
+
| string;
|
|
612
|
+
partialResults?:
|
|
613
|
+
| {
|
|
614
|
+
[k: string]: unknown;
|
|
615
|
+
}
|
|
616
|
+
| string;
|
|
617
|
+
};
|
|
618
|
+
fkeys?: {
|
|
619
|
+
type: string;
|
|
620
|
+
field?: string;
|
|
621
|
+
as?: string;
|
|
622
|
+
pkey?: string;
|
|
623
|
+
subgraph?: string;
|
|
624
|
+
resolver?: {
|
|
625
|
+
name: string;
|
|
626
|
+
argsAdapter?:
|
|
627
|
+
| {
|
|
628
|
+
[k: string]: unknown;
|
|
629
|
+
}
|
|
630
|
+
| string;
|
|
631
|
+
partialResults?:
|
|
632
|
+
| {
|
|
633
|
+
[k: string]: unknown;
|
|
634
|
+
}
|
|
635
|
+
| string;
|
|
636
|
+
};
|
|
637
|
+
[k: string]: unknown;
|
|
638
|
+
}[];
|
|
639
|
+
many?: {
|
|
640
|
+
type: string;
|
|
641
|
+
fkey: string;
|
|
642
|
+
as?: string;
|
|
643
|
+
pkey?: string;
|
|
644
|
+
subgraph?: string;
|
|
645
|
+
resolver: {
|
|
646
|
+
name: string;
|
|
647
|
+
argsAdapter?:
|
|
648
|
+
| {
|
|
649
|
+
[k: string]: unknown;
|
|
650
|
+
}
|
|
651
|
+
| string;
|
|
652
|
+
partialResults?:
|
|
653
|
+
| {
|
|
654
|
+
[k: string]: unknown;
|
|
655
|
+
}
|
|
656
|
+
| string;
|
|
657
|
+
};
|
|
658
|
+
[k: string]: unknown;
|
|
659
|
+
}[];
|
|
660
|
+
[k: string]: unknown;
|
|
661
|
+
};
|
|
662
|
+
};
|
|
663
|
+
};
|
|
664
|
+
proxy?:
|
|
665
|
+
| false
|
|
666
|
+
| {
|
|
667
|
+
upstream?: string;
|
|
668
|
+
prefix?: string;
|
|
669
|
+
hostname?: string;
|
|
670
|
+
ws?: {
|
|
671
|
+
upstream?: string;
|
|
672
|
+
reconnect?: {
|
|
673
|
+
pingInterval?: number;
|
|
674
|
+
maxReconnectionRetries?: number;
|
|
675
|
+
reconnectInterval?: number;
|
|
676
|
+
reconnectDecay?: number;
|
|
677
|
+
connectionTimeout?: number;
|
|
678
|
+
reconnectOnClose?: boolean;
|
|
679
|
+
logs?: boolean;
|
|
680
|
+
[k: string]: unknown;
|
|
681
|
+
};
|
|
682
|
+
hooks?: {
|
|
683
|
+
path: string;
|
|
684
|
+
};
|
|
685
|
+
};
|
|
686
|
+
};
|
|
687
|
+
}[];
|
|
688
|
+
openapi?: {
|
|
689
|
+
info?: Info;
|
|
690
|
+
jsonSchemaDialect?: string;
|
|
691
|
+
servers?: Server[];
|
|
692
|
+
paths?: Paths;
|
|
693
|
+
webhooks?: {
|
|
694
|
+
[k: string]: PathItemOrReference;
|
|
695
|
+
};
|
|
696
|
+
components?: Components;
|
|
697
|
+
security?: SecurityRequirement[];
|
|
698
|
+
tags?: Tag[];
|
|
699
|
+
externalDocs?: ExternalDocumentation;
|
|
700
|
+
/**
|
|
701
|
+
* Base URL for the OpenAPI Swagger Documentation
|
|
702
|
+
*/
|
|
703
|
+
swaggerPrefix?: string;
|
|
704
|
+
/**
|
|
705
|
+
* Path to an OpenAPI spec file
|
|
706
|
+
*/
|
|
707
|
+
path?: string;
|
|
708
|
+
[k: string]: unknown;
|
|
709
|
+
};
|
|
710
|
+
graphql?: {
|
|
711
|
+
graphiql?: boolean;
|
|
712
|
+
onSubgraphError?: {
|
|
713
|
+
[k: string]: unknown;
|
|
714
|
+
};
|
|
715
|
+
defaultArgsAdapter?:
|
|
716
|
+
| {
|
|
717
|
+
[k: string]: unknown;
|
|
718
|
+
}
|
|
719
|
+
| string;
|
|
720
|
+
entities?: {
|
|
721
|
+
/**
|
|
722
|
+
* This interface was referenced by `undefined`'s JSON-Schema definition
|
|
723
|
+
* via the `patternProperty` "^.*$".
|
|
724
|
+
*/
|
|
725
|
+
[k: string]: {
|
|
726
|
+
pkey?: string;
|
|
727
|
+
resolver?: {
|
|
728
|
+
name: string;
|
|
729
|
+
argsAdapter?:
|
|
730
|
+
| {
|
|
731
|
+
[k: string]: unknown;
|
|
732
|
+
}
|
|
733
|
+
| string;
|
|
734
|
+
partialResults?:
|
|
735
|
+
| {
|
|
736
|
+
[k: string]: unknown;
|
|
737
|
+
}
|
|
738
|
+
| string;
|
|
739
|
+
};
|
|
740
|
+
fkeys?: {
|
|
741
|
+
type: string;
|
|
742
|
+
field?: string;
|
|
743
|
+
as?: string;
|
|
744
|
+
pkey?: string;
|
|
745
|
+
subgraph?: string;
|
|
746
|
+
resolver?: {
|
|
747
|
+
name: string;
|
|
748
|
+
argsAdapter?:
|
|
749
|
+
| {
|
|
750
|
+
[k: string]: unknown;
|
|
751
|
+
}
|
|
752
|
+
| string;
|
|
753
|
+
partialResults?:
|
|
754
|
+
| {
|
|
755
|
+
[k: string]: unknown;
|
|
756
|
+
}
|
|
757
|
+
| string;
|
|
758
|
+
};
|
|
759
|
+
[k: string]: unknown;
|
|
760
|
+
}[];
|
|
761
|
+
many?: {
|
|
762
|
+
type: string;
|
|
763
|
+
fkey: string;
|
|
764
|
+
as?: string;
|
|
765
|
+
pkey?: string;
|
|
766
|
+
subgraph?: string;
|
|
767
|
+
resolver: {
|
|
768
|
+
name: string;
|
|
769
|
+
argsAdapter?:
|
|
770
|
+
| {
|
|
771
|
+
[k: string]: unknown;
|
|
772
|
+
}
|
|
773
|
+
| string;
|
|
774
|
+
partialResults?:
|
|
775
|
+
| {
|
|
776
|
+
[k: string]: unknown;
|
|
777
|
+
}
|
|
778
|
+
| string;
|
|
779
|
+
};
|
|
780
|
+
[k: string]: unknown;
|
|
781
|
+
}[];
|
|
782
|
+
[k: string]: unknown;
|
|
783
|
+
};
|
|
784
|
+
};
|
|
785
|
+
addEntitiesResolvers?: boolean;
|
|
786
|
+
};
|
|
787
|
+
addEmptySchema?: boolean;
|
|
788
|
+
refreshTimeout?: number;
|
|
789
|
+
};
|
|
790
|
+
}
|
|
791
|
+
export interface Info {
|
|
792
|
+
title: string;
|
|
793
|
+
summary?: string;
|
|
794
|
+
description?: string;
|
|
795
|
+
termsOfService?: string;
|
|
796
|
+
contact?: Contact;
|
|
797
|
+
license?: License;
|
|
798
|
+
version: string;
|
|
799
|
+
/**
|
|
800
|
+
* This interface was referenced by `Info`'s JSON-Schema definition
|
|
801
|
+
* via the `patternProperty` "^x-".
|
|
802
|
+
*/
|
|
803
|
+
[k: string]: unknown;
|
|
804
|
+
}
|
|
805
|
+
export interface Contact {
|
|
806
|
+
name?: string;
|
|
807
|
+
url?: string;
|
|
808
|
+
email?: string;
|
|
809
|
+
/**
|
|
810
|
+
* This interface was referenced by `Contact`'s JSON-Schema definition
|
|
811
|
+
* via the `patternProperty` "^x-".
|
|
812
|
+
*/
|
|
813
|
+
[k: string]: unknown;
|
|
814
|
+
}
|
|
815
|
+
export interface License {
|
|
816
|
+
name: string;
|
|
817
|
+
identifier?: string;
|
|
818
|
+
url?: string;
|
|
819
|
+
/**
|
|
820
|
+
* This interface was referenced by `License`'s JSON-Schema definition
|
|
821
|
+
* via the `patternProperty` "^x-".
|
|
822
|
+
*/
|
|
823
|
+
[k: string]: unknown;
|
|
824
|
+
}
|
|
825
|
+
export interface Server {
|
|
826
|
+
url: string;
|
|
827
|
+
description?: string;
|
|
828
|
+
variables?: {
|
|
829
|
+
[k: string]: ServerVariable;
|
|
830
|
+
};
|
|
831
|
+
/**
|
|
832
|
+
* This interface was referenced by `Server`'s JSON-Schema definition
|
|
833
|
+
* via the `patternProperty` "^x-".
|
|
834
|
+
*/
|
|
835
|
+
[k: string]: unknown;
|
|
836
|
+
}
|
|
837
|
+
export interface ServerVariable {
|
|
838
|
+
/**
|
|
839
|
+
* @minItems 1
|
|
840
|
+
*/
|
|
841
|
+
enum?: [string, ...string[]];
|
|
842
|
+
default: string;
|
|
843
|
+
description?: string;
|
|
844
|
+
/**
|
|
845
|
+
* This interface was referenced by `ServerVariable`'s JSON-Schema definition
|
|
846
|
+
* via the `patternProperty` "^x-".
|
|
847
|
+
*/
|
|
848
|
+
[k: string]: unknown;
|
|
849
|
+
}
|
|
850
|
+
export interface Paths {
|
|
851
|
+
[k: string]: PathItem;
|
|
852
|
+
}
|
|
853
|
+
/**
|
|
854
|
+
* This interface was referenced by `Paths`'s JSON-Schema definition
|
|
855
|
+
* via the `patternProperty` "^/".
|
|
856
|
+
*/
|
|
857
|
+
export interface PathItem {
|
|
858
|
+
summary?: string;
|
|
859
|
+
description?: string;
|
|
860
|
+
servers?: Server[];
|
|
861
|
+
parameters?: ParameterOrReference[];
|
|
862
|
+
get?: Operation;
|
|
863
|
+
put?: Operation1;
|
|
864
|
+
post?: Operation1;
|
|
865
|
+
delete?: Operation1;
|
|
866
|
+
options?: Operation1;
|
|
867
|
+
head?: Operation1;
|
|
868
|
+
patch?: Operation1;
|
|
869
|
+
trace?: Operation1;
|
|
870
|
+
/**
|
|
871
|
+
* This interface was referenced by `PathItem`'s JSON-Schema definition
|
|
872
|
+
* via the `patternProperty` "^x-".
|
|
873
|
+
*/
|
|
874
|
+
[k: string]: unknown;
|
|
875
|
+
}
|
|
876
|
+
export interface ParameterOrReference {
|
|
877
|
+
[k: string]: unknown;
|
|
878
|
+
}
|
|
879
|
+
export interface Operation {
|
|
880
|
+
tags?: string[];
|
|
881
|
+
summary?: string;
|
|
882
|
+
description?: string;
|
|
883
|
+
externalDocs?: ExternalDocumentation;
|
|
884
|
+
operationId?: string;
|
|
885
|
+
parameters?: ParameterOrReference[];
|
|
886
|
+
requestBody?: RequestBodyOrReference;
|
|
887
|
+
responses?: Responses;
|
|
888
|
+
callbacks?: {
|
|
889
|
+
[k: string]: CallbacksOrReference;
|
|
890
|
+
};
|
|
891
|
+
security?: SecurityRequirement[];
|
|
892
|
+
servers?: Server[];
|
|
893
|
+
/**
|
|
894
|
+
* This interface was referenced by `Operation`'s JSON-Schema definition
|
|
895
|
+
* via the `patternProperty` "^x-".
|
|
896
|
+
*/
|
|
897
|
+
[k: string]: unknown;
|
|
898
|
+
}
|
|
899
|
+
export interface ExternalDocumentation {
|
|
900
|
+
description?: string;
|
|
901
|
+
url: string;
|
|
902
|
+
/**
|
|
903
|
+
* This interface was referenced by `ExternalDocumentation`'s JSON-Schema definition
|
|
904
|
+
* via the `patternProperty` "^x-".
|
|
905
|
+
*/
|
|
906
|
+
[k: string]: unknown;
|
|
907
|
+
}
|
|
908
|
+
export interface RequestBodyOrReference {
|
|
909
|
+
[k: string]: unknown;
|
|
910
|
+
}
|
|
911
|
+
export interface Responses {
|
|
912
|
+
[k: string]: ResponseOrReference;
|
|
913
|
+
}
|
|
914
|
+
export interface ResponseOrReference {
|
|
915
|
+
[k: string]: unknown;
|
|
916
|
+
}
|
|
917
|
+
export interface CallbacksOrReference {
|
|
918
|
+
[k: string]: unknown;
|
|
919
|
+
}
|
|
920
|
+
export interface SecurityRequirement {
|
|
921
|
+
[k: string]: string[];
|
|
922
|
+
}
|
|
923
|
+
export interface Operation1 {
|
|
924
|
+
tags?: string[];
|
|
925
|
+
summary?: string;
|
|
926
|
+
description?: string;
|
|
927
|
+
externalDocs?: ExternalDocumentation;
|
|
928
|
+
operationId?: string;
|
|
929
|
+
parameters?: ParameterOrReference[];
|
|
930
|
+
requestBody?: RequestBodyOrReference;
|
|
931
|
+
responses?: Responses;
|
|
932
|
+
callbacks?: {
|
|
933
|
+
[k: string]: CallbacksOrReference;
|
|
934
|
+
};
|
|
935
|
+
security?: SecurityRequirement[];
|
|
936
|
+
servers?: Server[];
|
|
937
|
+
/**
|
|
938
|
+
* This interface was referenced by `Operation1`'s JSON-Schema definition
|
|
939
|
+
* via the `patternProperty` "^x-".
|
|
940
|
+
*/
|
|
941
|
+
[k: string]: unknown;
|
|
942
|
+
}
|
|
943
|
+
export interface PathItemOrReference {
|
|
944
|
+
[k: string]: unknown;
|
|
945
|
+
}
|
|
946
|
+
export interface Components {
|
|
947
|
+
schemas?: {
|
|
948
|
+
[k: string]: unknown;
|
|
949
|
+
};
|
|
950
|
+
responses?: {
|
|
951
|
+
[k: string]: ResponseOrReference;
|
|
952
|
+
};
|
|
953
|
+
parameters?: {
|
|
954
|
+
[k: string]: ParameterOrReference;
|
|
955
|
+
};
|
|
956
|
+
examples?: {
|
|
957
|
+
[k: string]: ExampleOrReference;
|
|
958
|
+
};
|
|
959
|
+
requestBodies?: {
|
|
960
|
+
[k: string]: RequestBodyOrReference;
|
|
961
|
+
};
|
|
962
|
+
headers?: {
|
|
963
|
+
[k: string]: HeaderOrReference;
|
|
964
|
+
};
|
|
965
|
+
securitySchemes?: {
|
|
966
|
+
[k: string]: SecuritySchemeOrReference;
|
|
967
|
+
};
|
|
968
|
+
links?: {
|
|
969
|
+
[k: string]: LinkOrReference;
|
|
970
|
+
};
|
|
971
|
+
callbacks?: {
|
|
972
|
+
[k: string]: CallbacksOrReference;
|
|
973
|
+
};
|
|
974
|
+
pathItems?: {
|
|
975
|
+
[k: string]: PathItemOrReference;
|
|
976
|
+
};
|
|
977
|
+
/**
|
|
978
|
+
* This interface was referenced by `Components`'s JSON-Schema definition
|
|
979
|
+
* via the `patternProperty` "^x-".
|
|
980
|
+
*/
|
|
981
|
+
[k: string]: unknown;
|
|
982
|
+
}
|
|
983
|
+
export interface ExampleOrReference {
|
|
984
|
+
[k: string]: unknown;
|
|
985
|
+
}
|
|
986
|
+
export interface HeaderOrReference {
|
|
987
|
+
[k: string]: unknown;
|
|
988
|
+
}
|
|
989
|
+
export interface SecuritySchemeOrReference {
|
|
990
|
+
[k: string]: unknown;
|
|
991
|
+
}
|
|
992
|
+
export interface LinkOrReference {
|
|
993
|
+
[k: string]: unknown;
|
|
994
|
+
}
|
|
995
|
+
export interface Tag {
|
|
996
|
+
name: string;
|
|
997
|
+
description?: string;
|
|
998
|
+
externalDocs?: ExternalDocumentation;
|
|
999
|
+
/**
|
|
1000
|
+
* This interface was referenced by `Tag`'s JSON-Schema definition
|
|
1001
|
+
* via the `patternProperty` "^x-".
|
|
1002
|
+
*/
|
|
1003
|
+
[k: string]: unknown;
|
|
1004
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@platformatic/composer",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -19,11 +19,12 @@
|
|
|
19
19
|
"c8": "^10.0.0",
|
|
20
20
|
"cleaner-spec-reporter": "^0.5.0",
|
|
21
21
|
"eslint": "9",
|
|
22
|
-
"neostandard": "^0.12.0"
|
|
22
|
+
"neostandard": "^0.12.0",
|
|
23
|
+
"json-schema-to-typescript": "^15.0.0"
|
|
23
24
|
},
|
|
24
25
|
"dependencies": {
|
|
25
|
-
"@platformatic/foundation": "3.
|
|
26
|
-
"@platformatic/gateway": "3.
|
|
26
|
+
"@platformatic/foundation": "3.4.0",
|
|
27
|
+
"@platformatic/gateway": "3.4.0"
|
|
27
28
|
},
|
|
28
29
|
"engines": {
|
|
29
30
|
"node": ">=22.19.0"
|
|
@@ -32,6 +33,8 @@
|
|
|
32
33
|
"test": "node --test --test-reporter=cleaner-spec-reporter --test-concurrency=1 --test-timeout=2000000 test/*.test.js",
|
|
33
34
|
"prebuild": "cd ../gateway && npm run build",
|
|
34
35
|
"build": "node scripts/schema.js",
|
|
35
|
-
"lint": "eslint"
|
|
36
|
+
"lint": "eslint",
|
|
37
|
+
"gen-schema": "node scripts/schema.js > schema.json",
|
|
38
|
+
"gen-types": "json2ts > config.d.ts < schema.json"
|
|
36
39
|
}
|
|
37
40
|
}
|
package/schema.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$id": "https://schemas.platformatic.dev/@platformatic/composer/3.
|
|
2
|
+
"$id": "https://schemas.platformatic.dev/@platformatic/composer/3.4.0.json",
|
|
3
3
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
4
4
|
"title": "Platformatic Composer Config",
|
|
5
5
|
"type": "object",
|
|
@@ -1591,6 +1591,11 @@
|
|
|
1591
1591
|
"type": "string"
|
|
1592
1592
|
}
|
|
1593
1593
|
},
|
|
1594
|
+
"applicationLabel": {
|
|
1595
|
+
"type": "string",
|
|
1596
|
+
"default": "applicationId",
|
|
1597
|
+
"description": "The label name to use for the application identifier in metrics (e.g., applicationId, serviceId)"
|
|
1598
|
+
},
|
|
1594
1599
|
"readiness": {
|
|
1595
1600
|
"anyOf": [
|
|
1596
1601
|
{
|
|
@@ -2688,6 +2693,17 @@
|
|
|
2688
2693
|
"type": "integer",
|
|
2689
2694
|
"minimum": 0,
|
|
2690
2695
|
"default": 1000
|
|
2696
|
+
},
|
|
2697
|
+
"passthroughContentTypes": {
|
|
2698
|
+
"type": "array",
|
|
2699
|
+
"items": {
|
|
2700
|
+
"type": "string"
|
|
2701
|
+
},
|
|
2702
|
+
"default": [
|
|
2703
|
+
"multipart/form-data",
|
|
2704
|
+
"application/octet-stream"
|
|
2705
|
+
],
|
|
2706
|
+
"description": "Content types that should be passed through without parsing to enable proxying"
|
|
2691
2707
|
}
|
|
2692
2708
|
},
|
|
2693
2709
|
"required": [],
|