namirasoft-core 1.4.79 → 1.4.80

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.
@@ -1,4 +1,4 @@
1
1
  export declare class FileOperation {
2
2
  static findUp(fileName: string): string[];
3
- static foreach(base: string, handler: (base: string, sub: string, name: string, full: string, isFolder: boolean) => Promise<boolean>, folders?: boolean, files?: boolean): Promise<void>;
3
+ static foreach(base: string, handler: (base: string, sub: string, name: string, full: string, isFolder: boolean) => Promise<boolean>, folders?: boolean, files?: boolean, level?: number | null): Promise<void>;
4
4
  }
@@ -36,9 +36,12 @@ class FileOperation {
36
36
  return foundFilePaths;
37
37
  }
38
38
  static foreach(base_1, handler_1) {
39
- return __awaiter(this, arguments, void 0, function* (base, handler, folders = true, files = true) {
40
- function recursive(base, sub) {
39
+ return __awaiter(this, arguments, void 0, function* (base, handler, folders = true, files = true, level = null) {
40
+ function recursive(base, sub, number) {
41
41
  return __awaiter(this, void 0, void 0, function* () {
42
+ if (level)
43
+ if (number > level)
44
+ return;
42
45
  let names = fs.readdirSync(path.join(base, sub));
43
46
  for (let name of names) {
44
47
  let newSub = path.join(sub, name);
@@ -49,7 +52,7 @@ class FileOperation {
49
52
  if (!moveon)
50
53
  continue;
51
54
  }
52
- yield recursive(base, newSub);
55
+ yield recursive(base, newSub, number + 1);
53
56
  }
54
57
  else {
55
58
  if (files)
@@ -58,7 +61,7 @@ class FileOperation {
58
61
  }
59
62
  });
60
63
  }
61
- yield recursive(base, "");
64
+ yield recursive(base, "", 1);
62
65
  });
63
66
  }
64
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FileOperation.js","sourceRoot":"","sources":["../src/FileOperation.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,IAAI,EAAO,CAAC;AACZ,IAAI,IAAS,CAAC;AACd,IAAI,OAAO,MAAM,KAAK,WAAW,EACjC,CAAC;IACG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAC3B,CAAC;AACD,MAAa,aAAa;IAEtB,MAAM,CAAC,MAAM,CAAC,QAAgB;QAE1B,IAAI,UAAU,GAAW,SAAS,CAAC;QACnC,MAAM,OAAO,GAAW,OAAO,CAAC,GAAG,EAAE,CAAC;QACtC,MAAM,cAAc,GAAa,EAAE,CAAC;QACpC,SAAS,iBAAiB,CAAC,GAAW;YAElC,MAAM,KAAK,GAAa,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAC5C,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACxB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;YAClD,IAAI,OAAO,KAAK,GAAG;gBACf,OAAO;YACX,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,OAAO,IAAI,GAAG;gBACd,OAAO;YACX,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QACD,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC9B,OAAO,cAAc,CAAC;IAC1B,CAAC;IACD,MAAM,CAAO,OAAO;6DAAC,IAAY,EAAE,OAAuG,EAAE,UAAmB,IAAI,EAAE,QAAiB,IAAI;YAEtL,SAAe,SAAS,CAAC,IAAY,EAAE,GAAW;;oBAE9C,IAAI,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;oBACjD,KAAK,IAAI,IAAI,IAAI,KAAK,EACtB,CAAC;wBACG,IAAI,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;wBACjC,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;wBACnC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EACnC,CAAC;4BACG,IAAI,OAAO,EACX,CAAC;gCACG,IAAI,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;gCACxD,IAAI,CAAC,MAAM;oCACP,SAAS;4BACjB,CAAC;4BACD,MAAM,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;wBAClC,CAAC;6BAED,CAAC;4BACG,IAAI,KAAK;gCACL,MAAM,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;wBACpD,CAAC;oBACL,CAAC;gBACL,CAAC;aAAA;YACD,MAAM,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC9B,CAAC;KAAA;CACJ;AAlDD,sCAkDC"}
1
+ {"version":3,"file":"FileOperation.js","sourceRoot":"","sources":["../src/FileOperation.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,IAAI,EAAO,CAAC;AACZ,IAAI,IAAS,CAAC;AACd,IAAI,OAAO,MAAM,KAAK,WAAW,EACjC,CAAC;IACG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAC3B,CAAC;AACD,MAAa,aAAa;IAEtB,MAAM,CAAC,MAAM,CAAC,QAAgB;QAE1B,IAAI,UAAU,GAAW,SAAS,CAAC;QACnC,MAAM,OAAO,GAAW,OAAO,CAAC,GAAG,EAAE,CAAC;QACtC,MAAM,cAAc,GAAa,EAAE,CAAC;QACpC,SAAS,iBAAiB,CAAC,GAAW;YAElC,MAAM,KAAK,GAAa,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAC5C,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACxB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;YAClD,IAAI,OAAO,KAAK,GAAG;gBACf,OAAO;YACX,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,OAAO,IAAI,GAAG;gBACd,OAAO;YACX,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QACD,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC9B,OAAO,cAAc,CAAC;IAC1B,CAAC;IACD,MAAM,CAAO,OAAO;6DAAC,IAAY,EAAE,OAAuG,EAAE,UAAmB,IAAI,EAAE,QAAiB,IAAI,EAAE,QAAuB,IAAI;YAEnN,SAAe,SAAS,CAAC,IAAY,EAAE,GAAW,EAAE,MAAc;;oBAE9D,IAAI,KAAK;wBACL,IAAI,MAAM,GAAG,KAAK;4BACd,OAAO;oBACf,IAAI,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;oBACjD,KAAK,IAAI,IAAI,IAAI,KAAK,EACtB,CAAC;wBACG,IAAI,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;wBACjC,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;wBACnC,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EACnC,CAAC;4BACG,IAAI,OAAO,EACX,CAAC;gCACG,IAAI,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;gCACxD,IAAI,CAAC,MAAM;oCACP,SAAS;4BACjB,CAAC;4BACD,MAAM,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;wBAC9C,CAAC;6BAED,CAAC;4BACG,IAAI,KAAK;gCACL,MAAM,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;wBACpD,CAAC;oBACL,CAAC;gBACL,CAAC;aAAA;YACD,MAAM,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QACjC,CAAC;KAAA;CACJ;AArDD,sCAqDC"}
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "framework": "npm",
9
9
  "application": "package",
10
10
  "private": false,
11
- "version": "1.4.79",
11
+ "version": "1.4.80",
12
12
  "author": "Amir Abolhasani",
13
13
  "license": "MIT",
14
14
  "main": "./dist/index.js",
@@ -27,10 +27,13 @@ export class FileOperation
27
27
  searchRecursively(currentDir);
28
28
  return foundFilePaths;
29
29
  }
30
- static async foreach(base: string, handler: (base: string, sub: string, name: string, full: string, isFolder: boolean) => Promise<boolean>, folders: boolean = true, files: boolean = true)
30
+ static async foreach(base: string, handler: (base: string, sub: string, name: string, full: string, isFolder: boolean) => Promise<boolean>, folders: boolean = true, files: boolean = true, level: number | null = null)
31
31
  {
32
- async function recursive(base: string, sub: string)
32
+ async function recursive(base: string, sub: string, number: number)
33
33
  {
34
+ if (level)
35
+ if (number > level)
36
+ return;
34
37
  let names = fs.readdirSync(path.join(base, sub));
35
38
  for (let name of names)
36
39
  {
@@ -44,7 +47,7 @@ export class FileOperation
44
47
  if (!moveon)
45
48
  continue;
46
49
  }
47
- await recursive(base, newSub);
50
+ await recursive(base, newSub, number + 1);
48
51
  }
49
52
  else
50
53
  {
@@ -53,6 +56,6 @@ export class FileOperation
53
56
  }
54
57
  }
55
58
  }
56
- await recursive(base, "");
59
+ await recursive(base, "", 1);
57
60
  }
58
61
  }