@ms-cloudpack/package-utilities 0.2.0 → 0.4.1
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/CHANGELOG.json +52 -1
- package/CHANGELOG.md +27 -2
- package/lib/createImportMap.d.ts +7 -0
- package/lib/createImportMap.js +47 -0
- package/lib/createImportMap.js.map +1 -0
- package/lib/createImportMap.test.d.ts +1 -0
- package/lib/createImportMap.test.js +176 -0
- package/lib/createImportMap.test.js.map +1 -0
- package/lib/createResolveMap.d.ts +5 -3
- package/lib/createResolveMap.js +15 -17
- package/lib/createResolveMap.js.map +1 -1
- package/lib/createResolveMap.test.js +26 -1
- package/lib/createResolveMap.test.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/package.json +3 -3
package/CHANGELOG.json
CHANGED
|
@@ -2,7 +2,58 @@
|
|
|
2
2
|
"name": "@ms-cloudpack/package-utilities",
|
|
3
3
|
"entries": [
|
|
4
4
|
{
|
|
5
|
-
"date": "
|
|
5
|
+
"date": "Thu, 26 May 2022 02:50:09 GMT",
|
|
6
|
+
"tag": "@ms-cloudpack/package-utilities_v0.4.1",
|
|
7
|
+
"version": "0.4.1",
|
|
8
|
+
"comments": {
|
|
9
|
+
"patch": [
|
|
10
|
+
{
|
|
11
|
+
"author": "bot@renovateapp.com",
|
|
12
|
+
"package": "@ms-cloudpack/package-utilities",
|
|
13
|
+
"commit": "b50a4c1bf77e6c76ee8e148650ef2173df4a0ae2",
|
|
14
|
+
"comment": "Update babel monorepo to v7.18.2"
|
|
15
|
+
}
|
|
16
|
+
]
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"date": "Wed, 25 May 2022 21:40:45 GMT",
|
|
21
|
+
"tag": "@ms-cloudpack/package-utilities_v0.4.0",
|
|
22
|
+
"version": "0.4.0",
|
|
23
|
+
"comments": {
|
|
24
|
+
"minor": [
|
|
25
|
+
{
|
|
26
|
+
"author": "dzearing@microsoft.com",
|
|
27
|
+
"package": "@ms-cloudpack/package-utilities",
|
|
28
|
+
"commit": "c81fea1af8bedcd81366fbddb199dd2c0e6cbaa7",
|
|
29
|
+
"comment": "Updating the entry evaluation to prefer source files for intra-repo packages."
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"author": "beachball",
|
|
33
|
+
"package": "@ms-cloudpack/package-utilities",
|
|
34
|
+
"comment": "Bump @ms-cloudpack/path-utilities to v0.3.0",
|
|
35
|
+
"commit": "c81fea1af8bedcd81366fbddb199dd2c0e6cbaa7"
|
|
36
|
+
}
|
|
37
|
+
]
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"date": "Sat, 21 May 2022 00:31:32 GMT",
|
|
42
|
+
"tag": "@ms-cloudpack/package-utilities_v0.3.0",
|
|
43
|
+
"version": "0.3.0",
|
|
44
|
+
"comments": {
|
|
45
|
+
"minor": [
|
|
46
|
+
{
|
|
47
|
+
"author": "dzearing@microsoft.com",
|
|
48
|
+
"package": "@ms-cloudpack/package-utilities",
|
|
49
|
+
"commit": "c26c7bcc7abda501d07180598e3da003b435b03b",
|
|
50
|
+
"comment": "Adding api to generate an import map based on a resolve map."
|
|
51
|
+
}
|
|
52
|
+
]
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"date": "Fri, 20 May 2022 04:26:15 GMT",
|
|
6
57
|
"tag": "@ms-cloudpack/package-utilities_v0.2.0",
|
|
7
58
|
"version": "0.2.0",
|
|
8
59
|
"comments": {
|
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,37 @@
|
|
|
1
1
|
# Change Log - @ms-cloudpack/package-utilities
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Thu, 26 May 2022 02:50:09 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
+
## 0.4.1
|
|
8
|
+
|
|
9
|
+
Thu, 26 May 2022 02:50:09 GMT
|
|
10
|
+
|
|
11
|
+
### Patches
|
|
12
|
+
|
|
13
|
+
- Update babel monorepo to v7.18.2 (bot@renovateapp.com)
|
|
14
|
+
|
|
15
|
+
## 0.4.0
|
|
16
|
+
|
|
17
|
+
Wed, 25 May 2022 21:40:45 GMT
|
|
18
|
+
|
|
19
|
+
### Minor changes
|
|
20
|
+
|
|
21
|
+
- Updating the entry evaluation to prefer source files for intra-repo packages. (dzearing@microsoft.com)
|
|
22
|
+
- Bump @ms-cloudpack/path-utilities to v0.3.0
|
|
23
|
+
|
|
24
|
+
## 0.3.0
|
|
25
|
+
|
|
26
|
+
Sat, 21 May 2022 00:31:32 GMT
|
|
27
|
+
|
|
28
|
+
### Minor changes
|
|
29
|
+
|
|
30
|
+
- Adding api to generate an import map based on a resolve map. (dzearing@microsoft.com)
|
|
31
|
+
|
|
7
32
|
## 0.2.0
|
|
8
33
|
|
|
9
|
-
Fri, 20 May 2022 04:
|
|
34
|
+
Fri, 20 May 2022 04:26:15 GMT
|
|
10
35
|
|
|
11
36
|
### Minor changes
|
|
12
37
|
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ResolveMap } from './createResolveMap.js';
|
|
2
|
+
import { type PackageDefinition } from './getPackageDefinition.js';
|
|
3
|
+
export interface ImportMap {
|
|
4
|
+
imports: Record<string, string>;
|
|
5
|
+
scopes?: Record<string, Record<string, string>>;
|
|
6
|
+
}
|
|
7
|
+
export declare function createImportMap(resolveMap: ResolveMap, bundleServerUrl: string, packageDefinitions?: Record<string, PackageDefinition>): Promise<ImportMap>;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import path from 'path';
|
|
2
|
+
import { slash } from '@ms-cloudpack/path-utilities';
|
|
3
|
+
import { getPackageDefinition } from './getPackageDefinition.js';
|
|
4
|
+
import { getExportPathFromEntry } from './getExportPathFromEntry.js';
|
|
5
|
+
import { merge } from 'merge';
|
|
6
|
+
export async function createImportMap(resolveMap, bundleServerUrl, packageDefinitions) {
|
|
7
|
+
const importMap = {
|
|
8
|
+
imports: {},
|
|
9
|
+
};
|
|
10
|
+
for (const resolveEntry of Object.values(resolveMap)) {
|
|
11
|
+
merge(importMap.imports, await getImportMapFromEntry(resolveEntry, bundleServerUrl, packageDefinitions));
|
|
12
|
+
if (resolveEntry.scopedVersions) {
|
|
13
|
+
// Initialize scopes
|
|
14
|
+
importMap.scopes ?? (importMap.scopes = {});
|
|
15
|
+
for (const scopedEntry of Object.values(resolveEntry.scopedVersions)) {
|
|
16
|
+
for (const requiredById of scopedEntry.requiredBy) {
|
|
17
|
+
const requiredByUrl = `${bundleServerUrl}/${requiredById}/`;
|
|
18
|
+
importMap.scopes[requiredByUrl] = await getImportMapFromEntry(scopedEntry, bundleServerUrl, packageDefinitions);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
return importMap;
|
|
24
|
+
}
|
|
25
|
+
async function getImportMapFromEntry(entry, bundleServerUrl, packageDefinitions) {
|
|
26
|
+
const importMap = {};
|
|
27
|
+
const definition = packageDefinitions?.[entry.path] || (await getPackageDefinition(entry.path, true));
|
|
28
|
+
if (definition) {
|
|
29
|
+
const baseUrl = `${bundleServerUrl}/${definition.name}@${definition.version}/`;
|
|
30
|
+
if (definition.exports) {
|
|
31
|
+
for (const [exportKey, exportEntry] of Object.entries(definition.exports)) {
|
|
32
|
+
const importAlias = slash(path.join(definition.name, exportKey));
|
|
33
|
+
if (!importMap[importAlias]) {
|
|
34
|
+
const exportPath = getExportPathFromEntry(exportEntry);
|
|
35
|
+
if (exportPath) {
|
|
36
|
+
importMap[importAlias] = new URL(exportPath, baseUrl).href;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
importMap[definition.name] = new URL(definition.module || definition.main || 'index.js', baseUrl).href;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return importMap;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=createImportMap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createImportMap.js","sourceRoot":"","sources":["../src/createImportMap.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAErD,OAAO,EAAE,oBAAoB,EAA0B,MAAM,2BAA2B,CAAC;AACzF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAO9B,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,UAAsB,EACtB,eAAuB,EACvB,kBAAsD;IAEtD,MAAM,SAAS,GAAc;QAC3B,OAAO,EAAE,EAAE;KACZ,CAAC;IAEF,KAAK,MAAM,YAAY,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;QACpD,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,qBAAqB,CAAC,YAAY,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAAC,CAAC;QAEzG,IAAI,YAAY,CAAC,cAAc,EAAE;YAC/B,oBAAoB;YACpB,SAAS,CAAC,MAAM,KAAhB,SAAS,CAAC,MAAM,GAAK,EAAE,EAAC;YAExB,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE;gBACpE,KAAK,MAAM,YAAY,IAAI,WAAW,CAAC,UAAU,EAAE;oBACjD,MAAM,aAAa,GAAG,GAAG,eAAe,IAAI,YAAY,GAAG,CAAC;oBAC5D,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,qBAAqB,CAC3D,WAAW,EACX,eAAe,EACf,kBAAkB,CACnB,CAAC;iBACH;aACF;SACF;KACF;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,KAAsB,EACtB,eAAuB,EACvB,kBAAsD;IAEtD,MAAM,SAAS,GAA2B,EAAE,CAAC;IAC7C,MAAM,UAAU,GAAG,kBAAkB,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,oBAAoB,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAEtG,IAAI,UAAU,EAAE;QACd,MAAM,OAAO,GAAG,GAAG,eAAe,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,OAAO,GAAG,CAAC;QAE/E,IAAI,UAAU,CAAC,OAAO,EAAE;YACtB,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;gBACzE,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;gBAEjE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE;oBAC3B,MAAM,UAAU,GAAuB,sBAAsB,CAAC,WAAW,CAAC,CAAC;oBAE3E,IAAI,UAAU,EAAE;wBACd,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC;qBAC5D;iBACF;aACF;SACF;aAAM;YACL,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC;SACxG;KACF;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import { createImportMap } from './createImportMap.js';
|
|
2
|
+
const bundleServerUrl = 'http://localhost:12345';
|
|
3
|
+
const basicResolveMapEntry = { name: 'a', version: '1.0.0', path: 'path/a', requiredBy: [] };
|
|
4
|
+
describe('createImportMap', () => {
|
|
5
|
+
it('can translate a package with no entries', async () => {
|
|
6
|
+
const resolveMap = {
|
|
7
|
+
a: basicResolveMapEntry,
|
|
8
|
+
};
|
|
9
|
+
const packages = {
|
|
10
|
+
'path/a': {
|
|
11
|
+
name: 'a',
|
|
12
|
+
version: '1.0.0',
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
expect(await createImportMap(resolveMap, bundleServerUrl, packages)).toMatchInlineSnapshot(`
|
|
16
|
+
Object {
|
|
17
|
+
"imports": Object {
|
|
18
|
+
"a": "http://localhost:12345/a@1.0.0/index.js",
|
|
19
|
+
},
|
|
20
|
+
}
|
|
21
|
+
`);
|
|
22
|
+
});
|
|
23
|
+
it('can translate a package with 1 main entry', async () => {
|
|
24
|
+
const resolveMap = {
|
|
25
|
+
a: basicResolveMapEntry,
|
|
26
|
+
};
|
|
27
|
+
const packages = {
|
|
28
|
+
'path/a': {
|
|
29
|
+
name: 'a',
|
|
30
|
+
version: '1.0.0',
|
|
31
|
+
main: './foo/main.js',
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
expect(await createImportMap(resolveMap, bundleServerUrl, packages)).toMatchInlineSnapshot(`
|
|
35
|
+
Object {
|
|
36
|
+
"imports": Object {
|
|
37
|
+
"a": "http://localhost:12345/a@1.0.0/foo/main.js",
|
|
38
|
+
},
|
|
39
|
+
}
|
|
40
|
+
`);
|
|
41
|
+
});
|
|
42
|
+
it('can translate a package with 1 module entry', async () => {
|
|
43
|
+
const resolveMap = {
|
|
44
|
+
a: basicResolveMapEntry,
|
|
45
|
+
};
|
|
46
|
+
const packages = {
|
|
47
|
+
'path/a': {
|
|
48
|
+
name: 'a',
|
|
49
|
+
version: '1.0.0',
|
|
50
|
+
module: './foo/module.js',
|
|
51
|
+
},
|
|
52
|
+
};
|
|
53
|
+
expect(await createImportMap(resolveMap, bundleServerUrl, packages)).toMatchInlineSnapshot(`
|
|
54
|
+
Object {
|
|
55
|
+
"imports": Object {
|
|
56
|
+
"a": "http://localhost:12345/a@1.0.0/foo/module.js",
|
|
57
|
+
},
|
|
58
|
+
}
|
|
59
|
+
`);
|
|
60
|
+
});
|
|
61
|
+
it('prefers module over main', async () => {
|
|
62
|
+
const resolveMap = {
|
|
63
|
+
a: basicResolveMapEntry,
|
|
64
|
+
};
|
|
65
|
+
const packages = {
|
|
66
|
+
'path/a': {
|
|
67
|
+
name: 'a',
|
|
68
|
+
version: '1.0.0',
|
|
69
|
+
main: './foo/main.js',
|
|
70
|
+
module: './foo/module.js',
|
|
71
|
+
},
|
|
72
|
+
};
|
|
73
|
+
expect(await createImportMap(resolveMap, bundleServerUrl, packages)).toMatchInlineSnapshot(`
|
|
74
|
+
Object {
|
|
75
|
+
"imports": Object {
|
|
76
|
+
"a": "http://localhost:12345/a@1.0.0/foo/module.js",
|
|
77
|
+
},
|
|
78
|
+
}
|
|
79
|
+
`);
|
|
80
|
+
});
|
|
81
|
+
it('can translate a package with a basic exports map (value = string)', async () => {
|
|
82
|
+
const resolveMap = {
|
|
83
|
+
a: basicResolveMapEntry,
|
|
84
|
+
};
|
|
85
|
+
const packages = {
|
|
86
|
+
'path/a': {
|
|
87
|
+
name: 'a',
|
|
88
|
+
version: '1.0.0',
|
|
89
|
+
exports: {
|
|
90
|
+
'.': './foo/string.js',
|
|
91
|
+
},
|
|
92
|
+
},
|
|
93
|
+
};
|
|
94
|
+
expect(await createImportMap(resolveMap, bundleServerUrl, packages)).toMatchInlineSnapshot(`
|
|
95
|
+
Object {
|
|
96
|
+
"imports": Object {
|
|
97
|
+
"a": "http://localhost:12345/a@1.0.0/foo/string.js",
|
|
98
|
+
},
|
|
99
|
+
}
|
|
100
|
+
`);
|
|
101
|
+
});
|
|
102
|
+
it('can translate a package with a basic exports map (value = object, default)', async () => {
|
|
103
|
+
const resolveMap = {
|
|
104
|
+
a: basicResolveMapEntry,
|
|
105
|
+
};
|
|
106
|
+
const packages = {
|
|
107
|
+
'path/a': {
|
|
108
|
+
name: 'a',
|
|
109
|
+
version: '1.0.0',
|
|
110
|
+
exports: {
|
|
111
|
+
'.': { default: './foo/default.js' },
|
|
112
|
+
},
|
|
113
|
+
},
|
|
114
|
+
};
|
|
115
|
+
expect(await createImportMap(resolveMap, bundleServerUrl, packages)).toMatchInlineSnapshot(`
|
|
116
|
+
Object {
|
|
117
|
+
"imports": Object {
|
|
118
|
+
"a": "http://localhost:12345/a@1.0.0/foo/default.js",
|
|
119
|
+
},
|
|
120
|
+
}
|
|
121
|
+
`);
|
|
122
|
+
});
|
|
123
|
+
it('can translate a package with a basic exports map (value = object, prefer import)', async () => {
|
|
124
|
+
const resolveMap = {
|
|
125
|
+
a: basicResolveMapEntry,
|
|
126
|
+
};
|
|
127
|
+
const packages = {
|
|
128
|
+
'path/a': {
|
|
129
|
+
name: 'a',
|
|
130
|
+
version: '1.0.0',
|
|
131
|
+
exports: {
|
|
132
|
+
'.': {
|
|
133
|
+
import: './foo/import.js',
|
|
134
|
+
default: './foo/default.js',
|
|
135
|
+
},
|
|
136
|
+
},
|
|
137
|
+
},
|
|
138
|
+
};
|
|
139
|
+
expect(await createImportMap(resolveMap, bundleServerUrl, packages)).toMatchInlineSnapshot(`
|
|
140
|
+
Object {
|
|
141
|
+
"imports": Object {
|
|
142
|
+
"a": "http://localhost:12345/a@1.0.0/foo/import.js",
|
|
143
|
+
},
|
|
144
|
+
}
|
|
145
|
+
`);
|
|
146
|
+
});
|
|
147
|
+
it('can translate a package with a basic exports map (value = object, named export)', async () => {
|
|
148
|
+
const resolveMap = {
|
|
149
|
+
a: basicResolveMapEntry,
|
|
150
|
+
};
|
|
151
|
+
const packages = {
|
|
152
|
+
'path/a': {
|
|
153
|
+
name: 'a',
|
|
154
|
+
version: '1.0.0',
|
|
155
|
+
exports: {
|
|
156
|
+
'.': {
|
|
157
|
+
import: './foo/import.js',
|
|
158
|
+
default: './foo/default.js',
|
|
159
|
+
},
|
|
160
|
+
'./lib/Button': {
|
|
161
|
+
import: './lib/Button.js',
|
|
162
|
+
},
|
|
163
|
+
},
|
|
164
|
+
},
|
|
165
|
+
};
|
|
166
|
+
expect(await createImportMap(resolveMap, bundleServerUrl, packages)).toMatchInlineSnapshot(`
|
|
167
|
+
Object {
|
|
168
|
+
"imports": Object {
|
|
169
|
+
"a": "http://localhost:12345/a@1.0.0/foo/import.js",
|
|
170
|
+
"a/lib/Button": "http://localhost:12345/a@1.0.0/lib/Button.js",
|
|
171
|
+
},
|
|
172
|
+
}
|
|
173
|
+
`);
|
|
174
|
+
});
|
|
175
|
+
});
|
|
176
|
+
//# sourceMappingURL=createImportMap.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createImportMap.test.js","sourceRoot":"","sources":["../src/createImportMap.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAIvD,MAAM,eAAe,GAAG,wBAAwB,CAAC;AACjD,MAAM,oBAAoB,GAAoB,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;AAE9G,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,UAAU,GAAe;YAC7B,CAAC,EAAE,oBAAoB;SACxB,CAAC;QACF,MAAM,QAAQ,GAAsC;YAClD,QAAQ,EAAE;gBACR,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,OAAO;aACjB;SACF,CAAC;QAEF,MAAM,CAAC,MAAM,eAAe,CAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;KAM1F,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;QACzD,MAAM,UAAU,GAAe;YAC7B,CAAC,EAAE,oBAAoB;SACxB,CAAC;QACF,MAAM,QAAQ,GAAsC;YAClD,QAAQ,EAAE;gBACR,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE,eAAe;aACtB;SACF,CAAC;QAEF,MAAM,CAAC,MAAM,eAAe,CAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;KAM1F,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,UAAU,GAAe;YAC7B,CAAC,EAAE,oBAAoB;SACxB,CAAC;QACF,MAAM,QAAQ,GAAsC;YAClD,QAAQ,EAAE;gBACR,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,OAAO;gBAChB,MAAM,EAAE,iBAAiB;aAC1B;SACF,CAAC;QAEF,MAAM,CAAC,MAAM,eAAe,CAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;KAM1F,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,UAAU,GAAe;YAC7B,CAAC,EAAE,oBAAoB;SACxB,CAAC;QACF,MAAM,QAAQ,GAAsC;YAClD,QAAQ,EAAE;gBACR,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE,eAAe;gBACrB,MAAM,EAAE,iBAAiB;aAC1B;SACF,CAAC;QACF,MAAM,CAAC,MAAM,eAAe,CAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;KAM1F,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QACjF,MAAM,UAAU,GAAe;YAC7B,CAAC,EAAE,oBAAoB;SACxB,CAAC;QACF,MAAM,QAAQ,GAAsC;YAClD,QAAQ,EAAE;gBACR,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,OAAO;gBAChB,OAAO,EAAE;oBACP,GAAG,EAAE,iBAAiB;iBACvB;aACF;SACF,CAAC;QAEF,MAAM,CAAC,MAAM,eAAe,CAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;KAM1F,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;QAC1F,MAAM,UAAU,GAAe;YAC7B,CAAC,EAAE,oBAAoB;SACxB,CAAC;QACF,MAAM,QAAQ,GAAsC;YAClD,QAAQ,EAAE;gBACR,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,OAAO;gBAChB,OAAO,EAAE;oBACP,GAAG,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE;iBACrC;aACF;SACF,CAAC;QAEF,MAAM,CAAC,MAAM,eAAe,CAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;KAM1F,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kFAAkF,EAAE,KAAK,IAAI,EAAE;QAChG,MAAM,UAAU,GAAe;YAC7B,CAAC,EAAE,oBAAoB;SACxB,CAAC;QACF,MAAM,QAAQ,GAAsC;YAClD,QAAQ,EAAE;gBACR,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,OAAO;gBAChB,OAAO,EAAE;oBACP,GAAG,EAAE;wBACH,MAAM,EAAE,iBAAiB;wBACzB,OAAO,EAAE,kBAAkB;qBAC5B;iBACF;aACF;SACF,CAAC;QAEF,MAAM,CAAC,MAAM,eAAe,CAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;KAM1F,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;QAC/F,MAAM,UAAU,GAAe;YAC7B,CAAC,EAAE,oBAAoB;SACxB,CAAC;QACF,MAAM,QAAQ,GAAsC;YAClD,QAAQ,EAAE;gBACR,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,OAAO;gBAChB,OAAO,EAAE;oBACP,GAAG,EAAE;wBACH,MAAM,EAAE,iBAAiB;wBACzB,OAAO,EAAE,kBAAkB;qBAC5B;oBACD,cAAc,EAAE;wBACd,MAAM,EAAE,iBAAiB;qBAC1B;iBACF;aACF;SACF,CAAC;QAEF,MAAM,CAAC,MAAM,eAAe,CAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;;KAO1F,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -3,13 +3,15 @@ export declare type ResolveMapEntry = {
|
|
|
3
3
|
name: string;
|
|
4
4
|
version: string;
|
|
5
5
|
path: string;
|
|
6
|
+
requiredBy: string[];
|
|
6
7
|
scopedVersions?: {
|
|
7
|
-
[
|
|
8
|
+
[version: string]: ResolveMapEntry;
|
|
8
9
|
};
|
|
9
10
|
};
|
|
10
|
-
export declare type
|
|
11
|
-
|
|
11
|
+
export declare type PartialResolveMapEntry = Omit<ResolveMapEntry, 'requiredBy'> & {
|
|
12
|
+
requiredBy: Set<string>;
|
|
12
13
|
};
|
|
14
|
+
export declare type ResolveMap = Record<string, ResolveMapEntry>;
|
|
13
15
|
export declare function createResolveMap(options: {
|
|
14
16
|
appPath: string;
|
|
15
17
|
additionalPaths?: string[];
|
package/lib/createResolveMap.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { getPackageDefinition } from './getPackageDefinition.js';
|
|
2
2
|
import { findPackagePath } from './findPackagePath.js';
|
|
3
3
|
export async function createResolveMap(options) {
|
|
4
|
+
var _a, _b, _c, _d;
|
|
4
5
|
const { appPath, additionalPaths = [] } = options;
|
|
5
6
|
const visitedPaths = new Set([appPath, ...additionalPaths]);
|
|
6
7
|
const pathsToVisit = [appPath, ...additionalPaths];
|
|
7
|
-
const relationships = {};
|
|
8
8
|
const allEntries = {};
|
|
9
9
|
while (pathsToVisit.length) {
|
|
10
10
|
const packagePath = pathsToVisit.shift();
|
|
@@ -12,16 +12,15 @@ export async function createResolveMap(options) {
|
|
|
12
12
|
const definition = await getPackageDefinition(packagePath, true);
|
|
13
13
|
if (definition) {
|
|
14
14
|
const packageId = `${definition.name}@${definition.version}`;
|
|
15
|
-
allEntries[
|
|
15
|
+
const namedEntries = (allEntries[_a = definition.name] ?? (allEntries[_a] = {}));
|
|
16
|
+
namedEntries[_b = definition.version] ?? (namedEntries[_b] = createMapEntry(definition, packagePath));
|
|
16
17
|
for (const depName of Object.keys(definition?.dependencies || {})) {
|
|
17
18
|
const dependencyPath = findPackagePath(depName, packagePath);
|
|
18
19
|
const dependencyDefinition = await getPackageDefinition(dependencyPath, true);
|
|
19
20
|
if (dependencyDefinition) {
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
depVersionList[dependencyDefinition.version] || []);
|
|
24
|
-
relationshipList.push(packageId);
|
|
21
|
+
const dependencyNamedEntries = (allEntries[_c = dependencyDefinition.name] ?? (allEntries[_c] = {}));
|
|
22
|
+
const dependencyEntry = (dependencyNamedEntries[_d = dependencyDefinition.version] ?? (dependencyNamedEntries[_d] = createMapEntry(dependencyDefinition, dependencyPath)));
|
|
23
|
+
dependencyEntry.requiredBy.add(packageId);
|
|
25
24
|
if (!visitedPaths.has(dependencyPath)) {
|
|
26
25
|
visitedPaths.add(dependencyPath);
|
|
27
26
|
pathsToVisit.push(dependencyPath);
|
|
@@ -34,21 +33,19 @@ export async function createResolveMap(options) {
|
|
|
34
33
|
// Now we have all entries and relationships. Iterate through the relationships to build
|
|
35
34
|
// The final resolve map.
|
|
36
35
|
const resolveMap = {};
|
|
37
|
-
for (const [name, versions] of Object.entries(
|
|
36
|
+
for (const [name, versions] of Object.entries(allEntries)) {
|
|
38
37
|
const [dominantVersion, ...otherVersions] = Object.keys(versions).sort((a, b) => {
|
|
39
|
-
return versions[a].
|
|
38
|
+
return versions[a].requiredBy.size < versions[b].requiredBy.size ? 1 : -1;
|
|
40
39
|
});
|
|
41
|
-
|
|
42
|
-
const entry = (resolveMap[name] =
|
|
40
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
41
|
+
const entry = (resolveMap[name] = allEntries[name][dominantVersion]);
|
|
42
|
+
entry.requiredBy = Array.from(entry.requiredBy);
|
|
43
43
|
if (otherVersions?.length) {
|
|
44
44
|
entry.scopedVersions = {};
|
|
45
45
|
for (const otherVersion of otherVersions) {
|
|
46
|
-
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
for (const dependentId of dependents) {
|
|
50
|
-
entry.scopedVersions[dependentId] = scopedId;
|
|
51
|
-
}
|
|
46
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
47
|
+
const scopedEntry = (entry.scopedVersions[otherVersion] = versions[otherVersion]);
|
|
48
|
+
scopedEntry.requiredBy = Array.from(scopedEntry.requiredBy);
|
|
52
49
|
}
|
|
53
50
|
}
|
|
54
51
|
}
|
|
@@ -60,6 +57,7 @@ function createMapEntry(packageDefinition, packagePath) {
|
|
|
60
57
|
name,
|
|
61
58
|
version,
|
|
62
59
|
path: packagePath,
|
|
60
|
+
requiredBy: new Set(),
|
|
63
61
|
};
|
|
64
62
|
}
|
|
65
63
|
//# sourceMappingURL=createResolveMap.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createResolveMap.js","sourceRoot":"","sources":["../src/createResolveMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAA0B,MAAM,2BAA2B,CAAC;AACzF,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"createResolveMap.js","sourceRoot":"","sources":["../src/createResolveMap.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,32 @@ import { testProject1Path } from '../src/testPaths.js';
|
|
|
6
6
|
const createResolveMapSafe = async (options) => filterJson(await createResolveMap(options), 'path', (oldPath) => slash(path.relative(testProject1Path, oldPath)));
|
|
7
7
|
describe('createResolveMap', () => {
|
|
8
8
|
it('can create a resolve map', async () => {
|
|
9
|
-
expect(await createResolveMapSafe({ appPath: testProject1Path })).
|
|
9
|
+
expect(await createResolveMapSafe({ appPath: testProject1Path })).toMatchInlineSnapshot(`
|
|
10
|
+
Object {
|
|
11
|
+
"b": Object {
|
|
12
|
+
"name": "b",
|
|
13
|
+
"path": "node_modules/b",
|
|
14
|
+
"requiredBy": Array [
|
|
15
|
+
"test-project-1@0.0.1",
|
|
16
|
+
],
|
|
17
|
+
"version": "1.0.0",
|
|
18
|
+
},
|
|
19
|
+
"c": Object {
|
|
20
|
+
"name": "c",
|
|
21
|
+
"path": "node_modules/c",
|
|
22
|
+
"requiredBy": Array [
|
|
23
|
+
"test-project-1@0.0.1",
|
|
24
|
+
],
|
|
25
|
+
"version": "1.0.0",
|
|
26
|
+
},
|
|
27
|
+
"test-project-1": Object {
|
|
28
|
+
"name": "test-project-1",
|
|
29
|
+
"path": "",
|
|
30
|
+
"requiredBy": Array [],
|
|
31
|
+
"version": "0.0.1",
|
|
32
|
+
},
|
|
33
|
+
}
|
|
34
|
+
`);
|
|
10
35
|
});
|
|
11
36
|
});
|
|
12
37
|
//# sourceMappingURL=createResolveMap.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createResolveMap.test.js","sourceRoot":"","sources":["../src/createResolveMap.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AACrD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,oBAAoB,GAA4B,KAAK,EAAE,OAAO,EAAE,EAAE,CACtE,UAAU,CAAC,MAAM,gBAAgB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;AAEpH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,CAAC,MAAM,oBAAoB,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"createResolveMap.test.js","sourceRoot":"","sources":["../src/createResolveMap.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AACrD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,oBAAoB,GAA4B,KAAK,EAAE,OAAO,EAAE,EAAE,CACtE,UAAU,CAAC,MAAM,gBAAgB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;AAEpH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;QACxC,MAAM,CAAC,MAAM,oBAAoB,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;KAyBvF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/lib/index.d.ts
CHANGED
|
@@ -7,3 +7,4 @@ export { resolveImportFromPackage, resolveImportFromPackagePath, type ResolveImp
|
|
|
7
7
|
export { detectModuleType, type ModuleType } from './detectModuleType.js';
|
|
8
8
|
export { resolvePackageEntries } from './resolvePackageEntries.js';
|
|
9
9
|
export { isExternalPackage } from './isExternalPackage.js';
|
|
10
|
+
export { createImportMap, type ImportMap } from './createImportMap.js';
|
package/lib/index.js
CHANGED
|
@@ -6,4 +6,5 @@ export { resolveImportFromPackage, resolveImportFromPackagePath, } from './resol
|
|
|
6
6
|
export { detectModuleType } from './detectModuleType.js';
|
|
7
7
|
export { resolvePackageEntries } from './resolvePackageEntries.js';
|
|
8
8
|
export { isExternalPackage } from './isExternalPackage.js';
|
|
9
|
+
export { createImportMap } from './createImportMap.js';
|
|
9
10
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAyC,MAAM,uBAAuB,CAAC;AAEhG,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAA6C,MAAM,2BAA2B,CAAC;AAC5G,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,wBAAwB,EACxB,4BAA4B,GAE7B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAmB,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAyC,MAAM,uBAAuB,CAAC;AAEhG,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAA6C,MAAM,2BAA2B,CAAC;AAC5G,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,wBAAwB,EACxB,4BAA4B,GAE7B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAmB,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAkB,MAAM,sBAAsB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ms-cloudpack/package-utilities",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.1",
|
|
4
4
|
"description": "Utilities for resolving/parsing packages and their imports.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -15,14 +15,14 @@
|
|
|
15
15
|
"dependencies": {
|
|
16
16
|
"@babel/parser": "^7.16.12",
|
|
17
17
|
"@babel/traverse": "^7.16.10",
|
|
18
|
-
"@ms-cloudpack/path-utilities": "^0.
|
|
18
|
+
"@ms-cloudpack/path-utilities": "^0.3.0",
|
|
19
19
|
"resolve": "^1.22.0"
|
|
20
20
|
},
|
|
21
21
|
"devDependencies": {
|
|
22
22
|
"@ms-cloudpack/scripts": "*",
|
|
23
23
|
"@ms-cloudpack/eslint-config-base": "*",
|
|
24
24
|
"@types/resolve": "1.20.2",
|
|
25
|
-
"@babel/types": "7.18.
|
|
25
|
+
"@babel/types": "7.18.2"
|
|
26
26
|
},
|
|
27
27
|
"scripts": {
|
|
28
28
|
"api:update": "cloudpack-scripts api-update",
|