screw-up 1.27.0 → 1.29.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/dist/index.cjs +76 -7
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +4 -4
- package/dist/main.cjs +134 -8
- package/dist/main.cjs.map +1 -1
- package/dist/main.mjs +63 -6
- package/dist/main.mjs.map +1 -1
- package/dist/{metadata-file-Djz8vanJ.js → metadata-file-CyQ2yue9.js} +75 -6
- package/dist/{metadata-file-Djz8vanJ.js.map → metadata-file-CyQ2yue9.js.map} +1 -1
- package/dist/{packageMetadata-BZlXZqjz.cjs → packageMetadata-CpakAG0S.cjs} +3 -3
- package/dist/{packageMetadata-B3dAY9Pw.js → packageMetadata-DnXbVLQ5.js} +6 -6
- package/dist/{packageMetadata-B3dAY9Pw.js.map → packageMetadata-DnXbVLQ5.js.map} +1 -1
- package/dist/{packageMetadata-BwJnVnNu.cjs → packageMetadata-K_w0Knb7.cjs} +5 -5
- package/dist/{packageMetadata-BwJnVnNu.cjs.map → packageMetadata-K_w0Knb7.cjs.map} +1 -1
- package/dist/src/analyzer.d.ts +2 -2
- package/dist/src/analyzer.d.ts.map +1 -1
- package/dist/src/cli-internal.d.ts +2 -2
- package/dist/src/cli-internal.d.ts.map +1 -1
- package/dist/src/cli.d.ts +2 -2
- package/dist/src/default-import-fix.d.ts +2 -2
- package/dist/src/fast-tags.d.ts +2 -2
- package/dist/src/generated/packageMetadata.d.ts +4 -4
- package/dist/src/git-operations.d.ts +2 -2
- package/dist/src/index.d.ts +2 -2
- package/dist/src/internal.d.ts +2 -2
- package/dist/src/main.d.ts +2 -2
- package/dist/src/metadata-file.d.ts +2 -2
- package/dist/src/types.d.ts +2 -2
- package/dist/src/vite-plugin.d.ts +2 -2
- package/package.json +7 -7
package/dist/main.mjs
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/*!
|
|
3
3
|
* name: screw-up
|
|
4
|
-
* version: 1.
|
|
4
|
+
* version: 1.29.0
|
|
5
5
|
* description: Simply package metadata inserter on Vite plugin
|
|
6
6
|
* author: Kouji Matsui (@kekyo@mi.kekyo.net)
|
|
7
7
|
* license: MIT
|
|
8
8
|
* repository.url: https://github.com/kekyo/screw-up.git
|
|
9
|
-
* git.commit.hash:
|
|
9
|
+
* git.commit.hash: 3833f6ef842d9e5a0b4f7277ca3b118f26fd4a6b
|
|
10
10
|
*/
|
|
11
|
-
import { a as collectWorkspaceSiblings, c as replacePeerDependenciesWildcards, d as require_dist, i as getFetchGitMetadata, l as resolvePackageMetadata, n as generateMetadataFileContent, o as createConsoleLogger, p as __toESM, r as writeFileIfChanged, s as findWorkspaceRoot, t as ensureMetadataGitignore, u as resolveRawPackageJsonObject } from "./metadata-file-
|
|
12
|
-
import { n as name } from "./packageMetadata-
|
|
11
|
+
import { a as collectWorkspaceSiblings, c as replacePeerDependenciesWildcards, d as require_dist, i as getFetchGitMetadata, l as resolvePackageMetadata, n as generateMetadataFileContent, o as createConsoleLogger, p as __toESM, r as writeFileIfChanged, s as findWorkspaceRoot, t as ensureMetadataGitignore, u as resolveRawPackageJsonObject } from "./metadata-file-CyQ2yue9.js";
|
|
12
|
+
import { n as name } from "./packageMetadata-DnXbVLQ5.js";
|
|
13
13
|
import { copyFile, mkdir, mkdtemp, readFile, readdir, rm, stat, writeFile } from "fs/promises";
|
|
14
14
|
import { createReadStream, createWriteStream, existsSync, statSync } from "fs";
|
|
15
15
|
import { dirname, isAbsolute, join, resolve } from "path";
|
|
@@ -584,6 +584,62 @@ var mergeResolvedPackageJson = (packedPackageJson, resolvedPackageJson) => {
|
|
|
584
584
|
}
|
|
585
585
|
return mergedPackageJson;
|
|
586
586
|
};
|
|
587
|
+
var workspaceProtocolPrefix = "workspace:";
|
|
588
|
+
var inferVersionPrefix = (dependencySpec) => {
|
|
589
|
+
if (dependencySpec.startsWith("^")) return "^";
|
|
590
|
+
if (dependencySpec.startsWith("~")) return "~";
|
|
591
|
+
return "";
|
|
592
|
+
};
|
|
593
|
+
var looksLikeWorkspaceProtocolAlias = (rawSpecifier) => {
|
|
594
|
+
if (!rawSpecifier) return false;
|
|
595
|
+
if (rawSpecifier === "*" || rawSpecifier === "^" || rawSpecifier === "~" || rawSpecifier.startsWith("^") || rawSpecifier.startsWith("~") || /^[0-9]/.test(rawSpecifier)) return false;
|
|
596
|
+
return true;
|
|
597
|
+
};
|
|
598
|
+
var parseWorkspaceProtocolDependencyReference = (dependencyName, workspaceProtocolSpecifier) => {
|
|
599
|
+
if (!workspaceProtocolSpecifier.startsWith(workspaceProtocolPrefix)) return;
|
|
600
|
+
const rawSpecifier = workspaceProtocolSpecifier.slice(10).trim();
|
|
601
|
+
if (!looksLikeWorkspaceProtocolAlias(rawSpecifier)) return {
|
|
602
|
+
targetPackageName: dependencyName,
|
|
603
|
+
alias: false
|
|
604
|
+
};
|
|
605
|
+
if (rawSpecifier.startsWith("@")) {
|
|
606
|
+
const secondAt = rawSpecifier.indexOf("@", 1);
|
|
607
|
+
const targetPackageName = secondAt >= 0 ? rawSpecifier.slice(0, secondAt) : rawSpecifier;
|
|
608
|
+
return {
|
|
609
|
+
targetPackageName,
|
|
610
|
+
alias: targetPackageName !== dependencyName
|
|
611
|
+
};
|
|
612
|
+
}
|
|
613
|
+
const atIndex = rawSpecifier.indexOf("@");
|
|
614
|
+
const targetPackageName = atIndex >= 0 ? rawSpecifier.slice(0, atIndex) : rawSpecifier;
|
|
615
|
+
return {
|
|
616
|
+
targetPackageName,
|
|
617
|
+
alias: targetPackageName !== dependencyName
|
|
618
|
+
};
|
|
619
|
+
};
|
|
620
|
+
var formatResolvedWorkspaceDependency = (packedDependencySpecifier, reference, sibling) => {
|
|
621
|
+
const aliasPrefix = `npm:${reference.targetPackageName}@`;
|
|
622
|
+
if (packedDependencySpecifier.startsWith(aliasPrefix)) return `${aliasPrefix}${inferVersionPrefix(packedDependencySpecifier.slice(aliasPrefix.length))}${sibling.version}`;
|
|
623
|
+
return `${inferVersionPrefix(packedDependencySpecifier)}${sibling.version}`;
|
|
624
|
+
};
|
|
625
|
+
var replaceWorkspaceProtocolDependencies = (packageJson, resolvedPackageJson, siblings) => {
|
|
626
|
+
const modifiedPackageJson = clonePackageJson(packageJson);
|
|
627
|
+
for (const sectionKey of dependencySectionKeys) {
|
|
628
|
+
const modifiedSection = modifiedPackageJson[sectionKey];
|
|
629
|
+
const resolvedSection = resolvedPackageJson === null || resolvedPackageJson === void 0 ? void 0 : resolvedPackageJson[sectionKey];
|
|
630
|
+
if (!modifiedSection || typeof modifiedSection !== "object" || !resolvedSection || typeof resolvedSection !== "object") continue;
|
|
631
|
+
for (const [dependencyName, dependencySpecifier] of Object.entries(resolvedSection)) {
|
|
632
|
+
if (typeof dependencySpecifier !== "string") continue;
|
|
633
|
+
const reference = parseWorkspaceProtocolDependencyReference(dependencyName, dependencySpecifier);
|
|
634
|
+
if (!reference) continue;
|
|
635
|
+
const sibling = siblings.get(reference.targetPackageName);
|
|
636
|
+
const packedDependencySpecifier = modifiedSection[dependencyName];
|
|
637
|
+
if (!sibling || typeof packedDependencySpecifier !== "string") continue;
|
|
638
|
+
modifiedSection[dependencyName] = formatResolvedWorkspaceDependency(packedDependencySpecifier, reference, sibling);
|
|
639
|
+
}
|
|
640
|
+
}
|
|
641
|
+
return modifiedPackageJson;
|
|
642
|
+
};
|
|
587
643
|
var getFilesArray = (packageJson) => {
|
|
588
644
|
if (!packageJson || !Array.isArray(packageJson.files)) return;
|
|
589
645
|
const entries = packageJson.files.filter((entry) => typeof entry === "string");
|
|
@@ -756,7 +812,7 @@ var packAssets = async (targetDir, outputDir, checkWorkingDirectoryStatus, alway
|
|
|
756
812
|
}
|
|
757
813
|
delete resolvedPackageJson.readme;
|
|
758
814
|
}
|
|
759
|
-
const workspaceRoot = replacePeerDepsWildcards ? await findWorkspaceRoot(targetDir, logger) : void 0;
|
|
815
|
+
const workspaceRoot = replacePeerDepsWildcards || packageManager === "pnpm" ? await findWorkspaceRoot(targetDir, logger) : void 0;
|
|
760
816
|
const workspaceSiblings = workspaceRoot ? await collectWorkspaceSiblings(workspaceRoot, fetchGitMetadata, alwaysOverrideVersionFromGit, inheritableFields, logger) : void 0;
|
|
761
817
|
const filesMergeEnabled = mergeFiles && inheritableFields.has("files");
|
|
762
818
|
const workspaceFilesMerge = filesMergeEnabled ? await resolveWorkspaceFilesMerge(targetDir, logger) : void 0;
|
|
@@ -783,6 +839,7 @@ var packAssets = async (targetDir, outputDir, checkWorkingDirectoryStatus, alway
|
|
|
783
839
|
let finalPackageJson = resolvedPackageJson;
|
|
784
840
|
if (existsSync(packageJsonPath)) {
|
|
785
841
|
finalPackageJson = mergeResolvedPackageJson(await readPackageJsonFile(packageJsonPath), resolvedPackageJson);
|
|
842
|
+
if (packageManager === "pnpm" && (workspaceSiblings === null || workspaceSiblings === void 0 ? void 0 : workspaceSiblings.size)) finalPackageJson = replaceWorkspaceProtocolDependencies(finalPackageJson, resolvedPackageJson, workspaceSiblings);
|
|
786
843
|
if (workspaceSiblings && workspaceSiblings.size > 0) finalPackageJson = replacePeerDependenciesWildcards(finalPackageJson, workspaceSiblings, peerDepsVersionPrefix);
|
|
787
844
|
if (packageJsonReadme) delete finalPackageJson.readme;
|
|
788
845
|
await writeFile(packageJsonPath, JSON.stringify(finalPackageJson, null, 2));
|
|
@@ -1300,7 +1357,7 @@ var publishCommand = async (args, logger) => {
|
|
|
1300
1357
|
}
|
|
1301
1358
|
};
|
|
1302
1359
|
var showHelp = async () => {
|
|
1303
|
-
const { author, license, repository_url, version, git_commit_hash } = await import("./packageMetadata-
|
|
1360
|
+
const { author, license, repository_url, version, git_commit_hash } = await import("./packageMetadata-DnXbVLQ5.js").then((n) => n.r);
|
|
1304
1361
|
console.info(`screw-up [${version}-${git_commit_hash}]
|
|
1305
1362
|
Easy package metadata inserter CLI
|
|
1306
1363
|
Copyright (c) ${author}
|