@aminzer/traverse-directory 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/traverseDirectory/traverseDirectory.js +2 -2
- package/dist/traverseDirectory/traverseDirectory.js.map +1 -1
- package/dist/utils/fs/__tests__/{directoryExist.test.js → directoryExists.test.js} +6 -6
- package/dist/utils/fs/__tests__/directoryExists.test.js.map +1 -0
- package/dist/utils/fs/directoryExists.d.ts +2 -0
- package/dist/utils/fs/{directoryExist.js → directoryExists.js} +3 -3
- package/dist/utils/fs/directoryExists.js.map +1 -0
- package/dist/utils/fs/index.d.ts +1 -1
- package/dist/utils/fs/index.js +1 -1
- package/dist/utils/fs/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/utils/fs/__tests__/directoryExist.test.js.map +0 -1
- package/dist/utils/fs/directoryExist.d.ts +0 -2
- package/dist/utils/fs/directoryExist.js.map +0 -1
- /package/dist/utils/fs/__tests__/{directoryExist.test.d.ts → directoryExists.test.d.ts} +0 -0
package/README.md
CHANGED
|
@@ -29,7 +29,9 @@ await traverseDirectory('/path/to/directory', ({ isFile, relativePath }) => {
|
|
|
29
29
|
`traverseDirectory` recursively iterates over the contents of a directory.
|
|
30
30
|
|
|
31
31
|
```typescript
|
|
32
|
-
|
|
32
|
+
import { directoryExists } from '@aminzer/traverse-directory';
|
|
33
|
+
|
|
34
|
+
await traverseDirectory(dirPath, onEachChild);
|
|
33
35
|
```
|
|
34
36
|
|
|
35
37
|
##### Parameters
|
|
@@ -63,3 +65,24 @@ Instance properties:
|
|
|
63
65
|
* `size` (`number`) - size of file in bytes, `0` for directories.
|
|
64
66
|
* `isFile` (`boolean`) - `true` if entry is file.
|
|
65
67
|
* `isDirectory` (`boolean`) - `true` if entry is directory.
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
**directoryExists**
|
|
71
|
+
|
|
72
|
+
##### Overview
|
|
73
|
+
|
|
74
|
+
`directoryExists` is an async function that checks if a given path exists and corresponds to a directory.
|
|
75
|
+
|
|
76
|
+
```typescript
|
|
77
|
+
import { directoryExists } from '@aminzer/traverse-directory';
|
|
78
|
+
|
|
79
|
+
const exists = await directoryExists('/path/to/directory');
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
##### Parameters
|
|
83
|
+
|
|
84
|
+
* `dirPath` (`string`, required) - path to the directory to check.
|
|
85
|
+
|
|
86
|
+
##### Return value
|
|
87
|
+
|
|
88
|
+
`Promise<boolean>` that resolves to `true` if the directory exists, or `false` otherwise.
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { directoryExists } from '../utils/fs';
|
|
2
2
|
import traverseDirectoryRecursive from './traverseDirectoryRecursive';
|
|
3
3
|
const traverseDirectory = async (dirPath, onEachChild) => {
|
|
4
|
-
if (!(await
|
|
4
|
+
if (!(await directoryExists(dirPath))) {
|
|
5
5
|
throw new Error(`Directory "${dirPath}" does not exist`);
|
|
6
6
|
}
|
|
7
7
|
await traverseDirectoryRecursive(dirPath, null, onEachChild);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traverseDirectory.js","sourceRoot":"","sources":["../../src/traverseDirectory/traverseDirectory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"traverseDirectory.js","sourceRoot":"","sources":["../../src/traverseDirectory/traverseDirectory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,0BAA0B,MAAM,8BAA8B,CAAC;AAGtE,MAAM,iBAAiB,GAAG,KAAK,EAAE,OAAe,EAAE,WAAwB,EAAiB,EAAE;IAC3F,IAAI,CAAC,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,cAAc,OAAO,kBAAkB,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,0BAA0B,CAAC,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
import assert from 'node:assert';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
3
|
import { describe, it } from 'node:test';
|
|
4
|
-
import
|
|
5
|
-
describe('utils > fs >
|
|
4
|
+
import directoryExists from '../directoryExists';
|
|
5
|
+
describe('utils > fs > directoryExists', () => {
|
|
6
6
|
describe('when path does not exist', () => {
|
|
7
7
|
const invalidPath = join(import.meta.dirname, 'invalid/path');
|
|
8
8
|
it('returns false', async () => {
|
|
9
|
-
assert.strictEqual(await
|
|
9
|
+
assert.strictEqual(await directoryExists(invalidPath), false);
|
|
10
10
|
});
|
|
11
11
|
});
|
|
12
12
|
describe('when path corresponds to file', () => {
|
|
13
13
|
const filePath = import.meta.filename;
|
|
14
14
|
it('returns false', async () => {
|
|
15
|
-
assert.strictEqual(await
|
|
15
|
+
assert.strictEqual(await directoryExists(filePath), false);
|
|
16
16
|
});
|
|
17
17
|
});
|
|
18
18
|
describe('when path corresponds to directory', () => {
|
|
19
19
|
const dirPath = import.meta.dirname;
|
|
20
20
|
it('returns true', async () => {
|
|
21
|
-
assert.strictEqual(await
|
|
21
|
+
assert.strictEqual(await directoryExists(dirPath), true);
|
|
22
22
|
});
|
|
23
23
|
});
|
|
24
24
|
});
|
|
25
|
-
//# sourceMappingURL=
|
|
25
|
+
//# sourceMappingURL=directoryExists.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directoryExists.test.js","sourceRoot":"","sources":["../../../../src/utils/fs/__tests__/directoryExists.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,eAAe,MAAM,oBAAoB,CAAC;AAEjD,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IAC5C,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAE9D,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;YAC7B,MAAM,CAAC,WAAW,CAAC,MAAM,eAAe,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;QAC7C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QAEtC,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;YAC7B,MAAM,CAAC,WAAW,CAAC,MAAM,eAAe,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAClD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;QAEpC,EAAE,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE;YAC5B,MAAM,CAAC,WAAW,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { stat } from 'node:fs/promises';
|
|
2
|
-
const
|
|
2
|
+
const directoryExists = async (path) => {
|
|
3
3
|
try {
|
|
4
4
|
const stats = await stat(path);
|
|
5
5
|
return stats.isDirectory();
|
|
@@ -8,5 +8,5 @@ const directoryExist = async (path) => {
|
|
|
8
8
|
return false;
|
|
9
9
|
}
|
|
10
10
|
};
|
|
11
|
-
export default
|
|
12
|
-
//# sourceMappingURL=
|
|
11
|
+
export default directoryExists;
|
|
12
|
+
//# sourceMappingURL=directoryExists.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directoryExists.js","sourceRoot":"","sources":["../../../src/utils/fs/directoryExists.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC,MAAM,eAAe,GAAG,KAAK,EAAE,IAAY,EAAoB,EAAE;IAC/D,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
package/dist/utils/fs/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { default as
|
|
1
|
+
export { default as directoryExists } from './directoryExists';
|
package/dist/utils/fs/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { default as
|
|
1
|
+
export { default as directoryExists } from './directoryExists';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/fs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/fs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"directoryExist.test.js","sourceRoot":"","sources":["../../../../src/utils/fs/__tests__/directoryExist.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAE/C,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAC3C,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAE9D,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;YAC7B,MAAM,CAAC,WAAW,CAAC,MAAM,cAAc,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;QAC7C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QAEtC,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;YAC7B,MAAM,CAAC,WAAW,CAAC,MAAM,cAAc,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAClD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;QAEpC,EAAE,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE;YAC5B,MAAM,CAAC,WAAW,CAAC,MAAM,cAAc,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"directoryExist.js","sourceRoot":"","sources":["../../../src/utils/fs/directoryExist.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC,MAAM,cAAc,GAAG,KAAK,EAAE,IAAY,EAAoB,EAAE;IAC9D,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
File without changes
|