@paroicms/site-generator-plugin
Version:
ParoiCMS Site Generator Plugin
32 lines (31 loc) • 1.23 kB
JavaScript
import Anthropic from "@anthropic-ai/sdk";
import { Mistral } from "@mistralai/mistralai";
import { readOrCreateJwtSecretSync } from "@paroicms/internal-server-lib";
import { join } from "node:path";
export function createRawContext(service, options) {
const { cn, logNextQuery, pluginConf, debugDir } = options;
const packConf = service.connector.getSitePackConf(pluginConf.packName);
const { sitesDir, packName } = packConf;
if (!sitesDir || packConf.serveOn !== "subDomain") {
throw new Error(`Site-generator plugin can generate sites only for sub-domain pack with "sitesDir", but pack "${packName}" doesn't have it`);
}
return {
cn,
logNextQuery,
jwtSecret: readOrCreateJwtSecretSync(join(service.registeredSite.dataDir, "site-generator-secret.txt")),
pluginConf,
debugDir,
sitesDir,
packConf,
service,
logger: service.logger,
anthropic: new Anthropic({
apiKey: pluginConf.anthropicApiKey,
}),
mistral: new Mistral({
apiKey: pluginConf.mistralApiKey,
}),
mistralModelName: "ministral-8b-2410",
anthropicModelName: "claude-sonnet-4-20250514",
};
}