Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 15 additions & 1 deletion packages/app/app/components/Commits.vue
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,20 @@ async function goPrevPage() {
}
await fetchPage(currentPage.value - 1);
}
function buildInstallMarkdown(
commit: (typeof commitsWithRelease.value)[number] | null,
) {
if (!commit) return "";
const origin = typeof window !== "undefined" ? window.location.origin : "";
const packages: string[] = commit.release.packages ?? [];
return packages
.map((pkg) => {
const shorter = props.repo === pkg;
const repoSegment = shorter ? "" : `/${props.repo}`;
return `\`\`\`\nnpm i ${origin}/${props.owner}${repoSegment}/${pkg}@${commit.abbreviatedOid}\n\`\`\``;
})
.join("\n\n");
}
</script>

<template>
Expand Down Expand Up @@ -358,7 +372,7 @@ async function goPrevPage() {

<div
class="max-w-full p-4 overflow-x-auto border border-gray-100 dark:border-gray-800 rounded-lg prose dark:prose-invert flex flex-col gap-2"
v-html="marked(selectedCommit.release.text)"
v-html="marked(buildInstallMarkdown(selectedCommit))"
/>
</div>
</template>
Expand Down
49 changes: 1 addition & 48 deletions packages/app/server/api/repo/commits.get.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
import type { H3Event } from "h3";
import { z } from "zod";
import type { PackageManager } from "@pkg-pr-new/utils";
import { generateCommitPublishMessage } from "../../utils/markdown";
import {
useBinding,
useCursorsBucket,
Expand All @@ -28,20 +26,6 @@
branch: string | null;
}

function getCommitPanelOrigin(event: H3Event) {
const requestUrl = getRequestURL(event);
const headers = getHeaders(event);
const host =
headers["x-forwarded-host"]?.split(",")[0]?.trim() ||
headers.host?.split(",")[0]?.trim() ||
requestUrl.host;
const protocol =
headers["x-forwarded-proto"]?.split(",")[0]?.trim() ||
requestUrl.protocol.replace(":", "");

return `${protocol}://${host}`;
}

async function getCommitMetadata(
installation: Awaited<ReturnType<typeof useOctokitInstallation>>,
owner: string,
Expand Down Expand Up @@ -142,30 +126,6 @@
};
}

function makeReleaseText(
origin: string,
owner: string,
repo: string,
sha: string,
packages: string[],
) {
return generateCommitPublishMessage(
origin,
{},
packages,
{
owner,
repo,
sha,
ref: sha,
},
false,
"npm" satisfies PackageManager,
false,
false,
).trim();
}

export default defineEventHandler(async (event) => {
try {
const query = await getValidatedQuery(event, (data) =>
Expand Down Expand Up @@ -251,7 +211,6 @@
const nextCursor = hasNextPage ? String(page + 1) : null;
const totalCount = releases.length;
const totalPages = Math.max(1, Math.ceil(totalCount / perPage));
const origin = getCommitPanelOrigin(event);
const commitMetadata = await getCommitMetadata(
installation,
query.owner,
Expand Down Expand Up @@ -298,13 +257,7 @@
name: "Continuous Releases",
title: "Continuous Releases",
summary: `Published ${sortedPackages.length} package(s)`,
text: makeReleaseText(
origin,
query.owner,
query.repo,
row.sha,
sortedPackages,
),
packages: sortedPackages,
detailsUrl: `https://github.com/${query.owner}/${query.repo}/commit/${row.sha}`,
url: `https://github.com/${query.owner}/${query.repo}/commit/${row.sha}`,
},
Expand All @@ -325,7 +278,7 @@
},
};
} catch (error) {
console.error("Error fetching repository releases:", error);

Check warning on line 281 in packages/app/server/api/repo/commits.get.ts

View workflow job for this annotation

GitHub Actions / Run Linting

Unexpected console statement

return {
id: "error",
Expand Down
Loading