@haibun/web-server-express 1.46.1 → 1.47.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/defs.d.ts
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export declare const WEBSERVER = "webserver";
|
|
2
|
+
import * as express from 'express';
|
|
3
|
+
export interface IWebServer {
|
|
4
|
+
checkAddStaticFolder(subdir: string, loc: string, options?: TStaticFolderOptions): undefined | string;
|
|
5
|
+
checkAddIndexFolder(subdir: string, loc: string): undefined | string;
|
|
6
|
+
addKnownStaticFolder(subdir: string, mountAt?: string): undefined | string;
|
|
7
|
+
listen(): Promise<unknown>;
|
|
8
|
+
close(): Promise<void>;
|
|
9
|
+
mounted: TRouteMap;
|
|
10
|
+
addRoute(type: TRouteTypes, path: string, ...routes: TRequestHandler[]): void;
|
|
11
|
+
addKnownRoute(type: TRouteTypes, path: string, ...routes: TRequestHandler[]): void;
|
|
12
|
+
use(middleware: express.RequestHandler): void;
|
|
13
|
+
}
|
|
14
|
+
export declare const ROUTE_TYPES: readonly ["get", "post", "put", "delete", "head", "options"];
|
|
15
|
+
export type TRouteTypes = (typeof ROUTE_TYPES)[number];
|
|
16
|
+
export type TRouteMap = {
|
|
17
|
+
[K in TRouteTypes]: {
|
|
18
|
+
[path: string]: string;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
export type IRequest = typeof express.request;
|
|
22
|
+
export type IResponse = typeof express.response;
|
|
23
|
+
export type TRequestHandler = (req: IRequest, res: IResponse, next: () => void) => void;
|
|
24
|
+
export type TStaticFolderOptions = {
|
|
25
|
+
setHeaders?: (res: any, filePath: any, stat: any) => void;
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=defs.d.ts.map
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { TWorld, TNamed, TFeatureStep, IStepperCycles } from '@haibun/core/build/lib/defs.js';
|
|
2
2
|
import { IWebServer } from './defs.js';
|
|
3
3
|
import { ServerExpress } from './server-express.js';
|
|
4
|
+
import { AStepper, IHasOptions } from '@haibun/core/build/lib/astepper.js';
|
|
4
5
|
declare class WebServerStepper extends AStepper implements IHasOptions {
|
|
5
6
|
webserver: ServerExpress | undefined;
|
|
6
7
|
cycles: IStepperCycles;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-server-stepper.d.ts","sourceRoot":"","sources":["../src/web-server-stepper.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"web-server-stepper.d.ts","sourceRoot":"","sources":["../src/web-server-stepper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAe,MAAM,gCAAgC,CAAC;AAE/G,OAAO,EAAE,UAAU,EAAa,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,aAAa,EAAgB,MAAM,qBAAqB,CAAC;AAIlE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAkB3E,cAAM,gBAAiB,SAAQ,QAAS,YAAW,WAAW;IAC7D,SAAS,EAAE,aAAa,GAAG,SAAS,CAAC;IACrC,MAAM,EAAE,cAAc,CAAgB;IAEtC,OAAO;;;0BAGS,MAAM;;;;;;;;MAEpB;IACF,IAAI,EAAE,MAAM,CAAC;IAEP,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAKlD,KAAK;;;gCAGuB,MAAM,eAAe,YAAY;;;;;;;;;;;;qCA2B5B,MAAM;;;;8BAMb,MAAM;;;;8BAON,MAAM;;;;qCAOC,MAAM;;;;;;MAcrC;IACI,YAAY,CAAC,KAAK,KAAA,EAAE,GAAG,KAAA;IASvB,YAAY,CAAC,KAAK,KAAA,EAAE,GAAG,KAAA;IAUvB,MAAM;CAGZ;AAED,eAAe,gBAAgB,CAAC;AAEhC,MAAM,WAAW,iBAAiB;IACjC,SAAS,EAAE,UAAU,CAAC;IACtB,KAAK,EAAE,MAAM,IAAI,CAAC;CAClB"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { OK
|
|
1
|
+
import { OK } from '@haibun/core/build/lib/defs.js';
|
|
2
2
|
import { actionNotOK, getFromRuntime, getStepperOption, intOrError } from '@haibun/core/build/lib/util/index.js';
|
|
3
3
|
import { WEBSERVER } from './defs.js';
|
|
4
4
|
import { ServerExpress, DEFAULT_PORT } from './server-express.js';
|
|
5
5
|
import { WEB_PAGE } from '@haibun/core/build/lib/domain-types.js';
|
|
6
6
|
import path from 'path';
|
|
7
7
|
import { EExecutionMessageType } from '@haibun/core/build/lib/interfaces/logger.js';
|
|
8
|
+
import { AStepper } from '@haibun/core/build/lib/astepper.js';
|
|
8
9
|
const cycles = (wss) => ({
|
|
9
10
|
async startFeature() {
|
|
10
11
|
wss.webserver = new ServerExpress(wss.world.logger, path.join([process.cwd(), 'files'].join('/')), wss.port);
|
|
@@ -111,8 +112,8 @@ class WebServerStepper extends AStepper {
|
|
|
111
112
|
const ws = getFromRuntime(this.getWorld().runtime, WEBSERVER);
|
|
112
113
|
const res = ws.checkAddStaticFolder(loc, where);
|
|
113
114
|
if (res) {
|
|
114
|
-
const
|
|
115
|
-
return actionNotOK(`failed to add static folder ${loc} at ${where}: ${res}`,
|
|
115
|
+
const messageContext = { incident: EExecutionMessageType.ON_FAILURE, incidentDetails: { summary: res, } };
|
|
116
|
+
return actionNotOK(`failed to add static folder ${loc} at ${where}: ${res}`, { messageContext });
|
|
116
117
|
}
|
|
117
118
|
await this.listen();
|
|
118
119
|
return OK;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-server-stepper.js","sourceRoot":"","sources":["../src/web-server-stepper.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"web-server-stepper.js","sourceRoot":"","sources":["../src/web-server-stepper.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@haibun/web-server-express",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.47.0",
|
|
5
5
|
"description": "",
|
|
6
6
|
"main": "build/web-server-stepper.js",
|
|
7
7
|
"files": ["build/**"],
|
|
@@ -18,13 +18,13 @@
|
|
|
18
18
|
"author": "",
|
|
19
19
|
"license": "ISC",
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@haibun/core": "1.
|
|
21
|
+
"@haibun/core": "1.47.0",
|
|
22
22
|
"cookie-parser": "^1.4.5",
|
|
23
23
|
"express": "^4.17.1",
|
|
24
24
|
"serve-index": "^1.9.1"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
|
-
"@haibun/web-http": "1.
|
|
27
|
+
"@haibun/web-http": "1.47.0",
|
|
28
28
|
"@types/cookie-parser": "^1.4.2",
|
|
29
29
|
"@types/express": "^4.17.15"
|
|
30
30
|
},
|