UNPKG

alinea

Version:
59 lines (57 loc) 1.51 kB
import "../../chunks/chunk-NZLE2WMY.js"; // src/adapter/next/with-alinea.ts import { readFileSync } from "node:fs"; import { createRequire } from "node:module"; import { resolve } from "node:path"; function createCMS() { throw new Error( 'Alinea was loaded in a CJS environment. Please ensure your project is marked as "type": "module" in package.json.' ); } function withAlinea(config) { let nextVersion = 15; try { const require2 = createRequire(resolve("./index.js")); const pkgLocation = require2.resolve("next/package.json"); const pkg = JSON.parse(readFileSync(pkgLocation, "utf-8")); nextVersion = Number(pkg.version.split(".")[0]); } catch { console.warn("Alinea could not determine Next.js version, assuming 15+"); } const imagesConfig = config.images ?? {}; const remotePatterns = [ ...imagesConfig.remotePatterns ?? [], { protocol: "https", hostname: "uploads.alinea.cloud" } ]; const images = { ...imagesConfig, remotePatterns }; if (nextVersion < 15) return { ...config, experimental: { ...config.experimental, serverComponentsExternalPackages: [ ...config.experimental?.serverComponentsExternalPackages ?? [], "@alinea/generated" ] }, images }; return { ...config, serverExternalPackages: [ ...config.serverExternalPackages ?? [], "@alinea/generated" ], images }; } export { createCMS, withAlinea };