@putout/plugin-esm 7.1.1 → 7.1.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.
|
@@ -8,14 +8,12 @@ import {
|
|
|
8
8
|
} from 'putout';
|
|
9
9
|
import * as getImports from '#get-imports';
|
|
10
10
|
import * as changeImports from '#change-imports';
|
|
11
|
+
import {findPackage} from '#find-package';
|
|
11
12
|
|
|
12
13
|
const {
|
|
13
14
|
getFilename,
|
|
14
|
-
getFileType,
|
|
15
|
-
getParentDirectory,
|
|
16
15
|
readFileContent,
|
|
17
16
|
writeFileContent,
|
|
18
|
-
readDirectory,
|
|
19
17
|
} = operator;
|
|
20
18
|
|
|
21
19
|
const {parse: parseJson} = JSON;
|
|
@@ -124,25 +122,3 @@ const createGetPackageType = (importsCache = new Map()) => (file) => {
|
|
|
124
122
|
|
|
125
123
|
return type;
|
|
126
124
|
};
|
|
127
|
-
|
|
128
|
-
function findPackage(file) {
|
|
129
|
-
const parentDirectory = getParentDirectory(file);
|
|
130
|
-
const directoryName = getFilename(parentDirectory);
|
|
131
|
-
|
|
132
|
-
for (const currentFile of readDirectory(parentDirectory)) {
|
|
133
|
-
const type = getFileType(currentFile);
|
|
134
|
-
|
|
135
|
-
if (type === 'directory')
|
|
136
|
-
continue;
|
|
137
|
-
|
|
138
|
-
const currentName = getFilename(currentFile);
|
|
139
|
-
|
|
140
|
-
if (currentName.endsWith('package.json'))
|
|
141
|
-
return [directoryName, currentFile];
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
if (directoryName === '/')
|
|
145
|
-
return [];
|
|
146
|
-
|
|
147
|
-
return findPackage(parentDirectory);
|
|
148
|
-
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import {operator} from 'putout';
|
|
2
|
+
|
|
3
|
+
const {
|
|
4
|
+
getFileType,
|
|
5
|
+
readDirectory,
|
|
6
|
+
getFilename,
|
|
7
|
+
getParentDirectory,
|
|
8
|
+
} = operator;
|
|
9
|
+
|
|
10
|
+
export const findPackage = (file) => {
|
|
11
|
+
const parentDirectory = getParentDirectory(file);
|
|
12
|
+
|
|
13
|
+
if (!parentDirectory)
|
|
14
|
+
return [];
|
|
15
|
+
|
|
16
|
+
const directoryName = getFilename(parentDirectory);
|
|
17
|
+
|
|
18
|
+
for (const currentFile of readDirectory(parentDirectory)) {
|
|
19
|
+
const type = getFileType(currentFile);
|
|
20
|
+
|
|
21
|
+
if (type === 'directory')
|
|
22
|
+
continue;
|
|
23
|
+
|
|
24
|
+
const currentName = getFilename(currentFile);
|
|
25
|
+
|
|
26
|
+
if (currentName.endsWith('package.json'))
|
|
27
|
+
return [directoryName, currentFile];
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
return findPackage(parentDirectory);
|
|
31
|
+
};
|
|
@@ -12,14 +12,12 @@ import {
|
|
|
12
12
|
} from 'putout';
|
|
13
13
|
import * as getImports from '#get-imports';
|
|
14
14
|
import * as changeImports from '#change-imports';
|
|
15
|
+
import {findPackage} from '#find-package';
|
|
15
16
|
|
|
16
17
|
const {
|
|
17
18
|
getFilename,
|
|
18
|
-
getFileType,
|
|
19
|
-
getParentDirectory,
|
|
20
19
|
readFileContent,
|
|
21
20
|
writeFileContent,
|
|
22
|
-
readDirectory,
|
|
23
21
|
} = operator;
|
|
24
22
|
|
|
25
23
|
const {entries} = Object;
|
|
@@ -97,7 +95,7 @@ const createGetPrivateImports = (importsCache = new Map(), emptyMap = new Map())
|
|
|
97
95
|
const dir = dirname(filename);
|
|
98
96
|
|
|
99
97
|
if (importsCache.has(dir))
|
|
100
|
-
return importsCache.get(dir);
|
|
98
|
+
return [dir, importsCache.get(dir)];
|
|
101
99
|
|
|
102
100
|
const [packageDirectory, packagePath] = findPackage(file);
|
|
103
101
|
|
|
@@ -127,25 +125,3 @@ const createGetPrivateImports = (importsCache = new Map(), emptyMap = new Map())
|
|
|
127
125
|
|
|
128
126
|
return [packageDirectory, importsEntries];
|
|
129
127
|
};
|
|
130
|
-
|
|
131
|
-
function findPackage(file) {
|
|
132
|
-
const parentDirectory = getParentDirectory(file);
|
|
133
|
-
const directoryName = getFilename(parentDirectory);
|
|
134
|
-
|
|
135
|
-
for (const currentFile of readDirectory(parentDirectory)) {
|
|
136
|
-
const type = getFileType(currentFile);
|
|
137
|
-
|
|
138
|
-
if (type === 'directory')
|
|
139
|
-
continue;
|
|
140
|
-
|
|
141
|
-
const currentName = getFilename(currentFile);
|
|
142
|
-
|
|
143
|
-
if (currentName.endsWith('package.json'))
|
|
144
|
-
return [directoryName, currentFile];
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
if (directoryName === '/')
|
|
148
|
-
return [];
|
|
149
|
-
|
|
150
|
-
return findPackage(parentDirectory);
|
|
151
|
-
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@putout/plugin-esm",
|
|
3
|
-
"version": "7.1.
|
|
3
|
+
"version": "7.1.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"author": "coderaiser <mnemonic.enemy@gmail.com> (https://github.com/coderaiser)",
|
|
6
6
|
"description": "🐊Putout plugin improves ability to transform ESM code",
|
|
@@ -16,6 +16,9 @@
|
|
|
16
16
|
},
|
|
17
17
|
"#change-imports": {
|
|
18
18
|
"default": "./lib/resolve-imported-file/change-imports/index.js"
|
|
19
|
+
},
|
|
20
|
+
"#find-package": {
|
|
21
|
+
"default": "./lib/apply-privately-imported-file/find-package.js"
|
|
19
22
|
}
|
|
20
23
|
},
|
|
21
24
|
"release": false,
|
|
@@ -63,6 +66,7 @@
|
|
|
63
66
|
"madrun": "^12.0.0",
|
|
64
67
|
"montag": "^1.2.1",
|
|
65
68
|
"nodemon": "^3.0.1",
|
|
69
|
+
"redlint": "^5.0.4",
|
|
66
70
|
"supertape": "^12.0.0"
|
|
67
71
|
},
|
|
68
72
|
"peerDependencies": {
|