@modern-js/plugin-server 2.14.0 → 2.16.0

Sign up to get free protection for your applications and to get access to all the features.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,26 @@
1
1
  # @modern-js/plugin-server
2
2
 
3
+ ## 2.16.0
4
+
5
+ ### Patch Changes
6
+
7
+ - 4e876ab: chore: package.json include the monorepo-relative directory
8
+
9
+ chore: 在 package.json 中声明 monorepo 的子路径
10
+
11
+ - Updated dependencies [5954330]
12
+ - Updated dependencies [7596520]
13
+ - Updated dependencies [4e876ab]
14
+ - @modern-js/utils@2.16.0
15
+ - @modern-js/server-utils@2.16.0
16
+
17
+ ## 2.15.0
18
+
19
+ ### Patch Changes
20
+
21
+ - @modern-js/server-utils@2.15.0
22
+ - @modern-js/utils@2.15.0
23
+
3
24
  ## 2.14.0
4
25
 
5
26
  ### Patch Changes
package/dist/cjs/cli.js CHANGED
@@ -1,41 +1,22 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
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 cli_exports = {};
29
- __export(cli_exports, {
30
- default: () => cli_default
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
31
4
  });
32
- module.exports = __toCommonJS(cli_exports);
33
- var import_fs = __toESM(require("fs"));
34
- var import_path = __toESM(require("path"));
35
- var import_server_utils = require("@modern-js/server-utils");
36
- var import_utils = require("@modern-js/utils");
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: () => _default
8
+ });
9
+ const _fs = /* @__PURE__ */ _interop_require_default(require("fs"));
10
+ const _path = /* @__PURE__ */ _interop_require_default(require("path"));
11
+ const _serverutils = require("@modern-js/server-utils");
12
+ const _utils = require("@modern-js/utils");
13
+ function _interop_require_default(obj) {
14
+ return obj && obj.__esModule ? obj : {
15
+ default: obj
16
+ };
17
+ }
37
18
  const TS_CONFIG_FILENAME = "tsconfig.json";
38
- var cli_default = () => ({
19
+ const _default = () => ({
39
20
  name: "@modern-js/plugin-server",
40
21
  setup: (api) => ({
41
22
  config() {
@@ -44,43 +25,39 @@ var cli_default = () => ({
44
25
  async afterBuild() {
45
26
  const { appDirectory, distDirectory } = api.useAppContext();
46
27
  const modernConfig = api.useResolvedConfigContext();
47
- const distDir = import_path.default.resolve(distDirectory);
48
- const serverDir = import_path.default.resolve(appDirectory, import_utils.SERVER_DIR);
49
- const sharedDir = import_path.default.resolve(appDirectory, import_utils.SHARED_DIR);
50
- const tsconfigPath = import_path.default.resolve(appDirectory, TS_CONFIG_FILENAME);
28
+ const distDir = _path.default.resolve(distDirectory);
29
+ const serverDir = _path.default.resolve(appDirectory, _utils.SERVER_DIR);
30
+ const sharedDir = _path.default.resolve(appDirectory, _utils.SHARED_DIR);
31
+ const tsconfigPath = _path.default.resolve(appDirectory, TS_CONFIG_FILENAME);
51
32
  const sourceDirs = [];
52
- if (import_fs.default.existsSync(serverDir)) {
33
+ if (_fs.default.existsSync(serverDir)) {
53
34
  sourceDirs.push(serverDir);
54
35
  }
55
- if (import_fs.default.existsSync(sharedDir)) {
36
+ if (_fs.default.existsSync(sharedDir)) {
56
37
  sourceDirs.push(sharedDir);
57
38
  }
58
39
  const { server } = modernConfig;
59
40
  const { alias } = modernConfig.source;
60
41
  const { babel } = modernConfig.tools;
61
42
  if (sourceDirs.length > 0) {
62
- await (0, import_server_utils.compile)(
63
- appDirectory,
64
- {
65
- server,
66
- alias,
67
- babelConfig: babel
68
- },
69
- {
70
- sourceDirs,
71
- distDir,
72
- tsconfigPath
73
- }
74
- );
43
+ await (0, _serverutils.compile)(appDirectory, {
44
+ server,
45
+ alias,
46
+ babelConfig: babel
47
+ }, {
48
+ sourceDirs,
49
+ distDir,
50
+ tsconfigPath
51
+ });
75
52
  }
76
53
  },
77
54
  collectServerPlugins({ plugins }) {
78
55
  plugins.push({
79
56
  "@modern-js/plugin-server": "@modern-js/plugin-server/server"
80
57
  });
81
- return { plugins };
58
+ return {
59
+ plugins
60
+ };
82
61
  }
83
62
  })
84
63
  });
85
- // Annotate the CommonJS export names for ESM import in node:
86
- 0 && (module.exports = {});
@@ -1,97 +1,86 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
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 server_exports = {};
29
- __export(server_exports, {
30
- default: () => server_default
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
31
4
  });
32
- module.exports = __toCommonJS(server_exports);
33
- var import_path = __toESM(require("path"));
34
- var import_utils = require("@modern-js/utils");
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: () => _default
8
+ });
9
+ const _path = /* @__PURE__ */ _interop_require_default(require("path"));
10
+ const _utils = require("@modern-js/utils");
11
+ function _define_property(obj, key, value) {
12
+ if (key in obj) {
13
+ Object.defineProperty(obj, key, {
14
+ value,
15
+ enumerable: true,
16
+ configurable: true,
17
+ writable: true
18
+ });
19
+ } else {
20
+ obj[key] = value;
21
+ }
22
+ return obj;
23
+ }
24
+ function _interop_require_default(obj) {
25
+ return obj && obj.__esModule ? obj : {
26
+ default: obj
27
+ };
28
+ }
35
29
  const WEB_APP_NAME = "index";
36
- var HOOKS = /* @__PURE__ */ ((HOOKS2) => {
30
+ var HOOKS;
31
+ (function(HOOKS2) {
37
32
  HOOKS2["AFTER_MATCH"] = "afterMatch";
38
33
  HOOKS2["AFTER_RENDER"] = "afterRender";
39
- return HOOKS2;
40
- })(HOOKS || {});
34
+ })(HOOKS || (HOOKS = {}));
41
35
  class Storage {
42
- constructor() {
43
- this.middlewares = [];
44
- this.hooks = {};
45
- }
46
36
  reset() {
47
37
  this.middlewares = [];
48
38
  this.hooks = {};
49
39
  }
40
+ constructor() {
41
+ _define_property(this, "middlewares", []);
42
+ _define_property(this, "hooks", {});
43
+ }
50
44
  }
51
- const createTransformAPI = (storage) => new Proxy(
52
- {},
53
- {
54
- get(target, name) {
55
- if (name === "addMiddleware") {
56
- return (fn) => storage.middlewares.push(fn);
57
- }
58
- return (fn) => {
59
- import_utils.logger.warn(
60
- "declare hook in default export is to be deprecated, use named export instead"
61
- );
62
- storage.hooks[name] = fn;
63
- };
45
+ const createTransformAPI = (storage) => new Proxy({}, {
46
+ get(target, name) {
47
+ if (name === "addMiddleware") {
48
+ return (fn) => storage.middlewares.push(fn);
64
49
  }
50
+ return (fn) => {
51
+ _utils.logger.warn("declare hook in default export is to be deprecated, use named export instead");
52
+ storage.hooks[name] = fn;
53
+ };
65
54
  }
66
- );
55
+ });
67
56
  const compose = (middlewares) => {
68
57
  return (ctx, resolve, reject) => {
69
58
  let i = 0;
70
59
  const dispatch = () => {
71
- var _a, _b;
60
+ var _handler, _handler_catch;
72
61
  const handler = middlewares[i++];
73
62
  if (!handler) {
74
63
  return resolve();
75
64
  }
76
- return (_b = (_a = handler(ctx, dispatch)) == null ? void 0 : _a.catch) == null ? void 0 : _b.call(_a, reject);
65
+ return (_handler = handler(ctx, dispatch)) === null || _handler === void 0 ? void 0 : (_handler_catch = _handler.catch) === null || _handler_catch === void 0 ? void 0 : _handler_catch.call(_handler, reject);
77
66
  };
78
67
  return dispatch;
79
68
  };
80
69
  };
81
- var server_default = () => ({
70
+ const _default = () => ({
82
71
  name: "@modern-js/plugin-server",
83
72
  setup: (api) => {
84
73
  const { appDirectory, distDirectory } = api.useAppContext();
85
74
  const storage = new Storage();
86
75
  const transformAPI = createTransformAPI(storage);
87
- const pwd = (0, import_utils.isProd)() ? distDirectory : appDirectory;
88
- const webAppPath = import_path.default.resolve(pwd, import_utils.SERVER_DIR, WEB_APP_NAME);
89
- const middlewarePath = import_path.default.resolve(pwd, import_utils.SERVER_DIR, "_middleware");
76
+ const pwd = (0, _utils.isProd)() ? distDirectory : appDirectory;
77
+ const webAppPath = _path.default.resolve(pwd, _utils.SERVER_DIR, WEB_APP_NAME);
78
+ const middlewarePath = _path.default.resolve(pwd, _utils.SERVER_DIR, "_middleware");
90
79
  const loadMod = () => {
91
- const mod = (0, import_utils.requireExistModule)(webAppPath, {
80
+ const mod = (0, _utils.requireExistModule)(webAppPath, {
92
81
  interop: false
93
82
  });
94
- const middlewareMode = (0, import_utils.requireExistModule)(middlewarePath, {
83
+ const middlewareMode = (0, _utils.requireExistModule)(middlewarePath, {
95
84
  interop: false
96
85
  });
97
86
  const { default: defaultExports, middleware, ...hooks } = mod || {};
@@ -139,9 +128,7 @@ var server_default = () => ({
139
128
  const { middleware } = config;
140
129
  const factory = compose(middleware);
141
130
  return (ctx) => {
142
- const {
143
- source: { res }
144
- } = ctx;
131
+ const { source: { res } } = ctx;
145
132
  return new Promise((resolve, reject) => {
146
133
  res.on("finish", (err) => {
147
134
  if (err) {
@@ -157,5 +144,3 @@ var server_default = () => ({
157
144
  };
158
145
  }
159
146
  });
160
- // Annotate the CommonJS export names for ESM import in node:
161
- 0 && (module.exports = {});
package/dist/esm/cli.js CHANGED
@@ -1,200 +1,208 @@
1
1
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
2
- try {
3
- var info = gen[key](arg);
4
- var value = info.value;
5
- } catch (error) {
6
- reject(error);
7
- return;
8
- }
9
- if (info.done) {
10
- resolve(value);
11
- } else {
12
- Promise.resolve(value).then(_next, _throw);
13
- }
2
+ try {
3
+ var info = gen[key](arg);
4
+ var value = info.value;
5
+ } catch (error) {
6
+ reject(error);
7
+ return;
8
+ }
9
+ if (info.done) {
10
+ resolve(value);
11
+ } else {
12
+ Promise.resolve(value).then(_next, _throw);
13
+ }
14
14
  }
15
- function _asyncToGenerator(fn) {
16
- return function() {
17
- var self = this, args = arguments;
18
- return new Promise(function(resolve, reject) {
19
- var gen = fn.apply(self, args);
20
- function _next(value) {
21
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
22
- }
23
- function _throw(err) {
24
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
25
- }
26
- _next(undefined);
27
- });
28
- };
15
+ function _async_to_generator(fn) {
16
+ return function() {
17
+ var self = this, args = arguments;
18
+ return new Promise(function(resolve, reject) {
19
+ var gen = fn.apply(self, args);
20
+ function _next(value) {
21
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
22
+ }
23
+ function _throw(err) {
24
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
25
+ }
26
+ _next(void 0);
27
+ });
28
+ };
29
29
  }
30
- var __generator = this && this.__generator || function(thisArg, body) {
31
- var f, y, t, g, _ = {
32
- label: 0,
33
- sent: function() {
34
- if (t[0] & 1) throw t[1];
35
- return t[1];
36
- },
37
- trys: [],
38
- ops: []
30
+ var __generator = function(thisArg, body) {
31
+ var f, y, t, g, _ = {
32
+ label: 0,
33
+ sent: function() {
34
+ if (t[0] & 1)
35
+ throw t[1];
36
+ return t[1];
37
+ },
38
+ trys: [],
39
+ ops: []
40
+ };
41
+ return g = {
42
+ next: verb(0),
43
+ "throw": verb(1),
44
+ "return": verb(2)
45
+ }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
46
+ return this;
47
+ }), g;
48
+ function verb(n) {
49
+ return function(v) {
50
+ return step([
51
+ n,
52
+ v
53
+ ]);
39
54
  };
40
- return g = {
41
- next: verb(0),
42
- "throw": verb(1),
43
- "return": verb(2)
44
- }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
45
- return this;
46
- }), g;
47
- function verb(n) {
48
- return function(v) {
49
- return step([
50
- n,
51
- v
52
- ]);
53
- };
54
- }
55
- function step(op) {
56
- if (f) throw new TypeError("Generator is already executing.");
57
- while(_)try {
58
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
59
- if (y = 0, t) op = [
60
- op[0] & 2,
61
- t.value
62
- ];
63
- switch(op[0]){
64
- case 0:
65
- case 1:
66
- t = op;
67
- break;
68
- case 4:
69
- _.label++;
70
- return {
71
- value: op[1],
72
- done: false
73
- };
74
- case 5:
75
- _.label++;
76
- y = op[1];
77
- op = [
78
- 0
79
- ];
80
- continue;
81
- case 7:
82
- op = _.ops.pop();
83
- _.trys.pop();
84
- continue;
85
- default:
86
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
87
- _ = 0;
88
- continue;
89
- }
90
- if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
91
- _.label = op[1];
92
- break;
93
- }
94
- if (op[0] === 6 && _.label < t[1]) {
95
- _.label = t[1];
96
- t = op;
97
- break;
98
- }
99
- if (t && _.label < t[2]) {
100
- _.label = t[2];
101
- _.ops.push(op);
102
- break;
103
- }
104
- if (t[2]) _.ops.pop();
105
- _.trys.pop();
106
- continue;
107
- }
108
- op = body.call(thisArg, _);
109
- } catch (e) {
55
+ }
56
+ function step(op) {
57
+ if (f)
58
+ throw new TypeError("Generator is already executing.");
59
+ while (_)
60
+ try {
61
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
62
+ return t;
63
+ if (y = 0, t)
64
+ op = [
65
+ op[0] & 2,
66
+ t.value
67
+ ];
68
+ switch (op[0]) {
69
+ case 0:
70
+ case 1:
71
+ t = op;
72
+ break;
73
+ case 4:
74
+ _.label++;
75
+ return {
76
+ value: op[1],
77
+ done: false
78
+ };
79
+ case 5:
80
+ _.label++;
81
+ y = op[1];
110
82
  op = [
111
- 6,
112
- e
83
+ 0
113
84
  ];
114
- y = 0;
115
- } finally{
116
- f = t = 0;
85
+ continue;
86
+ case 7:
87
+ op = _.ops.pop();
88
+ _.trys.pop();
89
+ continue;
90
+ default:
91
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
92
+ _ = 0;
93
+ continue;
94
+ }
95
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
96
+ _.label = op[1];
97
+ break;
98
+ }
99
+ if (op[0] === 6 && _.label < t[1]) {
100
+ _.label = t[1];
101
+ t = op;
102
+ break;
103
+ }
104
+ if (t && _.label < t[2]) {
105
+ _.label = t[2];
106
+ _.ops.push(op);
107
+ break;
108
+ }
109
+ if (t[2])
110
+ _.ops.pop();
111
+ _.trys.pop();
112
+ continue;
117
113
  }
118
- if (op[0] & 5) throw op[1];
119
- return {
120
- value: op[0] ? op[1] : void 0,
121
- done: true
122
- };
123
- }
114
+ op = body.call(thisArg, _);
115
+ } catch (e) {
116
+ op = [
117
+ 6,
118
+ e
119
+ ];
120
+ y = 0;
121
+ } finally {
122
+ f = t = 0;
123
+ }
124
+ if (op[0] & 5)
125
+ throw op[1];
126
+ return {
127
+ value: op[0] ? op[1] : void 0,
128
+ done: true
129
+ };
130
+ }
124
131
  };
125
132
  import fs from "fs";
126
133
  import path from "path";
127
134
  import { compile } from "@modern-js/server-utils";
128
135
  import { SHARED_DIR, SERVER_DIR } from "@modern-js/utils";
129
136
  var TS_CONFIG_FILENAME = "tsconfig.json";
130
- var cli_default = function() {
131
- return {
132
- name: "@modern-js/plugin-server",
133
- setup: function(api) {
134
- return {
135
- config: function config() {
136
- return {};
137
- },
138
- afterBuild: function afterBuild() {
139
- return _asyncToGenerator(function() {
140
- var _api_useAppContext, appDirectory, distDirectory, modernConfig, distDir, serverDir, sharedDir, tsconfigPath, sourceDirs, server, alias, babel;
141
- return __generator(this, function(_state) {
142
- switch(_state.label){
143
- case 0:
144
- _api_useAppContext = api.useAppContext(), appDirectory = _api_useAppContext.appDirectory, distDirectory = _api_useAppContext.distDirectory;
145
- modernConfig = api.useResolvedConfigContext();
146
- distDir = path.resolve(distDirectory);
147
- serverDir = path.resolve(appDirectory, SERVER_DIR);
148
- sharedDir = path.resolve(appDirectory, SHARED_DIR);
149
- tsconfigPath = path.resolve(appDirectory, TS_CONFIG_FILENAME);
150
- sourceDirs = [];
151
- if (fs.existsSync(serverDir)) {
152
- sourceDirs.push(serverDir);
153
- }
154
- if (fs.existsSync(sharedDir)) {
155
- sourceDirs.push(sharedDir);
156
- }
157
- server = modernConfig.server;
158
- alias = modernConfig.source.alias;
159
- babel = modernConfig.tools.babel;
160
- if (!(sourceDirs.length > 0)) return [
161
- 3,
162
- 2
163
- ];
164
- return [
165
- 4,
166
- compile(appDirectory, {
167
- server: server,
168
- alias: alias,
169
- babelConfig: babel
170
- }, {
171
- sourceDirs: sourceDirs,
172
- distDir: distDir,
173
- tsconfigPath: tsconfigPath
174
- })
175
- ];
176
- case 1:
177
- _state.sent();
178
- _state.label = 2;
179
- case 2:
180
- return [
181
- 2
182
- ];
183
- }
184
- });
185
- })();
186
- },
187
- collectServerPlugins: function collectServerPlugins(param) {
188
- var plugins = param.plugins;
189
- plugins.push({
190
- "@modern-js/plugin-server": "@modern-js/plugin-server/server"
191
- });
192
- return {
193
- plugins: plugins
194
- };
195
- }
196
- };
137
+ export default function() {
138
+ return {
139
+ name: "@modern-js/plugin-server",
140
+ setup: function(api) {
141
+ return {
142
+ config: function config() {
143
+ return {};
144
+ },
145
+ afterBuild: function afterBuild() {
146
+ return _async_to_generator(function() {
147
+ var _api_useAppContext, appDirectory, distDirectory, modernConfig, distDir, serverDir, sharedDir, tsconfigPath, sourceDirs, server, alias, babel;
148
+ return __generator(this, function(_state) {
149
+ switch (_state.label) {
150
+ case 0:
151
+ _api_useAppContext = api.useAppContext(), appDirectory = _api_useAppContext.appDirectory, distDirectory = _api_useAppContext.distDirectory;
152
+ modernConfig = api.useResolvedConfigContext();
153
+ distDir = path.resolve(distDirectory);
154
+ serverDir = path.resolve(appDirectory, SERVER_DIR);
155
+ sharedDir = path.resolve(appDirectory, SHARED_DIR);
156
+ tsconfigPath = path.resolve(appDirectory, TS_CONFIG_FILENAME);
157
+ sourceDirs = [];
158
+ if (fs.existsSync(serverDir)) {
159
+ sourceDirs.push(serverDir);
160
+ }
161
+ if (fs.existsSync(sharedDir)) {
162
+ sourceDirs.push(sharedDir);
163
+ }
164
+ server = modernConfig.server;
165
+ alias = modernConfig.source.alias;
166
+ babel = modernConfig.tools.babel;
167
+ if (!(sourceDirs.length > 0))
168
+ return [
169
+ 3,
170
+ 2
171
+ ];
172
+ return [
173
+ 4,
174
+ compile(appDirectory, {
175
+ server,
176
+ alias,
177
+ babelConfig: babel
178
+ }, {
179
+ sourceDirs,
180
+ distDir,
181
+ tsconfigPath
182
+ })
183
+ ];
184
+ case 1:
185
+ _state.sent();
186
+ _state.label = 2;
187
+ case 2:
188
+ return [
189
+ 2
190
+ ];
191
+ }
192
+ });
193
+ })();
194
+ },
195
+ collectServerPlugins: function collectServerPlugins(param) {
196
+ var plugins = param.plugins;
197
+ plugins.push({
198
+ "@modern-js/plugin-server": "@modern-js/plugin-server/server"
199
+ });
200
+ return {
201
+ plugins
202
+ };
197
203
  }
198
- };
199
- };
200
- export { cli_default as default };
204
+ };
205
+ }
206
+ };
207
+ }
208
+ ;
@@ -1,199 +1,207 @@
1
- function _classCallCheck(instance, Constructor) {
2
- if (!(instance instanceof Constructor)) {
3
- throw new TypeError("Cannot call a class as a function");
4
- }
1
+ function _class_call_check(instance, Constructor) {
2
+ if (!(instance instanceof Constructor)) {
3
+ throw new TypeError("Cannot call a class as a function");
4
+ }
5
5
  }
6
6
  function _defineProperties(target, props) {
7
- for(var i = 0; i < props.length; i++){
8
- var descriptor = props[i];
9
- descriptor.enumerable = descriptor.enumerable || false;
10
- descriptor.configurable = true;
11
- if ("value" in descriptor) descriptor.writable = true;
12
- Object.defineProperty(target, descriptor.key, descriptor);
13
- }
7
+ for (var i = 0; i < props.length; i++) {
8
+ var descriptor = props[i];
9
+ descriptor.enumerable = descriptor.enumerable || false;
10
+ descriptor.configurable = true;
11
+ if ("value" in descriptor)
12
+ descriptor.writable = true;
13
+ Object.defineProperty(target, descriptor.key, descriptor);
14
+ }
14
15
  }
15
- function _createClass(Constructor, protoProps, staticProps) {
16
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
17
- if (staticProps) _defineProperties(Constructor, staticProps);
18
- return Constructor;
16
+ function _create_class(Constructor, protoProps, staticProps) {
17
+ if (protoProps)
18
+ _defineProperties(Constructor.prototype, protoProps);
19
+ if (staticProps)
20
+ _defineProperties(Constructor, staticProps);
21
+ return Constructor;
19
22
  }
20
- function _defineProperty(obj, key, value) {
21
- if (key in obj) {
22
- Object.defineProperty(obj, key, {
23
- value: value,
24
- enumerable: true,
25
- configurable: true,
26
- writable: true
27
- });
28
- } else {
29
- obj[key] = value;
30
- }
31
- return obj;
23
+ function _define_property(obj, key, value) {
24
+ if (key in obj) {
25
+ Object.defineProperty(obj, key, {
26
+ value,
27
+ enumerable: true,
28
+ configurable: true,
29
+ writable: true
30
+ });
31
+ } else {
32
+ obj[key] = value;
33
+ }
34
+ return obj;
32
35
  }
33
- function _objectWithoutProperties(source, excluded) {
34
- if (source == null) return {};
35
- var target = _objectWithoutPropertiesLoose(source, excluded);
36
- var key, i;
37
- if (Object.getOwnPropertySymbols) {
38
- var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
39
- for(i = 0; i < sourceSymbolKeys.length; i++){
40
- key = sourceSymbolKeys[i];
41
- if (excluded.indexOf(key) >= 0) continue;
42
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
43
- target[key] = source[key];
44
- }
36
+ function _object_without_properties(source, excluded) {
37
+ if (source == null)
38
+ return {};
39
+ var target = _object_without_properties_loose(source, excluded);
40
+ var key, i;
41
+ if (Object.getOwnPropertySymbols) {
42
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
43
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
44
+ key = sourceSymbolKeys[i];
45
+ if (excluded.indexOf(key) >= 0)
46
+ continue;
47
+ if (!Object.prototype.propertyIsEnumerable.call(source, key))
48
+ continue;
49
+ target[key] = source[key];
45
50
  }
46
- return target;
51
+ }
52
+ return target;
47
53
  }
48
- function _objectWithoutPropertiesLoose(source, excluded) {
49
- if (source == null) return {};
50
- var target = {};
51
- var sourceKeys = Object.keys(source);
52
- var key, i;
53
- for(i = 0; i < sourceKeys.length; i++){
54
- key = sourceKeys[i];
55
- if (excluded.indexOf(key) >= 0) continue;
56
- target[key] = source[key];
57
- }
58
- return target;
54
+ function _object_without_properties_loose(source, excluded) {
55
+ if (source == null)
56
+ return {};
57
+ var target = {};
58
+ var sourceKeys = Object.keys(source);
59
+ var key, i;
60
+ for (i = 0; i < sourceKeys.length; i++) {
61
+ key = sourceKeys[i];
62
+ if (excluded.indexOf(key) >= 0)
63
+ continue;
64
+ target[key] = source[key];
65
+ }
66
+ return target;
59
67
  }
60
68
  import path from "path";
61
69
  import { isProd, logger, requireExistModule, SERVER_DIR } from "@modern-js/utils";
62
70
  var WEB_APP_NAME = "index";
63
- var HOOKS = /* @__PURE__ */ function(HOOKS2) {
64
- HOOKS2["AFTER_MATCH"] = "afterMatch";
65
- HOOKS2["AFTER_RENDER"] = "afterRender";
66
- return HOOKS2;
67
- }(HOOKS || {});
68
- var Storage = /*#__PURE__*/ function() {
69
- "use strict";
70
- function Storage() {
71
- _classCallCheck(this, Storage);
72
- _defineProperty(this, "middlewares", []);
73
- _defineProperty(this, "hooks", {});
71
+ var HOOKS;
72
+ (function(HOOKS2) {
73
+ HOOKS2["AFTER_MATCH"] = "afterMatch";
74
+ HOOKS2["AFTER_RENDER"] = "afterRender";
75
+ })(HOOKS || (HOOKS = {}));
76
+ var Storage = /* @__PURE__ */ function() {
77
+ "use strict";
78
+ function Storage2() {
79
+ _class_call_check(this, Storage2);
80
+ _define_property(this, "middlewares", []);
81
+ _define_property(this, "hooks", {});
82
+ }
83
+ _create_class(Storage2, [
84
+ {
85
+ key: "reset",
86
+ value: function reset() {
87
+ this.middlewares = [];
88
+ this.hooks = {};
89
+ }
74
90
  }
75
- _createClass(Storage, [
76
- {
77
- key: "reset",
78
- value: function reset() {
79
- this.middlewares = [];
80
- this.hooks = {};
81
- }
82
- }
83
- ]);
84
- return Storage;
91
+ ]);
92
+ return Storage2;
85
93
  }();
86
94
  var createTransformAPI = function(storage) {
87
- return new Proxy({}, {
88
- get: function get(target, name) {
89
- if (name === "addMiddleware") {
90
- return function(fn) {
91
- return storage.middlewares.push(fn);
92
- };
93
- }
94
- return function(fn) {
95
- logger.warn("declare hook in default export is to be deprecated, use named export instead");
96
- storage.hooks[name] = fn;
97
- };
98
- }
99
- });
95
+ return new Proxy({}, {
96
+ get: function get(target, name) {
97
+ if (name === "addMiddleware") {
98
+ return function(fn) {
99
+ return storage.middlewares.push(fn);
100
+ };
101
+ }
102
+ return function(fn) {
103
+ logger.warn("declare hook in default export is to be deprecated, use named export instead");
104
+ storage.hooks[name] = fn;
105
+ };
106
+ }
107
+ });
100
108
  };
101
109
  var compose = function(middlewares) {
102
- return function(ctx, resolve, reject) {
103
- var i = 0;
104
- var dispatch = function() {
105
- var _handler, _handler_catch;
106
- var handler = middlewares[i++];
107
- if (!handler) {
108
- return resolve();
109
- }
110
- return (_handler = handler(ctx, dispatch)) === null || _handler === void 0 ? void 0 : (_handler_catch = _handler.catch) === null || _handler_catch === void 0 ? void 0 : _handler_catch.call(_handler, reject);
111
- };
112
- return dispatch;
110
+ return function(ctx, resolve, reject) {
111
+ var i = 0;
112
+ var dispatch = function() {
113
+ var _handler, _handler_catch;
114
+ var handler = middlewares[i++];
115
+ if (!handler) {
116
+ return resolve();
117
+ }
118
+ return (_handler = handler(ctx, dispatch)) === null || _handler === void 0 ? void 0 : (_handler_catch = _handler.catch) === null || _handler_catch === void 0 ? void 0 : _handler_catch.call(_handler, reject);
113
119
  };
120
+ return dispatch;
121
+ };
114
122
  };
115
- var server_default = function() {
116
- return {
117
- name: "@modern-js/plugin-server",
118
- setup: function(api) {
119
- var _api_useAppContext = api.useAppContext(), appDirectory = _api_useAppContext.appDirectory, distDirectory = _api_useAppContext.distDirectory;
120
- var storage = new Storage();
121
- var transformAPI = createTransformAPI(storage);
122
- var pwd = isProd() ? distDirectory : appDirectory;
123
- var webAppPath = path.resolve(pwd, SERVER_DIR, WEB_APP_NAME);
124
- var middlewarePath = path.resolve(pwd, SERVER_DIR, "_middleware");
125
- var loadMod = function() {
126
- var mod = requireExistModule(webAppPath, {
127
- interop: false
128
- });
129
- var middlewareMode = requireExistModule(middlewarePath, {
130
- interop: false
131
- });
132
- var _ref = mod || {}, defaultExports = _ref.default, middleware = _ref.middleware, hooks = _objectWithoutProperties(_ref, [
133
- "default",
134
- "middleware"
135
- ]);
136
- var _ref1 = middlewareMode || {}, tmp = _ref1.middleware, unstableMiddleware = tmp === void 0 ? [] : tmp;
137
- if (defaultExports) {
138
- defaultExports(transformAPI);
139
- }
140
- Object.values(HOOKS).forEach(function(key) {
141
- var fn = hooks[key];
142
- if (fn) {
143
- storage.hooks[key] = fn;
144
- }
145
- });
146
- if (middleware) {
147
- storage.middlewares = [].concat(middleware);
148
- }
149
- storage.middlewares = storage.middlewares.concat(unstableMiddleware);
150
- };
151
- return {
152
- prepare: function prepare() {
153
- loadMod();
154
- },
155
- reset: function reset() {
156
- storage.reset();
157
- loadMod();
158
- },
159
- gather: function gather(param) {
160
- var addWebMiddleware = param.addWebMiddleware;
161
- storage.middlewares.forEach(function(mid) {
162
- addWebMiddleware(mid);
163
- });
164
- },
165
- afterMatch: function afterMatch(context, next) {
166
- if (!storage.hooks.afterMatch) {
167
- return next();
168
- }
169
- return storage.hooks.afterMatch(context, next);
170
- },
171
- afterRender: function afterRender(context, next) {
172
- if (!storage.hooks.afterRender) {
173
- return next();
174
- }
175
- return storage.hooks.afterRender(context, next);
176
- },
177
- prepareWebServer: function prepareWebServer(param) {
178
- var config = param.config;
179
- var middleware = config.middleware;
180
- var factory = compose(middleware);
181
- return function(ctx) {
182
- var res = ctx.source.res;
183
- return new Promise(function(resolve, reject) {
184
- res.on("finish", function(err) {
185
- if (err) {
186
- return reject(err);
187
- }
188
- return resolve();
189
- });
190
- var dispatch = factory(ctx, resolve, reject);
191
- dispatch();
192
- });
193
- };
123
+ export default function() {
124
+ return {
125
+ name: "@modern-js/plugin-server",
126
+ setup: function(api) {
127
+ var _api_useAppContext = api.useAppContext(), appDirectory = _api_useAppContext.appDirectory, distDirectory = _api_useAppContext.distDirectory;
128
+ var storage = new Storage();
129
+ var transformAPI = createTransformAPI(storage);
130
+ var pwd = isProd() ? distDirectory : appDirectory;
131
+ var webAppPath = path.resolve(pwd, SERVER_DIR, WEB_APP_NAME);
132
+ var middlewarePath = path.resolve(pwd, SERVER_DIR, "_middleware");
133
+ var loadMod = function() {
134
+ var mod = requireExistModule(webAppPath, {
135
+ interop: false
136
+ });
137
+ var middlewareMode = requireExistModule(middlewarePath, {
138
+ interop: false
139
+ });
140
+ var _ref = mod || {}, defaultExports = _ref.default, middleware = _ref.middleware, hooks = _object_without_properties(_ref, [
141
+ "default",
142
+ "middleware"
143
+ ]);
144
+ var _ref1 = middlewareMode || {}, tmp = _ref1.middleware, unstableMiddleware = tmp === void 0 ? [] : tmp;
145
+ if (defaultExports) {
146
+ defaultExports(transformAPI);
147
+ }
148
+ Object.values(HOOKS).forEach(function(key) {
149
+ var fn = hooks[key];
150
+ if (fn) {
151
+ storage.hooks[key] = fn;
152
+ }
153
+ });
154
+ if (middleware) {
155
+ storage.middlewares = [].concat(middleware);
156
+ }
157
+ storage.middlewares = storage.middlewares.concat(unstableMiddleware);
158
+ };
159
+ return {
160
+ prepare: function prepare() {
161
+ loadMod();
162
+ },
163
+ reset: function reset() {
164
+ storage.reset();
165
+ loadMod();
166
+ },
167
+ gather: function gather(param) {
168
+ var addWebMiddleware = param.addWebMiddleware;
169
+ storage.middlewares.forEach(function(mid) {
170
+ addWebMiddleware(mid);
171
+ });
172
+ },
173
+ afterMatch: function afterMatch(context, next) {
174
+ if (!storage.hooks.afterMatch) {
175
+ return next();
176
+ }
177
+ return storage.hooks.afterMatch(context, next);
178
+ },
179
+ afterRender: function afterRender(context, next) {
180
+ if (!storage.hooks.afterRender) {
181
+ return next();
182
+ }
183
+ return storage.hooks.afterRender(context, next);
184
+ },
185
+ prepareWebServer: function prepareWebServer(param) {
186
+ var config = param.config;
187
+ var middleware = config.middleware;
188
+ var factory = compose(middleware);
189
+ return function(ctx) {
190
+ var res = ctx.source.res;
191
+ return new Promise(function(resolve, reject) {
192
+ res.on("finish", function(err) {
193
+ if (err) {
194
+ return reject(err);
194
195
  }
195
- };
196
+ return resolve();
197
+ });
198
+ var dispatch = factory(ctx, resolve, reject);
199
+ dispatch();
200
+ });
201
+ };
196
202
  }
197
- };
198
- };
199
- export { server_default as default };
203
+ };
204
+ }
205
+ };
206
+ }
207
+ ;
@@ -3,7 +3,7 @@ import path from "path";
3
3
  import { compile } from "@modern-js/server-utils";
4
4
  import { SHARED_DIR, SERVER_DIR } from "@modern-js/utils";
5
5
  const TS_CONFIG_FILENAME = "tsconfig.json";
6
- var cli_default = () => ({
6
+ export default () => ({
7
7
  name: "@modern-js/plugin-server",
8
8
  setup: (api) => ({
9
9
  config() {
@@ -27,29 +27,24 @@ var cli_default = () => ({
27
27
  const { alias } = modernConfig.source;
28
28
  const { babel } = modernConfig.tools;
29
29
  if (sourceDirs.length > 0) {
30
- await compile(
31
- appDirectory,
32
- {
33
- server,
34
- alias,
35
- babelConfig: babel
36
- },
37
- {
38
- sourceDirs,
39
- distDir,
40
- tsconfigPath
41
- }
42
- );
30
+ await compile(appDirectory, {
31
+ server,
32
+ alias,
33
+ babelConfig: babel
34
+ }, {
35
+ sourceDirs,
36
+ distDir,
37
+ tsconfigPath
38
+ });
43
39
  }
44
40
  },
45
41
  collectServerPlugins({ plugins }) {
46
42
  plugins.push({
47
43
  "@modern-js/plugin-server": "@modern-js/plugin-server/server"
48
44
  });
49
- return { plugins };
45
+ return {
46
+ plugins
47
+ };
50
48
  }
51
49
  })
52
50
  });
53
- export {
54
- cli_default as default
55
- };
@@ -1,57 +1,60 @@
1
+ function _define_property(obj, key, value) {
2
+ if (key in obj) {
3
+ Object.defineProperty(obj, key, {
4
+ value,
5
+ enumerable: true,
6
+ configurable: true,
7
+ writable: true
8
+ });
9
+ } else {
10
+ obj[key] = value;
11
+ }
12
+ return obj;
13
+ }
1
14
  import path from "path";
2
- import {
3
- isProd,
4
- logger,
5
- requireExistModule,
6
- SERVER_DIR
7
- } from "@modern-js/utils";
15
+ import { isProd, logger, requireExistModule, SERVER_DIR } from "@modern-js/utils";
8
16
  const WEB_APP_NAME = "index";
9
- var HOOKS = /* @__PURE__ */ ((HOOKS2) => {
17
+ var HOOKS;
18
+ (function(HOOKS2) {
10
19
  HOOKS2["AFTER_MATCH"] = "afterMatch";
11
20
  HOOKS2["AFTER_RENDER"] = "afterRender";
12
- return HOOKS2;
13
- })(HOOKS || {});
21
+ })(HOOKS || (HOOKS = {}));
14
22
  class Storage {
15
- constructor() {
16
- this.middlewares = [];
17
- this.hooks = {};
18
- }
19
23
  reset() {
20
24
  this.middlewares = [];
21
25
  this.hooks = {};
22
26
  }
27
+ constructor() {
28
+ _define_property(this, "middlewares", []);
29
+ _define_property(this, "hooks", {});
30
+ }
23
31
  }
24
- const createTransformAPI = (storage) => new Proxy(
25
- {},
26
- {
27
- get(target, name) {
28
- if (name === "addMiddleware") {
29
- return (fn) => storage.middlewares.push(fn);
30
- }
31
- return (fn) => {
32
- logger.warn(
33
- "declare hook in default export is to be deprecated, use named export instead"
34
- );
35
- storage.hooks[name] = fn;
36
- };
32
+ const createTransformAPI = (storage) => new Proxy({}, {
33
+ get(target, name) {
34
+ if (name === "addMiddleware") {
35
+ return (fn) => storage.middlewares.push(fn);
37
36
  }
37
+ return (fn) => {
38
+ logger.warn("declare hook in default export is to be deprecated, use named export instead");
39
+ storage.hooks[name] = fn;
40
+ };
38
41
  }
39
- );
42
+ });
40
43
  const compose = (middlewares) => {
41
44
  return (ctx, resolve, reject) => {
42
45
  let i = 0;
43
46
  const dispatch = () => {
44
- var _a, _b;
47
+ var _handler, _handler_catch;
45
48
  const handler = middlewares[i++];
46
49
  if (!handler) {
47
50
  return resolve();
48
51
  }
49
- return (_b = (_a = handler(ctx, dispatch)) == null ? void 0 : _a.catch) == null ? void 0 : _b.call(_a, reject);
52
+ return (_handler = handler(ctx, dispatch)) === null || _handler === void 0 ? void 0 : (_handler_catch = _handler.catch) === null || _handler_catch === void 0 ? void 0 : _handler_catch.call(_handler, reject);
50
53
  };
51
54
  return dispatch;
52
55
  };
53
56
  };
54
- var server_default = () => ({
57
+ export default () => ({
55
58
  name: "@modern-js/plugin-server",
56
59
  setup: (api) => {
57
60
  const { appDirectory, distDirectory } = api.useAppContext();
@@ -112,9 +115,7 @@ var server_default = () => ({
112
115
  const { middleware } = config;
113
116
  const factory = compose(middleware);
114
117
  return (ctx) => {
115
- const {
116
- source: { res }
117
- } = ctx;
118
+ const { source: { res } } = ctx;
118
119
  return new Promise((resolve, reject) => {
119
120
  res.on("finish", (err) => {
120
121
  if (err) {
@@ -130,6 +131,3 @@ var server_default = () => ({
130
131
  };
131
132
  }
132
133
  });
133
- export {
134
- server_default as default
135
- };
package/package.json CHANGED
@@ -3,7 +3,11 @@
3
3
  "description": "A Progressive React Framework for modern web development.",
4
4
  "homepage": "https://modernjs.dev",
5
5
  "bugs": "https://github.com/web-infra-dev/modern.js/issues",
6
- "repository": "web-infra-dev/modern.js",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "https://github.com/web-infra-dev/modern.js",
9
+ "directory": "packages/server/plugin-server"
10
+ },
7
11
  "license": "MIT",
8
12
  "keywords": [
9
13
  "react",
@@ -11,7 +15,7 @@
11
15
  "modern",
12
16
  "modern.js"
13
17
  ],
14
- "version": "2.14.0",
18
+ "version": "2.16.0",
15
19
  "types": "./dist/types/cli.d.ts",
16
20
  "jsnext:source": "./src/cli",
17
21
  "main": "./dist/cjs/cli.js",
@@ -47,20 +51,20 @@
47
51
  },
48
52
  "dependencies": {
49
53
  "@babel/runtime": "^7.18.0",
50
- "@modern-js/server-utils": "2.14.0",
51
- "@modern-js/utils": "2.14.0"
54
+ "@modern-js/server-utils": "2.16.0",
55
+ "@modern-js/utils": "2.16.0"
52
56
  },
53
57
  "devDependencies": {
54
58
  "typescript": "^4",
55
59
  "@types/jest": "^29",
56
60
  "@types/node": "^14",
57
61
  "jest": "^29",
58
- "@modern-js/server-core": "2.14.0",
59
- "@modern-js/app-tools": "2.14.0",
60
- "@modern-js/core": "2.14.0",
61
- "@scripts/build": "2.14.0",
62
- "@modern-js/types": "2.14.0",
63
- "@scripts/jest-config": "2.14.0"
62
+ "@modern-js/server-core": "2.16.0",
63
+ "@modern-js/app-tools": "2.16.0",
64
+ "@modern-js/core": "2.16.0",
65
+ "@scripts/build": "2.16.0",
66
+ "@modern-js/types": "2.16.0",
67
+ "@scripts/jest-config": "2.16.0"
64
68
  },
65
69
  "sideEffects": [
66
70
  "*.css",