import { creativeContextMessagesByLocale } from "@agent-native/creative-context/messages"; const messages = { creativeContext: creativeContextMessagesByLocale["en-US"], root: { commandPresentations: "Presentations", searchDecks: "Search decks", commandAppearance: "Appearance", toggleTheme: "Toggle theme", }, header: { settings: "Settings", decks: "Decks", designSystems: "Design Systems", team: "Team", extensions: "Extensions", deck: "Deck", tool: "Tool", slides: "Slides", }, navigation: { settings: "Settings", brand: "Slides", decks: "Decks", designSystems: "Design Systems", team: "Team", }, settings: { title: "Settings", description: "Language and workspace preferences for this app.", languageTitle: "Language", languageDescription: "Choose the interface language. This preference is saved for your account.", languageLabel: "Interface language", workspaceTitle: "Workspace", workspaceDescription: "Manage team members, organization access, and shared workspace preferences.", openTeamSettings: "Open team settings", openResourceSettings: "Open resource settings", agentTitle: "Manage agent", agentDescription: "Manage the agent's model, API keys, automations, voice, and other controls.", openAgentSettings: "Manage agent", }, agent: { emptyState: "Ask me anything about your presentations", suggestionPitch: "Build a 10-slide pitch from this doc", suggestionBrand: "Apply our brand to this deck", suggestionHero: "Generate a hero image for this slide", }, sidebar: { openNavigation: "Open navigation", expandSidebar: "Expand sidebar", collapseSidebar: "Collapse sidebar", }, notFound: { message: "This page doesn't exist yet.", backToDecks: "Back to Decks", }, raw: { deckOptions: "Deck options", generatingImage: "Generating image...", noAssetsYet: "No assets yet.", assetUploadFailed: "Some uploads failed", assetDeleteFailed: "Failed to delete asset", contentMarkdown: "Content (Markdown)", speakerNotes: "Speaker Notes", speakerNotesForSlide: "Speaker Notes — Slide {{index}} / {{count}}", writeContent: "Write your slide content in Markdown...", addSpeakerNotes: "Add speaker notes...", zoomOut: "Zoom out", zoomIn: "Zoom in", fitSlideToScreen: "Fit slide to screen", fitToScreen: "Fit to screen", agentWorking: "Agent is working", openChat: "Open chat", cloudAuthToken: "Auth token", cloudSetupSteps: "Setup steps", cloudConnectedReloading: "Connected successfully. Reloading...", cloudConnectionFailed: "Connection failed", cloudTestConnect: "Test & Connect", cloudSqliteEdge: "SQLite at the edge", cloudServerlessPostgres: "Serverless Postgres", cloudOpenSourceFirebaseAlternative: "Open source Firebase alternative", cloudCloudflareSqliteEdge: "SQLite on Cloudflare's edge", designSlidePreview: "Slide Preview", designSlideTitle: "Slide Title", designSupportingText: "Supporting text appears here with your brand styling applied consistently across all slides.", pasteUrl: "Paste URL", removeLink: "Remove link", firstSlidesTitle: "Preparing the first slides", firstSlidesDescription: "The deck will start filling in here as soon as each slide lands.", googleOAuthNotConfigured: "Google OAuth is not configured for this deployment.", googlePickerNeedsKeys: "Google Picker needs GOOGLE_PICKER_API_KEY and GOOGLE_PICKER_APP_ID.", imageUploadFailed: "Image upload failed", imageUploadNeedsBuilder: "Connect Builder.io from the agent composer model menu to upload images onto slides. Dropping an image onto empty canvas can still send it to the agent without a provider.", sentToAgent: "Sent to agent", imageUploadGenericError: "Something went wrong uploading this image.", uploading: "Uploading…", imagePromptTitle: "What should we do with this image?", imagePromptPlaceholder: "e.g. Use as the title-slide hero. Or: replace the headshot on slide 3.", imageSearchTitle: "Search Images", searchImagesPlaceholder: "Search for images...", searchForLogosImagesIcons: "Search for logos, images, icons...", search: "Search", searchFailed: "Search failed", logoSearchTitle: "Logo Search", searchCompanyLogo: "Search for a company to find their logo", searchCompanyPlaceholder: "Search company name (e.g. Intuit)", forDarkBg: "For dark bg", onDark: "On dark", symbolIcon: "Symbol / Icon", symbolDark: "Symbol dark", importFileTypes: "Import PPTX, DOCX, or PDF", mermaidConvertPrompt: "Convert this mermaid diagram to an editable Excalidraw drawing?", uploadAttachedFailed: "Could not upload the attached file.", uploadFailed: "Upload failed", doubleClickEdit: "Double-click any text to edit", dragToMove: "Drag to move", aiEditing: "AI editing", startTypingCommands: "Start typing… or press / for commands", pinDropHint: "Click anywhere to drop a comment pin", editSlide: "Edit slide", escExit: "Esc to exit", tellAgentChange: "Tell the agent what to change…", drawClearAll: "Clear all", drawExitMode: "Exit draw mode", tellAgentDo: "Tell the agent what to do…", typeAnnotation: "Type annotation…", typeAnywhere: "Type anywhere on the canvas", undoStroke: "Undo stroke", clearSelection: "Clear selection", sendToAgent: "Send to agent", saveReconnect: "Changes will save when reconnected", offline: "Offline", selected: "selected", chooseDesignSystem: "Choose a design system", presentationNotFound: "Presentation Not Found", sharedPresentationExpired: "This shared presentation doesn't exist or has expired.", routeNotFoundTitle: "Not Found - Slides", routeEditorTitle: "Editor — Slides", routeDesignSystemsTitle: "Design Systems - Slides", routeSettingsTitle: "Settings - Slides", routeSharedTitle: "Shared Presentation", routeTeamTitle: "Team — Slides", slidePreviewTitle: "Slide Preview", slideUnavailable: "Slide unavailable", couldNotLoadSlide: "Could not load slide.", openInApp: "Open in app", teamDescription: "Set up a team to share presentations with your colleagues.", }, designSystems: { new: "New Design System", setupBrand: "Set up your brand", emptyTitle: "Set up your brand identity", emptyDescription: "Create a design system with your brand colors, typography, and logos. Every new deck will follow your visual identity.", }, editorToolbar: { layoutTitle: "Title", layoutSection: "Section Divider", layoutContent: "Content", layoutTwoColumn: "Two Column", layoutImage: "Image", layoutStatement: "Statement", layoutFullImage: "Full Image", layoutBlank: "Blank", importingFile: "Importing file", readingFile: "Reading {{fileName}}...", uploadFailed: "Upload failed", uploadMissingPath: "Upload did not return a file path", importFailed: "Import failed", importFailedDescription: "Something went wrong importing this file.", importComplete: "Import complete", importCompleteSlides_one: "{{count}} slide imported from {{fileName}}.", importCompleteSlides_other: "{{count}} slides imported from {{fileName}}.", importCompleteFile: "File imported from {{fileName}}.", backToDecks: "Back to decks", toggleSlideList: "Toggle slide list", designSystem: "Design system", usingDesignSystem: "Using {{title}}", usingLinkedDesignSystem: "Using a linked design system", viewOnly: "View only", slideSettings: "Slide settings", layout: "Layout", background: "Background", customColor: "Custom color", media: "Media", generateImage: "Generate Image", assetLibrary: "Asset Library", diagrams: "Diagrams", insertMermaidDiagram: "Insert Mermaid Diagram", excalidrawCanvas: "Excalidraw Canvas", convertMermaidToExcalidraw: "Convert Mermaid to Excalidraw", removeExcalidrawCanvas: "Remove Excalidraw Canvas", transition: "Transition", transition_instant: "Instant", transition_fade: "Fade", transition_slide: "Slide", transition_zoom: "Zoom", aspectRatio: "Aspect Ratio", setAspectRatio: "Set deck to {{ratio}}", slideTools: "Slide tools", elementAnimations: "Element animations", tweaks: "Tweaks", drawOnSlide: "Draw on slide", addTextBox: "Add text box", pinComments: "Pin comments", pinCommentsDescription: "Click spots on the slide to queue several edits, then send them all at once.", undo: "Undo", undoWithShortcut: "Undo ({{shortcut}})", redo: "Redo", redoWithShortcut: "Redo ({{shortcut}})", preview: "Preview", code: "Code", comments: "Comments", editorLink: "Editor link", editorLinkDescription: "Opens the deck in the editor. Anyone with access can use this link.", presentationLink: "Presentation link", presentationLinkDescription: "Opens directly in fullscreen presentation mode.", present: "Present", more: "More", importing: "Importing...", importFile: "Import file", savedVersions: "Saved versions", lightTheme: "Light theme", darkTheme: "Dark theme", }, editorExport: { pptxFailed: "Could not generate PPTX file.", exportFailed: "Export failed", exportPptxError: "Something went wrong exporting as PPTX.", googleSlidesDownloaded: "Downloaded for Google Slides", googleSlidesImportHint: "Open Google Slides, choose File -> Import slides, then select the downloaded .pptx.", exportGoogleSlidesError: "Something went wrong exporting to Google Slides.", htmlFailed: "Could not generate HTML file.", exportHtmlError: "Something went wrong exporting as HTML.", export: "Export", exportAndDuplicate: "Export & Duplicate", shareWithTeam: "Share with team...", publicShareLink: "Public share link...", downloadHtml: "Download as HTML", exportPdf: "Export as PDF", exportPptx: "Export as PPTX", downloadGoogleSlides: "Download for Google Slides", duplicateDeck: "Duplicate deck", }, share: { createFailed: "Failed to create share link", title: "Share Presentation", cloudUpgradeDescription: "To share presentations publicly, connect a cloud database so your slides can be accessed from anywhere.", description: 'Create a shareable link for "{{title}}". Only this presentation will be accessible - no other decks.', whatGetsShared: "What gets shared:", slideContent: "- Slide content and layouts ({{count}} slides)", presentationView: "- Presentation view (fullscreen)", whatStaysPrivate: "What stays private:", speakerNotes: "- Speaker notes", otherPresentations: "- Other presentations", editingAccess: "- Editing access", creatingLink: "Creating link...", createShareLink: "Create Share Link", copyLink: "Copy link", openSharedLink: "Open shared link", anyoneWithLink: "Anyone with this link can view this presentation.", }, slideTextMenu: { brandColors: "Brand Colors", editPalette: "Edit palette", addColor: "Add color", removeColor: "Remove color", bold: "Bold", italic: "Italic", strikethrough: "Strikethrough", code: "Code", heading1: "Heading 1", heading2: "Heading 2", heading3: "Heading 3", bulletList: "Bullet List", orderedList: "Ordered List", link: "Link", pasteUrl: "Paste URL...", apply: "Apply", cancel: "Cancel", textColor: "Text color", copyStyleShortcut: "{{shortcut}} copy style", pasteStyleShortcut: "{{shortcut}} paste style", comment: "Comment", }, slideSlashMenu: { blocks: "Blocks", text: "Text", plainParagraph: "Plain paragraph", heading1: "Heading 1", largeSlideHeading: "Large slide heading", heading2: "Heading 2", mediumHeading: "Medium heading", heading3: "Heading 3", smallHeading: "Small heading", bulletList: "Bullet List", unorderedList: "Unordered list", numberedList: "Numbered List", orderedList: "Ordered list", quote: "Quote", blockquote: "Blockquote", }, comments: { deleteComment: "Delete comment", saveCommentFailed: "Could not save this comment.", addCommentPlaceholder: "Add a comment...", cancel: "Cancel", saving: "Saving...", comment: "Comment", saveReplyFailed: "Could not save this reply.", replyPlaceholder: "Reply...", reply: "Reply", resolveThread: "Resolve thread", hideReplies: "Hide replies", replyCount: "{{count}} replies", title: "Comments", addComment: "Add comment", close: "Close", hideResolved: "Hide resolved", showResolved: "Show {{count}} resolved", noCommentsYet: "No comments yet", loadFailed: "Couldn't load comments", retry: "Retry", clickToAddComment: "Click to add a comment", selectSlideToAdd: "Select a slide to add one", }, styleInspector: { title: "Style", close: "Close style inspector", deckStyle: "Deck style", designSystemTweaks: "Design system tweaks", closeTweaks: "Close tweaks", controls: "Controls", noDeckStyleControls: "No deck style controls yet.", type: "Type", color: "Color", size: "Size", line: "Line", regular: "Reg", medium: "Med", semi: "Semi", bold: "Bold", left: "Left", center: "Center", right: "Right", justify: "Justify", fill: "Fill", tint: "Tint", transparent: "Transparent", alpha: "Alpha", stroke: "Stroke", radius: "Rad", strokeColor: "Stroke color", spacing: "Spacing", x: "X", y: "Y", primary: "Primary", secondary: "Secondary", accent: "Accent", surface: "Surface", background: "Background", text: "Text", muted: "Muted", white: "White", black: "Black", slate: "Slate", blue: "Blue", cyan: "Cyan", emerald: "Emerald", amber: "Amber", rose: "Rose", }, animations: { appear: "Appear", fade: "Fade", slideUp: "Slide Up", zoom: "Zoom", elementFallback: "Element {{index}}", title: "Animations", close: "Close animations panel", emptyTitle: "No animations yet.", emptyDescription: "Add elements below to reveal them on click.", clearAll: "Clear all", elements: "Elements", autoFill: "Auto-fill", noAnimatableElements: "No animatable elements detected on this slide.", }, generateSlides: { title: "Generate Slides with AI", description: "Describe your presentation topic and AI will generate slides for you.", topic: "Topic", topicPlaceholder: "e.g. Introduction to React Hooks, Q4 Sales Report, Product Roadmap 2025...", slides: "Slides", slideCount_one: "{{count}} slide", slideCount_other: "{{count}} slides", styleOptional: "Style (optional)", stylePlaceholder: "e.g. minimal, corporate...", generateImages: "Generate images", generateImagesDescription: "AI will generate images for visual slides using Gemini", referenceImages: "Reference Images (optional, for brand consistency)", referenceImagesDescription: "Upload images to match their visual style in generated images", generating: "Generating slides...", generate: "Generate Slides", }, history: { unknownTime: "Unknown time", justNow: "Just now", minutesAgo: "{{count}}m ago", hoursAgo: "{{count}}h ago", daysAgo: "{{count}}d ago", slideCount_one: "{{count}} slide", slideCount_other: "{{count}} slides", versionRestored: "Version restored", versionRestoredDescription: "The deck was rolled back to the selected snapshot.", restoreFailed: "Restore failed", restoreFailedDescription: "Could not restore this deck version.", backToSavedVersions: "Back to saved versions", savedVersions: "Saved versions", description: "Browse saved deck versions and restore a previous snapshot.", untitled: "Untitled", snapshotUnavailable: "Snapshot unavailable", slideNumber: "Slide {{number}}", noSlidesInSnapshot: "No slides in this snapshot.", restoreThisVersion: "Restore this version", noSavedVersions: "No saved versions yet", noSavedVersionsDescription: "Versions are saved automatically before future deck edits.", }, editorSidebar: { selectSlide: "Select slide {{number}}", duplicateSlide: "Duplicate slide", duplicate: "Duplicate", deleteSlide: "Delete slide", delete: "Delete", generatingSlide: "Generating slide", uploadFailed: "Upload failed", uploadAttachedFileFailed: "Could not upload the attached file.", addSlides: "Add slides", addEmptySlide: "Add empty slide", noAi: "no AI", duplicateCurrentSlide: "Duplicate current slide", promptPlaceholder: "Describe the slides you want...", slides: "Slides", }, presentation: { noSlides: "No slides to present", previousSlide: "Previous slide", nextSlide: "Next slide", exitPresentation: "Exit presentation", enterFullscreen: "Enter fullscreen", clickToEnterFullscreen: "Click to enter fullscreen", }, deckEditor: { lookingForDeck: "Looking for this deck", teamAccessCheckFailed: "Couldn't check team access", joinTeamToOpen: "Join your team to open this deck", deckUnavailable: "Deck unavailable", checkingSharedAccess: "Checking whether this presentation is shared with your account.", verifySharedAccessFailed: "We couldn't verify whether this presentation is shared with your account. Try again to reload team access and the deck.", joinTeamDescription: "This link points to a team presentation. Join the team shown above and the deck will open here automatically.", deckUnavailableDescription: "This deck may have been removed, or your account does not have access to it.", backToDecks: "Back to Decks", tryAgain: "Try again", imageUploadFailed: "Image upload failed", imageUploadNeedsBuilder: "Connect Builder.io from the agent composer model menu to upload images onto slides. Dropping an image onto empty canvas can still send it to the agent without a provider.", imageAdded: "Image added", imageUploadError: "Something went wrong uploading this image.", exportFailed: "Export failed", deckHasNoSlides: "Deck has no slides.", pdfRenderFailed: "Could not render PDF.", buildingDeck: "Building deck", slidesAdded_one: "{{count}} slide added", slidesAdded_other: "{{count}} slides added", }, designSystemSetup: { importedBrand: "Imported brand", figFileRequired: "Please choose a .fig file (in Figma: File > Save local copy).", figFileTooLarge: "File too large (max {{maxSize}}).", figParseFailed: "Could not start Builder indexing for that Figma file.", updated: "Design system updated", updateFailed: "Failed to update", generationStarted: "Design system generation started", generationStartedDescription: "You can keep working while the agent processes the sources.", editTitle: "Edit Design System", newTitle: "New Design System", editDescription: "Update your brand identity.", newDescription: "Connect Figma, code, and optional design.md guidance through Builder DSI.", companyBrand: "Company / Brand", companyBrandPlaceholder: "Acme Inc. — We build developer tools...", figmaFile: "Connect Figma", parsingFigmaFile: "Starting Builder DSI indexing...", uploadFigDescription: "Upload a .fig local copy for Builder DSI", builderIndexingStarted: "Builder indexing started", builderIndexingDescription: "Builder is indexing {{title}} into a reusable design system.", builderDesignSystemId: "Design system", builderJobId: "Job", openInBuilder: "Open in Builder", websiteUrl: "Website URL", websitePlaceholder: "example.com or Nike", add: "Add", githubRepository: "Connect Code: GitHub repository", codeFiles: "Connect Code Files", codeFilesDrop: "CSS, Tailwind config, theme files, design.md — drop or click", documents: "Documents & Presentations", documentsDrop: "PPTX, DOCX, PDF, Markdown, TXT — brand guides, design docs", visualReferences: "Screenshots & Visual References", visualReferencesDrop: "Product screenshots, mood boards, logos", forkExisting: "Fork an existing design system", brandNotes: "Brand Notes", additionalNotes: "Additional Notes", notesPlaceholder: "Design preferences, constraints, brand guidelines...", customInstructions: "Custom instructions", customInstructionsPlaceholder: "e.g. Always open with a single-stat title slide. Never use bullet lists longer than 3 items. Keep slide titles under 6 words...", customInstructionsDescription: "Saved with the design system. Re-applied every time the agent uses it to generate slides.", cancel: "Cancel", saving: "Saving...", saveChanges: "Save Changes", continueToGeneration: "Continue to generation", removeItem: "Remove {{item}}", chooseAnotherFile: "Choose another file", }, home: { loadFailed: "Couldn't load your content", loadFailedDescription: "Your saved content is still available. Check the connection and try again.", retry: "Retry", decksTitle: "Decks", newDeck: "New Deck", deckLengthQuestion: "How long should this deck be?", deckLengthHeader: "Deck length", deckLengthShort: "Short (3–5 slides)", deckLengthMedium: "Medium (6–10 slides)", deckLengthLong: "Long (11+ slides)", deckLengthSingleVisual: "Just one visual", generationStartFailed: "Couldn't start deck generation", generationStartFailedDescription: "The new deck did not finish saving, so the agent was not started against a missing deck. Your prompt was saved so you can try again.", showAllDecks: "Show all decks", all: "All", showMineDecks: "Show decks created by me", mine: "Mine", deckCount_one: "deck", deckCount_other: "decks", createDeckOrVisual: "Create a deck or visual", noMineDecks: "No decks created by you yet.", deleteDeckTitle: "Delete Deck?", deleteDeckDescription: "This will permanently delete this deck and all its slides. This action cannot be undone.", cancel: "Cancel", delete: "Delete", newDeckPromptTitle: "New deck", newDeckPlaceholder: "Describe your deck, visual, or diagram...", skipPrompt: "Skip prompt", designSystem: "Design system", none: "None", defaultSuffix: " (Default)", signInTitle: "Sign in to create a deck", signInDescription: "You need to sign in before generating a deck. We've saved your prompt — once you're back, it'll be ready to go.", signInDescriptionWithFiles: "You need to sign in before generating a deck. We've saved your prompt; reattach any files once you're back.", signIn: "Sign in", emptyTitle: "Create your first deck or visual", emptyDescription: "Build beautiful presentations, standalone visuals, diagrams, and image-rich stories with AI-powered generation.", }, }; export default messages;