Files
moteva/frontend/src/i18n/locales/en-US.json
T
root 9da13d2814 fix(canvas): label the generating skeleton with status, not the planned title
Show a localized "Generating" label on the artboard generation skeleton
while keeping the planned title as the aria-label, so in-progress nodes read
as a status instead of prematurely displaying their eventual name.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-17 09:07:37 +08:00

765 lines
39 KiB
JSON

{
"appName": "Moteva",
"heroTitle": "Moteva makes design simple",
"heroSubtitle": "A design agent that understands the brief and carries the work forward.",
"defaultPrompt": "Ask Moteva to make a high-converting e-commerce product visual.",
"promptPlaceholder": "Ask Moteva to explore your next design project...",
"continuePrompt": "Continue the website design. Start with the homepage hero, or give me a specific module direction.",
"followupPrompt": "Extend a new direction while keeping the brand tone consistent.",
"upgrade": "Upgrade",
"login": "Log in",
"account": "Account",
"freePlan": "Free",
"accountManagement": "Account",
"accountProfileHome": "Profile",
"accountSubscription": "Subscription",
"accountBilling": "Billing",
"accountInfo": "Account Info",
"changeAvatar": "Change Avatar",
"username": "Username",
"email": "Email",
"deviceManagement": "Device Management",
"removeAllDevices": "Remove Other Devices",
"removeAllDevicesDescription": "A Moteva account is for personal use only. To prevent abuse and keep the platform stable, tasks can run in up to {desktop} desktop web sessions and {mobile} mobile web sessions at the same time. For team or multi-person use, please purchase Team Plan.",
"deviceLimitsLoading": "Loading the current device policy.",
"deviceLimitsUnavailable": "The current device policy is temporarily unavailable.",
"onlineStatus": "Online",
"deviceInfo": "Device Info",
"deviceStatus": "Device status",
"currentDevice": "Current Device",
"system": "System",
"currentLoginAccount": "Current account: {name}",
"accountDeviceDesktop": "Desktop",
"accountDeviceMobile": "Mobile",
"accountDeviceUnknownSystem": "Unknown system",
"accountDeviceUnknownBrowser": "Unknown browser",
"deviceOnline": "Online",
"deviceOffline": "Offline",
"deviceLastSeen": "Last active {time}",
"deviceListLoading": "Loading devices",
"deviceListLoadFailed": "Could not load devices",
"noActiveDevices": "No active devices",
"retry": "Retry",
"avatarImageRequired": "Please choose an image file.",
"avatarTooLarge": "Avatar image must be under 2 MB.",
"avatarUpdateFailed": "Failed to update avatar. Please choose the image again.",
"avatarUpdated": "Avatar updated.",
"usernameRequired": "Username cannot be empty.",
"usernameUpdated": "Username updated.",
"usernameUpdateFailed": "Failed to update username. Please try again later.",
"currentDeviceNotice": "This is the device you are using now.",
"devicesRemoved": "{count} other device(s) removed.",
"devicesRemoving": "Removing",
"devicesRemoveFailed": "Could not remove the other devices. Please try again.",
"removeAllDevicesConfirmTitle": "Remove other devices?",
"removeAllDevicesConfirmText": "This will sign out {count} other device(s). Your current device will stay signed in.",
"guides": "Guides",
"contactUs": "Contact us",
"logout": "Log out",
"credits": "{count} Credits",
"attachReference": "Attach reference",
"dropImageToUpload": "Release to upload image",
"dropImageSubtext": "Supports JPG, PNG, SVG or WebP",
"webReference": "Web reference",
"modelSelection": "Model selection",
"webEnabled": "Web reference on",
"modelsTitle": "Models",
"autoModel": "Auto",
"modelImageTab": "Image",
"modelVideoTab": "Video",
"model3dTab": "3D",
"modelComingSoon": "This version currently supports image models only.",
"referenceImages": "Reference images",
"removeReference": "Remove reference image",
"promptExamples": "Prompt examples",
"promptDirectiveWeb": "Start with web references and extract usable trends, competitor structures, and visual keywords.",
"promptDirectiveModel": "Selected model: {model}.",
"promptDirectiveReference": "Reference image {index} ({name}): {url}",
"promptDirectiveAnnotation": "Annotation {index}: canvas position x={x}, y={y}",
"annotationLabel": "Annotation {index}",
"startDesign": "Start design",
"recentProjects": "Recent Projects",
"viewAll": "View all",
"collapse": "Collapse",
"expandLayer": "Expand layer",
"newProject": "New Project",
"continueEditing": "Continue",
"inspiration": "Inspiration",
"inspirationCategories": "Inspiration categories",
"loadMore": "Load more",
"close": "Close",
"reset": "Reset",
"usePrompt": "Use prompt",
"createFromInspiration": "Create from this",
"views": "views",
"likes": "likes",
"home": "Home",
"projects": "Projects",
"brandKit": "Brand Kit",
"brandKitAbout": "About Brand Kits",
"brandKitAddColor": "Add color",
"brandKitAddColorGroup": "Add color group",
"brandKitAddFirstColor": "Add first color",
"brandKitAddTypography": "Add type group",
"brandKitApplied": "Brand Kit applied to this canvas",
"brandKitApplyNewProjects": "Apply to new projects",
"brandKitBindingError": "The Brand Kit could not be applied to this canvas.",
"brandKitAssetsDescription": "Keep logos, a library cover, and visual references together as reusable source material for generation.",
"brandKitAssetsNav": "Assets",
"brandKitAssetsTitle": "Assets",
"brandKitAudience": "Core audience",
"brandKitAudiencePlaceholder": "Who are they, what situation are they in, and what matters most?",
"brandKitBoardMessage": "Ideas, kept in motion.",
"brandKitBoardType": "Brand type",
"brandKitBrandName": "Brand name",
"brandKitBrandNamePlaceholder": "For example: Moteva",
"brandKitCancel": "Cancel",
"brandKitColorDescription": "Give every color a role so generated work uses the palette intentionally.",
"brandKitColorCount": "{count} colors",
"brandKitColorGroupName": "Color group name",
"brandKitColorGroupNamePlaceholder": "For example: Primary",
"brandKitColorHex": "Hex color",
"brandKitColorName": "Color name",
"brandKitColorNav": "Color",
"brandKitColorPicker": "Choose color",
"brandKitColorTitle": "Color system",
"brandKitColorUsage": "Color usage",
"brandKitColorUsagePlaceholder": "Primary text, background, or key action",
"brandKitCleared": "Brand Kit removed from this canvas",
"brandKitCompletion": "{count}% complete",
"brandKitComposition": "Composition principles",
"brandKitCompositionPlaceholder": "Describe visual focus, grid, negative space, and hierarchy.",
"brandKitCopySuffix": "Copy",
"brandKitCreateProject": "Create project with this kit",
"brandKitCreateRequirement": "Add a brand name, summary, and audience or positioning before creating a project",
"brandKitCreate": "Create Brand Kit",
"brandKitCreatingProject": "Creating project...",
"brandKitCoverDescription": "The identifying image used for this Brand Kit in the library.",
"brandKitCoverReadError": "This cover image could not be read.",
"brandKitCoverReady": "Brand Kit cover",
"brandKitCoverSizeError": "Cover images must be under 1 MB.",
"brandKitCoverTitle": "Cover image",
"brandKitCoverTypeError": "Upload a PNG, JPG, WebP, or SVG cover.",
"brandKitCoverUploaded": "Cover image added",
"brandKitDefault": "Default",
"brandKitDelete": "Delete",
"brandKitDeleteDescription": "“{name}” will be removed from your account. Canvases using it will switch to no Brand Kit.",
"brandKitDeleteTitle": "Delete this Brand Kit?",
"brandKitDeleted": "Brand Kit deleted",
"brandKitDonts": "Avoid",
"brandKitDontsPlaceholder": "List colors, compositions, imagery, or language that weaken recognition.",
"brandKitDos": "Use",
"brandKitDosPlaceholder": "List the visual habits and brand moves that must stay consistent.",
"brandKitDuplicate": "Duplicate",
"brandKitDuplicated": "Copy created",
"brandKitEditorEyebrow": "Brand system",
"brandKitEmptyDescription": "Keep positioning, voice, logos, colors, and type in one place so every generation carries the same brand decisions forward.",
"brandKitEmptyShort": "No Brand Kits yet",
"brandKitEmptyTitle": "Make every generation feel like the same brand",
"brandKitExampleBadge": "Example",
"brandKitExampleDescription": "See how a complete set of brand inputs guides both visual and verbal expression.",
"brandKitExampleEyebrow": "Moteva example kit",
"brandKitExampleFooter": "The example is not saved to your library",
"brandKitExampleTemplateName": "Moteva Brand Template",
"brandKitFontFamily": "Font family",
"brandKitFontDescription": "Description",
"brandKitFontDescriptionPlaceholder": "Optional: hierarchy, context, and usage limits",
"brandKitFontReadError": "This font file could not be read.",
"brandKitFontSizeError": "Font files must be under 1 MB.",
"brandKitFontSizes": "Sizes",
"brandKitFontSizesPlaceholder": "Optional: 12 / 16 / 24",
"brandKitFontTypeError": "Upload a WOFF, WOFF2, TTF, or OTF font file.",
"brandKitFontUploaded": "Font uploaded and applied to the preview",
"brandKitFontUsage": "Font usage",
"brandKitFontUsagePlaceholder": "Hierarchy, sizes, and intended contexts",
"brandKitFontWeight": "Weight",
"brandKitFoundationDescription": "State who the brand is and the value it provides in the fewest useful words.",
"brandKitFoundationNav": "Foundation",
"brandKitFoundationTitle": "Brand foundation",
"brandKitImagery": "Image direction",
"brandKitImageryPlaceholder": "Describe subject, light, background, material, and finishing.",
"brandKitLibraryTitle": "My Brand Kits",
"brandKitLoadError": "Your Brand Kits could not be loaded.",
"brandKitLoading": "Loading Brand Kits",
"brandKitLogoDescription": "Upload the logo variants you use and define the boundaries for each one.",
"brandKitLogoLimitError": "Each Brand Kit can store up to 4 logos.",
"brandKitLogoMark": "Mark",
"brandKitLogoName": "Logo name",
"brandKitLogoNav": "Logo",
"brandKitLogoPrimary": "Primary",
"brandKitLogoReadError": "This logo file could not be read.",
"brandKitLogoSecondary": "Secondary",
"brandKitLogoSizeError": "Logo files must be under 1 MB.",
"brandKitLogoTitle": "Logo",
"brandKitLogoTypeError": "Upload a PNG, JPG, WebP, or SVG file.",
"brandKitLogoUsage": "Logo usage",
"brandKitLogoUsagePlaceholder": "Backgrounds, clear space, and prohibited uses",
"brandKitLogoVariant": "Logo variant",
"brandKitMoreActions": "More Brand Kit actions",
"brandKitNameLabel": "Brand Kit name",
"brandKitNew": "New",
"brandKitNewColorGroup": "New color group",
"brandKitNewTypography": "New type group",
"brandKitNone": "None",
"brandKitNoneDescription": "Use only this canvas and prompt",
"brandKitOptional": "Optional",
"brandKitPersonality": "Brand personality",
"brandKitPersonalityPlaceholder": "For example: clear, perceptive, restrained, collaborative",
"brandKitPositioning": "Positioning",
"brandKitPositioningPlaceholder": "How should people understand this brand relative to alternatives?",
"brandKitPreviewLabel": "Moteva Brand Kit preview",
"brandKitProjectInstruction": "Create an editable brand visual project from the system above. Establish one clear direction first and keep the key brand decisions visible on the canvas.",
"brandKitProjectTitle": "{name} Brand Project",
"brandKitPrompt": "Reusable generation direction",
"brandKitPromptPlaceholder": "Turn the most important brand constraints into a direction ready for generation.",
"brandKitReady": "readiness",
"brandKitReferenceDescription": "Upload visual samples that express the brand's composition, photography, material, or mood, then note what to carry forward.",
"brandKitReferenceGuidance": "Reference guidance",
"brandKitReferenceGuidancePlaceholder": "Optional: note the composition, color, texture, or treatment to inherit.",
"brandKitReferenceLimitError": "Each Brand Kit can store up to 6 reference images.",
"brandKitReferenceName": "Reference name",
"brandKitReferenceNamePlaceholder": "For example: Product photography direction",
"brandKitReferenceReadError": "This reference image could not be read.",
"brandKitReferenceSizeError": "Reference images must be under 1 MB.",
"brandKitReferenceTitle": "Reference images",
"brandKitReferenceTypeError": "Upload a PNG, JPG, WebP, or SVG reference image.",
"brandKitReferenceUploaded": "Reference image added",
"brandKitRemoveColor": "Remove color",
"brandKitRemoveColorGroup": "Remove color group",
"brandKitRemoveCover": "Remove cover image",
"brandKitRemoveFont": "Remove font file",
"brandKitRemoveLogo": "Remove logo",
"brandKitRemoveReference": "Remove reference image",
"brandKitRemoveTypography": "Remove type group",
"brandKitReplaceCover": "Replace cover",
"brandKitReplaceFont": "Replace",
"brandKitSaveError": "The Brand Kit could not be saved to your account.",
"brandKitSaveFailed": "Save failed",
"brandKitSaved": "Saved",
"brandKitSaving": "Saving",
"brandKitSectionNavLabel": "Brand Kit sections",
"brandKitSelect": "Choose Brand Kit",
"brandKitStartDescription": "Capture the decisions that shape creative work first, then add the visual assets.",
"brandKitStartTitle": "Make the brand decisions explicit",
"brandKitStrategyDescription": "Define who you are designing for and the position the brand should own.",
"brandKitStrategyNav": "Audience & position",
"brandKitStrategyTitle": "Audience and positioning",
"brandKitSummary": "Brand summary",
"brandKitSummaryPlaceholder": "Describe the brand, product, and core value in one or two sentences.",
"brandKitTagline": "Tagline",
"brandKitTaglinePlaceholder": "A short line that can represent the brand",
"brandKitTemplateAdded": "Example added to your Brand Kit library",
"brandKitTypographyAccent": "Accent type",
"brandKitTypographyBody": "Body type",
"brandKitTypographyDescription": "Upload brand fonts, create custom groups, and optionally define weight, sizes, and usage guidance.",
"brandKitTypographyHeading": "Heading type",
"brandKitTypographyNav": "Typography",
"brandKitTypographyTitle": "Typography system",
"brandKitTypographyName": "Type group name",
"brandKitTypographyNamePlaceholder": "For example: Heading type",
"brandKitUntitled": "Untitled Brand Kit",
"brandKitUnnamedBrand": "Brand name not set",
"brandKitUploadLogo": "Upload logo",
"brandKitUploadLogoHint": "PNG, JPG, WebP, or SVG up to 1 MB",
"brandKitUploadCover": "Upload cover image",
"brandKitUploadCoverHint": "Optional, 16:9 recommended, up to 1 MB",
"brandKitUploadFont": "Upload font",
"brandKitUploadFontHint": "WOFF / WOFF2 / TTF / OTF up to 1 MB",
"brandKitUploadReference": "Upload reference image",
"brandKitUploadReferenceHint": "Optional, PNG, JPG, WebP, or SVG up to 1 MB",
"brandKitUseTemplate": "Use this template",
"brandKitViewExample": "View example",
"brandKitVisualDescription": "Translate an abstract tone into reusable composition, image, and generation rules.",
"brandKitVisualKeywords": "Style keywords",
"brandKitVisualKeywordsPlaceholder": "For example: precise, natural, restrained, energetic",
"brandKitVisualNav": "Visual direction",
"brandKitVisualTitle": "Visual direction",
"brandKitVoiceDescription": "Define how the brand speaks and provide one line that makes the voice concrete.",
"brandKitVoiceGuidance": "Voice guidance",
"brandKitVoiceGuidancePlaceholder": "Describe sentence shape, vocabulary, information order, and language to avoid.",
"brandKitVoiceNav": "Voice",
"brandKitVoiceSample": "Sample line",
"brandKitVoiceSamplePlaceholder": "Write one line that sounds unmistakably like this brand.",
"brandKitVoiceTitle": "Brand voice",
"brandKitVoiceTraits": "Voice traits",
"brandKitVoiceTraitsPlaceholder": "For example: direct, never abrupt; expert, never showy",
"personalProjects": "Personal Projects",
"projectLibrarySubtitle": "Recent projects only shows three. Manage every personal canvas here.",
"editProjects": "Edit",
"doneEditing": "Done",
"selectedProjectsCount": "{count} selected",
"deleteSelected": "Delete",
"loadingProjects": "Loading projects...",
"loadMoreProjects": "Load more projects",
"projectsEmpty": "No projects yet. Create a canvas to start.",
"deleteProjectsTitle": "Delete selected projects?",
"deleteProjectsWarning": "This removes the selected projects, canvas content, history, and conversation records. This cannot be undone.",
"deleteProjectsDetails": "Image assets in these projects will be deleted from OSS asynchronously in the background and may take a moment to finish.",
"deleteProjectsConfirm": "Delete selected",
"members": "Members",
"info": "Info",
"settings": "Settings",
"create": "Create",
"loadingCanvas": "Opening canvas...",
"unsaved": "Unsaved",
"synced": "Synced",
"nodes": "nodes",
"promo": "Limited offer, 50% off · Image-2 from $0.004/image for image generation and editing",
"upgradeNow": "Upgrade now",
"backHome": "Back home",
"notFoundTitle": "404: Page not found!",
"notFoundDescription": "We looked everywhere, but could not find the page you are looking for.",
"notFoundIllustration": "404 page not found",
"save": "Save",
"share": "Share",
"shareLinkCopied": "Share link copied",
"shareUnavailable": "Sharing is unavailable",
"shareDesign": "Share design",
"sharePeopleWithAccess": "People with access",
"shareAddPeople": "Add people",
"shareVisitorCount": "{count} visitors",
"shareVisitors": "Visitors",
"shareAccessLevel": "Access level",
"shareAnyoneWithLink": "Anyone with the link",
"shareLinkPermission": "Link permission",
"sharePrivate": "Private",
"shareCanvasOnly": "Canvas only",
"shareCanView": "Can view",
"shareCanEdit": "Can edit",
"sharePrivateHint": "Only invited people can access",
"shareCanvasHint": "Shows only the canvas without chat or editing tools",
"shareViewerHint": "Can view the canvas and chat, but cannot edit",
"shareEditorHint": "Sign-in is required before editing",
"shareCopyLink": "Copy link",
"shareEmail": "Email",
"shareReadOnlyLink": "Shared link",
"shareViewerCopyHint": "You can copy and forward this shared link.",
"shareInvitePlaceholder": "Add an email address or phone number",
"shareInvite": "Invite",
"shareInviteAdded": "Person added",
"shareOwner": "Owner",
"shareNoVisitors": "No visitors yet.",
"shareAnonymousVisitor": "Anonymous visitor",
"shareRemoveAllTitle": "Remove access for everyone",
"shareRemoveAllDescription": "Remove everyone with access and make the design private. The old share link will stop working immediately.",
"shareRemoveAccess": "Remove access",
"shareConfirmRemove": "Confirm removal",
"shareAccessRemoved": "All shared access was removed",
"shareSettingsLoadError": "Could not load sharing settings",
"shareVisitorsLoadError": "Could not load visitors",
"shareUpdateError": "Could not update sharing settings",
"remove": "Remove",
"download": "Download",
"generate": "Generate",
"more": "More",
"add": "Add",
"conversation": "Chat",
"newChat": "New chat",
"conversationHistory": "History",
"loadingConversationHistory": "Loading conversation history...",
"scrollToLatest": "Scroll to latest",
"searchConversationPlaceholder": "Search conversations",
"deleteConversation": "Delete conversation",
"noConversationHistory": "No history yet",
"copyProject": "Copy project",
"canvasUntitled": "Untitled",
"renameCanvasTitle": "Rename canvas",
"renameImageNode": "Rename image",
"imageTitlePlaceholder": "Image name",
"renameLayer": "Rename layer",
"layerTitlePlaceholder": "Layer name",
"projectTitlePlaceholder": "Name this canvas",
"select": "Select",
"pan": "Move",
"pin": "Pin",
"pen": "Pen",
"penColor": "Pen color",
"penWidth": "Pen width",
"grid": "Grid",
"smartArtboard": "Smart artboard",
"shapeTool": "Shapes",
"shapeRectangle": "Rectangle",
"shapeLine": "Line",
"shapeArrow": "Arrow",
"shapeEllipse": "Ellipse",
"shapePolygon": "Polygon",
"shapeStar": "Star",
"cornerRadius": "Corner radius",
"shapeVertices": "Vertices",
"shapeInnerRadius": "Inner radius",
"booleanOperation": "Boolean operation",
"booleanUnion": "Union",
"booleanSubtract": "Subtract",
"booleanIntersect": "Intersect",
"booleanExclude": "Exclude",
"booleanFlatten": "Flatten",
"fill": "Fill",
"stroke": "Stroke",
"textFill": "Text fill",
"textStroke": "Text stroke",
"textAlign": "Text align",
"textOptions": "Text options",
"searchFonts": "Search fonts",
"allFonts": "All fonts",
"fontFamily": "Font",
"fontWeight": "Weight",
"fontSize": "Size",
"lineHeight": "Line height",
"letterSpacing": "Letter spacing",
"autoLineHeight": "Auto line height",
"solidLine": "Solid",
"dashedLine": "Dashed",
"dottedLine": "Dotted",
"strokeWidth": "Width",
"layout": "Layout",
"auto": "Auto",
"manual": "Manual",
"customSize": "Custom",
"webPageSize": "Web",
"adaptiveSize": "Fit",
"widthShort": "W",
"heightShort": "H",
"lockAspectRatio": "Lock aspect ratio",
"unlockAspectRatio": "Unlock aspect ratio",
"zoomIn": "Zoom in",
"zoomOut": "Zoom out",
"zoomMenu": "Zoom",
"zoomShowAll": "Show all canvas elements",
"zoomTo": "Zoom to {percent}%",
"lockCanvas": "Lock canvas",
"minimap": "Minimap",
"canvasBackgroundColor": "Canvas background color",
"canvasCursor": "Canvas status",
"imageNode": "Image node",
"uploadImageNode": "Upload image node",
"uploadCanvasAsset": "Upload image or CAD file",
"imageUploadSuccess": "Image uploaded",
"cadImportConverting": "Converting CAD drawing",
"cadImportSuccess": "Imported {count} CAD drawing(s)",
"cadImportTooLarge": "CAD files must be 24 MB or smaller.",
"cadImportTimeout": "CAD conversion timed out. Simplify the drawing and try again.",
"cadImportEmpty": "The CAD drawing has no visible model-space content.",
"cadImportUnsupported": "This browser cannot convert the selected CAD file.",
"cadImportFailed": "CAD conversion failed. Check that the file is complete and uses a supported version.",
"uploadingImage": "Uploading",
"extractingText": "Extract text",
"generatingImage": "Generating",
"textNode": "Text node",
"frameNode": "Frame",
"generateImage": "Generate image",
"addTextBox": "Add text box",
"imageGeneratorNode": "Image Generator",
"newImageNode": "Image direction",
"newFrameNode": "Website artboard",
"newPenStrokeNode": "Pen stroke",
"newTextNode": "Text note",
"newTextNodeContent": "Capture a design decision, revision, or next task.",
"layers": "Layers",
"layerHistory": "History",
"layerNoHistory": "No history yet",
"layerNoLayers": "No layers",
"generatedFiles": "Generated files",
"generatedFilesEmpty": "No generated files yet",
"generatedFilesEnd": "End",
"layerGroup": "Group",
"layerItemsCount": "{count} layers",
"mergedLayerTitle": "Merged layer",
"skillLine": "Combined skills · Visual search · Image design",
"synthesizeSkills": "Web searched",
"searchComplete": "Web search complete",
"searchingWeb": "Searching web",
"searchFailed": "Web search failed",
"agentSearchCard": "Searching {query} and extracting design references...",
"agentThinking": "Agent thinking",
"selected": "Selected",
"selectedImageSummary": "Image content is visible on canvas · {status}",
"addAsset": "Add asset",
"agentDesign": "Agent Design",
"agentShort": "Agent",
"agentDesignHint": "Use web search and image models to advance this canvas.",
"agentEmptyDescription": "Enter a prompt to begin, or use one of the starting points below.",
"agentEmptyStarterLabel": "Creative starting points",
"agentEmptyTitle": "What would you like to create today?",
"agentStarterBrandVisual": "Brand visual",
"agentStarterEcommerce": "E-commerce product",
"agentStarterLogo": "Logo design",
"agentStarterPoster": "Poster",
"agentStarterSocialMedia": "Social media",
"agentWebSearch": "Web research",
"agentWebSearchHint": "Search the web and summarize usable design evidence.",
"referenceLibrary": "Reference library",
"promptIdeas": "Prompt ideas",
"voiceInput": "Voice input",
"canvasPromptPlaceholder": "What are we creating today?",
"imageModelSpec": "Image · M · 1:1 · 1 img",
"unlockModels": "Upgrade to unlock the full model set and speed up creation.",
"uploadFile": "Upload file",
"chooseFromLibrary": "Choose from library",
"webSearch": "Web search",
"agentMode": "Agent mode",
"imageMode": "Image",
"referenceImage": "Reference",
"imageSettings": "Image settings",
"imageCountUnit": "{count} img",
"imageCountLabel": "Image",
"quality": "Quality",
"qualityAuto": "Auto",
"qualityHigh": "High",
"qualityMedium": "Medium",
"qualityLow": "Low",
"imageResolutionLabel": "Base resolution",
"imageSizeLabel": "Size",
"imageModeDirective": "Image generation settings: quality {quality}, size {width}x{height}, ratio {ratio}, count {count}. Pure image mode: generate the image directly from the user's input without extra chat.",
"quickEdit": "Quick edit",
"quickEditTab": "Quick edit Tab",
"quickEditPlaceholder": "Describe the edit for this image",
"visualAnnotation": "Annotated edit",
"visualAnnotationTools": "Annotation tools",
"visualAnnotationBrush": "Brush mark",
"visualAnnotationCircle": "Circle mark",
"visualAnnotationRectangle": "Rectangle mark",
"visualAnnotationCross": "Cross mark",
"visualAnnotationList": "Mark list",
"visualAnnotationEmpty": "No marks yet",
"visualAnnotationInstructionPlaceholder": "Tell AI how to change this area",
"visualAnnotationInstructionLabel": "Edit instruction for mark {index}",
"visualAnnotationDelete": "Delete mark {index}",
"visualAnnotationPrompt": "Use the unmarked source image as the base and edit only the numbered marked regions. The marks, numbers, and annotated guide are location cues only and must not appear in the final image. Keep every unmarked area unchanged.\n{instructions}",
"upscale": "Upscale",
"upscalePrompt": "Upscale this image to {scale} level with the model. Preserve composition and subject while improving detail, edges, and texture clarity.",
"removeBackground": "Remove background",
"removeBackgroundPrompt": "Remove the background in one step, preserve the full subject edge, and output a clean subject image.",
"eraserTool": "Eraser Tool",
"erase": "Erase",
"eraserBrush": "Brush",
"eraserBrushColor": "Brush color",
"eraserDrawHint": "Draw selection on the image, ",
"eraserSubtractHint": "erase, ",
"eraserExitHint": "exit",
"eraserPromptPlaceholder": "Describe how to change the brushed area",
"eraserDefaultPrompt": "Erase the brushed area and naturally repair the background while keeping unbrushed areas unchanged",
"editElements": "Edit elements",
"editElementsPrompt": "Remove embedded text from the base image, inpaint the background, run OCR, and rebuild editable text layers at the original positions.",
"editText": "Edit text",
"editTextPrompt": "Detect image text and replace only the targeted words. Remove the original text and rebuild new text at the same positions while keeping all other image elements unchanged.",
"editTextOcrPrompt": "First identify every visible text item in the image and return an editable text list with precise positions.",
"editTextOcrFailed": "Text recognition failed. Please try again.",
"editTextEmpty": "No editable text was detected.",
"removeTextLayer": "Remove this text",
"applyNow": "Apply now",
"multiAngle": "Multi-angle",
"multiAngleDefaultPrompt": "Generate one new angle from the subject or camera controls while preserving subject identity, materials, and design details.",
"multiAnglePromptPlaceholder": "Add angle, pose, or composition details",
"cameraTab": "Camera",
"subjectTab": "Subject",
"yaw": "Rotation",
"pitch": "Tilt",
"multiAngleRotate": "Rotation",
"multiAngleTilt": "Tilt",
"multiAngleZoom": "Zoom",
"multiAngleZoomClose": "Close",
"multiAngleZoomMedium": "Medium",
"multiAngleZoomFar": "Far",
"multiAngleUseNow": "Use now",
"multiAngleTiltUp": "Move camera up",
"multiAngleTiltDown": "Move camera down",
"multiAngleRotateLeft": "Move camera left",
"multiAngleRotateRight": "Move camera right",
"moveObject": "Move object",
"movePromptPlaceholder": "Describe where to move the object",
"moveDefaultPrompt": "Move the selected object and naturally fill the original area",
"moveRecognitionLoading": "Recognizing selection...",
"moveObjectSelected": "Object selected",
"moveObjectNone": "Select the object to move",
"moveObjectSelection": "Object and target position",
"moveObjectReselect": "Select object again",
"moveObjectHint": "Select and recognize the object first, then drag that box to the new position.",
"mockup": "Mockup",
"mockupPrompt": "Apply the print design to the selected real-object mockup, only on printable material surfaces such as clothing, bags, posters, screens, or product panels. If a person is wearing apparel, place the design on garment fabric only, never on skin, face, hair, arms, hands, or background. Keep the design clear with natural perspective, folds, light, and material blending.",
"mockupPreparing": "Preparing mockup...",
"mockupDropHint": "Drop an image here",
"mockupPrintTitle": "Mockup print",
"expandImage": "Expand",
"expandPrompt": "Naturally expand the image boundaries while preserving the subject and visual style.",
"adjustImage": "Adjust",
"adjustPrompt": "Apply the adjustment parameters to improve light, color, contrast, and detail; if no values are set, automatically improve the overall look while preserving subject and composition.",
"cropImage": "Crop",
"cropResultTitle": "{title} crop",
"cropCreated": "Created a cropped image beside the source",
"cropPrompt": "Recompose the image using the selected crop region and keep the important frame.",
"cropPresets": "Presets",
"cropPresetGeneral": "General",
"cropPresetFree": "Free",
"cropPresetSquare": "Square",
"cropPresetPortrait": "Portrait",
"cropPresetLandscape": "Landscape",
"cropPresetPost": "Post",
"cropPresetStory": "Story",
"cropPresetCover": "Cover",
"cropPresetVideo": "Video",
"cropPresetBanner": "Banner",
"cropPresetProfile": "Profile",
"vector": "Vector",
"vectorizeImage": "Vectorize",
"vectorPrompt": "Convert the image into a clean vector style while preserving subject silhouette, color blocks, and readable detail.",
"flipAndRotate": "Flip & Rotate",
"rotationAngle": "Rotation angle",
"rotate90": "Rotate 90°",
"customizeToolbar": "Customize Toolbar",
"customizeToolbarDesc": "Choose the tools shown in the edit bar",
"resetToolbar": "Reset to default",
"showToolNames": "Show tool names",
"expandScale": "Scale",
"expandPreset": "Preset",
"expandPresetGeneral": "General",
"expandOriginalRatio": "Original ratio",
"expandCustom": "Custom",
"expandSquare": "Square",
"expandPortrait": "Portrait",
"expandLandscape": "Landscape",
"adjustLight": "Light",
"adjustExposure": "Exposure",
"adjustHighlights": "Highlights",
"adjustShadows": "Shadows",
"adjustWhites": "Whites",
"adjustBlacks": "Blacks",
"adjustColor": "Color",
"adjustDetail": "Detail",
"adjustEffects": "Effects",
"adjustVibrance": "Vibrance",
"adjustTemperature": "Temperature",
"adjustTint": "Tint",
"adjustClarity": "Clarity",
"adjustGrain": "Grain",
"adjustVignette": "Vignette",
"adjustGlamour": "Glamour",
"adjustBloom": "Bloom",
"adjustAuto": "Auto",
"brightness": "Brightness",
"contrast": "Contrast",
"saturation": "Saturation",
"sharpness": "Sharpness",
"cropPromptPlaceholder": "Describe the cropped composition",
"apply": "Apply",
"cancel": "Cancel",
"undo": "Undo",
"delete": "Delete",
"clipboardCopied": "Copied to system clipboard",
"clipboardCopyFailed": "Could not write to system clipboard",
"contextCopy": "Copy",
"contextCut": "Cut",
"contextPaste": "Paste",
"contextDuplicate": "Duplicate",
"contextBringForward": "Bring forward",
"contextSendBackward": "Send backward",
"contextBringToFront": "Bring to front",
"contextSendToBack": "Send to back",
"contextSendToChat": "Send to chat",
"contextCreateGroup": "Create group",
"contextUngroup": "Ungroup",
"contextAutoLayout": "Auto layout",
"contextMergeLayers": "Merge layers",
"alignLeft": "Align left",
"alignCenter": "Align center",
"alignRight": "Align right",
"alignTop": "Align top",
"alignMiddle": "Align middle",
"alignBottom": "Align bottom",
"distributeHorizontal": "Distribute horizontal",
"distributeVertical": "Distribute vertical",
"gridLayout": "Grid layout",
"contextHide": "Show/hide",
"contextShow": "Show/hide",
"contextLock": "Lock/unlock",
"contextUnlock": "Lock/unlock",
"contextFlipHorizontal": "Flip horizontal",
"contextFlipVertical": "Flip vertical",
"contextExport": "Export",
"contextDelete": "Delete",
"deleteProjectTitle": "Delete this project?",
"deleteProjectWarning": "This removes the project, canvas content, history, and conversation records. This cannot be undone.",
"deleteProjectDetails": "Image assets will be deleted from OSS asynchronously in the background and may take a moment to finish.",
"deleteProjectCancel": "Cancel",
"deleteProjectConfirm": "Delete project",
"deletingProject": "Deleting",
"sendNodeToChatPrompt": "Continue designing from the image named “{title}”.",
"send": "Send",
"stopGeneration": "Stop generation",
"createError": "Failed to create project",
"saveError": "Failed to save",
"renameProjectError": "Failed to rename",
"generateError": "Failed to generate",
"generateTimeout": "Generation is still running. Refresh the canvas in a moment to see the result.",
"quickCommerce": "Commerce Poster",
"quickUi": "UI Screen",
"quickRetouch": "Product Retouch",
"quickStyle": "Style Transfer",
"unnamedCanvasProject": "Create an iterative infinite canvas project.",
"back": "Back",
"loginWelcome": "Welcome to Moteva",
"loginSubtitle": "Log in or sign up to continue",
"loginGoogle": "Continue with Google",
"loginEmailPlaceholder": "Email",
"turnstileVerifying": "Verifying...",
"turnstilePrivacy": "Privacy",
"turnstileHelp": "Help",
"turnstileRequired": "Please complete the security check first.",
"turnstileLoadFailed": "Security check failed to load. Please refresh and try again.",
"turnstileUnavailable": "Security check is not configured yet. Please try again later.",
"loginEmailContinue": "Continue with email",
"loginTerms": "By continuing, you agree to the Terms and Privacy Policy",
"loginCheckEmail": "Check your email to continue",
"loginCodeSent": "We sent a one-time code to your inbox:",
"loginCodeAria": "Email verification code",
"loginResend": "Resend",
"loginResendWait": "Resend in {seconds}s",
"loginRequestFailed": "Failed to send verification code",
"loginVerifyFailed": "Failed to verify code",
"loginCodeInvalid": "Verification code is incorrect.",
"loginCodeExpired": "Verification code has expired. Please resend it.",
"googleLoginUnavailable": "Google login is not configured",
"messages.common.unknown": "Something went wrong. Please try again later.",
"messages.network.unavailable": "Network connection failed. Please check your connection and try again.",
"messages.http.bad_request": "The request is invalid. Please check and try again.",
"messages.http.unauthorized": "Your session has expired. Please sign in again.",
"messages.http.forbidden": "You do not have permission to do that.",
"messages.http.not_found": "This content no longer exists or was removed.",
"messages.http.conflict": "This content changed elsewhere. Please refresh and try again.",
"messages.http.payload_too_large": "The file is too large. Please compress it and try again.",
"messages.http.timeout": "The request timed out. Please try again later.",
"messages.http.too_many_requests": "Too many attempts. Please try again later.",
"messages.http.server": "The service is temporarily unavailable. Please try again later.",
"messages.validation.prompt_required": "Enter what you want to create first.",
"messages.auth.login_required": "Please sign in to continue.",
"messages.auth.code_invalid": "Verification code is incorrect.",
"messages.auth.code_expired": "Verification code has expired. Please resend it.",
"messages.auth.invalid_credentials": "The account or credential is incorrect. Please check and try again.",
"messages.auth.invalid_region": "This sign-in method is not available right now.",
"messages.auth.provider_not_ready": "This sign-in service is not configured yet. Please try again later.",
"messages.auth.human_verification_required": "Please complete the security check first.",
"messages.auth.human_verification_failed": "Security check failed. Please verify again and retry.",
"messages.share.self_invite": "You already own this design and cannot invite yourself.",
"messages.share.member_exists": "This email address or phone number already has access.",
"agentError.title.image": "Image generation did not complete",
"agentError.title.partialImage": "Some images did not complete",
"agentError.title.imageAction": "Image processing did not complete",
"agentError.title.textExtraction": "Text extraction did not complete",
"agentError.title.mockupModel": "Mockup model did not complete",
"agentError.title.layerMerge": "Layer merge did not complete",
"agentError.content.partialImageTimeout": "Some images were generated, but the remaining images took too long to return. Successful results were kept, and you can retry only the failed parts.",
"agentError.content.partialImageGeneric": "Some images were generated, but the remaining images failed. Successful results were kept, and you can retry only the failed parts.",
"agentError.content.imageTimeout": "Image generation took too long and did not complete this time. Your canvas was preserved. You can retry directly, or lower the image count/size first.",
"agentError.content.imageTemporary": "The image generation service is temporarily busy. Your canvas was preserved. Please try again later.",
"agentError.content.imageGeneric": "Image generation did not complete. Your canvas was preserved, and you can start generation again.",
"agentError.content.imageActionTimeout": "Image processing took too long and did not complete this time. The original image was preserved. Please try again later.",
"agentError.content.imageActionTemporary": "The image processing service is temporarily busy. The original image was preserved. Please try again later.",
"agentError.content.imageActionGeneric": "Image processing did not complete. The original image was preserved, and you can start processing again.",
"agentError.content.textExtractionTimeout": "Text extraction took too long and did not complete this time. The image state was restored. Please try again later.",
"agentError.content.textExtractionGeneric": "Text extraction did not complete. The image state was restored. Please try again later.",
"agentError.content.mockupModelTimeout": "Mockup model generation took too long and did not complete this time. The original image was preserved. Please try again later.",
"agentError.content.mockupModelGeneric": "Mockup model generation failed. The original image was preserved. Please try again later.",
"agentError.content.layerMergeTimeout": "Layer merge took too long and did not complete this time. The original layers were preserved. Please try again later.",
"agentError.content.layerMergeGeneric": "Layer merge did not complete. The original layers were preserved. Please try again later.",
"localeLabel": "中"
}