diff --git a/modules/ROOT/assets/ui-text-review/en.json b/modules/ROOT/assets/ui-text-review/en.json new file mode 100644 index 000000000..45e3a0651 --- /dev/null +++ b/modules/ROOT/assets/ui-text-review/en.json @@ -0,0 +1,5825 @@ +{ + "common": { + "cancel": "Cancel", + "back": "Back", + "next": "Next", + "done": "Done", + "loading": "Loading…", + "save": "Save Changes", + "delete": "Delete", + "applyAction": "Apply", + "close": "Close", + "search": "Search", + "noResults": "No results found", + "justNow": "Just now", + "hoursAgo": "{hours}h ago", + "daysAgo": "{days}d ago", + "monthsAgo": "{months}mo ago", + "minutesAgo": "{minutes}m ago", + "yesterday": "Yesterday", + "weeksAgo": "{weeks}w ago", + "never": "Never", + "clearAll": "Clear all", + "selectAll": "Select all", + "notNow": "Not now", + "askOmniPlaceholder": "Ask MuleSoft anything…", + "suggestions": "Suggestions", + "dateGroup": { + "today": "Today", + "yesterday": "Yesterday", + "last7Days": "Last 7 days", + "older": "Older" + }, + "ok": "OK", + "copyValue": "Copy value", + "copiedToClipboard": "Copied to clipboard.", + "dismissNotification": "Dismiss notification" + }, + "home": { + "heading": "Home", + "subtitle": "Your AI portfolio at a glance", + "addServices": "Add Services", + "section": { + "portfolioOverview": "Portfolio Overview", + "providerConnections": "Provider Connections" + }, + "tier": { + "discovered": "Discovered", + "discoveredContext": "Services from {count, plural, one {# provider} other {# providers}}", + "discoveredDescription": "Total services in the portfolio.", + "consumed": "Consumed", + "consumedContext": "{percent}% of managed instances", + "consumedDescription": "Services with active instances.", + "governed": "Governed", + "governedContext": "{percent}% of managed instances", + "governedDescription": "Services with controls applied." + }, + "portfolio": { + "agents": "Agents", + "mcpServers": "MCP Servers", + "llmProxies": "LLM Proxies", + "apis": "APIs", + "llms": "LLM Proxies" + } + }, + "login": { + "backToLogin": "Back to login", + "logoAlt": "MuleSoft", + "title": "Enhanced MuleSoft Experience", + "dismiss": "Dismiss", + "placeholder": { + "username": "Username", + "password": "Password" + }, + "button": { + "signIn": "Sign In", + "signingIn": "Signing in…" + }, + "prototypeLabel": "UX Conceptual Prototype" + }, + "portfolio": { + "label": { + "agents": "Agents", + "mcp-servers": "MCP Servers", + "llms": "LLM Proxies", + "apis": "APIs" + } + }, + "onboarding": { + "placeholderBanner": "Placeholder — onboarding flow to be designed. This is a stand-in for the real experience.", + "skip": "Skip", + "getStarted": "Get Started", + "welcome": { + "heading": "Welcome to the enhanced MuleSoft experience", + "subtitle": "Your multi-agent management and governance platform", + "description": "Discover, govern, and observe agents, MCP servers, LLMs, and infrastructure across every provider — all from one place.", + "statAgents": "Agents", + "statMcpServers": "MCP Servers", + "statLlms": "LLM Proxies" + }, + "capabilities": { + "heading": "Key Capabilities", + "subtitle": "Everything you need to manage your agentic ecosystem" + }, + "feature": { + "agentCatalog": { + "title": "Agent Catalog", + "description": "Browse, register, and manage agents across all providers." + }, + "trustGovernance": { + "title": "Trust & Governance", + "description": "Compliance scoring, policy enforcement, and audit trails." + }, + "observability": { + "title": "Observability", + "description": "Real-time metrics, cost tracking, and alerts" + }, + "askOmni": { + "title": "Ask MuleSoft", + "description": "Natural-language assistant for your entire ecosystem" + } + }, + "getStartedStep": { + "heading": "You're all set!", + "subtitle": "Choose where to start exploring", + "browseAgents": "Browse Agents", + "viewDashboard": "View Dashboard" + } + }, + "register": { + "stepLabel": { + "choosePath": "Choose Path", + "createNew": "Create New", + "review": "Review", + "browseMarketplace": "Browse Marketplace", + "configureScanner": "Configure Scanner", + "scanning": "Scanning…", + "reviewResults": "Review Results", + "done": "Done" + }, + "title": "Register", + "addEntity": "Add {entity}", + "complete": { + "heading": "Registration Complete", + "entityRegistered": "({entityType}) has been registered.", + "importedFromRegistry": "has been imported from the registry.", + "scannerConfiguredFor": "Scanner configured for", + "agentsImported": "{count} agents", + "importedSuccessfully": "was imported.", + "newEntityFallback": "New entity" + } + }, + "createAsset": { + "agent": { + "title": "Create Agent", + "fileLabel": "Agent package", + "catalogLabel": "Agents" + }, + "mcpServer": { + "title": "Create MCP Server", + "fileLabel": "MCP Server package", + "catalogLabel": "MCP Servers" + }, + "api": { + "title": "Create API", + "fileLabel": "API package", + "catalogLabel": "APIs" + }, + "llm": { + "title": "Create LLM", + "fileLabel": "LLM package", + "catalogLabel": "LLM Proxies" + } + }, + "createInstance": { + "breadcrumb": "Create Instance", + "heading": "Create Instance of {name}", + "mcpForm": { + "startingProvisioning": "Starting provisioning…", + "deployingToGateway": "Deploying to gateway…", + "deploySuccess": "Instance was deployed.", + "deployFailed": "We couldn't complete the deployment. {error}", + "deployingStep": "Deploying (step {step}/{total})…", + "deployTimeout": "Deployment timed out — check the instances list.", + "genericFailed": "Something went wrong: {error}", + "loadingGateways": "Loading gateways…", + "allGatewaysUsed": "This MCP server is already deployed to all available gateways.", + "goBack": "Go Back", + "targetGateway": "Target Gateway", + "gatewayUsageHint": "{count, plural, one {# gateway} other {# gateways}} already in use (hidden)", + "cancel": "Cancel", + "deploying": "Deploying…", + "deployInstance": "Deploy Instance" + }, + "mcpHeading": "Create Instance of {name}", + "startingProvisioning": "Starting provisioning…", + "deployingToGateway": "Deploying to gateway…", + "deployingStep": "Deploying (step {current}/{total})…", + "instanceDeployed": "Instance was deployed.", + "deploymentFailed": "We couldn't complete the deployment. {error}", + "unknownError": "Unknown error", + "deploymentTimedOut": "Deployment timed out — check the instances list.", + "failedWithError": "Something went wrong: {error}", + "unknownErrorFallback": "Something went wrong. Try again.", + "loadingGateways": "Loading gateways…", + "alreadyDeployed": "This MCP server is already deployed to all available gateways.", + "goBack": "Go Back", + "targetGateway": "Target Gateway", + "gatewayInUse": "{count, plural, one {# gateway} other {# gateways}} already in use (hidden)", + "cancel": "Cancel", + "deploying": "Deploying…", + "deployInstance": "Deploy Instance" + }, + "createLlmProxyPage": { + "heading": "Create an LLM Proxy", + "description": "Register an LLM proxy: choose a gateway, then connect providers and routing.", + "proxyNameLabel": "Proxy Name", + "proxyNamePlaceholder": "e.g. Billing Triage Proxy", + "descriptionLabel": "Description", + "descriptionPlaceholder": "Describe what this proxy does…", + "basePathLabel": "Base Path", + "basePathPlaceholder": "billing-ai", + "environmentLabel": "Environment", + "loadingEnvironments": "Loading environments…", + "selectEnvironment": "Select environment…", + "flexGatewayLabel": "Flex Gateway", + "selectEnvironmentFirst": "Select an environment first", + "loadingGateways": "Loading gateways…", + "selectGateway": "Select gateway…", + "noGatewaysAvailable": "No Flex Gateways registered in this environment. Register one in Anypoint Flex Gateway, then return here.", + "consumerEndpointLabel": "Consumer Endpoint", + "consumerEndpointPlaceholder": "https://api.example.com", + "portLabel": "Port", + "portPlaceholder": "8081", + "cancel": "Cancel", + "creating": "Creating…", + "continue": "Continue", + "back": "Back", + "deploying": "Deploying…", + "addLlmProxy": "Add LLM Proxy", + "assetCreationNotFound": "We couldn't create the LLM proxy asset — the Exchange asset wasn't found. Check that the base path is valid and try again.", + "assetCreationFailed": "We couldn't create the LLM proxy asset. Try again.", + "deployFailed": "We couldn't deploy the LLM proxy. Try again.", + "deployAssetNotFound": "We couldn't deploy because the Exchange asset wasn't found. Refresh and try again.", + "subheading": "Register an LLM proxy: choose a gateway, then connect providers and routing.", + "proxyName": "Proxy Name", + "basePath": "Base Path", + "environment": "Environment", + "flexGateway": "Flex Gateway", + "consumerEndpoint": "Consumer Endpoint", + "port": "Port", + "continueButton": "Continue", + "addProxy": "Add LLM Proxy", + "failedToCreate": "We couldn't create the LLM proxy asset. Try again.", + "failedToDeploy": "We couldn't deploy the LLM proxy. Try again.", + "deployFailedAssetNotFound": "We couldn't deploy because the Exchange asset wasn't found. Refresh and try again.", + "basePathConflict": "An LLM proxy with this path already exists on the selected gateway.", + "basePathValidating": "Checking path availability…", + "defaultFallbackRouteName": "Route {letter}", + "toast": { + "topicCreated": "Topic \"{name}\" was created.", + "topicCreatedFallback": "Topic was created.", + "failedToCreateTopic": "We couldn't create topic \"{name}\".", + "failedToCreateTopicFallback": "We couldn't create the topic.", + "topicDeleted": "Topic \"{name}\" was deleted.", + "topicDeletedFallback": "Topic was deleted.", + "failedToDeleteTopic": "We couldn't delete topic \"{name}\".", + "failedToDeleteTopicFallback": "We couldn't delete the topic.", + "topicRemovedFromRoute": "Topic \"{name}\" was removed from route.", + "topicRemovedFromRouteFallback": "Topic was removed from route." + } + }, + "createVersion": { + "breadcrumb": "Add Version", + "heading": "Add Version to {name}", + "submitLabel": "Create Version", + "fileLabel": { + "mcpServers": "MCP Server package", + "llms": "LLM package", + "apis": "API package", + "agents": "Agent package", + "default": "Package" + } + }, + "entityCatalog": { + "addEntity": "Add {entity}", + "addLlmProxy": "Add LLM Proxy", + "emptyTitle": "No {type} found", + "emptyDescription": "Try adjusting your search or filters", + "clearFilters": "Clear Filters", + "loadingMore": "Loading…", + "errorBoundary": { + "message": "Something went wrong loading this page.", + "tryAgain": "Try again" + } + }, + "entityDetailLoadFailure": { + "gatewayTimeout": "We couldn't load the {entity} because the request timed out. Try again.", + "serviceUnavailable": "We couldn't load the {entity} because the service is temporarily unavailable. Try again.", + "serverError": "We couldn't load the {entity} because the service is temporarily unavailable. Try again.", + "unauthorized": "Sign in again to view this {entity}. Try again.", + "forbidden": "You don't have access to this {entity}. Check your permissions and try again.", + "notFound": "This {entity} no longer exists. Try again.", + "network": "We couldn't load the {entity} because of a network error. Check your connection and try again.", + "unknown": "We couldn't load the {entity}. Try again." + }, + "entityDetail": { + "loadingFallback": "Loading…", + "loadingDescription": "Loading entity details, versions, and related metadata…" + }, + "entityInstanceDetail": { + "tab": { + "policies": "Policies", + "monitoring": "Monitoring", + "governanceChecks": "Conformance" + }, + "env": { + "production": "Production", + "sandbox": "Sandbox", + "development": "Development" + }, + "envBadge": "{name} ({type})", + "breadcrumbInstances": "Instances", + "exposeAsMcp": "Expose as MCP Server", + "instanceLabel": "{entity} Instance", + "field": { + "specType": "Spec Type", + "consumerEndpoint": "Consumer Endpoint", + "gateway": "Gateway", + "label": "Label", + "updated": "Updated", + "source": "Source", + "protocol": "Protocol", + "tools": "Tools" + }, + "viewGateway": "View {name} gateway" + }, + "oauthCallback": { + "authFailed": "We couldn't authorize. {error}", + "missingCode": "Missing authorization code.", + "invalidState": "Invalid OAuth state. Try again.", + "tokenExchangeFailed": "We couldn't complete sign-in. Try again.", + "noAccessToken": "No access token in response.", + "signInFailed": "We couldn't sign you in. Try again.", + "backToLogin": "Back to login" + }, + "leftNav": { + "home": "Home", + "portfolio": "Portfolio", + "agents": "Agents", + "mcpServers": "MCP Servers", + "llms": "LLM Proxies", + "apis": "APIs", + "gateways": "Gateways", + "governance": "Governance", + "costManagement": "Cost Management", + "governanceStrategies": "Governance Strategies", + "observability": "Observability", + "performance": "Performance", + "notifications": "Notifications", + "platform": "Platform", + "providers": "Providers", + "llmProxies": "LLM Proxies", + "semanticServices": "Semantic Services", + "search": "Search", + "searchShortcut": "Search (/)", + "openCommandPalette": "Open command palette", + "goToAnypoint": "Go to Anypoint Platform", + "expandNavigation": "Expand navigation", + "collapseNavigation": "Collapse navigation" + }, + "header": { + "openMenu": "Open menu", + "brandName": "MuleSoft" + }, + "aiSidebarHeader": { + "title": "Ask MuleSoft", + "newChat": "New chat", + "conversationHistory": "Conversation history", + "openFullView": "Open full view", + "closeSidebar": "Close sidebar" + }, + "aiSidebar": { + "closeAiSidebar": "Close AI sidebar" + }, + "dragHandle": { + "resizeSidebar": "Resize sidebar" + }, + "slackConnect": { + "missingState": "Missing connection state.", + "noOrganization": "No organization selected in this browser session.", + "connectFailed": "We couldn't connect your Slack account. Try again.", + "connectFailedWithStatus": "We couldn't connect ({status}).", + "needsLogin": { + "heading": "Connect Anypoint for Slack", + "description": "Sign in to Anypoint first. After signing in, return to this tab to complete the Slack connection.", + "goToLogin": "Sign in to Anypoint Platform" + }, + "success": { + "heading": "Connected to Anypoint Platform", + "description": "Your Anypoint account is now linked to your Slack user. Return to Slack and continue in the same thread.", + "closeTab": "You can close this tab." + }, + "expired": { + "heading": "Link expired", + "description": "This connection link has expired. Return to Slack and click Connect to Anypoint again to get a fresh link.", + "closeTab": "You can close this tab." + }, + "error": { + "heading": "We couldn't connect" + }, + "connecting": { + "heading": "Connecting to Anypoint Platform", + "description": "Completing secure handoff…" + } + }, + "activityFeed": { + "viewAllActivity": "View all activity", + "justNow": "Just now", + "minutesAgo": "{count}m ago", + "hoursAgo": "{count}h ago", + "yesterday": "Yesterday", + "daysAgo": "{count}d ago", + "weeksAgo": "{count}w ago" + }, + "briefing": { + "aiBriefing": "AI Briefing", + "regenerateBriefing": "Regenerate briefing", + "footnoteGenerated": "Generated automatically by MuleSoft agent ({source}).", + "footnoteGenerating": "Generating briefing from agent…", + "errorEmptyBriefing": "The agent returned an empty briefing. Try again.", + "errorUnableToGenerate": "We couldn't generate the briefing. Try again.", + "loadingState": "briefing-loading-state" + }, + "providerConnectionsTable": { + "time": { + "minutesAgo": "{minutes, plural, one {1 minute ago} other {# minutes ago}}", + "hoursAgo": "{hours, plural, one {1 hour ago} other {# hours ago}}", + "daysAgo": "{days, plural, one {1 day ago} other {# days ago}}", + "monthsAgo": "{months, plural, one {1 month ago} other {# months ago}}", + "yearsAgo": "{years, plural, one {1 year ago} other {# years ago}}" + }, + "column": { + "scanner": "Scanner", + "lastScan": "Last Scan", + "discovered": "Discovered", + "consumed": "Consumed", + "governed": "Governed" + }, + "searchPlaceholder": "Search scanners…", + "clearSearch": "Clear search", + "sortBy": "Sort by {label}", + "emptySearch": "No scanners found matching your search", + "emptyDefault": "No scanners available", + "showLess": "Show Less", + "showAll": "Show All ({count})" + }, + "alertItem": { + "entityLabel": { + "agents": "Agent", + "mcp-servers": "MCP Server", + "llms": "LLM", + "functions": "Function", + "apis": "API", + "vector-databases": "Vector DB" + }, + "viewEntity": "View {entity}", + "acknowledge": "Acknowledge" + }, + "timeSeriesChart": { + "noData": "No data for selected range", + "loading": "Loading…" + }, + "skillsPlaceholder": { + "title": "Skills", + "description": "Agent skill library and management. Coming in a future release.", + "anypointLabel": "Go to Anypoint Platform" + }, + "promptTemplatesPlaceholder": { + "title": "Prompt Templates", + "description": "Reusable prompt templates for agent configuration. Coming in a future release.", + "anypointLabel": "Go to Anypoint Platform" + }, + "agentRegistry": { + "typeLabel": { + "agents": "Agents", + "mcpServers": "MCP Servers", + "llms": "LLM Proxies", + "functions": "Functions", + "apis": "APIs", + "vectorDbs": "Vector DBs" + }, + "placeholderBanner": "Conceptual placeholder — needs deeper exploration and thinking", + "heading": "Marketplace", + "subtitle": "Browse published assets from the community", + "assetsAvailable": "{count} assets available", + "totalItems": "{count} total items", + "searchPlaceholder": "Search registry…", + "sort": { + "popular": "Most Popular", + "rated": "Highest Rated", + "newest": "Newest" + }, + "all": "All", + "emptyState": "No matching assets found", + "importButton": "Import", + "importedToast": "{name} was imported.", + "versionPrefix": "v{version}" + }, + "agentScanners": { + "heading": "Agent Scanners", + "subtitle": "Manage your external provider scanners", + "newScannerButton": "New Scanner", + "emptyState": "No scanners configured yet. Create one to start discovering agents.", + "status": { + "active": "Active", + "inactive": "Inactive", + "error": "Error" + }, + "relativeTime": { + "never": "Never" + }, + "table": { + "scannerName": "Scanner Name", + "provider": "Provider", + "status": "Status", + "lastRun": "Last Run", + "nextRun": "Next Run", + "agents": "Agents", + "actions": "Actions" + }, + "action": { + "runScan": "Run scan", + "edit": "Edit", + "delete": "Delete" + }, + "deleteDialog": { + "title": "Delete Scanner", + "message": "Deleting \"{name}\" is permanent and cannot be undone." + }, + "toast": { + "failedToLoad": "We couldn't load scanners. Try again.", + "scannerDeleted": "Scanner \"{name}\" was deleted.", + "failedToDelete": "We couldn't delete the scanner. Try again.", + "scanStarted": "Scan started for {name}", + "failedToStart": "We couldn't start the scan. Try again." + }, + "failedToLoad": "We couldn't load this content. Try again." + }, + "editScanner": { + "backToScanners": "Back to Scanners", + "heading": "Edit Scanner", + "subtitle": "Update your scanner configuration", + "failedToLoadScanner": "We couldn't load the scanner. Try again.", + "failedToUpdateScanner": "We couldn't update the scanner. Try again.", + "failedToLoad": "We couldn't load the scanner. Try again.", + "updateSuccess": "Scanner was updated.", + "updateFailed": "We couldn't update the scanner. Try again." + }, + "newScanner": { + "backToScanners": "Back to Scanners", + "heading": "New Scanner", + "subtitle": "Configure a scanner to discover agents from external providers", + "created": { + "heading": "Scanner Created", + "redirecting": "Redirecting to scanners…" + } + }, + "createNotification": { + "backLink": "Notifications", + "heading": "Create Notification", + "section": { + "selectAlertTarget": "Select Alert Target", + "specifyAlertConfiguration": "Specify Alert Configuration", + "setAlertDelivery": "Set Alert Delivery" + }, + "environment": "Environment", + "loadingEnvironments": "Loading environments…", + "noEnvironments": "No environments available", + "production": "(Production)", + "serviceType": "Service Type", + "targetService": "Target Service", + "placeholder": { + "searchApi": "Search or type API name…", + "searchLlm": "Search or type LLM name…", + "searchMcp": "Search or type MCP server name…", + "searchAgent": "Search or type Agent name…" + }, + "apiInstance": "API instance", + "allVersions": "All versions (all instances)", + "selectApiAbove": "Select an API above", + "naForTargetType": "N/A for this target type", + "alertMetric": "Alert Metric", + "alertCondition": "Alert condition", + "metric": "Metric", + "policyViolation": "Policy Violation", + "logicPolicy": "Logic / Policy", + "allPolicies": "All Policies", + "noPoliciesAvailable": "No policies available for this API instance.", + "rateLimiting": "Rate Limiting", + "spikeControl": "Spike Control", + "clientIdEnforcement": "Client ID Enforcement", + "ipWhitelist": "IP Whitelist", + "ipBlacklist": "IP Blacklist", + "whenPolicyViolationIs": "When policy violation is", + "forAtLeast": "For at least", + "minutes": "minutes.", + "responseCodes": "Response Codes", + "logicResponseCodes": "Logic / Response Codes", + "selectResponseCodes": "Select response codes", + "manualCodesHint": "You can also enter codes manually", + "whenOccurrencesAre": "When number of occurrences are", + "alertWhen": "Alert when", + "is": "is", + "for": "for", + "eventBasedSuffix": "— Event-based alert (no threshold configuration required)", + "severity": "Severity", + "critical": "Critical", + "warning": "Warning", + "info": "Info", + "alertName": "Alert Name", + "alertNamePlaceholder": "Enter a descriptive name for this alert", + "deliveryChannels": "Delivery Channels", + "email": "Email", + "recipients": "Recipients", + "recipientSearchPlaceholder": "Search by name or type emails (comma-separated)…", + "noUsersFound": "No users found matching \"{query}\"", + "recipientHint": "Search and select users to receive email notifications.", + "subject": "Subject", + "subjectVariablesHint": "Variables: $'{'severity'}', $'{'api'}', $'{'condition'}', $'{'environment'}'", + "message": "Message", + "messageVariablesHint": "Variables: $'{'api'}', $'{'policy'}', $'{'condition'}', $'{'value'}', $'{'timestamp'}', $'{'operator'}', $'{'threshold'}', $'{'period'}', $'{'environment'}', $'{'severity'}', $'{'dashboardLink'}', $'{'apiLink'}'", + "slack": "Slack", + "slackConnectHint": "Connect Slack in Settings if you do not see any channels.", + "loadingChannels": "Loading channels…", + "noChannels": "No channels available", + "channelsGroupLabel": "Channels", + "appsGroupLabel": "Apps", + "disableSlack": "Disable Slack", + "enableSlack": "Enable Slack", + "successMessage": "Notification was created.", + "creating": "Creating…", + "createButton": "Create Notification", + "requiredHint": "Fields marked with * are required.", + "requiredAriaSuffix": "required", + "help": { + "targetService": "Start typing to filter, then use the arrow keys to highlight a result and Enter to select.", + "threshold": "The alert fires when the metric satisfies this comparison continuously for the selected duration.", + "alertName": "Use a short, descriptive name (4 or more characters). Shown in the notification list and email subjects." + }, + "targetServiceListboxLabel": "Available targets", + "serviceTypeLabel": { + "api": "API", + "llm": "LLM", + "mcp": "MCP", + "agent": "Agent" + }, + "metricCategory": { + "policy-violations": "Governance - Policy Violations", + "http-response-codes": "Performance - Response Codes", + "request-count": "Performance - Request Volume", + "response-time": "Performance - Response Time", + "error-rate": "Reliability - Error Monitoring", + "cpu-usage": "Performance - Resource Utilization", + "memory-heap-usage": "Performance - Resource Utilization", + "thread-count": "Performance - Resource Utilization", + "message-count": "Performance - Message Processing", + "message-errors": "Reliability - Error Monitoring", + "message-response-time": "Performance - Response Time", + "deployment-success": "Deployment - Lifecycle Events", + "deployment-failure": "Deployment - Lifecycle Events", + "worker-unresponsive": "Reliability - System Health", + "server-disconnected": "Reliability - System Health", + "server-deleted": "Deployment - Lifecycle Events", + "custom-notifications": "General - Custom Events", + "token-usage": "LLM - Resource Consumption", + "tool-call-count": "Agent - Tool Usage" + }, + "createdSuccessReturn": "Notification was created.", + "failedToCreate": "We couldn't create the notification. Try again.", + "defaultSubject": "${severity}: ${api} ${condition}", + "defaultBody": "Hello,\nYou are receiving this alert because:\n The API policy ${policy} has ${condition} of ${value} at ${timestamp}.\nThe API policy has reached the threshold based on ${condition} is ${operator} ${threshold} for ${period}.\n\nEnvironment: ${environment}\n${dashboardLink}\n${apiLink}", + "alertFallback": "Alert", + "slackChannelAriaLabel": "Slack channel", + "error": { + "missingOrgOrUser": "Enter your organization and user information.", + "selectEnvironment": "Select an environment.", + "enableChannel": "Enable at least one delivery channel (email or Slack).", + "addRecipient": "Add at least one email recipient, or turn off email and use Slack.", + "selectSlackChannel": "Select a Slack channel, or turn off Slack.", + "noSlackChannels": "No Slack channels available. Connect Slack in Settings, then try again.", + "selectResponseCode": "Select a response code (or enter one) before creating this alert.", + "selectTarget": "Please select a target service before creating this alert." + }, + "slackChannel": "Slack channel", + "defaultEmailSubject": "$'{'severity'}': $'{'api'}' $'{'condition'}'", + "defaultEmailMessage": "Hello,\nYou are receiving this alert because:\n The API policy $'{'policy'}' has $'{'condition'}' of $'{'value'}' at $'{'timestamp'}'.\nThe API policy has reached the threshold based on $'{'condition'}' is $'{'operator'}' $'{'threshold'}' for $'{'period'}'.\n\nEnvironment: $'{'environment'}'\n$'{'dashboardLink'}'\n$'{'apiLink'}'", + "errorMissingOrgOrUser": "Enter your organization and user information.", + "errorSelectEnvironment": "Select an environment.", + "errorEnableChannel": "Enable at least one delivery channel (email or Slack).", + "noInstancesInEnvironment": "there are no instances in this environment.", + "noMatches": "No matches found" + }, + "notifications": { + "heading": "Notifications", + "subtitle": "Configure all platform notifications from this page.", + "tabAllNotifications": "All Notifications", + "tabSettings": "Settings" + }, + "notificationsListTab": { + "severity": { + "critical": "Critical", + "warning": "Warning", + "info": "Info" + }, + "filter": { + "allAlertTypes": "All Alert Types", + "requestCount": "Request Count", + "responseTime": "Response Time", + "responseCodes": "Response Codes", + "policyViolation": "Policy Violation", + "cpuUsage": "CPU Usage", + "allSeverities": "All Severities", + "allDelivery": "All Delivery", + "emailOnly": "Email Only", + "slackOnly": "Slack Only", + "both": "Both" + }, + "newNotification": "New Notification", + "paginationHint": "More API Manager alerts are available in pages.", + "previous": "Previous", + "next": "Next", + "loadingNotifications": "Loading notifications…", + "errorLoading": "We couldn't load notifications. Try again.", + "emptyDefault": "No notifications configured yet. Click \"New Notification\" to create one.", + "emptyFiltered": "No notifications match the selected filters.", + "column": { + "notification": "Notification", + "severity": "Severity", + "env": "Env", + "email": "Email", + "slack": "Slack", + "channel": "Channel", + "actions": "Actions" + }, + "collapseRow": "Collapse row", + "expandRow": "Expand row", + "statusOn": "On", + "statusOff": "Off", + "editNotification": "Edit notification", + "deleteNotification": "Delete notification", + "conditionType": { + "cpuUsage": "CPU Usage", + "memoryHeapUsage": "Memory / Heap Usage", + "threadCount": "Thread Count", + "messageCount": "Message Count", + "messageErrors": "Message Errors", + "messageResponseTime": "Message Response Time", + "requestCount": "Request Count", + "responseTime": "Response Time", + "responseCodes": "Response Codes", + "policyViolations": "Policy Violations", + "deploymentSuccess": "Deployment Success", + "deploymentFailure": "Deployment Failure", + "workerUnresponsive": "Worker Unresponsive", + "serverDisconnected": "Server Disconnected", + "serverDeleted": "Server Deleted", + "customNotifications": "Custom Notifications", + "autoScaled": "Auto-scaled", + "eventTraffic": "Event Traffic", + "responseCodeLabel": "{code} Response Code" + }, + "slackDelivery": { + "off": "Slack off", + "enabledNoChannel": "Slack → Enabled", + "enabledWithChannel": "Slack → {channel}" + }, + "failedToDeleteNotification": "We couldn't delete the notification. Try again.", + "agentBridge": { + "noOrgContext": "No active organization context is available to delete a notification.", + "noMatchingNotification": "No matching notification was found on the current list page.", + "deletedNotification": "Notification \"{name}\" was deleted.", + "failedToDelete": "We couldn't delete the notification. Try again." + }, + "detail": { + "alertMetric": "Alert Metric", + "condition": "Condition", + "conditionDuration": "for {duration} min", + "eventBased": "Event-based", + "service": "Service", + "delivery": "Delivery", + "emailOn": "Email on", + "emailOff": "Email off" + }, + "deleteDialog": { + "title": "Delete Notification", + "message": "Deleting \"{name}\" is permanent and cannot be undone.", + "deleting": "Deleting…" + }, + "aria": { + "alertType": "Alert type", + "severity": "Severity", + "delivery": "Delivery", + "loadingPage": "Loading page" + }, + "deleteSuccess": "Notification was deleted." + }, + "providers": { + "heading": "Providers" + }, + "addProvider": { + "breadcrumb": "Providers", + "stepConnect": "Connect to Provider", + "stepSetup": "Connection Setup", + "heading": "Connect to a Provider", + "loadingProviders": "Loading providers…", + "noProviders": "No providers available.", + "connectionLive": "Your connection is live!", + "createdScanner": "Scanner was created for {name}.", + "credentialsPrompt": "Enter your credentials to authenticate and discover available platforms.", + "platformLabel": "Platform", + "testConnection": "Test Connection", + "testing": "Testing…", + "testConnected": "Connected.", + "testFailed": "Failed", + "connectionSuccessful": "Connection successful.", + "connectedTo": "Connected to {name}.", + "continueButton": "Continue", + "connectionNameLabel": "Connection Name", + "connectionNamePlaceholder": "e.g., Production Account - Marketing", + "descriptionLabel": "Description", + "descriptionPlaceholder": "Add a description…", + "importWarning": "All discovered services will be imported into the portfolio.", + "connecting": "Connecting…", + "connect": "Connect", + "createScannerError": "We couldn't create the scanner. Try again.", + "authError": "We couldn't authenticate. Check your credentials and try again.", + "scannerCreatedFor": "Scanner was created for {name}.", + "stepChoose": "Choose Provider", + "chooseSubtitle": "Choose a provider to scan and import services into your catalog.", + "noProvidersAvailable": "No providers available", + "noProvidersHint": "No providers currently support this service type." + }, + "providersMainColumn": { + "allProviders": "All Providers", + "loadingProviders": "Loading providers…", + "addScanner": "Add Scanner", + "platforms": "Platforms", + "agents": "Agents", + "mcpServers": "MCP Servers", + "apis": "APIs", + "noScanners": "No scanners for this provider yet.", + "noScannersAll": "No scanners configured yet.", + "addScannerPrompt": "Click {label} to get started.", + "addScannerPromptAll": "Select a provider from the sidebar, then click Add Scanner to get started.", + "scannerCount": "{count} {count, plural, one {Scanner} other {Scanners}}", + "servicesDiscovered": "{count} Services Discovered", + "searchPlaceholder": "Search by scanner or provider…", + "searchLabel": "Search scanners", + "sortBy": "Sort by {label}", + "column": { + "scannerName": "Scanner Name", + "services": "Services", + "lastScanned": "Last Scanned", + "scanTrigger": "Scan Trigger" + }, + "trigger": { + "scheduled": "Scheduled", + "paused": "Paused", + "manual": "Manual" + }, + "actionsLabel": "Actions", + "platformType": { + "agentBuilder": "Agent Builder", + "apiGateway": "API Gateway", + "platform": "Platform" + } + }, + "providersSidebar": { + "navLabel": "Providers", + "allProviders": "All Providers", + "connected": "Connected", + "notConnected": "Not Connected", + "services": "{count} Services", + "scannerCount": "{count} {count, plural, one {Scanner} other {Scanners}}" + }, + "reviewChangesModal": { + "closeLabel": "Close preview changes modal", + "heading": "Preview Changes", + "willImport": "Will Import: {count}", + "willUpdate": "Will Update: {count}", + "willRemove": "Will Remove: {count}", + "agentsToImport": "Agents to Import", + "agentsToUpdate": "Agents to Update", + "agentsToRemove": "Agents to Remove", + "lastSeen": "Last seen: {time}", + "noChanges": "No changes to apply.", + "confirmImport": "Confirm Import" + }, + "scanHistory": { + "heading": "Scan History", + "scanRunLabel": "scan {count, plural, one {run} other {runs}}", + "noRuns": "No scan runs yet", + "noRunsHint": "Run this scanner to see results here.", + "column": { + "status": "Status", + "started": "Started", + "duration": "Duration", + "agentsFound": "Agents Found", + "changes": "Changes", + "summary": "Summary" + }, + "noSummary": "No summary", + "actionReview": "Review", + "actionView": "View", + "status": { + "completed": "Completed", + "started": "Running", + "partialSuccess": "Partial", + "failed": "Failed", + "waitingForReview": "Needs Review", + "aborted": "Aborted" + } + }, + "scanReviewPage": { + "breadcrumbAuditLog": "Audit Log", + "heading": "Audit Log", + "historicalBanner": "This is a historical scan result. Changes shown here have already been resolved.", + "viewLatestScan": "View latest scan", + "importComplete": "Import complete. {count} agents processed.", + "agentsFound": "{count} agents found", + "added": "{count} added", + "updated": "{count} updated", + "missing": "{count} missing", + "durationLabel": "Duration:", + "category": { + "all": "All", + "new": "Added", + "update": "Updated", + "missing": "Missing", + "existing": "Existing", + "skipped": "Skipped", + "unsuccessful": "Unsuccessful" + }, + "gridView": "Grid view", + "listView": "List view", + "selectionCount": "{selected} of {total} selected", + "selectAll": "Select All", + "deselectAll": "Deselect All", + "previewChanges": "Preview Changes", + "listHeader": { + "agent": "Agent", + "category": "Category", + "platform": "Platform", + "model": "Model" + }, + "toggleAllRows": "Toggle all rows", + "noAgents": "No agents in this category" + }, + "scannerDetailPage": { + "loadingScanner": "Loading scanner…", + "breadcrumbScanner": "Scanner", + "breadcrumbScanDetails": "Scan Details", + "errorHeading": "We couldn't load the scanner", + "errorLoadFallback": "We couldn't load the scanner. Try again.", + "errorDescription": "The scanner may have been removed or you may not have access.", + "retry": "Retry", + "backToProviders": "Back to providers", + "runDiscoveryScan": "Run Discovery Scan", + "aboutThisScanner": "About This Scanner", + "metaProvider": "Provider", + "metaCreated": "Created", + "metaLastScanned": "Last Scanned", + "metaServices": "Services", + "never": "Never", + "tab": { + "overview": "Overview", + "settings": "Settings" + }, + "toastScanStarted": "Scan started", + "errorStartScan": "We couldn't start the scan. Try again.", + "errorDelete": "We couldn't delete this item. Try again.", + "toastScannerDeleted": "Scanner \"{name}\" was deleted." + }, + "scanReviewAgentCard": { + "selectAgent": "Select {name}", + "providerType": "Provider Type", + "platform": "Platform", + "foundationModel": "Foundation Model", + "agentId": "Agent ID", + "region": "Region", + "pending": "Pending", + "na": "N/A", + "moreSkills": "+{count} more", + "lastSeen": "Last seen: {time}", + "updated": "Updated: {time}" + }, + "scanReviewAgentRow": { + "selectAgent": "Select {name}", + "providerType": "Provider Type", + "platform": "Platform", + "foundationModel": "Foundation Model", + "agentId": "Agent ID", + "region": "Region", + "pending": "Pending", + "na": "N/A", + "skills": "Skills", + "lastUpdated": "Last Updated", + "lastSeen": "Last Seen" + }, + "scanReviewAgentMetadata": { + "changes": "Changes:", + "error": "Error:" + }, + "providerConnectionsTab": { + "connectionsCount": "Connections ({count})", + "addConnection": "Add Connection", + "empty": "No connections configured for this provider.", + "addFirst": "Add first connection", + "column": { + "entityName": "Name", + "type": "Type", + "status": "Status", + "schedule": "Schedule", + "lastSync": "Last Sync", + "entities": "Entities", + "actions": "Actions" + }, + "actionReview": "Review", + "actionConfigure": "Configure", + "actionView": "View", + "configureTitle": "Configure connection", + "deleteTitle": "Delete connection" + }, + "providerDiscoveredEntities": { + "loadingApis": "Loading discovered APIs…", + "empty": "No entities discovered for this provider yet.", + "loadError": "We couldn't load discovered APIs. {error}", + "column": { + "entityName": "Name", + "status": "Status", + "version": "Version" + }, + "entityType": { + "agents": "Agents", + "llms": "LLM Proxies", + "apis": "APIs", + "vectorDatabases": "Vector Databases" + }, + "entityColumn": { + "protocol": "Protocol", + "latency": "Latency", + "invocations": "Invocations", + "costPerDay": "Cost/Day", + "model": "Model", + "category": "Category", + "context": "Context", + "inputCost": "Input Cost", + "type": "Type", + "provider": "Provider", + "instances": "Instances", + "policies": "Policies", + "dimensions": "Dimensions", + "vectors": "Vectors", + "indexes": "Indexes", + "embedding": "Embedding" + } + }, + "providerOverviewTab": { + "summary": "Summary", + "description": "Description", + "platform": "Platform", + "status": "Status", + "region": "Region", + "website": "Website", + "connectionSummary": "Connection Summary", + "totalConnections": "Total Connections", + "active": "Active", + "entitiesDiscovered": "Entities Discovered", + "entitiesByType": "Entities by Type", + "entityType": { + "agents": "Agents", + "mcpServers": "MCP Servers", + "llms": "LLM Proxies", + "apis": "APIs", + "vectorDatabases": "Vector Databases" + } + }, + "providerSettingsTab": { + "heading": "Provider Settings", + "nameLabel": "Name", + "gatewayLabel": "Gateway", + "authTokenLabel": "Auth Token", + "authTokenPlaceholder": "Enter auth token", + "regionLabel": "Region", + "regionPlaceholder": "e.g. us-east-1", + "orgIdLabel": "Organization / Account ID", + "orgIdPlaceholder": "e.g. 123456789", + "websiteLabel": "Website URL", + "websitePlaceholder": "https://…", + "loadingGateways": "Loading gateways…", + "noGateways": "No gateways found. Check your Kong configuration.", + "saved": "Saved!", + "dangerZone": "Danger Zone", + "dangerDescription": "Disconnecting this provider will remove all associated scanner configurations and discovered entities. This action cannot be undone.", + "disconnectProvider": "Disconnect Provider", + "disconnecting": "Disconnecting…", + "disconnectDialogTitle": "Disconnect Provider", + "disconnectDialogMessage": "Disconnecting {name} will delete all scanner configurations and remove all discovered entities. This action cannot be undone.", + "disconnectConfirmLabel": "Disconnect", + "disconnectSuccess": "{name} was disconnected.", + "disconnectPartial": "Partially disconnected: {count} error(s) occurred", + "unexpectedError": "Something went wrong. Try again." + }, + "editCredentialsModal": { + "heading": "Update Credentials", + "securityNotice": "Credentials must be re-entered for security. Previous values are not displayed.", + "testConnection": "Test Connection", + "testing": "Testing…", + "connectedSuccessfully": "Connected.", + "connectionFailed": "We couldn't connect. Try again.", + "saveFailed": "We couldn't save your credentials. Try again.", + "saveCredentials": "Save Credentials", + "saving": "Saving…", + "providerNotFound": "We couldn't find the provider \"{name}\" in available providers.", + "loadProvidersFailed": "We couldn't load providers. Try again.", + "closeDialog": "Close dialog" + }, + "scannerOverviewTab": { + "services": "Services", + "instances": "Instances", + "scanHistory": "Scan History", + "show": "Show", + "noScans": "No scans recorded yet" + }, + "scanAgentServices": { + "servicesTitle": "Services {action} ({count})", + "typeAgent": "Agent", + "typeApi": "API" + }, + "scanDetailView": { + "scanDetails": "Scan Details", + "backToOverview": "Back to Overview", + "servicesDiscovered": "Services Discovered", + "scanResults": "Scan Results", + "loadingServices": "Loading services…", + "noChanges": "No service changes detected in this scan" + }, + "scannerSettingsTab": { + "heading": "Scanner Settings", + "editSettings": "Edit Settings", + "saving": "Saving…", + "scannerNameLabel": "Scanner Name", + "authMethodLabel": "Auth Method", + "descriptionLabel": "Description", + "noDescription": "No description", + "scheduleLabel": "Schedule", + "scheduleValue": "Every {interval} {unit} at {at}", + "notificationsLabel": "Notifications", + "filtersLabel": "Filters", + "credentials": "Credentials", + "updateCredentials": "Update Credentials", + "storedCredentials": "Stored Credentials", + "credentialsOnFile": "Credentials on file", + "lastScanAuth": "Last Scan Auth", + "authSuccess": "Authenticated.", + "authFailed": "We couldn't authenticate you. Try again.", + "noScansYet": "No scans yet", + "credentialsSecure": "Credentials are stored securely and used only for discovery scans.", + "dangerZone": "Danger Zone", + "dangerDescription": "Deleting this scanner will permanently remove it from your account. Services and Instances discovered by this scanner will remain in your portfolio.", + "deleteScanner": "Delete Scanner", + "deleting": "Deleting…" + }, + "providerDetail": { + "loadingProvider": "Loading provider…", + "breadcrumbProviders": "Providers", + "orgId": "Org ID: {id}", + "accountId": "Account ID: {id}", + "entities": "Entities", + "connections": "Connections", + "status": { + "connected": "Connected", + "disconnected": "Disconnected", + "error": "Error", + "pending": "Pending" + }, + "mechanism": { + "scanner": "Scanner", + "gateway": "Gateway", + "orgLink": "Org Link" + }, + "connectionStatus": { + "active": "Active", + "inactive": "Inactive", + "error": "Error", + "syncing": "Syncing" + }, + "scannerStatus": { + "scheduled": "Scheduled", + "pendingReview": "Pending Review", + "stopped": "Stopped", + "paused": "Paused", + "importing": "Importing" + }, + "schedule": { + "disabled": "Disabled", + "daily": "Daily", + "weekly": "Weekly", + "monthly": "Monthly", + "atTime": "{frequency} at {time}" + }, + "overview": { + "summary": "Summary", + "description": "Description", + "platform": "Platform", + "status": "Status", + "region": "Region", + "website": "Website", + "connectionSummary": "Connection Summary", + "totalConnections": "Total Connections", + "active": "Active", + "entitiesDiscovered": "Entities Discovered", + "entitiesByType": "Entities by Type", + "agents": "Agents", + "mcpServers": "MCP Servers", + "llms": "LLM Proxies", + "apis": "APIs", + "vectorDatabases": "Vector Databases" + }, + "kong": { + "heading": "Kong Control Planes", + "description": "Connected gateways (control planes) for the Kong provider.", + "loadError": "We couldn't load Kong gateways. Try again.", + "empty": "No control planes found for this Kong provider.", + "columnGateway": "Gateway", + "columnStatus": "Status", + "columnCreated": "Created", + "columnUpdated": "Updated", + "active": "Active" + }, + "apigee": { + "heading": "Apigee Proxies", + "description": "Connected Apigee proxies for the Apigee provider.", + "loadError": "We couldn't load Apigee proxies. Try again.", + "empty": "No connected Apigee proxies found for this provider.", + "columnProxy": "Proxy", + "columnOrganization": "Organization", + "columnStatus": "Status", + "active": "Active" + }, + "flexGateways": { + "heading": "Omni Gateways", + "description": "Managed and connected Omni Gateways for the connected MuleSoft provider.", + "createGateway": "Create Gateway", + "partialErrors": "Some gateway sources couldn't be loaded. Try refreshing to see all sources.", + "loadError": "We couldn't load Omni Gateways. Try again.", + "empty": "No Omni Gateways found for this connected MuleSoft provider.", + "createFirst": "Create your first gateway", + "columnGateway": "Gateway", + "columnSource": "Source", + "columnMode": "Mode", + "columnEnvironment": "Environment", + "columnStatus": "Status", + "columnVersion": "Version", + "columnActions": "Actions", + "managedMode": "Managed Omni Gateway", + "connectedMode": "Connected Omni Gateway", + "deleteTitle": "Delete Gateway", + "deleteMessage": "Deleting {name} is permanent and cannot be undone.", + "deleting": "Deleting…", + "failedToDeleteGateway": "We couldn't delete {name}. Try again.", + "deleteGatewayTitle": "Delete {name}" + }, + "refresh": "Refresh", + "tab": { + "overview": "Overview", + "connections": "Connections", + "gateways": "Gateways", + "discoveredEntities": "Discovered Entities", + "settings": "Settings" + }, + "connectionsTab": { + "heading": "Connections ({count})", + "addConnection": "Add Connection", + "empty": "No connections configured for this provider.", + "addFirst": "Add first connection", + "columnName": "Name", + "columnType": "Type", + "columnStatus": "Status", + "columnSchedule": "Schedule", + "columnLastSync": "Last Sync", + "columnEntities": "Entities", + "columnActions": "Actions", + "actionReview": "Review", + "actionConfigure": "Configure", + "actionView": "View", + "configureTitle": "Configure connection", + "deleteTitle": "Delete connection" + }, + "entitiesTab": { + "loadingApis": "Loading discovered APIs…", + "empty": "No entities discovered for this provider yet.", + "loadError": "We couldn't load discovered APIs. {error}", + "failedToLoadApis": "We couldn't load discovered APIs. Try again.", + "columnName": "Name", + "columnStatus": "Status", + "columnVersion": "Version", + "agents": "Agents", + "llms": "LLM Proxies", + "apis": "APIs", + "vectorDatabases": "Vector Databases", + "protocol": "Protocol", + "latency": "Latency", + "invocations": "Invocations", + "costPerDay": "Cost/Day", + "model": "Model", + "category": "Category", + "context": "Context", + "inputCost": "Input Cost", + "type": "Type", + "provider": "Provider", + "instances": "Instances", + "policies": "Policies", + "dimensions": "Dimensions", + "vectors": "Vectors", + "indexes": "Indexes", + "embedding": "Embedding" + }, + "settingsTab": { + "heading": "Provider Settings", + "nameLabel": "Name", + "gatewayLabel": "Gateway", + "authTokenLabel": "Auth Token", + "authTokenPlaceholder": "Enter auth token", + "regionLabel": "Region", + "regionPlaceholder": "e.g. us-east-1", + "orgIdLabel": "Organization / Account ID", + "orgIdPlaceholder": "e.g. 123456789", + "websiteLabel": "Website URL", + "websitePlaceholder": "https://…", + "loadingGateways": "Loading gateways…", + "noGateways": "No gateways found. Check your Kong configuration.", + "saved": "Saved!", + "dangerZone": "Danger Zone", + "dangerDescription": "Disconnecting this provider will remove all associated scanner configurations and discovered entities. This action cannot be undone.", + "disconnectProvider": "Disconnect Provider", + "disconnecting": "Disconnecting…", + "disconnectDialogTitle": "Disconnect Provider", + "disconnectDialogMessage": "Disconnecting {name} will delete all scanner configurations and remove all discovered entities. This action cannot be undone.", + "disconnectConfirmLabel": "Disconnect", + "disconnectSuccess": "{name} was disconnected.", + "disconnectPartial": "Partially disconnected: {count} error(s) occurred", + "unexpectedError": "Something went wrong. Try again." + } + }, + "costManagement": { + "heading": "Cost Management", + "subtitle": "Monitor usage and review optimization recommendations for your MCP servers" + }, + "instanceDetailModal": { + "closeDialog": "Close dialog", + "tokenUsageHeading": "Token Usage & Response Time", + "timeRangeAriaLabel": "Time range", + "tokens": "Tokens", + "responseTimeMs": "Response Time (ms)", + "optimizationOpportunities": "Optimization Opportunities", + "optimizationCount": "Found {count} {count, plural, one {optimization} other {optimizations}} you can implement", + "notApplied": "Not Applied", + "applyThisPolicy": "Apply This Policy", + "whyThisPolicy": "Why this policy?", + "projectedReduction": "Applying {policyName} projects a reduction of ~{tokensSaved} tokens per {timeframe}.", + "whyToolMapping": "Analysis of tools/list responses shows an average payload of {avgTokens} tokens across {calls} calls. {policyName} compresses tool descriptions to ~15 words, projecting a reduction of ~{tokensSaved} tokens per last {timeframe}.", + "whyToolSanitization": "Analysis of tools/call responses shows an average payload of {avgTokens} tokens across {calls} calls. {policyName} removes unnecessary output, projecting a reduction of ~{tokensSaved} tokens per last {timeframe}.", + "appliedPoliciesHeading": "Applied Cost Management Policies", + "noPoliciesApplied": "No policies applied to this instance.", + "viewFullDetails": "View full instance details", + "configurePolicy": "Configure {name}", + "closeModal": "Close instance detail", + "backToDetail": "Back to instance detail", + "configurePrefix": "Configure {name}", + "backToInstanceDetail": "Back to instance detail", + "closeInstanceDetail": "Close instance detail", + "tokenUsageAndResponseTime": "Token Usage & Response Time", + "timeRange": "Time range", + "policyProjection": "Applying {policyName} projects a reduction of ~{tokens} tokens per {timeframe}.", + "appliedCostManagementPolicies": "Applied Cost Management Policies", + "viewFullInstanceDetails": "View full instance details" + }, + "mcpTokenAnalysis": { + "summaryHeading": "Summary", + "timeRangeAriaLabel": "Time range", + "estimationTooltip": "Estimated token counts based on payload byte lengths. Actual token counts sometimes differ.", + "acrossInstances": "Across {count} instances", + "instancesCount": "{count} instances", + "topOpportunities": "Top Opportunities", + "collapseSection": "Collapse section", + "expandSection": "Expand section", + "previousRecommendations": "Previous opportunities", + "nextRecommendations": "Next opportunities", + "dismissOpportunity": "Dismiss opportunity", + "recommendationRange": "{start}–{end} of {total}", + "kpi": { + "totalTokens": "Total Tokens", + "savedTokens": "Saved Tokens (Est.)", + "toolCalls": "Tool Calls" + }, + "footnote": { + "byOptimization": "By optimization policies", + "noOptimization": "No optimization policies active" + }, + "chart": { + "heading": "Token Usage & Response Time", + "tokensAxis": "Tokens", + "responseTimeAxis": "Response Time (ms)", + "tokensUsed": "Tokens Used", + "estWithoutOptimization": "Est. Without Optimization", + "avgResponseTime": "Avg Response Time" + }, + "opportunityCard": { + "largeToolDescriptionsDetected": "Long tool descriptions detected", + "largeToolResponsesDetected": "Long tool responses detected", + "potentialSavings": "Potential Savings", + "savingsEstimateUnavailable": "Savings estimate unavailable", + "tokensPerTimeframe": "tokens last {timeframe}", + "savingsPercent": "({percent}%)", + "skipForNow": "Skip for now" + }, + "timeRangeTooltip": "Time range only filters this panel. Recommendations and the instance table always use the full 30-day window." + }, + "policyCatalog": { + "placeholderBanner": "Conceptual placeholder — needs deeper exploration and thinking", + "heading": "Policy Catalog", + "subtitle": "Browse and apply governance policies", + "searchPlaceholder": "Search policies…", + "noMatch": "No policies match your search.", + "appliedSuccess": "Policy was applied.", + "applyTitle": "Apply “{name}”", + "closeApplyModal": "Close apply policy window", + "tab": { + "individual": "Select Individual", + "bulk": "Bulk Rule" + }, + "searchEntities": "Search entities…", + "selectedCount": "{count} selected", + "bulkInstruction": "Apply to all matching entities:", + "bulkAll": "All", + "bulkIn": "in", + "typeLabel": { + "agents": "Agents", + "mcp-servers": "MCP Servers", + "llms": "LLM Proxies", + "functions": "Functions", + "apis": "APIs", + "vector-databases": "Vector DBs", + "gateways": "Gateways" + }, + "environment": { + "production": "production", + "sandbox": "sandbox", + "development": "development" + } + }, + "policySelector": { + "backToInstance": "Back to Instance", + "heading": "Apply Policy", + "selectPolicyStep": "Select Policy", + "configurePolicyStep": "Configure Policy", + "description": "Select a policy to apply to this instance.", + "searchAriaLabel": "Search policies", + "searchPlaceholder": "Search policies…", + "trafficFlow": "Traffic Flow", + "trafficTooltip": "Filter policies by traffic direction: Inbound policies apply to incoming requests. Outbound policies apply to backend calls.", + "domain": "Domain", + "direction": { + "inbound": "Inbound", + "outbound": "Outbound" + }, + "statusAvailable": "Available to apply", + "statusApplied": "Applied", + "statusAutomated": "Automated", + "statusFilterLabel": "Status", + "trafficFlowLabel": "Traffic Flow", + "trafficFlowTooltip": "Filter policies by traffic direction: Inbound policies apply to incoming requests. Outbound policies apply to backend calls.", + "noFilterMatch": "No policies match your filters.", + "allApplied": "All available policies are already applied to this instance.", + "selectAriaLabel": "Select {name}", + "environmentFallback": "environment", + "domainFilter": { + "accessAndSecurity": "Access and Security", + "performanceAndCost": "Performance and Cost", + "dataPrivacyAndIntegrity": "Data Privacy and Integrity", + "complianceAndObservability": "Compliance and Observability" + }, + "statusFilter": { + "available": "Available to apply", + "applied": "Applied", + "automated": "Automated" + }, + "status": "Status", + "errorPolicyNotAvailable": "Policy {policyId} isn't available in the selector list.", + "errorPolicyAlreadyApplied": "Policy {name} is already {status}. Select a different policy.", + "defaultSelectSummary": "Selected policy {name}.", + "back": "Back" + }, + "policyMetadataFields": { + "heading": "Policy Details", + "description": "Optional name + version + application conditions, matching Anypoint API Manager.", + "label": "Policy label", + "labelPlaceholder": "e.g. SLA Tier 1", + "labelHint": "Helps tell duplicate-applied policies apart in the policies list.", + "version": "Policy version", + "versionEmpty": "(No versions available)", + "versionHint": "Pick the policy-template version to apply.", + "applicationConditions": "Application conditions", + "applyAllRequests": "Apply to all requests", + "applySpecific": "Apply only to specific resources", + "method": "Method", + "uriTemplateRegex": "URI template regex", + "addRowHint": "Add a row to limit this policy to specific HTTP requests.", + "methodPlaceholder": "GET|POST", + "uriPlaceholder": "/api/orders/.*", + "removeCondition": "Remove condition", + "addCondition": "+ Add condition" + }, + "policyConfigForm": { + "heading": "Configure Policy", + "description": "Set configuration values for {name}.", + "loadingPlaceholder": "Loading configurations for {name}…", + "loadingHint": "Match configuration fields to those available in Anypoint Platform.", + "selectUpstream": "Select at least one upstream for outbound policy application.", + "missingApigeeContext": "Missing Apigee apply context.", + "applyFailed": "We couldn't apply the policy. Try again.", + "invalidJson": "The configuration JSON is invalid.", + "saving": "Saving…", + "applying": "Applying…", + "saveChanges": "Save Changes", + "applyPolicy": "Apply Policy", + "wizardTitle": "Apply Policy", + "viewTitle": "Policy Configuration", + "viewDescription": "Configuration values for {name}.", + "discardModalTitle": "Discard changes and leave?", + "discardModalMessage": "You have unsaved changes. Are you sure you want to leave this page?", + "discardModalConfirm": "Discard and Leave", + "discardModalCancel": "Cancel", + "actionsMenu": "Actions", + "editConfiguration": "Edit Configuration", + "enablePolicy": "Enable Policy", + "disablePolicy": "Disable Policy", + "removePolicy": "Remove Policy", + "disabledBadge": "Disabled", + "removeModalTitle": "Remove {name}?", + "removeModalMessage": "Are you sure you want to remove this policy? This action cannot be undone and the change will take effect immediately.", + "removeModalConfirm": "Remove Policy", + "removeModalCancel": "Cancel" + }, + "policyDetailPage": { + "subtitle": "Policy Configuration", + "backToInstance": "Back to Instance", + "actionsAriaLabel": "Policy actions", + "edit": "Edit", + "disable": "Disable", + "enable": "Enable", + "delete": "Delete", + "noFields": "No configuration values to display.", + "checkboxEnabled": "Enabled", + "checkboxDisabled": "Disabled", + "valueEmpty": "—", + "saveChanges": "Save changes", + "cancel": "Cancel", + "configurationJson": "Configuration JSON" + }, + "policyConfigFieldEditor": { + "configurationJson": "Configuration JSON", + "selectPlaceholder": "Select…", + "itemLabel": "Item {index}", + "remove": "Remove", + "addItem": "Add Item", + "namedItemLabel": "{name} {index}", + "removeItemAriaLabel": "Remove {name}", + "addNamedItem": "Add {name}" + }, + "policyConfigReview": { + "governanceReview": "Governance review", + "errors": "Errors", + "warnings": "Warnings", + "overrideWarnings": "I understand the governance warnings and want to continue applying this policy.", + "suggested": "Suggested", + "outboundTargets": "Outbound targets", + "outboundDescription": "Select one or more upstreams for this outbound policy.", + "noUpstreams": "We can't find any upstreams for this API instance. Add an upstream and try again.", + "selectUpstream": "Select upstream {name}" + }, + "policyConfigFooter": { + "applying": "Applying…", + "applyPlugin": "Apply Plugin", + "applyApigeePolicy": "Apply Apigee Policy", + "applyPolicy": "Apply Policy" + }, + "policyTemplateChecker": { + "heading": "OOTB Policy Form Checker", + "description": "Load every out-of-the-box policy template for an org and preview the fields the frontend will render.", + "field": { + "orgId": "Organization ID", + "envId": "Environment ID", + "apiInstanceId": "API Instance ID", + "userToken": "User Token" + }, + "placeholder": { + "sessionToken": "Using signed-in session token by default", + "pasteToken": "Paste a bearer token" + }, + "reloadTemplates": "Reload templates", + "tokenStatus": { + "pasted": "Using pasted token.", + "session": "Using current signed-in session token.", + "none": "No session token detected." + }, + "validation": { + "tokenRequired": "Provide an Anypoint token or sign in first.", + "orgIdRequired": "orgId is required." + }, + "summary": { + "ootbTemplates": "OOTB templates", + "renderable": "Renderable", + "noConfig": "No config", + "errors": "Errors" + }, + "unnamedPolicy": "Unnamed policy", + "noDescription": "No description returned.", + "unknownAsset": "unknown-asset", + "noVersion": "no-version", + "inboundDefault": "inbound", + "fieldCount": "{count} {count, plural, one {field} other {fields}}", + "noConfigMessage": "This template doesn't expose configurable fields. The UI treats it as a valid no-form policy.", + "nestedFields": "Nested item fields: {fields}", + "nestedConfig": "Nested configuration", + "rawConfiguration": "Raw configuration", + "emptyState": "Enter an org and token, then load templates to inspect the generated forms." + }, + "toolMappingConfig": { + "breadcrumbGovernance": "Governance", + "breadcrumbLabel": "Configure Tool Mapping", + "heading": "Configure Tool Mapping", + "subtitle": "Optimize MCP tool descriptions for improved agent discovery.", + "mcpOnlyMessage": "The Tool Mapping policy applies only to MCP Servers." + }, + "toolMappingForm": { + "stepTools": "Tools", + "stepReview": "Review", + "continue": "Continue", + "applyPolicy": "Apply Policy", + "missingBaseDescription": "Base description not available", + "loadExistingFailed": "We couldn't load the policy configuration. Try again.", + "retry": "Retry" + }, + "importSourceDropdown": { + "importTools": "Import Tools", + "fromExchange": "From Exchange", + "fromExchangeDescription": "Import published tool definitions", + "fromMcpServer": "From MCP Server", + "fromMcpServerDescription": "Discover tools from the live instance" + }, + "importToolsFromMcp": { + "title": "Import Tools from MCP Server", + "closeModal": "Close notification window", + "connecting": "Connecting to MCP server…", + "noInstance": "No upstream URL found for this MCP server instance. Confirm the instance has a configured upstream before importing tools.", + "authHint": "Check the authentication policies configured for this MCP server instance.", + "noTools": "This MCP server has no tools available.", + "selectAll": "Select All", + "importCount": "Import {count} {count, plural, one {tool} other {tools}}", + "failedToFetchTools": "We couldn't fetch tools from the MCP server. Try again.", + "urlLabel": "Server URL", + "clientIdLabel": "Client ID (Optional)", + "clientIdPlaceholder": "Paste the Client ID…", + "clientSecretLabel": "Client Secret (Optional)", + "clientSecretPlaceholder": "Paste the Client Secret…", + "fetchTools": "Fetch Tools", + "showSecret": "Show", + "hideSecret": "Hide", + "credentialsHint": "Provide credentials if the server requires authentication.", + "retry": "Retry" + }, + "importToolsModal": { + "title": "Import Tools", + "closeModal": "Close window", + "noTools": "This MCP server has no tools available for import.", + "selectAll": "Select All", + "importCount": "Import {count} {count, plural, one {tool} other {tools}}", + "failedToLoadTools": "We couldn't load tools. Try again.", + "specHint": "The asset's tool spec may not be published yet. Try importing from the live MCP server instead." + }, + "toolMappingToolsStep": { + "heading": "Tool Descriptions", + "description": "Edit base descriptions and optimize each tool, or use “Optimize All” to process everything.", + "optimizeAll": "Optimize All", + "optimizingProgress": "Optimizing {current} of {total}…", + "noToolsTitle": "No tools imported", + "noToolsDescription": "Import tools from this MCP server to begin optimizing descriptions.", + "removeAriaLabel": "Remove {name}", + "optimize": "Optimize", + "nameLabel": "Name", + "baseDescription": "Base Description", + "currentDescription": "Current Description", + "updatedBadge": "Updated", + "mappedNameAriaLabel": "Mapped name for {name}", + "optimizationFailed": "We couldn't complete the optimization. Try again." + }, + "toolMappingReviewStep": { + "heading": "Review and Apply", + "summary": "{optimizedCount} of {total} {total, plural, one {tool} other {tools}} optimized. Review the results before applying.", + "originalTokens": "Original Tokens", + "newTokens": "New Tokens", + "totalReduction": "Total Reduction", + "updated": "Updated", + "unchanged": "Unchanged", + "original": "Original", + "new": "New" + }, + "exposeAsMcpModal": { + "heading": "Expose as MCP Server", + "closeAriaLabel": "Close", + "step": { + "selectInstance": "Select Instance", + "selectOperations": "Select Operations", + "reviewTools": "Review Tools", + "selectGateway": "Select Gateway", + "configureServer": "Configure Server" + }, + "env": { + "production": "Production", + "sandbox": "Staging", + "development": "QA" + }, + "instanceStep": { + "description": "Choose which instance to expose as an MCP server. The instance determines the environment and base URL for the generated tools.", + "noInstances": "No instances available. Add an instance to this API to expose it as an MCP server." + }, + "operationsLoading": "Loading operations…", + "gatewayStep": { + "loading": "Loading gateways…", + "searchPlaceholder": "Search by gateway name or ID…", + "allBusinessGroups": "All Business Groups", + "gatewayCount": "{filtered} of {total} {total, plural, one {gateway} other {gateways}}", + "gatewayCountFiltered": "{filtered} of {total} {total, plural, one {gateway} other {gateways}} match your filters", + "noGatewaysFiltered": "No gateways match your filters. Try adjusting the search or business group.", + "noGateways": "No gateways available.", + "noOrgId": "No organization ID available to fetch gateways" + }, + "configStep": { + "serverNameLabel": "Server Name", + "descriptionLabel": "Description", + "protocolLabel": "Protocol", + "protocolHttp": "HTTP", + "protocolHttpDesc": "REST-like protocol for stateless tools", + "protocolSse": "SSE", + "protocolSseDesc": "Server-Sent Events for streaming responses", + "protocolStdio": "stdio", + "protocolStdioDesc": "Standard input/output for local execution" + }, + "summary": { + "heading": "Summary", + "sourceApi": "Source API:", + "instance": "Instance:", + "gateway": "Gateway:", + "operationsExposed": "Operations exposed:", + "toolsGenerated": "Tools generated:", + "protocol": "Protocol:" + }, + "serverNameDefault": "{name} ({env}) MCP Server", + "serverNameDefaultNoEnv": "{name} MCP Server", + "serverDescriptionDefault": "Auto-generated MCP server exposing {name} {env} instance operations", + "serverDescriptionDefaultNoEnv": "Auto-generated MCP server exposing {name} operations", + "creating": "Creating…", + "createMcpServer": "Create MCP Server", + "failedToCreate": "We couldn't create the MCP server. Try again.", + "failedToFetchGateways": "We couldn't fetch gateways. Try again." + }, + "operationTable": { + "searchPlaceholder": "Search by path or summary…", + "allMethods": "All Methods", + "selectionCount": "{selected} of {total} {total, plural, one {operation} other {operations}} selected", + "visibleHint": "({count} visible)", + "selectAllAriaLabel": "Select all visible operations", + "headerMethod": "Method", + "headerPath": "Path", + "headerSummary": "Summary", + "emptyFiltered": "No operations match your filters", + "emptyDefault": "No operations available", + "deprecated": "Deprecated", + "selectHint": "Select at least one operation to continue.", + "selectOperationAriaLabel": "Select {method} {path}" + }, + "toolMappingList": { + "toolCount": "{count} {count, plural, one {tool} other {tools}} configured", + "errorCount": "{count} validation {count, plural, one {error} other {errors}}", + "fixErrors": "Fix {count} validation {count, plural, one {error} other {errors}} before continuing.", + "nameRule": "Tool names must be unique, non-empty, and contain only lowercase letters, numbers, and underscores.", + "toolNameLabel": "Tool Name", + "descriptionLabel": "Description", + "inputSchemaLabel": "Input Schema (Read-Only)" + }, + "guardrailsListView": { + "filterByTypeAriaLabel": "Filter by strategy type", + "typeAll": "All", + "typeGuardrails": "Controls", + "typeAutomatedPolicies": "Automated Policies", + "reorder": "Reorder", + "statusAny": "Any Status", + "statusActive": "Active", + "statusDisabled": "Disabled", + "searchPlaceholder": "Search strategies…", + "searchAriaLabel": "Search strategies", + "headerOrder": "Order", + "headerStrategyName": "Strategy Name", + "headerType": "Type", + "headerTarget": "Target", + "headerStatus": "Status", + "headerGovernedServices": "Governed Services", + "headerModified": "Modified", + "typeAutomatedPolicy": "Automated Policy", + "fromAnypoint": "From Anypoint Platform", + "actionsAriaLabel": "Strategy actions", + "actionEdit": "Edit", + "actionDuplicate": "Duplicate", + "actionDelete": "Delete", + "actionDeleting": "Deleting…", + "actionDisable": "Disable", + "actionEnable": "Enable", + "emptyDefault": "No custom governance strategies created yet. Create your first to extend governance beyond the default profile.", + "emptyFiltered": "No governance strategies match your filters.", + "rowsPerPage": "Rows per page", + "showingRange": "Showing {start}–{end} of {total}", + "previous": "Previous", + "next": "Next", + "previousPageAriaLabel": "Previous page of strategies", + "nextPageAriaLabel": "Next page of strategies", + "sortByAriaLabel": "Sort by {column}" + }, + "complianceTable": { + "headerServiceType": "Service Type", + "headerTotal": "Total", + "headerConsumption": "Consumption", + "headerCompliant": "Compliant", + "headerNonCompliant": "Noncompliant", + "headerPending": "Pending", + "emptyState": "No governance status has been generated for this organization yet. Refresh insights to populate service compliance.", + "serviceType": { + "agents": "Agents", + "mcpServers": "MCP Servers", + "llms": "LLM Proxies", + "rest": "REST", + "soap": "SOAP", + "graphql": "GraphQL", + "grpc": "gRPC", + "asyncapi": "AsyncAPI", + "functions": "Functions", + "vectorDatabases": "Vector Databases" + } + }, + "automatedPoliciesReorder": { + "title": "Automated Policies", + "badgeLabel": "Automated Policy", + "environment": "Environment", + "noEnvironments": "No environments with automated policies", + "failedToReorder": "We couldn't reorder automated policies. Try again.", + "applyReorder": "Apply Reorder", + "emptyMessage": "No automated policies to reorder in this environment.", + "emptyState": "No automated policies to reorder in this environment." + }, + "deleteStrategyModal": { + "closeAriaLabel": "Close delete dialog", + "heading": "Delete {typeLabel}", + "confirmMessage": "Delete {name}?", + "bodyMessage": "Deleting this {bodyNoun} permanently removes it. Services governed by this {bodyNoun} are no longer validated against its rules.", + "deleting": "Deleting…", + "deleteButton": "Delete {typeLabel}", + "typeAutomatedPolicy": "Automated Policy", + "typeGuardrail": "Control" + }, + "disableAutomatedPolicyModal": { + "closeAriaLabel": "Close disable dialog", + "heading": "Disable Automated Policy", + "confirmMessage": "Are you sure you want to disable {name}?", + "bodyMessage": "Policies currently applied through this strategy will be removed from all services. You can re-enable this strategy later to reapply the policy.", + "disableButton": "Disable Automated Policy" + }, + "disabledAutomatedPolicyBanner": { + "automatedPolicy": "This automated policy is disabled. These services are not currently governed but will be once the policy is activated.", + "controls": "This control is disabled. These services are not currently governed but will be once the strategy is activated." + }, + "guardrailEvaluationPanel": { + "runEvaluation": "Run profile evaluation", + "refreshStatus": "Refresh status", + "jobStatus": "Job status: {status}", + "evaluationSummary": "{services} services · {rulesets} rulesets · {violations} violations · {warnings} warnings", + "upstreamErrors": "Upstream evaluation errors", + "upstreamErrorsHint": "The run completed with upstream failures. This can lead to empty control matches.", + "versions": "{count} versions", + "versionUnknown": "Version unknown", + "rulesetStatus": "Status: {status} · Violations: {violations} · Warnings: {warnings}", + "findingSummary": "{name} · {severity} · {count} findings", + "noRulesetBreakdown": "No ruleset-level breakdown available for this API version.", + "emptyEvaluation": "No profile evaluation matches found for this control yet." + }, + "policyCard": { + "typeLabel": { + "agents": "Agents", + "mcp-servers": "MCP Servers", + "llms": "LLM Proxies", + "functions": "Functions", + "apis": "APIs", + "vector-databases": "Vector DBs", + "gateways": "Gateways" + }, + "appliedTo": "Applied to {count}", + "violations": "{count} violations", + "applyButton": "Apply", + "moreTypes": "+{count}" + }, + "reorderPoliciesModal": { + "closeAriaLabel": "Close reorder dialog", + "heading": "Reorder Automated Policies", + "description": "Manage automated policy order per environment. Select an environment to reorder its policies.", + "environmentLabel": "Environment", + "noEnvironments": "No environments with automated policies", + "emptyState": "No automated policies to reorder in this environment.", + "moveUp": "Move {name} up", + "moveDown": "Move {name} down", + "saving": "Saving…", + "applyReorder": "Apply Reorder", + "failedToReorder": "We couldn't reorder automated policies. Try again." + }, + "addInstanceModal": { + "heading": "Create Instance", + "closeModalLabel": "Close create instance modal", + "creating": "Creating…", + "createInstanceButton": "Create Instance", + "failedToCreate": "We couldn't create the instance. Try again.", + "createdSuccessfully": "Instance was created.", + "unmanagedLabelField": "Label", + "unmanagedLabelPlaceholder": "Legacy Production Instance", + "unmanagedLabelHelp": "A descriptive name to identify this instance", + "unmanagedUrlField": "URL", + "urlPlaceholder": "https://api.example.com/v2", + "unmanagedUrlHelp": "The endpoint where the API can be accessed", + "instanceSection": "Instance", + "environment": "Environment", + "noEnvironments": "No environments available", + "flexGateway": "Omni Gateway", + "instanceUrl": "Instance URL", + "loadingGatewayUrl": "Loading gateway URL…", + "gatewayUrlUnavailable": "Gateway URL unavailable", + "selfManagedHelp": "The selected gateway is self-managed, so we don''t know its URL. You can still define a unique path for this instance.", + "validatingPath": "Validating path…", + "version": "Version", + "noVersions": "No versions available", + "label": "Label", + "targetSection": "Target", + "targetUrl": "Target URL", + "targetUrlHelp": "The URL where the API can be reached. If necessary, you can add authentication as a policy after the instance is created.", + "unmanagedTargetWarning": "The unmanaged target you selected will be removed when the instance is created.", + "validation": { + "labelRequired": "Enter a label.", + "urlRequired": "Enter a URL.", + "invalidUrl": "Enter a valid URL (https://…)", + "selectEnvironment": "Select an environment", + "selectGateway": "Select an Omni Gateway", + "selectVersion": "Select a version", + "targetUrlRequired": "Enter a target URL.", + "pathConflict": "Path conflict detected", + "pathConflictDetail": "This path conflicts with another instance.", + "pathInvalid": "Path may only contain letters, numbers, hyphens, and underscores.", + "versionInvalid": "Version must follow semver format (e.g. 1.0.0)." + }, + "creationPending": "Instance creation is taking longer than expected — still provisioning in the background." + }, + "catalogToolbar": { + "filters": "Filters", + "applyFilters": "Apply Filters", + "sort": "Sort", + "sortBy": "Sort by", + "direction": "Direction", + "ascending": "Ascending", + "descending": "Descending", + "applySort": "Apply Sort", + "visibleColumns": "Visible Columns", + "manageColumnsLabel": "Manage visible columns", + "searchPlaceholder": "Search {entity}…", + "searchAriaLabel": "Search {entity}", + "resultCount": "{filtered} of {total}", + "cardViewLabel": "Card view", + "tableViewLabel": "Table view", + "sortLabels": { + "nameAsc": "Name A–Z", + "nameDesc": "Name Z–A", + "updatedAtDesc": "Most recent", + "updatedAtAsc": "Least recent", + "complianceStatusDesc": "Conformance: high to low", + "complianceStatusAsc": "Conformance: low to high", + "apiCategoryAsc": "Type A–Z", + "apiCategoryDesc": "Type Z–A", + "gatewayModeAsc": "Type A–Z", + "gatewayModeDesc": "Type Z–A", + "statusAsc": "Status A–Z", + "statusDesc": "Status Z–A", + "environmentAsc": "Environment A–Z", + "environmentDesc": "Environment Z–A", + "routingStrategyAsc": "Routing strategy A–Z", + "routingStrategyDesc": "Routing strategy Z–A" + } + }, + "entityCard": { + "lastSynced": "Last synced {time}", + "provisioningFailed": "Provisioning failed", + "complianceStatusLabel": "Compliance status: {status}", + "complianceStatusCompliant": "Conformant", + "complianceStatusNonCompliant": "Non-Conformant", + "complianceStatusPending": "Not Validated" + }, + "filterDropdown": { + "clearAll": "Clear all" + }, + "singleSelectDropdown": { + "searchPlaceholder": "Search…", + "clearSelection": "Clear selection", + "noResults": "No results found" + }, + "apiStep": { + "heading": "Select API", + "selectFromExchange": "Select from Exchange", + "createNewApi": "Create new API", + "searchPlaceholder": "Search APIs…", + "loadingApis": "Loading APIs…", + "noMatchSearch": "No APIs match your search", + "noAssetsFound": "No API assets found in Exchange", + "assetTypePrefix": "Asset type:", + "apiVersionPrefix": "API version:", + "assetVersionPrefix": "Asset version:", + "viewInExchange": "View in Exchange", + "publishNotice": "The API will be published to Exchange in {state} state.", + "nameField": "Name", + "namePlaceholder": "Enter asset name", + "assetType": "Asset type", + "method": "Method", + "specFile": "Spec file", + "chooseFile": "Choose file or drag & drop", + "apiVersionField": "API version", + "serviceUrl": "Service URL" + }, + "configStep": { + "summaryGateway": "Gateway", + "summaryApi": "API", + "selectedApi": "Selected API", + "newApi": "New API", + "downstreamHeading": "Downstream", + "downstreamHelp": "Inbound traffic configuration", + "basePath": "Base Path", + "basePathPlaceholder": "/my-api", + "basePathHelp": "Unique path to expose this API on the gateway. Must start with /.", + "clientProvider": "Client Provider", + "clientProviderHelp": "Automatically derived from the selected gateway environment.", + "instanceLabel": "Instance Label", + "instanceLabelPlaceholder": "e.g. production-v1", + "instanceLabelHelp": "Recommended when managing multiple instances of the same API.", + "upstreamHeading": "Upstream", + "upstreamHelp": "Where traffic is routed", + "upstreamUrl": "Upstream URL", + "upstreamUrlPlaceholder": "https://api.example.com", + "upstreamUrlHelp": "The backend service URL where the gateway forwards requests." + }, + "gatewayStep": { + "heading": "Select Gateway", + "loading": "Loading gateways…", + "empty": "No gateways available", + "emptyHelp": "Create an Omni Gateway first to manage API instances.", + "noTarget": "No target" + }, + "instanceFormWidgets": { + "gatewayStatus": { + "active": "Active", + "degraded": "Degraded", + "error": "Error", + "inactive": "Inactive" + }, + "managedInstance": "Managed Instance", + "managedDescription": "Create a new instance on an Omni Gateway with full support for authentication, monitoring, and policy enforcement.", + "unmanagedTarget": "Unmanaged Target", + "unmanagedDescription": "A basic record of an API endpoint. You can still add management for this endpoint later.", + "instanceBox": "Instance", + "instancePlaceholder": "https://gw-ingress.us-east-1.mulesoft.com/…/my-api/v2", + "proxiesTo": "proxies to", + "targetBox": "Target", + "targetPlaceholder": "https://api.example.com/v2", + "selectPlaceholder": "Select…", + "noItems": "No items available", + "gatewayModeManaged": "Managed", + "gatewayModeSelfManaged": "Self-Managed", + "loadingGateways": "Loading gateways…", + "selectEnvironmentFirst": "Select an environment first", + "selectGateway": "Select a gateway…", + "noGatewaysForEnv": "No gateways available for this environment" + }, + "apiOverview": { + "implicitHeader": { + "bearerAuthorizationDescription": "Bearer token for authentication", + "basicAuthorizationDescription": "Credentials for HTTP Basic authentication", + "contentTypeDescription": "Media type of the request body" + } + }, + "detailOverviewTab": { + "section": { + "skills": "Skills", + "agentConfiguration": "Agent Configuration", + "tools": "Tools", + "resources": "Resources", + "prompts": "Prompts", + "capabilities": "Capabilities", + "configuration": "Configuration", + "endpoints": "Endpoints", + "apiDetails": "API Details", + "collections": "Collections", + "usage": "Usage", + "ingress": "Ingress", + "connectedAssets": "Connected Assets", + "general": "General", + "details": "{label} Details" + }, + "badge": { + "streaming": "Streaming", + "pushNotifications": "Push Notifications", + "stateHistory": "State History", + "fineTuned": "Fine-tuned", + "documented": "Documented", + "deprecated": "deprecated", + "lastMileSecurity": "Last-Mile Security", + "forwardSslSession": "Forward SSL Session", + "auth": "Auth: {scheme}", + "authorization": "Authorization: {label}", + "typePrefix": "Type: {label}", + "versionPrefix": "Version: {version}", + "rpm": "{value} rpm" + }, + "field": { + "guardrails": "Controls", + "maxTurns": "Max Turns", + "systemPrompt": "System Prompt", + "modalities": "Modalities", + "maxOutputTokens": "Max Output Tokens", + "benchmarkScore": "Benchmark Score", + "supportedParameters": "Supported Parameters", + "inputSchema": "Input Schema", + "outputSchema": "Output Schema", + "schema": "Schema", + "timeout": "Timeout", + "retryPolicy": "Retry Policy", + "environmentVariables": "Environment Variables", + "categories": "Categories", + "owner": "Owner", + "businessGroup": "Business Group", + "id": "ID", + "created": "Created", + "lastUpdated": "Last Updated", + "tags": "Tags", + "publicUrl": "Public URL", + "internalUrl": "Internal URL", + "upstreamResponseTimeout": "Upstream Response Timeout", + "connectionIdleTimeout": "Connection Idle Timeout", + "logLevel": "Log Level", + "logForwarding": "Log Forwarding", + "tracing": "Tracing", + "sampling": "Sampling", + "port": "Port", + "protocol": "Protocol" + }, + "table": { + "method": "Method", + "path": "Path", + "summary": "Summary" + }, + "kpi": { + "connectedApis": "Connected APIs", + "apiCallsMonth": "API Calls (Month)", + "dataConsumedMonth": "Data Consumed (Month)", + "apiCapacity": "API Capacity" + }, + "enabled": "Enabled", + "disabled": "Disabled", + "moreCount": "+{count} more", + "instanceCount": "{count} {count, plural, one {instance} other {instances}}", + "docsCount": "{count} docs" + }, + "snippetTab": { + "language": "JavaScript", + "notAvailable": "Consumer snippet not available for this entity type.", + "copied": "Copied!", + "copy": "Copy" + }, + "instancesTab": { + "loadingInstances": "Loading instances…", + "noInstances": "No instances configured for this {entity}.", + "createInstance": "Create Instance", + "summary": "Summary", + "pipeline": "Pipeline", + "deleteInstanceTitle": "Delete instance?", + "deleteExternalMessage": "Deleting {label} is permanent and can't be undone.", + "deleteManagedMessage": "Deleting {label} removes it from the Omni Gateway where it's deployed.", + "deleteUnmanagedMessage": "Deleting {label} is permanent and can't be undone.", + "confirmDelete": "Delete", + "confirmDeleteUnmanaged": "Delete instance", + "deleting": "Deleting…", + "cancelDelete": "Cancel", + "noMatchingFilters": "No instances match the selected filters.", + "allEnvironments": "All Environments", + "unknownEnvironment": "Unknown", + "environmentWithType": "{label} ({type})", + "noInstancesMatchFilters": "No instances match the selected filters." + }, + "monitoringTab": { + "noMonitoring": "No monitoring available for this entity type.", + "gatewayLevelTitle": "Gateway-level metrics not available", + "gatewayLevelDescription": "Monitoring is reported per service. Open a service or instance using this gateway to see its metrics." + }, + "mcpSchemaTree": { + "nestingTooDeep": "Schema nesting is too deep to display here.", + "noProperties": "No properties.", + "arrayItemNotSpecified": "Array item type not specified.", + "inputSchemaRegion": "Input schema structure", + "tooDeep": "Schema nesting is too deep to display here.", + "inputSchemaAriaLabel": "Input schema structure" + }, + "llmProxyOverview": { + "configuration": "Configuration", + "basePath": "Base Path", + "environment": "Environment", + "gateway": "Gateway", + "consumerEndpoint": "Consumer Endpoint", + "port": "Port", + "routes": "Routes", + "cancel": "Cancel", + "saving": "Saving…", + "saveChanges": "Save Changes", + "editConfiguration": "Edit Configuration", + "routingStrategy": "Routing strategy", + "semanticService": "Semantic service", + "configuredRoutes": "Configured routes", + "target": "Target:", + "provider": "Provider", + "model": "Model", + "notApplicable": "N/A", + "authentication": "Authentication", + "topics": "Topics", + "promptTopics": "Prompt Topics", + "configurationTitle": "Configuration", + "routesHeading": "Routes", + "cancelButton": "Cancel", + "savingButton": "Saving…", + "saveChangesButton": "Save Changes", + "editConfigurationButton": "Edit Configuration", + "routeFallbackName": "Route {letter}", + "targetHeading": "Target:", + "notApplicableShort": "N/A", + "authenticationHeading": "Authentication", + "topicsHeading": "Topics", + "maskedValue": "••••••••••••••••" + }, + "connectionsEndpointTab": { + "copied": "Copied!", + "copy": "Copy", + "endpoints": "Endpoints", + "noEndpoints": "No endpoints configured for this {entity}.", + "endpointsHint": "Endpoints are configured when the asset is deployed or registered with an API endpoint.", + "typeIngress": "Ingress", + "typeEgress": "Egress", + "typeConsumer": "Consumer", + "typeManagement": "Management" + }, + "connectedAssetsSection": { + "heading": "Connected Assets", + "failedToLoad": "We couldn't load connected assets. Try again.", + "noConnectedAssets": "No connected assets declared for this broker.", + "moreCount": "+{count} more", + "hiddenMore": "+{count} more" + }, + "capabilitySections": { + "agentCard": "Agent card", + "url": "URL", + "urlCopied": "URL copied to clipboard", + "copyUrl": "Copy URL", + "protocolVersion": "Protocol version", + "protocol": "Protocol", + "tags": "Tags", + "capabilities": "Capabilities", + "streaming": "Streaming:", + "pushNotifications": "Push notifications:", + "stateTransitionHistory": "State transition history:", + "skills": "Skills", + "details": "Details", + "inputModes": "Input Modes", + "outputModes": "Output Modes", + "examples": "Examples", + "mcpDetails": "Details", + "transport": "Transport", + "transportKind": "Kind:", + "transportPath": "Path:", + "mcpCapabilities": "Capabilities", + "tools": "Tools", + "toolsLabel": "Tools:", + "resources": "Resources:", + "prompts": "Prompts:", + "logging": "Logging:", + "inputSchema": "Input schema", + "apiEndpoints": "Endpoints", + "apiDetails": "API Details", + "categories": "Categories", + "schema": "Schema", + "dismissNotification": "Dismiss notification", + "urlCopiedToast": "URL copied to clipboard", + "agentCardSection": "Agent card", + "urlField": "URL", + "copyUrlAriaLabel": "Copy URL", + "tagsHeading": "Tags", + "capabilitiesHeading": "Capabilities", + "agentCapabilitiesAriaLabel": "Agent capabilities", + "skillsSection": "Skills", + "toolsSection": "Tools", + "mcpDetailsSection": "Details", + "mcpCapabilitiesAriaLabel": "MCP server capabilities", + "mcpTools": "Tools:", + "mcpResources": "Resources:", + "mcpPrompts": "Prompts:", + "mcpLogging": "Logging:", + "yes": "Yes", + "no": "No", + "inputSchemaLabel": "Input schema", + "structuredInputSchemaAriaLabel": "Structured input schema for {name}", + "securityUnknown": "Unknown", + "endpointsSection": "Endpoints", + "authorization": "Authorization: {scheme}", + "rateLimitRpm": "{count} rpm", + "columnMethod": "Method", + "columnPath": "Path", + "columnSummary": "Summary", + "deprecatedBadge": "deprecated", + "apiDetailsSection": "API Details", + "documentedBadge": "Documented", + "instanceCountBadge": "{count, plural, one {# instance} other {# instances}}", + "categoriesHeading": "Categories", + "schemaHeading": "Schema", + "typeBadge": "Type: {type}", + "versionBadge": "Version: {version}" + }, + "governanceTab": { + "loadingReportDetails": "Loading report details…", + "loadingPolicies": "Loading policies…", + "noAppliedPolicies": "No applied policies for this instance.", + "noActivePolicies": "No active policies on this entity.", + "noMatchingPolicies": "No policies match the current filters.", + "noPoliciesAvailable": "No policies available for the current instance.", + "policies": "Policies", + "byDomain": "By Domain", + "byApplicationMethod": "By Application Method", + "reorderInstancePolicies": "Reorder Instance Policies", + "applyPolicy": "Apply Policy", + "policyReorderComingSoon": "Policy reordering is coming soon.", + "missingRouteContext": "Missing route context for policy selection.", + "errors": "Errors", + "warnings": "Warnings", + "automatedPolicies": "Automated Policies", + "instancePolicies": "Instance Policies", + "custom": "Custom", + "global": "Global", + "upstream": "Upstream: {name}", + "enabled": "Enabled", + "applied": "Applied", + "available": "Available", + "disabled": "Disabled", + "applying": "Applying…", + "applyBtn": "Apply", + "viewAllPolicies": "View all policies", + "clearFilters": "Clear filters", + "allDirections": "All directions ({count})", + "inbound": "Inbound ({count})", + "outbound": "Outbound ({count})", + "active": "Active ({count})", + "recommended": "Recommended", + "noGovernanceReportAvailable": "No governance report available.", + "noGovernanceReportForEntityType": "Governance reports are not available for this entity type." + }, + "governanceReportTab": { + "notValidatedTitle": "No governance rules applied", + "notValidatedDescription": "No governance rules apply to this service. Add a governance strategy to start enforcing standards.", + "loadingConformance": "Loading conformance report…", + "noGovernanceReport": "No governance report available for this API.", + "reportDetails": "Report Details", + "noMatchingRules": "No matching rules found.", + "resetFilters": "Reset Filters", + "refreshDebounced": "Refresh already requested. Wait a few seconds and try again.", + "refreshQueued": "Refresh queued. The report will update shortly.", + "refreshFailed": "We couldn't trigger a refresh. Try again.", + "refresh": "Refresh", + "refreshing": "Refreshing…", + "kpi": { + "instances": "Instances", + "viewInstances": "View instances", + "violations": "{count, plural, one {violation} other {violations}}", + "warnings": "{count, plural, one {warning} other {warnings}}", + "info": "Info", + "envFragmentUnknown": "{count} unknown", + "envFragmentNamed": "{count} {env}", + "inEnvInstances": "In {fragments} instances", + "noAffectedInstances": "No affected instances", + "noSecondarySeverityRules": "No warning and info level rules applied", + "designTime": "Design Time", + "noDesignTimeRules": "No rules applied to design time", + "noWarningRules": "No warning level rules applied", + "noInfoRules": "No info level rules applied", + "notValidated": "Not Validated", + "noDesignTimeRulesShort": "No rules applied" + }, + "results": { + "issuesFromRules": "{issueCount, plural, one {# issue} other {# issues}} from {ruleCount, plural, one {# rule} other {# rules}}", + "issuesFromRulesets": "{issueCount, plural, one {# issue} other {# issues}} from {rulesetCount, plural, one {# ruleset} other {# rulesets}}", + "groupByRuleset": "Group By Ruleset", + "expandAll": "Expand All", + "collapseAll": "Collapse All", + "noOccurrencesToDisplay": "No occurrences to display.", + "ruleSectionLabel": "Rule", + "originRulesetSectionLabel": "Origin Ruleset", + "ruleDetailsAria": "Rule details for {name}", + "rulesetDetailsAria": "Ruleset details for {name}", + "fixPolicy": "Fix Policy", + "noDetailsAvailable": "No details available.", + "uncategorizedRuleset": "Uncategorized", + "aspectInstances": "Instances", + "aspectSpecificationFallback": "Specification" + }, + "instanceChecks": { + "noViolationsForInstance": "No policy violations recorded for this instance.", + "severityLevels": "Severity Levels", + "domains": "Domains", + "filterAll": "All", + "severityViolation": "Violation", + "severityWarning": "Warning", + "severityInfo": "Info" + }, + "goToGovernanceStrategies": "Go to Governance Strategies", + "pendingEvaluationTitle": "Evaluating governance rules…", + "pendingEvaluationDescription": "This service hasn't been evaluated yet. Results will appear shortly." + }, + "governanceReportControls": { + "latest": "(Latest)", + "freshnessBanner": "Refreshing the governance report. You're viewing the latest available snapshot.", + "refreshReport": "Refresh report", + "refreshing": "Refreshing…", + "allDomains": "All Domains" + }, + "addVersionModal": { + "heading": "Add a new version", + "closeDialog": "Close add version dialog", + "publishingStatus": "Publishing version…", + "waitingDeployment": "Waiting for deployment to complete", + "publishingButton": "Publishing…", + "publish": "Publish", + "noFileChosen": "No file chosen", + "chooseFile": "Choose file", + "fieldName": "Name", + "fieldAssetType": "Asset type", + "fieldMethod": "Method", + "fieldFileUpload": "File upload", + "fieldServiceUrl": "Service URL", + "fieldGroupId": "GroupId", + "fieldAssetId": "AssetId", + "fieldVersion": "Version", + "versionPlaceholder": "e.g. 2.0.1", + "versionHintPrefix": "Version should use the", + "versionHintLink": "SemVer", + "versionHintSuffix": "format. Examples: 1.0.0 or 2.1.3", + "fieldApiVersion": "API version", + "apiVersionPlaceholder": "e.g. v2", + "fieldLifecycleState": "Lifecycle state", + "lifecycleStable": "Stable", + "lifecycleStableDesc": "Released and ready to consume", + "lifecycleDevelopment": "Development", + "lifecycleDevelopmentDesc": "In process of design and development", + "failedToAddVersion": "We couldn't add the version. Try again.", + "publicationStatusError": "The version was created but may not be fully available. Refresh the page to check its status.", + "validationRequired": "Required", + "validationEnterValidUrl": "Enter a valid URL", + "validationSemverFormat": "Use SemVer format (e.g. 1.0.0 or 2.1.3)" + }, + "instancesSummaryView": { + "managedInstances": "Managed Instances ({count})", + "unmanagedTargets": "Unmanaged Targets ({count})", + "unmanaged": "Unmanaged ({count})", + "column": { + "id": "ID", + "label": "Label", + "gateway": "Gateway", + "status": "Status", + "environment": "Env Type", + "version": "Version", + "policies": "Policies", + "clients": "Clients", + "requests7d": "Requests (7d)", + "updated": "Updated", + "url": "URL" + }, + "actions": "Actions", + "exposeAsMcpServer": "Expose as MCP Server", + "manage": "Manage", + "managedTooltipBeforeFlex": "Instances from ", + "managedTooltipFlexStrong": "Flex gateways", + "managedTooltipBetween": " have full read/write support for data and governance. For instances from ", + "managedTooltipFederatedStrong": "federated gateways", + "managedTooltipAfterFederated": ", support depends on gateway settings.", + "managedTooltipAria": "Instances from Flex gateways have full read/write support for data and governance. For instances from federated gateways, support depends on gateway settings.", + "unmanagedTargetsTooltip": "External endpoints registered in Exchange without a managed gateway.", + "unmanagedTooltip": "These endpoints have no known gateways and are not shown elsewhere. Manage them to add support for authentication, monitoring, and governance.", + "viewGatewayTitle": "View {name} gateway" + }, + "instancesPipelineView": { + "noInstances": "No instances available for the selected filters.", + "version": "Version", + "unknown": "Unknown", + "unmanagedNotShown": "{count, plural, one {# unmanaged instance is} other {# unmanaged instances are}} not shown.", + "noInstancesFiltered": "No instances available for the selected filters.", + "versionColumn": "Version", + "unknownColumn": "Unknown" + }, + "instancesNonApiTables": { + "noMatchFilters": "No instances match the selected filters.", + "flexGateway": "Omni Gateway ({count})", + "flexTooltip": "These instances are protected by an Anypoint Omni Gateway.", + "externalGateway": "External Gateway ({count})", + "externalTooltip": "These instances are protected by a non-MuleSoft gateway. Runtime data is not available.", + "unmanagedTitle": "Unmanaged", + "unmanagedTooltip": "These instances have no known gateway. For unmanaged instances, only a label and URL are known.", + "column": { + "id": "ID", + "label": "Label", + "status": "Status", + "environment": "Environment", + "version": "Version", + "gateway": "Gateway", + "clients": "Clients", + "compliance": "Compliance", + "updated": "Updated", + "url": "URL" + }, + "compliant": "Compliant", + "nonCompliant": "Non-compliant", + "pending": "Pending" + }, + "entityMonitoring": { + "qualityOfService": "Quality of Service", + "loadingMonitoring": "Loading monitoring data…", + "noInstancesMatch": "No instances match the selected filters. Try adjusting the version or environment.", + "failedToLoad": "We couldn't load monitoring data. Try again.", + "traffic": "Traffic", + "metricLabel": { + "totalRequests": "Total Requests", + "errorRate": "Error Rate", + "avgLatency": "Average Latency", + "policyViolations": "Policy Violations" + }, + "metricSubtitle": { + "requestVolume": "Request volume", + "failurePercentage": "Failure percentage", + "avgResponseTime": "Average response time", + "violatingRequests": "Estimated violating requests" + }, + "noInstancesMatchTitle": "No instances match", + "noMonitoringDataTitle": "No monitoring data", + "noMonitoringDataDescription": "Monitoring data is available once this service has at least one active instance.", + "trafficEmptyDescription": "Traffic breakdown is not available for this service. Data appears once requests are tracked." + }, + "llmMonitoring": { + "heading": "LLM Monitoring", + "loadingMonitoring": "Loading…", + "failedToLoad": "We couldn't load monitoring data. Try again.", + "noData": "No monitoring data available for this LLM and time range.", + "costManagement": "Cost Management", + "totalTokens": "Total Tokens", + "inputTokens": "Input Tokens", + "outputTokens": "Output Tokens", + "topClientApplications": "Top Client Applications by Tokens", + "client": "Client", + "tokens": "Tokens", + "requests": "Requests", + "noClientData": "No client data available.", + "topModelProviders": "Top Model Providers by Tokens", + "noProviderData": "No provider data available.", + "totalTokensLabel": "Total Tokens", + "tokenDistribution": "Token Distribution by Model", + "noModelData": "No model data available.", + "compliance": "Compliance", + "policyViolations": "Policy Violations", + "filterByPolicy": "Filter by Policy", + "noPolicyViolationData": "No policy violation data available.", + "qualityOfService": "Quality of Service", + "totalErrors": "Total Errors", + "filterByError": "Filter by Error", + "noErrorData": "No error data available.", + "totalFallbacks": "Total Fallbacks", + "fallbackSubtitle": "Fallback routing invocations", + "columnClient": "Client", + "columnTokens": "Tokens", + "columnRequests": "Requests", + "totalTokensFooter": "Total Tokens", + "tokenDistributionByModel": "Token Distribution by Model", + "noViolationsTitle": "No policy violations to report", + "noViolationsDescription": "No policies are applied to this proxy. Apply policies to secure this proxy and enable compliance monitoring." + }, + "vectorDbMonitoring": { + "heading": "Vector DB Monitoring", + "queryLatency": "Query Latency", + "queryLatencySub": "Average query response time", + "queriesPerSecond": "Queries Per Second", + "queriesPerSecondSub": "Query throughput", + "indexSizeGrowth": "Index Size Growth", + "indexSizeGrowthSub": "Total indexed vectors", + "collectionDistribution": "Collection Distribution", + "collectionDistributionSub": "Vectors per collection", + "metricLabel": { + "queryLatency": "Query Latency", + "queriesPerSecond": "Queries Per Second", + "indexSize": "Index Size" + } + }, + "functionMonitoring": { + "heading": "Function Monitoring", + "executionTime": "Execution Time", + "executionTimeSub": "Average execution duration", + "invocations": "Invocations", + "invocationsSub": "Hourly request volume", + "memoryUsage": "Memory Usage", + "memoryUsageSub": "Memory consumption", + "coldStartRate": "Cold Start Rate", + "coldStartRateSub": "Cold start percentage" + }, + "monitoringReport": { + "performanceSummary": "Performance Summary", + "noData": "No data", + "minMaxLine": "Min: {min} / Max: {max}" + }, + "multiInstanceChartGrid": { + "aggregate": "Aggregate", + "allVersions": "All Versions", + "allEnvironments": "All Environments", + "noData": "No data for selected range" + }, + "gatewayMetadataBar": { + "currentVersion": "(Current)", + "updated": "Updated", + "currentParen": "(Current)", + "type": "Type", + "environment": "Environment", + "version": "Version" + }, + "gatewayHeaderActions": { + "viewFullGatewayDetails": "View Full Gateway Details", + "gatewaySubtitle": "Gateway", + "edit": "Edit", + "delete": "Delete", + "viewFullDetails": "View Full Gateway Details" + }, + "detailHero": { + "exposeAsMcpServer": "Expose as MCP Server", + "viewConformanceReport": "View {status} conformance report", + "meta": { + "provider": "Provider", + "protocol": "Protocol", + "instances": "Instances", + "versions": "Versions", + "tools": "Tools", + "family": "Family", + "category": "Category", + "runtime": "Runtime", + "trigger": "Trigger", + "apiType": "API Type", + "routingStrategy": "Routing Strategy", + "dimensions": "Dimensions", + "mode": "Mode", + "size": "Size", + "target": "Target", + "updated": "Updated", + "status": "Status" + }, + "gatewayMode": { + "selfManaged": "Self Managed", + "managed": "Managed" + }, + "actionsMenuAriaLabel": "Entity actions", + "editButton": "Edit", + "complianceStatusText": "Compliance status", + "actionsAriaLabel": "Actions", + "loadingValue": "Loading {name}…", + "exposeAsMcpServerDisabledTooltip": "This API only has a Mocking Service instance. Deploy a real (managed or self-managed) instance before exposing it as an MCP server.", + "provisioningFailedTooltip": "Provisioning failed", + "provisioningFailedBanner": "Provisioning couldn't complete. Click Retry to resume from where it left off.", + "retryButton": "Retry", + "retryingStatus": "Retrying…", + "retryTimedOut": "Retry timed out — the pipeline may still be running in the background." + }, + "entityDetailPage": { + "tabConformanceReport": "Conformance", + "tabApis": "APIs", + "tabReplicas": "Replicas", + "tabLogs": "Logs", + "tabConfiguration": "Configuration", + "loadingTabContent": "Loading tab content…", + "failedToDeleteAsset": "We couldn't delete the asset. Try again.", + "deleteMcpSuccess": "MCP server deleted", + "deleteMcpFailure": "Failed to delete MCP server: {message}", + "entityLabel": { + "agent": "Agent", + "mcpServer": "MCP Server", + "api": "API" + }, + "loadingDetailsAnnouncement": "Loading {label} details…" + }, + "apiInstanceSelectorCard": { + "environment": "Environment", + "instance": "Instance" + }, + "apiInstancesCard": { + "title": "API Instances", + "description": "Select an instance to scope governance policies.", + "instanceCount": "{count} {count, plural, one {instance} other {instances}}" + }, + "apiMetadataBarSimple": { + "provider": "Provider", + "specType": "Spec Type", + "category": "Category", + "instances": "Instances", + "versions": "Versions", + "updated": "Updated", + "viewProviderTitle": "View {provider} provider", + "loadingVersionsAriaLabel": "Loading Versions" + }, + "apiVersionMetadataBar": { + "provider": "Provider", + "apiVersion": "API Version", + "current": "Current", + "versionHistory": "Version History", + "releaseDate": "Release date: {date}", + "updated": "Updated" + }, + "publishAdvancedSection": { + "advancedToggle": "Advanced", + "groupIdAriaLabel": "GroupId", + "groupIdPlaceholder": "Sign in to see organization", + "assetIdAriaLabel": "AssetId", + "versionAriaLabel": "Version" + }, + "publishApiAssetForm": { + "heading": "Publish a new API", + "namePlaceholder": "Enter asset name", + "nameAriaLabel": "Name", + "assetTypesAriaLabel": "Asset types", + "mainFileAriaLabel": "Main file", + "mainFilePlaceholder": "Select a main file", + "apiVersionAriaLabel": "API version", + "publishingApi": "Publishing API…", + "waitingDeployment": "Waiting for deployment to complete", + "signInRequired": "Sign in or select an organization to publish" + }, + "publishAssetForm": { + "nameAriaLabel": "Name" + }, + "registryBrowser": { + "searchPlaceholder": "Search entities…" + }, + "scannerSetup": { + "namePlaceholder": "e.g., Production Vertex Scanner", + "descriptionPlaceholder": "Describe what this scanner monitors…", + "emailPlaceholder": "user@example.com, team@example.com", + "slackPlaceholder": "https://hooks.slack.com/services/…", + "filterValuesPlaceholder": "Values…" + }, + "assetActionErrorModal": { + "closeAriaLabel": "Close asset action error dialog", + "createAgent": "Create Agent Failed", + "createMcp": "Create MCP Server Failed", + "createApi": "Create API Failed", + "deleteAgent": "Delete Agent Failed", + "deleteMcp": "Delete MCP Server Failed", + "deleteApi": "Delete API Failed" + }, + "sharedCommandPalette": { + "closeAriaLabel": "Close command palette", + "searchPlaceholder": "Search services and pages…", + "noResults": "No results for “{query}”", + "searching": "Searching…", + "recents": "Recents", + "quickNavigation": "Quick Navigation", + "clearRecents": "Clear recents" + }, + "confirmDialog": { + "closeAriaLabel": "Close confirmation dialog" + }, + "deleteAssetVersionDialog": { + "closeAriaLabel": "Close delete asset dialog", + "titleWithEntity": "Delete {entityLabel}", + "titleDefault": "Delete asset version", + "confirmMessage": "Are you sure you want to delete {assetName} {version}?", + "warningRemoveAsset": "Deleting this will remove the asset, its details page, and metadata from the catalog. This action cannot be undone.", + "warningGavReusable": "The asset in development will be deleted. Its GAV (group ID, asset ID, and version) will be reusable.", + "warningLabel": "Warning:", + "gavReusableCheckbox": "Allow the GAV (group ID, asset ID, and version) to be reusable.", + "cancelButton": "Cancel", + "deletingButton": "Deleting…", + "deleteButton": "Delete", + "deleteButtonWithEntity": "Delete {entityLabel}" + }, + "deleteScannerModal": { + "closeAriaLabel": "Close dialog", + "title": "Delete Scanner", + "confirmPrompt": "Are you sure you want to delete", + "warningBody": "Deleting this scanner will permanently remove it from your account. Services and Instances discovered by this scanner will remain in your portfolio.", + "confirmButton": "Delete Scanner", + "cancelButton": "Cancel" + }, + "scannerActionsMenu": { + "runDiscoveryScan": "Run Discovery Scan", + "viewScanner": "View Scanner", + "resumeScheduledRuns": "Resume Scheduled Runs", + "pauseScheduledRuns": "Pause Scheduled Runs", + "scannerSettings": "Scanner Settings", + "deleteScanner": "Delete Scanner" + }, + "dynamicCredentialsForm": { + "selectPlaceholder": "Select {field}", + "noAuthConfig": "No authentication configuration available for this provider.", + "showPassword": "Show password", + "hidePassword": "Hide password" + }, + "importRulesBuilder": { + "valuePlaceholder": "Value", + "removeRuleAriaLabel": "Remove rule", + "importModeLabel": "Import Mode", + "allAgents": "All Agents", + "addFilteringRules": "Add filtering rules", + "includeRules": "Include Rules", + "addIncludeRule": "Add Include Rule", + "excludeRules": "Exclude Rules", + "addExcludeRule": "Add Exclude Rule", + "noIncludeRules": "No include rules — all agents will be included.", + "noExcludeRules": "No exclude rules — nothing will be excluded.", + "match": "Match", + "any": "Any", + "all": "All", + "matchLabel": "Match", + "matchAny": "Any", + "matchAll": "All" + }, + "instanceContextMenu": { + "rowActionsAriaLabel": "Row actions", + "exposeAsMcp": "Expose as MCP Server" + }, + "tour": { + "skipAriaLabel": "Skip tour and close dialog", + "progressAriaLabel": "Tour progress", + "previousAriaLabel": "Go to previous tour step", + "nextAriaLabel": "Go to next tour step", + "finishAriaLabel": "Finish tour", + "backButton": "Back", + "nextButton": "Next", + "finishButton": "Finish", + "srAnnouncement": "UI tour started. Step {step} of {total}. Press Escape to close.", + "announce": "UI tour started. Step {step} of {total}. Press Escape to close." + }, + "welcomeInterstitial": { + "closeAriaLabel": "Close welcome dialog", + "dialogStatus": "Welcome to the enhanced MuleSoft experience dialog opened. Press Escape to close.", + "title": "Welcome to the Enhanced MuleSoft Experience", + "description": "The enhanced MuleSoft experience extends Anypoint Platform with a purpose-built layer for the multi-agent world. While Anypoint Platform continues to power your API and integration authoring, the enhanced MuleSoft experience is where your agent operations live. With the enhanced MuleSoft experience, you can:", + "startButton": "Start exploring" + }, + "searchableCombobox": { + "placeholder": "Select or type to search…", + "noMatches": "No matches found" + }, + "businessGroupSelector": { + "selectorAriaLabel": "Business group selector", + "loading": "Loading…" + }, + "breadcrumb": { + "navAriaLabel": "Breadcrumb" + }, + "avatar": { + "userMenuAriaLabel": "User menu", + "signOut": "Sign out" + }, + "mulesoftLogo": { + "logoAriaLabel": "MuleSoft logo", + "wordmarkAriaLabel": "MuleSoft" + }, + "chatPanel": { + "errorHeading": "Something went wrong", + "errorRetryHint": "Try sending your message again.", + "sendMessage": "Send message", + "disclaimer": "Omni can make mistakes. Verify important information.", + "riskLevel": "Risk: {level}", + "confirmationRequired": " - confirmation required", + "confirmMonitoringCard": "Insert the proposed monitoring card?", + "btnInsertCard": "Insert card", + "confirmScannerRun": "Run this scanner now?", + "btnRunScanner": "Run scanner", + "confirmScannerDelete": "Delete this scanner?", + "btnDeleteScanner": "Delete scanner", + "confirmScannerPatch": "Apply the proposed scanner form changes?", + "btnApplyScannerChanges": "Apply scanner changes", + "confirmNotificationCreate": "Create this notification now?", + "btnCreateNotification": "Create notification", + "confirmNotificationDelete": "Delete this notification?", + "btnDeleteNotification": "Delete notification", + "confirmNav": "Navigate to {target}?", + "confirmBg": "Set active business group to {target}?", + "btnSetBusinessGroup": "Set business group", + "btnGoThere": "Go there", + "confirmPolicyPatch": "Try the proposed policy fix in the form?", + "confirmGatewayPatch": "Try the proposed gateway fix in the form?", + "btnApplyProposedChanges": "Apply proposed changes", + "approvalGate": { + "heading": "Confirmation required", + "redactionHint": "Credentials are not shown — they were redacted before this card was rendered.", + "btnApprove": "Approve", + "btnReject": "Reject", + "decisionApproved": "Approved", + "decisionRejected": "Rejected" + }, + "aiFeaturesNotEnabled": "Looks like AI features aren't turned on for your organization. Ask your administrator to turn on AI features in the connected Anypoint Platform and Salesforce orgs. After AI features are turned on, try again.", + "aiFeaturesNoPermission": "Looks like you don't have permission to use Ask MuleSoft in this business group. Ask your organization admin to assign you the Mule Developer Generative AI User permission, then try again.", + "aiFeaturesLearnMore": "Learn more", + "working": "Working…" + }, + "omniCommandPalette": { + "closeAriaLabel": "Close Omni command palette", + "recent": "Recent", + "hintClose": "to close", + "hintSubmit": "to submit" + }, + "omniCanvas": { + "backLabel": "Back", + "title": "Ask MuleSoft", + "minimizeToSidebar": "Minimize to sidebar" + }, + "omniFloatingButton": { + "ariaLabel": "Ask MuleSoft", + "tooltip": "Ask MuleSoft" + }, + "historyPopover": { + "noConversations": "No conversations yet", + "deleteConversation": "Delete conversation", + "clearHistory": "Clear history" + }, + "historySidebar": { + "expandSidebar": "Expand sidebar", + "history": "History", + "collapseSidebar": "Collapse sidebar", + "newChat": "New chat", + "openConversation": "Open conversation {title}", + "noConversations": "No conversations yet", + "deleteConversation": "Delete conversation", + "clearHistory": "Clear history" + }, + "mcpAppBubble": { + "completed": "Completed", + "interactionCompleted": "Interaction completed", + "waitingForAgent": "Waiting for agent…" + }, + "welcomeState": { + "heading": "What can I help with?", + "subtitle": "Your agents, compliance, costs, and infrastructure — all in one place", + "discoverMore": "Discover More" + }, + "artifactPanel": { + "title": "Artifacts" + }, + "instanceStatsTable": { + "searchPlaceholder": "Search MCP instances…", + "searchAriaLabel": "Search MCP instances", + "resultCount": "{filtered} of {total}", + "filters": "Filters", + "filterAssetType": "Asset Type", + "assetTypeMcpServer": "MCP Server", + "filterEnvironment": "Environment", + "filterProvider": "Provider", + "providerEmpty": "No providers available yet", + "filterOptimizationCoverage": "Optimization Coverage", + "filterOptimized": "Optimized", + "filterNotOptimized": "Not optimized", + "applyFilters": "Apply Filters", + "headerInstance": "Service & instance", + "headerTokensPerCall": "Tokens / call", + "headerTotalTokens": "Total tokens", + "totalTokensInfoAriaLabel": "Token count information", + "totalTokensTooltip": "Estimated token count for this instance. The value in parentheses shows the share of total MCP server tokens consumed over the last 30 days.", + "headerTokensSaved": "Tokens saved", + "headerOptimized": "Optimized", + "headerActions": "Actions", + "emptyState": "No instances match your search or filters.", + "paginationShowing": "{start}–{end} of {total}", + "previousPage": "Previous page", + "nextPage": "Next page", + "sectionHeading": "MCP Server Instances", + "policiesCount": "{applied}/{total} Policies", + "optimize": "Optimize…", + "clearAll": "Clear all", + "bannerContent": "Banner Content", + "actions": "Actions", + "tokenSharePercent": "({share}%)" + }, + "instanceTokenCards": { + "recommendedOptimizations": "Recommended Optimizations", + "seeAllInstances": "See all instances", + "dismissRecommendations": "Dismiss recommendations", + "largeToolDescriptions": "Large tool descriptions detected", + "largeToolResponses": "Large tool responses detected", + "potentialSavings": "Potential Savings", + "savingsTooltip": "Projects best-case token savings from all unapplied optimization policies. Keep corresponding Exchange assets current to maintain projection accuracy.", + "savingsUnavailable": "Savings estimate unavailable", + "tokensPerTimeframe": "tokens / {timeframe}", + "optimizeThisInstance": "Optimize This Instance", + "skipForNow": "Skip for now", + "largeToolDescriptionsDetected": "Large tool descriptions detected", + "largeToolResponsesDetected": "Large tool responses detected", + "potentialSavingsTooltip": "Projects best-case token savings from all unapplied optimization policies. Keep corresponding Exchange assets current to maintain projection accuracy.", + "savingsEstimateUnavailable": "Savings estimate unavailable", + "savingsPercent": "({percent}%)" + }, + "tokenResponseTimeChart": { + "estWithoutOptimization": "Est. Without Optimization", + "tokensUsed": "Tokens Used", + "avgResponseTime": "Avg Response Time" + }, + "observabilityFilterBar": { + "type": "Type", + "service": "Service", + "instance": "Instance", + "environment": "Environment", + "provider": "Provider" + }, + "editNotificationModal": { + "closeModal": "Close window", + "heading": "Edit Notification", + "alertMetric": "Alert Metric", + "alertName": "Alert Name", + "alertSeverity": "Alert Severity", + "environment": "Environment", + "loadingEnvironments": "Loading environments…", + "noEnvironments": "No environments available", + "production": "(Production)", + "service": "Service", + "alertCondition": "Alert Condition", + "metric": "Metric", + "policyViolation": "Policy Violation", + "logicPolicy": "Logic / Policy", + "allPolicies": "All Policies", + "noPoliciesAvailable": "No policies available for this API instance.", + "rateLimiting": "Rate Limiting", + "spikeControl": "Spike Control", + "clientIdEnforcement": "Client ID Enforcement", + "ipWhitelist": "IP Whitelist", + "ipBlacklist": "IP Blacklist", + "whenPolicyViolationIs": "When Policy Violation Is", + "forAtLeast": "For at least", + "minutes": "minutes.", + "responseCodes": "Response Codes", + "logicResponseCodes": "Logic / Response Codes", + "selectResponseCodes": "Select response codes", + "manualCodesHint": "You can also enter codes manually", + "whenOccurrencesAre": "When Number of Occurrences Are", + "alertWhen": "Alert when", + "is": "is", + "for": "for", + "eventBasedAlert": "Event-based alert", + "deliverTo": "Deliver to", + "email": "Email", + "recipients": "Recipients", + "recipientSearchPlaceholder": "Search by name or type emails (comma-separated)…", + "noUsersFound": "No users found matching \"{query}\"", + "subject": "Subject", + "subjectVariablesHint": "Variables: $'{'severity'}', $'{'api'}', $'{'condition'}', $'{'environment'}'", + "message": "Message", + "messageVariablesHint": "Variables: $'{'resource'}', $'{'condition'}', $'{'value'}', $'{'timestamp'}', $'{'operator'}', $'{'threshold'}', $'{'period'}', $'{'environment'}', $'{'dashboardLink'}', $'{'alertLink'}'", + "slack": "Slack", + "loadingChannels": "Loading channels…", + "noChannels": "No channels available", + "channelsGroupLabel": "Channels", + "appsGroupLabel": "Apps", + "successMessage": "Notification was updated.", + "saving": "Saving…", + "failedToUpdate": "We couldn't update the notification. Try again.", + "defaultEmailSubject": "$'{'severity'}': $'{'api'}' $'{'condition'}'", + "defaultEmailMessage": "Notification triggered for $'{'resource'}' in $'{'environment'}'.\n\nCondition: $'{'condition'}' ($'{'operator'}' $'{'threshold'}' for $'{'period'}')\nCurrent value: $'{'value'}'\nTime: $'{'timestamp'}'\n\nDashboard: $'{'dashboardLink'}'\nNotification details: $'{'alertLink'}'", + "metrics": { + "cpuUsage": "CPU Usage", + "memoryHeapUsage": "Memory / Heap Usage", + "threadCount": "Thread Count", + "messageCount": "Message Count", + "messageErrors": "Message Errors", + "messageResponseTime": "Message Response Time", + "requestCount": "Request Count", + "responseTime": "Response Time", + "responseCodes": "Response Codes", + "policyViolations": "Policy Violations", + "deploymentSuccess": "Deployment Success", + "deploymentFailure": "Deployment Failure", + "workerUnresponsive": "Worker Unresponsive", + "serverDisconnected": "Server Disconnected", + "serverDeleted": "Server Deleted", + "customNotifications": "Custom Notifications" + }, + "targetService": "Target Service", + "apiInstance": "API Instance", + "allApplications": "All Applications", + "allVersions": "All Versions" + }, + "costDashboard": { + "title": "Cost" + }, + "costTokenDetailCard": { + "heading": "Cost & Token Detail", + "badge": "LLM", + "totalTokens": "Total Tokens", + "inputTokens": "Input Tokens", + "outputTokens": "Output Tokens", + "tokenUsageByProvider": "Token Usage by Provider", + "noProviderData": "No provider data available.", + "tokenDistributionByModel": "Token distribution by model", + "noModelData": "No model data available." + }, + "instanceContextBanner": { + "viewInstance": "View Instance" + }, + "monitoringOmniCardGrid": { + "heading": "Omni Cards", + "description": "Natural-language cards translated into validated AMQL queries and executed against observability data.", + "autogen": "autogen" + }, + "performanceOverviewSection": { + "heading": "Overview", + "availability": "Availability", + "availabilityInstanceDesc": "Operational status", + "availabilityDesc": "Active instances", + "reliability": "Reliability", + "reliabilityDesc": "Successful request rate", + "avgLatency": "Average Latency", + "avgLatencyDesc": "P95 response time", + "totalRequests": "Total Requests", + "totalRequestsDesc": "Total request volume", + "overview": "Overview", + "averageLatency": "Average Latency", + "operationalStatus": "Operational Status", + "activeInstances": "Active Instances", + "successfulRequestRate": "Successful Request Rate", + "p95ResponseTime": "P95 Response Time", + "totalRequestVolume": "Total Request Volume" + }, + "requestsByOperationTable": { + "heading": "Requests by Operation", + "summary": "{count} operations • {total} total requests", + "emptyState": "No endpoint traffic for the selected scope.", + "headerMethod": "Method", + "headerEndpoint": "Endpoint", + "headerRequests": "Requests", + "headerPercentOfTotal": "% of Total", + "headerAvgLatency": "Avg Latency", + "headerTrend": "Trend", + "trendUp": "Trend up", + "trendDown": "Trend down" + }, + "serviceContextBanner": { + "viewService": "View Service" + }, + "stackedMetricsBar": { + "status": { + "active": "Active", + "inactive": "Inactive", + "degraded": "Degraded", + "error": "Error", + "unregistered": "Unregistered" + }, + "instanceBreakdown": { + "active": "{count} active", + "inactive": "{count} inactive", + "unregistered": "{count} unregistered" + }, + "instanceCountAriaLabel": "{active} active of {total} instances", + "toggleDetailsAriaLabel": "{action} details for {label}", + "hideDetails": "Hide details", + "details": "Details", + "instancesAria": "{active} active of {total} instances", + "detailsAria": "{verb} details for {label}", + "verbHide": "Hide", + "verbShow": "Show" + }, + "metricDrillDownRowExpanders": { + "showLess": "Show Less", + "showFull": "Show Full", + "errorBreakdown": "Error Breakdown", + "violations": "Violations", + "occurrences": "Occurrences:" + }, + "toolInvocationsTable": { + "heading": "Tool Invocations", + "summary": "{count} tools • {total} total invocations", + "emptyState": "No tool invocation data for the selected scope.", + "headerToolName": "Tool Name", + "headerInvocations": "Invocations", + "headerPercentOfTotal": "% of Total", + "headerTrend": "Trend" + }, + "topClientsTable": { + "heading": "Top Clients", + "summary": "{count} clients • {total} total requests", + "emptyState": "No client traffic for the selected scope.", + "headerRank": "Rank", + "headerClient": "Client", + "headerRequests": "Requests", + "headerPercentOfTotal": "% of Total", + "headerTrend": "Trend", + "rank": "#{rank}" + }, + "slackSetupCard": { + "loadingStatus": "Loading Slack integration status…", + "heading": "Slack Setup", + "adminOnlySlackSetup": "Only an organization administrator can connect or disconnect the workspace integration. Ask your org admin to use this page, or sign in with an org admin account.", + "description": "Connect your Slack workspace to receive notifications.", + "statusLabel": { + "notInstalled": "Not Installed", + "pendingApproval": "Pending Approval", + "installed": "Installed", + "error": "Error" + }, + "dismiss": "Dismiss", + "appName": "MuleSoft for Slack", + "notInstalledHint": "Install the app to enable Slack notifications.", + "pendingApprovalHint": "Awaiting admin approval in your Slack workspace.", + "connectedTo": "Connected to {workspace} workspace", + "install": "Install", + "installing": "Installing…", + "pendingApprovalWarning": "A Slack workspace admin needs to approve the installation. Ask your admin to check pending app requests in Slack.", + "notificationChannelsHeading": "Notification Channels", + "notificationChannelsDescription": "Set workspace-wide defaults for how notifications are delivered in Slack.", + "channelsEnabledLabel": "Channels Enabled for Notifications", + "loadingChannels": "Loading channels…", + "noChannelsConfigured": "No channels configured yet. Add channels below to enable notifications.", + "removeChannel": "Remove {channel}", + "channelPlaceholder": "#channel-name", + "add": "Add", + "uninstallButton": "Uninstall Slack Integration", + "uninstalling": "Uninstalling…", + "uninstallWarning": "This will remove the Slack app from your workspace and delete all notification settings.", + "uninstallConfirm": "Uninstalling the Slack integration removes all Slack notification settings.", + "oauthSuccessWorkspace": "Connected to {workspace}.", + "oauthSuccessGeneric": "Slack integration was connected.", + "oauthFailed": "We couldn't authorize with OAuth. Try again.", + "failedToLoadStatus": "We couldn't load the Slack installation status. Try again.", + "failedToStartInstall": "We couldn't start the Slack installation. Try again.", + "uninstallSuccess": "Slack integration was uninstalled.", + "failedToUninstall": "We couldn't uninstall the Slack integration. Try again.", + "appUninstalledExternally": "Slack app is no longer installed in your workspace. Install it again to enable Slack notifications.", + "disconnectAdminNote": "The MuleSoft app will remain installed in your Slack workspace. To fully remove it, a Slack workspace admin needs to uninstall it from Slack.", + "disconnectButton": "Disconnect", + "disconnectDialogTitle": "Are you sure you want to disconnect Slack?", + "disconnectSuccess": "Slack integration disconnected successfully", + "disconnectWarningBody": "This will revoke MuleSoft's access to your Slack workspace. You'll stop receiving notifications immediately and won't be able to message the MuleSoft Agent.", + "disconnecting": "Disconnecting...", + "failedToDisconnect": "Failed to disconnect Slack integration", + "notInstalledPermissionHint": "You may need Slack admin permissions to install this app into your organization's Slack workspace, otherwise you can send a request." + }, + "auth": { + "loginFailed": "We couldn't sign you in. Try again.", + "signInFailed": "We couldn't sign you in. Try again." + }, + "guardrailWizard": { + "step": { + "strategyType": "Strategy Type", + "scope": "Scope", + "whatToApply": "What to Apply", + "nameDescription": "Name & Description", + "review": "Review" + }, + "strategyType": { + "guardrails": "Controls", + "guardrailsDescription": "Validate targeted services against selected control rules and optionally block non-compliant actions, while automatically publishing your live compliance posture.", + "automatedPolicy": "Automated Policy", + "automatedPolicyDescription": "Enforce consistent policy requirements across targeted services to ensure uniform governance and automated security." + }, + "scope": { + "filterRestApi": "REST API", + "filterEventedApi": "Evented API", + "filterHttpApi": "HTTP API", + "filterAgent": "Agent", + "filterMcpApp": "MCP App", + "runtimeAll": "All Technologies", + "runtimeFlex": "Omni Gateways", + "runtimeMule": "Mule Gateways", + "conditionServiceType": "Service Type", + "conditionTags": "Tags", + "conditionCategories": "Categories", + "conditionHasInstance": "Has Instance", + "conditionInstanceEnvironment": "Instance Environment", + "operatorIsAnyOf": "Is Any Of", + "operatorIncludesAnyTag": "Includes Any Tag", + "operatorIncludesAnyCategory": "Includes Any Category", + "operatorHasNoInstance": "Has No Instance", + "operatorIs": "Is", + "selectServicesToGovern": "Select Services To Govern", + "apisAgentsMcpServers": "APIs, Agents, MCP Servers", + "gateways": "Gateways", + "flexGateways": "Omni Gateways", + "flexGatewaysDescription": "Enforce governance standards across Omni Gateway configurations.", + "selectFilterCriteria": "Select Filter Criteria", + "filterCriteriaDescription": "Specify conditions to target the APIs, Agents, and MCP Servers you want to govern.", + "structuredFormSubtitle": "Configure scope criteria to identify services governed by this strategy. All criteria are combined to narrow the scope.", + "serviceTypeSelectAll": "Select the service types to govern", + "tagsLabel": "Tags", + "tagsHint": "Filter by tags to narrow scope", + "tagsPlaceholder": "Select tags...", + "categoriesLabel": "Categories", + "categoriesHint": "Filter by categories to narrow scope", + "categoriesPlaceholder": "Select categories...", + "instancesLabel": "Instances", + "instancesHint": "Filter by instance environment to narrow scope", + "deploymentAnyEnvironment": "Any environment", + "deploymentSpecificEnvironments": "Specific environments", + "deploymentNoInstances": "No instances", + "comingSoon": "Coming soon", + "noTagsAvailable": "No tags available", + "noCategoriesAvailable": "No categories available", + "noEnvNamesAvailable": "No environments available", + "loadingScopePreview": "Loading Scope Preview…", + "previewGovernedScope": "Preview Governed Scope", + "conditionModeAll": "All APIs, Agents, MCP Servers", + "conditionModeAnd": "Services that meet all conditions (AND)", + "conditionModeOr": "Services which meet any conditions (OR)", + "selectValues": "Select values", + "noValueRequired": "No value required", + "noBackendValues": "No backend values available", + "removeCondition": "Remove condition", + "addCondition": "Add Condition", + "addGroup": "Add Group", + "runtime": "Runtime", + "selectOneRuntime": "Select one runtime.", + "muleRuntimeDescription": "Define Mule runtime version range for automated policy application.", + "runtimeRangeFrom": "Runtime range from", + "runtimeRangeFromPlaceholder": "e.g. 4.1.1", + "runtimeRangeTo": "Runtime range to", + "runtimeRangeToPlaceholder": "e.g. 4.3.x", + "runtimeRangeInvalidVersion": "Use digits and dots, e.g. 4.4.0", + "runtimeRangeFromGreaterThanTo": "Range \"from\" must be less than or equal to \"to\"", + "endpointTypes": "Endpoint Types", + "allEndpointTypes": "All endpoint types", + "chooseSpecificGroups": "Choose specific endpoint groups", + "atLeastOneGroup": "Select at least one endpoint group.", + "environment": "Environment", + "selectEnvironment": "Select environment", + "environmentDescription": "Select the target environment to apply this automated policy.", + "noEnvironments": "No environments are available for the selected scope.", + "previewTitle": "Governed Scope Preview", + "previewCount": "{count} {count, plural, one {service} other {services}} match the current scope criteria", + "previewServiceName": "Service Name", + "previewType": "Type", + "previewProvider": "Provider", + "previewTags": "Tags", + "previewCategories": "Categories", + "previewInstances": "Instances", + "loadingScopePreviewTable": "Loading scope preview…", + "noServicesMatch": "No services match the current scope criteria.", + "filterGraphql": "GraphQL", + "filterSoapApi": "SOAP API", + "filterGrpcApi": "gRPC API" + }, + "rules": { + "heading": "Relevant rulesets for your selected scope", + "allCategories": "All Domains ({count})", + "categoryCount": "{name} ({count})", + "searchRulesetsPlaceholder": "Search rulesets or rules…", + "showSelectedOnly": "Show selected only", + "statsSummary": "Total {totalProfiles} {totalProfiles, plural, one {ruleset} other {rulesets}} ({totalRules} {totalRules, plural, one {rule} other {rules}}) · {selectedProfiles} {selectedProfiles, plural, one {ruleset} other {rulesets}} ({selectedRules} {selectedRules, plural, one {rule} other {rules}}) selected", + "collapseAll": "Collapse all", + "expandAll": "Expand all", + "loadingCatalog": "Loading rule catalog…", + "noDescriptionProvided": "No description provided.", + "report": "Report", + "closeSeverityMenu": "Close severity menu", + "toggleRulesetSelection": "Toggle ruleset selection", + "includeRuleset": "Include ruleset", + "ruleCount": "{count} {count, plural, one {rule} other {rules}}", + "ruleNameDescription": "Rule Name & Description", + "action": "Action", + "reportingSeverity": "Reporting Severity", + "severityTooltip": "Choose how strictly to enforce this rule. The severity level triggers different system action.\n\nViolation — Prevents new failed attempts and reports all existing non-compliance.\n\nWarning — Warns on new failed attempts without blocking. Reports all non-compliance.\n\nInfo — Informs failed attempts for visibility without blocking. Reports all non-compliance.", + "noRulesetsMatch": "No rulesets match your search or filter.", + "selectPolicyHeading": "Select a policy to apply automatically", + "allDomains": "All Domains ({count})", + "domainCount": "{name} ({count})", + "searchPoliciesPlaceholder": "Search policies…", + "latest": "Latest", + "learnMore": "Learn more", + "loadingPolicies": "Loading policies…", + "unableToLoadPolicies": "We couldn't load policies. Try again.", + "noPoliciesMatch": "No policies match your search.", + "profileSummaryFallback": "Includes the selected ruleset checks for this profile.", + "policyVersionPrefix": "Policy: ", + "allPolicyVersions": "All policy versions", + "policyVersionPrefix": "Policy: ", + "allPolicyVersions": "All policy versions", + "loadingPolicyConfig": "Loading policy configuration...", + "selectedPolicy": "Selected Policy", + "noPolicySelected": "No policy selected", + "configurePolicy": "Configure Policy", + "noPolicyInputsRequired": "This policy doesn't require configuration inputs.", + "allRuntimesMissingMule": "Currently this policy version doesn't support Mule runtime. In case an implementation is added to the policy, you'll be able to check for updates, and cover Mule gateways APIs.", + "allRuntimesMissingFlex": "Currently this policy version doesn't support Flex runtime. In case an implementation is added to the policy, you'll be able to check for updates, and cover Flex gateways APIs.", + "allRuntimesMissingBoth": "Currently this policy version doesn't support Flex or Mule runtime. In case an implementation is added to the policy, you'll be able to check for updates, and cover Flex or Mule gateways APIs.", + "severity": "Severity" + }, + "review": { + "strategyType": "Strategy Type", + "governanceScope": "Governance Scope", + "autoIncludeNote": "We automatically include services that match the filter criteria.", + "runtime": "Runtime", + "noRuntimesSelected": "No runtimes selected", + "endpointTypes": "Endpoint Types", + "allEndpointTypes": "All endpoint types", + "noEndpointGroups": "No endpoint groups selected", + "mappedEndpointTypes": "Mapped endpoint types: {types}", + "mappedEndpointTypesNone": "None", + "environment": "Environment", + "noEnvironmentSelected": "No environment selected", + "noServiceScopeSelected": "No service-type scope selected", + "noAdditionalConditions": "No additional conditions selected", + "noValues": "No values selected", + "rulesToApply": "Rules to Apply", + "policyToApply": "Policy to Apply", + "policySelectedCount": "{count} policy selected", + "rulesAcrossRulesets": "{rules} rules across {rulesets} rulesets", + "collapseAll": "Collapse All", + "expandAll": "Expand All", + "noPolicySelected": "No policy selected.", + "noValidRulesSelected": "No valid rules selected.", + "rulesUsed": "{used} of {total} rules used", + "generalInformation": "General Information", + "strategyName": "Strategy Name", + "description": "Description", + "notAdded": "Not added", + "ruleNameDescription": "Rule Name & Description", + "severity": "Severity", + "noDescriptionProvided": "No description provided.", + "noDescriptionAvailable": "No description available.", + "rulesetDetailsUnavailable": "Ruleset details unavailable in catalog.", + "uncategorized": "Uncategorized", + "latest": "Latest", + "automatedPolicy": "Automated Policy", + "guardrails": "Controls", + "gatewaysLabel": "Gateways", + "apisAgentsMcpServers": "APIs, Agents, MCP Servers", + "scopeModeAll": "All APIs, Agents, MCP Servers", + "scopeModeAnd": "APIs, Agents, MCP Servers that meet all conditions (AND)", + "scopeModeOr": "APIs, Agents, MCP Servers that meet any conditions (OR)" + }, + "wizard": { + "breadcrumbGovernance": "Governance Strategies", + "breadcrumbEdit": "Edit Strategy", + "breadcrumbCreate": "Create Strategy", + "stepTitleStrategyType": "Select Strategy Type", + "stepTitleScopeAutomated": "Define Application Scope", + "stepTitleScopeGuardrails": "Define Governance Scope", + "stepTitleRulesAutomated": "Configure Policy", + "stepTitleRulesGuardrails": "Configure Governance Rules", + "stepTitleNameDescription": "General Information", + "stepTitleReview": "Review", + "stepDescStrategyType": "Select the type of governance strategy to create.", + "stepDescScopeAutomated": "Define the services to enforce this automated policy.", + "stepDescScopeGuardrailsGateways": "Define the strategy scope by selecting target services and configuring automated inclusion conditions.", + "stepDescScopeGuardrailsServices": "Define the strategy scope by selecting target services and configuring automated inclusion conditions.", + "stepDescRulesAutomated": "Select and configure the automated policy to apply using this strategy.", + "stepDescRulesGuardrails": "Select bundled rulesets or individual rules to apply to the defined scope. We validate these rules against services to generate reports, block actions, and evaluate compliance.", + "stepDescNameDescription": "Enter a unique name and description to identify this strategy profile.", + "stepDescReview": "Review your governance strategy configuration before saving.", + "editWizardTitle": "Edit Control Wizard", + "createWizardTitle": "Create Control Wizard", + "editWizardDescription": "Adjust scope and rules, then review before saving changes.", + "createWizardDescription": "Configure scope, choose rules, and review before publishing profile settings.", + "previous": "Previous", + "createAndActivate": "Create and activate strategy", + "saveGuardrail": "Save Control", + "strategyNameLabel": "Strategy Name", + "strategyNamePlaceholder": "Enter a name…", + "descriptionLabel": "Description", + "descriptionPlaceholder": "Enter a description…", + "breadcrumbAriaLabel": "Breadcrumb" + }, + "validation": { + "missingOrgContext": "Missing organization context.", + "selectTemplateFirst": "Select a policy template to continue.", + "unableToResolveSchema": "We couldn't resolve the policy schema for the validation. Try again.", + "configDoesNotMatchSchema": "The configuration doesn't match the selected policy schema.", + "configDoesNotSatisfySchema": "The configuration doesn't satisfy the selected policy schema.", + "unnamedPolicyTemplate": "Unnamed policy template", + "noDescriptionProvided": "No description provided.", + "strategyNameAlreadyExists": "A strategy with this name already exists. Choose a different name." + } + }, + "policiesTabSingle": { + "unknownPolicy": "Unknown Policy", + "loadingPolicies": "Loading policies for this instance…", + "failedToLoadPolicies": "We couldn't load policies. Try again.", + "byDomain": "By Domain", + "byApplicationMethod": "By Application Method", + "automatedPolicies": "Automated Policies", + "instancePolicies": "Instance Policies", + "reorderInstancePolicies": "Reorder Instance Policies", + "applyPolicyLoading": "Loading…", + "applyPolicyButton": "Apply Policy", + "automatedPolicy": "Automated Policy", + "instancePolicy": "Instance Policy", + "noPoliciesApplied": "No policies applied to this instance.", + "disablePolicy": "Disable Policy", + "viewConfiguration": "View Configuration", + "editConfiguration": "Edit Configuration", + "removingPolicy": "Removing…", + "removePolicy": "Remove Policy", + "unableToRemoveMissingId": "We couldn't remove the policy because the policy ID is missing. Try again.", + "failedToRemovePolicy": "We couldn't remove the policy. Try again.", + "failedToReorderPolicies": "We couldn't reorder policies. Try again.", + "failedToLoadPolicyTemplates": "We couldn't load policy templates. Try again.", + "viewPolicyAriaLabel": "View {name}", + "moreActionsAriaLabel": "More actions for {name}", + "emptyStateTitle": "No policies applied", + "emptyStateDescription": "This instance has no policies applied. Add a policy to start protecting it.", + "enablePolicy": "Enable Policy", + "removePolicyDialogBodyMessage": "This will detach the policy from this instance. Traffic that was being filtered by this policy will no longer be enforced.", + "removePolicyDialogCancelButton": "Cancel", + "removePolicyDialogCloseAriaLabel": "Close remove policy dialog", + "removePolicyDialogConfirmButton": "Remove Policy", + "removePolicyDialogConfirmMessage": "Are you sure you want to remove {name}?", + "removePolicyDialogHeading": "Remove policy", + "removePolicyToastSuccess": "Removed {name}.", + "enablePolicyToastSuccess": "Enabled {name}.", + "disablePolicyToastSuccess": "Disabled {name}." + }, + "policiesTab": { + "policyFallback": "Policy", + "errorMissingInstanceContext": "We couldn't load policies. Make sure the organization, environment, and instance are set up correctly.", + "errorLoadPolicyTemplates": "We couldn't load policy templates for this instance. Try again.", + "applyPolicyLoading": "Loading…", + "applyPolicyButton": "Apply Policy", + "calculatingCoverage": "Calculating policy coverage from instance policies…", + "columnPolicyDomain": "Policy Domain", + "noCoveredInstances": "No covered instances in this environment.", + "policyAppliedCount": "{count, plural, one {# policy applied} other {# policies applied}}", + "viewDetailsAriaLabel": "View details: {label}", + "coverageDetailsAriaLabel": "Coverage details: {category} - {environment}", + "emptyStateTitle": "No instances yet", + "emptyStateDescription": "Policy coverage appears once this service has at least one active instance. Create an instance to start applying policies.", + "deletePolicy": "Delete Policy", + "areYouSureToDelete": "Are you sure you want to delete {policy} from this instance?" + }, + "versionsTab": { + "latest": "Latest", + "addVersion": "Add Version", + "loadingVersions": "Loading versions…", + "noVersionHistory": "No version history available.", + "instanceCount": "{count, plural, one {# instance} other {# instances}}" + }, + "scannerBetaBanner": { + "message": "Scanner features UX is still in progress and is not fully ready yet." + }, + "tourSteps": { + "homeTitle": "Home", + "homeDescription": "See portfolio activity, briefings, and recent changes across your AI services.", + "searchTitle": "Search", + "searchDescription": "Search for services, navigate pages, and run actions with the command palette. Press \"/\" to open.", + "portfolioTitle": "Portfolio", + "portfolioDescription": "Manage your AI services: Agents, MCP Servers, LLMs, APIs, and Gateways. Track performance, policies, and relationships.", + "governanceTitle": "Governance", + "governanceDescription": "Monitor compliance, policy coverage, and service health. Configure and manage governance strategies.", + "observabilityTitle": "Observability", + "observabilityDescription": "View performance metrics, error rates, and traffic patterns. Analyze trends and generate custom monitoring reports.", + "platformTitle": "Platform", + "platformDescription": "Connect and manage external providers such as AWS, Google, and Anthropic. Set up integrations and discovery scanners.", + "anypointTitle": "Go to Anypoint Platform", + "anypointDescription": "Quick link to Anypoint Platform. Opens in a new tab for seamless navigation between the enhanced MuleSoft experience and Anypoint Platform.", + "businessGroupTitle": "Business Group", + "businessGroupDescription": "Switch between business groups to change your organization scope. Currently viewing: Mythical Division.", + "themeToggleTitle": "Theme Toggle", + "themeToggleDescription": "Switch between light and dark modes. Your changes take effect immediately.", + "navToggleTitle": "Navigation Toggle", + "navToggleDescription": "Collapse the navigation to icon-only mode for more screen space, or expand it to see full labels.", + "omniAssistantTitle": "Ask MuleSoft", + "omniAssistantDescription": "Ask questions, get insights, and take actions across your AI portfolio. Press ⌘K (Mac) or Ctrl+K (Windows) to open.", + "businessGroupDescriptionNoOrg": "Switch between business groups to view different organizational scopes." + }, + "welcomeFeatures": { + "registerLabel": "Register", + "registerDescription": "agents, MCP servers, and LLMs from any provider or registry.", + "monitorLabel": "Monitor", + "monitorDescription": "latency, cost, invocations, and failures in real time.", + "secureLabel": "Secure", + "secureDescription": "instances with applicable policies across your entire portfolio.", + "transcodeLabel": "Transcode", + "transcodeDescription": "existing REST APIs into MCP servers instantly." + }, + "artifactRenderer": { + "renderError": "We couldn't render \"{title}\" — the data format wasn't recognized.", + "noTableData": "No table data available" + }, + "registration": { + "pathSelector": { + "heading": "How would you like to register?", + "description": "Choose how you'd like to add it to your portfolio.", + "createNewTitle": "Create New", + "createNewDescription": "Register a new entity manually by filling in its details.", + "browseMarketplaceTitle": "Browse Marketplace", + "browseMarketplaceDescription": "Browse published entities from the community marketplace.", + "scanImportTitle": "Scan & Import", + "scanImportDescription": "Scan external providers to discover and import entities.", + "comingSoon": "Coming soon" + }, + "wizardShell": { + "back": "Back", + "closeAriaLabel": "Close" + }, + "scanSimulation": { + "scanning": "Scanning {provider}", + "discoveringDescription": "Discovering agents in your environment…", + "stepConnecting": "Connecting to {provider}…", + "stepAuthenticating": "Authenticating…", + "stepScanning": "Scanning environment…", + "stepDiscovering": "Discovering agents…", + "stepProcessing": "Processing results…", + "percentComplete": "% complete", + "discoveredFrom": "Discovered from {provider}" + }, + "scanResults": { + "externalProvider": "External Provider", + "heading": "Discovered {count} agents from {provider}", + "description": "Select which agents to import into your portfolio.", + "deselectAll": "Deselect All", + "selectAll": "Select All", + "selectionCount": "{selected} of {total} selected", + "back": "Back", + "importSelected": "Import Selected ({count})" + }, + "schemaUpload": { + "heading": "Schema Upload", + "dropZone": "Drop JSON or YAML file here", + "pasteLabel": "Or paste JSON/YAML", + "successMessage": "Schema loaded — {count} fields populated", + "errorNotObject": "Expected a JSON object with key-value fields.", + "errorInvalidFormat": "Unsupported format. Only JSON is supported." + }, + "manualForm": { + "entityTypeHeading": "What type of entity?", + "entityTypeDescription": "Select the entity type you want to register.", + "backButton": "Back", + "registeredSuffix": "Registered", + "registeredSuccessSuffix": "was registered.", + "registerPrefix": "Register", + "registerDescription": "Fill in the details for your new", + "selectPlaceholder": "Select…", + "changeType": "Change type", + "registerButton": "Register", + "fieldName": "Name", + "fieldDescription": "Description", + "fieldEnvironment": "Environment", + "fieldOwner": "Owner", + "fieldTags": "Tags (comma-separated)", + "fieldProvider": "Provider", + "fieldProtocol": "Protocol", + "fieldSource": "Source", + "fieldToolCount": "Tool Count", + "fieldModelId": "Model ID", + "fieldCategory": "Category", + "fieldContextWindow": "Context Window", + "fieldRuntime": "Runtime", + "fieldTriggerType": "Trigger Type", + "fieldMemoryMb": "Memory (MB)", + "fieldApiType": "API Type", + "fieldApiVersion": "API Version", + "fieldInstanceCount": "Instance Count", + "fieldDimensions": "Dimensions", + "fieldEmbeddingModel": "Embedding Model", + "fieldGatewayType": "Gateway Type", + "fieldUpstreamUrl": "Upstream URL" + }, + "registryBrowser": { + "heading": "Browse Marketplace", + "description": "Discover and import entities from the community marketplace.", + "typeAgents": "Agents", + "typeMcpServers": "MCP Servers", + "typeLlms": "LLM Proxies", + "typeFunctions": "Functions", + "typeApis": "APIs", + "typeVectorDbs": "Vector DBs", + "sortMostPopular": "Most Popular", + "sortHighestRated": "Highest Rated", + "sortNewest": "Newest", + "filterAll": "All", + "noMatchingAssets": "No matching assets found", + "importButton": "Import", + "versionPrefix": "v{version}" + }, + "scannerSetup": { + "stepBasicInfo": "Basic Info", + "stepProvider": "Provider", + "stepAuthentication": "Authentication", + "stepAdvanced": "Advanced", + "basicInfoHeading": "Basic Information", + "scannerNameLabel": "Scanner Name *", + "descriptionLabel": "Description", + "scheduleLabel": "Schedule", + "every": "Every", + "unit": "Unit", + "atHour": "At (hour)", + "syncReviewLabel": "Sync Review", + "selectProviderHeading": "Select Provider", + "selectProviderDescription": "Choose the external platform to scan for agents.", + "authenticateWith": "Authenticate with {provider}", + "chooseAuthMethod": "Choose an authentication method", + "credentialsReentryWarning": "Credentials must be re-entered for security. Previous values are not displayed.", + "testing": "Testing…", + "connectedSuccessfully": "Connected.", + "testConnection": "Test Connection", + "connectionFailed": "We couldn't connect. Try again.", + "advancedSettingsHeading": "Advanced Settings", + "notificationsHeading": "Notifications", + "emailOption": "Email", + "slackWebhookOption": "Slack Webhook", + "importFiltersHeading": "Import Filters", + "addFilter": "Add Filter", + "back": "Back", + "creating": "Creating…", + "updateScanner": "Update Scanner", + "continueButton": "Continue", + "next": "Next", + "filterFieldEnvironment": "Environment", + "filterFieldStatus": "Status", + "filterFieldTransportType": "Transport Type", + "filterFieldLlmUsed": "LLM Used", + "filterOperatorIncludes": "includes", + "filterOperatorExcludes": "excludes", + "namePlaceholder": "e.g., Production Vertex Scanner", + "descriptionPlaceholder": "Describe what this scanner monitors…", + "valuesPlaceholder": "Values…" + }, + "publishAssetForm": { + "heading": "Publish a new {type}", + "publishingInProgress": "Publishing {type}…", + "waitingForDeployment": "Waiting for deployment to complete", + "nameLabel": "Name", + "assetTypesLabel": "Asset types", + "agentOption": "Agent", + "mcpOption": "MCP", + "agentTypeLabel": "Agent", + "mcpTypeLabel": "MCP Server", + "optional": "(Optional)", + "noFileChosen": "No file chosen", + "chooseFile": "Choose file", + "enterOrSelectPlatform": "Enter or select a platform", + "testingButton": "Testing…", + "testConnectionButton": "Test connection", + "a2aSpecLink": "A2A Spec", + "mcpSpecLink": "MCP Spec", + "connectionSuccessful": "Connection successful.", + "required": "Required", + "lifecycleStateLabel": "Lifecycle state", + "lifecycleStable": "Stable", + "lifecycleStableDesc": "Released and ready to consume", + "lifecycleDevelopment": "Development", + "lifecycleDevelopmentDesc": "In process of design and development", + "cancelButton": "Cancel", + "publishButton": "Publish", + "signInRequired": "Sign in or select an organization to publish", + "nameRequired": "Enter a name.", + "assetIdRequired": "Enter an asset ID.", + "versionRequired": "Enter a version.", + "versionInvalid": "Version field should be a valid semver version", + "publishFailed": "We couldn't publish the asset. Try again.", + "signInForTestConnection": "Sign in or select an organization to test connection", + "urlRequired": "Enter a URL.", + "urlInvalid": "Enter a valid URL.", + "connectionTestFailed": "We couldn't complete the connection test. Try again.", + "chooseFileAriaLabel": "Choose {fieldLabel} file", + "lifecycleAriaLabel": "{label} lifecycle state" + }, + "publishApiAssetForm": { + "nameLabel": "Name", + "assetTypesLabel": "Asset types", + "assetTypeTooltip": "Select the API specification type (REST, GraphQL, SOAP, etc.)", + "methodLabel": "Method", + "fileUploadLabel": "File upload", + "noFileChosen": "No file chosen", + "chooseFile": "Choose file", + "mainFileLabel": "Main file", + "apiVersionLabel": "API version", + "lifecycleStateLabel": "Lifecycle state", + "lifecycleStable": "Stable", + "lifecycleStableDesc": "Released and ready to consume", + "lifecycleDevelopment": "Development", + "lifecycleDevelopmentDesc": "In process of design and development", + "cancelButton": "Cancel", + "publishingButton": "Publishing…", + "publishButton": "Publish", + "publishFailed": "We couldn't publish the API asset. Try again.", + "validationRequired": "Required", + "validationEnterValidUrl": "Enter a valid URL", + "validationInvalidSemver": "Version field should be a valid semver version" + }, + "publishAdvancedSection": { + "description": "Exchange generates the GroupId, AssetId and Version for you. If you need, you can change the AssetId and Version.", + "groupIdLabel": "GroupId", + "assetIdLabel": "AssetId", + "versionLabel": "Version", + "versionHelperPrefix": "Version should use the ", + "semverLink": "SemVer", + "versionHelperSuffix": " format. Examples: 1.0.0 or 2.1.3" + } + }, + "createPromptTopicModal": { + "titleCreate": "Create prompt topic", + "titleEdit": "Edit prompt topic", + "nameRequired": "Enter a topic name.", + "utterancesRequired": "Enter at least one utterance.", + "utterancesLineCap": "At most {max} utterance lines allowed for this semantic service scale.", + "closeAriaLabel": "Close", + "namePlaceholder": "e.g. billing-queries", + "utterancesTooltip": "Example prompts for this topic; one per line is typical.", + "utterancesPlaceholder": "Type prompt utterances here…", + "uploadUtterances": "Upload utterances", + "dragAndDrop": "or drag and drop a file here", + "nameDuplicate": "That topic name is already taken. Enter a unique name.", + "invalidFileType": "Upload a .txt or .csv file.", + "fileReadFailed": "We couldn't read the file. Try again.", + "nameLabel": "Prompt topic name", + "utterancesLabel": "Prompt utterances (type or upload)", + "deleteButton": "Delete", + "cancelButton": "Cancel", + "saveButton": "Save", + "uploadMoreUtterances": "Upload more utterances", + "savingButton": "Saving…", + "deletingButton": "Deleting…" + }, + "deleteSemanticServiceModal": { + "closeAriaLabel": "Close dialog", + "title": "Delete semantic service", + "confirmPrompt": "Are you sure you want to delete", + "cannotBeUndone": "This action can't be undone.", + "cancelButton": "Cancel", + "deleteButton": "Delete" + }, + "emailTagInput": { + "removeAriaLabel": "Remove {email}", + "placeholder": "Type an email and press Enter" + }, + "pauseScheduleConfirmModal": { + "title": "Pause Scheduled Runs", + "resumeMessage": "You can resume scheduled runs at any time from {resumeLocation}. Manual discovery scans will still be available while the schedule is paused.", + "confirmButton": "Pause Scheduled Runs", + "cancelButton": "Cancel" + }, + "themeToggle": { + "toggleLight": "Toggle light mode", + "toggleDark": "Toggle dark mode" + }, + "versionDropdown": { + "allVersions": "All Versions", + "unknown": "Unknown" + }, + "semanticServiceContext": { + "loadFailed": "We couldn't load semantic services. Try again." + }, + "scheduleFields": { + "frequencyLabel": "Frequency", + "timeLabel": "Time", + "every24Hours": "Every 24 hours", + "weekly": "Weekly", + "monthly": "Monthly" + }, + "semanticService": { + "embeddingSection": { + "heading": "Embedding connection", + "providerLabel": "Embedding service provider", + "serviceLabelPlaceholder": "e.g. Production embeddings", + "authKeyPlaceholderNew": "Enter auth key", + "authKeyPlaceholderEdit": "Enter new auth key", + "hidePassword": "Hide password", + "showPassword": "Show password", + "environment": "Environment", + "authKeyLabel": "Auth key", + "authKeyTooltip": "Leave blank to keep the existing key (re-enter to update).", + "urlLabel": "URL", + "modelLabel": "Model" + }, + "vectorSection": { + "heading": "Vector connection", + "providerLabel": "Vector Database provider", + "serviceLabelPlaceholder": "e.g. Production vector search", + "apiKeyPlaceholderNew": "Enter API key", + "apiKeyPlaceholderEdit": "Enter new API key" + }, + "kindSection": { + "scaleHeading": "Semantic service scale", + "scaleDescription": "Select the scale that best fits your traffic and infrastructure needs.", + "basicLabel": "Basic scale", + "basicDescription": "Supports up to 6 topics and 10 utterances per topic. Managed via internal LLM Proxy configuration.", + "advancedLabel": "Advanced scale", + "advancedDescription": "Scales up to large utterance sets per topic. Requires a dedicated external vector database connection." + }, + "topicsSection": { + "heading": "Prompt topics:", + "description": "Define prompt topics and utterances to enable semantic routing in your LLM Proxy.", + "limit": "Scales up to 2000 utterances per topic.", + "searchPlaceholder": "Search…", + "searchAriaLabel": "Search prompt topics", + "createButton": "Create Prompt Topic", + "topicsListAriaLabel": "Prompt topics list", + "noTopicsYet": "No topics yet.", + "noTopicsMatch": "No topics match your search.", + "editTopicAriaLabel": "Edit topic {name}", + "removeTopicAriaLabel": "Remove topic {name}" + }, + "formFooter": { + "cancel": "Cancel", + "editSettings": "Edit settings", + "saving": "Saving…", + "save": "Save", + "saveChanges": "Save changes", + "saveAndDownload": "Save & Download Script" + }, + "setupCore": { + "backLabel": "Semantic Services", + "titleNew": "New semantic service", + "titleEdit": "Edit semantic service", + "fixIssues": "Fix {count} issues before saving.", + "loading": "Loading…", + "embeddingCardLabel": "Embedding connection", + "vectorCardLabel": "Vector connection" + } + }, + "monitoringFilterToolbar": { + "allEnvironments": "All Environments", + "resetFilters": "Reset Filters", + "aggregate": "Aggregate", + "instances": "Instances" + }, + "commandPalette": { + "clearButton": "Clear", + "closeButton": "Close", + "navigateHint": "Navigate", + "openHint": "Open", + "escapeKey": "Esc" + }, + "addServiceDropdown": { + "registerManually": "Register Manually", + "sectionDiscover": "Discover", + "sectionRegister": "Register New", + "connectToProvider": "Connect to Provider", + "connectToProviderDesc": "Connect to providers like AWS or Kong to automatically discover and import services into your catalog.", + "registerAgent": "Register Agent", + "registerAgentDesc": "Upload a declarative file manually to register a new Agent.", + "createMcpServer": "Create MCP Server", + "registerManuallyMcpDesc": "Upload a declarative file manually to register a new MCP Server.", + "createMcpServerDesc": "Create an MCP server from your APIs or curated list of SaaS applications.", + "registerMcpServer": "Register MCP Servers", + "registerMcpServerDesc": "Upload a declarative file manually to register a new MCP Server.", + "registerLlmProxies": "Register LLM Proxies", + "registerLlmProxiesDesc": "Configure providers, routing, and a gateway to register a new LLM Proxy.", + "registerApi": "Register APIs", + "registerApiDesc": "Upload a declarative file manually to register new APIs.", + "addService": "Add Service" + }, + "registryUploadForm": { + "uploadAriaLabel": "Upload {fileLabel}", + "chooseFile": "Choose file or drag & drop", + "retryButton": "Retry", + "assetIdLabel": "Asset ID:", + "pipelineSteps": "Pipeline Steps:", + "uploading": "Uploading to registry…", + "verifying": "Verifying service visibility… (attempt {pollAttempt})", + "cancelButton": "Cancel", + "errorTitleValidation": "Package format not recognized.", + "errorTitleAuthRequired": "Authentication Required", + "errorTitleAuthExpired": "Session Expired", + "errorTitleAuthForbidden": "Permission Denied", + "errorTitleUpstreamError": "Registry Error", + "errorTitleUpstreamTimeout": "Request Timed Out", + "errorTitleUpstreamUnreachable": "Service Unreachable", + "errorTitleConflict": "Asset Already Exists", + "errorTitleRateLimited": "Too Many Requests", + "errorTitleInternal": "Unexpected Error", + "versionLabel": "Version", + "zipFileTypeHint": "ZIP" + }, + "complianceBadge": { + "compliant": "Conformant", + "nonCompliant": "Non-Conformant", + "pending": "Not Validated" + }, + "semanticServiceCatalog": { + "col": { + "serviceLabel": "Service Label", + "type": "Type", + "provider": "Provider", + "model": "Model", + "url": "URL" + }, + "typeBasic": "Basic", + "typeAdvanced": "Advanced", + "loadFailed": "We couldn't load semantic services. Try again.", + "heading": "Semantic Services", + "addService": "Add Semantic Service", + "searchPlaceholder": "Search semantic services…", + "filters": "Filters", + "clearAll": "Clear all", + "filterType": "Type", + "filterEnvironment": "Environment", + "applyFilters": "Apply Filters", + "emptyState": "No semantic services configured yet.", + "createFirst": "Create your first semantic service", + "noResultsSearch": "No results match your search.", + "noResultsFilters": "No results match your filters.", + "filteredOf": "{filtered} of {total}", + "columnServiceLabel": "Service Label", + "columnType": "Type", + "columnProvider": "Provider", + "columnModel": "Model", + "columnUrl": "URL", + "environment": "Environment", + "failedToLoad": "We couldn't load semantic services. Try again." + }, + "semanticServiceCatalogRowMenu": { + "actionsAriaLabel": "Actions for {name}", + "edit": "Edit", + "copyServiceUrl": "Copy service URL", + "delete": "Delete" + }, + "entityTable": { + "retry": "Retry", + "dismiss": "Dismiss", + "complianceLabels": { + "compliant": "Compliant", + "non-compliant": "Non-Compliant", + "pending": "Pending", + "conformant": "Conformant", + "not-conformant": "Non-Conformant", + "not-validated": "Not Validated" + }, + "justNow": "Just now", + "minutesAgo": "{count}m ago", + "hoursAgo": "{count}h ago", + "daysAgo": "{count}d ago", + "monthsAgo": "{count}mo ago" + }, + "addInstanceShared": { + "stepGatewayApi": "Gateway & API", + "stepInstanceConfig": "Instance Configuration" + }, + "commandPaletteNav": { + "home": "Home", + "agents": "Agents", + "mcpServers": "MCP Servers", + "llms": "LLM Proxies", + "apis": "APIs", + "gateways": "Gateways", + "providers": "Providers", + "governanceStrategies": "Governance Strategies", + "costManagement": "Cost Management", + "performance": "Performance", + "notifications": "Notifications" + }, + "importRulesBuilderFields": { + "agentName": "Agent Name", + "description": "Description", + "tags": "Tags", + "dateRange": "Date Range", + "version": "Version", + "llmInformation": "LLM Information", + "transportProtocol": "Transport Protocol", + "skills": "Skills", + "environment": "Environment", + "status": "Status" + }, + "importRulesBuilderOperators": { + "contains": "Contains", + "is": "Is", + "matches": "Matches", + "before": "Before", + "doesntMatch": "Doesn't Match" + }, + "createServiceEntityForm": { + "namePlaceholder": "e.g. Customer Support {placeholder}", + "specificationFile": "Specification File", + "selectAnOption": "Select an option", + "zipValueFromExchangeJson": "Value comes from the ZIP’s exchange.json.", + "creating": "Creating…", + "done": "Done", + "create": "Create", + "nameLabel": "Name", + "nameFromZipHint": "Name comes from the ZIP’s exchange.json.", + "versionLabel": "Version", + "versionPlaceholder": "e.g. v2", + "creatingEntity": "Creating {entity}…", + "cancel": "Cancel", + "nameFromZipPrefix": "Name comes from the ZIP’s ", + "nameFromZipSuffix": ".", + "typeFromZipHint": "Type comes from the ZIP’s exchange.json.", + "typeFromZipPlaceholder": "Auto-detected from ZIP" + }, + "specFileDropZone": { + "optional": "(optional)", + "clickToBrowseOrDragAndDrop": "Click to browse or drag and drop", + "uploadAriaLabel": "Upload {entityLabel} spec or ZIP", + "zipPackage": "ZIP package", + "specFile": "Spec file" + }, + "testConnectionRow": { + "test": "Test connection", + "testing": "Testing connection…", + "success": "Connection successful.", + "failure": "We couldn't connect. Try again.", + "oauthCredentialsRequired": "Enter your Client ID and Client Secret.", + "metadataServerLabel": "Server", + "metadataVersionLabel": "Version", + "metadataTransportLabel": "Transport", + "metadataToolsLabel": "Tools", + "metadataPromptsLabel": "Prompts", + "metadataResourcesLabel": "Resources", + "metadataNoTools": "No tools advertised", + "metadataMoreTools": "+{count} more" + }, + "createEntityConfigs": { + "platformField": { + "label": "Platform" + }, + "agent": { + "title": "Create Agent", + "entityLabel": "Agent Card File", + "namePlaceholder": "Agent", + "specFileHint": "JSON format · agent-card.json", + "protocolLabel": "Protocol", + "protocolA2aLabel": "A2A", + "protocolOtherLabel": "Non-A2A" + }, + "mcpServer": { + "title": "Create MCP", + "entityLabel": "MCP Schema", + "namePlaceholder": "MCP Server", + "specFileHint": "JSON format · mcp-metadata.json", + "urlLabel": "URL", + "urlPlaceholder": "https://example.com/mcp", + "clientIdLabel": "Client ID", + "clientIdPlaceholder": "Paste the Client ID…", + "clientSecretLabel": "Client Secret", + "clientSecretPlaceholder": "Paste the Client Secret…", + "authenticationLabel": "Authentication", + "methodLabel": "Method", + "byUrlTitle": "By MCP URL", + "byUrlDescription": "Connect directly to a live MCP endpoint for immediate validation and tool discovery.", + "uploadSchemaTitle": "Upload Schema", + "uploadSchemaDescription": "Contract first: Upload a schema, then connect to an instance URL to verify runtime access." + }, + "api": { + "title": "Create API", + "entityLabel": "API", + "namePlaceholder": "API", + "specFileHint": "OpenAPI, RAML, GraphQL, Proto, WSDL, or ZIP", + "subTypeLabel": "Type", + "restLabel": "REST API", + "restFileHint": "OAS · .json, .yaml, or .zip", + "soapLabel": "SOAP", + "soapFileHint": "WSDL · .wsdl, .xml, or .zip", + "graphqlLabel": "GraphQL", + "graphqlFileHint": "Schema · .graphql or .zip", + "grpcLabel": "gRPC", + "grpcFileHint": ".proto or .zip", + "asyncLabel": "Async API", + "asyncFileHint": "Async API YAML · .yaml, .yml, or .zip", + "httpLabel": "HTTP", + "httpFileHint": "No spec required" + }, + "llm": { + "title": "Create LLM", + "entityLabel": "LLM", + "namePlaceholder": "LLM", + "specFileHint": "Project package · .zip" + } + }, + "configLoadError": { + "title": "Unable to load configuration", + "description": "The application couldn't reach the server. Refresh the page or contact your administrator.", + "retry": "Retry" + }, + "toolCallBubble": { + "login": "Logging in to Anypoint Platform", + "logout": "Logging out", + "listBusinessGroups": "Fetching business groups", + "getBusinessGroup": "Getting business group details", + "setBusinessGroup": "Switching business group", + "getBusinessGroupState": "Checking current business group", + "getAppViewState": "Reading current page context", + "navigateToPage": "Navigating", + "navigateToApi": "Opening API", + "navigateToApiDetail": "Opening API details", + "navigateToInstanceDetail": "Opening instance details", + "navigateToPolicySelector": "Opening policy selector", + "navigateToInstanceCreate": "Opening instance creation", + "navigateToVersionCreate": "Opening version creation", + "navigateToAddProvider": "Opening provider connection", + "showEntityDetail": "Opening entity details", + "showApiCatalog": "Opening API catalog", + "getServiceListingState": "Reading catalog view", + "getServiceDetailState": "Reading service details", + "getInstanceDetailState": "Reading instance details", + "getPolicyFormState": "Reading policy configuration", + "getPolicySelectorState": "Reading available policies", + "selectPolicyInSelector": "Selecting a policy", + "applyPolicyFormPatch": "Preparing policy configuration changes", + "applyToolMappingFormPatch": "Preparing tool description optimizations", + "getGatewayFormState": "Reading gateway configuration", + "applyGatewayFormPatch": "Preparing gateway configuration changes", + "getMonitoringDashboardState": "Reading monitoring dashboard", + "applyMonitoringCardPatch": "Preparing monitoring card", + "translateMonitoringQueryToAmql": "Generating monitoring query", + "buildMonitoringCard": "Building monitoring chart", + "getScannerListState": "Reading scanners", + "getScannerDetailState": "Reading scanner details", + "getScannerFormState": "Reading scanner configuration", + "runScanner": "Running scanner", + "deleteScanner": "Removing scanner", + "applyScannerFormPatch": "Preparing scanner changes", + "getNotificationListState": "Reading notifications", + "getNotificationCreateState": "Reading notification form", + "getNotificationSettingsState": "Reading notification settings", + "createNotification": "Creating notification", + "deleteNotification": "Removing notification", + "getGovernanceSettingsState": "Reading governance settings", + "getGovernanceScopeStepState": "Reading governance scope", + "applyGovernanceScopeStepPatch": "Preparing governance scope changes", + "getCostManagementState": "Reading cost management data", + "fetchServices": "Searching services", + "fetchServiceFacets": "Analyzing service categories", + "searchRepositoryKnowledge": "Searching knowledge base", + "fetchGovernanceServices": "Fetching governance data", + "fetchGovernanceServiceReport": "Fetching governance report", + "listGovernanceStrategies": "Fetching governance strategies", + "fetchMonitoringOverview": "Fetching monitoring overview", + "fetchMonitoringInstance": "Fetching instance monitoring data", + "fetchCostOverview": "Fetching cost overview", + "fetchCostInstances": "Fetching instance costs", + "fetchCostInstanceTimeseries": "Fetching cost trends", + "searchPortfolioServices": "Searching portfolio assets", + "viewApiInstanceDetails": "Loading instance details", + "viewApiInstanceMonitoring": "Loading instance monitoring", + "viewApiInstancePolicies": "Loading instance policies", + "viewApiVersionInstances": "Loading API instances", + "viewApiVersionGovernanceReport": "Loading governance report", + "showObservabilityPerformance": "Loading observability dashboards", + "showObservabilityReports": "Loading observability reports", + "listTopologyApis": "Listing APIs in topology", + "listTopologyApiVersions": "Listing API versions", + "listTopologyApiInstances": "Listing API instances", + "listTopologyInstancePolicies": "Listing instance policies", + "listTopologyGateways": "Listing gateways", + "listTopologyEnvironments": "Listing environments", + "queryTopologyAggregates": "Analyzing API topology", + "selectActiveProvider": "Selecting provider", + "selectActiveEnvironment": "Selecting environment", + "selectActiveBusinessGroup": "Selecting business group", + "fallback": "Working", + "tool": { + "login": "Logging in to Anypoint Platform", + "logout": "Logging out", + "list_business_groups": "Fetching business groups", + "get_business_group": "Getting business group details", + "set_business_group": "Switching business group", + "get_business_group_state": "Checking current business group", + "get_app_view_state": "Reading current page context", + "navigate_to_page": "Navigating", + "navigate_to_api": "Opening API", + "navigate_to_api_detail": "Opening API details", + "navigate_to_instance_detail": "Opening instance details", + "navigate_to_policy_selector": "Opening policy selector", + "navigate_to_instance_create": "Opening instance creation", + "navigate_to_version_create": "Opening version creation", + "navigate_to_add_provider": "Opening provider connection", + "show_entity_detail": "Opening entity details", + "show_api_catalog": "Opening API catalog", + "get_service_listing_state": "Reading catalog view", + "get_service_detail_state": "Reading service details", + "get_instance_detail_state": "Reading instance details", + "get_policy_form_state": "Reading policy configuration", + "get_policy_selector_state": "Reading available policies", + "select_policy_in_selector": "Selecting a policy", + "apply_policy_form_patch": "Preparing policy configuration changes", + "apply_tool_mapping_form_patch": "Preparing tool description optimizations", + "get_gateway_form_state": "Reading gateway configuration", + "apply_gateway_form_patch": "Preparing gateway configuration changes", + "get_monitoring_dashboard_state": "Reading monitoring dashboard", + "apply_monitoring_card_patch": "Preparing monitoring card", + "translate_monitoring_query_to_amql": "Generating monitoring query", + "build_monitoring_card": "Building monitoring chart", + "get_scanner_list_state": "Reading scanners", + "get_scanner_detail_state": "Reading scanner details", + "get_scanner_form_state": "Reading scanner configuration", + "run_scanner": "Running scanner", + "delete_scanner": "Removing scanner", + "apply_scanner_form_patch": "Preparing scanner changes", + "get_notification_list_state": "Reading notifications", + "get_notification_create_state": "Reading notification form", + "get_notification_settings_state": "Reading notification settings", + "create_notification": "Creating notification", + "delete_notification": "Removing notification", + "get_governance_settings_state": "Reading governance settings", + "get_governance_scope_step_state": "Reading governance scope", + "apply_governance_scope_step_patch": "Preparing governance scope changes", + "get_cost_management_state": "Reading cost management data", + "fetch_services": "Searching services", + "fetch_service_facets": "Analyzing service categories", + "search_repository_knowledge": "Searching knowledge base", + "fetch_governance_services": "Fetching governance data", + "fetch_governance_service_report": "Fetching governance report", + "list_governance_strategies": "Fetching governance strategies", + "fetch_monitoring_overview": "Fetching monitoring overview", + "fetch_monitoring_instance": "Fetching instance monitoring data", + "fetch_cost_overview": "Fetching cost overview", + "fetch_cost_instances": "Fetching instance costs", + "fetch_cost_instance_timeseries": "Fetching cost trends", + "search_portfolio_services": "Searching portfolio assets", + "view_api_instance_details": "Loading instance details", + "view_api_instance_monitoring": "Loading instance monitoring", + "view_api_instance_policies": "Loading instance policies", + "view_api_version_instances": "Loading API instances", + "view_api_version_governance_report": "Loading governance report", + "show_observability_performance": "Loading observability dashboards", + "show_observability_reports": "Loading observability reports", + "list_topology_apis": "Listing APIs in topology", + "list_topology_api_versions": "Listing API versions", + "list_topology_api_instances": "Listing API instances", + "list_topology_instance_policies": "Listing instance policies", + "list_topology_gateways": "Listing gateways", + "list_topology_environments": "Listing environments", + "query_topology_aggregates": "Analyzing API topology", + "select_active_provider": "Selecting provider", + "select_active_environment": "Selecting environment", + "select_active_business_group": "Selecting business group" + } + }, + "metricDrillDownPanel": { + "searchPlaceholder": "Search by name…", + "searchAriaLabel": "Search rows by name", + "noSearchResults": "No results match your search.", + "noData": "No data in this scope.", + "headerRank": "Rank", + "headerService": "Service", + "headerActive": "Active", + "headerTotal": "Total", + "headerInstance": "Instance", + "headerEnvironment": "Environment", + "header4xxErrors": "4xx Errors", + "header5xxErrors": "5xx Errors", + "headerTotalErrors": "Total Errors", + "headerPctErrors": "% of Overall Errors", + "headerAvgP95Latency": "Average P95 Latency", + "headerRequests": "Requests", + "colTotalRequests": "Total Requests", + "colErrorRate": "Error Rate", + "colViolations": "Violations", + "colValue": "Value", + "activeTitleHint": "Active instances in scope", + "totalTitleHint": "Total instances in scope", + "pctErrorsTitleHint": "Share of total errors across all instances in this drill-down scope.", + "showingRange": "Showing {start}–{end} of {total}", + "rowsPerPage": "Rows per page", + "previousPageAriaLabel": "Previous page of contributors", + "previous": "Previous", + "nextPageAriaLabel": "Next page of contributors", + "next": "Next" + }, + "unifiedSearchFilter": { + "searchPlaceholderOpen": "Search types, services, instances…", + "searchPlaceholderClosed": "Search services, instances…", + "searchAriaLabel": "Search types, services, and instances", + "clearFilterAriaLabel": "Clear search filter", + "listboxAriaLabel": "Unified search", + "clearSelection": "Clear selection", + "noResults": "No results found", + "typesHeader": "Types", + "servicesHeader": "Services", + "instancesHeader": "Instances", + "searchPlaceholder": "Search services, instances…", + "searchAllPlaceholder": "Search types, services, instances…", + "clearFilter": "Clear search filter", + "unifiedSearch": "Unified search", + "types": "Types", + "services": "Services", + "instances": "Instances" + }, + "metricDrillDownDrawer": { + "closeBackdropAriaLabel": "Close drill-down drawer", + "atDate": "at {date}", + "activeFiltersAriaLabel": "Active filters", + "closeDetailsAriaLabel": "Close {label} details", + "closeDrawer": "Close drill-down drawer", + "activeFilters": "Active Filters", + "filterChipLabel": "{label}:", + "closeDetailsAria": "Close {label} details" + }, + "topicMultiSelect": { + "editAriaLabel": "Edit {name}", + "deleteAriaLabel": "Delete {name}", + "loading": "Loading…", + "noTopics": "No topics yet", + "createNewTopic": "Create new topic", + "removeAriaLabel": "Remove {name} from this route", + "selectExistingPlaceholder": "Select topics…", + "noSelectableTopics": "All topics are already in use." + }, + "semanticServicePicker": { + "loading": "Loading…", + "selectPlaceholder": "Select a semantic service…", + "searchPlaceholder": "Search…", + "cantFindHint": "Can't find a semantic service for your use case?", + "configureLink": "Configure Semantic Service", + "categoryBasic": "Basic", + "categoryAdvanced": "Advanced", + "noServicesFound": "No services found", + "activeBadge": "Active", + "cantFindServicePrompt": "Can’t find a semantic service for your use case? ", + "configureService": "Configure Semantic Service", + "basicTab": "Basic", + "advancedTab": "Advanced" + }, + "semanticSearchResultCard": { + "heading": "Portfolio Search Results", + "yourOrganization": "Your Organization ({count})", + "publicCatalog": "MuleSoft Public Catalog ({count})", + "noResults": "No results found for \"{query}\"", + "portfolioSearchResults": "Portfolio Search Results", + "mulesoftPublicCatalog": "MuleSoft Public Catalog ({count})", + "noResultsFor": "No results found for \"{query}\"" + }, + "createTopicModal": { + "nameLabel": "Prompt topic name", + "namePlaceholder": "E.g.: Code", + "utterancesPlaceholder": "E.g.: How do I set up a loop in Python?\nCan you explain this JavaScript function?\nWrite me a simple database connection query.\nWhy is my API returning a 500 error?", + "duplicateNameError": "That topic name is already taken. Enter a unique name.", + "nameRequiredError": "Enter a topic name.", + "titleEdit": "Edit prompt topic", + "titleCreate": "Create prompt topic", + "save": "Save", + "utterancesRequired": "Enter at least one utterance.", + "invalidFileType": "Only .csv or .txt files are allowed.", + "fileTooLarge": "File is too large. Max file size: 500 KB.", + "failedToReadFile": "We couldn't read the file. Try again.", + "closeAriaLabel": "Close", + "utterancesLabel": "Prompt utterances (type or upload)", + "utterancesGuidanceAriaLabel": "Prompt utterances guidance", + "tooltipTypePaste": "Type or paste utterances, separating by line break.", + "tooltipMaxUtterances": "Max 10 utterances / 500 characters per line.", + "tooltipFileTypes": "Supported file types: .csv, .txt.", + "tooltipMaxFileSize": "Max file size: 500 KB.", + "uploadMoreUtterances": "Upload more utterances", + "uploadUtterances": "Upload utterances", + "dragDropMore": "or drag and drop more files here to append", + "dragDrop": "or drag and drop a file here", + "delete": "Delete", + "cancel": "Cancel", + "defaultNameLabel": "Prompt topic name", + "defaultNamePlaceholder": "E.g.: Code", + "defaultUtterancesPlaceholder": "E.g.: How do I set up a loop in Python?\nCan you explain this JavaScript function?\nWrite me a simple database connection query.\nWhy is my API returning a 500 error?", + "editTitle": "Edit prompt topic", + "createTitle": "Create prompt topic", + "saveLabel": "Save", + "fileTypeError": "Only .csv or .txt files are allowed.", + "fileTooLargeError": "File is too large. Max file size: 500 KB.", + "fileReadError": "We couldn't read the file. Try again.", + "utterancesHeading": "Prompt utterances (type or upload)", + "utterancesTooltipAriaLabel": "Prompt utterances guidance", + "utterancesTooltipLine1": "Type or paste utterances, separating by line break.", + "utterancesTooltipLine2": "Max 10 utterances / 500 characters per line.", + "utterancesTooltipLine3": "Supported file types: .csv, .txt.", + "utterancesTooltipLine4": "Max file size: 500 KB.", + "uploadMore": "Upload more utterances", + "uploadInitial": "Upload utterances", + "dropHintMore": "or drag and drop more files here to append", + "dropHintInitial": "or drag and drop a file here" + }, + "routeListEditor": { + "noFallback": "No fallback", + "routingStrategyLabel": "Routing strategy", + "routingStrategyTooltip": "Model-based routes by model parameter. Semantic routes by prompt content.", + "modelBased": "Model-based", + "semantic": "Semantic", + "semanticServiceLabel": "Semantic service setup", + "semanticServiceTooltip": "Select a semantic service for prompt-based routing.", + "routeCount": "{count} {count, plural, one {route} other {routes}} configured", + "deleteRouteAriaLabel": "Delete route", + "addRoute": "Add Route", + "advancedRouting": "Advanced routing", + "fallbackRouteLabel": "Fallback route", + "fallbackRouteTooltip": "When the primary route is unavailable, traffic will be directed to this fallback route.", + "semanticThresholdDesc": "When semantic match fails or accuracy is less than:", + "semanticThresholdTooltip": "Set the confidence threshold below which the fallback route is used.", + "modelPlaceholder": "e.g., anthropic.claude-3-5-sonnet-v2:0", + "notApplicable": "Not Applicable", + "promptGuardLabel": "Semantic prompt guard", + "promptGuardTooltip": "Add phrases or keywords that should be blocked from reaching any route.", + "removeAriaLabel": "Remove", + "promptGuardPlaceholder": "Add prompt guard entries…", + "addPromptGuard": "Add prompt guard", + "addPromptGuardTitle": "Add prompt guard", + "editPromptGuardTitle": "Edit prompt guard", + "advancedRoutingDesc": "Route fallback and filtering options", + "routeNameFallback": "Route {letter}", + "fallbackOptionLabel": "{name}: {providerName}", + "routingStrategy": "Routing strategy", + "semanticServiceSetup": "Semantic service setup", + "semanticServiceSetupTooltip": "Select a semantic service for prompt-based routing.", + "routesConfigured": "{count, plural, one {# route configured} other {# routes configured}}", + "fallbackRoute": "Fallback route", + "semanticMatchFailsPrefix": "When semantic match fails or accuracy is less than:", + "fallbackModelPlaceholder": "e.g., anthropic.claude-3-5-sonnet-v2:0", + "semanticPromptGuard": "Semantic prompt guard", + "semanticPromptGuardTooltip": "Add phrases or keywords that should be blocked from reaching any route.", + "editEntryAriaLabel": "Edit {name}", + "removeEntryAriaLabel": "Remove {name}", + "advancedRoutingDescription": "Route fallback and filtering options", + "selectSemanticServicePrompt": "Select a semantic service setup to configure routes.", + "addRouteTooltip": "Add additional routes for load balancing or semantic routing", + "fallbackCardTitle": "Fallback", + "fallbackCardRouteLabel": "Route", + "fallbackCardModelLabel": "Model", + "advancedOptions": "Advanced Options", + "advancedOptionsDesc": "Filter prompts before they reach a route.", + "selectPromptGuardTopicPlaceholder": "Select topics…", + "noSelectablePromptGuardTopics": "No topics available — all are assigned to a route or guard.", + "loadingSemanticServices": "Loading semantic services…" + }, + "routeCardContent": { + "topicsLabel": "Topics", + "topicsTooltip": "Assign prompt topics to this route.", + "targetHeading": "Target", + "providerLabel": "Provider", + "modelLabel": "Model", + "modelPlaceholder": "e.g., anthropic.claude-3-5-sonnet-v2:0", + "notApplicable": "Not Applicable", + "authenticationHeading": "Authentication", + "configurationHeading": "Configuration", + "topics": "Topics", + "target": "Target", + "provider": "Provider", + "model": "Model", + "authentication": "Authentication", + "configuration": "Configuration" + }, + "policyConfigAgenticActions": { + "explainPolicy": "Explain this policy", + "reviewConfig": "Review this configuration", + "fixWithContext": "Fix with governance context", + "prepFailed": "We couldn't prepare the {action} request. Try again.", + "noPrompt": "No prompt returned for {action}.", + "explainDisplay": "Explain \"{name}\"", + "reviewDisplay": "Review current \"{name}\" configuration", + "fixDisplay": "Fix \"{name}\" using governance findings", + "unableToAction": "We couldn't {action} this policy. Try again." + }, + "policyFormPatching": { + "alreadyMatch": "The proposed policy changes already match the current form values.", + "applied": "The proposed policy changes were applied to the form.", + "appliedAlt": "The proposed changes were applied to the policy form.", + "noPatch": "The proposed policy update did not include a usable patch.", + "noConfigChanges": "The proposed policy update did not include configuration changes.", + "noRecognizedFields": "The proposed policy update did not include any recognized policy fields." + }, + "registryFormDisplay": { + "invalidInput": "Enter a valid value.", + "authRequired": "Authentication required", + "sessionExpired": "Session expired", + "permissionDenied": "Permission denied", + "registryError": "Registry error", + "requestTimedOut": "Request timed out", + "serviceUnreachable": "Service unreachable", + "assetAlreadyExists": "Asset already exists", + "tooManyRequests": "Too many requests", + "unexpectedError": "Unexpected error", + "retry": "Retry", + "assetIdLabel": "Asset ID:", + "pipelineStepsLabel": "Pipeline steps:", + "pipelineStepsHeading": "Pipeline steps:" + }, + "createAssetPage": { + "createAgent": "Register Agent Manually", + "agentPackage": "Agent package", + "agents": "Agents", + "createMcpServer": "Register MCP Server Manually", + "mcpServerPackage": "MCP Server package", + "mcpServers": "MCP Servers", + "createApi": "Register API Manually", + "apiPackage": "API package", + "apis": "APIs", + "createLlm": "Create LLM", + "llmPackage": "LLM package", + "llmProxies": "LLM Proxies", + "requestTimedOut": "Request timed out", + "agentTitle": "Create Agent", + "agentFileLabel": "Agent package", + "agentCatalogLabel": "Agents", + "mcpTitle": "Create MCP Server", + "mcpFileLabel": "MCP Server package", + "mcpCatalogLabel": "MCP Servers", + "apiTitle": "Create API", + "apiFileLabel": "API package", + "apiCatalogLabel": "APIs", + "llmTitle": "Create LLM", + "llmFileLabel": "LLM package", + "llmCatalogLabel": "LLM Proxies", + "entityCreatedSuccessfully": "{entity} was created.", + "entityBeingCreated": "{entity} is being created", + "failedToCreateEntity": "We couldn't create the {entity}. Try again.", + "agentNoun": "Agent", + "mcpServerNoun": "MCP Server", + "apiNoun": "API", + "llmNoun": "LLM" + }, + "createVersionPage": { + "platformMulesoft": "MuleSoft", + "platformAgentforce": "Agentforce", + "platformOther": "Other", + "requestTimedOut": "Request timed out", + "submitLabel": "Create Version", + "heading": "Add Version to {name}", + "title": "Add Version to {name}", + "entityNewVersionCreatedSuccessfully": "New {entity} version was created.", + "entityNewVersionBeingCreated": "New {entity} version is being created", + "failedToCreateNewVersion": "We couldn't create a new {entity} version. Try again." + }, + "guardrailGovernedServicesTab": { + "conformance": "Conformance", + "governedServices": "governed services", + "conformant": "Conformant", + "nonConformant": "Nonconformant", + "pending": "Pending", + "noServicesGoverned": "No services governed", + "conformantPercent": "{percent}% conformant", + "identifiedIssues": "Identified Issues", + "violations": "Violations", + "warnings": "Warnings", + "info": "Info", + "governedServicesCount": "Governed Services ({count})", + "totalGovernedServices": "Total Governed Service{count, plural, one {} other {s}}", + "conformanceBarAria": "{conformant} conformant, {nonConformant} not conformant, {pending} pending out of {total} governed services", + "columnService": "Service", + "columnType": "Type", + "columnProvider": "Provider", + "columnInstances": "Instances", + "columnConformance": "Conformance", + "columnActions": "Actions", + "viewReport": "View report", + "allTypes": "All types", + "anyProvider": "Any provider", + "searchPlaceholder": "Search services…", + "loadingState": "Loading governed services…", + "emptyState": "No services governed by this control.", + "governedServicesSuffix": "governed services", + "percentConformant": "{percent}% conformant", + "governedServicesHeading": "Governed Services ({count})", + "noMatchingServices": "No services governed by this control." + }, + "guardrailRulesetCard": { + "violation": "violation", + "warning": "warning", + "infoSeverity": "info", + "versionAriaLabel": "Version for {title}", + "noRules": "No rules configured for this ruleset.", + "ruleNameHeader": "Rule Name & Description", + "severityHeader": "Severity", + "versionForAriaLabel": "Version for {title}", + "columnRuleNameDescription": "Rule Name & Description", + "columnSeverity": "Severity", + "severityLabel": { + "violation": "violation", + "warning": "warning", + "info": "info" + }, + "rulesUsedCount": "{used} of {total} {total, plural, one {rule} other {rules}} used" + }, + "readOnlyScopeConditionList": { + "allIncluded": "All matching services are automatically included.", + "anyMatchIncluded": "We include any services that match the filter criteria.", + "groupHeading": "{target} that meet all conditions ({mode})", + "allServicesIncluded": "We automatically include all matching services.", + "matchingServicesIncluded": "Any services that match the filter criteria will automatically be included.", + "targetMeetsConditions": "{targetLabel} that meet all conditions ({modeLabel})" + }, + "structuredScopeSummary": { + "labelServiceType": "Service Type", + "labelTags": "Tags", + "labelCategories": "Categories", + "labelInstances": "Instances", + "allServiceTypes": "All", + "anyTag": "Any tag", + "anyCategory": "Any category", + "anyEnvironment": "Any environment", + "noInstances": "No instances", + "anyEnvironmentsOfType": "Any {type} environments", + "envTypeWithNames": "{type}: {names}" + }, + "governanceSettings": { + "actionsButton": "Actions", + "editFromAnypoint": "Edit (From Anypoint Platform)", + "editStrategy": "Edit Strategy", + "deleteStrategy": "Delete Strategy", + "automatedPolicyEdit": "Edit", + "automatedPolicyDelete": "Delete", + "automatedPolicyDisable": "Disable", + "automatedPolicyEnable": "Enable", + "optional": "(Optional)", + "removeAriaLabel": "Remove {value}", + "addMorePlaceholder": "Add more…", + "noMatches": "No matches", + "legacyRulesetDescription": "Legacy ruleset from Anypoint governance catalog.", + "latestVersion": "Latest", + "noActiveScopeStep": "We can't apply your changes. Activate a governance scope step and try again.", + "chooseOrganization": "Choose an organization to manage governance.", + "loadingAriaLabel": "Loading governance configuration", + "heading": "Governance Strategies", + "pageDescription": "Configure and manage strategies to monitor, report, enforce, and block noncompliant activity across your services.", + "createButton": "Create governance strategy", + "refreshReportButton": "Refresh report", + "refreshing": "Refreshing…", + "refreshQueued": "Report refresh queued. Conformance status will update shortly.", + "refreshBusy": "Another refresh is already running. Try again once it completes.", + "refreshFailed": "Unable to trigger report refresh right now.", + "scopeType": { + "restApi": "REST API", + "httpApi": "HTTP API", + "asyncApi": "Async API", + "agent": "Agent", + "mcp": "MCP" + }, + "target": { + "gateways": "Gateways", + "apis": "APIs" + }, + "instance": { + "withoutInstances": "APIs without instances", + "allApis": "All APIs" + }, + "fallback": { + "anyTag": "Any tag", + "anyCategory": "Any category" + }, + "scopeRow": { + "serviceTypes": "Service Types", + "tags": "Tags", + "categories": "Categories", + "apiInstance": "API Instance" + }, + "runtime": { + "flexGateways": "Omni Gateways", + "muleGateways": "Mule Gateways", + "allRuntimes": "All runtimes", + "allEndpointTypes": "All endpoint types" + }, + "error": { + "loadStrategies": "We couldn't load governance strategies. Try again.", + "loadRuleCatalog": "We couldn't load rule catalog and scope options. Try again.", + "previewScope": "We couldn't preview scope. Try again.", + "createStrategy": "We couldn't create the strategy. Try again.", + "updateStrategy": "We couldn't update the strategy. Try again.", + "createUncertain": "We couldn't confirm that your guardrail was created within the time we waited. Refresh the list to check whether it exists; if not, try again.", + "updateUncertain": "We couldn't confirm that your guardrail update was applied within the time we waited. Refresh the list to check whether it took effect; if not, try again." + }, + "success": { + "guardrailCreated": "Control was created.", + "fromAnypointCreated": "Strategy was created from Anypoint Platform.", + "strategyUpdated": "Strategy was updated.", + "fromAnypointUpdated": "Strategy was updated from Anypoint Platform.", + "guardrailDeleted": "Control deleted.", + "automatedPolicyDeleted": "Automated policy deleted." + }, + "pending": { + "guardrailCreating": "Creating your control — this may take a moment.", + "automatedPolicyCreating": "Creating your automated policy — this may take a moment." + }, + "dashboard": { + "activeStrategies": "Active Strategies", + "strategyTypes": "Strategy Types", + "guardrails": "Controls", + "automatedPolicies": "Automated Policies", + "governanceCoverage": "Governance Coverage", + "disabledCount": "{count} disabled", + "coverageText": "{governed} of {total} services governed by active strategies", + "coverageUnavailable": "Coverage data unavailable" + }, + "breadcrumb": { + "ariaLabel": "Breadcrumb", + "governanceStrategies": "Governance Strategies", + "editStrategy": "Edit Strategy", + "createStrategy": "Create Strategy" + }, + "wizardStep": { + "scope": "Scope", + "whatToApply": "What to Apply", + "notifications": "Notifications", + "nameAndDescription": "Name & Description", + "review": "Review" + }, + "scope": { + "heading": "Select Services To Govern", + "apisAgentsMcp": "APIs, Agents, MCP Servers", + "gateways": "Gateways", + "serviceTypesLabel": "Service Types", + "restApi": "REST API", + "asyncApi": "AsyncAPI", + "httpApi": "HTTP API", + "agent": "Agent", + "mcp": "MCP", + "grpc": "gRPC", + "tagsLabel": "Tags", + "tagsPlaceholder": "Select tags…", + "categoriesLabel": "Categories", + "categoriesPlaceholder": "Select categories…", + "apiInstanceHeading": "API Instance", + "allApis": "All APIs", + "onlyWithInstances": "Include only APIs with instances", + "onlyWithoutInstances": "Only APIs without instances", + "loadingPreview": "Loading Scope Preview…", + "previewButton": "Preview Governed Scope" + }, + "preview": { + "heading": "Governed Scope Preview", + "matchedTargets": "{count} matched targets", + "closeAriaLabel": "Close", + "loadingPreview": "Loading scope preview…", + "noTargets": "No targets found for this scope.", + "serviceName": "Service Name", + "type": "Type", + "provider": "Provider", + "tags": "Tags", + "categories": "Categories", + "instances": "Instances", + "unknownProvider": "Unknown", + "closeButton": "Close" + }, + "rules": { + "heading": "Rules to Apply", + "rulesetsSelected": "{count} rulesets selected", + "selectAllAriaLabel": "Select all rules in {name}", + "legacyBadge": "Legacy", + "noLegacyRulesets": "No legacy rulesets available for this scope." + }, + "notifications": { + "heading": "Notifications", + "description": "Configure settings for automated conformance notifications. You can always change it later.", + "warningTitle": "This feature may fall out of May release scope", + "warningDetail": "Notification functionality is under review and timeline is subject to change.", + "nonconformanceHeading": "Nonconformance notification", + "enabled": "Enabled", + "disabled": "Disabled", + "conditionLabel": "Condition", + "conditionValue": "Latest version of an API becomes nonconformant", + "channelLabel": "Channel", + "channelValue": "Email", + "recipientsLabel": "Recipients", + "apiPublisher": "API Publisher", + "apiContact": "API Contact", + "ifAvailable": "(if available)", + "others": "Others", + "emailPlaceholder": "max@mulesoft.com", + "emailHint": "Enter emails (comma separated)", + "apiPublisherRecipient": "API publisher", + "apiContactRecipient": "API contact", + "othersRecipient": "others" + }, + "nameDescription": { + "strategyName": "Strategy Name", + "description": "Description" + }, + "review": { + "heading": "Review", + "description": "Review your governance strategy configuration before saving.", + "strategyType": "Strategy Type", + "guardrails": "Controls", + "fromAnypoint": "From Anypoint Platform", + "governanceScope": "Governance Scope", + "targetLabel": "Target", + "serviceTypesLabel": "Service Types", + "tagsLabel": "Tags", + "categoriesLabel": "Categories", + "apiInstanceLabel": "API Instance", + "rulesToApply": "Rules to Apply", + "rulesetsSelected": "{count} rulesets selected", + "rulesInRuleset": "{count} {count, plural, one {rule} other {rules}} in this ruleset", + "notificationsHeading": "Notifications", + "statusLabel": "Status", + "generalInformation": "General Information", + "strategyNameLabel": "Strategy Name", + "descriptionLabel": "Description" + }, + "wizardButtons": { + "cancel": "Cancel", + "previous": "Previous", + "next": "Next", + "createStrategy": "Create Strategy", + "saveChanges": "Save Changes" + }, + "details": { + "automatedPolicy": "Automated Policy", + "guardrails": "Controls", + "fromAnypoint": "From Anypoint Platform", + "rulesetsLabel": "Rulesets", + "targetLabel": "Target", + "priorityLabel": "Priority", + "governedServicesLabel": "Governed Services", + "createdLabel": "Created", + "updatedLabel": "Updated", + "ruleCount": "{count} ({total} {total, plural, one {rule} other {rules}})", + "limitedFunctionalityTitle": "Limited Functionality for From Anypoint Controls", + "limitedFunctionalityDetail": "This control was created in Anypoint API Governance and has limited ruleset selection and customization options. To access advanced features like conditions configuration, rule-level selection, severity customization, and the full ruleset library, create a new control directly in the enhanced MuleSoft experience.", + "configurationTab": "Configuration", + "governedServicesTab": "Governed Services", + "appliedPolicy": "Applied Policy", + "policyDescription": "Policy configured through API Manager automated policy strategy.", + "scopeHeading": "Scope", + "environmentLabel": "Environment", + "runtimeLabel": "Runtime", + "endpointTypesLabel": "Endpoint Types", + "rulesHeading": "Rules", + "rulesetCount": "{count} {count, plural, one {ruleset} other {rulesets}}", + "ruleCount2": "{count} {count, plural, one {rule} other {rules}}", + "collapseAll": "Collapse all", + "expandAll": "Expand all", + "noRulesets": "No rulesets configured for this strategy.", + "editFromAnypoint": "Edit (From Anypoint Platform)", + "editStrategy": "Edit Strategy", + "back": "Back", + "unavailable": "Selected strategy is unavailable." + }, + "actions": "Actions", + "pending": { + "guardrailCreating": "Creating your control — this may take a moment.", + "automatedPolicyCreating": "Creating your automated policy — this may take a moment." + } + }, + "mcpWizard": { + "wizard": { + "breadcrumbMcpServers": "MCP Servers", + "breadcrumbCreate": "Create MCP Server", + "breadcrumbEdit": "Edit MCP Server", + "noGatewaysHeading": "No Omni Gateways Available", + "noGatewaysDescription": "MCP servers require an Omni Gateway (v1.2.0+) to deploy. Provision an Omni Gateway in your environment first, then return here to create your MCP server.", + "gatewayLoadErrorHeading": "Unable to Load Gateways", + "gatewayLoadErrorDescription": "We couldn't reach the gateway service after multiple attempts. This is usually a temporary issue — please try again.", + "retryButton": "Retry", + "backToMcpServers": "Back to MCP Servers", + "cancelButton": "Cancel", + "previousButton": "Previous", + "nextButton": "Next", + "createAndDeploy": "Create & Deploy", + "updateMcpServer": "Update MCP Server", + "hydrationLoading": "Loading deployed configuration…", + "toastSaasCatalogLoading": "Loading SaaS catalog…", + "toastSelectGateway": "Select a gateway.", + "toastSelectSource": "Select at least one source.", + "deployStarting": "Starting provisioning…", + "deployUpdating": "Updating MCP server…", + "deployPipelineStarted": "Provisioning pipeline started…", + "deploySuccess": "MCP server was deployed: {url}.", + "updateSuccess": "MCP server was updated.", + "provisioningCompleted": "Provisioning completed", + "updateCompleted": "Update completed", + "updateTimedOut": "Update timed out — check the MCP servers list for status.", + "provisioningTimedOut": "Provisioning timed out — check the MCP servers list for status.", + "provisioningMayHaveCompleted": "Provisioning may have completed — check the MCP servers list", + "stepSelectSource": "Select Source, Instance & Tools", + "stepSaasCredentials": "SaaS Credentials", + "stepReview": "Review", + "toastApiMissingInstanceUrl": "\"{apiName}\" can't be wrapped as an MCP server yet: the selected API Manager instance has no endpoint URL. Deploy the instance in API Manager (attach a runtime) and try again.", + "runtimeAuthWarning": "This MCP endpoint is deployed without inbound authentication. Apply a Flex Gateway inbound auth policy (for example, client-id-enforcement or jwt-validation) before production use.", + "gatewayLoadErrorHeading": "Unable to load gateways", + "gatewayLoadErrorDescription": "We couldn't reach the gateway service after multiple attempts. This is usually a temporary issue. Try again.", + "retryButton": "Retry" + }, + "versionDropdown": { + "latest": "latest", + "loading": "Loading versions…", + "empty": "No versions available" + }, + "apiToolsTable": { + "method": "Method", + "description": "Description", + "descriptionTooltip": "Description of what this tool does", + "path": "Path", + "toolName": "Tool Name", + "editDescription": "Edit description", + "editToolName": "Edit tool name", + "toolActions": "Tool actions", + "splitTool": "Split tool", + "emptyState": "No tools available", + "emptyStateReadOnly": "No read-only tools available", + "duplicateToolNameError": "Another tool in this API already uses this name.", + "loadingOperations": "Loading operations…" + }, + "saasToolsTable": { + "method": "Method", + "description": "Description", + "descriptionTooltip": "Description of what this tool does", + "path": "Path", + "toolName": "Tool Name" + }, + "operationSplitModal": { + "heading": "Split tool", + "closeAriaLabel": "Close", + "methodLabel": "Method", + "pathLabel": "Path", + "toolNameLabel": "Tool Name", + "descriptionLabel": "Description", + "cancel": "Cancel", + "split": "Split", + "toastSuccess": "Tool was split." + }, + "apiInstanceModal": { + "heading": "Advanced settings for {name}", + "selectInstance": "Select Instance", + "idHeader": "ID", + "environmentHeader": "Environment", + "upstreamUrlHeader": "Upstream URL", + "envProduction": "Production", + "envSandbox": "Staging", + "envDevelopment": "QA", + "routeLabel": "Route label", + "routeTooltip": "Specifies the upstream service to be called when this tool is invoked.", + "secretGroupLabel": "Secret Group", + "secretGroupPlaceholder": "Select a Secret Group", + "tlsLabel": "TLS Context", + "tlsOptional": "(Optional)", + "tlsNone": "None", + "tlsContextPlaceholder": "Select a TLS Context", + "tlsNoResults": "No results found", + "cancel": "Cancel", + "save": "Save" + }, + "toolSelectionPanel": { + "heading": "Select Tools", + "subheading": "Choose which tools to expose from your selected APIs and SaaS systems", + "readOnlyCheckbox": "Select read-only tools", + "readOnlyCheckboxTooltip": "Applies to APIs only", + "loadingText": "Loading deployed tools…", + "emptyStateLine1": "Select APIs or SaaS systems from the left.", + "emptyStateLine2": "to configure their tools", + "changeInstance": "Change Instance", + "selectedCount": "{selected} of {total} selected", + "toolsSelected": "{count} {count, plural, one {tool} other {tools}} selected", + "configureUpstreamUrlHint": "Configure the upstream URL.", + "editUpstreamUrlAria": "Edit upstream URL", + "saveChangesAria": "Save changes", + "discardChangesAria": "Discard changes", + "noToolsWarning": "Select at least one tool to proceed." + }, + "stepSelectSource": { + "heading": "Select APIs and SaaS systems", + "subheading": "Choose sources to expose as MCP tools", + "searchPlaceholder": "Search APIs and SaaS systems…", + "filterAll": "All", + "filterApis": "APIs", + "filterSaas": "SaaS", + "sortButton": "Sort", + "sortZToA": "Sort Z to A", + "sortAToZ": "Sort A to Z", + "selected": "selected", + "loadingDeployed": "Loading deployed systems…", + "noItemsFound": "No items found", + "operations": "operations", + "tools": "tools", + "loading": "Loading…" + }, + "stepSaasCredentials": { + "leaveBlankPlaceholder": "Leave blank to keep existing", + "hideButton": "Hide", + "showButton": "Show", + "credentialsWarning": "Credentials not configured. You can proceed but the upstream will reject requests until you add them.", + "testing": "Testing…", + "testConnection": "Test Connection", + "requestFailed": "We couldn't complete the request. Try again.", + "authHeaderPrefix": "Auth header:", + "credentialsLabel": "Credentials", + "credentialPrefixAria": "credential prefix", + "oauth2Heading": "OAuth2 credentials (client credentials grant)", + "tokenUrlLabel": "Token URL", + "tokenUrlAria": "OAuth2 token URL", + "tokenUrlUnresolvedHint": "Fill in tenant fields above to resolve the token URL.", + "scopesAria": "OAuth2 scopes", + "scopesLabel": "Scopes", + "clientIdLabel": "Client ID", + "clientIdPlaceholder": "OAuth2 client identifier", + "clientIdAria": "Client ID", + "clientSecretLabel": "Client Secret", + "clientSecretPlaceholder": "OAuth2 client secret", + "clientSecretAria": "Client Secret", + "credentialsDeliveryHeader": "Credentials will be sent in the Authorization header (Basic) during token exchange.", + "credentialsDeliveryBody": "Credentials will be sent in the request body during token exchange.", + "testCredentials": "Test Credentials" + }, + "stepReview": { + "advancedConfigHeading": "Advanced Server Configuration", + "editButton": "Edit", + "editServerConfigAriaLabel": "Edit server configuration", + "serverNameLabel": "Server Name", + "versionLabel": "Version", + "descriptionLabel": "Description", + "descriptionPlaceholder": "Describe the business purpose of this MCP server…", + "pathLabel": "Path", + "gatewayLabel": "Gateway", + "noGatewaySelected": "No gateway selected", + "urlLabel": "URL", + "sourcesHeading": "Sources, Instances & Tools", + "editSourcesAriaLabel": "Edit sources, instances and tools", + "noSourcesSelected": "No sources selected", + "apiInstanceIdLabel": "API Instance ID:", + "toolSingular": "tool", + "toolPlural": "tools", + "saasSystemSubheading": "SaaS System", + "requiredPoliciesHeading": "Required Policies", + "policyMcpSupport": "MCP Support", + "policyMcpSchemaValidation": "MCP Schema Validation", + "policyMcpResponseSanitization": "MCP Response Sanitization", + "policyMcpTranscodingRouter": "MCP Transcoding Router", + "policyMcpTranscoding": "MCP Transcoding", + "policyCredentialInjection": "Credential Injection", + "appliedStatus": "Applied", + "inboundLabel": "Inbound", + "outboundLabel": "Outbound" + }, + "serverConfigModal": { + "heading": "Server Configuration", + "closeAriaLabel": "Close", + "serverNameLabel": "Server Name", + "serverNameTooltip": "Only letters and numbers are allowed (no spaces or special characters). This will be used as the subdomain in your server's URL.", + "serverNamePlaceholder": "e.g., SalesOperationsMCPServer", + "serverNameHelperText": "This name identifies your MCP server and becomes the subdomain for your server's URL.", + "serverNameConflict": "That server name is already taken. Enter a unique name.", + "versionLabel": "Version", + "versionPlaceholder": "e.g., 1.0.0", + "versionHelperText": "Semantic version for this MCP server (e.g., 1.0.0, v2.1.3)", + "pathLabel": "Path", + "pathTooltip": "The base path on the gateway for this MCP server. Defaults to a slug derived from the server name (e.g., /my-mcp-server). Must be unique per gateway.", + "pathPlaceholder": "e.g., /my-mcp-server", + "pathHelperText": "Base path on the gateway (derived from server name)", + "pathConflict": "That path is already in use. Enter a unique path.", + "pathLockedNote": "Path cannot be changed after deployment.", + "gatewayLabel": "Gateway", + "selectGateway": "Select a gateway", + "cancelButton": "Cancel", + "saveButton": "Save", + "versionAutoIncrement": "Version is auto-incremented on each update.", + "pathInvalid": "Path may only contain letters, numbers, hyphens, and underscores.", + "versionInvalid": "Version must follow semver format (e.g. 1.0.0)." + }, + "saasUpstreamModal": { + "configureTitle": "Configure Upstream for {name}", + "upstreamUrlHeading": "Upstream URL", + "urlTemplateLabel": "URL Template", + "upstreamUrlAria": "Upstream URL for {name}", + "resolvedUrlAria": "Resolved URL for {name}", + "tenantConfigHeading": "Tenant Configuration", + "optionalSuffix": " (optional)", + "cancel": "Cancel", + "save": "Save" + }, + "upstreamFieldsPanel": { + "upstreamUrlLabel": "Upstream URL", + "upstreamUrlAria": "Upstream URL for {name}", + "resolvedUrlAria": "Resolved URL for {name}", + "tenantConfigLabel": "Tenant configuration", + "optionalSuffix": " (optional)", + "specGapWarning": "Spec gap — these header placeholders have no", + "upstreamFieldsEntryDeclared": "entry declared: {keys}" + } + }, + "toolMappingConfigForm": { + "noOptimizedDescriptions": "The proposed tool mapping update did not include any optimized descriptions.", + "noMatchingTools": "None of the proposed optimizations matched imported tools.", + "applied": "{applied, plural, one {Applied # optimized description to the form.} other {Applied # optimized descriptions to the form.}}", + "appliedWithSkipped": "{applied, plural, one {Applied # optimized description} other {Applied # optimized descriptions}}; {skipped, plural, one {skipped # unknown tool name.} other {skipped # unknown tool names.}}" + }, + "policyReorderList": { + "saveOrder": "Save Order", + "cancel": "Cancel", + "noItems": "No items to reorder.", + "positionLabel": "{name}, position {index} of {total}. Use the arrow keys to reorder, and press Enter to confirm.", + "changePositionFor": "Change position for {name}", + "viewItem": "View {name}" + }, + "connectionsTabDetail": { + "noEndpoints": "No endpoints configured for this {entity}.", + "endpointsHint": "Endpoints are configured when the asset is deployed or registered with an API endpoint.", + "endpointsHeading": "Endpoints" + }, + "llmProxyRoutesEditor": { + "failedToSaveChanges": "We couldn't save your changes. Try again.", + "toast": { + "topicCreated": "Topic \"{name}\" was created.", + "topicCreatedFallback": "Topic was created.", + "failedToCreateTopic": "We couldn't create topic \"{name}\".", + "failedToCreateTopicFallback": "We couldn't create the topic.", + "topicDeleted": "Topic \"{name}\" was deleted.", + "topicDeletedFallback": "Topic was deleted.", + "failedToDeleteTopic": "We couldn't delete topic \"{name}\".", + "failedToDeleteTopicFallback": "We couldn't delete the topic.", + "topicRemovedFromRoute": "Topic \"{name}\" was removed from route.", + "topicRemovedFromRouteFallback": "Topic was removed from route." + } + }, + "omniInlineMonitoring": { + "generatedCard": "Generated card" + }, + "omniArtifactRenderer": { + "renderError": "We couldn't render \"{title}\" — the data format wasn't recognized." + }, + "toolMappingPatchBanner": { + "prompt": "Apply the proposed tool description optimizations?", + "risk": "Risk: {level}", + "confirmationRequired": " - confirmation required", + "applyChanges": "Apply Changes", + "edit": "Edit" + }, + "mcpServerWizard": { + "placeholderKeepExisting": "Leave blank to keep existing", + "showSecret": "Show", + "hideSecret": "Hide", + "requestFailed": "We couldn't complete the request. Try again.", + "credentialsNotConfigured": "Credentials not configured. You can proceed but the upstream will reject requests until you add them.", + "testing": "Testing…", + "testConnection": "Test Connection", + "columnMethod": "Method", + "columnDescription": "Description", + "columnPath": "Path", + "columnToolName": "Tool Name", + "descriptionTooltip": "Description of what this tool does", + "selectToolsHeading": "Select Tools", + "selectToolsSubtitle": "Choose which tools to expose from your selected APIs and SaaS systems", + "selectReadOnlyTools": "Select read-only tools", + "loadingDeployedTools": "Loading deployed tools…", + "selectApisOrSaasFromLeft": "Select APIs or SaaS systems from the left", + "toConfigureTheirTools": "to configure their tools", + "instancePrefix": "Instance: {id}", + "changeInstance": "Change Instance", + "selectedCount": "{selected} of {total} selected", + "removeAriaLabel": "Remove {name}", + "totalToolsSelected": "{count, plural, one {# tool} other {# tools}} selected", + "noReadOnlyToolsAvailable": "No read-only tools available", + "noToolsAvailable": "No tools available", + "editDescriptionAriaLabel": "Edit description", + "editToolNameAriaLabel": "Edit tool name", + "toolActionsAriaLabel": "Tool actions", + "splitToolMenuItem": "Split tool", + "splitToolTitle": "Split tool", + "closeAriaLabel": "Close", + "splitToolPathLabel": "Path", + "splitToolNameLabel": "Tool Name", + "splitToolDescLabel": "Description", + "cancelButton": "Cancel", + "splitButton": "Split", + "toolSplitSuccess": "Tool was split.", + "stepSelectHeading": "Select APIs and SaaS systems", + "stepSelectSubtitle": "Choose sources to expose as MCP tools", + "stepSelectSearchPlaceholder": "Search APIs and SaaS systems…", + "filterAll": "All", + "filterApis": "APIs", + "filterSaas": "SaaS", + "sortZtoA": "Sort Z to A", + "sortAtoZ": "Sort A to Z", + "sortLabel": "Sort", + "selectedCountSuffix": "{count} selected", + "loadingDeployedSystems": "Loading deployed systems…", + "noItemsFound": "No items found", + "operationsCount": "{count} operations", + "loading": "Loading…", + "toolsCount": "{count} tools", + "advancedSettingsTitle": "Advanced settings for {name}", + "selectInstanceHeading": "Select Instance", + "columnId": "ID", + "columnEnvironment": "Environment", + "columnUpstreamUrl": "Upstream URL", + "envProduction": "Production", + "envStaging": "Staging", + "envQa": "QA", + "routeLabel": "Route label", + "routeLabelTooltip": "Specifies the upstream service to be called when this tool is invoked.", + "secretGroupLabel": "Secret Group", + "secretGroupPlaceholder": "Select a Secret Group", + "tlsLabel": "TLS Context", + "optional": "(Optional)", + "tlsNone": "None", + "tlsContextPlaceholder": "Select a TLS Context", + "tlsNoResults": "No results found", + "saveButton": "Save", + "serverConfigTitle": "Server Configuration", + "serverName": "Server Name", + "serverNameTooltip": "Only letters and numbers are allowed (no spaces or special characters). This will be used as the subdomain in your server's URL.", + "serverNamePlaceholder": "e.g., SalesOperationsMCPServer", + "serverNameHelp": "This name identifies your MCP server and becomes the subdomain for your server's URL.", + "serverNameConflict": "That server name is already taken. Enter a unique name.", + "versionLabel": "Version", + "versionPlaceholder": "e.g., 1.0.0", + "versionHelp": "Semantic version for this MCP server (e.g., 1.0.0, v2.1.3)", + "pathLabel": "Path", + "pathTooltip": "The base path on the gateway for this MCP server. Defaults to a slug derived from the server name (e.g., /my-mcp-server). Must be unique per gateway.", + "pathPlaceholder": "e.g., /my-mcp-server", + "pathHelp": "Base path on the gateway (derived from server name)", + "pathConflict": "That path is already in use. Enter a unique path.", + "pathImmutable": "Path cannot be changed after deployment.", + "gatewayMissingPublicUrl": "Selected gateway has no public URL configured. Choose a different gateway.", + "gatewayLabel": "Gateway", + "selectAGateway": "Select a gateway", + "step1Label": "Select Source, Instance & Tools", + "step2Label": "SaaS Credentials", + "step3Label": "Review", + "deployedApiDescription": "Deployed API ({count} tools)", + "toastLoadingSaasCatalog": "Loading SaaS catalog…", + "toastSelectGateway": "Select a gateway.", + "statusUpdating": "Updating MCP server…", + "statusStarting": "Starting provisioning…", + "toastUpdateStarted": "Update started", + "toastUpdateCompleted": "Update completed", + "stepStatusFallback": "Step {current}/{total}", + "toastMcpUpdated": "MCP server was updated.", + "updateFailedPrefix": "We couldn't save your changes. {error}", + "unknownError": "Unknown error", + "updateTimedOut": "Update may have completed — check the MCP servers list", + "updateTimeoutFinal": "Update timed out — check the MCP servers list for status.", + "toastSelectSource": "Select at least one source.", + "provisionFailed": "We couldn't provision the server. {message}", + "unknownErrorShort": "Unknown error", + "breadcrumbMcpServers": "MCP Servers", + "breadcrumbCreate": "Create MCP Server", + "breadcrumbEdit": "Edit MCP Server", + "noFlexGatewaysTitle": "No Omni Gateways Available", + "noFlexGatewaysBody": "MCP servers require an Omni Gateway (v1.2.0+) to deploy. Provision an Omni Gateway in your environment first, then return here to create your MCP server.", + "backToMcpServers": "Back to MCP Servers", + "loadingDeployedConfig": "Loading deployed configuration…", + "previousButton": "Previous", + "nextButton": "Next", + "updateMcpServer": "Update MCP Server", + "createAndDeploy": "Create & Deploy", + "toastProvisioningCompleted": "Provisioning completed", + "advancedServerConfig": "Advanced Server Configuration", + "editServerConfigAriaLabel": "Edit server configuration", + "editButton": "Edit", + "serverNameField": "Server Name", + "versionField": "Version", + "descriptionField": "Description", + "descriptionPlaceholder": "Describe the business purpose of this MCP server…", + "pathField": "Path", + "gatewayField": "Gateway", + "noGatewaySelected": "No gateway selected", + "urlField": "URL", + "sourcesInstancesTools": "Sources, Instances & Tools", + "editSourcesAriaLabel": "Edit sources, instances and tools", + "noSourcesSelected": "No sources selected", + "apiInstanceUrlLine": "API Instance ID: {id} · URL: {url}", + "toolsCount2": "{count, plural, one {# tool} other {# tools}}", + "saasSystem": "SaaS System", + "requiredPoliciesHeading": "Required Policies", + "policyMcpSupport": "MCP Support", + "policyMcpSchemaValidation": "MCP Schema Validation", + "policyMcpTranscodingRouter": "MCP Transcoding Router", + "authOauth2": "OAuth2", + "authBasic": "Basic Auth", + "authApiKey": "API Key", + "policyMcpTranscoding": "MCP Transcoding", + "policyCredentialInjection": "Credential Injection ({authType})", + "appliedStatus": "Applied", + "inboundHeading": "Inbound", + "outboundHeading": "Outbound", + "pathInvalid": "Path may only contain letters, numbers, hyphens, and underscores.", + "versionInvalid": "Version must follow semver format (e.g. 1.0.0)." + }, + "governanceTabDetail": { + "policyMethodAutomated": "Automated Policies", + "policyMethodInstance": "Instance Policies", + "missingRouteContext": "Missing route context for policy selection.", + "policyAppliedSuccess": "{name} was applied.", + "errorsHeading": "Errors", + "warningsHeading": "Warnings", + "rulesetReportAriaLabel": "Ruleset report", + "loadingConformanceReport": "Loading conformance report…", + "noGovernanceReport": "No governance report available for this API.", + "loadingReportDetails": "Loading report details…", + "noErrorsOrWarnings": "No errors or warnings found for this ruleset.", + "loadingPolicies": "Loading policies…", + "noPoliciesAvailable": "No policies available for the current instance.", + "byDomain": "By Domain", + "byApplicationMethod": "By Application Method", + "policyReorderComingSoon": "Policy reordering is coming soon.", + "reorderInstancePolicies": "Reorder Instance Policies", + "applyPolicyButton": "Apply Policy", + "noAppliedPolicies": "No applied policies for this instance.", + "noPoliciesAppliedViaMethod": "No policies applied via automated or instance methods.", + "policyInstanceScope": "Instance", + "policyAutomatedScope": "Automated", + "viewConfiguration": "View Configuration", + "editConfiguration": "Edit Configuration", + "removePolicy": "Remove Policy", + "removingPolicy": "Removing…", + "disablePolicy": "Disable Policy", + "directionInbound": "Inbound", + "directionOutbound": "Outbound", + "versionPrefix": "v{version}", + "orderPrefix": "#{order}", + "moreActionsAriaLabel": "More actions for {name}", + "editPolicyAriaLabel": "Edit {name}", + "policiesHeading": "Policies", + "allDirectionsCount": "All directions ({count})", + "inboundCount": "Inbound ({count})", + "outboundCount": "Outbound ({count})", + "activeCount": "Active ({count})", + "categoryCount": "{name} ({count})", + "noActivePolicies": "No active policies on this entity.", + "viewAllPolicies": "View all policies", + "noPoliciesMatchFilters": "No policies match the current filters.", + "clearFilters": "Clear filters", + "customBadge": "Custom", + "globalBadge": "Global", + "upstreamPrefix": "Upstream: {name}", + "unknownUpstream": "Unknown", + "versionBadge": "v{version}", + "orderBadge": "#{order}", + "enablePolicy": "Enable Policy" + }, + "policiesTabReorderInstancePolicies": { + "title": "Instance Policies", + "saveLabel": "Save Order" + }, + "governanceReportTabFilters": { + "severityViolations": "Violations", + "severityWarnings": "Warnings", + "severityInfo": "Info", + "allVersions": "All Versions", + "allSeverity": "All Severity", + "allDomains": "All Domains", + "selectEnvironmentType": "Select Environment Type", + "selectDesignTimeArea": "Select Design Time Area", + "versionLabel": "Version", + "severityLabel": "Severity", + "domainLabel": "Domain", + "environmentLabel": "Environment", + "designTimeAreaLabel": "Design Time Area", + "filterAll": "All" + }, + "gatewayOverview": { + "status": { + "running": "Running", + "stopped": "Stopped", + "degraded": "Degraded", + "error": "Error" + }, + "detailsAriaLabel": "Gateway details", + "detailsHeading": "Gateway Details", + "fieldStatus": "Status", + "fieldPublicEndpoint": "Public endpoint", + "fieldLastUpdated": "Last updated", + "fieldInternalEndpoint": "Internal endpoint", + "fieldTarget": "Target", + "usageAriaLabel": "Gateway usage", + "usageHeading": "Gateway Usage", + "apisCapacityLabel": "APIs capacity", + "apisCapacityUnit": "APIs deployed in the gateway", + "apisCapacityHelp": "APIs deployed out of the gateway's capacity", + "apiRequestsLabel": "API requests", + "apiRequestsUnit": "Calls", + "apiRequestsHelp": "API calls served this month", + "dataConsumedLabel": "Data consumed", + "dataConsumedHelp": "Data transferred through the gateway this month", + "copyPublicEndpoint": "Copy public endpoint", + "copyInternalEndpoint": "Copy internal endpoint", + "endpointCopied": "Endpoint copied to clipboard.", + "endpointCopyFailed": "We couldn't copy the endpoint to clipboard.", + "loadingValue": "Loading {name}" + }, + "filterableMultiSeriesChart": { + "all": "All", + "noData": "No data available." + }, + "llmProxy": { + "destinationUrl": "Destination URL", + "apiKey": "API Key", + "enterOpenAiKey": "Enter OpenAI API key", + "enterGeminiKey": "Enter Gemini API key", + "enterAzureKey": "Enter Azure OpenAI API key", + "deploymentId": "Deployment ID", + "deploymentIdPlaceholder": "e.g., gpt-4-deployment", + "apiVersion": "API Version", + "apiVersionPlaceholder": "e.g., 2024-10-21", + "accessKeyId": "Access Key ID", + "enterAccessKeyId": "Enter AWS Access Key ID", + "secretAccessKey": "Secret Access Key", + "enterSecretAccessKey": "Enter AWS Secret Access Key", + "sessionToken": "Session Token", + "sessionTokenPlaceholder": "Enter session token (optional)", + "awsRegion": "AWS Region", + "regionUsEast1": "US East (N. Virginia)", + "regionUsEast2": "US East (Ohio)", + "regionUsWest2": "US West (Oregon)", + "regionEuWest1": "Europe (Ireland)", + "regionEuCentral1": "Europe (Frankfurt)", + "regionApSoutheast1": "Asia Pacific (Singapore)", + "regionApNortheast1": "Asia Pacific (Tokyo)", + "stepConfigureGateway": "Configure Gateway", + "stepConfigureRoutingStrategy": "Configure Routing Strategy", + "leaveEmptyToKeepCurrent": "Leave empty to keep current", + "breadcrumbLlmProxies": "LLM Proxies", + "breadcrumbCreate": "Create an LLM Proxy", + "hide": "Hide", + "show": "Show", + "statusActive": "Active", + "statusUnknown": "Unknown", + "enterNvidiaKey": "Enter NVIDIA API key…" + }, + "performanceOverview": { + "heading": "Performance", + "subheading": "Monitor traffic, performance, and health across your services.", + "environmentType": "Environment Type", + "clearFilters": "Clear Filters", + "chipType": "Type", + "chipService": "Service", + "chipInstance": "Instance", + "chipWindow": "Window" + }, + "metricDrillDownRow": { + "showLess": "Show Less", + "showFull": "Show More", + "errorBreakdown": "Error Breakdown", + "violations": "Violations", + "occurrences": "Occurrences: {count}", + "breakdownPercent": "{percent}% ({count})" + }, + "metricDrillDown": { + "metricTitles": { + "availability": "Availability", + "reliability": "Reliability", + "avgLatency": "Average P95 Latency", + "requestVolume": "Total Requests", + "errorRate": "Error Rate", + "policyViolations": "Policy Violations" + }, + "searchPlaceholder": "Search by name…", + "searchAriaLabel": "Search rows by name", + "noResultsMatchSearch": "No results match your search.", + "noDataInScope": "No data in this scope.", + "rank": "Rank", + "service": "Service", + "instance": "Instance", + "environment": "Environment", + "active": "Active", + "total": "Total", + "activeInstancesTooltip": "Active instances in scope", + "totalInstancesTooltip": "Total instances in scope", + "errors4xx": "4xx errors", + "errors5xx": "5xx errors", + "totalErrors": "Total errors", + "percentOfOverallErrors": "% of overall errors", + "percentOfOverallErrorsTooltip": "Share of total errors across all instances in this drill-down scope", + "avgLatencyHeader": "Average P95 Latency", + "requests": "Requests", + "totalRequestsHeader": "Total Requests", + "errorRateHeader": "Error Rate", + "violationsHeader": "Violations", + "valueHeader": "Value", + "showingRange": "Showing {start}–{end} of {total}", + "rowsPerPage": "Rows per page", + "previousAriaLabel": "Previous page of rows", + "nextAriaLabel": "Next page of rows", + "previous": "Previous", + "next": "Next" + }, + "serviceKind": { + "mcpServer": "MCP Server", + "agent": "Agent", + "llmProxy": "LLM Proxy", + "api": "API" + }, + "aiSuggestion": { + "dismiss": "Dismiss suggestion" + }, + "providersCommon": { + "versionPrefix": "v{version}", + "addCount": "+{count}", + "updateCount": "~{count}", + "removeCount": "-{count}", + "providersBreadcrumb": "Providers", + "failedLoadApis": "We couldn't load discovered APIs. Try again.", + "scanResultCategories": "Scan result categories", + "close": "Close", + "upToDate": "Up to date" + }, + "entityCatalogPage": { + "addLlmProxy": "Add LLM Proxy" + }, + "semanticServiceSharedFields": { + "serviceLabel": "Service label", + "serviceLabelTooltip": "Shown as the title in the Semantic Services catalog.", + "environment": "Environment" + }, + "routeCard": { + "routeNamePlaceholder": "Route {letter}" + }, + "topicsInput": { + "defaultPlaceholder": "Select topics…", + "defaultCreateButton": "Create new topic", + "editAriaLabel": "Edit {topic}", + "removeAriaLabel": "Remove {topic}", + "noTopicsAvailable": "No topics available." + }, + "placeholderPage": { + "entityCount": "{count, plural, one {# entity} other {# entities}}", + "inMockData": "in mock data" + }, + "policySelectorCard": { + "statusApplied": "Applied", + "statusAutomated": "Automated", + "selectAriaLabel": "Select {name}" + }, + "omniGovernanceSettings": { + "optional": "(Optional)", + "addMore": "Add more…", + "removeValueAriaLabel": "Remove {value}", + "noMatches": "No matches", + "legacyRulesetFallbackDescription": "Legacy ruleset from Anypoint governance catalog.", + "versionLatest": "Latest", + "providerOwasp": "OWASP", + "providerMulesoft": "MuleSoft", + "categoryLegacy": "Legacy", + "notificationsDisabled": "Disabled", + "notificationsEnabled": "Enabled", + "notificationRecipientApiPublisher": "API publisher", + "notificationRecipientApiContact": "API contact", + "notificationRecipientOthers": "others", + "notificationsEnabledWithRecipients": "Enabled – {recipients}", + "bridgeScopeStepUnavailable": "No active governance scope step is available to apply the proposed changes.", + "bridgeScopeStepUpdated": "Governance scope step was updated.", + "statusGuardrailCreated": "Control was created.", + "statusLegacyCreated": "Strategy was created from Anypoint Platform.", + "statusStrategyUpdated": "Strategy was updated.", + "statusLegacyUpdated": "Strategy was updated from Anypoint Platform.", + "errorCreateFailed": "We couldn't create the strategy. Try again.", + "errorUpdateFailed": "We couldn't update the strategy. Try again.", + "confirmDuplicateOverride": "A similar automated policy already exists. Continue with duplicate override?", + "loadingAriaLabel": "Loading governance configuration", + "heading": "Governance Strategies", + "subtitle": "Configure and manage strategies to monitor, report, enforce, and block noncompliant activity across your services.", + "createStrategyButton": "Create governance strategy", + "statCardActiveStrategies": "Active Strategies", + "statCardStrategyTypes": "Strategy Types", + "statCardGovernanceCoverage": "Governance Coverage", + "strategyTypeGuardrails": "Controls", + "strategyTypeAutomatedPolicies": "Automated Policies", + "activeDisabledSubtext": "{count} disabled", + "coverageSubtext": "{governed} of {total} services governed by active strategies", + "coverageUnavailable": "Coverage data unavailable", + "breadcrumbAriaLabel": "Breadcrumb", + "breadcrumbStrategies": "Governance Strategies", + "breadcrumbEditStrategy": "Edit Strategy", + "breadcrumbCreateStrategy": "Create Strategy", + "wizardStep": { + "scope": "Scope", + "whatToApply": "What to Apply", + "notifications": "Notifications", + "nameDescription": "Name & Description", + "review": "Review" + }, + "selectServicesToGovern": "Select Services To Govern", + "targetApisAgentsMcp": "APIs, Agents, MCP Servers", + "targetGateways": "Gateways", + "serviceTypes": "Service Types", + "serviceTypeOption": { + "restApi": "REST API", + "asyncApi": "AsyncAPI", + "httpApi": "HTTP API", + "agent": "Agent", + "mcp": "MCP" + }, + "tagsLabel": "Tags", + "tagsPlaceholder": "Select tags…", + "categoriesLabel": "Categories", + "categoriesPlaceholder": "Select categories…", + "apiInstanceHeading": "API Instance", + "allApis": "All APIs", + "onlyApisWithoutInstances": "Only APIs without instances", + "loadingScopePreview": "Loading Scope Preview…", + "previewGovernedScope": "Preview Governed Scope", + "governedScopePreviewTitle": "Governed Scope Preview", + "matchedTargets": "{count} matched targets", + "closeAriaLabel": "Close", + "loadingScopePreviewInline": "Loading scope preview…", + "noTargetsFound": "No targets found for this scope.", + "columnServiceName": "Service Name", + "columnType": "Type", + "columnProvider": "Provider", + "columnTags": "Tags", + "columnCategories": "Categories", + "columnInstances": "Instances", + "providerUnknown": "Unknown", + "emDash": "—", + "closeButton": "Close", + "rulesToApply": "Rules to Apply", + "rulesetsSelected": "{count} rulesets selected", + "selectAllRulesInAriaLabel": "Select all rules in {name}", + "legacyBadge": "Legacy", + "noLegacyRulesets": "No legacy rulesets available for this scope.", + "notificationsHeading": "Notifications", + "notificationsDescription": "Configure settings for automated conformance notifications.", + "notificationsReleaseBannerTitle": "May release availability is subject to change", + "notificationsReleaseBannerBody": "We're still reviewing the notifications feature, and its availability is subject to change.", + "nonconformanceNotification": "Nonconformance notification", + "conditionLabel": "Condition", + "conditionValue": "Latest version of an API becomes nonconformant", + "channelLabel": "Channel", + "channelEmail": "Email", + "recipientsLabel": "Recipients", + "recipientApiPublisher": "API Publisher", + "recipientApiContact": "API Contact", + "recipientApiContactIfAvailable": "(if available)", + "recipientOthers": "Others", + "othersEmailsHelp": "Enter emails (comma separated)", + "strategyNameLabel": "Strategy Name", + "descriptionLabel": "Description", + "reviewHeading": "Review", + "reviewDescription": "Review your governance strategy configuration before saving.", + "strategyTypeLabel": "Strategy Type", + "strategyTypeGuardrailsValue": "Controls", + "strategyTypeFromAnypoint": "From Anypoint Platform", + "governanceScopeHeading": "Governance Scope", + "targetLabel": "Target", + "serviceTypesLabel": "Service Types", + "rulesCountInRuleset": "{count, plural, one {# rule} other {# rules}} in this ruleset", + "statusLabel": "Status", + "generalInformationHeading": "General Information", + "previousButton": "Previous", + "nextButton": "Next", + "cancelButton": "Cancel", + "createStrategyButtonLabel": "Create Strategy", + "saveChangesButton": "Save Changes", + "typeBadgeAutomatedPolicy": "Automated Policy", + "typeBadgeGuardrails": "Controls", + "fromAnypointBadge": "From Anypoint Platform", + "rulesetsMetaLabel": "Rulesets", + "rulesetsMetaValue": "{count} ({ruleCount, plural, one {# rule} other {# rules}})", + "targetMetaLabel": "Target", + "priorityMetaLabel": "Priority", + "governedServicesMetaLabel": "Governed Services", + "createdMetaLabel": "Created", + "updatedMetaLabel": "Updated", + "limitedFunctionalityTitle": "Limited Functionality for From Anypoint Controls", + "limitedFunctionalityBody": "This control was created in Anypoint API Governance and has limited ruleset selection and customization options. To access advanced features like conditions configuration, rule-level selection, severity customization, and the full ruleset library, create a new control directly in the enhanced MuleSoft experience.", + "tabConfiguration": "Configuration", + "tabGovernedServices": "Governed Services", + "appliedPolicyHeading": "Applied Policy", + "policyFallback": "Policy", + "policyDescriptionText": "Policy configured through API Manager automated policy strategy.", + "scopeHeading": "Scope", + "runtimeLabel": "Runtime", + "endpointTypesLabel": "Endpoint Types", + "rulesHeading": "Rules", + "rulesetsRuleCountSummary": "{rulesetCount, plural, one {# ruleset} other {# rulesets}} ({ruleCount, plural, one {# rule} other {# rules}})", + "collapseAll": "Collapse all", + "expandAll": "Expand all", + "noRulesetsConfigured": "No rulesets configured for this strategy.", + "editFromAnypointButton": "Edit (From Anypoint Platform)", + "editStrategyButton": "Edit Strategy", + "backButton": "Back", + "selectedStrategyUnavailable": "Selected strategy is unavailable.", + "bridgeOpenCreateAccepted": "Opened the Create Control wizard." + }, + "notFound": { + "heading": "We couldn't find that page", + "description": "The page at {path} doesn't exist or may have been moved.", + "goToHome": "Go to home" + }, + "unsavedChangesModal": { + "closeAriaLabel": "Close unsaved changes dialog", + "heading": "Discard unsaved changes?", + "confirmMessage": "You have unsaved changes that will be lost.", + "bodyMessage": "If you leave now, your in-progress configuration will not be saved.", + "discardButton": "Discard Changes", + "keepEditingButton": "Keep Editing" + }, + "slackInstall": { + "missingPending": "Missing install identifier. Please start the Slack installation again.", + "noOrganization": "No organization selected in this browser session.", + "adminRequired": "Only an organization administrator can install the Slack integration.", + "installFailed": "Failed to install Slack integration", + "needsLogin": { + "heading": "Install Slack Integration", + "description": "Sign in to Anypoint first. After signing in, the Slack installation will complete automatically.", + "goToLogin": "Sign in to Anypoint" + }, + "success": { + "heading": "Slack Installed Successfully", + "description": "The Slack integration has been installed for your organization.", + "descriptionWithWorkspace": "The Slack integration has been installed and connected to the {workspace} workspace.", + "goToSettings": "Go to Notification Settings" + }, + "expired": { + "heading": "Install link expired", + "description": "This installation link has expired. Please click Add to Slack again to start a new installation." + }, + "error": { + "heading": "Installation failed" + }, + "completing": { + "heading": "Installing Slack Integration", + "description": "Completing installation…" + } + } +}