symlink-dir 6.0.0 → 6.0.2
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/index.d.ts +4 -0
- package/dist/index.js +16 -6
- package/dist/index.js.map +1 -1
- package/package.json +7 -7
package/dist/index.d.ts
CHANGED
|
@@ -4,6 +4,10 @@ declare function symlinkDir(target: string, path: string, opts?: {
|
|
|
4
4
|
reused: boolean;
|
|
5
5
|
warn?: string;
|
|
6
6
|
}>;
|
|
7
|
+
declare namespace symlinkDir {
|
|
8
|
+
var _a: typeof symlinkDir;
|
|
9
|
+
export { _a as default };
|
|
10
|
+
}
|
|
7
11
|
export = symlinkDir;
|
|
8
12
|
declare namespace symlinkDir {
|
|
9
13
|
function sync(target: string, path: string, opts?: {
|
package/dist/index.js
CHANGED
|
@@ -27,6 +27,7 @@ function symlinkDir(target, path, opts) {
|
|
|
27
27
|
* srcPath. API compatible with [`fs#symlink`](https://nodejs.org/api/fs.html#fs_fs_symlink_srcpath_dstpath_type_callback).
|
|
28
28
|
*/
|
|
29
29
|
async function forceSymlink(target, path, opts) {
|
|
30
|
+
let initialErr;
|
|
30
31
|
try {
|
|
31
32
|
await fs_1.promises.symlink(target, path, symlinkType);
|
|
32
33
|
return { reused: false };
|
|
@@ -47,9 +48,7 @@ async function forceSymlink(target, path, opts) {
|
|
|
47
48
|
return { reused: false };
|
|
48
49
|
case 'EEXIST':
|
|
49
50
|
case 'EISDIR':
|
|
50
|
-
|
|
51
|
-
throw err;
|
|
52
|
-
}
|
|
51
|
+
initialErr = err;
|
|
53
52
|
// If the target file already exists then we proceed.
|
|
54
53
|
// Additional checks are done below.
|
|
55
54
|
break;
|
|
@@ -62,6 +61,9 @@ async function forceSymlink(target, path, opts) {
|
|
|
62
61
|
linkString = await fs_1.promises.readlink(path);
|
|
63
62
|
}
|
|
64
63
|
catch (err) {
|
|
64
|
+
if ((opts === null || opts === void 0 ? void 0 : opts.overwrite) === false) {
|
|
65
|
+
throw initialErr;
|
|
66
|
+
}
|
|
65
67
|
// path is not a link
|
|
66
68
|
const parentDir = pathLib.dirname(path);
|
|
67
69
|
let warn;
|
|
@@ -84,6 +86,9 @@ async function forceSymlink(target, path, opts) {
|
|
|
84
86
|
if (target === linkString) {
|
|
85
87
|
return { reused: true };
|
|
86
88
|
}
|
|
89
|
+
if ((opts === null || opts === void 0 ? void 0 : opts.overwrite) === false) {
|
|
90
|
+
throw initialErr;
|
|
91
|
+
}
|
|
87
92
|
await fs_1.promises.unlink(path);
|
|
88
93
|
return await forceSymlink(target, path, opts);
|
|
89
94
|
}
|
|
@@ -101,11 +106,13 @@ symlinkDir['default'] = symlinkDir;
|
|
|
101
106
|
symlinkDir.sync = sync;
|
|
102
107
|
})(symlinkDir || (symlinkDir = {}));
|
|
103
108
|
function forceSymlinkSync(target, path, opts) {
|
|
109
|
+
let initialErr;
|
|
104
110
|
try {
|
|
105
111
|
(0, fs_1.symlinkSync)(target, path, symlinkType);
|
|
106
112
|
return { reused: false };
|
|
107
113
|
}
|
|
108
114
|
catch (err) {
|
|
115
|
+
initialErr = err;
|
|
109
116
|
switch (err.code) {
|
|
110
117
|
case 'ENOENT':
|
|
111
118
|
try {
|
|
@@ -121,9 +128,6 @@ function forceSymlinkSync(target, path, opts) {
|
|
|
121
128
|
return { reused: false };
|
|
122
129
|
case 'EEXIST':
|
|
123
130
|
case 'EISDIR':
|
|
124
|
-
if ((opts === null || opts === void 0 ? void 0 : opts.overwrite) === false) {
|
|
125
|
-
throw err;
|
|
126
|
-
}
|
|
127
131
|
// If the target file already exists then we proceed.
|
|
128
132
|
// Additional checks are done below.
|
|
129
133
|
break;
|
|
@@ -136,6 +140,9 @@ function forceSymlinkSync(target, path, opts) {
|
|
|
136
140
|
linkString = (0, fs_1.readlinkSync)(path);
|
|
137
141
|
}
|
|
138
142
|
catch (err) {
|
|
143
|
+
if ((opts === null || opts === void 0 ? void 0 : opts.overwrite) === false) {
|
|
144
|
+
throw initialErr;
|
|
145
|
+
}
|
|
139
146
|
// path is not a link
|
|
140
147
|
const parentDir = pathLib.dirname(path);
|
|
141
148
|
let warn;
|
|
@@ -158,6 +165,9 @@ function forceSymlinkSync(target, path, opts) {
|
|
|
158
165
|
if (target === linkString) {
|
|
159
166
|
return { reused: true };
|
|
160
167
|
}
|
|
168
|
+
if ((opts === null || opts === void 0 ? void 0 : opts.overwrite) === false) {
|
|
169
|
+
throw initialErr;
|
|
170
|
+
}
|
|
161
171
|
(0, fs_1.unlinkSync)(path);
|
|
162
172
|
return forceSymlinkSync(target, path, opts);
|
|
163
173
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,yDAAyD;AACzD,2BAAqF;AACrF,gCAAgC;AAChC,oDAAoD;AAEpD,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAS,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAErG,oHAAoH;AACpH,iCAAiC;AACjC,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAA;AAEnD,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,eAAe,CAAA,CAAC,CAAC,kBAAkB,CAAA;AAEnE,SAAS,eAAe,CAAE,GAAW,EAAE,IAAY;IACjD,OAAO,GAAG,GAAG,IAAI,CAAA;AACnB,CAAC;AAED,SAAS,kBAAkB,CAAE,GAAW,EAAE,IAAY;IACpD,OAAO,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;AACrD,CAAC;AAED,SAAS,UAAU,CAAE,MAAc,EAAE,IAAY,EAAE,IAA8B;IAC/E,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAC9B,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;IAElC,IAAI,MAAM,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,MAAM,GAAG,CAAC,CAAA;IAE/F,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAEjC,OAAO,YAAY,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AACzC,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,YAAY,CACzB,MAAc,EACd,IAAY,EACZ,IAGC;IAED,IAAI;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "symlink-dir",
|
|
3
|
-
"version": "6.0.
|
|
3
|
+
"version": "6.0.2",
|
|
4
4
|
"description": "Cross-platform directory symlinking",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"files": [
|
|
@@ -32,18 +32,18 @@
|
|
|
32
32
|
},
|
|
33
33
|
"homepage": "https://github.com/pnpm/symlink-dir#readme",
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@types/node": "^20.
|
|
36
|
-
"@types/tape": "^
|
|
35
|
+
"@types/node": "^20.14.10",
|
|
36
|
+
"@types/tape": "^5.6.4",
|
|
37
37
|
"rimraf": "^3.0.2",
|
|
38
|
-
"tape": "^5.
|
|
38
|
+
"tape": "^5.8.1",
|
|
39
39
|
"tempy": "^1.0.1",
|
|
40
|
-
"ts-node": "^10.9.
|
|
41
|
-
"typescript": "^
|
|
40
|
+
"ts-node": "^10.9.2",
|
|
41
|
+
"typescript": "^5.5.3",
|
|
42
42
|
"write-json-file": "^4.3.0"
|
|
43
43
|
},
|
|
44
44
|
"dependencies": {
|
|
45
45
|
"better-path-resolve": "^1.0.0",
|
|
46
|
-
"rename-overwrite": "^
|
|
46
|
+
"rename-overwrite": "^6.0.0"
|
|
47
47
|
},
|
|
48
48
|
"mos": {
|
|
49
49
|
"plugins": [
|