@jestaubach/fs-helpers 0.1.2 → 0.1.3
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/dist/src/index.d.ts +28 -0
- package/dist/src/index.js +195 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/types.d.ts +15 -0
- package/package.json +2 -1
- package/dist/src/fsHelpers.js +0 -201
- package/dist/src/fsHelpers.js.map +0 -1
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Path, RetBool, RetPath, RetString, RetVal } from './types';
|
|
2
|
+
export declare function checkIfFileExists(filePath: Path): RetBool;
|
|
3
|
+
export declare function checkIfDirExists(dir: Path): RetBool;
|
|
4
|
+
export declare function getAbsolutePath(dir: Path): RetPath;
|
|
5
|
+
export declare function createDir(dir: Path): RetPath;
|
|
6
|
+
export declare function touchFile(filePath: Path, perms?: number): RetVal;
|
|
7
|
+
export declare function rimrafDir(dir: Path): RetPath;
|
|
8
|
+
export declare function rimrafDirs(dirs: Path[]): RetPath[];
|
|
9
|
+
export declare function abortDirCreation(dir: Path): RetVal;
|
|
10
|
+
export declare function renameDir(oldPath: Path, newPath: Path): RetString;
|
|
11
|
+
export declare function readFile(dir: Path): RetString;
|
|
12
|
+
export declare function writeFile(fileName: Path, data: string): RetVal;
|
|
13
|
+
export declare function copyDirAbs(src: Path, dest: Path): RetVal;
|
|
14
|
+
declare const _default: {
|
|
15
|
+
getAbsolutePath: typeof getAbsolutePath;
|
|
16
|
+
abortDirCreation: typeof abortDirCreation;
|
|
17
|
+
checkIfDirExists: typeof checkIfDirExists;
|
|
18
|
+
copyDirAbs: typeof copyDirAbs;
|
|
19
|
+
createDir: typeof createDir;
|
|
20
|
+
renameDir: typeof renameDir;
|
|
21
|
+
rimrafDir: typeof rimrafDir;
|
|
22
|
+
rimrafDirs: typeof rimrafDirs;
|
|
23
|
+
checkIfFileExists: typeof checkIfFileExists;
|
|
24
|
+
readFile: typeof readFile;
|
|
25
|
+
writeFile: typeof writeFile;
|
|
26
|
+
touchFile: typeof touchFile;
|
|
27
|
+
};
|
|
28
|
+
export default _default;
|
package/dist/src/index.js
CHANGED
|
@@ -1,9 +1,202 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.copyDirAbs = exports.writeFile = exports.readFile = exports.renameDir = exports.abortDirCreation = exports.rimrafDirs = exports.rimrafDir = exports.touchFile = exports.createDir = exports.getAbsolutePath = exports.checkIfDirExists = exports.checkIfFileExists = void 0;
|
|
3
7
|
const fs_extra_1 = require("fs-extra");
|
|
4
8
|
const mkdirp_1 = require("mkdirp");
|
|
5
|
-
|
|
9
|
+
const path_1 = __importDefault(require("path"));
|
|
10
|
+
function checkIfFileExists(filePath) {
|
|
11
|
+
if (!(0, fs_extra_1.existsSync)(filePath)) {
|
|
12
|
+
return {
|
|
13
|
+
success: true,
|
|
14
|
+
value: false,
|
|
15
|
+
error: null,
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
if (!(0, fs_extra_1.lstatSync)(filePath).isFile()) {
|
|
19
|
+
return {
|
|
20
|
+
success: false,
|
|
21
|
+
value: false,
|
|
22
|
+
error: `checkIfFileExists: '${filePath}' is not a file.`,
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
return {
|
|
26
|
+
success: true,
|
|
27
|
+
value: true,
|
|
28
|
+
error: null,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
exports.checkIfFileExists = checkIfFileExists;
|
|
32
|
+
function checkIfDirExists(dir) {
|
|
33
|
+
if (!(0, fs_extra_1.existsSync)(dir)) {
|
|
34
|
+
return {
|
|
35
|
+
success: true,
|
|
36
|
+
value: false,
|
|
37
|
+
error: null,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
if (!(0, fs_extra_1.lstatSync)(dir).isDirectory()) {
|
|
41
|
+
return {
|
|
42
|
+
success: false,
|
|
43
|
+
value: false,
|
|
44
|
+
error: `checkIfDirExists: '${dir}' is not a directory.`,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
return {
|
|
48
|
+
success: true,
|
|
49
|
+
value: true,
|
|
50
|
+
error: null,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
exports.checkIfDirExists = checkIfDirExists;
|
|
54
|
+
function getAbsolutePath(dir) {
|
|
55
|
+
try {
|
|
56
|
+
if (dir.match(/^[.a-zA-Z0-9\-_/:\\]+$/g) === null) {
|
|
57
|
+
throw Error(`Dir contains unsupported characters. Received ${dir}.`);
|
|
58
|
+
}
|
|
59
|
+
const absPath = path_1.default.normalize(path_1.default.resolve(dir));
|
|
60
|
+
return {
|
|
61
|
+
success: true,
|
|
62
|
+
value: absPath,
|
|
63
|
+
error: null,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
catch (err) {
|
|
67
|
+
console.error(`Error resolving path: ${dir}`);
|
|
68
|
+
return {
|
|
69
|
+
success: false,
|
|
70
|
+
value: undefined,
|
|
71
|
+
error: `Error resolving path: '${dir}'. Received error: '${err}'`,
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
exports.getAbsolutePath = getAbsolutePath;
|
|
76
|
+
function createDir(dir) {
|
|
77
|
+
try {
|
|
78
|
+
if (dir === undefined || getAbsolutePath(dir).value !== dir) {
|
|
79
|
+
throw Error(`Function "createDir" expected an absolute path. Recieved "${dir}".`);
|
|
80
|
+
}
|
|
81
|
+
return {
|
|
82
|
+
success: true,
|
|
83
|
+
value: (0, mkdirp_1.sync)(dir),
|
|
84
|
+
error: null,
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
catch (err) {
|
|
88
|
+
console.error(`Error creating dir: ${dir}`);
|
|
89
|
+
return {
|
|
90
|
+
success: false,
|
|
91
|
+
value: undefined,
|
|
92
|
+
error: `Error creating dir: '${dir}'`,
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
exports.createDir = createDir;
|
|
97
|
+
function touchFile(filePath, perms) {
|
|
6
98
|
(0, fs_extra_1.ensureFileSync)(filePath);
|
|
99
|
+
if (perms !== undefined) {
|
|
100
|
+
(0, fs_extra_1.chmodSync)(filePath, perms);
|
|
101
|
+
}
|
|
102
|
+
return {
|
|
103
|
+
success: true,
|
|
104
|
+
error: null,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
exports.touchFile = touchFile;
|
|
108
|
+
function rimrafDir(dir) {
|
|
109
|
+
const absPath = getAbsolutePath(dir).value;
|
|
110
|
+
if (absPath !== undefined && checkIfDirExists(dir).value) {
|
|
111
|
+
(0, fs_extra_1.removeSync)(dir);
|
|
112
|
+
return {
|
|
113
|
+
success: true,
|
|
114
|
+
value: dir,
|
|
115
|
+
error: null,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
console.error(`Error deleting dir: ${dir}`);
|
|
119
|
+
return {
|
|
120
|
+
success: false,
|
|
121
|
+
value: undefined,
|
|
122
|
+
error: `Error deleting dir: '${dir}'`,
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
exports.rimrafDir = rimrafDir;
|
|
126
|
+
function rimrafDirs(dirs) {
|
|
127
|
+
return dirs.map((dir) => {
|
|
128
|
+
return rimrafDir(getAbsolutePath(dir).value);
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
exports.rimrafDirs = rimrafDirs;
|
|
132
|
+
function abortDirCreation(dir) {
|
|
133
|
+
if (dir !== null && checkIfDirExists(dir).value) {
|
|
134
|
+
console.error(`Cleaning up due to abort, directories created starting at: ${JSON.stringify(dir)}`);
|
|
135
|
+
rimrafDir(dir);
|
|
136
|
+
return {
|
|
137
|
+
success: true,
|
|
138
|
+
error: null,
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
console.error(`Cleaning up due to abort, no directory to clean up.`);
|
|
142
|
+
return {
|
|
143
|
+
success: false,
|
|
144
|
+
error: `Cleaning up due to abort, no directory to clean up.`,
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
exports.abortDirCreation = abortDirCreation;
|
|
148
|
+
function renameDir(oldPath, newPath) {
|
|
149
|
+
try {
|
|
150
|
+
(0, fs_extra_1.renameSync)(oldPath, newPath);
|
|
151
|
+
return { success: true, value: `Successfully renamed the directory.` };
|
|
152
|
+
}
|
|
153
|
+
catch (err) {
|
|
154
|
+
console.error(err.code);
|
|
155
|
+
return { success: false, error: `renameDir from '${oldPath}' to '${newPath} failed.` };
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
exports.renameDir = renameDir;
|
|
159
|
+
function readFile(dir) {
|
|
160
|
+
return {
|
|
161
|
+
success: true,
|
|
162
|
+
value: (0, fs_extra_1.readFileSync)(getAbsolutePath(dir).value, `utf-8`),
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
exports.readFile = readFile;
|
|
166
|
+
function writeFile(fileName, data) {
|
|
167
|
+
(0, fs_extra_1.outputFileSync)(fileName, data);
|
|
168
|
+
return {
|
|
169
|
+
success: true,
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
exports.writeFile = writeFile;
|
|
173
|
+
function copyDirAbs(src, dest) {
|
|
174
|
+
try {
|
|
175
|
+
(0, fs_extra_1.copySync)(src, dest, { overwrite: false, errorOnExist: true });
|
|
176
|
+
return {
|
|
177
|
+
success: true,
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
catch (err) {
|
|
181
|
+
return {
|
|
182
|
+
success: false,
|
|
183
|
+
error: `Error copying absolute from '${src}' to '${dest}'`,
|
|
184
|
+
};
|
|
185
|
+
}
|
|
7
186
|
}
|
|
8
|
-
exports.
|
|
187
|
+
exports.copyDirAbs = copyDirAbs;
|
|
188
|
+
exports.default = {
|
|
189
|
+
getAbsolutePath,
|
|
190
|
+
abortDirCreation,
|
|
191
|
+
checkIfDirExists,
|
|
192
|
+
copyDirAbs,
|
|
193
|
+
createDir,
|
|
194
|
+
renameDir,
|
|
195
|
+
rimrafDir,
|
|
196
|
+
rimrafDirs,
|
|
197
|
+
checkIfFileExists,
|
|
198
|
+
readFile,
|
|
199
|
+
writeFile,
|
|
200
|
+
touchFile,
|
|
201
|
+
};
|
|
9
202
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
declare type Path = string;
|
|
2
|
+
declare type RetVal = {
|
|
3
|
+
success: boolean;
|
|
4
|
+
error?: string;
|
|
5
|
+
};
|
|
6
|
+
interface RetString extends RetVal {
|
|
7
|
+
value?: string;
|
|
8
|
+
}
|
|
9
|
+
interface RetBool extends RetVal {
|
|
10
|
+
value?: boolean;
|
|
11
|
+
}
|
|
12
|
+
interface RetPath extends RetVal {
|
|
13
|
+
value?: Path;
|
|
14
|
+
}
|
|
15
|
+
export { Path, RetBool, RetString, RetVal, RetPath };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jestaubach/fs-helpers",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"description": "wrapper around fs-extra",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"homepage": "https://github.com/JEStaubach/fs-helpers",
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
"license": "MIT",
|
|
23
23
|
"private": false,
|
|
24
24
|
"main": "dist/src/index.js",
|
|
25
|
+
"types": "dist/src/index.d.ts",
|
|
25
26
|
"files": [
|
|
26
27
|
"dist/src"
|
|
27
28
|
],
|
package/dist/src/fsHelpers.js
DELETED
|
@@ -1,201 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.copyDirAbs = exports.writeFile = exports.readFile = exports.renameDir = exports.abortDirCreation = exports.rimrafDirs = exports.rimrafDir = exports.touchFile = exports.createDir = exports.getAbsolutePath = exports.checkIfDirExists = exports.checkIfFileExists = void 0;
|
|
7
|
-
const _1 = __importDefault(require("./"));
|
|
8
|
-
const path_1 = __importDefault(require("path"));
|
|
9
|
-
function checkIfFileExists(filePath) {
|
|
10
|
-
if (!_1.default.existsSync(filePath)) {
|
|
11
|
-
return {
|
|
12
|
-
success: true,
|
|
13
|
-
value: false,
|
|
14
|
-
error: null,
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
if (!_1.default.lstatSync(filePath).isFile()) {
|
|
18
|
-
return {
|
|
19
|
-
success: false,
|
|
20
|
-
value: false,
|
|
21
|
-
error: `checkIfFileExists: '${filePath}' is not a file.`,
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
return {
|
|
25
|
-
success: true,
|
|
26
|
-
value: true,
|
|
27
|
-
error: null,
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
exports.checkIfFileExists = checkIfFileExists;
|
|
31
|
-
function checkIfDirExists(dir) {
|
|
32
|
-
if (!_1.default.existsSync(dir)) {
|
|
33
|
-
return {
|
|
34
|
-
success: true,
|
|
35
|
-
value: false,
|
|
36
|
-
error: null,
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
if (!_1.default.lstatSync(dir).isDirectory()) {
|
|
40
|
-
return {
|
|
41
|
-
success: false,
|
|
42
|
-
value: false,
|
|
43
|
-
error: `checkIfDirExists: '${dir}' is not a directory.`,
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
return {
|
|
47
|
-
success: true,
|
|
48
|
-
value: true,
|
|
49
|
-
error: null,
|
|
50
|
-
};
|
|
51
|
-
}
|
|
52
|
-
exports.checkIfDirExists = checkIfDirExists;
|
|
53
|
-
function getAbsolutePath(dir) {
|
|
54
|
-
try {
|
|
55
|
-
if (dir.match(/^[.a-zA-Z0-9\-_/:\\]+$/g) === null) {
|
|
56
|
-
throw Error(`Dir contains unsupported characters. Received ${dir}.`);
|
|
57
|
-
}
|
|
58
|
-
const absPath = path_1.default.normalize(path_1.default.resolve(dir));
|
|
59
|
-
return {
|
|
60
|
-
success: true,
|
|
61
|
-
value: absPath,
|
|
62
|
-
error: null,
|
|
63
|
-
};
|
|
64
|
-
}
|
|
65
|
-
catch (err) {
|
|
66
|
-
console.error(`Error resolving path: ${dir}`);
|
|
67
|
-
return {
|
|
68
|
-
success: false,
|
|
69
|
-
value: undefined,
|
|
70
|
-
error: `Error resolving path: '${dir}'. Received error: '${err}'`,
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
exports.getAbsolutePath = getAbsolutePath;
|
|
75
|
-
function createDir(dir) {
|
|
76
|
-
try {
|
|
77
|
-
if (dir === undefined || getAbsolutePath(dir).value !== dir) {
|
|
78
|
-
throw Error(`Function "createDir" expected an absolute path. Recieved "${dir}".`);
|
|
79
|
-
}
|
|
80
|
-
return {
|
|
81
|
-
success: true,
|
|
82
|
-
value: _1.default.mkdirp(dir),
|
|
83
|
-
error: null,
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
catch (err) {
|
|
87
|
-
console.error(`Error creating dir: ${dir}`);
|
|
88
|
-
return {
|
|
89
|
-
success: false,
|
|
90
|
-
value: undefined,
|
|
91
|
-
error: `Error creating dir: '${dir}'`,
|
|
92
|
-
};
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
exports.createDir = createDir;
|
|
96
|
-
function touchFile(filePath, perms) {
|
|
97
|
-
_1.default.touch(filePath);
|
|
98
|
-
if (perms !== undefined) {
|
|
99
|
-
_1.default.chmodSync(filePath, perms);
|
|
100
|
-
}
|
|
101
|
-
return {
|
|
102
|
-
success: true,
|
|
103
|
-
error: null,
|
|
104
|
-
};
|
|
105
|
-
}
|
|
106
|
-
exports.touchFile = touchFile;
|
|
107
|
-
function rimrafDir(dir) {
|
|
108
|
-
const absPath = getAbsolutePath(dir).value;
|
|
109
|
-
if (absPath !== undefined && checkIfDirExists(dir).value) {
|
|
110
|
-
_1.default.rimraf(dir);
|
|
111
|
-
return {
|
|
112
|
-
success: true,
|
|
113
|
-
value: dir,
|
|
114
|
-
error: null,
|
|
115
|
-
};
|
|
116
|
-
}
|
|
117
|
-
console.error(`Error deleting dir: ${dir}`);
|
|
118
|
-
return {
|
|
119
|
-
success: false,
|
|
120
|
-
value: undefined,
|
|
121
|
-
error: `Error deleting dir: '${dir}'`,
|
|
122
|
-
};
|
|
123
|
-
}
|
|
124
|
-
exports.rimrafDir = rimrafDir;
|
|
125
|
-
function rimrafDirs(dirs) {
|
|
126
|
-
return dirs.map((dir) => {
|
|
127
|
-
return rimrafDir(getAbsolutePath(dir).value);
|
|
128
|
-
});
|
|
129
|
-
}
|
|
130
|
-
exports.rimrafDirs = rimrafDirs;
|
|
131
|
-
function abortDirCreation(dir) {
|
|
132
|
-
if (dir !== null && checkIfDirExists(dir).value) {
|
|
133
|
-
console.error(`Cleaning up due to abort, directories created starting at: ${JSON.stringify(dir)}`);
|
|
134
|
-
rimrafDir(dir);
|
|
135
|
-
return {
|
|
136
|
-
success: true,
|
|
137
|
-
error: null,
|
|
138
|
-
};
|
|
139
|
-
}
|
|
140
|
-
console.error(`Cleaning up due to abort, no directory to clean up.`);
|
|
141
|
-
return {
|
|
142
|
-
success: false,
|
|
143
|
-
error: `Cleaning up due to abort, no directory to clean up.`,
|
|
144
|
-
};
|
|
145
|
-
}
|
|
146
|
-
exports.abortDirCreation = abortDirCreation;
|
|
147
|
-
function renameDir(oldPath, newPath) {
|
|
148
|
-
try {
|
|
149
|
-
_1.default.renameSync(oldPath, newPath);
|
|
150
|
-
return { success: true, value: `Successfully renamed the directory.` };
|
|
151
|
-
}
|
|
152
|
-
catch (err) {
|
|
153
|
-
console.error(err.code);
|
|
154
|
-
return { success: false, error: `renameDir from '${oldPath}' to '${newPath} failed.` };
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
exports.renameDir = renameDir;
|
|
158
|
-
function readFile(dir) {
|
|
159
|
-
return {
|
|
160
|
-
success: true,
|
|
161
|
-
value: _1.default.readFileSync(getAbsolutePath(dir).value, `utf-8`),
|
|
162
|
-
};
|
|
163
|
-
}
|
|
164
|
-
exports.readFile = readFile;
|
|
165
|
-
function writeFile(fileName, data) {
|
|
166
|
-
_1.default.outputFileSync(fileName, data);
|
|
167
|
-
return {
|
|
168
|
-
success: true,
|
|
169
|
-
};
|
|
170
|
-
}
|
|
171
|
-
exports.writeFile = writeFile;
|
|
172
|
-
function copyDirAbs(src, dest) {
|
|
173
|
-
try {
|
|
174
|
-
_1.default.copySync(src, dest, { overwrite: false, errorOnExist: true });
|
|
175
|
-
return {
|
|
176
|
-
success: true,
|
|
177
|
-
};
|
|
178
|
-
}
|
|
179
|
-
catch (err) {
|
|
180
|
-
return {
|
|
181
|
-
success: false,
|
|
182
|
-
error: `Error copying absolute from '${src}' to '${dest}'`,
|
|
183
|
-
};
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
|
-
exports.copyDirAbs = copyDirAbs;
|
|
187
|
-
exports.default = {
|
|
188
|
-
getAbsolutePath,
|
|
189
|
-
abortDirCreation,
|
|
190
|
-
checkIfDirExists,
|
|
191
|
-
copyDirAbs,
|
|
192
|
-
createDir,
|
|
193
|
-
renameDir,
|
|
194
|
-
rimrafDir,
|
|
195
|
-
rimrafDirs,
|
|
196
|
-
checkIfFileExists,
|
|
197
|
-
readFile,
|
|
198
|
-
writeFile,
|
|
199
|
-
touchFile,
|
|
200
|
-
};
|
|
201
|
-
//# sourceMappingURL=fsHelpers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fsHelpers.js","sourceRoot":"","sources":["../../src/fsHelpers.ts"],"names":[],"mappings":"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"}
|