diff --git a/src/pages/next.astro b/src/pages/next.astro
index e6c1c0f..587781a 100644
--- a/src/pages/next.astro
+++ b/src/pages/next.astro
@@ -3,18 +3,22 @@ import Layout from '../layouts/Layout.astro'
import Button from '../templates/components/Button/Button.tsx'
import Image from '../templates/components/Image/Image'
import Page from '../templates/components/Page/Page'
+import sampleA from '../templates/images/sample.avif'
+import sampleW from '../templates/images/sample.avif'
+import OptimizeImage from '../templates/components/Optimizer/OptimizeImage'
---
-
+
Built-in Components
-
+
diff --git a/src/templates/components/Image/Image.tsx b/src/templates/components/Image/Image.tsx
index bfb3b19..2df6d4c 100644
--- a/src/templates/components/Image/Image.tsx
+++ b/src/templates/components/Image/Image.tsx
@@ -1,35 +1,17 @@
-import sharp from 'sharp'
-import fs from 'fs'
-
interface Props {
- src: string
+ avif: string
+ webp: string
size?: number
alt?: string
}
-const convertImage = async (props: Props) => {
- const avifOutputPath = `src/assets/optimized/${props.src.split('.').slice(0, -1).join('.')}.avif`
- const webpOutputPath = `src/assets/optimized/${props.src.split('.').slice(0, -1).join('.')}.webp`
-
- if (!fs.existsSync(webpOutputPath) || !fs.existsSync(avifOutputPath)) {
- const avifBuffer = await sharp(`src/assets/images/${props.src}`).avif({ quality: 60 }).resize(props.size).toBuffer()
- await sharp(avifBuffer).toFile(avifOutputPath)
-
- const webpBuffer = await sharp(`src/assets/images/${props.src}`).webp({ quality: 75 }).resize(props.size).toBuffer()
- await sharp(webpBuffer).toFile(webpOutputPath)
- }
-}
-
export default (props: Props) => {
- const imageSrc = `src/assets/optimized/${props.src.split('.').slice(0, -1).join('.')}.webp`
- convertImage(props)
-
return (
<>
-
-
-
+
+
+
>
)