@flex-development/mlly 1.0.0-alpha.15 → 1.0.0-alpha.16
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.md +181 -0
- package/README.md +1 -0
- package/dist/enums/assert-type.mjs +1 -7
- package/dist/enums/format.mjs +1 -10
- package/dist/enums/index.mjs +0 -1
- package/dist/enums/kind-specifier-syntax.mjs +1 -7
- package/dist/enums/kind-specifier.mjs +1 -8
- package/dist/enums/kind-statement-syntax.mjs +1 -15
- package/dist/enums/kind-statement.mjs +1 -8
- package/dist/index.mjs.map +5 -2
- package/dist/interfaces/import-dynamic.d.mts +1 -3
- package/dist/interfaces/import-static.d.mts +1 -3
- package/dist/interfaces/index.mjs +0 -1
- package/dist/interfaces/options-find-subpath.d.mts +4 -3
- package/dist/interfaces/options-get-format.d.mts +7 -7
- package/dist/interfaces/options-get-source.d.mts +5 -4
- package/dist/interfaces/options-parse-module-id.d.mts +4 -3
- package/dist/interfaces/options-parse-subpath.d.mts +4 -3
- package/dist/interfaces/options-resolve-alias.d.mts +5 -5
- package/dist/interfaces/options-resolve-module.d.mts +6 -6
- package/dist/internal/dequote.d.mts +14 -0
- package/dist/internal/dequote.mjs +6 -0
- package/dist/internal/format-type-map.d.mts +2 -0
- package/dist/internal/format-type-map.mjs +0 -1
- package/dist/internal/get-specifier-kind.d.mts +2 -0
- package/dist/internal/get-specifier-kind.mjs +3 -7
- package/dist/internal/get-subpaths.d.mts +5 -2
- package/dist/internal/get-subpaths.mjs +2 -5
- package/dist/internal/regex-encoded-sep.d.mts +2 -0
- package/dist/internal/regex-encoded-sep.mjs +0 -1
- package/dist/internal/regex-internal-specifier.d.mts +2 -0
- package/dist/internal/regex-internal-specifier.mjs +0 -1
- package/dist/internal/regex-invalid-segment.d.mts +2 -0
- package/dist/internal/regex-invalid-segment.mjs +4 -7
- package/dist/internal/regex-package-name.d.mts +2 -0
- package/dist/internal/regex-package-name.mjs +0 -1
- package/dist/internal/regex-package-path.d.mts +2 -0
- package/dist/internal/regex-package-path.mjs +0 -1
- package/dist/internal/resolver.d.mts +5 -3
- package/dist/internal/resolver.mjs +115 -130
- package/dist/internal/validate-array-set.d.mts +7 -5
- package/dist/internal/validate-array-set.mjs +5 -5
- package/dist/internal/validate-boolean.d.mts +4 -2
- package/dist/internal/validate-boolean.mjs +3 -3
- package/dist/internal/validate-map.d.mts +10 -7
- package/dist/internal/validate-map.mjs +5 -5
- package/dist/internal/validate-object.d.mts +9 -9
- package/dist/internal/validate-object.mjs +3 -3
- package/dist/internal/validate-set.d.mts +7 -5
- package/dist/internal/validate-set.mjs +5 -5
- package/dist/internal/validate-string.d.mts +5 -2
- package/dist/internal/validate-string.mjs +3 -3
- package/dist/internal/validate-url-string.d.mts +4 -2
- package/dist/internal/validate-url-string.mjs +3 -3
- package/dist/types/fn-change-ext.d.mts +7 -4
- package/dist/types/index.mjs +0 -1
- package/dist/utils/compare-subpaths.mjs +5 -10
- package/dist/utils/compare-subpaths.mjs.map +6 -3
- package/dist/utils/conditions.mjs.map +5 -2
- package/dist/utils/detect-syntax.mjs +1 -2
- package/dist/utils/detect-syntax.mjs.map +6 -3
- package/dist/utils/extension-format-map.mjs.map +5 -2
- package/dist/utils/extract-statements.mjs +6 -7
- package/dist/utils/extract-statements.mjs.map +6 -3
- package/dist/utils/fill-modules.mjs +43 -46
- package/dist/utils/fill-modules.mjs.map +9 -4
- package/dist/utils/find-dynamic-imports.mjs +23 -26
- package/dist/utils/find-dynamic-imports.mjs.map +9 -4
- package/dist/utils/find-exports.mjs +15 -20
- package/dist/utils/find-exports.mjs.map +9 -4
- package/dist/utils/find-requires.mjs +5 -5
- package/dist/utils/find-requires.mjs.map +9 -4
- package/dist/utils/find-static-imports.mjs +17 -21
- package/dist/utils/find-static-imports.mjs.map +9 -4
- package/dist/utils/find-subpath.d.mts +3 -3
- package/dist/utils/find-subpath.mjs +52 -74
- package/dist/utils/find-subpath.mjs.map +10 -4
- package/dist/utils/get-format.mjs +18 -33
- package/dist/utils/get-format.mjs.map +9 -4
- package/dist/utils/get-source.d.mts +3 -2
- package/dist/utils/get-source.mjs +10 -19
- package/dist/utils/get-source.mjs.map +6 -3
- package/dist/utils/has-cjs-syntax.mjs.map +5 -2
- package/dist/utils/has-esm-syntax.mjs.map +5 -2
- package/dist/utils/index.d.mts +2 -0
- package/dist/utils/index.mjs +46 -42
- package/dist/utils/index.mjs.map +9 -4
- package/dist/utils/is-absolute-specifier.mjs +5 -6
- package/dist/utils/is-absolute-specifier.mjs.map +6 -3
- package/dist/utils/is-bare-specifier.mjs +2 -4
- package/dist/utils/is-bare-specifier.mjs.map +6 -3
- package/dist/utils/is-directory.mjs +14 -0
- package/dist/utils/is-directory.mjs.map +9 -0
- package/dist/utils/is-exports-sugar.d.mts +3 -2
- package/dist/utils/is-exports-sugar.mjs +16 -13
- package/dist/utils/is-exports-sugar.mjs.map +6 -3
- package/dist/utils/is-file.mjs +14 -0
- package/dist/utils/is-file.mjs.map +9 -0
- package/dist/utils/is-relative-specifier.d.mts +0 -1
- package/dist/utils/is-relative-specifier.mjs +2 -4
- package/dist/utils/is-relative-specifier.mjs.map +6 -3
- package/dist/utils/lookup-package-scope.d.mts +1 -1
- package/dist/utils/lookup-package-scope.mjs +4 -8
- package/dist/utils/lookup-package-scope.mjs.map +6 -3
- package/dist/utils/parse-data-url.mjs +4 -4
- package/dist/utils/parse-data-url.mjs.map +6 -3
- package/dist/utils/parse-module-id.mjs +22 -24
- package/dist/utils/parse-module-id.mjs.map +10 -4
- package/dist/utils/parse-subpath.d.mts +3 -2
- package/dist/utils/parse-subpath.mjs +40 -55
- package/dist/utils/parse-subpath.mjs.map +9 -4
- package/dist/utils/pattern-character.mjs.map +5 -2
- package/dist/utils/read-package-json.mjs +12 -9
- package/dist/utils/read-package-json.mjs.map +6 -3
- package/dist/utils/resolve-alias.mjs +28 -34
- package/dist/utils/resolve-alias.mjs.map +10 -4
- package/dist/utils/resolve-aliases.mjs +15 -17
- package/dist/utils/resolve-aliases.mjs.map +6 -3
- package/dist/utils/resolve-extensions.mjs.map +5 -2
- package/dist/utils/resolve-module.mjs +10 -26
- package/dist/utils/resolve-module.mjs.map +6 -3
- package/dist/utils/resolve-modules.mjs +12 -15
- package/dist/utils/resolve-modules.mjs.map +6 -3
- package/dist/utils/to-absolute-specifier.mjs.map +5 -2
- package/dist/utils/to-bare-specifier.mjs +18 -38
- package/dist/utils/to-bare-specifier.mjs.map +6 -3
- package/dist/utils/to-data-url.mjs +1 -5
- package/dist/utils/to-data-url.mjs.map +6 -3
- package/dist/utils/to-node-url.mjs +1 -4
- package/dist/utils/to-node-url.mjs.map +6 -3
- package/dist/utils/to-relative-specifier.mjs +2 -16
- package/dist/utils/to-relative-specifier.mjs.map +6 -3
- package/dist/utils/to-url.mjs +1 -5
- package/dist/utils/to-url.mjs.map +6 -3
- package/dist/utils/validate-assertions.d.mts +2 -2
- package/dist/utils/validate-assertions.mjs +14 -21
- package/dist/utils/validate-assertions.mjs.map +9 -4
- package/dist/utils/validate-exports.d.mts +3 -2
- package/dist/utils/validate-exports.mjs +25 -24
- package/dist/utils/validate-exports.mjs.map +6 -3
- package/package.json +89 -81
- package/src/interfaces/import-dynamic.ts +1 -3
- package/src/interfaces/import-static.ts +1 -5
- package/src/interfaces/options-find-subpath.ts +4 -3
- package/src/interfaces/options-get-format.ts +7 -7
- package/src/interfaces/options-get-source.ts +5 -4
- package/src/interfaces/options-parse-module-id.ts +4 -3
- package/src/interfaces/options-parse-subpath.ts +4 -3
- package/src/interfaces/options-resolve-alias.ts +5 -5
- package/src/interfaces/options-resolve-module.ts +6 -6
- package/src/internal/dequote.ts +18 -0
- package/src/internal/format-type-map.ts +2 -0
- package/src/internal/get-specifier-kind.ts +7 -4
- package/src/internal/get-subpaths.ts +7 -5
- package/src/internal/regex-encoded-sep.ts +2 -0
- package/src/internal/regex-internal-specifier.ts +2 -0
- package/src/internal/regex-invalid-segment.ts +2 -0
- package/src/internal/regex-package-name.ts +2 -0
- package/src/internal/regex-package-path.ts +2 -0
- package/src/internal/resolver.ts +71 -49
- package/src/internal/validate-array-set.ts +10 -7
- package/src/internal/validate-boolean.ts +6 -3
- package/src/internal/validate-map.ts +12 -9
- package/src/internal/validate-object.ts +10 -10
- package/src/internal/validate-set.ts +9 -9
- package/src/internal/validate-string.ts +7 -3
- package/src/internal/validate-url-string.ts +6 -3
- package/src/types/fn-change-ext.ts +7 -7
- package/src/utils/extract-statements.ts +11 -7
- package/src/utils/fill-modules.ts +70 -62
- package/src/utils/find-dynamic-imports.ts +6 -6
- package/src/utils/find-exports.ts +19 -29
- package/src/utils/find-requires.ts +6 -6
- package/src/utils/find-static-imports.ts +11 -14
- package/src/utils/find-subpath.ts +140 -139
- package/src/utils/get-format.ts +27 -21
- package/src/utils/get-source.ts +5 -5
- package/src/utils/index.ts +2 -0
- package/src/utils/is-bare-specifier.ts +2 -1
- package/src/{internal → utils}/is-directory.ts +1 -1
- package/src/utils/is-exports-sugar.ts +16 -9
- package/src/{internal → utils}/is-file.ts +1 -1
- package/src/utils/is-relative-specifier.ts +5 -6
- package/src/utils/lookup-package-scope.ts +2 -2
- package/src/utils/parse-data-url.ts +3 -3
- package/src/utils/parse-module-id.ts +16 -8
- package/src/utils/parse-subpath.ts +32 -19
- package/src/utils/read-package-json.ts +13 -6
- package/src/utils/resolve-alias.ts +19 -15
- package/src/utils/resolve-aliases.ts +25 -25
- package/src/utils/resolve-module.ts +4 -5
- package/src/utils/resolve-modules.ts +19 -21
- package/src/utils/to-bare-specifier.ts +12 -7
- package/src/utils/to-relative-specifier.ts +2 -1
- package/src/utils/validate-assertions.ts +12 -7
- package/src/utils/validate-exports.ts +25 -18
- package/dist/enums/assert-type.mjs.map +0 -6
- package/dist/enums/format.mjs.map +0 -6
- package/dist/enums/index.mjs.map +0 -6
- package/dist/enums/kind-specifier-syntax.mjs.map +0 -6
- package/dist/enums/kind-specifier.mjs.map +0 -6
- package/dist/enums/kind-statement-syntax.mjs.map +0 -6
- package/dist/enums/kind-statement.mjs.map +0 -6
- package/dist/interfaces/index.mjs.map +0 -6
- package/dist/internal/escape-reg-exp.d.mts +0 -16
- package/dist/internal/escape-reg-exp.mjs +0 -10
- package/dist/internal/escape-reg-exp.mjs.map +0 -6
- package/dist/internal/format-type-map.mjs.map +0 -6
- package/dist/internal/get-specifier-kind.mjs.map +0 -6
- package/dist/internal/get-subpaths.mjs.map +0 -6
- package/dist/internal/is-array-index.d.mts +0 -15
- package/dist/internal/is-array-index.mjs +0 -9
- package/dist/internal/is-array-index.mjs.map +0 -6
- package/dist/internal/is-directory.mjs +0 -16
- package/dist/internal/is-directory.mjs.map +0 -6
- package/dist/internal/is-file.mjs +0 -16
- package/dist/internal/is-file.mjs.map +0 -6
- package/dist/internal/is-function.d.mts +0 -12
- package/dist/internal/is-function.mjs +0 -8
- package/dist/internal/is-function.mjs.map +0 -6
- package/dist/internal/regex-encoded-sep.mjs.map +0 -6
- package/dist/internal/regex-internal-specifier.mjs.map +0 -6
- package/dist/internal/regex-invalid-segment.mjs.map +0 -6
- package/dist/internal/regex-package-name.mjs.map +0 -6
- package/dist/internal/regex-package-path.mjs.map +0 -6
- package/dist/internal/resolver.mjs.map +0 -6
- package/dist/internal/validate-array-set.mjs.map +0 -6
- package/dist/internal/validate-boolean.mjs.map +0 -6
- package/dist/internal/validate-map.mjs.map +0 -6
- package/dist/internal/validate-object.mjs.map +0 -6
- package/dist/internal/validate-set.mjs.map +0 -6
- package/dist/internal/validate-string.mjs.map +0 -6
- package/dist/internal/validate-url-string.mjs.map +0 -6
- package/dist/types/index.mjs.map +0 -6
- package/src/internal/escape-reg-exp.ts +0 -24
- package/src/internal/is-array-index.ts +0 -28
- package/src/internal/is-function.ts +0 -16
- /package/dist/{internal → utils}/is-directory.d.mts +0 -0
- /package/dist/{internal → utils}/is-file.d.mts +0 -0
package/dist/utils/index.mjs.map
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": [
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
"sources": [
|
|
4
|
+
"src/utils/index.ts"
|
|
5
|
+
],
|
|
6
|
+
"sourceRoot": "https:/github.com/flex-development/mlly/blob/1.0.0-alpha.16",
|
|
7
|
+
"mappings": "AAKA,SAAoB,WAAXA,gBAAkC;AAC3C,SAAoB,WAAXA,gBAA6B;AACtC,SAAoB,WAAXA,gBAA+B;AACxC,SAAoB,WAAXA,gBAAuC;AAChD,SAAoB,WAAXA,gBAAoC;AAC7C,SAAoB,WAAXA,gBAA8B;AACvC,SAAoB,WAAXA,gBAAqC;AAC9C,SAAoB,WAAXA,gBAA8B;AACvC,SAAoB,WAAXA,iBAA+B;AACxC,SAAoB,WAAXA,iBAAoC;AAC7C,SAAoB,WAAXA,iBAA8B;AACvC,SAAoB,WAAXA,iBAA4B;AACrC,SAAoB,WAAXA,iBAA4B;AACrC,SAAoB,WAAXA,iBAA+B;AACxC,SAAoB,WAAXA,iBAA+B;AACxC,SAAoB,WAAXA,iBAAsC;AAC/C,SAAoB,WAAXA,iBAAkC;AAC3C,SAAoB,WAAXA,iBAA8B;AACvC,SAAoB,WAAXA,iBAAiC;AAC1C,SAAoB,WAAXA,iBAAyB;AAClC,SAAoB,WAAXA,iBAAsC;AAC/C,SAAoB,WAAXA,iBAAqC;AAC9C,SAAoB,WAAXA,iBAA+B;AACxC,SAAoB,WAAXA,iBAAgC;AACzC,SAAoB,WAAXA,iBAA+B;AACxC,SAAoB,WAAXA,iBAAoC;AAC7C,SAAoB,WAAXA,iBAAkC;AAC3C,SAAoB,WAAXA,iBAA+B;AACxC,SAAoB,WAAXA,iBAAiC;AAC1C,SAAoB,WAAXA,iBAAqC;AAC9C,SAAoB,WAAXA,iBAAgC;AACzC,SAAoB,WAAXA,iBAAiC;AAC1C,SAAoB,WAAXA,iBAAsC;AAC/C,SAAoB,WAAXA,iBAAkC;AAC3C,SAAoB,WAAXA,iBAA4B;AACrC,SAAoB,WAAXA,iBAA4B;AACrC,SAAoB,WAAXA,iBAAsC;AAC/C,SAAoB,WAAXA,iBAAwB;AACjC,SAAoB,WAAXA,iBAAqC;AAC9C,SAAoB,WAAXA,iBAAkC;",
|
|
8
|
+
"names": [
|
|
9
|
+
"default"
|
|
10
|
+
]
|
|
11
|
+
}
|
|
@@ -3,20 +3,19 @@ import pathe from "@flex-development/pathe";
|
|
|
3
3
|
import { URL } from "node:url";
|
|
4
4
|
const isAbsoluteSpecifier = (specifier) => {
|
|
5
5
|
validateString(specifier, "specifier");
|
|
6
|
-
let absolute =
|
|
7
|
-
switch (
|
|
6
|
+
let absolute = !1;
|
|
7
|
+
switch (!0) {
|
|
8
8
|
case pathe.isAbsolute(specifier):
|
|
9
|
-
absolute =
|
|
9
|
+
absolute = !0;
|
|
10
10
|
break;
|
|
11
11
|
case specifier.startsWith("file:"):
|
|
12
12
|
try {
|
|
13
|
-
new URL(specifier);
|
|
14
|
-
absolute = true;
|
|
13
|
+
new URL(specifier), absolute = !0;
|
|
15
14
|
} catch {
|
|
16
15
|
}
|
|
17
16
|
break;
|
|
18
17
|
default:
|
|
19
|
-
absolute =
|
|
18
|
+
absolute = !1;
|
|
20
19
|
}
|
|
21
20
|
return absolute;
|
|
22
21
|
};
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": [
|
|
4
|
-
|
|
3
|
+
"sources": [
|
|
4
|
+
"src/utils/is-absolute-specifier.ts"
|
|
5
|
+
],
|
|
6
|
+
"sourceRoot": "https:/github.com/flex-development/mlly/blob/1.0.0-alpha.16",
|
|
7
|
+
"mappings": "AAKA,OAAO,oBAAoB;AAE3B,OAAO,WAAW;AAClB,SAAS,WAAW;AAgBpB,MAAM,sBAAsB,CAAC,cAA+B;AAC1D,iBAAe,WAAW,WAAW;AAOrC,MAAI,WAAoB;AAGxB,UAAQ,IAAM;AAAA,IACZ,KAAK,MAAM,WAAW,SAAS;AAC7B,iBAAW;AACX;AAAA,IACF,KAAK,UAAU,WAAW,OAAO;AAC/B,UAAI;AACF,YAAI,IAAI,SAAS,GACjB,WAAW;AAAA,MACb,QAA6B;AAAA,MAAC;AAC9B;AAAA,IACF;AACE,iBAAW;AAAA,EACf;AAEA,SAAO;AACT;AAEA,IAAO,gCAAQ;",
|
|
5
8
|
"names": []
|
|
6
|
-
}
|
|
9
|
+
}
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import validateString from "../internal/validate-string.mjs";
|
|
2
|
+
import { trim } from "@flex-development/tutils";
|
|
2
3
|
import isAbsoluteSpecifier from "./is-absolute-specifier.mjs";
|
|
3
4
|
import isRelativeSpecifier from "./is-relative-specifier.mjs";
|
|
4
|
-
const isBareSpecifier = (specifier) =>
|
|
5
|
-
validateString(specifier, "specifier");
|
|
6
|
-
return specifier.trim().length > 0 && !isAbsoluteSpecifier(specifier) && !isRelativeSpecifier(specifier);
|
|
7
|
-
};
|
|
5
|
+
const isBareSpecifier = (specifier) => (validateString(specifier, "specifier"), !!trim(specifier).length && !isAbsoluteSpecifier(specifier) && !isRelativeSpecifier(specifier));
|
|
8
6
|
var is_bare_specifier_default = isBareSpecifier;
|
|
9
7
|
export {
|
|
10
8
|
is_bare_specifier_default as default
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": [
|
|
4
|
-
|
|
3
|
+
"sources": [
|
|
4
|
+
"src/utils/is-bare-specifier.ts"
|
|
5
|
+
],
|
|
6
|
+
"sourceRoot": "https:/github.com/flex-development/mlly/blob/1.0.0-alpha.16",
|
|
7
|
+
"mappings": "AAKA,OAAO,oBAAoB;AAE3B,SAAS,YAAY;AACrB,OAAO,yBAAyB;AAChC,OAAO,yBAAyB;AAgBhC,MAAM,kBAAkB,CAAC,eACvB,eAAe,WAAW,WAAW,GAGnC,CAAC,CAAC,KAAK,SAAS,EAAE,UAClB,CAAC,oBAAoB,SAAS,KAC9B,CAAC,oBAAoB,SAAS;AAIlC,IAAO,4BAAQ;",
|
|
5
8
|
"names": []
|
|
6
|
-
}
|
|
9
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import validateURLString from "../internal/validate-url-string.mjs";
|
|
2
|
+
import fs from "node:fs";
|
|
3
|
+
const isDirectory = (id) => {
|
|
4
|
+
try {
|
|
5
|
+
return validateURLString(id, "id"), fs.statSync(id, { throwIfNoEntry: !1 })?.isDirectory() ?? !1;
|
|
6
|
+
} catch {
|
|
7
|
+
return !1;
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
var is_directory_default = isDirectory;
|
|
11
|
+
export {
|
|
12
|
+
is_directory_default as default
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=is-directory.mjs.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": [
|
|
4
|
+
"src/utils/is-directory.ts"
|
|
5
|
+
],
|
|
6
|
+
"sourceRoot": "https:/github.com/flex-development/mlly/blob/1.0.0-alpha.16",
|
|
7
|
+
"mappings": "AAKA,OAAO,uBAAuB;AAE9B,OAAO,QAAQ;AAQf,MAAM,cAAc,CAAC,OAA0B;AAC7C,MAAI;AACF,6BAAkB,IAAI,IAAI,GACnB,GAAG,SAAS,IAAI,EAAE,gBAAgB,GAAM,CAAC,GAAG,YAAY,KAAK;AAAA,EACtE,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAEA,IAAO,uBAAQ;",
|
|
8
|
+
"names": []
|
|
9
|
+
}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import type { ModuleId } from '../types/index.mjs';
|
|
6
6
|
import type { Exports } from '@flex-development/pkg-types';
|
|
7
|
+
import { type Nilable } from '@flex-development/tutils';
|
|
7
8
|
/**
|
|
8
9
|
* Checks if the given package [`exports`][1] value is using [exports sugar][2].
|
|
9
10
|
*
|
|
@@ -13,7 +14,7 @@ import type { Exports } from '@flex-development/pkg-types';
|
|
|
13
14
|
* @see {@linkcode Exports}
|
|
14
15
|
* @see {@linkcode ModuleId}
|
|
15
16
|
*
|
|
16
|
-
* @param {Exports
|
|
17
|
+
* @param {Nilable<Exports>} exports - Package `exports`
|
|
17
18
|
* @param {ModuleId} pkg - URL of relevant `package.json` file
|
|
18
19
|
* @param {ModuleId} parent - URL of module to resolve from
|
|
19
20
|
* @return {boolean} `true` if `exports` is using exports sugar
|
|
@@ -21,5 +22,5 @@ import type { Exports } from '@flex-development/pkg-types';
|
|
|
21
22
|
* instance of {@linkcode URL} or a string, or if `exports` configuration or
|
|
22
23
|
* schema is invalid
|
|
23
24
|
*/
|
|
24
|
-
declare const isExportsSugar: (exports: Exports
|
|
25
|
+
declare const isExportsSugar: (exports: Nilable<Exports>, pkg: ModuleId, parent: ModuleId) => boolean;
|
|
25
26
|
export default isExportsSugar;
|
|
@@ -1,21 +1,24 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
at,
|
|
3
|
+
cast,
|
|
4
|
+
DOT,
|
|
5
|
+
isArray,
|
|
6
|
+
isObjectCurly,
|
|
7
|
+
isString
|
|
8
|
+
} from "@flex-development/tutils";
|
|
2
9
|
import validateExports from "./validate-exports.mjs";
|
|
3
10
|
const isExportsSugar = (exports, pkg, parent) => {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
case
|
|
8
|
-
|
|
9
|
-
sugar = true;
|
|
11
|
+
let sugar = !1;
|
|
12
|
+
switch (!0) {
|
|
13
|
+
case isArray(exports):
|
|
14
|
+
case isString(exports):
|
|
15
|
+
sugar = !0;
|
|
10
16
|
break;
|
|
11
|
-
case
|
|
12
|
-
|
|
13
|
-
sugar = false;
|
|
17
|
+
case !isObjectCurly(exports):
|
|
18
|
+
sugar = !1;
|
|
14
19
|
break;
|
|
15
20
|
default:
|
|
16
|
-
exports = exports;
|
|
17
|
-
validateExports(exports, pkg, parent);
|
|
18
|
-
sugar = !(((_a = Object.getOwnPropertyNames(exports)[0]) == null ? void 0 : _a.startsWith(".")) ?? true);
|
|
21
|
+
exports = cast(exports), validateExports(exports, pkg, parent), sugar = !at(Object.getOwnPropertyNames(exports), 0, DOT).startsWith(DOT);
|
|
19
22
|
}
|
|
20
23
|
return sugar;
|
|
21
24
|
};
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": [
|
|
4
|
-
|
|
3
|
+
"sources": [
|
|
4
|
+
"src/utils/is-exports-sugar.ts"
|
|
5
|
+
],
|
|
6
|
+
"sourceRoot": "https:/github.com/flex-development/mlly/blob/1.0.0-alpha.16",
|
|
7
|
+
"mappings": "AAQA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAEK;AACP,OAAO,qBAAqB;AAmB5B,MAAM,iBAAiB,CACrB,SACA,KACA,WACY;AAQZ,MAAI,QAAiB;AAGrB,UAAQ,IAAM;AAAA,IACZ,KAAK,QAAQ,OAAO;AAAA,IACpB,KAAK,SAAS,OAAO;AACnB,cAAQ;AACR;AAAA,IACF,KAAK,CAAC,cAAc,OAAO;AACzB,cAAQ;AACR;AAAA,IACF;AACE,gBAAU,KAA8B,OAAO,GAW/C,gBAAgB,SAAS,KAAK,MAAM,GAGpC,QAAQ,CAAC,GAAG,OAAO,oBAAoB,OAAO,GAAG,GAAG,GAAG,EAAE,WAAW,GAAG;AAAA,EAC3E;AAEA,SAAO;AACT;AAEA,IAAO,2BAAQ;",
|
|
5
8
|
"names": []
|
|
6
|
-
}
|
|
9
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import validateURLString from "../internal/validate-url-string.mjs";
|
|
2
|
+
import fs from "node:fs";
|
|
3
|
+
const isFile = (id) => {
|
|
4
|
+
try {
|
|
5
|
+
return validateURLString(id, "id"), fs.statSync(id, { throwIfNoEntry: !1 })?.isFile() ?? !1;
|
|
6
|
+
} catch {
|
|
7
|
+
return !1;
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
var is_file_default = isFile;
|
|
11
|
+
export {
|
|
12
|
+
is_file_default as default
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=is-file.mjs.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": [
|
|
4
|
+
"src/utils/is-file.ts"
|
|
5
|
+
],
|
|
6
|
+
"sourceRoot": "https:/github.com/flex-development/mlly/blob/1.0.0-alpha.16",
|
|
7
|
+
"mappings": "AAKA,OAAO,uBAAuB;AAE9B,OAAO,QAAQ;AAQf,MAAM,SAAS,CAAC,OAA0B;AACxC,MAAI;AACF,6BAAkB,IAAI,IAAI,GACnB,GAAG,SAAS,IAAI,EAAE,gBAAgB,GAAM,CAAC,GAAG,OAAO,KAAK;AAAA,EACjE,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAEA,IAAO,kBAAQ;",
|
|
8
|
+
"names": []
|
|
9
|
+
}
|
|
@@ -14,7 +14,6 @@
|
|
|
14
14
|
*
|
|
15
15
|
* @param {string} specifier - Specifier to evaluate
|
|
16
16
|
* @return {boolean} `true` if `specifier` is relative specifier
|
|
17
|
-
* @throws {NodeError<TypeError>} If `specifier` is not a string
|
|
18
17
|
*/
|
|
19
18
|
declare const isRelativeSpecifier: (specifier: string) => boolean;
|
|
20
19
|
export default isRelativeSpecifier;
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import validateString from "../internal/validate-string.mjs";
|
|
2
2
|
import pathe from "@flex-development/pathe";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
return specifier.startsWith(".") ? specifier.length === 1 || specifier[1] === pathe.sep ? true : specifier[1] === "." && (specifier.length === 2 || specifier[2] === pathe.sep) : false;
|
|
6
|
-
};
|
|
3
|
+
import { DOT, at } from "@flex-development/tutils";
|
|
4
|
+
const isRelativeSpecifier = (specifier) => (validateString(specifier, "specifier"), specifier.startsWith(DOT) ? specifier.length === 1 || at(specifier, 1) === pathe.sep ? !0 : at(specifier, 1) === DOT && (specifier.length === 2 || at(specifier, 2) === pathe.sep) : !1);
|
|
7
5
|
var is_relative_specifier_default = isRelativeSpecifier;
|
|
8
6
|
export {
|
|
9
7
|
is_relative_specifier_default as default
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": [
|
|
4
|
-
|
|
3
|
+
"sources": [
|
|
4
|
+
"src/utils/is-relative-specifier.ts"
|
|
5
|
+
],
|
|
6
|
+
"sourceRoot": "https:/github.com/flex-development/mlly/blob/1.0.0-alpha.16",
|
|
7
|
+
"mappings": "AAKA,OAAO,oBAAoB;AAC3B,OAAO,WAAW;AAClB,SAAS,KAAK,UAAU;AAexB,MAAM,sBAAsB,CAAC,eAC3B,eAAe,WAAW,WAAW,GAE9B,UAAU,WAAW,GAAG,IAC3B,UAAU,WAAW,KAAK,GAAG,WAAW,CAAC,MAAM,MAAM,MACnD,KACA,GAAG,WAAW,CAAC,MAAM,QACpB,UAAU,WAAW,KAAK,GAAG,WAAW,CAAC,MAAM,MAAM,OACxD;AAGN,IAAO,gCAAQ;",
|
|
5
8
|
"names": []
|
|
6
|
-
}
|
|
9
|
+
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import type { PackageScope } from '../interfaces/index.mjs';
|
|
6
6
|
import type { ModuleId } from '../types/index.mjs';
|
|
7
|
-
import type
|
|
7
|
+
import { type Nullable } from '@flex-development/tutils';
|
|
8
8
|
/**
|
|
9
9
|
* Finds a `package.json` file for the given module `id`. Ends the search at the
|
|
10
10
|
* given end point **after** checking for a `package.json` file.
|
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
import validateURLString from "../internal/validate-url-string.mjs";
|
|
2
2
|
import pathe from "@flex-development/pathe";
|
|
3
|
+
import { DOT } from "@flex-development/tutils";
|
|
3
4
|
import { pathToFileURL } from "node:url";
|
|
4
5
|
import readPackageJson from "./read-package-json.mjs";
|
|
5
6
|
import toURL from "./to-url.mjs";
|
|
6
7
|
const lookupPackageScope = (id, stopdir = pathe.sep, specifier, parent) => {
|
|
7
|
-
validateURLString(id, "id");
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
let dir = toURL(id).pathname;
|
|
11
|
-
let scope = null;
|
|
12
|
-
while (dir && !dir.endsWith("node_modules")) {
|
|
13
|
-
if (pathe.relative(stopdir, dir).startsWith("../"))
|
|
14
|
-
break;
|
|
8
|
+
validateURLString(id, "id"), validateURLString(stopdir, "stopdir"), stopdir = toURL(stopdir).pathname;
|
|
9
|
+
let dir = toURL(id).pathname, scope = null;
|
|
10
|
+
for (; dir && !dir.endsWith("node_modules") && !pathe.relative(stopdir, dir).startsWith(DOT.repeat(2) + "/"); ) {
|
|
15
11
|
const pkgjson = readPackageJson(
|
|
16
12
|
dir,
|
|
17
13
|
specifier,
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": [
|
|
4
|
-
|
|
3
|
+
"sources": [
|
|
4
|
+
"src/utils/lookup-package-scope.ts"
|
|
5
|
+
],
|
|
6
|
+
"sourceRoot": "https:/github.com/flex-development/mlly/blob/1.0.0-alpha.16",
|
|
7
|
+
"mappings": "AAMA,OAAO,uBAAuB;AAG9B,OAAO,WAAW;AAElB,SAAS,WAA0B;AACnC,SAAS,qBAAqB;AAC9B,OAAO,qBAAqB;AAC5B,OAAO,WAAW;AAmBlB,MAAM,qBAAqB,CACzB,IACA,UAAoB,MAAM,KAC1B,WACA,WAC2B;AAC3B,oBAAkB,IAAI,IAAI,GAC1B,kBAAkB,SAAS,SAAS,GAGpC,UAAU,MAAM,OAAO,EAAE;AAOzB,MAAI,MAAc,MAAM,EAAE,EAAE,UAOxB,QAAgC;AAGpC,SAAO,OAAO,CAAC,IAAI,SAAS,cAAc,KAEpC,OAAM,SAAS,SAAS,GAAG,EAAE,WAAW,IAAI,OAAO,CAAC,IAAI,GAAG,KAFpB;AAS3C,UAAM,UAAiC;AAAA,MACrC;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAGA,QAAI,SAAS;AACX,cAAQ;AAAA,QACN,KAAK,cAAe,MAAM,MAAM,QAAQ,QAAQ,IAAI,GAAG,GAAG,CAAE,EAAE;AAAA,QAC9D,KAAK,cAAc,MAAM,KAAK,KAAK,cAAc,CAAC,EAAE;AAAA,QACpD;AAAA,MACF;AAEA;AAAA,IACF;AAGA,QAAI,QAAQ,QAAQ,QAAQ,OAAO,EAAE;AAAG;AAGxC,UAAM,MAAM,QAAQ,GAAG;AAAA,EACzB;AAEA,SAAO;AACT;AAEA,IAAO,+BAAQ;",
|
|
5
8
|
"names": []
|
|
6
|
-
}
|
|
9
|
+
}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ERR_INVALID_URL
|
|
3
3
|
} from "@flex-development/errnode";
|
|
4
|
+
import { cast, trim } from "@flex-development/tutils";
|
|
4
5
|
import toURL from "./to-url.mjs";
|
|
5
6
|
const parseDataURL = (url) => {
|
|
6
7
|
url = toURL(url);
|
|
7
|
-
const
|
|
8
|
-
const match = regex.exec(url.href);
|
|
8
|
+
const match = /^(?<protocol>data:)(?<mime>[^/]+\/[^,;]+)[^,]*?(?:;(?<base64>base64))?,(?<data>[\S\s]*?)$/.exec(url.href);
|
|
9
9
|
if (!match)
|
|
10
10
|
throw new ERR_INVALID_URL(url.href);
|
|
11
11
|
const [, , mime = "", base64, data = ""] = match;
|
|
12
12
|
return {
|
|
13
13
|
base64: !!base64,
|
|
14
|
-
data:
|
|
14
|
+
data: trim(data),
|
|
15
15
|
href: url.href,
|
|
16
16
|
mime,
|
|
17
17
|
pathname: url.pathname,
|
|
18
|
-
protocol: url.protocol
|
|
18
|
+
protocol: cast(url.protocol)
|
|
19
19
|
};
|
|
20
20
|
};
|
|
21
21
|
var parse_data_url_default = parseDataURL;
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": [
|
|
4
|
-
|
|
3
|
+
"sources": [
|
|
4
|
+
"src/utils/parse-data-url.ts"
|
|
5
|
+
],
|
|
6
|
+
"sourceRoot": "https:/github.com/flex-development/mlly/blob/1.0.0-alpha.16",
|
|
7
|
+
"mappings": "AAMA;AAAA,EACE;AAAA,OAGK;AACP,SAAS,MAAM,YAA2B;AAE1C,OAAO,WAAW;AAmBlB,MAAM,eAAe,CAAC,QAAqC;AAEzD,QAAM,MAAM,GAAG;AAkBf,QAAM,QAPJ,4FAO6C,KAAK,IAAI,IAAI;AAG5D,MAAI,CAAC;AAAO,UAAM,IAAI,gBAAgB,IAAI,IAAI;AAG9C,QAAM,CAAC,EAAE,EAAE,OAAO,IAAI,QAAQ,OAAO,EAAE,IAAI;AAE3C,SAAO;AAAA,IACL,QAAQ,CAAC,CAAC;AAAA,IACV,MAAM,KAAK,IAAI;AAAA,IACf,MAAM,IAAI;AAAA,IACV;AAAA,IACA,UAAU,IAAI;AAAA,IACd,UAAU,KAAK,IAAI,QAAQ;AAAA,EAC7B;AACF;AAEA,IAAO,yBAAQ;",
|
|
5
8
|
"names": []
|
|
6
|
-
}
|
|
9
|
+
}
|
|
@@ -8,22 +8,25 @@ import {
|
|
|
8
8
|
} from "@flex-development/errnode";
|
|
9
9
|
import { isBuiltin } from "@flex-development/is-builtin";
|
|
10
10
|
import pathe from "@flex-development/pathe";
|
|
11
|
+
import {
|
|
12
|
+
DOT,
|
|
13
|
+
cast,
|
|
14
|
+
isString,
|
|
15
|
+
isUndefined,
|
|
16
|
+
trim
|
|
17
|
+
} from "@flex-development/tutils";
|
|
11
18
|
import { URL, fileURLToPath } from "node:url";
|
|
12
19
|
import isBareSpecifier from "./is-bare-specifier.mjs";
|
|
13
20
|
import isRelativeSpecifier from "./is-relative-specifier.mjs";
|
|
14
21
|
import toNodeURL from "./to-node-url.mjs";
|
|
15
22
|
const parseModuleId = (id, options = {}) => {
|
|
16
23
|
const {
|
|
17
|
-
internal = id instanceof URL ?
|
|
18
|
-
pkgname =
|
|
24
|
+
internal = id instanceof URL ? !1 : id.startsWith("#"),
|
|
25
|
+
pkgname = !1
|
|
19
26
|
} = options;
|
|
20
|
-
validateURLString(id, "id");
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
id = id instanceof URL ? id.href : id.trim();
|
|
24
|
-
let error;
|
|
25
|
-
let parsed = {
|
|
26
|
-
internal: false,
|
|
27
|
+
validateURLString(id, "id"), validateBoolean(internal, "options.internal"), validateBoolean(pkgname, "options.pkgname"), id = id instanceof URL ? id.href : trim(id);
|
|
28
|
+
let error, parsed = {
|
|
29
|
+
internal: !1,
|
|
27
30
|
path: id,
|
|
28
31
|
pkg: "",
|
|
29
32
|
protocol: "",
|
|
@@ -32,14 +35,14 @@ const parseModuleId = (id, options = {}) => {
|
|
|
32
35
|
version: "",
|
|
33
36
|
version_prefix: ""
|
|
34
37
|
};
|
|
35
|
-
switch (
|
|
38
|
+
switch (!0) {
|
|
36
39
|
case ENCODED_SEP_REGEX.test(id):
|
|
37
40
|
error = `must not include encoded '${pathe.sep}' or '\\' characters`;
|
|
38
41
|
break;
|
|
39
42
|
case isBuiltin(id):
|
|
40
43
|
const { href, protocol, pathname } = new URL(toNodeURL(id));
|
|
41
44
|
parsed = {
|
|
42
|
-
internal:
|
|
45
|
+
internal: !1,
|
|
43
46
|
path: pathname.replace(/^\S+?(?=\/|$)/, ""),
|
|
44
47
|
pkg: href.replace(/\/.*$/, ""),
|
|
45
48
|
protocol: id.startsWith("node:") ? protocol : "",
|
|
@@ -52,7 +55,7 @@ const parseModuleId = (id, options = {}) => {
|
|
|
52
55
|
case INTERNAL_SPECIFIER_REGEX.test(id):
|
|
53
56
|
const [, root = ""] = INTERNAL_SPECIFIER_REGEX.exec(id);
|
|
54
57
|
parsed = {
|
|
55
|
-
internal:
|
|
58
|
+
internal: !0,
|
|
56
59
|
path: id,
|
|
57
60
|
pkg: root,
|
|
58
61
|
protocol: "",
|
|
@@ -72,8 +75,8 @@ const parseModuleId = (id, options = {}) => {
|
|
|
72
75
|
subpath = ""
|
|
73
76
|
] = PACKAGE_PATH_REGEX.exec(id);
|
|
74
77
|
parsed = {
|
|
75
|
-
internal:
|
|
76
|
-
path:
|
|
78
|
+
internal: !1,
|
|
79
|
+
path: DOT + subpath,
|
|
77
80
|
pkg,
|
|
78
81
|
protocol: "",
|
|
79
82
|
raw: id,
|
|
@@ -86,7 +89,7 @@ const parseModuleId = (id, options = {}) => {
|
|
|
86
89
|
try {
|
|
87
90
|
const { host, protocol: protocol2, pathname: pathname2 } = new URL(id);
|
|
88
91
|
parsed = {
|
|
89
|
-
internal:
|
|
92
|
+
internal: !1,
|
|
90
93
|
path: host + pathname2,
|
|
91
94
|
pkg: "",
|
|
92
95
|
protocol: protocol2,
|
|
@@ -99,22 +102,17 @@ const parseModuleId = (id, options = {}) => {
|
|
|
99
102
|
error = "is not a valid URL";
|
|
100
103
|
}
|
|
101
104
|
break;
|
|
102
|
-
case isBareSpecifier(id):
|
|
103
|
-
case isRelativeSpecifier(id):
|
|
105
|
+
case isBareSpecifier(cast(id)):
|
|
106
|
+
case isRelativeSpecifier(cast(id)):
|
|
104
107
|
case pathe.isAbsolute(id):
|
|
105
108
|
break;
|
|
106
109
|
default:
|
|
107
110
|
error = "";
|
|
108
111
|
break;
|
|
109
112
|
}
|
|
110
|
-
error = ENCODED_SEP_REGEX.test(id) ? error : internal && !INTERNAL_SPECIFIER_REGEX.test(id) ? "is not a valid internal imports specifier name" : pkgname && !PACKAGE_PATH_REGEX.test(id) ? "does not start with a valid package name" : error
|
|
111
|
-
if (error !== void 0) {
|
|
113
|
+
if (error = ENCODED_SEP_REGEX.test(id) ? error : internal && !INTERNAL_SPECIFIER_REGEX.test(id) ? "is not a valid internal imports specifier name" : pkgname && !PACKAGE_PATH_REGEX.test(id) ? "does not start with a valid package name" : error, isString(error)) {
|
|
112
114
|
let { parent } = options;
|
|
113
|
-
|
|
114
|
-
validateURLString(parent, "options.parent");
|
|
115
|
-
parent = fileURLToPath(parent);
|
|
116
|
-
}
|
|
117
|
-
throw new ERR_INVALID_MODULE_SPECIFIER(id, error, parent);
|
|
115
|
+
throw isUndefined(parent) || (validateURLString(parent, "options.parent"), parent = fileURLToPath(parent)), new ERR_INVALID_MODULE_SPECIFIER(id, error, parent);
|
|
118
116
|
}
|
|
119
117
|
return parsed;
|
|
120
118
|
};
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": [
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
"sources": [
|
|
4
|
+
"src/utils/parse-module-id.ts"
|
|
5
|
+
],
|
|
6
|
+
"sourceRoot": "https:/github.com/flex-development/mlly/blob/1.0.0-alpha.16",
|
|
7
|
+
"mappings": "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",
|
|
8
|
+
"names": [
|
|
9
|
+
"protocol",
|
|
10
|
+
"pathname"
|
|
11
|
+
]
|
|
12
|
+
}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import type { ParseSubpathOptions, ParsedSubpath } from '../interfaces/index.mjs';
|
|
6
6
|
import type { Exports, Imports } from '@flex-development/pkg-types';
|
|
7
|
+
import { type Optional } from '@flex-development/tutils';
|
|
7
8
|
/**
|
|
8
9
|
* Creates an object representation of a subpath export or import from the given
|
|
9
10
|
* module `specifier` after ensuring the subpath defined in `specifier` is also
|
|
@@ -25,10 +26,10 @@ import type { Exports, Imports } from '@flex-development/pkg-types';
|
|
|
25
26
|
* @see https://nodejs.org/api/packages.html#subpath-imports
|
|
26
27
|
*
|
|
27
28
|
* @param {string} specifier - Module specifier to evaluate
|
|
28
|
-
* @param {Exports | Imports
|
|
29
|
+
* @param {Optional<Exports | Imports>} context - Package context
|
|
29
30
|
* @param {ParseSubpathOptions} options - Parsing options
|
|
30
31
|
* @return {ParsedSubpath} Object representing package subpath
|
|
31
32
|
* @throws {NodeError<Error | TypeError>}
|
|
32
33
|
*/
|
|
33
|
-
declare const parseSubpath: (specifier: string, context: Exports | Imports
|
|
34
|
+
declare const parseSubpath: (specifier: string, context: Optional<Exports | Imports>, options: ParseSubpathOptions) => ParsedSubpath;
|
|
34
35
|
export default parseSubpath;
|