feat: image generation overhaul (model-aware text, dim clamping, \.30 pricing), event-driven dashboard cache invalidation, SEO insights (AI visibility, GSC, keyword gap), YouTube OAuth/publish, blog writer & content planning improvements, scheduler monitoring updates

This commit is contained in:
ajaysi
2026-05-30 07:58:22 +05:30
parent aaf94049da
commit 64f1f88cdd
129 changed files with 8796 additions and 8755 deletions

View File

@@ -13,6 +13,7 @@ interface BlogWriterLandingSectionProps {
blogLengthRef?: React.MutableRefObject<string>;
startResearchRef?: React.MutableRefObject<((keywords: string, blogLength?: string) => Promise<any>) | null>;
restoreAttempted?: boolean;
onBrainstormResult?: (result: import('../../../api/gscBrainstorm').BrainstormResult) => void;
}
const VALID_PHASES = ['research', 'outline', 'content', 'seo', 'publish'];
@@ -27,6 +28,7 @@ export const BlogWriterLandingSection: React.FC<BlogWriterLandingSectionProps> =
blogLengthRef,
startResearchRef,
restoreAttempted = false,
onBrainstormResult,
}) => {
if (!research) {
if (currentPhase === 'research') {
@@ -36,6 +38,7 @@ export const BlogWriterLandingSection: React.FC<BlogWriterLandingSectionProps> =
onKeywordsChange={onKeywordsChange}
blogLengthRef={blogLengthRef}
researchRef={startResearchRef}
onBrainstormResult={onBrainstormResult}
/>
);
}