@riddance/host 0.1.2 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/context.d.ts +1 -2
- package/context.js +1 -1
- package/event.d.ts +8 -0
- package/event.js +6 -0
- package/host/context.d.ts +6 -17
- package/host/context.js +2 -10
- package/host/event-registry.d.ts +10 -0
- package/host/event-registry.js +28 -0
- package/host/event.d.ts +11 -0
- package/host/event.js +17 -0
- package/host/git.d.ts +1 -0
- package/host/git.js +33 -0
- package/host/http-registry.d.ts +12 -0
- package/host/http-registry.js +33 -0
- package/host/http.d.ts +1 -1
- package/host/http.js +58 -16
- package/host/logging.js +79 -18
- package/host/meta.d.ts +12 -0
- package/host/meta.js +22 -0
- package/host/reflect.d.ts +15 -2
- package/host/reflect.js +33 -7
- package/host/registry.d.ts +10 -24
- package/host/registry.js +6 -56
- package/host/timer copy.d.ts +6 -0
- package/host/timer copy.js +14 -0
- package/host/timer-registry copy.d.ts +16 -0
- package/host/timer-registry copy.js +27 -0
- package/host/timer-registry.d.ts +16 -0
- package/host/timer-registry.js +27 -0
- package/host/timer.d.ts +6 -0
- package/host/timer.js +14 -0
- package/http.js +2 -2
- package/package.json +12 -5
- package/timer.d.ts +17 -0
- package/timer.js +6 -0
- package/host/events.d.ts +0 -13
- package/host/events.js +0 -68
package/host/reflect.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { readdir, readFile } from 'node:fs/promises';
|
|
2
2
|
import { basename, extname, join, resolve } from 'node:path';
|
|
3
3
|
import { pathToFileURL } from 'node:url';
|
|
4
|
+
import { getHash } from './git.js';
|
|
4
5
|
export function resolveCpu(config, supported) {
|
|
5
6
|
const resolved = resolveSupported(config.cpus, supported);
|
|
6
7
|
if (!resolved) {
|
|
@@ -26,17 +27,22 @@ function resolveSupported(config, supported) {
|
|
|
26
27
|
return supported.find(s => config.includes(s) && !config.includes(`!${s}`));
|
|
27
28
|
}
|
|
28
29
|
export async function reflect(path) {
|
|
29
|
-
const packageJson = await readConfig();
|
|
30
30
|
const absolutePath = resolve(process.cwd(), path);
|
|
31
|
-
const
|
|
31
|
+
const [packageJson, allFiles, revision] = await Promise.all([
|
|
32
|
+
readConfig(absolutePath),
|
|
33
|
+
readdir(absolutePath),
|
|
34
|
+
getHash(absolutePath),
|
|
35
|
+
]);
|
|
36
|
+
const files = allFiles.filter(file => extname(file) === '.ts' && !file.endsWith('.d.ts'));
|
|
32
37
|
const { getHandlers, setMeta } = (await import(pathToFileURL(join(absolutePath, 'node_modules/@riddance/host/host/registry.js')).toString()));
|
|
33
38
|
for (const file of files) {
|
|
34
39
|
const base = basename(file, '.ts');
|
|
35
|
-
setMeta(packageJson.name, base,
|
|
40
|
+
setMeta(packageJson.name, base, revision, packageJson.config);
|
|
36
41
|
await import(pathToFileURL(join(absolutePath, base + '.js')).toString());
|
|
37
42
|
}
|
|
38
43
|
return {
|
|
39
44
|
name: packageJson.name,
|
|
45
|
+
revision,
|
|
40
46
|
http: getHandlers('http').map(h => ({
|
|
41
47
|
config: {
|
|
42
48
|
...h.config,
|
|
@@ -47,12 +53,32 @@ export async function reflect(path) {
|
|
|
47
53
|
name: h.meta?.fileName ?? '',
|
|
48
54
|
method: h.method,
|
|
49
55
|
pathPattern: h.pathPattern,
|
|
50
|
-
|
|
56
|
+
})),
|
|
57
|
+
timers: getHandlers('timer').map(h => ({
|
|
58
|
+
config: {
|
|
59
|
+
...h.config,
|
|
60
|
+
cpus: packageJson.cpu,
|
|
61
|
+
os: packageJson.os,
|
|
62
|
+
nodeVersion: packageJson.engines?.node,
|
|
63
|
+
},
|
|
64
|
+
name: h.meta?.fileName ?? '',
|
|
65
|
+
schedule: h.schedule,
|
|
66
|
+
})),
|
|
67
|
+
events: getHandlers('event').map(h => ({
|
|
68
|
+
config: {
|
|
69
|
+
...h.config,
|
|
70
|
+
cpus: packageJson.cpu,
|
|
71
|
+
os: packageJson.os,
|
|
72
|
+
nodeVersion: packageJson.engines?.node,
|
|
73
|
+
},
|
|
74
|
+
name: h.meta?.fileName ?? '',
|
|
75
|
+
topic: h.topic,
|
|
76
|
+
type: h.type,
|
|
51
77
|
})),
|
|
52
78
|
};
|
|
53
79
|
}
|
|
54
|
-
async function readConfig() {
|
|
55
|
-
const packageJson = JSON.parse(await readFile('package.json', 'utf-8'));
|
|
80
|
+
async function readConfig(path) {
|
|
81
|
+
const packageJson = JSON.parse(await readFile(join(path, 'package.json'), 'utf-8'));
|
|
56
82
|
return packageJson;
|
|
57
83
|
}
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmbGVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInJlZmxlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFvQ3hDLE1BQU0sVUFBVSxVQUFVLENBQUMsTUFBZ0MsRUFBRSxTQUFnQjtJQUN6RSxNQUFNLFFBQVEsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFBO0lBQ3pELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNaLDBHQUEwRztRQUMxRyxvRUFBb0U7UUFDcEUsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQkFBb0IsR0FBRyxNQUFNLENBQUMsSUFBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0lBQ25FLENBQUM7SUFDRCxPQUFPLFFBQVEsQ0FBQTtBQUNuQixDQUFDO0FBRUQsTUFBTSxVQUFVLFNBQVMsQ0FDckIsTUFBZ0MsRUFDaEMsU0FBNEI7SUFFNUIsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxTQUFTLENBQUMsQ0FBQTtJQUN2RCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDWiwwR0FBMEc7UUFDMUcsb0VBQW9FO1FBQ3BFLE1BQU0sSUFBSSxLQUFLLENBQUMsaUNBQWlDLEdBQUcsTUFBTSxDQUFDLEVBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUM5RSxDQUFDO0lBQ0QsT0FBTyxRQUFRLENBQUE7QUFDbkIsQ0FBQztBQUVELFNBQVMsZ0JBQWdCLENBQ3JCLE1BQW1DLEVBQ25DLFNBQWM7SUFFZCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDVixPQUFPLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUN2QixDQUFDO0lBQ0QsT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUE7QUFDL0UsQ0FBQztBQUVELE1BQU0sQ0FBQyxLQUFLLFVBQVUsT0FBTyxDQUFDLElBQVk7SUFDdEMsTUFBTSxXQUFXLEdBQUcsTUFBTSxVQUFVLEVBQUUsQ0FBQTtJQUN0QyxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFBO0lBQ2pELE1BQU0sS0FBSyxHQUFHLENBQUMsTUFBTSxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQzlDLElBQUksQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQzdELENBQUE7SUFDRCxNQUFNLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsTUFBTSxNQUFNLENBQzFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLDhDQUE4QyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FDL0YsQ0FlQSxDQUFBO0lBRUQsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUUsQ0FBQztRQUN2QixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFBO1FBQ2xDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzlELE1BQU0sTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUE7SUFDNUUsQ0FBQztJQUVELE9BQU87UUFDSCxJQUFJLEVBQUUsV0FBVyxDQUFDLElBQUk7UUFDdEIsSUFBSSxFQUFFLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2hDLE1BQU0sRUFBRTtnQkFDSixHQUFHLENBQUMsQ0FBQyxNQUFNO2dCQUNYLElBQUksRUFBRSxXQUFXLENBQUMsR0FBRztnQkFDckIsRUFBRSxFQUFFLFdBQVcsQ0FBQyxFQUFFO2dCQUNsQixXQUFXLEVBQUUsV0FBVyxDQUFDLE9BQU8sRUFBRSxJQUFJO2FBQ3pDO1lBQ0QsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsUUFBUSxJQUFJLEVBQUU7WUFDNUIsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNO1lBQ2hCLFdBQVcsRUFBRSxDQUFDLENBQUMsV0FBVztZQUMxQixVQUFVLEVBQUUsQ0FBQyxDQUFDLFVBQVU7U0FDM0IsQ0FBQyxDQUFDO0tBQ04sQ0FBQTtBQUNMLENBQUM7QUFFRCxLQUFLLFVBQVUsVUFBVTtJQUNyQixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDLGNBQWMsRUFBRSxPQUFPLENBQUMsQ0FNckUsQ0FBQTtJQUNELE9BQU8sV0FBVyxDQUFBO0FBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWFkZGlyLCByZWFkRmlsZSB9IGZyb20gJ25vZGU6ZnMvcHJvbWlzZXMnXG5pbXBvcnQgeyBiYXNlbmFtZSwgZXh0bmFtZSwgam9pbiwgcmVzb2x2ZSB9IGZyb20gJ25vZGU6cGF0aCdcbmltcG9ydCB7IHBhdGhUb0ZpbGVVUkwgfSBmcm9tICdub2RlOnVybCdcbmltcG9ydCB7IEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2h0dHAuanMnXG5pbXBvcnQgeyBQYWNrYWdlQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vcmVnaXN0cnkuanMnXG5cbnR5cGUgQ1BVID1cbiAgICB8ICdhcm0nXG4gICAgfCAnYXJtNjQnXG4gICAgfCAnaWEzMidcbiAgICB8ICdtaXBzJ1xuICAgIHwgJ21pcHNlbCdcbiAgICB8ICdwcGMnXG4gICAgfCAncHBjNjQnXG4gICAgfCAnczM5MCdcbiAgICB8ICdzMzkweCdcbiAgICB8ICd4MzInXG4gICAgfCAneDY0J1xudHlwZSBDcHVDb25maWcgPSBDUFUgfCBgISR7Q1BVfWBcbnR5cGUgT1NDb25maWcgPSBOb2RlSlMuUGxhdGZvcm0gfCBgISR7Tm9kZUpTLlBsYXRmb3JtfWBcblxuZXhwb3J0IHR5cGUgUGFja2FnZUpzb25Db25maWd1cmF0aW9uID0ge1xuICAgIG5vZGVWZXJzaW9uPzogc3RyaW5nXG4gICAgY3B1cz86IENwdUNvbmZpZ1tdXG4gICAgb3M/OiBPU0NvbmZpZ1tdXG59XG5cbmV4cG9ydCB0eXBlIFJlZmxlY3Rpb24gPSB7XG4gICAgbmFtZTogc3RyaW5nXG4gICAgaHR0cDoge1xuICAgICAgICBuYW1lOiBzdHJpbmdcbiAgICAgICAgbWV0aG9kOiBzdHJpbmdcbiAgICAgICAgcGF0aFBhdHRlcm46IHN0cmluZ1xuICAgICAgICBwYXRoUmVnRXhwOiBSZWdFeHBcbiAgICAgICAgY29uZmlnOiBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24gJiBQYWNrYWdlSnNvbkNvbmZpZ3VyYXRpb25cbiAgICB9W11cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVDcHUoY29uZmlnOiBQYWNrYWdlSnNvbkNvbmZpZ3VyYXRpb24sIHN1cHBvcnRlZDogQ1BVW10pOiBDUFUge1xuICAgIGNvbnN0IHJlc29sdmVkID0gcmVzb2x2ZVN1cHBvcnRlZChjb25maWcuY3B1cywgc3VwcG9ydGVkKVxuICAgIGlmICghcmVzb2x2ZWQpIHtcbiAgICAgICAgLy8gcmVzb2x2ZTxUPihjb25maWcsIHN1cHBvcnRlZCkgYWN0dWFsbHkgYXNzZXJ0cyBjb25maWcgaXMgKFQgfCBgISR7VH1gKVtdLCBidXQgdGhhdCdzIG5vdCBzdXBwb3J0ZWQgeWV0LlxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vuc3VwcG9ydGVkIENQVXM6ICcgKyBjb25maWcuY3B1cyEuam9pbignLCAnKSlcbiAgICB9XG4gICAgcmV0dXJuIHJlc29sdmVkXG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlT1MoXG4gICAgY29uZmlnOiBQYWNrYWdlSnNvbkNvbmZpZ3VyYXRpb24sXG4gICAgc3VwcG9ydGVkOiBOb2RlSlMuUGxhdGZvcm1bXSxcbik6IE5vZGVKUy5QbGF0Zm9ybSB7XG4gICAgY29uc3QgcmVzb2x2ZWQgPSByZXNvbHZlU3VwcG9ydGVkKGNvbmZpZy5vcywgc3VwcG9ydGVkKVxuICAgIGlmICghcmVzb2x2ZWQpIHtcbiAgICAgICAgLy8gcmVzb2x2ZTxUPihjb25maWcsIHN1cHBvcnRlZCkgYWN0dWFsbHkgYXNzZXJ0cyBjb25maWcgaXMgKFQgfCBgISR7VH1gKVtdLCBidXQgdGhhdCdzIG5vdCBzdXBwb3J0ZWQgeWV0LlxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vuc3VwcG9ydGVkIG9wZXJhdGluZyBzeXN0ZW1zOiAnICsgY29uZmlnLm9zIS5qb2luKCcsICcpKVxuICAgIH1cbiAgICByZXR1cm4gcmVzb2x2ZWRcbn1cblxuZnVuY3Rpb24gcmVzb2x2ZVN1cHBvcnRlZDxUIGV4dGVuZHMgc3RyaW5nPihcbiAgICBjb25maWc6IChUIHwgYCEke1R9YClbXSB8IHVuZGVmaW5lZCxcbiAgICBzdXBwb3J0ZWQ6IFRbXSxcbik6IFQgfCB1bmRlZmluZWQge1xuICAgIGlmICghY29uZmlnKSB7XG4gICAgICAgIHJldHVybiBzdXBwb3J0ZWRbMF1cbiAgICB9XG4gICAgcmV0dXJuIHN1cHBvcnRlZC5maW5kKHMgPT4gY29uZmlnLmluY2x1ZGVzKHMpICYmICFjb25maWcuaW5jbHVkZXMoYCEke3N9YCkpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZWZsZWN0KHBhdGg6IHN0cmluZyk6IFByb21pc2U8UmVmbGVjdGlvbj4ge1xuICAgIGNvbnN0IHBhY2thZ2VKc29uID0gYXdhaXQgcmVhZENvbmZpZygpXG4gICAgY29uc3QgYWJzb2x1dGVQYXRoID0gcmVzb2x2ZShwcm9jZXNzLmN3ZCgpLCBwYXRoKVxuICAgIGNvbnN0IGZpbGVzID0gKGF3YWl0IHJlYWRkaXIoYWJzb2x1dGVQYXRoKSkuZmlsdGVyKFxuICAgICAgICBmaWxlID0+IGV4dG5hbWUoZmlsZSkgPT09ICcudHMnICYmICFmaWxlLmVuZHNXaXRoKCcuZC50cycpLFxuICAgIClcbiAgICBjb25zdCB7IGdldEhhbmRsZXJzLCBzZXRNZXRhIH0gPSAoYXdhaXQgaW1wb3J0KFxuICAgICAgICBwYXRoVG9GaWxlVVJMKGpvaW4oYWJzb2x1dGVQYXRoLCAnbm9kZV9tb2R1bGVzL0ByaWRkYW5jZS9ob3N0L2hvc3QvcmVnaXN0cnkuanMnKSkudG9TdHJpbmcoKVxuICAgICkpIGFzIHtcbiAgICAgICAgZ2V0SGFuZGxlcnM6ICh0eXBlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIG5hbWU6IHN0cmluZ1xuICAgICAgICAgICAgbWV0YT86IHsgZmlsZU5hbWU6IHN0cmluZyB9XG4gICAgICAgICAgICBjb25maWc6IEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvblxuICAgICAgICAgICAgbWV0aG9kOiBzdHJpbmdcbiAgICAgICAgICAgIHBhdGhQYXR0ZXJuOiBzdHJpbmdcbiAgICAgICAgICAgIHBhdGhSZWdFeHA6IFJlZ0V4cFxuICAgICAgICB9W11cbiAgICAgICAgc2V0TWV0YTogKFxuICAgICAgICAgICAgcGFja2FnZU5hbWU6IHN0cmluZyxcbiAgICAgICAgICAgIGZpbGVOYW1lOiBzdHJpbmcsXG4gICAgICAgICAgICByZXY6IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGNmZzogUGFja2FnZUNvbmZpZ3VyYXRpb24gfCB1bmRlZmluZWQsXG4gICAgICAgICkgPT4gdm9pZFxuICAgIH1cblxuICAgIGZvciAoY29uc3QgZmlsZSBvZiBmaWxlcykge1xuICAgICAgICBjb25zdCBiYXNlID0gYmFzZW5hbWUoZmlsZSwgJy50cycpXG4gICAgICAgIHNldE1ldGEocGFja2FnZUpzb24ubmFtZSwgYmFzZSwgdW5kZWZpbmVkLCBwYWNrYWdlSnNvbi5jb25maWcpXG4gICAgICAgIGF3YWl0IGltcG9ydChwYXRoVG9GaWxlVVJMKGpvaW4oYWJzb2x1dGVQYXRoLCBiYXNlICsgJy5qcycpKS50b1N0cmluZygpKVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAgIG5hbWU6IHBhY2thZ2VKc29uLm5hbWUsXG4gICAgICAgIGh0dHA6IGdldEhhbmRsZXJzKCdodHRwJykubWFwKGggPT4gKHtcbiAgICAgICAgICAgIGNvbmZpZzoge1xuICAgICAgICAgICAgICAgIC4uLmguY29uZmlnLFxuICAgICAgICAgICAgICAgIGNwdXM6IHBhY2thZ2VKc29uLmNwdSxcbiAgICAgICAgICAgICAgICBvczogcGFja2FnZUpzb24ub3MsXG4gICAgICAgICAgICAgICAgbm9kZVZlcnNpb246IHBhY2thZ2VKc29uLmVuZ2luZXM/Lm5vZGUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbmFtZTogaC5tZXRhPy5maWxlTmFtZSA/PyAnJyxcbiAgICAgICAgICAgIG1ldGhvZDogaC5tZXRob2QsXG4gICAgICAgICAgICBwYXRoUGF0dGVybjogaC5wYXRoUGF0dGVybixcbiAgICAgICAgICAgIHBhdGhSZWdFeHA6IGgucGF0aFJlZ0V4cCxcbiAgICAgICAgfSkpLFxuICAgIH1cbn1cblxuYXN5bmMgZnVuY3Rpb24gcmVhZENvbmZpZygpIHtcbiAgICBjb25zdCBwYWNrYWdlSnNvbiA9IEpTT04ucGFyc2UoYXdhaXQgcmVhZEZpbGUoJ3BhY2thZ2UuanNvbicsICd1dGYtOCcpKSBhcyB7XG4gICAgICAgIG5hbWU6IHN0cmluZ1xuICAgICAgICBlbmdpbmVzPzogeyBbZW5naW5lOiBzdHJpbmddOiBzdHJpbmcgfVxuICAgICAgICBjcHU/OiBDcHVDb25maWdbXVxuICAgICAgICBvcz86IE9TQ29uZmlnW11cbiAgICAgICAgY29uZmlnPzogb2JqZWN0XG4gICAgfVxuICAgIHJldHVybiBwYWNrYWdlSnNvblxufVxuIl19
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmbGVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInJlZmxlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUNwRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFJeEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQStDbEMsTUFBTSxVQUFVLFVBQVUsQ0FBQyxNQUFnQyxFQUFFLFNBQWdCO0lBQ3pFLE1BQU0sUUFBUSxHQUFHLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUE7SUFDekQsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ1osMEdBQTBHO1FBQzFHLG9FQUFvRTtRQUNwRSxNQUFNLElBQUksS0FBSyxDQUFDLG9CQUFvQixHQUFHLE1BQU0sQ0FBQyxJQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDbkUsQ0FBQztJQUNELE9BQU8sUUFBUSxDQUFBO0FBQ25CLENBQUM7QUFFRCxNQUFNLFVBQVUsU0FBUyxDQUNyQixNQUFnQyxFQUNoQyxTQUE0QjtJQUU1QixNQUFNLFFBQVEsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFBO0lBQ3ZELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNaLDBHQUEwRztRQUMxRyxvRUFBb0U7UUFDcEUsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsR0FBRyxNQUFNLENBQUMsRUFBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0lBQzlFLENBQUM7SUFDRCxPQUFPLFFBQVEsQ0FBQTtBQUNuQixDQUFDO0FBRUQsU0FBUyxnQkFBZ0IsQ0FDckIsTUFBbUMsRUFDbkMsU0FBYztJQUVkLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNWLE9BQU8sU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ3ZCLENBQUM7SUFDRCxPQUFPLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtBQUMvRSxDQUFDO0FBRUQsTUFBTSxDQUFDLEtBQUssVUFBVSxPQUFPLENBQUMsSUFBWTtJQUN0QyxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFBO0lBQ2pELE1BQU0sQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQztRQUN4RCxVQUFVLENBQUMsWUFBWSxDQUFDO1FBQ3hCLE9BQU8sQ0FBQyxZQUFZLENBQUM7UUFDckIsT0FBTyxDQUFDLFlBQVksQ0FBQztLQUN4QixDQUFDLENBQUE7SUFDRixNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQTtJQUN6RixNQUFNLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMsTUFBTSxNQUFNLENBQzFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLDhDQUE4QyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FDL0YsQ0FRQSxDQUFBO0lBRUQsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUUsQ0FBQztRQUN2QixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFBO1FBQ2xDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzdELE1BQU0sTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUE7SUFDNUUsQ0FBQztJQUVELE9BQU87UUFDSCxJQUFJLEVBQUUsV0FBVyxDQUFDLElBQUk7UUFDdEIsUUFBUTtRQUNSLElBQUksRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNoQyxNQUFNLEVBQUU7Z0JBQ0osR0FBRyxDQUFDLENBQUMsTUFBTTtnQkFDWCxJQUFJLEVBQUUsV0FBVyxDQUFDLEdBQUc7Z0JBQ3JCLEVBQUUsRUFBRSxXQUFXLENBQUMsRUFBRTtnQkFDbEIsV0FBVyxFQUFFLFdBQVcsQ0FBQyxPQUFPLEVBQUUsSUFBSTthQUN6QztZQUNELElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLFFBQVEsSUFBSSxFQUFFO1lBQzVCLE1BQU0sRUFBRSxDQUFDLENBQUMsTUFBTTtZQUNoQixXQUFXLEVBQUUsQ0FBQyxDQUFDLFdBQVc7U0FDN0IsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxFQUFFLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ25DLE1BQU0sRUFBRTtnQkFDSixHQUFHLENBQUMsQ0FBQyxNQUFNO2dCQUNYLElBQUksRUFBRSxXQUFXLENBQUMsR0FBRztnQkFDckIsRUFBRSxFQUFFLFdBQVcsQ0FBQyxFQUFFO2dCQUNsQixXQUFXLEVBQUUsV0FBVyxDQUFDLE9BQU8sRUFBRSxJQUFJO2FBQ3pDO1lBQ0QsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsUUFBUSxJQUFJLEVBQUU7WUFDNUIsUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRO1NBQ3ZCLENBQUMsQ0FBQztRQUNILE1BQU0sRUFBRSxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNuQyxNQUFNLEVBQUU7Z0JBQ0osR0FBRyxDQUFDLENBQUMsTUFBTTtnQkFDWCxJQUFJLEVBQUUsV0FBVyxDQUFDLEdBQUc7Z0JBQ3JCLEVBQUUsRUFBRSxXQUFXLENBQUMsRUFBRTtnQkFDbEIsV0FBVyxFQUFFLFdBQVcsQ0FBQyxPQUFPLEVBQUUsSUFBSTthQUN6QztZQUNELElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLFFBQVEsSUFBSSxFQUFFO1lBQzVCLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSztZQUNkLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSTtTQUNmLENBQUMsQ0FBQztLQUNOLENBQUE7QUFDTCxDQUFDO0FBRUQsS0FBSyxVQUFVLFVBQVUsQ0FBQyxJQUFZO0lBQ2xDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxjQUFjLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FNakYsQ0FBQTtJQUNELE9BQU8sV0FBVyxDQUFBO0FBQ3RCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWFkZGlyLCByZWFkRmlsZSB9IGZyb20gJ25vZGU6ZnMvcHJvbWlzZXMnXG5pbXBvcnQgeyBiYXNlbmFtZSwgZXh0bmFtZSwgam9pbiwgcmVzb2x2ZSB9IGZyb20gJ25vZGU6cGF0aCdcbmltcG9ydCB7IHBhdGhUb0ZpbGVVUkwgfSBmcm9tICdub2RlOnVybCdcbmltcG9ydCB0eXBlIHsgSGFuZGxlckNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9jb250ZXh0LmpzJ1xuaW1wb3J0IHR5cGUgeyBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9odHRwLmpzJ1xuaW1wb3J0IHR5cGUgeyBUaW1lckhhbmRsZXJDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vdGltZXIuanMnXG5pbXBvcnQgeyBnZXRIYXNoIH0gZnJvbSAnLi9naXQuanMnXG5pbXBvcnQgdHlwZSB7IFBhY2thZ2VDb25maWd1cmF0aW9uIH0gZnJvbSAnLi9tZXRhLmpzJ1xuaW1wb3J0IHR5cGUgeyBIYW5kbGVyc0dldHRlciB9IGZyb20gJy4vcmVnaXN0cnkuanMnXG5cbnR5cGUgQ1BVID1cbiAgICB8ICdhcm0nXG4gICAgfCAnYXJtNjQnXG4gICAgfCAnaWEzMidcbiAgICB8ICdtaXBzJ1xuICAgIHwgJ21pcHNlbCdcbiAgICB8ICdwcGMnXG4gICAgfCAncHBjNjQnXG4gICAgfCAnczM5MCdcbiAgICB8ICdzMzkweCdcbiAgICB8ICd4MzInXG4gICAgfCAneDY0J1xudHlwZSBDcHVDb25maWcgPSBDUFUgfCBgISR7Q1BVfWBcbnR5cGUgT1NDb25maWcgPSBOb2RlSlMuUGxhdGZvcm0gfCBgISR7Tm9kZUpTLlBsYXRmb3JtfWBcblxuZXhwb3J0IHR5cGUgUGFja2FnZUpzb25Db25maWd1cmF0aW9uID0ge1xuICAgIG5vZGVWZXJzaW9uPzogc3RyaW5nXG4gICAgY3B1cz86IENwdUNvbmZpZ1tdXG4gICAgb3M/OiBPU0NvbmZpZ1tdXG59XG5cbmV4cG9ydCB0eXBlIFJlZmxlY3Rpb24gPSB7XG4gICAgbmFtZTogc3RyaW5nXG4gICAgcmV2aXNpb246IHN0cmluZyB8IHVuZGVmaW5lZFxuICAgIGh0dHA6IHtcbiAgICAgICAgbmFtZTogc3RyaW5nXG4gICAgICAgIG1ldGhvZDogc3RyaW5nXG4gICAgICAgIHBhdGhQYXR0ZXJuOiBzdHJpbmdcbiAgICAgICAgY29uZmlnOiBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24gJiBQYWNrYWdlSnNvbkNvbmZpZ3VyYXRpb25cbiAgICB9W11cbiAgICB0aW1lcnM6IHtcbiAgICAgICAgbmFtZTogc3RyaW5nXG4gICAgICAgIHNjaGVkdWxlOiBzdHJpbmdcbiAgICAgICAgY29uZmlnOiBUaW1lckhhbmRsZXJDb25maWd1cmF0aW9uICYgUGFja2FnZUpzb25Db25maWd1cmF0aW9uXG4gICAgfVtdXG4gICAgZXZlbnRzOiB7XG4gICAgICAgIG5hbWU6IHN0cmluZ1xuICAgICAgICB0b3BpYzogc3RyaW5nXG4gICAgICAgIHR5cGU6IHN0cmluZ1xuICAgICAgICBjb25maWc6IEhhbmRsZXJDb25maWd1cmF0aW9uICYgUGFja2FnZUpzb25Db25maWd1cmF0aW9uXG4gICAgfVtdXG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlQ3B1KGNvbmZpZzogUGFja2FnZUpzb25Db25maWd1cmF0aW9uLCBzdXBwb3J0ZWQ6IENQVVtdKTogQ1BVIHtcbiAgICBjb25zdCByZXNvbHZlZCA9IHJlc29sdmVTdXBwb3J0ZWQoY29uZmlnLmNwdXMsIHN1cHBvcnRlZClcbiAgICBpZiAoIXJlc29sdmVkKSB7XG4gICAgICAgIC8vIHJlc29sdmU8VD4oY29uZmlnLCBzdXBwb3J0ZWQpIGFjdHVhbGx5IGFzc2VydHMgY29uZmlnIGlzIChUIHwgYCEke1R9YClbXSwgYnV0IHRoYXQncyBub3Qgc3VwcG9ydGVkIHlldC5cbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbnN1cHBvcnRlZCBDUFVzOiAnICsgY29uZmlnLmNwdXMhLmpvaW4oJywgJykpXG4gICAgfVxuICAgIHJldHVybiByZXNvbHZlZFxufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZU9TKFxuICAgIGNvbmZpZzogUGFja2FnZUpzb25Db25maWd1cmF0aW9uLFxuICAgIHN1cHBvcnRlZDogTm9kZUpTLlBsYXRmb3JtW10sXG4pOiBOb2RlSlMuUGxhdGZvcm0ge1xuICAgIGNvbnN0IHJlc29sdmVkID0gcmVzb2x2ZVN1cHBvcnRlZChjb25maWcub3MsIHN1cHBvcnRlZClcbiAgICBpZiAoIXJlc29sdmVkKSB7XG4gICAgICAgIC8vIHJlc29sdmU8VD4oY29uZmlnLCBzdXBwb3J0ZWQpIGFjdHVhbGx5IGFzc2VydHMgY29uZmlnIGlzIChUIHwgYCEke1R9YClbXSwgYnV0IHRoYXQncyBub3Qgc3VwcG9ydGVkIHlldC5cbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbnN1cHBvcnRlZCBvcGVyYXRpbmcgc3lzdGVtczogJyArIGNvbmZpZy5vcyEuam9pbignLCAnKSlcbiAgICB9XG4gICAgcmV0dXJuIHJlc29sdmVkXG59XG5cbmZ1bmN0aW9uIHJlc29sdmVTdXBwb3J0ZWQ8VCBleHRlbmRzIHN0cmluZz4oXG4gICAgY29uZmlnOiAoVCB8IGAhJHtUfWApW10gfCB1bmRlZmluZWQsXG4gICAgc3VwcG9ydGVkOiBUW10sXG4pOiBUIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIWNvbmZpZykge1xuICAgICAgICByZXR1cm4gc3VwcG9ydGVkWzBdXG4gICAgfVxuICAgIHJldHVybiBzdXBwb3J0ZWQuZmluZChzID0+IGNvbmZpZy5pbmNsdWRlcyhzKSAmJiAhY29uZmlnLmluY2x1ZGVzKGAhJHtzfWApKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVmbGVjdChwYXRoOiBzdHJpbmcpOiBQcm9taXNlPFJlZmxlY3Rpb24+IHtcbiAgICBjb25zdCBhYnNvbHV0ZVBhdGggPSByZXNvbHZlKHByb2Nlc3MuY3dkKCksIHBhdGgpXG4gICAgY29uc3QgW3BhY2thZ2VKc29uLCBhbGxGaWxlcywgcmV2aXNpb25dID0gYXdhaXQgUHJvbWlzZS5hbGwoW1xuICAgICAgICByZWFkQ29uZmlnKGFic29sdXRlUGF0aCksXG4gICAgICAgIHJlYWRkaXIoYWJzb2x1dGVQYXRoKSxcbiAgICAgICAgZ2V0SGFzaChhYnNvbHV0ZVBhdGgpLFxuICAgIF0pXG4gICAgY29uc3QgZmlsZXMgPSBhbGxGaWxlcy5maWx0ZXIoZmlsZSA9PiBleHRuYW1lKGZpbGUpID09PSAnLnRzJyAmJiAhZmlsZS5lbmRzV2l0aCgnLmQudHMnKSlcbiAgICBjb25zdCB7IGdldEhhbmRsZXJzLCBzZXRNZXRhIH0gPSAoYXdhaXQgaW1wb3J0KFxuICAgICAgICBwYXRoVG9GaWxlVVJMKGpvaW4oYWJzb2x1dGVQYXRoLCAnbm9kZV9tb2R1bGVzL0ByaWRkYW5jZS9ob3N0L2hvc3QvcmVnaXN0cnkuanMnKSkudG9TdHJpbmcoKVxuICAgICkpIGFzIHtcbiAgICAgICAgZ2V0SGFuZGxlcnM6IEhhbmRsZXJzR2V0dGVyXG4gICAgICAgIHNldE1ldGE6IChcbiAgICAgICAgICAgIHBhY2thZ2VOYW1lOiBzdHJpbmcsXG4gICAgICAgICAgICBmaWxlTmFtZTogc3RyaW5nLFxuICAgICAgICAgICAgcmV2OiBzdHJpbmcgfCB1bmRlZmluZWQsXG4gICAgICAgICAgICBjZmc6IFBhY2thZ2VDb25maWd1cmF0aW9uIHwgdW5kZWZpbmVkLFxuICAgICAgICApID0+IHZvaWRcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGZpbGUgb2YgZmlsZXMpIHtcbiAgICAgICAgY29uc3QgYmFzZSA9IGJhc2VuYW1lKGZpbGUsICcudHMnKVxuICAgICAgICBzZXRNZXRhKHBhY2thZ2VKc29uLm5hbWUsIGJhc2UsIHJldmlzaW9uLCBwYWNrYWdlSnNvbi5jb25maWcpXG4gICAgICAgIGF3YWl0IGltcG9ydChwYXRoVG9GaWxlVVJMKGpvaW4oYWJzb2x1dGVQYXRoLCBiYXNlICsgJy5qcycpKS50b1N0cmluZygpKVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAgIG5hbWU6IHBhY2thZ2VKc29uLm5hbWUsXG4gICAgICAgIHJldmlzaW9uLFxuICAgICAgICBodHRwOiBnZXRIYW5kbGVycygnaHR0cCcpLm1hcChoID0+ICh7XG4gICAgICAgICAgICBjb25maWc6IHtcbiAgICAgICAgICAgICAgICAuLi5oLmNvbmZpZyxcbiAgICAgICAgICAgICAgICBjcHVzOiBwYWNrYWdlSnNvbi5jcHUsXG4gICAgICAgICAgICAgICAgb3M6IHBhY2thZ2VKc29uLm9zLFxuICAgICAgICAgICAgICAgIG5vZGVWZXJzaW9uOiBwYWNrYWdlSnNvbi5lbmdpbmVzPy5ub2RlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIG5hbWU6IGgubWV0YT8uZmlsZU5hbWUgPz8gJycsXG4gICAgICAgICAgICBtZXRob2Q6IGgubWV0aG9kLFxuICAgICAgICAgICAgcGF0aFBhdHRlcm46IGgucGF0aFBhdHRlcm4sXG4gICAgICAgIH0pKSxcbiAgICAgICAgdGltZXJzOiBnZXRIYW5kbGVycygndGltZXInKS5tYXAoaCA9PiAoe1xuICAgICAgICAgICAgY29uZmlnOiB7XG4gICAgICAgICAgICAgICAgLi4uaC5jb25maWcsXG4gICAgICAgICAgICAgICAgY3B1czogcGFja2FnZUpzb24uY3B1LFxuICAgICAgICAgICAgICAgIG9zOiBwYWNrYWdlSnNvbi5vcyxcbiAgICAgICAgICAgICAgICBub2RlVmVyc2lvbjogcGFja2FnZUpzb24uZW5naW5lcz8ubm9kZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBuYW1lOiBoLm1ldGE/LmZpbGVOYW1lID8/ICcnLFxuICAgICAgICAgICAgc2NoZWR1bGU6IGguc2NoZWR1bGUsXG4gICAgICAgIH0pKSxcbiAgICAgICAgZXZlbnRzOiBnZXRIYW5kbGVycygnZXZlbnQnKS5tYXAoaCA9PiAoe1xuICAgICAgICAgICAgY29uZmlnOiB7XG4gICAgICAgICAgICAgICAgLi4uaC5jb25maWcsXG4gICAgICAgICAgICAgICAgY3B1czogcGFja2FnZUpzb24uY3B1LFxuICAgICAgICAgICAgICAgIG9zOiBwYWNrYWdlSnNvbi5vcyxcbiAgICAgICAgICAgICAgICBub2RlVmVyc2lvbjogcGFja2FnZUpzb24uZW5naW5lcz8ubm9kZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBuYW1lOiBoLm1ldGE/LmZpbGVOYW1lID8/ICcnLFxuICAgICAgICAgICAgdG9waWM6IGgudG9waWMsXG4gICAgICAgICAgICB0eXBlOiBoLnR5cGUsXG4gICAgICAgIH0pKSxcbiAgICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHJlYWRDb25maWcocGF0aDogc3RyaW5nKSB7XG4gICAgY29uc3QgcGFja2FnZUpzb24gPSBKU09OLnBhcnNlKGF3YWl0IHJlYWRGaWxlKGpvaW4ocGF0aCwgJ3BhY2thZ2UuanNvbicpLCAndXRmLTgnKSkgYXMge1xuICAgICAgICBuYW1lOiBzdHJpbmdcbiAgICAgICAgZW5naW5lcz86IHsgW2VuZ2luZTogc3RyaW5nXTogc3RyaW5nIH1cbiAgICAgICAgY3B1PzogQ3B1Q29uZmlnW11cbiAgICAgICAgb3M/OiBPU0NvbmZpZ1tdXG4gICAgICAgIGNvbmZpZz86IG9iamVjdFxuICAgIH1cbiAgICByZXR1cm4gcGFja2FnZUpzb25cbn1cbiJdfQ==
|
package/host/registry.d.ts
CHANGED
|
@@ -1,27 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
config: FullConfiguration | undefined;
|
|
6
|
-
method: Method;
|
|
7
|
-
pathPattern: string;
|
|
8
|
-
entry: Handler;
|
|
9
|
-
};
|
|
1
|
+
import type { EventHandler } from './event-registry.js';
|
|
2
|
+
import type { HttpHandler } from './http-registry.js';
|
|
3
|
+
import type { TimerHandler } from './timer-registry.js';
|
|
4
|
+
export * from './meta.js';
|
|
10
5
|
type HandlerTypes = {
|
|
11
6
|
http: HttpHandler;
|
|
7
|
+
timer: TimerHandler;
|
|
8
|
+
event: EventHandler;
|
|
12
9
|
};
|
|
13
|
-
export declare function
|
|
14
|
-
export
|
|
15
|
-
export declare function
|
|
16
|
-
export
|
|
17
|
-
export type FullConfiguration = PackageConfiguration & HandlerConfiguration;
|
|
18
|
-
export type Metadata = {
|
|
19
|
-
packageName: string;
|
|
20
|
-
fileName: string;
|
|
21
|
-
revision: string | undefined;
|
|
22
|
-
config?: PackageConfiguration;
|
|
23
|
-
};
|
|
24
|
-
export declare function pathToRegExp(path: string): RegExp;
|
|
25
|
-
export type Method = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
|
|
26
|
-
export declare function registerHttpHandler(method: Method, path: string, configOrHandler: HandlerConfiguration | Handler, fn?: Handler): void;
|
|
27
|
-
export {};
|
|
10
|
+
export declare function addHandler<Type extends keyof HandlerTypes>(type: Type, handler: HandlerTypes[Type]): void;
|
|
11
|
+
export type HandlersGetter = typeof getHandlers;
|
|
12
|
+
export declare function getHandlers<Type extends keyof HandlerTypes>(type: Type): HandlerTypes[Type][];
|
|
13
|
+
export declare function getHandler<Type extends keyof HandlerTypes>(type: Type): HandlerTypes[Type];
|
package/host/registry.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
export * from './meta.js';
|
|
1
2
|
const handlers = {};
|
|
2
|
-
function addHandler(type, handler) {
|
|
3
|
-
;
|
|
4
|
-
|
|
3
|
+
export function addHandler(type, handler) {
|
|
4
|
+
const h = (handlers[type] ??= []);
|
|
5
|
+
h.push(handler);
|
|
5
6
|
}
|
|
6
7
|
export function getHandlers(type) {
|
|
7
|
-
return
|
|
8
|
+
return handlers[type] ?? [];
|
|
8
9
|
}
|
|
9
10
|
export function getHandler(type) {
|
|
10
11
|
const hs = getHandlers(type);
|
|
@@ -17,55 +18,4 @@ export function getHandler(type) {
|
|
|
17
18
|
}
|
|
18
19
|
return handler;
|
|
19
20
|
}
|
|
20
|
-
|
|
21
|
-
function setHttpHost(host) {
|
|
22
|
-
httpHostRegistry = host;
|
|
23
|
-
}
|
|
24
|
-
let metadata;
|
|
25
|
-
export function setMeta(packageName, fileName, revision, config) {
|
|
26
|
-
metadata = {
|
|
27
|
-
packageName,
|
|
28
|
-
fileName,
|
|
29
|
-
revision,
|
|
30
|
-
config,
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
function getMetadata() {
|
|
34
|
-
return metadata;
|
|
35
|
-
}
|
|
36
|
-
export function pathToRegExp(path) {
|
|
37
|
-
return new RegExp(('^' +
|
|
38
|
-
path.replaceAll(/[/\\^$+?.()|[\]{}]/gu, '\\$&').replaceAll('*', '[^/\\?]+') +
|
|
39
|
-
'(\\?.*)?$').replace('[^/\\?]+[^/\\?]+(\\?.*)?$', ''), 'u');
|
|
40
|
-
}
|
|
41
|
-
function combineConfig(base, override) {
|
|
42
|
-
if (base === undefined) {
|
|
43
|
-
return override;
|
|
44
|
-
}
|
|
45
|
-
else if (override === undefined) {
|
|
46
|
-
return base;
|
|
47
|
-
}
|
|
48
|
-
return { ...base, ...override };
|
|
49
|
-
}
|
|
50
|
-
function httpHost(meta, cfg, method, path, entry) {
|
|
51
|
-
addHandler('http', {
|
|
52
|
-
meta,
|
|
53
|
-
config: combineConfig(meta?.config, cfg),
|
|
54
|
-
method,
|
|
55
|
-
pathPattern: path,
|
|
56
|
-
entry,
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
setHttpHost(httpHost);
|
|
60
|
-
export function registerHttpHandler(method, path, configOrHandler, fn) {
|
|
61
|
-
if (typeof configOrHandler === 'function') {
|
|
62
|
-
httpHostRegistry(getMetadata(), undefined, method, path, configOrHandler);
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
if (!fn) {
|
|
66
|
-
throw new Error('Please provide a handler function.');
|
|
67
|
-
}
|
|
68
|
-
httpHostRegistry(getMetadata(), configOrHandler, method, path, fn);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJyZWdpc3RyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFlQSxNQUFNLFFBQVEsR0FBaUMsRUFBRSxDQUFBO0FBRWpELFNBQVMsVUFBVSxDQUFDLElBQXdCLEVBQUUsT0FBb0I7SUFDOUQsQ0FBQztJQUFBLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtBQUMxQyxDQUFDO0FBRUQsTUFBTSxVQUFVLFdBQVcsQ0FBQyxJQUF3QjtJQUNoRCxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBa0IsQ0FBQTtBQUNsRCxDQUFDO0FBRUQsTUFBTSxVQUFVLFVBQVUsQ0FBQyxJQUF3QjtJQUMvQyxNQUFNLEVBQUUsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDNUIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQTtJQUNwQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDWCxNQUFNLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxzQkFBc0IsQ0FBQyxDQUFBO0lBQ3JELENBQUM7SUFDRCxJQUFJLEVBQUUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDbEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxZQUFZLElBQUksdUJBQXVCLENBQUMsQ0FBQTtJQUM1RCxDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUE7QUFDbEIsQ0FBQztBQVVELElBQUksZ0JBQTBCLENBQUE7QUFFOUIsU0FBUyxXQUFXLENBQUMsSUFBYztJQUMvQixnQkFBZ0IsR0FBRyxJQUFJLENBQUE7QUFDM0IsQ0FBQztBQUVELElBQUksUUFBOEIsQ0FBQTtBQUVsQyxNQUFNLFVBQVUsT0FBTyxDQUNuQixXQUFtQixFQUNuQixRQUFnQixFQUNoQixRQUE0QixFQUM1QixNQUF3QztJQUV4QyxRQUFRLEdBQUc7UUFDUCxXQUFXO1FBQ1gsUUFBUTtRQUNSLFFBQVE7UUFDUixNQUFNO0tBQ1QsQ0FBQTtBQUNMLENBQUM7QUFnQkQsU0FBUyxXQUFXO0lBQ2hCLE9BQU8sUUFBUSxDQUFBO0FBQ25CLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUFDLElBQVk7SUFDckMsT0FBTyxJQUFJLE1BQU0sQ0FDYixDQUNJLEdBQUc7UUFDSCxJQUFJLENBQUMsVUFBVSxDQUFDLHNCQUFzQixFQUFFLE1BQU0sQ0FBQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDO1FBQzNFLFdBQVcsQ0FDZCxDQUFDLE9BQU8sQ0FBQywyQkFBMkIsRUFBRSxFQUFFLENBQUMsRUFDMUMsR0FBRyxDQUNOLENBQUE7QUFDTCxDQUFDO0FBRUQsU0FBUyxhQUFhLENBQ2xCLElBQXNDLEVBQ3RDLFFBQTBDO0lBRTFDLElBQUksSUFBSSxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3JCLE9BQU8sUUFBUSxDQUFBO0lBQ25CLENBQUM7U0FBTSxJQUFJLFFBQVEsS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUNoQyxPQUFPLElBQUksQ0FBQTtJQUNmLENBQUM7SUFDRCxPQUFPLEVBQUUsR0FBRyxJQUFJLEVBQUUsR0FBRyxRQUFRLEVBQUUsQ0FBQTtBQUNuQyxDQUFDO0FBRUQsU0FBUyxRQUFRLENBQ2IsSUFBMEIsRUFDMUIsR0FBcUMsRUFDckMsTUFBYyxFQUNkLElBQVksRUFDWixLQUFjO0lBRWQsVUFBVSxDQUFDLE1BQU0sRUFBRTtRQUNmLElBQUk7UUFDSixNQUFNLEVBQUUsYUFBYSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDO1FBQ3hDLE1BQU07UUFDTixXQUFXLEVBQUUsSUFBSTtRQUNqQixLQUFLO0tBQ1IsQ0FBQyxDQUFBO0FBQ04sQ0FBQztBQUVELFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQTtBQUlyQixNQUFNLFVBQVUsbUJBQW1CLENBQy9CLE1BQWMsRUFDZCxJQUFZLEVBQ1osZUFBK0MsRUFDL0MsRUFBWTtJQUVaLElBQUksT0FBTyxlQUFlLEtBQUssVUFBVSxFQUFFLENBQUM7UUFDeEMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsZUFBZSxDQUFDLENBQUE7SUFDN0UsQ0FBQztTQUFNLENBQUM7UUFDSixJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUE7UUFDekQsQ0FBQztRQUNELGdCQUFnQixDQUFDLFdBQVcsRUFBRSxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBQ3RFLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFuZGxlckNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9jb250ZXh0LmpzJ1xuaW1wb3J0IHsgSGFuZGxlciB9IGZyb20gJy4uL2h0dHAuanMnXG5cbmV4cG9ydCB0eXBlIEh0dHBIYW5kbGVyID0ge1xuICAgIG1ldGE6IE1ldGFkYXRhIHwgdW5kZWZpbmVkXG4gICAgY29uZmlnOiBGdWxsQ29uZmlndXJhdGlvbiB8IHVuZGVmaW5lZFxuICAgIG1ldGhvZDogTWV0aG9kXG4gICAgcGF0aFBhdHRlcm46IHN0cmluZ1xuICAgIGVudHJ5OiBIYW5kbGVyXG59XG5cbnR5cGUgSGFuZGxlclR5cGVzID0ge1xuICAgIGh0dHA6IEh0dHBIYW5kbGVyXG59XG5cbmNvbnN0IGhhbmRsZXJzOiB7IFtrZXk6IHN0cmluZ106IHVua25vd25bXSB9ID0ge31cblxuZnVuY3Rpb24gYWRkSGFuZGxlcih0eXBlOiBrZXlvZiBIYW5kbGVyVHlwZXMsIGhhbmRsZXI6IEh0dHBIYW5kbGVyKSB7XG4gICAgOyhoYW5kbGVyc1t0eXBlXSA/Pz0gW10pLnB1c2goaGFuZGxlcilcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEhhbmRsZXJzKHR5cGU6IGtleW9mIEhhbmRsZXJUeXBlcykge1xuICAgIHJldHVybiAoaGFuZGxlcnNbdHlwZV0gPz8gW10pIGFzIEh0dHBIYW5kbGVyW11cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEhhbmRsZXIodHlwZToga2V5b2YgSGFuZGxlclR5cGVzKSB7XG4gICAgY29uc3QgaHMgPSBnZXRIYW5kbGVycyh0eXBlKVxuICAgIGNvbnN0IFtoYW5kbGVyXSA9IGhzXG4gICAgaWYgKCFoYW5kbGVyKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gJHt0eXBlfSBoYW5kbGVyIHJlZ2lzdGVyZWQuYClcbiAgICB9XG4gICAgaWYgKGhzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE11bHRpcGxlICR7dHlwZX0gaGFuZGxlcnMgcmVnaXN0ZXJlZC5gKVxuICAgIH1cbiAgICByZXR1cm4gaGFuZGxlclxufVxuXG50eXBlIEh0dHBIb3N0ID0gKFxuICAgIG1ldGE6IE1ldGFkYXRhIHwgdW5kZWZpbmVkLFxuICAgIGNvbmZpZzogSGFuZGxlckNvbmZpZ3VyYXRpb24gfCB1bmRlZmluZWQsXG4gICAgbWV0aG9kOiBNZXRob2QsXG4gICAgcGF0aDogc3RyaW5nLFxuICAgIGhhbmRsZXI6IEhhbmRsZXIsXG4pID0+IHZvaWRcblxubGV0IGh0dHBIb3N0UmVnaXN0cnk6IEh0dHBIb3N0XG5cbmZ1bmN0aW9uIHNldEh0dHBIb3N0KGhvc3Q6IEh0dHBIb3N0KSB7XG4gICAgaHR0cEhvc3RSZWdpc3RyeSA9IGhvc3Rcbn1cblxubGV0IG1ldGFkYXRhOiBNZXRhZGF0YSB8IHVuZGVmaW5lZFxuXG5leHBvcnQgZnVuY3Rpb24gc2V0TWV0YShcbiAgICBwYWNrYWdlTmFtZTogc3RyaW5nLFxuICAgIGZpbGVOYW1lOiBzdHJpbmcsXG4gICAgcmV2aXNpb246IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgICBjb25maWc6IFBhY2thZ2VDb25maWd1cmF0aW9uIHwgdW5kZWZpbmVkLFxuKSB7XG4gICAgbWV0YWRhdGEgPSB7XG4gICAgICAgIHBhY2thZ2VOYW1lLFxuICAgICAgICBmaWxlTmFtZSxcbiAgICAgICAgcmV2aXNpb24sXG4gICAgICAgIGNvbmZpZyxcbiAgICB9XG59XG5cbmV4cG9ydCB0eXBlIFBhY2thZ2VDb25maWd1cmF0aW9uID0gSGFuZGxlckNvbmZpZ3VyYXRpb24gJiB7XG4gICAgLy8gUGxhY2Vob2xkZXIgZm9yIHBhY2thZ2UtbGV2ZWwgY29uZmlndXJhdGlvbnNcbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1kdXBsaWNhdGUtdHlwZS1jb25zdGl0dWVudHNcbmV4cG9ydCB0eXBlIEZ1bGxDb25maWd1cmF0aW9uID0gUGFja2FnZUNvbmZpZ3VyYXRpb24gJiBIYW5kbGVyQ29uZmlndXJhdGlvblxuXG5leHBvcnQgdHlwZSBNZXRhZGF0YSA9IHtcbiAgICBwYWNrYWdlTmFtZTogc3RyaW5nXG4gICAgZmlsZU5hbWU6IHN0cmluZ1xuICAgIHJldmlzaW9uOiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgICBjb25maWc/OiBQYWNrYWdlQ29uZmlndXJhdGlvblxufVxuXG5mdW5jdGlvbiBnZXRNZXRhZGF0YSgpIHtcbiAgICByZXR1cm4gbWV0YWRhdGFcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhdGhUb1JlZ0V4cChwYXRoOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IFJlZ0V4cChcbiAgICAgICAgKFxuICAgICAgICAgICAgJ14nICtcbiAgICAgICAgICAgIHBhdGgucmVwbGFjZUFsbCgvWy9cXFxcXiQrPy4oKXxbXFxde31dL2d1LCAnXFxcXCQmJykucmVwbGFjZUFsbCgnKicsICdbXi9cXFxcP10rJykgK1xuICAgICAgICAgICAgJyhcXFxcPy4qKT8kJ1xuICAgICAgICApLnJlcGxhY2UoJ1teL1xcXFw/XStbXi9cXFxcP10rKFxcXFw/LiopPyQnLCAnJyksXG4gICAgICAgICd1JyxcbiAgICApXG59XG5cbmZ1bmN0aW9uIGNvbWJpbmVDb25maWcoXG4gICAgYmFzZTogUGFja2FnZUNvbmZpZ3VyYXRpb24gfCB1bmRlZmluZWQsXG4gICAgb3ZlcnJpZGU6IEhhbmRsZXJDb25maWd1cmF0aW9uIHwgdW5kZWZpbmVkLFxuKTogRnVsbENvbmZpZ3VyYXRpb24gfCB1bmRlZmluZWQge1xuICAgIGlmIChiYXNlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIG92ZXJyaWRlXG4gICAgfSBlbHNlIGlmIChvdmVycmlkZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiBiYXNlXG4gICAgfVxuICAgIHJldHVybiB7IC4uLmJhc2UsIC4uLm92ZXJyaWRlIH1cbn1cblxuZnVuY3Rpb24gaHR0cEhvc3QoXG4gICAgbWV0YTogTWV0YWRhdGEgfCB1bmRlZmluZWQsXG4gICAgY2ZnOiBIYW5kbGVyQ29uZmlndXJhdGlvbiB8IHVuZGVmaW5lZCxcbiAgICBtZXRob2Q6IE1ldGhvZCxcbiAgICBwYXRoOiBzdHJpbmcsXG4gICAgZW50cnk6IEhhbmRsZXIsXG4pIHtcbiAgICBhZGRIYW5kbGVyKCdodHRwJywge1xuICAgICAgICBtZXRhLFxuICAgICAgICBjb25maWc6IGNvbWJpbmVDb25maWcobWV0YT8uY29uZmlnLCBjZmcpLFxuICAgICAgICBtZXRob2QsXG4gICAgICAgIHBhdGhQYXR0ZXJuOiBwYXRoLFxuICAgICAgICBlbnRyeSxcbiAgICB9KVxufVxuXG5zZXRIdHRwSG9zdChodHRwSG9zdClcblxuZXhwb3J0IHR5cGUgTWV0aG9kID0gJ0dFVCcgfCAnUE9TVCcgfCAnUFVUJyB8ICdQQVRDSCcgfCAnREVMRVRFJ1xuXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJIdHRwSGFuZGxlcihcbiAgICBtZXRob2Q6IE1ldGhvZCxcbiAgICBwYXRoOiBzdHJpbmcsXG4gICAgY29uZmlnT3JIYW5kbGVyOiBIYW5kbGVyQ29uZmlndXJhdGlvbiB8IEhhbmRsZXIsXG4gICAgZm4/OiBIYW5kbGVyLFxuKTogdm9pZCB7XG4gICAgaWYgKHR5cGVvZiBjb25maWdPckhhbmRsZXIgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgaHR0cEhvc3RSZWdpc3RyeShnZXRNZXRhZGF0YSgpLCB1bmRlZmluZWQsIG1ldGhvZCwgcGF0aCwgY29uZmlnT3JIYW5kbGVyKVxuICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICghZm4pIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignUGxlYXNlIHByb3ZpZGUgYSBoYW5kbGVyIGZ1bmN0aW9uLicpXG4gICAgICAgIH1cbiAgICAgICAgaHR0cEhvc3RSZWdpc3RyeShnZXRNZXRhZGF0YSgpLCBjb25maWdPckhhbmRsZXIsIG1ldGhvZCwgcGF0aCwgZm4pXG4gICAgfVxufVxuIl19
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJyZWdpc3RyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxjQUFjLFdBQVcsQ0FBQTtBQVF6QixNQUFNLFFBQVEsR0FBNEQsRUFBRSxDQUFBO0FBRTVFLE1BQU0sVUFBVSxVQUFVLENBQ3RCLElBQVUsRUFDVixPQUEyQjtJQUUzQixNQUFNLENBQUMsR0FBeUIsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUE7SUFDdkQsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtBQUNuQixDQUFDO0FBSUQsTUFBTSxVQUFVLFdBQVcsQ0FBa0MsSUFBVTtJQUNuRSxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSyxFQUEyQixDQUFBO0FBQ3pELENBQUM7QUFFRCxNQUFNLFVBQVUsVUFBVSxDQUFrQyxJQUFVO0lBQ2xFLE1BQU0sRUFBRSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUM1QixNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFBO0lBQ3BCLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNYLE1BQU0sSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLHNCQUFzQixDQUFDLENBQUE7SUFDckQsQ0FBQztJQUNELElBQUksRUFBRSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLFlBQVksSUFBSSx1QkFBdUIsQ0FBQyxDQUFBO0lBQzVELENBQUM7SUFDRCxPQUFPLE9BQU8sQ0FBQTtBQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBFdmVudEhhbmRsZXIgfSBmcm9tICcuL2V2ZW50LXJlZ2lzdHJ5LmpzJ1xuaW1wb3J0IHR5cGUgeyBIdHRwSGFuZGxlciB9IGZyb20gJy4vaHR0cC1yZWdpc3RyeS5qcydcbmltcG9ydCB0eXBlIHsgVGltZXJIYW5kbGVyIH0gZnJvbSAnLi90aW1lci1yZWdpc3RyeS5qcydcblxuZXhwb3J0ICogZnJvbSAnLi9tZXRhLmpzJ1xuXG50eXBlIEhhbmRsZXJUeXBlcyA9IHtcbiAgICBodHRwOiBIdHRwSGFuZGxlclxuICAgIHRpbWVyOiBUaW1lckhhbmRsZXJcbiAgICBldmVudDogRXZlbnRIYW5kbGVyXG59XG5cbmNvbnN0IGhhbmRsZXJzOiB7IFtUeXBlIGluIGtleW9mIEhhbmRsZXJUeXBlc10/OiBIYW5kbGVyVHlwZXNbVHlwZV1bXSB9ID0ge31cblxuZXhwb3J0IGZ1bmN0aW9uIGFkZEhhbmRsZXI8VHlwZSBleHRlbmRzIGtleW9mIEhhbmRsZXJUeXBlcz4oXG4gICAgdHlwZTogVHlwZSxcbiAgICBoYW5kbGVyOiBIYW5kbGVyVHlwZXNbVHlwZV0sXG4pIHtcbiAgICBjb25zdCBoOiBIYW5kbGVyVHlwZXNbVHlwZV1bXSA9IChoYW5kbGVyc1t0eXBlXSA/Pz0gW10pXG4gICAgaC5wdXNoKGhhbmRsZXIpXG59XG5cbmV4cG9ydCB0eXBlIEhhbmRsZXJzR2V0dGVyID0gdHlwZW9mIGdldEhhbmRsZXJzXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRIYW5kbGVyczxUeXBlIGV4dGVuZHMga2V5b2YgSGFuZGxlclR5cGVzPih0eXBlOiBUeXBlKSB7XG4gICAgcmV0dXJuIGhhbmRsZXJzW3R5cGVdID8/IChbXSBhcyBIYW5kbGVyVHlwZXNbVHlwZV1bXSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEhhbmRsZXI8VHlwZSBleHRlbmRzIGtleW9mIEhhbmRsZXJUeXBlcz4odHlwZTogVHlwZSkge1xuICAgIGNvbnN0IGhzID0gZ2V0SGFuZGxlcnModHlwZSlcbiAgICBjb25zdCBbaGFuZGxlcl0gPSBoc1xuICAgIGlmICghaGFuZGxlcikge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vICR7dHlwZX0gaGFuZGxlciByZWdpc3RlcmVkLmApXG4gICAgfVxuICAgIGlmIChocy5sZW5ndGggIT09IDEpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBNdWx0aXBsZSAke3R5cGV9IGhhbmRsZXJzIHJlZ2lzdGVyZWQuYClcbiAgICB9XG4gICAgcmV0dXJuIGhhbmRsZXJcbn1cbiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Context } from '../context.js';
|
|
2
|
+
import { RootLogger } from './context.js';
|
|
3
|
+
import type { TimerHandler } from './timer-registry.js';
|
|
4
|
+
export declare function triggerTimer(log: RootLogger, context: Omit<Context, 'log'>, handler: TimerHandler, options: {
|
|
5
|
+
readonly triggerTime: Date;
|
|
6
|
+
}, success: () => Promise<unknown>): Promise<void>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { measure } from '../context.js';
|
|
2
|
+
export async function triggerTimer(log, context, handler, options, success) {
|
|
3
|
+
log = log.enrichReserved({ meta: context.meta, trigger: { time: triggerTimer } });
|
|
4
|
+
log.trace('Timer BEGIN');
|
|
5
|
+
try {
|
|
6
|
+
await measure(log, 'execution', () => handler.entry({ ...context, log }, options));
|
|
7
|
+
log.debug('Timer END');
|
|
8
|
+
await success();
|
|
9
|
+
}
|
|
10
|
+
catch (e) {
|
|
11
|
+
log.error('Timer END', e);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXIgY29weS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRpbWVyIGNvcHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFXLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUloRCxNQUFNLENBQUMsS0FBSyxVQUFVLFlBQVksQ0FDOUIsR0FBZSxFQUNmLE9BQTZCLEVBQzdCLE9BQXFCLEVBQ3JCLE9BRUMsRUFDRCxPQUErQjtJQUUvQixHQUFHLEdBQUcsR0FBRyxDQUFDLGNBQWMsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFDakYsR0FBRyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQTtJQUN4QixJQUFJLENBQUM7UUFDRCxNQUFNLE9BQU8sQ0FBQyxHQUFHLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxHQUFHLE9BQU8sRUFBRSxHQUFHLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFBO1FBQ2xGLEdBQUcsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDdEIsTUFBTSxPQUFPLEVBQUUsQ0FBQTtJQUNuQixDQUFDO0lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNULEdBQUcsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQzdCLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGV4dCwgbWVhc3VyZSB9IGZyb20gJy4uL2NvbnRleHQuanMnXG5pbXBvcnQgeyBSb290TG9nZ2VyIH0gZnJvbSAnLi9jb250ZXh0LmpzJ1xuaW1wb3J0IHR5cGUgeyBUaW1lckhhbmRsZXIgfSBmcm9tICcuL3RpbWVyLXJlZ2lzdHJ5LmpzJ1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdHJpZ2dlclRpbWVyKFxuICAgIGxvZzogUm9vdExvZ2dlcixcbiAgICBjb250ZXh0OiBPbWl0PENvbnRleHQsICdsb2cnPixcbiAgICBoYW5kbGVyOiBUaW1lckhhbmRsZXIsXG4gICAgb3B0aW9uczoge1xuICAgICAgICByZWFkb25seSB0cmlnZ2VyVGltZTogRGF0ZVxuICAgIH0sXG4gICAgc3VjY2VzczogKCkgPT4gUHJvbWlzZTx1bmtub3duPixcbik6IFByb21pc2U8dm9pZD4ge1xuICAgIGxvZyA9IGxvZy5lbnJpY2hSZXNlcnZlZCh7IG1ldGE6IGNvbnRleHQubWV0YSwgdHJpZ2dlcjogeyB0aW1lOiB0cmlnZ2VyVGltZXIgfSB9KVxuICAgIGxvZy50cmFjZSgnVGltZXIgQkVHSU4nKVxuICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IG1lYXN1cmUobG9nLCAnZXhlY3V0aW9uJywgKCkgPT4gaGFuZGxlci5lbnRyeSh7IC4uLmNvbnRleHQsIGxvZyB9LCBvcHRpb25zKSlcbiAgICAgICAgbG9nLmRlYnVnKCdUaW1lciBFTkQnKVxuICAgICAgICBhd2FpdCBzdWNjZXNzKClcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGxvZy5lcnJvcignVGltZXIgRU5EJywgZSlcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type HandlerConfiguration, type Handler as TimerFunction } from '../timer.js';
|
|
2
|
+
import { type FullConfiguration, type Metadata } from './meta.js';
|
|
3
|
+
export type TimerHandler = {
|
|
4
|
+
meta: Metadata | undefined;
|
|
5
|
+
config: FullConfiguration | undefined;
|
|
6
|
+
schedule: CronExpression;
|
|
7
|
+
entry: TimerFunction;
|
|
8
|
+
};
|
|
9
|
+
type MinuteField = string;
|
|
10
|
+
type HourField = string;
|
|
11
|
+
type DayOfMonthField = string;
|
|
12
|
+
type MonthField = string;
|
|
13
|
+
type DayOfWeekField = string;
|
|
14
|
+
export type CronExpression = `${MinuteField} ${HourField} ${DayOfMonthField} ${MonthField} ${DayOfWeekField}`;
|
|
15
|
+
export declare function registerTimerHandler(schedule: CronExpression, configOrHandler: HandlerConfiguration | TimerFunction, fn?: TimerFunction): void;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { combineConfig, getMetadata } from './meta.js';
|
|
2
|
+
import { addHandler } from './registry.js';
|
|
3
|
+
let timerHostRegistry;
|
|
4
|
+
function setTimerHost(host) {
|
|
5
|
+
timerHostRegistry = host;
|
|
6
|
+
}
|
|
7
|
+
function timerHost(meta, cfg, schedule, entry) {
|
|
8
|
+
addHandler('timer', {
|
|
9
|
+
meta,
|
|
10
|
+
config: combineConfig(meta?.config, cfg),
|
|
11
|
+
schedule,
|
|
12
|
+
entry,
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
setTimerHost(timerHost);
|
|
16
|
+
export function registerTimerHandler(schedule, configOrHandler, fn) {
|
|
17
|
+
if (typeof configOrHandler === 'function') {
|
|
18
|
+
timerHostRegistry(getMetadata(), undefined, schedule, configOrHandler);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
if (!fn) {
|
|
22
|
+
throw new Error('Please provide a handler function.');
|
|
23
|
+
}
|
|
24
|
+
timerHostRegistry(getMetadata(), configOrHandler, schedule, fn);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXItcmVnaXN0cnkgY29weS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRpbWVyLXJlZ2lzdHJ5IGNvcHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQXlDLE1BQU0sV0FBVyxDQUFBO0FBQzdGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFnQjFDLElBQUksaUJBQTRCLENBQUE7QUFFaEMsU0FBUyxZQUFZLENBQUMsSUFBZTtJQUNqQyxpQkFBaUIsR0FBRyxJQUFJLENBQUE7QUFDNUIsQ0FBQztBQVdELFNBQVMsU0FBUyxDQUNkLElBQTBCLEVBQzFCLEdBQXFDLEVBQ3JDLFFBQXdCLEVBQ3hCLEtBQW9CO0lBRXBCLFVBQVUsQ0FBQyxPQUFPLEVBQUU7UUFDaEIsSUFBSTtRQUNKLE1BQU0sRUFBRSxhQUFhLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUM7UUFDeEMsUUFBUTtRQUNSLEtBQUs7S0FDUixDQUFDLENBQUE7QUFDTixDQUFDO0FBRUQsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0FBRXZCLE1BQU0sVUFBVSxvQkFBb0IsQ0FDaEMsUUFBd0IsRUFDeEIsZUFBcUQsRUFDckQsRUFBa0I7SUFFbEIsSUFBSSxPQUFPLGVBQWUsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUN4QyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLGVBQWUsQ0FBQyxDQUFBO0lBQzFFLENBQUM7U0FBTSxDQUFDO1FBQ0osSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFBO1FBQ3pELENBQUM7UUFDRCxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBQ25FLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBIYW5kbGVyQ29uZmlndXJhdGlvbiwgdHlwZSBIYW5kbGVyIGFzIFRpbWVyRnVuY3Rpb24gfSBmcm9tICcuLi90aW1lci5qcydcbmltcG9ydCB7IGNvbWJpbmVDb25maWcsIGdldE1ldGFkYXRhLCB0eXBlIEZ1bGxDb25maWd1cmF0aW9uLCB0eXBlIE1ldGFkYXRhIH0gZnJvbSAnLi9tZXRhLmpzJ1xuaW1wb3J0IHsgYWRkSGFuZGxlciB9IGZyb20gJy4vcmVnaXN0cnkuanMnXG5cbmV4cG9ydCB0eXBlIFRpbWVySGFuZGxlciA9IHtcbiAgICBtZXRhOiBNZXRhZGF0YSB8IHVuZGVmaW5lZFxuICAgIGNvbmZpZzogRnVsbENvbmZpZ3VyYXRpb24gfCB1bmRlZmluZWRcbiAgICBzY2hlZHVsZTogQ3JvbkV4cHJlc3Npb25cbiAgICBlbnRyeTogVGltZXJGdW5jdGlvblxufVxuXG50eXBlIFRpbWVySG9zdCA9IChcbiAgICBtZXRhOiBNZXRhZGF0YSB8IHVuZGVmaW5lZCxcbiAgICBjb25maWc6IEhhbmRsZXJDb25maWd1cmF0aW9uIHwgdW5kZWZpbmVkLFxuICAgIHNjaGVkdWxlOiBDcm9uRXhwcmVzc2lvbixcbiAgICBoYW5kbGVyOiBUaW1lckZ1bmN0aW9uLFxuKSA9PiB2b2lkXG5cbmxldCB0aW1lckhvc3RSZWdpc3RyeTogVGltZXJIb3N0XG5cbmZ1bmN0aW9uIHNldFRpbWVySG9zdChob3N0OiBUaW1lckhvc3QpIHtcbiAgICB0aW1lckhvc3RSZWdpc3RyeSA9IGhvc3Rcbn1cblxudHlwZSBNaW51dGVGaWVsZCA9IHN0cmluZ1xudHlwZSBIb3VyRmllbGQgPSBzdHJpbmdcbnR5cGUgRGF5T2ZNb250aEZpZWxkID0gc3RyaW5nXG50eXBlIE1vbnRoRmllbGQgPSBzdHJpbmdcbnR5cGUgRGF5T2ZXZWVrRmllbGQgPSBzdHJpbmdcblxuZXhwb3J0IHR5cGUgQ3JvbkV4cHJlc3Npb24gPVxuICAgIGAke01pbnV0ZUZpZWxkfSAke0hvdXJGaWVsZH0gJHtEYXlPZk1vbnRoRmllbGR9ICR7TW9udGhGaWVsZH0gJHtEYXlPZldlZWtGaWVsZH1gXG5cbmZ1bmN0aW9uIHRpbWVySG9zdChcbiAgICBtZXRhOiBNZXRhZGF0YSB8IHVuZGVmaW5lZCxcbiAgICBjZmc6IEhhbmRsZXJDb25maWd1cmF0aW9uIHwgdW5kZWZpbmVkLFxuICAgIHNjaGVkdWxlOiBDcm9uRXhwcmVzc2lvbixcbiAgICBlbnRyeTogVGltZXJGdW5jdGlvbixcbikge1xuICAgIGFkZEhhbmRsZXIoJ3RpbWVyJywge1xuICAgICAgICBtZXRhLFxuICAgICAgICBjb25maWc6IGNvbWJpbmVDb25maWcobWV0YT8uY29uZmlnLCBjZmcpLFxuICAgICAgICBzY2hlZHVsZSxcbiAgICAgICAgZW50cnksXG4gICAgfSlcbn1cblxuc2V0VGltZXJIb3N0KHRpbWVySG9zdClcblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyVGltZXJIYW5kbGVyKFxuICAgIHNjaGVkdWxlOiBDcm9uRXhwcmVzc2lvbixcbiAgICBjb25maWdPckhhbmRsZXI6IEhhbmRsZXJDb25maWd1cmF0aW9uIHwgVGltZXJGdW5jdGlvbixcbiAgICBmbj86IFRpbWVyRnVuY3Rpb24sXG4pOiB2b2lkIHtcbiAgICBpZiAodHlwZW9mIGNvbmZpZ09ySGFuZGxlciA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aW1lckhvc3RSZWdpc3RyeShnZXRNZXRhZGF0YSgpLCB1bmRlZmluZWQsIHNjaGVkdWxlLCBjb25maWdPckhhbmRsZXIpXG4gICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKCFmbikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdQbGVhc2UgcHJvdmlkZSBhIGhhbmRsZXIgZnVuY3Rpb24uJylcbiAgICAgICAgfVxuICAgICAgICB0aW1lckhvc3RSZWdpc3RyeShnZXRNZXRhZGF0YSgpLCBjb25maWdPckhhbmRsZXIsIHNjaGVkdWxlLCBmbilcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type HandlerConfiguration, type Handler as TimerFunction } from '../timer.js';
|
|
2
|
+
import { type FullConfiguration, type Metadata } from './meta.js';
|
|
3
|
+
export type TimerHandler = {
|
|
4
|
+
meta: Metadata | undefined;
|
|
5
|
+
config: FullConfiguration | undefined;
|
|
6
|
+
schedule: CronExpression;
|
|
7
|
+
entry: TimerFunction;
|
|
8
|
+
};
|
|
9
|
+
type MinuteField = string;
|
|
10
|
+
type HourField = string;
|
|
11
|
+
type DayOfMonthField = string;
|
|
12
|
+
type MonthField = string;
|
|
13
|
+
type DayOfWeekField = string;
|
|
14
|
+
export type CronExpression = `${MinuteField} ${HourField} ${DayOfMonthField} ${MonthField} ${DayOfWeekField}`;
|
|
15
|
+
export declare function registerTimerHandler(schedule: CronExpression, configOrHandler: HandlerConfiguration | TimerFunction, fn?: TimerFunction): void;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { combineConfig, getMetadata } from './meta.js';
|
|
2
|
+
import { addHandler } from './registry.js';
|
|
3
|
+
let timerHostRegistry;
|
|
4
|
+
function setTimerHost(host) {
|
|
5
|
+
timerHostRegistry = host;
|
|
6
|
+
}
|
|
7
|
+
function timerHost(meta, cfg, schedule, entry) {
|
|
8
|
+
addHandler('timer', {
|
|
9
|
+
meta,
|
|
10
|
+
config: combineConfig(meta?.config, cfg),
|
|
11
|
+
schedule,
|
|
12
|
+
entry,
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
setTimerHost(timerHost);
|
|
16
|
+
export function registerTimerHandler(schedule, configOrHandler, fn) {
|
|
17
|
+
if (typeof configOrHandler === 'function') {
|
|
18
|
+
timerHostRegistry(getMetadata(), undefined, schedule, configOrHandler);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
if (!fn) {
|
|
22
|
+
throw new Error('Please provide a handler function.');
|
|
23
|
+
}
|
|
24
|
+
timerHostRegistry(getMetadata(), configOrHandler, schedule, fn);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXItcmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0aW1lci1yZWdpc3RyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBeUMsTUFBTSxXQUFXLENBQUE7QUFDN0YsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQWdCMUMsSUFBSSxpQkFBNEIsQ0FBQTtBQUVoQyxTQUFTLFlBQVksQ0FBQyxJQUFlO0lBQ2pDLGlCQUFpQixHQUFHLElBQUksQ0FBQTtBQUM1QixDQUFDO0FBV0QsU0FBUyxTQUFTLENBQ2QsSUFBMEIsRUFDMUIsR0FBcUMsRUFDckMsUUFBd0IsRUFDeEIsS0FBb0I7SUFFcEIsVUFBVSxDQUFDLE9BQU8sRUFBRTtRQUNoQixJQUFJO1FBQ0osTUFBTSxFQUFFLGFBQWEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsQ0FBQztRQUN4QyxRQUFRO1FBQ1IsS0FBSztLQUNSLENBQUMsQ0FBQTtBQUNOLENBQUM7QUFFRCxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUE7QUFFdkIsTUFBTSxVQUFVLG9CQUFvQixDQUNoQyxRQUF3QixFQUN4QixlQUFxRCxFQUNyRCxFQUFrQjtJQUVsQixJQUFJLE9BQU8sZUFBZSxLQUFLLFVBQVUsRUFBRSxDQUFDO1FBQ3hDLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsZUFBZSxDQUFDLENBQUE7SUFDMUUsQ0FBQztTQUFNLENBQUM7UUFDSixJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUE7UUFDekQsQ0FBQztRQUNELGlCQUFpQixDQUFDLFdBQVcsRUFBRSxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFDbkUsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIEhhbmRsZXJDb25maWd1cmF0aW9uLCB0eXBlIEhhbmRsZXIgYXMgVGltZXJGdW5jdGlvbiB9IGZyb20gJy4uL3RpbWVyLmpzJ1xuaW1wb3J0IHsgY29tYmluZUNvbmZpZywgZ2V0TWV0YWRhdGEsIHR5cGUgRnVsbENvbmZpZ3VyYXRpb24sIHR5cGUgTWV0YWRhdGEgfSBmcm9tICcuL21ldGEuanMnXG5pbXBvcnQgeyBhZGRIYW5kbGVyIH0gZnJvbSAnLi9yZWdpc3RyeS5qcydcblxuZXhwb3J0IHR5cGUgVGltZXJIYW5kbGVyID0ge1xuICAgIG1ldGE6IE1ldGFkYXRhIHwgdW5kZWZpbmVkXG4gICAgY29uZmlnOiBGdWxsQ29uZmlndXJhdGlvbiB8IHVuZGVmaW5lZFxuICAgIHNjaGVkdWxlOiBDcm9uRXhwcmVzc2lvblxuICAgIGVudHJ5OiBUaW1lckZ1bmN0aW9uXG59XG5cbnR5cGUgVGltZXJIb3N0ID0gKFxuICAgIG1ldGE6IE1ldGFkYXRhIHwgdW5kZWZpbmVkLFxuICAgIGNvbmZpZzogSGFuZGxlckNvbmZpZ3VyYXRpb24gfCB1bmRlZmluZWQsXG4gICAgc2NoZWR1bGU6IENyb25FeHByZXNzaW9uLFxuICAgIGhhbmRsZXI6IFRpbWVyRnVuY3Rpb24sXG4pID0+IHZvaWRcblxubGV0IHRpbWVySG9zdFJlZ2lzdHJ5OiBUaW1lckhvc3RcblxuZnVuY3Rpb24gc2V0VGltZXJIb3N0KGhvc3Q6IFRpbWVySG9zdCkge1xuICAgIHRpbWVySG9zdFJlZ2lzdHJ5ID0gaG9zdFxufVxuXG50eXBlIE1pbnV0ZUZpZWxkID0gc3RyaW5nXG50eXBlIEhvdXJGaWVsZCA9IHN0cmluZ1xudHlwZSBEYXlPZk1vbnRoRmllbGQgPSBzdHJpbmdcbnR5cGUgTW9udGhGaWVsZCA9IHN0cmluZ1xudHlwZSBEYXlPZldlZWtGaWVsZCA9IHN0cmluZ1xuXG5leHBvcnQgdHlwZSBDcm9uRXhwcmVzc2lvbiA9XG4gICAgYCR7TWludXRlRmllbGR9ICR7SG91ckZpZWxkfSAke0RheU9mTW9udGhGaWVsZH0gJHtNb250aEZpZWxkfSAke0RheU9mV2Vla0ZpZWxkfWBcblxuZnVuY3Rpb24gdGltZXJIb3N0KFxuICAgIG1ldGE6IE1ldGFkYXRhIHwgdW5kZWZpbmVkLFxuICAgIGNmZzogSGFuZGxlckNvbmZpZ3VyYXRpb24gfCB1bmRlZmluZWQsXG4gICAgc2NoZWR1bGU6IENyb25FeHByZXNzaW9uLFxuICAgIGVudHJ5OiBUaW1lckZ1bmN0aW9uLFxuKSB7XG4gICAgYWRkSGFuZGxlcigndGltZXInLCB7XG4gICAgICAgIG1ldGEsXG4gICAgICAgIGNvbmZpZzogY29tYmluZUNvbmZpZyhtZXRhPy5jb25maWcsIGNmZyksXG4gICAgICAgIHNjaGVkdWxlLFxuICAgICAgICBlbnRyeSxcbiAgICB9KVxufVxuXG5zZXRUaW1lckhvc3QodGltZXJIb3N0KVxuXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJUaW1lckhhbmRsZXIoXG4gICAgc2NoZWR1bGU6IENyb25FeHByZXNzaW9uLFxuICAgIGNvbmZpZ09ySGFuZGxlcjogSGFuZGxlckNvbmZpZ3VyYXRpb24gfCBUaW1lckZ1bmN0aW9uLFxuICAgIGZuPzogVGltZXJGdW5jdGlvbixcbik6IHZvaWQge1xuICAgIGlmICh0eXBlb2YgY29uZmlnT3JIYW5kbGVyID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHRpbWVySG9zdFJlZ2lzdHJ5KGdldE1ldGFkYXRhKCksIHVuZGVmaW5lZCwgc2NoZWR1bGUsIGNvbmZpZ09ySGFuZGxlcilcbiAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoIWZuKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1BsZWFzZSBwcm92aWRlIGEgaGFuZGxlciBmdW5jdGlvbi4nKVxuICAgICAgICB9XG4gICAgICAgIHRpbWVySG9zdFJlZ2lzdHJ5KGdldE1ldGFkYXRhKCksIGNvbmZpZ09ySGFuZGxlciwgc2NoZWR1bGUsIGZuKVxuICAgIH1cbn1cbiJdfQ==
|
package/host/timer.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Context } from '../context.js';
|
|
2
|
+
import { RootLogger } from './context.js';
|
|
3
|
+
import type { TimerHandler } from './timer-registry.js';
|
|
4
|
+
export declare function triggerTimer(log: RootLogger, context: Omit<Context, 'log'>, handler: TimerHandler, options: {
|
|
5
|
+
readonly triggerTime: Date;
|
|
6
|
+
}, success: () => Promise<unknown>): Promise<void>;
|
package/host/timer.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { measure } from '../context.js';
|
|
2
|
+
export async function triggerTimer(log, context, handler, options, success) {
|
|
3
|
+
log = log.enrichReserved({ meta: context.meta, trigger: { time: triggerTimer } });
|
|
4
|
+
log.trace('Timer BEGIN');
|
|
5
|
+
try {
|
|
6
|
+
await measure(log, 'execution', () => handler.entry({ ...context, log }, options));
|
|
7
|
+
log.debug('Timer END');
|
|
8
|
+
await success();
|
|
9
|
+
}
|
|
10
|
+
catch (e) {
|
|
11
|
+
log.error('Timer END', e);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0aW1lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVcsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBSWhELE1BQU0sQ0FBQyxLQUFLLFVBQVUsWUFBWSxDQUM5QixHQUFlLEVBQ2YsT0FBNkIsRUFDN0IsT0FBcUIsRUFDckIsT0FFQyxFQUNELE9BQStCO0lBRS9CLEdBQUcsR0FBRyxHQUFHLENBQUMsY0FBYyxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxFQUFFLENBQUMsQ0FBQTtJQUNqRixHQUFHLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFBO0lBQ3hCLElBQUksQ0FBQztRQUNELE1BQU0sT0FBTyxDQUFDLEdBQUcsRUFBRSxXQUFXLEVBQUUsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLEdBQUcsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUE7UUFDbEYsR0FBRyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUN0QixNQUFNLE9BQU8sRUFBRSxDQUFBO0lBQ25CLENBQUM7SUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ1QsR0FBRyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDN0IsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250ZXh0LCBtZWFzdXJlIH0gZnJvbSAnLi4vY29udGV4dC5qcydcbmltcG9ydCB7IFJvb3RMb2dnZXIgfSBmcm9tICcuL2NvbnRleHQuanMnXG5pbXBvcnQgdHlwZSB7IFRpbWVySGFuZGxlciB9IGZyb20gJy4vdGltZXItcmVnaXN0cnkuanMnXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB0cmlnZ2VyVGltZXIoXG4gICAgbG9nOiBSb290TG9nZ2VyLFxuICAgIGNvbnRleHQ6IE9taXQ8Q29udGV4dCwgJ2xvZyc+LFxuICAgIGhhbmRsZXI6IFRpbWVySGFuZGxlcixcbiAgICBvcHRpb25zOiB7XG4gICAgICAgIHJlYWRvbmx5IHRyaWdnZXJUaW1lOiBEYXRlXG4gICAgfSxcbiAgICBzdWNjZXNzOiAoKSA9PiBQcm9taXNlPHVua25vd24+LFxuKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgbG9nID0gbG9nLmVucmljaFJlc2VydmVkKHsgbWV0YTogY29udGV4dC5tZXRhLCB0cmlnZ2VyOiB7IHRpbWU6IHRyaWdnZXJUaW1lciB9IH0pXG4gICAgbG9nLnRyYWNlKCdUaW1lciBCRUdJTicpXG4gICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgbWVhc3VyZShsb2csICdleGVjdXRpb24nLCAoKSA9PiBoYW5kbGVyLmVudHJ5KHsgLi4uY29udGV4dCwgbG9nIH0sIG9wdGlvbnMpKVxuICAgICAgICBsb2cuZGVidWcoJ1RpbWVyIEVORCcpXG4gICAgICAgIGF3YWl0IHN1Y2Nlc3MoKVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgbG9nLmVycm9yKCdUaW1lciBFTkQnLCBlKVxuICAgIH1cbn1cbiJdfQ==
|
package/http.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { registerHttpHandler } from './host/registry.js';
|
|
1
|
+
import { registerHttpHandler } from './host/http-registry.js';
|
|
2
2
|
export * from './context.js';
|
|
3
3
|
export function get(path, configOrHandler, fn) {
|
|
4
4
|
registerHttpHandler('GET', path, configOrHandler, fn);
|
|
@@ -15,4 +15,4 @@ export function patch(path, configOrHandler, fn) {
|
|
|
15
15
|
export function del(path, configOrHandler, fn) {
|
|
16
16
|
registerHttpHandler('DELETE', path, configOrHandler, fn);
|
|
17
17
|
}
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImh0dHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFFeEQsY0FBYyxjQUFjLENBQUE7QUErTTVCLE1BQU0sVUFBVSxHQUFHLENBQ2YsSUFBWSxFQUNaLGVBQW1ELEVBQ25ELEVBQVk7SUFFWixtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQTtBQUN6RCxDQUFDO0FBR0QsTUFBTSxVQUFVLElBQUksQ0FDaEIsSUFBWSxFQUNaLGVBQW1ELEVBQ25ELEVBQVk7SUFFWixtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQTtBQUMxRCxDQUFDO0FBR0QsTUFBTSxVQUFVLEdBQUcsQ0FDZixJQUFZLEVBQ1osZUFBbUQsRUFDbkQsRUFBWTtJQUVaLG1CQUFtQixDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFBO0FBQ3pELENBQUM7QUFHRCxNQUFNLFVBQVUsS0FBSyxDQUNqQixJQUFZLEVBQ1osZUFBbUQsRUFDbkQsRUFBWTtJQUVaLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFBO0FBQzNELENBQUM7QUFHRCxNQUFNLFVBQVUsR0FBRyxDQUNmLElBQVksRUFDWixlQUFtRCxFQUNuRCxFQUFZO0lBRVosbUJBQW1CLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUE7QUFDNUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRleHQsIEhhbmRsZXJDb25maWd1cmF0aW9uLCBKc29uIH0gZnJvbSAnLi9jb250ZXh0LmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJIdHRwSGFuZGxlciB9IGZyb20gJy4vaG9zdC9yZWdpc3RyeS5qcydcblxuZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0LmpzJ1xuXG5leHBvcnQgdHlwZSBSZXNwb25zZUhlYWRlcnMgPSB7XG4gICAgW2tleTogc3RyaW5nXTogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIEZ1bGxSZXN1bHQgPSB7XG4gICAgaGVhZGVycz86IFJlc3BvbnNlSGVhZGVyc1xuICAgIHN0YXR1cz86IG51bWJlclxuICAgIGJvZHk/OiB1bmtub3duXG59XG5cbmV4cG9ydCB0eXBlIFJlc3VsdCA9IHZvaWQgfCBzdHJpbmcgfCBGdWxsUmVzdWx0XG5cbmV4cG9ydCB0eXBlIEh0dHBSZXF1ZXN0ID0ge1xuICAgIHJlYWRvbmx5IHJhd1VybDogc3RyaW5nXG4gICAgcmVhZG9ubHkgdXJsOiBQYXJzZWRVcmxcbiAgICByZWFkb25seSBoZWFkZXJzOiBSZWFkb25seTxSZXNwb25zZUhlYWRlcnM+XG4gICAgcmVhZG9ubHkgYm9keT86IEpzb24gfCBzdHJpbmdcbn1cblxudHlwZSBHb25lID0gJ0dvbmUnIHwgdW5kZWZpbmVkXG5cbmV4cG9ydCB0eXBlIFBhcnNlZFVybCA9IHtcbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBmcmFnbWVudCBwb3J0aW9uIG9mIHRoZSBVUkwuXG4gICAgICpcbiAgICAgKiBgYGBqc1xuICAgICAqIGNvbnN0IG15VVJMID0gbmV3IFVSTCgnaHR0cHM6Ly9leGFtcGxlLm9yZy9mb28jYmFyJyk7XG4gICAgICogY29uc29sZS5sb2cobXlVUkwuaGFzaCk7XG4gICAgICogLy8gUHJpbnRzICNiYXJcbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICByZWFkb25seSBoYXNoOiBzdHJpbmdcbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBob3N0IHBvcnRpb24gb2YgdGhlIFVSTC5cbiAgICAgKlxuICAgICAqIGBgYGpzXG4gICAgICogY29uc3QgbXlVUkwgPSBuZXcgVVJMKCdodHRwczovL2V4YW1wbGUub3JnOjgxL2ZvbycpO1xuICAgICAqIGNvbnNvbGUubG9nKG15VVJMLmhvc3QpO1xuICAgICAqIC8vIFByaW50cyBleGFtcGxlLm9yZzo4MVxuICAgICAqL1xuICAgIHJlYWRvbmx5IGhvc3Q6IHN0cmluZ1xuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGhvc3QgbmFtZSBwb3J0aW9uIG9mIHRoZSBVUkwuIFRoZSBrZXkgZGlmZmVyZW5jZSBiZXR3ZWVuYHVybC5ob3N0YCBhbmQgYHVybC5ob3N0bmFtZWAgaXMgdGhhdCBgdXJsLmhvc3RuYW1lYCBkb2VzIF9ub3RfIGluY2x1ZGUgdGhlXG4gICAgICogcG9ydC5cbiAgICAgKlxuICAgICAqIGBgYGpzXG4gICAgICogY29uc3QgbXlVUkwgPSBuZXcgVVJMKCdodHRwczovL2V4YW1wbGUub3JnOjgxL2ZvbycpO1xuICAgICAqIGNvbnNvbGUubG9nKG15VVJMLmhvc3RuYW1lKTtcbiAgICAgKiAvLyBQcmludHMgZXhhbXBsZS5vcmdcbiAgICAgKi9cbiAgICByZWFkb25seSBob3N0bmFtZTogc3RyaW5nXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgc2VyaWFsaXplZCBVUkwuXG4gICAgICpcbiAgICAgKiBgYGBqc1xuICAgICAqIGNvbnN0IG15VVJMID0gbmV3IFVSTCgnaHR0cHM6Ly9leGFtcGxlLm9yZy9mb28nKTtcbiAgICAgKiBjb25zb2xlLmxvZyhteVVSTC5ocmVmKTtcbiAgICAgKiAvLyBQcmludHMgaHR0cHM6Ly9leGFtcGxlLm9yZy9mb29cbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICByZWFkb25seSBocmVmOiBzdHJpbmdcbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBzZXJpYWxpemF0aW9uIG9mIHRoZSBVUkwncyBvcmlnaW4uXG4gICAgICpcbiAgICAgKiBgYGBqc1xuICAgICAqIGNvbnN0IG15VVJMID0gbmV3IFVSTCgnaHR0cHM6Ly9leGFtcGxlLm9yZy9mb28vYmFyP2JheicpO1xuICAgICAqIGNvbnNvbGUubG9nKG15VVJMLm9yaWdpbik7XG4gICAgICogLy8gUHJpbnRzIGh0dHBzOi8vZXhhbXBsZS5vcmdcbiAgICAgKiBgYGBcbiAgICAgKlxuICAgICAqIGBgYGpzXG4gICAgICogY29uc3QgaWRuVVJMID0gbmV3IFVSTCgnaHR0cHM6Ly/muKzoqaYnKTtcbiAgICAgKiBjb25zb2xlLmxvZyhpZG5VUkwub3JpZ2luKTtcbiAgICAgKiAvLyBQcmludHMgaHR0cHM6Ly94bi0tZzZ3MjUxZFxuICAgICAqXG4gICAgICogY29uc29sZS5sb2coaWRuVVJMLmhvc3RuYW1lKTtcbiAgICAgKiAvLyBQcmludHMgeG4tLWc2dzI1MWRcbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICByZWFkb25seSBvcmlnaW46IHN0cmluZ1xuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIHBhc3N3b3JkIHBvcnRpb24gb2YgdGhlIFVSTC5cbiAgICAgKlxuICAgICAqIGBgYGpzXG4gICAgICogY29uc3QgbXlVUkwgPSBuZXcgVVJMKCdodHRwczovL2FiYzp4eXpAZXhhbXBsZS5jb20nKTtcbiAgICAgKiBjb25zb2xlLmxvZyhteVVSTC5wYXNzd29yZCk7XG4gICAgICogLy8gUHJpbnRzIHh5elxuICAgICAqXG4gICAgICogbXlVUkwucGFzc3dvcmQgPSAnMTIzJztcbiAgICAgKiBjb25zb2xlLmxvZyhteVVSTC5ocmVmKTtcbiAgICAgKiAvLyBQcmludHMgaHR0cHM6Ly9hYmM6MTIzQGV4YW1wbGUuY29tL1xuICAgICAqIGBgYFxuICAgICAqL1xuICAgIHJlYWRvbmx5IHBhc3N3b3JkOiBzdHJpbmdcbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBwYXRoIHBvcnRpb24gb2YgdGhlIFVSTC5cbiAgICAgKlxuICAgICAqIGBgYGpzXG4gICAgICogY29uc3QgbXlVUkwgPSBuZXcgVVJMKCdodHRwczovL2V4YW1wbGUub3JnL2FiYy94eXo/MTIzJyk7XG4gICAgICogY29uc29sZS5sb2cobXlVUkwucGF0aG5hbWUpO1xuICAgICAqIC8vIFByaW50cyAvYWJjL3h5elxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIHJlYWRvbmx5IHBhdGhuYW1lOiBzdHJpbmdcbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBwb3J0IHBvcnRpb24gb2YgdGhlIFVSTC5cbiAgICAgKlxuICAgICAqIFRoZSBwb3J0IHZhbHVlIG1heSBiZSBhIG51bWJlciBvciBhIHN0cmluZyBjb250YWluaW5nIGEgbnVtYmVyIGluIHRoZSByYW5nZSBgMGAgdG8gYDY1NTM1YCAoaW5jbHVzaXZlKS4gU2V0dGluZyB0aGUgdmFsdWUgdG8gdGhlIGRlZmF1bHQgcG9ydCBvZiB0aGUgYFVSTGAgb2JqZWN0cyBnaXZlbiBgcHJvdG9jb2xgIHdpbGxcbiAgICAgKiByZXN1bHQgaW4gdGhlIGBwb3J0YCB2YWx1ZSBiZWNvbWluZ1xuICAgICAqIHRoZSBlbXB0eSBzdHJpbmcgKGAnJ2ApLlxuICAgICAqXG4gICAgICogVGhlIHBvcnQgdmFsdWUgY2FuIGJlIGFuIGVtcHR5IHN0cmluZyBpbiB3aGljaCBjYXNlIHRoZSBwb3J0IGRlcGVuZHMgb25cbiAgICAgKiB0aGUgcHJvdG9jb2wvc2NoZW1lLlxuICAgICAqXG4gICAgICogSWYgdGhhdCBzdHJpbmcgaXMgaW52YWxpZCBidXQgaXQgYmVnaW5zIHdpdGggYSBudW1iZXIsIHRoZSBsZWFkaW5nIG51bWJlciBpc1xuICAgICAqIGFzc2lnbmVkIHRvIGBwb3J0YC5cbiAgICAgKiBJZiB0aGUgbnVtYmVyIGxpZXMgb3V0c2lkZSB0aGUgcmFuZ2UgZGVub3RlZCBhYm92ZSwgaXQgaXMgaWdub3JlZC5cbiAgICAgKlxuICAgICAqIGBgYGpzXG4gICAgICogY29uc3QgbXlVUkwgPSBuZXcgVVJMKCdodHRwczovL2V4YW1wbGUub3JnOjg4ODgnKTtcbiAgICAgKiBjb25zb2xlLmxvZyhteVVSTC5wb3J0KTtcbiAgICAgKiAvLyBQcmludHMgODg4OFxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIHJlYWRvbmx5IHBvcnQ6IHN0cmluZ1xuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIHByb3RvY29sIHBvcnRpb24gb2YgdGhlIFVSTC5cbiAgICAgKlxuICAgICAqIGBgYGpzXG4gICAgICogY29uc3QgbXlVUkwgPSBuZXcgVVJMKCdodHRwczovL2V4YW1wbGUub3JnJyk7XG4gICAgICogY29uc29sZS5sb2cobXlVUkwucHJvdG9jb2wpO1xuICAgICAqIC8vIFByaW50cyBodHRwczpcbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICByZWFkb25seSBwcm90b2NvbDogc3RyaW5nXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgc2VyaWFsaXplZCBxdWVyeSBwb3J0aW9uIG9mIHRoZSBVUkwuXG4gICAgICpcbiAgICAgKiBgYGBqc1xuICAgICAqIGNvbnN0IG15VVJMID0gbmV3IFVSTCgnaHR0cHM6Ly9leGFtcGxlLm9yZy9hYmM/MTIzJyk7XG4gICAgICogY29uc29sZS5sb2cobXlVUkwuc2VhcmNoKTtcbiAgICAgKiAvLyBQcmludHMgPzEyM1xuICAgICAqIGBgYFxuICAgICAqXG4gICAgICogQW55IGludmFsaWQgVVJMIGNoYXJhY3RlcnMgYXBwZWFyaW5nIGluIHRoZSB2YWx1ZSBhc3NpZ25lZCB0aGUgYHNlYXJjaGBwcm9wZXJ0eSB3aWxsIGJlIGBwZXJjZW50LWVuY29kZWRgLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHNlYXJjaDogc3RyaW5nXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgYFVSTFNlYXJjaFBhcmFtc2Agb2JqZWN0IHJlcHJlc2VudGluZyB0aGUgcXVlcnkgcGFyYW1ldGVycyBvZiB0aGVcbiAgICAgKiBVUkwuXG4gICAgICpcbiAgICAgKiBgYGBqc1xuICAgICAqIGNvbnN0IG15VVJMID0gbmV3IFVSTCgnaHR0cHM6Ly9leGFtcGxlLm9yZy9hYmM/Zm9vPX5iYXInKTtcbiAgICAgKlxuICAgICAqIGNvbnNvbGUubG9nKG15VVJMLnNlYXJjaCk7ICAvLyBwcmludHMgP2Zvbz1+YmFyXG4gICAgICogYGBgXG4gICAgICovXG4gICAgcmVhZG9ubHkgc2VhcmNoUGFyYW1zOiBVUkxTZWFyY2hQYXJhbXNcbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSB1c2VybmFtZSBwb3J0aW9uIG9mIHRoZSBVUkwuXG4gICAgICpcbiAgICAgKiBgYGBqc1xuICAgICAqIGNvbnN0IG15VVJMID0gbmV3IFVSTCgnaHR0cHM6Ly9hYmM6eHl6QGV4YW1wbGUuY29tJyk7XG4gICAgICogY29uc29sZS5sb2cobXlVUkwudXNlcm5hbWUpO1xuICAgICAqIC8vIFByaW50cyBhYmNcbiAgICAgKiBgYGBcbiAgICAgKlxuICAgICAqIEFueSBpbnZhbGlkIFVSTCBjaGFyYWN0ZXJzIGFwcGVhcmluZyBpbiB0aGUgdmFsdWUgYXNzaWduZWQgdGhlIGB1c2VybmFtZWAgcHJvcGVydHkgd2lsbCBiZSBgcGVyY2VudC1lbmNvZGVkYC5cbiAgICAgKi9cbiAgICByZWFkb25seSB1c2VybmFtZTogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIGEgc3RlcCBvZiB0aGUgcGF0aCBwb3J0aW9uIG9mIHRoZSBVUkwuXG4gICAgICpcbiAgICAgKiBgYGBqc1xuICAgICAqIGNvbnN0IG15VVJMID0gbmV3IFVSTCgnaHR0cHM6Ly9leGFtcGxlLm9yZy9hYmMveHl6PzEyMycpO1xuICAgICAqIGNvbnNvbGUubG9nKG15VVJMLnBhdGhTdGVwQXQoMCkpO1xuICAgICAqIC8vIFByaW50cyBhYmNcbiAgICAgKiBjb25zb2xlLmxvZyhteVVSTC5wYXRoU3RlcEF0KDEpKTtcbiAgICAgKiAvLyBQcmludHMgeHl6XG4gICAgICogYGBgXG4gICAgICovXG4gICAgcGF0aFN0ZXBBdDogKGluZGV4OiBudW1iZXIpID0+IHN0cmluZ1xuXG4gICAgLyoqXG4gICAgICogR29uZSwgdXNlIHNlYXJjaFBhcmFtcyBpbnN0ZWFkLlxuICAgICAqL1xuICAgIHF1ZXJ5PzogR29uZVxuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICB0b0pTT046ICgpID0+IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24gPSBIYW5kbGVyQ29uZmlndXJhdGlvbiAmIHtcbiAgICAvKipcbiAgICAgKiBBIHN0cmluZyBpZGVudGlmeWluZyB3aGljaCBkb21haW5zIGNhbiBhY2Nlc3MgdGhlIGVuZHBvaW50IGNyb3NzLW9yaWdpbi5cbiAgICAgKiBAZGVmYXVsdCB1bmRlZmluZWRcbiAgICAgKi9cbiAgICByZWFkb25seSBjb3JzPzogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIEhhbmRsZXIgPSAoY29udGV4dDogQ29udGV4dCwgcmVxdWVzdDogSHR0cFJlcXVlc3QpID0+IFByb21pc2U8UmVzdWx0PiB8IFJlc3VsdFxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0KHBhdGg6IHN0cmluZywgZm46IEhhbmRsZXIpOiB2b2lkXG5leHBvcnQgZnVuY3Rpb24gZ2V0KHBhdGg6IHN0cmluZywgY29uZmlnOiBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24sIGZuOiBIYW5kbGVyKTogdm9pZFxuZXhwb3J0IGZ1bmN0aW9uIGdldChcbiAgICBwYXRoOiBzdHJpbmcsXG4gICAgY29uZmlnT3JIYW5kbGVyOiBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24gfCBIYW5kbGVyLFxuICAgIGZuPzogSGFuZGxlcixcbik6IHZvaWQge1xuICAgIHJlZ2lzdGVySHR0cEhhbmRsZXIoJ0dFVCcsIHBhdGgsIGNvbmZpZ09ySGFuZGxlciwgZm4pXG59XG5leHBvcnQgZnVuY3Rpb24gcG9zdChwYXRoOiBzdHJpbmcsIGZuOiBIYW5kbGVyKTogdm9pZFxuZXhwb3J0IGZ1bmN0aW9uIHBvc3QocGF0aDogc3RyaW5nLCBjb25maWc6IEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvbiwgZm46IEhhbmRsZXIpOiB2b2lkXG5leHBvcnQgZnVuY3Rpb24gcG9zdChcbiAgICBwYXRoOiBzdHJpbmcsXG4gICAgY29uZmlnT3JIYW5kbGVyOiBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24gfCBIYW5kbGVyLFxuICAgIGZuPzogSGFuZGxlcixcbik6IHZvaWQge1xuICAgIHJlZ2lzdGVySHR0cEhhbmRsZXIoJ1BPU1QnLCBwYXRoLCBjb25maWdPckhhbmRsZXIsIGZuKVxufVxuZXhwb3J0IGZ1bmN0aW9uIHB1dChwYXRoOiBzdHJpbmcsIGZuOiBIYW5kbGVyKTogdm9pZFxuZXhwb3J0IGZ1bmN0aW9uIHB1dChwYXRoOiBzdHJpbmcsIGNvbmZpZzogSHR0cEhhbmRsZXJDb25maWd1cmF0aW9uLCBmbjogSGFuZGxlcik6IHZvaWRcbmV4cG9ydCBmdW5jdGlvbiBwdXQoXG4gICAgcGF0aDogc3RyaW5nLFxuICAgIGNvbmZpZ09ySGFuZGxlcjogSHR0cEhhbmRsZXJDb25maWd1cmF0aW9uIHwgSGFuZGxlcixcbiAgICBmbj86IEhhbmRsZXIsXG4pOiB2b2lkIHtcbiAgICByZWdpc3Rlckh0dHBIYW5kbGVyKCdQVVQnLCBwYXRoLCBjb25maWdPckhhbmRsZXIsIGZuKVxufVxuZXhwb3J0IGZ1bmN0aW9uIHBhdGNoKHBhdGg6IHN0cmluZywgZm46IEhhbmRsZXIpOiB2b2lkXG5leHBvcnQgZnVuY3Rpb24gcGF0Y2gocGF0aDogc3RyaW5nLCBjb25maWc6IEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvbiwgZm46IEhhbmRsZXIpOiB2b2lkXG5leHBvcnQgZnVuY3Rpb24gcGF0Y2goXG4gICAgcGF0aDogc3RyaW5nLFxuICAgIGNvbmZpZ09ySGFuZGxlcjogSHR0cEhhbmRsZXJDb25maWd1cmF0aW9uIHwgSGFuZGxlcixcbiAgICBmbj86IEhhbmRsZXIsXG4pOiB2b2lkIHtcbiAgICByZWdpc3Rlckh0dHBIYW5kbGVyKCdQQVRDSCcsIHBhdGgsIGNvbmZpZ09ySGFuZGxlciwgZm4pXG59XG5leHBvcnQgZnVuY3Rpb24gZGVsKHBhdGg6IHN0cmluZywgZm46IEhhbmRsZXIpOiB2b2lkXG5leHBvcnQgZnVuY3Rpb24gZGVsKHBhdGg6IHN0cmluZywgY29uZmlnOiBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24sIGZuOiBIYW5kbGVyKTogdm9pZFxuZXhwb3J0IGZ1bmN0aW9uIGRlbChcbiAgICBwYXRoOiBzdHJpbmcsXG4gICAgY29uZmlnT3JIYW5kbGVyOiBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24gfCBIYW5kbGVyLFxuICAgIGZuPzogSGFuZGxlcixcbik6IHZvaWQge1xuICAgIHJlZ2lzdGVySHR0cEhhbmRsZXIoJ0RFTEVURScsIHBhdGgsIGNvbmZpZ09ySGFuZGxlciwgZm4pXG59XG4iXX0=
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImh0dHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFFN0QsY0FBYyxjQUFjLENBQUE7QUErTTVCLE1BQU0sVUFBVSxHQUFHLENBQ2YsSUFBWSxFQUNaLGVBQW1ELEVBQ25ELEVBQVk7SUFFWixtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQTtBQUN6RCxDQUFDO0FBR0QsTUFBTSxVQUFVLElBQUksQ0FDaEIsSUFBWSxFQUNaLGVBQW1ELEVBQ25ELEVBQVk7SUFFWixtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQTtBQUMxRCxDQUFDO0FBR0QsTUFBTSxVQUFVLEdBQUcsQ0FDZixJQUFZLEVBQ1osZUFBbUQsRUFDbkQsRUFBWTtJQUVaLG1CQUFtQixDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFBO0FBQ3pELENBQUM7QUFHRCxNQUFNLFVBQVUsS0FBSyxDQUNqQixJQUFZLEVBQ1osZUFBbUQsRUFDbkQsRUFBWTtJQUVaLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFBO0FBQzNELENBQUM7QUFHRCxNQUFNLFVBQVUsR0FBRyxDQUNmLElBQVksRUFDWixlQUFtRCxFQUNuRCxFQUFZO0lBRVosbUJBQW1CLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUE7QUFDNUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRleHQsIEhhbmRsZXJDb25maWd1cmF0aW9uLCBKc29uIH0gZnJvbSAnLi9jb250ZXh0LmpzJ1xuaW1wb3J0IHsgcmVnaXN0ZXJIdHRwSGFuZGxlciB9IGZyb20gJy4vaG9zdC9odHRwLXJlZ2lzdHJ5LmpzJ1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQuanMnXG5cbmV4cG9ydCB0eXBlIFJlc3BvbnNlSGVhZGVycyA9IHtcbiAgICBba2V5OiBzdHJpbmddOiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgRnVsbFJlc3VsdCA9IHtcbiAgICBoZWFkZXJzPzogUmVzcG9uc2VIZWFkZXJzXG4gICAgc3RhdHVzPzogbnVtYmVyXG4gICAgYm9keT86IHVua25vd25cbn1cblxuZXhwb3J0IHR5cGUgUmVzdWx0ID0gdm9pZCB8IHN0cmluZyB8IEZ1bGxSZXN1bHRcblxuZXhwb3J0IHR5cGUgSHR0cFJlcXVlc3QgPSB7XG4gICAgcmVhZG9ubHkgcmF3VXJsOiBzdHJpbmdcbiAgICByZWFkb25seSB1cmw6IFBhcnNlZFVybFxuICAgIHJlYWRvbmx5IGhlYWRlcnM6IFJlYWRvbmx5PFJlc3BvbnNlSGVhZGVycz5cbiAgICByZWFkb25seSBib2R5PzogSnNvbiB8IHN0cmluZ1xufVxuXG50eXBlIEdvbmUgPSAnR29uZScgfCB1bmRlZmluZWRcblxuZXhwb3J0IHR5cGUgUGFyc2VkVXJsID0ge1xuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGZyYWdtZW50IHBvcnRpb24gb2YgdGhlIFVSTC5cbiAgICAgKlxuICAgICAqIGBgYGpzXG4gICAgICogY29uc3QgbXlVUkwgPSBuZXcgVVJMKCdodHRwczovL2V4YW1wbGUub3JnL2ZvbyNiYXInKTtcbiAgICAgKiBjb25zb2xlLmxvZyhteVVSTC5oYXNoKTtcbiAgICAgKiAvLyBQcmludHMgI2JhclxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIHJlYWRvbmx5IGhhc2g6IHN0cmluZ1xuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGhvc3QgcG9ydGlvbiBvZiB0aGUgVVJMLlxuICAgICAqXG4gICAgICogYGBganNcbiAgICAgKiBjb25zdCBteVVSTCA9IG5ldyBVUkwoJ2h0dHBzOi8vZXhhbXBsZS5vcmc6ODEvZm9vJyk7XG4gICAgICogY29uc29sZS5sb2cobXlVUkwuaG9zdCk7XG4gICAgICogLy8gUHJpbnRzIGV4YW1wbGUub3JnOjgxXG4gICAgICovXG4gICAgcmVhZG9ubHkgaG9zdDogc3RyaW5nXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgaG9zdCBuYW1lIHBvcnRpb24gb2YgdGhlIFVSTC4gVGhlIGtleSBkaWZmZXJlbmNlIGJldHdlZW5gdXJsLmhvc3RgIGFuZCBgdXJsLmhvc3RuYW1lYCBpcyB0aGF0IGB1cmwuaG9zdG5hbWVgIGRvZXMgX25vdF8gaW5jbHVkZSB0aGVcbiAgICAgKiBwb3J0LlxuICAgICAqXG4gICAgICogYGBganNcbiAgICAgKiBjb25zdCBteVVSTCA9IG5ldyBVUkwoJ2h0dHBzOi8vZXhhbXBsZS5vcmc6ODEvZm9vJyk7XG4gICAgICogY29uc29sZS5sb2cobXlVUkwuaG9zdG5hbWUpO1xuICAgICAqIC8vIFByaW50cyBleGFtcGxlLm9yZ1xuICAgICAqL1xuICAgIHJlYWRvbmx5IGhvc3RuYW1lOiBzdHJpbmdcbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBzZXJpYWxpemVkIFVSTC5cbiAgICAgKlxuICAgICAqIGBgYGpzXG4gICAgICogY29uc3QgbXlVUkwgPSBuZXcgVVJMKCdodHRwczovL2V4YW1wbGUub3JnL2ZvbycpO1xuICAgICAqIGNvbnNvbGUubG9nKG15VVJMLmhyZWYpO1xuICAgICAqIC8vIFByaW50cyBodHRwczovL2V4YW1wbGUub3JnL2Zvb1xuICAgICAqIGBgYFxuICAgICAqL1xuICAgIHJlYWRvbmx5IGhyZWY6IHN0cmluZ1xuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIHNlcmlhbGl6YXRpb24gb2YgdGhlIFVSTCdzIG9yaWdpbi5cbiAgICAgKlxuICAgICAqIGBgYGpzXG4gICAgICogY29uc3QgbXlVUkwgPSBuZXcgVVJMKCdodHRwczovL2V4YW1wbGUub3JnL2Zvby9iYXI/YmF6Jyk7XG4gICAgICogY29uc29sZS5sb2cobXlVUkwub3JpZ2luKTtcbiAgICAgKiAvLyBQcmludHMgaHR0cHM6Ly9leGFtcGxlLm9yZ1xuICAgICAqIGBgYFxuICAgICAqXG4gICAgICogYGBganNcbiAgICAgKiBjb25zdCBpZG5VUkwgPSBuZXcgVVJMKCdodHRwczovL+a4rOippicpO1xuICAgICAqIGNvbnNvbGUubG9nKGlkblVSTC5vcmlnaW4pO1xuICAgICAqIC8vIFByaW50cyBodHRwczovL3huLS1nNncyNTFkXG4gICAgICpcbiAgICAgKiBjb25zb2xlLmxvZyhpZG5VUkwuaG9zdG5hbWUpO1xuICAgICAqIC8vIFByaW50cyB4bi0tZzZ3MjUxZFxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIHJlYWRvbmx5IG9yaWdpbjogc3RyaW5nXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgcGFzc3dvcmQgcG9ydGlvbiBvZiB0aGUgVVJMLlxuICAgICAqXG4gICAgICogYGBganNcbiAgICAgKiBjb25zdCBteVVSTCA9IG5ldyBVUkwoJ2h0dHBzOi8vYWJjOnh5ekBleGFtcGxlLmNvbScpO1xuICAgICAqIGNvbnNvbGUubG9nKG15VVJMLnBhc3N3b3JkKTtcbiAgICAgKiAvLyBQcmludHMgeHl6XG4gICAgICpcbiAgICAgKiBteVVSTC5wYXNzd29yZCA9ICcxMjMnO1xuICAgICAqIGNvbnNvbGUubG9nKG15VVJMLmhyZWYpO1xuICAgICAqIC8vIFByaW50cyBodHRwczovL2FiYzoxMjNAZXhhbXBsZS5jb20vXG4gICAgICogYGBgXG4gICAgICovXG4gICAgcmVhZG9ubHkgcGFzc3dvcmQ6IHN0cmluZ1xuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIHBhdGggcG9ydGlvbiBvZiB0aGUgVVJMLlxuICAgICAqXG4gICAgICogYGBganNcbiAgICAgKiBjb25zdCBteVVSTCA9IG5ldyBVUkwoJ2h0dHBzOi8vZXhhbXBsZS5vcmcvYWJjL3h5ej8xMjMnKTtcbiAgICAgKiBjb25zb2xlLmxvZyhteVVSTC5wYXRobmFtZSk7XG4gICAgICogLy8gUHJpbnRzIC9hYmMveHl6XG4gICAgICogYGBgXG4gICAgICovXG4gICAgcmVhZG9ubHkgcGF0aG5hbWU6IHN0cmluZ1xuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIHBvcnQgcG9ydGlvbiBvZiB0aGUgVVJMLlxuICAgICAqXG4gICAgICogVGhlIHBvcnQgdmFsdWUgbWF5IGJlIGEgbnVtYmVyIG9yIGEgc3RyaW5nIGNvbnRhaW5pbmcgYSBudW1iZXIgaW4gdGhlIHJhbmdlIGAwYCB0byBgNjU1MzVgIChpbmNsdXNpdmUpLiBTZXR0aW5nIHRoZSB2YWx1ZSB0byB0aGUgZGVmYXVsdCBwb3J0IG9mIHRoZSBgVVJMYCBvYmplY3RzIGdpdmVuIGBwcm90b2NvbGAgd2lsbFxuICAgICAqIHJlc3VsdCBpbiB0aGUgYHBvcnRgIHZhbHVlIGJlY29taW5nXG4gICAgICogdGhlIGVtcHR5IHN0cmluZyAoYCcnYCkuXG4gICAgICpcbiAgICAgKiBUaGUgcG9ydCB2YWx1ZSBjYW4gYmUgYW4gZW1wdHkgc3RyaW5nIGluIHdoaWNoIGNhc2UgdGhlIHBvcnQgZGVwZW5kcyBvblxuICAgICAqIHRoZSBwcm90b2NvbC9zY2hlbWUuXG4gICAgICpcbiAgICAgKiBJZiB0aGF0IHN0cmluZyBpcyBpbnZhbGlkIGJ1dCBpdCBiZWdpbnMgd2l0aCBhIG51bWJlciwgdGhlIGxlYWRpbmcgbnVtYmVyIGlzXG4gICAgICogYXNzaWduZWQgdG8gYHBvcnRgLlxuICAgICAqIElmIHRoZSBudW1iZXIgbGllcyBvdXRzaWRlIHRoZSByYW5nZSBkZW5vdGVkIGFib3ZlLCBpdCBpcyBpZ25vcmVkLlxuICAgICAqXG4gICAgICogYGBganNcbiAgICAgKiBjb25zdCBteVVSTCA9IG5ldyBVUkwoJ2h0dHBzOi8vZXhhbXBsZS5vcmc6ODg4OCcpO1xuICAgICAqIGNvbnNvbGUubG9nKG15VVJMLnBvcnQpO1xuICAgICAqIC8vIFByaW50cyA4ODg4XG4gICAgICogYGBgXG4gICAgICovXG4gICAgcmVhZG9ubHkgcG9ydDogc3RyaW5nXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgcHJvdG9jb2wgcG9ydGlvbiBvZiB0aGUgVVJMLlxuICAgICAqXG4gICAgICogYGBganNcbiAgICAgKiBjb25zdCBteVVSTCA9IG5ldyBVUkwoJ2h0dHBzOi8vZXhhbXBsZS5vcmcnKTtcbiAgICAgKiBjb25zb2xlLmxvZyhteVVSTC5wcm90b2NvbCk7XG4gICAgICogLy8gUHJpbnRzIGh0dHBzOlxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIHJlYWRvbmx5IHByb3RvY29sOiBzdHJpbmdcbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBzZXJpYWxpemVkIHF1ZXJ5IHBvcnRpb24gb2YgdGhlIFVSTC5cbiAgICAgKlxuICAgICAqIGBgYGpzXG4gICAgICogY29uc3QgbXlVUkwgPSBuZXcgVVJMKCdodHRwczovL2V4YW1wbGUub3JnL2FiYz8xMjMnKTtcbiAgICAgKiBjb25zb2xlLmxvZyhteVVSTC5zZWFyY2gpO1xuICAgICAqIC8vIFByaW50cyA/MTIzXG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBBbnkgaW52YWxpZCBVUkwgY2hhcmFjdGVycyBhcHBlYXJpbmcgaW4gdGhlIHZhbHVlIGFzc2lnbmVkIHRoZSBgc2VhcmNoYHByb3BlcnR5IHdpbGwgYmUgYHBlcmNlbnQtZW5jb2RlZGAuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc2VhcmNoOiBzdHJpbmdcbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBgVVJMU2VhcmNoUGFyYW1zYCBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBxdWVyeSBwYXJhbWV0ZXJzIG9mIHRoZVxuICAgICAqIFVSTC5cbiAgICAgKlxuICAgICAqIGBgYGpzXG4gICAgICogY29uc3QgbXlVUkwgPSBuZXcgVVJMKCdodHRwczovL2V4YW1wbGUub3JnL2FiYz9mb289fmJhcicpO1xuICAgICAqXG4gICAgICogY29uc29sZS5sb2cobXlVUkwuc2VhcmNoKTsgIC8vIHByaW50cyA/Zm9vPX5iYXJcbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICByZWFkb25seSBzZWFyY2hQYXJhbXM6IFVSTFNlYXJjaFBhcmFtc1xuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIHVzZXJuYW1lIHBvcnRpb24gb2YgdGhlIFVSTC5cbiAgICAgKlxuICAgICAqIGBgYGpzXG4gICAgICogY29uc3QgbXlVUkwgPSBuZXcgVVJMKCdodHRwczovL2FiYzp4eXpAZXhhbXBsZS5jb20nKTtcbiAgICAgKiBjb25zb2xlLmxvZyhteVVSTC51c2VybmFtZSk7XG4gICAgICogLy8gUHJpbnRzIGFiY1xuICAgICAqIGBgYFxuICAgICAqXG4gICAgICogQW55IGludmFsaWQgVVJMIGNoYXJhY3RlcnMgYXBwZWFyaW5nIGluIHRoZSB2YWx1ZSBhc3NpZ25lZCB0aGUgYHVzZXJuYW1lYCBwcm9wZXJ0eSB3aWxsIGJlIGBwZXJjZW50LWVuY29kZWRgLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHVzZXJuYW1lOiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIEdldHMgYSBzdGVwIG9mIHRoZSBwYXRoIHBvcnRpb24gb2YgdGhlIFVSTC5cbiAgICAgKlxuICAgICAqIGBgYGpzXG4gICAgICogY29uc3QgbXlVUkwgPSBuZXcgVVJMKCdodHRwczovL2V4YW1wbGUub3JnL2FiYy94eXo/MTIzJyk7XG4gICAgICogY29uc29sZS5sb2cobXlVUkwucGF0aFN0ZXBBdCgwKSk7XG4gICAgICogLy8gUHJpbnRzIGFiY1xuICAgICAqIGNvbnNvbGUubG9nKG15VVJMLnBhdGhTdGVwQXQoMSkpO1xuICAgICAqIC8vIFByaW50cyB4eXpcbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICBwYXRoU3RlcEF0OiAoaW5kZXg6IG51bWJlcikgPT4gc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBHb25lLCB1c2Ugc2VhcmNoUGFyYW1zIGluc3RlYWQuXG4gICAgICovXG4gICAgcXVlcnk/OiBHb25lXG5cbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIHRvSlNPTjogKCkgPT4gc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvbiA9IEhhbmRsZXJDb25maWd1cmF0aW9uICYge1xuICAgIC8qKlxuICAgICAqIEEgc3RyaW5nIGlkZW50aWZ5aW5nIHdoaWNoIGRvbWFpbnMgY2FuIGFjY2VzcyB0aGUgZW5kcG9pbnQgY3Jvc3Mtb3JpZ2luLlxuICAgICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgICAqL1xuICAgIHJlYWRvbmx5IGNvcnM/OiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgSGFuZGxlciA9IChjb250ZXh0OiBDb250ZXh0LCByZXF1ZXN0OiBIdHRwUmVxdWVzdCkgPT4gUHJvbWlzZTxSZXN1bHQ+IHwgUmVzdWx0XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXQocGF0aDogc3RyaW5nLCBmbjogSGFuZGxlcik6IHZvaWRcbmV4cG9ydCBmdW5jdGlvbiBnZXQocGF0aDogc3RyaW5nLCBjb25maWc6IEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvbiwgZm46IEhhbmRsZXIpOiB2b2lkXG5leHBvcnQgZnVuY3Rpb24gZ2V0KFxuICAgIHBhdGg6IHN0cmluZyxcbiAgICBjb25maWdPckhhbmRsZXI6IEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvbiB8IEhhbmRsZXIsXG4gICAgZm4/OiBIYW5kbGVyLFxuKTogdm9pZCB7XG4gICAgcmVnaXN0ZXJIdHRwSGFuZGxlcignR0VUJywgcGF0aCwgY29uZmlnT3JIYW5kbGVyLCBmbilcbn1cbmV4cG9ydCBmdW5jdGlvbiBwb3N0KHBhdGg6IHN0cmluZywgZm46IEhhbmRsZXIpOiB2b2lkXG5leHBvcnQgZnVuY3Rpb24gcG9zdChwYXRoOiBzdHJpbmcsIGNvbmZpZzogSHR0cEhhbmRsZXJDb25maWd1cmF0aW9uLCBmbjogSGFuZGxlcik6IHZvaWRcbmV4cG9ydCBmdW5jdGlvbiBwb3N0KFxuICAgIHBhdGg6IHN0cmluZyxcbiAgICBjb25maWdPckhhbmRsZXI6IEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvbiB8IEhhbmRsZXIsXG4gICAgZm4/OiBIYW5kbGVyLFxuKTogdm9pZCB7XG4gICAgcmVnaXN0ZXJIdHRwSGFuZGxlcignUE9TVCcsIHBhdGgsIGNvbmZpZ09ySGFuZGxlciwgZm4pXG59XG5leHBvcnQgZnVuY3Rpb24gcHV0KHBhdGg6IHN0cmluZywgZm46IEhhbmRsZXIpOiB2b2lkXG5leHBvcnQgZnVuY3Rpb24gcHV0KHBhdGg6IHN0cmluZywgY29uZmlnOiBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24sIGZuOiBIYW5kbGVyKTogdm9pZFxuZXhwb3J0IGZ1bmN0aW9uIHB1dChcbiAgICBwYXRoOiBzdHJpbmcsXG4gICAgY29uZmlnT3JIYW5kbGVyOiBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24gfCBIYW5kbGVyLFxuICAgIGZuPzogSGFuZGxlcixcbik6IHZvaWQge1xuICAgIHJlZ2lzdGVySHR0cEhhbmRsZXIoJ1BVVCcsIHBhdGgsIGNvbmZpZ09ySGFuZGxlciwgZm4pXG59XG5leHBvcnQgZnVuY3Rpb24gcGF0Y2gocGF0aDogc3RyaW5nLCBmbjogSGFuZGxlcik6IHZvaWRcbmV4cG9ydCBmdW5jdGlvbiBwYXRjaChwYXRoOiBzdHJpbmcsIGNvbmZpZzogSHR0cEhhbmRsZXJDb25maWd1cmF0aW9uLCBmbjogSGFuZGxlcik6IHZvaWRcbmV4cG9ydCBmdW5jdGlvbiBwYXRjaChcbiAgICBwYXRoOiBzdHJpbmcsXG4gICAgY29uZmlnT3JIYW5kbGVyOiBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24gfCBIYW5kbGVyLFxuICAgIGZuPzogSGFuZGxlcixcbik6IHZvaWQge1xuICAgIHJlZ2lzdGVySHR0cEhhbmRsZXIoJ1BBVENIJywgcGF0aCwgY29uZmlnT3JIYW5kbGVyLCBmbilcbn1cbmV4cG9ydCBmdW5jdGlvbiBkZWwocGF0aDogc3RyaW5nLCBmbjogSGFuZGxlcik6IHZvaWRcbmV4cG9ydCBmdW5jdGlvbiBkZWwocGF0aDogc3RyaW5nLCBjb25maWc6IEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvbiwgZm46IEhhbmRsZXIpOiB2b2lkXG5leHBvcnQgZnVuY3Rpb24gZGVsKFxuICAgIHBhdGg6IHN0cmluZyxcbiAgICBjb25maWdPckhhbmRsZXI6IEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvbiB8IEhhbmRsZXIsXG4gICAgZm4/OiBIYW5kbGVyLFxuKTogdm9pZCB7XG4gICAgcmVnaXN0ZXJIdHRwSGFuZGxlcignREVMRVRFJywgcGF0aCwgY29uZmlnT3JIYW5kbGVyLCBmbilcbn1cbiJdfQ==
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@riddance/host",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"engines": {
|
|
7
|
-
"node": ">=20"
|
|
7
|
+
"node": ">=20.17"
|
|
8
8
|
},
|
|
9
9
|
"keywords": [
|
|
10
10
|
"riddance",
|
|
@@ -22,11 +22,18 @@
|
|
|
22
22
|
"exports": {
|
|
23
23
|
"./lib/context": "./context.js",
|
|
24
24
|
"./lib/http": "./http.js",
|
|
25
|
+
"./lib/timer": "./timer.js",
|
|
26
|
+
"./lib/event": "./event.js",
|
|
25
27
|
"./registry": "./host/registry.js",
|
|
26
28
|
"./reflect": "./host/reflect.js",
|
|
27
29
|
"./logging": "./host/logging.js",
|
|
28
30
|
"./context": "./host/context.js",
|
|
29
|
-
"./http": "./host/http.js"
|
|
31
|
+
"./http": "./host/http.js",
|
|
32
|
+
"./http-registry": "./host/http-registry.js",
|
|
33
|
+
"./timer": "./host/timer.js",
|
|
34
|
+
"./timer-registry": "./host/timer-registry.js",
|
|
35
|
+
"./event": "./host/event.js",
|
|
36
|
+
"./event-registry": "./host/event-registry.js"
|
|
30
37
|
},
|
|
31
38
|
"scripts": {
|
|
32
39
|
"start": "riddance-watch",
|
|
@@ -35,7 +42,7 @@
|
|
|
35
42
|
"postpublish": "riddance-sync"
|
|
36
43
|
},
|
|
37
44
|
"devDependencies": {
|
|
38
|
-
"@riddance/env": "0.
|
|
45
|
+
"@riddance/env": "0.8.2"
|
|
39
46
|
},
|
|
40
|
-
"gitHead": "
|
|
47
|
+
"gitHead": "b98a163640245f194f790f86f4d1a0f5a8026d37"
|
|
41
48
|
}
|
package/timer.d.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Context, HandlerConfiguration } from './context.js';
|
|
2
|
+
import { type CronExpression } from './host/timer-registry.js';
|
|
3
|
+
export * from './context.js';
|
|
4
|
+
export type Timer = {
|
|
5
|
+
readonly triggerTime: Date;
|
|
6
|
+
};
|
|
7
|
+
export type TimerHandlerConfiguration = HandlerConfiguration & {
|
|
8
|
+
/**
|
|
9
|
+
* The TZ identifier identifying which time zone to the schedule is in, UTC if undefined.
|
|
10
|
+
* @default undefined
|
|
11
|
+
* @example 'America/Los_Angeles'
|
|
12
|
+
*/
|
|
13
|
+
readonly timezone?: string;
|
|
14
|
+
};
|
|
15
|
+
export type Handler = (context: Context, when: Timer) => Promise<void> | void;
|
|
16
|
+
export declare function setInterval(schedule: CronExpression, fn: Handler): void;
|
|
17
|
+
export declare function setInterval(schedule: CronExpression, config: HandlerConfiguration, fn: Handler): void;
|
package/timer.js
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { registerTimerHandler } from './host/timer-registry.js';
|
|
2
|
+
export * from './context.js';
|
|
3
|
+
export function setInterval(schedule, configOrHandler, fn) {
|
|
4
|
+
registerTimerHandler(schedule, configOrHandler, fn);
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0aW1lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsb0JBQW9CLEVBQXVCLE1BQU0sMEJBQTBCLENBQUE7QUFFcEYsY0FBYyxjQUFjLENBQUE7QUF1QjVCLE1BQU0sVUFBVSxXQUFXLENBQ3ZCLFFBQXdCLEVBQ3hCLGVBQStDLEVBQy9DLEVBQVk7SUFFWixvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFBO0FBQ3ZELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250ZXh0LCBIYW5kbGVyQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vY29udGV4dC5qcydcbmltcG9ydCB7IHJlZ2lzdGVyVGltZXJIYW5kbGVyLCB0eXBlIENyb25FeHByZXNzaW9uIH0gZnJvbSAnLi9ob3N0L3RpbWVyLXJlZ2lzdHJ5LmpzJ1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQuanMnXG5cbmV4cG9ydCB0eXBlIFRpbWVyID0ge1xuICAgIHJlYWRvbmx5IHRyaWdnZXJUaW1lOiBEYXRlXG59XG5cbmV4cG9ydCB0eXBlIFRpbWVySGFuZGxlckNvbmZpZ3VyYXRpb24gPSBIYW5kbGVyQ29uZmlndXJhdGlvbiAmIHtcbiAgICAvKipcbiAgICAgKiBUaGUgVFogaWRlbnRpZmllciBpZGVudGlmeWluZyB3aGljaCB0aW1lIHpvbmUgdG8gdGhlIHNjaGVkdWxlIGlzIGluLCBVVEMgaWYgdW5kZWZpbmVkLlxuICAgICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgICAqIEBleGFtcGxlICdBbWVyaWNhL0xvc19BbmdlbGVzJ1xuICAgICAqL1xuICAgIHJlYWRvbmx5IHRpbWV6b25lPzogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIEhhbmRsZXIgPSAoY29udGV4dDogQ29udGV4dCwgd2hlbjogVGltZXIpID0+IFByb21pc2U8dm9pZD4gfCB2b2lkXG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRJbnRlcnZhbChzY2hlZHVsZTogQ3JvbkV4cHJlc3Npb24sIGZuOiBIYW5kbGVyKTogdm9pZFxuZXhwb3J0IGZ1bmN0aW9uIHNldEludGVydmFsKFxuICAgIHNjaGVkdWxlOiBDcm9uRXhwcmVzc2lvbixcbiAgICBjb25maWc6IEhhbmRsZXJDb25maWd1cmF0aW9uLFxuICAgIGZuOiBIYW5kbGVyLFxuKTogdm9pZFxuZXhwb3J0IGZ1bmN0aW9uIHNldEludGVydmFsKFxuICAgIHNjaGVkdWxlOiBDcm9uRXhwcmVzc2lvbixcbiAgICBjb25maWdPckhhbmRsZXI6IEhhbmRsZXJDb25maWd1cmF0aW9uIHwgSGFuZGxlcixcbiAgICBmbj86IEhhbmRsZXIsXG4pOiB2b2lkIHtcbiAgICByZWdpc3RlclRpbWVySGFuZGxlcihzY2hlZHVsZSwgY29uZmlnT3JIYW5kbGVyLCBmbilcbn1cbiJdfQ==
|
package/host/events.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { Json, Logger } from '../context.js';
|
|
2
|
-
import { EventMetadata, EventTransport } from './context.js';
|
|
3
|
-
export declare class EventCollector {
|
|
4
|
-
#private;
|
|
5
|
-
constructor(transport: EventTransport, logger: Logger, ids: {
|
|
6
|
-
operationId?: string;
|
|
7
|
-
clientId?: string;
|
|
8
|
-
clientIp?: string;
|
|
9
|
-
userAgent?: string;
|
|
10
|
-
}, timeout: number, signal: AbortSignal);
|
|
11
|
-
emit(meta: EventMetadata, data?: Json): void;
|
|
12
|
-
flush(): Promise<void>;
|
|
13
|
-
}
|