fix: fixed the language thing and handling of project settings
This commit is contained in:
@@ -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();
|
||||
|
||||
@@ -810,6 +810,9 @@ export function registerIpcHandlers(): void {
|
||||
|
||||
safeHandle('meta:getProjectMetadata', async () => {
|
||||
const engine = getMetaEngine();
|
||||
if (!engine.isInitialized()) {
|
||||
await engine.syncOnStartup();
|
||||
}
|
||||
return engine.getProjectMetadata();
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user