@ms-cloudpack/package-utilities 0.14.0 → 0.15.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/CHANGELOG.json +31 -1
- package/CHANGELOG.md +10 -2
- package/lib/addExportsMapEntry.d.ts +13 -0
- package/lib/addExportsMapEntry.js +41 -0
- package/lib/addExportsMapEntry.js.map +1 -0
- package/lib/addExportsMapEntry.test.d.ts +1 -0
- package/lib/addExportsMapEntry.test.js +55 -0
- package/lib/addExportsMapEntry.test.js.map +1 -0
- package/lib/createExportsMap.d.ts +0 -4
- package/lib/createExportsMap.js +34 -65
- package/lib/createExportsMap.js.map +1 -1
- package/lib/createExportsMap.test.js +25 -11
- package/lib/createExportsMap.test.js.map +1 -1
- package/lib/createResolveMap.d.ts +2 -0
- package/lib/createResolveMap.js +4 -5
- package/lib/createResolveMap.js.map +1 -1
- package/lib/findResolveMapEntry.d.ts +6 -0
- package/lib/findResolveMapEntry.js +12 -0
- package/lib/findResolveMapEntry.js.map +1 -0
- package/lib/findResolveMapEntry.test.d.ts +1 -0
- package/lib/findResolveMapEntry.test.js +52 -0
- package/lib/findResolveMapEntry.test.js.map +1 -0
- package/lib/index.d.ts +9 -5
- package/lib/index.js +14 -4
- package/lib/index.js.map +1 -1
- package/lib/parseImportString.d.ts +3 -3
- package/lib/parseImportString.js +4 -4
- package/lib/parseImportString.js.map +1 -1
- package/lib/parseImportString.test.js +21 -3
- package/lib/parseImportString.test.js.map +1 -1
- package/lib/resolveImportFromPackage.test.js +8 -34
- package/lib/resolveImportFromPackage.test.js.map +1 -1
- package/lib/resolveImportFromPackagePath.d.ts +4 -2
- package/lib/resolveImportFromPackagePath.js +10 -11
- package/lib/resolveImportFromPackagePath.js.map +1 -1
- package/lib/tsdoc-metadata.json +1 -1
- package/package.json +2 -2
package/CHANGELOG.json
CHANGED
|
@@ -2,7 +2,37 @@
|
|
|
2
2
|
"name": "@ms-cloudpack/package-utilities",
|
|
3
3
|
"entries": [
|
|
4
4
|
{
|
|
5
|
-
"date": "Wed,
|
|
5
|
+
"date": "Wed, 12 Oct 2022 08:10:23 GMT",
|
|
6
|
+
"tag": "@ms-cloudpack/package-utilities_v0.15.0",
|
|
7
|
+
"version": "0.15.0",
|
|
8
|
+
"comments": {
|
|
9
|
+
"minor": [
|
|
10
|
+
{
|
|
11
|
+
"author": "dzearing@microsoft.com",
|
|
12
|
+
"package": "@ms-cloudpack/package-utilities",
|
|
13
|
+
"commit": "03233b20287555cc8994203f05be01cb8a3fb225",
|
|
14
|
+
"comment": "Overhauling import/export map utilities."
|
|
15
|
+
}
|
|
16
|
+
]
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"date": "Tue, 11 Oct 2022 08:16:37 GMT",
|
|
21
|
+
"tag": "@ms-cloudpack/package-utilities_v0.14.0",
|
|
22
|
+
"version": "0.14.0",
|
|
23
|
+
"comments": {
|
|
24
|
+
"none": [
|
|
25
|
+
{
|
|
26
|
+
"author": "email not defined",
|
|
27
|
+
"package": "@ms-cloudpack/package-utilities",
|
|
28
|
+
"commit": "eaac5bbb36b4cc8105df8146bbe9366b0ed2e7ed",
|
|
29
|
+
"comment": "Update babel monorepo to v7.19.4"
|
|
30
|
+
}
|
|
31
|
+
]
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"date": "Wed, 05 Oct 2022 19:39:20 GMT",
|
|
6
36
|
"tag": "@ms-cloudpack/package-utilities_v0.14.0",
|
|
7
37
|
"version": "0.14.0",
|
|
8
38
|
"comments": {
|
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,20 @@
|
|
|
1
1
|
# Change Log - @ms-cloudpack/package-utilities
|
|
2
2
|
|
|
3
|
-
This log was last generated on Wed,
|
|
3
|
+
This log was last generated on Wed, 12 Oct 2022 08:10:23 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
+
## 0.15.0
|
|
8
|
+
|
|
9
|
+
Wed, 12 Oct 2022 08:10:23 GMT
|
|
10
|
+
|
|
11
|
+
### Minor changes
|
|
12
|
+
|
|
13
|
+
- Overhauling import/export map utilities. (dzearing@microsoft.com)
|
|
14
|
+
|
|
7
15
|
## 0.14.0
|
|
8
16
|
|
|
9
|
-
Wed, 05 Oct 2022 19:39:
|
|
17
|
+
Wed, 05 Oct 2022 19:39:20 GMT
|
|
10
18
|
|
|
11
19
|
### Minor changes
|
|
12
20
|
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { PackageDefinitions } from './PackageDefinitions.js';
|
|
2
|
+
/**
|
|
3
|
+
* Given an exports map and details about an import path, adds the entry.
|
|
4
|
+
*/
|
|
5
|
+
export declare function addExportsMapEntry(options: {
|
|
6
|
+
exports: Record<string, Record<string, string>>;
|
|
7
|
+
packagePath: string;
|
|
8
|
+
importPath: string;
|
|
9
|
+
entryPath?: string;
|
|
10
|
+
condition?: string;
|
|
11
|
+
typesPath?: string;
|
|
12
|
+
packages?: PackageDefinitions;
|
|
13
|
+
}): Promise<void>;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import path from 'path';
|
|
2
|
+
import { isFile, sourceToIntermediatePath } from '@ms-cloudpack/path-utilities';
|
|
3
|
+
import { isExternalPackage } from './isExternalPackage.js';
|
|
4
|
+
import { resolveImportFromPackagePath } from './resolveImportFromPackagePath.js';
|
|
5
|
+
import { safeRelativePath } from './safeRelativePath.js';
|
|
6
|
+
/**
|
|
7
|
+
* Given an exports map and details about an import path, adds the entry.
|
|
8
|
+
*/
|
|
9
|
+
export async function addExportsMapEntry(options) {
|
|
10
|
+
const { exports, packages, packagePath, importPath, entryPath, typesPath, condition = 'default' } = options;
|
|
11
|
+
const isInternal = !isExternalPackage(packagePath);
|
|
12
|
+
const sourcePath = await resolveImportFromPackagePath(packagePath, entryPath || importPath, {
|
|
13
|
+
packages,
|
|
14
|
+
preferSource: isInternal,
|
|
15
|
+
ignoreExportsMap: true,
|
|
16
|
+
});
|
|
17
|
+
const intermediatePath = sourcePath && sourceToIntermediatePath(sourcePath);
|
|
18
|
+
let resolvedTypesPath = typesPath;
|
|
19
|
+
// If at this point we haven't found what we're looking for, throw an exception.
|
|
20
|
+
if (!intermediatePath) {
|
|
21
|
+
throw new Error(`Unable to resolve import path ${importPath} in package ${packagePath}`);
|
|
22
|
+
}
|
|
23
|
+
// Discover d.ts if available.
|
|
24
|
+
if (!resolvedTypesPath) {
|
|
25
|
+
const isTypeScriptSource = sourcePath && ['.ts', '.tsx', '.mts', '.cts'].indexOf(path.extname(sourcePath)) >= 0;
|
|
26
|
+
const potentialTypesPath = path.extname(intermediatePath) === '.js' && intermediatePath.replace('.js', '.d.ts');
|
|
27
|
+
if (potentialTypesPath &&
|
|
28
|
+
((isInternal && isTypeScriptSource) || (!isInternal && isFile(path.join(packagePath, potentialTypesPath))))) {
|
|
29
|
+
resolvedTypesPath = potentialTypesPath;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
const exportSet = (exports[importPath] || (exports[importPath] = {}));
|
|
33
|
+
if (resolvedTypesPath) {
|
|
34
|
+
exportSet.types = safeRelativePath(resolvedTypesPath);
|
|
35
|
+
}
|
|
36
|
+
exportSet[condition] = intermediatePath;
|
|
37
|
+
if (sourcePath && sourcePath !== intermediatePath) {
|
|
38
|
+
exportSet.source = safeRelativePath(sourcePath);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=addExportsMapEntry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addExportsMapEntry.js","sourceRoot":"","sources":["../src/addExportsMapEntry.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAEhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAQxC;IACC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC;IAC5G,MAAM,UAAU,GAAG,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,MAAM,4BAA4B,CAAC,WAAW,EAAE,SAAS,IAAI,UAAU,EAAE;QAC1F,QAAQ;QACR,YAAY,EAAE,UAAU;QACxB,gBAAgB,EAAE,IAAI;KACvB,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,UAAU,IAAI,wBAAwB,CAAC,UAAU,CAAC,CAAC;IAC5E,IAAI,iBAAiB,GAAG,SAAS,CAAC;IAElC,gFAAgF;IAChF,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,iCAAiC,UAAU,eAAe,WAAW,EAAE,CAAC,CAAC;KAC1F;IAED,8BAA8B;IAC9B,IAAI,CAAC,iBAAiB,EAAE;QACtB,MAAM,kBAAkB,GAAG,UAAU,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;QAChH,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,KAAK,IAAI,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAEhH,IACE,kBAAkB;YAClB,CAAC,CAAC,UAAU,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAC3G;YACA,iBAAiB,GAAG,kBAAkB,CAAC;SACxC;KACF;IAED,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,UAAU,MAAlB,OAAO,CAAC,UAAU,IAAM,EAAE,EAAC,CAAC;IAE/C,IAAI,iBAAiB,EAAE;QACrB,SAAS,CAAC,KAAK,GAAG,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;KACvD;IAED,SAAS,CAAC,SAAS,CAAC,GAAG,gBAAgB,CAAC;IAExC,IAAI,UAAU,IAAI,UAAU,KAAK,gBAAgB,EAAE;QACjD,SAAS,CAAC,MAAM,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;KACjD;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { describe, expect, it } from '@jest/globals';
|
|
2
|
+
import { addExportsMapEntry } from './addExportsMapEntry.js';
|
|
3
|
+
import { testProject1Path } from './testPaths.js';
|
|
4
|
+
describe('addExportsMapEntry', () => {
|
|
5
|
+
it('can add an entry to an empty exports map', async () => {
|
|
6
|
+
const exportsMap = {};
|
|
7
|
+
await addExportsMapEntry({
|
|
8
|
+
exports: exportsMap,
|
|
9
|
+
packagePath: testProject1Path,
|
|
10
|
+
importPath: './lib/foo-sub1',
|
|
11
|
+
});
|
|
12
|
+
expect(exportsMap).toMatchInlineSnapshot(`
|
|
13
|
+
{
|
|
14
|
+
"./lib/foo-sub1": {
|
|
15
|
+
"default": "./lib/foo-sub1.js",
|
|
16
|
+
"source": "./src/foo-sub1.ts",
|
|
17
|
+
"types": "./lib/foo-sub1.d.ts",
|
|
18
|
+
},
|
|
19
|
+
}
|
|
20
|
+
`);
|
|
21
|
+
});
|
|
22
|
+
it(' can add an entry to an existing exports map', async () => {
|
|
23
|
+
const exportsMap = {
|
|
24
|
+
'.': {
|
|
25
|
+
default: './lib/index.js',
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
await addExportsMapEntry({
|
|
29
|
+
exports: exportsMap,
|
|
30
|
+
packagePath: testProject1Path,
|
|
31
|
+
importPath: './lib/foo-sub1',
|
|
32
|
+
});
|
|
33
|
+
expect(exportsMap).toMatchInlineSnapshot(`
|
|
34
|
+
{
|
|
35
|
+
".": {
|
|
36
|
+
"default": "./lib/index.js",
|
|
37
|
+
},
|
|
38
|
+
"./lib/foo-sub1": {
|
|
39
|
+
"default": "./lib/foo-sub1.js",
|
|
40
|
+
"source": "./src/foo-sub1.ts",
|
|
41
|
+
"types": "./lib/foo-sub1.d.ts",
|
|
42
|
+
},
|
|
43
|
+
}
|
|
44
|
+
`);
|
|
45
|
+
});
|
|
46
|
+
it('can throw when the entry does not exist', async () => {
|
|
47
|
+
const exportsMap = {};
|
|
48
|
+
await expect(addExportsMapEntry({
|
|
49
|
+
exports: exportsMap,
|
|
50
|
+
packagePath: testProject1Path,
|
|
51
|
+
importPath: './lib/foo-sub2',
|
|
52
|
+
})).rejects.toThrow();
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
//# sourceMappingURL=addExportsMapEntry.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addExportsMapEntry.test.js","sourceRoot":"","sources":["../src/addExportsMapEntry.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,UAAU,GAAG,EAAE,CAAC;QAEtB,MAAM,kBAAkB,CAAC;YACvB,OAAO,EAAE,UAAU;YACnB,WAAW,EAAE,gBAAgB;YAC7B,UAAU,EAAE,gBAAgB;SAC7B,CAAC,CAAC;QAEH,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;KAQxC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,UAAU,GAAG;YACjB,GAAG,EAAE;gBACH,OAAO,EAAE,gBAAgB;aAC1B;SACF,CAAC;QAEF,MAAM,kBAAkB,CAAC;YACvB,OAAO,EAAE,UAAU;YACnB,WAAW,EAAE,gBAAgB;YAC7B,UAAU,EAAE,gBAAgB;SAC7B,CAAC,CAAC;QAEH,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC;;;;;;;;;;;KAWxC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,UAAU,GAAG,EAAE,CAAC;QAEtB,MAAM,MAAM,CACV,kBAAkB,CAAC;YACjB,OAAO,EAAE,UAAU;YACnB,WAAW,EAAE,gBAAgB;YAC7B,UAAU,EAAE,gBAAgB;SAC7B,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IACtB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -6,7 +6,3 @@ import { PackageDefinitions } from './PackageDefinitions.js';
|
|
|
6
6
|
export declare function createExportsMap(packagePath: string, options?: {
|
|
7
7
|
packages?: PackageDefinitions;
|
|
8
8
|
}): Promise<PackageJson.Exports>;
|
|
9
|
-
/**
|
|
10
|
-
* Given an exports map and details about an import path, adds the entry.
|
|
11
|
-
*/
|
|
12
|
-
export declare function addExportsMapEntry(exports: PackageJson.Exports, importPath: string | undefined, packagePath: string, condition: string | undefined, entryPath: string | undefined, typesPath?: string): Promise<void>;
|
package/lib/createExportsMap.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import path from 'path';
|
|
2
2
|
import { isFile } from '@ms-cloudpack/path-utilities';
|
|
3
3
|
import { PackageDefinitions } from './PackageDefinitions.js';
|
|
4
|
-
import {
|
|
5
|
-
import { resolveImportFromPackagePath } from './resolveImportFromPackagePath.js';
|
|
6
|
-
import { safeRelativePath } from './safeRelativePath.js';
|
|
4
|
+
import { addExportsMapEntry } from './addExportsMapEntry.js';
|
|
7
5
|
/**
|
|
8
6
|
* Given a package path, generates an export map for the package.
|
|
9
7
|
*/
|
|
@@ -18,82 +16,53 @@ export async function createExportsMap(packagePath, options = {}) {
|
|
|
18
16
|
return definition.exports;
|
|
19
17
|
}
|
|
20
18
|
const { main, module, browser } = definition;
|
|
21
|
-
const
|
|
19
|
+
const browserString = typeof browser === 'string' ? browser : undefined;
|
|
20
|
+
const rootIndex = isFile(path.join(packagePath, 'index.js')) ? './index.js' : undefined;
|
|
22
21
|
const exports = {};
|
|
23
|
-
const
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
const typesPath = definition.types || definition.typings;
|
|
23
|
+
const hasPackageEntry = browserString || module || main || rootIndex;
|
|
24
|
+
if (!hasPackageEntry) {
|
|
25
|
+
if (!browser) {
|
|
26
|
+
return exports;
|
|
27
|
+
}
|
|
26
28
|
}
|
|
27
|
-
|
|
28
|
-
await addExportsMapEntry(
|
|
29
|
+
else {
|
|
30
|
+
await addExportsMapEntry({
|
|
31
|
+
exports,
|
|
32
|
+
importPath: '.',
|
|
33
|
+
packagePath,
|
|
34
|
+
condition: 'default',
|
|
35
|
+
entryPath: browserString || module || main || rootIndex,
|
|
36
|
+
typesPath,
|
|
37
|
+
});
|
|
29
38
|
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
// If we have an entry defined in the package, iterate through exports and update things.
|
|
38
|
-
if (main || module) {
|
|
39
|
-
for (const mapValue of Object.values(exports)) {
|
|
40
|
-
const exportUrl = (mapValue.import || mapValue.default);
|
|
41
|
-
if (browser[exportUrl]) {
|
|
42
|
-
mapValue['browser'] = browser[exportUrl] || '';
|
|
43
|
-
}
|
|
39
|
+
if (typeof browser === 'object') {
|
|
40
|
+
// If we have an entry defined in the package, iterate through exports and update things.
|
|
41
|
+
if (hasPackageEntry) {
|
|
42
|
+
for (const mapValue of Object.values(exports)) {
|
|
43
|
+
const exportUrl = mapValue.import || mapValue.default;
|
|
44
|
+
if (browser[exportUrl]) {
|
|
45
|
+
mapValue['browser'] = browser[exportUrl] || '';
|
|
44
46
|
}
|
|
45
47
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
}
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
// When all we have are browser entries, attempt to make exports out of them.
|
|
51
|
+
for (const [key, value] of Object.entries(browser)) {
|
|
52
|
+
if (typeof value === 'string' && path.extname(value) === '.js') {
|
|
53
|
+
exports[makeSafeImportKey(key)] = {
|
|
54
|
+
browser: value,
|
|
55
|
+
};
|
|
54
56
|
}
|
|
55
57
|
}
|
|
56
58
|
}
|
|
57
59
|
}
|
|
58
60
|
return exports;
|
|
59
61
|
}
|
|
60
|
-
/**
|
|
61
|
-
* Given an exports map and details about an import path, adds the entry.
|
|
62
|
-
*/
|
|
63
|
-
export async function addExportsMapEntry(exports, importPath, packagePath, condition = 'default', entryPath, typesPath) {
|
|
64
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
65
|
-
const packageExports = exports;
|
|
66
|
-
if (!entryPath) {
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
entryPath = safeRelativePath(entryPath);
|
|
70
|
-
const intermediatePath = (importPath && (await resolveImportFromPackagePath(packagePath, importPath))) || entryPath;
|
|
71
|
-
const isInternal = !isExternalPackage(packagePath);
|
|
72
|
-
const sourcePath = isInternal
|
|
73
|
-
? await resolveImportFromPackagePath(packagePath, intermediatePath, { preferSource: true })
|
|
74
|
-
: undefined;
|
|
75
|
-
const potentialTypesPath = path.extname(intermediatePath) === '.js' && intermediatePath.replace('.js', '.d.ts');
|
|
76
|
-
const isTypeScriptSource = sourcePath && ['.ts', '.tsx', '.mts', '.cts'].indexOf(path.extname(sourcePath)) >= 0;
|
|
77
|
-
// Discover d.ts if available.
|
|
78
|
-
if (!typesPath &&
|
|
79
|
-
potentialTypesPath &&
|
|
80
|
-
((isInternal && isTypeScriptSource) || (!isInternal && isFile(path.join(packagePath, potentialTypesPath))))) {
|
|
81
|
-
typesPath = potentialTypesPath;
|
|
82
|
-
}
|
|
83
|
-
importPath = importPath || '.';
|
|
84
|
-
const exportSet = (packageExports[importPath] || (packageExports[importPath] = {}));
|
|
85
|
-
if (typesPath) {
|
|
86
|
-
exportSet.types = safeRelativePath(typesPath);
|
|
87
|
-
}
|
|
88
|
-
exportSet[condition] = intermediatePath;
|
|
89
|
-
if (sourcePath && sourcePath !== intermediatePath) {
|
|
90
|
-
exportSet.source = safeRelativePath(sourcePath);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
62
|
function makeSafeImportKey(key) {
|
|
94
63
|
// if the key starts with a slash, add a dot
|
|
95
64
|
if (key.startsWith('/')) {
|
|
96
|
-
|
|
65
|
+
key = '.' + key;
|
|
97
66
|
}
|
|
98
67
|
// if the key doesn't start with "./", add it
|
|
99
68
|
if (!key.startsWith('./')) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createExportsMap.js","sourceRoot":"","sources":["../src/createExportsMap.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"createExportsMap.js","sourceRoot":"","sources":["../src/createExportsMap.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,9 @@ import { createExportsMap } from './createExportsMap.js';
|
|
|
3
3
|
import { testScenariosPath } from './testPaths.js';
|
|
4
4
|
import path from 'path';
|
|
5
5
|
import { PackageDefinitions } from './PackageDefinitions.js';
|
|
6
|
+
import { createTestFileStructure } from '@ms-cloudpack/test-utilities';
|
|
6
7
|
const testGenerateExportsPath = path.join(testScenariosPath, 'test-generate-exports');
|
|
7
|
-
describe('
|
|
8
|
+
describe('createExportsMap', () => {
|
|
8
9
|
it('can return a blank import map for something with nothing to export', async () => {
|
|
9
10
|
expect(await createExportsMap(path.join(testGenerateExportsPath, 'no-exports'))).toEqual({});
|
|
10
11
|
});
|
|
@@ -49,19 +50,27 @@ describe('generateExportsMap', () => {
|
|
|
49
50
|
expect(await createExportsMap(path.join(testGenerateExportsPath, 'module-export'))).toMatchInlineSnapshot(`
|
|
50
51
|
{
|
|
51
52
|
".": {
|
|
52
|
-
"default": "./
|
|
53
|
-
"import": "./module.js",
|
|
53
|
+
"default": "./module.js",
|
|
54
54
|
},
|
|
55
55
|
}
|
|
56
56
|
`);
|
|
57
57
|
});
|
|
58
58
|
it('can generate an exports map for a package with a browser export', async () => {
|
|
59
|
-
|
|
59
|
+
const testPath = await createTestFileStructure({
|
|
60
|
+
'package.json': {
|
|
61
|
+
name: 'browser-export',
|
|
62
|
+
main: 'main.js',
|
|
63
|
+
module: 'module.js',
|
|
64
|
+
browser: 'browser.js',
|
|
65
|
+
},
|
|
66
|
+
'main.js': '',
|
|
67
|
+
'module.js': '',
|
|
68
|
+
'browser.js': '',
|
|
69
|
+
});
|
|
70
|
+
expect(await createExportsMap(testPath)).toMatchInlineSnapshot(`
|
|
60
71
|
{
|
|
61
72
|
".": {
|
|
62
|
-
"
|
|
63
|
-
"default": "./main.js",
|
|
64
|
-
"import": "./module.js",
|
|
73
|
+
"default": "./browser.js",
|
|
65
74
|
},
|
|
66
75
|
}
|
|
67
76
|
`);
|
|
@@ -100,9 +109,9 @@ describe('generateExportsMap', () => {
|
|
|
100
109
|
`);
|
|
101
110
|
});
|
|
102
111
|
it(`can find exports from browser-only packages like uuid@3.4.0`, async () => {
|
|
103
|
-
|
|
104
|
-
const
|
|
105
|
-
'
|
|
112
|
+
const packages = new PackageDefinitions();
|
|
113
|
+
const testPath = await createTestFileStructure({
|
|
114
|
+
'package.json': {
|
|
106
115
|
name: 'uuid',
|
|
107
116
|
browser: {
|
|
108
117
|
'./lib/rng.js': './lib/rng-browser.js',
|
|
@@ -110,8 +119,13 @@ describe('generateExportsMap', () => {
|
|
|
110
119
|
'./lib/md5.js': './lib/md5-browser.js',
|
|
111
120
|
},
|
|
112
121
|
},
|
|
122
|
+
'lib/rng.js': '',
|
|
123
|
+
'lib/sha1.js': '',
|
|
124
|
+
'lib/md5.js': '',
|
|
113
125
|
});
|
|
114
|
-
const exportsMap = await createExportsMap(
|
|
126
|
+
const exportsMap = (await createExportsMap(testPath, { packages }));
|
|
127
|
+
expect(typeof exportsMap).toEqual('object');
|
|
128
|
+
expect(exportsMap?.['.']).toBeUndefined();
|
|
115
129
|
expect(exportsMap).toMatchInlineSnapshot(`
|
|
116
130
|
{
|
|
117
131
|
"./lib/md5": {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createExportsMap.test.js","sourceRoot":"","sources":["../src/createExportsMap.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"createExportsMap.test.js","sourceRoot":"","sources":["../src/createExportsMap.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { PackageDefinitions } from './PackageDefinitions.js';
|
|
1
2
|
export declare type PackageNameVersion = `${string}@${string}`;
|
|
2
3
|
export declare type ResolveMapEntry = {
|
|
3
4
|
name: string;
|
|
@@ -14,4 +15,5 @@ export declare function createResolveMap(options: {
|
|
|
14
15
|
additionalPaths?: string[];
|
|
15
16
|
gitRootPath?: string;
|
|
16
17
|
strictVersioning?: boolean;
|
|
18
|
+
packages?: PackageDefinitions;
|
|
17
19
|
}): Promise<ResolveMap>;
|
package/lib/createResolveMap.js
CHANGED
|
@@ -2,13 +2,12 @@ import { PackageDefinitions } from './PackageDefinitions.js';
|
|
|
2
2
|
import { findPackagePath } from './findPackagePath.js';
|
|
3
3
|
import fs from 'fs';
|
|
4
4
|
const { realpath } = fs.promises;
|
|
5
|
-
const definitions = PackageDefinitions.getInstance();
|
|
6
5
|
export async function createResolveMap(options) {
|
|
7
6
|
var _a, _b, _c, _d;
|
|
8
|
-
const { appPath, additionalPaths = [], gitRootPath, strictVersioning } = options;
|
|
7
|
+
const { appPath, additionalPaths = [], gitRootPath, strictVersioning, packages = PackageDefinitions.getInstance(), } = options;
|
|
9
8
|
const visitedPaths = new Set([appPath, ...additionalPaths]);
|
|
10
9
|
const allEntries = {};
|
|
11
|
-
const appDefinition = await
|
|
10
|
+
const appDefinition = await packages.get(appPath);
|
|
12
11
|
if (!appDefinition) {
|
|
13
12
|
throw new Error(`Could not find package.json for ${appPath}`);
|
|
14
13
|
}
|
|
@@ -22,7 +21,7 @@ export async function createResolveMap(options) {
|
|
|
22
21
|
let packagePath = pathsToVisit.shift();
|
|
23
22
|
if (packagePath) {
|
|
24
23
|
packagePath = await realpath(packagePath);
|
|
25
|
-
const definition = await
|
|
24
|
+
const definition = await packages.get(packagePath);
|
|
26
25
|
if (definition && definition.name && definition.version) {
|
|
27
26
|
const packageId = `${definition.name}@${definition.version}`;
|
|
28
27
|
const namedEntries = (allEntries[_a = definition.name] ?? (allEntries[_a] = {}));
|
|
@@ -35,7 +34,7 @@ export async function createResolveMap(options) {
|
|
|
35
34
|
const requiredVersion = definition?.dependencies?.[depName] || definition?.peerDependencies?.[depName];
|
|
36
35
|
const dependencyPath = await findPackagePath(depName, strictVersioning ? requiredVersion : undefined, packagePath, gitRootPath, !!definition?.peerDependencies?.[depName]);
|
|
37
36
|
if (dependencyPath) {
|
|
38
|
-
const dependencyDefinition = await
|
|
37
|
+
const dependencyDefinition = await packages.get(dependencyPath);
|
|
39
38
|
if (dependencyDefinition?.name && dependencyDefinition.version) {
|
|
40
39
|
const dependencyNamedEntries = (allEntries[_c = dependencyDefinition.name] ?? (allEntries[_c] = {}));
|
|
41
40
|
const dependencyEntry = (dependencyNamedEntries[_d = dependencyDefinition.version] ?? (dependencyNamedEntries[_d] = createMapEntry(dependencyDefinition, dependencyPath)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createResolveMap.js","sourceRoot":"","sources":["../src/createResolveMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"createResolveMap.js","sourceRoot":"","sources":["../src/createResolveMap.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ResolveMap, ResolveMapEntry } from './createResolveMap.js';
|
|
2
|
+
import type { PackageJson } from 'type-fest';
|
|
3
|
+
/**
|
|
4
|
+
* Helper which, given a definition/resolveMap/dependency name, returns the resolve map entry for the dependency.
|
|
5
|
+
*/
|
|
6
|
+
export declare function findResolveMapEntry(definition: PackageJson, packageName: string, resolveMap: ResolveMap): ResolveMapEntry | undefined;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Helper which, given a definition/resolveMap/dependency name, returns the resolve map entry for the dependency.
|
|
3
|
+
*/
|
|
4
|
+
export function findResolveMapEntry(definition, packageName, resolveMap) {
|
|
5
|
+
const resolveEntry = resolveMap[packageName];
|
|
6
|
+
if (!resolveEntry) {
|
|
7
|
+
return undefined;
|
|
8
|
+
}
|
|
9
|
+
const scopedEntry = Object.values(resolveEntry?.scopedVersions || {}).filter((e) => !!e.requiredBy[`${definition.name}@${definition.version}`])[0];
|
|
10
|
+
return scopedEntry || resolveEntry;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=findResolveMapEntry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"findResolveMapEntry.js","sourceRoot":"","sources":["../src/findResolveMapEntry.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,UAAuB,EACvB,WAAmB,EACnB,UAAsB;IAEtB,MAAM,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IAE7C,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,cAAc,IAAI,EAAE,CAAC,CAAC,MAAM,CAC1E,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC,CAClE,CAAC,CAAC,CAAC,CAAC;IAEL,OAAO,WAAW,IAAI,YAAY,CAAC;AACrC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { describe, expect, it } from '@jest/globals';
|
|
2
|
+
import { findResolveMapEntry } from './findResolveMapEntry.js';
|
|
3
|
+
describe('findResolveMapEntry', () => {
|
|
4
|
+
it('can find an entry', () => {
|
|
5
|
+
const resolveMap = {
|
|
6
|
+
bar: {
|
|
7
|
+
name: 'bar',
|
|
8
|
+
version: '1.0.0',
|
|
9
|
+
path: 'bar',
|
|
10
|
+
requiredBy: {
|
|
11
|
+
foo: '1.0.0',
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
expect(findResolveMapEntry({ name: 'foo', version: '1.0.0' }, 'bar', resolveMap)).toEqual(resolveMap.bar);
|
|
16
|
+
});
|
|
17
|
+
it('can find an entry with a scoped version', () => {
|
|
18
|
+
const resolveMap = {
|
|
19
|
+
bar: {
|
|
20
|
+
name: 'bar',
|
|
21
|
+
version: '1.0.0',
|
|
22
|
+
path: 'bar/1',
|
|
23
|
+
scopedVersions: {
|
|
24
|
+
'1.0.1': {
|
|
25
|
+
name: 'bar',
|
|
26
|
+
version: '1.0.1',
|
|
27
|
+
path: 'bar/2',
|
|
28
|
+
requiredBy: {
|
|
29
|
+
'foo@1.0.0': '^1.0.0',
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
requiredBy: {},
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
expect(findResolveMapEntry({ name: 'foo', version: '1.0.0' }, 'bar', resolveMap)).toEqual(resolveMap.bar?.scopedVersions?.['1.0.1']);
|
|
37
|
+
});
|
|
38
|
+
it('can return undefined for missing entries', () => {
|
|
39
|
+
const resolveMap = {
|
|
40
|
+
bar: {
|
|
41
|
+
name: 'bar',
|
|
42
|
+
version: '1.0.0',
|
|
43
|
+
path: 'bar',
|
|
44
|
+
requiredBy: {
|
|
45
|
+
foo: '1.0.0',
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
};
|
|
49
|
+
expect(findResolveMapEntry({ name: 'foo', version: '1.0.0' }, 'baz', resolveMap)).toBeUndefined();
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
//# sourceMappingURL=findResolveMapEntry.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"findResolveMapEntry.test.js","sourceRoot":"","sources":["../src/findResolveMapEntry.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAErD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;QAC3B,MAAM,UAAU,GAAe;YAC7B,GAAG,EAAE;gBACH,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE,KAAK;gBACX,UAAU,EAAE;oBACV,GAAG,EAAE,OAAO;iBACb;aACF;SACF,CAAC;QAEF,MAAM,CAAC,mBAAmB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC5G,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,UAAU,GAAe;YAC7B,GAAG,EAAE;gBACH,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE,OAAO;gBACb,cAAc,EAAE;oBACd,OAAO,EAAE;wBACP,IAAI,EAAE,KAAK;wBACX,OAAO,EAAE,OAAO;wBAChB,IAAI,EAAE,OAAO;wBACb,UAAU,EAAE;4BACV,WAAW,EAAE,QAAQ;yBACtB;qBACF;iBACF;gBACD,UAAU,EAAE,EAAE;aACf;SACF,CAAC;QAEF,MAAM,CAAC,mBAAmB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,CACvF,UAAU,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,OAAO,CAAC,CAC1C,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,UAAU,GAAe;YAC7B,GAAG,EAAE;gBACH,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE,KAAK;gBACX,UAAU,EAAE;oBACV,GAAG,EAAE,OAAO;iBACb;aACF;SACF,CAAC;QAEF,MAAM,CAAC,mBAAmB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACpG,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/lib/index.d.ts
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
|
-
export { createResolveMap } from './createResolveMap.js';
|
|
2
1
|
export { PackageDefinitions, type PackageDefinitionTransform } from './PackageDefinitions.js';
|
|
2
|
+
export { createResolveMap } from './createResolveMap.js';
|
|
3
|
+
export type { ResolveMapEntry, ResolveMap } from './createResolveMap.js';
|
|
4
|
+
export { findResolveMapEntry } from './findResolveMapEntry.js';
|
|
3
5
|
export { flattenExportsMap } from './flattenExportsMap.js';
|
|
4
|
-
export { createExportsMap
|
|
6
|
+
export { createExportsMap } from './createExportsMap.js';
|
|
7
|
+
export { addExportsMapEntry } from './addExportsMapEntry.js';
|
|
8
|
+
export { getExportsMap } from './getExportsMap.js';
|
|
9
|
+
export { createImportMap, type ImportMap } from './createImportMap.js';
|
|
5
10
|
export { resolve } from './resolve.js';
|
|
6
11
|
export { resolveImportFromPackage, resolveImportFromPackagePath, type ResolveImportFromPackageOptions, } from './resolveImportFromPackagePath.js';
|
|
7
|
-
export { detectModuleType, type ModuleType } from './detectModuleType.js';
|
|
8
12
|
export { resolvePackageEntries } from './resolvePackageEntries.js';
|
|
13
|
+
export { detectModuleType, type ModuleType } from './detectModuleType.js';
|
|
9
14
|
export { isExternalPackage } from './isExternalPackage.js';
|
|
10
|
-
export {
|
|
11
|
-
export type { ResolveMapEntry, ResolveMap } from './createResolveMap.js';
|
|
15
|
+
export { parseImportString } from './parseImportString.js';
|
package/lib/index.js
CHANGED
|
@@ -1,11 +1,21 @@
|
|
|
1
|
-
|
|
1
|
+
// Package definition parsing
|
|
2
2
|
export { PackageDefinitions } from './PackageDefinitions.js';
|
|
3
|
+
// ResolveMap creation
|
|
4
|
+
export { createResolveMap } from './createResolveMap.js';
|
|
5
|
+
export { findResolveMapEntry } from './findResolveMapEntry.js';
|
|
6
|
+
// ExportsMap parsing and creation
|
|
3
7
|
export { flattenExportsMap } from './flattenExportsMap.js';
|
|
4
|
-
export { createExportsMap
|
|
8
|
+
export { createExportsMap } from './createExportsMap.js';
|
|
9
|
+
export { addExportsMapEntry } from './addExportsMapEntry.js';
|
|
10
|
+
export { getExportsMap } from './getExportsMap.js';
|
|
11
|
+
// ImportMap creation
|
|
12
|
+
export { createImportMap } from './createImportMap.js';
|
|
13
|
+
// Import resolution utilities
|
|
5
14
|
export { resolve } from './resolve.js';
|
|
6
15
|
export { resolveImportFromPackage, resolveImportFromPackagePath, } from './resolveImportFromPackagePath.js';
|
|
7
|
-
export { detectModuleType } from './detectModuleType.js';
|
|
8
16
|
export { resolvePackageEntries } from './resolvePackageEntries.js';
|
|
17
|
+
// Other package utilities
|
|
18
|
+
export { detectModuleType } from './detectModuleType.js';
|
|
9
19
|
export { isExternalPackage } from './isExternalPackage.js';
|
|
10
|
-
export {
|
|
20
|
+
export { parseImportString } from './parseImportString.js';
|
|
11
21
|
//# 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,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,OAAO,EAAE,kBAAkB,EAAmC,MAAM,yBAAyB,CAAC;AAE9F,sBAAsB;AACtB,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,kCAAkC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,qBAAqB;AACrB,OAAO,EAAE,eAAe,EAAkB,MAAM,sBAAsB,CAAC;AAEvE,8BAA8B;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,wBAAwB,EACxB,4BAA4B,GAE7B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,0BAA0B;AAC1B,OAAO,EAAE,gBAAgB,EAAmB,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export declare type ImportStringResult = {
|
|
2
|
-
packageName: string;
|
|
3
|
-
version: string;
|
|
4
|
-
importPath: string;
|
|
2
|
+
packageName: string | undefined;
|
|
3
|
+
version: string | undefined;
|
|
4
|
+
importPath: string | undefined;
|
|
5
5
|
};
|
|
6
6
|
export declare function parseImportString(importString?: string): ImportStringResult;
|
package/lib/parseImportString.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export function parseImportString(importString = '') {
|
|
2
|
-
const matches = importString.match(/[/]?(@[-_a-z-A-Z0-9.]+\/[-_a-z-A-Z0-9.]+|[
|
|
2
|
+
const matches = importString.match(/[/]?(@[-_a-z-A-Z0-9.]+\/[-_a-z-A-Z0-9.]+|[-_a-zA-Z0-9.]+)(@([-_a-zA-Z-0-9.]+))?(\/([-_/a-zA-Z0-9.]+))?/) || [];
|
|
3
3
|
return {
|
|
4
|
-
packageName: matches[1] ||
|
|
5
|
-
version: matches[3] ||
|
|
6
|
-
importPath: matches[5] ||
|
|
4
|
+
packageName: matches[1] || undefined,
|
|
5
|
+
version: matches[3] || undefined,
|
|
6
|
+
importPath: matches[5] || undefined,
|
|
7
7
|
};
|
|
8
8
|
}
|
|
9
9
|
//# sourceMappingURL=parseImportString.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseImportString.js","sourceRoot":"","sources":["../src/parseImportString.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,iBAAiB,CAAC,YAAY,GAAG,EAAE;IACjD,MAAM,OAAO,GACX,YAAY,CAAC,KAAK,CAChB,
|
|
1
|
+
{"version":3,"file":"parseImportString.js","sourceRoot":"","sources":["../src/parseImportString.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,iBAAiB,CAAC,YAAY,GAAG,EAAE;IACjD,MAAM,OAAO,GACX,YAAY,CAAC,KAAK,CAChB,wGAAwG,CACzG,IAAI,EAAE,CAAC;IAEV,OAAO;QACL,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,SAAS;QACpC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,SAAS;QAChC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,SAAS;KACpC,CAAC;AACJ,CAAC"}
|
|
@@ -2,15 +2,19 @@ import { describe, it, expect } from '@jest/globals';
|
|
|
2
2
|
import { parseImportString } from './parseImportString.js';
|
|
3
3
|
describe(`parseImportString`, () => {
|
|
4
4
|
it(`can parse a package import`, () => {
|
|
5
|
-
expect(parseImportString('package')).toEqual({ packageName: 'package', version:
|
|
5
|
+
expect(parseImportString('package')).toEqual({ packageName: 'package', version: undefined, importPath: undefined });
|
|
6
6
|
});
|
|
7
7
|
it(`can parse a package import with a scope`, () => {
|
|
8
|
-
expect(parseImportString('@scope/package')).toEqual({
|
|
8
|
+
expect(parseImportString('@scope/package')).toEqual({
|
|
9
|
+
packageName: '@scope/package',
|
|
10
|
+
version: undefined,
|
|
11
|
+
importPath: undefined,
|
|
12
|
+
});
|
|
9
13
|
});
|
|
10
14
|
it(`can parse a package import with a scope and path`, () => {
|
|
11
15
|
expect(parseImportString('@scope/package/path/to/thing')).toEqual({
|
|
12
16
|
packageName: '@scope/package',
|
|
13
|
-
version:
|
|
17
|
+
version: undefined,
|
|
14
18
|
importPath: 'path/to/thing',
|
|
15
19
|
});
|
|
16
20
|
});
|
|
@@ -21,5 +25,19 @@ describe(`parseImportString`, () => {
|
|
|
21
25
|
importPath: 'path/to/thing',
|
|
22
26
|
});
|
|
23
27
|
});
|
|
28
|
+
it(`can handle package names with underscores`, () => {
|
|
29
|
+
expect(parseImportString('package_name')).toEqual({
|
|
30
|
+
packageName: 'package_name',
|
|
31
|
+
version: undefined,
|
|
32
|
+
importPath: undefined,
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
it(`can handle package names with dashes`, () => {
|
|
36
|
+
expect(parseImportString('package-name')).toEqual({
|
|
37
|
+
packageName: 'package-name',
|
|
38
|
+
version: undefined,
|
|
39
|
+
importPath: undefined,
|
|
40
|
+
});
|
|
41
|
+
});
|
|
24
42
|
});
|
|
25
43
|
//# sourceMappingURL=parseImportString.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseImportString.test.js","sourceRoot":"","sources":["../src/parseImportString.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"parseImportString.test.js","sourceRoot":"","sources":["../src/parseImportString.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;IACtH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC;YAClD,WAAW,EAAE,gBAAgB;YAC7B,OAAO,EAAE,SAAS;YAClB,UAAU,EAAE,SAAS;SACtB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,CAAC,iBAAiB,CAAC,8BAA8B,CAAC,CAAC,CAAC,OAAO,CAAC;YAChE,WAAW,EAAE,gBAAgB;YAC7B,OAAO,EAAE,SAAS;YAClB,UAAU,EAAE,eAAe;SAC5B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,CAAC,iBAAiB,CAAC,0EAA0E,CAAC,CAAC,CAAC,OAAO,CAAC;YAC5G,WAAW,EAAE,gBAAgB;YAC7B,OAAO,EAAE,6CAA6C;YACtD,UAAU,EAAE,eAAe;SAC5B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,MAAM,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC;YAChD,WAAW,EAAE,cAAc;YAC3B,OAAO,EAAE,SAAS;YAClB,UAAU,EAAE,SAAS;SACtB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC;YAChD,WAAW,EAAE,cAAc;YAC3B,OAAO,EAAE,SAAS;YAClB,UAAU,EAAE,SAAS;SACtB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -124,32 +124,14 @@ describe('resolveImportFromPackage', () => {
|
|
|
124
124
|
exports: './lib/tsx.js',
|
|
125
125
|
}, '', { preferSource: true })).toEqual('./src/tsx.tsx');
|
|
126
126
|
});
|
|
127
|
-
it('can
|
|
128
|
-
expect(await resolveImportFromPackage(testProject2Path, {
|
|
129
|
-
...defaultPackageDefinition,
|
|
130
|
-
browser: {
|
|
131
|
-
'lib/main.js': './lib/tsx.js',
|
|
132
|
-
},
|
|
133
|
-
main: 'lib/main.js',
|
|
134
|
-
}, '')).toEqual('./lib/main.js');
|
|
135
|
-
});
|
|
136
|
-
it('can return browser remapping (browserOnly)', async () => {
|
|
137
|
-
expect(await resolveImportFromPackage(testProject2Path, {
|
|
138
|
-
...defaultPackageDefinition,
|
|
139
|
-
browser: {
|
|
140
|
-
'lib/main.js': './lib/tsx.js',
|
|
141
|
-
},
|
|
142
|
-
main: 'lib/main.js',
|
|
143
|
-
}, '', { browserOnly: true })).toEqual('./lib/tsx.js');
|
|
144
|
-
});
|
|
145
|
-
it('can remap imports using browser overrides (preferSource, browserOnly)', async () => {
|
|
127
|
+
it('can remap imports using browser overrides (preferSource)', async () => {
|
|
146
128
|
expect(await resolveImportFromPackage(testProject2Path, {
|
|
147
129
|
...defaultPackageDefinition,
|
|
148
130
|
browser: {
|
|
149
131
|
'./lib/main.js': './lib/tsx.js',
|
|
150
132
|
},
|
|
151
133
|
main: 'lib/main.js',
|
|
152
|
-
}, '', { preferSource: true
|
|
134
|
+
}, '', { preferSource: true })).toEqual('./src/tsx.tsx');
|
|
153
135
|
});
|
|
154
136
|
it('can remap deep imports (preferSource)', async () => {
|
|
155
137
|
expect(await resolveImportFromPackage(testProject2Path, {
|
|
@@ -164,26 +146,18 @@ describe('resolveImportFromPackage', () => {
|
|
|
164
146
|
},
|
|
165
147
|
}, 'lib/tsx', { preferSource: true })).toEqual('./src/main.ts');
|
|
166
148
|
});
|
|
167
|
-
// package example:
|
|
168
|
-
it('can
|
|
169
|
-
expect(await resolveImportFromPackage(testProject2Path, {
|
|
170
|
-
...defaultPackageDefinition,
|
|
171
|
-
browser: './lib/tsx',
|
|
172
|
-
main: 'lib/main',
|
|
173
|
-
}, '', { browserOnly: true })).toEqual('./lib/tsx.js');
|
|
174
|
-
});
|
|
175
|
-
it('can handle a package with only a browser entry without browserOnly set', async () => {
|
|
149
|
+
// package example: supports color
|
|
150
|
+
it('can handle a package with only a browser entry', async () => {
|
|
176
151
|
expect(await resolveImportFromPackage(testProject2Path, {
|
|
177
152
|
...defaultPackageDefinition,
|
|
178
153
|
browser: './lib/main',
|
|
179
|
-
}, '')).toBe(
|
|
154
|
+
}, '')).toBe('./lib/main.js');
|
|
180
155
|
});
|
|
181
|
-
|
|
182
|
-
it('can return a browser entry if browserOnly is set', async () => {
|
|
156
|
+
it('can treat an import path of "." like a default package import', async () => {
|
|
183
157
|
expect(await resolveImportFromPackage(testProject2Path, {
|
|
184
158
|
...defaultPackageDefinition,
|
|
185
|
-
|
|
186
|
-
}, ''
|
|
159
|
+
main: './lib/main',
|
|
160
|
+
}, '.')).toEqual('./lib/main.js');
|
|
187
161
|
});
|
|
188
162
|
});
|
|
189
163
|
//# sourceMappingURL=resolveImportFromPackage.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveImportFromPackage.test.js","sourceRoot":"","sources":["../src/resolveImportFromPackage.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"resolveImportFromPackage.test.js","sourceRoot":"","sources":["../src/resolveImportFromPackage.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { PackageDefinitions } from './PackageDefinitions.js';
|
|
1
2
|
import type { PackageJson } from 'type-fest';
|
|
2
3
|
/**
|
|
3
4
|
* Options for the resolveImportFromPackage(Path) apis.
|
|
@@ -9,9 +10,10 @@ export interface ResolveImportFromPackageOptions {
|
|
|
9
10
|
*/
|
|
10
11
|
preferSource?: boolean;
|
|
11
12
|
/**
|
|
12
|
-
*
|
|
13
|
+
* If true, resolve the path to a physical file rather than respecting exports entries.
|
|
13
14
|
*/
|
|
14
|
-
|
|
15
|
+
ignoreExportsMap?: boolean;
|
|
16
|
+
packages?: PackageDefinitions;
|
|
15
17
|
}
|
|
16
18
|
/**
|
|
17
19
|
* Resolves a requested import path from a package located at the given path, returns a path relative
|
|
@@ -4,14 +4,14 @@ import { PackageDefinitions } from './PackageDefinitions.js';
|
|
|
4
4
|
import { getExportPathFromEntry } from './getExportPathFromEntry.js';
|
|
5
5
|
import { isExternalPackage } from './isExternalPackage.js';
|
|
6
6
|
import { safeRelativePath } from './safeRelativePath.js';
|
|
7
|
-
const definitions = PackageDefinitions.getInstance();
|
|
8
7
|
const defaultIndexPath = './index.js';
|
|
9
8
|
/**
|
|
10
9
|
* Resolves a requested import path from a package located at the given path, returns a path relative
|
|
11
10
|
* to the package, or undefined if no match was found.
|
|
12
11
|
*/
|
|
13
12
|
export async function resolveImportFromPackagePath(packagePath, requestedPath, options = {}) {
|
|
14
|
-
const
|
|
13
|
+
const { packages = PackageDefinitions.getInstance() } = options;
|
|
14
|
+
const packageDefinition = await packages.get(packagePath);
|
|
15
15
|
if (!packageDefinition) {
|
|
16
16
|
return requestedPath;
|
|
17
17
|
}
|
|
@@ -29,13 +29,13 @@ export async function resolveImportFromPackage(packagePath, packageDefinition, i
|
|
|
29
29
|
else {
|
|
30
30
|
importPath = undefined;
|
|
31
31
|
}
|
|
32
|
-
const {
|
|
32
|
+
const { packages = PackageDefinitions.getInstance() } = options;
|
|
33
33
|
const originalPackagePath = packagePath;
|
|
34
34
|
const fullRequestedPath = path.join(packagePath, importPath || '');
|
|
35
35
|
// If the requested subfolder has a package.json, treat it as a sub-package.
|
|
36
36
|
// (some npm packages have nested package.json files!)
|
|
37
37
|
if (importPath && isFolder(fullRequestedPath)) {
|
|
38
|
-
const subPackageDefinition = await
|
|
38
|
+
const subPackageDefinition = await packages.get(fullRequestedPath);
|
|
39
39
|
if (subPackageDefinition) {
|
|
40
40
|
packageDefinition = subPackageDefinition;
|
|
41
41
|
packagePath = fullRequestedPath;
|
|
@@ -46,11 +46,8 @@ export async function resolveImportFromPackage(packagePath, packageDefinition, i
|
|
|
46
46
|
let candidates = [];
|
|
47
47
|
const { exports } = packageDefinition;
|
|
48
48
|
// If we have an exports map, this takes priority in resolution.
|
|
49
|
-
if (exports) {
|
|
49
|
+
if (exports && !options.ignoreExportsMap) {
|
|
50
50
|
let exportPath;
|
|
51
|
-
if (browserOnly) {
|
|
52
|
-
getExportPathFromEntry(exports, importPath, ['browser']);
|
|
53
|
-
}
|
|
54
51
|
if (!exportPath) {
|
|
55
52
|
exportPath = getExportPathFromEntry(exports, importPath);
|
|
56
53
|
}
|
|
@@ -67,7 +64,7 @@ export async function resolveImportFromPackage(packagePath, packageDefinition, i
|
|
|
67
64
|
candidates.push(importPath);
|
|
68
65
|
}
|
|
69
66
|
const { browser } = packageDefinition;
|
|
70
|
-
if (
|
|
67
|
+
if (browser) {
|
|
71
68
|
// If the package has browser re-mappings, respect them.
|
|
72
69
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
73
70
|
let safeBrowser = {};
|
|
@@ -83,14 +80,16 @@ export async function resolveImportFromPackage(packagePath, packageDefinition, i
|
|
|
83
80
|
[safeRelativePath(packageDefinition.module || packageDefinition.main || defaultIndexPath)]: safeRelativePath(browser),
|
|
84
81
|
};
|
|
85
82
|
}
|
|
86
|
-
//
|
|
87
|
-
// or a direct import, only respect it as a valid candidate if it has a browser re-mapping.
|
|
83
|
+
// Push browser overrides into candidates.
|
|
88
84
|
candidates = candidates.reduce((p, n) => {
|
|
89
85
|
if (n) {
|
|
90
86
|
const candidate = safeRelativePath(n);
|
|
91
87
|
if (safeBrowser[candidate]) {
|
|
92
88
|
p.push(safeBrowser[candidate]);
|
|
93
89
|
}
|
|
90
|
+
else {
|
|
91
|
+
p.push(candidate);
|
|
92
|
+
}
|
|
94
93
|
}
|
|
95
94
|
return p;
|
|
96
95
|
}, []);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveImportFromPackagePath.js","sourceRoot":"","sources":["../src/resolveImportFromPackagePath.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,
|
|
1
|
+
{"version":3,"file":"resolveImportFromPackagePath.js","sourceRoot":"","sources":["../src/resolveImportFromPackagePath.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,gBAAgB,GAAG,YAAY,CAAC;AAoBtC;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,WAAmB,EACnB,aAAsB,EACtB,UAA2C,EAAE;IAE7C,MAAM,EAAE,QAAQ,GAAG,kBAAkB,CAAC,WAAW,EAAE,EAAE,GAAG,OAAO,CAAC;IAChE,MAAM,iBAAiB,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE1D,IAAI,CAAC,iBAAiB,EAAE;QACtB,OAAO,aAAa,CAAC;KACtB;IAED,OAAO,wBAAwB,CAAC,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;AAC1F,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,WAAmB,EACnB,iBAA8B,EAC9B,UAAmB,EACnB,UAA2C,EAAE;IAE7C,wBAAwB;IACxB,IAAI,UAAU,IAAI,UAAU,KAAK,GAAG,EAAE;QACpC,UAAU,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;KAC3C;SAAM;QACL,UAAU,GAAG,SAAS,CAAC;KACxB;IAED,MAAM,EAAE,QAAQ,GAAG,kBAAkB,CAAC,WAAW,EAAE,EAAE,GAAG,OAAO,CAAC;IAChE,MAAM,mBAAmB,GAAG,WAAW,CAAC;IACxC,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC;IAEnE,4EAA4E;IAC5E,sDAAsD;IACtD,IAAI,UAAU,IAAI,QAAQ,CAAC,iBAAiB,CAAC,EAAE;QAC7C,MAAM,oBAAoB,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAEnE,IAAI,oBAAoB,EAAE;YACxB,iBAAiB,GAAG,oBAAoB,CAAC;YACzC,WAAW,GAAG,iBAAiB,CAAC;YAChC,UAAU,GAAG,SAAS,CAAC;SACxB;KACF;IAED,gDAAgD;IAChD,IAAI,UAAU,GAA2B,EAAE,CAAC;IAC5C,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC;IAEtC,gEAAgE;IAChE,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;QACxC,IAAI,UAA8B,CAAC;QAEnC,IAAI,CAAC,UAAU,EAAE;YACf,UAAU,GAAG,sBAAsB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;SAC1D;QAED,IAAI,UAAU,EAAE;YACd,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SAC7B;KACF;SAAM;QACL,uDAAuD;QACvD,IAAI,CAAC,UAAU,EAAE;YACf,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;SACrF;aAAM;YACL,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SAC7B;QAED,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC;QAEtC,IAAI,OAAO,EAAE;YACX,wDAAwD;YACxD,iEAAiE;YACjE,IAAI,WAAW,GAA2B,EAAE,CAAC;YAE7C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;gBAC/B,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAyB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;oBACnF,iEAAiE;oBACjE,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,gBAAgB,CAAE,OAAkC,CAAC,GAAG,CAAC,CAAC,CAAC;oBACxF,OAAO,GAAG,CAAC;gBACb,CAAC,EAAE,EAAE,CAAC,CAAC;aACR;iBAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;gBACtC,WAAW,GAAG;oBACZ,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,MAAM,IAAI,iBAAiB,CAAC,IAAI,IAAI,gBAAgB,CAAC,CAAC,EACxF,gBAAgB,CAAC,OAAO,CAAC;iBAC5B,CAAC;aACH;YAED,0CAA0C;YAC1C,UAAU,GAAG,UAAU,CAAC,MAAM,CAAW,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBAChD,IAAI,CAAC,EAAE;oBACL,MAAM,SAAS,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;oBAEtC,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE;wBAC1B,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;qBAChC;yBAAM;wBACL,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;qBACnB;iBACF;gBACD,OAAO,CAAC,CAAC;YACX,CAAC,EAAE,EAAE,CAAC,CAAC;SACR;KACF;IAED,8DAA8D;IAC9D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC1C,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAEhC,IAAI,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,KAAK,EAAE;YAClD,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,SAAS,GAAG,KAAK,CAAC,CAAC;YAC/C,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC,CAAC;SACtD;KACF;IAED,+EAA+E;IAC/E,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAE7E,IAAI,YAAY,EAAE;QAChB,UAAU,GAAG;YACX,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,wBAAwB,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YACvF,GAAG,UAAU;SACd,CAAC;KACH;IAED,qCAAqC;IACrC,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,aAAa,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IAErH,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;QACzE,OAAO,CAAC,GAAG,CACT,6BAA6B,WAAW,kBAAkB,UAAU,mBAAmB,CAAC,CAAC,YAAY,cAAc,UAAU;aAC1H,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;aACtB,IAAI,CAAC,IAAI,CAAC,EAAE,CAChB,CAAC;KACH;IAED,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,SAAS,CAAC;KAClB;IAED,OAAO,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,IAAI,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACjH,CAAC"}
|
package/lib/tsdoc-metadata.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ms-cloudpack/package-utilities",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.15.0",
|
|
4
4
|
"description": "Utilities for resolving/parsing packages and their imports.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"@ms-cloudpack/scripts": "*",
|
|
25
25
|
"@ms-cloudpack/eslint-config-base": "*",
|
|
26
26
|
"@types/resolve": "1.20.2",
|
|
27
|
-
"@babel/types": "7.19.
|
|
27
|
+
"@babel/types": "7.19.4"
|
|
28
28
|
},
|
|
29
29
|
"scripts": {
|
|
30
30
|
"api:update": "cloudpack-scripts api-update",
|