@riddance/host 0.0.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 +19 -0
- package/context.d.ts +93 -0
- package/context.js +70 -0
- package/host/context.d.ts +51 -0
- package/host/context.js +104 -0
- package/host/emitter.d.ts +13 -0
- package/host/emitter.js +81 -0
- package/host/http.d.ts +30 -0
- package/host/http.js +205 -0
- package/host/logging.d.ts +4 -0
- package/host/logging.js +205 -0
- package/host/reflect.d.ts +24 -0
- package/host/reflect.js +57 -0
- package/host/registry.d.ts +26 -0
- package/host/registry.js +61 -0
- package/http.d.ts +39 -0
- package/http.js +18 -0
- package/package.json +38 -0
package/host/registry.js
ADDED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
const handlers = {};
|
|
2
|
+
function addHandler(type, handler) {
|
|
3
|
+
;
|
|
4
|
+
(handlers[type] ??= []).push(handler);
|
|
5
|
+
}
|
|
6
|
+
export function getHandlers(type) {
|
|
7
|
+
return (handlers[type] ?? []);
|
|
8
|
+
}
|
|
9
|
+
let httpHostRegistry;
|
|
10
|
+
function setHttpHost(host) {
|
|
11
|
+
httpHostRegistry = host;
|
|
12
|
+
}
|
|
13
|
+
let metadata;
|
|
14
|
+
export function setMeta(packageName, fileName, revision, config) {
|
|
15
|
+
metadata = {
|
|
16
|
+
packageName,
|
|
17
|
+
fileName,
|
|
18
|
+
revision,
|
|
19
|
+
config,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
function getMetadata() {
|
|
23
|
+
return metadata;
|
|
24
|
+
}
|
|
25
|
+
function pathToRegExp(path) {
|
|
26
|
+
return new RegExp(('^' +
|
|
27
|
+
path.replace(/[/\\^$+?.()|[\]{}]/gu, '\\$&').replaceAll('*', '[^/\\?]+') +
|
|
28
|
+
'(\\?.*)?$').replace('[^/\\?]+[^/\\?]+(\\?.*)?$', ''), 'u');
|
|
29
|
+
}
|
|
30
|
+
function combineConfig(base, override) {
|
|
31
|
+
if (base === undefined) {
|
|
32
|
+
return override;
|
|
33
|
+
}
|
|
34
|
+
else if (override === undefined) {
|
|
35
|
+
return base;
|
|
36
|
+
}
|
|
37
|
+
return { ...base, ...override };
|
|
38
|
+
}
|
|
39
|
+
function httpHost(meta, cfg, method, path, entry) {
|
|
40
|
+
addHandler('http', {
|
|
41
|
+
meta,
|
|
42
|
+
config: combineConfig(meta?.config, cfg),
|
|
43
|
+
method,
|
|
44
|
+
pathPattern: path,
|
|
45
|
+
pathRegExp: pathToRegExp(path),
|
|
46
|
+
entry,
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
setHttpHost(httpHost);
|
|
50
|
+
export function registerHttpHandler(method, path, configOrHandler, fn) {
|
|
51
|
+
if (typeof configOrHandler === 'function') {
|
|
52
|
+
httpHostRegistry(getMetadata(), undefined, method, path, configOrHandler);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
if (!fn) {
|
|
56
|
+
throw new Error('Please provide a handler function.');
|
|
57
|
+
}
|
|
58
|
+
httpHostRegistry(getMetadata(), configOrHandler, method, path, fn);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJyZWdpc3RyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQkEsTUFBTSxRQUFRLEdBQWlDLEVBQUUsQ0FBQTtBQUVqRCxTQUFTLFVBQVUsQ0FBQyxJQUF3QixFQUFFLE9BQW9CO0lBQzlELENBQUM7SUFBQSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7QUFDMUMsQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBd0I7SUFDaEQsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQWtCLENBQUE7QUFDbEQsQ0FBQztBQVVELElBQUksZ0JBQTBCLENBQUE7QUFFOUIsU0FBUyxXQUFXLENBQUMsSUFBYztJQUMvQixnQkFBZ0IsR0FBRyxJQUFJLENBQUE7QUFDM0IsQ0FBQztBQUVELElBQUksUUFBOEIsQ0FBQTtBQUVsQyxNQUFNLFVBQVUsT0FBTyxDQUNuQixXQUFtQixFQUNuQixRQUFnQixFQUNoQixRQUE0QixFQUM1QixNQUF3QztJQUV4QyxRQUFRLEdBQUc7UUFDUCxXQUFXO1FBQ1gsUUFBUTtRQUNSLFFBQVE7UUFDUixNQUFNO0tBQ1QsQ0FBQTtBQUNMLENBQUM7QUFjRCxTQUFTLFdBQVc7SUFDaEIsT0FBTyxRQUFRLENBQUE7QUFDbkIsQ0FBQztBQUVELFNBQVMsWUFBWSxDQUFDLElBQVk7SUFDOUIsT0FBTyxJQUFJLE1BQU0sQ0FDYixDQUNJLEdBQUc7UUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLHNCQUFzQixFQUFFLE1BQU0sQ0FBQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDO1FBQ3hFLFdBQVcsQ0FDZCxDQUFDLE9BQU8sQ0FBQywyQkFBMkIsRUFBRSxFQUFFLENBQUMsRUFDMUMsR0FBRyxDQUNOLENBQUE7QUFDTCxDQUFDO0FBRUQsU0FBUyxhQUFhLENBQ2xCLElBQXNDLEVBQ3RDLFFBQTBDO0lBRTFDLElBQUksSUFBSSxLQUFLLFNBQVMsRUFBRTtRQUNwQixPQUFPLFFBQVEsQ0FBQTtLQUNsQjtTQUFNLElBQUksUUFBUSxLQUFLLFNBQVMsRUFBRTtRQUMvQixPQUFPLElBQUksQ0FBQTtLQUNkO0lBQ0QsT0FBTyxFQUFFLEdBQUcsSUFBSSxFQUFFLEdBQUcsUUFBUSxFQUFFLENBQUE7QUFDbkMsQ0FBQztBQUVELFNBQVMsUUFBUSxDQUNiLElBQTBCLEVBQzFCLEdBQXFDLEVBQ3JDLE1BQWMsRUFDZCxJQUFZLEVBQ1osS0FBYztJQUVkLFVBQVUsQ0FBQyxNQUFNLEVBQUU7UUFDZixJQUFJO1FBQ0osTUFBTSxFQUFFLGFBQWEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsQ0FBQztRQUN4QyxNQUFNO1FBQ04sV0FBVyxFQUFFLElBQUk7UUFDakIsVUFBVSxFQUFFLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFDOUIsS0FBSztLQUNSLENBQUMsQ0FBQTtBQUNOLENBQUM7QUFFRCxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUE7QUFJckIsTUFBTSxVQUFVLG1CQUFtQixDQUMvQixNQUFjLEVBQ2QsSUFBWSxFQUNaLGVBQStDLEVBQy9DLEVBQVk7SUFFWixJQUFJLE9BQU8sZUFBZSxLQUFLLFVBQVUsRUFBRTtRQUN2QyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxlQUFlLENBQUMsQ0FBQTtLQUM1RTtTQUFNO1FBQ0gsSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQTtTQUN4RDtRQUNELGdCQUFnQixDQUFDLFdBQVcsRUFBRSxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFBO0tBQ3JFO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhhbmRsZXJDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vY29udGV4dC5qcydcclxuaW1wb3J0IHsgSGFuZGxlciB9IGZyb20gJy4uL2h0dHAuanMnXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEh0dHBIYW5kbGVyIHtcclxuICAgIG1ldGE6IE1ldGFkYXRhIHwgdW5kZWZpbmVkXHJcbiAgICBjb25maWc6IChQYWNrYWdlQ29uZmlndXJhdGlvbiAmIEhhbmRsZXJDb25maWd1cmF0aW9uKSB8IHVuZGVmaW5lZFxyXG4gICAgbWV0aG9kOiBNZXRob2RcclxuICAgIHBhdGhQYXR0ZXJuOiBzdHJpbmdcclxuICAgIHBhdGhSZWdFeHA6IFJlZ0V4cFxyXG4gICAgZW50cnk6IEhhbmRsZXJcclxufVxyXG5cclxuaW50ZXJmYWNlIEhhbmRsZXJUeXBlcyB7XHJcbiAgICBodHRwOiBIdHRwSGFuZGxlclxyXG59XHJcblxyXG5jb25zdCBoYW5kbGVyczogeyBba2V5OiBzdHJpbmddOiB1bmtub3duW10gfSA9IHt9XHJcblxyXG5mdW5jdGlvbiBhZGRIYW5kbGVyKHR5cGU6IGtleW9mIEhhbmRsZXJUeXBlcywgaGFuZGxlcjogSHR0cEhhbmRsZXIpIHtcclxuICAgIDsoaGFuZGxlcnNbdHlwZV0gPz89IFtdKS5wdXNoKGhhbmRsZXIpXHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRIYW5kbGVycyh0eXBlOiBrZXlvZiBIYW5kbGVyVHlwZXMpIHtcclxuICAgIHJldHVybiAoaGFuZGxlcnNbdHlwZV0gPz8gW10pIGFzIEh0dHBIYW5kbGVyW11cclxufVxyXG5cclxudHlwZSBIdHRwSG9zdCA9IChcclxuICAgIG1ldGE6IE1ldGFkYXRhIHwgdW5kZWZpbmVkLFxyXG4gICAgY29uZmlnOiBIYW5kbGVyQ29uZmlndXJhdGlvbiB8IHVuZGVmaW5lZCxcclxuICAgIG1ldGhvZDogTWV0aG9kLFxyXG4gICAgcGF0aDogc3RyaW5nLFxyXG4gICAgaGFuZGxlcjogSGFuZGxlcixcclxuKSA9PiB2b2lkXHJcblxyXG5sZXQgaHR0cEhvc3RSZWdpc3RyeTogSHR0cEhvc3RcclxuXHJcbmZ1bmN0aW9uIHNldEh0dHBIb3N0KGhvc3Q6IEh0dHBIb3N0KSB7XHJcbiAgICBodHRwSG9zdFJlZ2lzdHJ5ID0gaG9zdFxyXG59XHJcblxyXG5sZXQgbWV0YWRhdGE6IE1ldGFkYXRhIHwgdW5kZWZpbmVkXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2V0TWV0YShcclxuICAgIHBhY2thZ2VOYW1lOiBzdHJpbmcsXHJcbiAgICBmaWxlTmFtZTogc3RyaW5nLFxyXG4gICAgcmV2aXNpb246IHN0cmluZyB8IHVuZGVmaW5lZCxcclxuICAgIGNvbmZpZzogUGFja2FnZUNvbmZpZ3VyYXRpb24gfCB1bmRlZmluZWQsXHJcbikge1xyXG4gICAgbWV0YWRhdGEgPSB7XHJcbiAgICAgICAgcGFja2FnZU5hbWUsXHJcbiAgICAgICAgZmlsZU5hbWUsXHJcbiAgICAgICAgcmV2aXNpb24sXHJcbiAgICAgICAgY29uZmlnLFxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWludGVyZmFjZVxyXG5leHBvcnQgaW50ZXJmYWNlIFBhY2thZ2VDb25maWd1cmF0aW9uIGV4dGVuZHMgSGFuZGxlckNvbmZpZ3VyYXRpb24ge1xyXG4gICAgLy8gUGxhY2Vob2xkZXIgZm9yIHBhY2thZ2UtbGV2ZWwgY29uZmlndXJhdGlvbnNcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNZXRhZGF0YSB7XHJcbiAgICBwYWNrYWdlTmFtZTogc3RyaW5nXHJcbiAgICBmaWxlTmFtZTogc3RyaW5nXHJcbiAgICByZXZpc2lvbjogc3RyaW5nIHwgdW5kZWZpbmVkXHJcbiAgICBjb25maWc/OiBQYWNrYWdlQ29uZmlndXJhdGlvblxyXG59XHJcblxyXG5mdW5jdGlvbiBnZXRNZXRhZGF0YSgpIHtcclxuICAgIHJldHVybiBtZXRhZGF0YVxyXG59XHJcblxyXG5mdW5jdGlvbiBwYXRoVG9SZWdFeHAocGF0aDogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gbmV3IFJlZ0V4cChcclxuICAgICAgICAoXHJcbiAgICAgICAgICAgICdeJyArXHJcbiAgICAgICAgICAgIHBhdGgucmVwbGFjZSgvWy9cXFxcXiQrPy4oKXxbXFxde31dL2d1LCAnXFxcXCQmJykucmVwbGFjZUFsbCgnKicsICdbXi9cXFxcP10rJykgK1xyXG4gICAgICAgICAgICAnKFxcXFw/LiopPyQnXHJcbiAgICAgICAgKS5yZXBsYWNlKCdbXi9cXFxcP10rW14vXFxcXD9dKyhcXFxcPy4qKT8kJywgJycpLFxyXG4gICAgICAgICd1JyxcclxuICAgIClcclxufVxyXG5cclxuZnVuY3Rpb24gY29tYmluZUNvbmZpZyhcclxuICAgIGJhc2U6IFBhY2thZ2VDb25maWd1cmF0aW9uIHwgdW5kZWZpbmVkLFxyXG4gICAgb3ZlcnJpZGU6IEhhbmRsZXJDb25maWd1cmF0aW9uIHwgdW5kZWZpbmVkLFxyXG4pOiAoUGFja2FnZUNvbmZpZ3VyYXRpb24gJiBIYW5kbGVyQ29uZmlndXJhdGlvbikgfCB1bmRlZmluZWQge1xyXG4gICAgaWYgKGJhc2UgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIHJldHVybiBvdmVycmlkZVxyXG4gICAgfSBlbHNlIGlmIChvdmVycmlkZSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgcmV0dXJuIGJhc2VcclxuICAgIH1cclxuICAgIHJldHVybiB7IC4uLmJhc2UsIC4uLm92ZXJyaWRlIH1cclxufVxyXG5cclxuZnVuY3Rpb24gaHR0cEhvc3QoXHJcbiAgICBtZXRhOiBNZXRhZGF0YSB8IHVuZGVmaW5lZCxcclxuICAgIGNmZzogSGFuZGxlckNvbmZpZ3VyYXRpb24gfCB1bmRlZmluZWQsXHJcbiAgICBtZXRob2Q6IE1ldGhvZCxcclxuICAgIHBhdGg6IHN0cmluZyxcclxuICAgIGVudHJ5OiBIYW5kbGVyLFxyXG4pIHtcclxuICAgIGFkZEhhbmRsZXIoJ2h0dHAnLCB7XHJcbiAgICAgICAgbWV0YSxcclxuICAgICAgICBjb25maWc6IGNvbWJpbmVDb25maWcobWV0YT8uY29uZmlnLCBjZmcpLFxyXG4gICAgICAgIG1ldGhvZCxcclxuICAgICAgICBwYXRoUGF0dGVybjogcGF0aCxcclxuICAgICAgICBwYXRoUmVnRXhwOiBwYXRoVG9SZWdFeHAocGF0aCksXHJcbiAgICAgICAgZW50cnksXHJcbiAgICB9KVxyXG59XHJcblxyXG5zZXRIdHRwSG9zdChodHRwSG9zdClcclxuXHJcbmV4cG9ydCB0eXBlIE1ldGhvZCA9ICdHRVQnIHwgJ1BPU1QnIHwgJ1BVVCcgfCAnUEFUQ0gnIHwgJ0RFTEVURSdcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZWdpc3Rlckh0dHBIYW5kbGVyKFxyXG4gICAgbWV0aG9kOiBNZXRob2QsXHJcbiAgICBwYXRoOiBzdHJpbmcsXHJcbiAgICBjb25maWdPckhhbmRsZXI6IEhhbmRsZXJDb25maWd1cmF0aW9uIHwgSGFuZGxlcixcclxuICAgIGZuPzogSGFuZGxlcixcclxuKTogdm9pZCB7XHJcbiAgICBpZiAodHlwZW9mIGNvbmZpZ09ySGFuZGxlciA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgIGh0dHBIb3N0UmVnaXN0cnkoZ2V0TWV0YWRhdGEoKSwgdW5kZWZpbmVkLCBtZXRob2QsIHBhdGgsIGNvbmZpZ09ySGFuZGxlcilcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKCFmbikge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1BsZWFzZSBwcm92aWRlIGEgaGFuZGxlciBmdW5jdGlvbi4nKVxyXG4gICAgICAgIH1cclxuICAgICAgICBodHRwSG9zdFJlZ2lzdHJ5KGdldE1ldGFkYXRhKCksIGNvbmZpZ09ySGFuZGxlciwgbWV0aG9kLCBwYXRoLCBmbilcclxuICAgIH1cclxufVxyXG4iXX0=
|
package/http.d.ts
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
import type { UrlWithParsedQuery } from 'node:url';
|
|
3
|
+
import { Context, HandlerConfiguration, Json } from './context.js';
|
|
4
|
+
export * from './context.js';
|
|
5
|
+
export interface ResponseHeaders {
|
|
6
|
+
[key: string]: string;
|
|
7
|
+
}
|
|
8
|
+
export interface FullResult {
|
|
9
|
+
headers?: ResponseHeaders;
|
|
10
|
+
status?: number;
|
|
11
|
+
body?: unknown;
|
|
12
|
+
}
|
|
13
|
+
export declare type Result = void | string | FullResult;
|
|
14
|
+
export interface HttpRequest {
|
|
15
|
+
readonly rawUrl: string;
|
|
16
|
+
readonly url: Readonly<UrlWithParsedQuery> & {
|
|
17
|
+
pathStepAt: (index: number) => string;
|
|
18
|
+
};
|
|
19
|
+
readonly headers: Readonly<ResponseHeaders>;
|
|
20
|
+
readonly body?: Json | string;
|
|
21
|
+
}
|
|
22
|
+
export interface HttpHandlerConfiguration extends HandlerConfiguration {
|
|
23
|
+
/**
|
|
24
|
+
* A string identifying which domains can access the endpoint cross-origin.
|
|
25
|
+
* @default undefined
|
|
26
|
+
*/
|
|
27
|
+
readonly cors?: string;
|
|
28
|
+
}
|
|
29
|
+
export declare type Handler = (context: Context, request: HttpRequest) => Promise<Result> | Result;
|
|
30
|
+
export declare function get(path: string, fn: Handler): void;
|
|
31
|
+
export declare function get(path: string, config: HttpHandlerConfiguration, fn: Handler): void;
|
|
32
|
+
export declare function post(path: string, fn: Handler): void;
|
|
33
|
+
export declare function post(path: string, config: HttpHandlerConfiguration, fn: Handler): void;
|
|
34
|
+
export declare function put(path: string, fn: Handler): void;
|
|
35
|
+
export declare function put(path: string, config: HttpHandlerConfiguration, fn: Handler): void;
|
|
36
|
+
export declare function patch(path: string, fn: Handler): void;
|
|
37
|
+
export declare function patch(path: string, config: HttpHandlerConfiguration, fn: Handler): void;
|
|
38
|
+
export declare function del(path: string, fn: Handler): void;
|
|
39
|
+
export declare function del(path: string, config: HttpHandlerConfiguration, fn: Handler): void;
|
package/http.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { registerHttpHandler } from './host/registry.js';
|
|
2
|
+
export * from './context.js';
|
|
3
|
+
export function get(path, configOrHandler, fn) {
|
|
4
|
+
registerHttpHandler('GET', path, configOrHandler, fn);
|
|
5
|
+
}
|
|
6
|
+
export function post(path, configOrHandler, fn) {
|
|
7
|
+
registerHttpHandler('POST', path, configOrHandler, fn);
|
|
8
|
+
}
|
|
9
|
+
export function put(path, configOrHandler, fn) {
|
|
10
|
+
registerHttpHandler('PUT', path, configOrHandler, fn);
|
|
11
|
+
}
|
|
12
|
+
export function patch(path, configOrHandler, fn) {
|
|
13
|
+
registerHttpHandler('PATCH', path, configOrHandler, fn);
|
|
14
|
+
}
|
|
15
|
+
export function del(path, configOrHandler, fn) {
|
|
16
|
+
registerHttpHandler('DELETE', path, configOrHandler, fn);
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImh0dHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFFeEQsY0FBYyxjQUFjLENBQUE7QUFpQzVCLE1BQU0sVUFBVSxHQUFHLENBQ2YsSUFBWSxFQUNaLGVBQW1ELEVBQ25ELEVBQVk7SUFFWixtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQTtBQUN6RCxDQUFDO0FBR0QsTUFBTSxVQUFVLElBQUksQ0FDaEIsSUFBWSxFQUNaLGVBQW1ELEVBQ25ELEVBQVk7SUFFWixtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQTtBQUMxRCxDQUFDO0FBR0QsTUFBTSxVQUFVLEdBQUcsQ0FDZixJQUFZLEVBQ1osZUFBbUQsRUFDbkQsRUFBWTtJQUVaLG1CQUFtQixDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFBO0FBQ3pELENBQUM7QUFHRCxNQUFNLFVBQVUsS0FBSyxDQUNqQixJQUFZLEVBQ1osZUFBbUQsRUFDbkQsRUFBWTtJQUVaLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFBO0FBQzNELENBQUM7QUFHRCxNQUFNLFVBQVUsR0FBRyxDQUNmLElBQVksRUFDWixlQUFtRCxFQUNuRCxFQUFZO0lBRVosbUJBQW1CLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUE7QUFDNUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgVXJsV2l0aFBhcnNlZFF1ZXJ5IH0gZnJvbSAnbm9kZTp1cmwnXHJcbmltcG9ydCB7IENvbnRleHQsIEhhbmRsZXJDb25maWd1cmF0aW9uLCBKc29uIH0gZnJvbSAnLi9jb250ZXh0LmpzJ1xyXG5pbXBvcnQgeyByZWdpc3Rlckh0dHBIYW5kbGVyIH0gZnJvbSAnLi9ob3N0L3JlZ2lzdHJ5LmpzJ1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9jb250ZXh0LmpzJ1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBSZXNwb25zZUhlYWRlcnMge1xyXG4gICAgW2tleTogc3RyaW5nXTogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRnVsbFJlc3VsdCB7XHJcbiAgICBoZWFkZXJzPzogUmVzcG9uc2VIZWFkZXJzXHJcbiAgICBzdGF0dXM/OiBudW1iZXJcclxuICAgIGJvZHk/OiB1bmtub3duXHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIFJlc3VsdCA9IHZvaWQgfCBzdHJpbmcgfCBGdWxsUmVzdWx0XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEh0dHBSZXF1ZXN0IHtcclxuICAgIHJlYWRvbmx5IHJhd1VybDogc3RyaW5nXHJcbiAgICByZWFkb25seSB1cmw6IFJlYWRvbmx5PFVybFdpdGhQYXJzZWRRdWVyeT4gJiB7IHBhdGhTdGVwQXQ6IChpbmRleDogbnVtYmVyKSA9PiBzdHJpbmcgfVxyXG4gICAgcmVhZG9ubHkgaGVhZGVyczogUmVhZG9ubHk8UmVzcG9uc2VIZWFkZXJzPlxyXG4gICAgcmVhZG9ubHkgYm9keT86IEpzb24gfCBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24gZXh0ZW5kcyBIYW5kbGVyQ29uZmlndXJhdGlvbiB7XHJcbiAgICAvKipcclxuICAgICAqIEEgc3RyaW5nIGlkZW50aWZ5aW5nIHdoaWNoIGRvbWFpbnMgY2FuIGFjY2VzcyB0aGUgZW5kcG9pbnQgY3Jvc3Mtb3JpZ2luLlxyXG4gICAgICogQGRlZmF1bHQgdW5kZWZpbmVkXHJcbiAgICAgKi9cclxuICAgIHJlYWRvbmx5IGNvcnM/OiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgSGFuZGxlciA9IChjb250ZXh0OiBDb250ZXh0LCByZXF1ZXN0OiBIdHRwUmVxdWVzdCkgPT4gUHJvbWlzZTxSZXN1bHQ+IHwgUmVzdWx0XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0KHBhdGg6IHN0cmluZywgZm46IEhhbmRsZXIpOiB2b2lkXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXQocGF0aDogc3RyaW5nLCBjb25maWc6IEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvbiwgZm46IEhhbmRsZXIpOiB2b2lkXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXQoXHJcbiAgICBwYXRoOiBzdHJpbmcsXHJcbiAgICBjb25maWdPckhhbmRsZXI6IEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvbiB8IEhhbmRsZXIsXHJcbiAgICBmbj86IEhhbmRsZXIsXHJcbik6IHZvaWQge1xyXG4gICAgcmVnaXN0ZXJIdHRwSGFuZGxlcignR0VUJywgcGF0aCwgY29uZmlnT3JIYW5kbGVyLCBmbilcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gcG9zdChwYXRoOiBzdHJpbmcsIGZuOiBIYW5kbGVyKTogdm9pZFxyXG5leHBvcnQgZnVuY3Rpb24gcG9zdChwYXRoOiBzdHJpbmcsIGNvbmZpZzogSHR0cEhhbmRsZXJDb25maWd1cmF0aW9uLCBmbjogSGFuZGxlcik6IHZvaWRcclxuZXhwb3J0IGZ1bmN0aW9uIHBvc3QoXHJcbiAgICBwYXRoOiBzdHJpbmcsXHJcbiAgICBjb25maWdPckhhbmRsZXI6IEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvbiB8IEhhbmRsZXIsXHJcbiAgICBmbj86IEhhbmRsZXIsXHJcbik6IHZvaWQge1xyXG4gICAgcmVnaXN0ZXJIdHRwSGFuZGxlcignUE9TVCcsIHBhdGgsIGNvbmZpZ09ySGFuZGxlciwgZm4pXHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIHB1dChwYXRoOiBzdHJpbmcsIGZuOiBIYW5kbGVyKTogdm9pZFxyXG5leHBvcnQgZnVuY3Rpb24gcHV0KHBhdGg6IHN0cmluZywgY29uZmlnOiBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24sIGZuOiBIYW5kbGVyKTogdm9pZFxyXG5leHBvcnQgZnVuY3Rpb24gcHV0KFxyXG4gICAgcGF0aDogc3RyaW5nLFxyXG4gICAgY29uZmlnT3JIYW5kbGVyOiBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24gfCBIYW5kbGVyLFxyXG4gICAgZm4/OiBIYW5kbGVyLFxyXG4pOiB2b2lkIHtcclxuICAgIHJlZ2lzdGVySHR0cEhhbmRsZXIoJ1BVVCcsIHBhdGgsIGNvbmZpZ09ySGFuZGxlciwgZm4pXHJcbn1cclxuZXhwb3J0IGZ1bmN0aW9uIHBhdGNoKHBhdGg6IHN0cmluZywgZm46IEhhbmRsZXIpOiB2b2lkXHJcbmV4cG9ydCBmdW5jdGlvbiBwYXRjaChwYXRoOiBzdHJpbmcsIGNvbmZpZzogSHR0cEhhbmRsZXJDb25maWd1cmF0aW9uLCBmbjogSGFuZGxlcik6IHZvaWRcclxuZXhwb3J0IGZ1bmN0aW9uIHBhdGNoKFxyXG4gICAgcGF0aDogc3RyaW5nLFxyXG4gICAgY29uZmlnT3JIYW5kbGVyOiBIdHRwSGFuZGxlckNvbmZpZ3VyYXRpb24gfCBIYW5kbGVyLFxyXG4gICAgZm4/OiBIYW5kbGVyLFxyXG4pOiB2b2lkIHtcclxuICAgIHJlZ2lzdGVySHR0cEhhbmRsZXIoJ1BBVENIJywgcGF0aCwgY29uZmlnT3JIYW5kbGVyLCBmbilcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gZGVsKHBhdGg6IHN0cmluZywgZm46IEhhbmRsZXIpOiB2b2lkXHJcbmV4cG9ydCBmdW5jdGlvbiBkZWwocGF0aDogc3RyaW5nLCBjb25maWc6IEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvbiwgZm46IEhhbmRsZXIpOiB2b2lkXHJcbmV4cG9ydCBmdW5jdGlvbiBkZWwoXHJcbiAgICBwYXRoOiBzdHJpbmcsXHJcbiAgICBjb25maWdPckhhbmRsZXI6IEh0dHBIYW5kbGVyQ29uZmlndXJhdGlvbiB8IEhhbmRsZXIsXHJcbiAgICBmbj86IEhhbmRsZXIsXHJcbik6IHZvaWQge1xyXG4gICAgcmVnaXN0ZXJIdHRwSGFuZGxlcignREVMRVRFJywgcGF0aCwgY29uZmlnT3JIYW5kbGVyLCBmbilcclxufVxyXG4iXX0=
|
package/package.json
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@riddance/host",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"engines": {
|
|
7
|
+
"node": ">=16"
|
|
8
|
+
},
|
|
9
|
+
"keywords": [
|
|
10
|
+
"riddance",
|
|
11
|
+
"serverless",
|
|
12
|
+
"environment",
|
|
13
|
+
"devenv",
|
|
14
|
+
"opinionated"
|
|
15
|
+
],
|
|
16
|
+
"files": [
|
|
17
|
+
"*.js",
|
|
18
|
+
"*.d.ts",
|
|
19
|
+
"host/*.js",
|
|
20
|
+
"host/*.d.ts"
|
|
21
|
+
],
|
|
22
|
+
"exports": {
|
|
23
|
+
"./lib/context": "./context.js",
|
|
24
|
+
"./lib/http": "./http.js",
|
|
25
|
+
"./registry": "./host/registry.js",
|
|
26
|
+
"./reflect": "./host/reflect.js",
|
|
27
|
+
"./logging": "./host/logging.js",
|
|
28
|
+
"./context": "./host/context.js",
|
|
29
|
+
"./http": "./host/http.js"
|
|
30
|
+
},
|
|
31
|
+
"devDependencies": {
|
|
32
|
+
"@riddance/env": "0.0.1"
|
|
33
|
+
},
|
|
34
|
+
"scripts": {
|
|
35
|
+
"prepare": "tsc",
|
|
36
|
+
"watch": "watch"
|
|
37
|
+
}
|
|
38
|
+
}
|