@modern-js/utils 1.3.6 → 1.3.8-canary.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (317) hide show
  1. package/.eslintrc.js +9 -0
  2. package/CHANGELOG.md +6 -0
  3. package/compiled/browserslist/index.d.ts +178 -0
  4. package/compiled/browserslist/index.js +1 -0
  5. package/compiled/browserslist/license +20 -0
  6. package/compiled/browserslist/package.json +1 -0
  7. package/compiled/chalk/index.d.ts +415 -0
  8. package/compiled/chalk/index.js +1 -0
  9. package/compiled/chalk/license +9 -0
  10. package/compiled/chalk/package.json +1 -0
  11. package/compiled/chokidar/anymatch/index.d.ts +19 -0
  12. package/compiled/chokidar/fsevents.node +0 -0
  13. package/compiled/chokidar/index.js +40 -0
  14. package/compiled/chokidar/license +21 -0
  15. package/compiled/chokidar/package.json +1 -0
  16. package/compiled/chokidar/types/index.d.ts +188 -0
  17. package/compiled/commander/index.js +1 -0
  18. package/compiled/commander/license +22 -0
  19. package/compiled/commander/package.json +1 -0
  20. package/compiled/commander/typings/index.d.ts +774 -0
  21. package/compiled/debug/index.d.ts +54 -0
  22. package/compiled/debug/index.js +1 -0
  23. package/compiled/debug/license +20 -0
  24. package/compiled/debug/ms/index.d.ts +25 -0
  25. package/compiled/debug/package.json +1 -0
  26. package/compiled/execa/index.d.ts +564 -0
  27. package/compiled/execa/index.js +1 -0
  28. package/compiled/execa/license +9 -0
  29. package/compiled/execa/package.json +1 -0
  30. package/compiled/filesize/filesize.d.ts +131 -0
  31. package/compiled/filesize/index.js +9 -0
  32. package/compiled/filesize/license +28 -0
  33. package/compiled/filesize/package.json +1 -0
  34. package/compiled/fs-extra/index.d.ts +563 -0
  35. package/compiled/fs-extra/index.js +1 -0
  36. package/compiled/fs-extra/license +15 -0
  37. package/compiled/fs-extra/package.json +1 -0
  38. package/compiled/glob/index.d.ts +91 -0
  39. package/compiled/glob/index.js +1 -0
  40. package/compiled/glob/license +21 -0
  41. package/compiled/glob/minimatch/index.d.ts +204 -0
  42. package/compiled/glob/package.json +1 -0
  43. package/compiled/gzip-size/index.d.ts +96 -0
  44. package/compiled/gzip-size/index.js +1 -0
  45. package/compiled/gzip-size/license +9 -0
  46. package/compiled/gzip-size/package.json +1 -0
  47. package/compiled/import-lazy/index.d.ts +26 -0
  48. package/compiled/import-lazy/index.js +1 -0
  49. package/compiled/import-lazy/license +9 -0
  50. package/compiled/import-lazy/package.json +1 -0
  51. package/compiled/js-yaml/index.d.ts +154 -0
  52. package/compiled/js-yaml/index.js +1 -0
  53. package/compiled/js-yaml/license +21 -0
  54. package/compiled/js-yaml/package.json +1 -0
  55. package/compiled/lodash/common/array.d.ts +2126 -0
  56. package/compiled/lodash/common/collection.d.ts +1930 -0
  57. package/compiled/lodash/common/common.d.ts +280 -0
  58. package/compiled/lodash/common/date.d.ts +23 -0
  59. package/compiled/lodash/common/function.d.ts +1446 -0
  60. package/compiled/lodash/common/lang.d.ts +1693 -0
  61. package/compiled/lodash/common/math.d.ts +405 -0
  62. package/compiled/lodash/common/number.d.ts +131 -0
  63. package/compiled/lodash/common/object.d.ts +2519 -0
  64. package/compiled/lodash/common/seq.d.ts +210 -0
  65. package/compiled/lodash/common/string.d.ts +788 -0
  66. package/compiled/lodash/common/util.d.ts +1220 -0
  67. package/compiled/lodash/index.d.ts +46 -0
  68. package/compiled/lodash/index.js +9 -0
  69. package/compiled/lodash/license +47 -0
  70. package/compiled/lodash/package.json +1 -0
  71. package/compiled/pkg-up/index.d.ts +48 -0
  72. package/compiled/pkg-up/index.js +1 -0
  73. package/compiled/pkg-up/license +9 -0
  74. package/compiled/pkg-up/package.json +1 -0
  75. package/compiled/recursive-readdir/index.d.ts +21 -0
  76. package/compiled/recursive-readdir/index.js +1 -0
  77. package/compiled/recursive-readdir/license +21 -0
  78. package/compiled/recursive-readdir/package.json +1 -0
  79. package/compiled/signale/index.d.ts +162 -0
  80. package/compiled/signale/index.js +1 -0
  81. package/compiled/signale/package.json +1 -0
  82. package/compiled/strip-ansi/index.d.ts +17 -0
  83. package/compiled/strip-ansi/index.js +1 -0
  84. package/compiled/strip-ansi/license +9 -0
  85. package/compiled/strip-ansi/package.json +1 -0
  86. package/compiled/upath/index.js +1 -0
  87. package/compiled/upath/license +22 -0
  88. package/compiled/upath/package.json +1 -0
  89. package/compiled/upath/upath.d.ts +241 -0
  90. package/dist/FileSizeReporter.d.ts +16 -0
  91. package/dist/FileSizeReporter.js +151 -0
  92. package/dist/alias.d.ts +21 -0
  93. package/dist/alias.js +62 -0
  94. package/dist/applyOptionsChain.d.ts +6 -0
  95. package/dist/applyOptionsChain.js +30 -0
  96. package/dist/clearConsole.d.ts +1 -0
  97. package/dist/clearConsole.js +9 -0
  98. package/dist/compatRequire.d.ts +8 -0
  99. package/dist/compatRequire.js +28 -0
  100. package/dist/compiled.d.ts +21 -0
  101. package/dist/compiled.js +33 -0
  102. package/dist/constants.d.ts +222 -0
  103. package/dist/constants.js +277 -0
  104. package/dist/{js/modern/debug.js → debug.d.ts} +1 -3
  105. package/dist/debug.js +11 -0
  106. package/dist/emptyDir.d.ts +1 -0
  107. package/dist/emptyDir.js +19 -0
  108. package/dist/{js/modern/ensureAbsolutePath.js → ensureAbsolutePath.d.ts} +1 -3
  109. package/dist/ensureAbsolutePath.js +15 -0
  110. package/dist/findExists.d.ts +6 -0
  111. package/dist/findExists.js +21 -0
  112. package/dist/format.d.ts +16 -0
  113. package/dist/format.js +113 -0
  114. package/dist/generateMetaTags.d.ts +16 -0
  115. package/dist/generateMetaTags.js +48 -0
  116. package/dist/getBrowserslist.d.ts +2 -0
  117. package/dist/getBrowserslist.js +7 -0
  118. package/dist/getCacheIdentifier.d.ts +7 -0
  119. package/dist/getCacheIdentifier.js +24 -0
  120. package/dist/getEntryOptions.d.ts +1 -0
  121. package/dist/getEntryOptions.js +26 -0
  122. package/dist/getPackageManager.d.ts +1 -0
  123. package/dist/getPackageManager.js +47 -0
  124. package/dist/getPort.d.ts +7 -0
  125. package/dist/getPort.js +62 -0
  126. package/dist/getServerConfig.d.ts +1 -0
  127. package/dist/getServerConfig.js +39 -0
  128. package/dist/import.d.ts +5 -0
  129. package/dist/import.js +10 -0
  130. package/dist/index.d.ts +33 -0
  131. package/dist/index.js +45 -0
  132. package/dist/is/index.d.ts +34 -0
  133. package/dist/is/index.js +82 -0
  134. package/dist/is/node-env.d.ts +4 -0
  135. package/dist/is/node-env.js +12 -0
  136. package/dist/is/platform.d.ts +2 -0
  137. package/dist/is/platform.js +10 -0
  138. package/dist/is/type.d.ts +8 -0
  139. package/dist/is/type.js +38 -0
  140. package/dist/js/modern/monorepo.js +4 -5
  141. package/dist/js/node/monorepo.js +5 -7
  142. package/dist/js/treeshaking/monorepo.js +7 -6
  143. package/dist/logger.d.ts +63 -0
  144. package/dist/logger.js +128 -0
  145. package/dist/monorepo.d.ts +11 -0
  146. package/dist/monorepo.js +80 -0
  147. package/dist/nodeEnv.d.ts +3 -0
  148. package/dist/nodeEnv.js +49 -0
  149. package/dist/path.d.ts +3 -0
  150. package/dist/path.js +14 -0
  151. package/dist/{types/pkgUp.d.ts → pkgUp.d.ts} +1 -1
  152. package/dist/pkgUp.js +8 -0
  153. package/dist/prettyInstructions.d.ts +6 -0
  154. package/dist/prettyInstructions.js +64 -0
  155. package/dist/printBuildError.d.ts +8 -0
  156. package/dist/printBuildError.js +43 -0
  157. package/dist/readTsConfig.d.ts +2 -0
  158. package/dist/readTsConfig.js +19 -0
  159. package/dist/removeSlash.d.ts +3 -0
  160. package/dist/removeSlash.js +9 -0
  161. package/dist/runtimeExports.d.ts +4 -0
  162. package/dist/runtimeExports.js +53 -0
  163. package/dist/ssrHelpers.d.ts +4 -0
  164. package/dist/ssrHelpers.js +7 -0
  165. package/dist/storage.d.ts +5 -0
  166. package/dist/storage.js +61 -0
  167. package/dist/types/FileSizeReporter.d.ts +5 -5
  168. package/dist/types/alias.d.ts +12 -14
  169. package/dist/types/applyOptionsChain.d.ts +5 -5
  170. package/dist/types/clearConsole.d.ts +1 -1
  171. package/dist/types/compatRequire.d.ts +1 -1
  172. package/dist/types/compiled.d.ts +17 -0
  173. package/dist/types/constants.d.ts +165 -162
  174. package/dist/types/debug.d.ts +1 -3
  175. package/dist/types/emptyDir.d.ts +1 -1
  176. package/dist/types/ensureAbsolutePath.d.ts +1 -1
  177. package/dist/types/findExists.d.ts +1 -1
  178. package/dist/types/format.d.ts +5 -5
  179. package/dist/types/generateMetaTags.d.ts +3 -3
  180. package/dist/types/getBrowserslist.d.ts +1 -1
  181. package/dist/types/getCacheIdentifier.d.ts +3 -3
  182. package/dist/types/getEntryOptions.d.ts +1 -1
  183. package/dist/types/getPackageManager.d.ts +1 -1
  184. package/dist/types/getPort.d.ts +1 -1
  185. package/dist/types/getServerConfig.d.ts +1 -0
  186. package/dist/types/import.d.ts +2 -2
  187. package/dist/types/index.d.ts +3 -4
  188. package/dist/types/is/index.d.ts +1 -4
  189. package/dist/types/is/node-env.d.ts +1 -1
  190. package/dist/types/is/platform.d.ts +1 -1
  191. package/dist/types/is/type.d.ts +1 -1
  192. package/dist/types/logger.d.ts +49 -49
  193. package/dist/types/monorepo.d.ts +3 -3
  194. package/dist/types/nodeEnv.d.ts +1 -1
  195. package/dist/types/path.d.ts +1 -1
  196. package/dist/types/prettyInstructions.d.ts +2 -2
  197. package/dist/types/printBuildError.d.ts +1 -1
  198. package/dist/types/readTsConfig.d.ts +1 -1
  199. package/dist/types/removeSlash.d.ts +1 -1
  200. package/dist/types/runtimeExports.d.ts +3 -3
  201. package/dist/types/wait.d.ts +1 -1
  202. package/dist/types/watch.d.ts +4 -4
  203. package/dist/wait.d.ts +2 -0
  204. package/dist/wait.js +7 -0
  205. package/dist/watch.d.ts +8 -0
  206. package/dist/watch.js +64 -0
  207. package/jest.config.js +0 -1
  208. package/package.json +57 -40
  209. package/tests/debug.test.ts +2 -2
  210. package/tests/is.test.ts +27 -0
  211. package/tests/isPlatform.test.ts +19 -0
  212. package/tests/prettyInstructions.test.ts +1 -1
  213. package/tsconfig.json +3 -5
  214. package/dist/js/modern/FileSizeReporter.js +0 -156
  215. package/dist/js/modern/alias.js +0 -74
  216. package/dist/js/modern/applyOptionsChain.js +0 -27
  217. package/dist/js/modern/chalk.js +0 -2
  218. package/dist/js/modern/clearConsole.js +0 -5
  219. package/dist/js/modern/compatRequire.js +0 -26
  220. package/dist/js/modern/constants.js +0 -333
  221. package/dist/js/modern/emptyDir.js +0 -6
  222. package/dist/js/modern/findExists.js +0 -16
  223. package/dist/js/modern/format.js +0 -137
  224. package/dist/js/modern/generateMetaTags.js +0 -49
  225. package/dist/js/modern/getBrowserslist.js +0 -5
  226. package/dist/js/modern/getCacheIdentifier.js +0 -20
  227. package/dist/js/modern/getEntryOptions.js +0 -24
  228. package/dist/js/modern/getPackageManager.js +0 -37
  229. package/dist/js/modern/getPort.js +0 -52
  230. package/dist/js/modern/import.js +0 -11
  231. package/dist/js/modern/index.js +0 -34
  232. package/dist/js/modern/is/index.js +0 -77
  233. package/dist/js/modern/is/node-env.js +0 -5
  234. package/dist/js/modern/is/platform.js +0 -2
  235. package/dist/js/modern/is/type.js +0 -27
  236. package/dist/js/modern/logger.js +0 -152
  237. package/dist/js/modern/nodeEnv.js +0 -31
  238. package/dist/js/modern/path.js +0 -5
  239. package/dist/js/modern/pkgUp.js +0 -2
  240. package/dist/js/modern/prettyInstructions.js +0 -79
  241. package/dist/js/modern/printBuildError.js +0 -40
  242. package/dist/js/modern/readTsConfig.js +0 -13
  243. package/dist/js/modern/removeSlash.js +0 -3
  244. package/dist/js/modern/runtimeExports.js +0 -52
  245. package/dist/js/modern/wait.js +0 -5
  246. package/dist/js/modern/watch.js +0 -43
  247. package/dist/js/node/FileSizeReporter.js +0 -175
  248. package/dist/js/node/alias.js +0 -97
  249. package/dist/js/node/applyOptionsChain.js +0 -37
  250. package/dist/js/node/chalk.js +0 -15
  251. package/dist/js/node/clearConsole.js +0 -14
  252. package/dist/js/node/compatRequire.js +0 -41
  253. package/dist/js/node/constants.js +0 -353
  254. package/dist/js/node/debug.js +0 -19
  255. package/dist/js/node/emptyDir.js +0 -18
  256. package/dist/js/node/ensureAbsolutePath.js +0 -20
  257. package/dist/js/node/findExists.js +0 -27
  258. package/dist/js/node/format.js +0 -141
  259. package/dist/js/node/generateMetaTags.js +0 -58
  260. package/dist/js/node/getBrowserslist.js +0 -17
  261. package/dist/js/node/getCacheIdentifier.js +0 -27
  262. package/dist/js/node/getEntryOptions.js +0 -35
  263. package/dist/js/node/getPackageManager.js +0 -51
  264. package/dist/js/node/getPort.js +0 -67
  265. package/dist/js/node/import.js +0 -19
  266. package/dist/js/node/index.js +0 -465
  267. package/dist/js/node/is/index.js +0 -150
  268. package/dist/js/node/is/node-env.js +0 -23
  269. package/dist/js/node/is/platform.js +0 -14
  270. package/dist/js/node/is/type.js +0 -48
  271. package/dist/js/node/logger.js +0 -162
  272. package/dist/js/node/nodeEnv.js +0 -45
  273. package/dist/js/node/path.js +0 -24
  274. package/dist/js/node/pkgUp.js +0 -15
  275. package/dist/js/node/prettyInstructions.js +0 -95
  276. package/dist/js/node/printBuildError.js +0 -52
  277. package/dist/js/node/readTsConfig.js +0 -28
  278. package/dist/js/node/removeSlash.js +0 -18
  279. package/dist/js/node/runtimeExports.js +0 -68
  280. package/dist/js/node/wait.js +0 -12
  281. package/dist/js/node/watch.js +0 -61
  282. package/dist/js/treeshaking/FileSizeReporter.js +0 -185
  283. package/dist/js/treeshaking/alias.js +0 -72
  284. package/dist/js/treeshaking/applyOptionsChain.js +0 -31
  285. package/dist/js/treeshaking/chalk.js +0 -2
  286. package/dist/js/treeshaking/clearConsole.js +0 -5
  287. package/dist/js/treeshaking/compatRequire.js +0 -29
  288. package/dist/js/treeshaking/constants.js +0 -333
  289. package/dist/js/treeshaking/debug.js +0 -10
  290. package/dist/js/treeshaking/emptyDir.js +0 -37
  291. package/dist/js/treeshaking/ensureAbsolutePath.js +0 -11
  292. package/dist/js/treeshaking/findExists.js +0 -33
  293. package/dist/js/treeshaking/format.js +0 -167
  294. package/dist/js/treeshaking/generateMetaTags.js +0 -55
  295. package/dist/js/treeshaking/getBrowserslist.js +0 -7
  296. package/dist/js/treeshaking/getCacheIdentifier.js +0 -35
  297. package/dist/js/treeshaking/getEntryOptions.js +0 -26
  298. package/dist/js/treeshaking/getPackageManager.js +0 -101
  299. package/dist/js/treeshaking/getPort.js +0 -103
  300. package/dist/js/treeshaking/import.js +0 -11
  301. package/dist/js/treeshaking/index.js +0 -34
  302. package/dist/js/treeshaking/is/index.js +0 -81
  303. package/dist/js/treeshaking/is/node-env.js +0 -13
  304. package/dist/js/treeshaking/is/platform.js +0 -6
  305. package/dist/js/treeshaking/is/type.js +0 -29
  306. package/dist/js/treeshaking/logger.js +0 -188
  307. package/dist/js/treeshaking/nodeEnv.js +0 -108
  308. package/dist/js/treeshaking/path.js +0 -11
  309. package/dist/js/treeshaking/pkgUp.js +0 -2
  310. package/dist/js/treeshaking/prettyInstructions.js +0 -100
  311. package/dist/js/treeshaking/printBuildError.js +0 -40
  312. package/dist/js/treeshaking/readTsConfig.js +0 -13
  313. package/dist/js/treeshaking/removeSlash.js +0 -9
  314. package/dist/js/treeshaking/runtimeExports.js +0 -61
  315. package/dist/js/treeshaking/wait.js +0 -8
  316. package/dist/js/treeshaking/watch.js +0 -112
  317. package/dist/types/chalk.d.ts +0 -2
@@ -1,63 +1,63 @@
1
- import { Color } from 'chalk';
1
+ import { Color } from '../compiled/chalk';
2
2
  declare type LogLevel = 'debug' | 'info' | 'warn' | 'error';
3
3
  interface LoggerConfiguration {
4
- color?: typeof Color;
5
- label?: string;
6
- level?: LogLevel;
4
+ color?: typeof Color;
5
+ label?: string;
6
+ level?: LogLevel;
7
7
  }
8
8
  interface InstanceConfiguration {
9
- displayLabel?: boolean;
10
- underlineLabel?: boolean;
11
- uppercaseLabel?: boolean;
9
+ displayLabel?: boolean;
10
+ underlineLabel?: boolean;
11
+ uppercaseLabel?: boolean;
12
12
  }
13
13
  interface ConstructorOptions {
14
- config?: InstanceConfiguration;
15
- types?: Record<string, LoggerConfiguration>;
14
+ config?: InstanceConfiguration;
15
+ types?: Record<string, LoggerConfiguration>;
16
16
  }
17
17
  declare type LoggerFunction = (message?: number | string | Error, ...args: any[]) => void;
18
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
- };
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
42
  };
43
-
44
43
  declare class Logger {
45
- private readonly logCount;
46
- private history;
47
- private readonly config;
48
- private readonly types;
49
- private readonly longestLabel;
50
- [key: string]: any;
51
- constructor(options?: ConstructorOptions);
52
- private retainLog;
53
- private _log;
54
- private getLongestLabel;
55
- private get longestUnderlinedLabel();
56
- getRetainedLogs(type: string): string[];
57
- clearRetainedLogs(type: string): void;
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;
58
57
  }
59
-
60
- declare type LoggerInterface = { [key in keyof typeof LOG_TYPES]: LoggerFunction };
58
+ declare type LoggerInterface = {
59
+ [key in keyof typeof LOG_TYPES]: LoggerFunction;
60
+ };
61
61
  declare const logger: Logger & LoggerInterface;
62
62
  export { logger };
63
- export type { LoggerInterface };
63
+ export type { LoggerInterface };
@@ -6,6 +6,6 @@ export declare const isMonorepo: (root: string) => boolean;
6
6
  export declare const isModernjsMonorepo: (root: string) => boolean;
7
7
  export declare const findMonorepoRoot: (appDirectory: string, maxDepth?: number) => string | undefined;
8
8
  export declare const getMonorepoPackages: (root: string) => {
9
- name: string;
10
- path: string;
11
- }[];
9
+ name: string;
10
+ path: string;
11
+ }[];
@@ -1,3 +1,3 @@
1
1
  export declare function canUseNpm(): Promise<boolean>;
2
2
  export declare function canUseYarn(): Promise<boolean>;
3
- export declare function canUsePnpm(): Promise<boolean>;
3
+ export declare function canUsePnpm(): Promise<boolean>;
@@ -1,3 +1,3 @@
1
1
  export declare const isRelativePath: (test: string) => boolean;
2
2
  export declare const normalizeOutputPath: (s: string) => string;
3
- export declare const normalizeToPosixPath: (p: string) => string;
3
+ export declare const normalizeToPosixPath: (p: string) => string;
@@ -1,6 +1,6 @@
1
1
  interface EntryPoint {
2
- entryName: string;
2
+ entryName: string;
3
3
  }
4
4
  export declare const isSingleEntry: (entrypoints: EntryPoint[]) => boolean;
5
5
  export declare const prettyInstructions: (appContext: any, config: any) => string;
6
- export {};
6
+ export {};
@@ -5,4 +5,4 @@
5
5
  * LICENSE file at
6
6
  * https://github.com/facebook/create-react-app/blob/master/LICENSE
7
7
  */
8
- export declare function printBuildError(err: Error): void;
8
+ export declare function printBuildError(err: Error): void;
@@ -1,2 +1,2 @@
1
1
  export declare const readTsConfig: (root: string) => any;
2
- export declare const readTsConfigByFile: (filename: string) => any;
2
+ export declare const readTsConfigByFile: (filename: string) => any;
@@ -1,3 +1,3 @@
1
1
  export declare const removeLeadingSlash: (s: string) => string;
2
2
  export declare const removeTailSlash: (s: string) => string;
3
- export declare const removeSlash: (s: string) => string;
3
+ export declare const removeSlash: (s: string) => string;
@@ -1,4 +1,4 @@
1
1
  export declare const createRuntimeExportsUtils: (pwd: any, namespace: string, ts?: any) => {
2
- addExport: (statement: string) => void;
3
- getPath: () => string;
4
- };
2
+ addExport: (statement: string) => void;
3
+ getPath: () => string;
4
+ };
@@ -1,2 +1,2 @@
1
1
  declare const wait: (time?: number) => Promise<unknown>;
2
- export { wait };
2
+ export { wait };
@@ -1,8 +1,8 @@
1
1
  export declare type WatchChangeTypeValueT = 'add' | 'unlink' | 'change';
2
2
  export declare const WatchChangeType: Record<'ADD' | 'UNLINK' | 'CHANGE', WatchChangeTypeValueT>;
3
3
  declare type RunTaskType = (option: {
4
- changedFilePath: string;
5
- changeType: WatchChangeTypeValueT;
4
+ changedFilePath: string;
5
+ changeType: WatchChangeTypeValueT;
6
6
  }) => void | Promise<void>;
7
- export declare const watch: (watchDir: string | string[], runTask: RunTaskType, ignored?: string[]) => import("chokidar").FSWatcher;
8
- export {};
7
+ export declare const watch: (watchDir: string | string[], runTask: RunTaskType, ignored?: string[]) => import("./compiled").FSWatcher;
8
+ export {};
package/dist/wait.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ declare const wait: (time?: number) => Promise<unknown>;
2
+ export { wait };
package/dist/wait.js ADDED
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.wait = void 0;
4
+ const wait = (time = 0) => new Promise(resolve => {
5
+ setTimeout(resolve, time);
6
+ });
7
+ exports.wait = wait;
@@ -0,0 +1,8 @@
1
+ export declare type WatchChangeTypeValueT = 'add' | 'unlink' | 'change';
2
+ export declare const WatchChangeType: Record<'ADD' | 'UNLINK' | 'CHANGE', WatchChangeTypeValueT>;
3
+ declare type RunTaskType = (option: {
4
+ changedFilePath: string;
5
+ changeType: WatchChangeTypeValueT;
6
+ }) => void | Promise<void>;
7
+ export declare const watch: (watchDir: string | string[], runTask: RunTaskType, ignored?: string[]) => import("./compiled").FSWatcher;
8
+ export {};
package/dist/watch.js ADDED
@@ -0,0 +1,64 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
22
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
23
+ return new (P || (P = Promise))(function (resolve, reject) {
24
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
25
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
26
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
27
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
28
+ });
29
+ };
30
+ Object.defineProperty(exports, "__esModule", { value: true });
31
+ exports.watch = exports.WatchChangeType = void 0;
32
+ const path = __importStar(require("path"));
33
+ const compiled_1 = require("./compiled");
34
+ exports.WatchChangeType = {
35
+ ADD: 'add',
36
+ UNLINK: 'unlink',
37
+ CHANGE: 'change',
38
+ };
39
+ const watch = (watchDir, runTask, ignored = []) => {
40
+ let ready = false;
41
+ const watcher = compiled_1.chokidar.watch(watchDir, {
42
+ ignored,
43
+ });
44
+ watcher.on('ready', () => (ready = true));
45
+ watcher.on('change', (filePath) => __awaiter(void 0, void 0, void 0, function* () {
46
+ const changedFilePath = path.resolve(filePath);
47
+ yield runTask({ changedFilePath, changeType: exports.WatchChangeType.CHANGE });
48
+ }));
49
+ watcher.on('add', (filePath) => __awaiter(void 0, void 0, void 0, function* () {
50
+ const changedFilePath = path.resolve(filePath);
51
+ if (ready) {
52
+ yield runTask({ changedFilePath, changeType: exports.WatchChangeType.ADD });
53
+ }
54
+ }));
55
+ watcher.on('unlink', (filePath) => __awaiter(void 0, void 0, void 0, function* () {
56
+ const changedFilePath = path.resolve(filePath);
57
+ yield runTask({ changedFilePath, changeType: exports.WatchChangeType.UNLINK });
58
+ }));
59
+ watcher.on('error', err => {
60
+ throw err;
61
+ });
62
+ return watcher;
63
+ };
64
+ exports.watch = watch;
package/jest.config.js CHANGED
@@ -2,7 +2,6 @@ const sharedConfig = require('@scripts/jest-config');
2
2
 
3
3
  /** @type {import('@jest/types').Config.InitialOptions} */
4
4
  module.exports = {
5
- // eslint-disable-next-line node/no-unsupported-features/es-syntax
6
5
  ...sharedConfig,
7
6
  rootDir: __dirname,
8
7
  modulePathIgnorePatterns: [
package/package.json CHANGED
@@ -11,81 +11,98 @@
11
11
  "modern",
12
12
  "modern.js"
13
13
  ],
14
- "version": "1.3.6",
14
+ "version": "1.3.8-canary.0",
15
15
  "jsnext:source": "./src/index.ts",
16
- "types": "./dist/types/index.d.ts",
17
- "main": "./dist/js/node/index.js",
18
- "module": "./dist/js/treeshaking/index.js",
19
- "jsnext:modern": "./dist/js/modern/index.js",
16
+ "types": "./dist/index.d.ts",
17
+ "main": "./dist/index.js",
18
+ "module": "./dist/index.js",
19
+ "jsnext:modern": "./dist/index.js",
20
20
  "exports": {
21
21
  ".": {
22
- "node": {
23
- "jsnext:source": "./src/index.ts",
24
- "import": "./dist/js/modern/index.js",
25
- "require": "./dist/js/node/index.js"
26
- },
27
- "default": "./dist/js/treeshaking/index.js"
22
+ "jsnext:source": "./src/index.ts",
23
+ "default": "./dist/index.js"
28
24
  },
29
25
  "./format": {
30
26
  "jsnext:source": "./src/format.ts",
31
- "default": "./dist/js/treeshaking/format.js"
27
+ "default": "./dist/format.js"
32
28
  },
33
29
  "./constants": {
34
30
  "jsnext:source": "./src/constants.ts",
35
- "default": "./dist/js/treeshaking/constants.js"
31
+ "default": "./dist/constants.js"
32
+ },
33
+ "./lodash": {
34
+ "jsnext:source": "./compiled/lodash/index.js",
35
+ "default": "./compiled/lodash/index.js"
36
+ },
37
+ "./strip-ansi": {
38
+ "jsnext:source": "./compiled/strip-ansi/index.js",
39
+ "default": "./compiled/strip-ansi/index.js"
36
40
  }
37
41
  },
38
42
  "typesVersions": {
39
43
  "*": {
40
44
  "format": [
41
- "./dist/types/format.d.ts"
45
+ "./dist/format.d.ts"
42
46
  ],
43
47
  "constants": [
44
- "./dist/types/constants.d.ts"
48
+ "./dist/constants.d.ts"
49
+ ],
50
+ "lodash": [
51
+ "./compiled/lodash/index.d.ts"
52
+ ],
53
+ "strip-ansi": [
54
+ "./compiled/strip-ansi/index.d.ts"
45
55
  ]
46
56
  }
47
57
  },
48
58
  "dependencies": {
49
59
  "@babel/runtime": "^7",
50
- "@types/fs-extra": "^9.0.12",
51
- "browserslist": "^4.16.7",
52
- "chalk": "^4.1.2",
53
- "chokidar": "^3.5.2",
54
- "debug": "^4.3.2",
55
- "filesize": "^7.0.0",
56
- "fs-extra": "^10.0.0",
57
- "glob": "^7.1.7",
58
- "gzip-size": "^6.0.0",
59
- "import-lazy": "^4.0.0",
60
- "pkg-up": "^3.1.0",
61
- "recursive-readdir": "^2.2.2",
62
- "strip-ansi": "6.0.0",
63
- "upath": "^2.0.1",
64
- "yaml": "^1.10.2",
65
- "execa": "5",
66
60
  "typescript": "^4"
67
61
  },
68
62
  "devDependencies": {
69
- "@types/debug": "^4.1.7",
70
- "@types/fs-extra": "^9.0.12",
63
+ "@modern-js/types": "^1.3.6",
64
+ "@scripts/build": "0.0.0",
65
+ "@scripts/jest-config": "0.0.0",
66
+ "@types/debug": "4.1.7",
67
+ "@types/fs-extra": "9.0.13",
71
68
  "@types/glob": "^7.1.4",
72
69
  "@types/jest": "^26",
70
+ "@types/js-yaml": "4.0.5",
71
+ "@types/lodash": "4.14.181",
73
72
  "@types/node": "^14",
74
- "@types/recursive-readdir": "^2.2.0",
75
- "webpack": "^5.54.0",
76
- "@scripts/build": "0.0.0",
73
+ "@types/recursive-readdir": "2.2.0",
74
+ "@types/signale": "1.4.4",
75
+ "browserslist": "4.20.2",
76
+ "chalk": "4.1.2",
77
+ "chokidar": "3.5.3",
78
+ "commander": "8.3.0",
79
+ "debug": "4.3.4",
80
+ "execa": "5.1.1",
81
+ "filesize": "8.0.7",
82
+ "fs-extra": "10.0.1",
83
+ "glob": "7.2.0",
84
+ "gzip-size": "6.0.0",
85
+ "import-lazy": "4.0.0",
77
86
  "jest": "^27",
78
- "@scripts/jest-config": "0.0.0",
79
- "@modern-js/types": "^1.3.5"
87
+ "js-yaml": "4.1.0",
88
+ "lodash": "4.17.21",
89
+ "pkg-up": "3.1.0",
90
+ "recursive-readdir": "2.2.2",
91
+ "signale": "1.4.0",
92
+ "strip-ansi": "6.0.1",
93
+ "upath": "2.0.1",
94
+ "webpack": "^5.71.0"
80
95
  },
81
96
  "sideEffects": false,
82
97
  "publishConfig": {
83
98
  "registry": "https://registry.npmjs.org/",
84
- "access": "public"
99
+ "access": "public",
100
+ "types": "./dist/index.d.ts"
85
101
  },
86
102
  "scripts": {
87
103
  "new": "modern new",
88
- "build": "modern build",
104
+ "dev": "tsc --watch",
105
+ "build": "tsc",
89
106
  "test": "jest --passWithNoTests"
90
107
  },
91
108
  "readme": "\n<p align=\"center\">\n <a href=\"https://modernjs.dev\" target=\"blank\"><img src=\"https://lf3-static.bytednsdoc.com/obj/eden-cn/ylaelkeh7nuhfnuhf/modernjs-cover.png\" width=\"300\" alt=\"Modern.js Logo\" /></a>\n</p>\n<p align=\"center\">\n现代 Web 工程体系\n <br/>\n <a href=\"https://modernjs.dev\" target=\"blank\">\n modernjs.dev\n </a>\n</p>\n<p align=\"center\">\n The meta-framework suite designed from scratch for frontend-focused modern web development\n</p>\n\n# Introduction\n\n> The doc site ([modernjs.dev](https://modernjs.dev)) and articles are only available in Chinese for now, we are planning to add English versions soon.\n\n- [Modern.js: Hello, World!](https://zhuanlan.zhihu.com/p/426707646)\n\n## Getting Started\n\n- [Quick Start](https://modernjs.dev/docs/start)\n- [Guides](https://modernjs.dev/docs/guides)\n- [API References](https://modernjs.dev/docs/apis)\n\n## Contributing\n\n- [Contributing Guide](https://github.com/modern-js-dev/modern.js/blob/main/CONTRIBUTING.md)\n"
@@ -1,5 +1,5 @@
1
- import debug from 'debug';
2
- import stripAnsi from 'strip-ansi';
1
+ import { debug } from '../src/compiled';
2
+ import { stripAnsi } from '../src';
3
3
  import { createDebugger } from '../src/debug';
4
4
 
5
5
  describe('debug utility', () => {
@@ -0,0 +1,27 @@
1
+ import { isEmpty, isFastRefresh } from '../src/is';
2
+
3
+ describe('validate', () => {
4
+ it('should validate empty object correctly', () => {
5
+ expect(isEmpty({})).toBeTruthy();
6
+ expect(isEmpty({ foo: 'bar' })).toBeFalsy();
7
+ });
8
+
9
+ it('should validate fast refresh correctly', () => {
10
+ const { NODE_ENV, FAST_REFRESH } = process.env;
11
+
12
+ process.env.NODE_ENV = 'development';
13
+ process.env.FAST_REFRESH = 'true';
14
+ expect(isFastRefresh()).toBeTruthy();
15
+
16
+ process.env.NODE_ENV = 'production';
17
+ process.env.FAST_REFRESH = 'true';
18
+ expect(isFastRefresh()).toBeFalsy();
19
+
20
+ process.env.NODE_ENV = 'development';
21
+ process.env.FAST_REFRESH = 'false';
22
+ expect(isFastRefresh()).toBeFalsy();
23
+
24
+ process.env.NODE_ENV = NODE_ENV;
25
+ process.env.FAST_REFRESH = FAST_REFRESH;
26
+ });
27
+ });
@@ -0,0 +1,19 @@
1
+ import { isNodeJS, isBrowser } from '../src/is/platform';
2
+
3
+ describe('validate platform', () => {
4
+ it('should validate Node.js correctly', () => {
5
+ expect(isNodeJS()).toBeTruthy();
6
+ });
7
+
8
+ it('should validate browser correctly', () => {
9
+ const windowSpy = jest.spyOn(window, 'window', 'get');
10
+
11
+ windowSpy.mockImplementation((): any => undefined);
12
+ expect(isBrowser()).toBeFalsy();
13
+
14
+ windowSpy.mockImplementation((): any => global);
15
+ expect(isBrowser()).toBeTruthy();
16
+
17
+ windowSpy.mockRestore();
18
+ });
19
+ });
@@ -57,7 +57,7 @@ jest.mock('os', () => {
57
57
  };
58
58
  });
59
59
 
60
- jest.mock('chalk', () => ({
60
+ jest.mock('../compiled/chalk', () => ({
61
61
  __esModule: true,
62
62
  default: {
63
63
  bold: jest.fn(str => str),
package/tsconfig.json CHANGED
@@ -1,12 +1,10 @@
1
1
  {
2
2
  "extends": "@modern-js/tsconfig/base",
3
3
  "compilerOptions": {
4
- "declaration": false,
5
- "allowJs": true,
6
- "jsx": "preserve",
4
+ "declaration": true,
5
+ "outDir": "./dist",
7
6
  "baseUrl": "./",
8
- "isolatedModules": true,
9
- "paths": {}
7
+ "isolatedModules": true
10
8
  },
11
9
  "include": ["src"]
12
10
  }