UNPKG

astro-cloudinary

Version:

<a href="https://github.com/cloudinary-community/astro-cloudinary/actions/workflows/test_and_release.yml"><img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/cloudinary-community/astro-cloudinary/test_and_release.y

91 lines (85 loc) 2.67 kB
import { ASTRO_CLOUDINARY_ANALYTICS_ID, ASTRO_CLOUDINARY_ANALYTICS_PRODUCT_ID, ASTRO_CLOUDINARY_VERSION, ASTRO_VERSION } from "../chunk-TFLUFGNO.js"; // src/helpers/getCldImageUrl.ts import { constructCloudinaryUrl } from "@cloudinary-util/url-loader"; // src/lib/cloudinary.ts function getCloudinaryConfig(config) { const cloudName = config?.cloud?.cloudName ?? import.meta.env.PUBLIC_CLOUDINARY_CLOUD_NAME; if (!cloudName) { throw new Error("A Cloudinary Cloud name is required, please make sure PUBLIC_CLOUDINARY_CLOUD_NAME is set and configured in your environment."); } const apiKey = config?.cloud?.apiKey ?? import.meta.env.PUBLIC_CLOUDINARY_API_KEY; const secureDistribution = config?.url?.secureDistribution ?? import.meta.env.PUBLIC_CLOUDINARY_SECURE_DISTRIBUTION; const privateCdn = config?.url?.privateCdn ?? import.meta.env.PUBLIC_CLOUDINARY_PRIVATE_CDN; return Object.assign({ cloud: { ...config?.cloud, apiKey, cloudName }, url: { ...config?.url, secureDistribution, privateCdn } }, config); } function getCloudinaryAnalytics(analytics) { return Object.assign({ product: ASTRO_CLOUDINARY_ANALYTICS_PRODUCT_ID, sdkCode: ASTRO_CLOUDINARY_ANALYTICS_ID, sdkSemver: ASTRO_CLOUDINARY_VERSION, techVersion: ASTRO_VERSION, feature: "" }, analytics); } // src/helpers/getCldImageUrl.ts function getCldImageUrl(options, config, analytics) { return constructCloudinaryUrl({ options, config: getCloudinaryConfig(config), analytics: getCloudinaryAnalytics(analytics) }); } // src/constants/sizes.ts var OG_IMAGE_WIDTH = 1200; var OG_IMAGE_HEIGHT = 630; // src/helpers/getCldOgImageUrl.ts function getCldOgImageUrl(options, config, analytics) { return getCldImageUrl({ ...options, format: options.format || "jpg", width: options.width || OG_IMAGE_WIDTH, height: options.height || OG_IMAGE_HEIGHT, crop: options.crop || { width: options.width || OG_IMAGE_WIDTH, height: options.height || OG_IMAGE_HEIGHT, type: "fill", gravity: "center", source: true } }, config, analytics); } // src/helpers/getCldVideoUrl.ts import { constructCloudinaryUrl as constructCloudinaryUrl2 } from "@cloudinary-util/url-loader"; function getCldVideoUrl(options, config, analytics) { return constructCloudinaryUrl2({ options: { assetType: "video", format: "auto:video", ...options }, config: getCloudinaryConfig(config), analytics: getCloudinaryAnalytics(analytics) }); } export { getCldImageUrl, getCldOgImageUrl, getCldVideoUrl }; //# sourceMappingURL=index.js.map