locter 0.0.1 → 0.2.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 +105 -1
- package/dist/loader/file-type/json.js +3 -4
- package/dist/loader/file-type/json.js.map +1 -1
- package/dist/loader/file-type/script/async.js +3 -4
- package/dist/loader/file-type/script/async.js.map +1 -1
- package/dist/loader/file-type/script/sync.js +3 -4
- package/dist/loader/file-type/script/sync.js.map +1 -1
- package/dist/loader/module.js +2 -2
- package/dist/loader/module.js.map +1 -1
- package/dist/loader/utils.js +1 -2
- package/dist/loader/utils.js.map +1 -1
- package/dist/locator/async.d.ts +3 -0
- package/dist/locator/async.js +83 -0
- package/dist/locator/async.js.map +1 -0
- package/dist/locator/index.d.ts +2 -1
- package/dist/locator/index.js +2 -1
- package/dist/locator/index.js.map +1 -1
- package/dist/locator/sync.d.ts +3 -0
- package/dist/locator/sync.js +68 -0
- package/dist/locator/sync.js.map +1 -0
- package/dist/locator/type.d.ts +3 -4
- package/dist/locator/utils.js +7 -9
- package/dist/locator/utils.js.map +1 -1
- package/dist/utils/error.d.ts +1 -0
- package/dist/utils/error.js +21 -0
- package/dist/utils/error.js.map +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/package.json +11 -8
- package/dist/locator/module.d.ts +0 -3
- package/dist/locator/module.js +0 -71
- package/dist/locator/module.js.map +0 -1
package/README.MD
CHANGED
|
@@ -9,6 +9,8 @@ Locter is a library to locate and load a file regarding specific criteria.
|
|
|
9
9
|
|
|
10
10
|
- [Installation](#installation)
|
|
11
11
|
- [Usage](#usage)
|
|
12
|
+
- [Locator](#locator)
|
|
13
|
+
- [Loader](#loader)
|
|
12
14
|
|
|
13
15
|
## Installation
|
|
14
16
|
|
|
@@ -26,4 +28,106 @@ So please stay patient, till it is fully available ⭐.
|
|
|
26
28
|
|
|
27
29
|
## Usage
|
|
28
30
|
|
|
29
|
-
|
|
31
|
+
The following examples are based on some shared assumptions:
|
|
32
|
+
- A folder named `files` exists in the root directory.
|
|
33
|
+
- The folder `files` contains the following files:
|
|
34
|
+
- example.js
|
|
35
|
+
- example.json
|
|
36
|
+
- example.ts
|
|
37
|
+
- example-long.ts
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
### Locator
|
|
41
|
+
|
|
42
|
+
**Multiple**
|
|
43
|
+
|
|
44
|
+
Locating multiple files will return information about all files matching the pattern.
|
|
45
|
+
|
|
46
|
+
```typescript
|
|
47
|
+
import { locateFiles } from 'locter';
|
|
48
|
+
|
|
49
|
+
(async () => {
|
|
50
|
+
let files = await locateFiles(
|
|
51
|
+
'files/example.{js,.ts}',
|
|
52
|
+
{
|
|
53
|
+
path: process.cwd()
|
|
54
|
+
}
|
|
55
|
+
);
|
|
56
|
+
|
|
57
|
+
console.log(files);
|
|
58
|
+
/*
|
|
59
|
+
[
|
|
60
|
+
{ path: 'files', name: 'example', extension: '.js'},
|
|
61
|
+
{ path: 'files', name: 'example', extension: '.ts'}
|
|
62
|
+
]
|
|
63
|
+
*/
|
|
64
|
+
|
|
65
|
+
files = await locateFiles(
|
|
66
|
+
'files/*.{js,ts}',
|
|
67
|
+
{
|
|
68
|
+
path: process.cwd()
|
|
69
|
+
}
|
|
70
|
+
);
|
|
71
|
+
|
|
72
|
+
console.log(files);
|
|
73
|
+
/*
|
|
74
|
+
[
|
|
75
|
+
{ path: 'files', name: 'example', extension: '.js'},
|
|
76
|
+
{ path: 'files', name: 'example', extension: '.ts'},
|
|
77
|
+
{ path: 'files', name: 'example-long', extension: '.ts'},
|
|
78
|
+
]
|
|
79
|
+
*/
|
|
80
|
+
})
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
A synchronous variant is also available: `locateFilesSync`
|
|
84
|
+
|
|
85
|
+
**Single**
|
|
86
|
+
|
|
87
|
+
Locating a single file will return information about the first file matching the pattern.
|
|
88
|
+
|
|
89
|
+
```typescript
|
|
90
|
+
import { locateFile } from 'locter';
|
|
91
|
+
|
|
92
|
+
(async () => {
|
|
93
|
+
let file = await locateFile(
|
|
94
|
+
'files/example.{js,.ts}',
|
|
95
|
+
{
|
|
96
|
+
path: process.cwd()
|
|
97
|
+
}
|
|
98
|
+
);
|
|
99
|
+
|
|
100
|
+
console.log(file);
|
|
101
|
+
/*
|
|
102
|
+
{ path: 'files', name: 'example', extension: '.js'}
|
|
103
|
+
*/
|
|
104
|
+
})
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
A synchronous variant is also available: `locateFileSync`
|
|
108
|
+
|
|
109
|
+
### Loader
|
|
110
|
+
|
|
111
|
+
The method will load the located file.
|
|
112
|
+
|
|
113
|
+
```typescript
|
|
114
|
+
import { loadFile, locateFile } from 'locter';
|
|
115
|
+
|
|
116
|
+
(async () => {
|
|
117
|
+
const file = await locateFile(
|
|
118
|
+
'files/example.{js,.ts}',
|
|
119
|
+
{
|
|
120
|
+
path: process.cwd()
|
|
121
|
+
}
|
|
122
|
+
);
|
|
123
|
+
|
|
124
|
+
const content = loadFile(file);
|
|
125
|
+
|
|
126
|
+
console.log(content);
|
|
127
|
+
|
|
128
|
+
// ...
|
|
129
|
+
})
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
A synchronous variant is also available: `loadFileSync`
|
|
133
|
+
|
|
@@ -20,6 +20,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
20
20
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
21
|
exports.loadJsonFileSync = exports.loadJsonFile = void 0;
|
|
22
22
|
const fs_1 = __importDefault(require("fs"));
|
|
23
|
+
const utils_1 = require("../../utils");
|
|
23
24
|
function loadJsonFile(filePath) {
|
|
24
25
|
return __awaiter(this, void 0, void 0, function* () {
|
|
25
26
|
try {
|
|
@@ -27,8 +28,7 @@ function loadJsonFile(filePath) {
|
|
|
27
28
|
return JSON.parse(file.toString('utf-8'));
|
|
28
29
|
}
|
|
29
30
|
catch (e) {
|
|
30
|
-
|
|
31
|
-
return undefined;
|
|
31
|
+
return (0, utils_1.handleFileLoadError)(e);
|
|
32
32
|
}
|
|
33
33
|
});
|
|
34
34
|
}
|
|
@@ -39,8 +39,7 @@ function loadJsonFileSync(filePath) {
|
|
|
39
39
|
return JSON.parse(file.toString('utf-8'));
|
|
40
40
|
}
|
|
41
41
|
catch (e) {
|
|
42
|
-
|
|
43
|
-
return undefined;
|
|
42
|
+
return (0, utils_1.handleFileLoadError)(e);
|
|
44
43
|
}
|
|
45
44
|
}
|
|
46
45
|
exports.loadJsonFileSync = loadJsonFileSync;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../../src/loader/file-type/json.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;AAEH,4CAAoB;
|
|
1
|
+
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../../src/loader/file-type/json.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;AAEH,4CAAoB;AACpB,uCAAkD;AAElD,SAAsB,YAAY,CAAC,QAAgB;;QAC/C,IAAI;YACA,MAAM,IAAI,GAAG,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAClD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;SAC7C;QAAC,OAAO,CAAC,EAAE;YACR,OAAO,IAAA,2BAAmB,EAAC,CAAC,CAAC,CAAC;SACjC;IACL,CAAC;CAAA;AAPD,oCAOC;AAED,SAAgB,gBAAgB,CAAC,QAAgB;IAC7C,IAAI;QACA,MAAM,IAAI,GAAG,YAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;KAC7C;IAAC,OAAO,CAAC,EAAE;QACR,OAAO,IAAA,2BAAmB,EAAC,CAAC,CAAC,CAAC;KACjC;AACL,CAAC;AAPD,4CAOC"}
|
|
@@ -42,6 +42,7 @@ exports.loadScriptFileExport = exports.loadScriptFile = void 0;
|
|
|
42
42
|
const utils_1 = require("./utils");
|
|
43
43
|
const locator_1 = require("../../../locator");
|
|
44
44
|
const utils_2 = require("../../utils");
|
|
45
|
+
const utils_3 = require("../../../utils");
|
|
45
46
|
function loadScriptFile(data) {
|
|
46
47
|
return __awaiter(this, void 0, void 0, function* () {
|
|
47
48
|
const filePath = (0, locator_1.isLocatorInfo)(data) ?
|
|
@@ -51,8 +52,7 @@ function loadScriptFile(data) {
|
|
|
51
52
|
return yield Promise.resolve().then(() => __importStar(require(filePath)));
|
|
52
53
|
}
|
|
53
54
|
catch (e) {
|
|
54
|
-
|
|
55
|
-
return undefined;
|
|
55
|
+
return (0, utils_3.handleFileLoadError)(e);
|
|
56
56
|
}
|
|
57
57
|
});
|
|
58
58
|
}
|
|
@@ -67,8 +67,7 @@ function loadScriptFileExport(data, filterFn) {
|
|
|
67
67
|
return (0, utils_1.getExportItem)(data, filterFn);
|
|
68
68
|
}
|
|
69
69
|
catch (e) {
|
|
70
|
-
|
|
71
|
-
return undefined;
|
|
70
|
+
return (0, utils_3.handleFileLoadError)(e);
|
|
72
71
|
}
|
|
73
72
|
});
|
|
74
73
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async.js","sourceRoot":"","sources":["../../../../src/loader/file-type/script/async.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,mCAAwC;AAExC,8CAA8D;AAC9D,uCAAkD;
|
|
1
|
+
{"version":3,"file":"async.js","sourceRoot":"","sources":["../../../../src/loader/file-type/script/async.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,mCAAwC;AAExC,8CAA8D;AAC9D,uCAAkD;AAClD,0CAAqD;AAErD,SAAsB,cAAc,CAAC,IAA0B;;QAC3D,MAAM,QAAQ,GAAG,IAAA,uBAAa,EAAC,IAAI,CAAC,CAAC,CAAC;YAClC,IAAA,2BAAmB,EAAC,IAAI,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC;QAET,IAAI;YACA,OAAO,wDAAa,QAAQ,GAAC,CAAC;SACjC;QAAC,OAAO,CAAC,EAAE;YACR,OAAO,IAAA,2BAAmB,EAAC,CAAC,CAAC,CAAC;SACjC;IACL,CAAC;CAAA;AAVD,wCAUC;AAED,SAAsB,oBAAoB,CACtC,IAA0B,EAC1B,QAAyB;;QAEzB,MAAM,QAAQ,GAAG,IAAA,uBAAa,EAAC,IAAI,CAAC,CAAC,CAAC;YAClC,IAAA,2BAAmB,EAAC,IAAI,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC;QAET,IAAI;YACA,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC;YAE5C,OAAO,IAAA,qBAAa,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;SACxC;QAAC,OAAO,CAAC,EAAE;YACR,OAAO,IAAA,2BAAmB,EAAC,CAAC,CAAC,CAAC;SACjC;IACL,CAAC;CAAA;AAfD,oDAeC"}
|
|
@@ -10,6 +10,7 @@ exports.loadScriptFileExportSync = exports.loadScriptFileSync = void 0;
|
|
|
10
10
|
const utils_1 = require("./utils");
|
|
11
11
|
const locator_1 = require("../../../locator");
|
|
12
12
|
const utils_2 = require("../../utils");
|
|
13
|
+
const utils_3 = require("../../../utils");
|
|
13
14
|
function loadScriptFileSync(data) {
|
|
14
15
|
const filePath = (0, locator_1.isLocatorInfo)(data) ?
|
|
15
16
|
(0, utils_2.buildLoaderFilePath)(data) :
|
|
@@ -19,8 +20,7 @@ function loadScriptFileSync(data) {
|
|
|
19
20
|
return require(filePath);
|
|
20
21
|
}
|
|
21
22
|
catch (e) {
|
|
22
|
-
|
|
23
|
-
return undefined;
|
|
23
|
+
return (0, utils_3.handleFileLoadError)(e);
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
exports.loadScriptFileSync = loadScriptFileSync;
|
|
@@ -33,8 +33,7 @@ function loadScriptFileExportSync(data, filterFn) {
|
|
|
33
33
|
return (0, utils_1.getExportItem)(data, filterFn);
|
|
34
34
|
}
|
|
35
35
|
catch (e) {
|
|
36
|
-
|
|
37
|
-
return undefined;
|
|
36
|
+
return (0, utils_3.handleFileLoadError)(e);
|
|
38
37
|
}
|
|
39
38
|
}
|
|
40
39
|
exports.loadScriptFileExportSync = loadScriptFileExportSync;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../../src/loader/file-type/script/sync.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,mCAAwC;AACxC,8CAA8D;AAC9D,uCAAkD;
|
|
1
|
+
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../../src/loader/file-type/script/sync.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,mCAAwC;AACxC,8CAA8D;AAC9D,uCAAkD;AAClD,0CAAqD;AAErD,SAAgB,kBAAkB,CAAC,IAA0B;IACzD,MAAM,QAAQ,GAAG,IAAA,uBAAa,EAAC,IAAI,CAAC,CAAC,CAAC;QAClC,IAAA,2BAAmB,EAAC,IAAI,CAAC,CAAC,CAAC;QAC3B,IAAI,CAAC;IAET,IAAI;QACA,wGAAwG;QACxG,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC;KAC5B;IAAC,OAAO,CAAC,EAAE;QACR,OAAO,IAAA,2BAAmB,EAAC,CAAC,CAAC,CAAC;KACjC;AACL,CAAC;AAXD,gDAWC;AAED,SAAgB,wBAAwB,CACpC,IAA0B,EAC1B,QAAyB;IAEzB,MAAM,QAAQ,GAAG,IAAA,uBAAa,EAAC,IAAI,CAAC,CAAC,CAAC;QAClC,IAAA,2BAAmB,EAAC,IAAI,CAAC,CAAC,CAAC;QAC3B,IAAI,CAAC;IAET,IAAI;QACA,MAAM,IAAI,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAE1C,OAAO,IAAA,qBAAa,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;KACxC;IAAC,OAAO,CAAC,EAAE;QACR,OAAO,IAAA,2BAAmB,EAAC,CAAC,CAAC,CAAC;KACjC;AACL,CAAC;AAfD,4DAeC"}
|
package/dist/loader/module.js
CHANGED
|
@@ -24,7 +24,7 @@ function loadFile(info) {
|
|
|
24
24
|
return undefined;
|
|
25
25
|
}
|
|
26
26
|
const filePath = (0, utils_1.buildLoaderFilePath)(info);
|
|
27
|
-
if (info.
|
|
27
|
+
if (info.extension === '.json') {
|
|
28
28
|
return (0, file_type_1.loadJsonFile)(filePath);
|
|
29
29
|
}
|
|
30
30
|
return (0, file_type_1.loadScriptFile)(filePath);
|
|
@@ -36,7 +36,7 @@ function loadFileSync(info) {
|
|
|
36
36
|
return undefined;
|
|
37
37
|
}
|
|
38
38
|
const filePath = (0, utils_1.buildLoaderFilePath)(info);
|
|
39
|
-
if (info.
|
|
39
|
+
if (info.extension === '.json') {
|
|
40
40
|
return (0, file_type_1.loadJsonFileSync)(filePath);
|
|
41
41
|
}
|
|
42
42
|
return (0, file_type_1.loadScriptFileSync)(filePath);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/loader/module.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;AAGH,2CAEqB;AACrB,mCAA8C;AAE9C,SAAsB,QAAQ,CAAC,IAAiB;;QAC5C,
|
|
1
|
+
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/loader/module.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;AAGH,2CAEqB;AACrB,mCAA8C;AAE9C,SAAsB,QAAQ,CAAC,IAAiB;;QAC5C,IAAI,CAAC,IAAI,EAAE;YACP,OAAO,SAAS,CAAC;SACpB;QAED,MAAM,QAAQ,GAAG,IAAA,2BAAmB,EAAC,IAAI,CAAC,CAAC;QAE3C,IAAI,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE;YAC5B,OAAO,IAAA,wBAAY,EAAC,QAAQ,CAAC,CAAC;SACjC;QAED,OAAO,IAAA,0BAAc,EAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;CAAA;AAZD,4BAYC;AAED,SAAgB,YAAY,CAAC,IAAiB;IAC1C,IAAI,CAAC,IAAI,EAAE;QACP,OAAO,SAAS,CAAC;KACpB;IAED,MAAM,QAAQ,GAAG,IAAA,2BAAmB,EAAC,IAAI,CAAC,CAAC;IAE3C,IAAI,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE;QAC5B,OAAO,IAAA,4BAAgB,EAAC,QAAQ,CAAC,CAAC;KACrC;IAED,OAAO,IAAA,8BAAkB,EAAC,QAAQ,CAAC,CAAC;AACxC,CAAC;AAZD,oCAYC"}
|
package/dist/loader/utils.js
CHANGED
|
@@ -12,8 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.buildLoaderFilePath = void 0;
|
|
13
13
|
const path_1 = __importDefault(require("path"));
|
|
14
14
|
function buildLoaderFilePath(info) {
|
|
15
|
-
return path_1.default.join(info.path, info.
|
|
16
|
-
(info.fileExtension === '.json' ? '.json' : '');
|
|
15
|
+
return path_1.default.join(info.path, info.name) + info.extension;
|
|
17
16
|
}
|
|
18
17
|
exports.buildLoaderFilePath = buildLoaderFilePath;
|
|
19
18
|
//# sourceMappingURL=utils.js.map
|
package/dist/loader/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/loader/utils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;AAEH,gDAAwB;AAGxB,SAAgB,mBAAmB,CAAC,IAAiB;IACjD,OAAO,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/loader/utils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;AAEH,gDAAwB;AAGxB,SAAgB,mBAAmB,CAAC,IAAiB;IACjD,OAAO,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;AAC5D,CAAC;AAFD,kDAEC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { LocatorInfo, LocatorOptions } from './type';
|
|
2
|
+
export declare function locateFiles(pattern: string | string[], options?: Partial<LocatorOptions>): Promise<LocatorInfo[]>;
|
|
3
|
+
export declare function locateFile(pattern: string | string[], options?: Partial<LocatorOptions>): Promise<LocatorInfo | undefined>;
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) 2022.
|
|
4
|
+
* Author Peter Placzek (tada5hi)
|
|
5
|
+
* For the full copyright and license information,
|
|
6
|
+
* view the LICENSE file that was distributed with this source code.
|
|
7
|
+
*/
|
|
8
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
9
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
10
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
11
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
12
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
13
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
14
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.locateFile = exports.locateFiles = void 0;
|
|
22
|
+
const glob_1 = require("glob");
|
|
23
|
+
const path_1 = __importDefault(require("path"));
|
|
24
|
+
const util_1 = require("util");
|
|
25
|
+
const utils_1 = require("./utils");
|
|
26
|
+
const globAsync = (0, util_1.promisify)(glob_1.glob);
|
|
27
|
+
function locateFiles(pattern, options) {
|
|
28
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
options = (0, utils_1.buildLocatorOptions)(options);
|
|
30
|
+
const patterns = Array.isArray(pattern) ?
|
|
31
|
+
pattern :
|
|
32
|
+
[pattern];
|
|
33
|
+
const items = [];
|
|
34
|
+
for (let i = 0; i < patterns.length; i++) {
|
|
35
|
+
for (let j = 0; j < options.path.length; j++) {
|
|
36
|
+
const files = yield globAsync(patterns[i], {
|
|
37
|
+
absolute: true,
|
|
38
|
+
cwd: options.path[j],
|
|
39
|
+
nodir: true,
|
|
40
|
+
});
|
|
41
|
+
for (let k = 0; k < files.length; k++) {
|
|
42
|
+
const fileInfo = path_1.default.parse(files[k]);
|
|
43
|
+
items.push({
|
|
44
|
+
path: fileInfo.dir.split('/').join(path_1.default.sep),
|
|
45
|
+
name: fileInfo.name,
|
|
46
|
+
extension: fileInfo.ext,
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return items;
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
exports.locateFiles = locateFiles;
|
|
55
|
+
function locateFile(pattern, options) {
|
|
56
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
+
options = (0, utils_1.buildLocatorOptions)(options);
|
|
58
|
+
const patterns = Array.isArray(pattern) ?
|
|
59
|
+
pattern :
|
|
60
|
+
[pattern];
|
|
61
|
+
for (let i = 0; i < patterns.length; i++) {
|
|
62
|
+
for (let j = 0; j < options.path.length; j++) {
|
|
63
|
+
const files = yield globAsync(patterns[i], {
|
|
64
|
+
absolute: true,
|
|
65
|
+
cwd: options.path[j],
|
|
66
|
+
nodir: true,
|
|
67
|
+
});
|
|
68
|
+
const element = files.shift();
|
|
69
|
+
if (element) {
|
|
70
|
+
const fileInfo = path_1.default.parse(element);
|
|
71
|
+
return {
|
|
72
|
+
path: fileInfo.dir.split('/').join(path_1.default.sep),
|
|
73
|
+
name: fileInfo.name,
|
|
74
|
+
extension: fileInfo.ext,
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return undefined;
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
exports.locateFile = locateFile;
|
|
83
|
+
//# sourceMappingURL=async.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"async.js","sourceRoot":"","sources":["../../src/locator/async.ts"],"names":[],"mappings":"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"}
|
package/dist/locator/index.d.ts
CHANGED
package/dist/locator/index.js
CHANGED
|
@@ -20,7 +20,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
20
20
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
21
21
|
};
|
|
22
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
-
__exportStar(require("./
|
|
23
|
+
__exportStar(require("./async"), exports);
|
|
24
|
+
__exportStar(require("./sync"), exports);
|
|
24
25
|
__exportStar(require("./type"), exports);
|
|
25
26
|
__exportStar(require("./utils"), exports);
|
|
26
27
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/locator/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/locator/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,0CAAwB;AACxB,yCAAuB;AACvB,yCAAuB;AACvB,0CAAwB"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { LocatorInfo, LocatorOptions } from './type';
|
|
2
|
+
export declare function locateFilesSync(pattern: string | string[], options?: Partial<LocatorOptions>): LocatorInfo[];
|
|
3
|
+
export declare function locateFileSync(pattern: string | string[], options?: Partial<LocatorOptions>): LocatorInfo | undefined;
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) 2022.
|
|
4
|
+
* Author Peter Placzek (tada5hi)
|
|
5
|
+
* For the full copyright and license information,
|
|
6
|
+
* view the LICENSE file that was distributed with this source code.
|
|
7
|
+
*/
|
|
8
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.locateFileSync = exports.locateFilesSync = void 0;
|
|
13
|
+
const glob_1 = require("glob");
|
|
14
|
+
const path_1 = __importDefault(require("path"));
|
|
15
|
+
const utils_1 = require("./utils");
|
|
16
|
+
function locateFilesSync(pattern, options) {
|
|
17
|
+
options = (0, utils_1.buildLocatorOptions)(options);
|
|
18
|
+
const patterns = Array.isArray(pattern) ?
|
|
19
|
+
pattern :
|
|
20
|
+
[pattern];
|
|
21
|
+
const items = [];
|
|
22
|
+
for (let i = 0; i < patterns.length; i++) {
|
|
23
|
+
for (let j = 0; j < options.path.length; j++) {
|
|
24
|
+
const files = (0, glob_1.sync)(patterns[i], {
|
|
25
|
+
absolute: true,
|
|
26
|
+
cwd: options.path[j],
|
|
27
|
+
nodir: true,
|
|
28
|
+
});
|
|
29
|
+
for (let k = 0; k < files.length; k++) {
|
|
30
|
+
const fileInfo = path_1.default.parse(files[k]);
|
|
31
|
+
items.push({
|
|
32
|
+
path: fileInfo.dir.split('/').join(path_1.default.sep),
|
|
33
|
+
name: fileInfo.name,
|
|
34
|
+
extension: fileInfo.ext,
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
return items;
|
|
40
|
+
}
|
|
41
|
+
exports.locateFilesSync = locateFilesSync;
|
|
42
|
+
function locateFileSync(pattern, options) {
|
|
43
|
+
options = (0, utils_1.buildLocatorOptions)(options);
|
|
44
|
+
const patterns = Array.isArray(pattern) ?
|
|
45
|
+
pattern :
|
|
46
|
+
[pattern];
|
|
47
|
+
for (let i = 0; i < patterns.length; i++) {
|
|
48
|
+
for (let j = 0; j < options.path.length; j++) {
|
|
49
|
+
const files = (0, glob_1.sync)(patterns[i], {
|
|
50
|
+
absolute: true,
|
|
51
|
+
cwd: options.path[j],
|
|
52
|
+
nodir: true,
|
|
53
|
+
});
|
|
54
|
+
const element = files.shift();
|
|
55
|
+
if (element) {
|
|
56
|
+
const fileInfo = path_1.default.parse(element);
|
|
57
|
+
return {
|
|
58
|
+
path: fileInfo.dir.split('/').join(path_1.default.sep),
|
|
59
|
+
name: fileInfo.name,
|
|
60
|
+
extension: fileInfo.ext,
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return undefined;
|
|
66
|
+
}
|
|
67
|
+
exports.locateFileSync = locateFileSync;
|
|
68
|
+
//# sourceMappingURL=sync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/locator/sync.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;AAEH,+BAAwC;AACxC,gDAAwB;AAExB,mCAA8C;AAE9C,SAAgB,eAAe,CAC3B,OAA0B,EAC1B,OAAiC;IAEjC,OAAO,GAAG,IAAA,2BAAmB,EAAC,OAAO,CAAC,CAAC;IAEvC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,CAAC;QACT,CAAC,OAAO,CAAC,CAAC;IAEd,MAAM,KAAK,GAAmB,EAAE,CAAC;IAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC1C,MAAM,KAAK,GAAG,IAAA,WAAQ,EAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;gBAChC,QAAQ,EAAE,IAAI;gBACd,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;gBACpB,KAAK,EAAE,IAAI;aACd,CAAC,CAAC;YAEH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACnC,MAAM,QAAQ,GAAG,cAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAEtC,KAAK,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,cAAI,CAAC,GAAG,CAAC;oBAC5C,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,SAAS,EAAE,QAAQ,CAAC,GAAG;iBAC1B,CAAC,CAAC;aACN;SACJ;KACJ;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAjCD,0CAiCC;AAED,SAAgB,cAAc,CAC1B,OAA0B,EAC1B,OAAiC;IAEjC,OAAO,GAAG,IAAA,2BAAmB,EAAC,OAAO,CAAC,CAAC;IAEvC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,CAAC;QACT,CAAC,OAAO,CAAC,CAAC;IAEd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC1C,MAAM,KAAK,GAAG,IAAA,WAAQ,EAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;gBAChC,QAAQ,EAAE,IAAI;gBACd,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;gBACpB,KAAK,EAAE,IAAI;aACd,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;YAC9B,IAAI,OAAO,EAAE;gBACT,MAAM,QAAQ,GAAG,cAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAErC,OAAO;oBACH,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,cAAI,CAAC,GAAG,CAAC;oBAC5C,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,SAAS,EAAE,QAAQ,CAAC,GAAG;iBAC1B,CAAC;aACL;SACJ;KACJ;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAhCD,wCAgCC"}
|
package/dist/locator/type.d.ts
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
export declare type LocatorInfo = {
|
|
2
2
|
path: string;
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
name: string;
|
|
4
|
+
extension: '.js' | '.ts' | '.json' | string;
|
|
5
5
|
};
|
|
6
6
|
export declare type LocatorOptions = {
|
|
7
|
-
|
|
8
|
-
paths: string | string[];
|
|
7
|
+
path: string | string[];
|
|
9
8
|
};
|
package/dist/locator/utils.js
CHANGED
|
@@ -10,10 +10,11 @@ exports.isLocatorInfo = exports.buildLocatorOptions = void 0;
|
|
|
10
10
|
const utils_1 = require("../utils");
|
|
11
11
|
function buildLocatorOptions(options) {
|
|
12
12
|
options = options || {};
|
|
13
|
-
options.
|
|
14
|
-
options.
|
|
15
|
-
options.
|
|
16
|
-
(
|
|
13
|
+
options.path = options.path || [];
|
|
14
|
+
options.path = (0, utils_1.toArray)(options.path);
|
|
15
|
+
if (options.path.length === 0) {
|
|
16
|
+
options.path.push(process.cwd());
|
|
17
|
+
}
|
|
17
18
|
return options;
|
|
18
19
|
}
|
|
19
20
|
exports.buildLocatorOptions = buildLocatorOptions;
|
|
@@ -30,11 +31,8 @@ function isLocatorInfo(data) {
|
|
|
30
31
|
typeof data.fileName !== 'string') {
|
|
31
32
|
return false;
|
|
32
33
|
}
|
|
33
|
-
|
|
34
|
-
typeof data.fileExtension !== 'string')
|
|
35
|
-
return false;
|
|
36
|
-
}
|
|
37
|
-
return true;
|
|
34
|
+
return !(!(0, utils_1.hasOwnProperty)(data, 'fileExtension') ||
|
|
35
|
+
typeof data.fileExtension !== 'string');
|
|
38
36
|
}
|
|
39
37
|
exports.isLocatorInfo = isLocatorInfo;
|
|
40
38
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/locator/utils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/locator/utils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,oCAAmD;AAEnD,SAAgB,mBAAmB,CAAC,OAAiC;IACjE,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;IAExB,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;IAClC,OAAO,CAAC,IAAI,GAAG,IAAA,eAAO,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;QAC3B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;KACpC;IAED,OAAO,OAAyB,CAAC;AACrC,CAAC;AAVD,kDAUC;AAED,0BAA0B;AAC1B,SAAgB,aAAa,CAAC,IAAa;IACvC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC1B,OAAO,KAAK,CAAC;KAChB;IAED,IACI,CAAC,IAAA,sBAAc,EAAC,IAAI,EAAE,MAAM,CAAC;QAC7B,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAC/B;QACE,OAAO,KAAK,CAAC;KAChB;IAED,IACI,CAAC,IAAA,sBAAc,EAAC,IAAI,EAAE,UAAU,CAAC;QACjC,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,EACnC;QACE,OAAO,KAAK,CAAC;KAChB;IAED,OAAO,CAAC,CAAC,CAAC,IAAA,sBAAc,EAAC,IAAI,EAAE,eAAe,CAAC;QAC3C,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC;AAChD,CAAC;AArBD,sCAqBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function handleFileLoadError(e: unknown): undefined;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) 2022.
|
|
4
|
+
* Author Peter Placzek (tada5hi)
|
|
5
|
+
* For the full copyright and license information,
|
|
6
|
+
* view the LICENSE file that was distributed with this source code.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.handleFileLoadError = void 0;
|
|
10
|
+
/* istanbul ignore next */
|
|
11
|
+
function handleFileLoadError(e) {
|
|
12
|
+
if (e instanceof Error) {
|
|
13
|
+
throw e;
|
|
14
|
+
}
|
|
15
|
+
if (typeof e === 'string') {
|
|
16
|
+
throw new Error(e);
|
|
17
|
+
}
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
exports.handleFileLoadError = handleFileLoadError;
|
|
21
|
+
//# sourceMappingURL=error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/utils/error.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,0BAA0B;AAC1B,SAAgB,mBAAmB,CAAC,CAAU;IAC1C,IAAI,CAAC,YAAY,KAAK,EAAE;QACpB,MAAM,CAAC,CAAC;KACX;IAED,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;KACtB;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AAVD,kDAUC"}
|
package/dist/utils/index.d.ts
CHANGED
package/dist/utils/index.js
CHANGED
|
@@ -20,6 +20,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
20
20
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
21
21
|
};
|
|
22
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
+
__exportStar(require("./error"), exports);
|
|
23
24
|
__exportStar(require("./has-own-property"), exports);
|
|
24
25
|
__exportStar(require("./to-array"), exports);
|
|
25
26
|
//# sourceMappingURL=index.js.map
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,qDAAmC;AACnC,6CAA2B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,0CAAwB;AACxB,qDAAmC;AACnC,6CAA2B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "locter",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Locter is a library to locate a file by criteria and load it",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Peter Placzek",
|
|
@@ -31,18 +31,21 @@
|
|
|
31
31
|
],
|
|
32
32
|
"license": "MIT",
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"@tada5hi/eslint-config-typescript": "^1.0.
|
|
34
|
+
"@tada5hi/eslint-config-typescript": "^1.0.4",
|
|
35
35
|
"@types/glob": "^7.1.3",
|
|
36
36
|
"@types/jest": "^27.5.0",
|
|
37
|
-
"@types/node": "^
|
|
38
|
-
"@types/yargs": "^17.0.
|
|
37
|
+
"@types/node": "^18.7.1",
|
|
38
|
+
"@types/yargs": "^17.0.11",
|
|
39
39
|
"coveralls": "^3.1.0",
|
|
40
40
|
"cross-env": "^7.0.3",
|
|
41
|
-
"eslint": "^8.
|
|
41
|
+
"eslint": "^8.21.0",
|
|
42
42
|
"jest": "^27.5.1",
|
|
43
|
-
"np": "^7.6.
|
|
43
|
+
"np": "^7.6.2",
|
|
44
44
|
"ts-jest": "^27.1.4",
|
|
45
|
-
"ts-node": "^10.
|
|
46
|
-
"typescript": "^4.
|
|
45
|
+
"ts-node": "^10.9.1",
|
|
46
|
+
"typescript": "^4.7.4"
|
|
47
|
+
},
|
|
48
|
+
"dependencies": {
|
|
49
|
+
"glob": "^8.0.3"
|
|
47
50
|
}
|
|
48
51
|
}
|
package/dist/locator/module.d.ts
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { LocatorInfo, LocatorOptions } from './type';
|
|
2
|
-
export declare function locateFile(fileName: string, options?: Partial<LocatorOptions>): Promise<LocatorInfo | undefined>;
|
|
3
|
-
export declare function locateFileSync(fileName: string, options?: Partial<LocatorOptions>): LocatorInfo | undefined;
|
package/dist/locator/module.js
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* Copyright (c) 2022.
|
|
4
|
-
* Author Peter Placzek (tada5hi)
|
|
5
|
-
* For the full copyright and license information,
|
|
6
|
-
* view the LICENSE file that was distributed with this source code.
|
|
7
|
-
*/
|
|
8
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
9
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
10
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
11
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
12
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
13
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
14
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
15
|
-
});
|
|
16
|
-
};
|
|
17
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
-
};
|
|
20
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
-
exports.locateFileSync = exports.locateFile = void 0;
|
|
22
|
-
const path_1 = __importDefault(require("path"));
|
|
23
|
-
const fs_1 = __importDefault(require("fs"));
|
|
24
|
-
const utils_1 = require("./utils");
|
|
25
|
-
function locateFile(fileName, options) {
|
|
26
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
27
|
-
options = (0, utils_1.buildLocatorOptions)(options);
|
|
28
|
-
for (let i = 0; i < options.paths.length; i++) {
|
|
29
|
-
const filePath = path_1.default.join(options.paths[i], fileName);
|
|
30
|
-
for (let j = 0; j < options.extensions.length; j++) {
|
|
31
|
-
const filePathWithExtension = filePath + options.extensions[j];
|
|
32
|
-
try {
|
|
33
|
-
yield fs_1.default.promises.access(filePathWithExtension, fs_1.default.constants.R_OK | fs_1.default.constants.F_OK);
|
|
34
|
-
return {
|
|
35
|
-
path: options.paths[i],
|
|
36
|
-
fileName,
|
|
37
|
-
fileExtension: options.extensions[j],
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
catch (e) {
|
|
41
|
-
// do nothing ;)
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
return undefined;
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
exports.locateFile = locateFile;
|
|
49
|
-
function locateFileSync(fileName, options) {
|
|
50
|
-
options = (0, utils_1.buildLocatorOptions)(options);
|
|
51
|
-
for (let i = 0; i < options.paths.length; i++) {
|
|
52
|
-
const filePath = path_1.default.join(options.paths[i], fileName);
|
|
53
|
-
for (let j = 0; j < options.extensions.length; j++) {
|
|
54
|
-
const filePathWithExtension = filePath + options.extensions[j];
|
|
55
|
-
try {
|
|
56
|
-
fs_1.default.accessSync(filePathWithExtension, fs_1.default.constants.R_OK | fs_1.default.constants.F_OK);
|
|
57
|
-
return {
|
|
58
|
-
path: options.paths[i],
|
|
59
|
-
fileName,
|
|
60
|
-
fileExtension: options.extensions[j],
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
catch (e) {
|
|
64
|
-
// do nothing ;)
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
return undefined;
|
|
69
|
-
}
|
|
70
|
-
exports.locateFileSync = locateFileSync;
|
|
71
|
-
//# sourceMappingURL=module.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/locator/module.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;AAEH,gDAAwB;AACxB,4CAAoB;AAEpB,mCAA8C;AAE9C,SAAsB,UAAU,CAC5B,QAAgB,EAChB,OAAiC;;QAEjC,OAAO,GAAG,IAAA,2BAAmB,EAAC,OAAO,CAAC,CAAC;QAEvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC3C,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YAEvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAChD,MAAM,qBAAqB,GAAG,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBAE/D,IAAI;oBACA,MAAM,YAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,qBAAqB,EAAE,YAAE,CAAC,SAAS,CAAC,IAAI,GAAG,YAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;oBAEvF,OAAO;wBACH,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;wBACtB,QAAQ;wBACR,aAAa,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;qBACvC,CAAC;iBACL;gBAAC,OAAO,CAAC,EAAE;oBACR,gBAAgB;iBACnB;aACJ;SACJ;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;CAAA;AA3BD,gCA2BC;AAED,SAAgB,cAAc,CAC1B,QAAgB,EAChB,OAAiC;IAEjC,OAAO,GAAG,IAAA,2BAAmB,EAAC,OAAO,CAAC,CAAC;IAEvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC3C,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAChD,MAAM,qBAAqB,GAAG,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAE/D,IAAI;gBACA,YAAE,CAAC,UAAU,CAAC,qBAAqB,EAAE,YAAE,CAAC,SAAS,CAAC,IAAI,GAAG,YAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBAE5E,OAAO;oBACH,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;oBACtB,QAAQ;oBACR,aAAa,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;iBACvC,CAAC;aACL;YAAC,OAAO,CAAC,EAAE;gBACR,gBAAgB;aACnB;SACJ;KACJ;IAED,OAAO,SAAS,CAAC;AACrB,CAAC;AA3BD,wCA2BC"}
|