290 lines
15 KiB
JavaScript
290 lines
15 KiB
JavaScript
export default {
|
|
'app.loading': 'Loading Verstak...',
|
|
'settings.title': 'Settings',
|
|
'settings.language': 'Language',
|
|
'settings.language.system': 'System / Системный',
|
|
'settings.language.en': 'English',
|
|
'settings.language.ru': 'Русский',
|
|
'settings.pluginManager': 'Plugin Manager',
|
|
'statusBar.label': 'Status bar',
|
|
'vault.label': 'Vault: {status}',
|
|
'vault.status.open': 'open',
|
|
'vault.status.closed': 'closed',
|
|
'vault.status.unknown': 'unknown',
|
|
'sidebar.tools': 'Tools',
|
|
'sidebar.error.contributions': 'Failed to load plugin contributions',
|
|
'sidebar.error.load': 'Failed to load sidebar',
|
|
'sidebar.error.ui': 'Plugin UI error',
|
|
'workspace.overview': 'Overview',
|
|
'workspace.search': 'Search in this Deal',
|
|
'workspace.tools': 'Deal tools',
|
|
'workspace.tool': 'Deal tool',
|
|
'workspace.emptyTools': 'No Deal tools available',
|
|
'workspace.emptyToolsHint': 'Enable plugins with Deal tools or open Plugin Manager from settings.',
|
|
'workspace.select': 'Select a Deal',
|
|
'workspace.selectHint': 'Use the + button in Deals to add your first project.',
|
|
'common.details': 'Details',
|
|
'common.plugin': 'Plugin',
|
|
'common.component': 'Component',
|
|
'pluginView.error': 'Plugin view error',
|
|
'pluginView.failed': 'Plugin UI failed',
|
|
'pluginView.noVisual': 'This plugin does not provide a visual view yet.',
|
|
'pluginView.viewId': 'View ID',
|
|
'pluginView.bundleUnavailable': 'Frontend bundle unavailable',
|
|
'pluginView.unavailable': 'View is unavailable.',
|
|
'pluginView.select': 'Select a plugin view from the sidebar',
|
|
'pluginView.selectHint': 'Plugin views will appear here',
|
|
'common.retry': '⟳ Retry',
|
|
'common.source': 'Source',
|
|
'common.status': 'Status',
|
|
'common.capability': 'Capability',
|
|
'common.provider': 'Provider',
|
|
'status.loaded': 'loaded',
|
|
'status.degraded': 'degraded',
|
|
'status.failed': 'failed',
|
|
'status.disabled': 'disabled',
|
|
'status.missing': 'missing',
|
|
'pluginManager.reloading': '⟳ Reloading...',
|
|
'pluginManager.reload': '⟳ Reload',
|
|
'pluginManager.scanning': 'Scanning plugin directories...',
|
|
'pluginManager.summary.plugins': '{count} plugin(s) discovered',
|
|
'pluginManager.summary.capabilities': '{count} capabilities registered',
|
|
'pluginManager.summary.permissions': '{count} permissions known',
|
|
'pluginManager.scanSummary': 'Plugin scan summary',
|
|
'pluginManager.health': 'Plugin Health',
|
|
'pluginManager.permissionRisk': 'Permission Risk',
|
|
'pluginManager.elevatedPermissions': '{count} plugins request elevated permissions',
|
|
'pluginManager.none': 'No plugins found',
|
|
'pluginManager.scannedDirs': 'Plugin directories scanned:',
|
|
'pluginManager.userPlugins': 'user plugins',
|
|
'pluginManager.bundledPlugins': 'bundled plugins (app directory)',
|
|
'pluginManager.installHint': 'Place a plugin folder with plugin.json in one of these directories and click Reload.',
|
|
'pluginManager.missingTitle': 'Missing Installed Plugins',
|
|
'pluginManager.missingHint': 'These plugins are required by this vault but their packages are not installed locally.',
|
|
'pluginManager.missingPackage': "This plugin is listed in the vault's desired plugins but the package is not installed.",
|
|
'pluginManager.capabilityRegistry': 'Capability Registry ({count})',
|
|
'pluginManager.settingsError': 'Settings Error',
|
|
'pluginManager.pluginSettings': 'Plugin Settings',
|
|
'pluginManager.settingsBundleUnavailable': 'Settings panel frontend bundle not available',
|
|
'common.none': 'none',
|
|
'common.unknown': 'unknown',
|
|
'pluginCard.count.views': '{count} view(s)',
|
|
'pluginCard.count.commands': '{count} command(s)',
|
|
'pluginCard.count.searchProviders': '{count} search provider(s)',
|
|
'pluginCard.count.sidebar': '{count} sidebar item(s)',
|
|
'pluginCard.count.statusbar': '{count} status bar item(s)',
|
|
'pluginCard.count.openProviders': '{count} openProviders',
|
|
'pluginCard.count.workspace': '{count} Deal tool(s)',
|
|
'pluginCard.degraded': 'Plugin is usable, but some optional capabilities are unavailable.',
|
|
'pluginCard.name': 'Name',
|
|
'pluginCard.contributions': 'Contributions',
|
|
'pluginCard.technicalDetails': 'Technical details',
|
|
'pluginCard.apiVersion': 'API Version',
|
|
'pluginCard.root': 'Root',
|
|
'pluginCard.provides': 'Provides',
|
|
'pluginCard.requires': 'Requires',
|
|
'pluginCard.missingRequired': 'Missing required capabilities',
|
|
'pluginCard.optionalRequires': 'Optional Requires',
|
|
'pluginCard.optionalUnavailable': 'Optional capabilities not available — plugin running in degraded mode',
|
|
'pluginCard.permissions': 'Permissions',
|
|
'pluginCard.enabling': '⟳ Enabling...',
|
|
'pluginCard.enable': '▶ Enable',
|
|
'pluginCard.disabling': '⟳ Disabling...',
|
|
'pluginCard.disable': '⏸ Disable',
|
|
'pluginCard.openVault': 'Open a vault to manage plugin state',
|
|
'pluginCard.missingUiPermission': 'Plugin has UI contributions but lacks ui.register permission',
|
|
'common.loading': 'Loading...',
|
|
'common.browse': 'Browse...',
|
|
'vaultSelection.chooseNew': 'Choose or enter a folder for the new vault.',
|
|
'vaultSelection.createError': 'Could not create the vault. Please try again.',
|
|
'vaultSelection.openError': 'Could not open the vault. Please try again.',
|
|
'vaultSelection.chooseExisting': 'Choose or enter an existing vault.',
|
|
'vaultSelection.subtitle': 'Choose a vault to start working',
|
|
'vaultSelection.createTitle': 'Create a new vault',
|
|
'vaultSelection.createHint': 'Create a local vault folder for Deals and projects.',
|
|
'vaultSelection.pathPlaceholder': 'Choose or enter a path...',
|
|
'vaultSelection.creating': 'Creating...',
|
|
'vaultSelection.create': 'Create vault',
|
|
'vaultSelection.openTitle': 'Open an existing vault',
|
|
'vaultSelection.openHint': 'Use a vault that is already on this computer.',
|
|
'vaultSelection.opening': 'Opening...',
|
|
'vaultSelection.open': 'Open existing',
|
|
'vaultSelection.recent': 'Recent vaults',
|
|
'common.cancel': 'Cancel',
|
|
'common.close': 'Close',
|
|
'workspaceTree.title': 'Deals',
|
|
'workspaceTree.new': 'New Deal',
|
|
'workspaceTree.nameRequired': 'Name is required',
|
|
'workspaceTree.chooseTemplate': 'Choose a Deal template',
|
|
'workspaceTree.saveRename': 'Save rename',
|
|
'workspaceTree.rename': 'Rename Deal',
|
|
'workspaceTree.trash': 'Move Deal to trash',
|
|
'workspaceTree.create': 'Create Deal',
|
|
'workspaceTree.namePlaceholder': 'Deal name',
|
|
'workspaceTree.template': 'Template',
|
|
'workspaceTree.creating': 'Creating...',
|
|
'workspaceTree.templateAvailable': 'Available',
|
|
'workspaceTree.templateLimited': 'Available with limitations',
|
|
'workspaceTree.templateMissingPlugin': 'Plugin is not installed',
|
|
'workspaceTree.templatePluginDisabled': 'Plugin is disabled',
|
|
'workspaceTree.templateCapabilityUnavailable': 'A required capability is unavailable',
|
|
'workspaceTree.templateIncompatible': 'Plugin is incompatible with this version of Verstak',
|
|
'workspaceTree.templateLoadFailed': 'Plugin failed to load',
|
|
'workspaceTree.templateNotReady': 'Plugin is not ready',
|
|
'workspaceTree.templateToolTabs': 'Creates: {tabs}',
|
|
'workspaceTree.templateToolNoTabs': 'No Deal tab provided',
|
|
'workspaceTree.templateWillBeIncomplete': 'This Deal will be created without the unavailable components.',
|
|
'workspaceTree.templateIncompleteCreated': '«{name}» was created with unavailable components.',
|
|
'workspaceTree.templatesError': 'Could not load Deal templates. Please try again.',
|
|
'workspaceTree.loadError': 'Could not load Deals. Please try again.',
|
|
'workspaceTree.selectError': 'Could not select this Deal. Please try again.',
|
|
'workspaceTree.createError': 'Could not create the Deal. Please try again.',
|
|
'workspaceTree.renameError': 'Could not rename the Deal. Please try again.',
|
|
'workspaceTree.trashError': 'Could not move the Deal to trash. Please try again.',
|
|
'pluginManager.loadError': 'Could not load plugins. Please try again.',
|
|
'pluginManager.reloadError': 'Could not reload plugins. Please try again.',
|
|
'pluginManager.enableError': 'Could not enable the plugin. Please try again.',
|
|
'pluginManager.disableError': 'Could not disable the plugin. Please try again.',
|
|
'pluginManager.settingsLoadError': 'Could not load plugin settings. Please try again.',
|
|
'pluginManager.settingsUnavailable': 'Plugin settings are unavailable.',
|
|
'command.openOverview': 'Open Overview',
|
|
'command.openFiles': 'Open Files',
|
|
'command.openActivity': 'Open Activity',
|
|
'command.openBrowserInbox': 'Open Browser',
|
|
'command.createMarkdown': 'Create Markdown File',
|
|
'command.createText': 'Create Text File',
|
|
'command.syncNow': 'Sync Now',
|
|
'command.openSyncSettings': 'Open Sync Settings',
|
|
'command.openPluginManager': 'Open Plugin Manager',
|
|
'command.handled': '{title} handled',
|
|
'command.result': '{title} {status}',
|
|
'command.failed': 'Could not run {title}. Please try again.',
|
|
'command.statusHandled': 'handled',
|
|
'command.palette': 'Command Palette',
|
|
'command.run': 'Run command',
|
|
'command.none': 'No commands',
|
|
'search.indexing': 'Indexing...',
|
|
'search.placeholder': 'Search',
|
|
'search.global': 'Global search',
|
|
'search.noResults': 'No results',
|
|
'search.type.workspace': 'Deal',
|
|
'search.type.tool': 'Tool',
|
|
'search.type.folder': 'Folder',
|
|
'search.type.file': 'File',
|
|
'search.type.journal': 'Journal',
|
|
'search.type.browserInbox': 'Browser',
|
|
'search.type.activity': 'Activity',
|
|
'workbench.noProvider': 'No provider',
|
|
'workbench.noViewer': 'No viewer/editor available',
|
|
'workbench.noResource': 'No resource opened',
|
|
'bundle.noFrontend': 'Plugin has no frontend bundle',
|
|
'bundle.notFound': 'Plugin not found',
|
|
'bundle.loadFailed': 'Could not load the plugin interface. Please try again.',
|
|
'bundle.emptyContent': 'empty content',
|
|
'bundle.executionError': 'Could not start the plugin interface. Please try again.',
|
|
'bundle.registrationMissing': 'Bundle loaded but no VerstakPluginRegister call detected',
|
|
'bundle.componentMissing': 'The requested plugin interface is unavailable.',
|
|
'bundle.mountError': 'Could not open the plugin interface. Please try again.',
|
|
'bundle.mountUnavailable': 'Mount container not available',
|
|
'bundle.unexpectedError': 'Could not open the plugin interface. Please try again.',
|
|
'bundle.unknownError': 'Unknown error',
|
|
'bundle.frontendEntry': 'Frontend entry',
|
|
'bundle.availableComponents': 'Available components',
|
|
'bundle.loading': 'Loading plugin bundle...',
|
|
'overview.filter.all': 'All',
|
|
'overview.filter.notes': 'Notes',
|
|
'overview.filter.files': 'Files',
|
|
'overview.filter.captures': 'Captures',
|
|
'overview.filter.journal': 'Journal',
|
|
'overview.notes': 'Notes',
|
|
'overview.files': 'Files',
|
|
'overview.captures': 'Captures',
|
|
'overview.activity': 'Activity',
|
|
'overview.journal': 'Journal',
|
|
'overview.attention': 'Needs attention',
|
|
'overview.openNotes': 'Open Notes',
|
|
'overview.openFiles': 'Open Files',
|
|
'overview.reviewInbox': 'Review Inbox',
|
|
'overview.viewActivity': 'View Activity',
|
|
'overview.openJournal': 'Open Journal',
|
|
'overview.openTodos': 'Open Todos',
|
|
'overview.reviewCandidate': 'Review candidate',
|
|
'overview.reviewPending': 'Review pending items',
|
|
'overview.count.totalRecent.one': '{total} total · {recent} recent change',
|
|
'overview.count.totalRecent.many': '{total} total · {recent} recent changes',
|
|
'overview.count.recentChanges.one': '{count} recent change',
|
|
'overview.count.recentChanges.many': '{count} recent changes',
|
|
'overview.count.captures.one': '{count} capture to review',
|
|
'overview.count.captures.many': '{count} captures to review',
|
|
'overview.count.events.one': '{count} recorded event',
|
|
'overview.count.events.many': '{count} recorded events',
|
|
'overview.count.journal.one': '{count} journal entry',
|
|
'overview.count.journal.many': '{count} journal entries',
|
|
'overview.count.pending.one': '{count} pending item',
|
|
'overview.count.pending.many': '{count} pending items',
|
|
'overview.loadingContext': 'Loading Deal context...',
|
|
'overview.lastActive': 'Last active {time}',
|
|
'overview.noRecentActivity': 'No recent Deal activity',
|
|
'overview.refresh': 'Refresh',
|
|
'overview.summary': 'Deal overview summary',
|
|
'overview.continue': 'Continue working',
|
|
'overview.continueHint': 'Pick up the next useful item in this Deal.',
|
|
'overview.loadingSignals': 'Loading Deal signals...',
|
|
'overview.noResume': 'No clear resume point yet',
|
|
'overview.noResumeHint': 'Recent notes, files, captures, and journal entries will appear here.',
|
|
'overview.recentChanges': 'Recent changes',
|
|
'overview.recentChangesHint': 'Latest meaningful activity in this Deal.',
|
|
'overview.event.workspaceOpened': 'Opened Deal',
|
|
'overview.event.activity': 'Deal activity',
|
|
'overview.event.noteEdited': 'Edited note "{name}"',
|
|
'overview.event.noteOpened': 'Opened note "{name}"',
|
|
'overview.event.noteCreated': 'Created note "{name}"',
|
|
'overview.event.fileOpened': 'Opened file "{name}"',
|
|
'overview.event.fileChanged': 'Changed file "{name}"',
|
|
'overview.event.fileCreated': 'Created file "{name}"',
|
|
'overview.event.fileRemoved': 'Removed file "{name}"',
|
|
'overview.event.capturePage': 'Captured page "{name}"',
|
|
'overview.event.captureSelection': 'Captured selection "{name}"',
|
|
'overview.event.captureLink': 'Captured link "{name}"',
|
|
'overview.event.captureFile': 'Captured file "{name}"',
|
|
'overview.event.captureConverted': 'Converted capture "{name}"',
|
|
'overview.event.capture': 'Captured {kind} "{title}"',
|
|
'overview.event.journalAdded': 'Added journal entry "{name}"',
|
|
'overview.event.workSessionDetected': 'Work session detected',
|
|
'overview.event.todo': 'Todo "{title}"',
|
|
'overview.event.reviewCapture': 'Review capture "{title}"',
|
|
'overview.event.continueJournal': 'Continue journal entry "{title}"',
|
|
'overview.event.possibleJournalEntry': 'Possible journal entry',
|
|
'overview.captureKind.page': 'page',
|
|
'overview.captureKind.selection': 'selection',
|
|
'overview.captureKind.link': 'link',
|
|
'overview.captureKind.file': 'file',
|
|
'overview.captureKind.item': 'item',
|
|
'overview.todo.reminderDue': 'Reminder due',
|
|
'overview.todo.overdue': 'Overdue',
|
|
'overview.todo.dueSoon': 'Due soon',
|
|
'overview.todo.due': 'Due {date}',
|
|
'overview.candidateMeta': 'Deal: {deal} · {minutes} min · {activities} activities',
|
|
'overview.minutes': '{count} min',
|
|
'overview.browserCapture': 'Browser capture',
|
|
'overview.untitledTodo': 'Untitled todo',
|
|
'overview.untitledCapture': 'Untitled capture',
|
|
'overview.untitledJournal': 'Journal entry',
|
|
'overview.unknownDeal': 'Unknown Deal',
|
|
'overview.item': 'item',
|
|
'overview.overviewNote': 'Deal overview note',
|
|
'overview.recentFilter': 'Recent changes filter',
|
|
'overview.loadingRecent': 'Loading recent changes...',
|
|
'overview.noChanges': 'No meaningful changes for this filter yet.',
|
|
'overview.attentionHint': 'Pending captures, urgent todos, and possible journal entries.',
|
|
'overview.loadingPending': 'Loading pending items...',
|
|
'overview.noPending': 'No pending captures, urgent todos, or possible journal entries.',
|
|
'overview.keyResources': 'Key resources',
|
|
'overview.time.none': 'No timestamp',
|
|
'overview.time.now': 'Just now',
|
|
'overview.time.minutes': '{count} min ago',
|
|
'overview.time.hours': '{count}h ago',
|
|
'overview.time.yesterday': 'Yesterday',
|
|
'overview.time.days': '{count} days ago',
|
|
};
|