{
    "APP_TITLE": {
        "VMW_HARBOR": "Harbor",
        "HARBOR": "Harbor",
        "VIC": "vSphere Integrated Containers",
        "MGMT": "Management",
        "REG": "Registry",
        "HARBOR_SWAGGER": "Harbor Swagger"
    },
    "SIGN_IN": {
        "REMEMBER": "Remember me",
        "INVALID_MSG": "Invalid user name or password.",
        "FORGOT_PWD": "Forgot password",
        "HEADER_LINK": "Sign In"
    },
    "SIGN_UP": {
        "TITLE": "Sign Up"
    },
    "BUTTON": {
        "STOP": "STOP",
        "CANCEL": "CANCEL",
        "OK": "OK",
        "DELETE": "DELETE",
        "LOG_IN": "LOG IN",
        "LOG_IN_OIDC": "Login via OIDC provider",
        "SIGN_UP_LINK": "Sign up for an account",
        "SIGN_UP": "SIGN UP",
        "CONFIRM": "CONFIRM",
        "SEND": "SEND",
        "SAVE": "SAVE",
        "TEST_MAIL": "TEST MAIL SERVER",
        "CLOSE": "CLOSE",
        "TEST_LDAP": "TEST LDAP SERVER",
        "TEST_OIDC": "TEST OIDC SERVER",
        "MORE_INFO": "More info...",
        "YES": "YES",
        "NO": "NO",
        "NEGATIVE": "NEGATIVE",
        "COPY": "COPY",
        "EDIT": "EDIT",
        "SWITCH": "SWITCH",
        "REPLICATE": "REPLICATE",
        "ACTIONS": "Actions",
        "BROWSE": "Browse",
        "UPLOAD": "Upload",
        "NO_FILE": "No file selected",
        "ADD": "ADD",
        "RUN": "RUN",
        "CONTINUE": "CONTINUE",
        "ENABLE": "ENABLE",
        "DISABLE": "DISABLE"
    },
    "BATCH": {
        "DELETED_SUCCESS": "Deleted successfully",
        "DELETED_FAILURE": "Deleted failed",
        "SWITCH_SUCCESS": "Switch successfully",
        "SWITCH_FAILURE": "Switch failed",
        "REPLICATE_SUCCESS": "Started successfully",
        "REPLICATE_FAILURE": "Started failed",
        "STOP_SUCCESS": "Stop successfully",
        "STOP_FAILURE": "Stop execution failed",
        "TIME_OUT": "Gateway time-out"
    },
    "TOOLTIP": {
        "NAME_FILTER": "Filter the name of the resource. Leave empty or use '**' to match all. 'library/**' only matches resources under 'library'. For more patterns, please refer to the user guide.",
        "TAG_FILTER": "Filter the tag/version part of the resources. Leave empty or use '**' to match all. '1.0*' only matches the tags that starts with '1.0'. For more patterns, please refer to the user guide.",
        "LABEL_FILTER": "Filter the resources according to labels.",
        "RESOURCE_FILTER": "Filter the type of resources.",
        "PUSH_BASED": "Push the resources from the local Harbor to the remote registry.",
        "PULL_BASED": "Pull the resources from the remote registry to the local Harbor.",
        "DESTINATION_NAMESPACE": "Specify the destination namespace. If empty, the resources will be put under the same namespace as the source.",
        "OVERRIDE": "Specify whether to override the resources at the destination if a resource with the same name exists.",
        "EMAIL": "Email should be a valid email address like name@example.com.",
        "USER_NAME": "Cannot contain special characters and maximum length should be 255 characters.",
        "FULL_NAME": "Maximum length should be 20 characters.",
        "COMMENT": "Length of comment should be less than 30 characters.",
        "CURRENT_PWD": "Current password is required.",
        "PASSWORD": "Password should be 8-20 characters long with at least 1 uppercase, 1 lowercase and 1 number.",
        "CONFIRM_PWD": "Passwords do not match.",
        "SIGN_IN_USERNAME": "Username is required.",
        "SIGN_IN_PWD": "Password is required.",
        "SIGN_UP_MAIL": "Email is only used for resetting your password.",
        "SIGN_UP_REAL_NAME": "First and last name",
        "ITEM_REQUIRED": "Field is required.",
        "SCOPE_REQUIRED": "Field is required and should be in scope format.",
        "NUMBER_REQUIRED": "Field is required and should be numbers.",
        "PORT_REQUIRED": "Field is required and should be valid port number.",
        "CRON_REQUIRED": "Field is required and should be in cron format.",
        "EMAIL_EXISTING": "Email address already exists.",
        "USER_EXISTING": "Username is already in use.",
        "RULE_USER_EXISTING": "Name is already in use.",
        "EMPTY": "Name is required",
        "NONEMPTY": "Can't be empty",
        "REPO_TOOLTIP": "Users can not do any operations to the images in this mode.",
        "ENDPOINT_FORMAT": "Endpoint must start with HTTP:// or HTTPS://.",
        "OIDC_ENDPOIT_FORMAT": "Endpoint must start with HTTPS://.",
        "OIDC_NAME": "The name of the OIDC provider.",
        "OIDC_ENDPOINT": "The URL of an OIDC-complaint server.",
        "OIDC_SCOPE": "The scope sent to OIDC server during authentication.  It has to contain “openid”, and “offline_access”.  If you are using google, please remove “offline_access” from this field.",
        "OIDC_VERIFYCERT": "Uncheck this box if your OIDC server is hosted via self-signed certificate.",
        "OIDC_GROUP_CLAIM": "The name of Claim in the ID token whose value is the list of group names.",
        "OIDC_GROUP_CLAIM_WARNING": "It can only contain letters, numbers, underscores, and the input length is no more than 256 characters.",
        "NEW_SECRET": "The secret must longer than 8 chars with at least 1 uppercase letter, 1 lowercase letter and 1 number"
    },
    "PLACEHOLDER": {
        "CURRENT_PWD": "Enter current password",
        "NEW_PWD": "Enter new password",
        "CONFIRM_PWD": "Confirm new password",
        "USER_NAME": "Enter username",
        "MAIL": "Enter email address",
        "FULL_NAME": "Enter full name",
        "SIGN_IN_NAME": "Username",
        "SIGN_IN_PWD": "Password"
    },
    "PROFILE": {
        "TITLE": "User Profile",
        "USER_NAME": "Username",
        "EMAIL": "Email",
        "FULL_NAME": "First and last name",
        "COMMENT": "Comments",
        "PASSWORD": "Password",
        "SAVE_SUCCESS": "User profile saved successfully.",
        "ADMIN_RENAME_BUTTON": "Change username",
        "ADMIN_RENAME_TIP": "Select the button in order to change the username to \"admin@harbor.local\". This operation can not be undone.",
        "RENAME_SUCCESS": "Rename success!",
        "RENAME_CONFIRM_INFO": "Warning, changing the name to admin@harbor.local can not be undone.",
        "CLI_PASSWORD": "CLI secret",
        "CLI_PASSWORD_TIP": "You can use this cli secret as password when using docker/helm cli to access Harbor.",
        "COPY_SUCCESS": "copy success",
        "COPY_ERROR": "copy failed",
        "ADMIN_CIL_SECRET_BUTTON": "GENERATE SECRET",
        "ADMIN_CIL_SECRET_RESET_BUTTON": "Upload Your Own Secret",
        "NEW_SECRET": "Secret",
        "CONFIRM_SECRET": "Re-enter Secret",
        "GENERATE_SUCCESS": "Cli secret setting is successful",
        "GENERATE_ERROR": "Cli secret setting is failed",
        "CONFIRM_TITLE_CLI_GENERATE": "Are you sure you can regenerate secret?",
        "CONFIRM_BODY_CLI_GENERATE": "If you regenerate cli secret, the old cli secret will be discarded"
    },
    "CHANGE_PWD": {
        "TITLE": "Change Password",
        "CURRENT_PWD": "Current Password",
        "NEW_PWD": "New Password",
        "CONFIRM_PWD": "Confirm Password",
        "SAVE_SUCCESS": "User password changed successfully.",
        "PASS_TIPS": "8-20 characters long with 1 uppercase, 1 lowercase and 1 number"
    },
    "ACCOUNT_SETTINGS": {
        "PROFILE": "User Profile",
        "CHANGE_PWD": "Change Password",
        "ABOUT": "About",
        "LOGOUT": "Log Out"
    },
    "GLOBAL_SEARCH": {
        "PLACEHOLDER": "Search {{param}}...",
        "PLACEHOLDER_VIC": "Search Registry..."
    },
    "SIDE_NAV": {
        "DASHBOARD": "Dashboard",
        "PROJECTS": "Projects",
        "SYSTEM_MGMT": {
            "NAME": "Administration",
            "USER": "Users",
            "GROUP": "Groups",
            "REGISTRY": "Registries",
            "REPLICATION": "Replications",
            "CONFIG": "Configuration",
            "VULNERABILITY": "Vulnerability",
            "GARBAGE_COLLECTION": "Garbage Collection"
        },
        "LOGS": "Logs",
        "TASKS": "Tasks",
        "API_EXPLORER": "API EXPLORER"
    },
    "USER": {
        "ADD_ACTION": "New User",
        "ENABLE_ADMIN_ACTION": "SET AS ADMIN",
        "DISABLE_ADMIN_ACTION": "REVOKE ADMIN",
        "DEL_ACTION": "Delete",
        "FILTER_PLACEHOLDER": "Filter users",
        "COLUMN_NAME": "Name",
        "COLUMN_ADMIN": "Administrator",
        "COLUMN_EMAIL": "Email",
        "COLUMN_REG_NAME": "Registration time",
        "IS_ADMIN": "Yes",
        "IS_NOT_ADMIN": "No",
        "ADD_USER_TITLE": "New User",
        "SAVE_SUCCESS": "New user created successfully.",
        "DELETION_TITLE": "Confirm user deletion",
        "DELETION_SUMMARY": "Do you want to delete user {{param}}?",
        "DELETE_SUCCESS": "Users deleted successfully.",
        "ITEMS": "items",
        "OF": "of",
        "RESET_Ok": "Users password reset successfully",
        "EXISTING_PASSWORD": "The new password can not be same with the old one"
    },
    "PROJECT": {
        "PROJECTS": "Projects",
        "NAME": "Project Name",
        "ROLE": "Role",
        "PUBLIC_OR_PRIVATE": "Access Level",
        "REPO_COUNT": "Repositories Count",
        "CHART_COUNT": "Chart Count",
        "CREATION_TIME": "Creation Time",
        "ACCESS_LEVEL": "Access Level",
        "PUBLIC": "Public",
        "PRIVATE": "Private",
        "MAKE": "Make",
        "NEW_POLICY": "New Replication Rule",
        "DELETE": "Delete",
        "ALL_PROJECTS": "All Projects",
        "PRIVATE_PROJECTS": "Private Projects",
        "PUBLIC_PROJECTS": "Public Projects",
        "PROJECT": "Project",
        "NEW_PROJECT": "New Project",
        "NAME_TOOLTIP": "Project name should be at least 2 characters long with lower case characters, numbers and ._- and must be start with characters or numbers.",
        "NAME_IS_REQUIRED": "Project name is required.",
        "NAME_MINIMUM_LENGTH": "Project name is too short, it should be greater than 2 characters.",
        "NAME_ALREADY_EXISTS": "Project name already exists.",
        "NAME_IS_ILLEGAL": "Project name is invalid.",
        "UNKNOWN_ERROR": "An unknown error occurred while creating the project.",
        "ITEMS": "items",
        "DELETION_TITLE": "Confirm removal of project members",
        "DELETION_SUMMARY": "Do you want to delete project {{param}}?",
        "FILTER_PLACEHOLDER": "Filter Projects",
        "REPLICATION_RULE": "Replication Rule",
        "CREATED_SUCCESS": "Created project successfully.",
        "DELETED_SUCCESS": "Deleted projects successfully.",
        "TOGGLED_SUCCESS": "Toggled project successfully.",
        "FAILED_TO_DELETE_PROJECT": "Project contains repositories or replication rules or helm-charts cannot be deleted.",
        "INLINE_HELP_PUBLIC": "When a project is set to public, anyone has read permission to the repositories under this project, and the user does not need to run \"docker login\" before pulling images under this project.",
        "OF": "of",
        "COUNT_QUOTA": "Count quota",
        "STORAGE_QUOTA": "Storage quota",
        "COUNT_QUOTA_TIP": "Please enter an integer between '1' & '100,000,000', '-1' for unlimited.",
        "STORAGE_QUOTA_TIP": "The upper limit of Storage Quota only takes integer values, capped at '1024TB'. Enter '-1' for unlimited quota",
        "QUOTA_UNLIMIT_TIP": "For unlimited quota, please enter '-1'."
    },
    "PROJECT_DETAIL": {
        "SUMMARY": "Summary",
        "REPOSITORIES": "Repositories",
        "REPLICATION": "Replication",
        "USERS": "Members",
        "LOGS": "Logs",
        "LABELS": "Labels",
        "PROJECTS": "Projects",
        "CONFIG": "Configuration",
        "HELMCHART": "Helm Charts",
        "ROBOT_ACCOUNTS": "Robot Accounts",
        "WEBHOOKS": "Webhooks",
        "IMMUTABLE_TAG": "Immutable Tag"
    },
    "PROJECT_CONFIG": {
        "REGISTRY": "Project registry",
        "PUBLIC_TOGGLE": "Public",
        "PUBLIC_POLICY": "Making a project registry public will make all repositories accessible to everyone.",
        "SECURITY": "Deployment security",
        "CONTENT_TRUST_TOGGLE": "Enable content trust",
        "CONTENT_TRUST_POLCIY": "Allow only verified images to be deployed.",
        "PREVENT_VULNERABLE_TOGGLE": "Prevent vulnerable images from running.",
        "PREVENT_VULNERABLE_1": "Prevent images with vulnerability severity of",
        "PREVENT_VULNERABLE_2": "and above from being deployed.",
        "SCAN": "Vulnerability scanning",
        "AUTOSCAN_TOGGLE": "Automatically scan images on push",
        "AUTOSCAN_POLICY": "Automatically scan images when they are pushed to the project registry."
    },
    "MEMBER": {
        "NEW_USER": "Add User Member",
        "NEW_MEMBER": "New Member",
        "MEMBER": "Member",
        "NAME": "Name",
        "ROLE": "Role",
        "SYS_ADMIN": "System Admin",
        "PROJECT_ADMIN": "Project Admin",
        "PROJECT_MASTER": "Master",
        "DEVELOPER": "Developer",
        "GUEST": "Guest",
        "LIMITED_GUEST": "Limited Guest",
        "DELETE": "Delete",
        "ITEMS": "items",
        "ACTIONS": "Actions",
        "USER": " User",
        "USERS": "Users",
        "EMAIL": "Email",
        "ADD_USER": "Add User",
        "NEW_USER_INFO": "Add a user to be a member of this project with specified role",
        "NEW_GROUP": "New Group",
        "IMPORT_GROUP": "Add Group Member",
        "NEW_GROUP_INFO": "Add an existing user group or select a user group from LDAP/AD to project member",
        "ADD_GROUP_SELECT": "Add an existing user group to project member",
        "CREATE_GROUP_SELECT": "Add a group from LDAP to project member",
        "LDAP_SEARCH_DN": "LDAP Group DN",
        "LDAP_SEARCH_NAME": "Name",
        "LDAP_GROUP": "Group",
        "LDAP_GROUPS": "Groups",
        "LDAP_PROPERTY": "Property",
        "ACTION": "ACTION",
        "MEMBER_TYPE": "Member Type",
        "GROUP_TYPE": "Group",
        "USER_TYPE": "User",
        "USERNAME_IS_REQUIRED": "Username is required",
        "USERNAME_DOES_NOT_EXISTS": "Username does not exist.",
        "USERNAME_ALREADY_EXISTS": "Username already exists.",
        "UNKNOWN_ERROR": "Unknown error occurred while adding member.",
        "FILTER_PLACEHOLDER": "Filter Members",
        "DELETION_TITLE": "Confirm project members deletion",
        "DELETION_SUMMARY": "Do you want to delete project members {{param}}?",
        "ADDED_SUCCESS": "Added member successfully.",
        "DELETED_SUCCESS": "Deleted member successfully.",
        "SWITCHED_SUCCESS": "Switched member role successfully.",
        "OF": "of",
        "SWITCH_TITLE": "Confirm project members switch",
        "SWITCH_SUMMARY": "Do you want to switch project members {{param}}?",
        "SET_ROLE": "SET ROLE",
        "REMOVE": "Remove"
    },
    "ROBOT_ACCOUNT": {
        "NAME": "Name",
        "PERMISSIONS": "Permissions",
        "TOKEN": "Token",
        "NEW_ROBOT_ACCOUNT": "NEW ROBOT ACCOUNT",
        "ENABLED_STATE": "Enabled state",
        "NUMBER_REQUIRED": "Field is required and should be an integer other than 0.",
        "DESCRIPTION": "Description",
        "EXPIRATION": "Expiration",
        "TOKEN_EXPIRATION": "Robot Token Expiration (Days)",
        "ACTION": "Action",
        "EDIT": "Edit",
        "ITEMS": "items",
        "OF": "of",
        "DISABLE_ACCOUNT": "Disable Account",
        "ENABLE_ACCOUNT": "Enable Account",
        "DELETE": "Delete",
        "CREAT_ROBOT_ACCOUNT": "Create Robot Account",
        "PERMISSIONS_IMAGE": "Image",
        "PERMISSIONS_HELMCHART": "Helm Chart",
        "PUSH": "Push",
        "PULL": "Pull",
        "FILTER_PLACEHOLDER": "Filter Robot Accounts",
        "ROBOT_NAME": "Cannot contain special characters(~#$%) and maximum length should be 255 characters.",
        "ACCOUNT_EXISTING": "Robot Account is already exists.",
        "ALERT_TEXT": "This is the only time to copy your personal access token.You wont't have another opportunity",
        "CREATED_SUCCESS": "Created '{{param}}' successfully.",
        "COPY_SUCCESS": "Copy token successfully of '{{param}}'",
        "DELETION_TITLE": "Confirm removal of robot accounts",
        "DELETION_SUMMARY": "Do you want to delete robot accounts {{param}}?",
        "PULL_IS_MUST": "Pull permission is checked by default and can not be modified.",
        "EXPORT_TO_FILE": "export to file"
    },
    "WEBHOOK": {
        "EDIT_BUTTON": "EDIT",
        "ENABLED_BUTTON": "ENABLE",
        "DISABLED_BUTTON": "DISABLE",
        "TYPE": "Webhook",
        "STATUS": "Status",
        "CREATED": "Created",
        "ENABLED": "Enabled",
        "DISABLED": "Disabled",
        "OF": "of",
        "ITEMS": "items",
        "LAST_TRIGGERED": "Last Triggered",
        "EDIT_WEBHOOK": "Webhook Endpoint",
        "CREATE_WEBHOOK": "Getting started with webhooks",
        "EDIT_WEBHOOK_DESC": "Specify the endpoint for receiving webhook notifications",
        "CREATE_WEBHOOK_DESC": "To get started with webhooks, provide an endpoint and credentials to access the webhook server.",
        "ENDPOINT_URL": "Endpoint URL",
        "URL_IS_REQUIRED": "Endpoint URL is required.",
        "AUTH_HEADER": "Auth Header",
        "VERIFY_REMOTE_CERT": "Verify Remote Certificate",
        "TEST_ENDPOINT_BUTTON": "TEST ENDPOINT",
        "CANCEL_BUTTON": "CANCEL",
        "SAVE_BUTTON": "SAVE",
        "TEST_ENDPOINT_SUCCESS": "Connection tested successfully.",
        "TEST_ENDPOINT_FAILURE": "Failed to ping endpoint.",
        "ENABLED_WEBHOOK_TITLE": "Enable Project Webhooks",
        "ENABLED_WEBHOOK_SUMMARY": "Do you want to enable webhooks for project ",
        "DISABLED_WEBHOOK_TITLE": "Disable Project Webhooks",
        "DISABLED_WEBHOOK_SUMMARY": "Do you want to disable webhooks for project "
    },
    "GROUP": {
        "GROUP": "Group",
        "GROUPS": "Groups",
        "IMPORT_LDAP_GROUP": "Import LDAP Group",
        "IMPORT_HTTP_GROUP": "New HTTP Group",
        "IMPORT_OIDC_GROUP": "New OIDC Group",
        "ADD": "New Group",
        "EDIT": "Edit",
        "DELETE": "Delete",
        "NAME": "Name",
        "TYPE": "Type",
        "DN": "DN",
        "GROUP_DN": "Ldap Group DN",
        "PROPERTY": "Property",
        "REG_TIME": "Registration Time",
        "ADD_GROUP_SUCCESS": "Add group success",
        "EDIT_GROUP_SUCCESS": "Edit group success",
        "LDAP_TYPE": "LDAP",
        "HTTP_TYPE": "HTTP",
        "OIDC_TYPE": "OIDC",
        "OF": "of",
        "ITEMS": "items",
        "NEW_MEMBER": "New Group Member",
        "NEW_USER_INFO": "Add a group to be a member of this project with specified role",
        "ROLE": "Role",
        "SYS_ADMIN": "System Admin",
        "PROJECT_ADMIN": "Project Admin",
        "PROJECT_MASTER": "Master",
        "DEVELOPER": "Developer",
        "GUEST": "Guest"
    },
    "AUDIT_LOG": {
        "USERNAME": "Username",
        "REPOSITORY_NAME": "Repository Name",
        "TAGS": "Tags",
        "OPERATION": "Operation",
        "OPERATIONS": "Operations",
        "TIMESTAMP": "Timestamp",
        "ALL_OPERATIONS": "All Operations",
        "PULL": "Pull",
        "PUSH": "Push",
        "CREATE": "Create",
        "DELETE": "Delete",
        "OTHERS": "Others",
        "ADVANCED": "Advanced",
        "SIMPLE": "Simple",
        "ITEMS": "items",
        "FILTER_PLACEHOLDER": "Filter Logs",
        "INVALID_DATE": "Invalid date.",
        "OF": "of",
        "NOT_FOUND": "We couldn't find any logs!"
    },
    "REPLICATION": {
        "YES": "Yes",
        "SECONDS": "Seconds",
        "MINUTES": "Minutes",
        "HOURS": "Hours",
        "MONTH": "Month",
        "DAY_MONTH": "Day of month",
        "DAY_WEEK": "Day of week",
        "CRON-TITLE": "Pattern description for cron '* * * * * *'",
        "FIELD_NAME": "Field name",
        "MANDATORY": "Mandatory?",
        "ALLOWED_VALUES": "Allowed values",
        "ALLOWED_CHARACTERS": "Allowed special characters",
        "TOTAL": "Total",
        "OVERRIDE": "Override",
        "ENABLED_RULE": "Enable rule",
        "OVERRIDE_INFO": "Override",
        "OPERATION": "Operation",
        "CURRENT": "current",
        "FILTER_PLACEHOLDER": "Filter Tasks",
        "STOP_TITLE": "Confirm Stop Executions",
        "BOTH": "both",
        "STOP_SUCCESS": "Stop Execution {{param}} Successful",
        "STOP_SUMMARY": "Do you want to stop the executions {{param}}?",
        "TASK_ID": "Task ID",
        "RESOURCE_TYPE": "Resource Type",
        "SOURCE": "Source",
        "DESTINATION": "Destination",
        "POLICY": "Policy",
        "DURATION": "Duration",
        "SUCCESS_RATE": "Success Rate",
        "SUCCESS": "SUCCESS",
        "FAILURE": "FAILURE",
        "IN_PROGRESS": "IN PROGRESS",
        "REPLICATION_RULE": "Replication Rule",
        "NEW_REPLICATION_RULE": "New Replication Rule",
        "ENDPOINTS": "Endpoints",
        "FILTER_POLICIES_PLACEHOLDER": "Filter Rules",
        "FILTER_EXECUTIONS_PLACEHOLDER": "Filter Executions",
        "DELETION_TITLE": "Confirm Rules Deletion",
        "DELETION_SUMMARY": "Do you want to delete rules {{param}}?",
        "REPLICATION_TITLE": "Confirm Rules replication",
        "REPLICATION_SUMMARY": "Do you want to replicate the Rules {{param}}?",
        "DELETION_TITLE_FAILURE": "failed to delete Rule Deletion",
        "DELETION_SUMMARY_FAILURE": "have pending/running/retrying status",
        "REPLICATE_SUMMARY_FAILURE": "have pending/running status",
        "FILTER_TARGETS_PLACEHOLDER": "Filter Endpoints",
        "DELETION_TITLE_TARGET": "Confirm Endpoint Deletion",
        "DELETION_SUMMARY_TARGET": "Do you want to delete the endpoint {{param}}?",
        "ADD_POLICY": "New Replication Rule",
        "EDIT_POLICY": "Edit",
        "EDIT_POLICY_TITLE": "Edit Replication Rule",
        "DELETE_POLICY": "Delete",
        "TEST_CONNECTION": "Test Connection",
        "TESTING_CONNECTION": "Testing Connection...",
        "TEST_CONNECTION_SUCCESS": "Connection tested successfully.",
        "TEST_CONNECTION_FAILURE": "Failed to ping endpoint.",
        "ID": "ID",
        "NAME": "Name",
        "NAME_IS_REQUIRED": "Name is required.",
        "DESCRIPTION": "Description",
        "ENABLE": "Enable",
        "DISABLE": "Disable",
        "REPLICATION_MODE": "Replication Mode",
        "SRC_REGISTRY": "Source registry",
        "DESTINATION_NAMESPACE": "Destination registry:Namespace",
        "LAST_REPLICATION": "Last Replication",
        "DESTINATION_NAME_IS_REQUIRED": "Endpoint name is required.",
        "NEW_DESTINATION": "New Endpoint",
        "DESTINATION_URL": "Endpoint URL",
        "DESTINATION_URL_IS_REQUIRED": "Endpoint URL is required.",
        "DESTINATION_USERNAME": "Username",
        "DESTINATION_PASSWORD": "Password",
        "ALL_STATUS": "All Status",
        "ENABLED": "Enabled",
        "DISABLED": "Disabled",
        "LAST_START_TIME": "Last Start Time",
        "ACTIVATION": "Activation",
        "REPLICATION_EXECUTION": "Execution",
        "REPLICATION_EXECUTIONS": "Executions",
        "STOPJOB": "Stop",
        "ALL": "All",
        "PENDING": "Pending",
        "RUNNING": "Running",
        "ERROR": "Error",
        "RETRYING": "Retrying",
        "STOPPED": "STOPPED",
        "FINISHED": "Finished",
        "CANCELED": "Canceled",
        "SIMPLE": "Simple",
        "ADVANCED": "Advanced",
        "STATUS": "Status",
        "REPLICATION_TRIGGER": "Trigger",
        "CREATION_TIME": "Start Time",
        "UPDATE_TIME": "Update Time",
        "END_TIME": "End Time",
        "LOGS": "Logs",
        "OF": "of",
        "ITEMS": "items",
        "NO_LOGS": "No log",
        "TOGGLE_ENABLE_TITLE": "Enable Rule",
        "CONFIRM_TOGGLE_ENABLE_POLICY": "After enabling the replication rule, all repositories under the project will be replicated to the destination registry. \nPlease confirm to continue.",
        "TOGGLE_DISABLE_TITLE": "Disable Rule",
        "CONFIRM_TOGGLE_DISABLE_POLICY": "After disabling the rule, all unfinished replication jobs of this rule will be stopped and canceled. \nPlease confirm to continue.",
        "CREATED_SUCCESS": "Created replication rule successfully.",
        "UPDATED_SUCCESS": "Updated replication rule successfully.",
        "DELETED_SUCCESS": "Deleted replications rule successfully.",
        "DELETED_FAILED": "Deleted replications rule failed.",
        "TOGGLED_SUCCESS": "Toggled replication rule status successfully.",
        "CANNOT_EDIT": "Replication rule cannot be changed while it is enabled.",
        "POLICY_ALREADY_EXISTS": "Replication rule already exists.",
        "FAILED_TO_DELETE_POLICY_ENABLED": "Cannot delete rule: rule has unfinished job(s)",
        "FOUND_ERROR_IN_JOBS": "Found errors in the replication job(s), please check.",
        "INVALID_DATE": "Invalid date.",
        "PLACEHOLDER": "We couldn't find any replication rules!",
        "JOB_PLACEHOLDER": "We couldn't find any replication jobs!",
        "JOB_LOG_VIEWER": "View Replication Job Log",
        "NO_ENDPOINT_INFO": "Please add an endpoint first",
        "NO_PROJECT_INFO": "This project is not exist",
        "SOURCE_RESOURCE_FILTER": "Source resource filter",
        "SCHEDULED": "Scheduled",
        "MANUAL": "Manual",
        "EVENT_BASED": "Event Based",
        "DAILY": "Daily",
        "WEEKLY": "Weekly",
        "SETTING": "Options",
        "TRIGGER": "Triggering Condition",
        "TARGETS": "Target",
        "MODE": "Mode",
        "TRIGGER_MODE": "Trigger Mode",
        "SOURCE_PROJECT": "Source project",
        "REPLICATE": "Replicate",
        "DELETE_REMOTE_IMAGES": "Delete remote resources when locally deleted",
        "DELETE_ENABLED": "Enabled this policy",
        "REPLICATE_IMMEDIATE": "Replicate existing images immediately",
        "NEW": "New",
        "NAME_TOOLTIP": "replication rule name should be at least 2 characters long with lower case characters, numbers and ._- and must be start with characters or numbers.",
        "DESTINATION_NAME_TOOLTIP": "Destination name should be at least 2 characters long with lower case characters, numbers and ._- and must be start with characters or numbers.",
        "ACKNOWLEDGE": "Acknowledge",
        "RULE_DISABLED": "This rule has been disabled because a label used in its filter has been deleted. \n Edit the rule and update its filter to enable it.",
        "REPLI_MODE": "Replication mode",
        "SOURCE_REGISTRY": "Source registry",
        "SOURCE_NAMESPACES": "Source namespaces",
        "DEST_REGISTRY": "Destination registry",
        "DEST_NAMESPACE": "Destination namespace",
        "NAMESPACE_TOOLTIP": "Namespace name should be at least 2 characters long with lower case characters, numbers and ._- and must be start with characters or numbers.",
        "TAG": "Tag",
        "LABEL": "Label",
        "RESOURCE": "Resource"
    },
    "DESTINATION": {
        "NEW_ENDPOINT": "New Endpoint",
        "PROVIDER": "Provider",
        "ENDPOINT": "Endpoint",
        "NAME": "Name",
        "NAME_IS_REQUIRED": "Endpoint name is required.",
        "URL": "Endpoint URL",
        "URL_IS_REQUIRED": "Endpoint URL is required.",
        "AUTHENTICATION": "Authentication",
        "ACCESS_ID": "Access ID",
        "ACCESS_SECRET": "Access Secret",
        "STATUS": "Status",
        "TEST_CONNECTION": "Test Connection",
        "TITLE_EDIT": "Edit Endpoint",
        "TITLE_ADD": "New Registry Endpoint",
        "EDIT": "Edit",
        "DELETE": "Delete",
        "TESTING_CONNECTION": "Testing Connection...",
        "TEST_CONNECTION_SUCCESS": "Connection tested successfully.",
        "TEST_CONNECTION_FAILURE": "Failed to ping endpoint.",
        "CONFLICT_NAME": "Endpoint name already exists.",
        "INVALID_NAME": "Invalid endpoint name.",
        "FAILED_TO_GET_TARGET": "Failed to get endpoint.",
        "CREATION_TIME": "Creation Time",
        "OF": "of",
        "ITEMS": "items",
        "CREATED_SUCCESS": "Created endpoint successfully.",
        "UPDATED_SUCCESS": "Updated endpoint successfully.",
        "DELETED_SUCCESS": "Deleted endpoints successfully.",
        "DELETED_FAILED": "Deleted endpoints failed.",
        "CANNOT_EDIT": "Endpoint cannot be changed while the replication rule is enabled.",
        "FAILED_TO_DELETE_TARGET_IN_USED": "Failed to delete the endpoint in use.",
        "PLACEHOLDER": "We couldn't find any endpoints!"
    },
    "REPOSITORY": {
        "COPY_DIGEST_ID": "Copy Digest",
        "DELETE": "Delete",
        "NAME": "Name",
        "TAGS_COUNT": "Tags",
        "PULL_COUNT": "Pulls",
        "PULL_COMMAND": "Pull Command",
        "PULL_TIME": "Pull Time",
        "PUSH_TIME": "Push Time",
        "MY_REPOSITORY": "My Repository",
        "PUBLIC_REPOSITORY": "Public Repository",
        "DELETION_TITLE_REPO": "Confirm Repository Deletion",
        "DELETION_TITLE_REPO_SIGNED": "Repository cannot be deleted",
        "DELETION_SUMMARY_REPO_SIGNED": "Repository '{{repoName}}' cannot be deleted because the following signed images existing.\n{{signedImages}} \nYou should unsign all the signed images before deleting the repository!",
        "DELETION_SUMMARY_REPO": "Do you want to delete repository {{repoName}}?",
        "DELETION_TITLE_TAG": "Confirm Tag Deletion",
        "DELETION_SUMMARY_TAG": "Do you want to delete tag {{param}}?",
        "DELETION_TITLE_TAG_DENIED": "Signed tag cannot be deleted",
        "DELETION_SUMMARY_TAG_DENIED": "The tag must be removed from the Notary before it can be deleted.\nDelete from Notary via this command:\n",
        "TAGS_NO_DELETE": "Delete is prohibited in read only mode.",
        "FILTER_FOR_REPOSITORIES": "Filter Repositories",
        "TAG": "Tag",
        "SIZE": "Size",
        "VULNERABILITY": "Vulnerability",
        "BUILD_HISTORY": "Build History",
        "SIGNED": "Signed",
        "AUTHOR": "Author",
        "CREATED": "Creation Time",
        "DOCKER_VERSION": "Docker Version",
        "ARCHITECTURE": "Architecture",
        "OS": "OS",
        "SHOW_DETAILS": "Show Details",
        "REPOSITORIES": "Repositories",
        "OF": "of",
        "ITEMS": "items",
        "NO_ITEMS": "NO ITEMS",
        "POP_REPOS": "Popular Repositories",
        "DELETED_REPO_SUCCESS": "Deleted repositories successfully.",
        "DELETED_TAG_SUCCESS": "Deleted tags successfully.",
        "COPY": "Copy",
        "NOTARY_IS_UNDETERMINED": "Cannot determine the signature of this tag.",
        "PLACEHOLDER": "We couldn't find any repositories!",
        "INFO": "Info",
        "NO_INFO": "No description for this repo. You can add it to this repository.",
        "IMAGE": "Images",
        "LABELS": "Labels",
        "ADD_LABEL_TO_IMAGE": "Add labels to this image",
        "FILTER_BY_LABEL": "Filter images by label",
        "ADD_LABELS": "Add labels",
        "RETAG": "Retag",
        "ACTION": "ACTION",
        "DEPLOY": "DEPLOY",
        "ADDITIONAL_INFO": "Add Additional Info",
        "REPO_NAME": "Repository",
        "MARKDOWN": "Styling with Markdown is supported"
    },
    "HELM_CHART": {
        "HELMCHARTS": "Charts",
        "CHARTVERSIONS": "Versions",
        "UPLOAD_TITLE": "Upload chart files",
        "CHART_FILE": "Chart File",
        "CHART_PROV": "Prov File",
        "DOWNLOAD": "Download",
        "SUMMARY": "Summary",
        "DEPENDENCIES": "Dependencies",
        "VALUES": "Values",
        "OVERVIEW": "Overview",
        "HOME": "Home",
        "SRC_REPO": "Source Repository",
        "CREATED": "Created Time",
        "MAINTAINERS": "Maintainers",
        "OTHER_MAINTAINERS": "{{ name }} and {{ number }} others",
        "PULLS": "Pull Count",
        "VERSION": "Version",
        "APP_VERSION": "Application Version",
        "INSTALL": "Install",
        "INSTALL_CHART": "Install Chart",
        "NAME": "Name",
        "REPO": "Repository",
        "FILTER_FOR_CHARTS": "Filter for charts",
        "DELETE": "Delete",
        "OF": "of",
        "VERSIONS": "versions",
        "IMAGES": "Images",
        "ENGINE": "Engine",
        "ACTION": "Action",
        "UPLOAD": "Upload",
        "DELETE_CHART_VERSION_TITLE": "Delete Chart Versions",
        "DELETE_CHART_VERSION": "Do you want to delete version {{param}}?",
        "IMPORT": "Import",
        "EXPORT": "Export",
        "ADD_REPO": "Add Repo",
        "SHOW_KV": "Key Value Pairs",
        "SHOW_YAML": "YAML File",
        "PLACEHOLDER": "We couldn't find any charts!",
        "NO_VERSION_PLACEHOLDER": "We couldn't find any versions!",
        "FILE_UPLOADED": "File upload successfully",
        "SIGN": "Sign",
        "SIGNED": "Signed",
        "UNSIGNED": "Unsigned",
        "ITEMS": "items",
        "NO_README": "No readme file provided by this chart.",
        "SECURITY": "Security",
        "ACTIVE": "Active",
        "DEPRECATED": "Deprecated",
        "VERIFY_CHART": "Verify Chart",
        "COMMAND": "Commands",
        "PROV_FILE": "Prov File",
        "READY": "Ready",
        "NOT_READY": "Not Ready",
        "LABELS": "Labels",
        "ADD_LABEL_TO_CHART_VERSION": "Add labels to this chart version",
        "STATUS": "Status"
    },
    "SUMMARY": {
        "QUOTAS": "quotas",
        "PROJECT_REPOSITORY": "Project repositories",
        "PROJECT_HELM_CHART": "Project Helm Chart",
        "PROJECT_MEMBER": "Project members",
        "PROJECT_QUOTAS": "Project quotas",
        "ARTIFACT_COUNT": "Artifact count",
        "STORAGE_CONSUMPTION": "Storage consumption",
        "ADMIN": "Admin(s)",
        "MASTER": "Master(s)",
        "DEVELOPER": "Developer(s)",
        "GUEST": "Guest(s)",
        "LIMITED_GUEST": "Limited guest(s)"
    },
    "ALERT": {
        "FORM_CHANGE_CONFIRMATION": "Some changes are not saved yet. Do you want to cancel?"
    },
    "RESET_PWD": {
        "TITLE": "Reset Password",
        "CAPTION": "Enter your email to reset your password",
        "EMAIL": "Email",
        "SUCCESS": "Mail with password resetting link is successfully sent. You can close this dialog and check your mailbox.",
        "CAPTION2": "Enter your new password",
        "RESET_OK": "Password has been successfully reset. Click OK to login with new password."
    },
    "RECENT_LOG": {
        "SUB_TITLE": "Show",
        "SUB_TITLE_SUFIX": "logs"
    },
    "CONFIG": {
        "HISTORY": "History",
        "TITLE": "Configuration",
        "AUTH": "Authentication",
        "REPLICATION": "Replication",
        "EMAIL": "Email",
        "LABEL": "Labels",
        "REPOSITORY": "Repository",
        "REPO_READ_ONLY": "Repository Read Only",
        "WEBHOOK_NOTIFICATION_ENABLED": "Webhooks enabled",
        "SYSTEM": "System Settings",
        "PROJECT_QUOTAS": "Project Quotas",
        "VULNERABILITY": "Vulnerability",
        "GC": "Garbage Collection",
        "CONFIRM_TITLE": "Confirm to cancel",
        "CONFIRM_SUMMARY": "Some changes have not been saved. Do you want to discard them?",
        "SAVE_SUCCESS": "Configuration has been successfully saved.",
        "MAIL_SERVER": "Email Server",
        "MAIL_SERVER_PORT": "Email Server Port",
        "MAIL_USERNAME": "Email Username",
        "MAIL_PASSWORD": "Email Password",
        "MAIL_FROM": "Email From",
        "MAIL_SSL": "Email SSL",
        "MAIL_INSECURE": "Verify Certificate",
        "INSECURE_TOOLTIP": "Determine whether to verify the certificate of the Email server. Uncheck this box when the Email server uses a self-signed or untrusted certificate.",
        "SSL_TOOLTIP": "Enable SSL for email server connection",
        "VERIFY_REMOTE_CERT": "Verify Remote Cert",
        "TOKEN_EXPIRATION": "Token Expiration (Minutes)",
        "AUTH_MODE": "Auth Mode",
        "PRO_CREATION_RESTRICTION": "Project Creation",
        "SELF_REGISTRATION": "Allow Self-Registration",
        "AUTH_MODE_DB": "Database",
        "AUTH_MODE_LDAP": "LDAP",
        "AUTH_MODE_UAA": "UAA",
        "AUTH_MODE_HTTP": "http_auth",
        "AUTH_MODE_OIDC": "OIDC",
        "SCOPE_BASE": "Base",
        "SCOPE_ONE_LEVEL": "OneLevel",
        "SCOPE_SUBTREE": "Subtree",
        "PRO_CREATION_EVERYONE": "Everyone",
        "PRO_CREATION_ADMIN": "Admin Only",
        "ROOT_CERT": "Registry Root Certificate",
        "ROOT_CERT_LINK": "Download",
        "REGISTRY_CERTIFICATE": "Registry certificate",
        "NO_CHANGE": "Save abort because nothing changed",
        "TOOLTIP": {
            "SELF_REGISTRATION_ENABLE": "Enable sign up.",
            "SELF_REGISTRATION_DISABLE": "Disable sign up.",
            "VERIFY_REMOTE_CERT": "Determine whether the image replication should verify the certificate of a remote Harbor registry. Uncheck this box when the remote registry uses a self-signed or untrusted certificate.",
            "AUTH_MODE": "By default the authentication mode is database, i.e. the credentials are stored in a local database. Set it to LDAP if you want to verify a user's credential against an LDAP server.",
            "LDAP_SEARCH_DN": "A user's DN who has the permission to search the LDAP/AD server. If your LDAP/AD server does not support anonymous search, you should configure this DN and ldap_search_pwd.",
            "LDAP_BASE_DN": "The base DN from which to look up a user in LDAP/AD.",
            "LDAP_UID": "The attribute used in a search to match a user. It could be uid, cn, email, sAMAccountName or other attributes depending on your LDAP/AD.",
            "LDAP_SCOPE": "The scope to search for users.",
            "TOKEN_EXPIRATION": "The expiration time (in minutes) of a token created by the token service. Default is 30 minutes.",
            "ROBOT_TOKEN_EXPIRATION": "The expiration time (in days) of the token of the robot account, Default is 30 days. Show the number of days converted from minutes and rounds down",
            "PRO_CREATION_RESTRICTION": "The flag to define what users have permission to create projects. By default, everyone can create a project. Set to 'Admin Only' so that only an administrator can create a project.",
            "ROOT_CERT_DOWNLOAD": "Download the root certificate of registry.",
            "SCANNING_POLICY": "Set image scanning policy based on different requirements. 'None': No active policy; 'Daily At': Triggering scanning at the specified time everyday.",
            "VERIFY_CERT": "Verify Cert from LDAP Server",
            "READONLY_TOOLTIP": "In read-only mode, you can not delete repositories or tags or push images. ",
            "REPO_TOOLTIP": "Users can not do any operations to the images in this mode.",
            "WEBHOOK_TOOLTIP": "Enable webhooks to receive callbacks at your designated endpoints when certain actions such as image or chart being pushed, pulled, deleted, scanned are performed",
            "HOURLY_CRON": "Run once an hour, beginning of hour. Equivalent to 0 0 * * * *.",
            "WEEKLY_CRON": "Run once a week, midnight between Sat/Sun. Equivalent to 0 0 0 * * 0.",
            "DAILY_CRON": "Run once a day, midnight. Equivalent to 0 0 0 * * *."
        },
        "LDAP": {
            "URL": "LDAP URL",
            "SEARCH_DN": "LDAP Search DN",
            "SEARCH_PWD": "LDAP Search Password",
            "BASE_DN": "LDAP Base DN",
            "FILTER": "LDAP Filter",
            "UID": "LDAP UID",
            "SCOPE": "LDAP Scope",
            "VERIFY_CERT": "LDAP Verify Certificate",
            "LDAP_GROUP_BASE_DN": "LDAP Group Base DN",
            "LDAP_GROUP_BASE_DN_INFO": "The base DN from which to look up a group in LDAP/AD.",
            "LDAP_GROUP_FILTER": "LDAP Group Filter",
            "LDAP_GROUP_FILTER_INFO": "The filter to look up an LDAP/AD group, use objectclass=groupOfNames by default.",
            "LDAP_GROUP_GID": "LDAP Group GID",
            "LDAP_GROUP_GID_INFO": "The attribute used in a search to match a user, it could be uid, cn or other attributes depending on your LDAP/AD. the group in Harbor is named with this attribute by default.",
            "LDAP_GROUP_ADMIN_DN": "LDAP Group Admin DN",
            "LDAP_GROUP_ADMIN_DN_INFO": "Specify an LDAP group DN. All LDAP user in this group will have harbor admin privilege. Keep it blank if you do not want to.",
            "LDAP_GROUP_MEMBERSHIP": "LDAP Group Membership",
            "LDAP_GROUP_MEMBERSHIP_INFO": "The attribute indicates the membership of LDAP group, default value is memberof, in some LDAP server it could be \"ismemberof\"",
            "GROUP_SCOPE": "LDAP Group Scope",
            "GROUP_SCOPE_INFO": "The scope to search for groups, select Subtree by default."

        },
        "UAA": {
            "ENDPOINT": "UAA Endpoint",
            "CLIENT_ID": "UAA Client ID",
            "CLIENT_SECRET": "UAA Client Secret",
            "VERIFY_CERT": "UAA Verify Cert"
        },
        "HTTP_AUTH": {
            "ENDPOINT": "Server Endpoint",
            "TOKEN_REVIEW": "Token Review Endpoint",
            "SKIP_SEARCH": "Skip Search",
            "VERIFY_CERT": "Verify Certificate"
        },
        "OIDC": {
            "OIDC_PROVIDER": "OIDC Provider Name",
            "OIDC_REDIREC_URL": "Please make sure the Redirect URI on the OIDC provider is set to",
            "ENDPOINT": "OIDC Endpoint",
            "CLIENT_ID": "OIDC Client ID",
            "CLIENTSECRET": "OIDC Client Secret",
            "SCOPE": "OIDC Scope",
            "OIDC_VERIFYCERT": "Verify Certificate",
            "OIDC_SETNAME": "Set OIDC Username",
            "OIDC_SETNAMECONTENT": "You must create a Harbor username the first time when authenticating via a third party(OIDC).This will be used within Harbor to be associated with projects, roles, etc.",
            "OIDC_USERNAME": "Username",
            "GROUP_CLAIM_NAME": "Group Claim Name"
        },
        "SCANNING": {
            "TRIGGER_SCAN_ALL_SUCCESS": "Trigger scan all successfully!",
            "TRIGGER_SCAN_ALL_FAIL": "Failed to trigger scan all with error: {{error}",
            "TITLE": "Vulnerability Scanning",
            "SCAN_ALL": "Scan All",
            "SCAN_NOW": "SCAN NOW",
            "NONE_POLICY": "None",
            "DAILY_POLICY": "Daily At",
            "REFRESH_POLICY": "Upon Refresh",
            "DB_REFRESH_TIME": "Database updated on",
            "DB_NOT_READY": "Vulnerability database might not be fully ready!",
            "NEXT_SCAN": "Available after"
        },
        "TEST_MAIL_SUCCESS": "Connection to mail server is verified.",
        "TEST_LDAP_SUCCESS": "Connection to LDAP server is verified.",
        "TEST_MAIL_FAILED": "Failed to verify mail server with error: {{param}}.",
        "TEST_LDAP_FAILED": "Failed to verify LDAP server with error: {{param}}.",
        "LEAVING_CONFIRMATION_TITLE": "Confirm to leave",
        "LEAVING_CONFIRMATION_SUMMARY": "Changes have not been saved yet. Do you want to leave current page?",
        "TEST_OIDC_SUCCESS": "Connection to OIDC server is verified."
    },
    "PAGE_NOT_FOUND": {
        "MAIN_TITLE": "Page not found",
        "SUB_TITLE": "Redirecting to main page in",
        "UNIT": "seconds..."
    },
    "ABOUT": {
        "VERSION": "Version",
        "BUILD": "Build",
        "COPYRIGHT": "Project Harbor is an an open source trusted cloud native registry project that stores, signs, and scans content. Harbor extends the open source Docker Distribution by adding the functionalities usually required by users such as security, identity and management. Harbor supports advanced features such as user management, access control, activity monitoring, and replication between instances. Having a registry closer to the build and run environment can also improve image transfer efficiency.",
        "COPYRIGHT_SUFIX": ".",
        "TRADEMARK": "VMware is a registered trademark or trademark of VMware, Inc. in the United States and other jurisdictions. All other marks and names mentioned herein may be trademark of their respective companies.",
        "END_USER_LICENSE": "End User License Agreement",
        "OPEN_SOURCE_LICENSE": "Open Source/Third Party License"
    },
    "START_PAGE": {
        "GETTING_START": "",
        "GETTING_START_TITLE": "Getting Started"
    },
    "TOP_REPO": "Popular Repositories",
    "STATISTICS": {
        "TITLE": "STATISTICS",
        "PRO_ITEM": "PROJECTS",
        "REPO_ITEM": "REPOSITORIES",
        "INDEX_PRIVATE": "PRIVATE",
        "INDEX_MY_PROJECTS": "MY PROJECTS",
        "INDEX_MY_REPOSITORIES": "MY REPOSITORIES",
        "INDEX_PUB": "PUBLIC",
        "INDEX_TOTAL": "TOTAL",
        "STORAGE": "STORAGE",
        "LIMIT": "Limit"
    },
    "SEARCH": {
        "IN_PROGRESS": "Search...",
        "BACK": "Back"
    },
    "VULNERABILITY": {
        "STATE": {
            "OTHER_STATUS": "Not Scanned",
            "QUEUED": "Queued",
            "ERROR": "View Log",
            "SCANNING": "Scanning"
        },
        "GRID": {
            "PLACEHOLDER": "We couldn't find any scanning results!",
            "COLUMN_ID": "Vulnerability",
            "COLUMN_SEVERITY": "Severity",
            "COLUMN_PACKAGE": "Package",
            "COLUMN_PACKAGES": "Packages",
            "COLUMN_VERSION": "Current version",
            "COLUMN_FIXED": "Fixed in version",
            "COLUMN_DESCRIPTION": "Description",
            "FOOT_ITEMS": "Items",
            "FOOT_OF": "of"
        },
        "CHART": {
            "SCANNING_TIME": "Scan completed time:",
            "TOOLTIPS_TITLE": "{{totalVulnerability}} of {{totalPackages}} {{package}} have known {{vulnerability}}.",
            "TOOLTIPS_TITLE_SINGULAR": "{{totalVulnerability}} of {{totalPackages}} {{package}} has known {{vulnerability}}.",
            "TOOLTIPS_TITLE_ZERO": "No recognizable vulnerability package found"
        },
        "SEVERITY": {
            "CRITICAL": "Critical",
            "HIGH": "High",
            "MEDIUM": "Medium",
            "LOW": "Low",
            "NEGLIGIBLE": "Negligible",
            "UNKNOWN": "Unknown",
            "NONE": "None"
        },
        "SINGULAR": "vulnerability",
        "OVERALL_SEVERITY": "Vulnerability Severity:",
        "NO_VULNERABILITY": "No vulnerability",
        "PLURAL": "vulnerabilities",
        "PLACEHOLDER": "Filter Vulnerabilities",
        "PACKAGE": "package",
        "PACKAGES": "packages",
        "SCAN_NOW": "Scan",
        "JOB_LOG_VIEWER": "View Scanning Job Log"
    },
    "PUSH_IMAGE": {
        "TITLE": "Push Image",
        "TOOLTIP": "Command references for pushing an image to this project.",
        "TAG_COMMAND": "Tag an image for this project:",
        "PUSH_COMMAND": "Push an image to this project:",
        "COPY_ERROR": "Copy failed, please try to manually copy the command references."
    },
    "TAG": {
        "CREATION_TIME_PREFIX": "Create on",
        "CREATOR_PREFIX": "by",
        "ANONYMITY": "anonymity",
        "IMAGE_DETAILS": "Image Details",
        "DOCKER_VERSION": "Docker Version",
        "ARCHITECTURE": "Architecture",
        "OS": "OS",
        "OS_VERSION": "OS Version",
        "HAVE": "have",
        "HAS": "has",
        "SCAN_COMPLETION_TIME": "Scan Completed",
        "IMAGE_VULNERABILITIES": "Image Vulnerabilities",
        "LEVEL_VULNERABILITIES": "Level Vulnerabilities",
        "PLACEHOLDER": "We couldn't find any tags!",
        "COPY_ERROR": "Copy failed, please try to manually copy.",
        "FILTER_FOR_TAGS": "Filter Tags",
        "AUTHOR": "Author",
        "LABELS": "Labels",
        "CREATION": "Create on",
        "COMMAND": "Commands"
    },
    "LABEL": {
        "LABEL": "Label",
        "DESCRIPTION": "Description",
        "CREATION_TIME": "Creation Time",
        "NEW_LABEL": "New Label",
        "EDIT": "Edit",
        "DELETE": "Delete",
        "LABEL_NAME": "Label Name",
        "COLOR": "Color",
        "FILTER_LABEL_PLACEHOLDER": "Filter Labels",
        "NO_LABELS": "No labels",
        "DELETION_TITLE_TARGET": "Confirm Label Deletion",
        "DELETION_SUMMARY_TARGET": "Do you want to delete {{param}}?",
        "PLACEHOLDER": "We couldn't find any labels!",
        "NAME_ALREADY_EXISTS": "Label name already exists."
    },
    "QUOTA": {
        "PROJECT": "Project",
        "OWNER": "Owner",
        "COUNT": "Count",
        "STORAGE": "Storage",
        "EDIT": "Edit",
        "DELETE": "Delete",
        "OF": "of",
        "PROJECT_QUOTA_DEFAULT_ARTIFACT": "Default artifact count per project",
        "PROJECT_QUOTA_DEFAULT_DISK": "Default disk space per project",
        "EDIT_PROJECT_QUOTAS": "Edit Project Quotas",
        "EDIT_DEFAULT_PROJECT_QUOTAS": "Edit Default Project Quotas",
        "SET_QUOTAS": "Set the project quotas for project '{{params}}'",
        "SET_DEFAULT_QUOTAS": "Set the default project quotas when creating new projects",
        "COUNT_QUOTA": "Artifact count",
        "COUNT_DEFAULT_QUOTA": "Default artifact count",
        "STORAGE_QUOTA": "Storage consumption",
        "STORAGE_DEFAULT_QUOTA": "Default storage consumption",
        "SAVE_SUCCESS": "Quota edit success",
        "UNLIMITED": "unlimited",
        "INVALID_INPUT": "invalid input"
    },
    "WEEKLY": {
        "MONDAY": "Monday",
        "TUESDAY": "Tuesday",
        "WEDNESDAY": "Wednesday",
        "THURSDAY": "Thursday",
        "FRIDAY": "Friday",
        "SATURDAY": "Saturday",
        "SUNDAY": "Sunday"
    },
    "OPERATION": {
        "LOCAL_EVENT": "Local Events",
        "ALL": "All",
        "RUNNING": "Running",
        "FAILED": "Failed",
        "STOP_EXECUTIONS": "Stop Execution",
        "DELETE_PROJECT": "Delete project",
        "DELETE_REPO": "Delete repository",
        "DELETE_TAG": "Delete tag",
        "DELETE_USER": "Delete user",
        "DELETE_ROBOT": "Delete robot",
        "DELETE_REGISTRY": "Delete registry",
        "DELETE_REPLICATION": "Delete replication",
        "DELETE_MEMBER": "Delete user member",
        "DELETE_GROUP": "Delete group member",
        "DELETE_CHART_VERSION": "Delete Chart Version",
        "DELETE_CHART": "Delete Chart",
        "SWITCH_ROLE": "Switch role",
        "ADD_GROUP": "Add group member",
        "ADD_USER": "Add user member",
        "DELETE_LABEL": "Delete label",
        "REPLICATION": "Replication",
        "DAY_AGO": " day(s) ago",
        "HOUR_AGO": " hour(s) ago",
        "MINUTE_AGO": " minute(s) ago",
        "SECOND_AGO": "less 1 minute",
        "EVENT_LOG": "EVENT LOG"
    },
    "UNKNOWN_ERROR": "Unknown errors have occurred. Please try again later.",
    "UNAUTHORIZED_ERROR": "Your session is invalid or has expired. You need to sign in to continue your action.",
    "REPO_READ_ONLY": "Harbor is set to read-only mode, Deleting repository, tag and pushing image will be disabled under read-only mode.",
    "FORBIDDEN_ERROR": "You do not have the proper privileges to perform the action.",
    "GENERAL_ERROR": "Errors have occurred when performing service call: {{param}}.",
    "BAD_REQUEST_ERROR": "We are unable to perform your action because of a bad request.",
    "NOT_FOUND_ERROR": "Your request cannot be completed because the object does not exist.",
    "CONFLICT_ERROR": "We are unable to perform your action because your submission has conflicts.",
    "PRECONDITION_FAILED": "We are unable to perform your action because of a precondition failure.",
    "SERVER_ERROR": "We are unable to perform your action because internal server errors have occurred.",
    "INCONRRECT_OLD_PWD": "The old password is incorrect.",
    "UNKNOWN": "n/a",
    "STATUS": "Status",
    "START_TIME": "Start Time",
    "UPDATE_TIME": "Update Time",
    "LOGS": "Logs",
    "PENDING": "Pending",
    "FINISHED": "Finished",
    "STOPPED": "Stopped",
    "RUNNING": "Running",
    "ERROR": "Error",
    "SCHEDULE": {
        "NONE": "None",
        "DAILY": "Daily",
        "WEEKLY": "Weekly",
        "HOURLY": "Hourly",
        "CUSTOM": "Custom",
        "MANUAL": "Manual",
        "CRON": "cron",
        "ON": "on",
        "AT": "at",
        "NOSCHEDULE": "An error occurred in Get schedule"

    },
    "GC": {
        "CURRENT_SCHEDULE": "Current Schedule",
        "GC_NOW": "GC NOW",
        "JOB_HISTORY": "GC History",
        "JOB_ID": "Job ID",
        "TRIGGER_TYPE": "Trigger Type",
        "LATEST_JOBS": "Latest {{param}} Jobs",
        "MSG_SUCCESS": "Garbage Collection Successful",
        "MSG_SCHEDULE_SET": "Garbage Collection schedule has been set",
        "MSG_SCHEDULE_RESET": "Garbage Collection schedule has been reset"
    },
    "RETAG": {
        "MSG_SUCCESS": "Retag successfully",
        "TIP_REPO": "A repository name is broken up into path components. A component of a repository name must be at least one lowercase, alpha-numeric characters, optionally separated by periods, dashes or underscores. More strictly, it must match the regular expression [a-z0-9]+(?:[._-][a-z0-9]+)*.If a repository name has two or more path components, they must be separated by a forward slash ('/').The total length of a repository name, including slashes, must be less the 256 characters.",
        "TIP_TAG": "A tag is a label applied to a Docker image in a repository. Tags are how various images in a repository are distinguished from each other.It need to match Regex: (`[\\w][\\w.-]{0,127}`)"
    },
    "CVE_WHITELIST": {
        "DEPLOYMENT_SECURITY": "Deployment security",
        "CVE_WHITELIST": "CVE whitelist",
        "SYS_WHITELIST_EXPLAIN": "System whitelist allows vulnerabilities in this list to be ignored when calculating the vulnerability of an image.",
        "ADD_SYS": "Add CVE IDs to the system whitelist",
        "WARNING_SYS": "The system CVE whitelist has expired. You can enable the whitelist by extending the expiration date.",
        "WARNING_PRO": "The project CVE whitelist has expired. You can enable the whitelist by extending the expiration date.",
        "ADD": "ADD",
        "ENTER": "Enter CVE ID(s)",
        "HELP": "Separator: commas or newline characters",
        "NONE": "None",
        "EXPIRES_AT": "Expires at",
        "NEVER_EXPIRES": "Never expires",
        "PRO_WHITELIST_EXPLAIN": "Project whitelist allows vulnerabilities in this list to be ignored in this project when pushing and pulling images.",
        "PRO_OR_SYS": "You can either use the default whitelist configured at the system level or click on 'Project whitelist' to create a new whitelist",
        "MERGE_INTO": "Add individual CVE IDs before clicking 'COPY FROM SYSTEM' to add system whitelist as well.",
        "SYS_WHITELIST": "System whitelist",
        "PRO_WHITELIST": "Project whitelist",
        "ADD_SYSTEM": "COPY FROM SYSTEM"
    },
    "TAG_RETENTION": {
        "TAG_RETENTION": "Tag Retention",
        "RETENTION_RULES": "Retention rules",
        "RULE_NAME_1": " the images from the last {{number}} days",
        "RULE_NAME_2": " the most recent active {{number}} images",
        "RULE_NAME_3": " the most recently pushed {{number}} images",
        "RULE_NAME_4": " the most recently pulled {{number}} images",
        "RULE_NAME_5": " always",
        "ADD_RULE": "ADD RULE",
        "ADD_RULE_HELP_1": "Click the ADD RULE button to add a rule.",
        "ADD_RULE_HELP_2": "Tag retention polices run once a day.",
        "RETENTION_RUNS": "Retention runs",
        "RUN_NOW": "RUN NOW",
        "WHAT_IF_RUN": "DRY RUN",
        "ABORT": "ABORT",
        "SERIAL": "ID",
        "STATUS": "Status",
        "DRY_RUN": "Dry Run",
        "START_TIME": "Start Time",
        "DURATION": "Duration",
        "DETAILS": "Details",
        "REPOSITORY": "Repository",
        "EDIT": "Edit",
        "DISABLE": "Disable",
        "ENABLE": "Enable",
        "DELETE": "Delete",
        "ADD_TITLE": "Add Tag Retention Rule",
        "ADD_SUBTITLE": "Specify a tag retention rule for this project. All tag retention rules are independently calculated and each rule can be applied to a selected list of repositories.",
        "BY_WHAT": "By image count or number of days",
        "RULE_TEMPLATE_1": " the images from the last # days",
        "RULE_TEMPLATE_2": " the most recent active # images",
        "RULE_TEMPLATE_3": " the most recently pushed # images",
        "RULE_TEMPLATE_4": " the most recently pulled # images",
        "RULE_TEMPLATE_5": " always",
        "ACTION_RETAIN": " retain",
        "UNIT_DAY": "DAYS",
        "UNIT_COUNT": "COUNT",
        "NUMBER": "NUMBER",
        "IN_REPOSITORIES": "For the repositories",
        "REP_SEPARATOR": "Enter multiple comma separated repos,repo*,or **",
        "TAGS": "Tags",
        "MATCHES_TAGS": "Matches tags",
        "MATCHES_EXCEPT_TAGS": "Matches except tags",
        "TAG_SEPARATOR": "Enter multiple comma separated tags,tag*,or **",
        "LABELS": "Labels",
        "MATCHES_LABELS": "Matches Labels",
        "MATCHES_EXCEPT_LABELS": "Matches except Labels",
        "REP_LABELS": "Enter multiple comma separated labels",
        "RETENTION_RUN": "Retention Run",
        "RETENTION_RUN_EXPLAIN": "Executing the retention policy can have adverse effects to the images in this project and affected image tags will be deleted. Press CANCEL and use a DRY RUN to simulate the effect of this policy. Otherwise press RUN to proceed.",
        "RETENTION_RUN_ABORTED": "Retention Run Aborted",
        "RETENTION_RUN_ABORTED_EXPLAIN": "This retention run has been aborted. Images already deleted are irreversible. You can initiate another run to continue to delete images. In order to simulate a run, you can use the “DRY RUN”.",
        "LOADING": "Loading...",
        "NO_EXECUTION": "We couldn't find any executions!",
        "NO_HISTORY": "We couldn't find any histories!",
        "DELETION": "Deletions",
        "EDIT_TITLE": "Edit Tag Retention Rule",
        "LOG": "Log",
        "EXCLUDES": "Excludes",
        "MATCHES": "Matches",
        "REPO": " repositories",
        "EXC": " excluding ",
        "MAT": " matching ",
        "AND": " and",
        "WITH": " with ",
        "WITHOUT": " without ",
        "LOWER_LABELS": " labels",
        "WITH_CONDITION": " with",
        "LOWER_TAGS": " tags",
        "TRIGGER": "Schedule",
        "RETAINED": "Retained",
        "TOTAL": "Total",
        "NONE": " none",
        "RULE_NAME_6": " the images pulled within the last {{number}} days",
        "RULE_NAME_7": " the images pushed within the last {{number}} days",
        "RULE_TEMPLATE_6": " the images pulled within the last # days",
        "RULE_TEMPLATE_7": " the images pushed within the last # days",
        "SCHEDULE": "Schedule",
        "SCHEDULE_WARNING": "Executing retention policy results in the irreversible effect of deleting images from the Harbor project.  Please double check all policies before scheduling.",
        "EXISTING_RULE": "Existing rule",
        "ILLEGAL_RULE": "Illegal rule",
        "INVALID_RULE": "Invalid rule",
        "COUNT_LARGE": "Parameter \"COUNT\" is too large",
        "DAYS_LARGE": "Parameter \"DAYS\" is too large",
        "EXECUTION_TYPE": "Execution Type",
        "ACTION": "ACTION"
    },
    "SCANNER": {
        "DELETION_SUMMARY": "Do you want to delete scanner {{param}}?",
        "SKIP_CERT_VERIFY": "Check this box to skip certificate verification when the remote registry uses a self-signed or untrusted certificate.",
        "NAME": "Name",
        "NAME_EXISTS": "Name already exists",
        "NAME_REQUIRED": "Name is required",
        "NAME_REX": "Name should be at least 2 characters long with lower case characters, numbers and ._- and must be start with characters or numbers.",
        "DESCRIPTION": "Description",
        "ENDPOINT": "Endpoint",
        "ENDPOINT_EXISTS": "EndpointUrl already exists",
        "ENDPOINT_REQUIRED": "EndpointUrl is required",
        "ILLEGAL_ENDPOINT": "EndpointUrl is illegal",
        "AUTH": "Authorization",
        "NONE": "None",
        "BASIC": "Basic",
        "BEARER": "Bearer",
        "API_KEY": "APIKey",
        "USERNAME": "Username",
        "USERNAME_REQUIRED": "Username is required",
        "PASSWORD": "Password",
        "PASSWORD_REQUIRED": "Password is required",
        "TOKEN": "Token",
        "TOKEN_REQUIRED": "Token is required",
        "API_KEY_REQUIRED": "APIKey is required",
        "SKIP": "Skip Certificate Verification",
        "ADD_SCANNER": "Add Scanner",
        "EDIT_SCANNER": "Edit Scanner",
        "TEST_CONNECTION": "TEST CONNECTION",
        "ADD_SUCCESS": "Added successfully",
        "TEST_PASS": "Test passed",
        "TEST_FAILED": "Test failed",
        "UPDATE_SUCCESS": "Updated successfully",
        "SCANNER_COLON": "Scanner:",
        "NAME_COLON": "Name:",
        "VENDOR_COLON": "Vendor:",
        "VERSION_COLON": "Version:",
        "CAPABILITIES": "Capabilities",
        "CONSUMES_MIME_TYPES_COLON": "Consumes Mime Types:",
        "PRODUCTS_MIME_TYPES_COLON": "Produces Mime Types:",
        "PROPERTIES": "Properties",
        "NEW_SCANNER": "NEW SCANNER",
        "SET_AS_DEFAULT": "SET AS DEFAULT",
        "HEALTH": "Health",
        "DISABLED": "Disabled",
        "NO_SCANNER": "Can not find any scanner",
        "DEFAULT": "Default",
        "HEALTHY": "Healthy",
        "UNHEALTHY": "Unhealthy",
        "SCANNERS": "Scanners",
        "SCANNER": "Scanner",
        "EDIT": "Edit",
        "NOT_AVAILABLE": "Not Available",
        "ADAPTER": "Adapter",
        "VENDOR": "Vendor",
        "VERSION": "Version",
        "SELECT_SCANNER": "Select Scanner"
    }
}
