@modern-js/utils 2.35.0 → 2.36.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 (173) hide show
  1. package/dist/cjs/cli/alias.js +48 -49
  2. package/dist/cjs/cli/applyOptionsChain.js +30 -13
  3. package/dist/cjs/cli/babel.js +36 -26
  4. package/dist/cjs/cli/commands.js +29 -21
  5. package/dist/cjs/cli/common.js +29 -20
  6. package/dist/cjs/cli/config.js +24 -7
  7. package/dist/cjs/cli/constants/chainId.js +27 -10
  8. package/dist/cjs/cli/constants/index.js +86 -104
  9. package/dist/cjs/cli/ensure.js +37 -18
  10. package/dist/cjs/cli/fs.js +29 -19
  11. package/dist/cjs/cli/get/config.js +26 -9
  12. package/dist/cjs/cli/get/data.js +67 -54
  13. package/dist/cjs/cli/get/index.js +46 -25
  14. package/dist/cjs/cli/index.js +58 -23
  15. package/dist/cjs/cli/is/config.js +45 -41
  16. package/dist/cjs/cli/is/env.js +32 -29
  17. package/dist/cjs/cli/is/index.js +26 -8
  18. package/dist/cjs/cli/is/project.js +67 -53
  19. package/dist/cjs/cli/is/type.js +39 -36
  20. package/dist/cjs/cli/logger.js +25 -125
  21. package/dist/cjs/cli/monorepo.js +58 -58
  22. package/dist/cjs/cli/package.js +34 -26
  23. package/dist/cjs/cli/path.js +64 -54
  24. package/dist/cjs/cli/port.js +39 -13
  25. package/dist/cjs/cli/prettyInstructions.js +50 -34
  26. package/dist/cjs/cli/require.js +36 -31
  27. package/dist/cjs/cli/runtimeExports.js +42 -16
  28. package/dist/cjs/cli/watch.js +41 -22
  29. package/dist/cjs/compiled.js +127 -138
  30. package/dist/cjs/import.js +25 -15
  31. package/dist/cjs/index.js +24 -6
  32. package/dist/cjs/universal/constants.js +29 -21
  33. package/dist/cjs/universal/formatWebpack.js +28 -18
  34. package/dist/cjs/universal/pluginDagSort.js +25 -8
  35. package/dist/esm/cli/alias.js +13 -25
  36. package/dist/esm/cli/applyOptionsChain.js +4 -1
  37. package/dist/esm/cli/babel.js +6 -2
  38. package/dist/esm/cli/commands.js +10 -4
  39. package/dist/esm/cli/common.js +8 -3
  40. package/dist/esm/cli/config.js +4 -1
  41. package/dist/esm/cli/constants/chainId.js +7 -4
  42. package/dist/esm/cli/constants/index.js +64 -31
  43. package/dist/esm/cli/ensure.js +6 -2
  44. package/dist/esm/cli/fs.js +6 -2
  45. package/dist/esm/cli/get/config.js +4 -1
  46. package/dist/esm/cli/get/data.js +18 -8
  47. package/dist/esm/cli/get/index.js +6 -2
  48. package/dist/esm/cli/is/config.js +23 -17
  49. package/dist/esm/cli/is/env.js +12 -8
  50. package/dist/esm/cli/is/index.js +0 -1
  51. package/dist/esm/cli/is/project.js +17 -8
  52. package/dist/esm/cli/is/type.js +20 -9
  53. package/dist/esm/cli/logger.js +4 -123
  54. package/dist/esm/cli/monorepo.js +14 -16
  55. package/dist/esm/cli/package.js +10 -4
  56. package/dist/esm/cli/path.js +24 -11
  57. package/dist/esm/cli/port.js +6 -3
  58. package/dist/esm/cli/prettyInstructions.js +8 -5
  59. package/dist/esm/cli/require.js +15 -8
  60. package/dist/esm/cli/runtimeExports.js +6 -3
  61. package/dist/esm/cli/watch.js +10 -6
  62. package/dist/esm/compiled.js +65 -31
  63. package/dist/esm/import.js +6 -3
  64. package/dist/esm/universal/constants.js +10 -4
  65. package/dist/esm/universal/formatWebpack.js +8 -5
  66. package/dist/esm/universal/pluginDagSort.js +5 -2
  67. package/dist/esm-node/cli/alias.js +11 -22
  68. package/dist/esm-node/cli/applyOptionsChain.js +4 -1
  69. package/dist/esm-node/cli/babel.js +6 -2
  70. package/dist/esm-node/cli/commands.js +10 -4
  71. package/dist/esm-node/cli/common.js +8 -3
  72. package/dist/esm-node/cli/config.js +4 -1
  73. package/dist/esm-node/cli/constants/chainId.js +7 -4
  74. package/dist/esm-node/cli/constants/index.js +64 -31
  75. package/dist/esm-node/cli/ensure.js +6 -2
  76. package/dist/esm-node/cli/fs.js +6 -2
  77. package/dist/esm-node/cli/get/config.js +4 -1
  78. package/dist/esm-node/cli/get/data.js +18 -8
  79. package/dist/esm-node/cli/get/index.js +6 -2
  80. package/dist/esm-node/cli/is/config.js +23 -17
  81. package/dist/esm-node/cli/is/env.js +12 -6
  82. package/dist/esm-node/cli/is/index.js +0 -1
  83. package/dist/esm-node/cli/is/project.js +16 -7
  84. package/dist/esm-node/cli/is/type.js +20 -9
  85. package/dist/esm-node/cli/logger.js +4 -108
  86. package/dist/esm-node/cli/monorepo.js +14 -18
  87. package/dist/esm-node/cli/package.js +10 -4
  88. package/dist/esm-node/cli/path.js +24 -11
  89. package/dist/esm-node/cli/port.js +5 -2
  90. package/dist/esm-node/cli/prettyInstructions.js +8 -7
  91. package/dist/esm-node/cli/require.js +15 -8
  92. package/dist/esm-node/cli/runtimeExports.js +4 -1
  93. package/dist/esm-node/cli/watch.js +6 -2
  94. package/dist/esm-node/compiled.js +65 -31
  95. package/dist/esm-node/import.js +5 -2
  96. package/dist/esm-node/universal/constants.js +10 -4
  97. package/dist/esm-node/universal/formatWebpack.js +8 -5
  98. package/dist/esm-node/universal/pluginDagSort.js +5 -2
  99. package/dist/types/cli/alias.d.ts +0 -5
  100. package/dist/types/cli/constants/chainId.d.ts +2 -2
  101. package/dist/types/cli/is/env.d.ts +1 -2
  102. package/dist/types/cli/is/index.d.ts +0 -1
  103. package/dist/types/cli/logger.d.ts +1 -64
  104. package/dist/types/cli/monorepo.d.ts +0 -1
  105. package/package.json +6 -84
  106. package/dist/cjs/cli/is/platform.js +0 -21
  107. package/dist/cjs/runtime/nestedRoutes.js +0 -149
  108. package/dist/cjs/runtime/remixRouter.js +0 -6
  109. package/dist/cjs/runtime/router.js +0 -6
  110. package/dist/cjs/runtime-browser/index.js +0 -6
  111. package/dist/cjs/runtime-browser/parsed.js +0 -28
  112. package/dist/cjs/runtime-node/index.js +0 -28
  113. package/dist/cjs/runtime-node/loaderContext/createLoaderCtx.js +0 -34
  114. package/dist/cjs/runtime-node/loaderContext/createRequestCtx.js +0 -38
  115. package/dist/cjs/runtime-node/loaderContext/index.js +0 -22
  116. package/dist/cjs/runtime-node/nestedRoutes.js +0 -28
  117. package/dist/cjs/runtime-node/router.js +0 -6
  118. package/dist/cjs/runtime-node/serialize.js +0 -17
  119. package/dist/cjs/runtime-node/storage.js +0 -48
  120. package/dist/cjs/universal/time.js +0 -38
  121. package/dist/compiled/gradient-string/index.d.ts +0 -1
  122. package/dist/compiled/gradient-string/index.js +0 -1
  123. package/dist/compiled/gradient-string/license +0 -21
  124. package/dist/compiled/gradient-string/package.json +0 -1
  125. package/dist/compiled/webpack-dev-middleware/index.js +0 -7
  126. package/dist/compiled/webpack-dev-middleware/license +0 -20
  127. package/dist/compiled/webpack-dev-middleware/package.json +0 -1
  128. package/dist/compiled/webpack-dev-middleware/types/index.d.ts +0 -262
  129. package/dist/esm/cli/is/platform.js +0 -6
  130. package/dist/esm/runtime/nestedRoutes.js +0 -163
  131. package/dist/esm/runtime/remixRouter.js +0 -1
  132. package/dist/esm/runtime/router.js +0 -1
  133. package/dist/esm/runtime-browser/index.js +0 -1
  134. package/dist/esm/runtime-browser/parsed.js +0 -18
  135. package/dist/esm/runtime-node/index.js +0 -6
  136. package/dist/esm/runtime-node/loaderContext/createLoaderCtx.js +0 -20
  137. package/dist/esm/runtime-node/loaderContext/createRequestCtx.js +0 -24
  138. package/dist/esm/runtime-node/loaderContext/index.js +0 -3
  139. package/dist/esm/runtime-node/nestedRoutes.js +0 -20
  140. package/dist/esm/runtime-node/router.js +0 -1
  141. package/dist/esm/runtime-node/serialize.js +0 -6
  142. package/dist/esm/runtime-node/storage.js +0 -36
  143. package/dist/esm/universal/time.js +0 -29
  144. package/dist/esm-node/cli/is/platform.js +0 -2
  145. package/dist/esm-node/runtime/nestedRoutes.js +0 -129
  146. package/dist/esm-node/runtime/remixRouter.js +0 -1
  147. package/dist/esm-node/runtime/router.js +0 -1
  148. package/dist/esm-node/runtime-browser/index.js +0 -1
  149. package/dist/esm-node/runtime-browser/parsed.js +0 -18
  150. package/dist/esm-node/runtime-node/index.js +0 -6
  151. package/dist/esm-node/runtime-node/loaderContext/createLoaderCtx.js +0 -15
  152. package/dist/esm-node/runtime-node/loaderContext/createRequestCtx.js +0 -19
  153. package/dist/esm-node/runtime-node/loaderContext/index.js +0 -3
  154. package/dist/esm-node/runtime-node/nestedRoutes.js +0 -18
  155. package/dist/esm-node/runtime-node/router.js +0 -1
  156. package/dist/esm-node/runtime-node/serialize.js +0 -6
  157. package/dist/esm-node/runtime-node/storage.js +0 -38
  158. package/dist/esm-node/universal/time.js +0 -28
  159. package/dist/types/cli/is/platform.d.ts +0 -2
  160. package/dist/types/runtime/nestedRoutes.d.ts +0 -13
  161. package/dist/types/runtime/remixRouter.d.ts +0 -1
  162. package/dist/types/runtime/router.d.ts +0 -1
  163. package/dist/types/runtime-browser/index.d.ts +0 -1
  164. package/dist/types/runtime-browser/parsed.d.ts +0 -1
  165. package/dist/types/runtime-node/index.d.ts +0 -10
  166. package/dist/types/runtime-node/loaderContext/createLoaderCtx.d.ts +0 -7
  167. package/dist/types/runtime-node/loaderContext/createRequestCtx.d.ts +0 -7
  168. package/dist/types/runtime-node/loaderContext/index.d.ts +0 -4
  169. package/dist/types/runtime-node/nestedRoutes.d.ts +0 -3
  170. package/dist/types/runtime-node/router.d.ts +0 -1
  171. package/dist/types/runtime-node/serialize.d.ts +0 -1
  172. package/dist/types/runtime-node/storage.d.ts +0 -5
  173. package/dist/types/universal/time.d.ts +0 -1
@@ -1,26 +1,26 @@
1
- export const ROUTE_SPEC_FILE = "route.json";
2
- export const NESTED_ROUTE_SPEC_FILE = "nestedRoutes.json";
3
- export const MAIN_ENTRY_NAME = "main";
4
- export const SERVER_BUNDLE_DIRECTORY = "bundles";
5
- export const SERVER_WORKER_BUNDLE_DIRECTORY = "worker";
6
- export const ENTRY_NAME_PATTERN = "^[a-zA-Z0-9_-]+$";
7
- export const SERVER_RENDER_FUNCTION_NAME = "serverRender";
8
- export const LOADABLE_STATS_FILE = "loadable-stats.json";
9
- export const API_DIR = "api";
10
- export const SERVER_DIR = "server";
11
- export const SHARED_DIR = "shared";
12
- export const CONFIG_CACHE_DIR = "./node_modules/.cache/bundle-require";
13
- export const CONFIG_FILE_EXTENSIONS = [
1
+ const ROUTE_SPEC_FILE = "route.json";
2
+ const NESTED_ROUTE_SPEC_FILE = "nestedRoutes.json";
3
+ const MAIN_ENTRY_NAME = "main";
4
+ const SERVER_BUNDLE_DIRECTORY = "bundles";
5
+ const SERVER_WORKER_BUNDLE_DIRECTORY = "worker";
6
+ const ENTRY_NAME_PATTERN = "^[a-zA-Z0-9_-]+$";
7
+ const SERVER_RENDER_FUNCTION_NAME = "serverRender";
8
+ const LOADABLE_STATS_FILE = "loadable-stats.json";
9
+ const API_DIR = "api";
10
+ const SERVER_DIR = "server";
11
+ const SHARED_DIR = "shared";
12
+ const CONFIG_CACHE_DIR = "./node_modules/.cache/bundle-require";
13
+ const CONFIG_FILE_EXTENSIONS = [
14
14
  ".js",
15
15
  ".ts",
16
16
  ".mjs"
17
17
  ];
18
- export const OUTPUT_CONFIG_FILE = "modern.config.json";
19
- export const DEFAULT_SERVER_CONFIG = "modern.server-runtime.config";
20
- export const ROUTE_MANIFEST_FILE = "routes-manifest.json";
21
- export const LOADER_ROUTES_DIR = `loader-routes`;
22
- export const DEFAULT_DEV_HOST = "0.0.0.0";
23
- export const INTERNAL_APP_TOOLS_PLUGINS = {
18
+ const OUTPUT_CONFIG_FILE = "modern.config.json";
19
+ const DEFAULT_SERVER_CONFIG = "modern.server-runtime.config";
20
+ const ROUTE_MANIFEST_FILE = "routes-manifest.json";
21
+ const LOADER_ROUTES_DIR = `loader-routes`;
22
+ const DEFAULT_DEV_HOST = "0.0.0.0";
23
+ const INTERNAL_APP_TOOLS_PLUGINS = {
24
24
  "@modern-js/app-tools": "@modern-js/app-tools/cli",
25
25
  "@modern-js/plugin-proxy": "@modern-js/plugin-proxy/cli",
26
26
  "@modern-js/plugin-ssg": "@modern-js/plugin-ssg/cli",
@@ -36,10 +36,10 @@ export const INTERNAL_APP_TOOLS_PLUGINS = {
36
36
  // legacy router (inner react-router-dom v5)
37
37
  "@modern-js/plugin-router-v5": "@modern-js/plugin-router-v5/cli"
38
38
  };
39
- export const INTERNAL_APP_TOOLS_RUNTIME_PLUGINS = {
39
+ const INTERNAL_APP_TOOLS_RUNTIME_PLUGINS = {
40
40
  "@modern-js/runtime": "@modern-js/runtime/cli"
41
41
  };
42
- export const INTERNAL_MODULE_TOOLS_PLUGINS = {
42
+ const INTERNAL_MODULE_TOOLS_PLUGINS = {
43
43
  "@modern-js/module-tools": "@modern-js/module-tools",
44
44
  "@modern-js/runtime": "@modern-js/runtime/cli",
45
45
  "@modern-js/plugin-testing": "@modern-js/plugin-testing/cli",
@@ -48,16 +48,16 @@ export const INTERNAL_MODULE_TOOLS_PLUGINS = {
48
48
  // legacy router (inner react-router-dom v5)
49
49
  "@modern-js/plugin-router-legacy": "@modern-js/plugin-router-legacy/cli"
50
50
  };
51
- export const INTERNAL_MONOREPO_TOOLS_PLUGINS = {
51
+ const INTERNAL_MONOREPO_TOOLS_PLUGINS = {
52
52
  "@modern-js/monorepo-tools": "@modern-js/monorepo-tools/cli",
53
53
  "@modern-js/plugin-testing": "@modern-js/plugin-testing/cli"
54
54
  };
55
- export const INTERNAL_DOC_TOOLS_PLUGINS = {
55
+ const INTERNAL_DOC_TOOLS_PLUGINS = {
56
56
  "@modern-js/doc-tools": "@modern-js/doc-tools",
57
57
  "@modern-js/runtime": "@modern-js/runtime/cli",
58
58
  "@modern-js/plugin-testing": "@modern-js/plugin-testing/cli"
59
59
  };
60
- export const INTERNAL_CLI_PLUGINS = {
60
+ const INTERNAL_CLI_PLUGINS = {
61
61
  "@modern-js/app-tools": "@modern-js/app-tools/cli",
62
62
  "@modern-js/monorepo-tools": "@modern-js/monorepo-tools/cli",
63
63
  "@modern-js/module-tools": "@modern-js/module-tools",
@@ -78,19 +78,19 @@ export const INTERNAL_CLI_PLUGINS = {
78
78
  // legacy router (inner react-router-dom v5)
79
79
  "@modern-js/plugin-router-v5": "@modern-js/plugin-router-v5/cli"
80
80
  };
81
- export const SERVER_PLUGIN_BFF = "@modern-js/plugin-bff";
82
- export const SERVER_PLUGIN_EXPRESS = "@modern-js/plugin-express";
83
- export const SERVER_PLUGIN_KOA = "@modern-js/plugin-koa";
84
- export const SERVER_PLUGIN_SERVER = "@modern-js/plugin-server";
85
- export const SERVER_PLUGIN_POLYFILL = "@modern-js/plugin-polyfill";
86
- export const INTERNAL_SERVER_PLUGINS = {
81
+ const SERVER_PLUGIN_BFF = "@modern-js/plugin-bff";
82
+ const SERVER_PLUGIN_EXPRESS = "@modern-js/plugin-express";
83
+ const SERVER_PLUGIN_KOA = "@modern-js/plugin-koa";
84
+ const SERVER_PLUGIN_SERVER = "@modern-js/plugin-server";
85
+ const SERVER_PLUGIN_POLYFILL = "@modern-js/plugin-polyfill";
86
+ const INTERNAL_SERVER_PLUGINS = {
87
87
  [SERVER_PLUGIN_BFF]: "@modern-js/plugin-bff/server",
88
88
  [SERVER_PLUGIN_EXPRESS]: "@modern-js/plugin-express/server",
89
89
  [SERVER_PLUGIN_KOA]: "@modern-js/plugin-koa/server",
90
90
  [SERVER_PLUGIN_SERVER]: "@modern-js/plugin-server/server",
91
91
  [SERVER_PLUGIN_POLYFILL]: "@modern-js/plugin-polyfill/server"
92
92
  };
93
- export const DEFAULT_BABEL_PRESET_TYPESCRIPT_OPTIONS = {
93
+ const DEFAULT_BABEL_PRESET_TYPESCRIPT_OPTIONS = {
94
94
  allowNamespaces: true,
95
95
  allExtensions: true,
96
96
  allowDeclareFields: true,
@@ -100,3 +100,36 @@ export const DEFAULT_BABEL_PRESET_TYPESCRIPT_OPTIONS = {
100
100
  isTSX: true
101
101
  };
102
102
  export * from "./chainId";
103
+ export {
104
+ API_DIR,
105
+ CONFIG_CACHE_DIR,
106
+ CONFIG_FILE_EXTENSIONS,
107
+ DEFAULT_BABEL_PRESET_TYPESCRIPT_OPTIONS,
108
+ DEFAULT_DEV_HOST,
109
+ DEFAULT_SERVER_CONFIG,
110
+ ENTRY_NAME_PATTERN,
111
+ INTERNAL_APP_TOOLS_PLUGINS,
112
+ INTERNAL_APP_TOOLS_RUNTIME_PLUGINS,
113
+ INTERNAL_CLI_PLUGINS,
114
+ INTERNAL_DOC_TOOLS_PLUGINS,
115
+ INTERNAL_MODULE_TOOLS_PLUGINS,
116
+ INTERNAL_MONOREPO_TOOLS_PLUGINS,
117
+ INTERNAL_SERVER_PLUGINS,
118
+ LOADABLE_STATS_FILE,
119
+ LOADER_ROUTES_DIR,
120
+ MAIN_ENTRY_NAME,
121
+ NESTED_ROUTE_SPEC_FILE,
122
+ OUTPUT_CONFIG_FILE,
123
+ ROUTE_MANIFEST_FILE,
124
+ ROUTE_SPEC_FILE,
125
+ SERVER_BUNDLE_DIRECTORY,
126
+ SERVER_DIR,
127
+ SERVER_PLUGIN_BFF,
128
+ SERVER_PLUGIN_EXPRESS,
129
+ SERVER_PLUGIN_KOA,
130
+ SERVER_PLUGIN_POLYFILL,
131
+ SERVER_PLUGIN_SERVER,
132
+ SERVER_RENDER_FUNCTION_NAME,
133
+ SERVER_WORKER_BUNDLE_DIRECTORY,
134
+ SHARED_DIR
135
+ };
@@ -1,6 +1,6 @@
1
1
  import path from "path";
2
- export const ensureAbsolutePath = (base, filePath) => path.isAbsolute(filePath) ? filePath : path.resolve(base, filePath);
3
- export const ensureArray = (params) => {
2
+ const ensureAbsolutePath = (base, filePath) => path.isAbsolute(filePath) ? filePath : path.resolve(base, filePath);
3
+ const ensureArray = (params) => {
4
4
  if (Array.isArray(params)) {
5
5
  return params;
6
6
  }
@@ -8,3 +8,7 @@ export const ensureArray = (params) => {
8
8
  params
9
9
  ];
10
10
  };
11
+ export {
12
+ ensureAbsolutePath,
13
+ ensureArray
14
+ };
@@ -1,5 +1,5 @@
1
1
  import { fs } from "../compiled";
2
- export const findExists = (files) => {
2
+ const findExists = (files) => {
3
3
  for (const file of files) {
4
4
  if (fs.existsSync(file) && fs.statSync(file).isFile()) {
5
5
  return file;
@@ -7,8 +7,12 @@ export const findExists = (files) => {
7
7
  }
8
8
  return false;
9
9
  };
10
- export const emptyDir = async (dir) => {
10
+ const emptyDir = async (dir) => {
11
11
  if (await fs.pathExists(dir)) {
12
12
  await fs.emptyDir(dir);
13
13
  }
14
14
  };
15
+ export {
16
+ emptyDir,
17
+ findExists
18
+ };
@@ -1,5 +1,5 @@
1
1
  import { isPlainObject } from "../is";
2
- export const getEntryOptions = (name, isMainEntry, baseOptions, optionsByEntries, packageName) => {
2
+ const getEntryOptions = (name, isMainEntry, baseOptions, optionsByEntries, packageName) => {
3
3
  if (optionsByEntries) {
4
4
  let optionsByEntry = getOptionsByEntryName(name, optionsByEntries);
5
5
  if (optionsByEntry === void 0 && isMainEntry && packageName) {
@@ -14,3 +14,6 @@ export const getEntryOptions = (name, isMainEntry, baseOptions, optionsByEntries
14
14
  }
15
15
  };
16
16
  const getOptionsByEntryName = (name, optionsByEntries) => optionsByEntries.hasOwnProperty(name) ? optionsByEntries[name] : void 0;
17
+ export {
18
+ getEntryOptions
19
+ };
@@ -5,7 +5,7 @@ import { INTERNAL_CLI_PLUGINS } from "../constants";
5
5
  import { isDepExists } from "../is";
6
6
  import { canUsePnpm, canUseYarn } from "../package";
7
7
  const MAX_TIMES = 5;
8
- export async function getPackageManager(cwd = process.cwd()) {
8
+ async function getPackageManager(cwd = process.cwd()) {
9
9
  let appDirectory = cwd;
10
10
  let times = 0;
11
11
  while (os.homedir() !== appDirectory && times < MAX_TIMES) {
@@ -29,7 +29,7 @@ export async function getPackageManager(cwd = process.cwd()) {
29
29
  }
30
30
  return "npm";
31
31
  }
32
- export const getCoreJsVersion = (corejsPkgPath) => {
32
+ const getCoreJsVersion = (corejsPkgPath) => {
33
33
  try {
34
34
  const { version } = fs.readJSONSync(corejsPkgPath);
35
35
  const [major, minor] = version.split(".");
@@ -38,7 +38,7 @@ export const getCoreJsVersion = (corejsPkgPath) => {
38
38
  return "3";
39
39
  }
40
40
  };
41
- export const getAntdMajorVersion = (appDirectory) => {
41
+ const getAntdMajorVersion = (appDirectory) => {
42
42
  try {
43
43
  const pkgJsonPath = require.resolve("antd/package.json", {
44
44
  paths: [
@@ -51,15 +51,15 @@ export const getAntdMajorVersion = (appDirectory) => {
51
51
  return null;
52
52
  }
53
53
  };
54
- export const defaults = [
54
+ const defaults = [
55
55
  "> 0.01%",
56
56
  "not dead",
57
57
  "not op_mini all"
58
58
  ];
59
- export const getBrowserslist = (appDirectory) => browserslist.loadConfig({
59
+ const getBrowserslist = (appDirectory) => browserslist.loadConfig({
60
60
  path: appDirectory
61
61
  }) || defaults;
62
- export function getInternalPlugins(appDirectory, internalPlugins = INTERNAL_CLI_PLUGINS) {
62
+ function getInternalPlugins(appDirectory, internalPlugins = INTERNAL_CLI_PLUGINS) {
63
63
  return [
64
64
  ...Object.keys(internalPlugins).filter((name) => {
65
65
  const config = internalPlugins[name];
@@ -77,10 +77,20 @@ export function getInternalPlugins(appDirectory, internalPlugins = INTERNAL_CLI_
77
77
  })
78
78
  ];
79
79
  }
80
- export const readTsConfig = (root) => {
80
+ const readTsConfig = (root) => {
81
81
  return readTsConfigByFile(path.resolve(root, "./tsconfig.json"));
82
82
  };
83
- export const readTsConfigByFile = (filename) => {
83
+ const readTsConfigByFile = (filename) => {
84
84
  const content = fs.readFileSync(path.resolve(filename), "utf-8");
85
85
  return json5.parse(content);
86
86
  };
87
+ export {
88
+ defaults,
89
+ getAntdMajorVersion,
90
+ getBrowserslist,
91
+ getCoreJsVersion,
92
+ getInternalPlugins,
93
+ getPackageManager,
94
+ readTsConfig,
95
+ readTsConfigByFile
96
+ };
@@ -1,13 +1,17 @@
1
1
  import path from "path";
2
2
  import { CONFIG_FILE_EXTENSIONS } from "../constants";
3
3
  import { findExists } from "../fs";
4
- export const getServerConfig = async (appDirectory, configFile) => {
4
+ const getServerConfig = async (appDirectory, configFile) => {
5
5
  const configFilePath = findExists(CONFIG_FILE_EXTENSIONS.map((extension) => path.resolve(appDirectory, `${configFile}${extension}`)));
6
6
  return configFilePath;
7
7
  };
8
- export const getTargetDir = (from, baseDir, targetBaseDir) => {
8
+ const getTargetDir = (from, baseDir, targetBaseDir) => {
9
9
  const relativePath = path.relative(baseDir, from);
10
10
  return path.resolve(targetBaseDir, relativePath);
11
11
  };
12
12
  export * from "./data";
13
13
  export * from "./config";
14
+ export {
15
+ getServerConfig,
16
+ getTargetDir
17
+ };
@@ -1,12 +1,11 @@
1
1
  import { MAIN_ENTRY_NAME } from "../constants";
2
2
  import { isEmpty } from "./type";
3
- export const isSSR = (config) => {
4
- var _server, _server1;
3
+ const isSSR = (config) => {
5
4
  const { server } = config;
6
- if ((_server = server) === null || _server === void 0 ? void 0 : _server.ssr) {
5
+ if (server === null || server === void 0 ? void 0 : server.ssr) {
7
6
  return true;
8
7
  }
9
- if (((_server1 = server) === null || _server1 === void 0 ? void 0 : _server1.ssrByEntries) && !isEmpty(server.ssrByEntries)) {
8
+ if ((server === null || server === void 0 ? void 0 : server.ssrByEntries) && !isEmpty(server.ssrByEntries)) {
10
9
  for (const name of Object.keys(server.ssrByEntries)) {
11
10
  if (server.ssrByEntries[name]) {
12
11
  return true;
@@ -15,30 +14,37 @@ export const isSSR = (config) => {
15
14
  }
16
15
  return false;
17
16
  };
18
- export const isUseSSRBundle = (config) => {
19
- var _output;
17
+ const isUseSSRBundle = (config) => {
20
18
  const { output } = config;
21
- if ((_output = output) === null || _output === void 0 ? void 0 : _output.ssg) {
19
+ if (output === null || output === void 0 ? void 0 : output.ssg) {
22
20
  return true;
23
21
  }
24
22
  return isSSR(config);
25
23
  };
26
- export const isServiceWorker = (config) => {
27
- var _deploy_worker, _deploy, _output;
24
+ const isServiceWorker = (config) => {
25
+ var _deploy_worker;
28
26
  const { output, deploy } = config;
29
- if (((_deploy = deploy) === null || _deploy === void 0 ? void 0 : (_deploy_worker = _deploy.worker) === null || _deploy_worker === void 0 ? void 0 : _deploy_worker.ssr) && (((_output = output) === null || _output === void 0 ? void 0 : _output.ssg) || isSSR(config))) {
27
+ if ((deploy === null || deploy === void 0 ? void 0 : (_deploy_worker = deploy.worker) === null || _deploy_worker === void 0 ? void 0 : _deploy_worker.ssr) && ((output === null || output === void 0 ? void 0 : output.ssg) || isSSR(config))) {
30
28
  return true;
31
29
  }
32
30
  return false;
33
31
  };
34
- export const isRouterV5 = (config) => {
35
- var _config_runtime, _config_runtime_router, _config_runtime1, _config;
36
- return typeof ((_config_runtime = config.runtime) === null || _config_runtime === void 0 ? void 0 : _config_runtime.router) !== "boolean" && ((_config = config) === null || _config === void 0 ? void 0 : (_config_runtime1 = _config.runtime) === null || _config_runtime1 === void 0 ? void 0 : (_config_runtime_router = _config_runtime1.router) === null || _config_runtime_router === void 0 ? void 0 : _config_runtime_router.mode) === "react-router-5";
32
+ const isRouterV5 = (config) => {
33
+ var _config_runtime, _config_runtime_router, _config_runtime1;
34
+ return typeof ((_config_runtime = config.runtime) === null || _config_runtime === void 0 ? void 0 : _config_runtime.router) !== "boolean" && (config === null || config === void 0 ? void 0 : (_config_runtime1 = config.runtime) === null || _config_runtime1 === void 0 ? void 0 : (_config_runtime_router = _config_runtime1.router) === null || _config_runtime_router === void 0 ? void 0 : _config_runtime_router.mode) === "react-router-5";
37
35
  };
38
- export const isSSGEntry = (config, entryName, entrypoints) => {
39
- var _config_source, _ssgConfig, _ssgConfig1;
36
+ const isSSGEntry = (config, entryName, entrypoints) => {
37
+ var _config_source;
40
38
  const ssgConfig = config.output.ssg;
41
- const useSSG = isSingleEntry(entrypoints, (_config_source = config.source) === null || _config_source === void 0 ? void 0 : _config_source.mainEntryName) ? Boolean(ssgConfig) : ssgConfig === true || typeof ((_ssgConfig = ssgConfig) === null || _ssgConfig === void 0 ? void 0 : _ssgConfig[0]) === "function" || Boolean((_ssgConfig1 = ssgConfig) === null || _ssgConfig1 === void 0 ? void 0 : _ssgConfig1[entryName]);
39
+ const useSSG = isSingleEntry(entrypoints, (_config_source = config.source) === null || _config_source === void 0 ? void 0 : _config_source.mainEntryName) ? Boolean(ssgConfig) : ssgConfig === true || typeof (ssgConfig === null || ssgConfig === void 0 ? void 0 : ssgConfig[0]) === "function" || Boolean(ssgConfig === null || ssgConfig === void 0 ? void 0 : ssgConfig[entryName]);
42
40
  return useSSG;
43
41
  };
44
- export const isSingleEntry = (entrypoints, mainEntryName = MAIN_ENTRY_NAME) => entrypoints.length === 1 && entrypoints[0].entryName === mainEntryName;
42
+ const isSingleEntry = (entrypoints, mainEntryName = MAIN_ENTRY_NAME) => entrypoints.length === 1 && entrypoints[0].entryName === mainEntryName;
43
+ export {
44
+ isRouterV5,
45
+ isSSGEntry,
46
+ isSSR,
47
+ isServiceWorker,
48
+ isSingleEntry,
49
+ isUseSSRBundle
50
+ };
@@ -1,6 +1,12 @@
1
- export const getNodeEnv = () => process.env.NODE_ENV || "development";
2
- export const isDev = () => getNodeEnv() === "development";
3
- export const isProd = () => getNodeEnv() === "production";
4
- export const isTest = () => getNodeEnv() === "test";
5
- export const isProdProfile = () => isProd() && process.argv.includes("--profile");
6
- export const isFastRefresh = () => isDev() && process.env.FAST_REFRESH !== "false";
1
+ const getNodeEnv = () => process.env.NODE_ENV || "development";
2
+ const isDev = () => getNodeEnv() === "development";
3
+ const isProd = () => getNodeEnv() === "production";
4
+ const isTest = () => getNodeEnv() === "test";
5
+ const isBrowser = () => typeof window !== "undefined";
6
+ export {
7
+ getNodeEnv,
8
+ isBrowser,
9
+ isDev,
10
+ isProd,
11
+ isTest
12
+ };
@@ -1,5 +1,4 @@
1
1
  export * from "./env";
2
- export * from "./platform";
3
2
  export * from "./type";
4
3
  export * from "./config";
5
4
  export * from "./project";
@@ -5,7 +5,7 @@ import { fs, minimist, semver } from "../../compiled";
5
5
  import { createDebugger } from "../common";
6
6
  import { ensureArray } from "../ensure";
7
7
  const debug = createDebugger("judge-depExists");
8
- export const isDepExists = (appDirectory, name) => {
8
+ const isDepExists = (appDirectory, name) => {
9
9
  const pkgPath = path.resolve(appDirectory, "./package.json");
10
10
  if (!fs.existsSync(pkgPath)) {
11
11
  debug(`can't find package.json under: %s`, appDirectory);
@@ -15,7 +15,7 @@ export const isDepExists = (appDirectory, name) => {
15
15
  const { dependencies = {}, devDependencies = {} } = json;
16
16
  return dependencies.hasOwnProperty(name) || devDependencies.hasOwnProperty(name);
17
17
  };
18
- export const isPackageInstalled = (name, resolvePaths) => {
18
+ const isPackageInstalled = (name, resolvePaths) => {
19
19
  try {
20
20
  require.resolve(name, {
21
21
  paths: ensureArray(resolvePaths)
@@ -25,7 +25,7 @@ export const isPackageInstalled = (name, resolvePaths) => {
25
25
  return false;
26
26
  }
27
27
  };
28
- export const isApiOnly = async (appDirectory, entryDir, apiDir) => {
28
+ const isApiOnly = async (appDirectory, entryDir, apiDir) => {
29
29
  const existApi = await fs.pathExists(apiDir !== null && apiDir !== void 0 ? apiDir : path.join(appDirectory, "api"));
30
30
  const existSrc = await fs.pathExists(path.join(appDirectory, entryDir !== null && entryDir !== void 0 ? entryDir : "src"));
31
31
  const options = minimist(getArgv());
@@ -34,11 +34,11 @@ export const isApiOnly = async (appDirectory, entryDir, apiDir) => {
34
34
  }
35
35
  return existApi && !existSrc;
36
36
  };
37
- export const isWebOnly = async () => {
37
+ const isWebOnly = async () => {
38
38
  const options = minimist(getArgv());
39
39
  return Boolean(options["web-only"]);
40
40
  };
41
- export const isBeyondReact17 = (cwd) => {
41
+ const isBeyondReact17 = (cwd) => {
42
42
  const pkgPath = pkgUp.sync({
43
43
  cwd
44
44
  });
@@ -55,7 +55,7 @@ export const isBeyondReact17 = (cwd) => {
55
55
  }
56
56
  return semver.satisfies(semver.minVersion(deps.react), ">=17.0.0");
57
57
  };
58
- export const isReact18 = (cwd) => {
58
+ const isReact18 = (cwd) => {
59
59
  const pkgPath = path.join(cwd, "package.json");
60
60
  if (!fs.existsSync(pkgPath)) {
61
61
  return false;
@@ -70,4 +70,13 @@ export const isReact18 = (cwd) => {
70
70
  }
71
71
  return semver.satisfies(semver.minVersion(deps.react), ">=18.0.0");
72
72
  };
73
- export const isTypescript = (root) => fs.existsSync(path.resolve(root, "./tsconfig.json"));
73
+ const isTypescript = (root) => fs.existsSync(path.resolve(root, "./tsconfig.json"));
74
+ export {
75
+ isApiOnly,
76
+ isBeyondReact17,
77
+ isDepExists,
78
+ isPackageInstalled,
79
+ isReact18,
80
+ isTypescript,
81
+ isWebOnly
82
+ };
@@ -1,25 +1,36 @@
1
- export function isString(str) {
1
+ function isString(str) {
2
2
  return typeof str === "string";
3
3
  }
4
- export function isUndefined(obj) {
4
+ function isUndefined(obj) {
5
5
  return typeof obj === "undefined";
6
6
  }
7
- export function isArray(obj) {
7
+ function isArray(obj) {
8
8
  return Array.isArray(obj);
9
9
  }
10
- export function isFunction(func) {
10
+ function isFunction(func) {
11
11
  return typeof func === "function";
12
12
  }
13
- export function isObject(obj) {
13
+ function isObject(obj) {
14
14
  return obj !== null && typeof obj === "object";
15
15
  }
16
- export function isPlainObject(obj) {
16
+ function isPlainObject(obj) {
17
17
  return isObject(obj) && Object.prototype.toString.call(obj) === "[object Object]";
18
18
  }
19
- export function isPromise(obj) {
19
+ function isPromise(obj) {
20
20
  return Boolean(obj) && (typeof obj === "object" || typeof obj === "function") && typeof obj.then === "function";
21
21
  }
22
- export function isRegExp(obj) {
22
+ function isRegExp(obj) {
23
23
  return Object.prototype.toString.call(obj) === "[object RegExp]";
24
24
  }
25
- export const isEmpty = (o) => Object.entries(o).length === 0 && o.constructor === Object;
25
+ const isEmpty = (o) => Object.entries(o).length === 0 && o.constructor === Object;
26
+ export {
27
+ isArray,
28
+ isEmpty,
29
+ isFunction,
30
+ isObject,
31
+ isPlainObject,
32
+ isPromise,
33
+ isRegExp,
34
+ isString,
35
+ isUndefined
36
+ };
@@ -1,109 +1,5 @@
1
- import chalk from "../../compiled/chalk";
2
- const LOG_LEVEL = {
3
- error: 0,
4
- warn: 1,
5
- info: 2,
6
- debug: 3,
7
- log: 4
1
+ import { logger, createLogger } from "rslog";
2
+ export {
3
+ createLogger,
4
+ logger
8
5
  };
9
- const LOG_TYPES = {
10
- error: {
11
- color: "red",
12
- label: "error",
13
- level: "error"
14
- },
15
- info: {
16
- color: "cyan",
17
- label: "info",
18
- level: "info"
19
- },
20
- success: {
21
- color: "green",
22
- label: "Success",
23
- level: "info"
24
- },
25
- warn: {
26
- color: "yellow",
27
- label: "warn",
28
- level: "warn"
29
- },
30
- debug: {
31
- color: "red",
32
- label: "debug",
33
- level: "debug"
34
- },
35
- log: {
36
- level: "log"
37
- }
38
- };
39
- const DEFAULT_CONFIG = {
40
- displayLabel: true,
41
- uppercaseLabel: false
42
- };
43
- const errorStackRegExp = /^\s*at\s.*:\d+:\d+[\s)]*$/;
44
- const anonymousErrorStackRegExp = /^\s*at\s.*\(<anonymous>\)$/;
45
- export const isErrorStackMessage = (message) => errorStackRegExp.test(message) || anonymousErrorStackRegExp.test(message);
46
- class Logger {
47
- _log(type, message, ...args) {
48
- if (message === void 0 || message === null) {
49
- console.log();
50
- return;
51
- }
52
- if (LOG_LEVEL[type] > LOG_LEVEL[this.level]) {
53
- return;
54
- }
55
- let label = "";
56
- let text = "";
57
- const logType = this.types[type];
58
- if (this.config.displayLabel && logType.label) {
59
- label = this.config.uppercaseLabel ? logType.label.toUpperCase() : logType.label;
60
- label = label.padEnd(this.longestLabel.length);
61
- label = chalk.bold(logType.color ? chalk[logType.color](label) : label);
62
- }
63
- if (message instanceof Error) {
64
- if (message.stack) {
65
- const [name, ...rest] = message.stack.split("\n");
66
- text = `${name}
67
- ${chalk.grey(rest.join("\n"))}`;
68
- } else {
69
- text = message.message;
70
- }
71
- } else if (logType.level === "error" && typeof message === "string") {
72
- const lines = message.split("\n");
73
- text = lines.map((line) => isErrorStackMessage(line) ? chalk.gray(line) : line).join("\n");
74
- } else {
75
- text = `${message}`;
76
- }
77
- const log = label.length > 0 ? `${label} ${text}` : text;
78
- console.log(log, ...args);
79
- }
80
- getLongestLabel() {
81
- let longestLabel = "";
82
- Object.keys(this.types).forEach((type) => {
83
- const { label = "" } = this.types[type];
84
- if (label.length > longestLabel.length) {
85
- longestLabel = label;
86
- }
87
- });
88
- return longestLabel;
89
- }
90
- constructor(options = {}) {
91
- this.level = options.level || LOG_TYPES.log.level;
92
- this.config = {
93
- ...DEFAULT_CONFIG,
94
- ...options.config || {}
95
- };
96
- this.types = {
97
- ...LOG_TYPES,
98
- ...options.types || {}
99
- };
100
- this.longestLabel = this.getLongestLabel();
101
- Object.keys(this.types).forEach((type) => {
102
- this[type] = this._log.bind(this, type);
103
- });
104
- }
105
- }
106
- const logger = new Logger();
107
- logger.Logger = Logger;
108
- export { Logger };
109
- export { logger };
@@ -7,8 +7,8 @@ const WORKSPACE_FILES = {
7
7
  PNPM: "pnpm-workspace.yaml",
8
8
  LERNA: "lerna.json"
9
9
  };
10
- export const isLerna = (root) => fs.existsSync(path.join(root, WORKSPACE_FILES.LERNA));
11
- export const isYarnWorkspaces = (root) => {
10
+ const isLerna = (root) => fs.existsSync(path.join(root, WORKSPACE_FILES.LERNA));
11
+ const isYarnWorkspaces = (root) => {
12
12
  var _json_workspaces;
13
13
  const pkg = path.join(root, WORKSPACE_FILES.YARN);
14
14
  if (!fs.existsSync(pkg)) {
@@ -17,21 +17,9 @@ export const isYarnWorkspaces = (root) => {
17
17
  const json = JSON.parse(fs.readFileSync(pkg, "utf8"));
18
18
  return Boolean((_json_workspaces = json.workspaces) === null || _json_workspaces === void 0 ? void 0 : _json_workspaces.packages);
19
19
  };
20
- export const isPnpmWorkspaces = (root) => fs.existsSync(path.join(root, WORKSPACE_FILES.PNPM));
21
- export const isMonorepo = (root) => isLerna(root) || isYarnWorkspaces(root) || isPnpmWorkspaces(root);
22
- export const isModernjsMonorepo = (root) => {
23
- const pkgJsonPath = path.join(root, "package.json");
24
- if (!fs.existsSync(pkgJsonPath)) {
25
- return false;
26
- }
27
- const json = JSON.parse(fs.readFileSync(pkgJsonPath, "utf8"));
28
- const deps = {
29
- ...json.dependencies || {},
30
- ...json.devDependencies || {}
31
- };
32
- return Boolean(deps["@modern-js/monorepo-tools"]);
33
- };
34
- export const findMonorepoRoot = (appDirectory, maxDepth = PACKAGE_MAX_DEPTH) => {
20
+ const isPnpmWorkspaces = (root) => fs.existsSync(path.join(root, WORKSPACE_FILES.PNPM));
21
+ const isMonorepo = (root) => isLerna(root) || isYarnWorkspaces(root) || isPnpmWorkspaces(root);
22
+ const findMonorepoRoot = (appDirectory, maxDepth = PACKAGE_MAX_DEPTH) => {
35
23
  let inMonorepo = false;
36
24
  for (let depth = 0; depth < maxDepth; depth++) {
37
25
  if (isMonorepo(appDirectory)) {
@@ -42,7 +30,7 @@ export const findMonorepoRoot = (appDirectory, maxDepth = PACKAGE_MAX_DEPTH) =>
42
30
  }
43
31
  return inMonorepo ? appDirectory : void 0;
44
32
  };
45
- export const getMonorepoPackages = (root) => {
33
+ const getMonorepoPackages = (root) => {
46
34
  let packages = [];
47
35
  if (isYarnWorkspaces(root)) {
48
36
  const json = JSON.parse(fs.readFileSync(path.join(root, "package.json"), "utf8"));
@@ -68,3 +56,11 @@ export const getMonorepoPackages = (root) => {
68
56
  }
69
57
  return [];
70
58
  };
59
+ export {
60
+ findMonorepoRoot,
61
+ getMonorepoPackages,
62
+ isLerna,
63
+ isMonorepo,
64
+ isPnpmWorkspaces,
65
+ isYarnWorkspaces
66
+ };