@modern-js/prod-server 2.15.0 → 2.16.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/CHANGELOG.md +14 -0
- package/dist/cjs/constants.js +15 -31
- package/dist/cjs/index.js +35 -37
- package/dist/cjs/libs/context/context.js +53 -66
- package/dist/cjs/libs/context/index.js +15 -28
- package/dist/cjs/libs/hook-api/index.js +59 -54
- package/dist/cjs/libs/hook-api/route.js +28 -30
- package/dist/cjs/libs/hook-api/template.js +30 -34
- package/dist/cjs/libs/loadConfig.js +74 -65
- package/dist/cjs/libs/logger.js +46 -37
- package/dist/cjs/libs/metrics.js +7 -25
- package/dist/cjs/libs/proxy.js +29 -46
- package/dist/cjs/libs/render/cache/__tests__/cache.fun.test.js +48 -64
- package/dist/cjs/libs/render/cache/__tests__/cache.test.js +53 -37
- package/dist/cjs/libs/render/cache/__tests__/cacheable.js +38 -34
- package/dist/cjs/libs/render/cache/__tests__/error-configuration.js +22 -30
- package/dist/cjs/libs/render/cache/__tests__/matched-cache.js +86 -46
- package/dist/cjs/libs/render/cache/index.js +17 -37
- package/dist/cjs/libs/render/cache/page-caches/index.js +12 -28
- package/dist/cjs/libs/render/cache/page-caches/lru.js +32 -40
- package/dist/cjs/libs/render/cache/spr.js +104 -111
- package/dist/cjs/libs/render/cache/type.js +4 -15
- package/dist/cjs/libs/render/cache/util.js +29 -53
- package/dist/cjs/libs/render/index.js +75 -73
- package/dist/cjs/libs/render/measure.js +19 -34
- package/dist/cjs/libs/render/reader.js +52 -61
- package/dist/cjs/libs/render/ssr.js +34 -66
- package/dist/cjs/libs/render/static.js +22 -45
- package/dist/cjs/libs/render/type.js +10 -28
- package/dist/cjs/libs/render/utils.js +17 -38
- package/dist/cjs/libs/route/index.js +32 -31
- package/dist/cjs/libs/route/matcher.js +38 -38
- package/dist/cjs/libs/route/route.js +29 -26
- package/dist/cjs/libs/serveFile.js +23 -41
- package/dist/cjs/server/index.js +101 -107
- package/dist/cjs/server/modernServer.js +191 -171
- package/dist/cjs/server/modernServerSplit.js +12 -30
- package/dist/cjs/type.js +4 -15
- package/dist/cjs/utils.js +50 -50
- package/dist/cjs/workerServer.js +26 -36
- package/dist/esm/constants.js +24 -25
- package/dist/esm/index.js +11 -10
- package/dist/esm/libs/context/context.js +271 -264
- package/dist/esm/libs/context/index.js +3 -3
- package/dist/esm/libs/hook-api/index.js +237 -223
- package/dist/esm/libs/hook-api/route.js +62 -60
- package/dist/esm/libs/hook-api/template.js +117 -115
- package/dist/esm/libs/loadConfig.js +68 -69
- package/dist/esm/libs/logger.js +188 -174
- package/dist/esm/libs/metrics.js +6 -3
- package/dist/esm/libs/proxy.js +236 -221
- package/dist/esm/libs/render/cache/__tests__/cache.fun.test.js +286 -267
- package/dist/esm/libs/render/cache/__tests__/cache.test.js +765 -745
- package/dist/esm/libs/render/cache/__tests__/cacheable.js +62 -63
- package/dist/esm/libs/render/cache/__tests__/error-configuration.js +42 -43
- package/dist/esm/libs/render/cache/__tests__/matched-cache.js +134 -135
- package/dist/esm/libs/render/cache/index.js +337 -326
- package/dist/esm/libs/render/cache/page-caches/index.js +147 -141
- package/dist/esm/libs/render/cache/page-caches/lru.js +78 -76
- package/dist/esm/libs/render/cache/spr.js +465 -456
- package/dist/esm/libs/render/cache/type.js +1 -1
- package/dist/esm/libs/render/cache/util.js +266 -246
- package/dist/esm/libs/render/index.js +226 -218
- package/dist/esm/libs/render/measure.js +136 -128
- package/dist/esm/libs/render/reader.js +315 -304
- package/dist/esm/libs/render/ssr.js +214 -209
- package/dist/esm/libs/render/static.js +208 -198
- package/dist/esm/libs/render/type.js +6 -7
- package/dist/esm/libs/render/utils.js +8 -9
- package/dist/esm/libs/route/index.js +134 -123
- package/dist/esm/libs/route/matcher.js +140 -130
- package/dist/esm/libs/route/route.js +36 -37
- package/dist/esm/libs/serveFile.js +177 -168
- package/dist/esm/server/index.js +578 -549
- package/dist/esm/server/modernServer.js +1137 -1074
- package/dist/esm/server/modernServerSplit.js +344 -328
- package/dist/esm/type.js +1 -1
- package/dist/esm/utils.js +133 -124
- package/dist/esm/workerServer.js +226 -220
- package/dist/esm-node/constants.js +7 -14
- package/dist/esm-node/index.js +4 -9
- package/dist/esm-node/libs/context/context.js +32 -25
- package/dist/esm-node/libs/context/index.js +2 -5
- package/dist/esm-node/libs/hook-api/index.js +40 -21
- package/dist/esm-node/libs/hook-api/route.js +21 -8
- package/dist/esm-node/libs/hook-api/template.js +19 -14
- package/dist/esm-node/libs/loadConfig.js +11 -28
- package/dist/esm-node/libs/logger.js +37 -17
- package/dist/esm-node/libs/metrics.js +1 -3
- package/dist/esm-node/libs/proxy.js +14 -22
- package/dist/esm-node/libs/render/cache/__tests__/cache.fun.test.js +25 -36
- package/dist/esm-node/libs/render/cache/__tests__/cache.test.js +23 -11
- package/dist/esm-node/libs/render/cache/__tests__/cacheable.js +32 -13
- package/dist/esm-node/libs/render/cache/__tests__/error-configuration.js +16 -9
- package/dist/esm-node/libs/render/cache/__tests__/matched-cache.js +80 -25
- package/dist/esm-node/libs/render/cache/index.js +3 -10
- package/dist/esm-node/libs/render/cache/page-caches/index.js +4 -5
- package/dist/esm-node/libs/render/cache/page-caches/lru.js +20 -8
- package/dist/esm-node/libs/render/cache/spr.js +79 -80
- package/dist/esm-node/libs/render/cache/type.js +1 -0
- package/dist/esm-node/libs/render/cache/util.js +13 -23
- package/dist/esm-node/libs/render/index.js +10 -28
- package/dist/esm-node/libs/render/measure.js +7 -13
- package/dist/esm-node/libs/render/reader.js +31 -26
- package/dist/esm-node/libs/render/ssr.js +5 -21
- package/dist/esm-node/libs/render/static.js +1 -4
- package/dist/esm-node/libs/render/type.js +3 -6
- package/dist/esm-node/libs/render/utils.js +6 -18
- package/dist/esm-node/libs/route/index.js +20 -9
- package/dist/esm-node/libs/route/matcher.js +28 -17
- package/dist/esm-node/libs/route/route.js +23 -5
- package/dist/esm-node/libs/serveFile.js +2 -6
- package/dist/esm-node/server/index.js +72 -75
- package/dist/esm-node/server/modernServer.js +102 -130
- package/dist/esm-node/server/modernServerSplit.js +1 -4
- package/dist/esm-node/type.js +1 -0
- package/dist/esm-node/utils.js +41 -32
- package/dist/esm-node/workerServer.js +9 -10
- package/dist/types/libs/context/context.d.ts +1 -1
- package/dist/types/server/modernServer.d.ts +1 -1
- package/dist/types/utils.d.ts +1 -1
- package/package.json +12 -8
|
@@ -1,27 +1,32 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
6
|
for (var name in all)
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
-
}
|
|
15
|
-
return to;
|
|
16
|
-
};
|
|
17
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
-
var template_exports = {};
|
|
19
|
-
__export(template_exports, {
|
|
7
|
+
Object.defineProperty(target, name, {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: all[name]
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
_export(exports, {
|
|
20
13
|
TemplateAPI: () => TemplateAPI,
|
|
21
14
|
templateInjectableStream: () => templateInjectableStream
|
|
22
15
|
});
|
|
23
|
-
|
|
24
|
-
|
|
16
|
+
const _stream = require("stream");
|
|
17
|
+
function _define_property(obj, key, value) {
|
|
18
|
+
if (key in obj) {
|
|
19
|
+
Object.defineProperty(obj, key, {
|
|
20
|
+
value,
|
|
21
|
+
enumerable: true,
|
|
22
|
+
configurable: true,
|
|
23
|
+
writable: true
|
|
24
|
+
});
|
|
25
|
+
} else {
|
|
26
|
+
obj[key] = value;
|
|
27
|
+
}
|
|
28
|
+
return obj;
|
|
29
|
+
}
|
|
25
30
|
const RegList = {
|
|
26
31
|
before: {
|
|
27
32
|
head: "<head>",
|
|
@@ -33,9 +38,6 @@ const RegList = {
|
|
|
33
38
|
}
|
|
34
39
|
};
|
|
35
40
|
class TemplateAPI {
|
|
36
|
-
constructor(content) {
|
|
37
|
-
this.content = content;
|
|
38
|
-
}
|
|
39
41
|
get() {
|
|
40
42
|
return this.content;
|
|
41
43
|
}
|
|
@@ -61,13 +63,12 @@ class TemplateAPI {
|
|
|
61
63
|
replace(reg, text) {
|
|
62
64
|
this.content = this.content.replace(reg, text);
|
|
63
65
|
}
|
|
66
|
+
constructor(content) {
|
|
67
|
+
_define_property(this, "content", void 0);
|
|
68
|
+
this.content = content;
|
|
69
|
+
}
|
|
64
70
|
}
|
|
65
|
-
const templateInjectableStream = ({
|
|
66
|
-
prependHead,
|
|
67
|
-
appendHead,
|
|
68
|
-
prependBody,
|
|
69
|
-
appendBody
|
|
70
|
-
}) => new import_stream.Transform({
|
|
71
|
+
const templateInjectableStream = ({ prependHead, appendHead, prependBody, appendBody }) => new _stream.Transform({
|
|
71
72
|
write(chunk, _, callback) {
|
|
72
73
|
let chunk_str = chunk.toString();
|
|
73
74
|
if (prependHead) {
|
|
@@ -90,8 +91,3 @@ const templateInjectableStream = ({
|
|
|
90
91
|
callback();
|
|
91
92
|
}
|
|
92
93
|
});
|
|
93
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
94
|
-
0 && (module.exports = {
|
|
95
|
-
TemplateAPI,
|
|
96
|
-
templateInjectableStream
|
|
97
|
-
});
|
|
@@ -1,81 +1,90 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __export = (target, all) => {
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
8
6
|
for (var name in all)
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
-
}
|
|
17
|
-
return to;
|
|
18
|
-
};
|
|
19
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
-
mod
|
|
26
|
-
));
|
|
27
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
-
var loadConfig_exports = {};
|
|
29
|
-
__export(loadConfig_exports, {
|
|
7
|
+
Object.defineProperty(target, name, {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: all[name]
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
_export(exports, {
|
|
30
13
|
getServerConfigPath: () => getServerConfigPath,
|
|
31
|
-
|
|
32
|
-
|
|
14
|
+
requireConfig: () => requireConfig,
|
|
15
|
+
loadConfig: () => loadConfig
|
|
33
16
|
});
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
17
|
+
const _path = /* @__PURE__ */ _interop_require_wildcard(require("path"));
|
|
18
|
+
const _utils = require("@modern-js/utils");
|
|
19
|
+
const _mergedeep = /* @__PURE__ */ _interop_require_default(require("merge-deep"));
|
|
20
|
+
function _interop_require_default(obj) {
|
|
21
|
+
return obj && obj.__esModule ? obj : {
|
|
22
|
+
default: obj
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
function _getRequireWildcardCache(nodeInterop) {
|
|
26
|
+
if (typeof WeakMap !== "function")
|
|
27
|
+
return null;
|
|
28
|
+
var cacheBabelInterop = /* @__PURE__ */ new WeakMap();
|
|
29
|
+
var cacheNodeInterop = /* @__PURE__ */ new WeakMap();
|
|
30
|
+
return (_getRequireWildcardCache = function(nodeInterop2) {
|
|
31
|
+
return nodeInterop2 ? cacheNodeInterop : cacheBabelInterop;
|
|
32
|
+
})(nodeInterop);
|
|
33
|
+
}
|
|
34
|
+
function _interop_require_wildcard(obj, nodeInterop) {
|
|
35
|
+
if (!nodeInterop && obj && obj.__esModule) {
|
|
36
|
+
return obj;
|
|
37
|
+
}
|
|
38
|
+
if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
|
|
39
|
+
return {
|
|
40
|
+
default: obj
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
var cache = _getRequireWildcardCache(nodeInterop);
|
|
44
|
+
if (cache && cache.has(obj)) {
|
|
45
|
+
return cache.get(obj);
|
|
46
|
+
}
|
|
47
|
+
var newObj = {};
|
|
48
|
+
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
49
|
+
for (var key in obj) {
|
|
50
|
+
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
51
|
+
var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
|
|
52
|
+
if (desc && (desc.get || desc.set)) {
|
|
53
|
+
Object.defineProperty(newObj, key, desc);
|
|
54
|
+
} else {
|
|
55
|
+
newObj[key] = obj[key];
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
newObj.default = obj;
|
|
60
|
+
if (cache) {
|
|
61
|
+
cache.set(obj, newObj);
|
|
62
|
+
}
|
|
63
|
+
return newObj;
|
|
64
|
+
}
|
|
65
|
+
const getServerConfigPath = (distDirectory, serverConfigFile = _utils.DEFAULT_SERVER_CONFIG) => {
|
|
66
|
+
const serverConfigPath = _path.join(distDirectory, serverConfigFile);
|
|
40
67
|
return `${serverConfigPath}.js`;
|
|
41
68
|
};
|
|
42
69
|
const requireConfig = (serverConfigPath) => {
|
|
43
|
-
if (
|
|
44
|
-
return (0,
|
|
70
|
+
if (_utils.fs.pathExistsSync(serverConfigPath)) {
|
|
71
|
+
return (0, _utils.compatRequire)(serverConfigPath);
|
|
45
72
|
}
|
|
46
73
|
return {};
|
|
47
74
|
};
|
|
48
|
-
const loadConfig = ({
|
|
49
|
-
cliConfig,
|
|
50
|
-
serverConfig,
|
|
51
|
-
resolvedConfigPath
|
|
52
|
-
}) => {
|
|
75
|
+
const loadConfig = ({ cliConfig, serverConfig, resolvedConfigPath }) => {
|
|
53
76
|
let config = null;
|
|
54
77
|
if (process.env.NODE_ENV === "production") {
|
|
55
78
|
const resolvedConfig = requireConfig(resolvedConfigPath);
|
|
56
|
-
config = (0,
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
// filter cli plugins
|
|
61
|
-
},
|
|
62
|
-
serverConfig,
|
|
63
|
-
cliConfig
|
|
64
|
-
);
|
|
79
|
+
config = (0, _mergedeep.default)({
|
|
80
|
+
...resolvedConfig,
|
|
81
|
+
plugins: []
|
|
82
|
+
}, serverConfig, cliConfig);
|
|
65
83
|
} else {
|
|
66
|
-
config = (0,
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
},
|
|
71
|
-
serverConfig
|
|
72
|
-
);
|
|
84
|
+
config = (0, _mergedeep.default)({
|
|
85
|
+
...cliConfig,
|
|
86
|
+
plugins: []
|
|
87
|
+
}, serverConfig);
|
|
73
88
|
}
|
|
74
89
|
return config;
|
|
75
90
|
};
|
|
76
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
77
|
-
0 && (module.exports = {
|
|
78
|
-
getServerConfigPath,
|
|
79
|
-
loadConfig,
|
|
80
|
-
requireConfig
|
|
81
|
-
});
|
package/dist/cjs/libs/logger.js
CHANGED
|
@@ -1,26 +1,31 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
6
|
for (var name in all)
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
-
}
|
|
15
|
-
return to;
|
|
16
|
-
};
|
|
17
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
-
var logger_exports = {};
|
|
19
|
-
__export(logger_exports, {
|
|
7
|
+
Object.defineProperty(target, name, {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: all[name]
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
_export(exports, {
|
|
20
13
|
Logger: () => Logger,
|
|
21
14
|
logger: () => logger
|
|
22
15
|
});
|
|
23
|
-
|
|
16
|
+
function _define_property(obj, key, value) {
|
|
17
|
+
if (key in obj) {
|
|
18
|
+
Object.defineProperty(obj, key, {
|
|
19
|
+
value,
|
|
20
|
+
enumerable: true,
|
|
21
|
+
configurable: true,
|
|
22
|
+
writable: true
|
|
23
|
+
});
|
|
24
|
+
} else {
|
|
25
|
+
obj[key] = value;
|
|
26
|
+
}
|
|
27
|
+
return obj;
|
|
28
|
+
}
|
|
24
29
|
const LOG_LEVEL = {
|
|
25
30
|
error: 0,
|
|
26
31
|
warn: 1,
|
|
@@ -54,25 +59,15 @@ const LOG_TYPES = {
|
|
|
54
59
|
label: "debug",
|
|
55
60
|
level: "debug"
|
|
56
61
|
},
|
|
57
|
-
log: {
|
|
62
|
+
log: {
|
|
63
|
+
level: "log"
|
|
64
|
+
}
|
|
58
65
|
};
|
|
59
66
|
const DEFAULT_CONFIG = {
|
|
60
67
|
displayLabel: true,
|
|
61
68
|
uppercaseLabel: false
|
|
62
69
|
};
|
|
63
70
|
class Logger {
|
|
64
|
-
constructor(options = {}) {
|
|
65
|
-
this.level = options.level || LOG_TYPES.log.level;
|
|
66
|
-
this.config = { ...DEFAULT_CONFIG, ...options.config || {} };
|
|
67
|
-
this.types = {
|
|
68
|
-
...LOG_TYPES,
|
|
69
|
-
...options.types || {}
|
|
70
|
-
};
|
|
71
|
-
this.longestLabel = this.getLongestLabel();
|
|
72
|
-
Object.keys(this.types).forEach((type) => {
|
|
73
|
-
this[type] = this._log.bind(this, type);
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
71
|
_log(type, message, ...args) {
|
|
77
72
|
if (message === void 0 || message === null) {
|
|
78
73
|
console.log();
|
|
@@ -112,11 +107,25 @@ ${rest.join("\n")}`;
|
|
|
112
107
|
});
|
|
113
108
|
return longestLabel;
|
|
114
109
|
}
|
|
110
|
+
constructor(options = {}) {
|
|
111
|
+
_define_property(this, "level", void 0);
|
|
112
|
+
_define_property(this, "config", void 0);
|
|
113
|
+
_define_property(this, "types", void 0);
|
|
114
|
+
_define_property(this, "longestLabel", void 0);
|
|
115
|
+
this.level = options.level || LOG_TYPES.log.level;
|
|
116
|
+
this.config = {
|
|
117
|
+
...DEFAULT_CONFIG,
|
|
118
|
+
...options.config || {}
|
|
119
|
+
};
|
|
120
|
+
this.types = {
|
|
121
|
+
...LOG_TYPES,
|
|
122
|
+
...options.types || {}
|
|
123
|
+
};
|
|
124
|
+
this.longestLabel = this.getLongestLabel();
|
|
125
|
+
Object.keys(this.types).forEach((type) => {
|
|
126
|
+
this[type] = this._log.bind(this, type);
|
|
127
|
+
});
|
|
128
|
+
}
|
|
115
129
|
}
|
|
116
130
|
const logger = new Logger();
|
|
117
131
|
logger.Logger = Logger;
|
|
118
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
119
|
-
0 && (module.exports = {
|
|
120
|
-
Logger,
|
|
121
|
-
logger
|
|
122
|
-
});
|
package/dist/cjs/libs/metrics.js
CHANGED
|
@@ -1,25 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
};
|
|
9
|
-
var __copyProps = (to, from, except, desc) => {
|
|
10
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
-
for (let key of __getOwnPropNames(from))
|
|
12
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
-
}
|
|
15
|
-
return to;
|
|
16
|
-
};
|
|
17
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
-
var metrics_exports = {};
|
|
19
|
-
__export(metrics_exports, {
|
|
20
|
-
metrics: () => metrics
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "metrics", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: () => metrics
|
|
21
8
|
});
|
|
22
|
-
module.exports = __toCommonJS(metrics_exports);
|
|
23
9
|
const metrics = {
|
|
24
10
|
gauges() {
|
|
25
11
|
},
|
|
@@ -28,7 +14,3 @@ const metrics = {
|
|
|
28
14
|
emitTimer() {
|
|
29
15
|
}
|
|
30
16
|
};
|
|
31
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
32
|
-
0 && (module.exports = {
|
|
33
|
-
metrics
|
|
34
|
-
});
|
package/dist/cjs/libs/proxy.js
CHANGED
|
@@ -1,50 +1,38 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
6
|
for (var name in all)
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
return to;
|
|
16
|
-
};
|
|
17
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
-
var proxy_exports = {};
|
|
19
|
-
__export(proxy_exports, {
|
|
20
|
-
createProxyHandler: () => createProxyHandler,
|
|
21
|
-
formatProxyOptions: () => formatProxyOptions
|
|
7
|
+
Object.defineProperty(target, name, {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: all[name]
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
_export(exports, {
|
|
13
|
+
formatProxyOptions: () => formatProxyOptions,
|
|
14
|
+
createProxyHandler: () => createProxyHandler
|
|
22
15
|
});
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
var import_utils = require("../utils");
|
|
16
|
+
const _httpproxymiddleware = require("http-proxy-middleware");
|
|
17
|
+
const _utils = require("../utils");
|
|
26
18
|
function formatProxyOptions(proxyOptions) {
|
|
27
19
|
const formattedProxy = [];
|
|
28
20
|
if (!Array.isArray(proxyOptions)) {
|
|
29
21
|
if ("target" in proxyOptions) {
|
|
30
22
|
formattedProxy.push(proxyOptions);
|
|
31
23
|
} else {
|
|
32
|
-
Array.prototype.push.apply(
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
},
|
|
45
|
-
[]
|
|
46
|
-
)
|
|
47
|
-
);
|
|
24
|
+
Array.prototype.push.apply(formattedProxy, Object.keys(proxyOptions).reduce((total, source) => {
|
|
25
|
+
const option = proxyOptions[source];
|
|
26
|
+
total.push({
|
|
27
|
+
context: source,
|
|
28
|
+
changeOrigin: true,
|
|
29
|
+
logLevel: "warn",
|
|
30
|
+
...typeof option === "string" ? {
|
|
31
|
+
target: option
|
|
32
|
+
} : option
|
|
33
|
+
});
|
|
34
|
+
return total;
|
|
35
|
+
}, []));
|
|
48
36
|
}
|
|
49
37
|
} else {
|
|
50
38
|
formattedProxy.push(...proxyOptions);
|
|
@@ -52,13 +40,13 @@ function formatProxyOptions(proxyOptions) {
|
|
|
52
40
|
return formattedProxy;
|
|
53
41
|
}
|
|
54
42
|
const createProxyHandler = (proxyOptions) => {
|
|
55
|
-
(0,
|
|
43
|
+
(0, _utils.debug)("createProxyHandler", proxyOptions);
|
|
56
44
|
if (!proxyOptions) {
|
|
57
45
|
return null;
|
|
58
46
|
}
|
|
59
47
|
const formattedProxy = formatProxyOptions(proxyOptions);
|
|
60
48
|
const middlewares = formattedProxy.map((option) => {
|
|
61
|
-
const middleware = (0,
|
|
49
|
+
const middleware = (0, _httpproxymiddleware.createProxyMiddleware)(option.context, option);
|
|
62
50
|
return async (ctx, next) => {
|
|
63
51
|
const { req, res } = ctx;
|
|
64
52
|
const bypassUrl = typeof option.bypass === "function" ? option.bypass(req, res, option) : null;
|
|
@@ -74,8 +62,3 @@ const createProxyHandler = (proxyOptions) => {
|
|
|
74
62
|
});
|
|
75
63
|
return middlewares;
|
|
76
64
|
};
|
|
77
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
78
|
-
0 && (module.exports = {
|
|
79
|
-
createProxyHandler,
|
|
80
|
-
formatProxyOptions
|
|
81
|
-
});
|
|
@@ -1,75 +1,63 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
return to;
|
|
14
|
-
};
|
|
15
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
16
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
17
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
18
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
19
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
20
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
21
|
-
mod
|
|
22
|
-
));
|
|
23
|
-
var import_url = __toESM(require("url"));
|
|
24
|
-
var import_spr = require("../spr");
|
|
25
|
-
var import_util = require("../util");
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
const _url = /* @__PURE__ */ _interop_require_default(require("url"));
|
|
6
|
+
const _spr = require("../spr");
|
|
7
|
+
const _util = require("../util");
|
|
8
|
+
function _interop_require_default(obj) {
|
|
9
|
+
return obj && obj.__esModule ? obj : {
|
|
10
|
+
default: obj
|
|
11
|
+
};
|
|
12
|
+
}
|
|
26
13
|
describe("test spr util functions", () => {
|
|
27
14
|
it("should return value correctly", () => {
|
|
28
|
-
expect((0,
|
|
29
|
-
expect((0,
|
|
30
|
-
expect((0,
|
|
15
|
+
expect((0, _util.connectFactor)("bar", "foo")).toBe("bar-foo");
|
|
16
|
+
expect((0, _util.fname)(1)).toBe("f1");
|
|
17
|
+
expect((0, _util.namespaceHash)("modern", "!@#$%^&")).toBe("modern/!@#$%^&");
|
|
31
18
|
});
|
|
32
19
|
it("should create or destroy instance correctly", () => {
|
|
33
|
-
const ins1 = (0,
|
|
34
|
-
const ins2 = (0,
|
|
20
|
+
const ins1 = (0, _spr.createCache)();
|
|
21
|
+
const ins2 = (0, _spr.createCache)();
|
|
35
22
|
expect(ins1 === ins2).toBe(true);
|
|
36
|
-
(0,
|
|
37
|
-
const ins3 = (0,
|
|
23
|
+
(0, _spr.destroyCache)();
|
|
24
|
+
const ins3 = (0, _spr.createCache)();
|
|
38
25
|
expect(ins1 === ins3).toBe(false);
|
|
39
26
|
expect(ins2 === ins3).toBe(false);
|
|
40
27
|
});
|
|
41
28
|
it("should return function correctly", () => {
|
|
42
|
-
const urlParams = (() => new
|
|
29
|
+
const urlParams = (() => new _url.default.URLSearchParams())();
|
|
43
30
|
urlParams.set("name", "modern");
|
|
44
|
-
const getParam = (0,
|
|
31
|
+
const getParam = (0, _util.valueFactory)(urlParams);
|
|
45
32
|
expect(getParam("name")).toBe("modern");
|
|
46
|
-
const headers = {
|
|
47
|
-
|
|
33
|
+
const headers = {
|
|
34
|
+
age: "12345"
|
|
35
|
+
};
|
|
36
|
+
const getHeader = (0, _util.valueFactory)(headers);
|
|
48
37
|
expect(getHeader("age")).toBe("12345");
|
|
49
38
|
});
|
|
50
39
|
it("should add target html content", () => {
|
|
51
40
|
const contentNoHead = "<div>123</div>";
|
|
52
|
-
const html = (0,
|
|
41
|
+
const html = (0, _util.cacheAddition)(contentNoHead, Math.random().toString());
|
|
53
42
|
expect(html).toBe(contentNoHead);
|
|
54
43
|
const contentWithHead = "<head></head><div>123</div>";
|
|
55
44
|
const hash = Math.random().toString();
|
|
56
|
-
const htmlWithHead = (0,
|
|
57
|
-
expect(htmlWithHead).toBe(
|
|
58
|
-
`<head><meta name="x-moden-spr" content="${hash}"></head><div>123</div>`
|
|
59
|
-
);
|
|
45
|
+
const htmlWithHead = (0, _util.cacheAddition)(contentWithHead, hash);
|
|
46
|
+
expect(htmlWithHead).toBe(`<head><meta name="x-moden-spr" content="${hash}"></head><div>123</div>`);
|
|
60
47
|
});
|
|
61
48
|
it("should only invoke func one time", async () => {
|
|
62
49
|
let index = 0;
|
|
63
|
-
const fn = (0,
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
})
|
|
70
|
-
);
|
|
50
|
+
const fn = (0, _util.withCoalescedInvoke)(async () => new Promise((resolve) => {
|
|
51
|
+
setTimeout(() => {
|
|
52
|
+
index += 1;
|
|
53
|
+
resolve(index);
|
|
54
|
+
}, 500);
|
|
55
|
+
}));
|
|
71
56
|
const key = "test";
|
|
72
|
-
const [res1, res2] = await Promise.all([
|
|
57
|
+
const [res1, res2] = await Promise.all([
|
|
58
|
+
fn(key, []),
|
|
59
|
+
fn(key, [])
|
|
60
|
+
]);
|
|
73
61
|
expect(res1.isOrigin && res2.isOrigin).toBe(false);
|
|
74
62
|
expect(res1.isOrigin || res2.isOrigin).toBe(true);
|
|
75
63
|
expect(res1.value).toBe(1);
|
|
@@ -77,21 +65,17 @@ describe("test spr util functions", () => {
|
|
|
77
65
|
});
|
|
78
66
|
it("should invoke sync or async", async () => {
|
|
79
67
|
const foo = "";
|
|
80
|
-
const async = await (0,
|
|
81
|
-
(
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
})
|
|
86
|
-
)(false);
|
|
68
|
+
const async = await (0, _util.maybeSync)(() => new Promise((resolve) => {
|
|
69
|
+
setTimeout(() => {
|
|
70
|
+
resolve(foo);
|
|
71
|
+
}, 100);
|
|
72
|
+
}))(false);
|
|
87
73
|
expect(async).toBeUndefined();
|
|
88
|
-
const sync = await (0,
|
|
89
|
-
(
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
})
|
|
94
|
-
)(true);
|
|
74
|
+
const sync = await (0, _util.maybeSync)(() => new Promise((resolve) => {
|
|
75
|
+
setTimeout(() => {
|
|
76
|
+
resolve(foo);
|
|
77
|
+
}, 100);
|
|
78
|
+
}))(true);
|
|
95
79
|
expect(sync).toBe(foo);
|
|
96
80
|
});
|
|
97
81
|
});
|