@modern-js/prod-server 1.1.4 → 1.1.5
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/CHANGELOG.md +13 -0
- package/dist/js/modern/libs/context/context.js +10 -4
- package/dist/js/modern/libs/hook-api/route.js +8 -3
- package/dist/js/modern/libs/hook-api/template.js +4 -1
- package/dist/js/modern/libs/render/cache/page-caches/lru.js +6 -2
- package/dist/js/modern/libs/render/cache/spr.js +7 -4
- package/dist/js/modern/libs/render/reader.js +4 -1
- package/dist/js/modern/libs/route/index.js +6 -2
- package/dist/js/modern/libs/route/matcher.js +10 -4
- package/dist/js/modern/libs/route/route.js +20 -9
- package/dist/js/modern/server/index.js +12 -6
- package/dist/js/modern/server/modern-server.js +53 -25
- package/dist/js/node/libs/context/context.js +10 -4
- package/dist/js/node/libs/hook-api/route.js +8 -3
- package/dist/js/node/libs/hook-api/template.js +5 -1
- package/dist/js/node/libs/render/cache/page-caches/lru.js +6 -2
- package/dist/js/node/libs/render/cache/spr.js +6 -6
- package/dist/js/node/libs/render/reader.js +4 -1
- package/dist/js/node/libs/route/index.js +6 -2
- package/dist/js/node/libs/route/matcher.js +10 -4
- package/dist/js/node/libs/route/route.js +20 -9
- package/dist/js/node/server/index.js +12 -6
- package/dist/js/node/server/modern-server.js +53 -25
- package/dist/types/server/modern-server.d.ts +1 -1
- package/package.json +30 -8
- package/.eslintrc.js +0 -8
- package/dist/js/styles/tsconfig.json +0 -12
- package/jest.config.js +0 -8
- package/modern.config.js +0 -2
- package/src/constants.ts +0 -31
- package/src/index.ts +0 -19
- package/src/libs/context/context.ts +0 -178
- package/src/libs/context/index.ts +0 -7
- package/src/libs/hook-api/route.ts +0 -42
- package/src/libs/hook-api/template.ts +0 -53
- package/src/libs/loadConfig.ts +0 -59
- package/src/libs/metrics.ts +0 -15
- package/src/libs/proxy.ts +0 -44
- package/src/libs/render/cache/__tests__/cache.fun.test.ts +0 -94
- package/src/libs/render/cache/__tests__/cache.test.ts +0 -240
- package/src/libs/render/cache/__tests__/cacheable.ts +0 -44
- package/src/libs/render/cache/__tests__/error-configuration.ts +0 -34
- package/src/libs/render/cache/__tests__/matched-cache.ts +0 -88
- package/src/libs/render/cache/index.ts +0 -73
- package/src/libs/render/cache/page-caches/index.ts +0 -11
- package/src/libs/render/cache/page-caches/lru.ts +0 -38
- package/src/libs/render/cache/spr.ts +0 -300
- package/src/libs/render/cache/type.ts +0 -59
- package/src/libs/render/cache/util.ts +0 -94
- package/src/libs/render/index.ts +0 -79
- package/src/libs/render/measure.ts +0 -66
- package/src/libs/render/modern/browser-list.ts +0 -7
- package/src/libs/render/modern/index.ts +0 -41
- package/src/libs/render/modern/module.d.ts +0 -4
- package/src/libs/render/reader.ts +0 -119
- package/src/libs/render/ssr.ts +0 -69
- package/src/libs/render/static.ts +0 -52
- package/src/libs/render/type.ts +0 -38
- package/src/libs/route/index.ts +0 -76
- package/src/libs/route/matcher.ts +0 -108
- package/src/libs/route/route.ts +0 -34
- package/src/libs/serve-file.ts +0 -34
- package/src/server/index.ts +0 -232
- package/src/server/modern-server-split.ts +0 -93
- package/src/server/modern-server.ts +0 -620
- package/src/tsconfig.json +0 -12
- package/src/type.ts +0 -95
- package/src/utils.ts +0 -116
- package/tsconfig.json +0 -11
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @modern-js/prod-server
|
|
2
2
|
|
|
3
|
+
## 1.1.5
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- d32f35134: chore: add modern/jest/eslint/ts config files to .npmignore
|
|
8
|
+
- 86fe5a657: support handle server context init error
|
|
9
|
+
- Updated dependencies [d32f35134]
|
|
10
|
+
- Updated dependencies [6ae4a34ae]
|
|
11
|
+
- Updated dependencies [b80229c79]
|
|
12
|
+
- Updated dependencies [948cc4436]
|
|
13
|
+
- @modern-js/server-core@1.3.5
|
|
14
|
+
- @modern-js/utils@1.7.3
|
|
15
|
+
|
|
3
16
|
## 1.1.4
|
|
4
17
|
|
|
5
18
|
### Patch Changes
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
|
|
1
3
|
import { URL } from 'url';
|
|
2
4
|
import qs from 'querystring';
|
|
3
5
|
export class ModernServerContext {
|
|
@@ -21,10 +23,14 @@ export class ModernServerContext {
|
|
|
21
23
|
}
|
|
22
24
|
|
|
23
25
|
constructor(req, res) {
|
|
24
|
-
this
|
|
25
|
-
|
|
26
|
-
this
|
|
27
|
-
|
|
26
|
+
_defineProperty(this, "req", void 0);
|
|
27
|
+
|
|
28
|
+
_defineProperty(this, "res", void 0);
|
|
29
|
+
|
|
30
|
+
_defineProperty(this, "params", {});
|
|
31
|
+
|
|
32
|
+
_defineProperty(this, "serverData", void 0);
|
|
33
|
+
|
|
28
34
|
this.req = req;
|
|
29
35
|
this.res = res;
|
|
30
36
|
this.serverData = {};
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
|
|
1
3
|
class RouteAPI {
|
|
2
4
|
constructor(matched, router, url) {
|
|
3
|
-
this
|
|
4
|
-
|
|
5
|
-
this
|
|
5
|
+
_defineProperty(this, "router", void 0);
|
|
6
|
+
|
|
7
|
+
_defineProperty(this, "current", void 0);
|
|
8
|
+
|
|
9
|
+
_defineProperty(this, "url", void 0);
|
|
10
|
+
|
|
6
11
|
this.current = matched;
|
|
7
12
|
this.router = router;
|
|
8
13
|
this.url = url;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
|
|
1
3
|
const RegList = {
|
|
2
4
|
before: {
|
|
3
5
|
head: '<head>',
|
|
@@ -11,7 +13,8 @@ const RegList = {
|
|
|
11
13
|
|
|
12
14
|
class TemplateAPI {
|
|
13
15
|
constructor(content) {
|
|
14
|
-
this
|
|
16
|
+
_defineProperty(this, "content", void 0);
|
|
17
|
+
|
|
15
18
|
this.content = content;
|
|
16
19
|
}
|
|
17
20
|
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
|
|
1
3
|
import LRU from 'lru-cache';
|
|
2
4
|
export class LRUCaches {
|
|
3
5
|
constructor(options) {
|
|
4
|
-
this
|
|
5
|
-
|
|
6
|
+
_defineProperty(this, "caches", void 0);
|
|
7
|
+
|
|
8
|
+
_defineProperty(this, "max", void 0);
|
|
9
|
+
|
|
6
10
|
this.max = options.max;
|
|
7
11
|
this.caches = new LRU(this.max);
|
|
8
12
|
}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
|
|
1
3
|
/* eslint-disable @typescript-eslint/member-ordering */
|
|
2
4
|
|
|
3
5
|
/* eslint-disable no-lone-blocks */
|
|
@@ -15,10 +17,11 @@ const QUERY_HEADER_LEVEL = 3;
|
|
|
15
17
|
|
|
16
18
|
class CacheManager {
|
|
17
19
|
constructor(cacheOptions) {
|
|
18
|
-
this
|
|
19
|
-
|
|
20
|
+
_defineProperty(this, "cache", void 0);
|
|
21
|
+
|
|
22
|
+
_defineProperty(this, "cacheOptions", void 0);
|
|
20
23
|
|
|
21
|
-
this
|
|
24
|
+
_defineProperty(this, "find", (() => {
|
|
22
25
|
{
|
|
23
26
|
// eslint-disable-next-line consistent-this,@typescript-eslint/no-this-alias
|
|
24
27
|
const _this = this;
|
|
@@ -63,7 +66,7 @@ class CacheManager {
|
|
|
63
66
|
|
|
64
67
|
};
|
|
65
68
|
}
|
|
66
|
-
})();
|
|
69
|
+
})());
|
|
67
70
|
|
|
68
71
|
this.cacheOptions = cacheOptions;
|
|
69
72
|
this.cache = new LRUCache({
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
|
|
1
3
|
import { fs } from '@modern-js/utils';
|
|
2
4
|
import LRU from 'lru-cache';
|
|
3
5
|
const Byte = 1;
|
|
@@ -17,7 +19,8 @@ const createCacheItem = async (filepath, mtime) => {
|
|
|
17
19
|
export class LruReader {
|
|
18
20
|
// private timer?: NodeJS.Timeout;
|
|
19
21
|
constructor() {
|
|
20
|
-
this
|
|
22
|
+
_defineProperty(this, "cache", void 0);
|
|
23
|
+
|
|
21
24
|
this.cache = new LRU({
|
|
22
25
|
max: 256 * MB,
|
|
23
26
|
length: getContentLength,
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
|
|
1
3
|
import { RouteMatcher } from "./matcher";
|
|
2
4
|
export class RouteMatchManager {
|
|
3
5
|
constructor() {
|
|
4
|
-
this
|
|
5
|
-
|
|
6
|
+
_defineProperty(this, "matchers", void 0);
|
|
7
|
+
|
|
8
|
+
_defineProperty(this, "specs", []);
|
|
9
|
+
|
|
6
10
|
this.matchers = [];
|
|
7
11
|
} // get all routes matches pathname
|
|
8
12
|
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
|
|
1
3
|
import { removeTailSlash } from '@modern-js/utils';
|
|
2
4
|
import { match, pathToRegexp } from 'path-to-regexp';
|
|
3
5
|
import { toPath } from "../../utils";
|
|
@@ -6,10 +8,14 @@ import { ModernRoute } from "./route"; // eslint-disable-next-line no-useless-es
|
|
|
6
8
|
const regCharsDetector = /[^a-zA-Z\-_0-9\/\.]/;
|
|
7
9
|
export class RouteMatcher {
|
|
8
10
|
constructor(spec) {
|
|
9
|
-
this
|
|
10
|
-
|
|
11
|
-
this
|
|
12
|
-
|
|
11
|
+
_defineProperty(this, "spec", void 0);
|
|
12
|
+
|
|
13
|
+
_defineProperty(this, "urlPath", '');
|
|
14
|
+
|
|
15
|
+
_defineProperty(this, "urlMatcher", void 0);
|
|
16
|
+
|
|
17
|
+
_defineProperty(this, "urlReg", void 0);
|
|
18
|
+
|
|
13
19
|
this.spec = spec;
|
|
14
20
|
this.setupUrlPath();
|
|
15
21
|
} // generate modern route object
|
|
@@ -1,16 +1,27 @@
|
|
|
1
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
|
|
1
3
|
export class ModernRoute {
|
|
2
4
|
constructor(routeSpec) {
|
|
3
5
|
var _routeSpec$enableMode;
|
|
4
6
|
|
|
5
|
-
this
|
|
6
|
-
|
|
7
|
-
this
|
|
8
|
-
|
|
9
|
-
this
|
|
10
|
-
|
|
11
|
-
this
|
|
12
|
-
|
|
13
|
-
this
|
|
7
|
+
_defineProperty(this, "entryName", void 0);
|
|
8
|
+
|
|
9
|
+
_defineProperty(this, "urlPath", void 0);
|
|
10
|
+
|
|
11
|
+
_defineProperty(this, "entryPath", void 0);
|
|
12
|
+
|
|
13
|
+
_defineProperty(this, "bundle", void 0);
|
|
14
|
+
|
|
15
|
+
_defineProperty(this, "isApi", void 0);
|
|
16
|
+
|
|
17
|
+
_defineProperty(this, "isSSR", void 0);
|
|
18
|
+
|
|
19
|
+
_defineProperty(this, "isSPA", void 0);
|
|
20
|
+
|
|
21
|
+
_defineProperty(this, "enableModernMode", void 0);
|
|
22
|
+
|
|
23
|
+
_defineProperty(this, "params", {});
|
|
24
|
+
|
|
14
25
|
this.entryName = routeSpec.entryName || '';
|
|
15
26
|
this.urlPath = routeSpec.urlPath;
|
|
16
27
|
this.entryPath = routeSpec.entryPath || '';
|
|
@@ -13,12 +13,18 @@ import { debug } from "../utils";
|
|
|
13
13
|
import { createProdServer } from "./modern-server-split";
|
|
14
14
|
export class Server {
|
|
15
15
|
constructor(options) {
|
|
16
|
-
this
|
|
17
|
-
|
|
18
|
-
this
|
|
19
|
-
|
|
20
|
-
this
|
|
21
|
-
|
|
16
|
+
_defineProperty(this, "options", void 0);
|
|
17
|
+
|
|
18
|
+
_defineProperty(this, "serverImpl", createProdServer);
|
|
19
|
+
|
|
20
|
+
_defineProperty(this, "server", void 0);
|
|
21
|
+
|
|
22
|
+
_defineProperty(this, "app", void 0);
|
|
23
|
+
|
|
24
|
+
_defineProperty(this, "runner", void 0);
|
|
25
|
+
|
|
26
|
+
_defineProperty(this, "serverConfig", void 0);
|
|
27
|
+
|
|
22
28
|
options.logger = options.logger || new Logger({
|
|
23
29
|
level: 'warn'
|
|
24
30
|
});
|
|
@@ -4,12 +4,12 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
4
4
|
|
|
5
5
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
6
6
|
|
|
7
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
8
|
-
|
|
9
7
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
10
8
|
|
|
11
9
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
12
10
|
|
|
11
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
12
|
+
|
|
13
13
|
/* eslint-disable max-lines */
|
|
14
14
|
import { createServer } from 'http';
|
|
15
15
|
import util from 'util';
|
|
@@ -45,26 +45,45 @@ export class ModernServer {
|
|
|
45
45
|
}) {
|
|
46
46
|
var _config$output;
|
|
47
47
|
|
|
48
|
-
this
|
|
49
|
-
|
|
50
|
-
this
|
|
51
|
-
|
|
52
|
-
this
|
|
53
|
-
|
|
54
|
-
this
|
|
55
|
-
|
|
56
|
-
this
|
|
57
|
-
|
|
58
|
-
this
|
|
59
|
-
|
|
60
|
-
this
|
|
61
|
-
|
|
62
|
-
this
|
|
63
|
-
|
|
64
|
-
this
|
|
65
|
-
|
|
66
|
-
this
|
|
67
|
-
|
|
48
|
+
_defineProperty(this, "pwd", void 0);
|
|
49
|
+
|
|
50
|
+
_defineProperty(this, "distDir", void 0);
|
|
51
|
+
|
|
52
|
+
_defineProperty(this, "workDir", void 0);
|
|
53
|
+
|
|
54
|
+
_defineProperty(this, "router", void 0);
|
|
55
|
+
|
|
56
|
+
_defineProperty(this, "conf", void 0);
|
|
57
|
+
|
|
58
|
+
_defineProperty(this, "handlers", []);
|
|
59
|
+
|
|
60
|
+
_defineProperty(this, "presetRoutes", void 0);
|
|
61
|
+
|
|
62
|
+
_defineProperty(this, "runner", void 0);
|
|
63
|
+
|
|
64
|
+
_defineProperty(this, "logger", void 0);
|
|
65
|
+
|
|
66
|
+
_defineProperty(this, "metrics", void 0);
|
|
67
|
+
|
|
68
|
+
_defineProperty(this, "runMode", void 0);
|
|
69
|
+
|
|
70
|
+
_defineProperty(this, "reader", reader);
|
|
71
|
+
|
|
72
|
+
_defineProperty(this, "proxyTarget", void 0);
|
|
73
|
+
|
|
74
|
+
_defineProperty(this, "staticFileHandler", void 0);
|
|
75
|
+
|
|
76
|
+
_defineProperty(this, "routeRenderHandler", void 0);
|
|
77
|
+
|
|
78
|
+
_defineProperty(this, "frameWebHandler", null);
|
|
79
|
+
|
|
80
|
+
_defineProperty(this, "frameAPIHandler", null);
|
|
81
|
+
|
|
82
|
+
_defineProperty(this, "proxyHandler", null);
|
|
83
|
+
|
|
84
|
+
_defineProperty(this, "_handler", void 0);
|
|
85
|
+
|
|
86
|
+
_defineProperty(this, "staticGenerate", void 0);
|
|
68
87
|
|
|
69
88
|
require('ignore-styles');
|
|
70
89
|
|
|
@@ -527,12 +546,21 @@ export class ModernServer {
|
|
|
527
546
|
res.statusCode = 200;
|
|
528
547
|
req.logger = this.logger;
|
|
529
548
|
req.metrics = this.metrics;
|
|
530
|
-
|
|
549
|
+
let context;
|
|
550
|
+
|
|
551
|
+
try {
|
|
552
|
+
context = createContext(req, res);
|
|
553
|
+
} catch (e) {
|
|
554
|
+
this.logger.error(e);
|
|
555
|
+
res.statusCode = 500;
|
|
556
|
+
res.setHeader('content-type', mime.contentType('html'));
|
|
557
|
+
return res.end(createErrorDocument(500, ERROR_PAGE_TEXT[500]));
|
|
558
|
+
}
|
|
531
559
|
|
|
532
560
|
try {
|
|
533
|
-
this._handler(context, next);
|
|
561
|
+
return this._handler(context, next);
|
|
534
562
|
} catch (err) {
|
|
535
|
-
this.onError(context, err);
|
|
563
|
+
return this.onError(context, err);
|
|
536
564
|
}
|
|
537
565
|
}
|
|
538
566
|
|
|
@@ -11,6 +11,8 @@ var _querystring = _interopRequireDefault(require("querystring"));
|
|
|
11
11
|
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
13
|
|
|
14
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
15
|
+
|
|
14
16
|
class ModernServerContext {
|
|
15
17
|
/**
|
|
16
18
|
* http request
|
|
@@ -32,10 +34,14 @@ class ModernServerContext {
|
|
|
32
34
|
}
|
|
33
35
|
|
|
34
36
|
constructor(req, res) {
|
|
35
|
-
this
|
|
36
|
-
|
|
37
|
-
this
|
|
38
|
-
|
|
37
|
+
_defineProperty(this, "req", void 0);
|
|
38
|
+
|
|
39
|
+
_defineProperty(this, "res", void 0);
|
|
40
|
+
|
|
41
|
+
_defineProperty(this, "params", {});
|
|
42
|
+
|
|
43
|
+
_defineProperty(this, "serverData", void 0);
|
|
44
|
+
|
|
39
45
|
this.req = req;
|
|
40
46
|
this.res = res;
|
|
41
47
|
this.serverData = {};
|
|
@@ -5,11 +5,16 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.createRouteAPI = void 0;
|
|
7
7
|
|
|
8
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
9
|
+
|
|
8
10
|
class RouteAPI {
|
|
9
11
|
constructor(matched, router, url) {
|
|
10
|
-
this
|
|
11
|
-
|
|
12
|
-
this
|
|
12
|
+
_defineProperty(this, "router", void 0);
|
|
13
|
+
|
|
14
|
+
_defineProperty(this, "current", void 0);
|
|
15
|
+
|
|
16
|
+
_defineProperty(this, "url", void 0);
|
|
17
|
+
|
|
13
18
|
this.current = matched;
|
|
14
19
|
this.router = router;
|
|
15
20
|
this.url = url;
|
|
@@ -4,6 +4,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.createTemplateAPI = void 0;
|
|
7
|
+
|
|
8
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
9
|
+
|
|
7
10
|
const RegList = {
|
|
8
11
|
before: {
|
|
9
12
|
head: '<head>',
|
|
@@ -17,7 +20,8 @@ const RegList = {
|
|
|
17
20
|
|
|
18
21
|
class TemplateAPI {
|
|
19
22
|
constructor(content) {
|
|
20
|
-
this
|
|
23
|
+
_defineProperty(this, "content", void 0);
|
|
24
|
+
|
|
21
25
|
this.content = content;
|
|
22
26
|
}
|
|
23
27
|
|
|
@@ -9,10 +9,14 @@ var _lruCache = _interopRequireDefault(require("lru-cache"));
|
|
|
9
9
|
|
|
10
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
11
|
|
|
12
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
13
|
+
|
|
12
14
|
class LRUCaches {
|
|
13
15
|
constructor(options) {
|
|
14
|
-
this
|
|
15
|
-
|
|
16
|
+
_defineProperty(this, "caches", void 0);
|
|
17
|
+
|
|
18
|
+
_defineProperty(this, "max", void 0);
|
|
19
|
+
|
|
16
20
|
this.max = options.max;
|
|
17
21
|
this.caches = new _lruCache.default(this.max);
|
|
18
22
|
}
|
|
@@ -18,9 +18,8 @@ var _pageCaches = require("./page-caches");
|
|
|
18
18
|
|
|
19
19
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
22
22
|
|
|
23
|
-
/* eslint-disable no-lone-blocks */
|
|
24
23
|
const MAX_CACHE_EACH_REQ = Number(process.env.ROUTE_CACHE_LIMIT) || 10;
|
|
25
24
|
const MAX_SIZE_EACH_CLUSTER = Number(process.env.CLUSTER_CACHE_LIMIT) || 100;
|
|
26
25
|
const BASE_LEVEL = 0;
|
|
@@ -30,10 +29,11 @@ const QUERY_HEADER_LEVEL = 3;
|
|
|
30
29
|
|
|
31
30
|
class CacheManager {
|
|
32
31
|
constructor(cacheOptions) {
|
|
33
|
-
this
|
|
34
|
-
this.cacheOptions = void 0;
|
|
32
|
+
_defineProperty(this, "cache", void 0);
|
|
35
33
|
|
|
36
|
-
this
|
|
34
|
+
_defineProperty(this, "cacheOptions", void 0);
|
|
35
|
+
|
|
36
|
+
_defineProperty(this, "find", (() => {
|
|
37
37
|
{
|
|
38
38
|
// eslint-disable-next-line consistent-this,@typescript-eslint/no-this-alias
|
|
39
39
|
const _this = this;
|
|
@@ -78,7 +78,7 @@ class CacheManager {
|
|
|
78
78
|
|
|
79
79
|
};
|
|
80
80
|
}
|
|
81
|
-
})();
|
|
81
|
+
})());
|
|
82
82
|
|
|
83
83
|
this.cacheOptions = cacheOptions;
|
|
84
84
|
this.cache = new _lruCache.default({
|
|
@@ -11,6 +11,8 @@ var _lruCache = _interopRequireDefault(require("lru-cache"));
|
|
|
11
11
|
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
13
|
|
|
14
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
15
|
+
|
|
14
16
|
const Byte = 1;
|
|
15
17
|
const KB = 1024 * Byte;
|
|
16
18
|
const MB = 1024 * KB;
|
|
@@ -28,7 +30,8 @@ const createCacheItem = async (filepath, mtime) => {
|
|
|
28
30
|
class LruReader {
|
|
29
31
|
// private timer?: NodeJS.Timeout;
|
|
30
32
|
constructor() {
|
|
31
|
-
this
|
|
33
|
+
_defineProperty(this, "cache", void 0);
|
|
34
|
+
|
|
32
35
|
this.cache = new _lruCache.default({
|
|
33
36
|
max: 256 * MB,
|
|
34
37
|
length: getContentLength,
|
|
@@ -13,10 +13,14 @@ Object.defineProperty(exports, "RouteMatcher", {
|
|
|
13
13
|
|
|
14
14
|
var _matcher = require("./matcher");
|
|
15
15
|
|
|
16
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
17
|
+
|
|
16
18
|
class RouteMatchManager {
|
|
17
19
|
constructor() {
|
|
18
|
-
this
|
|
19
|
-
|
|
20
|
+
_defineProperty(this, "matchers", void 0);
|
|
21
|
+
|
|
22
|
+
_defineProperty(this, "specs", []);
|
|
23
|
+
|
|
20
24
|
this.matchers = [];
|
|
21
25
|
} // get all routes matches pathname
|
|
22
26
|
|
|
@@ -13,15 +13,21 @@ var _utils2 = require("../../utils");
|
|
|
13
13
|
|
|
14
14
|
var _route = require("./route");
|
|
15
15
|
|
|
16
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
17
|
+
|
|
16
18
|
// eslint-disable-next-line no-useless-escape
|
|
17
19
|
const regCharsDetector = /[^a-zA-Z\-_0-9\/\.]/;
|
|
18
20
|
|
|
19
21
|
class RouteMatcher {
|
|
20
22
|
constructor(spec) {
|
|
21
|
-
this
|
|
22
|
-
|
|
23
|
-
this
|
|
24
|
-
|
|
23
|
+
_defineProperty(this, "spec", void 0);
|
|
24
|
+
|
|
25
|
+
_defineProperty(this, "urlPath", '');
|
|
26
|
+
|
|
27
|
+
_defineProperty(this, "urlMatcher", void 0);
|
|
28
|
+
|
|
29
|
+
_defineProperty(this, "urlReg", void 0);
|
|
30
|
+
|
|
25
31
|
this.spec = spec;
|
|
26
32
|
this.setupUrlPath();
|
|
27
33
|
} // generate modern route object
|
|
@@ -5,19 +5,30 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.ModernRoute = void 0;
|
|
7
7
|
|
|
8
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
9
|
+
|
|
8
10
|
class ModernRoute {
|
|
9
11
|
constructor(routeSpec) {
|
|
10
12
|
var _routeSpec$enableMode;
|
|
11
13
|
|
|
12
|
-
this
|
|
13
|
-
|
|
14
|
-
this
|
|
15
|
-
|
|
16
|
-
this
|
|
17
|
-
|
|
18
|
-
this
|
|
19
|
-
|
|
20
|
-
this
|
|
14
|
+
_defineProperty(this, "entryName", void 0);
|
|
15
|
+
|
|
16
|
+
_defineProperty(this, "urlPath", void 0);
|
|
17
|
+
|
|
18
|
+
_defineProperty(this, "entryPath", void 0);
|
|
19
|
+
|
|
20
|
+
_defineProperty(this, "bundle", void 0);
|
|
21
|
+
|
|
22
|
+
_defineProperty(this, "isApi", void 0);
|
|
23
|
+
|
|
24
|
+
_defineProperty(this, "isSSR", void 0);
|
|
25
|
+
|
|
26
|
+
_defineProperty(this, "isSPA", void 0);
|
|
27
|
+
|
|
28
|
+
_defineProperty(this, "enableModernMode", void 0);
|
|
29
|
+
|
|
30
|
+
_defineProperty(this, "params", {});
|
|
31
|
+
|
|
21
32
|
this.entryName = routeSpec.entryName || '';
|
|
22
33
|
this.urlPath = routeSpec.urlPath;
|
|
23
34
|
this.entryPath = routeSpec.entryPath || '';
|
|
@@ -29,12 +29,18 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|
|
29
29
|
|
|
30
30
|
class Server {
|
|
31
31
|
constructor(options) {
|
|
32
|
-
this
|
|
33
|
-
|
|
34
|
-
this
|
|
35
|
-
|
|
36
|
-
this
|
|
37
|
-
|
|
32
|
+
_defineProperty(this, "options", void 0);
|
|
33
|
+
|
|
34
|
+
_defineProperty(this, "serverImpl", _modernServerSplit.createProdServer);
|
|
35
|
+
|
|
36
|
+
_defineProperty(this, "server", void 0);
|
|
37
|
+
|
|
38
|
+
_defineProperty(this, "app", void 0);
|
|
39
|
+
|
|
40
|
+
_defineProperty(this, "runner", void 0);
|
|
41
|
+
|
|
42
|
+
_defineProperty(this, "serverConfig", void 0);
|
|
43
|
+
|
|
38
44
|
options.logger = options.logger || new _utils.Logger({
|
|
39
45
|
level: 'warn'
|
|
40
46
|
});
|