@modern-js/app-tools 2.0.0-beta.2 → 2.0.0-canary.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.
Files changed (231) hide show
  1. package/CHANGELOG.md +251 -0
  2. package/bin/modern.js +10 -1
  3. package/dist/js/modern/analyze/constants.js +38 -16
  4. package/dist/js/modern/analyze/generateCode.js +271 -211
  5. package/dist/js/modern/analyze/getBundleEntry.js +31 -32
  6. package/dist/js/modern/analyze/getClientRoutes/getRoutes.js +93 -49
  7. package/dist/js/modern/analyze/getClientRoutes/getRoutesLegacy.js +89 -47
  8. package/dist/js/modern/analyze/getClientRoutes/index.js +6 -2
  9. package/dist/js/modern/analyze/getClientRoutes/utils.js +23 -10
  10. package/dist/js/modern/analyze/getFileSystemEntry.js +43 -22
  11. package/dist/js/modern/analyze/getHtmlTemplate.js +89 -49
  12. package/dist/js/modern/analyze/getServerRoutes.js +122 -126
  13. package/dist/js/modern/analyze/index.js +193 -159
  14. package/dist/js/modern/analyze/isDefaultExportFunction.js +30 -16
  15. package/dist/js/modern/analyze/makeLegalIdentifier.js +10 -11
  16. package/dist/js/modern/analyze/nestedRoutes.js +110 -53
  17. package/dist/js/modern/analyze/templates.js +190 -77
  18. package/dist/js/modern/analyze/utils.js +98 -51
  19. package/dist/js/modern/builder/builderPlugins/compatModern.js +124 -107
  20. package/dist/js/modern/builder/index.js +123 -86
  21. package/dist/js/modern/builder/loaders/routerLoader.js +17 -0
  22. package/dist/js/modern/builder/loaders/serverModuleLoader.js +7 -0
  23. package/dist/js/modern/builder/share.js +22 -20
  24. package/dist/js/modern/builder/webpackPlugins/htmlAsyncChunkPlugin.js +23 -22
  25. package/dist/js/modern/builder/webpackPlugins/htmlBottomTemplate.js +31 -27
  26. package/dist/js/modern/builder/webpackPlugins/routerPlugin.js +98 -84
  27. package/dist/js/modern/commands/build.js +67 -42
  28. package/dist/js/modern/commands/deploy.js +27 -4
  29. package/dist/js/modern/commands/dev.js +93 -47
  30. package/dist/js/modern/commands/index.js +1 -1
  31. package/dist/js/modern/commands/inspect.js +30 -5
  32. package/dist/js/modern/commands/start.js +37 -16
  33. package/dist/js/modern/config/default.js +103 -114
  34. package/dist/js/modern/config/index.js +8 -2
  35. package/dist/js/modern/config/initial/createHtmlConfig.js +5 -2
  36. package/dist/js/modern/config/initial/createOutputConfig.js +11 -9
  37. package/dist/js/modern/config/initial/createSourceConfig.js +5 -2
  38. package/dist/js/modern/config/initial/createToolsConfig.js +7 -6
  39. package/dist/js/modern/config/initial/index.js +9 -4
  40. package/dist/js/modern/config/initial/inits.js +109 -73
  41. package/dist/js/modern/config/initial/transformNormalizedConfig.js +6 -3
  42. package/dist/js/modern/defineConfig.js +26 -11
  43. package/dist/js/modern/exports/server.js +4 -1
  44. package/dist/js/modern/hooks.js +10 -3
  45. package/dist/js/modern/index.js +140 -89
  46. package/dist/js/modern/initialize/index.js +98 -51
  47. package/dist/js/modern/locale/en.js +20 -21
  48. package/dist/js/modern/locale/index.js +6 -6
  49. package/dist/js/modern/locale/zh.js +21 -22
  50. package/dist/js/modern/schema/Schema.js +6 -5
  51. package/dist/js/modern/schema/index.js +51 -100
  52. package/dist/js/modern/schema/legacy.js +96 -231
  53. package/dist/js/modern/types/config/index.js +0 -1
  54. package/dist/js/modern/types/index.js +0 -1
  55. package/dist/js/modern/types/legacyConfig/output.js +0 -1
  56. package/dist/js/modern/utils/commands.js +5 -2
  57. package/dist/js/modern/utils/config.js +102 -41
  58. package/dist/js/modern/utils/createFileWatcher.js +84 -51
  59. package/dist/js/modern/utils/createServer.js +63 -17
  60. package/dist/js/modern/utils/getSpecifiedEntries.js +46 -19
  61. package/dist/js/modern/utils/language.js +6 -3
  62. package/dist/js/modern/utils/printInstructions.js +27 -8
  63. package/dist/js/modern/utils/restart.js +43 -16
  64. package/dist/js/modern/utils/routes.js +29 -12
  65. package/dist/js/node/analyze/constants.js +54 -35
  66. package/dist/js/node/analyze/generateCode.js +290 -228
  67. package/dist/js/node/analyze/getBundleEntry.js +55 -44
  68. package/dist/js/node/analyze/getClientRoutes/getRoutes.js +132 -76
  69. package/dist/js/node/analyze/getClientRoutes/getRoutesLegacy.js +128 -74
  70. package/dist/js/node/analyze/getClientRoutes/index.js +23 -17
  71. package/dist/js/node/analyze/getClientRoutes/utils.js +44 -21
  72. package/dist/js/node/analyze/getFileSystemEntry.js +70 -39
  73. package/dist/js/node/analyze/getHtmlTemplate.js +116 -61
  74. package/dist/js/node/analyze/getServerRoutes.js +143 -137
  75. package/dist/js/node/analyze/index.js +240 -174
  76. package/dist/js/node/analyze/isDefaultExportFunction.js +55 -26
  77. package/dist/js/node/analyze/makeLegalIdentifier.js +27 -15
  78. package/dist/js/node/analyze/nestedRoutes.js +140 -67
  79. package/dist/js/node/analyze/templates.js +211 -84
  80. package/dist/js/node/analyze/utils.js +123 -62
  81. package/dist/js/node/builder/builderPlugins/compatModern.js +152 -120
  82. package/dist/js/node/builder/index.js +151 -95
  83. package/dist/js/node/builder/loaders/routerLoader.js +36 -0
  84. package/dist/js/node/builder/loaders/serverModuleLoader.js +26 -0
  85. package/dist/js/node/builder/share.js +45 -25
  86. package/dist/js/node/builder/webpackPlugins/htmlAsyncChunkPlugin.js +39 -26
  87. package/dist/js/node/builder/webpackPlugins/htmlBottomTemplate.js +47 -31
  88. package/dist/js/node/builder/webpackPlugins/routerPlugin.js +116 -90
  89. package/dist/js/node/commands/build.js +89 -52
  90. package/dist/js/node/commands/deploy.js +45 -10
  91. package/dist/js/node/commands/dev.js +115 -61
  92. package/dist/js/node/commands/index.js +19 -38
  93. package/dist/js/node/commands/inspect.js +48 -11
  94. package/dist/js/node/commands/start.js +65 -27
  95. package/dist/js/node/config/default.js +119 -118
  96. package/dist/js/node/config/index.js +25 -29
  97. package/dist/js/node/config/initial/createHtmlConfig.js +22 -6
  98. package/dist/js/node/config/initial/createOutputConfig.js +28 -13
  99. package/dist/js/node/config/initial/createSourceConfig.js +22 -6
  100. package/dist/js/node/config/initial/createToolsConfig.js +24 -10
  101. package/dist/js/node/config/initial/index.js +28 -17
  102. package/dist/js/node/config/initial/inits.js +126 -81
  103. package/dist/js/node/config/initial/transformNormalizedConfig.js +31 -15
  104. package/dist/js/node/defineConfig.js +43 -17
  105. package/dist/js/node/exports/server.js +21 -10
  106. package/dist/js/node/hooks.js +44 -29
  107. package/dist/js/node/index.js +190 -130
  108. package/dist/js/node/initialize/index.js +116 -61
  109. package/dist/js/node/locale/en.js +36 -25
  110. package/dist/js/node/locale/index.js +27 -15
  111. package/dist/js/node/locale/zh.js +37 -26
  112. package/dist/js/node/schema/Schema.js +23 -10
  113. package/dist/js/node/schema/index.js +77 -114
  114. package/dist/js/node/schema/legacy.js +117 -240
  115. package/dist/js/node/types/config/index.js +17 -16
  116. package/dist/js/node/types/index.js +19 -38
  117. package/dist/js/node/types/legacyConfig/output.js +0 -5
  118. package/dist/js/node/utils/commands.js +21 -6
  119. package/dist/js/node/utils/config.js +120 -51
  120. package/dist/js/node/utils/createFileWatcher.js +104 -60
  121. package/dist/js/node/utils/createServer.js +86 -25
  122. package/dist/js/node/utils/getSpecifiedEntries.js +64 -25
  123. package/dist/js/node/utils/language.js +24 -8
  124. package/dist/js/node/utils/printInstructions.js +47 -16
  125. package/dist/js/node/utils/restart.js +61 -21
  126. package/dist/js/node/utils/routes.js +53 -18
  127. package/dist/js/treeshaking/analyze/constants.js +28 -16
  128. package/dist/js/treeshaking/analyze/generateCode.js +604 -355
  129. package/dist/js/treeshaking/analyze/getBundleEntry.js +52 -63
  130. package/dist/js/treeshaking/analyze/getClientRoutes/getRoutes.js +214 -168
  131. package/dist/js/treeshaking/analyze/getClientRoutes/getRoutesLegacy.js +215 -169
  132. package/dist/js/treeshaking/analyze/getClientRoutes/index.js +3 -2
  133. package/dist/js/treeshaking/analyze/getClientRoutes/utils.js +19 -20
  134. package/dist/js/treeshaking/analyze/getFileSystemEntry.js +89 -86
  135. package/dist/js/treeshaking/analyze/getHtmlTemplate.js +298 -125
  136. package/dist/js/treeshaking/analyze/getServerRoutes.js +210 -146
  137. package/dist/js/treeshaking/analyze/index.js +558 -303
  138. package/dist/js/treeshaking/analyze/isDefaultExportFunction.js +45 -26
  139. package/dist/js/treeshaking/analyze/makeLegalIdentifier.js +13 -16
  140. package/dist/js/treeshaking/analyze/nestedRoutes.js +414 -160
  141. package/dist/js/treeshaking/analyze/templates.js +432 -161
  142. package/dist/js/treeshaking/analyze/utils.js +361 -80
  143. package/dist/js/treeshaking/builder/builderPlugins/compatModern.js +281 -195
  144. package/dist/js/treeshaking/builder/index.js +371 -165
  145. package/dist/js/treeshaking/builder/loaders/routerLoader.js +13 -0
  146. package/dist/js/treeshaking/builder/loaders/serverModuleLoader.js +5 -0
  147. package/dist/js/treeshaking/builder/share.js +41 -44
  148. package/dist/js/treeshaking/builder/webpackPlugins/htmlAsyncChunkPlugin.js +108 -44
  149. package/dist/js/treeshaking/builder/webpackPlugins/htmlBottomTemplate.js +70 -39
  150. package/dist/js/treeshaking/builder/webpackPlugins/routerPlugin.js +332 -112
  151. package/dist/js/treeshaking/commands/build.js +286 -88
  152. package/dist/js/treeshaking/commands/deploy.js +153 -25
  153. package/dist/js/treeshaking/commands/dev.js +318 -132
  154. package/dist/js/treeshaking/commands/index.js +1 -1
  155. package/dist/js/treeshaking/commands/inspect.js +147 -32
  156. package/dist/js/treeshaking/commands/start.js +190 -68
  157. package/dist/js/treeshaking/config/default.js +210 -199
  158. package/dist/js/treeshaking/config/index.js +3 -2
  159. package/dist/js/treeshaking/config/initial/createHtmlConfig.js +19 -31
  160. package/dist/js/treeshaking/config/initial/createOutputConfig.js +43 -67
  161. package/dist/js/treeshaking/config/initial/createSourceConfig.js +37 -40
  162. package/dist/js/treeshaking/config/initial/createToolsConfig.js +23 -38
  163. package/dist/js/treeshaking/config/initial/index.js +10 -9
  164. package/dist/js/treeshaking/config/initial/inits.js +205 -106
  165. package/dist/js/treeshaking/config/initial/transformNormalizedConfig.js +27 -34
  166. package/dist/js/treeshaking/defineConfig.js +60 -13
  167. package/dist/js/treeshaking/exports/server.js +2 -1
  168. package/dist/js/treeshaking/hooks.js +26 -25
  169. package/dist/js/treeshaking/index.js +465 -257
  170. package/dist/js/treeshaking/initialize/index.js +290 -112
  171. package/dist/js/treeshaking/locale/en.js +34 -33
  172. package/dist/js/treeshaking/locale/index.js +5 -5
  173. package/dist/js/treeshaking/locale/zh.js +34 -33
  174. package/dist/js/treeshaking/schema/Schema.js +267 -69
  175. package/dist/js/treeshaking/schema/index.js +165 -121
  176. package/dist/js/treeshaking/schema/legacy.js +323 -256
  177. package/dist/js/treeshaking/types/config/deploy.js +1 -0
  178. package/dist/js/treeshaking/types/config/dev.js +1 -0
  179. package/dist/js/treeshaking/types/config/experiments.js +1 -0
  180. package/dist/js/treeshaking/types/config/html.js +1 -0
  181. package/dist/js/treeshaking/types/config/index.js +0 -1
  182. package/dist/js/treeshaking/types/config/output.js +1 -0
  183. package/dist/js/treeshaking/types/config/performance.js +1 -0
  184. package/dist/js/treeshaking/types/config/security.js +1 -0
  185. package/dist/js/treeshaking/types/config/source.js +1 -0
  186. package/dist/js/treeshaking/types/config/tools.js +1 -0
  187. package/dist/js/treeshaking/types/hooks.js +1 -0
  188. package/dist/js/treeshaking/types/index.js +0 -1
  189. package/dist/js/treeshaking/types/legacyConfig/deploy.js +1 -0
  190. package/dist/js/treeshaking/types/legacyConfig/dev.js +1 -0
  191. package/dist/js/treeshaking/types/legacyConfig/index.js +1 -0
  192. package/dist/js/treeshaking/types/legacyConfig/output.js +1 -1
  193. package/dist/js/treeshaking/types/legacyConfig/source.js +1 -0
  194. package/dist/js/treeshaking/types/legacyConfig/tools.js +1 -0
  195. package/dist/js/treeshaking/utils/commands.js +6 -5
  196. package/dist/js/treeshaking/utils/config.js +295 -117
  197. package/dist/js/treeshaking/utils/createFileWatcher.js +278 -118
  198. package/dist/js/treeshaking/utils/createServer.js +252 -67
  199. package/dist/js/treeshaking/utils/getSpecifiedEntries.js +182 -55
  200. package/dist/js/treeshaking/utils/language.js +6 -5
  201. package/dist/js/treeshaking/utils/printInstructions.js +151 -29
  202. package/dist/js/treeshaking/utils/restart.js +184 -42
  203. package/dist/js/treeshaking/utils/routes.js +151 -27
  204. package/dist/js/treeshaking/utils/types.js +1 -0
  205. package/dist/types/analyze/constants.d.ts +2 -0
  206. package/dist/types/analyze/index.d.ts +2 -0
  207. package/dist/types/analyze/templates.d.ts +8 -7
  208. package/dist/types/analyze/utils.d.ts +9 -1
  209. package/dist/types/builder/builderPlugins/compatModern.d.ts +2 -1
  210. package/dist/types/builder/index.d.ts +2 -2
  211. package/dist/types/builder/loaders/routerLoader.d.ts +3 -0
  212. package/dist/types/builder/loaders/serverModuleLoader.d.ts +3 -0
  213. package/dist/types/builder/webpackPlugins/routerPlugin.d.ts +1 -7
  214. package/dist/types/defineConfig.d.ts +1 -0
  215. package/dist/types/index.d.ts +2 -0
  216. package/dist/types/initialize/index.d.ts +2 -0
  217. package/dist/types/types/config/index.d.ts +1 -0
  218. package/dist/types/types/config/output.d.ts +0 -1
  219. package/dist/types/types/config/source.d.ts +1 -0
  220. package/dist/types/types/config/tools.d.ts +10 -1
  221. package/dist/types/types/hooks.d.ts +2 -1
  222. package/dist/types/types/legacyConfig/dev.d.ts +1 -0
  223. package/dist/types/types/legacyConfig/output.d.ts +1 -1
  224. package/dist/types/types/legacyConfig/source.d.ts +1 -0
  225. package/dist/types/types/legacyConfig/tools.d.ts +1 -0
  226. package/dist/types/utils/config.d.ts +1 -0
  227. package/dist/types/utils/createFileWatcher.d.ts +2 -1
  228. package/dist/types/utils/createServer.d.ts +1 -0
  229. package/dist/types/utils/restart.d.ts +1 -1
  230. package/lib/types.d.ts +1 -1
  231. package/package.json +27 -23
@@ -1,176 +1,382 @@
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);
208
+ var targets = [
209
+ "web"
210
+ ];
211
+ if (isUseSSRBundle(normalizedConfig)) {
212
+ targets.push("node");
213
+ }
214
+ return targets;
215
+ }
216
+ function createBuilderForEdenX(_) {
217
+ return _createBuilderForEdenX.apply(this, arguments);
23
218
  }
24
219
  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
220
+ _createBuilderForEdenX = _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 _createBuilderForEdenX.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: {
278
+ port: (ref = normalizedConfig.server) === null || ref === void 0 ? void 0 : ref.port,
279
+ https: normalizedConfig.dev.https,
280
+ assetPrefix: normalizedConfig.dev.assetPrefix
281
+ },
282
+ html: htmlConfig,
283
+ performance: _objectSpreadProps(_objectSpread({}, normalizedConfig.performance), {
284
+ removeMomentLocale: true
285
+ })
286
+ });
133
287
  }
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;
288
+ function createBuilderOptions(target, appContext) {
289
+ var entries = {};
290
+ var _entrypoints = appContext.entrypoints, entrypoints = _entrypoints === void 0 ? [] : _entrypoints, checkedEntries = appContext.checkedEntries;
291
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
292
+ try {
293
+ for(var _iterator = entrypoints[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
294
+ var _value = _step.value, entryName = _value.entryName, entry = _value.entry;
295
+ if (checkedEntries && !checkedEntries.includes(entryName)) {
296
+ continue;
297
+ }
298
+ if (entryName in entries) {
299
+ entries[entryName].push(entry);
300
+ } else {
301
+ entries[entryName] = [
302
+ entry
303
+ ];
304
+ }
305
+ }
306
+ } catch (err) {
307
+ _didIteratorError = true;
308
+ _iteratorError = err;
309
+ } finally{
310
+ try {
311
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
312
+ _iterator.return();
144
313
  }
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;
314
+ } finally{
315
+ if (_didIteratorError) {
316
+ throw _iteratorError;
155
317
  }
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
318
  }
172
- }
173
- }, _callee2);
174
- }));
175
- return _applyBuilderPlugins.apply(this, arguments);
176
- }
319
+ }
320
+ return {
321
+ cwd: appContext.appDirectory,
322
+ target: target,
323
+ configPath: appContext.configFile || void 0,
324
+ entry: entries,
325
+ framework: appContext.metaName
326
+ };
327
+ }
328
+ function applyBuilderPlugins(builder, normalizedConfig, appContext, compatPluginConfig) {
329
+ return _applyBuilderPlugins.apply(this, arguments);
330
+ }
331
+ function _applyBuilderPlugins() {
332
+ _applyBuilderPlugins = _asyncToGenerator(function(builder, normalizedConfig, appContext, compatPluginConfig) {
333
+ var PluginNodePolyfill, _tools, esbuildOptions, PluginEsbuild;
334
+ return __generator(this, function(_state) {
335
+ switch(_state.label){
336
+ case 0:
337
+ if (!!normalizedConfig.output.disableNodePolyfill) return [
338
+ 3,
339
+ 2
340
+ ];
341
+ return [
342
+ 4,
343
+ import("@modern-js/builder-plugin-node-polyfill")
344
+ ];
345
+ case 1:
346
+ PluginNodePolyfill = _state.sent().PluginNodePolyfill;
347
+ builder.addPlugins([
348
+ PluginNodePolyfill()
349
+ ]);
350
+ _state.label = 2;
351
+ case 2:
352
+ if (!normalizedConfig.tools.esbuild) return [
353
+ 3,
354
+ 4
355
+ ];
356
+ _tools = normalizedConfig.tools, esbuildOptions = _tools.esbuild;
357
+ return [
358
+ 4,
359
+ import("@modern-js/builder-plugin-esbuild")
360
+ ];
361
+ case 3:
362
+ PluginEsbuild = _state.sent().PluginEsbuild;
363
+ builder.addPlugins([
364
+ PluginEsbuild({
365
+ loader: false,
366
+ minimize: applyOptionsChain({}, esbuildOptions)
367
+ })
368
+ ]);
369
+ _state.label = 4;
370
+ case 4:
371
+ builder.addPlugins([
372
+ PluginCompatModern(appContext, normalizedConfig, compatPluginConfig)
373
+ ]);
374
+ return [
375
+ 2
376
+ ];
377
+ }
378
+ });
379
+ });
380
+ return _applyBuilderPlugins.apply(this, arguments);
381
+ }
382
+ export { createBuilderForEdenX, 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,43 @@
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 { template as lodashTemplate } from "@modern-js/utils/lodash";
3
+ import { removeTailSlash } from "@modern-js/utils";
4
+ 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(file) {
10
+ return {
11
+ minimized: minifiedJsRexExp.test(file.sourceFilename)
12
+ };
15
13
  };
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;
14
+ if (patternsType === "public") {
15
+ if (!chain) {
16
+ throw new Error("expect get a webpackChain, but receive 'undefined'");
31
17
  }
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
- }
18
+ return {
19
+ info: info,
20
+ from: "**/*",
21
+ to: "public",
22
+ context: publicDir,
23
+ noErrorOnMissing: true,
24
+ transform: function(content, absoluteFrom) {
25
+ if (!/\.html?$/.test(absoluteFrom)) {
26
+ return content;
27
+ }
28
+ return lodashTemplate(content.toString("utf8"))({
29
+ assetPrefix: removeTailSlash(chain.output.get("publicPath"))
30
+ });
31
+ }
32
+ };
33
+ } else {
34
+ return {
35
+ info: info,
36
+ from: "**/*",
37
+ to: "upload",
38
+ context: uploadDir,
39
+ noErrorOnMissing: true
40
+ };
41
+ }
42
+ }
43
+ export { createCopyPattern };