@squiz/render-runtime-lib 1.2.1-alpha.60
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/README.md +11 -0
- package/lib/component-runner/component-runner.spec.d.ts +1 -0
- package/lib/component-runner/index.d.ts +19 -0
- package/lib/component-runner/worker/WorkerPool.d.ts +50 -0
- package/lib/component-runner/worker/getRuntimeModules.d.ts +1 -0
- package/lib/component-runner/worker/worker-root.d.ts +1 -0
- package/lib/index.d.ts +9 -0
- package/lib/index.js +63783 -0
- package/lib/index.js.map +7 -0
- package/lib/render-runtime-lib.spec.d.ts +1 -0
- package/lib/test/helpers/fixtures.d.ts +6 -0
- package/lib/test/helpers/stack.d.ts +2 -0
- package/lib/utils/convertFunctionStaticFilesToFqdn.d.ts +1 -0
- package/lib/utils/log.d.ts +3 -0
- package/lib/webserver/app.d.ts +2 -0
- package/lib/webserver/controllers/core.d.ts +3 -0
- package/lib/webserver/controllers/definition.d.ts +3 -0
- package/lib/webserver/controllers/definition.spec.d.ts +1 -0
- package/lib/webserver/controllers/index.d.ts +4 -0
- package/lib/webserver/controllers/render.d.ts +3 -0
- package/lib/webserver/controllers/render.spec.d.ts +1 -0
- package/lib/webserver/controllers/static.d.ts +3 -0
- package/lib/webserver/controllers/static.spec.d.ts +1 -0
- package/lib/webserver/index.d.ts +15 -0
- package/lib/worker/bridge.js +1000 -0
- package/lib/worker/compiler.js +87 -0
- package/lib/worker/events.js +977 -0
- package/lib/worker/nodevm.js +503 -0
- package/lib/worker/resolver-compat.js +342 -0
- package/lib/worker/resolver.js +882 -0
- package/lib/worker/script.js +388 -0
- package/lib/worker/setup-node-sandbox.js +464 -0
- package/lib/worker/setup-sandbox.js +453 -0
- package/lib/worker/transformer.js +176 -0
- package/lib/worker/vm.js +539 -0
- package/lib/worker/worker-root.js +40146 -0
- package/lib/worker/worker-root.js.map +7 -0
- package/package.json +55 -0
package/README.md
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ComponentExecutor } from '@squiz/component-lib';
|
|
2
|
+
export interface ComponentRunnerConfig {
|
|
3
|
+
dataMountPoint: string;
|
|
4
|
+
doDevReload?: boolean;
|
|
5
|
+
workerTimeout?: number;
|
|
6
|
+
}
|
|
7
|
+
declare type ComponentRunnerT = ComponentExecutor & {
|
|
8
|
+
healthCheck: () => unknown;
|
|
9
|
+
};
|
|
10
|
+
export declare class ComponentRunner {
|
|
11
|
+
private static singleton;
|
|
12
|
+
private static config;
|
|
13
|
+
static get(): ComponentRunnerT;
|
|
14
|
+
static getConfig(): ComponentRunnerConfig;
|
|
15
|
+
static start(config: ComponentRunnerConfig): ComponentRunnerT;
|
|
16
|
+
static stop(): Promise<void>;
|
|
17
|
+
private static buildExecute;
|
|
18
|
+
}
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
/// <reference types="node" />
|
|
4
|
+
/// <reference types="node" />
|
|
5
|
+
import { AsyncResource } from 'async_hooks';
|
|
6
|
+
import { EventEmitter } from 'events';
|
|
7
|
+
import { Worker, type WorkerOptions } from 'worker_threads';
|
|
8
|
+
declare const kTaskInfo: unique symbol;
|
|
9
|
+
declare module 'worker_threads' {
|
|
10
|
+
interface Worker {
|
|
11
|
+
[kTaskInfo]?: WorkerPoolTaskInfo;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
export declare class WorkerPoolTaskInfo extends AsyncResource {
|
|
15
|
+
protected callback: any;
|
|
16
|
+
protected timeoutIdentifier?: NodeJS.Timeout;
|
|
17
|
+
constructor(callback: any, timeoutIdentifier?: NodeJS.Timeout);
|
|
18
|
+
done(err: any, result: any): void;
|
|
19
|
+
cleanUp(): void;
|
|
20
|
+
}
|
|
21
|
+
interface WorkerConfig {
|
|
22
|
+
file: string | URL;
|
|
23
|
+
options?: WorkerOptions;
|
|
24
|
+
}
|
|
25
|
+
interface WorkerPoolConfig {
|
|
26
|
+
numOfWorkers: number;
|
|
27
|
+
doDevReload?: boolean;
|
|
28
|
+
worker: WorkerConfig;
|
|
29
|
+
}
|
|
30
|
+
interface WorkerInfo {
|
|
31
|
+
'desired-worker-total': number;
|
|
32
|
+
'workers-total': number;
|
|
33
|
+
'free-workers': number;
|
|
34
|
+
}
|
|
35
|
+
export declare class WorkerPool<T> extends EventEmitter {
|
|
36
|
+
private poolConfig;
|
|
37
|
+
private workerConfig;
|
|
38
|
+
protected numThreads: number;
|
|
39
|
+
protected workers: Worker[];
|
|
40
|
+
protected freeWorkers: Worker[];
|
|
41
|
+
static start<U>({ worker: workerConfig, ...poolConfig }: WorkerPoolConfig): WorkerPool<U>;
|
|
42
|
+
constructor(poolConfig: Omit<WorkerPoolConfig, 'worker'>, workerConfig: WorkerPoolConfig['worker']);
|
|
43
|
+
workerInfo(): WorkerInfo;
|
|
44
|
+
addNewWorker(): void;
|
|
45
|
+
protected terminateWorker(worker: Worker, spawnAnother: boolean): Promise<number>;
|
|
46
|
+
runTaskP(task: T, timeoutMs?: number): Promise<unknown>;
|
|
47
|
+
runTask(task: T, callback: any, timeoutMs: number | undefined): void;
|
|
48
|
+
close(): Promise<any[]>;
|
|
49
|
+
}
|
|
50
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getRuntimeModules(): string[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ComponentRunner, type ComponentRunnerConfig } from './component-runner';
|
|
2
|
+
import { Webserver, type WebserverConfig } from './webserver';
|
|
3
|
+
interface RenderRuntimeConfig {
|
|
4
|
+
webserver: WebserverConfig;
|
|
5
|
+
componentRunner: ComponentRunnerConfig;
|
|
6
|
+
}
|
|
7
|
+
export declare function startRenderStack(config: RenderRuntimeConfig): Promise<void>;
|
|
8
|
+
export declare function stopRenderStack(): Promise<void>;
|
|
9
|
+
export { ComponentRunner, Webserver, RenderRuntimeConfig };
|