@idlebox/node 1.2.9 → 1.2.10

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.
@@ -49,7 +49,7 @@ export declare function commandInPath(cmd: string, alterExt?: string[]): Promise
49
49
 
50
50
  export declare function commmandInPathSync(cmd: string, alterExt?: string[]): string | undefined;
51
51
 
52
- export declare function createTempFolder(path: string): void;
52
+ export declare function createTempFolder(fullPath: string): IDisposable;
53
53
 
54
54
  export declare function deleteEnvironment(name: string, env?: NodeJS.ProcessEnv): void;
55
55
 
@@ -49,7 +49,7 @@ export declare function commandInPath(cmd: string, alterExt?: string[]): Promise
49
49
 
50
50
  export declare function commmandInPathSync(cmd: string, alterExt?: string[]): string | undefined;
51
51
 
52
- export declare function createTempFolder(path: string): void;
52
+ export declare function createTempFolder(fullPath: string): IDisposable;
53
53
 
54
54
  export declare function deleteEnvironment(name: string, env?: NodeJS.ProcessEnv): void;
55
55
 
@@ -49,7 +49,7 @@ export declare function commandInPath(cmd: string, alterExt?: string[]): Promise
49
49
 
50
50
  export declare function commmandInPathSync(cmd: string, alterExt?: string[]): string | undefined;
51
51
 
52
- export declare function createTempFolder(path: string): void;
52
+ export declare function createTempFolder(fullPath: string): IDisposable;
53
53
 
54
54
  export declare function deleteEnvironment(name: string, env?: NodeJS.ProcessEnv): void;
55
55
 
package/dist/node.d.ts CHANGED
@@ -49,7 +49,7 @@ export declare function commandInPath(cmd: string, alterExt?: string[]): Promise
49
49
 
50
50
  export declare function commmandInPathSync(cmd: string, alterExt?: string[]): string | undefined;
51
51
 
52
- export declare function createTempFolder(path: string): void;
52
+ export declare function createTempFolder(fullPath: string): IDisposable;
53
53
 
54
54
  export declare function deleteEnvironment(name: string, env?: NodeJS.ProcessEnv): void;
55
55
 
@@ -5,16 +5,22 @@ const fs_1 = require("fs");
5
5
  const path_1 = require("path");
6
6
  const exists_1 = require("./exists.cjs");
7
7
  let registered = false;
8
- const tempFolders = [];
9
- function createTempFolder(path) {
10
- if ((0, exists_1.existsSync)(path)) {
11
- throw new Error('temp folder already exists: ' + path);
8
+ const tempFolders = new Set();
9
+ function createTempFolder(fullPath) {
10
+ if ((0, exists_1.existsSync)(fullPath)) {
11
+ throw new Error('temp folder already exists: ' + fullPath);
12
12
  }
13
13
  if (!registered) {
14
14
  process.on('beforeExit', onBeforeExit);
15
15
  }
16
- tempFolders.push(path);
17
- (0, fs_1.mkdirSync)(path);
16
+ tempFolders.add(fullPath);
17
+ (0, fs_1.mkdirSync)(fullPath);
18
+ return {
19
+ dispose() {
20
+ tempFolders.delete(fullPath);
21
+ rmdirpSync(fullPath);
22
+ },
23
+ };
18
24
  }
19
25
  exports.createTempFolder = createTempFolder;
20
26
  function rmdirpSync(p) {
@@ -1 +1 @@
1
- {"version":3,"file":"tempFolder.js","sourceRoot":"","sources":["../../src/fs/tempFolder.ts"],"names":[],"mappings":";;;AAAA,2BAA6E;AAC7E,+BAA+B;AAC/B,yCAAsC;AAEtC,IAAI,UAAU,GAAG,KAAK,CAAC;AACvB,MAAM,WAAW,GAAa,EAAE,CAAC;AAEjC,SAAgB,gBAAgB,CAAC,IAAY;IAC5C,IAAI,IAAA,mBAAU,EAAC,IAAI,CAAC,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,8BAA8B,GAAG,IAAI,CAAC,CAAC;KACvD;IACD,IAAI,CAAC,UAAU,EAAE;QAChB,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;KACvC;IACD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvB,IAAA,cAAS,EAAC,IAAI,CAAC,CAAC;AACjB,CAAC;AATD,4CASC;AAED,SAAS,UAAU,CAAC,CAAS;IAC5B,IAAI;QACH,MAAM,IAAI,GAAG,IAAA,aAAQ,EAAC,CAAC,CAAC,CAAC;QACzB,IAAI,IAAI,CAAC,cAAc,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAA,eAAU,EAAC,CAAC,CAAC,CAAC;SACd;aAAM,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;YAC9B,IAAI,IAAI,GAAG,IAAI,CAAC;YAChB,KAAK,MAAM,IAAI,IAAI,IAAA,gBAAW,EAAC,CAAC,CAAC,EAAE;gBAClC,IAAI,CAAC,UAAU,CAAC,IAAA,cAAO,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;oBAClC,IAAI,GAAG,KAAK,CAAC;iBACb;aACD;YACD,IAAI,IAAI,EAAE;gBACT,IAAA,cAAS,EAAC,CAAC,CAAC,CAAC;aACb;YACD,OAAO,IAAI,CAAC;SACZ;QACD,OAAO,IAAI,CAAC;KACZ;IAAC,MAAM;QACP,OAAO,KAAK,CAAC;KACb;AACF,CAAC;AAED,SAAS,YAAY;IACpB,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE;QAC/B,UAAU,CAAC,IAAI,CAAC,CAAC;KACjB;AACF,CAAC"}
1
+ {"version":3,"file":"tempFolder.js","sourceRoot":"","sources":["../../src/fs/tempFolder.ts"],"names":[],"mappings":";;;AAAA,2BAA6E;AAC7E,+BAA+B;AAE/B,yCAAsC;AAEtC,IAAI,UAAU,GAAG,KAAK,CAAC;AACvB,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;AAEtC,SAAgB,gBAAgB,CAAC,QAAgB;IAChD,IAAI,IAAA,mBAAU,EAAC,QAAQ,CAAC,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,8BAA8B,GAAG,QAAQ,CAAC,CAAC;KAC3D;IACD,IAAI,CAAC,UAAU,EAAE;QAChB,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;KACvC;IACD,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC1B,IAAA,cAAS,EAAC,QAAQ,CAAC,CAAC;IAEpB,OAAO;QACN,OAAO;YACN,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC7B,UAAU,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC;KACD,CAAC;AACH,CAAC;AAhBD,4CAgBC;AAED,SAAS,UAAU,CAAC,CAAS;IAC5B,IAAI;QACH,MAAM,IAAI,GAAG,IAAA,aAAQ,EAAC,CAAC,CAAC,CAAC;QACzB,IAAI,IAAI,CAAC,cAAc,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAA,eAAU,EAAC,CAAC,CAAC,CAAC;SACd;aAAM,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;YAC9B,IAAI,IAAI,GAAG,IAAI,CAAC;YAChB,KAAK,MAAM,IAAI,IAAI,IAAA,gBAAW,EAAC,CAAC,CAAC,EAAE;gBAClC,IAAI,CAAC,UAAU,CAAC,IAAA,cAAO,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;oBAClC,IAAI,GAAG,KAAK,CAAC;iBACb;aACD;YACD,IAAI,IAAI,EAAE;gBACT,IAAA,cAAS,EAAC,CAAC,CAAC,CAAC;aACb;YACD,OAAO,IAAI,CAAC;SACZ;QACD,OAAO,IAAI,CAAC;KACZ;IAAC,MAAM;QACP,OAAO,KAAK,CAAC;KACb;AACF,CAAC;AAED,SAAS,YAAY;IACpB,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE;QAC/B,UAAU,CAAC,IAAI,CAAC,CAAC;KACjB;AACF,CAAC"}
@@ -2,16 +2,22 @@ import { mkdirSync, readdirSync, rmdirSync, statSync, unlinkSync } from 'fs';
2
2
  import { resolve } from 'path';
3
3
  import { existsSync } from "./exists.js";
4
4
  let registered = false;
5
- const tempFolders = [];
6
- export function createTempFolder(path) {
7
- if (existsSync(path)) {
8
- throw new Error('temp folder already exists: ' + path);
5
+ const tempFolders = new Set();
6
+ export function createTempFolder(fullPath) {
7
+ if (existsSync(fullPath)) {
8
+ throw new Error('temp folder already exists: ' + fullPath);
9
9
  }
10
10
  if (!registered) {
11
11
  process.on('beforeExit', onBeforeExit);
12
12
  }
13
- tempFolders.push(path);
14
- mkdirSync(path);
13
+ tempFolders.add(fullPath);
14
+ mkdirSync(fullPath);
15
+ return {
16
+ dispose() {
17
+ tempFolders.delete(fullPath);
18
+ rmdirpSync(fullPath);
19
+ },
20
+ };
15
21
  }
16
22
  function rmdirpSync(p) {
17
23
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"tempFolder.js","sourceRoot":"","sources":["../../src/fs/tempFolder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,oBAAiB;AAEtC,IAAI,UAAU,GAAG,KAAK,CAAC;AACvB,MAAM,WAAW,GAAa,EAAE,CAAC;AAEjC,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC5C,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,8BAA8B,GAAG,IAAI,CAAC,CAAC;KACvD;IACD,IAAI,CAAC,UAAU,EAAE;QAChB,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;KACvC;IACD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvB,SAAS,CAAC,IAAI,CAAC,CAAC;AACjB,CAAC;AAED,SAAS,UAAU,CAAC,CAAS;IAC5B,IAAI;QACH,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,IAAI,CAAC,cAAc,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;YAC3C,UAAU,CAAC,CAAC,CAAC,CAAC;SACd;aAAM,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;YAC9B,IAAI,IAAI,GAAG,IAAI,CAAC;YAChB,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE;gBAClC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;oBAClC,IAAI,GAAG,KAAK,CAAC;iBACb;aACD;YACD,IAAI,IAAI,EAAE;gBACT,SAAS,CAAC,CAAC,CAAC,CAAC;aACb;YACD,OAAO,IAAI,CAAC;SACZ;QACD,OAAO,IAAI,CAAC;KACZ;IAAC,MAAM;QACP,OAAO,KAAK,CAAC;KACb;AACF,CAAC;AAED,SAAS,YAAY;IACpB,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE;QAC/B,UAAU,CAAC,IAAI,CAAC,CAAC;KACjB;AACF,CAAC"}
1
+ {"version":3,"file":"tempFolder.js","sourceRoot":"","sources":["../../src/fs/tempFolder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EAAE,UAAU,EAAE,oBAAiB;AAEtC,IAAI,UAAU,GAAG,KAAK,CAAC;AACvB,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;AAEtC,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAChD,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,8BAA8B,GAAG,QAAQ,CAAC,CAAC;KAC3D;IACD,IAAI,CAAC,UAAU,EAAE;QAChB,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;KACvC;IACD,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC1B,SAAS,CAAC,QAAQ,CAAC,CAAC;IAEpB,OAAO;QACN,OAAO;YACN,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC7B,UAAU,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC;KACD,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,CAAS;IAC5B,IAAI;QACH,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,IAAI,CAAC,cAAc,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;YAC3C,UAAU,CAAC,CAAC,CAAC,CAAC;SACd;aAAM,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;YAC9B,IAAI,IAAI,GAAG,IAAI,CAAC;YAChB,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE;gBAClC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;oBAClC,IAAI,GAAG,KAAK,CAAC;iBACb;aACD;YACD,IAAI,IAAI,EAAE;gBACT,SAAS,CAAC,CAAC,CAAC,CAAC;aACb;YACD,OAAO,IAAI,CAAC;SACZ;QACD,OAAO,IAAI,CAAC;KACZ;IAAC,MAAM;QACP,OAAO,KAAK,CAAC;KACb;AACF,CAAC;AAED,SAAS,YAAY;IACpB,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE;QAC/B,UAAU,CAAC,IAAI,CAAC,CAAC;KACjB;AACF,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@idlebox/node",
3
3
  "type": "module",
4
- "version": "1.2.9",
4
+ "version": "1.2.10",
5
5
  "license": "MIT",
6
6
  "main": "./fix_esm_loader.cjs",
7
7
  "module": "./lib/index.generated.js",