cloudinary serverside images
This commit is contained in:
parent
e49c5001c2
commit
fd3084fef7
|
@ -0,0 +1,33 @@
|
||||||
|
import { v2 as cloudinary } from 'cloudinary';
|
||||||
|
import { PUBLIC_CLOUDINARY_NAME } from '$env/static/public';
|
||||||
|
import { CLOUDINARY_API_KEY, CLOUDINARY_API_SECRET } from '$env/static/private';
|
||||||
|
|
||||||
|
cloudinary.config({
|
||||||
|
cloud_name: PUBLIC_CLOUDINARY_NAME,
|
||||||
|
api_key: CLOUDINARY_API_KEY,
|
||||||
|
api_secret: CLOUDINARY_API_SECRET
|
||||||
|
});
|
||||||
|
|
||||||
|
type ImageTransformationOptions = {
|
||||||
|
width?: number;
|
||||||
|
height?: number;
|
||||||
|
crop?: string;
|
||||||
|
format?: string;
|
||||||
|
quality?: string | number;
|
||||||
|
[key: string]: string;
|
||||||
|
};
|
||||||
|
|
||||||
|
export function getImageUrl(publicId: string, options: ImageTransformationOptions = {}): string {
|
||||||
|
return cloudinary.url(publicId, {
|
||||||
|
...options,
|
||||||
|
crop: options.crop || 'fill',
|
||||||
|
format: options.format || 'auto',
|
||||||
|
quality: options.quality || 'auto'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export const getImagePublicId = (imageKey: string) => {
|
||||||
|
return images[imageKey] || '';
|
||||||
|
};
|
||||||
|
|
||||||
|
export default cloudinary;
|
Loading…
Reference in New Issue