@@ -61,16 +61,22 @@ const DEFAULT_CONDITIONS_SET = new SafeSet(DEFAULT_CONDITIONS);
6161
6262/**
6363 * @typedef {string|string[]|Record<string,unknown> } Exports
64- * @typedef {{exports:ExportConfig;name?: string;main?: string;type?:"module"|"commonjs";} } PackageConfig
64+ * @typedef {'module' | 'commonjs' } PackageType
65+ * @typedef {{
66+ * exports?: ExportConfig;
67+ * name?: string;
68+ * main?: string;
69+ * type?: PackageType;
70+ * }} PackageConfig
6571 */
6672
6773const emittedPackageWarnings = new SafeSet ( ) ;
6874
6975/**
70- * @param {string } match
71- * @param {URL } pjsonUrl
72- * @param {boolean } isExports
73- * @param {string | URL | undefined } base
76+ * @param {string } match
77+ * @param {URL } pjsonUrl
78+ * @param {boolean } isExports
79+ * @param {string | URL | undefined } base
7480 * @returns {void }
7581 */
7682function emitFolderMapDeprecation ( match , pjsonUrl , isExports , base ) {
@@ -90,11 +96,11 @@ function emitFolderMapDeprecation(match, pjsonUrl, isExports, base) {
9096}
9197
9298/**
93- * @param {URL } url
94- * @param {URL } packageJSONUrl
95- * @param {string | URL | undefined } base
96- * @param {string } main
97- * @returns
99+ * @param {URL } url
100+ * @param {URL } packageJSONUrl
101+ * @param {string | URL | undefined } base
102+ * @param {string } main
103+ * @returns
98104 */
99105function emitLegacyIndexDeprecation ( url , packageJSONUrl , base , main ) {
100106 const { format } = defaultGetFormat ( url ) ;
@@ -143,16 +149,16 @@ const realpathCache = new SafeMap();
143149const packageJSONCache = new SafeMap ( ) ; /* string -> PackageConfig */
144150
145151/**
146- * @param {string | URL } path
152+ * @param {string | URL } path
147153 * @returns {import('fs').Stats }
148154 */
149155const tryStatSync =
150156 ( path ) => statSync ( path , { throwIfNoEntry : false } ) ?? new Stats ( ) ;
151157
152158/**
153- * @param {string } path
154- * @param {string } specifier
155- * @param {string | URL | undefined } base
159+ * @param {string } path
160+ * @param {string } specifier
161+ * @param {string | URL | undefined } base
156162 * @returns {PackageConfig }
157163 */
158164function getPackageConfig ( path , specifier , base ) {
@@ -208,7 +214,7 @@ function getPackageConfig(path, specifier, base) {
208214}
209215
210216/**
211- * @param {URL | string } resolved
217+ * @param {URL | string } resolved
212218 * @returns {PackageConfig }
213219 */
214220function getPackageScopeConfig ( resolved ) {
@@ -304,7 +310,7 @@ function legacyMainResolve(packageJSONUrl, packageConfig, base) {
304310}
305311
306312/**
307- * @param {URL } search
313+ * @param {URL } search
308314 * @returns {URL | undefined }
309315 */
310316function resolveExtensionsWithTryExactName ( search ) {
@@ -315,7 +321,7 @@ function resolveExtensionsWithTryExactName(search) {
315321const extensions = [ '.js' , '.json' , '.node' , '.mjs' ] ;
316322
317323/**
318- * @param {URL } search
324+ * @param {URL } search
319325 * @returns {URL | undefined }
320326 */
321327function resolveExtensions ( search ) {
@@ -328,7 +334,7 @@ function resolveExtensions(search) {
328334}
329335
330336/**
331- * @param {URL } search
337+ * @param {URL } search
332338 * @returns {URL | undefined }
333339 */
334340function resolveDirectoryEntry ( search ) {
@@ -349,8 +355,8 @@ function resolveDirectoryEntry(search) {
349355
350356const encodedSepRegEx = / % 2 F | % 2 C / i;
351357/**
352- * @param {URL } resolved
353- * @param {string | URL | undefined } base
358+ * @param {URL } resolved
359+ * @param {string | URL | undefined } base
354360 * @returns {URL | undefined }
355361 */
356362function finalizeResolution ( resolved , base ) {
@@ -388,9 +394,9 @@ function finalizeResolution(resolved, base) {
388394}
389395
390396/**
391- * @param {string } specifier
392- * @param {URL } packageJSONUrl
393- * @param {string | URL | undefined } base
397+ * @param {string } specifier
398+ * @param {URL } packageJSONUrl
399+ * @param {string | URL | undefined } base
394400 */
395401function throwImportNotDefined ( specifier , packageJSONUrl , base ) {
396402 throw new ERR_PACKAGE_IMPORT_NOT_DEFINED (
@@ -399,9 +405,9 @@ function throwImportNotDefined(specifier, packageJSONUrl, base) {
399405}
400406
401407/**
402- * @param {string } specifier
403- * @param {URL } packageJSONUrl
404- * @param {string | URL | undefined } base
408+ * @param {string } specifier
409+ * @param {URL } packageJSONUrl
410+ * @param {string | URL | undefined } base
405411 */
406412function throwExportsNotFound ( subpath , packageJSONUrl , base ) {
407413 throw new ERR_PACKAGE_PATH_NOT_EXPORTED (
@@ -410,11 +416,11 @@ function throwExportsNotFound(subpath, packageJSONUrl, base) {
410416}
411417
412418/**
413- *
414- * @param {string | URL } subpath
415- * @param {URL } packageJSONUrl
416- * @param {boolean } internal
417- * @param {string | URL | undefined } base
419+ *
420+ * @param {string | URL } subpath
421+ * @param {URL } packageJSONUrl
422+ * @param {boolean } internal
423+ * @param {string | URL | undefined } base
418424 */
419425function throwInvalidSubpath ( subpath , packageJSONUrl , internal , base ) {
420426 const reason = `request is not a valid subpath for the "${ internal ?
@@ -558,11 +564,11 @@ function resolvePackageTarget(packageJSONUrl, target, subpath, packageSubpath,
558564}
559565
560566/**
561- *
562- * @param {Exports } exports
563- * @param {URL } packageJSONUrl
564- * @param {string | URL | undefined } base
565- * @returns
567+ *
568+ * @param {Exports } exports
569+ * @param {URL } packageJSONUrl
570+ * @param {string | URL | undefined } base
571+ * @returns
566572 */
567573function isConditionalExportsMainSugar ( exports , packageJSONUrl , base ) {
568574 if ( typeof exports === 'string' || ArrayIsArray ( exports ) ) return true ;
@@ -647,10 +653,10 @@ function packageExportsResolve(
647653}
648654
649655/**
650- * @param {string } name
651- * @param {string | URL | undefined } base
652- * @param {Set<string> } conditions
653- * @returns
656+ * @param {string } name
657+ * @param {string | URL | undefined } base
658+ * @param {Set<string> } conditions
659+ * @returns
654660 */
655661function packageImportsResolve ( name , base , conditions ) {
656662 if ( name === '#' || StringPrototypeStartsWith ( name , '#/' ) ) {
@@ -708,17 +714,17 @@ function packageImportsResolve(name, base, conditions) {
708714}
709715
710716/**
711- * @param {URL } url
712- * @returns {string }
717+ * @param {URL } url
718+ * @returns {PackageType }
713719 */
714720function getPackageType ( url ) {
715721 const packageConfig = getPackageScopeConfig ( url ) ;
716722 return packageConfig . type ;
717723}
718724
719725/**
720- * @param {string } specifier
721- * @param {string | URL | undefined } base
726+ * @param {string } specifier
727+ * @param {string | URL | undefined } base
722728 * @returns {{packageName: string, packageSubpath: string, isScoped: boolean} }
723729 */
724730function parsePackageName ( specifier , base ) {
@@ -814,7 +820,7 @@ function packageResolve(specifier, base, conditions) {
814820}
815821
816822/**
817- * @param {string } specifier
823+ * @param {string } specifier
818824 * @returns {boolean }
819825 */
820826function isBareSpecifier ( specifier ) {
0 commit comments