filehound 2.0.0-beta → 2.0.0-beta.3

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 (198) hide show
  1. package/README.md +37 -11
  2. package/dist/arrays.d.ts +1 -0
  3. package/dist/arrays.js +4 -0
  4. package/dist/file.d.ts +108 -0
  5. package/dist/file.js +184 -0
  6. package/dist/filehound.d.ts +322 -0
  7. package/dist/filehound.js +443 -0
  8. package/dist/files.d.ts +4 -0
  9. package/dist/files.js +37 -0
  10. package/dist/filetype.d.ts +10 -0
  11. package/dist/filetype.js +9 -0
  12. package/dist/index.d.ts +4 -0
  13. package/dist/index.js +3 -0
  14. package/dist/matchers.d.ts +297 -0
  15. package/dist/matchers.js +389 -0
  16. package/dist/walker/async.d.ts +4 -0
  17. package/dist/walker/async.js +237 -0
  18. package/dist/walker/heap.d.ts +7 -0
  19. package/dist/walker/heap.js +49 -0
  20. package/dist/walker/sync.d.ts +4 -0
  21. package/dist/walker/sync.js +66 -0
  22. package/dist/walker/walk.d.ts +32 -0
  23. package/dist/walker/walk.js +70 -0
  24. package/package.json +44 -49
  25. package/.github/stale.yml +0 -42
  26. package/.travis.yml +0 -8
  27. package/CONTRIBUTING.md +0 -8
  28. package/_config.yml +0 -1
  29. package/dist/src/arrays.js +0 -15
  30. package/dist/src/arrays.js.map +0 -1
  31. package/dist/src/asyncWalker.js +0 -63
  32. package/dist/src/asyncWalker.js.map +0 -1
  33. package/dist/src/bind.js +0 -15
  34. package/dist/src/bind.js.map +0 -1
  35. package/dist/src/filehound.js +0 -597
  36. package/dist/src/filehound.js.map +0 -1
  37. package/dist/src/files.js +0 -60
  38. package/dist/src/files.js.map +0 -1
  39. package/dist/src/functions.js +0 -22
  40. package/dist/src/functions.js.map +0 -1
  41. package/dist/src/matcher.js +0 -51
  42. package/dist/src/matcher.js.map +0 -1
  43. package/dist/src/syncWalker.js +0 -51
  44. package/dist/src/syncWalker.js.map +0 -1
  45. package/dist/src/walker/walk.js +0 -68
  46. package/dist/src/walker/walk.js.map +0 -1
  47. package/dist/src/walker/walkAsync.js +0 -33
  48. package/dist/src/walker/walkAsync.js.map +0 -1
  49. package/dist/src/walker/walkSync.js +0 -21
  50. package/dist/src/walker/walkSync.js.map +0 -1
  51. package/dist/src/walker.js +0 -31
  52. package/dist/src/walker.js.map +0 -1
  53. package/dist/test/filehound.js +0 -872
  54. package/dist/test/filehound.js.map +0 -1
  55. package/dist/test/files.js +0 -29
  56. package/dist/test/files.js.map +0 -1
  57. package/docconfig/jsdoc.json +0 -26
  58. package/docconfig/template/LICENSE +0 -61
  59. package/docconfig/template/README.md +0 -86
  60. package/docconfig/template/package.json +0 -22
  61. package/docconfig/template/publish.js +0 -676
  62. package/docconfig/template/static/fonts/OpenSans-Bold-webfont.eot +0 -0
  63. package/docconfig/template/static/fonts/OpenSans-Bold-webfont.svg +0 -1830
  64. package/docconfig/template/static/fonts/OpenSans-Bold-webfont.woff +0 -0
  65. package/docconfig/template/static/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
  66. package/docconfig/template/static/fonts/OpenSans-BoldItalic-webfont.svg +0 -1830
  67. package/docconfig/template/static/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
  68. package/docconfig/template/static/fonts/OpenSans-Italic-webfont.eot +0 -0
  69. package/docconfig/template/static/fonts/OpenSans-Italic-webfont.svg +0 -1830
  70. package/docconfig/template/static/fonts/OpenSans-Italic-webfont.woff +0 -0
  71. package/docconfig/template/static/fonts/OpenSans-Light-webfont.eot +0 -0
  72. package/docconfig/template/static/fonts/OpenSans-Light-webfont.svg +0 -1831
  73. package/docconfig/template/static/fonts/OpenSans-Light-webfont.woff +0 -0
  74. package/docconfig/template/static/fonts/OpenSans-LightItalic-webfont.eot +0 -0
  75. package/docconfig/template/static/fonts/OpenSans-LightItalic-webfont.svg +0 -1835
  76. package/docconfig/template/static/fonts/OpenSans-LightItalic-webfont.woff +0 -0
  77. package/docconfig/template/static/fonts/OpenSans-Regular-webfont.eot +0 -0
  78. package/docconfig/template/static/fonts/OpenSans-Regular-webfont.svg +0 -1831
  79. package/docconfig/template/static/fonts/OpenSans-Regular-webfont.woff +0 -0
  80. package/docconfig/template/static/fonts/OpenSans-Semibold-webfont.eot +0 -0
  81. package/docconfig/template/static/fonts/OpenSans-Semibold-webfont.svg +0 -1830
  82. package/docconfig/template/static/fonts/OpenSans-Semibold-webfont.ttf +0 -0
  83. package/docconfig/template/static/fonts/OpenSans-Semibold-webfont.woff +0 -0
  84. package/docconfig/template/static/fonts/OpenSans-SemiboldItalic-webfont.eot +0 -0
  85. package/docconfig/template/static/fonts/OpenSans-SemiboldItalic-webfont.svg +0 -1830
  86. package/docconfig/template/static/fonts/OpenSans-SemiboldItalic-webfont.ttf +0 -0
  87. package/docconfig/template/static/fonts/OpenSans-SemiboldItalic-webfont.woff +0 -0
  88. package/docconfig/template/static/scripts/linenumber.js +0 -25
  89. package/docconfig/template/static/scripts/prettify/Apache-License-2.0.txt +0 -202
  90. package/docconfig/template/static/scripts/prettify/lang-css.js +0 -2
  91. package/docconfig/template/static/scripts/prettify/prettify.js +0 -28
  92. package/docconfig/template/static/styles/jsdoc-default.css +0 -605
  93. package/docconfig/template/static/styles/prettify-jsdoc.css +0 -111
  94. package/docconfig/template/static/styles/prettify-tomorrow.css +0 -132
  95. package/docconfig/template/tmpl/augments.tmpl +0 -10
  96. package/docconfig/template/tmpl/container.tmpl +0 -183
  97. package/docconfig/template/tmpl/details.tmpl +0 -143
  98. package/docconfig/template/tmpl/example.tmpl +0 -2
  99. package/docconfig/template/tmpl/examples.tmpl +0 -13
  100. package/docconfig/template/tmpl/exceptions.tmpl +0 -32
  101. package/docconfig/template/tmpl/layout.tmpl +0 -47
  102. package/docconfig/template/tmpl/mainpage.tmpl +0 -10
  103. package/docconfig/template/tmpl/members.tmpl +0 -38
  104. package/docconfig/template/tmpl/method.tmpl +0 -105
  105. package/docconfig/template/tmpl/params.tmpl +0 -124
  106. package/docconfig/template/tmpl/properties.tmpl +0 -108
  107. package/docconfig/template/tmpl/returns.tmpl +0 -19
  108. package/docconfig/template/tmpl/source.tmpl +0 -8
  109. package/docconfig/template/tmpl/tutorial.tmpl +0 -19
  110. package/docconfig/template/tmpl/type.tmpl +0 -7
  111. package/docs/FileHound.html +0 -3079
  112. package/docs/FileHound_modified.html +0 -245
  113. package/docs/_config.yml +0 -1
  114. package/docs/filehound.js.html +0 -697
  115. package/docs/fonts/OpenSans-Bold-webfont.eot +0 -0
  116. package/docs/fonts/OpenSans-Bold-webfont.svg +0 -1830
  117. package/docs/fonts/OpenSans-Bold-webfont.woff +0 -0
  118. package/docs/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
  119. package/docs/fonts/OpenSans-BoldItalic-webfont.svg +0 -1830
  120. package/docs/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
  121. package/docs/fonts/OpenSans-Italic-webfont.eot +0 -0
  122. package/docs/fonts/OpenSans-Italic-webfont.svg +0 -1830
  123. package/docs/fonts/OpenSans-Italic-webfont.woff +0 -0
  124. package/docs/fonts/OpenSans-Light-webfont.eot +0 -0
  125. package/docs/fonts/OpenSans-Light-webfont.svg +0 -1831
  126. package/docs/fonts/OpenSans-Light-webfont.woff +0 -0
  127. package/docs/fonts/OpenSans-LightItalic-webfont.eot +0 -0
  128. package/docs/fonts/OpenSans-LightItalic-webfont.svg +0 -1835
  129. package/docs/fonts/OpenSans-LightItalic-webfont.woff +0 -0
  130. package/docs/fonts/OpenSans-Regular-webfont.eot +0 -0
  131. package/docs/fonts/OpenSans-Regular-webfont.svg +0 -1831
  132. package/docs/fonts/OpenSans-Regular-webfont.woff +0 -0
  133. package/docs/fonts/OpenSans-Semibold-webfont.eot +0 -0
  134. package/docs/fonts/OpenSans-Semibold-webfont.svg +0 -1830
  135. package/docs/fonts/OpenSans-Semibold-webfont.ttf +0 -0
  136. package/docs/fonts/OpenSans-Semibold-webfont.woff +0 -0
  137. package/docs/fonts/OpenSans-SemiboldItalic-webfont.eot +0 -0
  138. package/docs/fonts/OpenSans-SemiboldItalic-webfont.svg +0 -1830
  139. package/docs/fonts/OpenSans-SemiboldItalic-webfont.ttf +0 -0
  140. package/docs/fonts/OpenSans-SemiboldItalic-webfont.woff +0 -0
  141. package/docs/global.html +0 -288
  142. package/docs/index.html +0 -154
  143. package/docs/scripts/linenumber.js +0 -25
  144. package/docs/scripts/prettify/Apache-License-2.0.txt +0 -202
  145. package/docs/scripts/prettify/lang-css.js +0 -2
  146. package/docs/scripts/prettify/prettify.js +0 -28
  147. package/docs/styles/jsdoc-default.css +0 -605
  148. package/docs/styles/prettify-jsdoc.css +0 -111
  149. package/docs/styles/prettify-tomorrow.css +0 -132
  150. package/docs.md +0 -164
  151. package/index.js +0 -1
  152. package/issue_template.md +0 -6
  153. package/test/filehound.ts +0 -1076
  154. package/test/files.ts +0 -29
  155. package/test/fixtures/custom/failed.txt +0 -0
  156. package/test/fixtures/custom/passed.txt +0 -0
  157. package/test/fixtures/deeplyNested/c.json +0 -0
  158. package/test/fixtures/deeplyNested/d.json +0 -0
  159. package/test/fixtures/deeplyNested/mydir/e.json +0 -0
  160. package/test/fixtures/deeplyNested/mydir/mydir2/f.json +0 -0
  161. package/test/fixtures/deeplyNested/mydir/mydir2/mydir3/mydir4/failed.json +0 -0
  162. package/test/fixtures/deeplyNested/mydir/mydir2/mydir3/z.json +0 -0
  163. package/test/fixtures/deeplyNested/mydir/mydir2/y.json +0 -0
  164. package/test/fixtures/deeplyNestedWithHiddenDir/c.json +0 -0
  165. package/test/fixtures/deeplyNestedWithHiddenDir/d.json +0 -0
  166. package/test/fixtures/deeplyNestedWithHiddenDir/mydir/e.json +0 -0
  167. package/test/fixtures/deeplyNestedWithHiddenDir/mydir/mydir2/f.json +0 -0
  168. package/test/fixtures/deeplyNestedWithHiddenDir/mydir/mydir2/mydir3/mydir4/.mydir5/.keep +0 -0
  169. package/test/fixtures/deeplyNestedWithHiddenDir/mydir/mydir2/mydir3/mydir4/failed.json +0 -0
  170. package/test/fixtures/deeplyNestedWithHiddenDir/mydir/mydir2/mydir3/z.json +0 -0
  171. package/test/fixtures/deeplyNestedWithHiddenDir/mydir/mydir2/y.json +0 -0
  172. package/test/fixtures/ext/Dummy.java +0 -0
  173. package/test/fixtures/ext/Dumpy.go +0 -0
  174. package/test/fixtures/ext/dummy.json +0 -0
  175. package/test/fixtures/ext/dummy.txt +0 -0
  176. package/test/fixtures/justFiles/a.json +0 -0
  177. package/test/fixtures/justFiles/b.json +0 -0
  178. package/test/fixtures/justFiles/dummy.txt +0 -0
  179. package/test/fixtures/mixed/a.json +0 -0
  180. package/test/fixtures/mixed/aabbcc.json +0 -0
  181. package/test/fixtures/mixed/ab.json +0 -0
  182. package/test/fixtures/mixed/z.json +0 -0
  183. package/test/fixtures/nested/.hidden1/bad.txt +0 -0
  184. package/test/fixtures/nested/c.json +0 -0
  185. package/test/fixtures/nested/d.json +0 -0
  186. package/test/fixtures/nested/mydir/e.json +0 -0
  187. package/test/fixtures/sizes/10b.txt +0 -0
  188. package/test/fixtures/sizes/1b.txt +0 -0
  189. package/test/fixtures/sizes/1k.txt +0 -0
  190. package/test/fixtures/sizes/2k.txt +0 -0
  191. package/test/fixtures/visibility/.hidden/.hidden.json +0 -0
  192. package/test/fixtures/visibility/.hidden/visible.json +0 -3
  193. package/test/fixtures/visibility/.hidden.json +0 -3
  194. package/test/fixtures/visibility/visible/.hidden.json +0 -3
  195. package/test/fixtures/visibility/visible.json +0 -3
  196. package/test/mocha.opts +0 -4
  197. package/tsconfig.json +0 -16
  198. package/tslint.json +0 -44
package/dist/src/files.js DELETED
@@ -1,60 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const _ = require("lodash");
4
- const path = require("path");
5
- const os = require("os");
6
- function flatten(a, b) {
7
- return a.concat(b);
8
- }
9
- function hasParent(parent) {
10
- const root = getRoot(parent);
11
- return parent && (parent !== root && parent !== '.');
12
- }
13
- function getParent(dir) {
14
- return path.dirname(dir);
15
- }
16
- function getRoot(dir) {
17
- return os.platform() === 'win32'
18
- ? dir.split(path.sep)[0] + path.sep
19
- : path.sep;
20
- }
21
- exports.getRoot = getRoot;
22
- function getSubDirectories(base, allPaths) {
23
- return allPaths.filter((candidate) => {
24
- return base !== candidate && isSubDirectory(base, candidate);
25
- });
26
- }
27
- function findSubDirectories(paths) {
28
- return paths
29
- .map((path) => {
30
- return getSubDirectories(path, paths);
31
- })
32
- .reduce(flatten, []);
33
- }
34
- exports.findSubDirectories = findSubDirectories;
35
- function notSubDirectory(subDirs) {
36
- return (path) => {
37
- return !_.includes(subDirs, path);
38
- };
39
- }
40
- exports.notSubDirectory = notSubDirectory;
41
- function isSubDirectory(base, candidate) {
42
- let parent = candidate;
43
- while (hasParent(parent)) {
44
- if (base === parent) {
45
- return true;
46
- }
47
- parent = getParent(parent);
48
- }
49
- return false;
50
- }
51
- exports.isSubDirectory = isSubDirectory;
52
- function reducePaths(searchPaths) {
53
- if (searchPaths.length === 1) {
54
- return searchPaths;
55
- }
56
- const subDirs = findSubDirectories(searchPaths.sort());
57
- return searchPaths.filter(notSubDirectory(subDirs));
58
- }
59
- exports.reducePaths = reducePaths;
60
- //# sourceMappingURL=files.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/files.ts"],"names":[],"mappings":";;AAAA,4BAA4B;AAC5B,6BAA6B;AAC7B,yBAAyB;AAEzB,iBAAiB,CAAC,EAAE,CAAC;IACnB,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC;AAED,mBAAmB,MAAc;IAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,OAAO,MAAM,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,GAAG,CAAC,CAAC;AACvD,CAAC;AAED,mBAAmB,GAAW;IAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC;AAED,iBAAwB,GAAW;IACjC,OAAO,EAAE,CAAC,QAAQ,EAAE,KAAK,OAAO;QAC9B,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG;QACnC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AACf,CAAC;AAJD,0BAIC;AAED,2BACE,IAAY,EACZ,QAAkB;IAElB,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;QACnC,OAAO,IAAI,KAAK,SAAS,IAAI,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;AACL,CAAC;AAED,4BAAmC,KAAe;IAChD,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,OAAO,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC,CAAC;SACD,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACzB,CAAC;AAND,gDAMC;AAED,yBAAgC,OAAiB;IAC/C,OAAO,CAAC,IAAI,EAAE,EAAE;QACd,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC,CAAC;AACJ,CAAC;AAJD,0CAIC;AAED,wBAA+B,IAAI,EAAE,SAAiB;IACpD,IAAI,MAAM,GAAG,SAAS,CAAC;IACvB,OAAO,SAAS,CAAC,MAAM,CAAC,EAAE;QACxB,IAAI,IAAI,KAAK,MAAM,EAAE;YACnB,OAAO,IAAI,CAAC;SACb;QACD,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;KAC5B;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AATD,wCASC;AAED,qBAA4B,WAAqB;IAC/C,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;QAC5B,OAAO,WAAW,CAAC;KACpB;IAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;IACvD,OAAO,WAAW,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;AACtD,CAAC;AAPD,kCAOC"}
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const _ = require("lodash");
4
- function negate(fn) {
5
- return function (args) {
6
- return !fn(args);
7
- };
8
- }
9
- exports.negate = negate;
10
- function compose(args) {
11
- const functions = _.isFunction(args) ? Array.from(arguments) : args;
12
- return (file) => {
13
- let match = true;
14
- /* tslint:disable:no-increment-decrement */
15
- for (let i = 0; i < functions.length; i++) {
16
- match = match && functions[i](file);
17
- }
18
- return match;
19
- };
20
- }
21
- exports.compose = compose;
22
- //# sourceMappingURL=functions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../src/functions.ts"],"names":[],"mappings":";;AAAA,4BAA4B;AAE5B,gBAAuB,EAA0B;IAC/C,MAAM,CAAC,UAAU,IAAS;QACxB,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC,CAAC;AACJ,CAAC;AAJD,wBAIC;AAED,iBAAwB,IAAI;IAC1B,MAAM,SAAS,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEpE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACd,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,2CAA2C;QAC3C,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,KAAK,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,CAAC,KAAK,CAAC;IACf,CAAC,CAAC;AACJ,CAAC;AAXD,0BAWC"}
@@ -1,51 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const _ = require("lodash");
4
- const bind_1 = require("./bind");
5
- // TODO: re-create matcher - retaining state i.e filters?
6
- class Matcher {
7
- constructor() {
8
- this.filters = [];
9
- this.negate = false;
10
- bind_1.default(this);
11
- }
12
- on(filter) {
13
- this.filters.push(filter);
14
- return this;
15
- }
16
- static negate(fn) {
17
- return function (args) {
18
- return !fn(args);
19
- };
20
- }
21
- static isMatch(pattern) {
22
- return (file) => {
23
- return new RegExp(pattern).test(file.getName());
24
- };
25
- }
26
- negateAll() {
27
- this.negate = true;
28
- return this;
29
- }
30
- static compose(args) {
31
- const functions = _.isFunction(args) ? Array.from(arguments) : args;
32
- return (file) => {
33
- let match = true;
34
- /* tslint:disable:no-increment-decrement */
35
- for (let i = 0; i < functions.length; i++) {
36
- match = match && functions[i](file);
37
- }
38
- return match;
39
- };
40
- }
41
- create() {
42
- const isMatch = Matcher.compose(this.filters);
43
- if (this.negate) {
44
- return Matcher.negate(isMatch);
45
- }
46
- return isMatch;
47
- }
48
- }
49
- exports.Matcher = Matcher;
50
- exports.default = Matcher;
51
- //# sourceMappingURL=matcher.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"matcher.js","sourceRoot":"","sources":["../../src/matcher.ts"],"names":[],"mappings":";;AAAA,4BAA4B;AAE5B,iCAA0B;AAE1B,yDAAyD;AACzD;IAIE;QACE,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,cAAI,CAAC,IAAI,CAAC,CAAC;IACb,CAAC;IAEM,EAAE,CAAC,MAAM;QACd,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,EAA0B;QAC7C,OAAO,UAAU,IAAS;YACxB,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,OAAe;QACnC,OAAO,CAAC,IAAI,EAAE,EAAE;YACd,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC;IACJ,CAAC;IAEM,SAAS;QACd,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,IAAI;QACxB,MAAM,SAAS,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAEpE,OAAO,CAAC,IAAI,EAAE,EAAE;YACd,IAAI,KAAK,GAAG,IAAI,CAAC;YACjB,2CAA2C;YAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACzC,KAAK,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aACrC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;IACJ,CAAC;IAED,MAAM;QACJ,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;SAChC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AApDD,0BAoDC;AAED,kBAAe,OAAO,CAAC"}
@@ -1,51 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function isDefined(value) {
4
- return value !== undefined;
5
- }
6
- function flatten(a, b) {
7
- return a.concat(b);
8
- }
9
- class SyncWalker {
10
- constructor(root, dirsOnly, ignoreDirs, maxDepth) {
11
- this.root = root;
12
- this.tracked = [];
13
- this.directoriesOnly = dirsOnly;
14
- this.ignoreDirs = ignoreDirs;
15
- this.maxDepth = maxDepth;
16
- }
17
- atMaxDepth(dir) {
18
- const depth = dir.getDepthSync() - this.root.getDepthSync();
19
- return isDefined(this.maxDepth) && depth > this.maxDepth;
20
- }
21
- shouldFilterDirectory(dir) {
22
- return (this.atMaxDepth(dir) || (this.ignoreDirs && dir.isHiddenSync()));
23
- }
24
- search(path, filter) {
25
- if (this.shouldFilterDirectory(path)) {
26
- return [];
27
- }
28
- return path.getFilesSync()
29
- .map((file) => {
30
- if (file.isDirectorySync()) {
31
- if (!this.shouldFilterDirectory(file)) {
32
- this.tracked.push(file);
33
- }
34
- return this.search(file, filter);
35
- }
36
- return file;
37
- })
38
- .reduce(flatten, [])
39
- .filter(filter);
40
- }
41
- walk(filter) {
42
- this.tracked = [];
43
- const files = this.search(this.root, filter);
44
- if (this.directoriesOnly) {
45
- return this.tracked.filter(filter);
46
- }
47
- return files;
48
- }
49
- }
50
- exports.SyncWalker = SyncWalker;
51
- //# sourceMappingURL=syncWalker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"syncWalker.js","sourceRoot":"","sources":["../../src/syncWalker.ts"],"names":[],"mappings":";;AAEA,mBAAmB,KAAU;IAC3B,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC;AAC7B,CAAC;AAED,iBAAiB,CAAS,EAAE,CAAS;IACnC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC;AAED;IAOE,YAAY,IAAU,EAAE,QAAS,EAAE,UAAW,EAAE,QAAS;QACvD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAEO,UAAU,CAAC,GAAG;QACpB,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;QAC5D,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC3D,CAAC;IAEO,qBAAqB,CAAC,GAAG;QAC/B,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IAC3E,CAAC;IAEO,MAAM,CAAC,IAAU,EAAE,MAA8B;QACvD,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,CAAC,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE;aACvB,GAAG,CAAC,CAAC,IAAU,EAAE,EAAE;YAClB,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;gBAC3B,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACtC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACnC,CAAC;YACD,MAAM,CAAC,IAAI,CAAC;QACd,CAAC,CAAC;aACD,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;aACnB,MAAM,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC;IAEM,IAAI,CAAC,MAA8B;QACxC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC7C,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACrC,CAAC;QACD,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;CACF;AAnDD,gCAmDC"}
@@ -1,68 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- const File = require("file-js");
12
- const walkSync_1 = require("./walkSync");
13
- const walkAsync_1 = require("./walkAsync");
14
- const TERMINATE = false;
15
- const CONTINUE = true;
16
- function isDefined(value) {
17
- return value !== undefined;
18
- }
19
- function atMaxDepth(dir, root, opts) {
20
- const depth = dir.getDepthSync() - root.getDepthSync();
21
- return isDefined(opts.maxDepth) && depth > opts.maxDepth;
22
- }
23
- function shouldFilterDirectory(dir, root, opts) {
24
- return (atMaxDepth(dir, root, opts) || (opts.ignoreDirs && dir.isHiddenSync()));
25
- }
26
- function async(dir, isMatch, opts) {
27
- return __awaiter(this, void 0, void 0, function* () {
28
- const root = File.create(dir);
29
- const files = [];
30
- yield walkAsync_1.walkAsync(root, (path) => __awaiter(this, void 0, void 0, function* () {
31
- if ((yield path.isDirectory()) && shouldFilterDirectory(path, root, opts)) {
32
- return TERMINATE;
33
- }
34
- if (opts.directoriesOnly) {
35
- if (path !== root && (yield path.isDirectory()) && isMatch(path)) {
36
- files.push(path.getName());
37
- }
38
- }
39
- else if (!(yield path.isDirectory()) && isMatch(path)) {
40
- files.push(path.getName());
41
- }
42
- return CONTINUE;
43
- }));
44
- return files;
45
- });
46
- }
47
- exports.async = async;
48
- function sync(dir, isMatch, opts) {
49
- const root = File.create(dir);
50
- const files = [];
51
- walkSync_1.walkSync(root, (path) => {
52
- if (path.isDirectorySync() && shouldFilterDirectory(path, root, opts)) {
53
- return TERMINATE;
54
- }
55
- if (opts.directoriesOnly) {
56
- if (path !== root && path.isDirectorySync() && isMatch(path)) {
57
- files.push(path.getName());
58
- }
59
- }
60
- else if (!path.isDirectorySync() && isMatch(path)) {
61
- files.push(path.getName());
62
- }
63
- return CONTINUE;
64
- });
65
- return files;
66
- }
67
- exports.sync = sync;
68
- //# sourceMappingURL=walk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"walk.js","sourceRoot":"","sources":["../../../src/walker/walk.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,gCAAgC;AAChC,yCAAsC;AACtC,2CAAwC;AAExC,MAAM,SAAS,GAAG,KAAK,CAAC;AACxB,MAAM,QAAQ,GAAG,IAAI,CAAC;AAEtB,mBAAmB,KAAU;IAC3B,OAAO,KAAK,KAAK,SAAS,CAAC;AAC7B,CAAC;AAED,oBAAoB,GAAG,EAAE,IAAI,EAAE,IAAI;IACjC,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;IACvD,OAAO,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;AAC3D,CAAC;AAED,+BAA+B,GAAG,EAAE,IAAI,EAAE,IAAI;IAC5C,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;AAClF,CAAC;AAED,eAA4B,GAAW,EAAE,OAAO,EAAE,IAAI;;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,KAAK,GAAG,EAAE,CAAC;QAEjB,MAAM,qBAAS,CAAC,IAAI,EAAE,CAAO,IAAI,EAAE,EAAE;YACnC,IAAI,CAAA,MAAM,IAAI,CAAC,WAAW,EAAE,KAAI,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE;gBACvE,OAAO,SAAS,CAAC;aAClB;YACD,IAAI,IAAI,CAAC,eAAe,EAAE;gBACxB,IAAI,IAAI,KAAK,IAAI,KAAI,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;oBAC9D,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;iBAC5B;aACF;iBAAM,IAAI,CAAC,CAAA,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;gBACrD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;aAC5B;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAA,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC;IACf,CAAC;CAAA;AAnBD,sBAmBC;AAED,cAAqB,GAAW,EAAE,OAAO,EAAE,IAAI;IAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAG,EAAE,CAAC;IAEjB,mBAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;QACtB,IAAI,IAAI,CAAC,eAAe,EAAE,IAAI,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE;YACrE,OAAO,SAAS,CAAC;SAClB;QAED,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,eAAe,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;gBAC5D,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;aAC5B;SACF;aAAM,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;YACnD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;SAC5B;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;AACf,CAAC;AArBD,oBAqBC"}
@@ -1,33 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- function getDirNames(dir) {
12
- return __awaiter(this, void 0, void 0, function* () {
13
- const names = yield dir.getFiles();
14
- return names.sort();
15
- });
16
- }
17
- function walkAsync(path, fn) {
18
- return __awaiter(this, void 0, void 0, function* () {
19
- if (!(yield path.isDirectory())) {
20
- return yield fn(path);
21
- }
22
- const cont = yield fn(path);
23
- if (!cont) {
24
- return;
25
- }
26
- const names = yield getDirNames(path);
27
- for (const name of names) {
28
- yield walkAsync(name, fn);
29
- }
30
- });
31
- }
32
- exports.walkAsync = walkAsync;
33
- //# sourceMappingURL=walkAsync.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"walkAsync.js","sourceRoot":"","sources":["../../../src/walker/walkAsync.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,qBAA2B,GAAG;;QAC1B,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;IACxB,CAAC;CAAA;AAED,mBAAgC,IAAI,EAAE,EAAE;;QACpC,IAAI,CAAC,CAAA,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA,EAAE;YAC3B,OAAO,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;SACzB;QAED,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,IAAI,EAAE;YAAE,OAAO;SAAE;QAEtB,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;QACtC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACtB,MAAM,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;SAC7B;IACL,CAAC;CAAA;AAZD,8BAYC"}
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function getDirNames(dir) {
4
- const names = dir.getFilesSync();
5
- return names.sort();
6
- }
7
- function walkSync(path, fn) {
8
- if (!path.isDirectorySync()) {
9
- return fn(path);
10
- }
11
- const cont = fn(path);
12
- if (!cont) {
13
- return;
14
- }
15
- const names = getDirNames(path);
16
- for (const name of names) {
17
- walkSync(name, fn);
18
- }
19
- }
20
- exports.walkSync = walkSync;
21
- //# sourceMappingURL=walkSync.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"walkSync.js","sourceRoot":"","sources":["../../../src/walker/walkSync.ts"],"names":[],"mappings":";;AAAA,qBAAqB,GAAG;IACpB,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC;IACjC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;AACxB,CAAC;AAED,kBAAyB,IAAI,EAAE,EAAE;IAC7B,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE;QACzB,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;KACnB;IAED,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACtB,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO;KAAE;IAEtB,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACtB,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;KACtB;AACL,CAAC;AAZD,4BAYC"}
@@ -1,31 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- function search(file, fn) {
12
- return __awaiter(this, void 0, void 0, function* () {
13
- if (!(yield file.isDirectory())) {
14
- return yield fn(file);
15
- }
16
- const cont = yield fn(file);
17
- if (!cont)
18
- return;
19
- const names = yield file.getFiles();
20
- for (const file of names) {
21
- yield search(file, fn);
22
- }
23
- });
24
- }
25
- function walk(root, fn) {
26
- return __awaiter(this, void 0, void 0, function* () {
27
- return yield search(root, fn);
28
- });
29
- }
30
- exports.walk = walk;
31
- //# sourceMappingURL=walker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"walker.js","sourceRoot":"","sources":["../../src/walker.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,gBAAsB,IAAI,EAAE,EAAE;;QAC1B,EAAE,CAAC,CAAC,CAAC,CAAA,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA,CAAC,CAAC,CAAC;YAC5B,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;QAC5B,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAAC,MAAM,CAAC;QAElB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,GAAG,CAAC,CAAC,MAAM,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC;YACvB,MAAM,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC3B,CAAC;IACL,CAAC;CAAA;AAED,cAA2B,IAAI,EAAE,EAAE;;QAC/B,MAAM,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC;CAAA;AAFD,oBAEC"}