@ms-cloudpack/path-utilities 1.1.1 → 2.0.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/CHANGELOG.json CHANGED
@@ -2,7 +2,22 @@
2
2
  "name": "@ms-cloudpack/path-utilities",
3
3
  "entries": [
4
4
  {
5
- "date": "Tue, 15 Nov 2022 08:12:36 GMT",
5
+ "date": "Sat, 03 Dec 2022 08:10:22 GMT",
6
+ "tag": "@ms-cloudpack/path-utilities_v2.0.0",
7
+ "version": "2.0.0",
8
+ "comments": {
9
+ "major": [
10
+ {
11
+ "author": "dake.3601@gmail.com",
12
+ "package": "@ms-cloudpack/path-utilities",
13
+ "commit": "9fae6cbdb788baac8236abc9eb44eb1d3296b7e0",
14
+ "comment": "Changed name from isFile and isFolder to specify sync and added async versions"
15
+ }
16
+ ]
17
+ }
18
+ },
19
+ {
20
+ "date": "Tue, 15 Nov 2022 08:13:12 GMT",
6
21
  "tag": "@ms-cloudpack/path-utilities_v1.1.1",
7
22
  "version": "1.1.1",
8
23
  "comments": {
package/CHANGELOG.md CHANGED
@@ -1,12 +1,20 @@
1
1
  # Change Log - @ms-cloudpack/path-utilities
2
2
 
3
- This log was last generated on Tue, 15 Nov 2022 08:12:36 GMT and should not be manually modified.
3
+ This log was last generated on Sat, 03 Dec 2022 08:10:22 GMT and should not be manually modified.
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 2.0.0
8
+
9
+ Sat, 03 Dec 2022 08:10:22 GMT
10
+
11
+ ### Major changes
12
+
13
+ - Changed name from isFile and isFolder to specify sync and added async versions (dake.3601@gmail.com)
14
+
7
15
  ## 1.1.1
8
16
 
9
- Tue, 15 Nov 2022 08:12:36 GMT
17
+ Tue, 15 Nov 2022 08:13:12 GMT
10
18
 
11
19
  ### Patches
12
20
 
package/lib/index.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  export { intermediateToSourcePath } from './intermediateToSourcePath.js';
2
+ export { isFileSync } from './isFileSync.js';
2
3
  export { isFile } from './isFile.js';
4
+ export { isFolderSync } from './isFolderSync.js';
3
5
  export { isFolder } from './isFolder.js';
4
6
  export { sourceToIntermediatePath } from './sourceToIntermediatePath.js';
5
7
  export { findPackageRoot } from './findPackageRoot.js';
package/lib/index.js CHANGED
@@ -1,5 +1,7 @@
1
1
  export { intermediateToSourcePath } from './intermediateToSourcePath.js';
2
+ export { isFileSync } from './isFileSync.js';
2
3
  export { isFile } from './isFile.js';
4
+ export { isFolderSync } from './isFolderSync.js';
3
5
  export { isFolder } from './isFolder.js';
4
6
  export { sourceToIntermediatePath } from './sourceToIntermediatePath.js';
5
7
  export { findPackageRoot } from './findPackageRoot.js';
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import path from 'path';
2
- import { isFile } from './isFile.js';
2
+ import { isFileSync } from './isFileSync.js';
3
3
  import { slash } from '@ms-cloudpack/path-string-parsing';
4
4
  /**
5
5
  * Takes a relative intermediate content path (e.g. "lib/foo/bar.js") and resolves it to a source content path
@@ -31,7 +31,7 @@ export function intermediateToSourcePath(relativeIntermediatePath, rootPath) {
31
31
  }
32
32
  let match = candidates.find((candidate) => {
33
33
  const resolvedPath = path.resolve(rootPath, candidate);
34
- return isFile(resolvedPath);
34
+ return isFileSync(resolvedPath);
35
35
  });
36
36
  // Re-add the leading period.
37
37
  if (match && !match.startsWith('./')) {
@@ -1 +1 @@
1
- {"version":3,"file":"intermediateToSourcePath.js","sourceRoot":"","sources":["../src/intermediateToSourcePath.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAE1D;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,wBAAgC,EAAE,QAAgB;IACzF,MAAM,UAAU,GAAG,EAAE,CAAC;IACtB,MAAM,KAAK,GAAG,KAAK,CAAC,wBAAwB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzD,IAAI,gBAAgB,GAAG,CAAC,CAAC;IAEzB,qCAAqC;IACrC,OACE,KAAK,CAAC,MAAM;QACZ,gBAAgB,GAAG,KAAK,CAAC,MAAM;QAC/B,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC,EACjG;QACA,gBAAgB,EAAE,CAAC;KACpB;IAED,mFAAmF;IACnF,IAAI,KAAK,CAAC,MAAM,GAAG,gBAAgB,GAAG,CAAC,EAAE;QACvC,MAAM,kBAAkB,GACtB,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC;QAC9F,MAAM,UAAU,GAAG,kBAAkB;YACnC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnF,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QAE3C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;QAE9D,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,MAAM,EAAE;YAC3C,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CACrF,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CACpE,CAAC;SACH;QAED,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAE9D,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;KAClD;IAED,IAAI,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;QACxC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACvD,OAAO,MAAM,CAAC,YAAY,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,6BAA6B;IAC7B,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;QACpC,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC;KACtB;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"intermediateToSourcePath.js","sourceRoot":"","sources":["../src/intermediateToSourcePath.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAC;AAE1D;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,wBAAgC,EAAE,QAAgB;IACzF,MAAM,UAAU,GAAG,EAAE,CAAC;IACtB,MAAM,KAAK,GAAG,KAAK,CAAC,wBAAwB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzD,IAAI,gBAAgB,GAAG,CAAC,CAAC;IAEzB,qCAAqC;IACrC,OACE,KAAK,CAAC,MAAM;QACZ,gBAAgB,GAAG,KAAK,CAAC,MAAM;QAC/B,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC,EACjG;QACA,gBAAgB,EAAE,CAAC;KACpB;IAED,mFAAmF;IACnF,IAAI,KAAK,CAAC,MAAM,GAAG,gBAAgB,GAAG,CAAC,EAAE;QACvC,MAAM,kBAAkB,GACtB,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC;QAC9F,MAAM,UAAU,GAAG,kBAAkB;YACnC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnF,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QAE3C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;QAE9D,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,MAAM,EAAE;YAC3C,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CACrF,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CACpE,CAAC;SACH;QAED,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAE9D,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;KAClD;IAED,IAAI,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;QACxC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACvD,OAAO,UAAU,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,6BAA6B;IAC7B,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;QACpC,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC;KACtB;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
package/lib/isFile.d.ts CHANGED
@@ -1 +1 @@
1
- export declare function isFile(filePath: string): boolean;
1
+ export declare function isFile(filePath: string): Promise<boolean>;
package/lib/isFile.js CHANGED
@@ -1,7 +1,7 @@
1
- import { lstatSync } from 'fs';
2
- export function isFile(filePath) {
1
+ import fs from 'fs';
2
+ export async function isFile(filePath) {
3
3
  try {
4
- const stat = lstatSync(filePath);
4
+ const stat = await fs.promises.stat(filePath);
5
5
  return stat.isFile();
6
6
  }
7
7
  catch {
package/lib/isFile.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"isFile.js","sourceRoot":"","sources":["../src/isFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAE/B,MAAM,UAAU,MAAM,CAAC,QAAgB;IACrC,IAAI;QACF,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;KACtB;IAAC,MAAM;QACN,KAAK;KACN;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"isFile.js","sourceRoot":"","sources":["../src/isFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,QAAgB;IAC3C,IAAI;QACF,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;KACtB;IAAC,MAAM;QACN,KAAK;KACN;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -3,14 +3,14 @@ import path from 'path';
3
3
  import { isFile } from './isFile.js';
4
4
  import { filePath, folderPath } from './testPaths.js';
5
5
  describe('isFile', () => {
6
- it('returns true on a file', () => {
7
- expect(isFile(filePath)).toBeTruthy();
6
+ it('returns true on a file', async () => {
7
+ expect(await isFile(filePath)).toBeTruthy();
8
8
  });
9
- it('returns false on a folder', () => {
10
- expect(isFile(folderPath)).toBeFalsy();
9
+ it('returns false on a folder', async () => {
10
+ expect(await isFile(folderPath)).toBeFalsy();
11
11
  });
12
- it('returns false on a missing file', () => {
13
- expect(isFile(path.join(folderPath, 'does-not-exist.txt'))).toBeFalsy();
12
+ it('returns false on a missing file', async () => {
13
+ expect(await isFile(path.join(folderPath, 'does-not-exist.txt'))).toBeFalsy();
14
14
  });
15
15
  });
16
16
  //# sourceMappingURL=isFile.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"isFile.test.js","sourceRoot":"","sources":["../src/isFile.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEtD,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAC1E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"isFile.test.js","sourceRoot":"","sources":["../src/isFile.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEtD,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;QACtC,MAAM,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,CAAC,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAC/C,MAAM,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAChF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function isFileSync(filePath: string): boolean;
@@ -0,0 +1,12 @@
1
+ import { lstatSync } from 'fs';
2
+ export function isFileSync(filePath) {
3
+ try {
4
+ const stat = lstatSync(filePath);
5
+ return stat.isFile();
6
+ }
7
+ catch {
8
+ /* */
9
+ }
10
+ return false;
11
+ }
12
+ //# sourceMappingURL=isFileSync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isFileSync.js","sourceRoot":"","sources":["../src/isFileSync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAE/B,MAAM,UAAU,UAAU,CAAC,QAAgB;IACzC,IAAI;QACF,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;KACtB;IAAC,MAAM;QACN,KAAK;KACN;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,16 @@
1
+ import { describe, it, expect } from '@jest/globals';
2
+ import path from 'path';
3
+ import { isFileSync } from './isFileSync.js';
4
+ import { filePath, folderPath } from './testPaths.js';
5
+ describe('isFileSync', () => {
6
+ it('returns true on a file', () => {
7
+ expect(isFileSync(filePath)).toBeTruthy();
8
+ });
9
+ it('returns false on a folder', () => {
10
+ expect(isFileSync(folderPath)).toBeFalsy();
11
+ });
12
+ it('returns false on a missing file', () => {
13
+ expect(isFileSync(path.join(folderPath, 'does-not-exist.txt'))).toBeFalsy();
14
+ });
15
+ });
16
+ //# sourceMappingURL=isFileSync.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isFileSync.test.js","sourceRoot":"","sources":["../src/isFileSync.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEtD,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAC9E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/lib/isFolder.d.ts CHANGED
@@ -1 +1 @@
1
- export declare function isFolder(itemPath: string): boolean;
1
+ export declare function isFolder(itemPath: string): Promise<boolean>;
package/lib/isFolder.js CHANGED
@@ -1,7 +1,8 @@
1
1
  import fs from 'fs';
2
- export function isFolder(itemPath) {
2
+ export async function isFolder(itemPath) {
3
3
  try {
4
- return fs.lstatSync(itemPath)?.isDirectory();
4
+ const stat = await fs.promises.stat(itemPath);
5
+ return stat.isDirectory();
5
6
  }
6
7
  catch (e) {
7
8
  /* no-op */
@@ -1 +1 @@
1
- {"version":3,"file":"isFolder.js","sourceRoot":"","sources":["../src/isFolder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,UAAU,QAAQ,CAAC,QAAgB;IACvC,IAAI;QACF,OAAO,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;KAC9C;IAAC,OAAO,CAAC,EAAE;QACV,WAAW;KACZ;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"isFolder.js","sourceRoot":"","sources":["../src/isFolder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,QAAgB;IAC7C,IAAI;QACF,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;KAC3B;IAAC,OAAO,CAAC,EAAE;QACV,WAAW;KACZ;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -3,14 +3,14 @@ import path from 'path';
3
3
  import { isFolder } from './isFolder.js';
4
4
  import { folderPath, filePath } from './testPaths.js';
5
5
  describe('isFolder', () => {
6
- it('returns true on a folder', () => {
7
- expect(isFolder(folderPath)).toBeTruthy();
6
+ it('returns true on a folder', async () => {
7
+ expect(await isFolder(folderPath)).toBeTruthy();
8
8
  });
9
- it('returns false on a file', () => {
10
- expect(isFolder(path.join(filePath, '../package.json'))).toBeFalsy();
9
+ it('returns false on a file', async () => {
10
+ expect(await isFolder(path.join(filePath, '../package.json'))).toBeFalsy();
11
11
  });
12
- it('returns false on a missing file', () => {
13
- expect(isFolder(path.join(folderPath, 'does-not-exist.txt'))).toBeFalsy();
12
+ it('returns false on a missing file', async () => {
13
+ expect(await isFolder(path.join(folderPath, 'does-not-exist.txt'))).toBeFalsy();
14
14
  });
15
15
  });
16
16
  //# sourceMappingURL=isFolder.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"isFolder.test.js","sourceRoot":"","sources":["../src/isFolder.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEtD,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACjC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAC5E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"isFolder.test.js","sourceRoot":"","sources":["../src/isFolder.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEtD,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,CAAC,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;QACvC,MAAM,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;QAC/C,MAAM,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAClF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function isFolderSync(itemPath: string): boolean;
@@ -0,0 +1,11 @@
1
+ import fs from 'fs';
2
+ export function isFolderSync(itemPath) {
3
+ try {
4
+ return fs.lstatSync(itemPath)?.isDirectory();
5
+ }
6
+ catch (e) {
7
+ /* no-op */
8
+ }
9
+ return false;
10
+ }
11
+ //# sourceMappingURL=isFolderSync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isFolderSync.js","sourceRoot":"","sources":["../src/isFolderSync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,UAAU,YAAY,CAAC,QAAgB;IAC3C,IAAI;QACF,OAAO,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;KAC9C;IAAC,OAAO,CAAC,EAAE;QACV,WAAW;KACZ;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,16 @@
1
+ import { describe, it, expect } from '@jest/globals';
2
+ import path from 'path';
3
+ import { isFolderSync } from './isFolderSync.js';
4
+ import { folderPath, filePath } from './testPaths.js';
5
+ describe('isFolderSync', () => {
6
+ it('returns true on a folder', () => {
7
+ expect(isFolderSync(folderPath)).toBeTruthy();
8
+ });
9
+ it('returns false on a file', () => {
10
+ expect(isFolderSync(path.join(filePath, '../package.json'))).toBeFalsy();
11
+ });
12
+ it('returns false on a missing file', () => {
13
+ expect(isFolderSync(path.join(folderPath, 'does-not-exist.txt'))).toBeFalsy();
14
+ });
15
+ });
16
+ //# sourceMappingURL=isFolderSync.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isFolderSync.test.js","sourceRoot":"","sources":["../src/isFolderSync.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEtD,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACjC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAChF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ms-cloudpack/path-utilities",
3
- "version": "1.1.1",
3
+ "version": "2.0.0",
4
4
  "description": "Utilities for resolving paths between source/intermediate/output locations in Cloudpack.",
5
5
  "license": "MIT",
6
6
  "type": "module",