Browse Source

feat(admin-ui): add public profile absolute URL helper

Made-with: Cursor
main
npmrun 5 hours ago
parent
commit
371778d752
  1. 14
      app/utils/public-profile-url.test.ts
  2. 7
      app/utils/public-profile-url.ts

14
app/utils/public-profile-url.test.ts

@ -0,0 +1,14 @@
import { describe, expect, test } from "bun:test";
import { buildPublicProfileAbsoluteUrl } from "./public-profile-url";
describe("buildPublicProfileAbsoluteUrl", () => {
test("joins origin with /@slug path", () => {
expect(buildPublicProfileAbsoluteUrl("https://example.com", "my-slug")).toBe(
"https://example.com/@my-slug",
);
});
test("normalizes origin without trailing slash", () => {
expect(buildPublicProfileAbsoluteUrl("https://example.com/", "ab")).toBe("https://example.com/@ab");
});
});

7
app/utils/public-profile-url.ts

@ -0,0 +1,7 @@
/**
* `/@${publicSlug}` URL
*/
export function buildPublicProfileAbsoluteUrl(origin: string, publicSlug: string): string {
const base = origin.replace(/\/+$/, "");
return new URL(`/@${publicSlug}`, `${base}/`).href;
}
Loading…
Cancel
Save