@modern-js/app-tools 2.0.0-beta.2 → 2.0.0-beta.4

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.
Files changed (236) hide show
  1. package/CHANGELOG.md +556 -0
  2. package/bin/modern.js +11 -1
  3. package/dist/js/modern/analyze/Builder.js +39 -0
  4. package/dist/js/modern/analyze/constants.js +38 -16
  5. package/dist/js/modern/analyze/generateCode.js +272 -211
  6. package/dist/js/modern/analyze/getBundleEntry.js +34 -32
  7. package/dist/js/modern/analyze/getClientRoutes/getRoutes.js +93 -49
  8. package/dist/js/modern/analyze/getClientRoutes/getRoutesLegacy.js +89 -47
  9. package/dist/js/modern/analyze/getClientRoutes/index.js +6 -2
  10. package/dist/js/modern/analyze/getClientRoutes/utils.js +23 -10
  11. package/dist/js/modern/analyze/getFileSystemEntry.js +43 -22
  12. package/dist/js/modern/analyze/getHtmlTemplate.js +89 -49
  13. package/dist/js/modern/analyze/getServerRoutes.js +122 -126
  14. package/dist/js/modern/analyze/index.js +201 -160
  15. package/dist/js/modern/analyze/isDefaultExportFunction.js +30 -16
  16. package/dist/js/modern/analyze/makeLegalIdentifier.js +10 -11
  17. package/dist/js/modern/analyze/nestedRoutes.js +110 -53
  18. package/dist/js/modern/analyze/templates.js +191 -77
  19. package/dist/js/modern/analyze/utils.js +98 -51
  20. package/dist/js/modern/builder/builderPlugins/compatModern.js +125 -107
  21. package/dist/js/modern/builder/index.js +124 -89
  22. package/dist/js/modern/builder/loaders/routerLoader.js +17 -0
  23. package/dist/js/modern/builder/loaders/serverModuleLoader.js +7 -0
  24. package/dist/js/modern/builder/share.js +23 -21
  25. package/dist/js/modern/builder/webpackPlugins/htmlAsyncChunkPlugin.js +23 -22
  26. package/dist/js/modern/builder/webpackPlugins/htmlBottomTemplate.js +31 -27
  27. package/dist/js/modern/builder/webpackPlugins/routerPlugin.js +100 -84
  28. package/dist/js/modern/commands/build.js +67 -42
  29. package/dist/js/modern/commands/deploy.js +27 -4
  30. package/dist/js/modern/commands/dev.js +93 -47
  31. package/dist/js/modern/commands/index.js +1 -1
  32. package/dist/js/modern/commands/inspect.js +30 -5
  33. package/dist/js/modern/commands/start.js +37 -16
  34. package/dist/js/modern/config/default.js +103 -114
  35. package/dist/js/modern/config/index.js +8 -2
  36. package/dist/js/modern/config/initial/createHtmlConfig.js +5 -2
  37. package/dist/js/modern/config/initial/createOutputConfig.js +11 -9
  38. package/dist/js/modern/config/initial/createSourceConfig.js +5 -2
  39. package/dist/js/modern/config/initial/createToolsConfig.js +7 -6
  40. package/dist/js/modern/config/initial/index.js +9 -4
  41. package/dist/js/modern/config/initial/inits.js +109 -73
  42. package/dist/js/modern/config/initial/transformNormalizedConfig.js +6 -3
  43. package/dist/js/modern/defineConfig.js +26 -11
  44. package/dist/js/modern/exports/server.js +4 -1
  45. package/dist/js/modern/hooks.js +15 -4
  46. package/dist/js/modern/index.js +178 -90
  47. package/dist/js/modern/initialize/index.js +98 -51
  48. package/dist/js/modern/locale/en.js +20 -21
  49. package/dist/js/modern/locale/index.js +6 -6
  50. package/dist/js/modern/locale/zh.js +21 -22
  51. package/dist/js/modern/schema/Schema.js +6 -5
  52. package/dist/js/modern/schema/index.js +51 -100
  53. package/dist/js/modern/schema/legacy.js +96 -231
  54. package/dist/js/modern/types/config/index.js +0 -1
  55. package/dist/js/modern/types/index.js +0 -1
  56. package/dist/js/modern/types/legacyConfig/output.js +0 -1
  57. package/dist/js/modern/utils/commands.js +5 -2
  58. package/dist/js/modern/utils/config.js +102 -41
  59. package/dist/js/modern/utils/createFileWatcher.js +84 -51
  60. package/dist/js/modern/utils/createServer.js +63 -17
  61. package/dist/js/modern/utils/getSpecifiedEntries.js +46 -19
  62. package/dist/js/modern/utils/language.js +6 -3
  63. package/dist/js/modern/utils/printInstructions.js +27 -8
  64. package/dist/js/modern/utils/restart.js +43 -16
  65. package/dist/js/modern/utils/routes.js +29 -12
  66. package/dist/js/node/analyze/Builder.js +58 -0
  67. package/dist/js/node/analyze/constants.js +54 -35
  68. package/dist/js/node/analyze/generateCode.js +291 -228
  69. package/dist/js/node/analyze/getBundleEntry.js +58 -44
  70. package/dist/js/node/analyze/getClientRoutes/getRoutes.js +132 -76
  71. package/dist/js/node/analyze/getClientRoutes/getRoutesLegacy.js +128 -74
  72. package/dist/js/node/analyze/getClientRoutes/index.js +23 -17
  73. package/dist/js/node/analyze/getClientRoutes/utils.js +44 -21
  74. package/dist/js/node/analyze/getFileSystemEntry.js +70 -39
  75. package/dist/js/node/analyze/getHtmlTemplate.js +116 -61
  76. package/dist/js/node/analyze/getServerRoutes.js +143 -137
  77. package/dist/js/node/analyze/index.js +247 -174
  78. package/dist/js/node/analyze/isDefaultExportFunction.js +55 -26
  79. package/dist/js/node/analyze/makeLegalIdentifier.js +27 -15
  80. package/dist/js/node/analyze/nestedRoutes.js +140 -67
  81. package/dist/js/node/analyze/templates.js +212 -84
  82. package/dist/js/node/analyze/utils.js +123 -62
  83. package/dist/js/node/builder/builderPlugins/compatModern.js +153 -120
  84. package/dist/js/node/builder/index.js +152 -98
  85. package/dist/js/node/builder/loaders/routerLoader.js +36 -0
  86. package/dist/js/node/builder/loaders/serverModuleLoader.js +26 -0
  87. package/dist/js/node/builder/share.js +46 -26
  88. package/dist/js/node/builder/webpackPlugins/htmlAsyncChunkPlugin.js +39 -26
  89. package/dist/js/node/builder/webpackPlugins/htmlBottomTemplate.js +47 -31
  90. package/dist/js/node/builder/webpackPlugins/routerPlugin.js +118 -90
  91. package/dist/js/node/commands/build.js +89 -52
  92. package/dist/js/node/commands/deploy.js +45 -10
  93. package/dist/js/node/commands/dev.js +115 -61
  94. package/dist/js/node/commands/index.js +19 -38
  95. package/dist/js/node/commands/inspect.js +48 -11
  96. package/dist/js/node/commands/start.js +65 -27
  97. package/dist/js/node/config/default.js +119 -118
  98. package/dist/js/node/config/index.js +25 -29
  99. package/dist/js/node/config/initial/createHtmlConfig.js +22 -6
  100. package/dist/js/node/config/initial/createOutputConfig.js +28 -13
  101. package/dist/js/node/config/initial/createSourceConfig.js +22 -6
  102. package/dist/js/node/config/initial/createToolsConfig.js +24 -10
  103. package/dist/js/node/config/initial/index.js +28 -17
  104. package/dist/js/node/config/initial/inits.js +126 -81
  105. package/dist/js/node/config/initial/transformNormalizedConfig.js +31 -15
  106. package/dist/js/node/defineConfig.js +43 -17
  107. package/dist/js/node/exports/server.js +21 -10
  108. package/dist/js/node/hooks.js +48 -29
  109. package/dist/js/node/index.js +225 -128
  110. package/dist/js/node/initialize/index.js +116 -61
  111. package/dist/js/node/locale/en.js +36 -25
  112. package/dist/js/node/locale/index.js +27 -15
  113. package/dist/js/node/locale/zh.js +37 -26
  114. package/dist/js/node/schema/Schema.js +23 -10
  115. package/dist/js/node/schema/index.js +77 -114
  116. package/dist/js/node/schema/legacy.js +117 -240
  117. package/dist/js/node/types/config/index.js +17 -16
  118. package/dist/js/node/types/index.js +19 -38
  119. package/dist/js/node/types/legacyConfig/output.js +0 -5
  120. package/dist/js/node/utils/commands.js +21 -6
  121. package/dist/js/node/utils/config.js +120 -51
  122. package/dist/js/node/utils/createFileWatcher.js +104 -60
  123. package/dist/js/node/utils/createServer.js +86 -25
  124. package/dist/js/node/utils/getSpecifiedEntries.js +64 -25
  125. package/dist/js/node/utils/language.js +24 -8
  126. package/dist/js/node/utils/printInstructions.js +47 -16
  127. package/dist/js/node/utils/restart.js +61 -21
  128. package/dist/js/node/utils/routes.js +53 -18
  129. package/dist/js/treeshaking/analyze/Builder.js +199 -0
  130. package/dist/js/treeshaking/analyze/constants.js +28 -16
  131. package/dist/js/treeshaking/analyze/generateCode.js +605 -355
  132. package/dist/js/treeshaking/analyze/getBundleEntry.js +55 -63
  133. package/dist/js/treeshaking/analyze/getClientRoutes/getRoutes.js +214 -168
  134. package/dist/js/treeshaking/analyze/getClientRoutes/getRoutesLegacy.js +215 -169
  135. package/dist/js/treeshaking/analyze/getClientRoutes/index.js +3 -2
  136. package/dist/js/treeshaking/analyze/getClientRoutes/utils.js +19 -20
  137. package/dist/js/treeshaking/analyze/getFileSystemEntry.js +89 -86
  138. package/dist/js/treeshaking/analyze/getHtmlTemplate.js +298 -125
  139. package/dist/js/treeshaking/analyze/getServerRoutes.js +210 -146
  140. package/dist/js/treeshaking/analyze/index.js +571 -304
  141. package/dist/js/treeshaking/analyze/isDefaultExportFunction.js +45 -26
  142. package/dist/js/treeshaking/analyze/makeLegalIdentifier.js +13 -16
  143. package/dist/js/treeshaking/analyze/nestedRoutes.js +414 -160
  144. package/dist/js/treeshaking/analyze/templates.js +432 -161
  145. package/dist/js/treeshaking/analyze/utils.js +361 -80
  146. package/dist/js/treeshaking/builder/builderPlugins/compatModern.js +282 -195
  147. package/dist/js/treeshaking/builder/index.js +371 -167
  148. package/dist/js/treeshaking/builder/loaders/routerLoader.js +13 -0
  149. package/dist/js/treeshaking/builder/loaders/serverModuleLoader.js +5 -0
  150. package/dist/js/treeshaking/builder/share.js +38 -44
  151. package/dist/js/treeshaking/builder/webpackPlugins/htmlAsyncChunkPlugin.js +108 -44
  152. package/dist/js/treeshaking/builder/webpackPlugins/htmlBottomTemplate.js +70 -39
  153. package/dist/js/treeshaking/builder/webpackPlugins/routerPlugin.js +334 -112
  154. package/dist/js/treeshaking/commands/build.js +286 -88
  155. package/dist/js/treeshaking/commands/deploy.js +153 -25
  156. package/dist/js/treeshaking/commands/dev.js +318 -132
  157. package/dist/js/treeshaking/commands/index.js +1 -1
  158. package/dist/js/treeshaking/commands/inspect.js +147 -32
  159. package/dist/js/treeshaking/commands/start.js +190 -68
  160. package/dist/js/treeshaking/config/default.js +210 -199
  161. package/dist/js/treeshaking/config/index.js +3 -2
  162. package/dist/js/treeshaking/config/initial/createHtmlConfig.js +19 -31
  163. package/dist/js/treeshaking/config/initial/createOutputConfig.js +43 -67
  164. package/dist/js/treeshaking/config/initial/createSourceConfig.js +37 -40
  165. package/dist/js/treeshaking/config/initial/createToolsConfig.js +23 -38
  166. package/dist/js/treeshaking/config/initial/index.js +10 -9
  167. package/dist/js/treeshaking/config/initial/inits.js +205 -106
  168. package/dist/js/treeshaking/config/initial/transformNormalizedConfig.js +27 -34
  169. package/dist/js/treeshaking/defineConfig.js +60 -13
  170. package/dist/js/treeshaking/exports/server.js +2 -1
  171. package/dist/js/treeshaking/hooks.js +30 -25
  172. package/dist/js/treeshaking/index.js +681 -256
  173. package/dist/js/treeshaking/initialize/index.js +290 -112
  174. package/dist/js/treeshaking/locale/en.js +34 -33
  175. package/dist/js/treeshaking/locale/index.js +5 -5
  176. package/dist/js/treeshaking/locale/zh.js +34 -33
  177. package/dist/js/treeshaking/schema/Schema.js +267 -69
  178. package/dist/js/treeshaking/schema/index.js +165 -121
  179. package/dist/js/treeshaking/schema/legacy.js +323 -256
  180. package/dist/js/treeshaking/types/config/deploy.js +1 -0
  181. package/dist/js/treeshaking/types/config/dev.js +1 -0
  182. package/dist/js/treeshaking/types/config/experiments.js +1 -0
  183. package/dist/js/treeshaking/types/config/html.js +1 -0
  184. package/dist/js/treeshaking/types/config/index.js +0 -1
  185. package/dist/js/treeshaking/types/config/output.js +1 -0
  186. package/dist/js/treeshaking/types/config/performance.js +1 -0
  187. package/dist/js/treeshaking/types/config/security.js +1 -0
  188. package/dist/js/treeshaking/types/config/source.js +1 -0
  189. package/dist/js/treeshaking/types/config/tools.js +1 -0
  190. package/dist/js/treeshaking/types/hooks.js +1 -0
  191. package/dist/js/treeshaking/types/index.js +0 -1
  192. package/dist/js/treeshaking/types/legacyConfig/deploy.js +1 -0
  193. package/dist/js/treeshaking/types/legacyConfig/dev.js +1 -0
  194. package/dist/js/treeshaking/types/legacyConfig/index.js +1 -0
  195. package/dist/js/treeshaking/types/legacyConfig/output.js +1 -1
  196. package/dist/js/treeshaking/types/legacyConfig/source.js +1 -0
  197. package/dist/js/treeshaking/types/legacyConfig/tools.js +1 -0
  198. package/dist/js/treeshaking/utils/commands.js +6 -5
  199. package/dist/js/treeshaking/utils/config.js +295 -117
  200. package/dist/js/treeshaking/utils/createFileWatcher.js +278 -118
  201. package/dist/js/treeshaking/utils/createServer.js +252 -67
  202. package/dist/js/treeshaking/utils/getSpecifiedEntries.js +182 -55
  203. package/dist/js/treeshaking/utils/language.js +6 -5
  204. package/dist/js/treeshaking/utils/printInstructions.js +151 -29
  205. package/dist/js/treeshaking/utils/restart.js +184 -42
  206. package/dist/js/treeshaking/utils/routes.js +151 -27
  207. package/dist/js/treeshaking/utils/types.js +1 -0
  208. package/dist/types/analyze/Builder.d.ts +8 -0
  209. package/dist/types/analyze/constants.d.ts +2 -0
  210. package/dist/types/analyze/index.d.ts +2 -0
  211. package/dist/types/analyze/templates.d.ts +10 -7
  212. package/dist/types/analyze/utils.d.ts +9 -1
  213. package/dist/types/builder/builderPlugins/compatModern.d.ts +2 -1
  214. package/dist/types/builder/index.d.ts +3 -3
  215. package/dist/types/builder/loaders/routerLoader.d.ts +3 -0
  216. package/dist/types/builder/loaders/serverModuleLoader.d.ts +3 -0
  217. package/dist/types/builder/webpackPlugins/routerPlugin.d.ts +1 -7
  218. package/dist/types/defineConfig.d.ts +1 -0
  219. package/dist/types/index.d.ts +6 -1
  220. package/dist/types/initialize/index.d.ts +2 -0
  221. package/dist/types/types/config/dev.d.ts +2 -2
  222. package/dist/types/types/config/index.d.ts +1 -0
  223. package/dist/types/types/config/output.d.ts +0 -1
  224. package/dist/types/types/config/source.d.ts +1 -0
  225. package/dist/types/types/config/tools.d.ts +10 -1
  226. package/dist/types/types/hooks.d.ts +7 -1
  227. package/dist/types/types/legacyConfig/dev.d.ts +1 -0
  228. package/dist/types/types/legacyConfig/output.d.ts +1 -1
  229. package/dist/types/types/legacyConfig/source.d.ts +1 -0
  230. package/dist/types/types/legacyConfig/tools.d.ts +1 -0
  231. package/dist/types/utils/config.d.ts +1 -0
  232. package/dist/types/utils/createFileWatcher.d.ts +2 -1
  233. package/dist/types/utils/createServer.d.ts +1 -0
  234. package/dist/types/utils/restart.d.ts +1 -1
  235. package/lib/types.d.ts +1 -1
  236. package/package.json +26 -22
@@ -1,176 +1,380 @@
1
- import _regeneratorRuntime from "@babel/runtime/helpers/esm/regeneratorRuntime";
2
- import _createForOfIteratorHelper from "@babel/runtime/helpers/esm/createForOfIteratorHelper";
3
- import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
4
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
5
- import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
6
- import { createBuilder } from '@modern-js/builder';
7
- import { builderWebpackProvider } from '@modern-js/builder-webpack-provider';
8
- import { applyOptionsChain, isUseSSRBundle } from '@modern-js/utils';
1
+ function _arrayLikeToArray(arr, len) {
2
+ if (len == null || len > arr.length) len = arr.length;
3
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4
+ return arr2;
5
+ }
6
+ function _arrayWithoutHoles(arr) {
7
+ if (Array.isArray(arr)) return _arrayLikeToArray(arr);
8
+ }
9
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
10
+ try {
11
+ var info = gen[key](arg);
12
+ var value = info.value;
13
+ } catch (error) {
14
+ reject(error);
15
+ return;
16
+ }
17
+ if (info.done) {
18
+ resolve(value);
19
+ } else {
20
+ Promise.resolve(value).then(_next, _throw);
21
+ }
22
+ }
23
+ function _asyncToGenerator(fn) {
24
+ return function() {
25
+ var self = this, args = arguments;
26
+ return new Promise(function(resolve, reject) {
27
+ var gen = fn.apply(self, args);
28
+ function _next(value) {
29
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
30
+ }
31
+ function _throw(err) {
32
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
33
+ }
34
+ _next(undefined);
35
+ });
36
+ };
37
+ }
38
+ function _defineProperty(obj, key, value) {
39
+ if (key in obj) {
40
+ Object.defineProperty(obj, key, {
41
+ value: value,
42
+ enumerable: true,
43
+ configurable: true,
44
+ writable: true
45
+ });
46
+ } else {
47
+ obj[key] = value;
48
+ }
49
+ return obj;
50
+ }
51
+ function _iterableToArray(iter) {
52
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
53
+ }
54
+ function _nonIterableSpread() {
55
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
56
+ }
57
+ function _objectSpread(target) {
58
+ for(var i = 1; i < arguments.length; i++){
59
+ var source = arguments[i] != null ? arguments[i] : {};
60
+ var ownKeys = Object.keys(source);
61
+ if (typeof Object.getOwnPropertySymbols === "function") {
62
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
63
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
64
+ }));
65
+ }
66
+ ownKeys.forEach(function(key) {
67
+ _defineProperty(target, key, source[key]);
68
+ });
69
+ }
70
+ return target;
71
+ }
72
+ function ownKeys(object, enumerableOnly) {
73
+ var keys = Object.keys(object);
74
+ if (Object.getOwnPropertySymbols) {
75
+ var symbols = Object.getOwnPropertySymbols(object);
76
+ if (enumerableOnly) {
77
+ symbols = symbols.filter(function(sym) {
78
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
79
+ });
80
+ }
81
+ keys.push.apply(keys, symbols);
82
+ }
83
+ return keys;
84
+ }
85
+ function _objectSpreadProps(target, source) {
86
+ source = source != null ? source : {};
87
+ if (Object.getOwnPropertyDescriptors) {
88
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
89
+ } else {
90
+ ownKeys(Object(source)).forEach(function(key) {
91
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
92
+ });
93
+ }
94
+ return target;
95
+ }
96
+ function _toConsumableArray(arr) {
97
+ return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
98
+ }
99
+ function _unsupportedIterableToArray(o, minLen) {
100
+ if (!o) return;
101
+ if (typeof o === "string") return _arrayLikeToArray(o, minLen);
102
+ var n = Object.prototype.toString.call(o).slice(8, -1);
103
+ if (n === "Object" && o.constructor) n = o.constructor.name;
104
+ if (n === "Map" || n === "Set") return Array.from(n);
105
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
106
+ }
107
+ var __generator = this && this.__generator || function(thisArg, body) {
108
+ var f, y, t, g, _ = {
109
+ label: 0,
110
+ sent: function() {
111
+ if (t[0] & 1) throw t[1];
112
+ return t[1];
113
+ },
114
+ trys: [],
115
+ ops: []
116
+ };
117
+ return g = {
118
+ next: verb(0),
119
+ "throw": verb(1),
120
+ "return": verb(2)
121
+ }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
122
+ return this;
123
+ }), g;
124
+ function verb(n) {
125
+ return function(v) {
126
+ return step([
127
+ n,
128
+ v
129
+ ]);
130
+ };
131
+ }
132
+ function step(op) {
133
+ if (f) throw new TypeError("Generator is already executing.");
134
+ while(_)try {
135
+ 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;
136
+ if (y = 0, t) op = [
137
+ op[0] & 2,
138
+ t.value
139
+ ];
140
+ switch(op[0]){
141
+ case 0:
142
+ case 1:
143
+ t = op;
144
+ break;
145
+ case 4:
146
+ _.label++;
147
+ return {
148
+ value: op[1],
149
+ done: false
150
+ };
151
+ case 5:
152
+ _.label++;
153
+ y = op[1];
154
+ op = [
155
+ 0
156
+ ];
157
+ continue;
158
+ case 7:
159
+ op = _.ops.pop();
160
+ _.trys.pop();
161
+ continue;
162
+ default:
163
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
164
+ _ = 0;
165
+ continue;
166
+ }
167
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
168
+ _.label = op[1];
169
+ break;
170
+ }
171
+ if (op[0] === 6 && _.label < t[1]) {
172
+ _.label = t[1];
173
+ t = op;
174
+ break;
175
+ }
176
+ if (t && _.label < t[2]) {
177
+ _.label = t[2];
178
+ _.ops.push(op);
179
+ break;
180
+ }
181
+ if (t[2]) _.ops.pop();
182
+ _.trys.pop();
183
+ continue;
184
+ }
185
+ op = body.call(thisArg, _);
186
+ } catch (e) {
187
+ op = [
188
+ 6,
189
+ e
190
+ ];
191
+ y = 0;
192
+ } finally{
193
+ f = t = 0;
194
+ }
195
+ if (op[0] & 5) throw op[1];
196
+ return {
197
+ value: op[0] ? op[1] : void 0,
198
+ done: true
199
+ };
200
+ }
201
+ };
202
+ import { createBuilder } from "@modern-js/builder";
203
+ import { builderWebpackProvider } from "@modern-js/builder-webpack-provider";
204
+ import { applyOptionsChain, isUseSSRBundle } from "@modern-js/utils";
9
205
  import { PluginCompatModern } from "./builderPlugins/compatModern";
10
206
  import { createCopyPattern } from "./share";
11
207
  function getBuilderTargets(normalizedConfig) {
12
- var targets = ['web'];
13
- if (normalizedConfig.output.enableModernMode && !targets.includes('modern-web')) {
14
- targets.push('modern-web');
15
- }
16
- if (isUseSSRBundle(normalizedConfig)) {
17
- targets.push('node');
18
- }
19
- return targets;
20
- }
21
- export function createBuilderForEdenX(_x) {
22
- return _createBuilderForEdenX.apply(this, arguments);
23
- }
24
- function _createBuilderForEdenX() {
25
- _createBuilderForEdenX = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(_ref) {
26
- var normalizedConfig, appContext, compatPluginConfig, builderConfig, webpackProvider, target, builderOptions, builder;
27
- return _regeneratorRuntime().wrap(function _callee$(_context) {
28
- while (1) {
29
- switch (_context.prev = _context.next) {
30
- case 0:
31
- normalizedConfig = _ref.normalizedConfig, appContext = _ref.appContext, compatPluginConfig = _ref.compatPluginConfig;
32
- // create webpack provider
33
- builderConfig = createBuilderProviderConfig(normalizedConfig, appContext);
34
- webpackProvider = builderWebpackProvider({
35
- builderConfig: builderConfig
36
- });
37
- target = getBuilderTargets(normalizedConfig);
38
- builderOptions = createBuilderOptions(target, appContext);
39
- _context.next = 7;
40
- return createBuilder(webpackProvider, builderOptions);
41
- case 7:
42
- builder = _context.sent;
43
- _context.next = 10;
44
- return applyBuilderPlugins(builder, normalizedConfig, appContext, compatPluginConfig);
45
- case 10:
46
- return _context.abrupt("return", builder);
47
- case 11:
48
- case "end":
49
- return _context.stop();
50
- }
51
- }
52
- }, _callee);
53
- }));
54
- return _createBuilderForEdenX.apply(this, arguments);
55
- }
56
- export function createBuilderProviderConfig(normalizedConfig, appContext) {
57
- var output = createOutputConfig(normalizedConfig, appContext);
58
- return _objectSpread(_objectSpread({}, normalizedConfig), {}, {
59
- source: _objectSpread(_objectSpread({}, normalizedConfig.source), {}, {
60
- resolveExtensionPrefix: '.web'
61
- }),
62
- output: output,
63
- dev: {
64
- https: normalizedConfig.dev.https,
65
- assetPrefix: normalizedConfig.dev.assetPrefix
66
- },
67
- html: _objectSpread(_objectSpread({}, normalizedConfig.html), {}, {
68
- templateByEntries: normalizedConfig.html.templateByEntries || appContext.htmlTemplates
69
- }),
70
- performance: _objectSpread(_objectSpread({}, normalizedConfig.performance), {}, {
71
- // `@modern-js/webpack` used to remove moment locale by default
72
- removeMomentLocale: true
73
- })
74
- });
75
- function createOutputConfig(config, appContext) {
76
- var defaultCopyPattern = createCopyPattern(appContext, config, 'upload');
77
- var copy = config.output.copy;
78
- var copyOptions = Array.isArray(copy) ? copy : copy === null || copy === void 0 ? void 0 : copy.patterns;
79
- var builderCopy = [].concat(_toConsumableArray(copyOptions || []), [defaultCopyPattern]);
80
- return _objectSpread(_objectSpread({}, config.output), {}, {
81
- copy: builderCopy,
82
- // We need to do this in the app-tools prepare hook because some files will be generated into the dist directory in the analyze process
83
- cleanDistPath: false,
84
- // `@modern-js/webpack` used to generate asset manifest by default
85
- enableAssetManifest: true,
86
- // compatible the modern-js with fallback behavior
87
- enableAssetFallback: true
208
+ var targets = [
209
+ "web"
210
+ ];
211
+ if (isUseSSRBundle(normalizedConfig)) {
212
+ targets.push("node");
213
+ }
214
+ return targets;
215
+ }
216
+ function createBuilderForModern(_) {
217
+ return _createBuilderForModern.apply(this, arguments);
218
+ }
219
+ function _createBuilderForModern() {
220
+ _createBuilderForModern = _asyncToGenerator(function(param) {
221
+ var normalizedConfig, appContext, compatPluginConfig, builderConfig, webpackProvider, target, builderOptions, builder;
222
+ return __generator(this, function(_state) {
223
+ switch(_state.label){
224
+ case 0:
225
+ normalizedConfig = param.normalizedConfig, appContext = param.appContext, compatPluginConfig = param.compatPluginConfig;
226
+ builderConfig = createBuilderProviderConfig(normalizedConfig, appContext);
227
+ webpackProvider = builderWebpackProvider({
228
+ builderConfig: builderConfig
229
+ });
230
+ target = getBuilderTargets(normalizedConfig);
231
+ builderOptions = createBuilderOptions(target, appContext);
232
+ return [
233
+ 4,
234
+ createBuilder(webpackProvider, builderOptions)
235
+ ];
236
+ case 1:
237
+ builder = _state.sent();
238
+ return [
239
+ 4,
240
+ applyBuilderPlugins(builder, normalizedConfig, appContext, compatPluginConfig)
241
+ ];
242
+ case 2:
243
+ _state.sent();
244
+ return [
245
+ 2,
246
+ builder
247
+ ];
248
+ }
249
+ });
88
250
  });
89
- }
90
- }
91
- export function createBuilderOptions(target, appContext) {
92
- // create entries
93
-
94
- var entries = {};
95
- var _appContext$entrypoin = appContext.entrypoints,
96
- entrypoints = _appContext$entrypoin === void 0 ? [] : _appContext$entrypoin,
97
- checkedEntries = appContext.checkedEntries;
98
- var _iterator = _createForOfIteratorHelper(entrypoints),
99
- _step;
100
- try {
101
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
102
- var _step$value = _step.value,
103
- entryName = _step$value.entryName,
104
- entry = _step$value.entry;
105
- if (checkedEntries && !checkedEntries.includes(entryName)) {
106
- continue;
107
- }
108
- if (entryName in entries) {
109
- entries[entryName].push(entry);
110
- } else {
111
- entries[entryName] = [entry];
112
- }
251
+ return _createBuilderForModern.apply(this, arguments);
252
+ }
253
+ function createBuilderProviderConfig(normalizedConfig, appContext) {
254
+ var createOutputConfig = function createOutputConfig(config, appContext2) {
255
+ var defaultCopyPattern = createCopyPattern(appContext2, config, "upload");
256
+ var copy = config.output.copy;
257
+ var copyOptions = Array.isArray(copy) ? copy : copy === null || copy === void 0 ? void 0 : copy.patterns;
258
+ var builderCopy = _toConsumableArray(copyOptions || []).concat([
259
+ defaultCopyPattern
260
+ ]);
261
+ return _objectSpreadProps(_objectSpread({}, config.output), {
262
+ copy: builderCopy,
263
+ cleanDistPath: false
264
+ });
265
+ };
266
+ var ref;
267
+ var output = createOutputConfig(normalizedConfig, appContext);
268
+ var htmlConfig = _objectSpread({}, normalizedConfig.html);
269
+ if (!htmlConfig.template) {
270
+ htmlConfig.templateByEntries = _objectSpread({}, htmlConfig.templateByEntries, appContext.htmlTemplates);
113
271
  }
114
- } catch (err) {
115
- _iterator.e(err);
116
- } finally {
117
- _iterator.f();
118
- }
119
- return {
120
- cwd: appContext.appDirectory,
121
- target: target,
122
- configPath: appContext.configFile || undefined,
123
- entry: entries,
124
- framework: appContext.metaName
125
- };
126
- }
127
-
128
- /**
129
- * register builder Plugin by condition
130
- */
131
- function applyBuilderPlugins(_x2, _x3, _x4, _x5) {
132
- return _applyBuilderPlugins.apply(this, arguments);
272
+ return _objectSpreadProps(_objectSpread({}, normalizedConfig), {
273
+ source: _objectSpreadProps(_objectSpread({}, normalizedConfig.source), {
274
+ resolveExtensionPrefix: ".web"
275
+ }),
276
+ output: output,
277
+ dev: _objectSpreadProps(_objectSpread({}, normalizedConfig.dev), {
278
+ port: (ref = normalizedConfig.server) === null || ref === void 0 ? void 0 : ref.port
279
+ }),
280
+ html: htmlConfig,
281
+ performance: _objectSpreadProps(_objectSpread({}, normalizedConfig.performance), {
282
+ removeMomentLocale: true
283
+ })
284
+ });
133
285
  }
134
- function _applyBuilderPlugins() {
135
- _applyBuilderPlugins = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(builder, normalizedConfig, appContext, compatPluginConfig) {
136
- var _yield$import, PluginNodePolyfill, esbuildOptions, _yield$import2, PluginEsbuild;
137
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
138
- while (1) {
139
- switch (_context2.prev = _context2.next) {
140
- case 0:
141
- if (normalizedConfig.output.disableNodePolyfill) {
142
- _context2.next = 6;
143
- break;
286
+ function createBuilderOptions(target, appContext) {
287
+ var entries = {};
288
+ var _entrypoints = appContext.entrypoints, entrypoints = _entrypoints === void 0 ? [] : _entrypoints, checkedEntries = appContext.checkedEntries;
289
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
290
+ try {
291
+ for(var _iterator = entrypoints[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
292
+ var _value = _step.value, entryName = _value.entryName, entry = _value.entry;
293
+ if (checkedEntries && !checkedEntries.includes(entryName)) {
294
+ continue;
295
+ }
296
+ if (entryName in entries) {
297
+ entries[entryName].push(entry);
298
+ } else {
299
+ entries[entryName] = [
300
+ entry
301
+ ];
302
+ }
303
+ }
304
+ } catch (err) {
305
+ _didIteratorError = true;
306
+ _iteratorError = err;
307
+ } finally{
308
+ try {
309
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
310
+ _iterator.return();
144
311
  }
145
- _context2.next = 3;
146
- return import('@modern-js/builder-plugin-node-polyfill');
147
- case 3:
148
- _yield$import = _context2.sent;
149
- PluginNodePolyfill = _yield$import.PluginNodePolyfill;
150
- builder.addPlugins([PluginNodePolyfill()]);
151
- case 6:
152
- if (!normalizedConfig.tools.esbuild) {
153
- _context2.next = 13;
154
- break;
312
+ } finally{
313
+ if (_didIteratorError) {
314
+ throw _iteratorError;
155
315
  }
156
- esbuildOptions = normalizedConfig.tools.esbuild;
157
- _context2.next = 10;
158
- return import('@modern-js/builder-plugin-esbuild');
159
- case 10:
160
- _yield$import2 = _context2.sent;
161
- PluginEsbuild = _yield$import2.PluginEsbuild;
162
- builder.addPlugins([PluginEsbuild({
163
- loader: false,
164
- minimize: applyOptionsChain({}, esbuildOptions)
165
- })]);
166
- case 13:
167
- builder.addPlugins([PluginCompatModern(appContext, normalizedConfig, compatPluginConfig)]);
168
- case 14:
169
- case "end":
170
- return _context2.stop();
171
316
  }
172
- }
173
- }, _callee2);
174
- }));
175
- return _applyBuilderPlugins.apply(this, arguments);
176
- }
317
+ }
318
+ return {
319
+ cwd: appContext.appDirectory,
320
+ target: target,
321
+ configPath: appContext.configFile || void 0,
322
+ entry: entries,
323
+ framework: appContext.metaName
324
+ };
325
+ }
326
+ function applyBuilderPlugins(builder, normalizedConfig, appContext, compatPluginConfig) {
327
+ return _applyBuilderPlugins.apply(this, arguments);
328
+ }
329
+ function _applyBuilderPlugins() {
330
+ _applyBuilderPlugins = _asyncToGenerator(function(builder, normalizedConfig, appContext, compatPluginConfig) {
331
+ var PluginNodePolyfill, _tools, esbuildOptions, PluginEsbuild;
332
+ return __generator(this, function(_state) {
333
+ switch(_state.label){
334
+ case 0:
335
+ if (!!normalizedConfig.output.disableNodePolyfill) return [
336
+ 3,
337
+ 2
338
+ ];
339
+ return [
340
+ 4,
341
+ import("@modern-js/builder-plugin-node-polyfill")
342
+ ];
343
+ case 1:
344
+ PluginNodePolyfill = _state.sent().PluginNodePolyfill;
345
+ builder.addPlugins([
346
+ PluginNodePolyfill()
347
+ ]);
348
+ _state.label = 2;
349
+ case 2:
350
+ if (!normalizedConfig.tools.esbuild) return [
351
+ 3,
352
+ 4
353
+ ];
354
+ _tools = normalizedConfig.tools, esbuildOptions = _tools.esbuild;
355
+ return [
356
+ 4,
357
+ import("@modern-js/builder-plugin-esbuild")
358
+ ];
359
+ case 3:
360
+ PluginEsbuild = _state.sent().PluginEsbuild;
361
+ builder.addPlugins([
362
+ PluginEsbuild({
363
+ loader: false,
364
+ minimize: applyOptionsChain({}, esbuildOptions)
365
+ })
366
+ ]);
367
+ _state.label = 4;
368
+ case 4:
369
+ builder.addPlugins([
370
+ PluginCompatModern(appContext, normalizedConfig, compatPluginConfig)
371
+ ]);
372
+ return [
373
+ 2
374
+ ];
375
+ }
376
+ });
377
+ });
378
+ return _applyBuilderPlugins.apply(this, arguments);
379
+ }
380
+ export { createBuilderForModern, createBuilderOptions, createBuilderProviderConfig };
@@ -0,0 +1,13 @@
1
+ import { slash } from "@modern-js/utils";
2
+ function loader(source) {
3
+ this.cacheable();
4
+ var target = this._compiler.options.target;
5
+ if (target === "node" || Array.isArray(target) && target.includes("node")) {
6
+ return source;
7
+ }
8
+ var resourcePath = this.resourcePath;
9
+ var code = '\n export { default } from "'.concat(slash(resourcePath), '";\n ');
10
+ return code;
11
+ }
12
+ var routerLoader_default = loader;
13
+ export { routerLoader_default as default };
@@ -0,0 +1,5 @@
1
+ function loader() {
2
+ return "module.exports = {}";
3
+ }
4
+ var serverModuleLoader_default = loader;
5
+ export { serverModuleLoader_default as default };
@@ -1,46 +1,40 @@
1
- import path from 'path';
2
- import { template as lodashTemplate } from '@modern-js/utils/lodash';
3
- import { removeTailSlash } from '@modern-js/utils';
4
- export function createCopyPattern(appContext, config, patternsType, chain) {
5
- var configDir = path.resolve(appContext.appDirectory, config.source.configDir || './config');
6
- var uploadDir = path.posix.join(configDir.replace(/\\/g, '/'), 'upload');
7
- var publicDir = path.posix.join(configDir.replace(/\\/g, '/'), 'public');
8
- var minifiedJsRexExp = /\.min\.js/;
9
- var info = function info(file) {
10
- return {
11
- // If the file name ends with `.min.js`, we assume it's a compressed file.
12
- // So we don't want copy-webpack-plugin to minify it.
13
- // ref: https://github.com/webpack-contrib/copy-webpack-plugin#info
14
- minimized: minifiedJsRexExp.test(file.sourceFilename)
1
+ import path from "path";
2
+ import { removeTailSlash } from "@modern-js/utils";
3
+ function createCopyPattern(appContext, config, patternsType, chain) {
4
+ var configDir = path.resolve(appContext.appDirectory, config.source.configDir || "./config");
5
+ var uploadDir = path.posix.join(configDir.replace(/\\/g, "/"), "upload");
6
+ var publicDir = path.posix.join(configDir.replace(/\\/g, "/"), "public");
7
+ var minifiedJsRexExp = /\.min\.js/;
8
+ var info = function(file) {
9
+ return {
10
+ minimized: minifiedJsRexExp.test(file.sourceFilename)
11
+ };
15
12
  };
16
- };
17
- if (patternsType === 'public') {
18
- if (!chain) {
19
- throw new Error("expect get a webpackChain, but receive 'undefined'");
20
- }
21
- return {
22
- info: info,
23
- from: '**/*',
24
- to: 'public',
25
- context: publicDir,
26
- noErrorOnMissing: true,
27
- // eslint-disable-next-line node/prefer-global/buffer
28
- transform: function transform(content, absoluteFrom) {
29
- if (!/\.html?$/.test(absoluteFrom)) {
30
- return content;
13
+ if (patternsType === "public") {
14
+ if (!chain) {
15
+ throw new Error("expect get a webpackChain, but receive 'undefined'");
31
16
  }
32
- return lodashTemplate(content.toString('utf8'))({
33
- assetPrefix: removeTailSlash(chain.output.get('publicPath'))
34
- });
35
- }
36
- };
37
- } else {
38
- return {
39
- info: info,
40
- from: '**/*',
41
- to: 'upload',
42
- context: uploadDir,
43
- noErrorOnMissing: true
44
- };
45
- }
46
- }
17
+ return {
18
+ info: info,
19
+ from: "**/*",
20
+ to: "public",
21
+ context: publicDir,
22
+ noErrorOnMissing: true,
23
+ transform: function(content, absoluteFrom) {
24
+ if (!/\.html?$/.test(absoluteFrom)) {
25
+ return content;
26
+ }
27
+ return content.toString("utf8").replace(/<%=\s*assetPrefix\s*%>/g, removeTailSlash(chain.output.get("publicPath")));
28
+ }
29
+ };
30
+ } else {
31
+ return {
32
+ info: info,
33
+ from: "**/*",
34
+ to: "upload",
35
+ context: uploadDir,
36
+ noErrorOnMissing: true
37
+ };
38
+ }
39
+ }
40
+ export { createCopyPattern };