fix: fixed the language thing and handling of project settings

This commit is contained in:
2026-02-17 20:11:28 +01:00
parent 80bc164917
commit 406568c78c
4 changed files with 52 additions and 0 deletions

View File

@@ -25,6 +25,8 @@ interface PostEngineContract {
interface MetaEngineContract {
getProjectMetadata: () => Promise<ProjectMetadata | null>;
setProjectContext: (projectId: string, dataDir?: string) => void;
isInitialized?: () => boolean;
syncOnStartup?: () => Promise<void>;
}
interface PreviewServerDependencies {
@@ -421,6 +423,10 @@ export class PreviewServer {
this.mediaEngine.setProjectContext?.(context.projectId, context.dataDir, context.dataDir);
this.settingsEngine.setProjectContext(context.projectId, context.dataDir);
if (this.settingsEngine.isInitialized && this.settingsEngine.syncOnStartup && !this.settingsEngine.isInitialized()) {
await this.settingsEngine.syncOnStartup();
}
const metadata = await this.settingsEngine.getProjectMetadata();
const maxPostsPerPage = clampMaxPostsPerPage(metadata?.maxPostsPerPage);
const htmlRewriteContext = await this.buildHtmlRewriteContext();

View File

@@ -810,6 +810,9 @@ export function registerIpcHandlers(): void {
safeHandle('meta:getProjectMetadata', async () => {
const engine = getMetaEngine();
if (!engine.isInitialized()) {
await engine.syncOnStartup();
}
return engine.getProjectMetadata();
});