@ainc/fs 0.1.12 → 0.1.16

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 (187) hide show
  1. package/README.md +1 -0
  2. package/dist/basename.d.ts +6 -6
  3. package/dist/basename.js +16 -16
  4. package/dist/copy.d.ts +40 -40
  5. package/dist/copy.js +89 -89
  6. package/dist/copy.js.map +1 -1
  7. package/dist/cpdir.d.ts +19 -19
  8. package/dist/cpdir.js +28 -28
  9. package/dist/cpdir.js.map +1 -1
  10. package/dist/cwd.d.ts +6 -6
  11. package/dist/cwd.js +16 -16
  12. package/dist/dirname.d.ts +6 -6
  13. package/dist/dirname.js +30 -30
  14. package/dist/extname.d.ts +6 -6
  15. package/dist/extname.js +16 -16
  16. package/dist/filename.d.ts +6 -6
  17. package/dist/filename.js +24 -24
  18. package/dist/find.d.ts +26 -26
  19. package/dist/find.js +72 -72
  20. package/dist/find.js.map +1 -1
  21. package/dist/findFile.d.ts +20 -20
  22. package/dist/findFile.js +39 -39
  23. package/dist/findFile.js.map +1 -1
  24. package/dist/finddir.d.ts +20 -20
  25. package/dist/finddir.js +39 -39
  26. package/dist/finddir.js.map +1 -1
  27. package/dist/helpers/FileResolver.d.ts +54 -0
  28. package/dist/helpers/FileResolver.d.ts.map +1 -0
  29. package/dist/helpers/FileResolver.js +184 -0
  30. package/dist/helpers/FileResolver.js.map +1 -0
  31. package/dist/helpers/compose.d.ts +14 -0
  32. package/dist/helpers/compose.d.ts.map +1 -0
  33. package/dist/helpers/compose.js +38 -0
  34. package/dist/helpers/compose.js.map +1 -0
  35. package/dist/helpers/each.d.ts +7 -0
  36. package/dist/helpers/each.d.ts.map +1 -0
  37. package/dist/helpers/each.js +21 -0
  38. package/dist/helpers/each.js.map +1 -0
  39. package/dist/helpers/match.d.ts +7 -0
  40. package/dist/helpers/match.d.ts.map +1 -0
  41. package/dist/helpers/match.js +30 -0
  42. package/dist/helpers/match.js.map +1 -0
  43. package/dist/helpers/normalizePath.d.ts +23 -0
  44. package/dist/helpers/normalizePath.d.ts.map +1 -0
  45. package/dist/helpers/normalizePath.js +37 -0
  46. package/dist/helpers/normalizePath.js.map +1 -0
  47. package/dist/helpers/safeCall.d.ts +7 -0
  48. package/dist/helpers/safeCall.d.ts.map +1 -0
  49. package/dist/helpers/safeCall.js +24 -0
  50. package/dist/helpers/safeCall.js.map +1 -0
  51. package/dist/helpers/split.d.ts +7 -0
  52. package/dist/helpers/split.d.ts.map +1 -0
  53. package/dist/helpers/split.js +25 -0
  54. package/dist/helpers/split.js.map +1 -0
  55. package/dist/helpers/stripBOM.d.ts +7 -0
  56. package/dist/helpers/stripBOM.d.ts.map +1 -0
  57. package/dist/helpers/stripBOM.js +19 -0
  58. package/dist/helpers/stripBOM.js.map +1 -0
  59. package/dist/helpers/stripComments.d.ts +7 -0
  60. package/dist/helpers/stripComments.d.ts.map +1 -0
  61. package/dist/{normalizeJSON.js → helpers/stripComments.js} +147 -145
  62. package/dist/helpers/stripComments.js.map +1 -0
  63. package/dist/homedir.d.ts +6 -6
  64. package/dist/homedir.js +31 -31
  65. package/dist/includePaths.d.ts +6 -6
  66. package/dist/includePaths.js +53 -53
  67. package/dist/includePaths.js.map +1 -1
  68. package/dist/index.d.ts +43 -44
  69. package/dist/index.d.ts.map +1 -1
  70. package/dist/index.js +90 -92
  71. package/dist/index.js.map +1 -1
  72. package/dist/indir.d.ts +13 -13
  73. package/dist/indir.js +26 -26
  74. package/dist/isAbsolutePath.d.ts +6 -6
  75. package/dist/isAbsolutePath.js +24 -24
  76. package/dist/isDirectory.d.ts +12 -12
  77. package/dist/isDirectory.js +26 -26
  78. package/dist/isDirectory.js.map +1 -1
  79. package/dist/isRelativePath.d.ts +6 -6
  80. package/dist/isRelativePath.js +44 -44
  81. package/dist/json.d.ts +21 -21
  82. package/dist/json.d.ts.map +1 -1
  83. package/dist/json.js +34 -33
  84. package/dist/json.js.map +1 -1
  85. package/dist/jsonc.d.ts +27 -21
  86. package/dist/jsonc.d.ts.map +1 -1
  87. package/dist/jsonc.js +49 -40
  88. package/dist/jsonc.js.map +1 -1
  89. package/dist/lstat.d.ts +22 -22
  90. package/dist/lstat.js +30 -30
  91. package/dist/mapdir.d.ts +22 -22
  92. package/dist/mapdir.js +42 -42
  93. package/dist/mapdir.js.map +1 -1
  94. package/dist/mkdir.d.ts +6 -6
  95. package/dist/mkdir.js +37 -37
  96. package/dist/mkdir.js.map +1 -1
  97. package/dist/parseJSON.d.ts +16 -0
  98. package/dist/parseJSON.d.ts.map +1 -0
  99. package/dist/parseJSON.js +29 -0
  100. package/dist/parseJSON.js.map +1 -0
  101. package/dist/readFile.d.ts +29 -29
  102. package/dist/readFile.js +26 -26
  103. package/dist/readFile.js.map +1 -1
  104. package/dist/readStream.d.ts +36 -36
  105. package/dist/readStream.d.ts.map +1 -1
  106. package/dist/readStream.js +19 -19
  107. package/dist/readStream.js.map +1 -1
  108. package/dist/readdir.d.ts +16 -16
  109. package/dist/readdir.js +34 -34
  110. package/dist/readdir.js.map +1 -1
  111. package/dist/readline.d.ts +16 -16
  112. package/dist/readline.d.ts.map +1 -1
  113. package/dist/readline.js +24 -24
  114. package/dist/readline.js.map +1 -1
  115. package/dist/realpath.d.ts +12 -12
  116. package/dist/realpath.js +32 -32
  117. package/dist/realpath.js.map +1 -1
  118. package/dist/relative.d.ts +6 -6
  119. package/dist/relative.js +38 -38
  120. package/dist/resolve.d.ts +26 -26
  121. package/dist/resolve.js +53 -53
  122. package/dist/resolve.js.map +1 -1
  123. package/dist/resolvePath.d.ts +27 -0
  124. package/dist/resolvePath.d.ts.map +1 -0
  125. package/dist/resolvePath.js +178 -0
  126. package/dist/resolvePath.js.map +1 -0
  127. package/dist/rmdir.d.ts +6 -6
  128. package/dist/rmdir.js +40 -40
  129. package/dist/rmdir.js.map +1 -1
  130. package/dist/stat.d.ts +21 -21
  131. package/dist/stat.js +30 -30
  132. package/dist/supdir.d.ts +21 -15
  133. package/dist/supdir.d.ts.map +1 -1
  134. package/dist/supdir.js +62 -35
  135. package/dist/supdir.js.map +1 -1
  136. package/dist/symlink.d.ts +22 -22
  137. package/dist/symlink.js +39 -39
  138. package/dist/symlink.js.map +1 -1
  139. package/dist/unlink.d.ts +6 -6
  140. package/dist/unlink.js +28 -28
  141. package/dist/unlink.js.map +1 -1
  142. package/dist/usedir.d.ts +6 -6
  143. package/dist/usedir.js +24 -24
  144. package/dist/writeFile.d.ts +33 -33
  145. package/dist/writeFile.js +49 -49
  146. package/dist/writeFile.js.map +1 -1
  147. package/dist/writeStream.d.ts +35 -35
  148. package/dist/writeStream.d.ts.map +1 -1
  149. package/dist/writeStream.js +19 -19
  150. package/dist/writeStream.js.map +1 -1
  151. package/package.json +4 -4
  152. package/src/helpers/FileResolver.ts +282 -0
  153. package/src/helpers/compose.ts +49 -0
  154. package/src/helpers/each.ts +19 -0
  155. package/src/helpers/match.ts +31 -0
  156. package/src/helpers/normalizePath.ts +51 -0
  157. package/src/helpers/safeCall.ts +21 -0
  158. package/src/helpers/split.ts +25 -0
  159. package/src/helpers/stripBOM.ts +17 -0
  160. package/src/{normalizeJSON.ts → helpers/stripComments.ts} +58 -52
  161. package/src/index.ts +2 -3
  162. package/src/json.ts +2 -1
  163. package/src/jsonc.ts +22 -11
  164. package/src/parseJSON.ts +40 -0
  165. package/src/readStream.ts +2 -2
  166. package/src/readline.ts +2 -2
  167. package/src/resolvePath.ts +234 -0
  168. package/src/supdir.ts +31 -0
  169. package/src/writeStream.ts +2 -2
  170. package/dist/normalizeJSON.d.ts +0 -7
  171. package/dist/normalizeJSON.d.ts.map +0 -1
  172. package/dist/normalizeJSON.js.map +0 -1
  173. package/dist/resolveFile.d.ts +0 -22
  174. package/dist/resolveFile.d.ts.map +0 -1
  175. package/dist/resolveFile.js +0 -80
  176. package/dist/resolveFile.js.map +0 -1
  177. package/dist/resolveModule.d.ts +0 -41
  178. package/dist/resolveModule.d.ts.map +0 -1
  179. package/dist/resolveModule.js +0 -119
  180. package/dist/resolveModule.js.map +0 -1
  181. package/dist/resolvePaths.d.ts +0 -22
  182. package/dist/resolvePaths.d.ts.map +0 -1
  183. package/dist/resolvePaths.js +0 -233
  184. package/dist/resolvePaths.js.map +0 -1
  185. package/src/resolveFile.ts +0 -103
  186. package/src/resolveModule.ts +0 -157
  187. package/src/resolvePaths.ts +0 -320
package/dist/resolve.d.ts CHANGED
@@ -1,27 +1,27 @@
1
- /**
2
- *****************************************
3
- * 解析配置
4
- *****************************************
5
- */
6
- export interface Options {
7
- ext?: string;
8
- test?: RegExp;
9
- exclude?: string[];
10
- }
11
- /**
12
- *****************************************
13
- * 资源对象
14
- *****************************************
15
- */
16
- export interface Asset {
17
- type: 'dir' | 'file';
18
- dir: string;
19
- files: string[];
20
- }
21
- /**
22
- *****************************************
23
- * 解析文件
24
- *****************************************
25
- */
26
- export declare function resolve(dir: string | string[], options?: Options): Asset[];
1
+ /**
2
+ *****************************************
3
+ * 解析配置
4
+ *****************************************
5
+ */
6
+ export interface Options {
7
+ ext?: string;
8
+ test?: RegExp;
9
+ exclude?: string[];
10
+ }
11
+ /**
12
+ *****************************************
13
+ * 资源对象
14
+ *****************************************
15
+ */
16
+ export interface Asset {
17
+ type: 'dir' | 'file';
18
+ dir: string;
19
+ files: string[];
20
+ }
21
+ /**
22
+ *****************************************
23
+ * 解析文件
24
+ *****************************************
25
+ */
26
+ export declare function resolve(dir: string | string[], options?: Options): Asset[];
27
27
  //# sourceMappingURL=resolve.d.ts.map
package/dist/resolve.js CHANGED
@@ -1,54 +1,54 @@
1
- /**
2
- *****************************************
3
- * Created by edonet@163.com
4
- * Created on 2021-04-18 12:10:46
5
- *****************************************
6
- */
7
- 'use strict';
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.resolve = void 0;
10
- /**
11
- *****************************************
12
- * 加载依赖
13
- *****************************************
14
- */
15
- const stat_1 = require("./stat");
16
- const dirname_1 = require("./dirname");
17
- const findFile_1 = require("./findFile");
18
- /**
19
- *****************************************
20
- * 解析文件
21
- *****************************************
22
- */
23
- function resolve(dir, options = {}) {
24
- const input = Array.isArray(dir) ? dir : [dir];
25
- const name = options.ext ? options.ext + '$' : options.test || '*';
26
- const ignore = options.exclude ? ['node_modules', ...options.exclude] : ['node_modules'];
27
- const assets = [];
28
- // 解析文件
29
- input.forEach(str => {
30
- const stats = stat_1.stat(str);
31
- // 不存在目录
32
- if (!stats) {
33
- return;
34
- }
35
- // 文件入口
36
- if (!stats.isDirectory()) {
37
- return assets.push({
38
- type: 'file',
39
- dir: dirname_1.dirname(stats.path),
40
- files: [stats.path],
41
- });
42
- }
43
- // 处理文件夹
44
- assets.push({
45
- type: 'dir',
46
- dir: stats.path,
47
- files: findFile_1.findFile(name, stats.path, { ignore }),
48
- });
49
- });
50
- // 返回结果
51
- return assets;
52
- }
53
- exports.resolve = resolve;
1
+ /**
2
+ *****************************************
3
+ * Created by edonet@163.com
4
+ * Created on 2021-04-18 12:10:46
5
+ *****************************************
6
+ */
7
+ 'use strict';
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.resolve = void 0;
10
+ /**
11
+ *****************************************
12
+ * 加载依赖
13
+ *****************************************
14
+ */
15
+ const stat_1 = require("./stat");
16
+ const dirname_1 = require("./dirname");
17
+ const findFile_1 = require("./findFile");
18
+ /**
19
+ *****************************************
20
+ * 解析文件
21
+ *****************************************
22
+ */
23
+ function resolve(dir, options = {}) {
24
+ const input = Array.isArray(dir) ? dir : [dir];
25
+ const name = options.ext ? options.ext + '$' : options.test || '*';
26
+ const ignore = options.exclude ? ['node_modules', ...options.exclude] : ['node_modules'];
27
+ const assets = [];
28
+ // 解析文件
29
+ input.forEach(str => {
30
+ const stats = (0, stat_1.stat)(str);
31
+ // 不存在目录
32
+ if (!stats) {
33
+ return;
34
+ }
35
+ // 文件入口
36
+ if (!stats.isDirectory()) {
37
+ return assets.push({
38
+ type: 'file',
39
+ dir: (0, dirname_1.dirname)(stats.path),
40
+ files: [stats.path],
41
+ });
42
+ }
43
+ // 处理文件夹
44
+ assets.push({
45
+ type: 'dir',
46
+ dir: stats.path,
47
+ files: (0, findFile_1.findFile)(name, stats.path, { ignore }),
48
+ });
49
+ });
50
+ // 返回结果
51
+ return assets;
52
+ }
53
+ exports.resolve = resolve;
54
54
  //# sourceMappingURL=resolve.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../src/resolve.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,YAAY,CAAC;;;AAGb;;;;GAIG;AACH,iCAA8B;AAC9B,uCAAoC;AACpC,yCAAsC;AA2BtC;;;;GAIG;AACH,SAAgB,OAAO,CAAC,GAAsB,EAAE,UAAmB,EAAE;IACjE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC;IACnE,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;IACzF,MAAM,MAAM,GAAY,EAAE,CAAC;IAE3B,OAAO;IACP,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QAChB,MAAM,KAAK,GAAG,WAAI,CAAC,GAAG,CAAC,CAAC;QAExB,QAAQ;QACR,IAAI,CAAC,KAAK,EAAE;YACR,OAAO;SACV;QAED,OAAO;QACP,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE;YACtB,OAAO,MAAM,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,MAAM;gBACZ,GAAG,EAAE,iBAAO,CAAC,KAAK,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;aACtB,CAAC,CAAC;SACN;QAED,QAAQ;QACR,MAAM,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,KAAK,CAAC,IAAI;YACf,KAAK,EAAE,mBAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC;SAChD,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,OAAO;IACP,OAAO,MAAM,CAAC;AAClB,CAAC;AAlCD,0BAkCC"}
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../src/resolve.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,YAAY,CAAC;;;AAGb;;;;GAIG;AACH,iCAA8B;AAC9B,uCAAoC;AACpC,yCAAsC;AA2BtC;;;;GAIG;AACH,SAAgB,OAAO,CAAC,GAAsB,EAAE,UAAmB,EAAE;IACjE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC;IACnE,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;IACzF,MAAM,MAAM,GAAY,EAAE,CAAC;IAE3B,OAAO;IACP,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QAChB,MAAM,KAAK,GAAG,IAAA,WAAI,EAAC,GAAG,CAAC,CAAC;QAExB,QAAQ;QACR,IAAI,CAAC,KAAK,EAAE;YACR,OAAO;SACV;QAED,OAAO;QACP,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE;YACtB,OAAO,MAAM,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,MAAM;gBACZ,GAAG,EAAE,IAAA,iBAAO,EAAC,KAAK,CAAC,IAAI,CAAC;gBACxB,KAAK,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;aACtB,CAAC,CAAC;SACN;QAED,QAAQ;QACR,MAAM,CAAC,IAAI,CAAC;YACR,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,KAAK,CAAC,IAAI;YACf,KAAK,EAAE,IAAA,mBAAQ,EAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC;SAChD,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,OAAO;IACP,OAAO,MAAM,CAAC;AAClB,CAAC;AAlCD,0BAkCC"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ *****************************************
3
+ * 加载依赖
4
+ *****************************************
5
+ */
6
+ import { Handler, Options as FileOptions } from './helpers/FileResolver';
7
+ /**
8
+ *****************************************
9
+ * 选项
10
+ *****************************************
11
+ */
12
+ export interface Options extends FileOptions {
13
+ baseUrl?: string;
14
+ paths?: {
15
+ [key: string]: string[];
16
+ };
17
+ alias?: {
18
+ [key: string]: string | string[];
19
+ };
20
+ }
21
+ /**
22
+ *****************************************
23
+ * 解析文件
24
+ *****************************************
25
+ */
26
+ export declare function resolvePath(options?: Options): Handler;
27
+ //# sourceMappingURL=resolvePath.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolvePath.d.ts","sourceRoot":"","sources":["../src/resolvePath.ts"],"names":[],"mappings":"AASA;;;;GAIG;AACH,OAAO,EAAoC,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAyL3G;;;;GAIG;AACH,MAAM,WAAW,OAAQ,SAAQ,WAAW;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE;QACJ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;KAC3B,CAAC;IACF,KAAK,CAAC,EAAE;QACJ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;KACpC,CAAC;CACL;AAGD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,GAAE,OAAY,GAAG,OAAO,CAa1D"}
@@ -0,0 +1,178 @@
1
+ /**
2
+ *****************************************
3
+ * Created by edonet@163.com
4
+ * Created on 2021-06-19 00:16:40
5
+ *****************************************
6
+ */
7
+ 'use strict';
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.resolvePath = void 0;
10
+ /**
11
+ *****************************************
12
+ * 加载依赖
13
+ *****************************************
14
+ */
15
+ const FileResolver_1 = require("./helpers/FileResolver");
16
+ const split_1 = require("./helpers/split");
17
+ const each_1 = require("./helpers/each");
18
+ const compose_1 = require("./helpers/compose");
19
+ const cwd_1 = require("./cwd");
20
+ /**
21
+ *****************************************
22
+ * 格式化别名
23
+ *****************************************
24
+ */
25
+ function normalizePaths(value) {
26
+ // 校验值
27
+ if (!value) {
28
+ return;
29
+ }
30
+ // 处理字符串配置
31
+ if (typeof value === 'string') {
32
+ return [value];
33
+ }
34
+ // 校验数组配置参数
35
+ if (!Array.isArray(value) || !value.length) {
36
+ return;
37
+ }
38
+ // 校验参数
39
+ if (value.find(path => !path || typeof path !== 'string')) {
40
+ throw new Error('expect paths value to be valid string[]!');
41
+ }
42
+ // 返回结果
43
+ return value;
44
+ }
45
+ /**
46
+ *****************************************
47
+ * 创建路径解析器
48
+ *****************************************
49
+ */
50
+ function createPathsResolver(resolver, options) {
51
+ const rules = [];
52
+ const baseURL = (0, cwd_1.cwd)(options.context || process.cwd(), options.baseUrl || './');
53
+ const resolvePath = resolver.resolvePath;
54
+ // 解析路径
55
+ function resolvePaths(paths) {
56
+ return (0, compose_1.compose)(paths.map(value => {
57
+ const [start, end] = (0, split_1.split)(value, '*');
58
+ // 处理绝对匹配
59
+ if (end === undefined) {
60
+ return (_, context) => resolvePath((0, cwd_1.cwd)(baseURL, start), context);
61
+ }
62
+ else {
63
+ return (id, context) => resolvePath((0, cwd_1.cwd)(baseURL, start + id + end), context);
64
+ }
65
+ }));
66
+ }
67
+ // 校验存在路径映射配置
68
+ (0, each_1.each)(options.paths, (value, key) => {
69
+ const paths = normalizePaths(value);
70
+ // 校验配置
71
+ if (!paths) {
72
+ return;
73
+ }
74
+ // 生成解析函数
75
+ const resolve = resolvePaths(paths);
76
+ // 解析匹配项
77
+ const [start, end] = (0, split_1.split)(key, '*');
78
+ // 完成匹配
79
+ if (end === undefined) {
80
+ return rules.push((id, context) => {
81
+ return id === start ? resolve('', context) : undefined;
82
+ });
83
+ }
84
+ // 获取前/后缀长度
85
+ const startLength = start.length;
86
+ const endLength = end.length;
87
+ const idx = (startLength ? 1 : 0) + (endLength ? 2 : 0);
88
+ // 匹配前缀
89
+ if (idx === 1) {
90
+ return rules.push((id, context) => {
91
+ if (id.startsWith(start)) {
92
+ return resolve(id.slice(startLength), context);
93
+ }
94
+ });
95
+ }
96
+ // 匹配后缀
97
+ if (idx === 2) {
98
+ return rules.push((id, context) => {
99
+ if (id.endsWith(end)) {
100
+ return resolve(id.slice(0, -endLength), context);
101
+ }
102
+ });
103
+ }
104
+ // 匹配前缀和后缀
105
+ if (idx === 3) {
106
+ return rules.push((id, context) => {
107
+ if (id.startsWith(start) && id.endsWith(end)) {
108
+ return resolve(id.slice(startLength, -endLength), context);
109
+ }
110
+ });
111
+ }
112
+ // 默认完全匹配
113
+ return rules.push((id, context) => resolve(id, context));
114
+ });
115
+ // 组件规则解析方法
116
+ if (rules.length) {
117
+ return resolver.wrapHandler((0, compose_1.compose)([...rules, resolver.resolveModule]));
118
+ }
119
+ else {
120
+ return resolvePath;
121
+ }
122
+ }
123
+ /**
124
+ *****************************************
125
+ * 创建别名解析器
126
+ *****************************************
127
+ */
128
+ function createAliasResolver(resolver, options) {
129
+ const resolvePaths = createPathsResolver(resolver, options);
130
+ const rules = [];
131
+ // 解析别名
132
+ (0, each_1.each)(options.alias, (value, key) => {
133
+ const paths = normalizePaths(value);
134
+ // 校验参数
135
+ if (!paths) {
136
+ return;
137
+ }
138
+ // 生成解析函数
139
+ const resolve = (0, compose_1.compose)(paths.map(start => (id, context) => resolvePaths(start + id, context)));
140
+ // 绝对匹配
141
+ if (key.endsWith('$')) {
142
+ // 去除匹配符
143
+ key = key.slice(0, -1);
144
+ // 添加匹配规则
145
+ return rules.push((id, context) => (id === key ? resolve('', context) : undefined));
146
+ }
147
+ // 生成配置前缀
148
+ const prefix = key + '/';
149
+ const prefixLength = key.length;
150
+ // 添加匹配规则
151
+ return rules.push((id, context) => (id === key ? resolve('', context) : undefined), (id, context) => (id.startsWith(prefix) ? resolve(id.slice(prefixLength), context) : undefined));
152
+ });
153
+ // 返回解析函数
154
+ if (rules.length) {
155
+ return resolver.wrapHandler((0, compose_1.compose)([...rules, resolvePaths]));
156
+ }
157
+ else {
158
+ return resolvePaths;
159
+ }
160
+ }
161
+ /**
162
+ *****************************************
163
+ * 解析文件
164
+ *****************************************
165
+ */
166
+ function resolvePath(options = {}) {
167
+ const modules = options.modules || ['node_modules'];
168
+ // 添加基准模块解析
169
+ if (options.baseUrl || options.paths) {
170
+ modules.unshift(options.baseUrl || '.');
171
+ }
172
+ // 创建文件解析器
173
+ const resolver = (0, FileResolver_1.createFileResolver)({ ...options, modules });
174
+ // 返回解析函数
175
+ return createAliasResolver(resolver, options);
176
+ }
177
+ exports.resolvePath = resolvePath;
178
+ //# sourceMappingURL=resolvePath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolvePath.js","sourceRoot":"","sources":["../src/resolvePath.ts"],"names":[],"mappings":"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"}
package/dist/rmdir.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- /**
2
- *****************************************
3
- * 移除目录
4
- *****************************************
5
- */
6
- export declare function rmdir(dir: string): boolean;
1
+ /**
2
+ *****************************************
3
+ * 移除目录
4
+ *****************************************
5
+ */
6
+ export declare function rmdir(dir: string): boolean;
7
7
  //# sourceMappingURL=rmdir.d.ts.map
package/dist/rmdir.js CHANGED
@@ -1,41 +1,41 @@
1
- /**
2
- *****************************************
3
- * Created by edonet@163.com
4
- * Created on 2019-11-07 17:33:20
5
- *****************************************
6
- */
7
- 'use strict';
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.rmdir = void 0;
10
- /**
11
- *****************************************
12
- * 加载依赖
13
- *****************************************
14
- */
15
- const fs = require("fs");
16
- const lstat_1 = require("./lstat");
17
- const readdir_1 = require("./readdir");
18
- /**
19
- *****************************************
20
- * 移除目录
21
- *****************************************
22
- */
23
- function rmdir(dir) {
24
- let stats = lstat_1.lstat(dir);
25
- // 存在目录
26
- if (stats) {
27
- if (stats.isDirectory()) {
28
- // 移除子目录
29
- readdir_1.readdir(dir).forEach(({ path }) => rmdir(path));
30
- // 移除目录
31
- fs.rmdirSync(dir);
32
- }
33
- else {
34
- fs.unlinkSync(dir);
35
- }
36
- }
37
- // 返回成功
38
- return true;
39
- }
40
- exports.rmdir = rmdir;
1
+ /**
2
+ *****************************************
3
+ * Created by edonet@163.com
4
+ * Created on 2019-11-07 17:33:20
5
+ *****************************************
6
+ */
7
+ 'use strict';
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.rmdir = void 0;
10
+ /**
11
+ *****************************************
12
+ * 加载依赖
13
+ *****************************************
14
+ */
15
+ const fs = require("fs");
16
+ const lstat_1 = require("./lstat");
17
+ const readdir_1 = require("./readdir");
18
+ /**
19
+ *****************************************
20
+ * 移除目录
21
+ *****************************************
22
+ */
23
+ function rmdir(dir) {
24
+ let stats = (0, lstat_1.lstat)(dir);
25
+ // 存在目录
26
+ if (stats) {
27
+ if (stats.isDirectory()) {
28
+ // 移除子目录
29
+ (0, readdir_1.readdir)(dir).forEach(({ path }) => rmdir(path));
30
+ // 移除目录
31
+ fs.rmdirSync(dir);
32
+ }
33
+ else {
34
+ fs.unlinkSync(dir);
35
+ }
36
+ }
37
+ // 返回成功
38
+ return true;
39
+ }
40
+ exports.rmdir = rmdir;
41
41
  //# sourceMappingURL=rmdir.js.map
package/dist/rmdir.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"rmdir.js","sourceRoot":"","sources":["../src/rmdir.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,YAAY,CAAC;;;AAGb;;;;GAIG;AACH,yBAAyB;AACzB,mCAAgC;AAChC,uCAAoC;AAGpC;;;;GAIG;AACH,SAAgB,KAAK,CAAC,GAAW;IAC7B,IAAI,KAAK,GAAG,aAAK,CAAC,GAAG,CAAC,CAAC;IAEvB,OAAO;IACP,IAAI,KAAK,EAAE;QACP,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE;YAErB,QAAQ;YACR,iBAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAEhD,OAAO;YACP,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;SACrB;aAAM;YACH,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SACtB;KACJ;IAED,OAAO;IACP,OAAO,IAAI,CAAC;AAChB,CAAC;AAnBD,sBAmBC"}
1
+ {"version":3,"file":"rmdir.js","sourceRoot":"","sources":["../src/rmdir.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,YAAY,CAAC;;;AAGb;;;;GAIG;AACH,yBAAyB;AACzB,mCAAgC;AAChC,uCAAoC;AAGpC;;;;GAIG;AACH,SAAgB,KAAK,CAAC,GAAW;IAC7B,IAAI,KAAK,GAAG,IAAA,aAAK,EAAC,GAAG,CAAC,CAAC;IAEvB,OAAO;IACP,IAAI,KAAK,EAAE;QACP,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE;YAErB,QAAQ;YACR,IAAA,iBAAO,EAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAEhD,OAAO;YACP,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;SACrB;aAAM;YACH,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SACtB;KACJ;IAED,OAAO;IACP,OAAO,IAAI,CAAC;AAChB,CAAC;AAnBD,sBAmBC"}
package/dist/stat.d.ts CHANGED
@@ -1,22 +1,22 @@
1
- /// <reference types="node" />
2
- /**
3
- *****************************************
4
- * 加载依赖
5
- *****************************************
6
- */
7
- import * as fs from 'fs';
8
- /**
9
- *****************************************
10
- * 状态
11
- *****************************************
12
- */
13
- export interface State extends fs.Stats {
14
- path: string;
15
- }
16
- /**
17
- *****************************************
18
- * 获取文件状态
19
- *****************************************
20
- */
21
- export declare function stat(dir: string): State | null;
1
+ /// <reference types="node" />
2
+ /**
3
+ *****************************************
4
+ * 加载依赖
5
+ *****************************************
6
+ */
7
+ import * as fs from 'fs';
8
+ /**
9
+ *****************************************
10
+ * 状态
11
+ *****************************************
12
+ */
13
+ export interface State extends fs.Stats {
14
+ path: string;
15
+ }
16
+ /**
17
+ *****************************************
18
+ * 获取文件状态
19
+ *****************************************
20
+ */
21
+ export declare function stat(dir: string): State | null;
22
22
  //# sourceMappingURL=stat.d.ts.map
package/dist/stat.js CHANGED
@@ -1,31 +1,31 @@
1
- /**
2
- *****************************************
3
- * Created by edonet@163.com
4
- * Created on 2019-11-07 16:06:57
5
- *****************************************
6
- */
7
- 'use strict';
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.stat = void 0;
10
- /**
11
- *****************************************
12
- * 加载依赖
13
- *****************************************
14
- */
15
- const fs = require("fs");
16
- const path = require("path");
17
- /**
18
- *****************************************
19
- * 获取文件状态
20
- *****************************************
21
- */
22
- function stat(dir) {
23
- try {
24
- return Object.assign(fs.statSync(dir), { path: path.resolve(dir) });
25
- }
26
- catch (err) {
27
- return null;
28
- }
29
- }
30
- exports.stat = stat;
1
+ /**
2
+ *****************************************
3
+ * Created by edonet@163.com
4
+ * Created on 2019-11-07 16:06:57
5
+ *****************************************
6
+ */
7
+ 'use strict';
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.stat = void 0;
10
+ /**
11
+ *****************************************
12
+ * 加载依赖
13
+ *****************************************
14
+ */
15
+ const fs = require("fs");
16
+ const path = require("path");
17
+ /**
18
+ *****************************************
19
+ * 获取文件状态
20
+ *****************************************
21
+ */
22
+ function stat(dir) {
23
+ try {
24
+ return Object.assign(fs.statSync(dir), { path: path.resolve(dir) });
25
+ }
26
+ catch (err) {
27
+ return null;
28
+ }
29
+ }
30
+ exports.stat = stat;
31
31
  //# sourceMappingURL=stat.js.map
package/dist/supdir.d.ts CHANGED
@@ -1,16 +1,22 @@
1
- /**
2
- *****************************************
3
- * 查找上一级目录回调
4
- *****************************************
5
- */
6
- interface Handler<T> {
7
- (dir: string, next: () => T | undefined): T;
8
- }
9
- /**
10
- *****************************************
11
- * 查找上级目录
12
- *****************************************
13
- */
14
- export declare function supdir<T>(dir: string, handler: Handler<T>): T | undefined;
15
- export {};
1
+ /**
2
+ *****************************************
3
+ * 遍历目录
4
+ *****************************************
5
+ */
6
+ export declare function mapdir(dir: string, handler: (dir: string) => void): void;
7
+ /**
8
+ *****************************************
9
+ * 查找上一级目录回调
10
+ *****************************************
11
+ */
12
+ interface Handler<T> {
13
+ (dir: string, next: () => T | undefined): T;
14
+ }
15
+ /**
16
+ *****************************************
17
+ * 查找上级目录
18
+ *****************************************
19
+ */
20
+ export declare function supdir<T>(dir: string, handler: Handler<T>): T | undefined;
21
+ export {};
16
22
  //# sourceMappingURL=supdir.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"supdir.d.ts","sourceRoot":"","sources":["../src/supdir.ts"],"names":[],"mappings":"AAkBA;;;;GAIG;AACH,UAAU,OAAO,CAAC,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC;CAC/C;AAeD;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAEzE"}
1
+ {"version":3,"file":"supdir.d.ts","sourceRoot":"","sources":["../src/supdir.ts"],"names":[],"mappings":"AAkBA;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAuBxE;AAGD;;;;GAIG;AACH,UAAU,OAAO,CAAC,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC;CAC/C;AAeD;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAEzE"}