Compare commits
2 Commits
67362dad96
...
47e50a3ba4
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
47e50a3ba4 | ||
|
|
cf12428f98 |
@@ -1,3 +1,22 @@
|
|||||||
export function getImageUrl(url: string) {
|
export function getImageUrl(url: string) {
|
||||||
return `${import.meta.env.DIRECTUS_URL}assets/${url}`;
|
return `${import.meta.env.DIRECTUS_URL}assets/${url}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function getImageSize(width: number, height: number, targetMegapixels: number): ResizedImageResponse {
|
||||||
|
const originalPixels = width * height;
|
||||||
|
const targetPixels = targetMegapixels * 1000 * 1000;
|
||||||
|
|
||||||
|
if (originalPixels >= targetPixels) {
|
||||||
|
return {
|
||||||
|
width,
|
||||||
|
height
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const scale = Math.sqrt(targetPixels / originalPixels);
|
||||||
|
|
||||||
|
return {
|
||||||
|
width: Math.round(scale * width),
|
||||||
|
height: Math.round(scale * height)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -30,8 +30,6 @@ const settings = await getSettings();
|
|||||||
const pathName = Astro.url.pathname === "/" ? "/" : Astro.url.pathname.replace(/\/$/, "");
|
const pathName = Astro.url.pathname === "/" ? "/" : Astro.url.pathname.replace(/\/$/, "");
|
||||||
const page = await getPage(settings, pathName);
|
const page = await getPage(settings, pathName);
|
||||||
|
|
||||||
console.log(pathName);
|
|
||||||
|
|
||||||
if (page === null || page.page === null || !page.page.exists) {
|
if (page === null || page.page === null || !page.page.exists) {
|
||||||
return new Response("Page not found.", {
|
return new Response("Page not found.", {
|
||||||
status: 404,
|
status: 404,
|
||||||
@@ -73,7 +71,7 @@ if (page === null || page.page === null || !page.page.exists) {
|
|||||||
{ page.page.type === "BlogPost" && (
|
{ page.page.type === "BlogPost" && (
|
||||||
<BlogLayout settings={{
|
<BlogLayout settings={{
|
||||||
searchEngine: page.page.searchEngine,
|
searchEngine: page.page.searchEngine,
|
||||||
tags: []
|
tags: page.page.tags.map((tag) => tag.text)
|
||||||
}}>
|
}}>
|
||||||
<Fragment slot="content">
|
<Fragment slot="content">
|
||||||
<BlogPost blog={page.page} />
|
<BlogPost blog={page.page} />
|
||||||
@@ -104,7 +102,7 @@ if (page === null || page.page === null || !page.page.exists) {
|
|||||||
{ page.page.type === "ProjectPost" && (
|
{ page.page.type === "ProjectPost" && (
|
||||||
<ProjectLayout settings={{
|
<ProjectLayout settings={{
|
||||||
searchEngine: page.page.searchEngine,
|
searchEngine: page.page.searchEngine,
|
||||||
tags: []
|
tags: page.page.tags.map((tag) => tag.text)
|
||||||
}}>
|
}}>
|
||||||
<Fragment slot="content">
|
<Fragment slot="content">
|
||||||
<ProjectPost project={page.page} />
|
<ProjectPost project={page.page} />
|
||||||
|
|||||||
5
astro/src/types/common/images.d.ts
vendored
5
astro/src/types/common/images.d.ts
vendored
@@ -3,3 +3,8 @@ type PhotoProps = {
|
|||||||
width: number;
|
width: number;
|
||||||
height: number;
|
height: number;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type ResizedImageResponse = {
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user