mirror of
https://github.com/fosrl/pangolin.git
synced 2025-08-05 02:24:59 +02:00
1136 lines
67 KiB
JSON
1136 lines
67 KiB
JSON
{
|
|
"setupCreate": "Create your organization, site, and resources",
|
|
"setupNewOrg": "New Organization",
|
|
"setupCreateOrg": "Create Organization",
|
|
"setupCreateResources": "Create Resources",
|
|
"setupOrgName": "Organization Name",
|
|
"orgDisplayName": "This is the display name of your organization.",
|
|
"orgId": "Organization ID",
|
|
"setupIdentifierMessage": "This is the unique identifier for your organization. This is separate from the display name.",
|
|
"setupErrorIdentifier": "Organization ID is already taken. Please choose a different one.",
|
|
"componentsErrorNoMemberCreate": "You are not currently a member of any organizations. Create an organization to get started.",
|
|
"componentsErrorNoMember": "You are not currently a member of any organizations.",
|
|
"welcome": "Welcome to Pangolin",
|
|
"componentsCreateOrg": "Create an Organization",
|
|
"componentsMember": "You're a member of {count, plural, =0 {no organization} =1 {one organization} other {# organizations}}.",
|
|
"componentsInvalidKey": "Invalid or expired license keys detected. Follow license terms to continue using all features.",
|
|
"dismiss": "Dismiss",
|
|
"componentsLicenseViolation": "License Violation: This server is using {usedSites} sites which exceeds its licensed limit of {maxSites} sites. Follow license terms to continue using all features.",
|
|
"componentsSupporterMessage": "Thank you for supporting Pangolin as a {tier}!",
|
|
"inviteErrorNotValid": "We're sorry, but it looks like the invite you're trying to access has not been accepted or is no longer valid.",
|
|
"inviteErrorUser": "We're sorry, but it looks like the invite you're trying to access is not for this user.",
|
|
"inviteLoginUser": "Please make sure you're logged in as the correct user.",
|
|
"inviteErrorNoUser": "We're sorry, but it looks like the invite you're trying to access is not for a user that exists.",
|
|
"inviteCreateUser": "Please create an account first.",
|
|
"goHome": "Go Home",
|
|
"inviteLogInOtherUser": "Log In as a Different User",
|
|
"createAnAccount": "Create an Account",
|
|
"inviteNotAccepted": "Invite Not Accepted",
|
|
"authCreateAccount": "Create an account to get started",
|
|
"authNoAccount": "Don't have an account?",
|
|
"email": "Email",
|
|
"password": "Password",
|
|
"confirmPassword": "Confirm Password",
|
|
"createAccount": "Create Account",
|
|
"viewSettings": "View settings",
|
|
"delete": "Delete",
|
|
"name": "Name",
|
|
"online": "Online",
|
|
"offline": "Offline",
|
|
"site": "Site",
|
|
"dataIn": "Data In",
|
|
"dataOut": "Data Out",
|
|
"connectionType": "Connection Type",
|
|
"tunnelType": "Tunnel Type",
|
|
"local": "Local",
|
|
"edit": "Edit",
|
|
"siteConfirmDelete": "Confirm Delete Site",
|
|
"siteDelete": "Delete Site",
|
|
"siteMessageRemove": "Once removed, the site will no longer be accessible. All resources and targets associated with the site will also be removed.",
|
|
"siteMessageConfirm": "To confirm, please type the name of the site below.",
|
|
"siteQuestionRemove": "Are you sure you want to remove the site {selectedSite} from the organization?",
|
|
"siteManageSites": "Manage Sites",
|
|
"siteDescription": "Allow connectivity to your network through secure tunnels",
|
|
"siteCreate": "Create Site",
|
|
"siteCreateDescription2": "Follow the steps below to create and connect a new site",
|
|
"siteCreateDescription": "Create a new site to start connecting your resources",
|
|
"close": "Close",
|
|
"siteErrorCreate": "Error creating site",
|
|
"siteErrorCreateKeyPair": "Key pair or site defaults not found",
|
|
"siteErrorCreateDefaults": "Site defaults not found",
|
|
"siteNameDescription": "This is the display name for the site.",
|
|
"method": "Method",
|
|
"siteMethodDescription": "This is how you will expose connections.",
|
|
"siteLearnNewt": "Learn how to install Newt on your system",
|
|
"siteSeeConfigOnce": "You will only be able to see the configuration once.",
|
|
"siteLoadWGConfig": "Loading WireGuard configuration...",
|
|
"siteDocker": "Expand for Docker Deployment Details",
|
|
"toggle": "Toggle",
|
|
"dockerCompose": "Docker Compose",
|
|
"dockerRun": "Docker Run",
|
|
"siteLearnLocal": "Local sites do not tunnel, learn more",
|
|
"siteConfirmCopy": "I have copied the config",
|
|
"searchSitesProgress": "Search sites...",
|
|
"siteAdd": "Add Site",
|
|
"siteInstallNewt": "Install Newt",
|
|
"siteInstallNewtDescription": "Get Newt running on your system",
|
|
"WgConfiguration": "WireGuard Configuration",
|
|
"WgConfigurationDescription": "Use the following configuration to connect to your network",
|
|
"operatingSystem": "Operating System",
|
|
"commands": "Commands",
|
|
"recommended": "Recommended",
|
|
"siteNewtDescription": "For the best user experience, use Newt. It uses WireGuard under the hood and allows you to address your private resources by their LAN address on your private network from within the Pangolin dashboard.",
|
|
"siteRunsInDocker": "Runs in Docker",
|
|
"siteRunsInShell": "Runs in shell on macOS, Linux, and Windows",
|
|
"siteErrorDelete": "Error deleting site",
|
|
"siteErrorUpdate": "Failed to update site",
|
|
"siteErrorUpdateDescription": "An error occurred while updating the site.",
|
|
"siteUpdated": "Site updated",
|
|
"siteUpdatedDescription": "The site has been updated.",
|
|
"siteGeneralDescription": "Configure the general settings for this site",
|
|
"siteSettingDescription": "Configure the settings on your site",
|
|
"siteSetting": "{siteName} Settings",
|
|
"siteNewtTunnel": "Newt Tunnel (Recommended)",
|
|
"siteNewtTunnelDescription": "Easiest way to create an entrypoint into your network. No extra setup.",
|
|
"siteWg": "Basic WireGuard",
|
|
"siteWgDescription": "Use any WireGuard client to establish a tunnel. Manual NAT setup required.",
|
|
"siteLocalDescription": "Local resources only. No tunneling.",
|
|
"siteSeeAll": "See All Sites",
|
|
"siteTunnelDescription": "Determine how you want to connect to your site",
|
|
"siteNewtCredentials": "Newt Credentials",
|
|
"siteNewtCredentialsDescription": "This is how Newt will authenticate with the server",
|
|
"siteCredentialsSave": "Save Your Credentials",
|
|
"siteCredentialsSaveDescription": "You will only be able to see this once. Make sure to copy it to a secure place.",
|
|
"siteInfo": "Site Information",
|
|
"status": "Status",
|
|
"shareTitle": "Manage Share Links",
|
|
"shareDescription": "Create shareable links to grant temporary or permanent access to your resources",
|
|
"shareSearch": "Search share links...",
|
|
"shareCreate": "Create Share Link",
|
|
"shareErrorDelete": "Failed to delete link",
|
|
"shareErrorDeleteMessage": "An error occurred deleting link",
|
|
"shareDeleted": "Link deleted",
|
|
"shareDeletedDescription": "The link has been deleted",
|
|
"shareTokenDescription": "Your access token can be passed in two ways: as a query parameter or in the request headers. These must be passed from the client on every request for authenticated access.",
|
|
"accessToken": "Access Token",
|
|
"usageExamples": "Usage Examples",
|
|
"tokenId": "Token ID",
|
|
"requestHeades": "Request Headers",
|
|
"queryParameter": "Query Parameter",
|
|
"importantNote": "Important Note",
|
|
"shareImportantDescription": "For security reasons, using headers is recommended over query parameters when possible, as query parameters may be logged in server logs or browser history.",
|
|
"token": "Token",
|
|
"shareTokenSecurety": "Keep your access token secure. Do not share it in publicly accessible areas or client-side code.",
|
|
"shareErrorFetchResource": "Failed to fetch resources",
|
|
"shareErrorFetchResourceDescription": "An error occurred while fetching the resources",
|
|
"shareErrorCreate": "Failed to create share link",
|
|
"shareErrorCreateDescription": "An error occurred while creating the share link",
|
|
"shareCreateDescription": "Anyone with this link can access the resource",
|
|
"shareTitleOptional": "Title (optional)",
|
|
"expireIn": "Expire In",
|
|
"neverExpire": "Never expire",
|
|
"shareExpireDescription": "Expiration time is how long the link will be usable and provide access to the resource. After this time, the link will no longer work, and users who used this link will lose access to the resource.",
|
|
"shareSeeOnce": "You will only be able to see this linkonce. Make sure to copy it.",
|
|
"shareAccessHint": "Anyone with this link can access the resource. Share it with care.",
|
|
"shareTokenUsage": "See Access Token Usage",
|
|
"createLink": "Create Link",
|
|
"resourcesNotFound": "No resources found",
|
|
"resourceSearch": "Search resources",
|
|
"openMenu": "Open menu",
|
|
"resource": "Resource",
|
|
"title": "Title",
|
|
"created": "Created",
|
|
"expires": "Expires",
|
|
"never": "Never",
|
|
"shareErrorSelectResource": "Please select a resource",
|
|
"resourceTitle": "Manage Resources",
|
|
"resourceDescription": "Create secure proxies to your private applications",
|
|
"resourcesSearch": "Search resources...",
|
|
"resourceAdd": "Add Resource",
|
|
"resourceErrorDelte": "Error deleting resource",
|
|
"authentication": "Authentication",
|
|
"protected": "Protected",
|
|
"notProtected": "Not Protected",
|
|
"resourceMessageRemove": "Once removed, the resource will no longer be accessible. All targets associated with the resource will also be removed.",
|
|
"resourceMessageConfirm": "To confirm, please type the name of the resource below.",
|
|
"resourceQuestionRemove": "Are you sure you want to remove the resource {selectedResource} from the organization?",
|
|
"resourceHTTP": "HTTPS Resource",
|
|
"resourceHTTPDescription": "Proxy requests to your app over HTTPS using a subdomain or base domain.",
|
|
"resourceRaw": "Raw TCP/UDP Resource",
|
|
"resourceRawDescription": "Proxy requests to your app over TCP/UDP using a port number.",
|
|
"resourceCreate": "Create Resource",
|
|
"resourceCreateDescription": "Follow the steps below to create a new resource",
|
|
"resourceSeeAll": "See All Resources",
|
|
"resourceInfo": "Resource Information",
|
|
"resourceNameDescription": "This is the display name for the resource.",
|
|
"siteSelect": "Select site",
|
|
"siteSearch": "Search site",
|
|
"siteNotFound": "No site found.",
|
|
"siteSelectionDescription": "This site will provide connectivity to the resource.",
|
|
"resourceType": "Resource Type",
|
|
"resourceTypeDescription": "Determine how you want to access your resource",
|
|
"resourceHTTPSSettings": "HTTPS Settings",
|
|
"resourceHTTPSSettingsDescription": "Configure how your resource will be accessed over HTTPS",
|
|
"domainType": "Domain Type",
|
|
"subdomain": "Subdomain",
|
|
"baseDomain": "Base Domain",
|
|
"subdomnainDescription": "The subdomain where your resource will be accessible.",
|
|
"resourceRawSettings": "TCP/UDP Settings",
|
|
"resourceRawSettingsDescription": "Configure how your resource will be accessed over TCP/UDP",
|
|
"protocol": "Protocol",
|
|
"protocolSelect": "Select a protocol",
|
|
"resourcePortNumber": "Port Number",
|
|
"resourcePortNumberDescription": "The external port number to proxy requests.",
|
|
"cancel": "Cancel",
|
|
"resourceConfig": "Configuration Snippets",
|
|
"resourceConfigDescription": "Copy and paste these configuration snippets to set up your TCP/UDP resource",
|
|
"resourceAddEntrypoints": "Traefik: Add Entrypoints",
|
|
"resourceExposePorts": "Gerbil: Expose Ports in Docker Compose",
|
|
"resourceLearnRaw": "Learn how to configure TCP/UDP resources",
|
|
"resourceBack": "Back to Resources",
|
|
"resourceGoTo": "Go to Resource",
|
|
"resourceDelete": "Delete Resource",
|
|
"resourceDeleteConfirm": "Confirm Delete Resource",
|
|
"visibility": "Visibility",
|
|
"enabled": "Enabled",
|
|
"disabled": "Disabled",
|
|
"general": "General",
|
|
"generalSettings": "General Settings",
|
|
"proxy": "Proxy",
|
|
"rules": "Rules",
|
|
"resourceSettingDescription": "Configure the settings on your resource",
|
|
"resourceSetting": "{resourceName} Settings",
|
|
"alwaysAllow": "Always Allow",
|
|
"alwaysDeny": "Always Deny",
|
|
"orgSettingsDescription": "Configure your organization's general settings",
|
|
"orgGeneralSettings": "Organization Settings",
|
|
"orgGeneralSettingsDescription": "Manage your organization details and configuration",
|
|
"saveGeneralSettings": "Save General Settings",
|
|
"orgDangerZone": "Danger Zone",
|
|
"orgDangerZoneDescription": "Once you delete this org, there is no going back. Please be certain.",
|
|
"orgDelete": "Delete Organization",
|
|
"orgDeleteConfirm": "Confirm Delete Organization",
|
|
"orgMessageRemove": "This action is irreversible and will delete all associated data.",
|
|
"orgMessageConfirm": "To confirm, please type the name of the organization below.",
|
|
"orgQuestionRemove": "Are you sure you want to remove the organization {selectedOrg}?",
|
|
"orgUpdated": "Organization updated",
|
|
"orgUpdatedDescription": "The organization has been updated.",
|
|
"orgErrorUpdate": "Failed to update organization",
|
|
"orgErrorUpdateMessage": "An error occurred while updating the organization.",
|
|
"orgErrorFetch": "Failed to fetch organizations",
|
|
"orgErrorFetchMessage": "An error occurred while listing your organizations",
|
|
"orgErrorDelete": "Failed to delete organization",
|
|
"orgErrorDeleteMessage": "An error occurred while deleting the organization.",
|
|
"orgDeleted": "Organization deleted",
|
|
"orgDeletedMessage": "The organization and its data has been deleted.",
|
|
"orgMissing": "Organization ID Missing",
|
|
"orgMissingMessage": "Unable to regenerate invitation without an organization ID.",
|
|
"accessUsersManage": "Manage Users",
|
|
"accessUsersDescription": "Invite users and add them to roles to manage access to your organization",
|
|
"accessUsersSearch": "Search users...",
|
|
"accessUserCreate": "Create User",
|
|
"accessUserRemove": "Remove User",
|
|
"username": "Username",
|
|
"identityProvider": "Identity Provider",
|
|
"role": "Role",
|
|
"nameRequired": "Name is required",
|
|
"accessRolesManage": "Manage Roles",
|
|
"accessRolesDescription": "Configure roles to manage access to your organization",
|
|
"accessRolesSearch": "Search roles...",
|
|
"accessRolesAdd": "Add Role",
|
|
"accessRoleDelete": "Delete Role",
|
|
"description": "Description",
|
|
"inviteTitle": "Open Invitations",
|
|
"inviteDescription": "Manage your invitations to other users",
|
|
"inviteSearch": "Search invitations...",
|
|
"minutes": "Minutes",
|
|
"hours": "Hours",
|
|
"days": "Days",
|
|
"weeks": "Weeks",
|
|
"months": "Months",
|
|
"years": "Years",
|
|
"day": "{count, plural, =1 {# day} other {# days}}",
|
|
"apiKeysTitle": "API Key Information",
|
|
"apiKeysConfirmCopy2": "You must confirm that you have copied the API key.",
|
|
"apiKeysErrorCreate": "Error creating API key",
|
|
"apiKeysErrorSetPermission": "Error setting permissions",
|
|
"apiKeysCreate": "Generate API Key",
|
|
"apiKeysCreateDescription": "Generate a new API key for your organization",
|
|
"apiKeysGeneralSettings": "Permissions",
|
|
"apiKeysGeneralSettingsDescription": "Determine what this API key can do",
|
|
"apiKeysList": "Your API Key",
|
|
"apiKeysSave": "Save Your API Key",
|
|
"apiKeysSaveDescription": "You will only be able to see this once. Make sure to copy it to a secure place.",
|
|
"apiKeysInfo": "Your API key is:",
|
|
"apiKeysConfirmCopy": "I have copied the API key",
|
|
"generate": "Generate",
|
|
"done": "Done",
|
|
"apiKeysSeeAll": "See All API Keys",
|
|
"apiKeysPermissionsErrorLoadingActions": "Error loading API key actions",
|
|
"apiKeysPermissionsErrorUpdate": "Error setting permissions",
|
|
"apiKeysPermissionsUpdated": "Permissions updated",
|
|
"apiKeysPermissionsUpdatedDescription": "The permissions have been updated.",
|
|
"apiKeysPermissionsGeneralSettings": "Permissions",
|
|
"apiKeysPermissionsGeneralSettingsDescription": "Determine what this API key can do",
|
|
"apiKeysPermissionsSave": "Save Permissions",
|
|
"apiKeysPermissionsTitle": "Permissions",
|
|
"apiKeys": "API Keys",
|
|
"searchApiKeys": "Search API keys...",
|
|
"apiKeysAdd": "Generate API Key",
|
|
"apiKeysErrorDelete": "Error deleting API key",
|
|
"apiKeysErrorDeleteMessage": "Error deleting API key",
|
|
"apiKeysQuestionRemove": "Are you sure you want to remove the API key {selectedApiKey} from the organization?",
|
|
"apiKeysMessageRemove": "Once removed, the API key will no longer be able to be used.",
|
|
"apiKeysMessageConfirm": "To confirm, please type the name of the API key below.",
|
|
"apiKeysDeleteConfirm": "Confirm Delete API Key",
|
|
"apiKeysDelete": "Delete API Key",
|
|
"apiKeysManage": "Manage API Keys",
|
|
"apiKeysDescription": "API keys are used to authenticate with the integration API",
|
|
"apiKeysSettings": "{apiKeyName} Settings",
|
|
"userTitle": "Manage All Users",
|
|
"userDescription": "View and manage all users in the system",
|
|
"userAbount": "About User Management",
|
|
"userAbountDescription": "This table displays all root user objects in the system. Each user may belong to multiple organizations. Removing a user from an organization does not delete their root user object - they will remain in the system. To completely remove a user from the system, you must delete their root user object using the delete action in this table.",
|
|
"userServer": "Server Users",
|
|
"userSearch": "Search server users...",
|
|
"userErrorDelete": "Error deleting user",
|
|
"userDeleteConfirm": "Confirm Delete User",
|
|
"userDeleteServer": "Delete User from Server",
|
|
"userMessageRemove": "The user will be removed from all organizations and be completely removed from the server.",
|
|
"userMessageConfirm": "To confirm, please type the name of the user below.",
|
|
"userQuestionRemove": "Are you sure you want to permanently delete {selectedUser} from the server?",
|
|
"licenseKey": "License Key",
|
|
"valid": "Valid",
|
|
"numberOfSites": "Number of Sites",
|
|
"licenseKeySearch": "Search license keys...",
|
|
"licenseKeyAdd": "Add License Key",
|
|
"type": "Type",
|
|
"licenseKeyRequired": "License key is required",
|
|
"licenseTermsAgree": "You must agree to the license terms",
|
|
"licenseErrorKeyLoad": "Failed to load license keys",
|
|
"licenseErrorKeyLoadDescription": "An error occurred loading license keys.",
|
|
"licenseErrorKeyDelete": "Failed to delete license key",
|
|
"licenseErrorKeyDeleteDescription": "An error occurred deleting license key.",
|
|
"licenseKeyDeleted": "License key deleted",
|
|
"licenseKeyDeletedDescription": "The license key has been deleted.",
|
|
"licenseErrorKeyActivate": "Failed to activate license key",
|
|
"licenseErrorKeyActivateDescription": "An error occurred while activating the license key.",
|
|
"licenseAbout": "About Licensing",
|
|
"communityEdition": "Community Edition",
|
|
"licenseAboutDescription": "This is for business and enterprise users who are using Pangolin in a commercial environment. If you are using Pangolin for personal use, you can ignore this section.",
|
|
"licenseKeyActivated": "License key activated",
|
|
"licenseKeyActivatedDescription": "The license key has been successfully activated.",
|
|
"licenseErrorKeyRecheck": "Failed to recheck license keys",
|
|
"licenseErrorKeyRecheckDescription": "An error occurred rechecking license keys.",
|
|
"licenseErrorKeyRechecked": "License keys rechecked",
|
|
"licenseErrorKeyRecheckedDescription": "All license keys have been rechecked",
|
|
"licenseActivateKey": "Activate License Key",
|
|
"licenseActivateKeyDescription": "Enter a license key to activate it.",
|
|
"licenseActivate": "Activate License",
|
|
"licenseAgreement": "By checking this box, you confirm that you have read and agree to the license terms corresponding to the tier associated with your license key.",
|
|
"fossorialLicense": "View Fossorial Commercial License & Subscription Terms",
|
|
"licenseMessageRemove": "This will remove the license key and all associated permissions granted by it.",
|
|
"licenseMessageConfirm": "To confirm, please type the license key below.",
|
|
"licenseQuestionRemove": "Are you sure you want to delete the license key {selectedKey} ?",
|
|
"licenseKeyDelete": "Delete License Key",
|
|
"licenseKeyDeleteConfirm": "Confirm Delete License Key",
|
|
"licenseTitle": "Manage License Status",
|
|
"licenseTitleDescription": "View and manage license keys in the system",
|
|
"licenseHost": "Host License",
|
|
"licenseHostDescription": "Manage the main license key for the host.",
|
|
"licensedNot": "Not Licensed",
|
|
"hostId": "Host ID",
|
|
"licenseReckeckAll": "Recheck All Keys",
|
|
"licenseSiteUsage": "Sites Usage",
|
|
"licenseSiteUsageDecsription": "View the number of sites using this license.",
|
|
"licenseNoSiteLimit": "There is no limit on the number of sites using an unlicensed host.",
|
|
"licensePurchase": "Purchase License",
|
|
"licensePurchaseSites": "Purchase Additional Sites",
|
|
"licenseSitesUsedMax": "{usedSites} of {maxSites} sites used",
|
|
"licenseSitesUsed": "{count, plural, =0 {# sites} =1 {# site} other {# sites}} in system.",
|
|
"licensePurchaseDescription": "Choose how many sites you want to {selectedMode, select, license {purchase a license for. You can always add more sites later.} other {add to your existing license.}}",
|
|
"licenseFee": "License fee",
|
|
"licensePriceSite": "Price per site",
|
|
"total": "Total",
|
|
"licenseContinuePayment": "Continue to Payment",
|
|
"pricingPage": "pricing page",
|
|
"pricingPortal": "See Purchase Portal",
|
|
"licensePricingPage": "For the most up-to-date pricing and discounts, please visit the ",
|
|
"invite": "Invitations",
|
|
"inviteRegenerate": "Regenerate Invitation",
|
|
"inviteRegenerateDescription": "Revoke previous invitation and create a new one",
|
|
"inviteRemove": "Remove Invitation",
|
|
"inviteRemoveError": "Failed to remove invitation",
|
|
"inviteRemoveErrorDescription": "An error occurred while removing the invitation.",
|
|
"inviteRemoved": "Invitation removed",
|
|
"inviteRemovedDescription": "The invitation for {email} has been removed.",
|
|
"inviteQuestionRemove": "Are you sure you want to remove the invitation {email}?",
|
|
"inviteMessageRemove": "Once removed, this invitation will no longer be valid. You can always re-invite the user later.",
|
|
"inviteMessageConfirm": "To confirm, please type the email address of the invitation below.",
|
|
"inviteQuestionRegenerate": "Are you sure you want to regenerate the invitation for {email}? This will revoke the previous invitation.",
|
|
"inviteRemoveConfirm": "Confirm Remove Invitation",
|
|
"inviteRegenerated": "Invitation Regenerated",
|
|
"inviteSent": "A new invitation has been sent to {email}.",
|
|
"inviteSentEmail": "Send email notification to the user",
|
|
"inviteGenerate": "A new invitation has been generated for {email}.",
|
|
"inviteDuplicateError": "Duplicate Invite",
|
|
"inviteDuplicateErrorDescription": "An invitation for this user already exists.",
|
|
"inviteRateLimitError": "Rate Limit Exceeded",
|
|
"inviteRateLimitErrorDescription": "You have exceeded the limit of 3 regenerations per hour. Please try again later.",
|
|
"inviteRegenerateError": "Failed to Regenerate Invitation",
|
|
"inviteRegenerateErrorDescription": "An error occurred while regenerating the invitation.",
|
|
"inviteValidityPeriod": "Validity Period",
|
|
"inviteValidityPeriodSelect": "Select validity period",
|
|
"inviteRegenerateMessage": "The invitation has been regenerated. The user must access the link below to accept the invitation.",
|
|
"inviteRegenerateButton": "Regenerate",
|
|
"expiresAt": "Expires At",
|
|
"accessRoleUnknown": "Unknown Role",
|
|
"placeholder": "Placeholder",
|
|
"userErrorOrgRemove": "Failed to remove user",
|
|
"userErrorOrgRemoveDescription": "An error occurred while removing the user.",
|
|
"userOrgRemoved": "User removed",
|
|
"userOrgRemovedDescription": "The user {email} has been removed from the organization.",
|
|
"userQuestionOrgRemove": "Are you sure you want to remove {email} from the organization?",
|
|
"userMessageOrgRemove": "Once removed, this user will no longer have access to the organization. You can always re-invite them later, but they will need to accept the invitation again.",
|
|
"userMessageOrgConfirm": "To confirm, please type the name of the of the user below.",
|
|
"userRemoveOrgConfirm": "Confirm Remove User",
|
|
"userRemoveOrg": "Remove User from Organization",
|
|
"users": "Users",
|
|
"accessRoleMember": "Member",
|
|
"accessRoleOwner": "Owner",
|
|
"userConfirmed": "Confirmed",
|
|
"idpNameInternal": "Internal",
|
|
"emailInvalid": "Invalid email address",
|
|
"inviteValidityDuration": "Please select a duration",
|
|
"accessRoleSelectPlease": "Please select a role",
|
|
"usernameRequired": "Username is required",
|
|
"idpSelectPlease": "Please select an identity provider",
|
|
"idpGenericOidc": "Generic OAuth2/OIDC provider.",
|
|
"accessRoleErrorFetch": "Failed to fetch roles",
|
|
"accessRoleErrorFetchDescription": "An error occurred while fetching the roles",
|
|
"idpErrorFetch": "Failed to fetch identity providers",
|
|
"idpErrorFetchDescription": "An error occurred while fetching identity providers",
|
|
"userErrorExists": "User Already Exists",
|
|
"userErrorExistsDescription": "This user is already a member of the organization.",
|
|
"inviteError": "Failed to invite user",
|
|
"inviteErrorDescription": "An error occurred while inviting the user",
|
|
"userInvited": "User invited",
|
|
"userInvitedDescription": "The user has been successfully invited.",
|
|
"userErrorCreate": "Failed to create user",
|
|
"userErrorCreateDescription": "An error occurred while creating the user",
|
|
"userCreated": "User created",
|
|
"userCreatedDescription": "The user has been successfully created.",
|
|
"userTypeInternal": "Internal User",
|
|
"userTypeInternalDescription": "Invite a user to join your organization directly.",
|
|
"userTypeExternal": "External User",
|
|
"userTypeExternalDescription": "Create a user with an external identity provider.",
|
|
"accessUserCreateDescription": "Follow the steps below to create a new user",
|
|
"userSeeAll": "See All Users",
|
|
"userTypeTitle": "User Type",
|
|
"userTypeDescription": "Determine how you want to create the user",
|
|
"userSettings": "User Information",
|
|
"userSettingsDescription": "Enter the details for the new user",
|
|
"inviteEmailSent": "Send invite email to user",
|
|
"inviteValid": "Valid For",
|
|
"selectDuration": "Select duration",
|
|
"accessRoleSelect": "Select role",
|
|
"inviteEmailSentDescription": "An email has been sent to the user with the access link below. They must access the link to accept the invitation.",
|
|
"inviteSentDescription": "The user has been invited. They must access the link below to accept the invitation.",
|
|
"inviteExpiresIn": "The invite will expire in {days, plural, =1 {# day} other {# days}}.",
|
|
"idpTitle": "Identity Provider",
|
|
"idpSelect": "Select the identity provider for the external user",
|
|
"idpNotConfigured": "No identity providers are configured. Please configure an identity provider before creating external users.",
|
|
"usernameUniq": "This must match the unique username that exists in the selected identity provider.",
|
|
"emailOptional": "Email (Optional)",
|
|
"nameOptional": "Name (Optional)",
|
|
"accessControls": "Access Controls",
|
|
"userDescription2": "Manage the settings on this user",
|
|
"accessRoleErrorAdd": "Failed to add user to role",
|
|
"accessRoleErrorAddDescription": "An error occurred while adding user to the role.",
|
|
"userSaved": "User saved",
|
|
"userSavedDescription": "The user has been updated.",
|
|
"accessControlsDescription": "Manage what this user can access and do in the organization",
|
|
"accessControlsSubmit": "Save Access Controls",
|
|
"roles": "Roles",
|
|
"accessUsersRoles": "Manage Users & Roles",
|
|
"accessUsersRolesDescription": "Invite users and add them to roles to manage access to your organization",
|
|
"key": "Key",
|
|
"createdAt": "Created At",
|
|
"proxyErrorInvalidHeader": "Invalid custom Host Header value. Use domain name format, or save empty to unset custom Host Header.",
|
|
"proxyErrorTls": "Invalid TLS Server Name. Use domain name format, or save empty to remove the TLS Server Name.",
|
|
"proxyEnableSSL": "Enable SSL (https)",
|
|
"targetErrorFetch": "Failed to fetch targets",
|
|
"targetErrorFetchDescription": "An error occurred while fetching targets",
|
|
"siteErrorFetch": "Failed to fetch resource",
|
|
"siteErrorFetchDescription": "An error occurred while fetching resource",
|
|
"targetErrorDuplicate": "Duplicate target",
|
|
"targetErrorDuplicateDescription": "A target with these settings already exists",
|
|
"targetWireGuardErrorInvalidIp": "Invalid target IP",
|
|
"targetWireGuardErrorInvalidIpDescription": "Target IP must be within the site subnet",
|
|
"targetsUpdated": "Targets updated",
|
|
"targetsUpdatedDescription": "Targets and settings updated successfully",
|
|
"targetsErrorUpdate": "Failed to update targets",
|
|
"targetsErrorUpdateDescription": "An error occurred while updating targets",
|
|
"targetTlsUpdate": "TLS settings updated",
|
|
"targetTlsUpdateDescription": "Your TLS settings have been updated successfully",
|
|
"targetErrorTlsUpdate": "Failed to update TLS settings",
|
|
"targetErrorTlsUpdateDescription": "An error occurred while updating TLS settings",
|
|
"proxyUpdated": "Proxy settings updated",
|
|
"proxyUpdatedDescription": "Your proxy settings have been updated successfully",
|
|
"proxyErrorUpdate": "Failed to update proxy settings",
|
|
"proxyErrorUpdateDescription": "An error occurred while updating proxy settings",
|
|
"targetAddr": "IP / Hostname",
|
|
"targetPort": "Port",
|
|
"targetProtocol": "Protocol",
|
|
"targetTlsSettings": "Secure Connection Configuration",
|
|
"targetTlsSettingsDescription": "Configure SSL/TLS settings for your resource",
|
|
"targetTlsSettingsAdvanced": "Advanced TLS Settings",
|
|
"targetTlsSni": "TLS Server Name (SNI)",
|
|
"targetTlsSniDescription": "The TLS Server Name to use for SNI. Leave empty to use the default.",
|
|
"targetTlsSubmit": "Save Settings",
|
|
"targets": "Targets Configuration",
|
|
"targetsDescription": "Set up targets to route traffic to your services",
|
|
"targetStickySessions": "Enable Sticky Sessions",
|
|
"targetStickySessionsDescription": "Keep connections on the same backend target for their entire session.",
|
|
"methodSelect": "Select method",
|
|
"targetSubmit": "Add Target",
|
|
"targetNoOne": "No targets. Add a target using the form.",
|
|
"targetNoOneDescription": "Adding more than one target above will enable load balancing.",
|
|
"targetsSubmit": "Save Targets",
|
|
"proxyAdditional": "Additional Proxy Settings",
|
|
"proxyAdditionalDescription": "Configure how your resource handles proxy settings",
|
|
"proxyCustomHeader": "Custom Host Header",
|
|
"proxyCustomHeaderDescription": "The host header to set when proxying requests. Leave empty to use the default.",
|
|
"proxyAdditionalSubmit": "Save Proxy Settings",
|
|
"subnetMaskErrorInvalid": "Invalid subnet mask. Must be between 0 and 32.",
|
|
"ipAddressErrorInvalidFormat": "Invalid IP address format",
|
|
"ipAddressErrorInvalidOctet": "Invalid IP address octet",
|
|
"path": "Path",
|
|
"ipAddressRange": "IP Range",
|
|
"rulesErrorFetch": "Failed to fetch rules",
|
|
"rulesErrorFetchDescription": "An error occurred while fetching rules",
|
|
"rulesErrorDuplicate": "Duplicate rule",
|
|
"rulesErrorDuplicateDescription": "A rule with these settings already exists",
|
|
"rulesErrorInvalidIpAddressRange": "Invalid CIDR",
|
|
"rulesErrorInvalidIpAddressRangeDescription": "Please enter a valid CIDR value",
|
|
"rulesErrorInvalidUrl": "Invalid URL path",
|
|
"rulesErrorInvalidUrlDescription": "Please enter a valid URL path value",
|
|
"rulesErrorInvalidIpAddress": "Invalid IP",
|
|
"rulesErrorInvalidIpAddressDescription": "Please enter a valid IP address",
|
|
"rulesErrorUpdate": "Failed to update rules",
|
|
"rulesErrorUpdateDescription": "An error occurred while updating rules",
|
|
"rulesUpdated": "Enable Rules",
|
|
"rulesUpdatedDescription": "Rule evaluation has been updated",
|
|
"rulesMatchIpAddressRangeDescription": "Enter an address in CIDR format (e.g., 103.21.244.0/22)",
|
|
"rulesMatchIpAddress": "Enter an IP address (e.g., 103.21.244.12)",
|
|
"rulesMatchUrl": "Enter a URL path or pattern (e.g., /api/v1/todos or /api/v1/*)",
|
|
"rulesErrorInvalidPriority": "Invalid Priority",
|
|
"rulesErrorInvalidPriorityDescription": "Please enter a valid priority",
|
|
"rulesErrorDuplicatePriority": "Duplicate Priorities",
|
|
"rulesErrorDuplicatePriorityDescription": "Please enter unique priorities",
|
|
"ruleUpdated": "Rules updated",
|
|
"ruleUpdatedDescription": "Rules updated successfully",
|
|
"ruleErrorUpdate": "Operation failed",
|
|
"ruleErrorUpdateDescription": "An error occurred during the save operation",
|
|
"rulesPriority": "Priority",
|
|
"rulesAction": "Action",
|
|
"rulesMatchType": "Match Type",
|
|
"value": "Value",
|
|
"rulesAbout": "About Rules",
|
|
"rulesAboutDescription": "Rules allow you to control access to your resource based on a set of criteria. You can create rules to allow or deny access based on IP address or URL path.",
|
|
"rulesActions": "Actions",
|
|
"rulesActionAlwaysAllow": "Always Allow: Bypass all authentication methods",
|
|
"rulesActionAlwaysDeny": "Always Deny: Block all requests; no authentication can be attempted",
|
|
"rulesMatchCriteria": "Matching Criteria",
|
|
"rulesMatchCriteriaIpAddress": "Match a specific IP address",
|
|
"rulesMatchCriteriaIpAddressRange": "Match a range of IP addresses in CIDR notation",
|
|
"rulesMatchCriteriaUrl": "Match a URL path or pattern",
|
|
"rulesEnable": "Enable Rules",
|
|
"rulesEnableDescription": "Enable or disable rule evaluation for this resource",
|
|
"rulesResource": "Resource Rules Configuration",
|
|
"rulesResourceDescription": "Configure rules to control access to your resource",
|
|
"ruleSubmit": "Add Rule",
|
|
"rulesNoOne": "No rules. Add a rule using the form.",
|
|
"rulesOrder": "Rules are evaluated by priority in ascending order.",
|
|
"rulesSubmit": "Save Rules",
|
|
"resourceErrorCreate": "Error creating resource",
|
|
"resourceErrorCreateDescription": "An error occurred when creating the resource",
|
|
"resourceErrorCreateMessage": "Error creating resource:",
|
|
"resourceErrorCreateMessageDescription": "An unexpected error occurred",
|
|
"sitesErrorFetch": "Error fetching sites",
|
|
"sitesErrorFetchDescription": "An error occurred when fetching the sites",
|
|
"domainsErrorFetch": "Error fetching domains",
|
|
"domainsErrorFetchDescription": "An error occurred when fetching the domains",
|
|
"none": "None",
|
|
"unknown": "Unknown",
|
|
"resources": "Resources",
|
|
"resourcesDescription": "Resources are proxies to applications running on your private network. Create a resource for any HTTP/HTTPS or raw TCP/UDP service on your private network. Each resource must be connected to a site to enable private, secure connectivity through an encrypted WireGuard tunnel.",
|
|
"resourcesWireGuardConnect": "Secure connectivity with WireGuard encryption",
|
|
"resourcesMultipleAuthenticationMethods": "Configure multiple authentication methods",
|
|
"resourcesUsersRolesAccess": "User and role-based access control",
|
|
"resourcesErrorUpdate": "Failed to toggle resource",
|
|
"resourcesErrorUpdateDescription": "An error occurred while updating the resource",
|
|
"access": "Access",
|
|
"shareLink": "{resource} Share Link",
|
|
"resourceSelect": "Select resource",
|
|
"shareLinks": "Share Links",
|
|
"share": "Shareable Links",
|
|
"shareDescription2": "Create shareable links to your resources. Links provide temporary or unlimited access to your resource. You can configure the expiration duration of the link when you create one.",
|
|
"shareEasyCreate": "Easy to create and share",
|
|
"shareConfigurableExpirationDuration": "Configurable expiration duration",
|
|
"shareSecureAndRevocable": "Secure and revocable",
|
|
"nameMin": "Name must be at least {len} characters.",
|
|
"nameMax": "Name must not be longer than {len} characters.",
|
|
"sitesConfirmCopy": "Please confirm that you have copied the config.",
|
|
"unknownCommand": "Unknown command",
|
|
"newtErrorFetchReleases": "Failed to fetch release info: {err}",
|
|
"newtErrorFetchLatest": "Error fetching latest release: {err}",
|
|
"newtEndpoint": "Newt Endpoint",
|
|
"newtId": "Newt ID",
|
|
"newtSecretKey": "Newt Secret Key",
|
|
"architecture": "Architecture",
|
|
"sites": "Sites",
|
|
"siteWgAnyClients": "Use any WireGuard client to connect. You will have to address your internal resources using the peer IP.",
|
|
"siteWgCompatibleAllClients": "Compatible with all WireGuard clients",
|
|
"siteWgManualConfigurationRequired": "Manual configuration required",
|
|
"userErrorNotAdminOrOwner": "User is not an admin or owner",
|
|
"pangolinSettings": "Settings - Pangolin",
|
|
"accessRoleYour": "Your role:",
|
|
"accessRoleSelect2": "Select a role",
|
|
"accessUserSelect": "Select a user",
|
|
"otpEmailEnter": "Enter an email",
|
|
"otpEmailEnterDescription": "Press enter to add an email after typing it in the input field.",
|
|
"otpEmailErrorInvalid": "Invalid email address. Wildcard (*) must be the entire local part.",
|
|
"otpEmailSmtpRequired": "SMTP Required",
|
|
"otpEmailSmtpRequiredDescription": "SMTP must be enabled on the server to use one-time password authentication.",
|
|
"otpEmailTitle": "One-time Passwords",
|
|
"otpEmailTitleDescription": "Require email-based authentication for resource access",
|
|
"otpEmailWhitelist": "Email Whitelist",
|
|
"otpEmailWhitelistList": "Whitelisted Emails",
|
|
"otpEmailWhitelistListDescription": "Only users with these email addresses will be able to access this resource. They will be prompted to enter a one-time password sent to their email. Wildcards (*@example.com) can be used to allow any email address from a domain.",
|
|
"otpEmailWhitelistSave": "Save Whitelist",
|
|
"passwordAdd": "Add Password",
|
|
"passwordRemove": "Remove Password",
|
|
"pincodeAdd": "Add PIN Code",
|
|
"pincodeRemove": "Remove PIN Code",
|
|
"resourceAuthMethods": "Authentication Methods",
|
|
"resourceAuthMethodsDescriptions": "Allow access to the resource via additional auth methods",
|
|
"resourceAuthSettingsSave": "Saved successfully",
|
|
"resourceAuthSettingsSaveDescription": "Authentication settings have been saved",
|
|
"resourceErrorAuthFetch": "Failed to fetch data",
|
|
"resourceErrorAuthFetchDescription": "An error occurred while fetching the data",
|
|
"resourceErrorPasswordRemove": "Error removing resource password",
|
|
"resourceErrorPasswordRemoveDescription": "An error occurred while removing the resource password",
|
|
"resourceErrorPasswordSetup": "Error setting resource password",
|
|
"resourceErrorPasswordSetupDescription": "An error occurred while setting the resource password",
|
|
"resourceErrorPincodeRemove": "Error removing resource pincode",
|
|
"resourceErrorPincodeRemoveDescription": "An error occurred while removing the resource pincode",
|
|
"resourceErrorPincodeSetup": "Error setting resource PIN code",
|
|
"resourceErrorPincodeSetupDescription": "An error occurred while setting the resource PIN code",
|
|
"resourceErrorUsersRolesSave": "Failed to set roles",
|
|
"resourceErrorUsersRolesSaveDescription": "An error occurred while setting the roles",
|
|
"resourceErrorWhitelistSave": "Failed to save whitelist",
|
|
"resourceErrorWhitelistSaveDescription": "An error occurred while saving the whitelist",
|
|
"resourcePasswordSubmit": "Enable Password Protection",
|
|
"resourcePasswordProtection": "Password Protection {status}",
|
|
"resourcePasswordRemove": "Resource password removed",
|
|
"resourcePasswordRemoveDescription": "The resource password has been removed successfully",
|
|
"resourcePasswordSetup": "Resource password set",
|
|
"resourcePasswordSetupDescription": "The resource password has been set successfully",
|
|
"resourcePasswordSetupTitle": "Set Password",
|
|
"resourcePasswordSetupTitleDescription": "Set a password to protect this resource",
|
|
"resourcePincode": "PIN Code",
|
|
"resourcePincodeSubmit": "Enable PIN Code Protection",
|
|
"resourcePincodeProtection": "PIN Code Protection {status}",
|
|
"resourcePincodeRemove": "Resource pincode removed",
|
|
"resourcePincodeRemoveDescription": "The resource password has been removed successfully",
|
|
"resourcePincodeSetup": "Resource PIN code set",
|
|
"resourcePincodeSetupDescription": "The resource pincode has been set successfully",
|
|
"resourcePincodeSetupTitle": "Set Pincode",
|
|
"resourcePincodeSetupTitleDescription": "Set a pincode to protect this resource",
|
|
"resourceRoleDescription": "Admins can always access this resource.",
|
|
"resourceUsersRoles": "Users & Roles",
|
|
"resourceUsersRolesDescription": "Configure which users and roles can visit this resource",
|
|
"resourceUsersRolesSubmit": "Save Users & Roles",
|
|
"resourceWhitelistSave": "Saved successfully",
|
|
"resourceWhitelistSaveDescription": "Whitelist settings have been saved",
|
|
"ssoUse": "Use Platform SSO",
|
|
"ssoUseDescription": "Existing users will only have to log in once for all resources that have this enabled.",
|
|
"proxyErrorInvalidPort": "Invalid port number",
|
|
"subdomainErrorInvalid": "Invalid subdomain",
|
|
"domainErrorFetch": "Error fetching domains",
|
|
"domainErrorFetchDescription": "An error occurred when fetching the domains",
|
|
"resourceErrorUpdate": "Failed to update resource",
|
|
"resourceErrorUpdateDescription": "An error occurred while updating the resource",
|
|
"resourceUpdated": "Resource updated",
|
|
"resourceUpdatedDescription": "The resource has been updated successfully",
|
|
"resourceErrorTransfer": "Failed to transfer resource",
|
|
"resourceErrorTransferDescription": "An error occurred while transferring the resource",
|
|
"resourceTransferred": "Resource transferred",
|
|
"resourceTransferredDescription": "The resource has been transferred successfully",
|
|
"resourceErrorToggle": "Failed to toggle resource",
|
|
"resourceErrorToggleDescription": "An error occurred while updating the resource",
|
|
"resourceVisibilityTitle": "Visibility",
|
|
"resourceVisibilityTitleDescription": "Completely enable or disable resource visibility",
|
|
"resourceGeneral": "General Settings",
|
|
"resourceGeneralDescription": "Configure the general settings for this resource",
|
|
"resourceEnable": "Enable Resource",
|
|
"resourceTransfer": "Transfer Resource",
|
|
"resourceTransferDescription": "Transfer this resource to a different site",
|
|
"resourceTransferSubmit": "Transfer Resource",
|
|
"siteDestination": "Destination Site",
|
|
"searchSites": "Search sites",
|
|
"accessRoleCreate": "Create Role",
|
|
"accessRoleCreateDescription": "Create a new role to group users and manage their permissions.",
|
|
"accessRoleCreateSubmit": "Create Role",
|
|
"accessRoleCreated": "Role created",
|
|
"accessRoleCreatedDescription": "The role has been successfully created.",
|
|
"accessRoleErrorCreate": "Failed to create role",
|
|
"accessRoleErrorCreateDescription": "An error occurred while creating the role.",
|
|
"accessRoleErrorNewRequired": "New role is required",
|
|
"accessRoleErrorRemove": "Failed to remove role",
|
|
"accessRoleErrorRemoveDescription": "An error occurred while removing the role.",
|
|
"accessRoleName": "Role Name",
|
|
"accessRoleQuestionRemove": "You're about to delete the {name} role. You cannot undo this action.",
|
|
"accessRoleRemove": "Remove Role",
|
|
"accessRoleRemoveDescription": "Remove a role from the organization",
|
|
"accessRoleRemoveSubmit": "Remove Role",
|
|
"accessRoleRemoved": "Role removed",
|
|
"accessRoleRemovedDescription": "The role has been successfully removed.",
|
|
"accessRoleRequiredRemove": "Before deleting this role, please select a new role to transfer existing members to.",
|
|
"manage": "Manage",
|
|
"sitesNotFound": "No sites found.",
|
|
"pangolinServerAdmin": "Server Admin - Pangolin",
|
|
"licenseTierProfessional": "Professional License",
|
|
"licenseTierEnterprise": "Enterprise License",
|
|
"licenseTierCommercial": "Commercial License",
|
|
"licensed": "Licensed",
|
|
"yes": "Yes",
|
|
"no": "No",
|
|
"sitesAdditional": "Additional Sites",
|
|
"licenseKeys": "License Keys",
|
|
"sitestCountDecrease": "Decrease site count",
|
|
"sitestCountIncrease": "Increase site count",
|
|
"idpManage": "Manage Identity Providers",
|
|
"idpManageDescription": "View and manage identity providers in the system",
|
|
"idpDeletedDescription": "Identity provider deleted successfully",
|
|
"idpOidc": "OAuth2/OIDC",
|
|
"idpQuestionRemove": "Are you sure you want to permanently delete the identity provider {name}?",
|
|
"idpMessageRemove": "This will remove the identity provider and all associated configurations. Users who authenticate through this provider will no longer be able to log in.",
|
|
"idpMessageConfirm": "To confirm, please type the name of the identity provider below.",
|
|
"idpConfirmDelete": "Confirm Delete Identity Provider",
|
|
"idpDelete": "Delete Identity Provider",
|
|
"idp": "Identity Providers",
|
|
"idpSearch": "Search identity providers...",
|
|
"idpAdd": "Add Identity Provider",
|
|
"idpClientIdRequired": "Client ID is required.",
|
|
"idpClientSecretRequired": "Client Secret is required.",
|
|
"idpErrorAuthUrlInvalid": "Auth URL must be a valid URL.",
|
|
"idpErrorTokenUrlInvalid": "Token URL must be a valid URL.",
|
|
"idpPathRequired": "Identifier Path is required.",
|
|
"idpScopeRequired": "Scopes are required.",
|
|
"idpOidcDescription": "Configure an OpenID Connect identity provider",
|
|
"idpCreatedDescription": "Identity provider created successfully",
|
|
"idpCreate": "Create Identity Provider",
|
|
"idpCreateDescription": "Configure a new identity provider for user authentication",
|
|
"idpSeeAll": "See All Identity Providers",
|
|
"idpSettingsDescription": "Configure the basic information for your identity provider",
|
|
"idpDisplayName": "A display name for this identity provider",
|
|
"idpAutoProvisionUsers": "Auto Provision Users",
|
|
"idpAutoProvisionUsersDescription": "When enabled, users will be automatically created in the system upon first login with the ability to map users to roles and organizations.",
|
|
"licenseBadge": "Professional",
|
|
"idpType": "Provider Type",
|
|
"idpTypeDescription": "Select the type of identity provider you want to configure",
|
|
"idpOidcConfigure": "OAuth2/OIDC Configuration",
|
|
"idpOidcConfigureDescription": "Configure the OAuth2/OIDC provider endpoints and credentials",
|
|
"idpClientId": "Client ID",
|
|
"idpClientIdDescription": "The OAuth2 client ID from your identity provider",
|
|
"idpClientSecret": "Client Secret",
|
|
"idpClientSecretDescription": "The OAuth2 client secret from your identity provider",
|
|
"idpAuthUrl": "Authorization URL",
|
|
"idpAuthUrlDescription": "The OAuth2 authorization endpoint URL",
|
|
"idpTokenUrl": "Token URL",
|
|
"idpTokenUrlDescription": "The OAuth2 token endpoint URL",
|
|
"idpOidcConfigureAlert": "Important Information",
|
|
"idpOidcConfigureAlertDescription": "After creating the identity provider, you will need to configure the callback URL in your identity provider's settings. The callback URL will be provided after successful creation.",
|
|
"idpToken": "Token Configuration",
|
|
"idpTokenDescription": "Configure how to extract user information from the ID token",
|
|
"idpJmespathAbout": "About JMESPath",
|
|
"idpJmespathAboutDescription": "The paths below use JMESPath syntax to extract values from the ID token.",
|
|
"idpJmespathAboutDescriptionLink": "Learn more about JMESPath",
|
|
"idpJmespathLabel": "Identifier Path",
|
|
"idpJmespathLabelDescription": "The path to the user identifier in the ID token",
|
|
"idpJmespathEmailPathOptional": "Email Path (Optional)",
|
|
"idpJmespathEmailPathOptionalDescription": "The path to the user's email in the ID token",
|
|
"idpJmespathNamePathOptional": "Name Path (Optional)",
|
|
"idpJmespathNamePathOptionalDescription": "The path to the user's name in the ID token",
|
|
"idpOidcConfigureScopes": "Scopes",
|
|
"idpOidcConfigureScopesDescription": "Space-separated list of OAuth2 scopes to request",
|
|
"idpSubmit": "Create Identity Provider",
|
|
"orgPolicies": "Organization Policies",
|
|
"idpSettings": "{idpName} Settings",
|
|
"idpCreateSettingsDescription": "Configure the settings for your identity provider",
|
|
"roleMapping": "Role Mapping",
|
|
"orgMapping": "Organization Mapping",
|
|
"orgPoliciesSearch": "Search organization policies...",
|
|
"orgPoliciesAdd": "Add Organization Policy",
|
|
"orgRequired": "Organization is required",
|
|
"error": "Error",
|
|
"success": "Success",
|
|
"orgPolicyAddedDescription": "Policy added successfully",
|
|
"orgPolicyUpdatedDescription": "Policy updated successfully",
|
|
"orgPolicyDeletedDescription": "Policy deleted successfully",
|
|
"defaultMappingsUpdatedDescription": "Default mappings updated successfully",
|
|
"orgPoliciesAbout": "About Organization Policies",
|
|
"orgPoliciesAboutDescription": "Organization policies are used to control access to organizations based on the user's ID token. You can specify JMESPath expressions to extract role and organization information from the ID token.",
|
|
"orgPoliciesAboutDescriptionLink": "See documentation, for more information.",
|
|
"defaultMappingsOptional": "Default Mappings (Optional)",
|
|
"defaultMappingsOptionalDescription": "The default mappings are used when when there is not an organization policy defined for an organization. You can specify the default role and organization mappings to fall back to here.",
|
|
"defaultMappingsRole": "Default Role Mapping",
|
|
"defaultMappingsRoleDescription": "The result of this expression must return the role name as defined in the organization as a string.",
|
|
"defaultMappingsOrg": "Default Organization Mapping",
|
|
"defaultMappingsOrgDescription": "This expression must return the org ID or true for the user to be allowed to access the organization.",
|
|
"defaultMappingsSubmit": "Save Default Mappings",
|
|
"orgPoliciesEdit": "Edit Organization Policy",
|
|
"org": "Organization",
|
|
"orgSelect": "Select organization",
|
|
"orgSearch": "Search org",
|
|
"orgNotFound": "No org found.",
|
|
"roleMappingPathOptional": "Role Mapping Path (Optional)",
|
|
"orgMappingPathOptional": "Organization Mapping Path (Optional)",
|
|
"orgPolicyUpdate": "Update Policy",
|
|
"orgPolicyAdd": "Add Policy",
|
|
"orgPolicyConfig": "Configure access for an organization",
|
|
"idpUpdatedDescription": "Identity provider updated successfully",
|
|
"redirectUrl": "Redirect URL",
|
|
"redirectUrlAbout": "About Redirect URL",
|
|
"redirectUrlAboutDescription": "This is the URL to which users will be redirected after authentication. You need to configure this URL in your identity provider settings.",
|
|
"pangolinAuth": "Auth - Pangolin",
|
|
"verificationCodeLengthRequirements": "Your verification code must be 8 characters.",
|
|
"errorOccurred": "An error occurred",
|
|
"emailErrorVerify": "Failed to verify email:",
|
|
"emailVerified": "Email successfully verified! Redirecting you...",
|
|
"verificationCodeErrorResend": "Failed to resend verification code:",
|
|
"verificationCodeResend": "Verification code resent",
|
|
"verificationCodeResendDescription": "We've resent a verification code to your email address. Please check your inbox.",
|
|
"emailVerify": "Verify Email",
|
|
"emailVerifyDescription": "Enter the verification code sent to your email address.",
|
|
"verificationCode": "Verification Code",
|
|
"verificationCodeEmailSent": "We sent a verification code to your email address.",
|
|
"submit": "Submit",
|
|
"emailVerifyResendProgress": "Resending...",
|
|
"emailVerifyResend": "Didn't receive a code? Click here to resend",
|
|
"passwordNotMatch": "Passwords do not match",
|
|
"signupError": "An error occurred while signing up",
|
|
"pangolinLogoAlt": "Pangolin Logo",
|
|
"inviteAlready": "Looks like you've been invited!",
|
|
"inviteAlreadyDescription": "To accept the invite, you must log in or create an account.",
|
|
"signupQuestion": "Already have an account?",
|
|
"login": "Log in",
|
|
"resourceNotFound": "Resource Not Found",
|
|
"resourceNotFoundDescription": "The resource you're trying to access does not exist.",
|
|
"pincodeRequirementsLength": "PIN must be exactly 6 digits",
|
|
"pincodeRequirementsChars": "PIN must only contain numbers",
|
|
"passwordRequirementsLength": "Password must be at least 1 character long",
|
|
"otpEmailRequirementsLength": "OTP must be at least 1 character long",
|
|
"otpEmailSent": "OTP Sent",
|
|
"otpEmailSentDescription": "An OTP has been sent to your email",
|
|
"otpEmailErrorAuthenticate": "Failed to authenticate with email",
|
|
"pincodeErrorAuthenticate": "Failed to authenticate with pincode",
|
|
"passwordErrorAuthenticate": "Failed to authenticate with password",
|
|
"poweredBy": "Powered by",
|
|
"authenticationRequired": "Authentication Required",
|
|
"authenticationMethodChoose": "Choose your preferred method to access {name}",
|
|
"authenticationRequest": "You must authenticate to access {name}",
|
|
"user": "User",
|
|
"pincodeInput": "6-digit PIN Code",
|
|
"pincodeSubmit": "Log in with PIN",
|
|
"passwordSubmit": "Log In with Password",
|
|
"otpEmailDescription": "A one-time code will be sent to this email.",
|
|
"otpEmailSend": "Send One-time Code",
|
|
"otpEmail": "One-Time Password (OTP)",
|
|
"otpEmailSubmit": "Submit OTP",
|
|
"backToEmail": "Back to Email",
|
|
"noSupportKey": "Server is running without a supporter key. Consider supporting the project!",
|
|
"accessDenied": "Access Denied",
|
|
"accessDeniedDescription": "You're not allowed to access this resource. If this is a mistake, please contact the administrator.",
|
|
"accessTokenError": "Error checking access token",
|
|
"accessGranted": "Access Granted",
|
|
"accessUrlInvalid": "Access URL Invalid",
|
|
"accessGrantedDescription": "You have been granted access to this resource. Redirecting you...",
|
|
"accessUrlInvalidDescription": "This shared access URL is invalid. Please contact the resource owner for a new URL.",
|
|
"tokenInvalid": "Invalid token",
|
|
"pincodeInvalid": "Invalid code",
|
|
"passwordErrorRequestReset": "Failed to request reset:",
|
|
"passwordErrorReset": "Failed to reset password:",
|
|
"passwordResetSuccess": "Password reset successfully! Back to log in...",
|
|
"passwordReset": "Reset Password",
|
|
"passwordResetDescription": "Follow the steps to reset your password",
|
|
"passwordResetSent": "We'll send a password reset code to this email address.",
|
|
"passwordResetCode": "Reset Code",
|
|
"passwordResetCodeDescription": "Check your email for the reset code.",
|
|
"passwordNew": "New Password",
|
|
"passwordNewConfirm": "Confirm New Password",
|
|
"pincodeAuth": "Authenticator Code",
|
|
"pincodeSubmit2": "Submit Code",
|
|
"passwordResetSubmit": "Request Reset",
|
|
"passwordBack": "Back to Password",
|
|
"loginBack": "Go back to log in",
|
|
"signup": "Sign up",
|
|
"loginStart": "Log in to get started",
|
|
"idpOidcTokenValidating": "Validating OIDC token",
|
|
"idpOidcTokenResponse": "Validate OIDC token response",
|
|
"idpErrorOidcTokenValidating": "Error validating OIDC token",
|
|
"idpConnectingTo": "Connecting to {name}",
|
|
"idpConnectingToDescription": "Validating your identity",
|
|
"idpConnectingToProcess": "Connecting...",
|
|
"idpConnectingToFinished": "Connected",
|
|
"idpErrorConnectingTo": "There was a problem connecting to {name}. Please contact your administrator.",
|
|
"idpErrorNotFound": "IdP not found",
|
|
"inviteInvalid": "Invalid Invite",
|
|
"inviteInvalidDescription": "The invite link is invalid.",
|
|
"inviteErrorWrongUser": "Invite is not for this user",
|
|
"inviteErrorUserNotExists": "User does not exist. Please create an account first.",
|
|
"inviteErrorLoginRequired": "You must be logged in to accept an invite",
|
|
"inviteErrorExpired": "The invite may have expired",
|
|
"inviteErrorRevoked": "The invite might have been revoked",
|
|
"inviteErrorTypo": "There could be a typo in the invite link",
|
|
"pangolinSetup": "Setup - Pangolin",
|
|
"orgNameRequired": "Organization name is required",
|
|
"orgIdRequired": "Organization ID is required",
|
|
"orgErrorCreate": "An error occurred while creating org",
|
|
"pageNotFound": "Page Not Found",
|
|
"pageNotFoundDescription": "Oops! The page you're looking for doesn't exist.",
|
|
"overview": "Overview",
|
|
"home": "Home",
|
|
"accessControl": "Access Control",
|
|
"settings": "Settings",
|
|
"usersAll": "All Users",
|
|
"license": "License",
|
|
"pangolinDashboard": "Dashboard - Pangolin",
|
|
"noResults": "No results found.",
|
|
"terabytes": "{count} TB",
|
|
"gigabytes": "{count} GB",
|
|
"megabytes": "{count} MB",
|
|
"tagsEntered": "Entered Tags",
|
|
"tagsEnteredDescription": "These are the tags you`ve entered.",
|
|
"tagsWarnCannotBeLessThanZero": "maxTags and minTags cannot be less than 0",
|
|
"tagsWarnNotAllowedAutocompleteOptions": "Tag not allowed as per autocomplete options",
|
|
"tagsWarnInvalid": "Invalid tag as per validateTag",
|
|
"tagWarnTooShort": "Tag {tagText} is too short",
|
|
"tagWarnTooLong": "Tag {tagText} is too long",
|
|
"tagsWarnReachedMaxNumber": "Reached the maximum number of tags allowed",
|
|
"tagWarnDuplicate": "Duplicate tag {tagText} not added",
|
|
"supportKeyInvalid": "Invalid Key",
|
|
"supportKeyInvalidDescription": "Your supporter key is invalid.",
|
|
"supportKeyValid": "Valid Key",
|
|
"supportKeyValidDescription": "Your supporter key has been validated. Thank you for your support!",
|
|
"supportKeyErrorValidationDescription": "Failed to validate supporter key.",
|
|
"supportKey": "Support Development and Adopt a Pangolin!",
|
|
"supportKeyDescription": "Purchase a supporter key to help us continue developing Pangolin for the community. Your contribution allows us to commit more time to maintain and add new features to the application for everyone. We will never use this to paywall features. This is separate from any Commercial Edition.",
|
|
"supportKeyPet": "You will also get to adopt and meet your very own pet Pangolin!",
|
|
"supportKeyPurchase": "Payments are processed via GitHub. Afterward, you can retrieve your key on",
|
|
"supportKeyPurchaseLink": "our website",
|
|
"supportKeyPurchase2": "and redeem it here.",
|
|
"supportKeyLearnMore": "Learn more.",
|
|
"supportKeyOptions": "Please select the option that best suits you.",
|
|
"supportKetOptionFull": "Full Supporter",
|
|
"forWholeServer": "For the whole server",
|
|
"lifetimePurchase": "Lifetime purchase",
|
|
"supporterStatus": "Supporter status",
|
|
"buy": "Buy",
|
|
"supportKeyOptionLimited": "Limited Supporter",
|
|
"forFiveUsers": "For 5 or less users",
|
|
"supportKeyRedeem": "Redeem Supporter Key",
|
|
"supportKeyHideSevenDays": "Hide for 7 days",
|
|
"supportKeyEnter": "Enter Supporter Key",
|
|
"supportKeyEnterDescription": "Meet your very own pet Pangolin!",
|
|
"githubUsername": "GitHub Username",
|
|
"supportKeyInput": "Supporter Key",
|
|
"supportKeyBuy": "Buy Supporter Key",
|
|
"logoutError": "Error logging out",
|
|
"signingAs": "Signed in as",
|
|
"serverAdmin": "Server Admin",
|
|
"otpEnable": "Enable Two-factor",
|
|
"otpDisable": "Disable Two-factor",
|
|
"logout": "Log Out",
|
|
"licenseTierProfessionalRequired": "Professional Edition Required",
|
|
"licenseTierProfessionalRequiredDescription": "This feature is only available in the Professional Edition.",
|
|
"actionGetOrg": "Get Organization",
|
|
"actionUpdateOrg": "Update Organization",
|
|
"actionGetOrgUser": "Get Organization User",
|
|
"actionListOrgDomains": "List Organization Domains",
|
|
"actionCreateSite": "Create Site",
|
|
"actionDeleteSite": "Delete Site",
|
|
"actionGetSite": "Get Site",
|
|
"actionListSites": "List Sites",
|
|
"actionUpdateSite": "Update Site",
|
|
"actionListSiteRoles": "List Allowed Site Roles",
|
|
"actionCreateResource": "Create Resource",
|
|
"actionDeleteResource": "Delete Resource",
|
|
"actionGetResource": "Get Resource",
|
|
"actionListResource": "List Resources",
|
|
"actionUpdateResource": "Update Resource",
|
|
"actionListResourceUsers": "List Resource Users",
|
|
"actionSetResourceUsers": "Set Resource Users",
|
|
"actionSetAllowedResourceRoles": "Set Allowed Resource Roles",
|
|
"actionListAllowedResourceRoles": "List Allowed Resource Roles",
|
|
"actionSetResourcePassword": "Set Resource Password",
|
|
"actionSetResourcePincode": "Set Resource Pincode",
|
|
"actionSetResourceEmailWhitelist": "Set Resource Email Whitelist",
|
|
"actionGetResourceEmailWhitelist": "Get Resource Email Whitelist",
|
|
"actionCreateTarget": "Create Target",
|
|
"actionDeleteTarget": "Delete Target",
|
|
"actionGetTarget": "Get Target",
|
|
"actionListTargets": "List Targets",
|
|
"actionUpdateTarget": "Update Target",
|
|
"actionCreateRole": "Create Role",
|
|
"actionDeleteRole": "Delete Role",
|
|
"actionGetRole": "Get Role",
|
|
"actionListRole": "List Roles",
|
|
"actionUpdateRole": "Update Role",
|
|
"actionListAllowedRoleResources": "List Allowed Role Resources",
|
|
"actionInviteUser": "Invite User",
|
|
"actionRemoveUser": "Remove User",
|
|
"actionListUsers": "List Users",
|
|
"actionAddUserRole": "Add User Role",
|
|
"actionGenerateAccessToken": "Generate Access Token",
|
|
"actionDeleteAccessToken": "Delete Access Token",
|
|
"actionListAccessTokens": "List Access Tokens",
|
|
"actionCreateResourceRule": "Create Resource Rule",
|
|
"actionDeleteResourceRule": "Delete Resource Rule",
|
|
"actionListResourceRules": "List Resource Rules",
|
|
"actionUpdateResourceRule": "Update Resource Rule",
|
|
"actionListOrgs": "List Organizations",
|
|
"actionCheckOrgId": "Check ID",
|
|
"actionCreateOrg": "Create Organization",
|
|
"actionDeleteOrg": "Delete Organization",
|
|
"actionListApiKeys": "List API Keys",
|
|
"actionListApiKeyActions": "List API Key Actions",
|
|
"actionSetApiKeyActions": "Set API Key Allowed Actions",
|
|
"actionCreateApiKey": "Create API Key",
|
|
"actionDeleteApiKey": "Delete API Key",
|
|
"actionCreateIdp": "Create IDP",
|
|
"actionUpdateIdp": "Update IDP",
|
|
"actionDeleteIdp": "Delete IDP",
|
|
"actionListIdps": "List IDP",
|
|
"actionGetIdp": "Get IDP",
|
|
"actionCreateIdpOrg": "Create IDP Org Policy",
|
|
"actionDeleteIdpOrg": "Delete IDP Org Policy",
|
|
"actionListIdpOrgs": "List IDP Orgs",
|
|
"actionUpdateIdpOrg": "Update IDP Org",
|
|
"noneSelected": "None selected",
|
|
"orgNotFound2": "No organizations found.",
|
|
"searchProgress": "Search...",
|
|
"create": "Create",
|
|
"orgs": "Organizations",
|
|
"loginError": "An error occurred while logging in",
|
|
"passwordForgot": "Forgot your password?",
|
|
"otpAuth": "Two-Factor Authentication",
|
|
"otpAuthDescription": "Enter the code from your authenticator app or one of your single-use backup codes.",
|
|
"otpAuthSubmit": "Submit Code",
|
|
"idpContinue": "Or continue with",
|
|
"otpAuthBack": "Back to Log In",
|
|
"navbar": "Navigation Menu",
|
|
"navbarDescription": "Main navigation menu for the application",
|
|
"navbarDocsLink": "Documentation",
|
|
"commercialEdition": "Commercial Edition",
|
|
"otpErrorEnable": "Unable to enable 2FA",
|
|
"otpErrorEnableDescription": "An error occurred while enabling 2FA",
|
|
"otpSetupCheckCode": "Please enter a 6-digit code",
|
|
"otpSetupCheckCodeRetry": "Invalid code. Please try again.",
|
|
"otpSetup": "Enable Two-factor Authentication",
|
|
"otpSetupDescription": "Secure your account with an extra layer of protection",
|
|
"otpSetupScanQr": "Scan this QR code with your authenticator app or enter the secret key manually:",
|
|
"otpSetupSecretCode": "Authenticator Code",
|
|
"otpSetupSuccess": "Two-Factor Authentication Enabled",
|
|
"otpSetupSuccessStoreBackupCodes": "Your account is now more secure. Don't forget to save your backup codes.",
|
|
"otpErrorDisable": "Unable to disable 2FA",
|
|
"otpErrorDisableDescription": "An error occurred while disabling 2FA",
|
|
"otpRemove": "Disable Two-factor Authentication",
|
|
"otpRemoveDescription": "Disable two-factor authentication for your account",
|
|
"otpRemoveSuccess": "Two-Factor Authentication Disabled",
|
|
"otpRemoveSuccessMessage": "Two-factor authentication has been disabled for your account. You can enable it again at any time.",
|
|
"otpRemoveSubmit": "Disable 2FA",
|
|
"paginator": "Page {current} of {last}",
|
|
"paginatorToFirst": "Go to first page",
|
|
"paginatorToPrevious": "Go to previous page",
|
|
"paginatorToNext": "Go to next page",
|
|
"paginatorToLast": "Go to last page",
|
|
"copyText": "Copy text",
|
|
"copyTextFailed": "Failed to copy text: ",
|
|
"copyTextClipboard": "Copy to clipboard",
|
|
"inviteErrorInvalidConfirmation": "Invalid confirmation",
|
|
"passwordRequired": "Password is required",
|
|
"allowAll": "Allow All",
|
|
"permissionsAllowAll": "Allow All Permissions",
|
|
"githubUsernameRequired": "GitHub username is required",
|
|
"supportKeyRequired": "Supporter key is required",
|
|
"passwordRequirementsChars": "Password must be at least 8 characters",
|
|
"language": "Language",
|
|
"verificationCodeRequired": "Code is required",
|
|
"userErrorNoUpdate": "No user to update",
|
|
"siteErrorNoUpdate": "No site to update",
|
|
"resourceErrorNoUpdate": "No resource to update",
|
|
"authErrorNoUpdate": "No auth info to update",
|
|
"orgErrorNoUpdate": "No org to update",
|
|
"orgErrorNoProvided": "No org provided",
|
|
"apiKeysErrorNoUpdate": "No API key to update",
|
|
"sidebarOverview": "Overview",
|
|
"sidebarHome": "Home",
|
|
"sidebarSites": "Sites",
|
|
"sidebarResources": "Resources",
|
|
"sidebarAccessControl": "Access Control",
|
|
"sidebarUsers": "Users",
|
|
"sidebarInvitations": "Invitations",
|
|
"sidebarRoles": "Roles",
|
|
"sidebarShareableLinks": "Shareable Links",
|
|
"sidebarApiKeys": "API Keys",
|
|
"sidebarSettings": "Settings",
|
|
"sidebarAllUsers": "All Users",
|
|
"sidebarIdentityProviders": "Identity Providers",
|
|
"sidebarLicense": "License",
|
|
"enableDockerSocket": "Enable Docker Socket",
|
|
"enableDockerSocketDescription": "Enable Docker Socket discovery for populating container information. Socket path must be provided to Newt.",
|
|
"enableDockerSocketLink": "Learn More",
|
|
"viewDockerContainers": "View Docker Containers",
|
|
"containersIn": "Containers in {siteName}",
|
|
"selectContainerDescription": "Select any container to use as a hostname for this target. Click a port to use a port.",
|
|
"containerName": "Name",
|
|
"containerImage": "Image",
|
|
"containerState": "State",
|
|
"containerNetworks": "Networks",
|
|
"containerHostnameIp": "Hostname/IP",
|
|
"containerLabels": "Labels",
|
|
"containerLabelsCount": "{count} label{s,plural,one{} other{s}}",
|
|
"containerLabelsTitle": "Container Labels",
|
|
"containerLabelEmpty": "<empty>",
|
|
"containerPorts": "Ports",
|
|
"containerPortsMore": "+{count} more",
|
|
"containerActions": "Actions",
|
|
"select": "Select",
|
|
"noContainersMatchingFilters": "No containers found matching the current filters.",
|
|
"showContainersWithoutPorts": "Show containers without ports",
|
|
"showStoppedContainers": "Show stopped containers",
|
|
"noContainersFound": "No containers found. Make sure Docker containers are running.",
|
|
"searchContainersPlaceholder": "Search across {count} containers...",
|
|
"searchResultsCount": "{count} result{s,plural,one{} other{s}}",
|
|
"filters": "Filters",
|
|
"filterOptions": "Filter Options",
|
|
"filterPorts": "Ports",
|
|
"filterStopped": "Stopped",
|
|
"clearAllFilters": "Clear all filters",
|
|
"columns": "Columns",
|
|
"toggleColumns": "Toggle Columns",
|
|
"refreshContainersList": "Refresh containers list",
|
|
"searching": "Searching...",
|
|
"noContainersFoundMatching": "No containers found matching \"{filter}\".",
|
|
"light": "light",
|
|
"dark": "dark",
|
|
"system": "system",
|
|
"theme": "Theme",
|
|
"initialSetupTitle": "Initial Server Setup",
|
|
"initialSetupDescription": "Create the intial server admin account. Only one server admin can exist. You can always change these credentials later.",
|
|
"createAdminAccount": "Create Admin Account",
|
|
"setupErrorCreateAdmin": "An error occurred while creating the server admin account."
|
|
}
|