@modern-js/utils 1.3.7-alpha.prebundle.0 → 1.4.1

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 (85) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/constants.d.ts +13 -0
  3. package/dist/constants.js +14 -1
  4. package/dist/getServerConfig.d.ts +1 -0
  5. package/dist/{src/watch.js → getServerConfig.js} +8 -34
  6. package/dist/index.d.ts +2 -0
  7. package/dist/index.js +2 -0
  8. package/dist/ssrHelpers.d.ts +4 -0
  9. package/dist/ssrHelpers.js +7 -0
  10. package/dist/storage.d.ts +5 -0
  11. package/dist/storage.js +61 -0
  12. package/package.json +2 -2
  13. package/dist/compiled/upath/index.d.ts +0 -225
  14. package/dist/compiled/upath/index.js +0 -1
  15. package/dist/pkgUp.d.ts +0 -2
  16. package/dist/pkgUp.js +0 -8
  17. package/dist/src/FileSizeReporter.d.ts +0 -16
  18. package/dist/src/FileSizeReporter.js +0 -152
  19. package/dist/src/alias.d.ts +0 -21
  20. package/dist/src/alias.js +0 -62
  21. package/dist/src/applyOptionsChain.d.ts +0 -6
  22. package/dist/src/applyOptionsChain.js +0 -30
  23. package/dist/src/clearConsole.d.ts +0 -1
  24. package/dist/src/clearConsole.js +0 -9
  25. package/dist/src/compatRequire.d.ts +0 -8
  26. package/dist/src/compatRequire.js +0 -28
  27. package/dist/src/compiled.d.ts +0 -7
  28. package/dist/src/compiled.js +0 -19
  29. package/dist/src/constants.d.ts +0 -209
  30. package/dist/src/constants.js +0 -264
  31. package/dist/src/debug.d.ts +0 -7
  32. package/dist/src/debug.js +0 -14
  33. package/dist/src/emptyDir.d.ts +0 -1
  34. package/dist/src/emptyDir.js +0 -22
  35. package/dist/src/ensureAbsolutePath.d.ts +0 -7
  36. package/dist/src/ensureAbsolutePath.js +0 -15
  37. package/dist/src/findExists.d.ts +0 -6
  38. package/dist/src/findExists.js +0 -21
  39. package/dist/src/format.d.ts +0 -16
  40. package/dist/src/format.js +0 -115
  41. package/dist/src/generateMetaTags.d.ts +0 -16
  42. package/dist/src/generateMetaTags.js +0 -48
  43. package/dist/src/getBrowserslist.d.ts +0 -2
  44. package/dist/src/getBrowserslist.js +0 -7
  45. package/dist/src/getCacheIdentifier.d.ts +0 -7
  46. package/dist/src/getCacheIdentifier.js +0 -24
  47. package/dist/src/getEntryOptions.d.ts +0 -1
  48. package/dist/src/getEntryOptions.js +0 -26
  49. package/dist/src/getPackageManager.d.ts +0 -1
  50. package/dist/src/getPackageManager.js +0 -47
  51. package/dist/src/getPort.d.ts +0 -7
  52. package/dist/src/getPort.js +0 -62
  53. package/dist/src/import.d.ts +0 -5
  54. package/dist/src/import.js +0 -10
  55. package/dist/src/index.d.ts +0 -32
  56. package/dist/src/index.js +0 -57
  57. package/dist/src/is/index.d.ts +0 -34
  58. package/dist/src/is/index.js +0 -82
  59. package/dist/src/is/node-env.d.ts +0 -4
  60. package/dist/src/is/node-env.js +0 -12
  61. package/dist/src/is/platform.d.ts +0 -2
  62. package/dist/src/is/platform.js +0 -10
  63. package/dist/src/is/type.d.ts +0 -8
  64. package/dist/src/is/type.js +0 -38
  65. package/dist/src/logger.d.ts +0 -63
  66. package/dist/src/logger.js +0 -129
  67. package/dist/src/monorepo.d.ts +0 -11
  68. package/dist/src/monorepo.js +0 -81
  69. package/dist/src/nodeEnv.d.ts +0 -3
  70. package/dist/src/nodeEnv.js +0 -52
  71. package/dist/src/path.d.ts +0 -3
  72. package/dist/src/path.js +0 -14
  73. package/dist/src/prettyInstructions.d.ts +0 -6
  74. package/dist/src/prettyInstructions.js +0 -64
  75. package/dist/src/printBuildError.d.ts +0 -8
  76. package/dist/src/printBuildError.js +0 -43
  77. package/dist/src/readTsConfig.d.ts +0 -2
  78. package/dist/src/readTsConfig.js +0 -19
  79. package/dist/src/removeSlash.d.ts +0 -3
  80. package/dist/src/removeSlash.js +0 -9
  81. package/dist/src/runtimeExports.d.ts +0 -4
  82. package/dist/src/runtimeExports.js +0 -53
  83. package/dist/src/wait.d.ts +0 -2
  84. package/dist/src/wait.js +0 -7
  85. package/dist/src/watch.d.ts +0 -8
@@ -1,82 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
- };
12
- var __importDefault = (this && this.__importDefault) || function (mod) {
13
- return (mod && mod.__esModule) ? mod : { "default": mod };
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.isFastRefresh = exports.isUseSSRBundle = exports.isSSR = exports.isEmpty = exports.isTypescript = exports.isDepExists = void 0;
17
- const fs_1 = __importDefault(require("fs"));
18
- const path_1 = __importDefault(require("path"));
19
- const node_env_1 = require("./node-env");
20
- /**
21
- * Check if the package name is in dependencies or devDependencies.
22
- *
23
- * @param appDirectory - Project root directory.
24
- * @param name - Package name.
25
- * @returns True if the name is in dependencies or devDependencies, false otherwise.
26
- */
27
- const isDepExists = (appDirectory, name) => {
28
- const json = require(path_1.default.resolve(appDirectory, './package.json'));
29
- const { dependencies = {}, devDependencies = {} } = json;
30
- return (dependencies.hasOwnProperty(name) || devDependencies.hasOwnProperty(name));
31
- };
32
- exports.isDepExists = isDepExists;
33
- /**
34
- * Is typescript project.
35
- *
36
- * @param root - App directory.
37
- * @returns Whether to use typescript.
38
- */
39
- const isTypescript = (root) => fs_1.default.existsSync(path_1.default.resolve(root, './tsconfig.json'));
40
- exports.isTypescript = isTypescript;
41
- /**
42
- * Is Empty object
43
- *
44
- * @param o - Any object.
45
- * @returns Whether it is empty object.
46
- */
47
- const isEmpty = (o) => Object.entries(o).length === 0 && o.constructor === Object;
48
- exports.isEmpty = isEmpty;
49
- /**
50
- * Is SSR project
51
- *
52
- * @param config - User config.
53
- * @returns Whether to use server side render.
54
- */
55
- const isSSR = (config) => {
56
- const { server } = config;
57
- if (server === null || server === void 0 ? void 0 : server.ssr) {
58
- return true;
59
- }
60
- if ((server === null || server === void 0 ? void 0 : server.ssrByEntries) && !(0, exports.isEmpty)(server.ssrByEntries)) {
61
- for (const name of Object.keys(server.ssrByEntries)) {
62
- if (server.ssrByEntries[name]) {
63
- return true;
64
- }
65
- }
66
- }
67
- return false;
68
- };
69
- exports.isSSR = isSSR;
70
- const isUseSSRBundle = (config) => {
71
- const { output } = config;
72
- if (output === null || output === void 0 ? void 0 : output.ssg) {
73
- return true;
74
- }
75
- return (0, exports.isSSR)(config);
76
- };
77
- exports.isUseSSRBundle = isUseSSRBundle;
78
- const isFastRefresh = () => (0, node_env_1.isDev)() && process.env.FAST_REFRESH !== 'false';
79
- exports.isFastRefresh = isFastRefresh;
80
- __exportStar(require("./node-env"), exports);
81
- __exportStar(require("./platform"), exports);
82
- __exportStar(require("./type"), exports);
@@ -1,4 +0,0 @@
1
- export declare const isDev: () => boolean;
2
- export declare const isProd: () => boolean;
3
- export declare const isTest: () => boolean;
4
- export declare const isProdProfile: () => boolean;
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isProdProfile = exports.isTest = exports.isProd = exports.isDev = void 0;
4
- const isDev = () => process.env.NODE_ENV === 'development';
5
- exports.isDev = isDev;
6
- const isProd = () => process.env.NODE_ENV === 'production';
7
- exports.isProd = isProd;
8
- const isTest = () => process.env.NODE_ENV === 'test';
9
- exports.isTest = isTest;
10
- // Variable used for enabling profiling in Production.
11
- const isProdProfile = () => (0, exports.isProd)() && process.argv.includes('--profile');
12
- exports.isProdProfile = isProdProfile;
@@ -1,2 +0,0 @@
1
- export declare const isNodeJS: () => boolean;
2
- export declare const isBrowser: () => boolean;
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isBrowser = exports.isNodeJS = void 0;
4
- const isNodeJS = () => typeof process !== 'undefined' &&
5
- process.versions != null &&
6
- process.versions.node != null &&
7
- process.versions.electron == null;
8
- exports.isNodeJS = isNodeJS;
9
- const isBrowser = () => typeof window !== 'undefined';
10
- exports.isBrowser = isBrowser;
@@ -1,8 +0,0 @@
1
- export declare function isString(str: any): str is string;
2
- export declare function isUndefined(obj: any): obj is undefined;
3
- export declare function isArray(obj: unknown): obj is any[];
4
- export declare function isFunction(func: any): func is Function;
5
- export declare function isObject(obj: unknown): obj is Record<string, any>;
6
- export declare function isPlainObject(obj: unknown): obj is Record<string, any>;
7
- export declare function isPromise(obj: any): obj is Promise<any>;
8
- export declare function isRegExp(obj: any): obj is RegExp;
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isRegExp = exports.isPromise = exports.isPlainObject = exports.isObject = exports.isFunction = exports.isArray = exports.isUndefined = exports.isString = void 0;
4
- function isString(str) {
5
- return typeof str === 'string';
6
- }
7
- exports.isString = isString;
8
- function isUndefined(obj) {
9
- return typeof obj === 'undefined';
10
- }
11
- exports.isUndefined = isUndefined;
12
- function isArray(obj) {
13
- return Array.isArray(obj);
14
- }
15
- exports.isArray = isArray;
16
- // eslint-disable-next-line @typescript-eslint/ban-types
17
- function isFunction(func) {
18
- return typeof func === 'function';
19
- }
20
- exports.isFunction = isFunction;
21
- function isObject(obj) {
22
- return obj !== null && typeof obj === 'object';
23
- }
24
- exports.isObject = isObject;
25
- function isPlainObject(obj) {
26
- return (isObject(obj) && Object.prototype.toString.call(obj) === '[object Object]');
27
- }
28
- exports.isPlainObject = isPlainObject;
29
- function isPromise(obj) {
30
- return (Boolean(obj) &&
31
- (typeof obj === 'object' || typeof obj === 'function') &&
32
- typeof obj.then === 'function');
33
- }
34
- exports.isPromise = isPromise;
35
- function isRegExp(obj) {
36
- return Object.prototype.toString.call(obj) === '[object RegExp]';
37
- }
38
- exports.isRegExp = isRegExp;
@@ -1,63 +0,0 @@
1
- import { Color } from '../compiled/chalk';
2
- declare type LogLevel = 'debug' | 'info' | 'warn' | 'error';
3
- interface LoggerConfiguration {
4
- color?: typeof Color;
5
- label?: string;
6
- level?: LogLevel;
7
- }
8
- interface InstanceConfiguration {
9
- displayLabel?: boolean;
10
- underlineLabel?: boolean;
11
- uppercaseLabel?: boolean;
12
- }
13
- interface ConstructorOptions {
14
- config?: InstanceConfiguration;
15
- types?: Record<string, LoggerConfiguration>;
16
- }
17
- declare type LoggerFunction = (message?: number | string | Error, ...args: any[]) => void;
18
- declare const LOG_TYPES: {
19
- error: {
20
- color: string;
21
- label: string;
22
- level: string;
23
- };
24
- info: {
25
- color: string;
26
- label: string;
27
- level: string;
28
- };
29
- warn: {
30
- color: string;
31
- label: string;
32
- level: string;
33
- };
34
- debug: {
35
- color: string;
36
- label: string;
37
- level: string;
38
- };
39
- log: {
40
- level: string;
41
- };
42
- };
43
- declare class Logger {
44
- private readonly logCount;
45
- private history;
46
- private readonly config;
47
- private readonly types;
48
- private readonly longestLabel;
49
- [key: string]: any;
50
- constructor(options?: ConstructorOptions);
51
- private retainLog;
52
- private _log;
53
- private getLongestLabel;
54
- private get longestUnderlinedLabel();
55
- getRetainedLogs(type: string): string[];
56
- clearRetainedLogs(type: string): void;
57
- }
58
- declare type LoggerInterface = {
59
- [key in keyof typeof LOG_TYPES]: LoggerFunction;
60
- };
61
- declare const logger: Logger & LoggerInterface;
62
- export { logger };
63
- export type { LoggerInterface };
@@ -1,129 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.logger = void 0;
7
- const chalk_1 = __importDefault(require("../compiled/chalk"));
8
- const { grey, underline } = chalk_1.default;
9
- const LOG_TYPES = {
10
- error: {
11
- color: 'red',
12
- label: 'error',
13
- level: 'error',
14
- },
15
- info: {
16
- color: 'blue',
17
- label: 'info',
18
- level: 'info',
19
- },
20
- warn: {
21
- color: 'yellow',
22
- label: 'warning',
23
- level: 'warn',
24
- },
25
- debug: {
26
- color: 'red',
27
- label: 'debug',
28
- level: 'debug',
29
- },
30
- log: { level: 'info' },
31
- };
32
- const DEFAULT_CONFIG = {
33
- displayLabel: true,
34
- underlineLabel: true,
35
- uppercaseLabel: false,
36
- };
37
- class Logger {
38
- constructor(options = {}) {
39
- this.logCount = 200;
40
- this.history = {};
41
- this.config = Object.assign(Object.assign({}, DEFAULT_CONFIG), (options.config || {}));
42
- this.types = Object.assign(Object.assign({}, LOG_TYPES), (options.types || {}));
43
- this.longestLabel = this.getLongestLabel();
44
- Object.keys(this.types).forEach(type => {
45
- this[type] = this._log.bind(this, type);
46
- });
47
- }
48
- retainLog(type, message) {
49
- if (!this.history[type]) {
50
- this.history[type] = [];
51
- }
52
- this.history[type].push(message);
53
- while (this.history[type].length > this.logCount) {
54
- this.history[type].shift();
55
- }
56
- }
57
- // eslint-disable-next-line max-statements
58
- _log(type, message) {
59
- if (message === undefined) {
60
- // eslint-disable-next-line no-console
61
- console.log();
62
- return;
63
- }
64
- let label = '';
65
- let text = '';
66
- const logType = this.types[type];
67
- if (this.config.displayLabel && logType.label) {
68
- label = this.config.uppercaseLabel
69
- ? logType.label.toUpperCase()
70
- : logType.label;
71
- if (this.config.underlineLabel) {
72
- label = underline(label).padEnd(this.longestUnderlinedLabel.length + 1);
73
- }
74
- else {
75
- label = label.padEnd(this.longestLabel.length + 1);
76
- }
77
- label = logType.color ? chalk_1.default[logType.color](label) : label;
78
- }
79
- if (message instanceof Error) {
80
- if (message.stack) {
81
- const [name, ...rest] = message.stack.split('\n');
82
- text = `${name}\n${grey(rest.join('\n'))}`;
83
- }
84
- else {
85
- text = message.message;
86
- }
87
- }
88
- else {
89
- text = `${message}`;
90
- }
91
- // only retain logs of warn/error level
92
- if (logType.level === 'warn' || logType.level === 'error') {
93
- // retain log text without label
94
- this.retainLog(type, text);
95
- }
96
- const log = label.length > 0 ? `${label} ${text}` : text;
97
- // eslint-disable-next-line no-console
98
- console.log(log);
99
- }
100
- getLongestLabel() {
101
- let longestLabel = '';
102
- Object.keys(this.types).forEach(type => {
103
- const { label = '' } = this.types[type];
104
- if (label.length > longestLabel.length) {
105
- longestLabel = label;
106
- }
107
- });
108
- return longestLabel;
109
- }
110
- get longestUnderlinedLabel() {
111
- return underline(this.longestLabel);
112
- }
113
- getRetainedLogs(type) {
114
- return this.history[type] || [];
115
- }
116
- clearRetainedLogs(type) {
117
- if (type) {
118
- if (this.history[type]) {
119
- this.history[type] = [];
120
- }
121
- }
122
- else {
123
- this.history = {};
124
- }
125
- }
126
- }
127
- const logger = new Logger();
128
- exports.logger = logger;
129
- logger.Logger = Logger;
@@ -1,11 +0,0 @@
1
- import path from 'path';
2
- export declare const isLerna: (root: string) => boolean;
3
- export declare const isYarnWorkspaces: (root: string) => boolean;
4
- export declare const isPnpmWorkspaces: (root: string) => boolean;
5
- export declare const isMonorepo: (root: string) => boolean;
6
- export declare const isModernjsMonorepo: (root: string) => boolean;
7
- export declare const findMonorepoRoot: (appDirectory: string, maxDepth?: number) => string | undefined;
8
- export declare const getMonorepoPackages: (root: string) => {
9
- name: string;
10
- path: string;
11
- }[];
@@ -1,81 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getMonorepoPackages = exports.findMonorepoRoot = exports.isModernjsMonorepo = exports.isMonorepo = exports.isPnpmWorkspaces = exports.isYarnWorkspaces = exports.isLerna = void 0;
7
- const fs_1 = __importDefault(require("fs"));
8
- const path_1 = __importDefault(require("path"));
9
- const glob_1 = __importDefault(require("glob"));
10
- const yaml_1 = __importDefault(require("yaml"));
11
- const PACKAGE_MAX_DEPTH = 5;
12
- const WOKRSPACES_FILES = {
13
- YARN: 'package.json',
14
- PNPM: 'pnpm-workspaces.yaml',
15
- LERNA: 'lerna.json',
16
- };
17
- const isLerna = (root) => fs_1.default.existsSync(path_1.default.join(root, WOKRSPACES_FILES.LERNA));
18
- exports.isLerna = isLerna;
19
- const isYarnWorkspaces = (root) => {
20
- var _a;
21
- const pkg = path_1.default.join(root, WOKRSPACES_FILES.YARN);
22
- if (!fs_1.default.existsSync(pkg)) {
23
- return false;
24
- }
25
- const json = JSON.parse(fs_1.default.readFileSync(pkg, 'utf8'));
26
- return Boolean((_a = json.workspaces) === null || _a === void 0 ? void 0 : _a.packages);
27
- };
28
- exports.isYarnWorkspaces = isYarnWorkspaces;
29
- const isPnpmWorkspaces = (root) => fs_1.default.existsSync(path_1.default.join(root, WOKRSPACES_FILES.PNPM));
30
- exports.isPnpmWorkspaces = isPnpmWorkspaces;
31
- const isMonorepo = (root) => (0, exports.isLerna)(root) || (0, exports.isYarnWorkspaces)(root) || (0, exports.isPnpmWorkspaces)(root);
32
- exports.isMonorepo = isMonorepo;
33
- const isModernjsMonorepo = (root) => {
34
- const json = JSON.parse(fs_1.default.readFileSync(path_1.default.join(root, 'package.json'), 'utf8'));
35
- const deps = Object.assign(Object.assign({}, (json.dependencies || {})), (json.devDependencies || {}));
36
- return Boolean(deps['@modern-js/monorepo-tools']);
37
- };
38
- exports.isModernjsMonorepo = isModernjsMonorepo;
39
- const findMonorepoRoot = (appDirectory, maxDepth = PACKAGE_MAX_DEPTH) => {
40
- let inMonorepo = false;
41
- for (let depth = 0; depth < maxDepth; depth++) {
42
- if ((0, exports.isMonorepo)(appDirectory)) {
43
- inMonorepo = true;
44
- break;
45
- }
46
- // eslint-disable-next-line no-param-reassign
47
- appDirectory = path_1.default.dirname(appDirectory);
48
- }
49
- return inMonorepo ? appDirectory : undefined;
50
- };
51
- exports.findMonorepoRoot = findMonorepoRoot;
52
- const getMonorepoPackages = (root) => {
53
- let packages = [];
54
- if ((0, exports.isYarnWorkspaces)(root)) {
55
- const json = JSON.parse(fs_1.default.readFileSync(path_1.default.join(root, 'package.json'), 'utf8'));
56
- ({ packages } = json.workspaces);
57
- }
58
- else if ((0, exports.isLerna)(root)) {
59
- const json = JSON.parse(fs_1.default.readFileSync(path_1.default.resolve(root, 'lerna.json'), 'utf8'));
60
- ({ packages } = json);
61
- }
62
- else {
63
- ({ packages } = yaml_1.default.parse(fs_1.default.readFileSync(path_1.default.join(root, WOKRSPACES_FILES.PNPM), 'utf8')));
64
- }
65
- if (packages) {
66
- return packages
67
- .map(name =>
68
- // The trailing / ensures only dirs are picked up
69
- glob_1.default.sync(path_1.default.join(root, `${name}/`), {
70
- ignore: ['**/node_modules/**'],
71
- }))
72
- .reduce((acc, val) => acc.concat(val), [])
73
- .filter(filepath => fs_1.default.existsSync(path_1.default.resolve(filepath, 'package.json')))
74
- .map(filepath => ({
75
- path: filepath,
76
- name: JSON.parse(fs_1.default.readFileSync(path_1.default.resolve(filepath, 'package.json'), 'utf8')).name,
77
- }));
78
- }
79
- return [];
80
- };
81
- exports.getMonorepoPackages = getMonorepoPackages;
@@ -1,3 +0,0 @@
1
- export declare function canUseNpm(): Promise<boolean>;
2
- export declare function canUseYarn(): Promise<boolean>;
3
- export declare function canUsePnpm(): Promise<boolean>;
@@ -1,52 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.canUsePnpm = exports.canUseYarn = exports.canUseNpm = void 0;
16
- const execa_1 = __importDefault(require("execa"));
17
- function canUseNpm() {
18
- return __awaiter(this, void 0, void 0, function* () {
19
- try {
20
- yield (0, execa_1.default)('npm', ['--version'], { env: process.env });
21
- return true;
22
- }
23
- catch (e) {
24
- return false;
25
- }
26
- });
27
- }
28
- exports.canUseNpm = canUseNpm;
29
- function canUseYarn() {
30
- return __awaiter(this, void 0, void 0, function* () {
31
- try {
32
- yield (0, execa_1.default)('yarn', ['--version'], { env: process.env });
33
- return true;
34
- }
35
- catch (e) {
36
- return false;
37
- }
38
- });
39
- }
40
- exports.canUseYarn = canUseYarn;
41
- function canUsePnpm() {
42
- return __awaiter(this, void 0, void 0, function* () {
43
- try {
44
- yield (0, execa_1.default)('pnpm', ['--version'], { env: process.env });
45
- return true;
46
- }
47
- catch (e) {
48
- return false;
49
- }
50
- });
51
- }
52
- exports.canUsePnpm = canUsePnpm;
@@ -1,3 +0,0 @@
1
- export declare const isRelativePath: (test: string) => boolean;
2
- export declare const normalizeOutputPath: (s: string) => string;
3
- export declare const normalizeToPosixPath: (p: string) => string;
package/dist/src/path.js DELETED
@@ -1,14 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.normalizeToPosixPath = exports.normalizeOutputPath = exports.isRelativePath = void 0;
7
- const path_1 = __importDefault(require("path"));
8
- const upath_1 = __importDefault(require("upath"));
9
- const isRelativePath = (test) => /^\.\.?($|[\\/])/.test(test);
10
- exports.isRelativePath = isRelativePath;
11
- const normalizeOutputPath = (s) => s.replace(/\\/g, '\\\\');
12
- exports.normalizeOutputPath = normalizeOutputPath;
13
- const normalizeToPosixPath = (p) => upath_1.default.normalizeSafe(path_1.default.normalize(p));
14
- exports.normalizeToPosixPath = normalizeToPosixPath;
@@ -1,6 +0,0 @@
1
- interface EntryPoint {
2
- entryName: string;
3
- }
4
- export declare const isSingleEntry: (entrypoints: EntryPoint[]) => boolean;
5
- export declare const prettyInstructions: (appContext: any, config: any) => string;
6
- export {};
@@ -1,64 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.prettyInstructions = exports.isSingleEntry = void 0;
7
- const os_1 = __importDefault(require("os"));
8
- const compiled_1 = require("./compiled");
9
- const is_1 = require("./is");
10
- // TODO: remove hard code 'main'
11
- const isSingleEntry = (entrypoints) => entrypoints.length === 1 && entrypoints[0].entryName === 'main';
12
- exports.isSingleEntry = isSingleEntry;
13
- const normalizeUrl = (url) => url.replace(/([^:]\/)\/+/g, '$1');
14
- const getAddressUrls = (protocol = 'http', port) => {
15
- const interfaces = os_1.default.networkInterfaces();
16
- const ipv4Interfaces = [];
17
- Object.keys(interfaces).forEach(key => {
18
- interfaces[key].forEach(detail => {
19
- if (detail.family === 'IPv4') {
20
- ipv4Interfaces.push(detail);
21
- }
22
- });
23
- });
24
- return ipv4Interfaces.reduce((memo, detail) => {
25
- let type = 'Network: ';
26
- let url = `${protocol}://${detail.address}:${port}`;
27
- if (detail.address.includes(`localhost`)) {
28
- type = 'Local: ';
29
- url = `${protocol}://localhost:${port}`;
30
- }
31
- memo.push({ type, url });
32
- return memo;
33
- }, []);
34
- };
35
- const prettyInstructions = (appContext, config) => {
36
- const { entrypoints, serverRoutes, port, existSrc, checkedEntries } = appContext;
37
- const urls = getAddressUrls(config.dev.https && (0, is_1.isDev)() ? 'https' : 'http', port);
38
- const routes = existSrc
39
- ? serverRoutes.filter(route => route.entryName)
40
- : serverRoutes;
41
- let message = 'App running at:\n\n';
42
- if ((0, exports.isSingleEntry)(entrypoints) || !existSrc) {
43
- message += urls
44
- .map(({ type, url }) => ` ${compiled_1.chalk.bold(`> ${type.padEnd(10)}`)}${compiled_1.chalk.cyanBright(normalizeUrl(`${url}/${routes[0].urlPath}`))}\n`)
45
- .join('');
46
- }
47
- else {
48
- const maxNameLength = Math.max(...routes.map(r => r.entryName.length));
49
- urls.forEach(({ type, url }) => {
50
- message += ` ${compiled_1.chalk.bold(`> ${type}`)}\n`;
51
- routes.forEach(({ entryName, urlPath, isSSR }) => {
52
- if (!checkedEntries.includes(entryName)) {
53
- return;
54
- }
55
- message += ` ${compiled_1.chalk.yellowBright(isSSR ? 'λ' : '○')} ${compiled_1.chalk.yellowBright(entryName.padEnd(maxNameLength + 8))}${compiled_1.chalk.cyanBright(normalizeUrl(`${url}/${urlPath}`))}\n`;
56
- });
57
- });
58
- message += '\n';
59
- message += compiled_1.chalk.cyanBright(' λ (Server) server-side renders at runtime\n');
60
- message += compiled_1.chalk.cyanBright(' ○ (Static) client-side rendered as static HTML\n');
61
- }
62
- return message;
63
- };
64
- exports.prettyInstructions = prettyInstructions;
@@ -1,8 +0,0 @@
1
- /**
2
- * Copyright (c) 2015-present, Facebook, Inc.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file at
6
- * https://github.com/facebook/create-react-app/blob/master/LICENSE
7
- */
8
- export declare function printBuildError(err: Error): void;
@@ -1,43 +0,0 @@
1
- "use strict";
2
- /* eslint-disable eslint-comments/no-unlimited-disable */
3
- /* eslint-disable */
4
- /**
5
- * Copyright (c) 2015-present, Facebook, Inc.
6
- *
7
- * This source code is licensed under the MIT license found in the
8
- * LICENSE file at
9
- * https://github.com/facebook/create-react-app/blob/master/LICENSE
10
- */
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.printBuildError = void 0;
13
- // Modified by Chao Xu (xuchaobei)
14
- const compiled_1 = require("./compiled");
15
- const logger_1 = require("./logger");
16
- function printBuildError(err) {
17
- const message = err != null && err.message;
18
- const stack = err != null && err.stack;
19
- // Add more helpful message for Terser error
20
- if (stack &&
21
- typeof message === 'string' &&
22
- message.indexOf('from Terser') !== -1) {
23
- try {
24
- const matched = /(.+)\[(.+):(.+),(.+)\]\[.+\]/.exec(stack);
25
- if (!matched) {
26
- throw new Error('Using errors for control flow is bad.');
27
- }
28
- const problemPath = matched[2];
29
- const line = matched[3];
30
- const column = matched[4];
31
- logger_1.logger.error(`Failed to minify the code from this file: \n\n ${compiled_1.chalk.yellow(`\t${problemPath}:${line}${column !== '0' ? ':' + column : ''}`)}\n`);
32
- }
33
- catch (ignored) {
34
- logger_1.logger.error(`Failed to minify the bundle. ${err}\n`);
35
- }
36
- }
37
- else {
38
- logger_1.logger.error((message || err) + '\n');
39
- }
40
- logger_1.logger.log();
41
- }
42
- exports.printBuildError = printBuildError;
43
- /* eslint-enable */
@@ -1,2 +0,0 @@
1
- export declare const readTsConfig: (root: string) => any;
2
- export declare const readTsConfigByFile: (filename: string) => any;