@pnpm/exportable-manifest
Advanced tools
Comparing version
@@ -10,2 +10,3 @@ "use strict"; | ||
const error_1 = require("@pnpm/error"); | ||
const resolving_jsr_specifier_parser_1 = require("@pnpm/resolving.jsr-specifier-parser"); | ||
const read_project_manifest_1 = require("@pnpm/read-project-manifest"); | ||
@@ -30,3 +31,3 @@ const omit_1 = __importDefault(require("ramda/src/omit")); | ||
const replaceCatalogProtocol = resolveCatalogProtocol.bind(null, catalogResolver); | ||
const convertDependencyForPublish = combineConverters(replaceWorkspaceProtocol, replaceCatalogProtocol); | ||
const convertDependencyForPublish = combineConverters(replaceWorkspaceProtocol, replaceCatalogProtocol, replaceJsrProtocol); | ||
await Promise.all(['dependencies', 'devDependencies', 'optionalDependencies'].map(async (depsField) => { | ||
@@ -43,3 +44,3 @@ const deps = await makePublishDependencies(dir, originalManifest[depsField], { | ||
if (peerDependencies) { | ||
const convertPeersForPublish = combineConverters(replaceWorkspaceProtocolPeerDependency, replaceCatalogProtocol); | ||
const convertPeersForPublish = combineConverters(replaceWorkspaceProtocolPeerDependency, replaceCatalogProtocol, replaceJsrProtocol); | ||
publishManifest.peerDependencies = await makePublishDependencies(dir, peerDependencies, { | ||
@@ -58,8 +59,8 @@ modulesDir: opts?.modulesDir, | ||
return async (depName, depSpec, dir, modulesDir) => { | ||
let pref = depSpec; | ||
let bareSpecifier = depSpec; | ||
for (const converter of converters) { | ||
// eslint-disable-next-line no-await-in-loop | ||
pref = await converter(depName, pref, dir, modulesDir); | ||
bareSpecifier = await converter(depName, bareSpecifier, dir, modulesDir); | ||
} | ||
return pref; | ||
return bareSpecifier; | ||
}; | ||
@@ -81,7 +82,7 @@ } | ||
} | ||
function resolveCatalogProtocol(catalogResolver, alias, pref) { | ||
const result = catalogResolver({ alias, pref }); | ||
function resolveCatalogProtocol(catalogResolver, alias, bareSpecifier) { | ||
const result = catalogResolver({ alias, bareSpecifier }); | ||
switch (result.type) { | ||
case 'found': return result.resolution.specifier; | ||
case 'unused': return pref; | ||
case 'unused': return bareSpecifier; | ||
case 'misconfiguration': throw result.error; | ||
@@ -136,2 +137,16 @@ } | ||
} | ||
async function replaceJsrProtocol(depName, depSpec) { | ||
const spec = (0, resolving_jsr_specifier_parser_1.parseJsrSpecifier)(depSpec, depName); | ||
if (spec == null) { | ||
return depSpec; | ||
} | ||
return createNpmAliasedSpecifier(spec.npmPkgName, spec.versionSelector); | ||
} | ||
function createNpmAliasedSpecifier(npmPkgName, versionSelector) { | ||
const npmPkgSpecifier = `npm:${npmPkgName}`; | ||
if (!versionSelector) { | ||
return npmPkgSpecifier; | ||
} | ||
return `${npmPkgSpecifier}@${versionSelector}`; | ||
} | ||
//# sourceMappingURL=index.js.map |
{ | ||
"name": "@pnpm/exportable-manifest", | ||
"version": "1000.0.10", | ||
"version": "1000.1.0", | ||
"description": "Creates an exportable manifest", | ||
@@ -28,6 +28,7 @@ "keywords": [ | ||
"ramda": "npm:@pnpm/ramda@0.28.1", | ||
"@pnpm/catalogs.resolver": "1000.0.3", | ||
"@pnpm/error": "1000.0.2", | ||
"@pnpm/read-project-manifest": "1000.0.9", | ||
"@pnpm/types": "1000.4.0", | ||
"@pnpm/catalogs.resolver": "1000.0.2" | ||
"@pnpm/read-project-manifest": "1000.0.10", | ||
"@pnpm/resolving.jsr-specifier-parser": "1000.0.0", | ||
"@pnpm/types": "1000.5.0" | ||
}, | ||
@@ -39,6 +40,6 @@ "devDependencies": { | ||
"write-yaml-file": "^5.0.0", | ||
"@pnpm/prepare": "0.0.116", | ||
"@pnpm/exportable-manifest": "1000.0.10", | ||
"@pnpm/catalogs.config": "1000.0.2", | ||
"@pnpm/catalogs.types": "1000.0.0" | ||
"@pnpm/catalogs.types": "1000.0.0", | ||
"@pnpm/exportable-manifest": "1000.1.0", | ||
"@pnpm/prepare": "0.0.118" | ||
}, | ||
@@ -45,0 +46,0 @@ "engines": { |
Sorry, the diff of this file is not supported yet
18752
7.12%206
7.85%7
16.67%+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
- Removed
- Removed
- Removed
- Removed
- Removed
Updated